eligendiexercitationem
Version:
Yet another class for arbitrary-precision integers in pure JavaScript. Small. Well tested.
493 lines (487 loc) • 112 kB
JavaScript
(function(exports) {
if(typeof document === 'undefined')
var document = {};
if(typeof window === 'undefined')
var window = {};
if(!window.document)
window.document = document;
if(typeof navigator === 'undefined')
var navigator = {};
if(!navigator.userAgent)
navigator.userAgent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_2) AppleWebKit/534.51.22 (KHTML, like Gecko) Version/5.1.1 Safari/534.51.22';
function gwtapp() {};
(function(){var $gwt_version = "2.4.0";var $wnd = window;var $doc = $wnd.document;var $moduleName, $moduleBase;var $strongName = '4533928AF3A2228268FD8F10BB191446';var $stats = $wnd.__gwtStatsEvent ? function(a) {return $wnd.__gwtStatsEvent(a);} : null;var $sessionId = $wnd.__gwtStatsSessionId ? $wnd.__gwtStatsSessionId : null;$stats && $stats({moduleName:'gwtapp',sessionId:$sessionId,subSystem:'startup',evtGroup:'moduleStartup',millis:(new Date()).getTime(),type:'moduleEvalStart'});function H(){}
function P(){}
function O(){}
function N(){}
function M(){}
function rr(){}
function gb(){}
function ub(){}
function pb(){}
function Fb(){}
function Ab(){}
function Lb(){}
function Tb(){}
function Kb(){}
function Zb(){}
function _b(){}
function fc(){}
function ic(){}
function hc(){}
function Se(){}
function Re(){}
function Ze(){}
function Ye(){}
function Xe(){}
function Ah(){}
function Hh(){}
function Gh(){}
function Ej(){}
function Mj(){}
function Uj(){}
function _j(){}
function gk(){}
function mk(){}
function pk(){}
function wk(){}
function vk(){}
function Dk(){}
function Ik(){}
function Qk(){}
function Uk(){}
function il(){}
function ol(){}
function rl(){}
function Tl(){}
function Xl(){}
function km(){}
function om(){}
function Nn(){}
function Np(){}
function ep(){}
function dp(){}
function yp(){}
function yo(){}
function Zo(){}
function xp(){}
function Hp(){}
function Mp(){}
function Xp(){}
function bq(){}
function jq(){}
function qq(){}
function Dq(){}
function Hq(){}
function Nq(){}
function Qq(){}
function Zq(){}
function Yq(){}
function Yj(){Wj()}
function Ij(){Gj()}
function Eh(){Ch()}
function Ek(){Cb()}
function qk(){Cb()}
function Rk(){Cb()}
function Vk(){Cb()}
function jl(){Cb()}
function Oq(){Cb()}
function kk(){ik()}
function fm(){Yl(this)}
function gm(){Yl(this)}
function mg(a){Hf(this,a)}
function mq(a){this.c=a}
function bk(a){this.b=a}
function Cp(a){this.b=a}
function Sp(a){this.b=a}
function V(a){Cb();this.f=a}
function nk(a){V.call(this,a)}
function rk(a){V.call(this,a)}
function Sk(a){V.call(this,a)}
function Wk(a){V.call(this,a)}
function kl(a){V.call(this,a)}
function Yl(a){a.b=new fc}
function Ul(){this.b=new fc}
function rb(){rb=rr;qb=new ub}
function lr(){lr=rr;kr=new gr}
function jr(a,b){return b}
function ac(a,b){a.b+=b}
function bc(a,b){a.b+=b}
function cc(a,b){a.b+=b}
function dc(a,b){a.b+=b}
function or(a,b){lr();a[Ls]=b}
function nr(a,b){lr();ar(a,b)}
function _q(a,b,c){rp(a.b,b,c)}
function Jg(){rf();Hf(this,Tr)}
function pl(a){Sk.call(this,a)}
function Hk(a){return isNaN(a)}
function Jj(a){return new Oi(a)}
function Zj(a){return new Oj(a)}
function dl(a){return a<0?-a:a}
function hl(a,b){return a<b?a:b}
function gl(a,b){return a>b?a:b}
function xe(a,b){return !we(a,b)}
function ye(a,b){return !ve(a,b)}
function ir(a,b){return new b(a)}
function Oj(a){this.b=new Yn(a)}
function Nj(){this.b=(Un(),Rn)}
function ak(){this.b=(Qo(),Fo)}
function Wo(){Qo();return zo}
function mr(a,b){lr();_q(kr,a,b)}
function br(a,b){a[b]||(a[b]={})}
function kq(a){return a.b<a.c.c}
function Vn(a){return a.b<<3|a.c.c}
function Mi(a){return a.f*a.b[0]}
function Je(a){return a.l|a.m<<22}
function op(b,a){return b.f[Qr+a]}
function Yp(a,b){this.c=a;this.b=b}
function Ro(a,b){this.b=a;this.c=b}
function Iq(a,b){this.b=a;this.c=b}
function bm(a,b){ac(a.b,b);return a}
function cm(a,b){bc(a.b,b);return a}
function dm(a,b){cc(a.b,b);return a}
function pr(a){lr();return er(kr,a)}
function qr(a){lr();return fr(kr,a)}
function Oi(a){Oh();oi.call(this,a)}
function Ni(){Oh();oi.call(this,Tr)}
function cg(a){dg.call(this,a,0)}
function Kg(a){mg.call(this,a.tS())}
function el(a){return Math.floor(a)}
function yl(b,a){return b.indexOf(a)}
function qp(b,a){return Qr+a in b.f}
function uc(a,b){return a.cM&&a.cM[b]}
function re(a,b){return ee(a,b,false)}
function bn(a,b){return cn(a.b,a.e,b)}
function ce(a){return de(a.l,a.m,a.h)}
function Ac(a){return a==null?null:a}
function sf(a){return a.r()<0?Mf(a):a}
function ob(a){return a.$H||(a.$H=++jb)}
function zc(a){return a.tM==rr||tc(a,1)}
function tc(a,b){return a.cM&&!!a.cM[b]}
function vl(b,a){return b.charCodeAt(a)}
function hm(a){Yl(this);cc(this.b,a)}
function oi(a){Oh();pi.call(this,a,10)}
function Aq(a,b,c,d){a.splice(b,c,d)}
function dq(a,b){(a<0||a>=b)&&hq(a,b)}
function xc(a,b){return a!=null&&tc(a,b)}
function db(a){return yc(a)?Db(wc(a)):Lr}
function Z(a){return yc(a)?$(wc(a)):a+Lr}
function Fl(a){return lc(Vd,{6:1},1,a,0)}
function vq(){this.b=lc(Td,{6:1},0,0,0)}
function Pl(){Pl=rr;Ml={};Ol={}}
function Yo(){Yo=rr;Xo=Jk((Qo(),zo))}
function ik(){if(!hk){hk=true;jk()}}
function Gj(){if(!Fj){Fj=true;Hj()}}
function Wj(){if(!Vj){Vj=true;new kk;Xj()}}
function gr(){this.b=new Fq;new Fq;new Fq}
function X(a){Cb();this.c=a;Bb(new Tb,this)}
function Pi(a){Oh();oi.call(this,Hm(a,0))}
function gg(a){hg.call(this,a,0,a.length)}
function fg(a,b){cg.call(this,a);If(this,b)}
function ze(a,b){ee(a,b,true);return ae}
function tq(a,b){dq(b,a.c);return a.b[b]}
function rq(a,b){nc(a.b,a.c++,b);return true}
function _l(a,b,c){dc(a.b,Ll(b,0,c));return a}
function kb(a,b,c){return a.apply(b,c);var d}
function em(a,b,c){return ec(a.b,b,b,c),a}
function Af(a,b,c){return yf(a,b,Bc(a.f),c)}
function xf(a,b,c){return yf(a,b,Bc(a.f),Uo(c))}
function Bl(c,a,b){return c.substr(a,b-a)}
function Al(b,a){return b.substr(a,b.length-a)}
function fl(a){return Math.log(a)*Math.LOG10E}
function cb(a){return a==null?null:a.name}
function $(a){return a==null?null:a.message}
function yc(a){return a!=null&&a.tM!=rr&&!tc(a,1)}
function ec(a,b,c,d){a.b=Bl(a.b,0,b)+d+Al(a.b,c)}
function eg(a,b,c){dg.call(this,a,b);If(this,c)}
function pg(a,b){this.g=a;this.f=b;this.b=sg(a)}
function si(a,b,c){Oh();this.f=a;this.e=b;this.b=c}
function sl(a){this.b='Unknown';this.d=a;this.c=-1}
function yk(a,b){var c;c=new wk;c.d=a+b;return c}
function dr(a,b){var c;c=mp(a.b,b);return wc(c)}
function fb(a){var b;return b=a,zc(b)?b.hC():ob(b)}
function To(a){Qo();return Ok((Yo(),Xo),a)}
function qe(a,b){return de(a.l&b.l,a.m&b.m,a.h&b.h)}
function De(a,b){return de(a.l|b.l,a.m|b.m,a.h|b.h)}
function Le(a,b){return de(a.l^b.l,a.m^b.m,a.h^b.h)}
function Bm(a,b){return (a.b[~~b>>5]&1<<(b&31))!=0}
function Cq(a,b){var c;for(c=0;c<b;++c){a[c]=false}}
function Lf(a,b,c){var d;d=Kf(a,b);If(d,c);return d}
function zb(a,b){a.length>=b&&a.splice(0,b);return a}
function wb(a,b){!a&&(a=[]);a[a.length]=b;return a}
function Ph(a,b){if(mi(a,b)){return tm(a,b)}return a}
function ii(a,b){if(!mi(a,b)){return tm(a,b)}return a}
function _d(a){if(xc(a,15)){return a}return new X(a)}
function Eb(){try{null.a()}catch(a){return a}}
function Ak(a){var b;b=new wk;b.d=Lr+a;b.c=1;return b}
function eb(a,b){var c;return c=a,zc(c)?c.eQ(b):c===b}
function se(a,b){return a.l==b.l&&a.m==b.m&&a.h==b.h}
function Ce(a,b){return a.l!=b.l||a.m!=b.m||a.h!=b.h}
function de(a,b,c){return _=new Se,_.l=a,_.m=b,_.h=c,_}
function rp(a,b,c){return !b?tp(a,c):sp(a,b,c,~~ob(b))}
function Eq(a,b){return Ac(a)===Ac(b)||a!=null&&eb(a,b)}
function Xq(a,b){return Ac(a)===Ac(b)||a!=null&&eb(a,b)}
function hq(a,b){throw new Wk('Index: '+a+', Size: '+b)}
function Xh(a,b){if(b<0){throw new nk(ts)}return tm(a,b)}
function dg(a,b){if(!a){throw new jl}this.f=b;Tf(this,a)}
function og(a,b){if(!a){throw new jl}this.f=b;Tf(this,a)}
function ig(a,b,c,d){hg.call(this,a,b,c);If(this,d)}
function jg(a,b){hg.call(this,a,0,a.length);If(this,b)}
function ng(a,b){hg.call(this,Cl(a),0,a.length);If(this,b)}
function lm(a){V.call(this,'String index out of range: '+a)}
function Zl(a,b){dc(a.b,String.fromCharCode(b));return a}
function pn(a,b){tn(a.b,a.b,a.e,b.b,b.e);Sh(a);a.c=-2}
function Tf(a,b){a.d=b;a.b=b.ab();a.b<54&&(a.g=Ie(ai(b)))}
function qc(){qc=rr;oc=[];pc=[];rc(new ic,oc,pc)}
function Ch(){if(!Bh){Bh=true;new Yj;new Ij;Dh()}}
function Sl(){if(Nl==256){Ml=Ol;Ol={};Nl=0}++Nl}
function cr(a){var b;b=a[Ls];if(!b){b=[];a[Ls]=b}return b}
function zk(a,b,c){var d;d=new wk;d.d=a+b;d.c=c?8:0;return d}
function xk(a,b,c){var d;d=new wk;d.d=a+b;d.c=4;d.b=c;return d}
function lc(a,b,c,d,e){var f;f=jc(e,d);mc(a,b,c,f);return f}
function Ll(a,b,c){var d;d=b+c;El(a.length,b,d);return Gl(a,b,d)}
function mo(a,b){go();return b<fo.length?lo(a,fo[b]):ei(a,po(b))}
function me(a){return a.l+a.m*4194304+a.h*17592186044416}
function vc(a,b){if(a!=null&&!uc(a,b)){throw new Ek}return a}
function lq(a){if(a.b>=a.c.c){throw new Oq}return tq(a.c,a.b++)}
function wl(a,b){if(!xc(b,1)){return false}return String(a)==b}
function lb(){if(ib++==0){sb((rb(),qb));return true}return false}
function fi(a){if(a.f<0){throw new nk('start < 0: '+a)}return xo(a)}
function pm(){V.call(this,'Add not supported on this collection')}
function Fq(){this.b=[];this.f={};this.d=false;this.c=null;this.e=0}
function qi(a,b){Oh();this.f=a;this.e=1;this.b=mc(Od,{6:1},-1,[b])}
function sc(a,b,c){qc();for(var d=0,e=b.length;d<e;++d){a[b[d]]=c[d]}}
function xl(a,b,c,d){var e;for(e=0;e<b;++e){c[d++]=a.charCodeAt(e)}}
function Wh(a,b){var c;for(c=a.e-1;c>=0&&a.b[c]==b[c];--c){}return c<0}
function tp(a,b){var c;c=a.c;a.c=b;if(!a.d){a.d=true;++a.e}return c}
function $l(a,b){dc(a.b,String.fromCharCode.apply(null,b));return a}
function am(a,b,c,d){b==null&&(b=Mr);bc(a.b,b.substr(c,d-c));return a}
function sn(a,b,c,d){var e;e=lc(Od,{6:1},-1,b,1);tn(e,a,b,c,d);return e}
function mc(a,b,c,d){qc();sc(d,oc,pc);d.aC=a;d.cM=b;d.qI=c;return d}
function uq(a,b,c){for(;c<a.c;++c){if(Xq(b,a.b[c])){return c}}return -1}
function sq(a,b,c){(b<0||b>a.c)&&hq(b,a.c);Aq(a.b,b,0,c);++a.c}
function nn(a,b){var c;c=on(a.b,a.e,b);if(c==1){a.b[a.e]=1;++a.e}a.c=-2}
function Sh(a){while(a.e>0&&a.b[--a.e]==0){}a.b[a.e++]==0&&(a.f=0)}
function Gg(a){if(we(a,ur)&&xe(a,xr)){return df[Je(a)]}return new qg(a,0)}
function ji(a,b){if(b==0||a.f==0){return a}return b>0?wm(a,b):zm(a,-b)}
function li(a,b){if(b==0||a.f==0){return a}return b>0?zm(a,b):wm(a,-b)}
function $h(a){var b;if(a.f==0){return -1}b=Zh(a);return (b<<5)+_k(a.b[b])}
function bl(a){var b;b=Je(a);return b!=0?_k(b):_k(Je(Fe(a,32)))+32}
function Sb(a,b){var c;c=Mb(a,b);return c.length==0?(new Fb).o(b):zb(c,1)}
function Gl(a,b,c){a=a.slice(b,c);return String.fromCharCode.apply(null,a)}
function rc(a,b,c){var d=0,e;for(var f in a){if(e=a[f]){b[d]=f;c[d]=e;++d}}}
function up(e,a,b){var c,d=e.f;a=Qr+a;a in d?(c=d[a]):++e.e;d[a]=b;return c}
function gn(a,b,c,d){var e;e=lc(Od,{6:1},-1,b+1,1);hn(e,a,b,c,d);return e}
function Cl(a){var b,c;c=a.length;b=lc(Md,{6:1},-1,c,1);xl(a,c,b,0);return b}
function _e(a){var b;b=bf(a);if(isNaN(b)){throw new pl(Zr+a+$r)}return b}
function Fg(a){if(!isFinite(a)||isNaN(a)){throw new pl(hs)}return new mg(Lr+a)}
function wc(a){if(a!=null&&(a.tM==rr||tc(a,1))){throw new Ek}return a}
function Qf(a,b){var c;c=new og((!a.d&&(a.d=Li(a.g)),a.d),a.f);If(c,b);return c}
function bg(a,b){var c;c=new Pi(Zf(a));if(sm(c)<b){return ai(c)}throw new nk(cs)}
function ei(a,b){if(b.f==0){return Nh}if(a.f==0){return Nh}return go(),ho(a,b)}
function bi(a,b){var c;if(b.f<=0){throw new nk(us)}c=hi(a,b);return c.f<0?fn(c,b):c}
function Ip(a){var b;b=new vq;a.d&&rq(b,new Sp(a));kp(a,b);jp(a,b);this.b=new mq(b)}
function lp(a,b){return b==null?a.d:xc(b,1)?qp(a,vc(b,1)):pp(a,b,~~fb(b))}
function mp(a,b){return b==null?a.c:xc(b,1)?op(a,vc(b,1)):np(a,b,~~fb(b))}
function Bc(a){return ~~Math.max(Math.min(a,2147483647),-2147483648)}
function qg(a,b){this.f=b;this.b=tg(a);this.b<54?(this.g=Ie(a)):(this.d=Ki(a))}
function kg(a){if(!isFinite(a)||isNaN(a)){throw new pl(hs)}Hf(this,a.toPrecision(20))}
function mb(b){return function(){try{return nb(b,this,arguments)}catch(a){throw a}}}
function nb(a,b,c){var d;d=lb();try{return kb(a,b,c)}finally{d&&tb((rb(),qb));--ib}}
function Ok(a,b){var c;c=a[Qr+b];if(c){return c}if(b==null){throw new jl}throw new Rk}
function sb(a){var b,c;if(a.b){c=null;do{b=a.b;a.b=null;c=xb(b,c)}while(a.b);a.b=c}}
function tb(a){var b,c;if(a.c){c=null;do{b=a.c;a.c=null;c=xb(b,c)}while(a.c);a.c=c}}
function _k(a){var b,c;if(a==0){return 32}else{c=0;for(b=1;(b&a)==0;b<<=1){++c}return c}}
function Jk(a){var b,c,d,e;b={};for(d=0,e=a.length;d<e;++d){c=a[d];b[Qr+c.b]=c}return b}
function Rb(a){var b;b=zb(Sb(a,Eb()),3);b.length==0&&(b=zb((new Fb).k(),1));return b}
function Wn(a){var b;b=new gm;$l(b,Sn);bm(b,a.b);b.b.b+=ys;$l(b,Tn);cm(b,a.c);return b.b.b}
function Rh(a){var b;b=lc(Od,{6:1},-1,a.e,1);nm(a.b,0,b,0,a.e);return new si(a.f,a.e,b)}
function Bf(a,b){var c;c=lc(Wd,{6:1},16,2,0);nc(c,0,Df(a,b));nc(c,1,Xf(a,Kf(c[0],b)));return c}
function Cf(a,b,c){var d;d=lc(Wd,{6:1},16,2,0);nc(d,0,Ef(a,b,c));nc(d,1,Xf(a,Kf(d[0],b)));return d}
function $o(a,b){var c;while(a.Pb()){c=a.Qb();if(b==null?c==null:eb(b,c)){return a}}return null}
function Zh(a){var b;if(a.c==-2){if(a.f==0){b=-1}else{for(b=0;a.b[b]==0;++b){}}a.c=b}return a.c}
function bb(a){var b;return a==null?Mr:yc(a)?cb(wc(a)):xc(a,1)?Nr:(b=a,zc(b)?b.gC():Gc).d}
function Uf(a){if(a.b<54){return a.g<0?-1:a.g>0?1:0}return (!a.d&&(a.d=Li(a.g)),a.d).r()}
function Mf(a){if(a.b<54){return new pg(-a.g,a.f)}return new og((!a.d&&(a.d=Li(a.g)),a.d).cb(),a.f)}
function El(a,b,c){if(b<0){throw new lm(b)}if(c<b){throw new lm(c-b)}if(c>a){throw new lm(c)}}
function lg(a,b){if(!isFinite(a)||isNaN(a)){throw new pl(hs)}Hf(this,a.toPrecision(20));If(this,b)}
function Gk(a,b){if(isNaN(a)){return isNaN(b)?0:1}else if(isNaN(b)){return -1}return a<b?-1:a>b?1:0}
function uk(a,b){if(b<2||b>36){return 0}if(a<0||a>=b){return 0}return a<10?48+a&65535:97+a-10&65535}
function er(a,b){var c;if(!b){return null}c=b[Ls];if(c){return c}c=ir(b,dr(a,b.gC()));b[Ls]=c;return c}
function ke(a){var b,c;c=$k(a.h);if(c==32){b=$k(a.m);return b==32?$k(a.l)+32:b+20-10}else{return c-12}}
function be(a){var b,c,d;b=a&4194303;c=~~a>>22&4194303;d=a<0?1048575:0;return de(b,c,d)}
function Qe(){Qe=rr;Me=de(4194303,4194303,524287);Ne=de(0,0,524288);Oe=ue(1);ue(2);Pe=ue(0)}
function mn(a,b){hn(a.b,a.b,a.e,b.b,b.e);a.e=hl(gl(a.e,b.e)+1,a.b.length);Sh(a);a.c=-2}
function um(a,b){var c;c=~~b>>5;a.e+=c+($k(a.b[a.e-1])-(b&31)>=0?0:1);xm(a.b,a.b,c,b&31);Sh(a);a.c=-2}
function Tm(a,b){var c,d;c=~~b>>5;if(a.e<c||a.ab()<=b){return}d=32-(b&31);a.e=c+1;a.b[c]&=d<32?~~-1>>>d:0;Sh(a)}
function ai(a){var b;b=a.e>1?De(Ee(ue(a.b[1]),32),qe(ue(a.b[0]),yr)):qe(ue(a.b[0]),yr);return Ae(ue(a.f),b)}
function jn(a,b,c){var d;for(d=c-1;d>=0&&a[d]==b[d];--d){}return d<0?0:xe(qe(ue(a[d]),yr),qe(ue(b[d]),yr))?-1:1}
function ym(a,b,c){var d,e,f;d=0;for(e=0;e<c;++e){f=b[e];a[e]=f<<1|d;d=~~f>>>31}d!=0&&(a[c]=d)}
function ge(a,b,c,d,e){var f;f=Fe(a,b);c&&je(f);if(e){a=ie(a,b);d?(ae=Be(a)):(ae=de(a.l,a.m,a.h))}return f}
function gwtOnLoad(b,c,d,e){$moduleName=c;$moduleBase=d;if(b)try{Jr($d)()}catch(a){b(c)}else{Jr($d)()}}
function fr(a,b){var c,d,e;if(b==null){return null}d=cr(b);e=d;for(c=0;c<b.length;++c){e[c]=er(a,b[c])}return d}
function Mb(a,b){var c,d,e;e=b&&b.stack?b.stack.split('\n'):[];for(c=0,d=e.length;c<d;++c){e[c]=a.n(e[c])}return e}
function Um(a,b){var c,d;d=~~b>>5==a.e-1&&a.b[a.e-1]==1<<(b&31);if(d){for(c=0;d&&c<a.e-1;++c){d=a.b[c]==0}}return d}
function _h(a){var b;if(a.d!=0){return a.d}for(b=0;b<a.b.length;++b){a.d=a.d*33+(a.b[b]&-1)}a.d=a.d*a.f;return a.d}
function Hg(a,b){if(b==0){return Gg(a)}if(se(a,ur)&&b>=0&&b<pf.length){return pf[b]}return new qg(a,b)}
function Ig(a){if(a==Bc(a)){return Hg(ur,Bc(a))}if(a>=0){return new qg(ur,2147483647)}return new qg(ur,-2147483648)}
function Li(a){Oh();if(a<0){if(a!=-1){return new ui(-1,-a)}return Ih}else return a<=10?Kh[Bc(a)]:new ui(1,a)}
function zg(a){var b=qf;!b&&(b=qf=/^[+-]?\d*$/i);if(b.test(a)){return parseInt(a,10)}else{return Number.NaN}}
function kp(e,a){var b=e.f;for(var c in b){if(c.charCodeAt(0)==58){var d=new Yp(e,c.substring(1));a.Kb(d)}}}
function Rl(a){Pl();var b=Qr+a;var c=Ol[b];if(c!=null){return c}c=Ml[b];c==null&&(c=Ql(a));Sl();return Ol[b]=c}
function Be(a){var b,c,d;b=~a.l+1&4194303;c=~a.m+(b==0?1:0)&4194303;d=~a.h+(b==0&&c==0?1:0)&1048575;return de(b,c,d)}
function je(a){var b,c,d;b=~a.l+1&4194303;c=~a.m+(b==0?1:0)&4194303;d=~a.h+(b==0&&c==0?1:0)&1048575;a.l=b;a.m=c;a.h=d}
function Q(a){var b,c,d;c=lc(Ud,{6:1},13,a.length,0);for(d=0,b=a.length;d<b;++d){if(!a[d]){throw new jl}c[d]=a[d]}}
function Cb(){var a,b,c,d;c=Rb(new Tb);d=lc(Ud,{6:1},13,c.length,0);for(a=0,b=d.length;a<b;++a){d[a]=new sl(c[a])}Q(d)}
function fk(){var a,b,c;c=(Qo(),Qo(),zo);b=lc(Sd,{6:1},5,c.length,0);for(a=0;a<c.length;++a)b[a]=new bk(c[a]);return b}
function ki(a){var b,c,d,e;return a.f==0?a:(e=a.e,c=e+1,b=lc(Od,{6:1},-1,c,1),ym(b,a.b,e),d=new si(a.f,c,b),Sh(d),d)}
function Ym(a,b,c,d){var e,f;e=c.e;f=lc(Od,{6:1},-1,(e<<1)+1,1);io(a.b,hl(e,a.e),b.b,hl(e,b.e),f);Zm(f,c,d);return Pm(f,c)}
function Vh(a,b){var c;if(a===b){return true}if(xc(b,17)){c=vc(b,17);return a.f==c.f&&a.e==c.e&&Wh(a,c.b)}return false}
function Zk(a){var b;if(a<0){return -2147483648}else if(a==0){return 0}else{for(b=1073741824;(b&a)==0;b>>=1){}return b}}
function sm(a){var b,c,d;if(a.f==0){return 0}b=a.e<<5;c=a.b[a.e-1];if(a.f<0){d=Zh(a);d==a.e-1&&(c=~~(c-1))}b-=$k(c);return b}
function io(a,b,c,d,e){go();if(b==0||d==0){return}b==1?(e[d]=ko(e,c,d,a[0])):d==1?(e[b]=ko(e,a,b,c[0])):jo(a,c,e,b,d)}
function en(a,b,c,d,e){var f,g;g=a;for(f=c.ab()-1;f>=0;--f){g=Ym(g,g,d,e);(c.b[~~f>>5]&1<<(f&31))!=0&&(g=Ym(g,b,d,e))}return g}
function on(a,b,c){var d,e;d=qe(ue(c),yr);for(e=0;Ce(d,ur)&&e<b;++e){d=pe(d,qe(ue(a[e]),yr));a[e]=Je(d);d=Fe(d,32)}return Je(d)}
function hg(b,c,d){var a,e;try{Hf(this,Ll(b,c,d))}catch(a){a=_d(a);if(xc(a,14)){e=a;throw new pl(e.f)}else throw a}}
function Dg(a){if(a<-2147483648){throw new nk('Overflow')}else if(a>2147483647){throw new nk('Underflow')}else{return Bc(a)}}
function Xn(a,b){Un();if(a<0){throw new Sk('Digits < 0')}if(!b){throw new kl('null RoundingMode')}this.b=a;this.c=b}
function Ki(a){Oh();if(xe(a,ur)){if(Ce(a,wr)){return new ti(-1,Be(a))}return Ih}else return ye(a,tr)?Kh[Je(a)]:new ti(1,a)}
function tg(a){var b;xe(a,ur)&&(a=de(~a.l&4194303,~a.m&4194303,~a.h&1048575));return 64-(b=Je(Fe(a,32)),b!=0?$k(b):$k(Je(a))+32)}
function pe(a,b){var c,d,e;c=a.l+b.l;d=a.m+b.m+(~~c>>22);e=a.h+b.h+(~~d>>22);return de(c&4194303,d&4194303,e&1048575)}
function He(a,b){var c,d,e;c=a.l-b.l;d=a.m-b.m+(~~c>>22);e=a.h-b.h+(~~d>>22);return de(c&4194303,d&4194303,e&1048575)}
function Sm(a,b){var c;c=b-1;if(a.f>0){while(!a.gb(c)){--c}return b-1-c}else{while(a.gb(c)){--c}return b-1-gl(c,a.bb())}}
function fe(a,b){if(a.h==524288&&a.m==0&&a.l==0){b&&(ae=de(0,0,0));return ce((Qe(),Oe))}b&&(ae=de(a.l,a.m,a.h));return de(0,0,0)}
function Ff(a,b){var c;if(a===b){return true}if(xc(b,16)){c=vc(b,16);return c.f==a.f&&(a.b<54?c.g==a.g:a.d.eQ(c.d))}return false}
function cn(a,b,c){var d,e,f,g;f=ur;for(d=b-1;d>=0;--d){g=pe(Ee(f,32),qe(ue(a[d]),yr));e=Nm(g,c);f=ue(Je(Fe(e,32)))}return Je(f)}
function wm(a,b){var c,d,e,f;c=~~b>>5;b&=31;e=a.e+c+(b==0?0:1);d=lc(Od,{6:1},-1,e,1);xm(d,a.b,c,b);f=new si(a.f,e,d);Sh(f);return f}
function ue(a){var b,c;if(a>-129&&a<128){b=a+128;oe==null&&(oe=lc(Pd,{6:1},2,256,0));c=oe[b];!c&&(c=oe[b]=be(a));return c}return be(a)}
function Ai(a){Oh();var b,c,d;if(a<Mh.length){return Mh[a]}c=~~a>>5;b=a&31;d=lc(Od,{6:1},-1,c+1,1);d[c]=1<<b;return new si(1,c+1,d)}
function ri(a){Oh();if(a.length==0){this.f=0;this.e=1;this.b=mc(Od,{6:1},-1,[0])}else{this.f=1;this.e=a.length;this.b=a;Sh(this)}}
function Dl(c){if(c.length==0||c[0]>ys&&c[c.length-1]>ys){return c}var a=c.replace(/^(\s*)/,Lr);var b=a.replace(/\s*$/,Lr);return b}
function Yk(a){a-=~~a>>1&1431655765;a=(~~a>>2&858993459)+(a&858993459);a=(~~a>>4)+a&252645135;a+=~~a>>8;a+=~~a>>16;return a&63}
function nc(a,b,c){if(c!=null){if(a.qI>0&&!uc(c,a.qI)){throw new qk}if(a.qI<0&&(c.tM==rr||tc(c,1))){throw new qk}}return a[b]=c}
function Qh(a,b){if(a.f>b.f){return 1}if(a.f<b.f){return -1}if(a.e>b.e){return a.f}if(a.e<b.e){return -b.f}return a.f*jn(a.b,b.b,a.e)}
function Rf(a,b){var c;c=a.f-b;if(a.b<54){if(a.g==0){return Ig(c)}return new pg(a.g,Dg(c))}return new dg((!a.d&&(a.d=Li(a.g)),a.d),Dg(c))}
function jp(i,a){var b=i.b;for(var c in b){var d=parseInt(c,10);if(c==d){var e=b[d];for(var f=0,g=e.length;f<g;++f){a.Kb(e[f])}}}}
function np(i,a,b){var c=i.b[b];if(c){for(var d=0,e=c.length;d<e;++d){var f=c[d];var g=f.Rb();if(i.Ob(a,g)){return f.Sb()}}}return null}
function pp(i,a,b){var c=i.b[b];if(c){for(var d=0,e=c.length;d<e;++d){var f=c[d];var g=f.Rb();if(i.Ob(a,g)){return true}}}return false}
function Bq(a,b){var c,d,e,f;d=0;c=a.length-1;while(d<=c){e=d+(~~(c-d)>>1);f=a[e];if(f<b){d=e+1}else if(f>b){c=e-1}else{return e}}return -d-1}
function Pk(a){var b;b=_e(a);if(b>3.4028234663852886E38){return Infinity}else if(b<-3.4028234663852886E38){return -Infinity}return b}
function Ie(a){if(se(a,(Qe(),Ne))){return -9223372036854775808}if(!we(a,Pe)){return -me(Be(a))}return a.l+a.m*4194304+a.h*17592186044416}
function Bb(a,b){var c,d,e,f;e=Sb(a,yc(b.c)?wc(b.c):null);f=lc(Ud,{6:1},13,e.length,0);for(c=0,d=f.length;c<d;++c){f[c]=new sl(e[c])}Q(f)}
function yb(a){var b,c,d;d=Lr;a=Dl(a);b=a.indexOf(Or);if(b!=-1){c=a.indexOf('function')==0?8:0;d=Dl(a.substr(c,b-c))}return d.length>0?d:Pr}
function ie(a,b){var c,d,e;if(b<=22){c=a.l&(1<<b)-1;d=e=0}else if(b<=44){c=a.l;d=a.m&(1<<b-22)-1;e=0}else{c=a.l;d=a.m;e=a.h&(1<<b-44)-1}return de(c,d,e)}
function Db(b){var c=Lr;try{for(var d in b){if(d!='name'&&d!='message'&&d!='toString'){try{c+='\n '+d+Kr+b[d]}catch(a){}}}}catch(a){}return c}
function ti(a,b){this.f=a;if(se(qe(b,zr),ur)){this.e=1;this.b=mc(Od,{6:1},-1,[Je(b)])}else{this.e=2;this.b=mc(Od,{6:1},-1,[Je(b),Je(Fe(b,32))])}}
function ui(a,b){this.f=a;if(b<4294967296){this.e=1;this.b=mc(Od,{6:1},-1,[~~b])}else{this.e=2;this.b=mc(Od,{6:1},-1,[~~(b%4294967296),~~(b/4294967296)])}}
function Xm(a,b){var c,d;d=new ri(lc(Od,{6:1},-1,1<<b,1));d.e=1;d.b[0]=1;d.f=1;for(c=1;c<b;++c){Bm(ei(a,d),c)&&(d.b[~~c>>5]|=1<<(c&31))}return d}
function Jm(a){var b,c,d;b=qe(ue(a.b[0]),yr);c=sr;d=vr;do{Ce(qe(Ae(b,c),d),ur)&&(c=De(c,d));d=Ee(d,1)}while(xe(d,Fr));c=Be(c);return Je(qe(c,yr))}
function Gm(a){var b,c,d;if(we(a,ur)){c=re(a,Ar);d=ze(a,Ar)}else{b=Ge(a,1);c=re(b,Br);d=ze(b,Br);d=pe(Ee(d,1),qe(a,sr))}return De(Ee(d,32),qe(c,yr))}
function ko(a,b,c,d){go();var e,f;e=ur;for(f=0;f<c;++f){e=pe(Ae(qe(ue(b[f]),yr),qe(ue(d),yr)),qe(ue(Je(e)),yr));a[f]=Je(e);e=Ge(e,32)}return Je(e)}
function _m(a,b,c){var d,e,f,g,i;e=c.e<<5;d=bi(a.eb(e),c);i=bi(Ai(e),c);f=Jm(c);c.e==1?(g=en(i,d,b,c,f)):(g=dn(i,d,b,c,f));return Ym(g,(Oh(),Jh),c,f)}
function Om(a,b,c){var d,e,f,g,i,j;d=c.bb();e=c.fb(d);g=_m(a,b,e);i=an(a,b,d);f=Xm(e,d);j=ei(rn(i,g),f);Tm(j,d);j.f<0&&(j=fn(j,Ai(d)));return fn(g,ei(e,j))}
function xb(b,c){var a,d,e,f;for(d=0,e=b.length;d<e;++d){f=b[d];try{f[1]?f[0].Ub()&&(c=wb(c,f)):f[0].Ub()}catch(a){a=_d(a);if(!xc(a,12))throw a}}return c}
function bf(a){var b=$e;!b&&(b=$e=/^\s*[+-]?((\d+\.?\d*)|(\.\d+))([eE][+-]?\d+)?[dDfF]?\s*$/i);if(b.test(a)){return parseFloat(a)}else{return Number.NaN}}
function pi(a,b){if(a==null){throw new jl}if(b<2||b>36){throw new pl('Radix out of range')}if(a.length==0){throw new pl('Zero length BigInteger')}Ei(this,a,b)}
function Vq(){Uq();var a,b,c;c=Tq+++(new Date).getTime();a=Bc(Math.floor(c*5.9604644775390625E-8))&16777215;b=Bc(c-a*16777216);this.b=a^1502;this.c=b^15525485}
function un(a,b,c,d){var e;if(c>d){return 1}else if(c<d){return -1}else{for(e=c-1;e>=0&&a[e]==b[e];--e){}return e<0?0:xe(qe(ue(a[e]),yr),qe(ue(b[e]),yr))?-1:1}}
function In(a,b){var c,d,e,f;e=a.e;d=lc(Od,{6:1},-1,e,1);hl(Zh(a),Zh(b));for(c=0;c<b.e;++c){d[c]=a.b[c]|b.b[c]}for(;c<e;++c){d[c]=a.b[c]}f=new si(1,e,d);return f}
function Mn(a,b){var c,d,e,f;e=a.e;d=lc(Od,{6:1},-1,e,1);c=hl(Zh(a),Zh(b));for(;c<b.e;++c){d[c]=a.b[c]^b.b[c]}for(;c<a.e;++c){d[c]=a.b[c]}f=new si(1,e,d);Sh(f);return f}
function Bn(a,b){var c,d,e,f;e=lc(Od,{6:1},-1,a.e,1);d=hl(a.e,b.e);for(c=Zh(a);c<d;++c){e[c]=a.b[c]&~b.b[c]}for(;c<a.e;++c){e[c]=a.b[c]}f=new si(1,a.e,e);Sh(f);return f}
function Dn(a,b){var c,d,e,f;e=hl(a.e,b.e);c=gl(Zh(a),Zh(b));if(c>=e){return Oh(),Nh}d=lc(Od,{6:1},-1,e,1);for(;c<e;++c){d[c]=a.b[c]&b.b[c]}f=new si(1,e,d);Sh(f);return f}
function Nf(a,b){var c;if(b==0){return lf}if(b<0||b>999999999){throw new nk(bs)}c=a.f*b;return a.b==0&&a.g!=-1?Ig(c):new dg((!a.d&&(a.d=Li(a.g)),a.d).db(b),Dg(c))}
function tk(a,b){if(b<2||b>36){return -1}if(a>=48&&a<48+(b<10?b:10)){return a-48}if(a>=97&&a<b+97-10){return a-97+10}if(a>=65&&a<b+65-10){return a-65+10}return -1}
function Uq(){Uq=rr;var a,b,c;Rq=lc(Nd,{6:1},-1,25,1);Sq=lc(Nd,{6:1},-1,33,1);c=1.52587890625E-5;for(a=32;a>=0;--a){Sq[a]=c;c*=0.5}b=1;for(a=24;a>=0;--a){Rq[a]=b;b*=0.5}}
function oo(a,b){go();var c,d;d=(Oh(),Jh);c=a;for(;b>1;b>>=1){(b&1)!=0&&(d=ei(d,c));c.e==1?(c=ei(c,c)):(c=new ri(qo(c.b,c.e,lc(Od,{6:1},-1,c.e<<1,1))))}d=ei(d,c);return d}
function nl(){nl=rr;ml=mc(Md,{6:1},-1,[48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122])}
function rm(a){var b,c;b=0;if(a.f==0){return 0}c=Zh(a);if(a.f>0){for(;c<a.e;++c){b+=Yk(a.b[c])}}else{b+=Yk(-a.b[c]);for(++c;c<a.e;++c){b+=Yk(~a.b[c])}b=(a.e<<5)-b}return b}
function ne(a,b){var c,d,e;e=a.h-b.h;if(e<0){return false}c=a.l-b.l;d=a.m-b.m+(~~c>>22);e+=~~d>>22;if(e<0){return false}a.l=c&4194303;a.m=d&4194303;a.h=e&1048575;return true}
function al(a){var b,c,d;b=lc(Md,{6:1},-1,8,1);c=(nl(),ml);d=7;if(a>=0){while(a>15){b[d--]=c[a&15];a>>=4}}else{while(d>0){b[d--]=c[a&15];a>>=4}}b[d]=c[a&15];return Gl(b,d,8)}
function vn(a,b){if(b.f==0||a.f==0){return Oh(),Nh}if(Vh(b,(Oh(),Ih))){return a}if(Vh(a,Ih)){return b}return a.f>0?b.f>0?Dn(a,b):wn(a,b):b.f>0?wn(b,a):a.e>b.e?xn(a,b):xn(b,a)}
function yn(a,b){if(b.f==0){return a}if(a.f==0){return Oh(),Nh}if(Vh(a,(Oh(),Ih))){return new Pi(En(b))}if(Vh(b,Ih)){return Nh}return a.f>0?b.f>0?Bn(a,b):Cn(a,b):b.f>0?An(a,b):zn(a,b)}
function Gf(a){var b;if(a.c!=0){return a.c}if(a.b<54){b=te(a.g);a.c=Je(qe(b,wr));a.c=33*a.c+Je(qe(Fe(b,32),wr));a.c=17*a.c+Bc(a.f);return a.c}a.c=17*a.d.hC()+Bc(a.f);return a.c}
function vg(a,b,c,d){var e,f,g,i,j;f=(j=a/b,j>0?Math.floor(j):Math.ceil(j));g=a%b;i=Gk(a*b,0);if(g!=0){e=Gk((g<=0?0-g:g)*2,b<=0?0-b:b);f+=Bg(Bc(f)&1,i*(5+e),d)}return new pg(f,c)}
function jc(a,b){var c=new Array(b);if(a==3){for(var d=0;d<b;++d){var e=new Object;e.l=e.m=e.h=0;c[d]=e}}else if(a>0){var e=[null,0,false][a];for(var d=0;d<b;++d){c[d]=e}}return c}
function tn(a,b,c,d,e){var f,g;f=ur;for(g=0;g<e;++g){f=pe(f,He(qe(ue(b[g]),yr),qe(ue(d[g]),yr)));a[g]=Je(f);f=Fe(f,32)}for(;g<c;++g){f=pe(f,qe(ue(b[g]),yr));a[g]=Je(f);f=Fe(f,32)}}
function xm(a,b,c,d){var e,f;if(d==0){nm(b,0,a,c,a.length-c)}else{f=32-d;a[a.length-1]=0;for(e=a.length-1;e>c;--e){a[e]|=~~b[e-c-1]>>>f;a[e-1]=b[e-c-1]<<d}}for(e=0;e<c;++e){a[e]=0}}
function rg(a,b,c){if(c<hf.length&&gl(a.b,b.b+jf[Bc(c)])+1<54){return new pg(a.g+b.g*hf[Bc(c)],a.f)}return new og(fn((!a.d&&(a.d=Li(a.g)),a.d),mo((!b.d&&(b.d=Li(b.g)),b.d),Bc(c))),a.f)}
function Ue(a){return $stats({moduleName:$moduleName,sessionId:$sessionId,subSystem:'startup',evtGroup:'moduleStartup',millis:(new Date).getTime(),type:'onModuleLoadStart',className:a})}
function vm(a,b){var c,d,e;e=a.r();if(b==0||a.r()==0){return}d=~~b>>5;a.e-=d;if(!Am(a.b,a.e,a.b,d,b&31)&&e<0){for(c=0;c<a.e&&a.b[c]==-1;++c){a.b[c]=0}c==a.e&&++a.e;++a.b[c]}Sh(a);a.c=-2}
function ve(a,b){var c,d;c=~~a.h>>19;d=~~b.h>>19;return c==0?d!=0||a.h>b.h||a.h==b.h&&a.m>b.m||a.h==b.h&&a.m==b.m&&a.l>b.l:!(d==0||a.h<b.h||a.h==b.h&&a.m<b.m||a.h==b.h&&a.m==b.m&&a.l<=b.l)}
function we(a,b){var c,d;c=~~a.h>>19;d=~~b.h>>19;return c==0?d!=0||a.h>b.h||a.h==b.h&&a.m>b.m||a.h==b.h&&a.m==b.m&&a.l>=b.l:!(d==0||a.h<b.h||a.h==b.h&&a.m<b.m||a.h==b.h&&a.m==b.m&&a.l<b.l)}
function Rm(a,b){var c,d,e;c=bl(a);d=bl(b);e=c<d?c:d;c!=0&&(a=Ge(a,c));d!=0&&(b=Ge(b,d));do{if(we(a,b)){a=He(a,b);a=Ge(a,bl(a))}else{b=He(b,a);b=Ge(b,bl(b))}}while(Ce(a,ur));return Ee(b,e)}
function Fn(a,b){if(Vh(b,(Oh(),Ih))||Vh(a,Ih)){return Ih}if(b.f==0){return a}if(a.f==0){return b}return a.f>0?b.f>0?a.e>b.e?In(a,b):In(b,a):Gn(a,b):b.f>0?Gn(b,a):Zh(b)>Zh(a)?Hn(b,a):Hn(a,b)}
function sg(a){var b,c;if(a>-140737488355328&&a<140737488355328){if(a==0){return 0}b=a<0;b&&(a=-a);c=Bc(el(Math.log(a)/0.6931471805599453));(!b||a!=Math.pow(2,c))&&++c;return c}return tg(te(a))}
function Yh(a,b){var c,d;c=a._();d=b._();if(c.r()==0){return d}else if(d.r()==0){return c}if((c.e==1||c.e==2&&c.b[1]>0)&&(d.e==1||d.e==2&&d.b[1]>0)){return Ki(Rm(ai(c),ai(d)))}return Qm(Rh(c),Rh(d))}
function ci(a,b){var c;if(b.f<=0){throw new nk(us)}if(!(a.gb(0)||b.gb(0))){throw new nk(vs)}if(b.e==1&&b.b[0]==1){return Nh}c=Wm(bi(a._(),b),b);if(c.f==0){throw new nk(vs)}c=a.f<0?rn(b,c):c;return c}
function Am(a,b,c,d,e){var f,g,i;f=true;for(g=0;g<d;++g){f=f&c[g]==0}if(e==0){nm(c,d,a,0,b)}else{i=32-e;f=f&c[g]<<i==0;for(g=0;g<b-1;++g){a[g]=~~c[g+d]>>>e|c[g+d+1]<<i}a[g]=~~c[g+d]>>>e;++g}return f}
function Ql(a){var b,c,d,e;b=0;d=a.length;e=d-4;c=0;while(c<e){b=a.charCodeAt(c+3)+31*(a.charCodeAt(c+2)+31*(a.charCodeAt(c+1)+31*(a.charCodeAt(c)+31*b)))|0;c+=4}while(c<d){b=b*31+vl(a,c++)}return b|0}
function Pm(a,b){var c,d,e,f,g;f=b.e;c=a[f]!=0;if(!c){e=b.b;c=true;for(d=f-1;d>=0;--d){if(a[d]!=e[d]){c=a[d]!=0&&ve(qe(ue(a[d]),yr),qe(ue(e[d]),yr));break}}}g=new si(1,f+1,a);c&&pn(g,b);Sh(g);return g}
function Kf(a,b){var c;c=a.f+b.f;if(a.b==0&&a.g!=-1||b.b==0&&b.g!=-1){return Ig(c)}if(a.b+b.b<54){return new pg(a.g*b.g,Dg(c))}return new dg(ei((!a.d&&(a.d=Li(a.g)),a.d),(!b.d&&(b.d=Li(b.g)),b.d)),Dg(c))}
function sp(k,a,b,c){var d=k.b[c];if(d){for(var e=0,f=d.length;e<f;++e){var g=d[e];var i=g.Rb();if(k.Ob(a,i)){var j=g.Sb();g.Tb(b);return j}}}else{d=k.b[c]=[]}var g=new Iq(a,b);d.push(g);++k.e;return null}
function an(a,b,c){var d,e,f,g,i;g=(Oh(),Jh);e=Rh(b);d=Rh(a);a.gb(0)&&Tm(e,c-1);Tm(d,c);for(f=e.ab()-1;f>=0;--f){i=Rh(g);Tm(i,c);g=ei(g,i);if((e.b[~~f>>5]&1<<(f&31))!=0){g=ei(g,d);Tm(g,c)}}Tm(g,c);return g}
function ar(a,b){var c,d,e,f,g,i,j;j=zl(a,Ks,0);i=$wnd;for(g=0;g<j.length;++g){if(!wl(j[g],'client')){br(i,j[g]);i=i[j[g]]}}c=zl(b,Ks,0);for(e=0,f=c.length;e<f;++e){d=c[e];if(!wl(Dl(d),Lr)){br(i,d);i=i[d]}}}
function gi(a,b){var c;if(b<0){throw new nk('Negative exponent')}if(b==0){return Jh}else if(b==1||a.eQ(Jh)||a.eQ(Nh)){return a}if(!a.gb(0)){c=1;while(!a.gb(c)){++c}return ei(Ai(c*b),a.fb(c).db(b))}return oo(a,b)}
function Ee(a,b){var c,d,e;b&=63;if(b<22){c=a.l<<b;d=a.m<<b|~~a.l>>22-b;e=a.h<<b|~~a.m>>22-b}else if(b<44){c=0;d=a.l<<b-22;e=a.m<<b-22|~~a.l>>44-b}else{c=0;d=0;e=a.l<<b-44}return de(c&4194303,d&4194303,e&1048575)}
function Ge(a,b){var c,d,e,f;b&=63;c=a.h&1048575;if(b<22){f=~~c>>>b;e=~~a.m>>b|c<<22-b;d=~~a.l>>b|a.m<<22-b}else if(b<44){f=0;e=~~c>>>b-22;d=~~a.m>>b-22|a.h<<44-b}else{f=0;e=0;d=~~c>>>b-44}return de(d&4194303,e&4194303,f&1048575)}
function Uo(a){Qo();switch(a){case 2:return Ao;case 1:return Bo;case 3:return Co;case 5:return Do;case 6:return Eo;case 4:return Fo;case 7:return Go;case 0:return Ho;default:throw new Sk('Invalid rounding mode');}}
function mi(a,b){var c,d,e;if(b==0){return (a.b[0]&1)!=0}if(b<0){throw new nk(ts)}e=~~b>>5;if(e>=a.e){return a.f<0}c=a.b[e];b=1<<(b&31);if(a.f<0){d=Zh(a);if(e<d){return false}else d==e?(c=-c):(c=~c)}return (c&b)!=0}
function Pf(a){var b,c;if(a.e>0){return a.e}b=1;c=1;if(a.b<54){a.b>=1&&(c=a.g);b+=Math.log(c<=0?0-c:c)*Math.LOG10E}else{b+=(a.b-1)*0.3010299956639812;Th((!a.d&&(a.d=Li(a.g)),a.d),po(b)).r()!=0&&++b}a.e=Bc(b);return a.e}
function zh(a){rf();var b,c;c=Lj(a);if(c==ks)b=Fg(a[0]);else if(c==ks)b=Gg(ue(a[0]));else if(c==ns)b=Hg(ue(a[0]),a[1]);else throw new V('Unknown call signature for bd = java.math.BigDecimal.valueOf: '+c);return new Kg(b)}
function Qi(a){Oh();var b,c;c=Lj(a);if(c==ms)b=new oi(a[0].toString());else if(c=='string number')b=new pi(a[0].toString(),a[1]);else throw new V('Unknown call signature for obj = new java.math.BigInteger: '+c);return new Pi(b)}
function Un(){Un=rr;On=new Xn(34,(Qo(),Eo));Pn=new Xn(7,Eo);Qn=new Xn(16,Eo);Rn=new Xn(0,Fo);Sn=mc(Md,{6:1},-1,[112,114,101,99,105,115,105,111,110,61]);Tn=mc(Md,{6:1},-1,[114,111,117,110,100,105,110,103,77,111,100,101,61])}
function Jn(a,b){if(b.f==0){return a}if(a.f==0){return b}if(Vh(b,(Oh(),Ih))){return new Pi(En(a))}if(Vh(a,Ih)){return new Pi(En(b))}return a.f>0?b.f>0?a.e>b.e?Mn(a,b):Mn(b,a):Kn(a,b):b.f>0?Kn(b,a):Zh(b)>Zh(a)?Ln(b,a):Ln(a,b)}
function Cn(a,b){var c,d,e,f,g,i;d=Zh(b);e=Zh(a);if(d>=a.e){return a}g=hl(a.e,b.e);f=lc(Od,{6:1},-1,g,1);c=e;for(;c<d;++c){f[c]=a.b[c]}if(c==d){f[c]=a.b[c]&b.b[c]-1;++c}for(;c<g;++c){f[c]=a.b[c]&b.b[c]}i=new si(1,g,f);Sh(i);return i}
function Wf(a){var b,c,d,e,f;b=1;c=nf.length-1;d=a.f;if(a.b==0&&a.g!=-1){return new mg(Tr)}f=(!a.d&&(a.d=Li(a.g)),a.d);while(!f.gb(0)){e=Uh(f,nf[b]);if(e[1].r()==0){d-=b;b<c&&++b;f=e[0]}else{if(b==1){break}b=1}}return new dg(f,Dg(d))}
function jo(a,b,c,d,e){var f,g,i,j;if(Ac(a)===Ac(b)&&d==e){qo(a,d,c);return}for(i=0;i<d;++i){g=ur;f=a[i];for(j=0;j<e;++j){g=pe(pe(Ae(qe(ue(f),yr),qe(ue(b[j]),yr)),qe(ue(c[i+j]),yr)),qe(ue(Je(g)),yr));c[i+j]=Je(g);g=Ge(g,32)}c[i+e]=Je(g)}}
function hi(a,b){var c,d,e,f,g;if(b.f==0){throw new nk(ss)}g=a.e;c=b.e;if((g!=c?g>c?1:-1:jn(a.b,b.b,g))==-1){return a}e=lc(Od,{6:1},-1,c,1);if(c==1){e[0]=cn(a.b,g,b.b[0])}else{d=g-c+1;e=Km(null,d,a.b,g,b.b,c)}f=new si(a.f,c,e);Sh(f);return f}
function $k(a){var b,c,d;if(a<0){return 0}else if(a==0){return 32}else{d=-(~~a>>16);b=~~d>>16&16;c=16-b;a=~~a>>b;d=a-256;b=~~d>>16&8;c+=b;a<<=b;d=a-4096;b=~~d>>16&4;c+=b;a<<=b;d=a-16384;b=~~d>>16&2;c+=b;a<<=b;d=~~a>>14;b=d&~(~~d>>1);return c+2-b}}
function kn(a,b){var c;if(a.f==0){nm(b.b,0,a.b,0,b.e)}else if(b.f==0){return}else if(a.f==b.f){hn(a.b,a.b,a.e,b.b,b.e)}else{c=un(a.b,b.b,a.e,b.e);if(c>0){tn(a.b,a.b,a.e,b.b,b.e)}else{qn(a.b,a.b,a.e,b.b,b.e);a.f=-a.f}}a.e=gl(a.e,b.e)+1;Sh(a);a.c=-2}
function ln(a,b){var c,d;c=Qh(a,b);if(a.f==0){nm(b.b,0,a.b,0,b.e);a.f=-b.f}else if(a.f!=b.f){hn(a.b,a.b,a.e,b.b,b.e);a.f=c}else{d=un(a.b,b.b,a.e,b.e);if(d>0){tn(a.b,a.b,a.e,b.b,b.e)}else{qn(a.b,a.b,a.e,b.b,b.e);a.f=-a.f}}a.e=gl(a.e,b.e)+1;Sh(a);a.c=-2}
function di(a,b,c){var d,e;if(c.f<=0){throw new nk(us)}d=a;if((c.e==1&&c.b[0]==1)|b.f>0&d.f==0){return Nh}if(d.f==0&&b.f==0){return Jh}if(b.f<0){d=ci(a,c);b=b.cb()}e=c.gb(0)?_m(d._(),b,c):Om(d._(),b,c);d.f<0&&b.gb(0)&&(e=bi(ei(rn(c,Jh),e),c));return e}
function $m(a,b,c,d,e){var f,g,i;f=ur;g=ur;for(i=0;i<d;++i){f=(go(),pe(Ae(qe(ue(c[i]),yr),qe(ue(e),yr)),qe(ue(Je(f)),yr)));g=pe(He(qe(ue(a[b+i]),yr),qe(f,yr)),g);a[b+i]=Je(g);g=Fe(g,32);f=Ge(f,32)}g=pe(He(qe(ue(a[b+d]),yr),f),g);a[b+d]=Je(g);return Je(Fe(g,32))}
function ho(a,b){go();var c,d,e,f,g,i,j,k,n;if(b.e>a.e){i=a;a=b;b=i}if(b.e<63){return no(a,b)}g=(a.e&-2)<<4;k=a.fb(g);n=b.fb(g);d=rn(a,k.eb(g));e=rn(b,n.eb(g));j=ho(k,n);c=ho(d,e);f=ho(rn(k,d),rn(e,n));f=fn(fn(f,j),c);f=f.eb(g);j=j.eb(g<<1);return fn(fn(j,f),c)}
function le(a){var b,c,d;c=a.l;if((c&c-1)!=0){return -1}d=a.m;if((d&d-1)!=0){return -1}b=a.h;if((b&b-1)!=0){return -1}if(b==0&&d==0&&c==0){return -1}if(b==0&&d==0&&c!=0){return _k(c)}if(b==0&&d!=0&&c==0){return _k(d)+22}if(b!=0&&d==0&&c==0){return _k(b)+44}return -1}
function wn(a,b){var c,d,e,f,g,i,j;e=Zh(a);d=Zh(b);if(d>=a.e){return Oh(),Nh}i=a.e;g=lc(Od,{6:1},-1,i,1);c=e>d?e:d;if(c==d){g[c]=-b.b[c]&a.b[c];++c}f=hl(b.e,a.e);for(;c<f;++c){g[c]=~b.b[c]&a.b[c]}if(c>=b.e){for(;c<a.e;++c){g[c]=a.b[c]}}j=new si(1,i,g);Sh(j);return j}
function Jf(a,b){if(a.b==0&&a.g!=-1){return Ig(b>0?b:0)}if(b>=0){if(a.b<54){return new pg(a.g,Dg(b))}return new dg((!a.d&&(a.d=Li(a.g)),a.d),Dg(b))}if(-b<hf.length&&a.b+jf[Bc(-b)]<54){return new pg(a.g*hf[Bc(-b)],0)}return new dg(mo((!a.d&&(a.d=Li(a.g)),a.d),Bc(-b)),0)}
function Fe(a,b){var c,d,e,f,g;b&=63;c=a.h;d=(c&524288)!=0;d&&(c|=-1048576);if(b<22){g=~~c>>b;f=~~a.m>>b|c<<22-b;e=~~a.l>>b|a.m<<22-b}else if(b<44){g=d?1048575:0;f=~~c>>b-22;e=~~a.m>>b-22|c<<44-b}else{g=d?1048575:0;f=d?4194303:0;e=~~c>>b-44}return de(e&4194303,f&4194303,g&1048575)}
function Oh(){Oh=rr;var a;Jh=new qi(1,1);Lh=new qi(1,10);Nh=new qi(0,0);Ih=new qi(-1,1);Kh=mc(Xd,{6:1},17,[Nh,Jh,new qi(1,2),new qi(1,3),new qi(1,4),new qi(1,5),new qi(1,6),new qi(1,7),new qi(1,8),new qi(1,9),Lh]);Mh=lc(Xd,{6:1},17,32,0);for(a=0;a<Mh.length;++a){nc(Mh,a,Ki(Ee(sr,a)))}}
function lo(a,b){go();var c,d,e,f,g,i,j,k,n;k=a.f;if(k==0){return Oh(),Nh}d=a.e;c=a.b;if(d==1){e=Ae(qe(ue(c[0]),yr),qe(ue(b),yr));j=Je(e);g=Je(Ge(e,32));return g==0?new qi(k,j):new si(k,2,mc(Od,{6:1},-1,[j,g]))}i=d+1;f=lc(Od,{6:1},-1,i,1);f[d]=ko(f,c,d,b);n=new si(k,i,f);Sh(n);return n}
function no(a,b){var c,d,e,f,g,i,j,k,n,o,q;d=a.e;f=b.e;i=d+f;j=a.f!=b.f?-1:1;if(i==2){n=Ae(qe(ue(a.b[0]),yr),qe(ue(b.b[0]),yr));q=Je(n);o=Je(Ge(n,32));return o==0?new qi(j,q):new si(j,2,mc(Od,{6:1},-1,[q,o]))}c=a.b;e=b.b;g=lc(Od,{6:1},-1,i,1);io(c,d,e,f,g);k=new si(j,i,g);Sh(k);return k}
function Hn(a,b){var c,d,e,f,g,i;d=Zh(b);e=Zh(a);if(e>=b.e){return b}else if(d>=a.e){return a}g=hl(a.e,b.e);f=lc(Od,{6:1},-1,g,1);if(d==e){f[e]=-(-a.b[e]|-b.b[e]);c=e}else{for(c=d;c<e;++c){f[c]=b.b[c]}f[c]=b.b[c]&a.b[c]-1}for(++c;c<g;++c){f[c]=a.b[c]&b.b[c]}i=new si(-1,g,f);Sh(i);return i}
function zm(a,b){var c,d,e,f,g;d=~~b>>5;b&=31;if(d>=a.e){return a.f<0?(Oh(),Ih):(Oh(),Nh)}f=a.e-d;e=lc(Od,{6:1},-1,f+1,1);Am(e,f,a.b,d,b);if(a.f<0){for(c=0;c<d&&a.b[c]==0;++c){}if(c<d||b>0&&a.b[c]<<32-b!=0){for(c=0;c<f&&e[c]==-1;++c){e[c]=0}c==f&&++f;++e[c]}}g=new si(a.f,f,e);Sh(g);return g}
function vo(a,b){uo();var c,d;if(b<=0||a.e==1&&a.b[0]==2){return true}if(!mi(a,0)){return false}if(a.e==1&&(a.b[0]&-1024)==0){return Bq(to,a.b[0])>=0}for(d=1;d<to.length;++d){if(cn(a.b,a.e,to[d])==0){return false}}c=sm(a);for(d=2;c<ro[d];++d){}b=d<1+(~~(b-1)>>1)?d:1+(~~(b-1)>>1);return wo(a,b)}
function Qm(a,b){var c,d,e,f;c=a.bb();d=b.bb();e=c<d?c:d;vm(a,c);vm(b,d);if(Qh(a,b)==1){f=a;a=b;b=f}do{if(b.e==1||b.e==2&&b.b[1]>0){b=Ki(Rm(ai(a),ai(b)));break}if(b.e>a.e*1.2){b=hi(b,a);b.r()!=0&&vm(b,b.bb())}else{do{pn(b,a);vm(b,b.bb())}while(Qh(b,a)>=0)}f=b;b=a;a=f}while(f.f!=0);return b.eb(e)}
function Sf(a,b,c){var d;if(!c){throw new jl}d=b-a.f;if(d==0){return a}if(d>0){if(d<hf.length&&a.b+jf[Bc(d)]<54){return new pg(a.g*hf[Bc(d)],b)}return new dg(mo((!a.d&&(a.d=Li(a.g)),a.d),Bc(d)),b)}if(a.b<54&&-d<hf.length){return vg(a.g,hf[Bc(-d)],b,c)}return ug((!a.d&&(a.d=Li(a.g)),a.d),po(-d),b,c)}
function cl(a,b){var c,d,e,f;if(b==10||b<2||b>36){return Lr+Ke(a)}c=lc(Md,{6:1},-1,65,1);d=(nl(),ml);e=64;f=ue(b);if(we(a,ur)){while(we(a,f)){c[e--]=d[Je(ze(a,f))];a=ee(a,f,false)}c[e]=d[Je(a)]}else{while(ye(a,Be(f))){c[e--]=d[Je(Be(ze(a,f)))];a=ee(a,f,false)}c[e--]=d[Je(Be(a))];c[e]=45}return Gl(c,e,65)}
function Of(a,b,c){var d,e,f,g,i,j;f=b<0?-b:b;g=c.b;e=Bc(fl(f))+1;i=c;if(b==0||a.b==0&&a.g!=-1&&b>0){return Nf(a,b)}if(f>999999999||g==0&&b<0||g>0&&e>g){throw new nk(bs)}g>0&&(i=new Xn(g+e+1,c.c));d=Qf(a,i);j=~~Zk(f)>>1;while(j>0){d=Lf(d,d,i);(f&j)==j&&(d=Lf(d,a,i));j>>=1}b<0&&(d=zf(lf,d,i));If(d,c);return d}
function tf(a,b){var c;c=a.f-b.f;if(a.b==0&&a.g!=-1){if(c<=0){return b}if(b.b==0&&b.g!=-1){return a}}else if(b.b==0&&b.g!=-1){if(c>=0){return a}}if(c==0){if(gl(a.b,b.b)+1<54){return new pg(a.g+b.g,a.f)}return new og(fn((!a.d&&(a.d=Li(a.g)),a.d),(!b.d&&(b.d=Li(b.g)),b.d)),a.f)}else return c>0?rg(a,b,c):rg(b,a,-c)}
function Nm(a,b){var c,d,e,f,g;d=qe(ue(b),yr);if(we(a,ur)){f=ee(a,d,false);g=ze(a,d)}else{c=Ge(a,1);e=ue(~~b>>>1);f=ee(c,e,false);g=ze(c,e);g=pe(Ee(g,1),qe(a,sr));if((b&1)!=0){if(!ve(f,g)){g=He(g,f)}else{if(ye(He(f,g),d)){g=pe(g,He(d,f));f=He(f,sr)}else{g=pe(g,He(Ee(d,1),f));f=He(f,vr)}}}}return De(Ee(g,32),qe(f,yr))}
function Ei(a,b,c){var d,e,f,g,i,j,k,n,o,q,r,s,t,u;r=b.length;k=r;if(b.charCodeAt(0)==45){o=-1;q=1;--r}else{o=1;q=0}g=(Em(),Dm)[c];f=~~(r/g);u=r%g;u!=0&&++f;j=lc(Od,{6:1},-1,f,1);d=Cm[c-2];i=0;s=q+(u==0?g:u);for(t=q;t<k;t=s,s=s+g){e=af(b.substr(t,s-t),c);n=(go(),ko(j,j,i,d));n+=on(j,i,e);j[i++]=n}a.f=o;a.e=i;a.b=j;Sh(a)}
function te(a){var b,c,d,e,f;if(isNaN(a)){return Qe(),Pe}if(a<-9223372036854775808){return Qe(),Ne}if(a>=9223372036854775807){return Qe(),Me}e=false;if(a<0){e=true;a=-a}d=0;if(a>=17592186044416){d=Bc(a/17592186044416);a-=d*17592186044416}c=0;if(a>=4194304){c=Bc(a/4194304);a-=c*4194304}b=Bc(a);f=de(b,c,d);e&&je(f);return f}
function Ke(a){var b,c,d,e,f;if(a.l==0&&a.m==0&&a.h==0){return Tr}if(a.h==524288&&a.m==0&&a.l==0){return '-9223372036854775808'}if(~~a.h>>19!=0){return Ur+Ke(Be(a))}c=a;d=Lr;while(!(c.l==0&&c.m==0&&c.h==0)){e=ue(1000000000);c=ee(c,e,true);b=Lr+Je(ae);if(!(c.l==0&&c.m==0&&c.h==0)){f=9-b.length;for(;f>0;--f){b=Tr+b}}d=b+d}return d}
function Uh(a,b){var c,d,e,f,g,i,j,k,n,o,q,r,s;f=b.f;if(f==0){throw new nk(ss)}e=b.e;d=b.b;if(e==1){return Lm(a,d[0],f)}q=a.b;r=a.e;c=r!=e?r>e?1:-1:jn(q,d,r);if(c<0){return mc(Xd,{6:1},17,[Nh,a])}s=a.f;i=r-e+1;j=s==f?1:-1;g=lc(Od,{6:1},-1,i,1);k=Km(g,i,q,r,d,e);n=new si(j,i,g);o=new si(s,e,k);Sh(n);Sh(o);return mc(Xd,{6:1},17,[n,o])}
function Zf(a){var b;if(a.f==0||a.b==0&&a.g!=-1){return !a.d&&(a.d=Li(a.g)),a.d}else if(a.f<0){return ei((!a.d&&(a.d=Li(a.g)),a.d),po(-a.f))}else{if(a.f>(a.e>0?a.e:el((a.b-1)*0.3010299956639812)+1)||a.f>(!a.d&&(a.d=Li(a.g)),a.d).bb()){throw new nk(cs)}b=Uh((!a.d&&(a.d=Li(a.g)),a.d),po(a.f));if(b[1].r()!=0){throw new nk(cs)}return b[0]}}
function qn(a,b,c,d,e){var f,g;f=ur;if(c<e){for(g=0;g<c;++g){f=pe(f,He(qe(ue(d[g]),yr),qe(ue(b[g]),yr)));a[g]=Je(f);f=Fe(f,32)}for(;g<e;++g){f=pe(f,qe(ue(d[g]),yr));a[g]=Je(f);f=Fe(f,32)}}else{for(g=0;g<e;++g){f=pe(f,He(qe(ue(d[g]),yr),qe(ue(b[g]),yr)));a[g]=Je(f);f=Fe(f,32)}for(;g<c;++g){f=He(f,qe(ue(b[g]),yr));a[g]=Je(f);f=Fe(f,32)}}}
function Lm(a,b,c){var d,e,f,g,i,j,k,n,o,q,r,s;q=a.b;r=a.e;s=a.f;if(r==1){d=qe(ue(q[0]),yr);e=qe(ue(b),yr);f=ee(d,e,false);j=ze(d,e);s!=c&&(f=Be(f));s<0&&(j=Be(j));return mc(Xd,{6:1},17,[Ki(f),Ki(j)])}i=s==c?1:-1;g=lc(Od,{6:1},-1,r,1);k=mc(Od,{6:1},-1,[Mm(g,q,r,b)]);n=new si(i,r,g);o=new si(s,1,k);Sh(n);Sh(o);return mc(Xd,{6:1},17,[n,o])}
function Zm(a,b,c){var d,e,f,g,i,j,k;i=b.b;j=b.e;k=ur;for(d=0;d<j;++d){e=ur;g=Je((go(),Ae(qe(ue(a[d]),yr),qe(ue(c),yr))));for(f=0;f<j;++f){e=pe(pe(Ae(qe(ue(g),yr),qe(ue(i[f]),yr)),qe(ue(a[d+f]),yr)),qe(ue(Je(e)),yr));a[d+f]=Je(e);e=Ge(e,32)}k=pe(k,pe(qe(ue(a[d+j]),yr),e));a[d+j]=Je(k);k=Ge(k,32)}a[j<<1]=Je(k);for(f=0;f<j+1;++f){a[f]=a[f+j]}}
function af(a,b){var c,d,e,f;if(a==null){throw new pl(Mr)}if(b<2||b>36){throw new pl('radix '+b+' out of range')}d=a.length;e=d>0&&a.charCodeAt(0)==45?1:0;for(c=e;c<d;++c){if(tk(a.charCodeAt(c),b)==-1){throw new pl(Zr+a+$r)}}f=parseInt(a,b);if(isNaN(f)){throw new pl(Zr+a+$r)}else if(f<-2147483648||f>2147483647){throw new pl(Zr+a+$r)}return f}
function En(a){var b,c;if(a.f==0){return Oh(),Ih}if(Vh(a,(Oh(),Ih))){return Nh}c=lc(Od,{6:1},-1,a.e+1,1);if(a.f>0){if(a.b[a.e-1]!=-1){for(b=0;a.b[b]==-1;++b){}}else{for(b=0;b<a.e&&a.b[b]==-1;++b){}if(b==a.e){c[b]=1;return new si(-a.f,b+1,c)}}}else{for(b=0;a.b[b]==0;++b){c[b]=-1}}c[b]=a.b[b]+a.f;for(++b;b<a.e;++b){c[b]=a.b[b]}return new si(-a.f,b,c)}
function Bg(a,b,c){var d;d=0;switch(c.c){case 7:if(b!=0){throw new nk(cs)}break;case 0:d=b==0?0:b<0?-1:1;break;case 2:d=(b==0?0:b<0?-1:1)>0?b==0?0:b<0?-1:1:0;break;case 3:d=(b==0?0:b<0?-1:1)<0?b==0?0:b<0?-1:1:0;break;case 4:(b<0?-b:b)>=5&&(d=b==0?0:b<0?-1:1);break;case 5:(b<0?-b:b)>5&&(d=b==0?0:b<0?-1:1);break;case 6:(b<0?-b:b)+a>5&&(d=b==0?0:b<0?-1:1);}return d}
function Vf(a,b,c){var d,e,f,g,i,j;i=te(hf[c]);g=He(te(a.f),ue(c));j=te(a.g);f=ee(j,i,false);e=ze(j,i);if(Ce(e,ur)){d=se(He(Ee(xe(e,ur)?Be(e):e,1),i),ur)?0:xe(He(Ee(xe(e,ur)?Be(e):e,1),i),ur)?-1:1;f=pe(f,ue(Bg(Je(f)&1,(se(e,ur)?0:xe(e,ur)?-1:1)*(5+d),b.c)));if(fl(Ie(xe(f,ur)?Be(f):f))>=b.b){f=re(f,tr);g=He(g,sr)}}a.f=Dg(Ie(g));a.e=b.b;a.g=Ie(f);a.b=tg(f);a.d=null}
function tm(a,b){var c,d,e,f,g,i,j,k,n;k=a.f==0?1:a.f;g=~~b>>5;c=b&31;j=gl(g+1,a.e)+1;i=lc(Od,{6:1},-1,j,1);d=1<<c;nm(a.b,0,i,0,a.e);if(a.f<0){if(g>=a.e){i[g]=d}else{e=Zh(a);if(g>e){i[g]^=d}else if(g<e){i[g]=-d;for(f=g+1;f<e;++f){i[f]=-1}i[f]=i[f]--}else{f=g;i[g]=-(-i[g]^d);if(i[g]==0){for(++f;i[f]==-1;++f){i[f]=0}++i[f]}}}}else{i[g]^=d}n=new si(k,j,i);Sh(n);return n}
function wo(a,b){var c,d,e,f,g,i,j,k,n;g=rn(a,(Oh(),Jh));c=g.ab();f=g.bb();i=g.fb(f);j=new Vq;for(d=0;d<b;++d){if(d<to.length){k=so[d]}else{do{k=new ni(c,j)}while(Qh(k,a)>=0||k.f==0||k.e==1&&k.b[0]==1)}n=di(k,i,a);if(n.e==1&&n.b[0]==1||n.eQ(g)){continue}for(e=1;e<f;++e){if(n.eQ(g)){continue}n=bi(ei(n,n),a);if(n.e==1&&n.b[0]==1){return false}}if(!n.eQ(g)){return false}}return true}
function Mm(a,b,c,d){var e,f,g,i,j,k,n;k=ur;f=qe(ue(d),yr);for(i=c-1;i>=0;--i){n=De(Ee(k,32),qe(ue(b[i]),yr));if(we(n,ur)){j=ee(n,f,false);k=ze(n,f)}else{e=Ge(n,1);g=ue(~~d>>>1);j=ee(e,g,false);k=ze(e,g);k=pe(Ee(k,1),qe(n,sr));if((d&1)!=0){if(!ve(j,k)){k=He(k,j)}else{if(ye(He(j,k),f)){k=pe(k,He(f,j));j=He(j,sr)}else{k=pe(k,He(Ee(f,1),j));j=He(j,vr)}}}}a[i]=Je(qe(j,yr))}return Je(k)}
function he(a,b,c,d,e,f){var g,i,j,k,n,o,q;k=ke(b)-ke(a);g=Ee(b,k);j=de(0,0,0);while(k>=0){i=ne(a,g);if(i){k<22?(j.l|=1<<k,undefined):k<44?(j.m|=1<<k-22,undefined):(j.h|=1<<k-44,undefined);if(a.l==0&&a.m==0&&a.h==0){break}}o=g.m;q=g.h;n=g.l;g.h=~~q>>>1;g.m=~~o>>>1|(q&1)<<21;g.l=~~n>>>1|(o&1)<<21;--k}c&&je(j);if(f){if(d){ae=Be(a);e&&(ae=He(ae,(Qe(),Oe)))}else{ae=de(a.l,a.m,a.h)}}return j}
function dn(a,b,c,d,e){var f,g,i,j,k,n,o;k=lc(Xd,{6:1},17,8,0);n=a;nc(k,0,b);o=Ym(b,b,d,e);for(g=1;g<=7;++g){nc(k,g,Ym(k[g-1],o,d,e))}for(g=c.ab()-1;g>=0;--g){if((c.b[~~g>>5]&1<<(g&31))!=0){j=1;f=g;for(i=g-3>0?g-3:0;i<=g-1;++i){if((c.b[~~i>>5]&1<<(i&31))!=0){if(i<f){f=i;j=j<<g-i^1}else{j=j^1<<i-f}}}for(i=f;i<=g;++i){n=Ym(n,n,d,e)}n=Ym(k[~~(j-1)>>1],n,d,e);g=f}else{n=Ym(n,n,d,e)}}return n}
function Ln(a,b){var c,d,e,f,g,i,j;i=gl(a.e,b.e);g=lc(Od,{6:1},-1,i,1);e=Zh(a);d=Zh(b);c=d;if(e==d){g[d]=-a.b[d]^-b.b[d]}else{g[d]=-b.b[d];f=hl(b.e,e);for(++c;c<f;++c){g[c]=~b.b[c]}if(c==b.e){for(;c<e;++c){g[c]=-1}g[c]=a.b[c]-1}else{g[c]=-a.b[c]^~b.b[c]}}f=hl(a.e,b.e);for(++c;c<f;++c){g[c]=a.b[c]^b.b[c]}for(;c<a.e;++c){g[c]=a.b[c]}for(;c<b.e;++c){g[c]=b.b[c]}j=new si(1,i,g);Sh(j);return j}
function qo(a,b,c){var d,e,f,g;for(e=0;e<b;++e){d=ur;for(g=e+1;g<b;++g){d=pe(pe(Ae(qe(ue(a[e]),yr),qe(ue(a[g]),yr)),qe(ue(c[e+g]),yr)),qe(ue(Je(d)),yr));c[e+g]=Je(d);d=Ge(d,32)}c[e+b]=Je(d)}ym(c,c,b<<1);d=ur;for(e=0,f=0;e<b;++e,++f){d=pe(pe(Ae(qe(ue(a[e]),yr),qe(ue(a[e]),yr)),qe(ue(c[f]),yr)),qe(ue(Je(d)),yr));c[f]=Je(d);d=Ge(d,32);++f;d=pe(d,qe(ue(c[f]),yr));c[f]=Je(d);d=Ge(d,32)}return c}
function vf(a,b){var c,d,e,f,g,i;e=Uf(a);i=Uf(b);if(e==i){if(a.f==b.f&&a.b<54&&b.b<54){return a.g<b.g?-1:a.g>b.g?1:0}d=a.f-b.f;c=(a.e>0?a.e:el((a.b-1)*0.3010299956639812)+1)-(b.e>0?b.e:el((b.b-1)*0.3010299956639812)+1);if(c>d+1){return e}else if(c<d-1){return -e}else{f=(!a.d&&(a.d=Li(a.g)),a.d);g=(!b.d&&(b.d=Li(b.g)),b.d);d<0?(f=ei(f,po(-d))):d>0&&(g=ei(g,po(d)));return Qh(f,g)}}else return e<i?-1:1}
function If(a,b){var c,d,e,f,g,i,j;f=b.b;if((a.e>0?a.e:el((a.b-1)*0.3010299956639812)+1)-f<0||f==0){return}d=a.q()-f;if(d<=0){return}if(a.b<54){Vf(a,b,d);return}i=po(d);e=Uh((!a.d&&(a.d=Li(a.g)),a.d),i);g=a.f-d;if(e[1].r()!=0){c=Qh(ki(e[1]._()),i);c=Bg(e[0].gb(0)?1:0,e[1].r()*(5+c),b.c);c!=0&&nc(e,0,fn(e[0],Ki(ue(c))));j=new cg(e[0]);if(j.q()>f){nc(e,0,Th(e[0],(Oh(),Lh)));--g}}a.f=Dg(g);a.e=f;Tf(a,e[0])}
function Yf(a,b,c){var d,e,f,g;d=b.f-a.f;if(b.b==0&&b.g!=-1||a.b==0&&a.g!=-1||c.b==0){return Qf(Xf(a,b),c)}if((b.e>0?b.e:el((b.b-1)*0.3010299956639812)+1)<d-1){if(c.b<(a.e>0?a.e:el((a.b-1)*0.3010299956639812)+1)){g=Uf(a);if(g!=b.r()){f=fn(lo((!a.d&&(a.d=Li(a.g)),a.d),10),Ki(ue(g)))}else{f=rn((!a.d&&(a.d=Li(a.g)),a.d),Ki(ue(g)));f=fn(lo(f,10),Ki(ue(g*9)))}e=new og(f,a.f+1);return Qf(e,c)}}return Qf(Xf(a,b),c)}
function rn(a,b){var c,d,e,f,g,i,j,k,n,o;g=a.f;j=b.f;if(j==0){return a}if(g==0){return b.cb()}f=a.e;i=b.e;if(f+i==2){c=qe(ue(a.b[0]),yr);d=qe(ue(b.b[0]),yr);g<0&&(c=Be(c));j<0&&(d=Be(d));return Ki(He(c,d))}e=f!=i?f>i?1:-1:jn(a.b,b.b,f);if(e==-1){o=-j;n=g==j?sn(b.b,i,a.b,f):gn(b.b,i,a.b,f)}else{o=g;if(g==j){if(e==0){return Oh(),Nh}n=sn(a.b,f,b.b,i)}else{n=gn(a.b,f,b.b,i)}}k=new si(o,n.length,n);Sh(k);return k}
function zn(a,b){var c,d,e,f,g,i,j;e=Zh(a);d=Zh(b);if(e>=b.e){return Oh(),Nh}i=b.e;g=lc(Od,{6:1},-1,i,1);c=e;if(e<d){g[e]=-a.b[e];f=hl(a.e,d);for(++c;c<f;++c){g[c]=~a.b[c]}if(c==a.e){for(;c<d;++c){g[c]=-1}g[c]=b.b[c]-1}else{g[c]=~a.b[c]&b.b[c]-1}}else d<e?(g[e]=-a.b[e]&b.b[e]):(g[e]=-a.b[e]&b.b[e]-1);f=hl(a.e,b.e);for(++c;c<f;++c){g[c]=~a.b[c]&b.b[c]}for(;c<b.e;++c){g[c]=b.b[c]}j=new si(1,i,g);Sh(j);return j}
function Th(a,b){var c,d,e,f,g,i,j,k,n,o;if(b.f==0){throw new nk(ss)}e=b.f;if(b.e==1&&b.b[0]==1){return b.f>0?a:a.cb()}n=a.f;k=a.e;d=b.e;if(k+d==2){o=re(qe(ue(a.b[0]),yr),qe(ue(b.b[0]),yr));n!=e&&(o=Be(o));return Ki(o)}c=k!=d?k>d?1:-1:jn(a.b,b.b,k);if(c==0){return n==e?Jh:Ih}if(c==-1){return Nh}g=k-d+1;f=lc(Od,{6:1},-1,g,1);i=n==e?1:-1;d==1?Mm(f,a.b,k,b.b[0]):Km(f,g,a.b,k,b.b,d);j=new si(i,g,f);Sh(j);return j}
function hn(a,b,c,d,e){var f,g;f=pe(qe(ue(b[0]),yr),qe(ue(d[0]),yr));a[0]=Je(f);f=Fe(f,32);if(c>=e){for(g=1;g<e;++g){f=pe(f,pe(qe(ue(b[g]),yr),qe(ue(d[g]),yr)));a[g]=Je(f);f=Fe(f,32)}for(;g<c;++g){f=pe(f,qe(ue(b[g]),yr));a[g]=Je(f);f=Fe(f,32)}}else{for(g=1;g<c;++g){f=pe(f,pe(qe(ue(b[g]),yr),qe(ue(d[g]),yr)));a[g]=Je(f);f=Fe(f,32)}for(;g<e;++g){f=pe(f,qe(ue(d[g]),yr));a[g]=Je(f);f=Fe(f,32)}}Ce(f,ur)&&(a[g]=Je(f))}
function go(){go=rr;var a,b;bo=lc(Xd,{6:1},17,32,0);co=lc(Xd,{6:1},17,32,0);eo=mc(Od,{6:1},-1,[1,5,25,125,625,3125,15625,78125,390625,1953125,9765625,48828125,244140625,1220703125]);fo=mc(Od,{6:1},-1,[1,10,100,1000,10000,100000,1000000,10000000,100000000,1000000000]);a=sr;for(b=0;b<=18;++b){nc(bo,b,Ki(a));nc(co,b,Ki(Ee(a,b)));a=Ae(a,Hr)}for(;b<co.length;++b){nc(bo,b,ei(bo[b-1],bo[1]));nc(co,b,ei(co[b-1],(Oh(),Lh)))}}
function yf(a,b,c,d){var e,f,g;if(!d){throw new jl}if(b.b==0&&b.g!=-1){throw new nk(_r)}e=a.f-