@jdultra/threedtiles 10.1.4 → 10.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- var DracoDecoderModule=(()=>{var r="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0;return"undefined"!=typeof __filename&&(r=r||__filename),function(e={}){var i,f,a=void 0!==e?e:{};a.ready=new Promise((function(r,e){i=r,f=e}));var t=!1,b=!1;a.onRuntimeInitialized=function(){t=!0,b&&"function"==typeof a.onModuleLoaded&&a.onModuleLoaded(a)},a.onModuleParsed=function(){b=!0,t&&"function"==typeof a.onModuleLoaded&&a.onModuleLoaded(a)},a.isVersionSupported=function(r){if("string"!=typeof r)return!1;const e=r.split(".");return!(e.length<2||e.length>3)&&(1==e[0]&&e[1]>=0&&e[1]<=5||!(0!=e[0]||e[1]>10))};var A,n,o,k=Object.assign({},a),c="object"==typeof window,u="function"==typeof importScripts,s="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,_="";if(s){var l=require("fs"),p=require("path");_=u?p.dirname(_)+"/":__dirname+"/",A=(r,e)=>{var i=er(r);return i?e?i:i.toString():(r=P(r)?new URL(r):p.normalize(r),l.readFileSync(r,e?void 0:"utf8"))},o=r=>{var e=A(r,!0);return e.buffer||(e=new Uint8Array(e)),e},n=(r,e,i)=>{var f=er(r);f&&e(f),r=P(r)?new URL(r):p.normalize(r),l.readFile(r,(function(r,f){r?i(r):e(f.buffer)}))},process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),(r,e)=>{if(h)throw process.exitCode=r,e;!function(r){if(r instanceof x)return;m("exiting due to exception: "+r)}(e),process.exit(r)},a.inspect=function(){return"[Emscripten Module object]"}}else(c||u)&&(u?_=self.location.href:"undefined"!=typeof document&&document.currentScript&&(_=document.currentScript.src),r&&(_=r),_=0!==_.indexOf("blob:")?_.substr(0,_.replace(/[?#].*/,"").lastIndexOf("/")+1):"",A=r=>{try{var e=new XMLHttpRequest;return e.open("GET",r,!1),e.send(null),e.responseText}catch(e){var i=er(r);if(i)return function(r){for(var e=[],i=0;i<r.length;i++){var f=r[i];f>255&&(f&=255),e.push(String.fromCharCode(f))}return e.join("")}(i);throw e}},u&&(o=r=>{try{var e=new XMLHttpRequest;return e.open("GET",r,!1),e.responseType="arraybuffer",e.send(null),new Uint8Array(e.response)}catch(e){var i=er(r);if(i)return i;throw e}}),n=(r,e,i)=>{var f=new XMLHttpRequest;f.open("GET",r,!0),f.responseType="arraybuffer",f.onload=()=>{if(200==f.status||0==f.status&&f.response)e(f.response);else{var a=er(r);a?e(a.buffer):i()}},f.onerror=i,f.send(null)},r=>document.title=r);var y,d=a.print||console.log.bind(console),m=a.printErr||console.warn.bind(console);Object.assign(a,k),k=null,a.arguments&&a.arguments,a.thisProgram&&a.thisProgram,a.quit&&a.quit,a.wasmBinary&&(y=a.wasmBinary);var v,h=a.noExitRuntime||!0,R={Memory:function(r){this.buffer=new ArrayBuffer(65536*r.initial)},Module:function(r){},Instance:function(r,e){this.exports=function(r){for(var e,i=new Uint8Array(123),f=25;f>=0;--f)i[48+f]=52+f,i[65+f]=f,i[97+f]=26+f;function a(r,e,f){for(var a,t,b=0,A=e,n=f.length,o=e+(3*n>>2)-("="==f[n-2])-("="==f[n-1]);b<n;b+=4)a=i[f.charCodeAt(b+1)],t=i[f.charCodeAt(b+2)],r[A++]=i[f.charCodeAt(b)]<<2|a>>4,A<o&&(r[A++]=a<<4|t>>2),A<o&&(r[A++]=t<<6|i[f.charCodeAt(b+3)])}i[43]=62,i[47]=63;var t=new ArrayBuffer(16),b=new Int32Array(t),A=new Float32Array(t);new Float64Array(t);function n(){throw new Error("abort")}function o(r){A[2]=r}function k(r){return b[r]}return function(r){var i=r.a,f=i.a,t=f.buffer;f.grow=function(r){r|=0;var i=0|Qa(),a=i+r|0;if(i<a&&a<65536){var b=new ArrayBuffer(m(a,65536));new Int8Array(b).set(c),c=new Int8Array(b),u=new Int16Array(b),s=new Int32Array(b),_=new Uint8Array(b),l=new Uint16Array(b),p=new Uint32Array(b),y=new Float32Array(b),d=new Float64Array(b),t=b,f.buffer=t,e=_}return i};var c=new Int8Array(t),u=new Int16Array(t),s=new Int32Array(t),_=new Uint8Array(t),l=new Uint16Array(t),p=new Uint32Array(t),y=new Float32Array(t),d=new Float64Array(t),m=Math.imul,v=Math.fround,h=Math.abs,R=Math.clz32,N=Math.min,Z=Math.max,G=Math.floor,U=Math.ceil,W=(Math.trunc,Math.sqrt),V=i.b,T=i.c,D=i.d,F=i.e,B=i.f,E=i.g,Y=i.h,Q=83232,j=0;function I(r,e,i){var f,a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0,l=0,y=0,d=0,v=0,h=0,N=0,Z=0,G=0,U=0,W=0,V=0,T=0,D=0,F=0,B=0;Q=f=Q-672|0,u=s[e+8>>2],G=s[e+12>>2],a=s[e+20>>2];r:{e:{i:if(!((A=(t=s[e+16>>2])+4|0)>>>0>u>>>0&(0|(a=A>>>0<4?a+1|0:a))>=(0|G)|(0|a)>(0|G)||(a=t+s[e>>2]|0,s[r>>2]=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,u=a=s[e+20>>2],a=(t=(A=s[e+16>>2])+4|0)>>>0<4?a+1|0:a,s[e+16>>2]=t,s[e+20>>2]=a,p[r>>2]>31||(a=u,(A=A+8|0)>>>0>(G=s[e+8>>2])>>>0&(0|(a=A>>>0<8?a+1|0:a))>=(0|(D=s[e+12>>2]))|(0|a)>(0|D)||(a=t+s[e>>2]|0,s[r+4>>2]=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,u=a=s[e+20>>2],a=(t=(A=s[e+16>>2])+4|0)>>>0<4?a+1|0:a,s[e+16>>2]=t,s[e+20>>2]=a,a=u,(A=A+8|0)>>>0>(G=s[e+8>>2])>>>0&(0|(a=A>>>0<8?a+1|0:a))>=(0|(D=s[e+12>>2]))|(0|a)>(0|D)||(a=t+s[e>>2]|0,s[r+12>>2]=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,u=a=s[e+20>>2],a=(t=(A=s[e+16>>2])+4|0)>>>0<4?a+1|0:a,s[e+16>>2]=t,s[e+20>>2]=a,a=s[r+20>>2],(0|(T=s[r+12>>2]))!=(0|a)&&a||(a=u,(A=A+8|0)>>>0>(G=s[e+8>>2])>>>0&(0|(a=A>>>0<8?a+1|0:a))>=(0|(D=s[e+12>>2]))|(0|a)>(0|D))))))))if(a=t+s[e>>2]|0,t=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[r+16>>2]=t,A=s[e+20>>2],A=(a=s[e+16>>2]+4|0)>>>0<4?A+1|0:A,s[e+16>>2]=a,s[e+20>>2]=A,t>>>0>=7)s[f>>2]=t,Xe(1713,f);else{s[f+664>>2]=i;f:if(T){a:if(u=s[i>>2],!(T>>>0<=(s[i+8>>2]-u|0)/12>>>0)){if(!(T>>>0<357913942))break e;if(l=s[i+4>>2],A=(a=m(T,12))+(t=mf(a))|0,a=t=t+m((l-u|0)/12|0,12)|0,(0|u)!=(0|l))for(;l=l-12|0,s[(a=a-12|0)>>2]=s[l>>2],s[a+4>>2]=s[l+4>>2],s[a+8>>2]=s[l+8>>2],(0|u)!=(0|l););if(s[i+8>>2]=A,s[i+4>>2]=t,s[i>>2]=a,!u)break a;mr(u)}a:switch(s[r+16>>2]){case 0:if(k=qr(f+8|0,3),F=f+664|0,u=s[e+8>>2],d=s[e+12>>2],a=s[e+20>>2],!((A=(t=s[e+16>>2])+4|0)>>>0>u>>>0&(0|(a=A>>>0<4?a+1|0:a))>=(0|d)|(0|a)>(0|d))&&(a=t+s[e>>2]|0,s[k>>2]=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,u=a=s[e+20>>2],a=(t=(A=s[e+16>>2])+4|0)>>>0<4?a+1|0:a,s[e+16>>2]=t,s[e+20>>2]=a,!(p[k>>2]>32)&&(a=u,!((A=A+8|0)>>>0>(d=s[e+8>>2])>>>0&(0|(a=A>>>0<8?a+1|0:a))>=(0|(G=s[e+12>>2]))|(0|a)>(0|G))&&(a=t+s[e>>2]|0,t=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[k+4>>2]=t,A=s[e+20>>2],A=(a=s[e+16>>2]+4|0)>>>0<4?A+1|0:A,s[e+16>>2]=a,s[e+20>>2]=A,t&&(s[k+8>>2]=0,Ne(k+16|0,e)&&Ne(k+36|0,e)&&Ne(k+56|0,e)&&Ne(k+76|0,e)))))){if(B=s[k+4>>2],a=0,A=0,Q=b=Q-32|0,y=s[k+12>>2],s[b+16>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0,y){if(y>>>0>=1073741824)break e;A=mf(e=y<<2),s[b+8>>2]=A,a=e+A|0,s[b+16>>2]=a,Ge(A,0,e),s[b+12>>2]=a}if(t=s[k+120>>2],(e=s[t>>2])&&(s[t+4>>2]=e,mr(e),y=s[k+12>>2],A=s[b+8>>2],a=s[b+12>>2]),s[t+4>>2]=a,s[t>>2]=A,s[t+8>>2]=s[b+16>>2],A=0,s[b+16>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0,y){if(y>>>0>=1073741824)break e;V=mf(e=y<<2),s[b+8>>2]=V,A=e+V|0,s[b+16>>2]=A,Ge(V,0,e),s[b+12>>2]=A}a=s[k+132>>2],(e=s[a>>2])&&(s[a+4>>2]=e,mr(e),V=s[b+8>>2],A=s[b+12>>2]),s[a+4>>2]=A,s[a>>2]=V,s[a+8>>2]=s[b+16>>2],s[b+24>>2]=0,s[b+28>>2]=0,s[b+16>>2]=0,s[b+20>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0,sr(b+8|0),e=((a=s[b+24>>2]+s[b+28>>2]|0)>>>0)/341|0,e=s[s[b+12>>2]+(e<<2)>>2]+m(a-m(e,341)|0,12)|0,s[e+4>>2]=0,s[e+8>>2]=0,s[e>>2]=B,y=s[b+28>>2]+1|0,s[b+28>>2]=y;t:if(y)for(D=k+96|0;;){if(d=s[b+12>>2],A=s[b+24>>2],e=s[d+((e=((a=A+(t=y-1|0)|0)>>>0)/341|0)<<2)>>2]+m(a-m(e,341)|0,12)|0,v=s[e+8>>2],u=s[e+4>>2],U=s[e>>2],s[b+28>>2]=t,1+(((0|(e=s[b+16>>2]))!=(0|d)?m(e-d>>2,341)-1|0:0)-(A+y|0)|0)>>>0>=682&&(mr(s[e-4>>2]),s[b+16>>2]=s[b+16>>2]-4),e=0,U>>>0>B>>>0)break t;if((y=(0|u)!=((a=s[k+12>>2])-1|0)?u+1|0:0)>>>0>=a>>>0)break t;h=(N=m(v,12))+s[k+132>>2]|0,l=N+s[k+120>>2]|0;b:{A:if((0|(A=s[k>>2]))!=(0|(t=s[(Z=y<<2)+s[h>>2]>>2]))){n:{o:{k:{c:{if(U>>>0<=2){if(a=s[k+108>>2],s[a>>2]=y,V=1,(A=s[k+12>>2])>>>0>1)break c;break n}if(p[k+8>>2]>p[k+4>>2])break t;(0|(a=(e=s[k+120>>2])+(T=m(G=v+1|0,12))|0))!=(0|l)&&(Fe(a,s[l>>2],s[l+4>>2]),e=s[k+120>>2]),e=Z+s[e+T>>2]|0,s[e>>2]=s[e>>2]+(1<<A+~t);u:if((0|(d=31^R(U)))<=(0|(t=32-(u=s[k+32>>2])|0))){if((0|(t=s[k+28>>2]))==s[k+20>>2])break k;if(a=s[t>>2],e=u+d|0,s[k+32>>2]=e,V=a<<u>>>32-d|0,32!=(0|e))break u;s[k+32>>2]=0,s[k+28>>2]=t+4}else{if((0|(e=(A=s[k+28>>2])+4|0))==s[k+20>>2])break k;a=s[A>>2],s[k+28>>2]=e,e=d-t|0,s[k+32>>2]=e,V=s[A+4>>2]>>>32-e|a<<u>>>32-d}if(V>>>0>(a=U>>>1|0)>>>0)break t;break o}for(;y=(A-1|0)!=(0|y)?y+1|0:0,s[a+(V<<2)>>2]=y,(A=s[k+12>>2])>>>0>(V=V+1|0)>>>0;);break n}a=U>>>1|0,V=0}o:{k:{if((0|(e=U-(t=a-V|0)|0))!=(0|t)){if((0|(d=s[k+88>>2]))==s[k+80>>2])break k;u=s[d>>2],a=(A=s[k+92>>2])+1|0,s[k+92>>2]=a,A=u&-2147483648>>>A;c:{if(32==(0|a)){if(s[k+92>>2]=0,s[k+88>>2]=d+4,A)break c;break k}if(!A)break k}}else e=t;a=e,e=t;break o}a=t}if(d=s[k+132>>2],A=s[(u=d+N|0)>>2],s[(t=A+Z|0)>>2]=s[t>>2]+1,Fe(d+T|0,A,s[u+4>>2]),e&&((0|(A=s[b+28>>2]+s[b+24>>2]|0))==(0|((0|(t=s[b+16>>2]))!=(0|(V=s[b+12>>2]))?m(t-V>>2,341)-1:0))&&(sr(b+8|0),V=s[b+12>>2],A=s[b+24>>2]+s[b+28>>2]|0),t=s[((t=(A>>>0)/341|0)<<2)+V>>2]+m(A-m(t,341)|0,12)|0,s[t+8>>2]=v,s[t+4>>2]=y,s[t>>2]=e,s[b+28>>2]=s[b+28>>2]+1),!a)break A;(0|(A=s[b+28>>2]+s[b+24>>2]|0))==(0|((0|(e=s[b+16>>2]))!=(0|(V=s[b+12>>2]))?m(e-V>>2,341)-1:0))&&(sr(b+8|0),V=s[b+12>>2],A=s[b+24>>2]+s[b+28>>2]|0),e=s[((e=(A>>>0)/341|0)<<2)+V>>2]+m(A-m(e,341)|0,12)|0,s[e+8>>2]=G,s[e+4>>2]=y,s[e>>2]=a,y=s[b+28>>2]+1|0,s[b+28>>2]=y;break b}if(U)for(;;){if(s[k+12>>2])for(v=s[k+40>>2],d=s[h>>2],V=s[k+96>>2],u=s[k+108>>2],y=0;;){s[V+(s[(N=u+(y<<2)|0)>>2]<<2)>>2]=0,A=s[k>>2],t=s[N>>2]<<2;n:if((0|A)!=(0|(a=s[t+d>>2])))if(Z=t+V|0,(0|(W=A-a|0))<=(0|(A=32-(T=s[k+52>>2])|0))){if((0|(t=s[k+48>>2]))==(0|v))break t;if(s[Z>>2]=s[t>>2]<<T>>>32-W,a=W+s[k+52>>2]|0,s[k+52>>2]=a,32!=(0|a))break n;s[k+52>>2]=0,s[k+48>>2]=t+4}else{if((0|(a=(G=s[k+48>>2])+4|0))==(0|v))break t;t=s[G>>2],s[k+48>>2]=a,a=W-A|0,s[k+52>>2]=a,s[Z>>2]=s[G+4>>2]>>>32-a|t<<T>>>32-W}if(t=s[N>>2]<<2,s[(a=t+V|0)>>2]=s[a>>2]|s[t+s[l>>2]>>2],!((y=y+1|0)>>>0<p[k+12>>2]))break}if(De(F,D),s[k+8>>2]=s[k+8>>2]+1,(0|U)==(0|(e=e+1|0)))break}}else{if(!U)break A;for(;;){if(a=s[l>>2],T=s[a+8>>2],G=s[a+4>>2],d=s[a>>2],N=s[F>>2],(y=s[N+4>>2])>>>0<(a=s[N+8>>2])>>>0)s[y+8>>2]=T,s[y+4>>2]=G,s[y>>2]=d,s[N+4>>2]=y+12;else{if((u=(A=(y-(Z=s[N>>2])|0)/12|0)+1|0)>>>0>=357913942)break e;if(a=(t=(a-Z|0)/12|0)<<1,u=t>>>0>=178956970?357913941:a>>>0>u>>>0?a:u){if(u>>>0>=357913942)break r;a=mf(m(u,12))}else a=0;if(V=a+m(A,12)|0,s[V+8>>2]=T,s[V+4>>2]=G,s[V>>2]=d,t=V+12|0,(0|y)!=(0|Z))for(;y=y-12|0,s[(V=V-12|0)>>2]=s[y>>2],s[V+4>>2]=s[y+4>>2],s[V+8>>2]=s[y+8>>2],(0|y)!=(0|Z););s[N+8>>2]=a+m(u,12),s[N+4>>2]=t,s[N>>2]=V,Z&&mr(Z)}if(s[k+8>>2]=s[k+8>>2]+1,(0|U)==(0|(e=e+1|0)))break}}y=s[b+28>>2]}if(!y)break}if(s[b+28>>2]=0,(A=(V=s[b+16>>2])-(y=s[b+12>>2])|0)>>>0>=9)for(;mr(s[y>>2]),y=s[b+12>>2]+4|0,s[b+12>>2]=y,(A=(V=s[b+16>>2])-y|0)>>>0>8;);e=170;t:switch((A>>>2|0)-1|0){case 1:e=341;case 0:s[b+24>>2]=e;break;default:break t}if((0|y)!=(0|V)){for(;mr(s[y>>2]),(0|V)!=(0|(y=y+4|0)););(0|(a=s[b+16>>2]))!=(0|(e=s[b+12>>2]))&&(s[b+16>>2]=a+(3+(e-a|0)&-4))}(e=s[b+8>>2])&&mr(e),Q=b+32|0}ze(k);break f;case 1:if(k=qr(f+8|0,3),B=f+664|0,u=s[e+8>>2],d=s[e+12>>2],a=s[e+20>>2],!((A=(t=s[e+16>>2])+4|0)>>>0>u>>>0&(0|(a=A>>>0<4?a+1|0:a))>=(0|d)|(0|a)>(0|d))&&(a=t+s[e>>2]|0,s[k>>2]=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,u=a=s[e+20>>2],a=(t=(A=s[e+16>>2])+4|0)>>>0<4?a+1|0:a,s[e+16>>2]=t,s[e+20>>2]=a,!(p[k>>2]>32)&&(a=u,!((A=A+8|0)>>>0>(d=s[e+8>>2])>>>0&(0|(a=A>>>0<8?a+1|0:a))>=(0|(G=s[e+12>>2]))|(0|a)>(0|G))&&(a=t+s[e>>2]|0,t=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[k+4>>2]=t,A=s[e+20>>2],A=(a=s[e+16>>2]+4|0)>>>0<4?A+1|0:A,s[e+16>>2]=a,s[e+20>>2]=A,t&&(s[k+8>>2]=0,Ne(k+16|0,e)&&Ne(k+36|0,e)&&Ne(k+56|0,e)&&Ne(k+76|0,e)))))){if(h=s[k+4>>2],a=0,Q=b=Q-32|0,y=s[k+12>>2],s[b+16>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0,y){if(y>>>0>=1073741824)break e;U=mf(e=y<<2),s[b+8>>2]=U,a=e+U|0,s[b+16>>2]=a,Ge(U,0,e),s[b+12>>2]=a}if(t=s[k+120>>2],(e=s[t>>2])&&(s[t+4>>2]=e,mr(e),y=s[k+12>>2],U=s[b+8>>2],a=s[b+12>>2]),s[t+4>>2]=a,s[t>>2]=U,s[t+8>>2]=s[b+16>>2],U=0,s[b+16>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0,y){if(y>>>0>=1073741824)break e;v=mf(e=y<<2),s[b+8>>2]=v,U=e+v|0,s[b+16>>2]=U,Ge(v,0,e),s[b+12>>2]=U}a=s[k+132>>2],(e=s[a>>2])&&(s[a+4>>2]=e,mr(e),U=s[b+12>>2],v=s[b+8>>2]),s[a+4>>2]=U,s[a>>2]=v,s[a+8>>2]=s[b+16>>2],s[b+24>>2]=0,s[b+28>>2]=0,s[b+16>>2]=0,s[b+20>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0,sr(b+8|0),e=((a=s[b+24>>2]+s[b+28>>2]|0)>>>0)/341|0,e=s[s[b+12>>2]+(e<<2)>>2]+m(a-m(e,341)|0,12)|0,s[e+4>>2]=0,s[e+8>>2]=0,s[e>>2]=h,y=s[b+28>>2]+1|0,s[b+28>>2]=y;t:if(y)for(G=k+96|0;;){if(u=s[b+12>>2],A=s[b+24>>2],e=s[u+((e=((a=A+(t=y-1|0)|0)>>>0)/341|0)<<2)>>2]+m(a-m(e,341)|0,12)|0,N=s[e+8>>2],a=s[e+4>>2],l=s[e>>2],s[b+28>>2]=t,1+(((0|(e=s[b+16>>2]))!=(0|u)?m(e-u>>2,341)-1|0:0)-(A+y|0)|0)>>>0>=682&&(mr(s[e-4>>2]),s[b+16>>2]=s[b+16>>2]-4),l>>>0>h>>>0)break t;if((y=(0|a)!=((e=s[k+12>>2])-1|0)?a+1|0:0)>>>0>=e>>>0)break t;W=(e=s[k+120>>2])+(Z=m(N,12))|0,t=s[k>>2],T=y<<2,d=Z+s[k+132>>2]|0;b:{A:if((0|t)!=(0|(a=s[T+s[d>>2]>>2]))){n:{o:{k:{c:{if(l>>>0<=2){if(e=s[k+108>>2],s[e>>2]=y,v=1,(U=s[k+12>>2])>>>0>1)break c;break n}if(p[k+8>>2]>p[k+4>>2])break t;Fe((u=e)+(e=Z+12|0)|0,s[W>>2],s[W+4>>2]),e=T+s[e+s[k+120>>2]>>2]|0,s[e>>2]=s[e>>2]+(1<<t+~a);u:if((0|(d=31^R(l)))<=(0|(t=32-(u=s[k+32>>2])|0))){if((0|(t=s[k+28>>2]))==s[k+20>>2])break k;if(a=s[t>>2],e=u+d|0,s[k+32>>2]=e,a=a<<u>>>32-d|0,32!=(0|e))break u;s[k+32>>2]=0,s[k+28>>2]=t+4}else{if((0|(e=(A=s[k+28>>2])+4|0))==s[k+20>>2])break k;a=s[A>>2],s[k+28>>2]=e,e=d-t|0,s[k+32>>2]=e,a=s[A+4>>2]>>>32-e|a<<u>>>32-d}if((v=l>>>1|0)>>>0<a>>>0)break t;break o}for(;y=(U-1|0)!=(0|y)?y+1|0:0,s[e+(v<<2)>>2]=y,(v=v+1|0)>>>0<(U=s[k+12>>2])>>>0;);break n}v=l>>>1|0,a=0}D=N+1|0;o:{k:{if((0|(a=l-(t=v-a|0)|0))!=(0|t)){if((0|(d=s[k+88>>2]))==s[k+80>>2])break k;u=s[d>>2],e=(A=s[k+92>>2])+1|0,s[k+92>>2]=e,A=u&-2147483648>>>A;c:{if(32==(0|e)){if(s[k+92>>2]=0,s[k+88>>2]=d+4,A)break c;break k}if(!A)break k}e=a}else e=t;a=t;break o}e=t}if(d=s[k+132>>2],A=s[(u=d+Z|0)>>2],s[(t=A+T|0)>>2]=s[t>>2]+1,Fe(d+m(D,12)|0,A,s[u+4>>2]),a&&((0|(U=s[b+28>>2]+s[b+24>>2]|0))==(0|((0|(t=s[b+16>>2]))!=(0|(v=s[b+12>>2]))?m(t-v>>2,341)-1:0))&&(sr(b+8|0),U=s[b+24>>2]+s[b+28>>2]|0,v=s[b+12>>2]),t=s[v+((t=(U>>>0)/341|0)<<2)>>2]+m(U-m(t,341)|0,12)|0,s[t+8>>2]=N,s[t+4>>2]=y,s[t>>2]=a,s[b+28>>2]=s[b+28>>2]+1),!e)break A;(0|(U=s[b+28>>2]+s[b+24>>2]|0))==(0|((0|(a=s[b+16>>2]))!=(0|(v=s[b+12>>2]))?m(a-v>>2,341)-1:0))&&(sr(b+8|0),U=s[b+24>>2]+s[b+28>>2]|0,v=s[b+12>>2]),a=s[v+((a=(U>>>0)/341|0)<<2)>>2]+m(U-m(a,341)|0,12)|0,s[a+8>>2]=D,s[a+4>>2]=y,s[a>>2]=e,y=s[b+28>>2]+1|0,s[b+28>>2]=y;break b}if(U=0,l)for(;;){if(s[k+12>>2])for(v=s[k+40>>2],u=s[d>>2],F=s[k+96>>2],A=s[k+108>>2],y=0;;){s[F+(s[(N=A+(y<<2)|0)>>2]<<2)>>2]=0,t=s[k>>2],a=s[N>>2]<<2;n:if((0|t)!=(0|(e=s[a+u>>2])))if(Z=a+F|0,(0|(V=t-e|0))<=(0|(t=32-(T=s[k+52>>2])|0))){if((0|(a=s[k+48>>2]))==(0|v))break t;if(s[Z>>2]=s[a>>2]<<T>>>32-V,e=V+s[k+52>>2]|0,s[k+52>>2]=e,32!=(0|e))break n;s[k+52>>2]=0,s[k+48>>2]=a+4}else{if((0|(e=(D=s[k+48>>2])+4|0))==(0|v))break t;a=s[D>>2],s[k+48>>2]=e,e=V-t|0,s[k+52>>2]=e,s[Z>>2]=s[D+4>>2]>>>32-e|a<<T>>>32-V}if(a=s[N>>2]<<2,s[(e=a+F|0)>>2]=s[e>>2]|s[a+s[W>>2]>>2],!((y=y+1|0)>>>0<p[k+12>>2]))break}if(De(B,G),s[k+8>>2]=s[k+8>>2]+1,(0|l)==(0|(U=U+1|0)))break}}else{if(T=0,!l)break A;for(;;){if(e=s[W>>2],D=s[e+8>>2],d=s[e+4>>2],u=s[e>>2],N=s[B>>2],(y=s[N+4>>2])>>>0<(e=s[N+8>>2])>>>0)s[y+8>>2]=D,s[y+4>>2]=d,s[y>>2]=u,s[N+4>>2]=y+12;else{if((A=(t=(y-(Z=s[N>>2])|0)/12|0)+1|0)>>>0>=357913942)break e;if(e=(a=(e-Z|0)/12|0)<<1,A=a>>>0>=178956970?357913941:e>>>0>A>>>0?e:A){if(A>>>0>=357913942)break r;e=mf(m(A,12))}else e=0;if(v=e+m(t,12)|0,s[v+8>>2]=D,s[v+4>>2]=d,s[v>>2]=u,a=v+12|0,(0|y)!=(0|Z))for(;y=y-12|0,s[(v=v-12|0)>>2]=s[y>>2],s[v+4>>2]=s[y+4>>2],s[v+8>>2]=s[y+8>>2],(0|y)!=(0|Z););s[N+8>>2]=e+m(A,12),s[N+4>>2]=a,s[N>>2]=v,Z&&mr(Z)}if(s[k+8>>2]=s[k+8>>2]+1,(0|l)==(0|(T=T+1|0)))break}}y=s[b+28>>2]}if(!y)break}if(s[b+28>>2]=0,(U=(v=s[b+16>>2])-(y=s[b+12>>2])|0)>>>0>=9)for(;mr(s[y>>2]),y=s[b+12>>2]+4|0,s[b+12>>2]=y,(U=(v=s[b+16>>2])-y|0)>>>0>8;);e=170;t:switch((U>>>2|0)-1|0){case 1:e=341;case 0:s[b+24>>2]=e;break;default:break t}if((0|y)!=(0|v)){for(;mr(s[y>>2]),(0|v)!=(0|(y=y+4|0)););(0|(a=s[b+16>>2]))!=(0|(e=s[b+12>>2]))&&(s[b+16>>2]=a+(3+(e-a|0)&-4))}(e=s[b+8>>2])&&mr(e),Q=b+32|0}ze(k);break f;case 2:if(b=Pr(f+8|0,3),V=f+664|0,u=s[e+8>>2],d=s[e+12>>2],a=s[e+20>>2],!((A=(t=s[e+16>>2])+4|0)>>>0>u>>>0&(0|(a=A>>>0<4?a+1|0:a))>=(0|d)|(0|a)>(0|d))&&(a=t+s[e>>2]|0,s[b>>2]=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,u=a=s[e+20>>2],a=(t=(A=s[e+16>>2])+4|0)>>>0<4?a+1|0:a,s[e+16>>2]=t,s[e+20>>2]=a,!(p[b>>2]>32)&&(a=u,!((A=A+8|0)>>>0>(d=s[e+8>>2])>>>0&(0|(a=A>>>0<8?a+1|0:a))>=(0|(G=s[e+12>>2]))|(0|a)>(0|G))&&(a=t+s[e>>2]|0,t=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[b+4>>2]=t,A=s[e+20>>2],A=(a=s[e+16>>2]+4|0)>>>0<4?A+1|0:A,s[e+16>>2]=a,s[e+20>>2]=A,t&&(s[b+8>>2]=0,Mr(b+16|0,e)&&Ne(b+32|0,e)&&Ne(b+52|0,e)&&Ne(b+72|0,e)))))){if(F=s[b+4>>2],A=0,e=0,Q=o=Q-32|0,c=s[b+12>>2],s[o+16>>2]=0,s[o+8>>2]=0,s[o+12>>2]=0,c){if(c>>>0>=1073741824)break e;A=mf(a=c<<2),s[o+8>>2]=A,e=a+A|0,s[o+16>>2]=e,Ge(A,0,a),s[o+12>>2]=e}if(t=s[b+116>>2],(a=s[t>>2])&&(s[t+4>>2]=a,mr(a),c=s[b+12>>2],A=s[o+8>>2],e=s[o+12>>2]),s[t+4>>2]=e,s[t>>2]=A,s[t+8>>2]=s[o+16>>2],A=0,s[o+16>>2]=0,s[o+8>>2]=0,s[o+12>>2]=0,c){if(c>>>0>=1073741824)break e;W=mf(e=c<<2),s[o+8>>2]=W,A=e+W|0,s[o+16>>2]=A,Ge(W,0,e),s[o+12>>2]=A}a=s[b+128>>2],(e=s[a>>2])&&(s[a+4>>2]=e,mr(e),W=s[o+8>>2],A=s[o+12>>2]),s[a+4>>2]=A,s[a>>2]=W,s[a+8>>2]=s[o+16>>2],s[o+24>>2]=0,s[o+28>>2]=0,s[o+16>>2]=0,s[o+20>>2]=0,s[o+8>>2]=0,s[o+12>>2]=0,sr(o+8|0),e=((a=s[o+24>>2]+s[o+28>>2]|0)>>>0)/341|0,e=s[s[o+12>>2]+(e<<2)>>2]+m(a-m(e,341)|0,12)|0,s[e+4>>2]=0,s[e+8>>2]=0,s[e>>2]=F,c=s[o+28>>2]+1|0,s[o+28>>2]=c;t:if(c)for(T=b+92|0,D=b+16|0;;){if(d=s[o+12>>2],A=s[o+24>>2],e=s[d+((e=((a=A+(t=c-1|0)|0)>>>0)/341|0)<<2)>>2]+m(a-m(e,341)|0,12)|0,h=s[e+8>>2],u=s[e+4>>2],k=s[e>>2],s[o+28>>2]=t,1+(((0|(e=s[o+16>>2]))!=(0|d)?m(e-d>>2,341)-1|0:0)-(A+c|0)|0)>>>0>=682&&(mr(s[e-4>>2]),s[o+16>>2]=s[o+16>>2]-4),a=0,k>>>0>F>>>0)break t;if((c=(0|u)!=((e=s[b+12>>2])-1|0)?u+1|0:0)>>>0>=e>>>0)break t;B=(v=m(h,12))+s[b+128>>2]|0,U=v+s[b+116>>2]|0;b:if((0|(A=s[b>>2]))!=(0|(t=s[(N=c<<2)+s[B>>2]>>2]))){A:{n:{o:{k:{if(k>>>0<=2){if(e=s[b+104>>2],s[e>>2]=c,W=1,(A=s[b+12>>2])>>>0>1)break k;break A}if(p[b+8>>2]>p[b+4>>2])break t;if((0|(a=(e=s[b+116>>2])+(Z=m(G=h+1|0,12))|0))!=(0|U)&&(Fe(a,s[U>>2],s[U+4>>2]),e=s[b+116>>2]),e=N+s[e+Z>>2]|0,s[e>>2]=s[e>>2]+(1<<A+~t),s[o+4>>2]=0,di(D,31^R(k),o+4|0),(a=k>>>1|0)>>>0<(e=s[o+4>>2])>>>0)break t;if((0|(a=k-(t=a-e|0)|0))!=(0|t)){if((0|(d=s[b+84>>2]))==s[b+76>>2])break o;u=s[d>>2],e=(A=s[b+88>>2])+1|0,s[b+88>>2]=e,A=u&-2147483648>>>A;c:{if(32==(0|e)){if(s[b+88>>2]=0,s[b+84>>2]=d+4,A)break c;break o}if(!A)break o}e=a}else e=t;a=t;break n}for(;c=(A-1|0)!=(0|c)?c+1|0:0,s[e+(W<<2)>>2]=c,(A=s[b+12>>2])>>>0>(W=W+1|0)>>>0;);break A}e=t}if(d=s[b+128>>2],A=s[(u=d+v|0)>>2],s[(t=A+N|0)>>2]=s[t>>2]+1,Fe(d+Z|0,A,s[u+4>>2]),a&&((0|(A=s[o+28>>2]+s[o+24>>2]|0))==(0|((0|(t=s[o+16>>2]))!=(0|(W=s[o+12>>2]))?m(t-W>>2,341)-1:0))&&(sr(o+8|0),W=s[o+12>>2],A=s[o+24>>2]+s[o+28>>2]|0),t=s[((t=(A>>>0)/341|0)<<2)+W>>2]+m(A-m(t,341)|0,12)|0,s[t+8>>2]=h,s[t+4>>2]=c,s[t>>2]=a,s[o+28>>2]=s[o+28>>2]+1),!e)break b;(0|(A=s[o+28>>2]+s[o+24>>2]|0))==(0|((0|(a=s[o+16>>2]))!=(0|(W=s[o+12>>2]))?m(a-W>>2,341)-1:0))&&(sr(o+8|0),W=s[o+12>>2],A=s[o+24>>2]+s[o+28>>2]|0),a=s[((a=(A>>>0)/341|0)<<2)+W>>2]+m(A-m(a,341)|0,12)|0,s[a+8>>2]=G,s[a+4>>2]=c,s[a>>2]=e,s[o+28>>2]=s[o+28>>2]+1;break b}if(k)for(;;){if(s[b+12>>2])for(h=s[b+36>>2],d=s[B>>2],W=s[b+92>>2],u=s[b+104>>2],c=0;;){s[W+(s[(v=u+(c<<2)|0)>>2]<<2)>>2]=0,A=s[b>>2],t=s[v>>2]<<2;A:if((0|A)!=(0|(e=s[t+d>>2])))if(N=t+W|0,(0|(l=A-e|0))<=(0|(A=32-(Z=s[b+48>>2])|0))){if((0|(t=s[b+44>>2]))==(0|h))break t;if(s[N>>2]=s[t>>2]<<Z>>>32-l,e=l+s[b+48>>2]|0,s[b+48>>2]=e,32!=(0|e))break A;s[b+48>>2]=0,s[b+44>>2]=t+4}else{if((0|(e=(G=s[b+44>>2])+4|0))==(0|h))break t;t=s[G>>2],s[b+44>>2]=e,e=l-A|0,s[b+48>>2]=e,s[N>>2]=s[G+4>>2]>>>32-e|t<<Z>>>32-l}if(t=s[v>>2]<<2,s[(e=t+W|0)>>2]=s[e>>2]|s[t+s[U>>2]>>2],!((c=c+1|0)>>>0<p[b+12>>2]))break}if(De(V,T),s[b+8>>2]=s[b+8>>2]+1,(0|k)==(0|(a=a+1|0)))break}}else{if(!k)break b;for(;;){if(e=s[U>>2],Z=s[e+8>>2],G=s[e+4>>2],d=s[e>>2],v=s[V>>2],(c=s[v+4>>2])>>>0<(e=s[v+8>>2])>>>0)s[c+8>>2]=Z,s[c+4>>2]=G,s[c>>2]=d,s[v+4>>2]=c+12;else{if((u=(A=(c-(N=s[v>>2])|0)/12|0)+1|0)>>>0>=357913942)break e;if(e=(t=(e-N|0)/12|0)<<1,u=t>>>0>=178956970?357913941:e>>>0>u>>>0?e:u){if(u>>>0>=357913942)break r;e=mf(m(u,12))}else e=0;if(W=e+m(A,12)|0,s[W+8>>2]=Z,s[W+4>>2]=G,s[W>>2]=d,t=W+12|0,(0|c)!=(0|N))for(;c=c-12|0,s[(W=W-12|0)>>2]=s[c>>2],s[W+4>>2]=s[c+4>>2],s[W+8>>2]=s[c+8>>2],(0|c)!=(0|N););s[v+8>>2]=e+m(u,12),s[v+4>>2]=t,s[v>>2]=W,N&&mr(N)}if(s[b+8>>2]=s[b+8>>2]+1,(0|k)==(0|(a=a+1|0)))break}}if(!(c=s[o+28>>2]))break}if(s[o+28>>2]=0,(A=(W=s[o+16>>2])-(c=s[o+12>>2])|0)>>>0>=9)for(;mr(s[c>>2]),c=s[o+12>>2]+4|0,s[o+12>>2]=c,(A=(W=s[o+16>>2])-c|0)>>>0>8;);e=170;t:switch((A>>>2|0)-1|0){case 1:e=341;case 0:s[o+24>>2]=e;break;default:break t}if((0|c)!=(0|W)){for(;mr(s[c>>2]),(0|W)!=(0|(c=c+4|0)););(0|(a=s[o+16>>2]))!=(0|(e=s[o+12>>2]))&&(s[o+16>>2]=a+(3+(e-a|0)&-4))}(e=s[o+8>>2])&&mr(e),Q=o+32|0}Le(b);break f;case 3:if(k=Pr(f+8|0,3),F=f+664|0,u=s[e+8>>2],d=s[e+12>>2],a=s[e+20>>2],!((A=(t=s[e+16>>2])+4|0)>>>0>u>>>0&(0|(a=A>>>0<4?a+1|0:a))>=(0|d)|(0|a)>(0|d))&&(a=t+s[e>>2]|0,s[k>>2]=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,u=a=s[e+20>>2],a=(t=(A=s[e+16>>2])+4|0)>>>0<4?a+1|0:a,s[e+16>>2]=t,s[e+20>>2]=a,!(p[k>>2]>32)&&(a=u,!((A=A+8|0)>>>0>(d=s[e+8>>2])>>>0&(0|(a=A>>>0<8?a+1|0:a))>=(0|(G=s[e+12>>2]))|(0|a)>(0|G))&&(a=t+s[e>>2]|0,t=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[k+4>>2]=t,A=s[e+20>>2],A=(a=s[e+16>>2]+4|0)>>>0<4?A+1|0:A,s[e+16>>2]=a,s[e+20>>2]=A,t&&(s[k+8>>2]=0,Mr(k+16|0,e)&&Ne(k+32|0,e)&&Ne(k+52|0,e)&&Ne(k+72|0,e)))))){if(B=s[k+4>>2],a=0,Q=b=Q-32|0,c=s[k+12>>2],s[b+16>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0,c){if(c>>>0>=1073741824)break e;y=mf(e=c<<2),s[b+8>>2]=y,a=e+y|0,s[b+16>>2]=a,Ge(y,0,e),s[b+12>>2]=a}if(t=s[k+116>>2],(e=s[t>>2])&&(s[t+4>>2]=e,mr(e),c=s[k+12>>2],y=s[b+8>>2],a=s[b+12>>2]),s[t+4>>2]=a,s[t>>2]=y,s[t+8>>2]=s[b+16>>2],y=0,s[b+16>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0,c){if(c>>>0>=1073741824)break e;h=mf(e=c<<2),s[b+8>>2]=h,y=e+h|0,s[b+16>>2]=y,Ge(h,0,e),s[b+12>>2]=y}a=s[k+128>>2],(e=s[a>>2])&&(s[a+4>>2]=e,mr(e),y=s[b+12>>2],h=s[b+8>>2]),s[a+4>>2]=y,s[a>>2]=h,s[a+8>>2]=s[b+16>>2],s[b+24>>2]=0,s[b+28>>2]=0,s[b+16>>2]=0,s[b+20>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0,sr(b+8|0),e=((a=s[b+24>>2]+s[b+28>>2]|0)>>>0)/341|0,e=s[s[b+12>>2]+(e<<2)>>2]+m(a-m(e,341)|0,12)|0,s[e+4>>2]=0,s[e+8>>2]=0,s[e>>2]=B,c=s[b+28>>2]+1|0,s[b+28>>2]=c;t:if(c)for(D=k+92|0,G=k+16|0;;){if(u=s[b+12>>2],A=s[b+24>>2],e=s[u+((e=((a=A+(t=c-1|0)|0)>>>0)/341|0)<<2)>>2]+m(a-m(e,341)|0,12)|0,v=s[e+8>>2],a=s[e+4>>2],U=s[e>>2],s[b+28>>2]=t,1+(((0|(e=s[b+16>>2]))!=(0|u)?m(e-u>>2,341)-1|0:0)-(A+c|0)|0)>>>0>=682&&(mr(s[e-4>>2]),s[b+16>>2]=s[b+16>>2]-4),U>>>0>B>>>0)break t;if((c=(0|a)!=((e=s[k+12>>2])-1|0)?a+1|0:0)>>>0>=e>>>0)break t;l=(e=s[k+116>>2])+(N=m(v,12))|0,t=s[k>>2],Z=c<<2,d=N+s[k+128>>2]|0;b:if((0|t)!=(0|(a=s[Z+s[d>>2]>>2]))){A:{n:{o:{k:{if(U>>>0<=2){if(e=s[k+104>>2],s[e>>2]=c,h=1,(y=s[k+12>>2])>>>0>1)break k;break A}if(p[k+8>>2]>p[k+4>>2])break t;if(Fe((u=e)+(e=N+12|0)|0,s[l>>2],s[l+4>>2]),e=Z+s[e+s[k+116>>2]>>2]|0,s[e>>2]=s[e>>2]+(1<<t+~a),s[b+4>>2]=0,di(G,31^R(U),b+4|0),(a=U>>>1|0)>>>0<(e=s[b+4>>2])>>>0)break t;if(T=v+1|0,(0|(a=U-(t=a-e|0)|0))!=(0|t)){if((0|(d=s[k+84>>2]))==s[k+76>>2])break o;u=s[d>>2],e=(A=s[k+88>>2])+1|0,s[k+88>>2]=e,A=u&-2147483648>>>A;c:{if(32==(0|e)){if(s[k+88>>2]=0,s[k+84>>2]=d+4,A)break c;break o}if(!A)break o}e=a}else e=t;a=t;break n}for(;c=(y-1|0)!=(0|c)?c+1|0:0,s[e+(h<<2)>>2]=c,(y=s[k+12>>2])>>>0>(h=h+1|0)>>>0;);break A}e=t}if(d=s[k+128>>2],A=s[(u=d+N|0)>>2],s[(t=A+Z|0)>>2]=s[t>>2]+1,Fe(d+m(T,12)|0,A,s[u+4>>2]),a&&((0|(y=s[b+28>>2]+s[b+24>>2]|0))==(0|((0|(t=s[b+16>>2]))!=(0|(h=s[b+12>>2]))?m(t-h>>2,341)-1:0))&&(sr(b+8|0),y=s[b+24>>2]+s[b+28>>2]|0,h=s[b+12>>2]),t=s[h+((t=(y>>>0)/341|0)<<2)>>2]+m(y-m(t,341)|0,12)|0,s[t+8>>2]=v,s[t+4>>2]=c,s[t>>2]=a,s[b+28>>2]=s[b+28>>2]+1),!e)break b;(0|(y=s[b+28>>2]+s[b+24>>2]|0))==(0|((0|(a=s[b+16>>2]))!=(0|(h=s[b+12>>2]))?m(a-h>>2,341)-1:0))&&(sr(b+8|0),y=s[b+24>>2]+s[b+28>>2]|0,h=s[b+12>>2]),a=s[h+((a=(y>>>0)/341|0)<<2)>>2]+m(y-m(a,341)|0,12)|0,s[a+8>>2]=T,s[a+4>>2]=c,s[a>>2]=e,s[b+28>>2]=s[b+28>>2]+1;break b}if(y=0,U)for(;;){if(s[k+12>>2])for(h=s[k+36>>2],u=s[d>>2],V=s[k+92>>2],A=s[k+104>>2],c=0;;){s[V+(s[(v=A+(c<<2)|0)>>2]<<2)>>2]=0,t=s[k>>2],a=s[v>>2]<<2;A:if((0|t)!=(0|(e=s[a+u>>2])))if(N=a+V|0,(0|(W=t-e|0))<=(0|(t=32-(Z=s[k+48>>2])|0))){if((0|(a=s[k+44>>2]))==(0|h))break t;if(s[N>>2]=s[a>>2]<<Z>>>32-W,e=W+s[k+48>>2]|0,s[k+48>>2]=e,32!=(0|e))break A;s[k+48>>2]=0,s[k+44>>2]=a+4}else{if((0|(e=(T=s[k+44>>2])+4|0))==(0|h))break t;a=s[T>>2],s[k+44>>2]=e,e=W-t|0,s[k+48>>2]=e,s[N>>2]=s[T+4>>2]>>>32-e|a<<Z>>>32-W}if(a=s[v>>2]<<2,s[(e=a+V|0)>>2]=s[e>>2]|s[a+s[l>>2]>>2],!((c=c+1|0)>>>0<p[k+12>>2]))break}if(De(F,D),s[k+8>>2]=s[k+8>>2]+1,(0|U)==(0|(y=y+1|0)))break}}else{if(Z=0,!U)break b;for(;;){if(e=s[l>>2],T=s[e+8>>2],d=s[e+4>>2],u=s[e>>2],v=s[F>>2],(c=s[v+4>>2])>>>0<(e=s[v+8>>2])>>>0)s[c+8>>2]=T,s[c+4>>2]=d,s[c>>2]=u,s[v+4>>2]=c+12;else{if((A=(t=(c-(N=s[v>>2])|0)/12|0)+1|0)>>>0>=357913942)break e;if(e=(a=(e-N|0)/12|0)<<1,A=a>>>0>=178956970?357913941:e>>>0>A>>>0?e:A){if(A>>>0>=357913942)break r;e=mf(m(A,12))}else e=0;if(h=e+m(t,12)|0,s[h+8>>2]=T,s[h+4>>2]=d,s[h>>2]=u,a=h+12|0,(0|c)!=(0|N))for(;c=c-12|0,s[(h=h-12|0)>>2]=s[c>>2],s[h+4>>2]=s[c+4>>2],s[h+8>>2]=s[c+8>>2],(0|c)!=(0|N););s[v+8>>2]=e+m(A,12),s[v+4>>2]=a,s[v>>2]=h,N&&mr(N)}if(s[k+8>>2]=s[k+8>>2]+1,(0|U)==(0|(Z=Z+1|0)))break}}if(!(c=s[b+28>>2]))break}if(s[b+28>>2]=0,(y=(h=s[b+16>>2])-(c=s[b+12>>2])|0)>>>0>=9)for(;mr(s[c>>2]),c=s[b+12>>2]+4|0,s[b+12>>2]=c,(y=(h=s[b+16>>2])-c|0)>>>0>8;);e=170;t:switch((y>>>2|0)-1|0){case 1:e=341;case 0:s[b+24>>2]=e;break;default:break t}if((0|c)!=(0|h)){for(;mr(s[c>>2]),(0|h)!=(0|(c=c+4|0)););(0|(a=s[b+16>>2]))!=(0|(e=s[b+12>>2]))&&(s[b+16>>2]=a+(3+(e-a|0)&-4))}(e=s[b+8>>2])&&mr(e),Q=b+32|0}Le(k);break f;case 4:if(b=K(f+8|0,3),V=f+664|0,u=s[e+8>>2],d=s[e+12>>2],a=s[e+20>>2],!((A=(t=s[e+16>>2])+4|0)>>>0>u>>>0&(0|(a=A>>>0<4?a+1|0:a))>=(0|d)|(0|a)>(0|d))&&(a=t+s[e>>2]|0,s[b>>2]=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,u=a=s[e+20>>2],a=(t=(A=s[e+16>>2])+4|0)>>>0<4?a+1|0:a,s[e+16>>2]=t,s[e+20>>2]=a,!(p[b>>2]>32)&&(a=u,!((A=A+8|0)>>>0>(d=s[e+8>>2])>>>0&(0|(a=A>>>0<8?a+1|0:a))>=(0|(G=s[e+12>>2]))|(0|a)>(0|G))&&(a=t+s[e>>2]|0,t=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[b+4>>2]=t,A=s[e+20>>2],A=(a=s[e+16>>2]+4|0)>>>0<4?A+1|0:A,s[e+16>>2]=a,s[e+20>>2]=A,t&&(s[b+8>>2]=0,Ae(b+16|0,e)&&Ne(b+544|0,e)&&Ne(b+564|0,e)&&Ne(b+584|0,e)))))){if(F=s[b+4>>2],l=0,e=0,Q=o=Q-32|0,a=s[b+12>>2],s[o+16>>2]=0,s[o+8>>2]=0,s[o+12>>2]=0,a){if(a>>>0>=1073741824)break e;l=mf(t=a<<2),s[o+8>>2]=l,e=t+l|0,s[o+16>>2]=e,Ge(l,0,t),s[o+12>>2]=e}if(A=s[b+628>>2],(t=s[A>>2])&&(s[A+4>>2]=t,mr(t),a=s[b+12>>2],l=s[o+8>>2],e=s[o+12>>2]),s[A+4>>2]=e,s[A>>2]=l,s[A+8>>2]=s[o+16>>2],l=0,s[o+16>>2]=0,s[o+8>>2]=0,s[o+12>>2]=0,a){if(a>>>0>=1073741824)break e;c=mf(e=a<<2),s[o+8>>2]=c,l=e+c|0,s[o+16>>2]=l,Ge(c,0,e),s[o+12>>2]=l}a=s[b+640>>2],(e=s[a>>2])&&(s[a+4>>2]=e,mr(e),c=s[o+8>>2],l=s[o+12>>2]),s[a+4>>2]=l,s[a>>2]=c,s[a+8>>2]=s[o+16>>2],s[o+24>>2]=0,s[o+28>>2]=0,s[o+16>>2]=0,s[o+20>>2]=0,s[o+8>>2]=0,s[o+12>>2]=0,sr(o+8|0),e=((a=s[o+24>>2]+s[o+28>>2]|0)>>>0)/341|0,e=s[s[o+12>>2]+(e<<2)>>2]+m(a-m(e,341)|0,12)|0,s[e+4>>2]=0,s[e+8>>2]=0,s[e>>2]=F,a=s[o+28>>2]+1|0,s[o+28>>2]=a;t:if(a)for(T=b+604|0,D=b+16|0;;){if(d=s[o+12>>2],u=s[o+24>>2],e=s[d+((e=((t=u+(A=a-1|0)|0)>>>0)/341|0)<<2)>>2]+m(t-m(e,341)|0,12)|0,h=s[e+8>>2],t=s[e+4>>2],k=s[e>>2],s[o+28>>2]=A,1+(((0|(e=s[o+16>>2]))!=(0|d)?m(e-d>>2,341)-1|0:0)-(a+u|0)|0)>>>0>=682&&(mr(s[e-4>>2]),s[o+16>>2]=s[o+16>>2]-4),k>>>0>F>>>0)break t;if((c=(0|t)!=((e=s[b+12>>2])-1|0)?t+1|0:0)>>>0>=e>>>0)break t;B=(v=m(h,12))+s[b+640>>2]|0,U=v+s[b+628>>2]|0;b:{A:if((0|(A=s[b>>2]))!=(0|(t=s[(N=c<<2)+s[B>>2]>>2]))){n:{o:{k:{if(k>>>0<=2){if(e=s[b+616>>2],s[e>>2]=c,a=1,(l=s[b+12>>2])>>>0>1)break k;break n}if(p[b+8>>2]>p[b+4>>2])break t;if((0|(a=(e=s[b+628>>2])+(Z=m(G=h+1|0,12))|0))!=(0|U)&&(Fe(a,s[U>>2],s[U+4>>2]),e=s[b+628>>2]),e=N+s[e+Z>>2]|0,s[e>>2]=s[e>>2]+(1<<A+~t),l=0,a=0,!(e=31^R(k))){a=k>>>1|0;break o}for(;l=Xi(D+(a<<4)|0)|l<<1,(0|e)!=(0|(a=a+1|0)););if(l>>>0<=(a=k>>>1|0)>>>0)break o;break t}for(;c=(l-1|0)!=(0|c)?c+1|0:0,s[e+(a<<2)>>2]=c,(a=a+1|0)>>>0<(l=s[b+12>>2])>>>0;);break n}o:{k:{if((0|(a=k-(t=a-l|0)|0))!=(0|t)){if((0|(d=s[b+596>>2]))==s[b+588>>2])break k;u=s[d>>2],e=(A=s[b+600>>2])+1|0,s[b+600>>2]=e,A=u&-2147483648>>>A;c:{if(32==(0|e)){if(s[b+600>>2]=0,s[b+596>>2]=d+4,A)break c;break k}if(!A)break k}e=a}else e=t;a=t;break o}e=t}if(d=s[b+640>>2],A=s[(u=d+v|0)>>2],s[(t=A+N|0)>>2]=s[t>>2]+1,Fe(d+Z|0,A,s[u+4>>2]),a&&((0|(A=s[o+28>>2]+s[o+24>>2]|0))==(0|((0|(t=s[o+16>>2]))!=(0|(l=s[o+12>>2]))?m(t-l>>2,341)-1:0))&&(sr(o+8|0),l=s[o+12>>2],A=s[o+24>>2]+s[o+28>>2]|0),t=s[((t=(A>>>0)/341|0)<<2)+l>>2]+m(A-m(t,341)|0,12)|0,s[t+8>>2]=h,s[t+4>>2]=c,s[t>>2]=a,s[o+28>>2]=s[o+28>>2]+1),!e)break A;l=s[o+28>>2]+s[o+24>>2]|0,t=s[o+16>>2],(0|l)==(0|((0|(a=s[o+12>>2]))!=(0|t)?m(t-a>>2,341)-1:0))?(sr(o+8|0),l=s[o+24>>2]+s[o+28>>2]|0,t=s[o+12>>2]):t=a,a=s[t+((a=(l>>>0)/341|0)<<2)>>2]+m(l-m(a,341)|0,12)|0,s[a+8>>2]=G,s[a+4>>2]=c,s[a>>2]=e,a=s[o+28>>2]+1|0,s[o+28>>2]=a;break b}if(c=0,k)for(;;){if(s[b+12>>2])for(h=s[b+548>>2],d=s[B>>2],W=s[b+604>>2],u=s[b+616>>2],a=0;;){s[W+(s[(v=u+(a<<2)|0)>>2]<<2)>>2]=0,A=s[b>>2],t=s[v>>2]<<2;n:if((0|A)!=(0|(e=s[t+d>>2])))if(N=t+W|0,(0|(l=A-e|0))<=(0|(A=32-(Z=s[b+560>>2])|0))){if((0|(t=s[b+556>>2]))==(0|h))break t;if(s[N>>2]=s[t>>2]<<Z>>>32-l,e=l+s[b+560>>2]|0,s[b+560>>2]=e,32!=(0|e))break n;s[b+560>>2]=0,s[b+556>>2]=t+4}else{if((0|(e=(G=s[b+556>>2])+4|0))==(0|h))break t;t=s[G>>2],s[b+556>>2]=e,e=l-A|0,s[b+560>>2]=e,s[N>>2]=s[G+4>>2]>>>32-e|t<<Z>>>32-l}if(t=s[v>>2]<<2,s[(e=t+W|0)>>2]=s[e>>2]|s[t+s[U>>2]>>2],!((a=a+1|0)>>>0<p[b+12>>2]))break}if(De(V,T),s[b+8>>2]=s[b+8>>2]+1,(0|k)==(0|(c=c+1|0)))break}}else{if(v=0,!k)break A;for(;;){if(e=s[U>>2],Z=s[e+8>>2],G=s[e+4>>2],d=s[e>>2],h=s[V>>2],(a=s[h+4>>2])>>>0<(e=s[h+8>>2])>>>0)s[a+8>>2]=Z,s[a+4>>2]=G,s[a>>2]=d,s[h+4>>2]=a+12;else{if((u=(A=(a-(N=s[h>>2])|0)/12|0)+1|0)>>>0>=357913942)break e;if(e=(t=(e-N|0)/12|0)<<1,u=t>>>0>=178956970?357913941:e>>>0>u>>>0?e:u){if(u>>>0>=357913942)break r;e=mf(m(u,12))}else e=0;if(c=e+m(A,12)|0,s[c+8>>2]=Z,s[c+4>>2]=G,s[c>>2]=d,t=c+12|0,(0|a)!=(0|N))for(;a=a-12|0,s[(c=c-12|0)>>2]=s[a>>2],s[c+4>>2]=s[a+4>>2],s[c+8>>2]=s[a+8>>2],(0|a)!=(0|N););s[h+8>>2]=e+m(u,12),s[h+4>>2]=t,s[h>>2]=c,N&&mr(N)}if(s[b+8>>2]=s[b+8>>2]+1,(0|k)==(0|(v=v+1|0)))break}}a=s[o+28>>2]}if(!a)break}if(s[o+28>>2]=0,(l=(c=s[o+16>>2])-(a=s[o+12>>2])|0)>>>0>=9)for(;mr(s[a>>2]),a=s[o+12>>2]+4|0,s[o+12>>2]=a,(l=(c=s[o+16>>2])-a|0)>>>0>8;);e=170;t:switch((l>>>2|0)-1|0){case 1:e=341;case 0:s[o+24>>2]=e;break;default:break t}if((0|a)!=(0|c)){for(;mr(s[a>>2]),(0|c)!=(0|(a=a+4|0)););(0|(a=s[o+16>>2]))!=(0|(e=s[o+12>>2]))&&(s[o+16>>2]=a+(3+(e-a|0)&-4))}(e=s[o+8>>2])&&mr(e),Q=o+32|0}xe(b);break f;case 5:if(b=K(f+8|0,3),V=f+664|0,u=s[e+8>>2],d=s[e+12>>2],a=s[e+20>>2],!((A=(t=s[e+16>>2])+4|0)>>>0>u>>>0&(0|(a=A>>>0<4?a+1|0:a))>=(0|d)|(0|a)>(0|d))&&(a=t+s[e>>2]|0,s[b>>2]=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,u=a=s[e+20>>2],a=(t=(A=s[e+16>>2])+4|0)>>>0<4?a+1|0:a,s[e+16>>2]=t,s[e+20>>2]=a,!(p[b>>2]>32)&&(a=u,!((A=A+8|0)>>>0>(d=s[e+8>>2])>>>0&(0|(a=A>>>0<8?a+1|0:a))>=(0|(G=s[e+12>>2]))|(0|a)>(0|G))&&(a=t+s[e>>2]|0,t=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[b+4>>2]=t,A=s[e+20>>2],A=(a=s[e+16>>2]+4|0)>>>0<4?A+1|0:A,s[e+16>>2]=a,s[e+20>>2]=A,t&&(s[b+8>>2]=0,Ae(b+16|0,e)&&Ne(b+544|0,e)&&Ne(b+564|0,e)&&Ne(b+584|0,e)))))){if(F=s[b+4>>2],l=0,e=0,Q=o=Q-32|0,a=s[b+12>>2],s[o+16>>2]=0,s[o+8>>2]=0,s[o+12>>2]=0,a){if(a>>>0>=1073741824)break e;l=mf(t=a<<2),s[o+8>>2]=l,e=t+l|0,s[o+16>>2]=e,Ge(l,0,t),s[o+12>>2]=e}if(A=s[b+628>>2],(t=s[A>>2])&&(s[A+4>>2]=t,mr(t),a=s[b+12>>2],l=s[o+8>>2],e=s[o+12>>2]),s[A+4>>2]=e,s[A>>2]=l,s[A+8>>2]=s[o+16>>2],l=0,s[o+16>>2]=0,s[o+8>>2]=0,s[o+12>>2]=0,a){if(a>>>0>=1073741824)break e;h=mf(e=a<<2),s[o+8>>2]=h,l=e+h|0,s[o+16>>2]=l,Ge(h,0,e),s[o+12>>2]=l}a=s[b+640>>2],(e=s[a>>2])&&(s[a+4>>2]=e,mr(e),l=s[o+12>>2],h=s[o+8>>2]),s[a+4>>2]=l,s[a>>2]=h,s[a+8>>2]=s[o+16>>2],s[o+24>>2]=0,s[o+28>>2]=0,s[o+16>>2]=0,s[o+20>>2]=0,s[o+8>>2]=0,s[o+12>>2]=0,sr(o+8|0),e=((a=s[o+24>>2]+s[o+28>>2]|0)>>>0)/341|0,e=s[s[o+12>>2]+(e<<2)>>2]+m(a-m(e,341)|0,12)|0,s[e+4>>2]=0,s[e+8>>2]=0,s[e>>2]=F,a=s[o+28>>2]+1|0,s[o+28>>2]=a;t:if(a)for(T=b+604|0,D=b+16|0;;){if(d=s[o+12>>2],u=s[o+24>>2],e=s[d+((e=((t=u+(A=a-1|0)|0)>>>0)/341|0)<<2)>>2]+m(t-m(e,341)|0,12)|0,v=s[e+8>>2],t=s[e+4>>2],k=s[e>>2],s[o+28>>2]=A,1+(((0|(e=s[o+16>>2]))!=(0|d)?m(e-d>>2,341)-1|0:0)-(a+u|0)|0)>>>0>=682&&(mr(s[e-4>>2]),s[o+16>>2]=s[o+16>>2]-4),k>>>0>F>>>0)break t;if(y=0,(h=(0|t)!=((e=s[b+12>>2])-1|0)?t+1|0:0)>>>0>=e>>>0)break t;U=(e=s[b+628>>2])+(N=m(v,12))|0,t=s[b>>2],Z=h<<2,G=N+s[b+640>>2]|0;b:{A:if((0|t)!=(0|(a=s[Z+s[G>>2]>>2]))){n:{o:{k:{if(k>>>0<=2){if(e=s[b+616>>2],s[e>>2]=h,a=1,(l=s[b+12>>2])>>>0>1)break k;break n}if(p[b+8>>2]>p[b+4>>2])break t;if(Fe((u=e)+(e=N+12|0)|0,s[U>>2],s[U+4>>2]),e=Z+s[e+s[b+628>>2]>>2]|0,s[e>>2]=s[e>>2]+(1<<t+~a),l=0,a=0,!(e=31^R(k))){a=k>>>1|0;break o}for(;l=Xi(D+(a<<4)|0)|l<<1,(0|e)!=(0|(a=a+1|0)););if(l>>>0<=(a=k>>>1|0)>>>0)break o;break t}for(;h=(l-1|0)!=(0|h)?h+1|0:0,s[e+(a<<2)>>2]=h,(a=a+1|0)>>>0<(l=s[b+12>>2])>>>0;);break n}G=v+1|0;o:{k:{if((0|(a=k-(t=a-l|0)|0))!=(0|t)){if((0|(d=s[b+596>>2]))==s[b+588>>2])break k;u=s[d>>2],e=(A=s[b+600>>2])+1|0,s[b+600>>2]=e,A=u&-2147483648>>>A;c:{if(32==(0|e)){if(s[b+600>>2]=0,s[b+596>>2]=d+4,A)break c;break k}if(!A)break k}e=a}else e=t;a=t;break o}e=t}if(d=s[b+640>>2],A=s[(u=d+N|0)>>2],s[(t=A+Z|0)>>2]=s[t>>2]+1,Fe(d+m(G,12)|0,A,s[u+4>>2]),a&&((0|(y=s[o+28>>2]+s[o+24>>2]|0))==(0|((0|(t=s[o+16>>2]))!=(0|(l=s[o+12>>2]))?m(t-l>>2,341)-1:0))&&(sr(o+8|0),y=s[o+24>>2]+s[o+28>>2]|0,l=s[o+12>>2]),t=s[l+((t=(y>>>0)/341|0)<<2)>>2]+m(y-m(t,341)|0,12)|0,s[t+8>>2]=v,s[t+4>>2]=h,s[t>>2]=a,s[o+28>>2]=s[o+28>>2]+1),!e)break A;l=s[o+28>>2]+s[o+24>>2]|0,t=s[o+16>>2],(0|l)==(0|((0|(a=s[o+12>>2]))!=(0|t)?m(t-a>>2,341)-1:0))?(sr(o+8|0),l=s[o+24>>2]+s[o+28>>2]|0,t=s[o+12>>2]):t=a,a=s[t+((a=(l>>>0)/341|0)<<2)>>2]+m(l-m(a,341)|0,12)|0,s[a+8>>2]=G,s[a+4>>2]=h,s[a>>2]=e,a=s[o+28>>2]+1|0,s[o+28>>2]=a;break b}if(k)for(;;){if(s[b+12>>2])for(B=s[b+548>>2],d=s[G>>2],W=s[b+604>>2],u=s[b+616>>2],a=0;;){s[W+(s[(h=u+(a<<2)|0)>>2]<<2)>>2]=0,A=s[b>>2],t=s[h>>2]<<2;n:if((0|A)!=(0|(e=s[t+d>>2])))if(v=t+W|0,(0|(l=A-e|0))<=(0|(A=32-(N=s[b+560>>2])|0))){if((0|(t=s[b+556>>2]))==(0|B))break t;if(s[v>>2]=s[t>>2]<<N>>>32-l,e=l+s[b+560>>2]|0,s[b+560>>2]=e,32!=(0|e))break n;s[b+560>>2]=0,s[b+556>>2]=t+4}else{if((0|(e=(Z=s[b+556>>2])+4|0))==(0|B))break t;t=s[Z>>2],s[b+556>>2]=e,e=l-A|0,s[b+560>>2]=e,s[v>>2]=s[Z+4>>2]>>>32-e|t<<N>>>32-l}if(t=s[h>>2]<<2,s[(e=t+W|0)>>2]=s[e>>2]|s[t+s[U>>2]>>2],!((a=a+1|0)>>>0<p[b+12>>2]))break}if(De(V,T),s[b+8>>2]=s[b+8>>2]+1,(0|k)==(0|(y=y+1|0)))break}}else{if(!k)break A;for(;;){if(e=s[U>>2],Z=s[e+8>>2],G=s[e+4>>2],d=s[e>>2],v=s[V>>2],(a=s[v+4>>2])>>>0<(e=s[v+8>>2])>>>0)s[a+8>>2]=Z,s[a+4>>2]=G,s[a>>2]=d,s[v+4>>2]=a+12;else{if((u=(A=(a-(N=s[v>>2])|0)/12|0)+1|0)>>>0>=357913942)break e;if(e=(t=(e-N|0)/12|0)<<1,u=t>>>0>=178956970?357913941:e>>>0>u>>>0?e:u){if(u>>>0>=357913942)break r;e=mf(m(u,12))}else e=0;if(h=e+m(A,12)|0,s[h+8>>2]=Z,s[h+4>>2]=G,s[h>>2]=d,t=h+12|0,(0|a)!=(0|N))for(;a=a-12|0,s[(h=h-12|0)>>2]=s[a>>2],s[h+4>>2]=s[a+4>>2],s[h+8>>2]=s[a+8>>2],(0|a)!=(0|N););s[v+8>>2]=e+m(u,12),s[v+4>>2]=t,s[v>>2]=h,N&&mr(N)}if(s[b+8>>2]=s[b+8>>2]+1,(0|k)==(0|(y=y+1|0)))break}}a=s[o+28>>2]}if(!a)break}if(s[o+28>>2]=0,(l=(h=s[o+16>>2])-(a=s[o+12>>2])|0)>>>0>=9)for(;mr(s[a>>2]),a=s[o+12>>2]+4|0,s[o+12>>2]=a,(l=(h=s[o+16>>2])-a|0)>>>0>8;);e=170;t:switch((l>>>2|0)-1|0){case 1:e=341;case 0:s[o+24>>2]=e;break;default:break t}if((0|a)!=(0|h)){for(;mr(s[a>>2]),(0|h)!=(0|(a=a+4|0)););(0|(a=s[o+16>>2]))!=(0|(e=s[o+12>>2]))&&(s[o+16>>2]=a+(3+(e-a|0)&-4))}(e=s[o+8>>2])&&mr(e),Q=o+32|0}xe(b);break f;case 6:break a;default:break i}if(b=K(f+8|0,3),V=f+664|0,u=s[e+8>>2],d=s[e+12>>2],a=s[e+20>>2],!((A=(t=s[e+16>>2])+4|0)>>>0>u>>>0&(0|(a=A>>>0<4?a+1|0:a))>=(0|d)|(0|a)>(0|d))&&(a=t+s[e>>2]|0,s[b>>2]=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,u=a=s[e+20>>2],a=(t=(A=s[e+16>>2])+4|0)>>>0<4?a+1|0:a,s[e+16>>2]=t,s[e+20>>2]=a,!(p[b>>2]>32)&&(a=u,!((A=A+8|0)>>>0>(d=s[e+8>>2])>>>0&(0|(a=A>>>0<8?a+1|0:a))>=(0|(G=s[e+12>>2]))|(0|a)>(0|G))&&(a=t+s[e>>2]|0,t=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[b+4>>2]=t,A=s[e+20>>2],A=(a=s[e+16>>2]+4|0)>>>0<4?A+1|0:A,s[e+16>>2]=a,s[e+20>>2]=A,t&&(s[b+8>>2]=0,Ae(b+16|0,e)&&Ne(b+544|0,e)&&Ne(b+564|0,e)&&Ne(b+584|0,e)))))){if(F=s[b+4>>2],l=0,e=0,Q=o=Q-32|0,a=s[b+12>>2],s[o+16>>2]=0,s[o+8>>2]=0,s[o+12>>2]=0,a){if(a>>>0>=1073741824)break e;l=mf(t=a<<2),s[o+8>>2]=l,e=t+l|0,s[o+16>>2]=e,Ge(l,0,t),s[o+12>>2]=e}if(A=s[b+628>>2],(t=s[A>>2])&&(s[A+4>>2]=t,mr(t),a=s[b+12>>2],l=s[o+8>>2],e=s[o+12>>2]),s[A+4>>2]=e,s[A>>2]=l,s[A+8>>2]=s[o+16>>2],l=0,s[o+16>>2]=0,s[o+8>>2]=0,s[o+12>>2]=0,a){if(a>>>0>=1073741824)break e;c=mf(e=a<<2),s[o+8>>2]=c,l=e+c|0,s[o+16>>2]=l,Ge(c,0,e),s[o+12>>2]=l}a=s[b+640>>2],(e=s[a>>2])&&(s[a+4>>2]=e,mr(e),c=s[o+8>>2],l=s[o+12>>2]),s[a+4>>2]=l,s[a>>2]=c,s[a+8>>2]=s[o+16>>2],s[o+24>>2]=0,s[o+28>>2]=0,s[o+16>>2]=0,s[o+20>>2]=0,s[o+8>>2]=0,s[o+12>>2]=0,sr(o+8|0),e=((a=s[o+24>>2]+s[o+28>>2]|0)>>>0)/341|0,e=s[s[o+12>>2]+(e<<2)>>2]+m(a-m(e,341)|0,12)|0,s[e+4>>2]=0,s[e+8>>2]=0,s[e>>2]=F,a=s[o+28>>2]+1|0,s[o+28>>2]=a;a:if(a)for(T=b+604|0,D=b+16|0;;){if(d=s[o+12>>2],u=s[o+24>>2],e=s[d+((e=((t=u+(A=a-1|0)|0)>>>0)/341|0)<<2)>>2]+m(t-m(e,341)|0,12)|0,h=s[e+8>>2],k=s[e>>2],s[o+28>>2]=A,1+(((0|(e=s[o+16>>2]))!=(0|d)?m(e-d>>2,341)-1|0:0)-(a+u|0)|0)>>>0>=682&&(mr(s[e-4>>2]),s[o+16>>2]=s[o+16>>2]-4),k>>>0>F>>>0)break a;if(e=s[b+628>>2],(c=ue(b,k,B=(v=m(h,12))+s[b+640>>2]|0))>>>0>=p[b+12>>2])break a;U=e+v|0;t:{b:if((0|(A=s[b>>2]))!=(0|(t=s[(N=c<<2)+s[B>>2]>>2]))){A:{n:{o:{if(k>>>0<=2){if(e=s[b+616>>2],s[e>>2]=c,a=1,(l=s[b+12>>2])>>>0>1)break o;break A}if(p[b+8>>2]>p[b+4>>2])break a;if((0|(a=(e=s[b+628>>2])+(Z=m(G=h+1|0,12))|0))!=(0|U)&&(Fe(a,s[U>>2],s[U+4>>2]),e=s[b+628>>2]),e=N+s[e+Z>>2]|0,s[e>>2]=s[e>>2]+(1<<A+~t),l=0,a=0,!(e=31^R(k))){a=k>>>1|0;break n}for(;l=Xi(D+(a<<4)|0)|l<<1,(0|e)!=(0|(a=a+1|0)););if(l>>>0<=(a=k>>>1|0)>>>0)break n;break a}for(;c=(l-1|0)!=(0|c)?c+1|0:0,s[e+(a<<2)>>2]=c,(a=a+1|0)>>>0<(l=s[b+12>>2])>>>0;);break A}n:{o:{if((0|(a=k-(t=a-l|0)|0))!=(0|t)){if((0|(d=s[b+596>>2]))==s[b+588>>2])break o;u=s[d>>2],e=(A=s[b+600>>2])+1|0,s[b+600>>2]=e,A=u&-2147483648>>>A;k:{if(32==(0|e)){if(s[b+600>>2]=0,s[b+596>>2]=d+4,A)break k;break o}if(!A)break o}e=a}else e=t;a=t;break n}e=t}if(d=s[b+640>>2],A=s[(u=d+v|0)>>2],s[(t=A+N|0)>>2]=s[t>>2]+1,Fe(d+Z|0,A,s[u+4>>2]),a&&((0|(A=s[o+28>>2]+s[o+24>>2]|0))==(0|((0|(t=s[o+16>>2]))!=(0|(l=s[o+12>>2]))?m(t-l>>2,341)-1:0))&&(sr(o+8|0),l=s[o+12>>2],A=s[o+24>>2]+s[o+28>>2]|0),t=s[((t=(A>>>0)/341|0)<<2)+l>>2]+m(A-m(t,341)|0,12)|0,s[t+8>>2]=h,s[t+4>>2]=c,s[t>>2]=a,s[o+28>>2]=s[o+28>>2]+1),!e)break b;l=s[o+28>>2]+s[o+24>>2]|0,t=s[o+16>>2],(0|l)==(0|((0|(a=s[o+12>>2]))!=(0|t)?m(t-a>>2,341)-1:0))?(sr(o+8|0),l=s[o+24>>2]+s[o+28>>2]|0,t=s[o+12>>2]):t=a,a=s[t+((a=(l>>>0)/341|0)<<2)>>2]+m(l-m(a,341)|0,12)|0,s[a+8>>2]=G,s[a+4>>2]=c,s[a>>2]=e,a=s[o+28>>2]+1|0,s[o+28>>2]=a;break t}if(c=0,k)for(;;){if(s[b+12>>2])for(h=s[b+548>>2],d=s[B>>2],W=s[b+604>>2],u=s[b+616>>2],a=0;;){s[W+(s[(v=u+(a<<2)|0)>>2]<<2)>>2]=0,A=s[b>>2],t=s[v>>2]<<2;A:if((0|A)!=(0|(e=s[t+d>>2])))if(N=t+W|0,(0|(l=A-e|0))<=(0|(A=32-(Z=s[b+560>>2])|0))){if((0|(t=s[b+556>>2]))==(0|h))break a;if(s[N>>2]=s[t>>2]<<Z>>>32-l,e=l+s[b+560>>2]|0,s[b+560>>2]=e,32!=(0|e))break A;s[b+560>>2]=0,s[b+556>>2]=t+4}else{if((0|(e=(G=s[b+556>>2])+4|0))==(0|h))break a;t=s[G>>2],s[b+556>>2]=e,e=l-A|0,s[b+560>>2]=e,s[N>>2]=s[G+4>>2]>>>32-e|t<<Z>>>32-l}if(t=s[v>>2]<<2,s[(e=t+W|0)>>2]=s[e>>2]|s[t+s[U>>2]>>2],!((a=a+1|0)>>>0<p[b+12>>2]))break}if(De(V,T),s[b+8>>2]=s[b+8>>2]+1,(0|k)==(0|(c=c+1|0)))break}}else{if(v=0,!k)break b;for(;;){if(e=s[U>>2],Z=s[e+8>>2],G=s[e+4>>2],d=s[e>>2],h=s[V>>2],(a=s[h+4>>2])>>>0<(e=s[h+8>>2])>>>0)s[a+8>>2]=Z,s[a+4>>2]=G,s[a>>2]=d,s[h+4>>2]=a+12;else{if((u=(A=(a-(N=s[h>>2])|0)/12|0)+1|0)>>>0>=357913942)break e;if(e=(t=(e-N|0)/12|0)<<1,u=t>>>0>=178956970?357913941:e>>>0>u>>>0?e:u){if(u>>>0>=357913942)break r;e=mf(m(u,12))}else e=0;if(c=e+m(A,12)|0,s[c+8>>2]=Z,s[c+4>>2]=G,s[c>>2]=d,t=c+12|0,(0|a)!=(0|N))for(;a=a-12|0,s[(c=c-12|0)>>2]=s[a>>2],s[c+4>>2]=s[a+4>>2],s[c+8>>2]=s[a+8>>2],(0|a)!=(0|N););s[h+8>>2]=e+m(u,12),s[h+4>>2]=t,s[h>>2]=c,N&&mr(N)}if(s[b+8>>2]=s[b+8>>2]+1,(0|k)==(0|(v=v+1|0)))break}}a=s[o+28>>2]}if(!a)break}if(s[o+28>>2]=0,(l=(c=s[o+16>>2])-(a=s[o+12>>2])|0)>>>0>=9)for(;mr(s[a>>2]),a=s[o+12>>2]+4|0,s[o+12>>2]=a,(l=(c=s[o+16>>2])-a|0)>>>0>8;);e=170;a:switch((l>>>2|0)-1|0){case 1:e=341;case 0:s[o+24>>2]=e;break;default:break a}if((0|a)!=(0|c)){for(;mr(s[a>>2]),(0|c)!=(0|(a=a+4|0)););(0|(a=s[o+16>>2]))!=(0|(e=s[o+12>>2]))&&(s[o+16>>2]=a+(3+(e-a|0)&-4))}(e=s[o+8>>2])&&mr(e),Q=o+32|0}xe(b)}d=s[r+12>>2]==((s[i+4>>2]-s[i>>2]|0)/12|0)}return Q=f+672|0,d}ha(),n()}Df(),n()}function J(r,e,i,f){var a=0,t=0,b=0,A=0,n=0,o=0,k=0,u=0,y=0,d=0,v=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0,V=0,T=0,D=0,F=0;if(!r)return 1;r:if(!((0|(a=s[i+20>>2]))>=(0|(b=s[i+12>>2]))&(n=s[i+16>>2])>>>0>=p[i+8>>2]|(0|a)>(0|b))){b=_[n+s[i>>2]|0],a=(n=n+1|0)?a:a+1|0,s[i+16>>2]=n,s[i+20>>2]=a;e:switch(0|b){case 0:a=r,t=e,n=f,r=0,f=0,Q=y=Q+-64|0,s[y+56>>2]=0,s[y+48>>2]=0,s[y+52>>2]=0,s[y+40>>2]=0,s[y+44>>2]=0,s[y+32>>2]=0,s[y+36>>2]=0,s[y+24>>2]=0,s[y+28>>2]=0,s[y+16>>2]=0,s[y+20>>2]=0,s[y+8>>2]=0,s[y+12>>2]=0;i:if(Vr(y+8|0,i)&&!(!gr(y+8|0,i)|(s[y+20>>2]?0:a))){if(Me(i,0,0),a)for(Z=t<<2,G=s[y+36>>2],V=s[y+48>>2],T=s[y+24>>2],u=s[y+56>>2],o=s[y+52>>2];;){f:if(!(u>>>0>16383))for(;;){if((0|o)<=0)break f;if(o=o-1|0,s[y+52>>2]=o,u=_[o+V|0]|u<<8,s[y+56>>2]=u,!(u>>>0<16384))break}if(N=s[((r=4095&u)<<2)+T>>2],u=(m(s[(e=(N<<3)+G|0)>>2],u>>>12|0)+r|0)-s[e+4>>2]|0,s[y+56>>2]=u,(0|t)>0){if(r=0,!_[i+36|0]|N>>>0>32)break i;if(b=f+t|0,N)for(D=-2&N,F=1&N,e=s[i+32>>2],A=s[i+28>>2],d=s[i+24>>2];;){if(k=0,r=e,v=0,R=0,1!=(0|N))for(;(h=d+(r>>>3|0)|0)>>>0>=A>>>0?h=0:(h=_[0|h],e=r+1|0,s[i+32>>2]=e,h=h>>>(7&r)&1,r=e),h=h<<k|v,v=0,(U=d+(r>>>3|0)|0)>>>0<A>>>0&&(v=_[0|U],e=r+1|0,s[i+32>>2]=e,v=v>>>(7&r)&1,r=e),U=1|k,k=k+2|0,v=h|v<<U,(0|D)!=(0|(R=R+2|0)););if(R=n+(f<<2)|0,F&&((h=d+(r>>>3|0)|0)>>>0<A>>>0?(h=_[0|h],e=r+1|0,s[i+32>>2]=e,r=h>>>(7&r)&1):r=0,v|=r<<k),s[R>>2]=v,(0|b)==(0|(f=f+1|0)))break}else Ge(n+(f<<2)|0,0,Z);f=b}if(!(a>>>0>(W=t+W|0)>>>0))break}c[i+36|0]=0,e=s[i+20>>2],a=0,r=(f=(7&(a=(f=s[i+32>>2]+7|0)>>>0<7?1:a))<<29|f>>>3)+s[i+16>>2]|0,a=(a>>>3|0)+e|0,s[i+16>>2]=r,s[i+20>>2]=r>>>0<f>>>0?a+1|0:a,r=1}return(e=s[y+36>>2])&&(s[y+40>>2]=e,mr(e)),(e=s[y+24>>2])&&(s[y+28>>2]=e,mr(e)),(e=s[y+8>>2])&&(s[y+12>>2]=e,mr(e)),Q=y- -64|0,r;case 1:break e;default:break r}e=0;e:if(!((0|(a=s[i+20>>2]))>=(0|(b=s[i+12>>2]))&(n=s[i+16>>2])>>>0>=p[i+8>>2]|(0|a)>(0|b))){b=_[n+s[i>>2]|0],a=(n=n+1|0)?a:a+1|0,s[i+16>>2]=n,s[i+20>>2]=a;i:switch(b-1|0){case 8:b=r,N=f,Q=n=Q+-64|0,s[n+56>>2]=0,s[n+48>>2]=0,s[n+52>>2]=0,s[n+40>>2]=0,s[n+44>>2]=0,s[n+32>>2]=0,s[n+36>>2]=0,s[n+24>>2]=0,s[n+28>>2]=0,s[n+16>>2]=0,s[n+20>>2]=0,s[n+8>>2]=0,s[n+12>>2]=0,o=n+8|0;f:{a:if(r=l[i+38>>1]){if(r>>>0<=511){if(f=s[i+8>>2],e=s[i+12>>2],a=s[i+20>>2],f>>>0<(t=(r=s[i+16>>2])+4|0)>>>0&(0|e)<=(0|(a=t>>>0<4?a+1|0:a))|(0|e)<(0|a))break a;r=r+s[i>>2]|0,A=_[0|r]|_[r+1|0]<<8|_[r+2|0]<<16|_[r+3|0]<<24,s[o+12>>2]=A,a=s[i+20>>2],a=(t=s[i+16>>2]+4|0)>>>0<4?a+1|0:a,s[i+16>>2]=t,s[i+20>>2]=a}else{if(!Ri(1,o+12|0,i))break a;t=s[i+16>>2],a=s[i+20>>2],A=s[o+12>>2]}if(!((f=(r=s[i+8>>2])-t|0)>>>0<A>>>6>>>0&(0|(r=s[i+12>>2]-((r>>>0<t>>>0)+a|0)|0))<=0|(0|r)<0)){if(e=s[o>>2],(r=s[o+4>>2]-e>>2)>>>0<A>>>0?(ai(o,A-r|0),A=s[o+12>>2]):r>>>0<=A>>>0||(s[o+4>>2]=e+(A<<2)),f=1,!A)break f;for(t=s[i+16>>2],a=s[i+20>>2],Z=s[o>>2],y=s[i+8>>2],d=s[i+12>>2],e=0;;){if(f=0,(0|a)>=(0|d)&t>>>0>=y>>>0|(0|a)>(0|d))break f;f=s[i>>2],h=_[f+t|0],a=(t=t+1|0)?a:a+1|0,s[i+16>>2]=t,s[i+20>>2]=a,r=h>>>2|0,u=0;t:{b:{A:{n:switch(0|(G=3&h)){case 0:break b;case 3:break n;default:break A}if(f=0,(r=r+e|0)>>>0>=A>>>0)break f;Ge(Z+(e<<2)|0,0,4+(252&h)|0),e=r;break t}for(;;){if((0|t)==(0|y)&(0|a)==(0|d))break a;if(A=_[f+t|0],a=(t=t+1|0)?a:a+1|0,s[i+16>>2]=t,s[i+20>>2]=a,r|=A<<(u<<3|6),(0|G)==(0|(u=u+1|0)))break}}s[Z+(e<<2)>>2]=r}if(!((e=e+1|0)>>>0<(A=s[o+12>>2])>>>0))break}if(r=o+16|0,d=s[o>>2],f=s[o+16>>2],(e=s[o+20>>2]-f|0)>>>0<=32767?ai(r,8192-(e>>>2|0)|0):32768!=(0|e)&&(s[o+20>>2]=f+32768),e=s[(f=o+28|0)>>2],(t=s[o+32>>2]-e>>3)>>>0<A>>>0)Ai(f,A-t|0),e=s[f>>2];else if(t>>>0>A>>>0&&(s[o+32>>2]=(A<<3)+e),!A)break a;for(y=s[r>>2],t=0,f=0;;){if(o=s[(a=d+(t<<2)|0)>>2],r=f,s[(u=(t<<3)+e|0)+4>>2]=r,s[u>>2]=o,(f=(a=s[a>>2])+r|0)>>>0>8192)break a;if(!(r>>>0>=f>>>0)){if(u=0,o=7&a)for(;s[y+(r<<2)>>2]=t,r=r+1|0,(0|o)!=(0|(u=u+1|0)););if(!(a-1>>>0<=6))for(;s[(a=y+(r<<2)|0)>>2]=t,s[a+28>>2]=t,s[a+24>>2]=t,s[a+20>>2]=t,s[a+16>>2]=t,s[a+12>>2]=t,s[a+8>>2]=t,s[a+4>>2]=t,(0|f)!=(0|(r=r+8|0)););}if((0|A)==(0|(t=t+1|0)))break}k=8192==(0|f)}}f=k}if(!(!f|(s[n+20>>2]?0:b))){f=0,Q=y=Q-16|0;f:{if(l[i+38>>1]<=511){if(e=s[i+8>>2],A=r=s[i+12>>2],a=s[i+20>>2],e>>>0<(t=(k=s[i+16>>2])+8|0)>>>0&(0|r)<=(0|(a=t>>>0<8?a+1|0:a))|(0|r)<(0|a))break f;k=k+s[i>>2]|0,r=_[0|k]|_[k+1|0]<<8|_[k+2|0]<<16|_[k+3|0]<<24,k=_[k+4|0]|_[k+5|0]<<8|_[k+6|0]<<16|_[k+7|0]<<24,s[i+16>>2]=t,s[i+20>>2]=a}else{if(!_i(1,y+8|0,i))break f;t=s[i+16>>2],a=s[i+20>>2],e=s[i+8>>2],A=s[i+12>>2],r=s[y+8>>2],k=s[y+12>>2]}if(o=e-t|0,!((0|(e=A-((e>>>0<t>>>0)+a|0)|0))==(0|k)&r>>>0>o>>>0|e>>>0<k>>>0||(a=a+k|0,a=(e=r+t|0)>>>0<r>>>0?a+1|0:a,s[i+16>>2]=e,s[i+20>>2]=a,(0|r)<=0))){e=s[i>>2]+t|0,s[n+48>>2]=e;a:if((a=_[0|(t=(i=r-1|0)+e|0)])>>>0<=63)s[n+52>>2]=i,r=63&_[0|t];else{t:switch((a>>>6|0)-1|0){case 0:if(r>>>0<2)break f;r=r-2|0,s[n+52>>2]=r,r=_[(r=r+e|0)+1|0]<<8&16128|_[0|r];break a;case 1:if(r>>>0<3)break f;r=r-3|0,s[n+52>>2]=r,r=_[(r=r+e|0)+1|0]<<8|_[r+2|0]<<16&4128768|_[0|r];break a;default:break t}r=r-4|0,s[n+52>>2]=r,r=1073741823&(_[0|(r=r+e|0)]|_[r+1|0]<<8|_[r+2|0]<<16|_[r+3|0]<<24)}s[n+56>>2]=r+32768,f=r>>>0<8355840}}if(Q=y+16|0,f)if(b)for(e=s[n+52>>2],r=s[n+56>>2],i=s[n+36>>2],f=s[n+48>>2],t=s[n+24>>2];;){f:if(!(r>>>0>32767))for(;;){if((0|e)<=0)break f;if(e=e-1|0,s[n+52>>2]=e,r=_[e+f|0]|r<<8,s[n+56>>2]=r,!(r>>>0<32768))break}if(v=s[t+((a=8191&r)<<2)>>2],r=(m(s[(k=i+(v<<3)|0)>>2],r>>>13|0)+a|0)-s[k+4>>2]|0,s[n+56>>2]=r,s[N+(R<<2)>>2]=v,v=1,(0|b)==(0|(R=R+1|0)))break}else v=1}(r=s[n+36>>2])&&(s[n+40>>2]=r,mr(r)),(r=s[n+24>>2])&&(s[n+28>>2]=r,mr(r)),(r=s[n+8>>2])&&(s[n+12>>2]=r,mr(r)),Q=n- -64|0,e=v;break e;case 9:y=r,N=f,Q=b=Q+-64|0,s[b+56>>2]=0,s[b+48>>2]=0,s[b+52>>2]=0,s[b+40>>2]=0,s[b+44>>2]=0,s[b+32>>2]=0,s[b+36>>2]=0,s[b+24>>2]=0,s[b+28>>2]=0,s[b+16>>2]=0,s[b+20>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0,o=b+8|0;f:{a:if(r=l[i+38>>1]){if(r>>>0<=511){if(f=s[i+8>>2],e=s[i+12>>2],a=s[i+20>>2],f>>>0<(t=(r=s[i+16>>2])+4|0)>>>0&(0|e)<=(0|(a=t>>>0<4?a+1|0:a))|(0|e)<(0|a))break a;r=r+s[i>>2]|0,A=_[0|r]|_[r+1|0]<<8|_[r+2|0]<<16|_[r+3|0]<<24,s[o+12>>2]=A,a=s[i+20>>2],a=(t=s[i+16>>2]+4|0)>>>0<4?a+1|0:a,s[i+16>>2]=t,s[i+20>>2]=a}else{if(!Ri(1,o+12|0,i))break a;t=s[i+16>>2],a=s[i+20>>2],A=s[o+12>>2]}if(!((f=(r=s[i+8>>2])-t|0)>>>0<A>>>6>>>0&(0|(r=s[i+12>>2]-((r>>>0<t>>>0)+a|0)|0))<=0|(0|r)<0)){if(e=s[o>>2],(r=s[o+4>>2]-e>>2)>>>0<A>>>0?(ai(o,A-r|0),A=s[o+12>>2]):r>>>0<=A>>>0||(s[o+4>>2]=e+(A<<2)),f=1,!A)break f;for(t=s[i+16>>2],a=s[i+20>>2],Z=s[o>>2],n=s[i+8>>2],d=s[i+12>>2],e=0;;){if(f=0,(0|a)>=(0|d)&t>>>0>=n>>>0|(0|a)>(0|d))break f;f=s[i>>2],h=_[f+t|0],a=(t=t+1|0)?a:a+1|0,s[i+16>>2]=t,s[i+20>>2]=a,r=h>>>2|0,u=0;t:{b:{A:{n:switch(0|(G=3&h)){case 0:break b;case 3:break n;default:break A}if(f=0,(r=r+e|0)>>>0>=A>>>0)break f;Ge(Z+(e<<2)|0,0,4+(252&h)|0),e=r;break t}for(;;){if((0|t)==(0|n)&(0|a)==(0|d))break a;if(A=_[f+t|0],a=(t=t+1|0)?a:a+1|0,s[i+16>>2]=t,s[i+20>>2]=a,r|=A<<(u<<3|6),(0|G)==(0|(u=u+1|0)))break}}s[Z+(e<<2)>>2]=r}if(!((e=e+1|0)>>>0<(A=s[o+12>>2])>>>0))break}if(r=o+16|0,d=s[o>>2],f=s[o+16>>2],(e=s[o+20>>2]-f|0)>>>0<=131071?ai(r,32768-(e>>>2|0)|0):131072!=(0|e)&&(s[o+20>>2]=f+131072),e=s[(f=o+28|0)>>2],(t=s[o+32>>2]-e>>3)>>>0<A>>>0)Ai(f,A-t|0),e=s[f>>2];else if(t>>>0>A>>>0&&(s[o+32>>2]=(A<<3)+e),!A)break a;for(n=s[r>>2],t=0,f=0;;){if(o=s[(a=d+(t<<2)|0)>>2],r=f,s[(u=(t<<3)+e|0)+4>>2]=r,s[u>>2]=o,(f=(a=s[a>>2])+r|0)>>>0>32768)break a;if(!(r>>>0>=f>>>0)){if(u=0,o=7&a)for(;s[n+(r<<2)>>2]=t,r=r+1|0,(0|o)!=(0|(u=u+1|0)););if(!(a-1>>>0<=6))for(;s[(a=n+(r<<2)|0)>>2]=t,s[a+28>>2]=t,s[a+24>>2]=t,s[a+20>>2]=t,s[a+16>>2]=t,s[a+12>>2]=t,s[a+8>>2]=t,s[a+4>>2]=t,(0|f)!=(0|(r=r+8|0)););}if((0|A)==(0|(t=t+1|0)))break}k=32768==(0|f)}}f=k}if(!(!f|(s[b+20>>2]?0:y))){f=0,Q=o=Q-16|0;f:{if(l[i+38>>1]<=511){if(e=s[i+8>>2],A=r=s[i+12>>2],a=s[i+20>>2],e>>>0<(t=(k=s[i+16>>2])+8|0)>>>0&(0|r)<=(0|(a=t>>>0<8?a+1|0:a))|(0|r)<(0|a))break f;k=k+s[i>>2]|0,r=_[0|k]|_[k+1|0]<<8|_[k+2|0]<<16|_[k+3|0]<<24,k=_[k+4|0]|_[k+5|0]<<8|_[k+6|0]<<16|_[k+7|0]<<24,s[i+16>>2]=t,s[i+20>>2]=a}else{if(!_i(1,o+8|0,i))break f;t=s[i+16>>2],a=s[i+20>>2],e=s[i+8>>2],A=s[i+12>>2],r=s[o+8>>2],k=s[o+12>>2]}if(n=e-t|0,!((0|(e=A-((e>>>0<t>>>0)+a|0)|0))==(0|k)&r>>>0>n>>>0|e>>>0<k>>>0||(n=a+k|0,n=(e=r+t|0)>>>0<r>>>0?n+1|0:n,s[i+16>>2]=e,s[i+20>>2]=n,(0|r)<=0))){e=s[i>>2]+t|0,s[b+48>>2]=e;a:if((a=_[0|(t=(i=r-1|0)+e|0)])>>>0<=63)s[b+52>>2]=i,r=63&_[0|t];else{t:switch((a>>>6|0)-1|0){case 0:if(r>>>0<2)break f;r=r-2|0,s[b+52>>2]=r,r=_[(r=r+e|0)+1|0]<<8&16128|_[0|r];break a;case 1:if(r>>>0<3)break f;r=r-3|0,s[b+52>>2]=r,r=_[(r=r+e|0)+1|0]<<8|_[r+2|0]<<16&4128768|_[0|r];break a;default:break t}r=r-4|0,s[b+52>>2]=r,r=1073741823&(_[0|(r=r+e|0)]|_[r+1|0]<<8|_[r+2|0]<<16|_[r+3|0]<<24)}s[b+56>>2]=r+131072,f=r>>>0<33423360}}if(Q=o+16|0,f)if(y)for(e=s[b+52>>2],r=s[b+56>>2],i=s[b+36>>2],f=s[b+48>>2],t=s[b+24>>2];;){f:if(!(r>>>0>131071))for(;;){if((0|e)<=0)break f;if(e=e-1|0,s[b+52>>2]=e,r=_[e+f|0]|r<<8,s[b+56>>2]=r,!(r>>>0<131072))break}if(v=s[t+((a=32767&r)<<2)>>2],r=(m(s[(k=i+(v<<3)|0)>>2],r>>>15|0)+a|0)-s[k+4>>2]|0,s[b+56>>2]=r,s[N+(R<<2)>>2]=v,v=1,(0|y)==(0|(R=R+1|0)))break}else v=1}(r=s[b+36>>2])&&(s[b+40>>2]=r,mr(r)),(r=s[b+24>>2])&&(s[b+28>>2]=r,mr(r)),(r=s[b+8>>2])&&(s[b+12>>2]=r,mr(r)),Q=b- -64|0,e=v;break e;case 10:y=r,o=f,Q=b=Q+-64|0,s[b+56>>2]=0,s[b+48>>2]=0,s[b+52>>2]=0,s[b+40>>2]=0,s[b+44>>2]=0,s[b+32>>2]=0,s[b+36>>2]=0,s[b+24>>2]=0,s[b+28>>2]=0,s[b+16>>2]=0,s[b+20>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0,d=b+8|0;f:{a:if(r=l[i+38>>1]){if(r>>>0<=511){if(f=s[i+8>>2],e=s[i+12>>2],a=s[i+20>>2],f>>>0<(t=(r=s[i+16>>2])+4|0)>>>0&(0|e)<=(0|(a=t>>>0<4?a+1|0:a))|(0|e)<(0|a))break a;r=r+s[i>>2]|0,A=_[0|r]|_[r+1|0]<<8|_[r+2|0]<<16|_[r+3|0]<<24,s[d+12>>2]=A,a=s[i+20>>2],a=(t=s[i+16>>2]+4|0)>>>0<4?a+1|0:a,s[i+16>>2]=t,s[i+20>>2]=a}else{if(!Ri(1,d+12|0,i))break a;t=s[i+16>>2],a=s[i+20>>2],A=s[d+12>>2]}if(!((f=(r=s[i+8>>2])-t|0)>>>0<A>>>6>>>0&(0|(r=s[i+12>>2]-((r>>>0<t>>>0)+a|0)|0))<=0|(0|r)<0)){if(e=s[d>>2],(r=s[d+4>>2]-e>>2)>>>0<A>>>0?(ai(d,A-r|0),A=s[d+12>>2]):r>>>0<=A>>>0||(s[d+4>>2]=e+(A<<2)),f=1,!A)break f;for(t=s[i+16>>2],a=s[i+20>>2],G=s[d>>2],N=s[i+8>>2],h=s[i+12>>2],e=0;;){if(f=0,(0|a)>=(0|h)&t>>>0>=N>>>0|(0|a)>(0|h))break f;f=s[i>>2],Z=_[f+t|0],n=(t=t+1|0)?a:a+1|0,s[i+16>>2]=t,a=n,s[i+20>>2]=a,r=Z>>>2|0,u=0;t:{b:{A:{n:switch(0|(n=3&Z)){case 0:break b;case 3:break n;default:break A}if(f=0,(r=r+e|0)>>>0>=A>>>0)break f;Ge(G+(e<<2)|0,0,4+(252&Z)|0),e=r;break t}for(;;){if((0|t)==(0|N)&(0|a)==(0|h))break a;if(A=_[f+t|0],a=(t=t+1|0)?a:a+1|0,s[i+16>>2]=t,s[i+20>>2]=a,r|=A<<(u<<3|6),(0|n)==(0|(u=u+1|0)))break}}s[G+(e<<2)>>2]=r}if(!((e=e+1|0)>>>0<(A=s[d+12>>2])>>>0))break}if(r=d+16|0,N=s[d>>2],f=s[d+16>>2],(e=s[d+20>>2]-f|0)>>>0<=262143?ai(r,65536-(e>>>2|0)|0):262144!=(0|e)&&(s[d+20>>2]=f+262144),e=s[(f=d+28|0)>>2],(t=s[d+32>>2]-e>>3)>>>0<A>>>0)Ai(f,A-t|0),e=s[f>>2];else if(t>>>0>A>>>0&&(s[d+32>>2]=(A<<3)+e),!A)break a;for(n=s[r>>2],t=0,f=0;;){if(u=s[(a=N+(t<<2)|0)>>2],r=f,s[(d=(t<<3)+e|0)+4>>2]=r,s[d>>2]=u,(f=(a=s[a>>2])+r|0)>>>0>65536)break a;if(!(r>>>0>=f>>>0)){if(u=0,d=7&a)for(;s[n+(r<<2)>>2]=t,r=r+1|0,(0|d)!=(0|(u=u+1|0)););if(!(a-1>>>0<=6))for(;s[(a=n+(r<<2)|0)>>2]=t,s[a+28>>2]=t,s[a+24>>2]=t,s[a+20>>2]=t,s[a+16>>2]=t,s[a+12>>2]=t,s[a+8>>2]=t,s[a+4>>2]=t,(0|f)!=(0|(r=r+8|0)););}if((0|A)==(0|(t=t+1|0)))break}k=65536==(0|f)}}f=k}if(!(!f|(s[b+20>>2]?0:y))){f=0,Q=n=Q-16|0;f:{if(l[i+38>>1]<=511){if(e=s[i+8>>2],A=r=s[i+12>>2],a=s[i+20>>2],e>>>0<(t=(k=s[i+16>>2])+8|0)>>>0&(0|r)<=(0|(a=t>>>0<8?a+1|0:a))|(0|r)<(0|a))break f;k=k+s[i>>2]|0,r=_[0|k]|_[k+1|0]<<8|_[k+2|0]<<16|_[k+3|0]<<24,k=_[k+4|0]|_[k+5|0]<<8|_[k+6|0]<<16|_[k+7|0]<<24,s[i+16>>2]=t,s[i+20>>2]=a}else{if(!_i(1,n+8|0,i))break f;t=s[i+16>>2],a=s[i+20>>2],e=s[i+8>>2],A=s[i+12>>2],r=s[n+8>>2],k=s[n+12>>2]}if(N=e-t|0,!((0|(e=A-((e>>>0<t>>>0)+a|0)|0))==(0|k)&r>>>0>N>>>0|e>>>0<k>>>0||(a=a+k|0,a=(e=r+t|0)>>>0<r>>>0?a+1|0:a,s[i+16>>2]=e,s[i+20>>2]=a,(0|r)<=0))){e=s[i>>2]+t|0,s[b+48>>2]=e;a:if((a=_[0|(t=(i=r-1|0)+e|0)])>>>0<=63)s[b+52>>2]=i,r=63&_[0|t];else{t:switch((a>>>6|0)-1|0){case 0:if(r>>>0<2)break f;r=r-2|0,s[b+52>>2]=r,r=_[(r=r+e|0)+1|0]<<8&16128|_[0|r];break a;case 1:if(r>>>0<3)break f;r=r-3|0,s[b+52>>2]=r,r=_[(r=r+e|0)+1|0]<<8|_[r+2|0]<<16&4128768|_[0|r];break a;default:break t}r=r-4|0,s[b+52>>2]=r,r=1073741823&(_[0|(r=r+e|0)]|_[r+1|0]<<8|_[r+2|0]<<16|_[r+3|0]<<24)}s[b+56>>2]=r+262144,f=r>>>0<66846720}}if(Q=n+16|0,f)if(y)for(e=s[b+52>>2],r=s[b+56>>2],i=s[b+36>>2],f=s[b+48>>2],t=s[b+24>>2];;){f:if(!(r>>>0>262143))for(;;){if((0|e)<=0)break f;if(e=e-1|0,s[b+52>>2]=e,r=_[e+f|0]|r<<8,s[b+56>>2]=r,!(r>>>0<262144))break}if(v=s[t+((a=65535&r)<<2)>>2],r=(m(s[(k=i+(v<<3)|0)>>2],r>>>16|0)+a|0)-s[k+4>>2]|0,s[b+56>>2]=r,s[o+(R<<2)>>2]=v,v=1,(0|y)==(0|(R=R+1|0)))break}else v=1}(r=s[b+36>>2])&&(s[b+40>>2]=r,mr(r)),(r=s[b+24>>2])&&(s[b+28>>2]=r,mr(r)),(r=s[b+8>>2])&&(s[b+12>>2]=r,mr(r)),Q=b- -64|0,e=v;break e;case 11:y=r,N=f,Q=b=Q+-64|0,s[b+56>>2]=0,s[b+48>>2]=0,s[b+52>>2]=0,s[b+40>>2]=0,s[b+44>>2]=0,s[b+32>>2]=0,s[b+36>>2]=0,s[b+24>>2]=0,s[b+28>>2]=0,s[b+16>>2]=0,s[b+20>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0,o=b+8|0;f:{a:if(r=l[i+38>>1]){if(r>>>0<=511){if(f=s[i+8>>2],e=s[i+12>>2],a=s[i+20>>2],f>>>0<(t=(r=s[i+16>>2])+4|0)>>>0&(0|e)<=(0|(a=t>>>0<4?a+1|0:a))|(0|e)<(0|a))break a;r=r+s[i>>2]|0,A=_[0|r]|_[r+1|0]<<8|_[r+2|0]<<16|_[r+3|0]<<24,s[o+12>>2]=A,n=s[i+20>>2],n=(t=s[i+16>>2]+4|0)>>>0<4?n+1|0:n,s[i+16>>2]=t,a=n,s[i+20>>2]=a}else{if(!Ri(1,o+12|0,i))break a;t=s[i+16>>2],a=s[i+20>>2],A=s[o+12>>2]}if(!((f=(r=s[i+8>>2])-t|0)>>>0<A>>>6>>>0&(0|(r=s[i+12>>2]-((r>>>0<t>>>0)+a|0)|0))<=0|(0|r)<0)){if(e=s[o>>2],(r=s[o+4>>2]-e>>2)>>>0<A>>>0?(ai(o,A-r|0),A=s[o+12>>2]):r>>>0<=A>>>0||(s[o+4>>2]=e+(A<<2)),f=1,!A)break f;for(t=s[i+16>>2],a=s[i+20>>2],Z=s[o>>2],n=s[i+8>>2],d=s[i+12>>2],e=0;;){if(f=0,(0|a)>=(0|d)&t>>>0>=n>>>0|(0|a)>(0|d))break f;f=s[i>>2],h=_[f+t|0],a=(t=t+1|0)?a:a+1|0,s[i+16>>2]=t,s[i+20>>2]=a,r=h>>>2|0,u=0;t:{b:{A:{n:switch(0|(G=3&h)){case 0:break b;case 3:break n;default:break A}if(f=0,(r=r+e|0)>>>0>=A>>>0)break f;Ge(Z+(e<<2)|0,0,4+(252&h)|0),e=r;break t}for(;;){if((0|t)==(0|n)&(0|a)==(0|d))break a;if(A=_[f+t|0],a=(t=t+1|0)?a:a+1|0,s[i+16>>2]=t,s[i+20>>2]=a,r|=A<<(u<<3|6),(0|G)==(0|(u=u+1|0)))break}}s[Z+(e<<2)>>2]=r}if(!((e=e+1|0)>>>0<(A=s[o+12>>2])>>>0))break}if(r=o+16|0,d=s[o>>2],f=s[o+16>>2],(e=s[o+20>>2]-f|0)>>>0<=1048575?ai(r,262144-(e>>>2|0)|0):1048576!=(0|e)&&(s[o+20>>2]=f- -1048576),e=s[(f=o+28|0)>>2],(t=s[o+32>>2]-e>>3)>>>0<A>>>0)Ai(f,A-t|0),e=s[f>>2];else if(t>>>0>A>>>0&&(s[o+32>>2]=(A<<3)+e),!A)break a;for(n=s[r>>2],t=0,f=0;;){if(o=s[(a=d+(t<<2)|0)>>2],r=f,s[(u=(t<<3)+e|0)+4>>2]=r,s[u>>2]=o,(f=(a=s[a>>2])+r|0)>>>0>262144)break a;if(!(r>>>0>=f>>>0)){if(u=0,o=7&a)for(;s[n+(r<<2)>>2]=t,r=r+1|0,(0|o)!=(0|(u=u+1|0)););if(!(a-1>>>0<=6))for(;s[(a=n+(r<<2)|0)>>2]=t,s[a+28>>2]=t,s[a+24>>2]=t,s[a+20>>2]=t,s[a+16>>2]=t,s[a+12>>2]=t,s[a+8>>2]=t,s[a+4>>2]=t,(0|f)!=(0|(r=r+8|0)););}if((0|A)==(0|(t=t+1|0)))break}k=262144==(0|f)}}f=k}if(!(!f|(s[b+20>>2]?0:y))){f=0,Q=o=Q-16|0;f:{if(l[i+38>>1]<=511){if(e=s[i+8>>2],A=r=s[i+12>>2],n=s[i+20>>2],e>>>0<(t=(k=s[i+16>>2])+8|0)>>>0&(0|(a=n=t>>>0<8?n+1|0:n))>=(0|r)|(0|r)<(0|a))break f;k=k+s[i>>2]|0,r=_[0|k]|_[k+1|0]<<8|_[k+2|0]<<16|_[k+3|0]<<24,k=_[k+4|0]|_[k+5|0]<<8|_[k+6|0]<<16|_[k+7|0]<<24,s[i+16>>2]=t,s[i+20>>2]=a}else{if(!_i(1,o+8|0,i))break f;t=s[i+16>>2],a=s[i+20>>2],e=s[i+8>>2],A=s[i+12>>2],r=s[o+8>>2],k=s[o+12>>2]}if(n=e-t|0,!((0|(e=A-((e>>>0<t>>>0)+a|0)|0))==(0|k)&r>>>0>n>>>0|e>>>0<k>>>0||(a=a+k|0,a=(e=r+t|0)>>>0<r>>>0?a+1|0:a,s[i+16>>2]=e,s[i+20>>2]=a,(0|r)<=0))){e=s[i>>2]+t|0,s[b+48>>2]=e;a:if((a=_[0|(t=(i=r-1|0)+e|0)])>>>0<=63)s[b+52>>2]=i,r=63&_[0|t];else{t:switch((a>>>6|0)-1|0){case 0:if(r>>>0<2)break f;r=r-2|0,s[b+52>>2]=r,r=_[(r=r+e|0)+1|0]<<8&16128|_[0|r];break a;case 1:if(r>>>0<3)break f;r=r-3|0,s[b+52>>2]=r,r=_[(r=r+e|0)+1|0]<<8|_[r+2|0]<<16&4128768|_[0|r];break a;default:break t}r=r-4|0,s[b+52>>2]=r,r=1073741823&(_[0|(r=r+e|0)]|_[r+1|0]<<8|_[r+2|0]<<16|_[r+3|0]<<24)}s[b+56>>2]=r- -1048576,f=r>>>0<267386880}}if(Q=o+16|0,f)if(y)for(e=s[b+52>>2],r=s[b+56>>2],i=s[b+36>>2],f=s[b+48>>2],t=s[b+24>>2];;){f:if(!(r>>>0>1048575))for(;;){if((0|e)<=0)break f;if(e=e-1|0,s[b+52>>2]=e,r=_[e+f|0]|r<<8,s[b+56>>2]=r,!(r>>>0<1048576))break}if(v=s[t+((a=262143&r)<<2)>>2],r=(m(s[(k=i+(v<<3)|0)>>2],r>>>18|0)+a|0)-s[k+4>>2]|0,s[b+56>>2]=r,s[N+(R<<2)>>2]=v,v=1,(0|y)==(0|(R=R+1|0)))break}else v=1}(r=s[b+36>>2])&&(s[b+40>>2]=r,mr(r)),(r=s[b+24>>2])&&(s[b+28>>2]=r,mr(r)),(r=s[b+8>>2])&&(s[b+12>>2]=r,mr(r)),Q=b- -64|0,e=v;break e;case 12:y=r,N=f,Q=b=Q+-64|0,s[b+56>>2]=0,s[b+48>>2]=0,s[b+52>>2]=0,s[b+40>>2]=0,s[b+44>>2]=0,s[b+32>>2]=0,s[b+36>>2]=0,s[b+24>>2]=0,s[b+28>>2]=0,s[b+16>>2]=0,s[b+20>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0,o=b+8|0;f:{a:if(r=l[i+38>>1]){if(r>>>0<=511){if(f=s[i+8>>2],e=s[i+12>>2],n=s[i+20>>2],f>>>0<(t=(r=s[i+16>>2])+4|0)>>>0&(0|e)<=(0|(n=t>>>0<4?n+1|0:n))|(0|e)<(0|n))break a;r=r+s[i>>2]|0,A=_[0|r]|_[r+1|0]<<8|_[r+2|0]<<16|_[r+3|0]<<24,s[o+12>>2]=A,a=s[i+20>>2],a=(t=s[i+16>>2]+4|0)>>>0<4?a+1|0:a,s[i+16>>2]=t,s[i+20>>2]=a}else{if(!Ri(1,o+12|0,i))break a;t=s[i+16>>2],a=s[i+20>>2],A=s[o+12>>2]}if(!((f=(r=s[i+8>>2])-t|0)>>>0<A>>>6>>>0&(0|(r=s[i+12>>2]-((r>>>0<t>>>0)+a|0)|0))<=0|(0|r)<0)){if(e=s[o>>2],(r=s[o+4>>2]-e>>2)>>>0<A>>>0?(ai(o,A-r|0),A=s[o+12>>2]):r>>>0<=A>>>0||(s[o+4>>2]=e+(A<<2)),f=1,!A)break f;for(t=s[i+16>>2],a=s[i+20>>2],Z=s[o>>2],n=s[i+8>>2],d=s[i+12>>2],e=0;;){if(f=0,(0|a)>=(0|d)&t>>>0>=n>>>0|(0|a)>(0|d))break f;f=s[i>>2],h=_[f+t|0],a=(t=t+1|0)?a:a+1|0,s[i+16>>2]=t,s[i+20>>2]=a,r=h>>>2|0,u=0;t:{b:{A:{n:switch(0|(G=3&h)){case 0:break b;case 3:break n;default:break A}if(f=0,(r=r+e|0)>>>0>=A>>>0)break f;Ge(Z+(e<<2)|0,0,4+(252&h)|0),e=r;break t}for(;;){if((0|t)==(0|n)&(0|a)==(0|d))break a;if(A=_[f+t|0],a=(t=t+1|0)?a:a+1|0,s[i+16>>2]=t,s[i+20>>2]=a,r|=A<<(u<<3|6),(0|G)==(0|(u=u+1|0)))break}}s[Z+(e<<2)>>2]=r}if(!((e=e+1|0)>>>0<(A=s[o+12>>2])>>>0))break}if(r=o+16|0,d=s[o>>2],f=s[o+16>>2],(e=s[o+20>>2]-f|0)>>>0<=2097151?ai(r,524288-(e>>>2|0)|0):2097152!=(0|e)&&(s[o+20>>2]=f+2097152),e=s[(f=o+28|0)>>2],(t=s[o+32>>2]-e>>3)>>>0<A>>>0)Ai(f,A-t|0),e=s[f>>2];else if(t>>>0>A>>>0&&(s[o+32>>2]=(A<<3)+e),!A)break a;for(n=s[r>>2],t=0,f=0;;){if(o=s[(a=d+(t<<2)|0)>>2],r=f,s[(u=(t<<3)+e|0)+4>>2]=r,s[u>>2]=o,(f=(a=s[a>>2])+r|0)>>>0>524288)break a;if(!(r>>>0>=f>>>0)){if(u=0,o=7&a)for(;s[n+(r<<2)>>2]=t,r=r+1|0,(0|o)!=(0|(u=u+1|0)););if(!(a-1>>>0<=6))for(;s[(a=n+(r<<2)|0)>>2]=t,s[a+28>>2]=t,s[a+24>>2]=t,s[a+20>>2]=t,s[a+16>>2]=t,s[a+12>>2]=t,s[a+8>>2]=t,s[a+4>>2]=t,(0|f)!=(0|(r=r+8|0)););}if((0|A)==(0|(t=t+1|0)))break}k=524288==(0|f)}}f=k}if(!(!f|(s[b+20>>2]?0:y))){f=0,Q=n=Q-16|0;f:{if(l[i+38>>1]<=511){if(e=s[i+8>>2],A=r=s[i+12>>2],a=s[i+20>>2],e>>>0<(t=(k=s[i+16>>2])+8|0)>>>0&(0|r)<=(0|(a=t>>>0<8?a+1|0:a))|(0|r)<(0|a))break f;k=k+s[i>>2]|0,r=_[0|k]|_[k+1|0]<<8|_[k+2|0]<<16|_[k+3|0]<<24,k=_[k+4|0]|_[k+5|0]<<8|_[k+6|0]<<16|_[k+7|0]<<24,s[i+16>>2]=t,s[i+20>>2]=a}else{if(!_i(1,n+8|0,i))break f;t=s[i+16>>2],a=s[i+20>>2],e=s[i+8>>2],A=s[i+12>>2],r=s[n+8>>2],k=s[n+12>>2]}if(o=e-t|0,!((0|(e=A-((e>>>0<t>>>0)+a|0)|0))==(0|k)&r>>>0>o>>>0|e>>>0<k>>>0||(a=a+k|0,a=(e=r+t|0)>>>0<r>>>0?a+1|0:a,s[i+16>>2]=e,s[i+20>>2]=a,(0|r)<=0))){e=s[i>>2]+t|0,s[b+48>>2]=e;a:if((a=_[0|(t=(i=r-1|0)+e|0)])>>>0<=63)s[b+52>>2]=i,r=63&_[0|t];else{t:switch((a>>>6|0)-1|0){case 0:if(r>>>0<2)break f;r=r-2|0,s[b+52>>2]=r,r=_[(r=r+e|0)+1|0]<<8&16128|_[0|r];break a;case 1:if(r>>>0<3)break f;r=r-3|0,s[b+52>>2]=r,r=_[(r=r+e|0)+1|0]<<8|_[r+2|0]<<16&4128768|_[0|r];break a;default:break t}r=r-4|0,s[b+52>>2]=r,r=1073741823&(_[0|(r=r+e|0)]|_[r+1|0]<<8|_[r+2|0]<<16|_[r+3|0]<<24)}s[b+56>>2]=r+2097152,f=r>>>0<534773760}}if(Q=n+16|0,f)if(y)for(e=s[b+52>>2],r=s[b+56>>2],i=s[b+36>>2],f=s[b+48>>2],t=s[b+24>>2];;){f:if(!(r>>>0>2097151))for(;;){if((0|e)<=0)break f;if(e=e-1|0,s[b+52>>2]=e,r=_[e+f|0]|r<<8,s[b+56>>2]=r,!(r>>>0<2097152))break}if(v=s[t+((a=524287&r)<<2)>>2],r=(m(s[(k=i+(v<<3)|0)>>2],r>>>19|0)+a|0)-s[k+4>>2]|0,s[b+56>>2]=r,s[N+(R<<2)>>2]=v,v=1,(0|y)==(0|(R=R+1|0)))break}else v=1}(r=s[b+36>>2])&&(s[b+40>>2]=r,mr(r)),(r=s[b+24>>2])&&(s[b+28>>2]=r,mr(r)),(r=s[b+8>>2])&&(s[b+12>>2]=r,mr(r)),Q=b- -64|0,e=v;break e;case 17:e=kr(r,i,f);break e;case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:if(Q=e=Q+-64|0,s[e+56>>2]=0,s[e+48>>2]=0,s[e+52>>2]=0,s[e+40>>2]=0,s[e+44>>2]=0,s[e+32>>2]=0,s[e+36>>2]=0,s[e+24>>2]=0,s[e+28>>2]=0,s[e+16>>2]=0,s[e+20>>2]=0,s[e+8>>2]=0,s[e+12>>2]=0,!(!Vr(e+8|0,i)|(s[e+20>>2]?0:r))&&gr(e+8|0,i))if(r)for(a=s[e+52>>2],i=s[e+56>>2],k=s[e+36>>2],n=s[e+48>>2],b=s[e+24>>2];;){f:if(!(i>>>0>16383))for(;;){if((0|a)<=0)break f;if(a=a-1|0,s[e+52>>2]=a,i=_[a+n|0]|i<<8,s[e+56>>2]=i,!(i>>>0<16384))break}if(y=s[b+((t=4095&i)<<2)>>2],i=(m(s[(N=k+(y<<3)|0)>>2],i>>>12|0)+t|0)-s[N+4>>2]|0,s[e+56>>2]=i,s[(v<<2)+f>>2]=y,t=1,(0|(v=v+1|0))==(0|r))break}else t=1;(r=s[e+36>>2])&&(s[e+40>>2]=r,mr(r)),(r=s[e+24>>2])&&(s[e+28>>2]=r,mr(r)),(r=s[e+8>>2])&&(s[e+12>>2]=r,mr(r)),Q=e- -64|0,e=t;break e;case 13:case 14:case 15:case 16:break i;default:break e}e=kr(r,i,f)}t=e}return t}function w(r){var e,i=0,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0,c=0,u=0,l=0;Q=e=Q-16|0;r:{e:{i:{f:{a:{t:{b:{A:{n:{if((r|=0)>>>0<=244){if(3&(i=(A=s[4298])>>>(f=(n=r>>>0<11?16:r+11&-8)>>>3|0)|0)){i=(r=(f=f+(1&~i)|0)<<3)+17232|0,a=s[r+17240>>2],(0|i)!=(0|(r=s[a+8>>2]))?(s[r+12>>2]=i,s[i+8>>2]=r):(u=17192,l=If(f)&A,s[u>>2]=l),r=a+8|0,i=f<<3,s[a+4>>2]=3|i,s[(i=i+a|0)+4>>2]=1|s[i+4>>2];break r}if((c=s[4300])>>>0>=n>>>0)break n;if(i){i=(r=(a=Sf(0-(r=(0-(r=2<<f)|r)&i<<f)&r))<<3)+17232|0,t=s[r+17240>>2],(0|i)!=(0|(r=s[t+8>>2]))?(s[r+12>>2]=i,s[i+8>>2]=r):(A=If(a)&A,s[4298]=A),s[t+4>>2]=3|n,a=(r=a<<3)-n|0,s[(f=t+n|0)+4>>2]=1|a,s[r+t>>2]=a,c&&(i=17232+(-8&c)|0,b=s[4303],(r=1<<(c>>>3))&A?r=s[i+8>>2]:(s[4298]=r|A,r=i),s[i+8>>2]=b,s[r+12>>2]=b,s[b+12>>2]=i,s[b+8>>2]=r),r=t+8|0,s[4303]=f,s[4300]=a;break r}if(!(k=s[4299]))break n;for(f=s[17496+(Sf(0-k&k)<<2)>>2],b=(-8&s[f+4>>2])-n|0,i=f;(r=s[i+16>>2])||(r=s[i+20>>2]);)b=(a=(i=(-8&s[r+4>>2])-n|0)>>>0<b>>>0)?i:b,f=a?r:f,i=r;if(o=s[f+24>>2],(0|(a=s[f+12>>2]))!=(0|f)){r=s[f+8>>2],s[r+12>>2]=a,s[a+8>>2]=r;break e}if(!(r=s[(i=f+20|0)>>2])){if(!(r=s[f+16>>2]))break A;i=f+16|0}for(;t=i,a=r,(r=s[(i=r+20|0)>>2])||(i=a+16|0,r=s[a+16>>2]););s[t>>2]=0;break e}if(n=-1,!(r>>>0>4294967231)&&(n=-8&(r=r+11|0),k=s[4299])){b=0-n|0,A=0,n>>>0<256||(A=31,n>>>0>16777215||(A=62+((n>>>38-(r=R(r>>>8|0))&1)-(r<<1)|0)|0));o:{k:{if(i=s[17496+(A<<2)>>2])for(r=0,f=n<<(31!=(0|A)?25-(A>>>1|0):0);;){if(!((t=(-8&s[i+4>>2])-n|0)>>>0>=b>>>0||(a=i,b=t,t))){b=0,r=i;break k}if(t=s[i+20>>2],i=s[16+((f>>>29&4)+i|0)>>2],r=t?(0|t)==(0|i)?r:t:r,f<<=1,!i)break}else r=0;if(!(r|a)){if(a=0,!(r=(0-(r=2<<A)|r)&k))break n;r=s[17496+(Sf(r&0-r)<<2)>>2]}if(!r)break o}for(;b=(f=(i=(-8&s[r+4>>2])-n|0)>>>0<b>>>0)?i:b,a=f?r:a,r=(i=s[r+16>>2])||s[r+20>>2];);}if(!(!a|s[4300]-n>>>0<=b>>>0)){if(A=s[a+24>>2],(0|a)!=(0|(f=s[a+12>>2]))){r=s[a+8>>2],s[r+12>>2]=f,s[f+8>>2]=r;break i}if(!(r=s[(i=a+20|0)>>2])){if(!(r=s[a+16>>2]))break b;i=a+16|0}for(;t=i,f=r,(r=s[(i=r+20|0)>>2])||(i=f+16|0,r=s[f+16>>2]););s[t>>2]=0;break i}}}if((r=s[4300])>>>0>=n>>>0){a=s[4303],(i=r-n|0)>>>0>=16?(s[(f=a+n|0)+4>>2]=1|i,s[r+a>>2]=i,s[a+4>>2]=3|n):(s[a+4>>2]=3|r,s[(r=r+a|0)+4>>2]=1|s[r+4>>2],f=0,i=0),s[4300]=i,s[4303]=f,r=a+8|0;break r}if((o=s[4301])>>>0>n>>>0){i=o-n|0,s[4301]=i,r=(f=s[4304])+n|0,s[4304]=r,s[r+4>>2]=1|i,s[f+4>>2]=3|n,r=f+8|0;break r}if(r=0,k=n+47|0,s[4416]?f=s[4418]:(s[4419]=-1,s[4420]=-1,s[4417]=4096,s[4418]=4096,s[4416]=e+12&-16^1431655768,s[4421]=0,s[4409]=0,f=4096),(i=(t=k+f|0)&(b=0-f|0))>>>0<=n>>>0)break r;if((a=s[4408])&&a>>>0<(A=(f=s[4406])+i|0)>>>0|f>>>0>=A>>>0)break r;n:{if(!(4&_[17636])){o:{k:{c:{u:{if(a=s[4304])for(r=17640;;){if((f=s[r>>2])>>>0<=a>>>0&a>>>0<f+s[r+4>>2]>>>0)break u;if(!(r=s[r+8>>2]))break}if(-1==(0|(f=tf(0))))break o;if(A=i,(r=(a=s[4417])-1|0)&f&&(A=(i-f|0)+(r+f&0-a)|0),A>>>0<=n>>>0)break o;if((a=s[4408])&&a>>>0<(b=(r=s[4406])+A|0)>>>0|r>>>0>=b>>>0)break o;if((0|f)!=(0|(r=tf(A))))break c;break n}if((0|(f=tf(A=b&t-o)))==(s[r>>2]+s[r+4>>2]|0))break k;r=f}if(-1==(0|r))break o;if(n+48>>>0<=A>>>0){f=r;break n}if(-1==(0|tf(f=(f=s[4418])+(k-A|0)&0-f)))break o;A=f+A|0,f=r;break n}if(-1!=(0|f))break n}s[4409]=4|s[4409]}if(-1==(0|(f=tf(i)))|-1==(0|(r=tf(0)))|r>>>0<=f>>>0)break f;if((A=r-f|0)>>>0<=n+40>>>0)break f}r=s[4406]+A|0,s[4406]=r,r>>>0>p[4407]&&(s[4407]=r);n:{if(t=s[4304]){for(r=17640;;){if(((a=s[r>>2])+(i=s[r+4>>2])|0)==(0|f))break n;if(!(r=s[r+8>>2]))break}break t}for((r=s[4302])>>>0<=f>>>0&&r||(s[4302]=f),r=0,s[4411]=A,s[4410]=f,s[4306]=-1,s[4307]=s[4416],s[4413]=0;i=(a=r<<3)+17232|0,s[a+17240>>2]=i,s[a+17244>>2]=i,32!=(0|(r=r+1|0)););i=(a=A-40|0)-(r=f+8&7?-8-f&7:0)|0,s[4301]=i,r=r+f|0,s[4304]=r,s[r+4>>2]=1|i,s[4+(f+a|0)>>2]=40,s[4305]=s[4420];break a}if(8&_[r+12|0]|a>>>0>t>>>0|f>>>0<=t>>>0)break t;s[r+4>>2]=i+A,f=(r=t+8&7?-8-t&7:0)+t|0,s[4304]=f,r=(i=s[4301]+A|0)-r|0,s[4301]=r,s[f+4>>2]=1|r,s[4+(i+t|0)>>2]=40,s[4305]=s[4420];break a}a=0;break e}f=0;break i}p[4302]>f>>>0&&(s[4302]=f),i=f+A|0,r=17640;t:{b:{A:{n:{o:{k:{for(;;){if((0|i)!=s[r>>2]){if(r=s[r+8>>2])continue;break k}break}if(!(8&_[r+12|0]))break o}for(r=17640;;){if((i=s[r>>2])>>>0<=t>>>0&&(b=i+s[r+4>>2]|0)>>>0>t>>>0)break n;r=s[r+8>>2]}}if(s[r>>2]=f,s[r+4>>2]=s[r+4>>2]+A,s[(k=(f+8&7?-8-f&7:0)+f|0)+4>>2]=3|n,r=(A=i+(i+8&7?-8-i&7:0)|0)-(o=n+k|0)|0,(0|t)==(0|A)){s[4304]=o,r=s[4301]+r|0,s[4301]=r,s[o+4>>2]=1|r;break b}if(s[4303]==(0|A)){s[4303]=o,r=s[4300]+r|0,s[4300]=r,s[o+4>>2]=1|r,s[r+o>>2]=r;break b}if(1==(3&(b=s[A+4>>2]))){t=-8&b;o:if(b>>>0<=255){if(a=s[A+8>>2],i=b>>>3|0,(0|(f=s[A+12>>2]))==(0|a)){u=17192,l=s[4298]&If(i),s[u>>2]=l;break o}s[a+12>>2]=f,s[f+8>>2]=a}else{if(n=s[A+24>>2],(0|A)==(0|(f=s[A+12>>2])))if((i=s[(b=A+20|0)>>2])||(i=s[(b=A+16|0)>>2])){for(;a=b,(i=s[(b=(f=i)+20|0)>>2])||(b=f+16|0,i=s[f+16>>2]););s[a>>2]=0}else f=0;else i=s[A+8>>2],s[i+12>>2]=f,s[f+8>>2]=i;if(n){a=s[A+28>>2];k:{if(s[(i=17496+(a<<2)|0)>>2]==(0|A)){if(s[i>>2]=f,f)break k;u=17196,l=s[4299]&If(a),s[u>>2]=l;break o}if(s[n+(s[n+16>>2]==(0|A)?16:20)>>2]=f,!f)break o}s[f+24>>2]=n,(i=s[A+16>>2])&&(s[f+16>>2]=i,s[i+24>>2]=f),(i=s[A+20>>2])&&(s[f+20>>2]=i,s[i+24>>2]=f)}}b=s[(A=t+A|0)+4>>2],r=r+t|0}if(s[A+4>>2]=-2&b,s[o+4>>2]=1|r,s[r+o>>2]=r,r>>>0<=255){i=17232+(-8&r)|0,(f=s[4298])&(r=1<<(r>>>3))?r=s[i+8>>2]:(s[4298]=r|f,r=i),s[i+8>>2]=o,s[r+12>>2]=o,s[o+12>>2]=i,s[o+8>>2]=r;break b}if(b=31,r>>>0<=16777215&&(b=62+((r>>>38-(i=R(r>>>8|0))&1)-(i<<1)|0)|0),s[o+28>>2]=b,s[o+16>>2]=0,s[o+20>>2]=0,i=17496+(b<<2)|0,(a=s[4299])&(f=1<<b)){for(b=r<<(31!=(0|b)?25-(b>>>1|0):0),f=s[i>>2];;){if(i=f,(-8&s[f+4>>2])==(0|r))break A;if(f=b>>>29|0,b<<=1,!(f=s[(a=(4&f)+i|0)+16>>2]))break}s[a+16>>2]=o}else s[4299]=f|a,s[i>>2]=o;s[o+24>>2]=i,s[o+12>>2]=o,s[o+8>>2]=o;break b}for(i=(a=A-40|0)-(r=f+8&7?-8-f&7:0)|0,s[4301]=i,r=r+f|0,s[4304]=r,s[r+4>>2]=1|i,s[4+(f+a|0)>>2]=40,s[4305]=s[4420],s[(a=(r=(b+(b-39&7?39-b&7:0)|0)-47|0)>>>0<t+16>>>0?t:r)+4>>2]=27,r=s[4413],s[a+16>>2]=s[4412],s[a+20>>2]=r,r=s[4411],s[a+8>>2]=s[4410],s[a+12>>2]=r,s[4412]=a+8,s[4411]=A,s[4410]=f,s[4413]=0,r=a+24|0;s[r+4>>2]=7,i=r+8|0,r=r+4|0,i>>>0<b>>>0;);if((0|a)==(0|t))break a;if(s[a+4>>2]=-2&s[a+4>>2],b=a-t|0,s[t+4>>2]=1|b,s[a>>2]=b,b>>>0<=255){i=17232+(-8&b)|0,(f=s[4298])&(r=1<<(b>>>3))?r=s[i+8>>2]:(s[4298]=r|f,r=i),s[i+8>>2]=t,s[r+12>>2]=t,s[t+12>>2]=i,s[t+8>>2]=r;break a}if(r=31,b>>>0<=16777215&&(r=62+((b>>>38-(r=R(b>>>8|0))&1)-(r<<1)|0)|0),s[t+28>>2]=r,s[t+16>>2]=0,s[t+20>>2]=0,i=17496+(r<<2)|0,(a=s[4299])&(f=1<<r)){for(r=b<<(31!=(0|r)?25-(r>>>1|0):0),a=s[i>>2];;){if((0|b)==(-8&s[(i=a)+4>>2]))break t;if(f=r>>>29|0,r<<=1,!(a=s[(f=(4&f)+i|0)+16>>2]))break}s[f+16>>2]=t}else s[4299]=f|a,s[i>>2]=t;s[t+24>>2]=i,s[t+12>>2]=t,s[t+8>>2]=t;break a}r=s[i+8>>2],s[r+12>>2]=o,s[i+8>>2]=o,s[o+24>>2]=0,s[o+12>>2]=i,s[o+8>>2]=r}r=k+8|0;break r}r=s[i+8>>2],s[r+12>>2]=t,s[i+8>>2]=t,s[t+24>>2]=0,s[t+12>>2]=i,s[t+8>>2]=r}if(!((r=s[4301])>>>0<=n>>>0)){i=r-n|0,s[4301]=i,r=(f=s[4304])+n|0,s[4304]=r,s[r+4>>2]=1|i,s[f+4>>2]=3|n,r=f+8|0;break r}}s[3992]=48,r=0;break r}i:if(A){i=s[a+28>>2];f:{if(s[(r=17496+(i<<2)|0)>>2]==(0|a)){if(s[r>>2]=f,f)break f;k=If(i)&k,s[4299]=k;break i}if(s[A+(s[A+16>>2]==(0|a)?16:20)>>2]=f,!f)break i}s[f+24>>2]=A,(r=s[a+16>>2])&&(s[f+16>>2]=r,s[r+24>>2]=f),(r=s[a+20>>2])&&(s[f+20>>2]=r,s[r+24>>2]=f)}i:if(b>>>0<=15)r=b+n|0,s[a+4>>2]=3|r,s[(r=r+a|0)+4>>2]=1|s[r+4>>2];else if(s[a+4>>2]=3|n,s[(t=a+n|0)+4>>2]=1|b,s[t+b>>2]=b,b>>>0<=255)i=17232+(-8&b)|0,(f=s[4298])&(r=1<<(b>>>3))?r=s[i+8>>2]:(s[4298]=r|f,r=i),s[i+8>>2]=t,s[r+12>>2]=t,s[t+12>>2]=i,s[t+8>>2]=r;else{r=31,b>>>0<=16777215&&(r=62+((b>>>38-(r=R(b>>>8|0))&1)-(r<<1)|0)|0),s[t+28>>2]=r,s[t+16>>2]=0,s[t+20>>2]=0,i=17496+(r<<2)|0;f:{if((f=1<<r)&k){for(r=b<<(31!=(0|r)?25-(r>>>1|0):0),n=s[i>>2];;){if((-8&s[(i=n)+4>>2])==(0|b))break f;if(f=r>>>29|0,r<<=1,!(n=s[(f=(4&f)+i|0)+16>>2]))break}s[f+16>>2]=t}else s[4299]=f|k,s[i>>2]=t;s[t+24>>2]=i,s[t+12>>2]=t,s[t+8>>2]=t;break i}r=s[i+8>>2],s[r+12>>2]=t,s[i+8>>2]=t,s[t+24>>2]=0,s[t+12>>2]=i,s[t+8>>2]=r}r=a+8|0;break r}e:if(o){i=s[f+28>>2];i:{if(s[(r=17496+(i<<2)|0)>>2]==(0|f)){if(s[r>>2]=a,a)break i;u=17196,l=If(i)&k,s[u>>2]=l;break e}if(s[o+(s[o+16>>2]==(0|f)?16:20)>>2]=a,!a)break e}s[a+24>>2]=o,(r=s[f+16>>2])&&(s[a+16>>2]=r,s[r+24>>2]=a),(r=s[f+20>>2])&&(s[a+20>>2]=r,s[r+24>>2]=a)}b>>>0<=15?(r=b+n|0,s[f+4>>2]=3|r,s[(r=r+f|0)+4>>2]=1|s[r+4>>2]):(s[f+4>>2]=3|n,s[(a=f+n|0)+4>>2]=1|b,s[a+b>>2]=b,c&&(i=17232+(-8&c)|0,t=s[4303],(r=1<<(c>>>3))&A?r=s[i+8>>2]:(s[4298]=r|A,r=i),s[i+8>>2]=t,s[r+12>>2]=t,s[t+12>>2]=i,s[t+8>>2]=r),s[4303]=a,s[4300]=b),r=f+8|0}return Q=e+16|0,0|r}function M(r,e){var i,f=0,a=0,t=0,b=0,A=0,o=0,k=0,u=0,l=0,p=0,y=0,d=0,v=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0,V=0,T=0,D=0;Q=i=Q-32|0,d=mf(12),s[d+8>>2]=0,s[d+4>>2]=e,s[d>>2]=0,e=N=d+12|0;r:{e:{i:{for(;;){if(U=s[(e=e-12|0)+8>>2],u=s[e+4>>2],Z=s[e>>2]){if((0|U)>1e3)break r;s[i+24>>2]=0,s[i+16>>2]=0,s[i+20>>2]=0,a=1,f=s[r>>2],t=s[f+8>>2];f:if(!((0|(o=s[f+12>>2]))<=(0|(A=s[f+20>>2]))&(b=s[f+16>>2])>>>0>=t>>>0|(0|A)>(0|o))){if(t=_[b+s[f>>2]|0],o=f,f=A,f=(b=b+1|0)?f:f+1|0,s[o+16>>2]=b,s[o+20>>2]=f,Lr(i+16|0,t),t){if(f=s[r>>2],y=yf(i+16|0),v=s[f+8>>2],A=s[f+12>>2],o=s[f+20>>2],(0|A)<=(0|(o=(l=(b=s[f+16>>2])+t|0)>>>0<t>>>0?o+1|0:o))&l>>>0>v>>>0|(0|A)<(0|o))break f;Cr(y,b+s[f>>2]|0,t),a=s[f+20>>2],a=(b=t)>>>0>(t=t+s[f+16>>2]|0)>>>0?a+1|0:a,s[f+16>>2]=t,s[f+20>>2]=a}u=mf(24),s[(f=u)+4>>2]=0,s[f+8>>2]=0,s[(f=f+16|0)>>2]=0,s[f+4>>2]=0,s[u>>2]=u+4,s[u+12>>2]=f,Q=t=Q-32|0;a:if((0|(G=we(o=Z+12|0,f=i+16|0)))!=(0|(k=Z+16|0)))u&&(bf(u+12|0,s[u+16>>2]),df(u,s[u+4>>2]),mr(u));else{s[t+16>>2]=f;t:{b:{A:if(a=s[o+4>>2]){for(y=(A=(b=_[f+11|0])<<24>>24<0)?s[f>>2]:f,A=A?s[f+4>>2]:b;;){n:{o:{k:{c:{u:if(l=(v=(a=(b=(a=_[(f=a)+27|0])<<24>>24<0)?s[f+20>>2]:a)>>>0<A>>>0)?a:A){if(!(h=Ti(y,b=b?s[f+16>>2]:f+16|0,l))){if(a>>>0>A>>>0)break u;break c}if((0|h)>=0)break c}else if(a>>>0<=A>>>0)break k;if(b=f,a=s[f>>2])continue;break A}if(a=Ti(b,y,l))break o}if(v)break n;break b}if((0|a)>=0)break b}if(!(a=s[f+4>>2]))break}b=f+4|0}else f=b=o+4|0;y=(a=mf(32))+16|0,A=s[t+16>>2],c[A+11|0]>=0?(v=s[A+4>>2],s[y>>2]=s[A>>2],s[y+4>>2]=v,s[y+8>>2]=s[A+8>>2]):oi(y,s[A>>2],s[A+4>>2]),s[a+8>>2]=f,s[a>>2]=0,s[a+4>>2]=0,s[a+28>>2]=0,s[b>>2]=a,f=a,(A=s[s[o>>2]>>2])&&(s[o>>2]=A,f=s[b>>2]),$r(s[o+4>>2],f),s[o+8>>2]=s[o+8>>2]+1,f=1;break t}a=f,f=0}if(c[t+28|0]=f,s[t+24>>2]=a,a=s[t+24>>2],f=s[a+28>>2],s[a+28>>2]=u,!f)break a;bf(f+12|0,s[f+16>>2]),df(f,s[f+4>>2]),mr(f)}Q=t+32|0,a=(0|k)!=(0|G)}if(c[i+27|0]<0&&mr(s[i+16>>2]),a)break r}if(!u)break r;if(s[i+16>>2]=0,!Vi(1,i+16|0,s[r>>2]))break r;if(h=0,W=s[i+16>>2])for(;;){a=0,Q=k=Q-32|0,s[k+24>>2]=0,s[k+16>>2]=0,s[k+20>>2]=0,f=s[r>>2],b=s[f+8>>2];f:{a:{t:if(!((0|(o=s[f+12>>2]))<=(0|(A=s[f+20>>2]))&(t=s[f+16>>2])>>>0>=b>>>0|(0|A)>(0|o))){if(b=_[t+s[f>>2]|0],o=f,f=A,f=(t=t+1|0)?f:f+1|0,s[o+16>>2]=t,s[o+20>>2]=f,Lr(k+16|0,b),b){if(t=s[r>>2],y=yf(k+16|0),v=s[t+8>>2],A=s[t+12>>2],f=s[t+20>>2],(l=(o=s[t+16>>2])+b|0)>>>0>v>>>0&(0|(f=l>>>0<b>>>0?f+1|0:f))>=(0|A)|(0|f)>(0|A))break t;Cr(y,o+s[t>>2]|0,b),f=s[t+20>>2],f=(A=b)>>>0>(b=b+s[t+16>>2]|0)>>>0?f+1|0:f,s[t+16>>2]=b,s[t+20>>2]=f}if(s[k+12>>2]=0,Vi(1,k+12|0,s[r>>2])&&(b=s[k+12>>2])&&(t=s[r>>2],A=(f=s[t+8>>2])-(o=s[t+16>>2])|0,!((0|(f=s[t+12>>2]-(s[t+20>>2]+(f>>>0<o>>>0)|0)|0))<=0&b>>>0>A>>>0|(0|f)<0))){if(s[k+8>>2]=0,s[k>>2]=0,s[k+4>>2]=0,(0|b)<0)break a;a=mf(b),s[k>>2]=a,f=a+b|0,s[k+8>>2]=f,p=Ge(a,0,b),s[k+4>>2]=f,V=o=s[t+12>>2],v=s[t+8>>2],f=s[t+20>>2],G=A=b+(l=s[t+16>>2])|0,y=f=A>>>0<b>>>0?f+1|0:f;b:{if((0|f)<=(0|o)&A>>>0<=v>>>0|(0|f)<(0|o)){if(Cr(p,s[t>>2]+l|0,b),a=s[t+20>>2],a=(f=b+s[t+16>>2]|0)>>>0<b>>>0?a+1|0:a,s[t+16>>2]=f,s[t+20>>2]=a,Q=o=Q-48|0,(0|(t=we(u,k+16|0)))!=(u+4|0)){if(f=s[t+4>>2])for(;a=f,f=s[f>>2];);else for(f=t;a=s[f+8>>2],b=s[a>>2]!=(0|f),f=a,b;);(0|t)==s[u>>2]&&(s[u>>2]=a),s[u+8>>2]=s[u+8>>2]-1,b=s[u+4>>2];A:{n:{if(A=t,t=s[(a=t)>>2]){if(!(f=s[A+4>>2]))break n;for(;a=f,f=s[f>>2];);}if(!(t=s[a+4>>2])){t=0,l=1;break A}}s[t+8>>2]=s[a+8>>2],l=0}p=s[a+8>>2];A:if((0|a)!=(0|(f=s[p>>2])))s[p+4>>2]=t;else{if(s[p>>2]=t,(0|a)==(0|b)){f=0,b=t;break A}f=s[p+4>>2]}R=!_[a+12|0],(0|a)!=(0|A)&&(p=s[A+8>>2],s[a+8>>2]=p,s[p+(((0|A)!=s[s[A+8>>2]>>2])<<2)>>2]=a,p=s[A>>2],s[a>>2]=p,s[p+8>>2]=a,p=s[A+4>>2],s[a+4>>2]=p,p&&(s[p+8>>2]=a),c[a+12|0]=_[A+12|0],b=(0|b)==(0|A)?a:b);A:if(!(R|!b)){if(l)for(;;){t=_[f+12|0];n:{if(a=s[f+8>>2],s[a>>2]!=(0|f)){t||(c[f+12|0]=1,c[a+12|0]=0,t=s[a+4>>2],l=s[t>>2],s[a+4>>2]=l,l&&(s[l+8>>2]=a),s[t+8>>2]=s[a+8>>2],l=s[a+8>>2],s[(((0|a)!=s[l>>2])<<2)+l>>2]=t,s[t>>2]=a,s[a+8>>2]=t,a=f,b=(0|(f=s[f>>2]))==(0|b)?a:b,f=s[f+4>>2]);o:{k:{a=s[f>>2];c:{if(_[a+12|0]||!a){if(t=s[f+4>>2],!_[t+12|0]&&t)break c;if(c[f+12|0]=0,(0|b)!=(0|(f=s[f+8>>2]))){if(_[f+12|0])break n}else f=b;c[f+12|0]=1;break A}if(!(t=s[f+4>>2]))break k}if(!_[t+12|0]){a=f;break o}}c[a+12|0]=1,c[f+12|0]=0,t=s[a+4>>2],s[f>>2]=t,t&&(s[t+8>>2]=f),s[a+8>>2]=s[f+8>>2],t=s[f+8>>2],s[((s[t>>2]!=(0|f))<<2)+t>>2]=a,s[a+4>>2]=f,s[f+8>>2]=a,t=f}f=s[a+8>>2],c[a+12|0]=_[f+12|0],c[f+12|0]=1,c[t+12|0]=1,a=s[f+4>>2],t=s[a>>2],s[f+4>>2]=t,t&&(s[t+8>>2]=f),s[a+8>>2]=s[f+8>>2],t=s[f+8>>2],s[(((0|f)!=s[t>>2])<<2)+t>>2]=a,s[a>>2]=f,s[f+8>>2]=a;break A}t||(c[f+12|0]=1,c[a+12|0]=0,t=s[f+4>>2],s[a>>2]=t,t&&(s[t+8>>2]=a),s[f+8>>2]=s[a+8>>2],t=s[a+8>>2],s[(((0|a)!=s[t>>2])<<2)+t>>2]=f,s[f+4>>2]=a,s[a+8>>2]=f,b=(0|a)==(0|b)?f:b,f=s[a>>2]);o:if(!(t=s[f>>2])|_[t+12|0]){if(a=s[f+4>>2],_[a+12|0]||!a){if(c[f+12|0]=0,(0|(f=s[f+8>>2]))!=(0|b)&&_[f+12|0])break n;c[f+12|0]=1;break A}if(t){if(!_[t+12|0]){a=f;break o}a=s[f+4>>2]}c[a+12|0]=1,c[f+12|0]=0,t=s[a>>2],s[f+4>>2]=t,t&&(s[t+8>>2]=f),s[a+8>>2]=s[f+8>>2],t=s[f+8>>2],s[((s[t>>2]!=(0|f))<<2)+t>>2]=a,s[a>>2]=f,s[f+8>>2]=a,t=f}else a=f;f=s[a+8>>2],c[a+12|0]=_[f+12|0],c[f+12|0]=1,c[t+12|0]=1,a=s[f>>2],t=s[a+4>>2],s[f>>2]=t,t&&(s[t+8>>2]=f),s[a+8>>2]=s[f+8>>2],t=s[f+8>>2],s[(((0|f)!=s[t>>2])<<2)+t>>2]=a,s[a+4>>2]=f,s[f+8>>2]=a;break A}a=f,f=s[f+8>>2],f=s[(((0|a)==s[f>>2])<<2)+f>>2]}c[t+12|0]=1}(f=s[A+28>>2])&&(s[A+32>>2]=f,mr(f)),c[A+27|0]<0&&mr(s[A+16>>2]),mr(A)}s[o+8>>2]=0,s[o>>2]=0,s[o+4>>2]=0,b=(f=s[k+4>>2])-(a=s[k>>2])|0,t=0;A:{n:{if((0|f)!=(0|a)){if((0|b)<0)break n;A=(f=Ge(t=mf(b),0,b))+b|0,s[o+8>>2]=A,s[o+4>>2]=A,s[o>>2]=f,f=a}Cr(t,f,b),c[k+27|0]>=0?(s[o+24>>2]=s[k+24>>2],f=s[k+20>>2],s[o+16>>2]=s[k+16>>2],s[o+20>>2]=f):oi(o+16|0,s[k+16>>2],s[k+20>>2]),Qi(o+28|0,o),f=b=o+16|0;o:{k:{c:if(a=s[u+4>>2]){for(l=(A=(t=_[f+11|0])<<24>>24<0)?s[f>>2]:f,A=A?s[f+4>>2]:t;;){u:{s:{_:{l:{p:if(R=(p=(a=(t=(a=_[(f=a)+27|0])<<24>>24<0)?s[f+20>>2]:a)>>>0<A>>>0)?a:A){if(!(T=Ti(l,t=t?s[f+16>>2]:f+16|0,R))){if(a>>>0>A>>>0)break p;break l}if((0|T)>=0)break l}else if(a>>>0<=A>>>0)break _;if(t=f,a=s[f>>2])continue;break c}if(a=Ti(t,l,R))break s}if(p)break u;break k}if((0|a)>=0)break k}if(!(a=s[f+4>>2]))break}t=f+4|0}else f=t=u+4|0;a=mf(40),s[a+24>>2]=s[b+8>>2],A=s[b+4>>2],s[a+16>>2]=s[b>>2],s[a+20>>2]=A,s[b>>2]=0,s[b+4>>2]=0,s[b+8>>2]=0,Qi(a+28|0,b+12|0),s[a+8>>2]=f,s[a>>2]=0,s[a+4>>2]=0,s[t>>2]=a,f=a,(b=s[s[u>>2]>>2])&&(s[u>>2]=b,f=s[t>>2]),$r(s[u+4>>2],f),s[u+8>>2]=s[u+8>>2]+1,f=1;break o}a=f,f=0}c[o+44|0]=f,s[o+40>>2]=a,(f=s[o+28>>2])&&(s[o+32>>2]=f,mr(f)),c[o+27|0]<0&&mr(s[o+16>>2]),(f=s[o>>2])&&(s[o+4>>2]=f,mr(f)),Q=o+48|0;break A}ha(),n()}if(!(a=s[k>>2]))break b}s[k+4>>2]=a,mr(a)}a=(0|y)<=(0|V)&v>>>0>=G>>>0|(0|y)<(0|V)}}c[k+27|0]<0&&mr(s[k+16>>2]),Q=k+32|0;break f}ha(),n()}if(!a)break r;if((0|W)==(0|(h=h+1|0)))break}if(s[i+12>>2]=0,!Vi(1,i+12|0,s[r>>2]))break r;if(f=s[r>>2],(o=(t=s[f+8>>2])-(b=s[f+16>>2])|0)>>>0<(a=s[i+12>>2])>>>0&(0|(f=s[f+12>>2]-(s[f+20>>2]+(t>>>0<b>>>0)|0)|0))<=0|(0|f)<0)break r;if(a)for(h=0,o=!!(0|Z)+U|0;;){if(e>>>0<N>>>0)s[e+8>>2]=o,s[e+4>>2]=0,s[e>>2]=u,e=e+12|0,a=s[i+12>>2];else{if((e=(A=(0|(f=e-d|0))/12|0)+1|0)>>>0>=357913942)break i;if(b=(t=(N-d|0)/12|0)<<1,t=t>>>0>=178956970?357913941:e>>>0<b>>>0?b:e){if(t>>>0>=357913942)break e;b=mf(m(t,12))}else b=0;e=b+m(A,12)|0,s[e+8>>2]=o,s[e+4>>2]=0,s[e>>2]=u,f=me(e+m((0|f)/-12|0,12)|0,d,f),N=b+m(t,12)|0,e=e+12|0,d&&mr(d),d=f}if(!((h=h+1|0)>>>0<a>>>0))break}if((0|e)==(0|d))break}D=1;break r}ha(),n()}Df(),n()}return d&&mr(d),Q=i+32|0,D}function O(r,e,i,f,a){var t,b=0,A=0,o=0,k=0,l=0,y=0,d=0,m=0,v=0;Q=t=Q-32|0,s[e+32>>2]=f,s[e+40>>2]=i,s[e+4>>2]=a,cr(r,f,t+16|0);r:if(!s[r>>2])if(c[r+15|0]<0&&mr(s[r+4>>2]),f=_[t+23|0],(0|Ya[s[s[e>>2]+8>>2]](e))==(0|f))if(i=_[t+21|0],c[e+36|0]=i,a=_[t+22|0],c[e+37|0]=a,(i-3&255)>>>0<=253)e=mf(32),c[e+22|0]=0,i=_[1427]|_[1428]<<8|_[1429]<<16|_[1430]<<24,f=_[1423]|_[1424]<<8|_[1425]<<16|_[1426]<<24,c[e+14|0]=f,c[e+15|0]=f>>>8,c[e+16|0]=f>>>16,c[e+17|0]=f>>>24,c[e+18|0]=i,c[e+19|0]=i>>>8,c[e+20|0]=i>>>16,c[e+21|0]=i>>>24,i=_[1421]|_[1422]<<8|_[1423]<<16|_[1424]<<24,f=_[1417]|_[1418]<<8|_[1419]<<16|_[1420]<<24,c[e+8|0]=f,c[e+9|0]=f>>>8,c[e+10|0]=f>>>16,c[e+11|0]=f>>>24,c[e+12|0]=i,c[e+13|0]=i>>>8,c[e+14|0]=i>>>16,c[e+15|0]=i>>>24,i=_[1413]|_[1414]<<8|_[1415]<<16|_[1416]<<24,f=_[1409]|_[1410]<<8|_[1411]<<16|_[1412]<<24,c[0|e]=f,c[e+1|0]=f>>>8,c[e+2|0]=f>>>16,c[e+3|0]=f>>>24,c[e+4|0]=i,c[e+5|0]=i>>>8,c[e+6|0]=i>>>16,c[e+7|0]=i>>>24,s[r>>2]=-5,oi(r+4|0,e,22),mr(e);else if(2!=(0|i)|a>>>0<=(f?2:3)>>>0){if(i=a|i<<8,u[s[e+32>>2]+38>>1]=i,!((65535&i)>>>0<259|u[t+26>>1]>=0)){Q=o=Q-16|0,a=mf(36),s[(i=a)+4>>2]=0,s[i+8>>2]=0,s[i+24>>2]=0,s[i+28>>2]=0,s[(i=i+16|0)>>2]=0,s[i+4>>2]=0,s[a>>2]=a+4,s[a+32>>2]=0,s[a+12>>2]=i,s[o>>2]=0,f=s[e+32>>2],Q=k=Q-16|0,i=0;e:if(a&&(s[o>>2]=f,s[k+12>>2]=0,i=0,Vi(1,k+12|0,f))){if(d=s[k+12>>2])for(;;){i:{if(Vi(1,k+8|0,s[o>>2])){if(i=mf(28),s[i+4>>2]=0,s[i+8>>2]=0,s[(f=i+16|0)>>2]=0,s[f+4>>2]=0,s[i>>2]=i+4,s[i+12>>2]=f,s[i+24>>2]=s[k+8>>2],M(o,i))break i;bf(i+12|0,s[i+16>>2]),df(i,s[i+4>>2]),mr(i)}i=0;break e}if(Q=b=Q-16|0,s[b+8>>2]=i,i){if((f=s[a+28>>2])>>>0<p[a+32>>2])s[b+8>>2]=0,s[f>>2]=i,s[a+28>>2]=f+4;else{f=0;i:{f:{a:{if(A=s[a+24>>2],(i=(y=s[a+28>>2]-A>>2)+1|0)>>>0<1073741824){if(l=(A=s[a+32>>2]-A|0)>>>1|0,A=A>>>0>=2147483644?1073741823:i>>>0<l>>>0?l:i){if(A>>>0>=1073741824)break a;f=mf(A<<2)}if(l=s[b+8>>2],s[b+8>>2]=0,s[(i=(y<<2)+f|0)>>2]=l,A=(A<<2)+f|0,y=i+4|0,(0|(f=s[a+28>>2]))==(0|(l=s[a+24>>2])))break f;for(;v=s[(f=f-4|0)>>2],s[f>>2]=0,s[(i=i-4|0)>>2]=v,(0|f)!=(0|l););if(s[a+32>>2]=A,A=s[a+28>>2],s[a+28>>2]=y,f=s[a+24>>2],s[a+24>>2]=i,(0|f)==(0|A))break i;for(;i=s[(A=A-4|0)>>2],s[A>>2]=0,i&&(bf(i+12|0,s[i+16>>2]),df(i,s[i+4>>2]),mr(i)),(0|f)!=(0|A););break i}ha(),n()}Df(),n()}s[a+32>>2]=A,s[a+28>>2]=y,s[a+24>>2]=i}f&&mr(f)}i=s[b+8>>2],s[b+8>>2]=0,i&&(bf(i+12|0,s[i+16>>2]),df(i,s[i+4>>2]),mr(i))}if(Q=b+16|0,(0|d)==(0|(m=m+1|0)))break}i=M(o,a)}if(Q=k+16|0,i?(f=s[e+4>>2],i=s[f+4>>2],s[f+4>>2]=a,i&&Fi(i),s[r>>2]=0,s[r+4>>2]=0,s[r+8>>2]=0,s[r+12>>2]=0):(i=mf(32),c[i+26|0]=0,f=_[1579]|_[1580]<<8,c[i+24|0]=f,c[i+25|0]=f>>>8,f=_[1575]|_[1576]<<8|_[1577]<<16|_[1578]<<24,b=_[1571]|_[1572]<<8|_[1573]<<16|_[1574]<<24,c[i+16|0]=b,c[i+17|0]=b>>>8,c[i+18|0]=b>>>16,c[i+19|0]=b>>>24,c[i+20|0]=f,c[i+21|0]=f>>>8,c[i+22|0]=f>>>16,c[i+23|0]=f>>>24,f=_[1567]|_[1568]<<8|_[1569]<<16|_[1570]<<24,b=_[1563]|_[1564]<<8|_[1565]<<16|_[1566]<<24,c[i+8|0]=b,c[i+9|0]=b>>>8,c[i+10|0]=b>>>16,c[i+11|0]=b>>>24,c[i+12|0]=f,c[i+13|0]=f>>>8,c[i+14|0]=f>>>16,c[i+15|0]=f>>>24,f=_[1559]|_[1560]<<8|_[1561]<<16|_[1562]<<24,b=_[1555]|_[1556]<<8|_[1557]<<16|_[1558]<<24,c[0|i]=b,c[i+1|0]=b>>>8,c[i+2|0]=b>>>16,c[i+3|0]=b>>>24,c[i+4|0]=f,c[i+5|0]=f>>>8,c[i+6|0]=f>>>16,c[i+7|0]=f>>>24,s[r>>2]=-1,oi(r+4|0,i,26),mr(i),s[o+8>>2]=0,Fi(a)),Q=o+16|0,s[r>>2])break r;c[r+15|0]>=0||mr(s[r+4>>2])}if(0|Ya[s[s[e>>2]+12>>2]](e))if(0|Ya[s[s[e>>2]+20>>2]](e))if(0|Ya[s[s[e>>2]+24>>2]](e))s[r>>2]=0,s[r+4>>2]=0,s[r+8>>2]=0,s[r+12>>2]=0;else{if(e=zi(t,1317),s[r>>2]=-1,r=r+4|0,c[e+11|0]>=0){i=s[e+4>>2],s[r>>2]=s[e>>2],s[r+4>>2]=i,s[r+8>>2]=s[e+8>>2];break r}if(oi(r,s[e>>2],s[e+4>>2]),c[e+11|0]>=0)break r;mr(s[e>>2])}else{if(e=zi(t,1582),s[r>>2]=-1,r=r+4|0,c[e+11|0]>=0){i=s[e+4>>2],s[r>>2]=s[e>>2],s[r+4>>2]=i,s[r+8>>2]=s[e+8>>2];break r}if(oi(r,s[e>>2],s[e+4>>2]),c[e+11|0]>=0)break r;mr(s[e>>2])}else e=mf(48),c[e+33|0]=0,c[e+32|0]=_[1384],i=_[1380]|_[1381]<<8|_[1382]<<16|_[1383]<<24,f=_[1376]|_[1377]<<8|_[1378]<<16|_[1379]<<24,c[e+24|0]=f,c[e+25|0]=f>>>8,c[e+26|0]=f>>>16,c[e+27|0]=f>>>24,c[e+28|0]=i,c[e+29|0]=i>>>8,c[e+30|0]=i>>>16,c[e+31|0]=i>>>24,i=_[1372]|_[1373]<<8|_[1374]<<16|_[1375]<<24,f=_[1368]|_[1369]<<8|_[1370]<<16|_[1371]<<24,c[e+16|0]=f,c[e+17|0]=f>>>8,c[e+18|0]=f>>>16,c[e+19|0]=f>>>24,c[e+20|0]=i,c[e+21|0]=i>>>8,c[e+22|0]=i>>>16,c[e+23|0]=i>>>24,i=_[1364]|_[1365]<<8|_[1366]<<16|_[1367]<<24,f=_[1360]|_[1361]<<8|_[1362]<<16|_[1363]<<24,c[e+8|0]=f,c[e+9|0]=f>>>8,c[e+10|0]=f>>>16,c[e+11|0]=f>>>24,c[e+12|0]=i,c[e+13|0]=i>>>8,c[e+14|0]=i>>>16,c[e+15|0]=i>>>24,i=_[1356]|_[1357]<<8|_[1358]<<16|_[1359]<<24,f=_[1352]|_[1353]<<8|_[1354]<<16|_[1355]<<24,c[0|e]=f,c[e+1|0]=f>>>8,c[e+2|0]=f>>>16,c[e+3|0]=f>>>24,c[e+4|0]=i,c[e+5|0]=i>>>8,c[e+6|0]=i>>>16,c[e+7|0]=i>>>24,s[r>>2]=-1,oi(r+4|0,e,33),mr(e)}else e=mf(32),c[e+22|0]=0,i=_[1404]|_[1405]<<8|_[1406]<<16|_[1407]<<24,f=_[1400]|_[1401]<<8|_[1402]<<16|_[1403]<<24,c[e+14|0]=f,c[e+15|0]=f>>>8,c[e+16|0]=f>>>16,c[e+17|0]=f>>>24,c[e+18|0]=i,c[e+19|0]=i>>>8,c[e+20|0]=i>>>16,c[e+21|0]=i>>>24,i=_[1398]|_[1399]<<8|_[1400]<<16|_[1401]<<24,f=_[1394]|_[1395]<<8|_[1396]<<16|_[1397]<<24,c[e+8|0]=f,c[e+9|0]=f>>>8,c[e+10|0]=f>>>16,c[e+11|0]=f>>>24,c[e+12|0]=i,c[e+13|0]=i>>>8,c[e+14|0]=i>>>16,c[e+15|0]=i>>>24,i=_[1390]|_[1391]<<8|_[1392]<<16|_[1393]<<24,f=_[1386]|_[1387]<<8|_[1388]<<16|_[1389]<<24,c[0|e]=f,c[e+1|0]=f>>>8,c[e+2|0]=f>>>16,c[e+3|0]=f>>>24,c[e+4|0]=i,c[e+5|0]=i>>>8,c[e+6|0]=i>>>16,c[e+7|0]=i>>>24,s[r>>2]=-5,oi(r+4|0,e,22),mr(e);else e=mf(64),c[e+50|0]=0,i=_[1314]|_[1315]<<8,c[e+48|0]=i,c[e+49|0]=i>>>8,i=_[1310]|_[1311]<<8|_[1312]<<16|_[1313]<<24,f=_[1306]|_[1307]<<8|_[1308]<<16|_[1309]<<24,c[e+40|0]=f,c[e+41|0]=f>>>8,c[e+42|0]=f>>>16,c[e+43|0]=f>>>24,c[e+44|0]=i,c[e+45|0]=i>>>8,c[e+46|0]=i>>>16,c[e+47|0]=i>>>24,i=_[1302]|_[1303]<<8|_[1304]<<16|_[1305]<<24,f=_[1298]|_[1299]<<8|_[1300]<<16|_[1301]<<24,c[e+32|0]=f,c[e+33|0]=f>>>8,c[e+34|0]=f>>>16,c[e+35|0]=f>>>24,c[e+36|0]=i,c[e+37|0]=i>>>8,c[e+38|0]=i>>>16,c[e+39|0]=i>>>24,i=_[1294]|_[1295]<<8|_[1296]<<16|_[1297]<<24,f=_[1290]|_[1291]<<8|_[1292]<<16|_[1293]<<24,c[e+24|0]=f,c[e+25|0]=f>>>8,c[e+26|0]=f>>>16,c[e+27|0]=f>>>24,c[e+28|0]=i,c[e+29|0]=i>>>8,c[e+30|0]=i>>>16,c[e+31|0]=i>>>24,i=_[1286]|_[1287]<<8|_[1288]<<16|_[1289]<<24,f=_[1282]|_[1283]<<8|_[1284]<<16|_[1285]<<24,c[e+16|0]=f,c[e+17|0]=f>>>8,c[e+18|0]=f>>>16,c[e+19|0]=f>>>24,c[e+20|0]=i,c[e+21|0]=i>>>8,c[e+22|0]=i>>>16,c[e+23|0]=i>>>24,i=_[1278]|_[1279]<<8|_[1280]<<16|_[1281]<<24,f=_[1274]|_[1275]<<8|_[1276]<<16|_[1277]<<24,c[e+8|0]=f,c[e+9|0]=f>>>8,c[e+10|0]=f>>>16,c[e+11|0]=f>>>24,c[e+12|0]=i,c[e+13|0]=i>>>8,c[e+14|0]=i>>>16,c[e+15|0]=i>>>24,i=_[1270]|_[1271]<<8|_[1272]<<16|_[1273]<<24,f=_[1266]|_[1267]<<8|_[1268]<<16|_[1269]<<24,c[0|e]=f,c[e+1|0]=f>>>8,c[e+2|0]=f>>>16,c[e+3|0]=f>>>24,c[e+4|0]=i,c[e+5|0]=i>>>8,c[e+6|0]=i>>>16,c[e+7|0]=i>>>24,s[r>>2]=-1,oi(r+4|0,e,50),mr(e);Q=t+32|0}function X(r,e,i,f){var a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0,l=0,y=0,d=0,v=0,h=0,N=0,Z=0,G=0,U=0;if(k=s[e+8>>2],a=s[e+12>>2],b=s[e+20>>2],!(k>>>0<(c=(A=s[e+16>>2])+4|0)>>>0&(0|a)<=(0|(b=c>>>0<4?b+1|0:b))|(0|a)<(0|b)||(A=A+s[e>>2]|0,s[r>>2]=_[0|A]|_[A+1|0]<<8|_[A+2|0]<<16|_[A+3|0]<<24,a=A=s[e+20>>2],A=(b=(k=s[e+16>>2])+4|0)>>>0<4?a+1|0:a,s[e+16>>2]=b,s[e+20>>2]=A,p[r>>2]>32||(A=a,(a=k+8|0)>>>0>(u=s[e+8>>2])>>>0&(0|(A=a>>>0<8?A+1|0:A))>=(0|(c=s[e+12>>2]))|(0|A)>(0|c))))){if(A=s[e>>2]+b|0,b=_[0|A]|_[A+1|0]<<8|_[A+2|0]<<16|_[A+3|0]<<24,s[r+4>>2]=b,A=s[e+20>>2],A=(a=s[e+16>>2]+4|0)>>>0<4?A+1|0:A,s[e+16>>2]=a,s[e+20>>2]=A,!b)return 1;if(!(f>>>0<b>>>0)&&(s[r+8>>2]=0,Ne(r+16|0,e)&&Ne(r+36|0,e)&&Ne(r+56|0,e)&&Ne(r+76|0,e))){Z=s[r+4>>2],A=i,e=0,b=0,Q=a=Q-32|0,f=r,r=s[r+12>>2],s[a+16>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0;r:{e:{if(r){if(r>>>0>=1073741824)break e;e=mf(i=r<<2),s[a+8>>2]=e,b=e+i|0,s[a+16>>2]=b,Ge(e,0,i),s[a+12>>2]=b}i=s[f+120>>2],(o=s[i>>2])&&(s[i+4>>2]=o,mr(o),b=s[a+12>>2],e=s[a+8>>2],r=s[f+12>>2]),s[i+4>>2]=b,s[i>>2]=e,s[i+8>>2]=s[a+16>>2],e=0,s[a+16>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0;i:{if(r){if(r>>>0>=1073741824)break i;t=mf(r<<=2),s[a+8>>2]=t,e=r+t|0,s[a+16>>2]=e,Ge(t,0,r),s[a+12>>2]=e}r=s[f+132>>2],(i=s[r>>2])&&(s[r+4>>2]=i,mr(i),t=s[a+8>>2],e=s[a+12>>2]),s[r+4>>2]=e,s[r>>2]=t,s[r+8>>2]=s[a+16>>2],s[a+24>>2]=0,s[a+28>>2]=0,s[a+16>>2]=0,s[a+20>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0,sr(a+8|0),e=((r=s[a+24>>2]+s[a+28>>2]|0)>>>0)/341|0,r=s[s[a+12>>2]+(e<<2)>>2]+m(r-m(e,341)|0,12)|0,s[r+4>>2]=0,s[r+8>>2]=0,s[r>>2]=Z,i=1,r=s[a+28>>2]+1|0,s[a+28>>2]=r;f:if(r){for(;;){if(e=s[a+12>>2],t=s[a+24>>2],i=s[e+((o=((i=t+(c=r-1|0)|0)>>>0)/341|0)<<2)>>2]+m(i-m(o,341)|0,12)|0,b=s[i+8>>2],o=s[i+4>>2],k=s[i>>2],s[a+28>>2]=c,1+(((0|e)!=(0|(i=s[a+16>>2]))?m(i-e>>2,341)-1|0:0)-(r+t|0)|0)>>>0>=682&&(mr(s[i-4>>2]),s[a+16>>2]=s[a+16>>2]-4),i=0,k>>>0>Z>>>0)break f;if((r=((e=s[f+12>>2])-1|0)!=(0|o)?o+1|0:0)>>>0>=e>>>0)break f;d=(t=m(b,12))+s[f+132>>2]|0,c=t+s[f+120>>2]|0;a:{t:if((0|(o=s[f>>2]))!=(0|(l=s[(u=r<<2)+s[d>>2]>>2]))){b:{A:{n:{o:{if(k>>>0<=2){if(i=s[f+108>>2],s[i>>2]=r,t=1,(e=s[f+12>>2])>>>0>1)break o;break b}if(p[f+8>>2]>p[f+4>>2])break f;(0|(v=(e=s[f+120>>2])+(d=m(y=b+1|0,12))|0))!=(0|c)&&(Fe(v,s[c>>2],s[c+4>>2]),e=s[f+120>>2]),e=u+s[e+d>>2]|0,s[e>>2]=s[e>>2]+(1<<o+~l);k:if((0|(e=31^R(k)))<=(0|(l=32-(o=s[f+32>>2])|0))){if((0|(c=s[f+28>>2]))==s[f+20>>2])break n;if(l=s[c>>2],v=e+o|0,s[f+32>>2]=v,e=l<<o>>>32-e|0,32!=(0|v))break k;s[f+32>>2]=0,s[f+28>>2]=c+4}else{if((0|(v=(c=s[f+28>>2])+4|0))==s[f+20>>2])break n;N=s[c>>2],s[f+28>>2]=v,l=e-l|0,s[f+32>>2]=l,e=s[c+4>>2]>>>32-l|N<<o>>>32-e}if((o=k>>>1|0)>>>0<e>>>0)break f;break A}for(;r=(e-1|0)!=(0|r)?r+1|0:0,s[i+(t<<2)>>2]=r,(e=s[f+12>>2])>>>0>(t=t+1|0)>>>0;);break b}o=k>>>1|0,e=0}A:{n:{if((0|(i=k-(e=o-e|0)|0))!=(0|e)){if((0|(o=s[f+88>>2]))==s[f+80>>2])break n;k=s[o>>2],l=(c=s[f+92>>2])+1|0,s[f+92>>2]=l,k&=-2147483648>>>c;o:{if(32==(0|l)){if(s[f+92>>2]=0,s[f+88>>2]=o+4,k)break o;break n}if(!k)break n}}else i=e;o=i,i=e;break A}o=e}if(e=s[f+132>>2],t=s[(k=e+t|0)>>2],s[(c=t+u|0)>>2]=s[c>>2]+1,Fe(e+d|0,t,s[k+4>>2]),i&&(e=s[a+28>>2]+s[a+24>>2]|0,k=s[a+16>>2],(0|e)==(0|((0|(t=s[a+12>>2]))!=(0|k)?m(k-t>>2,341)-1:0))&&(sr(a+8|0),t=s[a+12>>2],e=s[a+24>>2]+s[a+28>>2]|0),e=s[((k=(e>>>0)/341|0)<<2)+t>>2]+m(e-m(k,341)|0,12)|0,s[e+8>>2]=b,s[e+4>>2]=r,s[e>>2]=i,s[a+28>>2]=s[a+28>>2]+1),!o)break t;(0|(e=s[a+28>>2]+s[a+24>>2]|0))==(0|((0|(i=s[a+16>>2]))!=(0|(t=s[a+12>>2]))?m(i-t>>2,341)-1:0))&&(sr(a+8|0),t=s[a+12>>2],e=s[a+24>>2]+s[a+28>>2]|0),e=s[((i=(e>>>0)/341|0)<<2)+t>>2]+m(e-m(i,341)|0,12)|0,s[e+8>>2]=y,s[e+4>>2]=r,s[e>>2]=o,r=s[a+28>>2]+1|0,s[a+28>>2]=r;break a}if(l=0,k)for(;;){if(s[f+12>>2])for(o=s[f+40>>2],v=s[d>>2],i=s[f+96>>2],N=s[f+108>>2],r=0;;){s[i+(s[(b=N+(r<<2)|0)>>2]<<2)>>2]=0,e=s[f>>2],t=s[b>>2]<<2;b:if((0|e)!=(0|(u=s[t+v>>2])))if(t=i+t|0,(0|(e=e-u|0))<=(0|(h=32-(u=s[f+52>>2])|0))){if((0|(y=s[f+48>>2]))==(0|o)){i=0;break f}if(s[t>>2]=s[y>>2]<<u>>>32-e,e=e+s[f+52>>2]|0,s[f+52>>2]=e,32!=(0|e))break b;s[f+52>>2]=0,s[f+48>>2]=y+4}else{if((0|o)==(0|(G=(y=s[f+48>>2])+4|0))){i=0;break f}U=s[y>>2],s[f+48>>2]=G,h=e-h|0,s[f+52>>2]=h,s[t>>2]=s[y+4>>2]>>>32-h|U<<u>>>32-e}if(e=s[b>>2]<<2,s[(b=e+i|0)>>2]=s[b>>2]|s[e+s[c>>2]>>2],!((r=r+1|0)>>>0<p[f+12>>2]))break}o=0;b:if((0|(r=s[A+16>>2]))!=s[A+20>>2])for(;;){if(t=s[A+28>>2],i=m(o,20)+r|0,u=s[i>>2],_[u+84|0]||(t=s[s[u+68>>2]+(t<<2)>>2]),p[u+80>>2]<=t>>>0)break b;if(e=y=s[f+96>>2]+(s[i+4>>2]<<2)|0,!((b=s[i+12>>2])>>>0>3)&&(r=0,e=s[A+12>>2],s[i+16>>2])){for(;e=(e=Cr(e,y+(r<<2)|0,b))+(b=s[i+12>>2])|0,(r=r+1|0)>>>0<p[i+16>>2];);e=s[A+12>>2]}if(r=s[u+40>>2],Cr(s[s[u>>2]>>2]+m(r,t)|0,e,r),o=o+1|0,r=s[A+16>>2],!(o>>>0<(s[A+20>>2]-r|0)/20>>>0))break}if(s[A+28>>2]=s[A+28>>2]+1,s[f+8>>2]=s[f+8>>2]+1,(0|k)==(0|(l=l+1|0)))break}}else{if(!k)break t;if(d=0,(0|(e=s[A+20>>2]))==(0|(b=s[A+16>>2]))){r=s[f+8>>2],s[A+28>>2]=k+s[A+28>>2],s[f+8>>2]=r+k;break t}for(;;){i=(0|e)==(0|b),r=e,o=0,e=b;b:if(!i)for(;;){if(t=s[A+28>>2],e=r,i=m(o,20)+b|0,u=s[i>>2],_[u+84|0]||(t=s[s[u+68>>2]+(t<<2)>>2]),p[u+80>>2]<=t>>>0)break b;if(e=l=s[c>>2]+(s[i+4>>2]<<2)|0,!((b=s[i+12>>2])>>>0>3)&&(r=0,e=s[A+12>>2],s[i+16>>2])){for(;e=(e=Cr(e,l+(r<<2)|0,b))+(b=s[i+12>>2])|0,(r=r+1|0)>>>0<p[i+16>>2];);e=s[A+12>>2]}if(r=s[u+40>>2],Cr(s[s[u>>2]>>2]+m(r,t)|0,e,r),!((o=o+1|0)>>>0<((e=r=s[A+20>>2])-(b=s[A+16>>2])|0)/20>>>0))break}if(s[A+28>>2]=s[A+28>>2]+1,s[f+8>>2]=s[f+8>>2]+1,(0|k)==(0|(d=d+1|0)))break}}r=s[a+28>>2]}if(!r)break}i=1}if(s[a+28>>2]=0,(e=(t=s[a+16>>2])-(r=s[a+12>>2])|0)>>>0>=9)for(;mr(s[r>>2]),r=s[a+12>>2]+4|0,s[a+12>>2]=r,(e=(t=s[a+16>>2])-r|0)>>>0>8;);b=170;f:switch((e>>>2|0)-1|0){case 1:b=341;case 0:s[a+24>>2]=b;break;default:break f}if((0|r)!=(0|t)){for(;mr(s[r>>2]),(0|t)!=(0|(r=r+4|0)););(0|(r=s[a+16>>2]))!=(0|(e=s[a+12>>2]))&&(s[a+16>>2]=r+(3+(e-r|0)&-4))}(r=s[a+8>>2])&&mr(r),Q=a+32|0;break r}ha(),n()}ha(),n()}o=i}}return o}function g(r,e,i,f){var a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0,l=0,y=0,d=0,v=0,h=0,N=0,Z=0,G=0,U=0;if(k=s[e+8>>2],u=s[e+12>>2],c=s[e+20>>2],!((t=(o=s[e+16>>2])+4|0)>>>0>k>>>0&(0|(c=t>>>0<4?c+1|0:c))>=(0|u)|(0|c)>(0|u)||(o=o+s[e>>2]|0,s[r>>2]=_[0|o]|_[o+1|0]<<8|_[o+2|0]<<16|_[o+3|0]<<24,k=o=s[e+20>>2],u=(o=(t=s[e+16>>2])+4|0)>>>0<4?k+1|0:k,s[e+16>>2]=o,s[e+20>>2]=u,p[r>>2]>32||(u=s[e+8>>2],(0|(c=s[e+12>>2]))<=(0|(k=(t=t+8|0)>>>0<8?k+1|0:k))&t>>>0>u>>>0|(0|c)<(0|k))))){if(o=s[e>>2]+o|0,t=_[0|o]|_[o+1|0]<<8|_[o+2|0]<<16|_[o+3|0]<<24,s[r+4>>2]=t,k=s[e+20>>2],k=(o=s[e+16>>2]+4|0)>>>0<4?k+1|0:k,s[e+16>>2]=o,s[e+20>>2]=k,!t)return 1;if(!(f>>>0<t>>>0)&&(s[r+8>>2]=0,Ne(r+16|0,e)&&Ne(r+36|0,e)&&Ne(r+56|0,e)&&Ne(r+76|0,e))){G=s[r+4>>2],o=i,e=0,i=0,Q=a=Q-32|0,t=r,r=s[r+12>>2],s[a+16>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0;r:{e:{if(r){if(r>>>0>=1073741824)break e;e=mf(f=r<<2),s[a+8>>2]=e,i=e+f|0,s[a+16>>2]=i,Ge(e,0,f),s[a+12>>2]=i}b=s[t+120>>2],(f=s[b>>2])&&(s[b+4>>2]=f,mr(f),i=s[a+12>>2],e=s[a+8>>2],r=s[t+12>>2]),s[b+4>>2]=i,s[b>>2]=e,s[b+8>>2]=s[a+16>>2],e=0,s[a+16>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0;i:{if(r){if(r>>>0>=1073741824)break i;A=mf(r<<=2),s[a+8>>2]=A,e=r+A|0,s[a+16>>2]=e,Ge(A,0,r),s[a+12>>2]=e}i=s[t+132>>2],(r=s[i>>2])&&(s[i+4>>2]=r,mr(r),A=s[a+8>>2],e=s[a+12>>2]),s[i+4>>2]=e,s[i>>2]=A,s[i+8>>2]=s[a+16>>2],s[a+24>>2]=0,s[a+28>>2]=0,s[a+16>>2]=0,s[a+20>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0,sr(a+8|0),r=((e=s[a+24>>2]+s[a+28>>2]|0)>>>0)/341|0,r=s[s[a+12>>2]+(r<<2)>>2]+m(e-m(r,341)|0,12)|0,s[r+4>>2]=0,s[r+8>>2]=0,s[r>>2]=G,f=1,r=s[a+28>>2]+1|0,s[a+28>>2]=r;f:if(r){for(;;){if(k=s[a+12>>2],b=s[a+24>>2],e=s[k+((e=((i=b+(f=r-1|0)|0)>>>0)/341|0)<<2)>>2]+m(i-m(e,341)|0,12)|0,y=s[e+8>>2],i=s[e+4>>2],l=s[e>>2],s[a+28>>2]=f,1+(((0|(e=s[a+16>>2]))!=(0|k)?m(e-k>>2,341)-1|0:0)-(r+b|0)|0)>>>0>=682&&(mr(s[e-4>>2]),s[a+16>>2]=s[a+16>>2]-4),l>>>0>G>>>0){f=0;break f}if(f=0,(r=(0|i)!=((e=s[t+12>>2])-1|0)?i+1|0:0)>>>0>=e>>>0)break f;h=(e=s[t+120>>2])+(d=m(y,12))|0,b=s[t>>2],A=r<<2,u=d+s[t+132>>2]|0;a:{t:if((0|b)!=(0|(i=s[A+s[u>>2]>>2]))){b:{A:{n:{o:{if(l>>>0<=2){if(i=s[t+108>>2],s[i>>2]=r,A=1,(e=s[t+12>>2])>>>0>1)break o;break b}if(p[t+8>>2]>p[t+4>>2])break f;Fe((k=e)+(e=d+12|0)|0,s[h>>2],s[h+4>>2]),e=A+s[e+s[t+120>>2]>>2]|0,s[e>>2]=s[e>>2]+(1<<b+~i);k:if((0|(c=31^R(l)))<=(0|(b=32-(u=s[t+32>>2])|0))){if((0|(b=s[t+28>>2]))==s[t+20>>2])break n;if(i=s[b>>2],e=c+u|0,s[t+32>>2]=e,i=i<<u>>>32-c|0,32!=(0|e))break k;s[t+32>>2]=0,s[t+28>>2]=b+4}else{if((0|(e=(k=s[t+28>>2])+4|0))==s[t+20>>2])break n;i=s[k>>2],s[t+28>>2]=e,e=c-b|0,s[t+32>>2]=e,i=s[k+4>>2]>>>32-e|i<<u>>>32-c}if((b=l>>>1|0)>>>0<i>>>0)break f;break A}for(;r=(e-1|0)!=(0|r)?r+1|0:0,s[i+(A<<2)>>2]=r,(e=s[t+12>>2])>>>0>(A=A+1|0)>>>0;);break b}b=l>>>1|0,i=0}c=y+1|0;A:{n:{if((0|(i=l-(e=b-i|0)|0))!=(0|e)){if((0|(u=s[t+88>>2]))==s[t+80>>2])break n;k=s[u>>2],f=(b=s[t+92>>2])+1|0,s[t+92>>2]=f,b=k&-2147483648>>>b;o:{if(32==(0|f)){if(s[t+92>>2]=0,s[t+88>>2]=u+4,b)break o;break n}if(!b)break n}}else i=e;b=i,i=e;break A}b=e}if(u=s[t+132>>2],f=s[(k=u+d|0)>>2],s[(e=f+A|0)>>2]=s[e>>2]+1,Fe(u+m(c,12)|0,f,s[k+4>>2]),i&&((0|(e=s[a+28>>2]+s[a+24>>2]|0))==(0|((0|(f=s[a+16>>2]))!=(0|(A=s[a+12>>2]))?m(f-A>>2,341)-1:0))&&(sr(a+8|0),A=s[a+12>>2],e=s[a+24>>2]+s[a+28>>2]|0),e=s[((f=(e>>>0)/341|0)<<2)+A>>2]+m(e-m(f,341)|0,12)|0,s[e+8>>2]=y,s[e+4>>2]=r,s[e>>2]=i,s[a+28>>2]=s[a+28>>2]+1),!b)break t;(0|(e=s[a+28>>2]+s[a+24>>2]|0))==(0|((0|(i=s[a+16>>2]))!=(0|(A=s[a+12>>2]))?m(i-A>>2,341)-1:0))&&(sr(a+8|0),A=s[a+12>>2],e=s[a+24>>2]+s[a+28>>2]|0),e=s[((i=(e>>>0)/341|0)<<2)+A>>2]+m(e-m(i,341)|0,12)|0,s[e+8>>2]=c,s[e+4>>2]=r,s[e>>2]=b,r=s[a+28>>2]+1|0,s[a+28>>2]=r;break a}if(N=0,l)for(;;){if(s[t+12>>2])for(U=s[t+40>>2],k=s[u>>2],Z=s[t+96>>2],b=s[t+108>>2],r=0;;){s[Z+(s[(y=(r<<2)+b|0)>>2]<<2)>>2]=0,f=s[t>>2],i=s[y>>2]<<2;b:if((0|f)!=(0|(e=s[i+k>>2])))if(d=i+Z|0,(0|(v=f-e|0))<=(0|(f=32-(A=s[t+52>>2])|0))){if((0|(i=s[t+48>>2]))==(0|U)){f=0;break f}if(s[d>>2]=s[i>>2]<<A>>>32-v,e=v+s[t+52>>2]|0,s[t+52>>2]=e,32!=(0|e))break b;s[t+52>>2]=0,s[t+48>>2]=i+4}else{if((0|U)==(0|(e=(c=s[t+48>>2])+4|0))){f=0;break f}i=s[c>>2],s[t+48>>2]=e,e=v-f|0,s[t+52>>2]=e,s[d>>2]=s[c+4>>2]>>>32-e|i<<A>>>32-v}if(i=s[y>>2]<<2,s[(e=i+Z|0)>>2]=s[e>>2]|s[i+s[h>>2]>>2],!((r=r+1|0)>>>0<p[t+12>>2]))break}b=0;b:if((0|(r=s[o+16>>2]))!=s[o+20>>2])for(;;){if(f=s[o+28>>2],A=m(b,20)+r|0,c=s[A>>2],_[c+84|0]||(f=s[s[c+68>>2]+(f<<2)>>2]),p[c+80>>2]<=f>>>0)break b;if(e=k=s[t+96>>2]+(s[A+4>>2]<<2)|0,!((i=s[A+12>>2])>>>0>3)&&(r=0,e=s[o+12>>2],s[A+16>>2])){for(;e=(e=Cr(e,k+(r<<2)|0,i))+(i=s[A+12>>2])|0,(r=r+1|0)>>>0<p[A+16>>2];);e=s[o+12>>2]}if(r=s[c+40>>2],Cr(s[s[c>>2]>>2]+m(r,f)|0,e,r),b=b+1|0,r=s[o+16>>2],!(b>>>0<(s[o+20>>2]-r|0)/20>>>0))break}if(s[o+28>>2]=s[o+28>>2]+1,s[t+8>>2]=s[t+8>>2]+1,(0|l)==(0|(N=N+1|0)))break}}else{if(!l)break t;if(A=0,(0|(e=s[o+20>>2]))==(0|(i=s[o+16>>2]))){r=s[t+8>>2],s[o+28>>2]=l+s[o+28>>2],s[t+8>>2]=r+l;break t}for(;;){f=(0|e)==(0|i),r=e,b=0,e=i;b:if(!f)for(;;){if(f=s[o+28>>2],e=r,c=m(b,20)+i|0,u=s[c>>2],_[u+84|0]||(f=s[s[u+68>>2]+(f<<2)>>2]),p[u+80>>2]<=f>>>0)break b;if(e=k=s[h>>2]+(s[c+4>>2]<<2)|0,!((i=s[c+12>>2])>>>0>3)&&(r=0,e=s[o+12>>2],s[c+16>>2])){for(;e=(e=Cr(e,k+(r<<2)|0,i))+(i=s[c+12>>2])|0,(r=r+1|0)>>>0<p[c+16>>2];);e=s[o+12>>2]}if(r=s[u+40>>2],Cr(s[s[u>>2]>>2]+m(r,f)|0,e,r),!((b=b+1|0)>>>0<((e=r=s[o+20>>2])-(i=s[o+16>>2])|0)/20>>>0))break}if(s[o+28>>2]=s[o+28>>2]+1,s[t+8>>2]=s[t+8>>2]+1,(0|l)==(0|(A=A+1|0)))break}}r=s[a+28>>2]}if(!r)break}f=1}if(s[a+28>>2]=0,(e=(A=s[a+16>>2])-(r=s[a+12>>2])|0)>>>0>=9)for(;mr(s[r>>2]),r=s[a+12>>2]+4|0,s[a+12>>2]=r,(e=(A=s[a+16>>2])-r|0)>>>0>8;);i=170;f:switch((e>>>2|0)-1|0){case 1:i=341;case 0:s[a+24>>2]=i;break;default:break f}if((0|r)!=(0|A)){for(;mr(s[r>>2]),(0|A)!=(0|(r=r+4|0)););(0|(e=s[a+16>>2]))!=(0|(r=s[a+12>>2]))&&(s[a+16>>2]=e+(3+(r-e|0)&-4))}(r=s[a+8>>2])&&mr(r),Q=a+32|0,b=f;break r}ha(),n()}ha(),n()}}}return b}function z(r,e,i,f){var a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0,l=0,y=0,d=0,v=0,h=0,N=0,Z=0,G=0,U=0,W=0;if(o=s[e+8>>2],k=s[e+12>>2],y=s[e+20>>2],!(o>>>0<(A=(a=s[e+16>>2])+4|0)>>>0&(0|k)<=(0|(y=A>>>0<4?y+1|0:y))|(0|k)<(0|y)||(a=a+s[e>>2]|0,s[r>>2]=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,o=a=s[e+20>>2],k=(a=(A=s[e+16>>2])+4|0)>>>0<4?o+1|0:o,s[e+16>>2]=a,s[e+20>>2]=k,p[r>>2]>32||(A=A+8|0)>>>0>(k=s[e+8>>2])>>>0&(0|(o=A>>>0<8?o+1|0:o))>=(0|(y=s[e+12>>2]))|(0|o)>(0|y)))){if(a=s[e>>2]+a|0,A=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[r+4>>2]=A,o=s[e+20>>2],o=(a=s[e+16>>2]+4|0)>>>0<4?o+1|0:o,s[e+16>>2]=a,s[e+20>>2]=o,!A)return 1;if(!(f>>>0<A>>>0)&&(s[r+8>>2]=0,Ae(r+16|0,e)&&Ne(r+544|0,e)&&Ne(r+564|0,e)&&Ne(r+584|0,e))){U=s[r+4>>2],f=i,e=0,i=0,Q=t=Q-32|0,b=r,r=s[r+12>>2],s[t+16>>2]=0,s[t+8>>2]=0,s[t+12>>2]=0;r:{e:{if(r){if(r>>>0>=1073741824)break e;e=mf(a=r<<2),s[t+8>>2]=e,i=e+a|0,s[t+16>>2]=i,Ge(e,0,a),s[t+12>>2]=i}A=s[b+628>>2],(a=s[A>>2])&&(s[A+4>>2]=a,mr(a),i=s[t+12>>2],e=s[t+8>>2],r=s[b+12>>2]),s[A+4>>2]=i,s[A>>2]=e,s[A+8>>2]=s[t+16>>2],e=0,s[t+16>>2]=0,s[t+8>>2]=0,s[t+12>>2]=0;i:{if(r){if(r>>>0>=1073741824)break i;c=mf(r<<=2),s[t+8>>2]=c,e=r+c|0,s[t+16>>2]=e,Ge(c,0,r),s[t+12>>2]=e}i=s[b+640>>2],(r=s[i>>2])&&(s[i+4>>2]=r,mr(r),c=s[t+8>>2],e=s[t+12>>2]),s[i+4>>2]=e,s[i>>2]=c,s[i+8>>2]=s[t+16>>2],s[t+24>>2]=0,s[t+28>>2]=0,s[t+16>>2]=0,s[t+20>>2]=0,s[t+8>>2]=0,s[t+12>>2]=0,sr(t+8|0),r=((e=s[t+24>>2]+s[t+28>>2]|0)>>>0)/341|0,r=s[s[t+12>>2]+(r<<2)>>2]+m(e-m(r,341)|0,12)|0,s[r+4>>2]=0,s[r+8>>2]=0,s[r>>2]=U,i=1,r=s[t+28>>2]+1|0,s[t+28>>2]=r;f:if(r){for(y=b+16|0;;){if(k=s[t+12>>2],A=s[t+24>>2],e=s[k+((e=((i=A+(a=r-1|0)|0)>>>0)/341|0)<<2)>>2]+m(i-m(e,341)|0,12)|0,h=s[e+8>>2],o=s[e+4>>2],d=s[e>>2],s[t+28>>2]=a,1+(((0|(e=s[t+16>>2]))!=(0|k)?m(e-k>>2,341)-1|0:0)-(r+A|0)|0)>>>0>=682&&(mr(s[e-4>>2]),s[t+16>>2]=s[t+16>>2]-4),i=0,d>>>0>U>>>0)break f;if((c=(0|o)!=((r=s[b+12>>2])-1|0)?o+1|0:0)>>>0>=r>>>0)break f;W=(v=m(h,12))+s[b+640>>2]|0,N=v+s[b+628>>2]|0;a:{t:if((0|(A=s[b>>2]))!=(0|(a=s[(u=c<<2)+s[W>>2]>>2]))){b:{A:{n:{if(d>>>0<=2){if(i=s[b+616>>2],s[i>>2]=c,r=1,(e=s[b+12>>2])>>>0>1)break n;break b}if(p[b+8>>2]>p[b+4>>2])break f;if((0|(e=(r=s[b+628>>2])+(l=m(k=h+1|0,12))|0))!=(0|N)&&(Fe(e,s[N>>2],s[N+4>>2]),r=s[b+628>>2]),r=u+s[r+l>>2]|0,s[r>>2]=s[r>>2]+(1<<A+~a),e=0,r=0,!(i=31^R(d))){r=d>>>1|0;break A}for(;e=Xi((r<<4)+y|0)|e<<1,(0|i)!=(0|(r=r+1|0)););if(e>>>0<=(r=d>>>1|0)>>>0)break A;i=0;break f}for(;c=(e-1|0)!=(0|c)?c+1|0:0,s[i+(r<<2)>>2]=c,(r=r+1|0)>>>0<(e=s[b+12>>2])>>>0;);break b}A:{n:{if((0|(r=d-(e=r-e|0)|0))!=(0|e)){if((0|(o=s[b+596>>2]))==s[b+588>>2])break n;A=s[o>>2],i=(a=s[b+600>>2])+1|0,s[b+600>>2]=i,a=A&-2147483648>>>a;o:{if(32==(0|i)){if(s[b+600>>2]=0,s[b+596>>2]=o+4,a)break o;break n}if(!a)break n}}else r=e;i=r,r=e;break A}i=e}if(o=s[b+640>>2],a=s[(A=o+v|0)>>2],s[(e=a+u|0)>>2]=s[e>>2]+1,Fe(o+l|0,a,s[A+4>>2]),r&&(l=s[t+28>>2]+s[t+24>>2]|0,a=s[t+16>>2],(0|l)==(0|((0|(e=s[t+12>>2]))!=(0|a)?m(a-e>>2,341)-1:0))?(sr(t+8|0),l=s[t+24>>2]+s[t+28>>2]|0,a=s[t+12>>2]):a=e,e=s[a+((e=(l>>>0)/341|0)<<2)>>2]+m(l-m(e,341)|0,12)|0,s[e+8>>2]=h,s[e+4>>2]=c,s[e>>2]=r,s[t+28>>2]=s[t+28>>2]+1),!i)break t;e=s[t+28>>2]+s[t+24>>2]|0,a=s[t+16>>2],(0|e)==(0|((0|(r=s[t+12>>2]))!=(0|a)?m(a-r>>2,341)-1:0))?(sr(t+8|0),e=s[t+24>>2]+s[t+28>>2]|0,a=s[t+12>>2]):a=r,r=s[a+((r=(e>>>0)/341|0)<<2)>>2]+m(e-m(r,341)|0,12)|0,s[r+8>>2]=k,s[r+4>>2]=c,s[r>>2]=i,r=s[t+28>>2]+1|0,s[t+28>>2]=r;break a}if(c=0,d)for(;;){if(s[b+12>>2])for(h=s[b+548>>2],o=s[W>>2],G=s[b+604>>2],A=s[b+616>>2],r=0;;){s[G+(s[(v=(r<<2)+A|0)>>2]<<2)>>2]=0,a=s[b>>2],i=s[v>>2]<<2;b:if((0|a)!=(0|(e=s[i+o>>2])))if(u=i+G|0,(0|(Z=a-e|0))<=(0|(a=32-(l=s[b+560>>2])|0))){if((0|(i=s[b+556>>2]))==(0|h)){i=0;break f}if(s[u>>2]=s[i>>2]<<l>>>32-Z,e=Z+s[b+560>>2]|0,s[b+560>>2]=e,32!=(0|e))break b;s[b+560>>2]=0,s[b+556>>2]=i+4}else{if((0|h)==(0|(e=(k=s[b+556>>2])+4|0))){i=0;break f}i=s[k>>2],s[b+556>>2]=e,e=Z-a|0,s[b+560>>2]=e,s[u>>2]=s[k+4>>2]>>>32-e|i<<l>>>32-Z}if(i=s[v>>2]<<2,s[(e=i+G|0)>>2]=s[e>>2]|s[i+s[N>>2]>>2],!((r=r+1|0)>>>0<p[b+12>>2]))break}k=0;b:if((0|(r=s[f+16>>2]))!=s[f+20>>2])for(;;){if(u=s[f+28>>2],o=m(k,20)+r|0,A=s[o>>2],_[A+84|0]||(u=s[s[A+68>>2]+(u<<2)>>2]),p[A+80>>2]<=u>>>0)break b;if(e=a=s[b+604>>2]+(s[o+4>>2]<<2)|0,!((i=s[o+12>>2])>>>0>3)&&(r=0,e=s[f+12>>2],s[o+16>>2])){for(;e=(e=Cr(e,a+(r<<2)|0,i))+(i=s[o+12>>2])|0,(r=r+1|0)>>>0<p[o+16>>2];);e=s[f+12>>2]}if(r=s[A+40>>2],Cr(s[s[A>>2]>>2]+m(r,u)|0,e,r),k=k+1|0,r=s[f+16>>2],!(k>>>0<(s[f+20>>2]-r|0)/20>>>0))break}if(s[f+28>>2]=s[f+28>>2]+1,s[b+8>>2]=s[b+8>>2]+1,(0|d)==(0|(c=c+1|0)))break}}else{if(!d)break t;for(i=s[f+16>>2],e=s[f+20>>2],l=0;;){a=(0|e)==(0|i),r=e,k=0,e=i;b:if(!a)for(;;){if(u=s[f+28>>2],e=r,o=m(k,20)+i|0,A=s[o>>2],_[A+84|0]||(u=s[s[A+68>>2]+(u<<2)>>2]),p[A+80>>2]<=u>>>0)break b;if(e=a=s[N>>2]+(s[o+4>>2]<<2)|0,!((i=s[o+12>>2])>>>0>3)&&(r=0,e=s[f+12>>2],s[o+16>>2])){for(;e=(e=Cr(e,a+(r<<2)|0,i))+(i=s[o+12>>2])|0,(r=r+1|0)>>>0<p[o+16>>2];);e=s[f+12>>2]}if(r=s[A+40>>2],Cr(s[s[A>>2]>>2]+m(r,u)|0,e,r),e=r=s[f+20>>2],!((k=k+1|0)>>>0<(r-(i=s[f+16>>2])|0)/20>>>0))break}if(s[f+28>>2]=s[f+28>>2]+1,s[b+8>>2]=s[b+8>>2]+1,(0|d)==(0|(l=l+1|0)))break}}r=s[t+28>>2]}if(!r)break}i=1}if(s[t+28>>2]=0,(e=(c=s[t+16>>2])-(r=s[t+12>>2])|0)>>>0>=9)for(;mr(s[r>>2]),r=s[t+12>>2]+4|0,s[t+12>>2]=r,(e=(c=s[t+16>>2])-r|0)>>>0>8;);f=170;f:switch((e>>>2|0)-1|0){case 1:f=341;case 0:s[t+24>>2]=f;break;default:break f}if((0|r)!=(0|c)){for(;mr(s[r>>2]),(0|c)!=(0|(r=r+4|0)););(0|(e=s[t+16>>2]))!=(0|(r=s[t+12>>2]))&&(s[t+16>>2]=e+(3+(r-e|0)&-4))}(r=s[t+8>>2])&&mr(r),Q=t+32|0;break r}ha(),n()}ha(),n()}b=i}}return b}function H(r,e,i,f){var a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0,l=0,y=0,d=0,v=0,h=0,N=0,Z=0,G=0,U=0,W=0;if(o=s[e+8>>2],c=s[e+12>>2],d=s[e+20>>2],!(o>>>0<(A=(a=s[e+16>>2])+4|0)>>>0&(0|c)<=(0|(d=A>>>0<4?d+1|0:d))|(0|c)<(0|d)||(a=a+s[e>>2]|0,s[r>>2]=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,o=a=s[e+20>>2],c=(a=(A=s[e+16>>2])+4|0)>>>0<4?o+1|0:o,s[e+16>>2]=a,s[e+20>>2]=c,p[r>>2]>32||(A=A+8|0)>>>0>(c=s[e+8>>2])>>>0&(0|(o=A>>>0<8?o+1|0:o))>=(0|(d=s[e+12>>2]))|(0|o)>(0|d)))){if(a=s[e>>2]+a|0,A=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[r+4>>2]=A,o=s[e+20>>2],o=(a=s[e+16>>2]+4|0)>>>0<4?o+1|0:o,s[e+16>>2]=a,s[e+20>>2]=o,!A)return 1;if(!(f>>>0<A>>>0)&&(s[r+8>>2]=0,Ae(r+16|0,e)&&Ne(r+544|0,e)&&Ne(r+564|0,e)&&Ne(r+584|0,e))){W=s[r+4>>2],f=i,e=0,i=0,Q=t=Q-32|0,b=r,r=s[r+12>>2],s[t+16>>2]=0,s[t+8>>2]=0,s[t+12>>2]=0;r:{e:{if(r){if(r>>>0>=1073741824)break e;e=mf(a=r<<2),s[t+8>>2]=e,i=e+a|0,s[t+16>>2]=i,Ge(e,0,a),s[t+12>>2]=i}A=s[b+628>>2],(a=s[A>>2])&&(s[A+4>>2]=a,mr(a),i=s[t+12>>2],e=s[t+8>>2],r=s[b+12>>2]),s[A+4>>2]=i,s[A>>2]=e,s[A+8>>2]=s[t+16>>2],e=0,s[t+16>>2]=0,s[t+8>>2]=0,s[t+12>>2]=0;i:{if(r){if(r>>>0>=1073741824)break i;k=mf(r<<=2),s[t+8>>2]=k,e=r+k|0,s[t+16>>2]=e,Ge(k,0,r),s[t+12>>2]=e}i=s[b+640>>2],(r=s[i>>2])&&(s[i+4>>2]=r,mr(r),k=s[t+8>>2],e=s[t+12>>2]),s[i+4>>2]=e,s[i>>2]=k,s[i+8>>2]=s[t+16>>2],s[t+24>>2]=0,s[t+28>>2]=0,s[t+16>>2]=0,s[t+20>>2]=0,s[t+8>>2]=0,s[t+12>>2]=0,sr(t+8|0),r=((e=s[t+24>>2]+s[t+28>>2]|0)>>>0)/341|0,r=s[s[t+12>>2]+(r<<2)>>2]+m(e-m(r,341)|0,12)|0,s[r+4>>2]=0,s[r+8>>2]=0,s[r>>2]=W,i=1,r=s[t+28>>2]+1|0,s[t+28>>2]=r;f:if(r){for(d=b+16|0;;){if(o=s[t+12>>2],A=s[t+24>>2],e=s[o+((e=((i=A+(a=r-1|0)|0)>>>0)/341|0)<<2)>>2]+m(i-m(e,341)|0,12)|0,h=s[e+8>>2],y=s[e>>2],s[t+28>>2]=a,1+(((0|(e=s[t+16>>2]))!=(0|o)?m(e-o>>2,341)-1|0:0)-(r+A|0)|0)>>>0>=682&&(mr(s[e-4>>2]),s[t+16>>2]=s[t+16>>2]-4),i=0,y>>>0>W>>>0)break f;if(r=s[b+628>>2],(k=ue(b,y,G=(v=m(h,12))+s[b+640>>2]|0))>>>0>=p[b+12>>2])break f;N=r+v|0;a:{t:if((0|(A=s[b>>2]))!=(0|(a=s[(u=k<<2)+s[G>>2]>>2]))){b:{A:{n:{if(y>>>0<=2){if(i=s[b+616>>2],s[i>>2]=k,r=1,(e=s[b+12>>2])>>>0>1)break n;break b}if(p[b+8>>2]>p[b+4>>2])break f;if((0|(e=(r=s[b+628>>2])+(l=m(c=h+1|0,12))|0))!=(0|N)&&(Fe(e,s[N>>2],s[N+4>>2]),r=s[b+628>>2]),r=u+s[r+l>>2]|0,s[r>>2]=s[r>>2]+(1<<A+~a),e=0,r=0,!(i=31^R(y))){r=y>>>1|0;break A}for(;e=Xi((r<<4)+d|0)|e<<1,(0|i)!=(0|(r=r+1|0)););if(e>>>0<=(r=y>>>1|0)>>>0)break A;i=0;break f}for(;k=(e-1|0)!=(0|k)?k+1|0:0,s[i+(r<<2)>>2]=k,(r=r+1|0)>>>0<(e=s[b+12>>2])>>>0;);break b}A:{n:{if((0|(r=y-(e=r-e|0)|0))!=(0|e)){if((0|(o=s[b+596>>2]))==s[b+588>>2])break n;A=s[o>>2],i=(a=s[b+600>>2])+1|0,s[b+600>>2]=i,a=A&-2147483648>>>a;o:{if(32==(0|i)){if(s[b+600>>2]=0,s[b+596>>2]=o+4,a)break o;break n}if(!a)break n}}else r=e;i=r,r=e;break A}i=e}if(o=s[b+640>>2],a=s[(A=o+v|0)>>2],s[(e=a+u|0)>>2]=s[e>>2]+1,Fe(o+l|0,a,s[A+4>>2]),r&&(l=s[t+28>>2]+s[t+24>>2]|0,a=s[t+16>>2],(0|l)==(0|((0|(e=s[t+12>>2]))!=(0|a)?m(a-e>>2,341)-1:0))?(sr(t+8|0),l=s[t+24>>2]+s[t+28>>2]|0,a=s[t+12>>2]):a=e,e=s[a+((e=(l>>>0)/341|0)<<2)>>2]+m(l-m(e,341)|0,12)|0,s[e+8>>2]=h,s[e+4>>2]=k,s[e>>2]=r,s[t+28>>2]=s[t+28>>2]+1),!i)break t;e=s[t+28>>2]+s[t+24>>2]|0,a=s[t+16>>2],(0|e)==(0|((0|(r=s[t+12>>2]))!=(0|a)?m(a-r>>2,341)-1:0))?(sr(t+8|0),e=s[t+24>>2]+s[t+28>>2]|0,a=s[t+12>>2]):a=r,r=s[a+((r=(e>>>0)/341|0)<<2)>>2]+m(e-m(r,341)|0,12)|0,s[r+8>>2]=c,s[r+4>>2]=k,s[r>>2]=i,r=s[t+28>>2]+1|0,s[t+28>>2]=r;break a}if(k=0,y)for(;;){if(s[b+12>>2])for(h=s[b+548>>2],o=s[G>>2],U=s[b+604>>2],A=s[b+616>>2],r=0;;){s[U+(s[(v=(r<<2)+A|0)>>2]<<2)>>2]=0,a=s[b>>2],i=s[v>>2]<<2;b:if((0|a)!=(0|(e=s[i+o>>2])))if(u=i+U|0,(0|(Z=a-e|0))<=(0|(a=32-(l=s[b+560>>2])|0))){if((0|(i=s[b+556>>2]))==(0|h)){i=0;break f}if(s[u>>2]=s[i>>2]<<l>>>32-Z,e=Z+s[b+560>>2]|0,s[b+560>>2]=e,32!=(0|e))break b;s[b+560>>2]=0,s[b+556>>2]=i+4}else{if((0|h)==(0|(e=(c=s[b+556>>2])+4|0))){i=0;break f}i=s[c>>2],s[b+556>>2]=e,e=Z-a|0,s[b+560>>2]=e,s[u>>2]=s[c+4>>2]>>>32-e|i<<l>>>32-Z}if(i=s[v>>2]<<2,s[(e=i+U|0)>>2]=s[e>>2]|s[i+s[N>>2]>>2],!((r=r+1|0)>>>0<p[b+12>>2]))break}c=0;b:if((0|(r=s[f+16>>2]))!=s[f+20>>2])for(;;){if(u=s[f+28>>2],o=m(c,20)+r|0,A=s[o>>2],_[A+84|0]||(u=s[s[A+68>>2]+(u<<2)>>2]),p[A+80>>2]<=u>>>0)break b;if(e=a=s[b+604>>2]+(s[o+4>>2]<<2)|0,!((i=s[o+12>>2])>>>0>3)&&(r=0,e=s[f+12>>2],s[o+16>>2])){for(;e=(e=Cr(e,a+(r<<2)|0,i))+(i=s[o+12>>2])|0,(r=r+1|0)>>>0<p[o+16>>2];);e=s[f+12>>2]}if(r=s[A+40>>2],Cr(s[s[A>>2]>>2]+m(r,u)|0,e,r),c=c+1|0,r=s[f+16>>2],!(c>>>0<(s[f+20>>2]-r|0)/20>>>0))break}if(s[f+28>>2]=s[f+28>>2]+1,s[b+8>>2]=s[b+8>>2]+1,(0|y)==(0|(k=k+1|0)))break}}else{if(!y)break t;for(i=s[f+16>>2],e=s[f+20>>2],l=0;;){a=(0|e)==(0|i),r=e,c=0,e=i;b:if(!a)for(;;){if(u=s[f+28>>2],e=r,o=m(c,20)+i|0,A=s[o>>2],_[A+84|0]||(u=s[s[A+68>>2]+(u<<2)>>2]),p[A+80>>2]<=u>>>0)break b;if(e=a=s[N>>2]+(s[o+4>>2]<<2)|0,!((i=s[o+12>>2])>>>0>3)&&(r=0,e=s[f+12>>2],s[o+16>>2])){for(;e=(e=Cr(e,a+(r<<2)|0,i))+(i=s[o+12>>2])|0,(r=r+1|0)>>>0<p[o+16>>2];);e=s[f+12>>2]}if(r=s[A+40>>2],Cr(s[s[A>>2]>>2]+m(r,u)|0,e,r),e=r=s[f+20>>2],!((c=c+1|0)>>>0<(r-(i=s[f+16>>2])|0)/20>>>0))break}if(s[f+28>>2]=s[f+28>>2]+1,s[b+8>>2]=s[b+8>>2]+1,(0|y)==(0|(l=l+1|0)))break}}r=s[t+28>>2]}if(!r)break}i=1}if(s[t+28>>2]=0,(e=(k=s[t+16>>2])-(r=s[t+12>>2])|0)>>>0>=9)for(;mr(s[r>>2]),r=s[t+12>>2]+4|0,s[t+12>>2]=r,(e=(k=s[t+16>>2])-r|0)>>>0>8;);f=170;f:switch((e>>>2|0)-1|0){case 1:f=341;case 0:s[t+24>>2]=f;break;default:break f}if((0|r)!=(0|k)){for(;mr(s[r>>2]),(0|k)!=(0|(r=r+4|0)););(0|(e=s[t+16>>2]))!=(0|(r=s[t+12>>2]))&&(s[t+16>>2]=e+(3+(r-e|0)&-4))}(r=s[t+8>>2])&&mr(r),Q=t+32|0;break r}ha(),n()}ha(),n()}b=i}}return b}function C(r,e,i,f){var a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0,l=0,y=0,d=0,v=0,h=0,N=0,Z=0,G=0,U=0,W=0;if(o=s[e+8>>2],c=s[e+12>>2],l=s[e+20>>2],!(o>>>0<(A=(t=s[e+16>>2])+4|0)>>>0&(0|c)<=(0|(l=A>>>0<4?l+1|0:l))|(0|c)<(0|l)||(t=t+s[e>>2]|0,s[r>>2]=_[0|t]|_[t+1|0]<<8|_[t+2|0]<<16|_[t+3|0]<<24,o=t=s[e+20>>2],c=(t=(A=s[e+16>>2])+4|0)>>>0<4?o+1|0:o,s[e+16>>2]=t,s[e+20>>2]=c,p[r>>2]>32||(A=A+8|0)>>>0>(c=s[e+8>>2])>>>0&(0|(o=A>>>0<8?o+1|0:o))>=(0|(l=s[e+12>>2]))|(0|o)>(0|l)))){if(t=t+s[e>>2]|0,A=_[0|t]|_[t+1|0]<<8|_[t+2|0]<<16|_[t+3|0]<<24,s[r+4>>2]=A,o=s[e+20>>2],o=(t=s[e+16>>2]+4|0)>>>0<4?o+1|0:o,s[e+16>>2]=t,s[e+20>>2]=o,!A)return 1;if(!(f>>>0<A>>>0)&&(s[r+8>>2]=0,Ae(r+16|0,e)&&Ne(r+544|0,e)&&Ne(r+564|0,e)&&Ne(r+584|0,e))){U=s[r+4>>2],e=0,Q=a=Q-32|0,t=r,r=s[r+12>>2],s[a+16>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0;r:{e:{if(r){if(r>>>0>=1073741824)break e;e=mf(f=r<<2),s[a+8>>2]=e,b=e+f|0,s[a+16>>2]=b,Ge(e,0,f),s[a+12>>2]=b}A=s[t+628>>2],(f=s[A>>2])&&(s[A+4>>2]=f,mr(f),b=s[a+12>>2],e=s[a+8>>2],r=s[t+12>>2]),s[A+4>>2]=b,s[A>>2]=e,s[A+8>>2]=s[a+16>>2],e=0,s[a+16>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0;i:{if(r){if(r>>>0>=1073741824)break i;k=mf(r<<=2),s[a+8>>2]=k,e=r+k|0,s[a+16>>2]=e,Ge(k,0,r),s[a+12>>2]=e}f=s[t+640>>2],(r=s[f>>2])&&(s[f+4>>2]=r,mr(r),k=s[a+8>>2],e=s[a+12>>2]),s[f+4>>2]=e,s[f>>2]=k,s[f+8>>2]=s[a+16>>2],s[a+24>>2]=0,s[a+28>>2]=0,s[a+16>>2]=0,s[a+20>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0,sr(a+8|0),r=((e=s[a+24>>2]+s[a+28>>2]|0)>>>0)/341|0,r=s[s[a+12>>2]+(r<<2)>>2]+m(e-m(r,341)|0,12)|0,s[r+4>>2]=0,s[r+8>>2]=0,s[r>>2]=U,f=1,r=s[a+28>>2]+1|0,s[a+28>>2]=r;f:if(r){for(l=t+16|0;;){if(c=s[a+12>>2],A=s[a+24>>2],e=s[c+((e=((f=A+(b=r-1|0)|0)>>>0)/341|0)<<2)>>2]+m(f-m(e,341)|0,12)|0,h=s[e+8>>2],o=s[e+4>>2],y=s[e>>2],s[a+28>>2]=b,1+(((0|(e=s[a+16>>2]))!=(0|c)?m(e-c>>2,341)-1|0:0)-(r+A|0)|0)>>>0>=682&&(mr(s[e-4>>2]),s[a+16>>2]=s[a+16>>2]-4),y>>>0>U>>>0){f=0;break f}if(f=0,(k=(0|o)!=((r=s[t+12>>2])-1|0)?o+1|0:0)>>>0>=r>>>0)break f;Z=(r=s[t+628>>2])+(d=m(h,12))|0,b=s[t>>2],u=k<<2,c=d+s[t+640>>2]|0;a:{t:if((0|b)!=(0|(e=s[u+s[c>>2]>>2]))){b:{A:{n:{if(y>>>0<=2){if(f=s[t+616>>2],s[f>>2]=k,r=1,(e=s[t+12>>2])>>>0>1)break n;break b}if(p[t+8>>2]>p[t+4>>2])break f;if(Fe((f=r)+(r=d+12|0)|0,s[Z>>2],s[Z+4>>2]),r=u+s[r+s[t+628>>2]>>2]|0,s[r>>2]=s[r>>2]+(1<<b+~e),e=0,r=0,!(f=31^R(y))){r=y>>>1|0;break A}for(;e=Xi((r<<4)+l|0)|e<<1,(0|f)!=(0|(r=r+1|0)););if(e>>>0<=(r=y>>>1|0)>>>0)break A;f=0;break f}for(;k=(e-1|0)!=(0|k)?k+1|0:0,s[f+(r<<2)>>2]=k,(r=r+1|0)>>>0<(e=s[t+12>>2])>>>0;);break b}c=h+1|0;A:{n:{if((0|(r=y-(e=r-e|0)|0))!=(0|e)){if((0|(o=s[t+596>>2]))==s[t+588>>2])break n;A=s[o>>2],f=(b=s[t+600>>2])+1|0,s[t+600>>2]=f,b=A&-2147483648>>>b;o:{if(32==(0|f)){if(s[t+600>>2]=0,s[t+596>>2]=o+4,b)break o;break n}if(!b)break n}}else r=e;f=r,r=e;break A}f=e}if(o=s[t+640>>2],b=s[(A=o+d|0)>>2],s[(e=b+u|0)>>2]=s[e>>2]+1,Fe(o+m(c,12)|0,b,s[A+4>>2]),r&&(A=s[a+28>>2]+s[a+24>>2]|0,b=s[a+16>>2],(0|A)==(0|((0|(e=s[a+12>>2]))!=(0|b)?m(b-e>>2,341)-1:0))?(sr(a+8|0),A=s[a+24>>2]+s[a+28>>2]|0,b=s[a+12>>2]):b=e,e=s[b+((e=(A>>>0)/341|0)<<2)>>2]+m(A-m(e,341)|0,12)|0,s[e+8>>2]=h,s[e+4>>2]=k,s[e>>2]=r,s[a+28>>2]=s[a+28>>2]+1),!f)break t;e=s[a+28>>2]+s[a+24>>2]|0,b=s[a+16>>2],(0|e)==(0|((0|(r=s[a+12>>2]))!=(0|b)?m(b-r>>2,341)-1:0))?(sr(a+8|0),e=s[a+24>>2]+s[a+28>>2]|0,b=s[a+12>>2]):b=r,r=s[b+((r=(e>>>0)/341|0)<<2)>>2]+m(e-m(r,341)|0,12)|0,s[r+8>>2]=c,s[r+4>>2]=k,s[r>>2]=f,r=s[a+28>>2]+1|0,s[a+28>>2]=r;break a}if(v=0,y)for(;;){if(s[t+12>>2])for(W=s[t+548>>2],o=s[c>>2],G=s[t+604>>2],A=s[t+616>>2],r=0;;){s[(s[(k=A+(r<<2)|0)>>2]<<2)+G>>2]=0,b=s[t>>2],f=s[k>>2]<<2;b:if((0|b)!=(0|(e=s[f+o>>2])))if(h=f+G|0,(0|(N=b-e|0))<=(0|(b=32-(d=s[t+560>>2])|0))){if((0|(f=s[t+556>>2]))==(0|W)){f=0;break f}if(s[h>>2]=s[f>>2]<<d>>>32-N,e=s[t+560>>2]+N|0,s[t+560>>2]=e,32!=(0|e))break b;s[t+560>>2]=0,s[t+556>>2]=f+4}else{if((0|(e=(u=s[t+556>>2])+4|0))==(0|W)){f=0;break f}f=s[u>>2],s[t+556>>2]=e,e=N-b|0,s[t+560>>2]=e,s[h>>2]=s[u+4>>2]>>>32-e|f<<d>>>32-N}if(f=s[k>>2]<<2,s[(e=f+G|0)>>2]=s[e>>2]|s[f+s[Z>>2]>>2],!((r=r+1|0)>>>0<p[t+12>>2]))break}k=0;b:if((0|(r=s[i+16>>2]))!=s[i+20>>2])for(;;){if(f=s[i+28>>2],u=m(k,20)+r|0,o=s[u>>2],_[o+84|0]||(f=s[s[o+68>>2]+(f<<2)>>2]),p[o+80>>2]<=f>>>0)break b;if(e=A=s[t+604>>2]+(s[u+4>>2]<<2)|0,!((b=s[u+12>>2])>>>0>3)&&(r=0,e=s[i+12>>2],s[u+16>>2])){for(;e=(e=Cr(e,A+(r<<2)|0,b))+(b=s[u+12>>2])|0,(r=r+1|0)>>>0<p[u+16>>2];);e=s[i+12>>2]}if(r=s[o+40>>2],Cr(s[s[o>>2]>>2]+m(r,f)|0,e,r),k=k+1|0,r=s[i+16>>2],!(k>>>0<(s[i+20>>2]-r|0)/20>>>0))break}if(s[i+28>>2]=s[i+28>>2]+1,s[t+8>>2]=s[t+8>>2]+1,(0|(v=v+1|0))==(0|y))break}}else{if(!y)break t;for(b=s[i+16>>2],e=s[i+20>>2],v=0;;){f=(0|e)==(0|b),r=e,k=0,e=b;b:if(!f)for(;;){if(f=s[i+28>>2],e=r,c=m(k,20)+b|0,o=s[c>>2],_[o+84|0]||(f=s[s[o+68>>2]+(f<<2)>>2]),p[o+80>>2]<=f>>>0)break b;if(e=A=s[Z>>2]+(s[c+4>>2]<<2)|0,!((b=s[c+12>>2])>>>0>3)&&(r=0,e=s[i+12>>2],s[c+16>>2])){for(;e=(e=Cr(e,A+(r<<2)|0,b))+(b=s[c+12>>2])|0,(r=r+1|0)>>>0<p[c+16>>2];);e=s[i+12>>2]}if(r=s[o+40>>2],Cr(s[s[o>>2]>>2]+m(r,f)|0,e,r),e=r=s[i+20>>2],!((k=k+1|0)>>>0<(r-(b=s[i+16>>2])|0)/20>>>0))break}if(s[i+28>>2]=s[i+28>>2]+1,s[t+8>>2]=s[t+8>>2]+1,(0|(v=v+1|0))==(0|y))break}}r=s[a+28>>2]}if(!r)break}f=1}if(s[a+28>>2]=0,(e=(k=s[a+16>>2])-(r=s[a+12>>2])|0)>>>0>=9)for(;mr(s[r>>2]),r=s[a+12>>2]+4|0,s[a+12>>2]=r,(e=(k=s[a+16>>2])-r|0)>>>0>8;);b=170;f:switch((e>>>2|0)-1|0){case 1:b=341;case 0:s[a+24>>2]=b;break;default:break f}if((0|r)!=(0|k)){for(;mr(s[r>>2]),(0|k)!=(0|(r=r+4|0)););(0|(e=s[a+16>>2]))!=(0|(r=s[a+12>>2]))&&(s[a+16>>2]=e+(3+(r-e|0)&-4))}(r=s[a+8>>2])&&mr(r),Q=a+32|0;break r}ha(),n()}ha(),n()}b=f}}return b}function P(r,e,i,f){var a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0,l=0,y=0,d=0,v=0,h=0,N=0,Z=0,G=0,U=0,W=0;if(k=s[e+8>>2],a=s[e+12>>2],b=s[e+20>>2],!(k>>>0<(u=(A=s[e+16>>2])+4|0)>>>0&(0|a)<=(0|(b=u>>>0<4?b+1|0:b))|(0|a)<(0|b)||(A=A+s[e>>2]|0,s[r>>2]=_[0|A]|_[A+1|0]<<8|_[A+2|0]<<16|_[A+3|0]<<24,a=A=s[e+20>>2],A=(b=(k=s[e+16>>2])+4|0)>>>0<4?a+1|0:a,s[e+16>>2]=b,s[e+20>>2]=A,p[r>>2]>32||(A=a,(a=k+8|0)>>>0>(c=s[e+8>>2])>>>0&(0|(A=a>>>0<8?A+1|0:A))>=(0|(u=s[e+12>>2]))|(0|A)>(0|u))))){if(A=s[e>>2]+b|0,b=_[0|A]|_[A+1|0]<<8|_[A+2|0]<<16|_[A+3|0]<<24,s[r+4>>2]=b,A=s[e+20>>2],A=(a=s[e+16>>2]+4|0)>>>0<4?A+1|0:A,s[e+16>>2]=a,s[e+20>>2]=A,!b)return 1;if(!(f>>>0<b>>>0)&&(s[r+8>>2]=0,Mr(r+16|0,e)&&Ne(r+32|0,e)&&Ne(r+52|0,e)&&Ne(r+72|0,e))){N=s[r+4>>2],A=i,e=0,b=0,Q=a=Q-32|0,f=r,r=s[r+12>>2],s[a+16>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0;r:{e:{if(r){if(r>>>0>=1073741824)break e;e=mf(i=r<<2),s[a+8>>2]=e,b=e+i|0,s[a+16>>2]=b,Ge(e,0,i),s[a+12>>2]=b}i=s[f+116>>2],(o=s[i>>2])&&(s[i+4>>2]=o,mr(o),b=s[a+12>>2],e=s[a+8>>2],r=s[f+12>>2]),s[i+4>>2]=b,s[i>>2]=e,s[i+8>>2]=s[a+16>>2],e=0,s[a+16>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0;i:{if(r){if(r>>>0>=1073741824)break i;t=mf(r<<=2),s[a+8>>2]=t,e=r+t|0,s[a+16>>2]=e,Ge(t,0,r),s[a+12>>2]=e}r=s[f+128>>2],(i=s[r>>2])&&(s[r+4>>2]=i,mr(i),t=s[a+8>>2],e=s[a+12>>2]),s[r+4>>2]=e,s[r>>2]=t,s[r+8>>2]=s[a+16>>2],s[a+24>>2]=0,s[a+28>>2]=0,s[a+16>>2]=0,s[a+20>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0,sr(a+8|0),e=((r=s[a+24>>2]+s[a+28>>2]|0)>>>0)/341|0,r=s[s[a+12>>2]+(e<<2)>>2]+m(r-m(e,341)|0,12)|0,s[r+4>>2]=0,s[r+8>>2]=0,s[r>>2]=N,i=1,r=s[a+28>>2]+1|0,s[a+28>>2]=r;f:if(r){for(G=f+16|0;;){if(e=s[a+12>>2],t=s[a+24>>2],i=s[e+((o=((i=t+(u=r-1|0)|0)>>>0)/341|0)<<2)>>2]+m(i-m(o,341)|0,12)|0,b=s[i+8>>2],o=s[i+4>>2],k=s[i>>2],s[a+28>>2]=u,1+(((0|e)!=(0|(i=s[a+16>>2]))?m(i-e>>2,341)-1|0:0)-(r+t|0)|0)>>>0>=682&&(mr(s[i-4>>2]),s[a+16>>2]=s[a+16>>2]-4),i=0,k>>>0>N>>>0)break f;if((r=((e=s[f+12>>2])-1|0)!=(0|o)?o+1|0:0)>>>0>=e>>>0)break f;d=(t=m(b,12))+s[f+128>>2]|0,u=t+s[f+116>>2]|0;a:if((0|(o=s[f>>2]))!=(0|(y=s[(c=r<<2)+s[d>>2]>>2]))){t:{b:{A:{n:{if(k>>>0<=2){if(i=s[f+104>>2],s[i>>2]=r,t=1,(e=s[f+12>>2])>>>0>1)break n;break t}if(p[f+8>>2]>p[f+4>>2])break f;if((0|(h=(e=s[f+116>>2])+(d=m(l=b+1|0,12))|0))!=(0|u)&&(Fe(h,s[u>>2],s[u+4>>2]),e=s[f+116>>2]),e=c+s[e+d>>2]|0,s[e>>2]=s[e>>2]+(1<<o+~y),s[a+4>>2]=0,di(G,31^R(k),a+4|0),(e=k>>>1|0)>>>0<(o=s[a+4>>2])>>>0)break f;if((0|(i=k-(e=e-o|0)|0))!=(0|e)){if((0|(o=s[f+84>>2]))==s[f+76>>2])break A;k=s[o>>2],y=(u=s[f+88>>2])+1|0,s[f+88>>2]=y,k&=-2147483648>>>u;o:{if(32==(0|y)){if(s[f+88>>2]=0,s[f+84>>2]=o+4,k)break o;break A}if(!k)break A}}else i=e;o=i,i=e;break b}for(;r=(e-1|0)!=(0|r)?r+1|0:0,s[i+(t<<2)>>2]=r,(e=s[f+12>>2])>>>0>(t=t+1|0)>>>0;);break t}o=e}if(e=s[f+128>>2],t=s[(k=e+t|0)>>2],s[(u=t+c|0)>>2]=s[u>>2]+1,Fe(e+d|0,t,s[k+4>>2]),i&&(e=s[a+28>>2]+s[a+24>>2]|0,k=s[a+16>>2],(0|e)==(0|((0|(t=s[a+12>>2]))!=(0|k)?m(k-t>>2,341)-1:0))&&(sr(a+8|0),t=s[a+12>>2],e=s[a+24>>2]+s[a+28>>2]|0),e=s[((k=(e>>>0)/341|0)<<2)+t>>2]+m(e-m(k,341)|0,12)|0,s[e+8>>2]=b,s[e+4>>2]=r,s[e>>2]=i,s[a+28>>2]=s[a+28>>2]+1),!o)break a;(0|(e=s[a+28>>2]+s[a+24>>2]|0))==(0|((0|(i=s[a+16>>2]))!=(0|(t=s[a+12>>2]))?m(i-t>>2,341)-1:0))&&(sr(a+8|0),t=s[a+12>>2],e=s[a+24>>2]+s[a+28>>2]|0),e=s[((i=(e>>>0)/341|0)<<2)+t>>2]+m(e-m(i,341)|0,12)|0,s[e+8>>2]=l,s[e+4>>2]=r,s[e>>2]=o,s[a+28>>2]=s[a+28>>2]+1;break a}if(y=0,k)for(;;){if(s[f+12>>2])for(o=s[f+36>>2],h=s[d>>2],i=s[f+92>>2],U=s[f+104>>2],r=0;;){s[i+(s[(b=(r<<2)+U|0)>>2]<<2)>>2]=0,e=s[f>>2],t=s[b>>2]<<2;t:if((0|e)!=(0|(c=s[t+h>>2])))if(t=i+t|0,(0|(e=e-c|0))<=(0|(v=32-(c=s[f+48>>2])|0))){if((0|(l=s[f+44>>2]))==(0|o)){i=0;break f}if(s[t>>2]=s[l>>2]<<c>>>32-e,e=e+s[f+48>>2]|0,s[f+48>>2]=e,32!=(0|e))break t;s[f+48>>2]=0,s[f+44>>2]=l+4}else{if((0|o)==(0|(Z=(l=s[f+44>>2])+4|0))){i=0;break f}W=s[l>>2],s[f+44>>2]=Z,v=e-v|0,s[f+48>>2]=v,s[t>>2]=s[l+4>>2]>>>32-v|W<<c>>>32-e}if(e=s[b>>2]<<2,s[(b=e+i|0)>>2]=s[b>>2]|s[e+s[u>>2]>>2],!((r=r+1|0)>>>0<p[f+12>>2]))break}o=0;t:if((0|(r=s[A+16>>2]))!=s[A+20>>2])for(;;){if(t=s[A+28>>2],i=m(o,20)+r|0,c=s[i>>2],_[c+84|0]||(t=s[s[c+68>>2]+(t<<2)>>2]),p[c+80>>2]<=t>>>0)break t;if(e=l=s[f+92>>2]+(s[i+4>>2]<<2)|0,!((b=s[i+12>>2])>>>0>3)&&(r=0,e=s[A+12>>2],s[i+16>>2])){for(;e=(e=Cr(e,l+(r<<2)|0,b))+(b=s[i+12>>2])|0,(r=r+1|0)>>>0<p[i+16>>2];);e=s[A+12>>2]}if(r=s[c+40>>2],Cr(s[s[c>>2]>>2]+m(r,t)|0,e,r),o=o+1|0,r=s[A+16>>2],!(o>>>0<(s[A+20>>2]-r|0)/20>>>0))break}if(s[A+28>>2]=s[A+28>>2]+1,s[f+8>>2]=s[f+8>>2]+1,(0|k)==(0|(y=y+1|0)))break}}else{if(!k)break a;if(d=0,(0|(e=s[A+20>>2]))==(0|(b=s[A+16>>2]))){r=s[f+8>>2],s[A+28>>2]=k+s[A+28>>2],s[f+8>>2]=r+k;break a}for(;;){i=(0|e)==(0|b),r=e,o=0,e=b;t:if(!i)for(;;){if(t=s[A+28>>2],e=r,i=m(o,20)+b|0,c=s[i>>2],_[c+84|0]||(t=s[s[c+68>>2]+(t<<2)>>2]),p[c+80>>2]<=t>>>0)break t;if(e=y=s[u>>2]+(s[i+4>>2]<<2)|0,!((b=s[i+12>>2])>>>0>3)&&(r=0,e=s[A+12>>2],s[i+16>>2])){for(;e=(e=Cr(e,y+(r<<2)|0,b))+(b=s[i+12>>2])|0,(r=r+1|0)>>>0<p[i+16>>2];);e=s[A+12>>2]}if(r=s[c+40>>2],Cr(s[s[c>>2]>>2]+m(r,t)|0,e,r),!((o=o+1|0)>>>0<((e=r=s[A+20>>2])-(b=s[A+16>>2])|0)/20>>>0))break}if(s[A+28>>2]=s[A+28>>2]+1,s[f+8>>2]=s[f+8>>2]+1,(0|k)==(0|(d=d+1|0)))break}}if(!(r=s[a+28>>2]))break}i=1}if(s[a+28>>2]=0,(e=(t=s[a+16>>2])-(r=s[a+12>>2])|0)>>>0>=9)for(;mr(s[r>>2]),r=s[a+12>>2]+4|0,s[a+12>>2]=r,(e=(t=s[a+16>>2])-r|0)>>>0>8;);b=170;f:switch((e>>>2|0)-1|0){case 1:b=341;case 0:s[a+24>>2]=b;break;default:break f}if((0|r)!=(0|t)){for(;mr(s[r>>2]),(0|t)!=(0|(r=r+4|0)););(0|(r=s[a+16>>2]))!=(0|(e=s[a+12>>2]))&&(s[a+16>>2]=r+(3+(e-r|0)&-4))}(r=s[a+8>>2])&&mr(r),Q=a+32|0;break r}ha(),n()}ha(),n()}o=i}}return o}function S(r,e,i,f){var a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0,l=0,y=0,d=0,v=0,h=0,N=0,Z=0,G=0,U=0,W=0;if(o=s[e+8>>2],c=s[e+12>>2],y=s[e+20>>2],!((0|c)<=(0|(y=(t=(A=s[e+16>>2])+4|0)>>>0<4?y+1|0:y))&t>>>0>o>>>0|(0|c)<(0|y)||(A=A+s[e>>2]|0,s[r>>2]=_[0|A]|_[A+1|0]<<8|_[A+2|0]<<16|_[A+3|0]<<24,o=A=s[e+20>>2],c=(A=(t=s[e+16>>2])+4|0)>>>0<4?o+1|0:o,s[e+16>>2]=A,s[e+20>>2]=c,p[r>>2]>32||(t=t+8|0)>>>0>(c=s[e+8>>2])>>>0&(0|(o=t>>>0<8?o+1|0:o))>=(0|(y=s[e+12>>2]))|(0|o)>(0|y)))){if(A=s[e>>2]+A|0,t=_[0|A]|_[A+1|0]<<8|_[A+2|0]<<16|_[A+3|0]<<24,s[r+4>>2]=t,o=s[e+20>>2],o=(A=s[e+16>>2]+4|0)>>>0<4?o+1|0:o,s[e+16>>2]=A,s[e+20>>2]=o,!t)return 1;if(!(f>>>0<t>>>0)&&(s[r+8>>2]=0,Mr(r+16|0,e)&&Ne(r+32|0,e)&&Ne(r+52|0,e)&&Ne(r+72|0,e))){U=s[r+4>>2],A=i,e=0,i=0,Q=a=Q-32|0,t=r,r=s[r+12>>2],s[a+16>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0;r:{e:{if(r){if(r>>>0>=1073741824)break e;e=mf(f=r<<2),s[a+8>>2]=e,i=e+f|0,s[a+16>>2]=i,Ge(e,0,f),s[a+12>>2]=i}k=s[t+116>>2],(f=s[k>>2])&&(s[k+4>>2]=f,mr(f),i=s[a+12>>2],e=s[a+8>>2],r=s[t+12>>2]),s[k+4>>2]=i,s[k>>2]=e,s[k+8>>2]=s[a+16>>2],e=0,s[a+16>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0;i:{if(r){if(r>>>0>=1073741824)break i;b=mf(r<<=2),s[a+8>>2]=b,e=r+b|0,s[a+16>>2]=e,Ge(b,0,r),s[a+12>>2]=e}i=s[t+128>>2],(r=s[i>>2])&&(s[i+4>>2]=r,mr(r),b=s[a+8>>2],e=s[a+12>>2]),s[i+4>>2]=e,s[i>>2]=b,s[i+8>>2]=s[a+16>>2],s[a+24>>2]=0,s[a+28>>2]=0,s[a+16>>2]=0,s[a+20>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0,sr(a+8|0),r=((e=s[a+24>>2]+s[a+28>>2]|0)>>>0)/341|0,r=s[s[a+12>>2]+(r<<2)>>2]+m(e-m(r,341)|0,12)|0,s[r+4>>2]=0,s[r+8>>2]=0,s[r>>2]=U,f=1,r=s[a+28>>2]+1|0,s[a+28>>2]=r;f:if(r){for(y=t+16|0;;){if(o=s[a+12>>2],k=s[a+24>>2],e=s[o+((e=((i=k+(f=r-1|0)|0)>>>0)/341|0)<<2)>>2]+m(i-m(e,341)|0,12)|0,d=s[e+8>>2],i=s[e+4>>2],l=s[e>>2],s[a+28>>2]=f,1+(((0|(e=s[a+16>>2]))!=(0|o)?m(e-o>>2,341)-1|0:0)-(r+k|0)|0)>>>0>=682&&(mr(s[e-4>>2]),s[a+16>>2]=s[a+16>>2]-4),l>>>0>U>>>0){f=0;break f}if(f=0,(r=(0|i)!=((e=s[t+12>>2])-1|0)?i+1|0:0)>>>0>=e>>>0)break f;N=(e=s[t+116>>2])+(v=m(d,12))|0,k=s[t>>2],b=r<<2,c=v+s[t+128>>2]|0;a:if((0|k)!=(0|(i=s[b+s[c>>2]>>2]))){t:{b:{A:{n:{if(l>>>0<=2){if(i=s[t+104>>2],s[i>>2]=r,b=1,(e=s[t+12>>2])>>>0>1)break n;break t}if(p[t+8>>2]>p[t+4>>2])break f;if(Fe((o=e)+(e=v+12|0)|0,s[N>>2],s[N+4>>2]),e=b+s[e+s[t+116>>2]>>2]|0,s[e>>2]=s[e>>2]+(1<<k+~i),s[a+4>>2]=0,di(y,31^R(l),a+4|0),(i=l>>>1|0)>>>0<(e=s[a+4>>2])>>>0)break f;if(u=d+1|0,(0|(i=l-(e=i-e|0)|0))!=(0|e)){if((0|(c=s[t+84>>2]))==s[t+76>>2])break A;o=s[c>>2],f=(k=s[t+88>>2])+1|0,s[t+88>>2]=f,k=o&-2147483648>>>k;o:{if(32==(0|f)){if(s[t+88>>2]=0,s[t+84>>2]=c+4,k)break o;break A}if(!k)break A}}else i=e;k=i,i=e;break b}for(;r=(e-1|0)!=(0|r)?r+1|0:0,s[i+(b<<2)>>2]=r,(e=s[t+12>>2])>>>0>(b=b+1|0)>>>0;);break t}k=e}if(c=s[t+128>>2],f=s[(o=c+v|0)>>2],s[(e=f+b|0)>>2]=s[e>>2]+1,Fe(c+m(u,12)|0,f,s[o+4>>2]),i&&((0|(e=s[a+28>>2]+s[a+24>>2]|0))==(0|((0|(f=s[a+16>>2]))!=(0|(b=s[a+12>>2]))?m(f-b>>2,341)-1:0))&&(sr(a+8|0),b=s[a+12>>2],e=s[a+24>>2]+s[a+28>>2]|0),e=s[((f=(e>>>0)/341|0)<<2)+b>>2]+m(e-m(f,341)|0,12)|0,s[e+8>>2]=d,s[e+4>>2]=r,s[e>>2]=i,s[a+28>>2]=s[a+28>>2]+1),!k)break a;(0|(e=s[a+28>>2]+s[a+24>>2]|0))==(0|((0|(i=s[a+16>>2]))!=(0|(b=s[a+12>>2]))?m(i-b>>2,341)-1:0))&&(sr(a+8|0),b=s[a+12>>2],e=s[a+24>>2]+s[a+28>>2]|0),e=s[((i=(e>>>0)/341|0)<<2)+b>>2]+m(e-m(i,341)|0,12)|0,s[e+8>>2]=u,s[e+4>>2]=r,s[e>>2]=k,s[a+28>>2]=s[a+28>>2]+1;break a}if(Z=0,l)for(;;){if(s[t+12>>2])for(W=s[t+36>>2],o=s[c>>2],G=s[t+92>>2],k=s[t+104>>2],r=0;;){s[G+(s[(d=(r<<2)+k|0)>>2]<<2)>>2]=0,f=s[t>>2],i=s[d>>2]<<2;t:if((0|f)!=(0|(e=s[i+o>>2])))if(v=i+G|0,(0|(h=f-e|0))<=(0|(f=32-(b=s[t+48>>2])|0))){if((0|(i=s[t+44>>2]))==(0|W)){f=0;break f}if(s[v>>2]=s[i>>2]<<b>>>32-h,e=h+s[t+48>>2]|0,s[t+48>>2]=e,32!=(0|e))break t;s[t+48>>2]=0,s[t+44>>2]=i+4}else{if((0|W)==(0|(e=(u=s[t+44>>2])+4|0))){f=0;break f}i=s[u>>2],s[t+44>>2]=e,e=h-f|0,s[t+48>>2]=e,s[v>>2]=s[u+4>>2]>>>32-e|i<<b>>>32-h}if(i=s[d>>2]<<2,s[(e=i+G|0)>>2]=s[e>>2]|s[i+s[N>>2]>>2],!((r=r+1|0)>>>0<p[t+12>>2]))break}k=0;t:if((0|(r=s[A+16>>2]))!=s[A+20>>2])for(;;){if(b=s[A+28>>2],u=m(k,20)+r|0,o=s[u>>2],_[o+84|0]||(b=s[s[o+68>>2]+(b<<2)>>2]),p[o+80>>2]<=b>>>0)break t;if(e=f=s[t+92>>2]+(s[u+4>>2]<<2)|0,!((i=s[u+12>>2])>>>0>3)&&(r=0,e=s[A+12>>2],s[u+16>>2])){for(;e=(e=Cr(e,f+(r<<2)|0,i))+(i=s[u+12>>2])|0,(r=r+1|0)>>>0<p[u+16>>2];);e=s[A+12>>2]}if(r=s[o+40>>2],Cr(s[s[o>>2]>>2]+m(r,b)|0,e,r),k=k+1|0,r=s[A+16>>2],!(k>>>0<(s[A+20>>2]-r|0)/20>>>0))break}if(s[A+28>>2]=s[A+28>>2]+1,s[t+8>>2]=s[t+8>>2]+1,(0|l)==(0|(Z=Z+1|0)))break}}else{if(!l)break a;if((0|(e=s[A+20>>2]))==(0|(i=s[A+16>>2]))){r=s[t+8>>2],s[A+28>>2]=l+s[A+28>>2],s[t+8>>2]=r+l;break a}for(;;){o=(0|e)==(0|i),r=e,k=0,e=i;t:if(!o)for(;;){if(b=s[A+28>>2],e=r,u=m(k,20)+i|0,c=s[u>>2],_[c+84|0]||(b=s[s[c+68>>2]+(b<<2)>>2]),p[c+80>>2]<=b>>>0)break t;if(e=o=s[N>>2]+(s[u+4>>2]<<2)|0,!((i=s[u+12>>2])>>>0>3)&&(r=0,e=s[A+12>>2],s[u+16>>2])){for(;e=(e=Cr(e,o+(r<<2)|0,i))+(i=s[u+12>>2])|0,(r=r+1|0)>>>0<p[u+16>>2];);e=s[A+12>>2]}if(r=s[c+40>>2],Cr(s[s[c>>2]>>2]+m(r,b)|0,e,r),!((k=k+1|0)>>>0<((e=r=s[A+20>>2])-(i=s[A+16>>2])|0)/20>>>0))break}if(s[A+28>>2]=s[A+28>>2]+1,s[t+8>>2]=s[t+8>>2]+1,(0|l)==(0|(f=f+1|0)))break}}if(!(r=s[a+28>>2]))break}f=1}if(s[a+28>>2]=0,(e=(b=s[a+16>>2])-(r=s[a+12>>2])|0)>>>0>=9)for(;mr(s[r>>2]),r=s[a+12>>2]+4|0,s[a+12>>2]=r,(e=(b=s[a+16>>2])-r|0)>>>0>8;);i=170;f:switch((e>>>2|0)-1|0){case 1:i=341;case 0:s[a+24>>2]=i;break;default:break f}if((0|r)!=(0|b)){for(;mr(s[r>>2]),(0|b)!=(0|(r=r+4|0)););(0|(e=s[a+16>>2]))!=(0|(r=s[a+12>>2]))&&(s[a+16>>2]=e+(3+(r-e|0)&-4))}(r=s[a+8>>2])&&mr(r),Q=a+32|0,k=f;break r}ha(),n()}ha(),n()}}}return k}function x(r,e){var i,f=0,a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0,_=0,l=0,p=0,y=0,d=0,v=0,h=0,R=0,N=0,Z=0;Q=i=Q-32|0,A=s[s[r+4>>2]+44>>2],f=s[r+8>>2],a=s[f>>2],f=s[f+4>>2],s[i+24>>2]=0,s[i+16>>2]=0,s[i+20>>2]=0,a=(f-a>>2>>>0)/3|0,f=s[A+96>>2];r:{if(a>>>0>(b=(s[A+100>>2]-f|0)/12|0)>>>0){if((t=a-b|0)>>>0<=((o=s[A+104>>2])-(f=s[A+100>>2])|0)/12>>>0){if(t){if(a=f,o=1+(((b=m(t,12)-12|0)>>>0)/12|0)&3)for(;u=s[i+20>>2],s[a>>2]=s[i+16>>2],s[a+4>>2]=u,s[a+8>>2]=s[i+24>>2],a=a+12|0,(0|o)!=(0|(k=k+1|0)););if(f=m(t,12)+f|0,!(b>>>0<36))for(;b=s[i+20>>2],s[a>>2]=s[i+16>>2],s[a+4>>2]=b,s[a+8>>2]=s[i+24>>2],s[a+20>>2]=s[i+24>>2],b=s[i+20>>2],s[a+12>>2]=s[i+16>>2],s[a+16>>2]=b,s[a+32>>2]=s[i+24>>2],b=s[i+20>>2],s[a+24>>2]=s[i+16>>2],s[a+28>>2]=b,b=s[i+20>>2],s[a+36>>2]=s[i+16>>2],s[a+40>>2]=b,s[a+44>>2]=s[i+24>>2],(0|(a=a+48|0))!=(0|f););}s[A+100>>2]=f;break r}e:{if((a=(l=(f-(b=s[A+96>>2])|0)/12|0)+t|0)>>>0<357913942){if(o=(b=(o-b|0)/12|0)<<1,o=b>>>0>=178956970?357913941:a>>>0<o>>>0?o:a){if(o>>>0>=357913942)break e;u=mf(m(o,12))}if(a=b=m(l,12)+u|0,d=1+(((l=(t=m(t,12))-12|0)>>>0)/12|0)&3)for(;v=s[i+20>>2],s[a>>2]=s[i+16>>2],s[a+4>>2]=v,s[a+8>>2]=s[i+24>>2],a=a+12|0,(0|d)!=(0|(k=k+1|0)););if(t=t+b|0,l>>>0>=36)for(;k=s[i+20>>2],s[a>>2]=s[i+16>>2],s[a+4>>2]=k,s[a+8>>2]=s[i+24>>2],s[a+20>>2]=s[i+24>>2],k=s[i+20>>2],s[a+12>>2]=s[i+16>>2],s[a+16>>2]=k,s[a+32>>2]=s[i+24>>2],k=s[i+20>>2],s[a+24>>2]=s[i+16>>2],s[a+28>>2]=k,k=s[i+20>>2],s[a+36>>2]=s[i+16>>2],s[a+40>>2]=k,s[a+44>>2]=s[i+24>>2],(0|t)!=(0|(a=a+48|0)););if((0|(k=s[A+96>>2]))!=(0|f)){for(;l=s[(f=f-12|0)+4>>2],s[(a=b=b-12|0)>>2]=s[f>>2],s[a+4>>2]=l,s[a+8>>2]=s[f+8>>2],(0|f)!=(0|k););f=s[A+96>>2]}s[A+104>>2]=m(o,12)+u,s[A+100>>2]=t,s[A+96>>2]=b,f&&mr(f);break r}ha(),n()}Df(),n()}a>>>0>=b>>>0||(s[A+100>>2]=f+m(a,12))}if(s[r+216>>2]!=s[r+220>>2]){a=0,s[i+24>>2]=0,s[i+16>>2]=0,s[i+20>>2]=0,u=s[r+8>>2],f=s[u>>2],A=s[u+4>>2],s[i+8>>2]=0,s[i>>2]=0,s[i+4>>2]=0,e=0;r:{e:{i:{f:{a:{t:{if((0|f)!=(0|A)){if((0|(f=A-f|0))<0)break t;e=mf(f),s[i>>2]=e,s[i+8>>2]=(-4&f)+e,N=i,Z=Ge(e,0,f)+f|0,s[N+4>>2]=Z}if(f=s[u+24>>2],(s[u+28>>2]-f|0)<4)break e;for(b=0;;){b:if(-1!=(0|(A=s[(y<<2)+f>>2]))){A:if(!(s[s[r+120>>2]+(y>>>3&536870908)>>2]>>>y&1)&&(0|(l=s[r+216>>2]))!=(0|(f=s[r+220>>2])))for(t=A+2|0,d=(o=(A>>>0)%3|0)?A-1|0:t,v=(f=(f-l|0)/144|0)>>>0<=1?1:f,k=0,R=!!(0|o)|-1!=(0|t);;){if(h=A<<2,o=m(k,144)+l|0,f=s[h+s[s[o+68>>2]>>2]>>2],s[s[o+16>>2]+(f>>>3&536870908)>>2]>>>f&1&&(f=-1,R&&(f=-1,-1!=(0|(t=s[s[u+12>>2]+(d<<2)>>2]))&&(f=t-1|0,(t>>>0)%3|0||(f=t+2|0))),(0|A)!=(0|f)))for(t=h,h=s[o+32>>2],o=s[t+h>>2];;){if(t=0,-1==(0|f))break r;if((0|o)!=s[h+(f<<2)>>2]){A=f;break A}n:{if((f>>>0)%3|0)t=f-1|0;else if(_=-1,-1==(0|(t=f+2|0)))break n;_=-1,-1!=(0|(f=s[s[u+12>>2]+(t<<2)>>2]))&&(_=f-1|0,(f>>>0)%3|0||(_=f+2|0))}if((0|A)==(0|(f=_)))break}if((0|v)==(0|(k=k+1|0)))break}if(t=(o=c-b|0)>>2,s[(A<<2)+e>>2]=t,c>>>0<p>>>0)s[c>>2]=A,c=c+4|0,s[i+20>>2]=c;else{if((f=t+1|0)>>>0>=1073741824)break a;if(c=(a=p-b|0)>>>1|0,f=a>>>0>=2147483644?1073741823:f>>>0<c>>>0?c:f){if(f>>>0>=1073741824)break f;a=mf(f<<2)}else a=0;s[(t=a+(t<<2)|0)>>2]=A,p=(_=f<<2)+(f=me(a,b,o))|0,s[i+24>>2]=p,c=t+4|0,s[i+20>>2]=c,s[i+16>>2]=f,b&&(mr(b),u=s[r+8>>2]),b=f}if(-1!=(0|A)){if((A>>>0)%3|0)f=A-1|0;else if(-1==(0|(f=A+2|0)))break b;if(-1!=(0|(f=s[s[u+12>>2]+(f<<2)>>2]))&&-1!=(0|(f=f+((f>>>0)%3|0?-1:2)|0))&&(t=A,(0|f)!=(0|A)))for(;;){o=f;A:{n:if((0|(f=s[r+220>>2]))!=(0|(k=s[r+216>>2]))){for(l=(f=(f-k|0)/144|0)>>>0<=1?1:f,f=0;;){if(d=s[32+(k+m(f,144)|0)>>2],s[d+(v=o<<2)>>2]==s[d+(t<<2)>>2]){if((0|l)!=(0|(f=f+1|0)))continue;break n}break}if(t=(k=c-a|0)>>2,s[e+v>>2]=t,c>>>0<p>>>0){s[c>>2]=o,c=c+4|0,s[i+20>>2]=c,b=a;break A}if((f=t+1|0)>>>0>=1073741824)break i;if(c=(b=p-a|0)>>>1|0,f=b>>>0>=2147483644?1073741823:f>>>0<c>>>0?c:f){if(f>>>0>=1073741824)break f;b=mf(f<<2)}else b=0;if(s[(t=b+(t<<2)|0)>>2]=o,p=(_=f<<2)+(f=me(b,a,k))|0,s[i+24>>2]=p,c=t+4|0,s[i+20>>2]=c,s[i+16>>2]=f,!a){a=f;break A}mr(a),u=s[r+8>>2],a=f;break A}s[(o<<2)+e>>2]=s[(t<<2)+e>>2]}if(-1==(0|o))break b;if((o>>>0)%3|0)f=o-1|0;else if(-1==(0|(f=o+2|0)))break b;if(-1==(0|(f=s[s[u+12>>2]+(f<<2)>>2])))break b;if(-1==(0|(f=f+((f>>>0)%3|0?-1:2)|0)))break b;if(t=o,(0|f)==(0|A))break}}}if(y=y+1|0,f=s[u+24>>2],!((0|y)<s[u+28>>2]-f>>2))break}break e}ha(),n()}ha(),n()}Df(),n()}ha(),n()}if(o=s[r+4>>2],r=s[o+44>>2],(0|(f=s[r+100>>2]))!=(0|(r=s[r+96>>2]))){if(u=1&(b=(A=(f-r|0)/12|0)>>>0<=1?1:A),f=0,A>>>0>=2)for(k=-2&b,A=0;t=m(f,12),p=s[(b=t+e|0)>>2],y=s[b+4>>2],s[(t=r+t|0)+8>>2]=s[b+8>>2],s[t>>2]=p,s[t+4>>2]=y,t=m(1|f,12),p=s[(b=t+e|0)>>2],y=s[b+4>>2],s[(t=r+t|0)+8>>2]=s[b+8>>2],s[t>>2]=p,s[t+4>>2]=y,f=f+2|0,(0|k)!=(0|(A=A+2|0)););u&&(A=m(f,12),b=s[(f=A+e|0)>>2],t=s[f+4>>2],s[(r=r+A|0)+8>>2]=s[f+8>>2],s[r>>2]=b,s[r+4>>2]=t)}s[s[o+4>>2]+80>>2]=c-a>>2,t=1}f=t,e&&mr(e),a&&(s[i+20>>2]=a,mr(a))}else{if(k=s[r+4>>2],f=s[k+44>>2],(0|(a=s[f+100>>2]))!=(0|(b=s[f+96>>2])))for(p=(f=(a-b|0)/12|0)>>>0<=1?1:f,f=0;;){a=s[r+8>>2],o=b+m(f,12)|0;r:{if(-1!=(0|(A=m(f,3))))if(t=-1,c=s[s[a>>2]+(A<<2)>>2],-1!=(0|(u=A+1|0))){if(t=s[s[a>>2]+(u<<2)>>2],_=-1,-1==(0|(A=A+2|0)))break r}else A=0;else t=s[4+(s[a>>2]+(A<<2)|0)>>2],c=-1,A=1;_=s[s[a>>2]+(A<<2)>>2]}if(s[o+8>>2]=_,s[o+4>>2]=t,s[o>>2]=c,(0|p)==(0|(f=f+1|0)))break}s[s[k+4>>2]+80>>2]=e,f=1}return Q=i+32|0,f}function L(r,e,i,f,a){var t,b,A,o=0,k=0,l=0,p=0,y=0,d=0,v=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0,V=0,T=0,D=0,F=0,B=0;Q=t=Q-80|0,s[t+76>>2]=e,A=t+55|0,b=t+56|0;r:{e:{i:{f:{a:for(;;){if(l=e,(2147483647^R)<(0|o))break f;R=o+R|0;t:{b:{A:{if(k=_[0|(o=l)])for(;;){n:{o:if(e=255&k){if(37!=(0|e))break n;for(k=o;;){if(37!=_[k+1|0]){e=k;break o}if(o=o+1|0,p=_[k+2|0],k=e=k+2|0,37!=(0|p))break}}else e=o;if((0|(o=o-l|0))>(0|(T=2147483647^R)))break f;if(r&&ra(r,l,o),o)continue a;s[t+76>>2]=e,o=e+1|0,N=-1,36!=_[e+2|0]|c[e+1|0]-48>>>0>=10||(N=c[e+1|0]-48|0,G=1,o=e+3|0),s[t+76>>2]=o,h=0;o:if((e=(k=c[0|o])-32|0)>>>0>31)y=o;else if(y=o,75913&(e=1<<e))for(;;){if(y=o+1|0,s[t+76>>2]=y,h|=e,(e=(k=c[o+1|0])-32|0)>>>0>=32)break o;if(o=y,!(75913&(e=1<<e)))break}o:if(42!=(0|k)){if((0|(Z=Pi(t+76|0)))<0)break f;k=s[t+76>>2]}else{if(36!=_[y+2|0]|c[y+1|0]-48>>>0>=10){if(G)break A;if(k=y+1|0,!r){s[t+76>>2]=k,G=0,Z=0;break o}e=s[i>>2],s[i>>2]=e+4,G=0,e=s[e>>2]}else s[((c[y+1|0]<<2)+a|0)-192>>2]=10,k=y+3|0,G=1,e=s[((c[y+1|0]<<3)+f|0)-384>>2];if(s[t+76>>2]=k,Z=e,(0|e)>=0)break o;Z=0-Z|0,h|=8192}if(o=0,v=-1,46==_[0|k])if(42!=_[k+1|0])s[t+76>>2]=k+1,v=Pi(t+76|0),e=s[t+76>>2],W=1;else{if(36!=_[k+3|0]|c[k+2|0]-48>>>0>=10){if(G)break A;e=k+2|0,v=0,r&&(p=s[i>>2],s[i>>2]=p+4,v=s[p>>2])}else s[((c[k+2|0]<<2)+a|0)-192>>2]=10,e=k+4|0,v=s[((c[k+2|0]<<3)+f|0)-384>>2];s[t+76>>2]=e,W=~v>>>31|0}else e=k,W=0;for(;;){if(k=o,y=28,d=e,(o=c[0|e])-123>>>0<4294967238)break i;if(e=d+1|0,!((o=_[13711+(o+m(k,58)|0)|0])-1>>>0<8))break}s[t+76>>2]=e;o:{k:{if(27!=(0|o)){if(!o)break i;if((0|N)>=0){s[(N<<2)+a>>2]=o,o=s[(p=(N<<3)+f|0)+4>>2],s[t+64>>2]=s[p>>2],s[t+68>>2]=o;break k}if(!r)break t;he(t- -64|0,o,i);break o}if((0|N)>=0)break i}if(o=0,!r)continue a}p=-65537&h,h=8192&h?p:h,N=0,U=1132,y=b;o:{k:{c:{u:{s:{_:{l:{p:{y:{d:{m:{v:{h:{R:{N:{Z:switch(o=c[0|d],(o=k&&3==(15&o)?-33&o:o)-88|0){case 11:break o;case 9:case 13:case 14:case 15:break k;case 27:break l;case 12:case 17:break d;case 23:break m;case 0:case 32:break v;case 24:break h;case 22:break R;case 29:break N;case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 10:case 16:case 18:case 19:case 20:case 21:case 25:case 26:case 28:case 30:case 31:break b;default:break Z}Z:switch(o-65|0){case 0:case 4:case 5:case 6:break k;case 2:break s;case 1:case 3:break b;default:break Z}if(83==(0|o))break _;break b}d=s[t+64>>2],p=s[t+68>>2],U=1132;break y}o=0;R:switch(255&k){case 0:case 1:case 6:s[s[t+64>>2]>>2]=R;continue a;case 2:l=s[t+64>>2],s[l>>2]=R,s[l+4>>2]=R>>31;continue a;case 3:u[s[t+64>>2]>>1]=R;continue a;case 4:c[s[t+64>>2]]=R;continue a;case 7:break R;default:continue a}l=s[t+64>>2],s[l>>2]=R,s[l+4>>2]=R>>31;continue a}v=v>>>0<=8?8:v,h|=8,o=120}if(l=b,(d=s[t+64>>2])|(p=s[t+68>>2]))for(D=32&o;c[0|(l=l-1|0)]=D|_[14240+(15&d)|0],V=!p&d>>>0>15|!!(0|p),p=(k=p)>>>4|0,d=(15&k)<<28|d>>>4,V;);if(!(s[t+64>>2]|s[t+68>>2])|!(8&h))break p;U=1132+(o>>>4|0)|0,N=2;break p}if(o=b,p=l=s[t+68>>2],l|(d=s[t+64>>2]))for(;c[0|(o=o-1|0)]=7&d|48,k=!p&d>>>0>7|!!(0|p),p=(l=p)>>>3|0,d=(7&l)<<29|d>>>3,k;);if(l=o,!(8&h))break p;v=(0|(o=b-l|0))<(0|v)?v:o+1|0;break p}d=s[t+64>>2],p=l=s[t+68>>2],(0|l)<0?(p=o=0-(!!(0|d)+p|0)|0,d=0-d|0,s[t+64>>2]=d,s[t+68>>2]=o,N=1,U=1132):2048&h?(N=1,U=1133):U=(N=1&h)?1134:1132}if(k=b,p)for(;F=k=k-1|0,B=d-Ki(V=re(d,o=p,10,0),l=j,10,0)|48,c[0|F]=B,d=V,p=l,o>>>0>9;);if(l=d)for(;o=(l>>>0)/10|0,c[0|(k=k-1|0)]=l-m(o,10)|48,p=l>>>0>9,l=o,p;);l=k}if((0|v)<0&&W)break f;if(h=W?-65537&h:h,!(v|!!((o=s[t+64>>2])|(p=s[t+68>>2])))){l=b,v=0;break b}v=(0|(o=!(o|p)+(b-l|0)|0))<(0|v)?v:o;break b}y=k=v>>>0>=2147483647?2147483647:v,h=!!(0|k);l:{p:{y:{d:if(!(!(3&(o=l=(l=s[t+64>>2])||1614))|!k))for(;;){if(!_[0|o])break y;if(h=!!(0|(y=y-1|0)),!(3&(o=o+1|0)))break d;if(!y)break}if(!h)break p;if(!(!_[0|o]|y>>>0<4))for(;;){if(~(d=s[o>>2])&d-16843009&-2139062144)break y;if(o=o+4|0,!((y=y-4|0)>>>0>3))break}if(!y)break p}for(;;){if(!_[0|o])break l;if(o=o+1|0,!(y=y-1|0))break}}o=0}if(y=(o=o?o-l|0:k)+l|0,(0|v)>=0){h=p,v=o;break b}if(h=p,v=o,_[0|y])break f;break b}if(v){k=s[t+64>>2];break u}o=0,$i(r,32,Z,0,h);break c}s[t+12>>2]=0,s[t+8>>2]=s[t+64>>2],k=t+8|0,s[t+64>>2]=k,v=-1}o=0;u:{for(;;){if(!(l=s[k>>2]))break u;if(!((l=(0|(p=ri(t+4|0,l)))<0)|p>>>0>v-o>>>0)){if(k=k+4|0,v>>>0>(o=o+p|0)>>>0)continue;break u}break}if(l)break e}if(y=61,(0|o)<0)break i;if($i(r,32,Z,o,h),o)for(y=0,k=s[t+64>>2];;){if(!(l=s[k>>2]))break c;if((y=(l=ri(t+4|0,l))+y|0)>>>0>o>>>0)break c;if(ra(r,t+4|0,l),k=k+4|0,!(o>>>0>y>>>0))break}else o=0}$i(r,32,Z,o,8192^h),o=(0|o)<(0|Z)?Z:o;continue a}if((0|v)<0&&W)break f;n()}c[t+55|0]=s[t+64>>2],v=1,l=A,h=p;break b}k=_[o+1|0],o=o+1|0}if(r)break r;if(!G)break t;for(o=1;;){if(r=s[(o<<2)+a>>2]){if(he((o<<3)+f|0,r,i),R=1,10!=(0|(o=o+1|0)))continue;break r}break}if(R=1,o>>>0>=10)break r;for(;;){if(s[(o<<2)+a>>2])break A;if(10==(0|(o=o+1|0)))break}break r}y=28;break i}if((0|(p=(0|v)>(0|(d=y-l|0))?v:d))>(2147483647^N))break f;if(y=61,(0|T)<(0|(o=(0|(k=p+N|0))<(0|Z)?Z:k)))break i;$i(r,32,o,k,h),ra(r,U,N),$i(r,48,o,k,65536^h),$i(r,48,p,d,0),ra(r,l,d),$i(r,32,o,k,8192^h);continue}break}R=0;break r}y=61}s[3992]=y}R=-1}return Q=t+80|0,R}function K(r,e){var i,f,a=0,t=0,b=0;Q=i=Q-16|0,s[r+12>>2]=e,s[r+8>>2]=0,s[r>>2]=0,s[r+4>>2]=0,s[(t=r+16|0)>>2]=0,s[t+4>>2]=0,c[t+5|0]=0,c[t+6|0]=0,c[t+7|0]=0,c[t+8|0]=0,c[t+9|0]=0,c[t+10|0]=0,c[t+11|0]=0,c[t+12|0]=0,s[(a=t+16|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+32|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+48|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t- -64|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+80|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+96|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+112|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+128|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+144|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+160|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+176|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+192|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+208|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+224|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+240|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+256|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+272|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+288|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+304|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+320|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+336|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+352|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+368|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+384|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+400|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+416|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+432|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+448|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+464|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(a=t+480|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[(t=t+496|0)>>2]=0,s[t+4>>2]=0,c[t+5|0]=0,c[t+6|0]=0,c[t+7|0]=0,c[t+8|0]=0,c[t+9|0]=0,c[t+10|0]=0,c[t+11|0]=0,c[t+12|0]=0,s[r+528>>2]=0,s[r+532>>2]=0,c[r+533|0]=0,c[r+534|0]=0,c[r+535|0]=0,c[r+536|0]=0,c[r+537|0]=0,c[r+538|0]=0,c[r+539|0]=0,c[r+540|0]=0,s[r+544>>2]=0,s[r+548>>2]=0,s[r+560>>2]=0,s[r+552>>2]=0,s[r+556>>2]=0,s[r+564>>2]=0,s[r+568>>2]=0,s[r+580>>2]=0,s[r+572>>2]=0,s[r+576>>2]=0,s[r+584>>2]=0,s[r+588>>2]=0,s[r+600>>2]=0,s[r+592>>2]=0,s[r+596>>2]=0,s[r+612>>2]=0,s[r+604>>2]=0,s[r+608>>2]=0,f=r+628|0;r:{e:{if(e){if(e>>>0<1073741824)break e;ha(),n()}s[r+616>>2]=0,s[r+620>>2]=0,s[r+624>>2]=0,s[i+8>>2]=0,s[i>>2]=0,s[i+4>>2]=0,t=1;break r}a=mf(t=e<<2),s[r+604>>2]=a,b=a+t|0,s[r+612>>2]=b,Ge(a,0,t),s[r+624>>2]=0,s[r+616>>2]=0,s[r+620>>2]=0,s[r+608>>2]=b,a=mf(t),s[r+616>>2]=a,b=a+t|0,s[r+624>>2]=b,Ge(a,0,t),s[r+620>>2]=b,a=mf(t),s[i>>2]=a,b=a+t|0,s[i+8>>2]=b,Ge(a,0,t),s[i+4>>2]=b,t=e<<5|1}return Ye(f,t,i),(a=s[i>>2])&&(s[i+4>>2]=a,mr(a)),s[i+8>>2]=0,s[i>>2]=0,s[i+4>>2]=0,e&&(a=mf(e<<=2),s[i>>2]=a,b=e+a|0,s[i+8>>2]=b,Ge(a,0,e),s[i+4>>2]=b),Ye(r+640|0,t,i),(e=s[i>>2])&&(s[i+4>>2]=e,mr(e)),Q=i+16|0,r}function q(r,e,i,f){var a=0,t=0,b=0,A=0,n=0,o=0,k=0,p=0,m=v(0),R=v(0),N=0;r:{e:if(f){i:switch(s[r+28>>2]-1|0){case 0:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(u[(b<<1)+f>>1]=c[0|e],e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(o=1,a>>>0>=t>>>0)break e;break r;case 1:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(u[(b<<1)+f>>1]=_[0|e],e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(o=1,a>>>0>=t>>>0)break e;break r;case 2:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(u[(b<<1)+f>>1]=l[e>>1],e=e+2|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(o=1,a>>>0>=t>>>0)break e;break r;case 3:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)return 0;if((0|(a=u[e>>1]))<0)break e;if(u[(b<<1)+f>>1]=a,e=e+2|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(o=1,a>>>0>=t>>>0)break e;break r;case 4:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if((a=s[e>>2])+32768>>>0>65535)break e;if(u[(b<<1)+f>>1]=a,e=e+4|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(o=1,a>>>0>=t>>>0)break e;break r;case 5:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if((a=s[e>>2])>>>0>32767)break e;if(u[(b<<1)+f>>1]=a,e=e+4|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(o=1,a>>>0>=t>>>0)break e;break r;case 6:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,k=s[a+4>>2];;){if(e>>>0>=k>>>0)break e;if(A=s[e+4>>2],!(A=(n=(a=s[e>>2])+32768|0)>>>0<32768?A+1|0:A)&n>>>0>65535|A)break e;if(u[(b<<1)+f>>1]=a,e=e+8|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(o=1,a>>>0>=t>>>0)break e;break r;case 7:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(!(k=s[e+4>>2])&(a=s[e>>2])>>>0>32767|k)break e;if(u[(b<<1)+f>>1]=a,e=e+8|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(o=1,a>>>0>=t>>>0)break e;break r;case 8:f:{a:if((i&=255)>>>0>(a=_[r+24|0])>>>0?a:i){if(a=s[r>>2],b=o=s[a>>2],t=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),b=(e=e+t|0)+b|0,a=(t=s[a+4>>2])-o|0,!_[r+32|0]){if(o=0,(0|e)>=(0|a))break f;for(e=0;;){if((m=y[b>>2])>=v(32767)|m<v(-32768)|m!=m)break f;if((R=v(h(m)))==v(1/0))break f;if(a=(e<<1)+f|0,n=R<v(2147483648)?~~m:-2147483648,u[a>>1]=n,(e=e+1|0)>>>0>=(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0)break a;if(!(t>>>0>(b=b+4|0)>>>0))break}break f}if(o=0,(0|e)>=(0|a))break f;for(e=0;;){if((m=y[b>>2])>=v(32767)|m<v(-32768)|v(h(m))==v(1/0)|m!=m)break f;if(m<v(0)|m>v(1))break f;if(a=(e<<1)+f|0,p=G(32767*+m+.5),n=h(p)<2147483648?~~p:-2147483648,u[a>>1]=n,(e=e+1|0)>>>0>=(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0)break a;if(!(t>>>0>(b=b+4|0)>>>0))break}break f}o=1,i>>>0<=a>>>0||Ge((a<<1)+f|0,0,i-a<<1)}return o;case 9:f:{a:if((i&=255)>>>0>(a=_[r+24|0])>>>0?a:i){if(a=s[r>>2],b=o=s[a>>2],t=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),b=(e=e+t|0)+b|0,a=(t=s[a+4>>2])-o|0,!_[r+32|0]){if(o=0,(0|e)>=(0|a))break f;for(e=0;;){if((p=d[b>>3])>=32767|p<-32768|p!=p)break f;if((N=h(p))==1/0)break f;if(n=N<2147483648?~~p:-2147483648,u[(a=(e<<1)+f|0)>>1]=n,(e=e+1|0)>>>0>=(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0)break a;if(!(t>>>0>(b=b+8|0)>>>0))break}break f}if(o=0,(0|e)>=(0|a))break f;for(e=0;;){if((p=d[b>>3])>=32767|p<-32768|h(p)==1/0|p!=p)break f;if(p<0|p>1)break f;if(a=(e<<1)+f|0,p=G(32767*p+.5),n=h(p)<2147483648?~~p:-2147483648,u[a>>1]=n,(e=e+1|0)>>>0>=(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0)break a;if(!(t>>>0>(b=b+8|0)>>>0))break}break f}o=1,i>>>0<=a>>>0||Ge((a<<1)+f|0,0,i-a<<1)}return o;case 10:break i;default:break e}if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(u[(b<<1)+f>>1]=_[0|e],e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}o=1,a>>>0>=t>>>0||Ge((a<<1)+f|0,0,(255&i)-a<<1)}return o}return Ge((a<<1)+f|0,0,(255&i)-a<<1),1}function $(r,e,i,f){var a=0,t=0,b=0,A=0,n=0,o=0,k=0,p=0,m=v(0),R=v(0),N=0;r:{e:if(f){i:switch(s[r+28>>2]-1|0){case 0:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(s[(b<<2)+f>>2]=c[0|e],e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(o=1,a>>>0>=t>>>0)break e;break r;case 1:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(s[(b<<2)+f>>2]=_[0|e],e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(o=1,a>>>0>=t>>>0)break e;break r;case 2:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(s[(b<<2)+f>>2]=u[e>>1],e=e+2|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(o=1,a>>>0>=t>>>0)break e;break r;case 3:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(s[(b<<2)+f>>2]=l[e>>1],e=e+2|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(o=1,a>>>0>=t>>>0)break e;break r;case 4:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(s[(b<<2)+f>>2]=s[e>>2],e=e+4|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(o=1,a>>>0>=t>>>0)break e;break r;case 5:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)return 0;if((0|(a=s[e>>2]))<0)break e;if(s[(b<<2)+f>>2]=a,e=e+4|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(o=1,a>>>0>=t>>>0)break e;break r;case 6:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,k=s[a+4>>2];;){if(e>>>0>=k>>>0)break e;if(A=s[e+4>>2],(a=s[e>>2])- -2147483648>>>0<2147483648?A+1|0:A)break e;if(s[(b<<2)+f>>2]=a,e=e+8|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(o=1,a>>>0>=t>>>0)break e;break r;case 7:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(!(k=s[e+4>>2])&(a=s[e>>2])>>>0>2147483647|k)break e;if(s[(b<<2)+f>>2]=a,e=e+8|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(o=1,a>>>0>=t>>>0)break e;break r;case 8:f:{a:if((i&=255)>>>0>(a=_[r+24|0])>>>0?a:i){if(a=s[r>>2],b=o=s[a>>2],t=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),b=(e=e+t|0)+b|0,a=(t=s[a+4>>2])-o|0,!_[r+32|0]){if(o=0,(0|e)>=(0|a))break f;for(e=0;;){if((m=y[b>>2])>=v(2147483648)|m<v(-2147483648)|m!=m)break f;if((R=v(h(m)))==v(1/0))break f;if(a=(e<<2)+f|0,n=R<v(2147483648)?~~m:-2147483648,s[a>>2]=n,(e=e+1|0)>>>0>=(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0)break a;if(!(t>>>0>(b=b+4|0)>>>0))break}break f}if(o=0,(0|e)>=(0|a))break f;for(e=0;;){if((m=y[b>>2])>=v(2147483648)|m<v(-2147483648)|v(h(m))==v(1/0)|m!=m)break f;if(m<v(0)|m>v(1))break f;if(a=(e<<2)+f|0,p=G(2147483647*+m+.5),n=h(p)<2147483648?~~p:-2147483648,s[a>>2]=n,(e=e+1|0)>>>0>=(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0)break a;if(!(t>>>0>(b=b+4|0)>>>0))break}break f}o=1,i>>>0<=a>>>0||Ge((a<<2)+f|0,0,i-a<<2)}return o;case 9:f:{a:if((i&=255)>>>0>(a=_[r+24|0])>>>0?a:i){if(a=s[r>>2],b=o=s[a>>2],t=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),b=(e=e+t|0)+b|0,a=(t=s[a+4>>2])-o|0,!_[r+32|0]){if(o=0,(0|e)>=(0|a))break f;for(e=0;;){if((p=d[b>>3])>=2147483647|p<-2147483648|p!=p)break f;if((N=h(p))==1/0)break f;if(n=N<2147483648?~~p:-2147483648,s[(a=(e<<2)+f|0)>>2]=n,(e=e+1|0)>>>0>=(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0)break a;if(!(t>>>0>(b=b+8|0)>>>0))break}break f}if(o=0,(0|e)>=(0|a))break f;for(e=0;;){if((p=d[b>>3])>=2147483647|p<-2147483648|h(p)==1/0|p!=p)break f;if(p<0|p>1)break f;if(a=(e<<2)+f|0,p=G(2147483647*p+.5),n=h(p)<2147483648?~~p:-2147483648,s[a>>2]=n,(e=e+1|0)>>>0>=(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0)break a;if(!(t>>>0>(b=b+8|0)>>>0))break}break f}o=1,i>>>0<=a>>>0||Ge((a<<2)+f|0,0,i-a<<2)}return o;case 10:break i;default:break e}if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(s[(b<<2)+f>>2]=_[0|e],e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}o=1,a>>>0>=t>>>0||Ge((a<<2)+f|0,0,(255&i)-a<<2)}return o}return Ge((a<<2)+f|0,0,(255&i)-a<<2),1}function rr(r,e,i,f){var a=0,t=0,b=0,A=0,n=0,o=0,k=0,p=0,m=v(0);r:{e:if(f){i:switch(s[r+28>>2]-1|0){case 0:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)return 0;if((0|(a=c[0|e]))<0)break e;if(u[(b<<1)+f>>1]=255&a,e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(p=1,a>>>0>=t>>>0)break e;break r;case 1:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(u[(b<<1)+f>>1]=_[0|e],e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(p=1,a>>>0>=t>>>0)break e;break r;case 2:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)return 0;if((0|(a=u[e>>1]))<0)break e;if(u[(b<<1)+f>>1]=a,e=e+2|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(p=1,a>>>0>=t>>>0)break e;break r;case 3:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(u[(b<<1)+f>>1]=l[e>>1],e=e+2|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(p=1,a>>>0>=t>>>0)break e;break r;case 4:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if((a=s[e>>2])>>>0>65535)break e;if(u[(b<<1)+f>>1]=a,e=e+4|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(p=1,a>>>0>=t>>>0)break e;break r;case 5:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if((a=s[e>>2])>>>0>65535)break e;if(u[(b<<1)+f>>1]=a,e=e+4|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(p=1,a>>>0>=t>>>0)break e;break r;case 6:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(!(k=s[e+4>>2])&(a=s[e>>2])>>>0>65535|k)break e;if(u[(b<<1)+f>>1]=a,e=e+8|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(p=1,a>>>0>=t>>>0)break e;break r;case 7:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(!(k=s[e+4>>2])&(a=s[e>>2])>>>0>65535|k)break e;if(u[(b<<1)+f>>1]=a,e=e+8|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(p=1,a>>>0>=t>>>0)break e;break r;case 8:f:{a:if((i&=255)>>>0>(a=_[r+24|0])>>>0?a:i){if(a=s[r>>2],b=p=s[a>>2],t=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),b=(e=e+t|0)+b|0,a=(t=s[a+4>>2])-p|0,!_[r+32|0]){if(p=0,(0|e)>=(0|a))break f;for(e=0;;){if((m=y[b>>2])>=v(65535)|m<v(0)|v(h(m))==v(1/0)|m!=m)break f;if(a=(e<<1)+f|0,n=m<v(4294967296)&m>=v(0)?~~m>>>0:0,u[a>>1]=n,(e=e+1|0)>>>0>=(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0)break a;if(!(t>>>0>(b=b+4|0)>>>0))break}break f}if(p=0,(0|e)>=(0|a))break f;for(e=0;;){if((m=y[b>>2])>=v(65535)|m<v(0)|v(h(m))==v(1/0)|m!=m)break f;if(m>v(1))break f;if(a=(e<<1)+f|0,n=(o=G(65535*+m+.5))<4294967296&o>=0?~~o>>>0:0,u[a>>1]=n,(e=e+1|0)>>>0>=(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0)break a;if(!(t>>>0>(b=b+4|0)>>>0))break}break f}p=1,i>>>0<=a>>>0||Ge((a<<1)+f|0,0,i-a<<1)}return p;case 9:f:{a:if((i&=255)>>>0>(a=_[r+24|0])>>>0?a:i){if(a=s[r>>2],b=p=s[a>>2],t=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),b=(e=e+t|0)+b|0,a=(t=s[a+4>>2])-p|0,!_[r+32|0]){if(p=0,(0|e)>=(0|a))break f;for(e=0;;){if((o=d[b>>3])>=65535|o<0|h(o)==1/0|o!=o)break f;if(n=o<4294967296&o>=0?~~o>>>0:0,u[(a=(e<<1)+f|0)>>1]=n,(e=e+1|0)>>>0>=(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0)break a;if(!(t>>>0>(b=b+8|0)>>>0))break}break f}if(p=0,(0|e)>=(0|a))break f;for(e=0;;){if((o=d[b>>3])>=65535|o<0|h(o)==1/0|o!=o)break f;if(o>1)break f;if(a=(e<<1)+f|0,n=(o=G(65535*o+.5))<4294967296&o>=0?~~o>>>0:0,u[a>>1]=n,(e=e+1|0)>>>0>=(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0)break a;if(!(t>>>0>(b=b+8|0)>>>0))break}break f}p=1,i>>>0<=a>>>0||Ge((a<<1)+f|0,0,i-a<<1)}return p;case 10:break i;default:break e}if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],k=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+k|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(u[(b<<1)+f>>1]=_[0|e],e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}p=1,a>>>0>=t>>>0||Ge((a<<1)+f|0,0,(255&i)-a<<1)}return p}return Ge((a<<1)+f|0,0,(255&i)-a<<1),1}function er(r,e,i,f){var a=0,t=0,b=0,A=0,n=0,o=0,k=v(0),p=0,m=0,R=v(0),Z=0;r:if(f){e:{i:switch(s[r+28>>2]-1|0){case 0:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],n=s[r+48>>2],o=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break r;if(a=(b<<3)+f|0,n=c[0|e],s[a>>2]=n,s[a+4>>2]=n>>31,e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(a>>>0>=t>>>0)break r;f=(a<<3)+f|0,r=(255&i)-a|0;break e;case 1:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],n=s[r+48>>2],o=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break r;if(s[(a=(b<<3)+f|0)>>2]=_[0|e],s[a+4>>2]=0,e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(a>>>0>=t>>>0)break r;f=(a<<3)+f|0,r=(255&i)-a|0;break e;case 2:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],n=s[r+48>>2],o=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break r;if(a=(b<<3)+f|0,n=u[e>>1],s[a>>2]=n,s[a+4>>2]=n>>31,e=e+2|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(a>>>0>=t>>>0)break r;f=(a<<3)+f|0,r=(255&i)-a|0;break e;case 3:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],n=s[r+48>>2],o=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break r;if(s[(a=(b<<3)+f|0)>>2]=l[e>>1],s[a+4>>2]=0,e=e+2|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(a>>>0>=t>>>0)break r;f=(a<<3)+f|0,r=(255&i)-a|0;break e;case 4:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],n=s[r+48>>2],o=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break r;if(a=(b<<3)+f|0,n=s[e>>2],s[a>>2]=n,s[a+4>>2]=n>>31,e=e+4|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(a>>>0>=t>>>0)break r;f=(a<<3)+f|0,r=(255&i)-a|0;break e;case 5:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],n=s[r+48>>2],o=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break r;if(s[(a=(b<<3)+f|0)>>2]=s[e>>2],s[a+4>>2]=0,e=e+4|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(a>>>0>=t>>>0)break r;f=(a<<3)+f|0,r=(255&i)-a|0;break e;case 6:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],n=s[r+48>>2],o=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break r;if(n=s[e+4>>2],s[(a=(b<<3)+f|0)>>2]=s[e>>2],s[a+4>>2]=n,e=e+8|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(a>>>0>=t>>>0)break r;f=(a<<3)+f|0,r=(255&i)-a|0;break e;case 7:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],n=s[r+48>>2],o=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break r;if(a=s[e>>2],(0|(n=s[e+4>>2]))<0)break r;if(s[(o=(b<<3)+f|0)>>2]=a,s[o+4>>2]=n,e=e+8|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(a>>>0>=t>>>0)break r;f=(a<<3)+f|0,r=(255&i)-a|0;break e;case 8:f:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t){if(_[r+32|0])break r;if(a=s[r+48>>2],o=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=e+a|0,a=s[r>>2],(0|e)>=((n=s[a+4>>2])-(a=s[a>>2])|0))break r;for(b=e+a|0,A=255&i,e=0;;){if((k=y[b>>2])>=v(0x8000000000000000)|k<v(-0x8000000000000000)|k!=k)break r;if((R=v(h(k)))==v(1/0))break r;if(a=(e<<3)+f|0,R<v(0x8000000000000000)?(o=v(h(k))>=v(1)?~~(k>v(0)?v(N(v(G(v(k*v(2.3283064365386963e-10)))),v(4294967296))):v(U(v(v(k-v(~~k>>>0>>>0))*v(2.3283064365386963e-10)))))>>>0:0,m=~~k>>>0):(o=-2147483648,m=0),s[a>>2]=m,s[a+4>>2]=o,(e=e+1|0)>>>0>=((a=_[r+24|0])>>>0<A>>>0?a:A)>>>0)break f;if(!(n>>>0>(b=b+4|0)>>>0))break}break r}if(a>>>0>=t>>>0)break r;f=(a<<3)+f|0,r=(255&i)-a|0;break e;case 9:f:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t){if(_[r+32|0])break r;if(a=s[r+48>>2],o=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=e+a|0,a=s[r>>2],(0|e)>=((n=s[a+4>>2])-(a=s[a>>2])|0))break r;for(b=e+a|0,A=255&i,e=0;;){if((p=d[b>>3])>=0x8000000000000000|p<-0x8000000000000000|p!=p)break r;if((Z=h(p))==1/0)break r;if(a=(e<<3)+f|0,Z<0x8000000000000000?(o=h(p)>=1?~~(p>0?N(G(2.3283064365386963e-10*p),4294967295):U(2.3283064365386963e-10*(p-+(~~p>>>0>>>0))))>>>0:0,m=~~p>>>0):(o=-2147483648,m=0),s[a>>2]=m,s[a+4>>2]=o,(e=e+1|0)>>>0>=((a=_[r+24|0])>>>0<A>>>0?a:A)>>>0)break f;if(!(n>>>0>(b=b+8|0)>>>0))break}break r}if(a>>>0>=t>>>0)break r;f=(a<<3)+f|0,r=(255&i)-a|0;break e;case 10:break i;default:break r}if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],n=s[r+48>>2],o=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break r;if(s[(a=(b<<3)+f|0)>>2]=_[0|e],s[a+4>>2]=0,e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(a>>>0>=t>>>0)break r;f=(a<<3)+f|0,r=(255&i)-a|0}Ge(f,0,r<<3)}}function ir(r,e,i,f){var a=0,t=0,b=0,A=0,n=0,o=0,k=0,p=0,m=v(0);r:{e:if(f){i:switch(s[r+28>>2]-1|0){case 0:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],p=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+p|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(s[(b<<2)+f>>2]=c[0|e],e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 1:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],p=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+p|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(s[(b<<2)+f>>2]=_[0|e],e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 2:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],p=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+p|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(s[(b<<2)+f>>2]=u[e>>1],e=e+2|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 3:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],p=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+p|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(s[(b<<2)+f>>2]=l[e>>1],e=e+2|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 4:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],p=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+p|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(s[(b<<2)+f>>2]=s[e>>2],e=e+4|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 5:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],p=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+p|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(s[(b<<2)+f>>2]=s[e>>2],e=e+4|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 6:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],p=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+p|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(a=s[e>>2],s[e+4>>2])break e;if(s[(b<<2)+f>>2]=a,e=e+8|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 7:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],p=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+p|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(a=s[e>>2],s[e+4>>2])break e;if(s[(b<<2)+f>>2]=a,e=e+8|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 8:f:{a:if((i&=255)>>>0>(a=_[r+24|0])>>>0?a:i){if(a=s[r>>2],b=k=s[a>>2],t=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),b=(e=e+t|0)+b|0,a=(t=s[a+4>>2])-k|0,!_[r+32|0]){if(k=0,(0|e)>=(0|a))break f;for(e=0;;){if((m=y[b>>2])>=v(4294967296)|m<v(0)|v(h(m))==v(1/0)|m!=m)break f;if(a=(e<<2)+f|0,n=m<v(4294967296)&m>=v(0)?~~m>>>0:0,s[a>>2]=n,(e=e+1|0)>>>0>=(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0)break a;if(!(t>>>0>(b=b+4|0)>>>0))break}break f}if(k=0,(0|e)>=(0|a))break f;for(e=0;;){if((m=y[b>>2])>=v(4294967296)|m<v(0)|v(h(m))==v(1/0)|m!=m)break f;if(m>v(1))break f;if(a=(e<<2)+f|0,n=(o=G(4294967295*+m+.5))<4294967296&o>=0?~~o>>>0:0,s[a>>2]=n,(e=e+1|0)>>>0>=(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0)break a;if(!(t>>>0>(b=b+4|0)>>>0))break}break f}k=1,i>>>0<=a>>>0||Ge((a<<2)+f|0,0,i-a<<2)}return k;case 9:f:{a:if((i&=255)>>>0>(a=_[r+24|0])>>>0?a:i){if(a=s[r>>2],b=k=s[a>>2],t=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),b=(e=e+t|0)+b|0,a=(t=s[a+4>>2])-k|0,!_[r+32|0]){if(k=0,(0|e)>=(0|a))break f;for(e=0;;){if((o=d[b>>3])>=4294967295|o<0|h(o)==1/0|o!=o)break f;if(n=o<4294967296&o>=0?~~o>>>0:0,s[(a=(e<<2)+f|0)>>2]=n,(e=e+1|0)>>>0>=(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0)break a;if(!(t>>>0>(b=b+8|0)>>>0))break}break f}if(k=0,(0|e)>=(0|a))break f;for(e=0;;){if((o=d[b>>3])>=4294967295|o<0|h(o)==1/0|o!=o)break f;if(o>1)break f;if(a=(e<<2)+f|0,n=(o=G(4294967295*o+.5))<4294967296&o>=0?~~o>>>0:0,s[a>>2]=n,(e=e+1|0)>>>0>=(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0)break a;if(!(t>>>0>(b=b+8|0)>>>0))break}break f}k=1,i>>>0<=a>>>0||Ge((a<<2)+f|0,0,i-a<<2)}return k;case 10:break i;default:break e}if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],A=s[a>>2],p=s[r+48>>2],n=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+p|0)+A|0,A=s[a+4>>2];;){if(e>>>0>=A>>>0)break e;if(s[(b<<2)+f>>2]=_[0|e],e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}k=1,a>>>0>=t>>>0||Ge((a<<2)+f|0,0,(255&i)-a<<2)}return k}return Ge((a<<2)+f|0,0,(255&i)-a<<2),1}function fr(r,e){var i=0,f=0,a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0;r:{e:{i:{f:{a:if(s[r+92>>2]!=s[r+88>>2]){if((0|(i=s[r+52>>2]))==s[r+56>>2]){if((t=(f=(b=i-(A=s[r+48>>2])|0)>>2)+1|0)>>>0>=1073741824)break r;if(a=b>>>1|0,b=b>>>0>=2147483644?1073741823:t>>>0<a>>>0?a:t){if(b>>>0>=1073741824)break f;a=mf(b<<2)}else a=0;if(s[(t=a+(f<<2)|0)>>2]=e,f=t+4|0,(0|i)!=(0|A))for(;i=i-4|0,s[(t=t-4|0)>>2]=s[i>>2],(0|i)!=(0|A););s[r+56>>2]=a+(b<<2),s[r+52>>2]=f,s[r+48>>2]=t,A&&mr(A)}else s[i>>2]=e,s[r+52>>2]=i+4;s[r+84>>2]=0,i=-1,a=-1;t:if(-1!=(0|e)){if(f=s[r+4>>2],-1!=(0|(a=((a=e+1|0)>>>0)%3|0?a:e-2|0))&&(i=s[s[f>>2]+(a<<2)>>2]),(e>>>0)%3|0)u=e-1|0;else if(a=-1,-1==(0|(u=e+2|0)))break t;a=s[s[f>>2]+(u<<2)>>2]}if(o=a>>>3&536870908,f=s[r+36>>2],(b=s[(A=f+(i>>>3&536870908)|0)>>2])&(t=1<<i)||(s[A>>2]=t|b,zr(t=r+8|0,i,f=-1!=(0|e)?((f=e+1|0)>>>0)%3|0?f:e-2|0:-1),f=s[r+36>>2]),(f=s[(t=f+o|0)>>2])&(i=1<<a)||(s[t>>2]=i|f,i=-1,-1!=(0|e)&&(i=e-1|0,(e>>>0)%3|0||(i=e+2|0)),zr(f=r+8|0,a,i)),i=-1,i=-1!=(0|e)?s[s[s[r+4>>2]>>2]+(e<<2)>>2]:i,t=s[r+36>>2]+(i>>>3&536870908)|0,(f=s[t>>2])&(a=1<<i)||(s[t>>2]=f|a,zr(r+8|0,i,e)),!((0|(f=s[r+84>>2]))>2))for(;;){if(a=m(f,12)+r|0,(0|(e=s[a+52>>2]))==s[a+48>>2]){if(3!=(0|(f=f+1|0)))continue;break a}if(i=s[(e=e-4|0)>>2],s[a+52>>2]=e,s[r+84>>2]=f,-1==(0|i))break a;t=s[r+24>>2];t:if(!(s[t+((e=(i>>>0)/3|0)>>>3&268435452)>>2]>>>e&1)){b:{for(;;){s[(e=((c=(i>>>0)/3|0)>>>3&268435452)+t|0)>>2]=s[e>>2]|1<<c,f=-1;A:{n:{o:{k:{c:{u:{s:{_:{if(f=-1!=(0|i)?s[s[s[r+4>>2]>>2]+(i<<2)>>2]:f,t=s[r+36>>2]+(f>>>3&536870908)|0,!((a=s[t>>2])&(e=1<<f))){if(s[t>>2]=e|a,o=s[(s[s[r+16>>2]+96>>2]+m(c,12)|0)+((i>>>0)%3<<2)>>2],u=s[s[r+20>>2]+4>>2],(0|(t=s[u+4>>2]))==s[u+8>>2]){if((a=(b=(A=t-(k=s[u>>2])|0)>>2)+1|0)>>>0>=1073741824)break _;if(e=A>>>1|0,A=A>>>0>=2147483644?1073741823:e>>>0>a>>>0?e:a){if(A>>>0>=1073741824)break f;a=mf(A<<2)}else a=0;if(s[(e=a+(b<<2)|0)>>2]=o,b=e+4|0,(0|t)!=(0|k))for(;t=t-4|0,s[(e=e-4|0)>>2]=s[t>>2],(0|t)!=(0|k););s[u+8>>2]=a+(A<<2),s[u+4>>2]=b,s[u>>2]=e,k&&mr(k)}else s[t>>2]=o,s[u+4>>2]=t+4;if(k=s[r+12>>2],(0|(t=s[k+4>>2]))==s[k+8>>2]){if((a=(b=(A=t-(o=s[k>>2])|0)>>2)+1|0)>>>0>=1073741824)break s;if(e=A>>>1|0,A=A>>>0>=2147483644?1073741823:e>>>0>a>>>0?e:a){if(A>>>0>=1073741824)break f;a=mf(A<<2)}else a=0;if(s[(e=a+(b<<2)|0)>>2]=i,b=e+4|0,(0|t)!=(0|o))for(;t=t-4|0,s[(e=e-4|0)>>2]=s[t>>2],(0|t)!=(0|o););s[k+8>>2]=a+(A<<2),s[k+4>>2]=b,s[k>>2]=e,o&&mr(o)}else s[t>>2]=i,s[k+4>>2]=t+4;e=s[r+12>>2],s[s[e+12>>2]+(f<<2)>>2]=s[e+24>>2],s[e+24>>2]=s[e+24>>2]+1}if(-1==(0|i))break b;b=s[r+4>>2],t=-1,-1!=(0|(e=((e=i+1|0)>>>0)%3|0?e:i-2|0))&&(t=s[s[b+12>>2]+(e<<2)>>2]);l:{if((0|m(c,3))==(0|i)){if(f=i+2|0,i=-1,-1==(0|f))break l}else f=i-1|0;i=s[s[b+12>>2]+(f<<2)>>2]}if(f=-1==(0|i),a=(i>>>0)/3|0,-1!=(0|t)){if(e=(t>>>0)/3|0,e=s[s[r+24>>2]+(e>>>3&268435452)>>2]&1<<e,f)break u;u=!!(0|e);break c}if(u=1,!f)break c;break b}ha(),n()}ha(),n()}if(!e)break k;break b}if(e=f?-1:a,!(s[s[r+24>>2]+(e>>>3&536870908)>>2]>>>e&1)){if(c=0,e=s[s[b>>2]+(i<<2)>>2],s[s[r+36>>2]+(e>>>3&536870908)>>2]>>>e&1||(e=s[r+88>>2]+(e<<2)|0,a=s[e>>2],s[e>>2]=a+1,c=(0|a)<=0?2:1),s[r+84>>2]>=(0|c)&u)break n;if(k=m(c,12)+r|0,(0|(e=s[k+52>>2]))==s[k+56>>2]){if((b=(f=(A=e-(o=s[k+48>>2])|0)>>2)+1|0)>>>0>=1073741824)break i;if(a=A>>>1|0,b=A>>>0>=2147483644?1073741823:a>>>0>b>>>0?a:b){if(b>>>0>=1073741824)break f;a=mf(b<<2)}else a=0;if(s[(f=a+(f<<2)|0)>>2]=i,i=f+4|0,(0|e)!=(0|o))for(;e=e-4|0,s[(f=f-4|0)>>2]=s[e>>2],(0|e)!=(0|o););s[k+48>>2]=f,s[k+52>>2]=i,s[k+56>>2]=a+(b<<2),o&&mr(o)}else s[e>>2]=i,s[k+52>>2]=e+4;s[r+84>>2]<=(0|c)||(s[r+84>>2]=c)}if(u)break b;if(i=-1,-1==(0|t))break o}i=s[s[s[r+4>>2]>>2]+(t<<2)>>2]}if(e=0,s[s[r+36>>2]+(i>>>3&536870908)>>2]>>>i&1||(e=s[r+88>>2]+(i<<2)|0,i=s[e>>2],s[e>>2]=i+1,e=(0|i)<=0?2:1),s[r+84>>2]<(0|e))break A;i=t}t=s[r+24>>2];continue}break}if(c=m(e,12)+r|0,(0|(i=s[c+52>>2]))==s[c+56>>2]){if((b=(f=(A=i-(o=s[c+48>>2])|0)>>2)+1|0)>>>0>=1073741824)break e;if(a=A>>>1|0,b=A>>>0>=2147483644?1073741823:a>>>0>b>>>0?a:b){if(b>>>0>=1073741824)break f;a=mf(b<<2)}else a=0;if(s[(f=a+(f<<2)|0)>>2]=t,t=f+4|0,(0|i)!=(0|o))for(;i=i-4|0,s[(f=f-4|0)>>2]=s[i>>2],(0|i)!=(0|o););s[c+48>>2]=f,s[c+52>>2]=t,s[c+56>>2]=a+(b<<2),o&&mr(o)}else s[i>>2]=t,s[c+52>>2]=i+4;if((0|(f=s[r+84>>2]))<=(0|e))break t;s[r+84>>2]=e,f=e;break t}f=s[r+84>>2]}if(!((0|f)<3))break}}return 1}Df(),n()}ha(),n()}ha(),n()}ha(),n()}function ar(r,e){e|=0;var i,f,a=0,t=0,b=0,A=0,n=0,o=0,k=0,u=0,p=0,y=0,d=0,v=0,h=0;Q=i=Q-96|0,f=s[(r|=0)+4>>2],t=s[f+32>>2],k=s[t+8>>2];r:if(!((0|(b=u=s[t+12>>2]))<=(0|(a=s[t+20>>2]))&(A=s[t+16>>2])>>>0>=k>>>0|(0|a)>(0|b)||(v=s[t>>2],n=_[v+A|0],b=(o=A+1|0)?a:a+1|0,s[t+16>>2]=o,s[t+20>>2]=b,(0|b)>=(0|u)&o>>>0>=k>>>0|(0|b)>(0|u)))){d=_[o+v|0],b=(o=A+2|0)>>>0<2?a+1|0:a,s[t+16>>2]=o,s[t+20>>2]=b;e:{if((0|(y=n<<24>>24))>=0){if(p=s[r+216>>2],n>>>0>=(s[r+220>>2]-p|0)/144>>>0)break r;if(p=p+m(n,144)|0,s[p>>2]<0)break e;break r}if(s[r+212>>2]>=0)break r;p=r+212|0}s[p>>2]=e;e:{i:{f:{a:{t:{b:{A:{if((65535&((p=l[f+36>>1])<<8|p>>>8))>>>0>=258){if((0|b)>=(0|u)&o>>>0>=k>>>0|(0|b)>(0|u))break r;if(b=_[o+v|0],a=(A=A+3|0)>>>0<3?a+1|0:a,s[t+16>>2]=A,s[t+20>>2]=a,b>>>0>1)break r;if(t=b>>>0<2?b:0,!d)break A;if(!t)break b;break r}if(d)break t;t=0}if((0|y)<0?b=r+184|0:(a=s[r+216>>2]+m(n,144)|0,c[a+100|0]=0,b=a+104|0),1!=(0|t))break f;Q=a=Q-112|0,o=s[s[r+4>>2]+44>>2],t=mf(120),s[t>>2]=12172,s[t+4>>2]=0,s[t+116>>2]=0,s[t+112>>2]=b,s[t+108>>2]=o,s[t+12>>2]=0,s[t+16>>2]=0,s[t+20>>2]=0,s[t+24>>2]=0,s[t+28>>2]=0,s[t+32>>2]=0,s[t+36>>2]=0,s[t+40>>2]=0,s[t+44>>2]=0,s[t+48>>2]=0,s[t+52>>2]=0,s[t+56>>2]=0,s[t+60>>2]=0,s[t+8>>2]=12384,s[(A=t- -64|0)>>2]=0,s[A+4>>2]=0,s[t+72>>2]=0,s[t+76>>2]=0,s[t+80>>2]=0,s[t+84>>2]=0,s[t+88>>2]=0,s[t+104>>2]=0,s[t+96>>2]=0,s[t+100>>2]=0,A=s[r+8>>2],s[a+48>>2]=0,s[a+52>>2]=0,s[a+40>>2]=0,s[a+44>>2]=0,s[(k=a+32|0)>>2]=0,s[k+4>>2]=0,s[a+24>>2]=0,s[a+28>>2]=0,s[(n=a- -64|0)>>2]=0,s[n+4>>2]=0,s[a+72>>2]=0,s[a+76>>2]=0,s[a+80>>2]=0,s[a+84>>2]=0,s[a+88>>2]=0,s[a+104>>2]=0,s[a+16>>2]=0,s[a+20>>2]=0,s[a+56>>2]=0,s[a+60>>2]=0,s[a+8>>2]=12384,s[a+96>>2]=0,s[a+100>>2]=0,s[a+12>>2]=A,n=s[A>>2],u=s[A+4>>2],c[a+111|0]=0,Te(d=k,(u-n>>2>>>0)/3|0,k=a+111|0),n=s[a+12>>2],u=s[n+28>>2],n=s[n+24>>2],c[a+111|0]=0,Te(a+44|0,u-n>>2,k),s[a+28>>2]=t,s[a+24>>2]=o,s[a+20>>2]=b,s[a+16>>2]=A,le(A=t+8|0,b=a+8|0),(0|b)!=(0|A)?(Ve(t+56|0,s[b+48>>2],s[b+52>>2]),Ve(t+68|0,s[b+60>>2],s[b- -64>>2]),Ve(t+80|0,s[b+72>>2],s[b+76>>2]),s[t+92>>2]=s[b+84>>2],Fe(t+96|0,s[b+88>>2],s[b+92>>2])):s[t+92>>2]=s[b+84>>2],s[a+8>>2]=12384,(b=s[a+96>>2])&&(s[a+100>>2]=b,mr(b)),(b=s[a+80>>2])&&(s[a+84>>2]=b,mr(b)),(b=s[a+68>>2])&&(s[a+72>>2]=b,mr(b)),(b=s[a+56>>2])&&(s[a+60>>2]=b,mr(b)),s[a+8>>2]=12620,(b=s[a+44>>2])&&mr(b),(b=s[a+32>>2])&&mr(b),Q=a+112|0;break i}if((0|y)>=0)break a;break r}if((0|y)<0)break r}b=s[r+216>>2],a=s[f+44>>2],t=mf(80),s[t>>2]=12932,s[t+4>>2]=0,s[t+76>>2]=0,s[t+68>>2]=a,s[t+8>>2]=11872,s[t+12>>2]=0,s[t+16>>2]=0,s[t+20>>2]=0,s[t+24>>2]=0,s[t+28>>2]=0,s[t+32>>2]=0,s[t+36>>2]=0,s[t+40>>2]=0,s[t+44>>2]=0,s[t+48>>2]=0,s[t+52>>2]=0,A=(b=b+m(n,144)|0)+104|0,s[t+72>>2]=A,s[t- -64>>2]=0,s[t+56>>2]=0,s[t+60>>2]=0,s[i+24>>2]=a,s[(a=i)+68>>2]=0,s[a+72>>2]=0,s[a+60>>2]=0,s[a+64>>2]=0,s[a+52>>2]=0,s[a+56>>2]=0,s[a+44>>2]=0,s[a+48>>2]=0,s[a+84>>2]=0,s[a+88>>2]=0,s[a+76>>2]=0,s[a+80>>2]=0,s[a+28>>2]=t,o=s[a+28>>2],s[a+8>>2]=s[a+24>>2],s[a+12>>2]=o,s[a+20>>2]=A,A=b+4|0,s[a+16>>2]=A,s[a+36>>2]=0,s[a+40>>2]=0,s[a+32>>2]=11872,b=s[a+20>>2],s[a>>2]=s[a+16>>2],s[a+4>>2]=b,yi(b=a+32|0,A,a),le(a=t+8|0,b),(0|a)!=(0|b)&&Ve(t+56|0,s[b+48>>2],s[b+52>>2]),uf(b);break e}Q=a=Q+-64|0,o=s[s[r+4>>2]+44>>2],t=mf(80),s[t>>2]=12640,s[t+4>>2]=0,s[t+76>>2]=0,s[t+72>>2]=b,s[t+68>>2]=o,s[t+8>>2]=12804,s[t+12>>2]=0,s[t+16>>2]=0,s[t+20>>2]=0,s[t+24>>2]=0,s[t+28>>2]=0,s[t+32>>2]=0,s[t+36>>2]=0,s[t+40>>2]=0,s[t+44>>2]=0,s[t+48>>2]=0,s[t+52>>2]=0,s[t- -64>>2]=0,s[(A=k=t+56|0)>>2]=0,s[A+4>>2]=0,A=s[r+8>>2],s[a+40>>2]=0,s[a+44>>2]=0,s[a+32>>2]=0,s[a+36>>2]=0,s[(n=a+24|0)>>2]=0,s[n+4>>2]=0,s[a+16>>2]=0,s[a+20>>2]=0,s[a+56>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0,s[a+48>>2]=0,s[a+52>>2]=0,s[a>>2]=12804,s[a+4>>2]=A,u=s[A>>2],y=s[A+4>>2],c[a+63|0]=0,Te(d=n,(y-u>>2>>>0)/3|0,n=a+63|0),u=s[a+4>>2],y=s[u+28>>2],u=s[u+24>>2],c[a+63|0]=0,Te(a+36|0,y-u>>2,n),s[a+20>>2]=t,s[a+16>>2]=o,s[a+12>>2]=b,s[a+8>>2]=A,le(t+8|0,a),Ve(k,s[a+48>>2],s[a+52>>2]),s[a>>2]=12804,(b=s[a+48>>2])&&(s[a+52>>2]=b,mr(b)),s[a>>2]=12620,(b=s[a+36>>2])&&mr(b),(b=s[a+24>>2])&&mr(b),Q=a- -64|0}if(!t)break r}t=gi(mf(64),t),a=s[r+4>>2],r=t;e:{i:{if((0|(t=e))>=0){if(o=a+8|0,!((0|(b=(e=s[a+12>>2])-(k=s[a+8>>2])>>2))>(0|t)))if(A=t+1|0,t>>>0>=b>>>0)ve(o,A-b|0);else if(!(b>>>0<=A>>>0)){if((0|(A=k+(A<<2)|0))!=(0|e))for(;b=s[(e=e-4|0)>>2],s[e>>2]=0,b&&Ya[s[s[b>>2]+4>>2]](b),(0|e)!=(0|A););s[a+12>>2]=A}if(a=s[o>>2]+(t<<2)|0,e=s[a>>2],s[a>>2]=r,e)break i;break e}if(e=r,!r)break e}Ya[s[s[e>>2]+4>>2]](e)}h=~t>>>31|0}return Q=i+96|0,0|h}function tr(r){var e,i=0,f=0,a=0,t=0,b=0;Q=e=Q-16|0,s[e+12>>2]=r;r:if(r>>>0<=211)a=s[Ji(14256,14448,e+12|0)>>2];else for(r>>>0>=4294967292&&(V(),n()),a=m(t=(r>>>0)/210|0,210),s[e+8>>2]=r-a,b=Ji(14448,14640,e+8|0)-14448>>2;;){for(a=s[14448+(b<<2)>>2]+a|0,r=5;;){e:if(47!=(0|r)){if((i=s[14256+(r<<2)>>2])>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if(r=r+1|0,(0|m(i,f))!=(0|a))continue}else for(r=211;;){if((i=(a>>>0)/(r>>>0)|0)>>>0<r>>>0)break r;if((0|m(r,i))==(0|a))break e;if((i=r+10|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+12|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+16|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+18|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+22|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+28|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+30|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+36|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+40|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+42|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+46|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+52|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+58|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+60|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+66|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+70|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+72|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+78|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+82|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+88|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+96|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+100|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+102|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+106|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+108|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+112|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+120|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+126|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+130|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+136|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+138|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+142|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+148|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+150|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+156|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+162|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+166|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+168|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+172|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+178|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+180|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+186|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+190|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+192|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+196|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+198|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if((0|m(i,f))==(0|a))break e;if((i=r+208|0)>>>0>(f=(a>>>0)/(i>>>0)|0)>>>0)break r;if(r=r+210|0,(0|m(i,f))==(0|a))break}break}b=(r=48==(0|(a=b+1|0)))?0:a,a=m(t=r+t|0,210)}return Q=e+16|0,a}function br(r,e){var i,f=0,a=0,t=0,b=0,A=0,o=0,k=0,u=0,y=0,d=0,v=0,h=0,R=0;Q=i=Q-16|0;r:{e:{i:{if(_[s[r+4>>2]+36|0]<=1){if(u=-1,f=s[e+20>>2],f=(t=(a=s[e+16>>2])+4|0)>>>0<4?f+1|0:f,A=s[e+12>>2],p[e+8>>2]<t>>>0&(0|A)<=(0|f)|(0|f)>(0|A))break i;a=a+s[e>>2]|0,y=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[i+12>>2]=y,s[e+16>>2]=t,s[e+20>>2]=f}else{if(u=-1,!Wi(1,i+12|0,e))break i;y=s[i+12>>2]}f:{a:{t:{b:{A:if(y){if(f=s[r+8>>2],(s[f+4>>2]-s[f>>2]>>2>>>0)/3>>>0<y>>>0)break i;if((65535&((f=l[s[r+4>>2]+36>>1])<<8|f>>>8))>>>0>=258){n:{for(;;){if(!Wi(1,i+8|0,e))break i;if(f=s[i+8>>2],!Wi(1,i+8|0,e))break i;if((b=f+b|0)>>>0<(f=s[i+8>>2])>>>0)break i;if(A=b-f|0,(0|(f=s[r+40>>2]))==s[r+44>>2]){if((t=(h=(0|(a=f-(d=s[r+36>>2])|0))/12|0)+1|0)>>>0>=357913942)break n;if(f=h<<1,o=h>>>0>=178956970?357913941:f>>>0>t>>>0?f:t){if(o>>>0>=357913942)break e;k=mf(m(o,12))}else k=0;t=k+m(h,12)|0,s[t+4>>2]=b,s[t>>2]=A,f=me(t+m((0|a)/-12|0,12)|0,d,a),s[r+44>>2]=k+m(o,12),s[r+40>>2]=t+12,s[r+36>>2]=f,d&&mr(d)}else s[f+4>>2]=b,s[f>>2]=A,s[r+40>>2]=f+12,y=s[i+12>>2];if(!(y>>>0>(R=R+1|0)>>>0))break}if(u=0,Me(e,0,0),y)for(;;){t=_[e+36|0];o:{k:{if((65535&((f=l[s[r+4>>2]+36>>1])<<8|f>>>8))>>>0<=513){if(!t)break o;if(R=0,(t=(v=(f=s[e+32>>2])>>>3|0)+(A=s[e+24>>2])|0)>>>0>=(a=s[e+28>>2])>>>0?b=f:(t=_[0|t],b=f+1|0,s[e+32>>2]=b,v=b>>>3|0,R=t>>>(7&f)&1),a>>>0>A+v>>>0)break k;break o}if(!t)break o;if(R=0,b=s[e+32>>2],(f=s[e+24>>2]+(b>>>3|0)|0)>>>0>=p[e+28>>2])break o;R=_[0|f]>>>(7&b)&1}s[e+32>>2]=b+1}if(f=s[r+36>>2]+m(u,12)|0,c[f+8|0]=254&_[f+8|0]|1&R,(0|(u=u+1|0))==(0|y))break}c[e+36|0]=0,b=s[e+20>>2],t=0,f=(t=(a=s[e+32>>2]+7|0)>>>0<7?1:t)>>>3|0,a=(t=(7&t)<<29|a>>>3)+s[e+16>>2]|0,f=f+b|0,s[e+16>>2]=a,s[e+20>>2]=a>>>0<t>>>0?f+1|0:f;break A}ha(),n()}for(;;){if(a=s[e+8>>2],A=f=s[e+12>>2],t=f=s[e+20>>2],k=b=(o=s[e+16>>2])+4|0,b>>>0>a>>>0&(0|(f=b>>>0<4?f+1|0:f))>=(0|A)|(0|f)>(0|A))break i;if(d=s[e>>2],h=_[0|(b=d+o|0)]|_[b+1|0]<<8|_[b+2|0]<<16|_[b+3|0]<<24,s[e+16>>2]=k,s[e+20>>2]=f,f=t,a>>>0<(b=o+8|0)>>>0&(0|(f=b>>>0<8?f+1|0:f))>=(0|A)|(0|f)>(0|A))break i;if(k=_[0|(k=k+d|0)]|_[k+1|0]<<8|_[k+2|0]<<16|_[k+3|0]<<24,s[e+16>>2]=b,s[e+20>>2]=f,a>>>0<=b>>>0&(0|f)>=(0|A)|(0|f)>(0|A))break i;if(a=_[b+d|0],t=(f=o+9|0)>>>0<9?t+1|0:t,s[e+16>>2]=f,s[e+20>>2]=t,b=1&a,(0|(f=s[r+40>>2]))==s[r+44>>2]){if((t=(o=(0|(a=f-(d=s[r+36>>2])|0))/12|0)+1|0)>>>0>=357913942)break b;if(f=o<<1,A=o>>>0>=178956970?357913941:f>>>0>t>>>0?f:t){if(A>>>0>=357913942)break e;t=mf(m(A,12))}else t=0;o=t+m(o,12)|0,c[o+8|0]=b,s[o+4>>2]=k,s[o>>2]=h,f=me(o+m((0|a)/-12|0,12)|0,d,a),s[r+44>>2]=t+m(A,12),s[r+40>>2]=o+12,s[r+36>>2]=f,d&&mr(d)}else c[f+8|0]=b,s[f+4>>2]=k,s[f>>2]=h,s[r+40>>2]=f+12,y=s[i+12>>2];if(!(y>>>0>(v=v+1|0)>>>0))break}}if(s[i+8>>2]=0,(f=65535&((f=l[s[r+4>>2]+36>>1])<<8|f>>>8))>>>0<=511){if(u=-1,f=s[e+20>>2],f=(t=(a=s[e+16>>2])+4|0)>>>0<4?f+1|0:f,b=s[e+12>>2],p[e+8>>2]<t>>>0&(0|b)<=(0|f)|(0|f)>(0|b))break i;a=a+s[e>>2]|0,b=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[e+16>>2]=t,s[e+20>>2]=f}else{if(512!=(0|f))break f;if(u=-1,!Wi(1,i+8|0,e))break i;b=s[i+8>>2]}if(!b)break f;if((65535&((f=l[s[r+4>>2]+36>>1])<<8|f>>>8))>>>0<258)break a;for(v=0,y=0;;){if(!Wi(1,i+4|0,e))break i;if(y=s[i+4>>2]+y|0,(0|(f=s[r+52>>2]))==s[r+56>>2]){if((a=(t=(A=f-(k=s[r+48>>2])|0)>>2)+1|0)>>>0>=1073741824)break t;if(f=A>>>1|0,a=A>>>0>=2147483644?1073741823:f>>>0>a>>>0?f:a){if(a>>>0>=1073741824)break e;f=mf(a<<2)}else f=0;s[(t=f+(t<<2)|0)>>2]=y,f=me(f,k,A),s[r+56>>2]=f+(a<<2),s[r+52>>2]=t+4,s[r+48>>2]=f,k&&mr(k)}else s[f>>2]=y,s[r+52>>2]=f+4;if((0|(v=v+1|0))==(0|b))break}break f}ha(),n()}ha(),n()}for(u=0;;){if(f=s[e+20>>2],f=(t=(a=s[e+16>>2])+4|0)>>>0<4?f+1|0:f,A=s[e+12>>2],p[e+8>>2]<t>>>0&(0|A)<=(0|f)|(0|f)>(0|A)){u=-1;break i}if(a=a+s[e>>2]|0,A=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[e+16>>2]=t,s[e+20>>2]=f,(0|(f=s[r+52>>2]))==s[r+56>>2]){if((a=(t=(k=f-(o=s[r+48>>2])|0)>>2)+1|0)>>>0>=1073741824)break r;if(f=k>>>1|0,a=k>>>0>=2147483644?1073741823:f>>>0>a>>>0?f:a){if(a>>>0>=1073741824)break e;f=mf(a<<2)}else f=0;s[(t=f+(t<<2)|0)>>2]=A,f=me(f,o,k),s[r+56>>2]=f+(a<<2),s[r+52>>2]=t+4,s[r+48>>2]=f,o&&mr(o)}else s[f>>2]=A,s[r+52>>2]=f+4;if((0|(u=u+1|0))==(0|b))break}}u=s[e+16>>2]}return Q=i+16|0,u}Df(),n()}ha(),n()}function Ar(r,e,i,f){var a=0,t=0,b=0,A=0,n=0,o=v(0),k=0;r:if(f){e:{i:switch(s[r+28>>2]-1|0){case 0:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],b=s[a>>2],n=s[r+48>>2],e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+b|0,b=s[a+4>>2],n=_[r+32|0];;){if(e>>>0>=b>>>0)break r;if(o=v(c[0|e]),y[(A<<2)+f>>2]=n?v(o/v(127)):o,e=e+1|0,!((A=A+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break r;f=(a<<2)+f|0,r=(255&i)-a|0;break e;case 1:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],b=s[a>>2],n=s[r+48>>2],e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+b|0,b=s[a+4>>2],n=_[r+32|0];;){if(e>>>0>=b>>>0)break r;if(o=v(_[0|e]),y[(A<<2)+f>>2]=n?v(o/v(255)):o,e=e+1|0,!((A=A+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break r;f=(a<<2)+f|0,r=(255&i)-a|0;break e;case 2:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],b=s[a>>2],n=s[r+48>>2],e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+b|0,b=s[a+4>>2],n=_[r+32|0];;){if(e>>>0>=b>>>0)break r;if(o=v(u[e>>1]),y[(A<<2)+f>>2]=n?v(o/v(32767)):o,e=e+2|0,!((A=A+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break r;f=(a<<2)+f|0,r=(255&i)-a|0;break e;case 3:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],b=s[a>>2],n=s[r+48>>2],e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+b|0,b=s[a+4>>2],n=_[r+32|0];;){if(e>>>0>=b>>>0)break r;if(o=v(l[e>>1]),y[(A<<2)+f>>2]=n?v(o/v(65535)):o,e=e+2|0,!((A=A+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break r;f=(a<<2)+f|0,r=(255&i)-a|0;break e;case 4:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],b=s[a>>2],n=s[r+48>>2],e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+b|0,b=s[a+4>>2],n=_[r+32|0];;){if(e>>>0>=b>>>0)break r;if(o=v(s[e>>2]),y[(A<<2)+f>>2]=n?v(o*v(4.656612873077393e-10)):o,e=e+4|0,!((A=A+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break r;f=(a<<2)+f|0,r=(255&i)-a|0;break e;case 5:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],b=s[a>>2],n=s[r+48>>2],e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+b|0,b=s[a+4>>2],n=_[r+32|0];;){if(e>>>0>=b>>>0)break r;if(o=v(p[e>>2]),y[(A<<2)+f>>2]=n?v(o*v(2.3283064365386963e-10)):o,e=e+4|0,!((A=A+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break r;f=(a<<2)+f|0,r=(255&i)-a|0;break e;case 6:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],b=s[a>>2],n=s[r+48>>2],e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+b|0,b=s[a+4>>2],n=_[r+32|0];;){if(e>>>0>=b>>>0)break r;if(o=v(+p[e>>2]+4294967296*+s[e+4>>2]),y[(A<<2)+f>>2]=n?v(o*v(10842021724855044e-35)):o,e=e+8|0,!((A=A+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break r;f=(a<<2)+f|0,r=(255&i)-a|0;break e;case 7:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],b=s[a>>2],n=s[r+48>>2],e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+b|0,b=s[a+4>>2],n=_[r+32|0];;){if(e>>>0>=b>>>0)break r;if(o=v(+p[e>>2]+4294967296*+p[e+4>>2]),y[(A<<2)+f>>2]=n?v(o*v(5.421010862427522e-20)):o,e=e+8|0,!((A=A+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break r;f=(a<<2)+f|0,r=(255&i)-a|0;break e;case 8:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],b=s[a>>2],n=s[r+48>>2],e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+b|0,b=s[a+4>>2];;){if(e>>>0>=b>>>0)break r;if(y[(A<<2)+f>>2]=y[e>>2],e=e+4|0,!((A=A+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break r;f=(a<<2)+f|0,r=(255&i)-a|0;break e;case 9:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],b=s[a>>2],n=s[r+48>>2],e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+b|0,b=s[a+4>>2];;){if(e>>>0>=b>>>0)break r;if(y[(A<<2)+f>>2]=d[e>>3],e=e+8|0,!((A=A+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break r;f=(a<<2)+f|0,r=(255&i)-a|0;break e;case 10:break i;default:break r}if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[r>>2],b=s[a>>2],n=s[r+48>>2],e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+b|0,b=s[a+4>>2];;){if(e>>>0>=b>>>0)break r;if(y[(A<<2)+f>>2]=_[0|e]?v(1):v(0),e=e+1|0,!((A=A+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break r;f=(a<<2)+f|0,r=(255&i)-a|0}Ge(f,0,r<<2)}return k}function nr(r,e,i,f){var a=0,t=0,b=0,A=0,n=0,o=0,k=0,u=v(0),m=v(0);r:{e:if(f){i:switch(s[r+28>>2]-1|0){case 0:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if(c[f+b|0]=_[0|e],e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 1:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)return 0;if((0|(a=c[0|e]))<0)break e;if(c[f+b|0]=a,e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 2:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if(((a=l[e>>1])+128&65535)>>>0>255)break e;if(c[f+b|0]=a,e=e+2|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 3:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if((a=l[e>>1])>>>0>127)break e;if(c[f+b|0]=a,e=e+2|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 4:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if((a=s[e>>2])+128>>>0>255)break e;if(c[f+b|0]=a,e=e+4|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 5:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if((a=s[e>>2])>>>0>127)break e;if(c[f+b|0]=a,e=e+4|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 6:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if(n=s[e+4>>2],!(n=(A=(a=s[e>>2])+128|0)>>>0<128?n+1|0:n)&A>>>0>255|n)break e;if(c[f+b|0]=a,e=e+8|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 7:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if(!(n=s[e+4>>2])&(a=s[e>>2])>>>0>127|n)break e;if(c[f+b|0]=a,e=e+8|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 8:f:{if((i&=255)>>>0>(a=_[r+24|0])>>>0?a:i)for(a=s[s[r>>2]>>2],t=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+t|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break f;if((u=y[e>>2])>=v(127)|u<v(-128)|u!=u)break f;if((m=v(h(u)))==v(1/0))break f;a=f+b|0;a:{t:{if(_[r+32|0]){if(u<v(0)|u>v(1))break f;if(o=G(127*+u+.5),!(h(o)<2147483648))break t;A=~~o;break a}if(m<v(2147483648)){A=~~u;break a}}A=-2147483648}if(c[0|a]=A,e=e+4|0,!((b=b+1|0)>>>0<(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0))break}k=1,i>>>0<=a>>>0||Ge(f+a|0,0,i-a|0)}return k;case 9:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if((o=d[e>>3])>=127|o<-128|h(o)==1/0|o!=o)break e;if(a=f+b|0,_[r+32|0]){if(o<0|o>1)break e;o=G(127*o+.5)}if(A=h(o)<2147483648?~~o:-2147483648,c[0|a]=A,e=e+8|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 10:break i;default:break e}if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if(c[f+b|0]=_[0|e],e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}k=1,a>>>0>=t>>>0||Ge(f+a|0,0,(255&i)-a|0)}return k}return Ge(f+a|0,0,(255&i)-a|0),1}function or(r,e,i,f){var a=0,t=0,b=0,A=0,n=0,o=0,k=0,u=v(0);r:{e:if(f){i:switch(s[r+28>>2]-1|0){case 0:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)return 0;if((0|(a=c[0|e]))<0)break e;if(c[f+b|0]=a,e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 1:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if(c[f+b|0]=_[0|e],e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 2:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if((a=l[e>>1])>>>0>255)break e;if(c[f+b|0]=a,e=e+2|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 3:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if((a=l[e>>1])>>>0>255)break e;if(c[f+b|0]=a,e=e+2|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 4:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if((a=s[e>>2])>>>0>255)break e;if(c[f+b|0]=a,e=e+4|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 5:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if((a=s[e>>2])>>>0>255)break e;if(c[f+b|0]=a,e=e+4|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 6:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if(!(n=s[e+4>>2])&(a=s[e>>2])>>>0>255|n)break e;if(c[f+b|0]=a,e=e+8|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 7:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if(!(n=s[e+4>>2])&(a=s[e>>2])>>>0>255|n)break e;if(c[f+b|0]=a,e=e+8|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 8:f:{if((i&=255)>>>0>(a=_[r+24|0])>>>0?a:i)for(a=s[s[r>>2]>>2],t=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+t|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break f;if((u=y[e>>2])>=v(255)|u<v(0)|v(h(u))==v(1/0)|u!=u)break f;a=f+b|0;a:{t:{if(_[r+32|0]){if(u>v(1))break f;if(!((o=G(255*+u+.5))<4294967296&o>=0))break t;A=~~o>>>0;break a}if(u<v(4294967296)&u>=v(0)){A=~~u>>>0;break a}}A=0}if(c[0|a]=A,e=e+4|0,!((b=b+1|0)>>>0<(i>>>0>(a=_[r+24|0])>>>0?a:i)>>>0))break}k=1,i>>>0<=a>>>0||Ge(f+a|0,0,i-a|0)}return k;case 9:if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if((o=d[e>>3])>=255|o<0|h(o)==1/0|o!=o)break e;if(a=f+b|0,_[r+32|0]){if(o>1)break e;o=G(255*o+.5)}if(A=o<4294967296&o>=0?~~o>>>0:0,c[0|a]=A,e=e+8|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}if(k=1,a>>>0>=t>>>0)break e;break r;case 10:break i;default:break e}if((a=_[r+24|0])>>>0<(t=255&i)>>>0?a:t)for(a=s[s[r>>2]>>2],n=s[r+48>>2],A=e=Ki(s[r+40>>2],s[r+44>>2],e,0),e=(e=e+n|0)+a|0;;){if(p[s[r>>2]+4>>2]<=e>>>0)break e;if(c[f+b|0]=_[0|e],e=e+1|0,!((b=b+1|0)>>>0<((a=_[r+24|0])>>>0<t>>>0?a:t)>>>0))break}k=1,a>>>0>=t>>>0||Ge(f+a|0,0,(255&i)-a|0)}return k}return Ge(f+a|0,0,(255&i)-a|0),1}function kr(r,e,i){var f,a=0,t=0,b=0,A=0,n=0,o=0,k=0,c=0,u=0,p=0,y=0,d=0,v=0,h=0,R=0,N=0;Q=f=Q+-64|0,s[f+56>>2]=0,s[f+48>>2]=0,s[f+52>>2]=0,s[f+40>>2]=0,s[f+44>>2]=0,s[f+32>>2]=0,s[f+36>>2]=0,s[f+24>>2]=0,s[f+28>>2]=0,s[f+16>>2]=0,s[f+20>>2]=0,s[f+8>>2]=0,s[f+12>>2]=0,o=f+8|0;r:{e:if(a=l[e+38>>1]){if(a>>>0<=511){if(A=s[e+8>>2],b=s[e+12>>2],t=s[e+20>>2],A>>>0<(n=(a=s[e+16>>2])+4|0)>>>0&(0|(t=n>>>0<4?t+1|0:t))>=(0|b)|(0|t)>(0|b))break e;a=a+s[e>>2]|0,c=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[o+12>>2]=c,t=s[e+20>>2],t=(a=s[e+16>>2]+4|0)>>>0<4?t+1|0:t,s[e+16>>2]=a,s[e+20>>2]=t}else{if(!Ri(1,o+12|0,e))break e;a=s[e+16>>2],t=s[e+20>>2],c=s[o+12>>2]}if(!((n=(b=s[e+8>>2])-a|0)>>>0<c>>>6>>>0&(0|(a=s[e+12>>2]-((a>>>0>b>>>0)+t|0)|0))<=0|(0|a)<0)){if(t=s[o>>2],(a=s[o+4>>2]-t>>2)>>>0<c>>>0?(ai(o,c-a|0),c=s[o+12>>2]):a>>>0<=c>>>0||(s[o+4>>2]=t+(c<<2)),n=1,!c)break r;for(a=s[e+16>>2],t=s[e+20>>2],h=s[o>>2],k=s[e+8>>2],y=s[e+12>>2],A=0;;){if(n=0,(0|t)>=(0|y)&a>>>0>=k>>>0|(0|t)>(0|y))break r;n=s[e>>2],d=_[n+a|0],t=(a=a+1|0)?t:t+1|0,s[e+16>>2]=a,s[e+20>>2]=t,b=d>>>2|0,u=0;i:{f:{a:{t:switch(0|(R=3&d)){case 0:break f;case 3:break t;default:break a}if(n=0,(b=b+A|0)>>>0>=c>>>0)break r;Ge(h+(A<<2)|0,0,4+(252&d)|0),A=b;break i}for(;;){if((0|a)==(0|k)&(0|t)==(0|y))break e;if(c=_[a+n|0],t=(a=a+1|0)?t:t+1|0,s[e+16>>2]=a,s[e+20>>2]=t,b|=c<<(u<<3|6),(0|R)==(0|(u=u+1|0)))break}}s[h+(A<<2)>>2]=b}if(!((c=s[o+12>>2])>>>0>(A=A+1|0)>>>0))break}if(a=o+16|0,y=s[o>>2],b=s[o+16>>2],(t=s[o+20>>2]-b|0)>>>0<=4194303?ai(a,1048576-(t>>>2|0)|0):4194304!=(0|t)&&(s[o+20>>2]=b+4194304),A=s[(t=o+28|0)>>2],(b=s[o+32>>2]-A>>3)>>>0<c>>>0)Ai(t,c-b|0),A=s[t>>2];else if(b>>>0>c>>>0&&(s[o+32>>2]=(c<<3)+A),!c)break e;for(k=s[a>>2],a=0,n=0;;){if(o=s[(t=y+(a<<2)|0)>>2],b=n,s[(u=(a<<3)+A|0)+4>>2]=b,s[u>>2]=o,(n=(t=s[t>>2])+b|0)>>>0>1048576)break e;if(!(b>>>0>=n>>>0)){if(u=0,o=7&t)for(;s[k+(b<<2)>>2]=a,b=b+1|0,(0|o)!=(0|(u=u+1|0)););if(!(t-1>>>0<=6))for(;s[(t=k+(b<<2)|0)>>2]=a,s[t+28>>2]=a,s[t+24>>2]=a,s[t+20>>2]=a,s[t+16>>2]=a,s[t+12>>2]=a,s[t+8>>2]=a,s[t+4>>2]=a,(0|n)!=(0|(b=b+8|0)););}if((0|c)==(0|(a=a+1|0)))break}p=1048576==(0|n)}}n=p}if(!(!n|(s[f+20>>2]?0:r))){n=0,Q=p=Q-16|0;r:{if(l[e+38>>1]<=511){if(A=s[e+8>>2],o=b=s[e+12>>2],t=s[e+20>>2],(a=(k=s[e+16>>2])+8|0)>>>0>A>>>0&(0|(t=a>>>0<8?t+1|0:t))>=(0|b)|(0|t)>(0|b))break r;k=k+s[e>>2]|0,b=_[0|k]|_[k+1|0]<<8|_[k+2|0]<<16|_[k+3|0]<<24,k=_[k+4|0]|_[k+5|0]<<8|_[k+6|0]<<16|_[k+7|0]<<24,s[e+16>>2]=a,s[e+20>>2]=t}else{if(!_i(1,p+8|0,e))break r;a=s[e+16>>2],t=s[e+20>>2],A=s[e+8>>2],o=s[e+12>>2],b=s[p+8>>2],k=s[p+12>>2]}if(c=A-a|0,!((0|(A=o-((a>>>0>A>>>0)+t|0)|0))==(0|k)&b>>>0>c>>>0|A>>>0<k>>>0||(t=t+k|0,t=(A=a+b|0)>>>0<b>>>0?t+1|0:t,s[e+16>>2]=A,s[e+20>>2]=t,(0|b)<=0))){e=s[e>>2]+a|0,s[f+48>>2]=e;e:if((A=_[0|(t=(a=b-1|0)+e|0)])>>>0<=63)s[f+52>>2]=a,e=63&_[0|t];else{i:switch((A>>>6|0)-1|0){case 0:if(b>>>0<2)break r;a=b-2|0,s[f+52>>2]=a,e=_[(e=e+a|0)+1|0]<<8&16128|_[0|e];break e;case 1:if(b>>>0<3)break r;a=b-3|0,s[f+52>>2]=a,e=_[(e=e+a|0)+1|0]<<8|_[e+2|0]<<16&4128768|_[0|e];break e;default:break i}a=b-4|0,s[f+52>>2]=a,e=1073741823&(_[0|(e=e+a|0)]|_[e+1|0]<<8|_[e+2|0]<<16|_[e+3|0]<<24)}s[f+56>>2]=e+4194304,n=e>>>0<1069547520}}if(Q=p+16|0,n)if(r)for(e=s[f+52>>2],b=s[f+56>>2],a=s[f+36>>2],t=s[f+48>>2],A=s[f+24>>2];;){r:if(!(b>>>0>4194303))for(;;){if((0|e)<=0)break r;if(e=e-1|0,s[f+52>>2]=e,b=_[e+t|0]|b<<8,s[f+56>>2]=b,!(b>>>0<4194304))break}if(k=s[A+((n=1048575&b)<<2)>>2],b=(m(s[(p=a+(k<<3)|0)>>2],b>>>20|0)+n|0)-s[p+4>>2]|0,s[f+56>>2]=b,s[(v<<2)+i>>2]=k,N=1,(0|(v=v+1|0))==(0|r))break}else N=1}return(r=s[f+36>>2])&&(s[f+40>>2]=r,mr(r)),(r=s[f+24>>2])&&(s[f+28>>2]=r,mr(r)),(r=s[f+8>>2])&&(s[f+12>>2]=r,mr(r)),Q=f- -64|0,N}function cr(r,e,i){var f,a=0,t=0,b=0,A=0,o=0;Q=f=Q-48|0,t=l[6677]|l[6678]<<16,a=l[6675]|l[6676]<<16,u[f+38>>1]=a,u[f+40>>1]=a>>>16,u[f+42>>1]=t,u[f+44>>1]=t>>>16,a=s[3337],s[f+32>>2]=s[3336],s[f+36>>2]=a,a=s[3335],s[f+24>>2]=s[3334],s[f+28>>2]=a,a=s[3333],s[f+16>>2]=s[3332],s[f+20>>2]=a,b=s[e+8>>2],o=s[e+12>>2],A=s[e+20>>2];r:{e:if(b>>>0<(t=(a=s[e+16>>2])+5|0)>>>0&(0|(A=t>>>0<5?A+1|0:A))>=(0|o)|(0|A)>(0|o)){if((a=Oi(f+16|0))>>>0>=2147483632)break r;i:{if(a>>>0>=11)i=mf(e=1+(15|a)|0),s[f+8>>2]=-2147483648|e,s[f>>2]=i,s[f+4>>2]=a,e=i+a|0;else if(c[f+11|0]=a,e=a+f|0,i=f,!a)break i;Cr(i,f+16|0,a)}if(c[0|e]=0,s[r>>2]=-2,e=r+4|0,c[f+11|0]>=0){r=s[f+4>>2],s[e>>2]=s[f>>2],s[e+4>>2]=r,s[e+8>>2]=s[f+8>>2];break e}if(oi(e,s[f>>2],s[f+4>>2]),c[f+11|0]>=0)break e;mr(s[f>>2])}else if(t=a+s[e>>2]|0,a=_[0|t]|_[t+1|0]<<8|_[t+2|0]<<16|_[t+3|0]<<24,c[0|i]=a,c[i+1|0]=a>>>8,c[i+2|0]=a>>>16,c[i+3|0]=a>>>24,c[i+4|0]=_[t+4|0],a=s[e+20>>2],a=(t=s[e+16>>2]+5|0)>>>0<5?a+1|0:a,s[e+16>>2]=t,s[e+20>>2]=a,Ti(i,1260,5))a=mf(32),c[a+17|0]=0,c[a+16|0]=_[1496],i=_[1492]|_[1493]<<8|_[1494]<<16|_[1495]<<24,e=_[1488]|_[1489]<<8|_[1490]<<16|_[1491]<<24,c[a+8|0]=e,c[a+9|0]=e>>>8,c[a+10|0]=e>>>16,c[a+11|0]=e>>>24,c[a+12|0]=i,c[a+13|0]=i>>>8,c[a+14|0]=i>>>16,c[a+15|0]=i>>>24,i=_[1484]|_[1485]<<8|_[1486]<<16|_[1487]<<24,e=_[1480]|_[1481]<<8|_[1482]<<16|_[1483]<<24,c[0|a]=e,c[a+1|0]=e>>>8,c[a+2|0]=e>>>16,c[a+3|0]=e>>>24,c[a+4|0]=i,c[a+5|0]=i>>>8,c[a+6|0]=i>>>16,c[a+7|0]=i>>>24,s[r>>2]=-1,oi(r+4|0,a,17),mr(a);else if((0|(b=s[e+12>>2]))<=(0|a)&p[e+8>>2]<=t>>>0|(0|a)>(0|b)){if((a=Oi(f+16|0))>>>0>=2147483632)break r;i:{if(a>>>0>=11)i=mf(e=1+(15|a)|0),s[f+8>>2]=-2147483648|e,s[f>>2]=i,s[f+4>>2]=a,e=i+a|0;else if(c[f+11|0]=a,e=a+f|0,i=f,!a)break i;Cr(i,f+16|0,a)}if(c[0|e]=0,s[r>>2]=-2,e=r+4|0,c[f+11|0]>=0){r=s[f+4>>2],s[e>>2]=s[f>>2],s[e+4>>2]=r,s[e+8>>2]=s[f+8>>2];break e}if(oi(e,s[f>>2],s[f+4>>2]),c[f+11|0]>=0)break e;mr(s[f>>2])}else if(c[i+5|0]=_[t+s[e>>2]|0],b=s[e+20>>2],b=(a=s[e+16>>2]+1|0)?b:b+1|0,s[e+16>>2]=a,s[e+20>>2]=b,(0|(t=s[e+12>>2]))<=(0|b)&p[e+8>>2]<=a>>>0|(0|b)>(0|t)){if((a=Oi(f+16|0))>>>0>=2147483632)break r;i:{if(a>>>0>=11)i=mf(e=1+(15|a)|0),s[f+8>>2]=-2147483648|e,s[f>>2]=i,s[f+4>>2]=a,e=i+a|0;else if(c[f+11|0]=a,e=a+f|0,i=f,!a)break i;Cr(i,f+16|0,a)}if(c[0|e]=0,s[r>>2]=-2,e=r+4|0,c[f+11|0]>=0){r=s[f+4>>2],s[e>>2]=s[f>>2],s[e+4>>2]=r,s[e+8>>2]=s[f+8>>2];break e}if(oi(e,s[f>>2],s[f+4>>2]),c[f+11|0]>=0)break e;mr(s[f>>2])}else if(c[i+6|0]=_[a+s[e>>2]|0],A=s[e+20>>2],A=(a=s[e+16>>2]+1|0)?A:A+1|0,s[e+16>>2]=a,s[e+20>>2]=A,(0|(t=s[e+12>>2]))<=(0|A)&p[e+8>>2]<=a>>>0|(0|t)<(0|A)){if((a=Oi(f+16|0))>>>0>=2147483632)break r;i:{if(a>>>0>=11)i=mf(e=1+(15|a)|0),s[f+8>>2]=-2147483648|e,s[f>>2]=i,s[f+4>>2]=a,e=i+a|0;else if(c[f+11|0]=a,e=a+f|0,i=f,!a)break i;Cr(i,f+16|0,a)}if(c[0|e]=0,s[r>>2]=-2,e=r+4|0,c[f+11|0]>=0){r=s[f+4>>2],s[e>>2]=s[f>>2],s[e+4>>2]=r,s[e+8>>2]=s[f+8>>2];break e}if(oi(e,s[f>>2],s[f+4>>2]),c[f+11|0]>=0)break e;mr(s[f>>2])}else if(c[i+7|0]=_[a+s[e>>2]|0],b=s[e+20>>2],b=(a=s[e+16>>2]+1|0)?b:b+1|0,s[e+16>>2]=a,s[e+20>>2]=b,(0|(t=s[e+12>>2]))<=(0|b)&p[e+8>>2]<=a>>>0|(0|b)>(0|t)){if(i=zi(f,f+16|0),s[r>>2]=-2,e=r+4|0,c[i+11|0]>=0){r=s[i+4>>2],s[e>>2]=s[i>>2],s[e+4>>2]=r,s[e+8>>2]=s[i+8>>2];break e}if(oi(e,s[i>>2],s[i+4>>2]),c[i+11|0]>=0)break e;mr(s[i>>2])}else if(c[i+8|0]=_[a+s[e>>2]|0],a=s[e+20>>2],o=(t=(b=s[e+16>>2])+1|0)?a:a+1|0,s[e+16>>2]=t,s[e+20>>2]=o,(b=b+3|0)>>>0>(o=s[e+8>>2])>>>0&(0|(a=b>>>0<3?a+1|0:a))>=(0|(A=s[e+12>>2]))|(0|a)>(0|A)){if(i=zi(f,f+16|0),s[r>>2]=-2,e=r+4|0,c[i+11|0]>=0){r=s[i+4>>2],s[e>>2]=s[i>>2],s[e+4>>2]=r,s[e+8>>2]=s[i+8>>2];break e}if(oi(e,s[i>>2],s[i+4>>2]),c[i+11|0]>=0)break e;mr(s[i>>2])}else a=i,i=s[e>>2]+t|0,u[a+10>>1]=_[0|i]|_[i+1|0]<<8,b=s[e+20>>2],b=(i=s[e+16>>2]+2|0)>>>0<2?b+1|0:b,s[e+16>>2]=i,s[e+20>>2]=b,s[r+8>>2]=0,s[r+12>>2]=0,s[r>>2]=0,s[r+4>>2]=0;return void(Q=f+48|0)}Ra(),n()}function ur(r,e,i){e|=0,i|=0;var f,a=0,t=0,b=0,A=0,o=0,k=0,u=0,l=0,p=0,y=0,d=0,m=0,v=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0;Q=f=Q-96|0,t=s[(r|=0)+16>>2],c[f+92|0]=1,s[f+88>>2]=e,s[f+84>>2]=e,s[f+80>>2]=t,k=s[r+20>>2],a=s[k>>2];r:{e:{if((t=s[s[t+28>>2]+(e<<2)>>2])>>>0<s[k+4>>2]-a>>2>>>0){if(a=s[s[r+8>>2]+(s[a+(t<<2)>>2]<<2)>>2],t=s[r+4>>2],_[t+84|0]||(a=s[s[t+68>>2]+(a<<2)>>2]),s[f+72>>2]=0,s[f+76>>2]=0,s[(k=f- -64|0)>>2]=0,s[k+4>>2]=0,s[f+56>>2]=0,s[f+60>>2]=0,er(t,a,c[t+24|0],f+56|0),-1!=(0|e))for(k=((t=e+1|0)>>>0)%3|0?t:e-2|0,p=((e>>>0)%3|0?-1:2)+e|0;;){if(a=k,t=p,s[r+28>>2]&&(a=((t=e+1|0)>>>0)%3|0?t:e-2|0,t=e-1|0,(e>>>0)%3|0||(t=e+2|0)),y=s[r+20>>2],e=s[y>>2],(a=s[s[s[r+16>>2]+28>>2]+(a<<2)>>2])>>>0>=s[y+4>>2]-e>>2>>>0)break e;if(a=s[s[r+8>>2]+(s[e+(a<<2)>>2]<<2)>>2],e=s[r+4>>2],_[e+84|0]||(a=s[s[e+68>>2]+(a<<2)>>2]),s[f+48>>2]=0,s[f+52>>2]=0,s[f+40>>2]=0,s[f+44>>2]=0,s[f+32>>2]=0,s[f+36>>2]=0,er(e,a,c[e+24|0],f+32|0),a=s[r+20>>2],e=s[a>>2],(t=s[s[s[r+16>>2]+28>>2]+(t<<2)>>2])>>>0>=s[a+4>>2]-e>>2>>>0)break r;a=s[s[r+8>>2]+(s[e+(t<<2)>>2]<<2)>>2],e=s[r+4>>2],_[e+84|0]||(a=s[s[e+68>>2]+(a<<2)>>2]),s[f+24>>2]=0,s[f+28>>2]=0,s[f+16>>2]=0,s[f+20>>2]=0,s[f+8>>2]=0,s[f+12>>2]=0,er(e,a,c[e+24|0],f+8|0),a=(b=s[f+8>>2])-(e=s[f+56>>2])|0,m=s[f+60>>2],N=s[f+12>>2]-(m+(e>>>0>b>>>0)|0)|0,y=(A=s[f+40>>2])-(t=s[f+64>>2])|0,Z=s[f+68>>2],b=Ki(a,N,y,W=s[f+44>>2]-(Z+(t>>>0>A>>>0)|0)|0),U=o-(j+(b>>>0>d>>>0)|0)|0,d=(o=G=d-b|0)+(e=Ki(b=(A=s[f+16>>2])-t|0,Z=s[f+20>>2]-((t>>>0>A>>>0)+Z|0)|0,A=(u=s[f+32>>2])-e|0,G=s[f+36>>2]-((e>>>0>u>>>0)+m|0)|0))|0,o=j+U|0,o=e>>>0>d>>>0?o+1|0:o,e=l,l=a,m=N,a=(u=s[f+48>>2])-(t=s[f+72>>2])|0,N=s[f+76>>2],u=e+(l=Ki(l,m,a,U=s[f+52>>2]-(N+(t>>>0>u>>>0)|0)|0))|0,e=j+v|0,e=u>>>0<l>>>0?e+1|0:e,l=u-(v=Ki(m=(l=s[f+24>>2])-t|0,t=s[f+28>>2]-((t>>>0>l>>>0)+N|0)|0,A,G))|0,v=e-(j+(u>>>0<v>>>0)|0)|0,a=h-(e=Ki(b,Z,a,U))|0,e=R-(j+(e>>>0>h>>>0)|0)|0,R=Ki(m,t,y,W),e=j+e|0,R=(h=R+a|0)>>>0<R>>>0?e+1|0:e,e=s[f+88>>2],t=s[f+80>>2];i:if(_[f+92|0]){f:{if(-1==(0|e)||-1==(0|(e=((a=e+1|0)>>>0)%3|0?a:e-2|0))|s[s[t>>2]+(e>>>3&536870908)>>2]>>>e&1||-1==(0|(e=s[s[s[t+64>>2]+12>>2]+(e<<2)>>2])))s[f+88>>2]=-1;else if(e=((a=e+1|0)>>>0)%3|0?a:e-2|0,s[f+88>>2]=e,-1!=(0|e))break f;a=-1;a:if(-1!=(0|(e=s[f+84>>2]))){if((e>>>0)%3|0)e=e-1|0;else if(a=-1,-1==(0|(e=e+2|0)))break a;a=-1,s[s[t>>2]+(e>>>3&536870908)>>2]>>>e&1||(a=-1,-1!=(0|(e=s[s[s[t+64>>2]+12>>2]+(e<<2)>>2]))&&(a=e-1|0,(e>>>0)%3|0||(a=e+2|0)))}c[f+92|0]=0,s[f+88>>2]=a;break i}if((0|e)!=s[f+84>>2])break i;s[f+88>>2]=-1}else{a=-1;f:if(-1!=(0|e)){if((e>>>0)%3|0)e=e-1|0;else if(a=-1,-1==(0|(e=e+2|0)))break f;a=-1,s[s[t>>2]+(e>>>3&536870908)>>2]>>>e&1||(a=-1,-1!=(0|(e=s[s[s[t+64>>2]+12>>2]+(e<<2)>>2]))&&(a=e-1|0,(e>>>0)%3|0||(a=e+2|0)))}s[f+88>>2]=a}if(-1==(0|(e=s[f+88>>2])))break}a=(t=(e=R>>31)^h)-e|0,e=(e^R)-((e>>>0>t>>>0)+e|0)|0,p=-1,t=2147483647,u=~(k=(A=(b=v>>31)^l)-b|0),b=2147483647^(A=y=(b^v)-((A>>>0<b>>>0)+b|0)|0),y=o;i:{if(s[r+28>>2]){if(!((0|e)==(0|b)&a>>>0>u>>>0|e>>>0>b>>>0)&&(e=e+A|0,e=(r=a+k|0)>>>0<k>>>0?e+1|0:e,u=o,o=(A=(a=o>>31)^d)-a|0,!((0|(b=2147483647^(k=(a^u)-((a>>>0>A>>>0)+a|0)|0)))==(0|e)&(a=r)>>>0>~(r=o)>>>0|e>>>0>b>>>0)&&(e=e+k|0,t=e=(p=r+a|0)>>>0<r>>>0?e+1|0:e,!e&p>>>0<536870913)))break i;e=t>>>29|0,r=(536870911&t)<<3|p>>>29}else{if((0|e)==(0|b)&a>>>0>u>>>0|e>>>0>b>>>0)break i;if(e=e+A|0,e=(r=a+k|0)>>>0<k>>>0?e+1|0:e,t=r,o=r=(p=(a=r=(b=o)>>31)^d)-a|0,a=(a^b)-((a>>>0>p>>>0)+a|0)|0,r=r+t|0,!0&(0|(r=(o=(0|(a^=2147483647))==(0|e)&~o>>>0<t>>>0|e>>>0>a>>>0)?-1:r))<=536870912|(0|r)<536870912)break i;e=0,r=r>>>29|0}d=Si(d,y,r,e),l=Si(l,v,r,e),h=Si(h,R,r,e)}return s[i+8>>2]=d,s[i+4>>2]=l,s[i>>2]=h,void(Q=f+96|0)}Za(),n()}Za(),n()}Za(),n()}function sr(r){var e,i=0,f=0,a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0,_=0,l=0,p=0;Q=e=Q-32|0;r:{e:if((i=s[r+16>>2])>>>0>=341){if(s[r+16>>2]=i-341,i=s[r+4>>2],k=s[i>>2],f=i+4|0,s[r+4>>2]=f,(0|(i=s[r+8>>2]))==s[r+12>>2])if((c=s[r>>2])>>>0<f>>>0)a=me((t=(1+(f-c>>2)|0)/-2<<2)+f|0,f,i=i-f|0)+i|0,s[r+8>>2]=a,s[r+4>>2]=t+s[r+4>>2];else{if((a=(0|i)==(0|c)?1:i-c>>1)>>>0>=1073741824)break r;if(u=(t=a<<2)+(A=mf(t))|0,a=t=A+(-4&a)|0,(0|i)!=(0|f)){if(_=-4&(i=i-f|0),b=1+((o=i-4|0)>>>2|0)&7)for(a=0,i=t;s[i>>2]=s[f>>2],f=f+4|0,i=i+4|0,(0|b)!=(0|(a=a+1|0)););else i=t;if(a=t+_|0,!(o>>>0<28))for(;s[i>>2]=s[f>>2],s[i+4>>2]=s[f+4>>2],s[i+8>>2]=s[f+8>>2],s[i+12>>2]=s[f+12>>2],s[i+16>>2]=s[f+16>>2],s[i+20>>2]=s[f+20>>2],s[i+24>>2]=s[f+24>>2],s[i+28>>2]=s[f+28>>2],f=f+32|0,(0|a)!=(0|(i=i+32|0)););}s[r+12>>2]=u,s[r+8>>2]=a,s[r+4>>2]=t,s[r>>2]=A,c&&(mr(c),a=s[r+8>>2])}else a=i;s[a>>2]=k,s[r+8>>2]=s[r+8>>2]+4}else if((A=(u=(f=s[r+8>>2])-(i=s[r+4>>2])|0)>>2)>>>0<(t=(b=s[r+12>>2])-(a=s[r>>2])|0)>>2>>>0){if((0|f)!=(0|b)){l=e,p=mf(4092),s[l+8>>2]=p,a=r;i:{f:{if((0|(i=s[r+8>>2]))==s[r+12>>2])if((f=s[a+4>>2])>>>0>(A=s[a>>2])>>>0)t=me((b=(1+(f-A>>2)|0)/-2<<2)+f|0,f,r=i-f|0)+r|0,s[a+8>>2]=t,s[a+4>>2]=b+s[a+4>>2];else{if((t=(0|i)==(0|A)?1:i-A>>1)>>>0>=1073741824)break f;if(u=(r=t<<2)+(k=mf(r))|0,t=r=k+(-4&t)|0,(0|i)!=(0|f)){if(_=-4&(i=i-f|0),b=1+((o=i-4|0)>>>2|0)&7)for(t=0,i=r;s[i>>2]=s[f>>2],f=f+4|0,i=i+4|0,(0|b)!=(0|(t=t+1|0)););else i=r;if(t=r+_|0,!(o>>>0<28))for(;s[i>>2]=s[f>>2],s[i+4>>2]=s[f+4>>2],s[i+8>>2]=s[f+8>>2],s[i+12>>2]=s[f+12>>2],s[i+16>>2]=s[f+16>>2],s[i+20>>2]=s[f+20>>2],s[i+24>>2]=s[f+24>>2],s[i+28>>2]=s[f+28>>2],f=f+32|0,(0|t)!=(0|(i=i+32|0)););}s[a+12>>2]=u,s[a+8>>2]=t,s[a+4>>2]=r,s[a>>2]=k,A&&(mr(A),t=s[a+8>>2])}else t=i;s[t>>2]=s[e+8>>2],s[a+8>>2]=s[a+8>>2]+4;break i}Df(),n()}break e}if(l=e,p=mf(4092),s[l+8>>2]=p,be(r,e+8|0),i=s[r+4>>2],k=s[i>>2],f=i+4|0,s[r+4>>2]=f,(0|(i=s[r+8>>2]))==s[r+12>>2])if((c=s[r>>2])>>>0<f>>>0)a=me((t=(1+(f-c>>2)|0)/-2<<2)+f|0,f,i=i-f|0)+i|0,s[r+8>>2]=a,s[r+4>>2]=t+s[r+4>>2];else{if((a=(0|i)==(0|c)?1:i-c>>1)>>>0>=1073741824)break r;if(u=(t=a<<2)+(A=mf(t))|0,a=t=A+(-4&a)|0,(0|i)!=(0|f)){if(_=-4&(i=i-f|0),b=1+((o=i-4|0)>>>2|0)&7)for(a=0,i=t;s[i>>2]=s[f>>2],f=f+4|0,i=i+4|0,(0|b)!=(0|(a=a+1|0)););else i=t;if(a=t+_|0,!(o>>>0<28))for(;s[i>>2]=s[f>>2],s[i+4>>2]=s[f+4>>2],s[i+8>>2]=s[f+8>>2],s[i+12>>2]=s[f+12>>2],s[i+16>>2]=s[f+16>>2],s[i+20>>2]=s[f+20>>2],s[i+24>>2]=s[f+24>>2],s[i+28>>2]=s[f+28>>2],f=f+32|0,(0|a)!=(0|(i=i+32|0)););}s[r+12>>2]=u,s[r+8>>2]=a,s[r+4>>2]=t,s[r>>2]=A,c&&(mr(c),a=s[r+8>>2])}else a=i;s[a>>2]=k,s[r+8>>2]=s[r+8>>2]+4}else{if(s[e+24>>2]=r+12,(_=(0|a)==(0|b)?1:t>>1)>>>0>=1073741824)break r;if(b=mf(t=_<<2),s[e+8>>2]=b,k=t+b|0,s[e+20>>2]=k,a=(A<<2)+b|0,s[e+12>>2]=a,o=mf(4092),(0|A)==(0|_))if((0|u)>0)a=((A+1|0)/-2<<2)+a|0,s[e+12>>2]=a;else{if((a=(0|i)==(0|f)?1:u>>1)>>>0>=1073741824)break r;t=mf(i=a<<2),s[e+8>>2]=t,k=i+t|0,s[e+20>>2]=k,a=t+(-4&a)|0,s[e+12>>2]=a,mr(b),i=s[r+4>>2],f=s[r+8>>2],b=t}if(s[a>>2]=o,o=a+4|0,s[e+16>>2]=o,t=i,(0|i)!=(0|f)){for(;be(e+8|0,f=f-4|0),s[r+4>>2]!=(0|f););k=s[e+20>>2],o=s[e+16>>2],a=s[e+12>>2],b=s[e+8>>2],t=f,i=s[r+8>>2]}f=s[r>>2],s[r>>2]=b,s[e+8>>2]=f,s[r+4>>2]=a,s[e+12>>2]=t,s[r+8>>2]=o,s[e+16>>2]=i,a=s[r+12>>2],s[r+12>>2]=k,s[e+20>>2]=a,(0|i)!=(0|t)&&(s[e+16>>2]=(3+(t-i|0)&-4)+i),f&&mr(f)}return void(Q=e+32|0)}Df(),n()}function _r(r,e){var i=0,f=0,a=0,t=0,b=0,A=0,o=0;if((t=((i=s[r+4>>2])-(a=s[r>>2])|0)/144|0)>>>0<e>>>0)if(a=r,(e=e-t|0)>>>0<=((A=s[r+8>>2])-(i=s[r+4>>2])|0)/144>>>0){if(e){if(r=i,t=7&e)for(;$e(r),r=r+144|0,(0|t)!=(0|(f=f+1|0)););if(i=m(e,144)+i|0,!((e-1&268435455)>>>0<7))for(;$e(r),$e(r+144|0),$e(r+288|0),$e(r+432|0),$e(r+576|0),$e(r+720|0),$e(r+864|0),$e(r+1008|0),(0|i)!=(0|(r=r+1152|0)););}s[a+4>>2]=i}else{r:{e:{i:{if((r=(o=((r=i)-(i=s[a>>2])|0)/144|0)+e|0)>>>0<29826162){if(t=(i=(A-i|0)/144|0)<<1,t=i>>>0>=14913080?29826161:r>>>0<t>>>0?t:r){if(t>>>0>=29826162)break i;b=mf(m(t,144))}if(r=i=m(o,144)+b|0,A=7&e)for(;$e(r),r=r+144|0,(0|A)!=(0|(f=f+1|0)););if(A=m(e,144)+i|0,(e-1&268435455)>>>0>=7)for(;$e(r),$e(r+144|0),$e(r+288|0),$e(r+432|0),$e(r+576|0),$e(r+720|0),$e(r+864|0),$e(r+1008|0),(0|A)!=(0|(r=r+1152|0)););if(e=m(t,144)+b|0,(0|(f=s[a+4>>2]))==(0|(t=s[a>>2])))break e;for(;r=f=f-144|0,s[(i=i-144|0)>>2]=s[r>>2],s[i+4>>2]=s[r+4>>2],s[i+8>>2]=s[r+8>>2],s[i+12>>2]=s[r+12>>2],s[r+12>>2]=0,s[r+4>>2]=0,s[r+8>>2]=0,s[i+16>>2]=s[r+16>>2],s[i+20>>2]=s[r+20>>2],s[i+24>>2]=s[r+24>>2],s[r+24>>2]=0,s[r+16>>2]=0,s[r+20>>2]=0,b=_[r+28|0],s[i+40>>2]=0,s[i+32>>2]=0,s[i+36>>2]=0,c[i+28|0]=b,s[i+32>>2]=s[r+32>>2],s[i+36>>2]=s[r+36>>2],s[i+40>>2]=s[r+40>>2],s[r+40>>2]=0,s[r+32>>2]=0,s[r+36>>2]=0,s[i+52>>2]=0,s[i+44>>2]=0,s[i+48>>2]=0,s[i+44>>2]=s[r+44>>2],s[i+48>>2]=s[r+48>>2],s[i+52>>2]=s[r+52>>2],s[r+52>>2]=0,s[r+44>>2]=0,s[r+48>>2]=0,s[(b=i- -64|0)>>2]=0,s[i+56>>2]=0,s[i+60>>2]=0,s[i+56>>2]=s[r+56>>2],s[i+60>>2]=s[r+60>>2],o=b,b=r- -64|0,s[o>>2]=s[b>>2],s[b>>2]=0,s[r+56>>2]=0,s[r+60>>2]=0,s[i+68>>2]=s[r+68>>2],b=s[r+72>>2],s[i+84>>2]=0,s[i+76>>2]=0,s[i+80>>2]=0,s[i+72>>2]=b,s[i+76>>2]=s[r+76>>2],s[i+80>>2]=s[r+80>>2],s[i+84>>2]=s[r+84>>2],s[r+84>>2]=0,s[r+76>>2]=0,s[r+80>>2]=0,s[i+96>>2]=0,s[i+88>>2]=0,s[i+92>>2]=0,s[i+88>>2]=s[r+88>>2],s[i+92>>2]=s[r+92>>2],s[i+96>>2]=s[r+96>>2],s[r+96>>2]=0,s[r+88>>2]=0,s[r+92>>2]=0,b=_[r+100|0],s[i+112>>2]=0,s[i+104>>2]=0,s[i+108>>2]=0,c[i+100|0]=b,s[i+104>>2]=s[r+104>>2],s[i+108>>2]=s[r+108>>2],s[i+112>>2]=s[r+112>>2],s[r+112>>2]=0,s[r+104>>2]=0,s[r+108>>2]=0,s[i+124>>2]=0,s[i+116>>2]=0,s[i+120>>2]=0,s[i+116>>2]=s[r+116>>2],s[i+120>>2]=s[r+120>>2],s[i+124>>2]=s[r+124>>2],s[r+124>>2]=0,s[r+116>>2]=0,s[r+120>>2]=0,b=s[r+128>>2],s[i+140>>2]=0,s[i+132>>2]=0,s[i+136>>2]=0,s[i+128>>2]=b,s[i+132>>2]=s[r+132>>2],s[i+136>>2]=s[r+136>>2],s[i+140>>2]=s[r+140>>2],s[r+140>>2]=0,s[r+132>>2]=0,s[r+136>>2]=0,(0|r)!=(0|t););if(s[a+8>>2]=e,r=s[a+4>>2],s[a+4>>2]=A,f=s[a>>2],s[a>>2]=i,(0|r)==(0|f))break r;for(;(i=s[(e=r-144|0)+132>>2])&&(s[r-8>>2]=i,mr(i)),(i=s[r-28>>2])&&(s[r-24>>2]=i,mr(i)),(i=s[r-40>>2])&&(s[r-36>>2]=i,mr(i)),wi(r-140|0),(0|f)!=(0|(r=e)););break r}ha(),n()}Df(),n()}s[a+8>>2]=e,s[a+4>>2]=A,s[a>>2]=i}f&&mr(f)}else if(e>>>0<t>>>0){if((0|(a=a+m(e,144)|0))!=(0|i))for(;(f=s[(e=i-144|0)+132>>2])&&(s[i-8>>2]=f,mr(f)),(f=s[i-28>>2])&&(s[i-24>>2]=f,mr(f)),(f=s[i-40>>2])&&(s[i-36>>2]=f,mr(f)),wi(i-140|0),(0|a)!=(0|(i=e)););s[r+4>>2]=a}}function lr(r,e,i,f){var a,t=0,b=0,A=0,n=0,o=0;if(Q=a=Q-80|0,t=s[i+36>>2],s[a+72>>2]=s[i+32>>2],s[a+76>>2]=t,b=s[i+28>>2],s[(t=a- -64|0)>>2]=s[i+24>>2],s[t+4>>2]=b,t=s[i+20>>2],s[a+56>>2]=s[i+16>>2],s[a+60>>2]=t,t=s[i+12>>2],s[a+48>>2]=s[i+8>>2],s[a+52>>2]=t,t=s[i+4>>2],s[a+40>>2]=s[i>>2],s[a+44>>2]=t,cr(r,a+40|0,a+24|0),!s[r>>2])if(c[r+15|0]<0&&mr(s[r+4>>2]),_[a+31|0])e=mf(32),c[e+27|0]=0,i=_[1521]|_[1522]<<8|_[1523]<<16|_[1524]<<24,c[e+23|0]=i,c[e+24|0]=i>>>8,c[e+25|0]=i>>>16,c[e+26|0]=i>>>24,i=_[1518]|_[1519]<<8|_[1520]<<16|_[1521]<<24,f=_[1514]|_[1515]<<8|_[1516]<<16|_[1517]<<24,c[e+16|0]=f,c[e+17|0]=f>>>8,c[e+18|0]=f>>>16,c[e+19|0]=f>>>24,c[e+20|0]=i,c[e+21|0]=i>>>8,c[e+22|0]=i>>>16,c[e+23|0]=i>>>24,i=_[1510]|_[1511]<<8|_[1512]<<16|_[1513]<<24,f=_[1506]|_[1507]<<8|_[1508]<<16|_[1509]<<24,c[e+8|0]=f,c[e+9|0]=f>>>8,c[e+10|0]=f>>>16,c[e+11|0]=f>>>24,c[e+12|0]=i,c[e+13|0]=i>>>8,c[e+14|0]=i>>>16,c[e+15|0]=i>>>24,i=_[1502]|_[1503]<<8|_[1504]<<16|_[1505]<<24,f=_[1498]|_[1499]<<8|_[1500]<<16|_[1501]<<24,c[0|e]=f,c[e+1|0]=f>>>8,c[e+2|0]=f>>>16,c[e+3|0]=f>>>24,c[e+4|0]=i,c[e+5|0]=i>>>8,c[e+6|0]=i>>>16,c[e+7|0]=i>>>24,s[r>>2]=-1,oi(r+4|0,e,27),mr(e);else{Q=n=Q-16|0;r:{e:switch(c[a+32|0]){case 0:t=mf(44),s[t>>2]=0,s[t+4>>2]=0,s[t+40>>2]=0,s[t+32>>2]=0,s[t+36>>2]=0,s[t+24>>2]=0,s[t+28>>2]=0,s[t+16>>2]=0,s[t+20>>2]=0,s[t+8>>2]=0,s[t+12>>2]=0,t=Af(t),s[t>>2]=13496,s[a+8>>2]=0,s[a+12>>2]=0,s[a>>2]=0,s[a+4>>2]=0,s[a+16>>2]=t;break r;case 1:t=mf(44),s[t>>2]=0,s[t+4>>2]=0,s[t+40>>2]=0,s[t+32>>2]=0,s[t+36>>2]=0,s[t+24>>2]=0,s[t+28>>2]=0,s[t+16>>2]=0,s[t+20>>2]=0,s[t+8>>2]=0,s[t+12>>2]=0,t=Af(t),s[t>>2]=13404,s[a+8>>2]=0,s[a+12>>2]=0,s[a>>2]=0,s[a+4>>2]=0,s[a+16>>2]=t;break r;default:break e}b=mf(32),c[b+28|0]=0,t=_[1550]|_[1551]<<8|_[1552]<<16|_[1553]<<24,c[b+24|0]=t,c[b+25|0]=t>>>8,c[b+26|0]=t>>>16,c[b+27|0]=t>>>24,t=_[1546]|_[1547]<<8|_[1548]<<16|_[1549]<<24,A=_[1542]|_[1543]<<8|_[1544]<<16|_[1545]<<24,c[b+16|0]=A,c[b+17|0]=A>>>8,c[b+18|0]=A>>>16,c[b+19|0]=A>>>24,c[b+20|0]=t,c[b+21|0]=t>>>8,c[b+22|0]=t>>>16,c[b+23|0]=t>>>24,t=_[1538]|_[1539]<<8|_[1540]<<16|_[1541]<<24,A=_[1534]|_[1535]<<8|_[1536]<<16|_[1537]<<24,c[b+8|0]=A,c[b+9|0]=A>>>8,c[b+10|0]=A>>>16,c[b+11|0]=A>>>24,c[b+12|0]=t,c[b+13|0]=t>>>8,c[b+14|0]=t>>>16,c[b+15|0]=t>>>24,t=_[1530]|_[1531]<<8|_[1532]<<16|_[1533]<<24,A=_[1526]|_[1527]<<8|_[1528]<<16|_[1529]<<24,c[0|b]=A,c[b+1|0]=A>>>8,c[b+2|0]=A>>>16,c[b+3|0]=A>>>24,c[b+4|0]=t,c[b+5|0]=t>>>8,c[b+6|0]=t>>>16,c[b+7|0]=t>>>24,s[n>>2]=-1,oi(t=4|n,b,28),o=c[n+15|0],s[a>>2]=s[n>>2],A=a+4|0,(0|o)>=0?(o=s[t+4>>2],s[A>>2]=s[t>>2],s[A+4>>2]=o,s[A+8>>2]=s[t+8>>2],s[a+16>>2]=0):(oi(A,s[n+4>>2],s[n+8>>2]),t=c[n+15|0],s[a+16>>2]=0,(0|t)>=0||mr(s[n+4>>2])),mr(b)}Q=n+16|0;r:if(t=s[a>>2]){if(s[r>>2]=t,r=r+4|0,c[a+15|0]>=0){i=s[(e=4|a)+4>>2],s[r>>2]=s[e>>2],s[r+4>>2]=i,s[r+8>>2]=s[e+8>>2];break r}oi(r,s[a+4>>2],s[a+8>>2])}else t=s[a+16>>2],s[a+16>>2]=0,O(r,t,e,i,f),s[r>>2]||(c[r+15|0]<0&&mr(s[r+4>>2]),s[r>>2]=0,s[r+4>>2]=0,s[r+8>>2]=0,s[r+12>>2]=0),Ya[s[s[t>>2]+4>>2]](t);r=s[a+16>>2],s[a+16>>2]=0,r&&Ya[s[s[r>>2]+4>>2]](r),c[a+15|0]>=0||mr(s[a+4>>2])}Q=a+80|0}function pr(r){var e=0,i=0,f=0,a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0;if(s[r+56>>2]=s[r+52>>2],s[r+44>>2]=s[r+40>>2],e=s[r+64>>2],(0|(i=s[e+24>>2]))==s[e+28>>2])return 1;r:{e:{i:{for(;;){b=o;f:if(-1!=(0|(o=s[(c<<2)+i>>2]))){if((0|(e=s[r+56>>2]))==s[r+60>>2]){if((i=(A=(a=e-(f=s[r+52>>2])|0)>>2)+1|0)>>>0>=1073741824)break i;if(t=a>>>1|0,t=a>>>0>=2147483644?1073741823:i>>>0<t>>>0?t:i){if(t>>>0>=1073741824)break e;a=mf(t<<2)}else a=0;if(s[(i=a+(A<<2)|0)>>2]=b,A=i+4|0,(0|e)!=(0|f))for(;e=e-4|0,s[(i=i-4|0)>>2]=s[e>>2],(0|e)!=(0|f););s[r+60>>2]=a+(t<<2),s[r+56>>2]=A,s[r+52>>2]=i,f&&mr(f)}else s[e>>2]=b,s[r+56>>2]=e+4;a:{if(s[s[r+12>>2]+(c>>>3&536870908)>>2]>>>c&1&&!(-1==(0|(a=((a=o+1|0)>>>0)%3|0?a:o-2|0))|s[s[r>>2]+(a>>>3&536870908)>>2]>>>a&1)&&-1!=(0|(a=s[s[s[r+64>>2]+12>>2]+(a<<2)>>2]))&&-1!=(0|(e=((e=a+1|0)>>>0)%3|0?e:a-2|0))){for(i=s[r+64>>2],t=s[r>>2];a=e,e=-1,-1==(0|(f=((f=a+1|0)>>>0)%3|0?f:a-2|0))|s[t+(f>>>3&536870908)>>2]>>>f&1||-1!=(0|(f=s[s[i+12>>2]+(f<<2)>>2]))&&(e=((e=f+1|0)>>>0)%3|0?e:f-2|0),(0|e)!=(0|o);)if(-1==(0|e))break a;return 0}a=o}if(s[s[r+28>>2]+(a<<2)>>2]=b,(0|(e=s[r+44>>2]))==s[r+48>>2]){if((i=(A=(o=e-(f=s[r+40>>2])|0)>>2)+1|0)>>>0>=1073741824)break r;if(t=o>>>1|0,t=o>>>0>=2147483644?1073741823:i>>>0<t>>>0?t:i){if(t>>>0>=1073741824)break e;o=mf(t<<2)}else o=0;if(s[(i=o+(A<<2)|0)>>2]=a,A=i+4|0,(0|e)!=(0|f))for(;e=e-4|0,s[(i=i-4|0)>>2]=s[e>>2],(0|e)!=(0|f););s[r+48>>2]=o+(t<<2),s[r+44>>2]=A,s[r+40>>2]=i,f&&mr(f)}else s[e>>2]=a,s[r+44>>2]=e+4;if(o=b+1|0,e=s[r+64>>2],-1!=(0|a)){if((a>>>0)%3|0)i=a-1|0;else if(-1==(0|(i=a+2|0)))break f;if(-1!=(0|(f=s[s[e+12>>2]+(i<<2)>>2]))&&!(-1==(0|(t=f+((f>>>0)%3|0?-1:2)|0))|(0|a)==(0|t)))for(;;){if(e=((e=t+1|0)>>>0)%3|0?e:t-2|0,s[s[r>>2]+(e>>>3&536870908)>>2]>>>e&1){if((0|(e=s[r+56>>2]))==s[r+60>>2]){if((i=(k=(b=e-(f=s[r+52>>2])|0)>>2)+1|0)>>>0>=1073741824)break i;if(A=b>>>1|0,A=b>>>0>=2147483644?1073741823:i>>>0<A>>>0?A:i){if(A>>>0>=1073741824)break e;b=mf(A<<2)}else b=0;if(s[(i=b+(k<<2)|0)>>2]=o,k=i+4|0,(0|e)!=(0|f))for(;e=e-4|0,s[(i=i-4|0)>>2]=s[e>>2],(0|e)!=(0|f););s[r+60>>2]=b+(A<<2),s[r+56>>2]=k,s[r+52>>2]=i,f&&mr(f)}else s[e>>2]=o,s[r+56>>2]=e+4;if(f=o+1|0,(0|(e=s[r+44>>2]))==s[r+48>>2]){if((i=(u=(b=e-(A=s[r+40>>2])|0)>>2)+1|0)>>>0>=1073741824)break r;if(k=b>>>1|0,k=b>>>0>=2147483644?1073741823:i>>>0<k>>>0?k:i){if(k>>>0>=1073741824)break e;b=mf(k<<2)}else b=0;if(s[(i=b+(u<<2)|0)>>2]=t,u=i+4|0,(0|e)!=(0|A))for(;e=e-4|0,s[(i=i-4|0)>>2]=s[e>>2],(0|e)!=(0|A););s[r+48>>2]=b+(k<<2),s[r+44>>2]=u,s[r+40>>2]=i,A&&mr(A)}else s[e>>2]=t,s[r+44>>2]=e+4;b=o,o=f}if(s[s[r+28>>2]+(t<<2)>>2]=b,e=s[r+64>>2],(t>>>0)%3|0)i=t-1|0;else if(-1==(0|(i=t+2|0)))break f;if(-1==(0|(f=s[s[e+12>>2]+(i<<2)>>2])))break f;if(-1==(0|(t=f+((f>>>0)%3|0?-1:2)|0)))break f;if((0|a)==(0|t))break}}}else o=b;if(c=c+1|0,i=s[e+24>>2],!(c>>>0<s[e+28>>2]-i>>2>>>0))break}return 1}ha(),n()}Df(),n()}ha(),n()}function yr(r,e,i){e|=0,i|=0;var f,a=0,t=0,b=0,A=0,o=0,k=0,u=0,l=0,p=0,y=0,d=0,m=0,v=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0;if(Q=f=Q-96|0,t=s[(r|=0)+16>>2],c[f+92|0]=1,s[f+88>>2]=e,s[f+84>>2]=e,s[f+80>>2]=t,-1!=(0|e)&&(k=s[r+20>>2],a=s[k>>2],!((t=s[s[t>>2]+(e<<2)>>2])>>>0>=s[k+4>>2]-a>>2>>>0))){t=s[s[r+8>>2]+(s[a+(t<<2)>>2]<<2)>>2],a=s[r+4>>2],_[a+84|0]||(t=s[s[a+68>>2]+(t<<2)>>2]),s[f+72>>2]=0,s[f+76>>2]=0,s[(k=f- -64|0)>>2]=0,s[k+4>>2]=0,s[f+56>>2]=0,s[f+60>>2]=0,er(a,t,c[a+24|0],f+56|0),k=((t=e+1|0)>>>0)%3|0?t:e-2|0,y=((e>>>0)%3|0?-1:2)+e|0;r:{e:{for(;;){if(a=k,t=y,s[r+28>>2]&&(a=((t=e+1|0)>>>0)%3|0?t:e-2|0,t=e-1|0,(e>>>0)%3|0||(t=e+2|0)),-1==(0|a))break r;if(p=s[r+20>>2],e=s[p>>2],(a=s[s[s[r+16>>2]>>2]+(a<<2)>>2])>>>0>=s[p+4>>2]-e>>2>>>0)break r;if(a=s[s[r+8>>2]+(s[(a<<2)+e>>2]<<2)>>2],e=s[r+4>>2],_[e+84|0]||(a=s[s[e+68>>2]+(a<<2)>>2]),s[f+48>>2]=0,s[f+52>>2]=0,s[f+40>>2]=0,s[f+44>>2]=0,s[f+32>>2]=0,s[f+36>>2]=0,er(e,a,c[e+24|0],f+32|0),-1==(0|t))break e;if(a=s[r+20>>2],e=s[a>>2],(t=s[s[s[r+16>>2]>>2]+(t<<2)>>2])>>>0>=s[a+4>>2]-e>>2>>>0)break e;if(a=s[s[r+8>>2]+(s[e+(t<<2)>>2]<<2)>>2],e=s[r+4>>2],_[e+84|0]||(a=s[s[e+68>>2]+(a<<2)>>2]),s[f+24>>2]=0,s[f+28>>2]=0,s[f+16>>2]=0,s[f+20>>2]=0,s[f+8>>2]=0,s[f+12>>2]=0,er(e,a,c[e+24|0],f+8|0),a=(b=s[f+8>>2])-(e=s[f+56>>2])|0,m=s[f+60>>2],N=s[f+12>>2]-(m+(e>>>0>b>>>0)|0)|0,p=(o=s[f+40>>2])-(t=s[f+64>>2])|0,Z=s[f+68>>2],b=Ki(a,N,p,W=s[f+44>>2]-(Z+(t>>>0>o>>>0)|0)|0),U=A-(j+(b>>>0>d>>>0)|0)|0,d=(A=G=d-b|0)+(e=Ki(b=(o=s[f+16>>2])-t|0,Z=s[f+20>>2]-((t>>>0>o>>>0)+Z|0)|0,o=(u=s[f+32>>2])-e|0,G=s[f+36>>2]-((e>>>0>u>>>0)+m|0)|0))|0,A=j+U|0,A=e>>>0>d>>>0?A+1|0:A,e=l,l=a,m=N,a=(u=s[f+48>>2])-(t=s[f+72>>2])|0,N=s[f+76>>2],u=e+(l=Ki(l,m,a,U=s[f+52>>2]-(N+(t>>>0>u>>>0)|0)|0))|0,e=j+v|0,e=u>>>0<l>>>0?e+1|0:e,l=u-(v=Ki(m=(l=s[f+24>>2])-t|0,t=s[f+28>>2]-((t>>>0>l>>>0)+N|0)|0,o,G))|0,v=e-(j+(u>>>0<v>>>0)|0)|0,a=h-(e=Ki(b,Z,a,U))|0,e=R-(j+(e>>>0>h>>>0)|0)|0,R=Ki(m,t,p,W),e=j+e|0,R=(h=R+a|0)>>>0<R>>>0?e+1|0:e,pe(f+80|0),-1==(0|(e=s[f+88>>2])))break}a=(t=(e=R>>31)^h)-e|0,e=(e^R)-((e>>>0>t>>>0)+e|0)|0,y=-1,t=2147483647,u=~(k=(o=(b=p=v>>31)^l)-b|0),b=2147483647^(o=p=(b^v)-((o>>>0<b>>>0)+b|0)|0),p=A;i:{if(s[r+28>>2]){if(!((0|e)==(0|b)&a>>>0>u>>>0|e>>>0>b>>>0)&&(e=e+o|0,e=(r=a+k|0)>>>0<k>>>0?e+1|0:e,u=A,A=(o=(b=A>>=31)^d)-b|0,!((0|(b=2147483647^(k=(b^u)-((b>>>0>o>>>0)+b|0)|0)))==(0|e)&(a=r)>>>0>~(r=A)>>>0|e>>>0>b>>>0)&&(e=e+k|0,t=e=(y=r+a|0)>>>0<r>>>0?e+1|0:e,!e&y>>>0<536870913)))break i;e=t>>>29|0,r=(536870911&t)<<3|y>>>29}else{if((0|e)==(0|b)&a>>>0>u>>>0|e>>>0>b>>>0)break i;if(e=e+o|0,e=(r=a+k|0)>>>0<k>>>0?e+1|0:e,t=r,A=r=(y=(a=r=(b=A)>>31)^d)-a|0,a=(a^b)-((a>>>0>y>>>0)+a|0)|0,r=r+t|0,!0&(0|(r=(A=(0|(a^=2147483647))==(0|e)&~A>>>0<t>>>0|e>>>0>a>>>0)?-1:r))<=536870912|(0|r)<536870912)break i;e=0,r=r>>>29|0}d=Si(d,p,r,e),l=Si(l,v,r,e),h=Si(h,R,r,e)}return s[i+8>>2]=d,s[i+4>>2]=l,s[i>>2]=h,void(Q=f+96|0)}Za(),n()}Za(),n()}Za(),n()}function dr(r,e){r|=0;var i=0,f=0,a=0,t=0,b=0,A=0,n=0,o=0;if(!((0|(e|=0))<0||(i=s[r+12>>2])-(f=s[r+8>>2])>>2>>>0<=e>>>0)){if(a=s[(f=f+(e<<2)|0)>>2],n=s[a+60>>2],t=s[a+56>>2],(0|(a=f+4|0))!=(0|i)){for(;A=s[a>>2],s[a>>2]=0,b=s[f>>2],s[f>>2]=A,b&&Ci(b),f=f+4|0,(0|(a=a+4|0))!=(0|i););i=s[r+12>>2]}if((0|i)!=(0|f))for(;a=s[(i=i-4|0)>>2],s[i>>2]=0,a&&Ci(a),(0|i)!=(0|f););s[r+12>>2]=f;r:if(!(!(b=s[r+4>>2])|(0|n)<0)&&(0|(i=s[b+24>>2]))!=(0|(f=s[b+28>>2])))for(;;){if((0|n)==s[s[i>>2]+24>>2]){if((0|(f=i+4|0))!=(0|(n=s[b+28>>2]))){for(;A=s[f>>2],s[f>>2]=0,a=s[i>>2],s[i>>2]=A,a&&(bf(a+12|0,s[a+16>>2]),df(a,s[a+4>>2]),mr(a)),i=i+4|0,(0|n)!=(0|(f=f+4|0)););f=s[b+28>>2]}if((0|i)!=(0|f))for(;a=s[(f=f-4|0)>>2],s[f>>2]=0,a&&(bf(a+12|0,s[a+16>>2]),df(a,s[a+4>>2]),mr(a)),(0|i)!=(0|f););s[b+28>>2]=i;break r}if((0|f)==(0|(i=i+4|0)))break}r:if(!((0|t)>4)){e:if(a=m(t,12)+r|0,(0|(i=s[a+20>>2]))!=(0|(f=s[a+24>>2]))){for(;;){if(s[i>>2]==(0|e))break e;if((0|f)==(0|(i=i+4|0)))break}break r}(0|i)!=(0|f)&&(me(t=i,i=i+4|0,f-i|0),s[a+24>>2]=f-4)}if((0|(i=s[r+24>>2]))!=(0|(f=s[r+20>>2]))){if(n=1&(b=(i=(a=i-f|0)>>2)>>>0<=1?1:i),i=0,a>>>0>=8)for(b&=-2,a=0;(0|(o=s[(A=(t=i<<2)+f|0)>>2]))>(0|e)&&(s[A>>2]=o-1),(0|(A=s[(t=f+(4|t)|0)>>2]))>(0|e)&&(s[t>>2]=A-1),i=i+2|0,(0|b)!=(0|(a=a+2|0)););n&&((0|(f=s[(i=f+(i<<2)|0)>>2]))<=(0|e)||(s[i>>2]=f-1))}if((0|(i=s[r+36>>2]))!=(0|(f=s[r+32>>2]))){if(n=1&(b=(i=(a=i-f|0)>>2)>>>0<=1?1:i),i=0,a>>>0>=8)for(b&=-2,a=0;(0|(o=s[(A=(t=i<<2)+f|0)>>2]))>(0|e)&&(s[A>>2]=o-1),(0|(A=s[(t=f+(4|t)|0)>>2]))>(0|e)&&(s[t>>2]=A-1),i=i+2|0,(0|b)!=(0|(a=a+2|0)););n&&((0|(f=s[(i=f+(i<<2)|0)>>2]))<=(0|e)||(s[i>>2]=f-1))}if((0|(i=s[r+48>>2]))!=(0|(f=s[r+44>>2]))){if(n=1&(b=(i=(a=i-f|0)>>2)>>>0<=1?1:i),i=0,a>>>0>=8)for(b&=-2,a=0;(0|(o=s[(A=(t=i<<2)+f|0)>>2]))>(0|e)&&(s[A>>2]=o-1),(0|(A=s[(t=f+(4|t)|0)>>2]))>(0|e)&&(s[t>>2]=A-1),i=i+2|0,(0|b)!=(0|(a=a+2|0)););n&&((0|(f=s[(i=f+(i<<2)|0)>>2]))<=(0|e)||(s[i>>2]=f-1))}if((0|(i=s[r+60>>2]))!=(0|(f=s[r+56>>2]))){if(n=1&(b=(i=(a=i-f|0)>>2)>>>0<=1?1:i),i=0,a>>>0>=8)for(b&=-2,a=0;(0|(o=s[(A=(t=i<<2)+f|0)>>2]))>(0|e)&&(s[A>>2]=o-1),(0|(A=s[(t=f+(4|t)|0)>>2]))>(0|e)&&(s[t>>2]=A-1),i=i+2|0,(0|b)!=(0|(a=a+2|0)););n&&((0|(f=s[(i=f+(i<<2)|0)>>2]))<=(0|e)||(s[i>>2]=f-1))}if((0|(i=s[r+72>>2]))!=(0|(r=s[r+68>>2]))){if(b=1&(a=(i=(f=i-r|0)>>2)>>>0<=1?1:i),i=0,f>>>0>=8)for(f=-2&a,a=0;(0|(A=s[(t=(n=i<<2)+r|0)>>2]))>(0|e)&&(s[t>>2]=A-1),(0|(t=s[(n=r+(4|n)|0)>>2]))>(0|e)&&(s[n>>2]=t-1),i=i+2|0,(0|f)!=(0|(a=a+2|0)););b&&((0|(t=e))>=(0|(e=s[(r=r+(i<<2)|0)>>2]))||(s[r>>2]=e-1))}}}function mr(r){var e=0,i=0,f=0,a=0,t=0,b=0,A=0,n=0,o=0;r:if(r|=0){t=(f=r-8|0)+(r=-8&(e=s[r-4>>2]))|0;e:if(!(1&e)){if(!(3&e))break r;if((f=f-(e=s[f>>2])|0)>>>0<p[4302])break r;if(r=r+e|0,s[4303]==(0|f)){if(!(3&~(e=s[t+4>>2])))return s[4300]=r,s[t+4>>2]=-2&e,s[f+4>>2]=1|r,void(s[r+f>>2]=r)}else{if(e>>>0<=255){if(a=s[f+8>>2],e=e>>>3|0,(0|(i=s[f+12>>2]))==(0|a)){n=17192,o=s[4298]&If(e),s[n>>2]=o;break e}s[a+12>>2]=i,s[i+8>>2]=a;break e}if(A=s[f+24>>2],(0|f)==(0|(e=s[f+12>>2])))if((i=s[(a=f+20|0)>>2])||(i=s[(a=f+16|0)>>2])){for(;b=a,(i=s[(a=(e=i)+20|0)>>2])||(a=e+16|0,i=s[e+16>>2]););s[b>>2]=0}else e=0;else i=s[f+8>>2],s[i+12>>2]=e,s[e+8>>2]=i;if(!A)break e;a=s[f+28>>2];i:{if(s[(i=17496+(a<<2)|0)>>2]==(0|f)){if(s[i>>2]=e,e)break i;n=17196,o=s[4299]&If(a),s[n>>2]=o;break e}if(s[A+(s[A+16>>2]==(0|f)?16:20)>>2]=e,!e)break e}if(s[e+24>>2]=A,(i=s[f+16>>2])&&(s[e+16>>2]=i,s[i+24>>2]=e),!(i=s[f+20>>2]))break e;s[e+20>>2]=i,s[i+24>>2]=e}}if(!(f>>>0>=t>>>0)&&1&(e=s[t+4>>2])){e:{if(!(2&e)){if(s[4304]==(0|t)){if(s[4304]=f,r=s[4301]+r|0,s[4301]=r,s[f+4>>2]=1|r,s[4303]!=(0|f))break r;return s[4300]=0,void(s[4303]=0)}if(s[4303]==(0|t))return s[4303]=f,r=s[4300]+r|0,s[4300]=r,s[f+4>>2]=1|r,void(s[r+f>>2]=r);r=(-8&e)+r|0;i:if(e>>>0<=255){if(a=s[t+8>>2],e=e>>>3|0,(0|(i=s[t+12>>2]))==(0|a)){n=17192,o=s[4298]&If(e),s[n>>2]=o;break i}s[a+12>>2]=i,s[i+8>>2]=a}else{if(A=s[t+24>>2],(0|t)==(0|(e=s[t+12>>2])))if((i=s[(a=t+20|0)>>2])||(i=s[(a=t+16|0)>>2])){for(;b=a,(i=s[(a=(e=i)+20|0)>>2])||(a=e+16|0,i=s[e+16>>2]););s[b>>2]=0}else e=0;else i=s[t+8>>2],s[i+12>>2]=e,s[e+8>>2]=i;if(A){a=s[t+28>>2];f:{if(s[(i=17496+(a<<2)|0)>>2]==(0|t)){if(s[i>>2]=e,e)break f;n=17196,o=s[4299]&If(a),s[n>>2]=o;break i}if(s[A+(s[A+16>>2]==(0|t)?16:20)>>2]=e,!e)break i}s[e+24>>2]=A,(i=s[t+16>>2])&&(s[e+16>>2]=i,s[i+24>>2]=e),(i=s[t+20>>2])&&(s[e+20>>2]=i,s[i+24>>2]=e)}}if(s[f+4>>2]=1|r,s[r+f>>2]=r,s[4303]!=(0|f))break e;return void(s[4300]=r)}s[t+4>>2]=-2&e,s[f+4>>2]=1|r,s[r+f>>2]=r}if(r>>>0<=255)return e=17232+(-8&r)|0,(i=s[4298])&(r=1<<(r>>>3))?r=s[e+8>>2]:(s[4298]=r|i,r=e),s[e+8>>2]=f,s[r+12>>2]=f,s[f+12>>2]=e,void(s[f+8>>2]=r);a=31,r>>>0<=16777215&&(a=62+((r>>>38-(e=R(r>>>8|0))&1)-(e<<1)|0)|0),s[f+28>>2]=a,s[f+16>>2]=0,s[f+20>>2]=0,b=17496+(a<<2)|0;e:{i:{if((i=s[4299])&(e=1<<a)){for(a=r<<(31!=(0|a)?25-(a>>>1|0):0),e=s[b>>2];;){if(i=e,(-8&s[e+4>>2])==(0|r))break i;if(e=a>>>29|0,a<<=1,!(e=s[(b=i+(4&e)|0)+16>>2]))break}s[b+16>>2]=f,s[f+24>>2]=i}else s[4299]=e|i,s[b>>2]=f,s[f+24>>2]=b;s[f+12>>2]=f,s[f+8>>2]=f;break e}r=s[i+8>>2],s[r+12>>2]=f,s[i+8>>2]=f,s[f+24>>2]=0,s[f+12>>2]=i,s[f+8>>2]=r}r=s[4306]-1|0,s[4306]=r||-1}}}function vr(r,e){var i=0,f=0,a=0,t=0,b=0,A=0,o=0,k=0,c=0;if(-1==(0|e))return 1;if(b=(e>>>0)/3|0,!(s[s[r+24>>2]+(b>>>3&268435452)>>2]>>>b&1)){if(a=s[r+48>>2],s[r+52>>2]=a,(0|a)==s[r+56>>2]?(f=mf(4),s[f>>2]=e,i=f+4|0,s[r+56>>2]=i,s[r+52>>2]=i,s[r+48>>2]=f,a&&mr(a)):(s[a>>2]=e,s[r+52>>2]=a+4),o=((i=e+1|0)>>>0)%3|0?i:e-2|0,i=s[s[r+4>>2]+28>>2],-1==(0|(c=s[(o<<2)+i>>2])))return 0;if(a=(e-m(b,3)|0?-1:2)+e|0,-1==(0|(k=s[i+(a<<2)>>2])))return 0;if(e=s[r+36>>2],(f=s[(b=e+(c>>>3&536870908)|0)>>2])&(i=1<<c)||(s[b>>2]=i|f,zr(r+8|0,c,o),e=s[r+36>>2]),(i=s[(f=(k>>>3&536870908)+e|0)>>2])&(e=1<<k)||(s[f>>2]=e|i,zr(r+8|0,k,a)),(0|(t=s[r+52>>2]))==s[r+48>>2])return 1;for(c=r+8|0;;){r:{e:if(-1!=(0|(e=s[(t=t-4|0)>>2]))&&(i=(e>>>0)/3|0,b=s[r+24>>2]+(i>>>3&268435452)|0,!((f=s[b>>2])&(i=1<<i)))){if(s[b>>2]=i|f,A=s[r+4>>2],-1==(0|(i=s[s[A+28>>2]+(e<<2)>>2])))return 0;for(;;){f=e;i:{if(k=s[r+36>>2]+(i>>>3&536870908)|0,!((o=s[k>>2])&(a=1<<i)))if(-1==(0|(b=s[s[A+40>>2]+(i<<2)>>2]))||-1==(0|(e=((e=b+1|0)>>>0)%3|0?e:b-2|0))|s[s[A>>2]+(e>>>3&536870908)>>2]>>>e&1||-1==(0|(b=s[s[s[A+64>>2]+12>>2]+(e<<2)>>2])))s[k>>2]=a|o,zr(c,i,f),A=s[r+4>>2];else if(s[k>>2]=a|o,zr(c,i,f),A=s[r+4>>2],-1!=(0|(((e=b+1|0)>>>0)%3|0?e:b-2))){e=-1,-1!=(0|f)&&(-1==(0|(i=((i=f+1|0)>>>0)%3|0?i:f-2|0))|s[s[A>>2]+(i>>>3&536870908)>>2]>>>i&1||(e=s[s[s[A+64>>2]+12>>2]+(i<<2)>>2])),f=1<<(i=(e>>>0)/3|0),t=s[r+24>>2],k=s[t+((a=i>>>5|0)<<2)>>2];break i}f:{if(-1!=(0|f)){i=-1,-1==(0|(e=((e=f+1|0)>>>0)%3|0?e:f-2|0))|s[s[A>>2]+(e>>>3&536870908)>>2]>>>e&1||(i=s[s[s[A+64>>2]+12>>2]+(e<<2)>>2]);a:{if((f>>>0)%3|0)t=f-1|0;else if(e=-1,-1==(0|(t=f+2|0)))break a;e=-1,s[s[A>>2]+(t>>>3&536870908)>>2]>>>t&1||(e=s[s[s[A+64>>2]+12>>2]+(t<<2)>>2])}if(o=(b=-1==(0|e))?-1:(e>>>0)/3|0,-1!=(0|i)&&(t=s[r+24>>2],!((k=s[t+((a=(f=(i>>>0)/3|0)>>>5|0)<<2)>>2])&(f=1<<f))))break f;if(!(b||(f=1<<o,t=s[r+24>>2],f&(k=s[t+((a=o>>>5|0)<<2)>>2]))))break i}t=s[r+52>>2]-4|0,s[r+52>>2]=t;break r}if(b)e=i;else if(s[(o>>>3&536870908)+t>>2]>>>o&1)e=i;else{if(A=s[r+52>>2],s[A-4>>2]=e,s[r+56>>2]!=(0|A)){s[A>>2]=i,t=A+4|0;break e}f:{if((f=(b=(a=A-(o=s[r+48>>2])|0)>>2)+1|0)>>>0<1073741824){if(e=a>>>1|0,a=a>>>0>=2147483644?1073741823:e>>>0>f>>>0?e:f){if(a>>>0>=1073741824)break f;f=mf(a<<2)}else f=0;if(s[(e=f+(b<<2)|0)>>2]=i,t=e+4|0,(0|A)!=(0|o))for(;A=A-4|0,s[(e=e-4|0)>>2]=s[A>>2],(0|A)!=(0|o););if(s[r+56>>2]=f+(a<<2),s[r+52>>2]=t,s[r+48>>2]=e,!o)break r;mr(o),t=s[r+52>>2];break r}ha(),n()}Df(),n()}}if(s[(a<<2)+t>>2]=f|k,-1==(0|(i=s[s[A+28>>2]+(e<<2)>>2])))break}return 0}s[r+52>>2]=t}if(s[r+48>>2]==(0|t))break}}return 1}function hr(r,e,i,f){var a,t=0,b=0,A=0,o=0,k=v(0),u=0,_=0,l=v(0);a=s[i>>2];r:{e:if(b=s[e+4>>2]){i:{if((A=Yf(b))>>>0>=2){if(b>>>0<=(t=a)>>>0&&(t=(a>>>0)%(b>>>0)|0),!(i=s[s[e>>2]+(t<<2)>>2]))break e;if(A>>>0<=1)break i;for(;;){if(!(i=s[i>>2]))break e;if((0|(A=s[i+4>>2]))!=(0|a)&&(b>>>0<=A>>>0&&(A=(A>>>0)%(b>>>0)|0),(0|t)!=(0|A)))break e;if(s[i+8>>2]==(0|a))break}e=0;break r}if(t=b-1&a,!(i=s[s[e>>2]+(t<<2)>>2]))break e}for(o=b-1|0;;){if(!(i=s[i>>2]))break e;if((0|(A=s[i+4>>2]))!=(0|a)&(A&o)!=(0|t))break e;if(s[i+8>>2]==(0|a))break}e=0;break r}if(i=mf(16),f=s[s[f>>2]>>2],s[i+12>>2]=0,s[i+8>>2]=f,s[i+4>>2]=a,s[i>>2]=0,l=v(s[e+12>>2]+1>>>0),k=y[e+16>>2],l>v(k*v(b>>>0))||!b){t=2,1!=(0|(f=(f=!!(b-1&b)|b>>>0<3|b<<1)>>>0>(A=(k=v(U(v(l/k))))<v(4294967296)&k>=v(0)?~~k>>>0:0)>>>0?f:A))&&(f&f-1?(t=tr(f),b=s[e+4>>2]):t=f);e:{if(t>>>0<=b>>>0){if(t>>>0>=b>>>0)break e;if(A=b>>>0<3,f=(k=v(U(v(v(p[e+12>>2])/y[e+16>>2]))))<v(4294967296)&k>=v(0)?~~k>>>0:0,b>>>0<=(t=(f=A||Yf(b)>>>0>1?tr(f):f>>>0<2?f:1<<32-R(f-1|0))>>>0<t>>>0?t:f)>>>0)break e}b=0,A=0,o=t;i:{f:{a:{t:{if(t){if(o>>>0>=1073741824)break t;if(f=mf(o<<2),t=s[e>>2],s[e>>2]=f,t&&mr(t),s[e+4>>2]=o,f=0,o>>>0>=4)for(t=-4&o;s[(u=f<<2)+s[e>>2]>>2]=0,s[s[e>>2]+(4|u)>>2]=0,s[s[e>>2]+(8|u)>>2]=0,s[s[e>>2]+(12|u)>>2]=0,f=f+4|0,(0|t)!=(0|(A=A+4|0)););if(t=3&o)for(;s[s[e>>2]+(f<<2)>>2]=0,f=f+1|0,(0|t)!=(0|(b=b+1|0)););if(!(t=s[e+8>>2]))break i;if(f=e+8|0,b=s[t+4>>2],(A=Yf(o))>>>0<2)break a;if(b=b>>>0>=o>>>0?(b>>>0)%(o>>>0)|0:b,s[s[e>>2]+(b<<2)>>2]=f,!(f=s[t>>2]))break i;if(A>>>0<=1)break f;for(;o>>>0<=(A=s[f+4>>2])>>>0&&(A=(A>>>0)%(o>>>0)|0),(0|b)!=(0|A)?(u=(_=A<<2)+s[e>>2]|0,s[u>>2]?(s[t>>2]=s[f>>2],s[f>>2]=s[s[_+s[e>>2]>>2]>>2],s[s[_+s[e>>2]>>2]>>2]=f):(s[u>>2]=t,t=f,b=A)):t=f,f=s[t>>2];);break i}f=s[e>>2],s[e>>2]=0,f&&mr(f),s[e+4>>2]=0;break i}Df(),n()}if(b&=o-1,s[s[e>>2]+(b<<2)>>2]=f,!(f=s[t>>2]))break i}for(u=o-1|0;(0|(A=u&s[f+4>>2]))!=(0|b)?(o=(_=A<<2)+s[e>>2]|0,s[o>>2]?(s[t>>2]=s[f>>2],s[f>>2]=s[s[_+s[e>>2]>>2]>>2],s[s[_+s[e>>2]>>2]>>2]=f):(s[o>>2]=t,t=f,b=A)):t=f,f=s[t>>2];);}}t=(f=(b=s[e+4>>2])-1|0)&b?b>>>0>a>>>0?a:(a>>>0)%(b>>>0)|0:f&a}t=s[e>>2]+(t<<2)|0;e:{if(f=s[t>>2])s[i>>2]=s[f>>2];else{if(f=e+8|0,s[i>>2]=s[f>>2],s[e+8>>2]=i,s[t>>2]=f,!(f=s[i>>2]))break e;f=s[f+4>>2],(t=b-1|0)&b?f>>>0<b>>>0||(f=(f>>>0)%(b>>>0)|0):f&=t,f=s[e>>2]+(f<<2)|0}s[f>>2]=i}s[e+12>>2]=s[e+12>>2]+1,e=1}c[r+4|0]=e,s[r>>2]=i}function Rr(r,e,i,f){var a,t=0,b=0,A=0,n=0,o=0;if(Q=a=Q-80|0,t=s[i+36>>2],s[a+72>>2]=s[i+32>>2],s[a+76>>2]=t,b=s[i+28>>2],s[(t=a- -64|0)>>2]=s[i+24>>2],s[t+4>>2]=b,t=s[i+20>>2],s[a+56>>2]=s[i+16>>2],s[a+60>>2]=t,t=s[i+12>>2],s[a+48>>2]=s[i+8>>2],s[a+52>>2]=t,t=s[i+4>>2],s[a+40>>2]=s[i>>2],s[a+44>>2]=t,cr(r,a+40|0,a+24|0),!s[r>>2])if(c[r+15|0]<0&&mr(s[r+4>>2]),1==_[a+31|0]){Q=n=Q-16|0;r:{e:switch(_[a+32|0]){case 0:t=gf(mf(48)),s[t>>2]=13112,s[a+8>>2]=0,s[a+12>>2]=0,s[a>>2]=0,s[a+4>>2]=0,s[a+16>>2]=t;break r;case 1:t=gf(mf(52)),s[t+48>>2]=0,s[t>>2]=11276,s[a+8>>2]=0,s[a+12>>2]=0,s[a>>2]=0,s[a+4>>2]=0,s[a+16>>2]=t;break r;default:break e}b=mf(32),c[b+28|0]=0,t=_[1550]|_[1551]<<8|_[1552]<<16|_[1553]<<24,c[b+24|0]=t,c[b+25|0]=t>>>8,c[b+26|0]=t>>>16,c[b+27|0]=t>>>24,t=_[1546]|_[1547]<<8|_[1548]<<16|_[1549]<<24,A=_[1542]|_[1543]<<8|_[1544]<<16|_[1545]<<24,c[b+16|0]=A,c[b+17|0]=A>>>8,c[b+18|0]=A>>>16,c[b+19|0]=A>>>24,c[b+20|0]=t,c[b+21|0]=t>>>8,c[b+22|0]=t>>>16,c[b+23|0]=t>>>24,t=_[1538]|_[1539]<<8|_[1540]<<16|_[1541]<<24,A=_[1534]|_[1535]<<8|_[1536]<<16|_[1537]<<24,c[b+8|0]=A,c[b+9|0]=A>>>8,c[b+10|0]=A>>>16,c[b+11|0]=A>>>24,c[b+12|0]=t,c[b+13|0]=t>>>8,c[b+14|0]=t>>>16,c[b+15|0]=t>>>24,t=_[1530]|_[1531]<<8|_[1532]<<16|_[1533]<<24,A=_[1526]|_[1527]<<8|_[1528]<<16|_[1529]<<24,c[0|b]=A,c[b+1|0]=A>>>8,c[b+2|0]=A>>>16,c[b+3|0]=A>>>24,c[b+4|0]=t,c[b+5|0]=t>>>8,c[b+6|0]=t>>>16,c[b+7|0]=t>>>24,s[n>>2]=-1,oi(t=4|n,b,28),o=c[n+15|0],s[a>>2]=s[n>>2],A=a+4|0,(0|o)>=0?(o=s[t+4>>2],s[A>>2]=s[t>>2],s[A+4>>2]=o,s[A+8>>2]=s[t+8>>2],s[a+16>>2]=0):(oi(A,s[n+4>>2],s[n+8>>2]),t=c[n+15|0],s[a+16>>2]=0,(0|t)>=0||mr(s[n+4>>2])),mr(b)}Q=n+16|0;r:if(t=s[a>>2]){if(s[r>>2]=t,r=r+4|0,c[a+15|0]>=0){i=s[(e=4|a)+4>>2],s[r>>2]=s[e>>2],s[r+4>>2]=i,s[r+8>>2]=s[e+8>>2];break r}oi(r,s[a+4>>2],s[a+8>>2])}else t=s[a+16>>2],s[a+16>>2]=0,s[t+44>>2]=f,O(r,t,e,i,f),s[r>>2]||(c[r+15|0]<0&&mr(s[r+4>>2]),s[r>>2]=0,s[r+4>>2]=0,s[r+8>>2]=0,s[r+12>>2]=0),Ya[s[s[t>>2]+4>>2]](t);r=s[a+16>>2],s[a+16>>2]=0,r&&Ya[s[s[r>>2]+4>>2]](r),c[a+15|0]>=0||mr(s[a+4>>2])}else e=mf(32),c[e+20|0]=0,i=_[1448]|_[1449]<<8|_[1450]<<16|_[1451]<<24,c[e+16|0]=i,c[e+17|0]=i>>>8,c[e+18|0]=i>>>16,c[e+19|0]=i>>>24,i=_[1444]|_[1445]<<8|_[1446]<<16|_[1447]<<24,f=_[1440]|_[1441]<<8|_[1442]<<16|_[1443]<<24,c[e+8|0]=f,c[e+9|0]=f>>>8,c[e+10|0]=f>>>16,c[e+11|0]=f>>>24,c[e+12|0]=i,c[e+13|0]=i>>>8,c[e+14|0]=i>>>16,c[e+15|0]=i>>>24,i=_[1436]|_[1437]<<8|_[1438]<<16|_[1439]<<24,f=_[1432]|_[1433]<<8|_[1434]<<16|_[1435]<<24,c[0|e]=f,c[e+1|0]=f>>>8,c[e+2|0]=f>>>16,c[e+3|0]=f>>>24,c[e+4|0]=i,c[e+5|0]=i>>>8,c[e+6|0]=i>>>16,c[e+7|0]=i>>>24,s[r>>2]=-1,oi(r+4|0,e,20),mr(e);Q=a+80|0}function Nr(r,e,i){var f,a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0,_=0,l=0,p=0,y=0;f=m(e,12)+r|0,s[f+12>>2]=s[f+8>>2],_=-1==(0|i)?-1:(i>>>0)/3|0,a=1,c=i;r:{e:{i:{for(;;){f:{if(u=a,!a){if(-1==(0|c))break f;if(-1==(0|Ze(r,((c>>>0)%3|0?-1:2)+c|0)))break r;if(-1==(0|(a=((i=c+1|0)>>>0)%3|0?i:c-2|0)))break r;if(-1==(0|(i=((i=a+1|0)>>>0)%3|0?i:a-2|0)))break r;if(-1==(0|(a=s[s[s[r+4>>2]+12>>2]+(i<<2)>>2])))break r;if(-1==(0|(i=((i=a+1|0)>>>0)%3|0?i:a-2|0)))break r;_=(i>>>0)/3|0}if(a=s[r+56>>2]+(_>>>3&536870908)|0,!((o=s[a>>2])&(t=1<<_))){for(b=0;;){if(s[a>>2]=t|o,(0|(a=s[f+12>>2]))==s[f+16>>2]){if((k=(t=(o=a-(l=s[f+8>>2])|0)>>2)+1|0)>>>0>=1073741824)break i;if(A=o>>>1|0,k=o>>>0>=2147483644?1073741823:k>>>0<A>>>0?A:k){if(k>>>0>=1073741824)break e;A=mf(k<<2)}else A=0;if(s[(o=A+(t<<2)|0)>>2]=_,t=o+4|0,(0|a)!=(0|l))for(;a=a-4|0,s[(o=o-4|0)>>2]=s[a>>2],(0|a)!=(0|l););s[f+8>>2]=o,s[f+12>>2]=t,s[f+16>>2]=A+(k<<2),l&&mr(l)}else s[a>>2]=_,s[f+12>>2]=a+4;A=b+1|0;a:{t:{if(b)if(1&A){if(-1==(0|i)){i=-1;break a}i=((a=i+1|0)>>>0)%3|0?a:i-2|0}else{if(c=u?c:i,-1==(0|i)){i=-1;break a}if((i>>>0)%3|0){a=i-1|0;break t}i=i+2|0}if(a=i,i=-1,-1==(0|a))break a}if(i=s[s[s[r+4>>2]+12>>2]+(a<<2)>>2],o=-1,b=-1,(0|(t=((t=a+1|0)>>>0)%3|0?t:a-2|0))>=0&&(b=(t>>>0)/3|0,b=s[(s[s[r>>2]+96>>2]+m(b,12)|0)+(t-m(b,3)<<2)>>2]),-1!=(0|i)&&((0|(k=((i>>>0)%3|0?-1:2)+i|0))<0||(t=(k>>>0)/3|0,o=s[(s[s[r>>2]+96>>2]+m(t,12)|0)+(k-m(t,3)<<2)>>2])),(0|b)==(0|o)){t:{b:{if((0|(b=((a>>>0)%3|0?-1:2)+a|0))>=0){if(a=(b>>>0)/3|0,-1!=(0|i))break b;i=-1;break a}if(a=-1,-1!=(0|i))break t;i=-1;break a}a=s[(s[s[r>>2]+96>>2]+m(a,12)|0)+(b-m(a,3)<<2)>>2]}if((0|(t=((b=i+1|0)>>>0)%3|0?b:i-2|0))>=0?(b=(t>>>0)/3|0,b=s[(s[s[r>>2]+96>>2]+m(b,12)|0)+(t-m(b,3)<<2)>>2]):b=-1,(0|b)==(0|a)){if(b=A,_=(i>>>0)/3|0,a=s[r+56>>2]+(_>>>3&268435452)|0,!((o=s[a>>2])&(t=1<<_)))continue}else i=-1}else i=-1}break}if(!(u|!(1&A))){u=s[f+12>>2]-4|0,A=s[u>>2],a=s[r+56>>2]+(A>>>3&536870908)|0,i=s[a>>2],p=a,y=If(A)&i,s[p>>2]=y,s[f+12>>2]=u;break r}}if(a=0,u)continue;break r}break}c=-1,Ze(r,-1);break r}ha(),n()}Df(),n()}if(s[44+((e<<2)+r|0)>>2]=c,(0|(e=s[f+12>>2]))!=(0|(k=s[f+8>>2]))){if(c=1&(e=(e=(i=e-k|0)>>2)>>>0<=1?1:e),t=s[r+56>>2],a=0,i>>>0>=8)for(b=-2&e,i=0;A=s[(u=a<<2)+k>>2],r=s[(e=t+(A>>>3&536870908)|0)>>2],p=e,y=If(A)&r,s[p>>2]=y,A=s[k+(4|u)>>2],r=s[(e=t+(A>>>3&536870908)|0)>>2],p=e,y=If(A)&r,s[p>>2]=y,a=a+2|0,(0|b)!=(0|(i=i+2|0)););c&&(i=s[k+(a<<2)>>2],r=s[(e=t+(i>>>3&536870908)|0)>>2],p=e,y=If(i)&r,s[p>>2]=y)}}function Zr(r,e){var i=0,f=0,a=0,t=0,b=0,A=0,o=0,k=0;if(-1==(0|e))return 1;if(b=(e>>>0)/3|0,!(s[s[r+24>>2]+(b>>>3&268435452)>>2]>>>b&1)){if(t=s[r+48>>2],s[r+52>>2]=t,(0|t)==s[r+56>>2]?(f=mf(4),s[f>>2]=e,i=f+4|0,s[r+56>>2]=i,s[r+52>>2]=i,s[r+48>>2]=f,t&&mr(t)):(s[t>>2]=e,s[r+52>>2]=t+4),a=-1,f=s[r+4>>2],-1!=(0|(o=((i=e+1|0)>>>0)%3|0?i:e-2|0))&&(a=s[s[f>>2]+(o<<2)>>2]),A=e-m(b,3)|0)i=e-1|0;else if(-1==(0|(i=e+2|0)))return 0;if(-1==(0|a))return 0;if(-1==(0|(k=s[s[f>>2]+(i<<2)>>2])))return 0;if(i=s[r+36>>2],(b=s[(t=i+(a>>>3&536870908)|0)>>2])&(f=1<<a)||(s[t>>2]=f|b,zr(r+8|0,a,o),i=s[r+36>>2]),(f=s[(b=(k>>>3&536870908)+i|0)>>2])&(i=1<<k)||(s[b>>2]=i|f,zr(r+8|0,k,(A?-1:2)+e|0)),(0|(i=s[r+52>>2]))==s[r+48>>2])return 1;for(k=r+8|0;;){r:{e:if(-1!=(0|(e=s[(i=i-4|0)>>2]))&&(f=(e>>>0)/3|0,t=s[r+24>>2]+(f>>>3&268435452)|0,!((b=s[t>>2])&(f=1<<f)))){for(s[t>>2]=f|b;;){if(o=s[r+4>>2],-1==(0|(a=s[s[o>>2]+(e<<2)>>2])))return 0;i:{if(A=s[r+36>>2]+(a>>>3&536870908)|0,!((t=s[A>>2])&(b=1<<a)))if(-1!=(0|(f=s[s[o+24>>2]+(a<<2)>>2]))&&-1!=(0|(i=((i=f+1|0)>>>0)%3|0?i:f-2|0))&&-1!=(0|(f=s[s[o+12>>2]+(i<<2)>>2]))){if(s[A>>2]=t|b,zr(k,a,e),-1!=(0|(((i=f+1|0)>>>0)%3|0?i:f-2))){i=e-2|0,f=e+1|0,e=-1,-1!=(0|(i=(f>>>0)%3|0?f:i))&&(e=s[s[s[r+4>>2]+12>>2]+(i<<2)>>2]),f=1<<(i=(e>>>0)/3|0),a=s[r+24>>2],o=s[a+((t=i>>>5|0)<<2)>>2];break i}}else s[A>>2]=t|b,zr(k,a,e);i=-1,b=s[r+4>>2],-1!=(0|(f=((f=e+1|0)>>>0)%3|0?f:e-2|0))&&(i=s[s[b+12>>2]+(f<<2)>>2]);f:{if((e>>>0)%3|0)a=e-1|0;else if(a=e+2|0,e=-1,-1==(0|a))break f;e=s[s[b+12>>2]+(a<<2)>>2]}if(A=(b=-1==(0|e))?-1:(e>>>0)/3|0,-1==(0|i)||(a=s[r+24>>2],(o=s[a+((t=(f=(i>>>0)/3|0)>>>5|0)<<2)>>2])&(f=1<<f))){if(!(b||(f=1<<A,a=s[r+24>>2],f&(o=s[a+((t=A>>>5|0)<<2)>>2]))))break i;i=s[r+52>>2]-4|0,s[r+52>>2]=i;break r}if(b)e=i;else if(s[(A>>>3&536870908)+a>>2]>>>A&1)e=i;else{if(a=s[r+52>>2],s[a-4>>2]=e,s[r+56>>2]!=(0|a)){s[a>>2]=i,i=a+4|0;break e}f:{if((f=(b=(t=a-(A=s[r+48>>2])|0)>>2)+1|0)>>>0<1073741824){if(e=t>>>1|0,t=t>>>0>=2147483644?1073741823:e>>>0>f>>>0?e:f){if(t>>>0>=1073741824)break f;f=mf(t<<2)}else f=0;if(s[(e=f+(b<<2)|0)>>2]=i,i=e+4|0,(0|a)!=(0|A))for(;a=a-4|0,s[(e=e-4|0)>>2]=s[a>>2],(0|a)!=(0|A););if(s[r+56>>2]=f+(t<<2),s[r+52>>2]=i,s[r+48>>2]=e,!A)break r;mr(A),i=s[r+52>>2];break r}ha(),n()}Df(),n()}}if(s[(t<<2)+a>>2]=f|o,-1==(0|e))break}return 0}s[r+52>>2]=i}if(s[r+48>>2]==(0|i))break}}return 1}function Gr(r,e){e|=0;var i,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0,c=0,u=0,y=0,d=0,v=0,h=0;Q=i=Q-80|0;r:{if(_[s[(r|=0)+28>>2]+36|0]<=1){if(a=s[e+20>>2],a=(f=(b=s[e+16>>2])+4|0)>>>0<4?a+1|0:a,A=s[e+12>>2],p[e+8>>2]<f>>>0&(0|A)<=(0|a)|(0|a)>(0|A))break r;b=b+s[e>>2]|0,o=_[0|b]|_[b+1|0]<<8|_[b+2|0]<<16|_[b+3|0]<<24,s[e+16>>2]=f,s[e+20>>2]=a}else{if(!Gi(1,i+76|0,e))break r;o=s[i+76>>2]}if(o&&!((a=Ki((a=s[e+8>>2])-(f=s[e+16>>2])|0,s[e+12>>2]-(s[e+20>>2]+(f>>>0>a>>>0)|0)|0,5,0))>>>0<o>>>0&(0|(f=j))<=0|(0|f)<0)){for(f=s[r+4>>2],(a=s[r+8>>2]-f>>2)>>>0<o>>>0?ai(r+4|0,o-a|0):a>>>0<=o>>>0||(s[r+8>>2]=f+(o<<2)),v=r+16|0,c=s[r+32>>2];;){if((0|(f=n=s[e+12>>2]))<=(0|(a=s[e+20>>2]))&(t=s[e+8>>2])>>>0<=(b=s[e+16>>2])>>>0|(0|f)<(0|a)){t=0;break r}if(y=s[e>>2],h=_[y+b|0],f=a,f=(A=b+1|0)?f:f+1|0,s[e+16>>2]=A,s[e+20>>2]=f,t>>>0<=A>>>0&(0|f)>=(0|n)|(0|f)>(0|n)){t=0;break r}if(A=_[A+y|0],f=a,f=(k=b+2|0)>>>0<2?f+1|0:f,s[e+16>>2]=k,s[e+20>>2]=f,t>>>0<=k>>>0&(0|f)>=(0|n)|(0|f)>(0|n)){t=0;break r}if(k=_[k+y|0],f=a,f=(u=b+3|0)>>>0<3?f+1|0:f,s[e+16>>2]=u,s[e+20>>2]=f,t>>>0<=u>>>0&(0|f)>=(0|n)|(0|f)>(0|n)){t=0;break r}if(t=_[u+y|0],f=a,f=(a=b+4|0)>>>0<4?f+1|0:f,s[e+16>>2]=a,s[e+20>>2]=f,h>>>0>4){t=0;break r}if((A-12&255)>>>0<245){t=0;break r}if(!k){t=0;break r}u=af(i+8|0),n=!!(0|t),f=(a=A-1|0)>>>0<=10?s[13584+(a<<2)>>2]:-1,pf(u,h,k,A,n,a=m(f,k),a>>31);e:{if((65535&((a=l[s[r+28>>2]+36>>1])<<8|a>>>8))>>>0<=258){if(f=s[e+20>>2],f=(a=(b=s[e+16>>2])+2|0)>>>0<2?f+1|0:f,t=s[e+12>>2],p[e+8>>2]<a>>>0&(0|t)<=(0|f)|(0|f)>(0|t))break e;b=b+s[e>>2]|0,t=_[0|b]|_[b+1|0]<<8,s[e+16>>2]=a,s[e+20>>2]=f}else{if(!Gi(1,i+4|0,e))break e;t=s[i+4>>2]}if(s[i+68>>2]=t,a=Je(mf(96),u),Ya[s[s[c>>2]+8>>2]](c,s[c+12>>2]-s[c+8>>2]>>2,a),a=(s[c+12>>2]-s[c+8>>2]>>2)-1|0,s[s[(b=a<<2)+s[c+8>>2]>>2]+60>>2]=t,s[s[r+4>>2]+(d<<2)>>2]=a,t=s[r+16>>2],(0|(f=s[r+20>>2]-t>>2))>(0|a)||(s[i>>2]=-1,(a=a+1|0)>>>0>f>>>0?(xr(v,a-f|0,i),t=s[v>>2]):f>>>0<=a>>>0||(s[r+20>>2]=(a<<2)+t)),s[t+b>>2]=d,t=1,(0|(d=d+1|0))!=(0|o))continue;break r}break}t=0}}return Q=i+80|0,0|t}function Ur(r,e,i){e|=0,i|=0;var f,a=0,t=0,b=0,A=0,n=0,o=0,k=0,u=0,l=0,p=0,y=0;r:if(!((0|(f=0|Ya[s[s[(r|=0)>>2]+44>>2]](r)))<=0)&&(o=s[e+4>>2]-s[e>>2]>>2,Q=t=Q+-64|0,b=af(t),a=m(s[3400],f),pf(b,s[s[r+8>>2]+56>>2],255&f,5,0,a,a>>31),b=Je(mf(96),b),c[b+84|0]=1,s[b+72>>2]=s[b+68>>2],Ie(b,o),s[b+60>>2]=s[s[r+8>>2]+60>>2],a=s[r+16>>2],s[r+16>>2]=b,a&&Ci(a),Q=t- -64|0,n=s[r+16>>2],s[n+80>>2]&&(k=s[s[n>>2]>>2])&&!((0|(t=p=s[i+12>>2]))<=(0|(a=s[i+20>>2]))&(A=s[i+8>>2])>>>0<=(u=s[i+16>>2])>>>0|(0|a)>(0|t)))){l=m(o,f),o=k+s[n+48>>2]|0,n=s[i>>2],k=_[n+u|0],b=(t=u+1|0)?a:a+1|0,s[i+16>>2]=t,s[i+20>>2]=b;e:{i:{if(k){if(J(l,f,i,o))break i;break r}if((0|b)>=(0|p)&t>>>0>=A>>>0|(0|b)>(0|p))break r;if(A=_[t+n|0],a=(b=u+2|0)>>>0<2?a+1|0:a,s[i+16>>2]=b,s[i+20>>2]=a,a=s[s[r+16>>2]+64>>2],a=s[a+4>>2]-s[a>>2]|0,(0|A)!=s[3400]){if(a>>>0<m(A,l)>>>0)break r;if(t=(a=s[i+8>>2])-(b=s[i+16>>2])|0,p=a>>>0<b>>>0,a=s[i+20>>2],u=s[i+12>>2]-(p+a|0)|0,(p=Ki(A,0,l,0)>>>0>t>>>0)&(0|(t=j))>=(0|u)|(0|t)>(0|u))break r;if(t=1,!l)break e;for(n=0;;){if((t=b+A|0)>>>0>(u=s[i+8>>2])>>>0&(0|(a=t>>>0<A>>>0?a+1|0:a))>=(0|(k=s[i+12>>2]))|(0|a)>(0|k))return 0;if(Cr(o+(n<<2)|0,s[i>>2]+b|0,A),a=s[i+20>>2],a=(b=A+s[i+16>>2]|0)>>>0<A>>>0?a+1|0:a,s[i+16>>2]=b,s[i+20>>2]=a,(0|l)==(0|(n=n+1|0)))break}}else{if((t=l<<2)>>>0>a>>>0)break r;if(A=s[i+8>>2],u=s[i+12>>2],k=s[i+20>>2],(b=t+(a=s[i+16>>2])|0)>>>0>A>>>0&(0|(k=b>>>0<t>>>0?k+1|0:k))>=(0|u)|(0|k)>(0|u))break r;Cr(o,a+s[i>>2]|0,t),b=s[i+20>>2],b=(a=t+s[i+16>>2]|0)>>>0<t>>>0?b+1|0:b,s[i+16>>2]=a,s[i+20>>2]=b}}if(t=1,l&&!((a=s[r+20>>2])&&(t=0,0|Ya[s[s[a>>2]+32>>2]](a)))){if(A=0,n=0,!((0|l)<=0)){if(1!=(0|l))for(b=-2&l;a=s[(t=A<<2)+o>>2],s[t+o>>2]=0-(1&a)^a>>>1,t=s[(a=4|t)+o>>2],s[a+o>>2]=0-(1&t)^t>>>1,A=A+2|0,(0|b)!=(0|(n=n+2|0)););1&l&&(b=s[(a=A<<2)+o>>2],s[a+o>>2]=0-(1&b)^b>>>1)}t=0}}if(a=t,b=s[r+20>>2]){if(!(0|Ya[s[s[b>>2]+40>>2]](b,i)))break r;if(!(a||(r=s[r+20>>2],0|Ya[s[s[r>>2]+44>>2]](r,o,o,l,f,s[e>>2]))))break r}y=1}return 0|y}function Wr(r,e){var i,f=0,a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0,_=0;Q=i=Q-32|0;r:{if(!(s[r+8>>2]<<5>>>0>=e>>>0)){if((0|e)<0)break r;f=mf((e=1+(e-1>>>5|0)|0)<<2),s[i+24>>2]=e,s[i+20>>2]=0,s[i+16>>2]=f,e=s[r>>2],s[i+12>>2]=0,s[i+8>>2]=e,f=s[r+4>>2],s[i+4>>2]=31&f,s[i>>2]=e+(f>>>3&536870908),Q=t=Q-32|0,f=(e=((o=s[i+4>>2])-(A=s[i+12>>2])|0)+((k=s[i>>2])-(a=s[i+8>>2])<<3)|0)+(b=s[i+20>>2])|0,s[i+20>>2]=f,(f-1^b-1)>>>0<32&&b||(s[s[i+16>>2]+((f>>>0>=33?f-1>>>5:0)<<2)>>2]=0),f=s[i+16>>2]+(b>>>3&536870908)|0;e:if((0|(b&=31))!=(0|A)){if(s[t+28>>2]=A,s[t+24>>2]=a,s[t+20>>2]=o,s[t+16>>2]=k,s[t+12>>2]=b,s[t+8>>2]=f,e=s[t+28>>2],f=s[t+24>>2],(0|(A=(s[t+20>>2]-e|0)+(s[t+16>>2]-f<<3)|0))<=0)e=s[t+12>>2],a=s[t+8>>2];else{if(e?(o=(b=(0|A)<(0|(c=32-e|0))?A:c)>>>0>(k=32-(a=s[t+12>>2])|0)>>>0?k:b,u=s[t+8>>2],_=s[u>>2]&~(-1<<a&-1>>>k-o),k=s[f>>2]&-1<<e&-1>>>c-b,s[u>>2]=_|(e>>>0<a>>>0?k<<a-e:k>>>e-a),e=31&(f=a+o|0),s[t+12>>2]=e,a=u+(f>>>3&536870908)|0,s[t+8>>2]=a,(0|(f=b-o|0))>0&&(s[a>>2]=s[a>>2]&~(-1>>>32-f)|k>>>o+s[t+28>>2],s[t+12>>2]=f,e=f),A=A-b|0,f=s[t+24>>2]+4|0,s[t+24>>2]=f):e=s[t+12>>2],o=-1<<e,b=32-e|0,(0|A)>=32)for(k=~o;a=s[t+8>>2],f=s[f>>2],s[a>>2]=k&s[a>>2]|f<<e,s[t+8>>2]=a+4,s[a+4>>2]=o&s[a+4>>2]|f>>>b,f=s[t+24>>2]+4|0,s[t+24>>2]=f,a=A>>>0>63,A=A-32|0,a;);a=s[t+8>>2],(0|A)<=0||(k=b,b=(0|A)>(0|b)?b:A,k=s[a>>2]&~(o&-1>>>k-b),o=s[f>>2]&-1>>>32-A,s[a>>2]=k|o<<e,f=31&(e=e+b|0),s[t+12>>2]=f,a=(e>>>3&536870908)+a|0,s[t+8>>2]=a,(0|(e=A-b|0))<=0?e=f:(s[a>>2]=s[a>>2]&~(-1>>>32-e)|o>>>b,s[t+12>>2]=e))}s[t+4>>2]=e,s[t>>2]=a}else{if((0|e)<=0)break e;if(A&&(o=-1<<A&-1>>>(o=32-A|0)-(b=(0|e)<(0|o)?e:o),s[f>>2]=s[f>>2]&~o|o&s[a>>2],a=a+4|0,f=(A+b>>>3&536870908)+f|0,e=e-b|0),A=(0|e)/32|0,e+31>>>0>=63&&me(f,a,A<<2),(0|(e=e-(A<<5)|0))<=0)break e;e=-1>>>32-e|0,s[(A=(b=f)+(f=A<<2)|0)>>2]=s[A>>2]&~e|e&s[f+a>>2]}Q=t+32|0,e=s[r>>2],s[r>>2]=s[i+16>>2],s[i+16>>2]=e,f=s[r+4>>2],s[r+4>>2]=s[i+20>>2],s[i+20>>2]=f,f=s[r+8>>2],s[r+8>>2]=s[i+24>>2],s[i+24>>2]=f,e&&mr(e)}return void(Q=i+32|0)}ha(),n()}function Vr(r,e){var i=0,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0,c=0,u=0,p=0,y=0;r:if(i=l[e+38>>1]){if(i>>>0<=511){if(b=s[e+8>>2],a=s[e+12>>2],f=s[e+20>>2],b>>>0<(n=(i=s[e+16>>2])+4|0)>>>0&(0|(f=n>>>0<4?f+1|0:f))>=(0|a)|(0|f)>(0|a))break r;i=i+s[e>>2]|0,t=_[0|i]|_[i+1|0]<<8|_[i+2|0]<<16|_[i+3|0]<<24,s[r+12>>2]=t,f=s[e+20>>2],f=(i=s[e+16>>2]+4|0)>>>0<4?f+1|0:f,s[e+16>>2]=i,s[e+20>>2]=f}else{if(!Ri(1,r+12|0,e))break r;i=s[e+16>>2],f=s[e+20>>2],t=s[r+12>>2]}if(!((n=(a=s[e+8>>2])-i|0)>>>0<t>>>6>>>0&(0|(i=s[e+12>>2]-(f+(i>>>0>a>>>0)|0)|0))<=0|(0|i)<0)){if(f=s[r>>2],(i=s[r+4>>2]-f>>2)>>>0<t>>>0?(ai(r,t-i|0),t=s[r+12>>2]):i>>>0<=t>>>0||(s[r+4>>2]=f+(t<<2)),!t)return 1;for(i=s[e+16>>2],f=s[e+20>>2],c=s[r>>2],n=s[e+8>>2],o=s[e+12>>2],b=0;;){if((0|f)>=(0|o)&i>>>0>=n>>>0|(0|f)>(0|o))return 0;u=s[e>>2],k=_[u+i|0],f=(i=i+1|0)?f:f+1|0,s[e+16>>2]=i,s[e+20>>2]=f,a=k>>>2|0,A=0;e:{i:{f:{a:switch(0|(p=3&k)){case 0:break i;case 3:break a;default:break f}if((a=a+b|0)>>>0>=t>>>0)return 0;Ge(c+(b<<2)|0,0,4+(252&k)|0),b=a;break e}for(;;){if((0|i)==(0|n)&(0|f)==(0|o))break r;if(t=_[i+u|0],f=(i=i+1|0)?f:f+1|0,s[e+16>>2]=i,s[e+20>>2]=f,a|=t<<(A<<3|6),(0|p)==(0|(A=A+1|0)))break}}s[c+(b<<2)>>2]=a}if(!((t=s[r+12>>2])>>>0>(b=b+1|0)>>>0))break}if(e=r+16|0,n=s[r>>2],f=s[r+16>>2],(i=s[r+20>>2]-f|0)>>>0<=16383?ai(e,4096-(i>>>2|0)|0):16384!=(0|i)&&(s[r+20>>2]=f+16384),b=s[(i=r+28|0)>>2],(f=s[r+32>>2]-b>>3)>>>0<t>>>0)Ai(i,t-f|0),b=s[i>>2];else if(f>>>0>t>>>0&&(s[r+32>>2]=(t<<3)+b),!t)break r;for(f=s[e>>2],e=0,r=0;;){if(A=s[(i=n+(e<<2)|0)>>2],a=r,s[(o=(e<<3)+b|0)+4>>2]=r,s[o>>2]=A,(r=(i=s[i>>2])+r|0)>>>0>4096)break r;if(!(r>>>0<=a>>>0)){if(A=0,o=7&i)for(;s[f+(a<<2)>>2]=e,a=a+1|0,(0|o)!=(0|(A=A+1|0)););if(!(i-1>>>0<=6))for(;s[(i=f+(a<<2)|0)>>2]=e,s[i+28>>2]=e,s[i+24>>2]=e,s[i+20>>2]=e,s[i+16>>2]=e,s[i+12>>2]=e,s[i+8>>2]=e,s[i+4>>2]=e,(0|(a=a+8|0))!=(0|r););}if((0|t)==(0|(e=e+1|0)))break}y=4096==(0|r)}}return y}function Tr(r,e){var i,f=0,a=0,t=0,b=0,A=0,n=0;Q=i=Q-16|0,f=s[r+4>>2],s[r+40>>2]=s[r>>2],s[r+44>>2]=f,f=s[r+36>>2],s[r+72>>2]=s[r+32>>2],s[r+76>>2]=f,a=s[r+28>>2],s[(f=r- -64|0)>>2]=s[r+24>>2],s[f+4>>2]=a,f=s[r+20>>2],s[r+56>>2]=s[r+16>>2],s[r+60>>2]=f,f=s[r+12>>2],s[r+48>>2]=s[r+8>>2],s[r+52>>2]=f;r:if(Me(r+40|0,1,i+8|0)&&(f=s[r+44>>2],s[r>>2]=s[r+40>>2],s[r+4>>2]=f,f=s[r+76>>2],s[r+32>>2]=s[r+72>>2],s[r+36>>2]=f,f=s[r+68>>2],s[r+24>>2]=s[r+64>>2],s[r+28>>2]=f,A=a=s[r+60>>2],f=s[r+56>>2],s[r+16>>2]=f,s[r+20>>2]=a,t=s[r+52>>2],a=s[r+48>>2],s[r+8>>2]=a,s[r+12>>2]=t,n=a-f|0,(0|(b=s[i+12>>2]))==(0|(t=t-((f>>>0>a>>>0)+A|0)|0))&n>>>0>=(a=s[i+8>>2])>>>0|t>>>0>b>>>0)){if(t=A+b|0,t=(f=f+a|0)>>>0<a>>>0?t+1|0:t,s[r+16>>2]=f,s[r+20>>2]=t,l[r+38>>1]<=513){if(f=s[r+4>>2],s[r+96>>2]=s[r>>2],s[r+100>>2]=f,f=s[r+36>>2],s[r+128>>2]=s[r+32>>2],s[r+132>>2]=f,f=s[r+28>>2],s[r+120>>2]=s[r+24>>2],s[r+124>>2]=f,f=s[r+20>>2],s[r+112>>2]=s[r+16>>2],s[r+116>>2]=f,f=s[r+12>>2],s[r+104>>2]=s[r+8>>2],s[r+108>>2]=f,!(Me(r+96|0,1,i+8|0)&&(f=s[r+100>>2],s[r>>2]=s[r+96>>2],s[r+4>>2]=f,f=s[r+132>>2],s[r+32>>2]=s[r+128>>2],s[r+36>>2]=f,f=s[r+124>>2],s[r+24>>2]=s[r+120>>2],s[r+28>>2]=f,A=a=s[r+116>>2],f=s[r+112>>2],s[r+16>>2]=f,s[r+20>>2]=a,t=s[r+108>>2],a=s[r+104>>2],s[r+8>>2]=a,s[r+12>>2]=t,n=a-f|0,(0|(b=s[i+12>>2]))==(0|(t=t-((f>>>0>a>>>0)+A|0)|0))&n>>>0>=(a=s[i+8>>2])>>>0|t>>>0>b>>>0))){f=0;break r}t=A+b|0,t=(f=f+a|0)>>>0<a>>>0?t+1|0:t,s[r+16>>2]=f,s[r+20>>2]=t}else if(f=0,!Mr(r+80|0,r))break r;f=0,je(r)&&(f=s[r+4>>2],s[e>>2]=s[r>>2],s[e+4>>2]=f,f=s[r+36>>2],s[e+32>>2]=s[r+32>>2],s[e+36>>2]=f,f=s[r+28>>2],s[e+24>>2]=s[r+24>>2],s[e+28>>2]=f,f=s[r+20>>2],s[e+16>>2]=s[r+16>>2],s[e+20>>2]=f,f=s[r+12>>2],s[e+8>>2]=s[r+8>>2],s[e+12>>2]=f,f=1)}else f=0;return Q=i+16|0,f}function Dr(r,e){var i=0,f=0,a=0,t=0,b=0,A=0,o=0;s[r+64>>2]||(i=mf(32),s[i+16>>2]=0,s[i+20>>2]=0,s[i+8>>2]=0,s[i>>2]=0,s[i+4>>2]=0,s[i+24>>2]=0,s[i+28>>2]=0,f=s[r+64>>2],s[r+64>>2]=i,f&&((i=s[f>>2])&&(s[f+4>>2]=i,mr(i)),mr(f),i=s[r+64>>2]),s[r>>2]=i,f=s[i+20>>2],s[r+8>>2]=s[i+16>>2],s[r+12>>2]=f,f=s[i+24>>2],i=s[i+28>>2],s[r+48>>2]=0,s[r+52>>2]=0,s[r+40>>2]=0,s[r+44>>2]=0,s[r+16>>2]=f,s[r+20>>2]=i);r:{c[r+24|0]=_[e+24|0],s[r+28>>2]=s[e+28>>2],c[r+32|0]=_[e+32|0],i=s[e+44>>2],s[r+40>>2]=s[e+40>>2],s[r+44>>2]=i,i=s[e+52>>2],s[r+48>>2]=s[e+48>>2],s[r+52>>2]=i,s[r+56>>2]=s[e+56>>2],i=s[e+12>>2],s[r+8>>2]=s[e+8>>2],s[r+12>>2]=i,i=s[e+20>>2],s[r+16>>2]=s[e+16>>2],s[r+20>>2]=i,s[r+60>>2]=s[e+60>>2],(i=s[e>>2])?(f=0,(b=s[r>>2])&&(ie(b,f=s[i>>2],i=s[i+4>>2]-f|0,0),f=1)):(s[r>>2]=0,f=1);e:if(f){c[r+84|0]=_[e+84|0],s[r+80>>2]=s[e+80>>2],(0|r)!=(0|e)&&Ve(r+68|0,s[e+68>>2],s[e+72>>2]);i:{if(t=s[e+88>>2]){if(a=mf(40),e=s[t>>2],s[a+16>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0,s[a>>2]=e,(0|(i=s[t+12>>2]))!=(0|(e=s[t+8>>2]))){if((0|(i=i-e|0))<0)break r;if(e=mf(i),s[a+12>>2]=e,s[a+8>>2]=e,s[a+16>>2]=e+i,(0|(i=s[t+8>>2]))!=(0|(A=s[t+12>>2]))){if(b=~i+A|0,f=A-i&7)for(;c[0|e]=_[0|i],e=e+1|0,i=i+1|0,(0|f)!=(0|(o=o+1|0)););if(!(b>>>0<7))for(;c[0|e]=_[0|i],c[e+1|0]=_[i+1|0],c[e+2|0]=_[i+2|0],c[e+3|0]=_[i+3|0],c[e+4|0]=_[i+4|0],c[e+5|0]=_[i+5|0],c[e+6|0]=_[i+6|0],c[e+7|0]=_[i+7|0],e=e+8|0,(0|A)!=(0|(i=i+8|0)););}s[a+12>>2]=e}if(e=s[t+36>>2],s[a+32>>2]=s[t+32>>2],s[a+36>>2]=e,e=s[t+28>>2],s[a+24>>2]=s[t+24>>2],s[a+28>>2]=e,e=s[r+88>>2],s[r+88>>2]=a,e)break i;break e}if(e=s[r+88>>2],s[r+88>>2]=0,!e)break e}(r=s[e+8>>2])&&(s[e+12>>2]=r,mr(r)),mr(e)}return}ha(),n()}function Fr(r,e,i){r|=0,e|=0,i|=0;var f,a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0,_=0;Q=f=Q-16|0,s[f+8>>2]=i;r:if(!((0|(A=(o=s[r+12>>2])-(a=s[r+8>>2])>>2))>(0|e)))if((t=e+1|0)>>>0>A>>>0){if((u=t-A|0)>>>0<=(b=s[r+16>>2])-(a=s[r+12>>2])>>2>>>0){u&&(a=Ge(t=a,0,a=u<<2)+a|0),s[r+12>>2]=a;break r}e:{i:{f:{if((k=(A=a-(_=s[r+8>>2])>>2)+u|0)>>>0<1073741824){if(b=(t=b-_|0)>>>1|0,t=t>>>0>=2147483644?1073741823:b>>>0>k>>>0?b:k){if(t>>>0>=1073741824)break f;c=mf(t<<2)}if(A=(b=u<<2)+(k=Ge(o=(A<<2)+c|0,0,b))|0,t=(t<<2)+c|0,(0|a)==(0|_))break i;for(;b=s[(a=a-4|0)>>2],s[a>>2]=0,s[(o=o-4|0)>>2]=b,(0|a)!=(0|_););if(s[r+16>>2]=t,t=s[r+12>>2],s[r+12>>2]=A,a=s[r+8>>2],s[r+8>>2]=o,(0|a)==(0|t))break e;for(;b=s[(t=t-4|0)>>2],s[t>>2]=0,b&&Ci(b),(0|a)!=(0|t););break e}ha(),n()}Df(),n()}s[r+16>>2]=t,s[r+12>>2]=A,s[r+8>>2]=k}a&&mr(a)}else if(!(t>>>0>=A>>>0)){if((0|(a=a+(t<<2)|0))!=(0|o)){for(;i=s[(o=o-4|0)>>2],s[o>>2]=0,i&&Ci(i),(0|a)!=(0|o););i=s[f+8>>2]}s[r+12>>2]=a}r:{e:{if(!((0|(a=s[i+56>>2]))>4))if(c=m(a,12)+r|0,(0|(a=s[c+24>>2]))==s[c+28>>2]){if((t=(b=(A=a-(k=s[c+20>>2])|0)>>2)+1|0)>>>0>=1073741824)break e;if(a=A>>>1|0,t=A>>>0>=2147483644?1073741823:a>>>0>t>>>0?a:t){if(t>>>0>=1073741824)break r;a=mf(t<<2)}else a=0;s[(b=a+(b<<2)|0)>>2]=e,a=me(a,k,A),s[c+20>>2]=a,s[c+24>>2]=b+4,s[c+28>>2]=a+(t<<2),k&&mr(k)}else s[a>>2]=e,s[c+24>>2]=a+4;return s[i+60>>2]=e,r=s[r+8>>2],s[f+8>>2]=0,e=s[(r=r+(e<<2)|0)>>2],s[r>>2]=i,e&&Ci(e),r=s[f+8>>2],s[f+8>>2]=0,r&&Ci(r),void(Q=f+16|0)}ha(),n()}Df(),n()}function Br(r,e){var i,f,a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0,_=0,l=0;Q=i=Q-16|0,s[i>>2]=e,A=-1,-1!=(0|e)?(A=e+1|0,s[i+4>>2]=(A>>>0)%3|0?A:e-2|0,A=(e>>>0)%3|0?e-1|0:e+2|0):s[i+4>>2]=-1,s[i+8>>2]=A,f=(e>>>0)/3|0;r:{e:{i:{for(;;){f:if(-1!=(0|(c=s[(_<<2)+i>>2]))&&-1!=(0|(A=s[s[s[r+8>>2]+12>>2]+(c<<2)>>2]))){if(!(-1==(0|e)|(A>>>0)/3>>>0<f>>>0)&&(A=0,s[r+220>>2]!=s[r+216>>2]))for(;;){if(Xi(s[r+368>>2]+(A<<4)|0))if(o=s[r+216>>2]+m(A,144)|0,(t=s[o+136>>2])>>>0<(a=s[o+140>>2])>>>0)s[t>>2]=c,s[o+136>>2]=t+4;else{if((k=(b=(u=(b=t)-(t=s[o+132>>2])|0)>>2)+1|0)>>>0>=1073741824)break r;if(l=b<<2,b=(a=a-t|0)>>>1|0,k=a>>>0>=2147483644?1073741823:k>>>0<b>>>0?b:k){if(k>>>0>=1073741824)break e;a=mf(k<<2)}else a=0;s[(b=l+a|0)>>2]=c,a=me(a,t,u),s[o+132>>2]=a,s[o+136>>2]=b+4,s[o+140>>2]=a+(k<<2),t&&mr(t)}if(!((A=A+1|0)>>>0<(s[r+220>>2]-s[r+216>>2]|0)/144>>>0))break}}else{if(A=0,(0|(o=s[r+216>>2]))==s[r+220>>2])break f;for(;;){if(o=m(A,144)+o|0,(t=s[o+136>>2])>>>0<(a=s[o+140>>2])>>>0)s[t>>2]=c,s[o+136>>2]=t+4;else{if((k=(b=(u=(b=t)-(t=s[o+132>>2])|0)>>2)+1|0)>>>0>=1073741824)break i;if(l=b<<2,b=(a=a-t|0)>>>1|0,k=a>>>0>=2147483644?1073741823:k>>>0<b>>>0?b:k){if(k>>>0>=1073741824)break e;a=mf(k<<2)}else a=0;s[(b=l+a|0)>>2]=c,a=me(a,t,u),s[o+132>>2]=a,s[o+136>>2]=b+4,s[o+140>>2]=a+(k<<2),t&&mr(t)}if(A=A+1|0,o=s[r+216>>2],!(A>>>0<(s[r+220>>2]-o|0)/144>>>0))break}}if(3==(0|(_=_+1|0)))break}return Q=i+16|0,1}ha(),n()}Df(),n()}ha(),n()}function Er(r,e){var i,f=0,a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0;Q=i=Q-16|0,s[i>>2]=e,f=-1,-1!=(0|e)?(f=e+1|0,s[i+4>>2]=(f>>>0)%3|0?f:e-2|0,f=(e>>>0)%3|0?e-1|0:e+2|0):s[i+4>>2]=-1,s[i+8>>2]=f;r:{e:{for(;;){i:{if(!(-1==(0|(o=s[(c<<2)+i>>2]))|-1==s[s[s[r+8>>2]+12>>2]+(o<<2)>>2])){if(e=0,s[r+220>>2]==s[r+216>>2])break i;for(;;){f:{if(Xi(s[r+368>>2]+(e<<4)|0))if(f=s[r+216>>2]+m(e,144)|0,(t=s[f+136>>2])>>>0<(a=s[f+140>>2])>>>0)s[t>>2]=o,s[f+136>>2]=t+4;else{if((A=(b=(k=(b=t)-(t=s[f+132>>2])|0)>>2)+1|0)>>>0>=1073741824)break f;if(u=b<<2,b=(a=a-t|0)>>>1|0,A=a>>>0>=2147483644?1073741823:A>>>0<b>>>0?b:A){if(A>>>0>=1073741824)break r;a=mf(A<<2)}else a=0;s[(b=u+a|0)>>2]=o,a=me(a,t,k),s[f+132>>2]=a,s[f+136>>2]=b+4,s[f+140>>2]=a+(A<<2),t&&mr(t)}if((e=e+1|0)>>>0<(s[r+220>>2]-s[r+216>>2]|0)/144>>>0)continue;break i}break}ha(),n()}if(e=0,(0|(f=s[r+216>>2]))!=s[r+220>>2])for(;;){if(f=m(e,144)+f|0,(t=s[f+136>>2])>>>0<(a=s[f+140>>2])>>>0)s[t>>2]=o,s[f+136>>2]=t+4;else{if((A=(b=(k=(b=t)-(t=s[f+132>>2])|0)>>2)+1|0)>>>0>=1073741824)break e;if(u=b<<2,b=(a=a-t|0)>>>1|0,A=a>>>0>=2147483644?1073741823:A>>>0<b>>>0?b:A){if(A>>>0>=1073741824)break r;a=mf(A<<2)}else a=0;s[(b=u+a|0)>>2]=o,a=me(a,t,k),s[f+132>>2]=a,s[f+136>>2]=b+4,s[f+140>>2]=a+(A<<2),t&&mr(t)}if(e=e+1|0,f=s[r+216>>2],!(e>>>0<(s[r+220>>2]-f|0)/144>>>0))break}}if(3==(0|(c=c+1|0)))break}return Q=i+16|0,1}ha(),n()}Df(),n()}function Yr(r,e,i,f){var a,t,b,A=0,n=0,o=0,k=0,c=0,u=0,_=0;if(a=s[e+16>>2],k=s[i+4>>2]-a|0,A=s[i>>2]-a|0,s[i>>2]=A,n=k,s[i+4>>2]=n,b=(t=s[e+16>>2])>>>0>=(o=(k^(n>>=31))-n|0)+(((n=A>>31)^A)-n|0)>>>0)n=k;else{r:{e:{if((0|A)>=0){if(o=1,u=1,(0|k)>=0)break r;if(c=1,o=-1,u=-1,A)break e;break r}if(c=-1,o=-1,u=-1,(0|k)<=0)break r}o=(0|k)<=0?-1:1,u=c}n=(A<<1)-(_=m(u,t))|0,n=(((c=(0|m(o,u))>=0)?0-n|0:n)+(A=m(o,t))|0)/2|0,s[i+4>>2]=n,A=(k<<1)-A|0,A=((c?0-A|0:A)+_|0)/2|0,s[i>>2]=A}r:{e:{i:{f:{a:{t:{b:{if(A){if((0|A)<0)break b;if((0|n)>=0)break t;break i}if(n)break a;u=1,o=0,n=0,c=0;break r}if(u=1,(0|n)>0)break f;c=(0|n)>0?3:0,o=n,n=A;break r}o=0-n|0,n=0-A|0,c=2;break e}if((0|n)<=0)break i}n=0-n|0,o=A,c=3;break e}o=0-A|0,c=1}s[i>>2]=n,s[i+4>>2]=o,u=0}(0|(A=s[f>>2]+n|0))>(0|(k=s[e+16>>2]))?A=A-s[e+4>>2]|0:(0-k|0)<=(0|A)||(A=s[e+4>>2]+A|0),(0|k)<(0|(i=s[f+4>>2]+o|0))?i=i-s[e+4>>2]|0:(0-k|0)<=(0|i)||(i=s[e+4>>2]+i|0);r:if(u)e=i;else{e=i;e:{i:{f:switch(((f=4-c|0)>>>0<4?f:0-c|0)-1|0){case 2:break e;case 1:break i;case 0:break f;default:break r}e=0-A|0,A=i;break r}e=0-i|0,A=0-A|0;break r}e=A,A=0-i|0}if(b)i=e;else{r:{e:{if((0|A)>=0){if(i=1,n=1,(0|e)>=0)break r;if(f=1,i=-1,n=-1,A)break e;break r}if(f=-1,i=-1,n=-1,(0|e)<=0)break r}i=(0|e)<=0?-1:1,n=f}f=(f=A<<1)-(A=m(n,k))|0,i=((o=(n=(0|m(i,n))>=0)?0-f|0:f)+(f=m(i,k))|0)/2|0,e=(e<<1)-f|0,A=(A+(n?0-e|0:e)|0)/2|0}s[(e=r)>>2]=A+a,s[e+4>>2]=i+a}function Qr(r,e){var i=0,f=0,a=0,t=0,b=0;f=-1,t=-1,-1!=(0|e)&&(f=((i=e+1|0)>>>0)%3|0?i:e-2|0,t=e-1|0,(e>>>0)%3|0||(t=e+2|0));r:{e:{i:{f:{a:{t:switch(0|(a=s[r+184>>2])){case 7:break i;case 3:break f;case 5:break a;case 0:case 1:break t;default:break r}b=s[r+148>>2],i=-1,a=1,f=(-1!=(0|f)?s[s[b>>2]+(f<<2)>>2]:i)<<2,i=s[r+156>>2],s[(f=f+i|0)>>2]=s[f>>2]+1,i=((-1==(0|t)?-1:s[s[b>>2]+(t<<2)>>2])<<2)+i|0;break e}b=s[r+148>>2],a=(i=s[r+156>>2])+((-1==(0|e)?-1:s[s[b>>2]+(e<<2)>>2])<<2)|0,s[a>>2]=s[a>>2]+1,f=((-1==(0|f)?-1:s[s[b>>2]+(f<<2)>>2])<<2)+i|0,s[f>>2]=s[f>>2]+1,a=2,i=((-1==(0|t)?-1:s[s[b>>2]+(t<<2)>>2])<<2)+i|0;break e}b=s[r+148>>2],a=(i=s[r+156>>2])+((-1==(0|e)?-1:s[s[b>>2]+(e<<2)>>2])<<2)|0,s[a>>2]=s[a>>2]+1,f=((-1==(0|f)?-1:s[s[b>>2]+(f<<2)>>2])<<2)+i|0,s[f>>2]=s[f>>2]+2,a=1,i=((-1==(0|t)?-1:s[s[b>>2]+(t<<2)>>2])<<2)+i|0;break e}b=s[r+148>>2],a=(i=s[r+156>>2])+((-1==(0|e)?-1:s[s[b>>2]+(e<<2)>>2])<<2)|0,s[a>>2]=s[a>>2]+2,f=((-1==(0|f)?-1:s[s[b>>2]+(f<<2)>>2])<<2)+i|0,s[f>>2]=s[f>>2]+2,a=2,i=((-1==(0|t)?-1:s[s[b>>2]+(t<<2)>>2])<<2)+i|0}s[i>>2]=s[i>>2]+a,a=s[r+184>>2]}r:switch(0|a){case 0:case 5:return t=s[r+156>>2],i=-1,-1!=(0|e)&&(i=-1,-1!=(0|(e=((f=e+1|0)>>>0)%3|0?f:e-2|0))&&(i=s[s[s[r+148>>2]>>2]+(e<<2)>>2])),s[t+(i<<2)>>2]<=5?void(s[r+188>>2]=5):void(s[r+188>>2]=0);default:break r}s[r+188>>2]=-1}function jr(r,e){r|=0;var i,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0,u=0,l=0;if(Q=i=Q-16|0,f=s[(e|=0)+20>>2],f=(t=(a=s[e+16>>2])+4|0)>>>0<4?f+1|0:f,A=s[e+12>>2],!(p[e+8>>2]<t>>>0&(0|A)<=(0|f)|(0|f)>(0|A))&&(a=a+s[e>>2]|0,n=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[e+16>>2]=t,s[e+20>>2]=f,!((0|n)<0)&&(ae(r+76|0,n),s[(f=i)>>2]=0,s[f+4>>2]=0,c[f+5|0]=0,c[f+6|0]=0,c[f+7|0]=0,c[f+8|0]=0,c[f+9|0]=0,c[f+10|0]=0,c[f+11|0]=0,c[f+12|0]=0,Mr(f,e)))){if(n)for(A=1;a=1<<o,t=Xi(f),b=s[r+76>>2]+(o>>>3&536870908)|0,1&(t^=A)?a=s[b>>2]&~a:a|=s[b>>2],A=1^t,s[b>>2]=a,(0|n)!=(0|(o=o+1|0)););o=0,f=s[e+8>>2],b=t=s[e+12>>2],A=t=s[e+20>>2],n=a=(u=s[e+16>>2])+4|0,a>>>0>f>>>0&(0|(t=a>>>0<4?t+1|0:t))>=(0|b)|(0|t)>(0|b)||(l=s[e>>2],k=_[0|(a=l+u|0)]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[e+16>>2]=n,s[e+20>>2]=t,a=f,f=A,a>>>0<(t=u+8|0)>>>0&(0|(f=t>>>0<8?f+1|0:f))>=(0|b)|(0|f)>(0|b)||(a=_[0|(a=n+l|0)]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[e+16>>2]=t,s[e+20>>2]=f,(0|a)<(0|k)||(s[r+16>>2]=a,s[r+12>>2]=k,!(f=(a>>31)-((k>>31)+(a>>>0<k>>>0)|0)|0)&(e=a-k|0)>>>0>2147483646|f||(o=1,f=e+1|0,s[r+20>>2]=f,e=f>>>1|0,s[r+24>>2]=e,s[r+28>>2]=0-e,1&f||(s[r+24>>2]=e-1)))))}return Q=i+16|0,0|o}function Ir(r,e,i,f){r|=0,i|=0,f|=0;var a,t,b=0,A=0,o=0,k=0,u=0,l=0,p=0,y=0,d=0,v=0;r=0,Q=t=Q-16|0,a=s[(e|=0)+80>>2],b=_[i+24|0],e=m(a,b);r:{e:{i:{f:{if(A=s[i+28>>2],!(!_[i+84|0]|5!=(0|A)&6!=(0|A))){if(b=s[i+48>>2],i=s[s[i>>2]>>2],s[t+8>>2]=0,s[t>>2]=0,s[t+4>>2]=0,e){if((0|e)<0)break f;o=Cr(r=mf(e<<=2),i+b|0,e)+e|0}(e=s[f>>2])&&(s[f+4>>2]=e,mr(e)),s[f+8>>2]=o,s[f+4>>2]=o,s[f>>2]=r,k=1;break r}if(b&&Ge(r=mf(A=b<<2),0,A),u=s[f>>2],(A=s[f+4>>2]-u>>2)>>>0<e>>>0?ai(f,e-A|0):e>>>0>=A>>>0||(s[f+4>>2]=u+(e<<2)),!a){k=1;break i}if(!b){for(e=0;;){if(!$(i,_[i+84|0]?e:s[s[i+68>>2]+(e<<2)>>2],c[i+24|0],r))break i;if(k=a>>>0<=(e=e+1|0)>>>0,(0|e)==(0|a))break}break i}for(d=252&b,p=3&b,v=b>>>0<4,b=0;;){if(!$(i,_[i+84|0]?b:s[s[i+68>>2]+(b<<2)>>2],c[i+24|0],r))break i;if(y=s[f>>2],l=0,e=0,k=0,!v)for(;u=e<<2,s[(A=(o<<2)+y|0)>>2]=s[u+r>>2],s[A+4>>2]=s[(4|u)+r>>2],s[A+8>>2]=s[(8|u)+r>>2],s[A+12>>2]=s[(12|u)+r>>2],e=e+4|0,o=o+4|0,(0|d)!=(0|(k=k+4|0)););if(p)for(;s[(o<<2)+y>>2]=s[(e<<2)+r>>2],e=e+1|0,o=o+1|0,(0|(l=l+1|0))!=(0|p););if(k=a>>>0<=(b=b+1|0)>>>0,(0|b)==(0|a))break}break e}ha(),n()}if(!r)break r}mr(r)}return Q=t+16|0,0|k}function Jr(r,e){var i=0,f=0,a=0,t=0,b=0;t=-1,f=-1,-1!=(0|e)&&(t=((f=e+1|0)>>>0)%3|0?f:e-2|0,f=e-1|0,(e>>>0)%3|0||(f=e+2|0));r:{e:{i:switch(s[r+168>>2]){case 0:case 1:a=s[r+148>>2],i=1,b=(e=s[r+156>>2])+((-1==(0|t)?-1:s[s[a>>2]+(t<<2)>>2])<<2)|0,s[b>>2]=s[b>>2]+1,e=((-1==(0|f)?-1:s[s[a>>2]+(f<<2)>>2])<<2)+e|0;break e;case 5:a=s[r+148>>2],i=-1,i=(-1!=(0|e)?s[s[a>>2]+(e<<2)>>2]:i)<<2,e=s[r+156>>2],s[(i=i+e|0)>>2]=s[i>>2]+1,i=((-1==(0|t)?-1:s[s[a>>2]+(t<<2)>>2])<<2)+e|0,s[i>>2]=s[i>>2]+1,i=2,e=((-1==(0|f)?-1:s[s[a>>2]+(f<<2)>>2])<<2)+e|0;break e;case 3:a=s[r+148>>2],i=-1,i=(-1!=(0|e)?s[s[a>>2]+(e<<2)>>2]:i)<<2,e=s[r+156>>2],s[(i=i+e|0)>>2]=s[i>>2]+1,i=((-1==(0|t)?-1:s[s[a>>2]+(t<<2)>>2])<<2)+e|0,s[i>>2]=s[i>>2]+2,i=1,e=((-1==(0|f)?-1:s[s[a>>2]+(f<<2)>>2])<<2)+e|0;break e;case 7:break i;default:break r}a=s[r+148>>2],i=-1,i=(-1!=(0|e)?s[s[a>>2]+(e<<2)>>2]:i)<<2,e=s[r+156>>2],s[(i=i+e|0)>>2]=s[i>>2]+2,i=((-1==(0|t)?-1:s[s[a>>2]+(t<<2)>>2])<<2)+e|0,s[i>>2]=s[i>>2]+2,i=2,e=((-1==(0|f)?-1:s[s[a>>2]+(f<<2)>>2])<<2)+e|0}s[e>>2]=s[e>>2]+i}i=r,e=s[s[r+156>>2]+((-1==(0|t)?-1:s[s[s[r+148>>2]>>2]+(t<<2)>>2])<<2)>>2],f=s[r+180>>2],r=s[r+176>>2],s[i+172>>2]=(0|r)<=(0|e)?((0|e)<(0|f)?e:f)-r|0:0}function wr(r,e){var i=0,f=0,a=0,t=0,b=0,A=0,o=0;s[r+16>>2]=0,s[r+20>>2]=0,s[r+8>>2]=0,s[r>>2]=0,s[r+4>>2]=0,s[r+24>>2]=0,i=(0|(a=(t=s[e+4>>2])-(b=s[e>>2])|0))/20|0;r:if((0|t)!=(0|b)){e:{if(i>>>0<214748365){if(t=mf(a),s[r+20>>2]=t,s[r+16>>2]=t,s[r+24>>2]=t+m(i,20),(0|(i=s[e>>2]))==(0|(b=s[e+4>>2])))break r;for(e=t;a=s[i+4>>2],s[e>>2]=s[i>>2],s[e+4>>2]=a,s[e+16>>2]=s[i+16>>2],a=s[i+12>>2],s[e+8>>2]=s[i+8>>2],s[e+12>>2]=a,e=e+20|0,(0|b)!=(0|(i=i+20|0)););if(b=0,s[r+28>>2]=0,s[r+20>>2]=e,(0|e)!=(0|t)){if(A=3&(a=(e=(e-t|0)/20|0)>>>0<=1?1:e),e=0,i=0,a-1>>>0>=3)for(o=-4&a,a=0;f=t+m(e,20)|0,i=i>>>0>(f=m(s[f+16>>2],s[f+12>>2]))>>>0?i:f,f=t+m(1|e,20)|0,i=i>>>0>(f=m(s[f+16>>2],s[f+12>>2]))>>>0?i:f,f=t+m(2|e,20)|0,i=i>>>0>(f=m(s[f+16>>2],s[f+12>>2]))>>>0?i:f,f=t+m(3|e,20)|0,i=i>>>0>(f=m(s[f+16>>2],s[f+12>>2]))>>>0?i:f,e=e+4|0,(0|o)!=(0|(a=a+4|0)););if(A)for(;a=t+m(e,20)|0,i=i>>>0>(a=m(s[a+16>>2],s[a+12>>2]))>>>0?i:a,e=e+1|0,(0|A)!=(0|(b=b+1|0)););if(!i)return s[r+12>>2]=0,r;if((0|i)<0)break e;t=(e=Ge(b=mf(i),0,i))+i|0,s[r+8>>2]=t,s[r+4>>2]=t,s[r>>2]=e}return s[r+12>>2]=b,r}ha(),n()}ha(),n()}return s[r+28>>2]=0,s[r+12>>2]=0,r}function Mr(r,e){var i,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0;Q=i=Q-16|0;r:if(!((0|(b=s[e+20>>2]))>=(0|(a=s[e+12>>2]))&(f=s[e+16>>2])>>>0>=p[e+8>>2]|(0|a)<(0|b))){if(c[r+12|0]=_[f+s[e>>2]|0],A=f=s[e+20>>2],f=(t=(b=s[e+16>>2])+1|0)?f:f+1|0,s[e+16>>2]=t,s[e+20>>2]=f,l[e+38>>1]<=513){if(a=s[e+8>>2],n=f=s[e+12>>2],f=A,a>>>0<(b=b+5|0)>>>0&(0|(f=b>>>0<5?f+1|0:f))>=(0|n)|(0|f)>(0|n))break r;t=t+s[e>>2]|0,t=_[0|t]|_[t+1|0]<<8|_[t+2|0]<<16|_[t+3|0]<<24,s[e+16>>2]=b,s[e+20>>2]=f}else{if(!Zi(1,i+12|0,e))break r;b=s[e+16>>2],f=s[e+20>>2],a=s[e+8>>2],n=s[e+12>>2],t=s[i+12>>2]}if(A=a-b|0,!((0|(a=n-(f+(a>>>0<b>>>0)|0)|0))<=0&t>>>0>A>>>0|(0|a)<0|(0|t)<=0)){o=s[e>>2]+b|0,s[r>>2]=o;e:{i:{if((a=_[0|(A=(n=t-1|0)+o|0)])>>>0<=63)s[r+4>>2]=n,A=63&_[0|A];else{f:switch((a>>>6|0)-1|0){case 1:break i;case 0:break f;default:break r}if(t>>>0<2)break r;a=t-2|0,s[r+4>>2]=a,A=_[(a=a+o|0)+1|0]<<8&16128|_[0|a]}s[r+8>>2]=A+4096;break e}if(t>>>0<3)break r;if(a=t-3|0,s[r+4>>2]=a,A=r,r=_[(r=a+o|0)+1|0]<<8|_[r+2|0]<<16&4128768|_[0|r],s[A+8>>2]=r+4096,r>>>0>1044479)break r}f=(r=t+b|0)>>>0<t>>>0?f+1|0:f,s[e+16>>2]=r,s[e+20>>2]=f,k=1}}return Q=i+16|0,k}function Or(r,e,i){var f=0,a=0,t=0,b=0,A=0,o=0,k=0,c=0;if((f=s[r+8>>2])-(a=s[r+4>>2])>>2>>>0>=e>>>0){if(e){if(f=a,b=7&e)for(;s[f>>2]=s[i>>2],f=f+4|0,(0|b)!=(0|(t=t+1|0)););if(a=(e<<2)+a|0,!((e-1&1073741823)>>>0<7))for(;s[f>>2]=s[i>>2],s[f+4>>2]=s[i>>2],s[f+8>>2]=s[i>>2],s[f+12>>2]=s[i>>2],s[f+16>>2]=s[i>>2],s[f+20>>2]=s[i>>2],s[f+24>>2]=s[i>>2],s[f+28>>2]=s[i>>2],(0|a)!=(0|(f=f+32|0)););}s[r+4>>2]=a}else{r:{if((A=(t=a-(o=s[r>>2])>>2)+e|0)>>>0<1073741824){if(f=(k=f-o|0)>>>1|0,A=k>>>0>=2147483644?1073741823:f>>>0>A>>>0?f:A){if(A>>>0>=1073741824)break r;c=mf(A<<2)}if(f=t=(t<<2)+c|0,k=7&e)for(;s[f>>2]=s[i>>2],f=f+4|0,(0|k)!=(0|(b=b+1|0)););if(b=(e<<2)+t|0,(e-1&1073741823)>>>0>=7)for(;s[f>>2]=s[i>>2],s[f+4>>2]=s[i>>2],s[f+8>>2]=s[i>>2],s[f+12>>2]=s[i>>2],s[f+16>>2]=s[i>>2],s[f+20>>2]=s[i>>2],s[f+24>>2]=s[i>>2],s[f+28>>2]=s[i>>2],(0|b)!=(0|(f=f+32|0)););if((0|a)!=(0|o))for(;a=a-4|0,s[(t=t-4|0)>>2]=s[a>>2],(0|a)!=(0|o););return s[r+8>>2]=(A<<2)+c,s[r+4>>2]=b,s[r>>2]=t,void(o&&mr(o))}ha(),n()}Df(),n()}}function Xr(r,e,i){var f=0,a=0,t=0,b=0,A=0,o=0,k=0,c=0;if((f=s[r+8>>2])-(a=s[r>>2])>>2>>>0>=e>>>0){if(o=e>>>0>(A=(t=s[r+4>>2])-a>>2)>>>0?A:e){if(f=a,k=7&(b=o))for(;s[f>>2]=s[i>>2],b=b-1|0,f=f+4|0,(0|(c=c+1|0))!=(0|k););if(!(o>>>0<8))for(;s[f>>2]=s[i>>2],s[f+4>>2]=s[i>>2],s[f+8>>2]=s[i>>2],s[f+12>>2]=s[i>>2],s[f+16>>2]=s[i>>2],s[f+20>>2]=s[i>>2],s[f+24>>2]=s[i>>2],s[f+28>>2]=s[i>>2],f=f+32|0,b=b-8|0;);}if(e>>>0>A>>>0){for(e=(e-A<<2)+t|0;s[t>>2]=s[i>>2],(0|e)!=(0|(t=t+4|0)););return void(s[r+4>>2]=e)}s[r+4>>2]=a+(e<<2)}else if(a&&(s[r+4>>2]=a,mr(a),s[r+8>>2]=0,s[r>>2]=0,s[r+4>>2]=0,f=0),e>>>0>=1073741824||(a=f>>>1|0,(f=f>>>0>=2147483644?1073741823:e>>>0<a>>>0?a:e)>>>0>=1073741824))ha(),n();else{if(a=mf(f<<=2),s[r>>2]=a,s[r+8>>2]=f+a,i=s[i>>2],f=a,b=7&e)for(;s[f>>2]=i,f=f+4|0,(0|b)!=(0|(t=t+1|0)););if(a=a+(e<<2)|0,(e-1&1073741823)>>>0>=7)for(;s[f+28>>2]=i,s[f+24>>2]=i,s[f+20>>2]=i,s[f+16>>2]=i,s[f+12>>2]=i,s[f+8>>2]=i,s[f+4>>2]=i,s[f>>2]=i,(0|a)!=(0|(f=f+32|0)););s[r+4>>2]=a}}function gr(r,e){var i,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0;Q=i=Q-16|0;r:{if(l[e+38>>1]<=511){if(t=s[e+8>>2],n=f=s[e+12>>2],b=s[e+20>>2],t>>>0<(A=(a=s[e+16>>2])+8|0)>>>0&(0|f)<=(0|(b=A>>>0<8?b+1|0:b))|(0|f)<(0|b))break r;a=a+s[e>>2]|0,f=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,a=_[a+4|0]|_[a+5|0]<<8|_[a+6|0]<<16|_[a+7|0]<<24,s[e+16>>2]=A,s[e+20>>2]=b}else{if(!_i(1,i+8|0,e))break r;A=s[e+16>>2],b=s[e+20>>2],t=s[e+8>>2],n=s[e+12>>2],f=s[i+8>>2],a=s[i+12>>2]}if(o=t-A|0,!((0|(t=n-(b+(t>>>0<A>>>0)|0)|0))==(0|a)&f>>>0>o>>>0|a>>>0>t>>>0||(t=a+b|0,t=(b=f+A|0)>>>0<A>>>0?t+1|0:t,s[e+16>>2]=b,s[e+20>>2]=t,(0|f)<=0))){e=s[e>>2]+A|0,s[r+40>>2]=e;e:if((b=_[0|(t=e+(A=f-1|0)|0)])>>>0<=63)s[r+44>>2]=A,e=63&_[0|t];else{i:switch((b>>>6|0)-1|0){case 0:if(f>>>0<2)break r;f=f-2|0,s[r+44>>2]=f,e=_[(e=e+f|0)+1|0]<<8&16128|_[0|e];break e;case 1:if(f>>>0<3)break r;f=f-3|0,s[r+44>>2]=f,e=_[(e=e+f|0)+1|0]<<8|_[e+2|0]<<16&4128768|_[0|e];break e;default:break i}f=f-4|0,s[r+44>>2]=f,e=1073741823&(_[0|(e=e+f|0)]|_[e+1|0]<<8|_[e+2|0]<<16|_[e+3|0]<<24)}s[r+48>>2]=e+16384,k=e>>>0<4177920}}return Q=i+16|0,k}function zr(r,e,i){var f=0,a=0,t=0,b=0,A=0,o=0,k=0,c=0;t=(i>>>0)/3|0,k=s[(s[s[r+8>>2]+96>>2]+m(t,12)|0)+(i-m(t,3)<<2)>>2];r:if(A=s[s[r+12>>2]+4>>2],(0|(a=s[A+4>>2]))==s[A+8>>2]){e:{if((f=(b=(t=a-(o=s[A>>2])|0)>>2)+1|0)>>>0<1073741824){if(c=b<<2,b=t>>>1|0,b=t>>>0>=2147483644?1073741823:f>>>0<b>>>0?b:f){if(b>>>0>=1073741824)break e;t=mf(b<<2)}else t=0;if(s[(f=c+t|0)>>2]=k,k=f+4|0,(0|a)!=(0|o))for(;a=a-4|0,s[(f=f-4|0)>>2]=s[a>>2],(0|a)!=(0|o););s[A+8>>2]=t+(b<<2),s[A+4>>2]=k,s[A>>2]=f,o&&mr(o);break r}ha(),n()}Df(),n()}else s[a>>2]=k,s[A+4>>2]=a+4;r:{e:{if(A=s[r+4>>2],(0|(a=s[A+4>>2]))==s[A+8>>2]){if((f=(k=(t=a-(o=s[A>>2])|0)>>2)+1|0)>>>0>=1073741824)break e;if(b=t>>>1|0,b=t>>>0>=2147483644?1073741823:f>>>0<b>>>0?b:f){if(b>>>0>=1073741824)break r;t=mf(b<<2)}else t=0;if(s[(f=t+(k<<2)|0)>>2]=i,i=f+4|0,(0|a)!=(0|o))for(;a=a-4|0,s[(f=f-4|0)>>2]=s[a>>2],(0|a)!=(0|o););s[A+8>>2]=t+(b<<2),s[A+4>>2]=i,s[A>>2]=f,o&&mr(o)}else s[a>>2]=i,s[A+4>>2]=a+4;return r=s[r+4>>2],s[s[r+12>>2]+(e<<2)>>2]=s[r+24>>2],void(s[r+24>>2]=s[r+24>>2]+1)}ha(),n()}Df(),n()}function Hr(r,e,i,f){var a,t=0,b=0,A=0,o=0,k=0,u=0;if(!((0|(a=f-i|0))<=0)){r:{if(((t=s[r+8>>2])-(o=s[r+4>>2])|0)>=(0|a)){if((0|(k=o-e|0))>=(0|a)){b=o,A=f;break r}if(b=o,(0|(A=i+k|0))!=(0|f))for(t=A;c[0|b]=_[0|t],b=b+1|0,(0|(t=t+1|0))!=(0|f););if(s[r+4>>2]=b,(0|k)>0)break r;return}if((0|(A=(o-(u=s[r>>2])|0)+a|0))>=0)return t=(b=t-u|0)<<1,A=(k=e-u|0)+(t=(b=b>>>0>=1073741823?2147483647:t>>>0>A>>>0?t:A)?mf(b):0)|0,(0|i)!=(0|f)&&(A=Cr(A,i,a)+a|0),f=me(t,u,k),e=me(A,e,i=o-e|0),s[r+8>>2]=t+b,s[r+4>>2]=e+i,s[r>>2]=f,void(u&&mr(u));ha(),n()}if(o>>>0>(f=(t=b)-a|0)>>>0)for(;c[0|t]=_[0|f],t=t+1|0,o>>>0>(f=f+1|0)>>>0;);if(s[r+4>>2]=t,(0|(r=e+a|0))!=(0|b)&&me(b-(r=b-r|0)|0,e,r),(0|i)!=(0|A)){if(b=~i+A|0,r=A-i&7)for(f=0,t=e;c[0|t]=_[0|i],t=t+1|0,i=i+1|0,(0|r)!=(0|(f=f+1|0)););else t=e;if(!(b>>>0<7))for(;c[0|t]=_[0|i],c[t+1|0]=_[i+1|0],c[t+2|0]=_[i+2|0],c[t+3|0]=_[i+3|0],c[t+4|0]=_[i+4|0],c[t+5|0]=_[i+5|0],c[t+6|0]=_[i+6|0],c[t+7|0]=_[i+7|0],t=t+8|0,(0|A)!=(0|(i=i+8|0)););}}}function Cr(r,e,i){var f,a=0,t=0;if(i>>>0>=512)return Y(0|r,0|e,0|i),r;f=r+i|0;r:if(3&(r^e))if(f>>>0<4)i=r;else if((a=f-4|0)>>>0<r>>>0)i=r;else for(i=r;c[0|i]=_[0|e],c[i+1|0]=_[e+1|0],c[i+2|0]=_[e+2|0],c[i+3|0]=_[e+3|0],e=e+4|0,a>>>0>=(i=i+4|0)>>>0;);else{e:if(3&r)if(i)for(i=r;;){if(c[0|i]=_[0|e],e=e+1|0,!(3&(i=i+1|0)))break e;if(!(i>>>0<f>>>0))break}else i=r;else i=r;if(!((a=-4&f)>>>0<64||(t=a+-64|0)>>>0<i>>>0))for(;s[i>>2]=s[e>>2],s[i+4>>2]=s[e+4>>2],s[i+8>>2]=s[e+8>>2],s[i+12>>2]=s[e+12>>2],s[i+16>>2]=s[e+16>>2],s[i+20>>2]=s[e+20>>2],s[i+24>>2]=s[e+24>>2],s[i+28>>2]=s[e+28>>2],s[i+32>>2]=s[e+32>>2],s[i+36>>2]=s[e+36>>2],s[i+40>>2]=s[e+40>>2],s[i+44>>2]=s[e+44>>2],s[i+48>>2]=s[e+48>>2],s[i+52>>2]=s[e+52>>2],s[i+56>>2]=s[e+56>>2],s[i+60>>2]=s[e+60>>2],e=e- -64|0,t>>>0>=(i=i- -64|0)>>>0;);if(i>>>0>=a>>>0)break r;for(;s[i>>2]=s[e>>2],e=e+4|0,a>>>0>(i=i+4|0)>>>0;);}if(i>>>0<f>>>0)for(;c[0|i]=_[0|e],e=e+1|0,(0|f)!=(0|(i=i+1|0)););return r}function Pr(r,e){var i,f,a=0,t=0,b=0;Q=i=Q-16|0,s[r+12>>2]=e,s[r+8>>2]=0,s[r>>2]=0,s[r+4>>2]=0,s[(a=r+16|0)>>2]=0,s[a+4>>2]=0,c[a+5|0]=0,c[a+6|0]=0,c[a+7|0]=0,c[a+8|0]=0,c[a+9|0]=0,c[a+10|0]=0,c[a+11|0]=0,c[a+12|0]=0,s[r+32>>2]=0,s[r+36>>2]=0,s[r+48>>2]=0,s[r+40>>2]=0,s[r+44>>2]=0,s[r+52>>2]=0,s[r+56>>2]=0,s[r+68>>2]=0,s[r+60>>2]=0,s[r+64>>2]=0,s[r+72>>2]=0,s[r+76>>2]=0,s[r+88>>2]=0,s[r+80>>2]=0,s[r+84>>2]=0,s[r+100>>2]=0,s[r+92>>2]=0,s[r+96>>2]=0,f=r+116|0;r:{e:{if(e){if(e>>>0<1073741824)break e;ha(),n()}s[r+104>>2]=0,s[r+108>>2]=0,s[r+112>>2]=0,s[i+8>>2]=0,s[i>>2]=0,s[i+4>>2]=0,a=1;break r}t=mf(a=e<<2),s[r+92>>2]=t,b=a+t|0,s[r+100>>2]=b,Ge(t,0,a),s[r+112>>2]=0,s[r+104>>2]=0,s[r+108>>2]=0,s[r+96>>2]=b,t=mf(a),s[r+104>>2]=t,b=a+t|0,s[r+112>>2]=b,Ge(t,0,a),s[r+108>>2]=b,t=mf(a),s[i>>2]=t,b=a+t|0,s[i+8>>2]=b,Ge(t,0,a),s[i+4>>2]=b,a=e<<5|1}return Ye(f,a,i),(t=s[i>>2])&&(s[i+4>>2]=t,mr(t)),s[i+8>>2]=0,s[i>>2]=0,s[i+4>>2]=0,e&&(t=mf(e<<=2),s[i>>2]=t,b=e+t|0,s[i+8>>2]=b,Ge(t,0,e),s[i+4>>2]=b),Ye(r+128|0,a,i),(e=s[i>>2])&&(s[i+4>>2]=e,mr(e)),Q=i+16|0,r}function Sr(r){var e,i=0,f=0,a=0,t=0;if(s[(r|=0)>>2]=11484,(i=s[(e=r+232|0)+196>>2])&&(s[e+200>>2]=i,mr(i)),f=s[e+184>>2]){if((0|(i=f))!=(0|(a=s[e+188>>2]))){for(;(t=s[(i=a-12|0)>>2])&&(s[a-8>>2]=t,mr(t)),a=i,(0|i)!=(0|f););i=s[e+184>>2]}s[e+188>>2]=f,mr(i)}if((i=s[e+156>>2])&&(s[e+160>>2]=i,mr(i)),f=s[e+136>>2],s[e+136>>2]=0,f){if(i=s[(a=f-4|0)>>2])for(i=f+(i<<4)|0;(0|f)!=(0|(i=i-16|0)););mr(a)}if(Di(r+216|0),(i=s[r+196>>2])&&(s[r+200>>2]=i,mr(i)),(i=s[r+184>>2])&&(s[r+188>>2]=i,mr(i)),(i=s[r+172>>2])&&(s[r+176>>2]=i,mr(i)),(i=s[r+160>>2])&&(s[r+164>>2]=i,mr(i)),i=s[r+144>>2])for(;f=s[i>>2],mr(i),i=f;);return i=s[r+136>>2],s[r+136>>2]=0,i&&mr(i),(i=s[r+120>>2])&&mr(i),(i=s[r+108>>2])&&mr(i),(i=s[r+96>>2])&&mr(i),(i=s[r+72>>2])&&(s[r+76>>2]=i,mr(i)),(i=s[r+60>>2])&&mr(i),(i=s[r+48>>2])&&(s[r+52>>2]=i,mr(i)),(i=s[r+36>>2])&&(s[r+40>>2]=i,mr(i)),(i=s[r+24>>2])&&(s[r+28>>2]=i,mr(i)),(i=s[r+12>>2])&&(s[r+16>>2]=i,mr(i)),i=s[r+8>>2],s[r+8>>2]=0,i&&Ii(i),0|r}function xr(r,e,i){var f=0,a=0,t=0,b=0,A=0,o=0,k=0,c=0;if((f=s[r+8>>2])-(a=s[r+4>>2])>>2>>>0>=e>>>0){if(e){if(f=a,t=7&e)for(;s[f>>2]=s[i>>2],f=f+4|0,(0|t)!=(0|(A=A+1|0)););if(a=(e<<2)+a|0,!((e-1&1073741823)>>>0<7))for(;s[f>>2]=s[i>>2],s[f+4>>2]=s[i>>2],s[f+8>>2]=s[i>>2],s[f+12>>2]=s[i>>2],s[f+16>>2]=s[i>>2],s[f+20>>2]=s[i>>2],s[f+24>>2]=s[i>>2],s[f+28>>2]=s[i>>2],(0|a)!=(0|(f=f+32|0)););}s[r+4>>2]=a}else{r:{if((b=(t=(k=a-(o=s[r>>2])|0)>>2)+e|0)>>>0<1073741824){if(a=(f=f-o|0)>>>1|0,b=f>>>0>=2147483644?1073741823:a>>>0>b>>>0?a:b){if(b>>>0>=1073741824)break r;c=mf(b<<2)}if(f=t=(t<<2)+c|0,a=7&e)for(;s[f>>2]=s[i>>2],f=f+4|0,(0|a)!=(0|(A=A+1|0)););if(a=t+(e<<2)|0,(e-1&1073741823)>>>0>=7)for(;s[f>>2]=s[i>>2],s[f+4>>2]=s[i>>2],s[f+8>>2]=s[i>>2],s[f+12>>2]=s[i>>2],s[f+16>>2]=s[i>>2],s[f+20>>2]=s[i>>2],s[f+24>>2]=s[i>>2],s[f+28>>2]=s[i>>2],(0|a)!=(0|(f=f+32|0)););return e=me(c,o,k),s[r+4>>2]=a,s[r>>2]=e,s[r+8>>2]=e+(b<<2),void(o&&mr(o))}ha(),n()}Df(),n()}}function Lr(r,e){var i=0,f=0,a=0,t=0,b=0,A=0,o=0,k=0;if((f=_[r+11|0]>>>7|0?s[r+4>>2]:127&_[r+11|0])>>>0<e>>>0){if(Q=A=Q-16|0,e=e-f|0){for(b=_[r+11|0]>>>7|0?(2147483647&s[r+8>>2])-1|0:10,o=(f=_[r+11|0]>>>7|0?s[r+4>>2]:127&_[r+11|0])+e|0,b-f>>>0<e>>>0&&(Q=a=Q-16|0,(i=o-b|0)>>>0<=2147483631-b>>>0?(t=_[r+11|0]>>>7|0?s[r>>2]:r,b>>>0<1073741799?(s[a+12>>2]=b<<1,s[a>>2]=i+b,Q=i=Q-16|0,Q=i+16|0,i=a+12|0,i=(i=(i=s[(p[a>>2]<p[i>>2]?i:a)>>2])>>>0>=11?11==(0|(i=(k=i+16&-16)-1|0))?k:i:10)+1|0):i=2147483631,Hf(a,i),i=s[a>>2],f&&fi(i,t,f),10!=(0|b)&&mr(t),s[r>>2]=i,s[r+8>>2]=-2147483648&s[r+8>>2]|2147483647&s[a+4>>2],s[r+8>>2]=-2147483648|s[r+8>>2],Q=a+16|0):(Ra(),n())),t=(t=f)+(f=_[r+11|0]>>>7|0?s[r>>2]:r)|0,Q=a=Q-16|0,c[a+15|0]=0;e;)c[0|t]=_[a+15|0],e=e-1|0,t=t+1|0;Q=a+16|0,Zf(r,o),c[A+15|0]=0,c[f+o|0]=_[A+15|0]}Q=A+16|0}else f=_[r+11|0]>>>7|0?s[r>>2]:r,Q=t=Q-16|0,Zf(r,e),c[t+15|0]=0,c[e+f|0]=_[t+15|0],Q=t+16|0}function Kr(r,e){var i,f=0,a=0,t=0,b=0,A=0;Q=i=Q-16|0;r:{e:{if(e){if(s[r+88>>2]=0,s[r+92>>2]=0,a=s[r+84>>2],s[r+84>>2]=0,a&&mr(a),s[r+76>>2]=0,s[r+80>>2]=0,a=s[r+72>>2],s[r+72>>2]=0,a&&mr(a),a=s[e>>2],f=s[e+4>>2],c[i+15|0]=0,Te(r,f-a>>2,i+15|0),a=s[e+28>>2],f=s[e+24>>2],c[i+14|0]=0,Te(r+12|0,a-f>>2,i+14|0),Xr(r+28|0,s[e+4>>2]-s[e>>2]>>2,13708),b=(f=s[e+28>>2]-s[e+24>>2]|0)>>2,t=s[r+52>>2],!(b>>>0<=s[r+60>>2]-t>>2>>>0)){if((0|f)<0)break e;if(a=s[r+56>>2],b=(f=mf(f))+(b<<2)|0,f=A=f+(a-t&-4)|0,(0|a)!=(0|t))for(;a=a-4|0,s[(f=f-4|0)>>2]=s[a>>2],(0|a)!=(0|t););s[r+60>>2]=b,s[r+56>>2]=A,s[r+52>>2]=f,t&&mr(t)}if(b=(f=s[e+28>>2]-s[e+24>>2]|0)>>2,t=s[r+40>>2],!(b>>>0<=s[r+48>>2]-t>>2>>>0)){if((0|f)<0)break r;if(a=s[r+44>>2],b=(f=mf(f))+(b<<2)|0,f=A=f+(a-t&-4)|0,(0|a)!=(0|t))for(;a=a-4|0,s[(f=f-4|0)>>2]=s[a>>2],(0|a)!=(0|t););s[r+48>>2]=b,s[r+44>>2]=A,s[r+40>>2]=f,t&&mr(t)}c[r+24|0]=1,s[r+64>>2]=e}return void(Q=i+16|0)}ha(),n()}ha(),n()}function qr(r,e){var i,f,a=0,t=0,b=0;Q=i=Q-16|0,s[r+12>>2]=e,s[r+8>>2]=0,s[r>>2]=0,s[r+4>>2]=0,s[r+16>>2]=0,s[r+20>>2]=0,s[r+32>>2]=0,s[r+24>>2]=0,s[r+28>>2]=0,s[r+36>>2]=0,s[r+40>>2]=0,s[r+52>>2]=0,s[r+44>>2]=0,s[r+48>>2]=0,s[r+56>>2]=0,s[r+60>>2]=0,s[r+72>>2]=0,s[r+64>>2]=0,s[r+68>>2]=0,s[r+76>>2]=0,s[r+80>>2]=0,s[r+92>>2]=0,s[r+84>>2]=0,s[r+88>>2]=0,s[r+104>>2]=0,s[r+96>>2]=0,s[r+100>>2]=0,f=r+120|0;r:{e:{if(e){if(e>>>0<1073741824)break e;ha(),n()}s[r+108>>2]=0,s[r+112>>2]=0,s[r+116>>2]=0,s[i+8>>2]=0,s[i>>2]=0,s[i+4>>2]=0,t=1;break r}a=mf(t=e<<2),s[r+96>>2]=a,b=a+t|0,s[r+104>>2]=b,Ge(a,0,t),s[r+116>>2]=0,s[r+108>>2]=0,s[r+112>>2]=0,s[r+100>>2]=b,a=mf(t),s[r+108>>2]=a,b=a+t|0,s[r+116>>2]=b,Ge(a,0,t),s[r+112>>2]=b,a=mf(t),s[i>>2]=a,b=a+t|0,s[i+8>>2]=b,Ge(a,0,t),s[i+4>>2]=b,t=e<<5|1}return Ye(f,t,i),(a=s[i>>2])&&(s[i+4>>2]=a,mr(a)),s[i+8>>2]=0,s[i>>2]=0,s[i+4>>2]=0,e&&(a=mf(e<<=2),s[i>>2]=a,b=e+a|0,s[i+8>>2]=b,Ge(a,0,e),s[i+4>>2]=b),Ye(r+132|0,t,i),(e=s[i>>2])&&(s[i+4>>2]=e,mr(e)),Q=i+16|0,r}function $r(r,e){var i=0,f=0,a=0;i=(0|r)==(0|e),c[e+12|0]=i;r:if(!i)for(;;){if(f=s[e+8>>2],_[f+12|0])break r;e:{if(i=s[f+8>>2],(0|(a=s[i>>2]))==(0|f)){if(!(!(a=s[i+4>>2])|_[a+12|0]))break e;return s[f>>2]!=(0|e)?(e=s[f+4>>2],r=s[e>>2],s[f+4>>2]=r,r&&(s[r+8>>2]=f,i=s[f+8>>2]),s[e+8>>2]=i,r=s[f+8>>2],s[((s[r>>2]!=(0|f))<<2)+r>>2]=e,s[e>>2]=f,s[f+8>>2]=e,i=s[e+8>>2],f=s[i>>2]):e=f,c[e+12|0]=1,c[i+12|0]=0,r=s[f+4>>2],s[i>>2]=r,r&&(s[r+8>>2]=i),s[f+8>>2]=s[i+8>>2],r=s[i+8>>2],s[((s[r>>2]!=(0|i))<<2)+r>>2]=f,s[f+4>>2]=i,void(s[i+8>>2]=f)}if(_[a+12|0]|!a){s[f>>2]==(0|e)?(r=s[e+4>>2],s[f>>2]=r,r&&(s[r+8>>2]=f,i=s[f+8>>2]),s[e+8>>2]=i,r=s[f+8>>2],s[((s[r>>2]!=(0|f))<<2)+r>>2]=e,s[e+4>>2]=f,s[f+8>>2]=e,i=s[e+8>>2]):e=f,c[e+12|0]=1,c[i+12|0]=0,r=s[i+4>>2],e=s[r>>2],s[i+4>>2]=e,e&&(s[e+8>>2]=i),s[r+8>>2]=s[i+8>>2],e=s[i+8>>2],s[((s[e>>2]!=(0|i))<<2)+e>>2]=r,s[r>>2]=i,s[i+8>>2]=r;break r}}if(c[f+12|0]=1,c[i+12|0]=(0|r)==(0|i),c[a+12|0]=1,e=i,(0|i)==(0|r))break}}function re(r,e,i,f){var a=0,t=0,b=0,A=0,n=0,o=0,k=0,c=0,u=0;r:{e:{i:{f:{a:{t:{b:{A:{n:{o:{k:{if(e){if(!i)break k;if(!f)break o;if((a=R(f)-R(e)|0)>>>0<=31)break n;break i}if(1==(0|f)|f>>>0>1)break i;j=0,r=(r>>>0)/(i>>>0)|0;break r}if(!r)break A;if(!f|f-1&f)break b;r=e>>>Sf(f)|0,j=0;break r}if(!(i-1&i))break t;b=0-(A=(R(i)+33|0)-R(e)|0)|0;break f}A=a+1|0,b=63-a|0;break f}j=0,r=(e>>>0)/(f>>>0)|0;break r}if((a=R(f)-R(e)|0)>>>0<31)break a;break i}if(1==(0|i))break e;i=31&(f=Sf(i)),(63&f)>>>0>=32?r=e>>>i|0:(a=e>>>i|0,r=((1<<i)-1&e)<<32-i|r>>>i),j=a;break r}A=a+1|0,b=63-a|0}if(t=31&(a=63&A),a>>>0>=32?(a=0,n=e>>>t|0):(a=e>>>t|0,n=((1<<t)-1&e)<<32-t|r>>>t),t=31&(b&=63),b>>>0>=32?(e=r<<t,r=0):(e=(1<<t)-1&r>>>32-t|e<<t,r<<=t),A)for(t=f-1|0,u=-1!=(0|(b=i-1|0))?t+1|0:t;o=a<<1|n>>>31,n=(a=n<<1|e>>>31)-(k=i&(t=u-(o+(a>>>0>b>>>0)|0)>>31))|0,a=o-((f&t)+(a>>>0<k>>>0)|0)|0,e=e<<1|r>>>31,r=c|r<<1,c=1&t,A=A-1|0;);j=e<<1|r>>>31,r=c|r<<1;break r}r=0,e=0}j=e}return r}function ee(r,e,i,f){var a,t,b=0,A=0,n=0,o=0,k=0,c=0,u=0;if(a=s[e+16>>2],o=s[i+4>>2]-a|0,b=s[i>>2]-a|0,s[i>>2]=b,s[i+4>>2]=o,t=(n=s[e+16>>2])>>>0>=(k=((A=o>>31)^o)-A|0)+(((A=b>>31)^b)-A|0)>>>0)A=o;else{r:{e:{if((0|b)>=0){if(A=1,k=1,(0|o)>=0)break r;if(c=1,A=-1,k=-1,b)break e;break r}if(c=-1,A=-1,k=-1,(0|o)<=0)break r}A=(0|o)<=0?-1:1,k=c}b=(b<<1)-(c=m(n,k))|0,A=(((k=(0|m(A,k))>=0)?0-b|0:b)+(n=m(A,n))|0)/2|0,s[i+4>>2]=A,u=i,i=(o<<1)-n|0,b=(c+(k?0-i|0:i)|0)/2|0,s[u>>2]=b,n=s[e+16>>2]}if(i=s[f+4>>2]+A|0,(0|n)<(0|(b=s[f>>2]+b|0))?b=b-s[e+4>>2]|0:(0-n|0)<=(0|b)||(b=s[e+4>>2]+b|0),(0|i)>(0|n)?i=i-s[e+4>>2]|0:(0-n|0)<=(0|i)||(i=s[e+4>>2]+i|0),t)n=i;else{r:{e:{if((0|b)>=0){if(e=1,A=1,(0|i)>=0)break r;if(f=1,e=-1,A=-1,b)break e;break r}if(f=-1,e=-1,A=-1,(0|i)<=0)break r}e=(0|i)<=0?-1:1,A=f}o=(b<<1)-(f=m(A,n))|0,n=(((A=(0|m(e,A))>=0)?0-o|0:o)+(e=m(e,n))|0)/2|0,e=(i<<1)-e|0,b=(f+(A?0-e|0:e)|0)/2|0}s[(i=r)>>2]=b+a,s[i+4>>2]=n+a}function ie(r,e,i,f){var a=0,t=0,b=0,A=0,o=0,k=0;r:{e:{i:if(e){if((0|f)<0)break r;f:if(!((0|f)<=0&i>>>0<=(b=(a=s[r+4>>2])-(t=s[r>>2])|0)>>>0|(0|f)<0))if(i>>>0>b>>>0){if((f=i-b|0)>>>0<=(A=s[r+8>>2])-a>>>0){o=r,k=Ge(a,0,f)+f|0,s[o+4>>2]=k;break f}if((0|i)<0)break e;if(A=(a=A-t|0)<<1,Ge((A=mf(a=a>>>0>=1073741823?2147483647:i>>>0<A>>>0?A:i))+b|0,0,f),f=me(A,t,b),s[r+8>>2]=f+a,s[r+4>>2]=i+f,s[r>>2]=f,!t)break f;mr(t)}else i>>>0>=b>>>0||(s[r+4>>2]=i+t);i&&me(s[r>>2],e,i)}else{if((0|f)<0)break r;if(i>>>0>(f=(t=s[r+4>>2])-(e=s[r>>2])|0)>>>0){if((b=i-f|0)>>>0<=(a=s[r+8>>2])-t>>>0){o=r,k=Ge(t,0,b)+b|0,s[o+4>>2]=k;break i}if((0|i)<0)break e;if(a=(t=a-e|0)<<1,Ge((a=mf(t=t>>>0>=1073741823?2147483647:i>>>0<a>>>0?a:i))+f|0,0,b),f=me(a,e,f),s[r+8>>2]=f+t,s[r+4>>2]=i+f,s[r>>2]=f,!e)break i;mr(e);break i}if(i>>>0>=f>>>0)break i;s[r+4>>2]=e+i}e=s[r+28>>2],e=(i=s[r+24>>2]+1|0)?e:e+1|0,s[r+24>>2]=i,s[r+28>>2]=e,b=1;break r}ha(),n()}return b}function fe(r,e,i){r|=0,e|=0,i|=0;var f,a=0,t=0,b=0,A=0,n=0,o=v(0),k=0,c=0,u=0,l=0,p=0,d=0,m=0,h=0,R=0,N=0,Z=0;if(Q=f=Q-16|0,9==s[i+28>>2]){if(a=s[r+4>>2],b=mf(t=(n=_[i+24|0])<<2),s[(c=f+8|0)>>2]=1065353216,o=y[r+20>>2],(0|(a=~(-1<<a)))>0&&(y[c>>2]=o/v(0|a)),(p=(0|a)>0)&&(k=s[i+80>>2]))if(n)for(d=s[s[e>>2]>>2]+s[e+48>>2]|0,N=254&n,Z=1&n,e=0;;){if(u=s[r+8>>2],o=y[c>>2],a=0,l=0,1!=(0|n))for(;m=(e<<2)+d|0,y[(A=a<<2)+b>>2]=v(o*v(s[m>>2]))+y[A+u>>2],y[(A|=4)+b>>2]=v(o*v(s[m+4>>2]))+y[A+u>>2],a=a+2|0,e=e+2|0,(0|N)!=(0|(l=l+2|0)););if(Z&&(y[(a<<=2)+b>>2]=v(o*v(s[(e<<2)+d>>2]))+y[a+u>>2],e=e+1|0),Cr(s[s[i+64>>2]>>2]+h|0,b,t),h=t+h|0,(0|(R=R+1|0))==(0|k))break}else{if(e=0,1!=(0|k))for(r=-2&k,a=0;Cr(s[s[i+64>>2]>>2]+e|0,b,t),Cr((e=e+t|0)+s[s[i+64>>2]>>2]|0,b,t),e=e+t|0,(0|r)!=(0|(a=a+2|0)););1&k&&Cr(s[s[i+64>>2]>>2]+e|0,b,t)}mr(b)}return Q=f+16|0,0|p}function ae(r,e){var i,f=0,a=0,t=0,b=0,A=0,o=0;Q=i=Q-16|0;r:{e:if((t=s[r+4>>2])>>>0<e>>>0){if((a=e-t|0)>>>0>(b=(f=s[r+8>>2])<<5)>>>0|t>>>0>b-a>>>0){if(s[i+8>>2]=0,s[i>>2]=0,s[i+4>>2]=0,(0|e)<0)break r;Wr(i,e=b>>>0<=1073741822?(e=e+31&-32)>>>0<(f<<=6)>>>0?f:e:2147483647),t=s[r+4>>2],s[i+4>>2]=t+a,o=s[r>>2],e=s[i>>2],(0|t)<=0||(f=t>>>5|0,t>>>0>=32&&me(e,o,f<<2),e=(b=f<<2)+e|0,(A=31&t)&&(f=-1>>>32-A|0,s[e>>2]=s[e>>2]&~f|s[o+b>>2]&f),o=s[r>>2]),s[r>>2]=s[i>>2],s[i>>2]=o,f=s[r+4>>2],s[r+4>>2]=s[i+4>>2],s[i+4>>2]=f,f=s[r+8>>2],s[r+8>>2]=s[i+8>>2],s[i+8>>2]=f,o&&mr(o)}else s[r+4>>2]=e,A=31&t,e=s[r>>2]+(t>>>3&536870908)|0;if(!a)break e;if(A&&(r=(f=32-A|0)>>>0<a>>>0?f:a,s[e>>2]=s[e>>2]&~(-1<<A&-1>>>f-r),a=a-r|0,e=e+4|0),r=a>>>5|0,a>>>0>=32&&Ge(e,0,r<<2),(-32&a)==(0|a))break e;s[(r=(r<<2)+e|0)>>2]=s[r>>2]&~(-1>>>32-(31&a))}else s[r+4>>2]=e;return void(Q=i+16|0)}ha(),n()}function te(r,e,i){e|=0,i|=0;var f=0,a=0,t=0,b=0,A=0,n=0,o=0;return(f=(a=s[(r|=0)+12>>2])-(n=s[r+8>>2])>>2)>>>0<(e=_[e+24|0])>>>0?(ai(r+8|0,e-f|0),n=s[r+8>>2],a=s[r+12>>2]):e>>>0>=f>>>0||(a=(e<<2)+n|0,s[r+12>>2]=a),e=0,t=s[i+8>>2],A=s[i+12>>2],o=s[i+20>>2],t>>>0<(b=(a=a-n|0)+(f=s[i+16>>2])|0)>>>0&(0|A)<=(0|(o=a>>>0>b>>>0?o+1|0:o))|(0|A)<(0|o)||(Cr(n,f+s[i>>2]|0,a),f=s[i+20>>2],f=(b=a)>>>0>(a=a+s[i+16>>2]|0)>>>0?f+1|0:f,s[i+16>>2]=a,s[i+20>>2]=f,(t=s[i+8>>2])>>>0<(b=a+4|0)>>>0&(0|(f=b>>>0<4?f+1|0:f))>=(0|(A=s[i+12>>2]))|(0|f)>(0|A)||(f=a+s[i>>2]|0,s[r+20>>2]=_[0|f]|_[f+1|0]<<8|_[f+2|0]<<16|_[f+3|0]<<24,b=f=s[i+20>>2],t=f,t=(f=(a=s[i+16>>2])+4|0)>>>0<4?t+1|0:t,s[i+16>>2]=f,s[i+20>>2]=t,(0|t)>=(0|(A=s[i+12>>2]))&f>>>0>=p[i+8>>2]|(0|t)>(0|A)||(t=_[f+s[i>>2]|0],f=b,f=(a=a+5|0)>>>0<5?f+1|0:f,s[i+16>>2]=a,s[i+20>>2]=f,t-1>>>0>29||(s[r+4>>2]=t,e=1)))),0|e}function be(r,e){var i=0,f=0,a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0;r:{if((0|(t=s[r+4>>2]))==s[r>>2])if((b=s[r+8>>2])>>>0<(i=s[r+12>>2])>>>0)i=(a=(1+(i-b>>2)|0)/2<<2)+b|0,(0|t)!=(0|b)&&(me(i=i-(f=b-t|0)|0,t,f),t=s[r+8>>2]),s[r+4>>2]=i,s[r+8>>2]=a+t;else{if((f=(0|i)==(0|t)?1:i-t>>1)>>>0>=1073741824)break r;if(c=(o=mf(i=f<<2))+i|0,A=i=(f+3&-4)+o|0,(0|t)!=(0|b)){if(u=-4&(b=b-t|0),a=i,f=t,b=1+((k=b-4|0)>>>2|0)&7)for(A=0;s[a>>2]=s[f>>2],f=f+4|0,a=a+4|0,(0|b)!=(0|(A=A+1|0)););if(A=i+u|0,!(k>>>0<28))for(;s[a>>2]=s[f>>2],s[a+4>>2]=s[f+4>>2],s[a+8>>2]=s[f+8>>2],s[a+12>>2]=s[f+12>>2],s[a+16>>2]=s[f+16>>2],s[a+20>>2]=s[f+20>>2],s[a+24>>2]=s[f+24>>2],s[a+28>>2]=s[f+28>>2],f=f+32|0,(0|A)!=(0|(a=a+32|0)););}s[r+12>>2]=c,s[r+8>>2]=A,s[r+4>>2]=i,s[r>>2]=o,t&&(mr(t),i=s[r+4>>2])}else i=t;return s[i-4>>2]=s[e>>2],void(s[r+4>>2]=s[r+4>>2]-4)}Df(),n()}function Ae(r,e){var i=0;return Mr(r,e)&&Mr(r+16|0,e)&&Mr(r+32|0,e)&&Mr(r+48|0,e)&&Mr(r- -64|0,e)&&Mr(r+80|0,e)&&Mr(r+96|0,e)&&Mr(r+112|0,e)&&Mr(r+128|0,e)&&Mr(r+144|0,e)&&Mr(r+160|0,e)&&Mr(r+176|0,e)&&Mr(r+192|0,e)&&Mr(r+208|0,e)&&Mr(r+224|0,e)&&Mr(r+240|0,e)&&Mr(r+256|0,e)&&Mr(r+272|0,e)&&Mr(r+288|0,e)&&Mr(r+304|0,e)&&Mr(r+320|0,e)&&Mr(r+336|0,e)&&Mr(r+352|0,e)&&Mr(r+368|0,e)&&Mr(r+384|0,e)&&Mr(r+400|0,e)&&Mr(r+416|0,e)&&Mr(r+432|0,e)&&Mr(r+448|0,e)&&Mr(r+464|0,e)&&Mr(r+480|0,e)&&Mr(r+496|0,e)&&(i=Mr(r+512|0,e)),i}function ne(r,e,i,f){var a,t=0,b=0,A=0,n=0,o=0,k=0,c=0,u=0;o=+y[e>>2],k=+y[e+4>>2],c=+y[e+8>>2],(A=h(o)+h(k)+h(c))>1e-6?(k*=A=1/A,o*=A,t=A*c<0):(o=1,k=0,t=0),a=s[r+16>>2],A=G(o*(c=+(0|a))+.5),n=((b=(u=h(A)<2147483648?~~A:-2147483648)>>31)^u)-b|0,A=G(k*c+.5),n=(0|(e=a-(n+(((b=h(A)<2147483648?~~A:-2147483648)^(e=b>>31))-e|0)|0)|0))>0?e:0,t=t?0-n|0:n,b=b+(e>>31&((0|b)>0?e:0-e))|0,(0|u)>=0?(e=t+a|0,r=s[r+8>>2],t=a+b|0):(e=((e=b>>31)^b)-e|0,r=s[r+8>>2],e=(0|t)<0?e:r-e|0,t=(0|b)<0?n:r-n|0),e|t&&(0|r)!=(0|e)|t&&(0|r)!=(0|t)|e?(0|e)<=(0|a)|t?(0|r)!=(0|t)|(0|e)>=(0|a)?(0|r)!=(0|e)|(0|t)>=(0|a)?e?r=t:(e=0,r=(0|t)<=(0|a)?t:(a<<1)-t|0):(e=r,r=(a<<1)-t|0):e=(a<<1)-e|0:(e=(a<<1)-e|0,r=0):e=r,s[i>>2]=r,s[f>>2]=e}function oe(r,e){r|=0;var i,f,a=0,t=0,b=0,A=0,n=0,o=0,k=0,c=0,u=0;n=s[(e|=0)+8>>2],i=s[e+12>>2],o=a=s[e+20>>2];r:if(!((t=(f=s[e+16>>2])+4|0)>>>0>n>>>0&(0|(a=t>>>0<4?a+1|0:a))>=(0|i)|(0|a)>(0|i)||(c=s[e>>2],b=_[0|(A=f+c|0)]|_[A+1|0]<<8|_[A+2|0]<<16|_[A+3|0]<<24,s[e+16>>2]=t,s[e+20>>2]=a,a=o,(A=f+8|0)>>>0>n>>>0&(0|(a=A>>>0<8?a+1|0:a))>=(0|i)|(0|a)>(0|i)||(k=_[0|(t=t+c|0)]|_[t+1|0]<<8|_[t+2|0]<<16|_[t+3|0]<<24,s[e+16>>2]=A,s[e+20>>2]=a,(0|b)>(0|k)||(s[r+16>>2]=k,s[r+12>>2]=b,t=k-b|0,!(b=(k>>31)-((b>>31)+(b>>>0>k>>>0)|0)|0)&t>>>0>2147483646|b))))){if(t=t+1|0,s[r+20>>2]=t,b=t>>>1|0,s[r+24>>2]=b,s[r+28>>2]=0-b,1&t||(s[r+24>>2]=b-1),l[e+38>>1]<=513){if((0|a)>=(0|i)&A>>>0>=n>>>0|(0|a)>(0|i))break r;if(n=_[A+c|0],a=o,a=(o=f+9|0)>>>0<9?a+1|0:a,s[e+16>>2]=o,s[e+20>>2]=a,n>>>0>1)break r;s[r+88>>2]=n}u=Mr(r+112|0,e)}return 0|u}function ke(r,e){var i,f,a,t=0,b=0,A=0;f=s[r>>2],s[(t=f+(e>>>3&536870908)|0)>>2]=s[t>>2]|1<<e,i=s[r+64>>2],b=-1,(A=-1==(0|e))||(b=-1,-1!=(0|(t=((t=e+1|0)>>>0)%3|0?t:e-2|0))&&(b=s[s[i>>2]+(t<<2)>>2])),t=s[r+12>>2],s[(a=(b>>>3&536870908)+t|0)>>2]=s[a>>2]|1<<b;r:{if(A)r=t+536870908|0,e=s[t+536870908>>2],t=-2147483648;else{e:{if((e>>>0)%3|0)A=e-1|0;else if(b=-1,-1==(0|(A=e+2|0)))break e;b=s[s[i>>2]+(A<<2)>>2]}if(s[(A=(b>>>3&536870908)+t|0)>>2]=s[A>>2]|1<<b,b=-1,-1==(0|(e=s[s[i+12>>2]+(e<<2)>>2])))break r;c[r+24|0]=0,s[(r=(e>>>3&536870908)+f|0)>>2]=s[r>>2]|1<<e,-1!=(0|(r=((r=e+1|0)>>>0)%3|0?r:e-2|0))&&(b=s[s[i>>2]+(r<<2)>>2]),s[(r=t+(b>>>3&536870908)|0)>>2]=s[r>>2]|1<<b;e:{if((e>>>0)%3|0)e=e-1|0;else if(r=-1,-1==(0|(e=e+2|0)))break e;r=s[s[i>>2]+(e<<2)>>2]}e=1<<r,t=s[(r=t+(r>>>3&536870908)|0)>>2]}s[r>>2]=e|t}}function ce(r,e,i){r|=0,e|=0,i|=0;var f=0,a=v(0),t=v(0),b=v(0),A=v(0),n=v(0),u=0,l=v(0),p=v(0),y=v(0),d=v(0),m=0;if(!(9!=s[i+28>>2]|3!=_[i+24|0])&&!((r=s[r+4>>2])-2>>>0>28)&&(m=1,u=s[i+80>>2]))for(l=v(v(2)/v((1<<r)-2|0)),i=s[s[i>>2]>>2]+s[i+48>>2]|0,r=s[s[e>>2]>>2]+s[e+48>>2]|0,e=0;b=v(0),p=v(0),y=v(0),a=v(v(v(s[r>>2])*l)+v(-1)),t=v(v(v(s[r+4>>2])*l)+v(-1)),n=v(v(v(1)-v(h(a)))-v(h(t))),A=v(Z(v(-n),v(0))),d=v(-A),t=v(t+(t<v(0)?A:d)),a=v(a+(a<v(0)?A:d)),+(A=v(v(t*t)+v(v(n*n)+v(a*a))))<1e-6||(b=v(v(1)/v(W(A))),y=v(t*b),p=v(a*b),b=v(n*b)),r=r+8|0,o(y),f=k(2),c[i+8|0]=f,c[i+9|0]=f>>>8,c[i+10|0]=f>>>16,c[i+11|0]=f>>>24,o(p),f=k(2),c[i+4|0]=f,c[i+5|0]=f>>>8,c[i+6|0]=f>>>16,c[i+7|0]=f>>>24,o(b),f=k(2),c[0|i]=f,c[i+1|0]=f>>>8,c[i+2|0]=f>>>16,c[i+3|0]=f>>>24,i=i+12|0,(0|u)!=(0|(e=e+1|0)););return 0|m}function ue(r,e,i){var f=0,a=0,t=0,b=0,A=0,n=0,o=0;r:if(e>>>0<=63){if(e=0,(r=s[r+12>>2])>>>0<2)break r;if(a=3&(e=r-1|0),f=s[i>>2],i=0,r-2>>>0<3)r=1,e=0;else for(t=-4&e,e=0,r=1;b=r+3|0,A=r+2|0,n=r+1|0,e=p[f+(e<<2)>>2]>p[f+(r<<2)>>2]?r:e,e=p[f+(e<<2)>>2]>p[f+(n<<2)>>2]?n:e,e=p[f+(e<<2)>>2]>p[f+(A<<2)>>2]?A:e,e=p[f+(e<<2)>>2]>p[f+(b<<2)>>2]?b:e,r=r+4|0,(0|t)!=(0|(o=o+4|0)););if(!a)break r;for(;e=p[f+(e<<2)>>2]>p[f+(r<<2)>>2]?r:e,r=r+1|0,(0|a)!=(0|(i=i+1|0)););}else{if((0|(f=32-(e=s[r+580>>2])|0))>=4){if((0|(i=s[r+576>>2]))==s[r+568>>2])return 0;if(f=s[i>>2],a=e+4|0,s[r+580>>2]=a,e=f<<e>>>28|0,32!=(0|a))break r;return s[r+580>>2]=0,s[r+576>>2]=i+4,e}if((0|(a=(i=s[r+576>>2])+4|0))==s[r+568>>2])return 0;t=s[i>>2],s[r+576>>2]=a,s[r+580>>2]=e-28,r=60-e|0,e=s[i+4>>2]>>>r|t<<e>>>r-f}return e}function se(r){var e,i=0,f=0,a=0;if(s[(r|=0)>>2]=11436,(i=s[r+388>>2])&&(s[r+392>>2]=i,mr(i)),e=s[r+368>>2],s[r+368>>2]=0,e){if(i=s[(a=e-4|0)>>2])for(f=(i<<4)+e|0;(0|e)!=(0|(f=f-16|0)););mr(a)}if(Di(r+216|0),(i=s[r+196>>2])&&(s[r+200>>2]=i,mr(i)),(i=s[r+184>>2])&&(s[r+188>>2]=i,mr(i)),(i=s[r+172>>2])&&(s[r+176>>2]=i,mr(i)),(i=s[r+160>>2])&&(s[r+164>>2]=i,mr(i)),f=s[r+144>>2])for(;i=s[f>>2],mr(f),f=i,i;);return i=s[r+136>>2],s[r+136>>2]=0,i&&mr(i),(i=s[r+120>>2])&&mr(i),(i=s[r+108>>2])&&mr(i),(i=s[r+96>>2])&&mr(i),(i=s[r+72>>2])&&(s[r+76>>2]=i,mr(i)),(i=s[r+60>>2])&&mr(i),(i=s[r+48>>2])&&(s[r+52>>2]=i,mr(i)),(i=s[r+36>>2])&&(s[r+40>>2]=i,mr(i)),(i=s[r+24>>2])&&(s[r+28>>2]=i,mr(i)),(i=s[r+12>>2])&&(s[r+16>>2]=i,mr(i)),i=s[r+8>>2],s[r+8>>2]=0,i&&Ii(i),0|r}function _e(r){var e,i=0,f=0,a=0;if(s[(r|=0)>>2]=11384,e=s[r+368>>2],s[r+368>>2]=0,e){if(i=s[(a=e-4|0)>>2])for(f=(i<<4)+e|0;(0|e)!=(0|(f=f-16|0)););mr(a)}if(Di(r+216|0),(i=s[r+196>>2])&&(s[r+200>>2]=i,mr(i)),(i=s[r+184>>2])&&(s[r+188>>2]=i,mr(i)),(i=s[r+172>>2])&&(s[r+176>>2]=i,mr(i)),(i=s[r+160>>2])&&(s[r+164>>2]=i,mr(i)),f=s[r+144>>2])for(;i=s[f>>2],mr(f),f=i,i;);return i=s[r+136>>2],s[r+136>>2]=0,i&&mr(i),(i=s[r+120>>2])&&mr(i),(i=s[r+108>>2])&&mr(i),(i=s[r+96>>2])&&mr(i),(i=s[r+72>>2])&&(s[r+76>>2]=i,mr(i)),(i=s[r+60>>2])&&mr(i),(i=s[r+48>>2])&&(s[r+52>>2]=i,mr(i)),(i=s[r+36>>2])&&(s[r+40>>2]=i,mr(i)),(i=s[r+24>>2])&&(s[r+28>>2]=i,mr(i)),(i=s[r+12>>2])&&(s[r+16>>2]=i,mr(i)),i=s[r+8>>2],s[r+8>>2]=0,i&&Ii(i),0|r}function le(r,e){var i=0,f=0;i=s[e+8>>2],s[r+4>>2]=s[e+4>>2],s[r+8>>2]=i,s[r+20>>2]=s[e+20>>2],i=s[e+16>>2],s[r+12>>2]=s[e+12>>2],s[r+16>>2]=i;r:{e:{if((0|r)!=(0|e)){if(i=s[e+28>>2]){if(f=s[r+24>>2],s[r+32>>2]<<5>>>0<i>>>0){if(f&&(mr(f),s[r+32>>2]=0,s[r+24>>2]=0,s[r+28>>2]=0,i=s[e+28>>2]),(0|i)<0)break e;f=mf((i=1+(i-1>>>5|0)|0)<<2),s[r+32>>2]=i,s[r+28>>2]=0,s[r+24>>2]=f,i=s[e+28>>2]}me(f,s[e+24>>2],4+(i-1>>>3&536870908)|0),i=s[e+28>>2]}else i=0;if(s[r+28>>2]=i,i=s[e+40>>2]){if(f=s[r+36>>2],s[r+44>>2]<<5>>>0<i>>>0){if(f&&(mr(f),s[r+44>>2]=0,s[r+36>>2]=0,s[r+40>>2]=0,i=s[e+40>>2]),(0|i)<0)break r;f=mf((i=1+(i-1>>>5|0)|0)<<2),s[r+44>>2]=i,s[r+40>>2]=0,s[r+36>>2]=f,i=s[e+40>>2]}me(f,s[e+36>>2],4+(i-1>>>3&536870908)|0),e=s[e+40>>2]}else e=0;s[r+40>>2]=e}return}ha(),n()}ha(),n()}function pe(r){var e,i=0,f=0;i=s[r+8>>2],e=s[r>>2];r:{if(_[r+12|0]){e:{if(-1!=(0|i)&&-1!=(0|(i=((f=i+1|0)>>>0)%3|0?f:i-2|0))&&-1!=(0|(i=s[s[e+12>>2]+(i<<2)>>2]))){if(i=((f=i+1|0)>>>0)%3|0?f:i-2|0,s[r+8>>2]=i,-1!=(0|i))break e}else s[r+8>>2]=-1;i=-1;i:if(-1!=(0|(f=s[r+4>>2]))){if((f>>>0)%3|0)f=f-1|0;else if(i=-1,-1==(0|(f=f+2|0)))break i;i=-1,-1!=(0|(f=s[s[e+12>>2]+(f<<2)>>2]))&&(i=f-1|0,(f>>>0)%3|0||(i=f+2|0))}return c[r+12|0]=0,void(s[r+8>>2]=i)}if((0|i)!=s[r+4>>2])break r;return void(s[r+8>>2]=-1)}f=-1;e:if(-1!=(0|i)){if((i>>>0)%3|0)i=i-1|0;else if(f=-1,-1==(0|(i=i+2|0)))break e;f=-1,-1!=(0|(i=s[s[e+12>>2]+(i<<2)>>2]))&&(f=i-1|0,(i>>>0)%3|0||(f=i+2|0))}s[r+8>>2]=f}}function ye(r,e){r|=0;var i,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0,c=0;A=s[(e|=0)+8>>2],i=s[e+12>>2],n=f=s[e+20>>2];r:if(!((a=(t=s[e+16>>2])+4|0)>>>0>A>>>0&(0|(f=a>>>0<4?f+1|0:f))>=(0|i)|(0|f)>(0|i))){if(o=s[e>>2],b=_[0|(b=t+o|0)]|_[b+1|0]<<8|_[b+2|0]<<16|_[b+3|0]<<24,s[e+16>>2]=a,s[e+20>>2]=f,(k=l[e+38>>1])>>>0<=513){if(f=n,(a=t+8|0)>>>0>A>>>0&(0|(f=a>>>0<8?f+1|0:f))>=(0|i)|(0|f)>(0|i))break r;s[e+16>>2]=a,s[e+20>>2]=f}if(1&b&&!((t=31^R(b))-1>>>0>28)){if(s[r+8>>2]=t+1,t=-2^(n=-2<<t),s[r+16>>2]=t,s[r+12>>2]=~n,s[r+24>>2]=t>>1,y[r+20>>2]=v(2)/v(0|t),k>>>0<=513){if((0|f)>=(0|i)&a>>>0>=A>>>0|(0|f)>(0|i))break r;if(A=_[a+o|0],f=(a=a+1|0)?f:f+1|0,s[e+16>>2]=a,s[e+20>>2]=f,A>>>0>1)break r;s[r+72>>2]=A}c=Mr(r+96|0,e)}}return 0|c}function de(r,e){r|=0;var i,f,a=0,t=0,b=0,A=0,n=0,o=0,k=0,c=0;A=s[(e|=0)+8>>2],i=s[e+12>>2],n=a=s[e+20>>2];r:if(!((b=(f=s[e+16>>2])+4|0)>>>0>A>>>0&(0|(a=b>>>0<4?a+1|0:a))>=(0|i)|(0|a)>(0|i))&&(o=s[e>>2],t=_[0|(t=f+o|0)]|_[t+1|0]<<8|_[t+2|0]<<16|_[t+3|0]<<24,s[e+16>>2]=b,s[e+20>>2]=a,a=n,!((b=f+8|0)>>>0>A>>>0&(0|(a=b>>>0<8?a+1|0:a))>=(0|i)|(0|a)>(0|i))&&(s[e+16>>2]=b,s[e+20>>2]=a,1&t&&!((t=31^R(t))-1>>>0>28)))){if(s[r+8>>2]=t+1,t=-2^(k=-2<<t),s[r+16>>2]=t,s[r+12>>2]=~k,s[r+24>>2]=t>>1,y[r+20>>2]=v(2)/v(0|t),l[e+38>>1]<=513){if((0|a)>=(0|i)&b>>>0>=A>>>0|(0|a)>(0|i))break r;if(a=_[b+o|0],n=(A=f+9|0)>>>0<9?n+1|0:n,s[e+16>>2]=A,s[e+20>>2]=n,a>>>0>1)break r;s[r+72>>2]=a}c=Mr(r+96|0,e)}return 0|c}function me(r,e,i){var f=0,a=0;r:if((0|r)!=(0|e)){if(e-(a=r+i|0)>>>0<=0-(i<<1)>>>0)return Cr(r,e,i);if(f=3&(r^e),r>>>0<e>>>0){if(f)f=r;else{if(3&r)for(f=r;;){if(!i)break r;if(c[0|f]=_[0|e],e=e+1|0,i=i-1|0,!(3&(f=f+1|0)))break}else f=r;if(!(i>>>0<=3))for(;s[f>>2]=s[e>>2],e=e+4|0,f=f+4|0,(i=i-4|0)>>>0>3;);}if(i)for(;c[0|f]=_[0|e],f=f+1|0,e=e+1|0,i=i-1|0;);}else{if(!f){if(3&a)for(;;){if(!i)break r;if(c[0|(f=(i=i-1|0)+r|0)]=_[e+i|0],!(3&f))break}if(!(i>>>0<=3))for(;s[(i=i-4|0)+r>>2]=s[e+i>>2],i>>>0>3;);}if(!i)break r;for(;c[(i=i-1|0)+r|0]=_[e+i|0],i;);}}return r}function ve(r,e){var i=0,f=0,a=0,t=0,b=0,A=0,o=0;if((f=s[r+8>>2])-(i=s[r+4>>2])>>2>>>0>=e>>>0)return e&&(i=Ge(i,0,e<<=2)+e|0),void(s[r+4>>2]=i);r:{e:{i:{if((a=(t=i-(b=s[r>>2])>>2)+e|0)>>>0<1073741824){if(A=(f=f-b|0)>>>1|0,a=f>>>0>=2147483644?1073741823:a>>>0<A>>>0?A:a){if(a>>>0>=1073741824)break i;o=mf(a<<2)}if(t=(e=Ge(f=(t<<2)+o|0,0,t=e<<2))+t|0,a=(a<<2)+o|0,(0|i)==(0|b))break e;for(;e=s[(i=i-4|0)>>2],s[i>>2]=0,s[(f=f-4|0)>>2]=e,(0|i)!=(0|b););if(s[r+8>>2]=a,e=s[r+4>>2],s[r+4>>2]=t,i=s[r>>2],s[r>>2]=f,(0|e)==(0|i))break r;for(;r=s[(e=e-4|0)>>2],s[e>>2]=0,r&&Ya[s[s[r>>2]+4>>2]](r),(0|e)!=(0|i););break r}ha(),n()}Df(),n()}s[r+8>>2]=a,s[r+4>>2]=t,s[r>>2]=e}i&&mr(i)}function he(r,e,i){r:switch(e-9|0){case 0:return e=s[i>>2],s[i>>2]=e+4,void(s[r>>2]=s[e>>2]);case 6:return e=s[i>>2],s[i>>2]=e+4,e=u[e>>1],s[r>>2]=e,void(s[r+4>>2]=e>>31);case 7:return e=s[i>>2],s[i>>2]=e+4,s[r>>2]=l[e>>1],void(s[r+4>>2]=0);case 8:return e=s[i>>2],s[i>>2]=e+4,e=c[0|e],s[r>>2]=e,void(s[r+4>>2]=e>>31);case 9:return e=s[i>>2],s[i>>2]=e+4,s[r>>2]=_[0|e],void(s[r+4>>2]=0);case 16:return e=s[i>>2]+7&-8,s[i>>2]=e+8,void(d[r>>3]=d[e>>3]);case 17:n();default:return;case 1:case 4:case 14:return e=s[i>>2],s[i>>2]=e+4,e=s[e>>2],s[r>>2]=e,void(s[r+4>>2]=e>>31);case 2:case 5:case 11:case 15:return e=s[i>>2],s[i>>2]=e+4,s[r>>2]=s[e>>2],void(s[r+4>>2]=0);case 3:case 10:case 12:case 13:break r}e=s[i>>2]+7&-8,s[i>>2]=e+8,i=s[e+4>>2],s[r>>2]=s[e>>2],s[r+4>>2]=i}function Re(r,e){var i,f,a=0;Q=i=Q+-64|0,a=s[r>>2],f=s[a-4>>2],a=s[a-8>>2],s[i+32>>2]=0,s[i+36>>2]=0,s[i+40>>2]=0,s[i+44>>2]=0,s[i+48>>2]=0,s[i+52>>2]=0,c[i+55|0]=0,c[i+56|0]=0,c[i+57|0]=0,c[i+58|0]=0,c[i+59|0]=0,c[i+60|0]=0,c[i+61|0]=0,c[i+62|0]=0,s[i+24>>2]=0,s[i+28>>2]=0,s[i+20>>2]=0,s[i+16>>2]=14924,s[i+12>>2]=r,s[i+8>>2]=e,r=r+a|0,a=0;r:if(Yi(f,e,0))s[i+56>>2]=1,Ya[s[s[f>>2]+20>>2]](f,i+8|0,r,r,1,0),a=1==s[i+32>>2]?r:0;else{Ya[s[s[f>>2]+24>>2]](f,i+8|0,r,1,0);e:switch(s[i+44>>2]){case 0:a=1==s[i+48>>2]&&1==s[i+36>>2]&&1==s[i+40>>2]?s[i+28>>2]:0;break r;case 1:break e;default:break r}1!=s[i+32>>2]&&s[i+48>>2]|1!=s[i+36>>2]|1!=s[i+40>>2]||(a=s[i+24>>2])}return Q=i- -64|0,a}function Ne(r,e){var i=0,f=0,a=0,t=0,b=0,A=0,n=0;return s[r+16>>2]=0,a=s[r>>2],s[r+4>>2]=a,s[r+12>>2]=a,a=s[e+8>>2],A=i=s[e+12>>2],f=s[e+20>>2],a>>>0<(b=(t=s[e+16>>2])+4|0)>>>0&(0|(f=b>>>0<4?f+1|0:f))>=(0|i)|(0|f)>(0|i)||(i=t+s[e>>2]|0,i=_[0|i]|_[i+1|0]<<8|_[i+2|0]<<16|_[i+3|0]<<24,s[e+16>>2]=b,s[e+20>>2]=f,!i|3&i||a-b>>>0<i>>>0&(0|(t=A-(f+(a>>>0<b>>>0)|0)|0))<=0|(0|t)<0||(i>>>0>=4&&(ai(r,i>>>2|0),A=s[e+12>>2],b=s[e+16>>2],f=s[e+20>>2],a=s[e+8>>2]),a>>>0<(t=i+b|0)>>>0&(0|(f=t>>>0<i>>>0?f+1|0:f))>=(0|A)|(0|f)>(0|A)||(Cr(s[r>>2],s[e>>2]+b|0,i),f=s[e+20>>2],f=(a=i+s[e+16>>2]|0)>>>0<i>>>0?f+1|0:f,s[e+16>>2]=a,s[e+20>>2]=f,s[r+16>>2]=0,s[r+12>>2]=s[r>>2],n=1))),n}function Ze(r,e){var i=0,f=0,a=0,t=0;f=-1,a=-1,t=-1;r:{e:if(-1!=(0|e)){if(a=s[s[s[r+4>>2]+12>>2]+(e<<2)>>2],(0|(i=((i=e+1|0)>>>0)%3|0?i:e-2|0))>=0&&(t=(i>>>0)/3|0,t=s[(s[s[r>>2]+96>>2]+m(t,12)|0)+(i-m(t,3)<<2)>>2]),-1!=(0|a)&&((0|(i=((a>>>0)%3|0?-1:2)+a|0))<0||(f=(i>>>0)/3|0,f=s[(s[s[r>>2]+96>>2]+m(f,12)|0)+(i-m(f,3)<<2)>>2])),i=-1,(0|f)!=(0|t))break r;if(t=-1,(0|(e=((e>>>0)%3|0?-1:2)+e|0))>=0){if(f=(e>>>0)/3|0,f=s[(s[s[r>>2]+96>>2]+m(f,12)|0)+(e-m(f,3)<<2)>>2],-1==(0|a))break e}else if(f=-1,-1==(0|a))break e;(0|(e=((e=a+1|0)>>>0)%3|0?e:a-2|0))<0||(i=s[s[r>>2]+96>>2],t=s[(i+m(r=(e>>>0)/3|0,12)|0)+(e-m(r,3)<<2)>>2])}i=(0|f)!=(0|t)?-1:a}return i}function Ge(r,e,i){var f=0,a=0,t=0,b=0;if(i&&(c[0|r]=e,c[(f=r+i|0)-1|0]=e,!(i>>>0<3||(c[r+2|0]=e,c[r+1|0]=e,c[f-3|0]=e,c[f-2|0]=e,i>>>0<7||(c[r+3|0]=e,c[f-4|0]=e,i>>>0<9||(a=(f=0-r&3)+r|0,e=m(255&e,16843009),s[a>>2]=e,s[(i=(f=i-f&-4)+a|0)-4>>2]=e,f>>>0<9||(s[a+8>>2]=e,s[a+4>>2]=e,s[i-8>>2]=e,s[i-12>>2]=e,f>>>0<25||(s[a+24>>2]=e,s[a+20>>2]=e,s[a+16>>2]=e,s[a+12>>2]=e,s[i-16>>2]=e,s[i-20>>2]=e,s[i-24>>2]=e,s[i-28>>2]=e,(i=f-(b=4&a|24)|0)>>>0<32))))))))for(f=Ki(e,0,1,1),t=j,e=a+b|0;s[e+24>>2]=f,s[e+28>>2]=t,s[e+16>>2]=f,s[e+20>>2]=t,s[e+8>>2]=f,s[e+12>>2]=t,s[e>>2]=f,s[e+4>>2]=t,e=e+32|0,(i=i-32|0)>>>0>31;);return r}function Ue(r,e,i){var f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0;if(f=s[(a=r+16|0)>>2]){for(t=s[e>>2],e=a;e=(b=(0|t)>s[f+16>>2])?e:f,f=s[(b?f+4:f)>>2];);if(!((0|e)==(0|a)|(0|t)<s[e+16>>2])&&(f=s[e+24>>2]))for(t=e+20|0,b=(a=(e=_[i+11|0])<<24>>24<0)?s[i>>2]:i,e=a?s[i+4>>2]:e;;){r:{e:{i:{f:{a:{t:{if(n=(o=(a=(A=(a=_[f+27|0])<<24>>24<0)?s[f+20>>2]:a)>>>0<e>>>0)?a:e){if(k=Ti(b,A=A?s[f+16>>2]:f+16|0,n))break t;if(e>>>0>=a>>>0)break a;break r}if(e>>>0>=a>>>0)break f;break r}if((0|k)<0)break r}if(a=Ti(A,b,n))break i}if(o)break e;return ti(t,i)}if(!((0|a)<0))return ti(t,i)}f=f+4|0}if(!(f=s[f>>2]))break}}return ti(r,i)}function We(r,e,i){var f,a,t=0,b=0,A=0,n=0,o=0,k=0,c=0;Q=f=Q-16|0;r:{if((0|(b=s[r+24>>2]))!=(0|(a=s[r+28>>2])))for(;;){s[f+8>>2]=0,s[f>>2]=0,s[f+4>>2]=0,r=ef(s[b>>2],e,f),n=(A=_[f+11|0])<<24>>24,o=3;e:{i:{f:if(r&&(o=0,t=(r=_[i+11|0])<<24>>24,(0|(k=(0|n)<0?s[f+4>>2]:A))==(0|((0|t)<0?s[i+4>>2]:r)))){r=(0|t)<0?s[i>>2]:i;a:if(t=(0|n)<0){if(k&&Ti(t?s[f>>2]:f,r,k))break i}else{if(t=f,!n)break a;for(;;){if(_[0|t]!=_[0|r])break f;if(r=r+1|0,t=t+1|0,!(A=A-1|0))break}}c=s[b>>2],o=1}if((0|n)>=0)break e}mr(s[f>>2])}e:switch(0|o){case 0:case 3:break e;default:break r}if((0|a)==(0|(b=b+4|0)))break}c=0}return Q=f+16|0,c}function Ve(r,e,i){var f,a=0,t=0,b=0,A=0,o=0;if((f=(b=i-e|0)>>2)>>>0<=(a=s[r+8>>2])-(t=s[r>>2])>>2>>>0){if(b=(A=(a=s[r+4>>2])-t|0)+e|0,(0|(A=(o=A>>2)>>>0<f>>>0?b:i))!=(0|e))for(;s[t>>2]=s[e>>2],t=t+4|0,(0|A)!=(0|(e=e+4|0)););if(f>>>0>o>>>0){if((0|i)!=(0|A))for(;s[a>>2]=s[b>>2],a=a+4|0,(0|(b=b+4|0))!=(0|i););return void(s[r+4>>2]=a)}s[r+4>>2]=t}else{if(t&&(s[r+4>>2]=t,mr(t),s[r+8>>2]=0,s[r>>2]=0,s[r+4>>2]=0,a=0),!((0|b)<0||(t=a>>>1|0,(a=a>>>0>=2147483644?1073741823:t>>>0>f>>>0?t:f)>>>0>=1073741824)))return a=mf(t=a<<2),s[r>>2]=a,s[r+8>>2]=a+t,(0|e)!=(0|i)&&(a=Cr(a,i=e,e=4+(b-4&-4)|0)+e|0),void(s[r+4>>2]=a);ha(),n()}}function Te(r,e,i){var f,a=0,t=0;Q=f=Q-16|0,s[r+4>>2]=0;r:{e:if(e){if((a=(t=s[r+8>>2])<<5)>>>0>=e>>>0)s[r+4>>2]=e;else{if(s[f+8>>2]=0,s[f>>2]=0,s[f+4>>2]=0,(0|e)<0)break r;Wr(f,a=a>>>0<=1073741822?(a=e+31&-32)>>>0<(t<<=6)>>>0?t:a:2147483647),t=s[r>>2],s[r>>2]=s[f>>2],s[f>>2]=t,a=s[r+4>>2],s[r+4>>2]=e,s[f+4>>2]=a,a=s[r+8>>2],s[r+8>>2]=s[f+8>>2],s[f+8>>2]=a,t&&mr(t)}if(a=e>>>5|0,r=s[r>>2],_[0|i]){if(e>>>0>=32&&Ge(r,255,a<<2),(-32&e)==(0|e))break e;s[(r=r+(a<<2)|0)>>2]=s[r>>2]|-1>>>32-(31&e)}else e>>>0>=32&&Ge(r,0,a<<2),(-32&e)!=(0|e)&&(s[(r=r+(a<<2)|0)>>2]=s[r>>2]&~(-1>>>32-(31&e)))}return void(Q=f+16|0)}ha(),n()}function De(r,e){var i,f,a,t,b=0,A=0,o=0,k=0;if(e=s[e>>2],f=s[e+8>>2],a=s[e+4>>2],t=s[e>>2],i=s[r>>2],(e=s[i+4>>2])>>>0<(r=s[i+8>>2])>>>0)return s[e+8>>2]=f,s[e+4>>2]=a,s[e>>2]=t,void(s[i+4>>2]=e+12);r:{if((b=(k=(e-(A=s[i>>2])|0)/12|0)+1|0)>>>0<357913942){if(r=(o=(r-A|0)/12|0)<<1,b=o>>>0>=178956970?357913941:r>>>0>b>>>0?r:b){if(b>>>0>=357913942)break r;o=mf(m(b,12))}else o=0;if(r=o+m(k,12)|0,s[r+8>>2]=f,s[r+4>>2]=a,s[r>>2]=t,k=r+12|0,(0|e)!=(0|A))for(;e=e-12|0,s[(r=r-12|0)>>2]=s[e>>2],s[r+4>>2]=s[e+4>>2],s[r+8>>2]=s[e+8>>2],(0|e)!=(0|A););return s[i+8>>2]=o+m(b,12),s[i+4>>2]=k,s[i>>2]=r,void(A&&mr(A))}ha(),n()}Df(),n()}function Fe(r,e,i){var f,a=0,t=0,b=0,A=0,o=0;if((f=(b=i-e|0)>>2)>>>0<=(a=s[r+8>>2])-(t=s[r>>2])>>2>>>0){if(a=(b=s[r+4>>2]-t|0)+e|0,o=(b=(A=b>>2)>>>0<f>>>0?a:i)-e|0,(0|e)!=(0|b)&&me(t,e,o),f>>>0>A>>>0){if(e=s[r+4>>2],(0|i)!=(0|b))for(;s[e>>2]=s[a>>2],e=e+4|0,(0|(a=a+4|0))!=(0|i););return void(s[r+4>>2]=e)}s[r+4>>2]=t+o}else{if(t&&(s[r+4>>2]=t,mr(t),s[r+8>>2]=0,s[r>>2]=0,s[r+4>>2]=0,a=0),!((0|b)<0||(t=a>>>1|0,(a=a>>>0>=2147483644?1073741823:t>>>0>f>>>0?t:f)>>>0>=1073741824)))return a=mf(t=a<<2),s[r>>2]=a,s[r+8>>2]=a+t,(0|e)!=(0|i)&&(a=Cr(a,i=e,e=4+(b-4&-4)|0)+e|0),void(s[r+4>>2]=a);ha(),n()}}function Be(r,e){var i=0,f=0,a=0,t=0,b=0,A=0;if((0|(i=s[r+4>>2]))!=s[r+8>>2])return a=s[e+4>>2],s[i>>2]=s[e>>2],s[i+4>>2]=a,s[i+8>>2]=s[e+8>>2],void(s[r+4>>2]=i+12);r:{if((a=(f=(i-(b=s[r>>2])|0)/12|0)+1|0)>>>0<357913942){if(t=f<<1,t=f>>>0>=178956970?357913941:a>>>0<t>>>0?t:a){if(t>>>0>=357913942)break r;a=mf(m(t,12))}else a=0;if(f=a+m(f,12)|0,A=s[e+4>>2],s[f>>2]=s[e>>2],s[f+4>>2]=A,s[f+8>>2]=s[e+8>>2],e=f+12|0,(0|i)!=(0|b)){for(;A=s[(i=i-12|0)+4>>2],s[(f=f-12|0)>>2]=s[i>>2],s[f+4>>2]=A,s[f+8>>2]=s[i+8>>2],(0|i)!=(0|b););i=s[r>>2]}return s[r+8>>2]=a+m(t,12),s[r+4>>2]=e,s[r>>2]=f,void(i&&mr(i))}ha(),n()}Df(),n()}function Ee(r,e,i,f,a,t,b){var A,o=0,k=0;if(Q=A=Q-16|0,2147483631+~e>>>0>=i>>>0)return o=_[r+11|0]>>>7|0?s[r>>2]:r,e>>>0<1073741799?(s[A+12>>2]=e<<1,s[A>>2]=e+i,Q=i=Q-16|0,Q=i+16|0,i=A+12|0,i=(i=(i=s[(p[A>>2]<p[i>>2]?i:A)>>2])>>>0>=11?11==(0|(i=(k=i+16&-16)-1|0))?k:i:10)+1|0):i=2147483631,Hf(A,i),i=s[A>>2],t&&fi(i,b,t),b=f-a|0,(0|f)!=(0|a)&&fi(i+t|0,a+o|0,b),10!=(0|e)&&mr(o),s[r>>2]=i,s[r+8>>2]=-2147483648&s[r+8>>2]|2147483647&s[A+4>>2],s[r+8>>2]=-2147483648|s[r+8>>2],e=r,r=t+b|0,s[e+4>>2]=r,c[A+12|0]=0,c[r+i|0]=_[A+12|0],void(Q=A+16|0);Ra(),n()}function Ye(r,e,i){var f=0,a=0,t=0,b=0,A=0,o=0;s[r+8>>2]=0,s[r>>2]=0,s[r+4>>2]=0;r:{e:{if(e){if(e>>>0>=357913942)break e;if(f=mf(e=m(e,12)),s[r+4>>2]=f,s[r>>2]=f,a=e+f|0,s[r+8>>2]=a,(0|(t=s[i+4>>2]))!=(0|(b=s[i>>2]))){if((0|(A=t-b|0))<0)break r;for(o=-4&A;;){for(s[f+8>>2]=0,s[f>>2]=0,s[f+4>>2]=0,e=mf(A),s[f>>2]=e,s[f+8>>2]=e+o,i=b;s[e>>2]=s[i>>2],e=e+4|0,(0|t)!=(0|(i=i+4|0)););if(s[f+4>>2]=e,(0|a)==(0|(f=f+12|0)))break}}else Ge(f,0,12+((e=e-12|0)-((e>>>0)%12|0)|0)|0);s[r+4>>2]=a}return}ha(),n()}s[f+8>>2]=0,s[f>>2]=0,s[f+4>>2]=0,ha(),n()}function Qe(r,e,i){var f=0,a=0,t=0,b=0;r:{if(t=e>>>0<1431655766&(e|i)>=0){if(Xr(r,e=m(e,3),13648),Xr(r+12|0,e,13652),f=s[r+24>>2],!(s[r+32>>2]-f>>2>>>0>=i>>>0)){if(i>>>0>=1073741824)break r;if(e=s[r+28>>2],a=(i=mf(a=i<<2))+a|0,i=b=i+(e-f&-4)|0,(0|e)!=(0|f))for(;e=e-4|0,s[(i=i-4|0)>>2]=s[e>>2],(0|e)!=(0|f););s[r+32>>2]=a,s[r+28>>2]=b,s[r+24>>2]=i,f&&mr(f)}s[r+80>>2]=0,s[r+84>>2]=0,e=s[r+76>>2],s[r+76>>2]=0,e&&mr(e),s[r+68>>2]=0,s[r+72>>2]=0,r=s[(e=r- -64|0)>>2],s[e>>2]=0,r&&mr(r)}return t}ha(),n()}function je(r){var e=0,i=0,f=0,a=0,t=0;t=1;r:if(!((0|(i=s[r+140>>2]))<=0)){for(e=i<<4,f=mf(i>>>0>268435455?-1:4|e),s[f>>2]=i,i=(f=f+4|0)+e|0,e=f;s[e>>2]=0,s[e+4>>2]=0,c[e+5|0]=0,c[e+6|0]=0,c[e+7|0]=0,c[e+8|0]=0,c[e+9|0]=0,c[e+10|0]=0,c[e+11|0]=0,c[e+12|0]=0,(0|i)!=(0|(e=e+16|0)););if(a=s[r+136>>2],s[r+136>>2]=f,a){if(f=s[(i=a-4|0)>>2])for(e=(f<<4)+a|0;(0|a)!=(0|(e=e-16|0)););mr(i)}if(e=0,!(s[r+140>>2]<=0))for(;;){if(!(t=Mr(s[r+136>>2]+(e<<4)|0,r)))break r;if(!((0|(e=e+1|0))<s[r+140>>2]))break}}return t}function Ie(r,e){var i,f,a=0,t=0,b=0;return s[r+64>>2]||(a=mf(32),s[a+16>>2]=0,s[a+20>>2]=0,s[a+8>>2]=0,s[a>>2]=0,s[a+4>>2]=0,s[a+24>>2]=0,s[a+28>>2]=0,t=s[r+64>>2],s[r+64>>2]=a,t&&((a=s[t>>2])&&(s[t+4>>2]=a,mr(a)),mr(t))),t=s[r+64>>2],a=(a=s[r+28>>2]-1|0)>>>0<=10?s[13584+(a<<2)>>2]:-1,(f=ie(t,0,Ki(a=m(a,_[r+24|0]),i=a>>31,e,0),j))&&(t=s[r+64>>2],s[r>>2]=t,b=s[t+20>>2],s[r+8>>2]=s[t+16>>2],s[r+12>>2]=b,b=s[t+24>>2],t=s[t+28>>2],s[r+48>>2]=0,s[r+52>>2]=0,s[r+40>>2]=a,s[r+44>>2]=i,s[r+16>>2]=b,s[r+20>>2]=t,s[r+80>>2]=e),f}function Je(r,e){var i=0;return i=s[e+4>>2],s[r>>2]=s[e>>2],s[r+4>>2]=i,i=s[e+60>>2],s[r+56>>2]=s[e+56>>2],s[r+60>>2]=i,i=s[e+52>>2],s[r+48>>2]=s[e+48>>2],s[r+52>>2]=i,i=s[e+44>>2],s[r+40>>2]=s[e+40>>2],s[r+44>>2]=i,i=s[e+36>>2],s[r+32>>2]=s[e+32>>2],s[r+36>>2]=i,i=s[e+28>>2],s[r+24>>2]=s[e+24>>2],s[r+28>>2]=i,i=s[e+20>>2],s[r+16>>2]=s[e+16>>2],s[r+20>>2]=i,i=s[e+12>>2],s[r+8>>2]=s[e+8>>2],s[r+12>>2]=i,s[r+88>>2]=0,s[r+64>>2]=0,s[r+68>>2]=0,s[r+72>>2]=0,s[r+76>>2]=0,c[r+77|0]=0,c[r+78|0]=0,c[r+79|0]=0,c[r+80|0]=0,c[r+81|0]=0,c[r+82|0]=0,c[r+83|0]=0,c[r+84|0]=0,r}function we(r,e){var i,f=0,a=0,t=0,b=0,A=0,n=0;i=r+4|0;r:{e:if(r=s[r+4>>2]){for(b=(f=(a=_[e+11|0])<<24>>24<0)?s[e>>2]:e,a=f?s[e+4>>2]:a,e=i;(n=(A=(t=(f=(t=_[r+27|0])<<24>>24<0)?s[r+20>>2]:t)>>>0>a>>>0)?a:t)&&(f=Ti(f?s[r+16>>2]:r+16|0,b,n))||(f=a>>>0>t>>>0?-1:A),e=(f=(0|f)<0)?e:r,r=s[(f?r+4:r)>>2];);if((0|e)!=(0|i)){if(!(t=(f=(r=(f=_[e+27|0])<<24>>24<0)?s[e+20>>2]:f)>>>0<a>>>0?f:a)||!(r=Ti(b,r?s[e+16>>2]:e+16|0,t))){if(f>>>0>a>>>0)break e;break r}if((0|r)>=0)break r}}e=i}return e}function Me(r,e,i){var f=0,a=0,t=0,b=0;r:{if(e)if(l[r+38>>1]<=513){if(t=s[r+12>>2],f=s[r+20>>2],f=(b=(e=s[r+16>>2])+8|0)>>>0<8?f+1|0:f,a=0,p[r+8>>2]<b>>>0&(0|f)>=(0|t)|(0|f)>(0|t))break r;e=e+s[r>>2]|0,f=_[e+4|0]|_[e+5|0]<<8|_[e+6|0]<<16|_[e+7|0]<<24,s[i>>2]=_[0|e]|_[e+1|0]<<8|_[e+2|0]<<16|_[e+3|0]<<24,s[i+4>>2]=f,e=s[r+20>>2],e=(i=s[r+16>>2]+8|0)>>>0<8?e+1|0:e,s[r+16>>2]=i,s[r+20>>2]=e}else if(a=0,!si(1,i,r))break r;c[r+36|0]=1,s[r+32>>2]=0,i=(e=s[r+16>>2])+s[r>>2]|0,s[r+24>>2]=i,s[r+28>>2]=(s[r+8>>2]-e|0)+i,a=1}return a}function Oe(r,e){r|=0,e|=0;var i=0,f=0,a=0,t=0,b=0,A=0;t=mf(64),i=mf(12),s[i+8>>2]=s[s[r+4>>2]+80>>2],s[i>>2]=13216,s[i+4>>2]=0,t=gi(t,i);r:{if((0|e)<0)i=t;else{if(A=r+8|0,!((0|(b=(i=s[r+12>>2])-(a=s[r+8>>2])>>2))>(0|e)))if(f=e+1|0,e>>>0>=b>>>0)ve(A,f-b|0);else if(!(f>>>0>=b>>>0)){if((0|(a=a+(f<<2)|0))!=(0|i))for(;f=s[(i=i-4|0)>>2],s[i>>2]=0,f&&Ya[s[s[f>>2]+4>>2]](f),(0|i)!=(0|a););s[r+12>>2]=a}if(r=s[A>>2]+(e<<2)|0,i=s[r>>2],s[r>>2]=t,!i)break r}Ya[s[s[i>>2]+4>>2]](i)}return~e>>>31|0}function Xe(r,e){var i,f,a=0;if(Q=f=Q-16|0,s[f+12>>2]=e,Q=i=Q-208|0,s[i+204>>2]=e,Ge(e=i+160|0,0,40),s[i+200>>2]=s[i+204>>2],!((0|L(0,r,i+200|0,i+80|0,e))<0)){s[3941]>=0,e=s[3922],s[3940]<=0&&(s[3922]=-33&e);r:{e:{if(s[3934]){if(s[3926])break e}else s[3934]=80,s[3929]=0,s[3926]=0,s[3927]=0,a=s[3933],s[3933]=i;if(ff(15688))break r}L(15688,r,i+200|0,i+80|0,i+160|0)}a&&(Ya[s[3931]](15688,0,0),s[3934]=0,s[3933]=a,s[3929]=0,s[3926]=0,s[3927]=0),s[3922]=s[3922]|32&e}Q=i+208|0,Q=f+16|0}function ge(r,e){e|=0;var i=0,f=0,a=0,t=0;if((0|(i=s[(r|=0)+216>>2]))!=s[r+220>>2])for(;;){r:if(!((0|(i=s[m(a,144)+i>>2]))<0||(f=s[r+4>>2],t=s[f+8>>2],(0|i)>=s[f+12>>2]-t>>2||(f=0,i=s[(i<<2)+t>>2],(0|Ya[s[s[i>>2]+24>>2]](i))<=0)))){for(;;){if((0|Ya[s[s[i>>2]+20>>2]](i,f))!=(0|e)){if(f=f+1|0,(0|Ya[s[s[i>>2]+24>>2]](i))>(0|f))continue;break r}break}return r=s[r+216>>2]+m(a,144)|0,0|(_[r+100|0]?r+4:0)}if(a=a+1|0,i=s[r+216>>2],!(a>>>0<(s[r+220>>2]-i|0)/144>>>0))break}return 0}function ze(r){var e=0,i=0,f=0,a=0;if(i=s[r+132>>2]){if(f=i,(0|i)!=(0|(e=s[r+136>>2]))){for(;(a=s[(f=e-12|0)>>2])&&(s[e-8>>2]=a,mr(a)),(0|i)!=(0|(e=f)););f=s[r+132>>2]}s[r+136>>2]=i,mr(f)}if(i=s[r+120>>2]){if(f=i,(0|i)!=(0|(e=s[r+124>>2]))){for(;(a=s[(f=e-12|0)>>2])&&(s[e-8>>2]=a,mr(a)),(0|i)!=(0|(e=f)););f=s[r+120>>2]}s[r+124>>2]=i,mr(f)}(e=s[r+108>>2])&&(s[r+112>>2]=e,mr(e)),(e=s[r+96>>2])&&(s[r+100>>2]=e,mr(e)),Bf(r+76|0),Bf(r+56|0),Bf(r+36|0),Bf(r+16|0)}function He(r){var e=0,i=0,f=0;if(s[(r|=0)>>2]=2128,f=s[r+60>>2]){if((0|(e=f))!=(0|(i=s[r- -64>>2]))){for(;e=s[(i=i-4|0)>>2],s[i>>2]=0,e&&Ci(e),(0|i)!=(0|f););e=s[r+60>>2]}s[r+64>>2]=f,mr(e)}if((e=s[r+48>>2])&&(s[r+52>>2]=e,mr(e)),f=s[r+36>>2]){if((0|(e=f))!=(0|(i=s[r+40>>2]))){for(;Ya[s[s[(i=i-24|0)>>2]>>2]](i),(0|i)!=(0|f););e=s[r+36>>2]}s[r+40>>2]=f,mr(e)}return s[r>>2]=1984,(e=s[r+16>>2])&&(s[r+20>>2]=e,mr(e)),(e=s[r+4>>2])&&(s[r+8>>2]=e,mr(e)),0|r}function Ce(r,e){var i=0,f=0,a=0,t=0,b=0,A=0,o=0;if((i=s[r+8>>2])-(f=s[r+4>>2])>>2>>>0>=e>>>0)return e&&(f=Ge(f,0,e<<=2)+e|0),void(s[r+4>>2]=f);r:{if((a=(b=f-(t=s[r>>2])>>2)+e|0)>>>0<1073741824){if(A=(i=i-t|0)>>>1|0,a=i>>>0>=2147483644?1073741823:a>>>0<A>>>0?A:a){if(a>>>0>=1073741824)break r;o=mf(a<<2)}if(e=Ge(i=(b<<2)+o|0,0,e<<=2)+e|0,(0|f)!=(0|t))for(;f=f-4|0,s[(i=i-4|0)>>2]=s[f>>2],(0|f)!=(0|t););return s[r+8>>2]=(a<<2)+o,s[r+4>>2]=e,s[r>>2]=i,void(t&&mr(t))}ha(),n()}Df(),n()}function Pe(r){var e=0,i=0,f=0,a=0,t=0;if(f=s[r+8>>2],!_[f+84|0]&&!(!(e=s[r+16>>2])|!_[e+84|0]||(i=s[f+72>>2],a=s[f+68>>2],c[e+84|0]=0,i=i-a>>2,t=s[e+68>>2],i>>>0>(a=s[e+72>>2]-t>>2)>>>0?(Or(e+68|0,i-a|0,2316),f=s[r+8>>2]):i>>>0>=a>>>0||(s[e+72>>2]=t+(i<<2)),_[f+84|0]||(0|(i=s[f+68>>2]))==s[f+72>>2])))for(a=s[s[r+16>>2]+68>>2],e=0;s[(t=e<<2)+a>>2]=s[i+t>>2],e=e+1|0,i=s[f+68>>2],e>>>0<s[f+72>>2]-i>>2>>>0;);return s[r+16>>2]}function Se(r,e){e|=0;var i=0,f=0,a=0,t=0;if((0|(i=s[(r|=0)+216>>2]))!=s[r+220>>2])for(;;){r:if(!((0|(i=s[m(a,144)+i>>2]))<0||(f=s[r+4>>2],t=s[f+8>>2],(0|i)>=s[f+12>>2]-t>>2||(f=0,i=s[(i<<2)+t>>2],(0|Ya[s[s[i>>2]+24>>2]](i))<=0)))){for(;;){if((0|Ya[s[s[i>>2]+20>>2]](i,f))!=(0|e)){if(f=f+1|0,(0|Ya[s[s[i>>2]+24>>2]](i))>(0|f))continue;break r}break}return 104+(s[r+216>>2]+m(a,144)|0)|0}if(a=a+1|0,i=s[r+216>>2],!(a>>>0<(s[r+220>>2]-i|0)/144>>>0))break}return r+184|0}function xe(r){var e=0,i=0,f=0,a=0;if(i=s[r+640>>2]){if(f=i,(0|i)!=(0|(e=s[r+644>>2]))){for(;(a=s[(f=e-12|0)>>2])&&(s[e-8>>2]=a,mr(a)),(0|i)!=(0|(e=f)););f=s[r+640>>2]}s[r+644>>2]=i,mr(f)}if(i=s[r+628>>2]){if(f=i,(0|i)!=(0|(e=s[r+632>>2]))){for(;(a=s[(f=e-12|0)>>2])&&(s[e-8>>2]=a,mr(a)),(0|i)!=(0|(e=f)););f=s[r+628>>2]}s[r+632>>2]=i,mr(f)}(e=s[r+616>>2])&&(s[r+620>>2]=e,mr(e)),(e=s[r+604>>2])&&(s[r+608>>2]=e,mr(e)),Bf(r+584|0),Bf(r+564|0),Bf(r+544|0)}function Le(r){var e=0,i=0,f=0,a=0;if(i=s[r+128>>2]){if(f=i,(0|i)!=(0|(e=s[r+132>>2]))){for(;(a=s[(f=e-12|0)>>2])&&(s[e-8>>2]=a,mr(a)),(0|i)!=(0|(e=f)););f=s[r+128>>2]}s[r+132>>2]=i,mr(f)}if(i=s[r+116>>2]){if(f=i,(0|i)!=(0|(e=s[r+120>>2]))){for(;(a=s[(f=e-12|0)>>2])&&(s[e-8>>2]=a,mr(a)),(0|i)!=(0|(e=f)););f=s[r+116>>2]}s[r+120>>2]=i,mr(f)}(e=s[r+104>>2])&&(s[r+108>>2]=e,mr(e)),(e=s[r+92>>2])&&(s[r+96>>2]=e,mr(e)),Bf(r+72|0),Bf(r+52|0),Bf(r+32|0)}function Ke(r,e){var i=0,f=0,a=0,t=0,b=0,A=0,o=0;r:{e:if((f=(i=s[r+4>>2])-(a=s[r>>2])|0)>>>0<e>>>0){if((b=e-f|0)>>>0<=(t=s[r+8>>2])-i>>>0){A=r,o=Ge(i,0,b)+b|0,s[A+4>>2]=o;break e}if((0|e)<0)break r;if(t=(i=t-a|0)<<1,Ge((t=mf(i=i>>>0>=1073741823?2147483647:e>>>0<t>>>0?t:e))+f|0,0,b),f=me(t,a,f),s[r+8>>2]=f+i,s[r+4>>2]=e+f,s[r>>2]=f,!a)break e;mr(a)}else e>>>0>=f>>>0||(s[r+4>>2]=e+a);return i=e=s[r+28>>2],f=e+1|0,a=(e=s[r+24>>2]+1|0)?i:f,s[r+24>>2]=e,void(s[r+28>>2]=a)}ha(),n()}function qe(r,e){var i=0,f=0,a=0,t=0,b=0,A=0;if((0|(a=s[r+4>>2]))!=s[r+8>>2])return s[a>>2]=s[e>>2],void(s[r+4>>2]=a+4);r:{if((f=(i=(t=a-(b=s[r>>2])|0)>>2)+1|0)>>>0<1073741824){if(A=i<<2,i=t>>>1|0,i=t>>>0>=2147483644?1073741823:i>>>0>f>>>0?i:f){if(i>>>0>=1073741824)break r;t=mf(i<<2)}else t=0;if(s[(f=A+t|0)>>2]=s[e>>2],e=f+4|0,(0|a)!=(0|b))for(;a=a-4|0,s[(f=f-4|0)>>2]=s[a>>2],(0|a)!=(0|b););return s[r+8>>2]=t+(i<<2),s[r+4>>2]=e,s[r>>2]=f,void(b&&mr(b))}ha(),n()}Df(),n()}function $e(r){s[r>>2]=-1,s[r+4>>2]=0,s[r+8>>2]=0,s[r+32>>2]=0,s[r+36>>2]=0,c[r+28|0]=1,s[r+20>>2]=0,s[r+24>>2]=0,s[r+12>>2]=0,s[r+16>>2]=0,s[r+40>>2]=0,s[r+44>>2]=0,s[r+48>>2]=0,s[r+52>>2]=0,s[r+56>>2]=0,s[r+60>>2]=0,s[r+64>>2]=0,s[r+68>>2]=0,s[r+76>>2]=0,s[r+80>>2]=0,s[r+84>>2]=0,s[r+88>>2]=0,s[r+92>>2]=0,s[r+96>>2]=0,s[r+72>>2]=r+4,s[r+104>>2]=0,s[r+108>>2]=0,c[r+100|0]=1,s[r+112>>2]=0,s[r+116>>2]=0,s[r+120>>2]=0,s[r+124>>2]=0,s[r+128>>2]=0,s[r+132>>2]=0,s[r+136>>2]=0,s[r+140>>2]=0}function ri(r,e){if(!r)return 0;r:{e:{if(r){if(e>>>0<=127)break e;if(s[s[4292]>>2]){if(e>>>0<=2047){c[r+1|0]=63&e|128,c[0|r]=e>>>6|192,r=2;break r}if(!(57344!=(-8192&e)&e>>>0>=55296)){c[r+2|0]=63&e|128,c[0|r]=e>>>12|224,c[r+1|0]=e>>>6&63|128,r=3;break r}if(e-65536>>>0<=1048575){c[r+3|0]=63&e|128,c[0|r]=e>>>18|240,c[r+2|0]=e>>>6&63|128,c[r+1|0]=e>>>12&63|128,r=4;break r}}else if(57216==(-128&e))break e;s[3992]=25,r=-1}else r=1;break r}c[0|r]=e,r=1}return r}function ei(r,e){var i=0,f=0,a=0,t=0;f=s[r+12>>2],(i=s[r+16>>2]-f>>2)>>>0<e>>>0?ai(r+12|0,e-i|0):e>>>0>=i>>>0||(s[r+16>>2]=f+(e<<2));r:{if(i=s[r>>2],!(s[r+8>>2]-i>>2>>>0>=e>>>0)){if(e>>>0>=1073741824)break r;if(f=s[r+4>>2],a=(e=mf(a=e<<2))+a|0,e=t=e+(f-i&-4)|0,(0|i)!=(0|f))for(;f=f-4|0,s[(e=e-4|0)>>2]=s[f>>2],(0|i)!=(0|f););s[r+8>>2]=a,s[r+4>>2]=t,s[r>>2]=e,i&&mr(i)}return}ha(),n()}function ii(r){var e=0,i=0,f=0;if(s[(r|=0)>>2]=13724,(e=s[r+68>>2])&&(s[r+72>>2]=e,mr(e)),(e=s[r+56>>2])&&(s[r+60>>2]=e,mr(e)),(e=s[r+44>>2])&&(s[r+48>>2]=e,mr(e)),(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),(e=s[r+20>>2])&&(s[r+24>>2]=e,mr(e)),e=s[r+8>>2]){if(f=e,(0|e)!=(0|(i=s[r+12>>2]))){for(;f=s[(i=i-4|0)>>2],s[i>>2]=0,f&&Ci(f),(0|e)!=(0|i););f=s[r+8>>2]}s[r+12>>2]=e,mr(f)}return e=s[r+4>>2],s[r+4>>2]=0,e&&Fi(e),0|r}function fi(r,e,i){var f,a,t,b,A=0;Q=A=(Q=f=(Q=a=Q-16|0)-32|0)-16|0,s[A+12>>2]=e,s[A+8>>2]=e+i,s[f+24>>2]=s[A+12>>2],s[f+28>>2]=s[A+8>>2],Q=i=(Q=A+16|0)-16|0,t=(b=s[f+28>>2])-(A=s[f+24>>2])|0,(0|A)!=(0|b)&&me(r,A,t),s[i+12>>2]=A+t,s[i+8>>2]=r+t,s[f+16>>2]=s[i+12>>2],s[f+20>>2]=s[i+8>>2],Q=i+16|0,s[f+12>>2]=(s[f+16>>2]-e|0)+e,s[f+8>>2]=(s[f+20>>2]-r|0)+r,s[a+8>>2]=s[f+12>>2],s[a+12>>2]=s[f+8>>2],Q=f+32|0,Q=a+16|0}function ai(r,e){var i=0,f=0,a=0,t=0,b=0,A=0,o=0;if((a=s[r+8>>2])-(i=s[r+4>>2])>>2>>>0>=e>>>0)return e&&(i=Ge(i,0,e<<=2)+e|0),void(s[r+4>>2]=i);r:{if((f=(A=(b=(t=i)-(i=s[r>>2])|0)>>2)+e|0)>>>0<1073741824){if(t=(a=a-i|0)>>>1|0,f=a>>>0>=2147483644?1073741823:f>>>0<t>>>0?t:f){if(f>>>0>=1073741824)break r;o=mf(f<<2)}return a=Ge((A<<2)+o|0,0,e<<=2),t=f<<2,f=me(o,i,b),s[r+8>>2]=t+f,s[r+4>>2]=e+a,s[r>>2]=f,void(i&&mr(i))}ha(),n()}Df(),n()}function ti(r,e){var i=0,f=0,a=0,t=0;if((0|(i=r+4|0))!=(0|(r=we(r,e)))){for(e=r+28|0,e=c[r+39|0]<0?s[e>>2]:e;e=(r=e)+1|0,32==(0|(i=c[0|r]))|i-9>>>0<5;);r:{e:{i:switch((i=c[0|r])-43|0){case 0:break e;case 2:break i;default:break r}a=1}i=c[0|e],r=e}if(i-48>>>0<10)for(;f=48+(m(f,10)-c[0|r]|0)|0,e=c[r+1|0],r=r+1|0,e-48>>>0<10;);-1!=(0|(r=a?f:0-f|0))&&(t=!!(0|r))}return t}function bi(r,e){var i=0,f=0,a=0,t=0,b=0,A=0;if(r=s[r>>2],(i=s[r+4>>2])>>>0<(a=s[r+8>>2])>>>0)return s[i>>2]=s[e>>2],void(s[r+4>>2]=i+4);r:{if((t=(f=(b=(f=i)-(i=s[r>>2])|0)>>2)+1|0)>>>0<1073741824){if(A=f<<2,f=(a=a-i|0)>>>1|0,t=a>>>0>=2147483644?1073741823:t>>>0<f>>>0?f:t){if(t>>>0>=1073741824)break r;a=mf(t<<2)}else a=0;return s[(f=A+a|0)>>2]=s[e>>2],e=me(a,i,b),s[r+8>>2]=e+(t<<2),s[r+4>>2]=f+4,s[r>>2]=e,void(i&&mr(i))}ha(),n()}Df(),n()}function Ai(r,e){var i=0,f=0,a=0,t=0,b=0,A=0,o=0;if((a=s[r+8>>2])-(i=s[r+4>>2])>>3>>>0>=e>>>0)return e&&(i=Ge(i,0,e<<=3)+e|0),void(s[r+4>>2]=i);r:{if((f=(A=(b=(t=i)-(i=s[r>>2])|0)>>3)+e|0)>>>0<536870912){if(t=(a=a-i|0)>>>2|0,f=a>>>0>=2147483640?536870911:f>>>0<t>>>0?t:f){if(f>>>0>=536870912)break r;o=mf(f<<3)}return a=Ge((A<<3)+o|0,0,e<<=3),t=f<<3,f=me(o,i,b),s[r+8>>2]=t+f,s[r+4>>2]=e+a,s[r>>2]=f,void(i&&mr(i))}ha(),n()}Df(),n()}function ni(r,e){var i=0,f=0,a=0,t=0,b=0,A=0;if((a=s[r+8>>2])-(i=s[r+4>>2])>>1>>>0>=e>>>0)return e&&(i=Ge(i,0,e<<=1)+e|0),void(s[r+4>>2]=i);r:{if((0|(f=(t=(b=(t=i)-(i=s[r>>2])|0)>>1)+e|0))>=0){if(f=(a=a-i|0)>>>0>=2147483646?2147483647:f>>>0<a>>>0?a:f){if((0|f)<0)break r;A=mf(f<<1)}return a=Ge((t<<1)+A|0,0,e<<=1),t=f<<1,f=me(A,i,b),s[r+8>>2]=t+f,s[r+4>>2]=e+a,s[r>>2]=f,void(i&&mr(i))}ha(),n()}Df(),n()}function oi(r,e,i){var f,a=0,t=0;Q=f=Q-16|0;r:{if(i>>>0<11)a=r,c[r+11|0]=128&_[r+11|0]|i,c[r+11|0]=127&_[r+11|0];else{if(i>>>0>2147483631)break r;Hf(f+8|0,(a=i>>>0>=11?11==(0|(a=(t=i+16&-16)-1|0))?t:a:10)+1|0),a=s[f+8>>2],s[r>>2]=a,s[r+8>>2]=-2147483648&s[r+8>>2]|2147483647&s[f+12>>2],s[r+8>>2]=-2147483648|s[r+8>>2],s[r+4>>2]=i}return fi(a,e,i+1|0),void(Q=f+16|0)}Ra(),n()}function ki(r,e){var i=0,f=0,a=0;f=(i=s[r+4>>2])+e|0,s[r+4>>2]=f,(f-1^i-1)>>>0<32&&i||(s[s[r>>2]+((f>>>0>=33?f-1>>>5:0)<<2)>>2]=0),e&&(r=s[r>>2]+(i>>>3&536870908)|0,(i&=31)&&(a=e>>>0>(f=32-i|0)>>>0?f:e,s[r>>2]=s[r>>2]&~(-1<<i&-1>>>f-a),e=e-a|0,r=r+4|0),i=e>>>5|0,e>>>0>=32&&Ge(r,0,i<<2),(-32&e)!=(0|e)&&(s[(r=(i<<2)+r|0)>>2]=s[r>>2]&~(-1>>>32-(31&e))))}function ci(r,e,i){var f=0,a=0,t=0;r:{if(!(f=s[i+16>>2])){if(ff(i))break r;f=s[i+16>>2]}if(f-(t=s[i+20>>2])>>>0<e>>>0)return 0|Ya[s[i+36>>2]](i,r,e);e:if(s[i+80>>2]<0)f=0;else{for(a=e;;){if(!(f=a)){f=0;break e}if(10==_[(a=f-1|0)+r|0])break}if((a=0|Ya[s[i+36>>2]](i,r,f))>>>0<f>>>0)break r;r=r+f|0,e=e-f|0,t=s[i+20>>2]}Cr(t,r,e),s[i+20>>2]=s[i+20>>2]+e,a=e+f|0}return a}function ui(r){var e=0,i=0,f=0,a=0;_[r+76|0]&&(c[r+76|0]=0,a=s[r+60>>2],i=(f=(e=(i=s[r+72>>2]+7|0)>>>0<7?1:e)<<29|i>>>3)+s[r+56>>2]|0,e=(e>>>3|0)+a|0,s[r+56>>2]=i,s[r+60>>2]=i>>>0<f>>>0?e+1|0:e),l[r+38>>1]<=513&&(c[r+132|0]=0,a=s[r+116>>2],e=0,i=(f=(e=(i=s[r+128>>2]+7|0)>>>0<7?1:e)<<29|i>>>3)+s[r+112>>2]|0,e=(e>>>3|0)+a|0,s[r+112>>2]=i,s[r+116>>2]=i>>>0<f>>>0?e+1|0:e)}function si(r,e,i){var f=0,a=0,t=0,b=0;r:if(!(r>>>0>10||(0|(f=s[i+20>>2]))>=(0|(t=s[i+12>>2]))&(a=s[i+16>>2])>>>0>=p[i+8>>2]|(0|f)>(0|t))){if(t=c[a+s[i>>2]|0],f=(a=a+1|0)?f:f+1|0,s[i+16>>2]=a,s[i+20>>2]=f,(0|(f=t))<0){if(!si(r+1|0,e,i))break r;f=127&f|(r=s[e>>2])<<7,r=s[e+4>>2]<<7|r>>>25}else f&=255,r=0;s[e>>2]=f,s[e+4>>2]=r,b=1}return b}function _i(r,e,i){var f=0,a=0,t=0,b=0;r:if(!(r>>>0>10||(0|(f=s[i+20>>2]))>=(0|(t=s[i+12>>2]))&(a=s[i+16>>2])>>>0>=p[i+8>>2]|(0|f)>(0|t))){if(t=c[a+s[i>>2]|0],f=(a=a+1|0)?f:f+1|0,s[i+16>>2]=a,s[i+20>>2]=f,(0|(f=t))<0){if(!_i(r+1|0,e,i))break r;f=127&f|(r=s[e>>2])<<7,r=s[e+4>>2]<<7|r>>>25}else f&=255,r=0;s[e>>2]=f,s[e+4>>2]=r,b=1}return b}function li(r,e){var i=0,f=0,a=0,t=0;s[r+144>>2]=e,i=s[32+(0|Ya[s[s[e>>2]+32>>2]](e))>>2],i=s[i>>2]+s[i+16>>2]|0,f=s[32+(0|Ya[s[s[e>>2]+32>>2]](e))>>2],f=s[f+8>>2]-s[f+16>>2]|0,a=r,t=l[s[32+(0|Ya[s[s[e>>2]+32>>2]](e))>>2]+38>>1],u[a+38>>1]=t,s[r>>2]=i,s[r+16>>2]=0,s[r+20>>2]=0,s[r+8>>2]=f,s[r+12>>2]=0,a=r,t=0|Ya[s[s[e>>2]+36>>2]](e),s[a+148>>2]=t}function pi(r,e,i,f){c[r+53|0]=1;r:if(s[r+4>>2]==(0|i)){c[r+52|0]=1;e:{if(!(i=s[r+16>>2])){if(s[r+36>>2]=1,s[r+24>>2]=f,s[r+16>>2]=e,1!=(0|f))break r;if(1==s[r+48>>2])break e;break r}if((0|e)==(0|i)){if(2==(0|(i=s[r+24>>2]))&&(s[r+24>>2]=f,i=f),1!=s[r+48>>2])break r;if(1==(0|i))break e;break r}s[r+36>>2]=s[r+36>>2]+1}c[r+54|0]=1}}function yi(r,e,i){e|=0,i|=0;var f,a=0;Q=f=Q-16|0,s[(r|=0)+4>>2]=e,e=s[e+64>>2],a=s[e>>2],e=s[e+4>>2],c[f+15|0]=0,Te(r+24|0,(e-a>>2>>>0)/3|0,f+15|0),e=s[r+4>>2],a=s[e+56>>2],e=s[e+52>>2],c[f+14|0]=0,Te(r+36|0,a-e>>2,f+14|0),e=s[i+12>>2],s[r+16>>2]=s[i+8>>2],s[r+20>>2]=e,e=s[i+4>>2],s[r+8>>2]=s[i>>2],s[r+12>>2]=e,Q=f+16|0}function di(r,e,i){var f,a,t=0,b=0,A=0,n=0,o=0,k=0;if(e){for(f=0-_[r+12|0]&255,b=s[r+4>>2],t=s[r+8>>2],a=s[r>>2];o=A<<1,(0|b)<=0|t>>>0>4095||(b=b-1|0,s[r+4>>2]=b,t=_[b+a|0]|t<<8),A=(n=255&t)>>>0<f>>>0,k=n,n=m(t>>>8|0,f),t=A?k+n|0:t-(f+n|0)|0,s[r+8>>2]=t,A|=o,e=e-1|0;);s[i>>2]=A}else s[i>>2]=0}function mi(r,e){var i=0,f=0;r:{if((0|(i=s[r+4>>2]))==(f=s[r+8>>2])<<5){if((i+1|0)<0)break r;Wr(r,i=i>>>0<=1073741822?(i=32+(-32&i)|0)>>>0<(f<<=6)>>>0?f:i:2147483647),i=s[r+4>>2]}return s[r+4>>2]=i+1,f=1<<i,r=s[r>>2]+(i>>>3&536870908)|0,_[0|e]?void(s[r>>2]=f|s[r>>2]):void(s[r>>2]=s[r>>2]&~f)}ha(),n()}function vi(r){var e;return s[r>>2]=0,s[r+4>>2]=0,s[r+56>>2]=0,s[r+48>>2]=0,s[r+52>>2]=0,s[r+40>>2]=0,s[r+44>>2]=0,s[r+32>>2]=0,s[r+36>>2]=0,s[r+24>>2]=0,s[r+28>>2]=0,s[r+16>>2]=0,s[r+20>>2]=0,s[r+8>>2]=0,s[r+12>>2]=0,s[(e=r- -64|0)>>2]=0,s[e+4>>2]=0,s[r+72>>2]=0,s[r+76>>2]=0,s[r+80>>2]=0,s[r+84>>2]=0,s[r+60>>2]=r,r}function hi(r,e,i){var f=0,a=0,t=0,b=0;r:if(!(r>>>0>5||(0|(f=s[i+20>>2]))>=(0|(a=s[i+12>>2]))&(t=s[i+16>>2])>>>0>=p[i+8>>2]|(0|f)>(0|a))){if(a=_[s[i>>2]+t|0],f=(t=t+1|0)?f:f+1|0,s[i+16>>2]=t,s[i+20>>2]=f,(0|(f=a<<24>>24))<0){if(!hi(r+1|0,e,i))break r;a=127&f|s[e>>2]<<7}s[e>>2]=a,b=1}return b}function Ri(r,e,i){var f=0,a=0,t=0,b=0;r:if(!(r>>>0>5||(0|(f=s[i+20>>2]))>=(0|(a=s[i+12>>2]))&(t=s[i+16>>2])>>>0>=p[i+8>>2]|(0|f)>(0|a))){if(a=_[s[i>>2]+t|0],f=(t=t+1|0)?f:f+1|0,s[i+16>>2]=t,s[i+20>>2]=f,(0|(f=a<<24>>24))<0){if(!Ri(r+1|0,e,i))break r;a=127&f|s[e>>2]<<7}s[e>>2]=a,b=1}return b}function Ni(r,e,i){var f=0,a=0,t=0,b=0;r:if(!(r>>>0>5||(0|(f=s[i+20>>2]))>=(0|(a=s[i+12>>2]))&(t=s[i+16>>2])>>>0>=p[i+8>>2]|(0|f)>(0|a))){if(a=_[s[i>>2]+t|0],f=(t=t+1|0)?f:f+1|0,s[i+16>>2]=t,s[i+20>>2]=f,(0|(f=a<<24>>24))<0){if(!Ni(r+1|0,e,i))break r;a=127&f|s[e>>2]<<7}s[e>>2]=a,b=1}return b}function Zi(r,e,i){var f=0,a=0,t=0,b=0;r:if(!(r>>>0>5||(0|(f=s[i+20>>2]))>=(0|(a=s[i+12>>2]))&(t=s[i+16>>2])>>>0>=p[i+8>>2]|(0|f)>(0|a))){if(a=_[s[i>>2]+t|0],f=(t=t+1|0)?f:f+1|0,s[i+16>>2]=t,s[i+20>>2]=f,(0|(f=a<<24>>24))<0){if(!Zi(r+1|0,e,i))break r;a=127&f|s[e>>2]<<7}s[e>>2]=a,b=1}return b}function Gi(r,e,i){var f=0,a=0,t=0,b=0;r:if(!(r>>>0>5||(0|(f=s[i+20>>2]))>=(0|(a=s[i+12>>2]))&(t=s[i+16>>2])>>>0>=p[i+8>>2]|(0|f)>(0|a))){if(a=_[s[i>>2]+t|0],f=(t=t+1|0)?f:f+1|0,s[i+16>>2]=t,s[i+20>>2]=f,(0|(f=a<<24>>24))<0){if(!Gi(r+1|0,e,i))break r;a=127&f|s[e>>2]<<7}s[e>>2]=a,b=1}return b}function Ui(r,e,i){var f=0,a=0,t=0,b=0;r:if(!(r>>>0>5||(0|(f=s[i+20>>2]))>=(0|(a=s[i+12>>2]))&(t=s[i+16>>2])>>>0>=p[i+8>>2]|(0|f)>(0|a))){if(a=_[s[i>>2]+t|0],f=(t=t+1|0)?f:f+1|0,s[i+16>>2]=t,s[i+20>>2]=f,(0|(f=a<<24>>24))<0){if(!Ui(r+1|0,e,i))break r;a=127&f|s[e>>2]<<7}s[e>>2]=a,b=1}return b}function Wi(r,e,i){var f=0,a=0,t=0,b=0;r:if(!(r>>>0>5||(0|(f=s[i+20>>2]))>=(0|(a=s[i+12>>2]))&(t=s[i+16>>2])>>>0>=p[i+8>>2]|(0|f)>(0|a))){if(a=_[s[i>>2]+t|0],f=(t=t+1|0)?f:f+1|0,s[i+16>>2]=t,s[i+20>>2]=f,(0|(f=a<<24>>24))<0){if(!Wi(r+1|0,e,i))break r;a=127&f|s[e>>2]<<7}s[e>>2]=a,b=1}return b}function Vi(r,e,i){var f=0,a=0,t=0,b=0;r:if(!(r>>>0>5||(0|(f=s[i+20>>2]))>=(0|(a=s[i+12>>2]))&(t=s[i+16>>2])>>>0>=p[i+8>>2]|(0|f)>(0|a))){if(a=_[s[i>>2]+t|0],f=(t=t+1|0)?f:f+1|0,s[i+16>>2]=t,s[i+20>>2]=f,(0|(f=a<<24>>24))<0){if(!Vi(r+1|0,e,i))break r;a=127&f|s[e>>2]<<7}s[e>>2]=a,b=1}return b}function Ti(r,e,i){var f=0,a=0;r:{e:{if(i>>>0>=4){if(3&(r|e))break e;for(;;){if(s[r>>2]!=s[e>>2])break e;if(e=e+4|0,r=r+4|0,!((i=i-4|0)>>>0>3))break}}if(!i)break r}for(;;){if((0|(f=_[0|r]))==(0|(a=_[0|e]))){if(e=e+1|0,r=r+1|0,i=i-1|0)continue;break r}break}return f-a|0}return 0}function Di(r){var e,i=0,f=0,a=0;if(e=s[r>>2]){if(a=e,(0|e)!=(0|(f=s[r+4>>2]))){for(;(i=s[(a=f-144|0)+132>>2])&&(s[f-8>>2]=i,mr(i)),(i=s[f-28>>2])&&(s[f-24>>2]=i,mr(i)),(i=s[f-40>>2])&&(s[f-36>>2]=i,mr(i)),wi(f-140|0),(0|e)!=(0|(f=a)););a=s[r>>2]}s[r+4>>2]=e,mr(a)}}function Fi(r){var e=0,i=0,f=0;if(r){if(f=s[r+24>>2]){if((0|(e=f))!=(0|(i=s[r+28>>2]))){for(;e=s[(i=i-4|0)>>2],s[i>>2]=0,e&&(bf(e+12|0,s[e+16>>2]),df(e,s[e+4>>2]),mr(e)),(0|i)!=(0|f););e=s[r+24>>2]}s[r+28>>2]=f,mr(e)}bf(r+12|0,s[r+16>>2]),df(r,s[r+4>>2]),mr(r)}}function Bi(r,e,i){r|=0,e|=0;var f,a,t,b,A=0,n=0;return(b=s[(i|=0)+8>>2])>>>0>(a=s[i+16>>2])>>>0&(0|(A=t=s[i+12>>2]))>=(0|(f=s[i+20>>2]))|(0|f)<(0|A)&&(e=_[s[i>>2]+a|0],A=(n=a+1|0)?f:f+1|0,s[i+16>>2]=n,s[i+20>>2]=A,s[r+4>>2]=e),a>>>0<b>>>0&(0|f)<=(0|t)|(0|f)<(0|t)}function Ei(r){var e,i=0,f=0;if(s[(r|=0)>>2]=13280,(i=s[r+20>>2])&&(s[r+24>>2]=i,mr(i)),e=s[r+8>>2]){if((0|(f=s[r+12>>2]))!=(0|(i=e))){for(;i=s[(f=f-4|0)>>2],s[f>>2]=0,i&&Ya[s[s[i>>2]+4>>2]](i),(0|f)!=(0|e););i=s[r+8>>2]}s[r+12>>2]=e,mr(i)}mr(r)}function Yi(r,e,i){var f=0;if(!i)return s[r+4>>2]==s[e+4>>2];if((0|r)==(0|e))return 1;f=s[r+4>>2],r=_[0|f],i=s[e+4>>2];r:if(!(!r|(0|(e=_[0|i]))!=(0|r)))for(;;){if(e=_[i+1|0],!(r=_[f+1|0]))break r;if(i=i+1|0,f=f+1|0,(0|r)!=(0|e))break}return(0|r)==(0|e)}function Qi(r,e){var i=0,f=0,a=0;s[r+8>>2]=0,s[r>>2]=0,s[r+4>>2]=0;r:{if((0|(i=s[e+4>>2]))!=(0|(f=s[e>>2]))){if((0|(i=i-f|0))<0)break r;f=(f=i)+(i=Ge(a=mf(i),0,i))|0,s[r+8>>2]=f,s[r+4>>2]=f,s[r>>2]=i,i=s[e>>2],r=s[e+4>>2]}else r=i;return void Cr(a,i,r-i|0)}ha(),n()}function ji(r){var e,i=0,f=0,a=0;if((0|(f=s[r+4>>2]))!=(0|(e=s[r>>2])))for(;(i=s[(a=f-144|0)+132>>2])&&(s[f-8>>2]=i,mr(i)),(i=s[f-28>>2])&&(s[f-24>>2]=i,mr(i)),(i=s[f-40>>2])&&(s[f-36>>2]=i,mr(i)),wi(f-140|0),(0|e)!=(0|(f=a)););s[r+4>>2]=e}function Ii(r){var e=0;r&&((e=s[r+76>>2])&&(s[r+80>>2]=e,mr(e)),(e=s[r- -64>>2])&&(s[r+68>>2]=e,mr(e)),(e=s[r+48>>2])&&(s[r+52>>2]=e,mr(e)),(e=s[r+24>>2])&&(s[r+28>>2]=e,mr(e)),(e=s[r+12>>2])&&(s[r+16>>2]=e,mr(e)),(e=s[r>>2])&&(s[r+4>>2]=e,mr(e)),mr(r))}function Ji(r,e,i){var f,a,t=0,b=0;for(Q=f=(Q=a=Q-16|0)-16|0,e=e-r>>2;e;)s[f+12>>2]=r,t=e>>>1|0,s[f+12>>2]=s[f+12>>2]+(t<<2),b=~t+e|0,e=t,e=(t=p[s[f+12>>2]>>2]<p[i>>2])?b:e,r=t?s[f+12>>2]+4|0:r;return Q=f+16|0,Q=a+16|0,r}function wi(r){var e=0;(e=s[r+84>>2])&&(s[r+88>>2]=e,mr(e)),(e=s[r+72>>2])&&(s[r+76>>2]=e,mr(e)),(e=s[r+52>>2])&&(s[r+56>>2]=e,mr(e)),(e=s[r+40>>2])&&(s[r+44>>2]=e,mr(e)),(e=s[r+28>>2])&&(s[r+32>>2]=e,mr(e)),(e=s[r+12>>2])&&mr(e),(r=s[r>>2])&&mr(r)}function Mi(r,e){var i,f;return f=mf(40),s[f>>2]=-1,s[(i=f+8|0)+16>>2]=0,s[i+20>>2]=0,s[i+8>>2]=0,s[i>>2]=0,s[i+4>>2]=0,s[i+24>>2]=0,s[i+28>>2]=0,Ya[s[s[r>>2]+16>>2]](r,f),r=s[e+88>>2],s[e+88>>2]=f,r&&((e=s[r+8>>2])&&(s[r+12>>2]=e,mr(e)),mr(r)),1}function Oi(r){var e=0,i=0,f=0;r:{if(3&(e=r))for(;;){if(!_[0|e])break r;if(!(3&(e=e+1|0)))break}for(;i=e,e=e+4|0,!(~(f=s[i>>2])&f-16843009&-2139062144););for(;i=(e=i)+1|0,_[0|e];);}return e-r|0}function Xi(r){var e,i,f=0,a=0,t=0;return t=_[r+12|0],(a=s[r+8>>2])>>>0>4095||(0|(f=s[r+4>>2]))<=0||(f=f-1|0,s[r+4>>2]=f,a=_[f+s[r>>2]|0]|a<<8),f=m(t=0-t&255,a>>>8|0),i=(e=255&a)>>>0<t>>>0,s[r+8>>2]=i?f+e|0:a-(f+t|0)|0,i}function gi(r,e){return s[r+4>>2]=0,s[r+8>>2]=0,s[r>>2]=1984,s[r+12>>2]=0,s[r+16>>2]=0,s[r+20>>2]=0,s[r+24>>2]=0,s[r+28>>2]=0,s[r+32>>2]=0,s[r+36>>2]=0,s[r+40>>2]=0,s[r>>2]=2328,s[r+60>>2]=e,s[r+44>>2]=0,s[r+48>>2]=0,s[r+52>>2]=0,s[r+56>>2]=0,r}function zi(r,e){var i,f=0,a=0;if((i=Oi(e))>>>0<2147483632){r:{if(i>>>0>=11)a=mf(f=1+(15|i)|0),s[r+8>>2]=-2147483648|f,s[r>>2]=a,s[r+4>>2]=i,f=i+a|0;else if(c[r+11|0]=i,f=r+i|0,a=r,!i)break r;me(a,e,i)}return c[0|f]=0,r}Ra(),n()}function Hi(r,e){var i=0,f=0,a=0;r:{if(i=s[r>>2],!(s[r+8>>2]-i>>2>>>0>=e>>>0)){if(e>>>0>=1073741824)break r;f=s[r+4>>2]-i|0,e=me(mf(a=e<<2),i,f),s[r+8>>2]=e+a,s[r+4>>2]=e+f,s[r>>2]=e,i&&mr(i)}return}ha(),n()}function Ci(r){var e=0,i=0;(r|=0)&&(e=s[r+88>>2],s[r+88>>2]=0,e&&((i=s[e+8>>2])&&(s[e+12>>2]=i,mr(i)),mr(e)),(e=s[r+68>>2])&&(s[r+72>>2]=e,mr(e)),e=s[r+64>>2],s[r+64>>2]=0,e&&((i=s[e>>2])&&(s[e+4>>2]=i,mr(i)),mr(e)),mr(r))}function Pi(r){var e=0,i=0,f=0;if(c[s[r>>2]]-48>>>0>=10)return 0;for(;f=s[r>>2],i=-1,e>>>0<=214748364&&(i=(0|(i=c[0|f]-48|0))>(2147483647^(e=m(e,10)))?-1:i+e|0),s[r>>2]=f+1,e=i,c[f+1|0]-48>>>0<10;);return e}function Si(r,e,i,f){var a,t=0,b=0;return a=(b=e^f)>>31,b>>=31,r=re((r^=t=e>>31)-t|0,t=(e^t)-((r>>>0<t>>>0)+t|0)|0,(e=i^(r=f>>31))-r|0,(r^f)-((r>>>0>e>>>0)+r|0)|0)^b,j=(a^j)-((r>>>0<b>>>0)+a|0)|0,e=r-b|0}function xi(r,e,i){var f,a=0;Q=f=Q-16|0,(a=2147483647&s[r+8>>2])>>>0>i>>>0?(a=s[r>>2],s[r+4>>2]=i,fi(a,e,i),c[f+15|0]=0,c[i+a|0]=_[f+15|0]):Ee(r,a-1|0,1+(i-a|0)|0,r=s[r+4>>2],r,i,e),Q=f+16|0}function Li(r,e,i){var f;Q=f=Q-16|0,i>>>0<=10?(c[r+11|0]=128&_[r+11|0]|i,c[r+11|0]=127&_[r+11|0],fi(r,e,i),c[f+15|0]=0,c[r+i|0]=_[f+15|0]):Ee(r,10,i-10|0,r=127&_[r+11|0],r,i,e),Q=f+16|0}function Ki(r,e,i,f){var a,t,b,A,n=0,o=0;return A=m(n=i>>>16|0,o=r>>>16|0),n=(65535&(o=((b=m(a=65535&i,t=65535&r))>>>16|0)+m(o,a)|0))+m(n,t)|0,j=(m(e,i)+A|0)+m(r,f)+(o>>>16)+(n>>>16)|0,65535&b|n<<16}function qi(r,e,i){var f;if(!(f=s[r+16>>2]))return s[r+36>>2]=1,s[r+24>>2]=i,void(s[r+16>>2]=e);r:{if((0|e)==(0|f)){if(2!=s[r+24>>2])break r;return void(s[r+24>>2]=i)}c[r+54|0]=1,s[r+24>>2]=2,s[r+36>>2]=s[r+36>>2]+1}}function $i(r,e,i,f,a){var t;if(Q=t=Q-256|0,!(73728&a|(0|i)<=(0|f))){if(Ge(t,255&e,(i=(f=i-f|0)>>>0<256)?f:256),!i)for(;ra(r,t,256),(f=f-256|0)>>>0>255;);ra(r,t,f)}Q=t+256|0}function rf(r,e){var i,f=0;if((0|(i=s[r+8>>2]))!=(0|(r=s[r+12>>2])))for(f=(r=r-i>>2)>>>0<=1?1:r,r=0;;){if(s[s[(r<<2)+i>>2]+60>>2]==(0|e))return r;if((0|f)==(0|(r=r+1|0)))break}return-1}function ef(r,e,i){var f=0,a=0;return(0|(f=r+4|0))!=(0|(r=we(r,e)))&&(0|(e=s[r+32>>2]))!=(0|(f=s[r+28>>2]))&&(Lr(i,e-f|0),Cr(i=yf(i),e=s[r+28>>2],s[r+32>>2]-e|0),a=1),a}function ff(r){var e=0;return e=s[r+72>>2],s[r+72>>2]=e-1|e,8&(e=s[r>>2])?(s[r>>2]=32|e,-1):(s[r+4>>2]=0,s[r+8>>2]=0,e=s[r+44>>2],s[r+28>>2]=e,s[r+20>>2]=e,s[r+16>>2]=e+s[r+48>>2],0)}function af(r){return s[r+8>>2]=0,s[r+12>>2]=0,s[r>>2]=0,s[r+40>>2]=0,s[r+44>>2]=0,s[r+28>>2]=9,c[r+24|0]=1,s[r+56>>2]=-1,s[r+60>>2]=0,s[r+16>>2]=0,s[r+20>>2]=0,s[r+48>>2]=0,s[r+52>>2]=0,r}function tf(r){var e,i;return(r=(e=s[3958])+(i=r+7&-8)|0)>>>0<=e>>>0&&i||r>>>0>Qa()<<16>>>0&&!(0|B(0|r))?(s[3992]=48,-1):(s[3958]=r,e)}function bf(r,e){e&&(bf(r,s[e>>2]),bf(r,s[e+4>>2]),r=s[e+28>>2],s[e+28>>2]=0,r&&(bf(r+12|0,s[r+16>>2]),df(r,s[r+4>>2]),mr(r)),c[e+27|0]<0&&mr(s[e+16>>2]),mr(e))}function Af(r){return s[r+40>>2]=0,s[r+4>>2]=0,s[r+8>>2]=0,s[r>>2]=13280,s[r+12>>2]=0,s[r+16>>2]=0,s[r+20>>2]=0,s[r+24>>2]=0,s[r+28>>2]=0,s[r+32>>2]=0,u[r+36>>1]=0,r}function nf(r,e){var i,f,a,t;return s[r>>2]=15260,s[r>>2]=15372,f=mf((i=Oi(e))+13|0),s[f+8>>2]=0,s[f+4>>2]=i,s[f>>2]=i,a=r,t=Cr(f+12|0,e,i+1|0),s[a+4>>2]=t,r}function of(r){var e=0;return!s[(r|=0)- -64>>2]|!s[r+68>>2]|!s[r+44>>2]|!s[r+48>>2]||!s[r+52>>2]|!s[r+56>>2]||(e=-1!=s[r+92>>2]),0|e}function kf(r){var e=0;return s[(r|=0)>>2]=2448,e=s[r+20>>2],s[r+20>>2]=0,e&&Ya[s[s[e>>2]+4>>2]](e),s[r>>2]=2232,e=s[r+16>>2],s[r+16>>2]=0,e&&Ci(e),0|r}function cf(r){var e=0;return!s[(r|=0)+48>>2]|!s[r+52>>2]|!s[r+28>>2]|!s[r+32>>2]||!s[r+36>>2]|!s[r+40>>2]||(e=-1!=s[r+76>>2]),0|e}function uf(r){var e=0;return s[(r|=0)>>2]=11872,(e=s[r+48>>2])&&(s[r+52>>2]=e,mr(e)),s[r>>2]=12124,(e=s[r+36>>2])&&mr(e),(e=s[r+24>>2])&&mr(e),0|r}function sf(r){var e=0;s[(r|=0)>>2]=2448,e=s[r+20>>2],s[r+20>>2]=0,e&&Ya[s[s[e>>2]+4>>2]](e),s[r>>2]=2232,e=s[r+16>>2],s[r+16>>2]=0,e&&Ci(e),mr(r)}function _f(r){return s[r+8>>2]=0,s[r+12>>2]=0,s[r>>2]=0,s[r+16>>2]=0,s[r+20>>2]=0,s[r+32>>2]=0,s[r+24>>2]=0,s[r+28>>2]=0,u[r+38>>1]=0,c[r+36|0]=0,r}function lf(r,e){var i=0;return i=-1,-1==(0|e)|(0|e)>4||(e=m(e,12)+r|0,r=s[e+20>>2],(s[e+24>>2]-r|0)<=0||(i=s[r>>2])),i}function pf(r,e,i,f,a,t,b){s[r>>2]=0,s[r+56>>2]=e,s[r+48>>2]=0,s[r+52>>2]=0,s[r+40>>2]=t,s[r+44>>2]=b,c[r+32|0]=a,s[r+28>>2]=f,c[r+24|0]=i}function yf(r){return(_[r+11|0]>>>7|0?s[r+4>>2]:127&_[r+11|0])||(Of(1232),n()),_[r+11|0]>>>7|0&&(r=s[r>>2]),r}function df(r,e){e&&(df(r,s[e>>2]),df(r,s[e+4>>2]),(r=s[e+28>>2])&&(s[e+32>>2]=r,mr(r)),c[e+27|0]<0&&mr(s[e+16>>2]),mr(e))}function mf(r){var e=0;r=r||1;r:{for(;;){if(e=w(r))break r;if(!(e=s[4422]))break;Ya[0|e]()}V(),n()}return e}function vf(r,e){e&&(vf(r,s[e>>2]),vf(r,s[e+4>>2]),c[e+39|0]<0&&mr(s[e+28>>2]),c[e+27|0]<0&&mr(s[e+16>>2]),mr(e))}function hf(r){var e,i;return s[(r|=0)>>2]=15372,e=s[r+4>>2]-12|0,i=s[e+8>>2]-1|0,s[e+8>>2]=i,(0|i)<0&&mr(e),0|r}function Rf(r,e,i){return e|=0,i|=0,s[(r|=0)+4>>2]=e,e=s[s[s[e+4>>2]+8>>2]+(i<<2)>>2],s[r+12>>2]=i,s[r+8>>2]=e,1}function Nf(r){var e=0;return!s[(r|=0)+60>>2]|!s[r+44>>2]|!s[r+48>>2]|!s[r+52>>2]||(e=0!=s[r+56>>2]),0|e}function Zf(r,e){_[r+11|0]>>>7|0?s[r+4>>2]=e:(c[r+11|0]=128&_[r+11|0]|e,c[r+11|0]=127&_[r+11|0])}function Gf(r){var e=0;return!s[(r|=0)+52>>2]|!s[r+44>>2]|!s[r+48>>2]||(e=0!=s[r+56>>2]),0|e}function Uf(r,e){r|=0;var i=0;return s[(e|=0)+56>>2]|!e|3!=_[e+24|0]||(s[r+60>>2]=e,i=1),0|i}function Wf(r,e){r|=0;var i=0;return s[(e|=0)+56>>2]|3!=_[e+24|0]||(s[r- -64>>2]=e,i=1),0|i}function Vf(r){var e=0;(e=s[r+16>>2])&&(s[r+20>>2]=e,mr(e)),(e=s[r>>2])&&(s[r+4>>2]=e,mr(e))}function Tf(r,e){r|=0;var i=0;return s[(e|=0)+56>>2]|3!=_[e+24|0]||(s[r+48>>2]=e,i=1),0|i}function Df(){var r;r=oa(4),s[r>>2]=15260,s[r>>2]=15220,s[r>>2]=15240,T(0|r,15352,14),n()}function Ff(r){var e;s[(r|=0)>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),mr(r)}function Bf(r){var e;s[r+16>>2]=0,e=s[r>>2],s[r+4>>2]=e,s[r+12>>2]=e,e&&mr(e)}function Ef(r,e){e&&(Ef(r,s[e>>2]),Ef(r,s[e+4>>2]),vf(e+20|0,s[e+24>>2]),mr(e))}function Yf(r){for(var e=0;r;)r&=r-1,e=e+1|0;return e}function Qf(){var r;return r=mf(12),s[r>>2]=0,s[r+4>>2]=0,s[r+8>>2]=0,0|r}function jf(r){var e=0;(r|=0)&&((e=s[r>>2])&&(s[r+4>>2]=e,mr(e)),mr(r))}function If(r){var e;return(-1>>>(e=31&r)&-2)<<e|(-1<<(r=0-r&31)&-2)>>>r}function Jf(r,e,i){r=(s[i+76>>2],ci(r,e,i))}function wf(r,e){return r|=0,(e|=0)>>>0<=1&&(s[r+28>>2]=e),e>>>0<2|0}function Mf(r,e){return e|=0,0|Ya[s[s[(r|=0)>>2]+12>>2]](r,e)}function Of(r){r=nf(oa(8),r),s[r>>2]=15472,T(0|r,15504,1),n()}function Xf(r){r=nf(oa(8),r),s[r>>2]=15420,T(0|r,15452,1),n()}function gf(r){return r=Af(r),s[r+44>>2]=0,s[r>>2]=11180,r}function zf(r,e){return e|=0,s[s[(r|=0)>>2]+(e<<2)>>2]}function Hf(r,e){var i;i=mf(e),s[r+4>>2]=e,s[r>>2]=i}function Cf(r){return s[r>>2]=13724,Ge(r+4|0,0,80),r}function Pf(r){return s[(r|=0)+12>>2]-s[r+8>>2]>>2}function Sf(r){return r?31-R(r-1^r)|0:32}function xf(r){(r|=0)&&Ya[s[s[r>>2]+4>>2]](r)}function Lf(r,e){return e|=0,s[(r|=0)+4>>2]=e,1}function Kf(r){return s[(r|=0)+4>>2]-s[r>>2]>>1}function qf(r){return s[(r|=0)+4>>2]-s[r>>2]>>2}function $f(r){return s[(r|=0)+4>>2]-s[r>>2]|0}function ra(r,e,i){32&_[0|r]||ci(e,i,r)}function ea(r){return s[(r|=0)+28>>2]}function ia(r){return s[(r|=0)+80>>2]}function fa(r,e){return 0,0,-1}function aa(r){return s[(r|=0)+4>>2]}function ta(r,e){return 0,0,6}function ba(r){return s[(r|=0)+8>>2]}function Aa(r,e){return 0,0,1}function na(r,e){return 0,0,0}function oa(r){return w(r+80|0)+80|0}function ka(r){return s[(r|=0)>>2]}function ca(r){(r|=0)&&mr(r)}function ua(r){hf(r|=0),mr(r)}function sa(r){return 0|(r|=0)}function _a(r){return 0,3}function la(r){return 0,0}function pa(r){return 0,5}function ya(r){return 0,2}function da(r){return 0,6}function ma(r){return 0,1}function va(r){return 0,4}function ha(){Xf(1164),n()}function Ra(){Xf(1232),n()}function Na(r){mr(r|=0)}function Za(){Of(1164),n()}function Ga(r){n()}function Ua(){return 3}function Wa(){return 4}function Va(){return-1}function Ta(){return 1}function Da(){return 0}function Fa(){return 2}function Ba(r){0}a(e=_,1028,"YAQAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQAAAE41ZHJhY28yOEF0dHJpYnV0ZU9jdGFoZWRyb25UcmFuc2Zvcm1FAAAYOwAAOAQAALAHAAAtKyAgIDBYMHgAX19uZXh0X3ByaW1lIG92ZXJmbG93AHZlY3RvcgBzdGQ6OmV4Y2VwdGlvbgBza2lwX2F0dHJpYnV0ZV90cmFuc2Zvcm0AYmFkX2FycmF5X25ld19sZW5ndGgAYmFzaWNfc3RyaW5nAHN0ZDo6YmFkX2FsbG9jAERSQUNPAFVzaW5nIGluY29tcGF0aWJsZSBkZWNvZGVyIGZvciB0aGUgaW5wdXQgZ2VvbWV0cnkuAEZhaWxlZCB0byBkZWNvZGUgcG9pbnQgYXR0cmlidXRlcy4ARmFpbGVkIHRvIGluaXRpYWxpemUgdGhlIGRlY29kZXIuAFVua25vd24gbWlub3IgdmVyc2lvbi4AVW5rbm93biBtYWpvciB2ZXJzaW9uLgBJbnB1dCBpcyBub3QgYSBtZXNoLgBVbnN1cHBvcnRlZCBnZW9tZXRyeSB0eXBlLgBOb3QgYSBEcmFjbyBmaWxlLgBJbnB1dCBpcyBub3QgYSBwb2ludCBjbG91ZC4AVW5zdXBwb3J0ZWQgZW5jb2RpbmcgbWV0aG9kLgBGYWlsZWQgdG8gZGVjb2RlIG1ldGFkYXRhLgBGYWlsZWQgdG8gZGVjb2RlIGdlb21ldHJ5IGRhdGEuAChudWxsKQBQdXJlIHZpcnR1YWwgZnVuY3Rpb24gY2FsbGVkIQBLZFRyZWVBdHRyaWJ1dGVzRGVjb2RlcjogY29tcHJlc3Npb24gbGV2ZWwgJWkgbm90IHN1cHBvcnRlZC4KAEZsb2F0UG9pbnRzVHJlZURlY29kZXI6IGNvbXByZXNzaW9uIGxldmVsICVpIG5vdCBzdXBwb3J0ZWQuCgBWZXJzaW9uIG5vdCBzdXBwb3J0ZWQuIAoATWV0aG9kIG5vdCBzdXBwb3J0ZWQuIAoAAAAAAACEBwAADwAAABAAAAARAAAAEgAAABMAAAAUAAAAFQAAABYAAAAXAAAACwAAABgAAAAZAAAATjVkcmFjbzMwQXR0cmlidXRlUXVhbnRpemF0aW9uVHJhbnNmb3JtRQAAAAAYOwAAWAcAALAHAABONWRyYWNvMThBdHRyaWJ1dGVUcmFuc2Zvcm1FAAAAAPA6AACQBwAAAAAAADwIAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAJAAAACUAAABONWRyYWNvMTdBdHRyaWJ1dGVzRGVjb2RlckUATjVkcmFjbzI2QXR0cmlidXRlc0RlY29kZXJJbnRlcmZhY2VFAAAAAPA6AAAMCAAAGDsAAPAHAAA0CAAAAAAAAKQIAAAmAAAAJwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAoAAAAKQAAACoAAABONWRyYWNvMjNLZFRyZWVBdHRyaWJ1dGVzRGVjb2RlckUAAAAYOwAAgAgAADwIAAAAAAAABAkAACsAAAAsAAAALQAAAC4AAAAvAAAAMAAAADEAAAAyAAAAMwAAAE41ZHJhY28yNlNlcXVlbnRpYWxBdHRyaWJ1dGVEZWNvZGVyRQAAAADwOgAA3AgAAP////8AAAAAfAkAADQAAAA1AAAAHAAAADYAAAA3AAAAHwAAACAAAAAhAAAAOAAAADkAAAA6AAAAOwAAADwAAABONWRyYWNvMzdTZXF1ZW50aWFsQXR0cmlidXRlRGVjb2RlcnNDb250cm9sbGVyRQAYOwAATAkAADwIAAAAAAAA8AkAAD0AAAA+AAAAPwAAAC4AAAAvAAAAMAAAAEAAAAAyAAAAQQAAAEIAAABDAAAARAAAAEUAAABONWRyYWNvMzNTZXF1ZW50aWFsSW50ZWdlckF0dHJpYnV0ZURlY29kZXJFABg7AADECQAABAkAAAAAAAB8DAAARgAAAEcAAABIAAAASQAAAEoAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABRAAAATjVkcmFjbzQwTWVzaFByZWRpY3Rpb25TY2hlbWVQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yM1ByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRUVFAE41ZHJhY28zN1ByZWRpY3Rpb25TY2hlbWVUeXBlZERlY29kZXJJbnRlcmZhY2VJaWlFRQBONWRyYWNvMzJQcmVkaWN0aW9uU2NoZW1lRGVjb2RlckludGVyZmFjZUUATjVkcmFjbzI1UHJlZGljdGlvblNjaGVtZUludGVyZmFjZUUA8DoAACAMAAAYOwAA9QsAAEQMAAAYOwAAwQsAAEwMAAAYOwAAbQsAAFgMAAAYOwAA1woAAGQMAAAYOwAANAoAAHAMAAAAAAAAcAwAAEYAAABSAAAAIwAAAEkAAAAjAAAASwAAAEwAAABNAAAATgAAAE8AAABQAAAAIwAAAAAAAABkDAAARgAAAFMAAAAjAAAASQAAACMAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAAAjAAAAAAAAANgNAABGAAAAVAAAAFUAAABJAAAAVgAAAEsAAABMAAAATQAAAE4AAABPAAAAUAAAAFcAAABONWRyYWNvNDVNZXNoUHJlZGljdGlvblNjaGVtZU11bHRpUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAYOwAAMA0AAHAMAAAAAAAA0A4AAFgAAABZAAAAWgAAAEkAAABbAAAASwAAAEwAAABNAAAATgAAAE8AAABcAAAAXQAAAE41ZHJhY281Nk1lc2hQcmVkaWN0aW9uU2NoZW1lQ29uc3RyYWluZWRNdWx0aVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAABg7AAAcDgAAcAwAAAAAAAC0DwAAXgAAAF8AAABgAAAASQAAAGEAAABiAAAAYwAAAGQAAABOAAAATwAAAGUAAABmAAAATjVkcmFjbzM2TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAABg7AAAUDwAAcAwAAAAAAACgEAAAZwAAAGgAAABpAAAASQAAAGoAAABrAAAAbAAAAG0AAABOAAAATwAAAG4AAABvAAAATjVkcmFjbzQ0TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNQb3J0YWJsZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAGDsAAPgPAABwDAAAAAAAAIwRAABwAAAAcQAAAHIAAABJAAAAcwAAAHQAAAB1AAAAdgAAAE4AAABPAAAAdwAAAHgAAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAAAAYOwAA5BAAAHAMAAAAAAAAFBMAAHkAAAB6AAAAewAAAHwAAAB9AAAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAADwOgAAXxIAABg7AAC0EQAADBMAAAAAAAAMEwAAeQAAAH4AAAAjAAAAfAAAACMAAAAAAAAAoBQAAEYAAAB/AAAAgAAAAEkAAACBAAAASwAAAEwAAABNAAAATgAAAE8AAABQAAAAggAAAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAABg7AAAKFAAAZAwAABg7AAB0EwAAlBQAAAAAAACUFAAARgAAAIMAAAAjAAAASQAAACMAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAAAjAAAAAAAAALgVAABGAAAAhAAAAIUAAABJAAAAhgAAAEsAAABMAAAATQAAAE4AAABPAAAAUAAAAIcAAABONWRyYWNvNDVNZXNoUHJlZGljdGlvblNjaGVtZU11bHRpUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAYOwAAHBUAAJQUAAAAAAAApBYAAIgAAACJAAAAigAAAEkAAACLAAAASwAAAEwAAABNAAAATgAAAE8AAACMAAAAjQAAAE41ZHJhY281Nk1lc2hQcmVkaWN0aW9uU2NoZW1lQ29uc3RyYWluZWRNdWx0aVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAABg7AAD8FQAAlBQAAAAAAAB8FwAAjgAAAI8AAACQAAAASQAAAJEAAACSAAAAkwAAAJQAAABOAAAATwAAAJUAAACWAAAATjVkcmFjbzM2TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAABg7AADoFgAAlBQAAAAAAABcGAAAlwAAAJgAAACZAAAASQAAAJoAAACbAAAAnAAAAJ0AAABOAAAATwAAAJ4AAACfAAAATjVkcmFjbzQ0TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNQb3J0YWJsZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAGDsAAMAXAACUFAAAAAAAADgZAACgAAAAoQAAAKIAAABJAAAAowAAAKQAAAClAAAApgAAAE4AAABPAAAApwAAAKgAAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFABg7AACgGAAAlBQAAAAAAACkGgAAqQAAAKoAAACrAAAArAAAAK0AAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUA8DoAAP4ZAAAYOwAAYBkAAJwaAAAAAAAAnBoAAKkAAACuAAAAIwAAAKwAAAAjAAAAAAAAAGAbAABGAAAArwAAALAAAABJAAAAsQAAAEsAAABMAAAATQAAAE4AAABPAAAAUAAAALIAAABONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRUVFAAAAABg7AAAEGwAAZAwAAAAAAADUGwAAswAAALQAAAC1AAAALgAAAC8AAAC2AAAAQAAAADIAAABBAAAAtwAAALgAAAC5AAAAugAAAE41ZHJhY28zMlNlcXVlbnRpYWxOb3JtYWxBdHRyaWJ1dGVEZWNvZGVyRQAAGDsAAKgbAADwCQAAAAAAAOAdAAC7AAAAvAAAAL0AAAC+AAAAvwAAAMAAAADBAAAAwgAAAMMAAADEAAAAxQAAAMYAAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzIzUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQAYOwAAaR0AAFgMAAAYOwAAyBwAAMgdAAAYOwAAGBwAANQdAAAAAAAAfB8AAMcAAADIAAAAyQAAAMoAAADLAAAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAPA6AAC+HgAAGDsAAAgeAAB0HwAAAAAAAAQhAADMAAAAzQAAAM4AAAC+AAAAzwAAANAAAADRAAAA0gAAAMMAAADEAAAA0wAAANQAAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAYOwAAYyAAAMgdAAAYOwAAwB8AAPggAAAAAAAAiCIAANUAAADWAAAA1wAAANgAAADZAAAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAPA6AADVIQAAGDsAACwhAACAIgAAAAAAADAjAADaAAAA2wAAANwAAAC+AAAA3QAAAN4AAADfAAAA4AAAAMMAAADEAAAA4QAAAOIAAABONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFEZWNvZGVySWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFRUUAGDsAAMwiAADIHQAAAAAAAGQlAADjAAAA5AAAAOUAAADmAAAA5wAAAOgAAADpAAAA6gAAAOsAAADsAAAA7QAAAO4AAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjNQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQAAGDsAAN8kAABYDAAAGDsAADEkAABMJQAAGDsAAHQjAABYJQAAAAAAABwnAADvAAAA8AAAAPEAAADyAAAA8wAAAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAAA8DoAAE8mAAAYOwAAjCUAABQnAAAAAAAAwCgAAPQAAAD1AAAA9gAAAOYAAAD3AAAA+AAAAPkAAAD6AAAA6wAAAOwAAAD7AAAA/AAAAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAAAYOwAAECgAAEwlAAAYOwAAYCcAALQoAAAAAAAAXCoAAP0AAAD+AAAA/wAAAAABAAABAQAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAPA6AACeKQAAGDsAAOgoAABUKgAAAAAAABQrAADaAAAAAgEAAAMBAADmAAAABAEAAAUBAAAGAQAABwEAAOsAAADsAAAACAEAAAkBAABONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRUVFAAAAABg7AACgKgAATCUAAAAAAACYKwAACgEAAAsBAAAMAQAALgAAAC8AAAANAQAAQAAAADIAAABBAAAADgEAAEMAAABEAAAADwEAABABAAARAQAATjVkcmFjbzM4U2VxdWVudGlhbFF1YW50aXphdGlvbkF0dHJpYnV0ZURlY29kZXJFAAAAABg7AABkKwAA8AkAAAAAAAD4KwAAEgEAABMBAAAUAQAAFQEAACMAAAAWAQAAFwEAABgBAAAZAQAAGgEAABsBAAAcAQAAIwAAAE41ZHJhY28xMU1lc2hEZWNvZGVyRQAAABg7AADgKwAATDQAAAAAAABkLAAAHQEAAB4BAAAUAQAAHwEAACABAAAWAQAAFwEAABgBAAAhAQAAIgEAACMBAAAkAQAAJQEAAE41ZHJhY28yMk1lc2hFZGdlYnJlYWtlckRlY29kZXJFAAAAABg7AABALAAA+CsAAAAAAACILQAAJgEAACcBAAAoAQAAKQEAACoBAAArAQAALAEAAC0BAAAuAQAALwEAAP////8AAAAA7C0AADABAAAxAQAAMgEAADMBAAA0AQAANQEAADYBAAA3AQAAOAEAADkBAAAAAAAATC4AADoBAAA7AQAAPAEAAD0BAAA+AQAAPwEAAEABAABBAQAAQgEAAEMBAABONWRyYWNvMjZNZXNoRWRnZWJyZWFrZXJEZWNvZGVySW1wbElOU18zMU1lc2hFZGdlYnJlYWtlclRyYXZlcnNhbERlY29kZXJFRUUATjVkcmFjbzM1TWVzaEVkZ2VicmVha2VyRGVjb2RlckltcGxJbnRlcmZhY2VFAAAA8DoAAFAtAAAYOwAABC0AAIAtAABONWRyYWNvMjZNZXNoRWRnZWJyZWFrZXJEZWNvZGVySW1wbElOU180MU1lc2hFZGdlYnJlYWtlclRyYXZlcnNhbFByZWRpY3RpdmVEZWNvZGVyRUVFAAAAGDsAAJQtAACALQAATjVkcmFjbzI2TWVzaEVkZ2VicmVha2VyRGVjb2RlckltcGxJTlNfMzhNZXNoRWRnZWJyZWFrZXJUcmF2ZXJzYWxWYWxlbmNlRGVjb2RlckVFRQAAGDsAAPgtAACALQAAAAAAAEgvAABEAQAARQEAAEYBAABONWRyYWNvMTlEZXB0aEZpcnN0VHJhdmVyc2VySU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMxX0VFRUUATjVkcmFjbzEzVHJhdmVyc2VyQmFzZUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMV9FRUVFAPA6AADZLgAAGDsAAGwuAABALwAAAAAAAEAvAABHAQAASAEAAEYB"),a(e,12148,"AQAAAAMAAAAFAAAABwAAAAAAAABIMAAASQEAAEoBAABLAQAATAEAAE41ZHJhY28yMk1lc2hUcmF2ZXJzYWxTZXF1ZW5jZXJJTlNfMjhNYXhQcmVkaWN0aW9uRGVncmVlVHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzJfRUVFRUVFAE41ZHJhY28xNVBvaW50c1NlcXVlbmNlckUAAAAA8DoAACMwAAAYOwAAnC8AAEAwAAD/////AAAAADgxAABNAQAATgEAAE8BAABONWRyYWNvMjhNYXhQcmVkaWN0aW9uRGVncmVlVHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzFfRUVFRQBONWRyYWNvMTNUcmF2ZXJzZXJCYXNlSU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzFfRUVFRQAA8DoAANUwAAAYOwAAbDAAADAxAAAAAAAAMDEAAFABAABRAQAATwEAAAAAAADwMQAAUgEAAFMBAABUAQAAVQEAAE41ZHJhY28yMk1lc2hUcmF2ZXJzYWxTZXF1ZW5jZXJJTlNfMTlEZXB0aEZpcnN0VHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzJfRUVFRUVFAAAAGDsAAHAxAABAMAAAAAAAAHAyAABWAQAAVwEAAE8BAABONWRyYWNvMTlEZXB0aEZpcnN0VHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzFfRUVFRQAYOwAAEDIAADAxAAAAAAAAIDMAAFgBAABZAQAAWgEAAFsBAABONWRyYWNvMjJNZXNoVHJhdmVyc2FsU2VxdWVuY2VySU5TXzE5RGVwdGhGaXJzdFRyYXZlcnNlcklOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMl9FRUVFRUUAABg7AACUMgAAQDA="),a(e,13108,"jDMAABIBAABcAQAAFAEAABUBAABdAQAAFgEAABcBAAAYAQAAGQEAABoBAAAbAQAAHAEAAF4BAABONWRyYWNvMjFNZXNoU2VxdWVudGlhbERlY29kZXJFABg7AABsMwAA+CsAAAAAAADMMwAAXwEAAGABAABhAQAAYgEAAE41ZHJhY28xNUxpbmVhclNlcXVlbmNlckUAAAAYOwAAsDMAAEAwAAAAAAAATDQAABIBAABjAQAAZAEAABUBAAAjAAAAZQEAABcBAAAYAQAAGQE="),a(e,13328,"RmFpbGVkIHRvIHBhcnNlIERyYWNvIGhlYWRlci4ATjVkcmFjbzE3UG9pbnRDbG91ZERlY29kZXJFAAAA8DoAAC40AAAAAAAApDQAABIBAABmAQAAZAEAABUBAABnAQAAaAEAABcBAAAYAQAAGQEAAE41ZHJhY28yM1BvaW50Q2xvdWRLZFRyZWVEZWNvZGVyRQAAABg7AACANAAATDQAAAAAAAAENQAAEgEAAGkBAABkAQAAFQEAAGoBAABrAQAAFwEAABgBAAAZAQAATjVkcmFjbzI3UG9pbnRDbG91ZFNlcXVlbnRpYWxEZWNvZGVyRQAAABg7AADcNAAATDQAAAEAAAABAAAAAgAAAAIAAAAEAAAABAAAAAgAAAAIAAAABAAAAAgAAAAB"),a(e,13635,"wAAAAMAAAADAAAAAwP//////////AAAAAIA1AABsAQAAbQEAAG4BAABvAQAATjVkcmFjbzRNZXNoRQAAABg7AABwNQAAxDUAAP////8AAAAAAAAAAMQ1AABwAQAAcQEAAHIBAABzAQAATjVkcmFjbzEwUG9pbnRDbG91ZEUAAAAA8DoAAKw1AAC4PAAAGQAKABkZGQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAAZABEKGRkZAwoHAAEACQsYAAAJBgsAAAsABhkAAAAZGRk="),a(e,13857,"DgAAAAAAAAAAGQAKDRkZGQANAAACAAkOAAAACQAOAAAO"),a(e,13915,"DA=="),a(e,13927,"EwAAAAATAAAAAAkMAAAAAAAMAAAM"),a(e,13973,"EA=="),a(e,13985,"DwAAAAQPAAAAAAkQAAAAAAAQAAAQ"),a(e,14031,"Eg=="),a(e,14043,"EQAAAAARAAAAAAkSAAAAAAASAAASAAAaAAAAGhoa"),a(e,14098,"GgAAABoaGgAAAAAAAAk="),a(e,14147,"FA=="),a(e,14159,"FwAAAAAXAAAAAAkUAAAAAAAUAAAU"),a(e,14205,"Fg=="),a(e,14217,"FQAAAAAVAAAAAAkWAAAAAAAWAAAWAAAwMTIzNDU2Nzg5QUJDREVGAAAAAAIAAAADAAAABQAAAAcAAAALAAAADQAAABEAAAATAAAAFwAAAB0AAAAfAAAAJQAAACkAAAArAAAALwAAADUAAAA7AAAAPQAAAEMAAABHAAAASQAAAE8AAABTAAAAWQAAAGEAAABlAAAAZwAAAGsAAABtAAAAcQAAAH8AAACDAAAAiQAAAIsAAACVAAAAlwAAAJ0AAACjAAAApwAAAK0AAACzAAAAtQAAAL8AAADBAAAAxQAAAMcAAADTAAAAAQAAAAsAAAANAAAAEQAAABMAAAAXAAAAHQAAAB8AAAAlAAAAKQAAACsAAAAvAAAANQAAADsAAAA9AAAAQwAAAEcAAABJAAAATwAAAFMAAABZAAAAYQAAAGUAAABnAAAAawAAAG0AAABxAAAAeQAAAH8AAACDAAAAiQAAAIsAAACPAAAAlQAAAJcAAACdAAAAowAAAKcAAACpAAAArQAAALMAAAC1AAAAuwAAAL8AAADBAAAAxQAAAMcAAADRAAAAAAAAAAoAAABkAAAA6AMAABAnAACghgEAQEIPAICWmAAA4fUFAMqaOwAAAAAAAAAAMDAwMTAyMDMwNDA1MDYwNzA4MDkxMDExMTIxMzE0MTUxNjE3MTgxOTIwMjEyMjIzMjQyNTI2MjcyODI5MzAzMTMyMzMzNDM1MzYzNzM4Mzk0MDQxNDI0MzQ0NDU0NjQ3NDg0OTUwNTE1MjUzNTQ1NTU2NTc1ODU5NjA2MTYyNjM2NDY1NjY2NzY4Njk3MDcxNzI3Mzc0NzU3Njc3Nzg3OTgwODE4MjgzODQ4NTg2ODc4ODg5OTA5MTkyOTM5NDk1OTY5Nzk4OTlOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQAAAAAYOwAAKDoAAKw8AABOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAAAAYOwAAWDoAAEw6AABOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UAAAAYOwAAiDoAAEw6AABOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQAYOwAAuDoAAKw6AAAAAAAAfDoAAHkBAAB6AQAAewEAAHwBAAB9AQAAfgEAAH8BAACAAQAAAAAAAGA7AAB5AQAAgQEAAHsBAAB8AQAAfQEAAIIBAACDAQAAhAEAAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQAAAAAYOwAAODsAAHw6AAAAAAAA0DsAAA4AAACFAQAAhgEAAAAAAAD4OwAADgAAAIcBAACIAQAAAAAAALg7AAAOAAAAiQEAAIoBAABTdDlleGNlcHRpb24AAAAA8DoAAKg7AABTdDliYWRfYWxsb2MAAAAAGDsAAMA7AAC4OwAAU3QyMGJhZF9hcnJheV9uZXdfbGVuZ3RoAAAAABg7AADcOwAA0DsAAAAAAAAoPAAAAQAAAIsBAACMAQAAU3QxMWxvZ2ljX2Vycm9yABg7AAAYPAAAuDsAAAAAAABcPAAAAQAAAI0BAACMAQAAU3QxMmxlbmd0aF9lcnJvcgAAAAAYOwAASDwAACg8AAAAAAAAkDwAAAEAAACOAQAAjAEAAFN0MTJvdXRfb2ZfcmFuZ2UAAAAAGDsAAHw8AAAoPAAAU3Q5dHlwZV9pbmZvAAAAAPA6AACcPA=="),a(e,15544,"BQ=="),a(e,15556,"dAE="),a(e,15580,"dQEAAHYBAABsPg=="),a(e,15604,"Ag=="),a(e,15620,"//////////8="),a(e,15688,"BQ=="),a(e,15700,"dwE="),a(e,15724,"dQEAAHgBAAB4PgAAAAQ="),a(e,15748,"AQ=="),a(e,15764,"/////wo="),a(e,15832,"IEUB");var Ea,Ya=(Ea=[null,hf,sa,Na,ya,function(r,e){r|=0;var i=0;return!(e=s[88+(e|=0)>>2])|2!=s[e>>2]||(i=r,r=s[e+8>>2],s[i+4>>2]=_[0|r]|_[r+1|0]<<8|_[r+2|0]<<16|_[r+3|0]<<24,i=1),0|i},function(r,e){r|=0;var i,f=0;s[(e|=0)>>2]=2,f=s[e+8>>2],(i=s[e+12>>2]-f|0)>>>0<=4294967291&&(Ke(e+8|0,i+4|0),f=s[e+8>>2]),e=f+i|0,r=s[r+4>>2],c[0|e]=r,c[e+1|0]=r>>>8,c[e+2|0]=r>>>16,c[e+3|0]=r>>>24},function(r,e,i,f){r|=0,e|=0,i|=0;var a,t,b=0,A=0,n=0,o=0,k=0,c=0,u=0;if(n=s[80+(f|=0)>>2],Q=a=Q-48|0,!((t=(r=s[r+4>>2])-2|0)>>>0>28))if(k=s[s[f>>2]>>2]+s[f+48>>2]|0,s[a+16>>2]=r,r=-1<<r,s[a+20>>2]=~r,r=-2-r|0,s[a+24>>2]=r,s[a+32>>2]=(0|r)/2,y[a+28>>2]=v(2)/v(0|r),(0|(b=s[i>>2]))==s[i+4>>2]){if(n)for(f=0,r=0;c=a+36|0,u=s[s[e>>2]>>2],o=s[e+48>>2],A=b=Ki(i=s[e+40>>2],s[e+44>>2],_[e+84|0]?r:s[s[e+68>>2]+(r<<2)>>2],0),Cr(c,(b=b+o|0)+u|0,i),ne(a+16|0,c,a+12|0,a+8|0),s[(i=f<<2)+k>>2]=s[a+12>>2],s[(4|i)+k>>2]=s[a+8>>2],f=f+2|0,(0|n)!=(0|(r=r+1|0)););}else for(r=0,f=0;A=s[(f<<2)+b>>2],n=a+36|0,c=s[s[e>>2]>>2],u=s[e+48>>2],b=s[e+40>>2],o=s[e+44>>2],_[e+84|0]||(A=s[s[e+68>>2]+(A<<2)>>2]),o=A=Ki(b,o,A,0),Cr(n,(A=A+u|0)+c|0,b),ne(a+16|0,n,a+12|0,a+8|0),s[(b=r<<2)+k>>2]=s[a+12>>2],s[(4|b)+k>>2]=s[a+8>>2],r=r+2|0,f=f+1|0,b=s[i>>2],f>>>0<s[i+4>>2]-b>>2>>>0;);return Q=a+48|0,t>>>0<29|0},ce,function(r,e){e|=0;var i,f=0;return Q=i=Q-16|0,-1!=(0|(r=s[4+(r|=0)>>2]))&&(c[i+15|0]=r,f=s[e+20>>2],!!s[e+16>>2]&(0|f)>=0|(0|f)>0||Hr(e,s[e+4>>2],i+15|0,i+16|0)),Q=i+16|0,-1!=(0|r)|0},Bi,function(r,e,i){e|=0,i|=0;var f,a,t,b,A,n=0;return Q=f=Q+-64|0,n=0|Ya[s[s[(r|=0)>>2]+44>>2]](r,e),r=0|Ya[s[s[r>>2]+40>>2]](r,e),a=af(f),t=s[e+56>>2],b=255&n,A=r,r=(r=r-1|0)>>>0<=10?s[13584+(r<<2)>>2]:-1,pf(a,t,b,A,0,n=m(r,n),n>>31),Ie(r=Je(mf(96),a),i),c[r+84|0]=1,s[r+72>>2]=s[r+68>>2],s[r+60>>2]=s[e+60>>2],Q=f- -64|0,0|r},ta,function(r,e){return 2},sa,function(r){var e;return s[(r|=0)>>2]=1832,(e=s[r+8>>2])&&(s[r+12>>2]=e,mr(e)),0|r},function(r){var e;s[(r|=0)>>2]=1832,(e=s[r+8>>2])&&(s[r+12>>2]=e,mr(e)),mr(r)},ma,function(r,e){r|=0;var i=0,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0;if(!(!(i=s[88+(e|=0)>>2])|1!=s[i>>2])){if(a=s[i+8>>2],s[r+4>>2]=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,t=r+8|0,f=_[e+24|0],A=s[r+8>>2],f>>>0>(b=s[r+12>>2]-A>>2)>>>0?(ai(t,f-b|0),f=_[e+24|0],a=s[i+8>>2]):f>>>0>=b>>>0||(s[r+12>>2]=A+(f<<2)),f){if(A=3&f,t=s[t>>2],f-1>>>0<3)e=4,f=0;else for(k=252&f,f=0,e=4;i=e+a|0,s[(b=f<<2)+t>>2]=_[0|i]|_[i+1|0]<<8|_[i+2|0]<<16|_[i+3|0]<<24,s[t+(4|b)>>2]=_[i+4|0]|_[i+5|0]<<8|_[i+6|0]<<16|_[i+7|0]<<24,s[t+(8|b)>>2]=_[i+8|0]|_[i+9|0]<<8|_[i+10|0]<<16|_[i+11|0]<<24,s[t+(12|b)>>2]=_[i+12|0]|_[i+13|0]<<8|_[i+14|0]<<16|_[i+15|0]<<24,f=f+4|0,e=e+16|0,(0|k)!=(0|(n=n+4|0)););if(A)for(;i=e+a|0,s[t+(f<<2)>>2]=_[0|i]|_[i+1|0]<<8|_[i+2|0]<<16|_[i+3|0]<<24,f=f+1|0,e=e+4|0,(0|A)!=(0|(o=o+1|0)););}else e=4;f=r,r=e+a|0,s[f+20>>2]=_[0|r]|_[r+1|0]<<8|_[r+2|0]<<16|_[r+3|0]<<24,f=1}return 0|f},function(r,e){r|=0;var i,f=0,a=0,t=0,b=0;if(s[(e|=0)>>2]=1,i=e+8|0,f=s[e+8>>2],(a=s[e+12>>2]-f|0)>>>0<=4294967291&&(Ke(i,a+4|0),f=s[i>>2]),f=f+a|0,a=s[r+4>>2],c[0|f]=a,c[f+1|0]=a>>>8,c[f+2|0]=a>>>16,c[f+3|0]=a>>>24,(0|(f=s[r+8>>2]))!=s[r+12>>2])for(a=0;b=(a<<2)+f|0,f=s[e+8>>2],(t=s[e+12>>2]-f|0)>>>0<=4294967291&&(Ke(i,t+4|0),f=s[i>>2]),f=f+t|0,t=s[b>>2],c[0|f]=t,c[f+1|0]=t>>>8,c[f+2|0]=t>>>16,c[f+3|0]=t>>>24,a=a+1|0,f=s[r+8>>2],a>>>0<s[r+12>>2]-f>>2>>>0;);(f=(f=s[e+12>>2])-(e=s[e+8>>2])|0)>>>0<=4294967291&&(Ke(i,f+4|0),e=s[i>>2]),e=e+f|0,r=s[r+20>>2],c[0|e]=r,c[e+1|0]=r>>>8,c[e+2|0]=r>>>16,c[e+3|0]=r>>>24},function(r,e,i,f){r|=0,e|=0,i|=0,f|=0;var a=v(0),t=0,b=0,A=0,n=0,o=0,k=0,c=0,u=0,l=0,p=v(0),d=0,m=0,R=0,N=0,Z=0,U=0,W=0,V=0,T=0;if(s[i>>2]==s[i+4>>2]){if(u=s[f+80>>2],Q=U=Q-16|0,b=s[r+4>>2],k=_[e+24|0],A=s[f+48>>2],l=s[s[f>>2]>>2],s[(i=U+8|0)>>2]=1065353216,f=i,y[i>>2]=v(~(-1<<b))/y[r+20>>2],i=mf(k<<2),!(!u|!k))if(d=A+l|0,p=y[f>>2],l=s[r+8>>2],W=s[e>>2],f=s[e+48>>2],b=s[e+40>>2],V=s[e+44>>2],_[e+84|0])for(N=254&k,Z=1&k,r=0;;){if(o=Cr(i,(e=s[W>>2])+(A=Ki(b,V,n,c)+f|0)|0,b),e=0,m=0,1!=(0|k))for(;A=d+(r<<2)|0,a=v(G(v(v(p*v(y[(t=e<<2)+o>>2]-y[t+l>>2]))+v(.5)))),R=v(h(a))<v(2147483648)?~~a:-2147483648,s[A>>2]=R,a=v(G(v(v(p*v(y[(t|=4)+o>>2]-y[t+l>>2]))+v(.5)))),t=v(h(a))<v(2147483648)?~~a:-2147483648,s[A+4>>2]=t,e=e+2|0,r=r+2|0,(0|N)!=(0|(m=m+2|0)););if(Z&&(A=d+(r<<2)|0,a=v(G(v(v(p*v(y[(e<<=2)+o>>2]-y[e+l>>2]))+v(.5)))),e=v(h(a))<v(2147483648)?~~a:-2147483648,s[A>>2]=e,r=r+1|0),e=c,c=e=(n=n+1|0)?e:e+1|0,!((0|n)!=(0|u)|e))break}else for(t=s[e+68>>2],N=254&k,Z=1&k,r=0;;){if(A=Cr(i,(e=s[W>>2])+(c=Ki(b,V,s[t+(n<<2)>>2],0)+f|0)|0,b),e=0,m=0,1!=(0|k))for(;c=d+(r<<2)|0,a=v(G(v(v(p*v(y[(o=e<<2)+A>>2]-y[l+o>>2]))+v(.5)))),R=v(h(a))<v(2147483648)?~~a:-2147483648,s[c>>2]=R,a=v(G(v(v(p*v(y[(o|=4)+A>>2]-y[l+o>>2]))+v(.5)))),o=v(h(a))<v(2147483648)?~~a:-2147483648,s[c+4>>2]=o,e=e+2|0,r=r+2|0,(0|N)!=(0|(m=m+2|0)););if(Z&&(c=d+(r<<2)|0,a=v(G(v(v(p*v(y[(e<<=2)+A>>2]-y[e+l>>2]))+v(.5)))),e=v(h(a))<v(2147483648)?~~a:-2147483648,s[c>>2]=e,r=r+1|0),(0|u)==(0|(n=n+1|0)))break}return mr(i),Q=U+16|0,1}if(Q=o=Q-16|0,u=s[r+4>>2],n=_[e+24|0],b=s[f+48>>2],A=s[s[f>>2]>>2],s[(f=o+8|0)>>2]=1065353216,c=f,y[f>>2]=v(~(-1<<u))/y[r+20>>2],f=mf(n<<2),!(!n|(0|(u=s[i+4>>2]))==(0|(m=s[i>>2]))))if(l=A+b|0,U=(i=u-m>>2)>>>0<=1?1:i,p=y[c>>2],A=s[r+8>>2],W=s[e>>2],c=s[e+48>>2],u=s[e+40>>2],V=s[e+44>>2],_[e+84|0])for(N=254&n,Z=1&n,r=0,i=0;;){if(d=Cr(f,(e=s[W>>2])+(b=Ki(u,V,s[m+(i<<2)>>2],0)+c|0)|0,u),e=0,k=0,1!=(0|n))for(;b=l+(r<<2)|0,a=v(G(v(v(p*v(y[(t=e<<2)+d>>2]-y[A+t>>2]))+v(.5)))),R=v(h(a))<v(2147483648)?~~a:-2147483648,s[b>>2]=R,a=v(G(v(v(p*v(y[(t|=4)+d>>2]-y[A+t>>2]))+v(.5)))),t=v(h(a))<v(2147483648)?~~a:-2147483648,s[b+4>>2]=t,e=e+2|0,r=r+2|0,(0|N)!=(0|(k=k+2|0)););if(Z&&(b=l+(r<<2)|0,a=v(G(v(v(p*v(y[(e<<=2)+d>>2]-y[e+A>>2]))+v(.5)))),e=v(h(a))<v(2147483648)?~~a:-2147483648,s[b>>2]=e,r=r+1|0),(0|U)==(0|(i=i+1|0)))break}else for(N=s[e+68>>2],Z=254&n,T=1&n,r=0,i=0;;){if(d=Cr(f,(e=s[W>>2])+(b=Ki(u,V,s[N+(s[m+(i<<2)>>2]<<2)>>2],0)+c|0)|0,u),e=0,k=0,1!=(0|n))for(;b=l+(r<<2)|0,a=v(G(v(v(p*v(y[(t=e<<2)+d>>2]-y[A+t>>2]))+v(.5)))),R=v(h(a))<v(2147483648)?~~a:-2147483648,s[b>>2]=R,a=v(G(v(v(p*v(y[(t|=4)+d>>2]-y[A+t>>2]))+v(.5)))),t=v(h(a))<v(2147483648)?~~a:-2147483648,s[b+4>>2]=t,e=e+2|0,r=r+2|0,(0|Z)!=(0|(k=k+2|0)););if(T&&(b=l+(r<<2)|0,a=v(G(v(v(p*v(y[(e<<=2)+d>>2]-y[e+A>>2]))+v(.5)))),e=v(h(a))<v(2147483648)?~~a:-2147483648,s[b>>2]=e,r=r+1|0),(0|U)==(0|(i=i+1|0)))break}return mr(f),Q=o+16|0,1},fe,function(r,e){e|=0;var i,f,a=0,t=0;return Q=i=Q-16|0,-1!=(0|(f=s[4+(r|=0)>>2]))&&(a=s[e+20>>2],!!s[e+16>>2]&(0|a)>=0|(0|a)>0||(Hr(e,s[e+4>>2],s[r+8>>2],s[r+12>>2]),a=s[e+20>>2],!!s[e+16>>2]&(0|a)>=0|(0|a)>0||(Hr(e,s[e+4>>2],r+20|0,r+24|0),a=s[e+20>>2],t=s[e+16>>2],c[i+15|0]=s[r+4>>2],!!t&(0|a)>=0|(0|a)>0||Hr(e,s[e+4>>2],i+15|0,i+16|0)))),Q=i+16|0,-1!=(0|f)|0},te,ta,function(r,e){return _[24+(e|=0)|0]},function(r){var e=0;return s[(r|=0)>>2]=1984,(e=s[r+16>>2])&&(s[r+20>>2]=e,mr(e)),(e=s[r+4>>2])&&(s[r+8>>2]=e,mr(e)),0|r},Ga,function(r,e,i){return e|=0,i|=0,s[32+(r|=0)>>2]=i,s[r+28>>2]=e,1},Gr,function(r,e){e|=0;var i=0;return 0|Ya[s[s[(r|=0)>>2]+36>>2]](r,e)&&0|Ya[s[s[r>>2]+40>>2]](r,e)&&(i=0|Ya[s[s[r>>2]+44>>2]](r)),0|i},function(r,e){return e|=0,s[s[4+(r|=0)>>2]+(e<<2)>>2]},function(r){return s[8+(r|=0)>>2]-s[r+4>>2]>>2},ea,na,function(){V(),n()},Aa,ma,He,function(r){mr(He(r|=0))},function(r,e){r|=0;var i,f=0,a=0,t=0,b=0,A=0,o=0,k=0,u=0,y=0,d=0,v=0,h=0,R=0,N=0,Z=0;Q=i=Q-704|0,v=1;r:{e:{i:{if(!(l[38+(e|=0)>>1]<515||(v=0,(0|(f=s[e+20>>2]))>=(0|(a=s[e+12>>2]))&(b=s[e+16>>2])>>>0>=p[e+8>>2]|(0|f)>(0|a)))){if(R=_[s[e>>2]+b|0],f=(b=b+1|0)?f:f+1|0,s[e+16>>2]=b,s[e+20>>2]=f,b=s[s[4+(0|Ya[s[s[r>>2]+28>>2]](r))>>2]+80>>2],f=0|Ya[s[s[r>>2]+24>>2]](r),s[i+40>>2]=0,s[i+32>>2]=0,s[i+36>>2]=0,f){if(f>>>0>=214748365)break i;a=mf(f=m(f,20)),s[i+32>>2]=a,s[i+40>>2]=f+a,N=i,Z=Ge(a,0,f=20+((f=f-20|0)-((f>>>0)%20|0)|0)|0)+f|0,s[N+36>>2]=Z}f:{if((0|Ya[s[s[r>>2]+24>>2]](r))>0)for(;;){if(f=0|Ya[s[s[r>>2]+20>>2]](r,y),Ie(f=s[s[s[4+(0|Ya[s[s[r>>2]+28>>2]](r))>>2]+8>>2]+(f<<2)>>2],b),c[f+84|0]=1,s[f+72>>2]=s[f+68>>2],(a=s[f+28>>2])>>>0>9)break f;a:{t:{b:{if(!(42&(t=1<<a))){if(84&t)break a;if(9!=(0|a))break f;if(a=_[f+24|0],t=af(i+48|0),o=m(a,s[3401]),pf(t,s[f+56>>2],a,6,0,o,o>>31),f=Je(mf(96),t),s[i>>2]=f,c[f+84|0]=1,s[f+72>>2]=s[f+68>>2],Ie(f,b),(f=s[r+64>>2])>>>0>=p[r+68>>2])break b;a=s[i>>2],s[i>>2]=0,s[f>>2]=a,f=f+4|0,s[r+64>>2]=f;break t}if(k=0,!_[f+24|0])break a;for(;;){if((a=s[r+52>>2])>>>0<(o=s[r+56>>2])>>>0)s[a>>2]=0,s[r+52>>2]=a+4;else{if((t=1+(u=(d=(t=a)-(a=s[r+48>>2])|0)>>2)|0)>>>0>=1073741824)break e;if(h=u<<2,u=(o=o-a|0)>>>1|0,t=o>>>0>=2147483644?1073741823:t>>>0<u>>>0?u:t){if(t>>>0>=1073741824)break r;o=mf(t<<2)}else o=0;s[(u=h+o|0)>>2]=0,h=t<<2,t=me(o,a,d),s[r+56>>2]=h+t,s[r+52>>2]=u+4,s[r+48>>2]=t,a&&mr(a)}if(!((k=k+1|0)>>>0<_[f+24|0]))break}break a}f=0;b:{A:{n:{if(t=s[r+60>>2],(a=1+(o=s[r+64>>2]-t>>2)|0)>>>0<1073741824){if(k=(t=s[r+68>>2]-t|0)>>>1|0,t=t>>>0>=2147483644?1073741823:a>>>0<k>>>0?k:a){if(t>>>0>=1073741824)break n;f=mf(t<<2)}if(k=s[i>>2],s[i>>2]=0,s[(a=(o<<2)+f|0)>>2]=k,t=(t<<2)+f|0,o=a+4|0,(0|(f=s[r+64>>2]))==(0|(k=s[r+60>>2])))break A;for(;d=s[(f=f-4|0)>>2],s[f>>2]=0,s[(a=a-4|0)>>2]=d,(0|f)!=(0|k););if(s[r+68>>2]=t,t=s[r+64>>2],s[r+64>>2]=o,f=s[r+60>>2],s[r+60>>2]=a,(0|f)==(0|t))break b;for(;a=s[(t=t-4|0)>>2],s[t>>2]=0,a&&Ci(a),(0|f)!=(0|t););break b}ha(),n()}Df(),n()}s[r+68>>2]=t,s[r+64>>2]=o,s[r+60>>2]=a}f&&mr(f),f=s[r+64>>2]}f=s[f-4>>2],a=s[i>>2],s[i>>2]=0,a&&Ci(a)}if(t=(a=(o=s[f+28>>2])-1|0)>>>0<=10?s[13584+(a<<2)>>2]:-1,a=s[i+32>>2]+m(y,20)|0,k=_[f+24|0],s[a+16>>2]=k,s[a+12>>2]=(0|t)>0?t:0,s[a+8>>2]=o,s[a+4>>2]=A,s[a>>2]=f,A=A+k|0,y=y+1|0,!((0|Ya[s[s[r>>2]+24>>2]](r))>(0|y)))break}r=wr(i,i+32|0);a:{t:{b:switch(0|R){case 0:if(e=X(f=qr(i+48|0,A),e,r,b),A=s[f+8>>2],ze(f),!e)break a;if((0|A)==(0|b))break t;break a;case 1:if(e=g(f=qr(i+48|0,A),e,r,b),A=s[f+8>>2],ze(f),!e)break a;if((0|A)==(0|b))break t;break a;case 2:if(e=P(f=Pr(i+48|0,A),e,r,b),A=s[f+8>>2],Le(f),!e)break a;if((0|A)==(0|b))break t;break a;case 3:if(e=S(f=Pr(i+48|0,A),e,r,b),A=s[f+8>>2],Le(f),!e)break a;if((0|A)==(0|b))break t;break a;case 4:if(e=z(f=K(i+48|0,A),e,r,b),A=s[f+8>>2],xe(f),!e)break a;if((0|A)==(0|b))break t;break a;case 5:if(e=C(f=K(i+48|0,A),e,r,b),A=s[f+8>>2],xe(f),!e)break a;if((0|A)==(0|b))break t;break a;case 6:break b;default:break a}if(e=H(f=K(i+48|0,A),e,r,b),A=s[f+8>>2],xe(f),!e|(0|A)!=(0|b))break a}v=1}(e=s[r+16>>2])&&(s[r+20>>2]=e,mr(e)),(e=s[r>>2])&&(s[r+4>>2]=e,mr(e))}(r=s[i+32>>2])&&(s[i+36>>2]=r,mr(r))}return Q=i+704|0,0|v}ha(),n()}ha(),n()}Df(),n()},function(r,e){r|=0,e|=0;var i,f,a=0,t=0,o=0,k=0,u=0,d=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=v(0),V=0,T=0;Q=i=Q-720|0;r:{e:{i:{f:{a:{t:{b:{A:{n:{if(l[e+38>>1]>=515){if(s[i+680>>2]=0,s[i+672>>2]=0,s[i+676>>2]=0,(0|Ya[s[s[r>>2]+24>>2]](r))<=0)break f;for(;;){if(a=0|Ya[s[s[r>>2]+20>>2]](r,G),t=s[s[s[4+(0|Ya[s[s[r>>2]+28>>2]](r))>>2]+8>>2]+(a<<2)>>2],9==s[t+28>>2]){if(o=s[i+672>>2],(a=s[i+676>>2]-o>>2)>>>0<(R=_[t+24|0])>>>0?ai(i+672|0,R-a|0):a>>>0<=R>>>0||(s[i+676>>2]=o+(R<<2)),h=0,d=s[e+8>>2],u=s[e+12>>2],a=s[e+20>>2],t=R<<2,d>>>0<(N=(o=s[e+16>>2])+t|0)>>>0&(0|(a=t>>>0>N>>>0?a+1|0:a))>=(0|u)|(0|a)>(0|u))break e;if(Cr(s[i+672>>2],o+s[e>>2]|0,t),a=s[e+20>>2],a=(o=t)>>>0>(t=t+s[e+16>>2]|0)>>>0?a+1|0:a,d=t,s[e+16>>2]=t,s[e+20>>2]=a,N=s[e+12>>2],(k=s[e+8>>2])>>>0<(u=t+4|0)>>>0&(0|(t=o=u>>>0<4?a+1|0:a))>=(0|N)|(0|t)>(0|N))break e;if(U=s[e>>2],o=_[0|(o=U+d|0)]|_[o+1|0]<<8|_[o+2|0]<<16|_[o+3|0]<<24,s[e+16>>2]=u,s[e+20>>2]=t,k>>>0<=u>>>0&(0|t)>=(0|N)|(0|t)>(0|N))break e;if(t=_[u+U|0],a=(u=d+5|0)>>>0<5?a+1|0:a,s[e+16>>2]=u,s[e+20>>2]=a,t>>>0>31)break e;if(f=o,b[2]=f,W=A[2],s[i+20>>2]=-1,s[i+16>>2]=1832,s[i+32>>2]=0,s[i+36>>2]=0,s[i+24>>2]=0,s[i+28>>2]=0,a=s[i+672>>2],(U=t-1|0)>>>0<=29){s[i+20>>2]=t;o:if((o=(N=(u=a+(R<<2)|0)-a|0)>>2)>>>0<=(d=s[i+32>>2])-(t=s[i+24>>2])>>2>>>0){if(k=(d=o>>>0>(N=(d=s[i+28>>2]-t|0)>>2)>>>0?a+d|0:u)-a|0,(0|a)!=(0|d)&&me(t,a,k),o>>>0>N>>>0){a=u-d|0,t=s[i+28>>2],(0|u)!=(0|d)&&me(t,d,a),s[i+28>>2]=a+t;break o}s[i+28>>2]=t+k}else t&&(s[i+28>>2]=t,mr(t),s[i+32>>2]=0,s[i+24>>2]=0,s[i+28>>2]=0,d=0),(0|N)<0||(t=d>>>1|0,(t=d>>>0>=2147483644?1073741823:t>>>0>o>>>0?t:o)>>>0>=1073741824)?(ha(),n()):(t=mf(d=t<<2),s[i+28>>2]=t,s[i+24>>2]=t,s[i+32>>2]=t+d,(0|a)!=(0|u)&&Cr(t,a,N),s[i+28>>2]=t+(o<<2));y[i+36>>2]=W}if(!(U>>>0>=30)&&Mi(i+16|0,s[s[r+60>>2]+((s[r+40>>2]-s[r+36>>2]|0)/24<<2)>>2])){if((0|(a=s[r+40>>2]))==s[r+44>>2]){t=0;o:{k:{c:{u:{if((a=1+(d=((h=s[r+40>>2])-(o=s[r+36>>2])|0)/24|0)|0)>>>0<178956971){if(N=(u=(s[r+44>>2]-o|0)/24|0)<<1,u=u>>>0>=89478485?178956970:a>>>0<N>>>0?N:a){if(u>>>0>=178956971)break u;t=mf(m(u,24))}if(k=m(d,24)+t|0,s[k>>2]=1832,a=s[i+20>>2],s[k+16>>2]=0,s[k+8>>2]=0,s[k+12>>2]=0,s[k+4>>2]=a,(0|(a=s[i+24>>2]))!=(0|(d=s[i+28>>2]))){if((0|(N=d-a|0))<0)break c;for(R=mf(N),s[k+8>>2]=R,s[k+16>>2]=(-4&N)+R;y[R>>2]=y[a>>2],R=R+4|0,(0|d)!=(0|(a=a+4|0)););s[k+12>>2]=R}if(a=m(u,24)+t|0,y[k+20>>2]=y[i+36>>2],t=k+24|0,(0|o)==(0|h))break k;for(;s[(k=k-24|0)>>2]=1832,h=h-24|0,s[k+4>>2]=s[h+4>>2],s[k+8>>2]=s[h+8>>2],s[k+12>>2]=s[h+12>>2],s[k+16>>2]=s[h+16>>2],s[h+16>>2]=0,s[h+8>>2]=0,s[h+12>>2]=0,y[k+20>>2]=y[h+20>>2],(0|o)!=(0|h););if(s[r+44>>2]=a,R=s[r+40>>2],s[r+40>>2]=t,h=s[r+36>>2],s[r+36>>2]=k,(0|h)==(0|R))break o;for(;Ya[s[s[(R=R-24|0)>>2]>>2]](R),(0|h)!=(0|R););break o}ha(),n()}Df(),n()}ha(),n()}s[r+44>>2]=a,s[r+40>>2]=t,s[r+36>>2]=k}h&&mr(h)}else{if(s[a>>2]=1832,t=s[i+20>>2],s[a+16>>2]=0,s[a+8>>2]=0,s[a+12>>2]=0,s[a+4>>2]=t,(0|(t=s[i+28>>2]))!=(0|(o=s[i+24>>2]))){if((0|(t=t-o|0))<0)break n;if(k=mf(t),s[a+12>>2]=k,s[a+8>>2]=k,s[a+16>>2]=(-4&t)+k,(0|(R=s[i+24>>2]))!=(0|(t=s[i+28>>2])))for(;y[k>>2]=y[R>>2],k=k+4|0,(0|t)!=(0|(R=R+4|0)););s[a+12>>2]=k}y[a+20>>2]=y[i+36>>2],s[r+40>>2]=a+24}h=1}if(s[i+16>>2]=1832,(a=s[i+24>>2])&&(s[i+28>>2]=a,mr(a)),!h)break i}if(G=G+1|0,!((0|Ya[s[s[r>>2]+24>>2]](r))>(0|G)))break}break f}if(R=0|Ya[s[s[r>>2]+24>>2]](r),s[i+712>>2]=0,s[i+704>>2]=0,s[i+708>>2]=0,R){if(R>>>0>=214748365)break A;for(t=mf(a=m(R,20)),s[i+704>>2]=t,s[i+712>>2]=a+t,V=i,T=Ge(t,0,a=20+((a=a-20|0)-((a>>>0)%20|0)|0)|0)+a|0,s[V+708>>2]=T;;){if(a=0|Ya[s[s[r>>2]+20>>2]](r,Z),t=s[s[s[4+(0|Ya[s[s[r>>2]+28>>2]](r))>>2]+8>>2]+(a<<2)>>2],(u=(0|(a=(a=(o=s[t+28>>2])-1|0)>>>0<=10?s[13584+(a<<2)>>2]:-1))>0?a:0)>>>0>4)break t;if(a=s[i+704>>2]+m(Z,20)|0,d=_[t+24|0],s[a+16>>2]=d,s[a+12>>2]=u,s[a+8>>2]=o,s[a+4>>2]=k,s[a>>2]=t,k=k+d|0,(0|R)==(0|(Z=Z+1|0)))break}}if(a=0|Ya[s[s[r>>2]+20>>2]](r,0),Z=s[s[s[4+(0|Ya[s[s[r>>2]+28>>2]](r))>>2]+8>>2]+(a<<2)>>2],c[Z+84|0]=1,s[Z+72>>2]=s[Z+68>>2],(0|(a=u=s[e+12>>2]))<=(0|(t=s[e+20>>2]))&(o=s[e+8>>2])>>>0<=(d=s[e+16>>2])>>>0|(0|a)<(0|t))break t;G=s[e>>2],U=_[G+d|0],a=t,a=(N=d+1|0)?a:a+1|0,s[e+16>>2]=N,s[e+20>>2]=a;o:switch(0|U){case 0:if(r=s[i+704>>2],20!=(s[i+708>>2]-r|0))break a;if(3!=s[r+16>>2])break t;if(!(o>>>0<=N>>>0&(0|a)>=(0|u)|(0|a)>(0|u)||(a=t,a=(r=d+2|0)>>>0<2?a+1|0:a,N=r,s[e+16>>2]=r,s[e+20>>2]=a,a=t,(r=d+6|0)>>>0>o>>>0&(0|(a=r>>>0<6?a+1|0:a))>=(0|u)|(0|a)>(0|u)))){t=_[0|(t=N+G|0)]|_[t+1|0]<<8|_[t+2|0]<<16|_[t+3|0]<<24,s[e+16>>2]=r,s[e+20>>2]=a,Ie(Z,t),s[20+(h=i+672|0)>>2]=0,s[h+12>>2]=0,s[h+16>>2]=0,s[h>>2]=0,s[h+4>>2]=0,s[h+20>>2]=t,t=wr(i+16|0,i+704|0),R=0,Q=k=Q-32|0,s[k+24>>2]=0,s[k+16>>2]=0,s[k+20>>2]=0,Z=o=s[e+12>>2],d=s[e+8>>2],N=a=s[e+20>>2];k:if(!((r=(u=s[e+16>>2])+4|0)>>>0>d>>>0&(0|(a=r>>>0<4?a+1|0:a))>=(0|o)|(0|a)>(0|o))){G=s[e>>2],o=_[0|(o=G+u|0)]|_[o+1|0]<<8|_[o+2|0]<<16|_[o+3|0]<<24,s[e+16>>2]=r,s[e+20>>2]=a;c:{u:switch(o-2|0){case 1:if((0|a)>=(0|Z)&r>>>0>=d>>>0|(0|a)>(0|Z))break k;if(r=c[r+G|0],a=N,a=(o=u+5|0)>>>0<5?a+1|0:a,s[e+16>>2]=o,s[e+20>>2]=a,s[h+8>>2]=r,1==(0|r)){if(I(h,e,k+16|0))break c;break k}Jf(1799,23,s[3443]);break k;default:Jf(1774,24,s[3443]);break k;case 0:}if(!I(h,e,k+16|0))break k}if(s[k+8>>2]=s[k+16>>2],s[k>>2]=s[k+20>>2],Q=a=Q-32|0,r=s[h>>2],W=y[h+4>>2],s[a+24>>2]=1065353216,(0|(r=u=~(-1<<r)))>0&&(y[a+24>>2]=W/v(0|r)),(0|(Z=s[k+8>>2]))!=(0|(G=s[k>>2])))for(r=s[t+28>>2];e=s[Z>>2],o=s[Z+4>>2],W=y[a+24>>2],y[a+16>>2]=W*v(s[Z+8>>2]-u|0),y[a+12>>2]=W*v(o-u|0),y[a+8>>2]=W*v(e-u|0),e=r,d=s[t+16>>2],o=s[d>>2],_[o+84|0]||(e=s[s[o+68>>2]+(r<<2)>>2]),p[o+80>>2]>e>>>0&&(r=s[o+40>>2],Cr(s[s[o>>2]>>2]+m(r,e)|0,(a+8|0)+(s[d+4>>2]<<2)|0,r),G=s[k>>2],r=s[t+28>>2]),r=r+1|0,s[t+28>>2]=r,(0|G)!=(0|(Z=Z+12|0)););Q=a+32|0,R=1}if((r=s[k+16>>2])&&(s[k+20>>2]=r,mr(r)),Q=k+32|0,Vf(t),h=1,R)break t}h=0;break t;case 1:break o;default:break t}if(o>>>0<=N>>>0&(0|a)>=(0|u)|(0|a)>(0|u))break t;if(U=_[N+G|0],a=t,a=(N=d+2|0)>>>0<2?a+1|0:a,s[e+16>>2]=N,s[e+20>>2]=a,U>>>0>=7){s[i>>2]=U,Xe(1651,i);break t}if(a=t,(t=d+6|0)>>>0>o>>>0&(0|(a=t>>>0<6?a+1|0:a))>=(0|u)|(0|a)>(0|u))break t;if(o=_[0|(o=N+G|0)]|_[o+1|0]<<8|_[o+2|0]<<16|_[o+3|0]<<24,s[e+16>>2]=t,s[e+20>>2]=a,R)for(Z=0;a=0|Ya[s[s[r>>2]+20>>2]](r,Z),Ie(a=s[s[s[4+(0|Ya[s[s[r>>2]+28>>2]](r))>>2]+8>>2]+(a<<2)>>2],o),c[a+84|0]=1,s[a+72>>2]=s[a+68>>2],(0|R)!=(0|(Z=Z+1|0)););r=wr(i+672|0,i+704|0);o:{k:switch(0|U){case 1:if(e=g(a=qr(i+16|0,k),e,r,-1),ze(a),!e)break b;break o;case 2:if(e=P(a=Pr(i+16|0,k),e,r,-1),Le(a),!e)break b;break o;case 3:if(e=S(a=Pr(i+16|0,k),e,r,-1),Le(a),!e)break b;break o;case 4:if(e=z(a=K(i+16|0,k),e,r,-1),xe(a),!e)break b;break o;case 5:if(e=C(a=K(i+16|0,k),e,r,-1),xe(a),!e)break b;break o;case 6:if(e=H(a=K(i+16|0,k),e,r,-1),xe(a),e)break o;break b;case 0:break k;default:break b}if(e=X(a=qr(i+16|0,k),e,r,-1),ze(a),!e)break b}Vf(r),h=1;break t}ha(),n()}ha(),n()}Vf(r)}r=s[i+704>>2]}if(!r)break r;s[i+708>>2]=r,mr(r);break r}if(h=1,s[r+52>>2]==s[r+48>>2])break e;for(;;){if(!hi(1,i+16|0,e))break i;if(a=s[r+48>>2],t=s[i+16>>2],s[a+(Z<<2)>>2]=t>>>1^0-(1&t),!((Z=Z+1|0)>>>0<s[r+52>>2]-a>>2>>>0))break}break e}h=0}(r=s[i+672>>2])&&(s[i+676>>2]=r,mr(r))}return Q=i+720|0,0|h},function(r){r|=0;var e,i=0,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0,d=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0,V=0,T=0,D=v(0),F=0;Q=e=Q-16|0;r:if(s[r+60>>2]!=s[r- -64>>2]|s[r+48>>2]!=s[r+52>>2]){if(k=1,!((0|Ya[s[s[r>>2]+24>>2]](r))<=0)){for(;;){e:{i=0|Ya[s[s[r>>2]+20>>2]](r,F);i:{f:{a:switch(b=s[s[s[4+(0|Ya[s[s[r>>2]+28>>2]](r))>>2]+8>>2]+(i<<2)>>2],s[b+28>>2]-1|0){case 8:break f;case 0:case 2:case 4:break a;default:break i}(i=_[b+24|0])?(k=0,Ge(N=mf(i<<=2),0,i),(i=_[b+24|0])&&Ge(k=mf(i<<=2),0,i)):(N=0,k=0);a:{t:{b:switch(s[b+28>>2]-1|0){case 4:o=0,n=0,a=0,i=0,d=0,(t=_[b+24|0])?(Ge(n=mf(t<<=2),0,t),Ge(A=mf(t),0,t)):A=0;A:{if(s[b+80>>2])for(;;){if(Z=s[b>>2],R=Cr(n,W=(f=s[Z>>2])+(R=(R=s[b+48>>2])+(h=Ki(t=s[b+40>>2],s[b+44>>2],a,i))|0)|0,f=t),h=_[b+24|0])for(V=s[r+48>>2],t=0;;){if((0|(W=s[(U=t<<2)+R>>2]))<0)break A;if(s[A+U>>2]=W+s[V+(t+T<<2)>>2],(0|h)==(0|(t=t+1|0)))break}if(Cr(s[Z>>2]+m(a,f)|0,A,f),!(!(i=(a=a+1|0)?i:i+1|0)&p[b+80>>2]>a>>>0))break}d=1}if(A&&mr(A),n&&mr(n),d)break t;break a;case 2:if(A=0,t=0,a=0,i=0,(f=_[b+24|0])&&(Ge(t=mf(f<<=1),0,f),Ge(A=mf(f),0,f)),s[b+80>>2])for(;;){if(h=s[b>>2],d=Cr(t,(n=s[h>>2])+(o=(o=s[b+48>>2])+(d=Ki(f=s[b+40>>2],s[b+44>>2],a,i))|0)|0,f),Z=_[b+24|0]){if(R=s[r+48>>2],n=0,1!=(0|Z))for(V=254&Z,o=0;u[(U=n<<1)+A>>1]=l[d+U>>1]+l[R+(n+T<<2)>>1],u[(W=(U=1|n)<<1)+A>>1]=l[d+W>>1]+l[R+(U+T<<2)>>1],n=n+2|0,(0|V)!=(0|(o=o+2|0)););1&Z&&(u[(o=n<<1)+A>>1]=l[o+d>>1]+l[R+(n+T<<2)>>1])}if(Cr(s[h>>2]+m(a,f)|0,A,f),!(!(i=(a=a+1|0)?i:i+1|0)&p[b+80>>2]>a>>>0))break}A&&mr(A),t&&mr(t);break t;case 0:break b;default:break t}if(n=0,t=0,a=0,i=0,(f=_[b+24|0])&&(Ge(t=mf(f),0,f),Ge(n=mf(f),0,f)),s[b+80>>2])for(;;){if(V=s[b>>2],d=Cr(t,(A=s[V>>2])+(o=(o=s[b+48>>2])+(d=Ki(f=s[b+40>>2],s[b+44>>2],a,i))|0)|0,f),Z=_[b+24|0]){if(R=s[r+48>>2],A=0,1!=(0|Z))for(U=254&Z,o=0;c[A+n|0]=_[A+d|0]+_[R+(A+T<<2)|0],c[(h=1|A)+n|0]=_[d+h|0]+_[R+(h+T<<2)|0],A=A+2|0,(0|U)!=(0|(o=o+2|0)););1&Z&&(c[A+n|0]=_[A+d|0]+_[R+(A+T<<2)|0])}if(Cr(s[V>>2]+m(a,f)|0,n,f),!(!(i=(a=a+1|0)?i:i+1|0)&p[b+80>>2]>a>>>0))break}n&&mr(n),t&&mr(t)}T=_[b+24|0]+T|0,o=1}if(k&&mr(k),N&&mr(N),o)break i;k=0;break r}if(t=s[s[r+60>>2]+(G<<2)>>2],n=s[r+36>>2],A=s[40+(0|Ya[s[s[r>>2]+28>>2]](r))>>2],s[e+12>>2]=s[b+56>>2],i=mf(32),s[e>>2]=i,s[e+4>>2]=24,s[e+8>>2]=-2147483616,a=_[1206]|_[1207]<<8|_[1208]<<16|_[1209]<<24,f=_[1202]|_[1203]<<8|_[1204]<<16|_[1205]<<24,c[i+16|0]=f,c[i+17|0]=f>>>8,c[i+18|0]=f>>>16,c[i+19|0]=f>>>24,c[i+20|0]=a,c[i+21|0]=a>>>8,c[i+22|0]=a>>>16,c[i+23|0]=a>>>24,a=_[1198]|_[1199]<<8|_[1200]<<16|_[1201]<<24,f=_[1194]|_[1195]<<8|_[1196]<<16|_[1197]<<24,c[i+8|0]=f,c[i+9|0]=f>>>8,c[i+10|0]=f>>>16,c[i+11|0]=f>>>24,c[i+12|0]=a,c[i+13|0]=a>>>8,c[i+14|0]=a>>>16,c[i+15|0]=a>>>24,a=_[1190]|_[1191]<<8|_[1192]<<16|_[1193]<<24,f=_[1186]|_[1187]<<8|_[1188]<<16|_[1189]<<24,c[0|i]=f,c[i+1|0]=f>>>8,c[i+2|0]=f>>>16,c[i+3|0]=f>>>24,c[i+4|0]=a,c[i+5|0]=a>>>8,c[i+6|0]=a>>>16,c[i+7|0]=a>>>24,c[i+24|0]=0,a=Ue(A,e+12|0,e),c[e+11|0]<0&&mr(s[e>>2]),i=G+1|0,a)Dr(b,t);else{if(A=n+m(G,24)|0,G=s[A+4>>2],a=mf(n=(f=_[b+24|0])<<2),s[e>>2]=1065353216,D=y[A+20>>2],(0|(G=~(-1<<G)))>0&&(y[e>>2]=D/v(0|G)),(0|G)<=0)break e;if(s[t+80>>2])if(f)for(Z=s[s[t>>2]>>2]+s[t+48>>2]|0,V=254&f,U=1&f,o=0,d=0,k=0;;){if(G=s[A+8>>2],D=y[e>>2],N=0,R=0,1!=(0|f))for(;W=Z+(k<<2)|0,y[(h=N<<2)+a>>2]=v(D*v(s[W>>2]))+y[h+G>>2],y[(h|=4)+a>>2]=v(D*v(s[W+4>>2]))+y[h+G>>2],N=N+2|0,k=k+2|0,(0|V)!=(0|(R=R+2|0)););if(U&&(y[(N<<=2)+a>>2]=v(D*v(s[Z+(k<<2)>>2]))+y[N+G>>2],k=k+1|0),Cr(s[s[b+64>>2]>>2]+d|0,a,n),d=n+d|0,!((o=o+1|0)>>>0<p[t+80>>2]))break}else for(N=0,k=0;Cr(s[s[b+64>>2]>>2]+k|0,a,n),k=n+k|0,(N=N+1|0)>>>0<p[t+80>>2];);mr(a)}G=i}if(k=1,F=F+1|0,(0|Ya[s[s[r>>2]+24>>2]](r))>(0|F))continue;break r}break}mr(a),k=0}}else k=1;return Q=e+16|0,0|k},function(r){var e;return s[(r|=0)>>2]=2232,e=s[r+16>>2],s[r+16>>2]=0,e&&Ci(e),0|r},function(r){var e;s[(r|=0)>>2]=2232,e=s[r+16>>2],s[r+16>>2]=0,e&&Ci(e),mr(r)},Rf,function(r,e){return e|=0,s[12+(r|=0)>>2]=-1,s[r+8>>2]=e,1},function(r,e,i){e|=0,i|=0;var f,a=0;return f=s[8+(r|=0)>>2],_[f+24|0]&&Ie(f,s[e+4>>2]-s[e>>2]>>2)&&(a=0|Ya[s[s[r>>2]+32>>2]](r,e,i)),0|a},function(r,e,i){return 1},Aa,function(r,e){r|=0;var i=0,f=0,a=0,t=0,b=0,A=0;t=1;r:if(!((0|Ya[s[s[(e|=0)>>2]+20>>2]](e))<=0))for(;;){if(t=0,-1==(0|(i=lf(s[s[r+4>>2]+4>>2],0|Ya[s[s[e>>2]+24>>2]](e,b)))))break r;a=s[r+4>>2];e:{if(_[a+36|0]<=1){if(0|Ya[s[s[e>>2]+28>>2]](e,s[s[s[a+4>>2]+8>>2]+(i<<2)>>2]))break e;break r}if(f=0,(0|i)<0||(A=s[a+4>>2],s[A+12>>2]-s[A+8>>2]>>2<=(0|i)||(f=s[s[a+8>>2]+(s[s[a+20>>2]+(i<<2)>>2]<<2)>>2],f=0|Ya[s[s[f>>2]+32>>2]](f,i))),!f)break r;if(!(0|Ya[s[s[e>>2]+28>>2]](e,f)))break r}if(t=1,b=b+1|0,!((0|Ya[s[s[e>>2]+20>>2]](e))>(0|b)))break}return 0|t},function(r,e,i){r|=0,i|=0;var f,a,t=0,b=0,A=0,n=0,o=0,k=0,c=0,u=0;if(A=s[(e|=0)>>2],e=s[e+4>>2],f=t=s[s[r+8>>2]+40>>2],a=mf((0|t)<0?-1:t),b=1,!((0|(k=e-A|0))<4||(e=0,c=t,A=(n=s[i+16>>2])+t|0,t=0+s[i+20>>2]|0,t=A>>>0<c>>>0?t+1|0:t,o=s[i+12>>2],b=0,p[i+8>>2]<A>>>0&(0|t)>=(0|o)|(0|t)>(0|o)))){for(k=(0|(b=k>>2))<=1?1:b;n=Cr(a,s[i>>2]+n|0,f),s[i+16>>2]=A,s[i+20>>2]=t,Cr(s[s[s[r+8>>2]+64>>2]>>2]+e|0,n,f),(0|k)!=(0|(u=u+1|0))&&(e=e+f|0,t=0+s[i+20>>2]|0,(0|(t=(A=c+(n=s[i+16>>2])|0)>>>0<c>>>0?t+1|0:t))<=(0|(o=s[i+12>>2]))&p[i+8>>2]>=A>>>0|(0|t)<(0|o)););b=(0|b)<=(0|u)}return mr(a),0|b},function(r){var e,i=0,f=0;if(s[(r|=0)>>2]=2328,i=s[r+60>>2],s[r+60>>2]=0,i&&Ya[s[s[i>>2]+4>>2]](i),(i=s[r+48>>2])&&(s[r+52>>2]=i,mr(i)),e=s[r+36>>2]){if((0|(f=s[r+40>>2]))!=(0|(i=e))){for(;i=s[(f=f-4|0)>>2],s[f>>2]=0,i&&Ya[s[s[i>>2]+4>>2]](i),(0|f)!=(0|e););i=s[r+36>>2]}s[r+40>>2]=e,mr(i)}return s[r>>2]=1984,(i=s[r+16>>2])&&(s[r+20>>2]=i,mr(i)),(i=s[r+4>>2])&&(s[r+8>>2]=i,mr(i)),0|r},function(r){var e,i=0,f=0;if(s[(r|=0)>>2]=2328,i=s[r+60>>2],s[r+60>>2]=0,i&&Ya[s[s[i>>2]+4>>2]](i),(i=s[r+48>>2])&&(s[r+52>>2]=i,mr(i)),e=s[r+36>>2]){if((0|(f=s[r+40>>2]))!=(0|(i=e))){for(;i=s[(f=f-4|0)>>2],s[f>>2]=0,i&&Ya[s[s[i>>2]+4>>2]](i),(0|f)!=(0|e););i=s[r+36>>2]}s[r+40>>2]=e,mr(i)}s[r>>2]=1984,(i=s[r+16>>2])&&(s[r+20>>2]=i,mr(i)),(i=s[r+4>>2])&&(s[r+8>>2]=i,mr(i)),mr(r)},function(r,e){var i=0,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0,c=0,u=0;r:if(Gr(r|=0,e|=0)){if(A=r+36|0,(b=0|Ya[s[s[r>>2]+24>>2]](r))>>>0>(i=(a=s[r+40>>2])-(f=s[r+36>>2])>>2)>>>0)ve(A,b-i|0);else if(!(i>>>0<=b>>>0)){if((0|(f=f+(b<<2)|0))!=(0|a))for(;i=s[(a=a-4|0)>>2],s[a>>2]=0,i&&Ya[s[s[i>>2]+4>>2]](i),(0|f)!=(0|a););s[r+40>>2]=f}if(i=1,!((0|b)<=0)){for(a=0;;){if(!((0|(i=s[e+20>>2]))>=(0|(t=s[e+12>>2]))&(f=s[e+16>>2])>>>0>=p[e+8>>2]|(0|i)>(0|t))&&(t=_[s[e>>2]+f|0],i=(f=f+1|0)?i:i+1|0,s[e+16>>2]=f,s[e+20>>2]=i,f=0|Ya[s[s[r>>2]+48>>2]](r,t),n=(t=a<<2)+s[r+36>>2]|0,i=s[n>>2],s[n>>2]=f,i&&Ya[s[s[i>>2]+4>>2]](i),(i=s[s[A>>2]+t>>2])&&(k=i,c=0|Ya[s[s[r>>2]+28>>2]](r),u=0|Ya[s[s[r>>2]+20>>2]](r,a),o=s[s[i>>2]+8>>2],0|Ya[o](0|k,0|c,0|u)))){if(i=1,(0|b)!=(0|(a=a+1|0)))continue;break r}break}i=0}}return 0|i},function(r,e){e|=0;var i=0,f=0,a=0,t=0,b=0;if((i=s[60+(r|=0)>>2])&&(s[i+4>>2]=r+48,0|Ya[s[s[i>>2]+12>>2]](i))){r:if(!((0|(i=0|Ya[s[s[r>>2]+24>>2]](r)))<=0)){for(;;){if(t=s[4+(0|Ya[s[s[r>>2]+28>>2]](r))>>2],b=0|Ya[s[s[r>>2]+20>>2]](r,f),a=s[r+60>>2],0|Ya[s[s[a>>2]+8>>2]](a,s[s[t+8>>2]+(b<<2)>>2])){if((0|i)!=(0|(f=f+1|0)))continue;break r}break}return 0}f=0,0|Ya[s[s[r>>2]+36>>2]](r,e)&&0|Ya[s[s[r>>2]+40>>2]](r,e)&&(f=0|Ya[s[s[r>>2]+44>>2]](r))}return 0|f},function(r,e){e|=0;var i,f=0;return i=s[16+(r|=0)>>2],f=0,s[r+20>>2]-i>>2<=(0|e)||(f=0,(0|(e=s[(e<<2)+i>>2]))<0||(f=Pe(s[s[r+36>>2]+(e<<2)>>2]))),0|f},function(r,e){e|=0;var i,f=0,a=0,t=0,b=0;if(f=1,!((0|(i=0|Ya[s[s[(r|=0)>>2]+24>>2]](r)))<=0)&&(a=s[s[r+36>>2]>>2],b=r+48|0,f=0,0|Ya[s[s[a>>2]+16>>2]](a,b,e))){for(;(0|i)!=(0|(t=t+1|0))&&(a=s[s[r+36>>2]+(t<<2)>>2],0|Ya[s[s[a>>2]+16>>2]](a,b,e)););f=(0|t)>=(0|i)}return 0|f},function(r,e){e|=0;var i,f=0,a=0,t=0,b=0;if(f=1,!((0|(i=0|Ya[s[s[(r|=0)>>2]+24>>2]](r)))<=0)&&(a=s[s[r+36>>2]>>2],b=r+48|0,f=0,0|Ya[s[s[a>>2]+20>>2]](a,b,e))){for(;(0|i)!=(0|(t=t+1|0))&&(a=s[s[r+36>>2]+(t<<2)>>2],0|Ya[s[s[a>>2]+20>>2]](a,b,e)););f=(0|t)>=(0|i)}return 0|f},function(r){var e,i,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0,u=0;Q=e=Q-16|0,n=1;r:if(!((0|(i=0|Ya[s[s[(r|=0)>>2]+24>>2]](r)))<=0))for(u=r+48|0,n=0;;){if(s[40+(0|Ya[s[s[r>>2]+28>>2]](r))>>2]&&(A=s[(o=b<<2)+s[r+36>>2]>>2],f=s[A+8>>2],(k=Pe(A))&&(A=s[40+(0|Ya[s[s[r>>2]+28>>2]](r))>>2],s[e+12>>2]=s[f+56>>2],f=mf(32),s[e>>2]=f,s[e+4>>2]=24,s[e+8>>2]=-2147483616,a=_[1206]|_[1207]<<8|_[1208]<<16|_[1209]<<24,t=_[1202]|_[1203]<<8|_[1204]<<16|_[1205]<<24,c[f+16|0]=t,c[f+17|0]=t>>>8,c[f+18|0]=t>>>16,c[f+19|0]=t>>>24,c[f+20|0]=a,c[f+21|0]=a>>>8,c[f+22|0]=a>>>16,c[f+23|0]=a>>>24,a=_[1198]|_[1199]<<8|_[1200]<<16|_[1201]<<24,t=_[1194]|_[1195]<<8|_[1196]<<16|_[1197]<<24,c[f+8|0]=t,c[f+9|0]=t>>>8,c[f+10|0]=t>>>16,c[f+11|0]=t>>>24,c[f+12|0]=a,c[f+13|0]=a>>>8,c[f+14|0]=a>>>16,c[f+15|0]=a>>>24,a=_[1190]|_[1191]<<8|_[1192]<<16|_[1193]<<24,t=_[1186]|_[1187]<<8|_[1188]<<16|_[1189]<<24,c[0|f]=t,c[f+1|0]=t>>>8,c[f+2|0]=t>>>16,c[f+3|0]=t>>>24,c[f+4|0]=a,c[f+5|0]=a>>>8,c[f+6|0]=a>>>16,c[f+7|0]=a>>>24,c[f+24|0]=0,f=Ue(A,e+12|0,e),c[e+11|0]<0&&mr(s[e>>2]),f)))Dr(s[s[s[r+36>>2]+o>>2]+8>>2],k);else if(f=s[s[r+36>>2]+(b<<2)>>2],!(0|Ya[s[s[f>>2]+24>>2]](f,u)))break r;if(n=(0|i)<=(0|(b=b+1|0)),(0|b)==(0|i))break}return Q=e+16|0,0|n},function(r,e){r|=0,r=0;r:switch(0|(e|=0)){case 0:return r=mf(20),s[r+12>>2]=-1,s[r+16>>2]=0,s[r+4>>2]=0,s[r+8>>2]=0,s[r>>2]=2232,0|r;case 1:return r=mf(24),s[r+12>>2]=-1,s[r+16>>2]=0,s[r+4>>2]=0,s[r+8>>2]=0,s[r>>2]=2232,s[r+20>>2]=0,s[r>>2]=2448,0|r;case 2:return r=mf(48),s[r+12>>2]=-1,s[r+16>>2]=0,s[r+4>>2]=0,s[r+8>>2]=0,s[r>>2]=2232,s[r+20>>2]=0,s[r>>2]=2448,s[r+24>>2]=1832,s[r>>2]=11048,s[r+32>>2]=0,s[r+36>>2]=0,s[r+28>>2]=-1,s[r+40>>2]=0,s[r+44>>2]=0,0|r;case 3:r=mf(32),s[r+12>>2]=-1,s[r+16>>2]=0,s[r+4>>2]=0,s[r+8>>2]=0,s[r>>2]=2232,s[r+20>>2]=0,s[r>>2]=2448,s[r+24>>2]=1032,s[r>>2]=7028,s[r+28>>2]=-1}return 0|r},kf,sf,Rf,function(r,e){e|=0;var i,f=0;return(i=s[4+(r|=0)>>2])&&(f=1,_[i+36|0]<2)||(f=0|Ya[s[s[r>>2]+48>>2]](r,s[e+4>>2]-s[e>>2]>>2)),0|f},function(r,e,i){r|=0,e|=0;var f,a,t=0,b=0,A=0,n=0,o=0,k=0,u=0;r:if(!((0|(A=f=s[12+(i|=0)>>2]))<=(0|(b=s[i+20>>2]))&(a=s[i+8>>2])>>>0<=(n=s[i+16>>2])>>>0|(0|b)>(0|A))){if(o=s[i>>2],k=c[o+n|0],t=b,t=(A=n+1|0)?t:t+1|0,s[i+16>>2]=A,s[i+20>>2]=t,-2!=(0|k)){if((0|t)>=(0|f)&A>>>0>=a>>>0|(0|t)>(0|f))break r;if(t=c[A+o|0],b=(n=n+2|0)>>>0<2?b+1|0:b,s[i+16>>2]=n,s[i+20>>2]=b,(t-4&255)>>>0<251)break r;b=0|Ya[s[s[r>>2]+40>>2]](r,k,t),t=s[r+20>>2],s[r+20>>2]=b,t&&Ya[s[s[t>>2]+4>>2]](t)}(!(t=s[r+20>>2])||0|Ya[s[s[r>>2]+28>>2]](r,t))&&0|Ya[s[s[r>>2]+36>>2]](r,e,i)&&(!(i=s[r+4>>2])|_[i+36|0]>1||0|Ya[s[s[r>>2]+48>>2]](r,s[e+4>>2]-s[e>>2]>>2))&&(u=1)}return 0|u},Ur,function(r,e,i){r|=0,e|=0;var f,a=0,t=0,b=0,A=0,o=0,k=0,u=0,_=0;Q=f=Q-48|0;r:{if(1==(0|(i|=0))){i=s[r+4>>2],A=s[r+12>>2],s[f+40>>2]=0,s[(r=f)+32>>2]=0,s[r+36>>2]=0,s[r+24>>2]=0,s[r+28>>2]=0,s[r+16>>2]=0,s[r+20>>2]=0,s[r+8>>2]=0,s[r+12>>2]=0,t=r+8|0;e:if(-2!=(0|e)){if(_=s[s[s[i+4>>2]+8>>2]+(A<<2)>>2],1==(0|Ya[s[s[i>>2]+8>>2]](i))){if(k=65535&((r=l[i+36>>1])<<8|r>>>8),r=0,Q=o=Q-32|0,a=s[s[s[i+4>>2]+8>>2]+(A<<2)>>2],!(1!=(0|Ya[s[s[i>>2]+8>>2]](i))|e-1>>>0>5||!(u=0|Ya[s[s[i>>2]+36>>2]](i))|!(b=0|Ya[s[s[i>>2]+44>>2]](i,A))))if(r=0|Ya[s[s[i>>2]+40>>2]](i,A)){i=s[i+44>>2],s[o+12>>2]=r,s[o+8>>2]=i,s[o+20>>2]=b,s[o+16>>2]=b+12,i=o+8|0,r=0;i:{f:switch(e-1|0){case 0:if(r=mf(60),s[r+4>>2]=a,s[r>>2]=3272,e=s[t+4>>2],s[r+8>>2]=s[t>>2],s[r+12>>2]=e,e=s[t+12>>2],s[r+16>>2]=s[t+8>>2],s[r+20>>2]=e,e=s[t+20>>2],s[r+24>>2]=s[t+16>>2],s[r+28>>2]=e,s[r+40>>2]=0,s[r+32>>2]=0,s[r+36>>2]=0,(0|(a=s[t+24>>2]))!=(0|(b=s[t+28>>2]))){if((0|(A=b-a|0))<0)break r;for(e=mf(A),s[r+32>>2]=e,s[r+40>>2]=(-4&A)+e;s[e>>2]=s[a>>2],e=e+4|0,(0|b)!=(0|(a=a+4|0)););s[r+36>>2]=e}e=s[i+4>>2],s[r+44>>2]=s[i>>2],s[r+48>>2]=e,e=s[i+12>>2],s[r+52>>2]=s[i+8>>2],s[r+56>>2]=e,s[r>>2]=2564;break i;case 1:if(r=mf(60),s[r+4>>2]=a,s[r>>2]=3272,e=s[t+4>>2],s[r+8>>2]=s[t>>2],s[r+12>>2]=e,e=s[t+12>>2],s[r+16>>2]=s[t+8>>2],s[r+20>>2]=e,e=s[t+20>>2],s[r+24>>2]=s[t+16>>2],s[r+28>>2]=e,s[r+40>>2]=0,s[r+32>>2]=0,s[r+36>>2]=0,(0|(a=s[t+24>>2]))!=(0|(b=s[t+28>>2]))){if((0|(A=b-a|0))<0)break r;for(e=mf(A),s[r+32>>2]=e,s[r+40>>2]=(-4&A)+e;s[e>>2]=s[a>>2],e=e+4|0,(0|b)!=(0|(a=a+4|0)););s[r+36>>2]=e}e=s[i+4>>2],s[r+44>>2]=s[i>>2],s[r+48>>2]=e,e=s[i+12>>2],s[r+52>>2]=s[i+8>>2],s[r+56>>2]=e,s[r>>2]=3328;break i;case 3:if(r=mf(112),s[r+4>>2]=a,s[r>>2]=3272,e=s[t+4>>2],s[r+8>>2]=s[t>>2],s[r+12>>2]=e,e=s[t+12>>2],s[r+16>>2]=s[t+8>>2],s[r+20>>2]=e,e=s[t+20>>2],s[r+24>>2]=s[t+16>>2],s[r+28>>2]=e,s[r+40>>2]=0,s[r+32>>2]=0,s[r+36>>2]=0,(0|(a=s[t+24>>2]))!=(0|(b=s[t+28>>2]))){if((0|(A=b-a|0))<0)break r;for(e=mf(A),s[r+32>>2]=e,s[r+40>>2]=(-4&A)+e;s[e>>2]=s[a>>2],e=e+4|0,(0|b)!=(0|(a=a+4|0)););s[r+36>>2]=e}e=s[i+4>>2],s[r+44>>2]=s[i>>2],s[r+48>>2]=e,e=s[i+12>>2],s[r+52>>2]=s[i+8>>2],s[r+56>>2]=e,s[r+60>>2]=0,s[r+64>>2]=0,s[r>>2]=3564,s[r+68>>2]=0,s[r+72>>2]=0,s[r+76>>2]=0,s[r+80>>2]=0,s[r+84>>2]=0,s[r+88>>2]=0,s[r+92>>2]=0,s[r+96>>2]=0,s[r+100>>2]=0,s[r+104>>2]=0,s[r+108>>2]=0;break i;case 2:if(r=mf(92),s[r+4>>2]=a,s[r>>2]=3272,e=s[t+4>>2],s[r+8>>2]=s[t>>2],s[r+12>>2]=e,e=s[t+12>>2],s[r+16>>2]=s[t+8>>2],s[r+20>>2]=e,e=s[t+20>>2],s[r+24>>2]=s[t+16>>2],s[r+28>>2]=e,s[r+40>>2]=0,s[r+32>>2]=0,s[r+36>>2]=0,(0|(a=s[t+24>>2]))!=(0|(b=s[t+28>>2]))){if((0|(A=b-a|0))<0)break r;for(e=mf(A),s[r+32>>2]=e,s[r+40>>2]=(-4&A)+e;s[e>>2]=s[a>>2],e=e+4|0,(0|b)!=(0|(a=a+4|0)););s[r+36>>2]=e}e=s[i+4>>2],s[r+44>>2]=s[i>>2],s[r+48>>2]=e,e=s[i+12>>2],s[r+52>>2]=s[i+8>>2],s[r+56>>2]=e,s[r+60>>2]=0,s[r+64>>2]=0,s[r>>2]=3812,s[r+68>>2]=0,s[r+72>>2]=0,s[r+76>>2]=0,s[r+80>>2]=0,s[r+84>>2]=0,s[r+88>>2]=k;break i;case 4:if(r=mf(104),s[r+4>>2]=a,s[r>>2]=3272,e=s[t+4>>2],s[r+8>>2]=s[t>>2],s[r+12>>2]=e,e=s[t+12>>2],s[r+16>>2]=s[t+8>>2],s[r+20>>2]=e,e=s[t+20>>2],s[r+24>>2]=s[t+16>>2],s[r+28>>2]=e,s[r+40>>2]=0,s[r+32>>2]=0,s[r+36>>2]=0,(0|(a=s[t+24>>2]))!=(0|(b=s[t+28>>2]))){if((0|(A=b-a|0))<0)break r;for(e=mf(A),s[r+32>>2]=e,s[r+40>>2]=(-4&A)+e;s[e>>2]=s[a>>2],e=e+4|0,(0|b)!=(0|(a=a+4|0)););s[r+36>>2]=e}e=s[i+4>>2],s[r+44>>2]=s[i>>2],s[r+48>>2]=e,e=s[i+12>>2],s[r+52>>2]=s[i+8>>2],s[r+56>>2]=e,s[r+84>>2]=0,s[r+76>>2]=0,s[r+80>>2]=0,s[r+60>>2]=0,s[r+64>>2]=0,s[r>>2]=4040,e=s[i+4>>2],s[r+88>>2]=s[i>>2],s[r+92>>2]=e,e=s[i+12>>2],s[r+96>>2]=s[i+8>>2],s[r+100>>2]=e;break i;case 5:break f;default:break i}if(r=mf(128),s[r+4>>2]=a,s[r>>2]=3272,e=s[t+4>>2],s[r+8>>2]=s[t>>2],s[r+12>>2]=e,e=s[t+12>>2],s[r+16>>2]=s[t+8>>2],s[r+20>>2]=e,e=s[t+20>>2],s[r+24>>2]=s[t+16>>2],s[r+28>>2]=e,s[r+40>>2]=0,s[r+32>>2]=0,s[r+36>>2]=0,(0|(e=s[t+28>>2]))!=(0|(a=s[t+24>>2]))){if((0|(a=e-a|0))<0)break r;if(e=mf(a),s[r+36>>2]=e,s[r+32>>2]=e,s[r+40>>2]=(-4&a)+e,(0|(a=s[t+24>>2]))!=(0|(b=s[t+28>>2])))for(;s[e>>2]=s[a>>2],e=e+4|0,(0|b)!=(0|(a=a+4|0)););s[r+36>>2]=e}s[r>>2]=3216,e=s[i+4>>2],s[r+44>>2]=s[i>>2],s[r+48>>2]=e,e=s[i+12>>2],s[r+52>>2]=s[i+8>>2],s[r+56>>2]=e,s[(e=r- -64|0)>>2]=0,s[e+4>>2]=0,s[r+60>>2]=4904,s[r>>2]=4276,e=s[i+4>>2],s[r+72>>2]=s[i>>2],s[r+76>>2]=e,e=s[i+12>>2],s[r+80>>2]=s[i+8>>2],s[r+84>>2]=e,s[r+104>>2]=1065353216,s[r+108>>2]=-1,s[r+96>>2]=-1,s[r+100>>2]=-1,s[r+88>>2]=1,s[r+92>>2]=-1,s[r+60>>2]=4512,s[r+112>>2]=0,s[r+116>>2]=0,c[r+117|0]=0,c[r+118|0]=0,c[r+119|0]=0,c[r+120|0]=0,c[r+121|0]=0,c[r+122|0]=0,c[r+123|0]=0,c[r+124|0]=0}}else{r=s[i+44>>2],s[o+12>>2]=u,s[o+8>>2]=r,s[o+20>>2]=b,s[o+16>>2]=b+12,i=o+8|0,r=0;i:{f:switch(e-1|0){case 0:if(r=mf(60),s[r+4>>2]=a,s[r>>2]=3272,e=s[t+4>>2],s[r+8>>2]=s[t>>2],s[r+12>>2]=e,e=s[t+12>>2],s[r+16>>2]=s[t+8>>2],s[r+20>>2]=e,e=s[t+20>>2],s[r+24>>2]=s[t+16>>2],s[r+28>>2]=e,s[r+40>>2]=0,s[r+32>>2]=0,s[r+36>>2]=0,(0|(a=s[t+24>>2]))!=(0|(b=s[t+28>>2]))){if((0|(A=b-a|0))<0)break r;for(e=mf(A),s[r+32>>2]=e,s[r+40>>2]=(-4&A)+e;s[e>>2]=s[a>>2],e=e+4|0,(0|b)!=(0|(a=a+4|0)););s[r+36>>2]=e}e=s[i+4>>2],s[r+44>>2]=s[i>>2],s[r+48>>2]=e,e=s[i+12>>2],s[r+52>>2]=s[i+8>>2],s[r+56>>2]=e,s[r>>2]=4932;break i;case 1:if(r=mf(60),s[r+4>>2]=a,s[r>>2]=3272,e=s[t+4>>2],s[r+8>>2]=s[t>>2],s[r+12>>2]=e,e=s[t+12>>2],s[r+16>>2]=s[t+8>>2],s[r+20>>2]=e,e=s[t+20>>2],s[r+24>>2]=s[t+16>>2],s[r+28>>2]=e,s[r+40>>2]=0,s[r+32>>2]=0,s[r+36>>2]=0,(0|(a=s[t+24>>2]))!=(0|(b=s[t+28>>2]))){if((0|(A=b-a|0))<0)break r;for(e=mf(A),s[r+32>>2]=e,s[r+40>>2]=(-4&A)+e;s[e>>2]=s[a>>2],e=e+4|0,(0|b)!=(0|(a=a+4|0)););s[r+36>>2]=e}e=s[i+4>>2],s[r+44>>2]=s[i>>2],s[r+48>>2]=e,e=s[i+12>>2],s[r+52>>2]=s[i+8>>2],s[r+56>>2]=e,s[r>>2]=5356;break i;case 3:if(r=mf(112),s[r+4>>2]=a,s[r>>2]=3272,e=s[t+4>>2],s[r+8>>2]=s[t>>2],s[r+12>>2]=e,e=s[t+12>>2],s[r+16>>2]=s[t+8>>2],s[r+20>>2]=e,e=s[t+20>>2],s[r+24>>2]=s[t+16>>2],s[r+28>>2]=e,s[r+40>>2]=0,s[r+32>>2]=0,s[r+36>>2]=0,(0|(a=s[t+24>>2]))!=(0|(b=s[t+28>>2]))){if((0|(A=b-a|0))<0)break r;for(e=mf(A),s[r+32>>2]=e,s[r+40>>2]=(-4&A)+e;s[e>>2]=s[a>>2],e=e+4|0,(0|b)!=(0|(a=a+4|0)););s[r+36>>2]=e}e=s[i+4>>2],s[r+44>>2]=s[i>>2],s[r+48>>2]=e,e=s[i+12>>2],s[r+52>>2]=s[i+8>>2],s[r+56>>2]=e,s[r+60>>2]=0,s[r+64>>2]=0,s[r>>2]=5580,s[r+68>>2]=0,s[r+72>>2]=0,s[r+76>>2]=0,s[r+80>>2]=0,s[r+84>>2]=0,s[r+88>>2]=0,s[r+92>>2]=0,s[r+96>>2]=0,s[r+100>>2]=0,s[r+104>>2]=0,s[r+108>>2]=0;break i;case 2:if(r=mf(92),s[r+4>>2]=a,s[r>>2]=3272,e=s[t+4>>2],s[r+8>>2]=s[t>>2],s[r+12>>2]=e,e=s[t+12>>2],s[r+16>>2]=s[t+8>>2],s[r+20>>2]=e,e=s[t+20>>2],s[r+24>>2]=s[t+16>>2],s[r+28>>2]=e,s[r+40>>2]=0,s[r+32>>2]=0,s[r+36>>2]=0,(0|(a=s[t+24>>2]))!=(0|(b=s[t+28>>2]))){if((0|(A=b-a|0))<0)break r;for(e=mf(A),s[r+32>>2]=e,s[r+40>>2]=(-4&A)+e;s[e>>2]=s[a>>2],e=e+4|0,(0|b)!=(0|(a=a+4|0)););s[r+36>>2]=e}e=s[i+4>>2],s[r+44>>2]=s[i>>2],s[r+48>>2]=e,e=s[i+12>>2],s[r+52>>2]=s[i+8>>2],s[r+56>>2]=e,s[r+60>>2]=0,s[r+64>>2]=0,s[r>>2]=5816,s[r+68>>2]=0,s[r+72>>2]=0,s[r+76>>2]=0,s[r+80>>2]=0,s[r+84>>2]=0,s[r+88>>2]=k;break i;case 4:if(r=mf(104),s[r+4>>2]=a,s[r>>2]=3272,e=s[t+4>>2],s[r+8>>2]=s[t>>2],s[r+12>>2]=e,e=s[t+12>>2],s[r+16>>2]=s[t+8>>2],s[r+20>>2]=e,e=s[t+20>>2],s[r+24>>2]=s[t+16>>2],s[r+28>>2]=e,s[r+40>>2]=0,s[r+32>>2]=0,s[r+36>>2]=0,(0|(a=s[t+24>>2]))!=(0|(b=s[t+28>>2]))){if((0|(A=b-a|0))<0)break r;for(e=mf(A),s[r+32>>2]=e,s[r+40>>2]=(-4&A)+e;s[e>>2]=s[a>>2],e=e+4|0,(0|b)!=(0|(a=a+4|0)););s[r+36>>2]=e}e=s[i+4>>2],s[r+44>>2]=s[i>>2],s[r+48>>2]=e,e=s[i+12>>2],s[r+52>>2]=s[i+8>>2],s[r+56>>2]=e,s[r+84>>2]=0,s[r+76>>2]=0,s[r+80>>2]=0,s[r+60>>2]=0,s[r+64>>2]=0,s[r>>2]=6032,e=s[i+4>>2],s[r+88>>2]=s[i>>2],s[r+92>>2]=e,e=s[i+12>>2],s[r+96>>2]=s[i+8>>2],s[r+100>>2]=e;break i;case 5:break f;default:break i}if(r=mf(128),s[r+4>>2]=a,s[r>>2]=3272,e=s[t+4>>2],s[r+8>>2]=s[t>>2],s[r+12>>2]=e,e=s[t+12>>2],s[r+16>>2]=s[t+8>>2],s[r+20>>2]=e,e=s[t+20>>2],s[r+24>>2]=s[t+16>>2],s[r+28>>2]=e,s[r+40>>2]=0,s[r+32>>2]=0,s[r+36>>2]=0,(0|(e=s[t+28>>2]))!=(0|(a=s[t+24>>2]))){if((0|(a=e-a|0))<0)break r;if(e=mf(a),s[r+36>>2]=e,s[r+32>>2]=e,s[r+40>>2]=(-4&a)+e,(0|(a=s[t+24>>2]))!=(0|(b=s[t+28>>2])))for(;s[e>>2]=s[a>>2],e=e+4|0,(0|b)!=(0|(a=a+4|0)););s[r+36>>2]=e}s[r>>2]=5300,e=s[i+4>>2],s[r+44>>2]=s[i>>2],s[r+48>>2]=e,e=s[i+12>>2],s[r+52>>2]=s[i+8>>2],s[r+56>>2]=e,s[(e=r- -64|0)>>2]=0,s[e+4>>2]=0,s[r+60>>2]=6840,s[r>>2]=6256,e=s[i+4>>2],s[r+72>>2]=s[i>>2],s[r+76>>2]=e,e=s[i+12>>2],s[r+80>>2]=s[i+8>>2],s[r+84>>2]=e,s[r+104>>2]=1065353216,s[r+108>>2]=-1,s[r+96>>2]=-1,s[r+100>>2]=-1,s[r+88>>2]=1,s[r+92>>2]=-1,s[r+60>>2]=6476,s[r+112>>2]=0,s[r+116>>2]=0,c[r+117|0]=0,c[r+118|0]=0,c[r+119|0]=0,c[r+120|0]=0,c[r+121|0]=0,c[r+122|0]=0,c[r+123|0]=0,c[r+124|0]=0}}if(Q=o+32|0,a=r,r)break e}if(a=mf(44),s[a+4>>2]=_,s[a>>2]=3272,r=s[t+4>>2],s[a+8>>2]=s[t>>2],s[a+12>>2]=r,r=s[t+12>>2],s[a+16>>2]=s[t+8>>2],s[a+20>>2]=r,r=s[t+20>>2],s[a+24>>2]=s[t+16>>2],s[a+28>>2]=r,s[a+40>>2]=0,s[a+32>>2]=0,s[a+36>>2]=0,(0|(i=s[t+24>>2]))!=(0|(r=s[t+28>>2]))){if((0|(e=r-i|0))<0)break r;for(t=mf(e),s[a+32>>2]=t,s[a+40>>2]=(-4&e)+t;s[t>>2]=s[i>>2],t=t+4|0,(0|r)!=(0|(i=i+4|0)););s[a+36>>2]=t}s[a>>2]=6868}t=a,(r=s[f+32>>2])&&(s[f+36>>2]=r,mr(r))}return Q=f+48|0,0|t}ha(),n()},function(r){return _[s[8+(r|=0)>>2]+24|0]},function(r,e){e|=0;var i,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0,l=0,p=0,y=0,d=0;i=r|=0;r:{e:{i:{f:{a:{t:{b:{A:switch(r=s[r+8>>2],s[r+28>>2]-1|0){case 4:break i;case 5:break f;case 2:break a;case 3:break t;case 0:break b;case 1:break A;default:break r}if(f=mf(b=_[r+24|0]),r=s[i+16>>2],A=s[r+80>>2]?s[s[r>>2]>>2]+s[r+48>>2]|0:0,!e)break e;if(b){for(d=252&b,l=3&b,n=b>>>0<4;;){if(r=0,t=0,!n)for(;k=A+(a<<2)|0,c[r+f|0]=s[k>>2],c[(1|r)+f|0]=s[k+4>>2],c[(2|r)+f|0]=s[k+8>>2],c[(3|r)+f|0]=s[k+12>>2],r=r+4|0,a=a+4|0,(0|d)!=(0|(t=t+4|0)););if(t=0,l)for(;c[r+f|0]=s[A+(a<<2)>>2],r=r+1|0,a=a+1|0,(0|l)!=(0|(t=t+1|0)););if(Cr(s[s[s[i+8>>2]+64>>2]>>2]+p|0,f,b),p=b+p|0,(0|(y=y+1|0))==(0|e))break}break e}if(r=0,1!=(0|e))for(A=-2&e;Cr(s[s[s[i+8>>2]+64>>2]>>2]+r|0,f,b),Cr((r=r+b|0)+s[s[s[i+8>>2]+64>>2]>>2]|0,f,b),r=r+b|0,(0|A)!=(0|(a=a+2|0)););if(!(1&e))break e;Cr(s[s[s[i+8>>2]+64>>2]>>2]+r|0,f,b);break e}if(f=mf(b=_[r+24|0]),r=s[i+16>>2],A=s[r+80>>2]?s[s[r>>2]>>2]+s[r+48>>2]|0:0,!e)break e;if(b){for(d=252&b,l=3&b,n=b>>>0<4;;){if(r=0,t=0,!n)for(;k=A+(a<<2)|0,c[r+f|0]=s[k>>2],c[(1|r)+f|0]=s[k+4>>2],c[(2|r)+f|0]=s[k+8>>2],c[(3|r)+f|0]=s[k+12>>2],r=r+4|0,a=a+4|0,(0|d)!=(0|(t=t+4|0)););if(t=0,l)for(;c[r+f|0]=s[A+(a<<2)>>2],r=r+1|0,a=a+1|0,(0|l)!=(0|(t=t+1|0)););if(Cr(s[s[s[i+8>>2]+64>>2]>>2]+p|0,f,b),p=b+p|0,(0|(y=y+1|0))==(0|e))break}break e}if(r=0,1!=(0|e))for(A=-2&e;Cr(s[s[s[i+8>>2]+64>>2]>>2]+r|0,f,b),Cr((r=r+b|0)+s[s[s[i+8>>2]+64>>2]>>2]|0,f,b),r=r+b|0,(0|A)!=(0|(a=a+2|0)););if(!(1&e))break e;Cr(s[s[s[i+8>>2]+64>>2]>>2]+r|0,f,b);break e}if(f=mf(o=(n=_[r+24|0])<<1),r=s[i+16>>2],A=s[r+80>>2]?s[s[r>>2]>>2]+s[r+48>>2]|0:0,!e)break e;if(n){for(d=252&n,l=3&n,n=n>>>0<4;;){if(r=0,t=0,!n)for(;k=A+(a<<2)|0,u[(b=r<<1)+f>>1]=s[k>>2],u[(2|b)+f>>1]=s[k+4>>2],u[(4|b)+f>>1]=s[k+8>>2],u[(6|b)+f>>1]=s[k+12>>2],r=r+4|0,a=a+4|0,(0|d)!=(0|(t=t+4|0)););if(t=0,l)for(;u[(r<<1)+f>>1]=s[A+(a<<2)>>2],r=r+1|0,a=a+1|0,(0|l)!=(0|(t=t+1|0)););if(Cr(s[s[s[i+8>>2]+64>>2]>>2]+y|0,f,o),y=o+y|0,(0|(p=p+1|0))==(0|e))break}break e}if(r=0,1!=(0|e))for(A=-2&e;Cr(s[s[s[i+8>>2]+64>>2]>>2]+r|0,f,o),Cr((r=r+o|0)+s[s[s[i+8>>2]+64>>2]>>2]|0,f,o),r=r+o|0,(0|A)!=(0|(a=a+2|0)););if(!(1&e))break e;Cr(s[s[s[i+8>>2]+64>>2]>>2]+r|0,f,o);break e}if(f=mf(o=(n=_[r+24|0])<<1),r=s[i+16>>2],A=s[r+80>>2]?s[s[r>>2]>>2]+s[r+48>>2]|0:0,!e)break e;if(n){for(d=252&n,l=3&n,n=n>>>0<4;;){if(r=0,t=0,!n)for(;k=A+(a<<2)|0,u[(b=r<<1)+f>>1]=s[k>>2],u[(2|b)+f>>1]=s[k+4>>2],u[(4|b)+f>>1]=s[k+8>>2],u[(6|b)+f>>1]=s[k+12>>2],r=r+4|0,a=a+4|0,(0|d)!=(0|(t=t+4|0)););if(t=0,l)for(;u[(r<<1)+f>>1]=s[A+(a<<2)>>2],r=r+1|0,a=a+1|0,(0|l)!=(0|(t=t+1|0)););if(Cr(s[s[s[i+8>>2]+64>>2]>>2]+y|0,f,o),y=o+y|0,(0|(p=p+1|0))==(0|e))break}break e}if(r=0,1!=(0|e))for(A=-2&e;Cr(s[s[s[i+8>>2]+64>>2]>>2]+r|0,f,o),Cr((r=r+o|0)+s[s[s[i+8>>2]+64>>2]>>2]|0,f,o),r=r+o|0,(0|A)!=(0|(a=a+2|0)););if(!(1&e))break e;Cr(s[s[s[i+8>>2]+64>>2]>>2]+r|0,f,o);break e}if(f=mf(o=(n=_[r+24|0])<<2),r=s[i+16>>2],A=s[r+80>>2]?s[s[r>>2]>>2]+s[r+48>>2]|0:0,!e)break e;if(n){for(d=252&n,l=3&n,n=n>>>0<4;;){if(r=0,t=0,!n)for(;k=A+(a<<2)|0,s[(b=r<<2)+f>>2]=s[k>>2],s[(4|b)+f>>2]=s[k+4>>2],s[(8|b)+f>>2]=s[k+8>>2],s[(12|b)+f>>2]=s[k+12>>2],r=r+4|0,a=a+4|0,(0|d)!=(0|(t=t+4|0)););if(t=0,l)for(;s[(r<<2)+f>>2]=s[A+(a<<2)>>2],r=r+1|0,a=a+1|0,(0|l)!=(0|(t=t+1|0)););if(Cr(s[s[s[i+8>>2]+64>>2]>>2]+y|0,f,o),y=o+y|0,(0|(p=p+1|0))==(0|e))break}break e}if(r=0,1!=(0|e))for(A=-2&e;Cr(s[s[s[i+8>>2]+64>>2]>>2]+r|0,f,o),Cr((r=r+o|0)+s[s[s[i+8>>2]+64>>2]>>2]|0,f,o),r=r+o|0,(0|A)!=(0|(a=a+2|0)););if(!(1&e))break e;Cr(s[s[s[i+8>>2]+64>>2]>>2]+r|0,f,o);break e}if(f=mf(o=(n=_[r+24|0])<<2),r=s[i+16>>2],A=s[r+80>>2]?s[s[r>>2]>>2]+s[r+48>>2]|0:0,e)if(n)for(d=252&n,l=3&n,n=n>>>0<4;;){if(r=0,t=0,!n)for(;k=A+(a<<2)|0,s[(b=r<<2)+f>>2]=s[k>>2],s[(4|b)+f>>2]=s[k+4>>2],s[(8|b)+f>>2]=s[k+8>>2],s[(12|b)+f>>2]=s[k+12>>2],r=r+4|0,a=a+4|0,(0|d)!=(0|(t=t+4|0)););if(t=0,l)for(;s[(r<<2)+f>>2]=s[A+(a<<2)>>2],r=r+1|0,a=a+1|0,(0|l)!=(0|(t=t+1|0)););if(Cr(s[s[s[i+8>>2]+64>>2]>>2]+y|0,f,o),y=o+y|0,(0|(p=p+1|0))==(0|e))break}else{if(r=0,1!=(0|e))for(A=-2&e;Cr(s[s[s[i+8>>2]+64>>2]>>2]+r|0,f,o),Cr((r=r+o|0)+s[s[s[i+8>>2]+64>>2]>>2]|0,f,o),r=r+o|0,(0|A)!=(0|(a=a+2|0)););1&e&&Cr(s[s[s[i+8>>2]+64>>2]>>2]+r|0,f,o)}}mr(f),f=1}return 0|f},function(r){var e;return s[(r|=0)>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),0|r},Ff,ma,aa,Gf,la,fa,na,la,ma,function(r,e){r|=0;var i,f,a,t,b=0,A=0,n=0,o=0,k=0,c=0;return A=s[8+(e|=0)>>2],i=n=s[e+12>>2],t=n=s[e+20>>2],a=b=(f=s[e+16>>2])+4|0,b>>>0>A>>>0&(0|(n=b>>>0<4?n+1|0:n))>=(0|i)|(0|n)>(0|i)||(k=s[e>>2],o=_[0|(b=k+f|0)]|_[b+1|0]<<8|_[b+2|0]<<16|_[b+3|0]<<24,s[e+16>>2]=a,s[e+20>>2]=n,b=A,A=t,b>>>0<(n=f+8|0)>>>0&(0|(A=n>>>0<8?A+1|0:A))>=(0|i)|(0|A)>(0|i)||(b=_[0|(b=a+k|0)]|_[b+1|0]<<8|_[b+2|0]<<16|_[b+3|0]<<24,s[e+16>>2]=n,s[e+20>>2]=A,(0|b)<(0|o)||(s[r+16>>2]=b,s[r+12>>2]=o,!(A=(b>>31)-((o>>31)+(b>>>0<o>>>0)|0)|0)&(e=b-o|0)>>>0>2147483646|A||(c=1,A=e+1|0,s[r+20>>2]=A,e=A>>>1|0,s[r+24>>2]=e,s[r+28>>2]=0-e,1&A||(s[r+24>>2]=e-1))))),0|c},function(r,e,i,f,a,t){e|=0,i|=0,f|=0,a|=0,t|=0;var b,A,o,k,c,u=0,_=0,l=0,p=0,y=0,d=0,v=0,h=0,R=0,N=0,Z=0;if(s[8+(r|=0)>>2]=a,_=s[(A=r+32|0)>>2],(t=s[r+36>>2]-_>>2)>>>0<a>>>0?(ai(A,a-t|0),f=s[r+8>>2]):(f=a)>>>0>=t>>>0||(s[r+36>>2]=_+(a<<2),f=a),c=s[r+52>>2],o=s[r+48>>2],t=0,b=Ge(mf(_=a>>>0>1073741823?-1:a<<2),0,_),!((0|f)<=0)){for(u=s[r+32>>2];(0|(_=s[(f=t<<2)+b>>2]))>(0|(l=s[r+16>>2]))?s[f+u>>2]=l:(f=f+u|0,l=s[r+12>>2],s[f>>2]=(0|l)>(0|_)?l:_),(0|(f=s[r+8>>2]))>(0|(t=t+1|0)););if(!((0|f)<=0))for(t=0;;){f=(_=t<<2)+i|0,_=s[e+_>>2]+s[u+_>>2]|0,s[f>>2]=_;r:{if((0|_)>s[r+16>>2])_=_-s[r+20>>2]|0;else{if((0|_)>=s[r+12>>2])break r;_=_+s[r+20>>2]|0}s[f>>2]=_}if(!((0|(f=s[r+8>>2]))>(0|(t=t+1|0))))break}}if(t=s[r+56>>2],k=s[t>>2],(0|(t=s[t+4>>2]-k|0))>=5)for(R=(d=t>>>2|0)>>>0<=2?2:d,N=-2&a,Z=1&a,_=1;;){r:{e:{if((0|_)!=(0|d)){if(h=m(a,_),-1==(0|(t=s[(_<<2)+k>>2]))|s[s[o>>2]+(t>>>3&536870908)>>2]>>>t&1)break e;if(-1==(0|(t=s[s[s[o+64>>2]+12>>2]+(t<<2)>>2])))break e;if(l=s[c>>2],u=s[o+28>>2],(0|(y=s[l+(s[u+(t<<2)>>2]<<2)>>2]))>=(0|_))break e;if((0|(p=s[l+(s[u+((((p=t+1|0)>>>0)%3|0?p:t-2)<<2)>>2]<<2)>>2]))>=(0|_))break e;if((0|(t=s[l+(s[u+(t+((t>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2]))>=(0|_))break e;if(!((0|a)<=0)){if(u=m(a,t),l=m(a,p),y=m(a,y),t=0,v=0,1!=(0|a))for(;s[(t<<2)+b>>2]=(s[(t+u<<2)+i>>2]+s[(t+l<<2)+i>>2]|0)-s[(t+y<<2)+i>>2],s[((p=1|t)<<2)+b>>2]=(s[(u+p<<2)+i>>2]+s[(l+p<<2)+i>>2]|0)-s[(y+p<<2)+i>>2],t=t+2|0,(0|N)!=(0|(v=v+2|0)););Z&&(s[(t<<2)+b>>2]=(s[(t+u<<2)+i>>2]+s[(t+l<<2)+i>>2]|0)-s[(t+y<<2)+i>>2])}if((0|f)<=0)break r;for(l=s[A>>2],t=0;(0|(u=s[(f=t<<2)+b>>2]))>(0|(y=s[r+16>>2]))?s[f+l>>2]=y:(f=f+l|0,y=s[r+12>>2],s[f>>2]=(0|y)>(0|u)?y:u),(0|(f=s[r+8>>2]))>(0|(t=t+1|0)););if(t=0,(0|f)<=0)break r;for(y=(f=h<<2)+i|0,p=e+f|0;;){f=(u=t<<2)+y|0,u=s[u+p>>2]+s[u+l>>2]|0,s[f>>2]=u;i:{if((0|u)>s[r+16>>2])u=u-s[r+20>>2]|0;else{if((0|u)>=s[r+12>>2])break i;u=u+s[r+20>>2]|0}s[f>>2]=u}if(!((0|(f=s[r+8>>2]))>(0|(t=t+1|0))))break}break r}Za(),n()}if(!((0|f)<=0)){for(y=(m(_-1|0,a)<<2)+i|0,l=s[A>>2],t=0;(0|(u=s[(f=t<<2)+y>>2]))>(0|(p=s[r+16>>2]))?s[f+l>>2]=p:(f=f+l|0,p=s[r+12>>2],s[f>>2]=(0|p)>(0|u)?p:u),(0|(f=s[r+8>>2]))>(0|(t=t+1|0)););if(t=0,!((0|f)<=0))for(y=(f=h<<2)+i|0,p=e+f|0;;){f=(u=t<<2)+y|0,u=s[u+p>>2]+s[u+l>>2]|0,s[f>>2]=u;e:{if((0|u)>s[r+16>>2])u=u-s[r+20>>2]|0;else{if((0|u)>=s[r+12>>2])break e;u=u+s[r+20>>2]|0}s[f>>2]=u}if(!((0|(f=s[r+8>>2]))>(0|(t=t+1|0))))break}}}if((0|R)==(0|(_=_+1|0)))break}return mr(b),1},Ga,Ga,Ff,ya,Gf,function(r,e,i,f,a,t){e|=0,i|=0,f|=0,a|=0,t|=0;var b,A,o,k,c,u=0,_=0,l=0,p=0,y=0,d=0,v=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0,V=0,T=0,D=0,F=0,B=0,E=0;if(s[8+(r|=0)>>2]=a,u=s[(o=r+32|0)>>2],(t=s[r+36>>2]-u>>2)>>>0<a>>>0?(ai(o,a-t|0),f=s[r+8>>2]):(f=a)>>>0>=t>>>0||(s[r+36>>2]=u+(a<<2),f=a),k=a<<2,b=Ge(mf(t=a>>>0>1073741823?-1:k),0,t),A=Ge(mf(t),0,t),!((0|f)<=0)){for(l=s[r+32>>2];(0|(t=s[(f=_<<2)+b>>2]))>(0|(u=s[r+16>>2]))?s[f+l>>2]=u:(f=f+l|0,u=s[r+12>>2],s[f>>2]=(0|u)>(0|t)?u:t),(0|(f=s[r+8>>2]))>(0|(_=_+1|0)););if(!((0|f)<=0))for(t=0;;){f=(u=t<<2)+i|0,u=s[e+u>>2]+s[u+l>>2]|0,s[f>>2]=u;r:{if((0|u)>s[r+16>>2])u=u-s[r+20>>2]|0;else{if((0|u)>=s[r+12>>2])break r;u=u+s[r+20>>2]|0}s[f>>2]=u}if(!((0|(f=s[r+8>>2]))>(0|(t=t+1|0))))break}}if(t=s[r+56>>2],c=s[t>>2],(0|(t=s[t+4>>2]-c|0))>=5)for(F=s[r+52>>2],N=s[r+48>>2],B=(G=t>>>2|0)>>>0<=2?2:G,U=-2&a,W=1&a,E=-4&a,V=3&a,T=a-1|0,v=1;;){r:{e:{i:{f:if((0|v)==(0|G))Za(),n();else{if(u=s[(v<<2)+c>>2],(Z=(0|a)<=0)||Ge(b,0,k),-1==(0|u)){l=m(a,v);break e}for(D=s[N>>2],d=0,t=u;;){if(!(s[(t>>>3&536870908)+D>>2]>>>t&1||-1==(0|(l=s[s[s[N+64>>2]+12>>2]+(t<<2)>>2]))||(p=s[F>>2],_=s[N+28>>2],(0|(h=s[p+(s[_+(l<<2)>>2]<<2)>>2]))>=(0|v)||(0|(y=s[p+(s[_+((((y=l+1|0)>>>0)%3|0?y:l-2)<<2)>>2]<<2)>>2]))>=(0|v)||(0|(l=s[p+(s[_+(l+((l>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2]))>=(0|v)))){if(!Z){if(l=m(a,l),p=m(a,y),h=m(a,h),_=0,R=0,T)for(;s[(_<<2)+A>>2]=(s[(_+l<<2)+i>>2]+s[(_+p<<2)+i>>2]|0)-s[(_+h<<2)+i>>2],s[((y=1|_)<<2)+A>>2]=(s[(l+y<<2)+i>>2]+s[(p+y<<2)+i>>2]|0)-s[(y+h<<2)+i>>2],_=_+2|0,(0|U)!=(0|(R=R+2|0)););if(W&&(s[(_<<2)+A>>2]=(s[(_+l<<2)+i>>2]+s[(_+p<<2)+i>>2]|0)-s[(_+h<<2)+i>>2]),!Z){if(h=0,_=0,l=0,a>>>0>3)for(;s[(y=(p=_<<2)+b|0)>>2]=s[p+A>>2]+s[y>>2],s[(R=(y=4|p)+b|0)>>2]=s[y+A>>2]+s[R>>2],s[(R=(y=8|p)+b|0)>>2]=s[y+A>>2]+s[R>>2],s[(y=(p|=12)+b|0)>>2]=s[p+A>>2]+s[y>>2],_=_+4|0,(0|E)!=(0|(l=l+4|0)););if(V)for(;s[(p=(l=_<<2)+b|0)>>2]=s[l+A>>2]+s[p>>2],_=_+1|0,(0|V)!=(0|(h=h+1|0)););}}d=d+1|0}a:{if((t>>>0)%3|0)_=t-1|0;else if(l=-1,-1==(0|(_=t+2|0)))break a;l=-1,s[(_>>>3&536870908)+D>>2]>>>_&1||(l=-1,-1!=(0|(t=s[s[s[N+64>>2]+12>>2]+(_<<2)>>2]))&&(l=t-1|0,(t>>>0)%3|0||(l=t+2|0)))}if(!((0|u)!=(0|(t=l))&-1!=(0|t)))break}if(l=m(a,v),!d)break e;if(Z)break i;if(_=0,t=0,!T)break f;for(;s[(p=(u=_<<2)+b|0)>>2]=s[p>>2]/(0|d),s[(u=(4|u)+b|0)>>2]=s[u>>2]/(0|d),_=_+2|0,(0|U)!=(0|(t=t+2|0)););}W&&(s[(t=(_<<2)+b|0)>>2]=s[t>>2]/(0|d))}if((0|f)<=0)break r;for(d=s[o>>2],_=0;(0|(t=s[(f=_<<2)+b>>2]))>(0|(u=s[r+16>>2]))?s[f+d>>2]=u:(f=f+d|0,u=s[r+12>>2],s[f>>2]=(0|u)>(0|t)?u:t),(0|(f=s[r+8>>2]))>(0|(_=_+1|0)););if(t=0,(0|f)<=0)break r;for(l=(f=l<<2)+i|0,_=e+f|0;;){f=(u=t<<2)+l|0,u=s[_+u>>2]+s[u+d>>2]|0,s[f>>2]=u;i:{if((0|u)>s[r+16>>2])u=u-s[r+20>>2]|0;else{if((0|u)>=s[r+12>>2])break i;u=u+s[r+20>>2]|0}s[f>>2]=u}if(!((0|(f=s[r+8>>2]))>(0|(t=t+1|0))))break}break r}if(!((0|f)<=0)){for(u=(m(v-1|0,a)<<2)+i|0,d=s[o>>2],_=0;(0|(t=s[(f=_<<2)+u>>2]))>(0|(p=s[r+16>>2]))?s[f+d>>2]=p:(f=f+d|0,p=s[r+12>>2],s[f>>2]=(0|p)>(0|t)?p:t),(0|(f=s[r+8>>2]))>(0|(_=_+1|0)););if(t=0,!((0|f)<=0))for(l=(f=l<<2)+i|0,_=e+f|0;;){f=(u=t<<2)+l|0,u=s[_+u>>2]+s[u+d>>2]|0,s[f>>2]=u;e:{if((0|u)>s[r+16>>2])u=u-s[r+20>>2]|0;else{if((0|u)>=s[r+12>>2])break e;u=u+s[r+20>>2]|0}s[f>>2]=u}if(!((0|(f=s[r+8>>2]))>(0|(t=t+1|0))))break}}}if((0|B)==(0|(v=v+1|0)))break}return mr(A),mr(b),1},function(r){var e=0;return s[(r|=0)>>2]=3564,(e=s[r+96>>2])&&mr(e),(e=s[r+84>>2])&&mr(e),(e=s[r+72>>2])&&mr(e),(e=s[r+60>>2])&&mr(e),s[r>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),0|r},function(r){var e=0;s[(r|=0)>>2]=3564,(e=s[r+96>>2])&&mr(e),(e=s[r+84>>2])&&mr(e),(e=s[r+72>>2])&&mr(e),(e=s[r+60>>2])&&mr(e),s[r>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),mr(r)},va,Gf,function(r,e){r|=0;var i,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0,u=0,y=0;Q=i=Q-32|0;r:{if(l[38+(e|=0)>>1]<=513){if((0|(f=s[e+20>>2]))>=(0|(b=s[e+12>>2]))&(a=s[e+16>>2])>>>0>=p[e+8>>2]|(0|f)>(0|b))break r;if(b=_[a+s[e>>2]|0],f=(a=a+1|0)?f:f+1|0,s[e+16>>2]=a,s[e+20>>2]=f,b)break r}e:if(Ni(1,i+28|0,e)&&(a=s[i+28>>2],f=s[s[r+48>>2]+64>>2],!(a>>>0>s[f+4>>2]-s[f>>2]>>2>>>0)))i:{if(a){if(ae(r+60|0,a),s[(f=i+8|0)>>2]=0,s[f+4>>2]=0,c[f+5|0]=0,c[f+6|0]=0,c[f+7|0]=0,c[f+8|0]=0,c[f+9|0]=0,c[f+10|0]=0,c[f+11|0]=0,c[f+12|0]=0,!Mr(f,e))break i;for(;b=1<<t,o=Xi(f),A=s[r+60>>2]+(t>>>3&536870908)|0,n=o?b|s[A>>2]:s[A>>2]&~b,s[A>>2]=n,(0|a)!=(0|(t=t+1|0)););}if(!Ni(1,i+28|0,e))break e;if(a=s[i+28>>2],f=s[s[r+48>>2]+64>>2],a>>>0>s[f+4>>2]-s[f>>2]>>2>>>0)break e;if(a){if(t=0,ae(r+72|0,a),s[(f=i+8|0)>>2]=0,s[f+4>>2]=0,c[f+5|0]=0,c[f+6|0]=0,c[f+7|0]=0,c[f+8|0]=0,c[f+9|0]=0,c[f+10|0]=0,c[f+11|0]=0,c[f+12|0]=0,!Mr(f,e))break i;for(;b=1<<t,o=Xi(f),A=s[r+72>>2]+(t>>>3&536870908)|0,n=o?b|s[A>>2]:s[A>>2]&~b,s[A>>2]=n,(0|a)!=(0|(t=t+1|0)););}if(!Ni(1,i+28|0,e))break e;if(a=s[i+28>>2],f=s[s[r+48>>2]+64>>2],a>>>0>s[f+4>>2]-s[f>>2]>>2>>>0)break e;if(a){if(t=0,ae(r+84|0,a),s[(f=i+8|0)>>2]=0,s[f+4>>2]=0,c[f+5|0]=0,c[f+6|0]=0,c[f+7|0]=0,c[f+8|0]=0,c[f+9|0]=0,c[f+10|0]=0,c[f+11|0]=0,c[f+12|0]=0,!Mr(f,e))break i;for(;b=1<<t,o=Xi(f),A=s[r+84>>2]+(t>>>3&536870908)|0,n=o?b|s[A>>2]:s[A>>2]&~b,s[A>>2]=n,(0|a)!=(0|(t=t+1|0)););}if(!Ni(1,i+28|0,e))break e;if(a=s[i+28>>2],f=s[s[r+48>>2]+64>>2],a>>>0>s[f+4>>2]-s[f>>2]>>2>>>0)break e;if(a){if(t=0,ae(r+96|0,a),s[(f=i+8|0)>>2]=0,s[f+4>>2]=0,c[f+5|0]=0,c[f+6|0]=0,c[f+7|0]=0,c[f+8|0]=0,c[f+9|0]=0,c[f+10|0]=0,c[f+11|0]=0,c[f+12|0]=0,!Mr(f,e))break i;for(;b=1<<t,o=Xi(f),A=s[r+96>>2]+(t>>>3&536870908)|0,n=o?b|s[A>>2]:s[A>>2]&~b,s[A>>2]=n,(0|a)!=(0|(t=t+1|0)););}if(t=0,f=s[e+8>>2],b=s[e+12>>2],a=f,n=f=s[e+20>>2],a>>>0<(o=(A=s[e+16>>2])+4|0)>>>0&(0|(f=o>>>0<4?f+1|0:f))>=(0|b)|(0|f)>(0|b))break r;if(y=s[e>>2],u=_[0|(k=y+A|0)]|_[k+1|0]<<8|_[k+2|0]<<16|_[k+3|0]<<24,s[e+16>>2]=o,s[e+20>>2]=f,k=a,a=b,f=n,(b=A+8|0)>>>0>k>>>0&(0|(f=b>>>0<8?f+1|0:f))>=(0|a)|(0|f)>(0|a))break r;if(a=_[0|(a=o+y|0)]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[e+16>>2]=b,s[e+20>>2]=f,(0|a)<(0|u))break r;if(s[r+16>>2]=a,s[r+12>>2]=u,!(f=(a>>31)-((u>>31)+(a>>>0<u>>>0)|0)|0)&(e=a-u|0)>>>0>2147483646|f)break r;if(t=1,e=e+1|0,s[r+20>>2]=e,f=e>>>1|0,s[r+24>>2]=f,s[r+28>>2]=0-f,1&e)break r;s[r+24>>2]=f-1;break r}t=0}return Q=i+32|0,0|t},function(r,e,i,f,a,t){e|=0,i|=0,f|=0,a|=0,t|=0;var b,A,o,k,c,u=0,_=0,l=0,p=0,y=0,d=0,v=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0,V=0,T=0,D=0,F=0,B=0,E=0,Y=0,j=0,I=0,J=0,w=0,M=0,O=0,X=0;Q=b=Q+-64|0,s[8+(r|=0)>>2]=a,t=s[(o=r+32|0)>>2];r:{if((f=s[r+36>>2]-t>>2)>>>0<a>>>0)ai(o,a-f|0),s[b+56>>2]=0,s[b+60>>2]=0,s[b+48>>2]=0,s[b+52>>2]=0,s[b+40>>2]=0,s[b+44>>2]=0,s[b+32>>2]=0,s[b+36>>2]=0,s[b+24>>2]=0,s[b+28>>2]=0,s[b+16>>2]=0,s[b+20>>2]=0,s[b>>2]=0;else if(f>>>0>a>>>0&&(s[r+36>>2]=t+(a<<2)),s[b+56>>2]=0,s[b+60>>2]=0,s[b+48>>2]=0,s[b+52>>2]=0,s[b+40>>2]=0,s[b+44>>2]=0,s[b+32>>2]=0,s[b+36>>2]=0,s[b+24>>2]=0,s[b+28>>2]=0,s[b+16>>2]=0,s[b+20>>2]=0,s[b>>2]=0,f=0,!a)break r;xr(b+16|0,a,b),u=s[b+28>>2],f=s[b+32>>2]}s[b>>2]=0;r:if((f=f-u>>2)>>>0>=a>>>0){if(f>>>0<=a>>>0)break r;s[b+32>>2]=(a<<2)+u}else xr(b+16|12,a-f|0,b);s[b>>2]=0,t=s[b+40>>2];r:if((f=s[b+44>>2]-t>>2)>>>0>=a>>>0){if(f>>>0<=a>>>0)break r;s[b+44>>2]=t+(a<<2)}else xr(b+40|0,a-f|0,b);s[b>>2]=0,t=s[b+52>>2];r:if((f=s[b+56>>2]-t>>2)>>>0>=a>>>0){if(f>>>0<=a>>>0)break r;s[b+56>>2]=t+(a<<2)}else xr(b+52|0,a-f|0,b);if(!(s[r+8>>2]<=0)){for(_=s[b+16>>2],l=s[r+32>>2],u=0;(0|(t=s[(f=u<<2)+_>>2]))>(0|(d=s[r+16>>2]))?s[f+l>>2]=d:(f=f+l|0,d=s[r+12>>2],s[f>>2]=(0|d)>(0|t)?d:t),(0|(u=u+1|0))<(0|(f=s[r+8>>2])););if(!((0|f)<=0))for(f=0;;){t=(_=f<<2)+i|0,_=s[e+_>>2]+s[l+_>>2]|0,s[t>>2]=_;r:{if((0|_)>s[r+16>>2])_=_-s[r+20>>2]|0;else{if((0|_)>=s[r+12>>2])break r;_=_+s[r+20>>2]|0}s[t>>2]=_}if(!((0|(f=f+1|0))<s[r+8>>2]))break}}c=s[r+52>>2],A=s[r+48>>2],k=mf(16),s[(f=k)>>2]=0,s[f+4>>2]=0,s[f+8>>2]=0,s[f+12>>2]=0,s[b+8>>2]=0,s[b>>2]=0,s[b+4>>2]=0;r:{if(a){if(a>>>0>=1073741824)break r;Z=mf(f=a<<2),s[b>>2]=Z,s[b+8>>2]=f+Z,Ge(Z,0,f)}T=1,f=s[r+56>>2],D=s[f>>2];e:if(!((0|(f=s[f+4>>2]-D|0))<8))for(j=(0|(W=f>>2))<=2?2:W,I=W>>>0<=1?1:W,F=-2&a,B=1&a,J=-4&a,E=3&a,Y=a-1|0,w=a<<2,M=a>>>0<4,T=0,d=1;;){i:{f:{a:{t:{if((0|d)!=(0|I)){b:{A:if(-1!=(0|(t=s[(d<<2)+D>>2]))){p=1,f=t+2|0,G=1<<(V=(l=(t>>>0)%3|0)?t-1|0:f),O=(v=s[A>>2])+(V>>>3&536870908)|0,_=0,X=!!(0|l)|-1!=(0|f),f=t;n:{for(;;){if(!(s[v+(f>>>3&536870908)>>2]>>>f&1||-1==(0|(l=s[s[s[A+64>>2]+12>>2]+(f<<2)>>2]))||(y=s[c>>2],u=s[A+28>>2],(0|(R=s[y+(s[u+(l<<2)>>2]<<2)>>2]))>=(0|d)||(0|(N=s[y+(s[u+((((N=l+1|0)>>>0)%3|0?N:l-2)<<2)>>2]<<2)>>2]))>=(0|d)||(0|(u=s[y+(s[u+(l+((l>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2]))>=(0|d)))){if(a){if(l=s[(b+16|0)+m(_,12)>>2],y=m(a,u),N=m(a,N),R=m(a,R),u=0,h=0,Y)for(;s[l+(u<<2)>>2]=(s[(u+y<<2)+i>>2]+s[(u+N<<2)+i>>2]|0)-s[(u+R<<2)+i>>2],s[l+((U=1|u)<<2)>>2]=(s[(y+U<<2)+i>>2]+s[(N+U<<2)+i>>2]|0)-s[(R+U<<2)+i>>2],u=u+2|0,(0|F)!=(0|(h=h+2|0)););B&&(s[l+(u<<2)>>2]=(s[(u+y<<2)+i>>2]+s[(u+N<<2)+i>>2]|0)-s[(u+R<<2)+i>>2])}if(l=4,4==(0|(_=_+1|0)))break n}o:if(1&p){if(u=f-2|0,l=f+1|0,f=-1,-1==(0|(l=(l>>>0)%3|0?l:u))|s[v+(l>>>3&536870908)>>2]>>>l&1)break o;if(-1==(0|(l=s[s[s[A+64>>2]+12>>2]+(l<<2)>>2])))break o;f=((f=l+1|0)>>>0)%3|0?f:l-2|0}else{if((f>>>0)%3|0)u=f-1|0;else if(u=f+2|0,f=-1,-1==(0|u))break o;f=-1,s[v+(u>>>3&536870908)>>2]>>>u&1||-1!=(0|(l=s[s[s[A+64>>2]+12>>2]+(u<<2)>>2]))&&(f=(l>>>0)%3|0?l-1|0:l+2|0)}o:if((0|f)!=(0|t)){if(-1==(0|f)&p){if(!X|G&s[O>>2])break o;if(-1==(0|(f=s[s[s[A+64>>2]+12>>2]+(V<<2)>>2])))break o;p=0,f=(f>>>0)%3|0?f-1|0:f+2|0}if(-1!=(0|f))continue}break}if((0|(l=_))<=0)break A}for(a&&Ge(Z,0,w),N=((f=l-1|0)<<2)+k|0,U=f=m(f,12)+r|0,V=s[f- -64>>2],p=0,f=s[b>>2],t=0;;){if(_=s[N>>2],s[N>>2]=_+1,_>>>0>=V>>>0)break e;if(!(s[s[U+60>>2]+(_>>>3&536870908)>>2]>>>_&1)&&(t=t+1|0,a)){if(v=s[(b+16|0)+m(p,12)>>2],_=0,u=0,R=0,!M)for(;s[(h=(y=u<<2)+f|0)>>2]=s[y+v>>2]+s[h>>2],s[(G=(h=4|y)+f|0)>>2]=s[v+h>>2]+s[G>>2],s[(G=(h=8|y)+f|0)>>2]=s[v+h>>2]+s[G>>2],s[(h=(y|=12)+f|0)>>2]=s[y+v>>2]+s[h>>2],u=u+4|0,(0|J)!=(0|(R=R+4|0)););if(E)for(;s[(R=(y=u<<2)+f|0)>>2]=s[y+v>>2]+s[R>>2],u=u+1|0,(0|E)!=(0|(_=_+1|0)););}if((0|(p=p+1|0))==(0|l))break}if(_=m(a,d),!t)break b;if(!a)break f;if(u=0,f=0,Y)break t;break a}_=m(a,d)}if(s[r+8>>2]<=0)break i;for(p=(m(d-1|0,a)<<2)+i|0,l=s[o>>2],u=0;(0|(t=s[(f=u<<2)+p>>2]))>(0|(v=s[r+16>>2]))?s[f+l>>2]=v:(f=f+l|0,v=s[r+12>>2],s[f>>2]=(0|v)>(0|t)?v:t),(0|(u=u+1|0))<(0|(t=s[r+8>>2])););if(f=0,(0|t)<=0)break i;for(u=(t=_<<2)+i|0,p=e+t|0;;){t=(_=f<<2)+u|0,_=s[_+p>>2]+s[l+_>>2]|0,s[t>>2]=_;b:{if((0|_)>s[r+16>>2])_=_-s[r+20>>2]|0;else{if((0|_)>=s[r+12>>2])break b;_=_+s[r+20>>2]|0}s[t>>2]=_}if(!((0|(f=f+1|0))<s[r+8>>2]))break}break i}Za(),n()}for(;s[(p=(l=u<<2)+Z|0)>>2]=s[p>>2]/(0|t),s[(l=(4|l)+Z|0)>>2]=s[l>>2]/(0|t),u=u+2|0,(0|F)!=(0|(f=f+2|0)););}B&&(s[(f=(u<<2)+Z|0)>>2]=s[f>>2]/(0|t))}if(!(s[r+8>>2]<=0)){for(l=s[o>>2],u=0;(0|(t=s[(f=u<<2)+Z>>2]))>(0|(p=s[r+16>>2]))?s[f+l>>2]=p:(f=f+l|0,p=s[r+12>>2],s[f>>2]=(0|p)>(0|t)?p:t),(0|(u=u+1|0))<(0|(t=s[r+8>>2])););if(f=0,!((0|t)<=0))for(u=(t=_<<2)+i|0,p=e+t|0;;){t=(_=f<<2)+u|0,_=s[_+p>>2]+s[l+_>>2]|0,s[t>>2]=_;f:{if((0|_)>s[r+16>>2])_=_-s[r+20>>2]|0;else{if((0|_)>=s[r+12>>2])break f;_=_+s[r+20>>2]|0}s[t>>2]=_}if(!((0|(f=f+1|0))<s[r+8>>2]))break}}}if(T=(0|W)<=(0|(d=d+1|0)),(0|d)==(0|j))break}return(r=s[b>>2])&&mr(r),mr(k),(r=s[b+52>>2])&&(s[b+56>>2]=r,mr(r)),(r=s[b+40>>2])&&(s[b+44>>2]=r,mr(r)),(r=s[b+28>>2])&&(s[b+32>>2]=r,mr(r)),(r=s[b+16>>2])&&(s[b+20>>2]=r,mr(r)),Q=b- -64|0,0|T}ha(),n()},function(r){var e=0;return s[(r|=0)>>2]=3812,(e=s[r+76>>2])&&mr(e),e=s[r+68>>2],s[r+68>>2]=0,e&&mr(e),s[r>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),0|r},function(r){var e=0;s[(r|=0)>>2]=3812,(e=s[r+76>>2])&&mr(e),e=s[r+68>>2],s[r+68>>2]=0,e&&mr(e),s[r>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),mr(r)},_a,Nf,ma,na,Uf,function(r,e){r|=0,e|=0;var i,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0,u=0,y=0;Q=i=Q-32|0,s[i+28>>2]=0;r:{if(l[e+38>>1]<=513){if(f=s[e+20>>2],f=(t=(a=s[e+16>>2])+4|0)>>>0<4?f+1|0:f,n=s[e+12>>2],p[e+8>>2]<t>>>0&(0|n)<=(0|f)|(0|f)>(0|n))break r;a=a+s[e>>2]|0,b=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[e+16>>2]=t,s[e+20>>2]=f}else{if(!Ni(1,i+28|0,e))break r;b=s[i+28>>2]}if(b&&(f=s[s[r+48>>2]+64>>2],!(s[f+4>>2]-s[f>>2]>>2>>>0<b>>>0)&&(ae(r+76|0,b),s[(f=i+8|0)>>2]=0,s[f+4>>2]=0,c[f+5|0]=0,c[f+6|0]=0,c[f+7|0]=0,c[f+8|0]=0,c[f+9|0]=0,c[f+10|0]=0,c[f+11|0]=0,c[f+12|0]=0,Mr(f,e)))){for(n=1;a=1<<o,t=Xi(f),A=s[r+76>>2]+(o>>>3&536870908)|0,1&(t^=n)?a=s[A>>2]&~a:a|=s[A>>2],n=1^t,s[A>>2]=a,(0|b)!=(0|(o=o+1|0)););f=s[e+8>>2],A=t=s[e+12>>2],n=t=s[e+20>>2],o=a=(b=s[e+16>>2])+4|0,a>>>0>f>>>0&(0|(t=a>>>0<4?t+1|0:t))>=(0|A)|(0|t)>(0|A)||(u=s[e>>2],k=_[0|(a=u+b|0)]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[e+16>>2]=o,s[e+20>>2]=t,a=f,f=n,a>>>0<(t=b+8|0)>>>0&(0|(f=t>>>0<8?f+1|0:f))>=(0|A)|(0|f)>(0|A)||(a=_[0|(a=o+u|0)]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[e+16>>2]=t,s[e+20>>2]=f,(0|a)<(0|k)||(s[r+16>>2]=a,s[r+12>>2]=k,!(f=(a>>31)-((k>>31)+(a>>>0<k>>>0)|0)|0)&(e=a-k|0)>>>0>2147483646|f||(y=1,f=e+1|0,s[r+20>>2]=f,e=f>>>1|0,s[r+24>>2]=e,s[r+28>>2]=0-e,1&f||(s[r+24>>2]=e-1)))))}}return Q=i+32|0,0|y},function(r,e,i,f,a,t){r|=0,e|=0,i|=0,f|=0,a|=0,t|=0;var b=0,A=0,o=v(0),k=0,u=0,l=0,p=v(0),d=v(0),R=v(0),N=v(0),Z=v(0),U=0,V=v(0),T=v(0),D=v(0),F=v(0),B=0,E=v(0),Y=v(0),j=v(0),I=0;r:{if(2==(0|a)&&(s[r+64>>2]=t,s[r+72>>2]=2,a=mf(8),f=s[r+68>>2],s[r+68>>2]=a,f&&mr(f),s[r+8>>2]=2,a=s[(B=r+32|0)>>2],(f=s[r+36>>2]-a|0)>>>0<=7?ai(B,2-(f>>>2|0)|0):8!=(0|f)&&(s[r+36>>2]=a+8),A=1,f=s[r+56>>2],!((0|(f=s[f+4>>2]-s[f>>2]|0))<=0)))for(I=(f=f>>>2|0)>>>0<=1?1:f,f=0;;){if(a=s[r+56>>2],A=s[a>>2],s[a+4>>2]-A>>2>>>0<=f>>>0)break r;if(Z=v(0),Q=b=Q-48|0,a=-1,t=-1,-1!=(0|(A=s[A+(f<<2)>>2]))&&(a=((a=A+1|0)>>>0)%3|0?a:A-2|0,t=A-1|0,(A>>>0)%3|0||(t=A+2|0)),k=s[r+52>>2],A=s[k>>2],k=s[k+4>>2]-A>>2,l=a<<2,a=s[s[r+48>>2]+28>>2],k>>>0<=(U=s[l+a>>2])>>>0||(a=s[a+(t<<2)>>2])>>>0>=k>>>0)Za(),n();else{e:if((0|(k=s[A+(a<<2)>>2]))>=(0|f)|(0|(t=s[A+(U<<2)>>2]))>=(0|f)){if((0|f)>(0|t))a=s[r+72>>2],A=m(t,a);else{if((0|f)<=0){if(t=1,s[r+72>>2]<=0)break e;for(A=s[r+68>>2],a=0;s[A+(a<<2)>>2]=0,(0|(a=a+1|0))<s[r+72>>2];);break e}a=s[r+72>>2],A=m(a,f-1|0)}if(t=1,!((0|a)<=0))for(k=s[r+68>>2],a=0;s[k+(a<<2)>>2]=s[(a+A<<2)+i>>2],(0|(a=a+1|0))<s[r+72>>2];);}else{if(a=s[r+72>>2],A=(m(a,k)<<2)+i|0,p=v(s[A+4>>2]),a=(m(a,t)<<2)+i|0,N=v(s[a+4>>2]),!((E=v(s[a>>2]))!=(d=v(s[A>>2]))|p!=N)){A=+p>2147483647,a=s[r+68>>2],t=v(h(p))<v(2147483648)?~~p:-2147483648,s[a+4>>2]=p<v(-2147483648)||A?-2147483648:t,A=+d>2147483647,t=v(h(d))<v(2147483648)?~~d:-2147483648,s[a>>2]=d<v(-2147483648)||A?-2147483648:t,t=1;break e}a=s[s[r+64>>2]+(f<<2)>>2],s[b+40>>2]=0,s[b+32>>2]=0,s[b+36>>2]=0,A=s[r+60>>2],_[A+84|0]||(a=s[s[A+68>>2]+(a<<2)>>2]),Ar(A,a,c[A+24|0],b+32|0),t=s[s[r+64>>2]+(t<<2)>>2],s[b+24>>2]=0,s[b+16>>2]=0,s[b+20>>2]=0,a=s[r+60>>2],_[a+84|0]||(t=s[s[a+68>>2]+(t<<2)>>2]),Ar(a,t,c[a+24|0],b+16|0),t=s[s[r+64>>2]+(k<<2)>>2],s[b+8>>2]=0,s[b>>2]=0,s[b+4>>2]=0,a=s[r+60>>2],_[a+84|0]||(t=s[s[a+68>>2]+(t<<2)>>2]),Ar(a,t,c[a+24|0],b),R=y[b+24>>2],V=v(y[b+8>>2]-R),T=y[b+20>>2],D=v(y[b+4>>2]-T),j=y[b+16>>2],F=v(y[b>>2]-j),Y=v(v(V*V)+v(v(D*D)+v(v(F*F)+v(0)))),s[r+88>>2]>=258&&(o=v(0),!(Y>v(0)))||(o=v(y[b+40>>2]-R),R=v(y[b+36>>2]-T),T=v(y[b+32>>2]-j),Z=v(v(v(V*o)+v(v(D*R)+v(v(F*T)+v(0))))/Y),o=v(o-v(V*Z)),V=v(o*o),o=v(R-v(D*Z)),R=v(o*o),o=v(T-v(F*Z)),o=v(W(v(v(V+v(R+v(v(o*o)+v(0))))/Y)))),(t=s[r+80>>2])&&(a=t-1|0,A=s[s[r+76>>2]+(a>>>3&536870908)>>2],s[r+80>>2]=a,p=v(p-N),R=v(v(p*Z)+N),d=v(d-E),N=v(d*o),N=v(R+((a=A>>>a&1)?N:v(-N))),o=v(o*p),(u=G(+v(v(v(d*Z)+E)+(a?v(-o):o))+.5))<-2147483648|u!=u|u>2147483647?(a=s[r+68>>2],s[a>>2]=-2147483648):(a=s[r+68>>2],A=h(u)<2147483648?~~u:-2147483648,s[a>>2]=A),k=(u=G(+N+.5))>2147483647,A=h(u)<2147483648?~~u:-2147483648,s[a+4>>2]=u<-2147483648||u!=u||k?-2147483648:A),t=!!(0|t)}Q=b+48|0}if(!(A=t))return 0;if(!(s[r+8>>2]<=0)){for(U=s[r+68>>2],k=s[B>>2],a=0;(0|(b=s[(t=a<<2)+U>>2]))>(0|(l=s[r+16>>2]))?s[t+k>>2]=l:(t=t+k|0,l=s[r+12>>2],s[t>>2]=(0|l)>(0|b)?l:b),(0|(a=a+1|0))<(0|(b=s[r+8>>2])););if(t=0,!((0|b)<=0))for(U=(a=f<<3)+i|0,l=e+a|0;;){a=(b=t<<2)+U|0,b=s[b+l>>2]+s[b+k>>2]|0,s[a>>2]=b;e:{if((0|b)>s[r+16>>2])b=b-s[r+20>>2]|0;else{if((0|b)>=s[r+12>>2])break e;b=b+s[r+20>>2]|0}s[a>>2]=b}if(!((0|(t=t+1|0))<s[r+8>>2]))break}}if((0|I)==(0|(f=f+1|0)))break}return 0|A}Za(),n()},function(r){var e=0;return s[(r|=0)>>2]=4040,(e=s[r+76>>2])&&mr(e),s[r>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),0|r},function(r){var e=0;s[(r|=0)>>2]=4040,(e=s[r+76>>2])&&mr(e),s[r>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),mr(r)},pa,Nf,ma,na,Uf,jr,function(r,e,i,f,a,t){r|=0,e|=0,i|=0,f|=0,t|=0;var b=0,A=0,o=0,k=0,u=0,l=0,p=0,y=0,d=0,m=0,v=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0,V=0,T=0,D=0,F=0,B=0,E=0,Y=0,I=0,J=0,w=0,M=0,O=0,X=0,g=0,z=0,H=0,C=0,P=0,S=0,x=0,L=0,K=0,q=0,$=0,rr=0;r:{if(2==(0|(a|=0))&&(s[r+8>>2]=2,s[r- -64>>2]=t,a=s[(M=r+32|0)>>2],(f=s[r+36>>2]-a|0)>>>0<=7?ai(M,2-(f>>>2|0)|0):8!=(0|f)&&(s[r+36>>2]=a+8),m=1,f=s[r+56>>2],!((0|(f=s[f+4>>2]-s[f>>2]|0))<=0)))for(d=r+60|0,K=(f=f>>>2|0)>>>0<=1?1:f,q=r+68|0,f=0;;){if(a=s[r+56>>2],A=s[a>>2],s[a+4>>2]-A>>2>>>0<=f>>>0)break r;Q=u=Q-80|0,t=-1,a=-1,-1!=(0|(A=s[A+(f<<2)>>2]))&&(t=((a=A+1|0)>>>0)%3|0?a:A-2|0,a=A-1|0,(A>>>0)%3|0||(a=A+2|0)),b=s[d+36>>2],A=s[b>>2];e:{i:{f:{a:{if(b=s[b+4>>2]-A>>2,o=t<<2,t=s[s[d+32>>2]+28>>2],!(b>>>0<=(k=s[o+t>>2])>>>0||(a=s[t+(a<<2)>>2])>>>0>=b>>>0)){t:{if(!((0|(l=s[A+(a<<2)>>2]))>=(0|f)|(0|(t=s[A+(k<<2)>>2]))>=(0|f))){if(G=s[4+(A=(l<<3)+i|0)>>2],a=s[4+(b=(t<<3)+i|0)>>2],!((0|(k=s[A>>2]))!=(0|(A=s[b>>2]))|(0|a)!=(0|G))){s[d+8>>2]=A,s[d+12>>2]=a;break t}if(m=s[s[d+4>>2]+(f<<2)>>2],s[u+72>>2]=0,s[u+76>>2]=0,s[(b=u- -64|0)>>2]=0,s[b+4>>2]=0,s[u+56>>2]=0,s[u+60>>2]=0,b=s[d>>2],_[b+84|0]||(m=s[s[b+68>>2]+(m<<2)>>2]),er(b,m,c[b+24|0],u+56|0),m=s[s[d+4>>2]+(t<<2)>>2],s[u+48>>2]=0,s[u+52>>2]=0,s[u+40>>2]=0,s[u+44>>2]=0,s[u+32>>2]=0,s[u+36>>2]=0,b=s[d>>2],_[b+84|0]||(m=s[s[b+68>>2]+(m<<2)>>2]),er(b,m,c[b+24|0],u+32|0),m=s[s[d+4>>2]+(l<<2)>>2],s[u+24>>2]=0,s[u+28>>2]=0,s[u+16>>2]=0,s[u+20>>2]=0,s[u+8>>2]=0,s[u+12>>2]=0,b=s[d>>2],_[b+84|0]||(m=s[s[b+68>>2]+(m<<2)>>2]),er(b,m,c[b+24|0],u+8|0),U=(b=s[u+16>>2])-(y=s[u+40>>2])|0,O=s[u+44>>2],E=b=s[u+20>>2]-(O+(b>>>0<y>>>0)|0)|0,l=Ki(U,b,U,b),v=j,T=(b=s[u+8>>2])-(V=s[u+32>>2])|0,X=s[u+36>>2],Y=b=s[u+12>>2]-(X+(b>>>0<V>>>0)|0)|0,b=(o=l)+(l=Ki(T,b,T,b))|0,o=j+v|0,o=b>>>0<l>>>0?o+1|0:o,F=(l=s[u+24>>2])-(D=s[u+48>>2])|0,g=s[u+52>>2],I=l=s[u+28>>2]-(g+(l>>>0<D>>>0)|0)|0,p=b,b=Ki(F,l,F,l),o=j+o|0,(R=b>>>0>(h=p+b|0)>>>0?o+1|0:o)|h){if(m=0,B=re(-1,2147483647,h,R),H=t=A>>31,z=A,A=(v=A^(b=o=t>>31))-b|0,b=t=(t^b)-((b>>>0>v>>>0)+b|0)|0,C=t=a>>31,p=(v=(J=a)^(a=t>>31))-a|0,(0|(l=j))==(0|(a=(t=(0|b)==(0|(a=((o=t>>31)^t)-((a>>>0>v>>>0)+o|0)|0))&A>>>0>p>>>0|a>>>0<b>>>0)?b:a))&(A=t?A:p)>>>0>B>>>0|a>>>0>l>>>0)break e;if(a=Ki((A=s[u+64>>2])-y|0,(P=s[u+68>>2])-((A>>>0<y>>>0)+O|0)|0,U,E),t=j,l=Ki((b=s[u+56>>2])-V|0,(S=s[u+60>>2])-((b>>>0<V>>>0)+X|0)|0,T,Y),o=j+t|0,o=(a=l+a|0)>>>0<l>>>0?o+1|0:o,l=(t=a)+(a=Ki((p=s[u+72>>2])-D|0,(x=s[u+76>>2])-((p>>>0<D>>>0)+g|0)|0,F,I))|0,t=j+o|0,v=a>>>0>l>>>0?t+1|0:t,B=(a=k)-z|0,L=a=(a>>31)-((a>>>0<z>>>0)+H|0)|0,t=(W=(k=a>>31)^B)-k|0,o=a=((o=a>>31)^a)-((k>>>0>W>>>0)+o|0)|0,W=G-J|0,G=a=(G>>31)-((G>>>0<J>>>0)+C|0)|0,k=t,(t=re(-1,2147483647,(t=(0|o)==(0|(a=((t=a>>31)^a)-(((N=a>>31)>>>0>(Z=N^W)>>>0)+t|0)|0))&k>>>0>(w=Z-N|0)>>>0|a>>>0<o>>>0)?k:w,t?o:a)>>>0<l>>>0)&(0|(a=j))<=(0|v)|(0|a)<(0|v))break e;if(t=a=Y>>31,a=(k=a^T)-a|0,w=a=(o=(0|(t=(t^Y)-((t>>>0>k>>>0)+t|0)|0))==(0|(k=((o=E>>31)^E)-((o>>>0>(N=o^U)>>>0)+o|0)|0))&a>>>0>(Z=N-o|0)>>>0|t>>>0>k>>>0)?a:Z,(t=re(-1,2147483647,(a=(0|(t=o?t:k))==(0|(k=((o=I>>31)^I)-((o>>>0>(N=o^F)>>>0)+o|0)|0))&a>>>0>(Z=N-o|0)>>>0|t>>>0>k>>>0)?w:Z,a?t:k)>>>0<l>>>0)&(0|(a=j))<=(0|v)|(0|a)<(0|v))break e;if(k=1,a=0,t=y,y=Si(Ki(l,v,U,E),j,h,R),o=j+O|0,o=(t=t+y|0)>>>0<y>>>0?o+1|0:o,y=Ki(y=A-t|0,t=P-((t>>>0>A>>>0)+o|0)|0,y,t),U=j,t=b,o=Si(Ki(l,v,T,Y),j,h,R),b=j+X|0,b=(A=o+V|0)>>>0<o>>>0?b+1|0:b,b=Ki(o=t-A|0,t=S-((t>>>0<A>>>0)+b|0)|0,o,t),t=j+U|0,t=(A=b+y|0)>>>0<b>>>0?t+1|0:t,y=A,b=Si(Ki(l,v,F,I),j,h,R),o=j+g|0,o=(A=b+D|0)>>>0<b>>>0?o+1|0:o,p=Ki(b=p-A|0,A=x-((A>>>0>p>>>0)+o|0)|0,b,A),b=j+t|0,t=Ki(A=p+y|0,A>>>0<p>>>0?b+1|0:b,h,R),p=A=j,!A&t>>>0<=1)break a;for(o=t;b=a<<1|k>>>31,k<<=1,a=b,y=!A&o>>>0>7|!!(0|A),o=(3&A)<<30|o>>>2,A=A>>>2|0,y;);break f}}if((0|f)>(0|t))a=t<<1;else{if((0|f)<=0){s[d+8>>2]=0,s[d+12>>2]=0;break t}a=(f<<1)-2|0}a=(a<<2)+i|0,s[d+8>>2]=s[a>>2],s[d+12>>2]=s[a+4>>2]}m=1;break e}Za(),n()}if(a=p,k=t,t-1|0)break i}for(;A=re(t,p,k,a),o=a+j|0,A=Ki(k=(1&(o=(a=A+k|0)>>>0<k>>>0?o+1|0:o))<<31|a>>>1,a=o>>>1|0,k,a),(0|p)==(0|(b=j))&t>>>0<A>>>0|b>>>0>p>>>0;);}(t=s[d+20>>2])&&(b=t-1|0,o=s[s[d+16>>2]+(b>>>3&536870908)>>2],s[d+20>>2]=b,m=1,t=Ki(l,v,W,G),A=j,p=(y=Ki(h,R,J,C))+t|0,t=j+A|0,t=p>>>0<y>>>0?t+1|0:t,A=Ki(k,a,B,L),o=(b=o>>>b&1)?0-A|0:A,y=t,t=j,A=y+(b?0-(t+!!(0|A)|0)|0:t)|0,$=d,rr=Si(p=o+p|0,o>>>0>p>>>0?A+1|0:A,h,R),s[$+12>>2]=rr,t=Ki(l,v,B,L),A=j,t=(l=Ki(h,R,z,H))+t|0,o=j+A|0,A=0-(a=Ki(k,a,W,G))|0,k=j,o=(t>>>0<l>>>0?o+1|0:o)+(b?k:0-(!!(0|a)+k|0)|0)|0,$=d,rr=Si(t=(A=b?a:A)+t|0,t>>>0<A>>>0?o+1|0:o,h,R),s[$+8>>2]=rr)}if(Q=u+80|0,!m)return 0;if(!(s[r+8>>2]<=0)){for(b=s[M>>2],a=0;(0|(A=s[(t=a<<2)+q>>2]))>(0|(k=s[r+16>>2]))?s[t+b>>2]=k:(t=t+b|0,k=s[r+12>>2],s[t>>2]=(0|k)>(0|A)?k:A),(0|(a=a+1|0))<(0|(A=s[r+8>>2])););if(t=0,!((0|A)<=0))for(k=(a=f<<3)+i|0,l=e+a|0;;){a=(A=t<<2)+k|0,A=s[A+l>>2]+s[A+b>>2]|0,s[a>>2]=A;e:{if((0|A)>s[r+16>>2])o=A-s[r+20>>2]|0;else{if((0|A)>=s[r+12>>2])break e;o=A+s[r+20>>2]|0}s[a>>2]=o}if(!((0|(t=t+1|0))<s[r+8>>2]))break}}if((0|K)==(0|(f=f+1|0)))break}return 0|m}Za(),n()},function(r){var e;return s[(r|=0)>>2]=4276,s[r>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),0|r},function(r){var e;s[(r|=0)>>2]=4276,s[r>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),mr(r)},da,of,ma,na,Wf,oe,function(r,e,i,f,a,t){e|=0,i|=0,f|=0,a|=0,t|=0;var b,A=0,o=0,k=0,c=0,u=0,_=0,l=0,p=0;Q=b=Q-32|0,s[68+(r|=0)>>2]=t,f=s[r+56>>2],a=s[f>>2],f=s[f+4>>2],s[b+24>>2]=0,s[b+16>>2]=0,s[b+20>>2]=0;r:{if((0|(f=f-a|0))>0)for(_=r+60|0,l=(f=f>>>2|0)>>>0<=1?1:f,p=r+112|0;;){if(a=s[r+56>>2],f=s[a>>2],s[a+4>>2]-f>>2>>>0<=k>>>0)break r;if(ur(_,s[f+(k<<2)>>2],b+16|0),t=((f=(o=s[b+20>>2])>>31)^o)-f+(((a=(A=s[b+16>>2])>>31)^A)-a)|0,a=((f=(c=s[b+24>>2])>>31)^c)-f|0,f=0,(f=(u=a)>>>0>(a=a+t|0)>>>0?1:f)|a?(A=Si(Ki(t=s[r+108>>2],u=t>>31,A,A>>31),j,a,f),s[b+16>>2]=A,f=Si(Ki(t,u,o,o>>31),j,a,f),s[b+20>>2]=f,f=(a=((a=f)^(f>>=31))-f|0)+(((f=A>>31)^A)-f|0)|0,s[b+24>>2]=(0|c)>=0?t-f:f-t):s[b+16>>2]=s[r+108>>2],f=Xi(p),t=s[b+16>>2],f?(s[b+24>>2]=0-s[b+24>>2],a=0-s[b+20>>2]|0,s[b+20>>2]=a,t=0-t|0,s[b+16>>2]=t):a=s[b+20>>2],(0|t)>=0?(f=(t=s[r+108>>2])+s[b+24>>2]|0,t=a+t|0):((0|a)<0?t=((f=s[b+24>>2])^(t=f>>31))-t|0:(t=(f=s[b+24>>2])>>31,t=s[r+100>>2]+(t-(f^t)|0)|0),(0|f)<0?f=((f=a>>31)^a)-f|0:(f=a>>31,f=s[r+100>>2]+(f-(f^a)|0)|0)),a=s[r+100>>2],f|t?(0|f)!=(0|a)|t?(0|a)!=(0|t)|f?t||(0|(o=s[r+108>>2]))>=(0|f)?(0|a)!=(0|t)||(0|(o=s[r+108>>2]))<=(0|f)?(0|f)!=(0|a)||(0|(a=s[r+108>>2]))<=(0|t)?f||(f=0,(0|(a=s[r+108>>2]))>=(0|t)||(t=(a<<1)-t|0)):t=(a<<1)-t|0:f=(o<<1)-f|0:(f=(o<<1)-f|0,t=0):f=t:t=f:t=f=a,s[b+12>>2]=f,s[b+8>>2]=t,!(s[r+8>>2]<=0)){for(o=s[r+32>>2],t=0;(0|(a=s[(f=t<<2)+(b+8|0)>>2]))>(0|(A=s[r+16>>2]))?s[f+o>>2]=A:(f=f+o|0,A=s[r+12>>2],s[f>>2]=(0|A)>(0|a)?A:a),(0|(t=t+1|0))<(0|(a=s[r+8>>2])););if(f=0,!((0|a)<=0))for(A=(a=k<<3)+i|0,c=e+a|0;;){a=(t=f<<2)+A|0,t=s[t+c>>2]+s[t+o>>2]|0,s[a>>2]=t;e:{if((0|t)>s[r+16>>2])t=t-s[r+20>>2]|0;else{if((0|t)>=s[r+12>>2])break e;t=t+s[r+20>>2]|0}s[a>>2]=t}if(!((0|(f=f+1|0))<s[r+8>>2]))break}}if((0|l)==(0|(k=k+1|0)))break}return Q=b+32|0,1}Za(),n()},sa,Na,wf,ea,ur,Ga,Ff,ma,Gf,function(r,e,i,f,a,t){e|=0,i|=0,f|=0,a|=0,t|=0;var b,A,o,k,c,u=0,_=0,l=0,p=0,y=0,d=0,v=0,h=0,R=0,N=0,Z=0;if(s[8+(r|=0)>>2]=a,_=s[(A=r+32|0)>>2],(t=s[r+36>>2]-_>>2)>>>0<a>>>0?(ai(A,a-t|0),f=s[r+8>>2]):(f=a)>>>0>=t>>>0||(s[r+36>>2]=_+(a<<2),f=a),c=s[r+52>>2],o=s[r+48>>2],t=0,b=Ge(mf(_=a>>>0>1073741823?-1:a<<2),0,_),!((0|f)<=0)){for(u=s[r+32>>2];(0|(_=s[(f=t<<2)+b>>2]))>(0|(p=s[r+16>>2]))?s[f+u>>2]=p:(f=f+u|0,p=s[r+12>>2],s[f>>2]=(0|p)>(0|_)?p:_),(0|(f=s[r+8>>2]))>(0|(t=t+1|0)););if(!((0|f)<=0))for(t=0;;){f=(_=t<<2)+i|0,_=s[e+_>>2]+s[u+_>>2]|0,s[f>>2]=_;r:{if((0|_)>s[r+16>>2])l=_-s[r+20>>2]|0;else{if((0|_)>=s[r+12>>2])break r;l=_+s[r+20>>2]|0}s[f>>2]=l}if(!((0|(f=s[r+8>>2]))>(0|(t=t+1|0))))break}}if(t=s[r+56>>2],k=s[t>>2],(0|(t=s[t+4>>2]-k|0))>=5)for(R=(v=t>>>2|0)>>>0<=2?2:v,N=-2&a,Z=1&a,_=1;;){r:{e:{if((0|_)!=(0|v)){if(h=m(a,_),-1==(0|(t=s[(_<<2)+k>>2])))break e;if(-1==(0|(t=s[s[o+12>>2]+(t<<2)>>2])))break e;p=s[c>>2],u=s[o>>2],y=s[p+(s[u+(t<<2)>>2]<<2)>>2],l=-1!=(0|(l=((l=t+1|0)>>>0)%3|0?l:t-2|0))?s[u+(l<<2)>>2]:-1;i:{if((t>>>0)%3|0)t=t-1|0;else if(d=-1,-1==(0|(t=t+2|0)))break i;d=s[u+(t<<2)>>2]}if((0|_)<=(0|y))break e;if((0|(t=s[(l<<2)+p>>2]))>=(0|_))break e;if((0|(u=s[p+(d<<2)>>2]))>=(0|_))break e;if(!((0|a)<=0)){if(u=m(a,u),p=m(a,t),y=m(a,y),t=0,d=0,1!=(0|a))for(;s[(t<<2)+b>>2]=(s[(t+u<<2)+i>>2]+s[(t+p<<2)+i>>2]|0)-s[(t+y<<2)+i>>2],s[((l=1|t)<<2)+b>>2]=(s[(u+l<<2)+i>>2]+s[(p+l<<2)+i>>2]|0)-s[(l+y<<2)+i>>2],t=t+2|0,(0|N)!=(0|(d=d+2|0)););Z&&(s[(t<<2)+b>>2]=(s[(t+u<<2)+i>>2]+s[(t+p<<2)+i>>2]|0)-s[(t+y<<2)+i>>2])}if((0|f)<=0)break r;for(p=s[A>>2],t=0;(0|(u=s[(f=t<<2)+b>>2]))>(0|(y=s[r+16>>2]))?s[f+p>>2]=y:(f=f+p|0,y=s[r+12>>2],s[f>>2]=(0|y)>(0|u)?y:u),(0|(f=s[r+8>>2]))>(0|(t=t+1|0)););if(t=0,(0|f)<=0)break r;for(y=(f=h<<2)+i|0,l=e+f|0;;){f=(u=t<<2)+y|0,u=s[u+l>>2]+s[u+p>>2]|0,s[f>>2]=u;i:{if((0|u)>s[r+16>>2])d=u-s[r+20>>2]|0;else{if((0|u)>=s[r+12>>2])break i;d=u+s[r+20>>2]|0}s[f>>2]=d}if(!((0|(f=s[r+8>>2]))>(0|(t=t+1|0))))break}break r}Za(),n()}if(!((0|f)<=0)){for(y=(m(_-1|0,a)<<2)+i|0,p=s[A>>2],t=0;(0|(u=s[(f=t<<2)+y>>2]))>(0|(l=s[r+16>>2]))?s[f+p>>2]=l:(f=f+p|0,l=s[r+12>>2],s[f>>2]=(0|l)>(0|u)?l:u),(0|(f=s[r+8>>2]))>(0|(t=t+1|0)););if(t=0,!((0|f)<=0))for(y=(f=h<<2)+i|0,l=e+f|0;;){f=(u=t<<2)+y|0,u=s[u+l>>2]+s[u+p>>2]|0,s[f>>2]=u;e:{if((0|u)>s[r+16>>2])d=u-s[r+20>>2]|0;else{if((0|u)>=s[r+12>>2])break e;d=u+s[r+20>>2]|0}s[f>>2]=d}if(!((0|(f=s[r+8>>2]))>(0|(t=t+1|0))))break}}}if((0|R)==(0|(_=_+1|0)))break}return mr(b),1},Ga,Ff,ya,Gf,function(r,e,i,f,a,t){e|=0,i|=0,f|=0,a|=0,t|=0;var b,A,o,k,c,u=0,_=0,l=0,p=0,y=0,d=0,v=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0,V=0,T=0,D=0,F=0,B=0,E=0;if(s[8+(r|=0)>>2]=a,t=s[(o=r+32|0)>>2],(p=s[r+36>>2]-t>>2)>>>0<a>>>0?(ai(o,a-p|0),f=s[r+8>>2]):(f=a,a>>>0>=p>>>0||(s[r+36>>2]=t+(a<<2),f=a)),k=a<<2,b=Ge(mf(t=a>>>0>1073741823?-1:k),0,t),A=Ge(mf(t),0,t),!((0|f)<=0)){for(l=s[r+32>>2];(0|(p=s[(t=_<<2)+b>>2]))>(0|(f=s[r+16>>2]))?s[t+l>>2]=f:(t=t+l|0,f=s[r+12>>2],s[t>>2]=(0|f)>(0|p)?f:p),(0|(f=s[r+8>>2]))>(0|(_=_+1|0)););if(!((0|f)<=0))for(t=0;;){f=(p=t<<2)+i|0,p=s[e+p>>2]+s[p+l>>2]|0,s[f>>2]=p;r:{if((0|p)>s[r+16>>2])p=p-s[r+20>>2]|0;else{if((0|p)>=s[r+12>>2])break r;p=p+s[r+20>>2]|0}s[f>>2]=p}if(!((0|(f=s[r+8>>2]))>(0|(t=t+1|0))))break}}if(t=s[r+56>>2],c=s[t>>2],(0|(t=s[t+4>>2]-c|0))>=5)for(F=s[r+52>>2],G=s[r+48>>2],B=(Z=t>>>2|0)>>>0<=2?2:Z,U=-2&a,W=1&a,E=-4&a,V=3&a,T=a-1|0,v=1;;){r:{e:{i:{f:if((0|v)==(0|Z))Za(),n();else{if(p=s[(v<<2)+c>>2],(N=(0|a)<=0)||Ge(b,0,k),-1==(0|p)){u=m(a,v);break e}for(D=s[G+12>>2],R=0,t=p;;){if(-1!=(0|(_=s[(t<<2)+D>>2]))){h=s[F>>2],d=s[G>>2],y=s[h+(s[d+(_<<2)>>2]<<2)>>2],u=-1!=(0|(l=((l=_+1|0)>>>0)%3|0?l:_-2|0))?s[d+(l<<2)>>2]:-1;a:{if((_>>>0)%3|0)_=_-1|0;else if(l=-1,-1==(0|(_=_+2|0)))break a;l=s[d+(_<<2)>>2]}if(!((0|y)>=(0|v)||(0|(u=s[(u<<2)+h>>2]))>=(0|v)||(0|(l=s[h+(l<<2)>>2]))>=(0|v))){if(!N){if(d=m(a,l),h=m(a,u),y=m(a,y),_=0,l=0,T)for(;s[(_<<2)+A>>2]=(s[(_+d<<2)+i>>2]+s[(_+h<<2)+i>>2]|0)-s[(_+y<<2)+i>>2],s[((u=1|_)<<2)+A>>2]=(s[(u+d<<2)+i>>2]+s[(u+h<<2)+i>>2]|0)-s[(u+y<<2)+i>>2],_=_+2|0,(0|U)!=(0|(l=l+2|0)););if(W&&(s[(_<<2)+A>>2]=(s[(_+d<<2)+i>>2]+s[(_+h<<2)+i>>2]|0)-s[(_+y<<2)+i>>2]),!N){if(h=0,_=0,y=0,a>>>0>3)for(;s[(l=(d=_<<2)+b|0)>>2]=s[d+A>>2]+s[l>>2],s[(l=(u=4|d)+b|0)>>2]=s[u+A>>2]+s[l>>2],s[(l=(u=8|d)+b|0)>>2]=s[u+A>>2]+s[l>>2],s[(l=(u=12|d)+b|0)>>2]=s[u+A>>2]+s[l>>2],_=_+4|0,(0|E)!=(0|(y=y+4|0)););if(V)for(;s[(l=(u=_<<2)+b|0)>>2]=s[u+A>>2]+s[l>>2],_=_+1|0,(0|V)!=(0|(h=h+1|0)););}}R=R+1|0}}a:{if((t>>>0)%3|0)_=t-1|0;else if(u=-1,-1==(0|(_=t+2|0)))break a;u=-1,-1!=(0|(t=s[(_<<2)+D>>2]))&&(u=t-1|0,(t>>>0)%3|0||(u=t+2|0))}if(!((0|p)!=(0|(t=u))&-1!=(0|t)))break}if(u=m(a,v),!R)break e;if(N)break i;if(_=0,t=0,!T)break f;for(;s[(p=(l=_<<2)+b|0)>>2]=s[p>>2]/(0|R),s[(p=(4|l)+b|0)>>2]=s[p>>2]/(0|R),_=_+2|0,(0|U)!=(0|(t=t+2|0)););}W&&(s[(t=(_<<2)+b|0)>>2]=s[t>>2]/(0|R))}if((0|f)<=0)break r;for(y=s[o>>2],_=0;(0|(p=s[(t=_<<2)+b>>2]))>(0|(f=s[r+16>>2]))?s[t+y>>2]=f:(t=t+y|0,f=s[r+12>>2],s[t>>2]=(0|f)>(0|p)?f:p),(0|(f=s[r+8>>2]))>(0|(_=_+1|0)););if(t=0,(0|f)<=0)break r;for(l=(f=u<<2)+i|0,p=e+f|0;;){f=(u=t<<2)+l|0,u=s[u+p>>2]+s[u+y>>2]|0,s[f>>2]=u;i:{if((0|u)>s[r+16>>2])u=u-s[r+20>>2]|0;else{if((0|u)>=s[r+12>>2])break i;u=u+s[r+20>>2]|0}s[f>>2]=u}if(!((0|(f=s[r+8>>2]))>(0|(t=t+1|0))))break}break r}if(!((0|f)<=0)){for(t=(m(v-1|0,a)<<2)+i|0,y=s[o>>2],_=0;(0|(l=s[(p=_<<2)+t>>2]))>(0|(f=s[r+16>>2]))?s[p+y>>2]=f:(p=p+y|0,f=s[r+12>>2],s[p>>2]=(0|f)>(0|l)?f:l),(0|(f=s[r+8>>2]))>(0|(_=_+1|0)););if(t=0,!((0|f)<=0))for(l=(f=u<<2)+i|0,p=e+f|0;;){f=(u=t<<2)+l|0,u=s[u+p>>2]+s[u+y>>2]|0,s[f>>2]=u;e:{if((0|u)>s[r+16>>2])u=u-s[r+20>>2]|0;else{if((0|u)>=s[r+12>>2])break e;u=u+s[r+20>>2]|0}s[f>>2]=u}if(!((0|(f=s[r+8>>2]))>(0|(t=t+1|0))))break}}}if((0|B)==(0|(v=v+1|0)))break}return mr(A),mr(b),1},function(r){var e=0;return s[(r|=0)>>2]=5580,(e=s[r+96>>2])&&mr(e),(e=s[r+84>>2])&&mr(e),(e=s[r+72>>2])&&mr(e),(e=s[r+60>>2])&&mr(e),s[r>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),0|r},function(r){var e=0;s[(r|=0)>>2]=5580,(e=s[r+96>>2])&&mr(e),(e=s[r+84>>2])&&mr(e),(e=s[r+72>>2])&&mr(e),(e=s[r+60>>2])&&mr(e),s[r>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),mr(r)},va,Gf,function(r,e){r|=0;var i,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0,u=0,y=0;Q=i=Q-32|0;r:{if(l[38+(e|=0)>>1]<=513){if((0|(f=s[e+20>>2]))>=(0|(b=s[e+12>>2]))&(a=s[e+16>>2])>>>0>=p[e+8>>2]|(0|f)>(0|b))break r;if(b=_[a+s[e>>2]|0],f=(a=a+1|0)?f:f+1|0,s[e+16>>2]=a,s[e+20>>2]=f,b)break r}e:if(Ni(1,i+28|0,e)&&(a=s[i+28>>2],f=s[r+48>>2],!(a>>>0>s[f+4>>2]-s[f>>2]>>2>>>0)))i:{if(a){if(ae(r+60|0,a),s[(f=i+8|0)>>2]=0,s[f+4>>2]=0,c[f+5|0]=0,c[f+6|0]=0,c[f+7|0]=0,c[f+8|0]=0,c[f+9|0]=0,c[f+10|0]=0,c[f+11|0]=0,c[f+12|0]=0,!Mr(f,e))break i;for(;b=1<<t,o=Xi(f),A=s[r+60>>2]+(t>>>3&536870908)|0,n=o?b|s[A>>2]:s[A>>2]&~b,s[A>>2]=n,(0|a)!=(0|(t=t+1|0)););}if(!Ni(1,i+28|0,e))break e;if(a=s[i+28>>2],f=s[r+48>>2],a>>>0>s[f+4>>2]-s[f>>2]>>2>>>0)break e;if(a){if(t=0,ae(r+72|0,a),s[(f=i+8|0)>>2]=0,s[f+4>>2]=0,c[f+5|0]=0,c[f+6|0]=0,c[f+7|0]=0,c[f+8|0]=0,c[f+9|0]=0,c[f+10|0]=0,c[f+11|0]=0,c[f+12|0]=0,!Mr(f,e))break i;for(;b=1<<t,o=Xi(f),A=s[r+72>>2]+(t>>>3&536870908)|0,n=o?b|s[A>>2]:s[A>>2]&~b,s[A>>2]=n,(0|a)!=(0|(t=t+1|0)););}if(!Ni(1,i+28|0,e))break e;if(a=s[i+28>>2],f=s[r+48>>2],a>>>0>s[f+4>>2]-s[f>>2]>>2>>>0)break e;if(a){if(t=0,ae(r+84|0,a),s[(f=i+8|0)>>2]=0,s[f+4>>2]=0,c[f+5|0]=0,c[f+6|0]=0,c[f+7|0]=0,c[f+8|0]=0,c[f+9|0]=0,c[f+10|0]=0,c[f+11|0]=0,c[f+12|0]=0,!Mr(f,e))break i;for(;b=1<<t,o=Xi(f),A=s[r+84>>2]+(t>>>3&536870908)|0,n=o?b|s[A>>2]:s[A>>2]&~b,s[A>>2]=n,(0|a)!=(0|(t=t+1|0)););}if(!Ni(1,i+28|0,e))break e;if(a=s[i+28>>2],f=s[r+48>>2],a>>>0>s[f+4>>2]-s[f>>2]>>2>>>0)break e;if(a){if(t=0,ae(r+96|0,a),s[(f=i+8|0)>>2]=0,s[f+4>>2]=0,c[f+5|0]=0,c[f+6|0]=0,c[f+7|0]=0,c[f+8|0]=0,c[f+9|0]=0,c[f+10|0]=0,c[f+11|0]=0,c[f+12|0]=0,!Mr(f,e))break i;for(;b=1<<t,o=Xi(f),A=s[r+96>>2]+(t>>>3&536870908)|0,n=o?b|s[A>>2]:s[A>>2]&~b,s[A>>2]=n,(0|a)!=(0|(t=t+1|0)););}if(t=0,f=s[e+8>>2],b=s[e+12>>2],a=f,n=f=s[e+20>>2],a>>>0<(o=(A=s[e+16>>2])+4|0)>>>0&(0|(f=o>>>0<4?f+1|0:f))>=(0|b)|(0|f)>(0|b))break r;if(y=s[e>>2],u=_[0|(k=y+A|0)]|_[k+1|0]<<8|_[k+2|0]<<16|_[k+3|0]<<24,s[e+16>>2]=o,s[e+20>>2]=f,k=a,a=b,f=n,(b=A+8|0)>>>0>k>>>0&(0|(f=b>>>0<8?f+1|0:f))>=(0|a)|(0|f)>(0|a))break r;if(a=_[0|(a=o+y|0)]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[e+16>>2]=b,s[e+20>>2]=f,(0|a)<(0|u))break r;if(s[r+16>>2]=a,s[r+12>>2]=u,!(f=(a>>31)-((u>>31)+(a>>>0<u>>>0)|0)|0)&(e=a-u|0)>>>0>2147483646|f)break r;if(t=1,e=e+1|0,s[r+20>>2]=e,f=e>>>1|0,s[r+24>>2]=f,s[r+28>>2]=0-f,1&e)break r;s[r+24>>2]=f-1;break r}t=0}return Q=i+32|0,0|t},function(r,e,i,f,a,t){e|=0,i|=0,f|=0,a|=0,t|=0;var b,A,o,k,c,u=0,_=0,l=0,p=0,y=0,d=0,v=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0,V=0,T=0,D=0,F=0,B=0,E=0,Y=0,j=0,I=0,J=0,w=0,M=0;Q=b=Q+-64|0,s[8+(r|=0)>>2]=a,t=s[(A=r+32|0)>>2];r:{if((f=s[r+36>>2]-t>>2)>>>0<a>>>0)ai(A,a-f|0),s[b+56>>2]=0,s[b+60>>2]=0,s[b+48>>2]=0,s[b+52>>2]=0,s[b+40>>2]=0,s[b+44>>2]=0,s[b+32>>2]=0,s[b+36>>2]=0,s[b+24>>2]=0,s[b+28>>2]=0,s[b+16>>2]=0,s[b+20>>2]=0,s[b>>2]=0;else if(f>>>0>a>>>0&&(s[r+36>>2]=t+(a<<2)),s[b+56>>2]=0,s[b+60>>2]=0,s[b+48>>2]=0,s[b+52>>2]=0,s[b+40>>2]=0,s[b+44>>2]=0,s[b+32>>2]=0,s[b+36>>2]=0,s[b+24>>2]=0,s[b+28>>2]=0,s[b+16>>2]=0,s[b+20>>2]=0,s[b>>2]=0,f=0,!a)break r;xr(b+16|0,a,b),_=s[b+28>>2],f=s[b+32>>2]}s[b>>2]=0;r:if((f=f-_>>2)>>>0>=a>>>0){if(f>>>0<=a>>>0)break r;s[b+32>>2]=(a<<2)+_}else xr(b+16|12,a-f|0,b);s[b>>2]=0,t=s[b+40>>2];r:if((f=s[b+44>>2]-t>>2)>>>0>=a>>>0){if(f>>>0<=a>>>0)break r;s[b+44>>2]=t+(a<<2)}else xr(b+40|0,a-f|0,b);s[b>>2]=0,t=s[b+52>>2];r:if((f=s[b+56>>2]-t>>2)>>>0>=a>>>0){if(f>>>0<=a>>>0)break r;s[b+56>>2]=t+(a<<2)}else xr(b+52|0,a-f|0,b);if(!(s[r+8>>2]<=0)){for(u=s[b+16>>2],l=s[r+32>>2],_=0;(0|(t=s[(f=_<<2)+u>>2]))>(0|(d=s[r+16>>2]))?s[f+l>>2]=d:(f=f+l|0,d=s[r+12>>2],s[f>>2]=(0|d)>(0|t)?d:t),(0|(_=_+1|0))<(0|(f=s[r+8>>2])););if(!((0|f)<=0))for(f=0;;){t=(u=f<<2)+i|0,u=s[e+u>>2]+s[u+l>>2]|0,s[t>>2]=u;r:{if((0|u)>s[r+16>>2])u=u-s[r+20>>2]|0;else{if((0|u)>=s[r+12>>2])break r;u=u+s[r+20>>2]|0}s[t>>2]=u}if(!((0|(f=f+1|0))<s[r+8>>2]))break}}c=s[r+52>>2],k=s[r+48>>2],o=mf(16),s[(f=o)>>2]=0,s[f+4>>2]=0,s[f+8>>2]=0,s[f+12>>2]=0,s[b+8>>2]=0,s[b>>2]=0,s[b+4>>2]=0;r:{if(a){if(a>>>0>=1073741824)break r;U=mf(f=a<<2),s[b>>2]=U,s[b+8>>2]=f+U,Ge(U,0,f)}T=1,f=s[r+56>>2],D=s[f>>2];e:if(!((0|(f=s[f+4>>2]-D|0))<8))for(j=(0|(V=f>>2))<=2?2:V,I=V>>>0<=1?1:V,F=-2&a,B=1&a,J=-4&a,E=3&a,Y=a-1|0,w=a<<2,M=a>>>0<4,T=0,d=1;;){i:{f:{a:{t:{if((0|d)!=(0|I)){b:{A:if(-1!=(0|(t=s[(d<<2)+D>>2]))){f=t+2|0,N=(v=s[k+12>>2])+(((u=(t>>>0)%3|0)?t-1:f)<<2)|0,l=0,W=!!(0|u)|-1!=(0|f),p=1,f=t;n:{for(;;){if(-1!=(0|(u=s[v+(f<<2)>>2]))){y=-1,R=s[c>>2],Z=s[k>>2],_=R+(s[Z+(u<<2)>>2]<<2)|0,-1!=(0|(h=((h=u+1|0)>>>0)%3|0?h:u-2|0))&&(y=s[Z+(h<<2)>>2]),h=s[_>>2];o:{if((u>>>0)%3|0)_=u-1|0;else if(G=-1,-1==(0|(_=u+2|0)))break o;G=s[Z+(_<<2)>>2]}if(!((0|d)<=(0|h)||(0|(_=s[R+(y<<2)>>2]))>=(0|d)||(0|(y=s[R+(G<<2)>>2]))>=(0|d))){if(u=s[(b+16|0)+m(l,12)>>2],a){if(y=m(a,y),Z=m(a,_),R=m(a,h),_=0,G=0,Y)for(;s[u+(_<<2)>>2]=(s[(_+y<<2)+i>>2]+s[(_+Z<<2)+i>>2]|0)-s[(_+R<<2)+i>>2],s[u+((h=1|_)<<2)>>2]=(s[(y+h<<2)+i>>2]+s[(h+Z<<2)+i>>2]|0)-s[(h+R<<2)+i>>2],_=_+2|0,(0|F)!=(0|(G=G+2|0)););B&&(s[u+(_<<2)>>2]=(s[(_+y<<2)+i>>2]+s[(_+Z<<2)+i>>2]|0)-s[(_+R<<2)+i>>2])}if(u=4,4==(0|(l=l+1|0)))break n}}o:if(1&p){if(u=-1,-1==(0|(f=((_=f+1|0)>>>0)%3|0?_:f-2|0)))break o;if(u=-1,-1==(0|(f=s[v+(f<<2)>>2])))break o;u=((u=f+1|0)>>>0)%3|0?u:f-2|0}else{if((f>>>0)%3|0)_=f-1|0;else if(u=-1,-1==(0|(_=f+2|0)))break o;u=-1,-1!=(0|(f=s[v+(_<<2)>>2]))&&(u=f-1|0,(f>>>0)%3|0||(u=f+2|0))}o:if((0|t)!=(0|(f=u))){if(-1==(0|f)&p){if(!W)break o;if(-1==(0|(f=s[N>>2])))break o;p=0,f=(f>>>0)%3|0?f-1|0:f+2|0}if(-1!=(0|f))continue}break}if((0|(u=l))<=0)break A}for(a&&Ge(U,0,w),Z=((f=u-1|0)<<2)+o|0,h=f=m(f,12)+r|0,G=s[f- -64>>2],p=0,f=s[b>>2],t=0;;){if(l=s[Z>>2],s[Z>>2]=l+1,l>>>0>=G>>>0)break e;if(!(s[s[h+60>>2]+(l>>>3&536870908)>>2]>>>l&1)&&(t=t+1|0,a)){if(l=s[(b+16|0)+m(p,12)>>2],y=0,_=0,R=0,!M)for(;s[(N=(v=_<<2)+f|0)>>2]=s[l+v>>2]+s[N>>2],s[(W=(N=4|v)+f|0)>>2]=s[l+N>>2]+s[W>>2],s[(W=(N=8|v)+f|0)>>2]=s[l+N>>2]+s[W>>2],s[(N=(v|=12)+f|0)>>2]=s[l+v>>2]+s[N>>2],_=_+4|0,(0|J)!=(0|(R=R+4|0)););if(E)for(;s[(R=(v=_<<2)+f|0)>>2]=s[l+v>>2]+s[R>>2],_=_+1|0,(0|E)!=(0|(y=y+1|0)););}if((0|(p=p+1|0))==(0|u))break}if(u=m(a,d),!t)break b;if(!a)break f;if(_=0,f=0,Y)break t;break a}u=m(a,d)}if(s[r+8>>2]<=0)break i;for(p=(m(d-1|0,a)<<2)+i|0,l=s[A>>2],_=0;(0|(t=s[(f=_<<2)+p>>2]))>(0|(y=s[r+16>>2]))?s[f+l>>2]=y:(f=f+l|0,y=s[r+12>>2],s[f>>2]=(0|y)>(0|t)?y:t),(0|(_=_+1|0))<(0|(t=s[r+8>>2])););if(f=0,(0|t)<=0)break i;for(_=(t=u<<2)+i|0,p=e+t|0;;){t=(u=f<<2)+_|0,u=s[u+p>>2]+s[u+l>>2]|0,s[t>>2]=u;b:{if((0|u)>s[r+16>>2])u=u-s[r+20>>2]|0;else{if((0|u)>=s[r+12>>2])break b;u=u+s[r+20>>2]|0}s[t>>2]=u}if(!((0|(f=f+1|0))<s[r+8>>2]))break}break i}Za(),n()}for(;s[(p=(l=_<<2)+U|0)>>2]=s[p>>2]/(0|t),s[(l=(4|l)+U|0)>>2]=s[l>>2]/(0|t),_=_+2|0,(0|F)!=(0|(f=f+2|0)););}B&&(s[(f=(_<<2)+U|0)>>2]=s[f>>2]/(0|t))}if(!(s[r+8>>2]<=0)){for(l=s[A>>2],_=0;(0|(t=s[(f=_<<2)+U>>2]))>(0|(p=s[r+16>>2]))?s[f+l>>2]=p:(f=f+l|0,p=s[r+12>>2],s[f>>2]=(0|p)>(0|t)?p:t),(0|(_=_+1|0))<(0|(t=s[r+8>>2])););if(f=0,!((0|t)<=0))for(_=(t=u<<2)+i|0,p=e+t|0;;){t=(u=f<<2)+_|0,u=s[u+p>>2]+s[u+l>>2]|0,s[t>>2]=u;f:{if((0|u)>s[r+16>>2])u=u-s[r+20>>2]|0;else{if((0|u)>=s[r+12>>2])break f;u=u+s[r+20>>2]|0}s[t>>2]=u}if(!((0|(f=f+1|0))<s[r+8>>2]))break}}}if(T=(0|V)<=(0|(d=d+1|0)),(0|d)==(0|j))break}return(r=s[b>>2])&&mr(r),mr(o),(r=s[b+52>>2])&&(s[b+56>>2]=r,mr(r)),(r=s[b+40>>2])&&(s[b+44>>2]=r,mr(r)),(r=s[b+28>>2])&&(s[b+32>>2]=r,mr(r)),(r=s[b+16>>2])&&(s[b+20>>2]=r,mr(r)),Q=b- -64|0,0|T}ha(),n()},function(r){var e=0;return s[(r|=0)>>2]=5816,(e=s[r+76>>2])&&mr(e),e=s[r+68>>2],s[r+68>>2]=0,e&&mr(e),s[r>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),0|r},function(r){var e=0;s[(r|=0)>>2]=5816,(e=s[r+76>>2])&&mr(e),e=s[r+68>>2],s[r+68>>2]=0,e&&mr(e),s[r>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),mr(r)},_a,Nf,ma,na,Uf,function(r,e){r|=0,e|=0;var i,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0,u=0,y=0;Q=i=Q-32|0,s[i+28>>2]=0;r:{if(l[e+38>>1]<=513){if(f=s[e+20>>2],f=(t=(a=s[e+16>>2])+4|0)>>>0<4?f+1|0:f,n=s[e+12>>2],p[e+8>>2]<t>>>0&(0|n)<=(0|f)|(0|f)>(0|n))break r;a=a+s[e>>2]|0,b=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[e+16>>2]=t,s[e+20>>2]=f}else{if(!Ni(1,i+28|0,e))break r;b=s[i+28>>2]}if(b&&(f=s[r+48>>2],!(s[f+4>>2]-s[f>>2]>>2>>>0<b>>>0)&&(ae(r+76|0,b),s[(f=i+8|0)>>2]=0,s[f+4>>2]=0,c[f+5|0]=0,c[f+6|0]=0,c[f+7|0]=0,c[f+8|0]=0,c[f+9|0]=0,c[f+10|0]=0,c[f+11|0]=0,c[f+12|0]=0,Mr(f,e)))){for(n=1;a=1<<o,t=Xi(f),A=s[r+76>>2]+(o>>>3&536870908)|0,1&(t^=n)?a=s[A>>2]&~a:a|=s[A>>2],n=1^t,s[A>>2]=a,(0|b)!=(0|(o=o+1|0)););f=s[e+8>>2],A=t=s[e+12>>2],n=t=s[e+20>>2],o=a=(b=s[e+16>>2])+4|0,a>>>0>f>>>0&(0|(t=a>>>0<4?t+1|0:t))>=(0|A)|(0|t)>(0|A)||(u=s[e>>2],k=_[0|(a=u+b|0)]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[e+16>>2]=o,s[e+20>>2]=t,a=f,f=n,a>>>0<(t=b+8|0)>>>0&(0|(f=t>>>0<8?f+1|0:f))>=(0|A)|(0|f)>(0|A)||(a=_[0|(a=o+u|0)]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[e+16>>2]=t,s[e+20>>2]=f,(0|a)<(0|k)||(s[r+16>>2]=a,s[r+12>>2]=k,!(f=(a>>31)-((k>>31)+(a>>>0<k>>>0)|0)|0)&(e=a-k|0)>>>0>2147483646|f||(y=1,f=e+1|0,s[r+20>>2]=f,e=f>>>1|0,s[r+24>>2]=e,s[r+28>>2]=0-e,1&f||(s[r+24>>2]=e-1)))))}}return Q=i+32|0,0|y},function(r,e,i,f,a,t){r|=0,e|=0,i|=0,f|=0,a|=0,t|=0;var b=0,A=0,o=v(0),k=0,u=0,l=v(0),p=v(0),d=v(0),R=v(0),N=0,Z=v(0),U=v(0),V=v(0),T=v(0),D=v(0),F=0,B=v(0),E=v(0),Y=0,j=v(0),I=0;r:{if(2==(0|a)&&(s[r+64>>2]=t,s[r+72>>2]=2,a=mf(8),f=s[r+68>>2],s[r+68>>2]=a,f&&mr(f),s[r+8>>2]=2,a=s[(F=r+32|0)>>2],(f=s[r+36>>2]-a|0)>>>0<=7?ai(F,2-(f>>>2|0)|0):8!=(0|f)&&(s[r+36>>2]=a+8),A=1,f=s[r+56>>2],!((0|(f=s[f+4>>2]-s[f>>2]|0))<=0)))for(I=(f=f>>>2|0)>>>0<=1?1:f,f=0;;){if(t=s[r+56>>2],a=s[t>>2],s[t+4>>2]-a>>2>>>0<=f>>>0)break r;if(Z=v(0),Q=b=Q-48|0,A=-1,-1==(0|(a=s[a+(f<<2)>>2]))||(k=s[r+48>>2],-1!=(0|(t=((t=a+1|0)>>>0)%3|0?t:a-2|0))&&(A=s[s[k>>2]+(t<<2)>>2]),t=-1,-1!=(0|(a=a+((a>>>0)%3|0?-1:2)|0))&&(t=s[s[k>>2]+(a<<2)>>2]),a=s[r+52>>2],k=s[a>>2],(a=s[a+4>>2]-k>>2)>>>0<=A>>>0|a>>>0<=t>>>0))Za(),n();else{e:if((0|f)<=(0|(a=s[k+(A<<2)>>2]))|(0|(k=s[k+(t<<2)>>2]))>=(0|f)){if((0|f)>(0|a))t=s[r+72>>2],a=m(a,t);else{if((0|f)<=0){if(A=1,s[r+72>>2]<=0)break e;for(a=s[r+68>>2],t=0;s[a+(t<<2)>>2]=0,(0|(t=t+1|0))<s[r+72>>2];);break e}t=s[r+72>>2],a=m(t,f-1|0)}if(A=1,!((0|t)<=0))for(k=s[r+68>>2],t=0;s[k+(t<<2)>>2]=s[(a+t<<2)+i>>2],(0|(t=t+1|0))<s[r+72>>2];);}else{if(t=s[r+72>>2],A=(m(t,k)<<2)+i|0,l=v(s[A+4>>2]),t=(m(a,t)<<2)+i|0,R=v(s[t+4>>2]),!((B=v(s[t>>2]))!=(p=v(s[A>>2]))|l!=R)){A=+l>2147483647,a=s[r+68>>2],t=v(h(l))<v(2147483648)?~~l:-2147483648,s[a+4>>2]=l<v(-2147483648)||A?-2147483648:t,A=+p>2147483647,t=v(h(p))<v(2147483648)?~~p:-2147483648,s[a>>2]=p<v(-2147483648)||A?-2147483648:t,A=1;break e}t=s[s[r+64>>2]+(f<<2)>>2],s[b+40>>2]=0,s[b+32>>2]=0,s[b+36>>2]=0,A=s[r+60>>2],_[A+84|0]||(t=s[s[A+68>>2]+(t<<2)>>2]),Ar(A,t,c[A+24|0],b+32|0),t=s[s[r+64>>2]+(a<<2)>>2],s[b+24>>2]=0,s[b+16>>2]=0,s[b+20>>2]=0,a=s[r+60>>2],_[a+84|0]||(t=s[s[a+68>>2]+(t<<2)>>2]),Ar(a,t,c[a+24|0],b+16|0),A=s[s[r+64>>2]+(k<<2)>>2],s[b+8>>2]=0,s[b>>2]=0,s[b+4>>2]=0,a=s[r+60>>2],_[a+84|0]||(A=s[s[a+68>>2]+(A<<2)>>2]),Ar(a,A,c[a+24|0],b),d=y[b+24>>2],U=v(y[b+8>>2]-d),V=y[b+20>>2],T=v(y[b+4>>2]-V),j=y[b+16>>2],D=v(y[b>>2]-j),E=v(v(U*U)+v(v(T*T)+v(v(D*D)+v(0)))),s[r+88>>2]>=258&&(o=v(0),!(E>v(0)))||(o=v(y[b+40>>2]-d),d=v(y[b+36>>2]-V),V=v(y[b+32>>2]-j),Z=v(v(v(U*o)+v(v(T*d)+v(v(D*V)+v(0))))/E),o=v(o-v(U*Z)),U=v(o*o),o=v(d-v(T*Z)),d=v(o*o),o=v(V-v(D*Z)),o=v(W(v(v(U+v(d+v(v(o*o)+v(0))))/E)))),(a=s[r+80>>2])&&(t=a-1|0,A=s[s[r+76>>2]+(t>>>3&536870908)>>2],s[r+80>>2]=t,l=v(l-R),d=v(v(l*Z)+R),p=v(p-B),R=v(p*o),R=v(d+((t=A>>>t&1)?R:v(-R))),o=v(o*l),(u=G(+v(v(v(p*Z)+B)+(t?v(-o):o))+.5))<-2147483648|u!=u|u>2147483647?(A=s[r+68>>2],s[A>>2]=-2147483648):(A=s[r+68>>2],t=h(u)<2147483648?~~u:-2147483648,s[A>>2]=t),k=(u=G(+R+.5))>2147483647,t=h(u)<2147483648?~~u:-2147483648,s[A+4>>2]=u<-2147483648||u!=u||k?-2147483648:t),A=!!(0|a)}Q=b+48|0}if(!A)return 0;if(!(s[r+8>>2]<=0)){for(Y=s[r+68>>2],k=s[F>>2],a=0;(0|(b=s[(t=a<<2)+Y>>2]))>(0|(N=s[r+16>>2]))?s[t+k>>2]=N:(t=t+k|0,N=s[r+12>>2],s[t>>2]=(0|N)>(0|b)?N:b),(0|(a=a+1|0))<(0|(b=s[r+8>>2])););if(t=0,!((0|b)<=0))for(Y=(a=f<<3)+i|0,N=e+a|0;;){a=(b=t<<2)+Y|0,b=s[b+N>>2]+s[b+k>>2]|0,s[a>>2]=b;e:{if((0|b)>s[r+16>>2])b=b-s[r+20>>2]|0;else{if((0|b)>=s[r+12>>2])break e;b=b+s[r+20>>2]|0}s[a>>2]=b}if(!((0|(t=t+1|0))<s[r+8>>2]))break}}if((0|I)==(0|(f=f+1|0)))break}return 0|A}Za(),n()},function(r){var e=0;return s[(r|=0)>>2]=6032,(e=s[r+76>>2])&&mr(e),s[r>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),0|r},function(r){var e=0;s[(r|=0)>>2]=6032,(e=s[r+76>>2])&&mr(e),s[r>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),mr(r)},pa,Nf,ma,na,Uf,jr,function(r,e,i,f,a,t){r|=0,e|=0,i|=0,f|=0,t|=0;var b=0,A=0,o=0,k=0,u=0,l=0,p=0,y=0,d=0,m=0,v=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0,V=0,T=0,D=0,F=0,B=0,E=0,Y=0,I=0,J=0,w=0,M=0,O=0,X=0,g=0,z=0,H=0,C=0,P=0,S=0,x=0,L=0,K=0,q=0,$=0,rr=0;r:{if(2==(0|(a|=0))&&(s[r+8>>2]=2,s[r- -64>>2]=t,a=s[(M=r+32|0)>>2],(f=s[r+36>>2]-a|0)>>>0<=7?ai(M,2-(f>>>2|0)|0):8!=(0|f)&&(s[r+36>>2]=a+8),o=1,f=s[r+56>>2],!((0|(f=s[f+4>>2]-s[f>>2]|0))<=0)))for(d=r+60|0,K=(f=f>>>2|0)>>>0<=1?1:f,q=r+68|0,f=0;;){if(t=s[r+56>>2],a=s[t>>2],s[t+4>>2]-a>>2>>>0<=f>>>0)break r;if(Q=u=Q-80|0,t=-1,-1==(0|(a=s[a+(f<<2)>>2]))||(o=s[d+32>>2],-1!=(0|(b=((b=a+1|0)>>>0)%3|0?b:a-2|0))&&(t=s[s[o>>2]+(b<<2)>>2]),m=-1,-1!=(0|(a=a+((a>>>0)%3|0?-1:2)|0))&&(m=s[s[o>>2]+(a<<2)>>2]),o=s[d+36>>2],a=s[o>>2],(o=s[o+4>>2]-a>>2)>>>0<=t>>>0|o>>>0<=m>>>0))Za(),n();else{e:{i:{f:{a:{t:{if(!((0|(k=s[a+(m<<2)>>2]))>=(0|f)|(0|(t=s[a+(t<<2)>>2]))>=(0|f))){if(G=s[4+(o=(k<<3)+i|0)>>2],a=s[4+(b=(t<<3)+i|0)>>2],!((0|(l=s[o>>2]))!=(0|(o=s[b>>2]))|(0|a)!=(0|G))){s[d+8>>2]=o,s[d+12>>2]=a;break t}if(m=s[s[d+4>>2]+(f<<2)>>2],s[u+72>>2]=0,s[u+76>>2]=0,s[(b=u- -64|0)>>2]=0,s[b+4>>2]=0,s[u+56>>2]=0,s[u+60>>2]=0,b=s[d>>2],_[b+84|0]||(m=s[s[b+68>>2]+(m<<2)>>2]),er(b,m,c[b+24|0],u+56|0),m=s[s[d+4>>2]+(t<<2)>>2],s[u+48>>2]=0,s[u+52>>2]=0,s[u+40>>2]=0,s[u+44>>2]=0,s[u+32>>2]=0,s[u+36>>2]=0,b=s[d>>2],_[b+84|0]||(m=s[s[b+68>>2]+(m<<2)>>2]),er(b,m,c[b+24|0],u+32|0),m=s[s[d+4>>2]+(k<<2)>>2],s[u+24>>2]=0,s[u+28>>2]=0,s[u+16>>2]=0,s[u+20>>2]=0,s[u+8>>2]=0,s[u+12>>2]=0,b=s[d>>2],_[b+84|0]||(m=s[s[b+68>>2]+(m<<2)>>2]),er(b,m,c[b+24|0],u+8|0),U=(b=s[u+16>>2])-(y=s[u+40>>2])|0,O=s[u+44>>2],E=b=s[u+20>>2]-(O+(b>>>0<y>>>0)|0)|0,k=Ki(U,b,U,b),v=j,T=(b=s[u+8>>2])-(V=s[u+32>>2])|0,X=s[u+36>>2],Y=b=s[u+12>>2]-(X+(b>>>0<V>>>0)|0)|0,b=(A=k)+(k=Ki(T,b,T,b))|0,A=j+v|0,A=b>>>0<k>>>0?A+1|0:A,F=(k=s[u+24>>2])-(D=s[u+48>>2])|0,g=s[u+52>>2],I=k=s[u+28>>2]-(g+(k>>>0<D>>>0)|0)|0,p=b,b=Ki(F,k,F,k),A=j+A|0,(R=b>>>0>(h=p+b|0)>>>0?A+1|0:A)|h){if(m=0,B=re(-1,2147483647,h,R),H=t=o>>31,z=o,o=(v=o^(b=A=t>>31))-b|0,b=t=(t^b)-((b>>>0>v>>>0)+b|0)|0,C=t=a>>31,p=(v=(J=a)^(a=t>>31))-a|0,(0|(k=j))==(0|(a=(t=(0|b)==(0|(a=((A=t>>31)^t)-((a>>>0>v>>>0)+A|0)|0))&o>>>0>p>>>0|a>>>0<b>>>0)?b:a))&(o=t?o:p)>>>0>B>>>0|a>>>0>k>>>0)break e;if(a=Ki((o=s[u+64>>2])-y|0,(P=s[u+68>>2])-((o>>>0<y>>>0)+O|0)|0,U,E),t=j,k=Ki((b=s[u+56>>2])-V|0,(S=s[u+60>>2])-((b>>>0<V>>>0)+X|0)|0,T,Y),A=j+t|0,A=(a=k+a|0)>>>0<k>>>0?A+1|0:A,k=(t=a)+(a=Ki((p=s[u+72>>2])-D|0,(x=s[u+76>>2])-((p>>>0<D>>>0)+g|0)|0,F,I))|0,t=j+A|0,v=a>>>0>k>>>0?t+1|0:t,B=(a=l)-z|0,L=a=(a>>31)-((a>>>0<z>>>0)+H|0)|0,t=(W=(l=a>>31)^B)-l|0,A=a=((A=a>>31)^a)-((l>>>0>W>>>0)+A|0)|0,W=G-J|0,G=a=(G>>31)-((G>>>0<J>>>0)+C|0)|0,l=t,(t=re(-1,2147483647,(t=(0|A)==(0|(a=((t=a>>31)^a)-(((N=a>>31)>>>0>(Z=N^W)>>>0)+t|0)|0))&l>>>0>(w=Z-N|0)>>>0|a>>>0<A>>>0)?l:w,t?A:a)>>>0<k>>>0)&(0|(a=j))<=(0|v)|(0|a)<(0|v))break e;if(t=a=Y>>31,a=(l=a^T)-a|0,w=a=(A=(0|(t=(t^Y)-((t>>>0>l>>>0)+t|0)|0))==(0|(l=((A=E>>31)^E)-((A>>>0>(N=A^U)>>>0)+A|0)|0))&a>>>0>(Z=N-A|0)>>>0|t>>>0>l>>>0)?a:Z,(t=re(-1,2147483647,(a=(0|(t=A?t:l))==(0|(l=((A=I>>31)^I)-((A>>>0>(N=A^F)>>>0)+A|0)|0))&a>>>0>(Z=N-A|0)>>>0|t>>>0>l>>>0)?w:Z,a?t:l)>>>0<k>>>0)&(0|(a=j))<=(0|v)|(0|a)<(0|v))break e;if(l=1,a=0,t=y,y=Si(Ki(k,v,U,E),j,h,R),A=j+O|0,A=(t=t+y|0)>>>0<y>>>0?A+1|0:A,y=Ki(y=o-t|0,t=P-((t>>>0>o>>>0)+A|0)|0,y,t),U=j,t=b,A=Si(Ki(k,v,T,Y),j,h,R),b=j+X|0,b=A>>>0>(o=A+V|0)>>>0?b+1|0:b,b=Ki(A=t-o|0,t=S-((t>>>0<o>>>0)+b|0)|0,A,t),t=j+U|0,t=b>>>0>(o=b+y|0)>>>0?t+1|0:t,y=o,b=Si(Ki(k,v,F,I),j,h,R),A=j+g|0,A=b>>>0>(o=b+D|0)>>>0?A+1|0:A,p=Ki(b=p-o|0,o=x-((o>>>0>p>>>0)+A|0)|0,b,o),b=j+t|0,t=Ki(o=p+y|0,o>>>0<p>>>0?b+1|0:b,h,R),p=o=j,!o&t>>>0<=1)break a;for(A=t;b=a<<1|l>>>31,l<<=1,a=b,y=!o&A>>>0>7|!!(0|o),A=(3&o)<<30|A>>>2,o=o>>>2|0,y;);break f}}if((0|f)>(0|t))a=t<<1;else{if((0|f)<=0){s[d+8>>2]=0,s[d+12>>2]=0;break t}a=(f<<1)-2|0}a=(a<<2)+i|0,s[d+8>>2]=s[a>>2],s[d+12>>2]=s[a+4>>2]}m=1;break e}if(a=p,l=t,t-1|0)break i}for(;o=re(t,p,l,a),A=a+j|0,o=Ki(l=(1&(A=(a=o+l|0)>>>0<l>>>0?A+1|0:A))<<31|a>>>1,a=A>>>1|0,l,a),(0|p)==(0|(b=j))&t>>>0<o>>>0|b>>>0>p>>>0;);}(t=s[d+20>>2])&&(b=t-1|0,A=s[s[d+16>>2]+(b>>>3&536870908)>>2],s[d+20>>2]=b,m=1,t=Ki(k,v,W,G),o=j,p=(y=Ki(h,R,J,C))+t|0,t=j+o|0,t=p>>>0<y>>>0?t+1|0:t,o=Ki(l,a,B,L),A=(b=A>>>b&1)?0-o|0:o,y=t,t=j,o=y+(b?0-(t+!!(0|o)|0)|0:t)|0,$=d,rr=Si(p=A+p|0,A>>>0>p>>>0?o+1|0:o,h,R),s[$+12>>2]=rr,t=Ki(k,v,B,L),o=j,t=(k=Ki(h,R,z,H))+t|0,A=j+o|0,o=0-(a=Ki(l,a,W,G))|0,l=j,A=(t>>>0<k>>>0?A+1|0:A)+(b?l:0-(!!(0|a)+l|0)|0)|0,$=d,rr=Si(t=(o=b?a:o)+t|0,t>>>0<o>>>0?A+1|0:A,h,R),s[$+8>>2]=rr)}Q=u+80|0,a=m}if(o=a,!a)return 0;if(!(s[r+8>>2]<=0)){for(l=s[M>>2],a=0;(0|(b=s[(t=a<<2)+q>>2]))>(0|(k=s[r+16>>2]))?s[t+l>>2]=k:(t=t+l|0,k=s[r+12>>2],s[t>>2]=(0|k)>(0|b)?k:b),(0|(a=a+1|0))<(0|(b=s[r+8>>2])););if(t=0,!((0|b)<=0))for(k=(a=f<<3)+i|0,v=e+a|0;;){a=(b=t<<2)+k|0,b=s[b+v>>2]+s[b+l>>2]|0,s[a>>2]=b;e:{if((0|b)>s[r+16>>2])b=b-s[r+20>>2]|0;else{if((0|b)>=s[r+12>>2])break e;b=b+s[r+20>>2]|0}s[a>>2]=b}if(!((0|(t=t+1|0))<s[r+8>>2]))break}}if((0|K)==(0|(f=f+1|0)))break}return 0|o}Za(),n()},function(r){var e;return s[(r|=0)>>2]=6256,s[r>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),0|r},function(r){var e;s[(r|=0)>>2]=6256,s[r>>2]=3272,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),mr(r)},da,of,ma,na,Wf,oe,function(r,e,i,f,a,t){e|=0,i|=0,f|=0,a|=0,t|=0;var b,A=0,o=0,k=0,c=0,u=0,_=0,l=0,p=0;Q=b=Q-32|0,s[68+(r|=0)>>2]=t,f=s[r+56>>2],a=s[f>>2],f=s[f+4>>2],s[b+24>>2]=0,s[b+16>>2]=0,s[b+20>>2]=0;r:{if((0|(f=f-a|0))>0)for(_=r+60|0,l=(f=f>>>2|0)>>>0<=1?1:f,p=r+112|0;;){if(a=s[r+56>>2],f=s[a>>2],s[a+4>>2]-f>>2>>>0<=k>>>0)break r;if(yr(_,s[f+(k<<2)>>2],b+16|0),t=((f=(o=s[b+20>>2])>>31)^o)-f+(((a=(A=s[b+16>>2])>>31)^A)-a)|0,a=((f=(c=s[b+24>>2])>>31)^c)-f|0,f=0,(f=(u=a)>>>0>(a=a+t|0)>>>0?1:f)|a?(A=Si(Ki(t=s[r+108>>2],u=t>>31,A,A>>31),j,a,f),s[b+16>>2]=A,f=Si(Ki(t,u,o,o>>31),j,a,f),s[b+20>>2]=f,f=(a=((a=f)^(f>>=31))-f|0)+(((f=A>>31)^A)-f|0)|0,s[b+24>>2]=(0|c)>=0?t-f:f-t):s[b+16>>2]=s[r+108>>2],f=Xi(p),t=s[b+16>>2],f?(s[b+24>>2]=0-s[b+24>>2],a=0-s[b+20>>2]|0,s[b+20>>2]=a,t=0-t|0,s[b+16>>2]=t):a=s[b+20>>2],(0|t)>=0?(f=(t=s[r+108>>2])+s[b+24>>2]|0,t=a+t|0):((0|a)<0?t=((f=s[b+24>>2])^(t=f>>31))-t|0:(t=(f=s[b+24>>2])>>31,t=s[r+100>>2]+(t-(f^t)|0)|0),(0|f)<0?f=((f=a>>31)^a)-f|0:(f=a>>31,f=s[r+100>>2]+(f-(f^a)|0)|0)),a=s[r+100>>2],f|t?(0|f)!=(0|a)|t?(0|a)!=(0|t)|f?t||(0|(o=s[r+108>>2]))>=(0|f)?(0|a)!=(0|t)||(0|(o=s[r+108>>2]))<=(0|f)?(0|f)!=(0|a)||(0|(a=s[r+108>>2]))<=(0|t)?f||(f=0,(0|(a=s[r+108>>2]))>=(0|t)||(t=(a<<1)-t|0)):t=(a<<1)-t|0:f=(o<<1)-f|0:(f=(o<<1)-f|0,t=0):f=t:t=f:t=f=a,s[b+12>>2]=f,s[b+8>>2]=t,!(s[r+8>>2]<=0)){for(o=s[r+32>>2],t=0;(0|(a=s[(f=t<<2)+(b+8|0)>>2]))>(0|(A=s[r+16>>2]))?s[f+o>>2]=A:(f=f+o|0,A=s[r+12>>2],s[f>>2]=(0|A)>(0|a)?A:a),(0|(t=t+1|0))<(0|(a=s[r+8>>2])););if(f=0,!((0|a)<=0))for(A=(a=k<<3)+i|0,c=e+a|0;;){a=(t=f<<2)+A|0,t=s[t+c>>2]+s[t+o>>2]|0,s[a>>2]=t;e:{if((0|t)>s[r+16>>2])t=t-s[r+20>>2]|0;else{if((0|t)>=s[r+12>>2])break e;t=t+s[r+20>>2]|0}s[a>>2]=t}if(!((0|(f=f+1|0))<s[r+8>>2]))break}}if((0|l)==(0|(k=k+1|0)))break}return Q=b+32|0,1}Za(),n()},sa,Na,wf,ea,yr,Ga,Ff,la,ma,function(r,e,i,f,a,t){e|=0,i|=0,f|=0,a|=0,t|=0;var b,A,n=0,o=0,k=0,c=0,u=0,_=0,l=0,p=0,y=0;if(s[8+(r|=0)>>2]=a,o=s[(b=r+32|0)>>2],(n=s[r+36>>2]-o>>2)>>>0<a>>>0?(ai(b,a-n|0),t=s[r+8>>2]):(t=a)>>>0>=n>>>0||(s[r+36>>2]=o+(a<<2),t=a),A=Ge(mf(n=a>>>0>1073741823?-1:a<<2),0,n),!((0|t)<=0)){for(o=s[r+32>>2];(0|(n=s[(t=k<<2)+A>>2]))>(0|(c=s[r+16>>2]))?s[t+o>>2]=c:(t=t+o|0,c=s[r+12>>2],s[t>>2]=(0|c)>(0|n)?c:n),(0|(t=s[r+8>>2]))>(0|(k=k+1|0)););if(!((0|t)<=0))for(k=0;;){t=(n=k<<2)+i|0,n=s[e+n>>2]+s[n+o>>2]|0,s[t>>2]=n;r:{if((0|n)>s[r+16>>2])n=n-s[r+20>>2]|0;else{if((0|n)>=s[r+12>>2])break r;n=n+s[r+20>>2]|0}s[t>>2]=n}if(!((0|(t=s[r+8>>2]))>(0|(k=k+1|0))))break}}if(!((0|f)<=(0|a)|(0|t)<=0))for(p=0-a<<2,n=a;;){if(!((0|t)<=0)){for(y=(l=(_=n<<2)+i|0)+p|0,c=s[b>>2],k=0;(0|(o=s[(t=k<<2)+y>>2]))>(0|(u=s[r+16>>2]))?s[t+c>>2]=u:(t=t+c|0,u=s[r+12>>2],s[t>>2]=(0|u)>(0|o)?u:o),(0|(t=s[r+8>>2]))>(0|(k=k+1|0)););if(k=0,!((0|t)<=0))for(_=e+_|0;;){t=(o=k<<2)+l|0,o=s[o+_>>2]+s[o+c>>2]|0,s[t>>2]=o;r:{if((0|o)>s[r+16>>2])o=o-s[r+20>>2]|0;else{if((0|o)>=s[r+12>>2])break r;o=o+s[r+20>>2]|0}s[t>>2]=o}if(!((0|(t=s[r+8>>2]))>(0|(k=k+1|0))))break}}if(!((0|(n=a+n|0))<(0|f)))break}return mr(A),1},kf,sf,function(r,e,i){e|=0,i|=0;var f=0;return s[4+(r|=0)>>2]=e,e=s[s[s[e+4>>2]+8>>2]+(i<<2)>>2],s[r+12>>2]=i,s[r+8>>2]=e,r=s[r+8>>2],3==_[r+24|0]&&(f=9==s[r+28>>2]),0|f},function(r,e,i){return e|=0,i|=0,_[s[4+(r|=0)>>2]+36|0]>=2&&(e=0,!Bi(r+24|0,Pe(r),i))||(e=Mi(r+24|0,s[r+16>>2])),0|e},function(r,e,i){e|=0,i|=0;var f=0;return _[s[4+(r|=0)>>2]+36|0]<=1&&(f=0,!Bi(r+24|0,s[r+8>>2],i))||(f=Ur(r,e,i)),0|f},function(r,e,i){r|=0,e|=0;var f,a=0,t=0,b=0,A=0,n=0;Q=f=Q-32|0;r:{e:switch((i|=0)-2|0){case 0:if(i=s[r+4>>2],t=s[r+12>>2],s[f+24>>2]=-1,s[f+16>>2]=-1,s[f+20>>2]=1065353216,s[f+8>>2]=-1,s[f+12>>2]=-1,-2==(0|e))break r;if(n=s[s[s[i+4>>2]+8>>2]+(t<<2)>>2],1==(0|Ya[s[s[i>>2]+8>>2]](i))){A=s[s[s[i+4>>2]+8>>2]+(t<<2)>>2];i:if(!(1!=(0|Ya[s[s[i>>2]+8>>2]](i))|e-1>>>0>5||!(b=0|Ya[s[s[i>>2]+36>>2]](i))|!(r=0|Ya[s[s[i>>2]+44>>2]](i,t)))){if(t=0|Ya[s[s[i>>2]+40>>2]](i,t)){if(6!=(0|e))break i;e=s[i+44>>2],a=mf(112),s[a+4>>2]=A,i=s[f+12>>2],s[a+8>>2]=s[f+8>>2],s[a+12>>2]=i,i=s[f+20>>2],s[a+16>>2]=s[f+16>>2],s[a+20>>2]=i,s[a+24>>2]=s[f+24>>2],s[a+40>>2]=r,i=r+12|0,s[a+36>>2]=i,s[a+32>>2]=t,s[a+28>>2]=e,s[a+68>>2]=r,s[a- -64>>2]=i,s[a+60>>2]=t,s[a+56>>2]=e,s[a+48>>2]=0,s[a+52>>2]=0,s[a>>2]=7144,s[a+88>>2]=1065353216,s[a+92>>2]=-1,s[a+80>>2]=-1,s[a+84>>2]=-1,s[a+72>>2]=1,s[a+76>>2]=-1,s[a+44>>2]=7668,r=a+96|0}else{if(6!=(0|e))break i;e=s[i+44>>2],a=mf(112),s[a+4>>2]=A,i=s[f+12>>2],s[a+8>>2]=s[f+8>>2],s[a+12>>2]=i,i=s[f+20>>2],s[a+16>>2]=s[f+16>>2],s[a+20>>2]=i,s[a+24>>2]=s[f+24>>2],s[a+40>>2]=r,i=r+12|0,s[a+36>>2]=i,s[a+32>>2]=b,s[a+28>>2]=e,s[a+68>>2]=r,s[a- -64>>2]=i,s[a+60>>2]=b,s[a+56>>2]=e,s[a+48>>2]=0,s[a+52>>2]=0,s[a>>2]=8080,s[a+88>>2]=1065353216,s[a+92>>2]=-1,s[a+80>>2]=-1,s[a+84>>2]=-1,s[a+72>>2]=1,s[a+76>>2]=-1,s[a+44>>2]=8472,r=a+96|0}s[r>>2]=0,s[r+4>>2]=0,c[r+5|0]=0,c[r+6|0]=0,c[r+7|0]=0,c[r+8|0]=0,c[r+9|0]=0,c[r+10|0]=0,c[r+11|0]=0,c[r+12|0]=0}if(a)break r}a=mf(28),s[a+4>>2]=n,r=s[f+12>>2],s[a+8>>2]=s[f+8>>2],s[a+12>>2]=r,r=s[f+20>>2],s[a+16>>2]=s[f+16>>2],s[a+20>>2]=r,s[a+24>>2]=s[f+24>>2],s[a>>2]=8860;break r;case 1:break e;default:break r}if(i=s[r+4>>2],t=s[r+12>>2],s[f+24>>2]=-1,s[f+16>>2]=-1,s[f+20>>2]=1065353216,s[f+8>>2]=-1,s[f+12>>2]=-1,-2!=(0|e)){if(n=s[s[s[i+4>>2]+8>>2]+(t<<2)>>2],1==(0|Ya[s[s[i>>2]+8>>2]](i))){A=s[s[s[i+4>>2]+8>>2]+(t<<2)>>2];e:if(!(1!=(0|Ya[s[s[i>>2]+8>>2]](i))|e-1>>>0>5||!(b=0|Ya[s[s[i>>2]+36>>2]](i))|!(r=0|Ya[s[s[i>>2]+44>>2]](i,t)))){if(t=0|Ya[s[s[i>>2]+40>>2]](i,t)){if(6!=(0|e))break e;e=s[i+44>>2],a=mf(112),s[a+4>>2]=A,i=s[f+12>>2],s[a+8>>2]=s[f+8>>2],s[a+12>>2]=i,i=s[f+20>>2],s[a+16>>2]=s[f+16>>2],s[a+20>>2]=i,s[a+24>>2]=s[f+24>>2],s[a+40>>2]=r,i=r+12|0,s[a+36>>2]=i,s[a+32>>2]=t,s[a+28>>2]=e,s[a+68>>2]=r,s[a- -64>>2]=i,s[a+60>>2]=t,s[a+56>>2]=e,s[a+48>>2]=0,s[a+52>>2]=0,s[a>>2]=9028,s[a+88>>2]=1065353216,s[a+92>>2]=-1,s[a+80>>2]=-1,s[a+84>>2]=-1,s[a+72>>2]=1,s[a+76>>2]=-1,s[a+44>>2]=9592,r=a+96|0}else{if(6!=(0|e))break e;e=s[i+44>>2],a=mf(112),s[a+4>>2]=A,i=s[f+12>>2],s[a+8>>2]=s[f+8>>2],s[a+12>>2]=i,i=s[f+20>>2],s[a+16>>2]=s[f+16>>2],s[a+20>>2]=i,s[a+24>>2]=s[f+24>>2],s[a+40>>2]=r,i=r+12|0,s[a+36>>2]=i,s[a+32>>2]=b,s[a+28>>2]=e,s[a+68>>2]=r,s[a- -64>>2]=i,s[a+60>>2]=b,s[a+56>>2]=e,s[a+48>>2]=0,s[a+52>>2]=0,s[a>>2]=10032,s[a+88>>2]=1065353216,s[a+92>>2]=-1,s[a+80>>2]=-1,s[a+84>>2]=-1,s[a+72>>2]=1,s[a+76>>2]=-1,s[a+44>>2]=10452,r=a+96|0}s[r>>2]=0,s[r+4>>2]=0,c[r+5|0]=0,c[r+6|0]=0,c[r+7|0]=0,c[r+8|0]=0,c[r+9|0]=0,c[r+10|0]=0,c[r+11|0]=0,c[r+12|0]=0}if(a)break r}a=mf(28),s[a+4>>2]=n,r=s[f+12>>2],s[a+8>>2]=s[f+8>>2],s[a+12>>2]=r,r=s[f+20>>2],s[a+16>>2]=s[f+16>>2],s[a+20>>2]=r,s[a+24>>2]=s[f+24>>2],s[a>>2]=10864}}return Q=f+32|0,0|a},ya,function(r,e){return 0|ce(24+(r|=0)|0,Pe(r),s[r+8>>2])},function(r){return s[(r|=0)>>2]=7144,0|r},function(r){s[(r|=0)>>2]=7144,mr(r)},da,aa,cf,ma,na,Tf,ma,ya,ye,function(r,e,i,f,a,t){e|=0,i|=0,f|=0,a|=0,t|=0;var b,A=0,o=0,k=0,c=0,u=0,_=0,l=0,p=0,d=0;Q=b=Q-48|0,(f=s[8+(r|=0)>>2])-2>>>0<=28&&(s[r+76>>2]=f,f=-2-(a=-1<<f)|0,s[r+84>>2]=f,s[r+80>>2]=~a,s[r+92>>2]=(0|f)/2,y[r+88>>2]=v(2)/v(0|f)),s[r+52>>2]=t,f=s[r+40>>2],a=s[f>>2],f=s[f+4>>2],s[b+16>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0;r:{if((0|(f=f-a|0))>0)for(_=r+8|0,l=r+44|0,p=(f=f>>>2|0)>>>0<=1?1:f,d=r+96|0;;){if(a=s[r+40>>2],f=s[a>>2],s[a+4>>2]-f>>2>>>0<=k>>>0)break r;if(ur(l,s[f+(k<<2)>>2],b+8|0),t=((f=(A=s[b+12>>2])>>31)^A)-f+(((a=(o=s[b+8>>2])>>31)^o)-a)|0,a=((f=(u=s[b+16>>2])>>31)^u)-f|0,f=0,(f=(c=a)>>>0>(a=a+t|0)>>>0?1:f)|a?(o=Si(Ki(t=s[r+92>>2],c=t>>31,o,o>>31),j,a,f),s[b+8>>2]=o,f=Si(Ki(t,c,A,A>>31),j,a,f),s[b+12>>2]=f,f=(a=(f^(a=f>>31))-a|0)+(((f=o>>31)^o)-f|0)|0,s[b+16>>2]=(0|u)>=0?t-f:f-t):s[b+8>>2]=s[r+92>>2],f=Xi(d),t=s[b+8>>2],f?(s[b+16>>2]=0-s[b+16>>2],a=0-s[b+12>>2]|0,s[b+12>>2]=a,t=0-t|0,s[b+8>>2]=t):a=s[b+12>>2],(0|t)>=0?(f=(t=s[r+92>>2])+s[b+16>>2]|0,t=a+t|0):((0|a)<0?t=((f=s[b+16>>2])^(t=f>>31))-t|0:(t=(f=s[b+16>>2])>>31,t=s[r+84>>2]+(t-(f^t)|0)|0),(0|f)<0?f=((f=a>>31)^a)-f|0:(f=a>>31,f=s[r+84>>2]+(f-(f^a)|0)|0)),a=s[r+84>>2],f|t?(0|f)!=(0|a)|t?(0|a)!=(0|t)|f?t||(0|(A=s[r+92>>2]))>=(0|f)?(0|a)!=(0|t)||(0|(A=s[r+92>>2]))<=(0|f)?(0|f)!=(0|a)||(0|(a=s[r+92>>2]))<=(0|t)?f||(f=0,(0|(a=s[r+92>>2]))>=(0|t)||(t=(a<<1)-t|0)):t=(a<<1)-t|0:f=(A<<1)-f|0:(f=(A<<1)-f|0,t=0):f=t:t=f:t=f=a,o=s[4+(A=(a=k<<3)+e|0)>>2],s[b+40>>2]=s[A>>2],s[b+44>>2]=o,s[b+28>>2]=f,s[b+24>>2]=t,ee(b+32|0,_,b+24|0,b+40|0),s[(f=i+a|0)>>2]=s[b+32>>2],s[f+4>>2]=s[b+36>>2],(0|p)==(0|(k=k+1|0)))break}return Q=b+48|0,1}Za(),n()},sa,Na,wf,ea,ur,function(r){return s[(r|=0)>>2]=8080,0|r},function(r){s[(r|=0)>>2]=8080,mr(r)},da,cf,ma,na,Tf,ye,function(r,e,i,f,a,t){e|=0,i|=0,f|=0,a|=0,t|=0;var b,A=0,o=0,k=0,c=0,u=0,_=0,l=0,p=0,d=0;Q=b=Q-48|0,(f=s[8+(r|=0)>>2])-2>>>0<=28&&(s[r+76>>2]=f,f=-2-(a=-1<<f)|0,s[r+84>>2]=f,s[r+80>>2]=~a,s[r+92>>2]=(0|f)/2,y[r+88>>2]=v(2)/v(0|f)),s[r+52>>2]=t,f=s[r+40>>2],a=s[f>>2],f=s[f+4>>2],s[b+16>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0;r:{if((0|(f=f-a|0))>0)for(_=r+8|0,l=r+44|0,p=(f=f>>>2|0)>>>0<=1?1:f,d=r+96|0;;){if(a=s[r+40>>2],f=s[a>>2],s[a+4>>2]-f>>2>>>0<=k>>>0)break r;if(yr(l,s[f+(k<<2)>>2],b+8|0),t=((f=(A=s[b+12>>2])>>31)^A)-f+(((a=(o=s[b+8>>2])>>31)^o)-a)|0,a=((f=(u=s[b+16>>2])>>31)^u)-f|0,f=0,(f=(c=a)>>>0>(a=a+t|0)>>>0?1:f)|a?(o=Si(Ki(t=s[r+92>>2],c=t>>31,o,o>>31),j,a,f),s[b+8>>2]=o,f=Si(Ki(t,c,A,A>>31),j,a,f),s[b+12>>2]=f,f=(a=(f^(a=f>>31))-a|0)+(((f=o>>31)^o)-f|0)|0,s[b+16>>2]=(0|u)>=0?t-f:f-t):s[b+8>>2]=s[r+92>>2],f=Xi(d),t=s[b+8>>2],f?(s[b+16>>2]=0-s[b+16>>2],a=0-s[b+12>>2]|0,s[b+12>>2]=a,t=0-t|0,s[b+8>>2]=t):a=s[b+12>>2],(0|t)>=0?(f=(t=s[r+92>>2])+s[b+16>>2]|0,t=a+t|0):((0|a)<0?t=((f=s[b+16>>2])^(t=f>>31))-t|0:(t=(f=s[b+16>>2])>>31,t=s[r+84>>2]+(t-(f^t)|0)|0),(0|f)<0?f=((f=a>>31)^a)-f|0:(f=a>>31,f=s[r+84>>2]+(f-(f^a)|0)|0)),a=s[r+84>>2],f|t?(0|f)!=(0|a)|t?(0|a)!=(0|t)|f?t||(0|(A=s[r+92>>2]))>=(0|f)?(0|a)!=(0|t)||(0|(A=s[r+92>>2]))<=(0|f)?(0|f)!=(0|a)||(0|(a=s[r+92>>2]))<=(0|t)?f||(f=0,(0|(a=s[r+92>>2]))>=(0|t)||(t=(a<<1)-t|0)):t=(a<<1)-t|0:f=(A<<1)-f|0:(f=(A<<1)-f|0,t=0):f=t:t=f:t=f=a,o=s[4+(A=(a=k<<3)+e|0)>>2],s[b+40>>2]=s[A>>2],s[b+44>>2]=o,s[b+28>>2]=f,s[b+24>>2]=t,ee(b+32|0,_,b+24|0,b+40|0),s[(f=i+a|0)>>2]=s[b+32>>2],s[f+4>>2]=s[b+36>>2],(0|p)==(0|(k=k+1|0)))break}return Q=b+48|0,1}Za(),n()},sa,Na,wf,ea,yr,sa,Na,la,ma,la,fa,na,function(r,e){r|=0;var i,f,a,t=0,b=0,A=0,n=0,o=0;t=s[8+(e|=0)>>2],i=b=s[e+12>>2],a=b=s[e+20>>2];r:if(!(t>>>0<(n=(f=s[e+16>>2])+4|0)>>>0&(0|(b=n>>>0<4?b+1|0:b))>=(0|i)|(0|b)>(0|i))){if(A=f+s[e>>2]|0,A=_[0|A]|_[A+1|0]<<8|_[A+2|0]<<16|_[A+3|0]<<24,s[e+16>>2]=n,s[e+20>>2]=b,l[e+38>>1]<=513){if(n=t,t=a,(b=f+8|0)>>>0>n>>>0&(0|(t=b>>>0<8?t+1|0:t))>=(0|i)|(0|t)>(0|i))break r;s[e+16>>2]=b,s[e+20>>2]=t}1&A&&((e=31^R(A))-1>>>0>28||(o=1,s[r+8>>2]=e+1,t=-2^(e=-2<<e),s[r+16>>2]=t,s[r+12>>2]=~e,s[r+24>>2]=t>>1,y[r+20>>2]=v(2)/v(0|t)))}return 0|o},function(r,e,i,f,a,t){r|=0,e|=0,i|=0,f|=0,t|=0;var b,A=0,n=0,o=0,k=0,c=0,u=0,_=0;if(Q=t=Q-32|0,b=Ge(mf(A=(a|=0)>>>0>1073741823?-1:a<<2),0,A),o=s[(A=b)>>2],A=s[A+4>>2],c=s[e+4>>2],s[t+24>>2]=s[e>>2],s[t+28>>2]=c,s[t+8>>2]=o,s[t+12>>2]=A,ee(t+16|0,o=r+8|0,t+8|0,t+24|0),s[i>>2]=s[t+16>>2],s[i+4>>2]=s[t+20>>2],(0|f)>(0|a))for(c=0-a<<2,r=a;u=s[(k=(A=(n=r<<2)+i|0)+c|0)>>2],k=s[k+4>>2],_=s[4+(n=e+n|0)>>2],s[t+24>>2]=s[n>>2],s[t+28>>2]=_,s[t+8>>2]=u,s[t+12>>2]=k,ee(t+16|0,o,t+8|0,t+24|0),s[A>>2]=s[t+16>>2],s[A+4>>2]=s[t+20>>2],(0|f)>(0|(r=r+a|0)););return mr(b),Q=t+32|0,1},function(r){return s[(r|=0)>>2]=9028,0|r},function(r){s[(r|=0)>>2]=9028,mr(r)},da,aa,cf,ma,na,Tf,ma,_a,de,function(r,e,i,f,a,t){e|=0,i|=0,f|=0,a|=0,t|=0;var b,A=0,o=0,k=0,c=0,u=0,_=0,l=0,p=0,d=0;Q=b=Q-48|0,(f=s[8+(r|=0)>>2])-2>>>0<=28&&(s[r+76>>2]=f,f=-2-(a=-1<<f)|0,s[r+84>>2]=f,s[r+80>>2]=~a,s[r+92>>2]=(0|f)/2,y[r+88>>2]=v(2)/v(0|f)),s[r+52>>2]=t,f=s[r+40>>2],a=s[f>>2],f=s[f+4>>2],s[b+16>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0;r:{if((0|(f=f-a|0))>0)for(_=r+8|0,l=r+44|0,p=(f=f>>>2|0)>>>0<=1?1:f,d=r+96|0;;){if(a=s[r+40>>2],f=s[a>>2],s[a+4>>2]-f>>2>>>0<=k>>>0)break r;if(ur(l,s[f+(k<<2)>>2],b+8|0),t=((f=(A=s[b+12>>2])>>31)^A)-f+(((a=(o=s[b+8>>2])>>31)^o)-a)|0,a=((f=(u=s[b+16>>2])>>31)^u)-f|0,f=0,(f=(c=a)>>>0>(a=a+t|0)>>>0?1:f)|a?(o=Si(Ki(t=s[r+92>>2],c=t>>31,o,o>>31),j,a,f),s[b+8>>2]=o,f=Si(Ki(t,c,A,A>>31),j,a,f),s[b+12>>2]=f,f=(a=(f^(a=f>>31))-a|0)+(((f=o>>31)^o)-f|0)|0,s[b+16>>2]=(0|u)>=0?t-f:f-t):s[b+8>>2]=s[r+92>>2],f=Xi(d),t=s[b+8>>2],f?(s[b+16>>2]=0-s[b+16>>2],a=0-s[b+12>>2]|0,s[b+12>>2]=a,t=0-t|0,s[b+8>>2]=t):a=s[b+12>>2],(0|t)>=0?(f=(t=s[r+92>>2])+s[b+16>>2]|0,t=a+t|0):((0|a)<0?t=((f=s[b+16>>2])^(t=f>>31))-t|0:(t=(f=s[b+16>>2])>>31,t=s[r+84>>2]+(t-(f^t)|0)|0),(0|f)<0?f=((f=a>>31)^a)-f|0:(f=a>>31,f=s[r+84>>2]+(f-(f^a)|0)|0)),a=s[r+84>>2],f|t?(0|f)!=(0|a)|t?(0|a)!=(0|t)|f?t||(0|(A=s[r+92>>2]))>=(0|f)?(0|a)!=(0|t)||(0|(A=s[r+92>>2]))<=(0|f)?(0|f)!=(0|a)||(0|(a=s[r+92>>2]))<=(0|t)?f||(f=0,(0|(a=s[r+92>>2]))>=(0|t)||(t=(a<<1)-t|0)):t=(a<<1)-t|0:f=(A<<1)-f|0:(f=(A<<1)-f|0,t=0):f=t:t=f:t=f=a,o=s[(A=(a=k<<3)+e|0)>>2],A=s[A+4>>2],s[b+36>>2]=f,s[b+32>>2]=t,s[b+24>>2]=o,s[b+28>>2]=A,Yr(b+40|0,_,b+32|0,b+24|0),s[(f=i+a|0)>>2]=s[b+40>>2],s[f+4>>2]=s[b+44>>2],(0|p)==(0|(k=k+1|0)))break}return Q=b+48|0,1}Za(),n()},sa,Na,wf,ea,ur,function(r){return s[(r|=0)>>2]=10032,0|r},function(r){s[(r|=0)>>2]=10032,mr(r)},da,cf,ma,na,Tf,de,function(r,e,i,f,a,t){e|=0,i|=0,f|=0,a|=0,t|=0;var b,A=0,o=0,k=0,c=0,u=0,_=0,l=0,p=0,d=0;Q=b=Q-48|0,(f=s[8+(r|=0)>>2])-2>>>0<=28&&(s[r+76>>2]=f,f=-2-(a=-1<<f)|0,s[r+84>>2]=f,s[r+80>>2]=~a,s[r+92>>2]=(0|f)/2,y[r+88>>2]=v(2)/v(0|f)),s[r+52>>2]=t,f=s[r+40>>2],a=s[f>>2],f=s[f+4>>2],s[b+16>>2]=0,s[b+8>>2]=0,s[b+12>>2]=0;r:{if((0|(f=f-a|0))>0)for(_=r+8|0,l=r+44|0,p=(f=f>>>2|0)>>>0<=1?1:f,d=r+96|0;;){if(a=s[r+40>>2],f=s[a>>2],s[a+4>>2]-f>>2>>>0<=k>>>0)break r;if(yr(l,s[f+(k<<2)>>2],b+8|0),t=((f=(A=s[b+12>>2])>>31)^A)-f+(((a=(o=s[b+8>>2])>>31)^o)-a)|0,a=((f=(u=s[b+16>>2])>>31)^u)-f|0,f=0,(f=(c=a)>>>0>(a=a+t|0)>>>0?1:f)|a?(o=Si(Ki(t=s[r+92>>2],c=t>>31,o,o>>31),j,a,f),s[b+8>>2]=o,f=Si(Ki(t,c,A,A>>31),j,a,f),s[b+12>>2]=f,f=(a=(f^(a=f>>31))-a|0)+(((f=o>>31)^o)-f|0)|0,s[b+16>>2]=(0|u)>=0?t-f:f-t):s[b+8>>2]=s[r+92>>2],f=Xi(d),t=s[b+8>>2],f?(s[b+16>>2]=0-s[b+16>>2],a=0-s[b+12>>2]|0,s[b+12>>2]=a,t=0-t|0,s[b+8>>2]=t):a=s[b+12>>2],(0|t)>=0?(f=(t=s[r+92>>2])+s[b+16>>2]|0,t=a+t|0):((0|a)<0?t=((f=s[b+16>>2])^(t=f>>31))-t|0:(t=(f=s[b+16>>2])>>31,t=s[r+84>>2]+(t-(f^t)|0)|0),(0|f)<0?f=((f=a>>31)^a)-f|0:(f=a>>31,f=s[r+84>>2]+(f-(f^a)|0)|0)),a=s[r+84>>2],f|t?(0|f)!=(0|a)|t?(0|a)!=(0|t)|f?t||(0|(A=s[r+92>>2]))>=(0|f)?(0|a)!=(0|t)||(0|(A=s[r+92>>2]))<=(0|f)?(0|f)!=(0|a)||(0|(a=s[r+92>>2]))<=(0|t)?f||(f=0,(0|(a=s[r+92>>2]))>=(0|t)||(t=(a<<1)-t|0)):t=(a<<1)-t|0:f=(A<<1)-f|0:(f=(A<<1)-f|0,t=0):f=t:t=f:t=f=a,o=s[(A=(a=k<<3)+e|0)>>2],A=s[A+4>>2],s[b+36>>2]=f,s[b+32>>2]=t,s[b+24>>2]=o,s[b+28>>2]=A,Yr(b+40|0,_,b+32|0,b+24|0),s[(f=i+a|0)>>2]=s[b+40>>2],s[f+4>>2]=s[b+44>>2],(0|p)==(0|(k=k+1|0)))break}return Q=b+48|0,1}Za(),n()},sa,Na,wf,ea,yr,Na,la,ma,la,fa,na,function(r,e){r|=0;var i,f,a,t=0,b=0,A=0,n=0,o=0;return t=s[8+(e|=0)>>2],i=b=s[e+12>>2],a=b=s[e+20>>2],t>>>0<(n=(f=s[e+16>>2])+4|0)>>>0&(0|(b=n>>>0<4?b+1|0:b))>=(0|i)|(0|b)>(0|i)||(A=f+s[e>>2]|0,A=_[0|A]|_[A+1|0]<<8|_[A+2|0]<<16|_[A+3|0]<<24,s[e+16>>2]=n,s[e+20>>2]=b,n=t,t=a,(b=f+8|0)>>>0>n>>>0&(0|(t=b>>>0<8?t+1|0:t))>=(0|i)|(0|t)>(0|i)||(s[e+16>>2]=b,s[e+20>>2]=t,1&A&&((e=31^R(A))-1>>>0>28||(o=1,s[r+8>>2]=e+1,t=-2^(e=-2<<e),s[r+16>>2]=t,s[r+12>>2]=~e,s[r+24>>2]=t>>1,y[r+20>>2]=v(2)/v(0|t))))),0|o},function(r,e,i,f,a,t){r|=0,e|=0,i|=0,f|=0,t|=0;var b=0,A=0,n=0,o=0,k=0,c=0,u=0,_=0;if(Q=t=Q-32|0,A=Ge(mf(A=(a|=0)>>>0>1073741823?-1:a<<2),0,A),b=s[e>>2],n=s[e+4>>2],k=s[A+4>>2],s[t+16>>2]=s[A>>2],s[t+20>>2]=k,s[t+8>>2]=b,s[t+12>>2]=n,Yr(t+24|0,n=r+8|0,t+16|0,t+8|0),s[i>>2]=s[t+24>>2],s[i+4>>2]=s[t+28>>2],(0|f)>(0|a))for(k=0-a<<2,r=a;u=s[(o=(b=r<<2)+e|0)>>2],o=s[o+4>>2],_=s[4+(c=(b=i+b|0)+k|0)>>2],s[t+16>>2]=s[c>>2],s[t+20>>2]=_,s[t+8>>2]=u,s[t+12>>2]=o,Yr(t+24|0,n,t+16|0,t+8|0),s[b>>2]=s[t+24>>2],s[b+4>>2]=s[t+28>>2],(0|f)>(0|(r=r+a|0)););return mr(A),Q=t+32|0,1},function(r){var e=0;return s[24+(r|=0)>>2]=1832,s[r>>2]=11048,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),s[r>>2]=2448,e=s[r+20>>2],s[r+20>>2]=0,e&&Ya[s[s[e>>2]+4>>2]](e),s[r>>2]=2232,e=s[r+16>>2],s[r+16>>2]=0,e&&Ci(e),0|r},function(r){var e=0;s[24+(r|=0)>>2]=1832,s[r>>2]=11048,(e=s[r+32>>2])&&(s[r+36>>2]=e,mr(e)),s[r>>2]=2448,e=s[r+20>>2],s[r+20>>2]=0,e&&Ya[s[s[e>>2]+4>>2]](e),s[r>>2]=2232,e=s[r+16>>2],s[r+16>>2]=0,e&&Ci(e),mr(r)},function(r,e,i){var f;return e|=0,i|=0,s[4+(r|=0)>>2]=e,f=s[s[s[e+4>>2]+8>>2]+(i<<2)>>2],s[r+12>>2]=i,s[r+8>>2]=f,9==s[s[s[s[e+4>>2]+8>>2]+(i<<2)>>2]+28>>2]|0},function(r,e,i){return e|=0,_[s[4+(r|=0)>>2]+36|0]>=2&&(e=0,!(0|Ya[s[s[r>>2]+52>>2]](r)))||(e=Mi(r+24|0,s[r+16>>2])),0|e},function(r,e,i){e|=0,i|=0;var f=0;return _[s[4+(r|=0)>>2]+36|0]<=1&&(f=0,!(0|Ya[s[s[r>>2]+52>>2]](r)))||(f=Ur(r,e,i)),0|f},function(r,e){return e|=0,0|Ya[s[s[(r|=0)>>2]+56>>2]](r,e)},function(r){return 0|te(24+(r|=0)|0,Pe(r)||s[r+8>>2],s[s[r+4>>2]+32>>2])},function(r,e){return 0|fe(24+(r|=0)|0,Pe(r),s[r+8>>2])},function(r){var e,i=0,f=0;if(s[(r|=0)>>2]=13280,(i=s[r+20>>2])&&(s[r+24>>2]=i,mr(i)),e=s[r+8>>2]){if((0|(f=s[r+12>>2]))!=(0|(i=e))){for(;i=s[(f=f-4|0)>>2],s[f>>2]=0,i&&Ya[s[s[i>>2]+4>>2]](i),(0|f)!=(0|e););i=s[r+8>>2]}s[r+12>>2]=e,mr(i)}return 0|r},Ga,ma,ma,function(r){return s[44+(r|=0)>>2]?0|Ya[s[s[r>>2]+48>>2]](r):0},function(r){var e=0,i=0,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0;r:{if(e=s[32+(r|=0)>>2],t=s[e+8>>2],a=0,!((0|(A=s[e+12>>2]))<=(0|(b=s[e+20>>2]))&(i=s[e+16>>2])>>>0>=t>>>0|(0|b)>(0|A))){t=_[s[e>>2]+i|0],a=e,e=b,e=(i=i+1|0)?e:e+1|0,s[a+16>>2]=i,s[a+20>>2]=e;e:if(t){for(;;){if(0|Ya[s[s[r>>2]+16>>2]](r,f)){if((0|t)!=(0|(f=f+1|0)))continue;break e}break}return 0}if((0|(f=s[r+8>>2]))!=(0|(e=s[r+12>>2])))for(;;){if(i=s[f>>2],!(0|Ya[s[s[i>>2]+8>>2]](i,r,s[r+4>>2])))break r;if((0|e)==(0|(f=f+4|0)))break}if(t){for(f=0;;){if(e=s[s[r+8>>2]+(f<<2)>>2],!(0|Ya[s[s[e>>2]+12>>2]](e,s[r+32>>2])))break r;if((0|t)==(0|(f=f+1|0)))break}if(t)for(n=r+20|0,e=0;;){if(f=0,i=s[(o=e<<2)+s[r+8>>2]>>2],(0|(k=0|Ya[s[s[i>>2]+24>>2]](i)))>0)for(;i=s[s[r+8>>2]+o>>2],i=0|Ya[s[s[i>>2]+20>>2]](i,f),a=s[r+20>>2],i>>>0<(b=s[r+24>>2]-a>>2)>>>0||((A=i+1|0)>>>0>b>>>0?(ai(n,A-b|0),a=s[n>>2]):b>>>0<=A>>>0||(s[r+24>>2]=(A<<2)+a)),s[(i<<2)+a>>2]=e,(0|k)!=(0|(f=f+1|0)););if((0|t)==(0|(e=e+1|0)))break}}a=0,0|Ya[s[s[r>>2]+28>>2]](r)&&(a=0|Ya[s[s[r>>2]+32>>2]](r))}return 0|a}return 0},function(r){var e,i=0,f=0;if((0|(i=s[8+(r|=0)>>2]))==(0|(e=s[r+12>>2])))return 1;for(;f=s[i>>2],(f=0|Ya[s[s[f>>2]+16>>2]](f,s[r+32>>2]))&&(0|e)!=(0|(i=i+4|0)););return 0|f},ma,la,na,na,function(r){var e,i=0,f=0;if(s[(r|=0)>>2]=11276,i=s[r+48>>2],s[r+48>>2]=0,i&&Ya[s[s[i>>2]+4>>2]](i),s[r>>2]=13280,(i=s[r+20>>2])&&(s[r+24>>2]=i,mr(i)),e=s[r+8>>2]){if((0|(f=s[r+12>>2]))!=(0|(i=e))){for(;i=s[(f=f-4|0)>>2],s[f>>2]=0,i&&Ya[s[s[i>>2]+4>>2]](i),(0|f)!=(0|e););i=s[r+8>>2]}s[r+12>>2]=e,mr(i)}return 0|r},function(r){var e,i=0,f=0;if(s[(r|=0)>>2]=11276,i=s[r+48>>2],s[r+48>>2]=0,i&&Ya[s[s[i>>2]+4>>2]](i),s[r>>2]=13280,(i=s[r+20>>2])&&(s[r+24>>2]=i,mr(i)),e=s[r+8>>2]){if((0|(f=s[r+12>>2]))!=(0|(i=e))){for(;i=s[(f=f-4|0)>>2],s[f>>2]=0,i&&Ya[s[s[i>>2]+4>>2]](i),(0|f)!=(0|e););i=s[r+8>>2]}s[r+12>>2]=e,mr(i)}mr(r)},function(r){var e=0,i=0,f=0,a=0;if(i=s[32+(r|=0)>>2],f=s[i+16>>2],a=s[i+12>>2],e=s[i+20>>2],p[i+8>>2]>f>>>0&(0|a)>=(0|e)|(0|e)<(0|a)){a=_[s[i>>2]+f|0],e=(f=f+1|0)?e:e+1|0,s[i+16>>2]=f,s[i+20>>2]=e,e=s[r+48>>2],s[r+48>>2]=0,e&&Ya[s[s[e>>2]+4>>2]](e);r:{e:{i:{f:switch(0|a){case 0:e=mf(384),s[e>>2]=11384,Ge(e+4|0,0,80),s[e+96>>2]=0,s[e+100>>2]=0,s[e+92>>2]=-1,s[e+84>>2]=-1,s[e+88>>2]=-1,s[e+104>>2]=0,s[e+108>>2]=0,s[e+112>>2]=0,s[e+116>>2]=0,s[e+120>>2]=0,s[e+124>>2]=0,s[e+128>>2]=0,s[e+132>>2]=0,s[e+136>>2]=0,s[e+140>>2]=0,s[e+144>>2]=0,s[e+148>>2]=0,s[e+156>>2]=0,s[e+160>>2]=0,s[e+152>>2]=1065353216,s[e+164>>2]=0,s[e+168>>2]=0,s[e+172>>2]=0,s[e+176>>2]=0,s[e+180>>2]=0,s[e+184>>2]=0,s[e+188>>2]=0,s[e+192>>2]=0,s[e+196>>2]=0,s[e+200>>2]=0,s[e+204>>2]=0,s[e+208>>2]=0,s[e+212>>2]=-1,s[e+216>>2]=0,s[e+220>>2]=0,s[e+224>>2]=0,_f(e+232|0),_f(e+272|0),s[(i=e+312|0)>>2]=0,s[i+4>>2]=0,c[i+5|0]=0,c[i+6|0]=0,c[i+7|0]=0,c[i+8|0]=0,c[i+9|0]=0,c[i+10|0]=0,c[i+11|0]=0,c[i+12|0]=0,_f(e+328|0),s[e+376>>2]=0,s[e+368>>2]=0,s[e+372>>2]=0;break i;case 1:e=mf(424),s[e>>2]=11436,Ge(e+4|0,0,80),s[e+96>>2]=0,s[e+100>>2]=0,s[e+92>>2]=-1,s[e+84>>2]=-1,s[e+88>>2]=-1,s[e+104>>2]=0,s[e+108>>2]=0,s[e+112>>2]=0,s[e+116>>2]=0,s[e+120>>2]=0,s[e+124>>2]=0,s[e+128>>2]=0,s[e+132>>2]=0,s[e+136>>2]=0,s[e+140>>2]=0,s[e+144>>2]=0,s[e+148>>2]=0,s[e+156>>2]=0,s[e+160>>2]=0,s[e+152>>2]=1065353216,s[e+164>>2]=0,s[e+168>>2]=0,s[e+172>>2]=0,s[e+176>>2]=0,s[e+180>>2]=0,s[e+184>>2]=0,s[e+188>>2]=0,s[e+192>>2]=0,s[e+196>>2]=0,s[e+200>>2]=0,s[e+204>>2]=0,s[e+208>>2]=0,s[e+212>>2]=-1,s[e+216>>2]=0,s[e+220>>2]=0,s[e+224>>2]=0,_f(e+232|0),_f(e+272|0),s[(i=e+312|0)>>2]=0,s[i+4>>2]=0,c[i+5|0]=0,c[i+6|0]=0,c[i+7|0]=0,c[i+8|0]=0,c[i+9|0]=0,c[i+10|0]=0,c[i+11|0]=0,c[i+12|0]=0,_f(e+328|0),s[e+392>>2]=0,s[e+396>>2]=0,s[e+384>>2]=0,s[e+388>>2]=0,s[e+376>>2]=0,s[e+380>>2]=0,s[e+368>>2]=0,s[e+372>>2]=0,s[(i=e+400|0)>>2]=0,s[i+4>>2]=0,c[i+5|0]=0,c[i+6|0]=0,c[i+7|0]=0,c[i+8|0]=0,c[i+9|0]=0,c[i+10|0]=0,c[i+11|0]=0,c[i+12|0]=0,s[e+416>>2]=-1,s[e+420>>2]=-1;break i;case 2:break f;default:break e}e=mf(440),s[e>>2]=11484,Ge(e+4|0,0,80),s[e+96>>2]=0,s[e+100>>2]=0,s[e+92>>2]=-1,s[e+84>>2]=-1,s[e+88>>2]=-1,s[e+104>>2]=0,s[e+108>>2]=0,s[e+112>>2]=0,s[e+116>>2]=0,s[e+120>>2]=0,s[e+124>>2]=0,s[e+128>>2]=0,s[e+132>>2]=0,s[e+136>>2]=0,s[e+140>>2]=0,s[e+144>>2]=0,s[e+148>>2]=0,s[e+156>>2]=0,s[e+160>>2]=0,s[e+152>>2]=1065353216,s[e+164>>2]=0,s[e+168>>2]=0,s[e+172>>2]=0,s[e+176>>2]=0,s[e+180>>2]=0,s[e+184>>2]=0,s[e+188>>2]=0,s[e+192>>2]=0,s[e+196>>2]=0,s[e+200>>2]=0,s[e+204>>2]=0,s[e+208>>2]=0,s[e+212>>2]=-1,s[e+216>>2]=0,s[e+220>>2]=0,s[e+224>>2]=0,_f(e+232|0),_f(e+272|0),s[(i=e+312|0)>>2]=0,s[i+4>>2]=0,c[i+5|0]=0,c[i+6|0]=0,c[i+7|0]=0,c[i+8|0]=0,c[i+9|0]=0,c[i+10|0]=0,c[i+11|0]=0,c[i+12|0]=0,_f(e+328|0),s[e+392>>2]=0,s[e+396>>2]=0,s[e+384>>2]=0,s[e+388>>2]=0,s[e+376>>2]=0,s[e+380>>2]=0,s[e+368>>2]=0,s[e+372>>2]=0,s[e+416>>2]=0,s[e+420>>2]=0,s[e+408>>2]=2,s[e+412>>2]=7,s[e+400>>2]=-1,s[e+404>>2]=-1,s[e+424>>2]=0,s[e+428>>2]=0,s[e+432>>2]=0,s[e+436>>2]=0}if(i=s[r+48>>2],s[r+48>>2]=e,!i)break r;Ya[s[s[i>>2]+4>>2]](i)}if(!(e=s[r+48>>2]))return 0}r=0|Ya[s[s[e>>2]+8>>2]](e,r)}else r=0;return 0|r},function(r,e){return e|=0,r=s[48+(r|=0)>>2],0|Ya[s[s[r>>2]+20>>2]](r,e)},function(r){return r=s[48+(r|=0)>>2],0|Ya[s[s[r>>2]+28>>2]](r)},function(r){return r=s[48+(r|=0)>>2],0|Ya[s[s[r>>2]+36>>2]](r)},function(r,e){return e|=0,r=s[48+(r|=0)>>2],0|Ya[s[s[r>>2]+12>>2]](r,e)},function(r,e){return e|=0,r=s[48+(r|=0)>>2],0|Ya[s[s[r>>2]+16>>2]](r,e)},function(r){return r=s[48+(r|=0)>>2],0|Ya[s[s[r>>2]+24>>2]](r)},_e,function(r){mr(_e(r|=0))},Lf,ge,Se,ar,function(r){var e,i=0,f=0,a=0,t=0,b=0,A=0,o=0,k=0,y=0,d=0,v=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0,V=0,T=0,D=0,F=0,B=0,E=0,Y=0,j=0,I=0,J=0,w=0,M=0,O=0,X=0,g=0;if(Q=e=Q+-64|0,s[132+(r|=0)>>2]=0,s[r+148>>2]){if(a=s[r+144>>2])for(;i=s[a>>2],mr(a),a=i,i;);if(a=0,s[r+144>>2]=0,d=s[r+140>>2]){if(d>>>0>=4)for(i=-4&d;s[(f=a<<2)+s[r+136>>2]>>2]=0,s[s[r+136>>2]+(4|f)>>2]=0,s[s[r+136>>2]+(8|f)>>2]=0,s[s[r+136>>2]+(12|f)>>2]=0,a=a+4|0,(0|i)!=(0|(t=t+4|0)););if(i=3&d)for(;s[s[r+136>>2]+(a<<2)>>2]=0,a=a+1|0,(0|i)!=(0|(D=D+1|0)););}s[r+148>>2]=0}r:{e:{if(a=s[r+4>>2],(i=(D=_[a+36|0])<<8|_[a+37|0])>>>0<=513){if(b=s[a+32>>2],i>>>0<=511){if(i=s[b+20>>2],i=(f=(t=s[b+16>>2])+4|0)>>>0<4?i+1|0:i,d=s[b+12>>2],p[b+8>>2]<f>>>0&(0|d)<=(0|i)|(0|i)>(0|d))break e;t=t+s[b>>2]|0,t=_[0|t]|_[t+1|0]<<8|_[t+2|0]<<16|_[t+3|0]<<24,s[b+16>>2]=f,s[b+20>>2]=i}else{if(!Wi(1,e,b))break e;a=s[r+4>>2],D=_[a+36|0],t=s[e>>2]}s[r+132>>2]=t}b=s[a+32>>2];i:{f:{if((255&D)>>>0<=1){if(D=0,i=s[b+20>>2],i=(t=(f=s[b+16>>2])+4|0)>>>0<4?i+1|0:i,d=s[b+12>>2],p[b+8>>2]<t>>>0&(0|d)<=(0|i)|(0|i)>(0|d))break r;f=f+s[b>>2]|0,f=_[0|f]|_[f+1|0]<<8|_[f+2|0]<<16|_[f+3|0]<<24,s[e+60>>2]=f,s[b+16>>2]=t,s[b+20>>2]=i,s[r+156>>2]=f,v=r+156|0}else{if(D=0,!Wi(1,e+60|0,b))break r;if(a=s[r+4>>2],i=_[a+36|0],s[r+156>>2]=s[e+60>>2],v=r+156|0,i>>>0>1)break f}if(b=s[a+32>>2],f=s[b+8>>2],d=s[b+12>>2],a=s[b+20>>2],(i=(t=s[b+16>>2])+4|0)>>>0>f>>>0&(0|(a=i>>>0<4?a+1|0:a))>=(0|d)|(0|a)>(0|d))break r;t=t+s[b>>2]|0,t=_[0|t]|_[t+1|0]<<8|_[t+2|0]<<16|_[t+3|0]<<24,s[e+56>>2]=t,s[b+16>>2]=i,s[b+20>>2]=a;break i}if(!Wi(1,e+56|0,s[a+32>>2]))break r;t=s[e+56>>2]}if(t>>>0>1431655765|p[v>>2]>m(t,3)>>>0)break r;if(y=s[r+4>>2],F=s[y+32>>2],a=s[F+8>>2],(0|(b=s[F+12>>2]))<=(0|(i=s[F+20>>2]))&(h=s[F+16>>2])>>>0>=a>>>0|(0|i)>(0|b))break r;if(v=s[F>>2],A=_[v+h|0],j=(d=h+1|0)?i:i+1|0,s[(f=F)+16>>2]=d,s[f+20>>2]=j,_[y+36|0]<=1){if((f=a)>>>0<(a=h+5|0)>>>0&(0|(i=a>>>0<5?i+1|0:i))>=(0|b)|(0|i)>(0|b))break r;v=_[0|(f=d+v|0)]|_[f+1|0]<<8|_[f+2|0]<<16|_[f+3|0]<<24,s[e+52>>2]=v,s[F+16>>2]=a,s[F+20>>2]=i}else{if(!Wi(1,e+52|0,F))break r;v=s[e+52>>2]}if(t>>>0<v>>>0|((v>>>0)/3|0)+v>>>0<t>>>0)break r;if(a=s[r+4>>2],b=s[a+32>>2],_[a+36|0]<=1){if(a=s[b+20>>2],a=(f=(i=s[b+16>>2])+4|0)>>>0<4?a+1|0:a,d=s[b+12>>2],p[b+8>>2]<f>>>0&(0|d)<=(0|a)|(0|a)>(0|d))break r;i=i+s[b>>2]|0,i=_[0|i]|_[i+1|0]<<8|_[i+2|0]<<16|_[i+3|0]<<24,s[e+48>>2]=i,s[b+16>>2]=f,s[b+20>>2]=a}else{if(!Wi(1,e+48|0,b))break r;i=s[e+48>>2]}if(i>>>0>v>>>0)break r;if(s[r+28>>2]=s[r+24>>2],a=vi(mf(88)),f=s[r+8>>2],s[r+8>>2]=a,f&&(Ii(f),!s[r+8>>2]))break r;if(s[r+164>>2]=s[r+160>>2],Hi(r+160|0,t),s[r+176>>2]=s[r+172>>2],Hi(r+172|0,t),s[r- -64>>2]=0,s[r+92>>2]=-1,s[r+84>>2]=-1,s[r+88>>2]=-1,s[r+40>>2]=s[r+36>>2],s[r+52>>2]=s[r+48>>2],s[r+76>>2]=s[r+72>>2],ji(J=r+216|0),_r(J,A),!Qe(s[r+8>>2],t,s[r+156>>2]+i|0))break r;if(a=s[r+156>>2],c[0|e]=1,Te(r+120|0,i+a|0,e),i=s[r+4>>2],(a=65535&((a=l[i+36>>1])<<8|a>>>8))>>>0<=513){if(d=s[i+32>>2],a>>>0<=511){if(i=s[d+20>>2],i=(a=(t=s[d+16>>2])+4|0)>>>0<4?i+1|0:i,f=s[d+12>>2],p[d+8>>2]<a>>>0&(0|f)<=(0|i)|(0|i)>(0|f))break r;t=t+s[d>>2]|0,t=_[0|t]|_[t+1|0]<<8|_[t+2|0]<<16|_[t+3|0]<<24,s[d+16>>2]=a,s[d+20>>2]=i}else{if(!Wi(1,e+44|0,d))break r;t=s[e+44>>2]}if(!t)break r;if(d=s[s[r+4>>2]+32>>2],(i=(f=s[d+8>>2])-(a=s[d+16>>2])|0)>>>0<t>>>0&(0|(a=s[d+12>>2]-(s[d+20>>2]+(f>>>0<a>>>0)|0)|0))<=0|(0|a)<0)break r;if(b=_f(e),d=s[s[r+4>>2]+32>>2],i=((f=s[d+16>>2])+s[d>>2]|0)+t|0,a=s[d+8>>2]-f|0,u[b+38>>1]=l[d+38>>1],s[b>>2]=i,s[b+16>>2]=0,s[b+20>>2]=0,s[b+8>>2]=a-t,s[b+12>>2]=0,-1==(0|(a=br(r,b))))break r;F=a,M=a>>31}else if(F=-1,M=-1,-1==(0|br(r,s[i+32>>2])))break r;s[144+(t=O=r+232|0)>>2]=r,a=s[32+(0|Ya[s[s[r>>2]+32>>2]](r))>>2],i=s[a>>2]+s[a+16>>2]|0,a=s[32+(0|Ya[s[s[r>>2]+32>>2]](r))>>2],a=s[a+8>>2]-s[a+16>>2]|0,X=t,g=l[s[32+(0|Ya[s[s[r>>2]+32>>2]](r))>>2]+38>>1],u[X+38>>1]=g,s[t>>2]=i,s[t+16>>2]=0,s[t+20>>2]=0,s[t+8>>2]=a,s[t+12>>2]=0,s[r+372>>2]=A;i:if(Tr(t,j=_f(e))){i=0,a=0,t=0,d=0,Q=k=Q-96|0,s[k+72>>2]=0,s[k+64>>2]=0,s[k+68>>2]=0,s[k+48>>2]=0,s[k+52>>2]=0,s[k+40>>2]=0,s[k+44>>2]=0,s[k+56>>2]=1065353216,s[k+32>>2]=0,s[k+24>>2]=0,s[k+28>>2]=0,o=r,w=s[r+124>>2];f:{a:{t:{b:{A:{n:if(!((0|v)<=0)){for(E=s[o+216>>2]!=s[o+220>>2],W=1;;){d=(b=d)+1|0;o:{k:{c:{u:{s:{_:{l:{p:{y:{d:{m:{v:{h:{R:{if(_[o+308|0]&&!((r=(V=s[o+296>>2])+((A=s[o+304>>2])>>>3|0)|0)>>>0>=(Z=s[o+300>>2])>>>0)&&(f=_[0|r],r=A+1|0,s[o+304>>2]=r,h=f>>>(7&A)&1))switch(R=0,(f=V+(y=r>>>3|0)|0)>>>0>=Z>>>0?(A=r,r=0):(f=_[0|f],A=A+2|0,s[o+304>>2]=A,y=A>>>3|0,r=f>>>(7&r)&1),(f=y+V|0)>>>0<Z>>>0&&(f=_[0|f],s[o+304>>2]=A+1,R=f>>>(7&A)<<1&2),y=-1,(r=h|(r|R)<<1)-1|0){case 6:break v;case 0:break h;case 2:case 4:break R;default:break A}if((0|a)==(0|t)){y=-1;break A}if(A=-1,G=s[o+8>>2],V=s[G+24>>2],f=-1,-1!=(0|(W=s[(Z=a-4|0)>>2]))&&(f=-1,-1!=(0|(i=((i=W+1|0)>>>0)%3|0?i:W-2|0))&&(f=s[s[G>>2]+(i<<2)>>2])),-1!=(0|(i=s[V+(f<<2)>>2]))&&(A=((r=i+1|0)>>>0)%3|0?r:i-2|0),(0|A)==(0|W)){y=-1;break A}if(-1!=(0|W)&&(y=-1,-1!=s[s[G+12>>2]+(W<<2)>>2]))break A;if(i=s[G+12>>2],-1!=(0|A)&&(y=-1,-1!=s[i+(A<<2)>>2]))break A;r=(R=m(b,3))+1|0,s[i+(W<<2)>>2]=r,s[(h=r<<2)+i>>2]=W,U=R+2|0,s[i+(A<<2)>>2]=U,s[(b=U<<2)+i>>2]=A,N=-1,r=-1;N:if(-1!=(0|W)){if((W>>>0)%3|0)i=W-1|0;else if(r=-1,-1==(0|(i=W+2|0)))break N;r=s[s[G>>2]+(i<<2)>>2]}if(-1!=(0|A)&&-1!=(0|(i=((i=A+1|0)>>>0)%3|0?i:A-2|0))&&(N=s[s[G>>2]+(i<<2)>>2]),y=-1,(0|r)==(0|f)|(0|f)==(0|N))break A;i=s[G>>2],s[i+(R<<2)>>2]=f,s[i+h>>2]=N,s[i+b>>2]=r,-1!=(0|r)&&(s[V+(r<<2)>>2]=U),i=s[o+120>>2]+(f>>>3&536870908)|0,r=s[i>>2],X=i,g=If(f)&r,s[X>>2]=g,s[Z>>2]=R,i=t;break o}if((0|a)==(0|t))break A;if(R=s[(h=a-4|0)>>2],U=s[o+8>>2],i=s[U+12>>2],-1!=(0|R)&-1!=s[i+(R<<2)>>2])break A;if(N=m(b,3),s[(r=(A=N+((Z=5==(0|r))?2:1)|0)<<2)+i>>2]=R,s[i+(R<<2)>>2]=A,qe(U+24|0,11424),i=s[o+8>>2],V=s[i+24>>2],s[i+28>>2]-V>>2>(0|w))break A;if(G=(y=s[i>>2])+r|0,r=((f=s[U+28>>2])-(i=s[U+24>>2])>>2)-1|0,s[G>>2]=r,(0|i)!=(0|f)&&(s[V+(r<<2)>>2]=A),f=Z?N:N+2|0,A=y+(N+Z<<2)|0,-1!=(0|R)){R:{N:{if((R>>>0)%3|0)r=R-1|0;else if(-1==(0|(r=R+2|0)))break N;if(r=s[y+(r<<2)>>2],s[y+(f<<2)>>2]=r,-1==(0|r))break R;s[V+(r<<2)>>2]=f;break R}s[y+(f<<2)>>2]=-1}i=-1,-1!=(0|(r=((r=R+1|0)>>>0)%3|0?r:R-2|0))&&(i=s[y+(r<<2)>>2])}else s[y+(f<<2)>>2]=-1,i=-1;s[A>>2]=i,s[h>>2]=N,i=t;break l}if((0|i)==(0|a))break A;G=s[(r=a-4|0)>>2],s[k+68>>2]=r;h:if(Z=s[k+44>>2])if(A=s[k+40>>2],f=b&Z+2147483647,(y=Yf(Z)>>>0>1)&&((f=b)>>>0<Z>>>0||(f=(b>>>0)%(Z>>>0)|0)),f=s[A+((h=f)<<2)>>2])if(A=s[f>>2]){R:{if(!y){for(y=Z-1|0;;){N:{if((0|(f=s[A+4>>2]))!=(0|b)){if((0|h)==(f&y))break N;a=r;break h}if((0|b)==s[A+8>>2])break R}if(!(A=s[A>>2]))break}a=r;break h}for(;;){N:{if((0|(f=s[A+4>>2]))!=(0|b)){if(f>>>0>=Z>>>0&&(f=(f>>>0)%(Z>>>0)|0),(0|f)==(0|h))break N;a=r;break h}if((0|b)==s[A+8>>2])break R}if(!(A=s[A>>2]))break}a=r;break h}if((0|r)==(0|B)){if((t=1+(a=(f=B-i|0)>>2)|0)>>>0>=1073741824)break m;if(r=f>>>1|0,f=f>>>0>=2147483644?1073741823:r>>>0>t>>>0?r:t){if(f>>>0>=1073741824)break a;r=mf(f<<2)}else r=0;if(s[(t=r+(a<<2)|0)>>2]=s[A+12>>2],a=t+4|0,(0|i)!=(0|B))for(;B=B-4|0,s[(t=t-4|0)>>2]=s[B>>2],(0|i)!=(0|B););B=r+(f<<2)|0,s[k+72>>2]=B,s[k+68>>2]=a,s[k+64>>2]=t,i&&mr(i)}else s[r>>2]=s[A+12>>2],s[k+68>>2]=a}else a=r;else a=r;else a=r;if((0|a)==(0|t))break c;if((0|(R=s[(A=a-4|0)>>2]))==(0|G))break c;if(i=-1==(0|R),N=s[o+8>>2],!i&-1!=s[s[N+12>>2]+(R<<2)>>2])break c;if(U=s[N+12>>2],-1!=(0|G)&-1!=s[U+(G<<2)>>2])break c;if(b=(V=m(b,3))+2|0,s[U+(R<<2)>>2]=b,s[(Z=b<<2)+U>>2]=R,r=V+1|0,s[U+(G<<2)>>2]=r,s[(f=r<<2)+U>>2]=G,i)break d;if((R>>>0)%3|0){h=R-1|0;break _}if(-1!=(0|(h=R+2|0)))break _;r=s[N>>2],i=-1;break s}if(qe((r=s[o+8>>2])+24|0,11424),f=s[o+8>>2],G=m(b,3),A=(N=(Z=(U=s[r+28>>2])-(V=s[r+24>>2])|0)>>2)-1|0,s[s[f>>2]+(G<<2)>>2]=A,qe(f+24|0,11424),h=G+1|0,s[s[f>>2]+(h<<2)>>2]=(s[f+28>>2]-s[f+24>>2]>>2)-1,qe((r=s[o+8>>2])+24|0,11424),f=G+2|0,s[s[r>>2]+(f<<2)>>2]=(s[r+28>>2]-s[r+24>>2]>>2)-1,r=s[o+8>>2],R=s[r+24>>2],s[r+28>>2]-R>>2>(0|w))break A;if(((0|U)!=(0|V)&&(s[R+(A<<2)>>2]=G,y=0,-4==(0|Z))||(s[R+(N<<2)>>2]=h,-1!=(0|(y=N+1|0))))&&(s[R+(y<<2)>>2]=f),(0|a)!=(0|B)){s[a>>2]=G,a=a+4|0,s[k+68>>2]=a;break l}if((f=1+(t=(h=a-i|0)>>2)|0)>>>0>=1073741824)break y;if(r=h>>>1|0,f=h>>>0>=2147483644?1073741823:r>>>0>f>>>0?r:f){if(f>>>0>=1073741824)break a;r=mf(f<<2)}else r=0;if(s[(t=r+(t<<2)|0)>>2]=G,B=r+(f<<2)|0,r=t+4|0,(0|i)!=(0|a))for(;a=a-4|0,s[(t=t-4|0)>>2]=s[a>>2],(0|i)!=(0|a););if(s[k+72>>2]=B,s[k+68>>2]=r,s[k+64>>2]=t,!i)break p;mr(i);break p}ha(),n()}h=-1,r=s[N>>2],s[r+(V<<2)>>2]=-1,y=-1;break u}ha(),n()}a=r,i=t}if((0|(h=s[o+40>>2]))==s[o+36>>2])break o;if((r=s[4+(f=h-12|0)>>2])>>>0>(y=~b+v|0)>>>0)break c;if((0|r)!=(0|y))break o;if(b=_[h-4|0],r=s[f>>2],s[o+40>>2]=f,(0|r)<0)break c;A=s[(h=a-4|0)>>2],s[k+20>>2]=~r+v,r=k+20|0,s[k+88>>2]=r,hr(k,k+40|0,r,k+88|0),f=s[k>>2];l:if(1&b){if(r=-1,-1==(0|A))break l;r=((r=A+1|0)>>>0)%3|0?r:A-2|0}else r=-1,-1!=(0|A)&&(r=A-1|0,(A>>>0)%3|0||(r=A+2|0));if(s[f+12>>2]=r,(0|(A=s[o+40>>2]))==s[o+36>>2])break o;for(;;){if((r=s[4+(f=A-12|0)>>2])>>>0>y>>>0)break c;if((0|r)!=(0|y))break o;if(b=_[A-4|0],r=s[f>>2],s[o+40>>2]=f,(0|r)<0)break c;A=s[h>>2],s[k+20>>2]=~r+v,r=k+20|0,s[k+88>>2]=r,hr(k,k+40|0,r,k+88|0),f=s[k>>2];l:if(1&b){if(r=-1,-1==(0|A))break l;r=((r=A+1|0)>>>0)%3|0?r:A-2|0}else r=-1,-1!=(0|A)&&(r=A-1|0,(A>>>0)%3|0||(r=A+2|0));if(s[f+12>>2]=r,(0|(A=s[o+40>>2]))==s[o+36>>2])break}break o}r=s[N>>2],i=s[r+(h<<2)>>2]}h=i,s[(V<<2)+r>>2]=i,y=-1,-1!=(0|(i=((i=R+1|0)>>>0)%3|0?i:R-2|0))&&(y=s[(i<<2)+r>>2])}if(s[r+f>>2]=y,-1!=(0|G)){u:{s:{if((G>>>0)%3|0)i=G-1|0;else if(-1==(0|(i=G+2|0)))break s;if(i=s[(i<<2)+r>>2],s[r+Z>>2]=i,-1==(0|i))break u;s[s[N+24>>2]+(i<<2)>>2]=b;break u}s[r+Z>>2]=-1}R=-1,f=-1,-1!=(0|(i=((i=G+1|0)>>>0)%3|0?i:G-2|0))&&(R=s[(i<<2)+r>>2],f=i)}else s[r+Z>>2]=-1,R=-1,f=-1;for(Z=(i=s[N+24>>2])+(R<<2)|0,-1!=(0|h)&&(s[i+(h<<2)>>2]=s[Z>>2]),i=f;;){if(-1==(0|i))break k;if(s[(i<<2)+r>>2]=h,b=-1,-1!=(0|(i=((y=i+1|0)>>>0)%3|0?y:i-2|0))&&(b=-1,-1!=(0|(y=s[U+(i<<2)>>2]))&&(b=((i=y+1|0)>>>0)%3|0?i:y-2|0)),(0|f)==(0|(i=b)))break}}if(y=-1,!(1&W))break n;break A}if(s[Z>>2]=-1,!E)if((0|Y)==(0|I)){if((f=1+(i=(b=Y-T|0)>>2)|0)>>>0>=1073741824)break t;if(r=b>>>1|0,f=b>>>0>=2147483644?1073741823:r>>>0>f>>>0?r:f){if(f>>>0>=1073741824)break a;r=mf(f<<2)}else r=0;if(s[(i=r+(i<<2)|0)>>2]=R,I=i+4|0,(0|T)!=(0|Y))for(;Y=Y-4|0,s[(i=i-4|0)>>2]=s[Y>>2],(0|T)!=(0|Y););Y=r+(f<<2)|0,s[k+32>>2]=Y,s[k+28>>2]=I,s[k+24>>2]=i,T&&mr(T),T=i}else s[I>>2]=R,I=I+4|0,s[k+28>>2]=I;s[A>>2]=V,i=t}if(W=(0|d)<(0|v),(0|d)==(0|v))break}d=v}if(y=-1,r=s[o+8>>2],!(s[r+28>>2]-s[r+24>>2]>>2>(0|w))){if((0|a)!=(0|t)){for(V=o+72|0,h=o+60|0,Z=o+312|0;;){N=s[(a=a-4|0)>>2],s[k+68>>2]=a;n:{o:{k:{if(l[o+270>>1]<=513){if(!_[o+364|0])break o;if(i=s[o+360>>2],(r=s[o+352>>2]+(i>>>3|0)|0)>>>0>=p[o+356>>2])break k;if(r=_[0|r],s[o+360>>2]=i+1,!(r>>>(7&i)&1))break k;break o}if(Xi(Z))break o}k:{c:{if((0|(i=s[o+64>>2]))==(f=s[o+68>>2])<<5){if((i+1|0)<0)break c;Wr(h,r=i>>>0<=1073741822?(i=32+(-32&i)|0)>>>0<(f<<=6)>>>0?f:i:2147483647),i=s[o+64>>2]}if(s[o+64>>2]=i+1,f=s[o+60>>2]+(i>>>3&536870908)|0,r=s[f>>2],X=f,g=If(i)&r,s[X>>2]=g,(0|(i=s[o+76>>2]))!=s[o+80>>2]){s[i>>2]=N,s[o+76>>2]=i+4;break n}if((b=1+(f=(T=i-(v=s[V>>2])|0)>>2)|0)>>>0>=1073741824)break k;if(r=T>>>1|0,b=T>>>0>=2147483644?1073741823:r>>>0>b>>>0?r:b){if(b>>>0>=1073741824)break a;r=mf(b<<2)}else r=0;if(s[(A=r+(f<<2)|0)>>2]=N,f=A+4|0,(0|i)!=(0|v))for(;i=i-4|0,s[(A=A-4|0)>>2]=s[i>>2],(0|i)!=(0|v););if(s[o+80>>2]=r+(b<<2),s[o+76>>2]=f,s[o+72>>2]=A,!v)break n;mr(v);break n}ha(),n()}ha(),n()}if(U=s[o+8>>2],E=s[U>>2],((s[U+4>>2]-E>>2>>>0)/3|0)<=(0|d)){y=-1;break A}if(r=-1,y=-1,i=-1,T=s[U+24>>2],b=-1,-1!=(0|N)&&(b=-1,-1!=(0|(t=((t=N+1|0)>>>0)%3|0?t:N-2|0))&&(b=s[E+(t<<2)>>2])),-1!=(0|(v=s[T+(b<<2)>>2]))?(A=1,t=-1,-1!=(0|(f=((f=v+1|0)>>>0)%3|0?f:v-2|0))&&(A=0,t=-1!=(0|(t=((t=(r=f)+1|0)>>>0)%3|0?t:r-2|0))?s[E+(t<<2)>>2]:-1)):(A=1,t=-1),-1!=(0|(f=s[(t<<2)+T>>2]))&&(i=((i=f+1|0)>>>0)%3|0?i:f-2|0),(0|r)==(0|N)|(0|i)==(0|N)|-1!=(0|N)&-1!=s[s[U+12>>2]+(N<<2)>>2]|(0|r)==(0|i))break A;if(!A&-1!=s[s[U+12>>2]+(r<<2)>>2])break A;if(A=-1,v=s[U+12>>2],T=-1,-1!=(0|i)){if(-1!=s[v+(i<<2)>>2])break A;T=-1,-1!=(0|(f=((f=i+1|0)>>>0)%3|0?f:i-2|0))&&(T=s[E+(f<<2)>>2])}f=m(d,3),s[k>>2]=f,s[v+(f<<2)>>2]=N,s[v+(N<<2)>>2]=f,f=s[k>>2]+1|0,s[v+(f<<2)>>2]=r,s[v+(r<<2)>>2]=f,r=s[k>>2]+2|0,s[v+(r<<2)>>2]=i,s[v+(i<<2)>>2]=r,r=s[k>>2],s[E+(r<<2)>>2]=t,s[(v=E+((y=r+1|0)<<2)|0)>>2]=T,s[(f=E+((T=r+2|0)<<2)|0)>>2]=b,b=s[o+120>>2],r=s[(i=b+((t=y?t:-1)>>>3&536870908)|0)>>2],X=i,g=If(t)&r,s[X>>2]=g,A=-1!=(0|y)?s[v>>2]:A,r=s[(i=b+(A>>>3&536870908)|0)>>2],X=i,g=If(A)&r,s[X>>2]=g,i=-1,i=-1!=(0|T)?s[f>>2]:i,r=s[(t=b+(i>>>3&536870908)|0)>>2],X=t,g=If(i)&r,s[X>>2]=g,c[k+88|0]=1,mi(h,k+88|0),qe(V,k),d=d+1|0,t=s[k+64>>2]}if((0|a)==(0|t))break}r=s[o+8>>2]}if(y=-1,((s[r+4>>2]-s[r>>2]>>2>>>0)/3|0)==(0|d)){if(y=s[r+28>>2]-s[r+24>>2]>>2,(0|(W=s[k+24>>2]))==(0|(f=s[k+28>>2])))break b;for(;;){if(d=s[W>>2],a=s[r+24>>2],-1==s[(A=a+((i=y-1|0)<<2)|0)>>2])for(;i=y-2|0,y=y-1|0,-1==s[(A=a+(i<<2)|0)>>2];);if(i>>>0>=d>>>0){if(s[k>>2]=r,A=s[A>>2],c[k+12|0]=1,s[k+8>>2]=A,s[k+4>>2]=A,-1!=(0|A)){for(;;){if(r=s[s[o+8>>2]>>2]+(A<<2)|0,s[r>>2]!=(0|i)){y=-1;break A}if(s[r>>2]=d,pe(k),-1==(0|(A=s[k+8>>2])))break}r=s[o+8>>2]}t=(a=s[r+24>>2])+(i<<2)|0,-1!=(0|d)&&(s[a+(d<<2)>>2]=s[t>>2]),s[t>>2]=-1,b=1<<d,t=(a=s[o+120>>2])+(d>>>3&536870908)|0,d=a+(i>>>3&536870908)|0,a=1<<i,i=s[d>>2]&a?b|s[t>>2]:s[t>>2]&~b,s[t>>2]=i,s[d>>2]=s[d>>2]&~a,y=y-1|0}if((0|f)==(0|(W=W+4|0)))break}}}}W=s[k+24>>2]}if(W&&mr(W),r=s[k+48>>2])for(;a=s[r>>2],mr(r),r=a;);r=s[k+40>>2],s[k+40>>2]=0,r&&mr(r),(r=s[k+64>>2])&&(s[k+68>>2]=r,mr(r)),Q=k+96|0,r=y;break f}ha(),n()}Df(),n()}if(t=r,-1!=(0|r)){a=(i=s[j+16>>2])+s[j>>2]|0,r=s[j+8>>2]-i|0,i=s[s[o+4>>2]+32>>2],u[i+38>>1]=l[i+38>>1],s[i>>2]=a,s[i+16>>2]=0,s[i+20>>2]=0,s[i+8>>2]=r,s[i+12>>2]=0,i=s[o+4>>2],(65535&(a=(r=l[i+36>>1])<<8|r>>>8))>>>0<=513&&(f=i=s[i+32>>2],r=s[i+16>>2],i=M+s[i+20>>2]|0,i=(r=r+F|0)>>>0<F>>>0?i+1|0:i,s[f+16>>2]=r,s[f+20>>2]=i);f:if(s[o+216>>2]!=s[o+220>>2]){if(r=s[o+8>>2],i=s[r>>2],r=s[r+4>>2],!((65535&a)>>>0>=513)){if((0|r)==(0|i))break f;for(a=0;;){if(Er(o,a)){if(a=a+3|0,r=s[o+8>>2],a>>>0<s[r+4>>2]-s[r>>2]>>2>>>0)continue;break f}break}break i}if((0|r)!=(0|i)){for(a=0;;){if(Br(o,a)){if(a=a+3|0,r=s[o+8>>2],a>>>0<s[r+4>>2]-s[r>>2]>>2>>>0)continue;break f}break}break i}}if(ui(O),(0|(a=s[o+216>>2]))!=s[o+220>>2])for(v=0;;){if(Kr(4+((f=m(v,144))+a|0)|0,s[o+8>>2]),r=s[J>>2],(0|(a=s[132+(i=r+f|0)>>2]))!=(0|(i=s[i+136>>2]))){for(;ke(4+(f+s[J>>2]|0)|0,s[a>>2]),(0|i)!=(0|(a=a+4|0)););r=s[J>>2]}if(!pr(4+(r+f|0)|0))break i;if(v=v+1|0,a=s[o+216>>2],!(v>>>0<(s[o+220>>2]-a|0)/144>>>0))break}if(r=s[o+8>>2],ei(o+184|0,s[r+28>>2]-s[r+24>>2]>>2),(0|(D=s[o+216>>2]))!=s[o+220>>2])for(a=0;r=m(a,144)+D|0,i=s[r+60>>2]-s[r+56>>2]>>2,f=r+104|0,r=s[o+8>>2],ei(f,(0|(r=s[r+28>>2]-s[r+24>>2]>>2))<(0|i)?i:r),a=a+1|0,D=s[o+216>>2],a>>>0<(s[o+220>>2]-D|0)/144>>>0;);D=x(o,t)}}break r}D=0}return Q=e- -64|0,0|D},ma,aa,ba,se,function(r){mr(se(r|=0))},Lf,ge,Se,ar,function(r){var e,i=0,f=0,a=0,t=0,b=0,A=0,o=0,k=0,y=0,d=0,v=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0,V=0,T=0,D=0,F=0,B=0,E=0,Y=0,j=0,I=0,J=0,w=0,M=0,O=0,X=0,g=0,z=0,H=0;if(Q=e=Q+-64|0,s[132+(r|=0)>>2]=0,s[r+148>>2]){if(f=s[r+144>>2])for(;i=s[f>>2],mr(f),f=i,i;);if(f=0,s[r+144>>2]=0,v=s[r+140>>2]){if(v>>>0>=4)for(i=-4&v;s[(t=f<<2)+s[r+136>>2]>>2]=0,s[s[r+136>>2]+(4|t)>>2]=0,s[s[r+136>>2]+(8|t)>>2]=0,s[s[r+136>>2]+(12|t)>>2]=0,f=f+4|0,(0|i)!=(0|(b=b+4|0)););if(i=3&v)for(;s[s[r+136>>2]+(f<<2)>>2]=0,f=f+1|0,(0|i)!=(0|(T=T+1|0)););}s[r+148>>2]=0}r:{e:{if(f=s[r+4>>2],(i=(T=_[f+36|0])<<8|_[f+37|0])>>>0<=513){if(A=s[f+32>>2],i>>>0<=511){if(b=s[A+20>>2],i=b=(t=(v=s[A+16>>2])+4|0)>>>0<4?b+1|0:b,a=s[A+12>>2],p[A+8>>2]<t>>>0&(0|i)>=(0|a)|(0|i)>(0|a))break e;b=v+s[A>>2]|0,b=_[0|b]|_[b+1|0]<<8|_[b+2|0]<<16|_[b+3|0]<<24,s[A+16>>2]=t,s[A+20>>2]=i}else{if(!Wi(1,e,A))break e;f=s[r+4>>2],T=_[f+36|0],b=s[e>>2]}s[r+132>>2]=b}a=s[f+32>>2];i:{f:{if((255&T)>>>0<=1){if(T=0,i=s[a+20>>2],i=(b=(t=s[a+16>>2])+4|0)>>>0<4?i+1|0:i,v=s[a+12>>2],p[a+8>>2]<b>>>0&(0|v)<=(0|i)|(0|i)>(0|v))break r;t=t+s[a>>2]|0,t=_[0|t]|_[t+1|0]<<8|_[t+2|0]<<16|_[t+3|0]<<24,s[e+60>>2]=t,s[a+16>>2]=b,s[a+20>>2]=i,s[r+156>>2]=t,V=r+156|0}else{if(T=0,!Wi(1,e+60|0,a))break r;if(f=s[r+4>>2],i=_[f+36|0],s[r+156>>2]=s[e+60>>2],V=r+156|0,i>>>0>1)break f}if(a=s[f+32>>2],t=s[a+8>>2],v=s[a+12>>2],f=s[a+20>>2],(i=(b=s[a+16>>2])+4|0)>>>0>t>>>0&(0|(f=i>>>0<4?f+1|0:f))>=(0|v)|(0|f)>(0|v))break r;b=b+s[a>>2]|0,b=_[0|b]|_[b+1|0]<<8|_[b+2|0]<<16|_[b+3|0]<<24,s[e+56>>2]=b,s[a+16>>2]=i,s[a+20>>2]=f;break i}if(!Wi(1,e+56|0,s[f+32>>2]))break r;b=s[e+56>>2]}if(b>>>0>1431655765|p[V>>2]>m(b,3)>>>0)break r;if(J=s[r+4>>2],D=s[J+32>>2],f=s[D+8>>2],(0|(a=s[D+12>>2]))<=(0|(i=s[D+20>>2]))&(o=s[D+16>>2])>>>0>=f>>>0|(0|i)>(0|a))break r;if(y=s[D>>2],d=_[y+o|0],A=(v=o+1|0)?i:i+1|0,s[(t=D)+16>>2]=v,s[t+20>>2]=A,_[J+36|0]<=1){if(t=f,(f=o+5|0)>>>0>t>>>0&(0|(i=f>>>0<5?i+1|0:i))>=(0|a)|(0|i)>(0|a))break r;V=_[0|(t=y+v|0)]|_[t+1|0]<<8|_[t+2|0]<<16|_[t+3|0]<<24,s[e+52>>2]=V,s[D+16>>2]=f,s[D+20>>2]=i}else{if(!Wi(1,e+52|0,D))break r;V=s[e+52>>2]}if(b>>>0<V>>>0|((V>>>0)/3|0)+V>>>0<b>>>0)break r;if(f=s[r+4>>2],a=s[f+32>>2],_[f+36|0]<=1){if(f=s[a+20>>2],f=(t=(i=s[a+16>>2])+4|0)>>>0<4?f+1|0:f,v=s[a+12>>2],p[a+8>>2]<t>>>0&(0|v)<=(0|f)|(0|f)>(0|v))break r;i=i+s[a>>2]|0,i=_[0|i]|_[i+1|0]<<8|_[i+2|0]<<16|_[i+3|0]<<24,s[e+48>>2]=i,s[a+16>>2]=t,s[a+20>>2]=f}else{if(!Wi(1,e+48|0,a))break r;i=s[e+48>>2]}if(i>>>0>V>>>0)break r;if(s[r+28>>2]=s[r+24>>2],f=vi(mf(88)),t=s[r+8>>2],s[r+8>>2]=f,t&&(Ii(t),!s[r+8>>2]))break r;if(s[r+164>>2]=s[r+160>>2],Hi(r+160|0,b),s[r+176>>2]=s[r+172>>2],Hi(r+172|0,b),s[r- -64>>2]=0,s[r+92>>2]=-1,s[r+84>>2]=-1,s[r+88>>2]=-1,s[r+40>>2]=s[r+36>>2],s[r+52>>2]=s[r+48>>2],s[r+76>>2]=s[r+72>>2],ji(M=r+216|0),_r(M,d),!Qe(s[r+8>>2],b,s[r+156>>2]+i|0))break r;if(f=s[r+156>>2],c[0|e]=1,Te(r+120|0,i+f|0,e),b=s[r+4>>2],(f=65535&((f=l[b+36>>1])<<8|f>>>8))>>>0<=513){if(A=s[b+32>>2],f>>>0<=511){if(b=s[A+20>>2],f=b=(t=(v=s[A+16>>2])+4|0)>>>0<4?b+1|0:b,a=s[A+12>>2],p[A+8>>2]<t>>>0&(0|f)>=(0|a)|(0|f)>(0|a))break r;b=v+s[A>>2]|0,b=_[0|b]|_[b+1|0]<<8|_[b+2|0]<<16|_[b+3|0]<<24,s[A+16>>2]=t,s[A+20>>2]=f}else{if(!Wi(1,e+44|0,A))break r;b=s[e+44>>2]}if(!b)break r;if(a=s[s[r+4>>2]+32>>2],t=(v=s[a+8>>2])-(f=s[a+16>>2])|0,(0|(f=s[a+12>>2]-(s[a+20>>2]+(f>>>0>v>>>0)|0)|0))<=0&b>>>0>t>>>0|(0|f)<0)break r;if(A=_f(e),a=s[s[r+4>>2]+32>>2],t=((v=s[a+16>>2])+s[a>>2]|0)+b|0,f=s[a+8>>2]-v|0,u[A+38>>1]=l[a+38>>1],s[A>>2]=t,s[A+16>>2]=0,s[A+20>>2]=0,s[A+8>>2]=f-b,s[A+12>>2]=0,-1==(0|(f=br(r,A))))break r;J=f,X=f>>31}else if(J=-1,X=-1,-1==(0|br(r,s[b+32>>2])))break r;li(Y=r+232|0,r),s[r+372>>2]=d,s[r+384>>2]=s[r+156>>2]+i,D=_f(e),a=0,Q=v=Q-16|0,Tr(Y,A=D)&&(i=s[A+20>>2],i=(f=(b=s[A+16>>2])+4|0)>>>0<4?i+1|0:i,t=s[A+12>>2],p[A+8>>2]<f>>>0&(0|t)<=(0|i)|(0|i)>(0|t)||(b=b+s[A>>2]|0,b=_[0|b]|_[b+1|0]<<8|_[b+2|0]<<16|_[b+3|0]<<24,s[A+16>>2]=f,s[A+20>>2]=i,(0|b)<0||(0|(i=b))>=(0|(b=s[Y+152>>2]))||(s[v+12>>2]=0,f=s[Y+156>>2],(i=s[Y+160>>2]-f>>2)>>>0<b>>>0?xr(Y+156|0,b-i|0,v+12|0):i>>>0<=b>>>0||(s[Y+160>>2]=f+(b<<2)),a=Mr(Y+168|0,A)))),Q=v+16|0;i:if(a){a=0,f=0,b=0,v=0,Q=k=Q-96|0,s[k+72>>2]=0,s[k+64>>2]=0,s[k+68>>2]=0,s[k+48>>2]=0,s[k+52>>2]=0,s[k+40>>2]=0,s[k+44>>2]=0,s[k+56>>2]=1065353216,s[k+32>>2]=0,s[k+24>>2]=0,s[k+28>>2]=0,A=r,O=s[r+124>>2];f:{a:{t:{b:{A:{n:if(!((0|V)<=0)){for(B=A+400|0,g=A+232|0,j=s[A+216>>2]!=s[A+220>>2],F=1;;){v=(t=v)+1|0;o:{k:{c:{u:if(-1!=s[A+420>>2]&&Xi(B)){if(Z=s[A+420>>2],s[A+416>>2]=Z,Z)break c}else{if(!_[A+308|0])break u;if(!((r=(N=s[A+296>>2])+((U=s[A+304>>2])>>>3|0)|0)>>>0>=(d=s[A+300>>2])>>>0)&&(i=_[0|r],r=U+1|0,s[A+304>>2]=r,o=i>>>(7&U)&1)){(i=N+(R=r>>>3|0)|0)>>>0>=d>>>0?(i=r,r=0):(y=_[0|i],i=U+2|0,s[A+304>>2]=i,R=i>>>3|0,r=y>>>(7&r)&1),(y=R+N|0)>>>0<d>>>0?(y=_[0|y],s[A+304>>2]=i+1,i=y>>>(7&i)<<1&2):i=0,Z=(r|i)<<1|o,s[A+416>>2]=Z;break c}s[A+416>>2]=0}if((0|f)==(0|b)){i=-1;break A}if(Z=-1,R=s[A+8>>2],N=s[R+24>>2],a=-1,-1!=(0|(h=s[(y=f-4|0)>>2]))&&(a=-1,-1!=(0|(i=((i=h+1|0)>>>0)%3|0?i:h-2|0))&&(a=s[s[R>>2]+(i<<2)>>2])),-1!=(0|(i=s[N+(a<<2)>>2]))&&(Z=((r=i+1|0)>>>0)%3|0?r:i-2|0),(0|h)==(0|Z)){i=-1;break A}if(-1!=(0|h)&&(i=-1,-1!=s[s[R+12>>2]+(h<<2)>>2]))break A;if(d=s[R+12>>2],-1!=(0|Z)&&(i=-1,-1!=s[d+(Z<<2)>>2]))break A;r=(G=m(t,3))+1|0,s[d+(h<<2)>>2]=r,s[(o=r<<2)+d>>2]=h,U=G+2|0,s[d+(Z<<2)>>2]=U,s[(t=U<<2)+d>>2]=Z,d=-1,r=-1;u:if(-1!=(0|h)){if((h>>>0)%3|0)i=h-1|0;else if(r=-1,-1==(0|(i=h+2|0)))break u;r=s[s[R>>2]+(i<<2)>>2]}if(-1!=(0|Z)&&-1!=(0|(i=((i=Z+1|0)>>>0)%3|0?i:Z-2|0))&&(d=s[s[R>>2]+(i<<2)>>2]),i=-1,(0|r)==(0|a)|(0|a)==(0|d))break A;i=s[R>>2],s[i+(G<<2)>>2]=a,s[i+o>>2]=d,s[i+t>>2]=r,-1!=(0|r)&&(s[N+(r<<2)>>2]=U),i=s[A+120>>2]+(a>>>3&536870908)|0,r=s[i>>2],z=i,H=If(a)&r,s[z>>2]=H,s[y>>2]=G,Z=s[f-4>>2];break k}i=-1;c:{u:{s:{_:{l:{p:{y:{d:{m:{v:{h:switch(Z-1|0){case 2:case 4:if((0|f)==(0|b))break A;if(h=s[(o=f-4|0)>>2],U=s[A+8>>2],a=s[U+12>>2],-1!=(0|h)&-1!=s[a+(h<<2)>>2])break A;if(G=m(t,3),s[(r=(y=G+((d=5==(0|Z))?2:1)|0)<<2)+a>>2]=h,s[a+(h<<2)>>2]=y,qe(U+24|0,11424),a=s[A+8>>2],N=s[a+24>>2],s[a+28>>2]-N>>2>(0|O))break A;if(Z=(R=s[a>>2])+r|0,r=((a=s[U+28>>2])-(i=s[U+24>>2])>>2)-1|0,s[Z>>2]=r,(0|i)!=(0|a)&&(s[N+(r<<2)>>2]=y),a=d?G:G+2|0,y=R+(d+G<<2)|0,-1!=(0|h)){R:{N:{if((h>>>0)%3|0)r=h-1|0;else if(-1==(0|(r=h+2|0)))break N;if(r=s[R+(r<<2)>>2],s[R+(a<<2)>>2]=r,-1==(0|r))break R;s[N+(r<<2)>>2]=a;break R}s[R+(a<<2)>>2]=-1}i=-1,-1!=(0|(r=((r=h+1|0)>>>0)%3|0?r:h-2|0))&&(i=s[R+(r<<2)>>2])}else s[R+(a<<2)>>2]=-1,i=-1;s[y>>2]=i,s[o>>2]=G;break v;case 0:if((0|f)==(0|a))break A;h=s[(r=f-4|0)>>2],s[k+68>>2]=r;R:if(d=s[k+44>>2])if(N=s[k+40>>2],i=t&d+2147483647,(o=Yf(d)>>>0>1)&&((i=t)>>>0<d>>>0||(i=(t>>>0)%(d>>>0)|0)),i=s[N+((y=i)<<2)>>2])if(i=s[i>>2]){N:{if(!o){for(d=d-1|0;;){Z:{if((0|(o=s[i+4>>2]))!=(0|t)){if((0|y)==(o&d))break Z;f=r;break R}if((0|t)==s[i+8>>2])break N}if(!(i=s[i>>2]))break}f=r;break R}for(;;){Z:{if((0|(o=s[i+4>>2]))!=(0|t)){if(o>>>0>=d>>>0&&(o=(o>>>0)%(d>>>0)|0),(0|o)==(0|y))break Z;f=r;break R}if((0|t)==s[i+8>>2])break N}if(!(i=s[i>>2]))break}f=r;break R}if((0|r)==(0|E)){if((b=1+(f=(o=E-a|0)>>2)|0)>>>0>=1073741824)break d;if(r=o>>>1|0,o=o>>>0>=2147483644?1073741823:r>>>0>b>>>0?r:b){if(o>>>0>=1073741824)break a;r=mf(o<<2)}else r=0;if(s[(b=r+(f<<2)|0)>>2]=s[i+12>>2],f=b+4|0,(0|a)!=(0|E))for(;E=E-4|0,s[(b=b-4|0)>>2]=s[E>>2],(0|a)!=(0|E););E=r+(o<<2)|0,s[k+72>>2]=E,s[k+68>>2]=f,s[k+64>>2]=b,a&&mr(a)}else s[r>>2]=s[i+12>>2],s[k+68>>2]=f}else f=r;else f=r;else f=r;if((0|f)==(0|b))break u;if((0|(R=s[(y=f-4|0)>>2]))==(0|h))break u;if(a=-1==(0|R),G=s[A+8>>2],!a&-1!=s[s[G+12>>2]+(R<<2)>>2])break u;if(U=s[G+12>>2],-1!=(0|h)&-1!=s[U+(h<<2)>>2])break u;if(t=(Z=m(t,3))+2|0,s[U+(R<<2)>>2]=t,s[(N=t<<2)+U>>2]=R,r=Z+1|0,s[U+(h<<2)>>2]=r,s[(i=r<<2)+U>>2]=h,a)break y;if((R>>>0)%3|0){d=R-1|0;break l}if(-1!=(0|(d=R+2|0)))break l;a=s[G>>2],r=-1;break _;case 6:break h;default:break A}if(qe((r=s[A+8>>2])+24|0,11424),o=s[A+8>>2],Z=m(t,3),d=(R=(N=(G=s[r+28>>2])-(U=s[r+24>>2])|0)>>2)-1|0,s[s[o>>2]+(Z<<2)>>2]=d,qe(o+24|0,11424),y=Z+1|0,s[s[o>>2]+(y<<2)>>2]=(s[o+28>>2]-s[o+24>>2]>>2)-1,qe((r=s[A+8>>2])+24|0,11424),o=Z+2|0,s[s[r>>2]+(o<<2)>>2]=(s[r+28>>2]-s[r+24>>2]>>2)-1,r=s[A+8>>2],h=s[r+24>>2],s[r+28>>2]-h>>2>(0|O))break A;if(((0|G)!=(0|U)&&(s[h+(d<<2)>>2]=Z,i=0,-4==(0|N))||(s[h+(R<<2)>>2]=y,-1!=(0|(i=R+1|0))))&&(s[h+(i<<2)>>2]=o),(0|f)!=(0|E)){s[f>>2]=Z,f=f+4|0,s[k+68>>2]=f;break m}if((b=1+(i=(o=f-a|0)>>2)|0)>>>0>=1073741824)break p;if(r=o>>>1|0,o=o>>>0>=2147483644?1073741823:r>>>0>b>>>0?r:b){if(o>>>0>=1073741824)break a;r=mf(o<<2)}else r=0;if(s[(b=r+(i<<2)|0)>>2]=Z,E=r+(o<<2)|0,r=b+4|0,(0|f)!=(0|a))for(;f=f-4|0,s[(b=b-4|0)>>2]=s[f>>2],(0|f)!=(0|a););s[k+72>>2]=E,s[k+68>>2]=r,s[k+64>>2]=b,a&&mr(a),f=r}a=b}if(Qr(g,s[f-4>>2]),(0|(o=s[A+40>>2]))==s[A+36>>2])break o;if((r=s[4+(i=o-12|0)>>2])>>>0>(d=~t+V|0)>>>0)break u;if((0|r)!=(0|d))break o;if(t=_[o-4|0],r=s[i>>2],s[A+40>>2]=i,(0|r)<0)break u;y=s[(o=f-4|0)>>2],s[k+20>>2]=~r+V,r=k+20|0,s[k+88>>2]=r,hr(k,k+40|0,r,k+88|0),i=s[k>>2];m:if(1&t){if(r=-1,-1==(0|y))break m;r=((r=y+1|0)>>>0)%3|0?r:y-2|0}else r=-1,-1!=(0|y)&&(r=y-1|0,(y>>>0)%3|0||(r=y+2|0));if(s[i+12>>2]=r,(0|(i=s[A+40>>2]))==s[A+36>>2])break o;for(;;){if((r=s[4+(y=i-12|0)>>2])>>>0>d>>>0)break u;if((0|r)!=(0|d))break o;if(t=_[i-4|0],r=s[y>>2],s[A+40>>2]=y,(0|r)<0)break u;y=s[o>>2],s[k+20>>2]=~r+V,r=k+20|0,s[k+88>>2]=r,hr(k,k+40|0,r,k+88|0),i=s[k>>2];m:if(1&t){if(r=-1,-1==(0|y))break m;r=((r=y+1|0)>>>0)%3|0?r:y-2|0}else r=-1,-1!=(0|y)&&(r=y-1|0,(y>>>0)%3|0||(r=y+2|0));if(s[i+12>>2]=r,(0|(i=s[A+40>>2]))==s[A+36>>2])break}break o}ha(),n()}d=-1,a=s[G>>2],s[a+(Z<<2)>>2]=-1,o=-1;break s}ha(),n()}a=s[G>>2],r=s[a+(d<<2)>>2]}d=r,s[(Z<<2)+a>>2]=r,o=-1,-1!=(0|(r=((r=R+1|0)>>>0)%3|0?r:R-2|0))&&(o=s[(r<<2)+a>>2])}if(s[i+a>>2]=o,-1!=(0|h)){s:{_:{if((h>>>0)%3|0)i=h-1|0;else if(-1==(0|(i=h+2|0)))break _;if(r=s[(i<<2)+a>>2],s[a+N>>2]=r,-1==(0|r))break s;s[s[G+24>>2]+(r<<2)>>2]=t;break s}s[a+N>>2]=-1}R=-1,r=-1,-1!=(0|(i=((i=h+1|0)>>>0)%3|0?i:h-2|0))&&(R=s[(i<<2)+a>>2],r=i)}else s[a+N>>2]=-1,R=-1,r=-1;for(N=i=(o=s[A+388>>2])+(t=d<<2)|0,h=s[i>>2],i=R<<2,s[N>>2]=h+s[i+o>>2],N=(o=i)+(i=s[G+24>>2])|0,-1!=(0|d)&&(s[i+t>>2]=s[N>>2]),i=r;;){if(-1==(0|i))break c;if(s[(i<<2)+a>>2]=d,t=-1,-1!=(0|(i=((o=i+1|0)>>>0)%3|0?o:i-2|0))&&(t=-1,-1!=(0|(o=s[U+(i<<2)>>2]))&&(t=((i=o+1|0)>>>0)%3|0?i:o-2|0)),(0|r)==(0|(i=t)))break}}if(i=-1,!(1&F))break n;break A}if(s[N>>2]=-1,!j)if((0|I)==(0|w)){if((t=1+(i=(a=I-W|0)>>2)|0)>>>0>=1073741824)break t;if(r=a>>>1|0,t=a>>>0>=2147483644?1073741823:r>>>0>t>>>0?r:t){if(t>>>0>=1073741824)break a;r=mf(t<<2)}else r=0;if(s[(i=r+(i<<2)|0)>>2]=R,w=i+4|0,(0|W)!=(0|I))for(;I=I-4|0,s[(i=i-4|0)>>2]=s[I>>2],(0|W)!=(0|I););I=r+(t<<2)|0,s[k+32>>2]=I,s[k+28>>2]=w,s[k+24>>2]=i,W&&mr(W),W=i}else s[w>>2]=R,w=w+4|0,s[k+28>>2]=w;s[y>>2]=Z}Qr(g,Z),a=b}if(F=(0|v)<(0|V),(0|v)==(0|V))break}v=V}if(i=-1,F=s[A+8>>2],!(s[F+28>>2]-s[F+24>>2]>>2>(0|O))){if((0|f)!=(0|b)){for(U=A+72|0,y=A+60|0,V=A+312|0;;){B=s[(f=f-4|0)>>2],s[k+68>>2]=f;n:{o:{k:{if(l[A+270>>1]<=513){if(!_[A+364|0])break o;if(i=s[A+360>>2],(r=s[A+352>>2]+(i>>>3|0)|0)>>>0>=p[A+356>>2])break k;if(r=_[0|r],s[A+360>>2]=i+1,!(r>>>(7&i)&1))break k;break o}if(Xi(V))break o}k:{c:{if((0|(i=s[A+64>>2]))==(t=s[A+68>>2])<<5){if((i+1|0)<0)break c;Wr(y,r=i>>>0<=1073741822?(i=32+(-32&i)|0)>>>0<(t<<=6)>>>0?t:i:2147483647),i=s[A+64>>2]}if(s[A+64>>2]=i+1,t=s[A+60>>2]+(i>>>3&536870908)|0,r=s[t>>2],z=t,H=If(i)&r,s[z>>2]=H,(0|(i=s[A+76>>2]))!=s[A+80>>2]){s[i>>2]=B,s[A+76>>2]=i+4;break n}if((a=1+(t=(o=i-(W=s[U>>2])|0)>>2)|0)>>>0>=1073741824)break k;if(r=o>>>1|0,o=o>>>0>=2147483644?1073741823:r>>>0>a>>>0?r:a){if(o>>>0>=1073741824)break a;r=mf(o<<2)}else r=0;if(s[(a=r+(t<<2)|0)>>2]=B,t=a+4|0,(0|i)!=(0|W))for(;i=i-4|0,s[(a=a-4|0)>>2]=s[i>>2],(0|i)!=(0|W););if(s[A+80>>2]=r+(o<<2),s[A+76>>2]=t,s[A+72>>2]=a,!W)break n;mr(W);break n}ha(),n()}ha(),n()}if(G=s[A+8>>2],j=s[G>>2],((s[G+4>>2]-j>>2>>>0)/3|0)<=(0|v)){i=-1;break A}if(b=-1,i=-1,a=-1,W=s[G+24>>2],t=-1,-1!=(0|B)&&(t=-1,-1!=(0|(r=((r=B+1|0)>>>0)%3|0?r:B-2|0))&&(t=s[j+(r<<2)>>2])),-1!=(0|(N=s[W+(t<<2)>>2]))?(d=1,r=-1,-1!=(0|(o=((o=N+1|0)>>>0)%3|0?o:N-2|0))&&(d=0,b=o,r=-1!=(0|(r=((r=o+1|0)>>>0)%3|0?r:b-2|0))?s[j+(r<<2)>>2]:-1)):(d=1,r=-1),-1!=(0|(o=s[(r<<2)+W>>2]))&&(a=((a=o+1|0)>>>0)%3|0?a:o-2|0),(0|b)==(0|B)|(0|a)==(0|B)|-1!=(0|B)&-1!=s[s[G+12>>2]+(B<<2)>>2]|(0|a)==(0|b))break A;if(!d&-1!=s[s[G+12>>2]+(b<<2)>>2])break A;if(d=-1,W=s[G+12>>2],o=-1,-1!=(0|a)){if(-1!=s[W+(a<<2)>>2])break A;o=-1,-1!=(0|(i=((i=a+1|0)>>>0)%3|0?i:a-2|0))&&(o=s[j+(i<<2)>>2])}i=m(v,3),s[k>>2]=i,s[W+(i<<2)>>2]=B,s[W+(B<<2)>>2]=i,i=s[k>>2]+1|0,s[W+(i<<2)>>2]=b,s[W+(b<<2)>>2]=i,i=s[k>>2]+2|0,s[W+(i<<2)>>2]=a,s[W+(a<<2)>>2]=i,i=s[k>>2],s[j+(i<<2)>>2]=r,s[(W=j+((N=i+1|0)<<2)|0)>>2]=o,s[(a=j+((o=i+2|0)<<2)|0)>>2]=t,t=s[A+120>>2],r=s[(i=t+((b=N?r:-1)>>>3&536870908)|0)>>2],z=i,H=If(b)&r,s[z>>2]=H,d=-1!=(0|N)?s[W>>2]:d,r=s[(i=t+(d>>>3&536870908)|0)>>2],z=i,H=If(d)&r,s[z>>2]=H,i=-1,i=-1!=(0|o)?s[a>>2]:i,r=s[(b=t+(i>>>3&536870908)|0)>>2],z=b,H=If(i)&r,s[z>>2]=H,c[k+88|0]=1,mi(y,k+88|0),qe(U,k),v=v+1|0,b=s[k+64>>2]}if((0|f)==(0|b))break}F=s[A+8>>2]}if(i=-1,((s[F+4>>2]-s[F>>2]>>2>>>0)/3|0)==(0|v)){if(i=s[F+28>>2]-s[F+24>>2]>>2,(0|(v=s[k+24>>2]))==(0|(t=s[k+28>>2])))break b;for(;;){if(y=s[v>>2],r=s[F+24>>2],-1==s[(a=r+((f=i-1|0)<<2)|0)>>2])for(;f=i-2|0,i=i-1|0,-1==s[(a=r+(f<<2)|0)>>2];);if(f>>>0>=y>>>0){if(s[k>>2]=F,a=s[a>>2],c[k+12|0]=1,s[k+8>>2]=a,s[k+4>>2]=a,-1!=(0|a)){for(;;){if(r=s[s[A+8>>2]>>2]+(a<<2)|0,s[r>>2]!=(0|f)){i=-1;break A}if(s[r>>2]=y,pe(k),-1==(0|(a=s[k+8>>2])))break}F=s[A+8>>2]}b=(r=s[F+24>>2])+(f<<2)|0,-1!=(0|y)&&(s[r+(y<<2)>>2]=s[b>>2]),s[b>>2]=-1,o=1<<y,b=(r=s[A+120>>2])+(y>>>3&536870908)|0,a=r+(f>>>3&536870908)|0,r=1<<f,f=s[a>>2]&r?o|s[b>>2]:s[b>>2]&~o,s[b>>2]=f,s[a>>2]=s[a>>2]&~r,i=i-1|0}if((0|t)==(0|(v=v+4|0)))break}}}}v=s[k+24>>2]}if(v&&mr(v),r=s[k+48>>2])for(;f=s[r>>2],mr(r),r=f;);r=s[k+40>>2],s[k+40>>2]=0,r&&mr(r),(r=s[k+64>>2])&&(s[k+68>>2]=r,mr(r)),Q=k+96|0;break f}ha(),n()}Df(),n()}if(b=i,-1!=(0|i)){f=(i=s[D+16>>2])+s[D>>2]|0,r=s[D+8>>2]-i|0,i=s[s[A+4>>2]+32>>2],u[i+38>>1]=l[i+38>>1],s[i>>2]=f,s[i+16>>2]=0,s[i+20>>2]=0,s[i+8>>2]=r,s[i+12>>2]=0,i=s[A+4>>2],(65535&(f=(r=l[i+36>>1])<<8|r>>>8))>>>0<=513&&(t=i=s[i+32>>2],r=s[i+16>>2],i=X+s[i+20>>2]|0,i=(r=r+J|0)>>>0<J>>>0?i+1|0:i,s[t+16>>2]=r,s[t+20>>2]=i);f:if(s[A+216>>2]!=s[A+220>>2]){if(r=s[A+8>>2],i=s[r>>2],r=s[r+4>>2],!((65535&f)>>>0>=513)){if((0|r)==(0|i))break f;for(f=0;;){if(Er(A,f)){if(f=f+3|0,r=s[A+8>>2],f>>>0<s[r+4>>2]-s[r>>2]>>2>>>0)continue;break f}break}break i}if((0|r)!=(0|i)){for(f=0;;){if(Br(A,f)){if(f=f+3|0,r=s[A+8>>2],f>>>0<s[r+4>>2]-s[r>>2]>>2>>>0)continue;break f}break}break i}}if(ui(Y),(0|(f=s[A+216>>2]))!=s[A+220>>2])for(V=0;;){if(Kr(4+((t=m(V,144))+f|0)|0,s[A+8>>2]),r=s[M>>2],(0|(f=s[132+(i=r+t|0)>>2]))!=(0|(i=s[i+136>>2]))){for(;ke(4+(t+s[M>>2]|0)|0,s[f>>2]),(0|i)!=(0|(f=f+4|0)););r=s[M>>2]}if(!pr(4+(r+t|0)|0))break i;if(V=V+1|0,f=s[A+216>>2],!(V>>>0<(s[A+220>>2]-f|0)/144>>>0))break}if(r=s[A+8>>2],ei(A+184|0,s[r+28>>2]-s[r+24>>2]>>2),(0|(T=s[A+216>>2]))!=s[A+220>>2])for(f=0;r=m(f,144)+T|0,i=s[r+60>>2]-s[r+56>>2]>>2,t=r+104|0,r=s[A+8>>2],ei(t,(0|(r=s[r+28>>2]-s[r+24>>2]>>2))<(0|i)?i:r),f=f+1|0,T=s[A+216>>2],f>>>0<(s[A+220>>2]-T|0)/144>>>0;);T=x(A,b)}}break r}T=0}return Q=e- -64|0,0|T},ma,aa,ba,Sr,function(r){mr(Sr(r|=0))},Lf,ge,Se,ar,function(r){var e,i=0,f=0,a=0,t=0,b=0,A=0,o=0,k=0,y=0,d=0,v=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0,V=0,T=0,D=0,F=0,B=0,E=0,Y=0,j=0,I=0,w=0,M=0,O=0,X=0,g=0,z=0,H=0;if(Q=e=Q+-64|0,s[132+(r|=0)>>2]=0,s[r+148>>2]){if(f=s[r+144>>2])for(;a=s[f>>2],mr(f),f=a;);if(f=0,s[r+144>>2]=0,a=s[r+140>>2]){if(a>>>0>=4)for(A=-4&a;s[(t=f<<2)+s[r+136>>2]>>2]=0,s[s[r+136>>2]+(4|t)>>2]=0,s[s[r+136>>2]+(8|t)>>2]=0,s[s[r+136>>2]+(12|t)>>2]=0,f=f+4|0,(0|A)!=(0|(i=i+4|0)););if(i=3&a)for(;s[s[r+136>>2]+(f<<2)>>2]=0,f=f+1|0,(0|i)!=(0|(V=V+1|0)););}s[r+148>>2]=0}r:{e:{i:{if(f=s[r+4>>2],(i=(V=_[f+36|0])<<8|_[f+37|0])>>>0<=513){if(k=s[f+32>>2],i>>>0<=511){if(i=s[k+20>>2],A=i=(a=(t=s[k+16>>2])+4|0)>>>0<4?i+1|0:i,o=s[k+12>>2],p[k+8>>2]<a>>>0&(0|i)>=(0|o)|(0|i)>(0|o))break i;i=t+s[k>>2]|0,i=_[0|i]|_[i+1|0]<<8|_[i+2|0]<<16|_[i+3|0]<<24,s[k+16>>2]=a,s[k+20>>2]=A}else{if(!Wi(1,e,k))break i;f=s[r+4>>2],V=_[f+36|0],i=s[e>>2]}s[r+132>>2]=i}A=s[f+32>>2];f:{a:{if((255&V)>>>0<=1){if(V=0,a=s[A+20>>2],a=(i=(t=s[A+16>>2])+4|0)>>>0<4?a+1|0:a,k=s[A+12>>2],p[A+8>>2]<i>>>0&(0|k)<=(0|a)|(0|a)>(0|k))break e;t=t+s[A>>2]|0,t=_[0|t]|_[t+1|0]<<8|_[t+2|0]<<16|_[t+3|0]<<24,s[e+60>>2]=t,s[A+16>>2]=i,s[A+20>>2]=a,s[r+156>>2]=t,R=r+156|0}else{if(V=0,!Wi(1,e+60|0,A))break e;if(f=s[r+4>>2],i=_[f+36|0],s[r+156>>2]=s[e+60>>2],R=r+156|0,i>>>0>1)break a}if(A=s[f+32>>2],o=s[A+8>>2],k=s[A+12>>2],f=s[A+20>>2],t=i=(a=s[A+16>>2])+4|0,i>>>0>o>>>0&(0|(f=i>>>0<4?f+1|0:f))>=(0|k)|(0|f)>(0|k))break e;i=a+s[A>>2]|0,i=_[0|i]|_[i+1|0]<<8|_[i+2|0]<<16|_[i+3|0]<<24,s[e+56>>2]=i,s[A+16>>2]=t,s[A+20>>2]=f;break f}if(!Wi(1,e+56|0,s[f+32>>2]))break e;i=s[e+56>>2]}if(i>>>0>1431655765|p[R>>2]>m(i,3)>>>0)break e;if(b=s[r+4>>2],A=s[b+32>>2],t=s[(f=A)+8>>2],k=s[f+16>>2],(0|(y=s[f+12>>2]))<=(0|(f=a=s[f+20>>2]))&t>>>0<=k>>>0|(0|f)>(0|y))break e;if(R=s[A>>2],N=_[R+k|0],f=(o=k+1|0)?f:f+1|0,s[A+16>>2]=o,s[A+20>>2]=f,_[b+36|0]<=1){if(b=t,(0|(f=y))<=(0|(a=(t=k+5|0)>>>0<5?a+1|0:a))&t>>>0>b>>>0|(0|f)<(0|a))break e;R=_[0|(f=o+R|0)]|_[f+1|0]<<8|_[f+2|0]<<16|_[f+3|0]<<24,s[e+52>>2]=R,s[A+16>>2]=t,s[A+20>>2]=a}else{if(!Wi(1,e+52|0,A))break e;R=s[e+52>>2]}if(i>>>0<R>>>0|((R>>>0)/3|0)+R>>>0<i>>>0)break e;if(f=s[r+4>>2],k=s[f+32>>2],_[f+36|0]<=1){if(f=s[k+20>>2],f=(a=(t=s[k+16>>2])+4|0)>>>0<4?f+1|0:f,A=a,(b=p[k+8>>2]<a>>>0)&(0|(a=s[k+12>>2]))<=(0|f)|(0|f)>(0|a))break e;a=t+s[k>>2]|0,a=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[e+48>>2]=a,s[k+16>>2]=A,s[k+20>>2]=f}else{if(!Wi(1,e+48|0,k))break e;a=s[e+48>>2]}if(a>>>0>R>>>0)break e;if(s[r+28>>2]=s[r+24>>2],t=vi(mf(88)),f=s[r+8>>2],s[r+8>>2]=t,f&&(Ii(f),!s[r+8>>2]))break e;if(s[r+164>>2]=s[r+160>>2],Hi(r+160|0,i),s[r+176>>2]=s[r+172>>2],Hi(r+172|0,i),s[r- -64>>2]=0,s[r+92>>2]=-1,s[r+84>>2]=-1,s[r+88>>2]=-1,s[r+40>>2]=s[r+36>>2],s[r+52>>2]=s[r+48>>2],s[r+76>>2]=s[r+72>>2],ji(Y=r+216|0),_r(Y,N),!Qe(s[r+8>>2],i,s[r+156>>2]+a|0))break e;if(f=s[r+156>>2],c[0|e]=1,Te(r+120|0,f+a|0,e),f=s[r+4>>2],(i=65535&((i=l[f+36>>1])<<8|i>>>8))>>>0<=513){if(k=s[f+32>>2],i>>>0<=511){if(i=s[k+20>>2],A=i=(f=(t=s[k+16>>2])+4|0)>>>0<4?i+1|0:i,o=s[k+12>>2],p[k+8>>2]<f>>>0&(0|i)>=(0|o)|(0|i)>(0|o))break e;i=t+s[k>>2]|0,i=_[0|i]|_[i+1|0]<<8|_[i+2|0]<<16|_[i+3|0]<<24,s[k+16>>2]=f,s[k+20>>2]=A}else{if(!Wi(1,e+44|0,k))break e;i=s[e+44>>2]}if(!i)break e;if(f=s[s[r+4>>2]+32>>2],k=(t=s[f+8>>2])-(A=s[f+16>>2])|0,(0|(f=s[f+12>>2]-(s[f+20>>2]+(t>>>0<A>>>0)|0)|0))<=0&i>>>0>k>>>0|(0|f)<0)break e;if(f=_f(e),t=s[s[r+4>>2]+32>>2],k=((A=s[t+16>>2])+s[t>>2]|0)+i|0,A=s[t+8>>2]-A|0,u[f+38>>1]=l[t+38>>1],s[f>>2]=k,s[f+16>>2]=0,s[f+20>>2]=0,s[f+8>>2]=A-i,s[f+12>>2]=0,-1==(0|(j=br(r,f))))break e;O=j>>31}else if(j=-1,O=-1,-1==(0|br(r,s[f+32>>2])))break e;li(t=r+232|0,r),s[r+372>>2]=N,s[r+384>>2]=s[r+156>>2]+a,A=X=_f(e),i=0,Q=y=Q-16|0;f:{a:{if(f=s[t+144>>2],(65535&((f=l[36+(0|Ya[s[s[f>>2]+32>>2]](f))>>1])<<8|f>>>8))>>>0<=513){if(f=s[t+4>>2],s[t+40>>2]=s[t>>2],s[t+44>>2]=f,f=s[t+36>>2],s[t+72>>2]=s[t+32>>2],s[t+76>>2]=f,a=s[t+28>>2],s[(f=t- -64|0)>>2]=s[t+24>>2],s[f+4>>2]=a,f=s[t+20>>2],s[t+56>>2]=s[t+16>>2],s[t+60>>2]=f,f=s[t+12>>2],s[t+48>>2]=s[t+8>>2],s[t+52>>2]=f,!Me(t+40|0,1,y+8|0))break a;if(f=s[t+44>>2],s[t>>2]=s[t+40>>2],s[t+4>>2]=f,f=s[t+76>>2],s[t+32>>2]=s[t+72>>2],s[t+36>>2]=f,f=s[t+68>>2],s[t+24>>2]=s[t+64>>2],s[t+28>>2]=f,o=f=s[t+60>>2],a=s[t+56>>2],s[t+16>>2]=a,s[t+20>>2]=f,b=k=s[t+52>>2],f=s[t+48>>2],s[t+8>>2]=f,s[t+12>>2]=b,N=f-a|0,(0|(d=s[y+12>>2]))==(0|(f=b-((f>>>0<a>>>0)+o|0)|0))&N>>>0<(k=s[y+8>>2])>>>0|f>>>0<d>>>0)break a;f=o+d|0,f=(b=a)>>>0>(a=a+k|0)>>>0?f+1|0:f,s[t+16>>2]=a,s[t+20>>2]=f}if(l[t+38>>1]<=513){if(f=s[t+4>>2],s[t+96>>2]=s[t>>2],s[t+100>>2]=f,f=s[t+36>>2],s[t+128>>2]=s[t+32>>2],s[t+132>>2]=f,f=s[t+28>>2],s[t+120>>2]=s[t+24>>2],s[t+124>>2]=f,f=s[t+20>>2],s[t+112>>2]=s[t+16>>2],s[t+116>>2]=f,f=s[t+12>>2],s[t+104>>2]=s[t+8>>2],s[t+108>>2]=f,!Me(t+96|0,1,y+8|0))break a;if(f=s[t+100>>2],s[t>>2]=s[t+96>>2],s[t+4>>2]=f,f=s[t+132>>2],s[t+32>>2]=s[t+128>>2],s[t+36>>2]=f,f=s[t+124>>2],s[t+24>>2]=s[t+120>>2],s[t+28>>2]=f,o=a=s[t+116>>2],f=s[t+112>>2],s[t+16>>2]=f,s[t+20>>2]=a,b=k=s[t+108>>2],a=s[t+104>>2],s[t+8>>2]=a,s[t+12>>2]=b,N=a-f|0,(0|(d=s[y+12>>2]))==(0|(a=b-((f>>>0>a>>>0)+o|0)|0))&N>>>0<(k=s[y+8>>2])>>>0|a>>>0<d>>>0)break a;a=o+d|0,a=(b=f)>>>0>(f=f+k|0)>>>0?a+1|0:a,s[t+16>>2]=f,s[t+20>>2]=a}else if(!Mr(t+80|0,t))break f;if(!je(t))break f;if(f=s[t+4>>2],s[A>>2]=s[t>>2],s[A+4>>2]=f,f=s[t+36>>2],s[A+32>>2]=s[t+32>>2],s[A+36>>2]=f,f=s[t+28>>2],s[A+24>>2]=s[t+24>>2],s[A+28>>2]=f,f=s[t+20>>2],s[A+16>>2]=s[t+16>>2],s[A+20>>2]=f,f=s[t+12>>2],s[A+8>>2]=s[t+8>>2],s[A+12>>2]=f,f=s[t+144>>2],(65535&((f=l[36+(0|Ya[s[s[f>>2]+32>>2]](f))>>1])<<8|f>>>8))>>>0<=513){if(f=s[t+144>>2],_[36+(0|Ya[s[s[f>>2]+32>>2]](f))|0]<=1){if(f=s[A+20>>2],f=(a=(k=s[A+16>>2])+4|0)>>>0<4?f+1|0:f,o=a,(b=p[A+8>>2]<a>>>0)&(0|(a=s[A+12>>2]))<=(0|f)|(0|f)>(0|a))break f;a=k+s[A>>2]|0,a=_[0|a]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[A+16>>2]=o,s[A+20>>2]=f}else{if(!Wi(1,y+8|0,A))break f;a=s[y+8>>2]}if(a>>>0>=(f=s[t+152>>2])>>>0)break f;if((0|(a=s[A+20>>2]))>=(0|(o=s[A+12>>2]))&(k=s[A+16>>2])>>>0>=p[A+8>>2]|(0|a)>(0|o))break f;if(o=_[k+s[A>>2]|0],a=(k=k+1|0)?a:a+1|0,s[A+16>>2]=k,s[A+20>>2]=a,o)break f;s[t+176>>2]=2,s[t+180>>2]=7}else s[t+176>>2]=2,s[t+180>>2]=7,f=s[t+152>>2];if((0|f)<0)break f;if(s[y+8>>2]=0,i=2,o=s[t+156>>2],(k=s[t+160>>2]-o>>2)>>>0<f>>>0?(xr(t+156|0,f-k|0,y+8|0),i=s[t+176>>2],a=s[t+180>>2]):(a=7,f>>>0>=k>>>0||(s[t+160>>2]=o+(f<<2))),k=t+184|0,(i=1+(a-i|0)|0)>>>0>(a=((f=s[t+188>>2])-(o=s[t+184>>2])|0)/12|0)>>>0){if(N=0,(a=i-a|0)>>>0<=((b=s[k+8>>2])-(f=s[k+4>>2])|0)/12>>>0)a&&(f=Ge(i=f,0,f=12+((f=m(a,12)-12|0)-((f>>>0)%12|0)|0)|0)+f|0),s[k+4>>2]=f;else{t:{b:{A:{if((i=(d=(f-(o=s[k>>2])|0)/12|0)+a|0)>>>0<357913942){if(v=(b=(b-o|0)/12|0)<<1,b=b>>>0>=178956970?357913941:i>>>0<v>>>0?v:i){if(b>>>0>=357913942)break A;N=mf(m(b,12))}if(d=(a=Ge(i=m(d,12)+N|0,0,d=12+((a=m(a,12)-12|0)-((a>>>0)%12|0)|0)|0))+d|0,b=m(b,12)+N|0,(0|f)==(0|o))break b;for(;f=f-12|0,s[(i=i-12|0)>>2]=s[f>>2],s[i+4>>2]=s[f+4>>2],s[i+8>>2]=s[f+8>>2],s[f+8>>2]=0,s[f>>2]=0,s[f+4>>2]=0,(0|f)!=(0|o););if(s[k+8>>2]=b,a=s[k+4>>2],s[k+4>>2]=d,f=s[k>>2],s[k>>2]=i,(0|f)==(0|a))break t;for(;(o=s[(i=a-12|0)>>2])&&(s[a-8>>2]=o,mr(o)),a=i,(0|i)!=(0|f););break t}break r}Df(),n()}s[k+8>>2]=b,s[k+4>>2]=d,s[k>>2]=a}f&&mr(f)}a=s[t+188>>2]}else if(i>>>0>=a>>>0)a=f;else{if((0|(a=o+m(i,12)|0))!=(0|f))for(;(o=s[(i=f-12|0)>>2])&&(s[f-8>>2]=o,mr(o)),f=i,(0|a)!=(0|i););s[t+188>>2]=a}if(b=t+196|0,f=(a-(i=s[t+184>>2])|0)/12|0,N=s[t+196>>2],f>>>0>(o=s[t+200>>2]-N>>2)>>>0?(ai(b,f-o|0),i=s[t+184>>2],a=s[t+188>>2]):f>>>0>=o>>>0||(s[t+200>>2]=N+(f<<2)),(0|i)==(0|a)){i=1;break f}for(f=0;;){if(!Wi(1,y+8|0,A))break a;if(i=s[t+148>>2],(a=(s[i+4>>2]-s[i>>2]>>2>>>0)/3|0)>>>0<(i=s[y+8>>2])>>>0)break a;if(i&&(o=(d=m(f,12))+s[k>>2]|0,a=s[o>>2],(N=s[o+4>>2]-a>>2)>>>0<i>>>0?(ai(o,i-N|0),a=s[d+s[k>>2]>>2]):i>>>0>=N>>>0||(s[o+4>>2]=(i<<2)+a),J(i,1,A,a),s[s[b>>2]+(f<<2)>>2]=i),i=1,!((f=f+1|0)>>>0<(s[t+188>>2]-s[t+184>>2]|0)/12>>>0))break}break f}i=0}Q=y+16|0;f:if(i){a=0,f=0,A=0,k=0,N=0,Q=v=Q-96|0,s[v+72>>2]=0,s[v+64>>2]=0,s[v+68>>2]=0,s[v+48>>2]=0,s[v+52>>2]=0,s[v+40>>2]=0,s[v+44>>2]=0,s[v+56>>2]=1065353216,s[v+32>>2]=0,s[v+24>>2]=0,s[v+28>>2]=0,y=r,M=s[r+124>>2];a:{t:{b:{A:{n:if(!((0|R)<=0)){for(U=y+232|0,g=s[y+216>>2]!=s[y+220>>2],I=1;;){k=(o=k)+1|0;o:{if(-1==(0|(r=s[U+172>>2])))i=7,r=s[U+144>>2],(65535&((r=l[36+(0|Ya[s[s[r>>2]+32>>2]](r))>>1])<<8|r>>>8))>>>0>513|!_[U+76|0]||(i=0,(r=(h=s[U- -64>>2])+((d=s[U+72>>2])>>>3|0)|0)>>>0>=(Z=s[U+68>>2])>>>0||(b=_[0|r],r=d+1|0,s[U+72>>2]=r,(b=b>>>(7&d)&1)&&((i=h+(G=r>>>3|0)|0)>>>0>=Z>>>0?(i=r,r=0):(W=_[0|i],i=d+2|0,s[U+72>>2]=i,G=i>>>3|0,r=W>>>(7&r)&1),(d=h+G|0)>>>0<Z>>>0?(d=_[0|d],s[U+72>>2]=i+1,i=d>>>(7&i)<<1&2):i=0,i=(r|i)<<1|b)));else{if(i=s[U+196>>2]+(r<<2)|0,r=(b=s[i>>2])-1|0,s[i>>2]=r,i=9,(0|b)<=0)break o;if((r=s[s[s[U+184>>2]+m(s[U+172>>2],12)>>2]+(r<<2)>>2])>>>0>4)break o;i=s[12144+(r<<2)>>2]}s[U+168>>2]=i}o:{if(r=i){i=-1;k:{c:{u:{s:{_:{l:{p:{y:{d:switch(r-1|0){case 2:case 4:if((0|f)==(0|A))break A;if(a=s[(W=f-4|0)>>2],b=s[y+8>>2],h=s[b+12>>2],-1!=(0|a)&-1!=s[h+(a<<2)>>2])break A;if(d=m(o,3),s[(T=(G=d+((Z=5==(0|r))?2:1)|0)<<2)+h>>2]=a,s[h+(a<<2)>>2]=G,qe(b+24|0,11424),r=s[y+8>>2],h=s[r+24>>2],s[r+28>>2]-h>>2>(0|M))break A;if(F=(r=s[r>>2])+T|0,T=((i=s[b+28>>2])-(b=s[b+24>>2])>>2)-1|0,s[F>>2]=T,(0|i)!=(0|b)&&(s[h+(T<<2)>>2]=G),i=Z?d:d+2|0,G=r+(d+Z<<2)|0,-1!=(0|a)){m:{v:{if((a>>>0)%3|0)b=a-1|0;else if(-1==(0|(b=a+2|0)))break v;if(b=s[r+(b<<2)>>2],s[r+(i<<2)>>2]=b,-1==(0|b))break m;s[h+(b<<2)>>2]=i;break m}s[r+(i<<2)>>2]=-1}i=-1,-1!=(0|(a=((b=a+1|0)>>>0)%3|0?b:a-2|0))&&(i=s[r+(a<<2)>>2])}else s[r+(i<<2)>>2]=-1,i=-1;s[G>>2]=i,s[W>>2]=d;break y;case 0:if((0|f)==(0|a))break A;h=s[(r=f-4|0)>>2],s[v+68>>2]=r;m:if(Z=s[v+44>>2])if(b=s[v+40>>2],i=o&Z+2147483647,(G=Yf(Z)>>>0>1)&&((i=o)>>>0<Z>>>0||(i=(o>>>0)%(Z>>>0)|0)),i=s[b+((d=i)<<2)>>2])if(i=s[i>>2]){v:{if(!G){for(b=Z-1|0;;){h:{if((0|(Z=s[i+4>>2]))!=(0|o)){if((0|d)==(b&Z))break h;f=r;break m}if((0|o)==s[i+8>>2])break v}if(!(i=s[i>>2]))break}f=r;break m}for(;;){h:{if((0|(b=s[i+4>>2]))!=(0|o)){if(b>>>0>=Z>>>0&&(b=(b>>>0)%(Z>>>0)|0),(0|b)==(0|d))break h;f=r;break m}if((0|o)==s[i+8>>2])break v}if(!(i=s[i>>2]))break}f=r;break m}if((0|r)==(0|D)){if((f=1+(A=(r=D-a|0)>>2)|0)>>>0>=1073741824)break r;if(b=r>>>1|0,b=r>>>0>=2147483644?1073741823:f>>>0<b>>>0?b:f){if(b>>>0>=1073741824)break t;r=mf(b<<2)}else r=0;if(s[(A=r+(A<<2)|0)>>2]=s[i+12>>2],f=A+4|0,(0|a)!=(0|D))for(;D=D-4|0,s[(A=A-4|0)>>2]=s[D>>2],(0|a)!=(0|D););D=r+(b<<2)|0,s[v+72>>2]=D,s[v+68>>2]=f,s[v+64>>2]=A,a&&mr(a)}else s[r>>2]=s[i+12>>2],s[v+68>>2]=f}else f=r;else f=r;else f=r;if((0|f)==(0|A))break c;if((0|(r=s[(T=f-4|0)>>2]))==(0|h))break c;if(i=-1==(0|r),Z=s[y+8>>2],!i&-1!=s[s[Z+12>>2]+(r<<2)>>2])break c;if(G=s[Z+12>>2],-1!=(0|h)&-1!=s[G+(h<<2)>>2])break c;if(W=(d=m(o,3))+2|0,s[G+(r<<2)>>2]=W,s[(o=W<<2)+G>>2]=r,a=d+1|0,s[G+(h<<2)>>2]=a,s[(F=a<<2)+G>>2]=h,i)break l;if((r>>>0)%3|0){b=r-1|0;break _}if(-1!=(0|(b=r+2|0)))break _;a=s[Z>>2],b=-1;break s;case 6:break d;default:break A}if(qe((d=s[y+8>>2])+24|0,11424),b=s[y+8>>2],r=m(o,3),W=(d=(G=(h=s[d+28>>2])-(Z=s[d+24>>2])|0)>>2)-1|0,s[s[b>>2]+(r<<2)>>2]=W,qe(b+24|0,11424),T=r+1|0,s[s[b>>2]+(T<<2)>>2]=(s[b+28>>2]-s[b+24>>2]>>2)-1,qe((b=s[y+8>>2])+24|0,11424),F=r+2|0,s[s[b>>2]+(F<<2)>>2]=(s[b+28>>2]-s[b+24>>2]>>2)-1,w=s[y+8>>2],b=s[w+24>>2],s[w+28>>2]-b>>2>(0|M))break A;if(((0|h)!=(0|Z)&&(s[b+(W<<2)>>2]=r,i=0,-4==(0|G))||(s[b+(d<<2)>>2]=T,-1!=(0|(i=d+1|0))))&&(s[b+(i<<2)>>2]=F),(0|f)!=(0|D)){s[f>>2]=r,f=f+4|0,s[v+68>>2]=f;break p}if((A=1+(d=(i=f-a|0)>>2)|0)>>>0>=1073741824)break r;if(b=i>>>1|0,i=i>>>0>=2147483644?1073741823:A>>>0<b>>>0?b:A){if(i>>>0>=1073741824)break t;b=mf(i<<2)}else b=0;if(s[(A=b+(d<<2)|0)>>2]=r,D=b+(i<<2)|0,r=A+4|0,(0|f)!=(0|a))for(;f=f-4|0,s[(A=A-4|0)>>2]=s[f>>2],(0|f)!=(0|a););s[v+72>>2]=D,s[v+68>>2]=r,s[v+64>>2]=A,a&&mr(a),f=r}a=A}if(Jr(U,s[f-4>>2]),(0|(r=s[y+40>>2]))==s[y+36>>2])break o;if((b=s[4+(i=r-12|0)>>2])>>>0>(o=~o+R|0)>>>0)break c;if((0|b)!=(0|o))break o;if(d=_[r-4|0],b=s[i>>2],s[y+40>>2]=i,(0|b)<0)break c;r=s[(h=f-4|0)>>2],s[v+20>>2]=~b+R,i=v+20|0,s[v+88>>2]=i,hr(v,v+40|0,i,v+88|0),b=s[v>>2];p:if(1&d){if(i=-1,-1==(0|r))break p;i=((i=r+1|0)>>>0)%3|0?i:r-2|0}else i=-1,-1!=(0|r)&&(i=r-1|0,(r>>>0)%3|0||(i=r+2|0));if(s[b+12>>2]=i,(0|(i=s[y+40>>2]))==s[y+36>>2])break o;for(;;){if((b=s[4+(r=i-12|0)>>2])>>>0>o>>>0)break c;if((0|b)!=(0|o))break o;if(b=_[i-4|0],i=s[r>>2],s[y+40>>2]=r,(0|i)<0)break c;r=s[h>>2],s[v+20>>2]=~i+R,i=v+20|0,s[v+88>>2]=i,hr(v,v+40|0,i,v+88|0),d=s[v>>2];p:if(1&b){if(i=-1,-1==(0|r))break p;i=((i=r+1|0)>>>0)%3|0?i:r-2|0}else i=-1,-1!=(0|r)&&(i=r-1|0,(r>>>0)%3|0||(i=r+2|0));if(s[d+12>>2]=i,(0|(i=s[y+40>>2]))==s[y+36>>2])break}break o}b=-1,a=s[Z>>2],s[a+(d<<2)>>2]=-1,i=-1;break u}a=s[Z>>2],b=s[a+(b<<2)>>2]}s[(d<<2)+a>>2]=b,i=-1,-1!=(0|(r=((w=r+1|0)>>>0)%3|0?w:r-2|0))&&(i=s[(r<<2)+a>>2])}if(s[a+F>>2]=i,-1!=(0|h)){u:{s:{if((h>>>0)%3|0)i=h-1|0;else if(-1==(0|(i=h+2|0)))break s;if(r=s[(i<<2)+a>>2],s[a+o>>2]=r,-1==(0|r))break u;s[s[Z+24>>2]+(r<<2)>>2]=W;break u}s[a+o>>2]=-1}W=-1,r=-1,-1!=(0|(i=((i=h+1|0)>>>0)%3|0?i:h-2|0))&&(W=s[(i<<2)+a>>2],r=i)}else s[a+o>>2]=-1,W=-1,r=-1;for(h=(i=s[y+388>>2])+(o=b<<2)|0,F=i,i=W<<2,s[h>>2]=s[h>>2]+s[F+i>>2],h=(h=i)+(i=s[Z+24>>2])|0,-1!=(0|b)&&(s[i+o>>2]=s[h>>2]),i=r;;){if(-1==(0|i))break k;if(s[(i<<2)+a>>2]=b,o=-1,-1!=(0|(i=((Z=i+1|0)>>>0)%3|0?Z:i-2|0))&&(o=-1,-1!=(0|(i=s[G+(i<<2)>>2]))&&(o=((o=i+1|0)>>>0)%3|0?o:i-2|0)),(0|r)==(0|(i=o)))break}}if(i=-1,!I)break n;break A}if(s[h>>2]=-1,!g)if((0|B)==(0|E)){if((i=1+(o=(r=B-N|0)>>2)|0)>>>0>=1073741824)break r;if(a=r>>>1|0,a=r>>>0>=2147483644?1073741823:i>>>0<a>>>0?a:i){if(a>>>0>=1073741824)break t;r=mf(a<<2)}else r=0;if(s[(i=r+(o<<2)|0)>>2]=W,E=i+4|0,(0|N)!=(0|B))for(;B=B-4|0,s[(i=i-4|0)>>2]=s[B>>2],(0|N)!=(0|B););B=r+(a<<2)|0,s[v+32>>2]=B,s[v+28>>2]=E,s[v+24>>2]=i,N&&mr(N),N=i}else s[E>>2]=W,E=E+4|0,s[v+28>>2]=E;s[T>>2]=d}else{if((0|f)==(0|A)){i=-1;break A}if(a=-1,h=s[y+8>>2],W=s[h+24>>2],r=-1,-1!=(0|(b=s[(I=f-4|0)>>2]))&&(r=-1,-1!=(0|(d=((d=b+1|0)>>>0)%3|0?d:b-2|0))&&(r=s[s[h>>2]+(d<<2)>>2])),-1!=(0|(i=s[W+(r<<2)>>2]))&&(a=((a=i+1|0)>>>0)%3|0?a:i-2|0),(0|a)==(0|b)){i=-1;break A}if(-1!=(0|b)&&(i=-1,-1!=s[s[h+12>>2]+(b<<2)>>2]))break A;if(d=s[h+12>>2],-1!=(0|a)&&(i=-1,-1!=s[d+(a<<2)>>2]))break A;i=(Z=m(o,3))+1|0,s[d+(b<<2)>>2]=i,s[(T=i<<2)+d>>2]=b,G=Z+2|0,s[d+(a<<2)>>2]=G,s[(F=G<<2)+d>>2]=a,d=-1,o=-1;k:if(-1!=(0|b)){if((b>>>0)%3|0)i=b-1|0;else if(o=-1,-1==(0|(i=b+2|0)))break k;o=s[s[h>>2]+(i<<2)>>2]}if(-1!=(0|a)&&-1!=(0|(i=((i=a+1|0)>>>0)%3|0?i:a-2|0))&&(d=s[s[h>>2]+(i<<2)>>2]),i=-1,(0|r)==(0|o)|(0|r)==(0|d))break A;i=s[h>>2],s[i+(Z<<2)>>2]=r,s[i+T>>2]=d,s[i+F>>2]=o,-1!=(0|o)&&(s[W+(o<<2)>>2]=G),i=s[y+120>>2]+(r>>>3&536870908)|0,a=s[i>>2],z=i,H=If(r)&a,s[z>>2]=H,s[I>>2]=Z,d=s[f-4>>2]}Jr(U,d),a=A}if(I=(0|k)<(0|R),(0|k)==(0|R))break}k=R}if(i=-1,a=s[y+8>>2],!(s[a+28>>2]-s[a+24>>2]>>2>(0|M))){if((0|f)!=(0|A)){for(D=y+72|0,o=y+60|0,Z=y+312|0;;){N=s[(f=f-4|0)>>2],s[v+68>>2]=f;n:{o:{k:{if(l[y+270>>1]<=513){if(!_[y+364|0])break o;if(r=s[y+360>>2],(i=s[y+352>>2]+(r>>>3|0)|0)>>>0>=p[y+356>>2])break k;if(i=_[0|i],s[y+360>>2]=r+1,!(i>>>(7&r)&1))break k;break o}if(Xi(Z))break o}if((0|(i=s[y+64>>2]))==(r=s[y+68>>2])<<5){if((i+1|0)<0)break r;Wr(o,r=i>>>0<=1073741822?(r<<=6)>>>0>(i=32+(-32&i)|0)>>>0?r:i:2147483647),i=s[y+64>>2]}if(s[y+64>>2]=i+1,r=s[y+60>>2]+(i>>>3&536870908)|0,a=s[r>>2],z=r,H=If(i)&a,s[z>>2]=H,(0|(i=s[y+76>>2]))!=s[y+80>>2]){s[i>>2]=N,s[y+76>>2]=i+4;break n}if((b=1+(d=(r=i-(a=s[D>>2])|0)>>2)|0)>>>0<1073741824){if(R=r>>>1|0,R=r>>>0>=2147483644?1073741823:b>>>0<R>>>0?R:b){if(R>>>0>=1073741824)break t;r=mf(R<<2)}else r=0;if(s[(b=r+(d<<2)|0)>>2]=N,N=b+4|0,(0|i)!=(0|a))for(;i=i-4|0,s[(b=b-4|0)>>2]=s[i>>2],(0|i)!=(0|a););if(s[y+80>>2]=r+(R<<2),s[y+76>>2]=N,s[y+72>>2]=b,!a)break n;mr(a);break n}break r}if(h=s[y+8>>2],U=s[h>>2],((s[h+4>>2]-U>>2>>>0)/3|0)<=(0|k)){i=-1;break A}if(a=-1,G=s[h+24>>2],R=-1,-1!=(0|N)&&(R=-1,-1!=(0|(A=((A=N+1|0)>>>0)%3|0?A:N-2|0))&&(R=s[U+(A<<2)>>2])),-1!=(0|(r=s[G+(R<<2)>>2]))?(d=1,b=-1,-1!=(0|(r=((i=r+1|0)>>>0)%3|0?i:r-2|0))&&(d=0,a=r,-1!=(0|(i=((i=r+1|0)>>>0)%3|0?i:r-2|0))&&(b=s[U+(i<<2)>>2]))):(d=1,b=-1),i=-1,A=-1,-1!=(0|(r=s[G+(b<<2)>>2]))&&(A=((A=r+1|0)>>>0)%3|0?A:r-2|0),(0|a)==(0|N)|(0|A)==(0|N)|-1!=(0|N)&-1!=s[s[h+12>>2]+(N<<2)>>2]|(0|a)==(0|A))break A;if(!d&-1!=s[s[h+12>>2]+(a<<2)>>2])break A;if(d=-1,r=s[h+12>>2],h=-1,-1!=(0|A)){if(-1!=s[r+(A<<2)>>2])break A;h=-1,-1!=(0|(i=((i=A+1|0)>>>0)%3|0?i:A-2|0))&&(h=s[U+(i<<2)>>2])}i=m(k,3),s[v>>2]=i,s[r+(i<<2)>>2]=N,s[r+(N<<2)>>2]=i,i=s[v>>2]+1|0,s[r+(i<<2)>>2]=a,s[r+(a<<2)>>2]=i,i=s[v>>2]+2|0,s[r+(i<<2)>>2]=A,s[r+(A<<2)>>2]=i,r=s[v>>2],s[U+(r<<2)>>2]=b,s[(a=U+((i=r+1|0)<<2)|0)>>2]=h,s[(N=U+((A=r+2|0)<<2)|0)>>2]=R,r=s[y+120>>2],U=s[(R=r+((b=i?b:-1)>>>3&536870908)|0)>>2],z=R,H=If(b)&U,s[z>>2]=H,d=-1!=(0|i)?s[a>>2]:d,a=s[(i=r+(d>>>3&536870908)|0)>>2],z=i,H=If(d)&a,s[z>>2]=H,i=-1,i=-1!=(0|A)?s[N>>2]:i,a=s[(r=r+(i>>>3&536870908)|0)>>2],z=r,H=If(i)&a,s[z>>2]=H,c[v+88|0]=1,mi(o,v+88|0),qe(D,v),k=k+1|0,A=s[v+64>>2]}if((0|f)==(0|A))break}a=s[y+8>>2]}if(i=-1,((s[a+4>>2]-s[a>>2]>>2>>>0)/3|0)==(0|k)){if(i=s[a+28>>2]-s[a+24>>2]>>2,(0|(k=s[v+24>>2]))==(0|(b=s[v+28>>2])))break b;for(;;){if(r=s[k>>2],o=s[a+24>>2],-1==s[(A=o+((f=i-1|0)<<2)|0)>>2])for(;f=i-2|0,i=i-1|0,-1==s[(A=o+(f<<2)|0)>>2];);if(r>>>0<=f>>>0){if(s[v>>2]=a,A=s[A>>2],c[v+12|0]=1,s[v+8>>2]=A,s[v+4>>2]=A,-1!=(0|A)){for(;;){if(a=s[s[y+8>>2]>>2]+(A<<2)|0,s[a>>2]!=(0|f)){i=-1;break A}if(s[a>>2]=r,pe(v),-1==(0|(A=s[v+8>>2])))break}a=s[y+8>>2]}A=(o=s[a+24>>2])+(f<<2)|0,-1!=(0|r)&&(s[o+(r<<2)>>2]=s[A>>2]),s[A>>2]=-1,A=1<<r,r=(o=s[y+120>>2])+(r>>>3&536870908)|0,o=o+(f>>>3&536870908)|0,f=1<<f,s[o>>2]&f?A|=s[r>>2]:A=s[r>>2]&~A,s[r>>2]=A,s[o>>2]=s[o>>2]&~f,i=i-1|0}if((0|b)==(0|(k=k+4|0)))break}}}}k=s[v+24>>2]}if(k&&mr(k),r=s[v+48>>2])for(;f=s[r>>2],mr(r),r=f;);r=s[v+40>>2],s[v+40>>2]=0,r&&mr(r),(r=s[v+64>>2])&&(s[v+68>>2]=r,mr(r)),Q=v+96|0;break a}Df(),n()}if(-1!=(0|i)){a=(f=s[(r=X)+16>>2])+s[r>>2]|0,f=s[r+8>>2]-f|0,r=s[s[y+4>>2]+32>>2],u[r+38>>1]=l[r+38>>1],s[r>>2]=a,s[r+16>>2]=0,s[r+20>>2]=0,s[r+8>>2]=f,s[r+12>>2]=0,r=s[y+4>>2],(65535&(A=(f=l[r+36>>1])<<8|f>>>8))>>>0<=513&&(r=s[r+32>>2],f=s[r+16>>2],a=O+s[r+20>>2]|0,a=(f=f+j|0)>>>0<j>>>0?a+1|0:a,s[r+16>>2]=f,s[r+20>>2]=a);a:if(s[y+216>>2]!=s[y+220>>2]){if(f=s[y+8>>2],r=s[f>>2],f=s[f+4>>2],!((65535&A)>>>0>=513)){if((0|r)==(0|f))break a;for(f=0;;){if(Er(y,f)){if(f=f+3|0,r=s[y+8>>2],f>>>0<s[r+4>>2]-s[r>>2]>>2>>>0)continue;break a}break}break f}if((0|r)!=(0|f)){for(f=0;;){if(Br(y,f)){if(f=f+3|0,r=s[y+8>>2],f>>>0<s[r+4>>2]-s[r>>2]>>2>>>0)continue;break a}break}break f}}if(ui(t),(0|(f=s[y+216>>2]))!=s[y+220>>2])for(R=0;;){if(Kr(4+((a=m(R,144))+f|0)|0,s[y+8>>2]),r=s[Y>>2],(0|(f=s[132+(t=r+a|0)>>2]))!=(0|(t=s[t+136>>2]))){for(;ke(4+(a+s[Y>>2]|0)|0,s[f>>2]),(0|t)!=(0|(f=f+4|0)););r=s[Y>>2]}if(!pr(4+(r+a|0)|0))break f;if(R=R+1|0,f=s[y+216>>2],!(R>>>0<(s[y+220>>2]-f|0)/144>>>0))break}if(r=s[y+8>>2],ei(y+184|0,s[r+28>>2]-s[r+24>>2]>>2),(0|(V=s[y+216>>2]))!=s[y+220>>2])for(f=0;r=m(f,144)+V|0,a=s[r+60>>2]-s[r+56>>2]>>2,b=r+104|0,r=s[y+8>>2],ei(b,(0|(r=s[r+28>>2]-s[r+24>>2]>>2))<(0|a)?a:r),f=f+1|0,V=s[y+216>>2],f>>>0<(s[y+220>>2]-V|0)/144>>>0;);V=x(y,i)}}break e}V=0}return Q=e- -64|0,0|V}ha(),n()},ma,aa,ba,uf,function(r){var e=0;s[(r|=0)>>2]=11872,(e=s[r+48>>2])&&(s[r+52>>2]=e,mr(e)),s[r>>2]=12124,(e=s[r+36>>2])&&mr(e),(e=s[r+24>>2])&&mr(e),mr(r)},yi,function(r){var e=0;return s[(r|=0)>>2]=12124,(e=s[r+36>>2])&&mr(e),(e=s[r+24>>2])&&mr(e),0|r},function(r){var e=0;s[(r|=0)>>2]=12124,(e=s[r+36>>2])&&mr(e),(e=s[r+24>>2])&&mr(e),mr(r)},function(r){var e=0;return s[8+(r|=0)>>2]=12384,s[r>>2]=12172,(e=s[r+96>>2])&&(s[r+100>>2]=e,mr(e)),(e=s[r+80>>2])&&(s[r+84>>2]=e,mr(e)),(e=s[r+68>>2])&&(s[r+72>>2]=e,mr(e)),(e=s[r+56>>2])&&(s[r+60>>2]=e,mr(e)),s[r+8>>2]=12620,(e=s[r+44>>2])&&mr(e),(e=s[r+32>>2])&&mr(e),0|r},function(r){var e=0;s[8+(r|=0)>>2]=12384,s[r>>2]=12172,(e=s[r+96>>2])&&(s[r+100>>2]=e,mr(e)),(e=s[r+80>>2])&&(s[r+84>>2]=e,mr(e)),(e=s[r+68>>2])&&(s[r+72>>2]=e,mr(e)),(e=s[r+56>>2])&&(s[r+60>>2]=e,mr(e)),s[r+8>>2]=12620,(e=s[r+44>>2])&&mr(e),(e=s[r+32>>2])&&mr(e),mr(r)},function(r,e){e|=0;var i,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0,u=0,_=0,l=0,p=0;f=s[12+(r|=0)>>2],a=s[r+108>>2],t=s[a+80>>2],c[e+84|0]=0,i=e+68|0,n=s[e+68>>2],(b=s[e+72>>2]-n>>2)>>>0<t>>>0?(Or(i,t-b|0,12372),a=s[r+108>>2],t=s[a+80>>2]):t>>>0>=b>>>0||(s[e+72>>2]=n+(t<<2)),n=((e=s[a+100>>2])-(b=s[a+96>>2])|0)/12|0,u=1;r:if((0|e)!=(0|b))for(l=n>>>0<=1?1:n,p=s[f>>2],f=0,a=b,e=0,u=0;;){if(-1==(0|(o=s[(f=(f<<2)+p|0)>>2])))break r;if((A=s[a>>2])>>>0>=t>>>0)break r;if(_=s[s[r+112>>2]+12>>2],(k=s[_+(o<<2)>>2])>>>0>=t>>>0)break r;if(o=s[i>>2],s[o+(A<<2)>>2]=k,-1==(0|(A=s[f+4>>2])))break r;if((k=s[a+4>>2])>>>0>=t>>>0)break r;if((A=s[(A<<2)+_>>2])>>>0>=t>>>0)break r;if(s[o+(k<<2)>>2]=A,-1==(0|(f=s[f+8>>2])))break r;if((a=s[a+8>>2])>>>0>=t>>>0)break r;if((f=s[(f<<2)+_>>2])>>>0>=t>>>0)break r;if(s[o+(a<<2)>>2]=f,u=n>>>0<=(e=e+1|0)>>>0,(0|e)==(0|l))break r;if(f=m(e,3),a=b+m(e,12)|0,1431655765==(0|e))break}return 0|u},function(r){var e,i=0,f=0,a=0,t=0,b=0,A=0;Q=e=Q-16|0,t=s[4+(r|=0)>>2],a=s[t>>2];r:{if(i=s[r+12>>2],!((b=(f=s[i+28>>2]-s[i+24>>2]|0)>>2)>>>0<=s[t+8>>2]-a>>2>>>0)){if((0|f)<0)break r;if(i=s[t+4>>2],b=(f=mf(f))+(b<<2)|0,f=A=f+(i-a&-4)|0,(0|i)!=(0|a))for(;i=i-4|0,s[(f=f-4|0)>>2]=s[i>>2],(0|i)!=(0|a););s[t+8>>2]=b,s[t+4>>2]=A,s[t>>2]=f,a&&mr(a)}i=s[r+12>>2],f=s[i+28>>2],i=s[i+24>>2],s[e+12>>2]=0,i=f-i>>2,t=s[(a=r+96|0)>>2],i>>>0>(f=s[r+100>>2]-t>>2)>>>0?xr(a,i-f|0,e+12|0):i>>>0>=f>>>0||(s[r+100>>2]=t+(i<<2)),t=r+8|0;e:if(i=s[r+116>>2]){if((0|(a=s[i>>2]))==s[i+4>>2]){f=1;break e}for(i=0;;){if(!(f=fr(t,s[(i<<2)+a>>2])))break e;if(b=s[r+116>>2],a=s[b>>2],!((i=i+1|0)>>>0<s[b+4>>2]-a>>2>>>0))break}}else if(f=1,r=s[r+12>>2],!((r=s[r+4>>2]-s[r>>2]|0)>>>0<12))for(r=(r>>2>>>0)/3|0,i=0;;){if(!(f=fr(t,m(i,3))))break e;if((0|r)==(0|(i=i+1|0)))break}return Q=e+16|0,0|f}ha(),n()},function(r){var e=0;return s[(r|=0)>>2]=12384,(e=s[r+88>>2])&&(s[r+92>>2]=e,mr(e)),(e=s[r+72>>2])&&(s[r+76>>2]=e,mr(e)),(e=s[r+60>>2])&&(s[r- -64>>2]=e,mr(e)),(e=s[r+48>>2])&&(s[r+52>>2]=e,mr(e)),s[r>>2]=12620,(e=s[r+36>>2])&&mr(e),(e=s[r+24>>2])&&mr(e),0|r},function(r){var e=0;s[(r|=0)>>2]=12384,(e=s[r+88>>2])&&(s[r+92>>2]=e,mr(e)),(e=s[r+72>>2])&&(s[r+76>>2]=e,mr(e)),(e=s[r+60>>2])&&(s[r- -64>>2]=e,mr(e)),(e=s[r+48>>2])&&(s[r+52>>2]=e,mr(e)),s[r>>2]=12620,(e=s[r+36>>2])&&mr(e),(e=s[r+24>>2])&&mr(e),mr(r)},function(r,e,i){e|=0,i|=0;var f,a=0;Q=f=Q-16|0,s[4+(r|=0)>>2]=e,a=s[e>>2],e=s[e+4>>2],c[f+15|0]=0,Te(r+24|0,(e-a>>2>>>0)/3|0,f+15|0),e=s[r+4>>2],a=s[e+28>>2],e=s[e+24>>2],c[f+14|0]=0,Te(r+36|0,a-e>>2,f+14|0),e=s[i+12>>2],s[r+16>>2]=s[i+8>>2],s[r+20>>2]=e,e=s[i+4>>2],s[r+8>>2]=s[i>>2],s[r+12>>2]=e,Q=f+16|0},function(r){var e=0;return s[(r|=0)>>2]=12620,(e=s[r+36>>2])&&mr(e),(e=s[r+24>>2])&&mr(e),0|r},function(r){var e=0;s[(r|=0)>>2]=12620,(e=s[r+36>>2])&&mr(e),(e=s[r+24>>2])&&mr(e),mr(r)},function(r){var e=0;return s[8+(r|=0)>>2]=12804,s[r>>2]=12640,(e=s[r+56>>2])&&(s[r+60>>2]=e,mr(e)),s[r+8>>2]=12620,(e=s[r+44>>2])&&mr(e),(e=s[r+32>>2])&&mr(e),0|r},function(r){var e=0;s[8+(r|=0)>>2]=12804,s[r>>2]=12640,(e=s[r+56>>2])&&(s[r+60>>2]=e,mr(e)),s[r+8>>2]=12620,(e=s[r+44>>2])&&mr(e),(e=s[r+32>>2])&&mr(e),mr(r)},function(r,e){e|=0;var i,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0,u=0,_=0,l=0,p=0;f=s[12+(r|=0)>>2],a=s[r+68>>2],t=s[a+80>>2],c[e+84|0]=0,i=e+68|0,n=s[e+68>>2],(b=s[e+72>>2]-n>>2)>>>0<t>>>0?(Or(i,t-b|0,12372),a=s[r+68>>2],t=s[a+80>>2]):t>>>0>=b>>>0||(s[e+72>>2]=n+(t<<2)),n=((e=s[a+100>>2])-(b=s[a+96>>2])|0)/12|0,u=1;r:if((0|e)!=(0|b))for(l=n>>>0<=1?1:n,p=s[f>>2],f=0,a=b,e=0,u=0;;){if(-1==(0|(o=s[(f=(f<<2)+p|0)>>2])))break r;if((A=s[a>>2])>>>0>=t>>>0)break r;if(_=s[s[r+72>>2]+12>>2],(k=s[_+(o<<2)>>2])>>>0>=t>>>0)break r;if(o=s[i>>2],s[o+(A<<2)>>2]=k,-1==(0|(A=s[f+4>>2])))break r;if((k=s[a+4>>2])>>>0>=t>>>0)break r;if((A=s[(A<<2)+_>>2])>>>0>=t>>>0)break r;if(s[o+(k<<2)>>2]=A,-1==(0|(f=s[f+8>>2])))break r;if((a=s[a+8>>2])>>>0>=t>>>0)break r;if((f=s[(f<<2)+_>>2])>>>0>=t>>>0)break r;if(s[o+(a<<2)>>2]=f,u=n>>>0<=(e=e+1|0)>>>0,(0|e)==(0|l))break r;if(f=m(e,3),a=b+m(e,12)|0,1431655765==(0|e))break}return 0|u},function(r){var e=0,i=0,f=0,a=0,t=0,b=0;a=s[4+(r|=0)>>2],f=s[a>>2];r:{if(e=s[r+12>>2],!((t=(i=s[e+28>>2]-s[e+24>>2]|0)>>2)>>>0<=s[a+8>>2]-f>>2>>>0)){if((0|i)<0)break r;if(e=s[a+4>>2],t=(i=mf(i))+(t<<2)|0,i=b=i+(e-f&-4)|0,(0|e)!=(0|f))for(;e=e-4|0,s[(i=i-4|0)>>2]=s[e>>2],(0|e)!=(0|f););s[a+8>>2]=t,s[a+4>>2]=b,s[a>>2]=i,f&&mr(f)}a=r+8|0;e:if(e=s[r+76>>2]){if((0|(f=s[e>>2]))==s[e+4>>2])return 1;for(e=0;;){if(!(i=Zr(a,s[(e<<2)+f>>2])))break e;if(t=s[r+76>>2],f=s[t>>2],!((e=e+1|0)>>>0<s[t+4>>2]-f>>2>>>0))break}}else if(i=1,r=s[r+12>>2],!((r=s[r+4>>2]-s[r>>2]|0)>>>0<12))for(r=(r>>2>>>0)/3|0,e=0;;){if(!(i=Zr(a,m(e,3))))break e;if((0|r)==(0|(e=e+1|0)))break}return 0|i}ha(),n()},function(r){var e=0;return s[(r|=0)>>2]=12804,(e=s[r+48>>2])&&(s[r+52>>2]=e,mr(e)),s[r>>2]=12620,(e=s[r+36>>2])&&mr(e),(e=s[r+24>>2])&&mr(e),0|r},function(r){var e=0;s[(r|=0)>>2]=12804,(e=s[r+48>>2])&&(s[r+52>>2]=e,mr(e)),s[r>>2]=12620,(e=s[r+36>>2])&&mr(e),(e=s[r+24>>2])&&mr(e),mr(r)},function(r){var e=0;return s[8+(r|=0)>>2]=11872,s[r>>2]=12932,(e=s[r+56>>2])&&(s[r+60>>2]=e,mr(e)),s[r+8>>2]=12124,(e=s[r+44>>2])&&mr(e),(e=s[r+32>>2])&&mr(e),0|r},function(r){var e=0;s[8+(r|=0)>>2]=11872,s[r>>2]=12932,(e=s[r+56>>2])&&(s[r+60>>2]=e,mr(e)),s[r+8>>2]=12124,(e=s[r+44>>2])&&mr(e),(e=s[r+32>>2])&&mr(e),mr(r)},function(r,e){e|=0;var i,f=0,a=0,t=0,b=0,A=0,n=0,o=0,k=0,u=0,_=0,l=0,p=0;u=s[12+(r|=0)>>2],f=s[r+68>>2],a=s[f+80>>2],c[e+84|0]=0,i=e+68|0,o=s[e+68>>2],(t=s[e+72>>2]-o>>2)>>>0<a>>>0?(Or(i,a-t|0,12372),f=s[r+68>>2],a=s[f+80>>2]):a>>>0>=t>>>0||(s[e+72>>2]=o+(a<<2)),o=((e=s[f+100>>2])-(t=s[f+96>>2])|0)/12|0,l=1;r:if((0|e)!=(0|t)){if(u=s[u+28>>2],-1==(0|(b=s[u>>2])))return 0;for(p=o>>>0<=1?1:o,f=t,e=0,l=0;;){if((A=s[f>>2])>>>0>=a>>>0)break r;if(k=s[s[r+72>>2]+12>>2],(n=s[k+(b<<2)>>2])>>>0>=a>>>0)break r;if(b=s[i>>2],s[b+(A<<2)>>2]=n,-1==(0|(n=s[4+(A=u+(_<<2)|0)>>2])))break r;if((_=s[f+4>>2])>>>0>=a>>>0)break r;if((n=s[(n<<2)+k>>2])>>>0>=a>>>0)break r;if(s[b+(_<<2)>>2]=n,-1==(0|(A=s[A+8>>2])))break r;if((f=s[f+8>>2])>>>0>=a>>>0)break r;if((k=s[(A<<2)+k>>2])>>>0>=a>>>0)break r;if(s[b+(f<<2)>>2]=k,l=o>>>0<=(e=e+1|0)>>>0,(0|e)==(0|p))break r;if(f=t+m(e,12)|0,_=m(e,3),-1==(0|(b=s[u+(_<<2)>>2])))break}}return 0|l},function(r){var e=0,i=0,f=0,a=0,t=0,b=0;a=s[4+(r|=0)>>2],f=s[a>>2];r:{if(e=s[r+12>>2],!((t=(i=s[e+56>>2]-s[e+52>>2]|0)>>2)>>>0<=s[a+8>>2]-f>>2>>>0)){if((0|i)<0)break r;if(e=s[a+4>>2],t=(i=mf(i))+(t<<2)|0,i=b=i+(e-f&-4)|0,(0|e)!=(0|f))for(;e=e-4|0,s[(i=i-4|0)>>2]=s[e>>2],(0|e)!=(0|f););s[a+8>>2]=t,s[a+4>>2]=b,s[a>>2]=i,f&&mr(f)}a=r+8|0;e:if(e=s[r+76>>2]){if((0|(f=s[e>>2]))==s[e+4>>2])return 1;for(e=0;;){if(!(i=vr(a,s[(e<<2)+f>>2])))break e;if(t=s[r+76>>2],f=s[t>>2],!((e=e+1|0)>>>0<s[t+4>>2]-f>>2>>>0))break}}else if(i=1,r=s[s[r+12>>2]+64>>2],!((r=s[r+4>>2]-s[r>>2]|0)>>>0<12))for(r=(r>>2>>>0)/3|0,e=0;;){if(!(i=vr(a,m(e,3))))break e;if((0|r)==(0|(e=e+1|0)))break}return 0|i}ha(),n()},Ei,Oe,function(r){var e,i=0,f=0,a=0,t=0,b=0,A=0,o=0,k=0,c=0,u=0,p=0,y=0,d=0;Q=e=Q-32|0,o=s[32+(r|=0)>>2];r:{if((65535&((i=l[r+36>>1])<<8|i>>>8))>>>0<=513){if(i=s[o+8>>2],a=s[o+12>>2],f=i,t=i=s[o+20>>2],f>>>0<(b=(k=s[o+16>>2])+4|0)>>>0&(0|(i=b>>>0<4?i+1|0:i))>=(0|a)|(0|i)>(0|a))break r;if(y=s[o>>2],c=_[0|(c=y+k|0)]|_[c+1|0]<<8|_[c+2|0]<<16|_[c+3|0]<<24,s[o+16>>2]=b,s[o+20>>2]=i,A=f,f=a,i=t,(a=k+8|0)>>>0>A>>>0&(0|(i=a>>>0<8?i+1|0:i))>=(0|f)|(0|i)>(0|f))break r;y=_[0|(f=b+y|0)]|_[f+1|0]<<8|_[f+2|0]<<16|_[f+3|0]<<24,s[o+16>>2]=a,s[o+20>>2]=i}else{if(!Ui(1,e+28|0,o))break r;if(!Ui(1,e+24|0,s[r+32>>2]))break r;c=s[e+28>>2],y=s[e+24>>2]}if(!(c>>>0>1431655765||(a=s[r+32>>2],t=Si((k=s[(i=a)+8>>2])-(f=s[i+16>>2])|0,(b=s[i+12>>2])-((i=s[i+20>>2])+(f>>>0>k>>>0)|0)|0,3,0),!j&t>>>0<c>>>0||(t=Ki(c,0,3,0),!j&t>>>0<y>>>0|(0|i)>=(0|b)&f>>>0>=k>>>0|(0|i)>(0|b))))){k=_[f+s[a>>2]|0],i=(f=f+1|0)?i:i+1|0,s[a+16>>2]=f,s[a+20>>2]=i;e:{i:{if(!k){a=0,Q=f=Q-32|0,s[f+24>>2]=0,s[f+16>>2]=0,s[f+20>>2]=0;f:{a:{if(i=m(c,3)){if(i>>>0>=1073741824)break a;Ge(a=mf(k=m(c,12)),0,k)}t:{b:if(!c|!(i=J(i,1,s[r+32>>2],a))){if(!a)break t}else{for(k=0;;){if(t=(b=s[(i=(k<<2)+a|0)>>2])>>>1|0,!((0|(b=(1&b?0-t|0:t)+u|0))<0||(s[f>>2]=b,A=(t=s[i+4>>2])>>>1|0,(0|(b=b+(1&t?0-A|0:A)|0))<0||(s[f+4>>2]=b,t=(i=s[i+8>>2])>>>1|0,(0|(u=b+(1&i?0-t|0:t)|0))<0)))){if(s[f+8>>2]=u,Be(s[r+44>>2]+96|0,f),k=k+3|0,i=1,(0|(d=d+1|0))!=(0|c))continue;break b}break}i=0}mr(a)}Q=f+32|0;break f}ha(),n()}if(i)break i;break r}if(y>>>0<=255){if(!c)break i;for(;;){if(s[e+16>>2]=0,s[e+8>>2]=0,s[e+12>>2]=0,a=s[r+32>>2],k=s[(i=a)+16>>2],!((t=s[i+8>>2])>>>0<=k>>>0&(0|(f=s[i+20>>2]))>=(0|(i=A=s[i+12>>2]))|(0|i)<(0|f)||(o=s[a>>2],u=_[o+k|0],i=f,i=(b=k+1|0)?i:i+1|0,s[a+16>>2]=b,s[a+20>>2]=i,s[e+8>>2]=u,(0|(t=(u=t>>>0<k>>>0&(0|f)>=(0|A)|(0|f)>(0|A))?k:t))==(0|b)&(0|(A=u?f:A))==(0|i)||(u=_[b+o|0],i=f,i=(b=k+2|0)>>>0<2?i+1|0:i,s[a+16>>2]=b,s[a+20>>2]=i,s[e+12>>2]=u,(0|t)==(0|b)&(0|i)==(0|A))))){if(b=_[b+o|0],i=f,i=(f=k+3|0)>>>0<3?i+1|0:i,s[a+16>>2]=f,s[a+20>>2]=i,s[e+16>>2]=b,Be(s[r+44>>2]+96|0,e+8|0),(0|(p=p+1|0))!=(0|c))continue;break i}break}p=0;break r}if(y>>>0<=65535){if(!c)break i;for(;;){if(s[e+16>>2]=0,s[e+8>>2]=0,s[e+12>>2]=0,o=s[r+32>>2],f=s[(i=o)+8>>2],a=s[i+12>>2],b=s[i+16>>2],k=i=s[i+20>>2],!(f>>>0<(t=b+2|0)>>>0&(0|(i=t>>>0<2?i+1|0:i))>=(0|a)|(0|i)>(0|a)||(u=s[o>>2],A=_[0|(A=u+b|0)]|_[A+1|0]<<8,s[o+16>>2]=t,s[o+20>>2]=i,s[e+8>>2]=A,i=k,f>>>0<(A=b+4|0)>>>0&(0|(i=A>>>0<4?i+1|0:i))>=(0|a)|(0|i)>(0|a)||(t=_[0|(t=t+u|0)]|_[t+1|0]<<8,s[o+16>>2]=A,s[o+20>>2]=i,s[e+12>>2]=t,t=f,i=k,(f=b+6|0)>>>0>t>>>0&(0|(i=f>>>0<6?i+1|0:i))>=(0|a)|(0|i)>(0|a))))){if(a=_[0|(a=A+u|0)]|_[a+1|0]<<8,s[o+16>>2]=f,s[o+20>>2]=i,s[e+16>>2]=a,Be(s[r+44>>2]+96|0,e+8|0),(0|(p=p+1|0))!=(0|c))continue;break i}break}p=0;break r}if(!(y>>>0>2097151||(65535&((i=l[r+36>>1])<<8|i>>>8))>>>0<514)){if(!c)break i;for(;;){if(s[e+16>>2]=0,s[e+8>>2]=0,s[e+12>>2]=0,Ui(1,e+4|0,s[r+32>>2])&&(s[e+8>>2]=s[e+4>>2],Ui(1,e+4|0,s[r+32>>2])&&(s[e+12>>2]=s[e+4>>2],Ui(1,e+4|0,s[r+32>>2])))){if(s[e+16>>2]=s[e+4>>2],Be(s[r+44>>2]+96|0,e+8|0),(0|(p=p+1|0))!=(0|c))continue;break i}break}p=0;break r}if(c)for(;;){if(s[e+16>>2]=0,s[e+8>>2]=0,s[e+12>>2]=0,o=s[r+32>>2],f=s[(i=o)+8>>2],a=s[i+12>>2],b=s[i+16>>2],k=i=s[i+20>>2],f>>>0<(t=b+4|0)>>>0&(0|(i=t>>>0<4?i+1|0:i))>=(0|a)|(0|i)>(0|a))break e;if(u=s[o>>2],A=_[0|(A=u+b|0)]|_[A+1|0]<<8|_[A+2|0]<<16|_[A+3|0]<<24,s[o+16>>2]=t,s[o+20>>2]=i,s[e+8>>2]=A,i=k,f>>>0<(A=b+8|0)>>>0&(0|(i=A>>>0<8?i+1|0:i))>=(0|a)|(0|i)>(0|a))break e;if(t=_[0|(t=t+u|0)]|_[t+1|0]<<8|_[t+2|0]<<16|_[t+3|0]<<24,s[o+16>>2]=A,s[o+20>>2]=i,s[e+12>>2]=t,t=f,i=k,(f=b+12|0)>>>0>t>>>0&(0|(i=f>>>0<12?i+1|0:i))>=(0|a)|(0|i)>(0|a))break e;if(a=_[0|(a=A+u|0)]|_[a+1|0]<<8|_[a+2|0]<<16|_[a+3|0]<<24,s[o+16>>2]=f,s[o+20>>2]=i,s[e+16>>2]=a,Be(s[r+44>>2]+96|0,e+8|0),(0|(p=p+1|0))==(0|c))break}}s[s[r+4>>2]+80>>2]=y,p=1;break r}p=0}}return Q=e+32|0,0|p},sa,Na,function(r,e){return c[84+(e|=0)|0]=1,s[e+72>>2]=s[e+68>>2],1},function(r){var e=0,i=0,f=0,a=0,t=0;r:{if(!((0|(e=s[8+(r|=0)>>2]))<0||(i=s[r+4>>2],a=s[i>>2],(f=s[i+4>>2]-a>>2)>>>0<e>>>0?(Ce(i,e-f|0),t=s[r+8>>2]):(t=e,e>>>0>=f>>>0||(s[i+4>>2]=a+(e<<2),t=e)),(0|(f=t))<=0)))for(r=s[r+4>>2],i=s[r>>2],a=s[r+4>>2]-i>>2,r=0;;){if((0|r)==(0|a))break r;if(s[i+(r<<2)>>2]=r,(0|f)==(0|(r=r+1|0)))break}return~e>>>31|0}Za(),n()},Ga,la,ma,Ei,function(r,e){r|=0,e|=0;var i,f=0,a=0,t=0,b=0,A=0;f=mf(72),s[f+4>>2]=0,s[f+8>>2]=0,s[f>>2]=1984,s[f+12>>2]=0,s[f+16>>2]=0,s[f+20>>2]=0,s[f+24>>2]=0,s[f+28>>2]=0,s[f+32>>2]=0,s[f+36>>2]=0,s[f+40>>2]=0,s[f>>2]=2128,s[f+44>>2]=0,s[f+48>>2]=0,s[f+52>>2]=0,s[f+56>>2]=0,s[f+60>>2]=0,s[f+64>>2]=0,s[f+68>>2]=0,i=f;r:{if((0|e)>=0){if(A=r+8|0,!((0|(b=(f=s[r+12>>2])-(t=s[r+8>>2])>>2))>(0|e)))if(a=e+1|0,e>>>0>=b>>>0)ve(A,a-b|0);else if(!(a>>>0>=b>>>0)){if((0|(t=(a<<2)+t|0))!=(0|f))for(;a=s[(f=f-4|0)>>2],s[f>>2]=0,a&&Ya[s[s[a>>2]+4>>2]](a),(0|f)!=(0|t););s[r+12>>2]=t}if(r=s[A>>2]+(e<<2)|0,f=s[r>>2],s[r>>2]=i,!f)break r}Ya[s[s[f>>2]+4>>2]](f)}return~e>>>31|0},function(r){var e,i,f,a,t=0,b=0,A=0;return e=s[32+(r|=0)>>2],a=s[(t=e)+8>>2],f=s[t+12>>2],b=s[t+16>>2],t=s[t+20>>2],A=0,(i=b+4|0)>>>0>a>>>0&(0|(t=i>>>0<4?t+1|0:t))>=(0|f)|(0|t)>(0|f)||(b=s[e>>2]+b|0,b=_[0|b]|_[b+1|0]<<8|_[b+2|0]<<16|_[b+3|0]<<24,s[e+16>>2]=i,s[e+20>>2]=t,A=0,(0|b)<0||(s[s[r+4>>2]+80>>2]=b,A=1)),0|A},Ei,Oe,function(r){var e,i,f,a=0,t=0,b=0;return e=s[32+(r|=0)>>2],f=s[(a=e)+8>>2],b=s[a+12>>2],t=s[a+16>>2],a=s[a+20>>2],(0|(i=b))>=(0|(a=(b=t+4|0)>>>0<4?a+1|0:a))&b>>>0<=f>>>0|(0|a)<(0|i)&&(t=s[e>>2]+t|0,t=_[0|t]|_[t+1|0]<<8|_[t+2|0]<<16|_[t+3|0]<<24,s[e+16>>2]=b,s[e+20>>2]=a,s[s[r+4>>2]+80>>2]=t),(0|a)<=(0|i)&b>>>0<=f>>>0|(0|a)<(0|i)},function(r){var e=0;return s[(r|=0)>>2]=13664,(e=s[r+96>>2])&&(s[r+100>>2]=e,mr(e)),(e=s[r+84>>2])&&(s[r+88>>2]=e,mr(e)),0|ii(r)},function(r){var e=0;s[(r|=0)>>2]=13664,(e=s[r+96>>2])&&(s[r+100>>2]=e,mr(e)),(e=s[r+84>>2])&&(s[r+88>>2]=e,mr(e)),mr(ii(r))},function(r,e,i){var f=0,a=0,t=0,b=0,A=0,o=0,k=0;if(Fr(r|=0,e|=0,i|=0),i=s[r+84>>2],!((0|(f=s[r+88>>2]-i>>2))>(0|e))){if((e=e+1|0)>>>0>f>>>0){r:if((f=e-f|0)>>>0<=(a=s[r+92>>2])-(i=s[r+88>>2])>>2>>>0){if(f){if(e=i,a=7&f)for(;s[e>>2]=1,e=e+4|0,(0|a)!=(0|(t=t+1|0)););if(i=(f<<2)+i|0,!((f-1&1073741823)>>>0<7))for(;s[e+24>>2]=1,s[e+28>>2]=1,s[e+16>>2]=1,s[e+20>>2]=1,s[e+8>>2]=1,s[e+12>>2]=1,s[e>>2]=1,s[e+4>>2]=1,(0|i)!=(0|(e=e+32|0)););}s[r+88>>2]=i}else{e:{if((e=(b=(o=(e=i)-(i=s[r+84>>2])|0)>>2)+f|0)>>>0<1073741824){if(A=(a=a-i|0)>>>1|0,a=a>>>0>=2147483644?1073741823:e>>>0<A>>>0?A:e){if(a>>>0>=1073741824)break e;k=mf(a<<2)}if(e=b=(b<<2)+k|0,A=7&f)for(;s[e>>2]=1,e=e+4|0,(0|A)!=(0|(t=t+1|0)););if(t=b+(f<<2)|0,(f-1&1073741823)>>>0>=7)for(;s[e+24>>2]=1,s[e+28>>2]=1,s[e+16>>2]=1,s[e+20>>2]=1,s[e+8>>2]=1,s[e+12>>2]=1,s[e>>2]=1,s[e+4>>2]=1,(0|t)!=(0|(e=e+32|0)););e=me(k,i,o),s[r+88>>2]=t,s[r+84>>2]=e,s[r+92>>2]=e+(a<<2),i&&mr(i);break r}ha(),n()}Df(),n()}return}e>>>0>=f>>>0||(s[r+88>>2]=i+(e<<2))}},function(r,e){var i=0,f=0;dr(r|=0,e|=0),(0|e)<0||(f=s[r+88>>2])-(i=s[r+84>>2])>>2<=(0|e)||(me(i=(e<<2)+i|0,e=i+4|0,f-e|0),s[r+88>>2]=f-4)},ii,function(r){mr(ii(r|=0))},Fr,dr,function(r){return 0|E(s[60+(r|=0)>>2])},function(r,e,i){e|=0,i|=0;var f,a=0,t=0,b=0,A=0,n=0,o=0;Q=f=Q-32|0,a=s[28+(r|=0)>>2],s[f+16>>2]=a,b=s[r+20>>2],s[f+28>>2]=i,s[f+24>>2]=e,e=b-a|0,s[f+20>>2]=e,b=e+i|0,n=2;r:{e:{e=f+16|0,(a=0|D(s[r+60>>2],0|e,2,f+12|0))?(s[3992]=a,a=-1):a=0;i:{if(a)a=e;else for(;;){if((0|(t=s[f+12>>2]))==(0|b))break i;if((0|t)<0){a=e;break e}if(A=t-((o=(A=s[e+4>>2])>>>0<t>>>0)?A:0)|0,s[(a=(o<<3)+e|0)>>2]=A+s[a>>2],s[(e=(o?12:4)+e|0)>>2]=s[e>>2]-A,b=b-t|0,e=a,n=n-o|0,(t=0|D(s[r+60>>2],0|e,0|n,f+12|0))?(s[3992]=t,t=-1):t=0,t)break}if(-1!=(0|b))break e}e=s[r+44>>2],s[r+28>>2]=e,s[r+20>>2]=e,s[r+16>>2]=e+s[r+48>>2],r=i;break r}s[r+28>>2]=0,s[r+16>>2]=0,s[r+20>>2]=0,s[r>>2]=32|s[r>>2],r=0,2!=(0|n)&&(r=i-s[a+4>>2]|0)}return Q=f+32|0,0|r},function(r,e,i,f){var a;return e|=0,i|=0,f|=0,Q=a=Q-16|0,(r=0|F(s[60+(r|=0)>>2],0|e,0|i,255&f,a+8|0))?(s[3992]=r,r=-1):r=0,Q=a+16|0,j=r?-1:s[a+12>>2],0|(r?-1:s[a+8>>2])},la,function(r,e,i,f){return j=0,0},sa,Na,Ba,Ba,function(r,e,i){i|=0;var f,a=0;return Q=f=Q+-64|0,a=1,Yi(r|=0,e|=0,0)||(a=0,e&&(a=0,(e=Re(e,14972))&&(Ge(4|(a=f+8|0),0,52),s[f+56>>2]=1,s[f+20>>2]=-1,s[f+16>>2]=r,s[f+8>>2]=e,Ya[s[s[e>>2]+28>>2]](e,a,s[i>>2],1),1==(0|(r=s[f+32>>2]))&&(s[i>>2]=s[f+24>>2]),a=1==(0|r)))),Q=f- -64|0,0|a},function(r,e,i,f,a,t){i|=0,f|=0,a|=0,t|=0,Yi(r|=0,s[8+(e|=0)>>2],t)&&pi(e,i,f,a)},function(r,e,i,f,a){if(i|=0,f|=0,a|=0,Yi(r|=0,s[8+(e|=0)>>2],a))1==s[e+28>>2]|s[e+4>>2]!=(0|i)||(s[e+28>>2]=f);else r:if(Yi(r,s[e>>2],a)){if(!(s[e+16>>2]!=(0|i)&s[e+20>>2]!=(0|i))){if(1!=(0|f))break r;return void(s[e+32>>2]=1)}s[e+20>>2]=i,s[e+32>>2]=f,s[e+40>>2]=s[e+40>>2]+1,1!=s[e+36>>2]|2!=s[e+24>>2]||(c[e+54|0]=1),s[e+44>>2]=4}},function(r,e,i,f){i|=0,f|=0,Yi(r|=0,s[8+(e|=0)>>2],0)&&qi(e,i,f)},Na,function(r,e,i,f,a,t){i|=0,f|=0,a|=0,t|=0,Yi(r|=0,s[8+(e|=0)>>2],t)?pi(e,i,f,a):(r=s[r+8>>2],Ya[s[s[r>>2]+20>>2]](r,e,i,f,a,t))},function(r,e,i,f,a){if(i|=0,f|=0,a|=0,Yi(r|=0,s[8+(e|=0)>>2],a))1==s[e+28>>2]|s[e+4>>2]!=(0|i)||(s[e+28>>2]=f);else r:{if(Yi(r,s[e>>2],a)){if(!(s[e+16>>2]!=(0|i)&s[e+20>>2]!=(0|i))){if(1!=(0|f))break r;return void(s[e+32>>2]=1)}s[e+32>>2]=f;e:if(4!=s[e+44>>2]){if(u[e+52>>1]=0,r=s[r+8>>2],Ya[s[s[r>>2]+20>>2]](r,e,i,i,1,a),_[e+53|0]){if(s[e+44>>2]=3,!_[e+52|0])break e;break r}s[e+44>>2]=4}if(s[e+20>>2]=i,s[e+40>>2]=s[e+40>>2]+1,1!=s[e+36>>2]|2!=s[e+24>>2])break r;return void(c[e+54|0]=1)}r=s[r+8>>2],Ya[s[s[r>>2]+24>>2]](r,e,i,f,a)}},function(r,e,i,f){i|=0,f|=0,Yi(r|=0,s[8+(e|=0)>>2],0)?qi(e,i,f):(r=s[r+8>>2],Ya[s[s[r>>2]+28>>2]](r,e,i,f))},Na,function(r){return 1245},Na,function(r){return 1211},Na,function(r){return 1171},ua,aa,ua,ua],Ea.set=function(r,e){this[r]=e},Ea.get=function(r){return this[r]},Ea);function Qa(){return t.byteLength/65536|0}return{i:function(){s[4292]=17048,s[4274]=42},j:Ya,k:ca,l:function(){return 0|_f(mf(40))},m:function(r,e,i){e|=0,i|=0,s[(r|=0)+16>>2]=0,s[r+20>>2]=0,s[r>>2]=e,s[r+8>>2]=i,s[r+12>>2]=0},n:ca,o:function(){var r,e;return e=mf(40),s[e>>2]=-1,s[(r=e+8|0)+16>>2]=0,s[r+20>>2]=0,s[r+8>>2]=0,s[r>>2]=0,s[r+4>>2]=0,s[r+24>>2]=0,s[r+28>>2]=0,0|e},p:ka,q:function(r){var e=0;(r|=0)&&((e=s[r+8>>2])&&(s[r+12>>2]=e,mr(e)),mr(r))},r:function(){return 0|af(mf(64))},s:ca,t:function(){var r;return r=af(mf(96)),s[r+64>>2]=0,s[r+68>>2]=0,s[r+88>>2]=0,s[r+72>>2]=0,s[r+76>>2]=0,c[r+77|0]=0,c[r+78|0]=0,c[r+79|0]=0,c[r+80|0]=0,c[r+81|0]=0,c[r+82|0]=0,c[r+83|0]=0,c[r+84|0]=0,0|r},u:ia,v:function(r){return s[(r|=0)+88>>2]},w:function(r){return s[(r|=0)+56>>2]},x:ea,y:function(r){return c[(r|=0)+24|0]},z:function(r){return _[(r|=0)+32|0]},A:function(r){return s[(r|=0)+40>>2]},B:function(r){return s[(r|=0)+48>>2]},C:function(r){return s[(r|=0)+60>>2]},D:Ci,E:function(){var r;return r=mf(24),s[r+8>>2]=0,s[r+12>>2]=0,s[r+4>>2]=-1,s[r>>2]=1832,s[r+16>>2]=0,s[r+20>>2]=0,0|r},F:Mf,G:aa,H:function(r,e){return e|=0,v(y[s[(r|=0)+8>>2]+(e<<2)>>2])},I:function(r){return v(y[(r|=0)+20>>2])},J:xf,K:function(){var r;return r=mf(8),s[r+4>>2]=-1,s[r>>2]=1032,0|r},L:Mf,M:aa,N:xf,O:function(){return 0|Cf(mf(84))},P:Pf,Q:ia,R:xf,S:function(){var r;return r=Cf(mf(108)),s[r+84>>2]=0,s[r+88>>2]=0,s[r>>2]=13664,s[r+92>>2]=0,s[r+96>>2]=0,s[r+100>>2]=0,s[r+104>>2]=0,0|r},T:function(r){return(s[(r|=0)+100>>2]-s[r+96>>2]|0)/12|0},U:Pf,V:ia,W:xf,X:function(){var r,e;return r=mf(24),s[r+4>>2]=0,s[r+8>>2]=0,s[(e=r+16|0)>>2]=0,s[e+4>>2]=0,s[r>>2]=r+4,s[r+12>>2]=e,0|r},Y:function(r){(r|=0)&&(bf(r+12|0,s[r+16>>2]),df(r,s[r+4>>2]),mr(r))},Z:ka,_:function(r){return 0|!s[(r|=0)>>2]},$:function(r){return 0|(c[(r|=0)+15|0]<0?s[r+4>>2]:r+4)},aa:function(r){(r|=0)&&(c[r+15|0]<0&&mr(s[r+4>>2]),mr(r))},ba:Qf,ca:function(r,e){return e|=0,v(y[s[(r|=0)>>2]+(e<<2)>>2])},da:qf,ea:jf,fa:Qf,ga:function(r,e){return e|=0,c[s[(r|=0)>>2]+e|0]},ha:$f,ia:jf,ja:Qf,ka:function(r,e){return e|=0,_[s[(r|=0)>>2]+e|0]},la:$f,ma:jf,na:Qf,oa:function(r,e){return e|=0,u[s[(r|=0)>>2]+(e<<1)>>1]},pa:Kf,qa:jf,ra:Qf,sa:function(r,e){return e|=0,l[s[(r|=0)>>2]+(e<<1)>>1]},ta:Kf,ua:jf,va:Qf,wa:zf,xa:qf,ya:jf,za:Qf,Aa:zf,Ba:qf,Ca:jf,Da:function(){var r;return r=mf(28),s[r>>2]=0,s[r+4>>2]=0,s[r+24>>2]=0,s[r+16>>2]=0,s[r+20>>2]=0,s[r+8>>2]=0,s[r+12>>2]=0,0|r},Ea:function(r,e,i){r|=0,e|=0;var f,a=0,t=0,b=0,A=0,o=0,k=0;if(Q=f=Q-16|0,(a=Oi(i|=0))>>>0<2147483632){r:{if(a>>>0>=11)r=mf(t=1+(15|a)|0),s[f+8>>2]=-2147483648|t,s[f>>2]=r,s[f+4>>2]=a,t=r+a|0;else if(c[f+11|0]=a,t=f+a|0,r=f,!a)break r;Cr(r,i,a)}c[0|t]=0,a=(i=_[f+11|0])<<24>>24,r=0;r:if(e=s[e+4>>2]){for(r=i,r=(i=(0|a)<0)?s[f+4>>2]:r,t=i?s[f>>2]:f;;){e:{i:{f:{a:{t:{b:{if(A=(o=(i=(b=(i=_[e+27|0])<<24>>24<0)?s[e+20>>2]:i)>>>0<r>>>0)?i:r){if(k=Ti(t,b=b?s[e+16>>2]:e+16|0,A))break b;if(r>>>0>=i>>>0)break t;break e}if(r>>>0>=i>>>0)break a;break e}if((0|k)<0)break e}if(i=Ti(b,t,A))break f}if(o)break i;r=1;break r}if(!((0|i)<0)){r=1;break r}}e=e+4|0}if(!(e=s[e>>2]))break}r=0}(0|a)<0&&mr(s[f>>2]),Q=f+16|0}else Ra(),n();return 0|r},Fa:function(r,e,i){r|=0,e|=0,i|=0;var f,a=0,t=0;if(Q=f=Q-16|0,s[f+12>>2]=0,(a=Oi(i))>>>0<2147483632){r:{if(a>>>0>=11)r=mf(t=1+(15|a)|0),s[f+8>>2]=-2147483648|t,s[f>>2]=r,s[f+4>>2]=a,t=r+a|0;else if(c[f+11|0]=a,t=f+a|0,r=f,!a)break r;Cr(r,i,a)}c[0|t]=0,(0|(r=we(e,f)))!=(e+4|0)&&4==((e=s[r+32>>2])-(r=s[r+28>>2])|0)&&(s[f+12>>2]=_[0|r]|_[r+1|0]<<8|_[r+2|0]<<16|_[r+3|0]<<24),r=s[f+12>>2],c[f+11|0]<0&&mr(s[f>>2]),Q=f+16|0}else Ra(),n();return 0|r},Ga:function(r,e,i,f){r|=0,e|=0,f|=0;var a=0,t=0,b=0;if(Q=r=Q-32|0,(a=Oi(i|=0))>>>0<2147483632){r:{if(a>>>0>=11)t=mf(b=1+(15|a)|0),s[r+24>>2]=-2147483648|b,s[r+16>>2]=t,s[r+20>>2]=a,b=a+t|0;else if(c[r+27|0]=a,b=a+(t=r+16|0)|0,!a)break r;Cr(t,i,a)}c[0|b]=0,s[r+8>>2]=0,s[r>>2]=0,s[r+4>>2]=0,(0|(i=we(e,r+16|0)))!=(e+4|0)&&(0|(e=s[i+28>>2]))!=(0|(a=s[i+32>>2]))&&(3&(e=a-e|0)||((a=e>>>2|0)>>>0>(b=(t=s[r+4>>2])-(e=s[r>>2])>>2)>>>0?(ai(r,a-b|0),e=s[r>>2],t=s[r+4>>2]):a>>>0>=b>>>0||(t=(a<<2)+e|0,s[r+4>>2]=t),(0|e)==(0|t)?(Za(),n()):Cr(a=e,e=s[i+28>>2],s[i+32>>2]-e|0))),(e=s[f>>2])&&(s[f+4>>2]=e,mr(e)),s[f>>2]=s[r>>2],s[f+4>>2]=s[r+4>>2],s[f+8>>2]=s[r+8>>2],c[r+27|0]<0&&mr(s[r+16>>2]),Q=r+32|0}else Ra(),n()},Ha:function(r,e,i){r|=0,e|=0,i|=0;var f=0,a=0,t=0,b=0;if(Q=r=Q-32|0,s[r+24>>2]=0,s[r+28>>2]=0,(f=Oi(i))>>>0<2147483632){r:{if(f>>>0>=11)t=mf(a=1+(15|f)|0),s[r+16>>2]=-2147483648|a,s[r+8>>2]=t,s[r+12>>2]=f,a=f+t|0;else if(c[r+19|0]=f,a=(t=r+8|0)+f|0,!f)break r;Cr(t,i,f)}c[0|a]=0,(0|(i=e+4|0))!=(0|(e=we(e,r+8|0)))&&8==((i=s[e+32>>2])-(e=s[e+28>>2])|0)&&(i=_[e+4|0]|_[e+5|0]<<8|_[e+6|0]<<16|_[e+7|0]<<24,s[r+24>>2]=_[0|e]|_[e+1|0]<<8|_[e+2|0]<<16|_[e+3|0]<<24,s[r+28>>2]=i),b=d[r+24>>3],c[r+19|0]<0&&mr(s[r+8>>2]),Q=r+32|0}else Ra(),n();return+b},Ia:function(r,e,i){r|=0,e|=0;var f,a=0,t=0,b=0;if(Q=f=Q-16|0,(a=Oi(i|=0))>>>0<2147483632){r:{if(a>>>0>=11)t=mf(b=1+(15|a)|0),s[f+8>>2]=-2147483648|b,s[f>>2]=t,s[f+4>>2]=a,b=a+t|0;else if(c[f+11|0]=a,b=f+a|0,t=f,!a)break r;Cr(t,i,a)}c[0|b]=0,i=ef(e,f,t=r+16|0),e=s[r+16>>2],r=c[r+27|0],c[f+11|0]<0&&mr(s[f>>2]),Q=f+16|0,r=i?(0|r)<0?e:t:0}else Ra(),n();return 0|r},Ja:function(r,e){return 0,s[(e|=0)+8>>2]},Ka:function(r,e,i){e|=0;var f,a,t=0,b=0,A=0,o=0,k=0,u=0;if(a=i|=0,f=r|=0,s[r+12>>2]!=(0|e)){if(r=e,(0|(e=s[f+4>>2]))!=(0|(t=s[f>>2])))for(;i=e-12|0,c[e-1|0]<0&&mr(s[i>>2]),(0|t)!=(0|(e=i)););if(s[f+12>>2]=r,s[f+4>>2]=t,(0|(i=s[r>>2]))!=(0|(k=r+4|0)))for(;;){if((0|(r=s[f+4>>2]))==s[f+8>>2]){A=0;r:{e:{i:{if((e=(b=((r=s[f+4>>2])-(t=s[f>>2])|0)/12|0)+1|0)>>>0<357913942){if(u=(o=(s[f+8>>2]-t|0)/12|0)<<1,e=o>>>0>=178956970?357913941:e>>>0<u>>>0?u:e){if(e>>>0>=357913942)break i;A=mf(m(e,12))}if(o=m(e,12),e=m(b,12)+A|0,c[i+27|0]>=0?(b=s[i+20>>2],s[e>>2]=s[i+16>>2],s[e+4>>2]=b,s[e+8>>2]=s[i+24>>2]):(oi(e,s[i+16>>2],s[i+20>>2]),t=s[f>>2],r=s[f+4>>2]),A=A+o|0,b=e+12|0,(0|r)==(0|t))break e;for(;o=s[(r=r-12|0)+4>>2],s[(e=e-12|0)>>2]=s[r>>2],s[e+4>>2]=o,s[e+8>>2]=s[r+8>>2],s[r>>2]=0,s[r+4>>2]=0,s[r+8>>2]=0,(0|r)!=(0|t););if(s[f+8>>2]=A,r=s[f+4>>2],s[f+4>>2]=b,t=s[f>>2],s[f>>2]=e,(0|r)==(0|t))break r;for(;e=r-12|0,c[r-1|0]<0&&mr(s[e>>2]),r=e,(0|t)!=(0|e););break r}ha(),n()}Df(),n()}s[f+8>>2]=A,s[f+4>>2]=b,s[f>>2]=e}t&&mr(t)}else c[i+27|0]>=0?(e=s[i+20>>2],s[r>>2]=s[i+16>>2],s[r+4>>2]=e,s[r+8>>2]=s[i+24>>2]):oi(r,s[i+16>>2],s[i+20>>2]),s[f+4>>2]=r+12;r:{if(e=s[i+4>>2])for(;;)if(r=e,!(e=s[e>>2]))break r;for(;r=s[i+8>>2],e=s[r>>2]!=(0|i),i=r,e;);}if(i=r,(0|k)==(0|r))break}}return r=0,(0|a)<0||(e=s[f>>2],(s[f+4>>2]-e|0)/12>>>0<=a>>>0||(r=e+m(a,12)|0,r=c[r+11|0]<0?s[r>>2]:r)),0|r},La:function(r){var e=0,i=0,f=0;if(r|=0){if(c[r+27|0]<0&&mr(s[r+16>>2]),e=s[r>>2]){if(i=e,(0|e)!=(0|(f=s[r+4>>2]))){for(;i=f-12|0,c[f-1|0]<0&&mr(s[i>>2]),(0|(f=i))!=(0|e););i=s[r>>2]}s[r+4>>2]=e,mr(i)}mr(r)}},Ma:function(){var r,e;return r=mf(40),s[r+4>>2]=0,s[r+8>>2]=0,s[r+24>>2]=0,s[r+28>>2]=0,s[(e=r+16|0)>>2]=0,s[e+4>>2]=0,s[r>>2]=r+4,s[r+12>>2]=e,s[r+32>>2]=0,s[r+36>>2]=0,0|r},Na:function(r,e,i,f){r|=0,e|=0,i|=0,f|=0;var a,t=0,b=0;Q=a=Q+-64|0,t=_f(a+8|0),s[t+16>>2]=0,s[t+20>>2]=0,s[t>>2]=e,s[t+8>>2]=i,s[t+12>>2]=0,lr(e=a+48|0,r,t,f),s[r+24>>2]=s[a+48>>2];r:if((0|(t=r+24|0))!=(0|e))if(e=r+28|0,i=a+48|4,f=(b=_[a+63|0])<<24>>24,c[r+39|0]>=0){if((0|f)>=0){r=s[i+4>>2],s[e>>2]=s[i>>2],s[e+4>>2]=r,s[e+8>>2]=s[i+8>>2];break r}Li(e,s[a+52>>2],s[a+56>>2])}else xi(e,(r=(0|f)<0)?s[a+52>>2]:i,r?s[a+56>>2]:b);return c[a+63|0]<0&&mr(s[a+52>>2]),Q=a- -64|0,0|t},Oa:function(r,e,i,f){r|=0,e|=0,i|=0,f|=0;var a,t=0,b=0;Q=a=Q+-64|0,t=_f(a+8|0),s[t+16>>2]=0,s[t+20>>2]=0,s[t>>2]=e,s[t+8>>2]=i,s[t+12>>2]=0,Rr(e=a+48|0,r,t,f),s[r+24>>2]=s[a+48>>2];r:if((0|(t=r+24|0))!=(0|e))if(e=r+28|0,i=a+48|4,f=(b=_[a+63|0])<<24>>24,c[r+39|0]>=0){if((0|f)>=0){r=s[i+4>>2],s[e>>2]=s[i>>2],s[e+4>>2]=r,s[e+8>>2]=s[i+8>>2];break r}Li(e,s[a+52>>2],s[a+56>>2])}else xi(e,(r=(0|f)<0)?s[a+52>>2]:i,r?s[a+56>>2]:b);return c[a+63|0]<0&&mr(s[a+52>>2]),Q=a- -64|0,0|t},Pa:function(r,e,i){return 0,0|lf(e|=0,i|=0)},Qa:function(r,e,i){r|=0,e|=0;var f=0,a=0,t=0;if(Q=r=Q-32|0,(f=Oi(i|=0))>>>0<2147483632){r:{if(f>>>0>=11)t=mf(a=1+(15|f)|0),s[r+24>>2]=-2147483648|a,s[r+16>>2]=t,s[r+20>>2]=f,a=f+t|0;else if(c[r+27|0]=f,a=(t=r+16|0)+f|0,!f)break r;Cr(t,i,f)}c[0|a]=0,c[r+4|0]=0,s[r>>2]=1701667182,c[r+11|0]=4,i=-1,(f=s[e+4>>2])&&(i=-1,(f=We(f,r,r+16|0))&&(i=rf(e,s[f+24>>2]))),e=i,c[r+11|0]<0&&mr(s[r>>2]),c[r+27|0]<0&&mr(s[r+16>>2]),Q=r+32|0}else Ra(),n();return 0|e},Ra:function(r,e,i,f){r|=0,e|=0,f|=0;var a,t=0,b=0;Q=a=Q-32|0;r:{e:{if((t=Oi(i|=0))>>>0<2147483632){i:{if(t>>>0>=11)b=mf(r=1+(15|t)|0),s[a+24>>2]=-2147483648|r,s[a+16>>2]=b,s[a+20>>2]=t,r=t+b|0;else if(c[a+27|0]=t,r=t+(b=a+16|0)|0,!t)break i;Cr(b,i,t)}if(c[0|r]=0,(i=Oi(f))>>>0>=2147483632)break e;i:{if(i>>>0>=11)r=mf(t=1+(15|i)|0),s[a+8>>2]=-2147483648|t,s[a>>2]=r,s[a+4>>2]=i,b=r+i|0;else if(c[a+11|0]=i,b=i+a|0,r=a,!i)break i;Cr(r,f,i)}c[0|b]=0,r=-1,(i=s[e+4>>2])&&(r=-1,(i=We(i,a+16|0,a))&&(r=rf(e,s[i+24>>2]))),c[a+11|0]<0&&mr(s[a>>2]),c[a+27|0]<0&&mr(s[a+16>>2]),Q=a+32|0;break r}Ra(),n()}Ra(),n()}return 0|r},Sa:function(r,e,i){return 0,i|=0,s[s[(e|=0)+8>>2]+(i<<2)>>2]},Ta:function(r,e,i){r|=0,i|=0;var f=0,a=0;r=0;r:if((0|(f=s[(e|=0)+12>>2]))!=(0|(e=s[e+8>>2]))){f=(r=f-e>>2)>>>0<=1?1:r,r=0;e:{for(;;){if(a=s[e+(r<<2)>>2],s[a+60>>2]==(0|i))break e;if((0|f)==(0|(r=r+1|0)))break}r=0;break r}r=-1!=(0|r)?a:0}return 0|r},Ua:function(r,e){return 0,s[(e|=0)+4>>2]},Va:function(r,e,i){r|=0,i|=0;var f,a=0;if((f=s[(e|=0)+4>>2])&&!((0|(e=s[s[s[e+8>>2]+(i<<2)>>2]+60>>2]))<0)&&(0|(r=s[f+24>>2]))!=(0|(i=s[f+28>>2])))r:{for(;;){if(a=s[r>>2],(0|e)==s[a+24>>2])break r;if((0|i)==(0|(r=r+4|0)))break}a=0}return 0|a},Wa:function(r,e,i,f){return r|=0,i|=0,f|=0,e=s[(e|=0)+96>>2],r=mf(12),e=e+m(i,12)|0,i=s[e+4>>2],s[r>>2]=s[e>>2],s[r+4>>2]=i,s[r+8>>2]=s[e+8>>2],(e=s[f>>2])&&(s[f+4>>2]=e,mr(e)),s[f>>2]=r,r=r+12|0,s[f+8>>2]=r,s[f+4>>2]=r,1},Xa:function(r,e,i){r|=0,e|=0;var f,a,t,b,A,o,k=0,u=0,l=0,p=0,y=0,d=0,v=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0,V=0,T=0,D=0,F=0,B=0,E=0,Y=0,j=0,I=0,J=0,w=0,M=0,O=0;o=i|=0,i=0,Q=a=Q-96|0,Ge(f=a+16|0,0,76),s[a+92>>2]=-1,s[a+8>>2]=0,s[a>>2]=0,s[a+4>>2]=0,Q=t=Q-16|0,s[f+68>>2]=0,s[f+72>>2]=0,s[f>>2]=e,Q=b=Q-16|0,A=e,r=s[e+20>>2],(s[e+24>>2]-r|0)<=0||-1!=(0|(r=s[r>>2]))&&(i=s[s[A+8>>2]+(r<<2)>>2]);r:{e:{if(i){r=s[A+100>>2],u=s[A+96>>2],s[b+8>>2]=0,s[b>>2]=0,s[b+4>>2]=0,e=(0|(l=r-u|0))/12|0;i:if((0|r)!=(0|u)){if(e>>>0>=357913942)break e;if(k=mf(l),s[b>>2]=k,s[b+8>>2]=k+m(e,12),r=0,l=Ge(R=k,0,k=12+((l=l-12|0)-((l>>>0)%12|0)|0)|0),s[b+4>>2]=k+l,_[i+84|0]){if(y=1&(i=e>>>0<=1?1:e),e>>>0>=2)for(p=-2&i,i=0;k=m(r,12),d=s[(e=k+u|0)+4>>2],v=s[e>>2],s[(k=k+l|0)+8>>2]=s[e+8>>2],s[k>>2]=v,s[k+4>>2]=d,k=m(1|r,12),d=s[(e=k+u|0)+4>>2],v=s[e>>2],s[(k=k+l|0)+8>>2]=s[e+8>>2],s[k>>2]=v,s[k+4>>2]=d,r=r+2|0,(0|p)!=(0|(i=i+2|0)););if(!y)break i;e=m(r,12),i=s[(r=e+u|0)+4>>2],u=s[r>>2],s[(e=e+l|0)+8>>2]=s[r+8>>2],s[e>>2]=u,s[e+4>>2]=i}else for(y=e>>>0<=1?1:e,r=s[i+68>>2],i=0;k=m(i,12),p=s[r+(s[(e=k+u|0)>>2]<<2)>>2],d=s[r+(s[e+4>>2]<<2)>>2],s[(k=k+l|0)+8>>2]=s[r+(s[e+8>>2]<<2)>>2],s[k+4>>2]=d,s[k>>2]=p,(0|y)!=(0|(i=i+1|0)););}if(k=0,Q=Y=Q-16|0,vi(y=mf(88)),Q=B=Q-16|0,s[y+80>>2]=0,s[y+84>>2]=0,r=s[y+76>>2],s[y+76>>2]=0,r&&mr(r),s[y+68>>2]=0,s[y+72>>2]=0,r=s[(e=y- -64|0)>>2],s[e>>2]=0,r&&mr(r),p=s[b+4>>2],e=s[b>>2],r=m(i=(p-e|0)/12|0,3),l=s[y>>2],r>>>0>(u=s[y+4>>2]-l>>2)>>>0?(Ce(y,r-u|0),i=((p=s[b+4>>2])-(e=s[b>>2])|0)/12|0):r>>>0>=u>>>0||(s[y+4>>2]=l+(r<<2)),(0|e)!=(0|p)){if(p=1&(u=i>>>0<=1?1:i),r=s[y>>2],i>>>0>=2)for(d=-2&u,i=0;l=e+(u=m(k,12))|0,s[(v=u+r|0)>>2]=s[l>>2],s[r+(4|u)>>2]=s[l+4>>2],s[v+8>>2]=s[l+8>>2],u=(l=m(1|k,12))+r|0,l=e+l|0,s[u>>2]=s[l>>2],s[u+4>>2]=s[l+4>>2],s[u+8>>2]=s[l+8>>2],k=k+2|0,(0|d)!=(0|(i=i+2|0)););p&&(e=e+(i=m(k,12))|0,s[(r=i+r|0)>>2]=s[e>>2],s[r+4>>2]=s[e+4>>2],s[r+8>>2]=s[e+8>>2])}s[B+12>>2]=-1,r=0,u=0,p=0,Q=l=Q-32|0;i:{f:{if(W=B+12|0){if(d=(k=(i=s[y+4>>2])-(v=s[y>>2])|0)>>2,R=s[y+12>>2],d>>>0>(e=s[y+16>>2]-R>>2)>>>0?(Or(y+12|0,d-e|0,13652),d=(k=(i=s[y+4>>2])-(v=s[y>>2])|0)>>2):e>>>0<=d>>>0||(s[y+16>>2]=R+(d<<2)),s[l+24>>2]=0,s[l+16>>2]=0,s[l+20>>2]=0,!(e=(0|i)==(0|v))){if((0|k)<0)break f;u=mf(k),s[l+20>>2]=u,s[l+16>>2]=u,s[l+24>>2]=(d<<2)+u}a:{t:{b:{A:{if(!k){if(k=0,!e)break A;break b}for(;(d=s[(r<<2)+v>>2])>>>0<(e=s[l+20>>2]-u>>2)>>>0||(s[l>>2]=0,(k=d+1|0)>>>0>e>>>0?(xr(l+16|0,k-e|0,l),v=s[y>>2],i=s[y+4>>2],u=s[l+16>>2]):e>>>0<=k>>>0||(s[l+20>>2]=(k<<2)+u)),s[(e=(d<<2)+u|0)>>2]=s[e>>2]+1,(r=r+1|0)>>>0<(d=(k=i-v|0)>>2)>>>0;);if((0|i)==(0|v)){k=0;break b}if(k>>>0>=2147483645)break t}Ge(k=mf(k<<1),255,d<<3)}s[l+8>>2]=0,s[l>>2]=0,s[l+4>>2]=0,U=(r=(e=s[l+20>>2])-u|0)>>2;b:{if((0|e)!=(0|u)){if((0|r)<0)break b;if(G=mf(r),s[l>>2]=G,s[l+8>>2]=(U<<2)+G,e=Ge(G,0,r),s[l+4>>2]=e+r,R=3&(i=U>>>0<=1?1:U),r=0,i-1>>>0>=3)for(N=-4&i;s[(i=p<<2)+e>>2]=r,V=4|i,r=s[i+u>>2]+r|0,s[V+e>>2]=r,T=8|i,r=r+s[u+V>>2]|0,s[T+e>>2]=r,i|=12,r=r+s[u+T>>2]|0,s[i+e>>2]=r,r=r+s[i+u>>2]|0,p=p+4|0,(0|N)!=(0|(Z=Z+4|0)););if(R)for(;s[(i=p<<2)+e>>2]=r,p=p+1|0,r=s[i+u>>2]+r|0,(0|R)!=(0|(h=h+1|0)););}if(!d)break a;for(V=s[y+40>>2],T=s[y+12>>2],R=0;;){r=(j=R<<2)+v|0,h=-1,-1!=(0|(e=((i=R+1|0)>>>0)%3|0?i:R-2|0))&&(h=s[(e<<2)+v>>2]),e=s[r>>2];A:{n:{if(!((R>>>0)%3|0)){if(Z=-1,-1!=(0|(r=R+2|0))&&(Z=s[(r<<2)+v>>2]),!((0|e)==(0|h)|(0|e)==(0|Z))&(0|h)!=(0|Z))break n;V=V+1|0,s[y+40>>2]=V,i=R+3|0;break A}Z=s[r-4>>2]}n:{o:if(!((0|(F=s[(r=Z<<2)+u>>2]))<=0))for(r=s[r+G>>2],p=0;;){if(-1==(0|(D=s[(N=(r<<3)+k|0)>>2])))break o;if((0|h)==(0|D)&&(0|(D=-1!=(0|(N=s[N+4>>2]))?s[(N<<2)+v>>2]:-1))!=(0|e)){for(;e=r,!((0|F)<=(0|(p=p+1|0))||(D=s[(I=((r=e+1|0)<<3)+k|0)>>2],s[(J=(e<<3)+k|0)+4>>2]=s[I+4>>2],s[J>>2]=D,-1==(0|D))););if(s[(e<<3)+k>>2]=-1,-1==(0|N))break o;s[T+j>>2]=N,s[T+(N<<2)>>2]=R;break n}if(r=r+1|0,(0|F)==(0|(p=p+1|0)))break}if(!((0|(h=s[(r=h<<2)+u>>2]))<=0))for(r=s[r+G>>2],p=0;;){if(-1==s[(e=(r<<3)+k|0)>>2]){s[e>>2]=Z,s[e+4>>2]=R;break n}if(r=r+1|0,(0|h)==(0|(p=p+1|0)))break}}}if(!((R=i)>>>0<d>>>0))break}break a}break f}ha(),n()}s[W>>2]=U,G&&mr(G),k&&mr(k),(r=s[l+16>>2])&&(s[l+20>>2]=r,mr(r))}if(Q=l+32|0,V=!!(0|W)){if(Q=h=Q-32|0,r=s[y>>2],p=s[y+4>>2],s[h+24>>2]=0,s[h+16>>2]=0,s[h+20>>2]=0,(0|r)==(0|p))i=p;else{if((0|(r=p-r|0))<0)break f;i=mf((e=1+((r>>=2)-1>>>5|0)|0)<<2),s[h+24>>2]=e,s[h+20>>2]=0,s[h+16>>2]=i,ki(h+16|0,r),p=s[y>>2],i=s[y+4>>2]}for(s[h+8>>2]=0,s[h>>2]=0;;){if(N=0,d=0,(0|i)!=(0|p)){for(;;){e=s[h+16>>2];a:if(!(s[e+(d>>>3&536870908)>>2]>>>d&1)){for(i=s[h>>2],s[h+4>>2]=i,u=s[y+12>>2],r=d;k=r,!(-1==(0|(r=((l=r+1|0)>>>0)%3|0?l:r-2|0))||-1==(0|(r=s[u+(r<<2)>>2]))||(0|d)==(0|(r=((l=r+1|0)>>>0)%3|0?l:r-2|0))|-1==(0|r)||s[e+(r>>>3&536870908)>>2]>>>r&1););v=k;t:{b:{A:{for(;;){if(r=s[h+16>>2]+(v>>>3&536870908)|0,s[r>>2]=s[r>>2]|1<<v,l=((r=v+1|0)>>>0)%3|0?r:v-2|0,p=s[y>>2],e=((T=(v>>>0)%3|0)?-1:2)+v|0,!(F=(0|(R=s[h>>2]))==(0|i)))if(W=s[(l<<2)+p>>2],G=s[y+12>>2],r=R,-1==(0|e))for(;;){if((0|W)==s[r>>2]&&(U=-1,u=-1,-1!=(0|(Z=s[r+4>>2]))))break b;if((0|i)==(0|(r=r+8|0)))break}else for(u=G+(e<<2)|0;;){if((0|W)==s[r>>2]&&(0|(Z=s[r+4>>2]))!=(0|(U=s[u>>2]))){if(u=e,i=-1,r=-1,-1==(0|Z))break t;break b}if((0|i)==(0|(r=r+8|0)))break}if(e=s[(e<<2)+p>>2],s[h+8>>2]==(0|i)){if((u=(Z=(r=i-R|0)>>3)+1|0)>>>0>=536870912)break f;if(p=r>>>2|0,p=r>>>0>=2147483640?536870911:u>>>0<p>>>0?p:u){if(p>>>0>=536870912)break A;u=mf(p<<3)}else u=0;if(s[(r=u+(Z<<3)|0)>>2]=e,s[r+4>>2]=l,e=r+8|0,!F){for(;l=s[(i=i-8|0)+4>>2],s[(r=r-8|0)>>2]=s[i>>2],s[r+4>>2]=l,(0|i)!=(0|R););i=s[h>>2]}s[h+8>>2]=u+(p<<3),s[h+4>>2]=e,s[h>>2]=r,i&&mr(i),i=e}else s[i>>2]=e,s[i+4>>2]=l,i=i+8|0,s[h+4>>2]=i;n:{if(T)r=v-1|0;else if(-1==(0|(r=v+2|0)))break n;if(-1!=(0|(r=s[s[y+12>>2]+(r<<2)>>2]))&&(0|k)!=(0|(v=r+((r>>>0)%3|0?-1:2)|0))&&-1!=(0|v))continue}break}p=s[y>>2];break a}Df(),n()}i=s[G+(Z<<2)>>2],e=u,r=Z}-1!=(0|U)&&(s[G+(U<<2)>>2]=-1),-1!=(0|i)&&(s[G+(i<<2)>>2]=-1),s[G+(e<<2)>>2]=-1,s[G+(r<<2)>>2]=-1,N=1}if(!((d=d+1|0)>>>0<(i=s[y+4>>2])-p>>2>>>0))break}if(N)continue}break}(r=s[h>>2])&&mr(r),(r=s[h+16>>2])&&mr(r),R=0,Q=p=(Q=h+32|0)-32|0,u=s[B+12>>2],s[y+36>>2]=u,Z=y+24|0,e=s[y+24>>2];a:{if((r=s[y+28>>2]-e>>2)>>>0<u>>>0)Or(Z,u-r|0,13652),s[p+24>>2]=0,s[p+16>>2]=0,s[p+20>>2]=0;else if(r>>>0>u>>>0&&(s[y+28>>2]=e+(u<<2)),s[p+24>>2]=0,s[p+16>>2]=0,s[p+20>>2]=0,!u)break a;if((0|u)<0)break f;e=mf((r=1+(u-1>>>5|0)|0)<<2),s[p+24>>2]=r,s[p+20>>2]=0,s[p+16>>2]=e,ki(p+16|0,u)}r=s[y>>2],e=s[y+4>>2],s[p+8>>2]=0,s[p>>2]=0,s[p+4>>2]=0;a:{if((0|r)==(0|e))r=e;else{if((0|(r=e-r|0))<0)break f;i=mf((e=1+((r>>=2)-1>>>5|0)|0)<<2),s[p+8>>2]=e,s[p+4>>2]=0,s[p>>2]=i,ki(p,r),e=s[y>>2],r=s[y+4>>2]}if(!(r-e>>>0<12)){t:{for(;;){if(G=m(R,3),l=s[(k=(G<<2)+e|0)>>2],i=-1,-1!=(0|(d=G+1|0))&&(i=s[(d<<2)+e>>2]),(0|i)!=(0|l)&&!((0|(d=l))==(0|(l=s[k+8>>2]))|(0|i)==(0|l))){for(h=0,d=s[p>>2];;){if(!(s[((l=h+G|0)>>>3&536870908)+d>>2]>>>l&1)){if(i=1<<(r=s[(l<<2)+e>>2]),k=s[p+16>>2],U=i&(d=s[k+((e=r>>>5|0)<<2)>>2])){if((0|(i=s[y+28>>2]))==s[y+32>>2]){if((k=(N=(e=i-(d=s[Z>>2])|0)>>2)+1|0)>>>0>=1073741824)break f;if(v=e>>>1|0,v=e>>>0>=2147483644?1073741823:k>>>0<v>>>0?v:k){if(v>>>0>=1073741824)break t;e=mf(v<<2)}else e=0;if(s[(k=e+(N<<2)|0)>>2]=-1,N=k+4|0,(0|i)!=(0|d))for(;i=i-4|0,s[(k=k-4|0)>>2]=s[i>>2],(0|i)!=(0|d););s[y+32>>2]=e+(v<<2),s[y+28>>2]=N,s[y+24>>2]=k,d&&mr(d)}else s[i>>2]=-1,s[y+28>>2]=i+4;if((0|(i=s[y+52>>2]))==s[y+56>>2]){if((k=(N=(e=i-(d=s[y+48>>2])|0)>>2)+1|0)>>>0>=1073741824)break f;if(v=e>>>1|0,v=e>>>0>=2147483644?1073741823:k>>>0<v>>>0?v:k){if(v>>>0>=1073741824)break t;e=mf(v<<2)}else e=0;if(s[(k=e+(N<<2)|0)>>2]=r,r=k+4|0,(0|i)!=(0|d))for(;i=i-4|0,s[(k=k-4|0)>>2]=s[i>>2],(0|i)!=(0|d););s[y+56>>2]=e+(v<<2),s[y+52>>2]=r,s[y+48>>2]=k,d&&mr(d)}else s[i>>2]=r,s[y+52>>2]=i+4;if((0|(i=s[p+20>>2]))==(r=s[p+24>>2])<<5){if((i+1|0)<0)break f;Wr(e=p+16|0,r=i>>>0<=1073741822?(r<<=6)>>>0>(i=32+(-32&i)|0)>>>0?r:i:2147483647),i=s[p+20>>2]}s[p+20>>2]=i+1,k=s[p+16>>2],e=s[(r=k+(i>>>3&536870908)|0)>>2],M=r,O=If(i)&e,s[M>>2]=O,i=1<<u,d=s[((e=u>>>5|0)<<2)+k>>2],u=(r=u)+1|0}s[(e<<2)+k>>2]=i|d,N=s[y+24>>2]+(r<<2)|0,v=s[y+12>>2],e=s[y>>2],d=s[p>>2],i=l;b:{A:{n:{for(;;){if(-1==(0|i))break n;if(s[(k=(i>>>3&536870908)+d|0)>>2]=s[k>>2]|1<<i,s[N>>2]=i,U&&(s[(i<<2)+e>>2]=r),k=-1,-1!=(0|(i=((W=i+1|0)>>>0)%3|0?W:i-2|0))&&(k=-1,-1!=(0|(i=s[v+(i<<2)>>2]))&&(k=((k=i+1|0)>>>0)%3|0?k:i-2|0)),(0|l)==(0|(i=k)))break}if(-1!=(0|l))break b;i=1;break A}if((l>>>0)%3|0)i=l-1|0;else if(-1==(0|(i=l+2|0)))break b}if(-1!=(0|(i=s[v+(i<<2)>>2]))){if((i>>>0)%3|0)i=i-1|0;else if(-1==(0|(i=i+2|0)))break b;for(l=s[y+12>>2],e=s[y>>2];;){if(s[(k=(i>>>3&536870908)+d|0)>>2]=s[k>>2]|1<<i,U&&(s[(i<<2)+e>>2]=r),(i>>>0)%3|0)i=i-1|0;else if(-1==(0|(i=i+2|0)))break b;if(-1==(0|(i=s[l+(i<<2)>>2])))break b;if(-1==(0|(i=i+((i>>>0)%3|0?-1:2)|0)))break}}}}if(3==(0|(h=h+1|0)))break}e=s[y>>2],r=s[y+4>>2]}if(!((R=R+1|0)>>>0<(r-e>>2>>>0)/3>>>0))break}break a}Df(),n()}}if(i=0,s[y+44>>2]=0,r=s[p+16>>2],e=s[p+20>>2])for(u=31&e,e=(e>>>3&536870908)+r|0,k=r,d=0;s[k>>2]>>>i&1||(d=d+1|0,s[y+44>>2]=d),(0|e)!=(0|(k=((l=31==(0|i))<<2)+k|0))|(0|(i=l?0:i+1|0))!=(0|u););(e=s[p>>2])&&(mr(e),r=s[p+16>>2]),r&&mr(r),Q=p+32|0}Q=B+16|0,V||(s[Y+8>>2]=0,Ii(y),y=0),Q=Y+16|0,r=y;break i}ha(),n()}(e=s[b>>2])&&(s[b+4>>2]=e,mr(e))}else r=0;Q=b+16|0;break r}ha(),n()}if(i=s[f+4>>2],e=r,s[f+4>>2]=r,i&&(Ii(i),e=s[f+4>>2]),e&&(r=s[A+100>>2],i=s[A+96>>2],c[t+12|0]=0,Te(f+56|0,(r-i|0)/12|0,t+12|0),(0|(r=s[A+100>>2]))!=(0|(i=s[A+96>>2]))))for(;;){if(!(s[s[f+56>>2]+(E>>>3&536870908)>>2]>>>E&1)){if(Nr(f,0,r=m(E,3)),i=s[f+8>>2],u=s[f+12>>2],Nr(f,1,r+1|0),l=s[f+20>>2],k=s[f+24>>2],Nr(f,2,r+2|0),R=(0|i)==(0|u)?-1:0,u=(r=k-l>>2)>>>0>(i=u-i>>2)>>>0,i=s[f+36>>2]-s[f+32>>2]>>2>>>0>(u?r:i)>>>0?2:u?1:R,s[f+68>>2]<=0||(s[t+12>>2]=s[f+76>>2],s[t+8>>2]=a,bi(t+8|0,t+12|0),(0|(r=s[44+((i<<2)+f|0)>>2]))<0?r=-1:(u=(r>>>0)/3|0,r=s[(s[s[f>>2]+96>>2]+m(u,12)|0)+(r-m(u,3)<<2)>>2]),s[t+12>>2]=r,s[t+8>>2]=a,bi(t+8|0,t+12|0),u=s[f+72>>2],s[f+72>>2]=u+2,1&u&&(s[t+12>>2]=r,s[t+8>>2]=a,bi(t+8|0,t+12|0),s[f+72>>2]=s[f+72>>2]+1)),k=0,Q=u=Q-16|0,s[f+68>>2]=s[f+68>>2]+1,r=m(i,12)+f|0,(0|(r=s[r+12>>2]-s[r+8>>2]|0))>0)for(y=(r=r>>>2|0)>>>0<=1?1:r,i=s[44+((i<<2)+f|0)>>2];;){l=((r=i)>>>0)/3|0,p=(i=-1==(0|r))?-1:l,d=s[f+56>>2]+(p>>>3&536870908)|0,s[d>>2]=s[d>>2]|1<<p,s[f+72>>2]=s[f+72>>2]+1;r:{e:{i:{f:{a:{if(!k){if((0|r)>=0)s[u+12>>2]=s[(s[s[f>>2]+96>>2]+m(l,12)|0)+((r>>>0)%3<<2)>>2],s[u+8>>2]=a,bi(u+8|0,u+12|0);else if(s[u+12>>2]=-1,s[u+8>>2]=a,bi(u+8|0,u+12|0),i)break a;if(i=-1,(0|(l=((l=r+1|0)>>>0)%3|0?l:r-2|0))>=0?(p=(l>>>0)/3|0,l=s[(s[s[f>>2]+96>>2]+m(p,12)|0)+(l-m(p,3)<<2)>>2]):l=-1,s[u+12>>2]=l,s[u+8>>2]=a,bi(u+8|0,u+12|0),(0|(l=((r>>>0)%3|0?-1:2)+r|0))<0)break f;i=(l>>>0)/3|0,i=s[(s[s[f>>2]+96>>2]+m(i,12)|0)+(l-m(i,3)<<2)>>2];break f}if(i=(0|r)<0?-1:s[(s[s[f>>2]+96>>2]+m(l,12)|0)+((r>>>0)%3<<2)>>2],s[f+76>>2]=i,s[u+12>>2]=i,s[u+8>>2]=a,bi(u+8|0,u+12|0),1&k){if(i=-1,-1==(0|r))break r;if((0|m(l,3))!=(0|r)){r=r-1|0;break e}r=r+2|0;break i}if(i=-1,-1==(0|r))break r;r=((i=r+1|0)>>>0)%3|0?i:r-2|0;break i}i=-1,s[u+12>>2]=-1,s[u+8>>2]=a,bi(u+8|0,u+12|0)}s[f+76>>2]=i,s[u+12>>2]=i,s[u+8>>2]=a,bi(u+8|0,u+12|0)}if(i=-1,-1==(0|r))break r}i=s[s[s[f+4>>2]+12>>2]+(r<<2)>>2]}if((0|y)==(0|(k=k+1|0)))break}Q=u+16|0,i=s[A+96>>2],r=s[A+100>>2]}if(!((E=E+1|0)>>>0<(r-i|0)/12>>>0))break}return Q=t+16|0,e?((r=s[o>>2])&&(s[o+4>>2]=r,mr(r)),s[o>>2]=s[a>>2],s[o+4>>2]=s[a+4>>2],s[o+8>>2]=s[a+8>>2],w=s[a+84>>2]):(r=s[a>>2])&&(s[a+4>>2]=r,mr(r)),(r=s[a+72>>2])&&mr(r),(r=s[a+48>>2])&&(s[a+52>>2]=r,mr(r)),(r=s[a+36>>2])&&(s[a+40>>2]=r,mr(r)),(r=s[a+24>>2])&&(s[a+28>>2]=r,mr(r)),r=s[a+20>>2],s[a+20>>2]=0,r&&Ii(r),Q=a+96|0,0|w},Ya:function(r,e,i,f){r|=0,i|=0,f|=0;var a=0,t=0,b=0,A=0,n=0,o=0;if(!(p[(e|=0)+80>>2]>65535||(r=s[e+100>>2],e=s[e+96>>2],b=(0|(t=m(a=(r-e|0)/12|0,6)))==(0|i),(0|r)==(0|e)|(0|i)!=(0|t)))){if(b=1,n=1&(i=a>>>0<=1?1:a),r=0,a>>>0>=2)for(o=-2&i,i=0;A=(t=m(r,6))+f|0,a=e+m(r,12)|0,u[A>>1]=s[a>>2],u[(2|t)+f>>1]=s[a+4>>2],u[A+4>>1]=s[a+8>>2],a=m(t=1|r,6)+f|0,t=e+m(t,12)|0,u[a>>1]=s[t>>2],u[a+2>>1]=s[t+4>>2],u[a+4>>1]=s[t+8>>2],r=r+2|0,(0|o)!=(0|(i=i+2|0)););n&&(i=m(r,6)+f|0,r=e+m(r,12)|0,u[i>>1]=s[r>>2],u[i+2>>1]=s[r+4>>2],u[i+4>>1]=s[r+8>>2])}return 0|b},Za:function(r,e,i,f){r|=0,i|=0,f|=0;var a,t=0,b=0,A=0,n=0,o=0,k=0;if(!((0|(a=(r=s[(e|=0)+100>>2])-(e=s[e+96>>2])|0))!=(0|i)|(0|r)==(0|e))){if(o=1&(t=(A=(0|i)/12|0)>>>0<=1?1:A),r=0,A>>>0>=2)for(k=-2&t,A=0;b=e+(t=m(r,12))|0,s[(n=t+f|0)>>2]=s[b>>2],s[(4|t)+f>>2]=s[b+4>>2],s[n+8>>2]=s[b+8>>2],t=(b=m(1|r,12))+f|0,b=e+b|0,s[t>>2]=s[b>>2],s[t+4>>2]=s[b+4>>2],s[t+8>>2]=s[b+8>>2],r=r+2|0,(0|k)!=(0|(A=A+2|0)););o&&(t=f,e=e+(f=m(r,12))|0,s[(r=t+f|0)>>2]=s[e>>2],s[r+4>>2]=s[e+4>>2],s[r+8>>2]=s[e+8>>2])}return(0|i)==(0|a)|0},_a:function(r,e,i,f){r|=0,i|=0,f|=0;var a,t=0,b=0;return Q=r=Q-16|0,a=c[(e|=0)+24|0],t=s[3411],s[r+8>>2]=s[3410],s[r+12>>2]=t,t=s[3409],s[r>>2]=s[3408],s[r+4>>2]=t,(t=Ar(e,i,a,r))&&(e=0,a&&(b=Cr(e=mf(i=(255&a)<<2),r,i)+i|0),(i=s[f>>2])&&(s[f+4>>2]=i,mr(i)),s[f+8>>2]=b,s[f+4>>2]=b,s[f>>2]=e),Q=r+16|0,0|t},$a:function(r,e,i,f){r|=0,i|=0,f|=0;var a,t=0,b=0,A=0,n=0,o=0,k=0,u=0,l=0,p=0,d=0;if(a=s[(e|=0)+80>>2],e=_[i+24|0],A=m(a,e),e){if(r=b=mf(n=e<<2),k=7&e)for(;s[r>>2]=-1073741824,r=r+4|0,(0|k)!=(0|(t=t+1|0)););if(!((e-1&1073741823)>>>0<7))for(t=b+n|0;s[r+24>>2]=-1073741824,s[r+28>>2]=-1073741824,s[r+16>>2]=-1073741824,s[r+20>>2]=-1073741824,s[r+8>>2]=-1073741824,s[r+12>>2]=-1073741824,s[r>>2]=-1073741824,s[r+4>>2]=-1073741824,(0|t)!=(0|(r=r+32|0)););}t=s[f>>2],(r=s[f+4>>2]-t>>2)>>>0<A>>>0?ai(f,A-r|0):r>>>0<=A>>>0||(s[f+4>>2]=t+(A<<2));r:{e:{i:if(a){if(e){for(p=252&e,k=3&e,d=e>>>0<4,t=0,e=0;;){if(!Ar(i,_[i+84|0]?e:s[s[i+68>>2]+(e<<2)>>2],c[i+24|0],b))break i;if(l=s[f>>2],o=0,r=0,u=0,!d)for(;n=r<<2,y[(A=(t<<2)+l|0)>>2]=y[n+b>>2],y[A+4>>2]=y[(4|n)+b>>2],y[A+8>>2]=y[(8|n)+b>>2],y[A+12>>2]=y[(12|n)+b>>2],r=r+4|0,t=t+4|0,(0|p)!=(0|(u=u+4|0)););if(k)for(;y[(t<<2)+l>>2]=y[(r<<2)+b>>2],r=r+1|0,t=t+1|0,(0|k)!=(0|(o=o+1|0)););if(o=a>>>0<=(e=e+1|0)>>>0,(0|e)==(0|a))break}break e}for(r=0;;){if(!Ar(i,_[i+84|0]?r:s[s[i+68>>2]+(r<<2)>>2],c[i+24|0],b))break i;if(o=a>>>0<=(r=r+1|0)>>>0,(0|r)==(0|a))break}}else o=1;if(!b)break r}mr(b)}return 0|o},ab:Ir,bb:function(r,e,i,f){r|=0,i|=0,f|=0;var a,t,b=0,A=0,o=0,k=0,u=0,l=0,p=0,y=0,d=0;Q=t=Q-16|0,a=s[(e|=0)+80>>2],b=_[i+24|0],r=m(a,b);r:{e:{i:{f:{if(e=s[i+28>>2],!(!_[i+84|0]|1!=(0|e)&2!=(0|e))){if(e=s[i+48>>2],i=s[s[i>>2]>>2],s[t+8>>2]=0,s[t>>2]=0,s[t+4>>2]=0,r){if((0|r)<0)break f;k=Cr(A=mf(r),e+i|0,r)+r|0}(r=s[f>>2])&&(s[f+4>>2]=r,mr(r)),s[f+8>>2]=k,s[f+4>>2]=k,s[f>>2]=A,e=1;break r}b&&Ge(A=mf(b),0,b);a:{t:if((o=(u=s[f+4>>2])-(e=s[f>>2])|0)>>>0<r>>>0){if((p=r-o|0)>>>0<=(l=s[f+8>>2])-u>>>0){y=f,d=Ge(u,0,p)+p|0,s[y+4>>2]=d;break t}if((0|r)<0)break a;if(l=(u=l-e|0)<<1,Ge((l=mf(u=u>>>0>=1073741823?2147483647:r>>>0<l>>>0?l:r))+o|0,0,p),o=me(l,e,o),s[f+8>>2]=o+u,s[f+4>>2]=r+o,s[f>>2]=o,!e)break t;mr(e)}else r>>>0>=o>>>0||(s[f+4>>2]=r+e);if(!a){e=1;break i}if(!b){for(e=0,r=0;;){if(!nr(i,_[i+84|0]?r:s[s[i+68>>2]+(r<<2)>>2],c[i+24|0],A))break i;if(e=a>>>0<=(r=r+1|0)>>>0,(0|r)==(0|a))break}break i}for(u=252&b,o=3&b,e=0,l=b>>>0<4,b=0;;){if(!nr(i,_[i+84|0]?b:s[s[i+68>>2]+(b<<2)>>2],c[i+24|0],A))break i;if(e=0,r=0,p=0,!l)for(;c[s[f>>2]+k|0]=_[r+A|0],c[1+(s[f>>2]+k|0)|0]=_[(1|r)+A|0],c[2+(s[f>>2]+k|0)|0]=_[(2|r)+A|0],c[3+(s[f>>2]+k|0)|0]=_[(3|r)+A|0],r=r+4|0,k=k+4|0,(0|u)!=(0|(p=p+4|0)););if(o)for(;c[s[f>>2]+k|0]=_[r+A|0],r=r+1|0,k=k+1|0,(0|o)!=(0|(e=e+1|0)););if(e=a>>>0<=(b=b+1|0)>>>0,(0|b)==(0|a))break}break e}ha(),n()}ha(),n()}if(!A)break r}mr(A)}return Q=t+16|0,1&e},cb:function(r,e,i,f){r|=0,i|=0,f|=0;var a,t,b=0,A=0,o=0,k=0,u=0,l=0,p=0,y=0,d=0;Q=t=Q-16|0,a=s[(e|=0)+80>>2],b=_[i+24|0],r=m(a,b);r:{e:{i:{f:{if(e=s[i+28>>2],!(!_[i+84|0]|1!=(0|e)&2!=(0|e))){if(e=s[i+48>>2],i=s[s[i>>2]>>2],s[t+8>>2]=0,s[t>>2]=0,s[t+4>>2]=0,r){if((0|r)<0)break f;k=Cr(A=mf(r),e+i|0,r)+r|0}(r=s[f>>2])&&(s[f+4>>2]=r,mr(r)),s[f+8>>2]=k,s[f+4>>2]=k,s[f>>2]=A,e=1;break r}b&&Ge(A=mf(b),0,b);a:{t:if((o=(u=s[f+4>>2])-(e=s[f>>2])|0)>>>0<r>>>0){if((p=r-o|0)>>>0<=(l=s[f+8>>2])-u>>>0){y=f,d=Ge(u,0,p)+p|0,s[y+4>>2]=d;break t}if((0|r)<0)break a;if(l=(u=l-e|0)<<1,Ge((l=mf(u=u>>>0>=1073741823?2147483647:r>>>0<l>>>0?l:r))+o|0,0,p),o=me(l,e,o),s[f+8>>2]=o+u,s[f+4>>2]=r+o,s[f>>2]=o,!e)break t;mr(e)}else r>>>0>=o>>>0||(s[f+4>>2]=r+e);if(!a){e=1;break i}if(!b){for(e=0,r=0;;){if(!or(i,_[i+84|0]?r:s[s[i+68>>2]+(r<<2)>>2],c[i+24|0],A))break i;if(e=a>>>0<=(r=r+1|0)>>>0,(0|r)==(0|a))break}break i}for(u=252&b,o=3&b,e=0,l=b>>>0<4,b=0;;){if(!or(i,_[i+84|0]?b:s[s[i+68>>2]+(b<<2)>>2],c[i+24|0],A))break i;if(e=0,r=0,p=0,!l)for(;c[s[f>>2]+k|0]=_[r+A|0],c[1+(s[f>>2]+k|0)|0]=_[(1|r)+A|0],c[2+(s[f>>2]+k|0)|0]=_[(2|r)+A|0],c[3+(s[f>>2]+k|0)|0]=_[(3|r)+A|0],r=r+4|0,k=k+4|0,(0|u)!=(0|(p=p+4|0)););if(o)for(;c[s[f>>2]+k|0]=_[r+A|0],r=r+1|0,k=k+1|0,(0|o)!=(0|(e=e+1|0)););if(e=a>>>0<=(b=b+1|0)>>>0,(0|b)==(0|a))break}break e}ha(),n()}ha(),n()}if(!A)break r}mr(A)}return Q=t+16|0,1&e},db:function(r,e,i,f){r|=0,i|=0,f|=0;var a,t,b=0,A=0,o=0,k=0,p=0,y=0,d=0,v=0,h=0,R=0;r=0,Q=t=Q-16|0,a=s[(e|=0)+80>>2],b=_[i+24|0],e=m(a,b);r:{e:{i:{f:{if(A=s[i+28>>2],!(!_[i+84|0]|3!=(0|A)&4!=(0|A))){if(b=s[i+48>>2],i=s[s[i>>2]>>2],s[t+8>>2]=0,s[t>>2]=0,s[t+4>>2]=0,e){if((0|e)<0)break f;o=Cr(r=mf(e<<=1),i+b|0,e)+e|0}(e=s[f>>2])&&(s[f+4>>2]=e,mr(e)),s[f+8>>2]=o,s[f+4>>2]=o,s[f>>2]=r,k=1;break r}if(b&&Ge(r=mf(A=b<<1),0,A),p=s[f>>2],(A=s[f+4>>2]-p>>1)>>>0<e>>>0?ni(f,e-A|0):e>>>0>=A>>>0||(s[f+4>>2]=p+(e<<1)),!a){k=1;break i}if(!b){for(e=0;;){if(!q(i,_[i+84|0]?e:s[s[i+68>>2]+(e<<2)>>2],c[i+24|0],r))break i;if(k=a>>>0<=(e=e+1|0)>>>0,(0|e)==(0|a))break}break i}for(h=252&b,d=3&b,R=b>>>0<4,b=0;;){if(!q(i,_[i+84|0]?b:s[s[i+68>>2]+(b<<2)>>2],c[i+24|0],r))break i;if(v=s[f>>2],y=0,e=0,k=0,!R)for(;p=e<<1,u[(A=(o<<1)+v|0)>>1]=l[p+r>>1],u[A+2>>1]=l[(2|p)+r>>1],u[A+4>>1]=l[(4|p)+r>>1],u[A+6>>1]=l[(6|p)+r>>1],e=e+4|0,o=o+4|0,(0|h)!=(0|(k=k+4|0)););if(d)for(;u[(o<<1)+v>>1]=l[(e<<1)+r>>1],e=e+1|0,o=o+1|0,(0|(y=y+1|0))!=(0|d););if(k=a>>>0<=(b=b+1|0)>>>0,(0|b)==(0|a))break}break e}ha(),n()}if(!r)break r}mr(r)}return Q=t+16|0,0|k},eb:function(r,e,i,f){r|=0,i|=0,f|=0;var a,t,b=0,A=0,o=0,k=0,p=0,y=0,d=0,v=0,h=0,R=0;r=0,Q=t=Q-16|0,a=s[(e|=0)+80>>2],b=_[i+24|0],e=m(a,b);r:{e:{i:{f:{if(A=s[i+28>>2],!(!_[i+84|0]|3!=(0|A)&4!=(0|A))){if(b=s[i+48>>2],i=s[s[i>>2]>>2],s[t+8>>2]=0,s[t>>2]=0,s[t+4>>2]=0,e){if((0|e)<0)break f;o=Cr(r=mf(e<<=1),i+b|0,e)+e|0}(e=s[f>>2])&&(s[f+4>>2]=e,mr(e)),s[f+8>>2]=o,s[f+4>>2]=o,s[f>>2]=r,k=1;break r}if(b&&Ge(r=mf(A=b<<1),0,A),p=s[f>>2],(A=s[f+4>>2]-p>>1)>>>0<e>>>0?ni(f,e-A|0):e>>>0>=A>>>0||(s[f+4>>2]=p+(e<<1)),!a){k=1;break i}if(!b){for(e=0;;){if(!rr(i,_[i+84|0]?e:s[s[i+68>>2]+(e<<2)>>2],c[i+24|0],r))break i;if(k=a>>>0<=(e=e+1|0)>>>0,(0|e)==(0|a))break}break i}for(h=252&b,d=3&b,R=b>>>0<4,b=0;;){if(!rr(i,_[i+84|0]?b:s[s[i+68>>2]+(b<<2)>>2],c[i+24|0],r))break i;if(v=s[f>>2],y=0,e=0,k=0,!R)for(;p=e<<1,u[(A=(o<<1)+v|0)>>1]=l[p+r>>1],u[A+2>>1]=l[(2|p)+r>>1],u[A+4>>1]=l[(4|p)+r>>1],u[A+6>>1]=l[(6|p)+r>>1],e=e+4|0,o=o+4|0,(0|h)!=(0|(k=k+4|0)););if(d)for(;u[(o<<1)+v>>1]=l[(e<<1)+r>>1],e=e+1|0,o=o+1|0,(0|(y=y+1|0))!=(0|d););if(k=a>>>0<=(b=b+1|0)>>>0,(0|b)==(0|a))break}break e}ha(),n()}if(!r)break r}mr(r)}return Q=t+16|0,0|k},fb:Ir,gb:function(r,e,i,f){r|=0,i|=0,f|=0;var a,t,b=0,A=0,o=0,k=0,u=0,l=0,p=0,y=0,d=0,v=0;r=0,Q=t=Q-16|0,a=s[(e|=0)+80>>2],b=_[i+24|0],e=m(a,b);r:{e:{i:{f:{if(A=s[i+28>>2],!(!_[i+84|0]|5!=(0|A)&6!=(0|A))){if(b=s[i+48>>2],i=s[s[i>>2]>>2],s[t+8>>2]=0,s[t>>2]=0,s[t+4>>2]=0,e){if((0|e)<0)break f;o=Cr(r=mf(e<<=2),i+b|0,e)+e|0}(e=s[f>>2])&&(s[f+4>>2]=e,mr(e)),s[f+8>>2]=o,s[f+4>>2]=o,s[f>>2]=r,k=1;break r}if(b&&Ge(r=mf(A=b<<2),0,A),u=s[f>>2],(A=s[f+4>>2]-u>>2)>>>0<e>>>0?ai(f,e-A|0):e>>>0>=A>>>0||(s[f+4>>2]=u+(e<<2)),!a){k=1;break i}if(!b){for(e=0;;){if(!ir(i,_[i+84|0]?e:s[s[i+68>>2]+(e<<2)>>2],c[i+24|0],r))break i;if(k=a>>>0<=(e=e+1|0)>>>0,(0|e)==(0|a))break}break i}for(d=252&b,p=3&b,v=b>>>0<4,b=0;;){if(!ir(i,_[i+84|0]?b:s[s[i+68>>2]+(b<<2)>>2],c[i+24|0],r))break i;if(y=s[f>>2],l=0,e=0,k=0,!v)for(;u=e<<2,s[(A=(o<<2)+y|0)>>2]=s[u+r>>2],s[A+4>>2]=s[(4|u)+r>>2],s[A+8>>2]=s[(8|u)+r>>2],s[A+12>>2]=s[(12|u)+r>>2],e=e+4|0,o=o+4|0,(0|d)!=(0|(k=k+4|0)););if(p)for(;s[(o<<2)+y>>2]=s[(e<<2)+r>>2],e=e+1|0,o=o+1|0,(0|(l=l+1|0))!=(0|p););if(k=a>>>0<=(b=b+1|0)>>>0,(0|b)==(0|a))break}break e}ha(),n()}if(!r)break r}mr(r)}return Q=t+16|0,0|k},hb:function(r,e,i,f,a,t){r|=0,i|=0,a|=0,t|=0;var b=0,A=0,n=0,o=0,k=0,u=0,l=0,p=0,y=0,d=0,v=0,h=0,R=0;n=e|=0,r=0,e=0;r:{e:switch((f|=0)-1|0){case 0:if(o=s[n+80>>2],A=_[i+24|0],(0|m(o,A))==(0|a))if((f=1!=s[i+28>>2])|!(e=_[i+84|0])){A&&Ge(r=mf(A),0,A);i:if(o)if(f)if(e=0,A)for(f=0,a=0;;){if(!nr(i,_[i+84|0]?a:s[s[i+68>>2]+(a<<2)>>2],c[i+24|0],r))break i;if(Cr(f+t|0,r,A),f=f+A|0,e=o>>>0<=(a=a+1|0)>>>0,(0|a)==(0|o))break}else for(f=0;;){if(!nr(i,_[i+84|0]?f:s[s[i+68>>2]+(f<<2)>>2],c[i+24|0],r))break i;if(e=o>>>0<=(f=f+1|0)>>>0,(0|f)==(0|o))break}else{if(A){for(f=0,a=0;n=f+t|0,k=s[s[i>>2]>>2],l=s[i+48>>2],p=e=Ki(b=s[i+40>>2],s[i+44>>2],_[i+84|0]?a:s[s[i+68>>2]+(a<<2)>>2],0),Cr(n,Cr(r,(e=e+l|0)+k|0,b),A),f=f+A|0,e=1,(0|o)!=(0|(a=a+1|0)););break i}if(e){if(e=1,A=s[i>>2],a=s[i+48>>2],t=s[i+40>>2],n=s[i+44>>2],1!=(0|o)){for(b=-2&o,i=0,f=0;k=Cr(r,(k=s[A>>2])+(l=Ki(t,n,i,0)+a|0)|0,t),Cr(k,(l=s[A>>2])+(p=Ki(t,n,1|i,0)+a|0)|0,t),i=i+2|0,(0|b)!=(0|(f=f+2|0)););b=i}if(!(1&o))break i;Cr(r,(i=s[A>>2])+(f=Ki(b,0,t,n)+a|0)|0,t);break i}if(e=1,A=s[i>>2],a=s[i+48>>2],b=s[i+68>>2],t=s[i+40>>2],n=s[i+44>>2],i=0,1!=(0|o))for(k=-2&o,f=0;l=Cr(r,(l=s[A>>2])+(u=Ki(t,n,s[(p=i<<2)+b>>2],0)+a|0)|0,t),Cr(l,(u=s[A>>2])+(p=Ki(t,n,s[b+(4|p)>>2],0)+a|0)|0,t),i=i+2|0,(0|k)!=(0|(f=f+2|0)););if(!(1&o))break i;f=s[A>>2],Cr(r,(i=Ki(t,n,s[b+(i<<2)>>2],0)+a|0)+f|0,t)}else e=1;r&&mr(r)}else Cr(t,s[s[i>>2]>>2]+s[i+48>>2]|0,a),e=1;break r;case 2:if(u=(p=_[i+24|0])<<1,o=s[n+80>>2],(0|m(u,o))==(0|a))if((n=3!=s[i+28>>2])|!(f=_[i+84|0])){p?Ge(a=mf(u),0,u):a=0;i:if(o)if(n)if(p)for(f=0;;){if(!q(i,_[i+84|0]?f:s[s[i+68>>2]+(f<<2)>>2],c[i+24|0],a))break i;if(Cr((e<<1)+t|0,a,u),e=e+p|0,r=o>>>0<=(f=f+1|0)>>>0,(0|f)==(0|o))break}else for(f=0;;){if(!q(i,_[i+84|0]?f:s[s[i+68>>2]+(f<<2)>>2],c[i+24|0],a))break i;if(r=o>>>0<=(f=f+1|0)>>>0,(0|f)==(0|o))break}else{if(y=s[i+68>>2],k=s[i>>2],e=s[i+48>>2],n=s[i+40>>2],l=s[i+44>>2],p){if(!f){for(i=0,f=0;r=1,Cr((i<<1)+t|0,Cr(a,(b=s[k>>2])+(d=Ki(n,l,s[y+(f<<2)>>2],0)+e|0)|0,n),u),i=i+p|0,(0|o)!=(0|(f=f+1|0)););break i}for(i=0;r=1,Cr((i<<1)+t|0,Cr(a,(y=s[k>>2])+(d=Ki(b,A,n,l)+e|0)|0,n),u),i=i+p|0,f=A,A=f=(b=b+1|0)?f:f+1|0,(0|o)!=(0|b)|f;);break i}if(!f){if(r=1,i=0,1!=(0|o))for(t=-2&o,f=0;A=Cr(a,(A=s[k>>2])+(p=Ki(n,l,s[(b=i<<2)+y>>2],0)+e|0)|0,n),p=s[k>>2],Cr(A,(b=Ki(n,l,s[y+(4|b)>>2],0)+e|0)+p|0,n),i=i+2|0,(0|t)!=(0|(f=f+2|0)););if(!(1&o))break i;f=s[k>>2],Cr(a,(e=Ki(n,l,s[y+(i<<2)>>2],0)+e|0)+f|0,n);break i}if(p=1&o,r=1,1!=(0|o))for(o&=-2,t=0,i=0;f=Cr(a,(f=s[k>>2])+(u=Ki(b,A,n,l)+e|0)|0,n),Cr(f,(u=s[k>>2])+(y=Ki(n,l,1|b,A)+e|0)|0,n),A=(b=b+2|0)>>>0<2?A+1|0:A,(0|(t=t+2|0))!=(0|o)|(i=f=t>>>0<2?i+1|0:i););if(!p)break i;i=s[k>>2],Cr(a,(e=Ki(b,A,n,l)+e|0)+i|0,n)}else r=1;a&&mr(a)}else Cr(t,s[s[i>>2]>>2]+s[i+48>>2]|0,a),r=1;e=r;break r;case 4:if(y=(u=_[i+24|0])<<2,o=s[n+80>>2],(0|m(y,o))==(0|a))if((n=5!=s[i+28>>2])|!(f=_[i+84|0])){u?Ge(a=mf(y),0,y):a=0,e=1;i:if(o)if(n)if(e=0,u)for(f=0;;){if(!$(i,_[i+84|0]?f:s[s[i+68>>2]+(f<<2)>>2],c[i+24|0],a))break i;if(Cr((r<<2)+t|0,a,y),r=r+u|0,e=o>>>0<=(f=f+1|0)>>>0,(0|f)==(0|o))break}else for(f=0;;){if(!$(i,_[i+84|0]?f:s[s[i+68>>2]+(f<<2)>>2],c[i+24|0],a))break i;if(e=o>>>0<=(f=f+1|0)>>>0,(0|f)==(0|o))break}else{if(r=s[i+68>>2],l=s[i>>2],n=s[i+48>>2],k=s[i+40>>2],p=s[i+44>>2],u){if(!f){for(i=0,f=0;Cr((i<<2)+t|0,Cr(a,(b=s[l>>2])+(d=Ki(k,p,s[r+(f<<2)>>2],0)+n|0)|0,k),y),i=i+u|0,(0|o)!=(0|(f=f+1|0)););break i}for(i=0;Cr((i<<2)+t|0,Cr(a,(f=s[l>>2])+(d=Ki(b,A,k,p)+n|0)|0,k),y),i=i+u|0,(0|o)!=(0|(b=b+1|0))|(A=r=b?A:A+1|0););break i}if(!f){if(i=0,1!=(0|o))for(t=-2&o,f=0;A=Cr(a,(A=s[l>>2])+(u=Ki(k,p,s[(b=i<<2)+r>>2],0)+n|0)|0,k),u=s[l>>2],Cr(A,(b=Ki(k,p,s[r+(4|b)>>2],0)+n|0)+u|0,k),i=i+2|0,(0|t)!=(0|(f=f+2|0)););if(!(1&o))break i;f=s[l>>2],Cr(a,(r=Ki(k,p,s[r+(i<<2)>>2],0)+n|0)+f|0,k);break i}if(u=1&o,1!=(0|o))for(o&=-2,t=0,i=0;r=Cr(a,(r=s[l>>2])+(f=Ki(b,A,k,p)+n|0)|0,k),Cr(r,(f=s[l>>2])+(y=Ki(k,p,1|b,A)+n|0)|0,k),f=A,A=(b=b+2|0)>>>0<2?f+1|0:f,(0|(t=t+2|0))!=(0|o)|(i=r=t>>>0<2?i+1|0:i););if(!u)break i;Cr(a,(r=s[l>>2])+(i=Ki(b,A,k,p)+n|0)|0,k)}a&&mr(a)}else Cr(t,s[s[i>>2]>>2]+s[i+48>>2]|0,a),e=1;break r;case 1:if(o=s[n+80>>2],A=_[i+24|0],(0|m(o,A))==(0|a))if((f=2!=s[i+28>>2])|!(e=_[i+84|0])){A&&Ge(r=mf(A),0,A);i:if(o)if(f)if(e=0,A)for(f=0,a=0;;){if(!or(i,_[i+84|0]?a:s[s[i+68>>2]+(a<<2)>>2],c[i+24|0],r))break i;if(Cr(f+t|0,r,A),f=f+A|0,e=o>>>0<=(a=a+1|0)>>>0,(0|a)==(0|o))break}else for(f=0;;){if(!or(i,_[i+84|0]?f:s[s[i+68>>2]+(f<<2)>>2],c[i+24|0],r))break i;if(e=o>>>0<=(f=f+1|0)>>>0,(0|f)==(0|o))break}else{if(A){for(f=0,a=0;n=f+t|0,k=s[s[i>>2]>>2],l=s[i+48>>2],p=e=Ki(b=s[i+40>>2],s[i+44>>2],_[i+84|0]?a:s[s[i+68>>2]+(a<<2)>>2],0),Cr(n,Cr(r,(e=e+l|0)+k|0,b),A),f=f+A|0,e=1,(0|o)!=(0|(a=a+1|0)););break i}if(e){if(e=1,A=s[i>>2],a=s[i+48>>2],t=s[i+40>>2],n=s[i+44>>2],1!=(0|o)){for(b=-2&o,i=0,f=0;k=Cr(r,(k=s[A>>2])+(l=Ki(t,n,i,0)+a|0)|0,t),Cr(k,(l=s[A>>2])+(p=Ki(t,n,1|i,0)+a|0)|0,t),i=i+2|0,(0|b)!=(0|(f=f+2|0)););b=i}if(!(1&o))break i;Cr(r,(i=s[A>>2])+(f=Ki(b,0,t,n)+a|0)|0,t);break i}if(e=1,A=s[i>>2],a=s[i+48>>2],b=s[i+68>>2],t=s[i+40>>2],n=s[i+44>>2],i=0,1!=(0|o))for(k=-2&o,f=0;l=Cr(r,(l=s[A>>2])+(u=Ki(t,n,s[(p=i<<2)+b>>2],0)+a|0)|0,t),Cr(l,(u=s[A>>2])+(p=Ki(t,n,s[b+(4|p)>>2],0)+a|0)|0,t),i=i+2|0,(0|k)!=(0|(f=f+2|0)););if(!(1&o))break i;f=s[A>>2],Cr(r,(i=Ki(t,n,s[b+(i<<2)>>2],0)+a|0)+f|0,t)}else e=1;r&&mr(r)}else Cr(t,s[s[i>>2]>>2]+s[i+48>>2]|0,a),e=1;break r;case 3:if(u=(p=_[i+24|0])<<1,o=s[n+80>>2],(0|m(u,o))==(0|a))if((n=4!=s[i+28>>2])|!(f=_[i+84|0])){p?Ge(a=mf(u),0,u):a=0;i:if(o)if(n)if(p)for(f=0;;){if(!rr(i,_[i+84|0]?f:s[s[i+68>>2]+(f<<2)>>2],c[i+24|0],a))break i;if(Cr((e<<1)+t|0,a,u),e=e+p|0,r=o>>>0<=(f=f+1|0)>>>0,(0|f)==(0|o))break}else for(f=0;;){if(!rr(i,_[i+84|0]?f:s[s[i+68>>2]+(f<<2)>>2],c[i+24|0],a))break i;if(r=o>>>0<=(f=f+1|0)>>>0,(0|f)==(0|o))break}else{if(y=s[i+68>>2],k=s[i>>2],e=s[i+48>>2],n=s[i+40>>2],l=s[i+44>>2],p){if(!f){for(i=0,f=0;r=1,Cr((i<<1)+t|0,Cr(a,(b=s[k>>2])+(d=Ki(n,l,s[y+(f<<2)>>2],0)+e|0)|0,n),u),i=i+p|0,(0|o)!=(0|(f=f+1|0)););break i}for(i=0;r=1,Cr((i<<1)+t|0,Cr(a,(y=s[k>>2])+(d=Ki(b,A,n,l)+e|0)|0,n),u),i=i+p|0,f=A,A=f=(b=b+1|0)?f:f+1|0,(0|o)!=(0|b)|f;);break i}if(!f){if(r=1,i=0,1!=(0|o))for(t=-2&o,f=0;A=Cr(a,(A=s[k>>2])+(p=Ki(n,l,s[(b=i<<2)+y>>2],0)+e|0)|0,n),p=s[k>>2],Cr(A,(b=Ki(n,l,s[y+(4|b)>>2],0)+e|0)+p|0,n),i=i+2|0,(0|t)!=(0|(f=f+2|0)););if(!(1&o))break i;f=s[k>>2],Cr(a,(e=Ki(n,l,s[y+(i<<2)>>2],0)+e|0)+f|0,n);break i}if(p=1&o,r=1,1!=(0|o))for(o&=-2,t=0,i=0;f=Cr(a,(f=s[k>>2])+(u=Ki(b,A,n,l)+e|0)|0,n),Cr(f,(u=s[k>>2])+(y=Ki(n,l,1|b,A)+e|0)|0,n),A=(b=b+2|0)>>>0<2?A+1|0:A,(0|(t=t+2|0))!=(0|o)|(i=f=t>>>0<2?i+1|0:i););if(!p)break i;i=s[k>>2],Cr(a,(e=Ki(b,A,n,l)+e|0)+i|0,n)}else r=1;a&&mr(a)}else Cr(t,s[s[i>>2]>>2]+s[i+48>>2]|0,a),r=1;e=r;break r;case 5:if(y=(u=_[i+24|0])<<2,o=s[n+80>>2],(0|m(y,o))==(0|a))if((n=6!=s[i+28>>2])|!(f=_[i+84|0])){u?Ge(a=mf(y),0,y):a=0,e=1;i:if(o)if(n)if(e=0,u)for(f=0;;){if(!ir(i,_[i+84|0]?f:s[s[i+68>>2]+(f<<2)>>2],c[i+24|0],a))break i;if(Cr((r<<2)+t|0,a,y),r=r+u|0,e=o>>>0<=(f=f+1|0)>>>0,(0|f)==(0|o))break}else for(f=0;;){if(!ir(i,_[i+84|0]?f:s[s[i+68>>2]+(f<<2)>>2],c[i+24|0],a))break i;if(e=o>>>0<=(f=f+1|0)>>>0,(0|f)==(0|o))break}else{if(r=s[i+68>>2],l=s[i>>2],n=s[i+48>>2],k=s[i+40>>2],p=s[i+44>>2],u){if(!f){for(i=0,f=0;Cr((i<<2)+t|0,Cr(a,(b=s[l>>2])+(d=Ki(k,p,s[r+(f<<2)>>2],0)+n|0)|0,k),y),i=i+u|0,(0|o)!=(0|(f=f+1|0)););break i}for(i=0;Cr((i<<2)+t|0,Cr(a,(f=s[l>>2])+(d=Ki(b,A,k,p)+n|0)|0,k),y),i=i+u|0,(0|o)!=(0|(b=b+1|0))|(A=r=b?A:A+1|0););break i}if(!f){if(i=0,1!=(0|o))for(t=-2&o,f=0;A=Cr(a,(A=s[l>>2])+(u=Ki(k,p,s[(b=i<<2)+r>>2],0)+n|0)|0,k),u=s[l>>2],Cr(A,(b=Ki(k,p,s[r+(4|b)>>2],0)+n|0)+u|0,k),i=i+2|0,(0|t)!=(0|(f=f+2|0)););if(!(1&o))break i;f=s[l>>2],Cr(a,(r=Ki(k,p,s[r+(i<<2)>>2],0)+n|0)+f|0,k);break i}if(u=1&o,1!=(0|o))for(o&=-2,t=0,i=0;r=Cr(a,(r=s[l>>2])+(f=Ki(b,A,k,p)+n|0)|0,k),Cr(r,(f=s[l>>2])+(y=Ki(k,p,1|b,A)+n|0)|0,k),f=A,A=(b=b+2|0)>>>0<2?f+1|0:f,(0|(t=t+2|0))!=(0|o)|(i=r=t>>>0<2?i+1|0:i););if(!u)break i;Cr(a,(r=s[l>>2])+(i=Ki(b,A,k,p)+n|0)|0,k)}a&&mr(a)}else Cr(t,s[s[i>>2]>>2]+s[i+48>>2]|0,a),e=1;break r;case 8:if(v=(d=_[i+24|0])<<2,k=s[n+80>>2],(0|m(v,k))==(0|a)){if(n=s[i+28>>2],d){if(f=r=mf(v),u=1+((l=v-4|0)>>>2|0)&7)for(a=0;s[f>>2]=-1073741824,f=f+4|0,(0|u)!=(0|(a=a+1|0)););if(!(l>>>0<28))for(a=(d<<2)+r|0;s[f+24>>2]=-1073741824,s[f+28>>2]=-1073741824,s[f+16>>2]=-1073741824,s[f+20>>2]=-1073741824,s[f+8>>2]=-1073741824,s[f+12>>2]=-1073741824,s[f>>2]=-1073741824,s[f+4>>2]=-1073741824,(0|a)!=(0|(f=f+32|0)););}i:if(k)if(9!=(0|n))if(d)for(a=0,f=0;;){if(!Ar(i,_[i+84|0]?f:s[s[i+68>>2]+(f<<2)>>2],c[i+24|0],r))break i;if(Cr((a<<2)+t|0,r,v),a=a+d|0,e=k>>>0<=(f=f+1|0)>>>0,(0|f)==(0|k))break}else for(f=0;;){if(!Ar(i,_[i+84|0]?f:s[s[i+68>>2]+(f<<2)>>2],c[i+24|0],r))break i;if(e=k>>>0<=(f=f+1|0)>>>0,(0|f)==(0|k))break}else{if(h=s[i+68>>2],u=s[i>>2],n=s[i+48>>2],R=_[i+84|0],l=s[i+44>>2],y=i=s[i+40>>2],d){for(a=0,f=0;A=(a<<2)+t|0,b=s[u>>2],Cr(A,Cr(r,(e=Ki(i,l,R?f:s[h+(f<<2)>>2],0)+n|0)+b|0,y),v),a=a+d|0,e=1,(0|k)!=(0|(f=f+1|0)););break i}if(!R){if(e=1,f=0,1!=(0|k))for(t=-2&k,a=0;A=Cr(r,(A=s[u>>2])+(o=Ki(i,l,s[(b=f<<2)+h>>2],0)+n|0)|0,y),Cr(A,(o=s[u>>2])+(b=Ki(i,l,s[h+(4|b)>>2],0)+n|0)|0,y),f=f+2|0,(0|t)!=(0|(a=a+2|0)););if(!(1&k))break i;a=s[u>>2],Cr(r,(i=Ki(i,l,s[h+(f<<2)>>2],0)+n|0)+a|0,y);break i}if(t=1&k,e=1,1!=(0|k))for(k&=-2;f=Cr(r,(f=s[u>>2])+(a=Ki(b,A,i,l)+n|0)|0,y),Cr(f,(a=s[u>>2])+(d=Ki(i,l,1|b,A)+n|0)|0,y),A=(b=b+2|0)>>>0<2?A+1|0:A,f=o,p=a=p+2|0,o=f=a>>>0<2?f+1|0:f,(0|a)!=(0|k)|f;);if(!t)break i;f=s[u>>2],Cr(r,(i=Ki(b,A,i,l)+n|0)+f|0,y)}else e=1;r&&mr(r)}r=e;break;default:break e}e=r}return 0|e},ib:function(r,e){r|=0,e|=0;var i,f,a=0,t=0,b=0,A=0,o=0,k=0,u=0,l=0,y=0,d=0,m=0,v=0,h=0,R=0,N=0,Z=0,G=0,U=0,W=0,V=0,T=0,D=0;Q=f=Q-16|0,s[f+12>>2]=e,e=mf(32),s[f>>2]=e,s[f+4>>2]=24,s[f+8>>2]=-2147483616,a=_[1206]|_[1207]<<8|_[1208]<<16|_[1209]<<24,t=_[1202]|_[1203]<<8|_[1204]<<16|_[1205]<<24,c[e+16|0]=t,c[e+17|0]=t>>>8,c[e+18|0]=t>>>16,c[e+19|0]=t>>>24,c[e+20|0]=a,c[e+21|0]=a>>>8,c[e+22|0]=a>>>16,c[e+23|0]=a>>>24,a=_[1198]|_[1199]<<8|_[1200]<<16|_[1201]<<24,t=_[1194]|_[1195]<<8|_[1196]<<16|_[1197]<<24,c[e+8|0]=t,c[e+9|0]=t>>>8,c[e+10|0]=t>>>16,c[e+11|0]=t>>>24,c[e+12|0]=a,c[e+13|0]=a>>>8,c[e+14|0]=a>>>16,c[e+15|0]=a>>>24,a=_[1190]|_[1191]<<8|_[1192]<<16|_[1193]<<24,t=_[1186]|_[1187]<<8|_[1188]<<16|_[1189]<<24,c[0|e]=t,c[e+1|0]=t>>>8,c[e+2|0]=t>>>16,c[e+3|0]=t>>>24,c[e+4|0]=a,c[e+5|0]=a>>>8,c[e+6|0]=a>>>16,c[e+7|0]=a>>>24,c[e+24|0]=0,Q=i=Q-48|0,A=s[f+12>>2],t=r;r:{if(e=s[(r=r+16|0)>>2]){for(a=r;a=(b=(0|A)>s[e+16>>2])?a:e,e=s[(b?e+4:e)>>2];);if((0|r)!=(0|a)&&(0|A)>=s[a+16>>2])break r}s[i+28>>2]=0,s[i+32>>2]=0,V=i+24|0,s[i+24>>2]=4|V,s[(r=i+16|0)>>2]=0,s[r+4>>2]=0,s[i+8>>2]=A,s[i+12>>2]=r,r=Z=i+8|0,Q=W=Q-16|0;e:{i:if(a=s[(G=t+12|0)+4>>2]){for(r=s[r>>2];;){if(t=a,(0|(e=s[a+16>>2]))>(0|r)){if(m=t,a=s[t>>2])continue;break i}if((0|r)<=(0|e)){o=t,r=0;break e}if(!(a=s[t+4>>2]))break}m=t+4|0}else t=m=G+4|0;if(o=mf(32),e=s[Z>>2],s[(r=h=o+24|0)>>2]=0,s[r+4>>2]=0,s[o+16>>2]=e,s[(R=o+20|0)>>2]=r,(0|(a=s[Z+4>>2]))!=(0|(T=Z+8|0)))for(;;){Q=v=Q-16|0,r=v+8|0,y=a+16|0;i:{f:{a:{t:{b:{A:{n:{o:if((0|(A=h))!=(0|(b=R+4|0)))if(k=(e=_[A+27|0])<<24>>24<0,U=(N=(u=(l=(0|(d=(u=_[y+11|0])<<24>>24))<0)?s[y+4>>2]:u)>>>0>(e=k?s[A+20>>2]:e)>>>0)?e:u){if(!(D=Ti(l=l?s[y>>2]:y,k=k?s[A+16>>2]:A+16|0,U))){if(e>>>0>u>>>0)break o;break n}if((0|D)>=0)break n}else if(e>>>0<=u>>>0)break A;k=s[A>>2];o:{k:if((0|(r=A))!=s[R>>2]){if(k)for(e=k;r=e,e=s[e+4>>2];);else for(e=A;r=s[e+8>>2],u=s[r>>2]==(0|e),e=r,u;);if(e=(0|(N=(u=_[y+11|0])<<24>>24))<0,d=(l=_[r+27|0])<<24>>24<0,!(U=(u=e?s[y+4>>2]:u)>>>0<(l=d?s[r+20>>2]:l)>>>0?u:l)||!(e=Ti(d?s[r+16>>2]:r+16|0,e?s[y>>2]:y,U))){if(u>>>0>l>>>0)break k;break o}if((0|e)>=0)break o}if(!k){s[v+12>>2]=A,r=A;break i}s[v+12>>2]=r,r=r+4|0;break i}if(!(e=s[b>>2])){s[v+12>>2]=b,r=b;break i}for(k=(0|N)<0?s[y>>2]:y,A=b;;){r=e;o:{k:{c:{u:{s:if(d=(y=(e=(b=(e=_[e+27|0])<<24>>24<0)?s[r+20>>2]:e)>>>0<u>>>0)?e:u){if(!(l=Ti(k,b=b?s[r+16>>2]:r+16|0,d))){if(e>>>0>u>>>0)break s;break u}if((0|l)>=0)break u}else if(e>>>0<=u>>>0)break c;if(A=r,e=s[r>>2])continue;break a}if(e=Ti(b,k,d))break k}if(y)break o;break a}if((0|e)>=0)break a}if(A=r+4|0,!(e=s[r+4>>2]))break}break a}if(e=Ti(k,l,U))break b}if(N)break t;break f}if((0|e)>=0)break f}if(k=s[A+4>>2])for(e=k;r=e,e=s[e>>2];);else for(e=A;r=s[e+8>>2],l=s[r>>2]!=(0|e),e=r,l;);t:{b:if((0|r)!=(0|b)){if(!(N=u>>>0>(l=(e=(l=_[r+27|0])<<24>>24<0)?s[r+20>>2]:l)>>>0?l:u)||!(e=Ti((0|d)<0?s[y>>2]:y,e?s[r+16>>2]:r+16|0,N))){if(u>>>0<l>>>0)break b;break t}if((0|e)>=0)break t}if(!k){s[v+12>>2]=A,r=A+4|0;break i}s[v+12>>2]=r;break i}if(!(e=s[b>>2])){s[v+12>>2]=b,r=b;break i}for(k=(0|d)<0?s[y>>2]:y,A=b;;){r=e;t:{b:{A:{n:{o:if(d=(y=(e=(b=(e=_[e+27|0])<<24>>24<0)?s[r+20>>2]:e)>>>0<u>>>0)?e:u){if(!(l=Ti(k,b=b?s[r+16>>2]:r+16|0,d))){if(e>>>0>u>>>0)break o;break n}if((0|l)>=0)break n}else if(e>>>0<=u>>>0)break A;if(A=r,e=s[r>>2])continue;break a}if(e=Ti(b,k,d))break b}if(y)break t;break a}if((0|e)>=0)break a}if(A=r+4|0,!(e=s[r+4>>2]))break}}s[v+12>>2]=r,r=A;break i}s[v+12>>2]=A,s[r>>2]=A}A=r,(r=s[r>>2])?e=0:(e=(r=mf(40))+16|0,c[a+27|0]>=0?(b=s[a+20>>2],s[e>>2]=s[a+16>>2],s[e+4>>2]=b,s[e+8>>2]=s[a+24>>2]):oi(e,s[a+16>>2],s[a+20>>2]),e=r+28|0,c[a+39|0]>=0?(b=s[a+32>>2],s[e>>2]=s[a+28>>2],s[e+4>>2]=b,s[e+8>>2]=s[a+36>>2]):oi(e,s[a+28>>2],s[a+32>>2]),s[r+8>>2]=s[v+12>>2],s[r>>2]=0,s[r+4>>2]=0,s[A>>2]=r,e=r,(b=s[s[R>>2]>>2])&&(s[R>>2]=b,e=s[A>>2]),$r(s[R+4>>2],e),s[R+8>>2]=s[R+8>>2]+1,e=1),c[W+12|0]=e,s[W+8>>2]=r,Q=v+16|0;i:{if(e=s[a+4>>2])for(;;)if(a=e,!(e=s[e>>2]))break i;for(;r=a,a=s[a+8>>2],(0|r)!=s[a>>2];);}if((0|a)==(0|T))break}s[o+8>>2]=t,s[o>>2]=0,s[o+4>>2]=0,s[m>>2]=o,a=o,(r=s[s[G>>2]>>2])&&(s[G>>2]=r,a=s[m>>2]),$r(s[G+4>>2],a),s[G+8>>2]=s[G+8>>2]+1,r=1}c[i+44|0]=r,s[i+40>>2]=o,Q=W+16|0,a=s[i+40>>2],vf(4|Z,s[i+16>>2]),vf(V,s[i+28>>2])}if(t=(A=Q-48|0)+8|0,Q=o=(Q=A)-32|0,(0|(b=(e=m=o+32|0)-(r=o+21|0)|0))<=9&&(k=61,(0|b)<(p[3660]<=1|0))||(c[0|r]=49,e=r+1|0,k=0),s[o+12>>2]=k,s[o+8>>2]=e,Q=b=(Q=k=Q-16|0)-16|0,(o=(h=s[o+8>>2])-r|0)>>>0<=2147483631){for(o>>>0<11?(c[t+11|0]=o|128&_[t+11|0],c[t+11|0]=127&_[t+11|0],e=t):(Hf(Z=b+8|0,(e=o>>>0>=11?11==(0|(e=(y=o+16&-16)-1|0))?y:e:10)+1|0),e=s[b+8>>2],s[t>>2]=e,s[t+8>>2]=-2147483648&s[t+8>>2]|2147483647&s[b+12>>2],s[t+8>>2]=-2147483648|s[t+8>>2],s[t+4>>2]=o);(0|r)!=(0|h);)c[0|e]=_[0|r],e=e+1|0,r=r+1|0;c[b+7|0]=0,c[0|e]=_[b+7|0],Q=b+16|0}else Ra(),n();Q=k+16|0,Q=m,s[A+32>>2]=f;r:{e:{i:if(t=s[(r=a+20|0)+4>>2]){for(b=(a=(e=_[f+11|0])<<24>>24<0)?s[f>>2]:f,e=a?s[f+4>>2]:e;;){f:{a:{t:{b:{A:if(k=(m=(t=(o=(t=_[(a=t)+27|0])<<24>>24<0)?s[a+20>>2]:t)>>>0<e>>>0)?t:e){if(!(h=Ti(b,o=o?s[a+16>>2]:a+16|0,k))){if(e>>>0<t>>>0)break A;break b}if((0|h)>=0)break b}else if(e>>>0>=t>>>0)break t;if(o=a,t=s[a>>2])continue;break i}if(t=Ti(o,b,k))break a}if(m)break f;break e}if((0|t)>=0)break e}if(!(t=s[a+4>>2]))break}o=a+4|0}else a=o=r+4|0;b=(t=mf(40))+16|0,e=s[A+32>>2],c[e+11|0]>=0?(m=s[e+4>>2],s[b>>2]=s[e>>2],s[b+4>>2]=m,s[b+8>>2]=s[e+8>>2]):oi(b,s[e>>2],s[e+4>>2]),s[t+8>>2]=a,s[t>>2]=0,s[t+4>>2]=0,s[t+36>>2]=0,s[t+28>>2]=0,s[t+32>>2]=0,s[o>>2]=t,a=t,(e=s[s[r>>2]>>2])&&(s[r>>2]=e,a=s[o>>2]),$r(s[r+4>>2],a),s[r+8>>2]=s[r+8>>2]+1,r=1;break r}t=a,r=0}c[A+44|0]=r,s[A+40>>2]=t,r=s[A+40>>2],c[r+39|0]<0&&mr(s[r+28>>2]),e=s[A+12>>2],s[r+28>>2]=s[A+8>>2],s[r+32>>2]=e,s[r+36>>2]=s[A+16>>2],Q=A+48|0,Q=i+48|0,c[f+11|0]<0&&mr(s[f>>2]),Q=f+16|0},jb:function(r,e){r|=0;var i,f,a=0,t=0;t=(f=Q-32|0)+8|0,Q=i=(Q=f)-80|0,r=s[(e|=0)+36>>2],s[i+72>>2]=s[e+32>>2],s[i+76>>2]=r,a=s[e+28>>2],s[(r=i- -64|0)>>2]=s[e+24>>2],s[r+4>>2]=a,r=s[e+20>>2],s[i+56>>2]=s[e+16>>2],s[i+60>>2]=r,r=s[e+12>>2],s[i+48>>2]=s[e+8>>2],s[i+52>>2]=r,r=s[e+4>>2],s[i+40>>2]=s[e>>2],s[i+44>>2]=r,cr(i+8|0,i+40|0,i+24|0);r:if(r=s[i+8>>2]){if(s[t>>2]=r,r=t+4|0,c[i+23|0]>=0){t=s[(e=i+8|4)+4>>2],s[r>>2]=s[e>>2],s[r+4>>2]=t,s[r+8>>2]=s[e+8>>2];break r}if(oi(r,s[i+12>>2],s[i+16>>2]),c[i+23|0]>=0)break r;mr(s[i+12>>2])}else if(c[i+23|0]<0&&mr(s[i+12>>2]),(r=_[i+31|0])>>>0>=2){if(e=mf(32),c[e+26|0]=0,r=_[1477]|_[1478]<<8,c[e+24|0]=r,c[e+25|0]=r>>>8,r=_[1473]|_[1474]<<8|_[1475]<<16|_[1476]<<24,a=_[1469]|_[1470]<<8|_[1471]<<16|_[1472]<<24,c[e+16|0]=a,c[e+17|0]=a>>>8,c[e+18|0]=a>>>16,c[e+19|0]=a>>>24,c[e+20|0]=r,c[e+21|0]=r>>>8,c[e+22|0]=r>>>16,c[e+23|0]=r>>>24,r=_[1465]|_[1466]<<8|_[1467]<<16|_[1468]<<24,a=_[1461]|_[1462]<<8|_[1463]<<16|_[1464]<<24,c[e+8|0]=a,c[e+9|0]=a>>>8,c[e+10|0]=a>>>16,c[e+11|0]=a>>>24,c[e+12|0]=r,c[e+13|0]=r>>>8,c[e+14|0]=r>>>16,c[e+15|0]=r>>>24,r=_[1457]|_[1458]<<8|_[1459]<<16|_[1460]<<24,a=_[1453]|_[1454]<<8|_[1455]<<16|_[1456]<<24,c[0|e]=a,c[e+1|0]=a>>>8,c[e+2|0]=a>>>16,c[e+3|0]=a>>>24,c[e+4|0]=r,c[e+5|0]=r>>>8,c[e+6|0]=r>>>16,c[e+7|0]=r>>>24,s[i+8>>2]=-1,oi(r=i+8|4,e,26),a=c[i+23|0],s[t>>2]=s[i+8>>2],t=t+4|0,(0|a)>=0){a=s[r+4>>2],s[t>>2]=s[r>>2],s[t+4>>2]=a,s[t+8>>2]=s[r+8>>2],mr(e);break r}oi(t,s[i+12>>2],s[i+16>>2]),c[i+23|0]<0&&mr(s[i+12>>2]),mr(e)}else s[t>>2]=0,s[t+4>>2]=0,s[t+16>>2]=r,s[t+8>>2]=0,s[t+12>>2]=0;return Q=i+80|0,r=s[f+24>>2],c[f+23|0]<0&&mr(s[f+12>>2]),Q=f+32|0,0|r},kb:function(r,e,i){var f,a,t=0,b=0;Q=f=Q-16|0,lr(f,r|=0,e|=0,i|=0),s[r+24>>2]=s[f>>2];r:if((0|(a=r+24|0))!=(0|f))if(e=r+28|0,i=4|f,b=(t=_[f+15|0])<<24>>24,c[r+39|0]>=0){if((0|b)>=0){r=s[i+4>>2],s[e>>2]=s[i>>2],s[e+4>>2]=r,s[e+8>>2]=s[i+8>>2];break r}Li(e,s[f+4>>2],s[f+8>>2])}else xi(e,(r=(0|b)<0)?s[f+4>>2]:i,r?s[f+8>>2]:t);return c[f+15|0]<0&&mr(s[f+4>>2]),Q=f+16|0,0|a},lb:function(r,e,i){var f,a,t=0,b=0;Q=f=Q-16|0,Rr(f,r|=0,e|=0,i|=0),s[r+24>>2]=s[f>>2];r:if((0|(a=r+24|0))!=(0|f))if(e=r+28|0,i=4|f,b=(t=_[f+15|0])<<24>>24,c[r+39|0]>=0){if((0|b)>=0){r=s[i+4>>2],s[e>>2]=s[i>>2],s[e+4>>2]=r,s[e+8>>2]=s[i+8>>2];break r}Li(e,s[f+4>>2],s[f+8>>2])}else xi(e,(r=(0|b)<0)?s[f+4>>2]:i,r?s[f+8>>2]:t);return c[f+15|0]<0&&mr(s[f+4>>2]),Q=f+16|0,0|a},mb:function(r){(r|=0)&&(c[r+39|0]<0&&mr(s[r+28>>2]),Ef(r+12|0,s[r+16>>2]),vf(r,s[r+4>>2]),mr(r))},nb:Va,ob:Da,pb:Ta,qb:Fa,rb:Va,sb:Da,tb:Ta,ub:Fa,vb:Ua,wb:Wa,xb:Va,yb:Da,zb:Ta,Ab:Da,Bb:Ta,Cb:Fa,Db:Ua,Eb:Wa,Fb:function(){return 5},Gb:function(){return 6},Hb:function(){return 7},Ib:function(){return 8},Jb:function(){return 9},Kb:function(){return 10},Lb:function(){return 11},Mb:function(){return 12},Nb:Da,Ob:Va,Pb:function(){return-2},Qb:function(){return-3},Rb:function(){return-4},Sb:function(){return-5},Tb:w,Ub:mr,Vb:function(r){return(r|=0)?0|!!(0|Re(r,15068)):0}}}(r)}(e)},instantiate:function(r,e){return{then:function(i){var f=new R.Module(r);i({instance:new R.Instance(f,e)})}}},RuntimeError:Error};y=[],"object"!=typeof R&&X("no native wasm support detected");var N=!1;function Z(r,e){r||X(e)}var G,U,W,V,T="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function D(r,e,i){for(var f=e+i,a=e;r[a]&&!(a>=f);)++a;if(a-e>16&&r.buffer&&T)return T.decode(r.subarray(e,a));for(var t="";e<a;){var b=r[e++];if(128&b){var A=63&r[e++];if(192!=(224&b)){var n=63&r[e++];if((b=224==(240&b)?(15&b)<<12|A<<6|n:(7&b)<<18|A<<12|n<<6|63&r[e++])<65536)t+=String.fromCharCode(b);else{var o=b-65536;t+=String.fromCharCode(55296|o>>10,56320|1023&o)}}else t+=String.fromCharCode((31&b)<<6|A)}else t+=String.fromCharCode(b)}return t}function F(r,e){return r?D(U,r,e):""}function B(){var r=v.buffer;a.HEAP8=G=new Int8Array(r),a.HEAP16=new Int16Array(r),a.HEAP32=W=new Int32Array(r),a.HEAPU8=U=new Uint8Array(r),a.HEAPU16=new Uint16Array(r),a.HEAPU32=V=new Uint32Array(r),a.HEAPF32=new Float32Array(r),a.HEAPF64=new Float64Array(r)}var E=a.INITIAL_MEMORY||16777216;Z(E>=65536,"INITIAL_MEMORY should be larger than STACK_SIZE, was "+E+"! (STACK_SIZE=65536)"),v=a.wasmMemory?a.wasmMemory:new R.Memory({initial:E/65536,maximum:32768}),B(),E=v.buffer.byteLength;var Y=[],Q=[],j=[],I=!1;function J(r){Q.unshift(r)}var w=0,M=null,O=null;function X(r){a.onAbort&&a.onAbort(r),m(r="Aborted("+r+")"),N=!0,1,r+=". Build with -sASSERTIONS for more info.";var e=new R.RuntimeError(r);throw f(e),e}var g,z,H="data:application/octet-stream;base64,";function C(r){return r.startsWith(H)}function P(r){return r.startsWith("file://")}function S(r){try{if(r==g&&y)return new Uint8Array(y);var e=er(r);if(e)return e;if(o)return o(r);throw"both async and sync fetching of the wasm failed"}catch(r){X(r)}}function x(r){this.name="ExitStatus",this.message="Program terminated with exit("+r+")",this.status=r}function L(r){for(;r.length>0;)r.shift()(a)}function K(r){this.excPtr=r,this.ptr=r-24,this.set_type=function(r){V[this.ptr+4>>2]=r},this.get_type=function(){return V[this.ptr+4>>2]},this.set_destructor=function(r){V[this.ptr+8>>2]=r},this.get_destructor=function(){return V[this.ptr+8>>2]},this.set_refcount=function(r){W[this.ptr>>2]=r},this.set_caught=function(r){r=r?1:0,G[this.ptr+12|0]=r},this.get_caught=function(){return 0!=G[this.ptr+12|0]},this.set_rethrown=function(r){r=r?1:0,G[this.ptr+13|0]=r},this.get_rethrown=function(){return 0!=G[this.ptr+13|0]},this.init=function(r,e){this.set_adjusted_ptr(0),this.set_type(r),this.set_destructor(e),this.set_refcount(0),this.set_caught(!1),this.set_rethrown(!1)},this.add_ref=function(){var r=W[this.ptr>>2];W[this.ptr>>2]=r+1},this.release_ref=function(){var r=W[this.ptr>>2];return W[this.ptr>>2]=r-1,1===r},this.set_adjusted_ptr=function(r){V[this.ptr+16>>2]=r},this.get_adjusted_ptr=function(){return V[this.ptr+16>>2]},this.get_exception_ptr=function(){if(wi(this.get_type()))return V[this.excPtr>>2];var r=this.get_adjusted_ptr();return 0!==r?r:this.excPtr}}C(g="draco_decoder.wasm")||(z=g,g=a.locateFile?a.locateFile(z,_):_+z);function q(r){var e=v.buffer;try{return v.grow(r-e.byteLength+65535>>>16),B(),1}catch(r){}}var $=[null,[],[]];var rr="function"==typeof atob?atob:function(r){var e,i,f,a,t,b,A="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="",o=0;r=r.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{e=A.indexOf(r.charAt(o++))<<2|(a=A.indexOf(r.charAt(o++)))>>4,i=(15&a)<<4|(t=A.indexOf(r.charAt(o++)))>>2,f=(3&t)<<6|(b=A.indexOf(r.charAt(o++))),n+=String.fromCharCode(e),64!==t&&(n+=String.fromCharCode(i)),64!==b&&(n+=String.fromCharCode(f))}while(o<r.length);return n};function er(r){if(C(r))return function(r){if("boolean"==typeof s&&s){var e=Buffer.from(r,"base64");return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}try{for(var i=rr(r),f=new Uint8Array(i.length),a=0;a<i.length;++a)f[a]=i.charCodeAt(a);return f}catch(r){throw new Error("Converting base64 string to bytes failed.")}}(r.slice(H.length))}var ir,fr={c:function(r,e,i){throw new K(r).init(e,i),r,r},b:function(){X("")},h:function(r,e,i){U.copyWithin(r,e,e+i)},f:function(r){var e,i,f=U.length,a=2147483648;if((r>>>=0)>a)return!1;for(var t=1;t<=4;t*=2){var b=f*(1+.2/t);if(b=Math.min(b,r+100663296),q(Math.min(a,(e=Math.max(r,b))+((i=65536)-e%i)%i)))return!0}return!1},g:function(r){return 52},e:function(r,e,i,f,a){return 70},d:function(r,e,i,f){for(var a,t,b,A=0,n=0;n<i;n++){var o=V[e>>2],k=V[e+4>>2];e+=8;for(var c=0;c<k;c++)a=r,t=U[o+c],b=void 0,b=$[a],0===t||10===t?((1===a?d:m)(D(b,0)),b.length=0):b.push(t);A+=k}return V[f>>2]=A,0},a:v},ar=(function(){var r={a:fr};function e(r,e){var i=r.exports;a.asm=i,a.asm.j,J(a.asm.i),function(r){if(w--,a.monitorRunDependencies&&a.monitorRunDependencies(w),0==w&&(null!==M&&(clearInterval(M),M=null),O)){var e=O;O=null,e()}}()}function i(r){e(r.instance)}function t(e){return function(){if(!y&&(c||u)){if("function"==typeof fetch&&!P(g))return fetch(g,{credentials:"same-origin"}).then((function(r){if(!r.ok)throw"failed to load wasm binary file at '"+g+"'";return r.arrayBuffer()})).catch((function(){return S(g)}));if(n)return new Promise((function(r,e){n(g,(function(e){r(new Uint8Array(e))}),e)}))}return Promise.resolve().then((function(){return S(g)}))}().then((function(e){return R.instantiate(e,r)})).then((function(r){return r})).then(e,(function(r){m("failed to asynchronously prepare wasm: "+r),X(r)}))}if(w++,a.monitorRunDependencies&&a.monitorRunDependencies(w),a.instantiateWasm)try{return a.instantiateWasm(r,e)}catch(r){m("Module.instantiateWasm callback failed with error: "+r),f(r)}(y||"function"!=typeof R.instantiateStreaming||C(g)||P(g)||s||"function"!=typeof fetch?t(i):fetch(g,{credentials:"same-origin"}).then((function(e){return R.instantiateStreaming(e,r).then(i,(function(r){return m("wasm streaming compile failed: "+r),m("falling back to ArrayBuffer instantiation"),t(i)}))}))).catch(f)}(),a._emscripten_bind_VoidPtr___destroy___0=function(){return(ar=a._emscripten_bind_VoidPtr___destroy___0=a.asm.k).apply(null,arguments)}),tr=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return(tr=a._emscripten_bind_DecoderBuffer_DecoderBuffer_0=a.asm.l).apply(null,arguments)},br=a._emscripten_bind_DecoderBuffer_Init_2=function(){return(br=a._emscripten_bind_DecoderBuffer_Init_2=a.asm.m).apply(null,arguments)},Ar=a._emscripten_bind_DecoderBuffer___destroy___0=function(){return(Ar=a._emscripten_bind_DecoderBuffer___destroy___0=a.asm.n).apply(null,arguments)},nr=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=function(){return(nr=a._emscripten_bind_AttributeTransformData_AttributeTransformData_0=a.asm.o).apply(null,arguments)},or=a._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(or=a._emscripten_bind_AttributeTransformData_transform_type_0=a.asm.p).apply(null,arguments)},kr=a._emscripten_bind_AttributeTransformData___destroy___0=function(){return(kr=a._emscripten_bind_AttributeTransformData___destroy___0=a.asm.q).apply(null,arguments)},cr=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(cr=a._emscripten_bind_GeometryAttribute_GeometryAttribute_0=a.asm.r).apply(null,arguments)},ur=a._emscripten_bind_GeometryAttribute___destroy___0=function(){return(ur=a._emscripten_bind_GeometryAttribute___destroy___0=a.asm.s).apply(null,arguments)},sr=a._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(sr=a._emscripten_bind_PointAttribute_PointAttribute_0=a.asm.t).apply(null,arguments)},_r=a._emscripten_bind_PointAttribute_size_0=function(){return(_r=a._emscripten_bind_PointAttribute_size_0=a.asm.u).apply(null,arguments)},lr=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return(lr=a._emscripten_bind_PointAttribute_GetAttributeTransformData_0=a.asm.v).apply(null,arguments)},pr=a._emscripten_bind_PointAttribute_attribute_type_0=function(){return(pr=a._emscripten_bind_PointAttribute_attribute_type_0=a.asm.w).apply(null,arguments)},yr=a._emscripten_bind_PointAttribute_data_type_0=function(){return(yr=a._emscripten_bind_PointAttribute_data_type_0=a.asm.x).apply(null,arguments)},dr=a._emscripten_bind_PointAttribute_num_components_0=function(){return(dr=a._emscripten_bind_PointAttribute_num_components_0=a.asm.y).apply(null,arguments)},mr=a._emscripten_bind_PointAttribute_normalized_0=function(){return(mr=a._emscripten_bind_PointAttribute_normalized_0=a.asm.z).apply(null,arguments)},vr=a._emscripten_bind_PointAttribute_byte_stride_0=function(){return(vr=a._emscripten_bind_PointAttribute_byte_stride_0=a.asm.A).apply(null,arguments)},hr=a._emscripten_bind_PointAttribute_byte_offset_0=function(){return(hr=a._emscripten_bind_PointAttribute_byte_offset_0=a.asm.B).apply(null,arguments)},Rr=a._emscripten_bind_PointAttribute_unique_id_0=function(){return(Rr=a._emscripten_bind_PointAttribute_unique_id_0=a.asm.C).apply(null,arguments)},Nr=a._emscripten_bind_PointAttribute___destroy___0=function(){return(Nr=a._emscripten_bind_PointAttribute___destroy___0=a.asm.D).apply(null,arguments)},Zr=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(Zr=a._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=a.asm.E).apply(null,arguments)},Gr=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return(Gr=a._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=a.asm.F).apply(null,arguments)},Ur=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=function(){return(Ur=a._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=a.asm.G).apply(null,arguments)},Wr=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(Wr=a._emscripten_bind_AttributeQuantizationTransform_min_value_1=a.asm.H).apply(null,arguments)},Vr=a._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(Vr=a._emscripten_bind_AttributeQuantizationTransform_range_0=a.asm.I).apply(null,arguments)},Tr=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=function(){return(Tr=a._emscripten_bind_AttributeQuantizationTransform___destroy___0=a.asm.J).apply(null,arguments)},Dr=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(Dr=a._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=a.asm.K).apply(null,arguments)},Fr=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=function(){return(Fr=a._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=a.asm.L).apply(null,arguments)},Br=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return(Br=a._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=a.asm.M).apply(null,arguments)},Er=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(Er=a._emscripten_bind_AttributeOctahedronTransform___destroy___0=a.asm.N).apply(null,arguments)},Yr=a._emscripten_bind_PointCloud_PointCloud_0=function(){return(Yr=a._emscripten_bind_PointCloud_PointCloud_0=a.asm.O).apply(null,arguments)},Qr=a._emscripten_bind_PointCloud_num_attributes_0=function(){return(Qr=a._emscripten_bind_PointCloud_num_attributes_0=a.asm.P).apply(null,arguments)},jr=a._emscripten_bind_PointCloud_num_points_0=function(){return(jr=a._emscripten_bind_PointCloud_num_points_0=a.asm.Q).apply(null,arguments)},Ir=a._emscripten_bind_PointCloud___destroy___0=function(){return(Ir=a._emscripten_bind_PointCloud___destroy___0=a.asm.R).apply(null,arguments)},Jr=a._emscripten_bind_Mesh_Mesh_0=function(){return(Jr=a._emscripten_bind_Mesh_Mesh_0=a.asm.S).apply(null,arguments)},wr=a._emscripten_bind_Mesh_num_faces_0=function(){return(wr=a._emscripten_bind_Mesh_num_faces_0=a.asm.T).apply(null,arguments)},Mr=a._emscripten_bind_Mesh_num_attributes_0=function(){return(Mr=a._emscripten_bind_Mesh_num_attributes_0=a.asm.U).apply(null,arguments)},Or=a._emscripten_bind_Mesh_num_points_0=function(){return(Or=a._emscripten_bind_Mesh_num_points_0=a.asm.V).apply(null,arguments)},Xr=a._emscripten_bind_Mesh___destroy___0=function(){return(Xr=a._emscripten_bind_Mesh___destroy___0=a.asm.W).apply(null,arguments)},gr=a._emscripten_bind_Metadata_Metadata_0=function(){return(gr=a._emscripten_bind_Metadata_Metadata_0=a.asm.X).apply(null,arguments)},zr=a._emscripten_bind_Metadata___destroy___0=function(){return(zr=a._emscripten_bind_Metadata___destroy___0=a.asm.Y).apply(null,arguments)},Hr=a._emscripten_bind_Status_code_0=function(){return(Hr=a._emscripten_bind_Status_code_0=a.asm.Z).apply(null,arguments)},Cr=a._emscripten_bind_Status_ok_0=function(){return(Cr=a._emscripten_bind_Status_ok_0=a.asm._).apply(null,arguments)},Pr=a._emscripten_bind_Status_error_msg_0=function(){return(Pr=a._emscripten_bind_Status_error_msg_0=a.asm.$).apply(null,arguments)},Sr=a._emscripten_bind_Status___destroy___0=function(){return(Sr=a._emscripten_bind_Status___destroy___0=a.asm.aa).apply(null,arguments)},xr=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(xr=a._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=a.asm.ba).apply(null,arguments)},Lr=a._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(Lr=a._emscripten_bind_DracoFloat32Array_GetValue_1=a.asm.ca).apply(null,arguments)},Kr=a._emscripten_bind_DracoFloat32Array_size_0=function(){return(Kr=a._emscripten_bind_DracoFloat32Array_size_0=a.asm.da).apply(null,arguments)},qr=a._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(qr=a._emscripten_bind_DracoFloat32Array___destroy___0=a.asm.ea).apply(null,arguments)},$r=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return($r=a._emscripten_bind_DracoInt8Array_DracoInt8Array_0=a.asm.fa).apply(null,arguments)},re=a._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(re=a._emscripten_bind_DracoInt8Array_GetValue_1=a.asm.ga).apply(null,arguments)},ee=a._emscripten_bind_DracoInt8Array_size_0=function(){return(ee=a._emscripten_bind_DracoInt8Array_size_0=a.asm.ha).apply(null,arguments)},ie=a._emscripten_bind_DracoInt8Array___destroy___0=function(){return(ie=a._emscripten_bind_DracoInt8Array___destroy___0=a.asm.ia).apply(null,arguments)},fe=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(fe=a._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=a.asm.ja).apply(null,arguments)},ae=a._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(ae=a._emscripten_bind_DracoUInt8Array_GetValue_1=a.asm.ka).apply(null,arguments)},te=a._emscripten_bind_DracoUInt8Array_size_0=function(){return(te=a._emscripten_bind_DracoUInt8Array_size_0=a.asm.la).apply(null,arguments)},be=a._emscripten_bind_DracoUInt8Array___destroy___0=function(){return(be=a._emscripten_bind_DracoUInt8Array___destroy___0=a.asm.ma).apply(null,arguments)},Ae=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return(Ae=a._emscripten_bind_DracoInt16Array_DracoInt16Array_0=a.asm.na).apply(null,arguments)},ne=a._emscripten_bind_DracoInt16Array_GetValue_1=function(){return(ne=a._emscripten_bind_DracoInt16Array_GetValue_1=a.asm.oa).apply(null,arguments)},oe=a._emscripten_bind_DracoInt16Array_size_0=function(){return(oe=a._emscripten_bind_DracoInt16Array_size_0=a.asm.pa).apply(null,arguments)},ke=a._emscripten_bind_DracoInt16Array___destroy___0=function(){return(ke=a._emscripten_bind_DracoInt16Array___destroy___0=a.asm.qa).apply(null,arguments)},ce=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(ce=a._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=a.asm.ra).apply(null,arguments)},ue=a._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return(ue=a._emscripten_bind_DracoUInt16Array_GetValue_1=a.asm.sa).apply(null,arguments)},se=a._emscripten_bind_DracoUInt16Array_size_0=function(){return(se=a._emscripten_bind_DracoUInt16Array_size_0=a.asm.ta).apply(null,arguments)},_e=a._emscripten_bind_DracoUInt16Array___destroy___0=function(){return(_e=a._emscripten_bind_DracoUInt16Array___destroy___0=a.asm.ua).apply(null,arguments)},le=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return(le=a._emscripten_bind_DracoInt32Array_DracoInt32Array_0=a.asm.va).apply(null,arguments)},pe=a._emscripten_bind_DracoInt32Array_GetValue_1=function(){return(pe=a._emscripten_bind_DracoInt32Array_GetValue_1=a.asm.wa).apply(null,arguments)},ye=a._emscripten_bind_DracoInt32Array_size_0=function(){return(ye=a._emscripten_bind_DracoInt32Array_size_0=a.asm.xa).apply(null,arguments)},de=a._emscripten_bind_DracoInt32Array___destroy___0=function(){return(de=a._emscripten_bind_DracoInt32Array___destroy___0=a.asm.ya).apply(null,arguments)},me=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return(me=a._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=a.asm.za).apply(null,arguments)},ve=a._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(ve=a._emscripten_bind_DracoUInt32Array_GetValue_1=a.asm.Aa).apply(null,arguments)},he=a._emscripten_bind_DracoUInt32Array_size_0=function(){return(he=a._emscripten_bind_DracoUInt32Array_size_0=a.asm.Ba).apply(null,arguments)},Re=a._emscripten_bind_DracoUInt32Array___destroy___0=function(){return(Re=a._emscripten_bind_DracoUInt32Array___destroy___0=a.asm.Ca).apply(null,arguments)},Ne=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=function(){return(Ne=a._emscripten_bind_MetadataQuerier_MetadataQuerier_0=a.asm.Da).apply(null,arguments)},Ze=a._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return(Ze=a._emscripten_bind_MetadataQuerier_HasEntry_2=a.asm.Ea).apply(null,arguments)},Ge=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(Ge=a._emscripten_bind_MetadataQuerier_GetIntEntry_2=a.asm.Fa).apply(null,arguments)},Ue=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=function(){return(Ue=a._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=a.asm.Ga).apply(null,arguments)},We=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(We=a._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=a.asm.Ha).apply(null,arguments)},Ve=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(Ve=a._emscripten_bind_MetadataQuerier_GetStringEntry_2=a.asm.Ia).apply(null,arguments)},Te=a._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return(Te=a._emscripten_bind_MetadataQuerier_NumEntries_1=a.asm.Ja).apply(null,arguments)},De=a._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(De=a._emscripten_bind_MetadataQuerier_GetEntryName_2=a.asm.Ka).apply(null,arguments)},Fe=a._emscripten_bind_MetadataQuerier___destroy___0=function(){return(Fe=a._emscripten_bind_MetadataQuerier___destroy___0=a.asm.La).apply(null,arguments)},Be=a._emscripten_bind_Decoder_Decoder_0=function(){return(Be=a._emscripten_bind_Decoder_Decoder_0=a.asm.Ma).apply(null,arguments)},Ee=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(Ee=a._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=a.asm.Na).apply(null,arguments)},Ye=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(Ye=a._emscripten_bind_Decoder_DecodeArrayToMesh_3=a.asm.Oa).apply(null,arguments)},Qe=a._emscripten_bind_Decoder_GetAttributeId_2=function(){return(Qe=a._emscripten_bind_Decoder_GetAttributeId_2=a.asm.Pa).apply(null,arguments)},je=a._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return(je=a._emscripten_bind_Decoder_GetAttributeIdByName_2=a.asm.Qa).apply(null,arguments)},Ie=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(Ie=a._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=a.asm.Ra).apply(null,arguments)},Je=a._emscripten_bind_Decoder_GetAttribute_2=function(){return(Je=a._emscripten_bind_Decoder_GetAttribute_2=a.asm.Sa).apply(null,arguments)},we=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(we=a._emscripten_bind_Decoder_GetAttributeByUniqueId_2=a.asm.Ta).apply(null,arguments)},Me=a._emscripten_bind_Decoder_GetMetadata_1=function(){return(Me=a._emscripten_bind_Decoder_GetMetadata_1=a.asm.Ua).apply(null,arguments)},Oe=a._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return(Oe=a._emscripten_bind_Decoder_GetAttributeMetadata_2=a.asm.Va).apply(null,arguments)},Xe=a._emscripten_bind_Decoder_GetFaceFromMesh_3=function(){return(Xe=a._emscripten_bind_Decoder_GetFaceFromMesh_3=a.asm.Wa).apply(null,arguments)},ge=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=function(){return(ge=a._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=a.asm.Xa).apply(null,arguments)},ze=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(ze=a._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=a.asm.Ya).apply(null,arguments)},He=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(He=a._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=a.asm.Za).apply(null,arguments)},Ce=a._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(Ce=a._emscripten_bind_Decoder_GetAttributeFloat_3=a.asm._a).apply(null,arguments)},Pe=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Pe=a._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=a.asm.$a).apply(null,arguments)},Se=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Se=a._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=a.asm.ab).apply(null,arguments)},xe=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(xe=a._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=a.asm.bb).apply(null,arguments)},Le=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Le=a._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=a.asm.cb).apply(null,arguments)},Ke=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Ke=a._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=a.asm.db).apply(null,arguments)},qe=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=function(){return(qe=a._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=a.asm.eb).apply(null,arguments)},$e=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return($e=a._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=a.asm.fb).apply(null,arguments)},ri=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(ri=a._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=a.asm.gb).apply(null,arguments)},ei=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=function(){return(ei=a._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=a.asm.hb).apply(null,arguments)},ii=a._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(ii=a._emscripten_bind_Decoder_SkipAttributeTransform_1=a.asm.ib).apply(null,arguments)},fi=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(fi=a._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=a.asm.jb).apply(null,arguments)},ai=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=function(){return(ai=a._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=a.asm.kb).apply(null,arguments)},ti=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=function(){return(ti=a._emscripten_bind_Decoder_DecodeBufferToMesh_2=a.asm.lb).apply(null,arguments)},bi=a._emscripten_bind_Decoder___destroy___0=function(){return(bi=a._emscripten_bind_Decoder___destroy___0=a.asm.mb).apply(null,arguments)},Ai=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return(Ai=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=a.asm.nb).apply(null,arguments)},ni=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return(ni=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=a.asm.ob).apply(null,arguments)},oi=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(oi=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=a.asm.pb).apply(null,arguments)},ki=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=function(){return(ki=a._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=a.asm.qb).apply(null,arguments)},ci=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(ci=a._emscripten_enum_draco_GeometryAttribute_Type_INVALID=a.asm.rb).apply(null,arguments)},ui=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(ui=a._emscripten_enum_draco_GeometryAttribute_Type_POSITION=a.asm.sb).apply(null,arguments)},si=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(si=a._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=a.asm.tb).apply(null,arguments)},_i=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(_i=a._emscripten_enum_draco_GeometryAttribute_Type_COLOR=a.asm.ub).apply(null,arguments)},li=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(li=a._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=a.asm.vb).apply(null,arguments)},pi=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(pi=a._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=a.asm.wb).apply(null,arguments)},yi=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(yi=a._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=a.asm.xb).apply(null,arguments)},di=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(di=a._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=a.asm.yb).apply(null,arguments)},mi=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return(mi=a._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=a.asm.zb).apply(null,arguments)},vi=a._emscripten_enum_draco_DataType_DT_INVALID=function(){return(vi=a._emscripten_enum_draco_DataType_DT_INVALID=a.asm.Ab).apply(null,arguments)},hi=a._emscripten_enum_draco_DataType_DT_INT8=function(){return(hi=a._emscripten_enum_draco_DataType_DT_INT8=a.asm.Bb).apply(null,arguments)},Ri=a._emscripten_enum_draco_DataType_DT_UINT8=function(){return(Ri=a._emscripten_enum_draco_DataType_DT_UINT8=a.asm.Cb).apply(null,arguments)},Ni=a._emscripten_enum_draco_DataType_DT_INT16=function(){return(Ni=a._emscripten_enum_draco_DataType_DT_INT16=a.asm.Db).apply(null,arguments)},Zi=a._emscripten_enum_draco_DataType_DT_UINT16=function(){return(Zi=a._emscripten_enum_draco_DataType_DT_UINT16=a.asm.Eb).apply(null,arguments)},Gi=a._emscripten_enum_draco_DataType_DT_INT32=function(){return(Gi=a._emscripten_enum_draco_DataType_DT_INT32=a.asm.Fb).apply(null,arguments)},Ui=a._emscripten_enum_draco_DataType_DT_UINT32=function(){return(Ui=a._emscripten_enum_draco_DataType_DT_UINT32=a.asm.Gb).apply(null,arguments)},Wi=a._emscripten_enum_draco_DataType_DT_INT64=function(){return(Wi=a._emscripten_enum_draco_DataType_DT_INT64=a.asm.Hb).apply(null,arguments)},Vi=a._emscripten_enum_draco_DataType_DT_UINT64=function(){return(Vi=a._emscripten_enum_draco_DataType_DT_UINT64=a.asm.Ib).apply(null,arguments)},Ti=a._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return(Ti=a._emscripten_enum_draco_DataType_DT_FLOAT32=a.asm.Jb).apply(null,arguments)},Di=a._emscripten_enum_draco_DataType_DT_FLOAT64=function(){return(Di=a._emscripten_enum_draco_DataType_DT_FLOAT64=a.asm.Kb).apply(null,arguments)},Fi=a._emscripten_enum_draco_DataType_DT_BOOL=function(){return(Fi=a._emscripten_enum_draco_DataType_DT_BOOL=a.asm.Lb).apply(null,arguments)},Bi=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(Bi=a._emscripten_enum_draco_DataType_DT_TYPES_COUNT=a.asm.Mb).apply(null,arguments)},Ei=a._emscripten_enum_draco_StatusCode_OK=function(){return(Ei=a._emscripten_enum_draco_StatusCode_OK=a.asm.Nb).apply(null,arguments)},Yi=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(Yi=a._emscripten_enum_draco_StatusCode_DRACO_ERROR=a.asm.Ob).apply(null,arguments)},Qi=a._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(Qi=a._emscripten_enum_draco_StatusCode_IO_ERROR=a.asm.Pb).apply(null,arguments)},ji=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return(ji=a._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=a.asm.Qb).apply(null,arguments)},Ii=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(Ii=a._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=a.asm.Rb).apply(null,arguments)},Ji=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(Ji=a._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=a.asm.Sb).apply(null,arguments)},wi=(a._malloc=function(){return(a._malloc=a.asm.Tb).apply(null,arguments)},a._free=function(){return(a._free=a.asm.Ub).apply(null,arguments)},function(){return(wi=a.asm.Vb).apply(null,arguments)});a.___start_em_js=15856,a.___stop_em_js=15954;function Mi(){function r(){ir||(ir=!0,a.calledRun=!0,N||(I=!0,L(Q),i(a),a.onRuntimeInitialized&&a.onRuntimeInitialized(),function(){if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)r=a.postRun.shift(),j.unshift(r);var r;L(j)}()))}w>0||(!function(){if(a.preRun)for("function"==typeof a.preRun&&(a.preRun=[a.preRun]);a.preRun.length;)r=a.preRun.shift(),Y.unshift(r);var r;L(Y)}(),w>0||(a.setStatus?(a.setStatus("Running..."),setTimeout((function(){setTimeout((function(){a.setStatus("")}),1),r()}),1)):r()))}if(O=function r(){ir||Mi(),ir||(O=r)},a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);a.preInit.length>0;)a.preInit.pop()();function Oi(){}function Xi(r){return(r||Oi).__cache__}function gi(r,e){var i=Xi(e),f=i[r];return f||((f=Object.create((e||Oi).prototype)).ptr=r,i[r]=f)}Mi(),Oi.prototype=Object.create(Oi.prototype),Oi.prototype.constructor=Oi,Oi.prototype.__class__=Oi,Oi.__cache__={},a.WrapperObject=Oi,a.getCache=Xi,a.wrapPointer=gi,a.castObject=function(r,e){return gi(r.ptr,e)},a.NULL=gi(0),a.destroy=function(r){if(!r.__destroy__)throw"Error: Cannot destroy object. (Did you create it yourself?)";r.__destroy__(),delete Xi(r.__class__)[r.ptr]},a.compare=function(r,e){return r.ptr===e.ptr},a.getPointer=function(r){return r.ptr},a.getClass=function(r){return r.__class__};var zi={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:function(){if(zi.needed){for(var r=0;r<zi.temps.length;r++)a._free(zi.temps[r]);zi.temps.length=0,a._free(zi.buffer),zi.buffer=0,zi.size+=zi.needed,zi.needed=0}zi.buffer||(zi.size+=128,zi.buffer=a._malloc(zi.size),Z(zi.buffer)),zi.pos=0},alloc:function(r,e){Z(zi.buffer);var i,f=e.BYTES_PER_ELEMENT,t=r.length*f;return t=t+7&-8,zi.pos+t>=zi.size?(Z(t>0),zi.needed+=t,i=a._malloc(t),zi.temps.push(i)):(i=zi.buffer+zi.pos,zi.pos+=t),i},copy:function(r,e,i){switch(i>>>=0,e.BYTES_PER_ELEMENT){case 2:i>>>=1;break;case 4:i>>>=2;break;case 8:i>>>=3}for(var f=0;f<r.length;f++)e[i+f]=r[f]}};function Hi(r){if("string"==typeof r){var e=(f=r,b=t>0?t:function(r){for(var e=0,i=0;i<r.length;++i){var f=r.charCodeAt(i);f<=127?e++:f<=2047?e+=2:f>=55296&&f<=57343?(e+=4,++i):e+=3}return e}(f)+1,A=new Array(b),n=function(r,e,i,f){if(!(f>0))return 0;for(var a=i,t=i+f-1,b=0;b<r.length;++b){var A=r.charCodeAt(b);if(A>=55296&&A<=57343&&(A=65536+((1023&A)<<10)|1023&r.charCodeAt(++b)),A<=127){if(i>=t)break;e[i++]=A}else if(A<=2047){if(i+1>=t)break;e[i++]=192|A>>6,e[i++]=128|63&A}else if(A<=65535){if(i+2>=t)break;e[i++]=224|A>>12,e[i++]=128|A>>6&63,e[i++]=128|63&A}else{if(i+3>=t)break;e[i++]=240|A>>18,e[i++]=128|A>>12&63,e[i++]=128|A>>6&63,e[i++]=128|63&A}}return e[i]=0,i-a}(f,A,0,A.length),a&&(A.length=n),A),i=zi.alloc(e,G);return zi.copy(e,G,i),i}var f,a,t,b,A,n;return r}function Ci(r){if("object"==typeof r){var e=zi.alloc(r,G);return zi.copy(r,G,e),e}return r}function Pi(){throw"cannot construct a VoidPtr, no constructor in IDL"}function Si(){this.ptr=tr(),Xi(Si)[this.ptr]=this}function xi(){this.ptr=nr(),Xi(xi)[this.ptr]=this}function Li(){this.ptr=cr(),Xi(Li)[this.ptr]=this}function Ki(){this.ptr=sr(),Xi(Ki)[this.ptr]=this}function qi(){this.ptr=Zr(),Xi(qi)[this.ptr]=this}function $i(){this.ptr=Dr(),Xi($i)[this.ptr]=this}function rf(){this.ptr=Yr(),Xi(rf)[this.ptr]=this}function ef(){this.ptr=Jr(),Xi(ef)[this.ptr]=this}function ff(){this.ptr=gr(),Xi(ff)[this.ptr]=this}function af(){throw"cannot construct a Status, no constructor in IDL"}function tf(){this.ptr=xr(),Xi(tf)[this.ptr]=this}function bf(){this.ptr=$r(),Xi(bf)[this.ptr]=this}function Af(){this.ptr=fe(),Xi(Af)[this.ptr]=this}function nf(){this.ptr=Ae(),Xi(nf)[this.ptr]=this}function of(){this.ptr=ce(),Xi(of)[this.ptr]=this}function kf(){this.ptr=le(),Xi(kf)[this.ptr]=this}function cf(){this.ptr=me(),Xi(cf)[this.ptr]=this}function uf(){this.ptr=Ne(),Xi(uf)[this.ptr]=this}function sf(){this.ptr=Be(),Xi(sf)[this.ptr]=this}return Pi.prototype=Object.create(Oi.prototype),Pi.prototype.constructor=Pi,Pi.prototype.__class__=Pi,Pi.__cache__={},a.VoidPtr=Pi,Pi.prototype.__destroy__=Pi.prototype.__destroy__=function(){var r=this.ptr;ar(r)},Si.prototype=Object.create(Oi.prototype),Si.prototype.constructor=Si,Si.prototype.__class__=Si,Si.__cache__={},a.DecoderBuffer=Si,Si.prototype.Init=Si.prototype.Init=function(r,e){var i=this.ptr;zi.prepare(),"object"==typeof r&&(r=Ci(r)),e&&"object"==typeof e&&(e=e.ptr),br(i,r,e)},Si.prototype.__destroy__=Si.prototype.__destroy__=function(){var r=this.ptr;Ar(r)},xi.prototype=Object.create(Oi.prototype),xi.prototype.constructor=xi,xi.prototype.__class__=xi,xi.__cache__={},a.AttributeTransformData=xi,xi.prototype.transform_type=xi.prototype.transform_type=function(){var r=this.ptr;return or(r)},xi.prototype.__destroy__=xi.prototype.__destroy__=function(){var r=this.ptr;kr(r)},Li.prototype=Object.create(Oi.prototype),Li.prototype.constructor=Li,Li.prototype.__class__=Li,Li.__cache__={},a.GeometryAttribute=Li,Li.prototype.__destroy__=Li.prototype.__destroy__=function(){var r=this.ptr;ur(r)},Ki.prototype=Object.create(Oi.prototype),Ki.prototype.constructor=Ki,Ki.prototype.__class__=Ki,Ki.__cache__={},a.PointAttribute=Ki,Ki.prototype.size=Ki.prototype.size=function(){var r=this.ptr;return _r(r)},Ki.prototype.GetAttributeTransformData=Ki.prototype.GetAttributeTransformData=function(){var r=this.ptr;return gi(lr(r),xi)},Ki.prototype.attribute_type=Ki.prototype.attribute_type=function(){var r=this.ptr;return pr(r)},Ki.prototype.data_type=Ki.prototype.data_type=function(){var r=this.ptr;return yr(r)},Ki.prototype.num_components=Ki.prototype.num_components=function(){var r=this.ptr;return dr(r)},Ki.prototype.normalized=Ki.prototype.normalized=function(){var r=this.ptr;return!!mr(r)},Ki.prototype.byte_stride=Ki.prototype.byte_stride=function(){var r=this.ptr;return vr(r)},Ki.prototype.byte_offset=Ki.prototype.byte_offset=function(){var r=this.ptr;return hr(r)},Ki.prototype.unique_id=Ki.prototype.unique_id=function(){var r=this.ptr;return Rr(r)},Ki.prototype.__destroy__=Ki.prototype.__destroy__=function(){var r=this.ptr;Nr(r)},qi.prototype=Object.create(Oi.prototype),qi.prototype.constructor=qi,qi.prototype.__class__=qi,qi.__cache__={},a.AttributeQuantizationTransform=qi,qi.prototype.InitFromAttribute=qi.prototype.InitFromAttribute=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),!!Gr(e,r)},qi.prototype.quantization_bits=qi.prototype.quantization_bits=function(){var r=this.ptr;return Ur(r)},qi.prototype.min_value=qi.prototype.min_value=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),Wr(e,r)},qi.prototype.range=qi.prototype.range=function(){var r=this.ptr;return Vr(r)},qi.prototype.__destroy__=qi.prototype.__destroy__=function(){var r=this.ptr;Tr(r)},$i.prototype=Object.create(Oi.prototype),$i.prototype.constructor=$i,$i.prototype.__class__=$i,$i.__cache__={},a.AttributeOctahedronTransform=$i,$i.prototype.InitFromAttribute=$i.prototype.InitFromAttribute=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),!!Fr(e,r)},$i.prototype.quantization_bits=$i.prototype.quantization_bits=function(){var r=this.ptr;return Br(r)},$i.prototype.__destroy__=$i.prototype.__destroy__=function(){var r=this.ptr;Er(r)},rf.prototype=Object.create(Oi.prototype),rf.prototype.constructor=rf,rf.prototype.__class__=rf,rf.__cache__={},a.PointCloud=rf,rf.prototype.num_attributes=rf.prototype.num_attributes=function(){var r=this.ptr;return Qr(r)},rf.prototype.num_points=rf.prototype.num_points=function(){var r=this.ptr;return jr(r)},rf.prototype.__destroy__=rf.prototype.__destroy__=function(){var r=this.ptr;Ir(r)},ef.prototype=Object.create(Oi.prototype),ef.prototype.constructor=ef,ef.prototype.__class__=ef,ef.__cache__={},a.Mesh=ef,ef.prototype.num_faces=ef.prototype.num_faces=function(){var r=this.ptr;return wr(r)},ef.prototype.num_attributes=ef.prototype.num_attributes=function(){var r=this.ptr;return Mr(r)},ef.prototype.num_points=ef.prototype.num_points=function(){var r=this.ptr;return Or(r)},ef.prototype.__destroy__=ef.prototype.__destroy__=function(){var r=this.ptr;Xr(r)},ff.prototype=Object.create(Oi.prototype),ff.prototype.constructor=ff,ff.prototype.__class__=ff,ff.__cache__={},a.Metadata=ff,ff.prototype.__destroy__=ff.prototype.__destroy__=function(){var r=this.ptr;zr(r)},af.prototype=Object.create(Oi.prototype),af.prototype.constructor=af,af.prototype.__class__=af,af.__cache__={},a.Status=af,af.prototype.code=af.prototype.code=function(){var r=this.ptr;return Hr(r)},af.prototype.ok=af.prototype.ok=function(){var r=this.ptr;return!!Cr(r)},af.prototype.error_msg=af.prototype.error_msg=function(){var r=this.ptr;return F(Pr(r))},af.prototype.__destroy__=af.prototype.__destroy__=function(){var r=this.ptr;Sr(r)},tf.prototype=Object.create(Oi.prototype),tf.prototype.constructor=tf,tf.prototype.__class__=tf,tf.__cache__={},a.DracoFloat32Array=tf,tf.prototype.GetValue=tf.prototype.GetValue=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),Lr(e,r)},tf.prototype.size=tf.prototype.size=function(){var r=this.ptr;return Kr(r)},tf.prototype.__destroy__=tf.prototype.__destroy__=function(){var r=this.ptr;qr(r)},bf.prototype=Object.create(Oi.prototype),bf.prototype.constructor=bf,bf.prototype.__class__=bf,bf.__cache__={},a.DracoInt8Array=bf,bf.prototype.GetValue=bf.prototype.GetValue=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),re(e,r)},bf.prototype.size=bf.prototype.size=function(){var r=this.ptr;return ee(r)},bf.prototype.__destroy__=bf.prototype.__destroy__=function(){var r=this.ptr;ie(r)},Af.prototype=Object.create(Oi.prototype),Af.prototype.constructor=Af,Af.prototype.__class__=Af,Af.__cache__={},a.DracoUInt8Array=Af,Af.prototype.GetValue=Af.prototype.GetValue=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),ae(e,r)},Af.prototype.size=Af.prototype.size=function(){var r=this.ptr;return te(r)},Af.prototype.__destroy__=Af.prototype.__destroy__=function(){var r=this.ptr;be(r)},nf.prototype=Object.create(Oi.prototype),nf.prototype.constructor=nf,nf.prototype.__class__=nf,nf.__cache__={},a.DracoInt16Array=nf,nf.prototype.GetValue=nf.prototype.GetValue=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),ne(e,r)},nf.prototype.size=nf.prototype.size=function(){var r=this.ptr;return oe(r)},nf.prototype.__destroy__=nf.prototype.__destroy__=function(){var r=this.ptr;ke(r)},of.prototype=Object.create(Oi.prototype),of.prototype.constructor=of,of.prototype.__class__=of,of.__cache__={},a.DracoUInt16Array=of,of.prototype.GetValue=of.prototype.GetValue=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),ue(e,r)},of.prototype.size=of.prototype.size=function(){var r=this.ptr;return se(r)},of.prototype.__destroy__=of.prototype.__destroy__=function(){var r=this.ptr;_e(r)},kf.prototype=Object.create(Oi.prototype),kf.prototype.constructor=kf,kf.prototype.__class__=kf,kf.__cache__={},a.DracoInt32Array=kf,kf.prototype.GetValue=kf.prototype.GetValue=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),pe(e,r)},kf.prototype.size=kf.prototype.size=function(){var r=this.ptr;return ye(r)},kf.prototype.__destroy__=kf.prototype.__destroy__=function(){var r=this.ptr;de(r)},cf.prototype=Object.create(Oi.prototype),cf.prototype.constructor=cf,cf.prototype.__class__=cf,cf.__cache__={},a.DracoUInt32Array=cf,cf.prototype.GetValue=cf.prototype.GetValue=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),ve(e,r)},cf.prototype.size=cf.prototype.size=function(){var r=this.ptr;return he(r)},cf.prototype.__destroy__=cf.prototype.__destroy__=function(){var r=this.ptr;Re(r)},uf.prototype=Object.create(Oi.prototype),uf.prototype.constructor=uf,uf.prototype.__class__=uf,uf.__cache__={},a.MetadataQuerier=uf,uf.prototype.HasEntry=uf.prototype.HasEntry=function(r,e){var i=this.ptr;return zi.prepare(),r&&"object"==typeof r&&(r=r.ptr),e=e&&"object"==typeof e?e.ptr:Hi(e),!!Ze(i,r,e)},uf.prototype.GetIntEntry=uf.prototype.GetIntEntry=function(r,e){var i=this.ptr;return zi.prepare(),r&&"object"==typeof r&&(r=r.ptr),e=e&&"object"==typeof e?e.ptr:Hi(e),Ge(i,r,e)},uf.prototype.GetIntEntryArray=uf.prototype.GetIntEntryArray=function(r,e,i){var f=this.ptr;zi.prepare(),r&&"object"==typeof r&&(r=r.ptr),e=e&&"object"==typeof e?e.ptr:Hi(e),i&&"object"==typeof i&&(i=i.ptr),Ue(f,r,e,i)},uf.prototype.GetDoubleEntry=uf.prototype.GetDoubleEntry=function(r,e){var i=this.ptr;return zi.prepare(),r&&"object"==typeof r&&(r=r.ptr),e=e&&"object"==typeof e?e.ptr:Hi(e),We(i,r,e)},uf.prototype.GetStringEntry=uf.prototype.GetStringEntry=function(r,e){var i=this.ptr;return zi.prepare(),r&&"object"==typeof r&&(r=r.ptr),e=e&&"object"==typeof e?e.ptr:Hi(e),F(Ve(i,r,e))},uf.prototype.NumEntries=uf.prototype.NumEntries=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),Te(e,r)},uf.prototype.GetEntryName=uf.prototype.GetEntryName=function(r,e){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),F(De(i,r,e))},uf.prototype.__destroy__=uf.prototype.__destroy__=function(){var r=this.ptr;Fe(r)},sf.prototype=Object.create(Oi.prototype),sf.prototype.constructor=sf,sf.prototype.__class__=sf,sf.__cache__={},a.Decoder=sf,sf.prototype.DecodeArrayToPointCloud=sf.prototype.DecodeArrayToPointCloud=function(r,e,i){var f=this.ptr;return zi.prepare(),"object"==typeof r&&(r=Ci(r)),e&&"object"==typeof e&&(e=e.ptr),i&&"object"==typeof i&&(i=i.ptr),gi(Ee(f,r,e,i),af)},sf.prototype.DecodeArrayToMesh=sf.prototype.DecodeArrayToMesh=function(r,e,i){var f=this.ptr;return zi.prepare(),"object"==typeof r&&(r=Ci(r)),e&&"object"==typeof e&&(e=e.ptr),i&&"object"==typeof i&&(i=i.ptr),gi(Ye(f,r,e,i),af)},sf.prototype.GetAttributeId=sf.prototype.GetAttributeId=function(r,e){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),Qe(i,r,e)},sf.prototype.GetAttributeIdByName=sf.prototype.GetAttributeIdByName=function(r,e){var i=this.ptr;return zi.prepare(),r&&"object"==typeof r&&(r=r.ptr),e=e&&"object"==typeof e?e.ptr:Hi(e),je(i,r,e)},sf.prototype.GetAttributeIdByMetadataEntry=sf.prototype.GetAttributeIdByMetadataEntry=function(r,e,i){var f=this.ptr;return zi.prepare(),r&&"object"==typeof r&&(r=r.ptr),e=e&&"object"==typeof e?e.ptr:Hi(e),i=i&&"object"==typeof i?i.ptr:Hi(i),Ie(f,r,e,i)},sf.prototype.GetAttribute=sf.prototype.GetAttribute=function(r,e){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),gi(Je(i,r,e),Ki)},sf.prototype.GetAttributeByUniqueId=sf.prototype.GetAttributeByUniqueId=function(r,e){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),gi(we(i,r,e),Ki)},sf.prototype.GetMetadata=sf.prototype.GetMetadata=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),gi(Me(e,r),ff)},sf.prototype.GetAttributeMetadata=sf.prototype.GetAttributeMetadata=function(r,e){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),gi(Oe(i,r,e),ff)},sf.prototype.GetFaceFromMesh=sf.prototype.GetFaceFromMesh=function(r,e,i){var f=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),i&&"object"==typeof i&&(i=i.ptr),!!Xe(f,r,e,i)},sf.prototype.GetTriangleStripsFromMesh=sf.prototype.GetTriangleStripsFromMesh=function(r,e){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),ge(i,r,e)},sf.prototype.GetTrianglesUInt16Array=sf.prototype.GetTrianglesUInt16Array=function(r,e,i){var f=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),i&&"object"==typeof i&&(i=i.ptr),!!ze(f,r,e,i)},sf.prototype.GetTrianglesUInt32Array=sf.prototype.GetTrianglesUInt32Array=function(r,e,i){var f=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),i&&"object"==typeof i&&(i=i.ptr),!!He(f,r,e,i)},sf.prototype.GetAttributeFloat=sf.prototype.GetAttributeFloat=function(r,e,i){var f=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),i&&"object"==typeof i&&(i=i.ptr),!!Ce(f,r,e,i)},sf.prototype.GetAttributeFloatForAllPoints=sf.prototype.GetAttributeFloatForAllPoints=function(r,e,i){var f=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),i&&"object"==typeof i&&(i=i.ptr),!!Pe(f,r,e,i)},sf.prototype.GetAttributeIntForAllPoints=sf.prototype.GetAttributeIntForAllPoints=function(r,e,i){var f=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),i&&"object"==typeof i&&(i=i.ptr),!!Se(f,r,e,i)},sf.prototype.GetAttributeInt8ForAllPoints=sf.prototype.GetAttributeInt8ForAllPoints=function(r,e,i){var f=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),i&&"object"==typeof i&&(i=i.ptr),!!xe(f,r,e,i)},sf.prototype.GetAttributeUInt8ForAllPoints=sf.prototype.GetAttributeUInt8ForAllPoints=function(r,e,i){var f=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),i&&"object"==typeof i&&(i=i.ptr),!!Le(f,r,e,i)},sf.prototype.GetAttributeInt16ForAllPoints=sf.prototype.GetAttributeInt16ForAllPoints=function(r,e,i){var f=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),i&&"object"==typeof i&&(i=i.ptr),!!Ke(f,r,e,i)},sf.prototype.GetAttributeUInt16ForAllPoints=sf.prototype.GetAttributeUInt16ForAllPoints=function(r,e,i){var f=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),i&&"object"==typeof i&&(i=i.ptr),!!qe(f,r,e,i)},sf.prototype.GetAttributeInt32ForAllPoints=sf.prototype.GetAttributeInt32ForAllPoints=function(r,e,i){var f=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),i&&"object"==typeof i&&(i=i.ptr),!!$e(f,r,e,i)},sf.prototype.GetAttributeUInt32ForAllPoints=sf.prototype.GetAttributeUInt32ForAllPoints=function(r,e,i){var f=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),i&&"object"==typeof i&&(i=i.ptr),!!ri(f,r,e,i)},sf.prototype.GetAttributeDataArrayForAllPoints=sf.prototype.GetAttributeDataArrayForAllPoints=function(r,e,i,f,a){var t=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),a&&"object"==typeof a&&(a=a.ptr),!!ei(t,r,e,i,f,a)},sf.prototype.SkipAttributeTransform=sf.prototype.SkipAttributeTransform=function(r){var e=this.ptr;r&&"object"==typeof r&&(r=r.ptr),ii(e,r)},sf.prototype.GetEncodedGeometryType_Deprecated=sf.prototype.GetEncodedGeometryType_Deprecated=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),fi(e,r)},sf.prototype.DecodeBufferToPointCloud=sf.prototype.DecodeBufferToPointCloud=function(r,e){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),gi(ai(i,r,e),af)},sf.prototype.DecodeBufferToMesh=sf.prototype.DecodeBufferToMesh=function(r,e){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),gi(ti(i,r,e),af)},sf.prototype.__destroy__=sf.prototype.__destroy__=function(){var r=this.ptr;bi(r)},function(){function r(){a.ATTRIBUTE_INVALID_TRANSFORM=Ai(),a.ATTRIBUTE_NO_TRANSFORM=ni(),a.ATTRIBUTE_QUANTIZATION_TRANSFORM=oi(),a.ATTRIBUTE_OCTAHEDRON_TRANSFORM=ki(),a.INVALID=ci(),a.POSITION=ui(),a.NORMAL=si(),a.COLOR=_i(),a.TEX_COORD=li(),a.GENERIC=pi(),a.INVALID_GEOMETRY_TYPE=yi(),a.POINT_CLOUD=di(),a.TRIANGULAR_MESH=mi(),a.DT_INVALID=vi(),a.DT_INT8=hi(),a.DT_UINT8=Ri(),a.DT_INT16=Ni(),a.DT_UINT16=Zi(),a.DT_INT32=Gi(),a.DT_UINT32=Ui(),a.DT_INT64=Wi(),a.DT_UINT64=Vi(),a.DT_FLOAT32=Ti(),a.DT_FLOAT64=Di(),a.DT_BOOL=Fi(),a.DT_TYPES_COUNT=Bi(),a.OK=Ei(),a.DRACO_ERROR=Yi(),a.IO_ERROR=Qi(),a.INVALID_PARAMETER=ji(),a.UNSUPPORTED_VERSION=Ii(),a.UNKNOWN_VERSION=Ji()}I?r():J(r)}(),"function"==typeof a.onModuleParsed&&a.onModuleParsed(),a.Decoder.prototype.GetEncodedGeometryType=function(r){if(r.__class__&&r.__class__===a.DecoderBuffer)return a.Decoder.prototype.GetEncodedGeometryType_Deprecated(r);if(r.byteLength<8)return a.INVALID_GEOMETRY_TYPE;switch(r[7]){case 0:return a.POINT_CLOUD;case 1:return a.TRIANGULAR_MESH;default:return a.INVALID_GEOMETRY_TYPE}},e.ready}})();"object"==typeof exports&&"object"==typeof module?module.exports=DracoDecoderModule:"function"==typeof define&&define.amd?define([],(function(){return DracoDecoderModule})):"object"==typeof exports&&(exports.DracoDecoderModule=DracoDecoderModule);
1
+ var DracoDecoderModule=(()=>{var r="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0;return"undefined"!=typeof __filename&&(r=r||__filename),function(e={}){var a,i,f=void 0!==e?e:{};f.ready=new Promise((function(r,e){a=r,i=e}));var t=!1,o=!1;f.onRuntimeInitialized=function(){t=!0,o&&"function"==typeof f.onModuleLoaded&&f.onModuleLoaded(f)},f.onModuleParsed=function(){o=!0,t&&"function"==typeof f.onModuleLoaded&&f.onModuleLoaded(f)},f.isVersionSupported=function isVersionSupported(r){if("string"!=typeof r)return!1;const e=r.split(".");return!(e.length<2||e.length>3)&&(1==e[0]&&e[1]>=0&&e[1]<=5||!(0!=e[0]||e[1]>10))};var b,n,A,k=Object.assign({},f),u="object"==typeof window,s="function"==typeof importScripts,_="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,d="";if(_){var m=require("fs"),R=require("path");d=s?R.dirname(d)+"/":__dirname+"/",b=(r,e)=>{var a=tryParseAsDataURI(r);return a?e?a:a.toString():(r=isFileURI(r)?new URL(r):R.normalize(r),m.readFileSync(r,e?void 0:"utf8"))},A=r=>{var e=b(r,!0);return e.buffer||(e=new Uint8Array(e)),e},n=(r,e,a)=>{var i=tryParseAsDataURI(r);i&&e(i),r=isFileURI(r)?new URL(r):R.normalize(r),m.readFile(r,(function(r,i){r?a(r):e(i.buffer)}))},process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),f.inspect=function(){return"[Emscripten Module object]"}}else(u||s)&&(s?d=self.location.href:"undefined"!=typeof document&&document.currentScript&&(d=document.currentScript.src),r&&(d=r),d=0!==d.indexOf("blob:")?d.substr(0,d.replace(/[?#].*/,"").lastIndexOf("/")+1):"",b=r=>{try{var e=new XMLHttpRequest;return e.open("GET",r,!1),e.send(null),e.responseText}catch(e){var a=tryParseAsDataURI(r);if(a)return function intArrayToString(r){for(var e=[],a=0;a<r.length;a++){var i=r[a];i>255&&(i&=255),e.push(String.fromCharCode(i))}return e.join("")}(a);throw e}},s&&(A=r=>{try{var e=new XMLHttpRequest;return e.open("GET",r,!1),e.responseType="arraybuffer",e.send(null),new Uint8Array(e.response)}catch(e){var a=tryParseAsDataURI(r);if(a)return a;throw e}}),n=(r,e,a)=>{var i=new XMLHttpRequest;i.open("GET",r,!0),i.responseType="arraybuffer",i.onload=()=>{if(200==i.status||0==i.status&&i.response)e(i.response);else{var f=tryParseAsDataURI(r);f?e(f.buffer):a()}},i.onerror=a,i.send(null)},r=>document.title=r);var h,j=f.print||console.log.bind(console),D=f.printErr||console.warn.bind(console);Object.assign(f,k),k=null,f.arguments&&f.arguments,f.thisProgram&&f.thisProgram,f.quit&&f.quit,f.wasmBinary&&(h=f.wasmBinary);var U,T=f.noExitRuntime||!0,N={Memory:function(r){this.buffer=new ArrayBuffer(65536*r.initial)},Module:function(r){},Instance:function(r,e){this.exports=function instantiate(r){for(var e,a=new Uint8Array(123),i=25;i>=0;--i)a[48+i]=52+i,a[65+i]=i,a[97+i]=26+i;function l(r,e,i){for(var f,t,o=0,b=e,n=i.length,A=e+(3*n>>2)-("="==i[n-2])-("="==i[n-1]);o<n;o+=4)f=a[i.charCodeAt(o+1)],t=a[i.charCodeAt(o+2)],r[b++]=a[i.charCodeAt(o)]<<2|f>>4,b<A&&(r[b++]=f<<4|t>>2),b<A&&(r[b++]=t<<6|a[i.charCodeAt(o+3)])}a[43]=62,a[47]=63;var f=new ArrayBuffer(16),t=new Int32Array(f),o=new Float32Array(f);new Float64Array(f);function v(){throw new Error("abort")}function w(r){o[2]=r}function y(r){return t[r]}return function ma(r){var a=r.a,i=a.a,f=i.buffer;i.grow=function ka(r){r|=0;var a=0|fa(),t=a+r|0;if(a<t&&t<65536){var o=new ArrayBuffer(m(t,65536));new Int8Array(o).set(b),b=new Int8Array(o),n=new Int16Array(o),A=new Int32Array(o),k=new Uint8Array(o),u=new Uint16Array(o),s=new Uint32Array(o),_=new Float32Array(o),d=new Float64Array(o),f=o,i.buffer=f,e=k}return a};var b=new Int8Array(f),n=new Int16Array(f),A=new Int32Array(f),k=new Uint8Array(f),u=new Uint16Array(f),s=new Uint32Array(f),_=new Float32Array(f),d=new Float64Array(f),m=Math.imul,R=Math.fround,h=Math.abs,j=Math.clz32,D=Math.min,U=Math.max,T=Math.floor,N=Math.ceil,V=(Math.trunc,Math.sqrt),W=a.b,G=a.c,Z=a.d,F=a.e,B=a.f,I=a.g,E=a.h,Q=83232,Y=0;function Ud(r,e,a){var i,f=0,t=0,o=0,b=0,n=0,u=0,_=0,d=0,R=0,h=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0,E=0,Y=0;Q=i=Q-672|0,d=A[e+8>>2],W=A[e+12>>2],f=A[e+20>>2];r:{e:{a:if(!((b=(t=A[e+16>>2])+4|0)>>>0>d>>>0&(0|(f=b>>>0<4?f+1|0:f))>=(0|W)|(0|f)>(0|W)||(f=t+A[e>>2]|0,A[r>>2]=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,d=f=A[e+20>>2],f=(t=(b=A[e+16>>2])+4|0)>>>0<4?f+1|0:f,A[e+16>>2]=t,A[e+20>>2]=f,s[r>>2]>31||(f=d,(b=b+8|0)>>>0>(W=A[e+8>>2])>>>0&(0|(f=b>>>0<8?f+1|0:f))>=(0|(I=A[e+12>>2]))|(0|f)>(0|I)||(f=t+A[e>>2]|0,A[r+4>>2]=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,d=f=A[e+20>>2],f=(t=(b=A[e+16>>2])+4|0)>>>0<4?f+1|0:f,A[e+16>>2]=t,A[e+20>>2]=f,f=d,(b=b+8|0)>>>0>(W=A[e+8>>2])>>>0&(0|(f=b>>>0<8?f+1|0:f))>=(0|(I=A[e+12>>2]))|(0|f)>(0|I)||(f=t+A[e>>2]|0,A[r+12>>2]=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,d=f=A[e+20>>2],f=(t=(b=A[e+16>>2])+4|0)>>>0<4?f+1|0:f,A[e+16>>2]=t,A[e+20>>2]=f,f=A[r+20>>2],(0|(B=A[r+12>>2]))!=(0|f)&&f||(f=d,(b=b+8|0)>>>0>(W=A[e+8>>2])>>>0&(0|(f=b>>>0<8?f+1|0:f))>=(0|(I=A[e+12>>2]))|(0|f)>(0|I))))))))if(f=t+A[e>>2]|0,t=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[r+16>>2]=t,b=A[e+20>>2],b=(f=A[e+16>>2]+4|0)>>>0<4?b+1|0:b,A[e+16>>2]=f,A[e+20>>2]=b,t>>>0>=7)A[i>>2]=t,Qd(1713,i);else{A[i+664>>2]=a;i:if(B){f:if(d=A[a>>2],!(B>>>0<=(A[a+8>>2]-d|0)/12>>>0)){if(!(B>>>0<357913942))break e;if(R=A[a+4>>2],b=(f=m(B,12))+(t=pa(f))|0,f=t=t+m((R-d|0)/12|0,12)|0,(0|d)!=(0|R))for(;R=R-12|0,A[(f=f-12|0)>>2]=A[R>>2],A[f+4>>2]=A[R+4>>2],A[f+8>>2]=A[R+8>>2],(0|d)!=(0|R););if(A[a+8>>2]=b,A[a+4>>2]=t,A[a>>2]=f,!d)break f;oa(d)}f:switch(A[r+16>>2]){case 0:if(u=wb(i+8|0,3),E=i+664|0,d=A[e+8>>2],D=A[e+12>>2],f=A[e+20>>2],!((b=(t=A[e+16>>2])+4|0)>>>0>d>>>0&(0|(f=b>>>0<4?f+1|0:f))>=(0|D)|(0|f)>(0|D))&&(f=t+A[e>>2]|0,A[u>>2]=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,d=f=A[e+20>>2],f=(t=(b=A[e+16>>2])+4|0)>>>0<4?f+1|0:f,A[e+16>>2]=t,A[e+20>>2]=f,!(s[u>>2]>32)&&(f=d,!((b=b+8|0)>>>0>(D=A[e+8>>2])>>>0&(0|(f=b>>>0<8?f+1|0:f))>=(0|(W=A[e+12>>2]))|(0|f)>(0|W))&&(f=t+A[e>>2]|0,t=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[u+4>>2]=t,b=A[e+20>>2],b=(f=A[e+16>>2]+4|0)>>>0<4?b+1|0:b,A[e+16>>2]=f,A[e+20>>2]=b,t&&(A[u+8>>2]=0,ua(u+16|0,e)&&ua(u+36|0,e)&&ua(u+56|0,e)&&ua(u+76|0,e)))))){if(Y=A[u+4>>2],f=0,b=0,Q=o=Q-32|0,h=A[u+12>>2],A[o+16>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0,h){if(h>>>0>=1073741824)break e;b=pa(e=h<<2),A[o+8>>2]=b,f=e+b|0,A[o+16>>2]=f,ra(b,0,e),A[o+12>>2]=f}if(t=A[u+120>>2],(e=A[t>>2])&&(A[t+4>>2]=e,oa(e),h=A[u+12>>2],b=A[o+8>>2],f=A[o+12>>2]),A[t+4>>2]=f,A[t>>2]=b,A[t+8>>2]=A[o+16>>2],b=0,A[o+16>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0,h){if(h>>>0>=1073741824)break e;F=pa(e=h<<2),A[o+8>>2]=F,b=e+F|0,A[o+16>>2]=b,ra(F,0,e),A[o+12>>2]=b}f=A[u+132>>2],(e=A[f>>2])&&(A[f+4>>2]=e,oa(e),F=A[o+8>>2],b=A[o+12>>2]),A[f+4>>2]=b,A[f>>2]=F,A[f+8>>2]=A[o+16>>2],A[o+24>>2]=0,A[o+28>>2]=0,A[o+16>>2]=0,A[o+20>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0,xa(o+8|0),e=((f=A[o+24>>2]+A[o+28>>2]|0)>>>0)/341|0,e=A[A[o+12>>2]+(e<<2)>>2]+m(f-m(e,341)|0,12)|0,A[e+4>>2]=0,A[e+8>>2]=0,A[e>>2]=Y,h=A[o+28>>2]+1|0,A[o+28>>2]=h;t:if(h)for(I=u+96|0;;){if(D=A[o+12>>2],b=A[o+24>>2],e=A[D+((e=((f=b+(t=h-1|0)|0)>>>0)/341|0)<<2)>>2]+m(f-m(e,341)|0,12)|0,U=A[e+8>>2],d=A[e+4>>2],G=A[e>>2],A[o+28>>2]=t,1+(((0|(e=A[o+16>>2]))!=(0|D)?m(e-D>>2,341)-1|0:0)-(b+h|0)|0)>>>0>=682&&(oa(A[e-4>>2]),A[o+16>>2]=A[o+16>>2]-4),e=0,G>>>0>Y>>>0)break t;if((h=(0|d)!=((f=A[u+12>>2])-1|0)?d+1|0:0)>>>0>=f>>>0)break t;T=(N=m(U,12))+A[u+132>>2]|0,R=N+A[u+120>>2]|0;o:{b:if((0|(b=A[u>>2]))!=(0|(t=A[(V=h<<2)+A[T>>2]>>2]))){n:{A:{k:{c:{if(G>>>0<=2){if(f=A[u+108>>2],A[f>>2]=h,F=1,(b=A[u+12>>2])>>>0>1)break c;break n}if(s[u+8>>2]>s[u+4>>2])break t;(0|(f=(e=A[u+120>>2])+(B=m(W=U+1|0,12))|0))!=(0|R)&&(Aa(f,A[R>>2],A[R+4>>2]),e=A[u+120>>2]),e=V+A[e+B>>2]|0,A[e>>2]=A[e>>2]+(1<<b+~t);u:if((0|(D=31^j(G)))<=(0|(t=32-(d=A[u+32>>2])|0))){if((0|(t=A[u+28>>2]))==A[u+20>>2])break k;if(f=A[t>>2],e=d+D|0,A[u+32>>2]=e,F=f<<d>>>32-D|0,32!=(0|e))break u;A[u+32>>2]=0,A[u+28>>2]=t+4}else{if((0|(e=(b=A[u+28>>2])+4|0))==A[u+20>>2])break k;f=A[b>>2],A[u+28>>2]=e,e=D-t|0,A[u+32>>2]=e,F=A[b+4>>2]>>>32-e|f<<d>>>32-D}if(F>>>0>(f=G>>>1|0)>>>0)break t;break A}for(;h=(b-1|0)!=(0|h)?h+1|0:0,A[f+(F<<2)>>2]=h,(b=A[u+12>>2])>>>0>(F=F+1|0)>>>0;);break n}f=G>>>1|0,F=0}A:{k:{if((0|(e=G-(t=f-F|0)|0))!=(0|t)){if((0|(D=A[u+88>>2]))==A[u+80>>2])break k;d=A[D>>2],f=(b=A[u+92>>2])+1|0,A[u+92>>2]=f,b=d&-2147483648>>>b;c:{if(32==(0|f)){if(A[u+92>>2]=0,A[u+88>>2]=D+4,b)break c;break k}if(!b)break k}}else e=t;f=e,e=t;break A}f=t}if(D=A[u+132>>2],b=A[(d=D+N|0)>>2],A[(t=b+V|0)>>2]=A[t>>2]+1,Aa(D+B|0,b,A[d+4>>2]),e&&((0|(b=A[o+28>>2]+A[o+24>>2]|0))==(0|((0|(t=A[o+16>>2]))!=(0|(F=A[o+12>>2]))?m(t-F>>2,341)-1:0))&&(xa(o+8|0),F=A[o+12>>2],b=A[o+24>>2]+A[o+28>>2]|0),t=A[((t=(b>>>0)/341|0)<<2)+F>>2]+m(b-m(t,341)|0,12)|0,A[t+8>>2]=U,A[t+4>>2]=h,A[t>>2]=e,A[o+28>>2]=A[o+28>>2]+1),!f)break b;(0|(b=A[o+28>>2]+A[o+24>>2]|0))==(0|((0|(e=A[o+16>>2]))!=(0|(F=A[o+12>>2]))?m(e-F>>2,341)-1:0))&&(xa(o+8|0),F=A[o+12>>2],b=A[o+24>>2]+A[o+28>>2]|0),e=A[((e=(b>>>0)/341|0)<<2)+F>>2]+m(b-m(e,341)|0,12)|0,A[e+8>>2]=W,A[e+4>>2]=h,A[e>>2]=f,h=A[o+28>>2]+1|0,A[o+28>>2]=h;break o}if(G)for(;;){if(A[u+12>>2])for(U=A[u+40>>2],D=A[T>>2],F=A[u+96>>2],d=A[u+108>>2],h=0;;){A[F+(A[(N=d+(h<<2)|0)>>2]<<2)>>2]=0,b=A[u>>2],t=A[N>>2]<<2;n:if((0|b)!=(0|(f=A[t+D>>2])))if(V=t+F|0,(0|(Z=b-f|0))<=(0|(b=32-(B=A[u+52>>2])|0))){if((0|(t=A[u+48>>2]))==(0|U))break t;if(A[V>>2]=A[t>>2]<<B>>>32-Z,f=Z+A[u+52>>2]|0,A[u+52>>2]=f,32!=(0|f))break n;A[u+52>>2]=0,A[u+48>>2]=t+4}else{if((0|(f=(W=A[u+48>>2])+4|0))==(0|U))break t;t=A[W>>2],A[u+48>>2]=f,f=Z-b|0,A[u+52>>2]=f,A[V>>2]=A[W+4>>2]>>>32-f|t<<B>>>32-Z}if(t=A[N>>2]<<2,A[(f=t+F|0)>>2]=A[f>>2]|A[t+A[R>>2]>>2],!((h=h+1|0)>>>0<s[u+12>>2]))break}if(jb(E,I),A[u+8>>2]=A[u+8>>2]+1,(0|G)==(0|(e=e+1|0)))break}}else{if(!G)break b;for(;;){if(f=A[R>>2],B=A[f+8>>2],W=A[f+4>>2],D=A[f>>2],N=A[E>>2],(h=A[N+4>>2])>>>0<(f=A[N+8>>2])>>>0)A[h+8>>2]=B,A[h+4>>2]=W,A[h>>2]=D,A[N+4>>2]=h+12;else{if((d=(b=(h-(V=A[N>>2])|0)/12|0)+1|0)>>>0>=357913942)break e;if(f=(t=(f-V|0)/12|0)<<1,d=t>>>0>=178956970?357913941:f>>>0>d>>>0?f:d){if(d>>>0>=357913942)break r;f=pa(m(d,12))}else f=0;if(F=f+m(b,12)|0,A[F+8>>2]=B,A[F+4>>2]=W,A[F>>2]=D,t=F+12|0,(0|h)!=(0|V))for(;h=h-12|0,A[(F=F-12|0)>>2]=A[h>>2],A[F+4>>2]=A[h+4>>2],A[F+8>>2]=A[h+8>>2],(0|h)!=(0|V););A[N+8>>2]=f+m(d,12),A[N+4>>2]=t,A[N>>2]=F,V&&oa(V)}if(A[u+8>>2]=A[u+8>>2]+1,(0|G)==(0|(e=e+1|0)))break}}h=A[o+28>>2]}if(!h)break}if(A[o+28>>2]=0,(b=(F=A[o+16>>2])-(h=A[o+12>>2])|0)>>>0>=9)for(;oa(A[h>>2]),h=A[o+12>>2]+4|0,A[o+12>>2]=h,(b=(F=A[o+16>>2])-h|0)>>>0>8;);e=170;t:switch((b>>>2|0)-1|0){case 1:e=341;case 0:A[o+24>>2]=e;break;default:break t}if((0|h)!=(0|F)){for(;oa(A[h>>2]),(0|F)!=(0|(h=h+4|0)););(0|(f=A[o+16>>2]))!=(0|(e=A[o+12>>2]))&&(A[o+16>>2]=f+(3+(e-f|0)&-4))}(e=A[o+8>>2])&&oa(e),Q=o+32|0}xb(u);break i;case 1:if(u=wb(i+8|0,3),Y=i+664|0,d=A[e+8>>2],D=A[e+12>>2],f=A[e+20>>2],!((b=(t=A[e+16>>2])+4|0)>>>0>d>>>0&(0|(f=b>>>0<4?f+1|0:f))>=(0|D)|(0|f)>(0|D))&&(f=t+A[e>>2]|0,A[u>>2]=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,d=f=A[e+20>>2],f=(t=(b=A[e+16>>2])+4|0)>>>0<4?f+1|0:f,A[e+16>>2]=t,A[e+20>>2]=f,!(s[u>>2]>32)&&(f=d,!((b=b+8|0)>>>0>(D=A[e+8>>2])>>>0&(0|(f=b>>>0<8?f+1|0:f))>=(0|(W=A[e+12>>2]))|(0|f)>(0|W))&&(f=t+A[e>>2]|0,t=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[u+4>>2]=t,b=A[e+20>>2],b=(f=A[e+16>>2]+4|0)>>>0<4?b+1|0:b,A[e+16>>2]=f,A[e+20>>2]=b,t&&(A[u+8>>2]=0,ua(u+16|0,e)&&ua(u+36|0,e)&&ua(u+56|0,e)&&ua(u+76|0,e)))))){if(T=A[u+4>>2],f=0,Q=o=Q-32|0,h=A[u+12>>2],A[o+16>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0,h){if(h>>>0>=1073741824)break e;G=pa(e=h<<2),A[o+8>>2]=G,f=e+G|0,A[o+16>>2]=f,ra(G,0,e),A[o+12>>2]=f}if(t=A[u+120>>2],(e=A[t>>2])&&(A[t+4>>2]=e,oa(e),h=A[u+12>>2],G=A[o+8>>2],f=A[o+12>>2]),A[t+4>>2]=f,A[t>>2]=G,A[t+8>>2]=A[o+16>>2],G=0,A[o+16>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0,h){if(h>>>0>=1073741824)break e;U=pa(e=h<<2),A[o+8>>2]=U,G=e+U|0,A[o+16>>2]=G,ra(U,0,e),A[o+12>>2]=G}f=A[u+132>>2],(e=A[f>>2])&&(A[f+4>>2]=e,oa(e),G=A[o+12>>2],U=A[o+8>>2]),A[f+4>>2]=G,A[f>>2]=U,A[f+8>>2]=A[o+16>>2],A[o+24>>2]=0,A[o+28>>2]=0,A[o+16>>2]=0,A[o+20>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0,xa(o+8|0),e=((f=A[o+24>>2]+A[o+28>>2]|0)>>>0)/341|0,e=A[A[o+12>>2]+(e<<2)>>2]+m(f-m(e,341)|0,12)|0,A[e+4>>2]=0,A[e+8>>2]=0,A[e>>2]=T,h=A[o+28>>2]+1|0,A[o+28>>2]=h;t:if(h)for(W=u+96|0;;){if(d=A[o+12>>2],b=A[o+24>>2],e=A[d+((e=((f=b+(t=h-1|0)|0)>>>0)/341|0)<<2)>>2]+m(f-m(e,341)|0,12)|0,N=A[e+8>>2],f=A[e+4>>2],R=A[e>>2],A[o+28>>2]=t,1+(((0|(e=A[o+16>>2]))!=(0|d)?m(e-d>>2,341)-1|0:0)-(b+h|0)|0)>>>0>=682&&(oa(A[e-4>>2]),A[o+16>>2]=A[o+16>>2]-4),R>>>0>T>>>0)break t;if((h=(0|f)!=((e=A[u+12>>2])-1|0)?f+1|0:0)>>>0>=e>>>0)break t;Z=(e=A[u+120>>2])+(V=m(N,12))|0,t=A[u>>2],B=h<<2,D=V+A[u+132>>2]|0;o:{b:if((0|t)!=(0|(f=A[B+A[D>>2]>>2]))){n:{A:{k:{c:{if(R>>>0<=2){if(e=A[u+108>>2],A[e>>2]=h,U=1,(G=A[u+12>>2])>>>0>1)break c;break n}if(s[u+8>>2]>s[u+4>>2])break t;Aa((d=e)+(e=V+12|0)|0,A[Z>>2],A[Z+4>>2]),e=B+A[e+A[u+120>>2]>>2]|0,A[e>>2]=A[e>>2]+(1<<t+~f);u:if((0|(D=31^j(R)))<=(0|(t=32-(d=A[u+32>>2])|0))){if((0|(t=A[u+28>>2]))==A[u+20>>2])break k;if(f=A[t>>2],e=d+D|0,A[u+32>>2]=e,f=f<<d>>>32-D|0,32!=(0|e))break u;A[u+32>>2]=0,A[u+28>>2]=t+4}else{if((0|(e=(b=A[u+28>>2])+4|0))==A[u+20>>2])break k;f=A[b>>2],A[u+28>>2]=e,e=D-t|0,A[u+32>>2]=e,f=A[b+4>>2]>>>32-e|f<<d>>>32-D}if((U=R>>>1|0)>>>0<f>>>0)break t;break A}for(;h=(G-1|0)!=(0|h)?h+1|0:0,A[e+(U<<2)>>2]=h,(U=U+1|0)>>>0<(G=A[u+12>>2])>>>0;);break n}U=R>>>1|0,f=0}I=N+1|0;A:{k:{if((0|(f=R-(t=U-f|0)|0))!=(0|t)){if((0|(D=A[u+88>>2]))==A[u+80>>2])break k;d=A[D>>2],e=(b=A[u+92>>2])+1|0,A[u+92>>2]=e,b=d&-2147483648>>>b;c:{if(32==(0|e)){if(A[u+92>>2]=0,A[u+88>>2]=D+4,b)break c;break k}if(!b)break k}e=f}else e=t;f=t;break A}e=t}if(D=A[u+132>>2],b=A[(d=D+V|0)>>2],A[(t=b+B|0)>>2]=A[t>>2]+1,Aa(D+m(I,12)|0,b,A[d+4>>2]),f&&((0|(G=A[o+28>>2]+A[o+24>>2]|0))==(0|((0|(t=A[o+16>>2]))!=(0|(U=A[o+12>>2]))?m(t-U>>2,341)-1:0))&&(xa(o+8|0),G=A[o+24>>2]+A[o+28>>2]|0,U=A[o+12>>2]),t=A[U+((t=(G>>>0)/341|0)<<2)>>2]+m(G-m(t,341)|0,12)|0,A[t+8>>2]=N,A[t+4>>2]=h,A[t>>2]=f,A[o+28>>2]=A[o+28>>2]+1),!e)break b;(0|(G=A[o+28>>2]+A[o+24>>2]|0))==(0|((0|(f=A[o+16>>2]))!=(0|(U=A[o+12>>2]))?m(f-U>>2,341)-1:0))&&(xa(o+8|0),G=A[o+24>>2]+A[o+28>>2]|0,U=A[o+12>>2]),f=A[U+((f=(G>>>0)/341|0)<<2)>>2]+m(G-m(f,341)|0,12)|0,A[f+8>>2]=I,A[f+4>>2]=h,A[f>>2]=e,h=A[o+28>>2]+1|0,A[o+28>>2]=h;break o}if(G=0,R)for(;;){if(A[u+12>>2])for(U=A[u+40>>2],d=A[D>>2],E=A[u+96>>2],b=A[u+108>>2],h=0;;){A[E+(A[(N=b+(h<<2)|0)>>2]<<2)>>2]=0,t=A[u>>2],f=A[N>>2]<<2;n:if((0|t)!=(0|(e=A[f+d>>2])))if(V=f+E|0,(0|(F=t-e|0))<=(0|(t=32-(B=A[u+52>>2])|0))){if((0|(f=A[u+48>>2]))==(0|U))break t;if(A[V>>2]=A[f>>2]<<B>>>32-F,e=F+A[u+52>>2]|0,A[u+52>>2]=e,32!=(0|e))break n;A[u+52>>2]=0,A[u+48>>2]=f+4}else{if((0|(e=(I=A[u+48>>2])+4|0))==(0|U))break t;f=A[I>>2],A[u+48>>2]=e,e=F-t|0,A[u+52>>2]=e,A[V>>2]=A[I+4>>2]>>>32-e|f<<B>>>32-F}if(f=A[N>>2]<<2,A[(e=f+E|0)>>2]=A[e>>2]|A[f+A[Z>>2]>>2],!((h=h+1|0)>>>0<s[u+12>>2]))break}if(jb(Y,W),A[u+8>>2]=A[u+8>>2]+1,(0|R)==(0|(G=G+1|0)))break}}else{if(B=0,!R)break b;for(;;){if(e=A[Z>>2],I=A[e+8>>2],D=A[e+4>>2],d=A[e>>2],N=A[Y>>2],(h=A[N+4>>2])>>>0<(e=A[N+8>>2])>>>0)A[h+8>>2]=I,A[h+4>>2]=D,A[h>>2]=d,A[N+4>>2]=h+12;else{if((b=(t=(h-(V=A[N>>2])|0)/12|0)+1|0)>>>0>=357913942)break e;if(e=(f=(e-V|0)/12|0)<<1,b=f>>>0>=178956970?357913941:e>>>0>b>>>0?e:b){if(b>>>0>=357913942)break r;e=pa(m(b,12))}else e=0;if(U=e+m(t,12)|0,A[U+8>>2]=I,A[U+4>>2]=D,A[U>>2]=d,f=U+12|0,(0|h)!=(0|V))for(;h=h-12|0,A[(U=U-12|0)>>2]=A[h>>2],A[U+4>>2]=A[h+4>>2],A[U+8>>2]=A[h+8>>2],(0|h)!=(0|V););A[N+8>>2]=e+m(b,12),A[N+4>>2]=f,A[N>>2]=U,V&&oa(V)}if(A[u+8>>2]=A[u+8>>2]+1,(0|R)==(0|(B=B+1|0)))break}}h=A[o+28>>2]}if(!h)break}if(A[o+28>>2]=0,(G=(U=A[o+16>>2])-(h=A[o+12>>2])|0)>>>0>=9)for(;oa(A[h>>2]),h=A[o+12>>2]+4|0,A[o+12>>2]=h,(G=(U=A[o+16>>2])-h|0)>>>0>8;);e=170;t:switch((G>>>2|0)-1|0){case 1:e=341;case 0:A[o+24>>2]=e;break;default:break t}if((0|h)!=(0|U)){for(;oa(A[h>>2]),(0|U)!=(0|(h=h+4|0)););(0|(f=A[o+16>>2]))!=(0|(e=A[o+12>>2]))&&(A[o+16>>2]=f+(3+(e-f|0)&-4))}(e=A[o+8>>2])&&oa(e),Q=o+32|0}xb(u);break i;case 2:if(o=ub(i+8|0,3),F=i+664|0,d=A[e+8>>2],D=A[e+12>>2],f=A[e+20>>2],!((b=(t=A[e+16>>2])+4|0)>>>0>d>>>0&(0|(f=b>>>0<4?f+1|0:f))>=(0|D)|(0|f)>(0|D))&&(f=t+A[e>>2]|0,A[o>>2]=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,d=f=A[e+20>>2],f=(t=(b=A[e+16>>2])+4|0)>>>0<4?f+1|0:f,A[e+16>>2]=t,A[e+20>>2]=f,!(s[o>>2]>32)&&(f=d,!((b=b+8|0)>>>0>(D=A[e+8>>2])>>>0&(0|(f=b>>>0<8?f+1|0:f))>=(0|(W=A[e+12>>2]))|(0|f)>(0|W))&&(f=t+A[e>>2]|0,t=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[o+4>>2]=t,b=A[e+20>>2],b=(f=A[e+16>>2]+4|0)>>>0<4?b+1|0:b,A[e+16>>2]=f,A[e+20>>2]=b,t&&(A[o+8>>2]=0,ta(o+16|0,e)&&ua(o+32|0,e)&&ua(o+52|0,e)&&ua(o+72|0,e)))))){if(E=A[o+4>>2],b=0,e=0,Q=n=Q-32|0,_=A[o+12>>2],A[n+16>>2]=0,A[n+8>>2]=0,A[n+12>>2]=0,_){if(_>>>0>=1073741824)break e;b=pa(f=_<<2),A[n+8>>2]=b,e=f+b|0,A[n+16>>2]=e,ra(b,0,f),A[n+12>>2]=e}if(t=A[o+116>>2],(f=A[t>>2])&&(A[t+4>>2]=f,oa(f),_=A[o+12>>2],b=A[n+8>>2],e=A[n+12>>2]),A[t+4>>2]=e,A[t>>2]=b,A[t+8>>2]=A[n+16>>2],b=0,A[n+16>>2]=0,A[n+8>>2]=0,A[n+12>>2]=0,_){if(_>>>0>=1073741824)break e;Z=pa(e=_<<2),A[n+8>>2]=Z,b=e+Z|0,A[n+16>>2]=b,ra(Z,0,e),A[n+12>>2]=b}f=A[o+128>>2],(e=A[f>>2])&&(A[f+4>>2]=e,oa(e),Z=A[n+8>>2],b=A[n+12>>2]),A[f+4>>2]=b,A[f>>2]=Z,A[f+8>>2]=A[n+16>>2],A[n+24>>2]=0,A[n+28>>2]=0,A[n+16>>2]=0,A[n+20>>2]=0,A[n+8>>2]=0,A[n+12>>2]=0,xa(n+8|0),e=((f=A[n+24>>2]+A[n+28>>2]|0)>>>0)/341|0,e=A[A[n+12>>2]+(e<<2)>>2]+m(f-m(e,341)|0,12)|0,A[e+4>>2]=0,A[e+8>>2]=0,A[e>>2]=E,_=A[n+28>>2]+1|0,A[n+28>>2]=_;t:if(_)for(B=o+92|0,I=o+16|0;;){if(D=A[n+12>>2],b=A[n+24>>2],e=A[D+((e=((f=b+(t=_-1|0)|0)>>>0)/341|0)<<2)>>2]+m(f-m(e,341)|0,12)|0,T=A[e+8>>2],d=A[e+4>>2],u=A[e>>2],A[n+28>>2]=t,1+(((0|(e=A[n+16>>2]))!=(0|D)?m(e-D>>2,341)-1|0:0)-(b+_|0)|0)>>>0>=682&&(oa(A[e-4>>2]),A[n+16>>2]=A[n+16>>2]-4),f=0,u>>>0>E>>>0)break t;if((_=(0|d)!=((e=A[o+12>>2])-1|0)?d+1|0:0)>>>0>=e>>>0)break t;Y=(U=m(T,12))+A[o+128>>2]|0,G=U+A[o+116>>2]|0;o:if((0|(b=A[o>>2]))!=(0|(t=A[(N=_<<2)+A[Y>>2]>>2]))){b:{n:{A:{k:{if(u>>>0<=2){if(e=A[o+104>>2],A[e>>2]=_,Z=1,(b=A[o+12>>2])>>>0>1)break k;break b}if(s[o+8>>2]>s[o+4>>2])break t;if((0|(f=(e=A[o+116>>2])+(V=m(W=T+1|0,12))|0))!=(0|G)&&(Aa(f,A[G>>2],A[G+4>>2]),e=A[o+116>>2]),e=N+A[e+V>>2]|0,A[e>>2]=A[e>>2]+(1<<b+~t),A[n+4>>2]=0,pc(I,31^j(u),n+4|0),(f=u>>>1|0)>>>0<(e=A[n+4>>2])>>>0)break t;if((0|(f=u-(t=f-e|0)|0))!=(0|t)){if((0|(D=A[o+84>>2]))==A[o+76>>2])break A;d=A[D>>2],e=(b=A[o+88>>2])+1|0,A[o+88>>2]=e,b=d&-2147483648>>>b;c:{if(32==(0|e)){if(A[o+88>>2]=0,A[o+84>>2]=D+4,b)break c;break A}if(!b)break A}e=f}else e=t;f=t;break n}for(;_=(b-1|0)!=(0|_)?_+1|0:0,A[e+(Z<<2)>>2]=_,(b=A[o+12>>2])>>>0>(Z=Z+1|0)>>>0;);break b}e=t}if(D=A[o+128>>2],b=A[(d=D+U|0)>>2],A[(t=b+N|0)>>2]=A[t>>2]+1,Aa(D+V|0,b,A[d+4>>2]),f&&((0|(b=A[n+28>>2]+A[n+24>>2]|0))==(0|((0|(t=A[n+16>>2]))!=(0|(Z=A[n+12>>2]))?m(t-Z>>2,341)-1:0))&&(xa(n+8|0),Z=A[n+12>>2],b=A[n+24>>2]+A[n+28>>2]|0),t=A[((t=(b>>>0)/341|0)<<2)+Z>>2]+m(b-m(t,341)|0,12)|0,A[t+8>>2]=T,A[t+4>>2]=_,A[t>>2]=f,A[n+28>>2]=A[n+28>>2]+1),!e)break o;(0|(b=A[n+28>>2]+A[n+24>>2]|0))==(0|((0|(f=A[n+16>>2]))!=(0|(Z=A[n+12>>2]))?m(f-Z>>2,341)-1:0))&&(xa(n+8|0),Z=A[n+12>>2],b=A[n+24>>2]+A[n+28>>2]|0),f=A[((f=(b>>>0)/341|0)<<2)+Z>>2]+m(b-m(f,341)|0,12)|0,A[f+8>>2]=W,A[f+4>>2]=_,A[f>>2]=e,A[n+28>>2]=A[n+28>>2]+1;break o}if(u)for(;;){if(A[o+12>>2])for(T=A[o+36>>2],D=A[Y>>2],Z=A[o+92>>2],d=A[o+104>>2],_=0;;){A[Z+(A[(U=d+(_<<2)|0)>>2]<<2)>>2]=0,b=A[o>>2],t=A[U>>2]<<2;b:if((0|b)!=(0|(e=A[t+D>>2])))if(N=t+Z|0,(0|(R=b-e|0))<=(0|(b=32-(V=A[o+48>>2])|0))){if((0|(t=A[o+44>>2]))==(0|T))break t;if(A[N>>2]=A[t>>2]<<V>>>32-R,e=R+A[o+48>>2]|0,A[o+48>>2]=e,32!=(0|e))break b;A[o+48>>2]=0,A[o+44>>2]=t+4}else{if((0|(e=(W=A[o+44>>2])+4|0))==(0|T))break t;t=A[W>>2],A[o+44>>2]=e,e=R-b|0,A[o+48>>2]=e,A[N>>2]=A[W+4>>2]>>>32-e|t<<V>>>32-R}if(t=A[U>>2]<<2,A[(e=t+Z|0)>>2]=A[e>>2]|A[t+A[G>>2]>>2],!((_=_+1|0)>>>0<s[o+12>>2]))break}if(jb(F,B),A[o+8>>2]=A[o+8>>2]+1,(0|u)==(0|(f=f+1|0)))break}}else{if(!u)break o;for(;;){if(e=A[G>>2],V=A[e+8>>2],W=A[e+4>>2],D=A[e>>2],U=A[F>>2],(_=A[U+4>>2])>>>0<(e=A[U+8>>2])>>>0)A[_+8>>2]=V,A[_+4>>2]=W,A[_>>2]=D,A[U+4>>2]=_+12;else{if((d=(b=(_-(N=A[U>>2])|0)/12|0)+1|0)>>>0>=357913942)break e;if(e=(t=(e-N|0)/12|0)<<1,d=t>>>0>=178956970?357913941:e>>>0>d>>>0?e:d){if(d>>>0>=357913942)break r;e=pa(m(d,12))}else e=0;if(Z=e+m(b,12)|0,A[Z+8>>2]=V,A[Z+4>>2]=W,A[Z>>2]=D,t=Z+12|0,(0|_)!=(0|N))for(;_=_-12|0,A[(Z=Z-12|0)>>2]=A[_>>2],A[Z+4>>2]=A[_+4>>2],A[Z+8>>2]=A[_+8>>2],(0|_)!=(0|N););A[U+8>>2]=e+m(d,12),A[U+4>>2]=t,A[U>>2]=Z,N&&oa(N)}if(A[o+8>>2]=A[o+8>>2]+1,(0|u)==(0|(f=f+1|0)))break}}if(!(_=A[n+28>>2]))break}if(A[n+28>>2]=0,(b=(Z=A[n+16>>2])-(_=A[n+12>>2])|0)>>>0>=9)for(;oa(A[_>>2]),_=A[n+12>>2]+4|0,A[n+12>>2]=_,(b=(Z=A[n+16>>2])-_|0)>>>0>8;);e=170;t:switch((b>>>2|0)-1|0){case 1:e=341;case 0:A[n+24>>2]=e;break;default:break t}if((0|_)!=(0|Z)){for(;oa(A[_>>2]),(0|Z)!=(0|(_=_+4|0)););(0|(f=A[n+16>>2]))!=(0|(e=A[n+12>>2]))&&(A[n+16>>2]=f+(3+(e-f|0)&-4))}(e=A[n+8>>2])&&oa(e),Q=n+32|0}vb(o);break i;case 3:if(u=ub(i+8|0,3),E=i+664|0,d=A[e+8>>2],D=A[e+12>>2],f=A[e+20>>2],!((b=(t=A[e+16>>2])+4|0)>>>0>d>>>0&(0|(f=b>>>0<4?f+1|0:f))>=(0|D)|(0|f)>(0|D))&&(f=t+A[e>>2]|0,A[u>>2]=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,d=f=A[e+20>>2],f=(t=(b=A[e+16>>2])+4|0)>>>0<4?f+1|0:f,A[e+16>>2]=t,A[e+20>>2]=f,!(s[u>>2]>32)&&(f=d,!((b=b+8|0)>>>0>(D=A[e+8>>2])>>>0&(0|(f=b>>>0<8?f+1|0:f))>=(0|(W=A[e+12>>2]))|(0|f)>(0|W))&&(f=t+A[e>>2]|0,t=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[u+4>>2]=t,b=A[e+20>>2],b=(f=A[e+16>>2]+4|0)>>>0<4?b+1|0:b,A[e+16>>2]=f,A[e+20>>2]=b,t&&(A[u+8>>2]=0,ta(u+16|0,e)&&ua(u+32|0,e)&&ua(u+52|0,e)&&ua(u+72|0,e)))))){if(Y=A[u+4>>2],f=0,Q=o=Q-32|0,_=A[u+12>>2],A[o+16>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0,_){if(_>>>0>=1073741824)break e;h=pa(e=_<<2),A[o+8>>2]=h,f=e+h|0,A[o+16>>2]=f,ra(h,0,e),A[o+12>>2]=f}if(t=A[u+116>>2],(e=A[t>>2])&&(A[t+4>>2]=e,oa(e),_=A[u+12>>2],h=A[o+8>>2],f=A[o+12>>2]),A[t+4>>2]=f,A[t>>2]=h,A[t+8>>2]=A[o+16>>2],h=0,A[o+16>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0,_){if(_>>>0>=1073741824)break e;T=pa(e=_<<2),A[o+8>>2]=T,h=e+T|0,A[o+16>>2]=h,ra(T,0,e),A[o+12>>2]=h}f=A[u+128>>2],(e=A[f>>2])&&(A[f+4>>2]=e,oa(e),h=A[o+12>>2],T=A[o+8>>2]),A[f+4>>2]=h,A[f>>2]=T,A[f+8>>2]=A[o+16>>2],A[o+24>>2]=0,A[o+28>>2]=0,A[o+16>>2]=0,A[o+20>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0,xa(o+8|0),e=((f=A[o+24>>2]+A[o+28>>2]|0)>>>0)/341|0,e=A[A[o+12>>2]+(e<<2)>>2]+m(f-m(e,341)|0,12)|0,A[e+4>>2]=0,A[e+8>>2]=0,A[e>>2]=Y,_=A[o+28>>2]+1|0,A[o+28>>2]=_;t:if(_)for(I=u+92|0,W=u+16|0;;){if(d=A[o+12>>2],b=A[o+24>>2],e=A[d+((e=((f=b+(t=_-1|0)|0)>>>0)/341|0)<<2)>>2]+m(f-m(e,341)|0,12)|0,U=A[e+8>>2],f=A[e+4>>2],G=A[e>>2],A[o+28>>2]=t,1+(((0|(e=A[o+16>>2]))!=(0|d)?m(e-d>>2,341)-1|0:0)-(b+_|0)|0)>>>0>=682&&(oa(A[e-4>>2]),A[o+16>>2]=A[o+16>>2]-4),G>>>0>Y>>>0)break t;if((_=(0|f)!=((e=A[u+12>>2])-1|0)?f+1|0:0)>>>0>=e>>>0)break t;R=(e=A[u+116>>2])+(N=m(U,12))|0,t=A[u>>2],V=_<<2,D=N+A[u+128>>2]|0;o:if((0|t)!=(0|(f=A[V+A[D>>2]>>2]))){b:{n:{A:{k:{if(G>>>0<=2){if(e=A[u+104>>2],A[e>>2]=_,T=1,(h=A[u+12>>2])>>>0>1)break k;break b}if(s[u+8>>2]>s[u+4>>2])break t;if(Aa((d=e)+(e=N+12|0)|0,A[R>>2],A[R+4>>2]),e=V+A[e+A[u+116>>2]>>2]|0,A[e>>2]=A[e>>2]+(1<<t+~f),A[o+4>>2]=0,pc(W,31^j(G),o+4|0),(f=G>>>1|0)>>>0<(e=A[o+4>>2])>>>0)break t;if(B=U+1|0,(0|(f=G-(t=f-e|0)|0))!=(0|t)){if((0|(D=A[u+84>>2]))==A[u+76>>2])break A;d=A[D>>2],e=(b=A[u+88>>2])+1|0,A[u+88>>2]=e,b=d&-2147483648>>>b;c:{if(32==(0|e)){if(A[u+88>>2]=0,A[u+84>>2]=D+4,b)break c;break A}if(!b)break A}e=f}else e=t;f=t;break n}for(;_=(h-1|0)!=(0|_)?_+1|0:0,A[e+(T<<2)>>2]=_,(h=A[u+12>>2])>>>0>(T=T+1|0)>>>0;);break b}e=t}if(D=A[u+128>>2],b=A[(d=D+N|0)>>2],A[(t=b+V|0)>>2]=A[t>>2]+1,Aa(D+m(B,12)|0,b,A[d+4>>2]),f&&((0|(h=A[o+28>>2]+A[o+24>>2]|0))==(0|((0|(t=A[o+16>>2]))!=(0|(T=A[o+12>>2]))?m(t-T>>2,341)-1:0))&&(xa(o+8|0),h=A[o+24>>2]+A[o+28>>2]|0,T=A[o+12>>2]),t=A[T+((t=(h>>>0)/341|0)<<2)>>2]+m(h-m(t,341)|0,12)|0,A[t+8>>2]=U,A[t+4>>2]=_,A[t>>2]=f,A[o+28>>2]=A[o+28>>2]+1),!e)break o;(0|(h=A[o+28>>2]+A[o+24>>2]|0))==(0|((0|(f=A[o+16>>2]))!=(0|(T=A[o+12>>2]))?m(f-T>>2,341)-1:0))&&(xa(o+8|0),h=A[o+24>>2]+A[o+28>>2]|0,T=A[o+12>>2]),f=A[T+((f=(h>>>0)/341|0)<<2)>>2]+m(h-m(f,341)|0,12)|0,A[f+8>>2]=B,A[f+4>>2]=_,A[f>>2]=e,A[o+28>>2]=A[o+28>>2]+1;break o}if(h=0,G)for(;;){if(A[u+12>>2])for(T=A[u+36>>2],d=A[D>>2],F=A[u+92>>2],b=A[u+104>>2],_=0;;){A[F+(A[(U=b+(_<<2)|0)>>2]<<2)>>2]=0,t=A[u>>2],f=A[U>>2]<<2;b:if((0|t)!=(0|(e=A[f+d>>2])))if(N=f+F|0,(0|(Z=t-e|0))<=(0|(t=32-(V=A[u+48>>2])|0))){if((0|(f=A[u+44>>2]))==(0|T))break t;if(A[N>>2]=A[f>>2]<<V>>>32-Z,e=Z+A[u+48>>2]|0,A[u+48>>2]=e,32!=(0|e))break b;A[u+48>>2]=0,A[u+44>>2]=f+4}else{if((0|(e=(B=A[u+44>>2])+4|0))==(0|T))break t;f=A[B>>2],A[u+44>>2]=e,e=Z-t|0,A[u+48>>2]=e,A[N>>2]=A[B+4>>2]>>>32-e|f<<V>>>32-Z}if(f=A[U>>2]<<2,A[(e=f+F|0)>>2]=A[e>>2]|A[f+A[R>>2]>>2],!((_=_+1|0)>>>0<s[u+12>>2]))break}if(jb(E,I),A[u+8>>2]=A[u+8>>2]+1,(0|G)==(0|(h=h+1|0)))break}}else{if(V=0,!G)break o;for(;;){if(e=A[R>>2],B=A[e+8>>2],D=A[e+4>>2],d=A[e>>2],U=A[E>>2],(_=A[U+4>>2])>>>0<(e=A[U+8>>2])>>>0)A[_+8>>2]=B,A[_+4>>2]=D,A[_>>2]=d,A[U+4>>2]=_+12;else{if((b=(t=(_-(N=A[U>>2])|0)/12|0)+1|0)>>>0>=357913942)break e;if(e=(f=(e-N|0)/12|0)<<1,b=f>>>0>=178956970?357913941:e>>>0>b>>>0?e:b){if(b>>>0>=357913942)break r;e=pa(m(b,12))}else e=0;if(T=e+m(t,12)|0,A[T+8>>2]=B,A[T+4>>2]=D,A[T>>2]=d,f=T+12|0,(0|_)!=(0|N))for(;_=_-12|0,A[(T=T-12|0)>>2]=A[_>>2],A[T+4>>2]=A[_+4>>2],A[T+8>>2]=A[_+8>>2],(0|_)!=(0|N););A[U+8>>2]=e+m(b,12),A[U+4>>2]=f,A[U>>2]=T,N&&oa(N)}if(A[u+8>>2]=A[u+8>>2]+1,(0|G)==(0|(V=V+1|0)))break}}if(!(_=A[o+28>>2]))break}if(A[o+28>>2]=0,(h=(T=A[o+16>>2])-(_=A[o+12>>2])|0)>>>0>=9)for(;oa(A[_>>2]),_=A[o+12>>2]+4|0,A[o+12>>2]=_,(h=(T=A[o+16>>2])-_|0)>>>0>8;);e=170;t:switch((h>>>2|0)-1|0){case 1:e=341;case 0:A[o+24>>2]=e;break;default:break t}if((0|_)!=(0|T)){for(;oa(A[_>>2]),(0|T)!=(0|(_=_+4|0)););(0|(f=A[o+16>>2]))!=(0|(e=A[o+12>>2]))&&(A[o+16>>2]=f+(3+(e-f|0)&-4))}(e=A[o+8>>2])&&oa(e),Q=o+32|0}vb(u);break i;case 4:if(o=$a(i+8|0,3),F=i+664|0,d=A[e+8>>2],D=A[e+12>>2],f=A[e+20>>2],!((b=(t=A[e+16>>2])+4|0)>>>0>d>>>0&(0|(f=b>>>0<4?f+1|0:f))>=(0|D)|(0|f)>(0|D))&&(f=t+A[e>>2]|0,A[o>>2]=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,d=f=A[e+20>>2],f=(t=(b=A[e+16>>2])+4|0)>>>0<4?f+1|0:f,A[e+16>>2]=t,A[e+20>>2]=f,!(s[o>>2]>32)&&(f=d,!((b=b+8|0)>>>0>(D=A[e+8>>2])>>>0&(0|(f=b>>>0<8?f+1|0:f))>=(0|(W=A[e+12>>2]))|(0|f)>(0|W))&&(f=t+A[e>>2]|0,t=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[o+4>>2]=t,b=A[e+20>>2],b=(f=A[e+16>>2]+4|0)>>>0<4?b+1|0:b,A[e+16>>2]=f,A[e+20>>2]=b,t&&(A[o+8>>2]=0,sb(o+16|0,e)&&ua(o+544|0,e)&&ua(o+564|0,e)&&ua(o+584|0,e)))))){if(E=A[o+4>>2],R=0,e=0,Q=n=Q-32|0,f=A[o+12>>2],A[n+16>>2]=0,A[n+8>>2]=0,A[n+12>>2]=0,f){if(f>>>0>=1073741824)break e;R=pa(t=f<<2),A[n+8>>2]=R,e=t+R|0,A[n+16>>2]=e,ra(R,0,t),A[n+12>>2]=e}if(b=A[o+628>>2],(t=A[b>>2])&&(A[b+4>>2]=t,oa(t),f=A[o+12>>2],R=A[n+8>>2],e=A[n+12>>2]),A[b+4>>2]=e,A[b>>2]=R,A[b+8>>2]=A[n+16>>2],R=0,A[n+16>>2]=0,A[n+8>>2]=0,A[n+12>>2]=0,f){if(f>>>0>=1073741824)break e;_=pa(e=f<<2),A[n+8>>2]=_,R=e+_|0,A[n+16>>2]=R,ra(_,0,e),A[n+12>>2]=R}f=A[o+640>>2],(e=A[f>>2])&&(A[f+4>>2]=e,oa(e),_=A[n+8>>2],R=A[n+12>>2]),A[f+4>>2]=R,A[f>>2]=_,A[f+8>>2]=A[n+16>>2],A[n+24>>2]=0,A[n+28>>2]=0,A[n+16>>2]=0,A[n+20>>2]=0,A[n+8>>2]=0,A[n+12>>2]=0,xa(n+8|0),e=((f=A[n+24>>2]+A[n+28>>2]|0)>>>0)/341|0,e=A[A[n+12>>2]+(e<<2)>>2]+m(f-m(e,341)|0,12)|0,A[e+4>>2]=0,A[e+8>>2]=0,A[e>>2]=E,f=A[n+28>>2]+1|0,A[n+28>>2]=f;t:if(f)for(B=o+604|0,I=o+16|0;;){if(D=A[n+12>>2],d=A[n+24>>2],e=A[D+((e=((t=d+(b=f-1|0)|0)>>>0)/341|0)<<2)>>2]+m(t-m(e,341)|0,12)|0,T=A[e+8>>2],t=A[e+4>>2],u=A[e>>2],A[n+28>>2]=b,1+(((0|(e=A[n+16>>2]))!=(0|D)?m(e-D>>2,341)-1|0:0)-(f+d|0)|0)>>>0>=682&&(oa(A[e-4>>2]),A[n+16>>2]=A[n+16>>2]-4),u>>>0>E>>>0)break t;if((_=(0|t)!=((e=A[o+12>>2])-1|0)?t+1|0:0)>>>0>=e>>>0)break t;Y=(U=m(T,12))+A[o+640>>2]|0,G=U+A[o+628>>2]|0;o:{b:if((0|(b=A[o>>2]))!=(0|(t=A[(N=_<<2)+A[Y>>2]>>2]))){n:{A:{k:{if(u>>>0<=2){if(e=A[o+616>>2],A[e>>2]=_,f=1,(R=A[o+12>>2])>>>0>1)break k;break n}if(s[o+8>>2]>s[o+4>>2])break t;if((0|(f=(e=A[o+628>>2])+(V=m(W=T+1|0,12))|0))!=(0|G)&&(Aa(f,A[G>>2],A[G+4>>2]),e=A[o+628>>2]),e=N+A[e+V>>2]|0,A[e>>2]=A[e>>2]+(1<<b+~t),R=0,f=0,!(e=31^j(u))){f=u>>>1|0;break A}for(;R=Ba(I+(f<<4)|0)|R<<1,(0|e)!=(0|(f=f+1|0)););if(R>>>0<=(f=u>>>1|0)>>>0)break A;break t}for(;_=(R-1|0)!=(0|_)?_+1|0:0,A[e+(f<<2)>>2]=_,(f=f+1|0)>>>0<(R=A[o+12>>2])>>>0;);break n}A:{k:{if((0|(f=u-(t=f-R|0)|0))!=(0|t)){if((0|(D=A[o+596>>2]))==A[o+588>>2])break k;d=A[D>>2],e=(b=A[o+600>>2])+1|0,A[o+600>>2]=e,b=d&-2147483648>>>b;c:{if(32==(0|e)){if(A[o+600>>2]=0,A[o+596>>2]=D+4,b)break c;break k}if(!b)break k}e=f}else e=t;f=t;break A}e=t}if(D=A[o+640>>2],b=A[(d=D+U|0)>>2],A[(t=b+N|0)>>2]=A[t>>2]+1,Aa(D+V|0,b,A[d+4>>2]),f&&((0|(b=A[n+28>>2]+A[n+24>>2]|0))==(0|((0|(t=A[n+16>>2]))!=(0|(R=A[n+12>>2]))?m(t-R>>2,341)-1:0))&&(xa(n+8|0),R=A[n+12>>2],b=A[n+24>>2]+A[n+28>>2]|0),t=A[((t=(b>>>0)/341|0)<<2)+R>>2]+m(b-m(t,341)|0,12)|0,A[t+8>>2]=T,A[t+4>>2]=_,A[t>>2]=f,A[n+28>>2]=A[n+28>>2]+1),!e)break b;R=A[n+28>>2]+A[n+24>>2]|0,t=A[n+16>>2],(0|R)==(0|((0|(f=A[n+12>>2]))!=(0|t)?m(t-f>>2,341)-1:0))?(xa(n+8|0),R=A[n+24>>2]+A[n+28>>2]|0,t=A[n+12>>2]):t=f,f=A[t+((f=(R>>>0)/341|0)<<2)>>2]+m(R-m(f,341)|0,12)|0,A[f+8>>2]=W,A[f+4>>2]=_,A[f>>2]=e,f=A[n+28>>2]+1|0,A[n+28>>2]=f;break o}if(_=0,u)for(;;){if(A[o+12>>2])for(T=A[o+548>>2],D=A[Y>>2],Z=A[o+604>>2],d=A[o+616>>2],f=0;;){A[Z+(A[(U=d+(f<<2)|0)>>2]<<2)>>2]=0,b=A[o>>2],t=A[U>>2]<<2;n:if((0|b)!=(0|(e=A[t+D>>2])))if(N=t+Z|0,(0|(R=b-e|0))<=(0|(b=32-(V=A[o+560>>2])|0))){if((0|(t=A[o+556>>2]))==(0|T))break t;if(A[N>>2]=A[t>>2]<<V>>>32-R,e=R+A[o+560>>2]|0,A[o+560>>2]=e,32!=(0|e))break n;A[o+560>>2]=0,A[o+556>>2]=t+4}else{if((0|(e=(W=A[o+556>>2])+4|0))==(0|T))break t;t=A[W>>2],A[o+556>>2]=e,e=R-b|0,A[o+560>>2]=e,A[N>>2]=A[W+4>>2]>>>32-e|t<<V>>>32-R}if(t=A[U>>2]<<2,A[(e=t+Z|0)>>2]=A[e>>2]|A[t+A[G>>2]>>2],!((f=f+1|0)>>>0<s[o+12>>2]))break}if(jb(F,B),A[o+8>>2]=A[o+8>>2]+1,(0|u)==(0|(_=_+1|0)))break}}else{if(U=0,!u)break b;for(;;){if(e=A[G>>2],V=A[e+8>>2],W=A[e+4>>2],D=A[e>>2],T=A[F>>2],(f=A[T+4>>2])>>>0<(e=A[T+8>>2])>>>0)A[f+8>>2]=V,A[f+4>>2]=W,A[f>>2]=D,A[T+4>>2]=f+12;else{if((d=(b=(f-(N=A[T>>2])|0)/12|0)+1|0)>>>0>=357913942)break e;if(e=(t=(e-N|0)/12|0)<<1,d=t>>>0>=178956970?357913941:e>>>0>d>>>0?e:d){if(d>>>0>=357913942)break r;e=pa(m(d,12))}else e=0;if(_=e+m(b,12)|0,A[_+8>>2]=V,A[_+4>>2]=W,A[_>>2]=D,t=_+12|0,(0|f)!=(0|N))for(;f=f-12|0,A[(_=_-12|0)>>2]=A[f>>2],A[_+4>>2]=A[f+4>>2],A[_+8>>2]=A[f+8>>2],(0|f)!=(0|N););A[T+8>>2]=e+m(d,12),A[T+4>>2]=t,A[T>>2]=_,N&&oa(N)}if(A[o+8>>2]=A[o+8>>2]+1,(0|u)==(0|(U=U+1|0)))break}}f=A[n+28>>2]}if(!f)break}if(A[n+28>>2]=0,(R=(_=A[n+16>>2])-(f=A[n+12>>2])|0)>>>0>=9)for(;oa(A[f>>2]),f=A[n+12>>2]+4|0,A[n+12>>2]=f,(R=(_=A[n+16>>2])-f|0)>>>0>8;);e=170;t:switch((R>>>2|0)-1|0){case 1:e=341;case 0:A[n+24>>2]=e;break;default:break t}if((0|f)!=(0|_)){for(;oa(A[f>>2]),(0|_)!=(0|(f=f+4|0)););(0|(f=A[n+16>>2]))!=(0|(e=A[n+12>>2]))&&(A[n+16>>2]=f+(3+(e-f|0)&-4))}(e=A[n+8>>2])&&oa(e),Q=n+32|0}ab(o);break i;case 5:if(o=$a(i+8|0,3),F=i+664|0,d=A[e+8>>2],D=A[e+12>>2],f=A[e+20>>2],!((b=(t=A[e+16>>2])+4|0)>>>0>d>>>0&(0|(f=b>>>0<4?f+1|0:f))>=(0|D)|(0|f)>(0|D))&&(f=t+A[e>>2]|0,A[o>>2]=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,d=f=A[e+20>>2],f=(t=(b=A[e+16>>2])+4|0)>>>0<4?f+1|0:f,A[e+16>>2]=t,A[e+20>>2]=f,!(s[o>>2]>32)&&(f=d,!((b=b+8|0)>>>0>(D=A[e+8>>2])>>>0&(0|(f=b>>>0<8?f+1|0:f))>=(0|(W=A[e+12>>2]))|(0|f)>(0|W))&&(f=t+A[e>>2]|0,t=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[o+4>>2]=t,b=A[e+20>>2],b=(f=A[e+16>>2]+4|0)>>>0<4?b+1|0:b,A[e+16>>2]=f,A[e+20>>2]=b,t&&(A[o+8>>2]=0,sb(o+16|0,e)&&ua(o+544|0,e)&&ua(o+564|0,e)&&ua(o+584|0,e)))))){if(E=A[o+4>>2],R=0,e=0,Q=n=Q-32|0,f=A[o+12>>2],A[n+16>>2]=0,A[n+8>>2]=0,A[n+12>>2]=0,f){if(f>>>0>=1073741824)break e;R=pa(t=f<<2),A[n+8>>2]=R,e=t+R|0,A[n+16>>2]=e,ra(R,0,t),A[n+12>>2]=e}if(b=A[o+628>>2],(t=A[b>>2])&&(A[b+4>>2]=t,oa(t),f=A[o+12>>2],R=A[n+8>>2],e=A[n+12>>2]),A[b+4>>2]=e,A[b>>2]=R,A[b+8>>2]=A[n+16>>2],R=0,A[n+16>>2]=0,A[n+8>>2]=0,A[n+12>>2]=0,f){if(f>>>0>=1073741824)break e;T=pa(e=f<<2),A[n+8>>2]=T,R=e+T|0,A[n+16>>2]=R,ra(T,0,e),A[n+12>>2]=R}f=A[o+640>>2],(e=A[f>>2])&&(A[f+4>>2]=e,oa(e),R=A[n+12>>2],T=A[n+8>>2]),A[f+4>>2]=R,A[f>>2]=T,A[f+8>>2]=A[n+16>>2],A[n+24>>2]=0,A[n+28>>2]=0,A[n+16>>2]=0,A[n+20>>2]=0,A[n+8>>2]=0,A[n+12>>2]=0,xa(n+8|0),e=((f=A[n+24>>2]+A[n+28>>2]|0)>>>0)/341|0,e=A[A[n+12>>2]+(e<<2)>>2]+m(f-m(e,341)|0,12)|0,A[e+4>>2]=0,A[e+8>>2]=0,A[e>>2]=E,f=A[n+28>>2]+1|0,A[n+28>>2]=f;t:if(f)for(B=o+604|0,I=o+16|0;;){if(D=A[n+12>>2],d=A[n+24>>2],e=A[D+((e=((t=d+(b=f-1|0)|0)>>>0)/341|0)<<2)>>2]+m(t-m(e,341)|0,12)|0,U=A[e+8>>2],t=A[e+4>>2],u=A[e>>2],A[n+28>>2]=b,1+(((0|(e=A[n+16>>2]))!=(0|D)?m(e-D>>2,341)-1|0:0)-(f+d|0)|0)>>>0>=682&&(oa(A[e-4>>2]),A[n+16>>2]=A[n+16>>2]-4),u>>>0>E>>>0)break t;if(h=0,(T=(0|t)!=((e=A[o+12>>2])-1|0)?t+1|0:0)>>>0>=e>>>0)break t;G=(e=A[o+628>>2])+(N=m(U,12))|0,t=A[o>>2],V=T<<2,W=N+A[o+640>>2]|0;o:{b:if((0|t)!=(0|(f=A[V+A[W>>2]>>2]))){n:{A:{k:{if(u>>>0<=2){if(e=A[o+616>>2],A[e>>2]=T,f=1,(R=A[o+12>>2])>>>0>1)break k;break n}if(s[o+8>>2]>s[o+4>>2])break t;if(Aa((d=e)+(e=N+12|0)|0,A[G>>2],A[G+4>>2]),e=V+A[e+A[o+628>>2]>>2]|0,A[e>>2]=A[e>>2]+(1<<t+~f),R=0,f=0,!(e=31^j(u))){f=u>>>1|0;break A}for(;R=Ba(I+(f<<4)|0)|R<<1,(0|e)!=(0|(f=f+1|0)););if(R>>>0<=(f=u>>>1|0)>>>0)break A;break t}for(;T=(R-1|0)!=(0|T)?T+1|0:0,A[e+(f<<2)>>2]=T,(f=f+1|0)>>>0<(R=A[o+12>>2])>>>0;);break n}W=U+1|0;A:{k:{if((0|(f=u-(t=f-R|0)|0))!=(0|t)){if((0|(D=A[o+596>>2]))==A[o+588>>2])break k;d=A[D>>2],e=(b=A[o+600>>2])+1|0,A[o+600>>2]=e,b=d&-2147483648>>>b;c:{if(32==(0|e)){if(A[o+600>>2]=0,A[o+596>>2]=D+4,b)break c;break k}if(!b)break k}e=f}else e=t;f=t;break A}e=t}if(D=A[o+640>>2],b=A[(d=D+N|0)>>2],A[(t=b+V|0)>>2]=A[t>>2]+1,Aa(D+m(W,12)|0,b,A[d+4>>2]),f&&((0|(h=A[n+28>>2]+A[n+24>>2]|0))==(0|((0|(t=A[n+16>>2]))!=(0|(R=A[n+12>>2]))?m(t-R>>2,341)-1:0))&&(xa(n+8|0),h=A[n+24>>2]+A[n+28>>2]|0,R=A[n+12>>2]),t=A[R+((t=(h>>>0)/341|0)<<2)>>2]+m(h-m(t,341)|0,12)|0,A[t+8>>2]=U,A[t+4>>2]=T,A[t>>2]=f,A[n+28>>2]=A[n+28>>2]+1),!e)break b;R=A[n+28>>2]+A[n+24>>2]|0,t=A[n+16>>2],(0|R)==(0|((0|(f=A[n+12>>2]))!=(0|t)?m(t-f>>2,341)-1:0))?(xa(n+8|0),R=A[n+24>>2]+A[n+28>>2]|0,t=A[n+12>>2]):t=f,f=A[t+((f=(R>>>0)/341|0)<<2)>>2]+m(R-m(f,341)|0,12)|0,A[f+8>>2]=W,A[f+4>>2]=T,A[f>>2]=e,f=A[n+28>>2]+1|0,A[n+28>>2]=f;break o}if(u)for(;;){if(A[o+12>>2])for(Y=A[o+548>>2],D=A[W>>2],Z=A[o+604>>2],d=A[o+616>>2],f=0;;){A[Z+(A[(T=d+(f<<2)|0)>>2]<<2)>>2]=0,b=A[o>>2],t=A[T>>2]<<2;n:if((0|b)!=(0|(e=A[t+D>>2])))if(U=t+Z|0,(0|(R=b-e|0))<=(0|(b=32-(N=A[o+560>>2])|0))){if((0|(t=A[o+556>>2]))==(0|Y))break t;if(A[U>>2]=A[t>>2]<<N>>>32-R,e=R+A[o+560>>2]|0,A[o+560>>2]=e,32!=(0|e))break n;A[o+560>>2]=0,A[o+556>>2]=t+4}else{if((0|(e=(V=A[o+556>>2])+4|0))==(0|Y))break t;t=A[V>>2],A[o+556>>2]=e,e=R-b|0,A[o+560>>2]=e,A[U>>2]=A[V+4>>2]>>>32-e|t<<N>>>32-R}if(t=A[T>>2]<<2,A[(e=t+Z|0)>>2]=A[e>>2]|A[t+A[G>>2]>>2],!((f=f+1|0)>>>0<s[o+12>>2]))break}if(jb(F,B),A[o+8>>2]=A[o+8>>2]+1,(0|u)==(0|(h=h+1|0)))break}}else{if(!u)break b;for(;;){if(e=A[G>>2],V=A[e+8>>2],W=A[e+4>>2],D=A[e>>2],U=A[F>>2],(f=A[U+4>>2])>>>0<(e=A[U+8>>2])>>>0)A[f+8>>2]=V,A[f+4>>2]=W,A[f>>2]=D,A[U+4>>2]=f+12;else{if((d=(b=(f-(N=A[U>>2])|0)/12|0)+1|0)>>>0>=357913942)break e;if(e=(t=(e-N|0)/12|0)<<1,d=t>>>0>=178956970?357913941:e>>>0>d>>>0?e:d){if(d>>>0>=357913942)break r;e=pa(m(d,12))}else e=0;if(T=e+m(b,12)|0,A[T+8>>2]=V,A[T+4>>2]=W,A[T>>2]=D,t=T+12|0,(0|f)!=(0|N))for(;f=f-12|0,A[(T=T-12|0)>>2]=A[f>>2],A[T+4>>2]=A[f+4>>2],A[T+8>>2]=A[f+8>>2],(0|f)!=(0|N););A[U+8>>2]=e+m(d,12),A[U+4>>2]=t,A[U>>2]=T,N&&oa(N)}if(A[o+8>>2]=A[o+8>>2]+1,(0|u)==(0|(h=h+1|0)))break}}f=A[n+28>>2]}if(!f)break}if(A[n+28>>2]=0,(R=(T=A[n+16>>2])-(f=A[n+12>>2])|0)>>>0>=9)for(;oa(A[f>>2]),f=A[n+12>>2]+4|0,A[n+12>>2]=f,(R=(T=A[n+16>>2])-f|0)>>>0>8;);e=170;t:switch((R>>>2|0)-1|0){case 1:e=341;case 0:A[n+24>>2]=e;break;default:break t}if((0|f)!=(0|T)){for(;oa(A[f>>2]),(0|T)!=(0|(f=f+4|0)););(0|(f=A[n+16>>2]))!=(0|(e=A[n+12>>2]))&&(A[n+16>>2]=f+(3+(e-f|0)&-4))}(e=A[n+8>>2])&&oa(e),Q=n+32|0}ab(o);break i;case 6:break f;default:break a}if(o=$a(i+8|0,3),F=i+664|0,d=A[e+8>>2],D=A[e+12>>2],f=A[e+20>>2],!((b=(t=A[e+16>>2])+4|0)>>>0>d>>>0&(0|(f=b>>>0<4?f+1|0:f))>=(0|D)|(0|f)>(0|D))&&(f=t+A[e>>2]|0,A[o>>2]=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,d=f=A[e+20>>2],f=(t=(b=A[e+16>>2])+4|0)>>>0<4?f+1|0:f,A[e+16>>2]=t,A[e+20>>2]=f,!(s[o>>2]>32)&&(f=d,!((b=b+8|0)>>>0>(D=A[e+8>>2])>>>0&(0|(f=b>>>0<8?f+1|0:f))>=(0|(W=A[e+12>>2]))|(0|f)>(0|W))&&(f=t+A[e>>2]|0,t=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[o+4>>2]=t,b=A[e+20>>2],b=(f=A[e+16>>2]+4|0)>>>0<4?b+1|0:b,A[e+16>>2]=f,A[e+20>>2]=b,t&&(A[o+8>>2]=0,sb(o+16|0,e)&&ua(o+544|0,e)&&ua(o+564|0,e)&&ua(o+584|0,e)))))){if(E=A[o+4>>2],R=0,e=0,Q=n=Q-32|0,f=A[o+12>>2],A[n+16>>2]=0,A[n+8>>2]=0,A[n+12>>2]=0,f){if(f>>>0>=1073741824)break e;R=pa(t=f<<2),A[n+8>>2]=R,e=t+R|0,A[n+16>>2]=e,ra(R,0,t),A[n+12>>2]=e}if(b=A[o+628>>2],(t=A[b>>2])&&(A[b+4>>2]=t,oa(t),f=A[o+12>>2],R=A[n+8>>2],e=A[n+12>>2]),A[b+4>>2]=e,A[b>>2]=R,A[b+8>>2]=A[n+16>>2],R=0,A[n+16>>2]=0,A[n+8>>2]=0,A[n+12>>2]=0,f){if(f>>>0>=1073741824)break e;_=pa(e=f<<2),A[n+8>>2]=_,R=e+_|0,A[n+16>>2]=R,ra(_,0,e),A[n+12>>2]=R}f=A[o+640>>2],(e=A[f>>2])&&(A[f+4>>2]=e,oa(e),_=A[n+8>>2],R=A[n+12>>2]),A[f+4>>2]=R,A[f>>2]=_,A[f+8>>2]=A[n+16>>2],A[n+24>>2]=0,A[n+28>>2]=0,A[n+16>>2]=0,A[n+20>>2]=0,A[n+8>>2]=0,A[n+12>>2]=0,xa(n+8|0),e=((f=A[n+24>>2]+A[n+28>>2]|0)>>>0)/341|0,e=A[A[n+12>>2]+(e<<2)>>2]+m(f-m(e,341)|0,12)|0,A[e+4>>2]=0,A[e+8>>2]=0,A[e>>2]=E,f=A[n+28>>2]+1|0,A[n+28>>2]=f;f:if(f)for(B=o+604|0,I=o+16|0;;){if(D=A[n+12>>2],d=A[n+24>>2],e=A[D+((e=((t=d+(b=f-1|0)|0)>>>0)/341|0)<<2)>>2]+m(t-m(e,341)|0,12)|0,T=A[e+8>>2],u=A[e>>2],A[n+28>>2]=b,1+(((0|(e=A[n+16>>2]))!=(0|D)?m(e-D>>2,341)-1|0:0)-(f+d|0)|0)>>>0>=682&&(oa(A[e-4>>2]),A[n+16>>2]=A[n+16>>2]-4),u>>>0>E>>>0)break f;if(e=A[o+628>>2],(_=Vd(o,u,Y=(U=m(T,12))+A[o+640>>2]|0))>>>0>=s[o+12>>2])break f;G=e+U|0;t:{o:if((0|(b=A[o>>2]))!=(0|(t=A[(N=_<<2)+A[Y>>2]>>2]))){b:{n:{A:{if(u>>>0<=2){if(e=A[o+616>>2],A[e>>2]=_,f=1,(R=A[o+12>>2])>>>0>1)break A;break b}if(s[o+8>>2]>s[o+4>>2])break f;if((0|(f=(e=A[o+628>>2])+(V=m(W=T+1|0,12))|0))!=(0|G)&&(Aa(f,A[G>>2],A[G+4>>2]),e=A[o+628>>2]),e=N+A[e+V>>2]|0,A[e>>2]=A[e>>2]+(1<<b+~t),R=0,f=0,!(e=31^j(u))){f=u>>>1|0;break n}for(;R=Ba(I+(f<<4)|0)|R<<1,(0|e)!=(0|(f=f+1|0)););if(R>>>0<=(f=u>>>1|0)>>>0)break n;break f}for(;_=(R-1|0)!=(0|_)?_+1|0:0,A[e+(f<<2)>>2]=_,(f=f+1|0)>>>0<(R=A[o+12>>2])>>>0;);break b}n:{A:{if((0|(f=u-(t=f-R|0)|0))!=(0|t)){if((0|(D=A[o+596>>2]))==A[o+588>>2])break A;d=A[D>>2],e=(b=A[o+600>>2])+1|0,A[o+600>>2]=e,b=d&-2147483648>>>b;k:{if(32==(0|e)){if(A[o+600>>2]=0,A[o+596>>2]=D+4,b)break k;break A}if(!b)break A}e=f}else e=t;f=t;break n}e=t}if(D=A[o+640>>2],b=A[(d=D+U|0)>>2],A[(t=b+N|0)>>2]=A[t>>2]+1,Aa(D+V|0,b,A[d+4>>2]),f&&((0|(b=A[n+28>>2]+A[n+24>>2]|0))==(0|((0|(t=A[n+16>>2]))!=(0|(R=A[n+12>>2]))?m(t-R>>2,341)-1:0))&&(xa(n+8|0),R=A[n+12>>2],b=A[n+24>>2]+A[n+28>>2]|0),t=A[((t=(b>>>0)/341|0)<<2)+R>>2]+m(b-m(t,341)|0,12)|0,A[t+8>>2]=T,A[t+4>>2]=_,A[t>>2]=f,A[n+28>>2]=A[n+28>>2]+1),!e)break o;R=A[n+28>>2]+A[n+24>>2]|0,t=A[n+16>>2],(0|R)==(0|((0|(f=A[n+12>>2]))!=(0|t)?m(t-f>>2,341)-1:0))?(xa(n+8|0),R=A[n+24>>2]+A[n+28>>2]|0,t=A[n+12>>2]):t=f,f=A[t+((f=(R>>>0)/341|0)<<2)>>2]+m(R-m(f,341)|0,12)|0,A[f+8>>2]=W,A[f+4>>2]=_,A[f>>2]=e,f=A[n+28>>2]+1|0,A[n+28>>2]=f;break t}if(_=0,u)for(;;){if(A[o+12>>2])for(T=A[o+548>>2],D=A[Y>>2],Z=A[o+604>>2],d=A[o+616>>2],f=0;;){A[Z+(A[(U=d+(f<<2)|0)>>2]<<2)>>2]=0,b=A[o>>2],t=A[U>>2]<<2;b:if((0|b)!=(0|(e=A[t+D>>2])))if(N=t+Z|0,(0|(R=b-e|0))<=(0|(b=32-(V=A[o+560>>2])|0))){if((0|(t=A[o+556>>2]))==(0|T))break f;if(A[N>>2]=A[t>>2]<<V>>>32-R,e=R+A[o+560>>2]|0,A[o+560>>2]=e,32!=(0|e))break b;A[o+560>>2]=0,A[o+556>>2]=t+4}else{if((0|(e=(W=A[o+556>>2])+4|0))==(0|T))break f;t=A[W>>2],A[o+556>>2]=e,e=R-b|0,A[o+560>>2]=e,A[N>>2]=A[W+4>>2]>>>32-e|t<<V>>>32-R}if(t=A[U>>2]<<2,A[(e=t+Z|0)>>2]=A[e>>2]|A[t+A[G>>2]>>2],!((f=f+1|0)>>>0<s[o+12>>2]))break}if(jb(F,B),A[o+8>>2]=A[o+8>>2]+1,(0|u)==(0|(_=_+1|0)))break}}else{if(U=0,!u)break o;for(;;){if(e=A[G>>2],V=A[e+8>>2],W=A[e+4>>2],D=A[e>>2],T=A[F>>2],(f=A[T+4>>2])>>>0<(e=A[T+8>>2])>>>0)A[f+8>>2]=V,A[f+4>>2]=W,A[f>>2]=D,A[T+4>>2]=f+12;else{if((d=(b=(f-(N=A[T>>2])|0)/12|0)+1|0)>>>0>=357913942)break e;if(e=(t=(e-N|0)/12|0)<<1,d=t>>>0>=178956970?357913941:e>>>0>d>>>0?e:d){if(d>>>0>=357913942)break r;e=pa(m(d,12))}else e=0;if(_=e+m(b,12)|0,A[_+8>>2]=V,A[_+4>>2]=W,A[_>>2]=D,t=_+12|0,(0|f)!=(0|N))for(;f=f-12|0,A[(_=_-12|0)>>2]=A[f>>2],A[_+4>>2]=A[f+4>>2],A[_+8>>2]=A[f+8>>2],(0|f)!=(0|N););A[T+8>>2]=e+m(d,12),A[T+4>>2]=t,A[T>>2]=_,N&&oa(N)}if(A[o+8>>2]=A[o+8>>2]+1,(0|u)==(0|(U=U+1|0)))break}}f=A[n+28>>2]}if(!f)break}if(A[n+28>>2]=0,(R=(_=A[n+16>>2])-(f=A[n+12>>2])|0)>>>0>=9)for(;oa(A[f>>2]),f=A[n+12>>2]+4|0,A[n+12>>2]=f,(R=(_=A[n+16>>2])-f|0)>>>0>8;);e=170;f:switch((R>>>2|0)-1|0){case 1:e=341;case 0:A[n+24>>2]=e;break;default:break f}if((0|f)!=(0|_)){for(;oa(A[f>>2]),(0|_)!=(0|(f=f+4|0)););(0|(f=A[n+16>>2]))!=(0|(e=A[n+12>>2]))&&(A[n+16>>2]=f+(3+(e-f|0)&-4))}(e=A[n+8>>2])&&oa(e),Q=n+32|0}ab(o)}D=A[r+12>>2]==((A[a+4>>2]-A[a>>2]|0)/12|0)}return Q=i+672|0,D}sa(),v()}wa(),v()}function kd(r,e,a,i){var f=0,t=0,o=0,n=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0,E=0,Y=0;if(!r)return 1;r:if(!((0|(f=A[a+20>>2]))>=(0|(o=A[a+12>>2]))&(_=A[a+16>>2])>>>0>=s[a+8>>2]|(0|f)>(0|o))){o=k[_+A[a>>2]|0],f=(_=_+1|0)?f:f+1|0,A[a+16>>2]=_,A[a+20>>2]=f;e:switch(0|o){case 0:f=r,t=e,_=i,r=0,i=0,Q=j=Q+-64|0,A[j+56>>2]=0,A[j+48>>2]=0,A[j+52>>2]=0,A[j+40>>2]=0,A[j+44>>2]=0,A[j+32>>2]=0,A[j+36>>2]=0,A[j+24>>2]=0,A[j+28>>2]=0,A[j+16>>2]=0,A[j+20>>2]=0,A[j+8>>2]=0,A[j+12>>2]=0;a:if(Ne(j+8|0,a)&&!(!Me(j+8|0,a)|(A[j+20>>2]?0:f))){if(Db(a,0,0),f)for(W=t<<2,G=A[j+36>>2],B=A[j+48>>2],I=A[j+24>>2],h=A[j+56>>2],d=A[j+52>>2];;){i:if(!(h>>>0>16383))for(;;){if((0|d)<=0)break i;if(d=d-1|0,A[j+52>>2]=d,h=k[d+B|0]|h<<8,A[j+56>>2]=h,!(h>>>0<16384))break}if(V=A[((r=4095&h)<<2)+I>>2],h=(m(A[(e=(V<<3)+G|0)>>2],h>>>12|0)+r|0)-A[e+4>>2]|0,A[j+56>>2]=h,(0|t)>0){if(r=0,!k[a+36|0]|V>>>0>32)break a;if(o=i+t|0,V)for(E=-2&V,Y=1&V,e=A[a+32>>2],n=A[a+28>>2],D=A[a+24>>2];;){if(R=0,r=e,U=0,N=0,1!=(0|V))for(;(T=D+(r>>>3|0)|0)>>>0>=n>>>0?T=0:(T=k[0|T],e=r+1|0,A[a+32>>2]=e,T=T>>>(7&r)&1,r=e),T=T<<R|U,U=0,(Z=D+(r>>>3|0)|0)>>>0<n>>>0&&(U=k[0|Z],e=r+1|0,A[a+32>>2]=e,U=U>>>(7&r)&1,r=e),Z=1|R,R=R+2|0,U=T|U<<Z,(0|E)!=(0|(N=N+2|0)););if(N=_+(i<<2)|0,Y&&((T=D+(r>>>3|0)|0)>>>0<n>>>0?(T=k[0|T],e=r+1|0,A[a+32>>2]=e,r=T>>>(7&r)&1):r=0,U|=r<<R),A[N>>2]=U,(0|o)==(0|(i=i+1|0)))break}else ra(_+(i<<2)|0,0,W);i=o}if(!(f>>>0>(F=t+F|0)>>>0))break}b[a+36|0]=0,e=A[a+20>>2],f=0,r=(i=(7&(f=(i=A[a+32>>2]+7|0)>>>0<7?1:f))<<29|i>>>3)+A[a+16>>2]|0,f=(f>>>3|0)+e|0,A[a+16>>2]=r,A[a+20>>2]=r>>>0<i>>>0?f+1|0:f,r=1}return(e=A[j+36>>2])&&(A[j+40>>2]=e,oa(e)),(e=A[j+24>>2])&&(A[j+28>>2]=e,oa(e)),(e=A[j+8>>2])&&(A[j+12>>2]=e,oa(e)),Q=j- -64|0,r;case 1:break e;default:break r}e=0;e:if(!((0|(f=A[a+20>>2]))>=(0|(o=A[a+12>>2]))&(_=A[a+16>>2])>>>0>=s[a+8>>2]|(0|f)>(0|o))){o=k[_+A[a>>2]|0],f=(_=_+1|0)?f:f+1|0,A[a+16>>2]=_,A[a+20>>2]=f;a:switch(o-1|0){case 8:o=r,V=i,Q=_=Q+-64|0,A[_+56>>2]=0,A[_+48>>2]=0,A[_+52>>2]=0,A[_+40>>2]=0,A[_+44>>2]=0,A[_+32>>2]=0,A[_+36>>2]=0,A[_+24>>2]=0,A[_+28>>2]=0,A[_+16>>2]=0,A[_+20>>2]=0,A[_+8>>2]=0,A[_+12>>2]=0,d=_+8|0;i:{f:if(r=u[a+38>>1]){if(r>>>0<=511){if(i=A[a+8>>2],e=A[a+12>>2],f=A[a+20>>2],i>>>0<(t=(r=A[a+16>>2])+4|0)>>>0&(0|e)<=(0|(f=t>>>0<4?f+1|0:f))|(0|e)<(0|f))break f;r=r+A[a>>2]|0,n=k[0|r]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24,A[d+12>>2]=n,f=A[a+20>>2],f=(t=A[a+16>>2]+4|0)>>>0<4?f+1|0:f,A[a+16>>2]=t,A[a+20>>2]=f}else{if(!hb(1,d+12|0,a))break f;t=A[a+16>>2],f=A[a+20>>2],n=A[d+12>>2]}if(!((i=(r=A[a+8>>2])-t|0)>>>0<n>>>6>>>0&(0|(r=A[a+12>>2]-((r>>>0<t>>>0)+f|0)|0))<=0|(0|r)<0)){if(e=A[d>>2],(r=A[d+4>>2]-e>>2)>>>0<n>>>0?(ya(d,n-r|0),n=A[d+12>>2]):r>>>0<=n>>>0||(A[d+4>>2]=e+(n<<2)),i=1,!n)break i;for(t=A[a+16>>2],f=A[a+20>>2],W=A[d>>2],j=A[a+8>>2],D=A[a+12>>2],e=0;;){if(i=0,(0|f)>=(0|D)&t>>>0>=j>>>0|(0|f)>(0|D))break i;i=A[a>>2],T=k[i+t|0],f=(t=t+1|0)?f:f+1|0,A[a+16>>2]=t,A[a+20>>2]=f,r=T>>>2|0,h=0;t:{o:{b:{n:switch(0|(G=3&T)){case 0:break o;case 3:break n;default:break b}if(i=0,(r=r+e|0)>>>0>=n>>>0)break i;ra(W+(e<<2)|0,0,4+(252&T)|0),e=r;break t}for(;;){if((0|t)==(0|j)&(0|f)==(0|D))break f;if(n=k[i+t|0],f=(t=t+1|0)?f:f+1|0,A[a+16>>2]=t,A[a+20>>2]=f,r|=n<<(h<<3|6),(0|G)==(0|(h=h+1|0)))break}}A[W+(e<<2)>>2]=r}if(!((e=e+1|0)>>>0<(n=A[d+12>>2])>>>0))break}if(r=d+16|0,D=A[d>>2],i=A[d+16>>2],(e=A[d+20>>2]-i|0)>>>0<=32767?ya(r,8192-(e>>>2|0)|0):32768!=(0|e)&&(A[d+20>>2]=i+32768),e=A[(i=d+28|0)>>2],(t=A[d+32>>2]-e>>3)>>>0<n>>>0)ob(i,n-t|0),e=A[i>>2];else if(t>>>0>n>>>0&&(A[d+32>>2]=(n<<3)+e),!n)break f;for(j=A[r>>2],t=0,i=0;;){if(d=A[(f=D+(t<<2)|0)>>2],r=i,A[(h=(t<<3)+e|0)+4>>2]=r,A[h>>2]=d,(i=(f=A[f>>2])+r|0)>>>0>8192)break f;if(!(r>>>0>=i>>>0)){if(h=0,d=7&f)for(;A[j+(r<<2)>>2]=t,r=r+1|0,(0|d)!=(0|(h=h+1|0)););if(!(f-1>>>0<=6))for(;A[(f=j+(r<<2)|0)>>2]=t,A[f+28>>2]=t,A[f+24>>2]=t,A[f+20>>2]=t,A[f+16>>2]=t,A[f+12>>2]=t,A[f+8>>2]=t,A[f+4>>2]=t,(0|i)!=(0|(r=r+8|0)););}if((0|n)==(0|(t=t+1|0)))break}R=8192==(0|i)}}i=R}if(!(!i|(A[_+20>>2]?0:o))){i=0,Q=j=Q-16|0;i:{if(u[a+38>>1]<=511){if(e=A[a+8>>2],n=r=A[a+12>>2],f=A[a+20>>2],e>>>0<(t=(R=A[a+16>>2])+8|0)>>>0&(0|r)<=(0|(f=t>>>0<8?f+1|0:f))|(0|r)<(0|f))break i;R=R+A[a>>2]|0,r=k[0|R]|k[R+1|0]<<8|k[R+2|0]<<16|k[R+3|0]<<24,R=k[R+4|0]|k[R+5|0]<<8|k[R+6|0]<<16|k[R+7|0]<<24,A[a+16>>2]=t,A[a+20>>2]=f}else{if(!gb(1,j+8|0,a))break i;t=A[a+16>>2],f=A[a+20>>2],e=A[a+8>>2],n=A[a+12>>2],r=A[j+8>>2],R=A[j+12>>2]}if(d=e-t|0,!((0|(e=n-((e>>>0<t>>>0)+f|0)|0))==(0|R)&r>>>0>d>>>0|e>>>0<R>>>0||(f=f+R|0,f=(e=r+t|0)>>>0<r>>>0?f+1|0:f,A[a+16>>2]=e,A[a+20>>2]=f,(0|r)<=0))){e=A[a>>2]+t|0,A[_+48>>2]=e;f:if((f=k[0|(t=(a=r-1|0)+e|0)])>>>0<=63)A[_+52>>2]=a,r=63&k[0|t];else{t:switch((f>>>6|0)-1|0){case 0:if(r>>>0<2)break i;r=r-2|0,A[_+52>>2]=r,r=k[(r=r+e|0)+1|0]<<8&16128|k[0|r];break f;case 1:if(r>>>0<3)break i;r=r-3|0,A[_+52>>2]=r,r=k[(r=r+e|0)+1|0]<<8|k[r+2|0]<<16&4128768|k[0|r];break f;default:break t}r=r-4|0,A[_+52>>2]=r,r=1073741823&(k[0|(r=r+e|0)]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24)}A[_+56>>2]=r+32768,i=r>>>0<8355840}}if(Q=j+16|0,i)if(o)for(e=A[_+52>>2],r=A[_+56>>2],a=A[_+36>>2],i=A[_+48>>2],t=A[_+24>>2];;){i:if(!(r>>>0>32767))for(;;){if((0|e)<=0)break i;if(e=e-1|0,A[_+52>>2]=e,r=k[e+i|0]|r<<8,A[_+56>>2]=r,!(r>>>0<32768))break}if(U=A[t+((f=8191&r)<<2)>>2],r=(m(A[(R=a+(U<<3)|0)>>2],r>>>13|0)+f|0)-A[R+4>>2]|0,A[_+56>>2]=r,A[V+(N<<2)>>2]=U,U=1,(0|o)==(0|(N=N+1|0)))break}else U=1}(r=A[_+36>>2])&&(A[_+40>>2]=r,oa(r)),(r=A[_+24>>2])&&(A[_+28>>2]=r,oa(r)),(r=A[_+8>>2])&&(A[_+12>>2]=r,oa(r)),Q=_- -64|0,e=U;break e;case 9:j=r,V=i,Q=o=Q+-64|0,A[o+56>>2]=0,A[o+48>>2]=0,A[o+52>>2]=0,A[o+40>>2]=0,A[o+44>>2]=0,A[o+32>>2]=0,A[o+36>>2]=0,A[o+24>>2]=0,A[o+28>>2]=0,A[o+16>>2]=0,A[o+20>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0,d=o+8|0;i:{f:if(r=u[a+38>>1]){if(r>>>0<=511){if(i=A[a+8>>2],e=A[a+12>>2],f=A[a+20>>2],i>>>0<(t=(r=A[a+16>>2])+4|0)>>>0&(0|e)<=(0|(f=t>>>0<4?f+1|0:f))|(0|e)<(0|f))break f;r=r+A[a>>2]|0,n=k[0|r]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24,A[d+12>>2]=n,f=A[a+20>>2],f=(t=A[a+16>>2]+4|0)>>>0<4?f+1|0:f,A[a+16>>2]=t,A[a+20>>2]=f}else{if(!hb(1,d+12|0,a))break f;t=A[a+16>>2],f=A[a+20>>2],n=A[d+12>>2]}if(!((i=(r=A[a+8>>2])-t|0)>>>0<n>>>6>>>0&(0|(r=A[a+12>>2]-((r>>>0<t>>>0)+f|0)|0))<=0|(0|r)<0)){if(e=A[d>>2],(r=A[d+4>>2]-e>>2)>>>0<n>>>0?(ya(d,n-r|0),n=A[d+12>>2]):r>>>0<=n>>>0||(A[d+4>>2]=e+(n<<2)),i=1,!n)break i;for(t=A[a+16>>2],f=A[a+20>>2],W=A[d>>2],_=A[a+8>>2],D=A[a+12>>2],e=0;;){if(i=0,(0|f)>=(0|D)&t>>>0>=_>>>0|(0|f)>(0|D))break i;i=A[a>>2],T=k[i+t|0],f=(t=t+1|0)?f:f+1|0,A[a+16>>2]=t,A[a+20>>2]=f,r=T>>>2|0,h=0;t:{o:{b:{n:switch(0|(G=3&T)){case 0:break o;case 3:break n;default:break b}if(i=0,(r=r+e|0)>>>0>=n>>>0)break i;ra(W+(e<<2)|0,0,4+(252&T)|0),e=r;break t}for(;;){if((0|t)==(0|_)&(0|f)==(0|D))break f;if(n=k[i+t|0],f=(t=t+1|0)?f:f+1|0,A[a+16>>2]=t,A[a+20>>2]=f,r|=n<<(h<<3|6),(0|G)==(0|(h=h+1|0)))break}}A[W+(e<<2)>>2]=r}if(!((e=e+1|0)>>>0<(n=A[d+12>>2])>>>0))break}if(r=d+16|0,D=A[d>>2],i=A[d+16>>2],(e=A[d+20>>2]-i|0)>>>0<=131071?ya(r,32768-(e>>>2|0)|0):131072!=(0|e)&&(A[d+20>>2]=i+131072),e=A[(i=d+28|0)>>2],(t=A[d+32>>2]-e>>3)>>>0<n>>>0)ob(i,n-t|0),e=A[i>>2];else if(t>>>0>n>>>0&&(A[d+32>>2]=(n<<3)+e),!n)break f;for(_=A[r>>2],t=0,i=0;;){if(d=A[(f=D+(t<<2)|0)>>2],r=i,A[(h=(t<<3)+e|0)+4>>2]=r,A[h>>2]=d,(i=(f=A[f>>2])+r|0)>>>0>32768)break f;if(!(r>>>0>=i>>>0)){if(h=0,d=7&f)for(;A[_+(r<<2)>>2]=t,r=r+1|0,(0|d)!=(0|(h=h+1|0)););if(!(f-1>>>0<=6))for(;A[(f=_+(r<<2)|0)>>2]=t,A[f+28>>2]=t,A[f+24>>2]=t,A[f+20>>2]=t,A[f+16>>2]=t,A[f+12>>2]=t,A[f+8>>2]=t,A[f+4>>2]=t,(0|i)!=(0|(r=r+8|0)););}if((0|n)==(0|(t=t+1|0)))break}R=32768==(0|i)}}i=R}if(!(!i|(A[o+20>>2]?0:j))){i=0,Q=d=Q-16|0;i:{if(u[a+38>>1]<=511){if(e=A[a+8>>2],n=r=A[a+12>>2],f=A[a+20>>2],e>>>0<(t=(R=A[a+16>>2])+8|0)>>>0&(0|r)<=(0|(f=t>>>0<8?f+1|0:f))|(0|r)<(0|f))break i;R=R+A[a>>2]|0,r=k[0|R]|k[R+1|0]<<8|k[R+2|0]<<16|k[R+3|0]<<24,R=k[R+4|0]|k[R+5|0]<<8|k[R+6|0]<<16|k[R+7|0]<<24,A[a+16>>2]=t,A[a+20>>2]=f}else{if(!gb(1,d+8|0,a))break i;t=A[a+16>>2],f=A[a+20>>2],e=A[a+8>>2],n=A[a+12>>2],r=A[d+8>>2],R=A[d+12>>2]}if(_=e-t|0,!((0|(e=n-((e>>>0<t>>>0)+f|0)|0))==(0|R)&r>>>0>_>>>0|e>>>0<R>>>0||(_=f+R|0,_=(e=r+t|0)>>>0<r>>>0?_+1|0:_,A[a+16>>2]=e,A[a+20>>2]=_,(0|r)<=0))){e=A[a>>2]+t|0,A[o+48>>2]=e;f:if((f=k[0|(t=(a=r-1|0)+e|0)])>>>0<=63)A[o+52>>2]=a,r=63&k[0|t];else{t:switch((f>>>6|0)-1|0){case 0:if(r>>>0<2)break i;r=r-2|0,A[o+52>>2]=r,r=k[(r=r+e|0)+1|0]<<8&16128|k[0|r];break f;case 1:if(r>>>0<3)break i;r=r-3|0,A[o+52>>2]=r,r=k[(r=r+e|0)+1|0]<<8|k[r+2|0]<<16&4128768|k[0|r];break f;default:break t}r=r-4|0,A[o+52>>2]=r,r=1073741823&(k[0|(r=r+e|0)]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24)}A[o+56>>2]=r+131072,i=r>>>0<33423360}}if(Q=d+16|0,i)if(j)for(e=A[o+52>>2],r=A[o+56>>2],a=A[o+36>>2],i=A[o+48>>2],t=A[o+24>>2];;){i:if(!(r>>>0>131071))for(;;){if((0|e)<=0)break i;if(e=e-1|0,A[o+52>>2]=e,r=k[e+i|0]|r<<8,A[o+56>>2]=r,!(r>>>0<131072))break}if(U=A[t+((f=32767&r)<<2)>>2],r=(m(A[(R=a+(U<<3)|0)>>2],r>>>15|0)+f|0)-A[R+4>>2]|0,A[o+56>>2]=r,A[V+(N<<2)>>2]=U,U=1,(0|j)==(0|(N=N+1|0)))break}else U=1}(r=A[o+36>>2])&&(A[o+40>>2]=r,oa(r)),(r=A[o+24>>2])&&(A[o+28>>2]=r,oa(r)),(r=A[o+8>>2])&&(A[o+12>>2]=r,oa(r)),Q=o- -64|0,e=U;break e;case 10:j=r,d=i,Q=o=Q+-64|0,A[o+56>>2]=0,A[o+48>>2]=0,A[o+52>>2]=0,A[o+40>>2]=0,A[o+44>>2]=0,A[o+32>>2]=0,A[o+36>>2]=0,A[o+24>>2]=0,A[o+28>>2]=0,A[o+16>>2]=0,A[o+20>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0,D=o+8|0;i:{f:if(r=u[a+38>>1]){if(r>>>0<=511){if(i=A[a+8>>2],e=A[a+12>>2],f=A[a+20>>2],i>>>0<(t=(r=A[a+16>>2])+4|0)>>>0&(0|e)<=(0|(f=t>>>0<4?f+1|0:f))|(0|e)<(0|f))break f;r=r+A[a>>2]|0,n=k[0|r]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24,A[D+12>>2]=n,f=A[a+20>>2],f=(t=A[a+16>>2]+4|0)>>>0<4?f+1|0:f,A[a+16>>2]=t,A[a+20>>2]=f}else{if(!hb(1,D+12|0,a))break f;t=A[a+16>>2],f=A[a+20>>2],n=A[D+12>>2]}if(!((i=(r=A[a+8>>2])-t|0)>>>0<n>>>6>>>0&(0|(r=A[a+12>>2]-((r>>>0<t>>>0)+f|0)|0))<=0|(0|r)<0)){if(e=A[D>>2],(r=A[D+4>>2]-e>>2)>>>0<n>>>0?(ya(D,n-r|0),n=A[D+12>>2]):r>>>0<=n>>>0||(A[D+4>>2]=e+(n<<2)),i=1,!n)break i;for(t=A[a+16>>2],f=A[a+20>>2],G=A[D>>2],V=A[a+8>>2],T=A[a+12>>2],e=0;;){if(i=0,(0|f)>=(0|T)&t>>>0>=V>>>0|(0|f)>(0|T))break i;i=A[a>>2],W=k[i+t|0],_=(t=t+1|0)?f:f+1|0,A[a+16>>2]=t,f=_,A[a+20>>2]=f,r=W>>>2|0,h=0;t:{o:{b:{n:switch(0|(_=3&W)){case 0:break o;case 3:break n;default:break b}if(i=0,(r=r+e|0)>>>0>=n>>>0)break i;ra(G+(e<<2)|0,0,4+(252&W)|0),e=r;break t}for(;;){if((0|t)==(0|V)&(0|f)==(0|T))break f;if(n=k[i+t|0],f=(t=t+1|0)?f:f+1|0,A[a+16>>2]=t,A[a+20>>2]=f,r|=n<<(h<<3|6),(0|_)==(0|(h=h+1|0)))break}}A[G+(e<<2)>>2]=r}if(!((e=e+1|0)>>>0<(n=A[D+12>>2])>>>0))break}if(r=D+16|0,V=A[D>>2],i=A[D+16>>2],(e=A[D+20>>2]-i|0)>>>0<=262143?ya(r,65536-(e>>>2|0)|0):262144!=(0|e)&&(A[D+20>>2]=i+262144),e=A[(i=D+28|0)>>2],(t=A[D+32>>2]-e>>3)>>>0<n>>>0)ob(i,n-t|0),e=A[i>>2];else if(t>>>0>n>>>0&&(A[D+32>>2]=(n<<3)+e),!n)break f;for(_=A[r>>2],t=0,i=0;;){if(h=A[(f=V+(t<<2)|0)>>2],r=i,A[(D=(t<<3)+e|0)+4>>2]=r,A[D>>2]=h,(i=(f=A[f>>2])+r|0)>>>0>65536)break f;if(!(r>>>0>=i>>>0)){if(h=0,D=7&f)for(;A[_+(r<<2)>>2]=t,r=r+1|0,(0|D)!=(0|(h=h+1|0)););if(!(f-1>>>0<=6))for(;A[(f=_+(r<<2)|0)>>2]=t,A[f+28>>2]=t,A[f+24>>2]=t,A[f+20>>2]=t,A[f+16>>2]=t,A[f+12>>2]=t,A[f+8>>2]=t,A[f+4>>2]=t,(0|i)!=(0|(r=r+8|0)););}if((0|n)==(0|(t=t+1|0)))break}R=65536==(0|i)}}i=R}if(!(!i|(A[o+20>>2]?0:j))){i=0,Q=_=Q-16|0;i:{if(u[a+38>>1]<=511){if(e=A[a+8>>2],n=r=A[a+12>>2],f=A[a+20>>2],e>>>0<(t=(R=A[a+16>>2])+8|0)>>>0&(0|r)<=(0|(f=t>>>0<8?f+1|0:f))|(0|r)<(0|f))break i;R=R+A[a>>2]|0,r=k[0|R]|k[R+1|0]<<8|k[R+2|0]<<16|k[R+3|0]<<24,R=k[R+4|0]|k[R+5|0]<<8|k[R+6|0]<<16|k[R+7|0]<<24,A[a+16>>2]=t,A[a+20>>2]=f}else{if(!gb(1,_+8|0,a))break i;t=A[a+16>>2],f=A[a+20>>2],e=A[a+8>>2],n=A[a+12>>2],r=A[_+8>>2],R=A[_+12>>2]}if(V=e-t|0,!((0|(e=n-((e>>>0<t>>>0)+f|0)|0))==(0|R)&r>>>0>V>>>0|e>>>0<R>>>0||(f=f+R|0,f=(e=r+t|0)>>>0<r>>>0?f+1|0:f,A[a+16>>2]=e,A[a+20>>2]=f,(0|r)<=0))){e=A[a>>2]+t|0,A[o+48>>2]=e;f:if((f=k[0|(t=(a=r-1|0)+e|0)])>>>0<=63)A[o+52>>2]=a,r=63&k[0|t];else{t:switch((f>>>6|0)-1|0){case 0:if(r>>>0<2)break i;r=r-2|0,A[o+52>>2]=r,r=k[(r=r+e|0)+1|0]<<8&16128|k[0|r];break f;case 1:if(r>>>0<3)break i;r=r-3|0,A[o+52>>2]=r,r=k[(r=r+e|0)+1|0]<<8|k[r+2|0]<<16&4128768|k[0|r];break f;default:break t}r=r-4|0,A[o+52>>2]=r,r=1073741823&(k[0|(r=r+e|0)]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24)}A[o+56>>2]=r+262144,i=r>>>0<66846720}}if(Q=_+16|0,i)if(j)for(e=A[o+52>>2],r=A[o+56>>2],a=A[o+36>>2],i=A[o+48>>2],t=A[o+24>>2];;){i:if(!(r>>>0>262143))for(;;){if((0|e)<=0)break i;if(e=e-1|0,A[o+52>>2]=e,r=k[e+i|0]|r<<8,A[o+56>>2]=r,!(r>>>0<262144))break}if(U=A[t+((f=65535&r)<<2)>>2],r=(m(A[(R=a+(U<<3)|0)>>2],r>>>16|0)+f|0)-A[R+4>>2]|0,A[o+56>>2]=r,A[d+(N<<2)>>2]=U,U=1,(0|j)==(0|(N=N+1|0)))break}else U=1}(r=A[o+36>>2])&&(A[o+40>>2]=r,oa(r)),(r=A[o+24>>2])&&(A[o+28>>2]=r,oa(r)),(r=A[o+8>>2])&&(A[o+12>>2]=r,oa(r)),Q=o- -64|0,e=U;break e;case 11:j=r,V=i,Q=o=Q+-64|0,A[o+56>>2]=0,A[o+48>>2]=0,A[o+52>>2]=0,A[o+40>>2]=0,A[o+44>>2]=0,A[o+32>>2]=0,A[o+36>>2]=0,A[o+24>>2]=0,A[o+28>>2]=0,A[o+16>>2]=0,A[o+20>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0,d=o+8|0;i:{f:if(r=u[a+38>>1]){if(r>>>0<=511){if(i=A[a+8>>2],e=A[a+12>>2],f=A[a+20>>2],i>>>0<(t=(r=A[a+16>>2])+4|0)>>>0&(0|e)<=(0|(f=t>>>0<4?f+1|0:f))|(0|e)<(0|f))break f;r=r+A[a>>2]|0,n=k[0|r]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24,A[d+12>>2]=n,_=A[a+20>>2],_=(t=A[a+16>>2]+4|0)>>>0<4?_+1|0:_,A[a+16>>2]=t,f=_,A[a+20>>2]=f}else{if(!hb(1,d+12|0,a))break f;t=A[a+16>>2],f=A[a+20>>2],n=A[d+12>>2]}if(!((i=(r=A[a+8>>2])-t|0)>>>0<n>>>6>>>0&(0|(r=A[a+12>>2]-((r>>>0<t>>>0)+f|0)|0))<=0|(0|r)<0)){if(e=A[d>>2],(r=A[d+4>>2]-e>>2)>>>0<n>>>0?(ya(d,n-r|0),n=A[d+12>>2]):r>>>0<=n>>>0||(A[d+4>>2]=e+(n<<2)),i=1,!n)break i;for(t=A[a+16>>2],f=A[a+20>>2],W=A[d>>2],_=A[a+8>>2],D=A[a+12>>2],e=0;;){if(i=0,(0|f)>=(0|D)&t>>>0>=_>>>0|(0|f)>(0|D))break i;i=A[a>>2],T=k[i+t|0],f=(t=t+1|0)?f:f+1|0,A[a+16>>2]=t,A[a+20>>2]=f,r=T>>>2|0,h=0;t:{o:{b:{n:switch(0|(G=3&T)){case 0:break o;case 3:break n;default:break b}if(i=0,(r=r+e|0)>>>0>=n>>>0)break i;ra(W+(e<<2)|0,0,4+(252&T)|0),e=r;break t}for(;;){if((0|t)==(0|_)&(0|f)==(0|D))break f;if(n=k[i+t|0],f=(t=t+1|0)?f:f+1|0,A[a+16>>2]=t,A[a+20>>2]=f,r|=n<<(h<<3|6),(0|G)==(0|(h=h+1|0)))break}}A[W+(e<<2)>>2]=r}if(!((e=e+1|0)>>>0<(n=A[d+12>>2])>>>0))break}if(r=d+16|0,D=A[d>>2],i=A[d+16>>2],(e=A[d+20>>2]-i|0)>>>0<=1048575?ya(r,262144-(e>>>2|0)|0):1048576!=(0|e)&&(A[d+20>>2]=i- -1048576),e=A[(i=d+28|0)>>2],(t=A[d+32>>2]-e>>3)>>>0<n>>>0)ob(i,n-t|0),e=A[i>>2];else if(t>>>0>n>>>0&&(A[d+32>>2]=(n<<3)+e),!n)break f;for(_=A[r>>2],t=0,i=0;;){if(d=A[(f=D+(t<<2)|0)>>2],r=i,A[(h=(t<<3)+e|0)+4>>2]=r,A[h>>2]=d,(i=(f=A[f>>2])+r|0)>>>0>262144)break f;if(!(r>>>0>=i>>>0)){if(h=0,d=7&f)for(;A[_+(r<<2)>>2]=t,r=r+1|0,(0|d)!=(0|(h=h+1|0)););if(!(f-1>>>0<=6))for(;A[(f=_+(r<<2)|0)>>2]=t,A[f+28>>2]=t,A[f+24>>2]=t,A[f+20>>2]=t,A[f+16>>2]=t,A[f+12>>2]=t,A[f+8>>2]=t,A[f+4>>2]=t,(0|i)!=(0|(r=r+8|0)););}if((0|n)==(0|(t=t+1|0)))break}R=262144==(0|i)}}i=R}if(!(!i|(A[o+20>>2]?0:j))){i=0,Q=d=Q-16|0;i:{if(u[a+38>>1]<=511){if(e=A[a+8>>2],n=r=A[a+12>>2],_=A[a+20>>2],e>>>0<(t=(R=A[a+16>>2])+8|0)>>>0&(0|(f=_=t>>>0<8?_+1|0:_))>=(0|r)|(0|r)<(0|f))break i;R=R+A[a>>2]|0,r=k[0|R]|k[R+1|0]<<8|k[R+2|0]<<16|k[R+3|0]<<24,R=k[R+4|0]|k[R+5|0]<<8|k[R+6|0]<<16|k[R+7|0]<<24,A[a+16>>2]=t,A[a+20>>2]=f}else{if(!gb(1,d+8|0,a))break i;t=A[a+16>>2],f=A[a+20>>2],e=A[a+8>>2],n=A[a+12>>2],r=A[d+8>>2],R=A[d+12>>2]}if(_=e-t|0,!((0|(e=n-((e>>>0<t>>>0)+f|0)|0))==(0|R)&r>>>0>_>>>0|e>>>0<R>>>0||(f=f+R|0,f=(e=r+t|0)>>>0<r>>>0?f+1|0:f,A[a+16>>2]=e,A[a+20>>2]=f,(0|r)<=0))){e=A[a>>2]+t|0,A[o+48>>2]=e;f:if((f=k[0|(t=(a=r-1|0)+e|0)])>>>0<=63)A[o+52>>2]=a,r=63&k[0|t];else{t:switch((f>>>6|0)-1|0){case 0:if(r>>>0<2)break i;r=r-2|0,A[o+52>>2]=r,r=k[(r=r+e|0)+1|0]<<8&16128|k[0|r];break f;case 1:if(r>>>0<3)break i;r=r-3|0,A[o+52>>2]=r,r=k[(r=r+e|0)+1|0]<<8|k[r+2|0]<<16&4128768|k[0|r];break f;default:break t}r=r-4|0,A[o+52>>2]=r,r=1073741823&(k[0|(r=r+e|0)]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24)}A[o+56>>2]=r- -1048576,i=r>>>0<267386880}}if(Q=d+16|0,i)if(j)for(e=A[o+52>>2],r=A[o+56>>2],a=A[o+36>>2],i=A[o+48>>2],t=A[o+24>>2];;){i:if(!(r>>>0>1048575))for(;;){if((0|e)<=0)break i;if(e=e-1|0,A[o+52>>2]=e,r=k[e+i|0]|r<<8,A[o+56>>2]=r,!(r>>>0<1048576))break}if(U=A[t+((f=262143&r)<<2)>>2],r=(m(A[(R=a+(U<<3)|0)>>2],r>>>18|0)+f|0)-A[R+4>>2]|0,A[o+56>>2]=r,A[V+(N<<2)>>2]=U,U=1,(0|j)==(0|(N=N+1|0)))break}else U=1}(r=A[o+36>>2])&&(A[o+40>>2]=r,oa(r)),(r=A[o+24>>2])&&(A[o+28>>2]=r,oa(r)),(r=A[o+8>>2])&&(A[o+12>>2]=r,oa(r)),Q=o- -64|0,e=U;break e;case 12:j=r,V=i,Q=o=Q+-64|0,A[o+56>>2]=0,A[o+48>>2]=0,A[o+52>>2]=0,A[o+40>>2]=0,A[o+44>>2]=0,A[o+32>>2]=0,A[o+36>>2]=0,A[o+24>>2]=0,A[o+28>>2]=0,A[o+16>>2]=0,A[o+20>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0,d=o+8|0;i:{f:if(r=u[a+38>>1]){if(r>>>0<=511){if(i=A[a+8>>2],e=A[a+12>>2],_=A[a+20>>2],i>>>0<(t=(r=A[a+16>>2])+4|0)>>>0&(0|e)<=(0|(_=t>>>0<4?_+1|0:_))|(0|e)<(0|_))break f;r=r+A[a>>2]|0,n=k[0|r]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24,A[d+12>>2]=n,f=A[a+20>>2],f=(t=A[a+16>>2]+4|0)>>>0<4?f+1|0:f,A[a+16>>2]=t,A[a+20>>2]=f}else{if(!hb(1,d+12|0,a))break f;t=A[a+16>>2],f=A[a+20>>2],n=A[d+12>>2]}if(!((i=(r=A[a+8>>2])-t|0)>>>0<n>>>6>>>0&(0|(r=A[a+12>>2]-((r>>>0<t>>>0)+f|0)|0))<=0|(0|r)<0)){if(e=A[d>>2],(r=A[d+4>>2]-e>>2)>>>0<n>>>0?(ya(d,n-r|0),n=A[d+12>>2]):r>>>0<=n>>>0||(A[d+4>>2]=e+(n<<2)),i=1,!n)break i;for(t=A[a+16>>2],f=A[a+20>>2],W=A[d>>2],_=A[a+8>>2],D=A[a+12>>2],e=0;;){if(i=0,(0|f)>=(0|D)&t>>>0>=_>>>0|(0|f)>(0|D))break i;i=A[a>>2],T=k[i+t|0],f=(t=t+1|0)?f:f+1|0,A[a+16>>2]=t,A[a+20>>2]=f,r=T>>>2|0,h=0;t:{o:{b:{n:switch(0|(G=3&T)){case 0:break o;case 3:break n;default:break b}if(i=0,(r=r+e|0)>>>0>=n>>>0)break i;ra(W+(e<<2)|0,0,4+(252&T)|0),e=r;break t}for(;;){if((0|t)==(0|_)&(0|f)==(0|D))break f;if(n=k[i+t|0],f=(t=t+1|0)?f:f+1|0,A[a+16>>2]=t,A[a+20>>2]=f,r|=n<<(h<<3|6),(0|G)==(0|(h=h+1|0)))break}}A[W+(e<<2)>>2]=r}if(!((e=e+1|0)>>>0<(n=A[d+12>>2])>>>0))break}if(r=d+16|0,D=A[d>>2],i=A[d+16>>2],(e=A[d+20>>2]-i|0)>>>0<=2097151?ya(r,524288-(e>>>2|0)|0):2097152!=(0|e)&&(A[d+20>>2]=i+2097152),e=A[(i=d+28|0)>>2],(t=A[d+32>>2]-e>>3)>>>0<n>>>0)ob(i,n-t|0),e=A[i>>2];else if(t>>>0>n>>>0&&(A[d+32>>2]=(n<<3)+e),!n)break f;for(_=A[r>>2],t=0,i=0;;){if(d=A[(f=D+(t<<2)|0)>>2],r=i,A[(h=(t<<3)+e|0)+4>>2]=r,A[h>>2]=d,(i=(f=A[f>>2])+r|0)>>>0>524288)break f;if(!(r>>>0>=i>>>0)){if(h=0,d=7&f)for(;A[_+(r<<2)>>2]=t,r=r+1|0,(0|d)!=(0|(h=h+1|0)););if(!(f-1>>>0<=6))for(;A[(f=_+(r<<2)|0)>>2]=t,A[f+28>>2]=t,A[f+24>>2]=t,A[f+20>>2]=t,A[f+16>>2]=t,A[f+12>>2]=t,A[f+8>>2]=t,A[f+4>>2]=t,(0|i)!=(0|(r=r+8|0)););}if((0|n)==(0|(t=t+1|0)))break}R=524288==(0|i)}}i=R}if(!(!i|(A[o+20>>2]?0:j))){i=0,Q=_=Q-16|0;i:{if(u[a+38>>1]<=511){if(e=A[a+8>>2],n=r=A[a+12>>2],f=A[a+20>>2],e>>>0<(t=(R=A[a+16>>2])+8|0)>>>0&(0|r)<=(0|(f=t>>>0<8?f+1|0:f))|(0|r)<(0|f))break i;R=R+A[a>>2]|0,r=k[0|R]|k[R+1|0]<<8|k[R+2|0]<<16|k[R+3|0]<<24,R=k[R+4|0]|k[R+5|0]<<8|k[R+6|0]<<16|k[R+7|0]<<24,A[a+16>>2]=t,A[a+20>>2]=f}else{if(!gb(1,_+8|0,a))break i;t=A[a+16>>2],f=A[a+20>>2],e=A[a+8>>2],n=A[a+12>>2],r=A[_+8>>2],R=A[_+12>>2]}if(d=e-t|0,!((0|(e=n-((e>>>0<t>>>0)+f|0)|0))==(0|R)&r>>>0>d>>>0|e>>>0<R>>>0||(f=f+R|0,f=(e=r+t|0)>>>0<r>>>0?f+1|0:f,A[a+16>>2]=e,A[a+20>>2]=f,(0|r)<=0))){e=A[a>>2]+t|0,A[o+48>>2]=e;f:if((f=k[0|(t=(a=r-1|0)+e|0)])>>>0<=63)A[o+52>>2]=a,r=63&k[0|t];else{t:switch((f>>>6|0)-1|0){case 0:if(r>>>0<2)break i;r=r-2|0,A[o+52>>2]=r,r=k[(r=r+e|0)+1|0]<<8&16128|k[0|r];break f;case 1:if(r>>>0<3)break i;r=r-3|0,A[o+52>>2]=r,r=k[(r=r+e|0)+1|0]<<8|k[r+2|0]<<16&4128768|k[0|r];break f;default:break t}r=r-4|0,A[o+52>>2]=r,r=1073741823&(k[0|(r=r+e|0)]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24)}A[o+56>>2]=r+2097152,i=r>>>0<534773760}}if(Q=_+16|0,i)if(j)for(e=A[o+52>>2],r=A[o+56>>2],a=A[o+36>>2],i=A[o+48>>2],t=A[o+24>>2];;){i:if(!(r>>>0>2097151))for(;;){if((0|e)<=0)break i;if(e=e-1|0,A[o+52>>2]=e,r=k[e+i|0]|r<<8,A[o+56>>2]=r,!(r>>>0<2097152))break}if(U=A[t+((f=524287&r)<<2)>>2],r=(m(A[(R=a+(U<<3)|0)>>2],r>>>19|0)+f|0)-A[R+4>>2]|0,A[o+56>>2]=r,A[V+(N<<2)>>2]=U,U=1,(0|j)==(0|(N=N+1|0)))break}else U=1}(r=A[o+36>>2])&&(A[o+40>>2]=r,oa(r)),(r=A[o+24>>2])&&(A[o+28>>2]=r,oa(r)),(r=A[o+8>>2])&&(A[o+12>>2]=r,oa(r)),Q=o- -64|0,e=U;break e;case 17:e=Le(r,a,i);break e;case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:if(Q=e=Q+-64|0,A[e+56>>2]=0,A[e+48>>2]=0,A[e+52>>2]=0,A[e+40>>2]=0,A[e+44>>2]=0,A[e+32>>2]=0,A[e+36>>2]=0,A[e+24>>2]=0,A[e+28>>2]=0,A[e+16>>2]=0,A[e+20>>2]=0,A[e+8>>2]=0,A[e+12>>2]=0,!(!Ne(e+8|0,a)|(A[e+20>>2]?0:r))&&Me(e+8|0,a))if(r)for(f=A[e+52>>2],a=A[e+56>>2],R=A[e+36>>2],_=A[e+48>>2],o=A[e+24>>2];;){i:if(!(a>>>0>16383))for(;;){if((0|f)<=0)break i;if(f=f-1|0,A[e+52>>2]=f,a=k[f+_|0]|a<<8,A[e+56>>2]=a,!(a>>>0<16384))break}if(j=A[o+((t=4095&a)<<2)>>2],a=(m(A[(V=R+(j<<3)|0)>>2],a>>>12|0)+t|0)-A[V+4>>2]|0,A[e+56>>2]=a,A[(U<<2)+i>>2]=j,t=1,(0|(U=U+1|0))==(0|r))break}else t=1;(r=A[e+36>>2])&&(A[e+40>>2]=r,oa(r)),(r=A[e+24>>2])&&(A[e+28>>2]=r,oa(r)),(r=A[e+8>>2])&&(A[e+12>>2]=r,oa(r)),Q=e- -64|0,e=t;break e;case 13:case 14:case 15:case 16:break a;default:break e}e=Le(r,a,i)}t=e}return t}function Ec(r){var e,a=0,i=0,f=0,t=0,o=0,b=0,n=0,u=0,_=0,d=0,m=0,R=0;Q=e=Q-16|0;r:{e:{a:{i:{f:{t:{o:{b:{n:{if((r|=0)>>>0<=244){if(3&(a=(b=A[4298])>>>(i=(n=r>>>0<11?16:r+11&-8)>>>3|0)|0)){a=(r=(i=i+(1&~a)|0)<<3)+17232|0,f=A[r+17240>>2],(0|a)!=(0|(r=A[f+8>>2]))?(A[r+12>>2]=a,A[a+8>>2]=r):(m=17192,R=Vj(i)&b,A[m>>2]=R),r=f+8|0,a=i<<3,A[f+4>>2]=3|a,A[(a=a+f|0)+4>>2]=1|A[a+4>>2];break r}if((d=A[4300])>>>0>=n>>>0)break n;if(a){a=(r=(f=Qj(0-(r=(0-(r=2<<i)|r)&a<<i)&r))<<3)+17232|0,t=A[r+17240>>2],(0|a)!=(0|(r=A[t+8>>2]))?(A[r+12>>2]=a,A[a+8>>2]=r):(b=Vj(f)&b,A[4298]=b),A[t+4>>2]=3|n,f=(r=f<<3)-n|0,A[(i=t+n|0)+4>>2]=1|f,A[r+t>>2]=f,d&&(a=17232+(-8&d)|0,o=A[4303],(r=1<<(d>>>3))&b?r=A[a+8>>2]:(A[4298]=r|b,r=a),A[a+8>>2]=o,A[r+12>>2]=o,A[o+12>>2]=a,A[o+8>>2]=r),r=t+8|0,A[4303]=i,A[4300]=f;break r}if(!(_=A[4299]))break n;for(i=A[17496+(Qj(0-_&_)<<2)>>2],o=(-8&A[i+4>>2])-n|0,a=i;(r=A[a+16>>2])||(r=A[a+20>>2]);)o=(f=(a=(-8&A[r+4>>2])-n|0)>>>0<o>>>0)?a:o,i=f?r:i,a=r;if(u=A[i+24>>2],(0|(f=A[i+12>>2]))!=(0|i)){r=A[i+8>>2],A[r+12>>2]=f,A[f+8>>2]=r;break e}if(!(r=A[(a=i+20|0)>>2])){if(!(r=A[i+16>>2]))break b;a=i+16|0}for(;t=a,f=r,(r=A[(a=r+20|0)>>2])||(a=f+16|0,r=A[f+16>>2]););A[t>>2]=0;break e}if(n=-1,!(r>>>0>4294967231)&&(n=-8&(r=r+11|0),_=A[4299])){o=0-n|0,b=0,n>>>0<256||(b=31,n>>>0>16777215||(b=62+((n>>>38-(r=j(r>>>8|0))&1)-(r<<1)|0)|0));A:{k:{if(a=A[17496+(b<<2)>>2])for(r=0,i=n<<(31!=(0|b)?25-(b>>>1|0):0);;){if(!((t=(-8&A[a+4>>2])-n|0)>>>0>=o>>>0||(f=a,o=t,t))){o=0,r=a;break k}if(t=A[a+20>>2],a=A[16+((i>>>29&4)+a|0)>>2],r=t?(0|t)==(0|a)?r:t:r,i<<=1,!a)break}else r=0;if(!(r|f)){if(f=0,!(r=(0-(r=2<<b)|r)&_))break n;r=A[17496+(Qj(r&0-r)<<2)>>2]}if(!r)break A}for(;o=(i=(a=(-8&A[r+4>>2])-n|0)>>>0<o>>>0)?a:o,f=i?r:f,r=(a=A[r+16>>2])||A[r+20>>2];);}if(!(!f|A[4300]-n>>>0<=o>>>0)){if(b=A[f+24>>2],(0|f)!=(0|(i=A[f+12>>2]))){r=A[f+8>>2],A[r+12>>2]=i,A[i+8>>2]=r;break a}if(!(r=A[(a=f+20|0)>>2])){if(!(r=A[f+16>>2]))break o;a=f+16|0}for(;t=a,i=r,(r=A[(a=r+20|0)>>2])||(a=i+16|0,r=A[i+16>>2]););A[t>>2]=0;break a}}}if((r=A[4300])>>>0>=n>>>0){f=A[4303],(a=r-n|0)>>>0>=16?(A[(i=f+n|0)+4>>2]=1|a,A[r+f>>2]=a,A[f+4>>2]=3|n):(A[f+4>>2]=3|r,A[(r=r+f|0)+4>>2]=1|A[r+4>>2],i=0,a=0),A[4300]=a,A[4303]=i,r=f+8|0;break r}if((u=A[4301])>>>0>n>>>0){a=u-n|0,A[4301]=a,r=(i=A[4304])+n|0,A[4304]=r,A[r+4>>2]=1|a,A[i+4>>2]=3|n,r=i+8|0;break r}if(r=0,_=n+47|0,A[4416]?i=A[4418]:(A[4419]=-1,A[4420]=-1,A[4417]=4096,A[4418]=4096,A[4416]=e+12&-16^1431655768,A[4421]=0,A[4409]=0,i=4096),(a=(t=_+i|0)&(o=0-i|0))>>>0<=n>>>0)break r;if((f=A[4408])&&f>>>0<(b=(i=A[4406])+a|0)>>>0|i>>>0>=b>>>0)break r;n:{if(!(4&k[17636])){A:{k:{c:{u:{if(f=A[4304])for(r=17640;;){if((i=A[r>>2])>>>0<=f>>>0&f>>>0<i+A[r+4>>2]>>>0)break u;if(!(r=A[r+8>>2]))break}if(-1==(0|(i=zb(0))))break A;if(b=a,(r=(f=A[4417])-1|0)&i&&(b=(a-i|0)+(r+i&0-f)|0),b>>>0<=n>>>0)break A;if((f=A[4408])&&f>>>0<(o=(r=A[4406])+b|0)>>>0|r>>>0>=o>>>0)break A;if((0|i)!=(0|(r=zb(b))))break c;break n}if((0|(i=zb(b=o&t-u)))==(A[r>>2]+A[r+4>>2]|0))break k;r=i}if(-1==(0|r))break A;if(n+48>>>0<=b>>>0){i=r;break n}if(-1==(0|zb(i=(i=A[4418])+(_-b|0)&0-i)))break A;b=i+b|0,i=r;break n}if(-1!=(0|i))break n}A[4409]=4|A[4409]}if(-1==(0|(i=zb(a)))|-1==(0|(r=zb(0)))|r>>>0<=i>>>0)break i;if((b=r-i|0)>>>0<=n+40>>>0)break i}r=A[4406]+b|0,A[4406]=r,r>>>0>s[4407]&&(A[4407]=r);n:{if(t=A[4304]){for(r=17640;;){if(((f=A[r>>2])+(a=A[r+4>>2])|0)==(0|i))break n;if(!(r=A[r+8>>2]))break}break t}for((r=A[4302])>>>0<=i>>>0&&r||(A[4302]=i),r=0,A[4411]=b,A[4410]=i,A[4306]=-1,A[4307]=A[4416],A[4413]=0;a=(f=r<<3)+17232|0,A[f+17240>>2]=a,A[f+17244>>2]=a,32!=(0|(r=r+1|0)););a=(f=b-40|0)-(r=i+8&7?-8-i&7:0)|0,A[4301]=a,r=r+i|0,A[4304]=r,A[r+4>>2]=1|a,A[4+(i+f|0)>>2]=40,A[4305]=A[4420];break f}if(8&k[r+12|0]|f>>>0>t>>>0|i>>>0<=t>>>0)break t;A[r+4>>2]=a+b,i=(r=t+8&7?-8-t&7:0)+t|0,A[4304]=i,r=(a=A[4301]+b|0)-r|0,A[4301]=r,A[i+4>>2]=1|r,A[4+(a+t|0)>>2]=40,A[4305]=A[4420];break f}f=0;break e}i=0;break a}s[4302]>i>>>0&&(A[4302]=i),a=i+b|0,r=17640;t:{o:{b:{n:{A:{k:{for(;;){if((0|a)!=A[r>>2]){if(r=A[r+8>>2])continue;break k}break}if(!(8&k[r+12|0]))break A}for(r=17640;;){if((a=A[r>>2])>>>0<=t>>>0&&(o=a+A[r+4>>2]|0)>>>0>t>>>0)break n;r=A[r+8>>2]}}if(A[r>>2]=i,A[r+4>>2]=A[r+4>>2]+b,A[(_=(i+8&7?-8-i&7:0)+i|0)+4>>2]=3|n,r=(b=a+(a+8&7?-8-a&7:0)|0)-(u=n+_|0)|0,(0|t)==(0|b)){A[4304]=u,r=A[4301]+r|0,A[4301]=r,A[u+4>>2]=1|r;break o}if(A[4303]==(0|b)){A[4303]=u,r=A[4300]+r|0,A[4300]=r,A[u+4>>2]=1|r,A[r+u>>2]=r;break o}if(1==(3&(o=A[b+4>>2]))){t=-8&o;A:if(o>>>0<=255){if(f=A[b+8>>2],a=o>>>3|0,(0|(i=A[b+12>>2]))==(0|f)){m=17192,R=A[4298]&Vj(a),A[m>>2]=R;break A}A[f+12>>2]=i,A[i+8>>2]=f}else{if(n=A[b+24>>2],(0|b)==(0|(i=A[b+12>>2])))if((a=A[(o=b+20|0)>>2])||(a=A[(o=b+16|0)>>2])){for(;f=o,(a=A[(o=(i=a)+20|0)>>2])||(o=i+16|0,a=A[i+16>>2]););A[f>>2]=0}else i=0;else a=A[b+8>>2],A[a+12>>2]=i,A[i+8>>2]=a;if(n){f=A[b+28>>2];k:{if(A[(a=17496+(f<<2)|0)>>2]==(0|b)){if(A[a>>2]=i,i)break k;m=17196,R=A[4299]&Vj(f),A[m>>2]=R;break A}if(A[n+(A[n+16>>2]==(0|b)?16:20)>>2]=i,!i)break A}A[i+24>>2]=n,(a=A[b+16>>2])&&(A[i+16>>2]=a,A[a+24>>2]=i),(a=A[b+20>>2])&&(A[i+20>>2]=a,A[a+24>>2]=i)}}o=A[(b=t+b|0)+4>>2],r=r+t|0}if(A[b+4>>2]=-2&o,A[u+4>>2]=1|r,A[r+u>>2]=r,r>>>0<=255){a=17232+(-8&r)|0,(i=A[4298])&(r=1<<(r>>>3))?r=A[a+8>>2]:(A[4298]=r|i,r=a),A[a+8>>2]=u,A[r+12>>2]=u,A[u+12>>2]=a,A[u+8>>2]=r;break o}if(o=31,r>>>0<=16777215&&(o=62+((r>>>38-(a=j(r>>>8|0))&1)-(a<<1)|0)|0),A[u+28>>2]=o,A[u+16>>2]=0,A[u+20>>2]=0,a=17496+(o<<2)|0,(f=A[4299])&(i=1<<o)){for(o=r<<(31!=(0|o)?25-(o>>>1|0):0),i=A[a>>2];;){if(a=i,(-8&A[i+4>>2])==(0|r))break b;if(i=o>>>29|0,o<<=1,!(i=A[(f=(4&i)+a|0)+16>>2]))break}A[f+16>>2]=u}else A[4299]=i|f,A[a>>2]=u;A[u+24>>2]=a,A[u+12>>2]=u,A[u+8>>2]=u;break o}for(a=(f=b-40|0)-(r=i+8&7?-8-i&7:0)|0,A[4301]=a,r=r+i|0,A[4304]=r,A[r+4>>2]=1|a,A[4+(i+f|0)>>2]=40,A[4305]=A[4420],A[(f=(r=(o+(o-39&7?39-o&7:0)|0)-47|0)>>>0<t+16>>>0?t:r)+4>>2]=27,r=A[4413],A[f+16>>2]=A[4412],A[f+20>>2]=r,r=A[4411],A[f+8>>2]=A[4410],A[f+12>>2]=r,A[4412]=f+8,A[4411]=b,A[4410]=i,A[4413]=0,r=f+24|0;A[r+4>>2]=7,a=r+8|0,r=r+4|0,a>>>0<o>>>0;);if((0|f)==(0|t))break f;if(A[f+4>>2]=-2&A[f+4>>2],o=f-t|0,A[t+4>>2]=1|o,A[f>>2]=o,o>>>0<=255){a=17232+(-8&o)|0,(i=A[4298])&(r=1<<(o>>>3))?r=A[a+8>>2]:(A[4298]=r|i,r=a),A[a+8>>2]=t,A[r+12>>2]=t,A[t+12>>2]=a,A[t+8>>2]=r;break f}if(r=31,o>>>0<=16777215&&(r=62+((o>>>38-(r=j(o>>>8|0))&1)-(r<<1)|0)|0),A[t+28>>2]=r,A[t+16>>2]=0,A[t+20>>2]=0,a=17496+(r<<2)|0,(f=A[4299])&(i=1<<r)){for(r=o<<(31!=(0|r)?25-(r>>>1|0):0),f=A[a>>2];;){if((0|o)==(-8&A[(a=f)+4>>2]))break t;if(i=r>>>29|0,r<<=1,!(f=A[(i=(4&i)+a|0)+16>>2]))break}A[i+16>>2]=t}else A[4299]=i|f,A[a>>2]=t;A[t+24>>2]=a,A[t+12>>2]=t,A[t+8>>2]=t;break f}r=A[a+8>>2],A[r+12>>2]=u,A[a+8>>2]=u,A[u+24>>2]=0,A[u+12>>2]=a,A[u+8>>2]=r}r=_+8|0;break r}r=A[a+8>>2],A[r+12>>2]=t,A[a+8>>2]=t,A[t+24>>2]=0,A[t+12>>2]=a,A[t+8>>2]=r}if(!((r=A[4301])>>>0<=n>>>0)){a=r-n|0,A[4301]=a,r=(i=A[4304])+n|0,A[4304]=r,A[r+4>>2]=1|a,A[i+4>>2]=3|n,r=i+8|0;break r}}A[3992]=48,r=0;break r}a:if(b){a=A[f+28>>2];i:{if(A[(r=17496+(a<<2)|0)>>2]==(0|f)){if(A[r>>2]=i,i)break i;_=Vj(a)&_,A[4299]=_;break a}if(A[b+(A[b+16>>2]==(0|f)?16:20)>>2]=i,!i)break a}A[i+24>>2]=b,(r=A[f+16>>2])&&(A[i+16>>2]=r,A[r+24>>2]=i),(r=A[f+20>>2])&&(A[i+20>>2]=r,A[r+24>>2]=i)}a:if(o>>>0<=15)r=o+n|0,A[f+4>>2]=3|r,A[(r=r+f|0)+4>>2]=1|A[r+4>>2];else if(A[f+4>>2]=3|n,A[(t=f+n|0)+4>>2]=1|o,A[t+o>>2]=o,o>>>0<=255)a=17232+(-8&o)|0,(i=A[4298])&(r=1<<(o>>>3))?r=A[a+8>>2]:(A[4298]=r|i,r=a),A[a+8>>2]=t,A[r+12>>2]=t,A[t+12>>2]=a,A[t+8>>2]=r;else{r=31,o>>>0<=16777215&&(r=62+((o>>>38-(r=j(o>>>8|0))&1)-(r<<1)|0)|0),A[t+28>>2]=r,A[t+16>>2]=0,A[t+20>>2]=0,a=17496+(r<<2)|0;i:{if((i=1<<r)&_){for(r=o<<(31!=(0|r)?25-(r>>>1|0):0),n=A[a>>2];;){if((-8&A[(a=n)+4>>2])==(0|o))break i;if(i=r>>>29|0,r<<=1,!(n=A[(i=(4&i)+a|0)+16>>2]))break}A[i+16>>2]=t}else A[4299]=i|_,A[a>>2]=t;A[t+24>>2]=a,A[t+12>>2]=t,A[t+8>>2]=t;break a}r=A[a+8>>2],A[r+12>>2]=t,A[a+8>>2]=t,A[t+24>>2]=0,A[t+12>>2]=a,A[t+8>>2]=r}r=f+8|0;break r}e:if(u){a=A[i+28>>2];a:{if(A[(r=17496+(a<<2)|0)>>2]==(0|i)){if(A[r>>2]=f,f)break a;m=17196,R=Vj(a)&_,A[m>>2]=R;break e}if(A[u+(A[u+16>>2]==(0|i)?16:20)>>2]=f,!f)break e}A[f+24>>2]=u,(r=A[i+16>>2])&&(A[f+16>>2]=r,A[r+24>>2]=f),(r=A[i+20>>2])&&(A[f+20>>2]=r,A[r+24>>2]=f)}o>>>0<=15?(r=o+n|0,A[i+4>>2]=3|r,A[(r=r+i|0)+4>>2]=1|A[r+4>>2]):(A[i+4>>2]=3|n,A[(f=i+n|0)+4>>2]=1|o,A[f+o>>2]=o,d&&(a=17232+(-8&d)|0,t=A[4303],(r=1<<(d>>>3))&b?r=A[a+8>>2]:(A[4298]=r|b,r=a),A[a+8>>2]=t,A[r+12>>2]=t,A[t+12>>2]=a,A[t+8>>2]=r),A[4303]=f,A[4300]=o),r=i+8|0}return Q=e+16|0,0|r}function ce(r,e){var a,i=0,f=0,t=0,o=0,n=0,u=0,s=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0;Q=a=Q-32|0,j=pa(12),A[j+8>>2]=0,A[j+4>>2]=e,A[j>>2]=0,e=N=j+12|0;r:{e:{a:{for(;;){if(G=A[(e=e-12|0)+8>>2],_=A[e+4>>2],V=A[e>>2]){if((0|G)>1e3)break r;A[a+24>>2]=0,A[a+16>>2]=0,A[a+20>>2]=0,f=1,i=A[r>>2],t=A[i+8>>2];i:if(!((0|(u=A[i+12>>2]))<=(0|(n=A[i+20>>2]))&(o=A[i+16>>2])>>>0>=t>>>0|(0|n)>(0|u))){if(t=k[o+A[i>>2]|0],u=i,i=n,i=(o=o+1|0)?i:i+1|0,A[u+16>>2]=o,A[u+20>>2]=i,Cc(a+16|0,t),t){if(i=A[r>>2],h=Dc(a+16|0),D=A[i+8>>2],n=A[i+12>>2],u=A[i+20>>2],(0|n)<=(0|(u=(d=(o=A[i+16>>2])+t|0)>>>0<t>>>0?u+1|0:u))&d>>>0>D>>>0|(0|n)<(0|u))break i;qa(h,o+A[i>>2]|0,t),f=A[i+20>>2],f=(o=t)>>>0>(t=t+A[i+16>>2]|0)>>>0?f+1|0:f,A[i+16>>2]=t,A[i+20>>2]=f}_=pa(24),A[(i=_)+4>>2]=0,A[i+8>>2]=0,A[(i=i+16|0)>>2]=0,A[i+4>>2]=0,A[_>>2]=_+4,A[_+12>>2]=i,Q=t=Q-32|0;f:if((0|(W=nb(u=V+12|0,i=a+16|0)))!=(0|(s=V+16|0)))_&&(Ra(_+12|0,A[_+16>>2]),Qa(_,A[_+4>>2]),oa(_));else{A[t+16>>2]=i;t:{o:{b:if(f=A[u+4>>2]){for(h=(n=(o=k[i+11|0])<<24>>24<0)?A[i>>2]:i,n=n?A[i+4>>2]:o;;){n:{A:{k:{c:{u:if(d=(D=(f=(o=(f=k[(i=f)+27|0])<<24>>24<0)?A[i+20>>2]:f)>>>0<n>>>0)?f:n){if(!(U=Fa(h,o=o?A[i+16>>2]:i+16|0,d))){if(f>>>0>n>>>0)break u;break c}if((0|U)>=0)break c}else if(f>>>0<=n>>>0)break k;if(o=i,f=A[i>>2])continue;break b}if(f=Fa(o,h,d))break A}if(D)break n;break o}if((0|f)>=0)break o}if(!(f=A[i+4>>2]))break}o=i+4|0}else i=o=u+4|0;h=(f=pa(32))+16|0,n=A[t+16>>2],b[n+11|0]>=0?(D=A[n+4>>2],A[h>>2]=A[n>>2],A[h+4>>2]=D,A[h+8>>2]=A[n+8>>2]):za(h,A[n>>2],A[n+4>>2]),A[f+8>>2]=i,A[f>>2]=0,A[f+4>>2]=0,A[f+28>>2]=0,A[o>>2]=f,i=f,(n=A[A[u>>2]>>2])&&(A[u>>2]=n,i=A[o>>2]),Sb(A[u+4>>2],i),A[u+8>>2]=A[u+8>>2]+1,i=1;break t}f=i,i=0}if(b[t+28|0]=i,A[t+24>>2]=f,f=A[t+24>>2],i=A[f+28>>2],A[f+28>>2]=_,!i)break f;Ra(i+12|0,A[i+16>>2]),Qa(i,A[i+4>>2]),oa(i)}Q=t+32|0,f=(0|s)!=(0|W)}if(b[a+27|0]<0&&oa(A[a+16>>2]),f)break r}if(!_)break r;if(A[a+16>>2]=0,!Bb(1,a+16|0,A[r>>2]))break r;if(U=0,Z=A[a+16>>2])for(;;){f=0,Q=s=Q-32|0,A[s+24>>2]=0,A[s+16>>2]=0,A[s+20>>2]=0,i=A[r>>2],o=A[i+8>>2];i:{f:{t:if(!((0|(u=A[i+12>>2]))<=(0|(n=A[i+20>>2]))&(t=A[i+16>>2])>>>0>=o>>>0|(0|n)>(0|u))){if(o=k[t+A[i>>2]|0],u=i,i=n,i=(t=t+1|0)?i:i+1|0,A[u+16>>2]=t,A[u+20>>2]=i,Cc(s+16|0,o),o){if(t=A[r>>2],h=Dc(s+16|0),D=A[t+8>>2],n=A[t+12>>2],i=A[t+20>>2],(d=(u=A[t+16>>2])+o|0)>>>0>D>>>0&(0|(i=d>>>0<o>>>0?i+1|0:i))>=(0|n)|(0|i)>(0|n))break t;qa(h,u+A[t>>2]|0,o),i=A[t+20>>2],i=(n=o)>>>0>(o=o+A[t+16>>2]|0)>>>0?i+1|0:i,A[t+16>>2]=o,A[t+20>>2]=i}if(A[s+12>>2]=0,Bb(1,s+12|0,A[r>>2])&&(o=A[s+12>>2])&&(t=A[r>>2],n=(i=A[t+8>>2])-(u=A[t+16>>2])|0,!((0|(i=A[t+12>>2]-(A[t+20>>2]+(i>>>0<u>>>0)|0)|0))<=0&o>>>0>n>>>0|(0|i)<0))){if(A[s+8>>2]=0,A[s>>2]=0,A[s+4>>2]=0,(0|o)<0)break f;f=pa(o),A[s>>2]=f,i=f+o|0,A[s+8>>2]=i,R=ra(f,0,o),A[s+4>>2]=i,F=u=A[t+12>>2],D=A[t+8>>2],i=A[t+20>>2],W=n=o+(d=A[t+16>>2])|0,h=i=n>>>0<o>>>0?i+1|0:i;o:{if((0|i)<=(0|u)&n>>>0<=D>>>0|(0|i)<(0|u)){if(qa(R,A[t>>2]+d|0,o),f=A[t+20>>2],f=(i=o+A[t+16>>2]|0)>>>0<o>>>0?f+1|0:f,A[t+16>>2]=i,A[t+20>>2]=f,Q=u=Q-48|0,(0|(t=nb(_,s+16|0)))!=(_+4|0)){if(i=A[t+4>>2])for(;f=i,i=A[i>>2];);else for(i=t;f=A[i+8>>2],o=A[f>>2]!=(0|i),i=f,o;);(0|t)==A[_>>2]&&(A[_>>2]=f),A[_+8>>2]=A[_+8>>2]-1,o=A[_+4>>2];b:{n:{if(n=t,t=A[(f=t)>>2]){if(!(i=A[n+4>>2]))break n;for(;f=i,i=A[i>>2];);}if(!(t=A[f+4>>2])){t=0,d=1;break b}}A[t+8>>2]=A[f+8>>2],d=0}R=A[f+8>>2];b:if((0|f)!=(0|(i=A[R>>2])))A[R+4>>2]=t;else{if(A[R>>2]=t,(0|f)==(0|o)){i=0,o=t;break b}i=A[R+4>>2]}T=!k[f+12|0],(0|f)!=(0|n)&&(R=A[n+8>>2],A[f+8>>2]=R,A[R+(((0|n)!=A[A[n+8>>2]>>2])<<2)>>2]=f,R=A[n>>2],A[f>>2]=R,A[R+8>>2]=f,R=A[n+4>>2],A[f+4>>2]=R,R&&(A[R+8>>2]=f),b[f+12|0]=k[n+12|0],o=(0|o)==(0|n)?f:o);b:if(!(T|!o)){if(d)for(;;){t=k[i+12|0];n:{if(f=A[i+8>>2],A[f>>2]!=(0|i)){t||(b[i+12|0]=1,b[f+12|0]=0,t=A[f+4>>2],d=A[t>>2],A[f+4>>2]=d,d&&(A[d+8>>2]=f),A[t+8>>2]=A[f+8>>2],d=A[f+8>>2],A[(((0|f)!=A[d>>2])<<2)+d>>2]=t,A[t>>2]=f,A[f+8>>2]=t,f=i,o=(0|(i=A[i>>2]))==(0|o)?f:o,i=A[i+4>>2]);A:{k:{f=A[i>>2];c:{if(k[f+12|0]||!f){if(t=A[i+4>>2],!k[t+12|0]&&t)break c;if(b[i+12|0]=0,(0|o)!=(0|(i=A[i+8>>2]))){if(k[i+12|0])break n}else i=o;b[i+12|0]=1;break b}if(!(t=A[i+4>>2]))break k}if(!k[t+12|0]){f=i;break A}}b[f+12|0]=1,b[i+12|0]=0,t=A[f+4>>2],A[i>>2]=t,t&&(A[t+8>>2]=i),A[f+8>>2]=A[i+8>>2],t=A[i+8>>2],A[((A[t>>2]!=(0|i))<<2)+t>>2]=f,A[f+4>>2]=i,A[i+8>>2]=f,t=i}i=A[f+8>>2],b[f+12|0]=k[i+12|0],b[i+12|0]=1,b[t+12|0]=1,f=A[i+4>>2],t=A[f>>2],A[i+4>>2]=t,t&&(A[t+8>>2]=i),A[f+8>>2]=A[i+8>>2],t=A[i+8>>2],A[(((0|i)!=A[t>>2])<<2)+t>>2]=f,A[f>>2]=i,A[i+8>>2]=f;break b}t||(b[i+12|0]=1,b[f+12|0]=0,t=A[i+4>>2],A[f>>2]=t,t&&(A[t+8>>2]=f),A[i+8>>2]=A[f+8>>2],t=A[f+8>>2],A[(((0|f)!=A[t>>2])<<2)+t>>2]=i,A[i+4>>2]=f,A[f+8>>2]=i,o=(0|f)==(0|o)?i:o,i=A[f>>2]);A:if(!(t=A[i>>2])|k[t+12|0]){if(f=A[i+4>>2],k[f+12|0]||!f){if(b[i+12|0]=0,(0|(i=A[i+8>>2]))!=(0|o)&&k[i+12|0])break n;b[i+12|0]=1;break b}if(t){if(!k[t+12|0]){f=i;break A}f=A[i+4>>2]}b[f+12|0]=1,b[i+12|0]=0,t=A[f>>2],A[i+4>>2]=t,t&&(A[t+8>>2]=i),A[f+8>>2]=A[i+8>>2],t=A[i+8>>2],A[((A[t>>2]!=(0|i))<<2)+t>>2]=f,A[f>>2]=i,A[i+8>>2]=f,t=i}else f=i;i=A[f+8>>2],b[f+12|0]=k[i+12|0],b[i+12|0]=1,b[t+12|0]=1,f=A[i>>2],t=A[f+4>>2],A[i>>2]=t,t&&(A[t+8>>2]=i),A[f+8>>2]=A[i+8>>2],t=A[i+8>>2],A[(((0|i)!=A[t>>2])<<2)+t>>2]=f,A[f+4>>2]=i,A[i+8>>2]=f;break b}f=i,i=A[i+8>>2],i=A[(((0|f)==A[i>>2])<<2)+i>>2]}b[t+12|0]=1}(i=A[n+28>>2])&&(A[n+32>>2]=i,oa(i)),b[n+27|0]<0&&oa(A[n+16>>2]),oa(n)}A[u+8>>2]=0,A[u>>2]=0,A[u+4>>2]=0,o=(i=A[s+4>>2])-(f=A[s>>2])|0,t=0;b:{n:{if((0|i)!=(0|f)){if((0|o)<0)break n;n=(i=ra(t=pa(o),0,o))+o|0,A[u+8>>2]=n,A[u+4>>2]=n,A[u>>2]=i,i=f}qa(t,i,o),b[s+27|0]>=0?(A[u+24>>2]=A[s+24>>2],i=A[s+20>>2],A[u+16>>2]=A[s+16>>2],A[u+20>>2]=i):za(u+16|0,A[s+16>>2],A[s+20>>2]),ae(u+28|0,u),i=o=u+16|0;A:{k:{c:if(f=A[_+4>>2]){for(d=(n=(t=k[i+11|0])<<24>>24<0)?A[i>>2]:i,n=n?A[i+4>>2]:t;;){u:{s:{p:{_:{l:if(T=(R=(f=(t=(f=k[(i=f)+27|0])<<24>>24<0)?A[i+20>>2]:f)>>>0<n>>>0)?f:n){if(!(B=Fa(d,t=t?A[i+16>>2]:i+16|0,T))){if(f>>>0>n>>>0)break l;break _}if((0|B)>=0)break _}else if(f>>>0<=n>>>0)break p;if(t=i,f=A[i>>2])continue;break c}if(f=Fa(t,d,T))break s}if(R)break u;break k}if((0|f)>=0)break k}if(!(f=A[i+4>>2]))break}t=i+4|0}else i=t=_+4|0;f=pa(40),A[f+24>>2]=A[o+8>>2],n=A[o+4>>2],A[f+16>>2]=A[o>>2],A[f+20>>2]=n,A[o>>2]=0,A[o+4>>2]=0,A[o+8>>2]=0,ae(f+28|0,o+12|0),A[f+8>>2]=i,A[f>>2]=0,A[f+4>>2]=0,A[t>>2]=f,i=f,(o=A[A[_>>2]>>2])&&(A[_>>2]=o,i=A[t>>2]),Sb(A[_+4>>2],i),A[_+8>>2]=A[_+8>>2]+1,i=1;break A}f=i,i=0}b[u+44|0]=i,A[u+40>>2]=f,(i=A[u+28>>2])&&(A[u+32>>2]=i,oa(i)),b[u+27|0]<0&&oa(A[u+16>>2]),(i=A[u>>2])&&(A[u+4>>2]=i,oa(i)),Q=u+48|0;break b}sa(),v()}if(!(f=A[s>>2]))break o}A[s+4>>2]=f,oa(f)}f=(0|h)<=(0|F)&D>>>0>=W>>>0|(0|h)<(0|F)}}b[s+27|0]<0&&oa(A[s+16>>2]),Q=s+32|0;break i}sa(),v()}if(!f)break r;if((0|Z)==(0|(U=U+1|0)))break}if(A[a+12>>2]=0,!Bb(1,a+12|0,A[r>>2]))break r;if(i=A[r>>2],(u=(t=A[i+8>>2])-(o=A[i+16>>2])|0)>>>0<(f=A[a+12>>2])>>>0&(0|(i=A[i+12>>2]-(A[i+20>>2]+(t>>>0<o>>>0)|0)|0))<=0|(0|i)<0)break r;if(f)for(U=0,u=!!(0|V)+G|0;;){if(e>>>0<N>>>0)A[e+8>>2]=u,A[e+4>>2]=0,A[e>>2]=_,e=e+12|0,f=A[a+12>>2];else{if((e=(n=(0|(i=e-j|0))/12|0)+1|0)>>>0>=357913942)break a;if(o=(t=(N-j|0)/12|0)<<1,t=t>>>0>=178956970?357913941:e>>>0<o>>>0?o:e){if(t>>>0>=357913942)break e;o=pa(m(t,12))}else o=0;e=o+m(n,12)|0,A[e+8>>2]=u,A[e+4>>2]=0,A[e>>2]=_,i=va(e+m((0|i)/-12|0,12)|0,j,i),N=o+m(t,12)|0,e=e+12|0,j&&oa(j),j=i}if(!((U=U+1|0)>>>0<f>>>0))break}if((0|e)==(0|j))break}I=1;break r}sa(),v()}wa(),v()}return j&&oa(j),Q=a+32|0,I}function te(r,e,a,i,f){var t,o=0,u=0,_=0,d=0,m=0,R=0,h=0,j=0,D=0;Q=t=Q-32|0,A[e+32>>2]=i,A[e+40>>2]=a,A[e+4>>2]=f,nc(r,i,t+16|0);r:if(!A[r>>2])if(b[r+15|0]<0&&oa(A[r+4>>2]),i=k[t+23|0],(0|M[A[A[e>>2]+8>>2]](e))==(0|i))if(a=k[t+21|0],b[e+36|0]=a,f=k[t+22|0],b[e+37|0]=f,(a-3&255)>>>0<=253)e=pa(32),b[e+22|0]=0,a=k[1427]|k[1428]<<8|k[1429]<<16|k[1430]<<24,i=k[1423]|k[1424]<<8|k[1425]<<16|k[1426]<<24,b[e+14|0]=i,b[e+15|0]=i>>>8,b[e+16|0]=i>>>16,b[e+17|0]=i>>>24,b[e+18|0]=a,b[e+19|0]=a>>>8,b[e+20|0]=a>>>16,b[e+21|0]=a>>>24,a=k[1421]|k[1422]<<8|k[1423]<<16|k[1424]<<24,i=k[1417]|k[1418]<<8|k[1419]<<16|k[1420]<<24,b[e+8|0]=i,b[e+9|0]=i>>>8,b[e+10|0]=i>>>16,b[e+11|0]=i>>>24,b[e+12|0]=a,b[e+13|0]=a>>>8,b[e+14|0]=a>>>16,b[e+15|0]=a>>>24,a=k[1413]|k[1414]<<8|k[1415]<<16|k[1416]<<24,i=k[1409]|k[1410]<<8|k[1411]<<16|k[1412]<<24,b[0|e]=i,b[e+1|0]=i>>>8,b[e+2|0]=i>>>16,b[e+3|0]=i>>>24,b[e+4|0]=a,b[e+5|0]=a>>>8,b[e+6|0]=a>>>16,b[e+7|0]=a>>>24,A[r>>2]=-5,za(r+4|0,e,22),oa(e);else if(2!=(0|a)|f>>>0<=(i?2:3)>>>0){if(a=f|a<<8,n[A[e+32>>2]+38>>1]=a,!((65535&a)>>>0<259|n[t+26>>1]>=0)){Q=_=Q-16|0,f=pa(36),A[(a=f)+4>>2]=0,A[a+8>>2]=0,A[a+24>>2]=0,A[a+28>>2]=0,A[(a=a+16|0)>>2]=0,A[a+4>>2]=0,A[f>>2]=f+4,A[f+32>>2]=0,A[f+12>>2]=a,A[_>>2]=0,i=A[e+32>>2],Q=d=Q-16|0,a=0;e:if(f&&(A[_>>2]=i,A[d+12>>2]=0,a=0,Bb(1,d+12|0,i))){if(h=A[d+12>>2])for(;;){a:{if(Bb(1,d+8|0,A[_>>2])){if(a=pa(28),A[a+4>>2]=0,A[a+8>>2]=0,A[(i=a+16|0)>>2]=0,A[i+4>>2]=0,A[a>>2]=a+4,A[a+12>>2]=i,A[a+24>>2]=A[d+8>>2],ce(_,a))break a;Ra(a+12|0,A[a+16>>2]),Qa(a,A[a+4>>2]),oa(a)}a=0;break e}if(Q=o=Q-16|0,A[o+8>>2]=a,a){if((i=A[f+28>>2])>>>0<s[f+32>>2])A[o+8>>2]=0,A[i>>2]=a,A[f+28>>2]=i+4;else{i=0;a:{i:{f:{if(u=A[f+24>>2],(a=(R=A[f+28>>2]-u>>2)+1|0)>>>0<1073741824){if(m=(u=A[f+32>>2]-u|0)>>>1|0,u=u>>>0>=2147483644?1073741823:a>>>0<m>>>0?m:a){if(u>>>0>=1073741824)break f;i=pa(u<<2)}if(m=A[o+8>>2],A[o+8>>2]=0,A[(a=(R<<2)+i|0)>>2]=m,u=(u<<2)+i|0,R=a+4|0,(0|(i=A[f+28>>2]))==(0|(m=A[f+24>>2])))break i;for(;D=A[(i=i-4|0)>>2],A[i>>2]=0,A[(a=a-4|0)>>2]=D,(0|i)!=(0|m););if(A[f+32>>2]=u,u=A[f+28>>2],A[f+28>>2]=R,i=A[f+24>>2],A[f+24>>2]=a,(0|i)==(0|u))break a;for(;a=A[(u=u-4|0)>>2],A[u>>2]=0,a&&(Ra(a+12|0,A[a+16>>2]),Qa(a,A[a+4>>2]),oa(a)),(0|i)!=(0|u););break a}sa(),v()}wa(),v()}A[f+32>>2]=u,A[f+28>>2]=R,A[f+24>>2]=a}i&&oa(i)}a=A[o+8>>2],A[o+8>>2]=0,a&&(Ra(a+12|0,A[a+16>>2]),Qa(a,A[a+4>>2]),oa(a))}if(Q=o+16|0,(0|h)==(0|(j=j+1|0)))break}a=ce(_,f)}if(Q=d+16|0,a?(i=A[e+4>>2],a=A[i+4>>2],A[i+4>>2]=f,a&&Uc(a),A[r>>2]=0,A[r+4>>2]=0,A[r+8>>2]=0,A[r+12>>2]=0):(a=pa(32),b[a+26|0]=0,i=k[1579]|k[1580]<<8,b[a+24|0]=i,b[a+25|0]=i>>>8,i=k[1575]|k[1576]<<8|k[1577]<<16|k[1578]<<24,o=k[1571]|k[1572]<<8|k[1573]<<16|k[1574]<<24,b[a+16|0]=o,b[a+17|0]=o>>>8,b[a+18|0]=o>>>16,b[a+19|0]=o>>>24,b[a+20|0]=i,b[a+21|0]=i>>>8,b[a+22|0]=i>>>16,b[a+23|0]=i>>>24,i=k[1567]|k[1568]<<8|k[1569]<<16|k[1570]<<24,o=k[1563]|k[1564]<<8|k[1565]<<16|k[1566]<<24,b[a+8|0]=o,b[a+9|0]=o>>>8,b[a+10|0]=o>>>16,b[a+11|0]=o>>>24,b[a+12|0]=i,b[a+13|0]=i>>>8,b[a+14|0]=i>>>16,b[a+15|0]=i>>>24,i=k[1559]|k[1560]<<8|k[1561]<<16|k[1562]<<24,o=k[1555]|k[1556]<<8|k[1557]<<16|k[1558]<<24,b[0|a]=o,b[a+1|0]=o>>>8,b[a+2|0]=o>>>16,b[a+3|0]=o>>>24,b[a+4|0]=i,b[a+5|0]=i>>>8,b[a+6|0]=i>>>16,b[a+7|0]=i>>>24,A[r>>2]=-1,za(r+4|0,a,26),oa(a),A[_+8>>2]=0,Uc(f)),Q=_+16|0,A[r>>2])break r;b[r+15|0]>=0||oa(A[r+4>>2])}if(0|M[A[A[e>>2]+12>>2]](e))if(0|M[A[A[e>>2]+20>>2]](e))if(0|M[A[A[e>>2]+24>>2]](e))A[r>>2]=0,A[r+4>>2]=0,A[r+8>>2]=0,A[r+12>>2]=0;else{if(e=mc(t,1317),A[r>>2]=-1,r=r+4|0,b[e+11|0]>=0){a=A[e+4>>2],A[r>>2]=A[e>>2],A[r+4>>2]=a,A[r+8>>2]=A[e+8>>2];break r}if(za(r,A[e>>2],A[e+4>>2]),b[e+11|0]>=0)break r;oa(A[e>>2])}else{if(e=mc(t,1582),A[r>>2]=-1,r=r+4|0,b[e+11|0]>=0){a=A[e+4>>2],A[r>>2]=A[e>>2],A[r+4>>2]=a,A[r+8>>2]=A[e+8>>2];break r}if(za(r,A[e>>2],A[e+4>>2]),b[e+11|0]>=0)break r;oa(A[e>>2])}else e=pa(48),b[e+33|0]=0,b[e+32|0]=k[1384],a=k[1380]|k[1381]<<8|k[1382]<<16|k[1383]<<24,i=k[1376]|k[1377]<<8|k[1378]<<16|k[1379]<<24,b[e+24|0]=i,b[e+25|0]=i>>>8,b[e+26|0]=i>>>16,b[e+27|0]=i>>>24,b[e+28|0]=a,b[e+29|0]=a>>>8,b[e+30|0]=a>>>16,b[e+31|0]=a>>>24,a=k[1372]|k[1373]<<8|k[1374]<<16|k[1375]<<24,i=k[1368]|k[1369]<<8|k[1370]<<16|k[1371]<<24,b[e+16|0]=i,b[e+17|0]=i>>>8,b[e+18|0]=i>>>16,b[e+19|0]=i>>>24,b[e+20|0]=a,b[e+21|0]=a>>>8,b[e+22|0]=a>>>16,b[e+23|0]=a>>>24,a=k[1364]|k[1365]<<8|k[1366]<<16|k[1367]<<24,i=k[1360]|k[1361]<<8|k[1362]<<16|k[1363]<<24,b[e+8|0]=i,b[e+9|0]=i>>>8,b[e+10|0]=i>>>16,b[e+11|0]=i>>>24,b[e+12|0]=a,b[e+13|0]=a>>>8,b[e+14|0]=a>>>16,b[e+15|0]=a>>>24,a=k[1356]|k[1357]<<8|k[1358]<<16|k[1359]<<24,i=k[1352]|k[1353]<<8|k[1354]<<16|k[1355]<<24,b[0|e]=i,b[e+1|0]=i>>>8,b[e+2|0]=i>>>16,b[e+3|0]=i>>>24,b[e+4|0]=a,b[e+5|0]=a>>>8,b[e+6|0]=a>>>16,b[e+7|0]=a>>>24,A[r>>2]=-1,za(r+4|0,e,33),oa(e)}else e=pa(32),b[e+22|0]=0,a=k[1404]|k[1405]<<8|k[1406]<<16|k[1407]<<24,i=k[1400]|k[1401]<<8|k[1402]<<16|k[1403]<<24,b[e+14|0]=i,b[e+15|0]=i>>>8,b[e+16|0]=i>>>16,b[e+17|0]=i>>>24,b[e+18|0]=a,b[e+19|0]=a>>>8,b[e+20|0]=a>>>16,b[e+21|0]=a>>>24,a=k[1398]|k[1399]<<8|k[1400]<<16|k[1401]<<24,i=k[1394]|k[1395]<<8|k[1396]<<16|k[1397]<<24,b[e+8|0]=i,b[e+9|0]=i>>>8,b[e+10|0]=i>>>16,b[e+11|0]=i>>>24,b[e+12|0]=a,b[e+13|0]=a>>>8,b[e+14|0]=a>>>16,b[e+15|0]=a>>>24,a=k[1390]|k[1391]<<8|k[1392]<<16|k[1393]<<24,i=k[1386]|k[1387]<<8|k[1388]<<16|k[1389]<<24,b[0|e]=i,b[e+1|0]=i>>>8,b[e+2|0]=i>>>16,b[e+3|0]=i>>>24,b[e+4|0]=a,b[e+5|0]=a>>>8,b[e+6|0]=a>>>16,b[e+7|0]=a>>>24,A[r>>2]=-5,za(r+4|0,e,22),oa(e);else e=pa(64),b[e+50|0]=0,a=k[1314]|k[1315]<<8,b[e+48|0]=a,b[e+49|0]=a>>>8,a=k[1310]|k[1311]<<8|k[1312]<<16|k[1313]<<24,i=k[1306]|k[1307]<<8|k[1308]<<16|k[1309]<<24,b[e+40|0]=i,b[e+41|0]=i>>>8,b[e+42|0]=i>>>16,b[e+43|0]=i>>>24,b[e+44|0]=a,b[e+45|0]=a>>>8,b[e+46|0]=a>>>16,b[e+47|0]=a>>>24,a=k[1302]|k[1303]<<8|k[1304]<<16|k[1305]<<24,i=k[1298]|k[1299]<<8|k[1300]<<16|k[1301]<<24,b[e+32|0]=i,b[e+33|0]=i>>>8,b[e+34|0]=i>>>16,b[e+35|0]=i>>>24,b[e+36|0]=a,b[e+37|0]=a>>>8,b[e+38|0]=a>>>16,b[e+39|0]=a>>>24,a=k[1294]|k[1295]<<8|k[1296]<<16|k[1297]<<24,i=k[1290]|k[1291]<<8|k[1292]<<16|k[1293]<<24,b[e+24|0]=i,b[e+25|0]=i>>>8,b[e+26|0]=i>>>16,b[e+27|0]=i>>>24,b[e+28|0]=a,b[e+29|0]=a>>>8,b[e+30|0]=a>>>16,b[e+31|0]=a>>>24,a=k[1286]|k[1287]<<8|k[1288]<<16|k[1289]<<24,i=k[1282]|k[1283]<<8|k[1284]<<16|k[1285]<<24,b[e+16|0]=i,b[e+17|0]=i>>>8,b[e+18|0]=i>>>16,b[e+19|0]=i>>>24,b[e+20|0]=a,b[e+21|0]=a>>>8,b[e+22|0]=a>>>16,b[e+23|0]=a>>>24,a=k[1278]|k[1279]<<8|k[1280]<<16|k[1281]<<24,i=k[1274]|k[1275]<<8|k[1276]<<16|k[1277]<<24,b[e+8|0]=i,b[e+9|0]=i>>>8,b[e+10|0]=i>>>16,b[e+11|0]=i>>>24,b[e+12|0]=a,b[e+13|0]=a>>>8,b[e+14|0]=a>>>16,b[e+15|0]=a>>>24,a=k[1270]|k[1271]<<8|k[1272]<<16|k[1273]<<24,i=k[1266]|k[1267]<<8|k[1268]<<16|k[1269]<<24,b[0|e]=i,b[e+1|0]=i>>>8,b[e+2|0]=i>>>16,b[e+3|0]=i>>>24,b[e+4|0]=a,b[e+5|0]=a>>>8,b[e+6|0]=a>>>16,b[e+7|0]=a>>>24,A[r>>2]=-1,za(r+4|0,e,50),oa(e);Q=t+32|0}function Bd(r,e,a,i){var f=0,t=0,o=0,b=0,n=0,u=0,_=0,d=0,R=0,h=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0;if(u=A[e+8>>2],f=A[e+12>>2],o=A[e+20>>2],!(u>>>0<(_=(b=A[e+16>>2])+4|0)>>>0&(0|f)<=(0|(o=_>>>0<4?o+1|0:o))|(0|f)<(0|o)||(b=b+A[e>>2]|0,A[r>>2]=k[0|b]|k[b+1|0]<<8|k[b+2|0]<<16|k[b+3|0]<<24,f=b=A[e+20>>2],b=(o=(u=A[e+16>>2])+4|0)>>>0<4?f+1|0:f,A[e+16>>2]=o,A[e+20>>2]=b,s[r>>2]>32||(b=f,(f=u+8|0)>>>0>(d=A[e+8>>2])>>>0&(0|(b=f>>>0<8?b+1|0:b))>=(0|(_=A[e+12>>2]))|(0|b)>(0|_))))){if(b=A[e>>2]+o|0,o=k[0|b]|k[b+1|0]<<8|k[b+2|0]<<16|k[b+3|0]<<24,A[r+4>>2]=o,b=A[e+20>>2],b=(f=A[e+16>>2]+4|0)>>>0<4?b+1|0:b,A[e+16>>2]=f,A[e+20>>2]=b,!o)return 1;if(!(i>>>0<o>>>0)&&(A[r+8>>2]=0,ua(r+16|0,e)&&ua(r+36|0,e)&&ua(r+56|0,e)&&ua(r+76|0,e))){V=A[r+4>>2],b=a,e=0,o=0,Q=f=Q-32|0,i=r,r=A[r+12>>2],A[f+16>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0;r:{e:{if(r){if(r>>>0>=1073741824)break e;e=pa(a=r<<2),A[f+8>>2]=e,o=e+a|0,A[f+16>>2]=o,ra(e,0,a),A[f+12>>2]=o}a=A[i+120>>2],(n=A[a>>2])&&(A[a+4>>2]=n,oa(n),o=A[f+12>>2],e=A[f+8>>2],r=A[i+12>>2]),A[a+4>>2]=o,A[a>>2]=e,A[a+8>>2]=A[f+16>>2],e=0,A[f+16>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0;a:{if(r){if(r>>>0>=1073741824)break a;t=pa(r<<=2),A[f+8>>2]=t,e=r+t|0,A[f+16>>2]=e,ra(t,0,r),A[f+12>>2]=e}r=A[i+132>>2],(a=A[r>>2])&&(A[r+4>>2]=a,oa(a),t=A[f+8>>2],e=A[f+12>>2]),A[r+4>>2]=e,A[r>>2]=t,A[r+8>>2]=A[f+16>>2],A[f+24>>2]=0,A[f+28>>2]=0,A[f+16>>2]=0,A[f+20>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0,xa(f+8|0),e=((r=A[f+24>>2]+A[f+28>>2]|0)>>>0)/341|0,r=A[A[f+12>>2]+(e<<2)>>2]+m(r-m(e,341)|0,12)|0,A[r+4>>2]=0,A[r+8>>2]=0,A[r>>2]=V,a=1,r=A[f+28>>2]+1|0,A[f+28>>2]=r;i:if(r){for(;;){if(e=A[f+12>>2],t=A[f+24>>2],a=A[e+((n=((a=t+(_=r-1|0)|0)>>>0)/341|0)<<2)>>2]+m(a-m(n,341)|0,12)|0,o=A[a+8>>2],n=A[a+4>>2],u=A[a>>2],A[f+28>>2]=_,1+(((0|e)!=(0|(a=A[f+16>>2]))?m(a-e>>2,341)-1|0:0)-(r+t|0)|0)>>>0>=682&&(oa(A[a-4>>2]),A[f+16>>2]=A[f+16>>2]-4),a=0,u>>>0>V>>>0)break i;if((r=((e=A[i+12>>2])-1|0)!=(0|n)?n+1|0:0)>>>0>=e>>>0)break i;D=(t=m(o,12))+A[i+132>>2]|0,_=t+A[i+120>>2]|0;f:{t:if((0|(n=A[i>>2]))!=(0|(R=A[(d=r<<2)+A[D>>2]>>2]))){o:{b:{n:{A:{if(u>>>0<=2){if(a=A[i+108>>2],A[a>>2]=r,t=1,(e=A[i+12>>2])>>>0>1)break A;break o}if(s[i+8>>2]>s[i+4>>2])break i;(0|(U=(e=A[i+120>>2])+(D=m(h=o+1|0,12))|0))!=(0|_)&&(Aa(U,A[_>>2],A[_+4>>2]),e=A[i+120>>2]),e=d+A[e+D>>2]|0,A[e>>2]=A[e>>2]+(1<<n+~R);k:if((0|(e=31^j(u)))<=(0|(R=32-(n=A[i+32>>2])|0))){if((0|(_=A[i+28>>2]))==A[i+20>>2])break n;if(R=A[_>>2],U=e+n|0,A[i+32>>2]=U,e=R<<n>>>32-e|0,32!=(0|U))break k;A[i+32>>2]=0,A[i+28>>2]=_+4}else{if((0|(U=(_=A[i+28>>2])+4|0))==A[i+20>>2])break n;N=A[_>>2],A[i+28>>2]=U,R=e-R|0,A[i+32>>2]=R,e=A[_+4>>2]>>>32-R|N<<n>>>32-e}if((n=u>>>1|0)>>>0<e>>>0)break i;break b}for(;r=(e-1|0)!=(0|r)?r+1|0:0,A[a+(t<<2)>>2]=r,(e=A[i+12>>2])>>>0>(t=t+1|0)>>>0;);break o}n=u>>>1|0,e=0}b:{n:{if((0|(a=u-(e=n-e|0)|0))!=(0|e)){if((0|(n=A[i+88>>2]))==A[i+80>>2])break n;u=A[n>>2],R=(_=A[i+92>>2])+1|0,A[i+92>>2]=R,u&=-2147483648>>>_;A:{if(32==(0|R)){if(A[i+92>>2]=0,A[i+88>>2]=n+4,u)break A;break n}if(!u)break n}}else a=e;n=a,a=e;break b}n=e}if(e=A[i+132>>2],t=A[(u=e+t|0)>>2],A[(_=t+d|0)>>2]=A[_>>2]+1,Aa(e+D|0,t,A[u+4>>2]),a&&(e=A[f+28>>2]+A[f+24>>2]|0,u=A[f+16>>2],(0|e)==(0|((0|(t=A[f+12>>2]))!=(0|u)?m(u-t>>2,341)-1:0))&&(xa(f+8|0),t=A[f+12>>2],e=A[f+24>>2]+A[f+28>>2]|0),e=A[((u=(e>>>0)/341|0)<<2)+t>>2]+m(e-m(u,341)|0,12)|0,A[e+8>>2]=o,A[e+4>>2]=r,A[e>>2]=a,A[f+28>>2]=A[f+28>>2]+1),!n)break t;(0|(e=A[f+28>>2]+A[f+24>>2]|0))==(0|((0|(a=A[f+16>>2]))!=(0|(t=A[f+12>>2]))?m(a-t>>2,341)-1:0))&&(xa(f+8|0),t=A[f+12>>2],e=A[f+24>>2]+A[f+28>>2]|0),e=A[((a=(e>>>0)/341|0)<<2)+t>>2]+m(e-m(a,341)|0,12)|0,A[e+8>>2]=h,A[e+4>>2]=r,A[e>>2]=n,r=A[f+28>>2]+1|0,A[f+28>>2]=r;break f}if(R=0,u)for(;;){if(A[i+12>>2])for(n=A[i+40>>2],U=A[D>>2],a=A[i+96>>2],N=A[i+108>>2],r=0;;){A[a+(A[(o=N+(r<<2)|0)>>2]<<2)>>2]=0,e=A[i>>2],t=A[o>>2]<<2;o:if((0|e)!=(0|(d=A[t+U>>2])))if(t=a+t|0,(0|(e=e-d|0))<=(0|(T=32-(d=A[i+52>>2])|0))){if((0|(h=A[i+48>>2]))==(0|n)){a=0;break i}if(A[t>>2]=A[h>>2]<<d>>>32-e,e=e+A[i+52>>2]|0,A[i+52>>2]=e,32!=(0|e))break o;A[i+52>>2]=0,A[i+48>>2]=h+4}else{if((0|n)==(0|(W=(h=A[i+48>>2])+4|0))){a=0;break i}G=A[h>>2],A[i+48>>2]=W,T=e-T|0,A[i+52>>2]=T,A[t>>2]=A[h+4>>2]>>>32-T|G<<d>>>32-e}if(e=A[o>>2]<<2,A[(o=e+a|0)>>2]=A[o>>2]|A[e+A[_>>2]>>2],!((r=r+1|0)>>>0<s[i+12>>2]))break}n=0;o:if((0|(r=A[b+16>>2]))!=A[b+20>>2])for(;;){if(t=A[b+28>>2],a=m(n,20)+r|0,d=A[a>>2],k[d+84|0]||(t=A[A[d+68>>2]+(t<<2)>>2]),s[d+80>>2]<=t>>>0)break o;if(e=h=A[i+96>>2]+(A[a+4>>2]<<2)|0,!((o=A[a+12>>2])>>>0>3)&&(r=0,e=A[b+12>>2],A[a+16>>2])){for(;e=(e=qa(e,h+(r<<2)|0,o))+(o=A[a+12>>2])|0,(r=r+1|0)>>>0<s[a+16>>2];);e=A[b+12>>2]}if(r=A[d+40>>2],qa(A[A[d>>2]>>2]+m(r,t)|0,e,r),n=n+1|0,r=A[b+16>>2],!(n>>>0<(A[b+20>>2]-r|0)/20>>>0))break}if(A[b+28>>2]=A[b+28>>2]+1,A[i+8>>2]=A[i+8>>2]+1,(0|u)==(0|(R=R+1|0)))break}}else{if(!u)break t;if(D=0,(0|(e=A[b+20>>2]))==(0|(o=A[b+16>>2]))){r=A[i+8>>2],A[b+28>>2]=u+A[b+28>>2],A[i+8>>2]=r+u;break t}for(;;){a=(0|e)==(0|o),r=e,n=0,e=o;o:if(!a)for(;;){if(t=A[b+28>>2],e=r,a=m(n,20)+o|0,d=A[a>>2],k[d+84|0]||(t=A[A[d+68>>2]+(t<<2)>>2]),s[d+80>>2]<=t>>>0)break o;if(e=R=A[_>>2]+(A[a+4>>2]<<2)|0,!((o=A[a+12>>2])>>>0>3)&&(r=0,e=A[b+12>>2],A[a+16>>2])){for(;e=(e=qa(e,R+(r<<2)|0,o))+(o=A[a+12>>2])|0,(r=r+1|0)>>>0<s[a+16>>2];);e=A[b+12>>2]}if(r=A[d+40>>2],qa(A[A[d>>2]>>2]+m(r,t)|0,e,r),!((n=n+1|0)>>>0<((e=r=A[b+20>>2])-(o=A[b+16>>2])|0)/20>>>0))break}if(A[b+28>>2]=A[b+28>>2]+1,A[i+8>>2]=A[i+8>>2]+1,(0|u)==(0|(D=D+1|0)))break}}r=A[f+28>>2]}if(!r)break}a=1}if(A[f+28>>2]=0,(e=(t=A[f+16>>2])-(r=A[f+12>>2])|0)>>>0>=9)for(;oa(A[r>>2]),r=A[f+12>>2]+4|0,A[f+12>>2]=r,(e=(t=A[f+16>>2])-r|0)>>>0>8;);o=170;i:switch((e>>>2|0)-1|0){case 1:o=341;case 0:A[f+24>>2]=o;break;default:break i}if((0|r)!=(0|t)){for(;oa(A[r>>2]),(0|t)!=(0|(r=r+4|0)););(0|(r=A[f+16>>2]))!=(0|(e=A[f+12>>2]))&&(A[f+16>>2]=r+(3+(e-r|0)&-4))}(r=A[f+8>>2])&&oa(r),Q=f+32|0;break r}sa(),v()}sa(),v()}n=a}}return n}function zd(r,e,a,i){var f=0,t=0,o=0,b=0,n=0,u=0,_=0,d=0,R=0,h=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0;if(u=A[e+8>>2],d=A[e+12>>2],_=A[e+20>>2],!((t=(n=A[e+16>>2])+4|0)>>>0>u>>>0&(0|(_=t>>>0<4?_+1|0:_))>=(0|d)|(0|_)>(0|d)||(n=n+A[e>>2]|0,A[r>>2]=k[0|n]|k[n+1|0]<<8|k[n+2|0]<<16|k[n+3|0]<<24,u=n=A[e+20>>2],d=(n=(t=A[e+16>>2])+4|0)>>>0<4?u+1|0:u,A[e+16>>2]=n,A[e+20>>2]=d,s[r>>2]>32||(d=A[e+8>>2],(0|(_=A[e+12>>2]))<=(0|(u=(t=t+8|0)>>>0<8?u+1|0:u))&t>>>0>d>>>0|(0|_)<(0|u))))){if(n=A[e>>2]+n|0,t=k[0|n]|k[n+1|0]<<8|k[n+2|0]<<16|k[n+3|0]<<24,A[r+4>>2]=t,u=A[e+20>>2],u=(n=A[e+16>>2]+4|0)>>>0<4?u+1|0:u,A[e+16>>2]=n,A[e+20>>2]=u,!t)return 1;if(!(i>>>0<t>>>0)&&(A[r+8>>2]=0,ua(r+16|0,e)&&ua(r+36|0,e)&&ua(r+56|0,e)&&ua(r+76|0,e))){W=A[r+4>>2],n=a,e=0,a=0,Q=f=Q-32|0,t=r,r=A[r+12>>2],A[f+16>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0;r:{e:{if(r){if(r>>>0>=1073741824)break e;e=pa(i=r<<2),A[f+8>>2]=e,a=e+i|0,A[f+16>>2]=a,ra(e,0,i),A[f+12>>2]=a}o=A[t+120>>2],(i=A[o>>2])&&(A[o+4>>2]=i,oa(i),a=A[f+12>>2],e=A[f+8>>2],r=A[t+12>>2]),A[o+4>>2]=a,A[o>>2]=e,A[o+8>>2]=A[f+16>>2],e=0,A[f+16>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0;a:{if(r){if(r>>>0>=1073741824)break a;b=pa(r<<=2),A[f+8>>2]=b,e=r+b|0,A[f+16>>2]=e,ra(b,0,r),A[f+12>>2]=e}a=A[t+132>>2],(r=A[a>>2])&&(A[a+4>>2]=r,oa(r),b=A[f+8>>2],e=A[f+12>>2]),A[a+4>>2]=e,A[a>>2]=b,A[a+8>>2]=A[f+16>>2],A[f+24>>2]=0,A[f+28>>2]=0,A[f+16>>2]=0,A[f+20>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0,xa(f+8|0),r=((e=A[f+24>>2]+A[f+28>>2]|0)>>>0)/341|0,r=A[A[f+12>>2]+(r<<2)>>2]+m(e-m(r,341)|0,12)|0,A[r+4>>2]=0,A[r+8>>2]=0,A[r>>2]=W,i=1,r=A[f+28>>2]+1|0,A[f+28>>2]=r;i:if(r){for(;;){if(u=A[f+12>>2],o=A[f+24>>2],e=A[u+((e=((a=o+(i=r-1|0)|0)>>>0)/341|0)<<2)>>2]+m(a-m(e,341)|0,12)|0,h=A[e+8>>2],a=A[e+4>>2],R=A[e>>2],A[f+28>>2]=i,1+(((0|(e=A[f+16>>2]))!=(0|u)?m(e-u>>2,341)-1|0:0)-(r+o|0)|0)>>>0>=682&&(oa(A[e-4>>2]),A[f+16>>2]=A[f+16>>2]-4),R>>>0>W>>>0){i=0;break i}if(i=0,(r=(0|a)!=((e=A[t+12>>2])-1|0)?a+1|0:0)>>>0>=e>>>0)break i;T=(e=A[t+120>>2])+(D=m(h,12))|0,o=A[t>>2],b=r<<2,d=D+A[t+132>>2]|0;f:{t:if((0|o)!=(0|(a=A[b+A[d>>2]>>2]))){o:{b:{n:{A:{if(R>>>0<=2){if(a=A[t+108>>2],A[a>>2]=r,b=1,(e=A[t+12>>2])>>>0>1)break A;break o}if(s[t+8>>2]>s[t+4>>2])break i;Aa((u=e)+(e=D+12|0)|0,A[T>>2],A[T+4>>2]),e=b+A[e+A[t+120>>2]>>2]|0,A[e>>2]=A[e>>2]+(1<<o+~a);k:if((0|(_=31^j(R)))<=(0|(o=32-(d=A[t+32>>2])|0))){if((0|(o=A[t+28>>2]))==A[t+20>>2])break n;if(a=A[o>>2],e=_+d|0,A[t+32>>2]=e,a=a<<d>>>32-_|0,32!=(0|e))break k;A[t+32>>2]=0,A[t+28>>2]=o+4}else{if((0|(e=(u=A[t+28>>2])+4|0))==A[t+20>>2])break n;a=A[u>>2],A[t+28>>2]=e,e=_-o|0,A[t+32>>2]=e,a=A[u+4>>2]>>>32-e|a<<d>>>32-_}if((o=R>>>1|0)>>>0<a>>>0)break i;break b}for(;r=(e-1|0)!=(0|r)?r+1|0:0,A[a+(b<<2)>>2]=r,(e=A[t+12>>2])>>>0>(b=b+1|0)>>>0;);break o}o=R>>>1|0,a=0}_=h+1|0;b:{n:{if((0|(a=R-(e=o-a|0)|0))!=(0|e)){if((0|(d=A[t+88>>2]))==A[t+80>>2])break n;u=A[d>>2],i=(o=A[t+92>>2])+1|0,A[t+92>>2]=i,o=u&-2147483648>>>o;A:{if(32==(0|i)){if(A[t+92>>2]=0,A[t+88>>2]=d+4,o)break A;break n}if(!o)break n}}else a=e;o=a,a=e;break b}o=e}if(d=A[t+132>>2],i=A[(u=d+D|0)>>2],A[(e=i+b|0)>>2]=A[e>>2]+1,Aa(d+m(_,12)|0,i,A[u+4>>2]),a&&((0|(e=A[f+28>>2]+A[f+24>>2]|0))==(0|((0|(i=A[f+16>>2]))!=(0|(b=A[f+12>>2]))?m(i-b>>2,341)-1:0))&&(xa(f+8|0),b=A[f+12>>2],e=A[f+24>>2]+A[f+28>>2]|0),e=A[((i=(e>>>0)/341|0)<<2)+b>>2]+m(e-m(i,341)|0,12)|0,A[e+8>>2]=h,A[e+4>>2]=r,A[e>>2]=a,A[f+28>>2]=A[f+28>>2]+1),!o)break t;(0|(e=A[f+28>>2]+A[f+24>>2]|0))==(0|((0|(a=A[f+16>>2]))!=(0|(b=A[f+12>>2]))?m(a-b>>2,341)-1:0))&&(xa(f+8|0),b=A[f+12>>2],e=A[f+24>>2]+A[f+28>>2]|0),e=A[((a=(e>>>0)/341|0)<<2)+b>>2]+m(e-m(a,341)|0,12)|0,A[e+8>>2]=_,A[e+4>>2]=r,A[e>>2]=o,r=A[f+28>>2]+1|0,A[f+28>>2]=r;break f}if(N=0,R)for(;;){if(A[t+12>>2])for(G=A[t+40>>2],u=A[d>>2],V=A[t+96>>2],o=A[t+108>>2],r=0;;){A[V+(A[(h=(r<<2)+o|0)>>2]<<2)>>2]=0,i=A[t>>2],a=A[h>>2]<<2;o:if((0|i)!=(0|(e=A[a+u>>2])))if(D=a+V|0,(0|(U=i-e|0))<=(0|(i=32-(b=A[t+52>>2])|0))){if((0|(a=A[t+48>>2]))==(0|G)){i=0;break i}if(A[D>>2]=A[a>>2]<<b>>>32-U,e=U+A[t+52>>2]|0,A[t+52>>2]=e,32!=(0|e))break o;A[t+52>>2]=0,A[t+48>>2]=a+4}else{if((0|G)==(0|(e=(_=A[t+48>>2])+4|0))){i=0;break i}a=A[_>>2],A[t+48>>2]=e,e=U-i|0,A[t+52>>2]=e,A[D>>2]=A[_+4>>2]>>>32-e|a<<b>>>32-U}if(a=A[h>>2]<<2,A[(e=a+V|0)>>2]=A[e>>2]|A[a+A[T>>2]>>2],!((r=r+1|0)>>>0<s[t+12>>2]))break}o=0;o:if((0|(r=A[n+16>>2]))!=A[n+20>>2])for(;;){if(i=A[n+28>>2],b=m(o,20)+r|0,_=A[b>>2],k[_+84|0]||(i=A[A[_+68>>2]+(i<<2)>>2]),s[_+80>>2]<=i>>>0)break o;if(e=u=A[t+96>>2]+(A[b+4>>2]<<2)|0,!((a=A[b+12>>2])>>>0>3)&&(r=0,e=A[n+12>>2],A[b+16>>2])){for(;e=(e=qa(e,u+(r<<2)|0,a))+(a=A[b+12>>2])|0,(r=r+1|0)>>>0<s[b+16>>2];);e=A[n+12>>2]}if(r=A[_+40>>2],qa(A[A[_>>2]>>2]+m(r,i)|0,e,r),o=o+1|0,r=A[n+16>>2],!(o>>>0<(A[n+20>>2]-r|0)/20>>>0))break}if(A[n+28>>2]=A[n+28>>2]+1,A[t+8>>2]=A[t+8>>2]+1,(0|R)==(0|(N=N+1|0)))break}}else{if(!R)break t;if(b=0,(0|(e=A[n+20>>2]))==(0|(a=A[n+16>>2]))){r=A[t+8>>2],A[n+28>>2]=R+A[n+28>>2],A[t+8>>2]=r+R;break t}for(;;){i=(0|e)==(0|a),r=e,o=0,e=a;o:if(!i)for(;;){if(i=A[n+28>>2],e=r,_=m(o,20)+a|0,d=A[_>>2],k[d+84|0]||(i=A[A[d+68>>2]+(i<<2)>>2]),s[d+80>>2]<=i>>>0)break o;if(e=u=A[T>>2]+(A[_+4>>2]<<2)|0,!((a=A[_+12>>2])>>>0>3)&&(r=0,e=A[n+12>>2],A[_+16>>2])){for(;e=(e=qa(e,u+(r<<2)|0,a))+(a=A[_+12>>2])|0,(r=r+1|0)>>>0<s[_+16>>2];);e=A[n+12>>2]}if(r=A[d+40>>2],qa(A[A[d>>2]>>2]+m(r,i)|0,e,r),!((o=o+1|0)>>>0<((e=r=A[n+20>>2])-(a=A[n+16>>2])|0)/20>>>0))break}if(A[n+28>>2]=A[n+28>>2]+1,A[t+8>>2]=A[t+8>>2]+1,(0|R)==(0|(b=b+1|0)))break}}r=A[f+28>>2]}if(!r)break}i=1}if(A[f+28>>2]=0,(e=(b=A[f+16>>2])-(r=A[f+12>>2])|0)>>>0>=9)for(;oa(A[r>>2]),r=A[f+12>>2]+4|0,A[f+12>>2]=r,(e=(b=A[f+16>>2])-r|0)>>>0>8;);a=170;i:switch((e>>>2|0)-1|0){case 1:a=341;case 0:A[f+24>>2]=a;break;default:break i}if((0|r)!=(0|b)){for(;oa(A[r>>2]),(0|b)!=(0|(r=r+4|0)););(0|(e=A[f+16>>2]))!=(0|(r=A[f+12>>2]))&&(A[f+16>>2]=e+(3+(r-e|0)&-4))}(r=A[f+8>>2])&&oa(r),Q=f+32|0,o=i;break r}sa(),v()}sa(),v()}}}return o}function wd(r,e,a,i){var f=0,t=0,o=0,b=0,n=0,u=0,_=0,d=0,R=0,h=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0;if(n=A[e+8>>2],u=A[e+12>>2],h=A[e+20>>2],!(n>>>0<(b=(f=A[e+16>>2])+4|0)>>>0&(0|u)<=(0|(h=b>>>0<4?h+1|0:h))|(0|u)<(0|h)||(f=f+A[e>>2]|0,A[r>>2]=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,n=f=A[e+20>>2],u=(f=(b=A[e+16>>2])+4|0)>>>0<4?n+1|0:n,A[e+16>>2]=f,A[e+20>>2]=u,s[r>>2]>32||(b=b+8|0)>>>0>(u=A[e+8>>2])>>>0&(0|(n=b>>>0<8?n+1|0:n))>=(0|(h=A[e+12>>2]))|(0|n)>(0|h)))){if(f=A[e>>2]+f|0,b=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[r+4>>2]=b,n=A[e+20>>2],n=(f=A[e+16>>2]+4|0)>>>0<4?n+1|0:n,A[e+16>>2]=f,A[e+20>>2]=n,!b)return 1;if(!(i>>>0<b>>>0)&&(A[r+8>>2]=0,sb(r+16|0,e)&&ua(r+544|0,e)&&ua(r+564|0,e)&&ua(r+584|0,e))){G=A[r+4>>2],i=a,e=0,a=0,Q=t=Q-32|0,o=r,r=A[r+12>>2],A[t+16>>2]=0,A[t+8>>2]=0,A[t+12>>2]=0;r:{e:{if(r){if(r>>>0>=1073741824)break e;e=pa(f=r<<2),A[t+8>>2]=e,a=e+f|0,A[t+16>>2]=a,ra(e,0,f),A[t+12>>2]=a}b=A[o+628>>2],(f=A[b>>2])&&(A[b+4>>2]=f,oa(f),a=A[t+12>>2],e=A[t+8>>2],r=A[o+12>>2]),A[b+4>>2]=a,A[b>>2]=e,A[b+8>>2]=A[t+16>>2],e=0,A[t+16>>2]=0,A[t+8>>2]=0,A[t+12>>2]=0;a:{if(r){if(r>>>0>=1073741824)break a;_=pa(r<<=2),A[t+8>>2]=_,e=r+_|0,A[t+16>>2]=e,ra(_,0,r),A[t+12>>2]=e}a=A[o+640>>2],(r=A[a>>2])&&(A[a+4>>2]=r,oa(r),_=A[t+8>>2],e=A[t+12>>2]),A[a+4>>2]=e,A[a>>2]=_,A[a+8>>2]=A[t+16>>2],A[t+24>>2]=0,A[t+28>>2]=0,A[t+16>>2]=0,A[t+20>>2]=0,A[t+8>>2]=0,A[t+12>>2]=0,xa(t+8|0),r=((e=A[t+24>>2]+A[t+28>>2]|0)>>>0)/341|0,r=A[A[t+12>>2]+(r<<2)>>2]+m(e-m(r,341)|0,12)|0,A[r+4>>2]=0,A[r+8>>2]=0,A[r>>2]=G,a=1,r=A[t+28>>2]+1|0,A[t+28>>2]=r;i:if(r){for(h=o+16|0;;){if(u=A[t+12>>2],b=A[t+24>>2],e=A[u+((e=((a=b+(f=r-1|0)|0)>>>0)/341|0)<<2)>>2]+m(a-m(e,341)|0,12)|0,T=A[e+8>>2],n=A[e+4>>2],D=A[e>>2],A[t+28>>2]=f,1+(((0|(e=A[t+16>>2]))!=(0|u)?m(e-u>>2,341)-1|0:0)-(r+b|0)|0)>>>0>=682&&(oa(A[e-4>>2]),A[t+16>>2]=A[t+16>>2]-4),a=0,D>>>0>G>>>0)break i;if((_=(0|n)!=((r=A[o+12>>2])-1|0)?n+1|0:0)>>>0>=r>>>0)break i;Z=(U=m(T,12))+A[o+640>>2]|0,N=U+A[o+628>>2]|0;f:{t:if((0|(b=A[o>>2]))!=(0|(f=A[(d=_<<2)+A[Z>>2]>>2]))){o:{b:{n:{if(D>>>0<=2){if(a=A[o+616>>2],A[a>>2]=_,r=1,(e=A[o+12>>2])>>>0>1)break n;break o}if(s[o+8>>2]>s[o+4>>2])break i;if((0|(e=(r=A[o+628>>2])+(R=m(u=T+1|0,12))|0))!=(0|N)&&(Aa(e,A[N>>2],A[N+4>>2]),r=A[o+628>>2]),r=d+A[r+R>>2]|0,A[r>>2]=A[r>>2]+(1<<b+~f),e=0,r=0,!(a=31^j(D))){r=D>>>1|0;break b}for(;e=Ba((r<<4)+h|0)|e<<1,(0|a)!=(0|(r=r+1|0)););if(e>>>0<=(r=D>>>1|0)>>>0)break b;a=0;break i}for(;_=(e-1|0)!=(0|_)?_+1|0:0,A[a+(r<<2)>>2]=_,(r=r+1|0)>>>0<(e=A[o+12>>2])>>>0;);break o}b:{n:{if((0|(r=D-(e=r-e|0)|0))!=(0|e)){if((0|(n=A[o+596>>2]))==A[o+588>>2])break n;b=A[n>>2],a=(f=A[o+600>>2])+1|0,A[o+600>>2]=a,f=b&-2147483648>>>f;A:{if(32==(0|a)){if(A[o+600>>2]=0,A[o+596>>2]=n+4,f)break A;break n}if(!f)break n}}else r=e;a=r,r=e;break b}a=e}if(n=A[o+640>>2],f=A[(b=n+U|0)>>2],A[(e=f+d|0)>>2]=A[e>>2]+1,Aa(n+R|0,f,A[b+4>>2]),r&&(R=A[t+28>>2]+A[t+24>>2]|0,f=A[t+16>>2],(0|R)==(0|((0|(e=A[t+12>>2]))!=(0|f)?m(f-e>>2,341)-1:0))?(xa(t+8|0),R=A[t+24>>2]+A[t+28>>2]|0,f=A[t+12>>2]):f=e,e=A[f+((e=(R>>>0)/341|0)<<2)>>2]+m(R-m(e,341)|0,12)|0,A[e+8>>2]=T,A[e+4>>2]=_,A[e>>2]=r,A[t+28>>2]=A[t+28>>2]+1),!a)break t;e=A[t+28>>2]+A[t+24>>2]|0,f=A[t+16>>2],(0|e)==(0|((0|(r=A[t+12>>2]))!=(0|f)?m(f-r>>2,341)-1:0))?(xa(t+8|0),e=A[t+24>>2]+A[t+28>>2]|0,f=A[t+12>>2]):f=r,r=A[f+((r=(e>>>0)/341|0)<<2)>>2]+m(e-m(r,341)|0,12)|0,A[r+8>>2]=u,A[r+4>>2]=_,A[r>>2]=a,r=A[t+28>>2]+1|0,A[t+28>>2]=r;break f}if(_=0,D)for(;;){if(A[o+12>>2])for(T=A[o+548>>2],n=A[Z>>2],W=A[o+604>>2],b=A[o+616>>2],r=0;;){A[W+(A[(U=(r<<2)+b|0)>>2]<<2)>>2]=0,f=A[o>>2],a=A[U>>2]<<2;o:if((0|f)!=(0|(e=A[a+n>>2])))if(d=a+W|0,(0|(V=f-e|0))<=(0|(f=32-(R=A[o+560>>2])|0))){if((0|(a=A[o+556>>2]))==(0|T)){a=0;break i}if(A[d>>2]=A[a>>2]<<R>>>32-V,e=V+A[o+560>>2]|0,A[o+560>>2]=e,32!=(0|e))break o;A[o+560>>2]=0,A[o+556>>2]=a+4}else{if((0|T)==(0|(e=(u=A[o+556>>2])+4|0))){a=0;break i}a=A[u>>2],A[o+556>>2]=e,e=V-f|0,A[o+560>>2]=e,A[d>>2]=A[u+4>>2]>>>32-e|a<<R>>>32-V}if(a=A[U>>2]<<2,A[(e=a+W|0)>>2]=A[e>>2]|A[a+A[N>>2]>>2],!((r=r+1|0)>>>0<s[o+12>>2]))break}u=0;o:if((0|(r=A[i+16>>2]))!=A[i+20>>2])for(;;){if(d=A[i+28>>2],n=m(u,20)+r|0,b=A[n>>2],k[b+84|0]||(d=A[A[b+68>>2]+(d<<2)>>2]),s[b+80>>2]<=d>>>0)break o;if(e=f=A[o+604>>2]+(A[n+4>>2]<<2)|0,!((a=A[n+12>>2])>>>0>3)&&(r=0,e=A[i+12>>2],A[n+16>>2])){for(;e=(e=qa(e,f+(r<<2)|0,a))+(a=A[n+12>>2])|0,(r=r+1|0)>>>0<s[n+16>>2];);e=A[i+12>>2]}if(r=A[b+40>>2],qa(A[A[b>>2]>>2]+m(r,d)|0,e,r),u=u+1|0,r=A[i+16>>2],!(u>>>0<(A[i+20>>2]-r|0)/20>>>0))break}if(A[i+28>>2]=A[i+28>>2]+1,A[o+8>>2]=A[o+8>>2]+1,(0|D)==(0|(_=_+1|0)))break}}else{if(!D)break t;for(a=A[i+16>>2],e=A[i+20>>2],R=0;;){f=(0|e)==(0|a),r=e,u=0,e=a;o:if(!f)for(;;){if(d=A[i+28>>2],e=r,n=m(u,20)+a|0,b=A[n>>2],k[b+84|0]||(d=A[A[b+68>>2]+(d<<2)>>2]),s[b+80>>2]<=d>>>0)break o;if(e=f=A[N>>2]+(A[n+4>>2]<<2)|0,!((a=A[n+12>>2])>>>0>3)&&(r=0,e=A[i+12>>2],A[n+16>>2])){for(;e=(e=qa(e,f+(r<<2)|0,a))+(a=A[n+12>>2])|0,(r=r+1|0)>>>0<s[n+16>>2];);e=A[i+12>>2]}if(r=A[b+40>>2],qa(A[A[b>>2]>>2]+m(r,d)|0,e,r),e=r=A[i+20>>2],!((u=u+1|0)>>>0<(r-(a=A[i+16>>2])|0)/20>>>0))break}if(A[i+28>>2]=A[i+28>>2]+1,A[o+8>>2]=A[o+8>>2]+1,(0|D)==(0|(R=R+1|0)))break}}r=A[t+28>>2]}if(!r)break}a=1}if(A[t+28>>2]=0,(e=(_=A[t+16>>2])-(r=A[t+12>>2])|0)>>>0>=9)for(;oa(A[r>>2]),r=A[t+12>>2]+4|0,A[t+12>>2]=r,(e=(_=A[t+16>>2])-r|0)>>>0>8;);i=170;i:switch((e>>>2|0)-1|0){case 1:i=341;case 0:A[t+24>>2]=i;break;default:break i}if((0|r)!=(0|_)){for(;oa(A[r>>2]),(0|_)!=(0|(r=r+4|0)););(0|(e=A[t+16>>2]))!=(0|(r=A[t+12>>2]))&&(A[t+16>>2]=e+(3+(r-e|0)&-4))}(r=A[t+8>>2])&&oa(r),Q=t+32|0;break r}sa(),v()}sa(),v()}o=a}}return o}function ud(r,e,a,i){var f=0,t=0,o=0,b=0,n=0,u=0,_=0,d=0,R=0,h=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0;if(n=A[e+8>>2],_=A[e+12>>2],D=A[e+20>>2],!(n>>>0<(b=(f=A[e+16>>2])+4|0)>>>0&(0|_)<=(0|(D=b>>>0<4?D+1|0:D))|(0|_)<(0|D)||(f=f+A[e>>2]|0,A[r>>2]=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,n=f=A[e+20>>2],_=(f=(b=A[e+16>>2])+4|0)>>>0<4?n+1|0:n,A[e+16>>2]=f,A[e+20>>2]=_,s[r>>2]>32||(b=b+8|0)>>>0>(_=A[e+8>>2])>>>0&(0|(n=b>>>0<8?n+1|0:n))>=(0|(D=A[e+12>>2]))|(0|n)>(0|D)))){if(f=A[e>>2]+f|0,b=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[r+4>>2]=b,n=A[e+20>>2],n=(f=A[e+16>>2]+4|0)>>>0<4?n+1|0:n,A[e+16>>2]=f,A[e+20>>2]=n,!b)return 1;if(!(i>>>0<b>>>0)&&(A[r+8>>2]=0,sb(r+16|0,e)&&ua(r+544|0,e)&&ua(r+564|0,e)&&ua(r+584|0,e))){Z=A[r+4>>2],i=a,e=0,a=0,Q=t=Q-32|0,o=r,r=A[r+12>>2],A[t+16>>2]=0,A[t+8>>2]=0,A[t+12>>2]=0;r:{e:{if(r){if(r>>>0>=1073741824)break e;e=pa(f=r<<2),A[t+8>>2]=e,a=e+f|0,A[t+16>>2]=a,ra(e,0,f),A[t+12>>2]=a}b=A[o+628>>2],(f=A[b>>2])&&(A[b+4>>2]=f,oa(f),a=A[t+12>>2],e=A[t+8>>2],r=A[o+12>>2]),A[b+4>>2]=a,A[b>>2]=e,A[b+8>>2]=A[t+16>>2],e=0,A[t+16>>2]=0,A[t+8>>2]=0,A[t+12>>2]=0;a:{if(r){if(r>>>0>=1073741824)break a;u=pa(r<<=2),A[t+8>>2]=u,e=r+u|0,A[t+16>>2]=e,ra(u,0,r),A[t+12>>2]=e}a=A[o+640>>2],(r=A[a>>2])&&(A[a+4>>2]=r,oa(r),u=A[t+8>>2],e=A[t+12>>2]),A[a+4>>2]=e,A[a>>2]=u,A[a+8>>2]=A[t+16>>2],A[t+24>>2]=0,A[t+28>>2]=0,A[t+16>>2]=0,A[t+20>>2]=0,A[t+8>>2]=0,A[t+12>>2]=0,xa(t+8|0),r=((e=A[t+24>>2]+A[t+28>>2]|0)>>>0)/341|0,r=A[A[t+12>>2]+(r<<2)>>2]+m(e-m(r,341)|0,12)|0,A[r+4>>2]=0,A[r+8>>2]=0,A[r>>2]=Z,a=1,r=A[t+28>>2]+1|0,A[t+28>>2]=r;i:if(r){for(D=o+16|0;;){if(n=A[t+12>>2],b=A[t+24>>2],e=A[n+((e=((a=b+(f=r-1|0)|0)>>>0)/341|0)<<2)>>2]+m(a-m(e,341)|0,12)|0,T=A[e+8>>2],h=A[e>>2],A[t+28>>2]=f,1+(((0|(e=A[t+16>>2]))!=(0|n)?m(e-n>>2,341)-1|0:0)-(r+b|0)|0)>>>0>=682&&(oa(A[e-4>>2]),A[t+16>>2]=A[t+16>>2]-4),a=0,h>>>0>Z>>>0)break i;if(r=A[o+628>>2],(u=Vd(o,h,W=(U=m(T,12))+A[o+640>>2]|0))>>>0>=s[o+12>>2])break i;N=r+U|0;f:{t:if((0|(b=A[o>>2]))!=(0|(f=A[(d=u<<2)+A[W>>2]>>2]))){o:{b:{n:{if(h>>>0<=2){if(a=A[o+616>>2],A[a>>2]=u,r=1,(e=A[o+12>>2])>>>0>1)break n;break o}if(s[o+8>>2]>s[o+4>>2])break i;if((0|(e=(r=A[o+628>>2])+(R=m(_=T+1|0,12))|0))!=(0|N)&&(Aa(e,A[N>>2],A[N+4>>2]),r=A[o+628>>2]),r=d+A[r+R>>2]|0,A[r>>2]=A[r>>2]+(1<<b+~f),e=0,r=0,!(a=31^j(h))){r=h>>>1|0;break b}for(;e=Ba((r<<4)+D|0)|e<<1,(0|a)!=(0|(r=r+1|0)););if(e>>>0<=(r=h>>>1|0)>>>0)break b;a=0;break i}for(;u=(e-1|0)!=(0|u)?u+1|0:0,A[a+(r<<2)>>2]=u,(r=r+1|0)>>>0<(e=A[o+12>>2])>>>0;);break o}b:{n:{if((0|(r=h-(e=r-e|0)|0))!=(0|e)){if((0|(n=A[o+596>>2]))==A[o+588>>2])break n;b=A[n>>2],a=(f=A[o+600>>2])+1|0,A[o+600>>2]=a,f=b&-2147483648>>>f;A:{if(32==(0|a)){if(A[o+600>>2]=0,A[o+596>>2]=n+4,f)break A;break n}if(!f)break n}}else r=e;a=r,r=e;break b}a=e}if(n=A[o+640>>2],f=A[(b=n+U|0)>>2],A[(e=f+d|0)>>2]=A[e>>2]+1,Aa(n+R|0,f,A[b+4>>2]),r&&(R=A[t+28>>2]+A[t+24>>2]|0,f=A[t+16>>2],(0|R)==(0|((0|(e=A[t+12>>2]))!=(0|f)?m(f-e>>2,341)-1:0))?(xa(t+8|0),R=A[t+24>>2]+A[t+28>>2]|0,f=A[t+12>>2]):f=e,e=A[f+((e=(R>>>0)/341|0)<<2)>>2]+m(R-m(e,341)|0,12)|0,A[e+8>>2]=T,A[e+4>>2]=u,A[e>>2]=r,A[t+28>>2]=A[t+28>>2]+1),!a)break t;e=A[t+28>>2]+A[t+24>>2]|0,f=A[t+16>>2],(0|e)==(0|((0|(r=A[t+12>>2]))!=(0|f)?m(f-r>>2,341)-1:0))?(xa(t+8|0),e=A[t+24>>2]+A[t+28>>2]|0,f=A[t+12>>2]):f=r,r=A[f+((r=(e>>>0)/341|0)<<2)>>2]+m(e-m(r,341)|0,12)|0,A[r+8>>2]=_,A[r+4>>2]=u,A[r>>2]=a,r=A[t+28>>2]+1|0,A[t+28>>2]=r;break f}if(u=0,h)for(;;){if(A[o+12>>2])for(T=A[o+548>>2],n=A[W>>2],G=A[o+604>>2],b=A[o+616>>2],r=0;;){A[G+(A[(U=(r<<2)+b|0)>>2]<<2)>>2]=0,f=A[o>>2],a=A[U>>2]<<2;o:if((0|f)!=(0|(e=A[a+n>>2])))if(d=a+G|0,(0|(V=f-e|0))<=(0|(f=32-(R=A[o+560>>2])|0))){if((0|(a=A[o+556>>2]))==(0|T)){a=0;break i}if(A[d>>2]=A[a>>2]<<R>>>32-V,e=V+A[o+560>>2]|0,A[o+560>>2]=e,32!=(0|e))break o;A[o+560>>2]=0,A[o+556>>2]=a+4}else{if((0|T)==(0|(e=(_=A[o+556>>2])+4|0))){a=0;break i}a=A[_>>2],A[o+556>>2]=e,e=V-f|0,A[o+560>>2]=e,A[d>>2]=A[_+4>>2]>>>32-e|a<<R>>>32-V}if(a=A[U>>2]<<2,A[(e=a+G|0)>>2]=A[e>>2]|A[a+A[N>>2]>>2],!((r=r+1|0)>>>0<s[o+12>>2]))break}_=0;o:if((0|(r=A[i+16>>2]))!=A[i+20>>2])for(;;){if(d=A[i+28>>2],n=m(_,20)+r|0,b=A[n>>2],k[b+84|0]||(d=A[A[b+68>>2]+(d<<2)>>2]),s[b+80>>2]<=d>>>0)break o;if(e=f=A[o+604>>2]+(A[n+4>>2]<<2)|0,!((a=A[n+12>>2])>>>0>3)&&(r=0,e=A[i+12>>2],A[n+16>>2])){for(;e=(e=qa(e,f+(r<<2)|0,a))+(a=A[n+12>>2])|0,(r=r+1|0)>>>0<s[n+16>>2];);e=A[i+12>>2]}if(r=A[b+40>>2],qa(A[A[b>>2]>>2]+m(r,d)|0,e,r),_=_+1|0,r=A[i+16>>2],!(_>>>0<(A[i+20>>2]-r|0)/20>>>0))break}if(A[i+28>>2]=A[i+28>>2]+1,A[o+8>>2]=A[o+8>>2]+1,(0|h)==(0|(u=u+1|0)))break}}else{if(!h)break t;for(a=A[i+16>>2],e=A[i+20>>2],R=0;;){f=(0|e)==(0|a),r=e,_=0,e=a;o:if(!f)for(;;){if(d=A[i+28>>2],e=r,n=m(_,20)+a|0,b=A[n>>2],k[b+84|0]||(d=A[A[b+68>>2]+(d<<2)>>2]),s[b+80>>2]<=d>>>0)break o;if(e=f=A[N>>2]+(A[n+4>>2]<<2)|0,!((a=A[n+12>>2])>>>0>3)&&(r=0,e=A[i+12>>2],A[n+16>>2])){for(;e=(e=qa(e,f+(r<<2)|0,a))+(a=A[n+12>>2])|0,(r=r+1|0)>>>0<s[n+16>>2];);e=A[i+12>>2]}if(r=A[b+40>>2],qa(A[A[b>>2]>>2]+m(r,d)|0,e,r),e=r=A[i+20>>2],!((_=_+1|0)>>>0<(r-(a=A[i+16>>2])|0)/20>>>0))break}if(A[i+28>>2]=A[i+28>>2]+1,A[o+8>>2]=A[o+8>>2]+1,(0|h)==(0|(R=R+1|0)))break}}r=A[t+28>>2]}if(!r)break}a=1}if(A[t+28>>2]=0,(e=(u=A[t+16>>2])-(r=A[t+12>>2])|0)>>>0>=9)for(;oa(A[r>>2]),r=A[t+12>>2]+4|0,A[t+12>>2]=r,(e=(u=A[t+16>>2])-r|0)>>>0>8;);i=170;i:switch((e>>>2|0)-1|0){case 1:i=341;case 0:A[t+24>>2]=i;break;default:break i}if((0|r)!=(0|u)){for(;oa(A[r>>2]),(0|u)!=(0|(r=r+4|0)););(0|(e=A[t+16>>2]))!=(0|(r=A[t+12>>2]))&&(A[t+16>>2]=e+(3+(r-e|0)&-4))}(r=A[t+8>>2])&&oa(r),Q=t+32|0;break r}sa(),v()}sa(),v()}o=a}}return o}function vd(r,e,a,i){var f=0,t=0,o=0,b=0,n=0,u=0,_=0,d=0,R=0,h=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0;if(n=A[e+8>>2],_=A[e+12>>2],R=A[e+20>>2],!(n>>>0<(b=(t=A[e+16>>2])+4|0)>>>0&(0|_)<=(0|(R=b>>>0<4?R+1|0:R))|(0|_)<(0|R)||(t=t+A[e>>2]|0,A[r>>2]=k[0|t]|k[t+1|0]<<8|k[t+2|0]<<16|k[t+3|0]<<24,n=t=A[e+20>>2],_=(t=(b=A[e+16>>2])+4|0)>>>0<4?n+1|0:n,A[e+16>>2]=t,A[e+20>>2]=_,s[r>>2]>32||(b=b+8|0)>>>0>(_=A[e+8>>2])>>>0&(0|(n=b>>>0<8?n+1|0:n))>=(0|(R=A[e+12>>2]))|(0|n)>(0|R)))){if(t=t+A[e>>2]|0,b=k[0|t]|k[t+1|0]<<8|k[t+2|0]<<16|k[t+3|0]<<24,A[r+4>>2]=b,n=A[e+20>>2],n=(t=A[e+16>>2]+4|0)>>>0<4?n+1|0:n,A[e+16>>2]=t,A[e+20>>2]=n,!b)return 1;if(!(i>>>0<b>>>0)&&(A[r+8>>2]=0,sb(r+16|0,e)&&ua(r+544|0,e)&&ua(r+564|0,e)&&ua(r+584|0,e))){G=A[r+4>>2],e=0,Q=f=Q-32|0,t=r,r=A[r+12>>2],A[f+16>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0;r:{e:{if(r){if(r>>>0>=1073741824)break e;e=pa(i=r<<2),A[f+8>>2]=e,o=e+i|0,A[f+16>>2]=o,ra(e,0,i),A[f+12>>2]=o}b=A[t+628>>2],(i=A[b>>2])&&(A[b+4>>2]=i,oa(i),o=A[f+12>>2],e=A[f+8>>2],r=A[t+12>>2]),A[b+4>>2]=o,A[b>>2]=e,A[b+8>>2]=A[f+16>>2],e=0,A[f+16>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0;a:{if(r){if(r>>>0>=1073741824)break a;u=pa(r<<=2),A[f+8>>2]=u,e=r+u|0,A[f+16>>2]=e,ra(u,0,r),A[f+12>>2]=e}i=A[t+640>>2],(r=A[i>>2])&&(A[i+4>>2]=r,oa(r),u=A[f+8>>2],e=A[f+12>>2]),A[i+4>>2]=e,A[i>>2]=u,A[i+8>>2]=A[f+16>>2],A[f+24>>2]=0,A[f+28>>2]=0,A[f+16>>2]=0,A[f+20>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0,xa(f+8|0),r=((e=A[f+24>>2]+A[f+28>>2]|0)>>>0)/341|0,r=A[A[f+12>>2]+(r<<2)>>2]+m(e-m(r,341)|0,12)|0,A[r+4>>2]=0,A[r+8>>2]=0,A[r>>2]=G,i=1,r=A[f+28>>2]+1|0,A[f+28>>2]=r;i:if(r){for(R=t+16|0;;){if(_=A[f+12>>2],b=A[f+24>>2],e=A[_+((e=((i=b+(o=r-1|0)|0)>>>0)/341|0)<<2)>>2]+m(i-m(e,341)|0,12)|0,T=A[e+8>>2],n=A[e+4>>2],h=A[e>>2],A[f+28>>2]=o,1+(((0|(e=A[f+16>>2]))!=(0|_)?m(e-_>>2,341)-1|0:0)-(r+b|0)|0)>>>0>=682&&(oa(A[e-4>>2]),A[f+16>>2]=A[f+16>>2]-4),h>>>0>G>>>0){i=0;break i}if(i=0,(u=(0|n)!=((r=A[t+12>>2])-1|0)?n+1|0:0)>>>0>=r>>>0)break i;V=(r=A[t+628>>2])+(D=m(T,12))|0,o=A[t>>2],d=u<<2,_=D+A[t+640>>2]|0;f:{t:if((0|o)!=(0|(e=A[d+A[_>>2]>>2]))){o:{b:{n:{if(h>>>0<=2){if(i=A[t+616>>2],A[i>>2]=u,r=1,(e=A[t+12>>2])>>>0>1)break n;break o}if(s[t+8>>2]>s[t+4>>2])break i;if(Aa((i=r)+(r=D+12|0)|0,A[V>>2],A[V+4>>2]),r=d+A[r+A[t+628>>2]>>2]|0,A[r>>2]=A[r>>2]+(1<<o+~e),e=0,r=0,!(i=31^j(h))){r=h>>>1|0;break b}for(;e=Ba((r<<4)+R|0)|e<<1,(0|i)!=(0|(r=r+1|0)););if(e>>>0<=(r=h>>>1|0)>>>0)break b;i=0;break i}for(;u=(e-1|0)!=(0|u)?u+1|0:0,A[i+(r<<2)>>2]=u,(r=r+1|0)>>>0<(e=A[t+12>>2])>>>0;);break o}_=T+1|0;b:{n:{if((0|(r=h-(e=r-e|0)|0))!=(0|e)){if((0|(n=A[t+596>>2]))==A[t+588>>2])break n;b=A[n>>2],i=(o=A[t+600>>2])+1|0,A[t+600>>2]=i,o=b&-2147483648>>>o;A:{if(32==(0|i)){if(A[t+600>>2]=0,A[t+596>>2]=n+4,o)break A;break n}if(!o)break n}}else r=e;i=r,r=e;break b}i=e}if(n=A[t+640>>2],o=A[(b=n+D|0)>>2],A[(e=o+d|0)>>2]=A[e>>2]+1,Aa(n+m(_,12)|0,o,A[b+4>>2]),r&&(b=A[f+28>>2]+A[f+24>>2]|0,o=A[f+16>>2],(0|b)==(0|((0|(e=A[f+12>>2]))!=(0|o)?m(o-e>>2,341)-1:0))?(xa(f+8|0),b=A[f+24>>2]+A[f+28>>2]|0,o=A[f+12>>2]):o=e,e=A[o+((e=(b>>>0)/341|0)<<2)>>2]+m(b-m(e,341)|0,12)|0,A[e+8>>2]=T,A[e+4>>2]=u,A[e>>2]=r,A[f+28>>2]=A[f+28>>2]+1),!i)break t;e=A[f+28>>2]+A[f+24>>2]|0,o=A[f+16>>2],(0|e)==(0|((0|(r=A[f+12>>2]))!=(0|o)?m(o-r>>2,341)-1:0))?(xa(f+8|0),e=A[f+24>>2]+A[f+28>>2]|0,o=A[f+12>>2]):o=r,r=A[o+((r=(e>>>0)/341|0)<<2)>>2]+m(e-m(r,341)|0,12)|0,A[r+8>>2]=_,A[r+4>>2]=u,A[r>>2]=i,r=A[f+28>>2]+1|0,A[f+28>>2]=r;break f}if(U=0,h)for(;;){if(A[t+12>>2])for(Z=A[t+548>>2],n=A[_>>2],W=A[t+604>>2],b=A[t+616>>2],r=0;;){A[(A[(u=b+(r<<2)|0)>>2]<<2)+W>>2]=0,o=A[t>>2],i=A[u>>2]<<2;o:if((0|o)!=(0|(e=A[i+n>>2])))if(T=i+W|0,(0|(N=o-e|0))<=(0|(o=32-(D=A[t+560>>2])|0))){if((0|(i=A[t+556>>2]))==(0|Z)){i=0;break i}if(A[T>>2]=A[i>>2]<<D>>>32-N,e=A[t+560>>2]+N|0,A[t+560>>2]=e,32!=(0|e))break o;A[t+560>>2]=0,A[t+556>>2]=i+4}else{if((0|(e=(d=A[t+556>>2])+4|0))==(0|Z)){i=0;break i}i=A[d>>2],A[t+556>>2]=e,e=N-o|0,A[t+560>>2]=e,A[T>>2]=A[d+4>>2]>>>32-e|i<<D>>>32-N}if(i=A[u>>2]<<2,A[(e=i+W|0)>>2]=A[e>>2]|A[i+A[V>>2]>>2],!((r=r+1|0)>>>0<s[t+12>>2]))break}u=0;o:if((0|(r=A[a+16>>2]))!=A[a+20>>2])for(;;){if(i=A[a+28>>2],d=m(u,20)+r|0,n=A[d>>2],k[n+84|0]||(i=A[A[n+68>>2]+(i<<2)>>2]),s[n+80>>2]<=i>>>0)break o;if(e=b=A[t+604>>2]+(A[d+4>>2]<<2)|0,!((o=A[d+12>>2])>>>0>3)&&(r=0,e=A[a+12>>2],A[d+16>>2])){for(;e=(e=qa(e,b+(r<<2)|0,o))+(o=A[d+12>>2])|0,(r=r+1|0)>>>0<s[d+16>>2];);e=A[a+12>>2]}if(r=A[n+40>>2],qa(A[A[n>>2]>>2]+m(r,i)|0,e,r),u=u+1|0,r=A[a+16>>2],!(u>>>0<(A[a+20>>2]-r|0)/20>>>0))break}if(A[a+28>>2]=A[a+28>>2]+1,A[t+8>>2]=A[t+8>>2]+1,(0|(U=U+1|0))==(0|h))break}}else{if(!h)break t;for(o=A[a+16>>2],e=A[a+20>>2],U=0;;){i=(0|e)==(0|o),r=e,u=0,e=o;o:if(!i)for(;;){if(i=A[a+28>>2],e=r,_=m(u,20)+o|0,n=A[_>>2],k[n+84|0]||(i=A[A[n+68>>2]+(i<<2)>>2]),s[n+80>>2]<=i>>>0)break o;if(e=b=A[V>>2]+(A[_+4>>2]<<2)|0,!((o=A[_+12>>2])>>>0>3)&&(r=0,e=A[a+12>>2],A[_+16>>2])){for(;e=(e=qa(e,b+(r<<2)|0,o))+(o=A[_+12>>2])|0,(r=r+1|0)>>>0<s[_+16>>2];);e=A[a+12>>2]}if(r=A[n+40>>2],qa(A[A[n>>2]>>2]+m(r,i)|0,e,r),e=r=A[a+20>>2],!((u=u+1|0)>>>0<(r-(o=A[a+16>>2])|0)/20>>>0))break}if(A[a+28>>2]=A[a+28>>2]+1,A[t+8>>2]=A[t+8>>2]+1,(0|(U=U+1|0))==(0|h))break}}r=A[f+28>>2]}if(!r)break}i=1}if(A[f+28>>2]=0,(e=(u=A[f+16>>2])-(r=A[f+12>>2])|0)>>>0>=9)for(;oa(A[r>>2]),r=A[f+12>>2]+4|0,A[f+12>>2]=r,(e=(u=A[f+16>>2])-r|0)>>>0>8;);o=170;i:switch((e>>>2|0)-1|0){case 1:o=341;case 0:A[f+24>>2]=o;break;default:break i}if((0|r)!=(0|u)){for(;oa(A[r>>2]),(0|u)!=(0|(r=r+4|0)););(0|(e=A[f+16>>2]))!=(0|(r=A[f+12>>2]))&&(A[f+16>>2]=e+(3+(r-e|0)&-4))}(r=A[f+8>>2])&&oa(r),Q=f+32|0;break r}sa(),v()}sa(),v()}o=i}}return o}function yd(r,e,a,i){var f=0,t=0,o=0,b=0,n=0,u=0,_=0,d=0,R=0,h=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0;if(u=A[e+8>>2],f=A[e+12>>2],o=A[e+20>>2],!(u>>>0<(d=(b=A[e+16>>2])+4|0)>>>0&(0|f)<=(0|(o=d>>>0<4?o+1|0:o))|(0|f)<(0|o)||(b=b+A[e>>2]|0,A[r>>2]=k[0|b]|k[b+1|0]<<8|k[b+2|0]<<16|k[b+3|0]<<24,f=b=A[e+20>>2],b=(o=(u=A[e+16>>2])+4|0)>>>0<4?f+1|0:f,A[e+16>>2]=o,A[e+20>>2]=b,s[r>>2]>32||(b=f,(f=u+8|0)>>>0>(_=A[e+8>>2])>>>0&(0|(b=f>>>0<8?b+1|0:b))>=(0|(d=A[e+12>>2]))|(0|b)>(0|d))))){if(b=A[e>>2]+o|0,o=k[0|b]|k[b+1|0]<<8|k[b+2|0]<<16|k[b+3|0]<<24,A[r+4>>2]=o,b=A[e+20>>2],b=(f=A[e+16>>2]+4|0)>>>0<4?b+1|0:b,A[e+16>>2]=f,A[e+20>>2]=b,!o)return 1;if(!(i>>>0<o>>>0)&&(A[r+8>>2]=0,ta(r+16|0,e)&&ua(r+32|0,e)&&ua(r+52|0,e)&&ua(r+72|0,e))){N=A[r+4>>2],b=a,e=0,o=0,Q=f=Q-32|0,i=r,r=A[r+12>>2],A[f+16>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0;r:{e:{if(r){if(r>>>0>=1073741824)break e;e=pa(a=r<<2),A[f+8>>2]=e,o=e+a|0,A[f+16>>2]=o,ra(e,0,a),A[f+12>>2]=o}a=A[i+116>>2],(n=A[a>>2])&&(A[a+4>>2]=n,oa(n),o=A[f+12>>2],e=A[f+8>>2],r=A[i+12>>2]),A[a+4>>2]=o,A[a>>2]=e,A[a+8>>2]=A[f+16>>2],e=0,A[f+16>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0;a:{if(r){if(r>>>0>=1073741824)break a;t=pa(r<<=2),A[f+8>>2]=t,e=r+t|0,A[f+16>>2]=e,ra(t,0,r),A[f+12>>2]=e}r=A[i+128>>2],(a=A[r>>2])&&(A[r+4>>2]=a,oa(a),t=A[f+8>>2],e=A[f+12>>2]),A[r+4>>2]=e,A[r>>2]=t,A[r+8>>2]=A[f+16>>2],A[f+24>>2]=0,A[f+28>>2]=0,A[f+16>>2]=0,A[f+20>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0,xa(f+8|0),e=((r=A[f+24>>2]+A[f+28>>2]|0)>>>0)/341|0,r=A[A[f+12>>2]+(e<<2)>>2]+m(r-m(e,341)|0,12)|0,A[r+4>>2]=0,A[r+8>>2]=0,A[r>>2]=N,a=1,r=A[f+28>>2]+1|0,A[f+28>>2]=r;i:if(r){for(W=i+16|0;;){if(e=A[f+12>>2],t=A[f+24>>2],a=A[e+((n=((a=t+(d=r-1|0)|0)>>>0)/341|0)<<2)>>2]+m(a-m(n,341)|0,12)|0,o=A[a+8>>2],n=A[a+4>>2],u=A[a>>2],A[f+28>>2]=d,1+(((0|e)!=(0|(a=A[f+16>>2]))?m(a-e>>2,341)-1|0:0)-(r+t|0)|0)>>>0>=682&&(oa(A[a-4>>2]),A[f+16>>2]=A[f+16>>2]-4),a=0,u>>>0>N>>>0)break i;if((r=((e=A[i+12>>2])-1|0)!=(0|n)?n+1|0:0)>>>0>=e>>>0)break i;D=(t=m(o,12))+A[i+128>>2]|0,d=t+A[i+116>>2]|0;f:if((0|(n=A[i>>2]))!=(0|(h=A[(_=r<<2)+A[D>>2]>>2]))){t:{o:{b:{n:{if(u>>>0<=2){if(a=A[i+104>>2],A[a>>2]=r,t=1,(e=A[i+12>>2])>>>0>1)break n;break t}if(s[i+8>>2]>s[i+4>>2])break i;if((0|(T=(e=A[i+116>>2])+(D=m(R=o+1|0,12))|0))!=(0|d)&&(Aa(T,A[d>>2],A[d+4>>2]),e=A[i+116>>2]),e=_+A[e+D>>2]|0,A[e>>2]=A[e>>2]+(1<<n+~h),A[f+4>>2]=0,pc(W,31^j(u),f+4|0),(e=u>>>1|0)>>>0<(n=A[f+4>>2])>>>0)break i;if((0|(a=u-(e=e-n|0)|0))!=(0|e)){if((0|(n=A[i+84>>2]))==A[i+76>>2])break b;u=A[n>>2],h=(d=A[i+88>>2])+1|0,A[i+88>>2]=h,u&=-2147483648>>>d;A:{if(32==(0|h)){if(A[i+88>>2]=0,A[i+84>>2]=n+4,u)break A;break b}if(!u)break b}}else a=e;n=a,a=e;break o}for(;r=(e-1|0)!=(0|r)?r+1|0:0,A[a+(t<<2)>>2]=r,(e=A[i+12>>2])>>>0>(t=t+1|0)>>>0;);break t}n=e}if(e=A[i+128>>2],t=A[(u=e+t|0)>>2],A[(d=t+_|0)>>2]=A[d>>2]+1,Aa(e+D|0,t,A[u+4>>2]),a&&(e=A[f+28>>2]+A[f+24>>2]|0,u=A[f+16>>2],(0|e)==(0|((0|(t=A[f+12>>2]))!=(0|u)?m(u-t>>2,341)-1:0))&&(xa(f+8|0),t=A[f+12>>2],e=A[f+24>>2]+A[f+28>>2]|0),e=A[((u=(e>>>0)/341|0)<<2)+t>>2]+m(e-m(u,341)|0,12)|0,A[e+8>>2]=o,A[e+4>>2]=r,A[e>>2]=a,A[f+28>>2]=A[f+28>>2]+1),!n)break f;(0|(e=A[f+28>>2]+A[f+24>>2]|0))==(0|((0|(a=A[f+16>>2]))!=(0|(t=A[f+12>>2]))?m(a-t>>2,341)-1:0))&&(xa(f+8|0),t=A[f+12>>2],e=A[f+24>>2]+A[f+28>>2]|0),e=A[((a=(e>>>0)/341|0)<<2)+t>>2]+m(e-m(a,341)|0,12)|0,A[e+8>>2]=R,A[e+4>>2]=r,A[e>>2]=n,A[f+28>>2]=A[f+28>>2]+1;break f}if(h=0,u)for(;;){if(A[i+12>>2])for(n=A[i+36>>2],T=A[D>>2],a=A[i+92>>2],G=A[i+104>>2],r=0;;){A[a+(A[(o=(r<<2)+G|0)>>2]<<2)>>2]=0,e=A[i>>2],t=A[o>>2]<<2;t:if((0|e)!=(0|(_=A[t+T>>2])))if(t=a+t|0,(0|(e=e-_|0))<=(0|(U=32-(_=A[i+48>>2])|0))){if((0|(R=A[i+44>>2]))==(0|n)){a=0;break i}if(A[t>>2]=A[R>>2]<<_>>>32-e,e=e+A[i+48>>2]|0,A[i+48>>2]=e,32!=(0|e))break t;A[i+48>>2]=0,A[i+44>>2]=R+4}else{if((0|n)==(0|(V=(R=A[i+44>>2])+4|0))){a=0;break i}Z=A[R>>2],A[i+44>>2]=V,U=e-U|0,A[i+48>>2]=U,A[t>>2]=A[R+4>>2]>>>32-U|Z<<_>>>32-e}if(e=A[o>>2]<<2,A[(o=e+a|0)>>2]=A[o>>2]|A[e+A[d>>2]>>2],!((r=r+1|0)>>>0<s[i+12>>2]))break}n=0;t:if((0|(r=A[b+16>>2]))!=A[b+20>>2])for(;;){if(t=A[b+28>>2],a=m(n,20)+r|0,_=A[a>>2],k[_+84|0]||(t=A[A[_+68>>2]+(t<<2)>>2]),s[_+80>>2]<=t>>>0)break t;if(e=R=A[i+92>>2]+(A[a+4>>2]<<2)|0,!((o=A[a+12>>2])>>>0>3)&&(r=0,e=A[b+12>>2],A[a+16>>2])){for(;e=(e=qa(e,R+(r<<2)|0,o))+(o=A[a+12>>2])|0,(r=r+1|0)>>>0<s[a+16>>2];);e=A[b+12>>2]}if(r=A[_+40>>2],qa(A[A[_>>2]>>2]+m(r,t)|0,e,r),n=n+1|0,r=A[b+16>>2],!(n>>>0<(A[b+20>>2]-r|0)/20>>>0))break}if(A[b+28>>2]=A[b+28>>2]+1,A[i+8>>2]=A[i+8>>2]+1,(0|u)==(0|(h=h+1|0)))break}}else{if(!u)break f;if(D=0,(0|(e=A[b+20>>2]))==(0|(o=A[b+16>>2]))){r=A[i+8>>2],A[b+28>>2]=u+A[b+28>>2],A[i+8>>2]=r+u;break f}for(;;){a=(0|e)==(0|o),r=e,n=0,e=o;t:if(!a)for(;;){if(t=A[b+28>>2],e=r,a=m(n,20)+o|0,_=A[a>>2],k[_+84|0]||(t=A[A[_+68>>2]+(t<<2)>>2]),s[_+80>>2]<=t>>>0)break t;if(e=h=A[d>>2]+(A[a+4>>2]<<2)|0,!((o=A[a+12>>2])>>>0>3)&&(r=0,e=A[b+12>>2],A[a+16>>2])){for(;e=(e=qa(e,h+(r<<2)|0,o))+(o=A[a+12>>2])|0,(r=r+1|0)>>>0<s[a+16>>2];);e=A[b+12>>2]}if(r=A[_+40>>2],qa(A[A[_>>2]>>2]+m(r,t)|0,e,r),!((n=n+1|0)>>>0<((e=r=A[b+20>>2])-(o=A[b+16>>2])|0)/20>>>0))break}if(A[b+28>>2]=A[b+28>>2]+1,A[i+8>>2]=A[i+8>>2]+1,(0|u)==(0|(D=D+1|0)))break}}if(!(r=A[f+28>>2]))break}a=1}if(A[f+28>>2]=0,(e=(t=A[f+16>>2])-(r=A[f+12>>2])|0)>>>0>=9)for(;oa(A[r>>2]),r=A[f+12>>2]+4|0,A[f+12>>2]=r,(e=(t=A[f+16>>2])-r|0)>>>0>8;);o=170;i:switch((e>>>2|0)-1|0){case 1:o=341;case 0:A[f+24>>2]=o;break;default:break i}if((0|r)!=(0|t)){for(;oa(A[r>>2]),(0|t)!=(0|(r=r+4|0)););(0|(r=A[f+16>>2]))!=(0|(e=A[f+12>>2]))&&(A[f+16>>2]=r+(3+(e-r|0)&-4))}(r=A[f+8>>2])&&oa(r),Q=f+32|0;break r}sa(),v()}sa(),v()}n=a}}return n}function xd(r,e,a,i){var f=0,t=0,o=0,b=0,n=0,u=0,_=0,d=0,R=0,h=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0;if(n=A[e+8>>2],_=A[e+12>>2],h=A[e+20>>2],!((0|_)<=(0|(h=(t=(b=A[e+16>>2])+4|0)>>>0<4?h+1|0:h))&t>>>0>n>>>0|(0|_)<(0|h)||(b=b+A[e>>2]|0,A[r>>2]=k[0|b]|k[b+1|0]<<8|k[b+2|0]<<16|k[b+3|0]<<24,n=b=A[e+20>>2],_=(b=(t=A[e+16>>2])+4|0)>>>0<4?n+1|0:n,A[e+16>>2]=b,A[e+20>>2]=_,s[r>>2]>32||(t=t+8|0)>>>0>(_=A[e+8>>2])>>>0&(0|(n=t>>>0<8?n+1|0:n))>=(0|(h=A[e+12>>2]))|(0|n)>(0|h)))){if(b=A[e>>2]+b|0,t=k[0|b]|k[b+1|0]<<8|k[b+2|0]<<16|k[b+3|0]<<24,A[r+4>>2]=t,n=A[e+20>>2],n=(b=A[e+16>>2]+4|0)>>>0<4?n+1|0:n,A[e+16>>2]=b,A[e+20>>2]=n,!t)return 1;if(!(i>>>0<t>>>0)&&(A[r+8>>2]=0,ta(r+16|0,e)&&ua(r+32|0,e)&&ua(r+52|0,e)&&ua(r+72|0,e))){G=A[r+4>>2],b=a,e=0,a=0,Q=f=Q-32|0,t=r,r=A[r+12>>2],A[f+16>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0;r:{e:{if(r){if(r>>>0>=1073741824)break e;e=pa(i=r<<2),A[f+8>>2]=e,a=e+i|0,A[f+16>>2]=a,ra(e,0,i),A[f+12>>2]=a}u=A[t+116>>2],(i=A[u>>2])&&(A[u+4>>2]=i,oa(i),a=A[f+12>>2],e=A[f+8>>2],r=A[t+12>>2]),A[u+4>>2]=a,A[u>>2]=e,A[u+8>>2]=A[f+16>>2],e=0,A[f+16>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0;a:{if(r){if(r>>>0>=1073741824)break a;o=pa(r<<=2),A[f+8>>2]=o,e=r+o|0,A[f+16>>2]=e,ra(o,0,r),A[f+12>>2]=e}a=A[t+128>>2],(r=A[a>>2])&&(A[a+4>>2]=r,oa(r),o=A[f+8>>2],e=A[f+12>>2]),A[a+4>>2]=e,A[a>>2]=o,A[a+8>>2]=A[f+16>>2],A[f+24>>2]=0,A[f+28>>2]=0,A[f+16>>2]=0,A[f+20>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0,xa(f+8|0),r=((e=A[f+24>>2]+A[f+28>>2]|0)>>>0)/341|0,r=A[A[f+12>>2]+(r<<2)>>2]+m(e-m(r,341)|0,12)|0,A[r+4>>2]=0,A[r+8>>2]=0,A[r>>2]=G,i=1,r=A[f+28>>2]+1|0,A[f+28>>2]=r;i:if(r){for(h=t+16|0;;){if(n=A[f+12>>2],u=A[f+24>>2],e=A[n+((e=((a=u+(i=r-1|0)|0)>>>0)/341|0)<<2)>>2]+m(a-m(e,341)|0,12)|0,D=A[e+8>>2],a=A[e+4>>2],R=A[e>>2],A[f+28>>2]=i,1+(((0|(e=A[f+16>>2]))!=(0|n)?m(e-n>>2,341)-1|0:0)-(r+u|0)|0)>>>0>=682&&(oa(A[e-4>>2]),A[f+16>>2]=A[f+16>>2]-4),R>>>0>G>>>0){i=0;break i}if(i=0,(r=(0|a)!=((e=A[t+12>>2])-1|0)?a+1|0:0)>>>0>=e>>>0)break i;N=(e=A[t+116>>2])+(U=m(D,12))|0,u=A[t>>2],o=r<<2,_=U+A[t+128>>2]|0;f:if((0|u)!=(0|(a=A[o+A[_>>2]>>2]))){t:{o:{b:{n:{if(R>>>0<=2){if(a=A[t+104>>2],A[a>>2]=r,o=1,(e=A[t+12>>2])>>>0>1)break n;break t}if(s[t+8>>2]>s[t+4>>2])break i;if(Aa((n=e)+(e=U+12|0)|0,A[N>>2],A[N+4>>2]),e=o+A[e+A[t+116>>2]>>2]|0,A[e>>2]=A[e>>2]+(1<<u+~a),A[f+4>>2]=0,pc(h,31^j(R),f+4|0),(a=R>>>1|0)>>>0<(e=A[f+4>>2])>>>0)break i;if(d=D+1|0,(0|(a=R-(e=a-e|0)|0))!=(0|e)){if((0|(_=A[t+84>>2]))==A[t+76>>2])break b;n=A[_>>2],i=(u=A[t+88>>2])+1|0,A[t+88>>2]=i,u=n&-2147483648>>>u;A:{if(32==(0|i)){if(A[t+88>>2]=0,A[t+84>>2]=_+4,u)break A;break b}if(!u)break b}}else a=e;u=a,a=e;break o}for(;r=(e-1|0)!=(0|r)?r+1|0:0,A[a+(o<<2)>>2]=r,(e=A[t+12>>2])>>>0>(o=o+1|0)>>>0;);break t}u=e}if(_=A[t+128>>2],i=A[(n=_+U|0)>>2],A[(e=i+o|0)>>2]=A[e>>2]+1,Aa(_+m(d,12)|0,i,A[n+4>>2]),a&&((0|(e=A[f+28>>2]+A[f+24>>2]|0))==(0|((0|(i=A[f+16>>2]))!=(0|(o=A[f+12>>2]))?m(i-o>>2,341)-1:0))&&(xa(f+8|0),o=A[f+12>>2],e=A[f+24>>2]+A[f+28>>2]|0),e=A[((i=(e>>>0)/341|0)<<2)+o>>2]+m(e-m(i,341)|0,12)|0,A[e+8>>2]=D,A[e+4>>2]=r,A[e>>2]=a,A[f+28>>2]=A[f+28>>2]+1),!u)break f;(0|(e=A[f+28>>2]+A[f+24>>2]|0))==(0|((0|(a=A[f+16>>2]))!=(0|(o=A[f+12>>2]))?m(a-o>>2,341)-1:0))&&(xa(f+8|0),o=A[f+12>>2],e=A[f+24>>2]+A[f+28>>2]|0),e=A[((a=(e>>>0)/341|0)<<2)+o>>2]+m(e-m(a,341)|0,12)|0,A[e+8>>2]=d,A[e+4>>2]=r,A[e>>2]=u,A[f+28>>2]=A[f+28>>2]+1;break f}if(V=0,R)for(;;){if(A[t+12>>2])for(Z=A[t+36>>2],n=A[_>>2],W=A[t+92>>2],u=A[t+104>>2],r=0;;){A[W+(A[(D=(r<<2)+u|0)>>2]<<2)>>2]=0,i=A[t>>2],a=A[D>>2]<<2;t:if((0|i)!=(0|(e=A[a+n>>2])))if(U=a+W|0,(0|(T=i-e|0))<=(0|(i=32-(o=A[t+48>>2])|0))){if((0|(a=A[t+44>>2]))==(0|Z)){i=0;break i}if(A[U>>2]=A[a>>2]<<o>>>32-T,e=T+A[t+48>>2]|0,A[t+48>>2]=e,32!=(0|e))break t;A[t+48>>2]=0,A[t+44>>2]=a+4}else{if((0|Z)==(0|(e=(d=A[t+44>>2])+4|0))){i=0;break i}a=A[d>>2],A[t+44>>2]=e,e=T-i|0,A[t+48>>2]=e,A[U>>2]=A[d+4>>2]>>>32-e|a<<o>>>32-T}if(a=A[D>>2]<<2,A[(e=a+W|0)>>2]=A[e>>2]|A[a+A[N>>2]>>2],!((r=r+1|0)>>>0<s[t+12>>2]))break}u=0;t:if((0|(r=A[b+16>>2]))!=A[b+20>>2])for(;;){if(o=A[b+28>>2],d=m(u,20)+r|0,n=A[d>>2],k[n+84|0]||(o=A[A[n+68>>2]+(o<<2)>>2]),s[n+80>>2]<=o>>>0)break t;if(e=i=A[t+92>>2]+(A[d+4>>2]<<2)|0,!((a=A[d+12>>2])>>>0>3)&&(r=0,e=A[b+12>>2],A[d+16>>2])){for(;e=(e=qa(e,i+(r<<2)|0,a))+(a=A[d+12>>2])|0,(r=r+1|0)>>>0<s[d+16>>2];);e=A[b+12>>2]}if(r=A[n+40>>2],qa(A[A[n>>2]>>2]+m(r,o)|0,e,r),u=u+1|0,r=A[b+16>>2],!(u>>>0<(A[b+20>>2]-r|0)/20>>>0))break}if(A[b+28>>2]=A[b+28>>2]+1,A[t+8>>2]=A[t+8>>2]+1,(0|R)==(0|(V=V+1|0)))break}}else{if(!R)break f;if((0|(e=A[b+20>>2]))==(0|(a=A[b+16>>2]))){r=A[t+8>>2],A[b+28>>2]=R+A[b+28>>2],A[t+8>>2]=r+R;break f}for(;;){n=(0|e)==(0|a),r=e,u=0,e=a;t:if(!n)for(;;){if(o=A[b+28>>2],e=r,d=m(u,20)+a|0,_=A[d>>2],k[_+84|0]||(o=A[A[_+68>>2]+(o<<2)>>2]),s[_+80>>2]<=o>>>0)break t;if(e=n=A[N>>2]+(A[d+4>>2]<<2)|0,!((a=A[d+12>>2])>>>0>3)&&(r=0,e=A[b+12>>2],A[d+16>>2])){for(;e=(e=qa(e,n+(r<<2)|0,a))+(a=A[d+12>>2])|0,(r=r+1|0)>>>0<s[d+16>>2];);e=A[b+12>>2]}if(r=A[_+40>>2],qa(A[A[_>>2]>>2]+m(r,o)|0,e,r),!((u=u+1|0)>>>0<((e=r=A[b+20>>2])-(a=A[b+16>>2])|0)/20>>>0))break}if(A[b+28>>2]=A[b+28>>2]+1,A[t+8>>2]=A[t+8>>2]+1,(0|R)==(0|(i=i+1|0)))break}}if(!(r=A[f+28>>2]))break}i=1}if(A[f+28>>2]=0,(e=(o=A[f+16>>2])-(r=A[f+12>>2])|0)>>>0>=9)for(;oa(A[r>>2]),r=A[f+12>>2]+4|0,A[f+12>>2]=r,(e=(o=A[f+16>>2])-r|0)>>>0>8;);a=170;i:switch((e>>>2|0)-1|0){case 1:a=341;case 0:A[f+24>>2]=a;break;default:break i}if((0|r)!=(0|o)){for(;oa(A[r>>2]),(0|o)!=(0|(r=r+4|0)););(0|(e=A[f+16>>2]))!=(0|(r=A[f+12>>2]))&&(A[f+16>>2]=e+(3+(r-e|0)&-4))}(r=A[f+8>>2])&&oa(r),Q=f+32|0,u=i;break r}sa(),v()}sa(),v()}}}return u}function $c(r,e){var a,i=0,f=0,t=0,o=0,b=0,n=0,k=0,u=0,s=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0;Q=a=Q-32|0,b=A[A[r+4>>2]+44>>2],i=A[r+8>>2],f=A[i>>2],i=A[i+4>>2],A[a+24>>2]=0,A[a+16>>2]=0,A[a+20>>2]=0,f=(i-f>>2>>>0)/3|0,i=A[b+96>>2];r:{if(f>>>0>(o=(A[b+100>>2]-i|0)/12|0)>>>0){if((t=f-o|0)>>>0<=((n=A[b+104>>2])-(i=A[b+100>>2])|0)/12>>>0){if(t){if(f=i,n=1+(((o=m(t,12)-12|0)>>>0)/12|0)&3)for(;s=A[a+20>>2],A[f>>2]=A[a+16>>2],A[f+4>>2]=s,A[f+8>>2]=A[a+24>>2],f=f+12|0,(0|n)!=(0|(k=k+1|0)););if(i=m(t,12)+i|0,!(o>>>0<36))for(;o=A[a+20>>2],A[f>>2]=A[a+16>>2],A[f+4>>2]=o,A[f+8>>2]=A[a+24>>2],A[f+20>>2]=A[a+24>>2],o=A[a+20>>2],A[f+12>>2]=A[a+16>>2],A[f+16>>2]=o,A[f+32>>2]=A[a+24>>2],o=A[a+20>>2],A[f+24>>2]=A[a+16>>2],A[f+28>>2]=o,o=A[a+20>>2],A[f+36>>2]=A[a+16>>2],A[f+40>>2]=o,A[f+44>>2]=A[a+24>>2],(0|(f=f+48|0))!=(0|i););}A[b+100>>2]=i;break r}e:{if((f=(d=(i-(o=A[b+96>>2])|0)/12|0)+t|0)>>>0<357913942){if(n=(o=(n-o|0)/12|0)<<1,n=o>>>0>=178956970?357913941:f>>>0<n>>>0?n:f){if(n>>>0>=357913942)break e;s=pa(m(n,12))}if(f=o=m(d,12)+s|0,j=1+(((d=(t=m(t,12))-12|0)>>>0)/12|0)&3)for(;D=A[a+20>>2],A[f>>2]=A[a+16>>2],A[f+4>>2]=D,A[f+8>>2]=A[a+24>>2],f=f+12|0,(0|j)!=(0|(k=k+1|0)););if(t=t+o|0,d>>>0>=36)for(;k=A[a+20>>2],A[f>>2]=A[a+16>>2],A[f+4>>2]=k,A[f+8>>2]=A[a+24>>2],A[f+20>>2]=A[a+24>>2],k=A[a+20>>2],A[f+12>>2]=A[a+16>>2],A[f+16>>2]=k,A[f+32>>2]=A[a+24>>2],k=A[a+20>>2],A[f+24>>2]=A[a+16>>2],A[f+28>>2]=k,k=A[a+20>>2],A[f+36>>2]=A[a+16>>2],A[f+40>>2]=k,A[f+44>>2]=A[a+24>>2],(0|t)!=(0|(f=f+48|0)););if((0|(k=A[b+96>>2]))!=(0|i)){for(;d=A[(i=i-12|0)+4>>2],A[(f=o=o-12|0)>>2]=A[i>>2],A[f+4>>2]=d,A[f+8>>2]=A[i+8>>2],(0|i)!=(0|k););i=A[b+96>>2]}A[b+104>>2]=m(n,12)+s,A[b+100>>2]=t,A[b+96>>2]=o,i&&oa(i);break r}sa(),v()}wa(),v()}f>>>0>=o>>>0||(A[b+100>>2]=i+m(f,12))}if(A[r+216>>2]!=A[r+220>>2]){f=0,A[a+24>>2]=0,A[a+16>>2]=0,A[a+20>>2]=0,s=A[r+8>>2],i=A[s>>2],b=A[s+4>>2],A[a+8>>2]=0,A[a>>2]=0,A[a+4>>2]=0,e=0;r:{e:{a:{i:{f:{t:{if((0|i)!=(0|b)){if((0|(i=b-i|0))<0)break t;e=pa(i),A[a>>2]=e,A[a+8>>2]=(-4&i)+e,N=a,V=ra(e,0,i)+i|0,A[N+4>>2]=V}if(i=A[s+24>>2],(A[s+28>>2]-i|0)<4)break e;for(o=0;;){o:if(-1!=(0|(b=A[(h<<2)+i>>2]))){b:if(!(A[A[r+120>>2]+(h>>>3&536870908)>>2]>>>h&1)&&(0|(d=A[r+216>>2]))!=(0|(i=A[r+220>>2])))for(t=b+2|0,j=(n=(b>>>0)%3|0)?b-1|0:t,D=(i=(i-d|0)/144|0)>>>0<=1?1:i,k=0,T=!!(0|n)|-1!=(0|t);;){if(U=b<<2,n=m(k,144)+d|0,i=A[U+A[A[n+68>>2]>>2]>>2],A[A[n+16>>2]+(i>>>3&536870908)>>2]>>>i&1&&(i=-1,T&&(i=-1,-1!=(0|(t=A[A[s+12>>2]+(j<<2)>>2]))&&(i=t-1|0,(t>>>0)%3|0||(i=t+2|0))),(0|b)!=(0|i)))for(t=U,U=A[n+32>>2],n=A[t+U>>2];;){if(t=0,-1==(0|i))break r;if((0|n)!=A[U+(i<<2)>>2]){b=i;break b}n:{if((i>>>0)%3|0)t=i-1|0;else if(_=-1,-1==(0|(t=i+2|0)))break n;_=-1,-1!=(0|(i=A[A[s+12>>2]+(t<<2)>>2]))&&(_=i-1|0,(i>>>0)%3|0||(_=i+2|0))}if((0|b)==(0|(i=_)))break}if((0|D)==(0|(k=k+1|0)))break}if(t=(n=u-o|0)>>2,A[(b<<2)+e>>2]=t,u>>>0<R>>>0)A[u>>2]=b,u=u+4|0,A[a+20>>2]=u;else{if((i=t+1|0)>>>0>=1073741824)break f;if(u=(f=R-o|0)>>>1|0,i=f>>>0>=2147483644?1073741823:i>>>0<u>>>0?u:i){if(i>>>0>=1073741824)break i;f=pa(i<<2)}else f=0;A[(t=f+(t<<2)|0)>>2]=b,R=(_=i<<2)+(i=va(f,o,n))|0,A[a+24>>2]=R,u=t+4|0,A[a+20>>2]=u,A[a+16>>2]=i,o&&(oa(o),s=A[r+8>>2]),o=i}if(-1!=(0|b)){if((b>>>0)%3|0)i=b-1|0;else if(-1==(0|(i=b+2|0)))break o;if(-1!=(0|(i=A[A[s+12>>2]+(i<<2)>>2]))&&-1!=(0|(i=i+((i>>>0)%3|0?-1:2)|0))&&(t=b,(0|i)!=(0|b)))for(;;){n=i;b:{n:if((0|(i=A[r+220>>2]))!=(0|(k=A[r+216>>2]))){for(d=(i=(i-k|0)/144|0)>>>0<=1?1:i,i=0;;){if(j=A[32+(k+m(i,144)|0)>>2],A[j+(D=n<<2)>>2]==A[j+(t<<2)>>2]){if((0|d)!=(0|(i=i+1|0)))continue;break n}break}if(t=(k=u-f|0)>>2,A[e+D>>2]=t,u>>>0<R>>>0){A[u>>2]=n,u=u+4|0,A[a+20>>2]=u,o=f;break b}if((i=t+1|0)>>>0>=1073741824)break a;if(u=(o=R-f|0)>>>1|0,i=o>>>0>=2147483644?1073741823:i>>>0<u>>>0?u:i){if(i>>>0>=1073741824)break i;o=pa(i<<2)}else o=0;if(A[(t=o+(t<<2)|0)>>2]=n,R=(_=i<<2)+(i=va(o,f,k))|0,A[a+24>>2]=R,u=t+4|0,A[a+20>>2]=u,A[a+16>>2]=i,!f){f=i;break b}oa(f),s=A[r+8>>2],f=i;break b}A[(n<<2)+e>>2]=A[(t<<2)+e>>2]}if(-1==(0|n))break o;if((n>>>0)%3|0)i=n-1|0;else if(-1==(0|(i=n+2|0)))break o;if(-1==(0|(i=A[A[s+12>>2]+(i<<2)>>2])))break o;if(-1==(0|(i=i+((i>>>0)%3|0?-1:2)|0)))break o;if(t=n,(0|i)==(0|b))break}}}if(h=h+1|0,i=A[s+24>>2],!((0|h)<A[s+28>>2]-i>>2))break}break e}sa(),v()}sa(),v()}wa(),v()}sa(),v()}if(n=A[r+4>>2],r=A[n+44>>2],(0|(i=A[r+100>>2]))!=(0|(r=A[r+96>>2]))){if(s=1&(o=(b=(i-r|0)/12|0)>>>0<=1?1:b),i=0,b>>>0>=2)for(k=-2&o,b=0;t=m(i,12),R=A[(o=t+e|0)>>2],h=A[o+4>>2],A[(t=r+t|0)+8>>2]=A[o+8>>2],A[t>>2]=R,A[t+4>>2]=h,t=m(1|i,12),R=A[(o=t+e|0)>>2],h=A[o+4>>2],A[(t=r+t|0)+8>>2]=A[o+8>>2],A[t>>2]=R,A[t+4>>2]=h,i=i+2|0,(0|k)!=(0|(b=b+2|0)););s&&(b=m(i,12),o=A[(i=b+e|0)>>2],t=A[i+4>>2],A[(r=r+b|0)+8>>2]=A[i+8>>2],A[r>>2]=o,A[r+4>>2]=t)}A[A[n+4>>2]+80>>2]=u-f>>2,t=1}i=t,e&&oa(e),f&&(A[a+20>>2]=f,oa(f))}else{if(k=A[r+4>>2],i=A[k+44>>2],(0|(f=A[i+100>>2]))!=(0|(o=A[i+96>>2])))for(R=(i=(f-o|0)/12|0)>>>0<=1?1:i,i=0;;){f=A[r+8>>2],n=o+m(i,12)|0;r:{if(-1!=(0|(b=m(i,3))))if(t=-1,u=A[A[f>>2]+(b<<2)>>2],-1!=(0|(s=b+1|0))){if(t=A[A[f>>2]+(s<<2)>>2],_=-1,-1==(0|(b=b+2|0)))break r}else b=0;else t=A[4+(A[f>>2]+(b<<2)|0)>>2],u=-1,b=1;_=A[A[f>>2]+(b<<2)>>2]}if(A[n+8>>2]=_,A[n+4>>2]=t,A[n>>2]=u,(0|R)==(0|(i=i+1|0)))break}A[A[k+4>>2]+80>>2]=e,i=1}return Q=a+32|0,i}function Od(r,e,a,i,f){var t,o,u,s=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0,E=0,M=0;Q=t=Q-80|0,A[t+76>>2]=e,u=t+55|0,o=t+56|0;r:{e:{a:{i:{f:for(;;){if(d=e,(2147483647^T)<(0|s))break i;T=s+T|0;t:{o:{b:{if(_=k[0|(s=d)])for(;;){n:{A:if(e=255&_){if(37!=(0|e))break n;for(_=s;;){if(37!=k[_+1|0]){e=_;break A}if(s=s+1|0,R=k[_+2|0],_=e=_+2|0,37!=(0|R))break}}else e=s;if((0|(s=s-d|0))>(0|(B=2147483647^T)))break i;if(r&&Ab(r,d,s),s)continue f;A[t+76>>2]=e,s=e+1|0,N=-1,36!=k[e+2|0]|b[e+1|0]-48>>>0>=10||(N=b[e+1|0]-48|0,W=1,s=e+3|0),A[t+76>>2]=s,U=0;A:if((e=(_=b[0|s])-32|0)>>>0>31)h=s;else if(h=s,75913&(e=1<<e))for(;;){if(h=s+1|0,A[t+76>>2]=h,U|=e,(e=(_=b[s+1|0])-32|0)>>>0>=32)break A;if(s=h,!(75913&(e=1<<e)))break}A:if(42!=(0|_)){if((0|(V=Nd(t+76|0)))<0)break i;_=A[t+76>>2]}else{if(36!=k[h+2|0]|b[h+1|0]-48>>>0>=10){if(W)break b;if(_=h+1|0,!r){A[t+76>>2]=_,W=0,V=0;break A}e=A[a>>2],A[a>>2]=e+4,W=0,e=A[e>>2]}else A[((b[h+1|0]<<2)+f|0)-192>>2]=10,_=h+3|0,W=1,e=A[((b[h+1|0]<<3)+i|0)-384>>2];if(A[t+76>>2]=_,V=e,(0|e)>=0)break A;V=0-V|0,U|=8192}if(s=0,D=-1,46==k[0|_])if(42!=k[_+1|0])A[t+76>>2]=_+1,D=Nd(t+76|0),e=A[t+76>>2],Z=1;else{if(36!=k[_+3|0]|b[_+2|0]-48>>>0>=10){if(W)break b;e=_+2|0,D=0,r&&(R=A[a>>2],A[a>>2]=R+4,D=A[R>>2])}else A[((b[_+2|0]<<2)+f|0)-192>>2]=10,e=_+4|0,D=A[((b[_+2|0]<<3)+i|0)-384>>2];A[t+76>>2]=e,Z=~D>>>31|0}else e=_,Z=0;for(;;){if(_=s,h=28,j=e,(s=b[0|e])-123>>>0<4294967238)break a;if(e=j+1|0,!((s=k[13711+(s+m(_,58)|0)|0])-1>>>0<8))break}A[t+76>>2]=e;A:{k:{if(27!=(0|s)){if(!s)break a;if((0|N)>=0){A[(N<<2)+f>>2]=s,s=A[(R=(N<<3)+i|0)+4>>2],A[t+64>>2]=A[R>>2],A[t+68>>2]=s;break k}if(!r)break t;Md(t- -64|0,s,a);break A}if((0|N)>=0)break a}if(s=0,!r)continue f}R=-65537&U,U=8192&U?R:U,N=0,G=1132,h=o;A:{k:{c:{u:{s:{p:{_:{l:{d:{y:{m:{v:{R:{h:{j:{D:switch(s=b[0|j],(s=_&&3==(15&s)?-33&s:s)-88|0){case 11:break A;case 9:case 13:case 14:case 15:break k;case 27:break _;case 12:case 17:break y;case 23:break m;case 0:case 32:break v;case 24:break R;case 22:break h;case 29:break j;case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 10:case 16:case 18:case 19:case 20:case 21:case 25:case 26:case 28:case 30:case 31:break o;default:break D}D:switch(s-65|0){case 0:case 4:case 5:case 6:break k;case 2:break s;case 1:case 3:break o;default:break D}if(83==(0|s))break p;break o}j=A[t+64>>2],R=A[t+68>>2],G=1132;break d}s=0;h:switch(255&_){case 0:case 1:case 6:A[A[t+64>>2]>>2]=T;continue f;case 2:d=A[t+64>>2],A[d>>2]=T,A[d+4>>2]=T>>31;continue f;case 3:n[A[t+64>>2]>>1]=T;continue f;case 4:b[A[t+64>>2]]=T;continue f;case 7:break h;default:continue f}d=A[t+64>>2],A[d>>2]=T,A[d+4>>2]=T>>31;continue f}D=D>>>0<=8?8:D,U|=8,s=120}if(d=o,(j=A[t+64>>2])|(R=A[t+68>>2]))for(I=32&s;b[0|(d=d-1|0)]=I|k[14240+(15&j)|0],F=!R&j>>>0>15|!!(0|R),R=(_=R)>>>4|0,j=(15&_)<<28|j>>>4,F;);if(!(A[t+64>>2]|A[t+68>>2])|!(8&U))break l;G=1132+(s>>>4|0)|0,N=2;break l}if(s=o,R=d=A[t+68>>2],d|(j=A[t+64>>2]))for(;b[0|(s=s-1|0)]=7&j|48,_=!R&j>>>0>7|!!(0|R),R=(d=R)>>>3|0,j=(7&d)<<29|j>>>3,_;);if(d=s,!(8&U))break l;D=(0|(s=o-d|0))<(0|D)?D:s+1|0;break l}j=A[t+64>>2],R=d=A[t+68>>2],(0|d)<0?(R=s=0-(!!(0|j)+R|0)|0,j=0-j|0,A[t+64>>2]=j,A[t+68>>2]=s,N=1,G=1132):2048&U?(N=1,G=1133):G=(N=1&U)?1134:1132}if(_=o,R)for(;E=_=_-1|0,M=j-Rj(F=Tj(j,s=R,10,0),d=Y,10,0)|48,b[0|E]=M,j=F,R=d,s>>>0>9;);if(d=j)for(;s=(d>>>0)/10|0,b[0|(_=_-1|0)]=d-m(s,10)|48,R=d>>>0>9,d=s,R;);d=_}if((0|D)<0&&Z)break i;if(U=Z?-65537&U:U,!(D|!!((s=A[t+64>>2])|(R=A[t+68>>2])))){d=o,D=0;break o}D=(0|(s=!(s|R)+(o-d|0)|0))<(0|D)?D:s;break o}h=_=D>>>0>=2147483647?2147483647:D,U=!!(0|_);_:{l:{d:{y:if(!(!(3&(s=d=(d=A[t+64>>2])||1614))|!_))for(;;){if(!k[0|s])break d;if(U=!!(0|(h=h-1|0)),!(3&(s=s+1|0)))break y;if(!h)break}if(!U)break l;if(!(!k[0|s]|h>>>0<4))for(;;){if(~(j=A[s>>2])&j-16843009&-2139062144)break d;if(s=s+4|0,!((h=h-4|0)>>>0>3))break}if(!h)break l}for(;;){if(!k[0|s])break _;if(s=s+1|0,!(h=h-1|0))break}}s=0}if(h=(s=s?s-d|0:_)+d|0,(0|D)>=0){U=R,D=s;break o}if(U=R,D=s,k[0|h])break i;break o}if(D){_=A[t+64>>2];break u}s=0,ib(r,32,V,0,U);break c}A[t+12>>2]=0,A[t+8>>2]=A[t+64>>2],_=t+8|0,A[t+64>>2]=_,D=-1}s=0;u:{for(;;){if(!(d=A[_>>2]))break u;if(!((d=(0|(R=Ld(t+4|0,d)))<0)|R>>>0>D-s>>>0)){if(_=_+4|0,D>>>0>(s=s+R|0)>>>0)continue;break u}break}if(d)break e}if(h=61,(0|s)<0)break a;if(ib(r,32,V,s,U),s)for(h=0,_=A[t+64>>2];;){if(!(d=A[_>>2]))break c;if((h=(d=Ld(t+4|0,d))+h|0)>>>0>s>>>0)break c;if(Ab(r,t+4|0,d),_=_+4|0,!(s>>>0>h>>>0))break}else s=0}ib(r,32,V,s,8192^U),s=(0|s)<(0|V)?V:s;continue f}if((0|D)<0&&Z)break i;v()}b[t+55|0]=A[t+64>>2],D=1,d=u,U=R;break o}_=k[s+1|0],s=s+1|0}if(r)break r;if(!W)break t;for(s=1;;){if(r=A[(s<<2)+f>>2]){if(Md((s<<3)+i|0,r,a),T=1,10!=(0|(s=s+1|0)))continue;break r}break}if(T=1,s>>>0>=10)break r;for(;;){if(A[(s<<2)+f>>2])break b;if(10==(0|(s=s+1|0)))break}break r}h=28;break a}if((0|(R=(0|D)>(0|(j=h-d|0))?D:j))>(2147483647^N))break i;if(h=61,(0|B)<(0|(s=(0|(_=R+N|0))<(0|V)?V:_)))break a;ib(r,32,s,_,U),Ab(r,G,N),ib(r,48,s,_,65536^U),ib(r,48,R,j,0),Ab(r,d,j),ib(r,32,s,_,8192^U);continue}break}T=0;break r}h=61}A[3992]=h}T=-1}return Q=t+80|0,T}function $a(r,e){var a,i,f=0,t=0,o=0;Q=a=Q-16|0,A[r+12>>2]=e,A[r+8>>2]=0,A[r>>2]=0,A[r+4>>2]=0,A[(t=r+16|0)>>2]=0,A[t+4>>2]=0,b[t+5|0]=0,b[t+6|0]=0,b[t+7|0]=0,b[t+8|0]=0,b[t+9|0]=0,b[t+10|0]=0,b[t+11|0]=0,b[t+12|0]=0,A[(f=t+16|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+32|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+48|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t- -64|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+80|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+96|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+112|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+128|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+144|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+160|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+176|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+192|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+208|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+224|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+240|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+256|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+272|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+288|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+304|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+320|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+336|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+352|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+368|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+384|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+400|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+416|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+432|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+448|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+464|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(f=t+480|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[(t=t+496|0)>>2]=0,A[t+4>>2]=0,b[t+5|0]=0,b[t+6|0]=0,b[t+7|0]=0,b[t+8|0]=0,b[t+9|0]=0,b[t+10|0]=0,b[t+11|0]=0,b[t+12|0]=0,A[r+528>>2]=0,A[r+532>>2]=0,b[r+533|0]=0,b[r+534|0]=0,b[r+535|0]=0,b[r+536|0]=0,b[r+537|0]=0,b[r+538|0]=0,b[r+539|0]=0,b[r+540|0]=0,A[r+544>>2]=0,A[r+548>>2]=0,A[r+560>>2]=0,A[r+552>>2]=0,A[r+556>>2]=0,A[r+564>>2]=0,A[r+568>>2]=0,A[r+580>>2]=0,A[r+572>>2]=0,A[r+576>>2]=0,A[r+584>>2]=0,A[r+588>>2]=0,A[r+600>>2]=0,A[r+592>>2]=0,A[r+596>>2]=0,A[r+612>>2]=0,A[r+604>>2]=0,A[r+608>>2]=0,i=r+628|0;r:{e:{if(e){if(e>>>0<1073741824)break e;sa(),v()}A[r+616>>2]=0,A[r+620>>2]=0,A[r+624>>2]=0,A[a+8>>2]=0,A[a>>2]=0,A[a+4>>2]=0,t=1;break r}f=pa(t=e<<2),A[r+604>>2]=f,o=f+t|0,A[r+612>>2]=o,ra(f,0,t),A[r+624>>2]=0,A[r+616>>2]=0,A[r+620>>2]=0,A[r+608>>2]=o,f=pa(t),A[r+616>>2]=f,o=f+t|0,A[r+624>>2]=o,ra(f,0,t),A[r+620>>2]=o,f=pa(t),A[a>>2]=f,o=f+t|0,A[a+8>>2]=o,ra(f,0,t),A[a+4>>2]=o,t=e<<5|1}return tb(i,t,a),(f=A[a>>2])&&(A[a+4>>2]=f,oa(f)),A[a+8>>2]=0,A[a>>2]=0,A[a+4>>2]=0,e&&(f=pa(e<<=2),A[a>>2]=f,o=e+f|0,A[a+8>>2]=o,ra(f,0,e),A[a+4>>2]=o),tb(r+640|0,t,a),(e=A[a>>2])&&(A[a+4>>2]=e,oa(e)),Q=a+16|0,r}function gc(r,e,a,i){var f=0,t=0,o=0,s=0,m=0,j=0,D=0,U=0,N=R(0),V=R(0),W=0;r:{e:if(i){a:switch(A[r+28>>2]-1|0){case 0:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(n[(o<<1)+i>>1]=b[0|e],e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(j=1,f>>>0>=t>>>0)break e;break r;case 1:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(n[(o<<1)+i>>1]=k[0|e],e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(j=1,f>>>0>=t>>>0)break e;break r;case 2:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(n[(o<<1)+i>>1]=u[e>>1],e=e+2|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(j=1,f>>>0>=t>>>0)break e;break r;case 3:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)return 0;if((0|(f=n[e>>1]))<0)break e;if(n[(o<<1)+i>>1]=f,e=e+2|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(j=1,f>>>0>=t>>>0)break e;break r;case 4:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if((f=A[e>>2])+32768>>>0>65535)break e;if(n[(o<<1)+i>>1]=f,e=e+4|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(j=1,f>>>0>=t>>>0)break e;break r;case 5:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if((f=A[e>>2])>>>0>32767)break e;if(n[(o<<1)+i>>1]=f,e=e+4|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(j=1,f>>>0>=t>>>0)break e;break r;case 6:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,D=A[f+4>>2];;){if(e>>>0>=D>>>0)break e;if(s=A[e+4>>2],!(s=(m=(f=A[e>>2])+32768|0)>>>0<32768?s+1|0:s)&m>>>0>65535|s)break e;if(n[(o<<1)+i>>1]=f,e=e+8|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(j=1,f>>>0>=t>>>0)break e;break r;case 7:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(!(D=A[e+4>>2])&(f=A[e>>2])>>>0>32767|D)break e;if(n[(o<<1)+i>>1]=f,e=e+8|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(j=1,f>>>0>=t>>>0)break e;break r;case 8:i:{f:if((a&=255)>>>0>(f=k[r+24|0])>>>0?f:a){if(f=A[r>>2],o=j=A[f>>2],t=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),o=(e=e+t|0)+o|0,f=(t=A[f+4>>2])-j|0,!k[r+32|0]){if(j=0,(0|e)>=(0|f))break i;for(e=0;;){if((N=_[o>>2])>=R(32767)|N<R(-32768)|N!=N)break i;if((V=R(h(N)))==R(1/0))break i;if(f=(e<<1)+i|0,m=V<R(2147483648)?~~N:-2147483648,n[f>>1]=m,(e=e+1|0)>>>0>=(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0)break f;if(!(t>>>0>(o=o+4|0)>>>0))break}break i}if(j=0,(0|e)>=(0|f))break i;for(e=0;;){if((N=_[o>>2])>=R(32767)|N<R(-32768)|R(h(N))==R(1/0)|N!=N)break i;if(N<R(0)|N>R(1))break i;if(f=(e<<1)+i|0,U=T(32767*+N+.5),m=h(U)<2147483648?~~U:-2147483648,n[f>>1]=m,(e=e+1|0)>>>0>=(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0)break f;if(!(t>>>0>(o=o+4|0)>>>0))break}break i}j=1,a>>>0<=f>>>0||ra((f<<1)+i|0,0,a-f<<1)}return j;case 9:i:{f:if((a&=255)>>>0>(f=k[r+24|0])>>>0?f:a){if(f=A[r>>2],o=j=A[f>>2],t=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),o=(e=e+t|0)+o|0,f=(t=A[f+4>>2])-j|0,!k[r+32|0]){if(j=0,(0|e)>=(0|f))break i;for(e=0;;){if((U=d[o>>3])>=32767|U<-32768|U!=U)break i;if((W=h(U))==1/0)break i;if(m=W<2147483648?~~U:-2147483648,n[(f=(e<<1)+i|0)>>1]=m,(e=e+1|0)>>>0>=(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0)break f;if(!(t>>>0>(o=o+8|0)>>>0))break}break i}if(j=0,(0|e)>=(0|f))break i;for(e=0;;){if((U=d[o>>3])>=32767|U<-32768|h(U)==1/0|U!=U)break i;if(U<0|U>1)break i;if(f=(e<<1)+i|0,U=T(32767*U+.5),m=h(U)<2147483648?~~U:-2147483648,n[f>>1]=m,(e=e+1|0)>>>0>=(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0)break f;if(!(t>>>0>(o=o+8|0)>>>0))break}break i}j=1,a>>>0<=f>>>0||ra((f<<1)+i|0,0,a-f<<1)}return j;case 10:break a;default:break e}if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(n[(o<<1)+i>>1]=k[0|e],e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}j=1,f>>>0>=t>>>0||ra((f<<1)+i|0,0,(255&a)-f<<1)}return j}return ra((f<<1)+i|0,0,(255&a)-f<<1),1}function ec(r,e,a,i){var f=0,t=0,o=0,s=0,m=0,j=0,D=0,U=0,N=R(0),V=R(0),W=0;r:{e:if(i){a:switch(A[r+28>>2]-1|0){case 0:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(A[(o<<2)+i>>2]=b[0|e],e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(j=1,f>>>0>=t>>>0)break e;break r;case 1:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(A[(o<<2)+i>>2]=k[0|e],e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(j=1,f>>>0>=t>>>0)break e;break r;case 2:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(A[(o<<2)+i>>2]=n[e>>1],e=e+2|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(j=1,f>>>0>=t>>>0)break e;break r;case 3:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(A[(o<<2)+i>>2]=u[e>>1],e=e+2|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(j=1,f>>>0>=t>>>0)break e;break r;case 4:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(A[(o<<2)+i>>2]=A[e>>2],e=e+4|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(j=1,f>>>0>=t>>>0)break e;break r;case 5:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)return 0;if((0|(f=A[e>>2]))<0)break e;if(A[(o<<2)+i>>2]=f,e=e+4|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(j=1,f>>>0>=t>>>0)break e;break r;case 6:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,D=A[f+4>>2];;){if(e>>>0>=D>>>0)break e;if(s=A[e+4>>2],(f=A[e>>2])- -2147483648>>>0<2147483648?s+1|0:s)break e;if(A[(o<<2)+i>>2]=f,e=e+8|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(j=1,f>>>0>=t>>>0)break e;break r;case 7:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(!(D=A[e+4>>2])&(f=A[e>>2])>>>0>2147483647|D)break e;if(A[(o<<2)+i>>2]=f,e=e+8|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(j=1,f>>>0>=t>>>0)break e;break r;case 8:i:{f:if((a&=255)>>>0>(f=k[r+24|0])>>>0?f:a){if(f=A[r>>2],o=j=A[f>>2],t=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),o=(e=e+t|0)+o|0,f=(t=A[f+4>>2])-j|0,!k[r+32|0]){if(j=0,(0|e)>=(0|f))break i;for(e=0;;){if((N=_[o>>2])>=R(2147483648)|N<R(-2147483648)|N!=N)break i;if((V=R(h(N)))==R(1/0))break i;if(f=(e<<2)+i|0,m=V<R(2147483648)?~~N:-2147483648,A[f>>2]=m,(e=e+1|0)>>>0>=(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0)break f;if(!(t>>>0>(o=o+4|0)>>>0))break}break i}if(j=0,(0|e)>=(0|f))break i;for(e=0;;){if((N=_[o>>2])>=R(2147483648)|N<R(-2147483648)|R(h(N))==R(1/0)|N!=N)break i;if(N<R(0)|N>R(1))break i;if(f=(e<<2)+i|0,U=T(2147483647*+N+.5),m=h(U)<2147483648?~~U:-2147483648,A[f>>2]=m,(e=e+1|0)>>>0>=(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0)break f;if(!(t>>>0>(o=o+4|0)>>>0))break}break i}j=1,a>>>0<=f>>>0||ra((f<<2)+i|0,0,a-f<<2)}return j;case 9:i:{f:if((a&=255)>>>0>(f=k[r+24|0])>>>0?f:a){if(f=A[r>>2],o=j=A[f>>2],t=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),o=(e=e+t|0)+o|0,f=(t=A[f+4>>2])-j|0,!k[r+32|0]){if(j=0,(0|e)>=(0|f))break i;for(e=0;;){if((U=d[o>>3])>=2147483647|U<-2147483648|U!=U)break i;if((W=h(U))==1/0)break i;if(m=W<2147483648?~~U:-2147483648,A[(f=(e<<2)+i|0)>>2]=m,(e=e+1|0)>>>0>=(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0)break f;if(!(t>>>0>(o=o+8|0)>>>0))break}break i}if(j=0,(0|e)>=(0|f))break i;for(e=0;;){if((U=d[o>>3])>=2147483647|U<-2147483648|h(U)==1/0|U!=U)break i;if(U<0|U>1)break i;if(f=(e<<2)+i|0,U=T(2147483647*U+.5),m=h(U)<2147483648?~~U:-2147483648,A[f>>2]=m,(e=e+1|0)>>>0>=(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0)break f;if(!(t>>>0>(o=o+8|0)>>>0))break}break i}j=1,a>>>0<=f>>>0||ra((f<<2)+i|0,0,a-f<<2)}return j;case 10:break a;default:break e}if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(A[(o<<2)+i>>2]=k[0|e],e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}j=1,f>>>0>=t>>>0||ra((f<<2)+i|0,0,(255&a)-f<<2)}return j}return ra((f<<2)+i|0,0,(255&a)-f<<2),1}function fc(r,e,a,i){var f=0,t=0,o=0,s=0,m=0,j=0,D=0,U=0,N=R(0);r:{e:if(i){a:switch(A[r+28>>2]-1|0){case 0:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)return 0;if((0|(f=b[0|e]))<0)break e;if(n[(o<<1)+i>>1]=255&f,e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(U=1,f>>>0>=t>>>0)break e;break r;case 1:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(n[(o<<1)+i>>1]=k[0|e],e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(U=1,f>>>0>=t>>>0)break e;break r;case 2:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)return 0;if((0|(f=n[e>>1]))<0)break e;if(n[(o<<1)+i>>1]=f,e=e+2|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(U=1,f>>>0>=t>>>0)break e;break r;case 3:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(n[(o<<1)+i>>1]=u[e>>1],e=e+2|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(U=1,f>>>0>=t>>>0)break e;break r;case 4:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if((f=A[e>>2])>>>0>65535)break e;if(n[(o<<1)+i>>1]=f,e=e+4|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(U=1,f>>>0>=t>>>0)break e;break r;case 5:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if((f=A[e>>2])>>>0>65535)break e;if(n[(o<<1)+i>>1]=f,e=e+4|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(U=1,f>>>0>=t>>>0)break e;break r;case 6:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(!(D=A[e+4>>2])&(f=A[e>>2])>>>0>65535|D)break e;if(n[(o<<1)+i>>1]=f,e=e+8|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(U=1,f>>>0>=t>>>0)break e;break r;case 7:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(!(D=A[e+4>>2])&(f=A[e>>2])>>>0>65535|D)break e;if(n[(o<<1)+i>>1]=f,e=e+8|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(U=1,f>>>0>=t>>>0)break e;break r;case 8:i:{f:if((a&=255)>>>0>(f=k[r+24|0])>>>0?f:a){if(f=A[r>>2],o=U=A[f>>2],t=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),o=(e=e+t|0)+o|0,f=(t=A[f+4>>2])-U|0,!k[r+32|0]){if(U=0,(0|e)>=(0|f))break i;for(e=0;;){if((N=_[o>>2])>=R(65535)|N<R(0)|R(h(N))==R(1/0)|N!=N)break i;if(f=(e<<1)+i|0,m=N<R(4294967296)&N>=R(0)?~~N>>>0:0,n[f>>1]=m,(e=e+1|0)>>>0>=(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0)break f;if(!(t>>>0>(o=o+4|0)>>>0))break}break i}if(U=0,(0|e)>=(0|f))break i;for(e=0;;){if((N=_[o>>2])>=R(65535)|N<R(0)|R(h(N))==R(1/0)|N!=N)break i;if(N>R(1))break i;if(f=(e<<1)+i|0,m=(j=T(65535*+N+.5))<4294967296&j>=0?~~j>>>0:0,n[f>>1]=m,(e=e+1|0)>>>0>=(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0)break f;if(!(t>>>0>(o=o+4|0)>>>0))break}break i}U=1,a>>>0<=f>>>0||ra((f<<1)+i|0,0,a-f<<1)}return U;case 9:i:{f:if((a&=255)>>>0>(f=k[r+24|0])>>>0?f:a){if(f=A[r>>2],o=U=A[f>>2],t=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),o=(e=e+t|0)+o|0,f=(t=A[f+4>>2])-U|0,!k[r+32|0]){if(U=0,(0|e)>=(0|f))break i;for(e=0;;){if((j=d[o>>3])>=65535|j<0|h(j)==1/0|j!=j)break i;if(m=j<4294967296&j>=0?~~j>>>0:0,n[(f=(e<<1)+i|0)>>1]=m,(e=e+1|0)>>>0>=(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0)break f;if(!(t>>>0>(o=o+8|0)>>>0))break}break i}if(U=0,(0|e)>=(0|f))break i;for(e=0;;){if((j=d[o>>3])>=65535|j<0|h(j)==1/0|j!=j)break i;if(j>1)break i;if(f=(e<<1)+i|0,m=(j=T(65535*j+.5))<4294967296&j>=0?~~j>>>0:0,n[f>>1]=m,(e=e+1|0)>>>0>=(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0)break f;if(!(t>>>0>(o=o+8|0)>>>0))break}break i}U=1,a>>>0<=f>>>0||ra((f<<1)+i|0,0,a-f<<1)}return U;case 10:break a;default:break e}if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],D=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+D|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(n[(o<<1)+i>>1]=k[0|e],e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}U=1,f>>>0>=t>>>0||ra((f<<1)+i|0,0,(255&a)-f<<1)}return U}return ra((f<<1)+i|0,0,(255&a)-f<<1),1}function Sa(r,e,a,i){var f=0,t=0,o=0,s=0,m=0,j=0,U=R(0),V=0,W=0,G=R(0),Z=0;r:if(i){e:{a:switch(A[r+28>>2]-1|0){case 0:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],m=A[r+48>>2],j=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break r;if(f=(o<<3)+i|0,m=b[0|e],A[f>>2]=m,A[f+4>>2]=m>>31,e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(f>>>0>=t>>>0)break r;i=(f<<3)+i|0,r=(255&a)-f|0;break e;case 1:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],m=A[r+48>>2],j=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break r;if(A[(f=(o<<3)+i|0)>>2]=k[0|e],A[f+4>>2]=0,e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(f>>>0>=t>>>0)break r;i=(f<<3)+i|0,r=(255&a)-f|0;break e;case 2:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],m=A[r+48>>2],j=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break r;if(f=(o<<3)+i|0,m=n[e>>1],A[f>>2]=m,A[f+4>>2]=m>>31,e=e+2|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(f>>>0>=t>>>0)break r;i=(f<<3)+i|0,r=(255&a)-f|0;break e;case 3:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],m=A[r+48>>2],j=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break r;if(A[(f=(o<<3)+i|0)>>2]=u[e>>1],A[f+4>>2]=0,e=e+2|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(f>>>0>=t>>>0)break r;i=(f<<3)+i|0,r=(255&a)-f|0;break e;case 4:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],m=A[r+48>>2],j=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break r;if(f=(o<<3)+i|0,m=A[e>>2],A[f>>2]=m,A[f+4>>2]=m>>31,e=e+4|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(f>>>0>=t>>>0)break r;i=(f<<3)+i|0,r=(255&a)-f|0;break e;case 5:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],m=A[r+48>>2],j=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break r;if(A[(f=(o<<3)+i|0)>>2]=A[e>>2],A[f+4>>2]=0,e=e+4|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(f>>>0>=t>>>0)break r;i=(f<<3)+i|0,r=(255&a)-f|0;break e;case 6:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],m=A[r+48>>2],j=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break r;if(m=A[e+4>>2],A[(f=(o<<3)+i|0)>>2]=A[e>>2],A[f+4>>2]=m,e=e+8|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(f>>>0>=t>>>0)break r;i=(f<<3)+i|0,r=(255&a)-f|0;break e;case 7:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],m=A[r+48>>2],j=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break r;if(f=A[e>>2],(0|(m=A[e+4>>2]))<0)break r;if(A[(j=(o<<3)+i|0)>>2]=f,A[j+4>>2]=m,e=e+8|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(f>>>0>=t>>>0)break r;i=(f<<3)+i|0,r=(255&a)-f|0;break e;case 8:i:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t){if(k[r+32|0])break r;if(f=A[r+48>>2],j=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=e+f|0,f=A[r>>2],(0|e)>=((m=A[f+4>>2])-(f=A[f>>2])|0))break r;for(o=e+f|0,s=255&a,e=0;;){if((U=_[o>>2])>=R(0x8000000000000000)|U<R(-0x8000000000000000)|U!=U)break r;if((G=R(h(U)))==R(1/0))break r;if(f=(e<<3)+i|0,G<R(0x8000000000000000)?(j=R(h(U))>=R(1)?~~(U>R(0)?R(D(R(T(R(U*R(2.3283064365386963e-10)))),R(4294967296))):R(N(R(R(U-R(~~U>>>0>>>0))*R(2.3283064365386963e-10)))))>>>0:0,W=~~U>>>0):(j=-2147483648,W=0),A[f>>2]=W,A[f+4>>2]=j,(e=e+1|0)>>>0>=((f=k[r+24|0])>>>0<s>>>0?f:s)>>>0)break i;if(!(m>>>0>(o=o+4|0)>>>0))break}break r}if(f>>>0>=t>>>0)break r;i=(f<<3)+i|0,r=(255&a)-f|0;break e;case 9:i:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t){if(k[r+32|0])break r;if(f=A[r+48>>2],j=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=e+f|0,f=A[r>>2],(0|e)>=((m=A[f+4>>2])-(f=A[f>>2])|0))break r;for(o=e+f|0,s=255&a,e=0;;){if((V=d[o>>3])>=0x8000000000000000|V<-0x8000000000000000|V!=V)break r;if((Z=h(V))==1/0)break r;if(f=(e<<3)+i|0,Z<0x8000000000000000?(j=h(V)>=1?~~(V>0?D(T(2.3283064365386963e-10*V),4294967295):N(2.3283064365386963e-10*(V-+(~~V>>>0>>>0))))>>>0:0,W=~~V>>>0):(j=-2147483648,W=0),A[f>>2]=W,A[f+4>>2]=j,(e=e+1|0)>>>0>=((f=k[r+24|0])>>>0<s>>>0?f:s)>>>0)break i;if(!(m>>>0>(o=o+8|0)>>>0))break}break r}if(f>>>0>=t>>>0)break r;i=(f<<3)+i|0,r=(255&a)-f|0;break e;case 10:break a;default:break r}if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],m=A[r+48>>2],j=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break r;if(A[(f=(o<<3)+i|0)>>2]=k[0|e],A[f+4>>2]=0,e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(f>>>0>=t>>>0)break r;i=(f<<3)+i|0,r=(255&a)-f|0}ra(i,0,r<<3)}}function dc(r,e,a,i){var f=0,t=0,o=0,s=0,m=0,j=0,D=0,U=0,N=R(0);r:{e:if(i){a:switch(A[r+28>>2]-1|0){case 0:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],U=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+U|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(A[(o<<2)+i>>2]=b[0|e],e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 1:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],U=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+U|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(A[(o<<2)+i>>2]=k[0|e],e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 2:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],U=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+U|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(A[(o<<2)+i>>2]=n[e>>1],e=e+2|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 3:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],U=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+U|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(A[(o<<2)+i>>2]=u[e>>1],e=e+2|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 4:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],U=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+U|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(A[(o<<2)+i>>2]=A[e>>2],e=e+4|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 5:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],U=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+U|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(A[(o<<2)+i>>2]=A[e>>2],e=e+4|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 6:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],U=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+U|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(f=A[e>>2],A[e+4>>2])break e;if(A[(o<<2)+i>>2]=f,e=e+8|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 7:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],U=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+U|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(f=A[e>>2],A[e+4>>2])break e;if(A[(o<<2)+i>>2]=f,e=e+8|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 8:i:{f:if((a&=255)>>>0>(f=k[r+24|0])>>>0?f:a){if(f=A[r>>2],o=D=A[f>>2],t=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),o=(e=e+t|0)+o|0,f=(t=A[f+4>>2])-D|0,!k[r+32|0]){if(D=0,(0|e)>=(0|f))break i;for(e=0;;){if((N=_[o>>2])>=R(4294967296)|N<R(0)|R(h(N))==R(1/0)|N!=N)break i;if(f=(e<<2)+i|0,m=N<R(4294967296)&N>=R(0)?~~N>>>0:0,A[f>>2]=m,(e=e+1|0)>>>0>=(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0)break f;if(!(t>>>0>(o=o+4|0)>>>0))break}break i}if(D=0,(0|e)>=(0|f))break i;for(e=0;;){if((N=_[o>>2])>=R(4294967296)|N<R(0)|R(h(N))==R(1/0)|N!=N)break i;if(N>R(1))break i;if(f=(e<<2)+i|0,m=(j=T(4294967295*+N+.5))<4294967296&j>=0?~~j>>>0:0,A[f>>2]=m,(e=e+1|0)>>>0>=(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0)break f;if(!(t>>>0>(o=o+4|0)>>>0))break}break i}D=1,a>>>0<=f>>>0||ra((f<<2)+i|0,0,a-f<<2)}return D;case 9:i:{f:if((a&=255)>>>0>(f=k[r+24|0])>>>0?f:a){if(f=A[r>>2],o=D=A[f>>2],t=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),o=(e=e+t|0)+o|0,f=(t=A[f+4>>2])-D|0,!k[r+32|0]){if(D=0,(0|e)>=(0|f))break i;for(e=0;;){if((j=d[o>>3])>=4294967295|j<0|h(j)==1/0|j!=j)break i;if(m=j<4294967296&j>=0?~~j>>>0:0,A[(f=(e<<2)+i|0)>>2]=m,(e=e+1|0)>>>0>=(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0)break f;if(!(t>>>0>(o=o+8|0)>>>0))break}break i}if(D=0,(0|e)>=(0|f))break i;for(e=0;;){if((j=d[o>>3])>=4294967295|j<0|h(j)==1/0|j!=j)break i;if(j>1)break i;if(f=(e<<2)+i|0,m=(j=T(4294967295*j+.5))<4294967296&j>=0?~~j>>>0:0,A[f>>2]=m,(e=e+1|0)>>>0>=(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0)break f;if(!(t>>>0>(o=o+8|0)>>>0))break}break i}D=1,a>>>0<=f>>>0||ra((f<<2)+i|0,0,a-f<<2)}return D;case 10:break a;default:break e}if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],s=A[f>>2],U=A[r+48>>2],m=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+U|0)+s|0,s=A[f+4>>2];;){if(e>>>0>=s>>>0)break e;if(A[(o<<2)+i>>2]=k[0|e],e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}D=1,f>>>0>=t>>>0||ra((f<<2)+i|0,0,(255&a)-f<<2)}return D}return ra((f<<2)+i|0,0,(255&a)-f<<2),1}function ye(r,e){var a=0,i=0,f=0,t=0,o=0,b=0,n=0,k=0,u=0,s=0;r:{e:{a:{i:{f:if(A[r+92>>2]!=A[r+88>>2]){if((0|(a=A[r+52>>2]))==A[r+56>>2]){if((t=(i=(o=a-(b=A[r+48>>2])|0)>>2)+1|0)>>>0>=1073741824)break r;if(f=o>>>1|0,o=o>>>0>=2147483644?1073741823:t>>>0<f>>>0?f:t){if(o>>>0>=1073741824)break i;f=pa(o<<2)}else f=0;if(A[(t=f+(i<<2)|0)>>2]=e,i=t+4|0,(0|a)!=(0|b))for(;a=a-4|0,A[(t=t-4|0)>>2]=A[a>>2],(0|a)!=(0|b););A[r+56>>2]=f+(o<<2),A[r+52>>2]=i,A[r+48>>2]=t,b&&oa(b)}else A[a>>2]=e,A[r+52>>2]=a+4;A[r+84>>2]=0,a=-1,f=-1;t:if(-1!=(0|e)){if(i=A[r+4>>2],-1!=(0|(f=((f=e+1|0)>>>0)%3|0?f:e-2|0))&&(a=A[A[i>>2]+(f<<2)>>2]),(e>>>0)%3|0)s=e-1|0;else if(f=-1,-1==(0|(s=e+2|0)))break t;f=A[A[i>>2]+(s<<2)>>2]}if(n=f>>>3&536870908,i=A[r+36>>2],(o=A[(b=i+(a>>>3&536870908)|0)>>2])&(t=1<<a)||(A[b>>2]=t|o,Ua(t=r+8|0,a,i=-1!=(0|e)?((i=e+1|0)>>>0)%3|0?i:e-2|0:-1),i=A[r+36>>2]),(i=A[(t=i+n|0)>>2])&(a=1<<f)||(A[t>>2]=a|i,a=-1,-1!=(0|e)&&(a=e-1|0,(e>>>0)%3|0||(a=e+2|0)),Ua(i=r+8|0,f,a)),a=-1,a=-1!=(0|e)?A[A[A[r+4>>2]>>2]+(e<<2)>>2]:a,t=A[r+36>>2]+(a>>>3&536870908)|0,(i=A[t>>2])&(f=1<<a)||(A[t>>2]=i|f,Ua(r+8|0,a,e)),!((0|(i=A[r+84>>2]))>2))for(;;){if(f=m(i,12)+r|0,(0|(e=A[f+52>>2]))==A[f+48>>2]){if(3!=(0|(i=i+1|0)))continue;break f}if(a=A[(e=e-4|0)>>2],A[f+52>>2]=e,A[r+84>>2]=i,-1==(0|a))break f;t=A[r+24>>2];t:if(!(A[t+((e=(a>>>0)/3|0)>>>3&268435452)>>2]>>>e&1)){o:{for(;;){A[(e=((u=(a>>>0)/3|0)>>>3&268435452)+t|0)>>2]=A[e>>2]|1<<u,i=-1;b:{n:{A:{k:{c:{u:{s:{p:{if(i=-1!=(0|a)?A[A[A[r+4>>2]>>2]+(a<<2)>>2]:i,t=A[r+36>>2]+(i>>>3&536870908)|0,!((f=A[t>>2])&(e=1<<i))){if(A[t>>2]=e|f,n=A[(A[A[r+16>>2]+96>>2]+m(u,12)|0)+((a>>>0)%3<<2)>>2],s=A[A[r+20>>2]+4>>2],(0|(t=A[s+4>>2]))==A[s+8>>2]){if((f=(o=(b=t-(k=A[s>>2])|0)>>2)+1|0)>>>0>=1073741824)break p;if(e=b>>>1|0,b=b>>>0>=2147483644?1073741823:e>>>0>f>>>0?e:f){if(b>>>0>=1073741824)break i;f=pa(b<<2)}else f=0;if(A[(e=f+(o<<2)|0)>>2]=n,o=e+4|0,(0|t)!=(0|k))for(;t=t-4|0,A[(e=e-4|0)>>2]=A[t>>2],(0|t)!=(0|k););A[s+8>>2]=f+(b<<2),A[s+4>>2]=o,A[s>>2]=e,k&&oa(k)}else A[t>>2]=n,A[s+4>>2]=t+4;if(k=A[r+12>>2],(0|(t=A[k+4>>2]))==A[k+8>>2]){if((f=(o=(b=t-(n=A[k>>2])|0)>>2)+1|0)>>>0>=1073741824)break s;if(e=b>>>1|0,b=b>>>0>=2147483644?1073741823:e>>>0>f>>>0?e:f){if(b>>>0>=1073741824)break i;f=pa(b<<2)}else f=0;if(A[(e=f+(o<<2)|0)>>2]=a,o=e+4|0,(0|t)!=(0|n))for(;t=t-4|0,A[(e=e-4|0)>>2]=A[t>>2],(0|t)!=(0|n););A[k+8>>2]=f+(b<<2),A[k+4>>2]=o,A[k>>2]=e,n&&oa(n)}else A[t>>2]=a,A[k+4>>2]=t+4;e=A[r+12>>2],A[A[e+12>>2]+(i<<2)>>2]=A[e+24>>2],A[e+24>>2]=A[e+24>>2]+1}if(-1==(0|a))break o;o=A[r+4>>2],t=-1,-1!=(0|(e=((e=a+1|0)>>>0)%3|0?e:a-2|0))&&(t=A[A[o+12>>2]+(e<<2)>>2]);_:{if((0|m(u,3))==(0|a)){if(i=a+2|0,a=-1,-1==(0|i))break _}else i=a-1|0;a=A[A[o+12>>2]+(i<<2)>>2]}if(i=-1==(0|a),f=(a>>>0)/3|0,-1!=(0|t)){if(e=(t>>>0)/3|0,e=A[A[r+24>>2]+(e>>>3&268435452)>>2]&1<<e,i)break u;s=!!(0|e);break c}if(s=1,!i)break c;break o}sa(),v()}sa(),v()}if(!e)break k;break o}if(e=i?-1:f,!(A[A[r+24>>2]+(e>>>3&536870908)>>2]>>>e&1)){if(u=0,e=A[A[o>>2]+(a<<2)>>2],A[A[r+36>>2]+(e>>>3&536870908)>>2]>>>e&1||(e=A[r+88>>2]+(e<<2)|0,f=A[e>>2],A[e>>2]=f+1,u=(0|f)<=0?2:1),A[r+84>>2]>=(0|u)&s)break n;if(k=m(u,12)+r|0,(0|(e=A[k+52>>2]))==A[k+56>>2]){if((o=(i=(b=e-(n=A[k+48>>2])|0)>>2)+1|0)>>>0>=1073741824)break a;if(f=b>>>1|0,o=b>>>0>=2147483644?1073741823:f>>>0>o>>>0?f:o){if(o>>>0>=1073741824)break i;f=pa(o<<2)}else f=0;if(A[(i=f+(i<<2)|0)>>2]=a,a=i+4|0,(0|e)!=(0|n))for(;e=e-4|0,A[(i=i-4|0)>>2]=A[e>>2],(0|e)!=(0|n););A[k+48>>2]=i,A[k+52>>2]=a,A[k+56>>2]=f+(o<<2),n&&oa(n)}else A[e>>2]=a,A[k+52>>2]=e+4;A[r+84>>2]<=(0|u)||(A[r+84>>2]=u)}if(s)break o;if(a=-1,-1==(0|t))break A}a=A[A[A[r+4>>2]>>2]+(t<<2)>>2]}if(e=0,A[A[r+36>>2]+(a>>>3&536870908)>>2]>>>a&1||(e=A[r+88>>2]+(a<<2)|0,a=A[e>>2],A[e>>2]=a+1,e=(0|a)<=0?2:1),A[r+84>>2]<(0|e))break b;a=t}t=A[r+24>>2];continue}break}if(u=m(e,12)+r|0,(0|(a=A[u+52>>2]))==A[u+56>>2]){if((o=(i=(b=a-(n=A[u+48>>2])|0)>>2)+1|0)>>>0>=1073741824)break e;if(f=b>>>1|0,o=b>>>0>=2147483644?1073741823:f>>>0>o>>>0?f:o){if(o>>>0>=1073741824)break i;f=pa(o<<2)}else f=0;if(A[(i=f+(i<<2)|0)>>2]=t,t=i+4|0,(0|a)!=(0|n))for(;a=a-4|0,A[(i=i-4|0)>>2]=A[a>>2],(0|a)!=(0|n););A[u+48>>2]=i,A[u+52>>2]=t,A[u+56>>2]=f+(o<<2),n&&oa(n)}else A[a>>2]=t,A[u+52>>2]=a+4;if((0|(i=A[r+84>>2]))<=(0|e))break t;A[r+84>>2]=e,i=e;break t}i=A[r+84>>2]}if(!((0|i)<3))break}}return 1}wa(),v()}sa(),v()}sa(),v()}sa(),v()}function gd(r,e){e|=0;var a,i,f=0,t=0,o=0,n=0,s=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0;Q=a=Q-96|0,i=A[(r|=0)+4>>2],t=A[i+32>>2],d=A[t+8>>2];r:if(!((0|(o=R=A[t+12>>2]))<=(0|(f=A[t+20>>2]))&(n=A[t+16>>2])>>>0>=d>>>0|(0|f)>(0|o)||(U=A[t>>2],s=k[U+n|0],o=(_=n+1|0)?f:f+1|0,A[t+16>>2]=_,A[t+20>>2]=o,(0|o)>=(0|R)&_>>>0>=d>>>0|(0|o)>(0|R)))){D=k[_+U|0],o=(_=n+2|0)>>>0<2?f+1|0:f,A[t+16>>2]=_,A[t+20>>2]=o;e:{if((0|(j=s<<24>>24))>=0){if(h=A[r+216>>2],s>>>0>=(A[r+220>>2]-h|0)/144>>>0)break r;if(h=h+m(s,144)|0,A[h>>2]<0)break e;break r}if(A[r+212>>2]>=0)break r;h=r+212|0}A[h>>2]=e;e:{a:{i:{f:{t:{o:{b:{if((65535&((h=u[i+36>>1])<<8|h>>>8))>>>0>=258){if((0|o)>=(0|R)&_>>>0>=d>>>0|(0|o)>(0|R))break r;if(o=k[_+U|0],f=(n=n+3|0)>>>0<3?f+1|0:f,A[t+16>>2]=n,A[t+20>>2]=f,o>>>0>1)break r;if(t=o>>>0<2?o:0,!D)break b;if(!t)break o;break r}if(D)break t;t=0}if((0|j)<0?o=r+184|0:(f=A[r+216>>2]+m(s,144)|0,b[f+100|0]=0,o=f+104|0),1!=(0|t))break i;Q=f=Q-112|0,_=A[A[r+4>>2]+44>>2],t=pa(120),A[t>>2]=12172,A[t+4>>2]=0,A[t+116>>2]=0,A[t+112>>2]=o,A[t+108>>2]=_,A[t+12>>2]=0,A[t+16>>2]=0,A[t+20>>2]=0,A[t+24>>2]=0,A[t+28>>2]=0,A[t+32>>2]=0,A[t+36>>2]=0,A[t+40>>2]=0,A[t+44>>2]=0,A[t+48>>2]=0,A[t+52>>2]=0,A[t+56>>2]=0,A[t+60>>2]=0,A[t+8>>2]=12384,A[(n=t- -64|0)>>2]=0,A[n+4>>2]=0,A[t+72>>2]=0,A[t+76>>2]=0,A[t+80>>2]=0,A[t+84>>2]=0,A[t+88>>2]=0,A[t+104>>2]=0,A[t+96>>2]=0,A[t+100>>2]=0,n=A[r+8>>2],A[f+48>>2]=0,A[f+52>>2]=0,A[f+40>>2]=0,A[f+44>>2]=0,A[(d=f+32|0)>>2]=0,A[d+4>>2]=0,A[f+24>>2]=0,A[f+28>>2]=0,A[(s=f- -64|0)>>2]=0,A[s+4>>2]=0,A[f+72>>2]=0,A[f+76>>2]=0,A[f+80>>2]=0,A[f+84>>2]=0,A[f+88>>2]=0,A[f+104>>2]=0,A[f+16>>2]=0,A[f+20>>2]=0,A[f+56>>2]=0,A[f+60>>2]=0,A[f+8>>2]=12384,A[f+96>>2]=0,A[f+100>>2]=0,A[f+12>>2]=n,s=A[n>>2],R=A[n+4>>2],b[f+111|0]=0,Oa(D=d,(R-s>>2>>>0)/3|0,d=f+111|0),s=A[f+12>>2],R=A[s+28>>2],s=A[s+24>>2],b[f+111|0]=0,Oa(f+44|0,R-s>>2,d),A[f+28>>2]=t,A[f+24>>2]=_,A[f+20>>2]=o,A[f+16>>2]=n,fd(n=t+8|0,o=f+8|0),(0|o)!=(0|n)?(Cb(t+56|0,A[o+48>>2],A[o+52>>2]),Cb(t+68|0,A[o+60>>2],A[o- -64>>2]),Cb(t+80|0,A[o+72>>2],A[o+76>>2]),A[t+92>>2]=A[o+84>>2],Aa(t+96|0,A[o+88>>2],A[o+92>>2])):A[t+92>>2]=A[o+84>>2],A[f+8>>2]=12384,(o=A[f+96>>2])&&(A[f+100>>2]=o,oa(o)),(o=A[f+80>>2])&&(A[f+84>>2]=o,oa(o)),(o=A[f+68>>2])&&(A[f+72>>2]=o,oa(o)),(o=A[f+56>>2])&&(A[f+60>>2]=o,oa(o)),A[f+8>>2]=12620,(o=A[f+44>>2])&&oa(o),(o=A[f+32>>2])&&oa(o),Q=f+112|0;break a}if((0|j)>=0)break f;break r}if((0|j)<0)break r}o=A[r+216>>2],f=A[i+44>>2],t=pa(80),A[t>>2]=12932,A[t+4>>2]=0,A[t+76>>2]=0,A[t+68>>2]=f,A[t+8>>2]=11872,A[t+12>>2]=0,A[t+16>>2]=0,A[t+20>>2]=0,A[t+24>>2]=0,A[t+28>>2]=0,A[t+32>>2]=0,A[t+36>>2]=0,A[t+40>>2]=0,A[t+44>>2]=0,A[t+48>>2]=0,A[t+52>>2]=0,n=(o=o+m(s,144)|0)+104|0,A[t+72>>2]=n,A[t- -64>>2]=0,A[t+56>>2]=0,A[t+60>>2]=0,A[a+24>>2]=f,A[(f=a)+68>>2]=0,A[f+72>>2]=0,A[f+60>>2]=0,A[f+64>>2]=0,A[f+52>>2]=0,A[f+56>>2]=0,A[f+44>>2]=0,A[f+48>>2]=0,A[f+84>>2]=0,A[f+88>>2]=0,A[f+76>>2]=0,A[f+80>>2]=0,A[f+28>>2]=t,_=A[f+28>>2],A[f+8>>2]=A[f+24>>2],A[f+12>>2]=_,A[f+20>>2]=n,n=o+4|0,A[f+16>>2]=n,A[f+36>>2]=0,A[f+40>>2]=0,A[f+32>>2]=11872,o=A[f+20>>2],A[f>>2]=A[f+16>>2],A[f+4>>2]=o,Ie(o=f+32|0,n,f),fd(f=t+8|0,o),(0|f)!=(0|o)&&Cb(t+56|0,A[o+48>>2],A[o+52>>2]),He(o);break e}Q=f=Q+-64|0,_=A[A[r+4>>2]+44>>2],t=pa(80),A[t>>2]=12640,A[t+4>>2]=0,A[t+76>>2]=0,A[t+72>>2]=o,A[t+68>>2]=_,A[t+8>>2]=12804,A[t+12>>2]=0,A[t+16>>2]=0,A[t+20>>2]=0,A[t+24>>2]=0,A[t+28>>2]=0,A[t+32>>2]=0,A[t+36>>2]=0,A[t+40>>2]=0,A[t+44>>2]=0,A[t+48>>2]=0,A[t+52>>2]=0,A[t- -64>>2]=0,A[(n=d=t+56|0)>>2]=0,A[n+4>>2]=0,n=A[r+8>>2],A[f+40>>2]=0,A[f+44>>2]=0,A[f+32>>2]=0,A[f+36>>2]=0,A[(s=f+24|0)>>2]=0,A[s+4>>2]=0,A[f+16>>2]=0,A[f+20>>2]=0,A[f+56>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0,A[f+48>>2]=0,A[f+52>>2]=0,A[f>>2]=12804,A[f+4>>2]=n,R=A[n>>2],j=A[n+4>>2],b[f+63|0]=0,Oa(D=s,(j-R>>2>>>0)/3|0,s=f+63|0),R=A[f+4>>2],j=A[R+28>>2],R=A[R+24>>2],b[f+63|0]=0,Oa(f+36|0,j-R>>2,s),A[f+20>>2]=t,A[f+16>>2]=_,A[f+12>>2]=o,A[f+8>>2]=n,fd(t+8|0,f),Cb(d,A[f+48>>2],A[f+52>>2]),A[f>>2]=12804,(o=A[f+48>>2])&&(A[f+52>>2]=o,oa(o)),A[f>>2]=12620,(o=A[f+36>>2])&&oa(o),(o=A[f+24>>2])&&oa(o),Q=f- -64|0}if(!t)break r}t=od(pa(64),t),f=A[r+4>>2],r=t;e:{a:{if((0|(t=e))>=0){if(_=f+8|0,!((0|(o=(e=A[f+12>>2])-(d=A[f+8>>2])>>2))>(0|t)))if(n=t+1|0,t>>>0>=o>>>0)Vb(_,n-o|0);else if(!(o>>>0<=n>>>0)){if((0|(n=d+(n<<2)|0))!=(0|e))for(;o=A[(e=e-4|0)>>2],A[e>>2]=0,o&&M[A[A[o>>2]+4>>2]](o),(0|e)!=(0|n););A[f+12>>2]=n}if(f=A[_>>2]+(t<<2)|0,e=A[f>>2],A[f>>2]=r,e)break a;break e}if(e=r,!r)break e}M[A[A[e>>2]+4>>2]](e)}T=~t>>>31|0}return Q=a+96|0,0|T}function Kd(r){var e,a=0,i=0,f=0,t=0,o=0;Q=e=Q-16|0,A[e+12>>2]=r;r:if(r>>>0<=211)f=A[Jd(14256,14448,e+12|0)>>2];else for(r>>>0>=4294967292&&(W(),v()),f=m(t=(r>>>0)/210|0,210),A[e+8>>2]=r-f,o=Jd(14448,14640,e+8|0)-14448>>2;;){for(f=A[14448+(o<<2)>>2]+f|0,r=5;;){e:if(47!=(0|r)){if((a=A[14256+(r<<2)>>2])>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if(r=r+1|0,(0|m(a,i))!=(0|f))continue}else for(r=211;;){if((a=(f>>>0)/(r>>>0)|0)>>>0<r>>>0)break r;if((0|m(r,a))==(0|f))break e;if((a=r+10|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+12|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+16|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+18|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+22|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+28|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+30|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+36|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+40|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+42|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+46|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+52|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+58|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+60|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+66|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+70|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+72|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+78|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+82|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+88|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+96|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+100|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+102|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+106|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+108|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+112|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+120|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+126|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+130|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+136|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+138|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+142|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+148|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+150|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+156|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+162|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+166|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+168|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+172|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+178|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+180|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+186|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+190|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+192|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+196|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+198|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if((0|m(a,i))==(0|f))break e;if((a=r+208|0)>>>0>(i=(f>>>0)/(a>>>0)|0)>>>0)break r;if(r=r+210|0,(0|m(a,i))==(0|f))break}break}o=(r=48==(0|(f=o+1|0)))?0:f,f=m(t=r+t|0,210)}return Q=e+16|0,f}function Ib(r,e){var a,i=0,f=0,t=0,o=0,n=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0;Q=a=Q-16|0;r:{e:{a:{if(k[A[r+4>>2]+36|0]<=1){if(R=-1,i=A[e+20>>2],i=(t=(f=A[e+16>>2])+4|0)>>>0<4?i+1|0:i,n=A[e+12>>2],s[e+8>>2]<t>>>0&(0|n)<=(0|i)|(0|i)>(0|n))break a;f=f+A[e>>2]|0,h=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[a+12>>2]=h,A[e+16>>2]=t,A[e+20>>2]=i}else{if(R=-1,!Ea(1,a+12|0,e))break a;h=A[a+12>>2]}i:{f:{t:{o:{b:if(h){if(i=A[r+8>>2],(A[i+4>>2]-A[i>>2]>>2>>>0)/3>>>0<h>>>0)break a;if((65535&((i=u[A[r+4>>2]+36>>1])<<8|i>>>8))>>>0>=258){n:{for(;;){if(!Ea(1,a+8|0,e))break a;if(i=A[a+8>>2],!Ea(1,a+8|0,e))break a;if((o=i+o|0)>>>0<(i=A[a+8>>2])>>>0)break a;if(n=o-i|0,(0|(i=A[r+40>>2]))==A[r+44>>2]){if((t=(U=(0|(f=i-(j=A[r+36>>2])|0))/12|0)+1|0)>>>0>=357913942)break n;if(i=U<<1,_=U>>>0>=178956970?357913941:i>>>0>t>>>0?i:t){if(_>>>0>=357913942)break e;d=pa(m(_,12))}else d=0;t=d+m(U,12)|0,A[t+4>>2]=o,A[t>>2]=n,i=va(t+m((0|f)/-12|0,12)|0,j,f),A[r+44>>2]=d+m(_,12),A[r+40>>2]=t+12,A[r+36>>2]=i,j&&oa(j)}else A[i+4>>2]=o,A[i>>2]=n,A[r+40>>2]=i+12,h=A[a+12>>2];if(!(h>>>0>(T=T+1|0)>>>0))break}if(R=0,Db(e,0,0),h)for(;;){t=k[e+36|0];A:{k:{if((65535&((i=u[A[r+4>>2]+36>>1])<<8|i>>>8))>>>0<=513){if(!t)break A;if(T=0,(t=(D=(i=A[e+32>>2])>>>3|0)+(n=A[e+24>>2])|0)>>>0>=(f=A[e+28>>2])>>>0?o=i:(t=k[0|t],o=i+1|0,A[e+32>>2]=o,D=o>>>3|0,T=t>>>(7&i)&1),f>>>0>n+D>>>0)break k;break A}if(!t)break A;if(T=0,o=A[e+32>>2],(i=A[e+24>>2]+(o>>>3|0)|0)>>>0>=s[e+28>>2])break A;T=k[0|i]>>>(7&o)&1}A[e+32>>2]=o+1}if(i=A[r+36>>2]+m(R,12)|0,b[i+8|0]=254&k[i+8|0]|1&T,(0|(R=R+1|0))==(0|h))break}b[e+36|0]=0,o=A[e+20>>2],t=0,i=(t=(f=A[e+32>>2]+7|0)>>>0<7?1:t)>>>3|0,f=(t=(7&t)<<29|f>>>3)+A[e+16>>2]|0,i=i+o|0,A[e+16>>2]=f,A[e+20>>2]=f>>>0<t>>>0?i+1|0:i;break b}sa(),v()}for(;;){if(f=A[e+8>>2],n=i=A[e+12>>2],t=i=A[e+20>>2],d=o=(_=A[e+16>>2])+4|0,o>>>0>f>>>0&(0|(i=o>>>0<4?i+1|0:i))>=(0|n)|(0|i)>(0|n))break a;if(j=A[e>>2],U=k[0|(o=j+_|0)]|k[o+1|0]<<8|k[o+2|0]<<16|k[o+3|0]<<24,A[e+16>>2]=d,A[e+20>>2]=i,i=t,f>>>0<(o=_+8|0)>>>0&(0|(i=o>>>0<8?i+1|0:i))>=(0|n)|(0|i)>(0|n))break a;if(d=k[0|(d=d+j|0)]|k[d+1|0]<<8|k[d+2|0]<<16|k[d+3|0]<<24,A[e+16>>2]=o,A[e+20>>2]=i,f>>>0<=o>>>0&(0|i)>=(0|n)|(0|i)>(0|n))break a;if(f=k[o+j|0],t=(i=_+9|0)>>>0<9?t+1|0:t,A[e+16>>2]=i,A[e+20>>2]=t,o=1&f,(0|(i=A[r+40>>2]))==A[r+44>>2]){if((t=(_=(0|(f=i-(j=A[r+36>>2])|0))/12|0)+1|0)>>>0>=357913942)break o;if(i=_<<1,n=_>>>0>=178956970?357913941:i>>>0>t>>>0?i:t){if(n>>>0>=357913942)break e;t=pa(m(n,12))}else t=0;_=t+m(_,12)|0,b[_+8|0]=o,A[_+4>>2]=d,A[_>>2]=U,i=va(_+m((0|f)/-12|0,12)|0,j,f),A[r+44>>2]=t+m(n,12),A[r+40>>2]=_+12,A[r+36>>2]=i,j&&oa(j)}else b[i+8|0]=o,A[i+4>>2]=d,A[i>>2]=U,A[r+40>>2]=i+12,h=A[a+12>>2];if(!(h>>>0>(D=D+1|0)>>>0))break}}if(A[a+8>>2]=0,(i=65535&((i=u[A[r+4>>2]+36>>1])<<8|i>>>8))>>>0<=511){if(R=-1,i=A[e+20>>2],i=(t=(f=A[e+16>>2])+4|0)>>>0<4?i+1|0:i,o=A[e+12>>2],s[e+8>>2]<t>>>0&(0|o)<=(0|i)|(0|i)>(0|o))break a;f=f+A[e>>2]|0,o=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[e+16>>2]=t,A[e+20>>2]=i}else{if(512!=(0|i))break i;if(R=-1,!Ea(1,a+8|0,e))break a;o=A[a+8>>2]}if(!o)break i;if((65535&((i=u[A[r+4>>2]+36>>1])<<8|i>>>8))>>>0<258)break f;for(D=0,h=0;;){if(!Ea(1,a+4|0,e))break a;if(h=A[a+4>>2]+h|0,(0|(i=A[r+52>>2]))==A[r+56>>2]){if((f=(t=(n=i-(d=A[r+48>>2])|0)>>2)+1|0)>>>0>=1073741824)break t;if(i=n>>>1|0,f=n>>>0>=2147483644?1073741823:i>>>0>f>>>0?i:f){if(f>>>0>=1073741824)break e;i=pa(f<<2)}else i=0;A[(t=i+(t<<2)|0)>>2]=h,i=va(i,d,n),A[r+56>>2]=i+(f<<2),A[r+52>>2]=t+4,A[r+48>>2]=i,d&&oa(d)}else A[i>>2]=h,A[r+52>>2]=i+4;if((0|(D=D+1|0))==(0|o))break}break i}sa(),v()}sa(),v()}for(R=0;;){if(i=A[e+20>>2],i=(t=(f=A[e+16>>2])+4|0)>>>0<4?i+1|0:i,n=A[e+12>>2],s[e+8>>2]<t>>>0&(0|n)<=(0|i)|(0|i)>(0|n)){R=-1;break a}if(f=f+A[e>>2]|0,n=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[e+16>>2]=t,A[e+20>>2]=i,(0|(i=A[r+52>>2]))==A[r+56>>2]){if((f=(t=(d=i-(_=A[r+48>>2])|0)>>2)+1|0)>>>0>=1073741824)break r;if(i=d>>>1|0,f=d>>>0>=2147483644?1073741823:i>>>0>f>>>0?i:f){if(f>>>0>=1073741824)break e;i=pa(f<<2)}else i=0;A[(t=i+(t<<2)|0)>>2]=n,i=va(i,_,d),A[r+56>>2]=i+(f<<2),A[r+52>>2]=t+4,A[r+48>>2]=i,_&&oa(_)}else A[i>>2]=n,A[r+52>>2]=i+4;if((0|(R=R+1|0))==(0|o))break}}R=A[e+16>>2]}return Q=a+16|0,R}wa(),v()}sa(),v()}function Va(r,e,a,i){var f=0,t=0,o=0,m=0,h=0,j=R(0),D=0;r:if(i){e:{a:switch(A[r+28>>2]-1|0){case 0:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],o=A[f>>2],h=A[r+48>>2],e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+h|0)+o|0,o=A[f+4>>2],h=k[r+32|0];;){if(e>>>0>=o>>>0)break r;if(j=R(b[0|e]),_[(m<<2)+i>>2]=h?R(j/R(127)):j,e=e+1|0,!((m=m+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break r;i=(f<<2)+i|0,r=(255&a)-f|0;break e;case 1:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],o=A[f>>2],h=A[r+48>>2],e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+h|0)+o|0,o=A[f+4>>2],h=k[r+32|0];;){if(e>>>0>=o>>>0)break r;if(j=R(k[0|e]),_[(m<<2)+i>>2]=h?R(j/R(255)):j,e=e+1|0,!((m=m+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break r;i=(f<<2)+i|0,r=(255&a)-f|0;break e;case 2:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],o=A[f>>2],h=A[r+48>>2],e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+h|0)+o|0,o=A[f+4>>2],h=k[r+32|0];;){if(e>>>0>=o>>>0)break r;if(j=R(n[e>>1]),_[(m<<2)+i>>2]=h?R(j/R(32767)):j,e=e+2|0,!((m=m+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break r;i=(f<<2)+i|0,r=(255&a)-f|0;break e;case 3:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],o=A[f>>2],h=A[r+48>>2],e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+h|0)+o|0,o=A[f+4>>2],h=k[r+32|0];;){if(e>>>0>=o>>>0)break r;if(j=R(u[e>>1]),_[(m<<2)+i>>2]=h?R(j/R(65535)):j,e=e+2|0,!((m=m+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break r;i=(f<<2)+i|0,r=(255&a)-f|0;break e;case 4:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],o=A[f>>2],h=A[r+48>>2],e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+h|0)+o|0,o=A[f+4>>2],h=k[r+32|0];;){if(e>>>0>=o>>>0)break r;if(j=R(A[e>>2]),_[(m<<2)+i>>2]=h?R(j*R(4.656612873077393e-10)):j,e=e+4|0,!((m=m+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break r;i=(f<<2)+i|0,r=(255&a)-f|0;break e;case 5:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],o=A[f>>2],h=A[r+48>>2],e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+h|0)+o|0,o=A[f+4>>2],h=k[r+32|0];;){if(e>>>0>=o>>>0)break r;if(j=R(s[e>>2]),_[(m<<2)+i>>2]=h?R(j*R(2.3283064365386963e-10)):j,e=e+4|0,!((m=m+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break r;i=(f<<2)+i|0,r=(255&a)-f|0;break e;case 6:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],o=A[f>>2],h=A[r+48>>2],e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+h|0)+o|0,o=A[f+4>>2],h=k[r+32|0];;){if(e>>>0>=o>>>0)break r;if(j=R(+s[e>>2]+4294967296*+A[e+4>>2]),_[(m<<2)+i>>2]=h?R(j*R(10842021724855044e-35)):j,e=e+8|0,!((m=m+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break r;i=(f<<2)+i|0,r=(255&a)-f|0;break e;case 7:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],o=A[f>>2],h=A[r+48>>2],e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+h|0)+o|0,o=A[f+4>>2],h=k[r+32|0];;){if(e>>>0>=o>>>0)break r;if(j=R(+s[e>>2]+4294967296*+s[e+4>>2]),_[(m<<2)+i>>2]=h?R(j*R(5.421010862427522e-20)):j,e=e+8|0,!((m=m+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break r;i=(f<<2)+i|0,r=(255&a)-f|0;break e;case 8:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],o=A[f>>2],h=A[r+48>>2],e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+h|0)+o|0,o=A[f+4>>2];;){if(e>>>0>=o>>>0)break r;if(_[(m<<2)+i>>2]=_[e>>2],e=e+4|0,!((m=m+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break r;i=(f<<2)+i|0,r=(255&a)-f|0;break e;case 9:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],o=A[f>>2],h=A[r+48>>2],e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+h|0)+o|0,o=A[f+4>>2];;){if(e>>>0>=o>>>0)break r;if(_[(m<<2)+i>>2]=d[e>>3],e=e+8|0,!((m=m+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break r;i=(f<<2)+i|0,r=(255&a)-f|0;break e;case 10:break a;default:break r}if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[r>>2],o=A[f>>2],h=A[r+48>>2],e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+h|0)+o|0,o=A[f+4>>2];;){if(e>>>0>=o>>>0)break r;if(_[(m<<2)+i>>2]=k[0|e]?R(1):R(0),e=e+1|0,!((m=m+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break r;i=(f<<2)+i|0,r=(255&a)-f|0}ra(i,0,r<<2)}return D}function ic(r,e,a,i){var f=0,t=0,o=0,n=0,m=0,j=0,D=0,U=R(0),N=R(0);r:{e:if(i){a:switch(A[r+28>>2]-1|0){case 0:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if(b[i+o|0]=k[0|e],e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 1:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)return 0;if((0|(f=b[0|e]))<0)break e;if(b[i+o|0]=f,e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 2:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if(((f=u[e>>1])+128&65535)>>>0>255)break e;if(b[i+o|0]=f,e=e+2|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 3:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if((f=u[e>>1])>>>0>127)break e;if(b[i+o|0]=f,e=e+2|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 4:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if((f=A[e>>2])+128>>>0>255)break e;if(b[i+o|0]=f,e=e+4|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 5:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if((f=A[e>>2])>>>0>127)break e;if(b[i+o|0]=f,e=e+4|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 6:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if(m=A[e+4>>2],!(m=(n=(f=A[e>>2])+128|0)>>>0<128?m+1|0:m)&n>>>0>255|m)break e;if(b[i+o|0]=f,e=e+8|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 7:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if(!(m=A[e+4>>2])&(f=A[e>>2])>>>0>127|m)break e;if(b[i+o|0]=f,e=e+8|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 8:i:{if((a&=255)>>>0>(f=k[r+24|0])>>>0?f:a)for(f=A[A[r>>2]>>2],t=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+t|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break i;if((U=_[e>>2])>=R(127)|U<R(-128)|U!=U)break i;if((N=R(h(U)))==R(1/0))break i;f=i+o|0;f:{t:{if(k[r+32|0]){if(U<R(0)|U>R(1))break i;if(j=T(127*+U+.5),!(h(j)<2147483648))break t;n=~~j;break f}if(N<R(2147483648)){n=~~U;break f}}n=-2147483648}if(b[0|f]=n,e=e+4|0,!((o=o+1|0)>>>0<(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0))break}D=1,a>>>0<=f>>>0||ra(i+f|0,0,a-f|0)}return D;case 9:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if((j=d[e>>3])>=127|j<-128|h(j)==1/0|j!=j)break e;if(f=i+o|0,k[r+32|0]){if(j<0|j>1)break e;j=T(127*j+.5)}if(n=h(j)<2147483648?~~j:-2147483648,b[0|f]=n,e=e+8|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 10:break a;default:break e}if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if(b[i+o|0]=k[0|e],e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}D=1,f>>>0>=t>>>0||ra(i+f|0,0,(255&a)-f|0)}return D}return ra(i+f|0,0,(255&a)-f|0),1}function hc(r,e,a,i){var f=0,t=0,o=0,n=0,m=0,j=0,D=0,U=R(0);r:{e:if(i){a:switch(A[r+28>>2]-1|0){case 0:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)return 0;if((0|(f=b[0|e]))<0)break e;if(b[i+o|0]=f,e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 1:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if(b[i+o|0]=k[0|e],e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 2:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if((f=u[e>>1])>>>0>255)break e;if(b[i+o|0]=f,e=e+2|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 3:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if((f=u[e>>1])>>>0>255)break e;if(b[i+o|0]=f,e=e+2|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 4:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if((f=A[e>>2])>>>0>255)break e;if(b[i+o|0]=f,e=e+4|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 5:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if((f=A[e>>2])>>>0>255)break e;if(b[i+o|0]=f,e=e+4|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 6:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if(!(m=A[e+4>>2])&(f=A[e>>2])>>>0>255|m)break e;if(b[i+o|0]=f,e=e+8|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 7:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if(!(m=A[e+4>>2])&(f=A[e>>2])>>>0>255|m)break e;if(b[i+o|0]=f,e=e+8|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 8:i:{if((a&=255)>>>0>(f=k[r+24|0])>>>0?f:a)for(f=A[A[r>>2]>>2],t=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+t|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break i;if((U=_[e>>2])>=R(255)|U<R(0)|R(h(U))==R(1/0)|U!=U)break i;f=i+o|0;f:{t:{if(k[r+32|0]){if(U>R(1))break i;if(!((j=T(255*+U+.5))<4294967296&j>=0))break t;n=~~j>>>0;break f}if(U<R(4294967296)&U>=R(0)){n=~~U>>>0;break f}}n=0}if(b[0|f]=n,e=e+4|0,!((o=o+1|0)>>>0<(a>>>0>(f=k[r+24|0])>>>0?f:a)>>>0))break}D=1,a>>>0<=f>>>0||ra(i+f|0,0,a-f|0)}return D;case 9:if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if((j=d[e>>3])>=255|j<0|h(j)==1/0|j!=j)break e;if(f=i+o|0,k[r+32|0]){if(j>1)break e;j=T(255*j+.5)}if(n=j<4294967296&j>=0?~~j>>>0:0,b[0|f]=n,e=e+8|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}if(D=1,f>>>0>=t>>>0)break e;break r;case 10:break a;default:break e}if((f=k[r+24|0])>>>0<(t=255&a)>>>0?f:t)for(f=A[A[r>>2]>>2],m=A[r+48>>2],n=e=Rj(A[r+40>>2],A[r+44>>2],e,0),e=(e=e+m|0)+f|0;;){if(s[A[r>>2]+4>>2]<=e>>>0)break e;if(b[i+o|0]=k[0|e],e=e+1|0,!((o=o+1|0)>>>0<((f=k[r+24|0])>>>0<t>>>0?f:t)>>>0))break}D=1,f>>>0>=t>>>0||ra(i+f|0,0,(255&a)-f|0)}return D}return ra(i+f|0,0,(255&a)-f|0),1}function Le(r,e,a){var i,f=0,t=0,o=0,b=0,n=0,s=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0;Q=i=Q+-64|0,A[i+56>>2]=0,A[i+48>>2]=0,A[i+52>>2]=0,A[i+40>>2]=0,A[i+44>>2]=0,A[i+32>>2]=0,A[i+36>>2]=0,A[i+24>>2]=0,A[i+28>>2]=0,A[i+16>>2]=0,A[i+20>>2]=0,A[i+8>>2]=0,A[i+12>>2]=0,s=i+8|0;r:{e:if(f=u[e+38>>1]){if(f>>>0<=511){if(b=A[e+8>>2],o=A[e+12>>2],t=A[e+20>>2],b>>>0<(n=(f=A[e+16>>2])+4|0)>>>0&(0|(t=n>>>0<4?t+1|0:t))>=(0|o)|(0|t)>(0|o))break e;f=f+A[e>>2]|0,d=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[s+12>>2]=d,t=A[e+20>>2],t=(f=A[e+16>>2]+4|0)>>>0<4?t+1|0:t,A[e+16>>2]=f,A[e+20>>2]=t}else{if(!hb(1,s+12|0,e))break e;f=A[e+16>>2],t=A[e+20>>2],d=A[s+12>>2]}if(!((n=(o=A[e+8>>2])-f|0)>>>0<d>>>6>>>0&(0|(f=A[e+12>>2]-((f>>>0>o>>>0)+t|0)|0))<=0|(0|f)<0)){if(t=A[s>>2],(f=A[s+4>>2]-t>>2)>>>0<d>>>0?(ya(s,d-f|0),d=A[s+12>>2]):f>>>0<=d>>>0||(A[s+4>>2]=t+(d<<2)),n=1,!d)break r;for(f=A[e+16>>2],t=A[e+20>>2],T=A[s>>2],_=A[e+8>>2],j=A[e+12>>2],b=0;;){if(n=0,(0|t)>=(0|j)&f>>>0>=_>>>0|(0|t)>(0|j))break r;n=A[e>>2],D=k[n+f|0],t=(f=f+1|0)?t:t+1|0,A[e+16>>2]=f,A[e+20>>2]=t,o=D>>>2|0,R=0;a:{i:{f:{t:switch(0|(N=3&D)){case 0:break i;case 3:break t;default:break f}if(n=0,(o=o+b|0)>>>0>=d>>>0)break r;ra(T+(b<<2)|0,0,4+(252&D)|0),b=o;break a}for(;;){if((0|f)==(0|_)&(0|t)==(0|j))break e;if(d=k[f+n|0],t=(f=f+1|0)?t:t+1|0,A[e+16>>2]=f,A[e+20>>2]=t,o|=d<<(R<<3|6),(0|N)==(0|(R=R+1|0)))break}}A[T+(b<<2)>>2]=o}if(!((d=A[s+12>>2])>>>0>(b=b+1|0)>>>0))break}if(f=s+16|0,j=A[s>>2],o=A[s+16>>2],(t=A[s+20>>2]-o|0)>>>0<=4194303?ya(f,1048576-(t>>>2|0)|0):4194304!=(0|t)&&(A[s+20>>2]=o+4194304),b=A[(t=s+28|0)>>2],(o=A[s+32>>2]-b>>3)>>>0<d>>>0)ob(t,d-o|0),b=A[t>>2];else if(o>>>0>d>>>0&&(A[s+32>>2]=(d<<3)+b),!d)break e;for(_=A[f>>2],f=0,n=0;;){if(s=A[(t=j+(f<<2)|0)>>2],o=n,A[(R=(f<<3)+b|0)+4>>2]=o,A[R>>2]=s,(n=(t=A[t>>2])+o|0)>>>0>1048576)break e;if(!(o>>>0>=n>>>0)){if(R=0,s=7&t)for(;A[_+(o<<2)>>2]=f,o=o+1|0,(0|s)!=(0|(R=R+1|0)););if(!(t-1>>>0<=6))for(;A[(t=_+(o<<2)|0)>>2]=f,A[t+28>>2]=f,A[t+24>>2]=f,A[t+20>>2]=f,A[t+16>>2]=f,A[t+12>>2]=f,A[t+8>>2]=f,A[t+4>>2]=f,(0|n)!=(0|(o=o+8|0)););}if((0|d)==(0|(f=f+1|0)))break}h=1048576==(0|n)}}n=h}if(!(!n|(A[i+20>>2]?0:r))){n=0,Q=h=Q-16|0;r:{if(u[e+38>>1]<=511){if(b=A[e+8>>2],s=o=A[e+12>>2],t=A[e+20>>2],(f=(_=A[e+16>>2])+8|0)>>>0>b>>>0&(0|(t=f>>>0<8?t+1|0:t))>=(0|o)|(0|t)>(0|o))break r;_=_+A[e>>2]|0,o=k[0|_]|k[_+1|0]<<8|k[_+2|0]<<16|k[_+3|0]<<24,_=k[_+4|0]|k[_+5|0]<<8|k[_+6|0]<<16|k[_+7|0]<<24,A[e+16>>2]=f,A[e+20>>2]=t}else{if(!gb(1,h+8|0,e))break r;f=A[e+16>>2],t=A[e+20>>2],b=A[e+8>>2],s=A[e+12>>2],o=A[h+8>>2],_=A[h+12>>2]}if(d=b-f|0,!((0|(b=s-((f>>>0>b>>>0)+t|0)|0))==(0|_)&o>>>0>d>>>0|b>>>0<_>>>0||(t=t+_|0,t=(b=f+o|0)>>>0<o>>>0?t+1|0:t,A[e+16>>2]=b,A[e+20>>2]=t,(0|o)<=0))){e=A[e>>2]+f|0,A[i+48>>2]=e;e:if((b=k[0|(t=(f=o-1|0)+e|0)])>>>0<=63)A[i+52>>2]=f,e=63&k[0|t];else{a:switch((b>>>6|0)-1|0){case 0:if(o>>>0<2)break r;f=o-2|0,A[i+52>>2]=f,e=k[(e=e+f|0)+1|0]<<8&16128|k[0|e];break e;case 1:if(o>>>0<3)break r;f=o-3|0,A[i+52>>2]=f,e=k[(e=e+f|0)+1|0]<<8|k[e+2|0]<<16&4128768|k[0|e];break e;default:break a}f=o-4|0,A[i+52>>2]=f,e=1073741823&(k[0|(e=e+f|0)]|k[e+1|0]<<8|k[e+2|0]<<16|k[e+3|0]<<24)}A[i+56>>2]=e+4194304,n=e>>>0<1069547520}}if(Q=h+16|0,n)if(r)for(e=A[i+52>>2],o=A[i+56>>2],f=A[i+36>>2],t=A[i+48>>2],b=A[i+24>>2];;){r:if(!(o>>>0>4194303))for(;;){if((0|e)<=0)break r;if(e=e-1|0,A[i+52>>2]=e,o=k[e+t|0]|o<<8,A[i+56>>2]=o,!(o>>>0<4194304))break}if(_=A[b+((n=1048575&o)<<2)>>2],o=(m(A[(h=f+(_<<3)|0)>>2],o>>>20|0)+n|0)-A[h+4>>2]|0,A[i+56>>2]=o,A[(U<<2)+a>>2]=_,V=1,(0|(U=U+1|0))==(0|r))break}else V=1}return(r=A[i+36>>2])&&(A[i+40>>2]=r,oa(r)),(r=A[i+24>>2])&&(A[i+28>>2]=r,oa(r)),(r=A[i+8>>2])&&(A[i+12>>2]=r,oa(r)),Q=i- -64|0,V}function nc(r,e,a){var i,f=0,t=0,o=0,_=0,d=0;Q=i=Q-48|0,t=u[6677]|u[6678]<<16,f=u[6675]|u[6676]<<16,n[i+38>>1]=f,n[i+40>>1]=f>>>16,n[i+42>>1]=t,n[i+44>>1]=t>>>16,f=A[3337],A[i+32>>2]=A[3336],A[i+36>>2]=f,f=A[3335],A[i+24>>2]=A[3334],A[i+28>>2]=f,f=A[3333],A[i+16>>2]=A[3332],A[i+20>>2]=f,o=A[e+8>>2],d=A[e+12>>2],_=A[e+20>>2];r:{e:if(o>>>0<(t=(f=A[e+16>>2])+5|0)>>>0&(0|(_=t>>>0<5?_+1|0:_))>=(0|d)|(0|_)>(0|d)){if((f=Ma(i+16|0))>>>0>=2147483632)break r;a:{if(f>>>0>=11)a=pa(e=1+(15|f)|0),A[i+8>>2]=-2147483648|e,A[i>>2]=a,A[i+4>>2]=f,e=a+f|0;else if(b[i+11|0]=f,e=f+i|0,a=i,!f)break a;qa(a,i+16|0,f)}if(b[0|e]=0,A[r>>2]=-2,e=r+4|0,b[i+11|0]>=0){r=A[i+4>>2],A[e>>2]=A[i>>2],A[e+4>>2]=r,A[e+8>>2]=A[i+8>>2];break e}if(za(e,A[i>>2],A[i+4>>2]),b[i+11|0]>=0)break e;oa(A[i>>2])}else if(t=f+A[e>>2]|0,f=k[0|t]|k[t+1|0]<<8|k[t+2|0]<<16|k[t+3|0]<<24,b[0|a]=f,b[a+1|0]=f>>>8,b[a+2|0]=f>>>16,b[a+3|0]=f>>>24,b[a+4|0]=k[t+4|0],f=A[e+20>>2],f=(t=A[e+16>>2]+5|0)>>>0<5?f+1|0:f,A[e+16>>2]=t,A[e+20>>2]=f,Fa(a,1260,5))f=pa(32),b[f+17|0]=0,b[f+16|0]=k[1496],a=k[1492]|k[1493]<<8|k[1494]<<16|k[1495]<<24,e=k[1488]|k[1489]<<8|k[1490]<<16|k[1491]<<24,b[f+8|0]=e,b[f+9|0]=e>>>8,b[f+10|0]=e>>>16,b[f+11|0]=e>>>24,b[f+12|0]=a,b[f+13|0]=a>>>8,b[f+14|0]=a>>>16,b[f+15|0]=a>>>24,a=k[1484]|k[1485]<<8|k[1486]<<16|k[1487]<<24,e=k[1480]|k[1481]<<8|k[1482]<<16|k[1483]<<24,b[0|f]=e,b[f+1|0]=e>>>8,b[f+2|0]=e>>>16,b[f+3|0]=e>>>24,b[f+4|0]=a,b[f+5|0]=a>>>8,b[f+6|0]=a>>>16,b[f+7|0]=a>>>24,A[r>>2]=-1,za(r+4|0,f,17),oa(f);else if((0|(o=A[e+12>>2]))<=(0|f)&s[e+8>>2]<=t>>>0|(0|f)>(0|o)){if((f=Ma(i+16|0))>>>0>=2147483632)break r;a:{if(f>>>0>=11)a=pa(e=1+(15|f)|0),A[i+8>>2]=-2147483648|e,A[i>>2]=a,A[i+4>>2]=f,e=a+f|0;else if(b[i+11|0]=f,e=f+i|0,a=i,!f)break a;qa(a,i+16|0,f)}if(b[0|e]=0,A[r>>2]=-2,e=r+4|0,b[i+11|0]>=0){r=A[i+4>>2],A[e>>2]=A[i>>2],A[e+4>>2]=r,A[e+8>>2]=A[i+8>>2];break e}if(za(e,A[i>>2],A[i+4>>2]),b[i+11|0]>=0)break e;oa(A[i>>2])}else if(b[a+5|0]=k[t+A[e>>2]|0],o=A[e+20>>2],o=(f=A[e+16>>2]+1|0)?o:o+1|0,A[e+16>>2]=f,A[e+20>>2]=o,(0|(t=A[e+12>>2]))<=(0|o)&s[e+8>>2]<=f>>>0|(0|o)>(0|t)){if((f=Ma(i+16|0))>>>0>=2147483632)break r;a:{if(f>>>0>=11)a=pa(e=1+(15|f)|0),A[i+8>>2]=-2147483648|e,A[i>>2]=a,A[i+4>>2]=f,e=a+f|0;else if(b[i+11|0]=f,e=f+i|0,a=i,!f)break a;qa(a,i+16|0,f)}if(b[0|e]=0,A[r>>2]=-2,e=r+4|0,b[i+11|0]>=0){r=A[i+4>>2],A[e>>2]=A[i>>2],A[e+4>>2]=r,A[e+8>>2]=A[i+8>>2];break e}if(za(e,A[i>>2],A[i+4>>2]),b[i+11|0]>=0)break e;oa(A[i>>2])}else if(b[a+6|0]=k[f+A[e>>2]|0],_=A[e+20>>2],_=(f=A[e+16>>2]+1|0)?_:_+1|0,A[e+16>>2]=f,A[e+20>>2]=_,(0|(t=A[e+12>>2]))<=(0|_)&s[e+8>>2]<=f>>>0|(0|t)<(0|_)){if((f=Ma(i+16|0))>>>0>=2147483632)break r;a:{if(f>>>0>=11)a=pa(e=1+(15|f)|0),A[i+8>>2]=-2147483648|e,A[i>>2]=a,A[i+4>>2]=f,e=a+f|0;else if(b[i+11|0]=f,e=f+i|0,a=i,!f)break a;qa(a,i+16|0,f)}if(b[0|e]=0,A[r>>2]=-2,e=r+4|0,b[i+11|0]>=0){r=A[i+4>>2],A[e>>2]=A[i>>2],A[e+4>>2]=r,A[e+8>>2]=A[i+8>>2];break e}if(za(e,A[i>>2],A[i+4>>2]),b[i+11|0]>=0)break e;oa(A[i>>2])}else if(b[a+7|0]=k[f+A[e>>2]|0],o=A[e+20>>2],o=(f=A[e+16>>2]+1|0)?o:o+1|0,A[e+16>>2]=f,A[e+20>>2]=o,(0|(t=A[e+12>>2]))<=(0|o)&s[e+8>>2]<=f>>>0|(0|o)>(0|t)){if(a=mc(i,i+16|0),A[r>>2]=-2,e=r+4|0,b[a+11|0]>=0){r=A[a+4>>2],A[e>>2]=A[a>>2],A[e+4>>2]=r,A[e+8>>2]=A[a+8>>2];break e}if(za(e,A[a>>2],A[a+4>>2]),b[a+11|0]>=0)break e;oa(A[a>>2])}else if(b[a+8|0]=k[f+A[e>>2]|0],f=A[e+20>>2],d=(t=(o=A[e+16>>2])+1|0)?f:f+1|0,A[e+16>>2]=t,A[e+20>>2]=d,(o=o+3|0)>>>0>(d=A[e+8>>2])>>>0&(0|(f=o>>>0<3?f+1|0:f))>=(0|(_=A[e+12>>2]))|(0|f)>(0|_)){if(a=mc(i,i+16|0),A[r>>2]=-2,e=r+4|0,b[a+11|0]>=0){r=A[a+4>>2],A[e>>2]=A[a>>2],A[e+4>>2]=r,A[e+8>>2]=A[a+8>>2];break e}if(za(e,A[a>>2],A[a+4>>2]),b[a+11|0]>=0)break e;oa(A[a>>2])}else f=a,a=A[e>>2]+t|0,n[f+10>>1]=k[0|a]|k[a+1|0]<<8,o=A[e+20>>2],o=(a=A[e+16>>2]+2|0)>>>0<2?o+1|0:o,A[e+16>>2]=a,A[e+20>>2]=o,A[r+8>>2]=0,A[r+12>>2]=0,A[r>>2]=0,A[r+4>>2]=0;return void(Q=i+48|0)}Na(),v()}function Nb(r,e,a){e|=0,a|=0;var i,f=0,t=0,o=0,n=0,u=0,s=0,_=0,d=0,m=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0;Q=i=Q-96|0,t=A[(r|=0)+16>>2],b[i+92|0]=1,A[i+88>>2]=e,A[i+84>>2]=e,A[i+80>>2]=t,s=A[r+20>>2],f=A[s>>2];r:{e:{if((t=A[A[t+28>>2]+(e<<2)>>2])>>>0<A[s+4>>2]-f>>2>>>0){if(f=A[A[r+8>>2]+(A[f+(t<<2)>>2]<<2)>>2],t=A[r+4>>2],k[t+84|0]||(f=A[A[t+68>>2]+(f<<2)>>2]),A[i+72>>2]=0,A[i+76>>2]=0,A[(s=i- -64|0)>>2]=0,A[s+4>>2]=0,A[i+56>>2]=0,A[i+60>>2]=0,Sa(t,f,b[t+24|0],i+56|0),-1!=(0|e))for(s=((t=e+1|0)>>>0)%3|0?t:e-2|0,m=((e>>>0)%3|0?-1:2)+e|0;;){if(f=s,t=m,A[r+28>>2]&&(f=((t=e+1|0)>>>0)%3|0?t:e-2|0,t=e-1|0,(e>>>0)%3|0||(t=e+2|0)),R=A[r+20>>2],e=A[R>>2],(f=A[A[A[r+16>>2]+28>>2]+(f<<2)>>2])>>>0>=A[R+4>>2]-e>>2>>>0)break e;if(f=A[A[r+8>>2]+(A[e+(f<<2)>>2]<<2)>>2],e=A[r+4>>2],k[e+84|0]||(f=A[A[e+68>>2]+(f<<2)>>2]),A[i+48>>2]=0,A[i+52>>2]=0,A[i+40>>2]=0,A[i+44>>2]=0,A[i+32>>2]=0,A[i+36>>2]=0,Sa(e,f,b[e+24|0],i+32|0),f=A[r+20>>2],e=A[f>>2],(t=A[A[A[r+16>>2]+28>>2]+(t<<2)>>2])>>>0>=A[f+4>>2]-e>>2>>>0)break r;f=A[A[r+8>>2]+(A[e+(t<<2)>>2]<<2)>>2],e=A[r+4>>2],k[e+84|0]||(f=A[A[e+68>>2]+(f<<2)>>2]),A[i+24>>2]=0,A[i+28>>2]=0,A[i+16>>2]=0,A[i+20>>2]=0,A[i+8>>2]=0,A[i+12>>2]=0,Sa(e,f,b[e+24|0],i+8|0),f=(o=A[i+8>>2])-(e=A[i+56>>2])|0,j=A[i+60>>2],N=A[i+12>>2]-(j+(e>>>0>o>>>0)|0)|0,R=(n=A[i+40>>2])-(t=A[i+64>>2])|0,V=A[i+68>>2],o=Rj(f,N,R,Z=A[i+44>>2]-(V+(t>>>0>n>>>0)|0)|0),G=u-(Y+(o>>>0>h>>>0)|0)|0,h=(u=W=h-o|0)+(e=Rj(o=(n=A[i+16>>2])-t|0,V=A[i+20>>2]-((t>>>0>n>>>0)+V|0)|0,n=(_=A[i+32>>2])-e|0,W=A[i+36>>2]-((e>>>0>_>>>0)+j|0)|0))|0,u=Y+G|0,u=e>>>0>h>>>0?u+1|0:u,e=d,d=f,j=N,f=(_=A[i+48>>2])-(t=A[i+72>>2])|0,N=A[i+76>>2],_=e+(d=Rj(d,j,f,G=A[i+52>>2]-(N+(t>>>0>_>>>0)|0)|0))|0,e=Y+D|0,e=_>>>0<d>>>0?e+1|0:e,d=_-(D=Rj(j=(d=A[i+24>>2])-t|0,t=A[i+28>>2]-((t>>>0>d>>>0)+N|0)|0,n,W))|0,D=e-(Y+(_>>>0<D>>>0)|0)|0,f=U-(e=Rj(o,V,f,G))|0,e=T-(Y+(e>>>0>U>>>0)|0)|0,T=Rj(j,t,R,Z),e=Y+e|0,T=(U=T+f|0)>>>0<T>>>0?e+1|0:e,e=A[i+88>>2],t=A[i+80>>2];a:if(k[i+92|0]){i:{if(-1==(0|e)||-1==(0|(e=((f=e+1|0)>>>0)%3|0?f:e-2|0))|A[A[t>>2]+(e>>>3&536870908)>>2]>>>e&1||-1==(0|(e=A[A[A[t+64>>2]+12>>2]+(e<<2)>>2])))A[i+88>>2]=-1;else if(e=((f=e+1|0)>>>0)%3|0?f:e-2|0,A[i+88>>2]=e,-1!=(0|e))break i;f=-1;f:if(-1!=(0|(e=A[i+84>>2]))){if((e>>>0)%3|0)e=e-1|0;else if(f=-1,-1==(0|(e=e+2|0)))break f;f=-1,A[A[t>>2]+(e>>>3&536870908)>>2]>>>e&1||(f=-1,-1!=(0|(e=A[A[A[t+64>>2]+12>>2]+(e<<2)>>2]))&&(f=e-1|0,(e>>>0)%3|0||(f=e+2|0)))}b[i+92|0]=0,A[i+88>>2]=f;break a}if((0|e)!=A[i+84>>2])break a;A[i+88>>2]=-1}else{f=-1;i:if(-1!=(0|e)){if((e>>>0)%3|0)e=e-1|0;else if(f=-1,-1==(0|(e=e+2|0)))break i;f=-1,A[A[t>>2]+(e>>>3&536870908)>>2]>>>e&1||(f=-1,-1!=(0|(e=A[A[A[t+64>>2]+12>>2]+(e<<2)>>2]))&&(f=e-1|0,(e>>>0)%3|0||(f=e+2|0)))}A[i+88>>2]=f}if(-1==(0|(e=A[i+88>>2])))break}f=(t=(e=T>>31)^U)-e|0,e=(e^T)-((e>>>0>t>>>0)+e|0)|0,m=-1,t=2147483647,_=~(s=(n=(o=D>>31)^d)-o|0),o=2147483647^(n=R=(o^D)-((n>>>0<o>>>0)+o|0)|0),R=u;a:{if(A[r+28>>2]){if(!((0|e)==(0|o)&f>>>0>_>>>0|e>>>0>o>>>0)&&(e=e+n|0,e=(r=f+s|0)>>>0<s>>>0?e+1|0:e,_=u,u=(n=(f=u>>31)^h)-f|0,!((0|(o=2147483647^(s=(f^_)-((f>>>0>n>>>0)+f|0)|0)))==(0|e)&(f=r)>>>0>~(r=u)>>>0|e>>>0>o>>>0)&&(e=e+s|0,t=e=(m=r+f|0)>>>0<r>>>0?e+1|0:e,!e&m>>>0<536870913)))break a;e=t>>>29|0,r=(536870911&t)<<3|m>>>29}else{if((0|e)==(0|o)&f>>>0>_>>>0|e>>>0>o>>>0)break a;if(e=e+n|0,e=(r=f+s|0)>>>0<s>>>0?e+1|0:e,t=r,u=r=(m=(f=r=(o=u)>>31)^h)-f|0,f=(f^o)-((f>>>0>m>>>0)+f|0)|0,r=r+t|0,!0&(0|(r=(u=(0|(f^=2147483647))==(0|e)&~u>>>0<t>>>0|e>>>0>f>>>0)?-1:r))<=536870912|(0|r)<536870912)break a;e=0,r=r>>>29|0}h=Sj(h,R,r,e),d=Sj(d,D,r,e),U=Sj(U,T,r,e)}return A[a+8>>2]=h,A[a+4>>2]=d,A[a>>2]=U,void(Q=i+96|0)}Ca(),v()}Ca(),v()}Ca(),v()}function xa(r){var e,a=0,i=0,f=0,t=0,o=0,b=0,n=0,k=0,u=0,s=0,_=0,d=0,m=0;Q=e=Q-32|0;r:{e:if((a=A[r+16>>2])>>>0>=341){if(A[r+16>>2]=a-341,a=A[r+4>>2],k=A[a>>2],i=a+4|0,A[r+4>>2]=i,(0|(a=A[r+8>>2]))==A[r+12>>2])if((u=A[r>>2])>>>0<i>>>0)f=va((t=(1+(i-u>>2)|0)/-2<<2)+i|0,i,a=a-i|0)+a|0,A[r+8>>2]=f,A[r+4>>2]=t+A[r+4>>2];else{if((f=(0|a)==(0|u)?1:a-u>>1)>>>0>=1073741824)break r;if(s=(t=f<<2)+(b=pa(t))|0,f=t=b+(-4&f)|0,(0|a)!=(0|i)){if(_=-4&(a=a-i|0),o=1+((n=a-4|0)>>>2|0)&7)for(f=0,a=t;A[a>>2]=A[i>>2],i=i+4|0,a=a+4|0,(0|o)!=(0|(f=f+1|0)););else a=t;if(f=t+_|0,!(n>>>0<28))for(;A[a>>2]=A[i>>2],A[a+4>>2]=A[i+4>>2],A[a+8>>2]=A[i+8>>2],A[a+12>>2]=A[i+12>>2],A[a+16>>2]=A[i+16>>2],A[a+20>>2]=A[i+20>>2],A[a+24>>2]=A[i+24>>2],A[a+28>>2]=A[i+28>>2],i=i+32|0,(0|f)!=(0|(a=a+32|0)););}A[r+12>>2]=s,A[r+8>>2]=f,A[r+4>>2]=t,A[r>>2]=b,u&&(oa(u),f=A[r+8>>2])}else f=a;A[f>>2]=k,A[r+8>>2]=A[r+8>>2]+4}else if((b=(s=(i=A[r+8>>2])-(a=A[r+4>>2])|0)>>2)>>>0<(t=(o=A[r+12>>2])-(f=A[r>>2])|0)>>2>>>0){if((0|i)!=(0|o)){d=e,m=pa(4092),A[d+8>>2]=m,f=r;a:{i:{if((0|(a=A[r+8>>2]))==A[r+12>>2])if((i=A[f+4>>2])>>>0>(b=A[f>>2])>>>0)t=va((o=(1+(i-b>>2)|0)/-2<<2)+i|0,i,r=a-i|0)+r|0,A[f+8>>2]=t,A[f+4>>2]=o+A[f+4>>2];else{if((t=(0|a)==(0|b)?1:a-b>>1)>>>0>=1073741824)break i;if(s=(r=t<<2)+(k=pa(r))|0,t=r=k+(-4&t)|0,(0|a)!=(0|i)){if(_=-4&(a=a-i|0),o=1+((n=a-4|0)>>>2|0)&7)for(t=0,a=r;A[a>>2]=A[i>>2],i=i+4|0,a=a+4|0,(0|o)!=(0|(t=t+1|0)););else a=r;if(t=r+_|0,!(n>>>0<28))for(;A[a>>2]=A[i>>2],A[a+4>>2]=A[i+4>>2],A[a+8>>2]=A[i+8>>2],A[a+12>>2]=A[i+12>>2],A[a+16>>2]=A[i+16>>2],A[a+20>>2]=A[i+20>>2],A[a+24>>2]=A[i+24>>2],A[a+28>>2]=A[i+28>>2],i=i+32|0,(0|t)!=(0|(a=a+32|0)););}A[f+12>>2]=s,A[f+8>>2]=t,A[f+4>>2]=r,A[f>>2]=k,b&&(oa(b),t=A[f+8>>2])}else t=a;A[t>>2]=A[e+8>>2],A[f+8>>2]=A[f+8>>2]+4;break a}wa(),v()}break e}if(d=e,m=pa(4092),A[d+8>>2]=m,qd(r,e+8|0),a=A[r+4>>2],k=A[a>>2],i=a+4|0,A[r+4>>2]=i,(0|(a=A[r+8>>2]))==A[r+12>>2])if((u=A[r>>2])>>>0<i>>>0)f=va((t=(1+(i-u>>2)|0)/-2<<2)+i|0,i,a=a-i|0)+a|0,A[r+8>>2]=f,A[r+4>>2]=t+A[r+4>>2];else{if((f=(0|a)==(0|u)?1:a-u>>1)>>>0>=1073741824)break r;if(s=(t=f<<2)+(b=pa(t))|0,f=t=b+(-4&f)|0,(0|a)!=(0|i)){if(_=-4&(a=a-i|0),o=1+((n=a-4|0)>>>2|0)&7)for(f=0,a=t;A[a>>2]=A[i>>2],i=i+4|0,a=a+4|0,(0|o)!=(0|(f=f+1|0)););else a=t;if(f=t+_|0,!(n>>>0<28))for(;A[a>>2]=A[i>>2],A[a+4>>2]=A[i+4>>2],A[a+8>>2]=A[i+8>>2],A[a+12>>2]=A[i+12>>2],A[a+16>>2]=A[i+16>>2],A[a+20>>2]=A[i+20>>2],A[a+24>>2]=A[i+24>>2],A[a+28>>2]=A[i+28>>2],i=i+32|0,(0|f)!=(0|(a=a+32|0)););}A[r+12>>2]=s,A[r+8>>2]=f,A[r+4>>2]=t,A[r>>2]=b,u&&(oa(u),f=A[r+8>>2])}else f=a;A[f>>2]=k,A[r+8>>2]=A[r+8>>2]+4}else{if(A[e+24>>2]=r+12,(_=(0|f)==(0|o)?1:t>>1)>>>0>=1073741824)break r;if(o=pa(t=_<<2),A[e+8>>2]=o,k=t+o|0,A[e+20>>2]=k,f=(b<<2)+o|0,A[e+12>>2]=f,n=pa(4092),(0|b)==(0|_))if((0|s)>0)f=((b+1|0)/-2<<2)+f|0,A[e+12>>2]=f;else{if((f=(0|a)==(0|i)?1:s>>1)>>>0>=1073741824)break r;t=pa(a=f<<2),A[e+8>>2]=t,k=a+t|0,A[e+20>>2]=k,f=t+(-4&f)|0,A[e+12>>2]=f,oa(o),a=A[r+4>>2],i=A[r+8>>2],o=t}if(A[f>>2]=n,n=f+4|0,A[e+16>>2]=n,t=a,(0|a)!=(0|i)){for(;qd(e+8|0,i=i-4|0),A[r+4>>2]!=(0|i););k=A[e+20>>2],n=A[e+16>>2],f=A[e+12>>2],o=A[e+8>>2],t=i,a=A[r+8>>2]}i=A[r>>2],A[r>>2]=o,A[e+8>>2]=i,A[r+4>>2]=f,A[e+12>>2]=t,A[r+8>>2]=n,A[e+16>>2]=a,f=A[r+12>>2],A[r+12>>2]=k,A[e+20>>2]=f,(0|a)!=(0|t)&&(A[e+16>>2]=(3+(t-a|0)&-4)+a),i&&oa(i)}return void(Q=e+32|0)}wa(),v()}function dd(r,e){var a=0,i=0,f=0,t=0,o=0,n=0,u=0;if((t=((a=A[r+4>>2])-(f=A[r>>2])|0)/144|0)>>>0<e>>>0)if(f=r,(e=e-t|0)>>>0<=((n=A[r+8>>2])-(a=A[r+4>>2])|0)/144>>>0){if(e){if(r=a,t=7&e)for(;Ia(r),r=r+144|0,(0|t)!=(0|(i=i+1|0)););if(a=m(e,144)+a|0,!((e-1&268435455)>>>0<7))for(;Ia(r),Ia(r+144|0),Ia(r+288|0),Ia(r+432|0),Ia(r+576|0),Ia(r+720|0),Ia(r+864|0),Ia(r+1008|0),(0|a)!=(0|(r=r+1152|0)););}A[f+4>>2]=a}else{r:{e:{a:{if((r=(u=((r=a)-(a=A[f>>2])|0)/144|0)+e|0)>>>0<29826162){if(t=(a=(n-a|0)/144|0)<<1,t=a>>>0>=14913080?29826161:r>>>0<t>>>0?t:r){if(t>>>0>=29826162)break a;o=pa(m(t,144))}if(r=a=m(u,144)+o|0,n=7&e)for(;Ia(r),r=r+144|0,(0|n)!=(0|(i=i+1|0)););if(n=m(e,144)+a|0,(e-1&268435455)>>>0>=7)for(;Ia(r),Ia(r+144|0),Ia(r+288|0),Ia(r+432|0),Ia(r+576|0),Ia(r+720|0),Ia(r+864|0),Ia(r+1008|0),(0|n)!=(0|(r=r+1152|0)););if(e=m(t,144)+o|0,(0|(i=A[f+4>>2]))==(0|(t=A[f>>2])))break e;for(;r=i=i-144|0,A[(a=a-144|0)>>2]=A[r>>2],A[a+4>>2]=A[r+4>>2],A[a+8>>2]=A[r+8>>2],A[a+12>>2]=A[r+12>>2],A[r+12>>2]=0,A[r+4>>2]=0,A[r+8>>2]=0,A[a+16>>2]=A[r+16>>2],A[a+20>>2]=A[r+20>>2],A[a+24>>2]=A[r+24>>2],A[r+24>>2]=0,A[r+16>>2]=0,A[r+20>>2]=0,o=k[r+28|0],A[a+40>>2]=0,A[a+32>>2]=0,A[a+36>>2]=0,b[a+28|0]=o,A[a+32>>2]=A[r+32>>2],A[a+36>>2]=A[r+36>>2],A[a+40>>2]=A[r+40>>2],A[r+40>>2]=0,A[r+32>>2]=0,A[r+36>>2]=0,A[a+52>>2]=0,A[a+44>>2]=0,A[a+48>>2]=0,A[a+44>>2]=A[r+44>>2],A[a+48>>2]=A[r+48>>2],A[a+52>>2]=A[r+52>>2],A[r+52>>2]=0,A[r+44>>2]=0,A[r+48>>2]=0,A[(o=a- -64|0)>>2]=0,A[a+56>>2]=0,A[a+60>>2]=0,A[a+56>>2]=A[r+56>>2],A[a+60>>2]=A[r+60>>2],u=o,o=r- -64|0,A[u>>2]=A[o>>2],A[o>>2]=0,A[r+56>>2]=0,A[r+60>>2]=0,A[a+68>>2]=A[r+68>>2],o=A[r+72>>2],A[a+84>>2]=0,A[a+76>>2]=0,A[a+80>>2]=0,A[a+72>>2]=o,A[a+76>>2]=A[r+76>>2],A[a+80>>2]=A[r+80>>2],A[a+84>>2]=A[r+84>>2],A[r+84>>2]=0,A[r+76>>2]=0,A[r+80>>2]=0,A[a+96>>2]=0,A[a+88>>2]=0,A[a+92>>2]=0,A[a+88>>2]=A[r+88>>2],A[a+92>>2]=A[r+92>>2],A[a+96>>2]=A[r+96>>2],A[r+96>>2]=0,A[r+88>>2]=0,A[r+92>>2]=0,o=k[r+100|0],A[a+112>>2]=0,A[a+104>>2]=0,A[a+108>>2]=0,b[a+100|0]=o,A[a+104>>2]=A[r+104>>2],A[a+108>>2]=A[r+108>>2],A[a+112>>2]=A[r+112>>2],A[r+112>>2]=0,A[r+104>>2]=0,A[r+108>>2]=0,A[a+124>>2]=0,A[a+116>>2]=0,A[a+120>>2]=0,A[a+116>>2]=A[r+116>>2],A[a+120>>2]=A[r+120>>2],A[a+124>>2]=A[r+124>>2],A[r+124>>2]=0,A[r+116>>2]=0,A[r+120>>2]=0,o=A[r+128>>2],A[a+140>>2]=0,A[a+132>>2]=0,A[a+136>>2]=0,A[a+128>>2]=o,A[a+132>>2]=A[r+132>>2],A[a+136>>2]=A[r+136>>2],A[a+140>>2]=A[r+140>>2],A[r+140>>2]=0,A[r+132>>2]=0,A[r+136>>2]=0,(0|r)!=(0|t););if(A[f+8>>2]=e,r=A[f+4>>2],A[f+4>>2]=n,i=A[f>>2],A[f>>2]=a,(0|r)==(0|i))break r;for(;(a=A[(e=r-144|0)+132>>2])&&(A[r-8>>2]=a,oa(a)),(a=A[r-28>>2])&&(A[r-24>>2]=a,oa(a)),(a=A[r-40>>2])&&(A[r-36>>2]=a,oa(a)),oc(r-140|0),(0|i)!=(0|(r=e)););break r}sa(),v()}wa(),v()}A[f+8>>2]=e,A[f+4>>2]=n,A[f>>2]=a}i&&oa(i)}else if(e>>>0<t>>>0){if((0|(f=f+m(e,144)|0))!=(0|a))for(;(i=A[(e=a-144|0)+132>>2])&&(A[a-8>>2]=i,oa(i)),(i=A[a-28>>2])&&(A[a-24>>2]=i,oa(i)),(i=A[a-40>>2])&&(A[a-36>>2]=i,oa(i)),oc(a-140|0),(0|f)!=(0|(a=e)););A[r+4>>2]=f}}function Pe(r,e,a,i){var f,t=0,o=0,n=0,u=0,s=0;if(Q=f=Q-80|0,t=A[a+36>>2],A[f+72>>2]=A[a+32>>2],A[f+76>>2]=t,o=A[a+28>>2],A[(t=f- -64|0)>>2]=A[a+24>>2],A[t+4>>2]=o,t=A[a+20>>2],A[f+56>>2]=A[a+16>>2],A[f+60>>2]=t,t=A[a+12>>2],A[f+48>>2]=A[a+8>>2],A[f+52>>2]=t,t=A[a+4>>2],A[f+40>>2]=A[a>>2],A[f+44>>2]=t,nc(r,f+40|0,f+24|0),!A[r>>2])if(b[r+15|0]<0&&oa(A[r+4>>2]),k[f+31|0])e=pa(32),b[e+27|0]=0,a=k[1521]|k[1522]<<8|k[1523]<<16|k[1524]<<24,b[e+23|0]=a,b[e+24|0]=a>>>8,b[e+25|0]=a>>>16,b[e+26|0]=a>>>24,a=k[1518]|k[1519]<<8|k[1520]<<16|k[1521]<<24,i=k[1514]|k[1515]<<8|k[1516]<<16|k[1517]<<24,b[e+16|0]=i,b[e+17|0]=i>>>8,b[e+18|0]=i>>>16,b[e+19|0]=i>>>24,b[e+20|0]=a,b[e+21|0]=a>>>8,b[e+22|0]=a>>>16,b[e+23|0]=a>>>24,a=k[1510]|k[1511]<<8|k[1512]<<16|k[1513]<<24,i=k[1506]|k[1507]<<8|k[1508]<<16|k[1509]<<24,b[e+8|0]=i,b[e+9|0]=i>>>8,b[e+10|0]=i>>>16,b[e+11|0]=i>>>24,b[e+12|0]=a,b[e+13|0]=a>>>8,b[e+14|0]=a>>>16,b[e+15|0]=a>>>24,a=k[1502]|k[1503]<<8|k[1504]<<16|k[1505]<<24,i=k[1498]|k[1499]<<8|k[1500]<<16|k[1501]<<24,b[0|e]=i,b[e+1|0]=i>>>8,b[e+2|0]=i>>>16,b[e+3|0]=i>>>24,b[e+4|0]=a,b[e+5|0]=a>>>8,b[e+6|0]=a>>>16,b[e+7|0]=a>>>24,A[r>>2]=-1,za(r+4|0,e,27),oa(e);else{Q=u=Q-16|0;r:{e:switch(b[f+32|0]){case 0:t=pa(44),A[t>>2]=0,A[t+4>>2]=0,A[t+40>>2]=0,A[t+32>>2]=0,A[t+36>>2]=0,A[t+24>>2]=0,A[t+28>>2]=0,A[t+16>>2]=0,A[t+20>>2]=0,A[t+8>>2]=0,A[t+12>>2]=0,t=Vc(t),A[t>>2]=13496,A[f+8>>2]=0,A[f+12>>2]=0,A[f>>2]=0,A[f+4>>2]=0,A[f+16>>2]=t;break r;case 1:t=pa(44),A[t>>2]=0,A[t+4>>2]=0,A[t+40>>2]=0,A[t+32>>2]=0,A[t+36>>2]=0,A[t+24>>2]=0,A[t+28>>2]=0,A[t+16>>2]=0,A[t+20>>2]=0,A[t+8>>2]=0,A[t+12>>2]=0,t=Vc(t),A[t>>2]=13404,A[f+8>>2]=0,A[f+12>>2]=0,A[f>>2]=0,A[f+4>>2]=0,A[f+16>>2]=t;break r;default:break e}o=pa(32),b[o+28|0]=0,t=k[1550]|k[1551]<<8|k[1552]<<16|k[1553]<<24,b[o+24|0]=t,b[o+25|0]=t>>>8,b[o+26|0]=t>>>16,b[o+27|0]=t>>>24,t=k[1546]|k[1547]<<8|k[1548]<<16|k[1549]<<24,n=k[1542]|k[1543]<<8|k[1544]<<16|k[1545]<<24,b[o+16|0]=n,b[o+17|0]=n>>>8,b[o+18|0]=n>>>16,b[o+19|0]=n>>>24,b[o+20|0]=t,b[o+21|0]=t>>>8,b[o+22|0]=t>>>16,b[o+23|0]=t>>>24,t=k[1538]|k[1539]<<8|k[1540]<<16|k[1541]<<24,n=k[1534]|k[1535]<<8|k[1536]<<16|k[1537]<<24,b[o+8|0]=n,b[o+9|0]=n>>>8,b[o+10|0]=n>>>16,b[o+11|0]=n>>>24,b[o+12|0]=t,b[o+13|0]=t>>>8,b[o+14|0]=t>>>16,b[o+15|0]=t>>>24,t=k[1530]|k[1531]<<8|k[1532]<<16|k[1533]<<24,n=k[1526]|k[1527]<<8|k[1528]<<16|k[1529]<<24,b[0|o]=n,b[o+1|0]=n>>>8,b[o+2|0]=n>>>16,b[o+3|0]=n>>>24,b[o+4|0]=t,b[o+5|0]=t>>>8,b[o+6|0]=t>>>16,b[o+7|0]=t>>>24,A[u>>2]=-1,za(t=4|u,o,28),s=b[u+15|0],A[f>>2]=A[u>>2],n=f+4|0,(0|s)>=0?(s=A[t+4>>2],A[n>>2]=A[t>>2],A[n+4>>2]=s,A[n+8>>2]=A[t+8>>2],A[f+16>>2]=0):(za(n,A[u+4>>2],A[u+8>>2]),t=b[u+15|0],A[f+16>>2]=0,(0|t)>=0||oa(A[u+4>>2])),oa(o)}Q=u+16|0;r:if(t=A[f>>2]){if(A[r>>2]=t,r=r+4|0,b[f+15|0]>=0){a=A[(e=4|f)+4>>2],A[r>>2]=A[e>>2],A[r+4>>2]=a,A[r+8>>2]=A[e+8>>2];break r}za(r,A[f+4>>2],A[f+8>>2])}else t=A[f+16>>2],A[f+16>>2]=0,te(r,t,e,a,i),A[r>>2]||(b[r+15|0]<0&&oa(A[r+4>>2]),A[r>>2]=0,A[r+4>>2]=0,A[r+8>>2]=0,A[r+12>>2]=0),M[A[A[t>>2]+4>>2]](t);r=A[f+16>>2],A[f+16>>2]=0,r&&M[A[A[r>>2]+4>>2]](r),b[f+15|0]>=0||oa(A[f+4>>2])}Q=f+80|0}function Ic(r){var e=0,a=0,i=0,f=0,t=0,o=0,b=0,n=0,k=0,u=0,s=0;if(A[r+56>>2]=A[r+52>>2],A[r+44>>2]=A[r+40>>2],e=A[r+64>>2],(0|(a=A[e+24>>2]))==A[e+28>>2])return 1;r:{e:{a:{for(;;){o=n;i:if(-1!=(0|(n=A[(u<<2)+a>>2]))){if((0|(e=A[r+56>>2]))==A[r+60>>2]){if((a=(b=(f=e-(i=A[r+52>>2])|0)>>2)+1|0)>>>0>=1073741824)break a;if(t=f>>>1|0,t=f>>>0>=2147483644?1073741823:a>>>0<t>>>0?t:a){if(t>>>0>=1073741824)break e;f=pa(t<<2)}else f=0;if(A[(a=f+(b<<2)|0)>>2]=o,b=a+4|0,(0|e)!=(0|i))for(;e=e-4|0,A[(a=a-4|0)>>2]=A[e>>2],(0|e)!=(0|i););A[r+60>>2]=f+(t<<2),A[r+56>>2]=b,A[r+52>>2]=a,i&&oa(i)}else A[e>>2]=o,A[r+56>>2]=e+4;f:{if(A[A[r+12>>2]+(u>>>3&536870908)>>2]>>>u&1&&!(-1==(0|(f=((f=n+1|0)>>>0)%3|0?f:n-2|0))|A[A[r>>2]+(f>>>3&536870908)>>2]>>>f&1)&&-1!=(0|(f=A[A[A[r+64>>2]+12>>2]+(f<<2)>>2]))&&-1!=(0|(e=((e=f+1|0)>>>0)%3|0?e:f-2|0))){for(a=A[r+64>>2],t=A[r>>2];f=e,e=-1,-1==(0|(i=((i=f+1|0)>>>0)%3|0?i:f-2|0))|A[t+(i>>>3&536870908)>>2]>>>i&1||-1!=(0|(i=A[A[a+12>>2]+(i<<2)>>2]))&&(e=((e=i+1|0)>>>0)%3|0?e:i-2|0),(0|e)!=(0|n);)if(-1==(0|e))break f;return 0}f=n}if(A[A[r+28>>2]+(f<<2)>>2]=o,(0|(e=A[r+44>>2]))==A[r+48>>2]){if((a=(b=(n=e-(i=A[r+40>>2])|0)>>2)+1|0)>>>0>=1073741824)break r;if(t=n>>>1|0,t=n>>>0>=2147483644?1073741823:a>>>0<t>>>0?t:a){if(t>>>0>=1073741824)break e;n=pa(t<<2)}else n=0;if(A[(a=n+(b<<2)|0)>>2]=f,b=a+4|0,(0|e)!=(0|i))for(;e=e-4|0,A[(a=a-4|0)>>2]=A[e>>2],(0|e)!=(0|i););A[r+48>>2]=n+(t<<2),A[r+44>>2]=b,A[r+40>>2]=a,i&&oa(i)}else A[e>>2]=f,A[r+44>>2]=e+4;if(n=o+1|0,e=A[r+64>>2],-1!=(0|f)){if((f>>>0)%3|0)a=f-1|0;else if(-1==(0|(a=f+2|0)))break i;if(-1!=(0|(i=A[A[e+12>>2]+(a<<2)>>2]))&&!(-1==(0|(t=i+((i>>>0)%3|0?-1:2)|0))|(0|f)==(0|t)))for(;;){if(e=((e=t+1|0)>>>0)%3|0?e:t-2|0,A[A[r>>2]+(e>>>3&536870908)>>2]>>>e&1){if((0|(e=A[r+56>>2]))==A[r+60>>2]){if((a=(k=(o=e-(i=A[r+52>>2])|0)>>2)+1|0)>>>0>=1073741824)break a;if(b=o>>>1|0,b=o>>>0>=2147483644?1073741823:a>>>0<b>>>0?b:a){if(b>>>0>=1073741824)break e;o=pa(b<<2)}else o=0;if(A[(a=o+(k<<2)|0)>>2]=n,k=a+4|0,(0|e)!=(0|i))for(;e=e-4|0,A[(a=a-4|0)>>2]=A[e>>2],(0|e)!=(0|i););A[r+60>>2]=o+(b<<2),A[r+56>>2]=k,A[r+52>>2]=a,i&&oa(i)}else A[e>>2]=n,A[r+56>>2]=e+4;if(i=n+1|0,(0|(e=A[r+44>>2]))==A[r+48>>2]){if((a=(s=(o=e-(b=A[r+40>>2])|0)>>2)+1|0)>>>0>=1073741824)break r;if(k=o>>>1|0,k=o>>>0>=2147483644?1073741823:a>>>0<k>>>0?k:a){if(k>>>0>=1073741824)break e;o=pa(k<<2)}else o=0;if(A[(a=o+(s<<2)|0)>>2]=t,s=a+4|0,(0|e)!=(0|b))for(;e=e-4|0,A[(a=a-4|0)>>2]=A[e>>2],(0|e)!=(0|b););A[r+48>>2]=o+(k<<2),A[r+44>>2]=s,A[r+40>>2]=a,b&&oa(b)}else A[e>>2]=t,A[r+44>>2]=e+4;o=n,n=i}if(A[A[r+28>>2]+(t<<2)>>2]=o,e=A[r+64>>2],(t>>>0)%3|0)a=t-1|0;else if(-1==(0|(a=t+2|0)))break i;if(-1==(0|(i=A[A[e+12>>2]+(a<<2)>>2])))break i;if(-1==(0|(t=i+((i>>>0)%3|0?-1:2)|0)))break i;if((0|f)==(0|t))break}}}else n=o;if(u=u+1|0,a=A[e+24>>2],!(u>>>0<A[e+28>>2]-a>>2>>>0))break}return 1}sa(),v()}wa(),v()}sa(),v()}function Lb(r,e,a){e|=0,a|=0;var i,f=0,t=0,o=0,n=0,u=0,s=0,_=0,d=0,m=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0;if(Q=i=Q-96|0,t=A[(r|=0)+16>>2],b[i+92|0]=1,A[i+88>>2]=e,A[i+84>>2]=e,A[i+80>>2]=t,-1!=(0|e)&&(s=A[r+20>>2],f=A[s>>2],!((t=A[A[t>>2]+(e<<2)>>2])>>>0>=A[s+4>>2]-f>>2>>>0))){t=A[A[r+8>>2]+(A[f+(t<<2)>>2]<<2)>>2],f=A[r+4>>2],k[f+84|0]||(t=A[A[f+68>>2]+(t<<2)>>2]),A[i+72>>2]=0,A[i+76>>2]=0,A[(s=i- -64|0)>>2]=0,A[s+4>>2]=0,A[i+56>>2]=0,A[i+60>>2]=0,Sa(f,t,b[f+24|0],i+56|0),s=((t=e+1|0)>>>0)%3|0?t:e-2|0,R=((e>>>0)%3|0?-1:2)+e|0;r:{e:{for(;;){if(f=s,t=R,A[r+28>>2]&&(f=((t=e+1|0)>>>0)%3|0?t:e-2|0,t=e-1|0,(e>>>0)%3|0||(t=e+2|0)),-1==(0|f))break r;if(m=A[r+20>>2],e=A[m>>2],(f=A[A[A[r+16>>2]>>2]+(f<<2)>>2])>>>0>=A[m+4>>2]-e>>2>>>0)break r;if(f=A[A[r+8>>2]+(A[(f<<2)+e>>2]<<2)>>2],e=A[r+4>>2],k[e+84|0]||(f=A[A[e+68>>2]+(f<<2)>>2]),A[i+48>>2]=0,A[i+52>>2]=0,A[i+40>>2]=0,A[i+44>>2]=0,A[i+32>>2]=0,A[i+36>>2]=0,Sa(e,f,b[e+24|0],i+32|0),-1==(0|t))break e;if(f=A[r+20>>2],e=A[f>>2],(t=A[A[A[r+16>>2]>>2]+(t<<2)>>2])>>>0>=A[f+4>>2]-e>>2>>>0)break e;if(f=A[A[r+8>>2]+(A[e+(t<<2)>>2]<<2)>>2],e=A[r+4>>2],k[e+84|0]||(f=A[A[e+68>>2]+(f<<2)>>2]),A[i+24>>2]=0,A[i+28>>2]=0,A[i+16>>2]=0,A[i+20>>2]=0,A[i+8>>2]=0,A[i+12>>2]=0,Sa(e,f,b[e+24|0],i+8|0),f=(o=A[i+8>>2])-(e=A[i+56>>2])|0,j=A[i+60>>2],N=A[i+12>>2]-(j+(e>>>0>o>>>0)|0)|0,m=(u=A[i+40>>2])-(t=A[i+64>>2])|0,V=A[i+68>>2],o=Rj(f,N,m,Z=A[i+44>>2]-(V+(t>>>0>u>>>0)|0)|0),G=n-(Y+(o>>>0>h>>>0)|0)|0,h=(n=W=h-o|0)+(e=Rj(o=(u=A[i+16>>2])-t|0,V=A[i+20>>2]-((t>>>0>u>>>0)+V|0)|0,u=(_=A[i+32>>2])-e|0,W=A[i+36>>2]-((e>>>0>_>>>0)+j|0)|0))|0,n=Y+G|0,n=e>>>0>h>>>0?n+1|0:n,e=d,d=f,j=N,f=(_=A[i+48>>2])-(t=A[i+72>>2])|0,N=A[i+76>>2],_=e+(d=Rj(d,j,f,G=A[i+52>>2]-(N+(t>>>0>_>>>0)|0)|0))|0,e=Y+D|0,e=_>>>0<d>>>0?e+1|0:e,d=_-(D=Rj(j=(d=A[i+24>>2])-t|0,t=A[i+28>>2]-((t>>>0>d>>>0)+N|0)|0,u,W))|0,D=e-(Y+(_>>>0<D>>>0)|0)|0,f=U-(e=Rj(o,V,f,G))|0,e=T-(Y+(e>>>0>U>>>0)|0)|0,T=Rj(j,t,m,Z),e=Y+e|0,T=(U=T+f|0)>>>0<T>>>0?e+1|0:e,uc(i+80|0),-1==(0|(e=A[i+88>>2])))break}f=(t=(e=T>>31)^U)-e|0,e=(e^T)-((e>>>0>t>>>0)+e|0)|0,R=-1,t=2147483647,_=~(s=(u=(o=m=D>>31)^d)-o|0),o=2147483647^(u=m=(o^D)-((u>>>0<o>>>0)+o|0)|0),m=n;a:{if(A[r+28>>2]){if(!((0|e)==(0|o)&f>>>0>_>>>0|e>>>0>o>>>0)&&(e=e+u|0,e=(r=f+s|0)>>>0<s>>>0?e+1|0:e,_=n,n=(u=(o=n>>=31)^h)-o|0,!((0|(o=2147483647^(s=(o^_)-((o>>>0>u>>>0)+o|0)|0)))==(0|e)&(f=r)>>>0>~(r=n)>>>0|e>>>0>o>>>0)&&(e=e+s|0,t=e=(R=r+f|0)>>>0<r>>>0?e+1|0:e,!e&R>>>0<536870913)))break a;e=t>>>29|0,r=(536870911&t)<<3|R>>>29}else{if((0|e)==(0|o)&f>>>0>_>>>0|e>>>0>o>>>0)break a;if(e=e+u|0,e=(r=f+s|0)>>>0<s>>>0?e+1|0:e,t=r,n=r=(R=(f=r=(o=n)>>31)^h)-f|0,f=(f^o)-((f>>>0>R>>>0)+f|0)|0,r=r+t|0,!0&(0|(r=(n=(0|(f^=2147483647))==(0|e)&~n>>>0<t>>>0|e>>>0>f>>>0)?-1:r))<=536870912|(0|r)<536870912)break a;e=0,r=r>>>29|0}h=Sj(h,m,r,e),d=Sj(d,D,r,e),U=Sj(U,T,r,e)}return A[a+8>>2]=h,A[a+4>>2]=d,A[a>>2]=U,void(Q=i+96|0)}Ca(),v()}Ca(),v()}Ca(),v()}function Wd(r,e){r|=0;var a=0,i=0,f=0,t=0,o=0,b=0,n=0,k=0;if(!((0|(e|=0))<0||(a=A[r+12>>2])-(i=A[r+8>>2])>>2>>>0<=e>>>0)){if(f=A[(i=i+(e<<2)|0)>>2],n=A[f+60>>2],t=A[f+56>>2],(0|(f=i+4|0))!=(0|a)){for(;b=A[f>>2],A[f>>2]=0,o=A[i>>2],A[i>>2]=b,o&&Ga(o),i=i+4|0,(0|(f=f+4|0))!=(0|a););a=A[r+12>>2]}if((0|a)!=(0|i))for(;f=A[(a=a-4|0)>>2],A[a>>2]=0,f&&Ga(f),(0|a)!=(0|i););A[r+12>>2]=i;r:if(!(!(o=A[r+4>>2])|(0|n)<0)&&(0|(a=A[o+24>>2]))!=(0|(i=A[o+28>>2])))for(;;){if((0|n)==A[A[a>>2]+24>>2]){if((0|(i=a+4|0))!=(0|(n=A[o+28>>2]))){for(;b=A[i>>2],A[i>>2]=0,f=A[a>>2],A[a>>2]=b,f&&(Ra(f+12|0,A[f+16>>2]),Qa(f,A[f+4>>2]),oa(f)),a=a+4|0,(0|n)!=(0|(i=i+4|0)););i=A[o+28>>2]}if((0|a)!=(0|i))for(;f=A[(i=i-4|0)>>2],A[i>>2]=0,f&&(Ra(f+12|0,A[f+16>>2]),Qa(f,A[f+4>>2]),oa(f)),(0|a)!=(0|i););A[o+28>>2]=a;break r}if((0|i)==(0|(a=a+4|0)))break}r:if(!((0|t)>4)){e:if(f=m(t,12)+r|0,(0|(a=A[f+20>>2]))!=(0|(i=A[f+24>>2]))){for(;;){if(A[a>>2]==(0|e))break e;if((0|i)==(0|(a=a+4|0)))break}break r}(0|a)!=(0|i)&&(va(t=a,a=a+4|0,i-a|0),A[f+24>>2]=i-4)}if((0|(a=A[r+24>>2]))!=(0|(i=A[r+20>>2]))){if(n=1&(o=(a=(f=a-i|0)>>2)>>>0<=1?1:a),a=0,f>>>0>=8)for(o&=-2,f=0;(0|(k=A[(b=(t=a<<2)+i|0)>>2]))>(0|e)&&(A[b>>2]=k-1),(0|(b=A[(t=i+(4|t)|0)>>2]))>(0|e)&&(A[t>>2]=b-1),a=a+2|0,(0|o)!=(0|(f=f+2|0)););n&&((0|(i=A[(a=i+(a<<2)|0)>>2]))<=(0|e)||(A[a>>2]=i-1))}if((0|(a=A[r+36>>2]))!=(0|(i=A[r+32>>2]))){if(n=1&(o=(a=(f=a-i|0)>>2)>>>0<=1?1:a),a=0,f>>>0>=8)for(o&=-2,f=0;(0|(k=A[(b=(t=a<<2)+i|0)>>2]))>(0|e)&&(A[b>>2]=k-1),(0|(b=A[(t=i+(4|t)|0)>>2]))>(0|e)&&(A[t>>2]=b-1),a=a+2|0,(0|o)!=(0|(f=f+2|0)););n&&((0|(i=A[(a=i+(a<<2)|0)>>2]))<=(0|e)||(A[a>>2]=i-1))}if((0|(a=A[r+48>>2]))!=(0|(i=A[r+44>>2]))){if(n=1&(o=(a=(f=a-i|0)>>2)>>>0<=1?1:a),a=0,f>>>0>=8)for(o&=-2,f=0;(0|(k=A[(b=(t=a<<2)+i|0)>>2]))>(0|e)&&(A[b>>2]=k-1),(0|(b=A[(t=i+(4|t)|0)>>2]))>(0|e)&&(A[t>>2]=b-1),a=a+2|0,(0|o)!=(0|(f=f+2|0)););n&&((0|(i=A[(a=i+(a<<2)|0)>>2]))<=(0|e)||(A[a>>2]=i-1))}if((0|(a=A[r+60>>2]))!=(0|(i=A[r+56>>2]))){if(n=1&(o=(a=(f=a-i|0)>>2)>>>0<=1?1:a),a=0,f>>>0>=8)for(o&=-2,f=0;(0|(k=A[(b=(t=a<<2)+i|0)>>2]))>(0|e)&&(A[b>>2]=k-1),(0|(b=A[(t=i+(4|t)|0)>>2]))>(0|e)&&(A[t>>2]=b-1),a=a+2|0,(0|o)!=(0|(f=f+2|0)););n&&((0|(i=A[(a=i+(a<<2)|0)>>2]))<=(0|e)||(A[a>>2]=i-1))}if((0|(a=A[r+72>>2]))!=(0|(r=A[r+68>>2]))){if(o=1&(f=(a=(i=a-r|0)>>2)>>>0<=1?1:a),a=0,i>>>0>=8)for(i=-2&f,f=0;(0|(b=A[(t=(n=a<<2)+r|0)>>2]))>(0|e)&&(A[t>>2]=b-1),(0|(t=A[(n=r+(4|n)|0)>>2]))>(0|e)&&(A[n>>2]=t-1),a=a+2|0,(0|i)!=(0|(f=f+2|0)););o&&((0|(t=e))>=(0|(e=A[(r=r+(a<<2)|0)>>2]))||(A[r>>2]=e-1))}}}function oa(r){var e=0,a=0,i=0,f=0,t=0,o=0,b=0,n=0,k=0;r:if(r|=0){t=(i=r-8|0)+(r=-8&(e=A[r-4>>2]))|0;e:if(!(1&e)){if(!(3&e))break r;if((i=i-(e=A[i>>2])|0)>>>0<s[4302])break r;if(r=r+e|0,A[4303]==(0|i)){if(!(3&~(e=A[t+4>>2])))return A[4300]=r,A[t+4>>2]=-2&e,A[i+4>>2]=1|r,void(A[r+i>>2]=r)}else{if(e>>>0<=255){if(f=A[i+8>>2],e=e>>>3|0,(0|(a=A[i+12>>2]))==(0|f)){n=17192,k=A[4298]&Vj(e),A[n>>2]=k;break e}A[f+12>>2]=a,A[a+8>>2]=f;break e}if(b=A[i+24>>2],(0|i)==(0|(e=A[i+12>>2])))if((a=A[(f=i+20|0)>>2])||(a=A[(f=i+16|0)>>2])){for(;o=f,(a=A[(f=(e=a)+20|0)>>2])||(f=e+16|0,a=A[e+16>>2]););A[o>>2]=0}else e=0;else a=A[i+8>>2],A[a+12>>2]=e,A[e+8>>2]=a;if(!b)break e;f=A[i+28>>2];a:{if(A[(a=17496+(f<<2)|0)>>2]==(0|i)){if(A[a>>2]=e,e)break a;n=17196,k=A[4299]&Vj(f),A[n>>2]=k;break e}if(A[b+(A[b+16>>2]==(0|i)?16:20)>>2]=e,!e)break e}if(A[e+24>>2]=b,(a=A[i+16>>2])&&(A[e+16>>2]=a,A[a+24>>2]=e),!(a=A[i+20>>2]))break e;A[e+20>>2]=a,A[a+24>>2]=e}}if(!(i>>>0>=t>>>0)&&1&(e=A[t+4>>2])){e:{if(!(2&e)){if(A[4304]==(0|t)){if(A[4304]=i,r=A[4301]+r|0,A[4301]=r,A[i+4>>2]=1|r,A[4303]!=(0|i))break r;return A[4300]=0,void(A[4303]=0)}if(A[4303]==(0|t))return A[4303]=i,r=A[4300]+r|0,A[4300]=r,A[i+4>>2]=1|r,void(A[r+i>>2]=r);r=(-8&e)+r|0;a:if(e>>>0<=255){if(f=A[t+8>>2],e=e>>>3|0,(0|(a=A[t+12>>2]))==(0|f)){n=17192,k=A[4298]&Vj(e),A[n>>2]=k;break a}A[f+12>>2]=a,A[a+8>>2]=f}else{if(b=A[t+24>>2],(0|t)==(0|(e=A[t+12>>2])))if((a=A[(f=t+20|0)>>2])||(a=A[(f=t+16|0)>>2])){for(;o=f,(a=A[(f=(e=a)+20|0)>>2])||(f=e+16|0,a=A[e+16>>2]););A[o>>2]=0}else e=0;else a=A[t+8>>2],A[a+12>>2]=e,A[e+8>>2]=a;if(b){f=A[t+28>>2];i:{if(A[(a=17496+(f<<2)|0)>>2]==(0|t)){if(A[a>>2]=e,e)break i;n=17196,k=A[4299]&Vj(f),A[n>>2]=k;break a}if(A[b+(A[b+16>>2]==(0|t)?16:20)>>2]=e,!e)break a}A[e+24>>2]=b,(a=A[t+16>>2])&&(A[e+16>>2]=a,A[a+24>>2]=e),(a=A[t+20>>2])&&(A[e+20>>2]=a,A[a+24>>2]=e)}}if(A[i+4>>2]=1|r,A[r+i>>2]=r,A[4303]!=(0|i))break e;return void(A[4300]=r)}A[t+4>>2]=-2&e,A[i+4>>2]=1|r,A[r+i>>2]=r}if(r>>>0<=255)return e=17232+(-8&r)|0,(a=A[4298])&(r=1<<(r>>>3))?r=A[e+8>>2]:(A[4298]=r|a,r=e),A[e+8>>2]=i,A[r+12>>2]=i,A[i+12>>2]=e,void(A[i+8>>2]=r);f=31,r>>>0<=16777215&&(f=62+((r>>>38-(e=j(r>>>8|0))&1)-(e<<1)|0)|0),A[i+28>>2]=f,A[i+16>>2]=0,A[i+20>>2]=0,o=17496+(f<<2)|0;e:{a:{if((a=A[4299])&(e=1<<f)){for(f=r<<(31!=(0|f)?25-(f>>>1|0):0),e=A[o>>2];;){if(a=e,(-8&A[e+4>>2])==(0|r))break a;if(e=f>>>29|0,f<<=1,!(e=A[(o=a+(4&e)|0)+16>>2]))break}A[o+16>>2]=i,A[i+24>>2]=a}else A[4299]=e|a,A[o>>2]=i,A[i+24>>2]=o;A[i+12>>2]=i,A[i+8>>2]=i;break e}r=A[a+8>>2],A[r+12>>2]=i,A[a+8>>2]=i,A[i+24>>2]=0,A[i+12>>2]=a,A[i+8>>2]=r}r=A[4306]-1|0,A[4306]=r||-1}}}function we(r,e){var a=0,i=0,f=0,t=0,o=0,b=0,n=0,k=0,u=0;if(-1==(0|e))return 1;if(o=(e>>>0)/3|0,!(A[A[r+24>>2]+(o>>>3&268435452)>>2]>>>o&1)){if(f=A[r+48>>2],A[r+52>>2]=f,(0|f)==A[r+56>>2]?(i=pa(4),A[i>>2]=e,a=i+4|0,A[r+56>>2]=a,A[r+52>>2]=a,A[r+48>>2]=i,f&&oa(f)):(A[f>>2]=e,A[r+52>>2]=f+4),n=((a=e+1|0)>>>0)%3|0?a:e-2|0,a=A[A[r+4>>2]+28>>2],-1==(0|(u=A[(n<<2)+a>>2])))return 0;if(f=(e-m(o,3)|0?-1:2)+e|0,-1==(0|(k=A[a+(f<<2)>>2])))return 0;if(e=A[r+36>>2],(i=A[(o=e+(u>>>3&536870908)|0)>>2])&(a=1<<u)||(A[o>>2]=a|i,Ua(r+8|0,u,n),e=A[r+36>>2]),(a=A[(i=(k>>>3&536870908)+e|0)>>2])&(e=1<<k)||(A[i>>2]=e|a,Ua(r+8|0,k,f)),(0|(t=A[r+52>>2]))==A[r+48>>2])return 1;for(u=r+8|0;;){r:{e:if(-1!=(0|(e=A[(t=t-4|0)>>2]))&&(a=(e>>>0)/3|0,o=A[r+24>>2]+(a>>>3&268435452)|0,!((i=A[o>>2])&(a=1<<a)))){if(A[o>>2]=a|i,b=A[r+4>>2],-1==(0|(a=A[A[b+28>>2]+(e<<2)>>2])))return 0;for(;;){i=e;a:{if(k=A[r+36>>2]+(a>>>3&536870908)|0,!((n=A[k>>2])&(f=1<<a)))if(-1==(0|(o=A[A[b+40>>2]+(a<<2)>>2]))||-1==(0|(e=((e=o+1|0)>>>0)%3|0?e:o-2|0))|A[A[b>>2]+(e>>>3&536870908)>>2]>>>e&1||-1==(0|(o=A[A[A[b+64>>2]+12>>2]+(e<<2)>>2])))A[k>>2]=f|n,Ua(u,a,i),b=A[r+4>>2];else if(A[k>>2]=f|n,Ua(u,a,i),b=A[r+4>>2],-1!=(0|(((e=o+1|0)>>>0)%3|0?e:o-2))){e=-1,-1!=(0|i)&&(-1==(0|(a=((a=i+1|0)>>>0)%3|0?a:i-2|0))|A[A[b>>2]+(a>>>3&536870908)>>2]>>>a&1||(e=A[A[A[b+64>>2]+12>>2]+(a<<2)>>2])),i=1<<(a=(e>>>0)/3|0),t=A[r+24>>2],k=A[t+((f=a>>>5|0)<<2)>>2];break a}i:{if(-1!=(0|i)){a=-1,-1==(0|(e=((e=i+1|0)>>>0)%3|0?e:i-2|0))|A[A[b>>2]+(e>>>3&536870908)>>2]>>>e&1||(a=A[A[A[b+64>>2]+12>>2]+(e<<2)>>2]);f:{if((i>>>0)%3|0)t=i-1|0;else if(e=-1,-1==(0|(t=i+2|0)))break f;e=-1,A[A[b>>2]+(t>>>3&536870908)>>2]>>>t&1||(e=A[A[A[b+64>>2]+12>>2]+(t<<2)>>2])}if(n=(o=-1==(0|e))?-1:(e>>>0)/3|0,-1!=(0|a)&&(t=A[r+24>>2],!((k=A[t+((f=(i=(a>>>0)/3|0)>>>5|0)<<2)>>2])&(i=1<<i))))break i;if(!(o||(i=1<<n,t=A[r+24>>2],i&(k=A[t+((f=n>>>5|0)<<2)>>2]))))break a}t=A[r+52>>2]-4|0,A[r+52>>2]=t;break r}if(o)e=a;else if(A[(n>>>3&536870908)+t>>2]>>>n&1)e=a;else{if(b=A[r+52>>2],A[b-4>>2]=e,A[r+56>>2]!=(0|b)){A[b>>2]=a,t=b+4|0;break e}i:{if((i=(o=(f=b-(n=A[r+48>>2])|0)>>2)+1|0)>>>0<1073741824){if(e=f>>>1|0,f=f>>>0>=2147483644?1073741823:e>>>0>i>>>0?e:i){if(f>>>0>=1073741824)break i;i=pa(f<<2)}else i=0;if(A[(e=i+(o<<2)|0)>>2]=a,t=e+4|0,(0|b)!=(0|n))for(;b=b-4|0,A[(e=e-4|0)>>2]=A[b>>2],(0|b)!=(0|n););if(A[r+56>>2]=i+(f<<2),A[r+52>>2]=t,A[r+48>>2]=e,!n)break r;oa(n),t=A[r+52>>2];break r}sa(),v()}wa(),v()}}if(A[(f<<2)+t>>2]=i|k,-1==(0|(a=A[A[b+28>>2]+(e<<2)>>2])))break}return 0}A[r+52>>2]=t}if(A[r+48>>2]==(0|t))break}}return 1}function Gb(r,e,a,i){var f,t=0,o=0,n=0,k=0,u=R(0),d=0,m=0,h=R(0);f=A[a>>2];r:{e:if(o=A[e+4>>2]){a:{if((n=Uj(o))>>>0>=2){if(o>>>0<=(t=f)>>>0&&(t=(f>>>0)%(o>>>0)|0),!(a=A[A[e>>2]+(t<<2)>>2]))break e;if(n>>>0<=1)break a;for(;;){if(!(a=A[a>>2]))break e;if((0|(n=A[a+4>>2]))!=(0|f)&&(o>>>0<=n>>>0&&(n=(n>>>0)%(o>>>0)|0),(0|t)!=(0|n)))break e;if(A[a+8>>2]==(0|f))break}e=0;break r}if(t=o-1&f,!(a=A[A[e>>2]+(t<<2)>>2]))break e}for(k=o-1|0;;){if(!(a=A[a>>2]))break e;if((0|(n=A[a+4>>2]))!=(0|f)&(n&k)!=(0|t))break e;if(A[a+8>>2]==(0|f))break}e=0;break r}if(a=pa(16),i=A[A[i>>2]>>2],A[a+12>>2]=0,A[a+8>>2]=i,A[a+4>>2]=f,A[a>>2]=0,h=R(A[e+12>>2]+1>>>0),u=_[e+16>>2],h>R(u*R(o>>>0))||!o){t=2,1!=(0|(i=(i=!!(o-1&o)|o>>>0<3|o<<1)>>>0>(n=(u=R(N(R(h/u))))<R(4294967296)&u>=R(0)?~~u>>>0:0)>>>0?i:n))&&(i&i-1?(t=Kd(i),o=A[e+4>>2]):t=i);e:{if(t>>>0<=o>>>0){if(t>>>0>=o>>>0)break e;if(n=o>>>0<3,i=(u=R(N(R(R(s[e+12>>2])/_[e+16>>2]))))<R(4294967296)&u>=R(0)?~~u>>>0:0,o>>>0<=(t=(i=n||Uj(o)>>>0>1?Kd(i):i>>>0<2?i:1<<32-j(i-1|0))>>>0<t>>>0?t:i)>>>0)break e}o=0,n=0,k=t;a:{i:{f:{t:{if(t){if(k>>>0>=1073741824)break t;if(i=pa(k<<2),t=A[e>>2],A[e>>2]=i,t&&oa(t),A[e+4>>2]=k,i=0,k>>>0>=4)for(t=-4&k;A[(d=i<<2)+A[e>>2]>>2]=0,A[A[e>>2]+(4|d)>>2]=0,A[A[e>>2]+(8|d)>>2]=0,A[A[e>>2]+(12|d)>>2]=0,i=i+4|0,(0|t)!=(0|(n=n+4|0)););if(t=3&k)for(;A[A[e>>2]+(i<<2)>>2]=0,i=i+1|0,(0|t)!=(0|(o=o+1|0)););if(!(t=A[e+8>>2]))break a;if(i=e+8|0,o=A[t+4>>2],(n=Uj(k))>>>0<2)break f;if(o=o>>>0>=k>>>0?(o>>>0)%(k>>>0)|0:o,A[A[e>>2]+(o<<2)>>2]=i,!(i=A[t>>2]))break a;if(n>>>0<=1)break i;for(;k>>>0<=(n=A[i+4>>2])>>>0&&(n=(n>>>0)%(k>>>0)|0),(0|o)!=(0|n)?(d=(m=n<<2)+A[e>>2]|0,A[d>>2]?(A[t>>2]=A[i>>2],A[i>>2]=A[A[m+A[e>>2]>>2]>>2],A[A[m+A[e>>2]>>2]>>2]=i):(A[d>>2]=t,t=i,o=n)):t=i,i=A[t>>2];);break a}i=A[e>>2],A[e>>2]=0,i&&oa(i),A[e+4>>2]=0;break a}wa(),v()}if(o&=k-1,A[A[e>>2]+(o<<2)>>2]=i,!(i=A[t>>2]))break a}for(d=k-1|0;(0|(n=d&A[i+4>>2]))!=(0|o)?(k=(m=n<<2)+A[e>>2]|0,A[k>>2]?(A[t>>2]=A[i>>2],A[i>>2]=A[A[m+A[e>>2]>>2]>>2],A[A[m+A[e>>2]>>2]>>2]=i):(A[k>>2]=t,t=i,o=n)):t=i,i=A[t>>2];);}}t=(i=(o=A[e+4>>2])-1|0)&o?o>>>0>f>>>0?f:(f>>>0)%(o>>>0)|0:i&f}t=A[e>>2]+(t<<2)|0;e:{if(i=A[t>>2])A[a>>2]=A[i>>2];else{if(i=e+8|0,A[a>>2]=A[i>>2],A[e+8>>2]=a,A[t>>2]=i,!(i=A[a>>2]))break e;i=A[i+4>>2],(t=o-1|0)&o?i>>>0<o>>>0||(i=(i>>>0)%(o>>>0)|0):i&=t,i=A[e>>2]+(i<<2)|0}A[i>>2]=a}A[e+12>>2]=A[e+12>>2]+1,e=1}b[r+4|0]=e,A[r>>2]=a}function Oe(r,e,a,i){var f,t=0,o=0,n=0,u=0,s=0;if(Q=f=Q-80|0,t=A[a+36>>2],A[f+72>>2]=A[a+32>>2],A[f+76>>2]=t,o=A[a+28>>2],A[(t=f- -64|0)>>2]=A[a+24>>2],A[t+4>>2]=o,t=A[a+20>>2],A[f+56>>2]=A[a+16>>2],A[f+60>>2]=t,t=A[a+12>>2],A[f+48>>2]=A[a+8>>2],A[f+52>>2]=t,t=A[a+4>>2],A[f+40>>2]=A[a>>2],A[f+44>>2]=t,nc(r,f+40|0,f+24|0),!A[r>>2])if(b[r+15|0]<0&&oa(A[r+4>>2]),1==k[f+31|0]){Q=u=Q-16|0;r:{e:switch(k[f+32|0]){case 0:t=Ke(pa(48)),A[t>>2]=13112,A[f+8>>2]=0,A[f+12>>2]=0,A[f>>2]=0,A[f+4>>2]=0,A[f+16>>2]=t;break r;case 1:t=Ke(pa(52)),A[t+48>>2]=0,A[t>>2]=11276,A[f+8>>2]=0,A[f+12>>2]=0,A[f>>2]=0,A[f+4>>2]=0,A[f+16>>2]=t;break r;default:break e}o=pa(32),b[o+28|0]=0,t=k[1550]|k[1551]<<8|k[1552]<<16|k[1553]<<24,b[o+24|0]=t,b[o+25|0]=t>>>8,b[o+26|0]=t>>>16,b[o+27|0]=t>>>24,t=k[1546]|k[1547]<<8|k[1548]<<16|k[1549]<<24,n=k[1542]|k[1543]<<8|k[1544]<<16|k[1545]<<24,b[o+16|0]=n,b[o+17|0]=n>>>8,b[o+18|0]=n>>>16,b[o+19|0]=n>>>24,b[o+20|0]=t,b[o+21|0]=t>>>8,b[o+22|0]=t>>>16,b[o+23|0]=t>>>24,t=k[1538]|k[1539]<<8|k[1540]<<16|k[1541]<<24,n=k[1534]|k[1535]<<8|k[1536]<<16|k[1537]<<24,b[o+8|0]=n,b[o+9|0]=n>>>8,b[o+10|0]=n>>>16,b[o+11|0]=n>>>24,b[o+12|0]=t,b[o+13|0]=t>>>8,b[o+14|0]=t>>>16,b[o+15|0]=t>>>24,t=k[1530]|k[1531]<<8|k[1532]<<16|k[1533]<<24,n=k[1526]|k[1527]<<8|k[1528]<<16|k[1529]<<24,b[0|o]=n,b[o+1|0]=n>>>8,b[o+2|0]=n>>>16,b[o+3|0]=n>>>24,b[o+4|0]=t,b[o+5|0]=t>>>8,b[o+6|0]=t>>>16,b[o+7|0]=t>>>24,A[u>>2]=-1,za(t=4|u,o,28),s=b[u+15|0],A[f>>2]=A[u>>2],n=f+4|0,(0|s)>=0?(s=A[t+4>>2],A[n>>2]=A[t>>2],A[n+4>>2]=s,A[n+8>>2]=A[t+8>>2],A[f+16>>2]=0):(za(n,A[u+4>>2],A[u+8>>2]),t=b[u+15|0],A[f+16>>2]=0,(0|t)>=0||oa(A[u+4>>2])),oa(o)}Q=u+16|0;r:if(t=A[f>>2]){if(A[r>>2]=t,r=r+4|0,b[f+15|0]>=0){a=A[(e=4|f)+4>>2],A[r>>2]=A[e>>2],A[r+4>>2]=a,A[r+8>>2]=A[e+8>>2];break r}za(r,A[f+4>>2],A[f+8>>2])}else t=A[f+16>>2],A[f+16>>2]=0,A[t+44>>2]=i,te(r,t,e,a,i),A[r>>2]||(b[r+15|0]<0&&oa(A[r+4>>2]),A[r>>2]=0,A[r+4>>2]=0,A[r+8>>2]=0,A[r+12>>2]=0),M[A[A[t>>2]+4>>2]](t);r=A[f+16>>2],A[f+16>>2]=0,r&&M[A[A[r>>2]+4>>2]](r),b[f+15|0]>=0||oa(A[f+4>>2])}else e=pa(32),b[e+20|0]=0,a=k[1448]|k[1449]<<8|k[1450]<<16|k[1451]<<24,b[e+16|0]=a,b[e+17|0]=a>>>8,b[e+18|0]=a>>>16,b[e+19|0]=a>>>24,a=k[1444]|k[1445]<<8|k[1446]<<16|k[1447]<<24,i=k[1440]|k[1441]<<8|k[1442]<<16|k[1443]<<24,b[e+8|0]=i,b[e+9|0]=i>>>8,b[e+10|0]=i>>>16,b[e+11|0]=i>>>24,b[e+12|0]=a,b[e+13|0]=a>>>8,b[e+14|0]=a>>>16,b[e+15|0]=a>>>24,a=k[1436]|k[1437]<<8|k[1438]<<16|k[1439]<<24,i=k[1432]|k[1433]<<8|k[1434]<<16|k[1435]<<24,b[0|e]=i,b[e+1|0]=i>>>8,b[e+2|0]=i>>>16,b[e+3|0]=i>>>24,b[e+4|0]=a,b[e+5|0]=a>>>8,b[e+6|0]=a>>>16,b[e+7|0]=a>>>24,A[r>>2]=-1,za(r+4|0,e,20),oa(e);Q=f+80|0}function Gc(r,e,a){var i,f=0,t=0,o=0,b=0,n=0,k=0,u=0,s=0,_=0,d=0,R=0,h=0;i=m(e,12)+r|0,A[i+12>>2]=A[i+8>>2],_=-1==(0|a)?-1:(a>>>0)/3|0,f=1,u=a;r:{e:{a:{for(;;){i:{if(s=f,!f){if(-1==(0|u))break i;if(-1==(0|de(r,((u>>>0)%3|0?-1:2)+u|0)))break r;if(-1==(0|(f=((a=u+1|0)>>>0)%3|0?a:u-2|0)))break r;if(-1==(0|(a=((a=f+1|0)>>>0)%3|0?a:f-2|0)))break r;if(-1==(0|(f=A[A[A[r+4>>2]+12>>2]+(a<<2)>>2])))break r;if(-1==(0|(a=((a=f+1|0)>>>0)%3|0?a:f-2|0)))break r;_=(a>>>0)/3|0}if(f=A[r+56>>2]+(_>>>3&536870908)|0,!((n=A[f>>2])&(t=1<<_))){for(o=0;;){if(A[f>>2]=t|n,(0|(f=A[i+12>>2]))==A[i+16>>2]){if((k=(t=(n=f-(d=A[i+8>>2])|0)>>2)+1|0)>>>0>=1073741824)break a;if(b=n>>>1|0,k=n>>>0>=2147483644?1073741823:k>>>0<b>>>0?b:k){if(k>>>0>=1073741824)break e;b=pa(k<<2)}else b=0;if(A[(n=b+(t<<2)|0)>>2]=_,t=n+4|0,(0|f)!=(0|d))for(;f=f-4|0,A[(n=n-4|0)>>2]=A[f>>2],(0|f)!=(0|d););A[i+8>>2]=n,A[i+12>>2]=t,A[i+16>>2]=b+(k<<2),d&&oa(d)}else A[f>>2]=_,A[i+12>>2]=f+4;b=o+1|0;f:{t:{if(o)if(1&b){if(-1==(0|a)){a=-1;break f}a=((f=a+1|0)>>>0)%3|0?f:a-2|0}else{if(u=s?u:a,-1==(0|a)){a=-1;break f}if((a>>>0)%3|0){f=a-1|0;break t}a=a+2|0}if(f=a,a=-1,-1==(0|f))break f}if(a=A[A[A[r+4>>2]+12>>2]+(f<<2)>>2],n=-1,o=-1,(0|(t=((t=f+1|0)>>>0)%3|0?t:f-2|0))>=0&&(o=(t>>>0)/3|0,o=A[(A[A[r>>2]+96>>2]+m(o,12)|0)+(t-m(o,3)<<2)>>2]),-1!=(0|a)&&((0|(k=((a>>>0)%3|0?-1:2)+a|0))<0||(t=(k>>>0)/3|0,n=A[(A[A[r>>2]+96>>2]+m(t,12)|0)+(k-m(t,3)<<2)>>2])),(0|o)==(0|n)){t:{o:{if((0|(o=((f>>>0)%3|0?-1:2)+f|0))>=0){if(f=(o>>>0)/3|0,-1!=(0|a))break o;a=-1;break f}if(f=-1,-1!=(0|a))break t;a=-1;break f}f=A[(A[A[r>>2]+96>>2]+m(f,12)|0)+(o-m(f,3)<<2)>>2]}if((0|(t=((o=a+1|0)>>>0)%3|0?o:a-2|0))>=0?(o=(t>>>0)/3|0,o=A[(A[A[r>>2]+96>>2]+m(o,12)|0)+(t-m(o,3)<<2)>>2]):o=-1,(0|o)==(0|f)){if(o=b,_=(a>>>0)/3|0,f=A[r+56>>2]+(_>>>3&268435452)|0,!((n=A[f>>2])&(t=1<<_)))continue}else a=-1}else a=-1}break}if(!(s|!(1&b))){s=A[i+12>>2]-4|0,b=A[s>>2],f=A[r+56>>2]+(b>>>3&536870908)|0,a=A[f>>2],R=f,h=Vj(b)&a,A[R>>2]=h,A[i+12>>2]=s;break r}}if(f=0,s)continue;break r}break}u=-1,de(r,-1);break r}sa(),v()}wa(),v()}if(A[44+((e<<2)+r|0)>>2]=u,(0|(e=A[i+12>>2]))!=(0|(k=A[i+8>>2]))){if(u=1&(e=(e=(a=e-k|0)>>2)>>>0<=1?1:e),t=A[r+56>>2],f=0,a>>>0>=8)for(o=-2&e,a=0;b=A[(s=f<<2)+k>>2],r=A[(e=t+(b>>>3&536870908)|0)>>2],R=e,h=Vj(b)&r,A[R>>2]=h,b=A[k+(4|s)>>2],r=A[(e=t+(b>>>3&536870908)|0)>>2],R=e,h=Vj(b)&r,A[R>>2]=h,f=f+2|0,(0|o)!=(0|(a=a+2|0)););u&&(a=A[k+(f<<2)>>2],r=A[(e=t+(a>>>3&536870908)|0)>>2],R=e,h=Vj(a)&r,A[R>>2]=h)}}function xe(r,e){var a=0,i=0,f=0,t=0,o=0,b=0,n=0,k=0;if(-1==(0|e))return 1;if(o=(e>>>0)/3|0,!(A[A[r+24>>2]+(o>>>3&268435452)>>2]>>>o&1)){if(t=A[r+48>>2],A[r+52>>2]=t,(0|t)==A[r+56>>2]?(i=pa(4),A[i>>2]=e,a=i+4|0,A[r+56>>2]=a,A[r+52>>2]=a,A[r+48>>2]=i,t&&oa(t)):(A[t>>2]=e,A[r+52>>2]=t+4),f=-1,i=A[r+4>>2],-1!=(0|(n=((a=e+1|0)>>>0)%3|0?a:e-2|0))&&(f=A[A[i>>2]+(n<<2)>>2]),b=e-m(o,3)|0)a=e-1|0;else if(-1==(0|(a=e+2|0)))return 0;if(-1==(0|f))return 0;if(-1==(0|(k=A[A[i>>2]+(a<<2)>>2])))return 0;if(a=A[r+36>>2],(o=A[(t=a+(f>>>3&536870908)|0)>>2])&(i=1<<f)||(A[t>>2]=i|o,Ua(r+8|0,f,n),a=A[r+36>>2]),(i=A[(o=(k>>>3&536870908)+a|0)>>2])&(a=1<<k)||(A[o>>2]=a|i,Ua(r+8|0,k,(b?-1:2)+e|0)),(0|(a=A[r+52>>2]))==A[r+48>>2])return 1;for(k=r+8|0;;){r:{e:if(-1!=(0|(e=A[(a=a-4|0)>>2]))&&(i=(e>>>0)/3|0,t=A[r+24>>2]+(i>>>3&268435452)|0,!((o=A[t>>2])&(i=1<<i)))){for(A[t>>2]=i|o;;){if(n=A[r+4>>2],-1==(0|(f=A[A[n>>2]+(e<<2)>>2])))return 0;a:{if(b=A[r+36>>2]+(f>>>3&536870908)|0,!((t=A[b>>2])&(o=1<<f)))if(-1!=(0|(i=A[A[n+24>>2]+(f<<2)>>2]))&&-1!=(0|(a=((a=i+1|0)>>>0)%3|0?a:i-2|0))&&-1!=(0|(i=A[A[n+12>>2]+(a<<2)>>2]))){if(A[b>>2]=t|o,Ua(k,f,e),-1!=(0|(((a=i+1|0)>>>0)%3|0?a:i-2))){a=e-2|0,i=e+1|0,e=-1,-1!=(0|(a=(i>>>0)%3|0?i:a))&&(e=A[A[A[r+4>>2]+12>>2]+(a<<2)>>2]),i=1<<(a=(e>>>0)/3|0),f=A[r+24>>2],n=A[f+((t=a>>>5|0)<<2)>>2];break a}}else A[b>>2]=t|o,Ua(k,f,e);a=-1,o=A[r+4>>2],-1!=(0|(i=((i=e+1|0)>>>0)%3|0?i:e-2|0))&&(a=A[A[o+12>>2]+(i<<2)>>2]);i:{if((e>>>0)%3|0)f=e-1|0;else if(f=e+2|0,e=-1,-1==(0|f))break i;e=A[A[o+12>>2]+(f<<2)>>2]}if(b=(o=-1==(0|e))?-1:(e>>>0)/3|0,-1==(0|a)||(f=A[r+24>>2],(n=A[f+((t=(i=(a>>>0)/3|0)>>>5|0)<<2)>>2])&(i=1<<i))){if(!(o||(i=1<<b,f=A[r+24>>2],i&(n=A[f+((t=b>>>5|0)<<2)>>2]))))break a;a=A[r+52>>2]-4|0,A[r+52>>2]=a;break r}if(o)e=a;else if(A[(b>>>3&536870908)+f>>2]>>>b&1)e=a;else{if(f=A[r+52>>2],A[f-4>>2]=e,A[r+56>>2]!=(0|f)){A[f>>2]=a,a=f+4|0;break e}i:{if((i=(o=(t=f-(b=A[r+48>>2])|0)>>2)+1|0)>>>0<1073741824){if(e=t>>>1|0,t=t>>>0>=2147483644?1073741823:e>>>0>i>>>0?e:i){if(t>>>0>=1073741824)break i;i=pa(t<<2)}else i=0;if(A[(e=i+(o<<2)|0)>>2]=a,a=e+4|0,(0|f)!=(0|b))for(;f=f-4|0,A[(e=e-4|0)>>2]=A[f>>2],(0|f)!=(0|b););if(A[r+56>>2]=i+(t<<2),A[r+52>>2]=a,A[r+48>>2]=e,!b)break r;oa(b),a=A[r+52>>2];break r}sa(),v()}wa(),v()}}if(A[(t<<2)+f>>2]=i|n,-1==(0|e))break}return 0}A[r+52>>2]=a}if(A[r+48>>2]==(0|a))break}}return 1}function ke(r,e){e|=0;var a,i=0,f=0,t=0,o=0,b=0,n=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0;Q=a=Q-80|0;r:{if(k[A[(r|=0)+28>>2]+36|0]<=1){if(f=A[e+20>>2],f=(i=(o=A[e+16>>2])+4|0)>>>0<4?f+1|0:f,b=A[e+12>>2],s[e+8>>2]<i>>>0&(0|b)<=(0|f)|(0|f)>(0|b))break r;o=o+A[e>>2]|0,_=k[0|o]|k[o+1|0]<<8|k[o+2|0]<<16|k[o+3|0]<<24,A[e+16>>2]=i,A[e+20>>2]=f}else{if(!Pc(1,a+76|0,e))break r;_=A[a+76>>2]}if(_&&!((f=Rj((f=A[e+8>>2])-(i=A[e+16>>2])|0,A[e+12>>2]-(A[e+20>>2]+(i>>>0>f>>>0)|0)|0,5,0))>>>0<_>>>0&(0|(i=Y))<=0|(0|i)<0)){for(i=A[r+4>>2],(f=A[r+8>>2]-i>>2)>>>0<_>>>0?ya(r+4|0,_-f|0):f>>>0<=_>>>0||(A[r+8>>2]=i+(_<<2)),U=r+16|0,R=A[r+32>>2];;){if((0|(i=n=A[e+12>>2]))<=(0|(f=A[e+20>>2]))&(t=A[e+8>>2])>>>0<=(o=A[e+16>>2])>>>0|(0|i)<(0|f)){t=0;break r}if(j=A[e>>2],T=k[j+o|0],i=f,i=(b=o+1|0)?i:i+1|0,A[e+16>>2]=b,A[e+20>>2]=i,t>>>0<=b>>>0&(0|i)>=(0|n)|(0|i)>(0|n)){t=0;break r}if(b=k[b+j|0],i=f,i=(d=o+2|0)>>>0<2?i+1|0:i,A[e+16>>2]=d,A[e+20>>2]=i,t>>>0<=d>>>0&(0|i)>=(0|n)|(0|i)>(0|n)){t=0;break r}if(d=k[d+j|0],i=f,i=(h=o+3|0)>>>0<3?i+1|0:i,A[e+16>>2]=h,A[e+20>>2]=i,t>>>0<=h>>>0&(0|i)>=(0|n)|(0|i)>(0|n)){t=0;break r}if(t=k[h+j|0],i=f,i=(f=o+4|0)>>>0<4?i+1|0:i,A[e+16>>2]=f,A[e+20>>2]=i,T>>>0>4){t=0;break r}if((b-12&255)>>>0<245){t=0;break r}if(!d){t=0;break r}h=Eb(a+8|0),n=!!(0|t),i=(f=b-1|0)>>>0<=10?A[13584+(f<<2)>>2]:-1,lc(h,T,d,b,n,f=m(i,d),f>>31);e:{if((65535&((f=u[A[r+28>>2]+36>>1])<<8|f>>>8))>>>0<=258){if(i=A[e+20>>2],i=(f=(o=A[e+16>>2])+2|0)>>>0<2?i+1|0:i,t=A[e+12>>2],s[e+8>>2]<f>>>0&(0|t)<=(0|i)|(0|i)>(0|t))break e;o=o+A[e>>2]|0,t=k[0|o]|k[o+1|0]<<8,A[e+16>>2]=f,A[e+20>>2]=i}else{if(!Pc(1,a+4|0,e))break e;t=A[a+4>>2]}if(A[a+68>>2]=t,f=jc(pa(96),h),M[A[A[R>>2]+8>>2]](R,A[R+12>>2]-A[R+8>>2]>>2,f),f=(A[R+12>>2]-A[R+8>>2]>>2)-1|0,A[A[(o=f<<2)+A[R+8>>2]>>2]+60>>2]=t,A[A[r+4>>2]+(D<<2)>>2]=f,t=A[r+16>>2],(0|(i=A[r+20>>2]-t>>2))>(0|f)||(A[a>>2]=-1,(f=f+1|0)>>>0>i>>>0?(Pa(U,f-i|0,a),t=A[U>>2]):i>>>0<=f>>>0||(A[r+20>>2]=(f<<2)+t)),A[t+o>>2]=D,t=1,(0|(D=D+1|0))!=(0|_))continue;break r}break}t=0}}return Q=a+80|0,0|t}function nd(r,e,a){e|=0,a|=0;var i,f=0,t=0,o=0,n=0,u=0,s=0,_=0,d=0,R=0,h=0,j=0;r:if(!((0|(i=0|M[A[A[(r|=0)>>2]+44>>2]](r)))<=0)&&(s=A[e+4>>2]-A[e>>2]>>2,Q=t=Q+-64|0,o=Eb(t),f=m(A[3400],i),lc(o,A[A[r+8>>2]+56>>2],255&i,5,0,f,f>>31),o=jc(pa(96),o),b[o+84|0]=1,A[o+72>>2]=A[o+68>>2],mb(o,s),A[o+60>>2]=A[A[r+8>>2]+60>>2],f=A[r+16>>2],A[r+16>>2]=o,f&&Ga(f),Q=t- -64|0,u=A[r+16>>2],A[u+80>>2]&&(_=A[A[u>>2]>>2])&&!((0|(t=h=A[a+12>>2]))<=(0|(f=A[a+20>>2]))&(n=A[a+8>>2])>>>0<=(d=A[a+16>>2])>>>0|(0|f)>(0|t)))){R=m(s,i),s=_+A[u+48>>2]|0,u=A[a>>2],_=k[u+d|0],o=(t=d+1|0)?f:f+1|0,A[a+16>>2]=t,A[a+20>>2]=o;e:{a:{if(_){if(kd(R,i,a,s))break a;break r}if((0|o)>=(0|h)&t>>>0>=n>>>0|(0|o)>(0|h))break r;if(n=k[t+u|0],f=(o=d+2|0)>>>0<2?f+1|0:f,A[a+16>>2]=o,A[a+20>>2]=f,f=A[A[r+16>>2]+64>>2],f=A[f+4>>2]-A[f>>2]|0,(0|n)!=A[3400]){if(f>>>0<m(n,R)>>>0)break r;if(t=(f=A[a+8>>2])-(o=A[a+16>>2])|0,h=f>>>0<o>>>0,f=A[a+20>>2],d=A[a+12>>2]-(h+f|0)|0,(h=Rj(n,0,R,0)>>>0>t>>>0)&(0|(t=Y))>=(0|d)|(0|t)>(0|d))break r;if(t=1,!R)break e;for(u=0;;){if((t=o+n|0)>>>0>(d=A[a+8>>2])>>>0&(0|(f=t>>>0<n>>>0?f+1|0:f))>=(0|(_=A[a+12>>2]))|(0|f)>(0|_))return 0;if(qa(s+(u<<2)|0,A[a>>2]+o|0,n),f=A[a+20>>2],f=(o=n+A[a+16>>2]|0)>>>0<n>>>0?f+1|0:f,A[a+16>>2]=o,A[a+20>>2]=f,(0|R)==(0|(u=u+1|0)))break}}else{if((t=R<<2)>>>0>f>>>0)break r;if(n=A[a+8>>2],d=A[a+12>>2],_=A[a+20>>2],(o=t+(f=A[a+16>>2])|0)>>>0>n>>>0&(0|(_=o>>>0<t>>>0?_+1|0:_))>=(0|d)|(0|_)>(0|d))break r;qa(s,f+A[a>>2]|0,t),o=A[a+20>>2],o=(f=t+A[a+16>>2]|0)>>>0<t>>>0?o+1|0:o,A[a+16>>2]=f,A[a+20>>2]=o}}if(t=1,R&&!((f=A[r+20>>2])&&(t=0,0|M[A[A[f>>2]+32>>2]](f)))){if(n=0,u=0,!((0|R)<=0)){if(1!=(0|R))for(o=-2&R;f=A[(t=n<<2)+s>>2],A[t+s>>2]=0-(1&f)^f>>>1,t=A[(f=4|t)+s>>2],A[f+s>>2]=0-(1&t)^t>>>1,n=n+2|0,(0|o)!=(0|(u=u+2|0)););1&R&&(o=A[(f=n<<2)+s>>2],A[f+s>>2]=0-(1&o)^o>>>1)}t=0}}if(f=t,o=A[r+20>>2]){if(!(0|M[A[A[o>>2]+40>>2]](o,a)))break r;if(!(f||(r=A[r+20>>2],0|M[A[A[r>>2]+44>>2]](r,s,s,R,i,A[e>>2]))))break r}j=1}return 0|j}function pb(r,e){var a,i=0,f=0,t=0,o=0,b=0,n=0,k=0,u=0,s=0,_=0;Q=a=Q-32|0;r:{if(!(A[r+8>>2]<<5>>>0>=e>>>0)){if((0|e)<0)break r;i=pa((e=1+(e-1>>>5|0)|0)<<2),A[a+24>>2]=e,A[a+20>>2]=0,A[a+16>>2]=i,e=A[r>>2],A[a+12>>2]=0,A[a+8>>2]=e,i=A[r+4>>2],A[a+4>>2]=31&i,A[a>>2]=e+(i>>>3&536870908),Q=t=Q-32|0,i=(e=((n=A[a+4>>2])-(b=A[a+12>>2])|0)+((k=A[a>>2])-(f=A[a+8>>2])<<3)|0)+(o=A[a+20>>2])|0,A[a+20>>2]=i,(i-1^o-1)>>>0<32&&o||(A[A[a+16>>2]+((i>>>0>=33?i-1>>>5:0)<<2)>>2]=0),i=A[a+16>>2]+(o>>>3&536870908)|0;e:if((0|(o&=31))!=(0|b)){if(A[t+28>>2]=b,A[t+24>>2]=f,A[t+20>>2]=n,A[t+16>>2]=k,A[t+12>>2]=o,A[t+8>>2]=i,e=A[t+28>>2],i=A[t+24>>2],(0|(b=(A[t+20>>2]-e|0)+(A[t+16>>2]-i<<3)|0))<=0)e=A[t+12>>2],f=A[t+8>>2];else{if(e?(n=(o=(0|b)<(0|(u=32-e|0))?b:u)>>>0>(k=32-(f=A[t+12>>2])|0)>>>0?k:o,s=A[t+8>>2],_=A[s>>2]&~(-1<<f&-1>>>k-n),k=A[i>>2]&-1<<e&-1>>>u-o,A[s>>2]=_|(e>>>0<f>>>0?k<<f-e:k>>>e-f),e=31&(i=f+n|0),A[t+12>>2]=e,f=s+(i>>>3&536870908)|0,A[t+8>>2]=f,(0|(i=o-n|0))>0&&(A[f>>2]=A[f>>2]&~(-1>>>32-i)|k>>>n+A[t+28>>2],A[t+12>>2]=i,e=i),b=b-o|0,i=A[t+24>>2]+4|0,A[t+24>>2]=i):e=A[t+12>>2],n=-1<<e,o=32-e|0,(0|b)>=32)for(k=~n;f=A[t+8>>2],i=A[i>>2],A[f>>2]=k&A[f>>2]|i<<e,A[t+8>>2]=f+4,A[f+4>>2]=n&A[f+4>>2]|i>>>o,i=A[t+24>>2]+4|0,A[t+24>>2]=i,f=b>>>0>63,b=b-32|0,f;);f=A[t+8>>2],(0|b)<=0||(k=o,o=(0|b)>(0|o)?o:b,k=A[f>>2]&~(n&-1>>>k-o),n=A[i>>2]&-1>>>32-b,A[f>>2]=k|n<<e,i=31&(e=e+o|0),A[t+12>>2]=i,f=(e>>>3&536870908)+f|0,A[t+8>>2]=f,(0|(e=b-o|0))<=0?e=i:(A[f>>2]=A[f>>2]&~(-1>>>32-e)|n>>>o,A[t+12>>2]=e))}A[t+4>>2]=e,A[t>>2]=f}else{if((0|e)<=0)break e;if(b&&(n=-1<<b&-1>>>(n=32-b|0)-(o=(0|e)<(0|n)?e:n),A[i>>2]=A[i>>2]&~n|n&A[f>>2],f=f+4|0,i=(b+o>>>3&536870908)+i|0,e=e-o|0),b=(0|e)/32|0,e+31>>>0>=63&&va(i,f,b<<2),(0|(e=e-(b<<5)|0))<=0)break e;e=-1>>>32-e|0,A[(b=(o=i)+(i=b<<2)|0)>>2]=A[b>>2]&~e|e&A[i+f>>2]}Q=t+32|0,e=A[r>>2],A[r>>2]=A[a+16>>2],A[a+16>>2]=e,i=A[r+4>>2],A[r+4>>2]=A[a+20>>2],A[a+20>>2]=i,i=A[r+8>>2],A[r+8>>2]=A[a+24>>2],A[a+24>>2]=i,e&&oa(e)}return void(Q=a+32|0)}sa(),v()}function Ne(r,e){var a=0,i=0,f=0,t=0,o=0,b=0,n=0,s=0,_=0,d=0,m=0,R=0,h=0;r:if(a=u[e+38>>1]){if(a>>>0<=511){if(o=A[e+8>>2],f=A[e+12>>2],i=A[e+20>>2],o>>>0<(n=(a=A[e+16>>2])+4|0)>>>0&(0|(i=n>>>0<4?i+1|0:i))>=(0|f)|(0|i)>(0|f))break r;a=a+A[e>>2]|0,t=k[0|a]|k[a+1|0]<<8|k[a+2|0]<<16|k[a+3|0]<<24,A[r+12>>2]=t,i=A[e+20>>2],i=(a=A[e+16>>2]+4|0)>>>0<4?i+1|0:i,A[e+16>>2]=a,A[e+20>>2]=i}else{if(!hb(1,r+12|0,e))break r;a=A[e+16>>2],i=A[e+20>>2],t=A[r+12>>2]}if(!((n=(f=A[e+8>>2])-a|0)>>>0<t>>>6>>>0&(0|(a=A[e+12>>2]-(i+(a>>>0>f>>>0)|0)|0))<=0|(0|a)<0)){if(i=A[r>>2],(a=A[r+4>>2]-i>>2)>>>0<t>>>0?(ya(r,t-a|0),t=A[r+12>>2]):a>>>0<=t>>>0||(A[r+4>>2]=i+(t<<2)),!t)return 1;for(a=A[e+16>>2],i=A[e+20>>2],d=A[r>>2],n=A[e+8>>2],s=A[e+12>>2],o=0;;){if((0|i)>=(0|s)&a>>>0>=n>>>0|(0|i)>(0|s))return 0;m=A[e>>2],_=k[m+a|0],i=(a=a+1|0)?i:i+1|0,A[e+16>>2]=a,A[e+20>>2]=i,f=_>>>2|0,b=0;e:{a:{i:{f:switch(0|(R=3&_)){case 0:break a;case 3:break f;default:break i}if((f=f+o|0)>>>0>=t>>>0)return 0;ra(d+(o<<2)|0,0,4+(252&_)|0),o=f;break e}for(;;){if((0|a)==(0|n)&(0|i)==(0|s))break r;if(t=k[a+m|0],i=(a=a+1|0)?i:i+1|0,A[e+16>>2]=a,A[e+20>>2]=i,f|=t<<(b<<3|6),(0|R)==(0|(b=b+1|0)))break}}A[d+(o<<2)>>2]=f}if(!((t=A[r+12>>2])>>>0>(o=o+1|0)>>>0))break}if(e=r+16|0,n=A[r>>2],i=A[r+16>>2],(a=A[r+20>>2]-i|0)>>>0<=16383?ya(e,4096-(a>>>2|0)|0):16384!=(0|a)&&(A[r+20>>2]=i+16384),o=A[(a=r+28|0)>>2],(i=A[r+32>>2]-o>>3)>>>0<t>>>0)ob(a,t-i|0),o=A[a>>2];else if(i>>>0>t>>>0&&(A[r+32>>2]=(t<<3)+o),!t)break r;for(i=A[e>>2],e=0,r=0;;){if(b=A[(a=n+(e<<2)|0)>>2],f=r,A[(s=(e<<3)+o|0)+4>>2]=r,A[s>>2]=b,(r=(a=A[a>>2])+r|0)>>>0>4096)break r;if(!(r>>>0<=f>>>0)){if(b=0,s=7&a)for(;A[i+(f<<2)>>2]=e,f=f+1|0,(0|s)!=(0|(b=b+1|0)););if(!(a-1>>>0<=6))for(;A[(a=i+(f<<2)|0)>>2]=e,A[a+28>>2]=e,A[a+24>>2]=e,A[a+20>>2]=e,A[a+16>>2]=e,A[a+12>>2]=e,A[a+8>>2]=e,A[a+4>>2]=e,(0|(f=f+8|0))!=(0|r););}if((0|t)==(0|(e=e+1|0)))break}h=4096==(0|r)}}return h}function Ge(r,e){var a,i=0,f=0,t=0,o=0,b=0,n=0;Q=a=Q-16|0,i=A[r+4>>2],A[r+40>>2]=A[r>>2],A[r+44>>2]=i,i=A[r+36>>2],A[r+72>>2]=A[r+32>>2],A[r+76>>2]=i,f=A[r+28>>2],A[(i=r- -64|0)>>2]=A[r+24>>2],A[i+4>>2]=f,i=A[r+20>>2],A[r+56>>2]=A[r+16>>2],A[r+60>>2]=i,i=A[r+12>>2],A[r+48>>2]=A[r+8>>2],A[r+52>>2]=i;r:if(Db(r+40|0,1,a+8|0)&&(i=A[r+44>>2],A[r>>2]=A[r+40>>2],A[r+4>>2]=i,i=A[r+76>>2],A[r+32>>2]=A[r+72>>2],A[r+36>>2]=i,i=A[r+68>>2],A[r+24>>2]=A[r+64>>2],A[r+28>>2]=i,b=f=A[r+60>>2],i=A[r+56>>2],A[r+16>>2]=i,A[r+20>>2]=f,t=A[r+52>>2],f=A[r+48>>2],A[r+8>>2]=f,A[r+12>>2]=t,n=f-i|0,(0|(o=A[a+12>>2]))==(0|(t=t-((i>>>0>f>>>0)+b|0)|0))&n>>>0>=(f=A[a+8>>2])>>>0|t>>>0>o>>>0)){if(t=b+o|0,t=(i=i+f|0)>>>0<f>>>0?t+1|0:t,A[r+16>>2]=i,A[r+20>>2]=t,u[r+38>>1]<=513){if(i=A[r+4>>2],A[r+96>>2]=A[r>>2],A[r+100>>2]=i,i=A[r+36>>2],A[r+128>>2]=A[r+32>>2],A[r+132>>2]=i,i=A[r+28>>2],A[r+120>>2]=A[r+24>>2],A[r+124>>2]=i,i=A[r+20>>2],A[r+112>>2]=A[r+16>>2],A[r+116>>2]=i,i=A[r+12>>2],A[r+104>>2]=A[r+8>>2],A[r+108>>2]=i,!(Db(r+96|0,1,a+8|0)&&(i=A[r+100>>2],A[r>>2]=A[r+96>>2],A[r+4>>2]=i,i=A[r+132>>2],A[r+32>>2]=A[r+128>>2],A[r+36>>2]=i,i=A[r+124>>2],A[r+24>>2]=A[r+120>>2],A[r+28>>2]=i,b=f=A[r+116>>2],i=A[r+112>>2],A[r+16>>2]=i,A[r+20>>2]=f,t=A[r+108>>2],f=A[r+104>>2],A[r+8>>2]=f,A[r+12>>2]=t,n=f-i|0,(0|(o=A[a+12>>2]))==(0|(t=t-((i>>>0>f>>>0)+b|0)|0))&n>>>0>=(f=A[a+8>>2])>>>0|t>>>0>o>>>0))){i=0;break r}t=b+o|0,t=(i=i+f|0)>>>0<f>>>0?t+1|0:t,A[r+16>>2]=i,A[r+20>>2]=t}else if(i=0,!ta(r+80|0,r))break r;i=0,Fe(r)&&(i=A[r+4>>2],A[e>>2]=A[r>>2],A[e+4>>2]=i,i=A[r+36>>2],A[e+32>>2]=A[r+32>>2],A[e+36>>2]=i,i=A[r+28>>2],A[e+24>>2]=A[r+24>>2],A[e+28>>2]=i,i=A[r+20>>2],A[e+16>>2]=A[r+16>>2],A[e+20>>2]=i,i=A[r+12>>2],A[e+8>>2]=A[r+8>>2],A[e+12>>2]=i,i=1)}else i=0;return Q=a+16|0,i}function oe(r,e){var a=0,i=0,f=0,t=0,o=0,n=0,u=0;A[r+64>>2]||(a=pa(32),A[a+16>>2]=0,A[a+20>>2]=0,A[a+8>>2]=0,A[a>>2]=0,A[a+4>>2]=0,A[a+24>>2]=0,A[a+28>>2]=0,i=A[r+64>>2],A[r+64>>2]=a,i&&((a=A[i>>2])&&(A[i+4>>2]=a,oa(a)),oa(i),a=A[r+64>>2]),A[r>>2]=a,i=A[a+20>>2],A[r+8>>2]=A[a+16>>2],A[r+12>>2]=i,i=A[a+24>>2],a=A[a+28>>2],A[r+48>>2]=0,A[r+52>>2]=0,A[r+40>>2]=0,A[r+44>>2]=0,A[r+16>>2]=i,A[r+20>>2]=a);r:{b[r+24|0]=k[e+24|0],A[r+28>>2]=A[e+28>>2],b[r+32|0]=k[e+32|0],a=A[e+44>>2],A[r+40>>2]=A[e+40>>2],A[r+44>>2]=a,a=A[e+52>>2],A[r+48>>2]=A[e+48>>2],A[r+52>>2]=a,A[r+56>>2]=A[e+56>>2],a=A[e+12>>2],A[r+8>>2]=A[e+8>>2],A[r+12>>2]=a,a=A[e+20>>2],A[r+16>>2]=A[e+16>>2],A[r+20>>2]=a,A[r+60>>2]=A[e+60>>2],(a=A[e>>2])?(i=0,(o=A[r>>2])&&(se(o,i=A[a>>2],a=A[a+4>>2]-i|0,0),i=1)):(A[r>>2]=0,i=1);e:if(i){b[r+84|0]=k[e+84|0],A[r+80>>2]=A[e+80>>2],(0|r)!=(0|e)&&Cb(r+68|0,A[e+68>>2],A[e+72>>2]);a:{if(t=A[e+88>>2]){if(f=pa(40),e=A[t>>2],A[f+16>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0,A[f>>2]=e,(0|(a=A[t+12>>2]))!=(0|(e=A[t+8>>2]))){if((0|(a=a-e|0))<0)break r;if(e=pa(a),A[f+12>>2]=e,A[f+8>>2]=e,A[f+16>>2]=e+a,(0|(a=A[t+8>>2]))!=(0|(n=A[t+12>>2]))){if(o=~a+n|0,i=n-a&7)for(;b[0|e]=k[0|a],e=e+1|0,a=a+1|0,(0|i)!=(0|(u=u+1|0)););if(!(o>>>0<7))for(;b[0|e]=k[0|a],b[e+1|0]=k[a+1|0],b[e+2|0]=k[a+2|0],b[e+3|0]=k[a+3|0],b[e+4|0]=k[a+4|0],b[e+5|0]=k[a+5|0],b[e+6|0]=k[a+6|0],b[e+7|0]=k[a+7|0],e=e+8|0,(0|n)!=(0|(a=a+8|0)););}A[f+12>>2]=e}if(e=A[t+36>>2],A[f+32>>2]=A[t+32>>2],A[f+36>>2]=e,e=A[t+28>>2],A[f+24>>2]=A[t+24>>2],A[f+28>>2]=e,e=A[r+88>>2],A[r+88>>2]=f,e)break a;break e}if(e=A[r+88>>2],A[r+88>>2]=0,!e)break e}(r=A[e+8>>2])&&(A[e+12>>2]=r,oa(r)),oa(e)}return}sa(),v()}function Xd(r,e,a){r|=0,e|=0,a|=0;var i,f=0,t=0,o=0,b=0,n=0,k=0,u=0,s=0,_=0;Q=i=Q-16|0,A[i+8>>2]=a;r:if(!((0|(b=(n=A[r+12>>2])-(f=A[r+8>>2])>>2))>(0|e)))if((t=e+1|0)>>>0>b>>>0){if((s=t-b|0)>>>0<=(o=A[r+16>>2])-(f=A[r+12>>2])>>2>>>0){s&&(f=ra(t=f,0,f=s<<2)+f|0),A[r+12>>2]=f;break r}e:{a:{i:{if((k=(b=f-(_=A[r+8>>2])>>2)+s|0)>>>0<1073741824){if(o=(t=o-_|0)>>>1|0,t=t>>>0>=2147483644?1073741823:o>>>0>k>>>0?o:k){if(t>>>0>=1073741824)break i;u=pa(t<<2)}if(b=(o=s<<2)+(k=ra(n=(b<<2)+u|0,0,o))|0,t=(t<<2)+u|0,(0|f)==(0|_))break a;for(;o=A[(f=f-4|0)>>2],A[f>>2]=0,A[(n=n-4|0)>>2]=o,(0|f)!=(0|_););if(A[r+16>>2]=t,t=A[r+12>>2],A[r+12>>2]=b,f=A[r+8>>2],A[r+8>>2]=n,(0|f)==(0|t))break e;for(;o=A[(t=t-4|0)>>2],A[t>>2]=0,o&&Ga(o),(0|f)!=(0|t););break e}sa(),v()}wa(),v()}A[r+16>>2]=t,A[r+12>>2]=b,A[r+8>>2]=k}f&&oa(f)}else if(!(t>>>0>=b>>>0)){if((0|(f=f+(t<<2)|0))!=(0|n)){for(;a=A[(n=n-4|0)>>2],A[n>>2]=0,a&&Ga(a),(0|f)!=(0|n););a=A[i+8>>2]}A[r+12>>2]=f}r:{e:{if(!((0|(f=A[a+56>>2]))>4))if(u=m(f,12)+r|0,(0|(f=A[u+24>>2]))==A[u+28>>2]){if((t=(o=(b=f-(k=A[u+20>>2])|0)>>2)+1|0)>>>0>=1073741824)break e;if(f=b>>>1|0,t=b>>>0>=2147483644?1073741823:f>>>0>t>>>0?f:t){if(t>>>0>=1073741824)break r;f=pa(t<<2)}else f=0;A[(o=f+(o<<2)|0)>>2]=e,f=va(f,k,b),A[u+20>>2]=f,A[u+24>>2]=o+4,A[u+28>>2]=f+(t<<2),k&&oa(k)}else A[f>>2]=e,A[u+24>>2]=f+4;return A[a+60>>2]=e,r=A[r+8>>2],A[i+8>>2]=0,e=A[(r=r+(e<<2)|0)>>2],A[r>>2]=a,e&&Ga(e),r=A[i+8>>2],A[i+8>>2]=0,r&&Ga(r),void(Q=i+16|0)}sa(),v()}wa(),v()}function bd(r,e){var a,i,f=0,t=0,o=0,b=0,n=0,k=0,u=0,s=0,_=0,d=0;Q=a=Q-16|0,A[a>>2]=e,b=-1,-1!=(0|e)?(b=e+1|0,A[a+4>>2]=(b>>>0)%3|0?b:e-2|0,b=(e>>>0)%3|0?e-1|0:e+2|0):A[a+4>>2]=-1,A[a+8>>2]=b,i=(e>>>0)/3|0;r:{e:{a:{for(;;){i:if(-1!=(0|(u=A[(_<<2)+a>>2]))&&-1!=(0|(b=A[A[A[r+8>>2]+12>>2]+(u<<2)>>2]))){if(!(-1==(0|e)|(b>>>0)/3>>>0<i>>>0)&&(b=0,A[r+220>>2]!=A[r+216>>2]))for(;;){if(Ba(A[r+368>>2]+(b<<4)|0))if(n=A[r+216>>2]+m(b,144)|0,(t=A[n+136>>2])>>>0<(f=A[n+140>>2])>>>0)A[t>>2]=u,A[n+136>>2]=t+4;else{if((k=(o=(s=(o=t)-(t=A[n+132>>2])|0)>>2)+1|0)>>>0>=1073741824)break r;if(d=o<<2,o=(f=f-t|0)>>>1|0,k=f>>>0>=2147483644?1073741823:k>>>0<o>>>0?o:k){if(k>>>0>=1073741824)break e;f=pa(k<<2)}else f=0;A[(o=d+f|0)>>2]=u,f=va(f,t,s),A[n+132>>2]=f,A[n+136>>2]=o+4,A[n+140>>2]=f+(k<<2),t&&oa(t)}if(!((b=b+1|0)>>>0<(A[r+220>>2]-A[r+216>>2]|0)/144>>>0))break}}else{if(b=0,(0|(n=A[r+216>>2]))==A[r+220>>2])break i;for(;;){if(n=m(b,144)+n|0,(t=A[n+136>>2])>>>0<(f=A[n+140>>2])>>>0)A[t>>2]=u,A[n+136>>2]=t+4;else{if((k=(o=(s=(o=t)-(t=A[n+132>>2])|0)>>2)+1|0)>>>0>=1073741824)break a;if(d=o<<2,o=(f=f-t|0)>>>1|0,k=f>>>0>=2147483644?1073741823:k>>>0<o>>>0?o:k){if(k>>>0>=1073741824)break e;f=pa(k<<2)}else f=0;A[(o=d+f|0)>>2]=u,f=va(f,t,s),A[n+132>>2]=f,A[n+136>>2]=o+4,A[n+140>>2]=f+(k<<2),t&&oa(t)}if(b=b+1|0,n=A[r+216>>2],!(b>>>0<(A[r+220>>2]-n|0)/144>>>0))break}}if(3==(0|(_=_+1|0)))break}return Q=a+16|0,1}sa(),v()}wa(),v()}sa(),v()}function cd(r,e){var a,i=0,f=0,t=0,o=0,b=0,n=0,k=0,u=0,s=0;Q=a=Q-16|0,A[a>>2]=e,i=-1,-1!=(0|e)?(i=e+1|0,A[a+4>>2]=(i>>>0)%3|0?i:e-2|0,i=(e>>>0)%3|0?e-1|0:e+2|0):A[a+4>>2]=-1,A[a+8>>2]=i;r:{e:{for(;;){a:{if(!(-1==(0|(n=A[(u<<2)+a>>2]))|-1==A[A[A[r+8>>2]+12>>2]+(n<<2)>>2])){if(e=0,A[r+220>>2]==A[r+216>>2])break a;for(;;){i:{if(Ba(A[r+368>>2]+(e<<4)|0))if(i=A[r+216>>2]+m(e,144)|0,(t=A[i+136>>2])>>>0<(f=A[i+140>>2])>>>0)A[t>>2]=n,A[i+136>>2]=t+4;else{if((b=(o=(k=(o=t)-(t=A[i+132>>2])|0)>>2)+1|0)>>>0>=1073741824)break i;if(s=o<<2,o=(f=f-t|0)>>>1|0,b=f>>>0>=2147483644?1073741823:b>>>0<o>>>0?o:b){if(b>>>0>=1073741824)break r;f=pa(b<<2)}else f=0;A[(o=s+f|0)>>2]=n,f=va(f,t,k),A[i+132>>2]=f,A[i+136>>2]=o+4,A[i+140>>2]=f+(b<<2),t&&oa(t)}if((e=e+1|0)>>>0<(A[r+220>>2]-A[r+216>>2]|0)/144>>>0)continue;break a}break}sa(),v()}if(e=0,(0|(i=A[r+216>>2]))!=A[r+220>>2])for(;;){if(i=m(e,144)+i|0,(t=A[i+136>>2])>>>0<(f=A[i+140>>2])>>>0)A[t>>2]=n,A[i+136>>2]=t+4;else{if((b=(o=(k=(o=t)-(t=A[i+132>>2])|0)>>2)+1|0)>>>0>=1073741824)break e;if(s=o<<2,o=(f=f-t|0)>>>1|0,b=f>>>0>=2147483644?1073741823:b>>>0<o>>>0?o:b){if(b>>>0>=1073741824)break r;f=pa(b<<2)}else f=0;A[(o=s+f|0)>>2]=n,f=va(f,t,k),A[i+132>>2]=f,A[i+136>>2]=o+4,A[i+140>>2]=f+(b<<2),t&&oa(t)}if(e=e+1|0,i=A[r+216>>2],!(e>>>0<(A[r+220>>2]-i|0)/144>>>0))break}}if(3==(0|(u=u+1|0)))break}return Q=a+16|0,1}sa(),v()}wa(),v()}function qc(r,e,a,i){var f,t,o,b=0,n=0,k=0,u=0,s=0,_=0,d=0;if(f=A[e+16>>2],u=A[a+4>>2]-f|0,b=A[a>>2]-f|0,A[a>>2]=b,n=u,A[a+4>>2]=n,o=(t=A[e+16>>2])>>>0>=(k=(u^(n>>=31))-n|0)+(((n=b>>31)^b)-n|0)>>>0)n=u;else{r:{e:{if((0|b)>=0){if(k=1,_=1,(0|u)>=0)break r;if(s=1,k=-1,_=-1,b)break e;break r}if(s=-1,k=-1,_=-1,(0|u)<=0)break r}k=(0|u)<=0?-1:1,_=s}n=(b<<1)-(d=m(_,t))|0,n=(((s=(0|m(k,_))>=0)?0-n|0:n)+(b=m(k,t))|0)/2|0,A[a+4>>2]=n,b=(u<<1)-b|0,b=((s?0-b|0:b)+d|0)/2|0,A[a>>2]=b}r:{e:{a:{i:{f:{t:{o:{if(b){if((0|b)<0)break o;if((0|n)>=0)break t;break a}if(n)break f;_=1,k=0,n=0,s=0;break r}if(_=1,(0|n)>0)break i;s=(0|n)>0?3:0,k=n,n=b;break r}k=0-n|0,n=0-b|0,s=2;break e}if((0|n)<=0)break a}n=0-n|0,k=b,s=3;break e}k=0-b|0,s=1}A[a>>2]=n,A[a+4>>2]=k,_=0}(0|(b=A[i>>2]+n|0))>(0|(u=A[e+16>>2]))?b=b-A[e+4>>2]|0:(0-u|0)<=(0|b)||(b=A[e+4>>2]+b|0),(0|u)<(0|(a=A[i+4>>2]+k|0))?a=a-A[e+4>>2]|0:(0-u|0)<=(0|a)||(a=A[e+4>>2]+a|0);r:if(_)e=a;else{e=a;e:{a:{i:switch(((i=4-s|0)>>>0<4?i:0-s|0)-1|0){case 2:break e;case 1:break a;case 0:break i;default:break r}e=0-b|0,b=a;break r}e=0-a|0,b=0-b|0;break r}e=b,b=0-a|0}if(o)a=e;else{r:{e:{if((0|b)>=0){if(a=1,n=1,(0|e)>=0)break r;if(i=1,a=-1,n=-1,b)break e;break r}if(i=-1,a=-1,n=-1,(0|e)<=0)break r}a=(0|e)<=0?-1:1,n=i}i=(i=b<<1)-(b=m(n,u))|0,a=((k=(n=(0|m(a,n))>=0)?0-i|0:i)+(i=m(a,u))|0)/2|0,e=(e<<1)-i|0,b=(b+(n?0-e|0:e)|0)/2|0}A[(e=r)>>2]=b+f,A[e+4>>2]=a+f}function De(r,e){var a=0,i=0,f=0,t=0,o=0;i=-1,t=-1,-1!=(0|e)&&(i=((a=e+1|0)>>>0)%3|0?a:e-2|0,t=e-1|0,(e>>>0)%3|0||(t=e+2|0));r:{e:{a:{i:{f:{t:switch(0|(f=A[r+184>>2])){case 7:break a;case 3:break i;case 5:break f;case 0:case 1:break t;default:break r}o=A[r+148>>2],a=-1,f=1,i=(-1!=(0|i)?A[A[o>>2]+(i<<2)>>2]:a)<<2,a=A[r+156>>2],A[(i=i+a|0)>>2]=A[i>>2]+1,a=((-1==(0|t)?-1:A[A[o>>2]+(t<<2)>>2])<<2)+a|0;break e}o=A[r+148>>2],f=(a=A[r+156>>2])+((-1==(0|e)?-1:A[A[o>>2]+(e<<2)>>2])<<2)|0,A[f>>2]=A[f>>2]+1,i=((-1==(0|i)?-1:A[A[o>>2]+(i<<2)>>2])<<2)+a|0,A[i>>2]=A[i>>2]+1,f=2,a=((-1==(0|t)?-1:A[A[o>>2]+(t<<2)>>2])<<2)+a|0;break e}o=A[r+148>>2],f=(a=A[r+156>>2])+((-1==(0|e)?-1:A[A[o>>2]+(e<<2)>>2])<<2)|0,A[f>>2]=A[f>>2]+1,i=((-1==(0|i)?-1:A[A[o>>2]+(i<<2)>>2])<<2)+a|0,A[i>>2]=A[i>>2]+2,f=1,a=((-1==(0|t)?-1:A[A[o>>2]+(t<<2)>>2])<<2)+a|0;break e}o=A[r+148>>2],f=(a=A[r+156>>2])+((-1==(0|e)?-1:A[A[o>>2]+(e<<2)>>2])<<2)|0,A[f>>2]=A[f>>2]+2,i=((-1==(0|i)?-1:A[A[o>>2]+(i<<2)>>2])<<2)+a|0,A[i>>2]=A[i>>2]+2,f=2,a=((-1==(0|t)?-1:A[A[o>>2]+(t<<2)>>2])<<2)+a|0}A[a>>2]=A[a>>2]+f,f=A[r+184>>2]}r:switch(0|f){case 0:case 5:return t=A[r+156>>2],a=-1,-1!=(0|e)&&(a=-1,-1!=(0|(e=((i=e+1|0)>>>0)%3|0?i:e-2|0))&&(a=A[A[A[r+148>>2]>>2]+(e<<2)>>2])),A[t+(a<<2)>>2]<=5?void(A[r+188>>2]=5):void(A[r+188>>2]=0);default:break r}A[r+188>>2]=-1}function Ye(r,e){r|=0;var a,i=0,f=0,t=0,o=0,n=0,u=0,_=0,d=0,m=0,R=0;if(Q=a=Q-16|0,i=A[(e|=0)+20>>2],i=(t=(f=A[e+16>>2])+4|0)>>>0<4?i+1|0:i,n=A[e+12>>2],!(s[e+8>>2]<t>>>0&(0|n)<=(0|i)|(0|i)>(0|n))&&(f=f+A[e>>2]|0,u=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[e+16>>2]=t,A[e+20>>2]=i,!((0|u)<0)&&(Wa(r+76|0,u),A[(i=a)>>2]=0,A[i+4>>2]=0,b[i+5|0]=0,b[i+6|0]=0,b[i+7|0]=0,b[i+8|0]=0,b[i+9|0]=0,b[i+10|0]=0,b[i+11|0]=0,b[i+12|0]=0,ta(i,e)))){if(u)for(n=1;f=1<<_,t=Ba(i),o=A[r+76>>2]+(_>>>3&536870908)|0,1&(t^=n)?f=A[o>>2]&~f:f|=A[o>>2],n=1^t,A[o>>2]=f,(0|u)!=(0|(_=_+1|0)););_=0,i=A[e+8>>2],o=t=A[e+12>>2],n=t=A[e+20>>2],u=f=(m=A[e+16>>2])+4|0,f>>>0>i>>>0&(0|(t=f>>>0<4?t+1|0:t))>=(0|o)|(0|t)>(0|o)||(R=A[e>>2],d=k[0|(f=R+m|0)]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[e+16>>2]=u,A[e+20>>2]=t,f=i,i=n,f>>>0<(t=m+8|0)>>>0&(0|(i=t>>>0<8?i+1|0:i))>=(0|o)|(0|i)>(0|o)||(f=k[0|(f=u+R|0)]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[e+16>>2]=t,A[e+20>>2]=i,(0|f)<(0|d)||(A[r+16>>2]=f,A[r+12>>2]=d,!(i=(f>>31)-((d>>31)+(f>>>0<d>>>0)|0)|0)&(e=f-d|0)>>>0>2147483646|i||(_=1,i=e+1|0,A[r+20>>2]=i,e=i>>>1|0,A[r+24>>2]=e,A[r+28>>2]=0-e,1&i||(A[r+24>>2]=e-1)))))}return Q=a+16|0,0|_}function ge(r,e,a,i){r|=0,a|=0,i|=0;var f,t,o=0,n=0,u=0,s=0,_=0,d=0,R=0,h=0,j=0,D=0;r=0,Q=t=Q-16|0,f=A[(e|=0)+80>>2],o=k[a+24|0],e=m(f,o);r:{e:{a:{i:{if(n=A[a+28>>2],!(!k[a+84|0]|5!=(0|n)&6!=(0|n))){if(o=A[a+48>>2],a=A[A[a>>2]>>2],A[t+8>>2]=0,A[t>>2]=0,A[t+4>>2]=0,e){if((0|e)<0)break i;u=qa(r=pa(e<<=2),a+o|0,e)+e|0}(e=A[i>>2])&&(A[i+4>>2]=e,oa(e)),A[i+8>>2]=u,A[i+4>>2]=u,A[i>>2]=r,s=1;break r}if(o&&ra(r=pa(n=o<<2),0,n),_=A[i>>2],(n=A[i+4>>2]-_>>2)>>>0<e>>>0?ya(i,e-n|0):e>>>0>=n>>>0||(A[i+4>>2]=_+(e<<2)),!f){s=1;break a}if(!o){for(e=0;;){if(!ec(a,k[a+84|0]?e:A[A[a+68>>2]+(e<<2)>>2],b[a+24|0],r))break a;if(s=f>>>0<=(e=e+1|0)>>>0,(0|e)==(0|f))break}break a}for(j=252&o,R=3&o,D=o>>>0<4,o=0;;){if(!ec(a,k[a+84|0]?o:A[A[a+68>>2]+(o<<2)>>2],b[a+24|0],r))break a;if(h=A[i>>2],d=0,e=0,s=0,!D)for(;_=e<<2,A[(n=(u<<2)+h|0)>>2]=A[_+r>>2],A[n+4>>2]=A[(4|_)+r>>2],A[n+8>>2]=A[(8|_)+r>>2],A[n+12>>2]=A[(12|_)+r>>2],e=e+4|0,u=u+4|0,(0|j)!=(0|(s=s+4|0)););if(R)for(;A[(u<<2)+h>>2]=A[(e<<2)+r>>2],e=e+1|0,u=u+1|0,(0|(d=d+1|0))!=(0|R););if(s=f>>>0<=(o=o+1|0)>>>0,(0|o)==(0|f))break}break e}sa(),v()}if(!r)break r}oa(r)}return Q=t+16|0,0|s}function Ce(r,e){var a=0,i=0,f=0,t=0,o=0;t=-1,i=-1,-1!=(0|e)&&(t=((i=e+1|0)>>>0)%3|0?i:e-2|0,i=e-1|0,(e>>>0)%3|0||(i=e+2|0));r:{e:{a:switch(A[r+168>>2]){case 0:case 1:f=A[r+148>>2],a=1,o=(e=A[r+156>>2])+((-1==(0|t)?-1:A[A[f>>2]+(t<<2)>>2])<<2)|0,A[o>>2]=A[o>>2]+1,e=((-1==(0|i)?-1:A[A[f>>2]+(i<<2)>>2])<<2)+e|0;break e;case 5:f=A[r+148>>2],a=-1,a=(-1!=(0|e)?A[A[f>>2]+(e<<2)>>2]:a)<<2,e=A[r+156>>2],A[(a=a+e|0)>>2]=A[a>>2]+1,a=((-1==(0|t)?-1:A[A[f>>2]+(t<<2)>>2])<<2)+e|0,A[a>>2]=A[a>>2]+1,a=2,e=((-1==(0|i)?-1:A[A[f>>2]+(i<<2)>>2])<<2)+e|0;break e;case 3:f=A[r+148>>2],a=-1,a=(-1!=(0|e)?A[A[f>>2]+(e<<2)>>2]:a)<<2,e=A[r+156>>2],A[(a=a+e|0)>>2]=A[a>>2]+1,a=((-1==(0|t)?-1:A[A[f>>2]+(t<<2)>>2])<<2)+e|0,A[a>>2]=A[a>>2]+2,a=1,e=((-1==(0|i)?-1:A[A[f>>2]+(i<<2)>>2])<<2)+e|0;break e;case 7:break a;default:break r}f=A[r+148>>2],a=-1,a=(-1!=(0|e)?A[A[f>>2]+(e<<2)>>2]:a)<<2,e=A[r+156>>2],A[(a=a+e|0)>>2]=A[a>>2]+2,a=((-1==(0|t)?-1:A[A[f>>2]+(t<<2)>>2])<<2)+e|0,A[a>>2]=A[a>>2]+2,a=2,e=((-1==(0|i)?-1:A[A[f>>2]+(i<<2)>>2])<<2)+e|0}A[e>>2]=A[e>>2]+a}a=r,e=A[A[r+156>>2]+((-1==(0|t)?-1:A[A[A[r+148>>2]>>2]+(t<<2)>>2])<<2)>>2],i=A[r+180>>2],r=A[r+176>>2],A[a+172>>2]=(0|r)<=(0|e)?((0|e)<(0|i)?e:i)-r|0:0}function Ac(r,e){var a=0,i=0,f=0,t=0,o=0,b=0,n=0;A[r+16>>2]=0,A[r+20>>2]=0,A[r+8>>2]=0,A[r>>2]=0,A[r+4>>2]=0,A[r+24>>2]=0,a=(0|(f=(t=A[e+4>>2])-(o=A[e>>2])|0))/20|0;r:if((0|t)!=(0|o)){e:{if(a>>>0<214748365){if(t=pa(f),A[r+20>>2]=t,A[r+16>>2]=t,A[r+24>>2]=t+m(a,20),(0|(a=A[e>>2]))==(0|(o=A[e+4>>2])))break r;for(e=t;f=A[a+4>>2],A[e>>2]=A[a>>2],A[e+4>>2]=f,A[e+16>>2]=A[a+16>>2],f=A[a+12>>2],A[e+8>>2]=A[a+8>>2],A[e+12>>2]=f,e=e+20|0,(0|o)!=(0|(a=a+20|0)););if(o=0,A[r+28>>2]=0,A[r+20>>2]=e,(0|e)!=(0|t)){if(b=3&(f=(e=(e-t|0)/20|0)>>>0<=1?1:e),e=0,a=0,f-1>>>0>=3)for(n=-4&f,f=0;i=t+m(e,20)|0,a=a>>>0>(i=m(A[i+16>>2],A[i+12>>2]))>>>0?a:i,i=t+m(1|e,20)|0,a=a>>>0>(i=m(A[i+16>>2],A[i+12>>2]))>>>0?a:i,i=t+m(2|e,20)|0,a=a>>>0>(i=m(A[i+16>>2],A[i+12>>2]))>>>0?a:i,i=t+m(3|e,20)|0,a=a>>>0>(i=m(A[i+16>>2],A[i+12>>2]))>>>0?a:i,e=e+4|0,(0|n)!=(0|(f=f+4|0)););if(b)for(;f=t+m(e,20)|0,a=a>>>0>(f=m(A[f+16>>2],A[f+12>>2]))>>>0?a:f,e=e+1|0,(0|b)!=(0|(o=o+1|0)););if(!a)return A[r+12>>2]=0,r;if((0|a)<0)break e;t=(e=ra(o=pa(a),0,a))+a|0,A[r+8>>2]=t,A[r+4>>2]=t,A[r>>2]=e}return A[r+12>>2]=o,r}sa(),v()}sa(),v()}return A[r+28>>2]=0,A[r+12>>2]=0,r}function ta(r,e){var a,i=0,f=0,t=0,o=0,n=0,_=0,d=0,m=0;Q=a=Q-16|0;r:if(!((0|(o=A[e+20>>2]))>=(0|(f=A[e+12>>2]))&(i=A[e+16>>2])>>>0>=s[e+8>>2]|(0|f)<(0|o))){if(b[r+12|0]=k[i+A[e>>2]|0],n=i=A[e+20>>2],i=(t=(o=A[e+16>>2])+1|0)?i:i+1|0,A[e+16>>2]=t,A[e+20>>2]=i,u[e+38>>1]<=513){if(f=A[e+8>>2],_=i=A[e+12>>2],i=n,f>>>0<(o=o+5|0)>>>0&(0|(i=o>>>0<5?i+1|0:i))>=(0|_)|(0|i)>(0|_))break r;t=t+A[e>>2]|0,t=k[0|t]|k[t+1|0]<<8|k[t+2|0]<<16|k[t+3|0]<<24,A[e+16>>2]=o,A[e+20>>2]=i}else{if(!Qe(1,a+12|0,e))break r;o=A[e+16>>2],i=A[e+20>>2],f=A[e+8>>2],_=A[e+12>>2],t=A[a+12>>2]}if(n=f-o|0,!((0|(f=_-(i+(f>>>0<o>>>0)|0)|0))<=0&t>>>0>n>>>0|(0|f)<0|(0|t)<=0)){d=A[e>>2]+o|0,A[r>>2]=d;e:{a:{if((f=k[0|(n=(_=t-1|0)+d|0)])>>>0<=63)A[r+4>>2]=_,n=63&k[0|n];else{i:switch((f>>>6|0)-1|0){case 1:break a;case 0:break i;default:break r}if(t>>>0<2)break r;f=t-2|0,A[r+4>>2]=f,n=k[(f=f+d|0)+1|0]<<8&16128|k[0|f]}A[r+8>>2]=n+4096;break e}if(t>>>0<3)break r;if(f=t-3|0,A[r+4>>2]=f,n=r,r=k[(r=f+d|0)+1|0]<<8|k[r+2|0]<<16&4128768|k[0|r],A[n+8>>2]=r+4096,r>>>0>1044479)break r}i=(r=t+o|0)>>>0<t>>>0?i+1|0:i,A[e+16>>2]=r,A[e+20>>2]=i,m=1}}return Q=a+16|0,m}function qb(r,e,a){var i=0,f=0,t=0,o=0,b=0,n=0,k=0,u=0;if((i=A[r+8>>2])-(f=A[r+4>>2])>>2>>>0>=e>>>0){if(e){if(i=f,o=7&e)for(;A[i>>2]=A[a>>2],i=i+4|0,(0|o)!=(0|(t=t+1|0)););if(f=(e<<2)+f|0,!((e-1&1073741823)>>>0<7))for(;A[i>>2]=A[a>>2],A[i+4>>2]=A[a>>2],A[i+8>>2]=A[a>>2],A[i+12>>2]=A[a>>2],A[i+16>>2]=A[a>>2],A[i+20>>2]=A[a>>2],A[i+24>>2]=A[a>>2],A[i+28>>2]=A[a>>2],(0|f)!=(0|(i=i+32|0)););}A[r+4>>2]=f}else{r:{if((b=(t=f-(n=A[r>>2])>>2)+e|0)>>>0<1073741824){if(i=(k=i-n|0)>>>1|0,b=k>>>0>=2147483644?1073741823:i>>>0>b>>>0?i:b){if(b>>>0>=1073741824)break r;u=pa(b<<2)}if(i=t=(t<<2)+u|0,k=7&e)for(;A[i>>2]=A[a>>2],i=i+4|0,(0|k)!=(0|(o=o+1|0)););if(o=(e<<2)+t|0,(e-1&1073741823)>>>0>=7)for(;A[i>>2]=A[a>>2],A[i+4>>2]=A[a>>2],A[i+8>>2]=A[a>>2],A[i+12>>2]=A[a>>2],A[i+16>>2]=A[a>>2],A[i+20>>2]=A[a>>2],A[i+24>>2]=A[a>>2],A[i+28>>2]=A[a>>2],(0|o)!=(0|(i=i+32|0)););if((0|f)!=(0|n))for(;f=f-4|0,A[(t=t-4|0)>>2]=A[f>>2],(0|f)!=(0|n););return A[r+8>>2]=(b<<2)+u,A[r+4>>2]=o,A[r>>2]=t,void(n&&oa(n))}sa(),v()}wa(),v()}}function Kc(r,e,a){var i=0,f=0,t=0,o=0,b=0,n=0,k=0,u=0;if((i=A[r+8>>2])-(f=A[r>>2])>>2>>>0>=e>>>0){if(n=e>>>0>(b=(t=A[r+4>>2])-f>>2)>>>0?b:e){if(i=f,k=7&(o=n))for(;A[i>>2]=A[a>>2],o=o-1|0,i=i+4|0,(0|(u=u+1|0))!=(0|k););if(!(n>>>0<8))for(;A[i>>2]=A[a>>2],A[i+4>>2]=A[a>>2],A[i+8>>2]=A[a>>2],A[i+12>>2]=A[a>>2],A[i+16>>2]=A[a>>2],A[i+20>>2]=A[a>>2],A[i+24>>2]=A[a>>2],A[i+28>>2]=A[a>>2],i=i+32|0,o=o-8|0;);}if(e>>>0>b>>>0){for(e=(e-b<<2)+t|0;A[t>>2]=A[a>>2],(0|e)!=(0|(t=t+4|0)););return void(A[r+4>>2]=e)}A[r+4>>2]=f+(e<<2)}else if(f&&(A[r+4>>2]=f,oa(f),A[r+8>>2]=0,A[r>>2]=0,A[r+4>>2]=0,i=0),e>>>0>=1073741824||(f=i>>>1|0,(i=i>>>0>=2147483644?1073741823:e>>>0<f>>>0?f:e)>>>0>=1073741824))sa(),v();else{if(f=pa(i<<=2),A[r>>2]=f,A[r+8>>2]=i+f,a=A[a>>2],i=f,o=7&e)for(;A[i>>2]=a,i=i+4|0,(0|o)!=(0|(t=t+1|0)););if(f=f+(e<<2)|0,(e-1&1073741823)>>>0>=7)for(;A[i+28>>2]=a,A[i+24>>2]=a,A[i+20>>2]=a,A[i+16>>2]=a,A[i+12>>2]=a,A[i+8>>2]=a,A[i+4>>2]=a,A[i>>2]=a,(0|f)!=(0|(i=i+32|0)););A[r+4>>2]=f}}function Me(r,e){var a,i=0,f=0,t=0,o=0,b=0,n=0,s=0,_=0;Q=a=Q-16|0;r:{if(u[e+38>>1]<=511){if(t=A[e+8>>2],n=i=A[e+12>>2],o=A[e+20>>2],t>>>0<(b=(f=A[e+16>>2])+8|0)>>>0&(0|i)<=(0|(o=b>>>0<8?o+1|0:o))|(0|i)<(0|o))break r;f=f+A[e>>2]|0,i=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,f=k[f+4|0]|k[f+5|0]<<8|k[f+6|0]<<16|k[f+7|0]<<24,A[e+16>>2]=b,A[e+20>>2]=o}else{if(!gb(1,a+8|0,e))break r;b=A[e+16>>2],o=A[e+20>>2],t=A[e+8>>2],n=A[e+12>>2],i=A[a+8>>2],f=A[a+12>>2]}if(s=t-b|0,!((0|(t=n-(o+(t>>>0<b>>>0)|0)|0))==(0|f)&i>>>0>s>>>0|f>>>0>t>>>0||(t=f+o|0,t=(o=i+b|0)>>>0<b>>>0?t+1|0:t,A[e+16>>2]=o,A[e+20>>2]=t,(0|i)<=0))){e=A[e>>2]+b|0,A[r+40>>2]=e;e:if((o=k[0|(t=e+(b=i-1|0)|0)])>>>0<=63)A[r+44>>2]=b,e=63&k[0|t];else{a:switch((o>>>6|0)-1|0){case 0:if(i>>>0<2)break r;i=i-2|0,A[r+44>>2]=i,e=k[(e=e+i|0)+1|0]<<8&16128|k[0|e];break e;case 1:if(i>>>0<3)break r;i=i-3|0,A[r+44>>2]=i,e=k[(e=e+i|0)+1|0]<<8|k[e+2|0]<<16&4128768|k[0|e];break e;default:break a}i=i-4|0,A[r+44>>2]=i,e=1073741823&(k[0|(e=e+i|0)]|k[e+1|0]<<8|k[e+2|0]<<16|k[e+3|0]<<24)}A[r+48>>2]=e+16384,_=e>>>0<4177920}}return Q=a+16|0,_}function Ua(r,e,a){var i=0,f=0,t=0,o=0,b=0,n=0,k=0,u=0;t=(a>>>0)/3|0,k=A[(A[A[r+8>>2]+96>>2]+m(t,12)|0)+(a-m(t,3)<<2)>>2];r:if(b=A[A[r+12>>2]+4>>2],(0|(f=A[b+4>>2]))==A[b+8>>2]){e:{if((i=(o=(t=f-(n=A[b>>2])|0)>>2)+1|0)>>>0<1073741824){if(u=o<<2,o=t>>>1|0,o=t>>>0>=2147483644?1073741823:i>>>0<o>>>0?o:i){if(o>>>0>=1073741824)break e;t=pa(o<<2)}else t=0;if(A[(i=u+t|0)>>2]=k,k=i+4|0,(0|f)!=(0|n))for(;f=f-4|0,A[(i=i-4|0)>>2]=A[f>>2],(0|f)!=(0|n););A[b+8>>2]=t+(o<<2),A[b+4>>2]=k,A[b>>2]=i,n&&oa(n);break r}sa(),v()}wa(),v()}else A[f>>2]=k,A[b+4>>2]=f+4;r:{e:{if(b=A[r+4>>2],(0|(f=A[b+4>>2]))==A[b+8>>2]){if((i=(k=(t=f-(n=A[b>>2])|0)>>2)+1|0)>>>0>=1073741824)break e;if(o=t>>>1|0,o=t>>>0>=2147483644?1073741823:i>>>0<o>>>0?o:i){if(o>>>0>=1073741824)break r;t=pa(o<<2)}else t=0;if(A[(i=t+(k<<2)|0)>>2]=a,a=i+4|0,(0|f)!=(0|n))for(;f=f-4|0,A[(i=i-4|0)>>2]=A[f>>2],(0|f)!=(0|n););A[b+8>>2]=t+(o<<2),A[b+4>>2]=a,A[b>>2]=i,n&&oa(n)}else A[f>>2]=a,A[b+4>>2]=f+4;return r=A[r+4>>2],A[A[r+12>>2]+(e<<2)>>2]=A[r+24>>2],void(A[r+24>>2]=A[r+24>>2]+1)}sa(),v()}wa(),v()}function Wb(r,e,a,i){var f,t=0,o=0,n=0,u=0,s=0,_=0;if(!((0|(f=i-a|0))<=0)){r:{if(((t=A[r+8>>2])-(u=A[r+4>>2])|0)>=(0|f)){if((0|(s=u-e|0))>=(0|f)){o=u,n=i;break r}if(o=u,(0|(n=a+s|0))!=(0|i))for(t=n;b[0|o]=k[0|t],o=o+1|0,(0|(t=t+1|0))!=(0|i););if(A[r+4>>2]=o,(0|s)>0)break r;return}if((0|(n=(u-(_=A[r>>2])|0)+f|0))>=0)return t=(o=t-_|0)<<1,n=(s=e-_|0)+(t=(o=o>>>0>=1073741823?2147483647:t>>>0>n>>>0?t:n)?pa(o):0)|0,(0|a)!=(0|i)&&(n=qa(n,a,f)+f|0),i=va(t,_,s),e=va(n,e,a=u-e|0),A[r+8>>2]=t+o,A[r+4>>2]=e+a,A[r>>2]=i,void(_&&oa(_));sa(),v()}if(u>>>0>(i=(t=o)-f|0)>>>0)for(;b[0|t]=k[0|i],t=t+1|0,u>>>0>(i=i+1|0)>>>0;);if(A[r+4>>2]=t,(0|(r=e+f|0))!=(0|o)&&va(o-(r=o-r|0)|0,e,r),(0|a)!=(0|n)){if(o=~a+n|0,r=n-a&7)for(i=0,t=e;b[0|t]=k[0|a],t=t+1|0,a=a+1|0,(0|r)!=(0|(i=i+1|0)););else t=e;if(!(o>>>0<7))for(;b[0|t]=k[0|a],b[t+1|0]=k[a+1|0],b[t+2|0]=k[a+2|0],b[t+3|0]=k[a+3|0],b[t+4|0]=k[a+4|0],b[t+5|0]=k[a+5|0],b[t+6|0]=k[a+6|0],b[t+7|0]=k[a+7|0],t=t+8|0,(0|n)!=(0|(a=a+8|0)););}}}function qa(r,e,a){var i,f=0,t=0;if(a>>>0>=512)return E(0|r,0|e,0|a),r;i=r+a|0;r:if(3&(r^e))if(i>>>0<4)a=r;else if((f=i-4|0)>>>0<r>>>0)a=r;else for(a=r;b[0|a]=k[0|e],b[a+1|0]=k[e+1|0],b[a+2|0]=k[e+2|0],b[a+3|0]=k[e+3|0],e=e+4|0,f>>>0>=(a=a+4|0)>>>0;);else{e:if(3&r)if(a)for(a=r;;){if(b[0|a]=k[0|e],e=e+1|0,!(3&(a=a+1|0)))break e;if(!(a>>>0<i>>>0))break}else a=r;else a=r;if(!((f=-4&i)>>>0<64||(t=f+-64|0)>>>0<a>>>0))for(;A[a>>2]=A[e>>2],A[a+4>>2]=A[e+4>>2],A[a+8>>2]=A[e+8>>2],A[a+12>>2]=A[e+12>>2],A[a+16>>2]=A[e+16>>2],A[a+20>>2]=A[e+20>>2],A[a+24>>2]=A[e+24>>2],A[a+28>>2]=A[e+28>>2],A[a+32>>2]=A[e+32>>2],A[a+36>>2]=A[e+36>>2],A[a+40>>2]=A[e+40>>2],A[a+44>>2]=A[e+44>>2],A[a+48>>2]=A[e+48>>2],A[a+52>>2]=A[e+52>>2],A[a+56>>2]=A[e+56>>2],A[a+60>>2]=A[e+60>>2],e=e- -64|0,t>>>0>=(a=a- -64|0)>>>0;);if(a>>>0>=f>>>0)break r;for(;A[a>>2]=A[e>>2],e=e+4|0,f>>>0>(a=a+4|0)>>>0;);}if(a>>>0<i>>>0)for(;b[0|a]=k[0|e],e=e+1|0,(0|i)!=(0|(a=a+1|0)););return r}function ub(r,e){var a,i,f=0,t=0,o=0;Q=a=Q-16|0,A[r+12>>2]=e,A[r+8>>2]=0,A[r>>2]=0,A[r+4>>2]=0,A[(f=r+16|0)>>2]=0,A[f+4>>2]=0,b[f+5|0]=0,b[f+6|0]=0,b[f+7|0]=0,b[f+8|0]=0,b[f+9|0]=0,b[f+10|0]=0,b[f+11|0]=0,b[f+12|0]=0,A[r+32>>2]=0,A[r+36>>2]=0,A[r+48>>2]=0,A[r+40>>2]=0,A[r+44>>2]=0,A[r+52>>2]=0,A[r+56>>2]=0,A[r+68>>2]=0,A[r+60>>2]=0,A[r+64>>2]=0,A[r+72>>2]=0,A[r+76>>2]=0,A[r+88>>2]=0,A[r+80>>2]=0,A[r+84>>2]=0,A[r+100>>2]=0,A[r+92>>2]=0,A[r+96>>2]=0,i=r+116|0;r:{e:{if(e){if(e>>>0<1073741824)break e;sa(),v()}A[r+104>>2]=0,A[r+108>>2]=0,A[r+112>>2]=0,A[a+8>>2]=0,A[a>>2]=0,A[a+4>>2]=0,f=1;break r}t=pa(f=e<<2),A[r+92>>2]=t,o=f+t|0,A[r+100>>2]=o,ra(t,0,f),A[r+112>>2]=0,A[r+104>>2]=0,A[r+108>>2]=0,A[r+96>>2]=o,t=pa(f),A[r+104>>2]=t,o=f+t|0,A[r+112>>2]=o,ra(t,0,f),A[r+108>>2]=o,t=pa(f),A[a>>2]=t,o=f+t|0,A[a+8>>2]=o,ra(t,0,f),A[a+4>>2]=o,f=e<<5|1}return tb(i,f,a),(t=A[a>>2])&&(A[a+4>>2]=t,oa(t)),A[a+8>>2]=0,A[a>>2]=0,A[a+4>>2]=0,e&&(t=pa(e<<=2),A[a>>2]=t,o=e+t|0,A[a+8>>2]=o,ra(t,0,e),A[a+4>>2]=o),tb(r+128|0,f,a),(e=A[a>>2])&&(A[a+4>>2]=e,oa(e)),Q=a+16|0,r}function ze(r){var e,a=0,i=0,f=0,t=0;if(A[(r|=0)>>2]=11484,(a=A[(e=r+232|0)+196>>2])&&(A[e+200>>2]=a,oa(a)),i=A[e+184>>2]){if((0|(a=i))!=(0|(f=A[e+188>>2]))){for(;(t=A[(a=f-12|0)>>2])&&(A[f-8>>2]=t,oa(t)),f=a,(0|a)!=(0|i););a=A[e+184>>2]}A[e+188>>2]=i,oa(a)}if((a=A[e+156>>2])&&(A[e+160>>2]=a,oa(a)),i=A[e+136>>2],A[e+136>>2]=0,i){if(a=A[(f=i-4|0)>>2])for(a=i+(a<<4)|0;(0|i)!=(0|(a=a-16|0)););oa(f)}if(Yc(r+216|0),(a=A[r+196>>2])&&(A[r+200>>2]=a,oa(a)),(a=A[r+184>>2])&&(A[r+188>>2]=a,oa(a)),(a=A[r+172>>2])&&(A[r+176>>2]=a,oa(a)),(a=A[r+160>>2])&&(A[r+164>>2]=a,oa(a)),a=A[r+144>>2])for(;i=A[a>>2],oa(a),a=i;);return a=A[r+136>>2],A[r+136>>2]=0,a&&oa(a),(a=A[r+120>>2])&&oa(a),(a=A[r+108>>2])&&oa(a),(a=A[r+96>>2])&&oa(a),(a=A[r+72>>2])&&(A[r+76>>2]=a,oa(a)),(a=A[r+60>>2])&&oa(a),(a=A[r+48>>2])&&(A[r+52>>2]=a,oa(a)),(a=A[r+36>>2])&&(A[r+40>>2]=a,oa(a)),(a=A[r+24>>2])&&(A[r+28>>2]=a,oa(a)),(a=A[r+12>>2])&&(A[r+16>>2]=a,oa(a)),a=A[r+8>>2],A[r+8>>2]=0,a&&cb(a),0|r}function Pa(r,e,a){var i=0,f=0,t=0,o=0,b=0,n=0,k=0,u=0;if((i=A[r+8>>2])-(f=A[r+4>>2])>>2>>>0>=e>>>0){if(e){if(i=f,t=7&e)for(;A[i>>2]=A[a>>2],i=i+4|0,(0|t)!=(0|(b=b+1|0)););if(f=(e<<2)+f|0,!((e-1&1073741823)>>>0<7))for(;A[i>>2]=A[a>>2],A[i+4>>2]=A[a>>2],A[i+8>>2]=A[a>>2],A[i+12>>2]=A[a>>2],A[i+16>>2]=A[a>>2],A[i+20>>2]=A[a>>2],A[i+24>>2]=A[a>>2],A[i+28>>2]=A[a>>2],(0|f)!=(0|(i=i+32|0)););}A[r+4>>2]=f}else{r:{if((o=(t=(k=f-(n=A[r>>2])|0)>>2)+e|0)>>>0<1073741824){if(f=(i=i-n|0)>>>1|0,o=i>>>0>=2147483644?1073741823:f>>>0>o>>>0?f:o){if(o>>>0>=1073741824)break r;u=pa(o<<2)}if(i=t=(t<<2)+u|0,f=7&e)for(;A[i>>2]=A[a>>2],i=i+4|0,(0|f)!=(0|(b=b+1|0)););if(f=t+(e<<2)|0,(e-1&1073741823)>>>0>=7)for(;A[i>>2]=A[a>>2],A[i+4>>2]=A[a>>2],A[i+8>>2]=A[a>>2],A[i+12>>2]=A[a>>2],A[i+16>>2]=A[a>>2],A[i+20>>2]=A[a>>2],A[i+24>>2]=A[a>>2],A[i+28>>2]=A[a>>2],(0|f)!=(0|(i=i+32|0)););return e=va(u,n,k),A[r+4>>2]=f,A[r>>2]=e,A[r+8>>2]=e+(o<<2),void(n&&oa(n))}sa(),v()}wa(),v()}}function Cc(r,e){var a=0,i=0,f=0,t=0,o=0,n=0,u=0,_=0;if((i=k[r+11|0]>>>7|0?A[r+4>>2]:127&k[r+11|0])>>>0<e>>>0){if(Q=n=Q-16|0,e=e-i|0){for(o=k[r+11|0]>>>7|0?(2147483647&A[r+8>>2])-1|0:10,u=(i=k[r+11|0]>>>7|0?A[r+4>>2]:127&k[r+11|0])+e|0,o-i>>>0<e>>>0&&(Q=f=Q-16|0,(a=u-o|0)>>>0<=2147483631-o>>>0?(t=k[r+11|0]>>>7|0?A[r>>2]:r,o>>>0<1073741799?(A[f+12>>2]=o<<1,A[f>>2]=a+o,Q=a=Q-16|0,Q=a+16|0,a=f+12|0,a=(a=(a=A[(s[f>>2]<s[a>>2]?a:f)>>2])>>>0>=11?11==(0|(a=(_=a+16&-16)-1|0))?_:a:10)+1|0):a=2147483631,Zb(f,a),a=A[f>>2],i&&yb(a,t,i),10!=(0|o)&&oa(t),A[r>>2]=a,A[r+8>>2]=-2147483648&A[r+8>>2]|2147483647&A[f+4>>2],A[r+8>>2]=-2147483648|A[r+8>>2],Q=f+16|0):(Na(),v())),t=(t=i)+(i=k[r+11|0]>>>7|0?A[r>>2]:r)|0,Q=f=Q-16|0,b[f+15|0]=0;e;)b[0|t]=k[f+15|0],e=e-1|0,t=t+1|0;Q=f+16|0,Id(r,u),b[n+15|0]=0,b[i+u|0]=k[n+15|0]}Q=n+16|0}else i=k[r+11|0]>>>7|0?A[r>>2]:r,Q=t=Q-16|0,Id(r,e),b[t+15|0]=0,b[e+i|0]=k[t+15|0],Q=t+16|0}function Jc(r,e){var a,i=0,f=0,t=0,o=0,n=0;Q=a=Q-16|0;r:{e:{if(e){if(A[r+88>>2]=0,A[r+92>>2]=0,f=A[r+84>>2],A[r+84>>2]=0,f&&oa(f),A[r+76>>2]=0,A[r+80>>2]=0,f=A[r+72>>2],A[r+72>>2]=0,f&&oa(f),f=A[e>>2],i=A[e+4>>2],b[a+15|0]=0,Oa(r,i-f>>2,a+15|0),f=A[e+28>>2],i=A[e+24>>2],b[a+14|0]=0,Oa(r+12|0,f-i>>2,a+14|0),Kc(r+28|0,A[e+4>>2]-A[e>>2]>>2,13708),o=(i=A[e+28>>2]-A[e+24>>2]|0)>>2,t=A[r+52>>2],!(o>>>0<=A[r+60>>2]-t>>2>>>0)){if((0|i)<0)break e;if(f=A[r+56>>2],o=(i=pa(i))+(o<<2)|0,i=n=i+(f-t&-4)|0,(0|f)!=(0|t))for(;f=f-4|0,A[(i=i-4|0)>>2]=A[f>>2],(0|f)!=(0|t););A[r+60>>2]=o,A[r+56>>2]=n,A[r+52>>2]=i,t&&oa(t)}if(o=(i=A[e+28>>2]-A[e+24>>2]|0)>>2,t=A[r+40>>2],!(o>>>0<=A[r+48>>2]-t>>2>>>0)){if((0|i)<0)break r;if(f=A[r+44>>2],o=(i=pa(i))+(o<<2)|0,i=n=i+(f-t&-4)|0,(0|f)!=(0|t))for(;f=f-4|0,A[(i=i-4|0)>>2]=A[f>>2],(0|f)!=(0|t););A[r+48>>2]=o,A[r+44>>2]=n,A[r+40>>2]=i,t&&oa(t)}b[r+24|0]=1,A[r+64>>2]=e}return void(Q=a+16|0)}sa(),v()}sa(),v()}function wb(r,e){var a,i,f=0,t=0,o=0;Q=a=Q-16|0,A[r+12>>2]=e,A[r+8>>2]=0,A[r>>2]=0,A[r+4>>2]=0,A[r+16>>2]=0,A[r+20>>2]=0,A[r+32>>2]=0,A[r+24>>2]=0,A[r+28>>2]=0,A[r+36>>2]=0,A[r+40>>2]=0,A[r+52>>2]=0,A[r+44>>2]=0,A[r+48>>2]=0,A[r+56>>2]=0,A[r+60>>2]=0,A[r+72>>2]=0,A[r+64>>2]=0,A[r+68>>2]=0,A[r+76>>2]=0,A[r+80>>2]=0,A[r+92>>2]=0,A[r+84>>2]=0,A[r+88>>2]=0,A[r+104>>2]=0,A[r+96>>2]=0,A[r+100>>2]=0,i=r+120|0;r:{e:{if(e){if(e>>>0<1073741824)break e;sa(),v()}A[r+108>>2]=0,A[r+112>>2]=0,A[r+116>>2]=0,A[a+8>>2]=0,A[a>>2]=0,A[a+4>>2]=0,t=1;break r}f=pa(t=e<<2),A[r+96>>2]=f,o=f+t|0,A[r+104>>2]=o,ra(f,0,t),A[r+116>>2]=0,A[r+108>>2]=0,A[r+112>>2]=0,A[r+100>>2]=o,f=pa(t),A[r+108>>2]=f,o=f+t|0,A[r+116>>2]=o,ra(f,0,t),A[r+112>>2]=o,f=pa(t),A[a>>2]=f,o=f+t|0,A[a+8>>2]=o,ra(f,0,t),A[a+4>>2]=o,t=e<<5|1}return tb(i,t,a),(f=A[a>>2])&&(A[a+4>>2]=f,oa(f)),A[a+8>>2]=0,A[a>>2]=0,A[a+4>>2]=0,e&&(f=pa(e<<=2),A[a>>2]=f,o=e+f|0,A[a+8>>2]=o,ra(f,0,e),A[a+4>>2]=o),tb(r+132|0,t,a),(e=A[a>>2])&&(A[a+4>>2]=e,oa(e)),Q=a+16|0,r}function Sb(r,e){var a=0,i=0,f=0;a=(0|r)==(0|e),b[e+12|0]=a;r:if(!a)for(;;){if(i=A[e+8>>2],k[i+12|0])break r;e:{if(a=A[i+8>>2],(0|(f=A[a>>2]))==(0|i)){if(!(!(f=A[a+4>>2])|k[f+12|0]))break e;return A[i>>2]!=(0|e)?(e=A[i+4>>2],r=A[e>>2],A[i+4>>2]=r,r&&(A[r+8>>2]=i,a=A[i+8>>2]),A[e+8>>2]=a,r=A[i+8>>2],A[((A[r>>2]!=(0|i))<<2)+r>>2]=e,A[e>>2]=i,A[i+8>>2]=e,a=A[e+8>>2],i=A[a>>2]):e=i,b[e+12|0]=1,b[a+12|0]=0,r=A[i+4>>2],A[a>>2]=r,r&&(A[r+8>>2]=a),A[i+8>>2]=A[a+8>>2],r=A[a+8>>2],A[((A[r>>2]!=(0|a))<<2)+r>>2]=i,A[i+4>>2]=a,void(A[a+8>>2]=i)}if(k[f+12|0]|!f){A[i>>2]==(0|e)?(r=A[e+4>>2],A[i>>2]=r,r&&(A[r+8>>2]=i,a=A[i+8>>2]),A[e+8>>2]=a,r=A[i+8>>2],A[((A[r>>2]!=(0|i))<<2)+r>>2]=e,A[e+4>>2]=i,A[i+8>>2]=e,a=A[e+8>>2]):e=i,b[e+12|0]=1,b[a+12|0]=0,r=A[a+4>>2],e=A[r>>2],A[a+4>>2]=e,e&&(A[e+8>>2]=a),A[r+8>>2]=A[a+8>>2],e=A[a+8>>2],A[((A[e>>2]!=(0|a))<<2)+e>>2]=r,A[r>>2]=a,A[a+8>>2]=r;break r}}if(b[i+12|0]=1,b[a+12|0]=(0|r)==(0|a),b[f+12|0]=1,e=a,(0|a)==(0|r))break}}function Tj(r,e,a,i){var f=0,t=0,o=0,b=0,n=0,A=0,k=0,u=0,s=0;r:{e:{a:{i:{f:{t:{o:{b:{n:{A:{k:{if(e){if(!a)break k;if(!i)break A;if((f=j(i)-j(e)|0)>>>0<=31)break n;break a}if(1==(0|i)|i>>>0>1)break a;Y=0,r=(r>>>0)/(a>>>0)|0;break r}if(!r)break b;if(!i|i-1&i)break o;r=e>>>Qj(i)|0,Y=0;break r}if(!(a-1&a))break t;o=0-(b=(j(a)+33|0)-j(e)|0)|0;break i}b=f+1|0,o=63-f|0;break i}Y=0,r=(e>>>0)/(i>>>0)|0;break r}if((f=j(i)-j(e)|0)>>>0<31)break f;break a}if(1==(0|a))break e;a=31&(i=Qj(a)),(63&i)>>>0>=32?r=e>>>a|0:(f=e>>>a|0,r=((1<<a)-1&e)<<32-a|r>>>a),Y=f;break r}b=f+1|0,o=63-f|0}if(t=31&(f=63&b),f>>>0>=32?(f=0,n=e>>>t|0):(f=e>>>t|0,n=((1<<t)-1&e)<<32-t|r>>>t),t=31&(o&=63),o>>>0>=32?(e=r<<t,r=0):(e=(1<<t)-1&r>>>32-t|e<<t,r<<=t),b)for(t=i-1|0,s=-1!=(0|(o=a-1|0))?t+1|0:t;A=f<<1|n>>>31,n=(f=n<<1|e>>>31)-(k=a&(t=s-(A+(f>>>0>o>>>0)|0)>>31))|0,f=A-((i&t)+(f>>>0<k>>>0)|0)|0,e=e<<1|r>>>31,r=u|r<<1,u=1&t,b=b-1|0;);Y=e<<1|r>>>31,r=u|r<<1;break r}r=0,e=0}Y=e}return r}function rc(r,e,a,i){var f,t,o=0,b=0,n=0,k=0,u=0,s=0,_=0;if(f=A[e+16>>2],k=A[a+4>>2]-f|0,o=A[a>>2]-f|0,A[a>>2]=o,A[a+4>>2]=k,t=(n=A[e+16>>2])>>>0>=(u=((b=k>>31)^k)-b|0)+(((b=o>>31)^o)-b|0)>>>0)b=k;else{r:{e:{if((0|o)>=0){if(b=1,u=1,(0|k)>=0)break r;if(s=1,b=-1,u=-1,o)break e;break r}if(s=-1,b=-1,u=-1,(0|k)<=0)break r}b=(0|k)<=0?-1:1,u=s}o=(o<<1)-(s=m(n,u))|0,b=(((u=(0|m(b,u))>=0)?0-o|0:o)+(n=m(b,n))|0)/2|0,A[a+4>>2]=b,_=a,a=(k<<1)-n|0,o=(s+(u?0-a|0:a)|0)/2|0,A[_>>2]=o,n=A[e+16>>2]}if(a=A[i+4>>2]+b|0,(0|n)<(0|(o=A[i>>2]+o|0))?o=o-A[e+4>>2]|0:(0-n|0)<=(0|o)||(o=A[e+4>>2]+o|0),(0|a)>(0|n)?a=a-A[e+4>>2]|0:(0-n|0)<=(0|a)||(a=A[e+4>>2]+a|0),t)n=a;else{r:{e:{if((0|o)>=0){if(e=1,b=1,(0|a)>=0)break r;if(i=1,e=-1,b=-1,o)break e;break r}if(i=-1,e=-1,b=-1,(0|a)<=0)break r}e=(0|a)<=0?-1:1,b=i}k=(o<<1)-(i=m(b,n))|0,n=(((b=(0|m(e,b))>=0)?0-k|0:k)+(e=m(e,n))|0)/2|0,e=(a<<1)-e|0,o=(i+(b?0-e|0:e)|0)/2|0}A[(a=r)>>2]=o+f,A[a+4>>2]=n+f}function se(r,e,a,i){var f=0,t=0,o=0,b=0,n=0,k=0;r:{e:{a:if(e){if((0|i)<0)break r;i:if(!((0|i)<=0&a>>>0<=(o=(f=A[r+4>>2])-(t=A[r>>2])|0)>>>0|(0|i)<0))if(a>>>0>o>>>0){if((i=a-o|0)>>>0<=(b=A[r+8>>2])-f>>>0){n=r,k=ra(f,0,i)+i|0,A[n+4>>2]=k;break i}if((0|a)<0)break e;if(b=(f=b-t|0)<<1,ra((b=pa(f=f>>>0>=1073741823?2147483647:a>>>0<b>>>0?b:a))+o|0,0,i),i=va(b,t,o),A[r+8>>2]=i+f,A[r+4>>2]=a+i,A[r>>2]=i,!t)break i;oa(t)}else a>>>0>=o>>>0||(A[r+4>>2]=a+t);a&&va(A[r>>2],e,a)}else{if((0|i)<0)break r;if(a>>>0>(i=(t=A[r+4>>2])-(e=A[r>>2])|0)>>>0){if((o=a-i|0)>>>0<=(f=A[r+8>>2])-t>>>0){n=r,k=ra(t,0,o)+o|0,A[n+4>>2]=k;break a}if((0|a)<0)break e;if(f=(t=f-e|0)<<1,ra((f=pa(t=t>>>0>=1073741823?2147483647:a>>>0<f>>>0?f:a))+i|0,0,o),i=va(f,e,i),A[r+8>>2]=i+t,A[r+4>>2]=a+i,A[r>>2]=i,!e)break a;oa(e);break a}if(a>>>0>=i>>>0)break a;A[r+4>>2]=e+a}e=A[r+28>>2],e=(a=A[r+24>>2]+1|0)?e:e+1|0,A[r+24>>2]=a,A[r+28>>2]=e,o=1;break r}sa(),v()}return o}function Re(r,e,a){r|=0,e|=0,a|=0;var i,f=0,t=0,o=0,b=0,n=0,u=R(0),s=0,d=0,m=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0;if(Q=i=Q-16|0,9==A[a+28>>2]){if(f=A[r+4>>2],o=pa(t=(n=k[a+24|0])<<2),A[(d=i+8|0)>>2]=1065353216,u=_[r+20>>2],(0|(f=~(-1<<f)))>0&&(_[d>>2]=u/R(0|f)),(j=(0|f)>0)&&(s=A[a+80>>2]))if(n)for(D=A[A[e>>2]>>2]+A[e+48>>2]|0,V=254&n,W=1&n,e=0;;){if(m=A[r+8>>2],u=_[d>>2],f=0,h=0,1!=(0|n))for(;U=(e<<2)+D|0,_[(b=f<<2)+o>>2]=R(u*R(A[U>>2]))+_[b+m>>2],_[(b|=4)+o>>2]=R(u*R(A[U+4>>2]))+_[b+m>>2],f=f+2|0,e=e+2|0,(0|V)!=(0|(h=h+2|0)););if(W&&(_[(f<<=2)+o>>2]=R(u*R(A[(e<<2)+D>>2]))+_[f+m>>2],e=e+1|0),qa(A[A[a+64>>2]>>2]+T|0,o,t),T=t+T|0,(0|(N=N+1|0))==(0|s))break}else{if(e=0,1!=(0|s))for(r=-2&s,f=0;qa(A[A[a+64>>2]>>2]+e|0,o,t),qa((e=e+t|0)+A[A[a+64>>2]>>2]|0,o,t),e=e+t|0,(0|r)!=(0|(f=f+2|0)););1&s&&qa(A[A[a+64>>2]>>2]+e|0,o,t)}oa(o)}return Q=i+16|0,0|j}function Wa(r,e){var a,i=0,f=0,t=0,o=0,b=0,n=0;Q=a=Q-16|0;r:{e:if((t=A[r+4>>2])>>>0<e>>>0){if((f=e-t|0)>>>0>(o=(i=A[r+8>>2])<<5)>>>0|t>>>0>o-f>>>0){if(A[a+8>>2]=0,A[a>>2]=0,A[a+4>>2]=0,(0|e)<0)break r;pb(a,e=o>>>0<=1073741822?(e=e+31&-32)>>>0<(i<<=6)>>>0?i:e:2147483647),t=A[r+4>>2],A[a+4>>2]=t+f,n=A[r>>2],e=A[a>>2],(0|t)<=0||(i=t>>>5|0,t>>>0>=32&&va(e,n,i<<2),e=(o=i<<2)+e|0,(b=31&t)&&(i=-1>>>32-b|0,A[e>>2]=A[e>>2]&~i|A[n+o>>2]&i),n=A[r>>2]),A[r>>2]=A[a>>2],A[a>>2]=n,i=A[r+4>>2],A[r+4>>2]=A[a+4>>2],A[a+4>>2]=i,i=A[r+8>>2],A[r+8>>2]=A[a+8>>2],A[a+8>>2]=i,n&&oa(n)}else A[r+4>>2]=e,b=31&t,e=A[r>>2]+(t>>>3&536870908)|0;if(!f)break e;if(b&&(r=(i=32-b|0)>>>0<f>>>0?i:f,A[e>>2]=A[e>>2]&~(-1<<b&-1>>>i-r),f=f-r|0,e=e+4|0),r=f>>>5|0,f>>>0>=32&&ra(e,0,r<<2),(-32&f)==(0|f))break e;A[(r=(r<<2)+e|0)>>2]=A[r>>2]&~(-1>>>32-(31&f))}else A[r+4>>2]=e;return void(Q=a+16|0)}sa(),v()}function Je(r,e,a){e|=0,a|=0;var i=0,f=0,t=0,o=0,b=0,n=0,u=0;return(i=(f=A[(r|=0)+12>>2])-(n=A[r+8>>2])>>2)>>>0<(e=k[e+24|0])>>>0?(ya(r+8|0,e-i|0),n=A[r+8>>2],f=A[r+12>>2]):e>>>0>=i>>>0||(f=(e<<2)+n|0,A[r+12>>2]=f),e=0,t=A[a+8>>2],b=A[a+12>>2],u=A[a+20>>2],t>>>0<(o=(f=f-n|0)+(i=A[a+16>>2])|0)>>>0&(0|b)<=(0|(u=f>>>0>o>>>0?u+1|0:u))|(0|b)<(0|u)||(qa(n,i+A[a>>2]|0,f),i=A[a+20>>2],i=(o=f)>>>0>(f=f+A[a+16>>2]|0)>>>0?i+1|0:i,A[a+16>>2]=f,A[a+20>>2]=i,(t=A[a+8>>2])>>>0<(o=f+4|0)>>>0&(0|(i=o>>>0<4?i+1|0:i))>=(0|(b=A[a+12>>2]))|(0|i)>(0|b)||(i=f+A[a>>2]|0,A[r+20>>2]=k[0|i]|k[i+1|0]<<8|k[i+2|0]<<16|k[i+3|0]<<24,o=i=A[a+20>>2],t=i,t=(i=(f=A[a+16>>2])+4|0)>>>0<4?t+1|0:t,A[a+16>>2]=i,A[a+20>>2]=t,(0|t)>=(0|(b=A[a+12>>2]))&i>>>0>=s[a+8>>2]|(0|t)>(0|b)||(t=k[i+A[a>>2]|0],i=o,i=(f=f+5|0)>>>0<5?i+1|0:i,A[a+16>>2]=f,A[a+20>>2]=i,t-1>>>0>29||(A[r+4>>2]=t,e=1)))),0|e}function qd(r,e){var a=0,i=0,f=0,t=0,o=0,b=0,n=0,k=0,u=0,s=0;r:{if((0|(t=A[r+4>>2]))==A[r>>2])if((o=A[r+8>>2])>>>0<(a=A[r+12>>2])>>>0)a=(f=(1+(a-o>>2)|0)/2<<2)+o|0,(0|t)!=(0|o)&&(va(a=a-(i=o-t|0)|0,t,i),t=A[r+8>>2]),A[r+4>>2]=a,A[r+8>>2]=f+t;else{if((i=(0|a)==(0|t)?1:a-t>>1)>>>0>=1073741824)break r;if(u=(n=pa(a=i<<2))+a|0,b=a=(i+3&-4)+n|0,(0|t)!=(0|o)){if(s=-4&(o=o-t|0),f=a,i=t,o=1+((k=o-4|0)>>>2|0)&7)for(b=0;A[f>>2]=A[i>>2],i=i+4|0,f=f+4|0,(0|o)!=(0|(b=b+1|0)););if(b=a+s|0,!(k>>>0<28))for(;A[f>>2]=A[i>>2],A[f+4>>2]=A[i+4>>2],A[f+8>>2]=A[i+8>>2],A[f+12>>2]=A[i+12>>2],A[f+16>>2]=A[i+16>>2],A[f+20>>2]=A[i+20>>2],A[f+24>>2]=A[i+24>>2],A[f+28>>2]=A[i+28>>2],i=i+32|0,(0|b)!=(0|(f=f+32|0)););}A[r+12>>2]=u,A[r+8>>2]=b,A[r+4>>2]=a,A[r>>2]=n,t&&(oa(t),a=A[r+4>>2])}else a=t;return A[a-4>>2]=A[e>>2],void(A[r+4>>2]=A[r+4>>2]-4)}wa(),v()}function sb(r,e){var a=0;return ta(r,e)&&ta(r+16|0,e)&&ta(r+32|0,e)&&ta(r+48|0,e)&&ta(r- -64|0,e)&&ta(r+80|0,e)&&ta(r+96|0,e)&&ta(r+112|0,e)&&ta(r+128|0,e)&&ta(r+144|0,e)&&ta(r+160|0,e)&&ta(r+176|0,e)&&ta(r+192|0,e)&&ta(r+208|0,e)&&ta(r+224|0,e)&&ta(r+240|0,e)&&ta(r+256|0,e)&&ta(r+272|0,e)&&ta(r+288|0,e)&&ta(r+304|0,e)&&ta(r+320|0,e)&&ta(r+336|0,e)&&ta(r+352|0,e)&&ta(r+368|0,e)&&ta(r+384|0,e)&&ta(r+400|0,e)&&ta(r+416|0,e)&&ta(r+432|0,e)&&ta(r+448|0,e)&&ta(r+464|0,e)&&ta(r+480|0,e)&&ta(r+496|0,e)&&(a=ta(r+512|0,e)),a}function he(r,e,a,i){var f,t=0,o=0,b=0,n=0,k=0,u=0,s=0,d=0;k=+_[e>>2],u=+_[e+4>>2],s=+_[e+8>>2],(b=h(k)+h(u)+h(s))>1e-6?(u*=b=1/b,k*=b,t=b*s<0):(k=1,u=0,t=0),f=A[r+16>>2],b=T(k*(s=+(0|f))+.5),n=((o=(d=h(b)<2147483648?~~b:-2147483648)>>31)^d)-o|0,b=T(u*s+.5),n=(0|(e=f-(n+(((o=h(b)<2147483648?~~b:-2147483648)^(e=o>>31))-e|0)|0)|0))>0?e:0,t=t?0-n|0:n,o=o+(e>>31&((0|o)>0?e:0-e))|0,(0|d)>=0?(e=t+f|0,r=A[r+8>>2],t=f+o|0):(e=((e=o>>31)^o)-e|0,r=A[r+8>>2],e=(0|t)<0?e:r-e|0,t=(0|o)<0?n:r-n|0),e|t&&(0|r)!=(0|e)|t&&(0|r)!=(0|t)|e?(0|e)<=(0|f)|t?(0|r)!=(0|t)|(0|e)>=(0|f)?(0|r)!=(0|e)|(0|t)>=(0|f)?e?r=t:(e=0,r=(0|t)<=(0|f)?t:(f<<1)-t|0):(e=r,r=(f<<1)-t|0):e=(f<<1)-e|0:(e=(f<<1)-e|0,r=0):e=r,A[a>>2]=r,A[i>>2]=e}function Ve(r,e){r|=0;var a,i,f=0,t=0,o=0,b=0,n=0,s=0,_=0,d=0,m=0;n=A[(e|=0)+8>>2],a=A[e+12>>2],s=f=A[e+20>>2];r:if(!((t=(i=A[e+16>>2])+4|0)>>>0>n>>>0&(0|(f=t>>>0<4?f+1|0:f))>=(0|a)|(0|f)>(0|a)||(d=A[e>>2],o=k[0|(b=i+d|0)]|k[b+1|0]<<8|k[b+2|0]<<16|k[b+3|0]<<24,A[e+16>>2]=t,A[e+20>>2]=f,f=s,(b=i+8|0)>>>0>n>>>0&(0|(f=b>>>0<8?f+1|0:f))>=(0|a)|(0|f)>(0|a)||(_=k[0|(t=t+d|0)]|k[t+1|0]<<8|k[t+2|0]<<16|k[t+3|0]<<24,A[e+16>>2]=b,A[e+20>>2]=f,(0|o)>(0|_)||(A[r+16>>2]=_,A[r+12>>2]=o,t=_-o|0,!(o=(_>>31)-((o>>31)+(o>>>0>_>>>0)|0)|0)&t>>>0>2147483646|o))))){if(t=t+1|0,A[r+20>>2]=t,o=t>>>1|0,A[r+24>>2]=o,A[r+28>>2]=0-o,1&t||(A[r+24>>2]=o-1),u[e+38>>1]<=513){if((0|f)>=(0|a)&b>>>0>=n>>>0|(0|f)>(0|a))break r;if(n=k[b+d|0],f=s,f=(s=i+9|0)>>>0<9?f+1|0:f,A[e+16>>2]=s,A[e+20>>2]=f,n>>>0>1)break r;A[r+88>>2]=n}m=ta(r+112|0,e)}return 0|m}function Hc(r,e){var a,i,f,t=0,o=0,n=0;i=A[r>>2],A[(t=i+(e>>>3&536870908)|0)>>2]=A[t>>2]|1<<e,a=A[r+64>>2],o=-1,(n=-1==(0|e))||(o=-1,-1!=(0|(t=((t=e+1|0)>>>0)%3|0?t:e-2|0))&&(o=A[A[a>>2]+(t<<2)>>2])),t=A[r+12>>2],A[(f=(o>>>3&536870908)+t|0)>>2]=A[f>>2]|1<<o;r:{if(n)r=t+536870908|0,e=A[t+536870908>>2],t=-2147483648;else{e:{if((e>>>0)%3|0)n=e-1|0;else if(o=-1,-1==(0|(n=e+2|0)))break e;o=A[A[a>>2]+(n<<2)>>2]}if(A[(n=(o>>>3&536870908)+t|0)>>2]=A[n>>2]|1<<o,o=-1,-1==(0|(e=A[A[a+12>>2]+(e<<2)>>2])))break r;b[r+24|0]=0,A[(r=(e>>>3&536870908)+i|0)>>2]=A[r>>2]|1<<e,-1!=(0|(r=((r=e+1|0)>>>0)%3|0?r:e-2|0))&&(o=A[A[a>>2]+(r<<2)>>2]),A[(r=t+(o>>>3&536870908)|0)>>2]=A[r>>2]|1<<o;e:{if((e>>>0)%3|0)e=e-1|0;else if(r=-1,-1==(0|(e=e+2|0)))break e;r=A[A[a>>2]+(e<<2)>>2]}e=1<<r,t=A[(r=t+(r>>>3&536870908)|0)>>2]}A[r>>2]=e|t}}function Fd(r,e,a){r|=0,e|=0,a|=0;var i=0,f=R(0),t=R(0),o=R(0),n=R(0),u=R(0),s=0,_=R(0),d=R(0),m=R(0),j=R(0),D=0;if(!(9!=A[a+28>>2]|3!=k[a+24|0])&&!((r=A[r+4>>2])-2>>>0>28)&&(D=1,s=A[a+80>>2]))for(_=R(R(2)/R((1<<r)-2|0)),a=A[A[a>>2]>>2]+A[a+48>>2]|0,r=A[A[e>>2]>>2]+A[e+48>>2]|0,e=0;o=R(0),d=R(0),m=R(0),f=R(R(R(A[r>>2])*_)+R(-1)),t=R(R(R(A[r+4>>2])*_)+R(-1)),u=R(R(R(1)-R(h(f)))-R(h(t))),n=R(U(R(-u),R(0))),j=R(-n),t=R(t+(t<R(0)?n:j)),f=R(f+(f<R(0)?n:j)),+(n=R(R(t*t)+R(R(u*u)+R(f*f))))<1e-6||(o=R(R(1)/R(V(n))),m=R(t*o),d=R(f*o),o=R(u*o)),r=r+8|0,w(m),i=y(2),b[a+8|0]=i,b[a+9|0]=i>>>8,b[a+10|0]=i>>>16,b[a+11|0]=i>>>24,w(d),i=y(2),b[a+4|0]=i,b[a+5|0]=i>>>8,b[a+6|0]=i>>>16,b[a+7|0]=i>>>24,w(o),i=y(2),b[0|a]=i,b[a+1|0]=i>>>8,b[a+2|0]=i>>>16,b[a+3|0]=i>>>24,a=a+12|0,(0|s)!=(0|(e=e+1|0)););return 0|D}function Vd(r,e,a){var i=0,f=0,t=0,o=0,b=0,n=0,k=0;r:if(e>>>0<=63){if(e=0,(r=A[r+12>>2])>>>0<2)break r;if(f=3&(e=r-1|0),i=A[a>>2],a=0,r-2>>>0<3)r=1,e=0;else for(t=-4&e,e=0,r=1;o=r+3|0,b=r+2|0,n=r+1|0,e=s[i+(e<<2)>>2]>s[i+(r<<2)>>2]?r:e,e=s[i+(e<<2)>>2]>s[i+(n<<2)>>2]?n:e,e=s[i+(e<<2)>>2]>s[i+(b<<2)>>2]?b:e,e=s[i+(e<<2)>>2]>s[i+(o<<2)>>2]?o:e,r=r+4|0,(0|t)!=(0|(k=k+4|0)););if(!f)break r;for(;e=s[i+(e<<2)>>2]>s[i+(r<<2)>>2]?r:e,r=r+1|0,(0|f)!=(0|(a=a+1|0)););}else{if((0|(i=32-(e=A[r+580>>2])|0))>=4){if((0|(a=A[r+576>>2]))==A[r+568>>2])return 0;if(i=A[a>>2],f=e+4|0,A[r+580>>2]=f,e=i<<e>>>28|0,32!=(0|f))break r;return A[r+580>>2]=0,A[r+576>>2]=a+4,e}if((0|(f=(a=A[r+576>>2])+4|0))==A[r+568>>2])return 0;t=A[a>>2],A[r+576>>2]=f,A[r+580>>2]=e-28,r=60-e|0,e=A[a+4>>2]>>>r|t<<e>>>r-i}return e}function Ae(r){var e,a=0,i=0,f=0;if(A[(r|=0)>>2]=11436,(a=A[r+388>>2])&&(A[r+392>>2]=a,oa(a)),e=A[r+368>>2],A[r+368>>2]=0,e){if(a=A[(f=e-4|0)>>2])for(i=(a<<4)+e|0;(0|e)!=(0|(i=i-16|0)););oa(f)}if(Yc(r+216|0),(a=A[r+196>>2])&&(A[r+200>>2]=a,oa(a)),(a=A[r+184>>2])&&(A[r+188>>2]=a,oa(a)),(a=A[r+172>>2])&&(A[r+176>>2]=a,oa(a)),(a=A[r+160>>2])&&(A[r+164>>2]=a,oa(a)),i=A[r+144>>2])for(;a=A[i>>2],oa(i),i=a,a;);return a=A[r+136>>2],A[r+136>>2]=0,a&&oa(a),(a=A[r+120>>2])&&oa(a),(a=A[r+108>>2])&&oa(a),(a=A[r+96>>2])&&oa(a),(a=A[r+72>>2])&&(A[r+76>>2]=a,oa(a)),(a=A[r+60>>2])&&oa(a),(a=A[r+48>>2])&&(A[r+52>>2]=a,oa(a)),(a=A[r+36>>2])&&(A[r+40>>2]=a,oa(a)),(a=A[r+24>>2])&&(A[r+28>>2]=a,oa(a)),(a=A[r+12>>2])&&(A[r+16>>2]=a,oa(a)),a=A[r+8>>2],A[r+8>>2]=0,a&&cb(a),0|r}function Be(r){var e,a=0,i=0,f=0;if(A[(r|=0)>>2]=11384,e=A[r+368>>2],A[r+368>>2]=0,e){if(a=A[(f=e-4|0)>>2])for(i=(a<<4)+e|0;(0|e)!=(0|(i=i-16|0)););oa(f)}if(Yc(r+216|0),(a=A[r+196>>2])&&(A[r+200>>2]=a,oa(a)),(a=A[r+184>>2])&&(A[r+188>>2]=a,oa(a)),(a=A[r+172>>2])&&(A[r+176>>2]=a,oa(a)),(a=A[r+160>>2])&&(A[r+164>>2]=a,oa(a)),i=A[r+144>>2])for(;a=A[i>>2],oa(i),i=a,a;);return a=A[r+136>>2],A[r+136>>2]=0,a&&oa(a),(a=A[r+120>>2])&&oa(a),(a=A[r+108>>2])&&oa(a),(a=A[r+96>>2])&&oa(a),(a=A[r+72>>2])&&(A[r+76>>2]=a,oa(a)),(a=A[r+60>>2])&&oa(a),(a=A[r+48>>2])&&(A[r+52>>2]=a,oa(a)),(a=A[r+36>>2])&&(A[r+40>>2]=a,oa(a)),(a=A[r+24>>2])&&(A[r+28>>2]=a,oa(a)),(a=A[r+12>>2])&&(A[r+16>>2]=a,oa(a)),a=A[r+8>>2],A[r+8>>2]=0,a&&cb(a),0|r}function fd(r,e){var a=0,i=0;a=A[e+8>>2],A[r+4>>2]=A[e+4>>2],A[r+8>>2]=a,A[r+20>>2]=A[e+20>>2],a=A[e+16>>2],A[r+12>>2]=A[e+12>>2],A[r+16>>2]=a;r:{e:{if((0|r)!=(0|e)){if(a=A[e+28>>2]){if(i=A[r+24>>2],A[r+32>>2]<<5>>>0<a>>>0){if(i&&(oa(i),A[r+32>>2]=0,A[r+24>>2]=0,A[r+28>>2]=0,a=A[e+28>>2]),(0|a)<0)break e;i=pa((a=1+(a-1>>>5|0)|0)<<2),A[r+32>>2]=a,A[r+28>>2]=0,A[r+24>>2]=i,a=A[e+28>>2]}va(i,A[e+24>>2],4+(a-1>>>3&536870908)|0),a=A[e+28>>2]}else a=0;if(A[r+28>>2]=a,a=A[e+40>>2]){if(i=A[r+36>>2],A[r+44>>2]<<5>>>0<a>>>0){if(i&&(oa(i),A[r+44>>2]=0,A[r+36>>2]=0,A[r+40>>2]=0,a=A[e+40>>2]),(0|a)<0)break r;i=pa((a=1+(a-1>>>5|0)|0)<<2),A[r+44>>2]=a,A[r+40>>2]=0,A[r+36>>2]=i,a=A[e+40>>2]}va(i,A[e+36>>2],4+(a-1>>>3&536870908)|0),e=A[e+40>>2]}else e=0;A[r+40>>2]=e}return}sa(),v()}sa(),v()}function uc(r){var e,a=0,i=0;a=A[r+8>>2],e=A[r>>2];r:{if(k[r+12|0]){e:{if(-1!=(0|a)&&-1!=(0|(a=((i=a+1|0)>>>0)%3|0?i:a-2|0))&&-1!=(0|(a=A[A[e+12>>2]+(a<<2)>>2]))){if(a=((i=a+1|0)>>>0)%3|0?i:a-2|0,A[r+8>>2]=a,-1!=(0|a))break e}else A[r+8>>2]=-1;a=-1;a:if(-1!=(0|(i=A[r+4>>2]))){if((i>>>0)%3|0)i=i-1|0;else if(a=-1,-1==(0|(i=i+2|0)))break a;a=-1,-1!=(0|(i=A[A[e+12>>2]+(i<<2)>>2]))&&(a=i-1|0,(i>>>0)%3|0||(a=i+2|0))}return b[r+12|0]=0,void(A[r+8>>2]=a)}if((0|a)!=A[r+4>>2])break r;return void(A[r+8>>2]=-1)}i=-1;e:if(-1!=(0|a)){if((a>>>0)%3|0)a=a-1|0;else if(i=-1,-1==(0|(a=a+2|0)))break e;i=-1,-1!=(0|(a=A[A[e+12>>2]+(a<<2)>>2]))&&(i=a-1|0,(a>>>0)%3|0||(i=a+2|0))}A[r+8>>2]=i}}function Te(r,e){r|=0;var a,i=0,f=0,t=0,o=0,b=0,n=0,s=0,d=0,m=0;b=A[(e|=0)+8>>2],a=A[e+12>>2],n=i=A[e+20>>2];r:if(!((f=(t=A[e+16>>2])+4|0)>>>0>b>>>0&(0|(i=f>>>0<4?i+1|0:i))>=(0|a)|(0|i)>(0|a))){if(s=A[e>>2],o=k[0|(o=t+s|0)]|k[o+1|0]<<8|k[o+2|0]<<16|k[o+3|0]<<24,A[e+16>>2]=f,A[e+20>>2]=i,(d=u[e+38>>1])>>>0<=513){if(i=n,(f=t+8|0)>>>0>b>>>0&(0|(i=f>>>0<8?i+1|0:i))>=(0|a)|(0|i)>(0|a))break r;A[e+16>>2]=f,A[e+20>>2]=i}if(1&o&&!((t=31^j(o))-1>>>0>28)){if(A[r+8>>2]=t+1,t=-2^(n=-2<<t),A[r+16>>2]=t,A[r+12>>2]=~n,A[r+24>>2]=t>>1,_[r+20>>2]=R(2)/R(0|t),d>>>0<=513){if((0|i)>=(0|a)&f>>>0>=b>>>0|(0|i)>(0|a))break r;if(b=k[f+s|0],i=(f=f+1|0)?i:i+1|0,A[e+16>>2]=f,A[e+20>>2]=i,b>>>0>1)break r;A[r+72>>2]=b}m=ta(r+96|0,e)}}return 0|m}function Se(r,e){r|=0;var a,i,f=0,t=0,o=0,b=0,n=0,s=0,d=0,m=0;b=A[(e|=0)+8>>2],a=A[e+12>>2],n=f=A[e+20>>2];r:if(!((o=(i=A[e+16>>2])+4|0)>>>0>b>>>0&(0|(f=o>>>0<4?f+1|0:f))>=(0|a)|(0|f)>(0|a))&&(s=A[e>>2],t=k[0|(t=i+s|0)]|k[t+1|0]<<8|k[t+2|0]<<16|k[t+3|0]<<24,A[e+16>>2]=o,A[e+20>>2]=f,f=n,!((o=i+8|0)>>>0>b>>>0&(0|(f=o>>>0<8?f+1|0:f))>=(0|a)|(0|f)>(0|a))&&(A[e+16>>2]=o,A[e+20>>2]=f,1&t&&!((t=31^j(t))-1>>>0>28)))){if(A[r+8>>2]=t+1,t=-2^(d=-2<<t),A[r+16>>2]=t,A[r+12>>2]=~d,A[r+24>>2]=t>>1,_[r+20>>2]=R(2)/R(0|t),u[e+38>>1]<=513){if((0|f)>=(0|a)&o>>>0>=b>>>0|(0|f)>(0|a))break r;if(f=k[o+s|0],n=(b=i+9|0)>>>0<9?n+1|0:n,A[e+16>>2]=b,A[e+20>>2]=n,f>>>0>1)break r;A[r+72>>2]=f}m=ta(r+96|0,e)}return 0|m}function va(r,e,a){var i=0,f=0;r:if((0|r)!=(0|e)){if(e-(f=r+a|0)>>>0<=0-(a<<1)>>>0)return qa(r,e,a);if(i=3&(r^e),r>>>0<e>>>0){if(i)i=r;else{if(3&r)for(i=r;;){if(!a)break r;if(b[0|i]=k[0|e],e=e+1|0,a=a-1|0,!(3&(i=i+1|0)))break}else i=r;if(!(a>>>0<=3))for(;A[i>>2]=A[e>>2],e=e+4|0,i=i+4|0,(a=a-4|0)>>>0>3;);}if(a)for(;b[0|i]=k[0|e],i=i+1|0,e=e+1|0,a=a-1|0;);}else{if(!i){if(3&f)for(;;){if(!a)break r;if(b[0|(i=(a=a-1|0)+r|0)]=k[e+a|0],!(3&i))break}if(!(a>>>0<=3))for(;A[(a=a-4|0)+r>>2]=A[e+a>>2],a>>>0>3;);}if(!a)break r;for(;b[(a=a-1|0)+r|0]=k[e+a|0],a;);}}return r}function Vb(r,e){var a=0,i=0,f=0,t=0,o=0,b=0,n=0;if((i=A[r+8>>2])-(a=A[r+4>>2])>>2>>>0>=e>>>0)return e&&(a=ra(a,0,e<<=2)+e|0),void(A[r+4>>2]=a);r:{e:{a:{if((f=(t=a-(o=A[r>>2])>>2)+e|0)>>>0<1073741824){if(b=(i=i-o|0)>>>1|0,f=i>>>0>=2147483644?1073741823:f>>>0<b>>>0?b:f){if(f>>>0>=1073741824)break a;n=pa(f<<2)}if(t=(e=ra(i=(t<<2)+n|0,0,t=e<<2))+t|0,f=(f<<2)+n|0,(0|a)==(0|o))break e;for(;e=A[(a=a-4|0)>>2],A[a>>2]=0,A[(i=i-4|0)>>2]=e,(0|a)!=(0|o););if(A[r+8>>2]=f,e=A[r+4>>2],A[r+4>>2]=t,a=A[r>>2],A[r>>2]=i,(0|e)==(0|a))break r;for(;r=A[(e=e-4|0)>>2],A[e>>2]=0,r&&M[A[A[r>>2]+4>>2]](r),(0|e)!=(0|a););break r}sa(),v()}wa(),v()}A[r+8>>2]=f,A[r+4>>2]=t,A[r>>2]=e}a&&oa(a)}function Md(r,e,a){r:switch(e-9|0){case 0:return e=A[a>>2],A[a>>2]=e+4,void(A[r>>2]=A[e>>2]);case 6:return e=A[a>>2],A[a>>2]=e+4,e=n[e>>1],A[r>>2]=e,void(A[r+4>>2]=e>>31);case 7:return e=A[a>>2],A[a>>2]=e+4,A[r>>2]=u[e>>1],void(A[r+4>>2]=0);case 8:return e=A[a>>2],A[a>>2]=e+4,e=b[0|e],A[r>>2]=e,void(A[r+4>>2]=e>>31);case 9:return e=A[a>>2],A[a>>2]=e+4,A[r>>2]=k[0|e],void(A[r+4>>2]=0);case 16:return e=A[a>>2]+7&-8,A[a>>2]=e+8,void(d[r>>3]=d[e>>3]);case 17:v();default:return;case 1:case 4:case 14:return e=A[a>>2],A[a>>2]=e+4,e=A[e>>2],A[r>>2]=e,void(A[r+4>>2]=e>>31);case 2:case 5:case 11:case 15:return e=A[a>>2],A[a>>2]=e+4,A[r>>2]=A[e>>2],void(A[r+4>>2]=0);case 3:case 10:case 12:case 13:break r}e=A[a>>2]+7&-8,A[a>>2]=e+8,a=A[e+4>>2],A[r>>2]=A[e>>2],A[r+4>>2]=a}function Ed(r,e){var a,i,f=0;Q=a=Q+-64|0,f=A[r>>2],i=A[f-4>>2],f=A[f-8>>2],A[a+32>>2]=0,A[a+36>>2]=0,A[a+40>>2]=0,A[a+44>>2]=0,A[a+48>>2]=0,A[a+52>>2]=0,b[a+55|0]=0,b[a+56|0]=0,b[a+57|0]=0,b[a+58|0]=0,b[a+59|0]=0,b[a+60|0]=0,b[a+61|0]=0,b[a+62|0]=0,A[a+24>>2]=0,A[a+28>>2]=0,A[a+20>>2]=0,A[a+16>>2]=14924,A[a+12>>2]=r,A[a+8>>2]=e,r=r+f|0,f=0;r:if(Ya(i,e,0))A[a+56>>2]=1,M[A[A[i>>2]+20>>2]](i,a+8|0,r,r,1,0),f=1==A[a+32>>2]?r:0;else{M[A[A[i>>2]+24>>2]](i,a+8|0,r,1,0);e:switch(A[a+44>>2]){case 0:f=1==A[a+48>>2]&&1==A[a+36>>2]&&1==A[a+40>>2]?A[a+28>>2]:0;break r;case 1:break e;default:break r}1!=A[a+32>>2]&&A[a+48>>2]|1!=A[a+36>>2]|1!=A[a+40>>2]||(f=A[a+24>>2])}return Q=a- -64|0,f}function ua(r,e){var a=0,i=0,f=0,t=0,o=0,b=0,n=0;return A[r+16>>2]=0,f=A[r>>2],A[r+4>>2]=f,A[r+12>>2]=f,f=A[e+8>>2],b=a=A[e+12>>2],i=A[e+20>>2],f>>>0<(o=(t=A[e+16>>2])+4|0)>>>0&(0|(i=o>>>0<4?i+1|0:i))>=(0|a)|(0|i)>(0|a)||(a=t+A[e>>2]|0,a=k[0|a]|k[a+1|0]<<8|k[a+2|0]<<16|k[a+3|0]<<24,A[e+16>>2]=o,A[e+20>>2]=i,!a|3&a||f-o>>>0<a>>>0&(0|(t=b-(i+(f>>>0<o>>>0)|0)|0))<=0|(0|t)<0||(a>>>0>=4&&(ya(r,a>>>2|0),b=A[e+12>>2],o=A[e+16>>2],i=A[e+20>>2],f=A[e+8>>2]),f>>>0<(t=a+o|0)>>>0&(0|(i=t>>>0<a>>>0?i+1|0:i))>=(0|b)|(0|i)>(0|b)||(qa(A[r>>2],A[e>>2]+o|0,a),i=A[e+20>>2],i=(f=a+A[e+16>>2]|0)>>>0<a>>>0?i+1|0:i,A[e+16>>2]=f,A[e+20>>2]=i,A[r+16>>2]=0,A[r+12>>2]=A[r>>2],n=1))),n}function de(r,e){var a=0,i=0,f=0,t=0;i=-1,f=-1,t=-1;r:{e:if(-1!=(0|e)){if(f=A[A[A[r+4>>2]+12>>2]+(e<<2)>>2],(0|(a=((a=e+1|0)>>>0)%3|0?a:e-2|0))>=0&&(t=(a>>>0)/3|0,t=A[(A[A[r>>2]+96>>2]+m(t,12)|0)+(a-m(t,3)<<2)>>2]),-1!=(0|f)&&((0|(a=((f>>>0)%3|0?-1:2)+f|0))<0||(i=(a>>>0)/3|0,i=A[(A[A[r>>2]+96>>2]+m(i,12)|0)+(a-m(i,3)<<2)>>2])),a=-1,(0|i)!=(0|t))break r;if(t=-1,(0|(e=((e>>>0)%3|0?-1:2)+e|0))>=0){if(i=(e>>>0)/3|0,i=A[(A[A[r>>2]+96>>2]+m(i,12)|0)+(e-m(i,3)<<2)>>2],-1==(0|f))break e}else if(i=-1,-1==(0|f))break e;(0|(e=((e=f+1|0)>>>0)%3|0?e:f-2|0))<0||(a=A[A[r>>2]+96>>2],t=A[(a+m(r=(e>>>0)/3|0,12)|0)+(e-m(r,3)<<2)>>2])}a=(0|i)!=(0|t)?-1:f}return a}function ra(r,e,a){var i=0,f=0,t=0,o=0;if(a&&(b[0|r]=e,b[(i=r+a|0)-1|0]=e,!(a>>>0<3||(b[r+2|0]=e,b[r+1|0]=e,b[i-3|0]=e,b[i-2|0]=e,a>>>0<7||(b[r+3|0]=e,b[i-4|0]=e,a>>>0<9||(f=(i=0-r&3)+r|0,e=m(255&e,16843009),A[f>>2]=e,A[(a=(i=a-i&-4)+f|0)-4>>2]=e,i>>>0<9||(A[f+8>>2]=e,A[f+4>>2]=e,A[a-8>>2]=e,A[a-12>>2]=e,i>>>0<25||(A[f+24>>2]=e,A[f+20>>2]=e,A[f+16>>2]=e,A[f+12>>2]=e,A[a-16>>2]=e,A[a-20>>2]=e,A[a-24>>2]=e,A[a-28>>2]=e,(a=i-(o=4&f|24)|0)>>>0<32))))))))for(i=Rj(e,0,1,1),t=Y,e=f+o|0;A[e+24>>2]=i,A[e+28>>2]=t,A[e+16>>2]=i,A[e+20>>2]=t,A[e+8>>2]=i,A[e+12>>2]=t,A[e>>2]=i,A[e+4>>2]=t,e=e+32|0,(a=a-32|0)>>>0>31;);return r}function sd(r,e,a){var i=0,f=0,t=0,o=0,b=0,n=0,u=0,s=0;if(i=A[(f=r+16|0)>>2]){for(t=A[e>>2],e=f;e=(o=(0|t)>A[i+16>>2])?e:i,i=A[(o?i+4:i)>>2];);if(!((0|e)==(0|f)|(0|t)<A[e+16>>2])&&(i=A[e+24>>2]))for(t=e+20|0,o=(f=(e=k[a+11|0])<<24>>24<0)?A[a>>2]:a,e=f?A[a+4>>2]:e;;){r:{e:{a:{i:{f:{t:{if(n=(u=(f=(b=(f=k[i+27|0])<<24>>24<0)?A[i+20>>2]:f)>>>0<e>>>0)?f:e){if(s=Fa(o,b=b?A[i+16>>2]:i+16|0,n))break t;if(e>>>0>=f>>>0)break f;break r}if(e>>>0>=f>>>0)break i;break r}if((0|s)<0)break r}if(f=Fa(b,o,n))break a}if(u)break e;return Tc(t,a)}if(!((0|f)<0))return Tc(t,a)}i=i+4|0}if(!(i=A[i>>2]))break}}return Tc(r,a)}function be(r,e,a){var i,f,t=0,o=0,b=0,n=0,u=0,s=0,_=0;Q=i=Q-16|0;r:{if((0|(o=A[r+24>>2]))!=(0|(f=A[r+28>>2])))for(;;){A[i+8>>2]=0,A[i>>2]=0,A[i+4>>2]=0,r=$d(A[o>>2],e,i),n=(b=k[i+11|0])<<24>>24,u=3;e:{a:{i:if(r&&(u=0,t=(r=k[a+11|0])<<24>>24,(0|(s=(0|n)<0?A[i+4>>2]:b))==(0|((0|t)<0?A[a+4>>2]:r)))){r=(0|t)<0?A[a>>2]:a;f:if(t=(0|n)<0){if(s&&Fa(t?A[i>>2]:i,r,s))break a}else{if(t=i,!n)break f;for(;;){if(k[0|t]!=k[0|r])break i;if(r=r+1|0,t=t+1|0,!(b=b-1|0))break}}_=A[o>>2],u=1}if((0|n)>=0)break e}oa(A[i>>2])}e:switch(0|u){case 0:case 3:break e;default:break r}if((0|f)==(0|(o=o+4|0)))break}_=0}return Q=i+16|0,_}function Cb(r,e,a){var i,f=0,t=0,o=0,b=0,n=0;if((i=(o=a-e|0)>>2)>>>0<=(f=A[r+8>>2])-(t=A[r>>2])>>2>>>0){if(o=(b=(f=A[r+4>>2])-t|0)+e|0,(0|(b=(n=b>>2)>>>0<i>>>0?o:a))!=(0|e))for(;A[t>>2]=A[e>>2],t=t+4|0,(0|b)!=(0|(e=e+4|0)););if(i>>>0>n>>>0){if((0|a)!=(0|b))for(;A[f>>2]=A[o>>2],f=f+4|0,(0|(o=o+4|0))!=(0|a););return void(A[r+4>>2]=f)}A[r+4>>2]=t}else{if(t&&(A[r+4>>2]=t,oa(t),A[r+8>>2]=0,A[r>>2]=0,A[r+4>>2]=0,f=0),!((0|o)<0||(t=f>>>1|0,(f=f>>>0>=2147483644?1073741823:t>>>0>i>>>0?t:i)>>>0>=1073741824)))return f=pa(t=f<<2),A[r>>2]=f,A[r+8>>2]=f+t,(0|e)!=(0|a)&&(f=qa(f,a=e,e=4+(o-4&-4)|0)+e|0),void(A[r+4>>2]=f);sa(),v()}}function Oa(r,e,a){var i,f=0,t=0;Q=i=Q-16|0,A[r+4>>2]=0;r:{e:if(e){if((f=(t=A[r+8>>2])<<5)>>>0>=e>>>0)A[r+4>>2]=e;else{if(A[i+8>>2]=0,A[i>>2]=0,A[i+4>>2]=0,(0|e)<0)break r;pb(i,f=f>>>0<=1073741822?(f=e+31&-32)>>>0<(t<<=6)>>>0?t:f:2147483647),t=A[r>>2],A[r>>2]=A[i>>2],A[i>>2]=t,f=A[r+4>>2],A[r+4>>2]=e,A[i+4>>2]=f,f=A[r+8>>2],A[r+8>>2]=A[i+8>>2],A[i+8>>2]=f,t&&oa(t)}if(f=e>>>5|0,r=A[r>>2],k[0|a]){if(e>>>0>=32&&ra(r,255,f<<2),(-32&e)==(0|e))break e;A[(r=r+(f<<2)|0)>>2]=A[r>>2]|-1>>>32-(31&e)}else e>>>0>=32&&ra(r,0,f<<2),(-32&e)!=(0|e)&&(A[(r=r+(f<<2)|0)>>2]=A[r>>2]&~(-1>>>32-(31&e)))}return void(Q=i+16|0)}sa(),v()}function jb(r,e){var a,i,f,t,o=0,b=0,n=0,k=0;if(e=A[e>>2],i=A[e+8>>2],f=A[e+4>>2],t=A[e>>2],a=A[r>>2],(e=A[a+4>>2])>>>0<(r=A[a+8>>2])>>>0)return A[e+8>>2]=i,A[e+4>>2]=f,A[e>>2]=t,void(A[a+4>>2]=e+12);r:{if((o=(k=(e-(b=A[a>>2])|0)/12|0)+1|0)>>>0<357913942){if(r=(n=(r-b|0)/12|0)<<1,o=n>>>0>=178956970?357913941:r>>>0>o>>>0?r:o){if(o>>>0>=357913942)break r;n=pa(m(o,12))}else n=0;if(r=n+m(k,12)|0,A[r+8>>2]=i,A[r+4>>2]=f,A[r>>2]=t,k=r+12|0,(0|e)!=(0|b))for(;e=e-12|0,A[(r=r-12|0)>>2]=A[e>>2],A[r+4>>2]=A[e+4>>2],A[r+8>>2]=A[e+8>>2],(0|e)!=(0|b););return A[a+8>>2]=n+m(o,12),A[a+4>>2]=k,A[a>>2]=r,void(b&&oa(b))}sa(),v()}wa(),v()}function Aa(r,e,a){var i,f=0,t=0,o=0,b=0,n=0;if((i=(o=a-e|0)>>2)>>>0<=(f=A[r+8>>2])-(t=A[r>>2])>>2>>>0){if(f=(o=A[r+4>>2]-t|0)+e|0,n=(o=(b=o>>2)>>>0<i>>>0?f:a)-e|0,(0|e)!=(0|o)&&va(t,e,n),i>>>0>b>>>0){if(e=A[r+4>>2],(0|a)!=(0|o))for(;A[e>>2]=A[f>>2],e=e+4|0,(0|(f=f+4|0))!=(0|a););return void(A[r+4>>2]=e)}A[r+4>>2]=t+n}else{if(t&&(A[r+4>>2]=t,oa(t),A[r+8>>2]=0,A[r>>2]=0,A[r+4>>2]=0,f=0),!((0|o)<0||(t=f>>>1|0,(f=f>>>0>=2147483644?1073741823:t>>>0>i>>>0?t:i)>>>0>=1073741824)))return f=pa(t=f<<2),A[r>>2]=f,A[r+8>>2]=f+t,(0|e)!=(0|a)&&(f=qa(f,a=e,e=4+(o-4&-4)|0)+e|0),void(A[r+4>>2]=f);sa(),v()}}function Rb(r,e){var a=0,i=0,f=0,t=0,o=0,b=0;if((0|(a=A[r+4>>2]))!=A[r+8>>2])return f=A[e+4>>2],A[a>>2]=A[e>>2],A[a+4>>2]=f,A[a+8>>2]=A[e+8>>2],void(A[r+4>>2]=a+12);r:{if((f=(i=(a-(o=A[r>>2])|0)/12|0)+1|0)>>>0<357913942){if(t=i<<1,t=i>>>0>=178956970?357913941:f>>>0<t>>>0?t:f){if(t>>>0>=357913942)break r;f=pa(m(t,12))}else f=0;if(i=f+m(i,12)|0,b=A[e+4>>2],A[i>>2]=A[e>>2],A[i+4>>2]=b,A[i+8>>2]=A[e+8>>2],e=i+12|0,(0|a)!=(0|o)){for(;b=A[(a=a-12|0)+4>>2],A[(i=i-12|0)>>2]=A[a>>2],A[i+4>>2]=b,A[i+8>>2]=A[a+8>>2],(0|a)!=(0|o););a=A[r>>2]}return A[r+8>>2]=f+m(t,12),A[r+4>>2]=e,A[r>>2]=i,void(a&&oa(a))}sa(),v()}wa(),v()}function Gd(r,e,a,i,f,t,o){var n,u=0,_=0;if(Q=n=Q-16|0,2147483631+~e>>>0>=a>>>0)return u=k[r+11|0]>>>7|0?A[r>>2]:r,e>>>0<1073741799?(A[n+12>>2]=e<<1,A[n>>2]=e+a,Q=a=Q-16|0,Q=a+16|0,a=n+12|0,a=(a=(a=A[(s[n>>2]<s[a>>2]?a:n)>>2])>>>0>=11?11==(0|(a=(_=a+16&-16)-1|0))?_:a:10)+1|0):a=2147483631,Zb(n,a),a=A[n>>2],t&&yb(a,o,t),o=i-f|0,(0|i)!=(0|f)&&yb(a+t|0,f+u|0,o),10!=(0|e)&&oa(u),A[r>>2]=a,A[r+8>>2]=-2147483648&A[r+8>>2]|2147483647&A[n+4>>2],A[r+8>>2]=-2147483648|A[r+8>>2],e=r,r=t+o|0,A[e+4>>2]=r,b[n+12|0]=0,b[r+a|0]=k[n+12|0],void(Q=n+16|0);Na(),v()}function tb(r,e,a){var i=0,f=0,t=0,o=0,b=0,n=0;A[r+8>>2]=0,A[r>>2]=0,A[r+4>>2]=0;r:{e:{if(e){if(e>>>0>=357913942)break e;if(i=pa(e=m(e,12)),A[r+4>>2]=i,A[r>>2]=i,f=e+i|0,A[r+8>>2]=f,(0|(t=A[a+4>>2]))!=(0|(o=A[a>>2]))){if((0|(b=t-o|0))<0)break r;for(n=-4&b;;){for(A[i+8>>2]=0,A[i>>2]=0,A[i+4>>2]=0,e=pa(b),A[i>>2]=e,A[i+8>>2]=e+n,a=o;A[e>>2]=A[a>>2],e=e+4|0,(0|t)!=(0|(a=a+4|0)););if(A[i+4>>2]=e,(0|f)==(0|(i=i+12|0)))break}}else ra(i,0,12+((e=e-12|0)-((e>>>0)%12|0)|0)|0);A[r+4>>2]=f}return}sa(),v()}A[i+8>>2]=0,A[i>>2]=0,A[i+4>>2]=0,sa(),v()}function Lc(r,e,a){var i=0,f=0,t=0,o=0;r:{if(t=e>>>0<1431655766&(e|a)>=0){if(Kc(r,e=m(e,3),13648),Kc(r+12|0,e,13652),i=A[r+24>>2],!(A[r+32>>2]-i>>2>>>0>=a>>>0)){if(a>>>0>=1073741824)break r;if(e=A[r+28>>2],f=(a=pa(f=a<<2))+f|0,a=o=a+(e-i&-4)|0,(0|e)!=(0|i))for(;e=e-4|0,A[(a=a-4|0)>>2]=A[e>>2],(0|e)!=(0|i););A[r+32>>2]=f,A[r+28>>2]=o,A[r+24>>2]=a,i&&oa(i)}A[r+80>>2]=0,A[r+84>>2]=0,e=A[r+76>>2],A[r+76>>2]=0,e&&oa(e),A[r+68>>2]=0,A[r+72>>2]=0,r=A[(e=r- -64|0)>>2],A[e>>2]=0,r&&oa(r)}return t}sa(),v()}function Fe(r){var e=0,a=0,i=0,f=0,t=0;t=1;r:if(!((0|(a=A[r+140>>2]))<=0)){for(e=a<<4,i=pa(a>>>0>268435455?-1:4|e),A[i>>2]=a,a=(i=i+4|0)+e|0,e=i;A[e>>2]=0,A[e+4>>2]=0,b[e+5|0]=0,b[e+6|0]=0,b[e+7|0]=0,b[e+8|0]=0,b[e+9|0]=0,b[e+10|0]=0,b[e+11|0]=0,b[e+12|0]=0,(0|a)!=(0|(e=e+16|0)););if(f=A[r+136>>2],A[r+136>>2]=i,f){if(i=A[(a=f-4|0)>>2])for(e=(i<<4)+f|0;(0|f)!=(0|(e=e-16|0)););oa(a)}if(e=0,!(A[r+140>>2]<=0))for(;;){if(!(t=ta(A[r+136>>2]+(e<<4)|0,r)))break r;if(!((0|(e=e+1|0))<A[r+140>>2]))break}}return t}function mb(r,e){var a,i,f=0,t=0,o=0;return A[r+64>>2]||(f=pa(32),A[f+16>>2]=0,A[f+20>>2]=0,A[f+8>>2]=0,A[f>>2]=0,A[f+4>>2]=0,A[f+24>>2]=0,A[f+28>>2]=0,t=A[r+64>>2],A[r+64>>2]=f,t&&((f=A[t>>2])&&(A[t+4>>2]=f,oa(f)),oa(t))),t=A[r+64>>2],f=(f=A[r+28>>2]-1|0)>>>0<=10?A[13584+(f<<2)>>2]:-1,(i=se(t,0,Rj(f=m(f,k[r+24|0]),a=f>>31,e,0),Y))&&(t=A[r+64>>2],A[r>>2]=t,o=A[t+20>>2],A[r+8>>2]=A[t+16>>2],A[r+12>>2]=o,o=A[t+24>>2],t=A[t+28>>2],A[r+48>>2]=0,A[r+52>>2]=0,A[r+40>>2]=f,A[r+44>>2]=a,A[r+16>>2]=o,A[r+20>>2]=t,A[r+80>>2]=e),i}function jc(r,e){var a=0;return a=A[e+4>>2],A[r>>2]=A[e>>2],A[r+4>>2]=a,a=A[e+60>>2],A[r+56>>2]=A[e+56>>2],A[r+60>>2]=a,a=A[e+52>>2],A[r+48>>2]=A[e+48>>2],A[r+52>>2]=a,a=A[e+44>>2],A[r+40>>2]=A[e+40>>2],A[r+44>>2]=a,a=A[e+36>>2],A[r+32>>2]=A[e+32>>2],A[r+36>>2]=a,a=A[e+28>>2],A[r+24>>2]=A[e+24>>2],A[r+28>>2]=a,a=A[e+20>>2],A[r+16>>2]=A[e+16>>2],A[r+20>>2]=a,a=A[e+12>>2],A[r+8>>2]=A[e+8>>2],A[r+12>>2]=a,A[r+88>>2]=0,A[r+64>>2]=0,A[r+68>>2]=0,A[r+72>>2]=0,A[r+76>>2]=0,b[r+77|0]=0,b[r+78|0]=0,b[r+79|0]=0,b[r+80|0]=0,b[r+81|0]=0,b[r+82|0]=0,b[r+83|0]=0,b[r+84|0]=0,r}function nb(r,e){var a,i=0,f=0,t=0,o=0,b=0,n=0;a=r+4|0;r:{e:if(r=A[r+4>>2]){for(o=(i=(f=k[e+11|0])<<24>>24<0)?A[e>>2]:e,f=i?A[e+4>>2]:f,e=a;(n=(b=(t=(i=(t=k[r+27|0])<<24>>24<0)?A[r+20>>2]:t)>>>0>f>>>0)?f:t)&&(i=Fa(i?A[r+16>>2]:r+16|0,o,n))||(i=f>>>0>t>>>0?-1:b),e=(i=(0|i)<0)?e:r,r=A[(i?r+4:r)>>2];);if((0|e)!=(0|a)){if(!(t=(i=(r=(i=k[e+27|0])<<24>>24<0)?A[e+20>>2]:i)>>>0<f>>>0?i:f)||!(r=Fa(o,r?A[e+16>>2]:e+16|0,t))){if(i>>>0>f>>>0)break e;break r}if((0|r)>=0)break r}}e=a}return e}function Db(r,e,a){var i=0,f=0,t=0,o=0;r:{if(e)if(u[r+38>>1]<=513){if(t=A[r+12>>2],i=A[r+20>>2],i=(o=(e=A[r+16>>2])+8|0)>>>0<8?i+1|0:i,f=0,s[r+8>>2]<o>>>0&(0|i)>=(0|t)|(0|i)>(0|t))break r;e=e+A[r>>2]|0,i=k[e+4|0]|k[e+5|0]<<8|k[e+6|0]<<16|k[e+7|0]<<24,A[a>>2]=k[0|e]|k[e+1|0]<<8|k[e+2|0]<<16|k[e+3|0]<<24,A[a+4>>2]=i,e=A[r+20>>2],e=(a=A[r+16>>2]+8|0)>>>0<8?e+1|0:e,A[r+16>>2]=a,A[r+20>>2]=e}else if(f=0,!re(1,a,r))break r;b[r+36|0]=1,A[r+32>>2]=0,a=(e=A[r+16>>2])+A[r>>2]|0,A[r+24>>2]=a,A[r+28>>2]=(A[r+8>>2]-e|0)+a,f=1}return f}function ve(r,e){r|=0,e|=0;var a=0,i=0,f=0,t=0,o=0,b=0;t=pa(64),a=pa(12),A[a+8>>2]=A[A[r+4>>2]+80>>2],A[a>>2]=13216,A[a+4>>2]=0,t=od(t,a);r:{if((0|e)<0)a=t;else{if(b=r+8|0,!((0|(o=(a=A[r+12>>2])-(f=A[r+8>>2])>>2))>(0|e)))if(i=e+1|0,e>>>0>=o>>>0)Vb(b,i-o|0);else if(!(i>>>0>=o>>>0)){if((0|(f=f+(i<<2)|0))!=(0|a))for(;i=A[(a=a-4|0)>>2],A[a>>2]=0,i&&M[A[A[i>>2]+4>>2]](i),(0|a)!=(0|f););A[r+12>>2]=f}if(r=A[b>>2]+(e<<2)|0,a=A[r>>2],A[r>>2]=t,!a)break r}M[A[A[a>>2]+4>>2]](a)}return~e>>>31|0}function Qd(r,e){var a,i,f=0;if(Q=i=Q-16|0,A[i+12>>2]=e,Q=a=Q-208|0,A[a+204>>2]=e,ra(e=a+160|0,0,40),A[a+200>>2]=A[a+204>>2],!((0|Od(0,r,a+200|0,a+80|0,e))<0)){A[3941]>=0,e=A[3922],A[3940]<=0&&(A[3922]=-33&e);r:{e:{if(A[3934]){if(A[3926])break e}else A[3934]=80,A[3929]=0,A[3926]=0,A[3927]=0,f=A[3933],A[3933]=a;if(Sd(15688))break r}Od(15688,r,a+200|0,a+80|0,a+160|0)}f&&(M[A[3931]](15688,0,0),A[3934]=0,A[3933]=f,A[3929]=0,A[3926]=0,A[3927]=0),A[3922]=A[3922]|32&e}Q=a+208|0,Q=i+16|0}function id(r,e){e|=0;var a=0,i=0,f=0,t=0;if((0|(a=A[(r|=0)+216>>2]))!=A[r+220>>2])for(;;){r:if(!((0|(a=A[m(f,144)+a>>2]))<0||(i=A[r+4>>2],t=A[i+8>>2],(0|a)>=A[i+12>>2]-t>>2||(i=0,a=A[(a<<2)+t>>2],(0|M[A[A[a>>2]+24>>2]](a))<=0)))){for(;;){if((0|M[A[A[a>>2]+20>>2]](a,i))!=(0|e)){if(i=i+1|0,(0|M[A[A[a>>2]+24>>2]](a))>(0|i))continue;break r}break}return r=A[r+216>>2]+m(f,144)|0,0|(k[r+100|0]?r+4:0)}if(f=f+1|0,a=A[r+216>>2],!(f>>>0<(A[r+220>>2]-a|0)/144>>>0))break}return 0}function xb(r){var e=0,a=0,i=0,f=0;if(a=A[r+132>>2]){if(i=a,(0|a)!=(0|(e=A[r+136>>2]))){for(;(f=A[(i=e-12|0)>>2])&&(A[e-8>>2]=f,oa(f)),(0|a)!=(0|(e=i)););i=A[r+132>>2]}A[r+136>>2]=a,oa(i)}if(a=A[r+120>>2]){if(i=a,(0|a)!=(0|(e=A[r+124>>2]))){for(;(f=A[(i=e-12|0)>>2])&&(A[e-8>>2]=f,oa(f)),(0|a)!=(0|(e=i)););i=A[r+120>>2]}A[r+124>>2]=a,oa(i)}(e=A[r+108>>2])&&(A[r+112>>2]=e,oa(e)),(e=A[r+96>>2])&&(A[r+100>>2]=e,oa(e)),Za(r+76|0),Za(r+56|0),Za(r+36|0),Za(r+16|0)}function rd(r){var e=0,a=0,i=0;if(A[(r|=0)>>2]=2128,i=A[r+60>>2]){if((0|(e=i))!=(0|(a=A[r- -64>>2]))){for(;e=A[(a=a-4|0)>>2],A[a>>2]=0,e&&Ga(e),(0|a)!=(0|i););e=A[r+60>>2]}A[r+64>>2]=i,oa(e)}if((e=A[r+48>>2])&&(A[r+52>>2]=e,oa(e)),i=A[r+36>>2]){if((0|(e=i))!=(0|(a=A[r+40>>2]))){for(;M[A[A[(a=a-24|0)>>2]>>2]](a),(0|a)!=(0|i););e=A[r+36>>2]}A[r+40>>2]=i,oa(e)}return A[r>>2]=1984,(e=A[r+16>>2])&&(A[r+20>>2]=e,oa(e)),(e=A[r+4>>2])&&(A[r+8>>2]=e,oa(e)),0|r}function ue(r,e){var a=0,i=0,f=0,t=0,o=0,b=0,n=0;if((a=A[r+8>>2])-(i=A[r+4>>2])>>2>>>0>=e>>>0)return e&&(i=ra(i,0,e<<=2)+e|0),void(A[r+4>>2]=i);r:{if((f=(o=i-(t=A[r>>2])>>2)+e|0)>>>0<1073741824){if(b=(a=a-t|0)>>>1|0,f=a>>>0>=2147483644?1073741823:f>>>0<b>>>0?b:f){if(f>>>0>=1073741824)break r;n=pa(f<<2)}if(e=ra(a=(o<<2)+n|0,0,e<<=2)+e|0,(0|i)!=(0|t))for(;i=i-4|0,A[(a=a-4|0)>>2]=A[i>>2],(0|i)!=(0|t););return A[r+8>>2]=(f<<2)+n,A[r+4>>2]=e,A[r>>2]=a,void(t&&oa(t))}sa(),v()}wa(),v()}function rb(r){var e=0,a=0,i=0,f=0,t=0;if(i=A[r+8>>2],!k[i+84|0]&&!(!(e=A[r+16>>2])|!k[e+84|0]||(a=A[i+72>>2],f=A[i+68>>2],b[e+84|0]=0,a=a-f>>2,t=A[e+68>>2],a>>>0>(f=A[e+72>>2]-t>>2)>>>0?(qb(e+68|0,a-f|0,2316),i=A[r+8>>2]):a>>>0>=f>>>0||(A[e+72>>2]=t+(a<<2)),k[i+84|0]||(0|(a=A[i+68>>2]))==A[i+72>>2])))for(f=A[A[r+16>>2]+68>>2],e=0;A[(t=e<<2)+f>>2]=A[a+t>>2],e=e+1|0,a=A[i+68>>2],e>>>0<A[i+72>>2]-a>>2>>>0;);return A[r+16>>2]}function hd(r,e){e|=0;var a=0,i=0,f=0,t=0;if((0|(a=A[(r|=0)+216>>2]))!=A[r+220>>2])for(;;){r:if(!((0|(a=A[m(f,144)+a>>2]))<0||(i=A[r+4>>2],t=A[i+8>>2],(0|a)>=A[i+12>>2]-t>>2||(i=0,a=A[(a<<2)+t>>2],(0|M[A[A[a>>2]+24>>2]](a))<=0)))){for(;;){if((0|M[A[A[a>>2]+20>>2]](a,i))!=(0|e)){if(i=i+1|0,(0|M[A[A[a>>2]+24>>2]](a))>(0|i))continue;break r}break}return 104+(A[r+216>>2]+m(f,144)|0)|0}if(f=f+1|0,a=A[r+216>>2],!(f>>>0<(A[r+220>>2]-a|0)/144>>>0))break}return r+184|0}function ab(r){var e=0,a=0,i=0,f=0;if(a=A[r+640>>2]){if(i=a,(0|a)!=(0|(e=A[r+644>>2]))){for(;(f=A[(i=e-12|0)>>2])&&(A[e-8>>2]=f,oa(f)),(0|a)!=(0|(e=i)););i=A[r+640>>2]}A[r+644>>2]=a,oa(i)}if(a=A[r+628>>2]){if(i=a,(0|a)!=(0|(e=A[r+632>>2]))){for(;(f=A[(i=e-12|0)>>2])&&(A[e-8>>2]=f,oa(f)),(0|a)!=(0|(e=i)););i=A[r+628>>2]}A[r+632>>2]=a,oa(i)}(e=A[r+616>>2])&&(A[r+620>>2]=e,oa(e)),(e=A[r+604>>2])&&(A[r+608>>2]=e,oa(e)),Za(r+584|0),Za(r+564|0),Za(r+544|0)}function vb(r){var e=0,a=0,i=0,f=0;if(a=A[r+128>>2]){if(i=a,(0|a)!=(0|(e=A[r+132>>2]))){for(;(f=A[(i=e-12|0)>>2])&&(A[e-8>>2]=f,oa(f)),(0|a)!=(0|(e=i)););i=A[r+128>>2]}A[r+132>>2]=a,oa(i)}if(a=A[r+116>>2]){if(i=a,(0|a)!=(0|(e=A[r+120>>2]))){for(;(f=A[(i=e-12|0)>>2])&&(A[e-8>>2]=f,oa(f)),(0|a)!=(0|(e=i)););i=A[r+116>>2]}A[r+120>>2]=a,oa(i)}(e=A[r+104>>2])&&(A[r+108>>2]=e,oa(e)),(e=A[r+92>>2])&&(A[r+96>>2]=e,oa(e)),Za(r+72|0),Za(r+52|0),Za(r+32|0)}function kc(r,e){var a=0,i=0,f=0,t=0,o=0,b=0,n=0;r:{e:if((i=(a=A[r+4>>2])-(f=A[r>>2])|0)>>>0<e>>>0){if((o=e-i|0)>>>0<=(t=A[r+8>>2])-a>>>0){b=r,n=ra(a,0,o)+o|0,A[b+4>>2]=n;break e}if((0|e)<0)break r;if(t=(a=t-f|0)<<1,ra((t=pa(a=a>>>0>=1073741823?2147483647:e>>>0<t>>>0?t:e))+i|0,0,o),i=va(t,f,i),A[r+8>>2]=i+a,A[r+4>>2]=e+i,A[r>>2]=i,!f)break e;oa(f)}else e>>>0>=i>>>0||(A[r+4>>2]=e+f);return a=e=A[r+28>>2],i=e+1|0,f=(e=A[r+24>>2]+1|0)?a:i,A[r+24>>2]=e,void(A[r+28>>2]=f)}sa(),v()}function Ka(r,e){var a=0,i=0,f=0,t=0,o=0,b=0;if((0|(f=A[r+4>>2]))!=A[r+8>>2])return A[f>>2]=A[e>>2],void(A[r+4>>2]=f+4);r:{if((i=(a=(t=f-(o=A[r>>2])|0)>>2)+1|0)>>>0<1073741824){if(b=a<<2,a=t>>>1|0,a=t>>>0>=2147483644?1073741823:a>>>0>i>>>0?a:i){if(a>>>0>=1073741824)break r;t=pa(a<<2)}else t=0;if(A[(i=b+t|0)>>2]=A[e>>2],e=i+4|0,(0|f)!=(0|o))for(;f=f-4|0,A[(i=i-4|0)>>2]=A[f>>2],(0|f)!=(0|o););return A[r+8>>2]=t+(a<<2),A[r+4>>2]=e,A[r>>2]=i,void(o&&oa(o))}sa(),v()}wa(),v()}function Ia(r){A[r>>2]=-1,A[r+4>>2]=0,A[r+8>>2]=0,A[r+32>>2]=0,A[r+36>>2]=0,b[r+28|0]=1,A[r+20>>2]=0,A[r+24>>2]=0,A[r+12>>2]=0,A[r+16>>2]=0,A[r+40>>2]=0,A[r+44>>2]=0,A[r+48>>2]=0,A[r+52>>2]=0,A[r+56>>2]=0,A[r+60>>2]=0,A[r+64>>2]=0,A[r+68>>2]=0,A[r+76>>2]=0,A[r+80>>2]=0,A[r+84>>2]=0,A[r+88>>2]=0,A[r+92>>2]=0,A[r+96>>2]=0,A[r+72>>2]=r+4,A[r+104>>2]=0,A[r+108>>2]=0,b[r+100|0]=1,A[r+112>>2]=0,A[r+116>>2]=0,A[r+120>>2]=0,A[r+124>>2]=0,A[r+128>>2]=0,A[r+132>>2]=0,A[r+136>>2]=0,A[r+140>>2]=0}function Ld(r,e){if(!r)return 0;r:{e:{if(r){if(e>>>0<=127)break e;if(A[A[4292]>>2]){if(e>>>0<=2047){b[r+1|0]=63&e|128,b[0|r]=e>>>6|192,r=2;break r}if(!(57344!=(-8192&e)&e>>>0>=55296)){b[r+2|0]=63&e|128,b[0|r]=e>>>12|224,b[r+1|0]=e>>>6&63|128,r=3;break r}if(e-65536>>>0<=1048575){b[r+3|0]=63&e|128,b[0|r]=e>>>18|240,b[r+2|0]=e>>>6&63|128,b[r+1|0]=e>>>12&63|128,r=4;break r}}else if(57216==(-128&e))break e;A[3992]=25,r=-1}else r=1;break r}b[0|r]=e,r=1}return r}function Hb(r,e){var a=0,i=0,f=0,t=0;i=A[r+12>>2],(a=A[r+16>>2]-i>>2)>>>0<e>>>0?ya(r+12|0,e-a|0):e>>>0>=a>>>0||(A[r+16>>2]=i+(e<<2));r:{if(a=A[r>>2],!(A[r+8>>2]-a>>2>>>0>=e>>>0)){if(e>>>0>=1073741824)break r;if(i=A[r+4>>2],f=(e=pa(f=e<<2))+f|0,e=t=e+(i-a&-4)|0,(0|a)!=(0|i))for(;i=i-4|0,A[(e=e-4|0)>>2]=A[i>>2],(0|a)!=(0|i););A[r+8>>2]=f,A[r+4>>2]=t,A[r>>2]=e,a&&oa(a)}return}sa(),v()}function _b(r){var e=0,a=0,i=0;if(A[(r|=0)>>2]=13724,(e=A[r+68>>2])&&(A[r+72>>2]=e,oa(e)),(e=A[r+56>>2])&&(A[r+60>>2]=e,oa(e)),(e=A[r+44>>2])&&(A[r+48>>2]=e,oa(e)),(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),(e=A[r+20>>2])&&(A[r+24>>2]=e,oa(e)),e=A[r+8>>2]){if(i=e,(0|e)!=(0|(a=A[r+12>>2]))){for(;i=A[(a=a-4|0)>>2],A[a>>2]=0,i&&Ga(i),(0|e)!=(0|a););i=A[r+8>>2]}A[r+12>>2]=e,oa(i)}return e=A[r+4>>2],A[r+4>>2]=0,e&&Uc(e),0|r}function yb(r,e,a){var i,f,t,o,b=0;Q=b=(Q=i=(Q=f=Q-16|0)-32|0)-16|0,A[b+12>>2]=e,A[b+8>>2]=e+a,A[i+24>>2]=A[b+12>>2],A[i+28>>2]=A[b+8>>2],Q=a=(Q=b+16|0)-16|0,t=(o=A[i+28>>2])-(b=A[i+24>>2])|0,(0|b)!=(0|o)&&va(r,b,t),A[a+12>>2]=b+t,A[a+8>>2]=r+t,A[i+16>>2]=A[a+12>>2],A[i+20>>2]=A[a+8>>2],Q=a+16|0,A[i+12>>2]=(A[i+16>>2]-e|0)+e,A[i+8>>2]=(A[i+20>>2]-r|0)+r,A[f+8>>2]=A[i+12>>2],A[f+12>>2]=A[i+8>>2],Q=i+32|0,Q=f+16|0}function ya(r,e){var a=0,i=0,f=0,t=0,o=0,b=0,n=0;if((f=A[r+8>>2])-(a=A[r+4>>2])>>2>>>0>=e>>>0)return e&&(a=ra(a,0,e<<=2)+e|0),void(A[r+4>>2]=a);r:{if((i=(b=(o=(t=a)-(a=A[r>>2])|0)>>2)+e|0)>>>0<1073741824){if(t=(f=f-a|0)>>>1|0,i=f>>>0>=2147483644?1073741823:i>>>0<t>>>0?t:i){if(i>>>0>=1073741824)break r;n=pa(i<<2)}return f=ra((b<<2)+n|0,0,e<<=2),t=i<<2,i=va(n,a,o),A[r+8>>2]=t+i,A[r+4>>2]=e+f,A[r>>2]=i,void(a&&oa(a))}sa(),v()}wa(),v()}function Tc(r,e){var a=0,i=0,f=0,t=0;if((0|(a=r+4|0))!=(0|(r=nb(r,e)))){for(e=r+28|0,e=b[r+39|0]<0?A[e>>2]:e;e=(r=e)+1|0,32==(0|(a=b[0|r]))|a-9>>>0<5;);r:{e:{a:switch((a=b[0|r])-43|0){case 0:break e;case 2:break a;default:break r}f=1}a=b[0|e],r=e}if(a-48>>>0<10)for(;i=48+(m(i,10)-b[0|r]|0)|0,e=b[r+1|0],r=r+1|0,e-48>>>0<10;);-1!=(0|(r=f?i:0-i|0))&&(t=!!(0|r))}return t}function bb(r,e){var a=0,i=0,f=0,t=0,o=0,b=0;if(r=A[r>>2],(a=A[r+4>>2])>>>0<(f=A[r+8>>2])>>>0)return A[a>>2]=A[e>>2],void(A[r+4>>2]=a+4);r:{if((t=(i=(o=(i=a)-(a=A[r>>2])|0)>>2)+1|0)>>>0<1073741824){if(b=i<<2,i=(f=f-a|0)>>>1|0,t=f>>>0>=2147483644?1073741823:t>>>0<i>>>0?i:t){if(t>>>0>=1073741824)break r;f=pa(t<<2)}else f=0;return A[(i=b+f|0)>>2]=A[e>>2],e=va(f,a,o),A[r+8>>2]=e+(t<<2),A[r+4>>2]=i+4,A[r>>2]=e,void(a&&oa(a))}sa(),v()}wa(),v()}function ob(r,e){var a=0,i=0,f=0,t=0,o=0,b=0,n=0;if((f=A[r+8>>2])-(a=A[r+4>>2])>>3>>>0>=e>>>0)return e&&(a=ra(a,0,e<<=3)+e|0),void(A[r+4>>2]=a);r:{if((i=(b=(o=(t=a)-(a=A[r>>2])|0)>>3)+e|0)>>>0<536870912){if(t=(f=f-a|0)>>>2|0,i=f>>>0>=2147483640?536870911:i>>>0<t>>>0?t:i){if(i>>>0>=536870912)break r;n=pa(i<<3)}return f=ra((b<<3)+n|0,0,e<<=3),t=i<<3,i=va(n,a,o),A[r+8>>2]=t+i,A[r+4>>2]=e+f,A[r>>2]=i,void(a&&oa(a))}sa(),v()}wa(),v()}function qe(r,e){var a=0,i=0,f=0,t=0,o=0,b=0;if((f=A[r+8>>2])-(a=A[r+4>>2])>>1>>>0>=e>>>0)return e&&(a=ra(a,0,e<<=1)+e|0),void(A[r+4>>2]=a);r:{if((0|(i=(t=(o=(t=a)-(a=A[r>>2])|0)>>1)+e|0))>=0){if(i=(f=f-a|0)>>>0>=2147483646?2147483647:i>>>0<f>>>0?f:i){if((0|i)<0)break r;b=pa(i<<1)}return f=ra((t<<1)+b|0,0,e<<=1),t=i<<1,i=va(b,a,o),A[r+8>>2]=t+i,A[r+4>>2]=e+f,A[r>>2]=i,void(a&&oa(a))}sa(),v()}wa(),v()}function za(r,e,a){var i,f=0,t=0;Q=i=Q-16|0;r:{if(a>>>0<11)f=r,b[r+11|0]=128&k[r+11|0]|a,b[r+11|0]=127&k[r+11|0];else{if(a>>>0>2147483631)break r;Zb(i+8|0,(f=a>>>0>=11?11==(0|(f=(t=a+16&-16)-1|0))?t:f:10)+1|0),f=A[i+8>>2],A[r>>2]=f,A[r+8>>2]=-2147483648&A[r+8>>2]|2147483647&A[i+12>>2],A[r+8>>2]=-2147483648|A[r+8>>2],A[r+4>>2]=a}return yb(f,e,a+1|0),void(Q=i+16|0)}Na(),v()}function Mc(r,e){var a=0,i=0,f=0;i=(a=A[r+4>>2])+e|0,A[r+4>>2]=i,(i-1^a-1)>>>0<32&&a||(A[A[r>>2]+((i>>>0>=33?i-1>>>5:0)<<2)>>2]=0),e&&(r=A[r>>2]+(a>>>3&536870908)|0,(a&=31)&&(f=e>>>0>(i=32-a|0)>>>0?i:e,A[r>>2]=A[r>>2]&~(-1<<a&-1>>>i-f),e=e-f|0,r=r+4|0),a=e>>>5|0,e>>>0>=32&&ra(r,0,a<<2),(-32&e)!=(0|e)&&(A[(r=(a<<2)+r|0)>>2]=A[r>>2]&~(-1>>>32-(31&e))))}function Fc(r,e,a){var i=0,f=0,t=0;r:{if(!(i=A[a+16>>2])){if(Sd(a))break r;i=A[a+16>>2]}if(i-(t=A[a+20>>2])>>>0<e>>>0)return 0|M[A[a+36>>2]](a,r,e);e:if(A[a+80>>2]<0)i=0;else{for(f=e;;){if(!(i=f)){i=0;break e}if(10==k[(f=i-1|0)+r|0])break}if((f=0|M[A[a+36>>2]](a,r,i))>>>0<i>>>0)break r;r=r+i|0,e=e-i|0,t=A[a+20>>2]}qa(t,r,e),A[a+20>>2]=A[a+20>>2]+e,f=e+i|0}return f}function ad(r){var e=0,a=0,i=0,f=0;k[r+76|0]&&(b[r+76|0]=0,f=A[r+60>>2],a=(i=(e=(a=A[r+72>>2]+7|0)>>>0<7?1:e)<<29|a>>>3)+A[r+56>>2]|0,e=(e>>>3|0)+f|0,A[r+56>>2]=a,A[r+60>>2]=a>>>0<i>>>0?e+1|0:e),u[r+38>>1]<=513&&(b[r+132|0]=0,f=A[r+116>>2],e=0,a=(i=(e=(a=A[r+128>>2]+7|0)>>>0<7?1:e)<<29|a>>>3)+A[r+112>>2]|0,e=(e>>>3|0)+f|0,A[r+112>>2]=a,A[r+116>>2]=a>>>0<i>>>0?e+1|0:e)}function re(r,e,a){var i=0,f=0,t=0,o=0;r:if(!(r>>>0>10||(0|(i=A[a+20>>2]))>=(0|(t=A[a+12>>2]))&(f=A[a+16>>2])>>>0>=s[a+8>>2]|(0|i)>(0|t))){if(t=b[f+A[a>>2]|0],i=(f=f+1|0)?i:i+1|0,A[a+16>>2]=f,A[a+20>>2]=i,(0|(i=t))<0){if(!re(r+1|0,e,a))break r;i=127&i|(r=A[e>>2])<<7,r=A[e+4>>2]<<7|r>>>25}else i&=255,r=0;A[e>>2]=i,A[e+4>>2]=r,o=1}return o}function gb(r,e,a){var i=0,f=0,t=0,o=0;r:if(!(r>>>0>10||(0|(i=A[a+20>>2]))>=(0|(t=A[a+12>>2]))&(f=A[a+16>>2])>>>0>=s[a+8>>2]|(0|i)>(0|t))){if(t=b[f+A[a>>2]|0],i=(f=f+1|0)?i:i+1|0,A[a+16>>2]=f,A[a+20>>2]=i,(0|(i=t))<0){if(!gb(r+1|0,e,a))break r;i=127&i|(r=A[e>>2])<<7,r=A[e+4>>2]<<7|r>>>25}else i&=255,r=0;A[e>>2]=i,A[e+4>>2]=r,o=1}return o}function Ee(r,e){var a=0,i=0,f=0,t=0;A[r+144>>2]=e,a=A[32+(0|M[A[A[e>>2]+32>>2]](e))>>2],a=A[a>>2]+A[a+16>>2]|0,i=A[32+(0|M[A[A[e>>2]+32>>2]](e))>>2],i=A[i+8>>2]-A[i+16>>2]|0,f=r,t=u[A[32+(0|M[A[A[e>>2]+32>>2]](e))>>2]+38>>1],n[f+38>>1]=t,A[r>>2]=a,A[r+16>>2]=0,A[r+20>>2]=0,A[r+8>>2]=i,A[r+12>>2]=0,f=r,t=0|M[A[A[e>>2]+36>>2]](e),A[f+148>>2]=t}function Cd(r,e,a,i){b[r+53|0]=1;r:if(A[r+4>>2]==(0|a)){b[r+52|0]=1;e:{if(!(a=A[r+16>>2])){if(A[r+36>>2]=1,A[r+24>>2]=i,A[r+16>>2]=e,1!=(0|i))break r;if(1==A[r+48>>2])break e;break r}if((0|e)==(0|a)){if(2==(0|(a=A[r+24>>2]))&&(A[r+24>>2]=i,a=i),1!=A[r+48>>2])break r;if(1==(0|a))break e;break r}A[r+36>>2]=A[r+36>>2]+1}b[r+54|0]=1}}function Ie(r,e,a){e|=0,a|=0;var i,f=0;Q=i=Q-16|0,A[(r|=0)+4>>2]=e,e=A[e+64>>2],f=A[e>>2],e=A[e+4>>2],b[i+15|0]=0,Oa(r+24|0,(e-f>>2>>>0)/3|0,i+15|0),e=A[r+4>>2],f=A[e+56>>2],e=A[e+52>>2],b[i+14|0]=0,Oa(r+36|0,f-e>>2,i+14|0),e=A[a+12>>2],A[r+16>>2]=A[a+8>>2],A[r+20>>2]=e,e=A[a+4>>2],A[r+8>>2]=A[a>>2],A[r+12>>2]=e,Q=i+16|0}function pc(r,e,a){var i,f,t=0,o=0,b=0,n=0,u=0,s=0;if(e){for(i=0-k[r+12|0]&255,o=A[r+4>>2],t=A[r+8>>2],f=A[r>>2];u=b<<1,(0|o)<=0|t>>>0>4095||(o=o-1|0,A[r+4>>2]=o,t=k[o+f|0]|t<<8),b=(n=255&t)>>>0<i>>>0,s=n,n=m(t>>>8|0,i),t=b?s+n|0:t-(i+n|0)|0,A[r+8>>2]=t,b|=u,e=e-1|0;);A[a>>2]=b}else A[a>>2]=0}function _c(r,e){var a=0,i=0;r:{if((0|(a=A[r+4>>2]))==(i=A[r+8>>2])<<5){if((a+1|0)<0)break r;pb(r,a=a>>>0<=1073741822?(a=32+(-32&a)|0)>>>0<(i<<=6)>>>0?i:a:2147483647),a=A[r+4>>2]}return A[r+4>>2]=a+1,i=1<<a,r=A[r>>2]+(a>>>3&536870908)|0,k[0|e]?void(A[r>>2]=i|A[r>>2]):void(A[r>>2]=A[r>>2]&~i)}sa(),v()}function $b(r){var e;return A[r>>2]=0,A[r+4>>2]=0,A[r+56>>2]=0,A[r+48>>2]=0,A[r+52>>2]=0,A[r+40>>2]=0,A[r+44>>2]=0,A[r+32>>2]=0,A[r+36>>2]=0,A[r+24>>2]=0,A[r+28>>2]=0,A[r+16>>2]=0,A[r+20>>2]=0,A[r+8>>2]=0,A[r+12>>2]=0,A[(e=r- -64|0)>>2]=0,A[e+4>>2]=0,A[r+72>>2]=0,A[r+76>>2]=0,A[r+80>>2]=0,A[r+84>>2]=0,A[r+60>>2]=r,r}function td(r,e,a){var i=0,f=0,t=0,o=0;r:if(!(r>>>0>5||(0|(i=A[a+20>>2]))>=(0|(f=A[a+12>>2]))&(t=A[a+16>>2])>>>0>=s[a+8>>2]|(0|i)>(0|f))){if(f=k[A[a>>2]+t|0],i=(t=t+1|0)?i:i+1|0,A[a+16>>2]=t,A[a+20>>2]=i,(0|(i=f<<24>>24))<0){if(!td(r+1|0,e,a))break r;f=127&i|A[e>>2]<<7}A[e>>2]=f,o=1}return o}function hb(r,e,a){var i=0,f=0,t=0,o=0;r:if(!(r>>>0>5||(0|(i=A[a+20>>2]))>=(0|(f=A[a+12>>2]))&(t=A[a+16>>2])>>>0>=s[a+8>>2]|(0|i)>(0|f))){if(f=k[A[a>>2]+t|0],i=(t=t+1|0)?i:i+1|0,A[a+16>>2]=t,A[a+20>>2]=i,(0|(i=f<<24>>24))<0){if(!hb(r+1|0,e,a))break r;f=127&i|A[e>>2]<<7}A[e>>2]=f,o=1}return o}function Xa(r,e,a){var i=0,f=0,t=0,o=0;r:if(!(r>>>0>5||(0|(i=A[a+20>>2]))>=(0|(f=A[a+12>>2]))&(t=A[a+16>>2])>>>0>=s[a+8>>2]|(0|i)>(0|f))){if(f=k[A[a>>2]+t|0],i=(t=t+1|0)?i:i+1|0,A[a+16>>2]=t,A[a+20>>2]=i,(0|(i=f<<24>>24))<0){if(!Xa(r+1|0,e,a))break r;f=127&i|A[e>>2]<<7}A[e>>2]=f,o=1}return o}function Qe(r,e,a){var i=0,f=0,t=0,o=0;r:if(!(r>>>0>5||(0|(i=A[a+20>>2]))>=(0|(f=A[a+12>>2]))&(t=A[a+16>>2])>>>0>=s[a+8>>2]|(0|i)>(0|f))){if(f=k[A[a>>2]+t|0],i=(t=t+1|0)?i:i+1|0,A[a+16>>2]=t,A[a+20>>2]=i,(0|(i=f<<24>>24))<0){if(!Qe(r+1|0,e,a))break r;f=127&i|A[e>>2]<<7}A[e>>2]=f,o=1}return o}function Pc(r,e,a){var i=0,f=0,t=0,o=0;r:if(!(r>>>0>5||(0|(i=A[a+20>>2]))>=(0|(f=A[a+12>>2]))&(t=A[a+16>>2])>>>0>=s[a+8>>2]|(0|i)>(0|f))){if(f=k[A[a>>2]+t|0],i=(t=t+1|0)?i:i+1|0,A[a+16>>2]=t,A[a+20>>2]=i,(0|(i=f<<24>>24))<0){if(!Pc(r+1|0,e,a))break r;f=127&i|A[e>>2]<<7}A[e>>2]=f,o=1}return o}function Fb(r,e,a){var i=0,f=0,t=0,o=0;r:if(!(r>>>0>5||(0|(i=A[a+20>>2]))>=(0|(f=A[a+12>>2]))&(t=A[a+16>>2])>>>0>=s[a+8>>2]|(0|i)>(0|f))){if(f=k[A[a>>2]+t|0],i=(t=t+1|0)?i:i+1|0,A[a+16>>2]=t,A[a+20>>2]=i,(0|(i=f<<24>>24))<0){if(!Fb(r+1|0,e,a))break r;f=127&i|A[e>>2]<<7}A[e>>2]=f,o=1}return o}function Ea(r,e,a){var i=0,f=0,t=0,o=0;r:if(!(r>>>0>5||(0|(i=A[a+20>>2]))>=(0|(f=A[a+12>>2]))&(t=A[a+16>>2])>>>0>=s[a+8>>2]|(0|i)>(0|f))){if(f=k[A[a>>2]+t|0],i=(t=t+1|0)?i:i+1|0,A[a+16>>2]=t,A[a+20>>2]=i,(0|(i=f<<24>>24))<0){if(!Ea(r+1|0,e,a))break r;f=127&i|A[e>>2]<<7}A[e>>2]=f,o=1}return o}function Bb(r,e,a){var i=0,f=0,t=0,o=0;r:if(!(r>>>0>5||(0|(i=A[a+20>>2]))>=(0|(f=A[a+12>>2]))&(t=A[a+16>>2])>>>0>=s[a+8>>2]|(0|i)>(0|f))){if(f=k[A[a>>2]+t|0],i=(t=t+1|0)?i:i+1|0,A[a+16>>2]=t,A[a+20>>2]=i,(0|(i=f<<24>>24))<0){if(!Bb(r+1|0,e,a))break r;f=127&i|A[e>>2]<<7}A[e>>2]=f,o=1}return o}function Fa(r,e,a){var i=0,f=0;r:{e:{if(a>>>0>=4){if(3&(r|e))break e;for(;;){if(A[r>>2]!=A[e>>2])break e;if(e=e+4|0,r=r+4|0,!((a=a-4|0)>>>0>3))break}}if(!a)break r}for(;;){if((0|(i=k[0|r]))==(0|(f=k[0|e]))){if(e=e+1|0,r=r+1|0,a=a-1|0)continue;break r}break}return i-f|0}return 0}function Yc(r){var e,a=0,i=0,f=0;if(e=A[r>>2]){if(f=e,(0|e)!=(0|(i=A[r+4>>2]))){for(;(a=A[(f=i-144|0)+132>>2])&&(A[i-8>>2]=a,oa(a)),(a=A[i-28>>2])&&(A[i-24>>2]=a,oa(a)),(a=A[i-40>>2])&&(A[i-36>>2]=a,oa(a)),oc(i-140|0),(0|e)!=(0|(i=f)););f=A[r>>2]}A[r+4>>2]=e,oa(f)}}function Uc(r){var e=0,a=0,i=0;if(r){if(i=A[r+24>>2]){if((0|(e=i))!=(0|(a=A[r+28>>2]))){for(;e=A[(a=a-4|0)>>2],A[a>>2]=0,e&&(Ra(e+12|0,A[e+16>>2]),Qa(e,A[e+4>>2]),oa(e)),(0|a)!=(0|i););e=A[r+24>>2]}A[r+28>>2]=i,oa(e)}Ra(r+12|0,A[r+16>>2]),Qa(r,A[r+4>>2]),oa(r)}}function xc(r,e,a){r|=0,e|=0;var i,f,t,o,b=0,n=0;return(o=A[(a|=0)+8>>2])>>>0>(f=A[a+16>>2])>>>0&(0|(b=t=A[a+12>>2]))>=(0|(i=A[a+20>>2]))|(0|i)<(0|b)&&(e=k[A[a>>2]+f|0],b=(n=f+1|0)?i:i+1|0,A[a+16>>2]=n,A[a+20>>2]=b,A[r+4>>2]=e),f>>>0<o>>>0&(0|i)<=(0|t)|(0|i)<(0|t)}function Wc(r){var e,a=0,i=0;if(A[(r|=0)>>2]=13280,(a=A[r+20>>2])&&(A[r+24>>2]=a,oa(a)),e=A[r+8>>2]){if((0|(i=A[r+12>>2]))!=(0|(a=e))){for(;a=A[(i=i-4|0)>>2],A[i>>2]=0,a&&M[A[A[a>>2]+4>>2]](a),(0|i)!=(0|e););a=A[r+8>>2]}A[r+12>>2]=e,oa(a)}oa(r)}function Ya(r,e,a){var i=0;if(!a)return A[r+4>>2]==A[e+4>>2];if((0|r)==(0|e))return 1;i=A[r+4>>2],r=k[0|i],a=A[e+4>>2];r:if(!(!r|(0|(e=k[0|a]))!=(0|r)))for(;;){if(e=k[a+1|0],!(r=k[i+1|0]))break r;if(a=a+1|0,i=i+1|0,(0|r)!=(0|e))break}return(0|r)==(0|e)}function ae(r,e){var a=0,i=0,f=0;A[r+8>>2]=0,A[r>>2]=0,A[r+4>>2]=0;r:{if((0|(a=A[e+4>>2]))!=(0|(i=A[e>>2]))){if((0|(a=a-i|0))<0)break r;i=(i=a)+(a=ra(f=pa(a),0,a))|0,A[r+8>>2]=i,A[r+4>>2]=i,A[r>>2]=a,a=A[e>>2],r=A[e+4>>2]}else r=a;return void qa(f,a,r-a|0)}sa(),v()}function ed(r){var e,a=0,i=0,f=0;if((0|(i=A[r+4>>2]))!=(0|(e=A[r>>2])))for(;(a=A[(f=i-144|0)+132>>2])&&(A[i-8>>2]=a,oa(a)),(a=A[i-28>>2])&&(A[i-24>>2]=a,oa(a)),(a=A[i-40>>2])&&(A[i-36>>2]=a,oa(a)),oc(i-140|0),(0|e)!=(0|(i=f)););A[r+4>>2]=e}function cb(r){var e=0;r&&((e=A[r+76>>2])&&(A[r+80>>2]=e,oa(e)),(e=A[r- -64>>2])&&(A[r+68>>2]=e,oa(e)),(e=A[r+48>>2])&&(A[r+52>>2]=e,oa(e)),(e=A[r+24>>2])&&(A[r+28>>2]=e,oa(e)),(e=A[r+12>>2])&&(A[r+16>>2]=e,oa(e)),(e=A[r>>2])&&(A[r+4>>2]=e,oa(e)),oa(r))}function Jd(r,e,a){var i,f,t=0,o=0;for(Q=i=(Q=f=Q-16|0)-16|0,e=e-r>>2;e;)A[i+12>>2]=r,t=e>>>1|0,A[i+12>>2]=A[i+12>>2]+(t<<2),o=~t+e|0,e=t,e=(t=s[A[i+12>>2]>>2]<s[a>>2])?o:e,r=t?A[i+12>>2]+4|0:r;return Q=i+16|0,Q=f+16|0,r}function oc(r){var e=0;(e=A[r+84>>2])&&(A[r+88>>2]=e,oa(e)),(e=A[r+72>>2])&&(A[r+76>>2]=e,oa(e)),(e=A[r+52>>2])&&(A[r+56>>2]=e,oa(e)),(e=A[r+40>>2])&&(A[r+44>>2]=e,oa(e)),(e=A[r+28>>2])&&(A[r+32>>2]=e,oa(e)),(e=A[r+12>>2])&&oa(e),(r=A[r>>2])&&oa(r)}function Xc(r,e){var a,i;return i=pa(40),A[i>>2]=-1,A[(a=i+8|0)+16>>2]=0,A[a+20>>2]=0,A[a+8>>2]=0,A[a>>2]=0,A[a+4>>2]=0,A[a+24>>2]=0,A[a+28>>2]=0,M[A[A[r>>2]+16>>2]](r,i),r=A[e+88>>2],A[e+88>>2]=i,r&&((e=A[r+8>>2])&&(A[r+12>>2]=e,oa(e)),oa(r)),1}function Ma(r){var e=0,a=0,i=0;r:{if(3&(e=r))for(;;){if(!k[0|e])break r;if(!(3&(e=e+1|0)))break}for(;a=e,e=e+4|0,!(~(i=A[a>>2])&i-16843009&-2139062144););for(;a=(e=a)+1|0,k[0|e];);}return e-r|0}function Ba(r){var e,a,i=0,f=0,t=0;return t=k[r+12|0],(f=A[r+8>>2])>>>0>4095||(0|(i=A[r+4>>2]))<=0||(i=i-1|0,A[r+4>>2]=i,f=k[i+A[r>>2]|0]|f<<8),i=m(t=0-t&255,f>>>8|0),a=(e=255&f)>>>0<t>>>0,A[r+8>>2]=a?i+e|0:f-(i+t|0)|0,a}function od(r,e){return A[r+4>>2]=0,A[r+8>>2]=0,A[r>>2]=1984,A[r+12>>2]=0,A[r+16>>2]=0,A[r+20>>2]=0,A[r+24>>2]=0,A[r+28>>2]=0,A[r+32>>2]=0,A[r+36>>2]=0,A[r+40>>2]=0,A[r>>2]=2328,A[r+60>>2]=e,A[r+44>>2]=0,A[r+48>>2]=0,A[r+52>>2]=0,A[r+56>>2]=0,r}function mc(r,e){var a,i=0,f=0;if((a=Ma(e))>>>0<2147483632){r:{if(a>>>0>=11)f=pa(i=1+(15|a)|0),A[r+8>>2]=-2147483648|i,A[r>>2]=f,A[r+4>>2]=a,i=a+f|0;else if(b[r+11|0]=a,i=r+a|0,f=r,!a)break r;va(f,e,a)}return b[0|i]=0,r}Na(),v()}function Jb(r,e){var a=0,i=0,f=0;r:{if(a=A[r>>2],!(A[r+8>>2]-a>>2>>>0>=e>>>0)){if(e>>>0>=1073741824)break r;i=A[r+4>>2]-a|0,e=va(pa(f=e<<2),a,i),A[r+8>>2]=e+f,A[r+4>>2]=e+i,A[r>>2]=e,a&&oa(a)}return}sa(),v()}function Ga(r){var e=0,a=0;(r|=0)&&(e=A[r+88>>2],A[r+88>>2]=0,e&&((a=A[e+8>>2])&&(A[e+12>>2]=a,oa(a)),oa(e)),(e=A[r+68>>2])&&(A[r+72>>2]=e,oa(e)),e=A[r+64>>2],A[r+64>>2]=0,e&&((a=A[e>>2])&&(A[e+4>>2]=a,oa(a)),oa(e)),oa(r))}function Nd(r){var e=0,a=0,i=0;if(b[A[r>>2]]-48>>>0>=10)return 0;for(;i=A[r>>2],a=-1,e>>>0<=214748364&&(a=(0|(a=b[0|i]-48|0))>(2147483647^(e=m(e,10)))?-1:a+e|0),A[r>>2]=i+1,e=a,b[i+1|0]-48>>>0<10;);return e}function Sj(r,e,a,i){var f,t=0,o=0;return f=(o=e^i)>>31,o>>=31,r=Tj((r^=t=e>>31)-t|0,t=(e^t)-((r>>>0<t>>>0)+t|0)|0,(e=a^(r=i>>31))-r|0,(r^i)-((r>>>0>e>>>0)+r|0)|0)^o,Y=(f^Y)-((r>>>0<o>>>0)+f|0)|0,e=r-o|0}function Yb(r,e,a){var i,f=0;Q=i=Q-16|0,(f=2147483647&A[r+8>>2])>>>0>a>>>0?(f=A[r>>2],A[r+4>>2]=a,yb(f,e,a),b[i+15|0]=0,b[a+f|0]=k[i+15|0]):Gd(r,f-1|0,1+(a-f|0)|0,r=A[r+4>>2],r,a,e),Q=i+16|0}function Xb(r,e,a){var i;Q=i=Q-16|0,a>>>0<=10?(b[r+11|0]=128&k[r+11|0]|a,b[r+11|0]=127&k[r+11|0],yb(r,e,a),b[i+15|0]=0,b[r+a|0]=k[i+15|0]):Gd(r,10,a-10|0,r=127&k[r+11|0],r,a,e),Q=i+16|0}function Rj(r,e,a,i){var f,t,o,b,n=0,A=0;return b=m(n=a>>>16|0,A=r>>>16|0),n=(65535&(A=((o=m(f=65535&a,t=65535&r))>>>16|0)+m(A,f)|0))+m(n,t)|0,Y=(m(e,a)+b|0)+m(r,i)+(A>>>16)+(n>>>16)|0,65535&o|n<<16}function Dd(r,e,a){var i;if(!(i=A[r+16>>2]))return A[r+36>>2]=1,A[r+24>>2]=a,void(A[r+16>>2]=e);r:{if((0|e)==(0|i)){if(2!=A[r+24>>2])break r;return void(A[r+24>>2]=a)}b[r+54|0]=1,A[r+24>>2]=2,A[r+36>>2]=A[r+36>>2]+1}}function ib(r,e,a,i,f){var t;if(Q=t=Q-256|0,!(73728&f|(0|a)<=(0|i))){if(ra(t,255&e,(a=(i=a-i|0)>>>0<256)?i:256),!a)for(;Ab(r,t,256),(i=i-256|0)>>>0>255;);Ab(r,t,i)}Q=t+256|0}function Yd(r,e){var a,i=0;if((0|(a=A[r+8>>2]))!=(0|(r=A[r+12>>2])))for(i=(r=r-a>>2)>>>0<=1?1:r,r=0;;){if(A[A[(r<<2)+a>>2]+60>>2]==(0|e))return r;if((0|i)==(0|(r=r+1|0)))break}return-1}function $d(r,e,a){var i=0,f=0;return(0|(i=r+4|0))!=(0|(r=nb(r,e)))&&(0|(e=A[r+32>>2]))!=(0|(i=A[r+28>>2]))&&(Cc(a,e-i|0),qa(a=Dc(a),e=A[r+28>>2],A[r+32>>2]-e|0),f=1),f}function Sd(r){var e=0;return e=A[r+72>>2],A[r+72>>2]=e-1|e,8&(e=A[r>>2])?(A[r>>2]=32|e,-1):(A[r+4>>2]=0,A[r+8>>2]=0,e=A[r+44>>2],A[r+28>>2]=e,A[r+20>>2]=e,A[r+16>>2]=e+A[r+48>>2],0)}function Eb(r){return A[r+8>>2]=0,A[r+12>>2]=0,A[r>>2]=0,A[r+40>>2]=0,A[r+44>>2]=0,A[r+28>>2]=9,b[r+24|0]=1,A[r+56>>2]=-1,A[r+60>>2]=0,A[r+16>>2]=0,A[r+20>>2]=0,A[r+48>>2]=0,A[r+52>>2]=0,r}function zb(r){var e,a;return(r=(e=A[3958])+(a=r+7&-8)|0)>>>0<=e>>>0&&a||r>>>0>fa()<<16>>>0&&!(0|B(0|r))?(A[3992]=48,-1):(A[3958]=r,e)}function Ra(r,e){e&&(Ra(r,A[e>>2]),Ra(r,A[e+4>>2]),r=A[e+28>>2],A[e+28>>2]=0,r&&(Ra(r+12|0,A[r+16>>2]),Qa(r,A[r+4>>2]),oa(r)),b[e+27|0]<0&&oa(A[e+16>>2]),oa(e))}function Vc(r){return A[r+40>>2]=0,A[r+4>>2]=0,A[r+8>>2]=0,A[r>>2]=13280,A[r+12>>2]=0,A[r+16>>2]=0,A[r+20>>2]=0,A[r+24>>2]=0,A[r+28>>2]=0,A[r+32>>2]=0,n[r+36>>1]=0,r}function Hd(r,e){var a,i,f,t;return A[r>>2]=15260,A[r>>2]=15372,i=pa((a=Ma(e))+13|0),A[i+8>>2]=0,A[i+4>>2]=a,A[i>>2]=a,f=r,t=qa(i+12|0,e,a+1|0),A[f+4>>2]=t,r}function Xe(r){var e=0;return!A[(r|=0)- -64>>2]|!A[r+68>>2]|!A[r+44>>2]|!A[r+48>>2]||!A[r+52>>2]|!A[r+56>>2]||(e=-1!=A[r+92>>2]),0|e}function cf(r){var e=0;return A[(r|=0)>>2]=2448,e=A[r+20>>2],A[r+20>>2]=0,e&&M[A[A[e>>2]+4>>2]](e),A[r>>2]=2232,e=A[r+16>>2],A[r+16>>2]=0,e&&Ga(e),0|r}function tc(r){var e=0;return!A[(r|=0)+48>>2]|!A[r+52>>2]|!A[r+28>>2]|!A[r+32>>2]||!A[r+36>>2]|!A[r+40>>2]||(e=-1!=A[r+76>>2]),0|e}function He(r){var e=0;return A[(r|=0)>>2]=11872,(e=A[r+48>>2])&&(A[r+52>>2]=e,oa(e)),A[r>>2]=12124,(e=A[r+36>>2])&&oa(e),(e=A[r+24>>2])&&oa(e),0|r}function bf(r){var e=0;A[(r|=0)>>2]=2448,e=A[r+20>>2],A[r+20>>2]=0,e&&M[A[A[e>>2]+4>>2]](e),A[r>>2]=2232,e=A[r+16>>2],A[r+16>>2]=0,e&&Ga(e),oa(r)}function Ha(r){return A[r+8>>2]=0,A[r+12>>2]=0,A[r>>2]=0,A[r+16>>2]=0,A[r+20>>2]=0,A[r+32>>2]=0,A[r+24>>2]=0,A[r+28>>2]=0,n[r+38>>1]=0,b[r+36|0]=0,r}function Zd(r,e){var a=0;return a=-1,-1==(0|e)|(0|e)>4||(e=m(e,12)+r|0,r=A[e+20>>2],(A[e+24>>2]-r|0)<=0||(a=A[r>>2])),a}function lc(r,e,a,i,f,t,o){A[r>>2]=0,A[r+56>>2]=e,A[r+48>>2]=0,A[r+52>>2]=0,A[r+40>>2]=t,A[r+44>>2]=o,b[r+32|0]=f,A[r+28>>2]=i,b[r+24|0]=a}function Dc(r){return(k[r+11|0]>>>7|0?A[r+4>>2]:127&k[r+11|0])||(af(1232),v()),k[r+11|0]>>>7|0&&(r=A[r>>2]),r}function Qa(r,e){e&&(Qa(r,A[e>>2]),Qa(r,A[e+4>>2]),(r=A[e+28>>2])&&(A[e+32>>2]=r,oa(r)),b[e+27|0]<0&&oa(A[e+16>>2]),oa(e))}function pa(r){var e=0;r=r||1;r:{for(;;){if(e=Ec(r))break r;if(!(e=A[4422]))break;M[0|e]()}W(),v()}return e}function Kb(r,e){e&&(Kb(r,A[e>>2]),Kb(r,A[e+4>>2]),b[e+39|0]<0&&oa(A[e+28>>2]),b[e+27|0]<0&&oa(A[e+16>>2]),oa(e))}function Ad(r){var e,a;return A[(r|=0)>>2]=15372,e=A[r+4>>2]-12|0,a=A[e+8>>2]-1|0,A[e+8>>2]=a,(0|a)<0&&oa(e),0|r}function pd(r,e,a){return e|=0,a|=0,A[(r|=0)+4>>2]=e,e=A[A[A[e+4>>2]+8>>2]+(a<<2)>>2],A[r+12>>2]=a,A[r+8>>2]=e,1}function wc(r){var e=0;return!A[(r|=0)+60>>2]|!A[r+44>>2]|!A[r+48>>2]|!A[r+52>>2]||(e=0!=A[r+56>>2]),0|e}function Id(r,e){k[r+11|0]>>>7|0?A[r+4>>2]=e:(b[r+11|0]=128&k[r+11|0]|e,b[r+11|0]=127&k[r+11|0])}function Pb(r){var e=0;return!A[(r|=0)+52>>2]|!A[r+44>>2]|!A[r+48>>2]||(e=0!=A[r+56>>2]),0|e}function vc(r,e){r|=0;var a=0;return A[(e|=0)+56>>2]|!e|3!=k[e+24|0]||(A[r+60>>2]=e,a=1),0|a}function We(r,e){r|=0;var a=0;return A[(e|=0)+56>>2]|3!=k[e+24|0]||(A[r- -64>>2]=e,a=1),0|a}function yc(r){var e=0;(e=A[r+16>>2])&&(A[r+20>>2]=e,oa(e)),(e=A[r>>2])&&(A[r+4>>2]=e,oa(e))}function sc(r,e){r|=0;var a=0;return A[(e|=0)+56>>2]|3!=k[e+24|0]||(A[r+48>>2]=e,a=1),0|a}function wa(){var r;r=Bc(4),A[r>>2]=15260,A[r>>2]=15220,A[r>>2]=15240,G(0|r,15352,14),v()}function Ub(r){var e;A[(r|=0)>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),oa(r)}function Za(r){var e;A[r+16>>2]=0,e=A[r>>2],A[r+4>>2]=e,A[r+12>>2]=e,e&&oa(e)}function Oc(r,e){e&&(Oc(r,A[e>>2]),Oc(r,A[e+4>>2]),Kb(e+20|0,A[e+24>>2]),oa(e))}function Uj(r){for(var e=0;r;)r&=r-1,e=e+1|0;return e}function lb(){var r;return r=pa(12),A[r>>2]=0,A[r+4>>2]=0,A[r+8>>2]=0,0|r}function kb(r){var e=0;(r|=0)&&((e=A[r>>2])&&(A[r+4>>2]=e,oa(e)),oa(r))}function Vj(r){var e;return(-1>>>(e=31&r)&-2)<<e|(-1<<(r=0-r&31)&-2)>>>r}function Rd(r,e,a){r=(A[a+76>>2],Fc(r,e,a))}function Mb(r,e){return r|=0,(e|=0)>>>0<=1&&(A[r+28>>2]=e),e>>>0<2|0}function ne(r,e){return e|=0,0|M[A[A[(r|=0)>>2]+12>>2]](r,e)}function af(r){r=Hd(Bc(8),r),A[r>>2]=15472,G(0|r,15504,1),v()}function Ue(r){r=Hd(Bc(8),r),A[r>>2]=15420,G(0|r,15452,1),v()}function Ke(r){return r=Vc(r),A[r+44>>2]=0,A[r>>2]=11180,r}function ie(r,e){return e|=0,A[A[(r|=0)>>2]+(e<<2)>>2]}function Zb(r,e){var a;a=pa(e),A[r+4>>2]=e,A[r>>2]=a}function _d(r){return A[r>>2]=13724,ra(r+4|0,0,80),r}function me(r){return A[(r|=0)+12>>2]-A[r+8>>2]>>2}function Qj(r){return r?31-j(r-1^r)|0:32}function cc(r){(r|=0)&&M[A[A[r>>2]+4>>2]](r)}function jd(r,e){return e|=0,A[(r|=0)+4>>2]=e,1}function je(r){return A[(r|=0)+4>>2]-A[r>>2]>>1}function Qc(r){return A[(r|=0)+4>>2]-A[r>>2]>>2}function le(r){return A[(r|=0)+4>>2]-A[r>>2]|0}function Ab(r,e,a){32&k[0|r]||Fc(e,a,r)}function eb(r){return A[(r|=0)+28>>2]}function Rc(r){return A[(r|=0)+80>>2]}function md(r,e){return-1}function db(r){return A[(r|=0)+4>>2]}function _e(r,e){return 6}function Zc(r){return A[(r|=0)+8>>2]}function Pd(r,e){return 1}function Ja(r,e){return 0}function Bc(r){return Ec(r+80|0)+80|0}function pe(r){return A[(r|=0)>>2]}function Sc(r){(r|=0)&&oa(r)}function zc(r){Ad(r|=0),oa(r)}function Ta(r){return 0|(r|=0)}function ld(r){return 3}function _a(r){return 0}function Ze(r){return 5}function Tb(r){return 2}function Ob(r){return 6}function Da(r){return 1}function $e(r){return 4}function sa(){Ue(1164),v()}function Na(){Ue(1232),v()}function La(r){oa(r|=0)}function Ca(){af(1164),v()}function fb(r){v()}function fe(){return 3}function ee(){return 4}function bc(){return-1}function ac(){return 1}function Qb(){return 0}function Nc(){return 2}function Td(r){0}e=k,function p(r){l(e,1028,"YAQAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQAAAE41ZHJhY28yOEF0dHJpYnV0ZU9jdGFoZWRyb25UcmFuc2Zvcm1FAAAYOwAAOAQAALAHAAAtKyAgIDBYMHgAX19uZXh0X3ByaW1lIG92ZXJmbG93AHZlY3RvcgBzdGQ6OmV4Y2VwdGlvbgBza2lwX2F0dHJpYnV0ZV90cmFuc2Zvcm0AYmFkX2FycmF5X25ld19sZW5ndGgAYmFzaWNfc3RyaW5nAHN0ZDo6YmFkX2FsbG9jAERSQUNPAFVzaW5nIGluY29tcGF0aWJsZSBkZWNvZGVyIGZvciB0aGUgaW5wdXQgZ2VvbWV0cnkuAEZhaWxlZCB0byBkZWNvZGUgcG9pbnQgYXR0cmlidXRlcy4ARmFpbGVkIHRvIGluaXRpYWxpemUgdGhlIGRlY29kZXIuAFVua25vd24gbWlub3IgdmVyc2lvbi4AVW5rbm93biBtYWpvciB2ZXJzaW9uLgBJbnB1dCBpcyBub3QgYSBtZXNoLgBVbnN1cHBvcnRlZCBnZW9tZXRyeSB0eXBlLgBOb3QgYSBEcmFjbyBmaWxlLgBJbnB1dCBpcyBub3QgYSBwb2ludCBjbG91ZC4AVW5zdXBwb3J0ZWQgZW5jb2RpbmcgbWV0aG9kLgBGYWlsZWQgdG8gZGVjb2RlIG1ldGFkYXRhLgBGYWlsZWQgdG8gZGVjb2RlIGdlb21ldHJ5IGRhdGEuAChudWxsKQBQdXJlIHZpcnR1YWwgZnVuY3Rpb24gY2FsbGVkIQBLZFRyZWVBdHRyaWJ1dGVzRGVjb2RlcjogY29tcHJlc3Npb24gbGV2ZWwgJWkgbm90IHN1cHBvcnRlZC4KAEZsb2F0UG9pbnRzVHJlZURlY29kZXI6IGNvbXByZXNzaW9uIGxldmVsICVpIG5vdCBzdXBwb3J0ZWQuCgBWZXJzaW9uIG5vdCBzdXBwb3J0ZWQuIAoATWV0aG9kIG5vdCBzdXBwb3J0ZWQuIAoAAAAAAACEBwAADwAAABAAAAARAAAAEgAAABMAAAAUAAAAFQAAABYAAAAXAAAACwAAABgAAAAZAAAATjVkcmFjbzMwQXR0cmlidXRlUXVhbnRpemF0aW9uVHJhbnNmb3JtRQAAAAAYOwAAWAcAALAHAABONWRyYWNvMThBdHRyaWJ1dGVUcmFuc2Zvcm1FAAAAAPA6AACQBwAAAAAAADwIAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAjAAAAJAAAACUAAABONWRyYWNvMTdBdHRyaWJ1dGVzRGVjb2RlckUATjVkcmFjbzI2QXR0cmlidXRlc0RlY29kZXJJbnRlcmZhY2VFAAAAAPA6AAAMCAAAGDsAAPAHAAA0CAAAAAAAAKQIAAAmAAAAJwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAoAAAAKQAAACoAAABONWRyYWNvMjNLZFRyZWVBdHRyaWJ1dGVzRGVjb2RlckUAAAAYOwAAgAgAADwIAAAAAAAABAkAACsAAAAsAAAALQAAAC4AAAAvAAAAMAAAADEAAAAyAAAAMwAAAE41ZHJhY28yNlNlcXVlbnRpYWxBdHRyaWJ1dGVEZWNvZGVyRQAAAADwOgAA3AgAAP////8AAAAAfAkAADQAAAA1AAAAHAAAADYAAAA3AAAAHwAAACAAAAAhAAAAOAAAADkAAAA6AAAAOwAAADwAAABONWRyYWNvMzdTZXF1ZW50aWFsQXR0cmlidXRlRGVjb2RlcnNDb250cm9sbGVyRQAYOwAATAkAADwIAAAAAAAA8AkAAD0AAAA+AAAAPwAAAC4AAAAvAAAAMAAAAEAAAAAyAAAAQQAAAEIAAABDAAAARAAAAEUAAABONWRyYWNvMzNTZXF1ZW50aWFsSW50ZWdlckF0dHJpYnV0ZURlY29kZXJFABg7AADECQAABAkAAAAAAAB8DAAARgAAAEcAAABIAAAASQAAAEoAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABRAAAATjVkcmFjbzQwTWVzaFByZWRpY3Rpb25TY2hlbWVQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yM1ByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRUVFAE41ZHJhY28zN1ByZWRpY3Rpb25TY2hlbWVUeXBlZERlY29kZXJJbnRlcmZhY2VJaWlFRQBONWRyYWNvMzJQcmVkaWN0aW9uU2NoZW1lRGVjb2RlckludGVyZmFjZUUATjVkcmFjbzI1UHJlZGljdGlvblNjaGVtZUludGVyZmFjZUUA8DoAACAMAAAYOwAA9QsAAEQMAAAYOwAAwQsAAEwMAAAYOwAAbQsAAFgMAAAYOwAA1woAAGQMAAAYOwAANAoAAHAMAAAAAAAAcAwAAEYAAABSAAAAIwAAAEkAAAAjAAAASwAAAEwAAABNAAAATgAAAE8AAABQAAAAIwAAAAAAAABkDAAARgAAAFMAAAAjAAAASQAAACMAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAAAjAAAAAAAAANgNAABGAAAAVAAAAFUAAABJAAAAVgAAAEsAAABMAAAATQAAAE4AAABPAAAAUAAAAFcAAABONWRyYWNvNDVNZXNoUHJlZGljdGlvblNjaGVtZU11bHRpUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAYOwAAMA0AAHAMAAAAAAAA0A4AAFgAAABZAAAAWgAAAEkAAABbAAAASwAAAEwAAABNAAAATgAAAE8AAABcAAAAXQAAAE41ZHJhY281Nk1lc2hQcmVkaWN0aW9uU2NoZW1lQ29uc3RyYWluZWRNdWx0aVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAABg7AAAcDgAAcAwAAAAAAAC0DwAAXgAAAF8AAABgAAAASQAAAGEAAABiAAAAYwAAAGQAAABOAAAATwAAAGUAAABmAAAATjVkcmFjbzM2TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAABg7AAAUDwAAcAwAAAAAAACgEAAAZwAAAGgAAABpAAAASQAAAGoAAABrAAAAbAAAAG0AAABOAAAATwAAAG4AAABvAAAATjVkcmFjbzQ0TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNQb3J0YWJsZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAGDsAAPgPAABwDAAAAAAAAIwRAABwAAAAcQAAAHIAAABJAAAAcwAAAHQAAAB1AAAAdgAAAE4AAABPAAAAdwAAAHgAAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAAAAYOwAA5BAAAHAMAAAAAAAAFBMAAHkAAAB6AAAAewAAAHwAAAB9AAAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAADwOgAAXxIAABg7AAC0EQAADBMAAAAAAAAMEwAAeQAAAH4AAAAjAAAAfAAAACMAAAAAAAAAoBQAAEYAAAB/AAAAgAAAAEkAAACBAAAASwAAAEwAAABNAAAATgAAAE8AAABQAAAAggAAAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAABg7AAAKFAAAZAwAABg7AAB0EwAAlBQAAAAAAACUFAAARgAAAIMAAAAjAAAASQAAACMAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAAAjAAAAAAAAALgVAABGAAAAhAAAAIUAAABJAAAAhgAAAEsAAABMAAAATQAAAE4AAABPAAAAUAAAAIcAAABONWRyYWNvNDVNZXNoUHJlZGljdGlvblNjaGVtZU11bHRpUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAYOwAAHBUAAJQUAAAAAAAApBYAAIgAAACJAAAAigAAAEkAAACLAAAASwAAAEwAAABNAAAATgAAAE8AAACMAAAAjQAAAE41ZHJhY281Nk1lc2hQcmVkaWN0aW9uU2NoZW1lQ29uc3RyYWluZWRNdWx0aVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAABg7AAD8FQAAlBQAAAAAAAB8FwAAjgAAAI8AAACQAAAASQAAAJEAAACSAAAAkwAAAJQAAABOAAAATwAAAJUAAACWAAAATjVkcmFjbzM2TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAABg7AADoFgAAlBQAAAAAAABcGAAAlwAAAJgAAACZAAAASQAAAJoAAACbAAAAnAAAAJ0AAABOAAAATwAAAJ4AAACfAAAATjVkcmFjbzQ0TWVzaFByZWRpY3Rpb25TY2hlbWVUZXhDb29yZHNQb3J0YWJsZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAGDsAAMAXAACUFAAAAAAAADgZAACgAAAAoQAAAKIAAABJAAAAowAAAKQAAAClAAAApgAAAE4AAABPAAAApwAAAKgAAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFABg7AACgGAAAlBQAAAAAAACkGgAAqQAAAKoAAACrAAAArAAAAK0AAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUA8DoAAP4ZAAAYOwAAYBkAAJwaAAAAAAAAnBoAAKkAAACuAAAAIwAAAKwAAAAjAAAAAAAAAGAbAABGAAAArwAAALAAAABJAAAAsQAAAEsAAABMAAAATQAAAE4AAABPAAAAUAAAALIAAABONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRUVFAAAAABg7AAAEGwAAZAwAAAAAAADUGwAAswAAALQAAAC1AAAALgAAAC8AAAC2AAAAQAAAADIAAABBAAAAtwAAALgAAAC5AAAAugAAAE41ZHJhY28zMlNlcXVlbnRpYWxOb3JtYWxBdHRyaWJ1dGVEZWNvZGVyRQAAGDsAAKgbAADwCQAAAAAAAOAdAAC7AAAAvAAAAL0AAAC+AAAAvwAAAMAAAADBAAAAwgAAAMMAAADEAAAAxQAAAMYAAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzIzUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQAYOwAAaR0AAFgMAAAYOwAAyBwAAMgdAAAYOwAAGBwAANQdAAAAAAAAfB8AAMcAAADIAAAAyQAAAMoAAADLAAAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAPA6AAC+HgAAGDsAAAgeAAB0HwAAAAAAAAQhAADMAAAAzQAAAM4AAAC+AAAAzwAAANAAAADRAAAA0gAAAMMAAADEAAAA0wAAANQAAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAYOwAAYyAAAMgdAAAYOwAAwB8AAPggAAAAAAAAiCIAANUAAADWAAAA1wAAANgAAADZAAAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAPA6AADVIQAAGDsAACwhAACAIgAAAAAAADAjAADaAAAA2wAAANwAAAC+AAAA3QAAAN4AAADfAAAA4AAAAMMAAADEAAAA4QAAAOIAAABONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFEZWNvZGVySWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFRUUAGDsAAMwiAADIHQAAAAAAAGQlAADjAAAA5AAAAOUAAADmAAAA5wAAAOgAAADpAAAA6gAAAOsAAADsAAAA7QAAAO4AAABONWRyYWNvNDJNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbERlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjNQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQAAGDsAAN8kAABYDAAAGDsAADEkAABMJQAAGDsAAHQjAABYJQAAAAAAABwnAADvAAAA8AAAAPEAAADyAAAA8wAAAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAAA8DoAAE8mAAAYOwAAjCUAABQnAAAAAAAAwCgAAPQAAAD1AAAA9gAAAOYAAAD3AAAA+AAAAPkAAAD6AAAA6wAAAOwAAAD7AAAA/AAAAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAAAYOwAAECgAAEwlAAAYOwAAYCcAALQoAAAAAAAAXCoAAP0AAAD+AAAA/wAAAAABAAABAQAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAPA6AACeKQAAGDsAAOgoAABUKgAAAAAAABQrAADaAAAAAgEAAAMBAADmAAAABAEAAAUBAAAGAQAABwEAAOsAAADsAAAACAEAAAkBAABONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRUVFAAAAABg7AACgKgAATCUAAAAAAACYKwAACgEAAAsBAAAMAQAALgAAAC8AAAANAQAAQAAAADIAAABBAAAADgEAAEMAAABEAAAADwEAABABAAARAQAATjVkcmFjbzM4U2VxdWVudGlhbFF1YW50aXphdGlvbkF0dHJpYnV0ZURlY29kZXJFAAAAABg7AABkKwAA8AkAAAAAAAD4KwAAEgEAABMBAAAUAQAAFQEAACMAAAAWAQAAFwEAABgBAAAZAQAAGgEAABsBAAAcAQAAIwAAAE41ZHJhY28xMU1lc2hEZWNvZGVyRQAAABg7AADgKwAATDQAAAAAAABkLAAAHQEAAB4BAAAUAQAAHwEAACABAAAWAQAAFwEAABgBAAAhAQAAIgEAACMBAAAkAQAAJQEAAE41ZHJhY28yMk1lc2hFZGdlYnJlYWtlckRlY29kZXJFAAAAABg7AABALAAA+CsAAAAAAACILQAAJgEAACcBAAAoAQAAKQEAACoBAAArAQAALAEAAC0BAAAuAQAALwEAAP////8AAAAA7C0AADABAAAxAQAAMgEAADMBAAA0AQAANQEAADYBAAA3AQAAOAEAADkBAAAAAAAATC4AADoBAAA7AQAAPAEAAD0BAAA+AQAAPwEAAEABAABBAQAAQgEAAEMBAABONWRyYWNvMjZNZXNoRWRnZWJyZWFrZXJEZWNvZGVySW1wbElOU18zMU1lc2hFZGdlYnJlYWtlclRyYXZlcnNhbERlY29kZXJFRUUATjVkcmFjbzM1TWVzaEVkZ2VicmVha2VyRGVjb2RlckltcGxJbnRlcmZhY2VFAAAA8DoAAFAtAAAYOwAABC0AAIAtAABONWRyYWNvMjZNZXNoRWRnZWJyZWFrZXJEZWNvZGVySW1wbElOU180MU1lc2hFZGdlYnJlYWtlclRyYXZlcnNhbFByZWRpY3RpdmVEZWNvZGVyRUVFAAAAGDsAAJQtAACALQAATjVkcmFjbzI2TWVzaEVkZ2VicmVha2VyRGVjb2RlckltcGxJTlNfMzhNZXNoRWRnZWJyZWFrZXJUcmF2ZXJzYWxWYWxlbmNlRGVjb2RlckVFRQAAGDsAAPgtAACALQAAAAAAAEgvAABEAQAARQEAAEYBAABONWRyYWNvMTlEZXB0aEZpcnN0VHJhdmVyc2VySU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMxX0VFRUUATjVkcmFjbzEzVHJhdmVyc2VyQmFzZUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMV9FRUVFAPA6AADZLgAAGDsAAGwuAABALwAAAAAAAEAvAABHAQAASAEAAEYB"),l(e,12148,"AQAAAAMAAAAFAAAABwAAAAAAAABIMAAASQEAAEoBAABLAQAATAEAAE41ZHJhY28yMk1lc2hUcmF2ZXJzYWxTZXF1ZW5jZXJJTlNfMjhNYXhQcmVkaWN0aW9uRGVncmVlVHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzJfRUVFRUVFAE41ZHJhY28xNVBvaW50c1NlcXVlbmNlckUAAAAA8DoAACMwAAAYOwAAnC8AAEAwAAD/////AAAAADgxAABNAQAATgEAAE8BAABONWRyYWNvMjhNYXhQcmVkaWN0aW9uRGVncmVlVHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzFfRUVFRQBONWRyYWNvMTNUcmF2ZXJzZXJCYXNlSU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzFfRUVFRQAA8DoAANUwAAAYOwAAbDAAADAxAAAAAAAAMDEAAFABAABRAQAATwEAAAAAAADwMQAAUgEAAFMBAABUAQAAVQEAAE41ZHJhY28yMk1lc2hUcmF2ZXJzYWxTZXF1ZW5jZXJJTlNfMTlEZXB0aEZpcnN0VHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzJfRUVFRUVFAAAAGDsAAHAxAABAMAAAAAAAAHAyAABWAQAAVwEAAE8BAABONWRyYWNvMTlEZXB0aEZpcnN0VHJhdmVyc2VySU5TXzExQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzFfRUVFRQAYOwAAEDIAADAxAAAAAAAAIDMAAFgBAABZAQAAWgEAAFsBAABONWRyYWNvMjJNZXNoVHJhdmVyc2FsU2VxdWVuY2VySU5TXzE5RGVwdGhGaXJzdFRyYXZlcnNlcklOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMl9FRUVFRUUAABg7AACUMgAAQDA="),l(e,13108,"jDMAABIBAABcAQAAFAEAABUBAABdAQAAFgEAABcBAAAYAQAAGQEAABoBAAAbAQAAHAEAAF4BAABONWRyYWNvMjFNZXNoU2VxdWVudGlhbERlY29kZXJFABg7AABsMwAA+CsAAAAAAADMMwAAXwEAAGABAABhAQAAYgEAAE41ZHJhY28xNUxpbmVhclNlcXVlbmNlckUAAAAYOwAAsDMAAEAwAAAAAAAATDQAABIBAABjAQAAZAEAABUBAAAjAAAAZQEAABcBAAAYAQAAGQE="),l(e,13328,"RmFpbGVkIHRvIHBhcnNlIERyYWNvIGhlYWRlci4ATjVkcmFjbzE3UG9pbnRDbG91ZERlY29kZXJFAAAA8DoAAC40AAAAAAAApDQAABIBAABmAQAAZAEAABUBAABnAQAAaAEAABcBAAAYAQAAGQEAAE41ZHJhY28yM1BvaW50Q2xvdWRLZFRyZWVEZWNvZGVyRQAAABg7AACANAAATDQAAAAAAAAENQAAEgEAAGkBAABkAQAAFQEAAGoBAABrAQAAFwEAABgBAAAZAQAATjVkcmFjbzI3UG9pbnRDbG91ZFNlcXVlbnRpYWxEZWNvZGVyRQAAABg7AADcNAAATDQAAAEAAAABAAAAAgAAAAIAAAAEAAAABAAAAAgAAAAIAAAABAAAAAgAAAAB"),l(e,13635,"wAAAAMAAAADAAAAAwP//////////AAAAAIA1AABsAQAAbQEAAG4BAABvAQAATjVkcmFjbzRNZXNoRQAAABg7AABwNQAAxDUAAP////8AAAAAAAAAAMQ1AABwAQAAcQEAAHIBAABzAQAATjVkcmFjbzEwUG9pbnRDbG91ZEUAAAAA8DoAAKw1AAC4PAAAGQAKABkZGQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAAZABEKGRkZAwoHAAEACQsYAAAJBgsAAAsABhkAAAAZGRk="),l(e,13857,"DgAAAAAAAAAAGQAKDRkZGQANAAACAAkOAAAACQAOAAAO"),l(e,13915,"DA=="),l(e,13927,"EwAAAAATAAAAAAkMAAAAAAAMAAAM"),l(e,13973,"EA=="),l(e,13985,"DwAAAAQPAAAAAAkQAAAAAAAQAAAQ"),l(e,14031,"Eg=="),l(e,14043,"EQAAAAARAAAAAAkSAAAAAAASAAASAAAaAAAAGhoa"),l(e,14098,"GgAAABoaGgAAAAAAAAk="),l(e,14147,"FA=="),l(e,14159,"FwAAAAAXAAAAAAkUAAAAAAAUAAAU"),l(e,14205,"Fg=="),l(e,14217,"FQAAAAAVAAAAAAkWAAAAAAAWAAAWAAAwMTIzNDU2Nzg5QUJDREVGAAAAAAIAAAADAAAABQAAAAcAAAALAAAADQAAABEAAAATAAAAFwAAAB0AAAAfAAAAJQAAACkAAAArAAAALwAAADUAAAA7AAAAPQAAAEMAAABHAAAASQAAAE8AAABTAAAAWQAAAGEAAABlAAAAZwAAAGsAAABtAAAAcQAAAH8AAACDAAAAiQAAAIsAAACVAAAAlwAAAJ0AAACjAAAApwAAAK0AAACzAAAAtQAAAL8AAADBAAAAxQAAAMcAAADTAAAAAQAAAAsAAAANAAAAEQAAABMAAAAXAAAAHQAAAB8AAAAlAAAAKQAAACsAAAAvAAAANQAAADsAAAA9AAAAQwAAAEcAAABJAAAATwAAAFMAAABZAAAAYQAAAGUAAABnAAAAawAAAG0AAABxAAAAeQAAAH8AAACDAAAAiQAAAIsAAACPAAAAlQAAAJcAAACdAAAAowAAAKcAAACpAAAArQAAALMAAAC1AAAAuwAAAL8AAADBAAAAxQAAAMcAAADRAAAAAAAAAAoAAABkAAAA6AMAABAnAACghgEAQEIPAICWmAAA4fUFAMqaOwAAAAAAAAAAMDAwMTAyMDMwNDA1MDYwNzA4MDkxMDExMTIxMzE0MTUxNjE3MTgxOTIwMjEyMjIzMjQyNTI2MjcyODI5MzAzMTMyMzMzNDM1MzYzNzM4Mzk0MDQxNDI0MzQ0NDU0NjQ3NDg0OTUwNTE1MjUzNTQ1NTU2NTc1ODU5NjA2MTYyNjM2NDY1NjY2NzY4Njk3MDcxNzI3Mzc0NzU3Njc3Nzg3OTgwODE4MjgzODQ4NTg2ODc4ODg5OTA5MTkyOTM5NDk1OTY5Nzk4OTlOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQAAAAAYOwAAKDoAAKw8AABOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAAAAYOwAAWDoAAEw6AABOMTBfX2N4eGFiaXYxMTdfX3BiYXNlX3R5cGVfaW5mb0UAAAAYOwAAiDoAAEw6AABOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQAYOwAAuDoAAKw6AAAAAAAAfDoAAHkBAAB6AQAAewEAAHwBAAB9AQAAfgEAAH8BAACAAQAAAAAAAGA7AAB5AQAAgQEAAHsBAAB8AQAAfQEAAIIBAACDAQAAhAEAAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQAAAAAYOwAAODsAAHw6AAAAAAAA0DsAAA4AAACFAQAAhgEAAAAAAAD4OwAADgAAAIcBAACIAQAAAAAAALg7AAAOAAAAiQEAAIoBAABTdDlleGNlcHRpb24AAAAA8DoAAKg7AABTdDliYWRfYWxsb2MAAAAAGDsAAMA7AAC4OwAAU3QyMGJhZF9hcnJheV9uZXdfbGVuZ3RoAAAAABg7AADcOwAA0DsAAAAAAAAoPAAAAQAAAIsBAACMAQAAU3QxMWxvZ2ljX2Vycm9yABg7AAAYPAAAuDsAAAAAAABcPAAAAQAAAI0BAACMAQAAU3QxMmxlbmd0aF9lcnJvcgAAAAAYOwAASDwAACg8AAAAAAAAkDwAAAEAAACOAQAAjAEAAFN0MTJvdXRfb2ZfcmFuZ2UAAAAAGDsAAHw8AAAoPAAAU3Q5dHlwZV9pbmZvAAAAAPA6AACcPA=="),l(e,15544,"BQ=="),l(e,15556,"dAE="),l(e,15580,"dQEAAHYBAABsPg=="),l(e,15604,"Ag=="),l(e,15620,"//////////8="),l(e,15688,"BQ=="),l(e,15700,"dwE="),l(e,15724,"dQEAAHgBAAB4PgAAAAQ="),l(e,15748,"AQ=="),l(e,15764,"/////wo="),l(e,15832,"IEUB")}();var M=function c(r){return r.set=function(r,e){this[r]=e},r.get=function(r){return this[r]},r}([null,Ad,Ta,La,Tb,function Pj(r,e){r|=0;var a=0;return!(e=A[(e|=0)+88>>2])|2!=A[e>>2]||(a=r,r=A[e+8>>2],A[a+4>>2]=k[0|r]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24,a=1),0|a},function zi(r,e){r|=0;var a,i=0;A[(e|=0)>>2]=2,i=A[e+8>>2],(a=A[e+12>>2]-i|0)>>>0<=4294967291&&(kc(e+8|0,a+4|0),i=A[e+8>>2]),e=i+a|0,r=A[r+4>>2],b[0|e]=r,b[e+1|0]=r>>>8,b[e+2|0]=r>>>16,b[e+3|0]=r>>>24},function Gh(r,e,a,i){r|=0,e|=0,a|=0;var f,t,o=0,b=0,n=0,u=0,s=0,d=0,m=0;if(n=A[(i|=0)+80>>2],Q=f=Q-48|0,!((t=(r=A[r+4>>2])-2|0)>>>0>28))if(s=A[A[i>>2]>>2]+A[i+48>>2]|0,A[f+16>>2]=r,r=-1<<r,A[f+20>>2]=~r,r=-2-r|0,A[f+24>>2]=r,A[f+32>>2]=(0|r)/2,_[f+28>>2]=R(2)/R(0|r),(0|(o=A[a>>2]))==A[a+4>>2]){if(n)for(i=0,r=0;d=f+36|0,m=A[A[e>>2]>>2],u=A[e+48>>2],b=o=Rj(a=A[e+40>>2],A[e+44>>2],k[e+84|0]?r:A[A[e+68>>2]+(r<<2)>>2],0),qa(d,(o=o+u|0)+m|0,a),he(f+16|0,d,f+12|0,f+8|0),A[(a=i<<2)+s>>2]=A[f+12>>2],A[(4|a)+s>>2]=A[f+8>>2],i=i+2|0,(0|n)!=(0|(r=r+1|0)););}else for(r=0,i=0;b=A[(i<<2)+o>>2],n=f+36|0,d=A[A[e>>2]>>2],m=A[e+48>>2],o=A[e+40>>2],u=A[e+44>>2],k[e+84|0]||(b=A[A[e+68>>2]+(b<<2)>>2]),u=b=Rj(o,u,b,0),qa(n,(b=b+m|0)+d|0,o),he(f+16|0,n,f+12|0,f+8|0),A[(o=r<<2)+s>>2]=A[f+12>>2],A[(4|o)+s>>2]=A[f+8>>2],r=r+2|0,i=i+1|0,o=A[a>>2],i>>>0<A[a+4>>2]-o>>2>>>0;);return Q=f+48|0,t>>>0<29|0},Fd,function Bf(r,e){e|=0;var a,i=0;return Q=a=Q-16|0,-1!=(0|(r=A[(r|=0)+4>>2]))&&(b[a+15|0]=r,i=A[e+20>>2],!!A[e+16>>2]&(0|i)>=0|(0|i)>0||Wb(e,A[e+4>>2],a+15|0,a+16|0)),Q=a+16|0,-1!=(0|r)|0},xc,function Nh(r,e,a){e|=0,a|=0;var i,f,t,o,n,k=0;return Q=i=Q+-64|0,k=0|M[A[A[(r|=0)>>2]+44>>2]](r,e),r=0|M[A[A[r>>2]+40>>2]](r,e),f=Eb(i),t=A[e+56>>2],o=255&k,n=r,r=(r=r-1|0)>>>0<=10?A[13584+(r<<2)>>2]:-1,lc(f,t,o,n,0,k=m(r,k),k>>31),mb(r=jc(pa(96),f),a),b[r+84|0]=1,A[r+72>>2]=A[r+68>>2],A[r+60>>2]=A[e+60>>2],Q=i- -64|0,0|r},_e,function Bj(r,e){return 2},Ta,function mi(r){var e;return A[(r|=0)>>2]=1832,(e=A[r+8>>2])&&(A[r+12>>2]=e,oa(e)),0|r},function ji(r){var e;A[(r|=0)>>2]=1832,(e=A[r+8>>2])&&(A[r+12>>2]=e,oa(e)),oa(r)},Da,function gj(r,e){r|=0;var a=0,i=0,f=0,t=0,o=0,b=0,n=0,u=0,s=0;if(!(!(a=A[(e|=0)+88>>2])|1!=A[a>>2])){if(f=A[a+8>>2],A[r+4>>2]=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,t=r+8|0,i=k[e+24|0],b=A[r+8>>2],i>>>0>(o=A[r+12>>2]-b>>2)>>>0?(ya(t,i-o|0),i=k[e+24|0],f=A[a+8>>2]):i>>>0>=o>>>0||(A[r+12>>2]=b+(i<<2)),i){if(b=3&i,t=A[t>>2],i-1>>>0<3)e=4,i=0;else for(s=252&i,i=0,e=4;a=e+f|0,A[(o=i<<2)+t>>2]=k[0|a]|k[a+1|0]<<8|k[a+2|0]<<16|k[a+3|0]<<24,A[t+(4|o)>>2]=k[a+4|0]|k[a+5|0]<<8|k[a+6|0]<<16|k[a+7|0]<<24,A[t+(8|o)>>2]=k[a+8|0]|k[a+9|0]<<8|k[a+10|0]<<16|k[a+11|0]<<24,A[t+(12|o)>>2]=k[a+12|0]|k[a+13|0]<<8|k[a+14|0]<<16|k[a+15|0]<<24,i=i+4|0,e=e+16|0,(0|s)!=(0|(n=n+4|0)););if(b)for(;a=e+f|0,A[t+(i<<2)>>2]=k[0|a]|k[a+1|0]<<8|k[a+2|0]<<16|k[a+3|0]<<24,i=i+1|0,e=e+4|0,(0|b)!=(0|(u=u+1|0)););}else e=4;i=r,r=e+f|0,A[i+20>>2]=k[0|r]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24,i=1}return 0|i},function Ti(r,e){r|=0;var a,i=0,f=0,t=0,o=0;if(A[(e|=0)>>2]=1,a=e+8|0,i=A[e+8>>2],(f=A[e+12>>2]-i|0)>>>0<=4294967291&&(kc(a,f+4|0),i=A[a>>2]),i=i+f|0,f=A[r+4>>2],b[0|i]=f,b[i+1|0]=f>>>8,b[i+2|0]=f>>>16,b[i+3|0]=f>>>24,(0|(i=A[r+8>>2]))!=A[r+12>>2])for(f=0;o=(f<<2)+i|0,i=A[e+8>>2],(t=A[e+12>>2]-i|0)>>>0<=4294967291&&(kc(a,t+4|0),i=A[a>>2]),i=i+t|0,t=A[o>>2],b[0|i]=t,b[i+1|0]=t>>>8,b[i+2|0]=t>>>16,b[i+3|0]=t>>>24,f=f+1|0,i=A[r+8>>2],f>>>0<A[r+12>>2]-i>>2>>>0;);(i=(i=A[e+12>>2])-(e=A[e+8>>2])|0)>>>0<=4294967291&&(kc(a,i+4|0),e=A[a>>2]),e=e+i|0,r=A[r+20>>2],b[0|e]=r,b[e+1|0]=r>>>8,b[e+2|0]=r>>>16,b[e+3|0]=r>>>24},function Ki(r,e,a,i){r|=0,e|=0,a|=0,i|=0;var f=R(0),t=0,o=0,b=0,n=0,u=0,s=0,d=0,m=0,j=0,D=R(0),U=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0;if(A[a>>2]==A[a+4>>2]){if(m=A[i+80>>2],Q=Z=Q-16|0,o=A[r+4>>2],s=k[e+24|0],b=A[i+48>>2],j=A[A[i>>2]>>2],A[(a=Z+8|0)>>2]=1065353216,i=a,_[a>>2]=R(~(-1<<o))/_[r+20>>2],a=pa(s<<2),!(!m|!s))if(U=b+j|0,D=_[i>>2],j=A[r+8>>2],F=A[e>>2],i=A[e+48>>2],o=A[e+40>>2],B=A[e+44>>2],k[e+84|0])for(W=254&s,G=1&s,r=0;;){if(u=qa(a,(e=A[F>>2])+(b=Rj(o,B,n,d)+i|0)|0,o),e=0,N=0,1!=(0|s))for(;b=U+(r<<2)|0,f=R(T(R(R(D*R(_[(t=e<<2)+u>>2]-_[t+j>>2]))+R(.5)))),V=R(h(f))<R(2147483648)?~~f:-2147483648,A[b>>2]=V,f=R(T(R(R(D*R(_[(t|=4)+u>>2]-_[t+j>>2]))+R(.5)))),t=R(h(f))<R(2147483648)?~~f:-2147483648,A[b+4>>2]=t,e=e+2|0,r=r+2|0,(0|W)!=(0|(N=N+2|0)););if(G&&(b=U+(r<<2)|0,f=R(T(R(R(D*R(_[(e<<=2)+u>>2]-_[e+j>>2]))+R(.5)))),e=R(h(f))<R(2147483648)?~~f:-2147483648,A[b>>2]=e,r=r+1|0),e=d,d=e=(n=n+1|0)?e:e+1|0,!((0|n)!=(0|m)|e))break}else for(t=A[e+68>>2],W=254&s,G=1&s,r=0;;){if(b=qa(a,(e=A[F>>2])+(d=Rj(o,B,A[t+(n<<2)>>2],0)+i|0)|0,o),e=0,N=0,1!=(0|s))for(;d=U+(r<<2)|0,f=R(T(R(R(D*R(_[(u=e<<2)+b>>2]-_[j+u>>2]))+R(.5)))),V=R(h(f))<R(2147483648)?~~f:-2147483648,A[d>>2]=V,f=R(T(R(R(D*R(_[(u|=4)+b>>2]-_[j+u>>2]))+R(.5)))),u=R(h(f))<R(2147483648)?~~f:-2147483648,A[d+4>>2]=u,e=e+2|0,r=r+2|0,(0|W)!=(0|(N=N+2|0)););if(G&&(d=U+(r<<2)|0,f=R(T(R(R(D*R(_[(e<<=2)+b>>2]-_[e+j>>2]))+R(.5)))),e=R(h(f))<R(2147483648)?~~f:-2147483648,A[d>>2]=e,r=r+1|0),(0|m)==(0|(n=n+1|0)))break}return oa(a),Q=Z+16|0,1}if(Q=u=Q-16|0,m=A[r+4>>2],n=k[e+24|0],o=A[i+48>>2],b=A[A[i>>2]>>2],A[(i=u+8|0)>>2]=1065353216,d=i,_[i>>2]=R(~(-1<<m))/_[r+20>>2],i=pa(n<<2),!(!n|(0|(m=A[a+4>>2]))==(0|(N=A[a>>2]))))if(j=b+o|0,Z=(a=m-N>>2)>>>0<=1?1:a,D=_[d>>2],b=A[r+8>>2],F=A[e>>2],d=A[e+48>>2],m=A[e+40>>2],B=A[e+44>>2],k[e+84|0])for(W=254&n,G=1&n,r=0,a=0;;){if(U=qa(i,(e=A[F>>2])+(o=Rj(m,B,A[N+(a<<2)>>2],0)+d|0)|0,m),e=0,s=0,1!=(0|n))for(;o=j+(r<<2)|0,f=R(T(R(R(D*R(_[(t=e<<2)+U>>2]-_[b+t>>2]))+R(.5)))),V=R(h(f))<R(2147483648)?~~f:-2147483648,A[o>>2]=V,f=R(T(R(R(D*R(_[(t|=4)+U>>2]-_[b+t>>2]))+R(.5)))),t=R(h(f))<R(2147483648)?~~f:-2147483648,A[o+4>>2]=t,e=e+2|0,r=r+2|0,(0|W)!=(0|(s=s+2|0)););if(G&&(o=j+(r<<2)|0,f=R(T(R(R(D*R(_[(e<<=2)+U>>2]-_[e+b>>2]))+R(.5)))),e=R(h(f))<R(2147483648)?~~f:-2147483648,A[o>>2]=e,r=r+1|0),(0|Z)==(0|(a=a+1|0)))break}else for(W=A[e+68>>2],G=254&n,I=1&n,r=0,a=0;;){if(U=qa(i,(e=A[F>>2])+(o=Rj(m,B,A[W+(A[N+(a<<2)>>2]<<2)>>2],0)+d|0)|0,m),e=0,s=0,1!=(0|n))for(;o=j+(r<<2)|0,f=R(T(R(R(D*R(_[(t=e<<2)+U>>2]-_[b+t>>2]))+R(.5)))),V=R(h(f))<R(2147483648)?~~f:-2147483648,A[o>>2]=V,f=R(T(R(R(D*R(_[(t|=4)+U>>2]-_[b+t>>2]))+R(.5)))),t=R(h(f))<R(2147483648)?~~f:-2147483648,A[o+4>>2]=t,e=e+2|0,r=r+2|0,(0|G)!=(0|(s=s+2|0)););if(I&&(o=j+(r<<2)|0,f=R(T(R(R(D*R(_[(e<<=2)+U>>2]-_[e+b>>2]))+R(.5)))),e=R(h(f))<R(2147483648)?~~f:-2147483648,A[o>>2]=e,r=r+1|0),(0|Z)==(0|(a=a+1|0)))break}return oa(i),Q=u+16|0,1},Re,function xi(r,e){e|=0;var a,i,f=0,t=0;return Q=a=Q-16|0,-1!=(0|(i=A[(r|=0)+4>>2]))&&(f=A[e+20>>2],!!A[e+16>>2]&(0|f)>=0|(0|f)>0||(Wb(e,A[e+4>>2],A[r+8>>2],A[r+12>>2]),f=A[e+20>>2],!!A[e+16>>2]&(0|f)>=0|(0|f)>0||(Wb(e,A[e+4>>2],r+20|0,r+24|0),f=A[e+20>>2],t=A[e+16>>2],b[a+15|0]=A[r+4>>2],!!t&(0|f)>=0|(0|f)>0||Wb(e,A[e+4>>2],a+15|0,a+16|0)))),Q=a+16|0,-1!=(0|i)|0},Je,_e,function hi(r,e){return k[(e|=0)+24|0]},function wg(r){var e=0;return A[(r|=0)>>2]=1984,(e=A[r+16>>2])&&(A[r+20>>2]=e,oa(e)),(e=A[r+4>>2])&&(A[r+8>>2]=e,oa(e)),0|r},fb,function dh(r,e,a){return e|=0,a|=0,A[(r|=0)+32>>2]=a,A[r+28>>2]=e,1},ke,function jg(r,e){e|=0;var a=0;return 0|M[A[A[(r|=0)>>2]+36>>2]](r,e)&&0|M[A[A[r>>2]+40>>2]](r,e)&&(a=0|M[A[A[r>>2]+44>>2]](r)),0|a},function _f(r,e){return e|=0,A[A[(r|=0)+4>>2]+(e<<2)>>2]},function Uf(r){return A[(r|=0)+8>>2]-A[r+4>>2]>>2},eb,Ja,function Nf(){W(),v()},Pd,Da,rd,function yf(r){oa(rd(r|=0))},function Of(r,e){r|=0;var a,i=0,f=0,t=0,o=0,n=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0;Q=a=Q-704|0,D=1;r:{e:{a:{if(!(u[(e|=0)+38>>1]<515||(D=0,(0|(i=A[e+20>>2]))>=(0|(f=A[e+12>>2]))&(o=A[e+16>>2])>>>0>=s[e+8>>2]|(0|i)>(0|f)))){if(T=k[A[e>>2]+o|0],i=(o=o+1|0)?i:i+1|0,A[e+16>>2]=o,A[e+20>>2]=i,o=A[A[4+(0|M[A[A[r>>2]+28>>2]](r))>>2]+80>>2],i=0|M[A[A[r>>2]+24>>2]](r),A[a+40>>2]=0,A[a+32>>2]=0,A[a+36>>2]=0,i){if(i>>>0>=214748365)break a;f=pa(i=m(i,20)),A[a+32>>2]=f,A[a+40>>2]=i+f,N=a,V=ra(f,0,i=20+((i=i-20|0)-((i>>>0)%20|0)|0)|0)+i|0,A[N+36>>2]=V}i:{if((0|M[A[A[r>>2]+24>>2]](r))>0)for(;;){if(i=0|M[A[A[r>>2]+20>>2]](r,h),mb(i=A[A[A[4+(0|M[A[A[r>>2]+28>>2]](r))>>2]+8>>2]+(i<<2)>>2],o),b[i+84|0]=1,A[i+72>>2]=A[i+68>>2],(f=A[i+28>>2])>>>0>9)break i;f:{t:{o:{if(!(42&(t=1<<f))){if(84&t)break f;if(9!=(0|f))break i;if(f=k[i+24|0],t=Eb(a+48|0),_=m(f,A[3401]),lc(t,A[i+56>>2],f,6,0,_,_>>31),i=jc(pa(96),t),A[a>>2]=i,b[i+84|0]=1,A[i+72>>2]=A[i+68>>2],mb(i,o),(i=A[r+64>>2])>>>0>=s[r+68>>2])break o;f=A[a>>2],A[a>>2]=0,A[i>>2]=f,i=i+4|0,A[r+64>>2]=i;break t}if(d=0,!k[i+24|0])break f;for(;;){if((f=A[r+52>>2])>>>0<(_=A[r+56>>2])>>>0)A[f>>2]=0,A[r+52>>2]=f+4;else{if((t=(R=(j=(t=f)-(f=A[r+48>>2])|0)>>2)+1|0)>>>0>=1073741824)break e;if(U=R<<2,R=(_=_-f|0)>>>1|0,t=_>>>0>=2147483644?1073741823:t>>>0<R>>>0?R:t){if(t>>>0>=1073741824)break r;_=pa(t<<2)}else _=0;A[(R=U+_|0)>>2]=0,U=t<<2,t=va(_,f,j),A[r+56>>2]=U+t,A[r+52>>2]=R+4,A[r+48>>2]=t,f&&oa(f)}if(!((d=d+1|0)>>>0<k[i+24|0]))break}break f}i=0;o:{b:{n:{if(t=A[r+60>>2],(f=(_=A[r+64>>2]-t>>2)+1|0)>>>0<1073741824){if(d=(t=A[r+68>>2]-t|0)>>>1|0,t=t>>>0>=2147483644?1073741823:f>>>0<d>>>0?d:f){if(t>>>0>=1073741824)break n;i=pa(t<<2)}if(d=A[a>>2],A[a>>2]=0,A[(f=(_<<2)+i|0)>>2]=d,t=(t<<2)+i|0,_=f+4|0,(0|(i=A[r+64>>2]))==(0|(d=A[r+60>>2])))break b;for(;j=A[(i=i-4|0)>>2],A[i>>2]=0,A[(f=f-4|0)>>2]=j,(0|i)!=(0|d););if(A[r+68>>2]=t,t=A[r+64>>2],A[r+64>>2]=_,i=A[r+60>>2],A[r+60>>2]=f,(0|i)==(0|t))break o;for(;f=A[(t=t-4|0)>>2],A[t>>2]=0,f&&Ga(f),(0|i)!=(0|t););break o}sa(),v()}wa(),v()}A[r+68>>2]=t,A[r+64>>2]=_,A[r+60>>2]=f}i&&oa(i),i=A[r+64>>2]}i=A[i-4>>2],f=A[a>>2],A[a>>2]=0,f&&Ga(f)}if(t=(f=(_=A[i+28>>2])-1|0)>>>0<=10?A[13584+(f<<2)>>2]:-1,f=A[a+32>>2]+m(h,20)|0,d=k[i+24|0],A[f+16>>2]=d,A[f+12>>2]=(0|t)>0?t:0,A[f+8>>2]=_,A[f+4>>2]=n,A[f>>2]=i,n=n+d|0,h=h+1|0,!((0|M[A[A[r>>2]+24>>2]](r))>(0|h)))break}r=Ac(a,a+32|0);f:{t:{o:switch(0|T){case 0:if(e=Bd(i=wb(a+48|0,n),e,r,o),n=A[i+8>>2],xb(i),!e)break f;if((0|n)==(0|o))break t;break f;case 1:if(e=zd(i=wb(a+48|0,n),e,r,o),n=A[i+8>>2],xb(i),!e)break f;if((0|n)==(0|o))break t;break f;case 2:if(e=yd(i=ub(a+48|0,n),e,r,o),n=A[i+8>>2],vb(i),!e)break f;if((0|n)==(0|o))break t;break f;case 3:if(e=xd(i=ub(a+48|0,n),e,r,o),n=A[i+8>>2],vb(i),!e)break f;if((0|n)==(0|o))break t;break f;case 4:if(e=wd(i=$a(a+48|0,n),e,r,o),n=A[i+8>>2],ab(i),!e)break f;if((0|n)==(0|o))break t;break f;case 5:if(e=vd(i=$a(a+48|0,n),e,r,o),n=A[i+8>>2],ab(i),!e)break f;if((0|n)==(0|o))break t;break f;case 6:break o;default:break f}if(e=ud(i=$a(a+48|0,n),e,r,o),n=A[i+8>>2],ab(i),!e|(0|n)!=(0|o))break f}D=1}(e=A[r+16>>2])&&(A[r+20>>2]=e,oa(e)),(e=A[r>>2])&&(A[r+4>>2]=e,oa(e))}(r=A[a+32>>2])&&(A[a+36>>2]=r,oa(r))}return Q=a+704|0,0|D}sa(),v()}sa(),v()}wa(),v()},function Af(r,e){r|=0,e|=0;var a,i,f=0,n=0,d=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=R(0),F=0,B=0;Q=a=Q-720|0;r:{e:{a:{i:{f:{t:{o:{b:{n:{if(u[e+38>>1]>=515){if(A[a+680>>2]=0,A[a+672>>2]=0,A[a+676>>2]=0,(0|M[A[A[r>>2]+24>>2]](r))<=0)break i;for(;;){if(f=0|M[A[A[r>>2]+20>>2]](r,W),n=A[A[A[4+(0|M[A[A[r>>2]+28>>2]](r))>>2]+8>>2]+(f<<2)>>2],9==A[n+28>>2]){if(d=A[a+672>>2],(f=A[a+676>>2]-d>>2)>>>0<(T=k[n+24|0])>>>0?ya(a+672|0,T-f|0):f>>>0<=T>>>0||(A[a+676>>2]=d+(T<<2)),U=0,D=A[e+8>>2],j=A[e+12>>2],f=A[e+20>>2],n=T<<2,D>>>0<(N=(d=A[e+16>>2])+n|0)>>>0&(0|(f=n>>>0>N>>>0?f+1|0:f))>=(0|j)|(0|f)>(0|j))break e;if(qa(A[a+672>>2],d+A[e>>2]|0,n),f=A[e+20>>2],f=(d=n)>>>0>(n=n+A[e+16>>2]|0)>>>0?f+1|0:f,D=n,A[e+16>>2]=n,A[e+20>>2]=f,N=A[e+12>>2],(h=A[e+8>>2])>>>0<(j=n+4|0)>>>0&(0|(n=d=j>>>0<4?f+1|0:f))>=(0|N)|(0|n)>(0|N))break e;if(G=A[e>>2],d=k[0|(d=G+D|0)]|k[d+1|0]<<8|k[d+2|0]<<16|k[d+3|0]<<24,A[e+16>>2]=j,A[e+20>>2]=n,h>>>0<=j>>>0&(0|n)>=(0|N)|(0|n)>(0|N))break e;if(n=k[j+G|0],f=(j=D+5|0)>>>0<5?f+1|0:f,A[e+16>>2]=j,A[e+20>>2]=f,n>>>0>31)break e;if(i=d,t[2]=i,Z=o[2],A[a+20>>2]=-1,A[a+16>>2]=1832,A[a+32>>2]=0,A[a+36>>2]=0,A[a+24>>2]=0,A[a+28>>2]=0,f=A[a+672>>2],(G=n-1|0)>>>0<=29){A[a+20>>2]=n;A:if((d=(N=(j=f+(T<<2)|0)-f|0)>>2)>>>0<=(D=A[a+32>>2])-(n=A[a+24>>2])>>2>>>0){if(h=(D=d>>>0>(N=(D=A[a+28>>2]-n|0)>>2)>>>0?f+D|0:j)-f|0,(0|f)!=(0|D)&&va(n,f,h),d>>>0>N>>>0){f=j-D|0,n=A[a+28>>2],(0|j)!=(0|D)&&va(n,D,f),A[a+28>>2]=f+n;break A}A[a+28>>2]=n+h}else n&&(A[a+28>>2]=n,oa(n),A[a+32>>2]=0,A[a+24>>2]=0,A[a+28>>2]=0,D=0),(0|N)<0||(n=D>>>1|0,(n=D>>>0>=2147483644?1073741823:n>>>0>d>>>0?n:d)>>>0>=1073741824)?(sa(),v()):(n=pa(D=n<<2),A[a+28>>2]=n,A[a+24>>2]=n,A[a+32>>2]=n+D,(0|f)!=(0|j)&&qa(n,f,N),A[a+28>>2]=n+(d<<2));_[a+36>>2]=Z}if(!(G>>>0>=30)&&Xc(a+16|0,A[A[r+60>>2]+((A[r+40>>2]-A[r+36>>2]|0)/24<<2)>>2])){if((0|(f=A[r+40>>2]))==A[r+44>>2]){n=0;A:{k:{c:{u:{if((f=(D=((U=A[r+40>>2])-(d=A[r+36>>2])|0)/24|0)+1|0)>>>0<178956971){if(N=(j=(A[r+44>>2]-d|0)/24|0)<<1,j=j>>>0>=89478485?178956970:f>>>0<N>>>0?N:f){if(j>>>0>=178956971)break u;n=pa(m(j,24))}if(h=m(D,24)+n|0,A[h>>2]=1832,f=A[a+20>>2],A[h+16>>2]=0,A[h+8>>2]=0,A[h+12>>2]=0,A[h+4>>2]=f,(0|(f=A[a+24>>2]))!=(0|(D=A[a+28>>2]))){if((0|(N=D-f|0))<0)break c;for(T=pa(N),A[h+8>>2]=T,A[h+16>>2]=(-4&N)+T;_[T>>2]=_[f>>2],T=T+4|0,(0|D)!=(0|(f=f+4|0)););A[h+12>>2]=T}if(f=m(j,24)+n|0,_[h+20>>2]=_[a+36>>2],n=h+24|0,(0|d)==(0|U))break k;for(;A[(h=h-24|0)>>2]=1832,U=U-24|0,A[h+4>>2]=A[U+4>>2],A[h+8>>2]=A[U+8>>2],A[h+12>>2]=A[U+12>>2],A[h+16>>2]=A[U+16>>2],A[U+16>>2]=0,A[U+8>>2]=0,A[U+12>>2]=0,_[h+20>>2]=_[U+20>>2],(0|d)!=(0|U););if(A[r+44>>2]=f,T=A[r+40>>2],A[r+40>>2]=n,U=A[r+36>>2],A[r+36>>2]=h,(0|U)==(0|T))break A;for(;M[A[A[(T=T-24|0)>>2]>>2]](T),(0|U)!=(0|T););break A}sa(),v()}wa(),v()}sa(),v()}A[r+44>>2]=f,A[r+40>>2]=n,A[r+36>>2]=h}U&&oa(U)}else{if(A[f>>2]=1832,n=A[a+20>>2],A[f+16>>2]=0,A[f+8>>2]=0,A[f+12>>2]=0,A[f+4>>2]=n,(0|(n=A[a+28>>2]))!=(0|(d=A[a+24>>2]))){if((0|(n=n-d|0))<0)break n;if(h=pa(n),A[f+12>>2]=h,A[f+8>>2]=h,A[f+16>>2]=(-4&n)+h,(0|(T=A[a+24>>2]))!=(0|(n=A[a+28>>2])))for(;_[h>>2]=_[T>>2],h=h+4|0,(0|n)!=(0|(T=T+4|0)););A[f+12>>2]=h}_[f+20>>2]=_[a+36>>2],A[r+40>>2]=f+24}U=1}if(A[a+16>>2]=1832,(f=A[a+24>>2])&&(A[a+28>>2]=f,oa(f)),!U)break a}if(W=W+1|0,!((0|M[A[A[r>>2]+24>>2]](r))>(0|W)))break}break i}if(T=0|M[A[A[r>>2]+24>>2]](r),A[a+712>>2]=0,A[a+704>>2]=0,A[a+708>>2]=0,T){if(T>>>0>=214748365)break b;for(n=pa(f=m(T,20)),A[a+704>>2]=n,A[a+712>>2]=f+n,F=a,B=ra(n,0,f=20+((f=f-20|0)-((f>>>0)%20|0)|0)|0)+f|0,A[F+708>>2]=B;;){if(f=0|M[A[A[r>>2]+20>>2]](r,V),n=A[A[A[4+(0|M[A[A[r>>2]+28>>2]](r))>>2]+8>>2]+(f<<2)>>2],(j=(0|(f=(f=(d=A[n+28>>2])-1|0)>>>0<=10?A[13584+(f<<2)>>2]:-1))>0?f:0)>>>0>4)break t;if(f=A[a+704>>2]+m(V,20)|0,D=k[n+24|0],A[f+16>>2]=D,A[f+12>>2]=j,A[f+8>>2]=d,A[f+4>>2]=h,A[f>>2]=n,h=h+D|0,(0|T)==(0|(V=V+1|0)))break}}if(f=0|M[A[A[r>>2]+20>>2]](r,0),V=A[A[A[4+(0|M[A[A[r>>2]+28>>2]](r))>>2]+8>>2]+(f<<2)>>2],b[V+84|0]=1,A[V+72>>2]=A[V+68>>2],(0|(f=j=A[e+12>>2]))<=(0|(n=A[e+20>>2]))&(d=A[e+8>>2])>>>0<=(D=A[e+16>>2])>>>0|(0|f)<(0|n))break t;W=A[e>>2],G=k[W+D|0],f=n,f=(N=D+1|0)?f:f+1|0,A[e+16>>2]=N,A[e+20>>2]=f;A:switch(0|G){case 0:if(r=A[a+704>>2],20!=(A[a+708>>2]-r|0))break f;if(3!=A[r+16>>2])break t;if(!(d>>>0<=N>>>0&(0|f)>=(0|j)|(0|f)>(0|j)||(f=n,f=(r=D+2|0)>>>0<2?f+1|0:f,N=r,A[e+16>>2]=r,A[e+20>>2]=f,f=n,(r=D+6|0)>>>0>d>>>0&(0|(f=r>>>0<6?f+1|0:f))>=(0|j)|(0|f)>(0|j)))){n=k[0|(n=N+W|0)]|k[n+1|0]<<8|k[n+2|0]<<16|k[n+3|0]<<24,A[e+16>>2]=r,A[e+20>>2]=f,mb(V,n),A[(U=a+672|0)+20>>2]=0,A[U+12>>2]=0,A[U+16>>2]=0,A[U>>2]=0,A[U+4>>2]=0,A[U+20>>2]=n,n=Ac(a+16|0,a+704|0),T=0,Q=h=Q-32|0,A[h+24>>2]=0,A[h+16>>2]=0,A[h+20>>2]=0,V=d=A[e+12>>2],D=A[e+8>>2],N=f=A[e+20>>2];k:if(!((r=(j=A[e+16>>2])+4|0)>>>0>D>>>0&(0|(f=r>>>0<4?f+1|0:f))>=(0|d)|(0|f)>(0|d))){W=A[e>>2],d=k[0|(d=W+j|0)]|k[d+1|0]<<8|k[d+2|0]<<16|k[d+3|0]<<24,A[e+16>>2]=r,A[e+20>>2]=f;c:{u:switch(d-2|0){case 1:if((0|f)>=(0|V)&r>>>0>=D>>>0|(0|f)>(0|V))break k;if(r=b[r+W|0],f=N,f=(d=j+5|0)>>>0<5?f+1|0:f,A[e+16>>2]=d,A[e+20>>2]=f,A[U+8>>2]=r,1==(0|r)){if(Ud(U,e,h+16|0))break c;break k}Rd(1799,23,A[3443]);break k;default:Rd(1774,24,A[3443]);break k;case 0:break u}if(!Ud(U,e,h+16|0))break k}if(A[h+8>>2]=A[h+16>>2],A[h>>2]=A[h+20>>2],Q=f=Q-32|0,r=A[U>>2],Z=_[U+4>>2],A[f+24>>2]=1065353216,(0|(r=j=~(-1<<r)))>0&&(_[f+24>>2]=Z/R(0|r)),(0|(V=A[h+8>>2]))!=(0|(W=A[h>>2])))for(r=A[n+28>>2];e=A[V>>2],d=A[V+4>>2],Z=_[f+24>>2],_[f+16>>2]=Z*R(A[V+8>>2]-j|0),_[f+12>>2]=Z*R(d-j|0),_[f+8>>2]=Z*R(e-j|0),e=r,D=A[n+16>>2],d=A[D>>2],k[d+84|0]||(e=A[A[d+68>>2]+(r<<2)>>2]),s[d+80>>2]>e>>>0&&(r=A[d+40>>2],qa(A[A[d>>2]>>2]+m(r,e)|0,(f+8|0)+(A[D+4>>2]<<2)|0,r),W=A[h>>2],r=A[n+28>>2]),r=r+1|0,A[n+28>>2]=r,(0|W)!=(0|(V=V+12|0)););Q=f+32|0,T=1}if((r=A[h+16>>2])&&(A[h+20>>2]=r,oa(r)),Q=h+32|0,yc(n),U=1,T)break t}U=0;break t;case 1:break A;default:break t}if(d>>>0<=N>>>0&(0|f)>=(0|j)|(0|f)>(0|j))break t;if(G=k[N+W|0],f=n,f=(N=D+2|0)>>>0<2?f+1|0:f,A[e+16>>2]=N,A[e+20>>2]=f,G>>>0>=7){A[a>>2]=G,Qd(1651,a);break t}if(f=n,(n=D+6|0)>>>0>d>>>0&(0|(f=n>>>0<6?f+1|0:f))>=(0|j)|(0|f)>(0|j))break t;if(d=k[0|(d=N+W|0)]|k[d+1|0]<<8|k[d+2|0]<<16|k[d+3|0]<<24,A[e+16>>2]=n,A[e+20>>2]=f,T)for(V=0;f=0|M[A[A[r>>2]+20>>2]](r,V),mb(f=A[A[A[4+(0|M[A[A[r>>2]+28>>2]](r))>>2]+8>>2]+(f<<2)>>2],d),b[f+84|0]=1,A[f+72>>2]=A[f+68>>2],(0|T)!=(0|(V=V+1|0)););r=Ac(a+672|0,a+704|0);A:{k:switch(0|G){case 1:if(e=zd(f=wb(a+16|0,h),e,r,-1),xb(f),!e)break o;break A;case 2:if(e=yd(f=ub(a+16|0,h),e,r,-1),vb(f),!e)break o;break A;case 3:if(e=xd(f=ub(a+16|0,h),e,r,-1),vb(f),!e)break o;break A;case 4:if(e=wd(f=$a(a+16|0,h),e,r,-1),ab(f),!e)break o;break A;case 5:if(e=vd(f=$a(a+16|0,h),e,r,-1),ab(f),!e)break o;break A;case 6:if(e=ud(f=$a(a+16|0,h),e,r,-1),ab(f),e)break A;break o;case 0:break k;default:break o}if(e=Bd(f=wb(a+16|0,h),e,r,-1),xb(f),!e)break o}yc(r),U=1;break t}sa(),v()}sa(),v()}yc(r)}r=A[a+704>>2]}if(!r)break r;A[a+708>>2]=r,oa(r);break r}if(U=1,A[r+52>>2]==A[r+48>>2])break e;for(;;){if(!td(1,a+16|0,e))break a;if(f=A[r+48>>2],n=A[a+16>>2],A[f+(V<<2)>>2]=n>>>1^0-(1&n),!((V=V+1|0)>>>0<A[r+52>>2]-f>>2>>>0))break}break e}U=0}(r=A[a+672>>2])&&(A[a+676>>2]=r,oa(r))}return Q=a+720|0,0|U},function zf(r){r|=0;var e,a=0,i=0,f=0,t=0,o=0,d=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0,E=R(0),Y=0;Q=e=Q-16|0;r:if(A[r+60>>2]!=A[r- -64>>2]|A[r+48>>2]!=A[r+52>>2]){if(D=1,!((0|M[A[A[r>>2]+24>>2]](r))<=0)){for(;;){e:{a=0|M[A[A[r>>2]+20>>2]](r,Y);a:{i:{f:switch(o=A[A[A[4+(0|M[A[A[r>>2]+28>>2]](r))>>2]+8>>2]+(a<<2)>>2],A[o+28>>2]-1|0){case 8:break i;case 0:case 2:case 4:break f;default:break a}(a=k[o+24|0])?(D=0,ra(V=pa(a<<=2),0,a),(a=k[o+24|0])&&ra(D=pa(a<<=2),0,a)):(V=0,D=0);f:{t:{o:switch(A[o+28>>2]-1|0){case 4:j=0,h=0,f=0,a=0,U=0,(t=k[o+24|0])?(ra(h=pa(t<<=2),0,t),ra(d=pa(t),0,t)):d=0;b:{if(A[o+80>>2])for(;;){if(W=A[o>>2],N=qa(h,F=(i=A[W>>2])+(N=(N=A[o+48>>2])+(T=Rj(t=A[o+40>>2],A[o+44>>2],f,a))|0)|0,i=t),T=k[o+24|0])for(B=A[r+48>>2],t=0;;){if((0|(F=A[(Z=t<<2)+N>>2]))<0)break b;if(A[d+Z>>2]=F+A[B+(t+I<<2)>>2],(0|T)==(0|(t=t+1|0)))break}if(qa(A[W>>2]+m(f,i)|0,d,i),!(!(a=(f=f+1|0)?a:a+1|0)&s[o+80>>2]>f>>>0))break}U=1}if(d&&oa(d),h&&oa(h),U)break t;break f;case 2:if(d=0,t=0,f=0,a=0,(i=k[o+24|0])&&(ra(t=pa(i<<=1),0,i),ra(d=pa(i),0,i)),A[o+80>>2])for(;;){if(T=A[o>>2],U=qa(t,(h=A[T>>2])+(j=(j=A[o+48>>2])+(U=Rj(i=A[o+40>>2],A[o+44>>2],f,a))|0)|0,i),W=k[o+24|0]){if(N=A[r+48>>2],h=0,1!=(0|W))for(B=254&W,j=0;n[(Z=h<<1)+d>>1]=u[U+Z>>1]+u[N+(h+I<<2)>>1],n[(F=(Z=1|h)<<1)+d>>1]=u[U+F>>1]+u[N+(Z+I<<2)>>1],h=h+2|0,(0|B)!=(0|(j=j+2|0)););1&W&&(n[(j=h<<1)+d>>1]=u[j+U>>1]+u[N+(h+I<<2)>>1])}if(qa(A[T>>2]+m(f,i)|0,d,i),!(!(a=(f=f+1|0)?a:a+1|0)&s[o+80>>2]>f>>>0))break}d&&oa(d),t&&oa(t);break t;case 0:break o;default:break t}if(h=0,t=0,f=0,a=0,(i=k[o+24|0])&&(ra(t=pa(i),0,i),ra(h=pa(i),0,i)),A[o+80>>2])for(;;){if(B=A[o>>2],U=qa(t,(d=A[B>>2])+(j=(j=A[o+48>>2])+(U=Rj(i=A[o+40>>2],A[o+44>>2],f,a))|0)|0,i),W=k[o+24|0]){if(N=A[r+48>>2],d=0,1!=(0|W))for(Z=254&W,j=0;b[d+h|0]=k[d+U|0]+k[N+(d+I<<2)|0],b[(T=1|d)+h|0]=k[U+T|0]+k[N+(T+I<<2)|0],d=d+2|0,(0|Z)!=(0|(j=j+2|0)););1&W&&(b[d+h|0]=k[d+U|0]+k[N+(d+I<<2)|0])}if(qa(A[B>>2]+m(f,i)|0,h,i),!(!(a=(f=f+1|0)?a:a+1|0)&s[o+80>>2]>f>>>0))break}h&&oa(h),t&&oa(t)}I=k[o+24|0]+I|0,j=1}if(D&&oa(D),V&&oa(V),j)break a;D=0;break r}if(t=A[A[r+60>>2]+(G<<2)>>2],h=A[r+36>>2],d=A[40+(0|M[A[A[r>>2]+28>>2]](r))>>2],A[e+12>>2]=A[o+56>>2],a=pa(32),A[e>>2]=a,A[e+4>>2]=24,A[e+8>>2]=-2147483616,f=k[1206]|k[1207]<<8|k[1208]<<16|k[1209]<<24,i=k[1202]|k[1203]<<8|k[1204]<<16|k[1205]<<24,b[a+16|0]=i,b[a+17|0]=i>>>8,b[a+18|0]=i>>>16,b[a+19|0]=i>>>24,b[a+20|0]=f,b[a+21|0]=f>>>8,b[a+22|0]=f>>>16,b[a+23|0]=f>>>24,f=k[1198]|k[1199]<<8|k[1200]<<16|k[1201]<<24,i=k[1194]|k[1195]<<8|k[1196]<<16|k[1197]<<24,b[a+8|0]=i,b[a+9|0]=i>>>8,b[a+10|0]=i>>>16,b[a+11|0]=i>>>24,b[a+12|0]=f,b[a+13|0]=f>>>8,b[a+14|0]=f>>>16,b[a+15|0]=f>>>24,f=k[1190]|k[1191]<<8|k[1192]<<16|k[1193]<<24,i=k[1186]|k[1187]<<8|k[1188]<<16|k[1189]<<24,b[0|a]=i,b[a+1|0]=i>>>8,b[a+2|0]=i>>>16,b[a+3|0]=i>>>24,b[a+4|0]=f,b[a+5|0]=f>>>8,b[a+6|0]=f>>>16,b[a+7|0]=f>>>24,b[a+24|0]=0,f=sd(d,e+12|0,e),b[e+11|0]<0&&oa(A[e>>2]),a=G+1|0,f)oe(o,t);else{if(d=h+m(G,24)|0,G=A[d+4>>2],f=pa(h=(i=k[o+24|0])<<2),A[e>>2]=1065353216,E=_[d+20>>2],(0|(G=~(-1<<G)))>0&&(_[e>>2]=E/R(0|G)),(0|G)<=0)break e;if(A[t+80>>2])if(i)for(W=A[A[t>>2]>>2]+A[t+48>>2]|0,B=254&i,Z=1&i,j=0,U=0,D=0;;){if(G=A[d+8>>2],E=_[e>>2],V=0,N=0,1!=(0|i))for(;F=W+(D<<2)|0,_[(T=V<<2)+f>>2]=R(E*R(A[F>>2]))+_[T+G>>2],_[(T|=4)+f>>2]=R(E*R(A[F+4>>2]))+_[T+G>>2],V=V+2|0,D=D+2|0,(0|B)!=(0|(N=N+2|0)););if(Z&&(_[(V<<=2)+f>>2]=R(E*R(A[W+(D<<2)>>2]))+_[V+G>>2],D=D+1|0),qa(A[A[o+64>>2]>>2]+U|0,f,h),U=h+U|0,!((j=j+1|0)>>>0<s[t+80>>2]))break}else for(V=0,D=0;qa(A[A[o+64>>2]>>2]+D|0,f,h),D=h+D|0,(V=V+1|0)>>>0<s[t+80>>2];);oa(f)}G=a}if(D=1,Y=Y+1|0,(0|M[A[A[r>>2]+24>>2]](r))>(0|Y))continue;break r}break}oa(f),D=0}}else D=1;return Q=e+16|0,0|D},function sf(r){var e;return A[(r|=0)>>2]=2232,e=A[r+16>>2],A[r+16>>2]=0,e&&Ga(e),0|r},function rf(r){var e;A[(r|=0)>>2]=2232,e=A[r+16>>2],A[r+16>>2]=0,e&&Ga(e),oa(r)},pd,function xf(r,e){return e|=0,A[(r|=0)+12>>2]=-1,A[r+8>>2]=e,1},function wf(r,e,a){e|=0,a|=0;var i,f=0;return i=A[(r|=0)+8>>2],k[i+24|0]&&mb(i,A[e+4>>2]-A[e>>2]>>2)&&(f=0|M[A[A[r>>2]+32>>2]](r,e,a)),0|f},function vf(r,e,a){return 1},Pd,function uf(r,e){r|=0;var a=0,i=0,f=0,t=0,o=0,b=0;t=1;r:if(!((0|M[A[A[(e|=0)>>2]+20>>2]](e))<=0))for(;;){if(t=0,-1==(0|(a=Zd(A[A[r+4>>2]+4>>2],0|M[A[A[e>>2]+24>>2]](e,o)))))break r;f=A[r+4>>2];e:{if(k[f+36|0]<=1){if(0|M[A[A[e>>2]+28>>2]](e,A[A[A[f+4>>2]+8>>2]+(a<<2)>>2]))break e;break r}if(i=0,(0|a)<0||(b=A[f+4>>2],A[b+12>>2]-A[b+8>>2]>>2<=(0|a)||(i=A[A[f+8>>2]+(A[A[f+20>>2]+(a<<2)>>2]<<2)>>2],i=0|M[A[A[i>>2]+32>>2]](i,a))),!i)break r;if(!(0|M[A[A[e>>2]+28>>2]](e,i)))break r}if(t=1,o=o+1|0,!((0|M[A[A[e>>2]+20>>2]](e))>(0|o)))break}return 0|t},function tf(r,e,a){r|=0,a|=0;var i,f,t=0,o=0,b=0,n=0,k=0,u=0,_=0,d=0;if(b=A[(e|=0)>>2],e=A[e+4>>2],i=t=A[A[r+8>>2]+40>>2],f=pa((0|t)<0?-1:t),o=1,!((0|(u=e-b|0))<4||(e=0,_=t,b=(n=A[a+16>>2])+t|0,t=0+A[a+20>>2]|0,t=b>>>0<_>>>0?t+1|0:t,k=A[a+12>>2],o=0,s[a+8>>2]<b>>>0&(0|t)>=(0|k)|(0|t)>(0|k)))){for(u=(0|(o=u>>2))<=1?1:o;n=qa(f,A[a>>2]+n|0,i),A[a+16>>2]=b,A[a+20>>2]=t,qa(A[A[A[r+8>>2]+64>>2]>>2]+e|0,n,i),(0|u)!=(0|(d=d+1|0))&&(e=e+i|0,t=0+A[a+20>>2]|0,(0|(t=(b=_+(n=A[a+16>>2])|0)>>>0<_>>>0?t+1|0:t))<=(0|(k=A[a+12>>2]))&s[a+8>>2]>=b>>>0|(0|t)<(0|k)););o=(0|o)<=(0|d)}return oa(f),0|o},function kf(r){var e,a=0,i=0;if(A[(r|=0)>>2]=2328,a=A[r+60>>2],A[r+60>>2]=0,a&&M[A[A[a>>2]+4>>2]](a),(a=A[r+48>>2])&&(A[r+52>>2]=a,oa(a)),e=A[r+36>>2]){if((0|(i=A[r+40>>2]))!=(0|(a=e))){for(;a=A[(i=i-4|0)>>2],A[i>>2]=0,a&&M[A[A[a>>2]+4>>2]](a),(0|i)!=(0|e););a=A[r+36>>2]}A[r+40>>2]=e,oa(a)}return A[r>>2]=1984,(a=A[r+16>>2])&&(A[r+20>>2]=a,oa(a)),(a=A[r+4>>2])&&(A[r+8>>2]=a,oa(a)),0|r},function jf(r){var e,a=0,i=0;if(A[(r|=0)>>2]=2328,a=A[r+60>>2],A[r+60>>2]=0,a&&M[A[A[a>>2]+4>>2]](a),(a=A[r+48>>2])&&(A[r+52>>2]=a,oa(a)),e=A[r+36>>2]){if((0|(i=A[r+40>>2]))!=(0|(a=e))){for(;a=A[(i=i-4|0)>>2],A[i>>2]=0,a&&M[A[A[a>>2]+4>>2]](a),(0|i)!=(0|e););a=A[r+36>>2]}A[r+40>>2]=e,oa(a)}A[r>>2]=1984,(a=A[r+16>>2])&&(A[r+20>>2]=a,oa(a)),(a=A[r+4>>2])&&(A[r+8>>2]=a,oa(a)),oa(r)},function qf(r,e){var a=0,i=0,f=0,t=0,o=0,b=0,n=0,u=0,_=0,d=0,m=0;r:if(ke(r|=0,e|=0)){if(b=r+36|0,(o=0|M[A[A[r>>2]+24>>2]](r))>>>0>(a=(f=A[r+40>>2])-(i=A[r+36>>2])>>2)>>>0)Vb(b,o-a|0);else if(!(a>>>0<=o>>>0)){if((0|(i=i+(o<<2)|0))!=(0|f))for(;a=A[(f=f-4|0)>>2],A[f>>2]=0,a&&M[A[A[a>>2]+4>>2]](a),(0|i)!=(0|f););A[r+40>>2]=i}if(a=1,!((0|o)<=0)){for(f=0;;){if(!((0|(a=A[e+20>>2]))>=(0|(t=A[e+12>>2]))&(i=A[e+16>>2])>>>0>=s[e+8>>2]|(0|a)>(0|t))&&(t=k[A[e>>2]+i|0],a=(i=i+1|0)?a:a+1|0,A[e+16>>2]=i,A[e+20>>2]=a,i=0|M[A[A[r>>2]+48>>2]](r,t),n=(t=f<<2)+A[r+36>>2]|0,a=A[n>>2],A[n>>2]=i,a&&M[A[A[a>>2]+4>>2]](a),(a=A[A[b>>2]+t>>2])&&(_=a,d=0|M[A[A[r>>2]+28>>2]](r),m=0|M[A[A[r>>2]+20>>2]](r,f),u=A[A[a>>2]+8>>2],0|M[u](0|_,0|d,0|m)))){if(a=1,(0|o)!=(0|(f=f+1|0)))continue;break r}break}a=0}}return 0|a},function pf(r,e){e|=0;var a=0,i=0,f=0,t=0,o=0;if((a=A[(r|=0)+60>>2])&&(A[a+4>>2]=r+48,0|M[A[A[a>>2]+12>>2]](a))){r:if(!((0|(a=0|M[A[A[r>>2]+24>>2]](r)))<=0)){for(;;){if(t=A[4+(0|M[A[A[r>>2]+28>>2]](r))>>2],o=0|M[A[A[r>>2]+20>>2]](r,i),f=A[r+60>>2],0|M[A[A[f>>2]+8>>2]](f,A[A[t+8>>2]+(o<<2)>>2])){if((0|a)!=(0|(i=i+1|0)))continue;break r}break}return 0}i=0,0|M[A[A[r>>2]+36>>2]](r,e)&&0|M[A[A[r>>2]+40>>2]](r,e)&&(i=0|M[A[A[r>>2]+44>>2]](r))}return 0|i},function hf(r,e){e|=0;var a,i=0;return a=A[(r|=0)+16>>2],i=0,A[r+20>>2]-a>>2<=(0|e)||(i=0,(0|(e=A[(e<<2)+a>>2]))<0||(i=rb(A[A[r+36>>2]+(e<<2)>>2]))),0|i},function of(r,e){e|=0;var a,i=0,f=0,t=0,o=0;if(i=1,!((0|(a=0|M[A[A[(r|=0)>>2]+24>>2]](r)))<=0)&&(f=A[A[r+36>>2]>>2],o=r+48|0,i=0,0|M[A[A[f>>2]+16>>2]](f,o,e))){for(;(0|a)!=(0|(t=t+1|0))&&(f=A[A[r+36>>2]+(t<<2)>>2],0|M[A[A[f>>2]+16>>2]](f,o,e)););i=(0|t)>=(0|a)}return 0|i},function nf(r,e){e|=0;var a,i=0,f=0,t=0,o=0;if(i=1,!((0|(a=0|M[A[A[(r|=0)>>2]+24>>2]](r)))<=0)&&(f=A[A[r+36>>2]>>2],o=r+48|0,i=0,0|M[A[A[f>>2]+20>>2]](f,o,e))){for(;(0|a)!=(0|(t=t+1|0))&&(f=A[A[r+36>>2]+(t<<2)>>2],0|M[A[A[f>>2]+20>>2]](f,o,e)););i=(0|t)>=(0|a)}return 0|i},function mf(r){var e,a,i=0,f=0,t=0,o=0,n=0,u=0,s=0,_=0,d=0;Q=e=Q-16|0,u=1;r:if(!((0|(a=0|M[A[A[(r|=0)>>2]+24>>2]](r)))<=0))for(d=r+48|0,u=0;;){if(A[40+(0|M[A[A[r>>2]+28>>2]](r))>>2]&&(n=A[(s=o<<2)+A[r+36>>2]>>2],i=A[n+8>>2],(_=rb(n))&&(n=A[40+(0|M[A[A[r>>2]+28>>2]](r))>>2],A[e+12>>2]=A[i+56>>2],i=pa(32),A[e>>2]=i,A[e+4>>2]=24,A[e+8>>2]=-2147483616,f=k[1206]|k[1207]<<8|k[1208]<<16|k[1209]<<24,t=k[1202]|k[1203]<<8|k[1204]<<16|k[1205]<<24,b[i+16|0]=t,b[i+17|0]=t>>>8,b[i+18|0]=t>>>16,b[i+19|0]=t>>>24,b[i+20|0]=f,b[i+21|0]=f>>>8,b[i+22|0]=f>>>16,b[i+23|0]=f>>>24,f=k[1198]|k[1199]<<8|k[1200]<<16|k[1201]<<24,t=k[1194]|k[1195]<<8|k[1196]<<16|k[1197]<<24,b[i+8|0]=t,b[i+9|0]=t>>>8,b[i+10|0]=t>>>16,b[i+11|0]=t>>>24,b[i+12|0]=f,b[i+13|0]=f>>>8,b[i+14|0]=f>>>16,b[i+15|0]=f>>>24,f=k[1190]|k[1191]<<8|k[1192]<<16|k[1193]<<24,t=k[1186]|k[1187]<<8|k[1188]<<16|k[1189]<<24,b[0|i]=t,b[i+1|0]=t>>>8,b[i+2|0]=t>>>16,b[i+3|0]=t>>>24,b[i+4|0]=f,b[i+5|0]=f>>>8,b[i+6|0]=f>>>16,b[i+7|0]=f>>>24,b[i+24|0]=0,i=sd(n,e+12|0,e),b[e+11|0]<0&&oa(A[e>>2]),i)))oe(A[A[A[r+36>>2]+s>>2]+8>>2],_);else if(i=A[A[r+36>>2]+(o<<2)>>2],!(0|M[A[A[i>>2]+24>>2]](i,d)))break r;if(u=(0|a)<=(0|(o=o+1|0)),(0|o)==(0|a))break}return Q=e+16|0,0|u},function lf(r,e){r|=0,r=0;r:switch(0|(e|=0)){case 0:return r=pa(20),A[r+12>>2]=-1,A[r+16>>2]=0,A[r+4>>2]=0,A[r+8>>2]=0,A[r>>2]=2232,0|r;case 1:return r=pa(24),A[r+12>>2]=-1,A[r+16>>2]=0,A[r+4>>2]=0,A[r+8>>2]=0,A[r>>2]=2232,A[r+20>>2]=0,A[r>>2]=2448,0|r;case 2:return r=pa(48),A[r+12>>2]=-1,A[r+16>>2]=0,A[r+4>>2]=0,A[r+8>>2]=0,A[r>>2]=2232,A[r+20>>2]=0,A[r>>2]=2448,A[r+24>>2]=1832,A[r>>2]=11048,A[r+32>>2]=0,A[r+36>>2]=0,A[r+28>>2]=-1,A[r+40>>2]=0,A[r+44>>2]=0,0|r;case 3:r=pa(32),A[r+12>>2]=-1,A[r+16>>2]=0,A[r+4>>2]=0,A[r+8>>2]=0,A[r>>2]=2232,A[r+20>>2]=0,A[r>>2]=2448,A[r+24>>2]=1032,A[r>>2]=7028,A[r+28>>2]=-1;break;default:break r}return 0|r},cf,bf,pd,function gf(r,e){e|=0;var a,i=0;return(a=A[(r|=0)+4>>2])&&(i=1,k[a+36|0]<2)||(i=0|M[A[A[r>>2]+48>>2]](r,A[e+4>>2]-A[e>>2]>>2)),0|i},function ff(r,e,a){r|=0,e|=0;var i,f,t=0,o=0,n=0,u=0,s=0,_=0,d=0;r:if(!((0|(n=i=A[(a|=0)+12>>2]))<=(0|(o=A[a+20>>2]))&(f=A[a+8>>2])>>>0<=(u=A[a+16>>2])>>>0|(0|o)>(0|n))){if(s=A[a>>2],_=b[s+u|0],t=o,t=(n=u+1|0)?t:t+1|0,A[a+16>>2]=n,A[a+20>>2]=t,-2!=(0|_)){if((0|t)>=(0|i)&n>>>0>=f>>>0|(0|t)>(0|i))break r;if(t=b[n+s|0],o=(u=u+2|0)>>>0<2?o+1|0:o,A[a+16>>2]=u,A[a+20>>2]=o,(t-4&255)>>>0<251)break r;o=0|M[A[A[r>>2]+40>>2]](r,_,t),t=A[r+20>>2],A[r+20>>2]=o,t&&M[A[A[t>>2]+4>>2]](t)}(!(t=A[r+20>>2])||0|M[A[A[r>>2]+28>>2]](r,t))&&0|M[A[A[r>>2]+36>>2]](r,e,a)&&(!(a=A[r+4>>2])|k[a+36|0]>1||0|M[A[A[r>>2]+48>>2]](r,A[e+4>>2]-A[e>>2]>>2))&&(d=1)}return 0|d},nd,function ef(r,e,a){r|=0,e|=0;var i,f=0,t=0,o=0,n=0,k=0,s=0,_=0,d=0;Q=i=Q-48|0;r:{if(1==(0|(a|=0))){a=A[r+4>>2],n=A[r+12>>2],A[i+40>>2]=0,A[(r=i)+32>>2]=0,A[r+36>>2]=0,A[r+24>>2]=0,A[r+28>>2]=0,A[r+16>>2]=0,A[r+20>>2]=0,A[r+8>>2]=0,A[r+12>>2]=0,t=r+8|0;e:if(-2!=(0|e)){if(d=A[A[A[a+4>>2]+8>>2]+(n<<2)>>2],1==(0|M[A[A[a>>2]+8>>2]](a))){if(s=65535&((r=u[a+36>>1])<<8|r>>>8),r=0,Q=k=Q-32|0,f=A[A[A[a+4>>2]+8>>2]+(n<<2)>>2],!(1!=(0|M[A[A[a>>2]+8>>2]](a))|e-1>>>0>5||!(_=0|M[A[A[a>>2]+36>>2]](a))|!(o=0|M[A[A[a>>2]+44>>2]](a,n))))if(r=0|M[A[A[a>>2]+40>>2]](a,n)){a=A[a+44>>2],A[k+12>>2]=r,A[k+8>>2]=a,A[k+20>>2]=o,A[k+16>>2]=o+12,a=k+8|0,r=0;a:{i:switch(e-1|0){case 0:if(r=pa(60),A[r+4>>2]=f,A[r>>2]=3272,e=A[t+4>>2],A[r+8>>2]=A[t>>2],A[r+12>>2]=e,e=A[t+12>>2],A[r+16>>2]=A[t+8>>2],A[r+20>>2]=e,e=A[t+20>>2],A[r+24>>2]=A[t+16>>2],A[r+28>>2]=e,A[r+40>>2]=0,A[r+32>>2]=0,A[r+36>>2]=0,(0|(f=A[t+24>>2]))!=(0|(o=A[t+28>>2]))){if((0|(n=o-f|0))<0)break r;for(e=pa(n),A[r+32>>2]=e,A[r+40>>2]=(-4&n)+e;A[e>>2]=A[f>>2],e=e+4|0,(0|o)!=(0|(f=f+4|0)););A[r+36>>2]=e}e=A[a+4>>2],A[r+44>>2]=A[a>>2],A[r+48>>2]=e,e=A[a+12>>2],A[r+52>>2]=A[a+8>>2],A[r+56>>2]=e,A[r>>2]=2564;break a;case 1:if(r=pa(60),A[r+4>>2]=f,A[r>>2]=3272,e=A[t+4>>2],A[r+8>>2]=A[t>>2],A[r+12>>2]=e,e=A[t+12>>2],A[r+16>>2]=A[t+8>>2],A[r+20>>2]=e,e=A[t+20>>2],A[r+24>>2]=A[t+16>>2],A[r+28>>2]=e,A[r+40>>2]=0,A[r+32>>2]=0,A[r+36>>2]=0,(0|(f=A[t+24>>2]))!=(0|(o=A[t+28>>2]))){if((0|(n=o-f|0))<0)break r;for(e=pa(n),A[r+32>>2]=e,A[r+40>>2]=(-4&n)+e;A[e>>2]=A[f>>2],e=e+4|0,(0|o)!=(0|(f=f+4|0)););A[r+36>>2]=e}e=A[a+4>>2],A[r+44>>2]=A[a>>2],A[r+48>>2]=e,e=A[a+12>>2],A[r+52>>2]=A[a+8>>2],A[r+56>>2]=e,A[r>>2]=3328;break a;case 3:if(r=pa(112),A[r+4>>2]=f,A[r>>2]=3272,e=A[t+4>>2],A[r+8>>2]=A[t>>2],A[r+12>>2]=e,e=A[t+12>>2],A[r+16>>2]=A[t+8>>2],A[r+20>>2]=e,e=A[t+20>>2],A[r+24>>2]=A[t+16>>2],A[r+28>>2]=e,A[r+40>>2]=0,A[r+32>>2]=0,A[r+36>>2]=0,(0|(f=A[t+24>>2]))!=(0|(o=A[t+28>>2]))){if((0|(n=o-f|0))<0)break r;for(e=pa(n),A[r+32>>2]=e,A[r+40>>2]=(-4&n)+e;A[e>>2]=A[f>>2],e=e+4|0,(0|o)!=(0|(f=f+4|0)););A[r+36>>2]=e}e=A[a+4>>2],A[r+44>>2]=A[a>>2],A[r+48>>2]=e,e=A[a+12>>2],A[r+52>>2]=A[a+8>>2],A[r+56>>2]=e,A[r+60>>2]=0,A[r+64>>2]=0,A[r>>2]=3564,A[r+68>>2]=0,A[r+72>>2]=0,A[r+76>>2]=0,A[r+80>>2]=0,A[r+84>>2]=0,A[r+88>>2]=0,A[r+92>>2]=0,A[r+96>>2]=0,A[r+100>>2]=0,A[r+104>>2]=0,A[r+108>>2]=0;break a;case 2:if(r=pa(92),A[r+4>>2]=f,A[r>>2]=3272,e=A[t+4>>2],A[r+8>>2]=A[t>>2],A[r+12>>2]=e,e=A[t+12>>2],A[r+16>>2]=A[t+8>>2],A[r+20>>2]=e,e=A[t+20>>2],A[r+24>>2]=A[t+16>>2],A[r+28>>2]=e,A[r+40>>2]=0,A[r+32>>2]=0,A[r+36>>2]=0,(0|(f=A[t+24>>2]))!=(0|(o=A[t+28>>2]))){if((0|(n=o-f|0))<0)break r;for(e=pa(n),A[r+32>>2]=e,A[r+40>>2]=(-4&n)+e;A[e>>2]=A[f>>2],e=e+4|0,(0|o)!=(0|(f=f+4|0)););A[r+36>>2]=e}e=A[a+4>>2],A[r+44>>2]=A[a>>2],A[r+48>>2]=e,e=A[a+12>>2],A[r+52>>2]=A[a+8>>2],A[r+56>>2]=e,A[r+60>>2]=0,A[r+64>>2]=0,A[r>>2]=3812,A[r+68>>2]=0,A[r+72>>2]=0,A[r+76>>2]=0,A[r+80>>2]=0,A[r+84>>2]=0,A[r+88>>2]=s;break a;case 4:if(r=pa(104),A[r+4>>2]=f,A[r>>2]=3272,e=A[t+4>>2],A[r+8>>2]=A[t>>2],A[r+12>>2]=e,e=A[t+12>>2],A[r+16>>2]=A[t+8>>2],A[r+20>>2]=e,e=A[t+20>>2],A[r+24>>2]=A[t+16>>2],A[r+28>>2]=e,A[r+40>>2]=0,A[r+32>>2]=0,A[r+36>>2]=0,(0|(f=A[t+24>>2]))!=(0|(o=A[t+28>>2]))){if((0|(n=o-f|0))<0)break r;for(e=pa(n),A[r+32>>2]=e,A[r+40>>2]=(-4&n)+e;A[e>>2]=A[f>>2],e=e+4|0,(0|o)!=(0|(f=f+4|0)););A[r+36>>2]=e}e=A[a+4>>2],A[r+44>>2]=A[a>>2],A[r+48>>2]=e,e=A[a+12>>2],A[r+52>>2]=A[a+8>>2],A[r+56>>2]=e,A[r+84>>2]=0,A[r+76>>2]=0,A[r+80>>2]=0,A[r+60>>2]=0,A[r+64>>2]=0,A[r>>2]=4040,e=A[a+4>>2],A[r+88>>2]=A[a>>2],A[r+92>>2]=e,e=A[a+12>>2],A[r+96>>2]=A[a+8>>2],A[r+100>>2]=e;break a;case 5:break i;default:break a}if(r=pa(128),A[r+4>>2]=f,A[r>>2]=3272,e=A[t+4>>2],A[r+8>>2]=A[t>>2],A[r+12>>2]=e,e=A[t+12>>2],A[r+16>>2]=A[t+8>>2],A[r+20>>2]=e,e=A[t+20>>2],A[r+24>>2]=A[t+16>>2],A[r+28>>2]=e,A[r+40>>2]=0,A[r+32>>2]=0,A[r+36>>2]=0,(0|(e=A[t+28>>2]))!=(0|(f=A[t+24>>2]))){if((0|(f=e-f|0))<0)break r;if(e=pa(f),A[r+36>>2]=e,A[r+32>>2]=e,A[r+40>>2]=(-4&f)+e,(0|(f=A[t+24>>2]))!=(0|(o=A[t+28>>2])))for(;A[e>>2]=A[f>>2],e=e+4|0,(0|o)!=(0|(f=f+4|0)););A[r+36>>2]=e}A[r>>2]=3216,e=A[a+4>>2],A[r+44>>2]=A[a>>2],A[r+48>>2]=e,e=A[a+12>>2],A[r+52>>2]=A[a+8>>2],A[r+56>>2]=e,A[(e=r- -64|0)>>2]=0,A[e+4>>2]=0,A[r+60>>2]=4904,A[r>>2]=4276,e=A[a+4>>2],A[r+72>>2]=A[a>>2],A[r+76>>2]=e,e=A[a+12>>2],A[r+80>>2]=A[a+8>>2],A[r+84>>2]=e,A[r+104>>2]=1065353216,A[r+108>>2]=-1,A[r+96>>2]=-1,A[r+100>>2]=-1,A[r+88>>2]=1,A[r+92>>2]=-1,A[r+60>>2]=4512,A[r+112>>2]=0,A[r+116>>2]=0,b[r+117|0]=0,b[r+118|0]=0,b[r+119|0]=0,b[r+120|0]=0,b[r+121|0]=0,b[r+122|0]=0,b[r+123|0]=0,b[r+124|0]=0}}else{r=A[a+44>>2],A[k+12>>2]=_,A[k+8>>2]=r,A[k+20>>2]=o,A[k+16>>2]=o+12,a=k+8|0,r=0;a:{i:switch(e-1|0){case 0:if(r=pa(60),A[r+4>>2]=f,A[r>>2]=3272,e=A[t+4>>2],A[r+8>>2]=A[t>>2],A[r+12>>2]=e,e=A[t+12>>2],A[r+16>>2]=A[t+8>>2],A[r+20>>2]=e,e=A[t+20>>2],A[r+24>>2]=A[t+16>>2],A[r+28>>2]=e,A[r+40>>2]=0,A[r+32>>2]=0,A[r+36>>2]=0,(0|(f=A[t+24>>2]))!=(0|(o=A[t+28>>2]))){if((0|(n=o-f|0))<0)break r;for(e=pa(n),A[r+32>>2]=e,A[r+40>>2]=(-4&n)+e;A[e>>2]=A[f>>2],e=e+4|0,(0|o)!=(0|(f=f+4|0)););A[r+36>>2]=e}e=A[a+4>>2],A[r+44>>2]=A[a>>2],A[r+48>>2]=e,e=A[a+12>>2],A[r+52>>2]=A[a+8>>2],A[r+56>>2]=e,A[r>>2]=4932;break a;case 1:if(r=pa(60),A[r+4>>2]=f,A[r>>2]=3272,e=A[t+4>>2],A[r+8>>2]=A[t>>2],A[r+12>>2]=e,e=A[t+12>>2],A[r+16>>2]=A[t+8>>2],A[r+20>>2]=e,e=A[t+20>>2],A[r+24>>2]=A[t+16>>2],A[r+28>>2]=e,A[r+40>>2]=0,A[r+32>>2]=0,A[r+36>>2]=0,(0|(f=A[t+24>>2]))!=(0|(o=A[t+28>>2]))){if((0|(n=o-f|0))<0)break r;for(e=pa(n),A[r+32>>2]=e,A[r+40>>2]=(-4&n)+e;A[e>>2]=A[f>>2],e=e+4|0,(0|o)!=(0|(f=f+4|0)););A[r+36>>2]=e}e=A[a+4>>2],A[r+44>>2]=A[a>>2],A[r+48>>2]=e,e=A[a+12>>2],A[r+52>>2]=A[a+8>>2],A[r+56>>2]=e,A[r>>2]=5356;break a;case 3:if(r=pa(112),A[r+4>>2]=f,A[r>>2]=3272,e=A[t+4>>2],A[r+8>>2]=A[t>>2],A[r+12>>2]=e,e=A[t+12>>2],A[r+16>>2]=A[t+8>>2],A[r+20>>2]=e,e=A[t+20>>2],A[r+24>>2]=A[t+16>>2],A[r+28>>2]=e,A[r+40>>2]=0,A[r+32>>2]=0,A[r+36>>2]=0,(0|(f=A[t+24>>2]))!=(0|(o=A[t+28>>2]))){if((0|(n=o-f|0))<0)break r;for(e=pa(n),A[r+32>>2]=e,A[r+40>>2]=(-4&n)+e;A[e>>2]=A[f>>2],e=e+4|0,(0|o)!=(0|(f=f+4|0)););A[r+36>>2]=e}e=A[a+4>>2],A[r+44>>2]=A[a>>2],A[r+48>>2]=e,e=A[a+12>>2],A[r+52>>2]=A[a+8>>2],A[r+56>>2]=e,A[r+60>>2]=0,A[r+64>>2]=0,A[r>>2]=5580,A[r+68>>2]=0,A[r+72>>2]=0,A[r+76>>2]=0,A[r+80>>2]=0,A[r+84>>2]=0,A[r+88>>2]=0,A[r+92>>2]=0,A[r+96>>2]=0,A[r+100>>2]=0,A[r+104>>2]=0,A[r+108>>2]=0;break a;case 2:if(r=pa(92),A[r+4>>2]=f,A[r>>2]=3272,e=A[t+4>>2],A[r+8>>2]=A[t>>2],A[r+12>>2]=e,e=A[t+12>>2],A[r+16>>2]=A[t+8>>2],A[r+20>>2]=e,e=A[t+20>>2],A[r+24>>2]=A[t+16>>2],A[r+28>>2]=e,A[r+40>>2]=0,A[r+32>>2]=0,A[r+36>>2]=0,(0|(f=A[t+24>>2]))!=(0|(o=A[t+28>>2]))){if((0|(n=o-f|0))<0)break r;for(e=pa(n),A[r+32>>2]=e,A[r+40>>2]=(-4&n)+e;A[e>>2]=A[f>>2],e=e+4|0,(0|o)!=(0|(f=f+4|0)););A[r+36>>2]=e}e=A[a+4>>2],A[r+44>>2]=A[a>>2],A[r+48>>2]=e,e=A[a+12>>2],A[r+52>>2]=A[a+8>>2],A[r+56>>2]=e,A[r+60>>2]=0,A[r+64>>2]=0,A[r>>2]=5816,A[r+68>>2]=0,A[r+72>>2]=0,A[r+76>>2]=0,A[r+80>>2]=0,A[r+84>>2]=0,A[r+88>>2]=s;break a;case 4:if(r=pa(104),A[r+4>>2]=f,A[r>>2]=3272,e=A[t+4>>2],A[r+8>>2]=A[t>>2],A[r+12>>2]=e,e=A[t+12>>2],A[r+16>>2]=A[t+8>>2],A[r+20>>2]=e,e=A[t+20>>2],A[r+24>>2]=A[t+16>>2],A[r+28>>2]=e,A[r+40>>2]=0,A[r+32>>2]=0,A[r+36>>2]=0,(0|(f=A[t+24>>2]))!=(0|(o=A[t+28>>2]))){if((0|(n=o-f|0))<0)break r;for(e=pa(n),A[r+32>>2]=e,A[r+40>>2]=(-4&n)+e;A[e>>2]=A[f>>2],e=e+4|0,(0|o)!=(0|(f=f+4|0)););A[r+36>>2]=e}e=A[a+4>>2],A[r+44>>2]=A[a>>2],A[r+48>>2]=e,e=A[a+12>>2],A[r+52>>2]=A[a+8>>2],A[r+56>>2]=e,A[r+84>>2]=0,A[r+76>>2]=0,A[r+80>>2]=0,A[r+60>>2]=0,A[r+64>>2]=0,A[r>>2]=6032,e=A[a+4>>2],A[r+88>>2]=A[a>>2],A[r+92>>2]=e,e=A[a+12>>2],A[r+96>>2]=A[a+8>>2],A[r+100>>2]=e;break a;case 5:break i;default:break a}if(r=pa(128),A[r+4>>2]=f,A[r>>2]=3272,e=A[t+4>>2],A[r+8>>2]=A[t>>2],A[r+12>>2]=e,e=A[t+12>>2],A[r+16>>2]=A[t+8>>2],A[r+20>>2]=e,e=A[t+20>>2],A[r+24>>2]=A[t+16>>2],A[r+28>>2]=e,A[r+40>>2]=0,A[r+32>>2]=0,A[r+36>>2]=0,(0|(e=A[t+28>>2]))!=(0|(f=A[t+24>>2]))){if((0|(f=e-f|0))<0)break r;if(e=pa(f),A[r+36>>2]=e,A[r+32>>2]=e,A[r+40>>2]=(-4&f)+e,(0|(f=A[t+24>>2]))!=(0|(o=A[t+28>>2])))for(;A[e>>2]=A[f>>2],e=e+4|0,(0|o)!=(0|(f=f+4|0)););A[r+36>>2]=e}A[r>>2]=5300,e=A[a+4>>2],A[r+44>>2]=A[a>>2],A[r+48>>2]=e,e=A[a+12>>2],A[r+52>>2]=A[a+8>>2],A[r+56>>2]=e,A[(e=r- -64|0)>>2]=0,A[e+4>>2]=0,A[r+60>>2]=6840,A[r>>2]=6256,e=A[a+4>>2],A[r+72>>2]=A[a>>2],A[r+76>>2]=e,e=A[a+12>>2],A[r+80>>2]=A[a+8>>2],A[r+84>>2]=e,A[r+104>>2]=1065353216,A[r+108>>2]=-1,A[r+96>>2]=-1,A[r+100>>2]=-1,A[r+88>>2]=1,A[r+92>>2]=-1,A[r+60>>2]=6476,A[r+112>>2]=0,A[r+116>>2]=0,b[r+117|0]=0,b[r+118|0]=0,b[r+119|0]=0,b[r+120|0]=0,b[r+121|0]=0,b[r+122|0]=0,b[r+123|0]=0,b[r+124|0]=0}}if(Q=k+32|0,f=r,r)break e}if(f=pa(44),A[f+4>>2]=d,A[f>>2]=3272,r=A[t+4>>2],A[f+8>>2]=A[t>>2],A[f+12>>2]=r,r=A[t+12>>2],A[f+16>>2]=A[t+8>>2],A[f+20>>2]=r,r=A[t+20>>2],A[f+24>>2]=A[t+16>>2],A[f+28>>2]=r,A[f+40>>2]=0,A[f+32>>2]=0,A[f+36>>2]=0,(0|(a=A[t+24>>2]))!=(0|(r=A[t+28>>2]))){if((0|(e=r-a|0))<0)break r;for(t=pa(e),A[f+32>>2]=t,A[f+40>>2]=(-4&e)+t;A[t>>2]=A[a>>2],t=t+4|0,(0|r)!=(0|(a=a+4|0)););A[f+36>>2]=t}A[f>>2]=6868}t=f,(r=A[i+32>>2])&&(A[i+36>>2]=r,oa(r))}return Q=i+48|0,0|t}sa(),v()},function Nj(r){return k[A[(r|=0)+8>>2]+24|0]},function Oj(r,e){e|=0;var a,i=0,f=0,t=0,o=0,u=0,s=0,_=0,d=0,m=0,R=0,h=0,j=0;a=r|=0;r:{e:{a:{i:{f:{t:{o:{b:switch(r=A[r+8>>2],A[r+28>>2]-1|0){case 4:break a;case 5:break i;case 2:break f;case 3:break t;case 0:break o;case 1:break b;default:break r}if(i=pa(o=k[r+24|0]),r=A[a+16>>2],u=A[r+80>>2]?A[A[r>>2]>>2]+A[r+48>>2]|0:0,!e)break e;if(o){for(j=252&o,m=3&o,s=o>>>0<4;;){if(r=0,t=0,!s)for(;d=u+(f<<2)|0,b[r+i|0]=A[d>>2],b[(1|r)+i|0]=A[d+4>>2],b[(2|r)+i|0]=A[d+8>>2],b[(3|r)+i|0]=A[d+12>>2],r=r+4|0,f=f+4|0,(0|j)!=(0|(t=t+4|0)););if(t=0,m)for(;b[r+i|0]=A[u+(f<<2)>>2],r=r+1|0,f=f+1|0,(0|m)!=(0|(t=t+1|0)););if(qa(A[A[A[a+8>>2]+64>>2]>>2]+R|0,i,o),R=o+R|0,(0|(h=h+1|0))==(0|e))break}break e}if(r=0,1!=(0|e))for(u=-2&e;qa(A[A[A[a+8>>2]+64>>2]>>2]+r|0,i,o),qa((r=r+o|0)+A[A[A[a+8>>2]+64>>2]>>2]|0,i,o),r=r+o|0,(0|u)!=(0|(f=f+2|0)););if(!(1&e))break e;qa(A[A[A[a+8>>2]+64>>2]>>2]+r|0,i,o);break e}if(i=pa(o=k[r+24|0]),r=A[a+16>>2],u=A[r+80>>2]?A[A[r>>2]>>2]+A[r+48>>2]|0:0,!e)break e;if(o){for(j=252&o,m=3&o,s=o>>>0<4;;){if(r=0,t=0,!s)for(;d=u+(f<<2)|0,b[r+i|0]=A[d>>2],b[(1|r)+i|0]=A[d+4>>2],b[(2|r)+i|0]=A[d+8>>2],b[(3|r)+i|0]=A[d+12>>2],r=r+4|0,f=f+4|0,(0|j)!=(0|(t=t+4|0)););if(t=0,m)for(;b[r+i|0]=A[u+(f<<2)>>2],r=r+1|0,f=f+1|0,(0|m)!=(0|(t=t+1|0)););if(qa(A[A[A[a+8>>2]+64>>2]>>2]+R|0,i,o),R=o+R|0,(0|(h=h+1|0))==(0|e))break}break e}if(r=0,1!=(0|e))for(u=-2&e;qa(A[A[A[a+8>>2]+64>>2]>>2]+r|0,i,o),qa((r=r+o|0)+A[A[A[a+8>>2]+64>>2]>>2]|0,i,o),r=r+o|0,(0|u)!=(0|(f=f+2|0)););if(!(1&e))break e;qa(A[A[A[a+8>>2]+64>>2]>>2]+r|0,i,o);break e}if(i=pa(_=(s=k[r+24|0])<<1),r=A[a+16>>2],u=A[r+80>>2]?A[A[r>>2]>>2]+A[r+48>>2]|0:0,!e)break e;if(s){for(j=252&s,m=3&s,s=s>>>0<4;;){if(r=0,t=0,!s)for(;d=u+(f<<2)|0,n[(o=r<<1)+i>>1]=A[d>>2],n[(2|o)+i>>1]=A[d+4>>2],n[(4|o)+i>>1]=A[d+8>>2],n[(6|o)+i>>1]=A[d+12>>2],r=r+4|0,f=f+4|0,(0|j)!=(0|(t=t+4|0)););if(t=0,m)for(;n[(r<<1)+i>>1]=A[u+(f<<2)>>2],r=r+1|0,f=f+1|0,(0|m)!=(0|(t=t+1|0)););if(qa(A[A[A[a+8>>2]+64>>2]>>2]+h|0,i,_),h=_+h|0,(0|(R=R+1|0))==(0|e))break}break e}if(r=0,1!=(0|e))for(u=-2&e;qa(A[A[A[a+8>>2]+64>>2]>>2]+r|0,i,_),qa((r=r+_|0)+A[A[A[a+8>>2]+64>>2]>>2]|0,i,_),r=r+_|0,(0|u)!=(0|(f=f+2|0)););if(!(1&e))break e;qa(A[A[A[a+8>>2]+64>>2]>>2]+r|0,i,_);break e}if(i=pa(_=(s=k[r+24|0])<<1),r=A[a+16>>2],u=A[r+80>>2]?A[A[r>>2]>>2]+A[r+48>>2]|0:0,!e)break e;if(s){for(j=252&s,m=3&s,s=s>>>0<4;;){if(r=0,t=0,!s)for(;d=u+(f<<2)|0,n[(o=r<<1)+i>>1]=A[d>>2],n[(2|o)+i>>1]=A[d+4>>2],n[(4|o)+i>>1]=A[d+8>>2],n[(6|o)+i>>1]=A[d+12>>2],r=r+4|0,f=f+4|0,(0|j)!=(0|(t=t+4|0)););if(t=0,m)for(;n[(r<<1)+i>>1]=A[u+(f<<2)>>2],r=r+1|0,f=f+1|0,(0|m)!=(0|(t=t+1|0)););if(qa(A[A[A[a+8>>2]+64>>2]>>2]+h|0,i,_),h=_+h|0,(0|(R=R+1|0))==(0|e))break}break e}if(r=0,1!=(0|e))for(u=-2&e;qa(A[A[A[a+8>>2]+64>>2]>>2]+r|0,i,_),qa((r=r+_|0)+A[A[A[a+8>>2]+64>>2]>>2]|0,i,_),r=r+_|0,(0|u)!=(0|(f=f+2|0)););if(!(1&e))break e;qa(A[A[A[a+8>>2]+64>>2]>>2]+r|0,i,_);break e}if(i=pa(_=(s=k[r+24|0])<<2),r=A[a+16>>2],u=A[r+80>>2]?A[A[r>>2]>>2]+A[r+48>>2]|0:0,!e)break e;if(s){for(j=252&s,m=3&s,s=s>>>0<4;;){if(r=0,t=0,!s)for(;d=u+(f<<2)|0,A[(o=r<<2)+i>>2]=A[d>>2],A[(4|o)+i>>2]=A[d+4>>2],A[(8|o)+i>>2]=A[d+8>>2],A[(12|o)+i>>2]=A[d+12>>2],r=r+4|0,f=f+4|0,(0|j)!=(0|(t=t+4|0)););if(t=0,m)for(;A[(r<<2)+i>>2]=A[u+(f<<2)>>2],r=r+1|0,f=f+1|0,(0|m)!=(0|(t=t+1|0)););if(qa(A[A[A[a+8>>2]+64>>2]>>2]+h|0,i,_),h=_+h|0,(0|(R=R+1|0))==(0|e))break}break e}if(r=0,1!=(0|e))for(u=-2&e;qa(A[A[A[a+8>>2]+64>>2]>>2]+r|0,i,_),qa((r=r+_|0)+A[A[A[a+8>>2]+64>>2]>>2]|0,i,_),r=r+_|0,(0|u)!=(0|(f=f+2|0)););if(!(1&e))break e;qa(A[A[A[a+8>>2]+64>>2]>>2]+r|0,i,_);break e}if(i=pa(_=(s=k[r+24|0])<<2),r=A[a+16>>2],u=A[r+80>>2]?A[A[r>>2]>>2]+A[r+48>>2]|0:0,e)if(s)for(j=252&s,m=3&s,s=s>>>0<4;;){if(r=0,t=0,!s)for(;d=u+(f<<2)|0,A[(o=r<<2)+i>>2]=A[d>>2],A[(4|o)+i>>2]=A[d+4>>2],A[(8|o)+i>>2]=A[d+8>>2],A[(12|o)+i>>2]=A[d+12>>2],r=r+4|0,f=f+4|0,(0|j)!=(0|(t=t+4|0)););if(t=0,m)for(;A[(r<<2)+i>>2]=A[u+(f<<2)>>2],r=r+1|0,f=f+1|0,(0|m)!=(0|(t=t+1|0)););if(qa(A[A[A[a+8>>2]+64>>2]>>2]+h|0,i,_),h=_+h|0,(0|(R=R+1|0))==(0|e))break}else{if(r=0,1!=(0|e))for(u=-2&e;qa(A[A[A[a+8>>2]+64>>2]>>2]+r|0,i,_),qa((r=r+_|0)+A[A[A[a+8>>2]+64>>2]>>2]|0,i,_),r=r+_|0,(0|u)!=(0|(f=f+2|0)););1&e&&qa(A[A[A[a+8>>2]+64>>2]>>2]+r|0,i,_)}}oa(i),i=1}return 0|i},function Kj(r){var e;return A[(r|=0)>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),0|r},Ub,Da,db,Pb,_a,md,Ja,_a,Da,function Mj(r,e){r|=0;var a,i,f,t,o=0,b=0,n=0,u=0,s=0,_=0;return b=A[(e|=0)+8>>2],a=n=A[e+12>>2],t=n=A[e+20>>2],f=o=(i=A[e+16>>2])+4|0,o>>>0>b>>>0&(0|(n=o>>>0<4?n+1|0:n))>=(0|a)|(0|n)>(0|a)||(s=A[e>>2],u=k[0|(o=s+i|0)]|k[o+1|0]<<8|k[o+2|0]<<16|k[o+3|0]<<24,A[e+16>>2]=f,A[e+20>>2]=n,o=b,b=t,o>>>0<(n=i+8|0)>>>0&(0|(b=n>>>0<8?b+1|0:b))>=(0|a)|(0|b)>(0|a)||(o=k[0|(o=f+s|0)]|k[o+1|0]<<8|k[o+2|0]<<16|k[o+3|0]<<24,A[e+16>>2]=n,A[e+20>>2]=b,(0|o)<(0|u)||(A[r+16>>2]=o,A[r+12>>2]=u,!(b=(o>>31)-((u>>31)+(o>>>0<u>>>0)|0)|0)&(e=o-u|0)>>>0>2147483646|b||(_=1,b=e+1|0,A[r+20>>2]=b,e=b>>>1|0,A[r+24>>2]=e,A[r+28>>2]=0-e,1&b||(A[r+24>>2]=e-1))))),0|_},function Lj(r,e,a,i,f,t){e|=0,a|=0,i|=0,f|=0,t|=0;var o,b,n,k,u,s=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0;if(A[(r|=0)+8>>2]=f,_=A[(b=r+32|0)>>2],(t=A[r+36>>2]-_>>2)>>>0<f>>>0?(ya(b,f-t|0),i=A[r+8>>2]):(i=f)>>>0>=t>>>0||(A[r+36>>2]=_+(f<<2),i=f),u=A[r+52>>2],n=A[r+48>>2],t=0,o=ra(pa(_=f>>>0>1073741823?-1:f<<2),0,_),!((0|i)<=0)){for(s=A[r+32>>2];(0|(_=A[(i=t<<2)+o>>2]))>(0|(d=A[r+16>>2]))?A[i+s>>2]=d:(i=i+s|0,d=A[r+12>>2],A[i>>2]=(0|d)>(0|_)?d:_),(0|(i=A[r+8>>2]))>(0|(t=t+1|0)););if(!((0|i)<=0))for(t=0;;){i=(_=t<<2)+a|0,_=A[e+_>>2]+A[s+_>>2]|0,A[i>>2]=_;r:{if((0|_)>A[r+16>>2])_=_-A[r+20>>2]|0;else{if((0|_)>=A[r+12>>2])break r;_=_+A[r+20>>2]|0}A[i>>2]=_}if(!((0|(i=A[r+8>>2]))>(0|(t=t+1|0))))break}}if(t=A[r+56>>2],k=A[t>>2],(0|(t=A[t+4>>2]-k|0))>=5)for(T=(j=t>>>2|0)>>>0<=2?2:j,N=-2&f,V=1&f,_=1;;){r:{e:{if((0|_)!=(0|j)){if(U=m(f,_),-1==(0|(t=A[(_<<2)+k>>2]))|A[A[n>>2]+(t>>>3&536870908)>>2]>>>t&1)break e;if(-1==(0|(t=A[A[A[n+64>>2]+12>>2]+(t<<2)>>2])))break e;if(d=A[u>>2],s=A[n+28>>2],(0|(h=A[d+(A[s+(t<<2)>>2]<<2)>>2]))>=(0|_))break e;if((0|(R=A[d+(A[s+((((R=t+1|0)>>>0)%3|0?R:t-2)<<2)>>2]<<2)>>2]))>=(0|_))break e;if((0|(t=A[d+(A[s+(t+((t>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2]))>=(0|_))break e;if(!((0|f)<=0)){if(s=m(f,t),d=m(f,R),h=m(f,h),t=0,D=0,1!=(0|f))for(;A[(t<<2)+o>>2]=(A[(t+s<<2)+a>>2]+A[(t+d<<2)+a>>2]|0)-A[(t+h<<2)+a>>2],A[((R=1|t)<<2)+o>>2]=(A[(s+R<<2)+a>>2]+A[(d+R<<2)+a>>2]|0)-A[(h+R<<2)+a>>2],t=t+2|0,(0|N)!=(0|(D=D+2|0)););V&&(A[(t<<2)+o>>2]=(A[(t+s<<2)+a>>2]+A[(t+d<<2)+a>>2]|0)-A[(t+h<<2)+a>>2])}if((0|i)<=0)break r;for(d=A[b>>2],t=0;(0|(s=A[(i=t<<2)+o>>2]))>(0|(h=A[r+16>>2]))?A[i+d>>2]=h:(i=i+d|0,h=A[r+12>>2],A[i>>2]=(0|h)>(0|s)?h:s),(0|(i=A[r+8>>2]))>(0|(t=t+1|0)););if(t=0,(0|i)<=0)break r;for(h=(i=U<<2)+a|0,R=e+i|0;;){i=(s=t<<2)+h|0,s=A[s+R>>2]+A[s+d>>2]|0,A[i>>2]=s;a:{if((0|s)>A[r+16>>2])s=s-A[r+20>>2]|0;else{if((0|s)>=A[r+12>>2])break a;s=s+A[r+20>>2]|0}A[i>>2]=s}if(!((0|(i=A[r+8>>2]))>(0|(t=t+1|0))))break}break r}Ca(),v()}if(!((0|i)<=0)){for(h=(m(_-1|0,f)<<2)+a|0,d=A[b>>2],t=0;(0|(s=A[(i=t<<2)+h>>2]))>(0|(R=A[r+16>>2]))?A[i+d>>2]=R:(i=i+d|0,R=A[r+12>>2],A[i>>2]=(0|R)>(0|s)?R:s),(0|(i=A[r+8>>2]))>(0|(t=t+1|0)););if(t=0,!((0|i)<=0))for(h=(i=U<<2)+a|0,R=e+i|0;;){i=(s=t<<2)+h|0,s=A[s+R>>2]+A[s+d>>2]|0,A[i>>2]=s;e:{if((0|s)>A[r+16>>2])s=s-A[r+20>>2]|0;else{if((0|s)>=A[r+12>>2])break e;s=s+A[r+20>>2]|0}A[i>>2]=s}if(!((0|(i=A[r+8>>2]))>(0|(t=t+1|0))))break}}}if((0|T)==(0|(_=_+1|0)))break}return oa(o),1},fb,fb,Ub,Tb,Pb,function Jj(r,e,a,i,f,t){e|=0,a|=0,i|=0,f|=0,t|=0;var o,b,n,k,u,s=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0,E=0,Q=0,Y=0;if(A[(r|=0)+8>>2]=f,s=A[(n=r+32|0)>>2],(t=A[r+36>>2]-s>>2)>>>0<f>>>0?(ya(n,f-t|0),i=A[r+8>>2]):(i=f)>>>0>=t>>>0||(A[r+36>>2]=s+(f<<2),i=f),k=f<<2,o=ra(pa(t=f>>>0>1073741823?-1:k),0,t),b=ra(pa(t),0,t),!((0|i)<=0)){for(d=A[r+32>>2];(0|(t=A[(i=_<<2)+o>>2]))>(0|(s=A[r+16>>2]))?A[i+d>>2]=s:(i=i+d|0,s=A[r+12>>2],A[i>>2]=(0|s)>(0|t)?s:t),(0|(i=A[r+8>>2]))>(0|(_=_+1|0)););if(!((0|i)<=0))for(t=0;;){i=(s=t<<2)+a|0,s=A[e+s>>2]+A[s+d>>2]|0,A[i>>2]=s;r:{if((0|s)>A[r+16>>2])s=s-A[r+20>>2]|0;else{if((0|s)>=A[r+12>>2])break r;s=s+A[r+20>>2]|0}A[i>>2]=s}if(!((0|(i=A[r+8>>2]))>(0|(t=t+1|0))))break}}if(t=A[r+56>>2],u=A[t>>2],(0|(t=A[t+4>>2]-u|0))>=5)for(E=A[r+52>>2],N=A[r+48>>2],Q=(W=t>>>2|0)>>>0<=2?2:W,G=-2&f,Z=1&f,Y=-4&f,F=3&f,B=f-1|0,D=1;;){r:{e:{a:{i:if((0|D)==(0|W))Ca(),v();else{if(s=A[(D<<2)+u>>2],(V=(0|f)<=0)||ra(o,0,k),-1==(0|s)){d=m(f,D);break e}for(I=A[N>>2],j=0,t=s;;){if(!(A[(t>>>3&536870908)+I>>2]>>>t&1||-1==(0|(d=A[A[A[N+64>>2]+12>>2]+(t<<2)>>2]))||(R=A[E>>2],_=A[N+28>>2],(0|(U=A[R+(A[_+(d<<2)>>2]<<2)>>2]))>=(0|D)||(0|(h=A[R+(A[_+((((h=d+1|0)>>>0)%3|0?h:d-2)<<2)>>2]<<2)>>2]))>=(0|D)||(0|(d=A[R+(A[_+(d+((d>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2]))>=(0|D)))){if(!V){if(d=m(f,d),R=m(f,h),U=m(f,U),_=0,T=0,B)for(;A[(_<<2)+b>>2]=(A[(_+d<<2)+a>>2]+A[(_+R<<2)+a>>2]|0)-A[(_+U<<2)+a>>2],A[((h=1|_)<<2)+b>>2]=(A[(d+h<<2)+a>>2]+A[(R+h<<2)+a>>2]|0)-A[(h+U<<2)+a>>2],_=_+2|0,(0|G)!=(0|(T=T+2|0)););if(Z&&(A[(_<<2)+b>>2]=(A[(_+d<<2)+a>>2]+A[(_+R<<2)+a>>2]|0)-A[(_+U<<2)+a>>2]),!V){if(U=0,_=0,d=0,f>>>0>3)for(;A[(h=(R=_<<2)+o|0)>>2]=A[R+b>>2]+A[h>>2],A[(T=(h=4|R)+o|0)>>2]=A[h+b>>2]+A[T>>2],A[(T=(h=8|R)+o|0)>>2]=A[h+b>>2]+A[T>>2],A[(h=(R|=12)+o|0)>>2]=A[R+b>>2]+A[h>>2],_=_+4|0,(0|Y)!=(0|(d=d+4|0)););if(F)for(;A[(R=(d=_<<2)+o|0)>>2]=A[d+b>>2]+A[R>>2],_=_+1|0,(0|F)!=(0|(U=U+1|0)););}}j=j+1|0}f:{if((t>>>0)%3|0)_=t-1|0;else if(d=-1,-1==(0|(_=t+2|0)))break f;d=-1,A[(_>>>3&536870908)+I>>2]>>>_&1||(d=-1,-1!=(0|(t=A[A[A[N+64>>2]+12>>2]+(_<<2)>>2]))&&(d=t-1|0,(t>>>0)%3|0||(d=t+2|0)))}if(!((0|s)!=(0|(t=d))&-1!=(0|t)))break}if(d=m(f,D),!j)break e;if(V)break a;if(_=0,t=0,!B)break i;for(;A[(R=(s=_<<2)+o|0)>>2]=A[R>>2]/(0|j),A[(s=(4|s)+o|0)>>2]=A[s>>2]/(0|j),_=_+2|0,(0|G)!=(0|(t=t+2|0)););}Z&&(A[(t=(_<<2)+o|0)>>2]=A[t>>2]/(0|j))}if((0|i)<=0)break r;for(j=A[n>>2],_=0;(0|(t=A[(i=_<<2)+o>>2]))>(0|(s=A[r+16>>2]))?A[i+j>>2]=s:(i=i+j|0,s=A[r+12>>2],A[i>>2]=(0|s)>(0|t)?s:t),(0|(i=A[r+8>>2]))>(0|(_=_+1|0)););if(t=0,(0|i)<=0)break r;for(d=(i=d<<2)+a|0,_=e+i|0;;){i=(s=t<<2)+d|0,s=A[_+s>>2]+A[s+j>>2]|0,A[i>>2]=s;a:{if((0|s)>A[r+16>>2])s=s-A[r+20>>2]|0;else{if((0|s)>=A[r+12>>2])break a;s=s+A[r+20>>2]|0}A[i>>2]=s}if(!((0|(i=A[r+8>>2]))>(0|(t=t+1|0))))break}break r}if(!((0|i)<=0)){for(s=(m(D-1|0,f)<<2)+a|0,j=A[n>>2],_=0;(0|(t=A[(i=_<<2)+s>>2]))>(0|(R=A[r+16>>2]))?A[i+j>>2]=R:(i=i+j|0,R=A[r+12>>2],A[i>>2]=(0|R)>(0|t)?R:t),(0|(i=A[r+8>>2]))>(0|(_=_+1|0)););if(t=0,!((0|i)<=0))for(d=(i=d<<2)+a|0,_=e+i|0;;){i=(s=t<<2)+d|0,s=A[_+s>>2]+A[s+j>>2]|0,A[i>>2]=s;e:{if((0|s)>A[r+16>>2])s=s-A[r+20>>2]|0;else{if((0|s)>=A[r+12>>2])break e;s=s+A[r+20>>2]|0}A[i>>2]=s}if(!((0|(i=A[r+8>>2]))>(0|(t=t+1|0))))break}}}if((0|Q)==(0|(D=D+1|0)))break}return oa(b),oa(o),1},function Ij(r){var e=0;return A[(r|=0)>>2]=3564,(e=A[r+96>>2])&&oa(e),(e=A[r+84>>2])&&oa(e),(e=A[r+72>>2])&&oa(e),(e=A[r+60>>2])&&oa(e),A[r>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),0|r},function Hj(r){var e=0;A[(r|=0)>>2]=3564,(e=A[r+96>>2])&&oa(e),(e=A[r+84>>2])&&oa(e),(e=A[r+72>>2])&&oa(e),(e=A[r+60>>2])&&oa(e),A[r>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),oa(r)},$e,Pb,function Gj(r,e){r|=0;var a,i=0,f=0,t=0,o=0,n=0,_=0,d=0,m=0,R=0,h=0;Q=a=Q-32|0;r:{if(u[(e|=0)+38>>1]<=513){if((0|(i=A[e+20>>2]))>=(0|(o=A[e+12>>2]))&(f=A[e+16>>2])>>>0>=s[e+8>>2]|(0|i)>(0|o))break r;if(o=k[f+A[e>>2]|0],i=(f=f+1|0)?i:i+1|0,A[e+16>>2]=f,A[e+20>>2]=i,o)break r}e:if(Xa(1,a+28|0,e)&&(f=A[a+28>>2],i=A[A[r+48>>2]+64>>2],!(f>>>0>A[i+4>>2]-A[i>>2]>>2>>>0)))a:{if(f){if(Wa(r+60|0,f),A[(i=a+8|0)>>2]=0,A[i+4>>2]=0,b[i+5|0]=0,b[i+6|0]=0,b[i+7|0]=0,b[i+8|0]=0,b[i+9|0]=0,b[i+10|0]=0,b[i+11|0]=0,b[i+12|0]=0,!ta(i,e))break a;for(;o=1<<t,d=Ba(i),n=A[r+60>>2]+(t>>>3&536870908)|0,_=d?o|A[n>>2]:A[n>>2]&~o,A[n>>2]=_,(0|f)!=(0|(t=t+1|0)););}if(!Xa(1,a+28|0,e))break e;if(f=A[a+28>>2],i=A[A[r+48>>2]+64>>2],f>>>0>A[i+4>>2]-A[i>>2]>>2>>>0)break e;if(f){if(t=0,Wa(r+72|0,f),A[(i=a+8|0)>>2]=0,A[i+4>>2]=0,b[i+5|0]=0,b[i+6|0]=0,b[i+7|0]=0,b[i+8|0]=0,b[i+9|0]=0,b[i+10|0]=0,b[i+11|0]=0,b[i+12|0]=0,!ta(i,e))break a;for(;o=1<<t,d=Ba(i),n=A[r+72>>2]+(t>>>3&536870908)|0,_=d?o|A[n>>2]:A[n>>2]&~o,A[n>>2]=_,(0|f)!=(0|(t=t+1|0)););}if(!Xa(1,a+28|0,e))break e;if(f=A[a+28>>2],i=A[A[r+48>>2]+64>>2],f>>>0>A[i+4>>2]-A[i>>2]>>2>>>0)break e;if(f){if(t=0,Wa(r+84|0,f),A[(i=a+8|0)>>2]=0,A[i+4>>2]=0,b[i+5|0]=0,b[i+6|0]=0,b[i+7|0]=0,b[i+8|0]=0,b[i+9|0]=0,b[i+10|0]=0,b[i+11|0]=0,b[i+12|0]=0,!ta(i,e))break a;for(;o=1<<t,d=Ba(i),n=A[r+84>>2]+(t>>>3&536870908)|0,_=d?o|A[n>>2]:A[n>>2]&~o,A[n>>2]=_,(0|f)!=(0|(t=t+1|0)););}if(!Xa(1,a+28|0,e))break e;if(f=A[a+28>>2],i=A[A[r+48>>2]+64>>2],f>>>0>A[i+4>>2]-A[i>>2]>>2>>>0)break e;if(f){if(t=0,Wa(r+96|0,f),A[(i=a+8|0)>>2]=0,A[i+4>>2]=0,b[i+5|0]=0,b[i+6|0]=0,b[i+7|0]=0,b[i+8|0]=0,b[i+9|0]=0,b[i+10|0]=0,b[i+11|0]=0,b[i+12|0]=0,!ta(i,e))break a;for(;o=1<<t,d=Ba(i),n=A[r+96>>2]+(t>>>3&536870908)|0,_=d?o|A[n>>2]:A[n>>2]&~o,A[n>>2]=_,(0|f)!=(0|(t=t+1|0)););}if(t=0,i=A[e+8>>2],o=A[e+12>>2],f=i,_=i=A[e+20>>2],f>>>0<(d=(n=A[e+16>>2])+4|0)>>>0&(0|(i=d>>>0<4?i+1|0:i))>=(0|o)|(0|i)>(0|o))break r;if(h=A[e>>2],R=k[0|(m=h+n|0)]|k[m+1|0]<<8|k[m+2|0]<<16|k[m+3|0]<<24,A[e+16>>2]=d,A[e+20>>2]=i,m=f,f=o,i=_,(o=n+8|0)>>>0>m>>>0&(0|(i=o>>>0<8?i+1|0:i))>=(0|f)|(0|i)>(0|f))break r;if(f=k[0|(f=d+h|0)]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[e+16>>2]=o,A[e+20>>2]=i,(0|f)<(0|R))break r;if(A[r+16>>2]=f,A[r+12>>2]=R,!(i=(f>>31)-((R>>31)+(f>>>0<R>>>0)|0)|0)&(e=f-R|0)>>>0>2147483646|i)break r;if(t=1,e=e+1|0,A[r+20>>2]=e,i=e>>>1|0,A[r+24>>2]=i,A[r+28>>2]=0-i,1&e)break r;A[r+24>>2]=i-1;break r}t=0}return Q=a+32|0,0|t},function Fj(r,e,a,i,f,t){e|=0,a|=0,i|=0,f|=0,t|=0;var o,b,n,k,u,s=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0,E=0,Y=0,M=0,J=0,g=0,O=0,z=0,X=0,C=0,P=0,S=0;Q=o=Q+-64|0,A[(r|=0)+8>>2]=f,t=A[(n=r+32|0)>>2];r:{if((i=A[r+36>>2]-t>>2)>>>0<f>>>0)ya(n,f-i|0),A[o+56>>2]=0,A[o+60>>2]=0,A[o+48>>2]=0,A[o+52>>2]=0,A[o+40>>2]=0,A[o+44>>2]=0,A[o+32>>2]=0,A[o+36>>2]=0,A[o+24>>2]=0,A[o+28>>2]=0,A[o+16>>2]=0,A[o+20>>2]=0,A[o>>2]=0;else if(i>>>0>f>>>0&&(A[r+36>>2]=t+(f<<2)),A[o+56>>2]=0,A[o+60>>2]=0,A[o+48>>2]=0,A[o+52>>2]=0,A[o+40>>2]=0,A[o+44>>2]=0,A[o+32>>2]=0,A[o+36>>2]=0,A[o+24>>2]=0,A[o+28>>2]=0,A[o+16>>2]=0,A[o+20>>2]=0,A[o>>2]=0,i=0,!f)break r;Pa(o+16|0,f,o),s=A[o+28>>2],i=A[o+32>>2]}A[o>>2]=0;r:if((i=i-s>>2)>>>0>=f>>>0){if(i>>>0<=f>>>0)break r;A[o+32>>2]=(f<<2)+s}else Pa(o+16|12,f-i|0,o);A[o>>2]=0,t=A[o+40>>2];r:if((i=A[o+44>>2]-t>>2)>>>0>=f>>>0){if(i>>>0<=f>>>0)break r;A[o+44>>2]=t+(f<<2)}else Pa(o+40|0,f-i|0,o);A[o>>2]=0,t=A[o+52>>2];r:if((i=A[o+56>>2]-t>>2)>>>0>=f>>>0){if(i>>>0<=f>>>0)break r;A[o+56>>2]=t+(f<<2)}else Pa(o+52|0,f-i|0,o);if(!(A[r+8>>2]<=0)){for(_=A[o+16>>2],d=A[r+32>>2],s=0;(0|(t=A[(i=s<<2)+_>>2]))>(0|(j=A[r+16>>2]))?A[i+d>>2]=j:(i=i+d|0,j=A[r+12>>2],A[i>>2]=(0|j)>(0|t)?j:t),(0|(s=s+1|0))<(0|(i=A[r+8>>2])););if(!((0|i)<=0))for(i=0;;){t=(_=i<<2)+a|0,_=A[e+_>>2]+A[d+_>>2]|0,A[t>>2]=_;r:{if((0|_)>A[r+16>>2])_=_-A[r+20>>2]|0;else{if((0|_)>=A[r+12>>2])break r;_=_+A[r+20>>2]|0}A[t>>2]=_}if(!((0|(i=i+1|0))<A[r+8>>2]))break}}u=A[r+52>>2],b=A[r+48>>2],k=pa(16),A[(i=k)>>2]=0,A[i+4>>2]=0,A[i+8>>2]=0,A[i+12>>2]=0,A[o+8>>2]=0,A[o>>2]=0,A[o+4>>2]=0;r:{if(f){if(f>>>0>=1073741824)break r;V=pa(i=f<<2),A[o>>2]=V,A[o+8>>2]=i+V,ra(V,0,i)}B=1,i=A[r+56>>2],I=A[i>>2];e:if(!((0|(i=A[i+4>>2]-I|0))<8))for(g=(0|(Z=i>>2))<=2?2:Z,O=Z>>>0<=1?1:Z,E=-2&f,Y=1&f,z=-4&f,M=3&f,J=f-1|0,X=f<<2,C=f>>>0<4,B=0,j=1;;){a:{i:{f:{t:{if((0|j)!=(0|O)){o:{b:if(-1!=(0|(t=A[(j<<2)+I>>2]))){R=1,i=t+2|0,W=1<<(F=(d=(t>>>0)%3|0)?t-1|0:i),P=(D=A[b>>2])+(F>>>3&536870908)|0,_=0,S=!!(0|d)|-1!=(0|i),i=t;n:{for(;;){if(!(A[D+(i>>>3&536870908)>>2]>>>i&1||-1==(0|(d=A[A[A[b+64>>2]+12>>2]+(i<<2)>>2]))||(h=A[u>>2],s=A[b+28>>2],(0|(T=A[h+(A[s+(d<<2)>>2]<<2)>>2]))>=(0|j)||(0|(N=A[h+(A[s+((((N=d+1|0)>>>0)%3|0?N:d-2)<<2)>>2]<<2)>>2]))>=(0|j)||(0|(s=A[h+(A[s+(d+((d>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2]))>=(0|j)))){if(f){if(d=A[(o+16|0)+m(_,12)>>2],h=m(f,s),N=m(f,N),T=m(f,T),s=0,U=0,J)for(;A[d+(s<<2)>>2]=(A[(s+h<<2)+a>>2]+A[(s+N<<2)+a>>2]|0)-A[(s+T<<2)+a>>2],A[d+((G=1|s)<<2)>>2]=(A[(h+G<<2)+a>>2]+A[(N+G<<2)+a>>2]|0)-A[(T+G<<2)+a>>2],s=s+2|0,(0|E)!=(0|(U=U+2|0)););Y&&(A[d+(s<<2)>>2]=(A[(s+h<<2)+a>>2]+A[(s+N<<2)+a>>2]|0)-A[(s+T<<2)+a>>2])}if(d=4,4==(0|(_=_+1|0)))break n}A:if(1&R){if(s=i-2|0,d=i+1|0,i=-1,-1==(0|(d=(d>>>0)%3|0?d:s))|A[D+(d>>>3&536870908)>>2]>>>d&1)break A;if(-1==(0|(d=A[A[A[b+64>>2]+12>>2]+(d<<2)>>2])))break A;i=((i=d+1|0)>>>0)%3|0?i:d-2|0}else{if((i>>>0)%3|0)s=i-1|0;else if(s=i+2|0,i=-1,-1==(0|s))break A;i=-1,A[D+(s>>>3&536870908)>>2]>>>s&1||-1!=(0|(d=A[A[A[b+64>>2]+12>>2]+(s<<2)>>2]))&&(i=(d>>>0)%3|0?d-1|0:d+2|0)}A:if((0|i)!=(0|t)){if(-1==(0|i)&R){if(!S|W&A[P>>2])break A;if(-1==(0|(i=A[A[A[b+64>>2]+12>>2]+(F<<2)>>2])))break A;R=0,i=(i>>>0)%3|0?i-1|0:i+2|0}if(-1!=(0|i))continue}break}if((0|(d=_))<=0)break b}for(f&&ra(V,0,X),N=((i=d-1|0)<<2)+k|0,G=i=m(i,12)+r|0,F=A[i- -64>>2],R=0,i=A[o>>2],t=0;;){if(_=A[N>>2],A[N>>2]=_+1,_>>>0>=F>>>0)break e;if(!(A[A[G+60>>2]+(_>>>3&536870908)>>2]>>>_&1)&&(t=t+1|0,f)){if(D=A[(o+16|0)+m(R,12)>>2],_=0,s=0,T=0,!C)for(;A[(U=(h=s<<2)+i|0)>>2]=A[h+D>>2]+A[U>>2],A[(W=(U=4|h)+i|0)>>2]=A[D+U>>2]+A[W>>2],A[(W=(U=8|h)+i|0)>>2]=A[D+U>>2]+A[W>>2],A[(U=(h|=12)+i|0)>>2]=A[h+D>>2]+A[U>>2],s=s+4|0,(0|z)!=(0|(T=T+4|0)););if(M)for(;A[(T=(h=s<<2)+i|0)>>2]=A[h+D>>2]+A[T>>2],s=s+1|0,(0|M)!=(0|(_=_+1|0)););}if((0|(R=R+1|0))==(0|d))break}if(_=m(f,j),!t)break o;if(!f)break i;if(s=0,i=0,J)break t;break f}_=m(f,j)}if(A[r+8>>2]<=0)break a;for(R=(m(j-1|0,f)<<2)+a|0,d=A[n>>2],s=0;(0|(t=A[(i=s<<2)+R>>2]))>(0|(D=A[r+16>>2]))?A[i+d>>2]=D:(i=i+d|0,D=A[r+12>>2],A[i>>2]=(0|D)>(0|t)?D:t),(0|(s=s+1|0))<(0|(t=A[r+8>>2])););if(i=0,(0|t)<=0)break a;for(s=(t=_<<2)+a|0,R=e+t|0;;){t=(_=i<<2)+s|0,_=A[_+R>>2]+A[d+_>>2]|0,A[t>>2]=_;o:{if((0|_)>A[r+16>>2])_=_-A[r+20>>2]|0;else{if((0|_)>=A[r+12>>2])break o;_=_+A[r+20>>2]|0}A[t>>2]=_}if(!((0|(i=i+1|0))<A[r+8>>2]))break}break a}Ca(),v()}for(;A[(R=(d=s<<2)+V|0)>>2]=A[R>>2]/(0|t),A[(d=(4|d)+V|0)>>2]=A[d>>2]/(0|t),s=s+2|0,(0|E)!=(0|(i=i+2|0)););}Y&&(A[(i=(s<<2)+V|0)>>2]=A[i>>2]/(0|t))}if(!(A[r+8>>2]<=0)){for(d=A[n>>2],s=0;(0|(t=A[(i=s<<2)+V>>2]))>(0|(R=A[r+16>>2]))?A[i+d>>2]=R:(i=i+d|0,R=A[r+12>>2],A[i>>2]=(0|R)>(0|t)?R:t),(0|(s=s+1|0))<(0|(t=A[r+8>>2])););if(i=0,!((0|t)<=0))for(s=(t=_<<2)+a|0,R=e+t|0;;){t=(_=i<<2)+s|0,_=A[_+R>>2]+A[d+_>>2]|0,A[t>>2]=_;i:{if((0|_)>A[r+16>>2])_=_-A[r+20>>2]|0;else{if((0|_)>=A[r+12>>2])break i;_=_+A[r+20>>2]|0}A[t>>2]=_}if(!((0|(i=i+1|0))<A[r+8>>2]))break}}}if(B=(0|Z)<=(0|(j=j+1|0)),(0|j)==(0|g))break}return(r=A[o>>2])&&oa(r),oa(k),(r=A[o+52>>2])&&(A[o+56>>2]=r,oa(r)),(r=A[o+40>>2])&&(A[o+44>>2]=r,oa(r)),(r=A[o+28>>2])&&(A[o+32>>2]=r,oa(r)),(r=A[o+16>>2])&&(A[o+20>>2]=r,oa(r)),Q=o- -64|0,0|B}sa(),v()},function Ej(r){var e=0;return A[(r|=0)>>2]=3812,(e=A[r+76>>2])&&oa(e),e=A[r+68>>2],A[r+68>>2]=0,e&&oa(e),A[r>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),0|r},function Dj(r){var e=0;A[(r|=0)>>2]=3812,(e=A[r+76>>2])&&oa(e),e=A[r+68>>2],A[r+68>>2]=0,e&&oa(e),A[r>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),oa(r)},ld,wc,Da,Ja,vc,function Cj(r,e){r|=0,e|=0;var a,i=0,f=0,t=0,o=0,n=0,_=0,d=0,m=0,R=0,h=0;Q=a=Q-32|0,A[a+28>>2]=0;r:{if(u[e+38>>1]<=513){if(i=A[e+20>>2],i=(t=(f=A[e+16>>2])+4|0)>>>0<4?i+1|0:i,_=A[e+12>>2],s[e+8>>2]<t>>>0&(0|_)<=(0|i)|(0|i)>(0|_))break r;f=f+A[e>>2]|0,o=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[e+16>>2]=t,A[e+20>>2]=i}else{if(!Xa(1,a+28|0,e))break r;o=A[a+28>>2]}if(o&&(i=A[A[r+48>>2]+64>>2],!(A[i+4>>2]-A[i>>2]>>2>>>0<o>>>0)&&(Wa(r+76|0,o),A[(i=a+8|0)>>2]=0,A[i+4>>2]=0,b[i+5|0]=0,b[i+6|0]=0,b[i+7|0]=0,b[i+8|0]=0,b[i+9|0]=0,b[i+10|0]=0,b[i+11|0]=0,b[i+12|0]=0,ta(i,e)))){for(_=1;f=1<<d,t=Ba(i),n=A[r+76>>2]+(d>>>3&536870908)|0,1&(t^=_)?f=A[n>>2]&~f:f|=A[n>>2],_=1^t,A[n>>2]=f,(0|o)!=(0|(d=d+1|0)););i=A[e+8>>2],n=t=A[e+12>>2],_=t=A[e+20>>2],d=f=(o=A[e+16>>2])+4|0,f>>>0>i>>>0&(0|(t=f>>>0<4?t+1|0:t))>=(0|n)|(0|t)>(0|n)||(R=A[e>>2],m=k[0|(f=R+o|0)]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[e+16>>2]=d,A[e+20>>2]=t,f=i,i=_,f>>>0<(t=o+8|0)>>>0&(0|(i=t>>>0<8?i+1|0:i))>=(0|n)|(0|i)>(0|n)||(f=k[0|(f=d+R|0)]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[e+16>>2]=t,A[e+20>>2]=i,(0|f)<(0|m)||(A[r+16>>2]=f,A[r+12>>2]=m,!(i=(f>>31)-((m>>31)+(f>>>0<m>>>0)|0)|0)&(e=f-m|0)>>>0>2147483646|i||(h=1,i=e+1|0,A[r+20>>2]=i,e=i>>>1|0,A[r+24>>2]=e,A[r+28>>2]=0-e,1&i||(A[r+24>>2]=e-1)))))}}return Q=a+32|0,0|h},function Aj(r,e,a,i,f,t){r|=0,e|=0,a|=0,i|=0,f|=0,t|=0;var o=0,n=0,u=R(0),s=0,d=0,j=0,D=R(0),U=R(0),N=R(0),W=R(0),G=R(0),Z=0,F=R(0),B=R(0),I=R(0),E=R(0),Y=0,M=R(0),J=R(0),g=R(0),O=0;r:{if(2==(0|f)&&(A[r+64>>2]=t,A[r+72>>2]=2,f=pa(8),i=A[r+68>>2],A[r+68>>2]=f,i&&oa(i),A[r+8>>2]=2,f=A[(Y=r+32|0)>>2],(i=A[r+36>>2]-f|0)>>>0<=7?ya(Y,2-(i>>>2|0)|0):8!=(0|i)&&(A[r+36>>2]=f+8),n=1,i=A[r+56>>2],!((0|(i=A[i+4>>2]-A[i>>2]|0))<=0)))for(O=(i=i>>>2|0)>>>0<=1?1:i,i=0;;){if(f=A[r+56>>2],n=A[f>>2],A[f+4>>2]-n>>2>>>0<=i>>>0)break r;if(G=R(0),Q=o=Q-48|0,f=-1,t=-1,-1!=(0|(n=A[n+(i<<2)>>2]))&&(f=((f=n+1|0)>>>0)%3|0?f:n-2|0,t=n-1|0,(n>>>0)%3|0||(t=n+2|0)),s=A[r+52>>2],n=A[s>>2],s=A[s+4>>2]-n>>2,j=f<<2,f=A[A[r+48>>2]+28>>2],s>>>0<=(Z=A[j+f>>2])>>>0||(f=A[f+(t<<2)>>2])>>>0>=s>>>0)Ca(),v();else{e:if((0|(s=A[n+(f<<2)>>2]))>=(0|i)|(0|(t=A[n+(Z<<2)>>2]))>=(0|i)){if((0|i)>(0|t))f=A[r+72>>2],n=m(t,f);else{if((0|i)<=0){if(t=1,A[r+72>>2]<=0)break e;for(n=A[r+68>>2],f=0;A[n+(f<<2)>>2]=0,(0|(f=f+1|0))<A[r+72>>2];);break e}f=A[r+72>>2],n=m(f,i-1|0)}if(t=1,!((0|f)<=0))for(s=A[r+68>>2],f=0;A[s+(f<<2)>>2]=A[(f+n<<2)+a>>2],(0|(f=f+1|0))<A[r+72>>2];);}else{if(f=A[r+72>>2],n=(m(f,s)<<2)+a|0,D=R(A[n+4>>2]),f=(m(f,t)<<2)+a|0,W=R(A[f+4>>2]),!((M=R(A[f>>2]))!=(U=R(A[n>>2]))|D!=W)){n=+D>2147483647,f=A[r+68>>2],t=R(h(D))<R(2147483648)?~~D:-2147483648,A[f+4>>2]=D<R(-2147483648)||n?-2147483648:t,n=+U>2147483647,t=R(h(U))<R(2147483648)?~~U:-2147483648,A[f>>2]=U<R(-2147483648)||n?-2147483648:t,t=1;break e}f=A[A[r+64>>2]+(i<<2)>>2],A[o+40>>2]=0,A[o+32>>2]=0,A[o+36>>2]=0,n=A[r+60>>2],k[n+84|0]||(f=A[A[n+68>>2]+(f<<2)>>2]),Va(n,f,b[n+24|0],o+32|0),t=A[A[r+64>>2]+(t<<2)>>2],A[o+24>>2]=0,A[o+16>>2]=0,A[o+20>>2]=0,f=A[r+60>>2],k[f+84|0]||(t=A[A[f+68>>2]+(t<<2)>>2]),Va(f,t,b[f+24|0],o+16|0),t=A[A[r+64>>2]+(s<<2)>>2],A[o+8>>2]=0,A[o>>2]=0,A[o+4>>2]=0,f=A[r+60>>2],k[f+84|0]||(t=A[A[f+68>>2]+(t<<2)>>2]),Va(f,t,b[f+24|0],o),N=_[o+24>>2],F=R(_[o+8>>2]-N),B=_[o+20>>2],I=R(_[o+4>>2]-B),g=_[o+16>>2],E=R(_[o>>2]-g),J=R(R(F*F)+R(R(I*I)+R(R(E*E)+R(0)))),A[r+88>>2]>=258&&(u=R(0),!(J>R(0)))||(u=R(_[o+40>>2]-N),N=R(_[o+36>>2]-B),B=R(_[o+32>>2]-g),G=R(R(R(F*u)+R(R(I*N)+R(R(E*B)+R(0))))/J),u=R(u-R(F*G)),F=R(u*u),u=R(N-R(I*G)),N=R(u*u),u=R(B-R(E*G)),u=R(V(R(R(F+R(N+R(R(u*u)+R(0))))/J)))),(t=A[r+80>>2])&&(f=t-1|0,n=A[A[r+76>>2]+(f>>>3&536870908)>>2],A[r+80>>2]=f,D=R(D-W),N=R(R(D*G)+W),U=R(U-M),W=R(U*u),W=R(N+((f=n>>>f&1)?W:R(-W))),u=R(u*D),(d=T(+R(R(R(U*G)+M)+(f?R(-u):u))+.5))<-2147483648|d!=d|d>2147483647?(f=A[r+68>>2],A[f>>2]=-2147483648):(f=A[r+68>>2],n=h(d)<2147483648?~~d:-2147483648,A[f>>2]=n),s=(d=T(+W+.5))>2147483647,n=h(d)<2147483648?~~d:-2147483648,A[f+4>>2]=d<-2147483648||d!=d||s?-2147483648:n),t=!!(0|t)}Q=o+48|0}if(!(n=t))return 0;if(!(A[r+8>>2]<=0)){for(Z=A[r+68>>2],s=A[Y>>2],f=0;(0|(o=A[(t=f<<2)+Z>>2]))>(0|(j=A[r+16>>2]))?A[t+s>>2]=j:(t=t+s|0,j=A[r+12>>2],A[t>>2]=(0|j)>(0|o)?j:o),(0|(f=f+1|0))<(0|(o=A[r+8>>2])););if(t=0,!((0|o)<=0))for(Z=(f=i<<3)+a|0,j=e+f|0;;){f=(o=t<<2)+Z|0,o=A[o+j>>2]+A[o+s>>2]|0,A[f>>2]=o;e:{if((0|o)>A[r+16>>2])o=o-A[r+20>>2]|0;else{if((0|o)>=A[r+12>>2])break e;o=o+A[r+20>>2]|0}A[f>>2]=o}if(!((0|(t=t+1|0))<A[r+8>>2]))break}}if((0|O)==(0|(i=i+1|0)))break}return 0|n}Ca(),v()},function zj(r){var e=0;return A[(r|=0)>>2]=4040,(e=A[r+76>>2])&&oa(e),A[r>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),0|r},function yj(r){var e=0;A[(r|=0)>>2]=4040,(e=A[r+76>>2])&&oa(e),A[r>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),oa(r)},Ze,wc,Da,Ja,vc,Ye,function xj(r,e,a,i,f,t){r|=0,e|=0,a|=0,i|=0,t|=0;var o=0,n=0,u=0,s=0,_=0,d=0,m=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0,E=0,M=0,J=0,g=0,O=0,z=0,X=0,C=0,P=0,S=0,H=0,q=0,x=0,L=0,K=0,$=0,rr=0,er=0,ar=0,ir=0,fr=0,tr=0;r:{if(2==(0|(f|=0))&&(A[r+8>>2]=2,A[r- -64>>2]=t,f=A[(C=r+32|0)>>2],(i=A[r+36>>2]-f|0)>>>0<=7?ya(C,2-(i>>>2|0)|0):8!=(0|i)&&(A[r+36>>2]=f+8),j=1,i=A[r+56>>2],!((0|(i=A[i+4>>2]-A[i>>2]|0))<=0)))for(h=r+60|0,ar=(i=i>>>2|0)>>>0<=1?1:i,ir=r+68|0,i=0;;){if(f=A[r+56>>2],n=A[f>>2],A[f+4>>2]-n>>2>>>0<=i>>>0)break r;Q=_=Q-80|0,t=-1,f=-1,-1!=(0|(n=A[n+(i<<2)>>2]))&&(t=((f=n+1|0)>>>0)%3|0?f:n-2|0,f=n-1|0,(n>>>0)%3|0||(f=n+2|0)),o=A[h+36>>2],n=A[o>>2];e:{a:{i:{f:{if(o=A[o+4>>2]-n>>2,u=t<<2,t=A[A[h+32>>2]+28>>2],!(o>>>0<=(s=A[u+t>>2])>>>0||(f=A[t+(f<<2)>>2])>>>0>=o>>>0)){t:{if(!((0|(d=A[n+(f<<2)>>2]))>=(0|i)|(0|(t=A[n+(s<<2)>>2]))>=(0|i))){if(W=A[(n=(d<<3)+a|0)+4>>2],f=A[(o=(t<<3)+a|0)+4>>2],!((0|(s=A[n>>2]))!=(0|(n=A[o>>2]))|(0|f)!=(0|W))){A[h+8>>2]=n,A[h+12>>2]=f;break t}if(j=A[A[h+4>>2]+(i<<2)>>2],A[_+72>>2]=0,A[_+76>>2]=0,A[(o=_- -64|0)>>2]=0,A[o+4>>2]=0,A[_+56>>2]=0,A[_+60>>2]=0,o=A[h>>2],k[o+84|0]||(j=A[A[o+68>>2]+(j<<2)>>2]),Sa(o,j,b[o+24|0],_+56|0),j=A[A[h+4>>2]+(t<<2)>>2],A[_+48>>2]=0,A[_+52>>2]=0,A[_+40>>2]=0,A[_+44>>2]=0,A[_+32>>2]=0,A[_+36>>2]=0,o=A[h>>2],k[o+84|0]||(j=A[A[o+68>>2]+(j<<2)>>2]),Sa(o,j,b[o+24|0],_+32|0),j=A[A[h+4>>2]+(d<<2)>>2],A[_+24>>2]=0,A[_+28>>2]=0,A[_+16>>2]=0,A[_+20>>2]=0,A[_+8>>2]=0,A[_+12>>2]=0,o=A[h>>2],k[o+84|0]||(j=A[A[o+68>>2]+(j<<2)>>2]),Sa(o,j,b[o+24|0],_+8|0),G=(o=A[_+16>>2])-(R=A[_+40>>2])|0,P=A[_+44>>2],J=o=A[_+20>>2]-(P+(o>>>0<R>>>0)|0)|0,d=Rj(G,o,G,o),D=Y,B=(o=A[_+8>>2])-(F=A[_+32>>2])|0,S=A[_+36>>2],g=o=A[_+12>>2]-(S+(o>>>0<F>>>0)|0)|0,o=(u=d)+(d=Rj(B,o,B,o))|0,u=Y+D|0,u=o>>>0<d>>>0?u+1|0:u,E=(d=A[_+24>>2])-(I=A[_+48>>2])|0,H=A[_+52>>2],O=d=A[_+28>>2]-(H+(d>>>0<I>>>0)|0)|0,m=o,o=Rj(E,d,E,d),u=Y+u|0,(T=o>>>0>(U=m+o|0)>>>0?u+1|0:u)|U){if(j=0,M=Tj(-1,2147483647,U,T),x=t=n>>31,q=n,n=(D=n^(o=u=t>>31))-o|0,o=t=(t^o)-((o>>>0>D>>>0)+o|0)|0,L=t=f>>31,m=(D=(z=f)^(f=t>>31))-f|0,(0|(d=Y))==(0|(f=(t=(0|o)==(0|(f=((u=t>>31)^t)-((f>>>0>D>>>0)+u|0)|0))&n>>>0>m>>>0|f>>>0<o>>>0)?o:f))&(n=t?n:m)>>>0>M>>>0|f>>>0>d>>>0)break e;if(f=Rj((n=A[_+64>>2])-R|0,(K=A[_+68>>2])-((n>>>0<R>>>0)+P|0)|0,G,J),t=Y,d=Rj((o=A[_+56>>2])-F|0,($=A[_+60>>2])-((o>>>0<F>>>0)+S|0)|0,B,g),u=Y+t|0,u=(f=d+f|0)>>>0<d>>>0?u+1|0:u,d=(t=f)+(f=Rj((m=A[_+72>>2])-I|0,(rr=A[_+76>>2])-((m>>>0<I>>>0)+H|0)|0,E,O))|0,t=Y+u|0,D=f>>>0>d>>>0?t+1|0:t,M=(f=s)-q|0,er=f=(f>>31)-((f>>>0<q>>>0)+x|0)|0,t=(Z=(s=f>>31)^M)-s|0,u=f=((u=f>>31)^f)-((s>>>0>Z>>>0)+u|0)|0,Z=W-z|0,W=f=(W>>31)-((W>>>0<z>>>0)+L|0)|0,s=t,(t=Tj(-1,2147483647,(t=(0|u)==(0|(f=((t=f>>31)^f)-(((N=f>>31)>>>0>(V=N^Z)>>>0)+t|0)|0))&s>>>0>(X=V-N|0)>>>0|f>>>0<u>>>0)?s:X,t?u:f)>>>0<d>>>0)&(0|(f=Y))<=(0|D)|(0|f)<(0|D))break e;if(t=f=g>>31,f=(s=f^B)-f|0,X=f=(u=(0|(t=(t^g)-((t>>>0>s>>>0)+t|0)|0))==(0|(s=((u=J>>31)^J)-((u>>>0>(N=u^G)>>>0)+u|0)|0))&f>>>0>(V=N-u|0)>>>0|t>>>0>s>>>0)?f:V,(t=Tj(-1,2147483647,(f=(0|(t=u?t:s))==(0|(s=((u=O>>31)^O)-((u>>>0>(N=u^E)>>>0)+u|0)|0))&f>>>0>(V=N-u|0)>>>0|t>>>0>s>>>0)?X:V,f?t:s)>>>0<d>>>0)&(0|(f=Y))<=(0|D)|(0|f)<(0|D))break e;if(s=1,f=0,t=R,R=Sj(Rj(d,D,G,J),Y,U,T),u=Y+P|0,u=(t=t+R|0)>>>0<R>>>0?u+1|0:u,R=Rj(R=n-t|0,t=K-((t>>>0>n>>>0)+u|0)|0,R,t),G=Y,t=o,u=Sj(Rj(d,D,B,g),Y,U,T),o=Y+S|0,o=(n=u+F|0)>>>0<u>>>0?o+1|0:o,o=Rj(u=t-n|0,t=$-((t>>>0<n>>>0)+o|0)|0,u,t),t=Y+G|0,t=(n=o+R|0)>>>0<o>>>0?t+1|0:t,R=n,o=Sj(Rj(d,D,E,O),Y,U,T),u=Y+H|0,u=(n=o+I|0)>>>0<o>>>0?u+1|0:u,m=Rj(o=m-n|0,n=rr-((n>>>0>m>>>0)+u|0)|0,o,n),o=Y+t|0,t=Rj(n=m+R|0,n>>>0<m>>>0?o+1|0:o,U,T),m=n=Y,!n&t>>>0<=1)break f;for(u=t;o=f<<1|s>>>31,s<<=1,f=o,R=!n&u>>>0>7|!!(0|n),u=(3&n)<<30|u>>>2,n=n>>>2|0,R;);break i}}if((0|i)>(0|t))f=t<<1;else{if((0|i)<=0){A[h+8>>2]=0,A[h+12>>2]=0;break t}f=(i<<1)-2|0}f=(f<<2)+a|0,A[h+8>>2]=A[f>>2],A[h+12>>2]=A[f+4>>2]}j=1;break e}Ca(),v()}if(f=m,s=t,t-1|0)break a}for(;n=Tj(t,m,s,f),u=f+Y|0,n=Rj(s=(1&(u=(f=n+s|0)>>>0<s>>>0?u+1|0:u))<<31|f>>>1,f=u>>>1|0,s,f),(0|m)==(0|(o=Y))&t>>>0<n>>>0|o>>>0>m>>>0;);}(t=A[h+20>>2])&&(o=t-1|0,u=A[A[h+16>>2]+(o>>>3&536870908)>>2],A[h+20>>2]=o,j=1,t=Rj(d,D,Z,W),n=Y,m=(R=Rj(U,T,z,L))+t|0,t=Y+n|0,t=m>>>0<R>>>0?t+1|0:t,n=Rj(s,f,M,er),u=(o=u>>>o&1)?0-n|0:n,R=t,t=Y,n=R+(o?0-(t+!!(0|n)|0)|0:t)|0,fr=h,tr=Sj(m=u+m|0,u>>>0>m>>>0?n+1|0:n,U,T),A[fr+12>>2]=tr,t=Rj(d,D,M,er),n=Y,t=(d=Rj(U,T,q,x))+t|0,u=Y+n|0,n=0-(f=Rj(s,f,Z,W))|0,s=Y,u=(t>>>0<d>>>0?u+1|0:u)+(o?s:0-(!!(0|f)+s|0)|0)|0,fr=h,tr=Sj(t=(n=o?f:n)+t|0,t>>>0<n>>>0?u+1|0:u,U,T),A[fr+8>>2]=tr)}if(Q=_+80|0,!j)return 0;if(!(A[r+8>>2]<=0)){for(o=A[C>>2],f=0;(0|(n=A[(t=f<<2)+ir>>2]))>(0|(s=A[r+16>>2]))?A[t+o>>2]=s:(t=t+o|0,s=A[r+12>>2],A[t>>2]=(0|s)>(0|n)?s:n),(0|(f=f+1|0))<(0|(n=A[r+8>>2])););if(t=0,!((0|n)<=0))for(s=(f=i<<3)+a|0,d=e+f|0;;){f=(n=t<<2)+s|0,n=A[n+d>>2]+A[n+o>>2]|0,A[f>>2]=n;e:{if((0|n)>A[r+16>>2])u=n-A[r+20>>2]|0;else{if((0|n)>=A[r+12>>2])break e;u=n+A[r+20>>2]|0}A[f>>2]=u}if(!((0|(t=t+1|0))<A[r+8>>2]))break}}if((0|ar)==(0|(i=i+1|0)))break}return 0|j}Ca(),v()},function wj(r){var e;return A[(r|=0)>>2]=4276,A[r>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),0|r},function vj(r){var e;A[(r|=0)>>2]=4276,A[r>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),oa(r)},Ob,Xe,Da,Ja,We,Ve,function uj(r,e,a,i,f,t){e|=0,a|=0,i|=0,f|=0,t|=0;var o,b=0,n=0,k=0,u=0,s=0,_=0,d=0,m=0;Q=o=Q-32|0,A[(r|=0)+68>>2]=t,i=A[r+56>>2],f=A[i>>2],i=A[i+4>>2],A[o+24>>2]=0,A[o+16>>2]=0,A[o+20>>2]=0;r:{if((0|(i=i-f|0))>0)for(_=r+60|0,d=(i=i>>>2|0)>>>0<=1?1:i,m=r+112|0;;){if(f=A[r+56>>2],i=A[f>>2],A[f+4>>2]-i>>2>>>0<=k>>>0)break r;if(Nb(_,A[i+(k<<2)>>2],o+16|0),t=((i=(n=A[o+20>>2])>>31)^n)-i+(((f=(b=A[o+16>>2])>>31)^b)-f)|0,f=((i=(u=A[o+24>>2])>>31)^u)-i|0,i=0,(i=(s=f)>>>0>(f=f+t|0)>>>0?1:i)|f?(b=Sj(Rj(t=A[r+108>>2],s=t>>31,b,b>>31),Y,f,i),A[o+16>>2]=b,i=Sj(Rj(t,s,n,n>>31),Y,f,i),A[o+20>>2]=i,i=(f=((f=i)^(i>>=31))-i|0)+(((i=b>>31)^b)-i|0)|0,A[o+24>>2]=(0|u)>=0?t-i:i-t):A[o+16>>2]=A[r+108>>2],i=Ba(m),t=A[o+16>>2],i?(A[o+24>>2]=0-A[o+24>>2],f=0-A[o+20>>2]|0,A[o+20>>2]=f,t=0-t|0,A[o+16>>2]=t):f=A[o+20>>2],(0|t)>=0?(i=(t=A[r+108>>2])+A[o+24>>2]|0,t=f+t|0):((0|f)<0?t=((i=A[o+24>>2])^(t=i>>31))-t|0:(t=(i=A[o+24>>2])>>31,t=A[r+100>>2]+(t-(i^t)|0)|0),(0|i)<0?i=((i=f>>31)^f)-i|0:(i=f>>31,i=A[r+100>>2]+(i-(i^f)|0)|0)),f=A[r+100>>2],i|t?(0|i)!=(0|f)|t?(0|f)!=(0|t)|i?t||(0|(n=A[r+108>>2]))>=(0|i)?(0|f)!=(0|t)||(0|(n=A[r+108>>2]))<=(0|i)?(0|i)!=(0|f)||(0|(f=A[r+108>>2]))<=(0|t)?i||(i=0,(0|(f=A[r+108>>2]))>=(0|t)||(t=(f<<1)-t|0)):t=(f<<1)-t|0:i=(n<<1)-i|0:(i=(n<<1)-i|0,t=0):i=t:t=i:t=i=f,A[o+12>>2]=i,A[o+8>>2]=t,!(A[r+8>>2]<=0)){for(n=A[r+32>>2],t=0;(0|(f=A[(i=t<<2)+(o+8|0)>>2]))>(0|(b=A[r+16>>2]))?A[i+n>>2]=b:(i=i+n|0,b=A[r+12>>2],A[i>>2]=(0|b)>(0|f)?b:f),(0|(t=t+1|0))<(0|(f=A[r+8>>2])););if(i=0,!((0|f)<=0))for(b=(f=k<<3)+a|0,u=e+f|0;;){f=(t=i<<2)+b|0,t=A[t+u>>2]+A[t+n>>2]|0,A[f>>2]=t;e:{if((0|t)>A[r+16>>2])t=t-A[r+20>>2]|0;else{if((0|t)>=A[r+12>>2])break e;t=t+A[r+20>>2]|0}A[f>>2]=t}if(!((0|(i=i+1|0))<A[r+8>>2]))break}}if((0|d)==(0|(k=k+1|0)))break}return Q=o+32|0,1}Ca(),v()},Ta,La,Mb,eb,Nb,fb,Ub,Da,Pb,function tj(r,e,a,i,f,t){e|=0,a|=0,i|=0,f|=0,t|=0;var o,b,n,k,u,s=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0;if(A[(r|=0)+8>>2]=f,_=A[(b=r+32|0)>>2],(t=A[r+36>>2]-_>>2)>>>0<f>>>0?(ya(b,f-t|0),i=A[r+8>>2]):(i=f)>>>0>=t>>>0||(A[r+36>>2]=_+(f<<2),i=f),u=A[r+52>>2],n=A[r+48>>2],t=0,o=ra(pa(_=f>>>0>1073741823?-1:f<<2),0,_),!((0|i)<=0)){for(s=A[r+32>>2];(0|(_=A[(i=t<<2)+o>>2]))>(0|(R=A[r+16>>2]))?A[i+s>>2]=R:(i=i+s|0,R=A[r+12>>2],A[i>>2]=(0|R)>(0|_)?R:_),(0|(i=A[r+8>>2]))>(0|(t=t+1|0)););if(!((0|i)<=0))for(t=0;;){i=(_=t<<2)+a|0,_=A[e+_>>2]+A[s+_>>2]|0,A[i>>2]=_;r:{if((0|_)>A[r+16>>2])d=_-A[r+20>>2]|0;else{if((0|_)>=A[r+12>>2])break r;d=_+A[r+20>>2]|0}A[i>>2]=d}if(!((0|(i=A[r+8>>2]))>(0|(t=t+1|0))))break}}if(t=A[r+56>>2],k=A[t>>2],(0|(t=A[t+4>>2]-k|0))>=5)for(T=(D=t>>>2|0)>>>0<=2?2:D,N=-2&f,V=1&f,_=1;;){r:{e:{if((0|_)!=(0|D)){if(U=m(f,_),-1==(0|(t=A[(_<<2)+k>>2])))break e;if(-1==(0|(t=A[A[n+12>>2]+(t<<2)>>2])))break e;R=A[u>>2],s=A[n>>2],h=A[R+(A[s+(t<<2)>>2]<<2)>>2],d=-1!=(0|(d=((d=t+1|0)>>>0)%3|0?d:t-2|0))?A[s+(d<<2)>>2]:-1;a:{if((t>>>0)%3|0)t=t-1|0;else if(j=-1,-1==(0|(t=t+2|0)))break a;j=A[s+(t<<2)>>2]}if((0|_)<=(0|h))break e;if((0|(t=A[(d<<2)+R>>2]))>=(0|_))break e;if((0|(s=A[R+(j<<2)>>2]))>=(0|_))break e;if(!((0|f)<=0)){if(s=m(f,s),R=m(f,t),h=m(f,h),t=0,j=0,1!=(0|f))for(;A[(t<<2)+o>>2]=(A[(t+s<<2)+a>>2]+A[(t+R<<2)+a>>2]|0)-A[(t+h<<2)+a>>2],A[((d=1|t)<<2)+o>>2]=(A[(s+d<<2)+a>>2]+A[(R+d<<2)+a>>2]|0)-A[(d+h<<2)+a>>2],t=t+2|0,(0|N)!=(0|(j=j+2|0)););V&&(A[(t<<2)+o>>2]=(A[(t+s<<2)+a>>2]+A[(t+R<<2)+a>>2]|0)-A[(t+h<<2)+a>>2])}if((0|i)<=0)break r;for(R=A[b>>2],t=0;(0|(s=A[(i=t<<2)+o>>2]))>(0|(h=A[r+16>>2]))?A[i+R>>2]=h:(i=i+R|0,h=A[r+12>>2],A[i>>2]=(0|h)>(0|s)?h:s),(0|(i=A[r+8>>2]))>(0|(t=t+1|0)););if(t=0,(0|i)<=0)break r;for(h=(i=U<<2)+a|0,d=e+i|0;;){i=(s=t<<2)+h|0,s=A[s+d>>2]+A[s+R>>2]|0,A[i>>2]=s;a:{if((0|s)>A[r+16>>2])j=s-A[r+20>>2]|0;else{if((0|s)>=A[r+12>>2])break a;j=s+A[r+20>>2]|0}A[i>>2]=j}if(!((0|(i=A[r+8>>2]))>(0|(t=t+1|0))))break}break r}Ca(),v()}if(!((0|i)<=0)){for(h=(m(_-1|0,f)<<2)+a|0,R=A[b>>2],t=0;(0|(s=A[(i=t<<2)+h>>2]))>(0|(d=A[r+16>>2]))?A[i+R>>2]=d:(i=i+R|0,d=A[r+12>>2],A[i>>2]=(0|d)>(0|s)?d:s),(0|(i=A[r+8>>2]))>(0|(t=t+1|0)););if(t=0,!((0|i)<=0))for(h=(i=U<<2)+a|0,d=e+i|0;;){i=(s=t<<2)+h|0,s=A[s+d>>2]+A[s+R>>2]|0,A[i>>2]=s;e:{if((0|s)>A[r+16>>2])j=s-A[r+20>>2]|0;else{if((0|s)>=A[r+12>>2])break e;j=s+A[r+20>>2]|0}A[i>>2]=j}if(!((0|(i=A[r+8>>2]))>(0|(t=t+1|0))))break}}}if((0|T)==(0|(_=_+1|0)))break}return oa(o),1},fb,Ub,Tb,Pb,function sj(r,e,a,i,f,t){e|=0,a|=0,i|=0,f|=0,t|=0;var o,b,n,k,u,s=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0,E=0,Q=0,Y=0;if(A[(r|=0)+8>>2]=f,t=A[(n=r+32|0)>>2],(R=A[r+36>>2]-t>>2)>>>0<f>>>0?(ya(n,f-R|0),i=A[r+8>>2]):(i=f,f>>>0>=R>>>0||(A[r+36>>2]=t+(f<<2),i=f)),k=f<<2,o=ra(pa(t=f>>>0>1073741823?-1:k),0,t),b=ra(pa(t),0,t),!((0|i)<=0)){for(d=A[r+32>>2];(0|(R=A[(t=_<<2)+o>>2]))>(0|(i=A[r+16>>2]))?A[t+d>>2]=i:(t=t+d|0,i=A[r+12>>2],A[t>>2]=(0|i)>(0|R)?i:R),(0|(i=A[r+8>>2]))>(0|(_=_+1|0)););if(!((0|i)<=0))for(t=0;;){i=(R=t<<2)+a|0,R=A[e+R>>2]+A[R+d>>2]|0,A[i>>2]=R;r:{if((0|R)>A[r+16>>2])R=R-A[r+20>>2]|0;else{if((0|R)>=A[r+12>>2])break r;R=R+A[r+20>>2]|0}A[i>>2]=R}if(!((0|(i=A[r+8>>2]))>(0|(t=t+1|0))))break}}if(t=A[r+56>>2],u=A[t>>2],(0|(t=A[t+4>>2]-u|0))>=5)for(E=A[r+52>>2],W=A[r+48>>2],Q=(V=t>>>2|0)>>>0<=2?2:V,G=-2&f,Z=1&f,Y=-4&f,F=3&f,B=f-1|0,D=1;;){r:{e:{a:{i:if((0|D)==(0|V))Ca(),v();else{if(R=A[(D<<2)+u>>2],(N=(0|f)<=0)||ra(o,0,k),-1==(0|R)){s=m(f,D);break e}for(I=A[W+12>>2],T=0,t=R;;){if(-1!=(0|(_=A[(t<<2)+I>>2]))){U=A[E>>2],j=A[W>>2],h=A[U+(A[j+(_<<2)>>2]<<2)>>2],s=-1!=(0|(d=((d=_+1|0)>>>0)%3|0?d:_-2|0))?A[j+(d<<2)>>2]:-1;f:{if((_>>>0)%3|0)_=_-1|0;else if(d=-1,-1==(0|(_=_+2|0)))break f;d=A[j+(_<<2)>>2]}if(!((0|h)>=(0|D)||(0|(s=A[(s<<2)+U>>2]))>=(0|D)||(0|(d=A[U+(d<<2)>>2]))>=(0|D))){if(!N){if(j=m(f,d),U=m(f,s),h=m(f,h),_=0,d=0,B)for(;A[(_<<2)+b>>2]=(A[(_+j<<2)+a>>2]+A[(_+U<<2)+a>>2]|0)-A[(_+h<<2)+a>>2],A[((s=1|_)<<2)+b>>2]=(A[(s+j<<2)+a>>2]+A[(s+U<<2)+a>>2]|0)-A[(s+h<<2)+a>>2],_=_+2|0,(0|G)!=(0|(d=d+2|0)););if(Z&&(A[(_<<2)+b>>2]=(A[(_+j<<2)+a>>2]+A[(_+U<<2)+a>>2]|0)-A[(_+h<<2)+a>>2]),!N){if(U=0,_=0,h=0,f>>>0>3)for(;A[(d=(j=_<<2)+o|0)>>2]=A[j+b>>2]+A[d>>2],A[(d=(s=4|j)+o|0)>>2]=A[s+b>>2]+A[d>>2],A[(d=(s=8|j)+o|0)>>2]=A[s+b>>2]+A[d>>2],A[(d=(s=12|j)+o|0)>>2]=A[s+b>>2]+A[d>>2],_=_+4|0,(0|Y)!=(0|(h=h+4|0)););if(F)for(;A[(d=(s=_<<2)+o|0)>>2]=A[s+b>>2]+A[d>>2],_=_+1|0,(0|F)!=(0|(U=U+1|0)););}}T=T+1|0}}f:{if((t>>>0)%3|0)_=t-1|0;else if(s=-1,-1==(0|(_=t+2|0)))break f;s=-1,-1!=(0|(t=A[(_<<2)+I>>2]))&&(s=t-1|0,(t>>>0)%3|0||(s=t+2|0))}if(!((0|R)!=(0|(t=s))&-1!=(0|t)))break}if(s=m(f,D),!T)break e;if(N)break a;if(_=0,t=0,!B)break i;for(;A[(R=(d=_<<2)+o|0)>>2]=A[R>>2]/(0|T),A[(R=(4|d)+o|0)>>2]=A[R>>2]/(0|T),_=_+2|0,(0|G)!=(0|(t=t+2|0)););}Z&&(A[(t=(_<<2)+o|0)>>2]=A[t>>2]/(0|T))}if((0|i)<=0)break r;for(h=A[n>>2],_=0;(0|(R=A[(t=_<<2)+o>>2]))>(0|(i=A[r+16>>2]))?A[t+h>>2]=i:(t=t+h|0,i=A[r+12>>2],A[t>>2]=(0|i)>(0|R)?i:R),(0|(i=A[r+8>>2]))>(0|(_=_+1|0)););if(t=0,(0|i)<=0)break r;for(d=(i=s<<2)+a|0,R=e+i|0;;){i=(s=t<<2)+d|0,s=A[s+R>>2]+A[s+h>>2]|0,A[i>>2]=s;a:{if((0|s)>A[r+16>>2])s=s-A[r+20>>2]|0;else{if((0|s)>=A[r+12>>2])break a;s=s+A[r+20>>2]|0}A[i>>2]=s}if(!((0|(i=A[r+8>>2]))>(0|(t=t+1|0))))break}break r}if(!((0|i)<=0)){for(t=(m(D-1|0,f)<<2)+a|0,h=A[n>>2],_=0;(0|(d=A[(R=_<<2)+t>>2]))>(0|(i=A[r+16>>2]))?A[R+h>>2]=i:(R=R+h|0,i=A[r+12>>2],A[R>>2]=(0|i)>(0|d)?i:d),(0|(i=A[r+8>>2]))>(0|(_=_+1|0)););if(t=0,!((0|i)<=0))for(d=(i=s<<2)+a|0,R=e+i|0;;){i=(s=t<<2)+d|0,s=A[s+R>>2]+A[s+h>>2]|0,A[i>>2]=s;e:{if((0|s)>A[r+16>>2])s=s-A[r+20>>2]|0;else{if((0|s)>=A[r+12>>2])break e;s=s+A[r+20>>2]|0}A[i>>2]=s}if(!((0|(i=A[r+8>>2]))>(0|(t=t+1|0))))break}}}if((0|Q)==(0|(D=D+1|0)))break}return oa(b),oa(o),1},function rj(r){var e=0;return A[(r|=0)>>2]=5580,(e=A[r+96>>2])&&oa(e),(e=A[r+84>>2])&&oa(e),(e=A[r+72>>2])&&oa(e),(e=A[r+60>>2])&&oa(e),A[r>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),0|r},function qj(r){var e=0;A[(r|=0)>>2]=5580,(e=A[r+96>>2])&&oa(e),(e=A[r+84>>2])&&oa(e),(e=A[r+72>>2])&&oa(e),(e=A[r+60>>2])&&oa(e),A[r>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),oa(r)},$e,Pb,function pj(r,e){r|=0;var a,i=0,f=0,t=0,o=0,n=0,_=0,d=0,m=0,R=0,h=0;Q=a=Q-32|0;r:{if(u[(e|=0)+38>>1]<=513){if((0|(i=A[e+20>>2]))>=(0|(o=A[e+12>>2]))&(f=A[e+16>>2])>>>0>=s[e+8>>2]|(0|i)>(0|o))break r;if(o=k[f+A[e>>2]|0],i=(f=f+1|0)?i:i+1|0,A[e+16>>2]=f,A[e+20>>2]=i,o)break r}e:if(Xa(1,a+28|0,e)&&(f=A[a+28>>2],i=A[r+48>>2],!(f>>>0>A[i+4>>2]-A[i>>2]>>2>>>0)))a:{if(f){if(Wa(r+60|0,f),A[(i=a+8|0)>>2]=0,A[i+4>>2]=0,b[i+5|0]=0,b[i+6|0]=0,b[i+7|0]=0,b[i+8|0]=0,b[i+9|0]=0,b[i+10|0]=0,b[i+11|0]=0,b[i+12|0]=0,!ta(i,e))break a;for(;o=1<<t,d=Ba(i),n=A[r+60>>2]+(t>>>3&536870908)|0,_=d?o|A[n>>2]:A[n>>2]&~o,A[n>>2]=_,(0|f)!=(0|(t=t+1|0)););}if(!Xa(1,a+28|0,e))break e;if(f=A[a+28>>2],i=A[r+48>>2],f>>>0>A[i+4>>2]-A[i>>2]>>2>>>0)break e;if(f){if(t=0,Wa(r+72|0,f),A[(i=a+8|0)>>2]=0,A[i+4>>2]=0,b[i+5|0]=0,b[i+6|0]=0,b[i+7|0]=0,b[i+8|0]=0,b[i+9|0]=0,b[i+10|0]=0,b[i+11|0]=0,b[i+12|0]=0,!ta(i,e))break a;for(;o=1<<t,d=Ba(i),n=A[r+72>>2]+(t>>>3&536870908)|0,_=d?o|A[n>>2]:A[n>>2]&~o,A[n>>2]=_,(0|f)!=(0|(t=t+1|0)););}if(!Xa(1,a+28|0,e))break e;if(f=A[a+28>>2],i=A[r+48>>2],f>>>0>A[i+4>>2]-A[i>>2]>>2>>>0)break e;if(f){if(t=0,Wa(r+84|0,f),A[(i=a+8|0)>>2]=0,A[i+4>>2]=0,b[i+5|0]=0,b[i+6|0]=0,b[i+7|0]=0,b[i+8|0]=0,b[i+9|0]=0,b[i+10|0]=0,b[i+11|0]=0,b[i+12|0]=0,!ta(i,e))break a;for(;o=1<<t,d=Ba(i),n=A[r+84>>2]+(t>>>3&536870908)|0,_=d?o|A[n>>2]:A[n>>2]&~o,A[n>>2]=_,(0|f)!=(0|(t=t+1|0)););}if(!Xa(1,a+28|0,e))break e;if(f=A[a+28>>2],i=A[r+48>>2],f>>>0>A[i+4>>2]-A[i>>2]>>2>>>0)break e;if(f){if(t=0,Wa(r+96|0,f),A[(i=a+8|0)>>2]=0,A[i+4>>2]=0,b[i+5|0]=0,b[i+6|0]=0,b[i+7|0]=0,b[i+8|0]=0,b[i+9|0]=0,b[i+10|0]=0,b[i+11|0]=0,b[i+12|0]=0,!ta(i,e))break a;for(;o=1<<t,d=Ba(i),n=A[r+96>>2]+(t>>>3&536870908)|0,_=d?o|A[n>>2]:A[n>>2]&~o,A[n>>2]=_,(0|f)!=(0|(t=t+1|0)););}if(t=0,i=A[e+8>>2],o=A[e+12>>2],f=i,_=i=A[e+20>>2],f>>>0<(d=(n=A[e+16>>2])+4|0)>>>0&(0|(i=d>>>0<4?i+1|0:i))>=(0|o)|(0|i)>(0|o))break r;if(h=A[e>>2],R=k[0|(m=h+n|0)]|k[m+1|0]<<8|k[m+2|0]<<16|k[m+3|0]<<24,A[e+16>>2]=d,A[e+20>>2]=i,m=f,f=o,i=_,(o=n+8|0)>>>0>m>>>0&(0|(i=o>>>0<8?i+1|0:i))>=(0|f)|(0|i)>(0|f))break r;if(f=k[0|(f=d+h|0)]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[e+16>>2]=o,A[e+20>>2]=i,(0|f)<(0|R))break r;if(A[r+16>>2]=f,A[r+12>>2]=R,!(i=(f>>31)-((R>>31)+(f>>>0<R>>>0)|0)|0)&(e=f-R|0)>>>0>2147483646|i)break r;if(t=1,e=e+1|0,A[r+20>>2]=e,i=e>>>1|0,A[r+24>>2]=i,A[r+28>>2]=0-i,1&e)break r;A[r+24>>2]=i-1;break r}t=0}return Q=a+32|0,0|t},function oj(r,e,a,i,f,t){e|=0,a|=0,i|=0,f|=0,t|=0;var o,b,n,k,u,s=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0,E=0,Y=0,M=0,J=0,g=0,O=0,z=0,X=0,C=0;Q=o=Q+-64|0,A[(r|=0)+8>>2]=f,t=A[(b=r+32|0)>>2];r:{if((i=A[r+36>>2]-t>>2)>>>0<f>>>0)ya(b,f-i|0),A[o+56>>2]=0,A[o+60>>2]=0,A[o+48>>2]=0,A[o+52>>2]=0,A[o+40>>2]=0,A[o+44>>2]=0,A[o+32>>2]=0,A[o+36>>2]=0,A[o+24>>2]=0,A[o+28>>2]=0,A[o+16>>2]=0,A[o+20>>2]=0,A[o>>2]=0;else if(i>>>0>f>>>0&&(A[r+36>>2]=t+(f<<2)),A[o+56>>2]=0,A[o+60>>2]=0,A[o+48>>2]=0,A[o+52>>2]=0,A[o+40>>2]=0,A[o+44>>2]=0,A[o+32>>2]=0,A[o+36>>2]=0,A[o+24>>2]=0,A[o+28>>2]=0,A[o+16>>2]=0,A[o+20>>2]=0,A[o>>2]=0,i=0,!f)break r;Pa(o+16|0,f,o),_=A[o+28>>2],i=A[o+32>>2]}A[o>>2]=0;r:if((i=i-_>>2)>>>0>=f>>>0){if(i>>>0<=f>>>0)break r;A[o+32>>2]=(f<<2)+_}else Pa(o+16|12,f-i|0,o);A[o>>2]=0,t=A[o+40>>2];r:if((i=A[o+44>>2]-t>>2)>>>0>=f>>>0){if(i>>>0<=f>>>0)break r;A[o+44>>2]=t+(f<<2)}else Pa(o+40|0,f-i|0,o);A[o>>2]=0,t=A[o+52>>2];r:if((i=A[o+56>>2]-t>>2)>>>0>=f>>>0){if(i>>>0<=f>>>0)break r;A[o+56>>2]=t+(f<<2)}else Pa(o+52|0,f-i|0,o);if(!(A[r+8>>2]<=0)){for(s=A[o+16>>2],d=A[r+32>>2],_=0;(0|(t=A[(i=_<<2)+s>>2]))>(0|(j=A[r+16>>2]))?A[i+d>>2]=j:(i=i+d|0,j=A[r+12>>2],A[i>>2]=(0|j)>(0|t)?j:t),(0|(_=_+1|0))<(0|(i=A[r+8>>2])););if(!((0|i)<=0))for(i=0;;){t=(s=i<<2)+a|0,s=A[e+s>>2]+A[s+d>>2]|0,A[t>>2]=s;r:{if((0|s)>A[r+16>>2])s=s-A[r+20>>2]|0;else{if((0|s)>=A[r+12>>2])break r;s=s+A[r+20>>2]|0}A[t>>2]=s}if(!((0|(i=i+1|0))<A[r+8>>2]))break}}u=A[r+52>>2],k=A[r+48>>2],n=pa(16),A[(i=n)>>2]=0,A[i+4>>2]=0,A[i+8>>2]=0,A[i+12>>2]=0,A[o+8>>2]=0,A[o>>2]=0,A[o+4>>2]=0;r:{if(f){if(f>>>0>=1073741824)break r;G=pa(i=f<<2),A[o>>2]=G,A[o+8>>2]=i+G,ra(G,0,i)}B=1,i=A[r+56>>2],I=A[i>>2];e:if(!((0|(i=A[i+4>>2]-I|0))<8))for(g=(0|(F=i>>2))<=2?2:F,O=F>>>0<=1?1:F,E=-2&f,Y=1&f,z=-4&f,M=3&f,J=f-1|0,X=f<<2,C=f>>>0<4,B=0,j=1;;){a:{i:{f:{t:{if((0|j)!=(0|O)){o:{b:if(-1!=(0|(t=A[(j<<2)+I>>2]))){i=t+2|0,N=(D=A[k+12>>2])+(((s=(t>>>0)%3|0)?t-1:i)<<2)|0,d=0,Z=!!(0|s)|-1!=(0|i),R=1,i=t;n:{for(;;){if(-1!=(0|(s=A[D+(i<<2)>>2]))){h=-1,T=A[u>>2],V=A[k>>2],_=T+(A[V+(s<<2)>>2]<<2)|0,-1!=(0|(U=((U=s+1|0)>>>0)%3|0?U:s-2|0))&&(h=A[V+(U<<2)>>2]),U=A[_>>2];A:{if((s>>>0)%3|0)_=s-1|0;else if(W=-1,-1==(0|(_=s+2|0)))break A;W=A[V+(_<<2)>>2]}if(!((0|j)<=(0|U)||(0|(_=A[T+(h<<2)>>2]))>=(0|j)||(0|(h=A[T+(W<<2)>>2]))>=(0|j))){if(s=A[(o+16|0)+m(d,12)>>2],f){if(h=m(f,h),V=m(f,_),T=m(f,U),_=0,W=0,J)for(;A[s+(_<<2)>>2]=(A[(_+h<<2)+a>>2]+A[(_+V<<2)+a>>2]|0)-A[(_+T<<2)+a>>2],A[s+((U=1|_)<<2)>>2]=(A[(h+U<<2)+a>>2]+A[(U+V<<2)+a>>2]|0)-A[(U+T<<2)+a>>2],_=_+2|0,(0|E)!=(0|(W=W+2|0)););Y&&(A[s+(_<<2)>>2]=(A[(_+h<<2)+a>>2]+A[(_+V<<2)+a>>2]|0)-A[(_+T<<2)+a>>2])}if(s=4,4==(0|(d=d+1|0)))break n}}A:if(1&R){if(s=-1,-1==(0|(i=((_=i+1|0)>>>0)%3|0?_:i-2|0)))break A;if(s=-1,-1==(0|(i=A[D+(i<<2)>>2])))break A;s=((s=i+1|0)>>>0)%3|0?s:i-2|0}else{if((i>>>0)%3|0)_=i-1|0;else if(s=-1,-1==(0|(_=i+2|0)))break A;s=-1,-1!=(0|(i=A[D+(_<<2)>>2]))&&(s=i-1|0,(i>>>0)%3|0||(s=i+2|0))}A:if((0|t)!=(0|(i=s))){if(-1==(0|i)&R){if(!Z)break A;if(-1==(0|(i=A[N>>2])))break A;R=0,i=(i>>>0)%3|0?i-1|0:i+2|0}if(-1!=(0|i))continue}break}if((0|(s=d))<=0)break b}for(f&&ra(G,0,X),V=((i=s-1|0)<<2)+n|0,U=i=m(i,12)+r|0,W=A[i- -64>>2],R=0,i=A[o>>2],t=0;;){if(d=A[V>>2],A[V>>2]=d+1,d>>>0>=W>>>0)break e;if(!(A[A[U+60>>2]+(d>>>3&536870908)>>2]>>>d&1)&&(t=t+1|0,f)){if(d=A[(o+16|0)+m(R,12)>>2],h=0,_=0,T=0,!C)for(;A[(N=(D=_<<2)+i|0)>>2]=A[d+D>>2]+A[N>>2],A[(Z=(N=4|D)+i|0)>>2]=A[d+N>>2]+A[Z>>2],A[(Z=(N=8|D)+i|0)>>2]=A[d+N>>2]+A[Z>>2],A[(N=(D|=12)+i|0)>>2]=A[d+D>>2]+A[N>>2],_=_+4|0,(0|z)!=(0|(T=T+4|0)););if(M)for(;A[(T=(D=_<<2)+i|0)>>2]=A[d+D>>2]+A[T>>2],_=_+1|0,(0|M)!=(0|(h=h+1|0)););}if((0|(R=R+1|0))==(0|s))break}if(s=m(f,j),!t)break o;if(!f)break i;if(_=0,i=0,J)break t;break f}s=m(f,j)}if(A[r+8>>2]<=0)break a;for(R=(m(j-1|0,f)<<2)+a|0,d=A[b>>2],_=0;(0|(t=A[(i=_<<2)+R>>2]))>(0|(h=A[r+16>>2]))?A[i+d>>2]=h:(i=i+d|0,h=A[r+12>>2],A[i>>2]=(0|h)>(0|t)?h:t),(0|(_=_+1|0))<(0|(t=A[r+8>>2])););if(i=0,(0|t)<=0)break a;for(_=(t=s<<2)+a|0,R=e+t|0;;){t=(s=i<<2)+_|0,s=A[s+R>>2]+A[s+d>>2]|0,A[t>>2]=s;o:{if((0|s)>A[r+16>>2])s=s-A[r+20>>2]|0;else{if((0|s)>=A[r+12>>2])break o;s=s+A[r+20>>2]|0}A[t>>2]=s}if(!((0|(i=i+1|0))<A[r+8>>2]))break}break a}Ca(),v()}for(;A[(R=(d=_<<2)+G|0)>>2]=A[R>>2]/(0|t),A[(d=(4|d)+G|0)>>2]=A[d>>2]/(0|t),_=_+2|0,(0|E)!=(0|(i=i+2|0)););}Y&&(A[(i=(_<<2)+G|0)>>2]=A[i>>2]/(0|t))}if(!(A[r+8>>2]<=0)){for(d=A[b>>2],_=0;(0|(t=A[(i=_<<2)+G>>2]))>(0|(R=A[r+16>>2]))?A[i+d>>2]=R:(i=i+d|0,R=A[r+12>>2],A[i>>2]=(0|R)>(0|t)?R:t),(0|(_=_+1|0))<(0|(t=A[r+8>>2])););if(i=0,!((0|t)<=0))for(_=(t=s<<2)+a|0,R=e+t|0;;){t=(s=i<<2)+_|0,s=A[s+R>>2]+A[s+d>>2]|0,A[t>>2]=s;i:{if((0|s)>A[r+16>>2])s=s-A[r+20>>2]|0;else{if((0|s)>=A[r+12>>2])break i;s=s+A[r+20>>2]|0}A[t>>2]=s}if(!((0|(i=i+1|0))<A[r+8>>2]))break}}}if(B=(0|F)<=(0|(j=j+1|0)),(0|j)==(0|g))break}return(r=A[o>>2])&&oa(r),oa(n),(r=A[o+52>>2])&&(A[o+56>>2]=r,oa(r)),(r=A[o+40>>2])&&(A[o+44>>2]=r,oa(r)),(r=A[o+28>>2])&&(A[o+32>>2]=r,oa(r)),(r=A[o+16>>2])&&(A[o+20>>2]=r,oa(r)),Q=o- -64|0,0|B}sa(),v()},function nj(r){var e=0;return A[(r|=0)>>2]=5816,(e=A[r+76>>2])&&oa(e),e=A[r+68>>2],A[r+68>>2]=0,e&&oa(e),A[r>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),0|r},function mj(r){var e=0;A[(r|=0)>>2]=5816,(e=A[r+76>>2])&&oa(e),e=A[r+68>>2],A[r+68>>2]=0,e&&oa(e),A[r>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),oa(r)},ld,wc,Da,Ja,vc,function lj(r,e){r|=0,e|=0;var a,i=0,f=0,t=0,o=0,n=0,_=0,d=0,m=0,R=0,h=0;Q=a=Q-32|0,A[a+28>>2]=0;r:{if(u[e+38>>1]<=513){if(i=A[e+20>>2],i=(t=(f=A[e+16>>2])+4|0)>>>0<4?i+1|0:i,_=A[e+12>>2],s[e+8>>2]<t>>>0&(0|_)<=(0|i)|(0|i)>(0|_))break r;f=f+A[e>>2]|0,o=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[e+16>>2]=t,A[e+20>>2]=i}else{if(!Xa(1,a+28|0,e))break r;o=A[a+28>>2]}if(o&&(i=A[r+48>>2],!(A[i+4>>2]-A[i>>2]>>2>>>0<o>>>0)&&(Wa(r+76|0,o),A[(i=a+8|0)>>2]=0,A[i+4>>2]=0,b[i+5|0]=0,b[i+6|0]=0,b[i+7|0]=0,b[i+8|0]=0,b[i+9|0]=0,b[i+10|0]=0,b[i+11|0]=0,b[i+12|0]=0,ta(i,e)))){for(_=1;f=1<<d,t=Ba(i),n=A[r+76>>2]+(d>>>3&536870908)|0,1&(t^=_)?f=A[n>>2]&~f:f|=A[n>>2],_=1^t,A[n>>2]=f,(0|o)!=(0|(d=d+1|0)););i=A[e+8>>2],n=t=A[e+12>>2],_=t=A[e+20>>2],d=f=(o=A[e+16>>2])+4|0,f>>>0>i>>>0&(0|(t=f>>>0<4?t+1|0:t))>=(0|n)|(0|t)>(0|n)||(R=A[e>>2],m=k[0|(f=R+o|0)]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[e+16>>2]=d,A[e+20>>2]=t,f=i,i=_,f>>>0<(t=o+8|0)>>>0&(0|(i=t>>>0<8?i+1|0:i))>=(0|n)|(0|i)>(0|n)||(f=k[0|(f=d+R|0)]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[e+16>>2]=t,A[e+20>>2]=i,(0|f)<(0|m)||(A[r+16>>2]=f,A[r+12>>2]=m,!(i=(f>>31)-((m>>31)+(f>>>0<m>>>0)|0)|0)&(e=f-m|0)>>>0>2147483646|i||(h=1,i=e+1|0,A[r+20>>2]=i,e=i>>>1|0,A[r+24>>2]=e,A[r+28>>2]=0-e,1&i||(A[r+24>>2]=e-1)))))}}return Q=a+32|0,0|h},function kj(r,e,a,i,f,t){r|=0,e|=0,a|=0,i|=0,f|=0,t|=0;var o=0,n=0,u=R(0),s=0,d=0,j=R(0),D=R(0),U=R(0),N=R(0),W=0,G=R(0),Z=R(0),F=R(0),B=R(0),I=R(0),E=0,Y=R(0),M=R(0),J=0,g=R(0),O=0;r:{if(2==(0|f)&&(A[r+64>>2]=t,A[r+72>>2]=2,f=pa(8),i=A[r+68>>2],A[r+68>>2]=f,i&&oa(i),A[r+8>>2]=2,f=A[(E=r+32|0)>>2],(i=A[r+36>>2]-f|0)>>>0<=7?ya(E,2-(i>>>2|0)|0):8!=(0|i)&&(A[r+36>>2]=f+8),n=1,i=A[r+56>>2],!((0|(i=A[i+4>>2]-A[i>>2]|0))<=0)))for(O=(i=i>>>2|0)>>>0<=1?1:i,i=0;;){if(t=A[r+56>>2],f=A[t>>2],A[t+4>>2]-f>>2>>>0<=i>>>0)break r;if(G=R(0),Q=o=Q-48|0,n=-1,-1==(0|(f=A[f+(i<<2)>>2]))||(s=A[r+48>>2],-1!=(0|(t=((t=f+1|0)>>>0)%3|0?t:f-2|0))&&(n=A[A[s>>2]+(t<<2)>>2]),t=-1,-1!=(0|(f=f+((f>>>0)%3|0?-1:2)|0))&&(t=A[A[s>>2]+(f<<2)>>2]),f=A[r+52>>2],s=A[f>>2],(f=A[f+4>>2]-s>>2)>>>0<=n>>>0|f>>>0<=t>>>0))Ca(),v();else{e:if((0|i)<=(0|(f=A[s+(n<<2)>>2]))|(0|(s=A[s+(t<<2)>>2]))>=(0|i)){if((0|i)>(0|f))t=A[r+72>>2],f=m(f,t);else{if((0|i)<=0){if(n=1,A[r+72>>2]<=0)break e;for(f=A[r+68>>2],t=0;A[f+(t<<2)>>2]=0,(0|(t=t+1|0))<A[r+72>>2];);break e}t=A[r+72>>2],f=m(t,i-1|0)}if(n=1,!((0|t)<=0))for(s=A[r+68>>2],t=0;A[s+(t<<2)>>2]=A[(f+t<<2)+a>>2],(0|(t=t+1|0))<A[r+72>>2];);}else{if(t=A[r+72>>2],n=(m(t,s)<<2)+a|0,j=R(A[n+4>>2]),t=(m(f,t)<<2)+a|0,N=R(A[t+4>>2]),!((Y=R(A[t>>2]))!=(D=R(A[n>>2]))|j!=N)){n=+j>2147483647,f=A[r+68>>2],t=R(h(j))<R(2147483648)?~~j:-2147483648,A[f+4>>2]=j<R(-2147483648)||n?-2147483648:t,n=+D>2147483647,t=R(h(D))<R(2147483648)?~~D:-2147483648,A[f>>2]=D<R(-2147483648)||n?-2147483648:t,n=1;break e}t=A[A[r+64>>2]+(i<<2)>>2],A[o+40>>2]=0,A[o+32>>2]=0,A[o+36>>2]=0,n=A[r+60>>2],k[n+84|0]||(t=A[A[n+68>>2]+(t<<2)>>2]),Va(n,t,b[n+24|0],o+32|0),t=A[A[r+64>>2]+(f<<2)>>2],A[o+24>>2]=0,A[o+16>>2]=0,A[o+20>>2]=0,f=A[r+60>>2],k[f+84|0]||(t=A[A[f+68>>2]+(t<<2)>>2]),Va(f,t,b[f+24|0],o+16|0),n=A[A[r+64>>2]+(s<<2)>>2],A[o+8>>2]=0,A[o>>2]=0,A[o+4>>2]=0,f=A[r+60>>2],k[f+84|0]||(n=A[A[f+68>>2]+(n<<2)>>2]),Va(f,n,b[f+24|0],o),U=_[o+24>>2],Z=R(_[o+8>>2]-U),F=_[o+20>>2],B=R(_[o+4>>2]-F),g=_[o+16>>2],I=R(_[o>>2]-g),M=R(R(Z*Z)+R(R(B*B)+R(R(I*I)+R(0)))),A[r+88>>2]>=258&&(u=R(0),!(M>R(0)))||(u=R(_[o+40>>2]-U),U=R(_[o+36>>2]-F),F=R(_[o+32>>2]-g),G=R(R(R(Z*u)+R(R(B*U)+R(R(I*F)+R(0))))/M),u=R(u-R(Z*G)),Z=R(u*u),u=R(U-R(B*G)),U=R(u*u),u=R(F-R(I*G)),u=R(V(R(R(Z+R(U+R(R(u*u)+R(0))))/M)))),(f=A[r+80>>2])&&(t=f-1|0,n=A[A[r+76>>2]+(t>>>3&536870908)>>2],A[r+80>>2]=t,j=R(j-N),U=R(R(j*G)+N),D=R(D-Y),N=R(D*u),N=R(U+((t=n>>>t&1)?N:R(-N))),u=R(u*j),(d=T(+R(R(R(D*G)+Y)+(t?R(-u):u))+.5))<-2147483648|d!=d|d>2147483647?(n=A[r+68>>2],A[n>>2]=-2147483648):(n=A[r+68>>2],t=h(d)<2147483648?~~d:-2147483648,A[n>>2]=t),s=(d=T(+N+.5))>2147483647,t=h(d)<2147483648?~~d:-2147483648,A[n+4>>2]=d<-2147483648||d!=d||s?-2147483648:t),n=!!(0|f)}Q=o+48|0}if(!n)return 0;if(!(A[r+8>>2]<=0)){for(J=A[r+68>>2],s=A[E>>2],f=0;(0|(o=A[(t=f<<2)+J>>2]))>(0|(W=A[r+16>>2]))?A[t+s>>2]=W:(t=t+s|0,W=A[r+12>>2],A[t>>2]=(0|W)>(0|o)?W:o),(0|(f=f+1|0))<(0|(o=A[r+8>>2])););if(t=0,!((0|o)<=0))for(J=(f=i<<3)+a|0,W=e+f|0;;){f=(o=t<<2)+J|0,o=A[o+W>>2]+A[o+s>>2]|0,A[f>>2]=o;e:{if((0|o)>A[r+16>>2])o=o-A[r+20>>2]|0;else{if((0|o)>=A[r+12>>2])break e;o=o+A[r+20>>2]|0}A[f>>2]=o}if(!((0|(t=t+1|0))<A[r+8>>2]))break}}if((0|O)==(0|(i=i+1|0)))break}return 0|n}Ca(),v()},function jj(r){var e=0;return A[(r|=0)>>2]=6032,(e=A[r+76>>2])&&oa(e),A[r>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),0|r},function ij(r){var e=0;A[(r|=0)>>2]=6032,(e=A[r+76>>2])&&oa(e),A[r>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),oa(r)},Ze,wc,Da,Ja,vc,Ye,function hj(r,e,a,i,f,t){r|=0,e|=0,a|=0,i|=0,t|=0;var o=0,n=0,u=0,s=0,_=0,d=0,m=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0,E=0,M=0,J=0,g=0,O=0,z=0,X=0,C=0,P=0,S=0,H=0,q=0,x=0,L=0,K=0,$=0,rr=0,er=0,ar=0,ir=0,fr=0,tr=0;r:{if(2==(0|(f|=0))&&(A[r+8>>2]=2,A[r- -64>>2]=t,f=A[(C=r+32|0)>>2],(i=A[r+36>>2]-f|0)>>>0<=7?ya(C,2-(i>>>2|0)|0):8!=(0|i)&&(A[r+36>>2]=f+8),u=1,i=A[r+56>>2],!((0|(i=A[i+4>>2]-A[i>>2]|0))<=0)))for(h=r+60|0,ar=(i=i>>>2|0)>>>0<=1?1:i,ir=r+68|0,i=0;;){if(t=A[r+56>>2],f=A[t>>2],A[t+4>>2]-f>>2>>>0<=i>>>0)break r;if(Q=_=Q-80|0,t=-1,-1==(0|(f=A[f+(i<<2)>>2]))||(u=A[h+32>>2],-1!=(0|(o=((o=f+1|0)>>>0)%3|0?o:f-2|0))&&(t=A[A[u>>2]+(o<<2)>>2]),j=-1,-1!=(0|(f=f+((f>>>0)%3|0?-1:2)|0))&&(j=A[A[u>>2]+(f<<2)>>2]),u=A[h+36>>2],f=A[u>>2],(u=A[u+4>>2]-f>>2)>>>0<=t>>>0|u>>>0<=j>>>0))Ca(),v();else{e:{a:{i:{f:{t:{if(!((0|(s=A[f+(j<<2)>>2]))>=(0|i)|(0|(t=A[f+(t<<2)>>2]))>=(0|i))){if(W=A[(u=(s<<3)+a|0)+4>>2],f=A[(o=(t<<3)+a|0)+4>>2],!((0|(d=A[u>>2]))!=(0|(u=A[o>>2]))|(0|f)!=(0|W))){A[h+8>>2]=u,A[h+12>>2]=f;break t}if(j=A[A[h+4>>2]+(i<<2)>>2],A[_+72>>2]=0,A[_+76>>2]=0,A[(o=_- -64|0)>>2]=0,A[o+4>>2]=0,A[_+56>>2]=0,A[_+60>>2]=0,o=A[h>>2],k[o+84|0]||(j=A[A[o+68>>2]+(j<<2)>>2]),Sa(o,j,b[o+24|0],_+56|0),j=A[A[h+4>>2]+(t<<2)>>2],A[_+48>>2]=0,A[_+52>>2]=0,A[_+40>>2]=0,A[_+44>>2]=0,A[_+32>>2]=0,A[_+36>>2]=0,o=A[h>>2],k[o+84|0]||(j=A[A[o+68>>2]+(j<<2)>>2]),Sa(o,j,b[o+24|0],_+32|0),j=A[A[h+4>>2]+(s<<2)>>2],A[_+24>>2]=0,A[_+28>>2]=0,A[_+16>>2]=0,A[_+20>>2]=0,A[_+8>>2]=0,A[_+12>>2]=0,o=A[h>>2],k[o+84|0]||(j=A[A[o+68>>2]+(j<<2)>>2]),Sa(o,j,b[o+24|0],_+8|0),G=(o=A[_+16>>2])-(R=A[_+40>>2])|0,P=A[_+44>>2],J=o=A[_+20>>2]-(P+(o>>>0<R>>>0)|0)|0,s=Rj(G,o,G,o),D=Y,B=(o=A[_+8>>2])-(F=A[_+32>>2])|0,S=A[_+36>>2],g=o=A[_+12>>2]-(S+(o>>>0<F>>>0)|0)|0,o=(n=s)+(s=Rj(B,o,B,o))|0,n=Y+D|0,n=o>>>0<s>>>0?n+1|0:n,E=(s=A[_+24>>2])-(I=A[_+48>>2])|0,H=A[_+52>>2],O=s=A[_+28>>2]-(H+(s>>>0<I>>>0)|0)|0,m=o,o=Rj(E,s,E,s),n=Y+n|0,(T=o>>>0>(U=m+o|0)>>>0?n+1|0:n)|U){if(j=0,M=Tj(-1,2147483647,U,T),x=t=u>>31,q=u,u=(D=u^(o=n=t>>31))-o|0,o=t=(t^o)-((o>>>0>D>>>0)+o|0)|0,L=t=f>>31,m=(D=(z=f)^(f=t>>31))-f|0,(0|(s=Y))==(0|(f=(t=(0|o)==(0|(f=((n=t>>31)^t)-((f>>>0>D>>>0)+n|0)|0))&u>>>0>m>>>0|f>>>0<o>>>0)?o:f))&(u=t?u:m)>>>0>M>>>0|f>>>0>s>>>0)break e;if(f=Rj((u=A[_+64>>2])-R|0,(K=A[_+68>>2])-((u>>>0<R>>>0)+P|0)|0,G,J),t=Y,s=Rj((o=A[_+56>>2])-F|0,($=A[_+60>>2])-((o>>>0<F>>>0)+S|0)|0,B,g),n=Y+t|0,n=(f=s+f|0)>>>0<s>>>0?n+1|0:n,s=(t=f)+(f=Rj((m=A[_+72>>2])-I|0,(rr=A[_+76>>2])-((m>>>0<I>>>0)+H|0)|0,E,O))|0,t=Y+n|0,D=f>>>0>s>>>0?t+1|0:t,M=(f=d)-q|0,er=f=(f>>31)-((f>>>0<q>>>0)+x|0)|0,t=(Z=(d=f>>31)^M)-d|0,n=f=((n=f>>31)^f)-((d>>>0>Z>>>0)+n|0)|0,Z=W-z|0,W=f=(W>>31)-((W>>>0<z>>>0)+L|0)|0,d=t,(t=Tj(-1,2147483647,(t=(0|n)==(0|(f=((t=f>>31)^f)-(((N=f>>31)>>>0>(V=N^Z)>>>0)+t|0)|0))&d>>>0>(X=V-N|0)>>>0|f>>>0<n>>>0)?d:X,t?n:f)>>>0<s>>>0)&(0|(f=Y))<=(0|D)|(0|f)<(0|D))break e;if(t=f=g>>31,f=(d=f^B)-f|0,X=f=(n=(0|(t=(t^g)-((t>>>0>d>>>0)+t|0)|0))==(0|(d=((n=J>>31)^J)-((n>>>0>(N=n^G)>>>0)+n|0)|0))&f>>>0>(V=N-n|0)>>>0|t>>>0>d>>>0)?f:V,(t=Tj(-1,2147483647,(f=(0|(t=n?t:d))==(0|(d=((n=O>>31)^O)-((n>>>0>(N=n^E)>>>0)+n|0)|0))&f>>>0>(V=N-n|0)>>>0|t>>>0>d>>>0)?X:V,f?t:d)>>>0<s>>>0)&(0|(f=Y))<=(0|D)|(0|f)<(0|D))break e;if(d=1,f=0,t=R,R=Sj(Rj(s,D,G,J),Y,U,T),n=Y+P|0,n=(t=t+R|0)>>>0<R>>>0?n+1|0:n,R=Rj(R=u-t|0,t=K-((t>>>0>u>>>0)+n|0)|0,R,t),G=Y,t=o,n=Sj(Rj(s,D,B,g),Y,U,T),o=Y+S|0,o=n>>>0>(u=n+F|0)>>>0?o+1|0:o,o=Rj(n=t-u|0,t=$-((t>>>0<u>>>0)+o|0)|0,n,t),t=Y+G|0,t=o>>>0>(u=o+R|0)>>>0?t+1|0:t,R=u,o=Sj(Rj(s,D,E,O),Y,U,T),n=Y+H|0,n=o>>>0>(u=o+I|0)>>>0?n+1|0:n,m=Rj(o=m-u|0,u=rr-((u>>>0>m>>>0)+n|0)|0,o,u),o=Y+t|0,t=Rj(u=m+R|0,u>>>0<m>>>0?o+1|0:o,U,T),m=u=Y,!u&t>>>0<=1)break f;for(n=t;o=f<<1|d>>>31,d<<=1,f=o,R=!u&n>>>0>7|!!(0|u),n=(3&u)<<30|n>>>2,u=u>>>2|0,R;);break i}}if((0|i)>(0|t))f=t<<1;else{if((0|i)<=0){A[h+8>>2]=0,A[h+12>>2]=0;break t}f=(i<<1)-2|0}f=(f<<2)+a|0,A[h+8>>2]=A[f>>2],A[h+12>>2]=A[f+4>>2]}j=1;break e}if(f=m,d=t,t-1|0)break a}for(;u=Tj(t,m,d,f),n=f+Y|0,u=Rj(d=(1&(n=(f=u+d|0)>>>0<d>>>0?n+1|0:n))<<31|f>>>1,f=n>>>1|0,d,f),(0|m)==(0|(o=Y))&t>>>0<u>>>0|o>>>0>m>>>0;);}(t=A[h+20>>2])&&(o=t-1|0,n=A[A[h+16>>2]+(o>>>3&536870908)>>2],A[h+20>>2]=o,j=1,t=Rj(s,D,Z,W),u=Y,m=(R=Rj(U,T,z,L))+t|0,t=Y+u|0,t=m>>>0<R>>>0?t+1|0:t,u=Rj(d,f,M,er),n=(o=n>>>o&1)?0-u|0:u,R=t,t=Y,u=R+(o?0-(t+!!(0|u)|0)|0:t)|0,fr=h,tr=Sj(m=n+m|0,n>>>0>m>>>0?u+1|0:u,U,T),A[fr+12>>2]=tr,t=Rj(s,D,M,er),u=Y,t=(s=Rj(U,T,q,x))+t|0,n=Y+u|0,u=0-(f=Rj(d,f,Z,W))|0,d=Y,n=(t>>>0<s>>>0?n+1|0:n)+(o?d:0-(!!(0|f)+d|0)|0)|0,fr=h,tr=Sj(t=(u=o?f:u)+t|0,t>>>0<u>>>0?n+1|0:n,U,T),A[fr+8>>2]=tr)}Q=_+80|0,f=j}if(u=f,!f)return 0;if(!(A[r+8>>2]<=0)){for(d=A[C>>2],f=0;(0|(o=A[(t=f<<2)+ir>>2]))>(0|(s=A[r+16>>2]))?A[t+d>>2]=s:(t=t+d|0,s=A[r+12>>2],A[t>>2]=(0|s)>(0|o)?s:o),(0|(f=f+1|0))<(0|(o=A[r+8>>2])););if(t=0,!((0|o)<=0))for(s=(f=i<<3)+a|0,D=e+f|0;;){f=(o=t<<2)+s|0,o=A[o+D>>2]+A[o+d>>2]|0,A[f>>2]=o;e:{if((0|o)>A[r+16>>2])o=o-A[r+20>>2]|0;else{if((0|o)>=A[r+12>>2])break e;o=o+A[r+20>>2]|0}A[f>>2]=o}if(!((0|(t=t+1|0))<A[r+8>>2]))break}}if((0|ar)==(0|(i=i+1|0)))break}return 0|u}Ca(),v()},function fj(r){var e;return A[(r|=0)>>2]=6256,A[r>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),0|r},function ej(r){var e;A[(r|=0)>>2]=6256,A[r>>2]=3272,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),oa(r)},Ob,Xe,Da,Ja,We,Ve,function dj(r,e,a,i,f,t){e|=0,a|=0,i|=0,f|=0,t|=0;var o,b=0,n=0,k=0,u=0,s=0,_=0,d=0,m=0;Q=o=Q-32|0,A[(r|=0)+68>>2]=t,i=A[r+56>>2],f=A[i>>2],i=A[i+4>>2],A[o+24>>2]=0,A[o+16>>2]=0,A[o+20>>2]=0;r:{if((0|(i=i-f|0))>0)for(_=r+60|0,d=(i=i>>>2|0)>>>0<=1?1:i,m=r+112|0;;){if(f=A[r+56>>2],i=A[f>>2],A[f+4>>2]-i>>2>>>0<=k>>>0)break r;if(Lb(_,A[i+(k<<2)>>2],o+16|0),t=((i=(n=A[o+20>>2])>>31)^n)-i+(((f=(b=A[o+16>>2])>>31)^b)-f)|0,f=((i=(u=A[o+24>>2])>>31)^u)-i|0,i=0,(i=(s=f)>>>0>(f=f+t|0)>>>0?1:i)|f?(b=Sj(Rj(t=A[r+108>>2],s=t>>31,b,b>>31),Y,f,i),A[o+16>>2]=b,i=Sj(Rj(t,s,n,n>>31),Y,f,i),A[o+20>>2]=i,i=(f=((f=i)^(i>>=31))-i|0)+(((i=b>>31)^b)-i|0)|0,A[o+24>>2]=(0|u)>=0?t-i:i-t):A[o+16>>2]=A[r+108>>2],i=Ba(m),t=A[o+16>>2],i?(A[o+24>>2]=0-A[o+24>>2],f=0-A[o+20>>2]|0,A[o+20>>2]=f,t=0-t|0,A[o+16>>2]=t):f=A[o+20>>2],(0|t)>=0?(i=(t=A[r+108>>2])+A[o+24>>2]|0,t=f+t|0):((0|f)<0?t=((i=A[o+24>>2])^(t=i>>31))-t|0:(t=(i=A[o+24>>2])>>31,t=A[r+100>>2]+(t-(i^t)|0)|0),(0|i)<0?i=((i=f>>31)^f)-i|0:(i=f>>31,i=A[r+100>>2]+(i-(i^f)|0)|0)),f=A[r+100>>2],i|t?(0|i)!=(0|f)|t?(0|f)!=(0|t)|i?t||(0|(n=A[r+108>>2]))>=(0|i)?(0|f)!=(0|t)||(0|(n=A[r+108>>2]))<=(0|i)?(0|i)!=(0|f)||(0|(f=A[r+108>>2]))<=(0|t)?i||(i=0,(0|(f=A[r+108>>2]))>=(0|t)||(t=(f<<1)-t|0)):t=(f<<1)-t|0:i=(n<<1)-i|0:(i=(n<<1)-i|0,t=0):i=t:t=i:t=i=f,A[o+12>>2]=i,A[o+8>>2]=t,!(A[r+8>>2]<=0)){for(n=A[r+32>>2],t=0;(0|(f=A[(i=t<<2)+(o+8|0)>>2]))>(0|(b=A[r+16>>2]))?A[i+n>>2]=b:(i=i+n|0,b=A[r+12>>2],A[i>>2]=(0|b)>(0|f)?b:f),(0|(t=t+1|0))<(0|(f=A[r+8>>2])););if(i=0,!((0|f)<=0))for(b=(f=k<<3)+a|0,u=e+f|0;;){f=(t=i<<2)+b|0,t=A[t+u>>2]+A[t+n>>2]|0,A[f>>2]=t;e:{if((0|t)>A[r+16>>2])t=t-A[r+20>>2]|0;else{if((0|t)>=A[r+12>>2])break e;t=t+A[r+20>>2]|0}A[f>>2]=t}if(!((0|(i=i+1|0))<A[r+8>>2]))break}}if((0|d)==(0|(k=k+1|0)))break}return Q=o+32|0,1}Ca(),v()},Ta,La,Mb,eb,Lb,fb,Ub,_a,Da,function cj(r,e,a,i,f,t){e|=0,a|=0,i|=0,f|=0,t|=0;var o,b,n=0,k=0,u=0,s=0,_=0,d=0,m=0,R=0,h=0;if(A[(r|=0)+8>>2]=f,k=A[(o=r+32|0)>>2],(n=A[r+36>>2]-k>>2)>>>0<f>>>0?(ya(o,f-n|0),t=A[r+8>>2]):(t=f)>>>0>=n>>>0||(A[r+36>>2]=k+(f<<2),t=f),b=ra(pa(n=f>>>0>1073741823?-1:f<<2),0,n),!((0|t)<=0)){for(k=A[r+32>>2];(0|(n=A[(t=u<<2)+b>>2]))>(0|(s=A[r+16>>2]))?A[t+k>>2]=s:(t=t+k|0,s=A[r+12>>2],A[t>>2]=(0|s)>(0|n)?s:n),(0|(t=A[r+8>>2]))>(0|(u=u+1|0)););if(!((0|t)<=0))for(u=0;;){t=(n=u<<2)+a|0,n=A[e+n>>2]+A[n+k>>2]|0,A[t>>2]=n;r:{if((0|n)>A[r+16>>2])n=n-A[r+20>>2]|0;else{if((0|n)>=A[r+12>>2])break r;n=n+A[r+20>>2]|0}A[t>>2]=n}if(!((0|(t=A[r+8>>2]))>(0|(u=u+1|0))))break}}if(!((0|i)<=(0|f)|(0|t)<=0))for(R=0-f<<2,n=f;;){if(!((0|t)<=0)){for(h=(m=(d=n<<2)+a|0)+R|0,s=A[o>>2],u=0;(0|(k=A[(t=u<<2)+h>>2]))>(0|(_=A[r+16>>2]))?A[t+s>>2]=_:(t=t+s|0,_=A[r+12>>2],A[t>>2]=(0|_)>(0|k)?_:k),(0|(t=A[r+8>>2]))>(0|(u=u+1|0)););if(u=0,!((0|t)<=0))for(d=e+d|0;;){t=(k=u<<2)+m|0,k=A[k+d>>2]+A[k+s>>2]|0,A[t>>2]=k;r:{if((0|k)>A[r+16>>2])k=k-A[r+20>>2]|0;else{if((0|k)>=A[r+12>>2])break r;k=k+A[r+20>>2]|0}A[t>>2]=k}if(!((0|(t=A[r+8>>2]))>(0|(u=u+1|0))))break}}if(!((0|(n=f+n|0))<(0|i)))break}return oa(b),1},cf,bf,function bj(r,e,a){e|=0,a|=0;var i=0;return A[(r|=0)+4>>2]=e,e=A[A[A[e+4>>2]+8>>2]+(a<<2)>>2],A[r+12>>2]=a,A[r+8>>2]=e,r=A[r+8>>2],3==k[r+24|0]&&(i=9==A[r+28>>2]),0|i},function $i(r,e,a){return e|=0,a|=0,k[A[(r|=0)+4>>2]+36|0]>=2&&(e=0,!xc(r+24|0,rb(r),a))||(e=Xc(r+24|0,A[r+16>>2])),0|e},function aj(r,e,a){e|=0,a|=0;var i=0;return k[A[(r|=0)+4>>2]+36|0]<=1&&(i=0,!xc(r+24|0,A[r+8>>2],a))||(i=nd(r,e,a)),0|i},function Zi(r,e,a){r|=0,e|=0;var i,f=0,t=0,o=0,n=0,k=0;Q=i=Q-32|0;r:{e:switch((a|=0)-2|0){case 0:if(a=A[r+4>>2],t=A[r+12>>2],A[i+24>>2]=-1,A[i+16>>2]=-1,A[i+20>>2]=1065353216,A[i+8>>2]=-1,A[i+12>>2]=-1,-2==(0|e))break r;if(k=A[A[A[a+4>>2]+8>>2]+(t<<2)>>2],1==(0|M[A[A[a>>2]+8>>2]](a))){n=A[A[A[a+4>>2]+8>>2]+(t<<2)>>2];a:if(!(1!=(0|M[A[A[a>>2]+8>>2]](a))|e-1>>>0>5||!(o=0|M[A[A[a>>2]+36>>2]](a))|!(r=0|M[A[A[a>>2]+44>>2]](a,t)))){if(t=0|M[A[A[a>>2]+40>>2]](a,t)){if(6!=(0|e))break a;e=A[a+44>>2],f=pa(112),A[f+4>>2]=n,a=A[i+12>>2],A[f+8>>2]=A[i+8>>2],A[f+12>>2]=a,a=A[i+20>>2],A[f+16>>2]=A[i+16>>2],A[f+20>>2]=a,A[f+24>>2]=A[i+24>>2],A[f+40>>2]=r,a=r+12|0,A[f+36>>2]=a,A[f+32>>2]=t,A[f+28>>2]=e,A[f+68>>2]=r,A[f- -64>>2]=a,A[f+60>>2]=t,A[f+56>>2]=e,A[f+48>>2]=0,A[f+52>>2]=0,A[f>>2]=7144,A[f+88>>2]=1065353216,A[f+92>>2]=-1,A[f+80>>2]=-1,A[f+84>>2]=-1,A[f+72>>2]=1,A[f+76>>2]=-1,A[f+44>>2]=7668,r=f+96|0}else{if(6!=(0|e))break a;e=A[a+44>>2],f=pa(112),A[f+4>>2]=n,a=A[i+12>>2],A[f+8>>2]=A[i+8>>2],A[f+12>>2]=a,a=A[i+20>>2],A[f+16>>2]=A[i+16>>2],A[f+20>>2]=a,A[f+24>>2]=A[i+24>>2],A[f+40>>2]=r,a=r+12|0,A[f+36>>2]=a,A[f+32>>2]=o,A[f+28>>2]=e,A[f+68>>2]=r,A[f- -64>>2]=a,A[f+60>>2]=o,A[f+56>>2]=e,A[f+48>>2]=0,A[f+52>>2]=0,A[f>>2]=8080,A[f+88>>2]=1065353216,A[f+92>>2]=-1,A[f+80>>2]=-1,A[f+84>>2]=-1,A[f+72>>2]=1,A[f+76>>2]=-1,A[f+44>>2]=8472,r=f+96|0}A[r>>2]=0,A[r+4>>2]=0,b[r+5|0]=0,b[r+6|0]=0,b[r+7|0]=0,b[r+8|0]=0,b[r+9|0]=0,b[r+10|0]=0,b[r+11|0]=0,b[r+12|0]=0}if(f)break r}f=pa(28),A[f+4>>2]=k,r=A[i+12>>2],A[f+8>>2]=A[i+8>>2],A[f+12>>2]=r,r=A[i+20>>2],A[f+16>>2]=A[i+16>>2],A[f+20>>2]=r,A[f+24>>2]=A[i+24>>2],A[f>>2]=8860;break r;case 1:break e;default:break r}if(a=A[r+4>>2],t=A[r+12>>2],A[i+24>>2]=-1,A[i+16>>2]=-1,A[i+20>>2]=1065353216,A[i+8>>2]=-1,A[i+12>>2]=-1,-2!=(0|e)){if(k=A[A[A[a+4>>2]+8>>2]+(t<<2)>>2],1==(0|M[A[A[a>>2]+8>>2]](a))){n=A[A[A[a+4>>2]+8>>2]+(t<<2)>>2];e:if(!(1!=(0|M[A[A[a>>2]+8>>2]](a))|e-1>>>0>5||!(o=0|M[A[A[a>>2]+36>>2]](a))|!(r=0|M[A[A[a>>2]+44>>2]](a,t)))){if(t=0|M[A[A[a>>2]+40>>2]](a,t)){if(6!=(0|e))break e;e=A[a+44>>2],f=pa(112),A[f+4>>2]=n,a=A[i+12>>2],A[f+8>>2]=A[i+8>>2],A[f+12>>2]=a,a=A[i+20>>2],A[f+16>>2]=A[i+16>>2],A[f+20>>2]=a,A[f+24>>2]=A[i+24>>2],A[f+40>>2]=r,a=r+12|0,A[f+36>>2]=a,A[f+32>>2]=t,A[f+28>>2]=e,A[f+68>>2]=r,A[f- -64>>2]=a,A[f+60>>2]=t,A[f+56>>2]=e,A[f+48>>2]=0,A[f+52>>2]=0,A[f>>2]=9028,A[f+88>>2]=1065353216,A[f+92>>2]=-1,A[f+80>>2]=-1,A[f+84>>2]=-1,A[f+72>>2]=1,A[f+76>>2]=-1,A[f+44>>2]=9592,r=f+96|0}else{if(6!=(0|e))break e;e=A[a+44>>2],f=pa(112),A[f+4>>2]=n,a=A[i+12>>2],A[f+8>>2]=A[i+8>>2],A[f+12>>2]=a,a=A[i+20>>2],A[f+16>>2]=A[i+16>>2],A[f+20>>2]=a,A[f+24>>2]=A[i+24>>2],A[f+40>>2]=r,a=r+12|0,A[f+36>>2]=a,A[f+32>>2]=o,A[f+28>>2]=e,A[f+68>>2]=r,A[f- -64>>2]=a,A[f+60>>2]=o,A[f+56>>2]=e,A[f+48>>2]=0,A[f+52>>2]=0,A[f>>2]=10032,A[f+88>>2]=1065353216,A[f+92>>2]=-1,A[f+80>>2]=-1,A[f+84>>2]=-1,A[f+72>>2]=1,A[f+76>>2]=-1,A[f+44>>2]=10452,r=f+96|0}A[r>>2]=0,A[r+4>>2]=0,b[r+5|0]=0,b[r+6|0]=0,b[r+7|0]=0,b[r+8|0]=0,b[r+9|0]=0,b[r+10|0]=0,b[r+11|0]=0,b[r+12|0]=0}if(f)break r}f=pa(28),A[f+4>>2]=k,r=A[i+12>>2],A[f+8>>2]=A[i+8>>2],A[f+12>>2]=r,r=A[i+20>>2],A[f+16>>2]=A[i+16>>2],A[f+20>>2]=r,A[f+24>>2]=A[i+24>>2],A[f>>2]=10864}}return Q=i+32|0,0|f},Tb,function _i(r,e){return 0|Fd((r|=0)+24|0,rb(r),A[r+8>>2])},function Yi(r){return A[(r|=0)>>2]=7144,0|r},function Xi(r){A[(r|=0)>>2]=7144,oa(r)},Ob,db,tc,Da,Ja,sc,Da,Tb,Te,function Wi(r,e,a,i,f,t){e|=0,a|=0,i|=0,f|=0,t|=0;var o,b=0,n=0,k=0,u=0,s=0,d=0,m=0,h=0,j=0;Q=o=Q-48|0,(i=A[(r|=0)+8>>2])-2>>>0<=28&&(A[r+76>>2]=i,i=-2-(f=-1<<i)|0,A[r+84>>2]=i,A[r+80>>2]=~f,A[r+92>>2]=(0|i)/2,_[r+88>>2]=R(2)/R(0|i)),A[r+52>>2]=t,i=A[r+40>>2],f=A[i>>2],i=A[i+4>>2],A[o+16>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0;r:{if((0|(i=i-f|0))>0)for(d=r+8|0,m=r+44|0,h=(i=i>>>2|0)>>>0<=1?1:i,j=r+96|0;;){if(f=A[r+40>>2],i=A[f>>2],A[f+4>>2]-i>>2>>>0<=k>>>0)break r;if(Nb(m,A[i+(k<<2)>>2],o+8|0),t=((i=(b=A[o+12>>2])>>31)^b)-i+(((f=(n=A[o+8>>2])>>31)^n)-f)|0,f=((i=(s=A[o+16>>2])>>31)^s)-i|0,i=0,(i=(u=f)>>>0>(f=f+t|0)>>>0?1:i)|f?(n=Sj(Rj(t=A[r+92>>2],u=t>>31,n,n>>31),Y,f,i),A[o+8>>2]=n,i=Sj(Rj(t,u,b,b>>31),Y,f,i),A[o+12>>2]=i,i=(f=(i^(f=i>>31))-f|0)+(((i=n>>31)^n)-i|0)|0,A[o+16>>2]=(0|s)>=0?t-i:i-t):A[o+8>>2]=A[r+92>>2],i=Ba(j),t=A[o+8>>2],i?(A[o+16>>2]=0-A[o+16>>2],f=0-A[o+12>>2]|0,A[o+12>>2]=f,t=0-t|0,A[o+8>>2]=t):f=A[o+12>>2],(0|t)>=0?(i=(t=A[r+92>>2])+A[o+16>>2]|0,t=f+t|0):((0|f)<0?t=((i=A[o+16>>2])^(t=i>>31))-t|0:(t=(i=A[o+16>>2])>>31,t=A[r+84>>2]+(t-(i^t)|0)|0),(0|i)<0?i=((i=f>>31)^f)-i|0:(i=f>>31,i=A[r+84>>2]+(i-(i^f)|0)|0)),f=A[r+84>>2],i|t?(0|i)!=(0|f)|t?(0|f)!=(0|t)|i?t||(0|(b=A[r+92>>2]))>=(0|i)?(0|f)!=(0|t)||(0|(b=A[r+92>>2]))<=(0|i)?(0|i)!=(0|f)||(0|(f=A[r+92>>2]))<=(0|t)?i||(i=0,(0|(f=A[r+92>>2]))>=(0|t)||(t=(f<<1)-t|0)):t=(f<<1)-t|0:i=(b<<1)-i|0:(i=(b<<1)-i|0,t=0):i=t:t=i:t=i=f,n=A[(b=(f=k<<3)+e|0)+4>>2],A[o+40>>2]=A[b>>2],A[o+44>>2]=n,A[o+28>>2]=i,A[o+24>>2]=t,rc(o+32|0,d,o+24|0,o+40|0),A[(i=a+f|0)>>2]=A[o+32>>2],A[i+4>>2]=A[o+36>>2],(0|h)==(0|(k=k+1|0)))break}return Q=o+48|0,1}Ca(),v()},Ta,La,Mb,eb,Nb,function Ui(r){return A[(r|=0)>>2]=8080,0|r},function Si(r){A[(r|=0)>>2]=8080,oa(r)},Ob,tc,Da,Ja,sc,Te,function Ri(r,e,a,i,f,t){e|=0,a|=0,i|=0,f|=0,t|=0;var o,b=0,n=0,k=0,u=0,s=0,d=0,m=0,h=0,j=0;Q=o=Q-48|0,(i=A[(r|=0)+8>>2])-2>>>0<=28&&(A[r+76>>2]=i,i=-2-(f=-1<<i)|0,A[r+84>>2]=i,A[r+80>>2]=~f,A[r+92>>2]=(0|i)/2,_[r+88>>2]=R(2)/R(0|i)),A[r+52>>2]=t,i=A[r+40>>2],f=A[i>>2],i=A[i+4>>2],A[o+16>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0;r:{if((0|(i=i-f|0))>0)for(d=r+8|0,m=r+44|0,h=(i=i>>>2|0)>>>0<=1?1:i,j=r+96|0;;){if(f=A[r+40>>2],i=A[f>>2],A[f+4>>2]-i>>2>>>0<=k>>>0)break r;if(Lb(m,A[i+(k<<2)>>2],o+8|0),t=((i=(b=A[o+12>>2])>>31)^b)-i+(((f=(n=A[o+8>>2])>>31)^n)-f)|0,f=((i=(s=A[o+16>>2])>>31)^s)-i|0,i=0,(i=(u=f)>>>0>(f=f+t|0)>>>0?1:i)|f?(n=Sj(Rj(t=A[r+92>>2],u=t>>31,n,n>>31),Y,f,i),A[o+8>>2]=n,i=Sj(Rj(t,u,b,b>>31),Y,f,i),A[o+12>>2]=i,i=(f=(i^(f=i>>31))-f|0)+(((i=n>>31)^n)-i|0)|0,A[o+16>>2]=(0|s)>=0?t-i:i-t):A[o+8>>2]=A[r+92>>2],i=Ba(j),t=A[o+8>>2],i?(A[o+16>>2]=0-A[o+16>>2],f=0-A[o+12>>2]|0,A[o+12>>2]=f,t=0-t|0,A[o+8>>2]=t):f=A[o+12>>2],(0|t)>=0?(i=(t=A[r+92>>2])+A[o+16>>2]|0,t=f+t|0):((0|f)<0?t=((i=A[o+16>>2])^(t=i>>31))-t|0:(t=(i=A[o+16>>2])>>31,t=A[r+84>>2]+(t-(i^t)|0)|0),(0|i)<0?i=((i=f>>31)^f)-i|0:(i=f>>31,i=A[r+84>>2]+(i-(i^f)|0)|0)),f=A[r+84>>2],i|t?(0|i)!=(0|f)|t?(0|f)!=(0|t)|i?t||(0|(b=A[r+92>>2]))>=(0|i)?(0|f)!=(0|t)||(0|(b=A[r+92>>2]))<=(0|i)?(0|i)!=(0|f)||(0|(f=A[r+92>>2]))<=(0|t)?i||(i=0,(0|(f=A[r+92>>2]))>=(0|t)||(t=(f<<1)-t|0)):t=(f<<1)-t|0:i=(b<<1)-i|0:(i=(b<<1)-i|0,t=0):i=t:t=i:t=i=f,n=A[(b=(f=k<<3)+e|0)+4>>2],A[o+40>>2]=A[b>>2],A[o+44>>2]=n,A[o+28>>2]=i,A[o+24>>2]=t,rc(o+32|0,d,o+24|0,o+40|0),A[(i=a+f|0)>>2]=A[o+32>>2],A[i+4>>2]=A[o+36>>2],(0|h)==(0|(k=k+1|0)))break}return Q=o+48|0,1}Ca(),v()},Ta,La,Mb,eb,Lb,Ta,La,_a,Da,_a,md,Ja,function Vi(r,e){r|=0;var a,i,f,t=0,o=0,b=0,n=0,s=0;t=A[(e|=0)+8>>2],a=o=A[e+12>>2],f=o=A[e+20>>2];r:if(!(t>>>0<(n=(i=A[e+16>>2])+4|0)>>>0&(0|(o=n>>>0<4?o+1|0:o))>=(0|a)|(0|o)>(0|a))){if(b=i+A[e>>2]|0,b=k[0|b]|k[b+1|0]<<8|k[b+2|0]<<16|k[b+3|0]<<24,A[e+16>>2]=n,A[e+20>>2]=o,u[e+38>>1]<=513){if(n=t,t=f,(o=i+8|0)>>>0>n>>>0&(0|(t=o>>>0<8?t+1|0:t))>=(0|a)|(0|t)>(0|a))break r;A[e+16>>2]=o,A[e+20>>2]=t}1&b&&((e=31^j(b))-1>>>0>28||(s=1,A[r+8>>2]=e+1,t=-2^(e=-2<<e),A[r+16>>2]=t,A[r+12>>2]=~e,A[r+24>>2]=t>>1,_[r+20>>2]=R(2)/R(0|t)))}return 0|s},function Qi(r,e,a,i,f,t){r|=0,e|=0,a|=0,i|=0,t|=0;var o,b=0,n=0,k=0,u=0,s=0,_=0,d=0;if(Q=t=Q-32|0,o=ra(pa(b=(f|=0)>>>0>1073741823?-1:f<<2),0,b),k=A[(b=o)>>2],b=A[b+4>>2],s=A[e+4>>2],A[t+24>>2]=A[e>>2],A[t+28>>2]=s,A[t+8>>2]=k,A[t+12>>2]=b,rc(t+16|0,k=r+8|0,t+8|0,t+24|0),A[a>>2]=A[t+16>>2],A[a+4>>2]=A[t+20>>2],(0|i)>(0|f))for(s=0-f<<2,r=f;_=A[(u=(b=(n=r<<2)+a|0)+s|0)>>2],u=A[u+4>>2],d=A[(n=e+n|0)+4>>2],A[t+24>>2]=A[n>>2],A[t+28>>2]=d,A[t+8>>2]=_,A[t+12>>2]=u,rc(t+16|0,k,t+8|0,t+24|0),A[b>>2]=A[t+16>>2],A[b+4>>2]=A[t+20>>2],(0|i)>(0|(r=r+f|0)););return oa(o),Q=t+32|0,1},function Pi(r){return A[(r|=0)>>2]=9028,0|r},function Oi(r){A[(r|=0)>>2]=9028,oa(r)},Ob,db,tc,Da,Ja,sc,Da,ld,Se,function Ni(r,e,a,i,f,t){e|=0,a|=0,i|=0,f|=0,t|=0;var o,b=0,n=0,k=0,u=0,s=0,d=0,m=0,h=0,j=0;Q=o=Q-48|0,(i=A[(r|=0)+8>>2])-2>>>0<=28&&(A[r+76>>2]=i,i=-2-(f=-1<<i)|0,A[r+84>>2]=i,A[r+80>>2]=~f,A[r+92>>2]=(0|i)/2,_[r+88>>2]=R(2)/R(0|i)),A[r+52>>2]=t,i=A[r+40>>2],f=A[i>>2],i=A[i+4>>2],A[o+16>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0;r:{if((0|(i=i-f|0))>0)for(d=r+8|0,m=r+44|0,h=(i=i>>>2|0)>>>0<=1?1:i,j=r+96|0;;){if(f=A[r+40>>2],i=A[f>>2],A[f+4>>2]-i>>2>>>0<=k>>>0)break r;if(Nb(m,A[i+(k<<2)>>2],o+8|0),t=((i=(b=A[o+12>>2])>>31)^b)-i+(((f=(n=A[o+8>>2])>>31)^n)-f)|0,f=((i=(s=A[o+16>>2])>>31)^s)-i|0,i=0,(i=(u=f)>>>0>(f=f+t|0)>>>0?1:i)|f?(n=Sj(Rj(t=A[r+92>>2],u=t>>31,n,n>>31),Y,f,i),A[o+8>>2]=n,i=Sj(Rj(t,u,b,b>>31),Y,f,i),A[o+12>>2]=i,i=(f=(i^(f=i>>31))-f|0)+(((i=n>>31)^n)-i|0)|0,A[o+16>>2]=(0|s)>=0?t-i:i-t):A[o+8>>2]=A[r+92>>2],i=Ba(j),t=A[o+8>>2],i?(A[o+16>>2]=0-A[o+16>>2],f=0-A[o+12>>2]|0,A[o+12>>2]=f,t=0-t|0,A[o+8>>2]=t):f=A[o+12>>2],(0|t)>=0?(i=(t=A[r+92>>2])+A[o+16>>2]|0,t=f+t|0):((0|f)<0?t=((i=A[o+16>>2])^(t=i>>31))-t|0:(t=(i=A[o+16>>2])>>31,t=A[r+84>>2]+(t-(i^t)|0)|0),(0|i)<0?i=((i=f>>31)^f)-i|0:(i=f>>31,i=A[r+84>>2]+(i-(i^f)|0)|0)),f=A[r+84>>2],i|t?(0|i)!=(0|f)|t?(0|f)!=(0|t)|i?t||(0|(b=A[r+92>>2]))>=(0|i)?(0|f)!=(0|t)||(0|(b=A[r+92>>2]))<=(0|i)?(0|i)!=(0|f)||(0|(f=A[r+92>>2]))<=(0|t)?i||(i=0,(0|(f=A[r+92>>2]))>=(0|t)||(t=(f<<1)-t|0)):t=(f<<1)-t|0:i=(b<<1)-i|0:(i=(b<<1)-i|0,t=0):i=t:t=i:t=i=f,n=A[(b=(f=k<<3)+e|0)>>2],b=A[b+4>>2],A[o+36>>2]=i,A[o+32>>2]=t,A[o+24>>2]=n,A[o+28>>2]=b,qc(o+40|0,d,o+32|0,o+24|0),A[(i=a+f|0)>>2]=A[o+40>>2],A[i+4>>2]=A[o+44>>2],(0|h)==(0|(k=k+1|0)))break}return Q=o+48|0,1}Ca(),v()},Ta,La,Mb,eb,Nb,function Li(r){return A[(r|=0)>>2]=10032,0|r},function Ji(r){A[(r|=0)>>2]=10032,oa(r)},Ob,tc,Da,Ja,sc,Se,function Ii(r,e,a,i,f,t){e|=0,a|=0,i|=0,f|=0,t|=0;var o,b=0,n=0,k=0,u=0,s=0,d=0,m=0,h=0,j=0;Q=o=Q-48|0,(i=A[(r|=0)+8>>2])-2>>>0<=28&&(A[r+76>>2]=i,i=-2-(f=-1<<i)|0,A[r+84>>2]=i,A[r+80>>2]=~f,A[r+92>>2]=(0|i)/2,_[r+88>>2]=R(2)/R(0|i)),A[r+52>>2]=t,i=A[r+40>>2],f=A[i>>2],i=A[i+4>>2],A[o+16>>2]=0,A[o+8>>2]=0,A[o+12>>2]=0;r:{if((0|(i=i-f|0))>0)for(d=r+8|0,m=r+44|0,h=(i=i>>>2|0)>>>0<=1?1:i,j=r+96|0;;){if(f=A[r+40>>2],i=A[f>>2],A[f+4>>2]-i>>2>>>0<=k>>>0)break r;if(Lb(m,A[i+(k<<2)>>2],o+8|0),t=((i=(b=A[o+12>>2])>>31)^b)-i+(((f=(n=A[o+8>>2])>>31)^n)-f)|0,f=((i=(s=A[o+16>>2])>>31)^s)-i|0,i=0,(i=(u=f)>>>0>(f=f+t|0)>>>0?1:i)|f?(n=Sj(Rj(t=A[r+92>>2],u=t>>31,n,n>>31),Y,f,i),A[o+8>>2]=n,i=Sj(Rj(t,u,b,b>>31),Y,f,i),A[o+12>>2]=i,i=(f=(i^(f=i>>31))-f|0)+(((i=n>>31)^n)-i|0)|0,A[o+16>>2]=(0|s)>=0?t-i:i-t):A[o+8>>2]=A[r+92>>2],i=Ba(j),t=A[o+8>>2],i?(A[o+16>>2]=0-A[o+16>>2],f=0-A[o+12>>2]|0,A[o+12>>2]=f,t=0-t|0,A[o+8>>2]=t):f=A[o+12>>2],(0|t)>=0?(i=(t=A[r+92>>2])+A[o+16>>2]|0,t=f+t|0):((0|f)<0?t=((i=A[o+16>>2])^(t=i>>31))-t|0:(t=(i=A[o+16>>2])>>31,t=A[r+84>>2]+(t-(i^t)|0)|0),(0|i)<0?i=((i=f>>31)^f)-i|0:(i=f>>31,i=A[r+84>>2]+(i-(i^f)|0)|0)),f=A[r+84>>2],i|t?(0|i)!=(0|f)|t?(0|f)!=(0|t)|i?t||(0|(b=A[r+92>>2]))>=(0|i)?(0|f)!=(0|t)||(0|(b=A[r+92>>2]))<=(0|i)?(0|i)!=(0|f)||(0|(f=A[r+92>>2]))<=(0|t)?i||(i=0,(0|(f=A[r+92>>2]))>=(0|t)||(t=(f<<1)-t|0)):t=(f<<1)-t|0:i=(b<<1)-i|0:(i=(b<<1)-i|0,t=0):i=t:t=i:t=i=f,n=A[(b=(f=k<<3)+e|0)>>2],b=A[b+4>>2],A[o+36>>2]=i,A[o+32>>2]=t,A[o+24>>2]=n,A[o+28>>2]=b,qc(o+40|0,d,o+32|0,o+24|0),A[(i=a+f|0)>>2]=A[o+40>>2],A[i+4>>2]=A[o+44>>2],(0|h)==(0|(k=k+1|0)))break}return Q=o+48|0,1}Ca(),v()},Ta,La,Mb,eb,Lb,La,_a,Da,_a,md,Ja,function Mi(r,e){r|=0;var a,i,f,t=0,o=0,b=0,n=0,u=0;return t=A[(e|=0)+8>>2],a=o=A[e+12>>2],f=o=A[e+20>>2],t>>>0<(n=(i=A[e+16>>2])+4|0)>>>0&(0|(o=n>>>0<4?o+1|0:o))>=(0|a)|(0|o)>(0|a)||(b=i+A[e>>2]|0,b=k[0|b]|k[b+1|0]<<8|k[b+2|0]<<16|k[b+3|0]<<24,A[e+16>>2]=n,A[e+20>>2]=o,n=t,t=f,(o=i+8|0)>>>0>n>>>0&(0|(t=o>>>0<8?t+1|0:t))>=(0|a)|(0|t)>(0|a)||(A[e+16>>2]=o,A[e+20>>2]=t,1&b&&((e=31^j(b))-1>>>0>28||(u=1,A[r+8>>2]=e+1,t=-2^(e=-2<<e),A[r+16>>2]=t,A[r+12>>2]=~e,A[r+24>>2]=t>>1,_[r+20>>2]=R(2)/R(0|t))))),0|u},function Hi(r,e,a,i,f,t){r|=0,e|=0,a|=0,i|=0,t|=0;var o=0,b=0,n=0,k=0,u=0,s=0,_=0,d=0;if(Q=t=Q-32|0,b=ra(pa(b=(f|=0)>>>0>1073741823?-1:f<<2),0,b),o=A[e>>2],n=A[e+4>>2],u=A[b+4>>2],A[t+16>>2]=A[b>>2],A[t+20>>2]=u,A[t+8>>2]=o,A[t+12>>2]=n,qc(t+24|0,n=r+8|0,t+16|0,t+8|0),A[a>>2]=A[t+24>>2],A[a+4>>2]=A[t+28>>2],(0|i)>(0|f))for(u=0-f<<2,r=f;_=A[(k=(o=r<<2)+e|0)>>2],k=A[k+4>>2],d=A[(s=(o=a+o|0)+u|0)+4>>2],A[t+16>>2]=A[s>>2],A[t+20>>2]=d,A[t+8>>2]=_,A[t+12>>2]=k,qc(t+24|0,n,t+16|0,t+8|0),A[o>>2]=A[t+24>>2],A[o+4>>2]=A[t+28>>2],(0|i)>(0|(r=r+f|0)););return oa(b),Q=t+32|0,1},function Ai(r){var e=0;return A[(r|=0)+24>>2]=1832,A[r>>2]=11048,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),A[r>>2]=2448,e=A[r+20>>2],A[r+20>>2]=0,e&&M[A[A[e>>2]+4>>2]](e),A[r>>2]=2232,e=A[r+16>>2],A[r+16>>2]=0,e&&Ga(e),0|r},function yi(r){var e=0;A[(r|=0)+24>>2]=1832,A[r>>2]=11048,(e=A[r+32>>2])&&(A[r+36>>2]=e,oa(e)),A[r>>2]=2448,e=A[r+20>>2],A[r+20>>2]=0,e&&M[A[A[e>>2]+4>>2]](e),A[r>>2]=2232,e=A[r+16>>2],A[r+16>>2]=0,e&&Ga(e),oa(r)},function Gi(r,e,a){var i;return e|=0,a|=0,A[(r|=0)+4>>2]=e,i=A[A[A[e+4>>2]+8>>2]+(a<<2)>>2],A[r+12>>2]=a,A[r+8>>2]=i,9==A[A[A[A[e+4>>2]+8>>2]+(a<<2)>>2]+28>>2]|0},function Ei(r,e,a){return e|=0,k[A[(r|=0)+4>>2]+36|0]>=2&&(e=0,!(0|M[A[A[r>>2]+52>>2]](r)))||(e=Xc(r+24|0,A[r+16>>2])),0|e},function Fi(r,e,a){e|=0,a|=0;var i=0;return k[A[(r|=0)+4>>2]+36|0]<=1&&(i=0,!(0|M[A[A[r>>2]+52>>2]](r)))||(i=nd(r,e,a)),0|i},function Di(r,e){return e|=0,0|M[A[A[(r|=0)>>2]+56>>2]](r,e)},function Ci(r){return 0|Je((r|=0)+24|0,rb(r)||A[r+8>>2],A[A[r+4>>2]+32>>2])},function Bi(r,e){return 0|Re((r|=0)+24|0,rb(r),A[r+8>>2])},function vi(r){var e,a=0,i=0;if(A[(r|=0)>>2]=13280,(a=A[r+20>>2])&&(A[r+24>>2]=a,oa(a)),e=A[r+8>>2]){if((0|(i=A[r+12>>2]))!=(0|(a=e))){for(;a=A[(i=i-4|0)>>2],A[i>>2]=0,a&&M[A[A[a>>2]+4>>2]](a),(0|i)!=(0|e););a=A[r+8>>2]}A[r+12>>2]=e,oa(a)}return 0|r},fb,Da,Da,function wi(r){return A[(r|=0)+44>>2]?0|M[A[A[r>>2]+48>>2]](r):0},function Dh(r){var e=0,a=0,i=0,f=0,t=0,o=0,b=0,n=0,u=0,s=0;r:{if(e=A[(r|=0)+32>>2],t=A[e+8>>2],f=0,!((0|(b=A[e+12>>2]))<=(0|(o=A[e+20>>2]))&(a=A[e+16>>2])>>>0>=t>>>0|(0|o)>(0|b))){t=k[A[e>>2]+a|0],f=e,e=o,e=(a=a+1|0)?e:e+1|0,A[f+16>>2]=a,A[f+20>>2]=e;e:if(t){for(;;){if(0|M[A[A[r>>2]+16>>2]](r,i)){if((0|t)!=(0|(i=i+1|0)))continue;break e}break}return 0}if((0|(i=A[r+8>>2]))!=(0|(e=A[r+12>>2])))for(;;){if(a=A[i>>2],!(0|M[A[A[a>>2]+8>>2]](a,r,A[r+4>>2])))break r;if((0|e)==(0|(i=i+4|0)))break}if(t){for(i=0;;){if(e=A[A[r+8>>2]+(i<<2)>>2],!(0|M[A[A[e>>2]+12>>2]](e,A[r+32>>2])))break r;if((0|t)==(0|(i=i+1|0)))break}if(t)for(n=r+20|0,e=0;;){if(i=0,a=A[(u=e<<2)+A[r+8>>2]>>2],(0|(s=0|M[A[A[a>>2]+24>>2]](a)))>0)for(;a=A[A[r+8>>2]+u>>2],a=0|M[A[A[a>>2]+20>>2]](a,i),f=A[r+20>>2],a>>>0<(o=A[r+24>>2]-f>>2)>>>0||((b=a+1|0)>>>0>o>>>0?(ya(n,b-o|0),f=A[n>>2]):o>>>0<=b>>>0||(A[r+24>>2]=(b<<2)+f)),A[(a<<2)+f>>2]=e,(0|s)!=(0|(i=i+1|0)););if((0|t)==(0|(e=e+1|0)))break}}f=0,0|M[A[A[r>>2]+28>>2]](r)&&(f=0|M[A[A[r>>2]+32>>2]](r))}return 0|f}return 0},function Ch(r){var e,a=0,i=0;if((0|(a=A[(r|=0)+8>>2]))==(0|(e=A[r+12>>2])))return 1;for(;i=A[a>>2],(i=0|M[A[A[i>>2]+16>>2]](i,A[r+32>>2]))&&(0|e)!=(0|(a=a+4|0)););return 0|i},Da,_a,Ja,Ja,function qi(r){var e,a=0,i=0;if(A[(r|=0)>>2]=11276,a=A[r+48>>2],A[r+48>>2]=0,a&&M[A[A[a>>2]+4>>2]](a),A[r>>2]=13280,(a=A[r+20>>2])&&(A[r+24>>2]=a,oa(a)),e=A[r+8>>2]){if((0|(i=A[r+12>>2]))!=(0|(a=e))){for(;a=A[(i=i-4|0)>>2],A[i>>2]=0,a&&M[A[A[a>>2]+4>>2]](a),(0|i)!=(0|e););a=A[r+8>>2]}A[r+12>>2]=e,oa(a)}return 0|r},function pi(r){var e,a=0,i=0;if(A[(r|=0)>>2]=11276,a=A[r+48>>2],A[r+48>>2]=0,a&&M[A[A[a>>2]+4>>2]](a),A[r>>2]=13280,(a=A[r+20>>2])&&(A[r+24>>2]=a,oa(a)),e=A[r+8>>2]){if((0|(i=A[r+12>>2]))!=(0|(a=e))){for(;a=A[(i=i-4|0)>>2],A[i>>2]=0,a&&M[A[A[a>>2]+4>>2]](a),(0|i)!=(0|e););a=A[r+8>>2]}A[r+12>>2]=e,oa(a)}oa(r)},function ti(r){var e=0,a=0,i=0,f=0;if(a=A[(r|=0)+32>>2],i=A[a+16>>2],f=A[a+12>>2],e=A[a+20>>2],s[a+8>>2]>i>>>0&(0|f)>=(0|e)|(0|e)<(0|f)){f=k[A[a>>2]+i|0],e=(i=i+1|0)?e:e+1|0,A[a+16>>2]=i,A[a+20>>2]=e,e=A[r+48>>2],A[r+48>>2]=0,e&&M[A[A[e>>2]+4>>2]](e);r:{e:{a:{i:switch(0|f){case 0:e=pa(384),A[e>>2]=11384,ra(e+4|0,0,80),A[e+96>>2]=0,A[e+100>>2]=0,A[e+92>>2]=-1,A[e+84>>2]=-1,A[e+88>>2]=-1,A[e+104>>2]=0,A[e+108>>2]=0,A[e+112>>2]=0,A[e+116>>2]=0,A[e+120>>2]=0,A[e+124>>2]=0,A[e+128>>2]=0,A[e+132>>2]=0,A[e+136>>2]=0,A[e+140>>2]=0,A[e+144>>2]=0,A[e+148>>2]=0,A[e+156>>2]=0,A[e+160>>2]=0,A[e+152>>2]=1065353216,A[e+164>>2]=0,A[e+168>>2]=0,A[e+172>>2]=0,A[e+176>>2]=0,A[e+180>>2]=0,A[e+184>>2]=0,A[e+188>>2]=0,A[e+192>>2]=0,A[e+196>>2]=0,A[e+200>>2]=0,A[e+204>>2]=0,A[e+208>>2]=0,A[e+212>>2]=-1,A[e+216>>2]=0,A[e+220>>2]=0,A[e+224>>2]=0,Ha(e+232|0),Ha(e+272|0),A[(a=e+312|0)>>2]=0,A[a+4>>2]=0,b[a+5|0]=0,b[a+6|0]=0,b[a+7|0]=0,b[a+8|0]=0,b[a+9|0]=0,b[a+10|0]=0,b[a+11|0]=0,b[a+12|0]=0,Ha(e+328|0),A[e+376>>2]=0,A[e+368>>2]=0,A[e+372>>2]=0;break a;case 1:e=pa(424),A[e>>2]=11436,ra(e+4|0,0,80),A[e+96>>2]=0,A[e+100>>2]=0,A[e+92>>2]=-1,A[e+84>>2]=-1,A[e+88>>2]=-1,A[e+104>>2]=0,A[e+108>>2]=0,A[e+112>>2]=0,A[e+116>>2]=0,A[e+120>>2]=0,A[e+124>>2]=0,A[e+128>>2]=0,A[e+132>>2]=0,A[e+136>>2]=0,A[e+140>>2]=0,A[e+144>>2]=0,A[e+148>>2]=0,A[e+156>>2]=0,A[e+160>>2]=0,A[e+152>>2]=1065353216,A[e+164>>2]=0,A[e+168>>2]=0,A[e+172>>2]=0,A[e+176>>2]=0,A[e+180>>2]=0,A[e+184>>2]=0,A[e+188>>2]=0,A[e+192>>2]=0,A[e+196>>2]=0,A[e+200>>2]=0,A[e+204>>2]=0,A[e+208>>2]=0,A[e+212>>2]=-1,A[e+216>>2]=0,A[e+220>>2]=0,A[e+224>>2]=0,Ha(e+232|0),Ha(e+272|0),A[(a=e+312|0)>>2]=0,A[a+4>>2]=0,b[a+5|0]=0,b[a+6|0]=0,b[a+7|0]=0,b[a+8|0]=0,b[a+9|0]=0,b[a+10|0]=0,b[a+11|0]=0,b[a+12|0]=0,Ha(e+328|0),A[e+392>>2]=0,A[e+396>>2]=0,A[e+384>>2]=0,A[e+388>>2]=0,A[e+376>>2]=0,A[e+380>>2]=0,A[e+368>>2]=0,A[e+372>>2]=0,A[(a=e+400|0)>>2]=0,A[a+4>>2]=0,b[a+5|0]=0,b[a+6|0]=0,b[a+7|0]=0,b[a+8|0]=0,b[a+9|0]=0,b[a+10|0]=0,b[a+11|0]=0,b[a+12|0]=0,A[e+416>>2]=-1,A[e+420>>2]=-1;break a;case 2:break i;default:break e}e=pa(440),A[e>>2]=11484,ra(e+4|0,0,80),A[e+96>>2]=0,A[e+100>>2]=0,A[e+92>>2]=-1,A[e+84>>2]=-1,A[e+88>>2]=-1,A[e+104>>2]=0,A[e+108>>2]=0,A[e+112>>2]=0,A[e+116>>2]=0,A[e+120>>2]=0,A[e+124>>2]=0,A[e+128>>2]=0,A[e+132>>2]=0,A[e+136>>2]=0,A[e+140>>2]=0,A[e+144>>2]=0,A[e+148>>2]=0,A[e+156>>2]=0,A[e+160>>2]=0,A[e+152>>2]=1065353216,A[e+164>>2]=0,A[e+168>>2]=0,A[e+172>>2]=0,A[e+176>>2]=0,A[e+180>>2]=0,A[e+184>>2]=0,A[e+188>>2]=0,A[e+192>>2]=0,A[e+196>>2]=0,A[e+200>>2]=0,A[e+204>>2]=0,A[e+208>>2]=0,A[e+212>>2]=-1,A[e+216>>2]=0,A[e+220>>2]=0,A[e+224>>2]=0,Ha(e+232|0),Ha(e+272|0),A[(a=e+312|0)>>2]=0,A[a+4>>2]=0,b[a+5|0]=0,b[a+6|0]=0,b[a+7|0]=0,b[a+8|0]=0,b[a+9|0]=0,b[a+10|0]=0,b[a+11|0]=0,b[a+12|0]=0,Ha(e+328|0),A[e+392>>2]=0,A[e+396>>2]=0,A[e+384>>2]=0,A[e+388>>2]=0,A[e+376>>2]=0,A[e+380>>2]=0,A[e+368>>2]=0,A[e+372>>2]=0,A[e+416>>2]=0,A[e+420>>2]=0,A[e+408>>2]=2,A[e+412>>2]=7,A[e+400>>2]=-1,A[e+404>>2]=-1,A[e+424>>2]=0,A[e+428>>2]=0,A[e+432>>2]=0,A[e+436>>2]=0}if(a=A[r+48>>2],A[r+48>>2]=e,!a)break r;M[A[A[a>>2]+4>>2]](a)}if(!(e=A[r+48>>2]))return 0}r=0|M[A[A[e>>2]+8>>2]](e,r)}else r=0;return 0|r},function ui(r,e){return e|=0,r=A[(r|=0)+48>>2],0|M[A[A[r>>2]+20>>2]](r,e)},function ri(r){return r=A[(r|=0)+48>>2],0|M[A[A[r>>2]+28>>2]](r)},function oi(r){return r=A[(r|=0)+48>>2],0|M[A[A[r>>2]+36>>2]](r)},function ni(r,e){return e|=0,r=A[(r|=0)+48>>2],0|M[A[A[r>>2]+12>>2]](r,e)},function li(r,e){return e|=0,r=A[(r|=0)+48>>2],0|M[A[A[r>>2]+16>>2]](r,e)},function si(r){return r=A[(r|=0)+48>>2],0|M[A[A[r>>2]+24>>2]](r)},Be,function fi(r){oa(Be(r|=0))},jd,id,hd,gd,function ki(r){var e,a=0,i=0,f=0,t=0,o=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0,E=0,Y=0,J=0,g=0,O=0,z=0,X=0,C=0,P=0,S=0,H=0,q=0;if(Q=e=Q+-64|0,A[(r|=0)+132>>2]=0,A[r+148>>2]){if(f=A[r+144>>2])for(;a=A[f>>2],oa(f),f=a,a;);if(f=0,A[r+144>>2]=0,j=A[r+140>>2]){if(j>>>0>=4)for(a=-4&j;A[(i=f<<2)+A[r+136>>2]>>2]=0,A[A[r+136>>2]+(4|i)>>2]=0,A[A[r+136>>2]+(8|i)>>2]=0,A[A[r+136>>2]+(12|i)>>2]=0,f=f+4|0,(0|a)!=(0|(t=t+4|0)););if(a=3&j)for(;A[A[r+136>>2]+(f<<2)>>2]=0,f=f+1|0,(0|a)!=(0|(I=I+1|0)););}A[r+148>>2]=0}r:{e:{if(f=A[r+4>>2],(a=(I=k[f+36|0])<<8|k[f+37|0])>>>0<=513){if(o=A[f+32>>2],a>>>0<=511){if(a=A[o+20>>2],a=(i=(t=A[o+16>>2])+4|0)>>>0<4?a+1|0:a,j=A[o+12>>2],s[o+8>>2]<i>>>0&(0|j)<=(0|a)|(0|a)>(0|j))break e;t=t+A[o>>2]|0,t=k[0|t]|k[t+1|0]<<8|k[t+2|0]<<16|k[t+3|0]<<24,A[o+16>>2]=i,A[o+20>>2]=a}else{if(!Ea(1,e,o))break e;f=A[r+4>>2],I=k[f+36|0],t=A[e>>2]}A[r+132>>2]=t}o=A[f+32>>2];a:{i:{if((255&I)>>>0<=1){if(I=0,a=A[o+20>>2],a=(t=(i=A[o+16>>2])+4|0)>>>0<4?a+1|0:a,j=A[o+12>>2],s[o+8>>2]<t>>>0&(0|j)<=(0|a)|(0|a)>(0|j))break r;i=i+A[o>>2]|0,i=k[0|i]|k[i+1|0]<<8|k[i+2|0]<<16|k[i+3|0]<<24,A[e+60>>2]=i,A[o+16>>2]=t,A[o+20>>2]=a,A[r+156>>2]=i,D=r+156|0}else{if(I=0,!Ea(1,e+60|0,o))break r;if(f=A[r+4>>2],a=k[f+36|0],A[r+156>>2]=A[e+60>>2],D=r+156|0,a>>>0>1)break i}if(o=A[f+32>>2],i=A[o+8>>2],j=A[o+12>>2],f=A[o+20>>2],(a=(t=A[o+16>>2])+4|0)>>>0>i>>>0&(0|(f=a>>>0<4?f+1|0:f))>=(0|j)|(0|f)>(0|j))break r;t=t+A[o>>2]|0,t=k[0|t]|k[t+1|0]<<8|k[t+2|0]<<16|k[t+3|0]<<24,A[e+56>>2]=t,A[o+16>>2]=a,A[o+20>>2]=f;break a}if(!Ea(1,e+56|0,A[f+32>>2]))break r;t=A[e+56>>2]}if(t>>>0>1431655765|s[D>>2]>m(t,3)>>>0)break r;if(h=A[r+4>>2],E=A[h+32>>2],f=A[E+8>>2],(0|(o=A[E+12>>2]))<=(0|(a=A[E+20>>2]))&(U=A[E+16>>2])>>>0>=f>>>0|(0|a)>(0|o))break r;if(D=A[E>>2],_=k[D+U|0],O=(j=U+1|0)?a:a+1|0,A[(i=E)+16>>2]=j,A[i+20>>2]=O,k[h+36|0]<=1){if((i=f)>>>0<(f=U+5|0)>>>0&(0|(a=f>>>0<5?a+1|0:a))>=(0|o)|(0|a)>(0|o))break r;D=k[0|(i=j+D|0)]|k[i+1|0]<<8|k[i+2|0]<<16|k[i+3|0]<<24,A[e+52>>2]=D,A[E+16>>2]=f,A[E+20>>2]=a}else{if(!Ea(1,e+52|0,E))break r;D=A[e+52>>2]}if(t>>>0<D>>>0|((D>>>0)/3|0)+D>>>0<t>>>0)break r;if(f=A[r+4>>2],o=A[f+32>>2],k[f+36|0]<=1){if(f=A[o+20>>2],f=(i=(a=A[o+16>>2])+4|0)>>>0<4?f+1|0:f,j=A[o+12>>2],s[o+8>>2]<i>>>0&(0|j)<=(0|f)|(0|f)>(0|j))break r;a=a+A[o>>2]|0,a=k[0|a]|k[a+1|0]<<8|k[a+2|0]<<16|k[a+3|0]<<24,A[e+48>>2]=a,A[o+16>>2]=i,A[o+20>>2]=f}else{if(!Ea(1,e+48|0,o))break r;a=A[e+48>>2]}if(a>>>0>D>>>0)break r;if(A[r+28>>2]=A[r+24>>2],f=$b(pa(88)),i=A[r+8>>2],A[r+8>>2]=f,i&&(cb(i),!A[r+8>>2]))break r;if(A[r+164>>2]=A[r+160>>2],Jb(r+160|0,t),A[r+176>>2]=A[r+172>>2],Jb(r+172|0,t),A[r- -64>>2]=0,A[r+92>>2]=-1,A[r+84>>2]=-1,A[r+88>>2]=-1,A[r+40>>2]=A[r+36>>2],A[r+52>>2]=A[r+48>>2],A[r+76>>2]=A[r+72>>2],ed(X=r+216|0),dd(X,_),!Lc(A[r+8>>2],t,A[r+156>>2]+a|0))break r;if(f=A[r+156>>2],b[0|e]=1,Oa(r+120|0,a+f|0,e),a=A[r+4>>2],(f=65535&((f=u[a+36>>1])<<8|f>>>8))>>>0<=513){if(j=A[a+32>>2],f>>>0<=511){if(a=A[j+20>>2],a=(f=(t=A[j+16>>2])+4|0)>>>0<4?a+1|0:a,i=A[j+12>>2],s[j+8>>2]<f>>>0&(0|i)<=(0|a)|(0|a)>(0|i))break r;t=t+A[j>>2]|0,t=k[0|t]|k[t+1|0]<<8|k[t+2|0]<<16|k[t+3|0]<<24,A[j+16>>2]=f,A[j+20>>2]=a}else{if(!Ea(1,e+44|0,j))break r;t=A[e+44>>2]}if(!t)break r;if(j=A[A[r+4>>2]+32>>2],(a=(i=A[j+8>>2])-(f=A[j+16>>2])|0)>>>0<t>>>0&(0|(f=A[j+12>>2]-(A[j+20>>2]+(i>>>0<f>>>0)|0)|0))<=0|(0|f)<0)break r;if(o=Ha(e),j=A[A[r+4>>2]+32>>2],a=((i=A[j+16>>2])+A[j>>2]|0)+t|0,f=A[j+8>>2]-i|0,n[o+38>>1]=u[j+38>>1],A[o>>2]=a,A[o+16>>2]=0,A[o+20>>2]=0,A[o+8>>2]=f-t,A[o+12>>2]=0,-1==(0|(f=Ib(r,o))))break r;E=f,P=f>>31}else if(E=-1,P=-1,-1==(0|Ib(r,A[a+32>>2])))break r;A[(t=S=r+232|0)+144>>2]=r,f=A[32+(0|M[A[A[r>>2]+32>>2]](r))>>2],a=A[f>>2]+A[f+16>>2]|0,f=A[32+(0|M[A[A[r>>2]+32>>2]](r))>>2],f=A[f+8>>2]-A[f+16>>2]|0,H=t,q=u[A[32+(0|M[A[A[r>>2]+32>>2]](r))>>2]+38>>1],n[H+38>>1]=q,A[t>>2]=a,A[t+16>>2]=0,A[t+20>>2]=0,A[t+8>>2]=f,A[t+12>>2]=0,A[r+372>>2]=_;a:if(Ge(t,O=Ha(e))){a=0,f=0,t=0,j=0,Q=R=Q-96|0,A[R+72>>2]=0,A[R+64>>2]=0,A[R+68>>2]=0,A[R+48>>2]=0,A[R+52>>2]=0,A[R+40>>2]=0,A[R+44>>2]=0,A[R+56>>2]=1065353216,A[R+32>>2]=0,A[R+24>>2]=0,A[R+28>>2]=0,d=r,C=A[r+124>>2];i:{f:{t:{o:{b:{n:if(!((0|D)<=0)){for(J=A[d+216>>2]!=A[d+220>>2],Z=1;;){j=(o=j)+1|0;A:{k:{c:{u:{s:{p:{_:{l:{d:{y:{m:{v:{R:{h:{if(k[d+308|0]&&!((r=(F=A[d+296>>2])+((_=A[d+304>>2])>>>3|0)|0)>>>0>=(V=A[d+300>>2])>>>0)&&(i=k[0|r],r=_+1|0,A[d+304>>2]=r,U=i>>>(7&_)&1))switch(T=0,(i=F+(h=r>>>3|0)|0)>>>0>=V>>>0?(_=r,r=0):(i=k[0|i],_=_+2|0,A[d+304>>2]=_,h=_>>>3|0,r=i>>>(7&r)&1),(i=h+F|0)>>>0<V>>>0&&(i=k[0|i],A[d+304>>2]=_+1,T=i>>>(7&_)<<1&2),h=-1,(r=U|(r|T)<<1)-1|0){case 6:break v;case 0:break R;case 2:case 4:break h;default:break b}if((0|f)==(0|t)){h=-1;break b}if(_=-1,W=A[d+8>>2],F=A[W+24>>2],i=-1,-1!=(0|(Z=A[(V=f-4|0)>>2]))&&(i=-1,-1!=(0|(a=((a=Z+1|0)>>>0)%3|0?a:Z-2|0))&&(i=A[A[W>>2]+(a<<2)>>2])),-1!=(0|(a=A[F+(i<<2)>>2]))&&(_=((r=a+1|0)>>>0)%3|0?r:a-2|0),(0|_)==(0|Z)){h=-1;break b}if(-1!=(0|Z)&&(h=-1,-1!=A[A[W+12>>2]+(Z<<2)>>2]))break b;if(a=A[W+12>>2],-1!=(0|_)&&(h=-1,-1!=A[a+(_<<2)>>2]))break b;r=(T=m(o,3))+1|0,A[a+(Z<<2)>>2]=r,A[(U=r<<2)+a>>2]=Z,G=T+2|0,A[a+(_<<2)>>2]=G,A[(o=G<<2)+a>>2]=_,N=-1,r=-1;j:if(-1!=(0|Z)){if((Z>>>0)%3|0)a=Z-1|0;else if(r=-1,-1==(0|(a=Z+2|0)))break j;r=A[A[W>>2]+(a<<2)>>2]}if(-1!=(0|_)&&-1!=(0|(a=((a=_+1|0)>>>0)%3|0?a:_-2|0))&&(N=A[A[W>>2]+(a<<2)>>2]),h=-1,(0|r)==(0|i)|(0|i)==(0|N))break b;a=A[W>>2],A[a+(T<<2)>>2]=i,A[a+U>>2]=N,A[a+o>>2]=r,-1!=(0|r)&&(A[F+(r<<2)>>2]=G),a=A[d+120>>2]+(i>>>3&536870908)|0,r=A[a>>2],H=a,q=Vj(i)&r,A[H>>2]=q,A[V>>2]=T,a=t;break A}if((0|f)==(0|t))break b;if(T=A[(U=f-4|0)>>2],G=A[d+8>>2],a=A[G+12>>2],-1!=(0|T)&-1!=A[a+(T<<2)>>2])break b;if(N=m(o,3),A[(r=(_=N+((V=5==(0|r))?2:1)|0)<<2)+a>>2]=T,A[a+(T<<2)>>2]=_,Ka(G+24|0,11424),a=A[d+8>>2],F=A[a+24>>2],A[a+28>>2]-F>>2>(0|C))break b;if(W=(h=A[a>>2])+r|0,r=((i=A[G+28>>2])-(a=A[G+24>>2])>>2)-1|0,A[W>>2]=r,(0|a)!=(0|i)&&(A[F+(r<<2)>>2]=_),i=V?N:N+2|0,_=h+(N+V<<2)|0,-1!=(0|T)){h:{j:{if((T>>>0)%3|0)r=T-1|0;else if(-1==(0|(r=T+2|0)))break j;if(r=A[h+(r<<2)>>2],A[h+(i<<2)>>2]=r,-1==(0|r))break h;A[F+(r<<2)>>2]=i;break h}A[h+(i<<2)>>2]=-1}a=-1,-1!=(0|(r=((r=T+1|0)>>>0)%3|0?r:T-2|0))&&(a=A[h+(r<<2)>>2])}else A[h+(i<<2)>>2]=-1,a=-1;A[_>>2]=a,A[U>>2]=N,a=t;break _}if((0|a)==(0|f))break b;W=A[(r=f-4|0)>>2],A[R+68>>2]=r;R:if(V=A[R+44>>2])if(_=A[R+40>>2],i=o&V+2147483647,(h=Uj(V)>>>0>1)&&((i=o)>>>0<V>>>0||(i=(o>>>0)%(V>>>0)|0)),i=A[_+((U=i)<<2)>>2])if(_=A[i>>2]){h:{if(!h){for(h=V-1|0;;){j:{if((0|(i=A[_+4>>2]))!=(0|o)){if((0|U)==(i&h))break j;f=r;break R}if((0|o)==A[_+8>>2])break h}if(!(_=A[_>>2]))break}f=r;break R}for(;;){j:{if((0|(i=A[_+4>>2]))!=(0|o)){if(i>>>0>=V>>>0&&(i=(i>>>0)%(V>>>0)|0),(0|i)==(0|U))break j;f=r;break R}if((0|o)==A[_+8>>2])break h}if(!(_=A[_>>2]))break}f=r;break R}if((0|r)==(0|Y)){if((t=(f=(i=Y-a|0)>>2)+1|0)>>>0>=1073741824)break m;if(r=i>>>1|0,i=i>>>0>=2147483644?1073741823:r>>>0>t>>>0?r:t){if(i>>>0>=1073741824)break f;r=pa(i<<2)}else r=0;if(A[(t=r+(f<<2)|0)>>2]=A[_+12>>2],f=t+4|0,(0|a)!=(0|Y))for(;Y=Y-4|0,A[(t=t-4|0)>>2]=A[Y>>2],(0|a)!=(0|Y););Y=r+(i<<2)|0,A[R+72>>2]=Y,A[R+68>>2]=f,A[R+64>>2]=t,a&&oa(a)}else A[r>>2]=A[_+12>>2],A[R+68>>2]=f}else f=r;else f=r;else f=r;if((0|f)==(0|t))break c;if((0|(T=A[(_=f-4|0)>>2]))==(0|W))break c;if(a=-1==(0|T),N=A[d+8>>2],!a&-1!=A[A[N+12>>2]+(T<<2)>>2])break c;if(G=A[N+12>>2],-1!=(0|W)&-1!=A[G+(W<<2)>>2])break c;if(o=(F=m(o,3))+2|0,A[G+(T<<2)>>2]=o,A[(V=o<<2)+G>>2]=T,r=F+1|0,A[G+(W<<2)>>2]=r,A[(i=r<<2)+G>>2]=W,a)break y;if((T>>>0)%3|0){U=T-1|0;break p}if(-1!=(0|(U=T+2|0)))break p;r=A[N>>2],a=-1;break s}if(Ka((r=A[d+8>>2])+24|0,11424),i=A[d+8>>2],W=m(o,3),_=(N=(V=(G=A[r+28>>2])-(F=A[r+24>>2])|0)>>2)-1|0,A[A[i>>2]+(W<<2)>>2]=_,Ka(i+24|0,11424),U=W+1|0,A[A[i>>2]+(U<<2)>>2]=(A[i+28>>2]-A[i+24>>2]>>2)-1,Ka((r=A[d+8>>2])+24|0,11424),i=W+2|0,A[A[r>>2]+(i<<2)>>2]=(A[r+28>>2]-A[r+24>>2]>>2)-1,r=A[d+8>>2],T=A[r+24>>2],A[r+28>>2]-T>>2>(0|C))break b;if(((0|G)!=(0|F)&&(A[T+(_<<2)>>2]=W,h=0,-4==(0|V))||(A[T+(N<<2)>>2]=U,-1!=(0|(h=N+1|0))))&&(A[T+(h<<2)>>2]=i),(0|f)!=(0|Y)){A[f>>2]=W,f=f+4|0,A[R+68>>2]=f;break _}if((i=(t=(U=f-a|0)>>2)+1|0)>>>0>=1073741824)break d;if(r=U>>>1|0,i=U>>>0>=2147483644?1073741823:r>>>0>i>>>0?r:i){if(i>>>0>=1073741824)break f;r=pa(i<<2)}else r=0;if(A[(t=r+(t<<2)|0)>>2]=W,Y=r+(i<<2)|0,r=t+4|0,(0|a)!=(0|f))for(;f=f-4|0,A[(t=t-4|0)>>2]=A[f>>2],(0|a)!=(0|f););if(A[R+72>>2]=Y,A[R+68>>2]=r,A[R+64>>2]=t,!a)break l;oa(a);break l}sa(),v()}U=-1,r=A[N>>2],A[r+(F<<2)>>2]=-1,h=-1;break u}sa(),v()}f=r,a=t}if((0|(U=A[d+40>>2]))==A[d+36>>2])break A;if((r=A[(i=U-12|0)+4>>2])>>>0>(h=~o+D|0)>>>0)break c;if((0|r)!=(0|h))break A;if(o=k[U-4|0],r=A[i>>2],A[d+40>>2]=i,(0|r)<0)break c;_=A[(U=f-4|0)>>2],A[R+20>>2]=~r+D,r=R+20|0,A[R+88>>2]=r,Gb(R,R+40|0,r,R+88|0),i=A[R>>2];_:if(1&o){if(r=-1,-1==(0|_))break _;r=((r=_+1|0)>>>0)%3|0?r:_-2|0}else r=-1,-1!=(0|_)&&(r=_-1|0,(_>>>0)%3|0||(r=_+2|0));if(A[i+12>>2]=r,(0|(_=A[d+40>>2]))==A[d+36>>2])break A;for(;;){if((r=A[(i=_-12|0)+4>>2])>>>0>h>>>0)break c;if((0|r)!=(0|h))break A;if(o=k[_-4|0],r=A[i>>2],A[d+40>>2]=i,(0|r)<0)break c;_=A[U>>2],A[R+20>>2]=~r+D,r=R+20|0,A[R+88>>2]=r,Gb(R,R+40|0,r,R+88|0),i=A[R>>2];_:if(1&o){if(r=-1,-1==(0|_))break _;r=((r=_+1|0)>>>0)%3|0?r:_-2|0}else r=-1,-1!=(0|_)&&(r=_-1|0,(_>>>0)%3|0||(r=_+2|0));if(A[i+12>>2]=r,(0|(_=A[d+40>>2]))==A[d+36>>2])break}break A}r=A[N>>2],a=A[r+(U<<2)>>2]}U=a,A[(F<<2)+r>>2]=a,h=-1,-1!=(0|(a=((a=T+1|0)>>>0)%3|0?a:T-2|0))&&(h=A[(a<<2)+r>>2])}if(A[r+i>>2]=h,-1!=(0|W)){u:{s:{if((W>>>0)%3|0)a=W-1|0;else if(-1==(0|(a=W+2|0)))break s;if(a=A[(a<<2)+r>>2],A[r+V>>2]=a,-1==(0|a))break u;A[A[N+24>>2]+(a<<2)>>2]=o;break u}A[r+V>>2]=-1}T=-1,i=-1,-1!=(0|(a=((a=W+1|0)>>>0)%3|0?a:W-2|0))&&(T=A[(a<<2)+r>>2],i=a)}else A[r+V>>2]=-1,T=-1,i=-1;for(V=(a=A[N+24>>2])+(T<<2)|0,-1!=(0|U)&&(A[a+(U<<2)>>2]=A[V>>2]),a=i;;){if(-1==(0|a))break k;if(A[(a<<2)+r>>2]=U,o=-1,-1!=(0|(a=((h=a+1|0)>>>0)%3|0?h:a-2|0))&&(o=-1,-1!=(0|(h=A[G+(a<<2)>>2]))&&(o=((a=h+1|0)>>>0)%3|0?a:h-2|0)),(0|i)==(0|(a=o)))break}}if(h=-1,!(1&Z))break n;break b}if(A[V>>2]=-1,!J)if((0|g)==(0|z)){if((i=(a=(o=g-B|0)>>2)+1|0)>>>0>=1073741824)break t;if(r=o>>>1|0,i=o>>>0>=2147483644?1073741823:r>>>0>i>>>0?r:i){if(i>>>0>=1073741824)break f;r=pa(i<<2)}else r=0;if(A[(a=r+(a<<2)|0)>>2]=T,z=a+4|0,(0|B)!=(0|g))for(;g=g-4|0,A[(a=a-4|0)>>2]=A[g>>2],(0|B)!=(0|g););g=r+(i<<2)|0,A[R+32>>2]=g,A[R+28>>2]=z,A[R+24>>2]=a,B&&oa(B),B=a}else A[z>>2]=T,z=z+4|0,A[R+28>>2]=z;A[_>>2]=F,a=t}if(Z=(0|j)<(0|D),(0|j)==(0|D))break}j=D}if(h=-1,r=A[d+8>>2],!(A[r+28>>2]-A[r+24>>2]>>2>(0|C))){if((0|f)!=(0|t)){for(F=d+72|0,U=d+60|0,V=d+312|0;;){N=A[(f=f-4|0)>>2],A[R+68>>2]=f;n:{A:{k:{if(u[d+270>>1]<=513){if(!k[d+364|0])break A;if(a=A[d+360>>2],(r=A[d+352>>2]+(a>>>3|0)|0)>>>0>=s[d+356>>2])break k;if(r=k[0|r],A[d+360>>2]=a+1,!(r>>>(7&a)&1))break k;break A}if(Ba(V))break A}k:{c:{if((0|(a=A[d+64>>2]))==(i=A[d+68>>2])<<5){if((a+1|0)<0)break c;pb(U,r=a>>>0<=1073741822?(a=32+(-32&a)|0)>>>0<(i<<=6)>>>0?i:a:2147483647),a=A[d+64>>2]}if(A[d+64>>2]=a+1,i=A[d+60>>2]+(a>>>3&536870908)|0,r=A[i>>2],H=i,q=Vj(a)&r,A[H>>2]=q,(0|(a=A[d+76>>2]))!=A[d+80>>2]){A[a>>2]=N,A[d+76>>2]=a+4;break n}if((o=(i=(B=a-(D=A[F>>2])|0)>>2)+1|0)>>>0>=1073741824)break k;if(r=B>>>1|0,o=B>>>0>=2147483644?1073741823:r>>>0>o>>>0?r:o){if(o>>>0>=1073741824)break f;r=pa(o<<2)}else r=0;if(A[(_=r+(i<<2)|0)>>2]=N,i=_+4|0,(0|a)!=(0|D))for(;a=a-4|0,A[(_=_-4|0)>>2]=A[a>>2],(0|a)!=(0|D););if(A[d+80>>2]=r+(o<<2),A[d+76>>2]=i,A[d+72>>2]=_,!D)break n;oa(D);break n}sa(),v()}sa(),v()}if(G=A[d+8>>2],J=A[G>>2],((A[G+4>>2]-J>>2>>>0)/3|0)<=(0|j)){h=-1;break b}if(r=-1,h=-1,a=-1,B=A[G+24>>2],o=-1,-1!=(0|N)&&(o=-1,-1!=(0|(t=((t=N+1|0)>>>0)%3|0?t:N-2|0))&&(o=A[J+(t<<2)>>2])),-1!=(0|(D=A[B+(o<<2)>>2]))?(_=1,t=-1,-1!=(0|(i=((i=D+1|0)>>>0)%3|0?i:D-2|0))&&(_=0,t=-1!=(0|(t=((t=(r=i)+1|0)>>>0)%3|0?t:r-2|0))?A[J+(t<<2)>>2]:-1)):(_=1,t=-1),-1!=(0|(i=A[(t<<2)+B>>2]))&&(a=((a=i+1|0)>>>0)%3|0?a:i-2|0),(0|r)==(0|N)|(0|a)==(0|N)|-1!=(0|N)&-1!=A[A[G+12>>2]+(N<<2)>>2]|(0|r)==(0|a))break b;if(!_&-1!=A[A[G+12>>2]+(r<<2)>>2])break b;if(_=-1,D=A[G+12>>2],B=-1,-1!=(0|a)){if(-1!=A[D+(a<<2)>>2])break b;B=-1,-1!=(0|(i=((i=a+1|0)>>>0)%3|0?i:a-2|0))&&(B=A[J+(i<<2)>>2])}i=m(j,3),A[R>>2]=i,A[D+(i<<2)>>2]=N,A[D+(N<<2)>>2]=i,i=A[R>>2]+1|0,A[D+(i<<2)>>2]=r,A[D+(r<<2)>>2]=i,r=A[R>>2]+2|0,A[D+(r<<2)>>2]=a,A[D+(a<<2)>>2]=r,r=A[R>>2],A[J+(r<<2)>>2]=t,A[(D=J+((h=r+1|0)<<2)|0)>>2]=B,A[(i=J+((B=r+2|0)<<2)|0)>>2]=o,o=A[d+120>>2],r=A[(a=o+((t=h?t:-1)>>>3&536870908)|0)>>2],H=a,q=Vj(t)&r,A[H>>2]=q,_=-1!=(0|h)?A[D>>2]:_,r=A[(a=o+(_>>>3&536870908)|0)>>2],H=a,q=Vj(_)&r,A[H>>2]=q,a=-1,a=-1!=(0|B)?A[i>>2]:a,r=A[(t=o+(a>>>3&536870908)|0)>>2],H=t,q=Vj(a)&r,A[H>>2]=q,b[R+88|0]=1,_c(U,R+88|0),Ka(F,R),j=j+1|0,t=A[R+64>>2]}if((0|f)==(0|t))break}r=A[d+8>>2]}if(h=-1,((A[r+4>>2]-A[r>>2]>>2>>>0)/3|0)==(0|j)){if(h=A[r+28>>2]-A[r+24>>2]>>2,(0|(Z=A[R+24>>2]))==(0|(i=A[R+28>>2])))break o;for(;;){if(j=A[Z>>2],f=A[r+24>>2],-1==A[(_=f+((a=h-1|0)<<2)|0)>>2])for(;a=h-2|0,h=h-1|0,-1==A[(_=f+(a<<2)|0)>>2];);if(a>>>0>=j>>>0){if(A[R>>2]=r,_=A[_>>2],b[R+12|0]=1,A[R+8>>2]=_,A[R+4>>2]=_,-1!=(0|_)){for(;;){if(r=A[A[d+8>>2]>>2]+(_<<2)|0,A[r>>2]!=(0|a)){h=-1;break b}if(A[r>>2]=j,uc(R),-1==(0|(_=A[R+8>>2])))break}r=A[d+8>>2]}t=(f=A[r+24>>2])+(a<<2)|0,-1!=(0|j)&&(A[f+(j<<2)>>2]=A[t>>2]),A[t>>2]=-1,o=1<<j,t=(f=A[d+120>>2])+(j>>>3&536870908)|0,j=f+(a>>>3&536870908)|0,f=1<<a,a=A[j>>2]&f?o|A[t>>2]:A[t>>2]&~o,A[t>>2]=a,A[j>>2]=A[j>>2]&~f,h=h-1|0}if((0|i)==(0|(Z=Z+4|0)))break}}}}Z=A[R+24>>2]}if(Z&&oa(Z),r=A[R+48>>2])for(;f=A[r>>2],oa(r),r=f;);r=A[R+40>>2],A[R+40>>2]=0,r&&oa(r),(r=A[R+64>>2])&&(A[R+68>>2]=r,oa(r)),Q=R+96|0,r=h;break i}sa(),v()}wa(),v()}if(t=r,-1!=(0|r)){f=(a=A[O+16>>2])+A[O>>2]|0,r=A[O+8>>2]-a|0,a=A[A[d+4>>2]+32>>2],n[a+38>>1]=u[a+38>>1],A[a>>2]=f,A[a+16>>2]=0,A[a+20>>2]=0,A[a+8>>2]=r,A[a+12>>2]=0,a=A[d+4>>2],(65535&(f=(r=u[a+36>>1])<<8|r>>>8))>>>0<=513&&(i=a=A[a+32>>2],r=A[a+16>>2],a=P+A[a+20>>2]|0,a=(r=r+E|0)>>>0<E>>>0?a+1|0:a,A[i+16>>2]=r,A[i+20>>2]=a);i:if(A[d+216>>2]!=A[d+220>>2]){if(r=A[d+8>>2],a=A[r>>2],r=A[r+4>>2],!((65535&f)>>>0>=513)){if((0|r)==(0|a))break i;for(f=0;;){if(cd(d,f)){if(f=f+3|0,r=A[d+8>>2],f>>>0<A[r+4>>2]-A[r>>2]>>2>>>0)continue;break i}break}break a}if((0|r)!=(0|a)){for(f=0;;){if(bd(d,f)){if(f=f+3|0,r=A[d+8>>2],f>>>0<A[r+4>>2]-A[r>>2]>>2>>>0)continue;break i}break}break a}}if(ad(S),(0|(f=A[d+216>>2]))!=A[d+220>>2])for(D=0;;){if(Jc(4+((i=m(D,144))+f|0)|0,A[d+8>>2]),r=A[X>>2],(0|(f=A[(a=r+i|0)+132>>2]))!=(0|(a=A[a+136>>2]))){for(;Hc(4+(i+A[X>>2]|0)|0,A[f>>2]),(0|a)!=(0|(f=f+4|0)););r=A[X>>2]}if(!Ic(4+(r+i|0)|0))break a;if(D=D+1|0,f=A[d+216>>2],!(D>>>0<(A[d+220>>2]-f|0)/144>>>0))break}if(r=A[d+8>>2],Hb(d+184|0,A[r+28>>2]-A[r+24>>2]>>2),(0|(I=A[d+216>>2]))!=A[d+220>>2])for(f=0;r=m(f,144)+I|0,a=A[r+60>>2]-A[r+56>>2]>>2,i=r+104|0,r=A[d+8>>2],Hb(i,(0|(r=A[r+28>>2]-A[r+24>>2]>>2))<(0|a)?a:r),f=f+1|0,I=A[d+216>>2],f>>>0<(A[d+220>>2]-I|0)/144>>>0;);I=$c(d,t)}}break r}I=0}return Q=e- -64|0,0|I},Da,db,Zc,Ae,function ei(r){oa(Ae(r|=0))},jd,id,hd,gd,function ii(r){var e,a=0,i=0,f=0,t=0,o=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0,E=0,Y=0,M=0,J=0,g=0,O=0,z=0,X=0,C=0,P=0,S=0,H=0,q=0,x=0;if(Q=e=Q+-64|0,A[(r|=0)+132>>2]=0,A[r+148>>2]){if(i=A[r+144>>2])for(;a=A[i>>2],oa(i),i=a,a;);if(i=0,A[r+144>>2]=0,D=A[r+140>>2]){if(D>>>0>=4)for(a=-4&D;A[(t=i<<2)+A[r+136>>2]>>2]=0,A[A[r+136>>2]+(4|t)>>2]=0,A[A[r+136>>2]+(8|t)>>2]=0,A[A[r+136>>2]+(12|t)>>2]=0,i=i+4|0,(0|a)!=(0|(o=o+4|0)););if(a=3&D)for(;A[A[r+136>>2]+(i<<2)>>2]=0,i=i+1|0,(0|a)!=(0|(B=B+1|0)););}A[r+148>>2]=0}r:{e:{if(i=A[r+4>>2],(a=(B=k[i+36|0])<<8|k[i+37|0])>>>0<=513){if(_=A[i+32>>2],a>>>0<=511){if(o=A[_+20>>2],a=o=(t=(D=A[_+16>>2])+4|0)>>>0<4?o+1|0:o,f=A[_+12>>2],s[_+8>>2]<t>>>0&(0|a)>=(0|f)|(0|a)>(0|f))break e;o=D+A[_>>2]|0,o=k[0|o]|k[o+1|0]<<8|k[o+2|0]<<16|k[o+3|0]<<24,A[_+16>>2]=t,A[_+20>>2]=a}else{if(!Ea(1,e,_))break e;i=A[r+4>>2],B=k[i+36|0],o=A[e>>2]}A[r+132>>2]=o}f=A[i+32>>2];a:{i:{if((255&B)>>>0<=1){if(B=0,a=A[f+20>>2],a=(o=(t=A[f+16>>2])+4|0)>>>0<4?a+1|0:a,D=A[f+12>>2],s[f+8>>2]<o>>>0&(0|D)<=(0|a)|(0|a)>(0|D))break r;t=t+A[f>>2]|0,t=k[0|t]|k[t+1|0]<<8|k[t+2|0]<<16|k[t+3|0]<<24,A[e+60>>2]=t,A[f+16>>2]=o,A[f+20>>2]=a,A[r+156>>2]=t,F=r+156|0}else{if(B=0,!Ea(1,e+60|0,f))break r;if(i=A[r+4>>2],a=k[i+36|0],A[r+156>>2]=A[e+60>>2],F=r+156|0,a>>>0>1)break i}if(f=A[i+32>>2],t=A[f+8>>2],D=A[f+12>>2],i=A[f+20>>2],(a=(o=A[f+16>>2])+4|0)>>>0>t>>>0&(0|(i=a>>>0<4?i+1|0:i))>=(0|D)|(0|i)>(0|D))break r;o=o+A[f>>2]|0,o=k[0|o]|k[o+1|0]<<8|k[o+2|0]<<16|k[o+3|0]<<24,A[e+56>>2]=o,A[f+16>>2]=a,A[f+20>>2]=i;break a}if(!Ea(1,e+56|0,A[i+32>>2]))break r;o=A[e+56>>2]}if(o>>>0>1431655765|s[F>>2]>m(o,3)>>>0)break r;if(z=A[r+4>>2],I=A[z+32>>2],i=A[I+8>>2],(0|(f=A[I+12>>2]))<=(0|(a=A[I+20>>2]))&(d=A[I+16>>2])>>>0>=i>>>0|(0|a)>(0|f))break r;if(h=A[I>>2],j=k[h+d|0],_=(D=d+1|0)?a:a+1|0,A[(t=I)+16>>2]=D,A[t+20>>2]=_,k[z+36|0]<=1){if(t=i,(i=d+5|0)>>>0>t>>>0&(0|(a=i>>>0<5?a+1|0:a))>=(0|f)|(0|a)>(0|f))break r;F=k[0|(t=h+D|0)]|k[t+1|0]<<8|k[t+2|0]<<16|k[t+3|0]<<24,A[e+52>>2]=F,A[I+16>>2]=i,A[I+20>>2]=a}else{if(!Ea(1,e+52|0,I))break r;F=A[e+52>>2]}if(o>>>0<F>>>0|((F>>>0)/3|0)+F>>>0<o>>>0)break r;if(i=A[r+4>>2],f=A[i+32>>2],k[i+36|0]<=1){if(i=A[f+20>>2],i=(t=(a=A[f+16>>2])+4|0)>>>0<4?i+1|0:i,D=A[f+12>>2],s[f+8>>2]<t>>>0&(0|D)<=(0|i)|(0|i)>(0|D))break r;a=a+A[f>>2]|0,a=k[0|a]|k[a+1|0]<<8|k[a+2|0]<<16|k[a+3|0]<<24,A[e+48>>2]=a,A[f+16>>2]=t,A[f+20>>2]=i}else{if(!Ea(1,e+48|0,f))break r;a=A[e+48>>2]}if(a>>>0>F>>>0)break r;if(A[r+28>>2]=A[r+24>>2],i=$b(pa(88)),t=A[r+8>>2],A[r+8>>2]=i,t&&(cb(t),!A[r+8>>2]))break r;if(A[r+164>>2]=A[r+160>>2],Jb(r+160|0,o),A[r+176>>2]=A[r+172>>2],Jb(r+172|0,o),A[r- -64>>2]=0,A[r+92>>2]=-1,A[r+84>>2]=-1,A[r+88>>2]=-1,A[r+40>>2]=A[r+36>>2],A[r+52>>2]=A[r+48>>2],A[r+76>>2]=A[r+72>>2],ed(C=r+216|0),dd(C,j),!Lc(A[r+8>>2],o,A[r+156>>2]+a|0))break r;if(i=A[r+156>>2],b[0|e]=1,Oa(r+120|0,a+i|0,e),o=A[r+4>>2],(i=65535&((i=u[o+36>>1])<<8|i>>>8))>>>0<=513){if(_=A[o+32>>2],i>>>0<=511){if(o=A[_+20>>2],i=o=(t=(D=A[_+16>>2])+4|0)>>>0<4?o+1|0:o,f=A[_+12>>2],s[_+8>>2]<t>>>0&(0|i)>=(0|f)|(0|i)>(0|f))break r;o=D+A[_>>2]|0,o=k[0|o]|k[o+1|0]<<8|k[o+2|0]<<16|k[o+3|0]<<24,A[_+16>>2]=t,A[_+20>>2]=i}else{if(!Ea(1,e+44|0,_))break r;o=A[e+44>>2]}if(!o)break r;if(f=A[A[r+4>>2]+32>>2],t=(D=A[f+8>>2])-(i=A[f+16>>2])|0,(0|(i=A[f+12>>2]-(A[f+20>>2]+(i>>>0>D>>>0)|0)|0))<=0&o>>>0>t>>>0|(0|i)<0)break r;if(_=Ha(e),f=A[A[r+4>>2]+32>>2],t=((D=A[f+16>>2])+A[f>>2]|0)+o|0,i=A[f+8>>2]-D|0,n[_+38>>1]=u[f+38>>1],A[_>>2]=t,A[_+16>>2]=0,A[_+20>>2]=0,A[_+8>>2]=i-o,A[_+12>>2]=0,-1==(0|(i=Ib(r,_))))break r;z=i,S=i>>31}else if(z=-1,S=-1,-1==(0|Ib(r,A[o+32>>2])))break r;Ee(J=r+232|0,r),A[r+372>>2]=j,A[r+384>>2]=A[r+156>>2]+a,I=Ha(e),f=0,Q=D=Q-16|0,Ge(J,_=I)&&(a=A[_+20>>2],a=(i=(o=A[_+16>>2])+4|0)>>>0<4?a+1|0:a,t=A[_+12>>2],s[_+8>>2]<i>>>0&(0|t)<=(0|a)|(0|a)>(0|t)||(o=o+A[_>>2]|0,o=k[0|o]|k[o+1|0]<<8|k[o+2|0]<<16|k[o+3|0]<<24,A[_+16>>2]=i,A[_+20>>2]=a,(0|o)<0||(0|(a=o))>=(0|(o=A[J+152>>2]))||(A[D+12>>2]=0,i=A[J+156>>2],(a=A[J+160>>2]-i>>2)>>>0<o>>>0?Pa(J+156|0,o-a|0,D+12|0):a>>>0<=o>>>0||(A[J+160>>2]=i+(o<<2)),f=ta(J+168|0,_)))),Q=D+16|0;a:if(f){f=0,i=0,o=0,D=0,Q=R=Q-96|0,A[R+72>>2]=0,A[R+64>>2]=0,A[R+68>>2]=0,A[R+48>>2]=0,A[R+52>>2]=0,A[R+40>>2]=0,A[R+44>>2]=0,A[R+56>>2]=1065353216,A[R+32>>2]=0,A[R+24>>2]=0,A[R+28>>2]=0,_=r,P=A[r+124>>2];i:{f:{t:{o:{b:{n:if(!((0|F)<=0)){for(Y=_+400|0,H=_+232|0,g=A[_+216>>2]!=A[_+220>>2],E=1;;){D=(t=D)+1|0;A:{k:{c:{u:if(-1!=A[_+420>>2]&&Ba(Y)){if(V=A[_+420>>2],A[_+416>>2]=V,V)break c}else{if(!k[_+308|0])break u;if(!((r=(N=A[_+296>>2])+((G=A[_+304>>2])>>>3|0)|0)>>>0>=(j=A[_+300>>2])>>>0)&&(a=k[0|r],r=G+1|0,A[_+304>>2]=r,d=a>>>(7&G)&1)){(a=N+(T=r>>>3|0)|0)>>>0>=j>>>0?(a=r,r=0):(h=k[0|a],a=G+2|0,A[_+304>>2]=a,T=a>>>3|0,r=h>>>(7&r)&1),(h=T+N|0)>>>0<j>>>0?(h=k[0|h],A[_+304>>2]=a+1,a=h>>>(7&a)<<1&2):a=0,V=(r|a)<<1|d,A[_+416>>2]=V;break c}A[_+416>>2]=0}if((0|i)==(0|o)){a=-1;break b}if(V=-1,T=A[_+8>>2],N=A[T+24>>2],f=-1,-1!=(0|(U=A[(h=i-4|0)>>2]))&&(f=-1,-1!=(0|(a=((a=U+1|0)>>>0)%3|0?a:U-2|0))&&(f=A[A[T>>2]+(a<<2)>>2])),-1!=(0|(a=A[N+(f<<2)>>2]))&&(V=((r=a+1|0)>>>0)%3|0?r:a-2|0),(0|U)==(0|V)){a=-1;break b}if(-1!=(0|U)&&(a=-1,-1!=A[A[T+12>>2]+(U<<2)>>2]))break b;if(j=A[T+12>>2],-1!=(0|V)&&(a=-1,-1!=A[j+(V<<2)>>2]))break b;r=(W=m(t,3))+1|0,A[j+(U<<2)>>2]=r,A[(d=r<<2)+j>>2]=U,G=W+2|0,A[j+(V<<2)>>2]=G,A[(t=G<<2)+j>>2]=V,j=-1,r=-1;u:if(-1!=(0|U)){if((U>>>0)%3|0)a=U-1|0;else if(r=-1,-1==(0|(a=U+2|0)))break u;r=A[A[T>>2]+(a<<2)>>2]}if(-1!=(0|V)&&-1!=(0|(a=((a=V+1|0)>>>0)%3|0?a:V-2|0))&&(j=A[A[T>>2]+(a<<2)>>2]),a=-1,(0|r)==(0|f)|(0|f)==(0|j))break b;a=A[T>>2],A[a+(W<<2)>>2]=f,A[a+d>>2]=j,A[a+t>>2]=r,-1!=(0|r)&&(A[N+(r<<2)>>2]=G),a=A[_+120>>2]+(f>>>3&536870908)|0,r=A[a>>2],q=a,x=Vj(f)&r,A[q>>2]=x,A[h>>2]=W,V=A[i-4>>2];break k}a=-1;c:{u:{s:{p:{_:{l:{d:{y:{m:{v:{R:switch(V-1|0){case 2:case 4:if((0|i)==(0|o))break b;if(U=A[(d=i-4|0)>>2],G=A[_+8>>2],f=A[G+12>>2],-1!=(0|U)&-1!=A[f+(U<<2)>>2])break b;if(W=m(t,3),A[(r=(h=W+((j=5==(0|V))?2:1)|0)<<2)+f>>2]=U,A[f+(U<<2)>>2]=h,Ka(G+24|0,11424),f=A[_+8>>2],N=A[f+24>>2],A[f+28>>2]-N>>2>(0|P))break b;if(V=(T=A[f>>2])+r|0,r=((f=A[G+28>>2])-(a=A[G+24>>2])>>2)-1|0,A[V>>2]=r,(0|a)!=(0|f)&&(A[N+(r<<2)>>2]=h),f=j?W:W+2|0,h=T+(j+W<<2)|0,-1!=(0|U)){h:{j:{if((U>>>0)%3|0)r=U-1|0;else if(-1==(0|(r=U+2|0)))break j;if(r=A[T+(r<<2)>>2],A[T+(f<<2)>>2]=r,-1==(0|r))break h;A[N+(r<<2)>>2]=f;break h}A[T+(f<<2)>>2]=-1}a=-1,-1!=(0|(r=((r=U+1|0)>>>0)%3|0?r:U-2|0))&&(a=A[T+(r<<2)>>2])}else A[T+(f<<2)>>2]=-1,a=-1;A[h>>2]=a,A[d>>2]=W;break v;case 0:if((0|i)==(0|f))break b;U=A[(r=i-4|0)>>2],A[R+68>>2]=r;h:if(j=A[R+44>>2])if(N=A[R+40>>2],a=t&j+2147483647,(d=Uj(j)>>>0>1)&&((a=t)>>>0<j>>>0||(a=(t>>>0)%(j>>>0)|0)),a=A[N+((h=a)<<2)>>2])if(a=A[a>>2]){j:{if(!d){for(j=j-1|0;;){D:{if((0|(d=A[a+4>>2]))!=(0|t)){if((0|h)==(d&j))break D;i=r;break h}if((0|t)==A[a+8>>2])break j}if(!(a=A[a>>2]))break}i=r;break h}for(;;){D:{if((0|(d=A[a+4>>2]))!=(0|t)){if(d>>>0>=j>>>0&&(d=(d>>>0)%(j>>>0)|0),(0|d)==(0|h))break D;i=r;break h}if((0|t)==A[a+8>>2])break j}if(!(a=A[a>>2]))break}i=r;break h}if((0|r)==(0|M)){if((o=(i=(d=M-f|0)>>2)+1|0)>>>0>=1073741824)break y;if(r=d>>>1|0,d=d>>>0>=2147483644?1073741823:r>>>0>o>>>0?r:o){if(d>>>0>=1073741824)break f;r=pa(d<<2)}else r=0;if(A[(o=r+(i<<2)|0)>>2]=A[a+12>>2],i=o+4|0,(0|f)!=(0|M))for(;M=M-4|0,A[(o=o-4|0)>>2]=A[M>>2],(0|f)!=(0|M););M=r+(d<<2)|0,A[R+72>>2]=M,A[R+68>>2]=i,A[R+64>>2]=o,f&&oa(f)}else A[r>>2]=A[a+12>>2],A[R+68>>2]=i}else i=r;else i=r;else i=r;if((0|i)==(0|o))break u;if((0|(T=A[(h=i-4|0)>>2]))==(0|U))break u;if(f=-1==(0|T),W=A[_+8>>2],!f&-1!=A[A[W+12>>2]+(T<<2)>>2])break u;if(G=A[W+12>>2],-1!=(0|U)&-1!=A[G+(U<<2)>>2])break u;if(t=(V=m(t,3))+2|0,A[G+(T<<2)>>2]=t,A[(N=t<<2)+G>>2]=T,r=V+1|0,A[G+(U<<2)>>2]=r,A[(a=r<<2)+G>>2]=U,f)break d;if((T>>>0)%3|0){j=T-1|0;break _}if(-1!=(0|(j=T+2|0)))break _;f=A[W>>2],r=-1;break p;case 6:break R;default:break b}if(Ka((r=A[_+8>>2])+24|0,11424),d=A[_+8>>2],V=m(t,3),j=(T=(N=(W=A[r+28>>2])-(G=A[r+24>>2])|0)>>2)-1|0,A[A[d>>2]+(V<<2)>>2]=j,Ka(d+24|0,11424),h=V+1|0,A[A[d>>2]+(h<<2)>>2]=(A[d+28>>2]-A[d+24>>2]>>2)-1,Ka((r=A[_+8>>2])+24|0,11424),d=V+2|0,A[A[r>>2]+(d<<2)>>2]=(A[r+28>>2]-A[r+24>>2]>>2)-1,r=A[_+8>>2],U=A[r+24>>2],A[r+28>>2]-U>>2>(0|P))break b;if(((0|W)!=(0|G)&&(A[U+(j<<2)>>2]=V,a=0,-4==(0|N))||(A[U+(T<<2)>>2]=h,-1!=(0|(a=T+1|0))))&&(A[U+(a<<2)>>2]=d),(0|i)!=(0|M)){A[i>>2]=V,i=i+4|0,A[R+68>>2]=i;break m}if((o=(a=(d=i-f|0)>>2)+1|0)>>>0>=1073741824)break l;if(r=d>>>1|0,d=d>>>0>=2147483644?1073741823:r>>>0>o>>>0?r:o){if(d>>>0>=1073741824)break f;r=pa(d<<2)}else r=0;if(A[(o=r+(a<<2)|0)>>2]=V,M=r+(d<<2)|0,r=o+4|0,(0|i)!=(0|f))for(;i=i-4|0,A[(o=o-4|0)>>2]=A[i>>2],(0|i)!=(0|f););A[R+72>>2]=M,A[R+68>>2]=r,A[R+64>>2]=o,f&&oa(f),i=r}f=o}if(De(H,A[i-4>>2]),(0|(d=A[_+40>>2]))==A[_+36>>2])break A;if((r=A[(a=d-12|0)+4>>2])>>>0>(j=~t+F|0)>>>0)break u;if((0|r)!=(0|j))break A;if(t=k[d-4|0],r=A[a>>2],A[_+40>>2]=a,(0|r)<0)break u;h=A[(d=i-4|0)>>2],A[R+20>>2]=~r+F,r=R+20|0,A[R+88>>2]=r,Gb(R,R+40|0,r,R+88|0),a=A[R>>2];m:if(1&t){if(r=-1,-1==(0|h))break m;r=((r=h+1|0)>>>0)%3|0?r:h-2|0}else r=-1,-1!=(0|h)&&(r=h-1|0,(h>>>0)%3|0||(r=h+2|0));if(A[a+12>>2]=r,(0|(a=A[_+40>>2]))==A[_+36>>2])break A;for(;;){if((r=A[(h=a-12|0)+4>>2])>>>0>j>>>0)break u;if((0|r)!=(0|j))break A;if(t=k[a-4|0],r=A[h>>2],A[_+40>>2]=h,(0|r)<0)break u;h=A[d>>2],A[R+20>>2]=~r+F,r=R+20|0,A[R+88>>2]=r,Gb(R,R+40|0,r,R+88|0),a=A[R>>2];m:if(1&t){if(r=-1,-1==(0|h))break m;r=((r=h+1|0)>>>0)%3|0?r:h-2|0}else r=-1,-1!=(0|h)&&(r=h-1|0,(h>>>0)%3|0||(r=h+2|0));if(A[a+12>>2]=r,(0|(a=A[_+40>>2]))==A[_+36>>2])break}break A}sa(),v()}j=-1,f=A[W>>2],A[f+(V<<2)>>2]=-1,d=-1;break s}sa(),v()}f=A[W>>2],r=A[f+(j<<2)>>2]}j=r,A[(V<<2)+f>>2]=r,d=-1,-1!=(0|(r=((r=T+1|0)>>>0)%3|0?r:T-2|0))&&(d=A[(r<<2)+f>>2])}if(A[a+f>>2]=d,-1!=(0|U)){s:{p:{if((U>>>0)%3|0)a=U-1|0;else if(-1==(0|(a=U+2|0)))break p;if(r=A[(a<<2)+f>>2],A[f+N>>2]=r,-1==(0|r))break s;A[A[W+24>>2]+(r<<2)>>2]=t;break s}A[f+N>>2]=-1}T=-1,r=-1,-1!=(0|(a=((a=U+1|0)>>>0)%3|0?a:U-2|0))&&(T=A[(a<<2)+f>>2],r=a)}else A[f+N>>2]=-1,T=-1,r=-1;for(N=a=(d=A[_+388>>2])+(t=j<<2)|0,U=A[a>>2],a=T<<2,A[N>>2]=U+A[a+d>>2],N=(d=a)+(a=A[W+24>>2])|0,-1!=(0|j)&&(A[a+t>>2]=A[N>>2]),a=r;;){if(-1==(0|a))break c;if(A[(a<<2)+f>>2]=j,t=-1,-1!=(0|(a=((d=a+1|0)>>>0)%3|0?d:a-2|0))&&(t=-1,-1!=(0|(d=A[G+(a<<2)>>2]))&&(t=((a=d+1|0)>>>0)%3|0?a:d-2|0)),(0|r)==(0|(a=t)))break}}if(a=-1,!(1&E))break n;break b}if(A[N>>2]=-1,!g)if((0|O)==(0|X)){if((t=(a=(f=O-Z|0)>>2)+1|0)>>>0>=1073741824)break t;if(r=f>>>1|0,t=f>>>0>=2147483644?1073741823:r>>>0>t>>>0?r:t){if(t>>>0>=1073741824)break f;r=pa(t<<2)}else r=0;if(A[(a=r+(a<<2)|0)>>2]=T,X=a+4|0,(0|Z)!=(0|O))for(;O=O-4|0,A[(a=a-4|0)>>2]=A[O>>2],(0|Z)!=(0|O););O=r+(t<<2)|0,A[R+32>>2]=O,A[R+28>>2]=X,A[R+24>>2]=a,Z&&oa(Z),Z=a}else A[X>>2]=T,X=X+4|0,A[R+28>>2]=X;A[h>>2]=V}De(H,V),f=o}if(E=(0|D)<(0|F),(0|D)==(0|F))break}D=F}if(a=-1,E=A[_+8>>2],!(A[E+28>>2]-A[E+24>>2]>>2>(0|P))){if((0|i)!=(0|o)){for(G=_+72|0,h=_+60|0,F=_+312|0;;){Y=A[(i=i-4|0)>>2],A[R+68>>2]=i;n:{A:{k:{if(u[_+270>>1]<=513){if(!k[_+364|0])break A;if(a=A[_+360>>2],(r=A[_+352>>2]+(a>>>3|0)|0)>>>0>=s[_+356>>2])break k;if(r=k[0|r],A[_+360>>2]=a+1,!(r>>>(7&a)&1))break k;break A}if(Ba(F))break A}k:{c:{if((0|(a=A[_+64>>2]))==(t=A[_+68>>2])<<5){if((a+1|0)<0)break c;pb(h,r=a>>>0<=1073741822?(a=32+(-32&a)|0)>>>0<(t<<=6)>>>0?t:a:2147483647),a=A[_+64>>2]}if(A[_+64>>2]=a+1,t=A[_+60>>2]+(a>>>3&536870908)|0,r=A[t>>2],q=t,x=Vj(a)&r,A[q>>2]=x,(0|(a=A[_+76>>2]))!=A[_+80>>2]){A[a>>2]=Y,A[_+76>>2]=a+4;break n}if((f=(t=(d=a-(Z=A[G>>2])|0)>>2)+1|0)>>>0>=1073741824)break k;if(r=d>>>1|0,d=d>>>0>=2147483644?1073741823:r>>>0>f>>>0?r:f){if(d>>>0>=1073741824)break f;r=pa(d<<2)}else r=0;if(A[(f=r+(t<<2)|0)>>2]=Y,t=f+4|0,(0|a)!=(0|Z))for(;a=a-4|0,A[(f=f-4|0)>>2]=A[a>>2],(0|a)!=(0|Z););if(A[_+80>>2]=r+(d<<2),A[_+76>>2]=t,A[_+72>>2]=f,!Z)break n;oa(Z);break n}sa(),v()}sa(),v()}if(W=A[_+8>>2],g=A[W>>2],((A[W+4>>2]-g>>2>>>0)/3|0)<=(0|D)){a=-1;break b}if(o=-1,a=-1,f=-1,Z=A[W+24>>2],t=-1,-1!=(0|Y)&&(t=-1,-1!=(0|(r=((r=Y+1|0)>>>0)%3|0?r:Y-2|0))&&(t=A[g+(r<<2)>>2])),-1!=(0|(N=A[Z+(t<<2)>>2]))?(j=1,r=-1,-1!=(0|(d=((d=N+1|0)>>>0)%3|0?d:N-2|0))&&(j=0,o=d,r=-1!=(0|(r=((r=d+1|0)>>>0)%3|0?r:o-2|0))?A[g+(r<<2)>>2]:-1)):(j=1,r=-1),-1!=(0|(d=A[(r<<2)+Z>>2]))&&(f=((f=d+1|0)>>>0)%3|0?f:d-2|0),(0|o)==(0|Y)|(0|f)==(0|Y)|-1!=(0|Y)&-1!=A[A[W+12>>2]+(Y<<2)>>2]|(0|f)==(0|o))break b;if(!j&-1!=A[A[W+12>>2]+(o<<2)>>2])break b;if(j=-1,Z=A[W+12>>2],d=-1,-1!=(0|f)){if(-1!=A[Z+(f<<2)>>2])break b;d=-1,-1!=(0|(a=((a=f+1|0)>>>0)%3|0?a:f-2|0))&&(d=A[g+(a<<2)>>2])}a=m(D,3),A[R>>2]=a,A[Z+(a<<2)>>2]=Y,A[Z+(Y<<2)>>2]=a,a=A[R>>2]+1|0,A[Z+(a<<2)>>2]=o,A[Z+(o<<2)>>2]=a,a=A[R>>2]+2|0,A[Z+(a<<2)>>2]=f,A[Z+(f<<2)>>2]=a,a=A[R>>2],A[g+(a<<2)>>2]=r,A[(Z=g+((N=a+1|0)<<2)|0)>>2]=d,A[(f=g+((d=a+2|0)<<2)|0)>>2]=t,t=A[_+120>>2],r=A[(a=t+((o=N?r:-1)>>>3&536870908)|0)>>2],q=a,x=Vj(o)&r,A[q>>2]=x,j=-1!=(0|N)?A[Z>>2]:j,r=A[(a=t+(j>>>3&536870908)|0)>>2],q=a,x=Vj(j)&r,A[q>>2]=x,a=-1,a=-1!=(0|d)?A[f>>2]:a,r=A[(o=t+(a>>>3&536870908)|0)>>2],q=o,x=Vj(a)&r,A[q>>2]=x,b[R+88|0]=1,_c(h,R+88|0),Ka(G,R),D=D+1|0,o=A[R+64>>2]}if((0|i)==(0|o))break}E=A[_+8>>2]}if(a=-1,((A[E+4>>2]-A[E>>2]>>2>>>0)/3|0)==(0|D)){if(a=A[E+28>>2]-A[E+24>>2]>>2,(0|(D=A[R+24>>2]))==(0|(t=A[R+28>>2])))break o;for(;;){if(h=A[D>>2],r=A[E+24>>2],-1==A[(f=r+((i=a-1|0)<<2)|0)>>2])for(;i=a-2|0,a=a-1|0,-1==A[(f=r+(i<<2)|0)>>2];);if(i>>>0>=h>>>0){if(A[R>>2]=E,f=A[f>>2],b[R+12|0]=1,A[R+8>>2]=f,A[R+4>>2]=f,-1!=(0|f)){for(;;){if(r=A[A[_+8>>2]>>2]+(f<<2)|0,A[r>>2]!=(0|i)){a=-1;break b}if(A[r>>2]=h,uc(R),-1==(0|(f=A[R+8>>2])))break}E=A[_+8>>2]}o=(r=A[E+24>>2])+(i<<2)|0,-1!=(0|h)&&(A[r+(h<<2)>>2]=A[o>>2]),A[o>>2]=-1,d=1<<h,o=(r=A[_+120>>2])+(h>>>3&536870908)|0,f=r+(i>>>3&536870908)|0,r=1<<i,i=A[f>>2]&r?d|A[o>>2]:A[o>>2]&~d,A[o>>2]=i,A[f>>2]=A[f>>2]&~r,a=a-1|0}if((0|t)==(0|(D=D+4|0)))break}}}}D=A[R+24>>2]}if(D&&oa(D),r=A[R+48>>2])for(;i=A[r>>2],oa(r),r=i;);r=A[R+40>>2],A[R+40>>2]=0,r&&oa(r),(r=A[R+64>>2])&&(A[R+68>>2]=r,oa(r)),Q=R+96|0;break i}sa(),v()}wa(),v()}if(o=a,-1!=(0|a)){i=(a=A[I+16>>2])+A[I>>2]|0,r=A[I+8>>2]-a|0,a=A[A[_+4>>2]+32>>2],n[a+38>>1]=u[a+38>>1],A[a>>2]=i,A[a+16>>2]=0,A[a+20>>2]=0,A[a+8>>2]=r,A[a+12>>2]=0,a=A[_+4>>2],(65535&(i=(r=u[a+36>>1])<<8|r>>>8))>>>0<=513&&(t=a=A[a+32>>2],r=A[a+16>>2],a=S+A[a+20>>2]|0,a=(r=r+z|0)>>>0<z>>>0?a+1|0:a,A[t+16>>2]=r,A[t+20>>2]=a);i:if(A[_+216>>2]!=A[_+220>>2]){if(r=A[_+8>>2],a=A[r>>2],r=A[r+4>>2],!((65535&i)>>>0>=513)){if((0|r)==(0|a))break i;for(i=0;;){if(cd(_,i)){if(i=i+3|0,r=A[_+8>>2],i>>>0<A[r+4>>2]-A[r>>2]>>2>>>0)continue;break i}break}break a}if((0|r)!=(0|a)){for(i=0;;){if(bd(_,i)){if(i=i+3|0,r=A[_+8>>2],i>>>0<A[r+4>>2]-A[r>>2]>>2>>>0)continue;break i}break}break a}}if(ad(J),(0|(i=A[_+216>>2]))!=A[_+220>>2])for(F=0;;){if(Jc(4+((t=m(F,144))+i|0)|0,A[_+8>>2]),r=A[C>>2],(0|(i=A[(a=r+t|0)+132>>2]))!=(0|(a=A[a+136>>2]))){for(;Hc(4+(t+A[C>>2]|0)|0,A[i>>2]),(0|a)!=(0|(i=i+4|0)););r=A[C>>2]}if(!Ic(4+(r+t|0)|0))break a;if(F=F+1|0,i=A[_+216>>2],!(F>>>0<(A[_+220>>2]-i|0)/144>>>0))break}if(r=A[_+8>>2],Hb(_+184|0,A[r+28>>2]-A[r+24>>2]>>2),(0|(B=A[_+216>>2]))!=A[_+220>>2])for(i=0;r=m(i,144)+B|0,a=A[r+60>>2]-A[r+56>>2]>>2,t=r+104|0,r=A[_+8>>2],Hb(t,(0|(r=A[r+28>>2]-A[r+24>>2]>>2))<(0|a)?a:r),i=i+1|0,B=A[_+216>>2],i>>>0<(A[_+220>>2]-B|0)/144>>>0;);B=$c(_,o)}}break r}B=0}return Q=e- -64|0,0|B},Da,db,Zc,ze,function di(r){oa(ze(r|=0))},jd,id,hd,gd,function gi(r){var e,a=0,i=0,f=0,t=0,o=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0,E=0,Y=0,J=0,g=0,O=0,z=0,X=0,C=0,P=0,S=0,H=0,q=0,x=0;if(Q=e=Q+-64|0,A[(r|=0)+132>>2]=0,A[r+148>>2]){if(i=A[r+144>>2])for(;f=A[i>>2],oa(i),i=f;);if(i=0,A[r+144>>2]=0,f=A[r+140>>2]){if(f>>>0>=4)for(_=-4&f;A[(t=i<<2)+A[r+136>>2]>>2]=0,A[A[r+136>>2]+(4|t)>>2]=0,A[A[r+136>>2]+(8|t)>>2]=0,A[A[r+136>>2]+(12|t)>>2]=0,i=i+4|0,(0|_)!=(0|(a=a+4|0)););if(a=3&f)for(;A[A[r+136>>2]+(i<<2)>>2]=0,i=i+1|0,(0|a)!=(0|(F=F+1|0)););}A[r+148>>2]=0}r:{e:{a:{if(i=A[r+4>>2],(a=(F=k[i+36|0])<<8|k[i+37|0])>>>0<=513){if(R=A[i+32>>2],a>>>0<=511){if(a=A[R+20>>2],_=a=(f=(t=A[R+16>>2])+4|0)>>>0<4?a+1|0:a,d=A[R+12>>2],s[R+8>>2]<f>>>0&(0|a)>=(0|d)|(0|a)>(0|d))break a;a=t+A[R>>2]|0,a=k[0|a]|k[a+1|0]<<8|k[a+2|0]<<16|k[a+3|0]<<24,A[R+16>>2]=f,A[R+20>>2]=_}else{if(!Ea(1,e,R))break a;i=A[r+4>>2],F=k[i+36|0],a=A[e>>2]}A[r+132>>2]=a}_=A[i+32>>2];i:{f:{if((255&F)>>>0<=1){if(F=0,f=A[_+20>>2],f=(a=(t=A[_+16>>2])+4|0)>>>0<4?f+1|0:f,R=A[_+12>>2],s[_+8>>2]<a>>>0&(0|R)<=(0|f)|(0|f)>(0|R))break e;t=t+A[_>>2]|0,t=k[0|t]|k[t+1|0]<<8|k[t+2|0]<<16|k[t+3|0]<<24,A[e+60>>2]=t,A[_+16>>2]=a,A[_+20>>2]=f,A[r+156>>2]=t,T=r+156|0}else{if(F=0,!Ea(1,e+60|0,_))break e;if(i=A[r+4>>2],a=k[i+36|0],A[r+156>>2]=A[e+60>>2],T=r+156|0,a>>>0>1)break f}if(_=A[i+32>>2],d=A[_+8>>2],R=A[_+12>>2],i=A[_+20>>2],t=a=(f=A[_+16>>2])+4|0,a>>>0>d>>>0&(0|(i=a>>>0<4?i+1|0:i))>=(0|R)|(0|i)>(0|R))break e;a=f+A[_>>2]|0,a=k[0|a]|k[a+1|0]<<8|k[a+2|0]<<16|k[a+3|0]<<24,A[e+56>>2]=a,A[_+16>>2]=t,A[_+20>>2]=i;break i}if(!Ea(1,e+56|0,A[i+32>>2]))break e;a=A[e+56>>2]}if(a>>>0>1431655765|s[T>>2]>m(a,3)>>>0)break e;if(o=A[r+4>>2],_=A[o+32>>2],t=A[(i=_)+8>>2],R=A[i+16>>2],(0|(h=A[i+12>>2]))<=(0|(i=f=A[i+20>>2]))&t>>>0<=R>>>0|(0|i)>(0|h))break e;if(T=A[_>>2],N=k[T+R|0],i=(d=R+1|0)?i:i+1|0,A[_+16>>2]=d,A[_+20>>2]=i,k[o+36|0]<=1){if(o=t,(0|(i=h))<=(0|(f=(t=R+5|0)>>>0<5?f+1|0:f))&t>>>0>o>>>0|(0|i)<(0|f))break e;T=k[0|(i=d+T|0)]|k[i+1|0]<<8|k[i+2|0]<<16|k[i+3|0]<<24,A[e+52>>2]=T,A[_+16>>2]=t,A[_+20>>2]=f}else{if(!Ea(1,e+52|0,_))break e;T=A[e+52>>2]}if(a>>>0<T>>>0|((T>>>0)/3|0)+T>>>0<a>>>0)break e;if(i=A[r+4>>2],R=A[i+32>>2],k[i+36|0]<=1){if(i=A[R+20>>2],i=(f=(t=A[R+16>>2])+4|0)>>>0<4?i+1|0:i,_=f,(o=s[R+8>>2]<f>>>0)&(0|(f=A[R+12>>2]))<=(0|i)|(0|i)>(0|f))break e;f=t+A[R>>2]|0,f=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[e+48>>2]=f,A[R+16>>2]=_,A[R+20>>2]=i}else{if(!Ea(1,e+48|0,R))break e;f=A[e+48>>2]}if(f>>>0>T>>>0)break e;if(A[r+28>>2]=A[r+24>>2],t=$b(pa(88)),i=A[r+8>>2],A[r+8>>2]=t,i&&(cb(i),!A[r+8>>2]))break e;if(A[r+164>>2]=A[r+160>>2],Jb(r+160|0,a),A[r+176>>2]=A[r+172>>2],Jb(r+172|0,a),A[r- -64>>2]=0,A[r+92>>2]=-1,A[r+84>>2]=-1,A[r+88>>2]=-1,A[r+40>>2]=A[r+36>>2],A[r+52>>2]=A[r+48>>2],A[r+76>>2]=A[r+72>>2],ed(g=r+216|0),dd(g,N),!Lc(A[r+8>>2],a,A[r+156>>2]+f|0))break e;if(i=A[r+156>>2],b[0|e]=1,Oa(r+120|0,i+f|0,e),i=A[r+4>>2],(a=65535&((a=u[i+36>>1])<<8|a>>>8))>>>0<=513){if(R=A[i+32>>2],a>>>0<=511){if(a=A[R+20>>2],_=a=(i=(t=A[R+16>>2])+4|0)>>>0<4?a+1|0:a,d=A[R+12>>2],s[R+8>>2]<i>>>0&(0|a)>=(0|d)|(0|a)>(0|d))break e;a=t+A[R>>2]|0,a=k[0|a]|k[a+1|0]<<8|k[a+2|0]<<16|k[a+3|0]<<24,A[R+16>>2]=i,A[R+20>>2]=_}else{if(!Ea(1,e+44|0,R))break e;a=A[e+44>>2]}if(!a)break e;if(i=A[A[r+4>>2]+32>>2],R=(t=A[i+8>>2])-(_=A[i+16>>2])|0,(0|(i=A[i+12>>2]-(A[i+20>>2]+(t>>>0<_>>>0)|0)|0))<=0&a>>>0>R>>>0|(0|i)<0)break e;if(i=Ha(e),t=A[A[r+4>>2]+32>>2],R=((_=A[t+16>>2])+A[t>>2]|0)+a|0,_=A[t+8>>2]-_|0,n[i+38>>1]=u[t+38>>1],A[i>>2]=R,A[i+16>>2]=0,A[i+20>>2]=0,A[i+8>>2]=_-a,A[i+12>>2]=0,-1==(0|(O=Ib(r,i))))break e;P=O>>31}else if(O=-1,P=-1,-1==(0|Ib(r,A[i+32>>2])))break e;Ee(t=r+232|0,r),A[r+372>>2]=N,A[r+384>>2]=A[r+156>>2]+f,_=S=Ha(e),a=0,Q=h=Q-16|0;i:{f:{if(i=A[t+144>>2],(65535&((i=u[36+(0|M[A[A[i>>2]+32>>2]](i))>>1])<<8|i>>>8))>>>0<=513){if(i=A[t+4>>2],A[t+40>>2]=A[t>>2],A[t+44>>2]=i,i=A[t+36>>2],A[t+72>>2]=A[t+32>>2],A[t+76>>2]=i,f=A[t+28>>2],A[(i=t- -64|0)>>2]=A[t+24>>2],A[i+4>>2]=f,i=A[t+20>>2],A[t+56>>2]=A[t+16>>2],A[t+60>>2]=i,i=A[t+12>>2],A[t+48>>2]=A[t+8>>2],A[t+52>>2]=i,!Db(t+40|0,1,h+8|0))break f;if(i=A[t+44>>2],A[t>>2]=A[t+40>>2],A[t+4>>2]=i,i=A[t+76>>2],A[t+32>>2]=A[t+72>>2],A[t+36>>2]=i,i=A[t+68>>2],A[t+24>>2]=A[t+64>>2],A[t+28>>2]=i,d=i=A[t+60>>2],f=A[t+56>>2],A[t+16>>2]=f,A[t+20>>2]=i,o=R=A[t+52>>2],i=A[t+48>>2],A[t+8>>2]=i,A[t+12>>2]=o,N=i-f|0,(0|(j=A[h+12>>2]))==(0|(i=o-((i>>>0<f>>>0)+d|0)|0))&N>>>0<(R=A[h+8>>2])>>>0|i>>>0<j>>>0)break f;i=d+j|0,i=(o=f)>>>0>(f=f+R|0)>>>0?i+1|0:i,A[t+16>>2]=f,A[t+20>>2]=i}if(u[t+38>>1]<=513){if(i=A[t+4>>2],A[t+96>>2]=A[t>>2],A[t+100>>2]=i,i=A[t+36>>2],A[t+128>>2]=A[t+32>>2],A[t+132>>2]=i,i=A[t+28>>2],A[t+120>>2]=A[t+24>>2],A[t+124>>2]=i,i=A[t+20>>2],A[t+112>>2]=A[t+16>>2],A[t+116>>2]=i,i=A[t+12>>2],A[t+104>>2]=A[t+8>>2],A[t+108>>2]=i,!Db(t+96|0,1,h+8|0))break f;if(i=A[t+100>>2],A[t>>2]=A[t+96>>2],A[t+4>>2]=i,i=A[t+132>>2],A[t+32>>2]=A[t+128>>2],A[t+36>>2]=i,i=A[t+124>>2],A[t+24>>2]=A[t+120>>2],A[t+28>>2]=i,d=f=A[t+116>>2],i=A[t+112>>2],A[t+16>>2]=i,A[t+20>>2]=f,o=R=A[t+108>>2],f=A[t+104>>2],A[t+8>>2]=f,A[t+12>>2]=o,N=f-i|0,(0|(j=A[h+12>>2]))==(0|(f=o-((i>>>0>f>>>0)+d|0)|0))&N>>>0<(R=A[h+8>>2])>>>0|f>>>0<j>>>0)break f;f=d+j|0,f=(o=i)>>>0>(i=i+R|0)>>>0?f+1|0:f,A[t+16>>2]=i,A[t+20>>2]=f}else if(!ta(t+80|0,t))break i;if(!Fe(t))break i;if(i=A[t+4>>2],A[_>>2]=A[t>>2],A[_+4>>2]=i,i=A[t+36>>2],A[_+32>>2]=A[t+32>>2],A[_+36>>2]=i,i=A[t+28>>2],A[_+24>>2]=A[t+24>>2],A[_+28>>2]=i,i=A[t+20>>2],A[_+16>>2]=A[t+16>>2],A[_+20>>2]=i,i=A[t+12>>2],A[_+8>>2]=A[t+8>>2],A[_+12>>2]=i,i=A[t+144>>2],(65535&((i=u[36+(0|M[A[A[i>>2]+32>>2]](i))>>1])<<8|i>>>8))>>>0<=513){if(i=A[t+144>>2],k[36+(0|M[A[A[i>>2]+32>>2]](i))|0]<=1){if(i=A[_+20>>2],i=(f=(R=A[_+16>>2])+4|0)>>>0<4?i+1|0:i,d=f,(o=s[_+8>>2]<f>>>0)&(0|(f=A[_+12>>2]))<=(0|i)|(0|i)>(0|f))break i;f=R+A[_>>2]|0,f=k[0|f]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[_+16>>2]=d,A[_+20>>2]=i}else{if(!Ea(1,h+8|0,_))break i;f=A[h+8>>2]}if(f>>>0>=(i=A[t+152>>2])>>>0)break i;if((0|(f=A[_+20>>2]))>=(0|(d=A[_+12>>2]))&(R=A[_+16>>2])>>>0>=s[_+8>>2]|(0|f)>(0|d))break i;if(d=k[R+A[_>>2]|0],f=(R=R+1|0)?f:f+1|0,A[_+16>>2]=R,A[_+20>>2]=f,d)break i;A[t+176>>2]=2,A[t+180>>2]=7}else A[t+176>>2]=2,A[t+180>>2]=7,i=A[t+152>>2];if((0|i)<0)break i;if(A[h+8>>2]=0,a=2,d=A[t+156>>2],(R=A[t+160>>2]-d>>2)>>>0<i>>>0?(Pa(t+156|0,i-R|0,h+8|0),a=A[t+176>>2],f=A[t+180>>2]):(f=7,i>>>0>=R>>>0||(A[t+160>>2]=d+(i<<2))),R=t+184|0,(a=1+(f-a|0)|0)>>>0>(f=((i=A[t+188>>2])-(d=A[t+184>>2])|0)/12|0)>>>0){if(N=0,(f=a-f|0)>>>0<=((o=A[R+8>>2])-(i=A[R+4>>2])|0)/12>>>0)f&&(i=ra(a=i,0,i=12+((i=m(f,12)-12|0)-((i>>>0)%12|0)|0)|0)+i|0),A[R+4>>2]=i;else{t:{o:{b:{if((a=(j=(i-(d=A[R>>2])|0)/12|0)+f|0)>>>0<357913942){if(D=(o=(o-d|0)/12|0)<<1,o=o>>>0>=178956970?357913941:a>>>0<D>>>0?D:a){if(o>>>0>=357913942)break b;N=pa(m(o,12))}if(j=(f=ra(a=m(j,12)+N|0,0,j=12+((f=m(f,12)-12|0)-((f>>>0)%12|0)|0)|0))+j|0,o=m(o,12)+N|0,(0|i)==(0|d))break o;for(;i=i-12|0,A[(a=a-12|0)>>2]=A[i>>2],A[a+4>>2]=A[i+4>>2],A[a+8>>2]=A[i+8>>2],A[i+8>>2]=0,A[i>>2]=0,A[i+4>>2]=0,(0|i)!=(0|d););if(A[R+8>>2]=o,f=A[R+4>>2],A[R+4>>2]=j,i=A[R>>2],A[R>>2]=a,(0|i)==(0|f))break t;for(;(d=A[(a=f-12|0)>>2])&&(A[f-8>>2]=d,oa(d)),f=a,(0|a)!=(0|i););break t}break r}wa(),v()}A[R+8>>2]=o,A[R+4>>2]=j,A[R>>2]=f}i&&oa(i)}f=A[t+188>>2]}else if(a>>>0>=f>>>0)f=i;else{if((0|(f=d+m(a,12)|0))!=(0|i))for(;(d=A[(a=i-12|0)>>2])&&(A[i-8>>2]=d,oa(d)),i=a,(0|f)!=(0|a););A[t+188>>2]=f}if(o=t+196|0,i=(f-(a=A[t+184>>2])|0)/12|0,N=A[t+196>>2],i>>>0>(d=A[t+200>>2]-N>>2)>>>0?(ya(o,i-d|0),a=A[t+184>>2],f=A[t+188>>2]):i>>>0>=d>>>0||(A[t+200>>2]=N+(i<<2)),(0|a)==(0|f)){a=1;break i}for(i=0;;){if(!Ea(1,h+8|0,_))break f;if(a=A[t+148>>2],(f=(A[a+4>>2]-A[a>>2]>>2>>>0)/3|0)>>>0<(a=A[h+8>>2])>>>0)break f;if(a&&(d=(j=m(i,12))+A[R>>2]|0,f=A[d>>2],(N=A[d+4>>2]-f>>2)>>>0<a>>>0?(ya(d,a-N|0),f=A[j+A[R>>2]>>2]):a>>>0>=N>>>0||(A[d+4>>2]=(a<<2)+f),kd(a,1,_,f),A[A[o>>2]+(i<<2)>>2]=a),a=1,!((i=i+1|0)>>>0<(A[t+188>>2]-A[t+184>>2]|0)/12>>>0))break}break i}a=0}Q=h+16|0;i:if(a){f=0,i=0,_=0,R=0,N=0,Q=D=Q-96|0,A[D+72>>2]=0,A[D+64>>2]=0,A[D+68>>2]=0,A[D+48>>2]=0,A[D+52>>2]=0,A[D+40>>2]=0,A[D+44>>2]=0,A[D+56>>2]=1065353216,A[D+32>>2]=0,A[D+24>>2]=0,A[D+28>>2]=0,h=r,C=A[r+124>>2];f:{t:{o:{b:{n:if(!((0|T)<=0)){for(G=h+232|0,H=A[h+216>>2]!=A[h+220>>2],z=1;;){R=(d=R)+1|0;A:{if(-1==(0|(r=A[G+172>>2])))a=7,r=A[G+144>>2],(65535&((r=u[36+(0|M[A[A[r>>2]+32>>2]](r))>>1])<<8|r>>>8))>>>0>513|!k[G+76|0]||(a=0,(r=(U=A[G- -64>>2])+((j=A[G+72>>2])>>>3|0)|0)>>>0>=(V=A[G+68>>2])>>>0||(o=k[0|r],r=j+1|0,A[G+72>>2]=r,(o=o>>>(7&j)&1)&&((a=U+(W=r>>>3|0)|0)>>>0>=V>>>0?(a=r,r=0):(Z=k[0|a],a=j+2|0,A[G+72>>2]=a,W=a>>>3|0,r=Z>>>(7&r)&1),(j=U+W|0)>>>0<V>>>0?(j=k[0|j],A[G+72>>2]=a+1,a=j>>>(7&a)<<1&2):a=0,a=(r|a)<<1|o)));else{if(a=A[G+196>>2]+(r<<2)|0,r=(o=A[a>>2])-1|0,A[a>>2]=r,a=9,(0|o)<=0)break A;if((r=A[A[A[G+184>>2]+m(A[G+172>>2],12)>>2]+(r<<2)>>2])>>>0>4)break A;a=A[12144+(r<<2)>>2]}A[G+168>>2]=a}A:{if(r=a){a=-1;k:{c:{u:{s:{p:{_:{l:{d:{y:switch(r-1|0){case 2:case 4:if((0|i)==(0|_))break b;if(f=A[(Z=i-4|0)>>2],o=A[h+8>>2],U=A[o+12>>2],-1!=(0|f)&-1!=A[U+(f<<2)>>2])break b;if(j=m(d,3),A[(B=(W=j+((V=5==(0|r))?2:1)|0)<<2)+U>>2]=f,A[U+(f<<2)>>2]=W,Ka(o+24|0,11424),r=A[h+8>>2],U=A[r+24>>2],A[r+28>>2]-U>>2>(0|C))break b;if(E=(r=A[r>>2])+B|0,B=((a=A[o+28>>2])-(o=A[o+24>>2])>>2)-1|0,A[E>>2]=B,(0|a)!=(0|o)&&(A[U+(B<<2)>>2]=W),a=V?j:j+2|0,W=r+(j+V<<2)|0,-1!=(0|f)){m:{v:{if((f>>>0)%3|0)o=f-1|0;else if(-1==(0|(o=f+2|0)))break v;if(o=A[r+(o<<2)>>2],A[r+(a<<2)>>2]=o,-1==(0|o))break m;A[U+(o<<2)>>2]=a;break m}A[r+(a<<2)>>2]=-1}a=-1,-1!=(0|(f=((o=f+1|0)>>>0)%3|0?o:f-2|0))&&(a=A[r+(f<<2)>>2])}else A[r+(a<<2)>>2]=-1,a=-1;A[W>>2]=a,A[Z>>2]=j;break d;case 0:if((0|i)==(0|f))break b;U=A[(r=i-4|0)>>2],A[D+68>>2]=r;m:if(V=A[D+44>>2])if(o=A[D+40>>2],a=d&V+2147483647,(W=Uj(V)>>>0>1)&&((a=d)>>>0<V>>>0||(a=(d>>>0)%(V>>>0)|0)),a=A[o+((j=a)<<2)>>2])if(a=A[a>>2]){v:{if(!W){for(o=V-1|0;;){R:{if((0|(V=A[a+4>>2]))!=(0|d)){if((0|j)==(o&V))break R;i=r;break m}if((0|d)==A[a+8>>2])break v}if(!(a=A[a>>2]))break}i=r;break m}for(;;){R:{if((0|(o=A[a+4>>2]))!=(0|d)){if(o>>>0>=V>>>0&&(o=(o>>>0)%(V>>>0)|0),(0|o)==(0|j))break R;i=r;break m}if((0|d)==A[a+8>>2])break v}if(!(a=A[a>>2]))break}i=r;break m}if((0|r)==(0|I)){if((i=(_=(r=I-f|0)>>2)+1|0)>>>0>=1073741824)break r;if(o=r>>>1|0,o=r>>>0>=2147483644?1073741823:i>>>0<o>>>0?o:i){if(o>>>0>=1073741824)break t;r=pa(o<<2)}else r=0;if(A[(_=r+(_<<2)|0)>>2]=A[a+12>>2],i=_+4|0,(0|f)!=(0|I))for(;I=I-4|0,A[(_=_-4|0)>>2]=A[I>>2],(0|f)!=(0|I););I=r+(o<<2)|0,A[D+72>>2]=I,A[D+68>>2]=i,A[D+64>>2]=_,f&&oa(f)}else A[r>>2]=A[a+12>>2],A[D+68>>2]=i}else i=r;else i=r;else i=r;if((0|i)==(0|_))break c;if((0|(r=A[(B=i-4|0)>>2]))==(0|U))break c;if(a=-1==(0|r),V=A[h+8>>2],!a&-1!=A[A[V+12>>2]+(r<<2)>>2])break c;if(W=A[V+12>>2],-1!=(0|U)&-1!=A[W+(U<<2)>>2])break c;if(Z=(j=m(d,3))+2|0,A[W+(r<<2)>>2]=Z,A[(d=Z<<2)+W>>2]=r,f=j+1|0,A[W+(U<<2)>>2]=f,A[(E=f<<2)+W>>2]=U,a)break _;if((r>>>0)%3|0){o=r-1|0;break p}if(-1!=(0|(o=r+2|0)))break p;f=A[V>>2],o=-1;break s;case 6:break y;default:break b}if(Ka((j=A[h+8>>2])+24|0,11424),o=A[h+8>>2],r=m(d,3),Z=(j=(W=(U=A[j+28>>2])-(V=A[j+24>>2])|0)>>2)-1|0,A[A[o>>2]+(r<<2)>>2]=Z,Ka(o+24|0,11424),B=r+1|0,A[A[o>>2]+(B<<2)>>2]=(A[o+28>>2]-A[o+24>>2]>>2)-1,Ka((o=A[h+8>>2])+24|0,11424),E=r+2|0,A[A[o>>2]+(E<<2)>>2]=(A[o+28>>2]-A[o+24>>2]>>2)-1,X=A[h+8>>2],o=A[X+24>>2],A[X+28>>2]-o>>2>(0|C))break b;if(((0|U)!=(0|V)&&(A[o+(Z<<2)>>2]=r,a=0,-4==(0|W))||(A[o+(j<<2)>>2]=B,-1!=(0|(a=j+1|0))))&&(A[o+(a<<2)>>2]=E),(0|i)!=(0|I)){A[i>>2]=r,i=i+4|0,A[D+68>>2]=i;break l}if((_=(j=(a=i-f|0)>>2)+1|0)>>>0>=1073741824)break r;if(o=a>>>1|0,a=a>>>0>=2147483644?1073741823:_>>>0<o>>>0?o:_){if(a>>>0>=1073741824)break t;o=pa(a<<2)}else o=0;if(A[(_=o+(j<<2)|0)>>2]=r,I=o+(a<<2)|0,r=_+4|0,(0|i)!=(0|f))for(;i=i-4|0,A[(_=_-4|0)>>2]=A[i>>2],(0|i)!=(0|f););A[D+72>>2]=I,A[D+68>>2]=r,A[D+64>>2]=_,f&&oa(f),i=r}f=_}if(Ce(G,A[i-4>>2]),(0|(r=A[h+40>>2]))==A[h+36>>2])break A;if((o=A[(a=r-12|0)+4>>2])>>>0>(d=~d+T|0)>>>0)break c;if((0|o)!=(0|d))break A;if(j=k[r-4|0],o=A[a>>2],A[h+40>>2]=a,(0|o)<0)break c;r=A[(U=i-4|0)>>2],A[D+20>>2]=~o+T,a=D+20|0,A[D+88>>2]=a,Gb(D,D+40|0,a,D+88|0),o=A[D>>2];l:if(1&j){if(a=-1,-1==(0|r))break l;a=((a=r+1|0)>>>0)%3|0?a:r-2|0}else a=-1,-1!=(0|r)&&(a=r-1|0,(r>>>0)%3|0||(a=r+2|0));if(A[o+12>>2]=a,(0|(a=A[h+40>>2]))==A[h+36>>2])break A;for(;;){if((o=A[(r=a-12|0)+4>>2])>>>0>d>>>0)break c;if((0|o)!=(0|d))break A;if(o=k[a-4|0],a=A[r>>2],A[h+40>>2]=r,(0|a)<0)break c;r=A[U>>2],A[D+20>>2]=~a+T,a=D+20|0,A[D+88>>2]=a,Gb(D,D+40|0,a,D+88|0),j=A[D>>2];l:if(1&o){if(a=-1,-1==(0|r))break l;a=((a=r+1|0)>>>0)%3|0?a:r-2|0}else a=-1,-1!=(0|r)&&(a=r-1|0,(r>>>0)%3|0||(a=r+2|0));if(A[j+12>>2]=a,(0|(a=A[h+40>>2]))==A[h+36>>2])break}break A}o=-1,f=A[V>>2],A[f+(j<<2)>>2]=-1,a=-1;break u}f=A[V>>2],o=A[f+(o<<2)>>2]}A[(j<<2)+f>>2]=o,a=-1,-1!=(0|(r=((X=r+1|0)>>>0)%3|0?X:r-2|0))&&(a=A[(r<<2)+f>>2])}if(A[f+E>>2]=a,-1!=(0|U)){u:{s:{if((U>>>0)%3|0)a=U-1|0;else if(-1==(0|(a=U+2|0)))break s;if(r=A[(a<<2)+f>>2],A[f+d>>2]=r,-1==(0|r))break u;A[A[V+24>>2]+(r<<2)>>2]=Z;break u}A[f+d>>2]=-1}Z=-1,r=-1,-1!=(0|(a=((a=U+1|0)>>>0)%3|0?a:U-2|0))&&(Z=A[(a<<2)+f>>2],r=a)}else A[f+d>>2]=-1,Z=-1,r=-1;for(U=(a=A[h+388>>2])+(d=o<<2)|0,E=a,a=Z<<2,A[U>>2]=A[U>>2]+A[E+a>>2],U=(U=a)+(a=A[V+24>>2])|0,-1!=(0|o)&&(A[a+d>>2]=A[U>>2]),a=r;;){if(-1==(0|a))break k;if(A[(a<<2)+f>>2]=o,d=-1,-1!=(0|(a=((V=a+1|0)>>>0)%3|0?V:a-2|0))&&(d=-1,-1!=(0|(a=A[W+(a<<2)>>2]))&&(d=((d=a+1|0)>>>0)%3|0?d:a-2|0)),(0|r)==(0|(a=d)))break}}if(a=-1,!z)break n;break b}if(A[U>>2]=-1,!H)if((0|Y)==(0|J)){if((a=(d=(r=Y-N|0)>>2)+1|0)>>>0>=1073741824)break r;if(f=r>>>1|0,f=r>>>0>=2147483644?1073741823:a>>>0<f>>>0?f:a){if(f>>>0>=1073741824)break t;r=pa(f<<2)}else r=0;if(A[(a=r+(d<<2)|0)>>2]=Z,J=a+4|0,(0|N)!=(0|Y))for(;Y=Y-4|0,A[(a=a-4|0)>>2]=A[Y>>2],(0|N)!=(0|Y););Y=r+(f<<2)|0,A[D+32>>2]=Y,A[D+28>>2]=J,A[D+24>>2]=a,N&&oa(N),N=a}else A[J>>2]=Z,J=J+4|0,A[D+28>>2]=J;A[B>>2]=j}else{if((0|i)==(0|_)){a=-1;break b}if(f=-1,U=A[h+8>>2],Z=A[U+24>>2],r=-1,-1!=(0|(o=A[(z=i-4|0)>>2]))&&(r=-1,-1!=(0|(j=((j=o+1|0)>>>0)%3|0?j:o-2|0))&&(r=A[A[U>>2]+(j<<2)>>2])),-1!=(0|(a=A[Z+(r<<2)>>2]))&&(f=((f=a+1|0)>>>0)%3|0?f:a-2|0),(0|f)==(0|o)){a=-1;break b}if(-1!=(0|o)&&(a=-1,-1!=A[A[U+12>>2]+(o<<2)>>2]))break b;if(j=A[U+12>>2],-1!=(0|f)&&(a=-1,-1!=A[j+(f<<2)>>2]))break b;a=(V=m(d,3))+1|0,A[j+(o<<2)>>2]=a,A[(B=a<<2)+j>>2]=o,W=V+2|0,A[j+(f<<2)>>2]=W,A[(E=W<<2)+j>>2]=f,j=-1,d=-1;k:if(-1!=(0|o)){if((o>>>0)%3|0)a=o-1|0;else if(d=-1,-1==(0|(a=o+2|0)))break k;d=A[A[U>>2]+(a<<2)>>2]}if(-1!=(0|f)&&-1!=(0|(a=((a=f+1|0)>>>0)%3|0?a:f-2|0))&&(j=A[A[U>>2]+(a<<2)>>2]),a=-1,(0|r)==(0|d)|(0|r)==(0|j))break b;a=A[U>>2],A[a+(V<<2)>>2]=r,A[a+B>>2]=j,A[a+E>>2]=d,-1!=(0|d)&&(A[Z+(d<<2)>>2]=W),a=A[h+120>>2]+(r>>>3&536870908)|0,f=A[a>>2],q=a,x=Vj(r)&f,A[q>>2]=x,A[z>>2]=V,j=A[i-4>>2]}Ce(G,j),f=_}if(z=(0|R)<(0|T),(0|R)==(0|T))break}R=T}if(a=-1,f=A[h+8>>2],!(A[f+28>>2]-A[f+24>>2]>>2>(0|C))){if((0|i)!=(0|_)){for(I=h+72|0,d=h+60|0,V=h+312|0;;){N=A[(i=i-4|0)>>2],A[D+68>>2]=i;n:{A:{k:{if(u[h+270>>1]<=513){if(!k[h+364|0])break A;if(r=A[h+360>>2],(a=A[h+352>>2]+(r>>>3|0)|0)>>>0>=s[h+356>>2])break k;if(a=k[0|a],A[h+360>>2]=r+1,!(a>>>(7&r)&1))break k;break A}if(Ba(V))break A}if((0|(a=A[h+64>>2]))==(r=A[h+68>>2])<<5){if((a+1|0)<0)break r;pb(d,r=a>>>0<=1073741822?(r<<=6)>>>0>(a=32+(-32&a)|0)>>>0?r:a:2147483647),a=A[h+64>>2]}if(A[h+64>>2]=a+1,r=A[h+60>>2]+(a>>>3&536870908)|0,f=A[r>>2],q=r,x=Vj(a)&f,A[q>>2]=x,(0|(a=A[h+76>>2]))!=A[h+80>>2]){A[a>>2]=N,A[h+76>>2]=a+4;break n}if((o=(j=(r=a-(f=A[I>>2])|0)>>2)+1|0)>>>0<1073741824){if(T=r>>>1|0,T=r>>>0>=2147483644?1073741823:o>>>0<T>>>0?T:o){if(T>>>0>=1073741824)break t;r=pa(T<<2)}else r=0;if(A[(o=r+(j<<2)|0)>>2]=N,N=o+4|0,(0|a)!=(0|f))for(;a=a-4|0,A[(o=o-4|0)>>2]=A[a>>2],(0|a)!=(0|f););if(A[h+80>>2]=r+(T<<2),A[h+76>>2]=N,A[h+72>>2]=o,!f)break n;oa(f);break n}break r}if(U=A[h+8>>2],G=A[U>>2],((A[U+4>>2]-G>>2>>>0)/3|0)<=(0|R)){a=-1;break b}if(f=-1,W=A[U+24>>2],T=-1,-1!=(0|N)&&(T=-1,-1!=(0|(_=((_=N+1|0)>>>0)%3|0?_:N-2|0))&&(T=A[G+(_<<2)>>2])),-1!=(0|(r=A[W+(T<<2)>>2]))?(j=1,o=-1,-1!=(0|(r=((a=r+1|0)>>>0)%3|0?a:r-2|0))&&(j=0,f=r,-1!=(0|(a=((a=r+1|0)>>>0)%3|0?a:r-2|0))&&(o=A[G+(a<<2)>>2]))):(j=1,o=-1),a=-1,_=-1,-1!=(0|(r=A[W+(o<<2)>>2]))&&(_=((_=r+1|0)>>>0)%3|0?_:r-2|0),(0|f)==(0|N)|(0|_)==(0|N)|-1!=(0|N)&-1!=A[A[U+12>>2]+(N<<2)>>2]|(0|f)==(0|_))break b;if(!j&-1!=A[A[U+12>>2]+(f<<2)>>2])break b;if(j=-1,r=A[U+12>>2],U=-1,-1!=(0|_)){if(-1!=A[r+(_<<2)>>2])break b;U=-1,-1!=(0|(a=((a=_+1|0)>>>0)%3|0?a:_-2|0))&&(U=A[G+(a<<2)>>2])}a=m(R,3),A[D>>2]=a,A[r+(a<<2)>>2]=N,A[r+(N<<2)>>2]=a,a=A[D>>2]+1|0,A[r+(a<<2)>>2]=f,A[r+(f<<2)>>2]=a,a=A[D>>2]+2|0,A[r+(a<<2)>>2]=_,A[r+(_<<2)>>2]=a,r=A[D>>2],A[G+(r<<2)>>2]=o,A[(f=G+((a=r+1|0)<<2)|0)>>2]=U,A[(N=G+((_=r+2|0)<<2)|0)>>2]=T,r=A[h+120>>2],G=A[(T=r+((o=a?o:-1)>>>3&536870908)|0)>>2],q=T,x=Vj(o)&G,A[q>>2]=x,j=-1!=(0|a)?A[f>>2]:j,f=A[(a=r+(j>>>3&536870908)|0)>>2],q=a,x=Vj(j)&f,A[q>>2]=x,a=-1,a=-1!=(0|_)?A[N>>2]:a,f=A[(r=r+(a>>>3&536870908)|0)>>2],q=r,x=Vj(a)&f,A[q>>2]=x,b[D+88|0]=1,_c(d,D+88|0),Ka(I,D),R=R+1|0,_=A[D+64>>2]}if((0|i)==(0|_))break}f=A[h+8>>2]}if(a=-1,((A[f+4>>2]-A[f>>2]>>2>>>0)/3|0)==(0|R)){if(a=A[f+28>>2]-A[f+24>>2]>>2,(0|(R=A[D+24>>2]))==(0|(o=A[D+28>>2])))break o;for(;;){if(r=A[R>>2],d=A[f+24>>2],-1==A[(_=d+((i=a-1|0)<<2)|0)>>2])for(;i=a-2|0,a=a-1|0,-1==A[(_=d+(i<<2)|0)>>2];);if(r>>>0<=i>>>0){if(A[D>>2]=f,_=A[_>>2],b[D+12|0]=1,A[D+8>>2]=_,A[D+4>>2]=_,-1!=(0|_)){for(;;){if(f=A[A[h+8>>2]>>2]+(_<<2)|0,A[f>>2]!=(0|i)){a=-1;break b}if(A[f>>2]=r,uc(D),-1==(0|(_=A[D+8>>2])))break}f=A[h+8>>2]}_=(d=A[f+24>>2])+(i<<2)|0,-1!=(0|r)&&(A[d+(r<<2)>>2]=A[_>>2]),A[_>>2]=-1,_=1<<r,r=(d=A[h+120>>2])+(r>>>3&536870908)|0,d=d+(i>>>3&536870908)|0,i=1<<i,A[d>>2]&i?_|=A[r>>2]:_=A[r>>2]&~_,A[r>>2]=_,A[d>>2]=A[d>>2]&~i,a=a-1|0}if((0|o)==(0|(R=R+4|0)))break}}}}R=A[D+24>>2]}if(R&&oa(R),r=A[D+48>>2])for(;i=A[r>>2],oa(r),r=i;);r=A[D+40>>2],A[D+40>>2]=0,r&&oa(r),(r=A[D+64>>2])&&(A[D+68>>2]=r,oa(r)),Q=D+96|0;break f}wa(),v()}if(-1!=(0|a)){f=(i=A[(r=S)+16>>2])+A[r>>2]|0,i=A[r+8>>2]-i|0,r=A[A[h+4>>2]+32>>2],n[r+38>>1]=u[r+38>>1],A[r>>2]=f,A[r+16>>2]=0,A[r+20>>2]=0,A[r+8>>2]=i,A[r+12>>2]=0,r=A[h+4>>2],(65535&(_=(i=u[r+36>>1])<<8|i>>>8))>>>0<=513&&(r=A[r+32>>2],i=A[r+16>>2],f=P+A[r+20>>2]|0,f=(i=i+O|0)>>>0<O>>>0?f+1|0:f,A[r+16>>2]=i,A[r+20>>2]=f);f:if(A[h+216>>2]!=A[h+220>>2]){if(i=A[h+8>>2],r=A[i>>2],i=A[i+4>>2],!((65535&_)>>>0>=513)){if((0|r)==(0|i))break f;for(i=0;;){if(cd(h,i)){if(i=i+3|0,r=A[h+8>>2],i>>>0<A[r+4>>2]-A[r>>2]>>2>>>0)continue;break f}break}break i}if((0|r)!=(0|i)){for(i=0;;){if(bd(h,i)){if(i=i+3|0,r=A[h+8>>2],i>>>0<A[r+4>>2]-A[r>>2]>>2>>>0)continue;break f}break}break i}}if(ad(t),(0|(i=A[h+216>>2]))!=A[h+220>>2])for(T=0;;){if(Jc(4+((f=m(T,144))+i|0)|0,A[h+8>>2]),r=A[g>>2],(0|(i=A[(t=r+f|0)+132>>2]))!=(0|(t=A[t+136>>2]))){for(;Hc(4+(f+A[g>>2]|0)|0,A[i>>2]),(0|t)!=(0|(i=i+4|0)););r=A[g>>2]}if(!Ic(4+(r+f|0)|0))break i;if(T=T+1|0,i=A[h+216>>2],!(T>>>0<(A[h+220>>2]-i|0)/144>>>0))break}if(r=A[h+8>>2],Hb(h+184|0,A[r+28>>2]-A[r+24>>2]>>2),(0|(F=A[h+216>>2]))!=A[h+220>>2])for(i=0;r=m(i,144)+F|0,f=A[r+60>>2]-A[r+56>>2]>>2,o=r+104|0,r=A[h+8>>2],Hb(o,(0|(r=A[r+28>>2]-A[r+24>>2]>>2))<(0|f)?f:r),i=i+1|0,F=A[h+216>>2],i>>>0<(A[h+220>>2]-F|0)/144>>>0;);F=$c(h,a)}}break e}F=0}return Q=e- -64|0,0|F}sa(),v()},Da,db,Zc,He,function ci(r){var e=0;A[(r|=0)>>2]=11872,(e=A[r+48>>2])&&(A[r+52>>2]=e,oa(e)),A[r>>2]=12124,(e=A[r+36>>2])&&oa(e),(e=A[r+24>>2])&&oa(e),oa(r)},Ie,function bi(r){var e=0;return A[(r|=0)>>2]=12124,(e=A[r+36>>2])&&oa(e),(e=A[r+24>>2])&&oa(e),0|r},function ai(r){var e=0;A[(r|=0)>>2]=12124,(e=A[r+36>>2])&&oa(e),(e=A[r+24>>2])&&oa(e),oa(r)},function Zh(r){var e=0;return A[(r|=0)+8>>2]=12384,A[r>>2]=12172,(e=A[r+96>>2])&&(A[r+100>>2]=e,oa(e)),(e=A[r+80>>2])&&(A[r+84>>2]=e,oa(e)),(e=A[r+68>>2])&&(A[r+72>>2]=e,oa(e)),(e=A[r+56>>2])&&(A[r+60>>2]=e,oa(e)),A[r+8>>2]=12620,(e=A[r+44>>2])&&oa(e),(e=A[r+32>>2])&&oa(e),0|r},function Yh(r){var e=0;A[(r|=0)+8>>2]=12384,A[r>>2]=12172,(e=A[r+96>>2])&&(A[r+100>>2]=e,oa(e)),(e=A[r+80>>2])&&(A[r+84>>2]=e,oa(e)),(e=A[r+68>>2])&&(A[r+72>>2]=e,oa(e)),(e=A[r+56>>2])&&(A[r+60>>2]=e,oa(e)),A[r+8>>2]=12620,(e=A[r+44>>2])&&oa(e),(e=A[r+32>>2])&&oa(e),oa(r)},function Xh(r,e){e|=0;var a,i=0,f=0,t=0,o=0,n=0,k=0,u=0,s=0,_=0,d=0,R=0,h=0;i=A[(r|=0)+12>>2],f=A[r+108>>2],t=A[f+80>>2],b[e+84|0]=0,a=e+68|0,k=A[e+68>>2],(o=A[e+72>>2]-k>>2)>>>0<t>>>0?(qb(a,t-o|0,12372),f=A[r+108>>2],t=A[f+80>>2]):t>>>0>=o>>>0||(A[e+72>>2]=k+(t<<2)),k=((e=A[f+100>>2])-(o=A[f+96>>2])|0)/12|0,_=1;r:if((0|e)!=(0|o))for(R=k>>>0<=1?1:k,h=A[i>>2],i=0,f=o,e=0,_=0;;){if(-1==(0|(u=A[(i=(i<<2)+h|0)>>2])))break r;if((n=A[f>>2])>>>0>=t>>>0)break r;if(d=A[A[r+112>>2]+12>>2],(s=A[d+(u<<2)>>2])>>>0>=t>>>0)break r;if(u=A[a>>2],A[u+(n<<2)>>2]=s,-1==(0|(n=A[i+4>>2])))break r;if((s=A[f+4>>2])>>>0>=t>>>0)break r;if((n=A[(n<<2)+d>>2])>>>0>=t>>>0)break r;if(A[u+(s<<2)>>2]=n,-1==(0|(i=A[i+8>>2])))break r;if((f=A[f+8>>2])>>>0>=t>>>0)break r;if((i=A[(i<<2)+d>>2])>>>0>=t>>>0)break r;if(A[u+(f<<2)>>2]=i,_=k>>>0<=(e=e+1|0)>>>0,(0|e)==(0|R))break r;if(i=m(e,3),f=o+m(e,12)|0,1431655765==(0|e))break}return 0|_},function Wh(r){var e,a=0,i=0,f=0,t=0,o=0,b=0;Q=e=Q-16|0,t=A[(r|=0)+4>>2],f=A[t>>2];r:{if(a=A[r+12>>2],!((o=(i=A[a+28>>2]-A[a+24>>2]|0)>>2)>>>0<=A[t+8>>2]-f>>2>>>0)){if((0|i)<0)break r;if(a=A[t+4>>2],o=(i=pa(i))+(o<<2)|0,i=b=i+(a-f&-4)|0,(0|a)!=(0|f))for(;a=a-4|0,A[(i=i-4|0)>>2]=A[a>>2],(0|a)!=(0|f););A[t+8>>2]=o,A[t+4>>2]=b,A[t>>2]=i,f&&oa(f)}a=A[r+12>>2],i=A[a+28>>2],a=A[a+24>>2],A[e+12>>2]=0,a=i-a>>2,t=A[(f=r+96|0)>>2],a>>>0>(i=A[r+100>>2]-t>>2)>>>0?Pa(f,a-i|0,e+12|0):a>>>0>=i>>>0||(A[r+100>>2]=t+(a<<2)),t=r+8|0;e:if(a=A[r+116>>2]){if((0|(f=A[a>>2]))==A[a+4>>2]){i=1;break e}for(a=0;;){if(!(i=ye(t,A[(a<<2)+f>>2])))break e;if(o=A[r+116>>2],f=A[o>>2],!((a=a+1|0)>>>0<A[o+4>>2]-f>>2>>>0))break}}else if(i=1,r=A[r+12>>2],!((r=A[r+4>>2]-A[r>>2]|0)>>>0<12))for(r=(r>>2>>>0)/3|0,a=0;;){if(!(i=ye(t,m(a,3))))break e;if((0|r)==(0|(a=a+1|0)))break}return Q=e+16|0,0|i}sa(),v()},function _h(r){var e=0;return A[(r|=0)>>2]=12384,(e=A[r+88>>2])&&(A[r+92>>2]=e,oa(e)),(e=A[r+72>>2])&&(A[r+76>>2]=e,oa(e)),(e=A[r+60>>2])&&(A[r- -64>>2]=e,oa(e)),(e=A[r+48>>2])&&(A[r+52>>2]=e,oa(e)),A[r>>2]=12620,(e=A[r+36>>2])&&oa(e),(e=A[r+24>>2])&&oa(e),0|r},function Vh(r){var e=0;A[(r|=0)>>2]=12384,(e=A[r+88>>2])&&(A[r+92>>2]=e,oa(e)),(e=A[r+72>>2])&&(A[r+76>>2]=e,oa(e)),(e=A[r+60>>2])&&(A[r- -64>>2]=e,oa(e)),(e=A[r+48>>2])&&(A[r+52>>2]=e,oa(e)),A[r>>2]=12620,(e=A[r+36>>2])&&oa(e),(e=A[r+24>>2])&&oa(e),oa(r)},function $h(r,e,a){e|=0,a|=0;var i,f=0;Q=i=Q-16|0,A[(r|=0)+4>>2]=e,f=A[e>>2],e=A[e+4>>2],b[i+15|0]=0,Oa(r+24|0,(e-f>>2>>>0)/3|0,i+15|0),e=A[r+4>>2],f=A[e+28>>2],e=A[e+24>>2],b[i+14|0]=0,Oa(r+36|0,f-e>>2,i+14|0),e=A[a+12>>2],A[r+16>>2]=A[a+8>>2],A[r+20>>2]=e,e=A[a+4>>2],A[r+8>>2]=A[a>>2],A[r+12>>2]=e,Q=i+16|0},function Uh(r){var e=0;return A[(r|=0)>>2]=12620,(e=A[r+36>>2])&&oa(e),(e=A[r+24>>2])&&oa(e),0|r},function Th(r){var e=0;A[(r|=0)>>2]=12620,(e=A[r+36>>2])&&oa(e),(e=A[r+24>>2])&&oa(e),oa(r)},function Rh(r){var e=0;return A[(r|=0)+8>>2]=12804,A[r>>2]=12640,(e=A[r+56>>2])&&(A[r+60>>2]=e,oa(e)),A[r+8>>2]=12620,(e=A[r+44>>2])&&oa(e),(e=A[r+32>>2])&&oa(e),0|r},function Qh(r){var e=0;A[(r|=0)+8>>2]=12804,A[r>>2]=12640,(e=A[r+56>>2])&&(A[r+60>>2]=e,oa(e)),A[r+8>>2]=12620,(e=A[r+44>>2])&&oa(e),(e=A[r+32>>2])&&oa(e),oa(r)},function Ph(r,e){e|=0;var a,i=0,f=0,t=0,o=0,n=0,k=0,u=0,s=0,_=0,d=0,R=0,h=0;i=A[(r|=0)+12>>2],f=A[r+68>>2],t=A[f+80>>2],b[e+84|0]=0,a=e+68|0,k=A[e+68>>2],(o=A[e+72>>2]-k>>2)>>>0<t>>>0?(qb(a,t-o|0,12372),f=A[r+68>>2],t=A[f+80>>2]):t>>>0>=o>>>0||(A[e+72>>2]=k+(t<<2)),k=((e=A[f+100>>2])-(o=A[f+96>>2])|0)/12|0,_=1;r:if((0|e)!=(0|o))for(R=k>>>0<=1?1:k,h=A[i>>2],i=0,f=o,e=0,_=0;;){if(-1==(0|(u=A[(i=(i<<2)+h|0)>>2])))break r;if((n=A[f>>2])>>>0>=t>>>0)break r;if(d=A[A[r+72>>2]+12>>2],(s=A[d+(u<<2)>>2])>>>0>=t>>>0)break r;if(u=A[a>>2],A[u+(n<<2)>>2]=s,-1==(0|(n=A[i+4>>2])))break r;if((s=A[f+4>>2])>>>0>=t>>>0)break r;if((n=A[(n<<2)+d>>2])>>>0>=t>>>0)break r;if(A[u+(s<<2)>>2]=n,-1==(0|(i=A[i+8>>2])))break r;if((f=A[f+8>>2])>>>0>=t>>>0)break r;if((i=A[(i<<2)+d>>2])>>>0>=t>>>0)break r;if(A[u+(f<<2)>>2]=i,_=k>>>0<=(e=e+1|0)>>>0,(0|e)==(0|R))break r;if(i=m(e,3),f=o+m(e,12)|0,1431655765==(0|e))break}return 0|_},function Oh(r){var e=0,a=0,i=0,f=0,t=0,o=0;f=A[(r|=0)+4>>2],i=A[f>>2];r:{if(e=A[r+12>>2],!((t=(a=A[e+28>>2]-A[e+24>>2]|0)>>2)>>>0<=A[f+8>>2]-i>>2>>>0)){if((0|a)<0)break r;if(e=A[f+4>>2],t=(a=pa(a))+(t<<2)|0,a=o=a+(e-i&-4)|0,(0|e)!=(0|i))for(;e=e-4|0,A[(a=a-4|0)>>2]=A[e>>2],(0|e)!=(0|i););A[f+8>>2]=t,A[f+4>>2]=o,A[f>>2]=a,i&&oa(i)}f=r+8|0;e:if(e=A[r+76>>2]){if((0|(i=A[e>>2]))==A[e+4>>2])return 1;for(e=0;;){if(!(a=xe(f,A[(e<<2)+i>>2])))break e;if(t=A[r+76>>2],i=A[t>>2],!((e=e+1|0)>>>0<A[t+4>>2]-i>>2>>>0))break}}else if(a=1,r=A[r+12>>2],!((r=A[r+4>>2]-A[r>>2]|0)>>>0<12))for(r=(r>>2>>>0)/3|0,e=0;;){if(!(a=xe(f,m(e,3))))break e;if((0|r)==(0|(e=e+1|0)))break}return 0|a}sa(),v()},function Sh(r){var e=0;return A[(r|=0)>>2]=12804,(e=A[r+48>>2])&&(A[r+52>>2]=e,oa(e)),A[r>>2]=12620,(e=A[r+36>>2])&&oa(e),(e=A[r+24>>2])&&oa(e),0|r},function Mh(r){var e=0;A[(r|=0)>>2]=12804,(e=A[r+48>>2])&&(A[r+52>>2]=e,oa(e)),A[r>>2]=12620,(e=A[r+36>>2])&&oa(e),(e=A[r+24>>2])&&oa(e),oa(r)},function Lh(r){var e=0;return A[(r|=0)+8>>2]=11872,A[r>>2]=12932,(e=A[r+56>>2])&&(A[r+60>>2]=e,oa(e)),A[r+8>>2]=12124,(e=A[r+44>>2])&&oa(e),(e=A[r+32>>2])&&oa(e),0|r},function Kh(r){var e=0;A[(r|=0)+8>>2]=11872,A[r>>2]=12932,(e=A[r+56>>2])&&(A[r+60>>2]=e,oa(e)),A[r+8>>2]=12124,(e=A[r+44>>2])&&oa(e),(e=A[r+32>>2])&&oa(e),oa(r)},function Jh(r,e){e|=0;var a,i=0,f=0,t=0,o=0,n=0,k=0,u=0,s=0,_=0,d=0,R=0,h=0;_=A[(r|=0)+12>>2],i=A[r+68>>2],f=A[i+80>>2],b[e+84|0]=0,a=e+68|0,u=A[e+68>>2],(t=A[e+72>>2]-u>>2)>>>0<f>>>0?(qb(a,f-t|0,12372),i=A[r+68>>2],f=A[i+80>>2]):f>>>0>=t>>>0||(A[e+72>>2]=u+(f<<2)),u=((e=A[i+100>>2])-(t=A[i+96>>2])|0)/12|0,R=1;r:if((0|e)!=(0|t)){if(_=A[_+28>>2],-1==(0|(o=A[_>>2])))return 0;for(h=u>>>0<=1?1:u,i=t,e=0,R=0;;){if((n=A[i>>2])>>>0>=f>>>0)break r;if(s=A[A[r+72>>2]+12>>2],(k=A[s+(o<<2)>>2])>>>0>=f>>>0)break r;if(o=A[a>>2],A[o+(n<<2)>>2]=k,-1==(0|(k=A[(n=_+(d<<2)|0)+4>>2])))break r;if((d=A[i+4>>2])>>>0>=f>>>0)break r;if((k=A[(k<<2)+s>>2])>>>0>=f>>>0)break r;if(A[o+(d<<2)>>2]=k,-1==(0|(n=A[n+8>>2])))break r;if((i=A[i+8>>2])>>>0>=f>>>0)break r;if((s=A[(n<<2)+s>>2])>>>0>=f>>>0)break r;if(A[o+(i<<2)>>2]=s,R=u>>>0<=(e=e+1|0)>>>0,(0|e)==(0|h))break r;if(i=t+m(e,12)|0,d=m(e,3),-1==(0|(o=A[_+(d<<2)>>2])))break}}return 0|R},function Ih(r){var e=0,a=0,i=0,f=0,t=0,o=0;f=A[(r|=0)+4>>2],i=A[f>>2];r:{if(e=A[r+12>>2],!((t=(a=A[e+56>>2]-A[e+52>>2]|0)>>2)>>>0<=A[f+8>>2]-i>>2>>>0)){if((0|a)<0)break r;if(e=A[f+4>>2],t=(a=pa(a))+(t<<2)|0,a=o=a+(e-i&-4)|0,(0|e)!=(0|i))for(;e=e-4|0,A[(a=a-4|0)>>2]=A[e>>2],(0|e)!=(0|i););A[f+8>>2]=t,A[f+4>>2]=o,A[f>>2]=a,i&&oa(i)}f=r+8|0;e:if(e=A[r+76>>2]){if((0|(i=A[e>>2]))==A[e+4>>2])return 1;for(e=0;;){if(!(a=we(f,A[(e<<2)+i>>2])))break e;if(t=A[r+76>>2],i=A[t>>2],!((e=e+1|0)>>>0<A[t+4>>2]-i>>2>>>0))break}}else if(a=1,r=A[A[r+12>>2]+64>>2],!((r=A[r+4>>2]-A[r>>2]|0)>>>0<12))for(r=(r>>2>>>0)/3|0,e=0;;){if(!(a=we(f,m(e,3))))break e;if((0|r)==(0|(e=e+1|0)))break}return 0|a}sa(),v()},Wc,ve,function Hh(r){var e,a=0,i=0,f=0,t=0,o=0,b=0,n=0,s=0,_=0,d=0,R=0,h=0,j=0;Q=e=Q-32|0,n=A[(r|=0)+32>>2];r:{if((65535&((a=u[r+36>>1])<<8|a>>>8))>>>0<=513){if(a=A[n+8>>2],f=A[n+12>>2],i=a,t=a=A[n+20>>2],i>>>0<(o=(s=A[n+16>>2])+4|0)>>>0&(0|(a=o>>>0<4?a+1|0:a))>=(0|f)|(0|a)>(0|f))break r;if(h=A[n>>2],_=k[0|(_=h+s|0)]|k[_+1|0]<<8|k[_+2|0]<<16|k[_+3|0]<<24,A[n+16>>2]=o,A[n+20>>2]=a,b=i,i=f,a=t,(f=s+8|0)>>>0>b>>>0&(0|(a=f>>>0<8?a+1|0:a))>=(0|i)|(0|a)>(0|i))break r;h=k[0|(i=o+h|0)]|k[i+1|0]<<8|k[i+2|0]<<16|k[i+3|0]<<24,A[n+16>>2]=f,A[n+20>>2]=a}else{if(!Fb(1,e+28|0,n))break r;if(!Fb(1,e+24|0,A[r+32>>2]))break r;_=A[e+28>>2],h=A[e+24>>2]}if(!(_>>>0>1431655765)&&(f=A[r+32>>2],t=Sj((s=A[(a=f)+8>>2])-(i=A[a+16>>2])|0,(o=A[a+12>>2])-((a=A[a+20>>2])+(i>>>0>s>>>0)|0)|0,3,0),!(!Y&t>>>0<_>>>0||(t=Rj(_,0,3,0),!Y&t>>>0<h>>>0|(0|a)>=(0|o)&i>>>0>=s>>>0|(0|a)>(0|o))))){s=k[i+A[f>>2]|0],a=(i=i+1|0)?a:a+1|0,A[f+16>>2]=i,A[f+20>>2]=a;e:{a:{if(!s){f=0,Q=i=Q-32|0,A[i+24>>2]=0,A[i+16>>2]=0,A[i+20>>2]=0;i:{f:{if(a=m(_,3)){if(a>>>0>=1073741824)break f;ra(f=pa(s=m(_,12)),0,s)}t:{o:if(!_|!(a=kd(a,1,A[r+32>>2],f))){if(!f)break t}else{for(s=0;;){if(t=(o=A[(a=(s<<2)+f|0)>>2])>>>1|0,!((0|(o=(1&o?0-t|0:t)+d|0))<0||(A[i>>2]=o,b=(t=A[a+4>>2])>>>1|0,(0|(o=o+(1&t?0-b|0:b)|0))<0||(A[i+4>>2]=o,t=(a=A[a+8>>2])>>>1|0,(0|(d=o+(1&a?0-t|0:t)|0))<0)))){if(A[i+8>>2]=d,Rb(A[r+44>>2]+96|0,i),s=s+3|0,a=1,(0|(j=j+1|0))!=(0|_))continue;break o}break}a=0}oa(f)}Q=i+32|0;break i}sa(),v()}if(a)break a;break r}if(h>>>0<=255){if(!_)break a;for(;;){if(A[e+16>>2]=0,A[e+8>>2]=0,A[e+12>>2]=0,f=A[r+32>>2],s=A[(a=f)+16>>2],!((t=A[a+8>>2])>>>0<=s>>>0&(0|(i=A[a+20>>2]))>=(0|(a=b=A[a+12>>2]))|(0|a)<(0|i)||(n=A[f>>2],d=k[n+s|0],a=i,a=(o=s+1|0)?a:a+1|0,A[f+16>>2]=o,A[f+20>>2]=a,A[e+8>>2]=d,(0|(t=(d=t>>>0<s>>>0&(0|i)>=(0|b)|(0|i)>(0|b))?s:t))==(0|o)&(0|(b=d?i:b))==(0|a)||(d=k[o+n|0],a=i,a=(o=s+2|0)>>>0<2?a+1|0:a,A[f+16>>2]=o,A[f+20>>2]=a,A[e+12>>2]=d,(0|t)==(0|o)&(0|a)==(0|b))))){if(o=k[o+n|0],a=i,a=(i=s+3|0)>>>0<3?a+1|0:a,A[f+16>>2]=i,A[f+20>>2]=a,A[e+16>>2]=o,Rb(A[r+44>>2]+96|0,e+8|0),(0|(R=R+1|0))!=(0|_))continue;break a}break}R=0;break r}if(h>>>0<=65535){if(!_)break a;for(;;){if(A[e+16>>2]=0,A[e+8>>2]=0,A[e+12>>2]=0,n=A[r+32>>2],i=A[(a=n)+8>>2],f=A[a+12>>2],o=A[a+16>>2],s=a=A[a+20>>2],!(i>>>0<(t=o+2|0)>>>0&(0|(a=t>>>0<2?a+1|0:a))>=(0|f)|(0|a)>(0|f)||(d=A[n>>2],b=k[0|(b=d+o|0)]|k[b+1|0]<<8,A[n+16>>2]=t,A[n+20>>2]=a,A[e+8>>2]=b,a=s,i>>>0<(b=o+4|0)>>>0&(0|(a=b>>>0<4?a+1|0:a))>=(0|f)|(0|a)>(0|f)||(t=k[0|(t=t+d|0)]|k[t+1|0]<<8,A[n+16>>2]=b,A[n+20>>2]=a,A[e+12>>2]=t,t=i,a=s,(i=o+6|0)>>>0>t>>>0&(0|(a=i>>>0<6?a+1|0:a))>=(0|f)|(0|a)>(0|f))))){if(f=k[0|(f=b+d|0)]|k[f+1|0]<<8,A[n+16>>2]=i,A[n+20>>2]=a,A[e+16>>2]=f,Rb(A[r+44>>2]+96|0,e+8|0),(0|(R=R+1|0))!=(0|_))continue;break a}break}R=0;break r}if(!(h>>>0>2097151||(65535&((a=u[r+36>>1])<<8|a>>>8))>>>0<514)){if(!_)break a;for(;;){if(A[e+16>>2]=0,A[e+8>>2]=0,A[e+12>>2]=0,Fb(1,e+4|0,A[r+32>>2])&&(A[e+8>>2]=A[e+4>>2],Fb(1,e+4|0,A[r+32>>2])&&(A[e+12>>2]=A[e+4>>2],Fb(1,e+4|0,A[r+32>>2])))){if(A[e+16>>2]=A[e+4>>2],Rb(A[r+44>>2]+96|0,e+8|0),(0|(R=R+1|0))!=(0|_))continue;break a}break}R=0;break r}if(_)for(;;){if(A[e+16>>2]=0,A[e+8>>2]=0,A[e+12>>2]=0,n=A[r+32>>2],i=A[(a=n)+8>>2],f=A[a+12>>2],o=A[a+16>>2],s=a=A[a+20>>2],i>>>0<(t=o+4|0)>>>0&(0|(a=t>>>0<4?a+1|0:a))>=(0|f)|(0|a)>(0|f))break e;if(d=A[n>>2],b=k[0|(b=d+o|0)]|k[b+1|0]<<8|k[b+2|0]<<16|k[b+3|0]<<24,A[n+16>>2]=t,A[n+20>>2]=a,A[e+8>>2]=b,a=s,i>>>0<(b=o+8|0)>>>0&(0|(a=b>>>0<8?a+1|0:a))>=(0|f)|(0|a)>(0|f))break e;if(t=k[0|(t=t+d|0)]|k[t+1|0]<<8|k[t+2|0]<<16|k[t+3|0]<<24,A[n+16>>2]=b,A[n+20>>2]=a,A[e+12>>2]=t,t=i,a=s,(i=o+12|0)>>>0>t>>>0&(0|(a=i>>>0<12?a+1|0:a))>=(0|f)|(0|a)>(0|f))break e;if(f=k[0|(f=b+d|0)]|k[f+1|0]<<8|k[f+2|0]<<16|k[f+3|0]<<24,A[n+16>>2]=i,A[n+20>>2]=a,A[e+16>>2]=f,Rb(A[r+44>>2]+96|0,e+8|0),(0|(R=R+1|0))==(0|_))break}}A[A[r+4>>2]+80>>2]=h,R=1;break r}R=0}}return Q=e+32|0,0|R},Ta,La,function Fh(r,e){return b[(e|=0)+84|0]=1,A[e+72>>2]=A[e+68>>2],1},function Eh(r){var e=0,a=0,i=0,f=0,t=0;r:{if(!((0|(e=A[(r|=0)+8>>2]))<0||(a=A[r+4>>2],f=A[a>>2],(i=A[a+4>>2]-f>>2)>>>0<e>>>0?(ue(a,e-i|0),t=A[r+8>>2]):(t=e,e>>>0>=i>>>0||(A[a+4>>2]=f+(e<<2),t=e)),(0|(i=t))<=0)))for(r=A[r+4>>2],a=A[r>>2],f=A[r+4>>2]-a>>2,r=0;;){if((0|r)==(0|f))break r;if(A[a+(r<<2)>>2]=r,(0|i)==(0|(r=r+1|0)))break}return~e>>>31|0}Ca(),v()},fb,_a,Da,Wc,function Ah(r,e){r|=0,e|=0;var a,i=0,f=0,t=0,o=0,b=0;i=pa(72),A[i+4>>2]=0,A[i+8>>2]=0,A[i>>2]=1984,A[i+12>>2]=0,A[i+16>>2]=0,A[i+20>>2]=0,A[i+24>>2]=0,A[i+28>>2]=0,A[i+32>>2]=0,A[i+36>>2]=0,A[i+40>>2]=0,A[i>>2]=2128,A[i+44>>2]=0,A[i+48>>2]=0,A[i+52>>2]=0,A[i+56>>2]=0,A[i+60>>2]=0,A[i+64>>2]=0,A[i+68>>2]=0,a=i;r:{if((0|e)>=0){if(b=r+8|0,!((0|(o=(i=A[r+12>>2])-(t=A[r+8>>2])>>2))>(0|e)))if(f=e+1|0,e>>>0>=o>>>0)Vb(b,f-o|0);else if(!(f>>>0>=o>>>0)){if((0|(t=(f<<2)+t|0))!=(0|i))for(;f=A[(i=i-4|0)>>2],A[i>>2]=0,f&&M[A[A[f>>2]+4>>2]](f),(0|i)!=(0|t););A[r+12>>2]=t}if(r=A[b>>2]+(e<<2)|0,i=A[r>>2],A[r>>2]=a,!i)break r}M[A[A[i>>2]+4>>2]](i)}return~e>>>31|0},function Bh(r){var e,a,i,f,t=0,o=0,b=0;return e=A[(r|=0)+32>>2],f=A[(t=e)+8>>2],i=A[t+12>>2],o=A[t+16>>2],t=A[t+20>>2],b=0,(a=o+4|0)>>>0>f>>>0&(0|(t=a>>>0<4?t+1|0:t))>=(0|i)|(0|t)>(0|i)||(o=A[e>>2]+o|0,o=k[0|o]|k[o+1|0]<<8|k[o+2|0]<<16|k[o+3|0]<<24,A[e+16>>2]=a,A[e+20>>2]=t,b=0,(0|o)<0||(A[A[r+4>>2]+80>>2]=o,b=1)),0|b},Wc,ve,function zh(r){var e,a,i,f=0,t=0,o=0;return e=A[(r|=0)+32>>2],i=A[(f=e)+8>>2],o=A[f+12>>2],t=A[f+16>>2],f=A[f+20>>2],(0|(a=o))>=(0|(f=(o=t+4|0)>>>0<4?f+1|0:f))&o>>>0<=i>>>0|(0|f)<(0|a)&&(t=A[e>>2]+t|0,t=k[0|t]|k[t+1|0]<<8|k[t+2|0]<<16|k[t+3|0]<<24,A[e+16>>2]=o,A[e+20>>2]=f,A[A[r+4>>2]+80>>2]=t),(0|f)<=(0|a)&o>>>0<=i>>>0|(0|f)<(0|a)},function Yf(r){var e=0;return A[(r|=0)>>2]=13664,(e=A[r+96>>2])&&(A[r+100>>2]=e,oa(e)),(e=A[r+84>>2])&&(A[r+88>>2]=e,oa(e)),0|_b(r)},function Xf(r){var e=0;A[(r|=0)>>2]=13664,(e=A[r+96>>2])&&(A[r+100>>2]=e,oa(e)),(e=A[r+84>>2])&&(A[r+88>>2]=e,oa(e)),oa(_b(r))},function Wf(r,e,a){var i=0,f=0,t=0,o=0,b=0,n=0,k=0;if(Xd(r|=0,e|=0,a|=0),a=A[r+84>>2],!((0|(i=A[r+88>>2]-a>>2))>(0|e))){if((e=e+1|0)>>>0>i>>>0){r:if((i=e-i|0)>>>0<=(f=A[r+92>>2])-(a=A[r+88>>2])>>2>>>0){if(i){if(e=a,f=7&i)for(;A[e>>2]=1,e=e+4|0,(0|f)!=(0|(t=t+1|0)););if(a=(i<<2)+a|0,!((i-1&1073741823)>>>0<7))for(;A[e+24>>2]=1,A[e+28>>2]=1,A[e+16>>2]=1,A[e+20>>2]=1,A[e+8>>2]=1,A[e+12>>2]=1,A[e>>2]=1,A[e+4>>2]=1,(0|a)!=(0|(e=e+32|0)););}A[r+88>>2]=a}else{e:{if((e=(o=(n=(e=a)-(a=A[r+84>>2])|0)>>2)+i|0)>>>0<1073741824){if(b=(f=f-a|0)>>>1|0,f=f>>>0>=2147483644?1073741823:e>>>0<b>>>0?b:e){if(f>>>0>=1073741824)break e;k=pa(f<<2)}if(e=o=(o<<2)+k|0,b=7&i)for(;A[e>>2]=1,e=e+4|0,(0|b)!=(0|(t=t+1|0)););if(t=o+(i<<2)|0,(i-1&1073741823)>>>0>=7)for(;A[e+24>>2]=1,A[e+28>>2]=1,A[e+16>>2]=1,A[e+20>>2]=1,A[e+8>>2]=1,A[e+12>>2]=1,A[e>>2]=1,A[e+4>>2]=1,(0|t)!=(0|(e=e+32|0)););e=va(k,a,n),A[r+88>>2]=t,A[r+84>>2]=e,A[r+92>>2]=e+(f<<2),a&&oa(a);break r}sa(),v()}wa(),v()}return}e>>>0>=i>>>0||(A[r+88>>2]=a+(e<<2))}},function Vf(r,e){var a=0,i=0;Wd(r|=0,e|=0),(0|e)<0||(i=A[r+88>>2])-(a=A[r+84>>2])>>2<=(0|e)||(va(a=(e<<2)+a|0,e=a+4|0,i-e|0),A[r+88>>2]=i-4)},_b,function Tf(r){oa(_b(r|=0))},Xd,Wd,function Sf(r){return 0|I(A[(r|=0)+60>>2])},function Rf(r,e,a){e|=0,a|=0;var i,f=0,t=0,o=0,b=0,n=0,k=0;Q=i=Q-32|0,f=A[(r|=0)+28>>2],A[i+16>>2]=f,o=A[r+20>>2],A[i+28>>2]=a,A[i+24>>2]=e,e=o-f|0,A[i+20>>2]=e,o=e+a|0,n=2;r:{e:{e=i+16|0,(f=0|Z(A[r+60>>2],0|e,2,i+12|0))?(A[3992]=f,f=-1):f=0;a:{if(f)f=e;else for(;;){if((0|(t=A[i+12>>2]))==(0|o))break a;if((0|t)<0){f=e;break e}if(b=t-((k=(b=A[e+4>>2])>>>0<t>>>0)?b:0)|0,A[(f=(k<<3)+e|0)>>2]=b+A[f>>2],A[(e=(k?12:4)+e|0)>>2]=A[e>>2]-b,o=o-t|0,e=f,n=n-k|0,(t=0|Z(A[r+60>>2],0|e,0|n,i+12|0))?(A[3992]=t,t=-1):t=0,t)break}if(-1!=(0|o))break e}e=A[r+44>>2],A[r+28>>2]=e,A[r+20>>2]=e,A[r+16>>2]=e+A[r+48>>2],r=a;break r}A[r+28>>2]=0,A[r+16>>2]=0,A[r+20>>2]=0,A[r>>2]=32|A[r>>2],r=0,2!=(0|n)&&(r=a-A[f+4>>2]|0)}return Q=i+32|0,0|r},function Qf(r,e,a,i){var f;return e|=0,a|=0,i|=0,Q=f=Q-16|0,(r=0|F(A[(r|=0)+60>>2],0|e,0|a,255&i,f+8|0))?(A[3992]=r,r=-1):r=0,Q=f+16|0,Y=r?-1:A[f+12>>2],0|(r?-1:A[f+8>>2])},_a,function Pf(r,e,a,i){return Y=0,0},Ta,La,Td,Td,function Mf(r,e,a){a|=0;var i,f=0;return Q=i=Q+-64|0,f=1,Ya(r|=0,e|=0,0)||(f=0,e&&(f=0,(e=Ed(e,14972))&&(ra(4|(f=i+8|0),0,52),A[i+56>>2]=1,A[i+20>>2]=-1,A[i+16>>2]=r,A[i+8>>2]=e,M[A[A[e>>2]+28>>2]](e,f,A[a>>2],1),1==(0|(r=A[i+32>>2]))&&(A[a>>2]=A[i+24>>2]),f=1==(0|r)))),Q=i- -64|0,0|f},function Gf(r,e,a,i,f,t){a|=0,i|=0,f|=0,t|=0,Ya(r|=0,A[(e|=0)+8>>2],t)&&Cd(e,a,i,f)},function If(r,e,a,i,f){if(a|=0,i|=0,f|=0,Ya(r|=0,A[(e|=0)+8>>2],f))1==A[e+28>>2]|A[e+4>>2]!=(0|a)||(A[e+28>>2]=i);else r:if(Ya(r,A[e>>2],f)){if(!(A[e+16>>2]!=(0|a)&A[e+20>>2]!=(0|a))){if(1!=(0|i))break r;return void(A[e+32>>2]=1)}A[e+20>>2]=a,A[e+32>>2]=i,A[e+40>>2]=A[e+40>>2]+1,1!=A[e+36>>2]|2!=A[e+24>>2]||(b[e+54|0]=1),A[e+44>>2]=4}},function Lf(r,e,a,i){a|=0,i|=0,Ya(r|=0,A[(e|=0)+8>>2],0)&&Dd(e,a,i)},La,function Hf(r,e,a,i,f,t){a|=0,i|=0,f|=0,t|=0,Ya(r|=0,A[(e|=0)+8>>2],t)?Cd(e,a,i,f):(r=A[r+8>>2],M[A[A[r>>2]+20>>2]](r,e,a,i,f,t))},function Jf(r,e,a,i,f){if(a|=0,i|=0,f|=0,Ya(r|=0,A[(e|=0)+8>>2],f))1==A[e+28>>2]|A[e+4>>2]!=(0|a)||(A[e+28>>2]=i);else r:{if(Ya(r,A[e>>2],f)){if(!(A[e+16>>2]!=(0|a)&A[e+20>>2]!=(0|a))){if(1!=(0|i))break r;return void(A[e+32>>2]=1)}A[e+32>>2]=i;e:if(4!=A[e+44>>2]){if(n[e+52>>1]=0,r=A[r+8>>2],M[A[A[r>>2]+20>>2]](r,e,a,a,1,f),k[e+53|0]){if(A[e+44>>2]=3,!k[e+52|0])break e;break r}A[e+44>>2]=4}if(A[e+20>>2]=a,A[e+40>>2]=A[e+40>>2]+1,1!=A[e+36>>2]|2!=A[e+24>>2])break r;return void(b[e+54|0]=1)}r=A[r+8>>2],M[A[A[r>>2]+24>>2]](r,e,a,i,f)}},function Kf(r,e,a,i){a|=0,i|=0,Ya(r|=0,A[(e|=0)+8>>2],0)?Dd(e,a,i):(r=A[r+8>>2],M[A[A[r>>2]+28>>2]](r,e,a,i))},La,function Df(r){return 1245},La,function Cf(r){return 1211},La,function Ef(r){return 1171},zc,db,zc,zc]);function fa(){return f.byteLength/65536|0}return{i:function df(){A[4292]=17048,A[4274]=42},j:M,k:Sc,l:function yh(){return 0|Ha(pa(40))},m:function xh(r,e,a){e|=0,a|=0,A[(r|=0)+16>>2]=0,A[r+20>>2]=0,A[r>>2]=e,A[r+8>>2]=a,A[r+12>>2]=0},n:Sc,o:function wh(){var r,e;return e=pa(40),A[e>>2]=-1,A[(r=e+8|0)+16>>2]=0,A[r+20>>2]=0,A[r+8>>2]=0,A[r>>2]=0,A[r+4>>2]=0,A[r+24>>2]=0,A[r+28>>2]=0,0|e},p:pe,q:function vh(r){var e=0;(r|=0)&&((e=A[r+8>>2])&&(A[r+12>>2]=e,oa(e)),oa(r))},r:function uh(){return 0|Eb(pa(64))},s:Sc,t:function th(){var r;return r=Eb(pa(96)),A[r+64>>2]=0,A[r+68>>2]=0,A[r+88>>2]=0,A[r+72>>2]=0,A[r+76>>2]=0,b[r+77|0]=0,b[r+78|0]=0,b[r+79|0]=0,b[r+80|0]=0,b[r+81|0]=0,b[r+82|0]=0,b[r+83|0]=0,b[r+84|0]=0,0|r},u:Rc,v:function sh(r){return A[(r|=0)+88>>2]},w:function rh(r){return A[(r|=0)+56>>2]},x:eb,y:function qh(r){return b[(r|=0)+24|0]},z:function ph(r){return k[(r|=0)+32|0]},A:function oh(r){return A[(r|=0)+40>>2]},B:function nh(r){return A[(r|=0)+48>>2]},C:function mh(r){return A[(r|=0)+60>>2]},D:Ga,E:function lh(){var r;return r=pa(24),A[r+8>>2]=0,A[r+12>>2]=0,A[r+4>>2]=-1,A[r>>2]=1832,A[r+16>>2]=0,A[r+20>>2]=0,0|r},F:ne,G:db,H:function kh(r,e){return e|=0,R(_[A[(r|=0)+8>>2]+(e<<2)>>2])},I:function jh(r){return R(_[(r|=0)+20>>2])},J:cc,K:function ih(){var r;return r=pa(8),A[r+4>>2]=-1,A[r>>2]=1032,0|r},L:ne,M:db,N:cc,O:function hh(){return 0|_d(pa(84))},P:me,Q:Rc,R:cc,S:function gh(){var r;return r=_d(pa(108)),A[r+84>>2]=0,A[r+88>>2]=0,A[r>>2]=13664,A[r+92>>2]=0,A[r+96>>2]=0,A[r+100>>2]=0,A[r+104>>2]=0,0|r},T:function fh(r){return(A[(r|=0)+100>>2]-A[r+96>>2]|0)/12|0},U:me,V:Rc,W:cc,X:function eh(){var r,e;return r=pa(24),A[r+4>>2]=0,A[r+8>>2]=0,A[(e=r+16|0)>>2]=0,A[e+4>>2]=0,A[r>>2]=r+4,A[r+12>>2]=e,0|r},Y:function ch(r){(r|=0)&&(Ra(r+12|0,A[r+16>>2]),Qa(r,A[r+4>>2]),oa(r))},Z:pe,_:function bh(r){return 0|!A[(r|=0)>>2]},$:function ah(r){return 0|(b[(r|=0)+15|0]<0?A[r+4>>2]:r+4)},aa:function $g(r){(r|=0)&&(b[r+15|0]<0&&oa(A[r+4>>2]),oa(r))},ba:lb,ca:function _g(r,e){return e|=0,R(_[A[(r|=0)>>2]+(e<<2)>>2])},da:Qc,ea:kb,fa:lb,ga:function Zg(r,e){return e|=0,b[A[(r|=0)>>2]+e|0]},ha:le,ia:kb,ja:lb,ka:function Yg(r,e){return e|=0,k[A[(r|=0)>>2]+e|0]},la:le,ma:kb,na:lb,oa:function Xg(r,e){return e|=0,n[A[(r|=0)>>2]+(e<<1)>>1]},pa:je,qa:kb,ra:lb,sa:function Wg(r,e){return e|=0,u[A[(r|=0)>>2]+(e<<1)>>1]},ta:je,ua:kb,va:lb,wa:ie,xa:Qc,ya:kb,za:lb,Aa:ie,Ba:Qc,Ca:kb,Da:function Vg(){var r;return r=pa(28),A[r>>2]=0,A[r+4>>2]=0,A[r+24>>2]=0,A[r+16>>2]=0,A[r+20>>2]=0,A[r+8>>2]=0,A[r+12>>2]=0,0|r},Ea:function Ug(r,e,a){r|=0,e|=0;var i,f=0,t=0,o=0,n=0,u=0,s=0;if(Q=i=Q-16|0,(f=Ma(a|=0))>>>0<2147483632){r:{if(f>>>0>=11)r=pa(t=1+(15|f)|0),A[i+8>>2]=-2147483648|t,A[i>>2]=r,A[i+4>>2]=f,t=r+f|0;else if(b[i+11|0]=f,t=i+f|0,r=i,!f)break r;qa(r,a,f)}b[0|t]=0,f=(a=k[i+11|0])<<24>>24,r=0;r:if(e=A[e+4>>2]){for(r=a,r=(a=(0|f)<0)?A[i+4>>2]:r,t=a?A[i>>2]:i;;){e:{a:{i:{f:{t:{o:{if(n=(u=(a=(o=(a=k[e+27|0])<<24>>24<0)?A[e+20>>2]:a)>>>0<r>>>0)?a:r){if(s=Fa(t,o=o?A[e+16>>2]:e+16|0,n))break o;if(r>>>0>=a>>>0)break t;break e}if(r>>>0>=a>>>0)break f;break e}if((0|s)<0)break e}if(a=Fa(o,t,n))break i}if(u)break a;r=1;break r}if(!((0|a)<0)){r=1;break r}}e=e+4|0}if(!(e=A[e>>2]))break}r=0}(0|f)<0&&oa(A[i>>2]),Q=i+16|0}else Na(),v();return 0|r},Fa:function Tg(r,e,a){r|=0,e|=0,a|=0;var i,f=0,t=0;if(Q=i=Q-16|0,A[i+12>>2]=0,(f=Ma(a))>>>0<2147483632){r:{if(f>>>0>=11)r=pa(t=1+(15|f)|0),A[i+8>>2]=-2147483648|t,A[i>>2]=r,A[i+4>>2]=f,t=r+f|0;else if(b[i+11|0]=f,t=i+f|0,r=i,!f)break r;qa(r,a,f)}b[0|t]=0,(0|(r=nb(e,i)))!=(e+4|0)&&4==((e=A[r+32>>2])-(r=A[r+28>>2])|0)&&(A[i+12>>2]=k[0|r]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24),r=A[i+12>>2],b[i+11|0]<0&&oa(A[i>>2]),Q=i+16|0}else Na(),v();return 0|r},Ga:function Sg(r,e,a,i){r|=0,e|=0,i|=0;var f=0,t=0,o=0;if(Q=r=Q-32|0,(f=Ma(a|=0))>>>0<2147483632){r:{if(f>>>0>=11)t=pa(o=1+(15|f)|0),A[r+24>>2]=-2147483648|o,A[r+16>>2]=t,A[r+20>>2]=f,o=f+t|0;else if(b[r+27|0]=f,o=f+(t=r+16|0)|0,!f)break r;qa(t,a,f)}b[0|o]=0,A[r+8>>2]=0,A[r>>2]=0,A[r+4>>2]=0,(0|(a=nb(e,r+16|0)))!=(e+4|0)&&(0|(e=A[a+28>>2]))!=(0|(f=A[a+32>>2]))&&(3&(e=f-e|0)||((f=e>>>2|0)>>>0>(o=(t=A[r+4>>2])-(e=A[r>>2])>>2)>>>0?(ya(r,f-o|0),e=A[r>>2],t=A[r+4>>2]):f>>>0>=o>>>0||(t=(f<<2)+e|0,A[r+4>>2]=t),(0|e)==(0|t)?(Ca(),v()):qa(f=e,e=A[a+28>>2],A[a+32>>2]-e|0))),(e=A[i>>2])&&(A[i+4>>2]=e,oa(e)),A[i>>2]=A[r>>2],A[i+4>>2]=A[r+4>>2],A[i+8>>2]=A[r+8>>2],b[r+27|0]<0&&oa(A[r+16>>2]),Q=r+32|0}else Na(),v()},Ha:function Rg(r,e,a){r|=0,e|=0,a|=0;var i=0,f=0,t=0,o=0;if(Q=r=Q-32|0,A[r+24>>2]=0,A[r+28>>2]=0,(i=Ma(a))>>>0<2147483632){r:{if(i>>>0>=11)t=pa(f=1+(15|i)|0),A[r+16>>2]=-2147483648|f,A[r+8>>2]=t,A[r+12>>2]=i,f=i+t|0;else if(b[r+19|0]=i,f=(t=r+8|0)+i|0,!i)break r;qa(t,a,i)}b[0|f]=0,(0|(a=e+4|0))!=(0|(e=nb(e,r+8|0)))&&8==((a=A[e+32>>2])-(e=A[e+28>>2])|0)&&(a=k[e+4|0]|k[e+5|0]<<8|k[e+6|0]<<16|k[e+7|0]<<24,A[r+24>>2]=k[0|e]|k[e+1|0]<<8|k[e+2|0]<<16|k[e+3|0]<<24,A[r+28>>2]=a),o=d[r+24>>3],b[r+19|0]<0&&oa(A[r+8>>2]),Q=r+32|0}else Na(),v();return+o},Ia:function Qg(r,e,a){r|=0,e|=0;var i,f=0,t=0,o=0;if(Q=i=Q-16|0,(f=Ma(a|=0))>>>0<2147483632){r:{if(f>>>0>=11)t=pa(o=1+(15|f)|0),A[i+8>>2]=-2147483648|o,A[i>>2]=t,A[i+4>>2]=f,o=f+t|0;else if(b[i+11|0]=f,o=i+f|0,t=i,!f)break r;qa(t,a,f)}b[0|o]=0,a=$d(e,i,t=r+16|0),e=A[r+16>>2],r=b[r+27|0],b[i+11|0]<0&&oa(A[i>>2]),Q=i+16|0,r=a?(0|r)<0?e:t:0}else Na(),v();return 0|r},Ja:function Pg(r,e){return A[(e|=0)+8>>2]},Ka:function Og(r,e,a){e|=0;var i,f,t=0,o=0,n=0,k=0,u=0,s=0;if(f=a|=0,i=r|=0,A[r+12>>2]!=(0|e)){if(r=e,(0|(e=A[i+4>>2]))!=(0|(t=A[i>>2])))for(;a=e-12|0,b[e-1|0]<0&&oa(A[a>>2]),(0|t)!=(0|(e=a)););if(A[i+12>>2]=r,A[i+4>>2]=t,(0|(a=A[r>>2]))!=(0|(u=r+4|0)))for(;;){if((0|(r=A[i+4>>2]))==A[i+8>>2]){n=0;r:{e:{a:{if((e=(o=((r=A[i+4>>2])-(t=A[i>>2])|0)/12|0)+1|0)>>>0<357913942){if(s=(k=(A[i+8>>2]-t|0)/12|0)<<1,e=k>>>0>=178956970?357913941:e>>>0<s>>>0?s:e){if(e>>>0>=357913942)break a;n=pa(m(e,12))}if(k=m(e,12),e=m(o,12)+n|0,b[a+27|0]>=0?(o=A[a+20>>2],A[e>>2]=A[a+16>>2],A[e+4>>2]=o,A[e+8>>2]=A[a+24>>2]):(za(e,A[a+16>>2],A[a+20>>2]),t=A[i>>2],r=A[i+4>>2]),n=n+k|0,o=e+12|0,(0|r)==(0|t))break e;for(;k=A[(r=r-12|0)+4>>2],A[(e=e-12|0)>>2]=A[r>>2],A[e+4>>2]=k,A[e+8>>2]=A[r+8>>2],A[r>>2]=0,A[r+4>>2]=0,A[r+8>>2]=0,(0|r)!=(0|t););if(A[i+8>>2]=n,r=A[i+4>>2],A[i+4>>2]=o,t=A[i>>2],A[i>>2]=e,(0|r)==(0|t))break r;for(;e=r-12|0,b[r-1|0]<0&&oa(A[e>>2]),r=e,(0|t)!=(0|e););break r}sa(),v()}wa(),v()}A[i+8>>2]=n,A[i+4>>2]=o,A[i>>2]=e}t&&oa(t)}else b[a+27|0]>=0?(e=A[a+20>>2],A[r>>2]=A[a+16>>2],A[r+4>>2]=e,A[r+8>>2]=A[a+24>>2]):za(r,A[a+16>>2],A[a+20>>2]),A[i+4>>2]=r+12;r:{if(e=A[a+4>>2])for(;;)if(r=e,!(e=A[e>>2]))break r;for(;r=A[a+8>>2],e=A[r>>2]!=(0|a),a=r,e;);}if(a=r,(0|u)==(0|r))break}}return r=0,(0|f)<0||(e=A[i>>2],(A[i+4>>2]-e|0)/12>>>0<=f>>>0||(r=e+m(f,12)|0,r=b[r+11|0]<0?A[r>>2]:r)),0|r},La:function Ng(r){var e=0,a=0,i=0;if(r|=0){if(b[r+27|0]<0&&oa(A[r+16>>2]),e=A[r>>2]){if(a=e,(0|e)!=(0|(i=A[r+4>>2]))){for(;a=i-12|0,b[i-1|0]<0&&oa(A[a>>2]),(0|(i=a))!=(0|e););a=A[r>>2]}A[r+4>>2]=e,oa(a)}oa(r)}},Ma:function Mg(){var r,e;return r=pa(40),A[r+4>>2]=0,A[r+8>>2]=0,A[r+24>>2]=0,A[r+28>>2]=0,A[(e=r+16|0)>>2]=0,A[e+4>>2]=0,A[r>>2]=r+4,A[r+12>>2]=e,A[r+32>>2]=0,A[r+36>>2]=0,0|r},Na:function Lg(r,e,a,i){r|=0,e|=0,a|=0,i|=0;var f,t=0,o=0;Q=f=Q+-64|0,t=Ha(f+8|0),A[t+16>>2]=0,A[t+20>>2]=0,A[t>>2]=e,A[t+8>>2]=a,A[t+12>>2]=0,Pe(e=f+48|0,r,t,i),A[r+24>>2]=A[f+48>>2];r:if((0|(t=r+24|0))!=(0|e))if(e=r+28|0,a=f+48|4,i=(o=k[f+63|0])<<24>>24,b[r+39|0]>=0){if((0|i)>=0){r=A[a+4>>2],A[e>>2]=A[a>>2],A[e+4>>2]=r,A[e+8>>2]=A[a+8>>2];break r}Xb(e,A[f+52>>2],A[f+56>>2])}else Yb(e,(r=(0|i)<0)?A[f+52>>2]:a,r?A[f+56>>2]:o);return b[f+63|0]<0&&oa(A[f+52>>2]),Q=f- -64|0,0|t},Oa:function Kg(r,e,a,i){r|=0,e|=0,a|=0,i|=0;var f,t=0,o=0;Q=f=Q+-64|0,t=Ha(f+8|0),A[t+16>>2]=0,A[t+20>>2]=0,A[t>>2]=e,A[t+8>>2]=a,A[t+12>>2]=0,Oe(e=f+48|0,r,t,i),A[r+24>>2]=A[f+48>>2];r:if((0|(t=r+24|0))!=(0|e))if(e=r+28|0,a=f+48|4,i=(o=k[f+63|0])<<24>>24,b[r+39|0]>=0){if((0|i)>=0){r=A[a+4>>2],A[e>>2]=A[a>>2],A[e+4>>2]=r,A[e+8>>2]=A[a+8>>2];break r}Xb(e,A[f+52>>2],A[f+56>>2])}else Yb(e,(r=(0|i)<0)?A[f+52>>2]:a,r?A[f+56>>2]:o);return b[f+63|0]<0&&oa(A[f+52>>2]),Q=f- -64|0,0|t},Pa:function Jg(r,e,a){return 0|Zd(e|=0,a|=0)},Qa:function Ig(r,e,a){r|=0,e|=0;var i=0,f=0,t=0;if(Q=r=Q-32|0,(i=Ma(a|=0))>>>0<2147483632){r:{if(i>>>0>=11)t=pa(f=1+(15|i)|0),A[r+24>>2]=-2147483648|f,A[r+16>>2]=t,A[r+20>>2]=i,f=i+t|0;else if(b[r+27|0]=i,f=(t=r+16|0)+i|0,!i)break r;qa(t,a,i)}b[0|f]=0,b[r+4|0]=0,A[r>>2]=1701667182,b[r+11|0]=4,a=-1,(i=A[e+4>>2])&&(a=-1,(i=be(i,r,r+16|0))&&(a=Yd(e,A[i+24>>2]))),e=a,b[r+11|0]<0&&oa(A[r>>2]),b[r+27|0]<0&&oa(A[r+16>>2]),Q=r+32|0}else Na(),v();return 0|e},Ra:function Hg(r,e,a,i){r|=0,e|=0,i|=0;var f,t=0,o=0;Q=f=Q-32|0;r:{e:{if((t=Ma(a|=0))>>>0<2147483632){a:{if(t>>>0>=11)o=pa(r=1+(15|t)|0),A[f+24>>2]=-2147483648|r,A[f+16>>2]=o,A[f+20>>2]=t,r=t+o|0;else if(b[f+27|0]=t,r=t+(o=f+16|0)|0,!t)break a;qa(o,a,t)}if(b[0|r]=0,(a=Ma(i))>>>0>=2147483632)break e;a:{if(a>>>0>=11)r=pa(t=1+(15|a)|0),A[f+8>>2]=-2147483648|t,A[f>>2]=r,A[f+4>>2]=a,o=r+a|0;else if(b[f+11|0]=a,o=a+f|0,r=f,!a)break a;qa(r,i,a)}b[0|o]=0,r=-1,(a=A[e+4>>2])&&(r=-1,(a=be(a,f+16|0,f))&&(r=Yd(e,A[a+24>>2]))),b[f+11|0]<0&&oa(A[f>>2]),b[f+27|0]<0&&oa(A[f+16>>2]),Q=f+32|0;break r}Na(),v()}Na(),v()}return 0|r},Sa:function Gg(r,e,a){return a|=0,A[A[(e|=0)+8>>2]+(a<<2)>>2]},Ta:function Fg(r,e,a){r|=0,a|=0;var i=0,f=0;r=0;r:if((0|(i=A[(e|=0)+12>>2]))!=(0|(e=A[e+8>>2]))){i=(r=i-e>>2)>>>0<=1?1:r,r=0;e:{for(;;){if(f=A[e+(r<<2)>>2],A[f+60>>2]==(0|a))break e;if((0|i)==(0|(r=r+1|0)))break}r=0;break r}r=-1!=(0|r)?f:0}return 0|r},Ua:function Eg(r,e){return A[(e|=0)+4>>2]},Va:function Dg(r,e,a){r|=0,a|=0;var i,f=0;if((i=A[(e|=0)+4>>2])&&!((0|(e=A[A[A[e+8>>2]+(a<<2)>>2]+60>>2]))<0)&&(0|(r=A[i+24>>2]))!=(0|(a=A[i+28>>2])))r:{for(;;){if(f=A[r>>2],(0|e)==A[f+24>>2])break r;if((0|a)==(0|(r=r+4|0)))break}f=0}return 0|f},Wa:function Cg(r,e,a,i){return r|=0,a|=0,i|=0,e=A[(e|=0)+96>>2],r=pa(12),e=e+m(a,12)|0,a=A[e+4>>2],A[r>>2]=A[e>>2],A[r+4>>2]=a,A[r+8>>2]=A[e+8>>2],(e=A[i>>2])&&(A[i+4>>2]=e,oa(e)),A[i>>2]=r,r=r+12|0,A[i+8>>2]=r,A[i+4>>2]=r,1},Xa:function Bg(r,e,a){r|=0,e|=0;var i,f,t,o,n,u,s=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0,E=0,Y=0,M=0,J=0,g=0,O=0,z=0,X=0,C=0,P=0;u=a|=0,a=0,Q=f=Q-96|0,ra(i=f+16|0,0,76),A[f+92>>2]=-1,A[f+8>>2]=0,A[f>>2]=0,A[f+4>>2]=0,Q=t=Q-16|0,A[i+68>>2]=0,A[i+72>>2]=0,A[i>>2]=e,Q=o=Q-16|0,n=e,r=A[e+20>>2],(A[e+24>>2]-r|0)<=0||-1!=(0|(r=A[r>>2]))&&(a=A[A[n+8>>2]+(r<<2)>>2]);r:{e:{if(a){r=A[n+100>>2],_=A[n+96>>2],A[o+8>>2]=0,A[o>>2]=0,A[o+4>>2]=0,e=(0|(d=r-_|0))/12|0;a:if((0|r)!=(0|_)){if(e>>>0>=357913942)break e;if(s=pa(d),A[o>>2]=s,A[o+8>>2]=s+m(e,12),r=0,d=ra(T=s,0,s=12+((d=d-12|0)-((d>>>0)%12|0)|0)|0),A[o+4>>2]=s+d,k[a+84|0]){if(h=1&(a=e>>>0<=1?1:e),e>>>0>=2)for(R=-2&a,a=0;s=m(r,12),j=A[(e=s+_|0)+4>>2],D=A[e>>2],A[(s=s+d|0)+8>>2]=A[e+8>>2],A[s>>2]=D,A[s+4>>2]=j,s=m(1|r,12),j=A[(e=s+_|0)+4>>2],D=A[e>>2],A[(s=s+d|0)+8>>2]=A[e+8>>2],A[s>>2]=D,A[s+4>>2]=j,r=r+2|0,(0|R)!=(0|(a=a+2|0)););if(!h)break a;e=m(r,12),a=A[(r=e+_|0)+4>>2],_=A[r>>2],A[(e=e+d|0)+8>>2]=A[r+8>>2],A[e>>2]=_,A[e+4>>2]=a}else for(h=e>>>0<=1?1:e,r=A[a+68>>2],a=0;s=m(a,12),R=A[r+(A[(e=s+_|0)>>2]<<2)>>2],j=A[r+(A[e+4>>2]<<2)>>2],A[(s=s+d|0)+8>>2]=A[r+(A[e+8>>2]<<2)>>2],A[s+4>>2]=j,A[s>>2]=R,(0|h)!=(0|(a=a+1|0)););}if(s=0,Q=J=Q-16|0,$b(h=pa(88)),Q=Y=Q-16|0,A[h+80>>2]=0,A[h+84>>2]=0,r=A[h+76>>2],A[h+76>>2]=0,r&&oa(r),A[h+68>>2]=0,A[h+72>>2]=0,r=A[(e=h- -64|0)>>2],A[e>>2]=0,r&&oa(r),R=A[o+4>>2],e=A[o>>2],r=m(a=(R-e|0)/12|0,3),d=A[h>>2],r>>>0>(_=A[h+4>>2]-d>>2)>>>0?(ue(h,r-_|0),a=((R=A[o+4>>2])-(e=A[o>>2])|0)/12|0):r>>>0>=_>>>0||(A[h+4>>2]=d+(r<<2)),(0|e)!=(0|R)){if(R=1&(_=a>>>0<=1?1:a),r=A[h>>2],a>>>0>=2)for(j=-2&_,a=0;d=e+(_=m(s,12))|0,A[(D=_+r|0)>>2]=A[d>>2],A[r+(4|_)>>2]=A[d+4>>2],A[D+8>>2]=A[d+8>>2],_=(d=m(1|s,12))+r|0,d=e+d|0,A[_>>2]=A[d>>2],A[_+4>>2]=A[d+4>>2],A[_+8>>2]=A[d+8>>2],s=s+2|0,(0|j)!=(0|(a=a+2|0)););R&&(e=e+(a=m(s,12))|0,A[(r=a+r|0)>>2]=A[e>>2],A[r+4>>2]=A[e+4>>2],A[r+8>>2]=A[e+8>>2])}A[Y+12>>2]=-1,r=0,_=0,R=0,Q=d=Q-32|0;a:{i:{if(Z=Y+12|0){if(j=(s=(a=A[h+4>>2])-(D=A[h>>2])|0)>>2,T=A[h+12>>2],j>>>0>(e=A[h+16>>2]-T>>2)>>>0?(qb(h+12|0,j-e|0,13652),j=(s=(a=A[h+4>>2])-(D=A[h>>2])|0)>>2):e>>>0<=j>>>0||(A[h+16>>2]=T+(j<<2)),A[d+24>>2]=0,A[d+16>>2]=0,A[d+20>>2]=0,!(e=(0|a)==(0|D))){if((0|s)<0)break i;_=pa(s),A[d+20>>2]=_,A[d+16>>2]=_,A[d+24>>2]=(j<<2)+_}f:{t:{o:{b:{if(!s){if(s=0,!e)break b;break o}for(;(j=A[(r<<2)+D>>2])>>>0<(e=A[d+20>>2]-_>>2)>>>0||(A[d>>2]=0,(s=j+1|0)>>>0>e>>>0?(Pa(d+16|0,s-e|0,d),D=A[h>>2],a=A[h+4>>2],_=A[d+16>>2]):e>>>0<=s>>>0||(A[d+20>>2]=(s<<2)+_)),A[(e=(j<<2)+_|0)>>2]=A[e>>2]+1,(r=r+1|0)>>>0<(j=(s=a-D|0)>>2)>>>0;);if((0|a)==(0|D)){s=0;break o}if(s>>>0>=2147483645)break t}ra(s=pa(s<<1),255,j<<3)}A[d+8>>2]=0,A[d>>2]=0,A[d+4>>2]=0,G=(r=(e=A[d+20>>2])-_|0)>>2;o:{if((0|e)!=(0|_)){if((0|r)<0)break o;if(W=pa(r),A[d>>2]=W,A[d+8>>2]=(G<<2)+W,e=ra(W,0,r),A[d+4>>2]=e+r,T=3&(a=G>>>0<=1?1:G),r=0,a-1>>>0>=3)for(N=-4&a;A[(a=R<<2)+e>>2]=r,F=4|a,r=A[a+_>>2]+r|0,A[F+e>>2]=r,B=8|a,r=r+A[_+F>>2]|0,A[B+e>>2]=r,a|=12,r=r+A[_+B>>2]|0,A[a+e>>2]=r,r=r+A[a+_>>2]|0,R=R+4|0,(0|N)!=(0|(V=V+4|0)););if(T)for(;A[(a=R<<2)+e>>2]=r,R=R+1|0,r=A[a+_>>2]+r|0,(0|T)!=(0|(U=U+1|0)););}if(!j)break f;for(F=A[h+40>>2],B=A[h+12>>2],T=0;;){r=(g=T<<2)+D|0,U=-1,-1!=(0|(e=((a=T+1|0)>>>0)%3|0?a:T-2|0))&&(U=A[(e<<2)+D>>2]),e=A[r>>2];b:{n:{if(!((T>>>0)%3|0)){if(V=-1,-1!=(0|(r=T+2|0))&&(V=A[(r<<2)+D>>2]),!((0|e)==(0|U)|(0|e)==(0|V))&(0|U)!=(0|V))break n;F=F+1|0,A[h+40>>2]=F,a=T+3|0;break b}V=A[r-4>>2]}n:{A:if(!((0|(E=A[(r=V<<2)+_>>2]))<=0))for(r=A[r+W>>2],R=0;;){if(-1==(0|(I=A[(N=(r<<3)+s|0)>>2])))break A;if((0|U)==(0|I)&&(0|(I=-1!=(0|(N=A[N+4>>2]))?A[(N<<2)+D>>2]:-1))!=(0|e)){for(;e=r,!((0|E)<=(0|(R=R+1|0))||(I=A[(O=((r=e+1|0)<<3)+s|0)>>2],A[(z=(e<<3)+s|0)+4>>2]=A[O+4>>2],A[z>>2]=I,-1==(0|I))););if(A[(e<<3)+s>>2]=-1,-1==(0|N))break A;A[B+g>>2]=N,A[B+(N<<2)>>2]=T;break n}if(r=r+1|0,(0|E)==(0|(R=R+1|0)))break}if(!((0|(U=A[(r=U<<2)+_>>2]))<=0))for(r=A[r+W>>2],R=0;;){if(-1==A[(e=(r<<3)+s|0)>>2]){A[e>>2]=V,A[e+4>>2]=T;break n}if(r=r+1|0,(0|U)==(0|(R=R+1|0)))break}}}if(!((T=a)>>>0<j>>>0))break}break f}break i}sa(),v()}A[Z>>2]=G,W&&oa(W),s&&oa(s),(r=A[d+16>>2])&&(A[d+20>>2]=r,oa(r))}if(Q=d+32|0,F=!!(0|Z)){if(Q=U=Q-32|0,r=A[h>>2],R=A[h+4>>2],A[U+24>>2]=0,A[U+16>>2]=0,A[U+20>>2]=0,(0|r)==(0|R))a=R;else{if((0|(r=R-r|0))<0)break i;a=pa((e=1+((r>>=2)-1>>>5|0)|0)<<2),A[U+24>>2]=e,A[U+20>>2]=0,A[U+16>>2]=a,Mc(U+16|0,r),R=A[h>>2],a=A[h+4>>2]}for(A[U+8>>2]=0,A[U>>2]=0;;){if(N=0,j=0,(0|a)!=(0|R)){for(;;){e=A[U+16>>2];f:if(!(A[e+(j>>>3&536870908)>>2]>>>j&1)){for(a=A[U>>2],A[U+4>>2]=a,_=A[h+12>>2],r=j;s=r,!(-1==(0|(r=((d=r+1|0)>>>0)%3|0?d:r-2|0))||-1==(0|(r=A[_+(r<<2)>>2]))||(0|j)==(0|(r=((d=r+1|0)>>>0)%3|0?d:r-2|0))|-1==(0|r)||A[e+(r>>>3&536870908)>>2]>>>r&1););D=s;t:{o:{b:{for(;;){if(r=A[U+16>>2]+(D>>>3&536870908)|0,A[r>>2]=A[r>>2]|1<<D,d=((r=D+1|0)>>>0)%3|0?r:D-2|0,R=A[h>>2],e=((B=(D>>>0)%3|0)?-1:2)+D|0,!(E=(0|(T=A[U>>2]))==(0|a)))if(Z=A[(d<<2)+R>>2],W=A[h+12>>2],r=T,-1==(0|e))for(;;){if((0|Z)==A[r>>2]&&(G=-1,_=-1,-1!=(0|(V=A[r+4>>2]))))break o;if((0|a)==(0|(r=r+8|0)))break}else for(_=W+(e<<2)|0;;){if((0|Z)==A[r>>2]&&(0|(V=A[r+4>>2]))!=(0|(G=A[_>>2]))){if(_=e,a=-1,r=-1,-1==(0|V))break t;break o}if((0|a)==(0|(r=r+8|0)))break}if(e=A[(e<<2)+R>>2],A[U+8>>2]==(0|a)){if((_=(V=(r=a-T|0)>>3)+1|0)>>>0>=536870912)break i;if(R=r>>>2|0,R=r>>>0>=2147483640?536870911:_>>>0<R>>>0?R:_){if(R>>>0>=536870912)break b;_=pa(R<<3)}else _=0;if(A[(r=_+(V<<3)|0)>>2]=e,A[r+4>>2]=d,e=r+8|0,!E){for(;d=A[(a=a-8|0)+4>>2],A[(r=r-8|0)>>2]=A[a>>2],A[r+4>>2]=d,(0|a)!=(0|T););a=A[U>>2]}A[U+8>>2]=_+(R<<3),A[U+4>>2]=e,A[U>>2]=r,a&&oa(a),a=e}else A[a>>2]=e,A[a+4>>2]=d,a=a+8|0,A[U+4>>2]=a;n:{if(B)r=D-1|0;else if(-1==(0|(r=D+2|0)))break n;if(-1!=(0|(r=A[A[h+12>>2]+(r<<2)>>2]))&&(0|s)!=(0|(D=r+((r>>>0)%3|0?-1:2)|0))&&-1!=(0|D))continue}break}R=A[h>>2];break f}wa(),v()}a=A[W+(V<<2)>>2],e=_,r=V}-1!=(0|G)&&(A[W+(G<<2)>>2]=-1),-1!=(0|a)&&(A[W+(a<<2)>>2]=-1),A[W+(e<<2)>>2]=-1,A[W+(r<<2)>>2]=-1,N=1}if(!((j=j+1|0)>>>0<(a=A[h+4>>2])-R>>2>>>0))break}if(N)continue}break}(r=A[U>>2])&&oa(r),(r=A[U+16>>2])&&oa(r),T=0,Q=R=(Q=U+32|0)-32|0,_=A[Y+12>>2],A[h+36>>2]=_,V=h+24|0,e=A[h+24>>2];f:{if((r=A[h+28>>2]-e>>2)>>>0<_>>>0)qb(V,_-r|0,13652),A[R+24>>2]=0,A[R+16>>2]=0,A[R+20>>2]=0;else if(r>>>0>_>>>0&&(A[h+28>>2]=e+(_<<2)),A[R+24>>2]=0,A[R+16>>2]=0,A[R+20>>2]=0,!_)break f;if((0|_)<0)break i;e=pa((r=1+(_-1>>>5|0)|0)<<2),A[R+24>>2]=r,A[R+20>>2]=0,A[R+16>>2]=e,Mc(R+16|0,_)}r=A[h>>2],e=A[h+4>>2],A[R+8>>2]=0,A[R>>2]=0,A[R+4>>2]=0;f:{if((0|r)==(0|e))r=e;else{if((0|(r=e-r|0))<0)break i;a=pa((e=1+((r>>=2)-1>>>5|0)|0)<<2),A[R+8>>2]=e,A[R+4>>2]=0,A[R>>2]=a,Mc(R,r),e=A[h>>2],r=A[h+4>>2]}if(!(r-e>>>0<12)){t:{for(;;){if(W=m(T,3),d=A[(s=(W<<2)+e|0)>>2],a=-1,-1!=(0|(j=W+1|0))&&(a=A[(j<<2)+e>>2]),(0|a)!=(0|d)&&!((0|(j=d))==(0|(d=A[s+8>>2]))|(0|a)==(0|d))){for(U=0,j=A[R>>2];;){if(!(A[((d=U+W|0)>>>3&536870908)+j>>2]>>>d&1)){if(a=1<<(r=A[(d<<2)+e>>2]),s=A[R+16>>2],G=a&(j=A[s+((e=r>>>5|0)<<2)>>2])){if((0|(a=A[h+28>>2]))==A[h+32>>2]){if((s=(N=(e=a-(j=A[V>>2])|0)>>2)+1|0)>>>0>=1073741824)break i;if(D=e>>>1|0,D=e>>>0>=2147483644?1073741823:s>>>0<D>>>0?D:s){if(D>>>0>=1073741824)break t;e=pa(D<<2)}else e=0;if(A[(s=e+(N<<2)|0)>>2]=-1,N=s+4|0,(0|a)!=(0|j))for(;a=a-4|0,A[(s=s-4|0)>>2]=A[a>>2],(0|a)!=(0|j););A[h+32>>2]=e+(D<<2),A[h+28>>2]=N,A[h+24>>2]=s,j&&oa(j)}else A[a>>2]=-1,A[h+28>>2]=a+4;if((0|(a=A[h+52>>2]))==A[h+56>>2]){if((s=(N=(e=a-(j=A[h+48>>2])|0)>>2)+1|0)>>>0>=1073741824)break i;if(D=e>>>1|0,D=e>>>0>=2147483644?1073741823:s>>>0<D>>>0?D:s){if(D>>>0>=1073741824)break t;e=pa(D<<2)}else e=0;if(A[(s=e+(N<<2)|0)>>2]=r,r=s+4|0,(0|a)!=(0|j))for(;a=a-4|0,A[(s=s-4|0)>>2]=A[a>>2],(0|a)!=(0|j););A[h+56>>2]=e+(D<<2),A[h+52>>2]=r,A[h+48>>2]=s,j&&oa(j)}else A[a>>2]=r,A[h+52>>2]=a+4;if((0|(a=A[R+20>>2]))==(r=A[R+24>>2])<<5){if((a+1|0)<0)break i;pb(e=R+16|0,r=a>>>0<=1073741822?(r<<=6)>>>0>(a=32+(-32&a)|0)>>>0?r:a:2147483647),a=A[R+20>>2]}A[R+20>>2]=a+1,s=A[R+16>>2],e=A[(r=s+(a>>>3&536870908)|0)>>2],C=r,P=Vj(a)&e,A[C>>2]=P,a=1<<_,j=A[((e=_>>>5|0)<<2)+s>>2],_=(r=_)+1|0}A[(e<<2)+s>>2]=a|j,N=A[h+24>>2]+(r<<2)|0,D=A[h+12>>2],e=A[h>>2],j=A[R>>2],a=d;o:{b:{n:{for(;;){if(-1==(0|a))break n;if(A[(s=(a>>>3&536870908)+j|0)>>2]=A[s>>2]|1<<a,A[N>>2]=a,G&&(A[(a<<2)+e>>2]=r),s=-1,-1!=(0|(a=((Z=a+1|0)>>>0)%3|0?Z:a-2|0))&&(s=-1,-1!=(0|(a=A[D+(a<<2)>>2]))&&(s=((s=a+1|0)>>>0)%3|0?s:a-2|0)),(0|d)==(0|(a=s)))break}if(-1!=(0|d))break o;a=1;break b}if((d>>>0)%3|0)a=d-1|0;else if(-1==(0|(a=d+2|0)))break o}if(-1!=(0|(a=A[D+(a<<2)>>2]))){if((a>>>0)%3|0)a=a-1|0;else if(-1==(0|(a=a+2|0)))break o;for(d=A[h+12>>2],e=A[h>>2];;){if(A[(s=(a>>>3&536870908)+j|0)>>2]=A[s>>2]|1<<a,G&&(A[(a<<2)+e>>2]=r),(a>>>0)%3|0)a=a-1|0;else if(-1==(0|(a=a+2|0)))break o;if(-1==(0|(a=A[d+(a<<2)>>2])))break o;if(-1==(0|(a=a+((a>>>0)%3|0?-1:2)|0)))break}}}}if(3==(0|(U=U+1|0)))break}e=A[h>>2],r=A[h+4>>2]}if(!((T=T+1|0)>>>0<(r-e>>2>>>0)/3>>>0))break}break f}wa(),v()}}if(a=0,A[h+44>>2]=0,r=A[R+16>>2],e=A[R+20>>2])for(_=31&e,e=(e>>>3&536870908)+r|0,s=r,j=0;A[s>>2]>>>a&1||(j=j+1|0,A[h+44>>2]=j),(0|e)!=(0|(s=((d=31==(0|a))<<2)+s|0))|(0|(a=d?0:a+1|0))!=(0|_););(e=A[R>>2])&&(oa(e),r=A[R+16>>2]),r&&oa(r),Q=R+32|0}Q=Y+16|0,F||(A[J+8>>2]=0,cb(h),h=0),Q=J+16|0,r=h;break a}sa(),v()}(e=A[o>>2])&&(A[o+4>>2]=e,oa(e))}else r=0;Q=o+16|0;break r}sa(),v()}if(a=A[i+4>>2],e=r,A[i+4>>2]=r,a&&(cb(a),e=A[i+4>>2]),e&&(r=A[n+100>>2],a=A[n+96>>2],b[t+12|0]=0,Oa(i+56|0,(r-a|0)/12|0,t+12|0),(0|(r=A[n+100>>2]))!=(0|(a=A[n+96>>2]))))for(;;){if(!(A[A[i+56>>2]+(M>>>3&536870908)>>2]>>>M&1)){if(Gc(i,0,r=m(M,3)),a=A[i+8>>2],_=A[i+12>>2],Gc(i,1,r+1|0),d=A[i+20>>2],s=A[i+24>>2],Gc(i,2,r+2|0),T=(0|a)==(0|_)?-1:0,_=(r=s-d>>2)>>>0>(a=_-a>>2)>>>0,a=A[i+36>>2]-A[i+32>>2]>>2>>>0>(_?r:a)>>>0?2:_?1:T,A[i+68>>2]<=0||(A[t+12>>2]=A[i+76>>2],A[t+8>>2]=f,bb(t+8|0,t+12|0),(0|(r=A[44+((a<<2)+i|0)>>2]))<0?r=-1:(_=(r>>>0)/3|0,r=A[(A[A[i>>2]+96>>2]+m(_,12)|0)+(r-m(_,3)<<2)>>2]),A[t+12>>2]=r,A[t+8>>2]=f,bb(t+8|0,t+12|0),_=A[i+72>>2],A[i+72>>2]=_+2,1&_&&(A[t+12>>2]=r,A[t+8>>2]=f,bb(t+8|0,t+12|0),A[i+72>>2]=A[i+72>>2]+1)),s=0,Q=_=Q-16|0,A[i+68>>2]=A[i+68>>2]+1,r=m(a,12)+i|0,(0|(r=A[r+12>>2]-A[r+8>>2]|0))>0)for(h=(r=r>>>2|0)>>>0<=1?1:r,a=A[44+((a<<2)+i|0)>>2];;){d=((r=a)>>>0)/3|0,R=(a=-1==(0|r))?-1:d,j=A[i+56>>2]+(R>>>3&536870908)|0,A[j>>2]=A[j>>2]|1<<R,A[i+72>>2]=A[i+72>>2]+1;r:{e:{a:{i:{f:{if(!s){if((0|r)>=0)A[_+12>>2]=A[(A[A[i>>2]+96>>2]+m(d,12)|0)+((r>>>0)%3<<2)>>2],A[_+8>>2]=f,bb(_+8|0,_+12|0);else if(A[_+12>>2]=-1,A[_+8>>2]=f,bb(_+8|0,_+12|0),a)break f;if(a=-1,(0|(d=((d=r+1|0)>>>0)%3|0?d:r-2|0))>=0?(R=(d>>>0)/3|0,d=A[(A[A[i>>2]+96>>2]+m(R,12)|0)+(d-m(R,3)<<2)>>2]):d=-1,A[_+12>>2]=d,A[_+8>>2]=f,bb(_+8|0,_+12|0),(0|(d=((r>>>0)%3|0?-1:2)+r|0))<0)break i;a=(d>>>0)/3|0,a=A[(A[A[i>>2]+96>>2]+m(a,12)|0)+(d-m(a,3)<<2)>>2];break i}if(a=(0|r)<0?-1:A[(A[A[i>>2]+96>>2]+m(d,12)|0)+((r>>>0)%3<<2)>>2],A[i+76>>2]=a,A[_+12>>2]=a,A[_+8>>2]=f,bb(_+8|0,_+12|0),1&s){if(a=-1,-1==(0|r))break r;if((0|m(d,3))!=(0|r)){r=r-1|0;break e}r=r+2|0;break a}if(a=-1,-1==(0|r))break r;r=((a=r+1|0)>>>0)%3|0?a:r-2|0;break a}a=-1,A[_+12>>2]=-1,A[_+8>>2]=f,bb(_+8|0,_+12|0)}A[i+76>>2]=a,A[_+12>>2]=a,A[_+8>>2]=f,bb(_+8|0,_+12|0)}if(a=-1,-1==(0|r))break r}a=A[A[A[i+4>>2]+12>>2]+(r<<2)>>2]}if((0|h)==(0|(s=s+1|0)))break}Q=_+16|0,a=A[n+96>>2],r=A[n+100>>2]}if(!((M=M+1|0)>>>0<(r-a|0)/12>>>0))break}return Q=t+16|0,e?((r=A[u>>2])&&(A[u+4>>2]=r,oa(r)),A[u>>2]=A[f>>2],A[u+4>>2]=A[f+4>>2],A[u+8>>2]=A[f+8>>2],X=A[f+84>>2]):(r=A[f>>2])&&(A[f+4>>2]=r,oa(r)),(r=A[f+72>>2])&&oa(r),(r=A[f+48>>2])&&(A[f+52>>2]=r,oa(r)),(r=A[f+36>>2])&&(A[f+40>>2]=r,oa(r)),(r=A[f+24>>2])&&(A[f+28>>2]=r,oa(r)),r=A[f+20>>2],A[f+20>>2]=0,r&&cb(r),Q=f+96|0,0|X},Ya:function Ag(r,e,a,i){r|=0,a|=0,i|=0;var f=0,t=0,o=0,b=0,k=0,u=0;if(!(s[(e|=0)+80>>2]>65535||(r=A[e+100>>2],e=A[e+96>>2],o=(0|(t=m(f=(r-e|0)/12|0,6)))==(0|a),(0|r)==(0|e)|(0|a)!=(0|t)))){if(o=1,k=1&(a=f>>>0<=1?1:f),r=0,f>>>0>=2)for(u=-2&a,a=0;b=(t=m(r,6))+i|0,f=e+m(r,12)|0,n[b>>1]=A[f>>2],n[(2|t)+i>>1]=A[f+4>>2],n[b+4>>1]=A[f+8>>2],f=m(t=1|r,6)+i|0,t=e+m(t,12)|0,n[f>>1]=A[t>>2],n[f+2>>1]=A[t+4>>2],n[f+4>>1]=A[t+8>>2],r=r+2|0,(0|u)!=(0|(a=a+2|0)););k&&(a=m(r,6)+i|0,r=e+m(r,12)|0,n[a>>1]=A[r>>2],n[a+2>>1]=A[r+4>>2],n[a+4>>1]=A[r+8>>2])}return 0|o},Za:function zg(r,e,a,i){r|=0,a|=0,i|=0;var f,t=0,o=0,b=0,n=0,k=0,u=0;if(!((0|(f=(r=A[(e|=0)+100>>2])-(e=A[e+96>>2])|0))!=(0|a)|(0|r)==(0|e))){if(k=1&(t=(b=(0|a)/12|0)>>>0<=1?1:b),r=0,b>>>0>=2)for(u=-2&t,b=0;o=e+(t=m(r,12))|0,A[(n=t+i|0)>>2]=A[o>>2],A[(4|t)+i>>2]=A[o+4>>2],A[n+8>>2]=A[o+8>>2],t=(o=m(1|r,12))+i|0,o=e+o|0,A[t>>2]=A[o>>2],A[t+4>>2]=A[o+4>>2],A[t+8>>2]=A[o+8>>2],r=r+2|0,(0|u)!=(0|(b=b+2|0)););k&&(t=i,e=e+(i=m(r,12))|0,A[(r=t+i|0)>>2]=A[e>>2],A[r+4>>2]=A[e+4>>2],A[r+8>>2]=A[e+8>>2])}return(0|a)==(0|f)|0},_a:function yg(r,e,a,i){r|=0,a|=0,i|=0;var f,t=0,o=0;return Q=r=Q-16|0,f=b[(e|=0)+24|0],t=A[3411],A[r+8>>2]=A[3410],A[r+12>>2]=t,t=A[3409],A[r>>2]=A[3408],A[r+4>>2]=t,(t=Va(e,a,f,r))&&(e=0,f&&(o=qa(e=pa(a=(255&f)<<2),r,a)+a|0),(a=A[i>>2])&&(A[i+4>>2]=a,oa(a)),A[i+8>>2]=o,A[i+4>>2]=o,A[i>>2]=e),Q=r+16|0,0|t},$a:function xg(r,e,a,i){r|=0,a|=0,i|=0;var f,t=0,o=0,n=0,u=0,s=0,d=0,R=0,h=0,j=0,D=0;if(f=A[(e|=0)+80>>2],e=k[a+24|0],n=m(f,e),e){if(r=o=pa(u=e<<2),d=7&e)for(;A[r>>2]=-1073741824,r=r+4|0,(0|d)!=(0|(t=t+1|0)););if(!((e-1&1073741823)>>>0<7))for(t=o+u|0;A[r+24>>2]=-1073741824,A[r+28>>2]=-1073741824,A[r+16>>2]=-1073741824,A[r+20>>2]=-1073741824,A[r+8>>2]=-1073741824,A[r+12>>2]=-1073741824,A[r>>2]=-1073741824,A[r+4>>2]=-1073741824,(0|t)!=(0|(r=r+32|0)););}t=A[i>>2],(r=A[i+4>>2]-t>>2)>>>0<n>>>0?ya(i,n-r|0):r>>>0<=n>>>0||(A[i+4>>2]=t+(n<<2));r:{e:{a:if(f){if(e){for(j=252&e,d=3&e,D=e>>>0<4,t=0,e=0;;){if(!Va(a,k[a+84|0]?e:A[A[a+68>>2]+(e<<2)>>2],b[a+24|0],o))break a;if(h=A[i>>2],s=0,r=0,R=0,!D)for(;u=r<<2,_[(n=(t<<2)+h|0)>>2]=_[u+o>>2],_[n+4>>2]=_[(4|u)+o>>2],_[n+8>>2]=_[(8|u)+o>>2],_[n+12>>2]=_[(12|u)+o>>2],r=r+4|0,t=t+4|0,(0|j)!=(0|(R=R+4|0)););if(d)for(;_[(t<<2)+h>>2]=_[(r<<2)+o>>2],r=r+1|0,t=t+1|0,(0|d)!=(0|(s=s+1|0)););if(s=f>>>0<=(e=e+1|0)>>>0,(0|e)==(0|f))break}break e}for(r=0;;){if(!Va(a,k[a+84|0]?r:A[A[a+68>>2]+(r<<2)>>2],b[a+24|0],o))break a;if(s=f>>>0<=(r=r+1|0)>>>0,(0|r)==(0|f))break}}else s=1;if(!o)break r}oa(o)}return 0|s},ab:ge,bb:function vg(r,e,a,i){r|=0,a|=0,i|=0;var f,t,o=0,n=0,u=0,s=0,_=0,d=0,R=0,h=0,j=0;Q=t=Q-16|0,f=A[(e|=0)+80>>2],o=k[a+24|0],r=m(f,o);r:{e:{a:{i:{if(e=A[a+28>>2],!(!k[a+84|0]|1!=(0|e)&2!=(0|e))){if(e=A[a+48>>2],a=A[A[a>>2]>>2],A[t+8>>2]=0,A[t>>2]=0,A[t+4>>2]=0,r){if((0|r)<0)break i;s=qa(n=pa(r),e+a|0,r)+r|0}(r=A[i>>2])&&(A[i+4>>2]=r,oa(r)),A[i+8>>2]=s,A[i+4>>2]=s,A[i>>2]=n,e=1;break r}o&&ra(n=pa(o),0,o);f:{t:if((u=(_=A[i+4>>2])-(e=A[i>>2])|0)>>>0<r>>>0){if((R=r-u|0)>>>0<=(d=A[i+8>>2])-_>>>0){h=i,j=ra(_,0,R)+R|0,A[h+4>>2]=j;break t}if((0|r)<0)break f;if(d=(_=d-e|0)<<1,ra((d=pa(_=_>>>0>=1073741823?2147483647:r>>>0<d>>>0?d:r))+u|0,0,R),u=va(d,e,u),A[i+8>>2]=u+_,A[i+4>>2]=r+u,A[i>>2]=u,!e)break t;oa(e)}else r>>>0>=u>>>0||(A[i+4>>2]=r+e);if(!f){e=1;break a}if(!o){for(e=0,r=0;;){if(!ic(a,k[a+84|0]?r:A[A[a+68>>2]+(r<<2)>>2],b[a+24|0],n))break a;if(e=f>>>0<=(r=r+1|0)>>>0,(0|r)==(0|f))break}break a}for(_=252&o,u=3&o,e=0,d=o>>>0<4,o=0;;){if(!ic(a,k[a+84|0]?o:A[A[a+68>>2]+(o<<2)>>2],b[a+24|0],n))break a;if(e=0,r=0,R=0,!d)for(;b[A[i>>2]+s|0]=k[r+n|0],b[1+(A[i>>2]+s|0)|0]=k[(1|r)+n|0],b[2+(A[i>>2]+s|0)|0]=k[(2|r)+n|0],b[3+(A[i>>2]+s|0)|0]=k[(3|r)+n|0],r=r+4|0,s=s+4|0,(0|_)!=(0|(R=R+4|0)););if(u)for(;b[A[i>>2]+s|0]=k[r+n|0],r=r+1|0,s=s+1|0,(0|u)!=(0|(e=e+1|0)););if(e=f>>>0<=(o=o+1|0)>>>0,(0|o)==(0|f))break}break e}sa(),v()}sa(),v()}if(!n)break r}oa(n)}return Q=t+16|0,1&e},cb:function ug(r,e,a,i){r|=0,a|=0,i|=0;var f,t,o=0,n=0,u=0,s=0,_=0,d=0,R=0,h=0,j=0;Q=t=Q-16|0,f=A[(e|=0)+80>>2],o=k[a+24|0],r=m(f,o);r:{e:{a:{i:{if(e=A[a+28>>2],!(!k[a+84|0]|1!=(0|e)&2!=(0|e))){if(e=A[a+48>>2],a=A[A[a>>2]>>2],A[t+8>>2]=0,A[t>>2]=0,A[t+4>>2]=0,r){if((0|r)<0)break i;s=qa(n=pa(r),e+a|0,r)+r|0}(r=A[i>>2])&&(A[i+4>>2]=r,oa(r)),A[i+8>>2]=s,A[i+4>>2]=s,A[i>>2]=n,e=1;break r}o&&ra(n=pa(o),0,o);f:{t:if((u=(_=A[i+4>>2])-(e=A[i>>2])|0)>>>0<r>>>0){if((R=r-u|0)>>>0<=(d=A[i+8>>2])-_>>>0){h=i,j=ra(_,0,R)+R|0,A[h+4>>2]=j;break t}if((0|r)<0)break f;if(d=(_=d-e|0)<<1,ra((d=pa(_=_>>>0>=1073741823?2147483647:r>>>0<d>>>0?d:r))+u|0,0,R),u=va(d,e,u),A[i+8>>2]=u+_,A[i+4>>2]=r+u,A[i>>2]=u,!e)break t;oa(e)}else r>>>0>=u>>>0||(A[i+4>>2]=r+e);if(!f){e=1;break a}if(!o){for(e=0,r=0;;){if(!hc(a,k[a+84|0]?r:A[A[a+68>>2]+(r<<2)>>2],b[a+24|0],n))break a;if(e=f>>>0<=(r=r+1|0)>>>0,(0|r)==(0|f))break}break a}for(_=252&o,u=3&o,e=0,d=o>>>0<4,o=0;;){if(!hc(a,k[a+84|0]?o:A[A[a+68>>2]+(o<<2)>>2],b[a+24|0],n))break a;if(e=0,r=0,R=0,!d)for(;b[A[i>>2]+s|0]=k[r+n|0],b[1+(A[i>>2]+s|0)|0]=k[(1|r)+n|0],b[2+(A[i>>2]+s|0)|0]=k[(2|r)+n|0],b[3+(A[i>>2]+s|0)|0]=k[(3|r)+n|0],r=r+4|0,s=s+4|0,(0|_)!=(0|(R=R+4|0)););if(u)for(;b[A[i>>2]+s|0]=k[r+n|0],r=r+1|0,s=s+1|0,(0|u)!=(0|(e=e+1|0)););if(e=f>>>0<=(o=o+1|0)>>>0,(0|o)==(0|f))break}break e}sa(),v()}sa(),v()}if(!n)break r}oa(n)}return Q=t+16|0,1&e},db:function tg(r,e,a,i){r|=0,a|=0,i|=0;var f,t,o=0,s=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0;r=0,Q=t=Q-16|0,f=A[(e|=0)+80>>2],o=k[a+24|0],e=m(f,o);r:{e:{a:{i:{if(s=A[a+28>>2],!(!k[a+84|0]|3!=(0|s)&4!=(0|s))){if(o=A[a+48>>2],a=A[A[a>>2]>>2],A[t+8>>2]=0,A[t>>2]=0,A[t+4>>2]=0,e){if((0|e)<0)break i;_=qa(r=pa(e<<=1),a+o|0,e)+e|0}(e=A[i>>2])&&(A[i+4>>2]=e,oa(e)),A[i+8>>2]=_,A[i+4>>2]=_,A[i>>2]=r,d=1;break r}if(o&&ra(r=pa(s=o<<1),0,s),R=A[i>>2],(s=A[i+4>>2]-R>>1)>>>0<e>>>0?qe(i,e-s|0):e>>>0>=s>>>0||(A[i+4>>2]=R+(e<<1)),!f){d=1;break a}if(!o){for(e=0;;){if(!gc(a,k[a+84|0]?e:A[A[a+68>>2]+(e<<2)>>2],b[a+24|0],r))break a;if(d=f>>>0<=(e=e+1|0)>>>0,(0|e)==(0|f))break}break a}for(U=252&o,j=3&o,T=o>>>0<4,o=0;;){if(!gc(a,k[a+84|0]?o:A[A[a+68>>2]+(o<<2)>>2],b[a+24|0],r))break a;if(D=A[i>>2],h=0,e=0,d=0,!T)for(;R=e<<1,n[(s=(_<<1)+D|0)>>1]=u[R+r>>1],n[s+2>>1]=u[(2|R)+r>>1],n[s+4>>1]=u[(4|R)+r>>1],n[s+6>>1]=u[(6|R)+r>>1],e=e+4|0,_=_+4|0,(0|U)!=(0|(d=d+4|0)););if(j)for(;n[(_<<1)+D>>1]=u[(e<<1)+r>>1],e=e+1|0,_=_+1|0,(0|(h=h+1|0))!=(0|j););if(d=f>>>0<=(o=o+1|0)>>>0,(0|o)==(0|f))break}break e}sa(),v()}if(!r)break r}oa(r)}return Q=t+16|0,0|d},eb:function sg(r,e,a,i){r|=0,a|=0,i|=0;var f,t,o=0,s=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0;r=0,Q=t=Q-16|0,f=A[(e|=0)+80>>2],o=k[a+24|0],e=m(f,o);r:{e:{a:{i:{if(s=A[a+28>>2],!(!k[a+84|0]|3!=(0|s)&4!=(0|s))){if(o=A[a+48>>2],a=A[A[a>>2]>>2],A[t+8>>2]=0,A[t>>2]=0,A[t+4>>2]=0,e){if((0|e)<0)break i;_=qa(r=pa(e<<=1),a+o|0,e)+e|0}(e=A[i>>2])&&(A[i+4>>2]=e,oa(e)),A[i+8>>2]=_,A[i+4>>2]=_,A[i>>2]=r,d=1;break r}if(o&&ra(r=pa(s=o<<1),0,s),R=A[i>>2],(s=A[i+4>>2]-R>>1)>>>0<e>>>0?qe(i,e-s|0):e>>>0>=s>>>0||(A[i+4>>2]=R+(e<<1)),!f){d=1;break a}if(!o){for(e=0;;){if(!fc(a,k[a+84|0]?e:A[A[a+68>>2]+(e<<2)>>2],b[a+24|0],r))break a;if(d=f>>>0<=(e=e+1|0)>>>0,(0|e)==(0|f))break}break a}for(U=252&o,j=3&o,T=o>>>0<4,o=0;;){if(!fc(a,k[a+84|0]?o:A[A[a+68>>2]+(o<<2)>>2],b[a+24|0],r))break a;if(D=A[i>>2],h=0,e=0,d=0,!T)for(;R=e<<1,n[(s=(_<<1)+D|0)>>1]=u[R+r>>1],n[s+2>>1]=u[(2|R)+r>>1],n[s+4>>1]=u[(4|R)+r>>1],n[s+6>>1]=u[(6|R)+r>>1],e=e+4|0,_=_+4|0,(0|U)!=(0|(d=d+4|0)););if(j)for(;n[(_<<1)+D>>1]=u[(e<<1)+r>>1],e=e+1|0,_=_+1|0,(0|(h=h+1|0))!=(0|j););if(d=f>>>0<=(o=o+1|0)>>>0,(0|o)==(0|f))break}break e}sa(),v()}if(!r)break r}oa(r)}return Q=t+16|0,0|d},fb:ge,gb:function rg(r,e,a,i){r|=0,a|=0,i|=0;var f,t,o=0,n=0,u=0,s=0,_=0,d=0,R=0,h=0,j=0,D=0;r=0,Q=t=Q-16|0,f=A[(e|=0)+80>>2],o=k[a+24|0],e=m(f,o);r:{e:{a:{i:{if(n=A[a+28>>2],!(!k[a+84|0]|5!=(0|n)&6!=(0|n))){if(o=A[a+48>>2],a=A[A[a>>2]>>2],A[t+8>>2]=0,A[t>>2]=0,A[t+4>>2]=0,e){if((0|e)<0)break i;u=qa(r=pa(e<<=2),a+o|0,e)+e|0}(e=A[i>>2])&&(A[i+4>>2]=e,oa(e)),A[i+8>>2]=u,A[i+4>>2]=u,A[i>>2]=r,s=1;break r}if(o&&ra(r=pa(n=o<<2),0,n),_=A[i>>2],(n=A[i+4>>2]-_>>2)>>>0<e>>>0?ya(i,e-n|0):e>>>0>=n>>>0||(A[i+4>>2]=_+(e<<2)),!f){s=1;break a}if(!o){for(e=0;;){if(!dc(a,k[a+84|0]?e:A[A[a+68>>2]+(e<<2)>>2],b[a+24|0],r))break a;if(s=f>>>0<=(e=e+1|0)>>>0,(0|e)==(0|f))break}break a}for(j=252&o,R=3&o,D=o>>>0<4,o=0;;){if(!dc(a,k[a+84|0]?o:A[A[a+68>>2]+(o<<2)>>2],b[a+24|0],r))break a;if(h=A[i>>2],d=0,e=0,s=0,!D)for(;_=e<<2,A[(n=(u<<2)+h|0)>>2]=A[_+r>>2],A[n+4>>2]=A[(4|_)+r>>2],A[n+8>>2]=A[(8|_)+r>>2],A[n+12>>2]=A[(12|_)+r>>2],e=e+4|0,u=u+4|0,(0|j)!=(0|(s=s+4|0)););if(R)for(;A[(u<<2)+h>>2]=A[(e<<2)+r>>2],e=e+1|0,u=u+1|0,(0|(d=d+1|0))!=(0|R););if(s=f>>>0<=(o=o+1|0)>>>0,(0|o)==(0|f))break}break e}sa(),v()}if(!r)break r}oa(r)}return Q=t+16|0,0|s},hb:function qg(r,e,a,i,f,t){r|=0,a|=0,f|=0,t|=0;var o=0,n=0,u=0,s=0,_=0,d=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0;u=e|=0,r=0,e=0;r:{e:switch((i|=0)-1|0){case 0:if(s=A[u+80>>2],n=k[a+24|0],(0|m(s,n))==(0|f))if((i=1!=A[a+28>>2])|!(e=k[a+84|0])){n&&ra(r=pa(n),0,n);a:if(s)if(i)if(e=0,n)for(i=0,f=0;;){if(!ic(a,k[a+84|0]?f:A[A[a+68>>2]+(f<<2)>>2],b[a+24|0],r))break a;if(qa(i+t|0,r,n),i=i+n|0,e=s>>>0<=(f=f+1|0)>>>0,(0|f)==(0|s))break}else for(i=0;;){if(!ic(a,k[a+84|0]?i:A[A[a+68>>2]+(i<<2)>>2],b[a+24|0],r))break a;if(e=s>>>0<=(i=i+1|0)>>>0,(0|i)==(0|s))break}else{if(n){for(i=0,f=0;u=i+t|0,_=A[A[a>>2]>>2],R=A[a+48>>2],h=e=Rj(o=A[a+40>>2],A[a+44>>2],k[a+84|0]?f:A[A[a+68>>2]+(f<<2)>>2],0),qa(u,qa(r,(e=e+R|0)+_|0,o),n),i=i+n|0,e=1,(0|s)!=(0|(f=f+1|0)););break a}if(e){if(e=1,n=A[a>>2],f=A[a+48>>2],t=A[a+40>>2],u=A[a+44>>2],1!=(0|s)){for(o=-2&s,a=0,i=0;_=qa(r,(_=A[n>>2])+(R=Rj(t,u,a,0)+f|0)|0,t),qa(_,(R=A[n>>2])+(h=Rj(t,u,1|a,0)+f|0)|0,t),a=a+2|0,(0|o)!=(0|(i=i+2|0)););o=a}if(!(1&s))break a;qa(r,(a=A[n>>2])+(i=Rj(o,0,t,u)+f|0)|0,t);break a}if(e=1,n=A[a>>2],f=A[a+48>>2],o=A[a+68>>2],t=A[a+40>>2],u=A[a+44>>2],a=0,1!=(0|s))for(_=-2&s,i=0;R=qa(r,(R=A[n>>2])+(d=Rj(t,u,A[(h=a<<2)+o>>2],0)+f|0)|0,t),qa(R,(d=A[n>>2])+(h=Rj(t,u,A[o+(4|h)>>2],0)+f|0)|0,t),a=a+2|0,(0|_)!=(0|(i=i+2|0)););if(!(1&s))break a;i=A[n>>2],qa(r,(a=Rj(t,u,A[o+(a<<2)>>2],0)+f|0)+i|0,t)}else e=1;r&&oa(r)}else qa(t,A[A[a>>2]>>2]+A[a+48>>2]|0,f),e=1;break r;case 2:if(d=(h=k[a+24|0])<<1,s=A[u+80>>2],(0|m(d,s))==(0|f))if((u=3!=A[a+28>>2])|!(i=k[a+84|0])){h?ra(f=pa(d),0,d):f=0;a:if(s)if(u)if(h)for(i=0;;){if(!gc(a,k[a+84|0]?i:A[A[a+68>>2]+(i<<2)>>2],b[a+24|0],f))break a;if(qa((e<<1)+t|0,f,d),e=e+h|0,r=s>>>0<=(i=i+1|0)>>>0,(0|i)==(0|s))break}else for(i=0;;){if(!gc(a,k[a+84|0]?i:A[A[a+68>>2]+(i<<2)>>2],b[a+24|0],f))break a;if(r=s>>>0<=(i=i+1|0)>>>0,(0|i)==(0|s))break}else{if(j=A[a+68>>2],_=A[a>>2],e=A[a+48>>2],u=A[a+40>>2],R=A[a+44>>2],h){if(!i){for(a=0,i=0;r=1,qa((a<<1)+t|0,qa(f,(o=A[_>>2])+(D=Rj(u,R,A[j+(i<<2)>>2],0)+e|0)|0,u),d),a=a+h|0,(0|s)!=(0|(i=i+1|0)););break a}for(a=0;r=1,qa((a<<1)+t|0,qa(f,(j=A[_>>2])+(D=Rj(o,n,u,R)+e|0)|0,u),d),a=a+h|0,i=n,n=i=(o=o+1|0)?i:i+1|0,(0|s)!=(0|o)|i;);break a}if(!i){if(r=1,a=0,1!=(0|s))for(t=-2&s,i=0;n=qa(f,(n=A[_>>2])+(h=Rj(u,R,A[(o=a<<2)+j>>2],0)+e|0)|0,u),h=A[_>>2],qa(n,(o=Rj(u,R,A[j+(4|o)>>2],0)+e|0)+h|0,u),a=a+2|0,(0|t)!=(0|(i=i+2|0)););if(!(1&s))break a;i=A[_>>2],qa(f,(e=Rj(u,R,A[j+(a<<2)>>2],0)+e|0)+i|0,u);break a}if(h=1&s,r=1,1!=(0|s))for(s&=-2,t=0,a=0;i=qa(f,(i=A[_>>2])+(d=Rj(o,n,u,R)+e|0)|0,u),qa(i,(d=A[_>>2])+(j=Rj(u,R,1|o,n)+e|0)|0,u),n=(o=o+2|0)>>>0<2?n+1|0:n,(0|(t=t+2|0))!=(0|s)|(a=i=t>>>0<2?a+1|0:a););if(!h)break a;a=A[_>>2],qa(f,(e=Rj(o,n,u,R)+e|0)+a|0,u)}else r=1;f&&oa(f)}else qa(t,A[A[a>>2]>>2]+A[a+48>>2]|0,f),r=1;e=r;break r;case 4:if(j=(d=k[a+24|0])<<2,s=A[u+80>>2],(0|m(j,s))==(0|f))if((u=5!=A[a+28>>2])|!(i=k[a+84|0])){d?ra(f=pa(j),0,j):f=0,e=1;a:if(s)if(u)if(e=0,d)for(i=0;;){if(!ec(a,k[a+84|0]?i:A[A[a+68>>2]+(i<<2)>>2],b[a+24|0],f))break a;if(qa((r<<2)+t|0,f,j),r=r+d|0,e=s>>>0<=(i=i+1|0)>>>0,(0|i)==(0|s))break}else for(i=0;;){if(!ec(a,k[a+84|0]?i:A[A[a+68>>2]+(i<<2)>>2],b[a+24|0],f))break a;if(e=s>>>0<=(i=i+1|0)>>>0,(0|i)==(0|s))break}else{if(r=A[a+68>>2],R=A[a>>2],u=A[a+48>>2],_=A[a+40>>2],h=A[a+44>>2],d){if(!i){for(a=0,i=0;qa((a<<2)+t|0,qa(f,(o=A[R>>2])+(D=Rj(_,h,A[r+(i<<2)>>2],0)+u|0)|0,_),j),a=a+d|0,(0|s)!=(0|(i=i+1|0)););break a}for(a=0;qa((a<<2)+t|0,qa(f,(i=A[R>>2])+(D=Rj(o,n,_,h)+u|0)|0,_),j),a=a+d|0,(0|s)!=(0|(o=o+1|0))|(n=r=o?n:n+1|0););break a}if(!i){if(a=0,1!=(0|s))for(t=-2&s,i=0;n=qa(f,(n=A[R>>2])+(d=Rj(_,h,A[(o=a<<2)+r>>2],0)+u|0)|0,_),d=A[R>>2],qa(n,(o=Rj(_,h,A[r+(4|o)>>2],0)+u|0)+d|0,_),a=a+2|0,(0|t)!=(0|(i=i+2|0)););if(!(1&s))break a;i=A[R>>2],qa(f,(r=Rj(_,h,A[r+(a<<2)>>2],0)+u|0)+i|0,_);break a}if(d=1&s,1!=(0|s))for(s&=-2,t=0,a=0;r=qa(f,(r=A[R>>2])+(i=Rj(o,n,_,h)+u|0)|0,_),qa(r,(i=A[R>>2])+(j=Rj(_,h,1|o,n)+u|0)|0,_),i=n,n=(o=o+2|0)>>>0<2?i+1|0:i,(0|(t=t+2|0))!=(0|s)|(a=r=t>>>0<2?a+1|0:a););if(!d)break a;qa(f,(r=A[R>>2])+(a=Rj(o,n,_,h)+u|0)|0,_)}f&&oa(f)}else qa(t,A[A[a>>2]>>2]+A[a+48>>2]|0,f),e=1;break r;case 1:if(s=A[u+80>>2],n=k[a+24|0],(0|m(s,n))==(0|f))if((i=2!=A[a+28>>2])|!(e=k[a+84|0])){n&&ra(r=pa(n),0,n);a:if(s)if(i)if(e=0,n)for(i=0,f=0;;){if(!hc(a,k[a+84|0]?f:A[A[a+68>>2]+(f<<2)>>2],b[a+24|0],r))break a;if(qa(i+t|0,r,n),i=i+n|0,e=s>>>0<=(f=f+1|0)>>>0,(0|f)==(0|s))break}else for(i=0;;){if(!hc(a,k[a+84|0]?i:A[A[a+68>>2]+(i<<2)>>2],b[a+24|0],r))break a;if(e=s>>>0<=(i=i+1|0)>>>0,(0|i)==(0|s))break}else{if(n){for(i=0,f=0;u=i+t|0,_=A[A[a>>2]>>2],R=A[a+48>>2],h=e=Rj(o=A[a+40>>2],A[a+44>>2],k[a+84|0]?f:A[A[a+68>>2]+(f<<2)>>2],0),qa(u,qa(r,(e=e+R|0)+_|0,o),n),i=i+n|0,e=1,(0|s)!=(0|(f=f+1|0)););break a}if(e){if(e=1,n=A[a>>2],f=A[a+48>>2],t=A[a+40>>2],u=A[a+44>>2],1!=(0|s)){for(o=-2&s,a=0,i=0;_=qa(r,(_=A[n>>2])+(R=Rj(t,u,a,0)+f|0)|0,t),qa(_,(R=A[n>>2])+(h=Rj(t,u,1|a,0)+f|0)|0,t),a=a+2|0,(0|o)!=(0|(i=i+2|0)););o=a}if(!(1&s))break a;qa(r,(a=A[n>>2])+(i=Rj(o,0,t,u)+f|0)|0,t);break a}if(e=1,n=A[a>>2],f=A[a+48>>2],o=A[a+68>>2],t=A[a+40>>2],u=A[a+44>>2],a=0,1!=(0|s))for(_=-2&s,i=0;R=qa(r,(R=A[n>>2])+(d=Rj(t,u,A[(h=a<<2)+o>>2],0)+f|0)|0,t),qa(R,(d=A[n>>2])+(h=Rj(t,u,A[o+(4|h)>>2],0)+f|0)|0,t),a=a+2|0,(0|_)!=(0|(i=i+2|0)););if(!(1&s))break a;i=A[n>>2],qa(r,(a=Rj(t,u,A[o+(a<<2)>>2],0)+f|0)+i|0,t)}else e=1;r&&oa(r)}else qa(t,A[A[a>>2]>>2]+A[a+48>>2]|0,f),e=1;break r;case 3:if(d=(h=k[a+24|0])<<1,s=A[u+80>>2],(0|m(d,s))==(0|f))if((u=4!=A[a+28>>2])|!(i=k[a+84|0])){h?ra(f=pa(d),0,d):f=0;a:if(s)if(u)if(h)for(i=0;;){if(!fc(a,k[a+84|0]?i:A[A[a+68>>2]+(i<<2)>>2],b[a+24|0],f))break a;if(qa((e<<1)+t|0,f,d),e=e+h|0,r=s>>>0<=(i=i+1|0)>>>0,(0|i)==(0|s))break}else for(i=0;;){if(!fc(a,k[a+84|0]?i:A[A[a+68>>2]+(i<<2)>>2],b[a+24|0],f))break a;if(r=s>>>0<=(i=i+1|0)>>>0,(0|i)==(0|s))break}else{if(j=A[a+68>>2],_=A[a>>2],e=A[a+48>>2],u=A[a+40>>2],R=A[a+44>>2],h){if(!i){for(a=0,i=0;r=1,qa((a<<1)+t|0,qa(f,(o=A[_>>2])+(D=Rj(u,R,A[j+(i<<2)>>2],0)+e|0)|0,u),d),a=a+h|0,(0|s)!=(0|(i=i+1|0)););break a}for(a=0;r=1,qa((a<<1)+t|0,qa(f,(j=A[_>>2])+(D=Rj(o,n,u,R)+e|0)|0,u),d),a=a+h|0,i=n,n=i=(o=o+1|0)?i:i+1|0,(0|s)!=(0|o)|i;);break a}if(!i){if(r=1,a=0,1!=(0|s))for(t=-2&s,i=0;n=qa(f,(n=A[_>>2])+(h=Rj(u,R,A[(o=a<<2)+j>>2],0)+e|0)|0,u),h=A[_>>2],qa(n,(o=Rj(u,R,A[j+(4|o)>>2],0)+e|0)+h|0,u),a=a+2|0,(0|t)!=(0|(i=i+2|0)););if(!(1&s))break a;i=A[_>>2],qa(f,(e=Rj(u,R,A[j+(a<<2)>>2],0)+e|0)+i|0,u);break a}if(h=1&s,r=1,1!=(0|s))for(s&=-2,t=0,a=0;i=qa(f,(i=A[_>>2])+(d=Rj(o,n,u,R)+e|0)|0,u),qa(i,(d=A[_>>2])+(j=Rj(u,R,1|o,n)+e|0)|0,u),n=(o=o+2|0)>>>0<2?n+1|0:n,(0|(t=t+2|0))!=(0|s)|(a=i=t>>>0<2?a+1|0:a););if(!h)break a;a=A[_>>2],qa(f,(e=Rj(o,n,u,R)+e|0)+a|0,u)}else r=1;f&&oa(f)}else qa(t,A[A[a>>2]>>2]+A[a+48>>2]|0,f),r=1;e=r;break r;case 5:if(j=(d=k[a+24|0])<<2,s=A[u+80>>2],(0|m(j,s))==(0|f))if((u=6!=A[a+28>>2])|!(i=k[a+84|0])){d?ra(f=pa(j),0,j):f=0,e=1;a:if(s)if(u)if(e=0,d)for(i=0;;){if(!dc(a,k[a+84|0]?i:A[A[a+68>>2]+(i<<2)>>2],b[a+24|0],f))break a;if(qa((r<<2)+t|0,f,j),r=r+d|0,e=s>>>0<=(i=i+1|0)>>>0,(0|i)==(0|s))break}else for(i=0;;){if(!dc(a,k[a+84|0]?i:A[A[a+68>>2]+(i<<2)>>2],b[a+24|0],f))break a;if(e=s>>>0<=(i=i+1|0)>>>0,(0|i)==(0|s))break}else{if(r=A[a+68>>2],R=A[a>>2],u=A[a+48>>2],_=A[a+40>>2],h=A[a+44>>2],d){if(!i){for(a=0,i=0;qa((a<<2)+t|0,qa(f,(o=A[R>>2])+(D=Rj(_,h,A[r+(i<<2)>>2],0)+u|0)|0,_),j),a=a+d|0,(0|s)!=(0|(i=i+1|0)););break a}for(a=0;qa((a<<2)+t|0,qa(f,(i=A[R>>2])+(D=Rj(o,n,_,h)+u|0)|0,_),j),a=a+d|0,(0|s)!=(0|(o=o+1|0))|(n=r=o?n:n+1|0););break a}if(!i){if(a=0,1!=(0|s))for(t=-2&s,i=0;n=qa(f,(n=A[R>>2])+(d=Rj(_,h,A[(o=a<<2)+r>>2],0)+u|0)|0,_),d=A[R>>2],qa(n,(o=Rj(_,h,A[r+(4|o)>>2],0)+u|0)+d|0,_),a=a+2|0,(0|t)!=(0|(i=i+2|0)););if(!(1&s))break a;i=A[R>>2],qa(f,(r=Rj(_,h,A[r+(a<<2)>>2],0)+u|0)+i|0,_);break a}if(d=1&s,1!=(0|s))for(s&=-2,t=0,a=0;r=qa(f,(r=A[R>>2])+(i=Rj(o,n,_,h)+u|0)|0,_),qa(r,(i=A[R>>2])+(j=Rj(_,h,1|o,n)+u|0)|0,_),i=n,n=(o=o+2|0)>>>0<2?i+1|0:i,(0|(t=t+2|0))!=(0|s)|(a=r=t>>>0<2?a+1|0:a););if(!d)break a;qa(f,(r=A[R>>2])+(a=Rj(o,n,_,h)+u|0)|0,_)}f&&oa(f)}else qa(t,A[A[a>>2]>>2]+A[a+48>>2]|0,f),e=1;break r;case 8:if(U=(D=k[a+24|0])<<2,_=A[u+80>>2],(0|m(U,_))==(0|f)){if(u=A[a+28>>2],D){if(i=r=pa(U),d=1+((R=U-4|0)>>>2|0)&7)for(f=0;A[i>>2]=-1073741824,i=i+4|0,(0|d)!=(0|(f=f+1|0)););if(!(R>>>0<28))for(f=(D<<2)+r|0;A[i+24>>2]=-1073741824,A[i+28>>2]=-1073741824,A[i+16>>2]=-1073741824,A[i+20>>2]=-1073741824,A[i+8>>2]=-1073741824,A[i+12>>2]=-1073741824,A[i>>2]=-1073741824,A[i+4>>2]=-1073741824,(0|f)!=(0|(i=i+32|0)););}a:if(_)if(9!=(0|u))if(D)for(f=0,i=0;;){if(!Va(a,k[a+84|0]?i:A[A[a+68>>2]+(i<<2)>>2],b[a+24|0],r))break a;if(qa((f<<2)+t|0,r,U),f=f+D|0,e=_>>>0<=(i=i+1|0)>>>0,(0|i)==(0|_))break}else for(i=0;;){if(!Va(a,k[a+84|0]?i:A[A[a+68>>2]+(i<<2)>>2],b[a+24|0],r))break a;if(e=_>>>0<=(i=i+1|0)>>>0,(0|i)==(0|_))break}else{if(T=A[a+68>>2],d=A[a>>2],u=A[a+48>>2],N=k[a+84|0],R=A[a+44>>2],j=a=A[a+40>>2],D){for(f=0,i=0;n=(f<<2)+t|0,o=A[d>>2],qa(n,qa(r,(e=Rj(a,R,N?i:A[T+(i<<2)>>2],0)+u|0)+o|0,j),U),f=f+D|0,e=1,(0|_)!=(0|(i=i+1|0)););break a}if(!N){if(e=1,i=0,1!=(0|_))for(t=-2&_,f=0;n=qa(r,(n=A[d>>2])+(s=Rj(a,R,A[(o=i<<2)+T>>2],0)+u|0)|0,j),qa(n,(s=A[d>>2])+(o=Rj(a,R,A[T+(4|o)>>2],0)+u|0)|0,j),i=i+2|0,(0|t)!=(0|(f=f+2|0)););if(!(1&_))break a;f=A[d>>2],qa(r,(a=Rj(a,R,A[T+(i<<2)>>2],0)+u|0)+f|0,j);break a}if(t=1&_,e=1,1!=(0|_))for(_&=-2;i=qa(r,(i=A[d>>2])+(f=Rj(o,n,a,R)+u|0)|0,j),qa(i,(f=A[d>>2])+(D=Rj(a,R,1|o,n)+u|0)|0,j),n=(o=o+2|0)>>>0<2?n+1|0:n,i=s,h=f=h+2|0,s=i=f>>>0<2?i+1|0:i,(0|f)!=(0|_)|i;);if(!t)break a;i=A[d>>2],qa(r,(a=Rj(o,n,a,R)+u|0)+i|0,j)}else e=1;r&&oa(r)}r=e;break;default:break e}e=r}return 0|e},ib:function pg(r,e){r|=0,e|=0;var a,i,f=0,t=0,o=0,n=0,u=0,_=0,d=0,m=0,R=0,h=0,j=0,D=0,U=0,T=0,N=0,V=0,W=0,G=0,Z=0,F=0,B=0,I=0;Q=i=Q-16|0,A[i+12>>2]=e,e=pa(32),A[i>>2]=e,A[i+4>>2]=24,A[i+8>>2]=-2147483616,f=k[1206]|k[1207]<<8|k[1208]<<16|k[1209]<<24,t=k[1202]|k[1203]<<8|k[1204]<<16|k[1205]<<24,b[e+16|0]=t,b[e+17|0]=t>>>8,b[e+18|0]=t>>>16,b[e+19|0]=t>>>24,b[e+20|0]=f,b[e+21|0]=f>>>8,b[e+22|0]=f>>>16,b[e+23|0]=f>>>24,f=k[1198]|k[1199]<<8|k[1200]<<16|k[1201]<<24,t=k[1194]|k[1195]<<8|k[1196]<<16|k[1197]<<24,b[e+8|0]=t,b[e+9|0]=t>>>8,b[e+10|0]=t>>>16,b[e+11|0]=t>>>24,b[e+12|0]=f,b[e+13|0]=f>>>8,b[e+14|0]=f>>>16,b[e+15|0]=f>>>24,f=k[1190]|k[1191]<<8|k[1192]<<16|k[1193]<<24,t=k[1186]|k[1187]<<8|k[1188]<<16|k[1189]<<24,b[0|e]=t,b[e+1|0]=t>>>8,b[e+2|0]=t>>>16,b[e+3|0]=t>>>24,b[e+4|0]=f,b[e+5|0]=f>>>8,b[e+6|0]=f>>>16,b[e+7|0]=f>>>24,b[e+24|0]=0,Q=a=Q-48|0,n=A[i+12>>2],t=r;r:{if(e=A[(r=r+16|0)>>2]){for(f=r;f=(o=(0|n)>A[e+16>>2])?f:e,e=A[(o?e+4:e)>>2];);if((0|r)!=(0|f)&&(0|n)>=A[f+16>>2])break r}A[a+28>>2]=0,A[a+32>>2]=0,F=a+24|0,A[a+24>>2]=4|F,A[(r=a+16|0)>>2]=0,A[r+4>>2]=0,A[a+8>>2]=n,A[a+12>>2]=r,r=V=a+8|0,Q=Z=Q-16|0;e:{a:if(f=A[(W=t+12|0)+4>>2]){for(r=A[r>>2];;){if(t=f,(0|(e=A[f+16>>2]))>(0|r)){if(j=t,f=A[t>>2])continue;break a}if((0|r)<=(0|e)){u=t,r=0;break e}if(!(f=A[t+4>>2]))break}j=t+4|0}else t=j=W+4|0;if(u=pa(32),e=A[V>>2],A[(r=U=u+24|0)>>2]=0,A[r+4>>2]=0,A[u+16>>2]=e,A[(T=u+20|0)>>2]=r,(0|(f=A[V+4>>2]))!=(0|(B=V+8|0)))for(;;){Q=D=Q-16|0,r=D+8|0,R=f+16|0;a:{i:{f:{t:{o:{b:{n:{A:if((0|(n=U))!=(0|(o=T+4|0)))if(_=(e=k[n+27|0])<<24>>24<0,G=(N=(d=(m=(0|(h=(d=k[R+11|0])<<24>>24))<0)?A[R+4>>2]:d)>>>0>(e=_?A[n+20>>2]:e)>>>0)?e:d){if(!(I=Fa(m=m?A[R>>2]:R,_=_?A[n+16>>2]:n+16|0,G))){if(e>>>0>d>>>0)break A;break n}if((0|I)>=0)break n}else if(e>>>0<=d>>>0)break b;_=A[n>>2];A:{k:if((0|(r=n))!=A[T>>2]){if(_)for(e=_;r=e,e=A[e+4>>2];);else for(e=n;r=A[e+8>>2],d=A[r>>2]==(0|e),e=r,d;);if(e=(0|(N=(d=k[R+11|0])<<24>>24))<0,h=(m=k[r+27|0])<<24>>24<0,!(G=(d=e?A[R+4>>2]:d)>>>0<(m=h?A[r+20>>2]:m)>>>0?d:m)||!(e=Fa(h?A[r+16>>2]:r+16|0,e?A[R>>2]:R,G))){if(d>>>0>m>>>0)break k;break A}if((0|e)>=0)break A}if(!_){A[D+12>>2]=n,r=n;break a}A[D+12>>2]=r,r=r+4|0;break a}if(!(e=A[o>>2])){A[D+12>>2]=o,r=o;break a}for(_=(0|N)<0?A[R>>2]:R,n=o;;){r=e;A:{k:{c:{u:{s:if(h=(R=(e=(o=(e=k[e+27|0])<<24>>24<0)?A[r+20>>2]:e)>>>0<d>>>0)?e:d){if(!(m=Fa(_,o=o?A[r+16>>2]:r+16|0,h))){if(e>>>0>d>>>0)break s;break u}if((0|m)>=0)break u}else if(e>>>0<=d>>>0)break c;if(n=r,e=A[r>>2])continue;break f}if(e=Fa(o,_,h))break k}if(R)break A;break f}if((0|e)>=0)break f}if(n=r+4|0,!(e=A[r+4>>2]))break}break f}if(e=Fa(_,m,G))break o}if(N)break t;break i}if((0|e)>=0)break i}if(_=A[n+4>>2])for(e=_;r=e,e=A[e>>2];);else for(e=n;r=A[e+8>>2],m=A[r>>2]!=(0|e),e=r,m;);t:{o:if((0|r)!=(0|o)){if(!(N=d>>>0>(m=(e=(m=k[r+27|0])<<24>>24<0)?A[r+20>>2]:m)>>>0?m:d)||!(e=Fa((0|h)<0?A[R>>2]:R,e?A[r+16>>2]:r+16|0,N))){if(d>>>0<m>>>0)break o;break t}if((0|e)>=0)break t}if(!_){A[D+12>>2]=n,r=n+4|0;break a}A[D+12>>2]=r;break a}if(!(e=A[o>>2])){A[D+12>>2]=o,r=o;break a}for(_=(0|h)<0?A[R>>2]:R,n=o;;){r=e;t:{o:{b:{n:{A:if(h=(R=(e=(o=(e=k[e+27|0])<<24>>24<0)?A[r+20>>2]:e)>>>0<d>>>0)?e:d){if(!(m=Fa(_,o=o?A[r+16>>2]:r+16|0,h))){if(e>>>0>d>>>0)break A;break n}if((0|m)>=0)break n}else if(e>>>0<=d>>>0)break b;if(n=r,e=A[r>>2])continue;break f}if(e=Fa(o,_,h))break o}if(R)break t;break f}if((0|e)>=0)break f}if(n=r+4|0,!(e=A[r+4>>2]))break}}A[D+12>>2]=r,r=n;break a}A[D+12>>2]=n,A[r>>2]=n}n=r,(r=A[r>>2])?e=0:(e=(r=pa(40))+16|0,b[f+27|0]>=0?(o=A[f+20>>2],A[e>>2]=A[f+16>>2],A[e+4>>2]=o,A[e+8>>2]=A[f+24>>2]):za(e,A[f+16>>2],A[f+20>>2]),e=r+28|0,b[f+39|0]>=0?(o=A[f+32>>2],A[e>>2]=A[f+28>>2],A[e+4>>2]=o,A[e+8>>2]=A[f+36>>2]):za(e,A[f+28>>2],A[f+32>>2]),A[r+8>>2]=A[D+12>>2],A[r>>2]=0,A[r+4>>2]=0,A[n>>2]=r,e=r,(o=A[A[T>>2]>>2])&&(A[T>>2]=o,e=A[n>>2]),Sb(A[T+4>>2],e),A[T+8>>2]=A[T+8>>2]+1,e=1),b[Z+12|0]=e,A[Z+8>>2]=r,Q=D+16|0;a:{if(e=A[f+4>>2])for(;;)if(f=e,!(e=A[e>>2]))break a;for(;r=f,f=A[f+8>>2],(0|r)!=A[f>>2];);}if((0|f)==(0|B))break}A[u+8>>2]=t,A[u>>2]=0,A[u+4>>2]=0,A[j>>2]=u,f=u,(r=A[A[W>>2]>>2])&&(A[W>>2]=r,f=A[j>>2]),Sb(A[W+4>>2],f),A[W+8>>2]=A[W+8>>2]+1,r=1}b[a+44|0]=r,A[a+40>>2]=u,Q=Z+16|0,f=A[a+40>>2],Kb(4|V,A[a+16>>2]),Kb(F,A[a+28>>2])}if(t=(n=Q-48|0)+8|0,Q=u=(Q=n)-32|0,(0|(o=(e=j=u+32|0)-(r=u+21|0)|0))<=9&&(_=61,(0|o)<(s[3660]<=1|0))||(b[0|r]=49,e=r+1|0,_=0),A[u+12>>2]=_,A[u+8>>2]=e,Q=o=(Q=_=Q-16|0)-16|0,(u=(U=A[u+8>>2])-r|0)>>>0<=2147483631){for(u>>>0<11?(b[t+11|0]=u|128&k[t+11|0],b[t+11|0]=127&k[t+11|0],e=t):(Zb(V=o+8|0,(e=u>>>0>=11?11==(0|(e=(R=u+16&-16)-1|0))?R:e:10)+1|0),e=A[o+8>>2],A[t>>2]=e,A[t+8>>2]=-2147483648&A[t+8>>2]|2147483647&A[o+12>>2],A[t+8>>2]=-2147483648|A[t+8>>2],A[t+4>>2]=u);(0|r)!=(0|U);)b[0|e]=k[0|r],e=e+1|0,r=r+1|0;b[o+7|0]=0,b[0|e]=k[o+7|0],Q=o+16|0}else Na(),v();Q=_+16|0,Q=j,A[n+32>>2]=i;r:{e:{a:if(t=A[(r=f+20|0)+4>>2]){for(o=(f=(e=k[i+11|0])<<24>>24<0)?A[i>>2]:i,e=f?A[i+4>>2]:e;;){i:{f:{t:{o:{b:if(_=(j=(t=(u=(t=k[(f=t)+27|0])<<24>>24<0)?A[f+20>>2]:t)>>>0<e>>>0)?t:e){if(!(U=Fa(o,u=u?A[f+16>>2]:f+16|0,_))){if(e>>>0<t>>>0)break b;break o}if((0|U)>=0)break o}else if(e>>>0>=t>>>0)break t;if(u=f,t=A[f>>2])continue;break a}if(t=Fa(u,o,_))break f}if(j)break i;break e}if((0|t)>=0)break e}if(!(t=A[f+4>>2]))break}u=f+4|0}else f=u=r+4|0;o=(t=pa(40))+16|0,e=A[n+32>>2],b[e+11|0]>=0?(j=A[e+4>>2],A[o>>2]=A[e>>2],A[o+4>>2]=j,A[o+8>>2]=A[e+8>>2]):za(o,A[e>>2],A[e+4>>2]),A[t+8>>2]=f,A[t>>2]=0,A[t+4>>2]=0,A[t+36>>2]=0,A[t+28>>2]=0,A[t+32>>2]=0,A[u>>2]=t,f=t,(e=A[A[r>>2]>>2])&&(A[r>>2]=e,f=A[u>>2]),Sb(A[r+4>>2],f),A[r+8>>2]=A[r+8>>2]+1,r=1;break r}t=f,r=0}b[n+44|0]=r,A[n+40>>2]=t,r=A[n+40>>2],b[r+39|0]<0&&oa(A[r+28>>2]),e=A[n+12>>2],A[r+28>>2]=A[n+8>>2],A[r+32>>2]=e,A[r+36>>2]=A[n+16>>2],Q=n+48|0,Q=a+48|0,b[i+11|0]<0&&oa(A[i>>2]),Q=i+16|0},jb:function og(r,e){r|=0;var a,i,f=0,t=0;t=(i=Q-32|0)+8|0,Q=a=(Q=i)-80|0,r=A[(e|=0)+36>>2],A[a+72>>2]=A[e+32>>2],A[a+76>>2]=r,f=A[e+28>>2],A[(r=a- -64|0)>>2]=A[e+24>>2],A[r+4>>2]=f,r=A[e+20>>2],A[a+56>>2]=A[e+16>>2],A[a+60>>2]=r,r=A[e+12>>2],A[a+48>>2]=A[e+8>>2],A[a+52>>2]=r,r=A[e+4>>2],A[a+40>>2]=A[e>>2],A[a+44>>2]=r,nc(a+8|0,a+40|0,a+24|0);r:if(r=A[a+8>>2]){if(A[t>>2]=r,r=t+4|0,b[a+23|0]>=0){t=A[(e=a+8|4)+4>>2],A[r>>2]=A[e>>2],A[r+4>>2]=t,A[r+8>>2]=A[e+8>>2];break r}if(za(r,A[a+12>>2],A[a+16>>2]),b[a+23|0]>=0)break r;oa(A[a+12>>2])}else if(b[a+23|0]<0&&oa(A[a+12>>2]),(r=k[a+31|0])>>>0>=2){if(e=pa(32),b[e+26|0]=0,r=k[1477]|k[1478]<<8,b[e+24|0]=r,b[e+25|0]=r>>>8,r=k[1473]|k[1474]<<8|k[1475]<<16|k[1476]<<24,f=k[1469]|k[1470]<<8|k[1471]<<16|k[1472]<<24,b[e+16|0]=f,b[e+17|0]=f>>>8,b[e+18|0]=f>>>16,b[e+19|0]=f>>>24,b[e+20|0]=r,b[e+21|0]=r>>>8,b[e+22|0]=r>>>16,b[e+23|0]=r>>>24,r=k[1465]|k[1466]<<8|k[1467]<<16|k[1468]<<24,f=k[1461]|k[1462]<<8|k[1463]<<16|k[1464]<<24,b[e+8|0]=f,b[e+9|0]=f>>>8,b[e+10|0]=f>>>16,b[e+11|0]=f>>>24,b[e+12|0]=r,b[e+13|0]=r>>>8,b[e+14|0]=r>>>16,b[e+15|0]=r>>>24,r=k[1457]|k[1458]<<8|k[1459]<<16|k[1460]<<24,f=k[1453]|k[1454]<<8|k[1455]<<16|k[1456]<<24,b[0|e]=f,b[e+1|0]=f>>>8,b[e+2|0]=f>>>16,b[e+3|0]=f>>>24,b[e+4|0]=r,b[e+5|0]=r>>>8,b[e+6|0]=r>>>16,b[e+7|0]=r>>>24,A[a+8>>2]=-1,za(r=a+8|4,e,26),f=b[a+23|0],A[t>>2]=A[a+8>>2],t=t+4|0,(0|f)>=0){f=A[r+4>>2],A[t>>2]=A[r>>2],A[t+4>>2]=f,A[t+8>>2]=A[r+8>>2],oa(e);break r}za(t,A[a+12>>2],A[a+16>>2]),b[a+23|0]<0&&oa(A[a+12>>2]),oa(e)}else A[t>>2]=0,A[t+4>>2]=0,A[t+16>>2]=r,A[t+8>>2]=0,A[t+12>>2]=0;return Q=a+80|0,r=A[i+24>>2],b[i+23|0]<0&&oa(A[i+12>>2]),Q=i+32|0,0|r},kb:function ng(r,e,a){var i,f,t=0,o=0;Q=i=Q-16|0,Pe(i,r|=0,e|=0,a|=0),A[r+24>>2]=A[i>>2];r:if((0|(f=r+24|0))!=(0|i))if(e=r+28|0,a=4|i,o=(t=k[i+15|0])<<24>>24,b[r+39|0]>=0){if((0|o)>=0){r=A[a+4>>2],A[e>>2]=A[a>>2],A[e+4>>2]=r,A[e+8>>2]=A[a+8>>2];break r}Xb(e,A[i+4>>2],A[i+8>>2])}else Yb(e,(r=(0|o)<0)?A[i+4>>2]:a,r?A[i+8>>2]:t);return b[i+15|0]<0&&oa(A[i+4>>2]),Q=i+16|0,0|f},lb:function mg(r,e,a){var i,f,t=0,o=0;Q=i=Q-16|0,Oe(i,r|=0,e|=0,a|=0),A[r+24>>2]=A[i>>2];r:if((0|(f=r+24|0))!=(0|i))if(e=r+28|0,a=4|i,o=(t=k[i+15|0])<<24>>24,b[r+39|0]>=0){if((0|o)>=0){r=A[a+4>>2],A[e>>2]=A[a>>2],A[e+4>>2]=r,A[e+8>>2]=A[a+8>>2];break r}Xb(e,A[i+4>>2],A[i+8>>2])}else Yb(e,(r=(0|o)<0)?A[i+4>>2]:a,r?A[i+8>>2]:t);return b[i+15|0]<0&&oa(A[i+4>>2]),Q=i+16|0,0|f},mb:function lg(r){(r|=0)&&(b[r+39|0]<0&&oa(A[r+28>>2]),Oc(r+12|0,A[r+16>>2]),Kb(r,A[r+4>>2]),oa(r))},nb:bc,ob:Qb,pb:ac,qb:Nc,rb:bc,sb:Qb,tb:ac,ub:Nc,vb:fe,wb:ee,xb:bc,yb:Qb,zb:ac,Ab:Qb,Bb:ac,Cb:Nc,Db:fe,Eb:ee,Fb:function kg(){return 5},Gb:function ig(){return 6},Hb:function hg(){return 7},Ib:function gg(){return 8},Jb:function fg(){return 9},Kb:function eg(){return 10},Lb:function dg(){return 11},Mb:function cg(){return 12},Nb:Qb,Ob:bc,Pb:function bg(){return-2},Qb:function ag(){return-3},Rb:function $f(){return-4},Sb:function Zf(){return-5},Tb:Ec,Ub:oa,Vb:function Ff(r){return(r|=0)?0|!!(0|Ed(r,15068)):0}}}(r)}(e)},instantiate:function(r,e){return{then:function(a){var i=new N.Module(r);a({instance:new N.Instance(i,e)})}}},RuntimeError:Error};h=[],"object"!=typeof N&&abort("no native wasm support detected");var V=!1;function assert(r,e){r||abort(e)}var W,G,Z,F,B="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function UTF8ArrayToString(r,e,a){for(var i=e+a,f=e;r[f]&&!(f>=i);)++f;if(f-e>16&&r.buffer&&B)return B.decode(r.subarray(e,f));for(var t="";e<f;){var o=r[e++];if(128&o){var b=63&r[e++];if(192!=(224&o)){var n=63&r[e++];if((o=224==(240&o)?(15&o)<<12|b<<6|n:(7&o)<<18|b<<12|n<<6|63&r[e++])<65536)t+=String.fromCharCode(o);else{var A=o-65536;t+=String.fromCharCode(55296|A>>10,56320|1023&A)}}else t+=String.fromCharCode((31&o)<<6|b)}else t+=String.fromCharCode(o)}return t}function UTF8ToString(r,e){return r?UTF8ArrayToString(G,r,e):""}function updateMemoryViews(){var r=U.buffer;f.HEAP8=W=new Int8Array(r),f.HEAP16=new Int16Array(r),f.HEAP32=Z=new Int32Array(r),f.HEAPU8=G=new Uint8Array(r),f.HEAPU16=new Uint16Array(r),f.HEAPU32=F=new Uint32Array(r),f.HEAPF32=new Float32Array(r),f.HEAPF64=new Float64Array(r)}var I=f.INITIAL_MEMORY||16777216;assert(I>=65536,"INITIAL_MEMORY should be larger than STACK_SIZE, was "+I+"! (STACK_SIZE=65536)"),U=f.wasmMemory?f.wasmMemory:new N.Memory({initial:I/65536,maximum:32768}),updateMemoryViews(),I=U.buffer.byteLength;var E=[],Q=[],Y=[],M=!1;function addOnInit(r){Q.unshift(r)}var J=0,g=null,O=null;function abort(r){f.onAbort&&f.onAbort(r),D(r="Aborted("+r+")"),V=!0,r+=". Build with -sASSERTIONS for more info.";var e=new N.RuntimeError(r);throw i(e),e}var z,X="data:application/octet-stream;base64,";function isDataURI(r){return r.startsWith(X)}function isFileURI(r){return r.startsWith("file://")}function getBinary(r){try{if(r==z&&h)return new Uint8Array(h);var e=tryParseAsDataURI(r);if(e)return e;if(A)return A(r);throw"both async and sync fetching of the wasm failed"}catch(r){abort(r)}}function ExitStatus(r){this.name="ExitStatus",this.message="Program terminated with exit("+r+")",this.status=r}function callRuntimeCallbacks(r){for(;r.length>0;)r.shift()(f)}function ExceptionInfo(r){this.excPtr=r,this.ptr=r-24,this.set_type=function(r){F[this.ptr+4>>2]=r},this.get_type=function(){return F[this.ptr+4>>2]},this.set_destructor=function(r){F[this.ptr+8>>2]=r},this.get_destructor=function(){return F[this.ptr+8>>2]},this.set_refcount=function(r){Z[this.ptr>>2]=r},this.set_caught=function(r){r=r?1:0,W[this.ptr+12|0]=r},this.get_caught=function(){return 0!=W[this.ptr+12|0]},this.set_rethrown=function(r){r=r?1:0,W[this.ptr+13|0]=r},this.get_rethrown=function(){return 0!=W[this.ptr+13|0]},this.init=function(r,e){this.set_adjusted_ptr(0),this.set_type(r),this.set_destructor(e),this.set_refcount(0),this.set_caught(!1),this.set_rethrown(!1)},this.add_ref=function(){var r=Z[this.ptr>>2];Z[this.ptr>>2]=r+1},this.release_ref=function(){var r=Z[this.ptr>>2];return Z[this.ptr>>2]=r-1,1===r},this.set_adjusted_ptr=function(r){F[this.ptr+16>>2]=r},this.get_adjusted_ptr=function(){return F[this.ptr+16>>2]},this.get_exception_ptr=function(){if(vo(this.get_type()))return F[this.excPtr>>2];var r=this.get_adjusted_ptr();return 0!==r?r:this.excPtr}}isDataURI(z="draco_decoder.wasm")||(z=function locateFile(r){return f.locateFile?f.locateFile(r,d):d+r}(z));function emscripten_realloc_buffer(r){var e=U.buffer;try{return U.grow(r-e.byteLength+65535>>>16),updateMemoryViews(),1}catch(r){}}var C=[null,[],[]];var P="function"==typeof atob?atob:function(r){var e,a,i,f,t,o,b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="",A=0;r=r.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{e=b.indexOf(r.charAt(A++))<<2|(f=b.indexOf(r.charAt(A++)))>>4,a=(15&f)<<4|(t=b.indexOf(r.charAt(A++)))>>2,i=(3&t)<<6|(o=b.indexOf(r.charAt(A++))),n+=String.fromCharCode(e),64!==t&&(n+=String.fromCharCode(a)),64!==o&&(n+=String.fromCharCode(i))}while(A<r.length);return n};function tryParseAsDataURI(r){if(isDataURI(r))return function intArrayFromBase64(r){if("boolean"==typeof _&&_){var e=Buffer.from(r,"base64");return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}try{for(var a=P(r),i=new Uint8Array(a.length),f=0;f<a.length;++f)i[f]=a.charCodeAt(f);return i}catch(r){throw new Error("Converting base64 string to bytes failed.")}}(r.slice(X.length))}var S,H={c:function ___cxa_throw(r,e,a){throw new ExceptionInfo(r).init(e,a),r},b:function _abort(){abort("")},h:function _emscripten_memcpy_big(r,e,a){G.copyWithin(r,e,e+a)},f:function _emscripten_resize_heap(r){var e,a,i=G.length,f=2147483648;if((r>>>=0)>f)return!1;for(var t=1;t<=4;t*=2){var o=i*(1+.2/t);if(o=Math.min(o,r+100663296),emscripten_realloc_buffer(Math.min(f,(e=Math.max(r,o))+((a=65536)-e%a)%a)))return!0}return!1},g:function _fd_close(r){return 52},e:function _fd_seek(r,e,a,i,f){return 70},d:function _fd_write(r,e,a,i){for(var f,t,o,b=0,n=0;n<a;n++){var A=F[e>>2],k=F[e+4>>2];e+=8;for(var u=0;u<k;u++)f=r,t=G[A+u],o=void 0,o=C[f],0===t||10===t?((1===f?j:D)(UTF8ArrayToString(o,0)),o.length=0):o.push(t);b+=k}return F[i>>2]=b,0},a:U},q=(function createWasm(){var r={a:H};function receiveInstance(r,e){var a=r.exports;f.asm=a,f.asm.j,addOnInit(f.asm.i),function removeRunDependency(r){if(J--,f.monitorRunDependencies&&f.monitorRunDependencies(J),0==J&&(null!==g&&(clearInterval(g),g=null),O)){var e=O;O=null,e()}}()}function receiveInstantiationResult(r){receiveInstance(r.instance)}function instantiateArrayBuffer(e){return function getBinaryPromise(){if(!h&&(u||s)){if("function"==typeof fetch&&!isFileURI(z))return fetch(z,{credentials:"same-origin"}).then((function(r){if(!r.ok)throw"failed to load wasm binary file at '"+z+"'";return r.arrayBuffer()})).catch((function(){return getBinary(z)}));if(n)return new Promise((function(r,e){n(z,(function(e){r(new Uint8Array(e))}),e)}))}return Promise.resolve().then((function(){return getBinary(z)}))}().then((function(e){return N.instantiate(e,r)})).then((function(r){return r})).then(e,(function(r){D("failed to asynchronously prepare wasm: "+r),abort(r)}))}if(function addRunDependency(r){J++,f.monitorRunDependencies&&f.monitorRunDependencies(J)}(),f.instantiateWasm)try{return f.instantiateWasm(r,receiveInstance)}catch(r){D("Module.instantiateWasm callback failed with error: "+r),i(r)}return function instantiateAsync(){return h||"function"!=typeof N.instantiateStreaming||isDataURI(z)||isFileURI(z)||_||"function"!=typeof fetch?instantiateArrayBuffer(receiveInstantiationResult):fetch(z,{credentials:"same-origin"}).then((function(e){return N.instantiateStreaming(e,r).then(receiveInstantiationResult,(function(r){return D("wasm streaming compile failed: "+r),D("falling back to ArrayBuffer instantiation"),instantiateArrayBuffer(receiveInstantiationResult)}))}))}().catch(i),{}}(),f._emscripten_bind_VoidPtr___destroy___0=function(){return(q=f._emscripten_bind_VoidPtr___destroy___0=f.asm.k).apply(null,arguments)}),x=f._emscripten_bind_DecoderBuffer_DecoderBuffer_0=function(){return(x=f._emscripten_bind_DecoderBuffer_DecoderBuffer_0=f.asm.l).apply(null,arguments)},L=f._emscripten_bind_DecoderBuffer_Init_2=function(){return(L=f._emscripten_bind_DecoderBuffer_Init_2=f.asm.m).apply(null,arguments)},K=f._emscripten_bind_DecoderBuffer___destroy___0=function(){return(K=f._emscripten_bind_DecoderBuffer___destroy___0=f.asm.n).apply(null,arguments)},$=f._emscripten_bind_AttributeTransformData_AttributeTransformData_0=function(){return($=f._emscripten_bind_AttributeTransformData_AttributeTransformData_0=f.asm.o).apply(null,arguments)},rr=f._emscripten_bind_AttributeTransformData_transform_type_0=function(){return(rr=f._emscripten_bind_AttributeTransformData_transform_type_0=f.asm.p).apply(null,arguments)},er=f._emscripten_bind_AttributeTransformData___destroy___0=function(){return(er=f._emscripten_bind_AttributeTransformData___destroy___0=f.asm.q).apply(null,arguments)},ar=f._emscripten_bind_GeometryAttribute_GeometryAttribute_0=function(){return(ar=f._emscripten_bind_GeometryAttribute_GeometryAttribute_0=f.asm.r).apply(null,arguments)},ir=f._emscripten_bind_GeometryAttribute___destroy___0=function(){return(ir=f._emscripten_bind_GeometryAttribute___destroy___0=f.asm.s).apply(null,arguments)},fr=f._emscripten_bind_PointAttribute_PointAttribute_0=function(){return(fr=f._emscripten_bind_PointAttribute_PointAttribute_0=f.asm.t).apply(null,arguments)},tr=f._emscripten_bind_PointAttribute_size_0=function(){return(tr=f._emscripten_bind_PointAttribute_size_0=f.asm.u).apply(null,arguments)},or=f._emscripten_bind_PointAttribute_GetAttributeTransformData_0=function(){return(or=f._emscripten_bind_PointAttribute_GetAttributeTransformData_0=f.asm.v).apply(null,arguments)},br=f._emscripten_bind_PointAttribute_attribute_type_0=function(){return(br=f._emscripten_bind_PointAttribute_attribute_type_0=f.asm.w).apply(null,arguments)},nr=f._emscripten_bind_PointAttribute_data_type_0=function(){return(nr=f._emscripten_bind_PointAttribute_data_type_0=f.asm.x).apply(null,arguments)},Ar=f._emscripten_bind_PointAttribute_num_components_0=function(){return(Ar=f._emscripten_bind_PointAttribute_num_components_0=f.asm.y).apply(null,arguments)},kr=f._emscripten_bind_PointAttribute_normalized_0=function(){return(kr=f._emscripten_bind_PointAttribute_normalized_0=f.asm.z).apply(null,arguments)},cr=f._emscripten_bind_PointAttribute_byte_stride_0=function(){return(cr=f._emscripten_bind_PointAttribute_byte_stride_0=f.asm.A).apply(null,arguments)},ur=f._emscripten_bind_PointAttribute_byte_offset_0=function(){return(ur=f._emscripten_bind_PointAttribute_byte_offset_0=f.asm.B).apply(null,arguments)},sr=f._emscripten_bind_PointAttribute_unique_id_0=function(){return(sr=f._emscripten_bind_PointAttribute_unique_id_0=f.asm.C).apply(null,arguments)},pr=f._emscripten_bind_PointAttribute___destroy___0=function(){return(pr=f._emscripten_bind_PointAttribute___destroy___0=f.asm.D).apply(null,arguments)},_r=f._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=function(){return(_r=f._emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=f.asm.E).apply(null,arguments)},lr=f._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=function(){return(lr=f._emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=f.asm.F).apply(null,arguments)},dr=f._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=function(){return(dr=f._emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=f.asm.G).apply(null,arguments)},yr=f._emscripten_bind_AttributeQuantizationTransform_min_value_1=function(){return(yr=f._emscripten_bind_AttributeQuantizationTransform_min_value_1=f.asm.H).apply(null,arguments)},mr=f._emscripten_bind_AttributeQuantizationTransform_range_0=function(){return(mr=f._emscripten_bind_AttributeQuantizationTransform_range_0=f.asm.I).apply(null,arguments)},vr=f._emscripten_bind_AttributeQuantizationTransform___destroy___0=function(){return(vr=f._emscripten_bind_AttributeQuantizationTransform___destroy___0=f.asm.J).apply(null,arguments)},Rr=f._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=function(){return(Rr=f._emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=f.asm.K).apply(null,arguments)},hr=f._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=function(){return(hr=f._emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=f.asm.L).apply(null,arguments)},jr=f._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=function(){return(jr=f._emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=f.asm.M).apply(null,arguments)},Dr=f._emscripten_bind_AttributeOctahedronTransform___destroy___0=function(){return(Dr=f._emscripten_bind_AttributeOctahedronTransform___destroy___0=f.asm.N).apply(null,arguments)},Ur=f._emscripten_bind_PointCloud_PointCloud_0=function(){return(Ur=f._emscripten_bind_PointCloud_PointCloud_0=f.asm.O).apply(null,arguments)},Tr=f._emscripten_bind_PointCloud_num_attributes_0=function(){return(Tr=f._emscripten_bind_PointCloud_num_attributes_0=f.asm.P).apply(null,arguments)},Nr=f._emscripten_bind_PointCloud_num_points_0=function(){return(Nr=f._emscripten_bind_PointCloud_num_points_0=f.asm.Q).apply(null,arguments)},Vr=f._emscripten_bind_PointCloud___destroy___0=function(){return(Vr=f._emscripten_bind_PointCloud___destroy___0=f.asm.R).apply(null,arguments)},Wr=f._emscripten_bind_Mesh_Mesh_0=function(){return(Wr=f._emscripten_bind_Mesh_Mesh_0=f.asm.S).apply(null,arguments)},Gr=f._emscripten_bind_Mesh_num_faces_0=function(){return(Gr=f._emscripten_bind_Mesh_num_faces_0=f.asm.T).apply(null,arguments)},Zr=f._emscripten_bind_Mesh_num_attributes_0=function(){return(Zr=f._emscripten_bind_Mesh_num_attributes_0=f.asm.U).apply(null,arguments)},Fr=f._emscripten_bind_Mesh_num_points_0=function(){return(Fr=f._emscripten_bind_Mesh_num_points_0=f.asm.V).apply(null,arguments)},Br=f._emscripten_bind_Mesh___destroy___0=function(){return(Br=f._emscripten_bind_Mesh___destroy___0=f.asm.W).apply(null,arguments)},Ir=f._emscripten_bind_Metadata_Metadata_0=function(){return(Ir=f._emscripten_bind_Metadata_Metadata_0=f.asm.X).apply(null,arguments)},Er=f._emscripten_bind_Metadata___destroy___0=function(){return(Er=f._emscripten_bind_Metadata___destroy___0=f.asm.Y).apply(null,arguments)},Qr=f._emscripten_bind_Status_code_0=function(){return(Qr=f._emscripten_bind_Status_code_0=f.asm.Z).apply(null,arguments)},Yr=f._emscripten_bind_Status_ok_0=function(){return(Yr=f._emscripten_bind_Status_ok_0=f.asm._).apply(null,arguments)},wr=f._emscripten_bind_Status_error_msg_0=function(){return(wr=f._emscripten_bind_Status_error_msg_0=f.asm.$).apply(null,arguments)},Mr=f._emscripten_bind_Status___destroy___0=function(){return(Mr=f._emscripten_bind_Status___destroy___0=f.asm.aa).apply(null,arguments)},Jr=f._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=function(){return(Jr=f._emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=f.asm.ba).apply(null,arguments)},gr=f._emscripten_bind_DracoFloat32Array_GetValue_1=function(){return(gr=f._emscripten_bind_DracoFloat32Array_GetValue_1=f.asm.ca).apply(null,arguments)},Or=f._emscripten_bind_DracoFloat32Array_size_0=function(){return(Or=f._emscripten_bind_DracoFloat32Array_size_0=f.asm.da).apply(null,arguments)},zr=f._emscripten_bind_DracoFloat32Array___destroy___0=function(){return(zr=f._emscripten_bind_DracoFloat32Array___destroy___0=f.asm.ea).apply(null,arguments)},Xr=f._emscripten_bind_DracoInt8Array_DracoInt8Array_0=function(){return(Xr=f._emscripten_bind_DracoInt8Array_DracoInt8Array_0=f.asm.fa).apply(null,arguments)},Cr=f._emscripten_bind_DracoInt8Array_GetValue_1=function(){return(Cr=f._emscripten_bind_DracoInt8Array_GetValue_1=f.asm.ga).apply(null,arguments)},Pr=f._emscripten_bind_DracoInt8Array_size_0=function(){return(Pr=f._emscripten_bind_DracoInt8Array_size_0=f.asm.ha).apply(null,arguments)},Sr=f._emscripten_bind_DracoInt8Array___destroy___0=function(){return(Sr=f._emscripten_bind_DracoInt8Array___destroy___0=f.asm.ia).apply(null,arguments)},Hr=f._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=function(){return(Hr=f._emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=f.asm.ja).apply(null,arguments)},qr=f._emscripten_bind_DracoUInt8Array_GetValue_1=function(){return(qr=f._emscripten_bind_DracoUInt8Array_GetValue_1=f.asm.ka).apply(null,arguments)},xr=f._emscripten_bind_DracoUInt8Array_size_0=function(){return(xr=f._emscripten_bind_DracoUInt8Array_size_0=f.asm.la).apply(null,arguments)},Lr=f._emscripten_bind_DracoUInt8Array___destroy___0=function(){return(Lr=f._emscripten_bind_DracoUInt8Array___destroy___0=f.asm.ma).apply(null,arguments)},Kr=f._emscripten_bind_DracoInt16Array_DracoInt16Array_0=function(){return(Kr=f._emscripten_bind_DracoInt16Array_DracoInt16Array_0=f.asm.na).apply(null,arguments)},$r=f._emscripten_bind_DracoInt16Array_GetValue_1=function(){return($r=f._emscripten_bind_DracoInt16Array_GetValue_1=f.asm.oa).apply(null,arguments)},ea=f._emscripten_bind_DracoInt16Array_size_0=function(){return(ea=f._emscripten_bind_DracoInt16Array_size_0=f.asm.pa).apply(null,arguments)},aa=f._emscripten_bind_DracoInt16Array___destroy___0=function(){return(aa=f._emscripten_bind_DracoInt16Array___destroy___0=f.asm.qa).apply(null,arguments)},ia=f._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=function(){return(ia=f._emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=f.asm.ra).apply(null,arguments)},ba=f._emscripten_bind_DracoUInt16Array_GetValue_1=function(){return(ba=f._emscripten_bind_DracoUInt16Array_GetValue_1=f.asm.sa).apply(null,arguments)},na=f._emscripten_bind_DracoUInt16Array_size_0=function(){return(na=f._emscripten_bind_DracoUInt16Array_size_0=f.asm.ta).apply(null,arguments)},ca=f._emscripten_bind_DracoUInt16Array___destroy___0=function(){return(ca=f._emscripten_bind_DracoUInt16Array___destroy___0=f.asm.ua).apply(null,arguments)},la=f._emscripten_bind_DracoInt32Array_DracoInt32Array_0=function(){return(la=f._emscripten_bind_DracoInt32Array_DracoInt32Array_0=f.asm.va).apply(null,arguments)},da=f._emscripten_bind_DracoInt32Array_GetValue_1=function(){return(da=f._emscripten_bind_DracoInt32Array_GetValue_1=f.asm.wa).apply(null,arguments)},ha=f._emscripten_bind_DracoInt32Array_size_0=function(){return(ha=f._emscripten_bind_DracoInt32Array_size_0=f.asm.xa).apply(null,arguments)},ja=f._emscripten_bind_DracoInt32Array___destroy___0=function(){return(ja=f._emscripten_bind_DracoInt32Array___destroy___0=f.asm.ya).apply(null,arguments)},ga=f._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=function(){return(ga=f._emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=f.asm.za).apply(null,arguments)},rt=f._emscripten_bind_DracoUInt32Array_GetValue_1=function(){return(rt=f._emscripten_bind_DracoUInt32Array_GetValue_1=f.asm.Aa).apply(null,arguments)},et=f._emscripten_bind_DracoUInt32Array_size_0=function(){return(et=f._emscripten_bind_DracoUInt32Array_size_0=f.asm.Ba).apply(null,arguments)},at=f._emscripten_bind_DracoUInt32Array___destroy___0=function(){return(at=f._emscripten_bind_DracoUInt32Array___destroy___0=f.asm.Ca).apply(null,arguments)},it=f._emscripten_bind_MetadataQuerier_MetadataQuerier_0=function(){return(it=f._emscripten_bind_MetadataQuerier_MetadataQuerier_0=f.asm.Da).apply(null,arguments)},ft=f._emscripten_bind_MetadataQuerier_HasEntry_2=function(){return(ft=f._emscripten_bind_MetadataQuerier_HasEntry_2=f.asm.Ea).apply(null,arguments)},tt=f._emscripten_bind_MetadataQuerier_GetIntEntry_2=function(){return(tt=f._emscripten_bind_MetadataQuerier_GetIntEntry_2=f.asm.Fa).apply(null,arguments)},ot=f._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=function(){return(ot=f._emscripten_bind_MetadataQuerier_GetIntEntryArray_3=f.asm.Ga).apply(null,arguments)},bt=f._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=function(){return(bt=f._emscripten_bind_MetadataQuerier_GetDoubleEntry_2=f.asm.Ha).apply(null,arguments)},nt=f._emscripten_bind_MetadataQuerier_GetStringEntry_2=function(){return(nt=f._emscripten_bind_MetadataQuerier_GetStringEntry_2=f.asm.Ia).apply(null,arguments)},At=f._emscripten_bind_MetadataQuerier_NumEntries_1=function(){return(At=f._emscripten_bind_MetadataQuerier_NumEntries_1=f.asm.Ja).apply(null,arguments)},kt=f._emscripten_bind_MetadataQuerier_GetEntryName_2=function(){return(kt=f._emscripten_bind_MetadataQuerier_GetEntryName_2=f.asm.Ka).apply(null,arguments)},ct=f._emscripten_bind_MetadataQuerier___destroy___0=function(){return(ct=f._emscripten_bind_MetadataQuerier___destroy___0=f.asm.La).apply(null,arguments)},ut=f._emscripten_bind_Decoder_Decoder_0=function(){return(ut=f._emscripten_bind_Decoder_Decoder_0=f.asm.Ma).apply(null,arguments)},st=f._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=function(){return(st=f._emscripten_bind_Decoder_DecodeArrayToPointCloud_3=f.asm.Na).apply(null,arguments)},pt=f._emscripten_bind_Decoder_DecodeArrayToMesh_3=function(){return(pt=f._emscripten_bind_Decoder_DecodeArrayToMesh_3=f.asm.Oa).apply(null,arguments)},_t=f._emscripten_bind_Decoder_GetAttributeId_2=function(){return(_t=f._emscripten_bind_Decoder_GetAttributeId_2=f.asm.Pa).apply(null,arguments)},lt=f._emscripten_bind_Decoder_GetAttributeIdByName_2=function(){return(lt=f._emscripten_bind_Decoder_GetAttributeIdByName_2=f.asm.Qa).apply(null,arguments)},dt=f._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=function(){return(dt=f._emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=f.asm.Ra).apply(null,arguments)},yt=f._emscripten_bind_Decoder_GetAttribute_2=function(){return(yt=f._emscripten_bind_Decoder_GetAttribute_2=f.asm.Sa).apply(null,arguments)},mt=f._emscripten_bind_Decoder_GetAttributeByUniqueId_2=function(){return(mt=f._emscripten_bind_Decoder_GetAttributeByUniqueId_2=f.asm.Ta).apply(null,arguments)},vt=f._emscripten_bind_Decoder_GetMetadata_1=function(){return(vt=f._emscripten_bind_Decoder_GetMetadata_1=f.asm.Ua).apply(null,arguments)},Rt=f._emscripten_bind_Decoder_GetAttributeMetadata_2=function(){return(Rt=f._emscripten_bind_Decoder_GetAttributeMetadata_2=f.asm.Va).apply(null,arguments)},ht=f._emscripten_bind_Decoder_GetFaceFromMesh_3=function(){return(ht=f._emscripten_bind_Decoder_GetFaceFromMesh_3=f.asm.Wa).apply(null,arguments)},jt=f._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=function(){return(jt=f._emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=f.asm.Xa).apply(null,arguments)},Dt=f._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=function(){return(Dt=f._emscripten_bind_Decoder_GetTrianglesUInt16Array_3=f.asm.Ya).apply(null,arguments)},Ut=f._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=function(){return(Ut=f._emscripten_bind_Decoder_GetTrianglesUInt32Array_3=f.asm.Za).apply(null,arguments)},Tt=f._emscripten_bind_Decoder_GetAttributeFloat_3=function(){return(Tt=f._emscripten_bind_Decoder_GetAttributeFloat_3=f.asm._a).apply(null,arguments)},Nt=f._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=function(){return(Nt=f._emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=f.asm.$a).apply(null,arguments)},Vt=f._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=function(){return(Vt=f._emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=f.asm.ab).apply(null,arguments)},Wt=f._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=function(){return(Wt=f._emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=f.asm.bb).apply(null,arguments)},Gt=f._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=function(){return(Gt=f._emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=f.asm.cb).apply(null,arguments)},Zt=f._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=function(){return(Zt=f._emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=f.asm.db).apply(null,arguments)},Ft=f._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=function(){return(Ft=f._emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=f.asm.eb).apply(null,arguments)},Bt=f._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=function(){return(Bt=f._emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=f.asm.fb).apply(null,arguments)},It=f._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=function(){return(It=f._emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=f.asm.gb).apply(null,arguments)},Et=f._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=function(){return(Et=f._emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=f.asm.hb).apply(null,arguments)},Qt=f._emscripten_bind_Decoder_SkipAttributeTransform_1=function(){return(Qt=f._emscripten_bind_Decoder_SkipAttributeTransform_1=f.asm.ib).apply(null,arguments)},Yt=f._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=function(){return(Yt=f._emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=f.asm.jb).apply(null,arguments)},wt=f._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=function(){return(wt=f._emscripten_bind_Decoder_DecodeBufferToPointCloud_2=f.asm.kb).apply(null,arguments)},Mt=f._emscripten_bind_Decoder_DecodeBufferToMesh_2=function(){return(Mt=f._emscripten_bind_Decoder_DecodeBufferToMesh_2=f.asm.lb).apply(null,arguments)},Jt=f._emscripten_bind_Decoder___destroy___0=function(){return(Jt=f._emscripten_bind_Decoder___destroy___0=f.asm.mb).apply(null,arguments)},gt=f._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=function(){return(gt=f._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=f.asm.nb).apply(null,arguments)},Ot=f._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=function(){return(Ot=f._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=f.asm.ob).apply(null,arguments)},zt=f._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=function(){return(zt=f._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=f.asm.pb).apply(null,arguments)},Xt=f._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=function(){return(Xt=f._emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=f.asm.qb).apply(null,arguments)},Ct=f._emscripten_enum_draco_GeometryAttribute_Type_INVALID=function(){return(Ct=f._emscripten_enum_draco_GeometryAttribute_Type_INVALID=f.asm.rb).apply(null,arguments)},Pt=f._emscripten_enum_draco_GeometryAttribute_Type_POSITION=function(){return(Pt=f._emscripten_enum_draco_GeometryAttribute_Type_POSITION=f.asm.sb).apply(null,arguments)},St=f._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=function(){return(St=f._emscripten_enum_draco_GeometryAttribute_Type_NORMAL=f.asm.tb).apply(null,arguments)},Ht=f._emscripten_enum_draco_GeometryAttribute_Type_COLOR=function(){return(Ht=f._emscripten_enum_draco_GeometryAttribute_Type_COLOR=f.asm.ub).apply(null,arguments)},qt=f._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=function(){return(qt=f._emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=f.asm.vb).apply(null,arguments)},xt=f._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=function(){return(xt=f._emscripten_enum_draco_GeometryAttribute_Type_GENERIC=f.asm.wb).apply(null,arguments)},Lt=f._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=function(){return(Lt=f._emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=f.asm.xb).apply(null,arguments)},Kt=f._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=function(){return(Kt=f._emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=f.asm.yb).apply(null,arguments)},$t=f._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=function(){return($t=f._emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=f.asm.zb).apply(null,arguments)},ro=f._emscripten_enum_draco_DataType_DT_INVALID=function(){return(ro=f._emscripten_enum_draco_DataType_DT_INVALID=f.asm.Ab).apply(null,arguments)},eo=f._emscripten_enum_draco_DataType_DT_INT8=function(){return(eo=f._emscripten_enum_draco_DataType_DT_INT8=f.asm.Bb).apply(null,arguments)},ao=f._emscripten_enum_draco_DataType_DT_UINT8=function(){return(ao=f._emscripten_enum_draco_DataType_DT_UINT8=f.asm.Cb).apply(null,arguments)},io=f._emscripten_enum_draco_DataType_DT_INT16=function(){return(io=f._emscripten_enum_draco_DataType_DT_INT16=f.asm.Db).apply(null,arguments)},fo=f._emscripten_enum_draco_DataType_DT_UINT16=function(){return(fo=f._emscripten_enum_draco_DataType_DT_UINT16=f.asm.Eb).apply(null,arguments)},to=f._emscripten_enum_draco_DataType_DT_INT32=function(){return(to=f._emscripten_enum_draco_DataType_DT_INT32=f.asm.Fb).apply(null,arguments)},oo=f._emscripten_enum_draco_DataType_DT_UINT32=function(){return(oo=f._emscripten_enum_draco_DataType_DT_UINT32=f.asm.Gb).apply(null,arguments)},bo=f._emscripten_enum_draco_DataType_DT_INT64=function(){return(bo=f._emscripten_enum_draco_DataType_DT_INT64=f.asm.Hb).apply(null,arguments)},no=f._emscripten_enum_draco_DataType_DT_UINT64=function(){return(no=f._emscripten_enum_draco_DataType_DT_UINT64=f.asm.Ib).apply(null,arguments)},Ao=f._emscripten_enum_draco_DataType_DT_FLOAT32=function(){return(Ao=f._emscripten_enum_draco_DataType_DT_FLOAT32=f.asm.Jb).apply(null,arguments)},ko=f._emscripten_enum_draco_DataType_DT_FLOAT64=function(){return(ko=f._emscripten_enum_draco_DataType_DT_FLOAT64=f.asm.Kb).apply(null,arguments)},co=f._emscripten_enum_draco_DataType_DT_BOOL=function(){return(co=f._emscripten_enum_draco_DataType_DT_BOOL=f.asm.Lb).apply(null,arguments)},uo=f._emscripten_enum_draco_DataType_DT_TYPES_COUNT=function(){return(uo=f._emscripten_enum_draco_DataType_DT_TYPES_COUNT=f.asm.Mb).apply(null,arguments)},so=f._emscripten_enum_draco_StatusCode_OK=function(){return(so=f._emscripten_enum_draco_StatusCode_OK=f.asm.Nb).apply(null,arguments)},po=f._emscripten_enum_draco_StatusCode_DRACO_ERROR=function(){return(po=f._emscripten_enum_draco_StatusCode_DRACO_ERROR=f.asm.Ob).apply(null,arguments)},_o=f._emscripten_enum_draco_StatusCode_IO_ERROR=function(){return(_o=f._emscripten_enum_draco_StatusCode_IO_ERROR=f.asm.Pb).apply(null,arguments)},lo=f._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=function(){return(lo=f._emscripten_enum_draco_StatusCode_INVALID_PARAMETER=f.asm.Qb).apply(null,arguments)},yo=f._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=function(){return(yo=f._emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=f.asm.Rb).apply(null,arguments)},mo=f._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=function(){return(mo=f._emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=f.asm.Sb).apply(null,arguments)},vo=(f._malloc=function(){return(f._malloc=f.asm.Tb).apply(null,arguments)},f._free=function(){return(f._free=f.asm.Ub).apply(null,arguments)},function(){return(vo=f.asm.Vb).apply(null,arguments)});f.___start_em_js=15856,f.___stop_em_js=15954;function run(){function doRun(){S||(S=!0,f.calledRun=!0,V||(!function initRuntime(){M=!0,callRuntimeCallbacks(Q)}(),a(f),f.onRuntimeInitialized&&f.onRuntimeInitialized(),function postRun(){if(f.postRun)for("function"==typeof f.postRun&&(f.postRun=[f.postRun]);f.postRun.length;)r=f.postRun.shift(),Y.unshift(r);var r;callRuntimeCallbacks(Y)}()))}J>0||(!function preRun(){if(f.preRun)for("function"==typeof f.preRun&&(f.preRun=[f.preRun]);f.preRun.length;)r=f.preRun.shift(),E.unshift(r);var r;callRuntimeCallbacks(E)}(),J>0||(f.setStatus?(f.setStatus("Running..."),setTimeout((function(){setTimeout((function(){f.setStatus("")}),1),doRun()}),1)):doRun()))}if(O=function runCaller(){S||run(),S||(O=runCaller)},f.preInit)for("function"==typeof f.preInit&&(f.preInit=[f.preInit]);f.preInit.length>0;)f.preInit.pop()();function WrapperObject(){}function getCache(r){return(r||WrapperObject).__cache__}function wrapPointer(r,e){var a=getCache(e),i=a[r];return i||((i=Object.create((e||WrapperObject).prototype)).ptr=r,a[r]=i)}run(),WrapperObject.prototype=Object.create(WrapperObject.prototype),WrapperObject.prototype.constructor=WrapperObject,WrapperObject.prototype.__class__=WrapperObject,WrapperObject.__cache__={},f.WrapperObject=WrapperObject,f.getCache=getCache,f.wrapPointer=wrapPointer,f.castObject=function castObject(r,e){return wrapPointer(r.ptr,e)},f.NULL=wrapPointer(0),f.destroy=function destroy(r){if(!r.__destroy__)throw"Error: Cannot destroy object. (Did you create it yourself?)";r.__destroy__(),delete getCache(r.__class__)[r.ptr]},f.compare=function compare(r,e){return r.ptr===e.ptr},f.getPointer=function getPointer(r){return r.ptr},f.getClass=function getClass(r){return r.__class__};var Ro={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:function(){if(Ro.needed){for(var r=0;r<Ro.temps.length;r++)f._free(Ro.temps[r]);Ro.temps.length=0,f._free(Ro.buffer),Ro.buffer=0,Ro.size+=Ro.needed,Ro.needed=0}Ro.buffer||(Ro.size+=128,Ro.buffer=f._malloc(Ro.size),assert(Ro.buffer)),Ro.pos=0},alloc:function(r,e){assert(Ro.buffer);var a,i=e.BYTES_PER_ELEMENT,t=r.length*i;return t=t+7&-8,Ro.pos+t>=Ro.size?(assert(t>0),Ro.needed+=t,a=f._malloc(t),Ro.temps.push(a)):(a=Ro.buffer+Ro.pos,Ro.pos+=t),a},copy:function(r,e,a){switch(a>>>=0,e.BYTES_PER_ELEMENT){case 2:a>>>=1;break;case 4:a>>>=2;break;case 8:a>>>=3}for(var i=0;i<r.length;i++)e[a+i]=r[i]}};function ensureString(r){if("string"==typeof r){var e=function intArrayFromString(r,e,a){var i=a>0?a:function lengthBytesUTF8(r){for(var e=0,a=0;a<r.length;++a){var i=r.charCodeAt(a);i<=127?e++:i<=2047?e+=2:i>=55296&&i<=57343?(e+=4,++a):e+=3}return e}(r)+1,f=new Array(i),t=function stringToUTF8Array(r,e,a,i){if(!(i>0))return 0;for(var f=a,t=a+i-1,o=0;o<r.length;++o){var b=r.charCodeAt(o);if(b>=55296&&b<=57343&&(b=65536+((1023&b)<<10)|1023&r.charCodeAt(++o)),b<=127){if(a>=t)break;e[a++]=b}else if(b<=2047){if(a+1>=t)break;e[a++]=192|b>>6,e[a++]=128|63&b}else if(b<=65535){if(a+2>=t)break;e[a++]=224|b>>12,e[a++]=128|b>>6&63,e[a++]=128|63&b}else{if(a+3>=t)break;e[a++]=240|b>>18,e[a++]=128|b>>12&63,e[a++]=128|b>>6&63,e[a++]=128|63&b}}return e[a]=0,a-f}(r,f,0,f.length);return e&&(f.length=t),f}(r),a=Ro.alloc(e,W);return Ro.copy(e,W,a),a}return r}function ensureInt8(r){if("object"==typeof r){var e=Ro.alloc(r,W);return Ro.copy(r,W,e),e}return r}function VoidPtr(){throw"cannot construct a VoidPtr, no constructor in IDL"}function DecoderBuffer(){this.ptr=x(),getCache(DecoderBuffer)[this.ptr]=this}function AttributeTransformData(){this.ptr=$(),getCache(AttributeTransformData)[this.ptr]=this}function GeometryAttribute(){this.ptr=ar(),getCache(GeometryAttribute)[this.ptr]=this}function PointAttribute(){this.ptr=fr(),getCache(PointAttribute)[this.ptr]=this}function AttributeQuantizationTransform(){this.ptr=_r(),getCache(AttributeQuantizationTransform)[this.ptr]=this}function AttributeOctahedronTransform(){this.ptr=Rr(),getCache(AttributeOctahedronTransform)[this.ptr]=this}function PointCloud(){this.ptr=Ur(),getCache(PointCloud)[this.ptr]=this}function Mesh(){this.ptr=Wr(),getCache(Mesh)[this.ptr]=this}function Metadata(){this.ptr=Ir(),getCache(Metadata)[this.ptr]=this}function Status(){throw"cannot construct a Status, no constructor in IDL"}function DracoFloat32Array(){this.ptr=Jr(),getCache(DracoFloat32Array)[this.ptr]=this}function DracoInt8Array(){this.ptr=Xr(),getCache(DracoInt8Array)[this.ptr]=this}function DracoUInt8Array(){this.ptr=Hr(),getCache(DracoUInt8Array)[this.ptr]=this}function DracoInt16Array(){this.ptr=Kr(),getCache(DracoInt16Array)[this.ptr]=this}function DracoUInt16Array(){this.ptr=ia(),getCache(DracoUInt16Array)[this.ptr]=this}function DracoInt32Array(){this.ptr=la(),getCache(DracoInt32Array)[this.ptr]=this}function DracoUInt32Array(){this.ptr=ga(),getCache(DracoUInt32Array)[this.ptr]=this}function MetadataQuerier(){this.ptr=it(),getCache(MetadataQuerier)[this.ptr]=this}function Decoder(){this.ptr=ut(),getCache(Decoder)[this.ptr]=this}return VoidPtr.prototype=Object.create(WrapperObject.prototype),VoidPtr.prototype.constructor=VoidPtr,VoidPtr.prototype.__class__=VoidPtr,VoidPtr.__cache__={},f.VoidPtr=VoidPtr,VoidPtr.prototype.__destroy__=VoidPtr.prototype.__destroy__=function(){var r=this.ptr;q(r)},DecoderBuffer.prototype=Object.create(WrapperObject.prototype),DecoderBuffer.prototype.constructor=DecoderBuffer,DecoderBuffer.prototype.__class__=DecoderBuffer,DecoderBuffer.__cache__={},f.DecoderBuffer=DecoderBuffer,DecoderBuffer.prototype.Init=DecoderBuffer.prototype.Init=function(r,e){var a=this.ptr;Ro.prepare(),"object"==typeof r&&(r=ensureInt8(r)),e&&"object"==typeof e&&(e=e.ptr),L(a,r,e)},DecoderBuffer.prototype.__destroy__=DecoderBuffer.prototype.__destroy__=function(){var r=this.ptr;K(r)},AttributeTransformData.prototype=Object.create(WrapperObject.prototype),AttributeTransformData.prototype.constructor=AttributeTransformData,AttributeTransformData.prototype.__class__=AttributeTransformData,AttributeTransformData.__cache__={},f.AttributeTransformData=AttributeTransformData,AttributeTransformData.prototype.transform_type=AttributeTransformData.prototype.transform_type=function(){var r=this.ptr;return rr(r)},AttributeTransformData.prototype.__destroy__=AttributeTransformData.prototype.__destroy__=function(){var r=this.ptr;er(r)},GeometryAttribute.prototype=Object.create(WrapperObject.prototype),GeometryAttribute.prototype.constructor=GeometryAttribute,GeometryAttribute.prototype.__class__=GeometryAttribute,GeometryAttribute.__cache__={},f.GeometryAttribute=GeometryAttribute,GeometryAttribute.prototype.__destroy__=GeometryAttribute.prototype.__destroy__=function(){var r=this.ptr;ir(r)},PointAttribute.prototype=Object.create(WrapperObject.prototype),PointAttribute.prototype.constructor=PointAttribute,PointAttribute.prototype.__class__=PointAttribute,PointAttribute.__cache__={},f.PointAttribute=PointAttribute,PointAttribute.prototype.size=PointAttribute.prototype.size=function(){var r=this.ptr;return tr(r)},PointAttribute.prototype.GetAttributeTransformData=PointAttribute.prototype.GetAttributeTransformData=function(){var r=this.ptr;return wrapPointer(or(r),AttributeTransformData)},PointAttribute.prototype.attribute_type=PointAttribute.prototype.attribute_type=function(){var r=this.ptr;return br(r)},PointAttribute.prototype.data_type=PointAttribute.prototype.data_type=function(){var r=this.ptr;return nr(r)},PointAttribute.prototype.num_components=PointAttribute.prototype.num_components=function(){var r=this.ptr;return Ar(r)},PointAttribute.prototype.normalized=PointAttribute.prototype.normalized=function(){var r=this.ptr;return!!kr(r)},PointAttribute.prototype.byte_stride=PointAttribute.prototype.byte_stride=function(){var r=this.ptr;return cr(r)},PointAttribute.prototype.byte_offset=PointAttribute.prototype.byte_offset=function(){var r=this.ptr;return ur(r)},PointAttribute.prototype.unique_id=PointAttribute.prototype.unique_id=function(){var r=this.ptr;return sr(r)},PointAttribute.prototype.__destroy__=PointAttribute.prototype.__destroy__=function(){var r=this.ptr;pr(r)},AttributeQuantizationTransform.prototype=Object.create(WrapperObject.prototype),AttributeQuantizationTransform.prototype.constructor=AttributeQuantizationTransform,AttributeQuantizationTransform.prototype.__class__=AttributeQuantizationTransform,AttributeQuantizationTransform.__cache__={},f.AttributeQuantizationTransform=AttributeQuantizationTransform,AttributeQuantizationTransform.prototype.InitFromAttribute=AttributeQuantizationTransform.prototype.InitFromAttribute=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),!!lr(e,r)},AttributeQuantizationTransform.prototype.quantization_bits=AttributeQuantizationTransform.prototype.quantization_bits=function(){var r=this.ptr;return dr(r)},AttributeQuantizationTransform.prototype.min_value=AttributeQuantizationTransform.prototype.min_value=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),yr(e,r)},AttributeQuantizationTransform.prototype.range=AttributeQuantizationTransform.prototype.range=function(){var r=this.ptr;return mr(r)},AttributeQuantizationTransform.prototype.__destroy__=AttributeQuantizationTransform.prototype.__destroy__=function(){var r=this.ptr;vr(r)},AttributeOctahedronTransform.prototype=Object.create(WrapperObject.prototype),AttributeOctahedronTransform.prototype.constructor=AttributeOctahedronTransform,AttributeOctahedronTransform.prototype.__class__=AttributeOctahedronTransform,AttributeOctahedronTransform.__cache__={},f.AttributeOctahedronTransform=AttributeOctahedronTransform,AttributeOctahedronTransform.prototype.InitFromAttribute=AttributeOctahedronTransform.prototype.InitFromAttribute=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),!!hr(e,r)},AttributeOctahedronTransform.prototype.quantization_bits=AttributeOctahedronTransform.prototype.quantization_bits=function(){var r=this.ptr;return jr(r)},AttributeOctahedronTransform.prototype.__destroy__=AttributeOctahedronTransform.prototype.__destroy__=function(){var r=this.ptr;Dr(r)},PointCloud.prototype=Object.create(WrapperObject.prototype),PointCloud.prototype.constructor=PointCloud,PointCloud.prototype.__class__=PointCloud,PointCloud.__cache__={},f.PointCloud=PointCloud,PointCloud.prototype.num_attributes=PointCloud.prototype.num_attributes=function(){var r=this.ptr;return Tr(r)},PointCloud.prototype.num_points=PointCloud.prototype.num_points=function(){var r=this.ptr;return Nr(r)},PointCloud.prototype.__destroy__=PointCloud.prototype.__destroy__=function(){var r=this.ptr;Vr(r)},Mesh.prototype=Object.create(WrapperObject.prototype),Mesh.prototype.constructor=Mesh,Mesh.prototype.__class__=Mesh,Mesh.__cache__={},f.Mesh=Mesh,Mesh.prototype.num_faces=Mesh.prototype.num_faces=function(){var r=this.ptr;return Gr(r)},Mesh.prototype.num_attributes=Mesh.prototype.num_attributes=function(){var r=this.ptr;return Zr(r)},Mesh.prototype.num_points=Mesh.prototype.num_points=function(){var r=this.ptr;return Fr(r)},Mesh.prototype.__destroy__=Mesh.prototype.__destroy__=function(){var r=this.ptr;Br(r)},Metadata.prototype=Object.create(WrapperObject.prototype),Metadata.prototype.constructor=Metadata,Metadata.prototype.__class__=Metadata,Metadata.__cache__={},f.Metadata=Metadata,Metadata.prototype.__destroy__=Metadata.prototype.__destroy__=function(){var r=this.ptr;Er(r)},Status.prototype=Object.create(WrapperObject.prototype),Status.prototype.constructor=Status,Status.prototype.__class__=Status,Status.__cache__={},f.Status=Status,Status.prototype.code=Status.prototype.code=function(){var r=this.ptr;return Qr(r)},Status.prototype.ok=Status.prototype.ok=function(){var r=this.ptr;return!!Yr(r)},Status.prototype.error_msg=Status.prototype.error_msg=function(){var r=this.ptr;return UTF8ToString(wr(r))},Status.prototype.__destroy__=Status.prototype.__destroy__=function(){var r=this.ptr;Mr(r)},DracoFloat32Array.prototype=Object.create(WrapperObject.prototype),DracoFloat32Array.prototype.constructor=DracoFloat32Array,DracoFloat32Array.prototype.__class__=DracoFloat32Array,DracoFloat32Array.__cache__={},f.DracoFloat32Array=DracoFloat32Array,DracoFloat32Array.prototype.GetValue=DracoFloat32Array.prototype.GetValue=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),gr(e,r)},DracoFloat32Array.prototype.size=DracoFloat32Array.prototype.size=function(){var r=this.ptr;return Or(r)},DracoFloat32Array.prototype.__destroy__=DracoFloat32Array.prototype.__destroy__=function(){var r=this.ptr;zr(r)},DracoInt8Array.prototype=Object.create(WrapperObject.prototype),DracoInt8Array.prototype.constructor=DracoInt8Array,DracoInt8Array.prototype.__class__=DracoInt8Array,DracoInt8Array.__cache__={},f.DracoInt8Array=DracoInt8Array,DracoInt8Array.prototype.GetValue=DracoInt8Array.prototype.GetValue=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),Cr(e,r)},DracoInt8Array.prototype.size=DracoInt8Array.prototype.size=function(){var r=this.ptr;return Pr(r)},DracoInt8Array.prototype.__destroy__=DracoInt8Array.prototype.__destroy__=function(){var r=this.ptr;Sr(r)},DracoUInt8Array.prototype=Object.create(WrapperObject.prototype),DracoUInt8Array.prototype.constructor=DracoUInt8Array,DracoUInt8Array.prototype.__class__=DracoUInt8Array,DracoUInt8Array.__cache__={},f.DracoUInt8Array=DracoUInt8Array,DracoUInt8Array.prototype.GetValue=DracoUInt8Array.prototype.GetValue=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),qr(e,r)},DracoUInt8Array.prototype.size=DracoUInt8Array.prototype.size=function(){var r=this.ptr;return xr(r)},DracoUInt8Array.prototype.__destroy__=DracoUInt8Array.prototype.__destroy__=function(){var r=this.ptr;Lr(r)},DracoInt16Array.prototype=Object.create(WrapperObject.prototype),DracoInt16Array.prototype.constructor=DracoInt16Array,DracoInt16Array.prototype.__class__=DracoInt16Array,DracoInt16Array.__cache__={},f.DracoInt16Array=DracoInt16Array,DracoInt16Array.prototype.GetValue=DracoInt16Array.prototype.GetValue=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),$r(e,r)},DracoInt16Array.prototype.size=DracoInt16Array.prototype.size=function(){var r=this.ptr;return ea(r)},DracoInt16Array.prototype.__destroy__=DracoInt16Array.prototype.__destroy__=function(){var r=this.ptr;aa(r)},DracoUInt16Array.prototype=Object.create(WrapperObject.prototype),DracoUInt16Array.prototype.constructor=DracoUInt16Array,DracoUInt16Array.prototype.__class__=DracoUInt16Array,DracoUInt16Array.__cache__={},f.DracoUInt16Array=DracoUInt16Array,DracoUInt16Array.prototype.GetValue=DracoUInt16Array.prototype.GetValue=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),ba(e,r)},DracoUInt16Array.prototype.size=DracoUInt16Array.prototype.size=function(){var r=this.ptr;return na(r)},DracoUInt16Array.prototype.__destroy__=DracoUInt16Array.prototype.__destroy__=function(){var r=this.ptr;ca(r)},DracoInt32Array.prototype=Object.create(WrapperObject.prototype),DracoInt32Array.prototype.constructor=DracoInt32Array,DracoInt32Array.prototype.__class__=DracoInt32Array,DracoInt32Array.__cache__={},f.DracoInt32Array=DracoInt32Array,DracoInt32Array.prototype.GetValue=DracoInt32Array.prototype.GetValue=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),da(e,r)},DracoInt32Array.prototype.size=DracoInt32Array.prototype.size=function(){var r=this.ptr;return ha(r)},DracoInt32Array.prototype.__destroy__=DracoInt32Array.prototype.__destroy__=function(){var r=this.ptr;ja(r)},DracoUInt32Array.prototype=Object.create(WrapperObject.prototype),DracoUInt32Array.prototype.constructor=DracoUInt32Array,DracoUInt32Array.prototype.__class__=DracoUInt32Array,DracoUInt32Array.__cache__={},f.DracoUInt32Array=DracoUInt32Array,DracoUInt32Array.prototype.GetValue=DracoUInt32Array.prototype.GetValue=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),rt(e,r)},DracoUInt32Array.prototype.size=DracoUInt32Array.prototype.size=function(){var r=this.ptr;return et(r)},DracoUInt32Array.prototype.__destroy__=DracoUInt32Array.prototype.__destroy__=function(){var r=this.ptr;at(r)},MetadataQuerier.prototype=Object.create(WrapperObject.prototype),MetadataQuerier.prototype.constructor=MetadataQuerier,MetadataQuerier.prototype.__class__=MetadataQuerier,MetadataQuerier.__cache__={},f.MetadataQuerier=MetadataQuerier,MetadataQuerier.prototype.HasEntry=MetadataQuerier.prototype.HasEntry=function(r,e){var a=this.ptr;return Ro.prepare(),r&&"object"==typeof r&&(r=r.ptr),e=e&&"object"==typeof e?e.ptr:ensureString(e),!!ft(a,r,e)},MetadataQuerier.prototype.GetIntEntry=MetadataQuerier.prototype.GetIntEntry=function(r,e){var a=this.ptr;return Ro.prepare(),r&&"object"==typeof r&&(r=r.ptr),e=e&&"object"==typeof e?e.ptr:ensureString(e),tt(a,r,e)},MetadataQuerier.prototype.GetIntEntryArray=MetadataQuerier.prototype.GetIntEntryArray=function(r,e,a){var i=this.ptr;Ro.prepare(),r&&"object"==typeof r&&(r=r.ptr),e=e&&"object"==typeof e?e.ptr:ensureString(e),a&&"object"==typeof a&&(a=a.ptr),ot(i,r,e,a)},MetadataQuerier.prototype.GetDoubleEntry=MetadataQuerier.prototype.GetDoubleEntry=function(r,e){var a=this.ptr;return Ro.prepare(),r&&"object"==typeof r&&(r=r.ptr),e=e&&"object"==typeof e?e.ptr:ensureString(e),bt(a,r,e)},MetadataQuerier.prototype.GetStringEntry=MetadataQuerier.prototype.GetStringEntry=function(r,e){var a=this.ptr;return Ro.prepare(),r&&"object"==typeof r&&(r=r.ptr),e=e&&"object"==typeof e?e.ptr:ensureString(e),UTF8ToString(nt(a,r,e))},MetadataQuerier.prototype.NumEntries=MetadataQuerier.prototype.NumEntries=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),At(e,r)},MetadataQuerier.prototype.GetEntryName=MetadataQuerier.prototype.GetEntryName=function(r,e){var a=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),UTF8ToString(kt(a,r,e))},MetadataQuerier.prototype.__destroy__=MetadataQuerier.prototype.__destroy__=function(){var r=this.ptr;ct(r)},Decoder.prototype=Object.create(WrapperObject.prototype),Decoder.prototype.constructor=Decoder,Decoder.prototype.__class__=Decoder,Decoder.__cache__={},f.Decoder=Decoder,Decoder.prototype.DecodeArrayToPointCloud=Decoder.prototype.DecodeArrayToPointCloud=function(r,e,a){var i=this.ptr;return Ro.prepare(),"object"==typeof r&&(r=ensureInt8(r)),e&&"object"==typeof e&&(e=e.ptr),a&&"object"==typeof a&&(a=a.ptr),wrapPointer(st(i,r,e,a),Status)},Decoder.prototype.DecodeArrayToMesh=Decoder.prototype.DecodeArrayToMesh=function(r,e,a){var i=this.ptr;return Ro.prepare(),"object"==typeof r&&(r=ensureInt8(r)),e&&"object"==typeof e&&(e=e.ptr),a&&"object"==typeof a&&(a=a.ptr),wrapPointer(pt(i,r,e,a),Status)},Decoder.prototype.GetAttributeId=Decoder.prototype.GetAttributeId=function(r,e){var a=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),_t(a,r,e)},Decoder.prototype.GetAttributeIdByName=Decoder.prototype.GetAttributeIdByName=function(r,e){var a=this.ptr;return Ro.prepare(),r&&"object"==typeof r&&(r=r.ptr),e=e&&"object"==typeof e?e.ptr:ensureString(e),lt(a,r,e)},Decoder.prototype.GetAttributeIdByMetadataEntry=Decoder.prototype.GetAttributeIdByMetadataEntry=function(r,e,a){var i=this.ptr;return Ro.prepare(),r&&"object"==typeof r&&(r=r.ptr),e=e&&"object"==typeof e?e.ptr:ensureString(e),a=a&&"object"==typeof a?a.ptr:ensureString(a),dt(i,r,e,a)},Decoder.prototype.GetAttribute=Decoder.prototype.GetAttribute=function(r,e){var a=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),wrapPointer(yt(a,r,e),PointAttribute)},Decoder.prototype.GetAttributeByUniqueId=Decoder.prototype.GetAttributeByUniqueId=function(r,e){var a=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),wrapPointer(mt(a,r,e),PointAttribute)},Decoder.prototype.GetMetadata=Decoder.prototype.GetMetadata=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),wrapPointer(vt(e,r),Metadata)},Decoder.prototype.GetAttributeMetadata=Decoder.prototype.GetAttributeMetadata=function(r,e){var a=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),wrapPointer(Rt(a,r,e),Metadata)},Decoder.prototype.GetFaceFromMesh=Decoder.prototype.GetFaceFromMesh=function(r,e,a){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),a&&"object"==typeof a&&(a=a.ptr),!!ht(i,r,e,a)},Decoder.prototype.GetTriangleStripsFromMesh=Decoder.prototype.GetTriangleStripsFromMesh=function(r,e){var a=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),jt(a,r,e)},Decoder.prototype.GetTrianglesUInt16Array=Decoder.prototype.GetTrianglesUInt16Array=function(r,e,a){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),a&&"object"==typeof a&&(a=a.ptr),!!Dt(i,r,e,a)},Decoder.prototype.GetTrianglesUInt32Array=Decoder.prototype.GetTrianglesUInt32Array=function(r,e,a){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),a&&"object"==typeof a&&(a=a.ptr),!!Ut(i,r,e,a)},Decoder.prototype.GetAttributeFloat=Decoder.prototype.GetAttributeFloat=function(r,e,a){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),a&&"object"==typeof a&&(a=a.ptr),!!Tt(i,r,e,a)},Decoder.prototype.GetAttributeFloatForAllPoints=Decoder.prototype.GetAttributeFloatForAllPoints=function(r,e,a){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),a&&"object"==typeof a&&(a=a.ptr),!!Nt(i,r,e,a)},Decoder.prototype.GetAttributeIntForAllPoints=Decoder.prototype.GetAttributeIntForAllPoints=function(r,e,a){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),a&&"object"==typeof a&&(a=a.ptr),!!Vt(i,r,e,a)},Decoder.prototype.GetAttributeInt8ForAllPoints=Decoder.prototype.GetAttributeInt8ForAllPoints=function(r,e,a){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),a&&"object"==typeof a&&(a=a.ptr),!!Wt(i,r,e,a)},Decoder.prototype.GetAttributeUInt8ForAllPoints=Decoder.prototype.GetAttributeUInt8ForAllPoints=function(r,e,a){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),a&&"object"==typeof a&&(a=a.ptr),!!Gt(i,r,e,a)},Decoder.prototype.GetAttributeInt16ForAllPoints=Decoder.prototype.GetAttributeInt16ForAllPoints=function(r,e,a){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),a&&"object"==typeof a&&(a=a.ptr),!!Zt(i,r,e,a)},Decoder.prototype.GetAttributeUInt16ForAllPoints=Decoder.prototype.GetAttributeUInt16ForAllPoints=function(r,e,a){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),a&&"object"==typeof a&&(a=a.ptr),!!Ft(i,r,e,a)},Decoder.prototype.GetAttributeInt32ForAllPoints=Decoder.prototype.GetAttributeInt32ForAllPoints=function(r,e,a){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),a&&"object"==typeof a&&(a=a.ptr),!!Bt(i,r,e,a)},Decoder.prototype.GetAttributeUInt32ForAllPoints=Decoder.prototype.GetAttributeUInt32ForAllPoints=function(r,e,a){var i=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),a&&"object"==typeof a&&(a=a.ptr),!!It(i,r,e,a)},Decoder.prototype.GetAttributeDataArrayForAllPoints=Decoder.prototype.GetAttributeDataArrayForAllPoints=function(r,e,a,i,f){var t=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),a&&"object"==typeof a&&(a=a.ptr),i&&"object"==typeof i&&(i=i.ptr),f&&"object"==typeof f&&(f=f.ptr),!!Et(t,r,e,a,i,f)},Decoder.prototype.SkipAttributeTransform=Decoder.prototype.SkipAttributeTransform=function(r){var e=this.ptr;r&&"object"==typeof r&&(r=r.ptr),Qt(e,r)},Decoder.prototype.GetEncodedGeometryType_Deprecated=Decoder.prototype.GetEncodedGeometryType_Deprecated=function(r){var e=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),Yt(e,r)},Decoder.prototype.DecodeBufferToPointCloud=Decoder.prototype.DecodeBufferToPointCloud=function(r,e){var a=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),wrapPointer(wt(a,r,e),Status)},Decoder.prototype.DecodeBufferToMesh=Decoder.prototype.DecodeBufferToMesh=function(r,e){var a=this.ptr;return r&&"object"==typeof r&&(r=r.ptr),e&&"object"==typeof e&&(e=e.ptr),wrapPointer(Mt(a,r,e),Status)},Decoder.prototype.__destroy__=Decoder.prototype.__destroy__=function(){var r=this.ptr;Jt(r)},function(){function setupEnums(){f.ATTRIBUTE_INVALID_TRANSFORM=gt(),f.ATTRIBUTE_NO_TRANSFORM=Ot(),f.ATTRIBUTE_QUANTIZATION_TRANSFORM=zt(),f.ATTRIBUTE_OCTAHEDRON_TRANSFORM=Xt(),f.INVALID=Ct(),f.POSITION=Pt(),f.NORMAL=St(),f.COLOR=Ht(),f.TEX_COORD=qt(),f.GENERIC=xt(),f.INVALID_GEOMETRY_TYPE=Lt(),f.POINT_CLOUD=Kt(),f.TRIANGULAR_MESH=$t(),f.DT_INVALID=ro(),f.DT_INT8=eo(),f.DT_UINT8=ao(),f.DT_INT16=io(),f.DT_UINT16=fo(),f.DT_INT32=to(),f.DT_UINT32=oo(),f.DT_INT64=bo(),f.DT_UINT64=no(),f.DT_FLOAT32=Ao(),f.DT_FLOAT64=ko(),f.DT_BOOL=co(),f.DT_TYPES_COUNT=uo(),f.OK=so(),f.DRACO_ERROR=po(),f.IO_ERROR=_o(),f.INVALID_PARAMETER=lo(),f.UNSUPPORTED_VERSION=yo(),f.UNKNOWN_VERSION=mo()}M?setupEnums():addOnInit(setupEnums)}(),"function"==typeof f.onModuleParsed&&f.onModuleParsed(),f.Decoder.prototype.GetEncodedGeometryType=function(r){if(r.__class__&&r.__class__===f.DecoderBuffer)return f.Decoder.prototype.GetEncodedGeometryType_Deprecated(r);if(r.byteLength<8)return f.INVALID_GEOMETRY_TYPE;switch(r[7]){case 0:return f.POINT_CLOUD;case 1:return f.TRIANGULAR_MESH;default:return f.INVALID_GEOMETRY_TYPE}},e.ready}})();"object"==typeof exports&&"object"==typeof module?module.exports=DracoDecoderModule:"function"==typeof define&&define.amd?define([],(function(){return DracoDecoderModule})):"object"==typeof exports&&(exports.DracoDecoderModule=DracoDecoderModule);