x_ite
Version:
X_ITE X3D Browser, view and manipulate X3D, VRML, glTF and other 3D sources in HTML.
1 lines • 435 kB
JavaScript
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,t,f=void 0!==e?e:{};f.ready=new Promise(function(r,e){i=r,t=e});var a=!1,n=!1;f.onRuntimeInitialized=function(){a=!0,n&&"function"==typeof f.onModuleLoaded&&f.onModuleLoaded(f)},f.onModuleParsed=function(){n=!0,a&&"function"==typeof f.onModuleLoaded&&f.onModuleLoaded(f)},f.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,o,b,u=Object.assign({},f),c="object"==typeof window,k="function"==typeof importScripts,_="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node&&!1,s="";if(_){var p=require("fs"),l=require("path");s=k?l.dirname(s)+"/":__dirname+"/",A=(r,e)=>{var i=rr(r);return i?e?i:i.toString():(r=H(r)?new URL(r):l.normalize(r),p.readFileSync(r,e?void 0:"utf8"))},b=r=>{var e=A(r,!0);return e.buffer||(e=new Uint8Array(e)),e},o=(r,e,i)=>{var t=rr(r);t&&e(t),r=H(r)?new URL(r):l.normalize(r),p.readFile(r,function(r,t){r?i(r):e(t.buffer)})},process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),f.inspect=function(){return"[Emscripten Module object]"}}else(c||k)&&(k?s=self.location.href:"undefined"!=typeof document&&document.currentScript&&(s=document.currentScript.src),r&&(s=r),s=0!==s.indexOf("blob:")?s.substr(0,s.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=rr(r);if(i)return function(r){for(var e=[],i=0;i<r.length;i++){var t=r[i];t>255&&(t&=255),e.push(String.fromCharCode(t))}return e.join("")}(i);throw e}},k&&(b=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=rr(r);if(i)return i;throw e}}),o=(r,e,i)=>{var t=new XMLHttpRequest;t.open("GET",r,!0),t.responseType="arraybuffer",t.onload=()=>{if(200==t.status||0==t.status&&t.response)e(t.response);else{var f=rr(r);f?e(f.buffer):i()}},t.onerror=i,t.send(null)},r=>document.title=r);f.print||console.log.bind(console);var y,d=f.printErr||console.warn.bind(console);Object.assign(f,u),u=null,f.arguments&&f.arguments,f.thisProgram&&f.thisProgram,f.quit&&f.quit,f.wasmBinary&&(y=f.wasmBinary);var m,v=f.noExitRuntime||!0,h={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),t=25;t>=0;--t)i[48+t]=52+t,i[65+t]=t,i[97+t]=26+t;function f(r,e,t){for(var f,a,n=0,A=e,o=t.length,b=e+(3*o>>2)-("="==t[o-2])-("="==t[o-1]);n<o;n+=4)f=i[t.charCodeAt(n+1)],a=i[t.charCodeAt(n+2)],r[A++]=i[t.charCodeAt(n)]<<2|f>>4,A<b&&(r[A++]=f<<4|a>>2),A<b&&(r[A++]=a<<6|i[t.charCodeAt(n+3)])}i[43]=62,i[47]=63;var a=new ArrayBuffer(16),n=new Int32Array(a),A=new Float32Array(a);new Float64Array(a);function o(){throw new Error("abort")}function b(r){A[2]=r}function u(r){return n[r]}return function(r){var i=r.a,t=i.a,a=t.buffer;t.grow=function(r){r|=0;var i=0|Et(),f=i+r|0;if(i<f&&f<65536){var o=new ArrayBuffer(y(f,65536));new Int8Array(o).set(n),n=new Int8Array(o),A=new Int16Array(o),c=new Int32Array(o),k=new Uint8Array(o),_=new Uint16Array(o),s=new Uint32Array(o),p=new Float32Array(o),l=new Float64Array(o),a=o,t.buffer=a,e=k}return i};var n=new Int8Array(a),A=new Int16Array(a),c=new Int32Array(a),k=new Uint8Array(a),_=new Uint16Array(a),s=new Uint32Array(a),p=new Float32Array(a),l=new Float64Array(a),y=Math.imul,d=Math.fround,m=Math.abs,v=Math.clz32,h=Math.min,R=Math.max,N=Math.floor,T=Math.ceil,V=(Math.trunc,Math.sqrt),U=i.b,W=i.c,D=i.d,G=i.e,Z=77808,E=0;function F(r,e,i,t){var f=0,a=0,A=0,o=0,b=0,u=0,p=0,l=0,d=0,m=0,v=0,h=0,R=0,N=0,T=0,V=0,U=0,W=0,D=0,G=0,E=0,F=0;if(!r)return 1;r:if(!((0|(f=c[i+20>>2]))>=(0|(v=c[i+12>>2]))&(A=c[i+16>>2])>>>0>=s[i+8>>2]|(0|f)>(0|v))){v=k[A+c[i>>2]|0],f=(A=A+1|0)?f:f+1|0,c[i+16>>2]=A,c[i+20>>2]=f;e:switch(0|v){case 0:f=r,a=e,A=t,r=0,t=0,Z=u=Z+-64|0,c[u+56>>2]=0,c[u+48>>2]=0,c[u+52>>2]=0,c[u+40>>2]=0,c[u+44>>2]=0,c[u+32>>2]=0,c[u+36>>2]=0,c[u+24>>2]=0,c[u+28>>2]=0,c[u+16>>2]=0,c[u+20>>2]=0,c[u+8>>2]=0,c[u+12>>2]=0;i:if(or(u+8|0,i)&&!(!jr(u+8|0,i)|(c[u+20>>2]?0:f))){if(bi(i,0,0),f)for(T=a<<2,V=c[u+36>>2],U=c[u+48>>2],G=c[u+24>>2],l=c[u+56>>2],b=c[u+52>>2];;){t:if(!(l>>>0>16383))for(;;){if((0|b)<=0)break t;if(b=b-1|0,c[u+52>>2]=b,l=k[b+U|0]|l<<8,c[u+56>>2]=l,!(l>>>0<16384))break}if(N=c[((r=4095&l)<<2)+G>>2],l=(y(c[(e=(N<<3)+V|0)>>2],l>>>12|0)+r|0)-c[e+4>>2]|0,c[u+56>>2]=l,(0|a)>0){if(r=0,!k[i+36|0]|N>>>0>32)break i;if(v=t+a|0,N)for(E=-2&N,F=1&N,e=c[i+32>>2],o=c[i+28>>2],R=c[i+24>>2];;){if(p=0,r=e,d=0,m=0,1!=(0|N))for(;(h=R+(r>>>3|0)|0)>>>0>=o>>>0?h=0:(h=k[0|h],e=r+1|0,c[i+32>>2]=e,h=h>>>(7&r)&1,r=e),h=h<<p|d,d=0,(W=R+(r>>>3|0)|0)>>>0<o>>>0&&(d=k[0|W],e=r+1|0,c[i+32>>2]=e,d=d>>>(7&r)&1,r=e),W=1|p,p=p+2|0,d=h|d<<W,(0|E)!=(0|(m=m+2|0)););if(m=A+(t<<2)|0,F&&((h=R+(r>>>3|0)|0)>>>0<o>>>0?(h=k[0|h],e=r+1|0,c[i+32>>2]=e,r=h>>>(7&r)&1):r=0,d|=r<<p),c[m>>2]=d,(0|v)==(0|(t=t+1|0)))break}else Sr(A+(t<<2)|0,0,T);t=v}if(!(f>>>0>(D=a+D|0)>>>0))break}n[i+36|0]=0,a=c[i+20>>2],r=0,e=(d=(r=(d=c[i+32>>2]+7|0)>>>0<7?1:r)<<29|d>>>3)+c[i+16>>2]|0,r=(r>>>3|0)+a|0,c[i+16>>2]=e,c[i+20>>2]=e>>>0<d>>>0?r+1|0:r,r=1}return(e=c[u+36>>2])&&(c[u+40>>2]=e,er(e)),(e=c[u+24>>2])&&(c[u+28>>2]=e,er(e)),(e=c[u+8>>2])&&(c[u+12>>2]=e,er(e)),Z=u- -64|0,r;case 1:break e;default:break r}e=0;e:if(!((0|(f=c[i+20>>2]))>=(0|(v=c[i+12>>2]))&(A=c[i+16>>2])>>>0>=s[i+8>>2]|(0|f)>(0|v))){v=k[A+c[i>>2]|0],f=(A=A+1|0)?f:f+1|0,c[i+16>>2]=A,c[i+20>>2]=f;i:switch(v-1|0){case 8:v=r,N=t,Z=f=Z+-64|0,c[f+56>>2]=0,c[f+48>>2]=0,c[f+52>>2]=0,c[f+40>>2]=0,c[f+44>>2]=0,c[f+32>>2]=0,c[f+36>>2]=0,c[f+24>>2]=0,c[f+28>>2]=0,c[f+16>>2]=0,c[f+20>>2]=0,c[f+8>>2]=0,c[f+12>>2]=0,o=f+8|0;t:{f:if(_[i+38>>1]&&Ze(1,o+12|0,i)&&!((a=(e=c[i+8>>2])-(t=c[i+16>>2])|0)>>>0<(b=c[o+12>>2])>>>6>>>0&(0|(e=c[i+12>>2]-(c[i+20>>2]+(e>>>0<t>>>0)|0)|0))<=0|(0|e)<0)){if(e=c[o>>2],(r=c[o+4>>2]-e>>2)>>>0<b>>>0?(_e(o,b-r|0),b=c[o+12>>2]):r>>>0<=b>>>0||(c[o+4>>2]=e+(b<<2)),A=1,!b)break t;for(a=c[i+16>>2],t=c[i+20>>2],T=c[o>>2],u=c[i+8>>2],m=c[i+12>>2],e=0;;){if(A=0,(0|t)>=(0|m)&a>>>0>=u>>>0|(0|t)>(0|m))break t;A=c[i>>2],h=k[A+a|0],r=t,r=(a=a+1|0)?r:r+1|0,c[i+16>>2]=a,t=r,c[i+20>>2]=r,r=h>>>2|0,l=0;a:{n:{A:{o:switch(0|(V=3&h)){case 0:break n;case 3:break o;default:break A}if(A=0,(r=r+e|0)>>>0>=b>>>0)break t;Sr(T+(e<<2)|0,0,4+(252&h)|0),e=r;break a}for(;;){if((0|a)==(0|u)&(0|t)==(0|m))break f;if(b=k[a+A|0],t=(a=a+1|0)?t:t+1|0,c[i+16>>2]=a,c[i+20>>2]=t,r|=b<<(l<<3|6),(0|V)==(0|(l=l+1|0)))break}}c[T+(e<<2)>>2]=r}if(!((e=e+1|0)>>>0<(b=c[o+12>>2])>>>0))break}if(r=o+16|0,m=c[o>>2],t=c[o+16>>2],(e=c[o+20>>2]-t|0)>>>0<=32767?_e(r,8192-(e>>>2|0)|0):32768!=(0|e)&&(c[o+20>>2]=t+32768),e=c[(t=o+28|0)>>2],(a=c[o+32>>2]-e>>3)>>>0<b>>>0)ye(t,b-a|0),e=c[t>>2];else if(a>>>0>b>>>0&&(c[o+32>>2]=(b<<3)+e),!b)break f;for(u=c[r>>2],a=0,t=0;;){if(l=c[(A=m+(a<<2)|0)>>2],r=t,c[(o=(a<<3)+e|0)+4>>2]=r,c[o>>2]=l,(t=(A=c[A>>2])+r|0)>>>0>8192)break f;if(!(r>>>0>=t>>>0)){if(l=0,o=7&A)for(;c[u+(r<<2)>>2]=a,r=r+1|0,(0|o)!=(0|(l=l+1|0)););if(!(A-1>>>0<=6))for(;c[(A=u+(r<<2)|0)>>2]=a,c[A+28>>2]=a,c[A+24>>2]=a,c[A+20>>2]=a,c[A+16>>2]=a,c[A+12>>2]=a,c[A+8>>2]=a,c[A+4>>2]=a,(0|t)!=(0|(r=r+8|0)););}if((0|b)==(0|(a=a+1|0)))break}p=8192==(0|t)}A=p}if(!(!A|(c[f+20>>2]?0:v))){t=0,Z=p=Z-16|0;t:if(Re(1,p+8|0,i)&&(A=(r=c[i+8>>2])-(a=c[i+16>>2])|0,u=c[p+12>>2],b=c[i+20>>2],!((0|u)==(0|(r=c[i+12>>2]-(b+(r>>>0<a>>>0)|0)|0))&A>>>0<(e=c[p+8>>2])>>>0|r>>>0<u>>>0||(r=b+u|0,r=(A=e+a|0)>>>0<a>>>0?r+1|0:r,c[i+16>>2]=A,c[i+20>>2]=r,(0|e)<=0)))){r=a+c[i>>2]|0,c[f+48>>2]=r;f:if((A=k[0|(a=(i=e-1|0)+r|0)])>>>0<=63)c[f+52>>2]=i,r=63&k[0|a];else{a:switch((A>>>6|0)-1|0){case 0:if(e>>>0<2)break t;e=e-2|0,c[f+52>>2]=e,r=k[(r=r+e|0)+1|0]<<8&16128|k[0|r];break f;case 1:if(e>>>0<3)break t;e=e-3|0,c[f+52>>2]=e,r=k[(r=r+e|0)+1|0]<<8|k[r+2|0]<<16&4128768|k[0|r];break f;default:break a}e=e-4|0,c[f+52>>2]=e,r=1073741823&(k[0|(r=r+e|0)]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24)}c[f+56>>2]=r+32768,t=r>>>0<8355840}if(Z=p+16|0,t)if(v)for(e=c[f+52>>2],r=c[f+56>>2],i=c[f+36>>2],t=c[f+48>>2],a=c[f+24>>2];;){t:if(!(r>>>0>32767))for(;;){if((0|e)<=0)break t;if(e=e-1|0,c[f+52>>2]=e,r=k[e+t|0]|r<<8,c[f+56>>2]=r,!(r>>>0<32768))break}if(p=c[a+((d=8191&r)<<2)>>2],r=(y(c[(A=i+(p<<3)|0)>>2],r>>>13|0)+d|0)-c[A+4>>2]|0,c[f+56>>2]=r,c[N+(R<<2)>>2]=p,d=1,(0|v)==(0|(R=R+1|0)))break}else d=1}(r=c[f+36>>2])&&(c[f+40>>2]=r,er(r)),(r=c[f+24>>2])&&(c[f+28>>2]=r,er(r)),(r=c[f+8>>2])&&(c[f+12>>2]=r,er(r)),Z=f- -64|0,e=d;break e;case 9:v=r,N=t,Z=A=Z+-64|0,c[A+56>>2]=0,c[A+48>>2]=0,c[A+52>>2]=0,c[A+40>>2]=0,c[A+44>>2]=0,c[A+32>>2]=0,c[A+36>>2]=0,c[A+24>>2]=0,c[A+28>>2]=0,c[A+16>>2]=0,c[A+20>>2]=0,c[A+8>>2]=0,c[A+12>>2]=0,o=A+8|0;t:{f:if(_[i+38>>1]&&Ze(1,o+12|0,i)&&!((a=(e=c[i+8>>2])-(t=c[i+16>>2])|0)>>>0<(b=c[o+12>>2])>>>6>>>0&(0|(e=c[i+12>>2]-(c[i+20>>2]+(e>>>0<t>>>0)|0)|0))<=0|(0|e)<0)){if(e=c[o>>2],(r=c[o+4>>2]-e>>2)>>>0<b>>>0?(_e(o,b-r|0),b=c[o+12>>2]):r>>>0<=b>>>0||(c[o+4>>2]=e+(b<<2)),f=1,!b)break t;for(a=c[i+16>>2],t=c[i+20>>2],T=c[o>>2],u=c[i+8>>2],m=c[i+12>>2],e=0;;){if(f=0,(0|t)>=(0|m)&a>>>0>=u>>>0|(0|t)>(0|m))break t;V=c[i>>2],h=k[V+a|0],f=t,f=(a=a+1|0)?f:f+1|0,c[i+16>>2]=a,t=f,c[i+20>>2]=f,r=h>>>2|0,l=0;a:{n:{A:{o:switch(0|(f=3&h)){case 0:break n;case 3:break o;default:break A}if(f=0,(r=r+e|0)>>>0>=b>>>0)break t;Sr(T+(e<<2)|0,0,4+(252&h)|0),e=r;break a}for(;;){if((0|a)==(0|u)&(0|t)==(0|m))break f;if(b=k[a+V|0],t=(a=a+1|0)?t:t+1|0,c[i+16>>2]=a,c[i+20>>2]=t,r|=b<<(l<<3|6),(0|f)==(0|(l=l+1|0)))break}}c[T+(e<<2)>>2]=r}if(!((e=e+1|0)>>>0<(b=c[o+12>>2])>>>0))break}if(r=o+16|0,m=c[o>>2],t=c[o+16>>2],(e=c[o+20>>2]-t|0)>>>0<=131071?_e(r,32768-(e>>>2|0)|0):131072!=(0|e)&&(c[o+20>>2]=t+131072),e=c[(t=o+28|0)>>2],(a=c[o+32>>2]-e>>3)>>>0<b>>>0)ye(t,b-a|0),e=c[t>>2];else if(a>>>0>b>>>0&&(c[o+32>>2]=(b<<3)+e),!b)break f;for(u=c[r>>2],a=0,t=0;;){if(l=c[(f=m+(a<<2)|0)>>2],r=t,c[(o=(a<<3)+e|0)+4>>2]=r,c[o>>2]=l,(t=(f=c[f>>2])+r|0)>>>0>32768)break f;if(!(r>>>0>=t>>>0)){if(l=0,o=7&f)for(;c[u+(r<<2)>>2]=a,r=r+1|0,(0|o)!=(0|(l=l+1|0)););if(!(f-1>>>0<=6))for(;c[(f=u+(r<<2)|0)>>2]=a,c[f+28>>2]=a,c[f+24>>2]=a,c[f+20>>2]=a,c[f+16>>2]=a,c[f+12>>2]=a,c[f+8>>2]=a,c[f+4>>2]=a,(0|t)!=(0|(r=r+8|0)););}if((0|b)==(0|(a=a+1|0)))break}p=32768==(0|t)}f=p}if(!(!f|(c[A+20>>2]?0:v))){t=0,Z=a=Z-16|0;t:if(Re(1,a+8|0,i)&&(p=(f=c[i+8>>2])-(e=c[i+16>>2])|0,u=c[a+12>>2],b=c[i+20>>2],!((0|u)==(0|(f=c[i+12>>2]-(b+(e>>>0>f>>>0)|0)|0))&p>>>0<(r=c[a+8>>2])>>>0|f>>>0<u>>>0||(f=b+u|0,f=(p=r+e|0)>>>0<e>>>0?f+1|0:f,c[i+16>>2]=p,c[i+20>>2]=f,(0|r)<=0)))){e=e+c[i>>2]|0,c[A+48>>2]=e;f:if((p=k[0|(f=(i=r-1|0)+e|0)])>>>0<=63)c[A+52>>2]=i,r=63&k[0|f];else{a:switch((p>>>6|0)-1|0){case 0:if(r>>>0<2)break t;r=r-2|0,c[A+52>>2]=r,r=k[(r=r+e|0)+1|0]<<8&16128|k[0|r];break f;case 1:if(r>>>0<3)break t;r=r-3|0,c[A+52>>2]=r,r=k[(r=r+e|0)+1|0]<<8|k[r+2|0]<<16&4128768|k[0|r];break f;default:break a}r=r-4|0,c[A+52>>2]=r,r=1073741823&(k[0|(r=r+e|0)]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24)}c[A+56>>2]=r+131072,t=r>>>0<33423360}if(Z=a+16|0,t)if(v)for(e=c[A+52>>2],r=c[A+56>>2],i=c[A+36>>2],t=c[A+48>>2],a=c[A+24>>2];;){t:if(!(r>>>0>131071))for(;;){if((0|e)<=0)break t;if(e=e-1|0,c[A+52>>2]=e,r=k[e+t|0]|r<<8,c[A+56>>2]=r,!(r>>>0<131072))break}if(f=c[a+((d=32767&r)<<2)>>2],r=(y(c[(p=i+(f<<3)|0)>>2],r>>>15|0)+d|0)-c[p+4>>2]|0,c[A+56>>2]=r,c[N+(R<<2)>>2]=f,d=1,(0|v)==(0|(R=R+1|0)))break}else d=1}(r=c[A+36>>2])&&(c[A+40>>2]=r,er(r)),(r=c[A+24>>2])&&(c[A+28>>2]=r,er(r)),(r=c[A+8>>2])&&(c[A+12>>2]=r,er(r)),Z=A- -64|0,e=d;break e;case 10:v=r,N=t,Z=A=Z+-64|0,c[A+56>>2]=0,c[A+48>>2]=0,c[A+52>>2]=0,c[A+40>>2]=0,c[A+44>>2]=0,c[A+32>>2]=0,c[A+36>>2]=0,c[A+24>>2]=0,c[A+28>>2]=0,c[A+16>>2]=0,c[A+20>>2]=0,c[A+8>>2]=0,c[A+12>>2]=0,o=A+8|0;t:{f:if(_[i+38>>1]&&Ze(1,o+12|0,i)&&!((a=(e=c[i+8>>2])-(t=c[i+16>>2])|0)>>>0<(b=c[o+12>>2])>>>6>>>0&(0|(e=c[i+12>>2]-(c[i+20>>2]+(e>>>0<t>>>0)|0)|0))<=0|(0|e)<0)){if(e=c[o>>2],(r=c[o+4>>2]-e>>2)>>>0<b>>>0?(_e(o,b-r|0),b=c[o+12>>2]):r>>>0<=b>>>0||(c[o+4>>2]=e+(b<<2)),f=1,!b)break t;for(a=c[i+16>>2],t=c[i+20>>2],T=c[o>>2],u=c[i+8>>2],m=c[i+12>>2],e=0;;){if(f=0,(0|t)>=(0|m)&a>>>0>=u>>>0|(0|t)>(0|m))break t;V=c[i>>2],h=k[V+a|0],r=t,r=(a=a+1|0)?r:r+1|0,c[i+16>>2]=a,t=r,c[i+20>>2]=r,r=h>>>2|0,l=0;a:{n:{A:{o:switch(0|(U=3&h)){case 0:break n;case 3:break o;default:break A}if(f=0,(r=r+e|0)>>>0>=b>>>0)break t;Sr(T+(e<<2)|0,0,4+(252&h)|0),e=r;break a}for(;;){if((0|a)==(0|u)&(0|t)==(0|m))break f;if(b=k[a+V|0],f=t,f=(a=a+1|0)?f:f+1|0,c[i+16>>2]=a,t=f,c[i+20>>2]=f,r|=b<<(l<<3|6),(0|U)==(0|(l=l+1|0)))break}}c[T+(e<<2)>>2]=r}if(!((e=e+1|0)>>>0<(b=c[o+12>>2])>>>0))break}if(r=o+16|0,m=c[o>>2],t=c[o+16>>2],(e=c[o+20>>2]-t|0)>>>0<=262143?_e(r,65536-(e>>>2|0)|0):262144!=(0|e)&&(c[o+20>>2]=t+262144),e=c[(t=o+28|0)>>2],(a=c[o+32>>2]-e>>3)>>>0<b>>>0)ye(t,b-a|0),e=c[t>>2];else if(a>>>0>b>>>0&&(c[o+32>>2]=(b<<3)+e),!b)break f;for(u=c[r>>2],a=0,t=0;;){if(l=c[(f=m+(a<<2)|0)>>2],r=t,c[(o=(a<<3)+e|0)+4>>2]=r,c[o>>2]=l,(t=(f=c[f>>2])+r|0)>>>0>65536)break f;if(!(r>>>0>=t>>>0)){if(l=0,o=7&f)for(;c[u+(r<<2)>>2]=a,r=r+1|0,(0|o)!=(0|(l=l+1|0)););if(!(f-1>>>0<=6))for(;c[(f=u+(r<<2)|0)>>2]=a,c[f+28>>2]=a,c[f+24>>2]=a,c[f+20>>2]=a,c[f+16>>2]=a,c[f+12>>2]=a,c[f+8>>2]=a,c[f+4>>2]=a,(0|t)!=(0|(r=r+8|0)););}if((0|b)==(0|(a=a+1|0)))break}p=65536==(0|t)}f=p}if(!(!f|(c[A+20>>2]?0:v))){t=0,Z=f=Z-16|0;t:if(Re(1,f+8|0,i)&&(p=(r=c[i+8>>2])-(a=c[i+16>>2])|0,u=c[f+12>>2],b=c[i+20>>2],!((0|u)==(0|(r=c[i+12>>2]-(b+(r>>>0<a>>>0)|0)|0))&p>>>0<(e=c[f+8>>2])>>>0|r>>>0<u>>>0||(r=b+u|0,r=(p=e+a|0)>>>0<a>>>0?r+1|0:r,c[i+16>>2]=p,c[i+20>>2]=r,(0|e)<=0)))){r=a+c[i>>2]|0,c[A+48>>2]=r;f:if((p=k[0|(a=(i=e-1|0)+r|0)])>>>0<=63)c[A+52>>2]=i,r=63&k[0|a];else{a:switch((p>>>6|0)-1|0){case 0:if(e>>>0<2)break t;e=e-2|0,c[A+52>>2]=e,r=k[(r=r+e|0)+1|0]<<8&16128|k[0|r];break f;case 1:if(e>>>0<3)break t;e=e-3|0,c[A+52>>2]=e,r=k[(r=r+e|0)+1|0]<<8|k[r+2|0]<<16&4128768|k[0|r];break f;default:break a}e=e-4|0,c[A+52>>2]=e,r=1073741823&(k[0|(r=r+e|0)]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24)}c[A+56>>2]=r+262144,t=r>>>0<66846720}if(Z=f+16|0,t)if(v)for(e=c[A+52>>2],r=c[A+56>>2],i=c[A+36>>2],t=c[A+48>>2],a=c[A+24>>2];;){t:if(!(r>>>0>262143))for(;;){if((0|e)<=0)break t;if(e=e-1|0,c[A+52>>2]=e,r=k[e+t|0]|r<<8,c[A+56>>2]=r,!(r>>>0<262144))break}if(f=c[a+((d=65535&r)<<2)>>2],r=(y(c[(p=i+(f<<3)|0)>>2],r>>>16|0)+d|0)-c[p+4>>2]|0,c[A+56>>2]=r,c[N+(R<<2)>>2]=f,d=1,(0|v)==(0|(R=R+1|0)))break}else d=1}(r=c[A+36>>2])&&(c[A+40>>2]=r,er(r)),(r=c[A+24>>2])&&(c[A+28>>2]=r,er(r)),(r=c[A+8>>2])&&(c[A+12>>2]=r,er(r)),Z=A- -64|0,e=d;break e;case 11:v=r,N=t,Z=A=Z+-64|0,c[A+56>>2]=0,c[A+48>>2]=0,c[A+52>>2]=0,c[A+40>>2]=0,c[A+44>>2]=0,c[A+32>>2]=0,c[A+36>>2]=0,c[A+24>>2]=0,c[A+28>>2]=0,c[A+16>>2]=0,c[A+20>>2]=0,c[A+8>>2]=0,c[A+12>>2]=0,o=A+8|0;t:{f:if(_[i+38>>1]&&Ze(1,o+12|0,i)&&!((a=(e=c[i+8>>2])-(t=c[i+16>>2])|0)>>>0<(b=c[o+12>>2])>>>6>>>0&(0|(e=c[i+12>>2]-(c[i+20>>2]+(e>>>0<t>>>0)|0)|0))<=0|(0|e)<0)){if(e=c[o>>2],(r=c[o+4>>2]-e>>2)>>>0<b>>>0?(_e(o,b-r|0),b=c[o+12>>2]):r>>>0<=b>>>0||(c[o+4>>2]=e+(b<<2)),f=1,!b)break t;for(a=c[i+16>>2],t=c[i+20>>2],T=c[o>>2],u=c[i+8>>2],m=c[i+12>>2],e=0;;){if(f=0,(0|t)>=(0|m)&a>>>0>=u>>>0|(0|t)>(0|m))break t;V=c[i>>2],h=k[V+a|0],f=t,f=(a=a+1|0)?f:f+1|0,c[i+16>>2]=a,t=f,c[i+20>>2]=f,r=h>>>2|0,l=0;a:{n:{A:{o:switch(0|(f=3&h)){case 0:break n;case 3:break o;default:break A}if(f=0,(r=r+e|0)>>>0>=b>>>0)break t;Sr(T+(e<<2)|0,0,4+(252&h)|0),e=r;break a}for(;;){if((0|a)==(0|u)&(0|t)==(0|m))break f;if(b=k[a+V|0],t=(a=a+1|0)?t:t+1|0,c[i+16>>2]=a,c[i+20>>2]=t,r|=b<<(l<<3|6),(0|f)==(0|(l=l+1|0)))break}}c[T+(e<<2)>>2]=r}if(!((e=e+1|0)>>>0<(b=c[o+12>>2])>>>0))break}if(r=o+16|0,m=c[o>>2],t=c[o+16>>2],(e=c[o+20>>2]-t|0)>>>0<=1048575?_e(r,262144-(e>>>2|0)|0):1048576!=(0|e)&&(c[o+20>>2]=t- -1048576),e=c[(t=o+28|0)>>2],(a=c[o+32>>2]-e>>3)>>>0<b>>>0)ye(t,b-a|0),e=c[t>>2];else if(a>>>0>b>>>0&&(c[o+32>>2]=(b<<3)+e),!b)break f;for(u=c[r>>2],a=0,t=0;;){if(l=c[(f=m+(a<<2)|0)>>2],r=t,c[(o=(a<<3)+e|0)+4>>2]=r,c[o>>2]=l,(t=(f=c[f>>2])+r|0)>>>0>262144)break f;if(!(r>>>0>=t>>>0)){if(l=0,o=7&f)for(;c[u+(r<<2)>>2]=a,r=r+1|0,(0|o)!=(0|(l=l+1|0)););if(!(f-1>>>0<=6))for(;c[(f=u+(r<<2)|0)>>2]=a,c[f+28>>2]=a,c[f+24>>2]=a,c[f+20>>2]=a,c[f+16>>2]=a,c[f+12>>2]=a,c[f+8>>2]=a,c[f+4>>2]=a,(0|t)!=(0|(r=r+8|0)););}if((0|b)==(0|(a=a+1|0)))break}p=262144==(0|t)}f=p}if(!(!f|(c[A+20>>2]?0:v))){t=0,Z=a=Z-16|0;t:if(Re(1,a+8|0,i)&&(p=(f=c[i+8>>2])-(e=c[i+16>>2])|0,u=c[a+12>>2],b=c[i+20>>2],!((0|u)==(0|(f=c[i+12>>2]-(b+(e>>>0>f>>>0)|0)|0))&p>>>0<(r=c[a+8>>2])>>>0|f>>>0<u>>>0||(f=b+u|0,f=(p=r+e|0)>>>0<e>>>0?f+1|0:f,c[i+16>>2]=p,c[i+20>>2]=f,(0|r)<=0)))){e=e+c[i>>2]|0,c[A+48>>2]=e;f:if((p=k[0|(f=(i=r-1|0)+e|0)])>>>0<=63)c[A+52>>2]=i,r=63&k[0|f];else{a:switch((p>>>6|0)-1|0){case 0:if(r>>>0<2)break t;r=r-2|0,c[A+52>>2]=r,r=k[(r=r+e|0)+1|0]<<8&16128|k[0|r];break f;case 1:if(r>>>0<3)break t;r=r-3|0,c[A+52>>2]=r,r=k[(r=r+e|0)+1|0]<<8|k[r+2|0]<<16&4128768|k[0|r];break f;default:break a}r=r-4|0,c[A+52>>2]=r,r=1073741823&(k[0|(r=r+e|0)]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24)}c[A+56>>2]=r- -1048576,t=r>>>0<267386880}if(Z=a+16|0,t)if(v)for(e=c[A+52>>2],r=c[A+56>>2],i=c[A+36>>2],t=c[A+48>>2],a=c[A+24>>2];;){t:if(!(r>>>0>1048575))for(;;){if((0|e)<=0)break t;if(e=e-1|0,c[A+52>>2]=e,r=k[e+t|0]|r<<8,c[A+56>>2]=r,!(r>>>0<1048576))break}if(f=c[a+((d=262143&r)<<2)>>2],r=(y(c[(p=i+(f<<3)|0)>>2],r>>>18|0)+d|0)-c[p+4>>2]|0,c[A+56>>2]=r,c[N+(R<<2)>>2]=f,d=1,(0|v)==(0|(R=R+1|0)))break}else d=1}(r=c[A+36>>2])&&(c[A+40>>2]=r,er(r)),(r=c[A+24>>2])&&(c[A+28>>2]=r,er(r)),(r=c[A+8>>2])&&(c[A+12>>2]=r,er(r)),Z=A- -64|0,e=d;break e;case 12:v=r,N=t,Z=f=Z+-64|0,c[f+56>>2]=0,c[f+48>>2]=0,c[f+52>>2]=0,c[f+40>>2]=0,c[f+44>>2]=0,c[f+32>>2]=0,c[f+36>>2]=0,c[f+24>>2]=0,c[f+28>>2]=0,c[f+16>>2]=0,c[f+20>>2]=0,c[f+8>>2]=0,c[f+12>>2]=0,o=f+8|0;t:{f:if(_[i+38>>1]&&Ze(1,o+12|0,i)&&!((a=(e=c[i+8>>2])-(t=c[i+16>>2])|0)>>>0<(b=c[o+12>>2])>>>6>>>0&(0|(e=c[i+12>>2]-(c[i+20>>2]+(e>>>0<t>>>0)|0)|0))<=0|(0|e)<0)){if(e=c[o>>2],(r=c[o+4>>2]-e>>2)>>>0<b>>>0?(_e(o,b-r|0),b=c[o+12>>2]):r>>>0<=b>>>0||(c[o+4>>2]=e+(b<<2)),A=1,!b)break t;for(a=c[i+16>>2],t=c[i+20>>2],T=c[o>>2],u=c[i+8>>2],m=c[i+12>>2],e=0;;){if(A=0,(0|t)>=(0|m)&a>>>0>=u>>>0|(0|t)>(0|m))break t;A=c[i>>2],h=k[A+a|0],r=t,r=(a=a+1|0)?r:r+1|0,c[i+16>>2]=a,t=r,c[i+20>>2]=r,r=h>>>2|0,l=0;a:{n:{A:{o:switch(0|(V=3&h)){case 0:break n;case 3:break o;default:break A}if(A=0,(r=r+e|0)>>>0>=b>>>0)break t;Sr(T+(e<<2)|0,0,4+(252&h)|0),e=r;break a}for(;;){if((0|a)==(0|u)&(0|t)==(0|m))break f;if(b=k[a+A|0],t=(a=a+1|0)?t:t+1|0,c[i+16>>2]=a,c[i+20>>2]=t,r|=b<<(l<<3|6),(0|V)==(0|(l=l+1|0)))break}}c[T+(e<<2)>>2]=r}if(!((e=e+1|0)>>>0<(b=c[o+12>>2])>>>0))break}if(r=o+16|0,m=c[o>>2],t=c[o+16>>2],(e=c[o+20>>2]-t|0)>>>0<=2097151?_e(r,524288-(e>>>2|0)|0):2097152!=(0|e)&&(c[o+20>>2]=t+2097152),e=c[(t=o+28|0)>>2],(a=c[o+32>>2]-e>>3)>>>0<b>>>0)ye(t,b-a|0),e=c[t>>2];else if(a>>>0>b>>>0&&(c[o+32>>2]=(b<<3)+e),!b)break f;for(u=c[r>>2],a=0,t=0;;){if(l=c[(A=m+(a<<2)|0)>>2],r=t,c[(o=(a<<3)+e|0)+4>>2]=r,c[o>>2]=l,(t=(A=c[A>>2])+r|0)>>>0>524288)break f;if(!(r>>>0>=t>>>0)){if(l=0,o=7&A)for(;c[u+(r<<2)>>2]=a,r=r+1|0,(0|o)!=(0|(l=l+1|0)););if(!(A-1>>>0<=6))for(;c[(A=u+(r<<2)|0)>>2]=a,c[A+28>>2]=a,c[A+24>>2]=a,c[A+20>>2]=a,c[A+16>>2]=a,c[A+12>>2]=a,c[A+8>>2]=a,c[A+4>>2]=a,(0|t)!=(0|(r=r+8|0)););}if((0|b)==(0|(a=a+1|0)))break}p=524288==(0|t)}A=p}if(!(!A|(c[f+20>>2]?0:v))){t=0,Z=p=Z-16|0;t:if(Re(1,p+8|0,i)&&(A=(r=c[i+8>>2])-(a=c[i+16>>2])|0,u=c[p+12>>2],b=c[i+20>>2],!((0|u)==(0|(r=c[i+12>>2]-(b+(r>>>0<a>>>0)|0)|0))&A>>>0<(e=c[p+8>>2])>>>0|r>>>0<u>>>0||(r=b+u|0,r=(A=e+a|0)>>>0<a>>>0?r+1|0:r,c[i+16>>2]=A,c[i+20>>2]=r,(0|e)<=0)))){r=a+c[i>>2]|0,c[f+48>>2]=r;f:if((A=k[0|(a=(i=e-1|0)+r|0)])>>>0<=63)c[f+52>>2]=i,r=63&k[0|a];else{a:switch((A>>>6|0)-1|0){case 0:if(e>>>0<2)break t;e=e-2|0,c[f+52>>2]=e,r=k[(r=r+e|0)+1|0]<<8&16128|k[0|r];break f;case 1:if(e>>>0<3)break t;e=e-3|0,c[f+52>>2]=e,r=k[(r=r+e|0)+1|0]<<8|k[r+2|0]<<16&4128768|k[0|r];break f;default:break a}e=e-4|0,c[f+52>>2]=e,r=1073741823&(k[0|(r=r+e|0)]|k[r+1|0]<<8|k[r+2|0]<<16|k[r+3|0]<<24)}c[f+56>>2]=r+2097152,t=r>>>0<534773760}if(Z=p+16|0,t)if(v)for(e=c[f+52>>2],r=c[f+56>>2],i=c[f+36>>2],t=c[f+48>>2],a=c[f+24>>2];;){t:if(!(r>>>0>2097151))for(;;){if((0|e)<=0)break t;if(e=e-1|0,c[f+52>>2]=e,r=k[e+t|0]|r<<8,c[f+56>>2]=r,!(r>>>0<2097152))break}if(p=c[a+((d=524287&r)<<2)>>2],r=(y(c[(A=i+(p<<3)|0)>>2],r>>>19|0)+d|0)-c[A+4>>2]|0,c[f+56>>2]=r,c[N+(R<<2)>>2]=p,d=1,(0|v)==(0|(R=R+1|0)))break}else d=1}(r=c[f+36>>2])&&(c[f+40>>2]=r,er(r)),(r=c[f+24>>2])&&(c[f+28>>2]=r,er(r)),(r=c[f+8>>2])&&(c[f+12>>2]=r,er(r)),Z=f- -64|0,e=d;break e;case 17:e=L(r,i,t);break e;case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:if(Z=e=Z+-64|0,c[e+56>>2]=0,c[e+48>>2]=0,c[e+52>>2]=0,c[e+40>>2]=0,c[e+44>>2]=0,c[e+32>>2]=0,c[e+36>>2]=0,c[e+24>>2]=0,c[e+28>>2]=0,c[e+16>>2]=0,c[e+20>>2]=0,c[e+8>>2]=0,c[e+12>>2]=0,!(!or(e+8|0,i)|(c[e+20>>2]?0:r))&&jr(e+8|0,i))if(r)for(d=c[e+52>>2],i=c[e+56>>2],f=c[e+36>>2],A=c[e+48>>2],v=c[e+24>>2];;){t:if(!(i>>>0>16383))for(;;){if((0|d)<=0)break t;if(d=d-1|0,c[e+52>>2]=d,i=k[A+d|0]|i<<8,c[e+56>>2]=i,!(i>>>0<16384))break}if(u=c[v+((a=4095&i)<<2)>>2],i=(y(c[(N=f+(u<<3)|0)>>2],i>>>12|0)+a|0)-c[N+4>>2]|0,c[e+56>>2]=i,c[(p<<2)+t>>2]=u,a=1,(0|(p=p+1|0))==(0|r))break}else a=1;(r=c[e+36>>2])&&(c[e+40>>2]=r,er(r)),(r=c[e+24>>2])&&(c[e+28>>2]=r,er(r)),(r=c[e+8>>2])&&(c[e+12>>2]=r,er(r)),Z=e- -64|0,e=a;break e;case 13:case 14:case 15:case 16:break i;default:break e}e=L(r,i,t)}a=e}return a}function I(r,e,i,t){var f,a=0,b=0,u=0,_=0,p=0,l=0,y=0,d=0,m=0,v=0,h=0;if(Z=f=Z-80|0,a=c[i+36>>2],c[f+72>>2]=c[i+32>>2],c[f+76>>2]=a,b=c[i+28>>2],c[(a=f- -64|0)>>2]=c[i+24>>2],c[a+4>>2]=b,a=c[i+20>>2],c[f+56>>2]=c[i+16>>2],c[f+60>>2]=a,a=c[i+12>>2],c[f+48>>2]=c[i+8>>2],c[f+52>>2]=a,a=c[i+4>>2],c[f+40>>2]=c[i>>2],c[f+44>>2]=a,P(r,f+40|0,f+24|0),!c[r>>2])if(n[r+15|0]<0&&er(c[r+4>>2]),1==k[f+31|0]){Z=p=Z-16|0;r:{e:switch(k[f+32|0]){case 0:a=fi(vi(48)),c[a>>2]=9864,c[f+8>>2]=0,c[f+12>>2]=0,c[f>>2]=0,c[f+4>>2]=0,c[f+16>>2]=a;break r;case 1:a=fi(vi(52)),c[a+48>>2]=0,c[a>>2]=8176,c[f+8>>2]=0,c[f+12>>2]=0,c[f>>2]=0,c[f+4>>2]=0,c[f+16>>2]=a;break r;default:break e}b=vi(32),n[b+28|0]=0,a=k[1520]|k[1521]<<8|k[1522]<<16|k[1523]<<24,n[b+24|0]=a,n[b+25|0]=a>>>8,n[b+26|0]=a>>>16,n[b+27|0]=a>>>24,a=k[1516]|k[1517]<<8|k[1518]<<16|k[1519]<<24,u=k[1512]|k[1513]<<8|k[1514]<<16|k[1515]<<24,n[b+16|0]=u,n[b+17|0]=u>>>8,n[b+18|0]=u>>>16,n[b+19|0]=u>>>24,n[b+20|0]=a,n[b+21|0]=a>>>8,n[b+22|0]=a>>>16,n[b+23|0]=a>>>24,a=k[1508]|k[1509]<<8|k[1510]<<16|k[1511]<<24,u=k[1504]|k[1505]<<8|k[1506]<<16|k[1507]<<24,n[b+8|0]=u,n[b+9|0]=u>>>8,n[b+10|0]=u>>>16,n[b+11|0]=u>>>24,n[b+12|0]=a,n[b+13|0]=a>>>8,n[b+14|0]=a>>>16,n[b+15|0]=a>>>24,a=k[1500]|k[1501]<<8|k[1502]<<16|k[1503]<<24,u=k[1496]|k[1497]<<8|k[1498]<<16|k[1499]<<24,n[0|b]=u,n[b+1|0]=u>>>8,n[b+2|0]=u>>>16,n[b+3|0]=u>>>24,n[b+4|0]=a,n[b+5|0]=a>>>8,n[b+6|0]=a>>>16,n[b+7|0]=a>>>24,c[p>>2]=-1,me(a=4|p,b,28),l=n[p+15|0],c[f>>2]=c[p>>2],u=f+4|0,(0|l)>=0?(l=c[a+4>>2],c[u>>2]=c[a>>2],c[u+4>>2]=l,c[u+8>>2]=c[a+8>>2],c[f+16>>2]=0):(me(u,c[p+4>>2],c[p+8>>2]),a=n[p+15|0],c[f+16>>2]=0,(0|a)>=0||er(c[p+4>>2])),er(b)}Z=p+16|0;r:if(a=c[f>>2]){if(c[r>>2]=a,r=r+4|0,n[f+15|0]>=0){i=c[(e=4|f)+4>>2],c[r>>2]=c[e>>2],c[r+4>>2]=i,c[r+8>>2]=c[e+8>>2];break r}me(r,c[f+4>>2],c[f+8>>2])}else{a=c[f+16>>2],c[f+16>>2]=0,c[a+44>>2]=t,Z=b=Z-32|0,c[a+32>>2]=i,c[a+40>>2]=e,c[a+4>>2]=t,P(r,i,b+16|0);e:if(!c[r>>2])if(n[r+15|0]<0&&er(c[r+4>>2]),e=k[b+23|0],(0|Zt[c[c[a>>2]+8>>2]](a))==(0|e))if(i=k[b+21|0],n[a+36|0]=i,t=k[b+22|0],n[a+37|0]=t,2==(0|i))if((0|(e=e?2:3))==(0|t)){if(A[c[a+32>>2]+38>>1]=512|e,!(A[b+26>>1]>=0)){Z=p=Z-16|0,t=vi(36),c[(e=t)+4>>2]=0,c[e+8>>2]=0,c[e+24>>2]=0,c[e+28>>2]=0,c[(e=e+16|0)>>2]=0,c[e+4>>2]=0,c[t>>2]=t+4,c[t+32>>2]=0,c[t+12>>2]=e,c[p>>2]=0,i=c[a+32>>2],Z=l=Z-16|0,e=0;i:if(t&&(c[p>>2]=i,c[l+12>>2]=0,e=0,De(1,l+12|0,i))){if(m=c[l+12>>2])for(;;){t:{if(De(1,l+8|0,c[p>>2])){if(e=vi(28),c[e+4>>2]=0,c[e+8>>2]=0,c[(i=e+16|0)>>2]=0,c[i+4>>2]=0,c[e>>2]=e+4,c[e+12>>2]=i,c[e+24>>2]=c[l+8>>2],w(p,e))break t;Ai(e+12|0,c[e+16>>2]),mi(e,c[e+4>>2]),er(e)}e=0;break i}if(Z=u=Z-16|0,c[u+8>>2]=e,e){if((i=c[t+28>>2])>>>0<s[t+32>>2])c[u+8>>2]=0,c[i>>2]=e,c[t+28>>2]=i+4;else{i=0;t:{f:{a:{if(_=c[t+24>>2],(e=(d=c[t+28>>2]-_>>2)+1|0)>>>0<1073741824){if(y=(_=c[t+32>>2]-_|0)>>>1|0,_=_>>>0>=2147483644?1073741823:e>>>0<y>>>0?y:e){if(_>>>0>=1073741824)break a;i=vi(_<<2)}if(y=c[u+8>>2],c[u+8>>2]=0,c[(e=(d<<2)+i|0)>>2]=y,_=(_<<2)+i|0,d=e+4|0,(0|(i=c[t+28>>2]))==(0|(y=c[t+24>>2])))break f;for(;h=c[(i=i-4|0)>>2],c[i>>2]=0,c[(e=e-4|0)>>2]=h,(0|i)!=(0|y););if(c[t+32>>2]=_,_=c[t+28>>2],c[t+28>>2]=d,i=c[t+24>>2],c[t+24>>2]=e,(0|i)==(0|_))break t;for(;e=c[(_=_-4|0)>>2],c[_>>2]=0,e&&(Ai(e+12|0,c[e+16>>2]),mi(e,c[e+4>>2]),er(e)),(0|i)!=(0|_););break t}mt(),o()}Zi(),o()}c[t+32>>2]=_,c[t+28>>2]=d,c[t+24>>2]=e}i&&er(i)}e=c[u+8>>2],c[u+8>>2]=0,e&&(Ai(e+12|0,c[e+16>>2]),mi(e,c[e+4>>2]),er(e))}if(Z=u+16|0,(0|m)==(0|(v=v+1|0)))break}e=w(p,t)}if(Z=l+16|0,e?(i=c[a+4>>2],e=c[i+4>>2],c[i+4>>2]=t,e&&je(e),c[r>>2]=0,c[r+4>>2]=0,c[r+8>>2]=0,c[r+12>>2]=0):(e=vi(32),n[e+26|0]=0,i=k[1549]|k[1550]<<8,n[e+24|0]=i,n[e+25|0]=i>>>8,i=k[1545]|k[1546]<<8|k[1547]<<16|k[1548]<<24,u=k[1541]|k[1542]<<8|k[1543]<<16|k[1544]<<24,n[e+16|0]=u,n[e+17|0]=u>>>8,n[e+18|0]=u>>>16,n[e+19|0]=u>>>24,n[e+20|0]=i,n[e+21|0]=i>>>8,n[e+22|0]=i>>>16,n[e+23|0]=i>>>24,i=k[1537]|k[1538]<<8|k[1539]<<16|k[1540]<<24,u=k[1533]|k[1534]<<8|k[1535]<<16|k[1536]<<24,n[e+8|0]=u,n[e+9|0]=u>>>8,n[e+10|0]=u>>>16,n[e+11|0]=u>>>24,n[e+12|0]=i,n[e+13|0]=i>>>8,n[e+14|0]=i>>>16,n[e+15|0]=i>>>24,i=k[1529]|k[1530]<<8|k[1531]<<16|k[1532]<<24,u=k[1525]|k[1526]<<8|k[1527]<<16|k[1528]<<24,n[0|e]=u,n[e+1|0]=u>>>8,n[e+2|0]=u>>>16,n[e+3|0]=u>>>24,n[e+4|0]=i,n[e+5|0]=i>>>8,n[e+6|0]=i>>>16,n[e+7|0]=i>>>24,c[r>>2]=-1,me(r+4|0,e,26),er(e),c[p+8>>2]=0,je(t)),Z=p+16|0,c[r>>2])break e;n[r+15|0]>=0||er(c[r+4>>2])}if(0|Zt[c[c[a>>2]+12>>2]](a))if(0|Zt[c[c[a>>2]+20>>2]](a))if(0|Zt[c[c[a>>2]+24>>2]](a))c[r>>2]=0,c[r+4>>2]=0,c[r+8>>2]=0,c[r+12>>2]=0;else{if(e=Pe(b,1307),c[r>>2]=-1,i=r+4|0,n[e+11|0]>=0){t=c[e+4>>2],c[i>>2]=c[e>>2],c[i+4>>2]=t,c[i+8>>2]=c[e+8>>2];break e}if(me(i,c[e>>2],c[e+4>>2]),n[e+11|0]>=0)break e;er(c[e>>2])}else{if(e=Pe(b,1552),c[r>>2]=-1,i=r+4|0,n[e+11|0]>=0){t=c[e+4>>2],c[i>>2]=c[e>>2],c[i+4>>2]=t,c[i+8>>2]=c[e+8>>2];break e}if(me(i,c[e>>2],c[e+4>>2]),n[e+11|0]>=0)break e;er(c[e>>2])}else e=vi(48),n[e+33|0]=0,n[e+32|0]=k[1374],i=k[1370]|k[1371]<<8|k[1372]<<16|k[1373]<<24,t=k[1366]|k[1367]<<8|k[1368]<<16|k[1369]<<24,n[e+24|0]=t,n[e+25|0]=t>>>8,n[e+26|0]=t>>>16,n[e+27|0]=t>>>24,n[e+28|0]=i,n[e+29|0]=i>>>8,n[e+30|0]=i>>>16,n[e+31|0]=i>>>24,i=k[1362]|k[1363]<<8|k[1364]<<16|k[1365]<<24,t=k[1358]|k[1359]<<8|k[1360]<<16|k[1361]<<24,n[e+16|0]=t,n[e+17|0]=t>>>8,n[e+18|0]=t>>>16,n[e+19|0]=t>>>24,n[e+20|0]=i,n[e+21|0]=i>>>8,n[e+22|0]=i>>>16,n[e+23|0]=i>>>24,i=k[1354]|k[1355]<<8|k[1356]<<16|k[1357]<<24,t=k[1350]|k[1351]<<8|k[1352]<<16|k[1353]<<24,n[e+8|0]=t,n[e+9|0]=t>>>8,n[e+10|0]=t>>>16,n[e+11|0]=t>>>24,n[e+12|0]=i,n[e+13|0]=i>>>8,n[e+14|0]=i>>>16,n[e+15|0]=i>>>24,i=k[1346]|k[1347]<<8|k[1348]<<16|k[1349]<<24,t=k[1342]|k[1343]<<8|k[1344]<<16|k[1345]<<24,n[0|e]=t,n[e+1|0]=t>>>8,n[e+2|0]=t>>>16,n[e+3|0]=t>>>24,n[e+4|0]=i,n[e+5|0]=i>>>8,n[e+6|0]=i>>>16,n[e+7|0]=i>>>24,c[r>>2]=-1,me(r+4|0,e,33),er(e)}else e=vi(32),n[e+26|0]=0,i=k[1400]|k[1401]<<8,n[e+24|0]=i,n[e+25|0]=i>>>8,i=k[1396]|k[1397]<<8|k[1398]<<16|k[1399]<<24,t=k[1392]|k[1393]<<8|k[1394]<<16|k[1395]<<24,n[e+16|0]=t,n[e+17|0]=t>>>8,n[e+18|0]=t>>>16,n[e+19|0]=t>>>24,n[e+20|0]=i,n[e+21|0]=i>>>8,n[e+22|0]=i>>>16,n[e+23|0]=i>>>24,i=k[1388]|k[1389]<<8|k[1390]<<16|k[1391]<<24,t=k[1384]|k[1385]<<8|k[1386]<<16|k[1387]<<24,n[e+8|0]=t,n[e+9|0]=t>>>8,n[e+10|0]=t>>>16,n[e+11|0]=t>>>24,n[e+12|0]=i,n[e+13|0]=i>>>8,n[e+14|0]=i>>>16,n[e+15|0]=i>>>24,i=k[1380]|k[1381]<<8|k[1382]<<16|k[1383]<<24,t=k[1376]|k[1377]<<8|k[1378]<<16|k[1379]<<24,n[0|e]=t,n[e+1|0]=t>>>8,n[e+2|0]=t>>>16,n[e+3|0]=t>>>24,n[e+4|0]=i,n[e+5|0]=i>>>8,n[e+6|0]=i>>>16,n[e+7|0]=i>>>24,c[r>>2]=-5,me(r+4|0,e,26),er(e);else e=vi(32),n[e+26|0]=0,i=k[1427]|k[1428]<<8,n[e+24|0]=i,n[e+25|0]=i>>>8,i=k[1423]|k[1424]<<8|k[1425]<<16|k[1426]<<24,t=k[1419]|k[1420]<<8|k[1421]<<16|k[1422]<<24,n[e+16|0]=t,n[e+17|0]=t>>>8,n[e+18|0]=t>>>16,n[e+19|0]=t>>>24,n[e+20|0]=i,n[e+21|0]=i>>>8,n[e+22|0]=i>>>16,n[e+23|0]=i>>>24,i=k[1415]|k[1416]<<8|k[1417]<<16|k[1418]<<24,t=k[1411]|k[1412]<<8|k[1413]<<16|k[1414]<<24,n[e+8|0]=t,n[e+9|0]=t>>>8,n[e+10|0]=t>>>16,n[e+11|0]=t>>>24,n[e+12|0]=i,n[e+13|0]=i>>>8,n[e+14|0]=i>>>16,n[e+15|0]=i>>>24,i=k[1407]|k[1408]<<8|k[1409]<<16|k[1410]<<24,t=k[1403]|k[1404]<<8|k[1405]<<16|k[1406]<<24,n[0|e]=t,n[e+1|0]=t>>>8,n[e+2|0]=t>>>16,n[e+3|0]=t>>>24,n[e+4|0]=i,n[e+5|0]=i>>>8,n[e+6|0]=i>>>16,n[e+7|0]=i>>>24,c[r>>2]=-5,me(r+4|0,e,26),er(e);else e=vi(64),n[e+50|0]=0,i=k[1304]|k[1305]<<8,n[e+48|0]=i,n[e+49|0]=i>>>8,i=k[1300]|k[1301]<<8|k[1302]<<16|k[1303]<<24,t=k[1296]|k[1297]<<8|k[1298]<<16|k[1299]<<24,n[e+40|0]=t,n[e+41|0]=t>>>8,n[e+42|0]=t>>>16,n[e+43|0]=t>>>24,n[e+44|0]=i,n[e+45|0]=i>>>8,n[e+46|0]=i>>>16,n[e+47|0]=i>>>24,i=k[1292]|k[1293]<<8|k[1294]<<16|k[1295]<<24,t=k[1288]|k[1289]<<8|k[1290]<<16|k[1291]<<24,n[e+32|0]=t,n[e+33|0]=t>>>8,n[e+34|0]=t>>>16,n[e+35|0]=t>>>24,n[e+36|0]=i,n[e+37|0]=i>>>8,n[e+38|0]=i>>>16,n[e+39|0]=i>>>24,i=k[1284]|k[1285]<<8|k[1286]<<16|k[1287]<<24,t=k[1280]|k[1281]<<8|k[1282]<<16|k[1283]<<24,n[e+24|0]=t,n[e+25|0]=t>>>8,n[e+26|0]=t>>>16,n[e+27|0]=t>>>24,n[e+28|0]=i,n[e+29|0]=i>>>8,n[e+30|0]=i>>>16,n[e+31|0]=i>>>24,i=k[1276]|k[1277]<<8|k[1278]<<16|k[1279]<<24,t=k[1272]|k[1273]<<8|k[1274]<<16|k[1275]<<24,n[e+16|0]=t,n[e+17|0]=t>>>8,n[e+18|0]=t>>>16,n[e+19|0]=t>>>24,n[e+20|0]=i,n[e+21|0]=i>>>8,n[e+22|0]=i>>>16,n[e+23|0]=i>>>24,i=k[1268]|k[1269]<<8|k[1270]<<16|k[1271]<<24,t=k[1264]|k[1265]<<8|k[1266]<<16|k[1267]<<24,n[e+8|0]=t,n[e+9|0]=t>>>8,n[e+10|0]=t>>>16,n[e+11|0]=t>>>24,n[e+12|0]=i,n[e+13|0]=i>>>8,n[e+14|0]=i>>>16,n[e+15|0]=i>>>24,i=k[1260]|k[1261]<<8|k[1262]<<16|k[1263]<<24,t=k[1256]|k[1257]<<8|k[1258]<<16|k[1259]<<24,n[0|e]=t,n[e+1|0]=t>>>8,n[e+2|0]=t>>>16,n[e+3|0]=t>>>24,n[e+4|0]=i,n[e+5|0]=i>>>8,n[e+6|0]=i>>>16,n[e+7|0]=i>>>24,c[r>>2]=-1,me(r+4|0,e,50),er(e);Z=b+32|0,c[r>>2]||(n[r+15|0]<0&&er(c[r+4>>2]),c[r>>2]=0,c[r+4>>2]=0,c[r+8>>2]=0,c[r+12>>2]=0),Zt[c[c[a>>2]+4>>2]](a)}r=c[f+16>>2],c[f+16>>2]=0,r&&Zt[c[c[r>>2]+4>>2]](r),n[f+15|0]>=0||er(c[f+4>>2])}else e=vi(32),n[e+20|0]=0,i=k[1446]|k[1447]<<8|k[1448]<<16|k[1449]<<24,n[e+16|0]=i,n[e+17|0]=i>>>8,n[e+18|0]=i>>>16,n[e+19|0]=i>>>24,i=k[1442]|k[1443]<<8|k[1444]<<16|k[1445]<<24,t=k[1438]|k[1439]<<8|k[1440]<<16|k[1441]<<24,n[e+8|0]=t,n[e+9|0]=t>>>8,n[e+10|0]=t>>>16,n[e+11|0]=t>>>24,n[e+12|0]=i,n[e+13|0]=i>>>8,n[e+14|0]=i>>>16,n[e+15|0]=i>>>24,i=k[1434]|k[1435]<<8|k[1436]<<16|k[1437]<<24,t=k[1430]|k[1431]<<8|k[1432]<<16|k[1433]<<24,n[0|e]=t,n[e+1|0]=t>>>8,n[e+2|0]=t>>>16,n[e+3|0]=t>>>24,n[e+4|0]=i,n[e+5|0]=i>>>8,n[e+6|0]=i>>>16,n[e+7|0]=i>>>24,c[r>>2]=-1,me(r+4|0,e,20),er(e);Z=f+80|0}function Y(r){var e,i=0,t=0,f=0,a=0,n=0,A=0,o=0,b=0,u=0,_=0,p=0,l=0;Z=e=Z-16|0;r:{e:{i:{t:{f:{a:{n:{A:{o:{if((r|=0)>>>0<=244){if(3&(i=(A=c[2941])>>>(t=(o=r>>>0<11?16:r+11&-8)>>>3|0)|0)){i=(r=(t=t+(1&~i)|0)<<3)+11804|0,f=c[r+11812>>2],(0|i)!=(0|(r=c[f+8>>2]))?(c[r+12>>2]=i,c[i+8>>2]=r):(p=11764,l=Yi(t)&A,c[p>>2]=l),r=f+8|0,i=t<<3,c[f+4>>2]=3|i,c[(i=i+f|0)+4>>2]=1|c[i+4>>2];break r}if((_=c[2943])>>>0>=o>>>0)break o;if(i){i=(r=(f=Xi(0-(r=(0-(r=2<<t)|r)&i<<t)&r))<<3)+11804|0,a=c[r+11812>>2],(0|i)!=(0|(r=c[a+8>>2]))?(c[r+12>>2]=i,c[i+8>>2]=r):(A=Yi(f)&A,c[2941]=A),c[a+4>>2]=3|o,f=(r=f<<3)-o|0,c[(t=a+o|0)+4>>2]=1|f,c[r+a>>2]=f,_&&(i=11804+(-8&_)|0,n=c[2946],(r=1<<(_>>>3))&A?r=c[i+8>>2]:(c[2941]=r|A,r=i),c[i+8>>2]=n,c[r+12>>2]=n,c[n+12>>2]=i,c[n+8>>2]=r),r=a+8|0,c[2946]=t,c[2943]=f;break r}if(!(u=c[2942]))break o;for(t=c[12068+(Xi(0-u&u)<<2)>>2],n=(-8&c[t+4>>2])-o|0,i=t;(r=c[i+16>>2])||(r=c[i+20>>2]);)n=(f=(i=(-8&c[r+4>>2])-o|0)>>>0<n>>>0)?i:n,t=f?r:t,i=r;if(b=c[t+24>>2],(0|(f=c[t+12>>2]))!=(0|t)){r=c[t+8>>2],c[r+12>>2]=f,c[f+8>>2]=r;break e}if(!(r=c[(i=t+20|0)>>2])){if(!(r=c[t+16>>2]))break A;i=t+16|0}for(;a=i,f=r,(r=c[(i=r+20|0)>>2])||(i=f+16|0,r=c[f+16>>2]););c[a>>2]=0;break e}if(o=-1,!(r>>>0>4294967231)&&(o=-8&(r=r+11|0),u=c[2942])){n=0-o|0,A=0,o>>>0<256||(A=31,o>>>0>16777215||(A=62+((o>>>38-(r=v(r>>>8|0))&1)-(r<<1)|0)|0));b:{u:{if(i=c[12068+(A<<2)>>2])for(r=0,t=o<<(31!=(0|A)?25-(A>>>1|0)|0:0);;){if(!((a=(-8&c[i+4>>2])-o|0)>>>0>=n>>>0||(f=i,n=a,a))){n=0,r=i;break u}if(a=c[i+20>>2],i=c[16+((t>>>29&4)+i|0)>>2],r=a?(0|a)==(0|i)?r:a:r,t<<=1,!i)break}else r=0;if(!(r|f)){if(f=0,!(r=(0-(r=2<<A)|r)&u))break o;r=c[12068+(Xi(r&0-r)<<2)>>2]}if(!r)break b}for(;n=(t=(i=(-8&c[r+4>>2])-o|0)>>>0<n>>>0)?i:n,f=t?r:f,r=(i=c[r+16>>2])||c[r+20>>2];);}if(!(!f|c[2943]-o>>>0<=n>>>0)){if(A=c[f+24>>2],(0|f)!=(0|(t=c[f+12>>2]))){r=c[f+8>>2],c[r+12>>2]=t,c[t+8>>2]=r;break i}if(!(r=c[(i=f+20|0)>>2])){if(!(r=c[f+16>>2]))break n;i=f+16|0}for(;a=i,t=r,(r=c[(i=r+20|0)>>2])||(i=t+16|0,r=c[t+16>>2]););c[a>>2]=0;break i}}}if((r=c[2943])>>>0>=o>>>0){f=c[2946],(i=r-o|0)>>>0>=16?(c[(t=f+o|0)+4>>2]=1|i,c[r+f>>2]=i,c[f+4>>2]=3|o):(c[f+4>>2]=3|r,c[(r=r+f|0)+4>>2]=1|c[r+4>>2],t=0,i=0),c[2943]=i,c[2946]=t,r=f+8|0;break r}if((b=c[2944])>>>0>o>>>0){i=b-o|0,c[2944]=i,r=(t=c[2947])+o|0,c[2947]=r,c[r+4>>2]=1|i,c[t+4>>2]=3|o,r=t+8|0;break r}if(r=0,u=o+47|0,c[3059]?t=c[3061]:(c[3062]=-1,c[3063]=-1,c[3060]=4096,c[3061]=4096,c[3059]=e+12&-16^1431655768,c[3064]=0,c[3052]=0,t=4096),(i=(a=u+t|0)&(n=0-t|0))>>>0<=o>>>0)break r;if((f=c[3051])&&f>>>0<(A=(t=c[3049])+i|0)>>>0|t>>>0>=A>>>0)break r;o:{if(!(4&k[12208])){b:{u:{c:{k:{if(f=c[2947])for(r=12212;;){if((t=c[r>>2])>>>0<=f>>>0&f>>>0<t+c[r+4>>2]>>>0)break k;if(!(r=c[r+8>>2]))break}if(-1==(0|(t=ni(0))))break b;if(A=i,(r=(f=c[3060])-1|0)&t&&(A=(i-t|0)+(r+t&0-f)|0),A>>>0<=o>>>0)break b;if((f=c[3051])&&f>>>0<(n=(r=c[3049])+A|0)>>>0|r>>>0>=n>>>0)break b;if((0|t)!=(0|(r=ni(A))))break c;break o}if((0|(t=ni(A=n&a-b)))==(c[r>>2]+c[r+4>>2]|0))break u;r=t}if(-1==(0|r))break b;if(o+48>>>0<=A>>>0){t=r;break o}if(-1==(0|ni(t=(t=c[3061])+(u-A|0)&0-t)))break b;A=t+A|0,t=r;break o}if(-1!=(0|t))break o}c[3052]=4|c[3052]}if(-1==(0|(t=ni(i)))|-1==(0|(r=ni(0)))|r>>>0<=t>>>0)break t;if((A=r-t|0)>>>0<=o+40>>>0)break t}r=c[3049]+A|0,c[3049]=r,r>>>0>s[3050]&&(c[3050]=r);o:{if(a=c[2947]){for(r=12212;;){if(((f=c[r>>2])+(i=c[r+4>>2])|0)==(0|t))break o;if(!(r=c[r+8>>2]))break}break a}for((r=c[2945])>>>0<=t>>>0&&r||(c[2945]=t),r=0,c[3054]=A,c[3053]=t,c[2949]=-1,c[2950]=c[3059],c[3056]=0;i=(f=r<<3)+11804|0,c[f+11812>>2]=i,c[f+11816>>2]=i,32!=(0|(r=r+1|0)););i=(f=A-40|0)-(r=t+8&7?-8-t&7:0)|0,c[2944]=i,r=r+t|0,c[2947]=r,c[r+4>>2]=1|i,c[4+(t+f|0)>>2]=40,c[2948]=c[3063];break f}if(8&k[r+12|0]|f>>>0>a>>>0|t>>>0<=a>>>0)break a;c[r+4>>2]=i+A,t=(r=a+8&7?-8-a&7:0)+a|0,c[2947]=t,r=(i=c[2944]+A|0)-r|0,c[2944]=r,c[t+4>>2]=1|r,c[4+(i+a|0)>>2]=40,c[2948]=c[3063];break f}f=0;break e}t=0;break i}s[2945]>t>>>0&&(c[2945]=t),i=t+A|0,r=12212;a:{n:{A:{o:{b:{u:{for(;;){if((0|i)!=c[r>>2]){if(r=c[r+8>>2])continue;break u}break}if(!(8&k[r+12|0]))break b}for(r=12212;;){if((i=c[r>>2])>>>0<=a>>>0&&(n=i+c[r+4>>2]|0)>>>0>a>>>0)break o;r=c[r+8>>2]}}if(c[r>>2]=t,c[r+4>>2]=c[r+4>>2]+A,c[(u=(t+8&7?-8-t&7:0)+t|0)+4>>2]=3|o,r=(A=i+(i+8&7?-8-i&7:0)|0)-(b=o+u|0)|0,(0|a)==(0|A)){c[2947]=b,r=c[2944]+r|0,c[2944]=r,c[b+4>>2]=1|r;break n}if(c[2946]==(0|A)){c[2946]=b,r=c[2943]+r|0,c[2943]=r,c[b+4>>2]=1|r,c[r+b>>2]=r;break n}if(1==(3&(n=c[A+4>>2]))){a=-8&n;b:if(n>>>0<=255){if(f=c[A+8>>2],i=n>>>3|0,(0|(t=c[A+12>>2]))==(0|f)){p=11764,l=c[2941]&Yi(i),c[p>>2]=l;break b}c[f+12>>2]=t,c[t+8>>2]=f}else{if(o=c[A+24>>2],(0|A)==(0|(t=c[A+12>>2])))if((i=c[(n=A+20|0)>>2])||(i=c[(n=A+16|0)>>2])){for(;f=n,(i=c[(n=(t=i)+20|0)>>2])||(n=t+16|0,i=c[t+16>>2]););c[f>>2]=0}else t=0;else i=c[A+8>>2],c[i+12>>2]=t,c[t+8>>2]=i;if(o){f=c[A+28>>2];u:{if(c[(i=12068+(f<<2)|0)>>2]==(0|A)){if(c[i>>2]=t,t)break u;p=11768,l=c[2942]&Yi(f),c[p>>2]=l;break b}if(c[o+(c[o+16>>2]==(0|A)?16:20)>>2]=t,!t)break b}c[t+24>>2]=o,(i=c[A+16>>2])&&(c[t+16>>2]=i,c[i+24>>2]=t),(i=c[A+20>>2])&&(c[t+20>>2]=i,c[i+24>>2]=t)}}n=c[(A=a+A|0)+4>>2],r=r+a|0}if(c[A+4>>2]=-2&n,c[b+4>>2]=1|r,c[r+b>>2]=r,r>>>0<=255){i=11804+(-8&r)|0,(t=c[2941])&(r=1<<(r>>>3))?r=c[i+8>>2]:(c[2941]=r|t,r=i),c[i+8>>2]=b,c[r+12>>2]=b,c[b+12>>2]=i,c[b+8>>2]=r;break n}if(n=31,r>>>0<=16777215&&(n=62+((r>>>38-(i=v(r>>>8|0))&1)-(i<<1)|0)|0),c[b+28>>2]=n,c[b+16>>2]=0,c[b+20>>2]=0,i=12068+(n<<2)|0,(f=c[2942])&(t=1<<n)){for(n=r<<(31!=(0|n)?25-(n>>>1|0)|0:0),t=c[i>>2];;){if(i=t,(-8&c[t+4>>2])==(0|r))break A;if(t=n>>>29|0,n<<=1,!(t=c[(f=(4&t)+i|0)+16>>2]))break}c[f+16>>2]=b}else c[2942]=t|f,c[i>>2]=b;c[b+24>>2]=i,c[b+12>>2]=b,c[b+8>>2]=b;break n}for(i=(f=A-40|0)-(r=t+8&7?-8-t&7:0)|0,c[2944]=i,r=r+t|0,c[2947]=r,c[r+4>>2]=1|i,c[4+(t+f|0)>>2]=40,c[2948]=c[3063],c[(f=(r=(n+(n-39&7?39-n&7:0)|0)-47|0)>>>0<a+16>>>0?a:r)+4>>2]=27,r=c[3056],c[f+16>>2]=c[3055],c[f+20>>2]=r,r=c[3054],c[f+8>>2]=c[3053],c[f+12>>2]=r,c[3055]=f+8,c[3054]=A,c[3053]=t,c[3056]=0,r=f+24|0;c[r+4>>2]=7,i=r+8|0,r=r+4|0,i>>>0<n>>>0;);if((0|f)==(0|a))break f;if(c[f+4>>2]=-2&c[f+4>>2],n=f-a|0,c[a+4>>2]=1|n,c[f>>2]=n,n>>>0<=255){i=11804+(-8&n)|0,(t=c[2941])&(r=1<<(n>>>3))?r=c[i+8>>2]:(c[2941]=r|t,r=i),c[i+8>>2]=a,c[r+12>>2]=a,c[a+12>>2]=i,c[a+8>>2]=r;break f}if(r=31,n>>>0<=16777215&&(r=62+((n>>>38-(r=v(n>>>8|0))&1)-(r<<1)|0)|0),c[a+28>>2]=r,c[a+16>>2]=0,c[a+20>>2]=0,i=12068+(r<<2)|0,(f=c[2942])&(t=1<<r)){for(r=n<<(31!=(0|r)?25-(r>>>1|0)|0:0),f=c[i>>2];;){if((0|n)==(-8&c[(i=f)+4>>2]))break a;if(t=r>>>29|0,r<<=1,!(f=c[(t=(4&t)+i|0)+16>>2]))break}c[t+16>>2]=a}else c[2942]=t|f,c[i>>2]=a;c[a+24>>2]=i,c[a+12>>2]=a,c[a+8>>2]=a;break f}r=c[i+8>>2],c[r+12>>2]=b,c[i+8>>2]=b,c[b+24>>2]=0,c[b+12>>2]=i,c[b+8>>2]=r}r=u+8|0;break r}r=c[i+8>>2],c[r+12>>2]=a,c[i+8>>2]=a,c[a+24>>2]=0,c[a+12>>2]=i,c[a+8>>2]=r}if(!((r=c[2944])>>>0<=o>>>0)){i=r-o|0,c[2944]=i,r=(t=c[2947])+o|0,c[2947]=r,c[r+4>>2]=1|i,c[t+4>>2]=3|o,r=t+8|0;break r}}c[2940]=48,r=0;break r}i:if(A){i=c[f+28>>2];t:{if(c[(r=12068+(i<<2)|0)>>2]==(0|f)){if(c[r>>2]=t,t)break t;u=Yi(i)&u,c[2942]=u;break i}if(c[A+(c[A+16>>2]==(0|f)?16:20)>>2]=t,!t)break i}c[t+24>>2]=A,(r=c[f+16>>2])&&(c[t+16>>2]=r,c[r+24>>2]=t),(r=c[f+20>>2])&&(c[t+20>>2]=r,c[r+24>>2]=t)}i:if(n>>>0<=15)r=n+o|0,c[f+4>>2]=3|r,c[(r=r+f|0)+4>>2]=1|c[r+4>>2];else if(c[f+4>>2]=3|o,c[(a=f+o|0)+4>>2]=1|n,c[a+n>>2]=n,n>>>0<=255)i=11804+(-8&n)|0,(t=c[2941])&(r=1<<(n>>>3))?r=c[i+8>>2]:(c[2941]=r|t,r=i),c[i+8>>2]=a,c[r+12>>2]=a,c[a+12>>2]=i,c[a+8>>2]=r;else{r=31,n>>>0<=16777215&&(r=62+((n>>>38-(r=v(n>>>8|0))&1)-(r<<1)|0)|0),c[a+28>>2]=r,c[a+16>>2]=0,c[a+20>>2]=0,i=12068+(r<<2)|0;t:{if((t=1<<r)&u){for(r=n<<(31!=(0|r)?25-(r>>>1|0)|0:0),o=c[i>>2];;){if((-8&c[(i=o)+4>>2])==(0|n))break t;if(t=r>>>29|0,r<<=1,!(o=c[(t=(4&t)+i|0)+16>>2]))break}c[t+16>>2]=a}else c[2942]=t|u,c[i>>2]=a;c[a+24>>2]=i,c[a+12>>2]=a,c[a+8>>2]=a;break i}r=c[i+8>>2],c[r+12>>2]=a,c[i+8>>2]=a,c[a+24>>2]=0,c[a+12>>2]=i,c[a+8>>2]=r}r=f+8|0;break r}e:if(b){i=c[t+28>>2];i:{if(c[(r=12068+(i<<2)|0)>>2]==(0|t)){if(c[r>>2]=f,f)break i;p=11768,l=Yi(i)&u,c[p>>2]=l;break e}if(c[b+(c[b+16>>2]==(0|t)?16:20)>>2]=f,!f)break e}c[f+24>>2]=b,(r=c[t+16>>2])&&(c[f+16>>2]=r,c[r+24>>2]=f),(r=c[t+20>>2])&&(c[f+20>>2]=r,c[r+24>>2]=f)}n>>>0<=15?(r=n+o|0,c[t+4>>2]=3|r,c[(r=r+t|0)+4>>2]=1|c[r+4>>2]):(c[t+4>>2]=3|o,c[(f=t+o|0)+4>>2]=1|n,c[f+n>>2]=n,_&&(i=11804+(-8&_)|0,a=c[2946],(r=1<<(_>>>3))&A?r=c[i+8>>2]:(c[2941]=r|A,r=i),c[i+8>>2]=a,c[r+12>>2]=a,c[a+12>>2]=i,c[a+8>>2]=r),c[2946]=f,c[2943]=n),r=t+8|0}return Z=e+16|0,0|r}function w(r,e){var i,t=0,f=0,a=0,A=0,b=0,u=0,_=0,s=0,p=0,l=0,d=0,m=0,v=0,h=0,R=0,N=0,T=0,V=0,U=0,W=0,D=0,G=0,E=0;Z=i=Z-32|0,m=vi(12),c[m+8>>2]=0,c[m+4>>2]=e,c[m>>2]=0,e=N=m+12|0;r:{e:{i:{for(;;){if(U=c[(e=e-12|0)+8>>2],s=c[e+4>>2],T=c[e>>2]){if((0|U)>1e3)break r;c[i+24>>2]=0,c[i+16>>2]=0,c[i+20>>2]=0,f=1,t=c[r>>2],a=c[t+8>>2];t:if(!((0|(u=c[t+12>>2]))<=(0|(b=c[t+20>>2]))&(A=c[t+16>>2])>>>0>=a>>>0|(0|b)>(0|u))){if(a=k[A+c[t>>2]|0],u=t,t=b,t=(A=A+1|0)?t:t+1|0,c[u+16>>2]=A,c[u+20>>2]=t,Tr(i+16|0,a),a){if(t=c[r>>2],d=di(i+16|0),v=c[t+8>>2],b=c[t+12>>2],u=c[t+20>>2],(0|b)<=(0|(u=(p=(A=c[t+16>>2])+a|0)>>>0<a>>>0?u+1|0:u))&p>>>0>v>>>0|(0|b)<(0|u))break t;hr(d,A+c[t>>2]|0,a),f=c[t+20>>2],f=(A=a)>>>0>(a=a+c[t+16>>2]|0)>>>0?f+1|0:f,c[t+16>>2]=a,c[t+20>>2]=f}s=vi(24),c[(t=s)+4>>2]=0,c[t+8>>2]=0,c[(t=t+16|0)>>2]=0,c[t+4>>2]=0,c[s>>2]=s+4,c[s+12>>2]=t,Z=a=Z-32|0;f:if((0|(V=te(u=T+12|0,t=i+16|0)))!=(0|(_=T+16|0)))s&&(Ai(s+12|0,c[s+16>>2]),mi(s,c[s+4>>2]),er(s));else{c[a+16>>2]=t;a:{n:{A:if(f=c[u+4>>2]){for(d=(b=(A=k[t+11|0])<<24>>24<0)?c[t>>2]:t,b=b?c[t+4>>2]:A;;){o:{b:{u:{c:{k:if(p=(v=(f=(A=(f=k[(t=f)+27|0])<<24>>24<0)?c[t+20>>2]:f)>>>0<b>>>0)?f:b){if(!(h=Ye(d,A=A?c[t+16>>2]:t+16|0,p))){if(f>>>0>b>>>0)break k;break c}if((0|h)>=0)break c}else if(f>>>0<=b>>>0)break u;if(A=t,f=c[t>>2])continue;break A}if(f=Ye(A,d,p))break b}if(v)break o;break n}if((0|f)>=0)break n}if(!(f=c[t+4>>2]))break}A=t+4|0}else t=A=u+4|0;d=(f=vi(32))+16|0,b=c[a+16>>2],n[b+11|0]>=0?(v=c[b+4>>2],c[d>>2]=c[b>>2],c[d+4>>2]=v,c[d+8>>2]=c[b+8>>2]):me(d,c[b>>2],c[b+4>>2]),c[f+8>>2]=t,c[f>>2]=0,c[f+4>>2]=0,c[f+28>>2]=0,c[A>>2]=f,t=f,(b=c[c[u>>2]>>2])&&(c[u>>2]=b,t=c[A>>2]),Ur(c[u+4>>2],t),c[u+8>>2]=c[u+8>>2]+1,t=1;break a}f=t,t=0}if(n[a+28|0]=t,c[a+24>>2]=f,f=c[a+24>>2],t=c[f+28>>2],c[f+28>>2]=s,!t)break f;Ai(t+12|0,c[t+16>>2]),mi(t,c[t+4>>2]),er(t)}Z=a+32|0,f=(0|_)!=(0|V)}if(n[i+27|0]<0&&er(c[i+16>>2]),f)break r}if(!s)break r;if(c[i+16>>2]=0,!De(1,i+16|0,c[r>>2]))break r;if(h=0,W=c[i+16>>2])for(;;){f=0,Z=_=Z-32|0,c[_+24>>2]=0,c[_+16>>2]=0,c[_+20>>2]=0,t=c[r>>2],A=c[t+8>>2];t:{f:{a:if(!((0|(u=c[t+12>>2]))<=(0|(b=c[t+20>>2]))&(a=c[t+16>>2])>>>0>=A>>>0|(0|b)>(0|u))){if(A=k[a+c[t>>2]|0],u=t,t=b,t=(a=a+1|0)?t:t+1|0,c[u+16>>2]=a,c[u+20>>2]=t,Tr(_+16|0,A),A){if(a=c[r>>2],d=di(_+16|0),v=c[a+8>>2],b=c[a+12>>2],t=c[a+20>>2],(p=(u=c[a+16>>2])+A|0)>>>0>v>>>0&(0|(t=p>>>0<A>>>0?t+1|0:t))>=(0|b)|(0|t)>(0|b))break a;hr(d,u+c[a>>2]|0,A),t=c[a+20>>2],t=(b=A)>>>0>(A=A+c[a+16>>2]|0)>>>0?t+1|0:t,c[a+16>>2]=A,c[a+20>>2]=t}if(c[_+12>>2]=0,De(1,_+12|0,c[r>>2])&&(A=c[_+12>>2])&&(a=c[r>>2],b=(t=c[a+8>>2])-(u=c[a+16>>2])|0,!((0|(t=c[a+12>>2]-(c[a+20>>2]+(t>>>0<u>>>0)|0)|0))<=0&A>>>0>b>>>0|(0|t)<0))){if(c[_+8>>2]=0,c[_>>2]=0,c[_+4>>2]=0,(0|A)<0)break f;f=vi(A),c[_>>2]=f,t=f+A|0,c[_+8>>2]=t,l=Sr(f,0,A),c[_+4>>2]=t,D=u=c[a+12>>2],v=c[a+8>>2],t=c[a+20>>2],V=b=A+(p=c[a+16>>2])|0,d=t=b>>>0<A>>>0?t+1|0:t;n:{if((0|t)<=(0|u)&b>>>0<=v>>>0|(0|t)<(0|u)){if(hr(l,c[a>>2]+p|0,A),f=c[a+20>>2],f=(t=A+c[a+16>>2]|0)>>>0<A>>>0?f+1|0:f,c[a+16>>2]=t,c[a+20>>2]=f,Z=u=Z-48|0,(0|(a=te(s,_+16|0)))!=(s+4|0)){if(t=c[a+4>>2])for(;f=t,t=c[t>>2];);else for(t=a;f=c[t+8>>2],A=c[f>>2]!=(0|t),t=f,A;);(0|a)==c[s>>2]&&(c[s>>2]=f),c[s+8>>2]=c[s+8>>2]-1,A=c[s+4>>2];A:{o:{if(b=a,a=c[(f=a)>>2]){if(!(t=c[b+4>>2]))break o;for(;f=t,t=c[t>>2];);}if(!(a=c[f+4>>2])){a=0,p=1;break A}}c[a+8>>2]=c[f+8>>2],p=0}l=c[f+8>>2];A:if((0|f)!=(0|(t=c[l>>2])))c[l+4>>2]=a;else{if(c[l>>2]=a,(0|f)==(0|A)){t=0,A=a;break A}t=c[l+4>>2]}R=!k[f+12|0],(0|f)!=(0|b)&&(l=c[b+8>>2],c[f+8>>2]=l,c[l+(((0|b)!=c[c[b+8>>2]>>2])<<2)>>2]=f,l=c[b>>2],c[f>>2]=l,c[l+8>>2]=f,l=c[b+4>>2],c[f+4>>2]=l,l&&(c[l+8>>2]=f),n[f+12|0]=k[b+12|0],A=(0|A)==(0|b)?f:A);A:if(!(R|!A)){if(p)for(;;){a=k[t+12|0];o:{if(f=c[t+8>>2],c[f>>2]!=(0|t)){a||(n[t+12|0]=1,n[f+12|0]=0,a=c[f+4>>2],p=c[a>>2],c[f+4>>2]=p,p&&(c[p+8>>2]=f),c[a+8>>2]=c[f+8>>2],p=c[f+8>>2],c[(((0|f)!=c[p>>2])<<2)+p>>2]=a,c[a>>2]=f,c[f+8>>2]=a,f=t,A=(0|(t=c[t>>2]))==(0|A)?f:A,t=c[t+4>>2]);b:{u:{f=c[t>>2];c:{if(k[f+12|0]||!f){if(a=c[t+4>>2],!k[a+12|0]&&a)break c;if(n[t+12|0]=0,(0|A)!=(0|(t=c[t+8>>2]))){if(k[t+12|0])break o}else t=A;n[t+12|0]=1;break A}if(!(a=c[t+4>>2]))break u}if(!k[a+12|0]){f=t;break b}}n[f+12|0]=1,n[t+12|0]=0,a=c[f+4>>2],c[t>>2]=a,a&&(c[a+8>>2]=t),c[f+8>>2]=c[t+8>>2],a=c[t+8>>2],c[((c[a>>2]!=(0|t))<<2)+a>>2]=f,c[f+4>>2]=t,c[t+8>>2]=f,a=t}t=c[f+8>>2],n[f+12|0]=k[t+12|0],n[t+12|0]=1,n[a+12|0]=1,f=c[t+4>>2],a=c[f>>2],c[t+4>>2]=a,a&&(c[a+8>>2]=t),c[f+8>>2]=c[t+8>>2],a=c[t+8>>2],c[(((0|t)!=c[a>>2])<<2)+a>>2]=f,c[f>>2]=t,c[t+8>>2]=f;break A}a||(n[t+12|0]=1,n[f+12|0]=0,a=c[t+4>>2],c[f>>2]=a,a&&(c[a+8>>2]=f),c[t+8>>2]=c[f+8>>2],a=c[f+8>>2],c[(((0|f)!=c[a>>2])<<2)+a>>2]=t,c[t+4>>2]=f,c[f+8>>2]=t,A=(0|f)==(0|A)?t:A,t=c[f>>2]);b:if(!(a=c[t>>2])|k[a+12|0]){if(f=c[t+4>>2],k[f+12|0]||!f){if(n[t+12|0]=0,(0|(t=c[t+8>>2]))!=(0|A)&&k[t+12|0])break o;n[t+12|0]=1;break A}if(a){if(!k[a+12|0]){f=t;break b}f=c[t+4>>2]}n[f+12|0]=1,n[t+12|0]=0,a=c[f>>2],c[t+4>>2]=a,a&&(c[a+8>>2]=t),c[f+8>>2]=c[t+8>>2],a=c[t+8>>2],c[((c[a>>2]!=(0|t))<<2)+a>>2]=f,c[f>>2]=t,c[t+8>>2]=f,a=t}else f=t;t=c[f+8>>2],n[f+12|0]=k[t+12|0],n[t+12|0]=1,n[a+12|0]=1,f=c[t>>2],a=c[f+4>>2],c[t>>2]=a,a&&(c[a+8>>2]=t),c[f+8>>2]=c[t+8>>2],a=c[t+8>>2],c[(((0|t)!=c[a>>2])<<2)+a>>2]=f,c[f+4>>2]=t,c[t+8>>2]=f;break A}f=t,t=c[t+8>>2],t=c[(((0|f)==c[t>>2])<<2)+t>>2]}n[a+12|0]=1}(t=c[b+28>>2])&&(c[b+32>>2]=t,er(t)),n[b+27|0]<0&&er(c[b+16>>2]),er(b)}c[u+8>>2]=0,c[u>>2]=0,c[u+4>>2]=0,A=(t=c[_+4>>2])-(f=c[_>>2])|0,a=0;A:{o:{if((0|t)!=(0|f)){if((0|A)<0)break o;b=(t=Sr(a=vi(A),0,A))+A|0,c[u+8>>2]=b,c[u+4>>2]=b,c[u>>2]=t,t=f}hr(a,t,A),n[_+27|0]>=0?(c[u+24>>2]=c[_+24>>2],t=c[_+20>>2],c[u+16>>2]=c[_+16>>2],c[u+20>>2]=t):me(u+16|0,c[_+16>>2],c[_+20>>2]),Me(u+28|0,u),t=A=u+16|0;b:{u:{c:if(f=c[s+4>>2]){for(p=(b=(a=k[t+11|0])<<24>>24<0)?c[t>>2]:t,b=b?c[t+4>>2]:a;;){k:{_:{s:{p:{l:if(R=(l=(f=(a=(f=k[(t=f)+27|0])<<24>>24<0)?c[t+20>>2]:f)>>>0<b>>>0)?f:b){if(!(G=Ye(p,a=a?c[t+16>>2]:t+16|0,R))){if(f>>>0>b>>>0)break l;break p}if((0|G)>=0)break p}else if(f>>>0<=b>>>0)break s;if(a=t,f=c[t>>2])continue;break c}if(f=Ye(a,p,R))break _}if(l)break k;break u}if((0|f)>=0)break u}if(!(f=c[t+4>>2]))break}a=t+4|0}else t=a=s+4|0;f=vi(40),c[f+24>>2]=c[A+8>>2],b=c[A+4>>2],c[f+16>>2]=c[A>>2],c[f+20>>2]=b,c[A>>2]=0,c[A+4>>2]=0,c[A+8>>2]=0,Me(f+28|0,A+12|0),c[f+8>>2]=t,c[f>>2]=0,c[f+4>>2]=0,c[a>>2]=f,t=f,(A=c[c[s>>2]>>2])&&(c[s>>2]=A,t=c[a>>2]),Ur(c[s+4>>2],t),c[s+8>>2]=c[s+8>>2]+1,t=1;break b}f=t,t=0}n[u+44|0]=t,c[u+40>>2]=f,(t=c[u+28>>2])&&(c[u+32>>2]=t,er(t)),n[u+27|0]<0&&er(c[u+16>>2]),(t=c[u>>2])&&(c[u+4>>2]=t,er(t)),Z=u+48|0;break A}mt(),o()}if(!(f=c[_>>2]))break n}c[_+4>>2]=f,er(f)}f=(0|d)<=(0|D)&v>>>0>=V>>>0|(0|d)<(0|D)}}n[_+27|0]<0&&er(c[_+16>>2]),Z=_+32|0;break t}mt(),o()}if(!f)break r;if((0|W)==(0|(h=h+1|0)))break}if(c[i+12>>2]=0,!De(1,i+12|0,c[r>>2]))break r;if(t=c[r>>2],(u=(a=c[t+8>>2])-(A=c[t+16>>2])|0)>>>0<(f=c[i+12>>2])>>>0&(0|(t=c[t+12>>2]-(c[t+20>>2]+(a>>>0<A>>>0)|0)|0))<=0|(0|t)<0)break r;if(f)for(h=0,u=!!(0|T)+U|0;;){if(e>>>0<N>>>0)c[e+8>>2]=u,c[e+4>>2]=0,c[e>>2]=s,e=e+12|0,f=c[i+12>>2];else{if((e=(b=(0|(t=e-m|0))/12|0)+1|0)>>>0>=357913942)break i;if(A=(a=(N-m|0)/12|0)<<1,a=a>>>0>=178956970?357913941:e>>>0<A>>>0?A:e){if(a>>>0>=357913942)break e;A=vi(y(a,12))}else A=0;e=A+y(b,12)|0,c[e+8>>2]=u,c[e+4>>2]=0,c[e>>2]=s,t=gr(e+y((0|t)/-12|0,12)|0,m,t),N=A+y(a,12)|0,e=e+12|0,m&&er(m),m=t}if(!((h=h+1|0)>>>0<f>>>0))break}if((0|e)==(0|m))break}E=1;break r}mt(),o()}Zi(),o()}return m&&er(m),Z=i+32|0,E}function j(r,e){var i,t=0,f=0,a=0,n=0,A=0,b=0,u=0,k=0,_=0,s=0,p=0,l=0,d=0,m=0,v=0,h=0,R=0,N=0,T=0;Z=i=Z-32|0,A=c[c[r+4>>2]+44>>2],t=c[r+8>>2],f=c[t>>2],t=c[t+4>>2],c[i+24>>2]=0,c[i+16>>2]=0,c[i+20>>2]=0,f=(t-f>>2>>>0)/3|0,t=c[A+96>>2];r:{if(f>>>0>(n=(c[A+100>>2]-t|0)/12|0)>>>0){if((a=f-n|0)>>>0<=((b=c[A+104>>2])-(t=c[A+100>>2])|0)/12>>>0){if(a){if(f=t,b=1+(((n=y(a,12)-12|0)>>>0)/12|0)&3)for(;_=c[i+20>>2],c[f>>2]=c[i+16>>2],c[f+4>>2]=_,c[f+8>>2]=c[i+24>>2],f=f+12|0,(0|b)!=(0|(u=u+1|0)););if(t=y(a,12)+t|0,!(n>>>0<36))for(;n=c[i+20>>2],c[f>>2]=c[i+16>>2],c[f+4>>2]=n,c[f+8>>2]=c[i+24>>2],c[f+20>>2]=c[i+24>>2],n=c[i+20>>2],c[f+12>>2]=c[i+16>>2],c[f+16>>2]=n,c[f+32>>2]=c[i+24>>2],n=c[i+20>>2],c[f+24>>2]=c[i+16>>2],c[f+28>>2]=n,n=c[i+20>>2],c[f+36>>2]=c[i+16>>2],c[f+40>>2]=n,c[f+44>>2]=c[i+24>>2],(0|(f=f+48|0))!=(0|t););}c[A+100>>2]=t;break r}e:{if((f=(p=(t-(n=c[A+96>>2])|0)/12|0)+a|0)>>>0<357913942){if(b=(n=(b-n|0)/12|0)<<1,b=n>>>0>=178956970?357913941:f>>>0<b>>>0?b:f){if(b>>>0>=357913942)break e;_=vi(y(b,12))}if(f=n=y(p,12)+_|0,m=1+(((p=(a=y(a,12))-12|0)>>>0)/12|0)&3)for(;v=c[i+20>>2],c[f>>2]=c[i+16>>2],c[f+4>>2]=v,c[f+8>>2]=c[i+24>>2],f=f+12|0,(0|m)!=(0|(u=u+1|0)););if(a=a+n|0,p>>>0>=36)for(;u=c[i+20>>2],c[f>>2]=c[i+16>>2],c[f+4>>2]=u,c[f+8>>2]=c[i+24>>2],c[f+20>>2]=c[i+24>>2],u=c[i+20>>2],c[f+12>>2]=c[i+16>>2],c[f+16>>2]=u,c[f+32>>2]=c[i+24>>2],u=c[i+20>>2],c[f+24>>2]=c[i+16>>2],c[f+28>>2]=u,u=c[i+20>>2],c[f+36>>2]=c[i+16>>2],c[f+40>>2]=u,c[f+44>>2]=c[i+24>>2],(0|a)!=(0|(f=f+48|0)););if((0|(u=c[A+96>>2]))!=(0|t)){for(;p=c[(t=t-12|0)+4>>2],c[(f=n=n-12|0)>>2]=c[t>>2],c[f+4>>2]=p,c[f+8>>2]=c[t+8>>2],(0|t)!=(0|u););t=c[A+96>>2]}c[A+104>>2]=y(b,12)+_,c[A+100>>2]=a,c[A+96>>2]=n,t&&er(t);break r}mt(),o()}Zi(),o()}f>>>0>=n>>>0||(c[A+100>>2]=t+y(f,12))}if(c[r+216>>2]!=c[r+220>>2]){f=0,c[i+24>>2]=0,c[i+16>>2]=0,c[i+20>>2]=0,_=c[r+8>>2],t=c[_>>2],A=c[_+4>>2],c[i+8>>2]=0,c[i>>2]=0,c[i+4>>2]=0,e=0;r:{e:{i:{t:{f:{a:{if((0|t)!=(0|A)){if((0|(t=A-t|0))<0)break a;e=vi(t),c[i>>2]=e,c[i+8>>2]=(-4&t)+e,N=i,T=Sr(e,0,t)+t|0,c[N+4>>2]=T}if(t=c[_+24>>2],(c[_+28>>2]-t|0)<4)break e;for(n=0;;){n:if(-1!=(0|(A=c[(d<<2)+t>>2]))){A:if(!(c[c[r+120>>2]+(d>>>3&536870908)>>2]>>>d&1)&&(0|(p=c[r+216>>2]))!=(0|(t=c[r+220>>2])))for(a=A+2|0,m=(b=(A>>>0)%3|0)?A-1|0:a,v=(t=(t-p|0)/144|0)>>>0<=1?1:t,u=0,R=!!(0|b)|-1!=(0|a);;){if(h=A<<2,b=y(u,144)+p|0,t=c[h+c[c[b+68>>2]>>2]>>2],c[c[b+16>>2]+(t>>>3&536870908)>>2]>>>t&1&&(t=-1,R&&(t=-1,-1!=(0|(a=c[c[_+12>>2]+(m<<2)>>2]))&&(t=a-1|0,(a>>>0)%3|0||(t=a+2|0))),(0|A)!=(0|t)))for(a=h,h=c[b+32>>2],b=c[a+h>>2];;){if(a=0,-1==(0|t))break r;if((0|b)!=c[h+(t<<2)>>2]){A=t;break A}o:{if((t>>>0)%3|0)a=t-1|0;else if(s=-1,-1==(0|(a=t+2|0)))break o;s=-1,-1!=(0|(t=c[c[_+12>>2]+(a<<2)>>2]))&&(s=t-1|0,(t>>>0)%3|0||(s=t+2|0))}if((0|A)==(0|(t=s)))break}if((0|v)==(0|(u=u+1|0)))break}if(a=(b=k-n|0)>>2,c[(A<<2)+e>>2]=a,k>>>0<l>>>0)c[k>>2]=A,k=k+4|0,c[i+20>>2]=k;else{if((t=a+1|0)>>>0>=1073741824)break f;if(k=(f=l-n|0)>>>1|0,t=f>>>0>=2147483644?1073741823:t>>>0<k>>>0?k:t){if(t>>>0>=1073741824)break t;f=vi(t<<2)}else f=0;c[(a=f+(a<<2)|0)>>2]=A,l=(s=