aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2012-11-10 13:39:26 -0800
committerAlon Zakai <alonzakai@gmail.com>2012-11-10 13:39:26 -0800
commitf3d23fb5ee8362586c7e986e1d27039fb3a1756b (patch)
tree973baf5f94957c45cc04c5c75c0b5fd525cf9618
parent054e5aaada9cbafbdb117cf6d8d793656f91ad8d (diff)
remove relooper build in preparation for bootstrapping
-rw-r--r--src/relooper.js7
1 files changed, 0 insertions, 7 deletions
diff --git a/src/relooper.js b/src/relooper.js
deleted file mode 100644
index 5c7c1585..00000000
--- a/src/relooper.js
+++ /dev/null
@@ -1,7 +0,0 @@
-// Relooper, (C) 2012 Alon Zakai, MIT license, https://github.com/kripken/Relooper
-var Relooper = (function() {
-function aa(b){throw b}var ca=void 0,a=!0,j=null,m=!1;function da(){return(function(){})}try{this.Module=Module}catch(ha){this.Module=Module={}}var ia="object"===typeof process&&"function"===typeof require,ma="object"===typeof window,na="function"===typeof importScripts,ta=!ma&&!ia&&!na;if(ia){Module.print=(function(b){process.stdout.write(b+"\n")});Module.printErr=(function(b){process.stderr.write(b+"\n")});var ua=require("fs"),za=require("path");Module.read=(function(b){var b=za.normalize(b),d=ua.readFileSync(b).toString();!d&&b!=za.resolve(b)&&(b=path.join(__dirname,"..","src",b),d=ua.readFileSync(b).toString());return d});Module.load=(function(b){Aa(read(b))});Module.arguments||(Module.arguments=process.argv.slice(2))}ta&&(Module.print=print,"undefined"!=typeof printErr&&(Module.printErr=printErr),Module.read="undefined"!=typeof read?read:(function(b){snarf(b)}),Module.arguments||("undefined"!=typeof scriptArgs?Module.arguments=scriptArgs:"undefined"!=typeof arguments&&(Module.arguments=arguments)));ma&&!na&&(Module.print||(Module.print=(function(b){console.log(b)})),Module.printErr||(Module.printErr=(function(b){console.log(b)})));if(ma||na){Module.read=(function(b){var d=new XMLHttpRequest;d.open("GET",b,m);d.send(j);return d.responseText}),Module.arguments||"undefined"!=typeof arguments&&(Module.arguments=arguments)}na&&(Module.print||(Module.print=da()),Module.load=importScripts);!na&&!ma&&!ia&&!ta&&aa("Unknown runtime environment. Where are we?");function Aa(b){eval.call(j,b)}"undefined"==!Module.load&&Module.read&&(Module.load=(function(b){Aa(Module.read(b))}));Module.print||(Module.print=da());Module.printErr||(Module.printErr=Module.print);Module.arguments||(Module.arguments=[]);Module.print=Module.print;Module.d=Module.printErr;Module.preRun||(Module.preRun=[]);Module.postRun||(Module.postRun=[]);function Ba(b){if(Ca==1){return 1}var d={"%i1":1,"%i8":1,"%i16":2,"%i32":4,"%i64":8,"%float":4,"%double":8}["%"+b];if(!d){if(b.charAt(b.length-1)=="*"){d=Ca}else{if(b[0]=="i"){b=parseInt(b.substr(1));Ia(b%8==0);d=b/8}}}return d}function Ja(){var b=[],d=0;this.G=(function(c){c=c&255;if(d){b.push(c);d--}if(b.length==0){if(c<128){return String.fromCharCode(c)}b.push(c);d=c>191&&c<224?1:2;return""}if(d>0){return""}var c=b[0],e=b[1],f=b[2],c=c>191&&c<224?String.fromCharCode((c&31)<<6|e&63):String.fromCharCode((c&15)<<12|(e&63)<<6|f&63);b.length=0;return c});this.Pc=(function(b){for(var b=unescape(encodeURIComponent(b)),d=[],f=0;f<b.length;f++){d.push(b.charCodeAt(f))}return d})}function Oa(b){var d=n;n=n+b;n=n+3>>2<<2;return d}function Za(b){var d=$a;$a=$a+b;$a=$a+3>>2<<2;$a>=ab&&bb("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value ( "+ab+"), (2) compile with ALLOW_MEMORY_GROWTH which adjusts the size at runtime but prevents some optimizations, or (3) set Module.TOTAL_MEMORY before the program runs.");return d}var Ca=4,qb={},rb,o,sb;function bb(b){Module.print(b+":\n"+Error().stack);aa("Assertion: "+b)}function Ia(b,d){b||bb("Assertion failed: "+d)}var tb=this;Module.ccall=(function(b,d,c,e){return ub(Jb(b),d,c,e)});function Jb(b){try{var d=eval("_"+b)}catch(c){try{d=tb.Module["_"+b]}catch(e){}}Ia(d,"Cannot call unknown function "+b+" (perhaps LLVM optimizations or closure removed it?)");return d}function ub(b,d,c,e){function f(b,c){if(c=="string"){if(b===j||b===ca||b===0){return 0}h||(h=n);var d=Oa(b.length+1);Kb(b,d);return d}if(c=="array"){h||(h=n);d=Oa(b.length);Lb(b,d);return d}return b}var h=0,g=0,e=e?e.map((function(b){return f(b,c[g++])})):[];b=b.apply(j,e);if(d=="string"){d=Mb(b)}else{Ia(d!="array");d=b}h&&(n=h);return d}Module.cwrap=(function(b,d,c){var e=Jb(b);return(function(){return ub(e,d,c,Array.prototype.slice.call(arguments))})});function Sb(b,d,c){c=c||"i8";c.charAt(c.length-1)==="*"&&(c="i32");switch(c){case"i1":q[b]=d;break;case"i8":q[b]=d;break;case"i16":Tb[b>>1]=d;break;case"i32":v[b>>2]=d;break;case"i64":sb=[d>>>0,Math.min(Math.floor(d/4294967296),4294967295)];v[b>>2]=sb[0];v[b+4>>2]=sb[1];break;case"float":Ub[b>>2]=d;break;case"double":Vb[0]=d;v[b>>2]=Wb[0];v[b+4>>2]=Wb[1];break;default:bb("invalid type for setValue: "+c)}}Module.setValue=Sb;Module.getValue=(function(b,d){d=d||"i8";d.charAt(d.length-1)==="*"&&(d="i32");switch(d){case"i1":return q[b];case"i8":return q[b];case"i16":return Tb[b>>1];case"i32":return v[b>>2];case"i64":return v[b>>2];case"float":return Ub[b>>2];case"double":return Wb[0]=v[b>>2],Wb[1]=v[b+4>>2],Vb[0];default:bb("invalid type for setValue: "+d)}return j});var Xb=1,y=2;Module.ALLOC_NORMAL=0;Module.ALLOC_STACK=Xb;Module.ALLOC_STATIC=y;function H(b,d,c){var e,f;if(typeof b==="number"){e=a;f=b}else{e=m;f=b.length}var h=typeof d==="string"?d:j,c=[fc,Oa,Za][c===ca?y:c](Math.max(f,h?1:d.length));if(e){d=c;b=f;f=0;if(b>=20){for(b=d+b;d%4;){q[d++]=f}f<0&&(f=f+256);d=d>>2;h=b>>2;for(e=f|f<<8|f<<16|f<<24;d<h;){v[d++]=e}for(d=d<<2;d<b;){q[d++]=f}}else{for(;b--;){q[d++]=f}}return c}e=0;for(var g;e<f;){var i=b[e];typeof i==="function"&&(i=qb.Xc(i));g=h||d[e];if(g===0){e++}else{g=="i64"&&(g="i32");Sb(c+e,i,g);e=e+Ba(g)}}return c}Module.allocate=H;function Mb(b,d){for(var c=new Ja,e=typeof d=="undefined",f="",h=0,g;;){g=ic[b+h];if(e&&g==0){break}f=f+c.G(g);h=h+1;if(!e&&h==d){break}}return f}Module.Pointer_stringify=Mb;Module.Array_stringify=(function(b){for(var d="",c=0;c<b.length;c++){d=d+String.fromCharCode(b[c])}return d});var jc,kc=4096,q,ic,Tb,lc,v,mc,Ub,nc,n,oc,$a,pc=Module.TOTAL_STACK||5242880,ab=Module.TOTAL_MEMORY||52428800;Ia(!!Int32Array&&!!Float64Array&&!!(new Int32Array(1)).subarray&&!!(new Int32Array(1)).set,"Cannot fallback to non-typed array case: Code is too specialized");var qc=new ArrayBuffer(ab);q=new Int8Array(qc);Tb=new Int16Array(qc);v=new Int32Array(qc);ic=new Uint8Array(qc);lc=new Uint16Array(qc);mc=new Uint32Array(qc);Ub=new Float32Array(qc);nc=new Float64Array(qc);v[0]=255;Ia(255===ic[0]&&0===ic[3],"Typed arrays 2 must be run on a little-endian system");Module.HEAP=ca;Module.HEAP8=q;Module.HEAP16=Tb;Module.HEAP32=v;Module.HEAPU8=ic;Module.HEAPU16=lc;Module.HEAPU32=mc;Module.HEAPF32=Ub;Module.HEAPF64=nc;oc=(n=4*Math.ceil(.25))+pc;var rc=8*Math.ceil(oc/8);q.subarray(rc);var Wb=v.subarray(rc>>2);Ub.subarray(rc>>2);var Vb=nc.subarray(rc>>3);oc=rc+8;$a=oc+4095>>12<<12;Ia($a<ab);var tc=H(sc("(null)"),"i8",y);function uc(b){for(;b.length>0;){var d=b.shift(),c=d.g;typeof c==="number"&&(c=jc[c]);c(d.u===ca?j:d.u)}}var vc=[],wc=[],xc=[];function yc(b){for(var d=b;q[d++];){}return d-b-1}Module.String_len=yc;function sc(b,d,c){b=(new Ja).Pc(b);if(c){b.length=c}d||b.push(0);return b}Module.intArrayFromString=sc;Module.intArrayToString=(function(b){for(var d=[],c=0;c<b.length;c++){var e=b[c];e>255&&(e=e&255);d.push(String.fromCharCode(e))}return d.join("")});function Kb(b,d,c){b=sc(b,c);for(c=0;c<b.length;){q[d+c]=b[c];c=c+1}}Module.writeStringToMemory=Kb;function Lb(b,d){for(var c=0;c<b.length;c++){q[d+c]=b[c]}}Module.writeArrayToMemory=Lb;var Q=[];function zc(b,d){return b>=0?b:d<=32?2*Math.abs(1<<d-1)+b:Math.pow(2,d)+b}function Ac(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}var Bc=0,Cc={},Dc=m,Ec=j;function Fc(b){Bc++;Module.monitorRunDependencies&&Module.monitorRunDependencies(Bc);if(b){Ia(!Cc[b]);Cc[b]=1;Ec===j&&typeof setInterval!=="undefined"&&(Ec=setInterval((function(){var b=m,c;for(c in Cc){if(!b){b=a;Module.d("still waiting on run dependencies:")}Module.d("dependency: "+c)}b&&Module.d("(end of list)")}),6e3))}else{Module.d("warning: run dependency added without ID")}}Module.addRunDependency=Fc;function Gc(b){Bc--;Module.monitorRunDependencies&&Module.monitorRunDependencies(Bc);if(b){Ia(Cc[b]);delete Cc[b]}else{Module.d("warning: run dependency removed without ID")}if(Bc==0){if(Ec!==j){clearInterval(Ec);Ec=j}Dc||Hc()}}Module.removeRunDependency=Gc;Module.preloadedImages={};Module.preloadedAudios={};function Ic(){v[Jc>>2]=v[Jc>>2]+1|0}function Kc(){v[Jc>>2]=v[Jc>>2]-1|0}function Lc(b){return(b|0)==0?0:(v[b+12>>2]|0)!=1?0:b}function Mc(b,d,c){v[b>>2]=0;q[b+8|0]=0;d=(d|0)==0?0:Nc(d);v[b+12>>2]=d;c=(c|0)==0?0:Nc(c);v[b+16>>2]=c}function Oc(b){var d=v[b+12>>2];(d|0)!=0&&Pc(d);b=v[b+16>>2];(b|0)!=0&&Pc(b)}function Qc(b){var d=n;n=n+4;var c=v[Rc>>2];if((c|0)==0){Sc(30,Q.l|0,Q.s|0);c=v[Rc>>2]}var e=v[Jc>>2];if(((e<<1)+c-v[Tc>>2]|0)<(v[Xc>>2]|0)){c=e}else{Sc(31,Q.l|0,Q.t|0);c=v[Jc>>2]}c=(c<<1|0)>0;e=v[Rc>>2];a:do{if(c){for(var f=0,h=e;;){q[h]=32;f=f+1|0;h=h+1|0;v[Rc>>2]=h;if((f|0)>=(v[Jc>>2]<<1|0)){var g=h;break a}}}else{g=e}}while(0);v[d>>2]=arguments[Qc.length];c=v[Tc>>2]-g+v[Xc>>2]|0;e=Yc(b,v[d>>2]);f=c===ca?e.length:Math.min(e.length,c-1);for(h=0;h<f;h++){q[g+h]=e[h]}q[g+h]=0;g=e.length;(g|0)<(c|0)||Sc(37,Q.l|0,Q.zc|0);c=v[Rc>>2];g=c+g|0;v[Rc>>2]=g;n=d}Qc.X=1;function Zc(b,d){$c(b|0);$c(b+12|0);$c(b+24|0);$c(b+36|0);v[b+48>>2]=0;var c=v[ad>>2];v[ad>>2]=c+1|0;v[b+52>>2]=c;v[b+60>>2]=0;q[b+64|0]=0;v[b+56>>2]=Nc(d)}function bd(b){var d=v[b+56>>2];(d|0)!=0&&Pc(d);var d=b+36|0,c=v[d>>2],e=b+40|0,f=(c|0)==(e|0);a:do{if(!f){for(var h=e,g=c;;){var i=v[g+20>>2];if((i|0)!=0){Oc(i);R(i)}g=S(g|0);if((g|0)==(h|0)){break a}}}}while(0);c=b+24|0;e=v[c>>2];f=b+28|0;h=(e|0)==(f|0);a:do{if(!h){g=f;for(i=e;;){var k=v[i+20>>2];if((k|0)!=0){Oc(k);R(k)}i=S(i|0);if((i|0)==(g|0)){break a}}}}while(0);cd(d|0);cd(c|0);cd(b+12|0);cd(b|0)}bd.X=1;function dd(b,d){var c=n;n=n+16;var e=c+4,f;var h=b+4|0,g=h|0,i=v[g>>2];if((i|0)==0){v[c>>2]=h;f=g}else{for(h=v[d>>2];;){g=v[i+16>>2];if(h>>>0<g>>>0){var k=i|0,g=v[k>>2];if((g|0)==0){f=597;break}else{i=g}}else{if(g>>>0>=h>>>0){f=601;break}var l=i+4|0,g=v[l>>2];if((g|0)==0){f=600;break}else{i=g}}}if(f==601){v[c>>2]=i;f=c}else{if(f==600){v[c>>2]=i;f=l}else{if(f==597){v[c>>2]=i;f=k}else{f=ca}}}}k=v[f>>2];if((k|0)==0){k=ed(24);l=k+16|0;(l|0)!=0&&(v[l>>2]=v[d>>2]);l=k+20|0;(l|0)!=0&&(v[l>>2]=0);v[e>>2]=k;k=e+4|0;v[k>>2]=b+4|0;v[k+4>>2]=257;k=e|0;e=v[k>>2];v[k>>2]=0;k=b|0;h=v[c>>2];l=e|0;v[l>>2]=0;v[l+4>>2]=0;v[l+8>>2]=h;v[f>>2]=l;h=k|0;i=v[v[h>>2]>>2];if((i|0)==0){f=l}else{v[h>>2]=i;f=v[f>>2]}fd(v[k+4>>2],f);f=k+8|0;v[f>>2]=v[f>>2]+1|0;e=e+20|0}else{e=k+20|0}n=c;return e}function gd(b,d){var c,e,f,h=n;n=n+24;var g,i=h+4,k=h+8,l=h+20;f=l>>2;(q[b+64|0]&1)<<24>>24==0|d^1||Qc(Q.xc|0,(o=n,n=n+1,n=n+3>>2<<2,v[o>>2]=0,o));var s=v[b+56>>2],r=(s|0)==0;a:do{if(!r){for(var p=s;;){if(q[p]<<24>>24==0){break a}b:{e=p;e--;do{e++;var t=q[e];if(t==10){break b}}while(t);e=0}if((e|0)==0){break}q[e]=0;hd(p);q[e]=10;p=e+1|0}hd(p)}}while(0);s=b+24|0;e=b+32|0;r=v[e>>2];if((r|0)==1){t=(v[v[v[s>>2]+20>>2]+4>>2]|0)!=0&1}else{if((r|0)==0){n=h;return}t=1}var z=b+48|0,r=Lc(v[v[z>>2]+8>>2]);if(p=(r|0)!=0){id(Q.Ac|0,(o=n,n=n+1,n=n+3>>2<<2,v[o>>2]=0,o));z=v[z>>2]+8|0;v[z>>2]=v[v[z>>2]+8>>2];jd(r);var u=t<<24>>24==0?0:(v[r+28>>2]|0)==(v[e>>2]|0)?0:t}else{u=t}t=b+60|0;e=t>>2;var w=s|0;do{if((v[e]|0)==0){var A=v[w>>2],x=b+28|0,z=x;if((A|0)!=(z|0)){for(var E=0;;){if((v[v[A+20>>2]+12>>2]|0)==0){(E|0)!=0&&Sc(177,Q.m|0,Q.qb|0);var I=v[A+16>>2];v[e]=I}else{I=E}A=S(A|0);if((A|0)==(x|0)){break}else{E=I}}if((I|0)!=0){break}}Sc(182,Q.m|0,Q.rb|0)}else{z=b+28|0}}while(0);v[k>>2]=0;v[k+4>>2]=0;v[k+8>>2]=0;for(var I=(u&1)<<24>>24==0,u=r+20|0,x=h|0,A=r+24|0,E=i|0,B=1,w=v[w>>2];;){var C=(w|0)==(z|0);if(C){var O=v[e];v[f]=O;var L=v[dd(s,t)>>2];c=L>>2;g=99}else{var G=v[w+16>>2];v[f]=G;if((G|0)==(v[e]|0)){var J=B}else{c=v[w+20>>2];(v[c+12>>2]|0)==0&&Sc(193,Q.m|0,Q.sb|0);L=c;c=L>>2;O=G;g=99}}if(g==99){G=I?0:(q[O+64|0]&1)<<24>>24!=0;if(p){kd(h,u,l);J=(v[x>>2]|0)!=(A|0)}else{J=0}g=G?1:(v[c+1]|0)!=0|J?1:(v[c+4]|0)!=0;if(C){if(g){g=(B&1)<<24>>24!=0;if((v[k>>2]|0)>0){var F=v[k+4>>2];if(g){Qc(Q.zb|0,(o=n,n=n+4,v[o>>2]=F,o));var D=0;g=120}else{Qc(Q.Bb|0,(o=n,n=n+4,v[o>>2]=F,o));g=119}}else{g||Qc(Q.Cb|0,(o=n,n=n+1,n=n+3>>2<<2,v[o>>2]=0,o));g=119}}else{g=119}}else{if(g){D=(B&1)<<24>>24!=0?ld|0:Q.vb|0;g=v[c+3];Qc(Q.tb|0,(o=n,n=n+8,v[o>>2]=D,v[o+4>>2]=g,o));D=0;g=120}else{(v[k>>2]|0)>0&&md(k,Q.wb|0);md(k,Q.xb|0);md(k,v[c+3]);md(k,Q.yb|0);g=119}}if(g==119){g=0;if((B&1)<<24>>24==0){D=B;g=120}else{var K=B,M=1}}if(g==120){g=0;Ic();K=D;M=0}var B=L,F=v[f],N=G,G=n,P=v[B+16>>2];(P|0)!=0&&Qc(Q.ob|0,(o=n,n=n+4,v[o>>2]=P,o));N&&Qc(Q.pb|0,(o=n,n=n+4,v[o>>2]=v[F+52>>2],o));F=v[B>>2];if((F|0)!=0){N=v[B+4>>2];if((N|0)!=0){N=(N|0)==1?Q.Kb|0:Q.Rb|0;if((q[B+8|0]&1)<<24>>24==0){Qc(Q.Xb|0,(o=n,n=n+4,v[o>>2]=N,o))}else{B=v[F+4>>2];Qc(Q.Ab|0,(o=n,n=n+8,v[o>>2]=N,v[o+4>>2]=B,o))}}}n=G;if(J){kd(i,u,l);J=v[v[E>>2]+20>>2];jc[v[v[J>>2]+8>>2]](J,d)}M||Kc();if(C){break}else{J=K}}B=J;w=S(w|0)}M||Qc(Q.n|0,(o=n,n=n+1,n=n+3>>2<<2,v[o>>2]=0,o));p&&nd(r);f=v[k+4>>2];(f|0)!=0&&Pc(f);n=h}gd.X=1;function hd(b){var d=v[Rc>>2];if((d|0)==0){Sc(43,Q.k|0,Q.s|0);d=v[Rc>>2]}var c=v[Jc>>2];if(((c<<1)+d-v[Tc>>2]|0)>=(v[Xc>>2]|0)){Sc(44,Q.k|0,Q.t|0);c=v[Jc>>2];d=v[Rc>>2]}c=(c<<1|0)>0;a:do{if(c){for(var e=0,f=d;;){q[f]=32;e=e+1|0;f=f+1|0;v[Rc>>2]=f;if((e|0)>=(v[Jc>>2]<<1|0)){var h=f;break a}}}else{h=d}}while(0);if((yc(b)+1|0)>=(v[Xc>>2]-h+v[Tc>>2]|0)){Sc(48,Q.k|0,Q.yc|0);h=v[Rc>>2]}od(h,b);h=yc(b);d=v[Rc>>2];b=d+h|0;h=d+(h+1|0)|0;v[Rc>>2]=h;q[b]=10;q[h]=0}hd.X=1;function id(b){var d=n;n=n+4;if((q[pd]&1)<<24>>24!=0){qd(Q.Yb|0,(o=n,n=n+1,n=n+3>>2<<2,v[o>>2]=0,o));v[d>>2]=arguments[id.length];rd(b,v[d>>2])}n=d}function jd(b){var d=n;if((v[b+32>>2]|0)!=0){(q[b+16|0]&1)<<24>>24==0?Qc(Q.Eb|0,(o=n,n=n+1,n=n+3>>2<<2,v[o>>2]=0,o)):Qc(Q.Db|0,(o=n,n=n+4,v[o>>2]=v[b+4>>2],o));Ic()}n=d}function md(b,d){var c,e=yc(d);c=(b|0)>>2;var f=v[c],h=b+8|0,g=v[h>>2];if((f+(e+2)|0)>(g|0)){f=g+e<<1;f=1024-f%1024+f|0;v[h>>2]=f;h=b+4|0;g=v[h>>2];f=(g|0)==0?fc(f):(g|0)==0?fc(f):sd(g,f);v[h>>2]=f;h=v[c]}else{h=f;f=v[b+4>>2]}od(f+h|0,d);v[c]=v[c]+e|0}function nd(b){var d=n;if((v[b+32>>2]|0)!=0){Kc();Qc(Q.Fb|0,(o=n,n=n+1,n=n+3>>2<<2,v[o>>2]=0,o))}n=d}function td(b){for(var b=b>>2,d=b+13;b<d;b++){v[b]=0}}function ud(b){for(var d=b|0,c=b+20|0,e=b+16|0,f=b+4|0,h=0;;){if(h>>>0>=v[c>>2]>>>0){break}var g=v[e>>2]+h|0,g=v[v[v[f>>2]+(g>>>10<<2)>>2]+((g&1023)<<2)>>2];if((g|0)!=0){bd(g);R(g)}h=h+1|0}c=b+44|0;e=b+40|0;f=b+28|0;for(h=0;;){if(h>>>0>=v[c>>2]>>>0){break}g=v[e>>2]+h|0;g=v[v[v[f>>2]+(g>>>10<<2)>>2]+((g&1023)<<2)>>2];if((g|0)!=0){jc[v[v[g>>2]+4>>2]](g)}h=h+1|0}vd(b+24|0);d=d|0;wd(d);b=d|0;c=v[d+4>>2];d=v[d+8>>2];if((c|0)!=(d|0)){for(;;){R(v[c>>2]);c=c+4|0;if((c|0)==(d|0)){break}}}v[b+8>>2]=v[b+4>>2];b=v[b>>2];(b|0)!=0&&R(b)}ud.X=1;function xd(b,d){var c=n;n=n+4;v[c>>2]=d;var e=b|0,f,h=n;n=n+8;var g=v[e+8>>2],i=v[e+4>>2];f=(e+20|0)>>2;(((g|0)==(i|0)?0:(g-i<<8)-1|0)|0)==(v[f]+v[e+16>>2]|0)&&yd(e);zd(h,e|0);e=v[h+4>>2];(e|0)!=0&&(v[e>>2]=v[c>>2]);e=v[f];e=e+1|0;v[f]=e;n=h;n=c}function Ad(b,d){var c,e,f,h=n;n=n+80;var g=h+8,i=h+16,k=h+20,l=h+24,s=h+40;f=s>>2;var r=h+44,p=h+56,t=h+68,z=h+72;v[k>>2]=d;v[(l|0)>>2]=b;Bd(l+4|0);Cd(l,d);var u=b+20|0;e=(b+16|0)>>2;c=(b+4|0)>>2;for(var w=l+4|0,A=i|0,x=l+8|0,E=0;;){if(E>>>0>=v[u>>2]>>>0){break}var I=v[e]+E|0;v[f]=v[v[v[c]+(I>>>10<<2)>>2]+((I&1023)<<2)>>2];Dd(i,w,s);I=(v[A>>2]|0)==(x|0);a:do{if(!I){for(var B=v[f],C=v[B>>2];;){if((C|0)==(B+4|0)){break a}B=ed(20);Mc(B,0,0);v[dd(v[C+16>>2]+12|0,s)>>2]=B;C=S(C|0);B=v[f]}}}while(0);E=E+1|0}Ed(l);f=r|0;Bd(f);for(i=0;;){if(i>>>0>=v[u>>2]>>>0){break}s=v[e]+i|0;Fd(g,f,((s&1023)<<2)+v[v[c]+(s>>>10<<2)>>2]|0);s=(q[pd]&1)<<24>>24==0;a:do{if(!s){w=v[e]+i|0;w=v[v[v[c]+(w>>>10<<2)>>2]+((w&1023)<<2)>>2];A=v[w+56>>2];id(Q.Lb|0,(o=n,n=n+8,v[o>>2]=v[w+52>>2],v[o+4>>2]=A,o));w=v[e]+i|0;w=v[v[v[c]+(w>>>10<<2)>>2]+((w&1023)<<2)>>2];A=v[w>>2];if((A|0)!=(w+4|0)){for(w=A;;){id(Q.Mb|0,(o=n,n=n+4,v[o>>2]=v[v[w+16>>2]+52>>2],o));w=S(w|0);A=v[e]+i|0;if((w|0)==(v[v[v[c]+(A>>>10<<2)>>2]+((A&1023)<<2)>>2]+4|0)){break a}}}}}while(0);i=i+1|0}c=p|0;Bd(c);Fd(h,c,k);v[(t|0)>>2]=b;k=b+48|0;v[k>>2]=Gd(t,r,p,0);id(Q.Nb|0,(o=n,n=n+1,n=n+3>>2<<2,v[o>>2]=0,o));v[z>>2]=b;v[z+4>>2]=0;t=v[k>>2];Hd(t,0);Id(z,t);Jd(p);Jd(r);Jd(l+4|0);n=h}Ad.X=1;function Cd(b,d){var c=n;n=n+16;var e=c+8,f=c+12;v[f>>2]=d;var h=b+4|0;Dd(e,h,f);if((v[e>>2]|0)==(b+8|0)){Fd(c,h,f);e=v[f>>2];f=v[e>>2];e=e+4|0;if((f|0)!=(e|0)){for(;;){Cd(b,v[f+16>>2]);f=S(f|0);if((f|0)==(e|0)){break}}}}n=c}function Ed(b){var d,c=n;n=n+20;var e=c+8,f=c+12,h=c+16,g=b+4|0;d=v[g>>2];var i=b+8|0;if((d|0)==(i|0)){var k=0}else{for(var l=d,s=0;;){k=yc(v[v[l+16>>2]+56>>2])+s|0;l=Kd(l|0);if((l|0)==(i|0)){break}else{s=k}}k=(k|0)/5&-1}b=b|0;for(l=d;;){if((l|0)==(i|0)){break}s=v[l+16>>2];d=s>>2;v[e>>2]=s;var r=v[d+5],p=r>>>0<2;a:do{if(!p&&(v[d+2]|0)==0&&(yc(v[d+14])*(r-1)|0)>>>0<=k>>>0){for(var t=v[d+3],z=s;;){if((t|0)==(z+16|0)){break a}v[f>>2]=v[t+16>>2];var u=ed(68),w=u;Zc(w,v[z+56>>2]);v[h>>2]=w;z=ed(20);Mc(z,0,0);v[dd(u+12|0,f)>>2]=z;u=ed(20);z=v[f>>2];w=z|0;Mc(u,v[v[dd(w,e)>>2]+12>>2],v[v[dd(w,e)>>2]+16>>2]);v[dd(w,h)>>2]=u;Ld(z|0,e);xd(v[b>>2],v[h>>2]);Fd(c,g,h);t=S(t|0);z=v[e>>2]}}}while(0);l=Kd(l|0)}n=c}Ed.X=1;function Gd(b,d,c,e){var f,h=n;n=n+28;var g,i=h+4,k=h+8,l=h+12,s=h+24;id(Q.$b|0,(o=n,n=n+1,n=n+3>>2<<2,v[o>>2]=0,o));Md(d,Q.ac|0);Md(c,Q.bc|0);var r=v[c+8>>2];if((r|0)==1){var p=v[v[c>>2]+16>>2],b=(v[p+20>>2]|0)==0?Nd(b,d,p):Od(b,d,c)}else{if((r|0)==0){b=0}else{r=l|0;f=r+4|0;v[f>>2]=0;v[r+8>>2]=0;v[r>>2]=f;Pd(c,l);f=(l+8|0)>>2;id(Q.cc|0,(o=n,n=n+4,v[o>>2]=v[f],o));var t=v[f];do{if((t|0)==0){g=290}else{var z=v[l>>2],u=l+4|0;if((z|0)==(u|0)){var w=t}else{for(var w=h|0,A=k|0;;){for(var x=v[z+16>>2],E=S(z|0),I=E,B=x+16|0,C=z+20|0,O=z+24|0,L=v[x+12>>2];;){if((L|0)==(B|0)){break}v[s>>2]=v[L+16>>2];Dd(h,C,s);if((v[w>>2]|0)==(O|0)){g=284;break}L=S(L|0)}if(g==284){g=0;B=v[v[s>>2]+52>>2];id(Q.ec|0,(o=n,n=n+8,v[o>>2]=v[x+52>>2],v[o+4>>2]=B,o));v[A>>2]=z;Qd(i,r,k)}if((E|0)==(u|0)){break}else{z=I}}w=v[f]}id(Q.fc|0,(o=n,n=n+4,v[o>>2]=w,o));(v[f]|0)==0?g=290:p=Rd(b,d,c,l,e)}}while(0);g==290&&(p=Od(b,d,c));b=l|0;Sd(b,v[b+4>>2]);b=p}}n=h;return b}Gd.X=1;function Md(b,d){var c=n;if((q[pd]&1)<<24>>24!=0){(d|0)!=0&&qd(Q.Ob|0,(o=n,n=n+4,v[o>>2]=d,o));var e=v[b>>2],f=b+4|0,h=(e|0)==(f|0);a:do{if(!h){for(var g=f,i=e;;){qd(Q.Pb|0,(o=n,n=n+4,v[o>>2]=v[v[i+16>>2]+52>>2],o));i=Kd(i|0);if((i|0)==(g|0)){break a}}}}while(0);Td(v[Ud>>2])}n=c}function Vd(b){var d,c;d=b+4|0;var e=v[d>>2];c=(e|0)>>2;var f=v[c];v[d>>2]=f;(f|0)!=0&&(v[f+8>>2]=b);d=(b+8|0)>>2;v[e+8>>2]=v[d];var f=v[d],h=f|0;(v[h>>2]|0)==(b|0)?v[h>>2]=e:v[f+4>>2]=e;v[c]=b;v[d]=e}function Wd(b){var d,c;d=b|0;var e=v[d>>2];c=(e+4|0)>>2;var f=v[c];v[d>>2]=f;(f|0)!=0&&(v[f+8>>2]=b);d=(b+8|0)>>2;v[e+8>>2]=v[d];var f=v[d],h=f|0;(v[h>>2]|0)==(b|0)?v[h>>2]=e:v[f+4>>2]=e;v[c]=b;v[d]=e}function Kd(b){var d=v[b+4>>2];if((d|0)==0){for(;;){d=v[b+8>>2];if((b|0)==(v[d>>2]|0)){var c=d;break}else{b=d}}}else{for(b=d;;){d=v[b>>2];if((d|0)==0){c=b;break}else{b=d}}}return c}function Xd(b,d,c){var e,f=b+4|0,h=f|0,b=v[h>>2];if((b|0)==0){v[d>>2]=f;return h}for(c=v[c>>2];;){f=v[b+16>>2];if(c>>>0<f>>>0){var g=b|0,f=v[g>>2];if((f|0)==0){e=369;break}else{b=f}}else{if(f>>>0>=c>>>0){e=373;break}var i=b+4|0,f=v[i>>2];if((f|0)==0){e=372;break}else{b=f}}}if(e==372){v[d>>2]=b;return i}if(e==373){v[d>>2]=b;return d}if(e==369){v[d>>2]=b;return g}}function Bd(b){var d=b+4|0;v[d>>2]=0;v[b+8>>2]=0;v[b>>2]=d}function fd(b,d){var c,e;q[d+12|0]=(d|0)==(b|0)&1;for(var f=d;;){if((f|0)==(b|0)){e=453;break}var h=v[f+8>>2],g=h+12|0;if((q[g]&1)<<24>>24!=0){e=452;break}c=(h+8|0)>>2;var i=v[c],k=v[i>>2];if((h|0)==(k|0)){k=v[i+4>>2];if((k|0)==0){e=442;break}k=k+12|0;if((q[k]&1)<<24>>24!=0){e=442;break}}else{if((k|0)==0){e=448;break}k=k+12|0;if((q[k]&1)<<24>>24!=0){e=448;break}}q[g]=1;q[i+12|0]=(i|0)==(b|0)&1;q[k]=1;f=i}if(e!=452&&e!=453){if(e==448){if((f|0)==(v[h>>2]|0)){Wd(h);c=i=v[c];i=v[i+8>>2]}else{c=h}q[c+12|0]=1;q[i+12|0]=0;Vd(i)}else{if(e==442){if((f|0)==(v[h>>2]|0)){c=h}else{Vd(h);c=i=v[c];i=v[i+8>>2]}q[c+12|0]=1;q[i+12|0]=0;Wd(i)}}}}fd.X=1;function Fd(b,d,c){var e=n;n=n+16;var f=e+4,h=Xd(d,e,c),g=v[h>>2];if((g|0)==0){Yd(f,d,c);c=f|0;f=v[c>>2];v[c>>2]=0;Zd(d,v[e>>2],h,f|0);d=f;h=1}else{d=g;h=0}v[b>>2]=d;q[b+4|0]=h;n=e}function Yd(b,d,c){var e=ed(20),f=e+16|0;(f|0)!=0&&(v[f>>2]=v[c>>2]);v[b>>2]=e;b=b+4|0;v[b>>2]=d+4|0;v[b+4>>2]=1}function Zd(b,d,c,e){v[e>>2]=0;v[e+4>>2]=0;v[e+8>>2]=d;v[c>>2]=e;var d=b|0,f=v[v[d>>2]>>2];if((f|0)==0){c=e}else{v[d>>2]=f;c=v[c>>2]}fd(v[b+4>>2],c);b=b+8|0;v[b>>2]=v[b>>2]+1|0}function Dd(b,d,c){var e=n;n=n+4;var d=d+4|0,f,h=d;f=v[d>>2];a:for(;;){var g=f;for(f=g>>2;;){if((g|0)==0){break a}if(v[f+4]>>>0>=v[c>>2]>>>0){break}g=v[f+1];f=g>>2}h=g;f=v[f]}v[e>>2]=h;h=v[e>>2];v[b>>2]=(h|0)!=(d|0)&&v[c>>2]>>>0>=v[h+16>>2]>>>0?h:d;n=e}function zd(b,d){var c=v[d+16>>2]+v[d+20>>2]|0,e=v[d+4>>2],f=(c>>>10<<2)+e|0,c=(v[d+8>>2]|0)==(e|0)?0:((c&1023)<<2)+v[f>>2]|0;v[b>>2]=f;v[b+4>>2]=c}function $d(b,d,c){var e=n,f=d,d=n;n=n+4;v[d>>2]=v[f>>2];f=c;c=n;n=n+4;v[c>>2]=v[f>>2];d=d|0;f=v[d>>2];c=v[c>>2];if((f|0)!=(c|0)){for(var b=(b+8|0)>>2,h=f,g=v[b];;){if((g|0)==0){g=0}else{v[g>>2]=v[h>>2];g=v[b]}g=g+4|0;v[b]=g;h=h+4|0;if((h|0)==(c|0)){break}}v[d>>2]=((((c-4+ -f|0)>>>2)+1|0)<<2)+f|0}n=e}function S(b){var d=v[b+4>>2];if((d|0)==0){for(;;){d=v[b+8>>2];if((b|0)==(v[d>>2]|0)){var c=d;break}else{b=d}}}else{for(b=d;;){d=v[b>>2];if((d|0)==0){c=b;break}else{b=d}}}return c}function ae(b,d){var c,e,f,h,g=n;n=n+28;var i=g+20,k=g+24;h=(b+4|0)>>2;var l=v[h];f=(b|0)>>2;if((l|0)==(v[f]|0)){e=(b+8|0)>>2;var s=v[e],r=b+12|0;c=(r|0)>>2;var p=v[c];if(s>>>0<p>>>0){c=(p-s+4>>2|0)/2&-1;f=s-l|0;i=(c-(f>>2)<<2)+s|0;be(i,l,f);v[h]=i;v[e]=(c<<2)+v[e]|0;e=i}else{l=p-l>>1;l=(l|0)==0?1:l;ce(g,l,(l+3|0)>>>2,r);v[i>>2]=v[h];v[k>>2]=v[e];$d(g,i,k);l=g|0;i=v[f];v[f]=v[l>>2];v[l>>2]=i;f=g+4|0;l=v[h];v[h]=v[f>>2];v[f>>2]=l;f=g+8|0;l=v[e];v[e]=v[f>>2];v[f>>2]=l;e=g+12|0;f=v[c];v[c]=v[e>>2];v[e>>2]=f;de(g);e=v[h]}}else{e=l}c=e-4|0;if((c|0)!=0){v[c>>2]=v[d>>2];e=v[h]}e=e-4|0;v[h]=e;n=g}ae.X=1;function ee(b,d){var c,e,f,h,g=n;n=n+28;var i=g+20,k=g+24;h=(b+4|0)>>2;var l=v[h];f=(b|0)>>2;if((l|0)==(v[f]|0)){e=(b+8|0)>>2;var s=v[e];c=(b+12|0)>>2;var r=v[c];if(s>>>0<r>>>0){c=(r-s+4>>2|0)/2&-1;f=s-l|0;i=(c-(f>>2)<<2)+s|0;be(i,l,f);v[h]=i;v[e]=(c<<2)+v[e]|0;e=i}else{l=r-l>>1;l=(l|0)==0?1:l;ce(g,l,(l+3|0)>>>2,v[b+16>>2]);v[i>>2]=v[h];v[k>>2]=v[e];$d(g,i,k);l=g|0;i=v[f];v[f]=v[l>>2];v[l>>2]=i;f=g+4|0;l=v[h];v[h]=v[f>>2];v[f>>2]=l;f=g+8|0;l=v[e];v[e]=v[f>>2];v[f>>2]=l;e=g+12|0;f=v[c];v[c]=v[e>>2];v[e>>2]=f;de(g);e=v[h]}}else{e=l}c=e-4|0;if((c|0)!=0){v[c>>2]=v[d>>2];e=v[h]}e=e-4|0;v[h]=e;n=g}ee.X=1;function de(b){v[b+8>>2]=v[b+4>>2];b=v[b>>2];(b|0)!=0&&R(b)}function ce(b,d,c,e){var f=b+12|0;v[f>>2]=0;v[b+16>>2]=e;e=(d|0)==0?0:ed(d<<2);v[b>>2]=e;c=(c<<2)+e|0;v[b+8>>2]=c;v[b+4>>2]=c;v[f>>2]=(d<<2)+e|0}function kd(b,d,c){var e=n;n=n+4;var d=d+4|0,f,h=d;f=v[d>>2];a:for(;;){var g=f;for(f=g>>2;;){if((g|0)==0){break a}if(v[f+4]>>>0>=v[c>>2]>>>0){break}g=v[f+1];f=g>>2}h=g;f=v[f]}v[e>>2]=h;h=v[e>>2];v[b>>2]=(h|0)!=(d|0)&&v[c>>2]>>>0>=v[h+16>>2]>>>0?h:d;n=e}function yd(b){var d,c,e,f,h,g,i,k,l,s,r,p=n;n=n+136;var t=p+20,z=p+24,u=p+28,w=p+48,A=p+52,x=p+56,E=p+76,I=p+80,B=p+84,C=p+104,O=p+108,L=p+112,G=p+116,J=b+16|0,F=v[J>>2];if(F>>>0>1023){v[J>>2]=F-1024|0;r=(b+4|0)>>2;var D=v[r],K=v[D>>2],M=D+4|0;v[r]=M;s=(b+8|0)>>2;var N=v[s],P=b+12|0;l=(P|0)>>2;if((N|0)==(v[l]|0)){k=(b|0)>>2;var U=v[k];if(M>>>0>U>>>0){var Pa=(M-U+4>>2|0)/-2&-1,Y=Pa+1|0,Z=N-M|0;be((Y<<2)+D|0,M,Z);var oa=((Z>>2)+Y<<2)+D|0;v[s]=oa;v[r]=(Pa<<2)+v[r]|0;var pa=oa}else{var vb=N-U>>1,wb=(vb|0)==0?1:vb;ce(B,wb,wb>>>2,P);v[C>>2]=v[r];v[O>>2]=v[s];$d(B,C,O);var xb=B|0,Yb=v[k];v[k]=v[xb>>2];v[xb>>2]=Yb;var cb=B+4|0,Zb=v[r];v[r]=v[cb>>2];v[cb>>2]=Zb;var yb=B+8|0,$b=v[s];v[s]=v[yb>>2];v[yb>>2]=$b;var Ua=B+12|0,db=v[l];v[l]=v[Ua>>2];v[Ua>>2]=db;de(B);pa=v[s]}}else{pa=N}if((pa|0)==0){var Nb=0}else{v[pa>>2]=K;Nb=v[s]}v[s]=Nb+4|0}else{var ea=b|0;i=(b+8|0)>>2;var X=v[i];g=(b+4|0)>>2;var Da=X-v[g]>>2,qa=b+12|0;h=(qa|0)>>2;var Ka=v[h];f=(b|0)>>2;var Ob=Ka-v[f]|0;if(Da>>>0<Ob>>2>>>0){var Pb=ed(4096);if((Ka|0)==(X|0)){v[L>>2]=Pb;ae(ea,L);var ra=v[g],Va=v[ra>>2],va=ra+4|0;v[g]=va;var Ea=v[i];if((Ea|0)==(v[h]|0)){var sa=v[f];if(va>>>0>sa>>>0){var Qa=(va-sa+4>>2|0)/-2&-1,eb=Qa+1|0,Ra=Ea-va|0;be((eb<<2)+ra|0,va,Ra);var Wa=((Ra>>2)+eb<<2)+ra|0;v[i]=Wa;v[g]=(Qa<<2)+v[g]|0;var Sa=Wa}else{var zb=Ea-sa>>1,fa=(zb|0)==0?1:zb;ce(u,fa,fa>>>2,qa);v[w>>2]=v[g];v[A>>2]=v[i];$d(u,w,A);var Ta=u|0,Xa=v[f];v[f]=v[Ta>>2];v[Ta>>2]=Xa;var ga=u+4|0,fb=v[g];v[g]=v[ga>>2];v[ga>>2]=fb;var La=u+8|0,ac=v[i];v[i]=v[La>>2];v[La>>2]=ac;var gb=u+12|0,bc=v[h];v[h]=v[gb>>2];v[gb>>2]=bc;de(u);Sa=v[i]}}else{Sa=Ea}if((Sa|0)==0){var Ab=0}else{v[Sa>>2]=Va;Ab=v[i]}v[i]=Ab+4|0}else{var Fa=v[i];if((Fa|0)==(v[h]|0)){var ja=v[g],ka=v[f];if(ja>>>0>ka>>>0){var la=(ja-ka+4>>2|0)/-2&-1,hb=Fa-ja|0;be((la<<2)+ja|0,ja,hb);var Bb=((hb>>2)+la<<2)+ja|0;v[i]=Bb;v[g]=(la<<2)+v[g]|0;var wa=Bb}else{var Ya=Fa-ka>>1,ib=(Ya|0)==0?1:Ya;ce(x,ib,ib>>>2,qa);v[E>>2]=v[g];v[I>>2]=v[i];$d(x,E,I);var Cb=x|0,Qb=v[f];v[f]=v[Cb>>2];v[Cb>>2]=Qb;var Db=x+4|0,Eb=v[g];v[g]=v[Db>>2];v[Db>>2]=Eb;var jb=x+8|0,Ma=v[i];v[i]=v[jb>>2];v[jb>>2]=Ma;var Fb=x+12|0,cc=v[h];v[h]=v[Fb>>2];v[Fb>>2]=cc;de(x);wa=v[i]}}else{wa=Fa}if((wa|0)==0){var Gb=0}else{v[wa>>2]=Pb;Gb=v[i]}v[i]=Gb+4|0}}else{var xa=Ob>>1;ce(G,(xa|0)==0?1:xa,Da,qa);var Rb=ed(4096);e=(G+8|0)>>2;var $=v[e];c=(G+12|0)>>2;if(($|0)==(v[c]|0)){d=(G+4|0)>>2;var ba=v[d],Hb=G|0,Na=v[Hb>>2];if(ba>>>0>Na>>>0){var kb=(ba-Na+4>>2|0)/-2&-1,Ga=(kb<<2)+ba|0,lb=$-ba|0;be(Ga,ba,lb);var mb=((lb>>2)+kb<<2)+ba|0;v[e]=mb;v[d]=Ga;var ya=mb}else{var nb=$-Na>>1,ob=(nb|0)==0?1:nb;ce(p,ob,ob>>>2,v[G+16>>2]);v[t>>2]=ba;v[z>>2]=$;$d(p,t,z);var Ha=p|0;v[Hb>>2]=v[Ha>>2];v[Ha>>2]=Na;var pb=p+4|0;v[d]=v[pb>>2];v[pb>>2]=ba;var Ib=p+8|0,gc=v[Ib>>2];v[e]=gc;v[Ib>>2]=$;var dc=p+12|0;v[c]=v[dc>>2];v[dc>>2]=$;de(p);ya=gc}}else{ya=$}if((ya|0)==0){var hc=0}else{v[ya>>2]=Rb;hc=ya}v[e]=hc+4|0;for(var ec=v[i];;){if((ec|0)==(v[g]|0)){break}var Uc=ec-4|0;ee(G,Uc);ec=Uc}var Vc=G|0,xf=v[f];v[f]=v[Vc>>2];v[Vc>>2]=xf;var Wc=G+4|0;v[g]=v[Wc>>2];v[Wc>>2]=ec;var yf=v[i];v[i]=v[e];v[e]=yf;var zf=v[h];v[h]=v[c];v[c]=zf;de(G)}}n=p}yd.X=1;function $c(b){var d=b+4|0;v[d>>2]=0;v[b+8>>2]=0;v[b>>2]=d}function fe(b){return(b|0)==0?0:(v[b+12>>2]|0)!=0?0:b}function ge(b){return(b|0)==0?0:(v[b+12>>2]|0)!=2?0:b}function he(b,d,c){var e=n;n=n+4;var d=d+4|0,f,h=d;f=v[d>>2];a:for(;;){var g=f;for(f=g>>2;;){if((g|0)==0){break a}if(v[f+4]>>>0>=v[c>>2]>>>0){break}g=v[f+1];f=g>>2}h=g;f=v[f]}v[e>>2]=h;h=v[e>>2];v[b>>2]=(h|0)!=(d|0)&&v[c>>2]>>>0>=v[h+16>>2]>>>0?h:d;n=e}function ie(b,d){if((d|0)!=0){ie(b,v[d>>2]);ie(b,v[d+4>>2]);R(d)}}function je(b,d){if((d|0)!=0){je(b,v[d>>2]);je(b,v[d+4>>2]);R(d)}}function Jd(b){b=b|0;ke(b,v[b+4>>2])}function ke(b,d){if((d|0)!=0){ke(b,v[d>>2]);ke(b,v[d+4>>2]);R(d)}}function Hd(b,d){for(var c,e=b;;){var f=fe(e);if((f|0)==0){var h=Lc(e);if((h|0)==0){e=ge(e);if((e|0)==0){c=680;break}var g=v[e+20>>2];Hd(g,g);e=v[e+8>>2]}else{var e=v[h+20>>2],g=h+24|0,i=(e|0)==(g|0),h=h+8|0;a:do{if(!i){for(var k=g,l=e;;){Hd(v[l+20>>2],v[h>>2]);l=S(l|0);if((l|0)==(k|0)){break a}}}}while(0);e=v[h>>2]}}else{e=v[f+8>>2];if((e|0)==0){c=664;break}}}if(c!=680&&c==664){c=f+16|0;f=v[c>>2];e=v[f+24>>2];if((e|0)!=(f+28|0)){for(f=e;;){e=v[f+20>>2];g=e+4|0;if((v[g>>2]|0)!=0&&(v[v[f+16>>2]+48>>2]|0)==(d|0)){v[g>>2]=0;e=Lc(v[e>>2]);if((e|0)!=0){e=e+32|0;v[e>>2]=v[e>>2]-1|0}}f=S(f|0);if((f|0)==(v[c>>2]+28|0)){break}}}}}Hd.X=1;function Id(b,d){var c,e,f,h=n;n=n+12;var g=h+4,i=h+8;f=(b+4|0)>>2;e=v[f];var k=(e|0)==0;if(k){var l=ed(24);e=l>>2;v[e]=0;v[e+1]=0;v[e+2]=0;v[e+3]=0;v[e+4]=0;v[e+5]=0;e=v[f]=l}var l=fe(d),s=(l|0)==0;a:do{if(s){var r=Lc(d);if((r|0)==0){c=ge(d);if((c|0)!=0){v[i>>2]=c|0;var p=e;le(p,i);Id(b,v[c+20>>2]);me(p);c=v[d+8>>2];(c|0)!=0&&Id(b,c)}}else{c=r+32|0;if((v[c>>2]|0)!=0){v[g>>2]=r|0;le(e,g)}var p=v[r+20>>2],r=r+24|0,t=(p|0)==(r|0);b:do{if(!t){for(var z=r,u=p;;){Id(b,v[u+20>>2]);u=S(u|0);if((u|0)==(z|0)){break b}}}}while(0);(v[c>>2]|0)!=0&&me(e);c=v[d+8>>2];(c|0)!=0&&Id(b,c)}}else{p=d+8|0;t=Lc(v[p>>2]);c=t>>2;r=(t|0)!=0;b:do{if(r&&(v[c+8]|0)!=0){v[h>>2]=t|0;le(e,h);u=v[c+5];z=t+24|0;if((u|0)!=(z|0)){for(;;){Id(b,v[u+20>>2]);u=S(u|0);if((u|0)==(z|0)){break b}}}}}while(0);t=l+16|0;u=v[t>>2];z=v[u+24>>2];u=(z|0)==(u+28|0);b:do{if(!u){for(var w=e+20|0,A=e+16|0,x=e+4|0,E=z;;){var I=v[E+20>>2];if((v[I+4>>2]|0)!=0){var B=v[w>>2];if((B|0)==0){Sc(851,Q.mb|0,Q.Zb|0);var C=v[w>>2]}else{C=B}B=v[I>>2];C=C-1+v[A>>2]|0;if((B|0)==(v[v[v[x>>2]+(C>>>10<<2)>>2]+((C&1023)<<2)>>2]|0)){q[I+8|0]=0}else{B=(Lc(B)|0)==0&&(ge(B)|0)==0?0:B;q[B+16|0]=1;q[I+8|0]=1}}E=S(E|0);if((E|0)==(v[t>>2]+28|0)){break b}}}}while(0);do{if(r&&(v[c+8]|0)!=0){me(e);g=v[c+2];if((g|0)==0){break a}Id(b,g);break a}}while(0);c=v[p>>2];(c|0)!=0&&Id(b,c)}}while(0);if(k){f=v[f];if((f|0)!=0){vd(f|0);R(f)}}n=h}Id.X=1;function me(b){var d;d=b+20|0;var c=v[d>>2]-1|0;v[d>>2]=c;d=(b+8|0)>>2;var e=v[d],f=v[b+4>>2];if((((e|0)==(f|0)?0:(e-f<<8)-1|0)-v[b+16>>2]-c|0)>>>0>2047){R(v[e-4>>2]);v[d]=v[d]-4|0}}function le(b,d){var c,e=n;n=n+8;var f=v[b+8>>2],h=v[b+4>>2];c=(b+20|0)>>2;(((f|0)==(h|0)?0:(f-h<<8)-1|0)|0)==(v[c]+v[b+16>>2]|0)&&ne(b);oe(e,b|0);f=v[e+4>>2];(f|0)!=0&&(v[f>>2]=v[d>>2]);f=v[c];f=f+1|0;v[c]=f;n=e}function oe(b,d){var c=v[d+16>>2]+v[d+20>>2]|0,e=v[d+4>>2],f=(c>>>10<<2)+e|0,c=(v[d+8>>2]|0)==(e|0)?0:((c&1023)<<2)+v[f>>2]|0;v[b>>2]=f;v[b+4>>2]=c}function pe(b,d,c){var e=n,f=d,d=n;n=n+4;v[d>>2]=v[f>>2];f=c;c=n;n=n+4;v[c>>2]=v[f>>2];d=d|0;f=v[d>>2];c=v[c>>2];if((f|0)!=(c|0)){for(var b=(b+8|0)>>2,h=f,g=v[b];;){if((g|0)==0){g=0}else{v[g>>2]=v[h>>2];g=v[b]}g=g+4|0;v[b]=g;h=h+4|0;if((h|0)==(c|0)){break}}v[d>>2]=((((c-4+ -f|0)>>>2)+1|0)<<2)+f|0}n=e}function qe(b,d){var c,e,f,h,g=n;n=n+28;var i=g+20,k=g+24;h=(b+4|0)>>2;var l=v[h];f=(b|0)>>2;if((l|0)==(v[f]|0)){e=(b+8|0)>>2;var s=v[e],r=b+12|0;c=(r|0)>>2;var p=v[c];if(s>>>0<p>>>0){c=(p-s+4>>2|0)/2&-1;f=s-l|0;i=(c-(f>>2)<<2)+s|0;be(i,l,f);v[h]=i;v[e]=(c<<2)+v[e]|0;e=i}else{l=p-l>>1;l=(l|0)==0?1:l;re(g,l,(l+3|0)>>>2,r);v[i>>2]=v[h];v[k>>2]=v[e];pe(g,i,k);l=g|0;i=v[f];v[f]=v[l>>2];v[l>>2]=i;f=g+4|0;l=v[h];v[h]=v[f>>2];v[f>>2]=l;f=g+8|0;l=v[e];v[e]=v[f>>2];v[f>>2]=l;e=g+12|0;f=v[c];v[c]=v[e>>2];v[e>>2]=f;se(g);e=v[h]}}else{e=l}c=e-4|0;if((c|0)!=0){v[c>>2]=v[d>>2];e=v[h]}e=e-4|0;v[h]=e;n=g}qe.X=1;function te(b,d){var c,e,f,h,g=n;n=n+28;var i=g+20,k=g+24;h=(b+4|0)>>2;var l=v[h];f=(b|0)>>2;if((l|0)==(v[f]|0)){e=(b+8|0)>>2;var s=v[e];c=(b+12|0)>>2;var r=v[c];if(s>>>0<r>>>0){c=(r-s+4>>2|0)/2&-1;f=s-l|0;i=(c-(f>>2)<<2)+s|0;be(i,l,f);v[h]=i;v[e]=(c<<2)+v[e]|0;e=i}else{l=r-l>>1;l=(l|0)==0?1:l;re(g,l,(l+3|0)>>>2,v[b+16>>2]);v[i>>2]=v[h];v[k>>2]=v[e];pe(g,i,k);l=g|0;i=v[f];v[f]=v[l>>2];v[l>>2]=i;f=g+4|0;l=v[h];v[h]=v[f>>2];v[f>>2]=l;f=g+8|0;l=v[e];v[e]=v[f>>2];v[f>>2]=l;e=g+12|0;f=v[c];v[c]=v[e>>2];v[e>>2]=f;se(g);e=v[h]}}else{e=l}c=e-4|0;if((c|0)!=0){v[c>>2]=v[d>>2];e=v[h]}e=e-4|0;v[h]=e;n=g}te.X=1;function se(b){v[b+8>>2]=v[b+4>>2];b=v[b>>2];(b|0)!=0&&R(b)}function re(b,d,c,e){var f=b+12|0;v[f>>2]=0;v[b+16>>2]=e;e=(d|0)==0?0:ed(d<<2);v[b>>2]=e;c=(c<<2)+e|0;v[b+8>>2]=c;v[b+4>>2]=c;v[f>>2]=(d<<2)+e|0}function Nd(b,d,c){var e=n;n=n+36;var f=e+8,h=e+12,g=e+24;v[f>>2]=c;id(Q.wc|0,(o=n,n=n+4,v[o>>2]=v[c+52>>2],o));var i=ed(20);ue(i|0,0);v[i>>2]=ve+8|0;v[i+16>>2]=0;we(v[b>>2],i);v[i+16>>2]=c;v[c+48>>2]=i;if(v[d+8>>2]>>>0>1){xe(d|0,f);Bd(h|0);var k=v[f>>2],c=n;n=n+12;var l=c+4,s=v[k>>2],k=k+4|0;if((s|0)!=(k|0)){var r=h|0,p=d|0,t=c|0,z=d+4|0;if((d|0)==0){for(p=s;;){Fd(l,r,p+16|0);p=S(p|0);if((p|0)==(k|0)){break}}}else{for(;;){var u=s+16|0;Dd(c,p,u);(v[t>>2]|0)!=(z|0)&&Fd(l,r,u);s=S(s|0);if((s|0)==(k|0)){break}}}}n=c;c=g|0;Bd(c);Fd(e,c,f);f=h+4|0;for(c=v[h>>2];;){if((c|0)==(f|0)){break}ye(v[c+16>>2],0,i,g);c=Kd(c|0)}v[i+8>>2]=Gd(b,d,h,i);Jd(g);Jd(h)}n=e;return i}Nd.X=1;function ne(b){var d,c,e,f,h,g,i,k,l,s,r,p=n;n=n+136;var t=p+20,z=p+24,u=p+28,w=p+48,A=p+52,x=p+56,E=p+76,I=p+80,B=p+84,C=p+104,O=p+108,L=p+112,G=p+116,J=b+16|0,F=v[J>>2];if(F>>>0>1023){v[J>>2]=F-1024|0;r=(b+4|0)>>2;var D=v[r],K=v[D>>2],M=D+4|0;v[r]=M;s=(b+8|0)>>2;var N=v[s],P=b+12|0;l=(P|0)>>2;if((N|0)==(v[l]|0)){k=(b|0)>>2;var U=v[k];if(M>>>0>U>>>0){var Pa=(M-U+4>>2|0)/-2&-1,Y=Pa+1|0,Z=N-M|0;be((Y<<2)+D|0,M,Z);var oa=((Z>>2)+Y<<2)+D|0;v[s]=oa;v[r]=(Pa<<2)+v[r]|0;var pa=oa}else{var vb=N-U>>1,wb=(vb|0)==0?1:vb;re(B,wb,wb>>>2,P);v[C>>2]=v[r];v[O>>2]=v[s];pe(B,C,O);var xb=B|0,Yb=v[k];v[k]=v[xb>>2];v[xb>>2]=Yb;var cb=B+4|0,Zb=v[r];v[r]=v[cb>>2];v[cb>>2]=Zb;var yb=B+8|0,$b=v[s];v[s]=v[yb>>2];v[yb>>2]=$b;var Ua=B+12|0,db=v[l];v[l]=v[Ua>>2];v[Ua>>2]=db;se(B);pa=v[s]}}else{pa=N}if((pa|0)==0){var Nb=0}else{v[pa>>2]=K;Nb=v[s]}v[s]=Nb+4|0}else{var ea=b|0;i=(b+8|0)>>2;var X=v[i];g=(b+4|0)>>2;var Da=X-v[g]>>2,qa=b+12|0;h=(qa|0)>>2;var Ka=v[h];f=(b|0)>>2;var Ob=Ka-v[f]|0;if(Da>>>0<Ob>>2>>>0){var Pb=ed(4096);if((Ka|0)==(X|0)){v[L>>2]=Pb;qe(ea,L);var ra=v[g],Va=v[ra>>2],va=ra+4|0;v[g]=va;var Ea=v[i];if((Ea|0)==(v[h]|0)){var sa=v[f];if(va>>>0>sa>>>0){var Qa=(va-sa+4>>2|0)/-2&-1,eb=Qa+1|0,Ra=Ea-va|0;be((eb<<2)+ra|0,va,Ra);var Wa=((Ra>>2)+eb<<2)+ra|0;v[i]=Wa;v[g]=(Qa<<2)+v[g]|0;var Sa=Wa}else{var zb=Ea-sa>>1,fa=(zb|0)==0?1:zb;re(u,fa,fa>>>2,qa);v[w>>2]=v[g];v[A>>2]=v[i];pe(u,w,A);var Ta=u|0,Xa=v[f];v[f]=v[Ta>>2];v[Ta>>2]=Xa;var ga=u+4|0,fb=v[g];v[g]=v[ga>>2];v[ga>>2]=fb;var La=u+8|0,ac=v[i];v[i]=v[La>>2];v[La>>2]=ac;var gb=u+12|0,bc=v[h];v[h]=v[gb>>2];v[gb>>2]=bc;se(u);Sa=v[i]}}else{Sa=Ea}if((Sa|0)==0){var Ab=0}else{v[Sa>>2]=Va;Ab=v[i]}v[i]=Ab+4|0}else{var Fa=v[i];if((Fa|0)==(v[h]|0)){var ja=v[g],ka=v[f];if(ja>>>0>ka>>>0){var la=(ja-ka+4>>2|0)/-2&-1,hb=Fa-ja|0;be((la<<2)+ja|0,ja,hb);var Bb=((hb>>2)+la<<2)+ja|0;v[i]=Bb;v[g]=(la<<2)+v[g]|0;var wa=Bb}else{var Ya=Fa-ka>>1,ib=(Ya|0)==0?1:Ya;re(x,ib,ib>>>2,qa);v[E>>2]=v[g];v[I>>2]=v[i];pe(x,E,I);var Cb=x|0,Qb=v[f];v[f]=v[Cb>>2];v[Cb>>2]=Qb;var Db=x+4|0,Eb=v[g];v[g]=v[Db>>2];v[Db>>2]=Eb;var jb=x+8|0,Ma=v[i];v[i]=v[jb>>2];v[jb>>2]=Ma;var Fb=x+12|0,cc=v[h];v[h]=v[Fb>>2];v[Fb>>2]=cc;se(x);wa=v[i]}}else{wa=Fa}if((wa|0)==0){var Gb=0}else{v[wa>>2]=Pb;Gb=v[i]}v[i]=Gb+4|0}}else{var xa=Ob>>1;re(G,(xa|0)==0?1:xa,Da,qa);var Rb=ed(4096);e=(G+8|0)>>2;var $=v[e];c=(G+12|0)>>2;if(($|0)==(v[c]|0)){d=(G+4|0)>>2;var ba=v[d],Hb=G|0,Na=v[Hb>>2];if(ba>>>0>Na>>>0){var kb=(ba-Na+4>>2|0)/-2&-1,Ga=(kb<<2)+ba|0,lb=$-ba|0;be(Ga,ba,lb);var mb=((lb>>2)+kb<<2)+ba|0;v[e]=mb;v[d]=Ga;var ya=mb}else{var nb=$-Na>>1,ob=(nb|0)==0?1:nb;re(p,ob,ob>>>2,v[G+16>>2]);v[t>>2]=ba;v[z>>2]=$;pe(p,t,z);var Ha=p|0;v[Hb>>2]=v[Ha>>2];v[Ha>>2]=Na;var pb=p+4|0;v[d]=v[pb>>2];v[pb>>2]=ba;var Ib=p+8|0,gc=v[Ib>>2];v[e]=gc;v[Ib>>2]=$;var dc=p+12|0;v[c]=v[dc>>2];v[dc>>2]=$;se(p);ya=gc}}else{ya=$}if((ya|0)==0){var hc=0}else{v[ya>>2]=Rb;hc=ya}v[e]=hc+4|0;for(var ec=v[i];;){if((ec|0)==(v[g]|0)){break}var Uc=ec-4|0;te(G,Uc);ec=Uc}var Vc=G|0,xf=v[f];v[f]=v[Vc>>2];v[Vc>>2]=xf;var Wc=G+4|0;v[g]=v[Wc>>2];v[Wc>>2]=ec;var yf=v[i];v[i]=v[e];v[e]=yf;var zf=v[h];v[h]=v[c];v[c]=zf;se(G)}}n=p}ne.X=1;function Od(b,d,c){var e,f=n;n=n+100;var h=f+8,g=f+12,i=f+16,k=f+20,l=f+28,s=f+36,r=f+40,p=f+44,t=f+48,z=f+52,u=f+56,w=f+68,A=f+80;e=A>>2;var x=f+84,E=f+96,I=u|0;Bd(I);var B=w|0,C=B+4|0;v[C>>2]=0;v[B+8>>2]=0;v[B>>2]=C;for(var O=c|0,C=c+4|0,L=w+4|0,G=t|0,J=v[O>>2];;){if((J|0)==(C|0)){break}v[G>>2]=L;var F=z,D=B,K=t,M=J+16|0,N=n;n=n+20;var P=K,K=n;n=n+4;v[K>>2]=v[P>>2];var U=N+4,P=N+8;v[U>>2]=v[K>>2];K=ze(D,U,N,M);U=v[K>>2];if((U|0)==0){Yd(P,D,M);M=P|0;P=v[M>>2];v[M>>2]=0;Zd(D,v[N>>2],K,P|0);D=P}else{D=U}F=F|0;v[F>>2]=D;n=N;J=Kd(J|0)}z=w+8|0;L=w|0;G=p|0;J=s|0;t=u+4|0;N=d|0;a:for(;;){if((v[z>>2]|0)==0){break}F=v[L>>2];v[e]=v[F+16>>2];v[G>>2]=F;Ae(r,B,p);Dd(s,I,A);if((v[J>>2]|0)==(t|0)){Fd(l,I,A);xe(N,A);D=v[e];for(F=v[D+12>>2];;){if((F|0)==(D+16|0)){continue a}Fd(k,B,F+16|0);F=S(F|0);D=v[e]}}}(v[u+8>>2]|0)==0&&Sc(479,Q.nb|0,Q.qc|0);e=x|0;Bd(e);k=i|0;l=g|0;s=h|0;for(r=v[u>>2];;){if((r|0)==(t|0)){break}A=v[r+16>>2];p=A+4|0;for(A=v[A>>2];;){if((A|0)==(p|0)){break}v[E>>2]=v[A+16>>2];Dd(i,I,E);if((v[k>>2]|0)==(t|0)){Dd(g,e,E);B=v[l>>2];Dd(h,e,E);(B|0)==(v[s>>2]|0)&&Fd(f,e,E)}A=S(A|0)}r=Kd(r|0)}id(Q.rc|0,(o=n,n=n+1,n=n+3>>2<<2,v[o>>2]=0,o));Md(u,Q.sc|0);Md(c,Q.tc|0);Md(d,Q.uc|0);Md(x,Q.vc|0);h=ed(24);Be(h|0,2);v[h>>2]=Ce+8|0;v[h+20>>2]=0;we(v[b>>2],h);for(g=v[O>>2];;){if((g|0)==(C|0)){break}ye(v[g+16>>2],2,h,u);g=Kd(g|0)}C=x+4|0;for(g=v[x>>2];;){if((g|0)==(C|0)){break}ye(v[g+16>>2],1,h,u);g=Kd(g|0)}v[h+20>>2]=Gd(b,u,c,0);v[h+8>>2]=Gd(b,d,x,h);Jd(x);Jd(w);Jd(u);n=f;return h}Od.X=1;function Pd(b,d){var c,e,f=n;n=n+84;var h=f+8,g=f+12,i=f+20,k=f+36,l=f+48,s=f+52,r=f+56;e=r>>2;var p=f+60,t=f+64,z=f+76,u=f+80;v[i>>2]=d;var w=i+4|0;c=w+4|0;v[c>>2]=0;v[w+8>>2]=0;v[w>>2]=c;v[k>>2]=k;var A=k+4|0;v[A>>2]=k;var x=k+8|0;v[x>>2]=0;c=(b|0)>>2;for(var w=b+4|0,E=i+4|0,I=v[c];;){if((I|0)==(w|0)){break}var B=v[I+16>>2];v[l>>2]=B;v[De(E,l)>>2]=B;Fd(g,Ee(d,l)|0,l);Fe(k,l);I=Kd(I|0)}g=E|0;l=h|0;I=i+8|0;a:for(;;){if((v[x>>2]|0)==0){break}v[s>>2]=v[v[A>>2]+8>>2];Ge(k);B=v[De(E,s)>>2];v[e]=B;if((B|0)!=0){for(var C=v[s>>2],B=C+4|0,C=v[C>>2];;){if((C|0)==(B|0)){continue a}v[p>>2]=v[C+16>>2];He(h,g,p);var O=v[l>>2];if((O|0)==(I|0)){O=v[e];v[De(E,p)>>2]=O;Fd(f,Ee(d,r)|0,p);Fe(k,p)}else{O=v[O+20>>2];(O|0)!=0&&(O|0)!=(v[e]|0)&&Ie(i,v[p>>2])}C=S(C|0)}}}e=t|0;h=t+4|0;s=t+8|0;for(r=v[c];;){if((r|0)==(w|0)){break}A=Ee(d,r+16|0);v[e>>2]=t;v[h>>2]=t;v[s>>2]=0;p=A+4|0;for(A=v[A>>2];;){if((A|0)==(p|0)){break}g=v[A+16>>2];v[z>>2]=g;for(x=v[g+12>>2];;){if((x|0)==(g+16|0)){break}v[u>>2]=v[x+16>>2];(v[De(E,u)>>2]|0)!=(v[De(E,z)>>2]|0)&&Fe(t,z);x=S(x|0);g=v[z>>2]}A=Kd(A|0)}for(;;){if((v[s>>2]|0)==0){break}p=v[v[h>>2]+8>>2];Ge(t);Ie(i,p)}Je(t|0);r=Kd(r|0)}t=d|0;for(z=v[c];;){if((z|0)==(w|0)){break}c=z+16|0;if((v[Ee(d,c)+8>>2]|0)==0){u=t;e=c;c=n;n=n+12;E=c+4;Ke(c,u,e);e=v[c>>2];if((e|0)!=(u+4|0)){v[E>>2]=e;Qd(c+8,u,E)}n=c}z=Kd(z|0)}if((q[pd]&1)<<24>>24!=0){id(Q.nc|0,(o=n,n=n+1,n=n+3>>2<<2,v[o>>2]=0,o));t=v[d>>2];w=d+4|0;if((t|0)!=(w|0)){for(;;){Md(t+20|0,Q.pc|0);t=S(t|0);if((t|0)==(w|0)){break}}}}Je(k|0);i=i+4|0;Le(i,v[i+4>>2]);n=f}Pd.X=1;function Rd(b,d,c,e,f){var h=n;n=n+72;var g=h+8,i=h+12,k=h+20,l=h+24,s=h+32,r=h+44,p=h+56,t=h+60,z=h+64,u=h+68,w=e|0;id(Q.gc|0,(o=n,n=n+4,v[o>>2]=v[e+8>>2],o));var A=(fe(f)|0)==0,f=ed(36);Be(f|0,1);v[f>>2]=Me+8|0;var x=f+20|0,E=x+4|0;v[E>>2]=0;v[x+8>>2]=0;v[x>>2]=E;v[f+32>>2]=0;we(v[b>>2],f);x=s|0;Bd(x);var I=r|0;Bd(I);for(var E=e+4|0,B=d|0,C=k|0,O=f+20|0,e=v[e>>2];;){if((e|0)==(E|0)){break}var L=v[e+16>>2];v[p>>2]=L;var G=e+20|0;id(Q.hc|0,(o=n,n=n+4,v[o>>2]=v[L+52>>2],o));Md(G,Q.ic|0);var L=I,J=L+4|0,F=J|0;ke(L,v[F>>2]);v[L+8>>2]=0;v[L>>2]=J;v[F>>2]=0;Fd(l,I,p);L=G|0;J=e+24|0;for(F=v[G>>2];;){if((F|0)==(J|0)){break}v[t>>2]=v[F+16>>2];xe(B,t);for(var D=v[t>>2],K=D+4|0,D=v[D>>2];;){if((D|0)==(K|0)){break}v[z>>2]=v[D+16>>2];D=S(D|0);Dd(k,L,z);if((v[C>>2]|0)==(J|0)){Fd(i,x,z);ye(v[z>>2],1,f,G)}}F=Kd(F|0)}G=Gd(b,G,r,0);L=v;F=O;D=p;J=n;n=n+16;var K=J+4,M;M=J;var N=D,P=ca,U=F+4|0,Pa=U|0,Y=v[Pa>>2];if((Y|0)==0){v[M>>2]=U;M=Pa}else{for(N=v[N>>2];;){U=v[Y+16>>2];if(N>>>0<U>>>0){var Z=Y|0,U=v[Z>>2];if((U|0)==0){P=1015;break}else{Y=U}}else{if(U>>>0>=N>>>0){P=1019;break}var oa=Y+4|0,U=v[oa>>2];if((U|0)==0){P=1018;break}else{Y=U}}}if(P==1019){v[M>>2]=Y}else{if(P==1015){v[M>>2]=Y;M=Z}else{if(P==1018){v[M>>2]=Y;M=oa}else{M=ca}}}}P=v[M>>2];if((P|0)==0){N=K;P=F;Y=D;D=ed(24);U=D+16|0;(U|0)!=0&&(v[U>>2]=v[Y>>2]);Y=D+20|0;(Y|0)!=0&&(v[Y>>2]=0);v[N>>2]=D;D=N+4|0;v[D>>2]=P+4|0;v[D+4>>2]=257;D=K|0;K=v[D>>2];v[D>>2]=0;F=F|0;P=v[J>>2];D=M;M=K|0;v[M>>2]=0;v[M+4>>2]=0;v[M+8>>2]=P;v[D>>2]=M;P=F|0;N=v[v[P>>2]>>2];if((N|0)==0){D=M}else{v[P>>2]=N;D=v[D>>2]}fd(v[F+4>>2],D);F=F+8|0;v[F>>2]=v[F>>2]+1|0;F=K}else{F=P}F=F+20|0;n=J;L[F>>2]=G;A&&(q[v[p>>2]+64|0]=1);e=S(e|0)}Md(d,Q.jc|0);i=c+4|0;k=g|0;for(c=v[c>>2];;){if((c|0)==(i|0)){break}v[u>>2]=v[c+16>>2];Ke(g,w,u);(v[k>>2]|0)==(E|0)&&Fd(h,x,u);c=Kd(c|0)}v[f+8>>2]=Gd(b,d,s,f);Jd(r);Jd(s);n=h;return f}Rd.X=1;function Sd(b,d){if((d|0)!=0){Sd(b,v[d>>2]);Sd(b,v[d+4>>2]);Jd((d+16|0)+4|0);R(d)}}function we(b,d){var c=n;n=n+4;v[c>>2]=d;le(b+24|0,c);n=c}function ue(b,d){v[b>>2]=Ne+8|0;var c=v[Oe>>2];v[Oe>>2]=c+1|0;v[b+4>>2]=c;v[b+8>>2]=0;v[b+12>>2]=d}function ye(b,d,c,e){var f,h,g=n;n=n+12;var i=g+4;h=i>>2;var k=g+8;f=k>>2;v[h]=b;id(Q.kc|0,(o=n,n=n+4,v[o>>2]=v[b+52>>2],o));Md(e,Q.lc|0);var l=v[b+12>>2];if((l|0)!=(b+16|0)){for(var s=e|0,r=g|0,e=e+4|0;;){v[f]=v[l+16>>2];Dd(g,s,k);if((v[r>>2]|0)==(e|0)){l=S(l|0)}else{var p=v[l+20>>2],b=v[dd(v[f]|0,i)>>2];v[b>>2]=c;v[b+4>>2]=d;var t=Lc(c);if((t|0)!=0){t=t+32|0;v[t>>2]=v[t>>2]+1|0}l=S(l|0);t=v[h];Ld(t+12|0,k);v[dd(t+36|0,k)>>2]=p;p=v[f];Ld(p|0,i);v[dd(p+24|0,i)>>2]=b;id(Q.mc|0,(o=n,n=n+4,v[o>>2]=v[p+52>>2],o));b=v[h]}if((l|0)==(b+16|0)){break}}}n=g}ye.X=1;function Ke(b,d,c){var e=n;n=n+4;var d=d+4|0,f,h=d;f=v[d>>2];a:for(;;){var g=f;for(f=g>>2;;){if((g|0)==0){break a}if(v[f+4]>>>0>=v[c>>2]>>>0){break}g=v[f+1];f=g>>2}h=g;f=v[f]}v[e>>2]=h;h=v[e>>2];v[b>>2]=(h|0)!=(d|0)&&v[c>>2]>>>0>=v[h+16>>2]>>>0?h:d;n=e}function Ld(b,d){var c=n;n=n+12;var e=c+4;he(c,b,d);var f=v[c>>2];if((f|0)!=(b+4|0)){v[e>>2]=f;var f=n,h=e,e=n;n=n+4;v[e>>2]=v[h>>2];var e=v[e>>2],h=e|0,g=S(h);v[c+8>>2]=g;var i=b|0;(v[i>>2]|0)==(e|0)&&(v[i>>2]=g);g=b+8|0;v[g>>2]=v[g>>2]-1|0;Pe(v[b+4>>2],h);R(e);n=f}n=c}function Pe(b,d){var c,e,f,h,g,i=d|0;g=v[i>>2];if((g|0)==0){var k=d,l=i;g=1070}else{if((v[d+4>>2]|0)==0){var s=g,r=d,p=i;g=1072}else{g=S(d);var t=g|0,z=v[t>>2];if((z|0)==0){k=g;l=t;g=1070}else{s=z;r=g;p=t;g=1072}}}if(g==1070){t=v[k+4>>2];if((t|0)!=0){s=t;r=k;p=l;g=1072}else{var u=0,w=0;h=(k+8|0)>>2;f=k;var A=l}}if(g==1072){f=r+8|0;v[s+8>>2]=v[f>>2];u=s;w=1;h=f>>2;f=r;A=p}s=v[h];r=s|0;if((f|0)==(v[r>>2]|0)){v[r>>2]=u;if((f|0)==(b|0)){s=0;p=u}else{s=v[v[h]+4>>2];p=b}}else{v[s+4>>2]=u;s=v[v[h]>>2];p=b}k=f+12|0;r=(q[k]&1)<<24>>24==0;if((f|0)==(d|0)){f=p}else{l=d+8|0;t=v[l>>2];v[h]=t;(v[v[l>>2]>>2]|0)==(d|0)?v[t>>2]=f:v[t+4>>2]=f;i=v[i>>2];v[A>>2]=i;v[i+8>>2]=f;i=v[d+4>>2];v[f+4>>2]=i;(i|0)!=0&&(v[i+8>>2]=f);q[k]=q[d+12|0]&1;f=(p|0)==(d|0)?f:p}if(!(r|(f|0)==0)){if(w){q[u+12|0]=1}else{u=s;for(w=f;;){f=(u+8|0)>>2;i=v[f];A=u+12|0;h=(q[A]&1)<<24>>24!=0;if((u|0)==(v[i>>2]|0)){if(h){var x=u;e=x>>2}else{q[A]=1;q[i+12|0]=0;Wd(v[f]);var E=v[u+4>>2],x=v[E>>2];e=x>>2;w=(w|0)==(E|0)?u:w}var E=v[e],I=(E|0)==0;if(!I){u=q[E+12|0];if((u&1)<<24>>24==0){var B=u;g=1117;break}}var C=v[e+1];if((C|0)!=0&&(q[C+12|0]&1)<<24>>24==0){g=1115;break}q[x+12|0]=0;var u=v[e+2],O=u+12|0;if((q[O]&1)<<24>>24==0|(u|0)==(w|0)){g=1112;break}}else{if(h){var L=u;c=L>>2}else{q[A]=1;q[i+12|0]=0;Vd(v[f]);var G=v[u>>2],L=v[G+4>>2];c=L>>2;w=(w|0)==(G|0)?u:w}G=v[c];if((G|0)!=0){var J=G+12|0;if((q[J]&1)<<24>>24==0){g=1099;break}}u=v[c+1];if((u|0)!=0){u=q[u+12|0];if((u&1)<<24>>24==0){var F=u;g=1101;break}}q[L+12|0]=0;var u=v[c+2],D=u+12|0;if((u|0)==(w|0)){g=1096;break}if((q[D]&1)<<24>>24==0){g=1096;break}}f=v[u+8>>2];i=v[f>>2];u=(u|0)!=(i|0)?i:v[f+4>>2]}if(g==1096){q[D]=1}else{if(g==1099){C=v[c+1];if((C|0)==0){var K=J;g=1103}else{F=q[C+12|0];g=1101}}else{if(g==1115){if(I){var M=C;g=1119}else{B=q[E+12|0];g=1117}}else{if(g==1112){q[O]=1;return}}}if(g==1117){if((B&1)<<24>>24==0){var N=x;g=1120}else{M=v[e+1];g=1119}}else{if(g==1101){if((F&1)<<24>>24==0){var P=L;g=1104}else{K=G+12|0;g=1103}}}if(g==1119){q[M+12|0]=1;q[x+12|0]=0;Vd(x);N=v[e+2];g=1120}else{if(g==1103){q[K]=1;q[L+12|0]=0;Wd(L);P=v[c+2];g=1104}}if(g==1120){P=N+8|0;c=v[P>>2]+12|0;q[N+12|0]=q[c]&1;q[c]=1;q[v[N>>2]+12|0]=1;Wd(v[P>>2])}else{if(g==1104){N=P+8|0;c=v[N>>2]+12|0;q[P+12|0]=q[c]&1;q[c]=1;q[v[P+4>>2]+12|0]=1;Vd(v[N>>2])}}}}}}Pe.X=1;function xe(b,d){var c=n;n=n+12;var e=c+4;Dd(c,b,d);var f=v[c>>2];if((f|0)!=(b+4|0)){v[e>>2]=f;Ae(c+8,b,e)}n=c}function Ae(b,d,c){var e=n,f=c,c=n;n=n+4;v[c>>2]=v[f>>2];var c=v[c>>2],f=c|0,h=S(f);v[b>>2]=h;b=d|0;(v[b>>2]|0)==(c|0)&&(v[b>>2]=h);b=d+8|0;v[b>>2]=v[b>>2]-1|0;Pe(v[d+4>>2],f);R(c);n=e}function Be(b,d){ue(b|0,d);v[b>>2]=Qe+8|0;q[b+16|0]=0}function Qd(b,d,c){var e=n,f=c,c=n;n=n+4;v[c>>2]=v[f>>2];var c=v[c>>2],f=c|0,h=S(f);v[b>>2]=h;b=d|0;(v[b>>2]|0)==(c|0)&&(v[b>>2]=h);b=d+8|0;v[b>>2]=v[b>>2]-1|0;Jd((c+16|0)+4|0);Pe(v[d+4>>2],f);R(c);n=e}function De(b,d){var c=n;n=n+16;var e=c+4,f;var h=b+4|0,g=h|0,i=v[g>>2];if((i|0)==0){v[c>>2]=h;f=g}else{for(h=v[d>>2];;){g=v[i+16>>2];if(h>>>0<g>>>0){var k=i|0,g=v[k>>2];if((g|0)==0){f=1182;break}else{i=g}}else{if(g>>>0>=h>>>0){f=1186;break}var l=i+4|0,g=v[l>>2];if((g|0)==0){f=1185;break}else{i=g}}}if(f==1185){v[c>>2]=i;f=l}else{if(f==1182){v[c>>2]=i;f=k}else{if(f==1186){v[c>>2]=i;f=c}else{f=ca}}}}k=v[f>>2];if((k|0)==0){k=ed(24);l=k+16|0;(l|0)!=0&&(v[l>>2]=v[d>>2]);l=k+20|0;(l|0)!=0&&(v[l>>2]=0);v[e>>2]=k;k=e+4|0;v[k>>2]=b+4|0;v[k+4>>2]=257;k=e|0;e=v[k>>2];v[k>>2]=0;k=b|0;h=v[c>>2];l=e|0;v[l>>2]=0;v[l+4>>2]=0;v[l+8>>2]=h;v[f>>2]=l;h=k|0;i=v[v[h>>2]>>2];if((i|0)==0){f=l}else{v[h>>2]=i;f=v[f>>2]}fd(v[k+4>>2],f);f=k+8|0;v[f>>2]=v[f>>2]+1|0;e=e+20|0}else{e=k+20|0}n=c;return e}function Ee(b,d){var c=n;n=n+16;var e=c+4,f;var h=b+4|0,g=h|0,i=v[g>>2];if((i|0)==0){v[c>>2]=h;f=g}else{for(h=v[d>>2];;){g=v[i+16>>2];if(h>>>0<g>>>0){var k=i|0,g=v[k>>2];if((g|0)==0){f=1167;break}else{i=g}}else{if(g>>>0>=h>>>0){f=1171;break}var l=i+4|0,g=v[l>>2];if((g|0)==0){f=1170;break}else{i=g}}}if(f==1170){v[c>>2]=i;f=l}else{if(f==1171){v[c>>2]=i;f=c}else{if(f==1167){v[c>>2]=i;f=k}else{f=ca}}}}k=v[f>>2];if((k|0)==0){k=ed(32);l=k+16|0;(l|0)!=0&&(v[l>>2]=v[d>>2]);l=k+20|0;(l|0)!=0&&Bd(l);v[e>>2]=k;k=e+4|0;v[k>>2]=b+4|0;v[k+4>>2]=257;k=e|0;e=v[k>>2];v[k>>2]=0;k=b|0;h=v[c>>2];l=e|0;v[l>>2]=0;v[l+4>>2]=0;v[l+8>>2]=h;v[f>>2]=l;h=k|0;i=v[v[h>>2]>>2];if((i|0)==0){f=l}else{v[h>>2]=i;f=v[f>>2]}fd(v[k+4>>2],f);f=k+8|0;v[f>>2]=v[f>>2]+1|0;e=e+20|0}else{e=k+20|0}n=c;return e}function Fe(b,d){var c,e=ed(12);c=e+8|0;(c|0)!=0&&(v[c>>2]=v[d>>2]);c=(b|0)>>2;v[v[c]+4>>2]=e;v[e>>2]=v[c];v[c]=e;v[e+4>>2]=b;e=b+8|0;v[e>>2]=v[e>>2]+1|0}function Ge(b){var d=v[b+4>>2],c=d+4|0,e=d|0;v[v[e>>2]+4>>2]=v[c>>2];v[v[c>>2]>>2]=v[e>>2];b=b+8|0;v[b>>2]=v[b>>2]-1|0;R(d)}function Ie(b,d){var c=n;n=n+36;var e=c+4,f=c+8,h=c+12,g=c+24,i=c+28,k=c+32;v[f>>2]=d;v[h>>2]=h;var l=h+4|0;v[l>>2]=h;var s=h+8|0;v[s>>2]=0;Fe(h,f);var f=b+4|0,r=b|0,p=e|0,t=f|0,z=c|0,u=b+8|0;a:for(;;){if((v[s>>2]|0)==0){break}v[g>>2]=v[v[l>>2]+8>>2];Ge(h);v[i>>2]=v[De(f,g)>>2];Ke(e,v[r>>2]|0,i);var w=v[r>>2];(v[p>>2]|0)!=(w+4|0)&&xe(Ee(w,i)|0,g);if((v[De(f,g)>>2]|0)!=0){v[De(f,g)>>2]=0;for(var A=v[g>>2],w=A+4|0,A=v[A>>2];;){if((A|0)==(w|0)){continue a}v[k>>2]=v[A+16>>2];He(c,t,k);var x=v[z>>2];(x|0)!=(u|0)&&(v[x+20>>2]|0)!=0&&Fe(h,k);A=S(A|0)}}}Je(h|0);n=c}Ie.X=1;function Le(b,d){if((d|0)!=0){Le(b,v[d>>2]);Le(b,v[d+4>>2]);R(d)}}function Je(b){var d=b+8|0;if((v[d>>2]|0)!=0){var c=v[b+4>>2],e=v[b>>2]+4|0,f=c|0;v[v[f>>2]+4>>2]=v[e>>2];v[v[e>>2]>>2]=v[f>>2];v[d>>2]=0;if((c|0)!=(b|0)){for(d=c;;){c=v[d+4>>2];R(d);if((c|0)==(b|0)){break}else{d=c}}}}}function He(b,d,c){var e=n;n=n+4;var d=d+4|0,f,h=d;f=v[d>>2];a:for(;;){var g=f;for(f=g>>2;;){if((g|0)==0){break a}if(v[f+4]>>>0>=v[c>>2]>>>0){break}g=v[f+1];f=g>>2}h=g;f=v[f]}v[e>>2]=h;h=v[e>>2];v[b>>2]=(h|0)!=(d|0)&&v[c>>2]>>>0>=v[h+16>>2]>>>0?h:d;n=e}function ze(b,d,c,e){var f=c>>2,h=n,g=d,d=n;n=n+4;v[d>>2]=v[g>>2];g=b+4|0;d=v[d>>2];if((d|0)!=(g|0)){var i=v[e>>2],k=v[d+16>>2];if(i>>>0>=k>>>0){var l=d|0;if(k>>>0<i>>>0){k=Kd(l);if((k|0)!=(g|0)&&i>>>0>=v[k+16>>2]>>>0){f=Xd(b,c,e);n=h;return f}b=d+4|0;if((v[b>>2]|0)==0){v[f]=l;n=h;return b}v[f]=k;n=h;return k|0}v[f]=l;n=h;return c}}if((d|0)==(v[b>>2]|0)){b=d}else{g=d|0;i=v[g>>2];if((i|0)==0){for(;;){i=v[g+8>>2];if((g|0)==(v[i>>2]|0)){g=i}else{l=i;break}}}else{for(g=i;;){i=v[g+4>>2];if((i|0)==0){l=g;break}else{g=i}}}if(v[l+16>>2]>>>0<v[e>>2]>>>0){b=l}else{f=Xd(b,c,e);n=h;return f}}c=d|0;if((v[c>>2]|0)==0){v[f]=d|0;n=h;return c}v[f]=b|0;n=h;return b+4|0}ze.X=1;function vd(b){Re(b);var d=b|0,c=v[b+4>>2],b=v[b+8>>2];if((c|0)!=(b|0)){for(;;){R(v[c>>2]);c=c+4|0;if((c|0)==(b|0)){break}}}v[d+8>>2]=v[d+4>>2];d=v[d>>2];(d|0)!=0&&R(d)}function Se(b,d,c){var e=b+16|0,f=v[e>>2];if((f|0)==0){v[e>>2]=d;v[b+24>>2]=c;v[b+36>>2]=1}else{if((f|0)==(d|0)){b=b+24|0;(v[b>>2]|0)==2&&(v[b>>2]=c)}else{c=b+36|0;v[c>>2]=v[c>>2]+1|0;v[b+24>>2]=2;q[b+54|0]=1}}}function Te(b,d){return(b|0)==(d|0)?1:(d|0)==(Ue|0)}function Re(b){var d,c=n;n=n+16;var e=c+8,f=v[b+4>>2],h=v[b+16>>2];d=(h>>>10<<2)+f|0;f=(v[b+8>>2]|0)==(f|0)?0:((h&1023)<<2)+v[d>>2]|0;v[c>>2]=d;v[c+4>>2]=f;oe(e,b);d=c+4|0;h=v[d>>2];e=v[e+4>>2];if((h|0)!=(e|0)){for(var f=c|0,g=v[f>>2],i=h,h=g,g=v[g>>2];;){i=i+4|0;if((i-g|0)==4096){h=h+4|0;v[f>>2]=h;i=g=v[h>>2]}if((i|0)==(e|0)){break}}v[d>>2]=e}v[b+20>>2]=0;e=b+8|0;d=(b+4|0)>>2;f=v[d];h=v[e>>2]-f>>2;i=h>>>0>2;a:do{if(i){for(g=f;;){R(v[g>>2]);g=v[d]+4|0;v[d]=g;var k=v[e>>2]-g>>2;if(k>>>0<=2){var l=k;break a}}}else{l=h}}while(0);(l|0)==1?v[b+16>>2]=512:(l|0)==2&&(v[b+16>>2]=1024);n=c}Re.X=1;function wd(b){var d,c=n;n=n+16;var e=c+8,f=v[b+4>>2],h=v[b+16>>2];d=(h>>>10<<2)+f|0;f=(v[b+8>>2]|0)==(f|0)?0:((h&1023)<<2)+v[d>>2]|0;v[c>>2]=d;v[c+4>>2]=f;zd(e,b);d=c+4|0;h=v[d>>2];e=v[e+4>>2];if((h|0)!=(e|0)){for(var f=c|0,g=v[f>>2],i=h,h=g,g=v[g>>2];;){i=i+4|0;if((i-g|0)==4096){h=h+4|0