aboutsummaryrefslogtreecommitdiff
path: root/third_party
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2012-03-19 14:35:16 -0700
committerAlon Zakai <alonzakai@gmail.com>2012-03-19 14:35:16 -0700
commit24abef18175eeaf3a8848201041dfd455fae0450 (patch)
tree9d0527fe0e111b1c5904f35ecb18cd955b833602 /third_party
parentea490e9c7f6f98b0df1de1e6259a86704d8d150d (diff)
update lzma.js
Diffstat (limited to 'third_party')
-rw-r--r--third_party/lzma.js/lzma-decoder.js4
1 files changed, 2 insertions, 2 deletions
diff --git a/third_party/lzma.js/lzma-decoder.js b/third_party/lzma.js/lzma-decoder.js
index 03d73282..c2c1f92c 100644
--- a/third_party/lzma.js/lzma-decoder.js
+++ b/third_party/lzma.js/lzma-decoder.js
@@ -11,9 +11,9 @@ var LZMA = {
};
-function a(b){throw b}var ba=void 0,j=null,ja=[],qa=typeof process==="object",sa=typeof window==="object",Aa=typeof importScripts==="function",Ha=!sa&&!qa&&!Aa;if(qa){print=(function(b){process.stdout.write(b+"\n")});printErr=(function(b){process.stderr.write(b+"\n")});var $a=require("fs");read=(function(b){var d=$a.readFileSync(b).toString();!d&&b[0]!="/"&&(b=__dirname.split("/").slice(0,-1).join("/")+"/src/"+b,d=$a.readFileSync(b).toString());return d});load=(function(b){ab(read(b))});ja=process.argv.slice(2)}else{Ha?(this.read||(this.read=(function(b){snarf(b)})),typeof scriptArgs!="undefined"?ja=scriptArgs:typeof arguments!="undefined"&&(ja=arguments)):sa?(this.print=printErr=(function(b){console.log(b)}),this.read=(function(b){var d=new XMLHttpRequest;d.open("GET",b,!1);d.send(j);return d.responseText}),this.arguments&&(ja=arguments)):Aa?this.load=importScripts:a("Unknown runtime environment. Where are we?")}function ab(b){eval.call(j,b)}typeof load=="undefined"&&typeof read!="undefined"&&(this.load=(function(b){ab(read(b))}));typeof printErr==="undefined"&&(this.printErr=(function(){}));typeof print==="undefined"&&(this.print=printErr);try{this.Module=Module}catch(bb){this.Module=Module={}}if(!Module.arguments){Module.arguments=ja}if(Module.print){print=Module.print}function qb(b){if(rb==1){return 1}var d={"%i1":1,"%i8":1,"%i16":2,"%i32":4,"%i64":8,"%float":4,"%double":8}["%"+b];d||(b[b.length-1]=="*"?d=rb:b[0]=="i"&&(b=parseInt(b.substr(1)),sb(b%8==0),d=b/8));return d}function Fb(b){var d=l;l+=b;l=l+3>>2<<2;return d}function Gb(b){var d=Ob;Ob+=b;Ob=Ob+3>>2<<2;if(Ob>=Pb){for(;Pb<=Ob;){Pb=2*Pb+4095>>12<<12}var b=m,c=new ArrayBuffer(Pb);m=new Int8Array(c);Qb=new Int16Array(c);o=new Int32Array(c);p=new Uint8Array(c);Rb=new Uint16Array(c);r=new Uint32Array(c);Sb=new Float32Array(c);Tb=new Float64Array(c);m.set(b)}return d}var rb=4,Wb={},Xb,s,Yb;function $b(b){print(b+":\n"+Error().stack);a("Assertion: "+b)}function sb(b,d){b||$b("Assertion failed: "+d)}var ac=this;Module.ccall=(function(b,d,c,e){try{var f=eval("_"+b)}catch(i){try{f=ac.Module["_"+b]}catch(h){}}sb(f,"Cannot call unknown function "+b+" (perhaps LLVM optimizations or closure removed it?)");var g=0,b=e?e.map((function(b){if(c[g++]=="string"){var d=l;Fb(b.length+1);bc(b,d);b=d}return b})):[];return(function(b,c){return c=="string"?cc(b):b})(f.apply(j,b),d)});function dc(b,d,c){c=c||"i8";c[c.length-1]==="*"&&(c="i32");switch(c){case"i1":m[b]=d;break;case"i8":m[b]=d;break;case"i16":Qb[b>>1]=d;break;case"i32":o[b>>2]=d;break;case"i64":o[b>>2]=d;break;case"float":Sb[b>>2]=d;break;case"double":ec[0]=d;o[b>>2]=fc[0];o[b+4>>2]=fc[1];break;default:$b("invalid type for setValue: "+c)}}Module.setValue=dc;Module.getValue=(function(b,d){d=d||"i8";d[d.length-1]==="*"&&(d="i32");switch(d){case"i1":return m[b];case"i8":return m[b];case"i16":return Qb[b>>1];case"i32":return o[b>>2];case"i64":return o[b>>2];case"float":return Sb[b>>2];case"double":return fc[0]=o[b>>2],fc[1]=o[b+4>>2],ec[0];default:$b("invalid type for setValue: "+d)}return j});var gc=1,A=2;Module.ALLOC_NORMAL=0;Module.ALLOC_STACK=gc;Module.ALLOC_STATIC=A;function C(b,d,c){var e,f;typeof b==="number"?(e=!0,f=b):(e=!1,f=b.length);var i=typeof d==="string"?d:j,c=[hc,Fb,Gb][c===ba?A:c](Math.max(f,i?1:d.length));if(e){return ic(c,f),c}e=0;for(var h;e<f;){var g=b[e];typeof g==="function"&&(g=Wb.Ua(g));h=i||d[e];h===0?e++:(h=="i64"&&(h="i32"),dc(c+e,g,h),e+=qb(h))}return c}Module.allocate=C;function cc(b,d){for(var c=typeof d=="undefined",e="",f=0,i,h=String.fromCharCode(0);;){i=String.fromCharCode(p[b+f]);if(c&&i==h){break}e+=i;f+=1;if(!c&&f==d){break}}return e}Module.Pointer_stringify=cc;Module.Array_stringify=(function(b){for(var d="",c=0;c<b.length;c++){d+=String.fromCharCode(b[c])}return d});var kc,lc=4096,m,p,Qb,Rb,o,r,Sb,Tb,l,mc,Ob,nc=Module.TOTAL_STACK||5242880,Pb=Module.TOTAL_MEMORY||10485760;sb(!!Int32Array&&!!Float64Array&&!!(new Int32Array(1)).subarray&&!!(new Int32Array(1)).set,"Cannot fallback to non-typed array case: Code is too specialized");var oc=new ArrayBuffer(Pb);m=new Int8Array(oc);Qb=new Int16Array(oc);o=new Int32Array(oc);p=new Uint8Array(oc);Rb=new Uint16Array(oc);r=new Uint32Array(oc);Sb=new Float32Array(oc);Tb=new Float64Array(oc);o[0]=255;sb(p[0]===255&&p[3]===0,"Typed arrays 2 must be run on a little-endian system");var qc=pc("(null)");Ob=qc.length;for(var rc=0;rc<qc.length;rc++){m[rc]=qc[rc]}Module.HEAP=ba;Module.HEAP8=m;Module.HEAP16=Qb;Module.HEAP32=o;Module.HEAPU8=p;Module.HEAPU16=Rb;Module.HEAPU32=r;Module.HEAPF32=Sb;Module.HEAPF64=Tb;mc=(l=Math.ceil(Ob/4)*4)+nc;var sc=Math.ceil(mc/8)*8;m.subarray(sc);var fc=o.subarray(sc>>2);Sb.subarray(sc>>2);var ec=Tb.subarray(sc>>3);mc=sc+8;Ob=mc+4095>>12<<12;function tc(b){for(;b.length>0;){var d=b.shift(),c=d.l;typeof c==="number"&&(c=kc[c]);c(d.Pa===ba?j:d.Pa)}}var uc=[],wc=[];function xc(b,d){return Array.prototype.slice.call(m.subarray(b,b+d))}Module.Array_copy=xc;Module.TypedArray_copy=(function(b,d){for(var c=new Uint8Array(d),e=0;e<d;++e){c[e]=m[b+e]}return c.buffer});function yc(b){for(var d=0;m[b+d];){d++}return d}Module.String_len=yc;function zc(b,d){var c=yc(b);d&&c++;var e=xc(b,c);d&&(e[c-1]=0);return e}Module.String_copy=zc;function pc(b,d){for(var c=[],e=0;e<b.length;){var f=b.charCodeAt(e);f>255&&(f&=255);c.push(f);e+=1}d||c.push(0);return c}Module.intArrayFromString=pc;Module.intArrayToString=(function(b){for(var d=[],c=0;c<b.length;c++){var e=b[c];e>255&&(e&=255);d.push(String.fromCharCode(e))}return d.join("")});function bc(b,d,c){for(var e=0;e<b.length;){var f=b.charCodeAt(e);f>255&&(f&=255);m[d+e]=f;e+=1}c||(m[d+e]=0)}Module.writeStringToMemory=bc;var E=[];function Ac(b,d){return b>=0?b:d<=32?2*Math.abs(1<<d-1)+b:Math.pow(2,d)+b}function Bc(b,d){if(b<=0){return b}var c=d<=32?Math.abs(1<<d-1):Math.pow(2,d-1);if(b>=c&&(d<=32||b>c)){b=-2*c+b}return b}function Cc(b,d,c){var e=(c|0)<0?-1:0,f=(c>>>0)+(e|0)*4294967296+(b>>>0)+(d|0)*4294967296>>>0,b=Math.min(Math.floor(((c>>>0)+(e|0)*4294967296+(b>>>0)+(d|0)*4294967296)/4294967296),4294967295);return[f,b]}function Dc(b,d,c){var e=(c|0)<0?-1:0,f=(c>>>0)+(e|0)*4294967296+(b>>>0)+(d|0)*4294967296>>>0,b=Math.min(Math.floor(((c>>>0)+(e|0)*4294967296+(b>>>0)+(d|0)*4294967296)/4294967296),4294967295);return[f,b]}function Ec(b){var d=m[b+11|0],c=m[b+10|0]|d<<8|0,e=m[b+9|0]|c<<8|0,f=m[b+8|0]|e<<8|0,i=m[b+7|0]|f<<8|0,h=m[b+6|0]|i<<8|0,g=m[b+5|0]|h<<8|0;return[m[b+4|0]|g<<8|0,0|((((((0|d>>>24)<<8|c>>>24)<<8|e>>>24)<<8|f>>>24)<<8|i>>>24)<<8|h>>>24)<<8|g>>>24]}Ec.X=1;function Fc(b){var d=m[b+19|0],c=m[b+18|0]|d<<8|0,e=m[b+17|0]|c<<8|0,f=m[b+16|0]|e<<8|0,i=m[b+15|0]|f<<8|0,h=m[b+14|0]|i<<8|0,g=m[b+13|0]|h<<8|0;return[m[b+12|0]|g<<8|0,0|((((((0|d>>>24)<<8|c>>>24)<<8|e>>>24)<<8|f>>>24)<<8|i>>>24)<<8|h>>>24)<<8|g>>>24]}Fc.X=1;function Gc(b){var d,c;c=(b+20|0)>>2;d=(b+24|0)>>2;var e=o[d],f=o[c]-e|0;if((f|0)>0){var i=b+16|0,h=b+28|0,e=o[i>>2]+e|0,g=(f|0)>0;a:do{if(g){for(var k=0,n=o[h>>2];;){if(n=o[Hc+((p[e+k|0]&255^n&255)<<2)>>2]^n>>>8,o[h>>2]=n,k=k+1|0,(k|0)==(f|0)){break a}}}}while(0);h=o[b+32>>2];if(e=(h|0)>-1){i=o[i>>2]+o[d]|0;o[Ic>>2]=0;e=f;a:for(;;){g=i+(f-e)|0;if((e|0)<=0){var y=0;break}for(;;){o[Ic>>2]=0;var x=Jc(h,g,e);if((x|0)>0){break}if((o[Ic>>2]|0)!=0&&(o[Ic>>2]|0)!=4&&(o[Ic>>2]|0)!=11){y=e;break a}}e=e-x|0}e=(f-y|0)!=(f|0)}e&&Kc(-1);f=o[c];(f|0)<(o[b+12>>2]|0)?c=f:(y=(f|0)<0?-1:0,b=(b|0)>>2,i=o[b],h=o[b+1],x=(i>>>0)+(h|0)*4294967296+(f>>>0)+(y|0)*4294967296>>>0,f=Math.min(Math.floor(((i>>>0)+(h|0)*4294967296+(f>>>0)+(y|0)*4294967296)/4294967296),4294967295),o[b]=x,o[b+1]=f,c=o[c]=0);o[d]=c}}function Lc(b){var d,c=l;l+=20;var e=b+36|0,f=(o[e>>2]|0)>0?20:12;d=(b+40|0)>>2;for(var i=o[d],h=i|0,i=Cc(o[h>>2],o[h+4>>2],o[i+12>>2]),h=i[0],g=i[1],k=(f|0)<0?-1:0,i=(h>>>0)+(g|0)*4294967296+(f>>>0)+(k|0)*4294967296>>>0,h=Math.min(Math.floor(((h>>>0)+(g|0)*4294967296+(f>>>0)+(k|0)*4294967296)/4294967296),4294967295),k=g=0;;){if((g|0)>=(f|0)){break}if((k&1)<<24>>24!=0){break}if(Mc(o[d])){ic(c+g|0,f-g|0),g=f,k=1}else{var n=Nc(o[d]);m[c+g|0]=n}g=g+1|0}(o[e>>2]|0)==0&&(m[c+12|0]=i&255,m[c+13|0]=(i>>>8|h<<24)&255,m[c+14|0]=(i>>>16|h<<16)&255,m[c+15|0]=(i>>>24|h<<8)&255,m[c+16|0]=h&255,m[c+17|0]=(h>>>8|0)&255,m[c+18|0]=(h>>>16|0)&255,m[c+19|0]=(h>>>24|0)&255);(o[o[d]+20>>2]|0)==0?d=k:(Oc(E.G|0),d=1);e=(p[c|0]&255|(p[c+1|0]&255|(p[c+2|0]&255|(p[c+3|0]&255)<<8)<<8)<<8|0)==(o[b+28>>2]^-1|0);g=Ec(c);f=g[0];g=g[1];k=b|0;b=Dc(o[k>>2],o[k+4>>2],o[b+20>>2]);k=Fc(c);b=(k[0]==i&&k[1]==h)&(f==b[0]&&g==b[1])&e&(d&1)<<24>>24==0;l=c;return b}Lc.X=1;function Mc(b){if((o[b+12>>2]|0)<(o[b+16>>2]|0)){b=0}else{var d=b+32|0;if((m[d]&1)<<24>>24==0){var c;c=o[b+28>>2];var e=o[b+8>>2];o[Ic>>2]=0;var f=16384;a:for(;;){var i=e+(16384-f)|0;if((f|0)<=0){var h=0;break}for(;;){o[Ic>>2]=0;var g=Pc(c,i,f);if((g|0)>0){break}if((g|0)==0){h=f;break a}if((o[Ic>>2]|0)!=4&&(o[Ic>>2]|0)!=11){h=f;break a}}f=f-g|0}c=16384-h|0;e=b+16|0;o[e>>2]=c;(c|0)!=16384&&(o[Ic>>2]|0)!=0&&Kc(-1);c=r[e>>2];m[d]=(c|0)<16384&1;d=b+12|0;e=o[d>>2];f=(e|0)<0?-1:0;b=(b|0)>>2;h=o[b];g=o[b+1];i=(h>>>0)+(g|0)*4294967296+(e>>>0)+(f|0)*4294967296>>>0;e=Math.min(Math.floor(((h>>>0)+(g|0)*4294967296+(e>>>0)+(f|0)*4294967296)/4294967296),4294967295);o[b]=i;o[b+1]=e;d=o[d>>2]=0;b=c}else{d=o[b+12>>2],b=o[b+16>>2]}b=(d|0)<(b|0)^1}return b}function Nc(b){if(Mc(b)){b=85}else{var d=b+12|0,c=o[d>>2];o[d>>2]=c+1|0;b=m[o[b+8>>2]+c|0]}return b}function Qc(b){var d,c=l;l+=29280;for(var e,f=c+192,i=c+240,h=c+288,g=c+336,k=c+384,n=c+576,y=c+1600,x=c+2060,w=c+2124,v=c+3412,B=c+4700,u=c+29276,t=c+192|0,z=c|0;;){F(z);var q=z+4|0;if((q|0)==(t|0)){break}z=q}F(f|0);F(f+4|0);F(f+8|0);F(f+12|0);F(f+16|0);F(f+20|0);F(f+24|0);F(f+28|0);F(f+32|0);F(f+36|0);F(f+40|0);F(f+44|0);F(i|0);F(i+4|0);F(i+8|0);F(i+12|0);F(i+16|0);F(i+20|0);F(i+24|0);F(i+28|0);F(i+32|0);F(i+36|0);F(i+40|0);F(i+44|0);F(h|0);F(h+4|0);F(h+8|0);F(h+12|0);F(h+16|0);F(h+20|0);F(h+24|0);F(h+28|0);F(h+32|0);F(h+36|0);F(h+40|0);F(h+44|0);F(g|0);F(g+4|0);F(g+8|0);F(g+12|0);F(g+16|0);F(g+20|0);F(g+24|0);F(g+28|0);F(g+32|0);F(g+36|0);F(g+40|0);F(g+44|0);for(var D=k+192|0,H=k|0;;){F(H);var L=H+4|0;if((L|0)==(D|0)){break}H=L}for(var R=n+1024|0,P=n|0;;){F(P);var I=P+4|0;if((I|0)==(R|0)){break}P=I}for(var G=y+460|0,O=y|0;;){F(O);var ca=O+4|0;if((ca|0)==(G|0)){break}O=ca}var da=x|0;F(da);F(x+4|0);F(x+8|0);F(x+12|0);F(x+16|0);F(x+20|0);F(x+24|0);F(x+28|0);F(x+32|0);F(x+36|0);F(x+40|0);F(x+44|0);F(x+48|0);F(x+52|0);F(x+56|0);F(x+60|0);Rc(w);Rc(v);for(var tb=B+24576|0,cb=B|0;;){F(cb);var Ia=cb+4|0;if((Ia|0)==(tb|0)){break}cb=Ia}m[u|0]=0;d=(b+40|0)>>2;Sc(o[d]);var Ba=b+8|0,Ja=b+20|0,db=b|0,ub=u|0,Z=0,ka=0,fa=0,S=0;a:for(;;){b:for(;;){if(Mc(o[d])){Gc(b);var la=2;break a}var ma=db|0,eb=db+4|0,Ka=Dc(o[ma>>2],o[eb>>2],o[Ja>>2])[0]&3,vb=p[ub],ra=vb&255;if((Tc(o[d],(ra<<4)+(Ka<<2)+c|0)|0)==0){var La,Hb=o[b+20>>2];La=m[o[b+16>>2]+(((Hb|0)>0?Hb:o[b+12>>2])-1)|0];var U=o[d];if((vb&255)<7){var $=Uc(U,B+((La&255)>>5)*3072|0,8)&255;Vc(b,$)}else{for(var ta=o[b+20>>2]-Z-1|0,Ca=U,Ma=B+((La&255)>>5)*3072|0,fb=m[o[b+16>>2]+((ta|0)<0?o[b+12>>2]+ta|0:ta)|0]&255,gb=ba,X=7,hb=1;;){if((X|0)<=-1){var Na=hb,gb=7;break}var Oa=fb>>>(X>>>0)&1,Pa=Tc(Ca,((Oa<<8)+hb+256<<2)+Ma|0),ib=Pa|hb<<1;if((Oa|0)!=(Pa|0)){gb=4;break}X=X-1|0;hb=ib}c:do{if(gb==4){if((X|0)>0){for(var ua=ib,va=X;;){var Qa=va-1|0,wb=ua<<1,jb=Tc(Ca,(ua<<2)+Ma|0)|wb;if((Qa|0)<=0){Na=jb;break c}ua=jb;va=Qa}}else{Na=ib}}}while(0);Vc(b,Na&255)}var ga=u|0;m[ga]=m[E.D+(p[ga]&255)|0]}else{var Da=Tc(o[d],(ra<<2)+f|0),Ub=r[d];if((Da|0)==1){var Ib=(Tc(Ub,(ra<<2)+i|0)|0)==1,xb=o[d];do{if(!Ib){if((Tc(xb,(ra<<4)+(Ka<<2)+k|0)|0)!=0){var kb=Z,lb=ka,J=fa,ea=S;break}var aa=u|0;m[aa]=m[E.B+(p[aa]&255)|0];var Ea=Z,Ra=ka,Sa=fa,Ta=S,wa=1;e=37;break b}if((Tc(xb,(ra<<2)+h|0)|0)==0){kb=ka,lb=Z,J=fa,ea=S}else{var Jb=(Tc(o[d],(ra<<2)+g|0)|0)==0,Kb=Jb?S:fa,kb=Jb?fa:S,lb=Z,J=ka,ea=Kb}}while(0);var Lb=u|0;m[Lb]=m[E.C+(p[Lb]&255)|0];var Vb=Wc(v,o[d],Ka),Ea=kb,Ra=lb,Sa=J,Ta=ea,wa=Vb+2|0;e=37;break}var Ua=Wc(w,Ub,Ka),ha=Ua+2|0,Y=ha-2|0,xa=Uc(o[d],(((Y|0)>3?3:Y)<<8)+n|0,6);if((xa|0)<4){var ya=xa;e=33;break}var mb=xa>>1,yb=mb-1|0,Va=(xa&1|2)<<yb,zb=o[d];if((xa|0)<14){ya=Xc(zb,(Va-xa<<2)+y|0,yb)+Va|0;e=33;break}var Wa=zb,Ab=mb-5|0,ia=ba,za=ba,V=(Ab|0)>0;c:do{if(V){for(var za=(Wa+24|0)>>2,ia=(Wa+20|0)>>2,nb=0,na=Ab,Xa=o[za];;){var Ya=nb<<1;if(Xa>>>0<16777216){o[za]=Xa<<7;var Mb=o[ia]<<8,ob=Nc(Wa)&255|Mb;o[ia]=ob;var Fa=r[za];if(ob>>>0<Fa>>>0){var Ga=Ya,Za=Fa}else{o[ia]=ob-Fa|0,Ga=Ya|1,Za=Fa}}else{var Bb=Xa>>>1;o[za]=Bb;var Cb=r[ia];Cb>>>0<Bb>>>0?Ga=Ya:(o[ia]=Cb-Bb|0,Ga=Ya|1);Za=Bb}var oa=na-1|0;if((oa|0)<=0){var Db=Ga;break c}nb=Ga;na=oa;Xa=Za}}else{Db=0}}while(0);var pa=Db<<4,Nb=Xc(o[d],da,4),Eb=pa+Va+Nb|0;if((Eb|0)!=-1){ya=Eb;e=33;break}Yc(o[d]);Gc(b);if((Ua|0)==0){la=Lc(b)?0:3;break a}if((ha|0)!=3){la=4;break a}Sc(o[d])}}do{if(e==33){var pb=u|0;m[pb]=m[E.F+(p[pb]&255)|0];if(ya>>>0<r[Ba>>2]>>>0){if(ya>>>0<r[Ja>>2]>>>0){Ea=ya;Ra=Z;Sa=ka;Ta=fa;wa=ha;break}ma=db|0;eb=db+4|0;if(!(o[ma>>2]==0&&o[eb>>2]==0)){Ea=ya;Ra=Z;Sa=ka;Ta=fa;wa=ha;break}}Gc(b);la=1;break a}}while(0);Zc(b,Ea,wa);Z=Ea;ka=Ra;fa=Sa;S=Ta}l=c;return la}Qc.X=1;function Sc(b){var d;d=(b+20|0)>>2;o[d]=0;o[b+24>>2]=-1;var c=Nc(b)&255;o[d]=c;c=Nc(b)&255|c<<8;o[d]=c;c=Nc(b)&255|c<<8;o[d]=c;c=Nc(b)&255|c<<8;o[d]=c;c<<=8;b=Nc(b);o[d]=b&255|c}function F(b){o[b>>2]=1024}function Tc(b,d){var c,e;Yc(b);e=(b+24|0)>>2;var f=r[e];c=(d|0)>>2;var i=(f>>>11)*o[c]|0,h=b+20|0,g=r[h>>2];g>>>0<i>>>0?(o[e]=i,f=r[c],e=0,f=((2048-f|0)>>>5)+f|0):(o[e]=f-i|0,o[h>>2]=g-i|0,f=r[c],e=1,f=f-(f>>>5)|0);o[c]=f;return e}function Vc(b,d){var c;c=(b+20|0)>>2;m[o[b+16>>2]+o[c]|0]=d;var e=o[c]+1|0;o[c]=e;(e|0)<(o[b+12>>2]|0)||Gc(b)}function Wc(b,d,c){return(Tc(d,b|0)|0)==0?Uc(d,(c<<5)+b+8|0,3):(Tc(d,b+4|0)|0)==0?Uc(d,(c<<5)+b+136|0,3)+8|0:Uc(d,b+264|0,8)+16|0}function Uc(b,d,c){var e=(c|0)>0;a:do{if(e){for(var f=1,i=c;;){var h=f<<1,f=Tc(b,(f<<2)+d|0)|h,i=i-1|0;if((i|0)<=0){var g=f;break a}}}else{g=1}}while(0);return g-(1<<c)|0}function Xc(b,d,c){var e=(c|0)>0;a:do{if(e){for(var f=1,i=0,h=0;;){var g=Tc(b,(f<<2)+d|0);f<<=1;(g|0)!=0&&(i|=1<<h,f|=1);h=h+1|0;if((h|0)==(c|0)){var k=i;break a}}}else{k=0}}while(0);return k}function Yc(b){var d=b+24|0,c=r[d>>2];c>>>0<16777216&&(o[d>>2]=c<<8,d=b+20|0,c=o[d>>2]<<8,b=Nc(b)&255|c,o[d>>2]=b)}function Zc(b,d,c){var e,f;e=(b+20|0)>>2;var i=o[e],h=i-d-1|0,d=(b+12|0)>>2;f=o[d];h=h+((h|0)<0?f:0)|0;if((f-((i|0)>(h|0)?i:h)|0)>(c|0)){if(f=i-h|0,(((f|0)>-1?f:-f|0)|0)<(c|0)){f=3}else{f=o[b+16>>2];var g=f+i|0,k=f+h|0;f=c;if(f>=20&&k%2==g%2){if(k%4==g%4){for(f=k+f;k%4;){m[g++]=m[k++]}k>>=2;g>>=2;for(var n=f>>2;k<n;){o[g++]=o[k++]}k<<=2;for(g<<=2;k<f;){m[g++]=m[k++]}}else{f=k+f;k%2&&(m[g++]=m[k++]);k>>=1;g>>=1;for(n=f>>1;k<n;){Qb[g++]=Qb[k++]}k<<=1;g<<=1;k<f&&(m[g++]=m[k++])}}else{for(;f--;){m[g++]=m[k++]}}o[e]=o[e]+c|0;f=10}}else{f=3}a:do{if(f==3&&(c|0)>0){for(var g=b+16|0,k=c,n=h,y=i;;){var x=o[g>>2];m[x+y|0]=m[x+n|0];y=o[e]+1|0;o[e]=y;x=o[d];(y|0)<(x|0)?y=x:(Gc(b),y=o[d]);n=n+1|0;k=k-1|0;if((k|0)<=0){break a}n=(n|0)<(y|0)?n:0;y=o[e]}}}while(0)}Zc.X=1;function Rc(b){F(b|0);F(b+4|0);F(b+8|0);F(b+12|0);F(b+16|0);F(b+20|0);F(b+24|0);F(b+28|0);F(b+32|0);F(b+36|0);F(b+40|0);F(b+44|0);F(b+48|0);F(b+52|0);F(b+56|0);F(b+60|0);F(b+64|0);F(b+68|0);F(b+72|0);F(b+76|0);F(b+80|0);F(b+84|0);F(b+88|0);F(b+92|0);F(b+96|0);F(b+100|0);F(b+104|0);F(b+108|0);F(b+112|0);F(b+116|0);F(b+120|0);F(b+124|0);F(b+128|0);F(b+132|0);F(b+136|0);F(b+140|0);F(b+144|0);F(b+148|0);F(b+152|0);F(b+156|0);F(b+160|0);F(b+164|0);F(b+168|0);F(b+172|0);F(b+176|0);F(b+180|0);F(b+184|0);F(b+188|0);F(b+192|0);F(b+196|0);F(b+200|0);F(b+204|0);F(b+208|0);F(b+212|0);F(b+216|0);F(b+220|0);F(b+224|0);F(b+228|0);F(b+232|0);F(b+236|0);F(b+240|0);F(b+244|0);F(b+248|0);F(b+252|0);F(b+256|0);F(b+260|0);for(var d=b+1288|0,b=b+264|0;;){if(F(b),b=b+4|0,(b|0)==(d|0)){break}}}Rc.X=1;function Oc(b){(b|0)!=0&&Jc(o[o[$c>>2]+12>>2],b,yc(b))}function ad(b,d,c){if((o[bd>>2]|0)>-1){if((b|0)!=0&&m[b]<<24>>24!=0){cd(o[o[$c>>2]+12>>2],E.H|0,(s=l,l+=8,o[s>>2]=E.i|0,o[s+4>>2]=b,s));if((d|0)>0){var b=o[o[$c>>2]+12>>2],e;dd||(dd=hc(256));e=dd;if(d in ed){if(ed[d].length>255){K(fd)}else{for(var d=ed[d],f=0;f<d.length;f++){m[e+f]=d.charCodeAt(f)}m[e+f]=0}}else{K(gd)}e=dd;cd(b,E.K|0,(s=l,l+=4,o[s>>2]=e,s))}hd(10,o[o[$c>>2]+12>>2])}b=o[id>>2];(b|0)!=0&c&&m[b]<<24>>24!=0&&cd(o[o[$c>>2]+12>>2],E.aa|0,(s=l,l+=4,o[s>>2]=b,s))}}function jd(b,d){o[id>>2]=o[d>>2];var c=1,e=0;a:for(;;){if((c|0)>=(b|0)){(c=(e|0)==2)&&(m[kd]=0);m[kd]=1;var f=ba;if((e|0)==0&p[kd]){if((ld(2)|0)==0){f=4}else{ad(E.Y|0,0,1);var i=0,f=7}}else{f=4}f==4&&((e-1|0)>>>0<2?(ld(1)|0)==0?i=1:(ad(E.Z|0,0,1),i=0):i=1);if(!i){f=1;break}i=md(c);i=(i|0)>0?i:0;if(!p[kd]){f=i;break}M[2]?(M[2].Ra&&nd(M[2].Ra),delete M[2],e=0):(K(od),e=-1);if((e|0)==0){f=i;break}ad(E.ka|0,o[Ic>>2],0);if((i|0)>=1){f=i;break}f=1;break}var h=m[o[d+(c<<2)>>2]+1|0]<<24>>24;do{if((h|0)==99||(h|0)==107){var g=e}else{if((h|0)==100){g=1}else{if((h|0)==104){i=l;pd(E.fa|0,(s=l,l+=4,o[s>>2]=E.p|0,s));N(E.na|0);e=o[id>>2];pd(E.ga|0,(s=l,l+=4,o[s>>2]=e,s));N(E.oa|0);N(E.za|0);N(E.Ia|0);N(E.Ja|0);N(E.Ka|0);N(E.La|0);N(E.Ma|0);N(E.Na|0);N(E.Oa|0);N(E.pa|0);N(E.qa|0);N(E.ra|0);N(E.sa|0);N(E.ta|0);N(E.ua|0);N(E.va|0);N(E.wa|0);N(E.xa|0);N(E.ya|0);pd(E.ja|0,(s=l,l+=4,o[s>>2]=E.i|0,s));N(E.Aa|0);N(E.Ba|0);N(E.Ca|0);N(E.Da|0);N(E.Ea|0);l=i;f=0;break a}else{if((h|0)==113){o[bd>>2]=-1,g=e}else{if((h|0)==118){g=o[bd>>2],(g|0)<4&&(o[bd>>2]=g+1|0),g=e}else{if((h|0)==86){i=l;pd(E.$|0,(s=l,l+=8,o[s>>2]=E.p|0,o[s+4>>2]=E.ba|0,s));pd(E.ca|0,(s=l,l+=4,o[s>>2]=E.da|0,s));N(E.Fa|0);N(E.Ga|0);N(E.Ha|0);l=i;f=0;break a}else{(o[bd>>2]|0)>-1&&cd(o[o[$c>>2]+12>>2],E.ha|0,(s=l,l+=8,o[s>>2]=E.i|0,o[s+4>>2]=E.ia|0,s)),Kc(3),g=e}}}}}}}while(0);c=c+1|0;e=g}return f}Module._main=jd;jd.X=1;function qd(b){b&=255;var d=1<<(b&31);return(d-4097|0)>>>0<536866816?d-d/16*(b>>>5)|0:d}function md(b){var d=l;l+=88;var c,e=d+36,f=d+44,i=d>>2,h=d|0;o[h>>2]=0;o[h+4>>2]=0;var h=d+8|0,g=rd(16384);o[h>>2]=g;o[i+3]=0;o[i+4]=0;o[i+5]=0;o[i+6]=-1;o[i+7]=1;m[d+32|0]=0;for(var h=e+4|0,g=e+5|0,k=d|0,n=d+12|0,i=f+16|0,y=0,x=0,w=1;;){c=-o[d+12>>2]|0;var v=(c|0)<0?-1:0,B=d|0;o[B>>2]=c;o[B+4>>2]=v;for(c=0;;){if((c|0)>=6){break}if(Mc(d)){break}v=Nc(d);m[e+c|0]=v;c=c+1|0}if(Mc(d)){if(!w){c=41;break}Oc(E.la|0);var u=1;c=45;break}a:{c=E.z|0;for(v=0;v<4;v++){var B=m[(e|0)+v],t=m[c+v];if(B!=t){c=B>t?1:-1;break a}}c=0}if((c|0)!=0){if(!w){c=41;break}Oc(E.ma|0);u=2;c=45;break}v=p[h];if((v&255)>=2){if((o[bd>>2]|0)<=-1){u=2;c=45;break}Oc(0);u=v&255;cd(o[o[$c>>2]+12>>2],E.I|0,(s=l,l+=4,o[s>>2]=u,s));u=2;c=45;break}t=qd(m[g]);if((t-4096|0)>>>0>536866816){Oc(E.J|0);u=2;c=45;break}c=o[bd>>2];c=(c|0)>1?25:(c|0)!=1|w^1?27:25;if(c==25&&(Oc(0),(o[bd>>2]|0)>1)){for(var w=o[o[$c>>2]+12>>2],B=(t|0)<0?-1:0,z=sd|0,q=0;;){if((q|0)>=8){break}var D=(B|0)>-1||(B|0)==-1&&t>>>0>4294967295,H=0-((t>>>0)+(B|0)*4294967296)>>>0,L=Math.min(Math.floor((0-((t>>>0)+(B|0)*4294967296))/4294967296),4294967295),H=D?t:H,D=D?B:L;if(!((D|0)>0||(D|0)==0&&H>>>0>9999)){if(!(((D|0)>0||(D|0)==0&&H>>>0>1023)&((t&1023)==0&&(B&0)==0))){break}}z=(Yb=((t>>>0)+(B|0)*4294967296)/1024,Yb>=0?Math.floor(Yb):Math.ceil(Yb))>>>0;B=Math.min(Math.floor((Yb=((t>>>0)+(B|0)*4294967296)/1024,Yb>=0?Math.floor(Yb):Math.ceil(Yb))/4294967296),4294967295);t=z;z=o[td+(q<<2)>>2];q=q+1|0}q=ud|0;B=(s=l,l+=12,o[s>>2]=t,o[s+4>>2]=B,o[s+8>>2]=z,s);B=vd(E.W|0,B);t=Math.min(B.length,15);for(z=0;z<t;z++){m[q+z]=B[z]}m[q+z]=0;v&=255;cd(w,E.L|0,(s=l,l+=8,o[s>>2]=v,o[s+4>>2]=ud|0,s))}w=f;v=e;B=d;t=p[kd]?2:-1;z=w>>2;q=w|0;o[q>>2]=0;o[q+4>>2]=0;D=qd(m[v+5|0]);o[(w+8|0)>>2]=D;q=w+12|0;L=(D|0)<65536?65536:D;o[q>>2]=L;D=w+16|0;L=rd((L|0)>-1?L:-1);o[D>>2]=L;o[z+5]=0;o[z+6]=0;o[z+7]=-1;o[z+8]=t;o[(w+36|0)>>2]=m[v+4|0]&255;o[z+10]=B;m[L+(o[q>>2]-1)|0]=0;v=Qc(f);w=Cc(o[k>>2],o[k+4>>2],o[n>>2]);B=w[0];t=w[1];w=(B>>>0)+(t|0)*4294967296+(x>>>0)+(y|0)*4294967296>>>0;y=Math.min(Math.floor(((B>>>0)+(t|0)*4294967296+(x>>>0)+(y|0)*4294967296)/4294967296),4294967295);x=r[bd>>2];if((v|0)!=0){(x|0)>-1&(v|0)<3&&(Oc(0),u=o[o[$c>>2]+12>>2],(v|0)==2?cd(u,E.M|0,(s=l,l+=8,o[s>>2]=w,o[s+4>>2]=y,s)):cd(u,E.N|0,(s=l,l+=8,o[s>>2]=w,o[s+4>>2]=y,s)));u=o[i>>2];(u|0)!=0&&wd(u);u=2;c=45;break}(x|0)>1&&(x=o[o[$c>>2]+12>>2],b?xd(E.n|0,3,1,x):xd(E.o|0,5,1,x));x=o[i>>2];(x|0)!=0&&wd(x);x=w;w=0}c==41&&((o[bd>>2]|0)==1&&(u=o[o[$c>>2]+12>>2],b?xd(E.n|0,3,1,u):xd(E.o|0,5,1,u)),u=0);b=o[d+8>>2];(b|0)!=0&&wd(b);l=d;return u}md.X=1;function hc(b){var d,c=b>>>0<245;do{if(c){var e=b>>>0<11?16:b+11&-8,f=e>>>3;d=r[Q>>2];var i=d>>>(f>>>0);if((i&3|0)!=0){var h=(i&1^1)+f|0,e=h<<1,g=(e<<2)+Q+40|0,c=(e+2<<2)+Q+40|0,e=r[c>>2],b=e+8|0,k=r[b>>2];(g|0)==(k|0)?o[Q>>2]=d&(1<<h^-1):k>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[c>>2]=k,o[k+12>>2]=g);h<<=3;o[e+4>>2]=h|3;o[(e+(h|4)|0)>>2]|=1;k=b;d=38;break}if(e>>>0<=r[Q+8>>2]>>>0){var n=e;d=30;break}if((i|0)!=0){b=2<<f;b=i<<f&(b|-b);c=(b&-b)-1|0;b=c>>>12&16;k=c>>>(b>>>0);c=k>>>5&8;f=k>>>(c>>>0);k=f>>>2&4;i=f>>>(k>>>0);f=i>>>1&2;i>>>=f>>>0;var y=i>>>1&1,k=(c|b|k|f|y)+(i>>>(y>>>0))|0,b=k<<1,f=(b<<2)+Q+40|0,i=(b+2<<2)+Q+40|0,c=r[i>>2],b=c+8|0,y=r[b>>2];(f|0)==(y|0)?o[Q>>2]=d&(1<<k^-1):y>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[i>>2]=y,o[y+12>>2]=f);k<<=3;d=k-e|0;o[c+4>>2]=e|3;f=c;c=f+e|0;o[f+(e|4)>>2]=d|1;o[f+k>>2]=d;y=r[Q+8>>2];(y|0)!=0&&(e=o[Q+20>>2],f=y>>>2&1073741822,k=(f<<2)+Q+40|0,i=r[Q>>2],y=1<<(y>>>3),(i&y|0)==0?(o[Q>>2]=i|y,h=k,g=(f+2<<2)+Q+40|0):(f=(f+2<<2)+Q+40|0,i=r[f>>2],i>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(h=i,g=f)),o[g>>2]=e,o[h+12>>2]=e,o[(e+8|0)>>2]=h,o[(e+12|0)>>2]=k);o[Q+8>>2]=d;o[Q+20>>2]=c;k=b;d=38;break}if((o[Q+4>>2]|0)==0){n=e;d=30;break}d=yd(e);if((d|0)==0){n=e;d=30;break}k=d}else{if(b>>>0>4294967231){n=-1;d=30;break}d=b+11&-8;if((o[Q+4>>2]|0)==0){n=d;d=30;break}e=zd(d);if((e|0)==0){n=d;d=30;break}k=e}d=38}while(0);d==30&&(h=r[Q+8>>2],n>>>0>h>>>0?(h=r[Q+12>>2],n>>>0<h>>>0?(h=h-n|0,o[Q+12>>2]=h,g=r[Q+24>>2],o[Q+24>>2]=g+n|0,o[n+(g+4)>>2]=h|1,o[g+4>>2]=n|3,k=g+8|0):k=Ad(n)):(g=h-n|0,d=r[Q+20>>2],g>>>0>15?(o[Q+20>>2]=d+n|0,o[Q+8>>2]=g,o[n+(d+4)>>2]=g|1,o[d+h>>2]=g,o[d+4>>2]=n|3):(o[Q+8>>2]=0,o[Q+20>>2]=0,o[d+4>>2]=h|3,o[(h+(d+4)|0)>>2]|=1),k=d+8|0));return k}Module._malloc=hc;hc.X=1;function yd(b){var d,c,e=o[Q+4>>2],f=(e&-e)-1|0,e=f>>>12&16,i=f>>>(e>>>0),f=i>>>5&8;c=i>>>(f>>>0);var i=c>>>2&4,h=c>>>(i>>>0);c=h>>>1&2;h>>>=c>>>0;var g=h>>>1&1,e=f=r[Q+((f|e|i|c|g)+(h>>>(g>>>0))<<2)+304>>2];c=e>>2;f=(o[f+4>>2]&-8)-b|0;a:for(;;){for(i=e;;){h=o[i+16>>2];if((h|0)==0){if(i=o[i+20>>2],(i|0)==0){break a}}else{i=h}h=(o[i+4>>2]&-8)-b|0;if(h>>>0<f>>>0){e=i;c=e>>2;f=h;continue a}}}var h=e,k=r[Q+16>>2],g=h>>>0<k>>>0;do{if(!g){var n=h+b|0,i=n;if(h>>>0<n>>>0){var g=r[c+6],n=r[c+3],y=(n|0)==(e|0);do{if(y){var x=e+20|0,w=o[x>>2];if((w|0)==0&&(x=e+16|0,w=o[x>>2],(w|0)==0)){var v=0;d=v>>2;break}for(;;){var B=w+20|0,u=o[B>>2];if((u|0)==0&&(B=w+16|0,u=r[B>>2],(u|0)==0)){break}x=B;w=u}x>>>0<k>>>0?(T(),a("Reached an unreachable!")):(o[x>>2]=0,v=w,d=v>>2)}else{x=r[c+2],x>>>0<k>>>0?(T(),a("Reached an unreachable!")):(o[x+12>>2]=n,o[n+8>>2]=x,v=n,d=v>>2)}}while(0);k=(g|0)==0;a:do{if(!k){n=e+28|0;y=(o[n>>2]<<2)+Q+304|0;x=(e|0)==(o[y>>2]|0);do{if(x){o[y>>2]=v;if((v|0)!=0){break}o[Q+4>>2]&=1<<o[n>>2]^-1;break a}if(g>>>0<r[Q+16>>2]>>>0){T(),a("Reached an unreachable!")}else{if(w=g+16|0,(o[w>>2]|0)==(e|0)?o[w>>2]=v:o[g+20>>2]=v,(v|0)==0){break a}}}while(0);v>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[d+6]=g,n=r[c+4],(n|0)!=0&&(n>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[d+4]=n,o[n+24>>2]=v)),n=r[c+5],(n|0)!=0&&(n>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[d+5]=n,o[n+24>>2]=v)))}}while(0);if(f>>>0<16){var t=f+b|0;o[c+1]=t|3;o[(t+(h+4)|0)>>2]|=1}else{o[c+1]=b|3;o[b+(h+4)>>2]=f|1;o[h+f+b>>2]=f;h=r[Q+8>>2];if((h|0)!=0){b=r[Q+20>>2];v=h>>>2&1073741822;d=(v<<2)+Q+40|0;c=r[Q>>2];h=1<<(h>>>3);if((c&h|0)==0){o[Q>>2]=c|h;var t=d,z=(v+2<<2)+Q+40|0}else{v=(v+2<<2)+Q+40|0,c=r[v>>2],c>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(t=c,z=v)}o[z>>2]=b;o[t+12>>2]=b;o[b+8>>2]=t;o[b+12>>2]=d}o[Q+8>>2]=f;o[Q+20>>2]=i}return e+8|0}}}while(0);T();a("Reached an unreachable!")}yd.X=1;function zd(b){var d,c,e,f,i,h=b>>2,g=-b|0,k=b>>>8;if((k|0)==0){var n=0}else{if(b>>>0>16777215){n=31}else{var y=(k+1048320|0)>>>16&8,x=k<<y,w=(x+520192|0)>>>16&4,v=x<<w,B=(v+245760|0)>>>16&2,u=14-(w|y|B)+(v<<B>>>15)|0,n=b>>>((u+7|0)>>>0)&1|u<<1}}var t=r[Q+(n<<2)+304>>2],z=(t|0)==0;a:do{if(z){var q=0,D=g,H=0}else{var L=(n|0)==31?0:25-(n>>>1)|0,R=0,P=g,I=t;i=I>>2;for(var G=b<<L,O=0;;){var ca=o[i+1]&-8,da=ca-b|0;if(da>>>0<P>>>0){if((ca|0)==(b|0)){q=I;D=da;H=I;break a}var tb=I,cb=da}else{tb=R,cb=P}var Ia=r[i+5],Ba=r[((G>>>31<<2)+16>>2)+i],Ja=(Ia|0)==0|(Ia|0)==(Ba|0)?O:Ia;if((Ba|0)==0){q=tb;D=cb;H=Ja;break a}R=tb;P=cb;I=Ba;i=I>>2;G<<=1;O=Ja}}}while(0);if((H|0)==0&(q|0)==0){var db=2<<n,ub=o[Q+4>>2]&(db|-db);if((ub|0)==0){var Z=H}else{var ka=(ub&-ub)-1|0,fa=ka>>>12&16,S=ka>>>(fa>>>0),la=S>>>5&8,ma=S>>>(la>>>0),eb=ma>>>2&4,Ka=ma>>>(eb>>>0),vb=Ka>>>1&2,ra=Ka>>>(vb>>>0),La=ra>>>1&1,Z=o[Q+((la|fa|eb|vb|La)+(ra>>>(La>>>0))<<2)+304>>2]}}else{Z=H}var Hb=(Z|0)==0;a:do{if(Hb){var U=D,$=q;f=$>>2}else{var ta=Z;e=ta>>2;for(var Ca=D,Ma=q;;){var fb=(o[e+1]&-8)-b|0,gb=fb>>>0<Ca>>>0,X=gb?fb:Ca,hb=gb?ta:Ma,Na=r[e+4];if((Na|0)!=0){ta=Na}else{var Oa=r[e+5];if((Oa|0)==0){U=X;$=hb;f=$>>2;break a}ta=Oa}e=ta>>2;Ca=X;Ma=hb}}}while(0);var Pa=($|0)==0;a:do{if(Pa){var ib=0}else{if(U>>>0<(o[Q+8>>2]-b|0)>>>0){var ua=$;c=ua>>2;var va=r[Q+16>>2],Qa=ua>>>0<va>>>0;do{if(!Qa){var wb=ua+b|0,jb=wb;if(ua>>>0<wb>>>0){var ga=r[f+6],Da=r[f+3],Ub=(Da|0)==($|0);do{if(Ub){var Ib=$+20|0,xb=o[Ib>>2];if((xb|0)==0){var kb=$+16|0,lb=o[kb>>2];if((lb|0)==0){var J=0;d=J>>2;break}var ea=kb,aa=lb}else{ea=Ib,aa=xb}for(;;){var Ea=aa+20|0,Ra=o[Ea>>2];if((Ra|0)!=0){ea=Ea,aa=Ra}else{var Sa=aa+16|0,Ta=r[Sa>>2];if((Ta|0)==0){break}ea=Sa;aa=Ta}}ea>>>0<va>>>0?(T(),a("Reached an unreachable!")):(o[ea>>2]=0,J=aa,d=J>>2)}else{var wa=r[f+2];wa>>>0<va>>>0?(T(),a("Reached an unreachable!")):(o[wa+12>>2]=Da,o[Da+8>>2]=wa,J=Da,d=J>>2)}}while(0);var Jb=(ga|0)==0;b:do{if(!Jb){var Kb=$+28|0,Lb=(o[Kb>>2]<<2)+Q+304|0,Vb=($|0)==(o[Lb>>2]|0);do{if(Vb){o[Lb>>2]=J;if((J|0)!=0){break}o[Q+4>>2]&=1<<o[Kb>>2]^-1;break b}if(ga>>>0<r[Q+16>>2]>>>0){T(),a("Reached an unreachable!")}else{var Ua=ga+16|0;(o[Ua>>2]|0)==($|0)?o[Ua>>2]=J:o[ga+20>>2]=J;if((J|0)==0){break b}}}while(0);if(J>>>0<r[Q+16>>2]>>>0){T(),a("Reached an unreachable!")}else{o[d+6]=ga;var ha=r[f+4];(ha|0)!=0&&(ha>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[d+4]=ha,o[ha+24>>2]=J));var Y=r[f+5];(Y|0)!=0&&(Y>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[d+5]=Y,o[Y+24>>2]=J))}}}while(0);var xa=U>>>0<16;b:do{if(xa){var ya=U+b|0;o[f+1]=ya|3;o[(ya+(ua+4)|0)>>2]|=1}else{if(o[f+1]=b|3,o[h+(c+1)]=U|1,o[(U>>2)+c+h]=U,U>>>0<256){var mb=U>>>2&1073741822,yb=(mb<<2)+Q+40|0,Va=r[Q>>2],zb=1<<(U>>>3);if((Va&zb|0)==0){o[Q>>2]=Va|zb;var Wa=yb,Ab=(mb+2<<2)+Q+40|0}else{var ia=(mb+2<<2)+Q+40|0,za=r[ia>>2];za>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(Wa=za,Ab=ia)}o[Ab>>2]=jb;o[Wa+12>>2]=jb;o[h+(c+2)]=Wa;o[h+(c+3)]=yb}else{var V=wb,nb=U>>>8;if((nb|0)==0){var na=0}else{if(U>>>0>16777215){na=31}else{var Xa=(nb+1048320|0)>>>16&8,Ya=nb<<Xa,Mb=(Ya+520192|0)>>>16&4,ob=Ya<<Mb,Fa=(ob+245760|0)>>>16&2,Ga=14-(Mb|Xa|Fa)+(ob<<Fa>>>15)|0,na=U>>>((Ga+7|0)>>>0)&1|Ga<<1}}var Za=(na<<2)+Q+304|0;o[h+(c+7)]=na;var Bb=b+(ua+16)|0;o[h+(c+5)]=0;o[Bb>>2]=0;var Cb=o[Q+4>>2],oa=1<<na;if((Cb&oa|0)==0){o[Q+4>>2]=Cb|oa,o[Za>>2]=V,o[h+(c+6)]=Za,o[h+(c+3)]=V,o[h+(c+2)]=V}else{for(var Db=U<<((na|0)==31?0:25-(na>>>1)|0),pa=o[Za>>2];;){if((o[pa+4>>2]&-8|0)==(U|0)){var Nb=pa+8|0,Eb=r[Nb>>2],pb=r[Q+16>>2],vc=pa>>>0<pb>>>0;do{if(!vc&&Eb>>>0>=pb>>>0){o[Eb+12>>2]=V;o[Nb>>2]=V;o[h+(c+2)]=Eb;o[h+(c+3)]=pa;o[h+(c+6)]=0;break b}}while(0);T();a("Reached an unreachable!")}else{var Zb=(Db>>>31<<2)+pa+16|0,jc=r[Zb>>2];if((jc|0)==0){if(Zb>>>0>=r[Q+16>>2]>>>0){o[Zb>>2]=V;o[h+(c+6)]=pa;o[h+(c+3)]=V;o[h+(c+2)]=V;break b}T();a("Reached an unreachable!")}else{Db<<=1,pa=jc}}}}}}}while(0);ib=$+8|0;break a}}}while(0);T();a("Reached an unreachable!")}else{ib=0}}}while(0);return ib}zd.X=1;function Ad(b){var d,c;(o[W>>2]|0)==0&&Bd();var e=(o[Q+440>>2]&4|0)==0;do{if(e){c=o[Q+24>>2];if((c|0)==0){c=6}else{if(c=Cd(c),(c|0)==0){c=6}else{var f=o[W+8>>2],f=b+47-o[Q+12>>2]+f&-f;if(f>>>0<2147483647){var i=Dd(f);if((i|0)==(o[c>>2]+o[c+4>>2]|0)){var h=i,g=f;d=i;c=13}else{var k=i,n=f;c=15}}else{c=14}}}if(c==6){if(c=Dd(0),(c|0)==-1){c=14}else{var f=o[W+8>>2],f=f+(b+47)&-f,i=c,y=o[W+4>>2],x=y-1|0,f=(x&i|0)==0?f:f-i+(x+i&-y)|0;f>>>0<2147483647?(i=Dd(f),(i|0)==(c|0)?(h=c,g=f,d=i,c=13):(k=i,n=f,c=15)):c=14}}if(c==13){if((h|0)!=-1){var w=g,v=h;c=26;break}k=d;n=g}else{if(c==14){o[Q+440>>2]|=4;c=23;break}}c=-n|0;if((k|0)!=-1&n>>>0<2147483647){if(n>>>0<(b+48|0)>>>0){f=o[W+8>>2],f=b+47-n+f&-f,f>>>0<2147483647?(Dd(f)|0)==-1?(Dd(c),c=22):(B=f+n|0,c=21):(B=n,c=21)}else{var B=n;c=21}}else{B=n,c=21}c==21&&(k|0)!=-1?(w=B,v=k,c=26):(o[Q+440>>2]|=4,c=23)}else{c=23}}while(0);c==23&&(e=o[W+8>>2],e=e+(b+47)&-e,e>>>0<2147483647?(e=Dd(e),h=Dd(0),(h|0)!=-1&(e|0)!=-1&e>>>0<h>>>0?(h=h-e|0,h>>>0<=(b+40|0)>>>0|(e|0)==-1?c=49:(w=h,v=e,c=26)):c=49):c=49);a:do{if(c==26){e=o[Q+432>>2]+w|0;o[Q+432>>2]=e;e>>>0>r[Q+436>>2]>>>0&&(o[Q+436>>2]=e);e=r[Q+24>>2];h=(e|0)==0;b:do{if(h){g=r[Q+16>>2];(g|0)==0|v>>>0<g>>>0&&(o[Q+16>>2]=v);o[Q+444>>2]=v;o[Q+448>>2]=w;o[Q+456>>2]=0;o[Q+36>>2]=o[W>>2];o[Q+32>>2]=-1;for(g=0;;){if(d=g<<1,k=(d<<2)+Q+40|0,o[Q+(d+3<<2)+40>>2]=k,o[Q+(d+2<<2)+40>>2]=k,g=g+1|0,(g|0)==32){break}}Ed(v,w-40|0)}else{k=Q+444|0;for(d=k>>2;;){if((k|0)==0){break}g=r[d];k=k+4|0;n=r[k>>2];B=g+n|0;if((v|0)==(B|0)){if((o[d+3]&8|0)!=0){break}d=e;if(!(d>>>0>=g>>>0&d>>>0<B>>>0)){break}o[k>>2]=n+w|0;Ed(o[Q+24>>2],o[Q+12>>2]+w|0);break b}k=o[d+2];d=k>>2}v>>>0<r[Q+16>>2]>>>0&&(o[Q+16>>2]=v);d=v+w|0;for(k=Q+444|0;;){if((k|0)==0){break}n=k|0;g=r[n>>2];if((g|0)==(d|0)){if((o[k+12>>2]&8|0)!=0){break}o[n>>2]=v;var u=k+4|0;o[u>>2]=o[u>>2]+w|0;u=Fd(v,g,b);c=50;break a}k=o[k+8>>2]}Gd(v,w)}}while(0);e=r[Q+12>>2];e>>>0>b>>>0?(u=e-b|0,o[Q+12>>2]=u,h=e=r[Q+24>>2],o[Q+24>>2]=h+b|0,o[b+(h+4)>>2]=u|1,o[e+4>>2]=b|3,u=e+8|0,c=50):c=49}}while(0);c==49&&(o[Ic>>2]=12,u=0);return u}Ad.X=1;function Hd(){var b;(o[W>>2]|0)==0&&Bd();var d=r[Q+24>>2],c=(d|0)==0;a:do{if(!c){var e=r[Q+12>>2],f=e>>>0>40;do{if(f){var i=r[W+8>>2],h=(Math.floor(((e-41+i|0)>>>0)/(i>>>0))-1)*i|0,g=Cd(d);if((o[g+12>>2]&8|0)==0){var k=Dd(0);b=(g+4|0)>>2;if((k|0)==(o[g>>2]+o[b]|0)&&(h=Dd(-(h>>>0>2147483646?-2147483648-i|0:h)|0),i=Dd(0),(h|0)!=-1&i>>>0<k>>>0&&(h=k-i|0,(k|0)!=(i|0)))){o[b]=o[b]-h|0;o[Q+432>>2]=o[Q+432>>2]-h|0;Ed(o[Q+24>>2],o[Q+12>>2]-h|0);break a}}}}while(0);r[Q+12>>2]>>>0>r[Q+28>>2]>>>0&&(o[Q+28>>2]=-1)}}while(0)}Hd.X=1;function nd(b){var d,c,e,f,i,h,g=b>>2,k,n=(b|0)==0;a:do{if(!n){var y=b-8|0,x=y,w=r[Q+16>>2],v=y>>>0<w>>>0;b:do{if(!v){var B=r[b-4>>2],u=B&3;if((u|0)!=1){var t=B&-8;h=t>>2;var z=b+(t-8)|0,q=z,D=(B&1|0)==0;c:do{if(D){var H=r[y>>2];if((u|0)==0){break a}var L=-8-H|0;i=L>>2;var R=b+L|0,P=R,I=H+t|0;if(R>>>0<w>>>0){break b}if((P|0)==(o[Q+20>>2]|0)){f=(b+(t-4)|0)>>2;if((o[f]&3|0)!=3){var G=P;e=G>>2;var O=I;break}o[Q+8>>2]=I;o[f]&=-2;o[i+(g+1)]=I|1;o[z>>2]=I;break a}if(H>>>0<256){var ca=r[i+(g+2)],da=r[i+(g+3)];if((ca|0)==(da|0)){o[Q>>2]&=1<<(H>>>3)^-1,G=P,e=G>>2,O=I}else{var tb=((H>>>2&1073741822)<<2)+Q+40|0,cb=(ca|0)!=(tb|0)&ca>>>0<w>>>0;do{if(!cb&&(da|0)==(tb|0)|da>>>0>=w>>>0){o[ca+12>>2]=da;o[da+8>>2]=ca;G=P;e=G>>2;O=I;break c}}while(0);T();a("Reached an unreachable!")}}else{var Ia=R,Ba=r[i+(g+6)],Ja=r[i+(g+3)],db=(Ja|0)==(Ia|0);do{if(db){var ub=L+(b+20)|0,Z=o[ub>>2];if((Z|0)==0){var ka=L+(b+16)|0,fa=o[ka>>2];if((fa|0)==0){var S=0;c=S>>2;break}var la=ka,ma=fa}else{la=ub,ma=Z,k=21}for(;;){var eb=ma+20|0,Ka=o[eb>>2];if((Ka|0)!=0){la=eb,ma=Ka}else{var vb=ma+16|0,ra=r[vb>>2];if((ra|0)==0){break}la=vb;ma=ra}}la>>>0<w>>>0?(T(),a("Reached an unreachable!")):(o[la>>2]=0,S=ma,c=S>>2)}else{var La=r[i+(g+2)];La>>>0<w>>>0?(T(),a("Reached an unreachable!")):(o[La+12>>2]=Ja,o[Ja+8>>2]=La,S=Ja,c=S>>2)}}while(0);if((Ba|0)==0){G=P,e=G>>2,O=I}else{var Hb=L+(b+28)|0,U=(o[Hb>>2]<<2)+Q+304|0,$=(Ia|0)==(o[U>>2]|0);do{if($){o[U>>2]=S;if((S|0)!=0){break}o[Q+4>>2]&=1<<o[Hb>>2]^-1;G=P;e=G>>2;O=I;break c}if(Ba>>>0<r[Q+16>>2]>>>0){T(),a("Reached an unreachable!")}else{var ta=Ba+16|0;(o[ta>>2]|0)==(Ia|0)?o[ta>>2]=S:o[Ba+20>>2]=S;if((S|0)==0){G=P;e=G>>2;O=I;break c}}}while(0);if(S>>>0<r[Q+16>>2]>>>0){T(),a("Reached an unreachable!")}else{o[c+6]=Ba;var Ca=r[i+(g+4)];(Ca|0)!=0&&(Ca>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[c+4]=Ca,o[Ca+24>>2]=S));var Ma=r[i+(g+5)];(Ma|0)==0?(G=P,e=G>>2,O=I):Ma>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[c+5]=Ma,o[Ma+24>>2]=S,G=P,e=G>>2,O=I)}}}}else{G=x,e=G>>2,O=t}}while(0);var fb=G;if(fb>>>0<z>>>0){var gb=b+(t-4)|0,X=r[gb>>2];if((X&1|0)!=0){var hb=(X&2|0)==0;do{if(hb){if((q|0)==(o[Q+24>>2]|0)){var Na=o[Q+12>>2]+O|0;o[Q+12>>2]=Na;o[Q+24>>2]=G;o[e+1]=Na|1;(G|0)==(o[Q+20>>2]|0)&&(o[Q+20>>2]=0,o[Q+8>>2]=0);if(Na>>>0<=r[Q+28>>2]>>>0){break a}Hd();break a}if((q|0)==(o[Q+20>>2]|0)){var Oa=o[Q+8>>2]+O|0;o[Q+8>>2]=Oa;o[Q+20>>2]=G;o[e+1]=Oa|1;o[(fb+Oa|0)>>2]=Oa;break a}var Pa=(X&-8)+O|0,ib=X>>>3,ua=X>>>0<256;c:do{if(ua){var va=r[g+h],Qa=r[((t|4)>>2)+g];if((va|0)==(Qa|0)){o[Q>>2]&=1<<ib^-1}else{var wb=((X>>>2&1073741822)<<2)+Q+40|0;k=(va|0)==(wb|0)?63:va>>>0<r[Q+16>>2]>>>0?66:63;do{if(k==63&&!((Qa|0)!=(wb|0)&&Qa>>>0<r[Q+16>>2]>>>0)){o[va+12>>2]=Qa;o[Qa+8>>2]=va;break c}}while(0);T();a("Reached an unreachable!")}}else{var jb=z,ga=r[h+(g+4)],Da=r[((t|4)>>2)+g],Ub=(Da|0)==(jb|0);do{if(Ub){var Ib=t+(b+12)|0,xb=o[Ib>>2];if((xb|0)==0){var kb=t+(b+8)|0,lb=o[kb>>2];if((lb|0)==0){var J=0;d=J>>2;break}var ea=kb,aa=lb}else{ea=Ib,aa=xb,k=73}for(;;){var Ea=aa+20|0,Ra=o[Ea>>2];if((Ra|0)!=0){ea=Ea,aa=Ra}else{var Sa=aa+16|0,Ta=r[Sa>>2];if((Ta|0)==0){break}ea=Sa;aa=Ta}}ea>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[ea>>2]=0,J=aa,d=J>>2)}else{var wa=r[g+h];wa>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[wa+12>>2]=Da,o[Da+8>>2]=wa,J=Da,d=J>>2)}}while(0);if((ga|0)!=0){var Jb=t+(b+20)|0,Kb=(o[Jb>>2]<<2)+Q+304|0,Lb=(jb|0)==(o[Kb>>2]|0);do{if(Lb){o[Kb>>2]=J;if((J|0)!=0){break}o[Q+4>>2]&=1<<o[Jb>>2]^-1;break c}if(ga>>>0<r[Q+16>>2]>>>0){T(),a("Reached an unreachable!")}else{var Vb=ga+16|0;(o[Vb>>2]|0)==(jb|0)?o[Vb>>2]=J:o[ga+20>>2]=J;if((J|0)==0){break c}}}while(0);if(J>>>0<r[Q+16>>2]>>>0){T(),a("Reached an unreachable!")}else{o[d+6]=ga;var Ua=r[h+(g+2)];(Ua|0)!=0&&(Ua>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[d+4]=Ua,o[Ua+24>>2]=J));var ha=r[h+(g+3)];(ha|0)!=0&&(ha>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[d+5]=ha,o[ha+24>>2]=J))}}}}while(0);o[e+1]=Pa|1;o[fb+Pa>>2]=Pa;if((G|0)!=(o[Q+20>>2]|0)){var Y=Pa}else{o[Q+8>>2]=Pa;break a}}else{o[gb>>2]=X&-2,o[e+1]=O|1,Y=o[fb+O>>2]=O}}while(0);if(Y>>>0<256){var xa=Y>>>2&1073741822,ya=(xa<<2)+Q+40|0,mb=r[Q>>2],yb=1<<(Y>>>3);if((mb&yb|0)==0){o[Q>>2]=mb|yb;var Va=ya,zb=(xa+2<<2)+Q+40|0}else{var Wa=(xa+2<<2)+Q+40|0,Ab=r[Wa>>2];Ab>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(Va=Ab,zb=Wa)}o[zb>>2]=G;o[Va+12>>2]=G;o[e+2]=Va;o[e+3]=ya;break a}var ia=G,za=Y>>>8;if((za|0)==0){var V=0}else{if(Y>>>0>16777215){V=31}else{var nb=(za+1048320|0)>>>16&8,na=za<<nb,Xa=(na+520192|0)>>>16&4,Ya=na<<Xa,Mb=(Ya+245760|0)>>>16&2,ob=14-(Xa|nb|Mb)+(Ya<<Mb>>>15)|0,V=Y>>>((ob+7|0)>>>0)&1|ob<<1}}var Fa=(V<<2)+Q+304|0;o[e+7]=V;o[e+5]=0;o[e+4]=0;var Ga=o[Q+4>>2],Za=1<<V,Bb=(Ga&Za|0)==0;c:do{if(Bb){o[Q+4>>2]=Ga|Za,o[Fa>>2]=ia,o[e+6]=Fa,o[e+3]=G,o[e+2]=G}else{for(var Cb=Y<<((V|0)==31?0:25-(V>>>1)|0),oa=o[Fa>>2];;){if((o[oa+4>>2]&-8|0)==(Y|0)){var Db=oa+8|0,pa=r[Db>>2],Nb=r[Q+16>>2],Eb=oa>>>0<Nb>>>0;do{if(!Eb&&pa>>>0>=Nb>>>0){o[pa+12>>2]=ia;o[Db>>2]=ia;o[e+2]=pa;o[e+3]=oa;o[e+6]=0;break c}}while(0);T();a("Reached an unreachable!")}else{var pb=(Cb>>>31<<2)+oa+16|0,vc=r[pb>>2];if((vc|0)==0){if(pb>>>0>=r[Q+16>>2]>>>0){o[pb>>2]=ia;o[e+6]=oa;o[e+3]=G;o[e+2]=G;break c}T();a("Reached an unreachable!")}else{Cb<<=1,oa=vc}}}}}while(0);var Zb=o[Q+32>>2]-1|0;o[Q+32>>2]=Zb;if((Zb|0)!=0){break a}var jc=o[Q+452>>2],ke=(jc|0)==0;c:do{if(!ke){for(var Od=jc;;){var Pd=o[Od+8>>2];if((Pd|0)==0){break c}Od=Pd}}}while(0);o[Q+32>>2]=-1;break a}}}}}while(0);T();a("Reached an unreachable!")}}while(0)}Module._free=nd;nd.X=1;function Cd(b){var d,c=Q+444|0;for(d=c>>2;;){var e=r[d];if(e>>>0<=b>>>0&&(e+o[d+1]|0)>>>0>b>>>0){var f=c;break}d=r[d+2];if((d|0)==0){f=0;break}c=d;d=c>>2}return f}function Ed(b,d){var c=b+8|0,c=(c&7|0)==0?0:-c&7,e=d-c|0;o[Q+24>>2]=b+c|0;o[Q+12>>2]=e;o[c+(b+4)>>2]=e|1;o[d+(b+4)>>2]=40;o[Q+28>>2]=o[W+16>>2]}function Bd(){if((o[W>>2]|0)==0){var b=Id();(b-1&b|0)==0?(o[W+8>>2]=b,o[W+4>>2]=b,o[W+12>>2]=-1,o[W+16>>2]=2097152,o[W+20>>2]=0,o[Q+440>>2]=0,o[W>>2]=Math.floor(Date.now()/1e3)&-16^1431655768):(T(),a("Reached an unreachable!"))}}function Fd(b,d,c){var e,f,i,h=d>>2,g=b>>2,k,n=b+8|0,n=(n&7|0)==0?0:-n&7;f=d+8|0;var y=(f&7|0)==0?0:-f&7;i=y>>2;var x=d+y|0,w=n+c|0;f=w>>2;var v=b+w|0,B=x-(b+n)-c|0;o[(n+4>>2)+g]=c|3;c=(x|0)==(o[Q+24>>2]|0);a:do{if(c){var u=o[Q+12>>2]+B|0;o[Q+12>>2]=u;o[Q+24>>2]=v;o[f+(g+1)]=u|1}else{if((x|0)==(o[Q+20>>2]|0)){u=o[Q+8>>2]+B|0,o[Q+8>>2]=u,o[Q+20>>2]=v,o[f+(g+1)]=u|1,o[(b+u+w|0)>>2]=u}else{var t=r[i+(h+1)];if((t&3|0)==1){var u=t&-8,z=t>>>3,q=t>>>0<256;b:do{if(q){var D=r[((y|8)>>2)+h],H=r[i+(h+3)];if((D|0)==(H|0)){o[Q>>2]&=1<<z^-1}else{var L=((t>>>2&1073741822)<<2)+Q+40|0;k=(D|0)==(L|0)?15:D>>>0<r[Q+16>>2]>>>0?18:15;do{if(k==15&&!((H|0)!=(L|0)&&H>>>0<r[Q+16>>2]>>>0)){o[D+12>>2]=H;o[H+8>>2]=D;break b}}while(0);T();a("Reached an unreachable!")}}else{k=x;D=r[((y|24)>>2)+h];H=r[i+(h+3)];L=(H|0)==(k|0);do{if(L){var R=y|16,P=R+(d+4)|0,I=o[P>>2];if((I|0)==0){if(R=d+R|0,I=o[R>>2],(I|0)==0){var G=0;e=G>>2;break}}else{R=P}for(;;){var P=I+20|0,O=o[P>>2];if((O|0)==0&&(P=I+16|0,O=r[P>>2],(O|0)==0)){break}R=P;I=O}R>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[R>>2]=0,G=I,e=G>>2)}else{R=r[((y|8)>>2)+h],R>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[R+12>>2]=H,o[H+8>>2]=R,G=H,e=G>>2)}}while(0);if((D|0)!=0){H=y+(d+28)|0;L=(o[H>>2]<<2)+Q+304|0;R=(k|0)==(o[L>>2]|0);do{if(R){o[L>>2]=G;if((G|0)!=0){break}o[Q+4>>2]&=1<<o[H>>2]^-1;break b}if(D>>>0<r[Q+16>>2]>>>0){T(),a("Reached an unreachable!")}else{if(I=D+16|0,(o[I>>2]|0)==(k|0)?o[I>>2]=G:o[D+20>>2]=G,(G|0)==0){break b}}}while(0);G>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[e+6]=D,k=y|16,D=r[(k>>2)+h],(D|0)!=0&&(D>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[e+4]=D,o[D+24>>2]=G)),k=r[(k+4>>2)+h],(k|0)!=0&&(k>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(o[e+5]=k,o[k+24>>2]=G)))}}}while(0);t=d+(u|y)|0;u=u+B|0}else{t=x,u=B}o[(t+4|0)>>2]&=-2;o[f+(g+1)]=u|1;o[(u>>2)+g+f]=u;if(u>>>0<256){z=u>>>2&1073741822;t=(z<<2)+Q+40|0;q=r[Q>>2];u=1<<(u>>>3);if((q&u|0)==0){o[Q>>2]=q|u;var ca=t,da=(z+2<<2)+Q+40|0}else{u=(z+2<<2)+Q+40|0,z=r[u>>2],z>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(ca=z,da=u)}o[da>>2]=v;o[ca+12>>2]=v;o[f+(g+2)]=ca;o[f+(g+3)]=t}else{if(t=v,q=u>>>8,(q|0)==0?z=0:u>>>0>16777215?z=31:(z=(q+1048320|0)>>>16&8,k=q<<z,q=(k+520192|0)>>>16&4,k<<=q,D=(k+245760|0)>>>16&2,z=14-(q|z|D)+(k<<D>>>15)|0,z=u>>>((z+7|0)>>>0)&1|z<<1),q=(z<<2)+Q+304|0,o[f+(g+7)]=z,k=w+(b+16)|0,o[f+(g+5)]=0,o[k>>2]=0,k=o[Q+4>>2],D=1<<z,(k&D|0)==0){o[Q+4>>2]=k|D,o[q>>2]=t,o[f+(g+6)]=q,o[f+(g+3)]=t,o[f+(g+2)]=t}else{z=u<<((z|0)==31?0:25-(z>>>1)|0);for(q=o[q>>2];;){if((o[q+4>>2]&-8|0)==(u|0)){k=q+8|0;D=r[k>>2];H=r[Q+16>>2];L=q>>>0<H>>>0;do{if(!L&&D>>>0>=H>>>0){o[D+12>>2]=t;o[k>>2]=t;o[f+(g+2)]=D;o[f+(g+3)]=q;o[f+(g+6)]=0;break a}}while(0);T();a("Reached an unreachable!")}else{if(k=(z>>>31<<2)+q+16|0,D=r[k>>2],(D|0)==0){if(k>>>0>=r[Q+16>>2]>>>0){o[k>>2]=t;o[f+(g+6)]=q;o[f+(g+3)]=t;o[f+(g+2)]=t;break a}T();a("Reached an unreachable!")}else{z<<=1,q=D}}}}}}}}while(0);return b+(n|8)|0}Fd.X=1;function Gd(b,d){var c,e,f=r[Q+24>>2];e=f>>2;var i=Cd(f),h=o[i>>2];c=o[i+4>>2];var i=h+c|0,g=h+(c-39)|0,h=h+(c-47)+((g&7|0)==0?0:-g&7)|0,h=h>>>0<(f+16|0)>>>0?f:h,g=h+8|0;c=g>>2;Ed(b,d-40|0);o[(h+4|0)>>2]=27;o[c]=o[Q+444>>2];o[c+1]=o[Q+448>>2];o[c+2]=o[Q+452>>2];o[c+3]=o[Q+456>>2];o[Q+444>>2]=b;o[Q+448>>2]=d;o[Q+456>>2]=0;o[Q+452>>2]=g;c=h+28|0;o[c>>2]=7;g=(h+32|0)>>>0<i>>>0;a:do{if(g){for(var k=c;;){var n=k+4|0;o[n>>2]=7;if((k+8|0)>>>0>=i>>>0){break a}k=n}}}while(0);i=(h|0)==(f|0);a:do{if(!i){if(c=h-f|0,g=f+c|0,o[(c+(f+4)|0)>>2]&=-2,o[e+1]=c|1,o[g>>2]=c,c>>>0<256){k=c>>>2&1073741822;g=(k<<2)+Q+40|0;n=r[Q>>2];c=1<<(c>>>3);if((n&c|0)==0){o[Q>>2]=n|c;var y=g,x=(k+2<<2)+Q+40|0}else{c=(k+2<<2)+Q+40|0,k=r[c>>2],k>>>0<r[Q+16>>2]>>>0?(T(),a("Reached an unreachable!")):(y=k,x=c)}o[x>>2]=f;o[y+12>>2]=f;o[e+2]=y;o[e+3]=g}else{g=f;n=c>>>8;if((n|0)==0){k=0}else{if(c>>>0>16777215){k=31}else{var k=(n+1048320|0)>>>16&8,w=n<<k,n=(w+520192|0)>>>16&4;w<<=n;var v=(w+245760|0)>>>16&2,k=14-(n|k|v)+(w<<v>>>15)|0,k=c>>>((k+7|0)>>>0)&1|k<<1}}n=(k<<2)+Q+304|0;o[e+7]=k;o[e+5]=0;o[e+4]=0;w=o[Q+4>>2];v=1<<k;if((w&v|0)==0){o[Q+4>>2]=w|v,o[n>>2]=g,o[e+6]=n,o[e+3]=f,o[e+2]=f}else{k=c<<((k|0)==31?0:25-(k>>>1)|0);for(n=o[n>>2];;){if((o[n+4>>2]&-8|0)==(c|0)){var w=n+8|0,v=r[w>>2],B=r[Q+16>>2],u=n>>>0<B>>>0;do{if(!u&&v>>>0>=B>>>0){o[v+12>>2]=g;o[w>>2]=g;o[e+2]=v;o[e+3]=n;o[e+6]=0;break a}}while(0);T();a("Reached an unreachable!")}else{if(w=(k>>>31<<2)+n+16|0,v=r[w>>2],(v|0)==0){if(w>>>0>=r[Q+16>>2]>>>0){o[w>>2]=g;o[e+6]=n;o[e+3]=f;o[e+2]=f;break a}T();a("Reached an unreachable!")}else{k<<=1,n=v}}}}}}}while(0)}Gd.X=1;function wd(b){(b|0)!=0&&nd(b)}function Jd(b){Kd(b|0)}function rd(b){for(b=(b|0)==0?1:b;;){var d=hc(b);if((d|0)==0){if(d=(Xb=o[Ld>>2],o[Ld>>2]=Xb,Xb),(d|0)==0){d=hc(4);o[d>>2]=Md+8|0;var c=Nd;if(!Qd){try{o[__ZTVN10__cxxabiv119__pointer_type_infoE>>2]=0}catch(e){}try{o[__ZTVN10__cxxabiv117__class_type_infoE>>2]=1}catch(f){}try{o[Rd>>2]=2}catch(i){}Qd=!0}print("Compiled code throwing an exception, "+[d,c,2]+", at "+Error().stack);o[Sd>>2]=d;o[Sd+4>>2]=c;o[Sd+8>>2]=2;"uncaught_exception"in Td?Td.w++:Td.w=1;a(d);a("Reached an unreachable!")}else{kc[d]()}}else{return d}}return j}function K(b){Ic||(Ic=C([0],"i32",A));o[Ic>>2]=b}var Ic,Ud=13,od=9,gd=22,Vd=5,Wd=21,Xd=25,Yd=6,fd=34,Zd=0,$d=0,ae=0,$c=0,be=2,M=[j],ce=!0;function de(b,d){if(typeof b!=="string"){return j}d===ba&&(d="/");b&&b[0]=="/"&&(d="");for(var c=(d+"/"+b).split("/").reverse(),e=[""];c.length;){var f=c.pop();f==""||f=="."||(f==".."?e.length>1&&e.pop():e.push(f))}return e.length==1?"/":e.join("/")}function ee(b,d,c){var e={Ta:!1,k:!1,error:0,name:j,path:j,object:j,s:!1,u:j,t:j},b=de(b);if(b=="/"){e.Ta=!0,e.k=e.s=!0,e.name="/",e.path=e.u="/",e.object=e.t=fe}else{if(b!==j){for(var c=c||0,b=b.slice(1).split("/"),f=fe,i=[""];b.length;){if(b.length==1&&f.c){e.s=!0,e.u=i.length==1?"/":i.join("/"),e.t=f,e.name=b[0]}var h=b.shift();if(f.c){if(f.v){if(!f.a.hasOwnProperty(h)){e.error=2;break}}else{e.error=Ud;break}}else{e.error=20;break}f=f.a[h];if(f.link&&!(d&&b.length==0)){if(c>40){e.error=40;break}e=de(f.link,i.join("/"));return ee([e].concat(b).join("/"),d,c+1)}i.push(h);if(b.length==0){e.k=!0,e.path=i.join("/"),e.object=f}}}}return e}function ge(b){he();b=ee(b,ba);return b.k?b.object:(K(b.error),j)}function ie(b,d,c,e,f){b||(b="/");typeof b==="string"&&(b=ge(b));b||(K(Ud),a(Error("Parent path must exist.")));b.c||(K(20),a(Error("Parent must be a folder.")));!b.write&&!ce&&(K(Ud),a(Error("Parent folder must be writeable.")));if(!d||d=="."||d==".."){K(2),a(Error("Name must not be empty."))}b.a.hasOwnProperty(d)&&(K(17),a(Error("Can't overwrite object.")));b.a[d]={v:e===ba?!0:e,write:f===ba?!1:f,timestamp:Date.now(),Sa:be++};for(var i in c){c.hasOwnProperty(i)&&(b.a[d][i]=c[i])}return b.a[d]}function je(b,d){return ie(b,d,{c:!0,d:!1,a:{}},!0,!0)}function le(){var b="dev/shm/tmp",d=ge("/");d===j&&a(Error("Invalid parent."));for(b=b.split("/").reverse();b.length;){var c=b.pop();c&&(d.a.hasOwnProperty(c)||je(d,c),d=d.a[c])}}function me(b,d,c,e){!c&&!e&&a(Error("A device must have at least one callback defined."));var f={d:!0,input:c,e:e,c:!1};return ie(b,d,f,Boolean(c),Boolean(e))}function he(){fe||(fe={v:!0,write:!0,c:!0,d:!1,timestamp:Date.now(),Sa:1,a:{}})}function ne(){var b,d,c;function e(b){b===j||b==="\n".charCodeAt(0)?(d.h(d.buffer.join("")),d.buffer=[]):d.buffer.push(String.fromCharCode(b))}sb(!oe,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");oe=!0;he();b=b||Module.stdin;d=d||Module.stdout;c=c||Module.stderr;var f=!0,i=!0,h=!0;b||(f=!1,b=(function(){if(!b.j||!b.j.length){var c;typeof window!="undefined"&&typeof window.prompt=="function"?c=window.prompt("Input: "):typeof readline=="function"&&(c=readline());c||(c="");b.j=pc(c+"\n",!0)}return b.j.shift()}));d||(i=!1,d=e);if(!d.h){d.h=print}if(!d.buffer){d.buffer=[]}c||(h=!1,c=e);if(!c.h){c.h=print}if(!c.buffer){c.buffer=[]}je("/","tmp");var g=je("/","dev"),k=me(g,"stdin",b),n=me(g,"stdout",j,d);c=me(g,"stderr",j,c);me(g,"tty",b,d);M[1]={path:"/dev/stdin",object:k,position:0,f:!0,g:!1,r:!1,m:!f,error:!1,q:!1,b:[]};M[2]={path:"/dev/stdout",object:n,position:0,f:!1,g:!0,r:!1,m:!i,error:!1,q:!1,b:[]};M[3]={path:"/dev/stderr",object:c,position:0,f:!1,g:!0,r:!1,m:!h,error:!1,q:!1,b:[]};Zd=C([1],"void*",A);$d=C([2],"void*",A);ae=C([3],"void*",A);le();M[Zd]=M[1];M[$d]=M[2];M[ae]=M[3];$c=C([C([0,0,0,0,Zd,0,0,0,$d,0,0,0,ae,0,0,0],"void*",A)],"void*",A)}var oe,fe;function pe(b,d,c,e){var f=M[b];if(!f||f.object.d){return K(od),-1}else{if(f.f){if(f.object.c){return K(Wd),-1}else{if(c<0||e<0){return K(gd),-1}else{for(b=0;f.b.length&&c>0;){m[d++]=f.b.pop(),c--,b++}for(var f=f.object.a,c=Math.min(f.length-e,c),i=0;i<c;i++){m[d+i]=f[e+i],b++}return b}}}else{return K(Ud),-1}}}function Pc(b,d,c){var e=M[b];if(e){if(e.f){if(c<0){return K(gd),-1}else{if(e.object.d){if(e.object.input){for(b=0;e.b.length&&c>0;){m[d++]=e.b.pop(),c--,b++}for(var f=0;f<c;f++){try{var i=e.object.input()}catch(h){return K(Vd),-1}if(i===j||i===ba){break}b++;m[d+f]=i}return b}else{return K(Yd),-1}}else{return i=e.b.length,b=pe(b,d,c,e.position),b!=-1&&(e.position+=e.b.length-i+b),b}}}else{return K(Ud),-1}}else{return K(od),-1}}function Jc(b,d,c){var e=M[b];if(e){if(e.g){if(c<0){return K(gd),-1}else{if(e.object.d){if(e.object.e){for(var f=0;f<c;f++){try{e.object.e(m[d+f])}catch(i){return K(Vd),-1}}e.object.timestamp=Date.now();return f}else{return K(Yd),-1}}else{f=e.position;b=M[b];if(!b||b.object.d){K(od),d=-1}else{if(b.g){if(b.object.c){K(Wd),d=-1}else{if(c<0||f<0){K(gd),d=-1}else{for(var h=b.object.a;h.length<f;){h.push(0)}for(var g=0;g<c;g++){h[f+g]=p[d+g]}b.object.timestamp=Date.now();d=g}}}else{K(Ud),d=-1}}d!=-1&&(e.position+=d);return d}}}else{return K(Ud),-1}}else{return K(od),-1}}function Kc(b){tc(wc);a("exit("+b+") called, at "+Error().stack)}function xd(b,d,c,e){d*=c;if(d!=0&&Jc(e,b,d)==-1&&M[e]){M[e].error=!0}}function vd(b,d){function c(b){var c;b==="double"?c=(fc[0]=o[d+f>>2],fc[1]=o[d+f+4>>2],ec[0]):b=="i64"?c=[o[d+f>>2],o[d+f+4>>2]]:(b="i32",c=o[d+f>>2]);f+=Math.max(qb(b),rb);return c}for(var e=b,f=0,i=[],h,g;;){var k=e;h=m[e];if(h===0){break}g=m[e+1];if(h=="%".charCodeAt(0)){var n=!1,y=!1,x=!1,w=!1;a:for(;;){switch(g){case"+".charCodeAt(0):n=!0;break;case"-".charCodeAt(0):y=!0;break;case"#".charCodeAt(0):x=!0;break;case"0".charCodeAt(0):if(w){break a}else{w=!0;break};default:break a}e++;g=m[e+1]}var v=0;if(g=="*".charCodeAt(0)){v=c("i32"),e++,g=m[e+1]}else{for(;g>="0".charCodeAt(0)&&g<="9".charCodeAt(0);){v=v*10+(g-"0".charCodeAt(0)),e++,g=m[e+1]}}var B=!1;if(g==".".charCodeAt(0)){var u=0,B=!0;e++;g=m[e+1];if(g=="*".charCodeAt(0)){u=c("i32"),e++}else{for(;;){g=m[e+1];if(g<"0".charCodeAt(0)||g>"9".charCodeAt(0)){break}u=u*10+(g-"0".charCodeAt(0));e++}}g=m[e+1]}else{u=6}var t;switch(String.fromCharCode(g)){case"h":g=m[e+2];g=="h".charCodeAt(0)?(e++,t=1):t=2;break;case"l":g=m[e+2];g=="l".charCodeAt(0)?(e++,t=8):t=4;break;case"L":case"q":case"j":t=8;break;case"z":case"t":case"I":t=4;break;default:t=j}t&&e++;g=m[e+1];if("d,i,u,o,x,X,p".split(",").indexOf(String.fromCharCode(g))!=-1){k=g=="d".charCodeAt(0)||g=="i".charCodeAt(0);t=t||4;h=c("i"+t*8);t==8&&(h=g=="u".charCodeAt(0)?(h[0]>>>0)+(h[1]>>>0)*4294967296:(h[0]>>>0)+(h[1]|0)*4294967296);t<=4&&(h=(k?Bc:Ac)(h&Math.pow(256,t)-1,t*8));var z=Math.abs(h),q,k="";if(g=="d".charCodeAt(0)||g=="i".charCodeAt(0)){q=Bc(h,8*t).toString(10)}else{if(g=="u".charCodeAt(0)){q=Ac(h,8*t).toString(10),h=Math.abs(h)}else{if(g=="o".charCodeAt(0)){q=(x?"0":"")+z.toString(8)}else{if(g=="x".charCodeAt(0)||g=="X".charCodeAt(0)){k=x?"0x":"";if(h<0){h=-h;q=(z-1).toString(16);x=[];for(z=0;z<q.length;z++){x.push((15-parseInt(q[z],16)).toString(16))}for(q=x.join("");q.length<t*2;){q="f"+q}}else{q=z.toString(16)}g=="X".charCodeAt(0)&&(k=k.toUpperCase(),q=q.toUpperCase())}else{g=="p".charCodeAt(0)&&(z===0?q="(nil)":(k="0x",q=z.toString(16)))}}}}if(B){for(;q.length<u;){q="0"+q}}for(n&&(k=h<0?"-"+k:"+"+k);k.length+q.length<v;){y?q+=" ":w?q="0"+q:k=" "+k}q=k+q;q.split("").forEach((function(b){i.push(b.charCodeAt(0))}))}else{if("f,F,e,E,g,G".split(",").indexOf(String.fromCharCode(g))!=-1){h=c("double");if(isNaN(h)){q="nan",w=!1}else{if(isFinite(h)){B=!1;t=Math.min(u,20);if(g=="g".charCodeAt(0)||g=="G".charCodeAt(0)){B=!0,u=u||1,t=parseInt(h.toExponential(t).split("e")[1],10),u>t&&t>=-4?(g=(g=="g".charCodeAt(0)?"f":"F").charCodeAt(0),u-=t+1):(g=(g=="g".charCodeAt(0)?"e":"E").charCodeAt(0),u--),t=Math.min(u,20)}if(g=="e".charCodeAt(0)||g=="E".charCodeAt(0)){q=h.toExponential(t),/[eE][-+]\d$/.test(q)&&(q=q.slice(0,-1)+"0"+q.slice(-1))}else{if(g=="f".charCodeAt(0)||g=="F".charCodeAt(0)){q=h.toFixed(t)}}k=q.split("e");if(B&&!x){for(;k[0].length>1&&k[0].indexOf(".")!=-1&&(k[0].slice(-1)=="0"||k[0].slice(-1)==".");){k[0]=k[0].slice(0,-1)}}else{for(x&&q.indexOf(".")==-1&&(k[0]+=".");u>t++;){k[0]+="0"}}q=k[0]+(k.length>1?"e"+k[1]:"");g=="E".charCodeAt(0)&&(q=q.toUpperCase());n&&h>=0&&(q="+"+q)}else{q=(h<0?"-":"")+"inf",w=!1}}for(;q.length<v;){y?q+=" ":q=w&&(q[0]=="-"||q[0]=="+")?q[0]+"0"+q.slice(1):(w?"0":" ")+q}g<"a".charCodeAt(0)&&(q=q.toUpperCase());q.split("").forEach((function(b){i.push(b.charCodeAt(0))}))}else{if(g=="s".charCodeAt(0)){(n=c("i8*"))?(n=zc(n),B&&n.length>u&&(n=n.slice(0,u))):n=pc("(null)",!0);if(!y){for(;n.length<v--;){i.push(" ".charCodeAt(0))}}i=i.concat(n);if(y){for(;n.length<v--;){i.push(" ".charCodeAt(0))}}}else{if(g=="c".charCodeAt(0)){for(y&&i.push(c("i8"));--v>0;){i.push(" ".charCodeAt(0))}y||i.push(c("i8"))}else{if(g=="n".charCodeAt(0)){y=c("i32*"),o[y>>2]=i.length}else{if(g=="%".charCodeAt(0)){i.push(h)}else{for(z=k;z<e+2;z++){i.push(m[z])}}}}}}}e+=2}else{i.push(h),e+=1}}return i}function cd(b,d,c){d=vd(d,c);c=l;xd(C(d,"i8",gc),1,d.length,b);l=c}var ed={1:"Operation not permitted",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"Input/output error",6:"No such device or address",8:"Exec format error",9:"Bad file descriptor",10:"No child processes",11:"Resource temporarily unavailable",12:"Cannot allocate memory",13:"Permission denied",14:"Bad address",16:"Device or resource busy",17:"File exists",18:"Invalid cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Inappropriate ioctl for device",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read-only file system",31:"Too many links",32:"Broken pipe",33:"Numerical argument out of domain",34:"Numerical result out of range",35:"Resource deadlock avoided",36:"File name too long",37:"No locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many levels of symbolic links",42:"No message of desired type",43:"Identifier removed",60:"Device not a stream",61:"No data available",62:"Timer expired",63:"Out of streams resources",67:"Link has been severed",71:"Protocol error",72:"Multihop attempted",74:"Bad message",75:"Value too large for defined data type",84:"Invalid or incomplete multibyte or wide character",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Protocol not supported",95:"Operation not supported",97:"Address family not supported by protocol",98:"Address already in use",99:"Cannot assign requested address",100:"Network is down",101:"Network is unreachable",102:"Network dropped connection on reset",103:"Software caused connection abort",104:"Connection reset by peer",105:"No buffer space available",106:"Transport endpoint is already connected",107:"Transport endpoint is not connected",110:"Connection timed out",111:"Connection refused",113:"No route to host",114:"Operation already in progress",115:"Operation now in progress",116:"Stale NFS file handle",122:"Disk quota exceeded",125:"Operation canceled",130:"Owner died",131:"State not recoverable"},dd;function ld(b){if(!M[b]){return K(od),0}if(M[b].m){return 1}K(Xd);return 0}function pd(b,d){cd(o[$d>>2],b,d)}function T(){a("ABORT: undefined, at "+Error().stack)}function ic(b,d){var c=0;if(d>=20){for(var e=b+d;b%4;){m[b++]=c}c<0&&(c+=256);for(var f=b>>2,i=e>>2,h=c|c<<8|c<<16|c<<24;f<i;){o[f++]=h}for(b=f<<2;b<e;){m[b++]=c}}else{for(;d--;){m[b++]=c}}}function Id(){switch(8){case 8:return lc;case 54:case 56:case 21:case 61:case 63:case 22:case 67:case 23:case 24:case 25:case 26:case 27:case 69:case 28:case 101:case 70:case 71:case 29:case 30:case 199:case 75:case 76:case 32:case 43:case 44:case 80:case 46:case 47:case 45:case 48:case 49:case 42:case 82:case 33:case 7:case 108:case 109:case 107:case 112:case 119:case 121:return 200809;case 13:case 104:case 94:case 95:case 34:case 35:case 77:case 81:case 83:case 84:case 85:case 86:case 87:case 88:case 89:case 90:case 91:case 94:case 95:case 110:case 111:case 113:case 114:case 115:case 116:case 117:case 118:case 120:case 40:case 16:case 79:case 19:return-1;case 92:case 93:case 5:case 72:case 6:case 74:case 92:case 93:case 96:case 97:case 98:case 99:case 102:case 103:case 105:return 1;case 38:case 66:case 50:case 51:case 4:return 1024;case 15:case 64:case 41:return 32;case 55:case 37:case 17:return 2147483647;case 18:case 1:return 47839;case 59:case 57:return 99;case 68:case 58:return 2048;case 0:return 2097152;case 3:return 65536;case 14:return 32768;case 73:return 32767;case 39:return 16384;case 60:return 1e3;case 106:return 700;case 52:return 256;case 62:return 255;case 2:return 100;case 65:return 64;case 36:return 20;case 100:return 16;case 20:return 6;case 53:return 4}K(gd);return-1}function Dd(b){qe||(Ob=Ob+4095>>12<<12,qe=!0);var d=Ob;b!=0&&Gb(b);return d}var qe;function Td(){return!!Td.w}var Qd,Kd;function hd(b,d){m[re]=Ac(b&255);if(Jc(d,re,1)==-1&&d in M){M[d].error=!0}}function N(b){var d=o[$d>>2];Jc(d,b,yc(b))<0||hd("\n".charCodeAt(0),d)}K(0);uc.unshift({l:(function(){ce=!1;oe||ne()})});wc.push({l:(function(){oe&&(M[2]&&M[2].object.e.buffer.length>0&&M[2].object.e("\n".charCodeAt(0)),M[3]&&M[3].object.e.buffer.length>0&&M[3].object.e("\n".charCodeAt(0)))})});var Sd=C(12,"void*",A),re=C([0],"i8",A);Module.Qa=(function(b){function d(){for(var b=0;b<3;b++){e.push(0)}}var c=b.length+1,e=[C(pc("/bin/this.program"),"i8",A)];d();for(var f=0;f<c-1;f+=1){e.push(C(pc(b[f]),"i8",A)),d()}e.push(0);e=C(e,"i32",A);return jd(c,e)});var Hc,uc=uc.concat([{l:(function(){for(var b=0;;){var d=b>>>1,d=(b&1|0)==0?d:d^-306674912,c=d>>>1,d=(d&1|0)==0?c:c^-306674912,c=d>>>1,d=(d&1|0)==0?c:c^-306674912,c=d>>>1,d=(d&1|0)==0?c:c^-306674912,c=d>>>1,d=(d&1|0)==0?c:c^-306674912,c=d>>>1,d=(d&1|0)==0?c:c^-306674912,c=d>>>1,d=(d&1|0)==0?c:c^-306674912,c=d>>>1;o[Hc+(b<<2)>>2]=(d&1|0)==0?c:c^-306674912;b=b+1|0;if((b|0)==256){break}}})}]),bd,id,kd,td,ud,sd,Q,W,Ld,Md,Rd,Nd;Hc=C(1024,"i32",A);E.G=C([82,97,110,103,101,32,100,101,99,111,100,101,114,32,102,105,110,97,108,32,99,111,100,101,32,105,115,32,110,111,116,32,122,101,114,111,0],"i8",A);E.F=C([7,7,7,7,7,7,7,10,10,10,10,10],"i8",A);E.C=C([8,8,8,8,8,8,8,11,11,11,11,11],"i8",A);E.B=C([9,9,9,9,9,9,9,11,11,11,11,11],"i8",A);E.D=C([0,0,0,0,1,2,3,4,5,6,4,5],"i8",A);bd=C(1,"i32",A);E.H=C([37,115,58,32,37,115,0],"i8",A);E.K=C([58,32,37,115,0],"i8",A);id=C(1,"i8*",A);E.aa=C([84,114,121,32,96,37,115,32,45,45,104,101,108,112,39,32,102,111,114,32,109,111,114,101,32,105,110,102,111,114,109,97,116,105,111,110,46,10,0],"i8",A);E.ha=C([37,115,58,32,105,110,116,101,114,110,97,108,32,101,114,114,111,114,58,32,37,115,46,10,0],"i8",A);E.ia=C([117,110,99,97,117,103,104,116,32,111,112,116,105,111,110,0],"i8",A);kd=C(1,"i1",A);E.ka=C([67,97,110,39,116,32,99,108,111,115,101,32,115,116,100,111,117,116,0],"i8",A);E.la=C([69,114,114,111,114,32,114,101,97,100,105,110,103,32,109,101,109,98,101,114,32,104,101,97,100,101,114,0],"i8",A);E.ma=C([66,97,100,32,109,97,103,105,99,32,110,117,109,98,101,114,32,40,102,105,108,101,32,110,111,116,32,105,110,32,108,122,105,112,32,102,111,114,109,97,116,41,0],"i8",A);E.I=C([86,101,114,115,105,111,110,32,37,100,32,109,101,109,98,101,114,32,102,111,114,109,97,116,32,110,111,116,32,115,117,112,112,111,114,116,101,100,46,10,0],"i8",A);E.J=C([73,110,118,97,108,105,100,32,100,105,99,116,105,111,110,97,114,121,32,115,105,122,101,32,105,110,32,109,101,109,98,101,114,32,104,101,97,100,101,114,0],"i8",A);E.L=C([118,101,114,115,105,111,110,32,37,100,44,32,100,105,99,116,105,111,110,97,114,121,32,115,105,122,101,32,37,55,115,66,46,32,32,0],"i8",A);E.M=C([70,105,108,101,32,101,110,100,115,32,117,110,101,120,112,101,99,116,101,100,108,121,32,97,116,32,112,111,115,32,37,108,108,100,10,0],"i8",A);E.N=C([68,101,99,111,100,101,114,32,101,114,114,111,114,32,97,116,32,112,111,115,32,37,108,108,100,10,0],"i8",A);E.n=C([111,107,10,0],"i8",A);E.o=C([100,111,110,101,10,0],"i8",A);td=C(32,"*",A);E.O=C([75,105,0],"i8",A);E.P=C([77,105,0],"i8",A);E.Q=C([71,105,0],"i8",A);E.R=C([84,105,0],"i8",A);E.S=C([80,105,0],"i8",A);E.T=C([69,105,0],"i8",A);E.U=C([90,105,0],"i8",A);E.V=C([89,105,0],"i8",A);ud=C(16,"i8",A);sd=C(1,"i8",A);E.W=C([37,108,108,100,32,37,115,0],"i8",A);E.z=C([76,90,73,80],"i8",A);E.Y=C([73,32,119,111,110,39,116,32,119,114,105,116,101,32,99,111,109,112,114,101,115,115,101,100,32,100,97,116,97,32,116,111,32,97,32,116,101,114,109,105,110,97,108,46,0],"i8",A);E.Z=C([73,32,119,111,110,39,116,32,114,101,97,100,32,99,111,109,112,114,101,115,115,101,100,32,100,97,116,97,32,102,114,111,109,32,97,32,116,101,114,109,105,110,97,108,46,0],"i8",A);E.$=C([37,115,32,37,115,10,0],"i8",A);E.ba=C([49,46,49,50,0],"i8",A);E.ca=C([67,111,112,121,114,105,103,104,116,32,40,67,41,32,37,115,32,65,110,116,111,110,105,111,32,68,105,97,122,32,68,105,97,122,46,10,0],"i8",A);E.da=C([50,48,49,49,0],"i8",A);E.p=C([76,122,105,112,0],"i8",A);E.fa=C([37,115,32,45,32,68,97,116,97,32,99,111,109,112,114,101,115,115,111,114,32,98,97,115,101,100,32,111,110,32,116,104,101,32,76,90,77,65,32,97,108,103,111,114,105,116,104,109,46,10,0],"i8",A);E.ga=C([10,85,115,97,103,101,58,32,37,115,32,91,111,112,116,105,111,110,115,93,32,91,102,105,108,101,115,93,10,0],"i8",A);E.ja=C([73,102,32,110,111,32,102,105,108,101,32,110,97,109,101,115,32,97,114,101,32,103,105,118,101,110,44,32,37,115,32,99,111,109,112,114,101,115,115,101,115,32,111,114,32,100,101,99,111,109,112,114,101,115,115,101,115,10,0],"i8",A);E.i=C([108,122,105,112,0],"i8",A);Q=C(468,["i32",0,0,0,"i32",0,0,0,"i32",0,0,0,"i32",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"i32",0,0,0,"i32",0,0,0,"i32",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"i32",0,0,0,"i32",0,0,0,"i32",0,0,0,"*",0,0,0,"i32",0,0,0,"*",0,0,0,"i32",0,0,0,"*",0,0,0,"i32",0,0,0],A);W=C(24,"i32",A);Ld=C(1,"void ()*",A);Md=C([0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,6,0,0,0],["*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0],A);C(1,"void*",A);E.ea=C([115,116,100,58,58,98,97,100,95,97,108,108,111,99,0],"i8",A);E.A=C([83,116,57,98,97,100,95,97,108,108,111,99,0],"i8",A);Nd=C(12,"*",A);E.na=C([60,60,32,77,111,115,116,32,111,102,32,116,104,101,115,101,32,97,114,101,32,117,110,115,117,112,112,111,114,116,101,100,46,32,67,111,109,112,114,101,115,115,105,110,103,47,100,101,99,111,109,112,114,101,115,115,105,110,103,32,102,114,111,109,32,115,116,100,105,110,32,116,111,32,115,116,100,111,117,116,32,105,115,32,116,104,101,32,114,105,103,104,116,32,119,97,121,33,32,62,62,0],"i8",A);E.oa=C([10,79,112,116,105,111,110,115,58,0],"i8",A);E.za=C([32,32,45,104,44,32,45,45,104,101,108,112,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,100,105,115,112,108,97,121,32,116,104,105,115,32,104,101,108,112,32,97,110,100,32,101,120,105,116,0],"i8",A);E.Ia=C([32,32,45,86,44,32,45,45,118,101,114,115,105,111,110,32,32,32,32,32,32,32,32,32,32,32,32,32,32,111,117,116,112,117,116,32,118,101,114,115,105,111,110,32,105,110,102,111,114,109,97,116,105,111,110,32,97,110,100,32,101,120,105,116,0],"i8",A);E.Ja=C([32,32,45,98,44,32,45,45,109,101,109,98,101,114,45,115,105,122,101,61,60,110,62,32,32,32,32,32,32,115,101,116,32,109,101,109,98,101,114,32,115,105,122,101,32,108,105,109,105,116,32,105,110,32,98,121,116,101,115,0],"i8",A);E.Ka=C([32,32,45,99,44,32,45,45,115,116,100,111,117,116,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,115,101,110,100,32,111,117,116,112,117,116,32,116,111,32,115,116,97,110,100,97,114,100,32,111,117,116,112,117,116,0],"i8",A);E.La=C([32,32,45,100,44,32,45,45,100,101,99,111,109,112,114,101,115,115,32,32,32,32,32,32,32,32,32,32,32,100,101,99,111,109,112,114,101,115,115,0],"i8",A);E.Ma=C([32,32,45,102,44,32,45,45,102,111,114,99,101,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,111,118,101,114,119,114,105,116,101,32,101,120,105,115,116,105,110,103,32,111,117,116,112,117,116,32,102,105,108,101,115,0],"i8",A);E.Na=C([32,32,45,70,44,32,45,45,114,101,99,111,109,112,114,101,115,115,32,32,32,32,32,32,32,32,32,32,32,102,111,114,99,101,32,114,101,99,111,109,112,114,101,115,115,105,111,110,32,111,102,32,99,111,109,112,114,101,115,115,101,100,32,102,105,108,101,115,0],"i8",A);E.Oa=C([32,32,45,107,44,32,45,45,107,101,101,112,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,107,101,101,112,32,40,100,111,110,39,116,32,100,101,108,101,116,101,41,32,105,110,112,117,116,32,102,105,108,101,115,0],"i8",A);E.pa=C([32,32,45,109,44,32,45,45,109,97,116,99,104,45,108,101,110,103,116,104,61,60,110,62,32,32,32,32,32,115,101,116,32,109,97,116,99,104,32,108,101,110,103,116,104,32,108,105,109,105,116,32,105,110,32,98,121,116,101,115,32,91,51,54,93,0],"i8",A);E.qa=C([32,32,45,111,44,32,45,45,111,117,116,112,117,116,61,60,102,105,108,101,62,32,32,32,32,32,32,32,32,105,102,32,114,101,97,100,105,110,103,32,115,116,100,105,110,44,32,112,108,97,99,101,32,116,104,101,32,111,117,116,112,117,116,32,105,110,116,111,32,60,102,105,108,101,62,0],"i8",A);E.ra=C([32,32,45,113,44,32,45,45,113,117,105,101,116,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,115,117,112,112,114,101,115,115,32,97,108,108,32,109,101,115,115,97,103,101,115,0],"i8",A);E.sa=C([32,32,45,115,44,32,45,45,100,105,99,116,105,111,110,97,114,121,45,115,105,122,101,61,60,110,62,32,32,115,101,116,32,100,105,99,116,105,111,110,97,114,121,32,115,105,122,101,32,108,105,109,105,116,32,105,110,32,98,121,116,101,115,32,91,56,77,105,66,93,0],"i8",A);E.ta=C([32,32,45,83,44,32,45,45,118,111,108,117,109,101,45,115,105,122,101,61,60,110,62,32,32,32,32,32,32,115,101,116,32,118,111,108,117,109,101,32,115,105,122,101,32,108,105,109,105,116,32,105,110,32,98,121,116,101,115,0],"i8",A);E.ua=C([32,32,45,116,44,32,45,45,116,101,115,116,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,116,101,115,116,32,99,111,109,112,114,101,115,115,101,100,32,102,105,108,101,32,105,110,116,101,103,114,105,116,121,0],"i8",A);E.va=C([32,32,45,118,44,32,45,45,118,101,114,98,111,115,101,32,32,32,32,32,32,32,32,32,32,32,32,32,32,98,101,32,118,101,114,98,111,115,101,32,40,97,32,50,110,100,32,45,118,32,103,105,118,101,115,32,109,111,114,101,41,0],"i8",A);E.wa=C([32,32,45,48,32,46,46,32,45,57,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,115,101,116,32,99,111,109,112,114,101,115,115,105,111,110,32,108,101,118,101,108,32,91,100,101,102,97,117,108,116,32,54,93,0],"i8",A);E.xa=C([32,32,32,32,32,32,45,45,102,97,115,116,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,97,108,105,97,115,32,102,111,114,32,45,48,0],"i8",A);E.ya=C([32,32,32,32,32,32,45,45,98,101,115,116,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,97,108,105,97,115,32,102,111,114,32,45,57,0],"i8",A);E.Aa=C([102,114,111,109,32,115,116,97,110,100,97,114,100,32,105,110,112,117,116,32,116,111,32,115,116,97,110,100,97,114,100,32,111,117,116,112,117,116,46,0],"i8",A);E.Ba=C([78,117,109,98,101,114,115,32,109,97,121,32,98,101,32,102,111,108,108,111,119,101,100,32,98,121,32,97,32,109,117,108,116,105,112,108,105,101,114,58,32,107,32,61,32,107,66,32,61,32,49,48,94,51,32,61,32,49,48,48,48,44,0],"i8",A);E.Ca=C([75,105,32,61,32,75,105,66,32,61,32,50,94,49,48,32,61,32,49,48,50,52,44,32,77,32,61,32,49,48,94,54,44,32,77,105,32,61,32,50,94,50,48,44,32,71,32,61,32,49,48,94,57,44,32,71,105,32,61,32,50,94,51,48,44,32,101,116,99,46,46,46,0],"i8",A);E.Da=C([10,82,101,112,111,114,116,32,98,117,103,115,32,116,111,32,108,122,105,112,45,98,117,103,64,110,111,110,103,110,117,46,111,114,103,0],"i8",A);E.Ea=C([76,122,105,112,32,104,111,109,101,32,112,97,103,101,58,32,104,116,116,112,58,47,47,119,119,119,46,110,111,110,103,110,117,46,111,114,103,47,108,122,105,112,47,108,122,105,112,46,104,116,109,108,0],"i8",A);E.Fa=C([76,105,99,101,110,115,101,32,71,80,76,118,51,43,58,32,71,78,85,32,71,80,76,32,118,101,114,115,105,111,110,32,51,32,111,114,32,108,97,116,101,114,32,60,104,116,116,112,58,47,47,103,110,117,46,111,114,103,47,108,105,99,101,110,115,101,115,47,103,112,108,46,104,116,109,108,62,0],"i8",A);E.Ga=C([84,104,105,115,32,105,115,32,102,114,101,101,32,115,111,102,116,119,97,114,101,58,32,121,111,117,32,97,114,101,32,102,114,101,101,32,116,111,32,99,104,97,110,103,101,32,97,110,100,32,114,101,100,105,115,116,114,105,98,117,116,101,32,105,116,46,0],"i8",A);E.Ha=C([84,104,101,114,101,32,105,115,32,78,79,32,87,65,82,82,65,78,84,89,44,32,116,111,32,116,104,101,32,101,120,116,101,110,116,32,112,101,114,109,105,116,116,101,100,32,98,121,32,108,97,119,46,0],"i8",A);o[td>>2]=E.O|0;o[td+4>>2]=E.P|0;o[td+8>>2]=E.Q|0;o[td+12>>2]=E.R|0;o[td+16>>2]=E.S|0;o[td+20>>2]=E.T|0;o[td+24>>2]=E.U|0;o[td+28>>2]=E.V|0;o[Md+4>>2]=Nd;Rd=C([2,0,0,0,0],["i8*",0,0,0,0],A);o[Nd>>2]=Rd+8|0;o[Nd+4>>2]=E.A|0;o[Nd+8>>2]=ba;kc=[0,0,Jd,0,(function(b){Jd(b);wd(b)}),0,(function(){return E.ea|0}),0];Module.FUNCTION_TABLE=kc;function se(b){b=b||Module.arguments;tc(uc);var d=j;Module._main&&(d=Module.Qa(b),Module.noExitRuntime||tc(wc));return d}Module.run=se;Module.preRun&&Module.preRun();se();Module.postRun&&Module.postRun()
+function a(b){throw b}var ca=void 0,j=!0,l=null,m=!1;try{this.Module=Module}catch(ka){this.Module=Module={}}var la="object"===typeof process,sa="object"===typeof window,Ca="function"===typeof importScripts,Ka=!sa&&!la&&!Ca;if(la){Module.print=(function(b){process.stdout.write(b+"\n")});Module.printErr=(function(b){process.stderr.write(b+"\n")});var bb=require("fs");Module.read=(function(b){var d=bb.readFileSync(b).toString();!d&&"/"!=b[0]&&(b=__dirname.split("/").slice(0,-1).join("/")+"/src/"+b,d=bb.readFileSync(b).toString());return d});Module.load=(function(b){cb(read(b))});Module.arguments=process.argv.slice(2)}else{Ka?(Module.print=print,Module.printErr=printErr,Module.read="undefined"!=typeof read?read:(function(b){snarf(b)}),"undefined"!=typeof scriptArgs?Module.arguments=scriptArgs:"undefined"!=typeof arguments&&(Module.arguments=arguments)):sa?(Module.print||(Module.print=(function(b){console.log(b)})),Module.printErr||(Module.printErr=(function(b){console.log(b)})),Module.read=(function(b){var d=new XMLHttpRequest;d.open("GET",b,m);d.send(l);return d.responseText}),"undefined"!=typeof arguments&&(Module.arguments=arguments)):Ca?Module.load=importScripts:a("Unknown runtime environment. Where are we?")}function cb(b){eval.call(l,b)}"undefined"==!Module.load&&Module.read&&(Module.load=(function(b){cb(Module.read(b))}));Module.printErr||(Module.printErr=(function(){}));Module.print||(Module.print=Module.printErr);Module.arguments||(Module.arguments=[]);function db(b){if(1==vb){return 1}var d={"%i1":1,"%i8":1,"%i16":2,"%i32":4,"%i64":8,"%float":4,"%double":8}["%"+b];d||("*"==b[b.length-1]?d=vb:"i"==b[0]&&(b=parseInt(b.substr(1)),wb(0==b%8),d=b/8));return d}function xb(b){var d=n;n+=b;n=n+3>>2<<2;return d}function Hb(b){var d=Ib;Ib+=b;Ib=Ib+3>>2<<2;if(Ib>=Qb){for(;Qb<=Ib;){Qb=2*Qb+4095>>12<<12}var b=p,c=new ArrayBuffer(Qb);p=new Int8Array(c);Rb=new Int16Array(c);r=new Int32Array(c);s=new Uint8Array(c);Sb=new Uint16Array(c);z=new Uint32Array(c);Tb=new Float32Array(c);Ub=new Float64Array(c);p.set(b)}return d}var vb=4,Vb={},Yb,B,Zb;function $b(b){Module.print(b+":\n"+Error().stack);a("Assertion: "+b)}function wb(b,d){b||$b("Assertion failed: "+d)}var bc=this;Module.ccall=(function(b,d,c,e){try{var f=eval("_"+b)}catch(i){try{f=bc.Module["_"+b]}catch(h){}}wb(f,"Cannot call unknown function "+b+" (perhaps LLVM optimizations or closure removed it?)");var g=0,b=e?e.map((function(b){if("string"==c[g++]){var d=n;xb(b.length+1);cc(b,d);b=d}return b})):[];return(function(b,c){return"string"==c?dc(b):b})(f.apply(l,b),d)});function ec(b,d,c){c=c||"i8";"*"===c[c.length-1]&&(c="i32");switch(c){case"i1":p[b]=d;break;case"i8":p[b]=d;break;case"i16":Rb[b>>1]=d;break;case"i32":r[b>>2]=d;break;case"i64":r[b>>2]=d;break;case"float":Tb[b>>2]=d;break;case"double":fc[0]=d;r[b>>2]=gc[0];r[b+4>>2]=gc[1];break;default:$b("invalid type for setValue: "+c)}}Module.setValue=ec;Module.getValue=(function(b,d){d=d||"i8";"*"===d[d.length-1]&&(d="i32");switch(d){case"i1":return p[b];case"i8":return p[b];case"i16":return Rb[b>>1];case"i32":return r[b>>2];case"i64":return r[b>>2];case"float":return Tb[b>>2];case"double":return gc[0]=r[b>>2],gc[1]=r[b+4>>2],fc[0];default:$b("invalid type for setValue: "+d)}return l});var hc=1,D=2;Module.ALLOC_NORMAL=0;Module.ALLOC_STACK=hc;Module.ALLOC_STATIC=D;function F(b,d,c){var e,f;"number"===typeof b?(e=j,f=b):(e=m,f=b.length);var i="string"===typeof d?d:l,c=[ic,xb,Hb][c===ca?D:c](Math.max(f,i?1:d.length));if(e){return jc(c,f),c}e=0;for(var h;e<f;){var g=b[e];"function"===typeof g&&(g=Vb.Ua(g));h=i||d[e];0===h?e++:("i64"==h&&(h="i32"),ec(c+e,g,h),e+=db(h))}return c}Module.allocate=F;function dc(b,d){for(var c="undefined"==typeof d,e="",f=0,i,h=String.fromCharCode(0);;){i=String.fromCharCode(s[b+f]);if(c&&i==h){break}e+=i;f+=1;if(!c&&f==d){break}}return e}Module.Pointer_stringify=dc;Module.Array_stringify=(function(b){for(var d="",c=0;c<b.length;c++){d+=String.fromCharCode(b[c])}return d});var lc,mc=4096,p,s,Rb,Sb,r,z,Tb,Ub,n,nc,Ib,oc=Module.TOTAL_STACK||5242880,Qb=Module.TOTAL_MEMORY||10485760;wb(!!Int32Array&&!!Float64Array&&!!(new Int32Array(1)).subarray&&!!(new Int32Array(1)).set,"Cannot fallback to non-typed array case: Code is too specialized");var pc=new ArrayBuffer(Qb);p=new Int8Array(pc);Rb=new Int16Array(pc);r=new Int32Array(pc);s=new Uint8Array(pc);Sb=new Uint16Array(pc);z=new Uint32Array(pc);Tb=new Float32Array(pc);Ub=new Float64Array(pc);r[0]=255;wb(255===s[0]&&0===s[3],"Typed arrays 2 must be run on a little-endian system");var rc=qc("(null)");Ib=rc.length;for(var sc=0;sc<rc.length;sc++){p[sc]=rc[sc]}Module.HEAP=ca;Module.HEAP8=p;Module.HEAP16=Rb;Module.HEAP32=r;Module.HEAPU8=s;Module.HEAPU16=Sb;Module.HEAPU32=z;Module.HEAPF32=Tb;Module.HEAPF64=Ub;nc=(n=4*Math.ceil(Ib/4))+oc;var tc=8*Math.ceil(nc/8);p.subarray(tc);var gc=r.subarray(tc>>2);Tb.subarray(tc>>2);var fc=Ub.subarray(tc>>3);nc=tc+8;Ib=nc+4095>>12<<12;function uc(b){for(;0<b.length;){var d=b.shift(),c=d.l;"number"===typeof c&&(c=lc[c]);c(d.Pa===ca?l:d.Pa)}}var vc=[],yc=[];function zc(b,d){return Array.prototype.slice.call(p.subarray(b,b+d))}Module.Array_copy=zc;Module.TypedArray_copy=(function(b,d){for(var c=new Uint8Array(d),e=0;e<d;++e){c[e]=p[b+e]}return c.buffer});function Ac(b){for(var d=0;p[b+d];){d++}return d}Module.String_len=Ac;function Bc(b,d){var c=Ac(b);d&&c++;var e=zc(b,c);d&&(e[c-1]=0);return e}Module.String_copy=Bc;function qc(b,d){for(var c=[],e=0;e<b.length;){var f=b.charCodeAt(e);255<f&&(f&=255);c.push(f);e+=1}d||c.push(0);return c}Module.intArrayFromString=qc;Module.intArrayToString=(function(b){for(var d=[],c=0;c<b.length;c++){var e=b[c];255<e&&(e&=255);d.push(String.fromCharCode(e))}return d.join("")});function cc(b,d,c){for(var e=0;e<b.length;){var f=b.charCodeAt(e);255<f&&(f&=255);p[d+e]=f;e+=1}c||(p[d+e]=0)}Module.writeStringToMemory=cc;var I=[];function Cc(b,d){return 0<=b?b:32>=d?2*Math.abs(1<<d-1)+b:Math.pow(2,d)+b}function Dc(b,d){if(0>=b){return b}var c=32>=d?Math.abs(1<<d-1):Math.pow(2,d-1);if(b>=c&&(32>=d||b>c)){b=-2*c+b}return b}function Ec(b,d,c){var e=0>(c|0)?-1:0,f=(c>>>0)+4294967296*(e|0)+(b>>>0)+4294967296*(d|0)>>>0,b=Math.min(Math.floor(((c>>>0)+4294967296*(e|0)+(b>>>0)+4294967296*(d|0))/4294967296),4294967295);return[f,b]}function Fc(b,d,c){var e=0>(c|0)?-1:0,f=(c>>>0)+4294967296*(e|0)+(b>>>0)+4294967296*(d|0)>>>0,b=Math.min(Math.floor(((c>>>0)+4294967296*(e|0)+(b>>>0)+4294967296*(d|0))/4294967296),4294967295);return[f,b]}function Gc(b){var d=p[b+11|0],c=p[b+10|0]|d<<8|0,e=p[b+9|0]|c<<8|0,f=p[b+8|0]|e<<8|0,i=p[b+7|0]|f<<8|0,h=p[b+6|0]|i<<8|0,g=p[b+5|0]|h<<8|0;return[p[b+4|0]|g<<8|0,0|((((((0|d>>>24)<<8|c>>>24)<<8|e>>>24)<<8|f>>>24)<<8|i>>>24)<<8|h>>>24)<<8|g>>>24]}Gc.X=1;function Hc(b){var d=p[b+19|0],c=p[b+18|0]|d<<8|0,e=p[b+17|0]|c<<8|0,f=p[b+16|0]|e<<8|0,i=p[b+15|0]|f<<8|0,h=p[b+14|0]|i<<8|0,g=p[b+13|0]|h<<8|0;return[p[b+12|0]|g<<8|0,0|((((((0|d>>>24)<<8|c>>>24)<<8|e>>>24)<<8|f>>>24)<<8|i>>>24)<<8|h>>>24)<<8|g>>>24]}Hc.X=1;function Ic(b){var d,c;c=(b+20|0)>>2;d=(b+24|0)>>2;var e=r[d],f=r[c]-e|0;if(0<(f|0)){var i=b+16|0,h=b+28|0,e=r[i>>2]+e|0,g=0<(f|0);a:do{if(g){for(var k=0,o=r[h>>2];;){if(o=r[Jc+((s[e+k|0]&255^o&255)<<2)>>2]^o>>>8,r[h>>2]=o,k=k+1|0,(k|0)==(f|0)){break a}}}}while(0);h=r[b+32>>2];if(e=-1<(h|0)){i=r[i>>2]+r[d]|0;r[Kc>>2]=0;e=f;a:for(;;){g=i+(f-e)|0;if(0>=(e|0)){var w=0;break}for(;;){r[Kc>>2]=0;var t=Lc(h,g,e);if(0<(t|0)){break}if(0!=(r[Kc>>2]|0)&&4!=(r[Kc>>2]|0)&&11!=(r[Kc>>2]|0)){w=e;break a}}e=e-t|0}e=(f-w|0)!=(f|0)}e&&Mc(-1);f=r[c];(f|0)<(r[b+12>>2]|0)?c=f:(w=0>(f|0)?-1:0,b=(b|0)>>2,i=r[b],h=r[b+1],t=(i>>>0)+4294967296*(h|0)+(f>>>0)+4294967296*(w|0)>>>0,f=Math.min(Math.floor(((i>>>0)+4294967296*(h|0)+(f>>>0)+4294967296*(w|0))/4294967296),4294967295),r[b]=t,r[b+1]=f,c=r[c]=0);r[d]=c}}function Nc(b){var d,c=n;n+=20;var e=b+36|0,f=0<(r[e>>2]|0)?20:12;d=(b+40|0)>>2;for(var i=r[d],h=i|0,i=Ec(r[h>>2],r[h+4>>2],r[i+12>>2]),h=i[0],g=i[1],k=0>(f|0)?-1:0,i=(h>>>0)+4294967296*(g|0)+(f>>>0)+4294967296*(k|0)>>>0,h=Math.min(Math.floor(((h>>>0)+4294967296*(g|0)+(f>>>0)+4294967296*(k|0))/4294967296),4294967295),k=g=0;(g|0)<(f|0);){if(0!=(k&1)<<24>>24){break}if(Oc(r[d])){jc(c+g|0,f-g|0),g=f,k=1}else{var o=Pc(r[d]);p[c+g|0]=o}g=g+1|0}0==(r[e>>2]|0)&&(p[c+12|0]=i&255,p[c+13|0]=(i>>>8|h<<24)&255,p[c+14|0]=(i>>>16|h<<16)&255,p[c+15|0]=(i>>>24|h<<8)&255,p[c+16|0]=h&255,p[c+17|0]=(h>>>8|0)&255,p[c+18|0]=(h>>>16|0)&255,p[c+19|0]=(h>>>24|0)&255);0==(r[r[d]+20>>2]|0)?d=k:(Qc(I.G|0),d=1);e=(s[c|0]&255|(s[c+1|0]&255|(s[c+2|0]&255|(s[c+3|0]&255)<<8)<<8)<<8|0)==(r[b+28>>2]^-1|0);g=Gc(c);f=g[0];g=g[1];k=b|0;b=Fc(r[k>>2],r[k+4>>2],r[b+20>>2]);k=Hc(c);b=(k[0]==i&&k[1]==h)&(f==b[0]&&g==b[1])&e&0==(d&1)<<24>>24;n=c;return b}Nc.X=1;function Oc(b){if((r[b+12>>2]|0)<(r[b+16>>2]|0)){b=0}else{var d=b+32|0;if(0==(p[d]&1)<<24>>24){var c;c=r[b+28>>2];var e=r[b+8>>2];r[Kc>>2]=0;var f=16384;a:for(;;){var i=e+(16384-f)|0;if(0>=(f|0)){var h=0;break}for(;;){r[Kc>>2]=0;var g=Rc(c,i,f);if(0<(g|0)){break}if(0==(g|0)){h=f;break a}if(4!=(r[Kc>>2]|0)&&11!=(r[Kc>>2]|0)){h=f;break a}}f=f-g|0}c=16384-h|0;e=b+16|0;r[e>>2]=c;16384!=(c|0)&&0!=(r[Kc>>2]|0)&&Mc(-1);c=z[e>>2];p[d]=16384>(c|0)&1;d=b+12|0;e=r[d>>2];f=0>(e|0)?-1:0;b=(b|0)>>2;h=r[b];g=r[b+1];i=(h>>>0)+4294967296*(g|0)+(e>>>0)+4294967296*(f|0)>>>0;e=Math.min(Math.floor(((h>>>0)+4294967296*(g|0)+(e>>>0)+4294967296*(f|0))/4294967296),4294967295);r[b]=i;r[b+1]=e;d=r[d>>2]=0;b=c}else{d=r[b+12>>2],b=r[b+16>>2]}b=(d|0)<(b|0)^1}return b}function Pc(b){if(Oc(b)){b=85}else{var d=b+12|0,c=r[d>>2];r[d>>2]=c+1|0;b=p[r[b+8>>2]+c|0]}return b}function Sc(b){var d,c=n;n+=29280;for(var e,f=c+192,i=c+240,h=c+288,g=c+336,k=c+384,o=c+576,w=c+1600,t=c+2060,A=c+2124,y=c+3412,C=c+4700,v=c+29276,u=c+192|0,x=c|0;;){J(x);var q=x+4|0;if((q|0)==(u|0)){break}x=q}J(f|0);J(f+4|0);J(f+8|0);J(f+12|0);J(f+16|0);J(f+20|0);J(f+24|0);J(f+28|0);J(f+32|0);J(f+36|0);J(f+40|0);J(f+44|0);J(i|0);J(i+4|0);J(i+8|0);J(i+12|0);J(i+16|0);J(i+20|0);J(i+24|0);J(i+28|0);J(i+32|0);J(i+36|0);J(i+40|0);J(i+44|0);J(h|0);J(h+4|0);J(h+8|0);J(h+12|0);J(h+16|0);J(h+20|0);J(h+24|0);J(h+28|0);J(h+32|0);J(h+36|0);J(h+40|0);J(h+44|0);J(g|0);J(g+4|0);J(g+8|0);J(g+12|0);J(g+16|0);J(g+20|0);J(g+24|0);J(g+28|0);J(g+32|0);J(g+36|0);J(g+40|0);J(g+44|0);for(var E=k+192|0,G=k|0;;){J(G);var M=G+4|0;if((M|0)==(E|0)){break}G=M}for(var W=o+1024|0,H=o|0;;){J(H);var Q=H+4|0;if((Q|0)==(W|0)){break}H=Q}for(var K=w+460|0,V=w|0;;){J(V);var Da=V+4|0;if((Da|0)==(K|0)){break}V=Da}var qa=t|0;J(qa);J(t+4|0);J(t+8|0);J(t+12|0);J(t+16|0);J(t+20|0);J(t+24|0);J(t+28|0);J(t+32|0);J(t+36|0);J(t+40|0);J(t+44|0);J(t+48|0);J(t+52|0);J(t+56|0);J(t+60|0);Tc(A);Tc(y);for(var yb=C+24576|0,eb=C|0;;){J(eb);var La=eb+4|0;if((La|0)==(yb|0)){break}eb=La}p[v|0]=0;d=(b+40|0)>>2;Uc(r[d]);var Ea=b+8|0,Ma=b+20|0,fb=b|0,zb=v|0,$=0,ma=0,fa=0,S=0;a:for(;;){b:for(;;){if(Oc(r[d])){Ic(b);var na=2;break a}var oa=fb|0,gb=fb+4|0,Na=Fc(r[oa>>2],r[gb>>2],r[Ma>>2])[0]&3,Ab=s[zb],ra=Ab&255;if(0==(Vc(r[d],(ra<<4)+(Na<<2)+c|0)|0)){var Oa,Jb=r[b+20>>2];Oa=p[r[b+16>>2]+((0<(Jb|0)?Jb:r[b+12>>2])-1)|0];var U=r[d];if(7>(Ab&255)){var aa=Wc(U,C+3072*((Oa&255)>>5)|0,8)&255;Xc(b,aa)}else{for(var ta=r[b+20>>2]-$-1|0,Fa=U,Pa=C+3072*((Oa&255)>>5)|0,hb=p[r[b+16>>2]+(0>(ta|0)?r[b+12>>2]+ta|0:ta)|0]&255,ib=ca,Y=7,jb=1;;){if(-1>=(Y|0)){var Qa=jb,ib=7;break}var Ra=hb>>>(Y>>>0)&1,Sa=Vc(Fa,((Ra<<8)+jb+256<<2)+Pa|0),kb=Sa|jb<<1;if((Ra|0)!=(Sa|0)){ib=4;break}Y=Y-1|0;jb=kb}c:do{if(4==ib){if(0<(Y|0)){for(var ua=kb,va=Y;;){var Ta=va-1|0,Bb=ua<<1,lb=Vc(Fa,(ua<<2)+Pa|0)|Bb;if(0>=(Ta|0)){Qa=lb;break c}ua=lb;va=Ta}}else{Qa=kb}}}while(0);Xc(b,Qa&255)}var ga=v|0;p[ga]=p[I.D+(s[ga]&255)|0]}else{var Ga=Vc(r[d],(ra<<2)+f|0),Wb=z[d];if(1==(Ga|0)){var Kb=1==(Vc(Wb,(ra<<2)+i|0)|0),Cb=r[d];do{if(!Kb){if(0!=(Vc(Cb,(ra<<4)+(Na<<2)+k|0)|0)){var mb=$,nb=ma,N=fa,da=S;break}var ba=v|0;p[ba]=p[I.B+(s[ba]&255)|0];var Ha=$,Ua=ma,Va=fa,Wa=S,wa=1;e=37;break b}if(0==(Vc(Cb,(ra<<2)+h|0)|0)){mb=ma,nb=$,N=fa,da=S}else{var Lb=0==(Vc(r[d],(ra<<2)+g|0)|0),Mb=Lb?S:fa,mb=Lb?fa:S,nb=$,N=ma,da=Mb}}while(0);var Nb=v|0;p[Nb]=p[I.C+(s[Nb]&255)|0];var Xb=Yc(y,r[d],Na),Ha=mb,Ua=nb,Va=N,Wa=da,wa=Xb+2|0;e=37;break}var Xa=Yc(A,Wb,Na),ha=Xa+2|0,Z=ha-2|0,xa=Wc(r[d],((3<(Z|0)?3:Z)<<8)+o|0,6);if(4>(xa|0)){var ya=xa;e=33;break}var Db=xa>>1,ob=Db-1|0,Ya=(xa&1|2)<<ob,Eb=r[d];if(14>(xa|0)){ya=Zc(Eb,(Ya-xa<<2)+w|0,ob)+Ya|0;e=33;break}var pb=Eb,qb=Db-5|0,ia=ca,za=ca,Aa=0<(qb|0);c:do{if(Aa){for(var za=(pb+24|0)>>2,ia=(pb+20|0)>>2,ja=0,rb=qb,ea=r[za];;){var Za=ja<<1;if(16777216>ea>>>0){r[za]=ea<<7;var Ob=r[ia]<<8,sb=Pc(pb)&255|Ob;r[ia]=sb;var Ia=z[za];if(sb>>>0<Ia>>>0){var Ja=Za,tb=Ia}else{r[ia]=sb-Ia|0,Ja=Za|1,tb=Ia}}else{var $a=ea>>>1;r[za]=$a;var Fb=z[ia];Fb>>>0<$a>>>0?Ja=Za:(r[ia]=Fb-$a|0,Ja=Za|1);tb=$a}var pa=rb-1|0;if(0>=(pa|0)){var Gb=Ja;break c}ja=Ja;rb=pa;ea=tb}}else{Gb=0}}while(0);var ub=Gb<<4,Ba=Zc(r[d],qa,4),Pb=ub+Ya+Ba|0;if(-1!=(Pb|0)){ya=Pb;e=33;break}$c(r[d]);Ic(b);if(0==(Xa|0)){na=Nc(b)?0:3;break a}if(3!=(ha|0)){na=4;break a}Uc(r[d])}}do{if(33==e){var ab=v|0;p[ab]=p[I.F+(s[ab]&255)|0];if(ya>>>0<z[Ea>>2]>>>0){if(ya>>>0<z[Ma>>2]>>>0){Ha=ya;Ua=$;Va=ma;Wa=fa;wa=ha;break}oa=fb|0;gb=fb+4|0;if(!(0==r[oa>>2]&&0==r[gb>>2])){Ha=ya;Ua=$;Va=ma;Wa=fa;wa=ha;break}}Ic(b);na=1;break a}}while(0);ad(b,Ha,wa);$=Ha;ma=Ua;fa=Va;S=Wa}n=c;return na}Sc.X=1;function Uc(b){var d;d=(b+20|0)>>2;r[d]=0;r[b+24>>2]=-1;var c=Pc(b)&255;r[d]=c;c=Pc(b)&255|c<<8;r[d]=c;c=Pc(b)&255|c<<8;r[d]=c;c=Pc(b)&255|c<<8;r[d]=c;c<<=8;b=Pc(b);r[d]=b&255|c}function J(b){r[b>>2]=1024}function Vc(b,d){var c,e;$c(b);e=(b+24|0)>>2;var f=z[e];c=(d|0)>>2;var i=(f>>>11)*r[c]|0,h=b+20|0,g=z[h>>2];g>>>0<i>>>0?(r[e]=i,f=z[c],e=0,f=((2048-f|0)>>>5)+f|0):(r[e]=f-i|0,r[h>>2]=g-i|0,f=z[c],e=1,f=f-(f>>>5)|0);r[c]=f;return e}function Xc(b,d){var c;c=(b+20|0)>>2;p[r[b+16>>2]+r[c]|0]=d;var e=r[c]+1|0;r[c]=e;(e|0)<(r[b+12>>2]|0)||Ic(b)}function Yc(b,d,c){return 0==(Vc(d,b|0)|0)?Wc(d,(c<<5)+b+8|0,3):0==(Vc(d,b+4|0)|0)?Wc(d,(c<<5)+b+136|0,3)+8|0:Wc(d,b+264|0,8)+16|0}function Wc(b,d,c){var e=0<(c|0);a:do{if(e){for(var f=1,i=c;;){var h=f<<1,f=Vc(b,(f<<2)+d|0)|h,i=i-1|0;if(0>=(i|0)){var g=f;break a}}}else{g=1}}while(0);return g-(1<<c)|0}function Zc(b,d,c){var e=0<(c|0);a:do{if(e){for(var f=1,i=0,h=0;;){var g=Vc(b,(f<<2)+d|0),f=f<<1;0!=(g|0)&&(i|=1<<h,f|=1);h=h+1|0;if((h|0)==(c|0)){var k=i;break a}}}else{k=0}}while(0);return k}function $c(b){var d=b+24|0,c=z[d>>2];16777216>c>>>0&&(r[d>>2]=c<<8,d=b+20|0,c=r[d>>2]<<8,b=Pc(b)&255|c,r[d>>2]=b)}function ad(b,d,c){var e,f;e=(b+20|0)>>2;var i=r[e],h=i-d-1|0,d=(b+12|0)>>2;f=r[d];h=h+(0>(h|0)?f:0)|0;if((f-((i|0)>(h|0)?i:h)|0)>(c|0)){if(f=i-h|0,((-1<(f|0)?f:-f|0)|0)<(c|0)){f=3}else{f=r[b+16>>2];var g=f+i|0,k=f+h|0;f=c;if(20<=f&&k%2==g%2){if(k%4==g%4){for(f=k+f;k%4;){p[g++]=p[k++]}for(var k=k>>2,g=g>>2,o=f>>2;k<o;){r[g++]=r[k++]}k<<=2;for(g<<=2;k<f;){p[g++]=p[k++]}}else{f=k+f;k%2&&(p[g++]=p[k++]);k>>=1;g>>=1;for(o=f>>1;k<o;){Rb[g++]=Rb[k++]}k<<=1;g<<=1;k<f&&(p[g++]=p[k++])}}else{for(;f--;){p[g++]=p[k++]}}r[e]=r[e]+c|0;f=10}}else{f=3}a:do{if(3==f&&0<(c|0)){for(var g=b+16|0,k=c,o=h,w=i;;){var t=r[g>>2];p[t+w|0]=p[t+o|0];w=r[e]+1|0;r[e]=w;t=r[d];(w|0)<(t|0)?w=t:(Ic(b),w=r[d]);o=o+1|0;k=k-1|0;if(0>=(k|0)){break a}o=(o|0)<(w|0)?o:0;w=r[e]}}}while(0)}ad.X=1;function Tc(b){J(b|0);J(b+4|0);J(b+8|0);J(b+12|0);J(b+16|0);J(b+20|0);J(b+24|0);J(b+28|0);J(b+32|0);J(b+36|0);J(b+40|0);J(b+44|0);J(b+48|0);J(b+52|0);J(b+56|0);J(b+60|0);J(b+64|0);J(b+68|0);J(b+72|0);J(b+76|0);J(b+80|0);J(b+84|0);J(b+88|0);J(b+92|0);J(b+96|0);J(b+100|0);J(b+104|0);J(b+108|0);J(b+112|0);J(b+116|0);J(b+120|0);J(b+124|0);J(b+128|0);J(b+132|0);J(b+136|0);J(b+140|0);J(b+144|0);J(b+148|0);J(b+152|0);J(b+156|0);J(b+160|0);J(b+164|0);J(b+168|0);J(b+172|0);J(b+176|0);J(b+180|0);J(b+184|0);J(b+188|0);J(b+192|0);J(b+196|0);J(b+200|0);J(b+204|0);J(b+208|0);J(b+212|0);J(b+216|0);J(b+220|0);J(b+224|0);J(b+228|0);J(b+232|0);J(b+236|0);J(b+240|0);J(b+244|0);J(b+248|0);J(b+252|0);J(b+256|0);J(b+260|0);for(var d=b+1288|0,b=b+264|0;!(J(b),b=b+4|0,(b|0)==(d|0));){}}Tc.X=1;function Qc(b){0!=(b|0)&&Lc(r[r[bd>>2]+12>>2],b,Ac(b))}function cd(b,d,c){if(-1<(r[dd>>2]|0)){if(0!=(b|0)&&0!=p[b]<<24>>24){ed(r[r[bd>>2]+12>>2],I.H|0,(B=n,n+=8,r[B>>2]=I.i|0,r[B+4>>2]=b,B));if(0<(d|0)){var b=r[r[bd>>2]+12>>2],e;fd||(fd=ic(256));e=fd;if(d in gd){if(255<gd[d].length){L(hd)}else{for(var d=gd[d],f=0;f<d.length;f++){p[e+f]=d.charCodeAt(f)}p[e+f]=0}}else{L(id)}e=fd;ed(b,I.K|0,(B=n,n+=4,r[B>>2]=e,B))}jd(r[r[bd>>2]+12>>2])}b=r[kd>>2];0!=(b|0)&c&&0!=p[b]<<24>>24&&ed(r[r[bd>>2]+12>>2],I.aa|0,(B=n,n+=4,r[B>>2]=b,B))}}function ld(b,d){r[kd>>2]=r[d>>2];var c=1,e=0;a:for(;;){if((c|0)>=(b|0)){(c=2==(e|0))&&(p[md]=0);p[md]=1;var f=ca;if(0==(e|0)&s[md]){if(0==(nd(2)|0)){f=4}else{cd(I.Y|0,0,1);var i=0,f=7}}else{f=4}4==f&&(2>(e-1|0)>>>0?0==(nd(1)|0)?i=1:(cd(I.Z|0,0,1),i=0):i=1);if(!i){f=1;break}i=od(c);i=0<(i|0)?i:0;if(!s[md]){f=i;break}O[2]?(O[2].Ra&&pd(O[2].Ra),delete O[2],e=0):(L(qd),e=-1);if(0==(e|0)){f=i;break}cd(I.ka|0,r[Kc>>2],0);if(1<=(i|0)){f=i;break}f=1;break}var h=p[r[d+(c<<2)>>2]+1|0]<<24>>24;do{if(99==(h|0)||107==(h|0)){var g=e}else{if(100==(h|0)){g=1}else{if(104==(h|0)){i=n;rd(I.fa|0,(B=n,n+=4,r[B>>2]=I.p|0,B));P(I.na|0);e=r[kd>>2];rd(I.ga|0,(B=n,n+=4,r[B>>2]=e,B));P(I.oa|0);P(I.za|0);P(I.Ia|0);P(I.Ja|0);P(I.Ka|0);P(I.La|0);P(I.Ma|0);P(I.Na|0);P(I.Oa|0);P(I.pa|0);P(I.qa|0);P(I.ra|0);P(I.sa|0);P(I.ta|0);P(I.ua|0);P(I.va|0);P(I.wa|0);P(I.xa|0);P(I.ya|0);rd(I.ja|0,(B=n,n+=4,r[B>>2]=I.i|0,B));P(I.Aa|0);P(I.Ba|0);P(I.Ca|0);P(I.Da|0);P(I.Ea|0);n=i;f=0;break a}else{if(113==(h|0)){r[dd>>2]=-1,g=e}else{if(118==(h|0)){g=r[dd>>2],4>(g|0)&&(r[dd>>2]=g+1|0),g=e}else{if(86==(h|0)){i=n;rd(I.$|0,(B=n,n+=8,r[B>>2]=I.p|0,r[B+4>>2]=I.ba|0,B));rd(I.ca|0,(B=n,n+=4,r[B>>2]=I.da|0,B));P(I.Fa|0);P(I.Ga|0);P(I.Ha|0);n=i;f=0;break a}else{-1<(r[dd>>2]|0)&&ed(r[r[bd>>2]+12>>2],I.ha|0,(B=n,n+=8,r[B>>2]=I.i|0,r[B+4>>2]=I.ia|0,B)),Mc(3),g=e}}}}}}}while(0);c=c+1|0;e=g}return f}Module._main=ld;ld.X=1;function sd(b){var b=b&255,d=1<<(b&31);return 536866816>(d-4097|0)>>>0?d-d/16*(b>>>5)|0:d}function od(b){var d=n;n+=88;var c,e=d+36,f=d+44,i=d>>2,h=d|0;r[h>>2]=0;r[h+4>>2]=0;var h=d+8|0,g=td(16384);r[h>>2]=g;r[i+3]=0;r[i+4]=0;r[i+5]=0;r[i+6]=-1;r[i+7]=1;p[d+32|0]=0;for(var h=e+4|0,g=e+5|0,k=d|0,o=d+12|0,i=f+16|0,w=0,t=0,A=1;;){c=-r[d+12>>2]|0;var y=0>(c|0)?-1:0,C=d|0;r[C>>2]=c;r[C+4>>2]=y;for(c=0;6>(c|0);){if(Oc(d)){break}y=Pc(d);p[e+c|0]=y;c=c+1|0}if(Oc(d)){if(!A){c=41;break}Qc(I.la|0);var v=1;c=45;break}a:{c=I.z|0;for(y=0;4>y;y++){var C=p[(e|0)+y],u=p[c+y];if(C!=u){c=C>u?1:-1;break a}}c=0}if(0!=(c|0)){if(!A){c=41;break}Qc(I.ma|0);v=2;c=45;break}y=s[h];if(2<=(y&255)){if(-1>=(r[dd>>2]|0)){v=2;c=45;break}Qc(0);v=y&255;ed(r[r[bd>>2]+12>>2],I.I|0,(B=n,n+=4,r[B>>2]=v,B));v=2;c=45;break}u=sd(p[g]);if(536866816<(u-4096|0)>>>0){Qc(I.J|0);v=2;c=45;break}c=r[dd>>2];c=1<(c|0)?25:1!=(c|0)|A^1?27:25;if(25==c&&(Qc(0),1<(r[dd>>2]|0))){for(var A=r[r[bd>>2]+12>>2],C=0>(u|0)?-1:0,x=ud|0,q=0;8>(q|0);){var E=-1<(C|0)||-1==(C|0)&&4294967295<u>>>0,G=0-((u>>>0)+4294967296*(C|0))>>>0,M=Math.min(Math.floor((0-((u>>>0)+4294967296*(C|0)))/4294967296),4294967295),G=E?u:G,E=E?C:M;if(!(0<(E|0)||0==(E|0)&&9999<G>>>0)){if(!((0<(E|0)||0==(E|0)&&1023<G>>>0)&(0==(u&1023)&&0==(C&0)))){break}}x=(Zb=((u>>>0)+4294967296*(C|0))/1024,0<=Zb?Math.floor(Zb):Math.ceil(Zb))>>>0;C=Math.min(Math.floor((Zb=((u>>>0)+4294967296*(C|0))/1024,0<=Zb?Math.floor(Zb):Math.ceil(Zb))/4294967296),4294967295);u=x;x=r[vd+(q<<2)>>2];q=q+1|0}q=wd|0;C=(B=n,n+=12,r[B>>2]=u,r[B+4>>2]=C,r[B+8>>2]=x,B);C=xd(I.W|0,C);u=Math.min(C.length,15);for(x=0;x<u;x++){p[q+x]=C[x]}p[q+x]=0;y&=255;ed(A,I.L|0,(B=n,n+=8,r[B>>2]=y,r[B+4>>2]=wd|0,B))}A=f;y=e;C=d;u=s[md]?2:-1;x=A>>2;q=A|0;r[q>>2]=0;r[q+4>>2]=0;E=sd(p[y+5|0]);r[(A+8|0)>>2]=E;q=A+12|0;M=65536>(E|0)?65536:E;r[q>>2]=M;E=A+16|0;M=td(-1<(M|0)?M:-1);r[E>>2]=M;r[x+5]=0;r[x+6]=0;r[x+7]=-1;r[x+8]=u;r[(A+36|0)>>2]=p[y+4|0]&255;r[x+10]=C;p[M+(r[q>>2]-1)|0]=0;y=Sc(f);A=Ec(r[k>>2],r[k+4>>2],r[o>>2]);C=A[0];u=A[1];A=(C>>>0)+4294967296*(u|0)+(t>>>0)+4294967296*(w|0)>>>0;w=Math.min(Math.floor(((C>>>0)+4294967296*(u|0)+(t>>>0)+4294967296*(w|0))/4294967296),4294967295);t=z[dd>>2];if(0!=(y|0)){-1<(t|0)&3>(y|0)&&(Qc(0),v=r[r[bd>>2]+12>>2],2==(y|0)?ed(v,I.M|0,(B=n,n+=8,r[B>>2]=A,r[B+4>>2]=w,B)):ed(v,I.N|0,(B=n,n+=8,r[B>>2]=A,r[B+4>>2]=w,B)));v=r[i>>2];0!=(v|0)&&yd(v);v=2;c=45;break}1<(t|0)&&(t=r[r[bd>>2]+12>>2],b?zd(I.n|0,3,1,t):zd(I.o|0,5,1,t));t=r[i>>2];0!=(t|0)&&yd(t);t=A;A=0}41==c&&(1==(r[dd>>2]|0)&&(v=r[r[bd>>2]+12>>2],b?zd(I.n|0,3,1,v):zd(I.o|0,5,1,v)),v=0);b=r[d+8>>2];0!=(b|0)&&yd(b);n=d;return v}od.X=1;function ic(b){var d,c=245>b>>>0;do{if(c){var e=11>b>>>0?16:b+11&-8,f=e>>>3;d=z[R>>2];var i=d>>>(f>>>0);if(0!=(i&3|0)){var b=(i&1^1)+f|0,e=b<<1,c=(e<<2)+R+40|0,f=(e+2<<2)+R+40|0,h=z[f>>2],e=h+8|0,i=z[e>>2];(c|0)==(i|0)?r[R>>2]=d&(1<<b^-1):(i>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!")),r[f>>2]=i,r[i+12>>2]=c);d=b<<3;r[h+4>>2]=d|3;d=h+(d|4)|0;r[d>>2]|=1;h=e;d=38;break}if(e>>>0<=z[R+8>>2]>>>0){var g=e;d=30;break}if(0!=(i|0)){var b=2<<f,b=i<<f&(b|-b),c=(b&-b)-1|0,b=c>>>12&16,h=c>>>(b>>>0),c=h>>>5&8,f=h>>>(c>>>0),h=f>>>2&4,i=f>>>(h>>>0),f=i>>>1&2,i=i>>>(f>>>0),k=i>>>1&1,h=(c|b|h|f|k)+(i>>>(k>>>0))|0,b=h<<1,f=(b<<2)+R+40|0,i=(b+2<<2)+R+40|0,c=z[i>>2],b=c+8|0,k=z[b>>2];(f|0)==(k|0)?r[R>>2]=d&(1<<h^-1):(k>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!")),r[i>>2]=k,r[k+12>>2]=f);h<<=3;d=h-e|0;r[c+4>>2]=e|3;f=c;c=f+e|0;r[f+(e|4)>>2]=d|1;r[f+h>>2]=d;k=z[R+8>>2];0!=(k|0)&&(e=r[R+20>>2],f=k>>>2&1073741822,h=(f<<2)+R+40|0,i=z[R>>2],k=1<<(k>>>3),0==(i&k|0)?(r[R>>2]=i|k,i=h,f=(f+2<<2)+R+40|0):(f=(f+2<<2)+R+40|0,i=z[f>>2],i>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"))),r[f>>2]=e,r[i+12>>2]=e,r[(e+8|0)>>2]=i,r[(e+12|0)>>2]=h);r[R+8>>2]=d;r[R+20>>2]=c;h=b;d=38;break}if(0==(r[R+4>>2]|0)){g=e;d=30;break}d=Ad(e);if(0==(d|0)){g=e;d=30;break}h=d}else{if(4294967231<b>>>0){g=-1;d=30;break}d=b+11&-8;if(0==(r[R+4>>2]|0)){g=d;d=30;break}e=Bd(d);if(0==(e|0)){g=d;d=30;break}h=e}d=38}while(0);30==d&&(e=z[R+8>>2],g>>>0>e>>>0?(d=z[R+12>>2],g>>>0<d>>>0?(d=d-g|0,r[R+12>>2]=d,e=z[R+24>>2],r[R+24>>2]=e+g|0,r[g+(e+4)>>2]=d|1,r[e+4>>2]=g|3,h=e+8|0):h=Cd(g)):(b=e-g|0,d=z[R+20>>2],15<b>>>0?(r[R+20>>2]=d+g|0,r[R+8>>2]=b,r[g+(d+4)>>2]=b|1,r[d+e>>2]=b,r[d+4>>2]=g|3):(r[R+8>>2]=0,r[R+20>>2]=0,r[d+4>>2]=e|3,g=e+(d+4)|0,r[g>>2]|=1),h=d+8|0));return h}Module._malloc=ic;ic.X=1;function Ad(b){var d,c,e=r[R+4>>2],f=(e&-e)-1|0,e=f>>>12&16,i=f>>>(e>>>0),f=i>>>5&8;c=i>>>(f>>>0);var i=c>>>2&4,h=c>>>(i>>>0);c=h>>>1&2;var h=h>>>(c>>>0),g=h>>>1&1,e=f=z[R+((f|e|i|c|g)+(h>>>(g>>>0))<<2)+304>>2];c=e>>2;f=(r[f+4>>2]&-8)-b|0;a:for(;;){for(i=e;;){h=r[i+16>>2];if(0==(h|0)){if(i=r[i+20>>2],0==(i|0)){break a}}else{i=h}h=(r[i+4>>2]&-8)-b|0;if(h>>>0<f>>>0){e=i;c=e>>2;f=h;continue a}}}var h=e,k=z[R+16>>2],g=h>>>0<k>>>0;do{if(!g){var o=h+b|0,i=o;if(h>>>0<o>>>0){var g=z[c+6],o=z[c+3],w=(o|0)==(e|0);do{if(w){d=e+20|0;var t=r[d>>2];if(0==(t|0)&&(d=e+16|0,t=r[d>>2],0==(t|0))){t=0;d=t>>2;break}for(;;){var A=t+20|0,y=r[A>>2];if(0==(y|0)&&(A=t+16|0,y=z[A>>2],0==(y|0))){break}d=A;t=y}d>>>0<k>>>0&&(T(),a("Reached an unreachable!"));r[d>>2]=0}else{d=z[c+2],d>>>0<k>>>0&&(T(),a("Reached an unreachable!")),r[d+12>>2]=o,r[o+8>>2]=d,t=o}d=t>>2}while(0);k=0==(g|0);a:do{if(!k){o=e+28|0;w=(r[o>>2]<<2)+R+304|0;A=(e|0)==(r[w>>2]|0);do{if(A){r[w>>2]=t;if(0!=(t|0)){break}r[R+4>>2]&=1<<r[o>>2]^-1;break a}g>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"));y=g+16|0;(r[y>>2]|0)==(e|0)?r[y>>2]=t:r[g+20>>2]=t;if(0==(t|0)){break a}}while(0);t>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"));r[d+6]=g;o=z[c+4];0!=(o|0)&&(o>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!")),r[d+4]=o,r[o+24>>2]=t);o=z[c+5];0!=(o|0)&&(o>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!")),r[d+5]=o,r[o+24>>2]=t)}}while(0);16>f>>>0?(b=f+b|0,r[c+1]=b|3,b=b+(h+4)|0,r[b>>2]|=1):(r[c+1]=b|3,r[b+(h+4)>>2]=f|1,r[h+f+b>>2]=f,k=z[R+8>>2],0!=(k|0)&&(b=z[R+20>>2],h=k>>>2&1073741822,c=(h<<2)+R+40|0,g=z[R>>2],k=1<<(k>>>3),0==(g&k|0)?(r[R>>2]=g|k,g=c,h=(h+2<<2)+R+40|0):(h=(h+2<<2)+R+40|0,g=z[h>>2],g>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"))),r[h>>2]=b,r[g+12>>2]=b,r[b+8>>2]=g,r[b+12>>2]=c),r[R+8>>2]=f,r[R+20>>2]=i);return e+8|0}}}while(0);T();a("Reached an unreachable!")}Ad.X=1;function Bd(b){var d,c,e,f,i,h=b>>2,g=-b|0,k=b>>>8;if(0==(k|0)){var o=0}else{if(16777215<b>>>0){o=31}else{var w=(k+1048320|0)>>>16&8,t=k<<w,A=(t+520192|0)>>>16&4,y=t<<A,C=(y+245760|0)>>>16&2,v=14-(A|w|C)+(y<<C>>>15)|0,o=b>>>((v+7|0)>>>0)&1|v<<1}}var u=z[R+(o<<2)+304>>2],x=0==(u|0);a:do{if(x){var q=0,E=g,G=0}else{var M=31==(o|0)?0:25-(o>>>1)|0,W=0,H=g,Q=u;i=Q>>2;for(var K=b<<M,V=0;;){var Da=r[i+1]&-8,qa=Da-b|0;if(qa>>>0<H>>>0){if((Da|0)==(b|0)){q=Q;E=qa;G=Q;break a}var yb=Q,eb=qa}else{yb=W,eb=H}var La=z[i+5],Ea=z[((K>>>31<<2)+16>>2)+i],Ma=0==(La|0)|(La|0)==(Ea|0)?V:La;if(0==(Ea|0)){q=yb;E=eb;G=Ma;break a}W=yb;H=eb;Q=Ea;i=Q>>2;K<<=1;V=Ma}}}while(0);if(0==(G|0)&0==(q|0)){var fb=2<<o,zb=r[R+4>>2]&(fb|-fb);if(0==(zb|0)){var $=G}else{var ma=(zb&-zb)-1|0,fa=ma>>>12&16,S=ma>>>(fa>>>0),na=S>>>5&8,oa=S>>>(na>>>0),gb=oa>>>2&4,Na=oa>>>(gb>>>0),Ab=Na>>>1&2,ra=Na>>>(Ab>>>0),Oa=ra>>>1&1,$=r[R+((na|fa|gb|Ab|Oa)+(ra>>>(Oa>>>0))<<2)+304>>2]}}else{$=G}var Jb=0==($|0);a:do{if(Jb){var U=E,aa=q;f=aa>>2}else{var ta=$;e=ta>>2;for(var Fa=E,Pa=q;;){var hb=(r[e+1]&-8)-b|0,ib=hb>>>0<Fa>>>0,Y=ib?hb:Fa,jb=ib?ta:Pa,Qa=z[e+4];if(0!=(Qa|0)){ta=Qa}else{var Ra=z[e+5];if(0==(Ra|0)){U=Y;aa=jb;f=aa>>2;break a}ta=Ra}e=ta>>2;Fa=Y;Pa=jb}}}while(0);var Sa=0==(aa|0);a:do{if(Sa){var kb=0}else{if(U>>>0<(r[R+8>>2]-b|0)>>>0){var ua=aa;c=ua>>2;var va=z[R+16>>2],Ta=ua>>>0<va>>>0;do{if(!Ta){var Bb=ua+b|0,lb=Bb;if(ua>>>0<Bb>>>0){var ga=z[f+6],Ga=z[f+3],Wb=(Ga|0)==(aa|0);do{if(Wb){var Kb=aa+20|0,Cb=r[Kb>>2];if(0==(Cb|0)){var mb=aa+16|0,nb=r[mb>>2];if(0==(nb|0)){var N=0;d=N>>2;break}var da=mb,ba=nb}else{da=Kb,ba=Cb}for(;;){var Ha=ba+20|0,Ua=r[Ha>>2];if(0!=(Ua|0)){da=Ha,ba=Ua}else{var Va=ba+16|0,Wa=z[Va>>2];if(0==(Wa|0)){break}da=Va;ba=Wa}}da>>>0<va>>>0&&(T(),a("Reached an unreachable!"));r[da>>2]=0;N=ba}else{var wa=z[f+2];wa>>>0<va>>>0&&(T(),a("Reached an unreachable!"));r[wa+12>>2]=Ga;r[Ga+8>>2]=wa;N=Ga}d=N>>2}while(0);var Lb=0==(ga|0);b:do{if(!Lb){var Mb=aa+28|0,Nb=(r[Mb>>2]<<2)+R+304|0,Xb=(aa|0)==(r[Nb>>2]|0);do{if(Xb){r[Nb>>2]=N;if(0!=(N|0)){break}r[R+4>>2]&=1<<r[Mb>>2]^-1;break b}ga>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"));var Xa=ga+16|0;(r[Xa>>2]|0)==(aa|0)?r[Xa>>2]=N:r[ga+20>>2]=N;if(0==(N|0)){break b}}while(0);N>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"));r[d+6]=ga;var ha=z[f+4];0!=(ha|0)&&(ha>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!")),r[d+4]=ha,r[ha+24>>2]=N);var Z=z[f+5];0!=(Z|0)&&(Z>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!")),r[d+5]=Z,r[Z+24>>2]=N)}}while(0);var xa=16>U>>>0;b:do{if(xa){var ya=U+b|0;r[f+1]=ya|3;var Db=ya+(ua+4)|0;r[Db>>2]|=1}else{if(r[f+1]=b|3,r[h+(c+1)]=U|1,r[(U>>2)+c+h]=U,256>U>>>0){var ob=U>>>2&1073741822,Ya=(ob<<2)+R+40|0,Eb=z[R>>2],pb=1<<(U>>>3);if(0==(Eb&pb|0)){r[R>>2]=Eb|pb;var qb=Ya,ia=(ob+2<<2)+R+40|0}else{var za=(ob+2<<2)+R+40|0,Aa=z[za>>2];Aa>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"));qb=Aa;ia=za}r[ia>>2]=lb;r[qb+12>>2]=lb;r[h+(c+2)]=qb;r[h+(c+3)]=Ya}else{var ja=Bb,rb=U>>>8;if(0==(rb|0)){var ea=0}else{if(16777215<U>>>0){ea=31}else{var Za=(rb+1048320|0)>>>16&8,Ob=rb<<Za,sb=(Ob+520192|0)>>>16&4,Ia=Ob<<sb,Ja=(Ia+245760|0)>>>16&2,tb=14-(sb|Za|Ja)+(Ia<<Ja>>>15)|0,ea=U>>>((tb+7|0)>>>0)&1|tb<<1}}var $a=(ea<<2)+R+304|0;r[h+(c+7)]=ea;var Fb=b+(ua+16)|0;r[h+(c+5)]=0;r[Fb>>2]=0;var pa=r[R+4>>2],Gb=1<<ea;if(0==(pa&Gb|0)){r[R+4>>2]=pa|Gb,r[$a>>2]=ja,r[h+(c+6)]=$a,r[h+(c+3)]=ja,r[h+(c+2)]=ja}else{for(var ub=U<<(31==(ea|0)?0:25-(ea>>>1)|0),Ba=r[$a>>2];;){if((r[Ba+4>>2]&-8|0)==(U|0)){var Pb=Ba+8|0,ab=z[Pb>>2],kc=z[R+16>>2],wc=Ba>>>0<kc>>>0;do{if(!wc&&ab>>>0>=kc>>>0){r[ab+12>>2]=ja;r[Pb>>2]=ja;r[h+(c+2)]=ab;r[h+(c+3)]=Ba;r[h+(c+6)]=0;break b}}while(0);T();a("Reached an unreachable!")}var ac=(ub>>>31<<2)+Ba+16|0,xc=z[ac>>2];if(0==(xc|0)){if(ac>>>0>=z[R+16>>2]>>>0){r[ac>>2]=ja;r[h+(c+6)]=Ba;r[h+(c+3)]=ja;r[h+(c+2)]=ja;break b}T();a("Reached an unreachable!")}ub<<=1;Ba=xc}}}}}while(0);kb=aa+8|0;break a}}}while(0);T();a("Reached an unreachable!")}kb=0}}while(0);return kb}Bd.X=1;function Cd(b){var d,c;0==(r[X>>2]|0)&&Dd();var e=0==(r[R+440>>2]&4|0);do{if(e){c=r[R+24>>2];if(0==(c|0)){c=6}else{if(c=Ed(c),0==(c|0)){c=6}else{var f=r[X+8>>2],f=b+47-r[R+12>>2]+f&-f;if(2147483647>f>>>0){var i=Fd(f);if((i|0)==(r[c>>2]+r[c+4>>2]|0)){var h=i,g=f;d=i;c=13}else{var k=i,o=f;c=15}}else{c=14}}}if(6==c){if(c=Fd(0),-1==(c|0)){c=14}else{var f=r[X+8>>2],f=f+(b+47)&-f,i=c,w=r[X+4>>2],t=w-1|0,f=0==(t&i|0)?f:f-i+(t+i&-w)|0;2147483647>f>>>0?(i=Fd(f),(i|0)==(c|0)?(h=c,g=f,d=i,c=13):(k=i,o=f,c=15)):c=14}}if(13==c){if(-1!=(h|0)){var A=g,y=h;c=26;break}k=d;o=g}else{if(14==c){r[R+440>>2]|=4;c=23;break}}c=-o|0;if(-1!=(k|0)&2147483647>o>>>0){if(o>>>0<(b+48|0)>>>0){f=r[X+8>>2],f=b+47-o+f&-f,2147483647>f>>>0?-1==(Fd(f)|0)?(Fd(c),c=22):(C=f+o|0,c=21):(C=o,c=21)}else{var C=o;c=21}}else{C=o,c=21}21==c&&-1!=(k|0)?(A=C,y=k,c=26):(r[R+440>>2]|=4,c=23)}else{c=23}}while(0);23==c&&(e=r[X+8>>2],e=e+(b+47)&-e,2147483647>e>>>0?(e=Fd(e),h=Fd(0),-1!=(h|0)&-1!=(e|0)&e>>>0<h>>>0?(h=h-e|0,h>>>0<=(b+40|0)>>>0|-1==(e|0)?c=49:(A=h,y=e,c=26)):c=49):c=49);a:do{if(26==c){e=r[R+432>>2]+A|0;r[R+432>>2]=e;e>>>0>z[R+436>>2]>>>0&&(r[R+436>>2]=e);e=z[R+24>>2];h=0==(e|0);b:do{if(h){g=z[R+16>>2];0==(g|0)|y>>>0<g>>>0&&(r[R+16>>2]=y);r[R+444>>2]=y;r[R+448>>2]=A;r[R+456>>2]=0;r[R+36>>2]=r[X>>2];r[R+32>>2]=-1;for(g=0;!(d=g<<1,k=(d<<2)+R+40|0,r[R+(d+3<<2)+40>>2]=k,r[R+(d+2<<2)+40>>2]=k,g=g+1|0,32==(g|0));){}Gd(y,A-40|0)}else{k=R+444|0;for(d=k>>2;0!=(k|0);){g=z[d];k=k+4|0;o=z[k>>2];C=g+o|0;if((y|0)==(C|0)){if(0!=(r[d+3]&8|0)){break}d=e;if(!(d>>>0>=g>>>0&d>>>0<C>>>0)){break}r[k>>2]=o+A|0;Gd(r[R+24>>2],r[R+12>>2]+A|0);break b}k=r[d+2];d=k>>2}y>>>0<z[R+16>>2]>>>0&&(r[R+16>>2]=y);d=y+A|0;for(k=R+444|0;0!=(k|0);){o=k|0;g=z[o>>2];if((g|0)==(d|0)){if(0!=(r[k+12>>2]&8|0)){break}r[o>>2]=y;var v=k+4|0;r[v>>2]=r[v>>2]+A|0;v=Hd(y,g,b);c=50;break a}k=r[k+8>>2]}Id(y,A)}}while(0);e=z[R+12>>2];e>>>0>b>>>0?(v=e-b|0,r[R+12>>2]=v,h=e=z[R+24>>2],r[R+24>>2]=h+b|0,r[b+(h+4)>>2]=v|1,r[e+4>>2]=b|3,v=e+8|0,c=50):c=49}}while(0);49==c&&(r[Kc>>2]=12,v=0);return v}Cd.X=1;function Jd(){var b;0==(r[X>>2]|0)&&Dd();var d=z[R+24>>2],c=0==(d|0);a:do{if(!c){var e=z[R+12>>2],f=40<e>>>0;do{if(f){var i=z[X+8>>2],h=(Math.floor(((e-41+i|0)>>>0)/(i>>>0))-1)*i|0,g=Ed(d);if(0==(r[g+12>>2]&8|0)){var k=Fd(0);b=(g+4|0)>>2;if((k|0)==(r[g>>2]+r[b]|0)&&(h=Fd(-(2147483646<h>>>0?-2147483648-i|0:h)|0),i=Fd(0),-1!=(h|0)&i>>>0<k>>>0&&(h=k-i|0,(k|0)!=(i|0)))){r[b]=r[b]-h|0;r[R+432>>2]=r[R+432>>2]-h|0;Gd(r[R+24>>2],r[R+12>>2]-h|0);break a}}}}while(0);z[R+12>>2]>>>0>z[R+28>>2]>>>0&&(r[R+28>>2]=-1)}}while(0)}Jd.X=1;function pd(b){var d,c,e,f,i,h,g=b>>2,k,o=0==(b|0);a:do{if(!o){var w=b-8|0,t=w,A=z[R+16>>2],y=w>>>0<A>>>0;b:do{if(!y){var C=z[b-4>>2],v=C&3;if(1!=(v|0)){var u=C&-8;h=u>>2;var x=b+(u-8)|0,q=x,E=0==(C&1|0);c:do{if(E){var G=z[w>>2];if(0==(v|0)){break a}var M=-8-G|0;i=M>>2;var W=b+M|0,H=W,Q=G+u|0;if(W>>>0<A>>>0){break b}if((H|0)==(r[R+20>>2]|0)){f=(b+(u-4)|0)>>2;if(3!=(r[f]&3|0)){var K=H;e=K>>2;var V=Q;break}r[R+8>>2]=Q;r[f]&=-2;r[i+(g+1)]=Q|1;r[x>>2]=Q;break a}if(256>G>>>0){var Da=z[i+(g+2)],qa=z[i+(g+3)];if((Da|0)==(qa|0)){r[R>>2]&=1<<(G>>>3)^-1,K=H,e=K>>2,V=Q}else{var yb=((G>>>2&1073741822)<<2)+R+40|0,eb=(Da|0)!=(yb|0)&Da>>>0<A>>>0;do{if(!eb&&(qa|0)==(yb|0)|qa>>>0>=A>>>0){r[Da+12>>2]=qa;r[qa+8>>2]=Da;K=H;e=K>>2;V=Q;break c}}while(0);T();a("Reached an unreachable!")}}else{var La=W,Ea=z[i+(g+6)],Ma=z[i+(g+3)],fb=(Ma|0)==(La|0);do{if(fb){var zb=M+(b+20)|0,$=r[zb>>2];if(0==($|0)){var ma=M+(b+16)|0,fa=r[ma>>2];if(0==(fa|0)){var S=0;c=S>>2;break}var na=ma,oa=fa}else{na=zb,oa=$,k=21}for(;;){var gb=oa+20|0,Na=r[gb>>2];if(0!=(Na|0)){na=gb,oa=Na}else{var Ab=oa+16|0,ra=z[Ab>>2];if(0==(ra|0)){break}na=Ab;oa=ra}}na>>>0<A>>>0&&(T(),a("Reached an unreachable!"));r[na>>2]=0;S=oa}else{var Oa=z[i+(g+2)];Oa>>>0<A>>>0&&(T(),a("Reached an unreachable!"));r[Oa+12>>2]=Ma;r[Ma+8>>2]=Oa;S=Ma}c=S>>2}while(0);if(0!=(Ea|0)){var Jb=M+(b+28)|0,U=(r[Jb>>2]<<2)+R+304|0,aa=(La|0)==(r[U>>2]|0);do{if(aa){r[U>>2]=S;if(0!=(S|0)){break}r[R+4>>2]&=1<<r[Jb>>2]^-1;K=H;e=K>>2;V=Q;break c}Ea>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"));var ta=Ea+16|0;(r[ta>>2]|0)==(La|0)?r[ta>>2]=S:r[Ea+20>>2]=S;if(0==(S|0)){K=H;e=K>>2;V=Q;break c}}while(0);S>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"));r[c+6]=Ea;var Fa=z[i+(g+4)];0!=(Fa|0)&&(Fa>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!")),r[c+4]=Fa,r[Fa+24>>2]=S);var Pa=z[i+(g+5)];0!=(Pa|0)&&(Pa>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!")),r[c+5]=Pa,r[Pa+24>>2]=S)}K=H;e=K>>2;V=Q}}else{K=t,e=K>>2,V=u}}while(0);var hb=K;if(hb>>>0<x>>>0){var ib=b+(u-4)|0,Y=z[ib>>2];if(0!=(Y&1|0)){var jb=0==(Y&2|0);do{if(jb){if((q|0)==(r[R+24>>2]|0)){var Qa=r[R+12>>2]+V|0;r[R+12>>2]=Qa;r[R+24>>2]=K;r[e+1]=Qa|1;(K|0)==(r[R+20>>2]|0)&&(r[R+20>>2]=0,r[R+8>>2]=0);if(Qa>>>0<=z[R+28>>2]>>>0){break a}Jd();break a}if((q|0)==(r[R+20>>2]|0)){var Ra=r[R+8>>2]+V|0;r[R+8>>2]=Ra;r[R+20>>2]=K;r[e+1]=Ra|1;r[(hb+Ra|0)>>2]=Ra;break a}var Sa=(Y&-8)+V|0,kb=Y>>>3,ua=256>Y>>>0;c:do{if(ua){var va=z[g+h],Ta=z[((u|4)>>2)+g];if((va|0)==(Ta|0)){r[R>>2]&=1<<kb^-1}else{var Bb=((Y>>>2&1073741822)<<2)+R+40|0;k=(va|0)==(Bb|0)?63:va>>>0<z[R+16>>2]>>>0?66:63;do{if(63==k&&!((Ta|0)!=(Bb|0)&&Ta>>>0<z[R+16>>2]>>>0)){r[va+12>>2]=Ta;r[Ta+8>>2]=va;break c}}while(0);T();a("Reached an unreachable!")}}else{var lb=x,ga=z[h+(g+4)],Ga=z[((u|4)>>2)+g],Wb=(Ga|0)==(lb|0);do{if(Wb){var Kb=u+(b+12)|0,Cb=r[Kb>>2];if(0==(Cb|0)){var mb=u+(b+8)|0,nb=r[mb>>2];if(0==(nb|0)){var N=0;d=N>>2;break}var da=mb,ba=nb}else{da=Kb,ba=Cb,k=73}for(;;){var Ha=ba+20|0,Ua=r[Ha>>2];if(0!=(Ua|0)){da=Ha,ba=Ua}else{var Va=ba+16|0,Wa=z[Va>>2];if(0==(Wa|0)){break}da=Va;ba=Wa}}da>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"));r[da>>2]=0;N=ba}else{var wa=z[g+h];wa>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"));r[wa+12>>2]=Ga;r[Ga+8>>2]=wa;N=Ga}d=N>>2}while(0);if(0!=(ga|0)){var Lb=u+(b+20)|0,Mb=(r[Lb>>2]<<2)+R+304|0,Nb=(lb|0)==(r[Mb>>2]|0);do{if(Nb){r[Mb>>2]=N;if(0!=(N|0)){break}r[R+4>>2]&=1<<r[Lb>>2]^-1;break c}ga>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"));var Xb=ga+16|0;(r[Xb>>2]|0)==(lb|0)?r[Xb>>2]=N:r[ga+20>>2]=N;if(0==(N|0)){break c}}while(0);N>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"));r[d+6]=ga;var Xa=z[h+(g+2)];0!=(Xa|0)&&(Xa>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!")),r[d+4]=Xa,r[Xa+24>>2]=N);var ha=z[h+(g+3)];0!=(ha|0)&&(ha>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!")),r[d+5]=ha,r[ha+24>>2]=N)}}}while(0);r[e+1]=Sa|1;r[hb+Sa>>2]=Sa;if((K|0)!=(r[R+20>>2]|0)){var Z=Sa}else{r[R+8>>2]=Sa;break a}}else{r[ib>>2]=Y&-2,r[e+1]=V|1,Z=r[hb+V>>2]=V}}while(0);if(256>Z>>>0){var xa=Z>>>2&1073741822,ya=(xa<<2)+R+40|0,Db=z[R>>2],ob=1<<(Z>>>3);if(0==(Db&ob|0)){r[R>>2]=Db|ob;var Ya=ya,Eb=(xa+2<<2)+R+40|0}else{var pb=(xa+2<<2)+R+40|0,qb=z[pb>>2];qb>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"));Ya=qb;Eb=pb}r[Eb>>2]=K;r[Ya+12>>2]=K;r[e+2]=Ya;r[e+3]=ya;break a}var ia=K,za=Z>>>8;if(0==(za|0)){var Aa=0}else{if(16777215<Z>>>0){Aa=31}else{var ja=(za+1048320|0)>>>16&8,rb=za<<ja,ea=(rb+520192|0)>>>16&4,Za=rb<<ea,Ob=(Za+245760|0)>>>16&2,sb=14-(ea|ja|Ob)+(Za<<Ob>>>15)|0,Aa=Z>>>((sb+7|0)>>>0)&1|sb<<1}}var Ia=(Aa<<2)+R+304|0;r[e+7]=Aa;r[e+5]=0;r[e+4]=0;var Ja=r[R+4>>2],tb=1<<Aa,$a=0==(Ja&tb|0);c:do{if($a){r[R+4>>2]=Ja|tb,r[Ia>>2]=ia,r[e+6]=Ia,r[e+3]=K,r[e+2]=K}else{for(var Fb=Z<<(31==(Aa|0)?0:25-(Aa>>>1)|0),pa=r[Ia>>2];;){if((r[pa+4>>2]&-8|0)==(Z|0)){var Gb=pa+8|0,ub=z[Gb>>2],Ba=z[R+16>>2],Pb=pa>>>0<Ba>>>0;do{if(!Pb&&ub>>>0>=Ba>>>0){r[ub+12>>2]=ia;r[Gb>>2]=ia;r[e+2]=ub;r[e+3]=pa;r[e+6]=0;break c}}while(0);T();a("Reached an unreachable!")}var ab=(Fb>>>31<<2)+pa+16|0,kc=z[ab>>2];if(0==(kc|0)){if(ab>>>0>=z[R+16>>2]>>>0){r[ab>>2]=ia;r[e+6]=pa;r[e+3]=K;r[e+2]=K;break c}T();a("Reached an unreachable!")}Fb<<=1;pa=kc}}}while(0);var wc=r[R+32>>2]-1|0;r[R+32>>2]=wc;if(0!=(wc|0)){break a}var ac=r[R+452>>2],xc=0==(ac|0);c:do{if(!xc){for(var Qd=ac;;){var Rd=r[Qd+8>>2];if(0==(Rd|0)){break c}Qd=Rd}}}while(0);r[R+32>>2]=-1;break a}}}}}while(0);T();a("Reached an unreachable!")}}while(0)}Module._free=pd;pd.X=1;function Ed(b){var d,c=R+444|0;for(d=c>>2;;){var e=z[d];if(e>>>0<=b>>>0&&(e+r[d+1]|0)>>>0>b>>>0){var f=c;break}d=z[d+2];if(0==(d|0)){f=0;break}c=d;d=c>>2}return f}function Gd(b,d){var c=b+8|0,c=0==(c&7|0)?0:-c&7,e=d-c|0;r[R+24>>2]=b+c|0;r[R+12>>2]=e;r[c+(b+4)>>2]=e|1;r[d+(b+4)>>2]=40;r[R+28>>2]=r[X+16>>2]}function Dd(){if(0==(r[X>>2]|0)){var b=Kd();0==(b-1&b|0)?(r[X+8>>2]=b,r[X+4>>2]=b,r[X+12>>2]=-1,r[X+16>>2]=2097152,r[X+20>>2]=0,r[R+440>>2]=0,r[X>>2]=Math.floor(Date.now()/1e3)&-16^1431655768):(T(),a("Reached an unreachable!"))}}function Hd(b,d,c){var e,f,i,h=d>>2,g=b>>2,k,o=b+8|0,o=0==(o&7|0)?0:-o&7;f=d+8|0;var w=0==(f&7|0)?0:-f&7;i=w>>2;var t=d+w|0,A=o+c|0;f=A>>2;var y=b+A|0,C=t-(b+o)-c|0;r[(o+4>>2)+g]=c|3;c=(t|0)==(r[R+24>>2]|0);a:do{if(c){var v=r[R+12>>2]+C|0;r[R+12>>2]=v;r[R+24>>2]=y;r[f+(g+1)]=v|1}else{if((t|0)==(r[R+20>>2]|0)){v=r[R+8>>2]+C|0,r[R+8>>2]=v,r[R+20>>2]=y,r[f+(g+1)]=v|1,r[(b+v+A|0)>>2]=v}else{var u=z[i+(h+1)];if(1==(u&3|0)){var v=u&-8,x=u>>>3,q=256>u>>>0;b:do{if(q){var E=z[((w|8)>>2)+h],G=z[i+(h+3)];if((E|0)==(G|0)){r[R>>2]&=1<<x^-1}else{var M=((u>>>2&1073741822)<<2)+R+40|0;k=(E|0)==(M|0)?15:E>>>0<z[R+16>>2]>>>0?18:15;do{if(15==k&&!((G|0)!=(M|0)&&G>>>0<z[R+16>>2]>>>0)){r[E+12>>2]=G;r[G+8>>2]=E;break b}}while(0);T();a("Reached an unreachable!")}}else{k=t;E=z[((w|24)>>2)+h];G=z[i+(h+3)];M=(G|0)==(k|0);do{if(M){e=w|16;var W=e+(d+4)|0,H=r[W>>2];if(0==(H|0)){if(e=d+e|0,H=r[e>>2],0==(H|0)){H=0;e=H>>2;break}}else{e=W}for(;;){var W=H+20|0,Q=r[W>>2];if(0==(Q|0)&&(W=H+16|0,Q=z[W>>2],0==(Q|0))){break}e=W;H=Q}e>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"));r[e>>2]=0}else{e=z[((w|8)>>2)+h],e>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!")),r[e+12>>2]=G,r[G+8>>2]=e,H=G}e=H>>2}while(0);if(0!=(E|0)){G=w+(d+28)|0;M=(r[G>>2]<<2)+R+304|0;W=(k|0)==(r[M>>2]|0);do{if(W){r[M>>2]=H;if(0!=(H|0)){break}r[R+4>>2]&=1<<r[G>>2]^-1;break b}E>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"));Q=E+16|0;(r[Q>>2]|0)==(k|0)?r[Q>>2]=H:r[E+20>>2]=H;if(0==(H|0)){break b}}while(0);H>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"));r[e+6]=E;k=w|16;E=z[(k>>2)+h];0!=(E|0)&&(E>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!")),r[e+4]=E,r[E+24>>2]=H);k=z[(k+4>>2)+h];0!=(k|0)&&(k>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!")),r[e+5]=k,r[k+24>>2]=H)}}}while(0);u=d+(v|w)|0;v=v+C|0}else{u=t,v=C}u=u+4|0;r[u>>2]&=-2;r[f+(g+1)]=v|1;r[(v>>2)+g+f]=v;if(256>v>>>0){x=v>>>2&1073741822,u=(x<<2)+R+40|0,q=z[R>>2],v=1<<(v>>>3),0==(q&v|0)?(r[R>>2]=q|v,v=u,x=(x+2<<2)+R+40|0):(x=(x+2<<2)+R+40|0,v=z[x>>2],v>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"))),r[x>>2]=y,r[v+12>>2]=y,r[f+(g+2)]=v,r[f+(g+3)]=u}else{if(u=y,q=v>>>8,0==(q|0)?x=0:16777215<v>>>0?x=31:(x=(q+1048320|0)>>>16&8,k=q<<x,q=(k+520192|0)>>>16&4,k<<=q,E=(k+245760|0)>>>16&2,x=14-(q|x|E)+(k<<E>>>15)|0,x=v>>>((x+7|0)>>>0)&1|x<<1),q=(x<<2)+R+304|0,r[f+(g+7)]=x,k=A+(b+16)|0,r[f+(g+5)]=0,r[k>>2]=0,k=r[R+4>>2],E=1<<x,0==(k&E|0)){r[R+4>>2]=k|E,r[q>>2]=u,r[f+(g+6)]=q,r[f+(g+3)]=u,r[f+(g+2)]=u}else{x=v<<(31==(x|0)?0:25-(x>>>1)|0);for(q=r[q>>2];;){if((r[q+4>>2]&-8|0)==(v|0)){k=q+8|0;E=z[k>>2];G=z[R+16>>2];M=q>>>0<G>>>0;do{if(!M&&E>>>0>=G>>>0){r[E+12>>2]=u;r[k>>2]=u;r[f+(g+2)]=E;r[f+(g+3)]=q;r[f+(g+6)]=0;break a}}while(0);T();a("Reached an unreachable!")}k=(x>>>31<<2)+q+16|0;E=z[k>>2];if(0==(E|0)){if(k>>>0>=z[R+16>>2]>>>0){r[k>>2]=u;r[f+(g+6)]=q;r[f+(g+3)]=u;r[f+(g+2)]=u;break a}T();a("Reached an unreachable!")}x<<=1;q=E}}}}}}while(0);return b+(o|8)|0}Hd.X=1;function Id(b,d){var c,e,f=z[R+24>>2];e=f>>2;var i=Ed(f),h=r[i>>2];c=r[i+4>>2];var i=h+c|0,g=h+(c-39)|0,h=h+(c-47)+(0==(g&7|0)?0:-g&7)|0,h=h>>>0<(f+16|0)>>>0?f:h,g=h+8|0;c=g>>2;Gd(b,d-40|0);r[(h+4|0)>>2]=27;r[c]=r[R+444>>2];r[c+1]=r[R+448>>2];r[c+2]=r[R+452>>2];r[c+3]=r[R+456>>2];r[R+444>>2]=b;r[R+448>>2]=d;r[R+456>>2]=0;r[R+452>>2]=g;c=h+28|0;r[c>>2]=7;g=(h+32|0)>>>0<i>>>0;a:do{if(g){for(var k=c;;){var o=k+4|0;r[o>>2]=7;if((k+8|0)>>>0>=i>>>0){break a}k=o}}}while(0);i=(h|0)==(f|0);a:do{if(!i){if(c=h-f|0,g=f+c|0,k=c+(f+4)|0,r[k>>2]&=-2,r[e+1]=c|1,r[g>>2]=c,256>c>>>0){k=c>>>2&1073741822,g=(k<<2)+R+40|0,o=z[R>>2],c=1<<(c>>>3),0==(o&c|0)?(r[R>>2]=o|c,c=g,k=(k+2<<2)+R+40|0):(k=(k+2<<2)+R+40|0,c=z[k>>2],c>>>0<z[R+16>>2]>>>0&&(T(),a("Reached an unreachable!"))),r[k>>2]=f,r[c+12>>2]=f,r[e+2]=c,r[e+3]=g}else{g=f;o=c>>>8;if(0==(o|0)){k=0}else{if(16777215<c>>>0){k=31}else{var k=(o+1048320|0)>>>16&8,w=o<<k,o=(w+520192|0)>>>16&4,w=w<<o,t=(w+245760|0)>>>16&2,k=14-(o|k|t)+(w<<t>>>15)|0,k=c>>>((k+7|0)>>>0)&1|k<<1}}o=(k<<2)+R+304|0;r[e+7]=k;r[e+5]=0;r[e+4]=0;w=r[R+4>>2];t=1<<k;if(0==(w&t|0)){r[R+4>>2]=w|t,r[o>>2]=g,r[e+6]=o,r[e+3]=f,r[e+2]=f}else{k=c<<(31==(k|0)?0:25-(k>>>1)|0);for(o=r[o>>2];;){if((r[o+4>>2]&-8|0)==(c|0)){var w=o+8|0,t=z[w>>2],A=z[R+16>>2],y=o>>>0<A>>>0;do{if(!y&&t>>>0>=A>>>0){r[t+12>>2]=g;r[w>>2]=g;r[e+2]=t;r[e+3]=o;r[e+6]=0;break a}}while(0);T();a("Reached an unreachable!")}w=(k>>>31<<2)+o+16|0;t=z[w>>2];if(0==(t|0)){if(w>>>0>=z[R+16>>2]>>>0){r[w>>2]=g;r[e+6]=o;r[e+3]=f;r[e+2]=f;break a}T();a("Reached an unreachable!")}k<<=1;o=t}}}}}while(0)}Id.X=1;function yd(b){0!=(b|0)&&pd(b)}function Ld(b){Md(b|0)}function td(b){for(b=0==(b|0)?1:b;;){var d=ic(b);if(0==(d|0)){d=(Yb=r[Nd>>2],r[Nd>>2]=Yb,Yb);if(0==(d|0)){var c=ic(4);r[c>>2]=Od+8|0;var e=Pd;if(!Sd){try{r[__ZTVN10__cxxabiv119__pointer_type_infoE>>2]=0}catch(f){}try{r[__ZTVN10__cxxabiv117__class_type_infoE>>2]=1}catch(i){}try{r[Td>>2]=2}catch(h){}Sd=j}Module.Va("Compiled code throwing an exception, "+[c,e,2]+", at "+Error().stack);r[Ud>>2]=c;r[Ud+4>>2]=e;r[Ud+8>>2]=2;"uncaught_exception"in Vd?Vd.w++:Vd.w=1;a(c);a("Reached an unreachable!")}lc[d]()}else{return d}}return l}function L(b){Kc||(Kc=F([0],"i32",D));r[Kc>>2]=b}var Kc,Wd=13,qd=9,id=22,Xd=5,Yd=21,Zd=25,$d=6,hd=34,ae=0,be=0,ce=0,bd=0,de=2,O=[l],ee=j;function fe(b,d){if("string"!==typeof b){return l}d===ca&&(d="/");b&&"/"==b[0]&&(d="");for(var c=(d+"/"+b).split("/").reverse(),e=[""];c.length;){var f=c.pop();""==f||"."==f||(".."==f?1<e.length&&e.pop():e.push(f))}return 1==e.length?"/":e.join("/")}function ge(b,d,c){var e={Ta:m,k:m,error:0,name:l,path:l,object:l,s:m,u:l,t:l},b=fe(b);if("/"==b){e.Ta=j,e.k=e.s=j,e.name="/",e.path=e.u="/",e.object=e.t=he}else{if(b!==l){for(var c=c||0,b=b.slice(1).split("/"),f=he,i=[""];b.length;){1==b.length&&f.c&&(e.s=j,e.u=1==i.length?"/":i.join("/"),e.t=f,e.name=b[0]);var h=b.shift();if(f.c){if(f.v){if(!f.a.hasOwnProperty(h)){e.error=2;break}}else{e.error=Wd;break}}else{e.error=20;break}f=f.a[h];if(f.link&&!(d&&0==b.length)){if(40<c){e.error=40;break}e=fe(f.link,i.join("/"));return ge([e].concat(b).join("/"),d,c+1)}i.push(h);0==b.length&&(e.k=j,e.path=i.join("/"),e.object=f)}}}return e}function ie(b){je();b=ge(b,ca);if(b.k){return b.object}L(b.error);return l}function ke(b,d,c,e,f){b||(b="/");"string"===typeof b&&(b=ie(b));b||(L(Wd),a(Error("Parent path must exist.")));b.c||(L(20),a(Error("Parent must be a folder.")));!b.write&&!ee&&(L(Wd),a(Error("Parent folder must be writeable.")));if(!d||"."==d||".."==d){L(2),a(Error("Name must not be empty."))}b.a.hasOwnProperty(d)&&(L(17),a(Error("Can't overwrite object.")));b.a[d]={v:e===ca?j:e,write:f===ca?m:f,timestamp:Date.now(),Sa:de++};for(var i in c){c.hasOwnProperty(i)&&(b.a[d][i]=c[i])}return b.a[d]}function le(b,d){return ke(b,d,{c:j,d:m,a:{}},j,j)}function me(){var b="dev/shm/tmp",d=ie("/");d===l&&a(Error("Invalid parent."));for(b=b.split("/").reverse();b.length;){var c=b.pop();c&&(d.a.hasOwnProperty(c)||le(d,c),d=d.a[c])}}function ne(b,d,c,e){!c&&!e&&a(Error("A device must have at least one callback defined."));var f={d:j,input:c,e:e};f.c=m;return ke(b,d,f,Boolean(c),Boolean(e))}function je(){he||(he={v:j,write:j,c:j,d:m,timestamp:Date.now(),Sa:1,a:{}})}function oe(){var b,d,c;function e(b){b===l||10===b?(d.h(d.buffer.join("")),d.buffer=[]):d.buffer.push(String.fromCharCode(b))}wb(!pe,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");pe=j;je();b=b||Module.stdin;d=d||Module.stdout;c=c||Module.stderr;var f=j,i=j,h=j;b||(f=m,b=(function(){if(!b.j||!b.j.length){var c;"undefined"!=typeof window&&"function"==typeof window.prompt?c=window.prompt("Input: "):"function"==typeof readline&&(c=readline());c||(c="");b.j=qc(c+"\n",j)}return b.j.shift()}));d||(i=m,d=e);d.h||(d.h=Module.print);d.buffer||(d.buffer=[]);c||(h=m,c=e);c.h||(c.h=Module.print);c.buffer||(c.buffer=[]);le("/","tmp");var g=le("/","dev"),k=ne(g,"stdin",b),o=ne(g,"stdout",l,d);c=ne(g,"stderr",l,c);ne(g,"tty",b,d);O[1]={path:"/dev/stdin",object:k,position:0,f:j,g:m,r:m,m:!f,error:m,q:m,b:[]};O[2]={path:"/dev/stdout",object:o,position:0,f:m,g:j,r:m,m:!i,error:m,q:m,b:[]};O[3]={path:"/dev/stderr",object:c,position:0,f:m,g:j,r:m,m:!h,error:m,q:m,b:[]};ae=F([1],"void*",D);be=F([2],"void*",D);ce=F([3],"void*",D);me();O[ae]=O[1];O[be]=O[2];O[ce]=O[3];bd=F([F([0,0,0,0,ae,0,0,0,be,0,0,0,ce,0,0,0],"void*",D)],"void*",D)}var pe,he;function qe(b,d,c,e){var f=O[b];if(!f||f.object.d){return L(qd),-1}if(f.f){if(f.object.c){return L(Yd),-1}if(0>c||0>e){return L(id),-1}for(b=0;f.b.length&&0<c;){p[d++]=f.b.pop(),c--,b++}for(var f=f.object.a,c=Math.min(f.length-e,c),i=0;i<c;i++){p[d+i]=f[e+i],b++}return b}L(Wd);return-1}function Rc(b,d,c){var e=O[b];if(e){if(e.f){if(0>c){return L(id),-1}if(e.object.d){if(e.object.input){for(b=0;e.b.length&&0<c;){p[d++]=e.b.pop(),c--,b++}for(var f=0;f<c;f++){try{var i=e.object.input()}catch(h){return L(Xd),-1}if(i===l||i===ca){break}b++;p[d+f]=i}return b}L($d);return-1}i=e.b.length;b=qe(b,d,c,e.position);-1!=b&&(e.position+=e.b.length-i+b);return b}L(Wd);return-1}L(qd);return-1}function Lc(b,d,c){var e=O[b];if(e){if(e.g){if(0>c){return L(id),-1}if(e.object.d){if(e.object.e){for(var f=0;f<c;f++){try{e.object.e(p[d+f])}catch(i){return L(Xd),-1}}e.object.timestamp=Date.now();return f}L($d);return-1}f=e.position;b=O[b];if(!b||b.object.d){L(qd),d=-1}else{if(b.g){if(b.object.c){L(Yd),d=-1}else{if(0>c||0>f){L(id),d=-1}else{for(var h=b.object.a;h.length<f;){h.push(0)}for(var g=0;g<c;g++){h[f+g]=s[d+g]}b.object.timestamp=Date.now();d=g}}}else{L(Wd),d=-1}}-1!=d&&(e.position+=d);return d}L(Wd);return-1}L(qd);return-1}function Mc(b){uc(yc);a("exit("+b+") called, at "+Error().stack)}function zd(b,d,c,e){d*=c;0!=d&&-1==Lc(e,b,d)&&O[e]&&(O[e].error=j)}function xd(b,d){function c(b){var c;"double"===b?c=(gc[0]=r[d+f>>2],gc[1]=r[d+f+4>>2],fc[0]):"i64"==b?c=[r[d+f>>2],r[d+f+4>>2]]:(b="i32",c=r[d+f>>2]);f+=Math.max(db(b),vb);return c}for(var e=b,f=0,i=[],h,g;;){var k=e;h=p[e];if(0===h){break}g=p[e+1];if(37==h){var o=m,w=m,t=m,A=m;a:for(;;){switch(g){case 43:o=j;break;case 45:w=j;break;case 35:t=j;break;case 48:if(A){break a}else{A=j;break};default:break a}e++;g=p[e+1]}var y=0;if(42==g){y=c("i32"),e++,g=p[e+1]}else{for(;48<=g&&57>=g;){y=10*y+(g-48),e++,g=p[e+1]}}var C=m;if(46==g){var v=0,C=j;e++;g=p[e+1];if(42==g){v=c("i32"),e++}else{for(;;){g=p[e+1];if(48>g||57<g){break}v=10*v+(g-48);e++}}g=p[e+1]}else{v=6}var u;switch(String.fromCharCode(g)){case"h":g=p[e+2];104==g?(e++,u=1):u=2;break;case"l":g=p[e+2];108==g?(e++,u=8):u=4;break;case"L":case"q":case"j":u=8;break;case"z":case"t":case"I":u=4;break;default:u=l}u&&e++;g=p[e+1];if(-1!="d,i,u,o,x,X,p".split(",").indexOf(String.fromCharCode(g))){k=100==g||105==g;u=u||4;h=c("i"+8*u);8==u&&(h=117==g?(h[0]>>>0)+4294967296*(h[1]>>>0):(h[0]>>>0)+4294967296*(h[1]|0));4>=u&&(h=(k?Dc:Cc)(h&Math.pow(256,u)-1,8*u));var x=Math.abs(h),q,k="";if(100==g||105==g){q=Dc(h,8*u).toString(10)}else{if(117==g){q=Cc(h,8*u).toString(10),h=Math.abs(h)}else{if(111==g){q=(t?"0":"")+x.toString(8)}else{if(120==g||88==g){k=t?"0x":"";if(0>h){h=-h;q=(x-1).toString(16);t=[];for(x=0;x<q.length;x++){t.push((15-parseInt(q[x],16)).toString(16))}for(q=t.join("");q.length<2*u;){q="f"+q}}else{q=x.toString(16)}88==g&&(k=k.toUpperCase(),q=q.toUpperCase())}else{112==g&&(0===x?q="(nil)":(k="0x",q=x.toString(16)))}}}}if(C){for(;q.length<v;){q="0"+q}}for(o&&(k=0>h?"-"+k:"+"+k);k.length+q.length<y;){w?q+=" ":A?q="0"+q:k=" "+k}q=k+q;q.split("").forEach((function(b){i.push(b.charCodeAt(0))}))}else{if(-1!="f,F,e,E,g,G".split(",").indexOf(String.fromCharCode(g))){h=c("double");if(isNaN(h)){q="nan",A=m}else{if(isFinite(h)){C=m;u=Math.min(v,20);if(103==g||71==g){C=j,v=v||1,u=parseInt(h.toExponential(u).split("e")[1],10),v>u&&-4<=u?(g=(103==g?"f":"F").charCodeAt(0),v-=u+1):(g=(103==g?"e":"E").charCodeAt(0),v--),u=Math.min(v,20)}if(101==g||69==g){q=h.toExponential(u),/[eE][-+]\d$/.test(q)&&(q=q.slice(0,-1)+"0"+q.slice(-1))}else{if(102==g||70==g){q=h.toFixed(u)}}k=q.split("e");if(C&&!t){for(;1<k[0].length&&-1!=k[0].indexOf(".")&&("0"==k[0].slice(-1)||"."==k[0].slice(-1));){k[0]=k[0].slice(0,-1)}}else{for(t&&-1==q.indexOf(".")&&(k[0]+=".");v>u++;){k[0]+="0"}}q=k[0]+(1<k.length?"e"+k[1]:"");69==g&&(q=q.toUpperCase());o&&0<=h&&(q="+"+q)}else{q=(0>h?"-":"")+"inf",A=m}}for(;q.length<y;){q=w?q+" ":A&&("-"==q[0]||"+"==q[0])?q[0]+"0"+q.slice(1):(A?"0":" ")+q}97>g&&(q=q.toUpperCase());q.split("").forEach((function(b){i.push(b.charCodeAt(0))}))}else{if(115==g){(o=c("i8*"))?(o=Bc(o),C&&o.length>v&&(o=o.slice(0,v))):o=qc("(null)",j);if(!w){for(;o.length<y--;){i.push(32)}}i=i.concat(o);if(w){for(;o.length<y--;){i.push(32)}}}else{if(99==g){for(w&&i.push(c("i8"));0<--y;){i.push(32)}w||i.push(c("i8"))}else{if(110==g){w=c("i32*"),r[w>>2]=i.length}else{if(37==g){i.push(h)}else{for(x=k;x<e+2;x++){i.push(p[x])}}}}}}}e+=2}else{i.push(h),e+=1}}return i}function ed(b,d,c){d=xd(d,c);c=n;zd(F(d,"i8",hc),1,d.length,b);n=c}var gd={1:"Operation not permitted",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"Input/output error",6:"No such device or address",8:"Exec format error",9:"Bad file descriptor",10:"No child processes",11:"Resource temporarily unavailable",12:"Cannot allocate memory",13:"Permission denied",14:"Bad address",16:"Device or resource busy",17:"File exists",18:"Invalid cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Inappropriate ioctl for device",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read-only file system",31:"Too many links",32:"Broken pipe",33:"Numerical argument out of domain",34:"Numerical result out of range",35:"Resource deadlock avoided",36:"File name too long",37:"No locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many levels of symbolic links",42:"No message of desired type",43:"Identifier removed",60:"Device not a stream",61:"No data available",62:"Timer expired",63:"Out of streams resources",67:"Link has been severed",71:"Protocol error",72:"Multihop attempted",74:"Bad message",75:"Value too large for defined data type",84:"Invalid or incomplete multibyte or wide character",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Protocol not supported",95:"Operation not supported",97:"Address family not supported by protocol",98:"Address already in use",99:"Cannot assign requested address",100:"Network is down",101:"Network is unreachable",102:"Network dropped connection on reset",103:"Software caused connection abort",104:"Connection reset by peer",105:"No buffer space available",106:"Transport endpoint is already connected",107:"Transport endpoint is not connected",110:"Connection timed out",111:"Connection refused",113:"No route to host",114:"Operation already in progress",115:"Operation now in progress",116:"Stale NFS file handle",122:"Disk quota exceeded",125:"Operation canceled",130:"Owner died",131:"State not recoverable"},fd;function nd(b){if(!O[b]){return L(qd),0}if(O[b].m){return 1}L(Zd);return 0}function rd(b,d){ed(r[be>>2],b,d)}function T(){a("ABORT: undefined, at "+Error().stack)}function jc(b,d){var c=0;if(20<=d){for(var e=b+d;b%4;){p[b++]=c}0>c&&(c+=256);for(var f=b>>2,i=e>>2,h=c|c<<8|c<<16|c<<24;f<i;){r[f++]=h}for(b=f<<2;b<e;){p[b++]=c}}else{for(;d--;){p[b++]=c}}}function Kd(){switch(8){case 8:return mc;case 54:case 56:case 21:case 61:case 63:case 22:case 67:case 23:case 24:case 25:case 26:case 27:case 69:case 28:case 101:case 70:case 71:case 29:case 30:case 199:case 75:case 76:case 32:case 43:case 44:case 80:case 46:case 47:case 45:case 48:case 49:case 42:case 82:case 33:case 7:case 108:case 109:case 107:case 112:case 119:case 121:return 200809;case 13:case 104:case 94:case 95:case 34:case 35:case 77:case 81:case 83:case 84:case 85:case 86:case 87:case 88:case 89:case 90:case 91:case 94:case 95:case 110:case 111:case 113:case 114:case 115:case 116:case 117:case 118:case 120:case 40:case 16:case 79:case 19:return-1;case 92:case 93:case 5:case 72:case 6:case 74:case 92:case 93:case 96:case 97:case 98:case 99:case 102:case 103:case 105:return 1;case 38:case 66:case 50:case 51:case 4:return 1024;case 15:case 64:case 41:return 32;case 55:case 37:case 17:return 2147483647;case 18:case 1:return 47839;case 59:case 57:return 99;case 68:case 58:return 2048;case 0:return 2097152;case 3:return 65536;case 14:return 32768;case 73:return 32767;case 39:return 16384;case 60:return 1e3;case 106:return 700;case 52:return 256;case 62:return 255;case 2:return 100;case 65:return 64;case 36:return 20;case 100:return 16;case 20:return 6;case 53:return 4}L(id);return-1}function Fd(b){re||(Ib=Ib+4095>>12<<12,re=j);var d=Ib;0!=b&&Hb(b);return d}var re;function Vd(){return!!Vd.w}var Sd,Md;function jd(b){p[se]=Cc(10);-1==Lc(b,se,1)&&b in O&&(O[b].error=j)}function P(b){var d=r[be>>2];0>Lc(d,b,Ac(b))||jd(d)}L(0);vc.unshift({l:(function(){ee=m;pe||oe()})});yc.push({l:(function(){pe&&(O[2]&&0<O[2].object.e.buffer.length&&O[2].object.e(10),O[3]&&0<O[3].object.e.buffer.length&&O[3].object.e(10))})});var Ud=F(12,"void*",D),se=F([0],"i8",D);Module.Qa=(function(b){function d(){for(var b=0;3>b;b++){e.push(0)}}var c=b.length+1,e=[F(qc("/bin/this.program"),"i8",D)];d();for(var f=0;f<c-1;f+=1){e.push(F(qc(b[f]),"i8",D)),d()}e.push(0);e=F(e,"i32",D);return ld(c,e)});var Jc,vc=vc.concat([{l:(function(){for(var b=0;;){var d=b>>>1,d=0==(b&1|0)?d:d^-306674912,c=d>>>1,d=0==(d&1|0)?c:c^-306674912,c=d>>>1,d=0==(d&1|0)?c:c^-306674912,c=d>>>1,d=0==(d&1|0)?c:c^-306674912,c=d>>>1,d=0==(d&1|0)?c:c^-306674912,c=d>>>1,d=0==(d&1|0)?c:c^-306674912,c=d>>>1,d=0==(d&1|0)?c:c^-306674912,c=d>>>1;r[Jc+(b<<2)>>2]=0==(d&1|0)?c:c^-306674912;b=b+1|0;if(256==(b|0)){break}}})}]),dd,kd,md,vd,wd,ud,R,X,Nd,Od,Td,Pd;Jc=F(1024,"i32",D);I.G=F([82,97,110,103,101,32,100,101,99,111,100,101,114,32,102,105,110,97,108,32,99,111,100,101,32,105,115,32,110,111,116,32,122,101,114,111,0],"i8",D);I.F=F([7,7,7,7,7,7,7,10,10,10,10,10],"i8",D);I.C=F([8,8,8,8,8,8,8,11,11,11,11,11],"i8",D);I.B=F([9,9,9,9,9,9,9,11,11,11,11,11],"i8",D);I.D=F([0,0,0,0,1,2,3,4,5,6,4,5],"i8",D);dd=F(1,"i32",D);I.H=F([37,115,58,32,37,115,0],"i8",D);I.K=F([58,32,37,115,0],"i8",D);kd=F(1,"i8*",D);I.aa=F([84,114,121,32,96,37,115,32,45,45,104,101,108,112,39,32,102,111,114,32,109,111,114,101,32,105,110,102,111,114,109,97,116,105,111,110,46,10,0],"i8",D);I.ha=F([37,115,58,32,105,110,116,101,114,110,97,108,32,101,114,114,111,114,58,32,37,115,46,10,0],"i8",D);I.ia=F([117,110,99,97,117,103,104,116,32,111,112,116,105,111,110,0],"i8",D);md=F(1,"i1",D);I.ka=F([67,97,110,39,116,32,99,108,111,115,101,32,115,116,100,111,117,116,0],"i8",D);I.la=F([69,114,114,111,114,32,114,101,97,100,105,110,103,32,109,101,109,98,101,114,32,104,101,97,100,101,114,0],"i8",D);I.ma=F([66,97,100,32,109,97,103,105,99,32,110,117,109,98,101,114,32,40,102,105,108,101,32,110,111,116,32,105,110,32,108,122,105,112,32,102,111,114,109,97,116,41,0],"i8",D);I.I=F([86,101,114,115,105,111,110,32,37,100,32,109,101,109,98,101,114,32,102,111,114,109,97,116,32,110,111,116,32,115,117,112,112,111,114,116,101,100,46,10,0],"i8",D);I.J=F([73,110,118,97,108,105,100,32,100,105,99,116,105,111,110,97,114,121,32,115,105,122,101,32,105,110,32,109,101,109,98,101,114,32,104,101,97,100,101,114,0],"i8",D);I.L=F([118,101,114,115,105,111,110,32,37,100,44,32,100,105,99,116,105,111,110,97,114,121,32,115,105,122,101,32,37,55,115,66,46,32,32,0],"i8",D);I.M=F([70,105,108,101,32,101,110,100,115,32,117,110,101,120,112,101,99,116,101,100,108,121,32,97,116,32,112,111,115,32,37,108,108,100,10,0],"i8",D);I.N=F([68,101,99,111,100,101,114,32,101,114,114,111,114,32,97,116,32,112,111,115,32,37,108,108,100,10,0],"i8",D);I.n=F([111,107,10,0],"i8",D);I.o=F([100,111,110,101,10,0],"i8",D);vd=F(32,"*",D);I.O=F([75,105,0],"i8",D);I.P=F([77,105,0],"i8",D);I.Q=F([71,105,0],"i8",D);I.R=F([84,105,0],"i8",D);I.S=F([80,105,0],"i8",D);I.T=F([69,105,0],"i8",D);I.U=F([90,105,0],"i8",D);I.V=F([89,105,0],"i8",D);wd=F(16,"i8",D);ud=F(1,"i8",D);I.W=F([37,108,108,100,32,37,115,0],"i8",D);I.z=F([76,90,73,80],"i8",D);I.Y=F([73,32,119,111,110,39,116,32,119,114,105,116,101,32,99,111,109,112,114,101,115,115,101,100,32,100,97,116,97,32,116,111,32,97,32,116,101,114,109,105,110,97,108,46,0],"i8",D);I.Z=F([73,32,119,111,110,39,116,32,114,101,97,100,32,99,111,109,112,114,101,115,115,101,100,32,100,97,116,97,32,102,114,111,109,32,97,32,116,101,114,109,105,110,97,108,46,0],"i8",D);I.$=F([37,115,32,37,115,10,0],"i8",D);I.ba=F([49,46,49,50,0],"i8",D);I.ca=F([67,111,112,121,114,105,103,104,116,32,40,67,41,32,37,115,32,65,110,116,111,110,105,111,32,68,105,97,122,32,68,105,97,122,46,10,0],"i8",D);I.da=F([50,48,49,49,0],"i8",D);I.p=F([76,122,105,112,0],"i8",D);I.fa=F([37,115,32,45,32,68,97,116,97,32,99,111,109,112,114,101,115,115,111,114,32,98,97,115,101,100,32,111,110,32,116,104,101,32,76,90,77,65,32,97,108,103,111,114,105,116,104,109,46,10,0],"i8",D);I.ga=F([10,85,115,97,103,101,58,32,37,115,32,91,111,112,116,105,111,110,115,93,32,91,102,105,108,101,115,93,10,0],"i8",D);I.ja=F([73,102,32,110,111,32,102,105,108,101,32,110,97,109,101,115,32,97,114,101,32,103,105,118,101,110,44,32,37,115,32,99,111,109,112,114,101,115,115,101,115,32,111,114,32,100,101,99,111,109,112,114,101,115,115,101,115,10,0],"i8",D);I.i=F([108,122,105,112,0],"i8",D);R=F(468,["i32",0,0,0,"i32",0,0,0,"i32",0,0,0,"i32",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"i32",0,0,0,"i32",0,0,0,"i32",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"i32",0,0,0,"i32",0,0,0,"i32",0,0,0,"*",0,0,0,"i32",0,0,0,"*",0,0,0,"i32",0,0,0,"*",0,0,0,"i32",0,0,0],D);X=F(24,"i32",D);Nd=F(1,"void ()*",D);Od=F([0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,6,0,0,0],["*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0,"*",0,0,0],D);F(1,"void*",D);I.ea=F([115,116,100,58,58,98,97,100,95,97,108,108,111,99,0],"i8",D);I.A=F([83,116,57,98,97,100,95,97,108,108,111,99,0],"i8",D);Pd=F(12,"*",D);I.na=F([60,60,32,77,111,115,116,32,111,102,32,116,104,101,115,101,32,97,114,101,32,117,110,115,117,112,112,111,114,116,101,100,46,32,67,111,109,112,114,101,115,115,105,110,103,47,100,101,99,111,109,112,114,101,115,115,105,110,103,32,102,114,111,109,32,115,116,100,105,110,32,116,111,32,115,116,100,111,117,116,32,105,115,32,116,104,101,32,114,105,103,104,116,32,119,97,121,33,32,62,62,0],"i8",D);I.oa=F([10,79,112,116,105,111,110,115,58,0],"i8",D);I.za=F([32,32,45,104,44,32,45,45,104,101,108,112,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,100,105,115,112,108,97,121,32,116,104,105,115,32,104,101,108,112,32,97,110,100,32,101,120,105,116,0],"i8",D);I.Ia=F([32,32,45,86,44,32,45,45,118,101,114,115,105,111,110,32,32,32,32,32,32,32,32,32,32,32,32,32,32,111,117,116,112,117,116,32,118,101,114,115,105,111,110,32,105,110,102,111,114,109,97,116,105,111,110,32,97,110,100,32,101,120,105,116,0],"i8",D);I.Ja=F([32,32,45,98,44,32,45,45,109,101,109,98,101,114,45,115,105,122,101,61,60,110,62,32,32,32,32,32,32,115,101,116,32,109,101,109,98,101,114,32,115,105,122,101,32,108,105,109,105,116,32,105,110,32,98,121,116,101,115,0],"i8",D);I.Ka=F([32,32,45,99,44,32,45,45,115,116,100,111,117,116,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,115,101,110,100,32,111,117,116,112,117,116,32,116,111,32,115,116,97,110,100,97,114,100,32,111,117,116,112,117,116,0],"i8",D);I.La=F([32,32,45,100,44,32,45,45,100,101,99,111,109,112,114,101,115,115,32,32,32,32,32,32,32,32,32,32,32,100,101,99,111,109,112,114,101,115,115,0],"i8",D);I.Ma=F([32,32,45,102,44,32,45,45,102,111,114,99,101,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,111,118,101,114,119,114,105,116,101,32,101,120,105,115,116,105,110,103,32,111,117,116,112,117,116,32,102,105,108,101,115,0],"i8",D);I.Na=F([32,32,45,70,44,32,45,45,114,101,99,111,109,112,114,101,115,115,32,32,32,32,32,32,32,32,32,32,32,102,111,114,99,101,32,114,101,99,111,109,112,114,101,115,115,105,111,110,32,111,102,32,99,111,109,112,114,101,115,115,101,100,32,102,105,108,101,115,0],"i8",D);I.Oa=F([32,32,45,107,44,32,45,45,107,101,101,112,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,107,101,101,112,32,40,100,111,110,39,116,32,100,101,108,101,116,101,41,32,105,110,112,117,116,32,102,105,108,101,115,0],"i8",D);I.pa=F([32,32,45,109,44,32,45,45,109,97,116,99,104,45,108,101,110,103,116,104,61,60,110,62,32,32,32,32,32,115,101,116,32,109,97,116,99,104,32,108,101,110,103,116,104,32,108,105,109,105,116,32,105,110,32,98,121,116,101,115,32,91,51,54,93,0],"i8",D);I.qa=F([32,32,45,111,44,32,45,45,111,117,116,112,117,116,61,60,102,105,108,101,62,32,32,32,32,32,32,32,32,105,102,32,114,101,97,100,105,110,103,32,115,116,100,105,110,44,32,112,108,97,99,101,32,116,104,101,32,111,117,116,112,117,116,32,105,110,116,111,32,60,102,105,108,101,62,0],"i8",D);I.ra=F([32,32,45,113,44,32,45,45,113,117,105,101,116,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,115,117,112,112,114,101,115,115,32,97,108,108,32,109,101,115,115,97,103,101,115,0],"i8",D);I.sa=F([32,32,45,115,44,32,45,45,100,105,99,116,105,111,110,97,114,121,45,115,105,122,101,61,60,110,62,32,32,115,101,116,32,100,105,99,116,105,111,110,97,114,121,32,115,105,122,101,32,108,105,109,105,116,32,105,110,32,98,121,116,101,115,32,91,56,77,105,66,93,0],"i8",D);I.ta=F([32,32,45,83,44,32,45,45,118,111,108,117,109,101,45,115,105,122,101,61,60,110,62,32,32,32,32,32,32,115,101,116,32,118,111,108,117,109,101,32,115,105,122,101,32,108,105,109,105,116,32,105,110,32,98,121,116,101,115,0],"i8",D);I.ua=F([32,32,45,116,44,32,45,45,116,101,115,116,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,116,101,115,116,32,99,111,109,112,114,101,115,115,101,100,32,102,105,108,101,32,105,110,116,101,103,114,105,116,121,0],"i8",D);I.va=F([32,32,45,118,44,32,45,45,118,101,114,98,111,115,101,32,32,32,32,32,32,32,32,32,32,32,32,32,32,98,101,32,118,101,114,98,111,115,101,32,40,97,32,50,110,100,32,45,118,32,103,105,118,101,115,32,109,111,114,101,41,0],"i8",D);I.wa=F([32,32,45,48,32,46,46,32,45,57,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,115,101,116,32,99,111,109,112,114,101,115,115,105,111,110,32,108,101,118,101,108,32,91,100,101,102,97,117,108,116,32,54,93,0],"i8",D);I.xa=F([32,32,32,32,32,32,45,45,102,97,115,116,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,97,108,105,97,115,32,102,111,114,32,45,48,0],"i8",D);I.ya=F([32,32,32,32,32,32,45,45,98,101,115,116,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,97,108,105,97,115,32,102,111,114,32,45,57,0],"i8",D);I.Aa=F([102,114,111,109,32,115,116,97,110,100,97,114,100,32,105,110,112,117,116,32,116,111,32,115,116,97,110,100,97,114,100,32,111,117,116,112,117,116,46,0],"i8",D);I.Ba=F([78,117,109,98,101,114,115,32,109,97,121,32,98,101,32,102,111,108,108,111,119,101,100,32,98,121,32,97,32,109,117,108,116,105,112,108,105,101,114,58,32,107,32,61,32,107,66,32,61,32,49,48,94,51,32,61,32,49,48,48,48,44,0],"i8",D);I.Ca=F([75,105,32,61,32,75,105,66,32,61,32,50,94,49,48,32,61,32,49,48,50,52,44,32,77,32,61,32,49,48,94,54,44,32,77,105,32,61,32,50,94,50,48,44,32,71,32,61,32,49,48,94,57,44,32,71,105,32,61,32,50,94,51,48,44,32,101,116,99,46,46,46,0],"i8",D);I.Da=F([10,82,101,112,111,114,116,32,98,117,103,115,32,116,111,32,108,122,105,112,45,98,117,103,64,110,111,110,103,110,117,46,111,114,103,0],"i8",D);I.Ea=F([76,122,105,112,32,104,111,109,101,32,112,97,103,101,58,32,104,116,116,112,58,47,47,119,119,119,46,110,111,110,103,110,117,46,111,114,103,47,108,122,105,112,47,108,122,105,112,46,104,116,109,108,0],"i8",D);I.Fa=F([76,105,99,101,110,115,101,32,71,80,76,118,51,43,58,32,71,78,85,32,71,80,76,32,118,101,114,115,105,111,110,32,51,32,111,114,32,108,97,116,101,114,32,60,104,116,116,112,58,47,47,103,110,117,46,111,114,103,47,108,105,99,101,110,115,101,115,47,103,112,108,46,104,116,109,108,62,0],"i8",D);I.Ga=F([84,104,105,115,32,105,115,32,102,114,101,101,32,115,111,102,116,119,97,114,101,58,32,121,111,117,32,97,114,101,32,102,114,101,101,32,116,111,32,99,104,97,110,103,101,32,97,110,100,32,114,101,100,105,115,116,114,105,98,117,116,101,32,105,116,46,0],"i8",D);I.Ha=F([84,104,101,114,101,32,105,115,32,78,79,32,87,65,82,82,65,78,84,89,44,32,116,111,32,116,104,101,32,101,120,116,101,110,116,32,112,101,114,109,105,116,116,101,100,32,98,121,32,108,97,119,46,0],"i8",D);r[vd>>2]=I.O|0;r[vd+4>>2]=I.P|0;r[vd+8>>2]=I.Q|0;r[vd+12>>2]=I.R|0;r[vd+16>>2]=I.S|0;r[vd+20>>2]=I.T|0;r[vd+24>>2]=I.U|0;r[vd+28>>2]=I.V|0;r[Od+4>>2]=Pd;Td=F([2,0,0,0,0],["i8*",0,0,0,0],D);r[Pd>>2]=Td+8|0;r[Pd+4>>2]=I.A|0;r[Pd+8>>2]=ca;lc=[0,0,Ld,0,(function(b){Ld(b);yd(b)}),0,(function(){return I.ea|0}),0];Module.FUNCTION_TABLE=lc;function te(b){b=b||Module.arguments;uc(vc);var d=l;Module._main&&(d=Module.Qa(b),Module.noExitRuntime||uc(yc));return d}Module.run=te;Module.preRun&&Module.preRun();te();Module.postRun&&Module.postRun()
- return new Uint8Array(returnValue);
+ return returnValue;
},
compress: function(data) {