libtess-asm.js 96 KB

12345
  1. /*
  2. All material copyright ESRI, All Rights Reserved, unless otherwise specified.
  3. See https://js.arcgis.com/4.25/esri/copyright.txt for details.
  4. */
  5. function r(r,e){for(var f=0;f<e.length;f++){const i=e[f];if("string"!=typeof i&&!Array.isArray(i))for(const e in i)if("default"!==e&&!(e in r)){const f=Object.getOwnPropertyDescriptor(i,e);f&&Object.defineProperty(r,e,f.get?f:{enumerable:!0,get:()=>i[e]})}}return Object.freeze(Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}))}var e,f,i,a={exports:{}};e=a,f=function(){function r(r){const f=r.locateFile,i={};var a=void 0!==a?a:{};const n=(()=>{let r;return{resolve:e=>r(e),promise:new Promise((e=>r=e))}})(),t=()=>n.promise;a.locateFile=f,a.onRuntimeInitialized=()=>{n.resolve(i)},i.Module=a,i.whenLoaded=t;var o,b={};for(o in a)a.hasOwnProperty(o)&&(b[o]=a[o]);var k,u,c,s,A,l="object"==typeof window,v="function"==typeof importScripts,d="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,h="";function p(r){return a.locateFile?a.locateFile(r,h):h+r}d?(h=v?require("path").dirname(h)+"/":__dirname+"/",k=function(r,e){var f=dr(r);return f?e?f:f.toString():(s||(s=require("fs")),A||(A=require("path")),r=A.normalize(r),s.readFileSync(r,e?null:"utf8"))},c=function(r){var e=k(r,!0);return e.buffer||(e=new Uint8Array(e)),S(e.buffer),e},u=function(r,e,f){var i=dr(r);i&&e(i),s||(s=require("fs")),A||(A=require("path")),r=A.normalize(r),s.readFile(r,(function(r,i){r?f(r):e(i.buffer)}))},process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),e.exports=a,process.on("uncaughtException",(function(r){if(!(r instanceof Sr))throw r})),process.on("unhandledRejection",X),a.inspect=function(){return"[Emscripten Module object]"}):(l||v)&&(v?h=self.location.href:"undefined"!=typeof document&&document.currentScript&&(h=document.currentScript.src),h=0!==h.indexOf("blob:")?h.substr(0,h.lastIndexOf("/")+1):"",k=function(r){try{var e=new XMLHttpRequest;return e.open("GET",r,!1),e.send(null),e.responseText}catch(m){var f=dr(r);if(f)return Ar(f);throw m}},v&&(c=function(r){try{var e=new XMLHttpRequest;return e.open("GET",r,!1),e.responseType="arraybuffer",e.send(null),new Uint8Array(e.response)}catch(m){var f=dr(r);if(f)return f;throw m}}),u=function(r,e,f){var i=new XMLHttpRequest;i.open("GET",r,!0),i.responseType="arraybuffer",i.onload=function(){if(200==i.status||0==i.status&&i.response)e(i.response);else{var a=dr(r);a?e(a.buffer):f()}},i.onerror=f,i.send(null)});var w=a.print||console.log.bind(console),m=a.printErr||console.warn.bind(console);for(o in b)b.hasOwnProperty(o)&&(a[o]=b[o]);b=null,a.arguments&&a.arguments,a.thisProgram&&a.thisProgram,a.quit&&a.quit;var y,g=0,E=function(r){g=r},C=function(){return g};a.wasmBinary&&(y=a.wasmBinary),a.noExitRuntime;var R,M={Memory:function(r){this.buffer=new ArrayBuffer(65536*r.initial)},Module:function(r){},Instance:function(r,e){this.exports=function(r){function e(r){return r.set=function(r,e){this[r]=e},r.get=function(r){return this[r]},r}for(var f,i=new Uint8Array(123),a=25;a>=0;--a)i[48+a]=52+a,i[65+a]=a,i[97+a]=26+a;function n(r,e,f){for(var a,n,t=0,o=e,b=f.length,k=e+(3*b>>2)-("="==f[b-2])-("="==f[b-1]);t<b;t+=4)a=i[f.charCodeAt(t+1)],n=i[f.charCodeAt(t+2)],r[o++]=i[f.charCodeAt(t)]<<2|a>>4,o<k&&(r[o++]=a<<4|n>>2),o<k&&(r[o++]=n<<6|i[f.charCodeAt(t+3)])}function t(r){n(f,1024,"LSsgICAwWDB4AC0wWCswWCAwWC0weCsweCAweABuYW4AaW5mAE5BTgBJTkYALgAobnVsbCkAR290IGVycm9yICVkCgAlZCAlZCAoJWYsJWYpLCglZiwlZiksKCVmLCVmKSAK"),n(f,1132,"BwAAAAAAAD8AAAA/AAAAAAAAAAB4Bg=="),n(f,1168,"EQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAEACQsLAAAJBgsAAAsABhEAAAARERE="),n(f,1249,"CwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAAL"),n(f,1307,"DA=="),n(f,1319,"DAAAAAAMAAAAAAkMAAAAAAAMAAAM"),n(f,1365,"Dg=="),n(f,1377,"DQAAAAQNAAAAAAkOAAAAAAAOAAAO"),n(f,1423,"EA=="),n(f,1435,"DwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhIS"),n(f,1490,"EgAAABISEgAAAAAAAAk="),n(f,1539,"Cw=="),n(f,1551,"CgAAAAAKAAAAAAkLAAAAAAALAAAL"),n(f,1597,"DA=="),n(f,1609,"DAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVG"),n(f,1648,"4I8AAAAAAAAF"),n(f,1668,"KA=="),n(f,1692,"KQAAACoAAACYCwAAAAQ="),n(f,1716,"AQ=="),n(f,1731,"Cv////8="),n(f,1972,"wA8=")}i[43]=62,i[47]=63;var o=new ArrayBuffer(16),b=new Int32Array(o),k=new Float64Array(o);function u(r){return b[r]}function c(r,e){b[r]=e}function s(){return k[0]}function A(r){k[0]=r}function l(r){var i=r.a,a=i.buffer;i.grow=ue;var n=new Int8Array(a),o=new Int16Array(a),b=new Int32Array(a),k=new Uint8Array(a),l=new Uint16Array(a),v=new Uint32Array(a),d=new Float32Array(a),h=new Float64Array(a),p=Math.imul,w=Math.fround,m=Math.abs,y=Math.clz32,g=Math.max,E=r.abort,C=r.b,R=r.c,M=r.d,I=r.e,S=r.f,_=r.g,P=r.h,x=r.i,L=r.j,B=r.k,T=r.l,U=r.m,j=36832,F=0;function O(r){var e=0,f=0,i=0,a=0,n=0,t=0,o=0,u=0,c=0,s=0,A=0,l=0,d=0,h=0;j=l=j-16|0;r:{e:{f:{i:{a:{n:{t:{o:{b:{k:{u:{c:{if((r|=0)>>>0<=244){if(3&(e=(n=b[614])>>>(f=(u=r>>>0<11?16:r+11&-8)>>>3|0)|0)){r=(a=b[2504+(e=(i=f+(1&(-1^e))|0)<<3)>>2])+8|0,(0|(f=b[a+8>>2]))!=(0|(e=e+2496|0))?(b[f+12>>2]=e,b[e+8>>2]=f):(d=2456,h=Jr(i)&n,b[d>>2]=h),e=i<<3,b[a+4>>2]=3|e,b[4+(e=e+a|0)>>2]=1|b[e+4>>2];break r}if((s=b[616])>>>0>=u>>>0)break c;if(e){f=r=(e=(0-(r=(0-(r=2<<f)|r)&e<<f)&r)-1|0)>>>12&16,f|=r=(e=e>>>r|0)>>>5&8,f|=r=(e=e>>>r|0)>>>2&4,t=b[2504+(r=(f=((f|=r=(e=e>>>r|0)>>>1&2)|(r=(e=e>>>r|0)>>>1&1))+(e>>>r|0)|0)<<3)>>2],(0|(e=b[t+8>>2]))!=(0|(r=r+2496|0))?(b[e+12>>2]=r,b[r+8>>2]=e):(n=Jr(f)&n,b[614]=n),r=t+8|0,b[t+4>>2]=3|u,a=(e=f<<3)-u|0,b[4+(i=t+u|0)>>2]=1|a,b[e+t>>2]=a,s&&(f=2496+((e=s>>>3|0)<<3)|0,t=b[619],(e=1<<e)&n?e=b[f+8>>2]:(b[614]=e|n,e=f),b[f+8>>2]=t,b[e+12>>2]=t,b[t+12>>2]=f,b[t+8>>2]=e),b[619]=i,b[616]=a;break r}if(!(o=b[615]))break c;for(f=r=(e=(o&0-o)-1|0)>>>12&16,f|=r=(e=e>>>r|0)>>>5&8,f|=r=(e=e>>>r|0)>>>2&4,e=b[2760+(((f|=r=(e=e>>>r|0)>>>1&2)|(r=(e=e>>>r|0)>>>1&1))+(e>>>r|0)<<2)>>2],i=(-8&b[e+4>>2])-u|0,f=e;(r=b[f+16>>2])||(r=b[f+20>>2]);)i=(a=(f=(-8&b[r+4>>2])-u|0)>>>0<i>>>0)?f:i,e=a?r:e,f=r;if((c=e+u|0)>>>0<=e>>>0)break u;if(A=b[e+24>>2],(0|(a=b[e+12>>2]))!=(0|e)){r=b[e+8>>2],b[r+12>>2]=a,b[a+8>>2]=r;break e}if(!(r=b[(f=e+20|0)>>2])){if(!(r=b[e+16>>2]))break k;f=e+16|0}for(;t=f,a=r,(r=b[(f=r+20|0)>>2])||(f=a+16|0,r=b[a+16>>2]););b[t>>2]=0;break e}if(u=-1,!(r>>>0>4294967231)&&(u=-8&(r=r+11|0),c=b[615])){i=0-u|0,n=0,u>>>0<256||(n=31,u>>>0>16777215||(r=r>>>8|0,r<<=t=r+1048320>>>16&8,n=28+((r=((r<<=f=r+520192>>>16&4)<<(e=r+245760>>>16&2)>>>15|0)-(e|f|t)|0)<<1|u>>>r+21&1)|0));s:{A:{if(f=b[2760+(n<<2)>>2])for(r=0,e=u<<(31==(0|n)?0:25-(n>>>1|0)|0);;){if(!((t=(-8&b[f+4>>2])-u|0)>>>0>=i>>>0||(a=f,i=t))){i=0,r=f;break A}if(t=b[f+20>>2],f=b[16+((e>>>29&4)+f|0)>>2],r=t?(0|t)==(0|f)?r:t:r,e<<=1,!f)break}else r=0;if(!(r|a)){if(a=0,!(r=(0-(r=2<<n)|r)&c))break c;f=r=(e=(r&0-r)-1|0)>>>12&16,f|=r=(e=e>>>r|0)>>>5&8,f|=r=(e=e>>>r|0)>>>2&4,r=b[2760+(((f|=r=(e=e>>>r|0)>>>1&2)|(r=(e=e>>>r|0)>>>1&1))+(e>>>r|0)<<2)>>2]}if(!r)break s}for(;i=(f=(e=(-8&b[r+4>>2])-u|0)>>>0<i>>>0)?e:i,a=f?r:a,r=(e=b[r+16>>2])||b[r+20>>2];);}if(!(!a|b[616]-u>>>0<=i>>>0)){if((o=a+u|0)>>>0<=a>>>0)break u;if(n=b[a+24>>2],(0|a)!=(0|(e=b[a+12>>2]))){r=b[a+8>>2],b[r+12>>2]=e,b[e+8>>2]=r;break f}if(!(r=b[(f=a+20|0)>>2])){if(!(r=b[a+16>>2]))break b;f=a+16|0}for(;t=f,e=r,(r=b[(f=r+20|0)>>2])||(f=e+16|0,r=b[e+16>>2]););b[t>>2]=0;break f}}}if((f=b[616])>>>0>=u>>>0){i=b[619],(e=f-u|0)>>>0>=16?(b[616]=e,r=i+u|0,b[619]=r,b[r+4>>2]=1|e,b[f+i>>2]=e,b[i+4>>2]=3|u):(b[619]=0,b[616]=0,b[i+4>>2]=3|f,b[4+(r=f+i|0)>>2]=1|b[r+4>>2]),r=i+8|0;break r}if((o=b[617])>>>0>u>>>0){e=o-u|0,b[617]=e,r=(f=b[620])+u|0,b[620]=r,b[r+4>>2]=1|e,b[f+4>>2]=3|u,r=f+8|0;break r}if(r=0,e=c=u+47|0,b[732]?f=b[734]:(b[735]=-1,b[736]=-1,b[733]=4096,b[734]=4096,b[732]=l+12&-16^1431655768,b[737]=0,b[725]=0,f=4096),(f=(t=e+f|0)&(a=0-f|0))>>>0<=u>>>0)break r;if((i=b[724])&&i>>>0<(n=(e=b[722])+f|0)>>>0|e>>>0>=n>>>0)break r;if(4&k[2900])break n;c:{s:{if(i=b[620])for(r=2904;;){if(i>>>0<(e=b[r>>2])+b[r+4>>2]>>>0&&e>>>0<=i>>>0)break s;if(!(r=b[r+8>>2]))break}if(-1==(0|(e=Qr(0))))break t;if(n=f,(r=(i=b[733])-1|0)&e&&(n=(f-e|0)+(r+e&0-i)|0),n>>>0<=u>>>0|n>>>0>2147483646)break t;if((i=b[724])&&i>>>0<(a=(r=b[722])+n|0)>>>0|r>>>0>=a>>>0)break t;if((0|e)!=(0|(r=Qr(n))))break c;break a}if((n=a&t-o)>>>0>2147483646)break t;if((0|(e=Qr(n)))==(b[r>>2]+b[r+4>>2]|0))break o;r=e}if(!(-1==(0|r)|u+48>>>0<=n>>>0)){if((e=(e=b[734])+(c-n|0)&0-e)>>>0>2147483646){e=r;break a}if(-1!=(0|Qr(e))){n=e+n|0,e=r;break a}Qr(0-n|0);break t}if(e=r,-1!=(0|r))break a;break t}E()}a=0;break e}e=0;break f}if(-1!=(0|e))break a}b[725]=4|b[725]}if(f>>>0>2147483646)break i;if(-1==(0|(e=Qr(f)))|-1==(0|(r=Qr(0)))|r>>>0<=e>>>0)break i;if((n=r-e|0)>>>0<=u+40>>>0)break i}r=b[722]+n|0,b[722]=r,r>>>0>v[723]&&(b[723]=r);a:{n:{t:{if(t=b[620]){for(r=2904;;){if(((i=b[r>>2])+(f=b[r+4>>2])|0)==(0|e))break t;if(!(r=b[r+8>>2]))break}break n}for((r=b[618])>>>0<=e>>>0&&r||(b[618]=e),r=0,b[727]=n,b[726]=e,b[622]=-1,b[623]=b[732],b[729]=0;f=2496+(i=r<<3)|0,b[i+2504>>2]=f,b[i+2508>>2]=f,32!=(0|(r=r+1|0)););f=(i=n-40|0)-(r=e+8&7?-8-e&7:0)|0,b[617]=f,r=r+e|0,b[620]=r,b[r+4>>2]=1|f,b[4+(e+i|0)>>2]=40,b[621]=b[736];break a}if(!(8&k[r+12|0]|i>>>0>t>>>0|e>>>0<=t>>>0)){b[r+4>>2]=f+n,f=(r=t+8&7?-8-t&7:0)+t|0,b[620]=f,r=(e=b[617]+n|0)-r|0,b[617]=r,b[f+4>>2]=1|r,b[4+(e+t|0)>>2]=40,b[621]=b[736];break a}}v[618]>e>>>0&&(b[618]=e),f=e+n|0,r=2904;n:{t:{o:{b:{k:{u:{for(;;){if((0|f)!=b[r>>2]){if(r=b[r+8>>2])continue;break u}break}if(!(8&k[r+12|0]))break k}for(r=2904;;){if((f=b[r>>2])>>>0<=t>>>0&&(a=f+b[r+4>>2]|0)>>>0>t>>>0)break b;r=b[r+8>>2]}}if(b[r>>2]=e,b[r+4>>2]=b[r+4>>2]+n,b[4+(c=(e+8&7?-8-e&7:0)+e|0)>>2]=3|u,f=(n=f+(f+8&7?-8-f&7:0)|0)-(o=u+c|0)|0,(0|t)==(0|n)){b[620]=o,r=b[617]+f|0,b[617]=r,b[o+4>>2]=1|r;break t}if(b[619]==(0|n)){b[619]=o,r=b[616]+f|0,b[616]=r,b[o+4>>2]=1|r,b[r+o>>2]=r;break t}if(1==(3&(r=b[n+4>>2]))){t=-8&r;k:if(r>>>0<=255){if(i=b[n+8>>2],r=r>>>3|0,(0|(e=b[n+12>>2]))==(0|i)){d=2456,h=b[614]&Jr(r),b[d>>2]=h;break k}b[i+12>>2]=e,b[e+8>>2]=i}else{if(u=b[n+24>>2],(0|n)==(0|(e=b[n+12>>2])))if((i=b[(r=n+20|0)>>2])||(i=b[(r=n+16|0)>>2])){for(;a=r,(i=b[(r=(e=i)+20|0)>>2])||(r=e+16|0,i=b[e+16>>2]););b[a>>2]=0}else e=0;else r=b[n+8>>2],b[r+12>>2]=e,b[e+8>>2]=r;if(u){i=b[n+28>>2];u:{if(b[(r=2760+(i<<2)|0)>>2]==(0|n)){if(b[r>>2]=e,e)break u;d=2460,h=b[615]&Jr(i),b[d>>2]=h;break k}if(b[u+(b[u+16>>2]==(0|n)?16:20)>>2]=e,!e)break k}b[e+24>>2]=u,(r=b[n+16>>2])&&(b[e+16>>2]=r,b[r+24>>2]=e),(r=b[n+20>>2])&&(b[e+20>>2]=r,b[r+24>>2]=e)}}n=t+n|0,f=f+t|0}if(b[n+4>>2]=-2&b[n+4>>2],b[o+4>>2]=1|f,b[f+o>>2]=f,f>>>0<=255){e=2496+((r=f>>>3|0)<<3)|0,(f=b[614])&(r=1<<r)?r=b[e+8>>2]:(b[614]=r|f,r=e),b[e+8>>2]=o,b[r+12>>2]=o,b[o+12>>2]=e,b[o+8>>2]=r;break t}if(r=31,f>>>0<=16777215&&(r=f>>>8|0,r<<=a=r+1048320>>>16&8,r=28+((r=((r<<=i=r+520192>>>16&4)<<(e=r+245760>>>16&2)>>>15|0)-(e|i|a)|0)<<1|f>>>r+21&1)|0),b[o+28>>2]=r,b[o+16>>2]=0,b[o+20>>2]=0,a=2760+(r<<2)|0,(i=b[615])&(e=1<<r)){for(r=f<<(31==(0|r)?0:25-(r>>>1|0)|0),e=b[a>>2];;){if(i=e,(-8&b[e+4>>2])==(0|f))break o;if(e=r>>>29|0,r<<=1,!(e=b[16+(a=i+(4&e)|0)>>2]))break}b[a+16>>2]=o,b[o+24>>2]=i}else b[615]=e|i,b[a>>2]=o,b[o+24>>2]=a;b[o+12>>2]=o,b[o+8>>2]=o;break t}for(f=(i=n-40|0)-(r=e+8&7?-8-e&7:0)|0,b[617]=f,r=r+e|0,b[620]=r,b[r+4>>2]=1|f,b[4+(e+i|0)>>2]=40,b[621]=b[736],b[(f=(r=(a+(a-39&7?39-a&7:0)|0)-47|0)>>>0<t+16>>>0?t:r)+4>>2]=27,r=b[729],b[f+16>>2]=b[728],b[f+20>>2]=r,r=b[727],b[f+8>>2]=b[726],b[f+12>>2]=r,b[728]=f+8,b[727]=n,b[726]=e,b[729]=0,r=f+24|0;b[r+4>>2]=7,e=r+8|0,r=r+4|0,e>>>0<a>>>0;);if((0|f)==(0|t))break a;if(b[f+4>>2]=-2&b[f+4>>2],a=f-t|0,b[t+4>>2]=1|a,b[f>>2]=a,a>>>0<=255){e=2496+((r=a>>>3|0)<<3)|0,(f=b[614])&(r=1<<r)?r=b[e+8>>2]:(b[614]=r|f,r=e),b[e+8>>2]=t,b[r+12>>2]=t,b[t+12>>2]=e,b[t+8>>2]=r;break a}if(r=31,b[t+16>>2]=0,b[t+20>>2]=0,a>>>0<=16777215&&(r=a>>>8|0,r<<=i=r+1048320>>>16&8,r=28+((r=((r<<=f=r+520192>>>16&4)<<(e=r+245760>>>16&2)>>>15|0)-(e|f|i)|0)<<1|a>>>r+21&1)|0),b[t+28>>2]=r,i=2760+(r<<2)|0,(f=b[615])&(e=1<<r)){for(r=a<<(31==(0|r)?0:25-(r>>>1|0)|0),e=b[i>>2];;){if(f=e,(0|a)==(-8&b[e+4>>2]))break n;if(e=r>>>29|0,r<<=1,!(e=b[16+(i=f+(4&e)|0)>>2]))break}b[i+16>>2]=t,b[t+24>>2]=f}else b[615]=e|f,b[i>>2]=t,b[t+24>>2]=i;b[t+12>>2]=t,b[t+8>>2]=t;break a}r=b[i+8>>2],b[r+12>>2]=o,b[i+8>>2]=o,b[o+24>>2]=0,b[o+12>>2]=i,b[o+8>>2]=r}r=c+8|0;break r}r=b[f+8>>2],b[r+12>>2]=t,b[f+8>>2]=t,b[t+24>>2]=0,b[t+12>>2]=f,b[t+8>>2]=r}if(!((r=b[617])>>>0<=u>>>0)){e=r-u|0,b[617]=e,r=(f=b[620])+u|0,b[620]=r,b[r+4>>2]=1|e,b[f+4>>2]=3|u,r=f+8|0;break r}}b[613]=48,r=0;break r}f:if(n){f=b[a+28>>2];i:{if(b[(r=2760+(f<<2)|0)>>2]==(0|a)){if(b[r>>2]=e,e)break i;c=Jr(f)&c,b[615]=c;break f}if(b[n+(b[n+16>>2]==(0|a)?16:20)>>2]=e,!e)break f}b[e+24>>2]=n,(r=b[a+16>>2])&&(b[e+16>>2]=r,b[r+24>>2]=e),(r=b[a+20>>2])&&(b[e+20>>2]=r,b[r+24>>2]=e)}f:if(i>>>0<=15)r=i+u|0,b[a+4>>2]=3|r,b[4+(r=r+a|0)>>2]=1|b[r+4>>2];else if(b[a+4>>2]=3|u,b[o+4>>2]=1|i,b[i+o>>2]=i,i>>>0<=255)e=2496+((r=i>>>3|0)<<3)|0,(f=b[614])&(r=1<<r)?r=b[e+8>>2]:(b[614]=r|f,r=e),b[e+8>>2]=o,b[r+12>>2]=o,b[o+12>>2]=e,b[o+8>>2]=r;else{r=31,i>>>0<=16777215&&(r=i>>>8|0,r<<=t=r+1048320>>>16&8,r=28+((r=((r<<=f=r+520192>>>16&4)<<(e=r+245760>>>16&2)>>>15|0)-(e|f|t)|0)<<1|i>>>r+21&1)|0),b[o+28>>2]=r,b[o+16>>2]=0,b[o+20>>2]=0,f=2760+(r<<2)|0;i:{if((e=1<<r)&c){for(r=i<<(31==(0|r)?0:25-(r>>>1|0)|0),u=b[f>>2];;){if((-8&b[(e=u)+4>>2])==(0|i))break i;if(f=r>>>29|0,r<<=1,!(u=b[16+(f=e+(4&f)|0)>>2]))break}b[f+16>>2]=o,b[o+24>>2]=e}else b[615]=e|c,b[f>>2]=o,b[o+24>>2]=f;b[o+12>>2]=o,b[o+8>>2]=o;break f}r=b[e+8>>2],b[r+12>>2]=o,b[e+8>>2]=o,b[o+24>>2]=0,b[o+12>>2]=e,b[o+8>>2]=r}r=a+8|0;break r}e:if(A){f=b[e+28>>2];f:{if(b[(r=2760+(f<<2)|0)>>2]==(0|e)){if(b[r>>2]=a,a)break f;d=2460,h=Jr(f)&o,b[d>>2]=h;break e}if(b[(b[A+16>>2]==(0|e)?16:20)+A>>2]=a,!a)break e}b[a+24>>2]=A,(r=b[e+16>>2])&&(b[a+16>>2]=r,b[r+24>>2]=a),(r=b[e+20>>2])&&(b[a+20>>2]=r,b[r+24>>2]=a)}i>>>0<=15?(r=i+u|0,b[e+4>>2]=3|r,b[4+(r=r+e|0)>>2]=1|b[r+4>>2]):(b[e+4>>2]=3|u,b[c+4>>2]=1|i,b[i+c>>2]=i,s&&(f=2496+((r=s>>>3|0)<<3)|0,a=b[619],(r=1<<r)&n?r=b[f+8>>2]:(b[614]=r|n,r=f),b[f+8>>2]=a,b[r+12>>2]=a,b[a+12>>2]=f,b[a+8>>2]=r),b[619]=c,b[616]=i),r=e+8|0}return j=l+16|0,0|r}function D(r,e,f,i,a,t){r|=0,e|=0,f|=0,i|=0,a|=0,t|=0;for(var u=0,c=0,s=0,A=0,l=0,v=w(0),h=0,m=w(0),y=w(0),g=0,_=0,P=0,x=0,U=0,j=0,F=0,D=0;(s=b[2032+(u=c<<2)>>2])&&(b[s>>2]=0),(s=b[2032+(4|u)>>2])&&(b[s>>2]=0),(s=b[2032+(8|u)>>2])&&(b[s>>2]=0),(u=b[2032+(12|u)>>2])&&(b[u>>2]=0),100!=(0|(c=c+4|0)););if((c=b[608])||(c=O(16),b[608]=c),b[c+8>>2]=t,b[c+4>>2]=0,b[c+12>>2]=i,b[c>>2]=a,(c=b[609])||((a=O(1900))?(b[a+100>>2]=12,b[a+96>>2]=13,b[a+92>>2]=14,b[a+88>>2]=15,o[a+80>>1]=0,b[a+52>>2]=0,b[a+56>>2]=100130,b[a+16>>2]=0,b[a+20>>2]=0,b[a>>2]=0,b[a+1896>>2]=0,b[a+1736>>2]=8,b[a+1732>>2]=11,b[a+1728>>2]=6,b[a+1724>>2]=5,b[a+1720>>2]=4,b[a+1716>>2]=3,b[a+104>>2]=16,b[a+76>>2]=17,b[a+12>>2]=18,b[a+24>>2]=0):a=0,b[609]=a,mr(a,100107,34),mr(b[609],100100,35),mr(b[609],100102,36),mr(b[609],100105,37),mr(b[609],100103,38),mr(b[609],100104,39),b[b[609]+56>>2]=100130,a=b[609],d[a+16>>2]=0,d[a+24>>2]=1,d[a+20>>2]=0,c=b[609]),a=0,t=b[608],b[c>>2]&&cr(c,0),b[c+112>>2]=0,b[c>>2]=1,n[c+108|0]=0,b[c+1896>>2]=t,b[c+8>>2]=0,(0|f)>0)for(t=0;;){if(g=b[(t<<2)+e>>2],u=b[609],1!=b[u>>2]&&cr(u,1),b[u>>2]=2,b[u+4>>2]=0,b[u+112>>2]>=1&&(n[u+108|0]=1),c=0,(0|g)>0)for(;;){l=_=(p(a+c|0,i)<<2)+r|0,s=b[609],2!=b[s>>2]&&cr(s,2);r:{e:{f:{if(k[s+108|0]){if(u=Rr(),b[s+8>>2]=u,!u)break f;if((0|(u=b[s+112>>2]))>=1)for(P=116+(s+(u<<4)|0)|0,A=s+116|0,u=b[s+4>>2];;){D=b[A+12>>2];i:{if(!u){if(!(u=br(b[s+8>>2])))break f;if(tr(u,b[u+4>>2]))break i;break f}if(!ir(u))break f;u=b[u+12>>2]}if(h=b[u+16>>2],b[h+12>>2]=D,d[h+16>>2]=d[A>>2],v=d[A+4>>2],b[h+24>>2]=0,d[h+20>>2]=v,b[u+28>>2]=1,b[b[u+4>>2]+28>>2]=-1,b[s+4>>2]=u,!(P>>>0>(A=A+16|0)>>>0))break}n[s+108|0]=0,b[s+112>>2]=0,b[s+4>>2]=0}A=(U=+(v=(x=+(v=d[l+4>>2]))<-1e37?w(-9999999933815813e21):v))>1e37,h=(F=+(m=(j=+(m=d[l>>2]))<-1e37?w(-9999999933815813e21):m))>1e37,((u=+(y=d[l+8>>2])<-1e37)|(l=+(y=u?w(-9999999933815813e21):y)>1e37)|x<-1e37|U>1e37||F>1e37||j<-1e37)&&(11==(0|(u=b[s+1732>>2]))?be[b[s+12>>2]](100155):be[0|u](100155,b[s+1896>>2])),v=A?w(9999999933815813e21):v,m=h?w(9999999933815813e21):m;i:{if(!b[s+8>>2]){if((0|(A=b[s+112>>2]))<=99){d[124+(u=s+(A<<4)|0)>>2]=l?w(9999999933815813e21):y,d[u+120>>2]=v,d[u+116>>2]=m,b[u+128>>2]=_,b[s+112>>2]=A+1;break r}if(u=Rr(),b[s+8>>2]=u,!u)break i;if((0|(u=b[s+112>>2]))>=1)for(h=116+(s+(u<<4)|0)|0,A=s+116|0,u=b[s+4>>2];;){P=b[A+12>>2];a:{if(!u){if(!(u=br(b[s+8>>2])))break i;if(tr(u,b[u+4>>2]))break a;break i}if(!ir(u))break i;u=b[u+12>>2]}if(l=b[u+16>>2],b[l+12>>2]=P,d[l+16>>2]=d[A>>2],y=d[A+4>>2],b[l+24>>2]=0,d[l+20>>2]=y,b[u+28>>2]=1,b[b[u+4>>2]+28>>2]=-1,b[s+4>>2]=u,!(h>>>0>(A=A+16|0)>>>0))break}n[s+108|0]=0,b[s+112>>2]=0}a:{n:{if(!(u=b[s+4>>2])){if(!(u=br(b[s+8>>2])))break a;if(tr(u,b[u+4>>2]))break n;break a}if(!ir(u))break a;u=b[u+12>>2]}A=b[u+16>>2],d[A+16>>2]=m,b[A+12>>2]=_,b[A+24>>2]=0,d[A+20>>2]=v,b[u+28>>2]=1,b[b[u+4>>2]+28>>2]=-1,b[s+4>>2]=u;break r}if(11!=(0|(u=b[s+1732>>2])))break e;be[b[s+12>>2]](100902);break r}if(11!=(0|(u=b[s+1732>>2])))break e;be[b[s+12>>2]](100902);break r}if(11==(0|(u=b[s+1732>>2]))){be[b[s+12>>2]](100902);break r}}be[0|u](100902,b[s+1896>>2])}if((0|g)==(0|(c=c+1|0)))break}if(u=b[609],2!=b[u>>2]&&cr(u,2),b[u>>2]=1,a=a+g|0,(0|(t=t+1|0))==(0|f))break}f=b[609],r=0,e=O(40),b[e>>2]=0,a=Tr(s=f+1740|0,1,e,4),t=0|R();r:{e:{f:{i:{a:{n:for(;;){t:{o:{b:{k:{u:{c:{s:{if(r){if(11!=(0|(r=b[f+1732>>2]))){if(e=b[f+1896>>2],b[611]=0,M(0|r,100902,0|e),r=b[611],b[611]=0,e=-1,!r)break c;if(!(i=b[612]))break c;if(e=Hr(b[r>>2],a,t))break s;break a}if(r=b[f+12>>2],b[611]=0,S(0|r,100902),r=b[611],b[611]=0,e=-1,!r)break k;if(!(i=b[612]))break k;if(e=Hr(b[r>>2],a,t))break u;break a}if(1==b[f>>2])break t;if(b[611]=0,M(19,0|f,1),r=b[611],b[611]=0,e=-1,!r)break o;if(!(i=b[612]))break o;if(e=Hr(b[r>>2],a,t))break b;break a}C(0|i)}if(r=0|R(),1==(0|e))continue;break r}C(0|i)}if(r=0|R(),1==(0|e))continue;break r}C(0|i)}if(r=0|R(),1==(0|e))continue}b[f>>2]=0;t:{o:{b:{if(!b[f+8>>2]){if(!(k[f+80|0]|16!=b[f+104>>2])){if(b[611]=0,u=0|I(20,0|f),r=b[611],b[611]=0,e=-1,r&&(i=b[612])){if(!(e=Hr(b[r>>2],a,t)))break a;C(0|i)}if(r=0|R(),1==(0|e))continue;if(u){b[f+1896>>2]=0;break r}}if(b[611]=0,i=0|T(21),r=b[611],b[611]=0,e=-1,r&&(c=b[612])){if(!(e=Hr(b[r>>2],a,t)))break i;C(0|c)}if(r=0|R(),1==(0|e))continue;if(b[f+8>>2]=i,!i)break b;if((0|(r=b[f+112>>2]))>=1)for(A=116+(f+(r<<4)|0)|0,i=f+116|0,e=b[f+4>>2];;){g=b[i+12>>2];k:{u:{c:{s:{A:{l:{if(!e){if(r=b[f+8>>2],b[611]=0,e=0|I(22,0|r),r=b[611],b[611]=0,c=-1,!r)break A;if(!(u=b[612]))break A;if(c=Hr(b[r>>2],a,t))break l;break f}if(b[611]=0,l=0|I(23,0|e),r=b[611],b[611]=0,c=-1,!r)break c;if(!(u=b[612]))break c;if(c=Hr(b[r>>2],a,t))break s;break f}C(0|u)}if(r=0|R(),1!=(0|c))break u;continue n}C(0|u)}if(r=0|R(),1==(0|c))continue n;if(!l)break b;e=b[e+12>>2];break k}if(!e)break b;if(r=b[e+4>>2],b[611]=0,l=0|B(24,0|e,0|r),r=b[611],b[611]=0,c=-1,r&&(u=b[612])){if(!(c=Hr(b[r>>2],a,t)))break f;C(0|u)}if(r=0|R(),1==(0|c))continue n;if(!l)break b}if(r=b[e+16>>2],b[r+12>>2]=g,d[r+16>>2]=d[i>>2],v=d[i+4>>2],b[r+24>>2]=0,d[r+20>>2]=v,b[e+28>>2]=1,b[b[e+4>>2]+28>>2]=-1,b[f+4>>2]=e,!(A>>>0>(i=i+16|0)>>>0))break}n[f+108|0]=0,b[f+112>>2]=0}if(b[611]=0,K(f),r=b[611],b[611]=0,e=-1,!r)break t;if(!(i=b[612]))break t;if(e=Hr(b[r>>2],a,t))break o;break a}if(b[611]=0,M(26,0|s,1),e=b[611],b[611]=0,e&&(r=b[612])){if(!Hr(b[e>>2],a,t))break e;C(0|r)}r=0|R();continue}C(0|i)}if(r=0|R(),1!=(0|e)){if(b[611]=0,u=0|I(27,0|f),r=b[611],b[611]=0,e=-1,r&&(i=b[612])){if(!(e=Hr(b[r>>2],a,t)))break a;C(0|i)}if(r=0|R(),1!=(0|e)){t:{o:{b:{k:{u:{c:{s:{A:{l:{v:{d:{if(!u){if(b[611]=0,M(26,0|s,1),e=b[611],b[611]=0,!e)break v;if(!(r=b[612]))break v;if(Hr(b[e>>2],a,t))break d;break e}if(e=b[f+8>>2],k[f+60|0])break c;if(k[f+81|0]){if(b[611]=0,c=0|L(28,0|e,1,1),r=b[611],b[611]=0,i=-1,!r)break s;if(!(u=b[612]))break s;if(i=Hr(b[r>>2],a,t))break l;break f}if(b[611]=0,c=0|I(29,0|e),r=b[611],b[611]=0,i=-1,!r)break s;if(!(u=b[612]))break s;if(i=Hr(b[r>>2],a,t))break A;break f}C(0|r)}r=0|R();continue}C(0|u);break s}C(0|u)}if(r=0|R(),1==(0|i))continue;s:{A:{l:{v:{d:{h:{p:{if(!c){if(b[611]=0,M(26,0|s,1),e=b[611],b[611]=0,!e)break h;if(!(r=b[612]))break h;if(Hr(b[e>>2],a,t))break p;break e}if(!(15!=b[f+88>>2]|12!=b[f+100>>2]|13!=b[f+96>>2]|14!=b[f+92>>2]||3!=b[f+1716>>2]|6!=b[f+1728>>2]|5!=b[f+1724>>2]||4!=b[f+1720>>2]))break s;if(k[f+81|0]){if(b[611]=0,M(30,0|f,0|e),r=b[611],b[611]=0,i=-1,!r)break v;if(!(c=b[612]))break v;if(i=Hr(b[r>>2],a,t))break d;break i}if(b[611]=0,M(31,0|f,0|e),r=b[611],b[611]=0,i=-1,!r)break A;if(!(c=b[612]))break A;if(i=Hr(b[r>>2],a,t))break l;break i}C(0|r)}r=0|R();continue}C(0|c)}if(r=0|R(),1==(0|i))continue;break s}C(0|c)}if(r=0|R(),1==(0|i))continue}if(16!=b[f+104>>2]){if(b[611]=0,nr(e),r=b[611],b[611]=0,i=-1,!r)break k;if(!(c=b[612]))break k;if(i=Hr(b[r>>2],a,t))break u;break i}}if(b[611]=0,Pr(e),r=b[611],b[611]=0,e=-1,!r)break o;if(!(i=b[612]))break o;if(e=Hr(b[r>>2],a,t))break b;break a}C(0|c)}if(r=0|R(),1!=(0|i))break t;continue}C(0|i)}if(r=0|R(),1==(0|e))continue;b[f+8>>2]=0,b[f+1896>>2]=0;break r}if(r=b[f+104>>2],b[611]=0,S(0|r,0|e),r=b[611],b[611]=0,e=-1,r&&(i=b[612])){if(!(e=Hr(b[r>>2],a,t)))break a;C(0|i)}if(r=0|R(),1!=(0|e))break}}}b[f+1896>>2]=0,b[f+8>>2]=0;break r}Zr(r,i),E()}Zr(r,c),E()}Zr(r,u),E()}Zr(e,r),E()}return Y(a),b[b[608]+4>>2]}function H(r,e){var f=w(0),i=w(0),a=0,t=w(0),o=w(0),u=0,c=0,s=w(0),A=0,l=0,v=0,p=w(0),m=w(0),y=w(0),C=0,R=0,M=0,I=0,S=0,_=0,P=0,x=0,L=0,B=w(0),T=0,U=w(0);j=u=j-144|0,L=b[b[b[e+4>>2]+8>>2]>>2],P=b[L>>2],M=b[P+16>>2],S=b[b[P+4>>2]+16>>2],_=b[e>>2],I=b[b[_+4>>2]+16>>2],C=b[_+16>>2],pr(I,b[r+72>>2],C)>w(0)&&(f=d[I+28>>2],i=d[I+32>>2],a=b[r+72>>2],t=d[a+28>>2],o=d[a+32>>2],s=d[C+28>>2],h[u+40>>3]=d[C+32>>2],h[u+32>>3]=s,h[u+24>>3]=o,h[u+16>>3]=t,h[u+8>>3]=i,h[u>>3]=f,Gr(1098,u));r:{e:{f:if((0|C)!=(0|M)&&!((m=(f=d[C+32>>2])<=(i=d[I+32>>2])?f:i)>((i=d[M+32>>2])>=(t=d[S+32>>2])?i:t))){i:{if(!(!(f<=i)|(t=d[C+28>>2])!=(o=d[M+28>>2]))||t<o){if(!(pr(S,C,M)>w(0)))break i;break f}if(pr(I,M,C)<w(0))break f}v=S,a=M,l=C,(f=d[(A=I)+28>>2])<(i=d[C+28>>2])|(d[A+32>>2]<=d[l+32>>2]?f==i:0)?(c=l,l=A):c=A,(f=d[a+28>>2])>(i=d[v+28>>2])|(d[v+32>>2]<=d[a+32>>2]?f==i:0)?(f=i,A=a,a=v):A=v,f>(i=d[l+28>>2])|(d[l+32>>2]<=d[a+32>>2]?f==i:0)?(i=f,v=A,R=a,A=c,a=l):(v=c,R=l),c=u;i:if((o=d[A+28>>2])>i|(d[R+32>>2]<=d[A+32>>2]?i==o:0))if(p=d[v+28>>2],!(d[A+32>>2]<=d[v+32>>2])|o!=p&&!(p>o))if(i=pr(a,R,A),f=pr(a,v,A),l=w(i-f)<w(0),(t=w(g(l?w(-i):i,w(0))))<=(i=w(g(l?f:w(-f),w(0))))){if(o=d[R+28>>2],s=d[v+28>>2],f=w(w(o+s)*w(.5)),i==w(0))break i;f=w(o+w(w(t/w(t+i))*w(s-o)))}else f=d[v+28>>2],f=w(f+w(w(i/w(t+i))*w(d[R+28>>2]-f)));else{if(f=w(0),s=w(o-i),t=w(i-d[a+28>>2]),(m=w(s+t))>w(0)&&(f=d[((l=t<s)?a:A)+32>>2],f=w(w(d[R+32>>2]-f)+w(w((l?t:s)/m)*w(f-d[(l?A:a)+32>>2])))),B=w(-f),m=f,p=w(p-o),(t=w(s+p))>w(0)&&(y=d[((l=s<p)?R:v)+32>>2],y=w(w(d[A+32>>2]-y)+w(w((l?s:p)/t)*w(y-d[(l?v:R)+32>>2])))),l=w(f+y)<w(0),(p=w(g(l?B:m,w(0))))<=(t=w(g(l?w(-y):y,w(0))))){if(f=w(w(i+o)*w(.5)),t==w(0))break i;f=w(i+w(s*w(p/w(p+t))));break i}f=w(o+w(w(i-o)*w(t/w(p+t))))}else f=w(w(i+o)*w(.5));d[c+84>>2]=f,(f=d[a+32>>2])<(i=d[A+32>>2])|(d[a+28>>2]<=d[A+28>>2]?f==i:0)?(c=A,A=a):c=a,(i=d[v+32>>2])>(f=d[R+32>>2])|(d[R+28>>2]<=d[v+28>>2]?f==i:0)?(i=f,a=v,v=R):a=R,(f=d[A+32>>2])<i|(d[A+28>>2]<=d[v+28>>2]?f==i:0)?(R=a,l=v,a=c,v=A):(R=c,l=A);i:{a:if((o=d[l+32>>2])<(s=d[a+32>>2])|(d[l+28>>2]<=d[a+28>>2]?o==s:0)){if(y=d[R+32>>2],!(!(d[a+28>>2]<=d[R+28>>2])|s!=y)||y>s){if(f=w(0),i=w(0),p=w(s-o),t=w(o-d[v+32>>2]),(m=w(p+t))>w(0)&&(i=d[((c=t<p)?v:a)+28>>2],i=w(w(d[l+28>>2]-i)+w(w((c?t:p)/m)*w(i-d[(c?a:v)+28>>2])))),U=w(-i),m=i,y=w(y-s),(t=w(p+y))>w(0)&&(B=d[a+28>>2],f=d[((a=p<y)?l:R)+28>>2],f=w(w(B-f)+w(w((a?p:y)/t)*w(f-d[(a?R:l)+28>>2])))),a=w(i+f)<w(0),(i=w(g(a?U:m,w(0))))<=(f=w(g(a?w(-f):f,w(0))))){if(f==w(0))break a;d[u+88>>2]=o+w(p*w(i/w(i+f)));break i}d[u+88>>2]=s+w(w(o-s)*w(f/w(i+f)));break i}if(f=w(0),i=w(0),t=w(s-o),p=d[v+32>>2],m=w(o-p),w(t+m)>w(0)&&(i=d[l+28>>2],i=w(w(m*w(i-d[a+28>>2]))+w(t*w(i-d[v+28>>2])))),m=w(-i),t=i,s=w(s-y),p=w(y-p),w(s+p)>w(0)&&(f=d[R+28>>2],f=w(w(p*w(f-d[a+28>>2]))+w(s*w(f-d[v+28>>2])))),a=w(i-f)<w(0),(i=w(g(a?m:t,w(0))))<=(f=w(g(a?f:w(-f),w(0))))){if(f==w(0)){d[u+88>>2]=w(o+y)*w(.5);break i}d[u+88>>2]=o+w(w(y-o)*w(i/w(i+f)));break i}d[u+88>>2]=y+w(w(o-y)*w(f/w(i+f)));break i}d[u+88>>2]=w(o+s)*w(.5)}f=d[u+84>>2],c=b[r+72>>2];i:{if(f<(t=d[c+28>>2]))i=d[c+32>>2];else{if(f!=t)break i;if(!((i=d[c+32>>2])>=d[u+88>>2]))break i}d[u+88>>2]=i,d[u+84>>2]=t,f=t}A=a=C,(i=t=d[a+28>>2])<(o=d[M+28>>2])||t==o&&(i=t,A=C,d[a+32>>2]<=d[M+32>>2])||(i=o,A=M),a=A;i:{if(f>i)o=d[a+32>>2];else{if(f!=i)break i;if(!((o=d[a+32>>2])<=d[u+88>>2]))break i}d[u+88>>2]=o,d[u+84>>2]=i,t=d[C+28>>2],f=i}if(d[M+28>>2]!=f|d[u+88>>2]!=d[M+32>>2]&&(d[u+88>>2]!=d[C+32>>2]||f!=t)){i:{f=d[c+28>>2];a:{if(d[I+32>>2]!=d[c+32>>2]||f!=d[I+28>>2]){if(pr(I,c,u+56|0)>=w(0))break a;c=b[r+72>>2],f=d[c+28>>2]}if(d[S+32>>2]==d[c+32>>2]&&f==d[S+28>>2])break i;if(!(pr(S,c,u+56|0)<=w(0)))break i}if((0|(a=b[r+72>>2]))==(0|S)){if(!ir(b[_+4>>2]))break r;if(!tr(b[P+4>>2],_))break r;for(a=b[b[e>>2]+16>>2];e=b[b[b[e+4>>2]+4>>2]>>2],A=b[e>>2],(0|a)==b[A+16>>2];);if(c=e,k[e+15|0]&&(c=0,(a=er(b[b[b[b[b[e+4>>2]+8>>2]>>2]>>2]+4>>2],b[A+12>>2]))&&rr(b[e>>2])&&(b[e>>2]=a,n[e+15|0]=0,b[a+24>>2]=e,c=b[b[b[e+4>>2]+4>>2]>>2])),!c)break r;a=b[b[b[c+4>>2]+8>>2]>>2],e=b[a>>2],wr(r,a,L),T=1,ar(r,c,b[b[e+4>>2]+12>>2],e,e,1);break f}if((0|a)==(0|I)){if(!ir(b[P+4>>2]))break r;if(!tr(b[_+12>>2],b[b[P+4>>2]+12>>2]))break r;for(c=b[b[b[e>>2]+4>>2]+16>>2],a=e;a=b[b[b[a+4>>2]+4>>2]>>2],(0|c)==b[b[b[a>>2]+4>>2]+16>>2];);c=b[b[b[b[b[b[a+4>>2]+8>>2]>>2]>>2]+4>>2]+8>>2],b[e>>2]=b[b[P+4>>2]+12>>2],T=1,ar(r,a,b[wr(r,e,0)+8>>2],b[b[_+4>>2]+8>>2],c,1);break f}if(pr(I,a,u+56|0)>=w(0)){if(n[e+14|0]=1,n[b[b[b[e+4>>2]+4>>2]>>2]+14|0]=1,!ir(b[_+4>>2]))break r;c=b[_+16>>2],a=b[r+72>>2],d[c+28>>2]=d[a+28>>2],d[c+32>>2]=d[a+32>>2]}else a=b[r+72>>2];if(!(pr(S,a,u+56|0)<=w(0)))break f;if(n[L+14|0]=1,n[e+14|0]=1,!ir(b[P+4>>2]))break r;e=b[P+16>>2],r=b[r+72>>2],d[e+28>>2]=d[r+28>>2],d[e+32>>2]=d[r+32>>2];break f}if(!ir(b[_+4>>2]))break r;if(!ir(b[P+4>>2]))break r;if(!tr(b[b[P+4>>2]+12>>2],_))break r;if(a=b[_+16>>2],d[a+28>>2]=d[u+84>>2],d[a+32>>2]=d[u+88>>2],c=or(b[r+68>>2],a),a=b[_+16>>2],b[a+36>>2]=c,2147483647==(0|c))break e;b[u+112>>2]=b[C+12>>2],b[u+116>>2]=b[I+12>>2],b[u+120>>2]=b[M+12>>2],b[u+124>>2]=b[S+12>>2],b[a+24>>2]=0,b[a+16>>2]=0,b[a+20>>2]=0,f=d[a+28>>2],m=(i=w(d[I+28>>2]-f))<w(0)?w(-i):i,i=d[a+32>>2],t=w(d[I+32>>2]-i),o=w(m+(t<w(0)?w(-t):t)),m=(t=w(d[C+28>>2]-f))<w(0)?w(-t):t,t=w(d[C+32>>2]-i),s=w(m+(t<w(0)?w(-t):t)),x=+w(s+o),t=w(.5*+o/x),d[u+96>>2]=t,o=w(.5*+s/x),d[u+100>>2]=o,s=w(w(w(d[C+16>>2]*t)+w(d[I+16>>2]*o))+w(0)),d[a+16>>2]=s,y=w(w(w(d[C+20>>2]*t)+w(d[I+20>>2]*o))+w(0)),d[a+20>>2]=y,o=w(w(w(d[C+24>>2]*t)+w(d[I+24>>2]*o))+w(0)),d[a+24>>2]=o,m=(t=w(d[M+28>>2]-f))<w(0)?w(-t):t,t=w(d[M+32>>2]-i),t=w(m+(t<w(0)?w(-t):t)),m=(f=w(d[S+28>>2]-f))<w(0)?w(-f):f,f=w(d[S+32>>2]-i),f=w(m+(f<w(0)?w(-f):f)),x=+w(t+f),f=w(.5*+f/x),d[u+104>>2]=f,i=w(.5*+t/x),d[u+108>>2]=i,t=w(s+w(w(d[M+16>>2]*f)+w(d[S+16>>2]*i))),d[a+16>>2]=t,s=w(y+w(w(d[M+20>>2]*f)+w(d[S+20>>2]*i))),d[a+20>>2]=s,f=w(o+w(w(d[M+24>>2]*f)+w(d[S+24>>2]*i))),d[a+24>>2]=f,d[u+140>>2]=f,d[u+136>>2]=s,d[u+132>>2]=t,b[a+12>>2]=0,a=a+12|0,8==(0|(c=b[r+1736>>2]))?be[b[r+76>>2]](u+132|0,u+112|0,u+96|0,a):be[0|c](u+132|0,u+112|0,u+96|0,a,b[r+1896>>2]),b[a>>2]|k[r+60|0]||(11==(0|(a=b[r+1732>>2]))?be[b[r+12>>2]](100156):be[0|a](100156,b[r+1896>>2]),n[r+60|0]=1),n[L+14|0]=1,n[e+14|0]=1,n[b[b[b[e+4>>2]+4>>2]>>2]+14|0]=1}else G(r,e)}return j=u+144|0,T}Kr(b[r+68>>2]),b[r+68>>2]=0}Zr(r+1740|0,1),E()}function Q(r){r|=0;var e=0,f=0,i=0,a=0,t=0,o=0,k=0,u=0,c=w(0),s=w(0),A=0,l=0,v=0,h=0,m=0,y=0,g=0,C=0,R=0,M=0;j=t=j-48|0,n[r+60|0]=0;r:{if(f=b[r+8>>2],(0|(e=b[f+64>>2]))!=(0|(k=f- -64|0)))for(;;){f=b[e+12>>2],a=b[e>>2],o=b[e+16>>2],i=b[b[e+4>>2]+16>>2];e:{if(!(d[o+28>>2]!=d[i+28>>2]|d[o+32>>2]!=d[i+32>>2]|b[f+12>>2]==(0|e))){b[t+24>>2]=0,b[t+28>>2]=0,b[t+16>>2]=0,b[t+20>>2]=0,i=b[287],b[t+8>>2]=b[286],b[t+12>>2]=i,i=b[285],b[t>>2]=b[284],b[t+4>>2]=i,i=b[f+16>>2],b[t+16>>2]=b[i+12>>2],b[t+20>>2]=b[o+12>>2],d[t+36>>2]=d[i+16>>2],d[t+40>>2]=d[i+20>>2],d[t+44>>2]=d[i+24>>2],b[i+12>>2]=0,i=i+12|0,8==(0|(o=b[r+1736>>2]))?be[b[r+76>>2]](t+36|0,t+16|0,t,i):be[0|o](t+36|0,t+16|0,t,i,b[r+1896>>2]),b[i>>2]||(b[i>>2]=b[t+16>>2]);f:{if(tr(f,e)){if(!rr(e))break f;i=b[f+12>>2];break e}break r}break r}i=f,f=e}if(b[i+12>>2]==(0|f)){if((0|f)!=(0|i)&&(a=b[a+4>>2]!=(0|i)&&(0|i)!=(0|a)?a:b[a>>2],!rr(i)))break r;if(e=(0|f)==(0|a)|b[a+4>>2]==(0|f)?b[a>>2]:a,!rr(f))break r}else e=a;if((0|e)==(0|k))break}a=r,(e=O(28))?(i=e,(f=O(28))?(b[f+8>>2]=0,b[f+12>>2]=32,o=O(132),b[f>>2]=o,o?(k=O(264),b[f+4>>2]=k,k?(b[f+24>>2]=9,b[f+16>>2]=0,b[f+20>>2]=0,b[o+4>>2]=1,b[k+8>>2]=0):(Y(o),Y(f),f=0)):(Y(f),f=0)):f=0,b[i>>2]=f,f?(i=O(128),b[e+4>>2]=i,i?(b[e+24>>2]=9,b[e+20>>2]=0,b[e+12>>2]=0,b[e+16>>2]=32):(Y(b[f+4>>2]),Y(b[f>>2]),Y(f),Y(e),e=0)):(Y(e),e=0)):e=0,v=e,b[a+68>>2]=e;e:if(e){f:{f=b[r+8>>2];i:{if((0|(e=b[f>>2]))!=(0|f))for(;;){if(a=or(v,e),b[e+36>>2]=a,2147483647==(0|a))break i;if((0|f)==(0|(e=b[e>>2])))break}if(j=y=j-400|0,a=O(4+(e=(m=b[v+12>>2])<<2)|0),b[v+8>>2]=a,j=y+400|0,a){if(!((o=(e+a|0)-4|0)>>>0<a>>>0)){if(f=b[v+4>>2],i=1+((k=(m<<2)-4|0)>>>2|0)&7)for(e=a;b[e>>2]=f,e=e+4|0,f=f+4|0,i=i-1|0;);else e=a;if(!(k>>>0<28))for(;b[e>>2]=f,b[e+28>>2]=f+28,b[e+24>>2]=f+24,b[e+20>>2]=f+20,b[e+16>>2]=f+16,b[e+12>>2]=f+12,b[e+8>>2]=f+8,b[e+4>>2]=f+4,f=f+32|0,o>>>0>=(e=e+32|0)>>>0;);}for(b[y+4>>2]=o,b[y>>2]=a,g=2016473283,u=1;;){if((A=b[((u<<3)+y|0)-4>>2])>>>0>(k=b[(h<<3)+y>>2])+40>>>0)for(;;){for(g=p(g,1539415821)+1|0,R=b[(e=((g>>>0)%(1+(A-k>>2)>>>0)<<2)+k|0)>>2],b[e>>2]=b[k>>2],b[k>>2]=R,i=A+4|0,f=k-4|0;;){a=i,l=b[f+4>>2],o=f,e=f+4|0,i=b[l>>2],c=d[i+28>>2],C=b[R>>2],u=e;a:if(!(c<(s=d[C+28>>2]))){for(;;){if(f=e,u=e,d[i+32>>2]<=d[C+32>>2]&&c==s)break a;if(e=f+4|0,o=f,l=b[f+4>>2],i=b[l>>2],s>(c=d[i+28>>2]))break}u=e}f=u,u=b[(i=a-4|0)>>2],e=b[u>>2];a:if(!(s<(c=d[e+28>>2])))for(;;){if(!(!(d[C+32>>2]<=d[e+32>>2])|c!=s))break a;if(a=i,u=b[(i=i-4|0)>>2],e=b[u>>2],s<(c=d[e+28>>2]))break}if(b[f>>2]=u,b[i>>2]=l,!(f>>>0<i>>>0))break}if(e=b[f>>2],b[f>>2]=l,b[i>>2]=e,(f-k|0)<(A-i|0)?(e=a,i=A,A=o):(e=k,i=o,k=a),b[4+(f=(h<<3)+y|0)>>2]=i,b[f>>2]=e,h=h+1|0,!(k+40>>>0<A>>>0))break}if(u=h,A>>>0>=(a=k+4|0)>>>0)for(;;){i=b[a>>2],f=e=a;a:if(!(k>>>0>=e>>>0))for(;;){if(o=b[i>>2],c=d[o+28>>2],h=b[(f=e-4|0)>>2],l=b[h>>2],c<(s=d[l+28>>2])){f=e;break a}if(!(!(d[o+32>>2]<=d[l+32>>2])|c!=s)){f=e;break a}if(b[e>>2]=h,!(k>>>0<(e=f)>>>0))break}if(b[f>>2]=i,!(A>>>0>=(a=a+4|0)>>>0))break}if(h=u-1|0,!((0|u)>=1))break}if(b[v+20>>2]=1,b[v+16>>2]=m,v=b[v>>2],(0|(a=b[v+8>>2]))>=1)for(A=b[v+4>>2],k=b[v>>2],f=a;;){for(i=f,u=A+((h=b[k+(f<<2)>>2])<<3)|0,e=f;(0|a)<=(0|(f=e<<1))||(l=b[A+(b[k+((o=1|f)<<2)>>2]<<3)>>2],c=d[l+28>>2],m=b[A+(b[k+(f<<2)>>2]<<3)>>2],s=d[m+28>>2],!(d[l+32>>2]<=d[m+32>>2])|c!=s&&!(c<s)||(f=o)),!((0|f)>(0|a)||(o=b[u>>2],c=d[o+28>>2],l=b[k+(f<<2)>>2],g=b[(m=A+(l<<3)|0)>>2],c<(s=d[g+28>>2])|(d[o+32>>2]<=d[g+32>>2]?c==s:0)));)b[k+(e<<2)>>2]=l,b[m+4>>2]=e,e=f;if(b[k+(e<<2)>>2]=h,b[u+4>>2]=e,f=i-1|0,!((0|i)>1))break}b[v+20>>2]=1,e=1}else e=0;if(e)break f}Kr(b[r+68>>2]),b[r+68>>2]=0;break e}if(f=r- -64|0,(e=O(20))?(b[e+16>>2]=10,b[e+12>>2]=r,b[e>>2]=0,b[e+8>>2]=e,b[e+4>>2]=e):e=0,b[f>>2]=e,!e)break r;if(_r(r,w(-3999999973526325e22)),_r(r,w(3999999973526325e22)),f=Ir(b[r+68>>2]))for(;;){f:if(e=xr(b[r+68>>2]))for(;;){if(d[e+28>>2]!=d[f+28>>2]|d[e+32>>2]!=d[f+32>>2])break f;if(a=b[Ir(b[r+68>>2])+8>>2],i=b[f+8>>2],b[t+24>>2]=0,b[t+28>>2]=0,b[t+16>>2]=0,b[t+20>>2]=0,e=b[287],b[t+8>>2]=b[286],b[t+12>>2]=e,e=b[285],b[t>>2]=b[284],b[t+4>>2]=e,e=b[i+16>>2],b[t+16>>2]=b[e+12>>2],b[t+20>>2]=b[b[a+16>>2]+12>>2],d[t+36>>2]=d[e+16>>2],d[t+40>>2]=d[e+20>>2],d[t+44>>2]=d[e+24>>2],b[e+12>>2]=0,e=e+12|0,8==(0|(o=b[r+1736>>2]))?be[b[r+76>>2]](t+36|0,t+16|0,t,e):be[0|o](t+36|0,t+16|0,t,e,b[r+1896>>2]),b[e>>2]||(b[e>>2]=b[t+16>>2]),!tr(i,a))break r;if(!(e=xr(b[r+68>>2])))break}if(z(r,f),!(f=Ir(b[r+68>>2])))break}if(e=b[b[b[(a=r- -64|0)>>2]+4>>2]>>2],f=b[e>>2],b[r+72>>2]=b[f+16>>2],b[f+24>>2]=0,Vr(b[e+4>>2]),Y(e),f=b[a>>2],e=b[b[f+4>>2]>>2])for(;b[b[e>>2]+24>>2]=0,Vr(b[e+4>>2]),Y(e),f=b[a>>2],e=b[b[f+4>>2]>>2];);if((0|f)!=(0|(e=b[f+4>>2])))for(;Y(e),(0|f)!=(0|(e=b[e+4>>2])););if(Y(f),Kr(b[r+68>>2]),M=1,r=b[r+8>>2],(0|(f=b[r+40>>2]))!=(0|(a=r+40|0)))for(;;){if(r=b[f+8>>2],f=b[f>>2],(0|r)==b[b[r+12>>2]+12>>2]&&(e=b[r+8>>2],b[e+28>>2]=b[e+28>>2]+b[r+28>>2],e=b[e+4>>2],b[e+28>>2]=b[e+28>>2]+b[b[r+4>>2]+28>>2],!rr(r))){M=0;break e}if((0|f)==(0|a))break}}return j=t+48|0,0|M}Zr(r+1740|0,1),E()}function W(r,e,f,i,a,t){var u=0,c=0,s=0,A=0,l=0,v=0,d=0,w=0,m=0,y=0,g=0,E=0,C=0,R=0,M=0,I=0,S=0;j=c=j-80|0,b[c+76>>2]=e,M=c+55|0,C=c+56|0,e=0;r:{e:for(;;){(0|m)<0||((2147483647-m|0)<(0|e)?(b[613]=61,m=-1):m=e+m|0);f:{i:{a:{if(l=b[c+76>>2],u=k[0|(e=l)])for(;;){n:{t:if(u&=255){if(37!=(0|u))break n;for(u=e;;){if(37!=k[e+1|0])break t;if(s=e+2|0,b[c+76>>2]=s,u=u+1|0,v=k[e+2|0],e=s,37!=(0|v))break}}else u=e;if(e=u-l|0,r&&yr(r,l,e),e)continue e;g=-1,u=1,s=c,e=b[c+76>>2],36!=k[e+2|0]|n[b[c+76>>2]+1|0]-48>>>0>=10||(g=n[e+1|0]-48|0,R=1,u=3),e=u+e|0,b[s+76>>2]=e,y=0;t:if((s=(A=n[0|e])-32|0)>>>0>31)u=e;else if(u=e,75913&(s=1<<s))for(;;){if(u=e+1|0,b[c+76>>2]=u,y|=s,(s=(A=n[e+1|0])-32|0)>>>0>=32)break t;if(e=u,!(75913&(s=1<<s)))break}t:if(42!=(0|A)){if((0|(d=Wr(c+76|0)))<0)break a;e=b[c+76>>2]}else{if(s=c,n[u+1|0]-48>>>0>=10||(e=b[c+76>>2],36!=k[e+2|0])){if(R)break a;R=0,d=0,r&&(e=b[f>>2],b[f>>2]=e+4,d=b[e>>2]),e=b[c+76>>2]+1|0}else b[((n[e+1|0]<<2)+a|0)-192>>2]=10,d=b[((n[e+1|0]<<3)+i|0)-384>>2],R=1,e=e+3|0;if(b[s+76>>2]=e,(0|d)>-1)break t;d=0-d|0,y|=8192}v=-1;t:if(46==k[0|e])if(42!=k[e+1|0])b[c+76>>2]=e+1,v=Wr(c+76|0),e=b[c+76>>2];else{if(!(n[e+2|0]-48>>>0>=10)&&(e=b[c+76>>2],36==k[e+3|0])){b[((n[e+2|0]<<2)+a|0)-192>>2]=10,v=b[((n[e+2|0]<<3)+i|0)-384>>2],e=e+4|0,b[c+76>>2]=e;break t}if(R)break a;r?(e=b[f>>2],b[f>>2]=e+4,v=b[e>>2]):v=0,e=b[c+76>>2]+2|0,b[c+76>>2]=e}for(u=0;;){if(E=u,w=-1,n[0|e]-65>>>0>57)break r;if(A=e+1|0,b[c+76>>2]=A,u=n[0|e],e=A,!((u=k[1103+(u+p(E,58)|0)|0])-1>>>0<8))break}t:{o:{if(19!=(0|u)){if(!u)break r;if((0|g)>=0){b[(g<<2)+a>>2]=u,u=b[4+(e=(g<<3)+i|0)>>2],b[c+64>>2]=b[e>>2],b[c+68>>2]=u;break o}if(!r)break f;hr(c- -64|0,u,f),A=b[c+76>>2];break t}if((0|g)>-1)break r}if(e=0,!r)continue e}s=-65537&y,u=8192&y?s:y,w=0,g=1024,y=C;t:{o:{b:{k:{u:{c:{s:{A:{l:{v:{d:{h:{p:{w:{m:{switch(e=n[A-1|0],(e=E&&3==(15&e)?-33&e:e)-88|0){case 11:break t;case 9:case 13:case 14:case 15:break o;case 27:break s;case 12:case 17:break v;case 23:break d;case 0:case 32:break h;case 24:break p;case 22:break w;case 29:break m;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 i}switch(e-65|0){case 0:case 4:case 5:case 6:break o;case 2:break u;case 1:case 3:break i}if(83==(0|e))break c;break i}A=b[c+64>>2],s=b[c+68>>2],g=1024;break l}e=0;w:switch(255&E){case 0:case 1:case 6:b[b[c+64>>2]>>2]=m;continue e;case 2:u=b[c+64>>2],b[u>>2]=m,b[u+4>>2]=m>>31;continue e;case 3:o[b[c+64>>2]>>1]=m;continue e;case 4:n[b[c+64>>2]]=m;continue e;case 7:break w;default:continue e}u=b[c+64>>2],b[u>>2]=m,b[u+4>>2]=m>>31;continue e}v=v>>>0>8?v:8,u|=8,e=120}if(l=C,I=32&e,(s=E=b[c+68>>2])|(A=b[c+64>>2]))for(;n[0|(l=l-1|0)]=I|k[1632+(15&A)|0],S=!s&A>>>0>15|0!=(0|s),E=s,s=s>>>4|0,A=(15&E)<<28|A>>>4,S;);if(!(b[c+64>>2]|b[c+68>>2])|!(8&u))break A;g=1024+(e>>>4|0)|0,w=2;break A}if(e=C,(s=l=b[c+68>>2])|(A=b[c+64>>2]))for(;n[0|(e=e-1|0)]=7&A|48,E=!s&A>>>0>7|0!=(0|s),l=s,s=s>>>3|0,A=(7&l)<<29|A>>>3,E;);if(l=e,!(8&u))break A;v=(0|(e=C-l|0))<(0|v)?v:e+1|0;break A}s=e=b[c+68>>2],A=b[c+64>>2],(0|e)<-1||(0|e)<=-1?(s=0-(s+(0!=(0|A))|0)|0,A=0-A|0,b[c+64>>2]=A,b[c+68>>2]=s,w=1,g=1024):2048&u?(w=1,g=1025):g=(w=1&u)?1026:1024}l=Br(A,s,C)}if(u=(0|v)>-1?-65537&u:u,s=e=b[c+68>>2],!(v|0!=(0|(A=b[c+64>>2]))|0!=(0|e))){v=0,l=C;break i}v=(0|(e=!(s|A)+(C-l|0)|0))<(0|v)?v:e;break i}y=0!=(0|(e=v));s:{A:{l:{v:if(!(!(3&(u=l=(u=b[c+64>>2])||1071))|!e))for(;;){if(!k[0|u])break l;if(y=0!=(0|(e=e-1|0)),!(3&(u=u+1|0)))break v;if(!e)break}if(!y)break A}l:if(!(!k[0|u]|e>>>0<4))for(;;){if((-1^(A=b[u>>2]))&A-16843009&-2139062144)break l;if(u=u+4|0,!((e=e-4|0)>>>0>3))break}if(e)for(;;){if(A=u,!k[0|u])break s;if(u=u+1|0,!(e=e-1|0))break}}A=0}y=A||v+l|0,u=s,v=A?A-l|0:v;break i}if(s=b[c+64>>2],v)break k;e=0,Dr(r,32,d,0,u);break b}b[c+12>>2]=0,b[c+8>>2]=b[c+64>>2],b[c+64>>2]=c+8,v=-1,s=c+8|0}e=0;k:{for(;;){if(!(l=b[s>>2]))break k;if(!((A=(0|(l=Cr(c+4|0,l)))<0)|l>>>0>v-e>>>0)){if(s=s+4|0,v>>>0>(e=e+l|0)>>>0)continue;break k}break}if(w=-1,A)break r}if(Dr(r,32,d,e,u),e)for(s=0,A=b[c+64>>2];;){if(!(l=b[A>>2]))break b;if((0|(s=(l=Cr(c+4|0,l))+s|0))>(0|e))break b;if(yr(r,c+4|0,l),A=A+4|0,!(e>>>0>s>>>0))break}else e=0}Dr(r,32,d,e,8192^u),e=(0|e)<(0|d)?d:e;continue e}e=0|be[0|t](r,h[c+64>>3],d,v,u,e);continue e}n[c+55|0]=b[c+64>>2],v=1,l=M,u=s;break i}s=e+1|0,b[c+76>>2]=s,u=k[e+1|0],e=s}if(w=m,r)break r;if(!R)break f;for(e=1;;){if(r=b[(e<<2)+a>>2]){if(hr((e<<3)+i|0,r,f),w=1,10!=(0|(e=e+1|0)))continue;break r}break}if(w=1,e>>>0>=10)break r;for(;;){if(b[(e<<2)+a>>2])break a;if(10==(0|(e=e+1|0)))break}break r}w=-1;break r}Dr(r,32,e=(0|(s=(v=(0|(A=y-l|0))>(0|v)?A:v)+w|0))>(0|d)?s:d,s,u),yr(r,g,w),Dr(r,48,e,s,65536^u),Dr(r,48,v,A,0),yr(r,l,A),Dr(r,32,e,s,8192^u);continue}break}w=0}return j=c+80|0,w}function q(r,e,f,i,a,t){r|=0,e=+e,f|=0,i|=0,a|=0,t|=0;var o=0,c=0,s=0,l=0,v=0,d=0,h=0,w=0,y=0,g=0,E=0,C=0,R=0,M=0,I=0,S=0,_=0,P=0,x=0,L=0,B=0;j=l=j-560|0,b[l+44>>2]=0,A(+e),o=0|u(1),u(0),(0|o)<-1||(0|o)<=-1?(I=1,S=1034,A(+(e=-e)),o=0|u(1),u(0)):2048&a?(I=1,S=1037):(S=(I=1&a)?1040:1035,B=!I);r:if(2146435072!=(2146435072&o)){R=l+16|0;e:{f:{i:{if(e=Ur(e,l+44|0),0!=(e+=e)){if(o=b[l+44>>2],b[l+44>>2]=o-1,97!=(0|(_=32|t)))break i;break e}if(97==(0|(_=32|t)))break e;v=b[l+44>>2],h=(0|i)<0?6:i;break f}v=o-29|0,b[l+44>>2]=v,e*=268435456,h=(0|i)<0?6:i}for(c=E=(0|v)<0?l+48|0:l+336|0;o=e<4294967296&e>=0?~~e>>>0:0,b[(i=c)>>2]=o,c=c+4|0,0!=(e=1e9*(e-+(o>>>0))););if((0|v)<1)i=v,o=c,s=E;else for(s=E,i=v;;){if(C=(0|i)<29?i:29,!(s>>>0>(o=c-4|0)>>>0)){for(i=C,y=0;g=o,w=0,x=y,y=b[o>>2],d=31&i,(63&i)>>>0>=32?(L=y<<d,d=0):(L=(1<<d)-1&y>>>32-d,d=y<<d),w=w+L|0,w=d>>>0>(y=x+d|0)>>>0?w+1|0:w,x=g,g=Or(y=sr(d=y,w,1e9),F,1e9,0),b[x>>2]=d-g,s>>>0<=(o=o-4|0)>>>0;);(i=y)&&(b[(s=s-4|0)>>2]=i)}for(;s>>>0<(o=c)>>>0&&!b[(c=o-4|0)>>2];);if(i=b[l+44>>2]-C|0,b[l+44>>2]=i,c=o,!((0|i)>0))break}if(c=(h+25|0)/9|0,(0|i)<=-1)for(C=c+1|0,P=102==(0|_);;){y=(0|i)<-9?9:0-i|0;f:if(o>>>0>s>>>0){for(g=1e9>>>y|0,d=-1<<y^-1,i=0,c=s;x=i,i=b[c>>2],b[c>>2]=x+(i>>>y|0),i=p(g,i&d),(c=c+4|0)>>>0<o>>>0;);if(s=b[s>>2]?s:s+4|0,!i)break f;b[o>>2]=i,o=o+4|0}else s=b[s>>2]?s:s+4|0;if(i=b[l+44>>2]+y|0,b[l+44>>2]=i,o=(0|C)<o-(c=P?E:s)>>2?c+(C<<2)|0:o,!((0|i)<0))break}if(c=0,!(o>>>0<=s>>>0||(c=p(E-s>>2,9),i=10,(d=b[s>>2])>>>0<10)))for(;c=c+1|0,d>>>0>=(i=p(i,10))>>>0;);if((0|(i=(h-(102==(0|_)?0:c)|0)-(103==(0|_)&0!=(0|h))|0))<(p(o-E>>2,9)-9|0)){if(w=(((d=(0|(g=i+9216|0))/9|0)<<2)+((0|v)<0?l+48|4:l+340|0)|0)-4096|0,i=10,(0|(g=g-p(d,9)|0))<=7)for(;i=p(i,10),8!=(0|(g=g+1|0)););if(C=(g=b[w>>2])-p(i,d=(g>>>0)/(i>>>0)|0)|0,((0|(v=w+4|0))!=(0|o)||C)&&(e=(0|o)==(0|v)?1:1.5,M=(v=i>>>1|0)>>>0>C>>>0?.5:(0|v)==(0|C)?e:1.5,e=1&d?9007199254740994:9007199254740992,45!=k[0|S]|B||(M=-M,e=-e),v=g-C|0,b[w>>2]=v,e+M!=e)){if(i=i+v|0,b[w>>2]=i,i>>>0>=1e9)for(;b[w>>2]=0,(w=w-4|0)>>>0<s>>>0&&(b[(s=s-4|0)>>2]=0),i=b[w>>2]+1|0,b[w>>2]=i,i>>>0>999999999;);if(c=p(E-s>>2,9),i=10,!((v=b[s>>2])>>>0<10))for(;c=c+1|0,v>>>0>=(i=p(i,10))>>>0;);}o=(i=w+4|0)>>>0<o>>>0?i:o}for(;d=o,!(v=o>>>0<=s>>>0)&&!b[(o=d-4|0)>>2];);if(103==(0|_)){if(h=((i=(0|(o=h||1))>(0|c)&(0|c)>-5)?-1^c:-1)+o|0,t=(i?-1:-2)+t|0,!(y=8&a)){if(o=-9,!v&&(v=b[d-4>>2])&&(g=10,o=0,!((v>>>0)%10|0))){for(;i=o,o=o+1|0,!((v>>>0)%((g=p(g,10))>>>0)|0););o=-1^i}i=p(d-E>>2,9),70!=(-33&t)?(y=0,h=(0|(i=(0|(i=((i+c|0)+o|0)-9|0))>0?i:0))>(0|h)?h:i):(y=0,h=(0|(i=(0|(i=(i+o|0)-9|0))>0?i:0))>(0|h)?h:i)}}else y=8&a;if(C=0!=(h|y),i=r,v=f,70==(0|(g=-33&t)))t=(0|c)>0?c:0;else{if((R-(o=Br((o=c>>31)+c^o,0,R))|0)<=1)for(;n[0|(o=o-1|0)]=48,(R-o|0)<2;);n[0|(P=o-2|0)]=t,n[o-1|0]=(0|c)<0?45:43,t=R-P|0}Dr(i,32,v,w=1+(t+(C+(h+I|0)|0)|0)|0,a),yr(r,S,I),Dr(r,48,f,w,65536^a);f:{i:{a:{if(70==(0|g)){for(i=l+16|8,c=l+16|9,s=t=s>>>0>E>>>0?E:s;;){o=Br(b[s>>2],0,c);n:if((0|t)==(0|s))(0|o)==(0|c)&&(n[l+24|0]=48,o=i);else{if(l+16>>>0>=o>>>0)break n;for(;n[0|(o=o-1|0)]=48,l+16>>>0<o>>>0;);}if(yr(r,o,c-o|0),!(E>>>0>=(s=s+4|0)>>>0))break}if(o=0,!C)break i;if(yr(r,1069,1),(0|h)<1|s>>>0>=d>>>0)break a;for(;;){if((o=Br(b[s>>2],0,c))>>>0>l+16>>>0)for(;n[0|(o=o-1|0)]=48,l+16>>>0<o>>>0;);if(yr(r,o,(0|h)<9?h:9),o=h-9|0,d>>>0<=(s=s+4|0)>>>0)break i;if(i=(0|h)>9,h=o,!i)break}break i}n:if(!((0|h)<0))for(t=s>>>0<d>>>0?d:s+4|0,v=l+16|9,i=l+16|8,c=s;;){(0|v)==(0|(o=Br(b[c>>2],0,v)))&&(n[l+24|0]=48,o=i);t:if((0|c)==(0|s))yr(r,o,1),o=o+1|0,!y&&(0|h)<=0||yr(r,1069,1);else{if(l+16>>>0>=o>>>0)break t;for(;n[0|(o=o-1|0)]=48,l+16>>>0<o>>>0;);}if(yr(r,d=o,(0|(o=v-o|0))<(0|h)?o:h),h=h-o|0,t>>>0<=(c=c+4|0)>>>0)break n;if(!((0|h)>-1))break}Dr(r,48,h+18|0,18,0),yr(r,P,R-P|0);break f}o=h}Dr(r,48,o+9|0,9,0)}break r}if(E=(v=32&t)?S+9|0:S,!(i>>>0>11)&&(o=12-i|0)){for(M=8;M*=16,o=o-1|0;);e=45!=k[0|E]?e+M-M:-(M+(-e-M))}for((0|R)==(0|(o=Br((c=(o=b[l+44>>2])>>31)^o+c,0,R)))&&(n[l+15|0]=48,o=l+15|0),h=2|I,c=b[l+44>>2],n[0|(d=o-2|0)]=t+15,n[o-1|0]=(0|c)<0?45:43,o=8&a,s=l+16|0;t=s,y=v,c=m(e)<2147483648?~~e:-2147483648,n[0|s]=y|k[c+1632|0],e=16*(e-+(0|c)),!(o||(0|i)>0|0!=e)|1!=((s=t+1|0)-(l+16|0)|0)||(n[t+1|0]=46,s=t+2|0),0!=e;);Dr(t=r,32,o=f,w=(v=!i|((s-l|0)-18|0)>=(0|i)?(R-(d+(l+16|0)|0)|0)+s|0:2+((i+R|0)-d|0)|0)+h|0,a),yr(r,E,h),Dr(r,48,f,w,65536^a),yr(r,l+16|0,i=s-(l+16|0)|0),Dr(r,48,v-((t=i)+(i=R-d|0)|0)|0,0,0),yr(r,d,i)}else Dr(r,32,f,w=I+3|0,-65537&a),yr(r,S,I),i=32&t,yr(r,e!=e?i?1053:1061:i?1057:1065,3);return Dr(r,32,f,w,8192^a),j=l+560|0,0|((0|f)>(0|w)?f:w)}function z(r,e){var f=0,i=0,a=0,t=0,o=0,u=w(0),c=0,s=w(0),A=0,l=0,v=0;j=o=j+-64|0,b[r+72>>2]=e,f=a=b[e+8>>2];r:{e:{f:{for(;;){if(i=b[f+24>>2])break f;if((0|a)==(0|(f=b[f+8>>2])))break}for(b[o>>2]=b[a+4>>2],a=f=b[r- -64>>2];a=b[a+4>>2],(i=b[a>>2])&&!(0|be[b[f+16>>2]](b[f+12>>2],o,i)););if(i=b[a>>2],a=b[b[b[i+4>>2]+8>>2]>>2],c=b[a>>2],t=b[i>>2],pr(b[b[t+4>>2]+16>>2],e,b[t+16>>2])==w(0)){if(u=d[e+28>>2],a=b[i>>2],f=b[a+16>>2],!(u!=d[f+28>>2]|d[f+32>>2]!=d[e+32>>2])){if(i=b[e+8>>2],b[o+40>>2]=0,b[o+44>>2]=0,b[o+32>>2]=0,b[o+36>>2]=0,e=b[287],b[o+24>>2]=b[286],b[o+28>>2]=e,e=b[285],b[o+16>>2]=b[284],b[o+20>>2]=e,b[o+32>>2]=b[f+12>>2],b[o+36>>2]=b[b[i+16>>2]+12>>2],d[o+52>>2]=d[f+16>>2],d[o+56>>2]=d[f+20>>2],d[o+60>>2]=d[f+24>>2],b[f+12>>2]=0,e=f+12|0,8==(0|(f=b[r+1736>>2]))?be[b[r+76>>2]](o+52|0,o+32|0,o+16|0,e):be[0|f](o+52|0,o+32|0,o+16|0,e,b[r+1896>>2]),b[e>>2]||(b[e>>2]=b[o+32>>2]),tr(a,i))break e;break r}if(t=b[a+4>>2],f=b[t+16>>2],d[f+32>>2]!=d[e+32>>2]||u!=d[f+28>>2]){if(!ir(t))break r;if(k[i+15|0]){if(!rr(b[a+8>>2]))break r;n[i+15|0]=0}if(!tr(b[e+8>>2],a))break r;z(r,e);break e}for(;i=b[b[b[i+4>>2]+4>>2]>>2],(0|f)==b[b[b[i>>2]+4>>2]+16>>2];);if(a=b[b[b[i+4>>2]+8>>2]>>2],c=b[a>>2],t=b[c+4>>2],f=b[t+8>>2],k[a+15|0]){if(b[c+24>>2]=0,Vr(b[a+4>>2]),Y(a),!rr(t))break r;t=b[b[f+4>>2]+12>>2]}if(!tr(b[e+8>>2],t))break r;A=b[t+8>>2],t=f,e=f,a=b[b[f+4>>2]+16>>2],u=d[a+28>>2],c=b[f+16>>2],u<(s=d[c+28>>2])|(d[a+32>>2]<=d[c+32>>2]?u==s:0)||(e=0),ar(r,i,A,t,e,1);break e}if(l=k[i+12|0],c=b[c+4>>2],A=b[c+16>>2],u=d[A+28>>2],v=b[b[t+4>>2]+16>>2],f=i,u<(s=d[v+28>>2])||u==s&&(f=i,d[A+32>>2]<=d[v+32>>2])||(f=a),k[f+15|0]||l){i:{if((0|f)==(0|i)){if(a=er(b[b[e+8>>2]+4>>2],b[t+12>>2]))break i;break r}if(!(a=er(b[b[c+8>>2]+4>>2],b[e+8>>2])))break r;a=b[a+4>>2]}if(k[f+15|0]){if(rr(b[f>>2])){b[f>>2]=a,n[f+15|0]=0,b[a+24>>2]=f,z(r,e);break e}break r}if(!(f=O(16)))break r;if(b[f>>2]=a,i=Fr(b[r- -64>>2],b[i+4>>2],f),b[f+4>>2]=i,!i)break r;n[f+13|0]=0,n[f+14|0]=0,n[f+15|0]=0,b[a+24>>2]=f,t=b[r+56>>2],a=b[b[f>>2]+28>>2]+b[b[b[i+4>>2]>>2]+8>>2]|0,b[f+8>>2]=a;i:{a:switch(t-100130|0){case 0:i=1&a;break i;case 1:i=0!=(0|a);break i;case 2:i=(0|a)>0;break i;case 3:i=a>>>31|0;break i;case 4:break a;default:break i}i=a+1>>>0>2}n[f+12|0]=i,z(r,e);break e}ar(f=r,i,r=b[e+8>>2],r,0,1);break e}for(e=b[b[i>>2]+16>>2];i=b[b[b[i+4>>2]+4>>2]>>2],f=b[i>>2],(0|e)==b[f+16>>2];);if(k[i+15|0]){if(!(e=er(b[b[b[b[b[i+4>>2]+8>>2]>>2]>>2]+4>>2],b[f+12>>2])))break r;if(!rr(b[i>>2]))break r;if(b[i>>2]=e,n[i+15|0]=0,b[e+24>>2]=i,!(i=b[b[b[i+4>>2]+4>>2]>>2]))break r}if(e=b[b[b[i+4>>2]+8>>2]>>2],f=b[e>>2],e=wr(r,e,0),(0|f)!=(0|(a=b[e+8>>2])))ar(r,i,a,f,f,1);else{if(a=b[i>>2],A=b[b[b[i+4>>2]+8>>2]>>2],c=b[A>>2],b[b[a+4>>2]+16>>2]!=b[b[c+4>>2]+16>>2]&&H(r,i),v=1,t=b[r+72>>2],u=d[t+28>>2],l=b[a+16>>2],!(u!=d[l+28>>2]|d[l+32>>2]!=d[t+32>>2])){if(!tr(b[b[f+4>>2]+12>>2],a))break r;for(f=b[b[i>>2]+16>>2];i=b[b[b[i+4>>2]+4>>2]>>2],t=b[i>>2],(0|f)==b[t+16>>2];);if(k[i+15|0]){if(!(f=er(b[b[b[b[b[i+4>>2]+8>>2]>>2]>>2]+4>>2],b[t+12>>2])))break r;if(!rr(b[i>>2]))break r;if(b[i>>2]=f,n[i+15|0]=0,b[f+24>>2]=i,!(i=b[b[b[i+4>>2]+4>>2]>>2]))break r}t=b[b[b[i+4>>2]+8>>2]>>2],f=b[t>>2],wr(r,t,A),t=b[r+72>>2],u=d[t+28>>2],v=0}f:{if(s=u,l=b[c+16>>2],s!=(u=d[l+28>>2])|d[l+32>>2]!=d[t+32>>2]){if(v)break f}else{if(!tr(e,b[b[c+4>>2]+12>>2]))break r;e=wr(r,A,0)}ar(r,i,b[e+8>>2],f,f,1);break e}if(f=b[a+16>>2],s=d[f+28>>2],!(d[l+32>>2]<=d[f+32>>2])|u!=s&&!(s>u)||(a=b[b[c+4>>2]+12>>2]),!(e=er(b[b[e+8>>2]+4>>2],a)))break r;ar(r,i,e,f=b[e+8>>2],f,0),n[b[b[e+4>>2]+24>>2]+15|0]=1,X(r,i)}}return void(j=o- -64|0)}Zr(r+1740|0,1),E()}function K(r){r|=0;var e=0,f=0,i=0,a=w(0),n=w(0),t=0,o=0,k=w(0),u=w(0),c=w(0),s=w(0),A=0,l=w(0),v=0,h=w(0),p=w(0),m=w(0),y=w(0),g=w(0),E=w(0),C=w(0),R=0,M=0,I=w(0),S=w(0),_=0,P=0,x=0,L=0,B=0,T=0,U=0,F=0;v=b[r+8>>2],e=j-80|0,n=d[r+16>>2],d[e+8>>2]=n,p=d[r+20>>2],d[e+12>>2]=p,m=d[r+24>>2],d[e+16>>2]=m;r:if(_=n==w(0)&p==w(0)&m==w(0)){if(b[e+76>>2]=-42943038,b[e+68>>2]=-42943038,b[e+72>>2]=-42943038,b[e+64>>2]=2104540610,b[e+56>>2]=2104540610,b[e+60>>2]=2104540610,P=(0|(A=b[v>>2]))==(0|v))h=w(-19999999867631625e21),k=w(19999999867631625e21),u=w(19999999867631625e21),l=w(-19999999867631625e21),c=w(19999999867631625e21),s=w(-19999999867631625e21);else{for(y=w(19999999867631625e21),g=w(-19999999867631625e21),E=w(-19999999867631625e21),C=w(19999999867631625e21),I=w(-19999999867631625e21),S=w(19999999867631625e21),h=w(-19999999867631625e21),k=w(19999999867631625e21),s=w(-19999999867631625e21),c=w(19999999867631625e21),l=w(-19999999867631625e21),u=w(19999999867631625e21),f=A;h=(i=(a=d[f+24>>2])>h)?a:h,g=i?a:g,k=(R=a<k)?a:k,y=R?a:y,s=(t=(a=d[f+20>>2])>s)?a:s,E=t?a:E,c=(M=a<c)?a:c,C=M?a:C,l=(o=(a=d[f+16>>2])>l)?a:l,I=o?a:I,x=o?f:x,u=(o=a<u)?a:u,S=o?a:S,L=o?f:L,B=i?f:B,T=R?f:T,U=t?f:U,F=M?f:F,(0|v)!=(0|(f=b[f>>2])););b[e+20>>2]=L,d[e+56>>2]=S,d[e+68>>2]=I,b[e+32>>2]=x,d[e+60>>2]=C,b[e+24>>2]=F,d[e+72>>2]=E,b[e+36>>2]=U,d[e+64>>2]=y,b[e+28>>2]=T,d[e+76>>2]=g,b[e+40>>2]=B}if(f=2,i=(t=w(s-c)>w(l-u))<<2,i=w(h-k)>w(d[i+(e+68|0)>>2]-d[i+(e+56|0)>>2])?2:t,d[(t=i<<2)+(e+56|0)>>2]>=d[t+(e+68|0)>>2])b[e+8>>2]=0,b[e+12>>2]=0;else{if(f=b[(i<<=2)+(e+20|0)>>2],i=b[i+(e+32|0)>>2],g=d[i+16>>2],c=w(d[f+16>>2]-g),d[e+44>>2]=c,E=d[i+20>>2],s=w(d[f+20>>2]-E),d[e+48>>2]=s,C=d[i+24>>2],a=w(d[f+24>>2]-C),d[e+52>>2]=a,!P){for(y=w(0),f=A;k=w(d[f+20>>2]-E),u=w(d[f+16>>2]-g),h=w(w(c*k)-w(s*u)),l=w(d[f+24>>2]-C),k=w(w(s*l)-w(a*k)),u=w(w(a*u)-w(c*l)),(l=w(w(h*h)+w(w(k*k)+w(u*u))))>y&&(m=h,p=u,y=l,n=k),(0|v)!=(0|(f=b[f>>2])););if(d[e+16>>2]=m,d[e+12>>2]=p,d[e+8>>2]=n,!(y<=w(0)))break r}b[e+16>>2]=0,b[e+8>>2]=0,b[e+12>>2]=0,f=(s<w(0)?w(-s):s)>(c<w(0)?w(-c):c),n=d[(e+44|0)+(f<<2)>>2],f=(a<w(0)?w(-a):a)>(n<w(0)?w(-n):n)?2:f}b[(e+8|0)+(f<<2)>>2]=1065353216,m=d[e+16>>2],n=d[e+8>>2],p=d[e+12>>2]}else A=b[v>>2];if(i=(p<w(0)?w(-p):p)>(n<w(0)?w(-n):n),n=d[(e+8|0)+(i<<2)>>2],f=r+28|0,i=(m<w(0)?w(-m):m)>(n<w(0)?w(-n):n)?2:i,b[f+(t=i<<2)>>2]=0,b[(o=(i+1>>>0)%3<<2)+f>>2]=1065353216,b[(i=(i+2>>>0)%3<<2)+f>>2]=0,b[(f=r+40|0)+t>>2]=0,e=d[t+(e+8|0)>>2]>w(0),d[f+o>>2]=w(e?-0:0),d[f+i>>2]=w(e?1:-1),!(i=(0|v)==(0|A)))for(f=A;e=b[f+20>>2],b[f+28>>2]=b[f+16>>2],b[f+32>>2]=e,(0|v)!=(0|(f=b[f>>2])););if(_&&(0|(e=b[v+40>>2]))!=(0|(t=v+40|0))){for(n=w(0);;){if(o=b[e+8>>2],b[(f=o)+28>>2]>=1)for(;R=b[f+16>>2],M=b[b[f+4>>2]+16>>2],n=w(n+w(w(d[R+28>>2]-d[M+28>>2])*w(d[R+32>>2]+d[M+32>>2]))),(0|o)!=(0|(f=b[f+12>>2])););if((0|t)==(0|(e=b[e>>2])))break}if(n<w(0)){if(!i)for(;d[A+32>>2]=-d[A+32>>2],(0|(A=b[A>>2]))!=(0|v););d[r+40>>2]=-d[r+40>>2],d[r+44>>2]=-d[r+44>>2],d[r+48>>2]=-d[r+48>>2]}}}function Y(r){var e=0,f=0,i=0,a=0,n=0,t=0,o=0,k=0,u=0;r:if(r|=0){n=(i=r-8|0)+(r=-8&(e=b[r-4>>2]))|0;e:if(!(1&e)){if(!(3&e))break r;if((i=i-(e=b[i>>2])|0)>>>0<v[618])break r;if(r=r+e|0,b[619]==(0|i)){if(3==(3&(e=b[n+4>>2])))return b[616]=r,b[n+4>>2]=-2&e,b[i+4>>2]=1|r,void(b[r+i>>2]=r)}else{if(e>>>0<=255){if(a=b[i+8>>2],e=e>>>3|0,(0|(f=b[i+12>>2]))==(0|a)){k=2456,u=b[614]&Jr(e),b[k>>2]=u;break e}b[a+12>>2]=f,b[f+8>>2]=a;break e}if(o=b[i+24>>2],(0|i)==(0|(e=b[i+12>>2])))if((f=b[(a=i+20|0)>>2])||(f=b[(a=i+16|0)>>2])){for(;t=a,(f=b[(a=(e=f)+20|0)>>2])||(a=e+16|0,f=b[e+16>>2]););b[t>>2]=0}else e=0;else f=b[i+8>>2],b[f+12>>2]=e,b[e+8>>2]=f;if(!o)break e;a=b[i+28>>2];f:{if(b[(f=2760+(a<<2)|0)>>2]==(0|i)){if(b[f>>2]=e,e)break f;k=2460,u=b[615]&Jr(a),b[k>>2]=u;break e}if(b[o+(b[o+16>>2]==(0|i)?16:20)>>2]=e,!e)break e}if(b[e+24>>2]=o,(f=b[i+16>>2])&&(b[e+16>>2]=f,b[f+24>>2]=e),!(f=b[i+20>>2]))break e;b[e+20>>2]=f,b[f+24>>2]=e}}if(!(i>>>0>=n>>>0)&&1&(e=b[n+4>>2])){e:{if(!(2&e)){if(b[620]==(0|n)){if(b[620]=i,r=b[617]+r|0,b[617]=r,b[i+4>>2]=1|r,b[619]!=(0|i))break r;return b[616]=0,void(b[619]=0)}if(b[619]==(0|n))return b[619]=i,r=b[616]+r|0,b[616]=r,b[i+4>>2]=1|r,void(b[r+i>>2]=r);r=(-8&e)+r|0;f:if(e>>>0<=255){if(a=b[n+8>>2],e=e>>>3|0,(0|(f=b[n+12>>2]))==(0|a)){k=2456,u=b[614]&Jr(e),b[k>>2]=u;break f}b[a+12>>2]=f,b[f+8>>2]=a}else{if(o=b[n+24>>2],(0|n)==(0|(e=b[n+12>>2])))if((f=b[(a=n+20|0)>>2])||(f=b[(a=n+16|0)>>2])){for(;t=a,(f=b[(a=(e=f)+20|0)>>2])||(a=e+16|0,f=b[e+16>>2]););b[t>>2]=0}else e=0;else f=b[n+8>>2],b[f+12>>2]=e,b[e+8>>2]=f;if(o){a=b[n+28>>2];i:{if(b[(f=2760+(a<<2)|0)>>2]==(0|n)){if(b[f>>2]=e,e)break i;k=2460,u=b[615]&Jr(a),b[k>>2]=u;break f}if(b[o+(b[o+16>>2]==(0|n)?16:20)>>2]=e,!e)break f}b[e+24>>2]=o,(f=b[n+16>>2])&&(b[e+16>>2]=f,b[f+24>>2]=e),(f=b[n+20>>2])&&(b[e+20>>2]=f,b[f+24>>2]=e)}}if(b[i+4>>2]=1|r,b[r+i>>2]=r,b[619]!=(0|i))break e;return void(b[616]=r)}b[n+4>>2]=-2&e,b[i+4>>2]=1|r,b[r+i>>2]=r}if(r>>>0<=255)return e=2496+((r=r>>>3|0)<<3)|0,(f=b[614])&(r=1<<r)?r=b[e+8>>2]:(b[614]=r|f,r=e),b[e+8>>2]=i,b[r+12>>2]=i,b[i+12>>2]=e,void(b[i+8>>2]=r);a=31,b[i+16>>2]=0,b[i+20>>2]=0,r>>>0<=16777215&&(e=r>>>8|0,e<<=t=e+1048320>>>16&8,a=28+((e=((e<<=a=e+520192>>>16&4)<<(f=e+245760>>>16&2)>>>15|0)-(f|a|t)|0)<<1|r>>>e+21&1)|0),b[i+28>>2]=a,t=2760+(a<<2)|0;e:{f:{if((f=b[615])&(e=1<<a)){for(a=r<<(31==(0|a)?0:25-(a>>>1|0)|0),e=b[t>>2];;){if(f=e,(-8&b[e+4>>2])==(0|r))break f;if(e=a>>>29|0,a<<=1,!(e=b[16+(t=f+(4&e)|0)>>2]))break}b[t+16>>2]=i,b[i+24>>2]=f}else b[615]=e|f,b[t>>2]=i,b[i+24>>2]=t;b[i+12>>2]=i,b[i+8>>2]=i;break e}r=b[f+8>>2],b[r+12>>2]=i,b[f+8>>2]=i,b[i+24>>2]=0,b[i+12>>2]=f,b[i+8>>2]=r}r=b[622]-1|0,b[622]=r||-1}}}function N(r,e){e|=0;var f=0,i=0,a=0,t=0,o=0,u=0,c=0,s=0,A=0,l=0,v=0,d=0,h=0,p=0,w=0,m=0,y=0;if(j=u=j-16|0,b[84+(r|=0)>>2]=0,(0|(s=b[e+40>>2]))!=(0|(h=e+40|0)))for(e=s;n[e+20|0]=0,(0|h)!=(0|(e=b[e>>2])););if((0|s)!=(0|h)){for(;;){if(!(k[s+20|0]|!k[s+21|0])){if(o=b[s+8>>2],k[r+80|0])e=1,f=1;else{a=0,i=0,e=0,t=b[(f=o)+20>>2];r:if(k[t+21|0])for(;;){if(k[(e=t)+20|0]){e=i;break r}if(n[e+20|0]=1,b[e+16>>2]=i,a=a+1|0,i=e,f=b[f+8>>2],t=b[f+20>>2],!k[t+21|0])break}i=b[o+4>>2],t=b[i+20>>2];r:{e:if(!k[t+21|0]|k[t+20|0]){if(w=o,!e)break r}else for(f=e;;){if(n[(e=t)+20|0]=1,b[e+16>>2]=f,a=a+1|0,w=b[i+12>>2],i=b[w+4>>2],t=b[i+20>>2],!k[t+21|0])break e;if(f=e,k[t+20|0])break}for(;n[e+20|0]=0,e=b[e+16>>2];);}m=(0|a)>1,t=0,f=0,e=0,v=b[o+12>>2],i=b[(c=v)+20>>2];r:if(k[i+21|0])for(;;){if(k[(e=i)+20|0]){e=f;break r}if(n[e+20|0]=1,b[e+16>>2]=f,t=t+1|0,f=e,c=b[c+8>>2],i=b[c+20>>2],!k[i+21|0])break}p=m?a:1,i=b[v+4>>2],a=b[i+20>>2];r:{e:if(!k[a+21|0]|k[a+20|0]){if(!e)break r}else for(f=e;;){if(n[(e=a)+20|0]=1,b[e+16>>2]=f,t=t+1|0,v=b[i+12>>2],i=b[v+4>>2],a=b[i+20>>2],!k[a+21|0])break e;if(f=e,k[a+20|0])break}for(;n[e+20|0]=0,e=b[e+16>>2];);}y=(0|t)>(0|p),a=0,f=0,e=0,d=b[b[o+8>>2]+4>>2],i=b[(c=d)+20>>2];r:if(k[i+21|0])for(;;){if(k[(e=i)+20|0]){e=f;break r}if(n[e+20|0]=1,b[e+16>>2]=f,a=a+1|0,f=e,c=b[c+8>>2],i=b[c+20>>2],!k[i+21|0])break}A=y?t:p,i=b[d+4>>2],t=b[i+20>>2];r:{e:if(!k[t+21|0]|k[t+20|0]){if(!e)break r}else for(f=e;;){if(n[(e=t)+20|0]=1,b[e+16>>2]=f,a=a+1|0,d=b[i+12>>2],i=b[d+4>>2],t=b[i+20>>2],!k[t+21|0])break e;if(f=e,k[t+20|0])break}for(;n[e+20|0]=0,e=b[e+16>>2];);}kr(u,o),c=b[u+8>>2],p=b[u+4>>2],l=b[u>>2],kr(u,b[o+12>>2]),t=b[u+8>>2],i=b[u+4>>2],f=b[u>>2],kr(u,b[b[o+8>>2]+4>>2]),e=a,(0|(e=(l=(0|(e=(A=(0|(e=(a=(0|a)>(0|A))?e:A))<(0|l))?l:e))<(0|f))?f:e))>=(0|(f=b[u>>2]))?(o=l?i:A?p:a?d:y?v:m?w:o,f=l?t:A?c:a||m|y?2:1):(o=b[u+4>>2],e=f,f=b[u+8>>2])}be[0|f](r,o,e)}if((0|h)==(0|(s=b[s>>2])))break}if(a=b[r+84>>2]){for(3==(0|(e=b[r+1716>>2]))?be[b[r+88>>2]](4):be[0|e](4,b[r+1896>>2]),t=-1;;){for(e=b[a+8>>2];k[r+80|0]&&(0|(f=!(o=k[b[b[e+4>>2]+20>>2]+21|0])))!=(0|t)&&(4==(0|(i=b[r+1720>>2]))?be[b[r+92>>2]](!o):be[0|i](!o,b[r+1896>>2]),t=f),5==(0|(f=b[r+1724>>2]))?be[b[r+96>>2]](b[b[e+16>>2]+12>>2]):be[0|f](b[b[e+16>>2]+12>>2],b[r+1896>>2]),(0|(e=b[e+12>>2]))!=b[a+8>>2];);if(!(a=b[a+16>>2]))break}6==(0|(e=b[r+1728>>2]))?be[b[r+100>>2]]():be[0|e](b[r+1896>>2]),b[r+84>>2]=0}}j=u+16|0}function V(r,e){var f=0,i=0,a=0,n=0,t=0,o=0,k=0,u=0;n=r+e|0;r:{e:if(!(1&(f=b[r+4>>2]))){if(!(3&f))break r;e=(f=b[r>>2])+e|0;f:{if((0|(r=r-f|0))!=b[619]){if(f>>>0<=255){if(a=b[r+8>>2],f=f>>>3|0,(0|(i=b[r+12>>2]))!=(0|a))break f;k=2456,u=b[614]&Jr(f),b[k>>2]=u;break e}if(o=b[r+24>>2],(0|(f=b[r+12>>2]))==(0|r))if((i=b[(a=r+20|0)>>2])||(i=b[(a=r+16|0)>>2])){for(;t=a,(i=b[(a=(f=i)+20|0)>>2])||(a=f+16|0,i=b[f+16>>2]););b[t>>2]=0}else f=0;else i=b[r+8>>2],b[i+12>>2]=f,b[f+8>>2]=i;if(!o)break e;a=b[r+28>>2];i:{if(b[(i=2760+(a<<2)|0)>>2]==(0|r)){if(b[i>>2]=f,f)break i;k=2460,u=b[615]&Jr(a),b[k>>2]=u;break e}if(b[o+(b[o+16>>2]==(0|r)?16:20)>>2]=f,!f)break e}if(b[f+24>>2]=o,(i=b[r+16>>2])&&(b[f+16>>2]=i,b[i+24>>2]=f),!(i=b[r+20>>2]))break e;b[f+20>>2]=i,b[i+24>>2]=f;break e}if(3!=(3&(f=b[n+4>>2])))break e;return b[616]=e,b[n+4>>2]=-2&f,b[r+4>>2]=1|e,void(b[n>>2]=e)}b[a+12>>2]=i,b[i+8>>2]=a}e:{if(!(2&(f=b[n+4>>2]))){if(b[620]==(0|n)){if(b[620]=r,e=b[617]+e|0,b[617]=e,b[r+4>>2]=1|e,b[619]!=(0|r))break r;return b[616]=0,void(b[619]=0)}if(b[619]==(0|n))return b[619]=r,e=b[616]+e|0,b[616]=e,b[r+4>>2]=1|e,void(b[r+e>>2]=e);e=(-8&f)+e|0;f:if(f>>>0<=255){if(a=b[n+8>>2],f=f>>>3|0,(0|(i=b[n+12>>2]))==(0|a)){k=2456,u=b[614]&Jr(f),b[k>>2]=u;break f}b[a+12>>2]=i,b[i+8>>2]=a}else{if(o=b[n+24>>2],(0|n)==(0|(f=b[n+12>>2])))if((a=b[(i=n+20|0)>>2])||(a=b[(i=n+16|0)>>2])){for(;t=i,(a=b[(i=(f=a)+20|0)>>2])||(i=f+16|0,a=b[f+16>>2]););b[t>>2]=0}else f=0;else i=b[n+8>>2],b[i+12>>2]=f,b[f+8>>2]=i;if(o){a=b[n+28>>2];i:{if(b[(i=2760+(a<<2)|0)>>2]==(0|n)){if(b[i>>2]=f,f)break i;k=2460,u=b[615]&Jr(a),b[k>>2]=u;break f}if(b[o+(b[o+16>>2]==(0|n)?16:20)>>2]=f,!f)break f}b[f+24>>2]=o,(i=b[n+16>>2])&&(b[f+16>>2]=i,b[i+24>>2]=f),(i=b[n+20>>2])&&(b[f+20>>2]=i,b[i+24>>2]=f)}}if(b[r+4>>2]=1|e,b[r+e>>2]=e,b[619]!=(0|r))break e;return void(b[616]=e)}b[n+4>>2]=-2&f,b[r+4>>2]=1|e,b[r+e>>2]=e}if(e>>>0<=255)return f=2496+((e=e>>>3|0)<<3)|0,(i=b[614])&(e=1<<e)?e=b[f+8>>2]:(b[614]=e|i,e=f),b[f+8>>2]=r,b[e+12>>2]=r,b[r+12>>2]=f,void(b[r+8>>2]=e);a=31,b[r+16>>2]=0,b[r+20>>2]=0,e>>>0<=16777215&&(f=e>>>8|0,f<<=t=f+1048320>>>16&8,a=28+((f=((f<<=a=f+520192>>>16&4)<<(i=f+245760>>>16&2)>>>15|0)-(i|a|t)|0)<<1|e>>>f+21&1)|0),b[r+28>>2]=a,t=2760+(a<<2)|0;e:{if((i=b[615])&(f=1<<a)){for(a=e<<(31==(0|a)?0:25-(a>>>1|0)|0),f=b[t>>2];;){if(i=f,(-8&b[f+4>>2])==(0|e))break e;if(f=a>>>29|0,a<<=1,!(f=b[16+(t=i+(4&f)|0)>>2]))break}b[t+16>>2]=r,b[r+24>>2]=i}else b[615]=f|i,b[t>>2]=r,b[r+24>>2]=t;return b[r+12>>2]=r,void(b[r+8>>2]=r)}e=b[i+8>>2],b[e+12>>2]=r,b[i+8>>2]=r,b[r+24>>2]=0,b[r+12>>2]=i,b[r+8>>2]=e}}function G(r,e){var f=0,i=0,a=0,t=w(0),o=0,k=0,u=w(0),c=0,s=0,A=0,l=0,v=0,h=0,p=0,m=0,y=0,g=0,C=0,R=0,M=0,I=0;j=a=j-48|0;r:{A=b[e>>2],k=b[A+16>>2],u=d[k+28>>2],f=b[b[b[e+4>>2]+8>>2]>>2],v=b[f>>2],i=b[v+16>>2],t=d[i+28>>2];e:{if(!(!(d[k+32>>2]<=d[i+32>>2])|u!=t)||u<t){if(pr(b[b[v+4>>2]+16>>2],k,i)>w(0))break e;if(k=b[A+16>>2],i=b[v+16>>2],d[k+32>>2]!=d[i+32>>2]||d[k+28>>2]!=d[i+28>>2]){if(!ir(b[v+4>>2]))break r;if(!tr(A,b[b[v+4>>2]+12>>2]))break r;g=1,n[f+14|0]=1,n[e+14|0]=1;break e}if(g=1,(0|i)==(0|k))break e;if(o=b[r+68>>2],(0|(e=b[k+36>>2]))>=0){if(h=b[o>>2],c=b[h>>2],k=e,s=b[h+4>>2],e=b[4+(C=s+(e<<3)|0)>>2],y=b[h+8>>2],m=b[c+(y<<2)>>2],b[c+(e<<2)>>2]=m,b[4+(R=(m<<3)+s|0)>>2]=e,M=y-1|0,b[h+8>>2]=M,(0|e)<(0|y)){f:{if((0|e)<2||(f=b[(b[c+(e<<1&-4)>>2]<<3)+s>>2],t=d[f+28>>2],p=b[(m<<3)+s>>2],t<(u=d[p+28>>2])||!(!(d[f+32>>2]<=d[p+32>>2])|u!=t)))for(I=(m<<3)+s|0;;){if((0|M)<=(0|(f=e<<1))||(l=b[(b[c+((i=1|f)<<2)>>2]<<3)+s>>2],u=d[l+28>>2],o=b[(b[c+(f<<2)>>2]<<3)+s>>2],t=d[o+28>>2],!(d[l+32>>2]<=d[o+32>>2])|u!=t&&!(u<t)||(f=i)),(0|f)>=(0|y)){f=e;break f}if(p=b[I>>2],u=d[p+28>>2],l=b[c+(f<<2)>>2],i=b[(o=(l<<3)+s|0)>>2],u<(t=d[i+28>>2])){f=e;break f}if(!(!(d[p+32>>2]<=d[i+32>>2])|u!=t)){f=e;break f}b[c+(e<<2)>>2]=l,b[o+4>>2]=e,e=f}for(;;){if(l=b[c+((f=e>>1)<<2)>>2],i=b[(o=(l<<3)+s|0)>>2],(t=d[i+28>>2])<u){f=e;break f}if(!(!(d[i+32>>2]<=d[p+32>>2])|u!=t)){f=e;break f}if(b[c+(e<<2)>>2]=l,b[o+4>>2]=e,!((e=f)>>>0>1))break}}b[c+(f<<2)>>2]=m,b[R+4>>2]=f}b[C>>2]=0,b[C+4>>2]=b[h+16>>2],b[h+16>>2]=k}else{b[b[o+4>>2]+((-1^e)<<2)>>2]=0;f:if(!((0|(e=b[o+12>>2]))<1))for(k=b[o+8>>2];;){if(b[b[k+((f=e-1|0)<<2)>>2]>>2])break f;if(b[o+12>>2]=f,i=(0|e)>1,e=f,!i)break}}if(f=b[b[v+4>>2]+12>>2],b[a+24>>2]=0,b[a+28>>2]=0,b[a+16>>2]=0,b[a+20>>2]=0,e=b[287],b[a+8>>2]=b[286],b[a+12>>2]=e,e=b[285],b[a>>2]=b[284],b[a+4>>2]=e,e=b[f+16>>2],b[a+16>>2]=b[e+12>>2],b[a+20>>2]=b[b[A+16>>2]+12>>2],d[a+36>>2]=d[e+16>>2],d[a+40>>2]=d[e+20>>2],d[a+44>>2]=d[e+24>>2],b[e+12>>2]=0,i=e+12|0,8==(0|(e=b[r+1736>>2]))?be[b[r+76>>2]](a+36|0,a+16|0,a,i):be[0|e](a+36|0,a+16|0,a,i,b[r+1896>>2]),b[i>>2]||(b[i>>2]=b[a+16>>2]),tr(f,A))break e;break r}if(!(pr(b[b[A+4>>2]+16>>2],i,k)<w(0))){if(g=1,n[e+14|0]=1,n[b[b[b[e+4>>2]+4>>2]>>2]+14|0]=1,!ir(b[A+4>>2]))break r;if(!tr(b[b[v+4>>2]+12>>2],A))break r}}return j=a+48|0,g}Zr(r+1740|0,1),E()}function J(r){r|=0;var e=0,f=0,i=w(0),a=w(0),n=w(0),t=w(0),o=w(0),u=w(0),c=0,s=0,A=0,l=w(0),v=w(0),h=0,p=w(0),m=w(0),y=w(0),g=w(0),E=w(0),C=0,R=0,M=w(0),I=w(0),S=w(0);r:{e:if(!((0|(A=b[r+112>>2]))<3)){if(c=(R=r+116|0)+(A<<4)|0,t=d[r+24>>2],o=d[r+16>>2],u=d[r+20>>2],t!=w(0)||o!=w(0)|u!=w(0))p=d[r+124>>2],n=w(d[r+140>>2]-p),m=d[r+120>>2],l=w(d[r+136>>2]-m),y=d[r+116>>2],v=w(d[r+132>>2]-y);else{for(f=r+148|0,t=w(0),u=w(0),o=w(0),e=r+132|0,y=d[r+116>>2],i=v=w(d[e>>2]-y),m=d[r+120>>2],a=l=w(d[r+136>>2]-m),p=d[r+124>>2],g=n=w(d[r+140>>2]-p);E=w(d[e+20>>2]-m),M=w(d[f>>2]-y),I=w(w(i*E)-w(a*M)),S=w(d[e+24>>2]-p),a=w(w(a*S)-w(g*E)),i=w(w(g*M)-w(i*S)),w(w(t*I)+w(w(o*a)+w(u*i)))>=w(0)?(u=w(u+i),o=w(o+a),t=w(t+I)):(u=w(u-i),o=w(o-a),t=w(t-I)),i=M,a=E,g=S,c>>>0>(f=(e=f)+16|0)>>>0;);if((0|A)<3)break e}for(f=r+148|0,e=h=r+132|0;;){i=n,n=l,C=e,a=v,l=w(d[e+20>>2]-m),v=w(d[(e=f)>>2]-y),E=w(t*w(w(a*l)-w(n*v))),g=n,n=w(d[C+24>>2]-p);f:if((i=w(E+w(w(o*w(w(g*n)-w(i*l)))+w(u*w(w(i*v)-w(a*n))))))!=w(0)){if(i>w(0)){if(f=0,C=(0|s)<0,s=1,!C)break f;break r}if(f=0,C=(0|s)>0,s=-1,C)break r}if(!(c>>>0>(f=e+16|0)>>>0))break}switch(f=0,0|s){case 2:break r;case 0:break e}f=1;f:{i:switch(b[r+56>>2]-100132|0){case 0:if((0|s)>=0)break f;break e;case 2:break r;case 1:break i;default:break f}if((0|s)>0)break e}3==(0|(e=b[r+1716>>2]))?be[b[r+88>>2]](k[r+81|0]?2:(0|A)<4?4:6):be[0|e](k[r+81|0]?2:(0|A)<4?4:6,b[r+1896>>2]),5==(0|(e=b[r+1724>>2]))?be[b[r+96>>2]](b[r+128>>2]):be[0|e](b[r+128>>2],b[r+1896>>2]);f:if((0|s)<=0){if(R>>>0>=(e=c-16|0)>>>0)break f;for(;5==(0|(f=b[r+1724>>2]))?be[b[r+96>>2]](b[c-4>>2]):be[0|f](b[c-4>>2],b[r+1896>>2]),c=e,R>>>0<(e=e-16|0)>>>0;);}else if(!((0|A)<2))for(;5==(0|(e=b[r+1724>>2]))?be[b[r+96>>2]](b[h+12>>2]):be[0|e](b[h+12>>2],b[r+1896>>2]),(h=h+16|0)>>>0<c>>>0;);6==(0|(e=b[r+1728>>2]))?be[b[r+100>>2]]():be[0|e](b[r+1896>>2])}f=1}return 0|f}function Z(r,e){var f=0,i=0,a=0,n=0,t=0,o=0,k=0,u=0,c=0,s=0,A=0,l=0,v=0;if(!r)return O(e);if(e>>>0>=4294967232)return b[613]=48,0;t=e>>>0<11?16:e+11&-8,a=-8&(u=b[4+(n=r-8|0)>>2]);r:if(3&u){o=a+n|0;e:if(a>>>0>=t>>>0){if((i=a-t|0)>>>0<16)break e;b[n+4>>2]=1&u|t|2,b[4+(f=n+t|0)>>2]=3|i,b[o+4>>2]=1|b[o+4>>2],V(f,i)}else if(b[620]!=(0|o))if(b[619]!=(0|o)){if(2&(i=b[o+4>>2]))break r;if((c=a+(-8&i)|0)>>>0<t>>>0)break r;A=c-t|0;f:if(i>>>0<=255){if(a=b[o+8>>2],f=i>>>3|0,(0|(i=b[o+12>>2]))==(0|a)){l=2456,v=b[614]&Jr(f),b[l>>2]=v;break f}b[a+12>>2]=i,b[i+8>>2]=a}else{if(s=b[o+24>>2],(0|(k=b[o+12>>2]))==(0|o))if((f=b[(a=o+20|0)>>2])||(f=b[(a=o+16|0)>>2])){for(;i=a,k=f,(f=b[(a=f+20|0)>>2])||(a=k+16|0,f=b[k+16>>2]););b[i>>2]=0}else k=0;else f=b[o+8>>2],b[f+12>>2]=k,b[k+8>>2]=f;if(s){i=b[o+28>>2];i:{if(b[(f=2760+(i<<2)|0)>>2]==(0|o)){if(b[f>>2]=k,k)break i;l=2460,v=b[615]&Jr(i),b[l>>2]=v;break f}if(b[(b[s+16>>2]==(0|o)?16:20)+s>>2]=k,!k)break f}b[k+24>>2]=s,(f=b[o+16>>2])&&(b[k+16>>2]=f,b[f+24>>2]=k),(f=b[o+20>>2])&&(b[k+20>>2]=f,b[f+24>>2]=k)}}A>>>0<=15?(b[n+4>>2]=1&u|c|2,b[4+(f=n+c|0)>>2]=1|b[f+4>>2]):(b[n+4>>2]=1&u|t|2,b[4+(i=n+t|0)>>2]=3|A,b[4+(f=n+c|0)>>2]=1|b[f+4>>2],V(i,A))}else{if((i=a+b[616]|0)>>>0<t>>>0)break r;(f=i-t|0)>>>0>=16?(b[n+4>>2]=1&u|t|2,b[4+(a=n+t|0)>>2]=1|f,b[(i=i+n|0)>>2]=f,b[i+4>>2]=-2&b[i+4>>2]):(b[n+4>>2]=i|1&u|2,b[4+(f=i+n|0)>>2]=1|b[f+4>>2],f=0,a=0),b[619]=a,b[616]=f}else{if((a=a+b[617]|0)>>>0<=t>>>0)break r;b[n+4>>2]=1&u|t|2,f=a-t|0,b[4+(i=n+t|0)>>2]=1|f,b[617]=f,b[620]=i}f=n}else{if(t>>>0<256)break r;if(a>>>0>=t+4>>>0&&(f=n,a-t>>>0<=b[734]<<1>>>0))break r;f=0}return f?f+8|0:(n=O(e))?(fr(n,r,e>>>0>(f=(3&(f=b[r-4>>2])?-4:-8)+(-8&f)|0)>>>0?f:e),Y(r),n):0}function X(r,e){var f=0,i=0,a=0,t=0,o=0,u=0,c=w(0),s=0,A=w(0);for(i=b[b[b[e+4>>2]+8>>2]>>2];;){r:{if(k[i+14|0])for(;i=b[b[b[(e=i)+4>>2]+8>>2]>>2],k[i+14|0];);e:{f:{i:{a:{if(k[e+14|0])f=e;else{if(!(f=b[b[b[e+4>>2]+4>>2]>>2]))break a;if(i=e,!k[f+14|0])break a}n[f+14|0]=0,a=b[f>>2],e=b[b[a+4>>2]+16>>2],o=b[i>>2];n:if((0|e)!=b[b[o+4>>2]+16>>2]){c=d[e+28>>2],s=b[b[b[f+4>>2]+8>>2]>>2],t=b[s>>2],u=b[b[t+4>>2]+16>>2],A=d[u+28>>2];t:{if(!(!(d[e+32>>2]<=d[u+32>>2])|c!=A)||c<A){if(pr(e,u,b[a+16>>2])<w(0)){e=f;break n}if(n[f+14|0]=1,n[b[b[b[f+4>>2]+4>>2]>>2]+14|0]=1,!(e=ir(a)))break e;if(tr(b[t+4>>2],e))break t;break r}if(pr(u,e,b[t+16>>2])>w(0)){e=f;break n}if(n[s+14|0]=1,n[f+14|0]=1,!(e=ir(t)))break r;if(!tr(b[a+12>>2],b[t+4>>2]))break r;e=b[e+4>>2]}if(n[b[e+20>>2]+21|0]=k[f+12|0],k[i+15|0]){if(b[b[i>>2]+24>>2]=0,Vr(b[i+4>>2]),Y(i),!rr(o))break r;i=b[b[b[f+4>>2]+8>>2]>>2],o=b[i>>2],e=f}else if(k[f+15|0]){if(b[b[f>>2]+24>>2]=0,Vr(b[f+4>>2]),Y(f),!rr(a))break r;e=b[b[b[i+4>>2]+4>>2]>>2],a=b[e>>2]}else e=f}else e=f;if(b[a+16>>2]==b[o+16>>2])break f;if(f=b[b[a+4>>2]+16>>2],t=b[b[o+4>>2]+16>>2],k[i+15|0]|k[e+15|0]|(0|f)==(0|t))break i;if(u=f,(0|(f=b[r+72>>2]))!=(0|t)&&(0|u)!=(0|f))break i;if(!H(r,e))break f}return}G(r,e)}if(b[a+16>>2]!=b[o+16>>2])continue;if(t=b[a+4>>2],f=b[o+4>>2],b[t+16>>2]!=b[f+16>>2])continue;if(b[o+28>>2]=b[o+28>>2]+b[a+28>>2],b[f+28>>2]=b[f+28>>2]+b[t+28>>2],b[b[e>>2]+24>>2]=0,Vr(b[e+4>>2]),Y(e),!rr(a))break r;e=b[b[b[i+4>>2]+4>>2]>>2];continue}}break}Zr(r+1740|0,1),E()}function $(r){r|=0;var e=0,f=0,i=0,a=w(0),n=w(0),t=0,o=0,u=0,c=0;if((0|(e=b[r+40>>2]))!=(0|(u=r+40|0)))for(;;){if(r=b[e>>2],k[e+21|0]){for(e=e+8|0;e=b[e>>2],f=b[b[e+4>>2]+16>>2],a=d[f+28>>2],i=b[e+16>>2],n=d[i+28>>2],!(!(d[f+32>>2]<=d[i+32>>2])|a!=n)||a<n;)e=b[e+8>>2]+4|0;for(;!(!(d[i+32>>2]<=d[f+32>>2])|a!=n)||a>n;)e=b[e+12>>2],i=b[e+16>>2],n=d[i+28>>2],f=b[b[e+4>>2]+16>>2],a=d[f+28>>2];r:{e:if((0|(i=b[b[e+8>>2]+4>>2]))!=b[e+12>>2])for(;;){if(t=b[i+16>>2],n=d[t+28>>2],!(d[f+32>>2]<=d[t+32>>2])|a!=n&&!(n>a)){f:if(b[i+12>>2]!=(0|e))for(;;){if(f=b[b[e+8>>2]+4>>2],t=b[f+16>>2],a=d[t+28>>2],o=b[b[f+4>>2]+16>>2],!(a<(n=d[o+28>>2])|(d[t+32>>2]<=d[o+32>>2]?a==n:0))){if(!(pr(b[b[e+4>>2]+16>>2],b[e+16>>2],t)>=w(0)))break f;f=b[b[e+8>>2]+4>>2]}if(e=er(e,f),f=0,!e)break r;if((0|(e=b[e+4>>2]))==b[i+12>>2])break}e=b[e+12>>2]}else{f:if((0|(f=b[i+12>>2]))!=(0|e))for(t=i+12|0;;){if(o=b[b[f+4>>2]+16>>2],a=d[o+28>>2],c=b[f+16>>2],!(a<(n=d[c+28>>2])|(d[o+32>>2]<=d[c+32>>2]?a==n:0))){if(!(pr(b[i+16>>2],b[b[i+4>>2]+16>>2],o)<=w(0)))break f;f=b[t>>2]}if(i=er(f,i),f=0,!i)break r;if(t=(i=b[i+4>>2])+12|0,(0|(f=b[i+12>>2]))==(0|e))break}i=b[b[i+8>>2]+4>>2]}if(b[e+12>>2]==(0|i))break e;f=b[b[e+4>>2]+16>>2],a=d[f+28>>2]}if(f=b[i+12>>2],b[f+12>>2]!=(0|e))for(;;){if(i=er(f,i),f=0,!i)break r;if(i=b[i+4>>2],f=b[i+12>>2],b[f+12>>2]==(0|e))break}f=1}if(!f)return 0}if((0|u)==(0|(e=r)))break}return 1}function rr(r){var e=0,f=0,i=0,a=0,t=0,o=0;if(a=b[r+4>>2],(0|(o=b[a+20>>2]))!=(0|(f=b[r+20>>2]))){for(e=i=b[f+8>>2];b[e+20>>2]=o,(0|i)!=(0|(e=b[e+12>>2])););e=b[f>>2],i=b[f+4>>2],b[e+4>>2]=i,b[i>>2]=e,Y(f)}if((0|(i=b[r+8>>2]))!=(0|r)){if(t=b[r+4>>2],e=b[t+12>>2],b[b[t+20>>2]+8>>2]=e,b[b[r+16>>2]+8>>2]=i,t=b[e+8>>2],b[b[i+4>>2]+12>>2]=e,b[b[t+4>>2]+12>>2]=r,b[r+8>>2]=t,b[e+8>>2]=i,(0|f)==(0|o)){if(!(f=O(24)))return 0;for(e=b[r+20>>2],i=b[e+4>>2],b[f+4>>2]=i,b[i>>2]=f,b[f>>2]=e,b[e+4>>2]=f,b[f+12>>2]=0,b[f+16>>2]=0,b[f+8>>2]=r,n[f+20|0]=0,n[f+21|0]=k[e+21|0],e=r;b[e+20>>2]=f,(0|(e=b[e+12>>2]))!=(0|r););}}else{for(f=b[r+16>>2],e=i=b[f+8>>2];b[e+16>>2]=0,(0|i)!=(0|(e=b[e+8>>2])););e=b[f>>2],i=b[f+4>>2],b[e+4>>2]=i,b[i>>2]=e,Y(f)}if((0|(e=b[a+8>>2]))!=(0|a))f=b[b[a+4>>2]+12>>2],b[b[r+20>>2]+8>>2]=f,b[b[a+16>>2]+8>>2]=e,i=b[f+8>>2],b[b[e+4>>2]+12>>2]=f,b[b[i+4>>2]+12>>2]=a,b[a+8>>2]=i,b[f+8>>2]=e;else{for(f=b[a+16>>2],e=i=b[f+8>>2];b[e+16>>2]=0,(0|i)!=(0|(e=b[e+8>>2])););for(e=b[f>>2],i=b[f+4>>2],b[e+4>>2]=i,b[i>>2]=e,Y(f),f=b[a+20>>2],e=a=b[f+8>>2];b[e+20>>2]=0,(0|a)!=(0|(e=b[e+12>>2])););e=b[f>>2],a=b[f+4>>2],b[e+4>>2]=a,b[a>>2]=e,Y(f)}return e=b[r+4>>2],e=b[(r=r>>>0>e>>>0?e:r)>>2],f=b[b[r+4>>2]>>2],b[b[e+4>>2]>>2]=f,b[b[f+4>>2]>>2]=e,Y(r),1}function er(r,e){var f=0,i=0,a=0,t=0,o=0,u=0,c=0,s=0;if(i=0,f=O(64)){if(u=b[r+4>>2],t=b[(i=r>>>0>u>>>0?u:r)+4>>2],a=b[t>>2],b[f+32>>2]=a,b[b[a+4>>2]>>2]=f,b[f>>2]=i,o=f+32|0,b[t>>2]=o,b[f+16>>2]=0,b[f+20>>2]=0,b[f+12>>2]=o,b[f+4>>2]=o,b[f+24>>2]=0,b[f+28>>2]=0,b[f+48>>2]=0,b[f+52>>2]=0,b[f+44>>2]=f,b[f+40>>2]=o,b[f+36>>2]=f,b[f+56>>2]=0,b[f+60>>2]=0,b[f+8>>2]=f,(0|(c=b[r+20>>2]))!=(0|(t=b[e+20>>2]))){for(i=a=b[t+8>>2];b[i+20>>2]=c,(0|a)!=(0|(i=b[i+12>>2])););i=b[t>>2],a=b[t+4>>2],b[i+4>>2]=a,b[a>>2]=i,Y(t),u=b[r+4>>2],a=b[f+8>>2],i=b[r+20>>2]}else a=f,i=t;if(r=b[r+12>>2],s=b[r+8>>2],b[b[a+4>>2]+12>>2]=r,b[b[s+4>>2]+12>>2]=f,b[f+8>>2]=s,b[r+8>>2]=a,r=b[e+8>>2],a=b[f+40>>2],b[b[a+4>>2]+12>>2]=e,b[b[r+4>>2]+12>>2]=o,b[f+40>>2]=r,b[e+8>>2]=a,b[f+16>>2]=b[u+16>>2],e=b[e+16>>2],r=i,b[f+52>>2]=r,b[f+48>>2]=e,b[f+20>>2]=r,b[r+8>>2]=o,i=f,(0|t)==(0|c)&&(i=0,e=O(24))){for(i=b[r+4>>2],b[e+4>>2]=i,b[i>>2]=e,b[e>>2]=r,b[r+4>>2]=e,b[e+12>>2]=0,b[e+16>>2]=0,b[e+8>>2]=f,n[e+20|0]=0,n[e+21|0]=k[r+21|0],i=f;b[i+20>>2]=e,(0|(i=b[i+12>>2]))!=(0|f););i=f}}return i}function fr(r,e,f){var i=0,a=0;if(f>>>0>=512)U(0|r,0|e,0|f);else{i=r+f|0;r:if(3&(r^e))if(i>>>0<4)f=r;else if((a=i-4|0)>>>0<r>>>0)f=r;else for(f=r;n[0|f]=k[0|e],n[f+1|0]=k[e+1|0],n[f+2|0]=k[e+2|0],n[f+3|0]=k[e+3|0],e=e+4|0,a>>>0>=(f=f+4|0)>>>0;);else{e:if(3&r)if((0|f)<1)f=r;else for(f=r;;){if(n[0|f]=k[0|e],e=e+1|0,!(3&(f=f+1|0)))break e;if(!(f>>>0<i>>>0))break}else f=r;if(!((r=-4&i)>>>0<64||(a=r+-64|0)>>>0<f>>>0))for(;b[f>>2]=b[e>>2],b[f+4>>2]=b[e+4>>2],b[f+8>>2]=b[e+8>>2],b[f+12>>2]=b[e+12>>2],b[f+16>>2]=b[e+16>>2],b[f+20>>2]=b[e+20>>2],b[f+24>>2]=b[e+24>>2],b[f+28>>2]=b[e+28>>2],b[f+32>>2]=b[e+32>>2],b[f+36>>2]=b[e+36>>2],b[f+40>>2]=b[e+40>>2],b[f+44>>2]=b[e+44>>2],b[f+48>>2]=b[e+48>>2],b[f+52>>2]=b[e+52>>2],b[f+56>>2]=b[e+56>>2],b[f+60>>2]=b[e+60>>2],e=e- -64|0,a>>>0>=(f=f- -64|0)>>>0;);if(r>>>0<=f>>>0)break r;for(;b[f>>2]=b[e>>2],e=e+4|0,r>>>0>(f=f+4|0)>>>0;);}if(f>>>0<i>>>0)for(;n[0|f]=k[0|e],e=e+1|0,(0|i)!=(0|(f=f+1|0)););}}function ir(r){var e=0,f=0,i=0,a=0,n=0,t=0;if(n=r|=0,r=0,(e=O(64))&&(i=b[n+4>>2],a=b[(f=i>>>0<n>>>0?i:n)+4>>2],t=b[a>>2],b[e+32>>2]=t,b[b[t+4>>2]>>2]=e,b[e>>2]=f,f=e+32|0,b[a>>2]=f,b[e+16>>2]=0,b[e+20>>2]=0,b[e+12>>2]=f,b[e+4>>2]=f,b[e+24>>2]=0,b[e+28>>2]=0,b[e+48>>2]=0,b[e+52>>2]=0,b[e+40>>2]=f,b[e+36>>2]=e,b[e+56>>2]=0,b[e+60>>2]=0,b[e+8>>2]=e,a=b[n+12>>2],t=b[a+8>>2],b[e+44>>2]=a,b[b[t+4>>2]+12>>2]=e,b[e+8>>2]=t,b[a+8>>2]=e,a=b[i+16>>2],b[e+16>>2]=a,i=O(40))){for(r=b[a+4>>2],b[i+4>>2]=r,b[r>>2]=i,b[i>>2]=a,b[a+4>>2]=i,b[i+12>>2]=0,b[i+8>>2]=f,r=f;b[r+16>>2]=i,(0|f)!=(0|(r=b[r+8>>2])););r=b[n+20>>2],b[e+20>>2]=r,b[e+52>>2]=r,r=e}return r?(e=b[r+4>>2],r=b[n+4>>2],f=b[b[r+4>>2]+12>>2],i=b[f+8>>2],a=b[r+8>>2],b[b[a+4>>2]+12>>2]=f,b[b[i+4>>2]+12>>2]=r,b[r+8>>2]=i,b[f+8>>2]=a,f=b[e+8>>2],i=b[r+8>>2],b[b[i+4>>2]+12>>2]=e,b[b[f+4>>2]+12>>2]=r,b[r+8>>2]=f,b[e+8>>2]=i,b[r+16>>2]=b[e+16>>2],f=b[e+4>>2],b[b[f+16>>2]+8>>2]=f,b[f+20>>2]=b[r+20>>2],b[e+28>>2]=b[n+28>>2],b[f+28>>2]=b[r+28>>2],0|e):0}function ar(r,e,f,i,a,t){var o=0,k=0,u=0,c=0,s=0;c=e+4|0,u=r- -64|0;r:{for(;;){if(k=b[f+4>>2],!(o=O(16)))break r;if(b[o>>2]=k,s=Fr(b[u>>2],b[e+4>>2],o),b[o+4>>2]=s,!s)break r;if(n[o+13|0]=0,n[o+14|0]=0,n[o+15|0]=0,b[k+24>>2]=o,(0|i)==(0|(f=b[f+8>>2])))break}if(o=b[b[b[e+4>>2]+8>>2]>>2],f=b[b[o>>2]+4>>2],a=a||b[f+8>>2],b[f+16>>2]==b[a+16>>2])for(u=0;;){if(i=e,e=o,(0|(o=a))!=b[(a=f)+8>>2]){if(!tr(b[b[a+4>>2]+12>>2],a))break r;if(!tr(b[b[o+4>>2]+12>>2],a))break r}k=b[i+8>>2]-b[a+28>>2]|0,b[e+8>>2]=k;e:{f:switch(b[r+56>>2]-100130|0){case 0:f=1&k;break e;case 1:f=0!=(0|k);break e;case 2:f=(0|k)>0;break e;case 3:f=k>>>31|0;break e;case 4:break f;default:break e}f=k+1>>>0>2}if(n[e+12|0]=f,n[i+14|0]=1,u&&G(r,i)&&(b[a+28>>2]=b[a+28>>2]+b[o+28>>2],f=b[a+4>>2],b[f+28>>2]=b[f+28>>2]+b[b[o+4>>2]+28>>2],b[b[i>>2]+24>>2]=0,Vr(b[c>>2]),Y(i),!rr(o)))break r;if(c=e+4|0,u=1,o=b[b[b[e+4>>2]+8>>2]>>2],f=b[b[o>>2]+4>>2],b[f+16>>2]!=b[a+16>>2])break}return n[e+14|0]=1,void(t&&X(r,e))}Zr(r+1740|0,1),E()}function nr(r){var e=0,f=0,i=0,a=0,n=0,t=0,o=0,u=0,c=0;if((0|(a=b[40+(r|=0)>>2]))!=(0|(o=r+40|0)))for(;;){if(c=b[a>>2],!k[a+21|0]){for(u=b[a+8>>2],r=b[u+12>>2];;){if(b[r+20>>2]=0,t=b[r+12>>2],e=b[r+4>>2],!b[e+20>>2]){if(i=b[r+16>>2],(0|(f=b[r+8>>2]))!=(0|r))b[i+8>>2]=f,i=b[e+12>>2],n=b[i+8>>2],b[b[f+4>>2]+12>>2]=i,b[b[n+4>>2]+12>>2]=r,b[r+8>>2]=n,b[i+8>>2]=f;else{for(e=f=b[i+8>>2];b[e+16>>2]=0,(0|f)!=(0|(e=b[e+8>>2])););e=b[i>>2],f=b[i+4>>2],b[e+4>>2]=f,b[f>>2]=e,Y(i),e=b[r+4>>2]}if(i=b[e+16>>2],(0|(f=b[e+8>>2]))!=(0|e))b[i+8>>2]=f,i=b[b[e+4>>2]+12>>2],n=b[i+8>>2],b[b[f+4>>2]+12>>2]=i,b[b[n+4>>2]+12>>2]=e,b[e+8>>2]=n,b[i+8>>2]=f;else{for(e=f=b[i+8>>2];b[e+16>>2]=0,(0|f)!=(0|(e=b[e+8>>2])););e=b[i>>2],f=b[i+4>>2],b[e+4>>2]=f,b[f>>2]=e,Y(i),e=b[r+4>>2]}i=b[(e=r>>>0>e>>>0?e:r)>>2],f=b[b[e+4>>2]>>2],b[b[i+4>>2]>>2]=f,b[b[f+4>>2]>>2]=i,Y(e)}if(e=(0|r)!=(0|u),r=t,!e)break}r=b[a>>2],t=b[a+4>>2],b[r+4>>2]=t,b[t>>2]=r,Y(a)}if((0|o)==(0|(a=c)))break}}function tr(r,e){var f=0,i=0,a=0,t=0,o=0,u=0;if((0|(r|=0))!=(0|(e|=0))){if((0|(i=b[e+16>>2]))!=(0|(o=b[r+16>>2]))){for(f=a=b[i+8>>2];b[f+16>>2]=o,(0|a)!=(0|(f=b[f+8>>2])););f=b[i>>2],a=b[i+4>>2],b[f+4>>2]=a,b[a>>2]=f,Y(i)}if((0|(u=b[r+20>>2]))!=(0|(a=b[e+20>>2]))){for(f=t=b[a+8>>2];b[f+20>>2]=u,(0|t)!=(0|(f=b[f+12>>2])););f=b[a>>2],t=b[a+4>>2],b[f+4>>2]=t,b[t>>2]=f,Y(a)}if(f=b[r+8>>2],t=b[e+8>>2],b[b[t+4>>2]+12>>2]=r,b[b[f+4>>2]+12>>2]=e,b[e+8>>2]=f,b[r+8>>2]=t,(0|i)==(0|o)){if(!(i=O(40)))return 0;for(f=b[r+16>>2],o=b[f+4>>2],b[i+4>>2]=o,b[o>>2]=i,b[i>>2]=f,b[f+4>>2]=i,b[i+12>>2]=0,b[i+8>>2]=e,f=e;b[f+16>>2]=i,(0|(f=b[f+8>>2]))!=(0|e););b[b[r+16>>2]+8>>2]=r}if((0|a)==(0|u)){if(!(i=O(24)))return 0;for(f=b[r+20>>2],a=b[f+4>>2],b[i+4>>2]=a,b[a>>2]=i,b[i>>2]=f,b[f+4>>2]=i,b[i+12>>2]=0,b[i+16>>2]=0,b[i+8>>2]=e,n[i+20|0]=0,n[i+21|0]=k[f+21|0],f=e;b[f+20>>2]=i,(0|(f=b[f+12>>2]))!=(0|e););b[b[r+20>>2]+8>>2]=r}}return 1}function or(r,e){var f=0,i=0,a=0,n=0,t=0,o=0,k=w(0),u=0,c=0,s=w(0);if(b[r+20>>2]){i=e,f=b[r>>2],r=b[f+8>>2]+1|0,b[f+8>>2]=r;r:{if(!((0|(e=b[f+12>>2]))>=r<<1)){if(b[f+12>>2]=e<<1,a=b[f+4>>2],e=Z(n=b[f>>2],e<<3|4),b[f>>2]=e,!e){b[f>>2]=n,a=2147483647;break r}if(e=Z(b[f+4>>2],8+(b[f+12>>2]<<3)|0),b[f+4>>2]=e,!e){b[f+4>>2]=a,a=2147483647;break r}}if(n=b[f+4>>2],a=r,(e=b[f+16>>2])&&(b[f+16>>2]=b[4+(n+(e<<3)|0)>>2],a=e),t=b[f>>2],b[t+(r<<2)>>2]=a,b[(o=n+(a<<3)|0)>>2]=i,b[o+4>>2]=r,b[f+20>>2]){e:if(r>>>0<2)e=r;else for(k=d[i+28>>2];;){if(f=b[((e=r>>1)<<2)+t>>2],c=b[(u=n+(f<<3)|0)>>2],(s=d[c+28>>2])<k){e=r;break e}if(!(!(d[c+32>>2]<=d[i+32>>2])|k!=s)){e=r;break e}if(b[(r<<2)+t>>2]=f,b[u+4>>2]=r,!((r=e)>>>0>1))break}b[(e<<2)+t>>2]=a,b[o+4>>2]=e}}return a}if(i=(f=b[r+12>>2])+1|0,b[r+12>>2]=i,a=b[r+4>>2],(0|(n=i))<(0|(i=b[r+16>>2])))i=a;else if(b[r+16>>2]=i<<1,i=Z(a,i<<3),b[r+4>>2]=i,!i)return b[r+4>>2]=a,2147483647;return b[(f<<2)+i>>2]=e,-1^f}function br(r){r|=0;var e=0,f=0,i=0,a=0,t=0,o=0,u=0;t=O(40),o=O(40);r:{if(!(i=O(24))||!t|!o){if(t&&Y(t),o&&Y(o),!i)break r;return Y(i),0}if(!(e=O(64)))return 0;for(f=b[r+68>>2],a=b[(f=f>>>0<(a=r- -64|0)>>>0?f:a)+4>>2],u=b[a>>2],b[e+32>>2]=u,b[b[u+4>>2]>>2]=e,b[e>>2]=f,f=a,a=e+32|0,b[f>>2]=a,b[e+16>>2]=0,b[e+20>>2]=0,b[e+12>>2]=a,b[e+4>>2]=a,b[e+24>>2]=0,b[e+28>>2]=0,b[e+48>>2]=0,b[e+52>>2]=0,b[e+44>>2]=e,b[e+40>>2]=a,b[e+36>>2]=e,b[e+56>>2]=0,b[e+60>>2]=0,b[e+8>>2]=e,f=b[r+4>>2],b[t+4>>2]=f,b[f>>2]=t,b[t+12>>2]=0,b[t+8>>2]=e,f=e;b[f+16>>2]=t,(0|(f=b[f+8>>2]))!=(0|e););for(b[o+4>>2]=t,b[t>>2]=o,b[o>>2]=r,b[r+4>>2]=o,b[o+12>>2]=0,b[o+8>>2]=a,f=a;b[f+16>>2]=o,(0|a)!=(0|(f=b[f+8>>2])););for(f=b[r+44>>2],b[i+4>>2]=f,b[f>>2]=i,b[i>>2]=r+40,b[r+44>>2]=i,b[i+12>>2]=0,b[i+16>>2]=0,b[i+8>>2]=e,n[i+20|0]=0,n[i+21|0]=k[r+61|0],f=e;b[f+20>>2]=i,(0|(f=b[f+12>>2]))!=(0|e););}return 0|e}function kr(r,e){var f=0,i=0,a=0,t=0,o=0,u=0;b[r+8>>2]=b[283],f=b[282],b[r>>2]=b[281],b[r+4>>2]=f,f=b[e+20>>2];r:if(k[f+21|0]){a=e;e:{f:{for(;;){if(k[f+20|0])break r;if(n[f+20|0]=1,b[f+16>>2]=i,a=b[b[a+12>>2]+4>>2],i=b[a+20>>2],k[i+21|0]){if(k[i+20|0])break f;if(n[i+20|0]=1,b[i+16>>2]=f,t=t+2|0,a=b[a+8>>2],f=b[a+20>>2],k[f+21|0])continue;break r}break}t|=1;break e}t|=1}i=f}else a=e;o=b[e+4>>2],f=b[o+20>>2];r:if(!(!k[f+21|0]|k[f+20|0])){e:{f:{for(;;){if(n[f+20|0]=1,b[f+16>>2]=i,e=b[o+12>>2],o=b[e+4>>2],i=b[o+20>>2],k[i+21|0]){if(k[i+20|0])break f;if(n[i+20|0]=1,b[i+16>>2]=f,u=u+2|0,e=b[b[o+8>>2]+4>>2],o=b[e+4>>2],f=b[o+20>>2],!k[f+21|0])break r;if(!k[f+20|0])continue;break r}break}u|=1;break e}u|=1}i=f}f=t+u|0,b[r>>2]=f;r:{if(1&t){if(!(1&u))break r;b[r>>2]=f-1,e=e+8|0}else e=a+4|0;e=b[e>>2]}if(b[r+4>>2]=e,i)for(;n[i+20|0]=0,i=b[i+16>>2];);}function ur(r,e,f){e|=0,f|=0,3==(0|(f=b[1716+(r|=0)>>2]))?be[b[r+88>>2]](5):be[0|f](5,b[r+1896>>2]),5==(0|(f=b[r+1724>>2]))?be[b[r+96>>2]](b[b[e+16>>2]+12>>2]):be[0|f](b[b[e+16>>2]+12>>2],b[r+1896>>2]),5==(0|(f=b[r+1724>>2]))?be[b[r+96>>2]](b[b[b[e+4>>2]+16>>2]+12>>2]):be[0|f](b[b[b[e+4>>2]+16>>2]+12>>2],b[r+1896>>2]),f=b[e+20>>2];r:if(k[f+21|0])for(;;){if(k[f+20|0])break r;if(n[f+20|0]=1,e=b[b[e+12>>2]+4>>2],5==(0|(f=b[r+1724>>2]))?be[b[r+96>>2]](b[b[e+16>>2]+12>>2]):be[0|f](b[b[e+16>>2]+12>>2],b[r+1896>>2]),f=b[e+20>>2],!k[f+21|0]|k[f+20|0])break r;if(n[f+20|0]=1,e=b[e+8>>2],5==(0|(f=b[r+1724>>2]))?be[b[r+96>>2]](b[b[b[e+4>>2]+16>>2]+12>>2]):be[0|f](b[b[b[e+4>>2]+16>>2]+12>>2],b[r+1896>>2]),f=b[e+20>>2],!k[f+21|0])break}6==(0|(e=b[r+1728>>2]))?be[b[r+100>>2]]():be[0|e](b[r+1896>>2])}function cr(r,e){e|=0;var f=0;if((0|(f=b[(r|=0)>>2]))!=(0|e))for(;;){r:if(e>>>0>f>>>0){e:switch(0|f){case 0:11==(0|(f=b[r+1732>>2]))?be[b[r+12>>2]](100151):be[0|f](100151,b[r+1896>>2]),b[r>>2]&&cr(r,0),b[r+112>>2]=0,f=1,b[r>>2]=1,n[r+108|0]=0,b[r+1896>>2]=0,b[r+8>>2]=0;break r;case 1:break e;default:break r}if(11==(0|(f=b[r+1732>>2]))?be[b[r+12>>2]](100152):be[0|f](100152,b[r+1896>>2]),1!=b[r>>2]&&cr(r,1),b[r>>2]=2,b[r+4>>2]=0,f=2,b[r+112>>2]<1)break r;n[r+108|0]=1}else{e:switch(f-1|0){case 1:11==(0|(f=b[r+1732>>2]))?be[b[r+12>>2]](100154):be[0|f](100154,b[r+1896>>2]),2!=b[r>>2]&&cr(r,2),f=1,b[r>>2]=1;break r;case 0:break e;default:break r}11==(0|(f=b[r+1732>>2]))?be[b[r+12>>2]](100153):be[0|f](100153,b[r+1896>>2]),(f=b[r+8>>2])&&Pr(f),f=0,b[r+8>>2]=0,b[r>>2]=0,b[r+4>>2]=0}if((0|e)==(0|f))break}}function sr(r,e,f){var i=0,a=0,n=0,t=0,o=0,b=0,k=0,u=0,c=0;r:{e:{f:{i:{a:{n:{t:{o:{b:{k:{if(a=e,e){if(!(i=f))break k;break b}r=(r>>>0)/(f>>>0)|0,F=0;break r}if(!r)break o;break t}if(!(i-1&i))break n;b=0-(o=(y(i)+33|0)-y(a)|0)|0;break i}r=(a>>>0)/0|0,F=0;break r}if((i=32-y(a)|0)>>>0<31)break a;break f}if(1==(0|i))break e;f=31&(i=i?31-y(i-1^i)|0:32),(63&i)>>>0>=32?(a=0,r=e>>>f|0):(a=e>>>f|0,r=((1<<f)-1&e)<<32-f|r>>>f),F=a;break r}o=i+1|0,b=63-i|0}if(i=e,n=31&(a=63&o),a>>>0>=32?(a=0,n=i>>>n|0):(a=i>>>n|0,n=((1<<n)-1&i)<<32-n|r>>>n),i=31&(b&=63),b>>>0>=32?(e=r<<i,r=0):(e=(1<<i)-1&r>>>32-i|e<<i,r<<=i),o)for(b=-1!=(0|(i=f-1|0))?0:-1;n=(k=t=n<<1|e>>>31)-(u=f&(t=b-((a=a<<1|n>>>31)+(i>>>0<t>>>0)|0)>>31))|0,a=a-(k>>>0<u>>>0)|0,e=e<<1|r>>>31,r=c|r<<1,c=t&=1,o=o-1|0;);F=e<<1|r>>>31,r=t|r<<1;break r}r=0,e=0}F=e}return r}function Ar(r,e,f){e|=0,f|=0;var i=0,a=0,n=0,t=0,o=0,k=0,u=0;j=a=j-32|0,n=b[28+(r|=0)>>2],b[a+16>>2]=n,i=b[r+20>>2],b[a+28>>2]=f,b[a+24>>2]=e,e=i-n|0,b[a+20>>2]=e,n=e+f|0,u=2,e=a+16|0;r:{e:{(i=0|_(b[r+60>>2],a+16|0,2,a+12|0))?(b[613]=i,i=-1):i=0;f:{if(!i)for(;;){if((0|(i=b[a+12>>2]))==(0|n))break f;if((0|i)<=-1)break e;if(t=i-((o=(t=b[e+4>>2])>>>0<i>>>0)?t:0)|0,b[(k=(o<<3)+e|0)>>2]=t+b[k>>2],b[(k=(o?12:4)+e|0)>>2]=b[k>>2]-t,n=n-i|0,e=o?e+8|0:e,u=u-o|0,(i=0|_(b[r+60>>2],0|e,0|u,a+12|0))?(b[613]=i,i=-1):i=0,i)break}if(-1!=(0|n))break e}e=b[r+44>>2],b[r+28>>2]=e,b[r+20>>2]=e,b[r+16>>2]=e+b[r+48>>2],r=f;break r}b[r+28>>2]=0,b[r+16>>2]=0,b[r+20>>2]=0,b[r>>2]=32|b[r>>2],r=0,2!=(0|u)&&(r=f-b[e+4>>2]|0)}return j=a+32|0,0|r}function lr(r){var e=0,f=0,i=0,a=0,n=0,t=0,o=w(0),k=0,u=w(0),c=0,s=0,A=0,l=0,v=0,h=0;if(a=b[r+4>>2],f=b[r>>2],i=b[f+4>>2],v=b[(e=a+(i<<3)|0)>>2],!((0|(n=b[r+8>>2]))<1)&&(c=b[(n<<2)+f>>2],b[f+4>>2]=c,b[4+(s=(c<<3)+a|0)>>2]=1,b[e>>2]=0,b[e+4>>2]=b[r+16>>2],A=n-1|0,b[r+8>>2]=A,b[r+16>>2]=i,1!=(0|n))){for(h=(c<<3)+a|0,e=1;(0|A)<=(0|(r=e<<1))||(t=b[(b[((i=1|r)<<2)+f>>2]<<3)+a>>2],o=d[t+28>>2],k=b[(b[(r<<2)+f>>2]<<3)+a>>2],u=d[k+28>>2],!(d[t+32>>2]<=d[k+32>>2])|o!=u&&!(o<u)||(r=i)),!((0|r)>=(0|n)||(i=b[h>>2],o=d[i+28>>2],t=b[(r<<2)+f>>2],l=b[(k=(t<<3)+a|0)>>2],o<(u=d[l+28>>2])|(d[i+32>>2]<=d[l+32>>2]?o==u:0)));)b[(e<<2)+f>>2]=t,b[k+4>>2]=e,e=r;b[(e<<2)+f>>2]=c,b[s+4>>2]=e}return v}function vr(r,e,f){e|=0,f|=0,3==(0|(f=b[1716+(r|=0)>>2]))?be[b[r+88>>2]](6):be[0|f](6,b[r+1896>>2]),5==(0|(f=b[r+1724>>2]))?be[b[r+96>>2]](b[b[e+16>>2]+12>>2]):be[0|f](b[b[e+16>>2]+12>>2],b[r+1896>>2]),5==(0|(f=b[r+1724>>2]))?be[b[r+96>>2]](b[b[b[e+4>>2]+16>>2]+12>>2]):be[0|f](b[b[b[e+4>>2]+16>>2]+12>>2],b[r+1896>>2]),f=b[e+20>>2];r:if(k[f+21|0])for(;;){if(k[f+20|0])break r;if(n[f+20|0]=1,e=b[e+8>>2],5==(0|(f=b[r+1724>>2]))?be[b[r+96>>2]](b[b[b[e+4>>2]+16>>2]+12>>2]):be[0|f](b[b[b[e+4>>2]+16>>2]+12>>2],b[r+1896>>2]),f=b[e+20>>2],!k[f+21|0])break}6==(0|(e=b[r+1728>>2]))?be[b[r+100>>2]]():be[0|e](b[r+1896>>2])}function dr(r,e,f){var i=0,a=0;if(f&&(n[(i=r+f|0)-1|0]=e,n[0|r]=e,!(f>>>0<3||(n[i-2|0]=e,n[r+1|0]=e,n[i-3|0]=e,n[r+2|0]=e,f>>>0<7||(n[i-4|0]=e,n[r+3|0]=e,f>>>0<9||(i=(i=r)+(r=0-r&3)|0,a=p(255&e,16843009),b[i>>2]=a,b[(e=(r=f-r&-4)+i|0)-4>>2]=a,r>>>0<9||(b[i+8>>2]=a,b[i+4>>2]=a,b[e-8>>2]=a,b[e-12>>2]=a,r>>>0<25||(b[i+24>>2]=a,b[i+20>>2]=a,b[i+16>>2]=a,b[i+12>>2]=a,b[e-16>>2]=a,b[e-20>>2]=a,b[e-24>>2]=a,b[e-28>>2]=a,(f=r-(e=4&i|24)|0)>>>0<32))))))))for(a=Or(a,0,1,1),r=F,e=e+i|0;b[e+24>>2]=a,i=r,b[e+28>>2]=i,b[e+16>>2]=a,b[e+20>>2]=i,b[e+8>>2]=a,b[e+12>>2]=i,b[e>>2]=a,b[e+4>>2]=i,e=e+32|0,(f=f-32|0)>>>0>31;);}function hr(r,e,f){r:if(!(e>>>0>20)){e:switch(e-9|0){case 0:return e=b[f>>2],b[f>>2]=e+4,void(b[r>>2]=b[e>>2]);case 1:return e=b[f>>2],b[f>>2]=e+4,e=b[e>>2],b[r>>2]=e,void(b[r+4>>2]=e>>31);case 2:return e=b[f>>2],b[f>>2]=e+4,b[r>>2]=b[e>>2],void(b[r+4>>2]=0);case 3:return e=b[f>>2]+7&-8,b[f>>2]=e+8,f=b[e+4>>2],b[r>>2]=b[e>>2],void(b[r+4>>2]=f);case 4:return e=b[f>>2],b[f>>2]=e+4,e=o[e>>1],b[r>>2]=e,void(b[r+4>>2]=e>>31);case 5:return e=b[f>>2],b[f>>2]=e+4,b[r>>2]=l[e>>1],void(b[r+4>>2]=0);case 6:return e=b[f>>2],b[f>>2]=e+4,e=n[0|e],b[r>>2]=e,void(b[r+4>>2]=e>>31);case 7:return e=b[f>>2],b[f>>2]=e+4,b[r>>2]=k[0|e],void(b[r+4>>2]=0);case 8:return e=b[f>>2]+7&-8,b[f>>2]=e+8,void(h[r>>3]=h[e>>3]);case 9:break e;default:break r}be[0](r,f)}}function pr(r,e,f){var i=w(0),a=w(0),n=0,t=0,o=w(0),k=w(0),u=0,c=w(0),s=w(0);j=t=j+-64|0,u=(i=d[e+28>>2])>(a=d[r+28>>2]);r:{e:{if(!(!(d[r+32>>2]<=d[e+32>>2])|i!=a)||u){if((o=d[f+28>>2])>i|(d[e+32>>2]<=d[f+32>>2]?i==o:0))break r;if(n=1,u)break e}n=0,i==a&&(n=d[r+32>>2]<=d[e+32>>2])}u=n,n=1,(o=d[f+28>>2])>i||(n=0,i==o&&(n=d[e+32>>2]<=d[f+32>>2])),k=d[r+32>>2],c=d[e+32>>2],s=d[f+32>>2],h[t+40>>3]=o,h[t+24>>3]=i,h[t+48>>3]=s,h[t+32>>3]=c,h[t+16>>3]=k,h[t+8>>3]=a,b[t+4>>2]=n,b[t>>2]=u,Gr(1092,t),o=d[f+28>>2],a=d[r+28>>2],i=d[e+28>>2]}return k=w(0),j=t- -64|0,a=w(i-a),i=w(o-i),w(a+i)>w(0)&&(k=a,a=d[e+32>>2],k=w(w(k*w(a-d[f+32>>2]))+w(i*w(a-d[r+32>>2])))),k}function wr(r,e,f){var i=0,a=0,t=0,o=0;i=b[e>>2];r:{if((0|e)!=(0|f))for(;;){if(n[e+15|0]=0,o=b[e+4>>2],t=b[b[o+8>>2]>>2],a=b[t>>2],b[a+16>>2]!=b[i+16>>2]){if(!k[t+15|0])return r=k[e+12|0],f=b[i+20>>2],b[f+8>>2]=i,n[f+21|0]=r,b[i+24>>2]=0,Vr(o),Y(e),i;if(!(a=er(b[b[i+8>>2]+4>>2],b[a+4>>2])))break r;if(!rr(b[t>>2]))break r;b[t>>2]=a,n[t+15|0]=0,b[a+24>>2]=t}if(b[i+8>>2]!=(0|a)){if(!tr(b[b[a+4>>2]+12>>2],a))break r;if(!tr(i,a))break r}if(a=k[e+12|0],i=b[e>>2],o=b[i+20>>2],b[o+8>>2]=i,n[o+21|0]=a,b[i+24>>2]=0,Vr(b[e+4>>2]),Y(e),i=b[t>>2],(0|f)==(0|(e=t)))break}return i}Zr(r+1740|0,1),E()}function mr(r,e,f){switch(e-100100|0){case 0:return void(b[r+88>>2]=f||15);case 6:return void(b[r+1716>>2]=f||3);case 4:return n[r+80|0]=0!=(0|f),void(b[r+92>>2]=f||14);case 10:return n[r+80|0]=0!=(0|f),void(b[r+1720>>2]=f||4);case 1:return void(b[r+96>>2]=f||13);case 7:return void(b[r+1724>>2]=f||5);case 2:return void(b[r+100>>2]=f||12);case 8:return void(b[r+1728>>2]=f||6);case 3:return void(b[r+12>>2]=f||18);case 9:return void(b[r+1732>>2]=f||11);case 5:return void(b[r+76>>2]=f||17);case 11:return void(b[r+1736>>2]=f||8);case 12:return void(b[r+104>>2]=f||16)}11==(0|(e=b[r+1732>>2]))?be[b[r+12>>2]](100900):be[0|e](100900,b[r+1896>>2])}function yr(r,e,f){var i=0,a=0,t=0;if(!(32&k[0|r]))r:{a=e,i=f;e:{if(!(r=b[(e=r)+16>>2])){if(r=k[e+74|0],n[e+74|0]=r-1|r,8&(r=b[e>>2])?(b[e>>2]=32|r,r=-1):(b[e+4>>2]=0,b[e+8>>2]=0,r=b[e+44>>2],b[e+28>>2]=r,b[e+20>>2]=r,b[e+16>>2]=r+b[e+48>>2],r=0),r)break e;r=b[e+16>>2]}if(r-(t=b[e+20>>2])>>>0<i>>>0){be[b[e+36>>2]](e,a,f);break r}f:if(!(n[e+75|0]<0)){for(r=f;;){if(i=r,!r)break f;if(10==k[a+(r=i-1|0)|0])break}if(be[b[e+36>>2]](e,a,i)>>>0<i>>>0)break e;a=i+a|0,f=f-i|0,t=b[e+20>>2]}fr(t,a,f),b[e+20>>2]=b[e+20>>2]+f}}}function gr(r,e,f,i){var a=0,t=0;j=a=j-208|0,b[a+204>>2]=f,dr(a+160|0,0,40),b[a+200>>2]=b[a+204>>2],(0|W(0,e,a+200|0,a+80|0,a+160|0,i))<0||(b[r+76>>2],f=b[r>>2],n[r+74|0]<=0&&(b[r>>2]=-33&f),t=32&f,b[r+48>>2]?W(r,e,a+200|0,a+80|0,a+160|0,i):(b[r+48>>2]=80,b[r+16>>2]=a+80,b[r+28>>2]=a,b[r+20>>2]=a,f=b[r+44>>2],b[r+44>>2]=a,W(r,e,a+200|0,a+80|0,a+160|0,i),f&&(be[b[r+36>>2]](r,0,0),b[r+48>>2]=0,b[r+44>>2]=f,b[r+28>>2]=0,b[r+16>>2]=0,b[r+20>>2]=0)),b[r>>2]=b[r>>2]|t),j=a+208|0}function Er(r,e){r|=0;var f=0,i=0,a=0;if((0|(f=b[40+(e|=0)>>2]))!=(0|(i=e+40|0)))for(;;){if(k[f+21|0]){for(3==(0|(e=b[r+1716>>2]))?be[b[r+88>>2]](2):be[0|e](2,b[r+1896>>2]),e=b[f+8>>2];5==(0|(a=b[r+1724>>2]))?be[b[r+96>>2]](b[b[e+16>>2]+12>>2]):be[0|a](b[b[e+16>>2]+12>>2],b[r+1896>>2]),(0|(e=b[e+12>>2]))!=b[f+8>>2];);6==(0|(e=b[r+1728>>2]))?be[b[r+100>>2]]():be[0|e](b[r+1896>>2])}if((0|i)==(0|(f=b[f>>2])))break}}function Cr(r,e){if(!r)return 0;r:{e:{if(r){if(e>>>0<=127)break e;if(b[b[493]>>2]){if(e>>>0<=2047){n[r+1|0]=63&e|128,n[0|r]=e>>>6|192,r=2;break r}if(!(57344!=(-8192&e)&&e>>>0>=55296)){n[r+2|0]=63&e|128,n[0|r]=e>>>12|224,n[r+1|0]=e>>>6&63|128,r=3;break r}if(e-65536>>>0<=1048575){n[r+3|0]=63&e|128,n[0|r]=e>>>18|240,n[r+2|0]=e>>>6&63|128,n[r+1|0]=e>>>12&63|128,r=4;break r}}else if(57216==(-128&e))break e;b[613]=25,r=-1}else r=1;break r}n[0|r]=e,r=1}return r}function Rr(){var r=0,e=0,f=0;return(r=O(128))?(b[r+8>>2]=0,b[r+12>>2]=0,e=r+40|0,b[r+44>>2]=e,b[r+48>>2]=0,b[r+52>>2]=0,b[r+40>>2]=e,o[r+54>>1]=0,o[r+56>>1]=0,o[r+58>>1]=0,o[r+60>>1]=0,b[r+72>>2]=0,b[r+76>>2]=0,e=r+96|0,b[r+68>>2]=e,f=r- -64|0,b[r+64>>2]=f,b[r+80>>2]=0,b[r+84>>2]=0,b[r+88>>2]=0,b[r+92>>2]=0,b[r+104>>2]=0,b[r+108>>2]=0,b[r+100>>2]=f,b[r+96>>2]=e,b[r+112>>2]=0,b[r+116>>2]=0,b[r+120>>2]=0,b[r+124>>2]=0,b[r>>2]=r,b[r+4>>2]=r,0|r):0}function Mr(r,e,f){r|=0,e|=0,f|=0;var i=0,a=0,n=w(0),t=w(0);return f=b[f>>2],i=b[b[f+4>>2]+16>>2],e=b[e>>2],(0|(a=b[b[e+4>>2]+16>>2]))==(0|(r=b[r+72>>2]))?(0|r)==(0|i)?(e=b[e+16>>2],n=d[e+28>>2],f=b[f+16>>2],t=d[f+28>>2],!(!(d[e+32>>2]<=d[f+32>>2])|n!=t)||n<t?pr(r,e,f)<=w(0)|0:pr(r,f,e)>=w(0)|0):pr(i,r,b[f+16>>2])<=w(0)|0:(e=b[e+16>>2],(0|r)==(0|i)?pr(a,r,e)>=w(0)|0:jr(a,r,e)>=jr(b[b[f+4>>2]+16>>2],r,b[f+16>>2])|0)}function Ir(r){var e=0,f=0,i=0,a=0,n=0,t=w(0),o=w(0),k=0;if(!(e=b[r+12>>2]))return lr(b[r>>2]);if(n=b[r+8>>2],i=b[b[(n+(e<<2)|0)-4>>2]>>2],f=b[r>>2],b[f+8>>2]&&(a=b[b[f+4>>2]+(b[b[f>>2]+4>>2]<<3)>>2],t=d[a+28>>2],o=d[i+28>>2],!(!(d[a+32>>2]<=d[i+32>>2])|t!=o)||t<o))return lr(f);for(f=((0|e)<1?e:1)-1|0;;){if((0|e)<2)return b[r+12>>2]=f,i;if(a=e<<2,e=k=e-1|0,b[b[(a+n|0)-8>>2]>>2])break}return b[r+12>>2]=k,i}function Sr(r,e,f){e|=0,f|=0;var i=0,a=0,n=0,t=0;n=1;r:if((0|(i=b[64+(r|=0)>>2]))!=(0|(a=r- -64|0))){if(t=0-e|0,!f)for(;;)if(r=k[b[i+20>>2]+21|0],b[i+28>>2]=(0|r)==k[b[b[i+4>>2]+20>>2]+21|0]?0:r?e:t,(0|a)==(0|(i=b[i>>2])))break r;for(;;){if(r=b[i>>2],(0|(f=k[b[i+20>>2]+21|0]))==k[b[b[i+4>>2]+20>>2]+21|0]){if(!rr(i)){n=0;break r}}else b[i+28>>2]=f?e:t;if((0|a)==(0|(i=r)))break}}return 0|n}function _r(r,e){var f=0,i=0,a=0;(f=O(16))&&(a=br(b[r+8>>2]))&&(i=b[a+16>>2],d[i+32>>2]=e,b[i+28>>2]=2112929218,i=b[b[a+4>>2]+16>>2],d[i+32>>2]=e,b[i+28>>2]=-34554430,b[r+72>>2]=i,n[f+15|0]=0,n[f+12|0]=0,b[f+8>>2]=0,b[f>>2]=a,n[f+13|0]=1,n[f+14|0]=0,i=f,f=Fr(a=b[r+64>>2],a,f),b[i+4>>2]=f,f)||(Zr(r+1740|0,1),E())}function Pr(r){var e=0,f=0,i=0;if((0|(e=b[40+(r|=0)>>2]))!=(0|(f=r+40|0)))for(;i=b[e>>2],Y(e),(0|f)!=(0|(e=i)););if((0|(e=b[r>>2]))!=(0|r))for(;i=b[e>>2],Y(e),(0|(e=i))!=(0|r););if((0|(e=b[r+64>>2]))!=(0|(f=r- -64|0)))for(;i=b[e>>2],Y(e),(0|f)!=(0|(e=i)););Y(r)}function xr(r){var e=0,f=w(0),i=w(0);if(!(e=b[r+12>>2]))return r=b[r>>2],b[b[r+4>>2]+(b[b[r>>2]+4>>2]<<3)>>2];e=b[b[(b[r+8>>2]+(e<<2)|0)-4>>2]>>2],r=b[r>>2];r:{if(b[r+8>>2]){if(r=b[b[r+4>>2]+(b[b[r>>2]+4>>2]<<3)>>2],(f=d[r+28>>2])<(i=d[e+28>>2]))break r;if(f==i&&d[r+32>>2]<=d[e+32>>2])break r}r=e}return r}function Lr(r,e,f,i){r|=0,e|=0,f|=0,i|=0,f=0;r:{if(e=b[520]){if(!((f=b[e>>2])>>>0<100001)){e=O(12);break r}}else e=O(1200008),b[e+4>>2]=12,b[e>>2]=0,b[520]=e;b[e>>2]=f+1,e=8+(p(f,12)+e|0)|0}d[e>>2]=d[r>>2],d[e+4>>2]=d[r+4>>2],d[e+8>>2]=d[r+8>>2],b[i>>2]=e}function Br(r,e,f){var i=0,a=0,t=0;if(e>>>0<1)i=r;else for(;i=sr(r,e,10),t=a=F,a=Or(i,a,10,0),n[0|(f=f-1|0)]=r-a|48,a=e>>>0>9,r=i,e=t,a;);if(i)for(;r=(i>>>0)/10|0,n[0|(f=f-1|0)]=i-p(r,10)|48,e=i>>>0>9,i=r,e;);return f}function Tr(r,e,f,i){var a=0,n=0,t=0;if(n=b[610]+1|0,b[610]=n,b[r>>2]=n,i)for(;;){if(!b[(t=(a<<3)+f|0)>>2])return b[t>>2]=n,b[4+(r=(a<<3)+f|0)>>2]=e,b[r+8>>2]=0,C(0|i),f;if((0|(a=a+1|0))==(0|i))break}return a=r,r=i<<1,e=Tr(a,e,Z(f,i<<4|8),r),C(0|r),e}function Ur(r,e){var f=0,i=0,a=0;if(A(+r),f=0|u(1),i=0|u(0),a=f,2047!=(0|(f=f>>>20&2047))){if(!f)return f=e,0==r?e=0:(r=Ur(0x10000000000000000*r,e),e=b[e>>2]+-64|0),b[f>>2]=e,r;b[e>>2]=f-1022,c(0,0|i),c(1,-2146435073&a|1071644672),r=+s()}return r}function jr(r,e,f){var i=w(0),a=w(0),n=w(0),t=w(0),o=w(0);return i=d[e+28>>2],a=w(i-d[r+28>>2]),i=w(d[f+28>>2]-i),(n=w(a+i))>w(0)?(o=d[e+32>>2],t=d[((e=i>a)?r:f)+32>>2],i=w(w(o-t)+w(w((e?a:i)/n)*w(t-d[(e?f:r)+32>>2])))):i=w(0),i}function Fr(r,e,f){for(var i=0;e=b[e+8>>2],(i=b[e>>2])&&!(0|be[b[r+16>>2]](b[r+12>>2],i,f)););return(r=O(12))?(b[r>>2]=f,b[r+4>>2]=b[e+4>>2],b[b[e+4>>2]+8>>2]=r,b[r+8>>2]=e,b[e+4>>2]=r,r):0}function Or(r,e,f,i){var a=0,n=0,t=0,o=0,b=0,k=0;return k=p(a=f>>>16|0,n=r>>>16|0),a=(65535&(n=((b=p(t=65535&f,o=65535&r))>>>16|0)+p(n,t)|0))+p(a,o)|0,F=(p(e,f)+k|0)+p(r,i)+(n>>>16)+(a>>>16)|0,65535&b|a<<16}function Dr(r,e,f,i,a){var n=0;if(j=n=j-256|0,!(73728&a|(0|f)<=(0|i))){if(dr(n,255&e,(i=(f=f-i|0)>>>0<256)?f:256),!i)for(;yr(r,n,256),(f=f-256|0)>>>0>255;);yr(r,n,f)}j=n+256|0}function Hr(r,e,f){var i=0,a=0;r:if(f)for(;;){if(!(a=b[(i<<3)+e>>2]))break r;if((0|r)==(0|a))return b[4+((i<<3)+e|0)>>2];if((0|(i=i+1|0))==(0|f))break}return 0}function Qr(r){var e=0,f=0;return(r=(e=b[412])+(f=r+3&-4)|0)>>>0<=e>>>0&&f||r>>>0>ke()<<16>>>0&&!(0|P(0|r))?(b[613]=48,-1):(b[412]=r,e)}function Wr(r){var e=0,f=0,i=0;if(n[b[r>>2]]-48>>>0<10)for(;e=b[r>>2],i=n[0|e],b[r>>2]=e+1,f=(p(f,10)+i|0)-48|0,n[e+1|0]-48>>>0<10;);return f}function qr(r,e){r|=0;var f=0,i=0;(0|(f=b[4+(e|=0)>>2]))<b[e+8>>2]&&(i=b[e>>2]+(p(b[e+12>>2],f)<<2)|0,d[i>>2]=d[r>>2],d[i+4>>2]=d[r+4>>2],b[e+4>>2]=f+1)}function zr(r,e){r|=0,e|=0;var f=w(0),i=w(0);if((f=d[r+28>>2])<(i=d[e+28>>2]))r=1;else{if(f!=i)return 0;r=d[r+32>>2]<=d[e+32>>2]}return 0|r}function Kr(r){var e=0;(e=b[r>>2])&&(Y(b[e+4>>2]),Y(b[e>>2]),Y(e)),(e=b[r+8>>2])&&Y(e),(e=b[r+4>>2])&&Y(e),Y(r)}function Yr(r){r|=0;var e=0;j=e=j-16|0,b[e>>2]=r,j=r=j-16|0,b[r+12>>2]=e,gr(b[288],1078,e,0),j=r+16|0,j=e+16|0}function Nr(r,e,f){r|=0,e=b[20+(e|=0)>>2],b[e+16>>2]=b[r+84>>2],b[r+84>>2]=e,n[e+20|0]=1}function Vr(r){var e=0;e=b[r+4>>2],b[e+8>>2]=b[r+8>>2],b[b[r+8>>2]+4>>2]=e,Y(r)}function Gr(r,e){var f=0;j=f=j-16|0,b[f+12>>2]=e,gr(b[288],r,e,43),j=f+16|0}function Jr(r){var e=0;return(-1>>>(e=31&r)&-2)<<e|(-1<<(r=0-r&31)&-2)>>>r}function Zr(r,e){r|=0,e|=0,b[611]||(b[612]=e,b[611]=r),x()}function Xr(r,e){r|=0,e|=0,b[611]||(b[612]=e,b[611]=r)}function $r(r,e,f,i){return F=0,0}function re(r,e,f,i,a){}function ee(r,e,f,i){}function fe(r){return 0}function ie(r,e){}function ae(){return 0|j}function ne(r){j=r|=0}function te(r){}function oe(){}f=k,t();var be=e([null,Nr,vr,ie,ie,ie,te,ur,re,zr,Mr,ie,oe,te,te,te,te,ee,te,cr,J,Rr,br,ir,tr,K,Zr,Q,Sr,$,Er,N,nr,Pr,qr,te,oe,Lr,Yr,te,fe,Ar,$r,q]);function ke(){return a.byteLength/65536|0}function ue(r){r|=0;var e=0|ke(),t=e+r|0;if(e<t&&t<65536){var u=new ArrayBuffer(p(t,65536));new Int8Array(u).set(n),n=new Int8Array(u),o=new Int16Array(u),b=new Int32Array(u),k=new Uint8Array(u),l=new Uint16Array(u),v=new Uint32Array(u),d=new Float32Array(u),h=new Float64Array(u),a=u,i.buffer=a,f=k}return e}return{n:oe,o:O,p:Y,q:be,r:D,s:ae,t:ne,u:Xr}}return l(r)}(hr)},instantiate:function(r,e){return{then:function(e){var f=new M.Module(r);e({instance:new M.Instance(f)})}}},RuntimeError:Error};y=[],"object"!=typeof M&&X("no native wasm support detected");var I=!1;function S(r,e){r||X("Assertion failed: "+e)}var _,P,x,L="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function B(r,e,f){for(var i=e+f,a=e;r[a]&&!(a>=i);)++a;if(a-e>16&&r.subarray&&L)return L.decode(r.subarray(e,a));for(var n="";e<a;){var t=r[e++];if(128&t){var o=63&r[e++];if(192!=(224&t)){var b=63&r[e++];if((t=224==(240&t)?(15&t)<<12|o<<6|b:(7&t)<<18|o<<12|b<<6|63&r[e++])<65536)n+=String.fromCharCode(t);else{var k=t-65536;n+=String.fromCharCode(55296|k>>10,56320|1023&k)}}else n+=String.fromCharCode((31&t)<<6|o)}else n+=String.fromCharCode(t)}return n}function T(r,e){return r?B(P,r,e):""}function U(r,e){return r%e>0&&(r+=e-r%e),r}function j(r){_=r,a.HEAP8=new Int8Array(r),a.HEAP16=new Int16Array(r),a.HEAP32=x=new Int32Array(r),a.HEAPU8=P=new Uint8Array(r),a.HEAPU16=new Uint16Array(r),a.HEAPU32=new Uint32Array(r),a.HEAPF32=new Float32Array(r),a.HEAPF64=new Float64Array(r)}var F,O=a.INITIAL_MEMORY||4194304;(R=a.wasmMemory?a.wasmMemory:new M.Memory({initial:O/65536,maximum:32768}))&&(_=R.buffer),O=_.byteLength,j(_);var D=[],H=[],Q=[];function W(){if(a.preRun)for("function"==typeof a.preRun&&(a.preRun=[a.preRun]);a.preRun.length;)K(a.preRun.shift());tr(D)}function q(){tr(H)}function z(){if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)N(a.postRun.shift());tr(Q)}function K(r){D.unshift(r)}function Y(r){H.unshift(r)}function N(r){Q.unshift(r)}var V=0,G=null;function J(r){V++,a.monitorRunDependencies&&a.monitorRunDependencies(V)}function Z(r){if(V--,a.monitorRunDependencies&&a.monitorRunDependencies(V),0==V&&G){var e=G;G=null,e()}}function X(r){throw a.onAbort&&a.onAbort(r),m(r+=""),I=!0,r="abort("+r+"). Build with -s ASSERTIONS=1 for more info.",new M.RuntimeError(r)}a.preloadedImages={},a.preloadedAudios={};var $,rr="data:application/octet-stream;base64,";function er(r){return r.startsWith(rr)}function fr(r){return r.startsWith("file://")}function ir(r){try{if(r==$&&y)return new Uint8Array(y);var e=dr(r);if(e)return e;if(c)return c(r);throw"both async and sync fetching of the wasm failed"}catch(m){X(m)}}function ar(){if(!y&&(l||v)){if("function"==typeof fetch&&!fr($))return fetch($,{credentials:"same-origin"}).then((function(r){if(!r.ok)throw"failed to load wasm binary file at '"+$+"'";return r.arrayBuffer()})).catch((function(){return ir($)}));if(u)return new Promise((function(r,e){u($,(function(e){r(new Uint8Array(e))}),e)}))}return Promise.resolve().then((function(){return ir($)}))}function nr(){var r={a:hr};function e(r,e){var f=r.exports;a.asm=f,F=a.asm.q,Y(a.asm.n),Z()}function f(r){e(r.instance)}function i(e){return ar().then((function(e){return M.instantiate(e,r)})).then(e,(function(r){m("failed to asynchronously prepare wasm: "+r),X(r)}))}function n(){return y||"function"!=typeof M.instantiateStreaming||er($)||fr($)||"function"!=typeof fetch?i(f):fetch($,{credentials:"same-origin"}).then((function(e){return M.instantiateStreaming(e,r).then(f,(function(r){return m("wasm streaming compile failed: "+r),m("falling back to ArrayBuffer instantiation"),i(f)}))}))}if(J(),a.instantiateWasm)try{return a.instantiateWasm(r,e)}catch(t){return m("Module.instantiateWasm callback failed with error: "+t),!1}return n(),{}}function tr(r){for(;r.length>0;){var e=r.shift();if("function"!=typeof e){var f=e.func;"number"==typeof f?void 0===e.arg?F.get(f)():F.get(f)(e.arg):f(void 0===e.arg?null:e.arg)}else e(a)}}function or(){throw"longjmp"}function br(r,e,f){P.copyWithin(r,e,e+f)}function kr(r){try{return R.grow(r-_.byteLength+65535>>>16),j(R.buffer),1}catch(e){}}function ur(r){var e=P.length,f=2147483648;if((r>>>=0)>f)return!1;for(var i=1;i<=4;i*=2){var a=e*(1+.2/i);if(a=Math.min(a,r+100663296),kr(Math.min(f,U(Math.max(r,a),65536))))return!0}return!1}er($="libtess-asm.wasm")||($=p($));var cr={mappings:{},buffers:[null,[],[]],printChar:function(r,e){var f=cr.buffers[r];0===e||10===e?((1===r?w:m)(B(f,0)),f.length=0):f.push(e)},varargs:void 0,get:function(){return cr.varargs+=4,x[cr.varargs-4>>2]},getStr:function(r){return T(r)},get64:function(r,e){return r}};function sr(r,e,f,i){for(var a=0,n=0;n<f;n++){for(var t=x[e+8*n>>2],o=x[e+(8*n+4)>>2],b=0;b<o;b++)cr.printChar(r,P[t+b]);a+=o}return x[i>>2]=a,0}function Ar(r){for(var e=[],f=0;f<r.length;f++){var i=r[f];i>255&&(i&=255),e.push(String.fromCharCode(i))}return e.join("")}var lr="function"==typeof atob?atob:function(r){var e,f,i,a,n,t,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",b="",k=0;r=r.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{e=o.indexOf(r.charAt(k++))<<2|(a=o.indexOf(r.charAt(k++)))>>4,f=(15&a)<<4|(n=o.indexOf(r.charAt(k++)))>>2,i=(3&n)<<6|(t=o.indexOf(r.charAt(k++))),b+=String.fromCharCode(e),64!==n&&(b+=String.fromCharCode(f)),64!==t&&(b+=String.fromCharCode(i))}while(k<r.length);return b};function vr(r){if("boolean"==typeof d&&d){var e=Buffer.from(r,"base64");return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}try{for(var f=lr(r),i=new Uint8Array(f.length),a=0;a<f.length;++a)i[a]=f.charCodeAt(a);return i}catch(n){throw new Error("Converting base64 string to bytes failed.")}}function dr(r){if(er(r))return vr(r.slice(rr.length))}var hr={i:or,m:br,h:ur,g:sr,c:C,l:Rr,e:Cr,k:Mr,j:Ir,f:Er,d:gr,a:R,b:E};nr(),a.___wasm_call_ctors=function(){return(a.___wasm_call_ctors=a.asm.n).apply(null,arguments)},a._malloc=function(){return(a._malloc=a.asm.o).apply(null,arguments)},a._free=function(){return(a._free=a.asm.p).apply(null,arguments)},a._triangulate=function(){return(a._triangulate=a.asm.r).apply(null,arguments)};var pr,wr=a.stackSave=function(){return(wr=a.stackSave=a.asm.s).apply(null,arguments)},mr=a.stackRestore=function(){return(mr=a.stackRestore=a.asm.t).apply(null,arguments)},yr=a._setThrew=function(){return(yr=a._setThrew=a.asm.u).apply(null,arguments)};function gr(r,e,f){var i=wr();try{F.get(r)(e,f)}catch(a){if(mr(i),a!==a+0&&"longjmp"!==a)throw a;yr(1,0)}}function Er(r,e){var f=wr();try{F.get(r)(e)}catch(i){if(mr(f),i!==i+0&&"longjmp"!==i)throw i;yr(1,0)}}function Cr(r,e){var f=wr();try{return F.get(r)(e)}catch(i){if(mr(f),i!==i+0&&"longjmp"!==i)throw i;yr(1,0)}}function Rr(r){var e=wr();try{return F.get(r)()}catch(f){if(mr(e),f!==f+0&&"longjmp"!==f)throw f;yr(1,0)}}function Mr(r,e,f){var i=wr();try{return F.get(r)(e,f)}catch(a){if(mr(i),a!==a+0&&"longjmp"!==a)throw a;yr(1,0)}}function Ir(r,e,f,i){var a=wr();try{return F.get(r)(e,f,i)}catch(n){if(mr(a),n!==n+0&&"longjmp"!==n)throw n;yr(1,0)}}function Sr(r){this.name="ExitStatus",this.message="Program terminated with exit("+r+")",this.status=r}function _r(r){function e(){pr||(pr=!0,a.calledRun=!0,I||(q(),a.onRuntimeInitialized&&a.onRuntimeInitialized(),z()))}V>0||(W(),V>0||(a.setStatus?(a.setStatus("Running..."),setTimeout((function(){setTimeout((function(){a.setStatus("")}),1),e()}),1)):e()))}if(G=function r(){pr||_r(),pr||(G=r)},a.run=_r,a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);a.preInit.length>0;)a.preInit.pop()();_r();let Pr=null,xr=null,Lr=null,Br=null;const Tr=i.Module,Ur=2,jr=4e3;let Fr=0;const Or=(r,e,f)=>{Pr||(Pr=Tr._triangulate);let i=Tr.HEAPF32;const a=Tr.HEAP32.BYTES_PER_ELEMENT,n=2,t=i.BYTES_PER_ELEMENT;f>Fr&&(Fr=f,Lr&&(Tr._free(Lr),Lr=0),xr&&(Tr._free(xr),xr=0)),Lr||(Lr=Tr._malloc(f*t)),Br||(Br=Tr._malloc(jr*a));const o=f*Ur;xr||(xr=Tr._malloc(o*t)),i=Tr.HEAPF32,i.set(r,Lr/t),Tr.HEAP32.set(e,Br/a);const b=o/n,k=Pr(Lr,Br,Math.min(e.length,jr),n,xr,b),u=k*n;i=Tr.HEAPF32;const c=i.slice(xr/t,xr/t+u),s={};return s.buffer=c,s.vertexCount=k,s};return i.triangulate=Or,i.whenLoaded()}return{load:r}},void 0!==(i=f())&&(e.exports=i);const n=r({__proto__:null,default:a.exports},[a.exports]);export{n as l};