@jdultra/threedtiles 10.1.0 → 10.1.2

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+(-1^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: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: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+(-1^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: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: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+(-1^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: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: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+(-1^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: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: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+(-1^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: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: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+(-1^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: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: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+(-1^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: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: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&(-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: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: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: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: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!=(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+(-1^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: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: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+(-1^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: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: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+(-1^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: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: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+(-1^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: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: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+(-1^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: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: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+(-1^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: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: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+(-1^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: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: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!=(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=(-1^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!=(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!=(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!=(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|0!=((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!=(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!=(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((-1^(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!=(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=(-1^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=-1^(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>(-1^(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&(o=(0|(a^=2147483647))==(0|e)&(-1^o)>>>0<t>>>0|e>>>0>a>>>0))&(0|(r=o?-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=-1^(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>(-1^(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&(A=(0|(a^=2147483647))==(0|e)&(-1^A)>>>0<t>>>0|e>>>0>a>>>0))&(0|(r=A?-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==(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: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|0))){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=0!=(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|0))){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!=(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: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^-1),k=s[f>>2]&-1<<e&-1>>>c-b,s[u>>2]=_|(e>>>0<a>>>0?k<<a-e:k>>>e-a|0),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^-1)|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=-1^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^-1),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^-1)|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]&(-1^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]&(-1^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=(-1^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]&(-1^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=(-1^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^-1))>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]&(-1^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^-1),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)^-1)}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,(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]=-1^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]=-1^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|0: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)^-1))}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+(-1^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|0: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(-1^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: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!=(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: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^-1),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)^-1)))}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]&(-1^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=(-1^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,!((-1^(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]=-1^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^-1)/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^-1)/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^-1))>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^-1))>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|0)<<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|0)<<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]&(-1^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]&(-1^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]&(-1^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]&(-1^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!=(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|0)<<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]&(-1^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!=(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!=(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!=(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!=(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]&(-1^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]&(-1^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]&(-1^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]&(-1^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|0:f)<<2)|0,l=0,W=0!=(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]&(-1^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!=(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!=(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!=(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!=(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]=-1^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]=-1^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]=-1^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]=-1^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]=-1^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]=-1^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=(-1^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]=(-1^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]=(-1^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]&(-1^b),s[t>>2]=i,s[d>>2]=s[d>>2]&(-1^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=(-1^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]=(-1^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]=(-1^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]&(-1^o),s[b>>2]=f,s[a>>2]=s[a>>2]&(-1^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=(-1^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]=(-1^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]=(-1^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]&(-1^A),s[r>>2]=A,s[o>>2]=s[o>>2]&(-1^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(-1^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(-1^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|0)},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!=(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|0: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: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 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);