forked from google/draco
-
Notifications
You must be signed in to change notification settings - Fork 0
/
draco_decoder.js
52 lines (29 loc) · 696 KB
/
draco_decoder.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
var DracoDecoderModule = (function() {
var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
return (
function(DracoDecoderModule) {
DracoDecoderModule = DracoDecoderModule || {};
var Module=typeof DracoDecoderModule!=="undefined"?DracoDecoderModule:{};var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise(function(resolve,reject){readyPromiseResolve=resolve;readyPromiseReject=reject});var isRuntimeInitialized=false;var isModuleParsed=false;Module["onRuntimeInitialized"]=function(){isRuntimeInitialized=true;if(isModuleParsed){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};Module["onModuleParsed"]=function(){isModuleParsed=true;if(isRuntimeInitialized){if(typeof Module["onModuleLoaded"]==="function"){Module["onModuleLoaded"](Module)}}};function isVersionSupported(versionString){if(typeof versionString!=="string")return false;const version=versionString.split(".");if(version.length<2||version.length>3)return false;if(version[0]==1&&version[1]>=0&&version[1]<=4)return true;if(version[0]!=0||version[1]>10)return false;return true}Module["isVersionSupported"]=isVersionSupported;var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var arguments_=[];var thisProgram="./this.program";var quit_=function(status,toThrow){throw toThrow};var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;var nodeFS;var nodePath;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=function shell_read(filename,binary){var ret=tryParseAsDataURI(filename);if(ret){return binary?ret:ret.toString()}if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);return nodeFS["readFileSync"](filename,binary?null:"utf8")};readBinary=function readBinary(filename){var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);quit_=function(status){process["exit"](status)};Module["inspect"]=function(){return"[Emscripten Module object]"}}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){read_=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}readBinary=function readBinary(f){var data;data=tryParseAsDataURI(f);if(data){return data}if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit==="function"){quit_=function(status){quit(status)}}if(typeof print!=="undefined"){if(typeof console==="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!=="undefined"?printErr:print}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!=="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=function shell_read(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){readBinary=function readBinary(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}}}readAsync=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.warn.bind(console);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var STACK_ALIGN=16;function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}function convertJsFunctionToWasm(func,sig){return func}var freeTableIndexes=[];var functionsInTableMap;function getEmptyTableSlot(){if(freeTableIndexes.length){return freeTableIndexes.pop()}try{wasmTable.grow(1)}catch(err){if(!(err instanceof RangeError)){throw err}throw"Unable to grow wasm table. Set ALLOW_TABLE_GROWTH."}return wasmTable.length-1}function addFunctionWasm(func,sig){if(!functionsInTableMap){functionsInTableMap=new WeakMap;for(var i=0;i<wasmTable.length;i++){var item=wasmTable.get(i);if(item){functionsInTableMap.set(item,i)}}}if(functionsInTableMap.has(func)){return functionsInTableMap.get(func)}var ret=getEmptyTableSlot();try{wasmTable.set(ret,func)}catch(err){if(!(err instanceof TypeError)){throw err}var wrapped=convertJsFunctionToWasm(func,sig);wasmTable.set(ret,wrapped)}functionsInTableMap.set(func,ret);return ret}var tempRet0=0;var setTempRet0=function(value){tempRet0=value};var getTempRet0=function(){return tempRet0};var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime;if(Module["noExitRuntime"])noExitRuntime=Module["noExitRuntime"];var WebAssembly={Memory:function(opts){this.buffer=new ArrayBuffer(opts["initial"]*65536)},Module:function(binary){},Instance:function(module,info){this.exports=(
// EMSCRIPTEN_START_ASM
function instantiate(Vn,Wn){function Mn(Xn){Xn.set=(function(T,Yn){this[T]=Yn});Xn.get=(function(T){return this[T]});return Xn}var a=new ArrayBuffer(16);var b=new Int32Array(a);var c=new Float32Array(a);var d=new Float64Array(a);function Nn(Zn){c[2]=Zn}function On(_n){return b[_n]}function Pn(_n,Zn){b[_n]=Zn}function Qn(){return c[2]}function Rn($n,ao){var e=ao.memory;var f=e.buffer;e.grow=Tn;var g=new $n.Int8Array(f);var h=new $n.Int16Array(f);var i=new $n.Int32Array(f);var j=new $n.Uint8Array(f);var k=new $n.Uint16Array(f);var l=new $n.Uint32Array(f);var m=new $n.Float32Array(f);var n=new $n.Float64Array(f);var o=$n.Math.imul;var p=$n.Math.fround;var q=$n.Math.abs;var r=$n.Math.clz32;var s=$n.Math.min;var t=$n.Math.max;var u=$n.Math.floor;var v=$n.Math.ceil;var w=$n.Math.sqrt;var x=ao.abort;var y=$n.NaN;var z=$n.Infinity;var A=ao.__cxa_allocate_exception;var B=ao.__cxa_throw;var C=ao.fd_close;var D=ao.fd_write;var E=ao.abort;var F=ao.emscripten_resize_heap;var G=ao.emscripten_memcpy_big;var H=ao.setTempRet0;var I=ao.fd_seek;var J=5261744;var K=18864;var L=0;
// EMSCRIPTEN_START_FUNCS
function gg(a,b){var c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;m=J-96|0;J=m;i[m+72>>2]=0;i[m+64>>2]=0;i[m+68>>2]=0;i[m+48>>2]=0;i[m+52>>2]=0;i[m+40>>2]=0;i[m+44>>2]=0;i[m+56>>2]=1065353216;i[m+32>>2]=0;i[m+24>>2]=0;i[m+28>>2]=0;A=i[a+124>>2];a:{b:{c:{d:{e:{if((b|0)<1){break e}C=a+400|0;B=a+232|0;D=i[a+216>>2]!=i[a+220>>2];y=1;while(1){h=z;z=h+1|0;f:{g:{h:{i:{j:{if(i[a+420>>2]!=-1){if(Ce(C)){break j}}e=a;if(j[a+308|0]){p=i[a+296>>2];r=i[a+304>>2];c=p+(r>>>3|0)|0;n=i[a+300>>2];if(c>>>0>=n>>>0){break i}d=j[c|0];c=r+1|0;i[a+304>>2]=c;if(!(d>>>(r&7)&1)){break i}u=c>>>3|0;d=p+u|0;k:{if(d>>>0>=n>>>0){d=c;c=0;break k}f=j[d|0];d=r+2|0;i[a+304>>2]=d;u=d>>>3|0;c=f>>>(c&7)&1}f=p+u|0;if(f>>>0<n>>>0){f=j[f|0];i[a+304>>2]=d+1;d=f>>>(d&7)<<1&2}else{d=0}c=(c|d)<<1|1}else{c=1}i[e+416>>2]=c;break g}c=i[a+420>>2];i[a+416>>2]=c;if(c){break g}break h}i[a+416>>2]=0}d=i[m+68>>2];if((d|0)==i[m+64>>2]){break d}s=-1;u=i[a+8>>2];r=i[u+24>>2];c=r;n=d+ -4|0;w=i[n>>2];e=-1;l:{if((w|0)==-1){break l}d=w+1|0;d=(d>>>0)%3|0?d:w+ -2|0;e=-1;if((d|0)==-1){break l}e=i[i[u>>2]+(d<<2)>>2]}d=i[c+(e<<2)>>2];if((d|0)!=-1){c=d+1|0;s=(c>>>0)%3|0?c:d+ -2|0}d=i[u+12>>2];q=o(h,3);c=q+1|0;i[d+(w<<2)>>2]=c;f=c<<2;i[f+d>>2]=w;t=q+2|0;i[d+(s<<2)>>2]=t;h=t<<2;i[h+d>>2]=s;p=-1;c=-1;m:{if((w|0)==-1){break m}d=w+((w>>>0)%3|0?-1:2)|0;c=-1;if((d|0)==-1){break m}c=i[i[u>>2]+(d<<2)>>2]}n:{if((s|0)==-1){break n}d=s+1|0;d=(d>>>0)%3|0?d:s+ -2|0;if((d|0)==-1){break n}p=i[i[u>>2]+(d<<2)>>2]}d=-1;if((c|0)==(e|0)|(e|0)==(p|0)){break c}d=i[u>>2];i[d+(q<<2)>>2]=e;i[d+f>>2]=p;i[d+h>>2]=c;if((c|0)!=-1){i[r+(c<<2)>>2]=t}d=i[a+120>>2]+(e>>>3&536870908)|0;c=i[d>>2];E=d,F=Kn(e)&c,i[E>>2]=F;i[n>>2]=q;hg(B,q);break f}d=-1;o:{p:{q:{r:{s:{t:{u:{v:{w:{switch(c+ -1|0){case 2:case 4:e=i[m+68>>2];if((e|0)==i[m+64>>2]){break d}t=i[a+8>>2];d=i[t+12>>2];q=o(h,3);p=(c|0)==5;n=q+(p?2:1)|0;c=n<<2;u=i[e+ -4>>2];i[d+c>>2]=u;i[d+(u<<2)>>2]=n;$f(t+24|0,11508);d=-1;f=i[a+8>>2];r=i[f+24>>2];if(i[f+28>>2]-r>>2>(A|0)){break c}e=q+2|0;f=i[f>>2];s=f+c|0;d=i[t+28>>2]-i[t+24>>2]|0;c=(d>>2)+ -1|0;i[s>>2]=c;if(d){i[r+(c<<2)>>2]=n}e=p?q:e;n=f+(p+q<<2)|0;x:{y:{z:{if((u|0)!=-1){c=u+((u>>>0)%3|0?-1:2)|0;if((c|0)==-1){break z}c=i[f+(c<<2)>>2];i[f+(e<<2)>>2]=c;if((c|0)==-1){break y}i[r+(c<<2)>>2]=e;break y}i[f+(e<<2)>>2]=-1;d=-1;break x}i[f+(e<<2)>>2]=-1}c=u+1|0;c=(c>>>0)%3|0?c:u+ -2|0;d=-1;if((c|0)==-1){break x}d=i[f+(c<<2)>>2]}i[n>>2]=d;d=i[m+68>>2];i[d+ -4>>2]=q;break v;case 0:p=i[m+68>>2];e=i[m+64>>2];if((p|0)==(e|0)){break d}n=p+ -4|0;w=i[n>>2];i[m+68>>2]=n;q=i[m+44>>2];if(!q){break s}d=i[m+40>>2];t=Jn(q)>>>0>1;f=h&q+2147483647;A:{if(!t){break A}c=h;f=c;if(c>>>0<q>>>0){break A}f=(h>>>0)%(q>>>0)|0}c=i[d+(f<<2)>>2];if(!c){break s}d=i[c>>2];if(!d){break s}r=q+ -1|0;while(1){B:{c=i[d+4>>2];C:{if((h|0)!=(c|0)){D:{if(!t){c=c&r;break D}if(c>>>0<q>>>0){break D}c=(c>>>0)%(q>>>0)|0}if((c|0)!=(f|0)){break s}break C}if((h|0)==i[d+8>>2]){break B}}d=i[d>>2];if(d){continue}break s}break}if((n|0)!=i[m+72>>2]){i[n>>2]=i[d+12>>2];i[m+68>>2]=p;c=e;break r}r=n-e|0;p=r>>2;n=p+1|0;if(n>>>0>=1073741824){break u}f=r>>1;n=p>>>0<536870911?f>>>0<n>>>0?n:f:1073741823;c=0;E:{if(!n){break E}if(n>>>0>=1073741824){break a}c=Dm(n<<2)}f=c+(p<<2)|0;i[f>>2]=i[d+12>>2];d=(n<<2)+c|0;p=f+4|0;if((r|0)>=1){pn(c,e,r)}i[m+72>>2]=d;i[m+68>>2]=p;i[m+64>>2]=c;if(!e){break r}nn(e);p=i[m+68>>2];c=i[m+64>>2];break r;case 6:break w;default:break c}}c=i[a+8>>2];$f(c+24|0,11508);e=i[a+8>>2];q=o(h,3);p=i[c+28>>2]-i[c+24>>2]|0;r=p>>2;f=r+ -1|0;i[i[e>>2]+(q<<2)>>2]=f;$f(e+24|0,11508);n=q+1|0;i[i[e>>2]+(n<<2)>>2]=(i[e+28>>2]-i[e+24>>2]>>2)+ -1;c=i[a+8>>2];$f(c+24|0,11508);e=q+2|0;i[i[c>>2]+(e<<2)>>2]=(i[c+28>>2]-i[c+24>>2]>>2)+ -1;c=i[a+8>>2];t=i[c+24>>2];if(i[c+28>>2]-t>>2>(A|0)){break c}F:{G:{if(!p){i[t+(r<<2)>>2]=n;d=1;break G}i[t+(f<<2)>>2]=q;d=0;if((p|0)==-4){break G}i[t+(r<<2)>>2]=n;d=r+1|0;if((d|0)==-1){break F}}i[t+(d<<2)>>2]=e}c=i[m+68>>2];if((c|0)!=i[m+72>>2]){i[c>>2]=q;d=c+4|0;i[m+68>>2]=d;break v}p=i[m+64>>2];n=c-p|0;f=n>>2;e=f+1|0;if(e>>>0>=1073741824){break t}d=n>>1;e=f>>>0<536870911?d>>>0<e>>>0?e:d:1073741823;c=0;H:{if(!e){break H}if(e>>>0>=1073741824){break a}c=Dm(e<<2)}d=c+(f<<2)|0;i[d>>2]=q;e=c+(e<<2)|0;d=d+4|0;if((n|0)>=1){pn(c,p,n)}i[m+72>>2]=e;i[m+68>>2]=d;i[m+64>>2]=c;if(!p){break v}nn(p);d=i[m+68>>2]}hg(B,i[d+ -4>>2]);d=i[a+40>>2];if((d|0)==i[a+36>>2]){break f}h=(h^-1)+b|0;while(1){c=i[d+ -8>>2];if(c>>>0>h>>>0){break q}if((c|0)!=(h|0)){break f}e=j[d+ -4|0];c=d+ -12|0;d=i[c>>2];i[a+40>>2]=c;if((d|0)<0){break q}f=i[i[m+68>>2]+ -4>>2];i[m+20>>2]=(d^-1)+b;i[m+88>>2]=m+20;ag(m,m+40|0,m+20|0,m+88|0);d=i[m>>2];I:{if(e&1){c=-1;if((f|0)==-1){break I}c=f+1|0;c=(c>>>0)%3|0?c:f+ -2|0;break I}c=-1;if((f|0)==-1){break I}c=f+ -1|0;if((f>>>0)%3|0){break I}c=f+2|0}i[d+12>>2]=c;d=i[a+40>>2];if((d|0)!=i[a+36>>2]){continue}break}break f}Sm();x()}Sm();x()}p=n;c=e}if((c|0)==(p|0)){break q}r=i[p+ -4>>2];d=(r|0)==-1;u=i[a+8>>2];if(i[i[u+12>>2]+(r<<2)>>2]!=-1?!d:0){break q}f=(w|0)==-1;q=i[u+12>>2];if(i[q+(w<<2)>>2]!=-1?!f:0){break q}t=o(h,3);h=t+2|0;i[q+(r<<2)>>2]=h;n=h<<2;i[q+n>>2]=r;c=t+1|0;i[q+(w<<2)>>2]=c;e=c<<2;i[e+q>>2]=w;if(d){break p}v=-1;y=-1;s=i[u>>2];d=s+(t<<2)|0;c=r+((r>>>0)%3|0?-1:2)|0;if((c|0)!=-1){y=i[(c<<2)+s>>2]}i[d>>2]=y;c=r+1|0;c=(c>>>0)%3|0?c:r+ -2|0;if((c|0)==-1){break o}v=i[(c<<2)+s>>2];break o}d=-1;if(y&1){break c}break e}y=-1;s=i[u>>2];i[s+(t<<2)>>2]=-1;v=-1}i[e+s>>2]=v;J:{K:{L:{if(!f){c=w+((w>>>0)%3|0?-1:2)|0;if((c|0)==-1){break L}c=i[(c<<2)+s>>2];i[n+s>>2]=c;if((c|0)==-1){break K}i[i[u+24>>2]+(c<<2)>>2]=h;break K}i[n+s>>2]=-1;r=-1;d=-1;break J}i[n+s>>2]=-1}r=-1;c=w+1|0;c=(c>>>0)%3|0?c:w+ -2|0;d=-1;if((c|0)==-1){break J}r=i[(c<<2)+s>>2];d=c}h=i[a+388>>2];e=y<<2;c=h+e|0;f=c;n=i[c>>2];c=r<<2;i[f>>2]=n+i[c+h>>2];h=c;c=i[u+24>>2];h=h+c|0;if((y|0)!=-1){i[c+e>>2]=i[h>>2]}M:{if((d|0)==-1){break M}while(1){i[(d<<2)+s>>2]=y;c=d+1|0;c=(c>>>0)%3|0?c:d+ -2|0;if((c|0)==-1){break M}d=i[q+(c<<2)>>2];if((d|0)==-1){break M}c=d+1|0;d=(c>>>0)%3|0?c:d+ -2|0;if((d|0)!=-1){continue}break}}i[h>>2]=-1;N:{if(D){break N}c=i[m+28>>2];if((c|0)!=i[m+32>>2]){i[c>>2]=r;i[m+28>>2]=c+4;break N}O:{n=i[m+24>>2];f=c-n|0;h=f>>2;e=h+1|0;if(e>>>0<1073741824){d=f>>1;e=h>>>0<536870911?d>>>0<e>>>0?e:d:1073741823;c=0;P:{if(!e){break P}if(e>>>0>=1073741824){break O}c=Dm(e<<2)}d=c+(h<<2)|0;i[d>>2]=r;e=c+(e<<2)|0;d=d+4|0;if((f|0)>=1){pn(c,n,f)}i[m+32>>2]=e;i[m+28>>2]=d;i[m+24>>2]=c;if(!n){break N}nn(n);p=i[m+68>>2];break N}Sm();x()}break a}i[p+ -4>>2]=t;hg(B,t)}y=(z|0)<(b|0);if((b|0)!=(z|0)){continue}break}z=b}d=-1;y=i[a+8>>2];if(i[y+28>>2]-i[y+24>>2]>>2>(A|0)){break c}Q:{R:{S:{v=i[m+68>>2];if((v|0)!=i[m+64>>2]){C=a+72|0;b=a+60|0;r=a+312|0;while(1){c=v+ -4|0;t=i[c>>2];i[m+68>>2]=c;T:{U:{V:{W:{if(k[a+270>>1]<=513){if(!j[a+364|0]){break V}e=i[a+360>>2];c=i[a+352>>2]+(e>>>3|0)|0;if(c>>>0>=l[a+356>>2]){break U}c=j[c|0];i[a+360>>2]=e+1;c=c>>>(e&7)&1;break W}c=Ce(r)}if(!c){break U}}p=i[a+8>>2];w=i[p>>2];if((z|0)>=((i[p+4>>2]-w>>2>>>0)/3|0)){break d}h=-1;s=-1;n=i[p+24>>2];f=n;c=-1;X:{if((t|0)==-1){break X}e=t+1|0;e=(e>>>0)%3|0?e:t+ -2|0;c=-1;if((e|0)==-1){break X}c=i[w+(e<<2)>>2]}f=i[f+(c<<2)>>2];Y:{if((f|0)==-1){break Y}e=f+1|0;e=(e>>>0)%3|0?e:f+ -2|0;if((e|0)==-1){break Y}h=e+1|0;h=(h>>>0)%3|0?h:e+ -2|0;if((h|0)!=-1){s=i[w+(h<<2)>>2]}h=e}u=-1;D=-1;n=i[n+(s<<2)>>2];f=-1;Z:{if((n|0)==-1){break Z}e=n+1|0;e=(e>>>0)%3|0?e:n+ -2|0;f=-1;if((e|0)==-1){break Z}f=e+1|0;f=(f>>>0)%3|0?f:e+ -2|0;if((f|0)!=-1){D=i[w+(f<<2)>>2]}f=e}A=i[p+12>>2];q=o(z,3);p=q<<2;i[A+p>>2]=t;i[A+(t<<2)>>2]=q;B=q+1|0;n=B<<2;i[n+A>>2]=h;i[A+(h<<2)>>2]=B;t=q+2|0;e=t<<2;i[e+A>>2]=f;i[A+(f<<2)>>2]=t;i[p+w>>2]=s;n=n+w|0;i[n>>2]=D;f=e+w|0;i[f>>2]=c;p=i[a+120>>2];h=B>>>0<q>>>0?-1:s;e=p+(h>>>3&536870908)|0;c=i[e>>2];E=e,F=Kn(h)&c,i[E>>2]=F;u=(B|0)!=-1?i[n>>2]:u;e=p+(u>>>3&536870908)|0;c=i[e>>2];E=e,F=Kn(u)&c,i[E>>2]=F;v=-1;v=(t|0)!=-1?i[f>>2]:v;e=p+(v>>>3&536870908)|0;c=i[e>>2];E=e,F=Kn(v)&c,i[E>>2]=F;v=i[a+64>>2];e=i[a+68>>2];if((v|0)==e<<5){if((v+1|0)<=-1){break S}c=b;if(v>>>0<=1073741822){h=v+32&-32;e=e<<6;e=e>>>0<h>>>0?h:e}else{e=2147483647}Qc(c,e);v=i[a+64>>2]}z=z+1|0;i[a+64>>2]=v+1;c=i[a+60>>2]+(v>>>3&536870908)|0;i[c>>2]=i[c>>2]|1<<v;c=i[a+76>>2];if((c|0)!=i[a+80>>2]){i[c>>2]=q;i[a+76>>2]=c+4;break T}p=i[C>>2];n=c-p|0;f=n>>2;h=f+1|0;if(h>>>0>=1073741824){break R}e=n>>1;h=f>>>0<536870911?e>>>0<h>>>0?h:e:1073741823;c=0;_:{if(!h){break _}if(h>>>0>=1073741824){break a}c=Dm(h<<2)}e=c+(f<<2)|0;i[e>>2]=q;h=c+(h<<2)|0;e=e+4|0;if((n|0)>=1){pn(c,p,n)}i[a+80>>2]=h;i[a+76>>2]=e;i[a+72>>2]=c;if(!p){break T}nn(p);break T}c=i[a+64>>2];f=i[a+68>>2];if((c|0)==f<<5){if((c+1|0)<=-1){break S}e=b;if(c>>>0<=1073741822){h=c+32&-32;c=f<<6;c=c>>>0<h>>>0?h:c}else{c=2147483647}Qc(e,c);c=i[a+64>>2]}i[a+64>>2]=c+1;h=i[a+60>>2]+(c>>>3&536870908)|0;e=i[h>>2];E=h,F=Kn(c)&e,i[E>>2]=F;c=i[a+76>>2];if((c|0)!=i[a+80>>2]){i[c>>2]=t;i[a+76>>2]=c+4;break T}p=i[C>>2];n=c-p|0;f=n>>2;h=f+1|0;if(h>>>0>=1073741824){break R}e=n>>1;h=f>>>0<536870911?e>>>0<h>>>0?h:e:1073741823;c=0;$:{if(!h){break $}if(h>>>0>=1073741824){break Q}c=Dm(h<<2)}e=c+(f<<2)|0;i[e>>2]=t;h=c+(h<<2)|0;e=e+4|0;if((n|0)>=1){pn(c,p,n)}i[a+80>>2]=h;i[a+76>>2]=e;i[a+72>>2]=c;if(!p){break T}nn(p)}v=i[m+68>>2];if((v|0)!=i[m+64>>2]){continue}break}y=i[a+8>>2]}if(((i[y+4>>2]-i[y>>2]>>2>>>0)/3|0)!=(z|0)){break c}v=i[y+24>>2];d=i[y+28>>2]-v>>2;s=i[m+24>>2];e=i[m+28>>2];if((s|0)==(e|0)){break b}while(1){h=i[s>>2];z=d+ -1|0;aa:{if(i[(z<<2)+v>>2]!=-1){c=d;break aa}v=i[y+24>>2];while(1){z=d+ -2|0;c=d+ -1|0;d=c;if(i[(z<<2)+v>>2]==-1){continue}break}}if(z>>>0>=h>>>0){i[m>>2]=y;b=z<<2;d=i[b+v>>2];g[m+12|0]=1;i[m+8>>2]=d;i[m+4>>2]=d;f=b;if((d|0)!=-1){i[i[y>>2]+(d<<2)>>2]=h;Jd(m);d=i[m+8>>2];if((d|0)!=-1){while(1){i[i[i[a+8>>2]>>2]+(d<<2)>>2]=h;Jd(m);d=i[m+8>>2];if((d|0)!=-1){continue}break}}y=i[a+8>>2]}b=i[y+24>>2];d=f+b|0;if((h|0)!=-1){i[b+(h<<2)>>2]=i[d>>2]}i[d>>2]=-1;n=1<<h;b=i[a+120>>2];h=b+(h>>>3&536870908)|0;d=h;f=b+(z>>>3&536870908)|0;b=1<<z;z=n|i[h>>2];ba:{if(i[f>>2]&b){break ba}z=i[h>>2]&(n^-1)}i[d>>2]=z;i[f>>2]=i[f>>2]&(b^-1);c=c+ -1|0}d=c;s=s+4|0;if((e|0)==(s|0)){break c}v=i[y+24>>2];continue}}Sm();x()}Sm();x()}break a}d=-1}s=i[m+24>>2]}if(s){i[m+28>>2]=s;nn(s)}a=i[m+48>>2];if(a){while(1){b=i[a>>2];nn(a);a=b;if(a){continue}break}}a=i[m+40>>2];i[m+40>>2]=0;if(a){nn(a)}a=i[m+64>>2];if(a){i[m+68>>2]=a;nn(a)}J=m+96|0;return d}Ba(12220);x()}function mn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;p=J-16|0;J=p;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{l:{if(a>>>0<=244){g=i[4332];f=a>>>0<11?16:a+11&-8;a=f>>>3|0;b=g>>>a|0;if(b&3){c=a+((b^-1)&1)|0;f=c<<3;b=i[f+17376>>2];a=b+8|0;d=i[b+8>>2];f=f+17368|0;m:{if((d|0)==(f|0)){q=17328,r=Kn(c)&g,i[q>>2]=r;break m}i[d+12>>2]=f;i[f+8>>2]=d}c=c<<3;i[b+4>>2]=c|3;b=b+c|0;i[b+4>>2]=i[b+4>>2]|1;break a}k=i[4334];if(f>>>0<=k>>>0){break l}if(b){b=b<<a;a=2<<a;a=b&(0-a|a);a=(0-a&a)+ -1|0;b=a>>>12&16;c=b;a=a>>>b|0;b=a>>>5&8;c=c|b;a=a>>>b|0;b=a>>>2&4;c=c|b;a=a>>>b|0;b=a>>>1&2;c=c|b;a=a>>>b|0;b=a>>>1&1;c=(c|b)+(a>>>b|0)|0;d=c<<3;b=i[d+17376>>2];a=i[b+8>>2];d=d+17368|0;n:{if((a|0)==(d|0)){g=Kn(c)&g;i[4332]=g;break n}i[a+12>>2]=d;i[d+8>>2]=a}a=b+8|0;i[b+4>>2]=f|3;e=b+f|0;c=c<<3;f=c-f|0;i[e+4>>2]=f|1;i[b+c>>2]=f;if(k){c=k>>>3|0;b=(c<<3)+17368|0;d=i[4337];c=1<<c;o:{if(!(c&g)){i[4332]=c|g;c=b;break o}c=i[b+8>>2]}i[b+8>>2]=d;i[c+12>>2]=d;i[d+12>>2]=b;i[d+8>>2]=c}i[4337]=e;i[4334]=f;break a}n=i[4333];if(!n){break l}a=(n&0-n)+ -1|0;b=a>>>12&16;c=b;a=a>>>b|0;b=a>>>5&8;c=c|b;a=a>>>b|0;b=a>>>2&4;c=c|b;a=a>>>b|0;b=a>>>1&2;c=c|b;a=a>>>b|0;b=a>>>1&1;b=i[((c|b)+(a>>>b|0)<<2)+17632>>2];e=(i[b+4>>2]&-8)-f|0;c=b;while(1){p:{a=i[c+16>>2];if(!a){a=i[c+20>>2];if(!a){break p}}d=(i[a+4>>2]&-8)-f|0;c=d>>>0<e>>>0;e=c?d:e;b=c?a:b;c=a;continue}break}o=b+f|0;if(o>>>0<=b>>>0){break k}m=i[b+24>>2];d=i[b+12>>2];if((d|0)!=(b|0)){a=i[b+8>>2];i[a+12>>2]=d;i[d+8>>2]=a;break b}c=b+20|0;a=i[c>>2];if(!a){a=i[b+16>>2];if(!a){break j}c=b+16|0}while(1){h=c;d=a;c=a+20|0;a=i[c>>2];if(a){continue}c=d+16|0;a=i[d+16>>2];if(a){continue}break}i[h>>2]=0;break b}f=-1;if(a>>>0>4294967231){break l}a=a+11|0;f=a&-8;k=i[4333];if(!k){break l}h=31;e=0-f|0;if(f>>>0<=16777215){b=a>>>8|0;a=b+1048320>>>16&8;c=b<<a;b=c+520192>>>16&4;g=c<<b;c=g+245760>>>16&2;a=(g<<c>>>15|0)-(c|(a|b))|0;h=(a<<1|f>>>a+21&1)+28|0}c=i[(h<<2)+17632>>2];q:{r:{s:{if(!c){a=0;break s}a=0;b=f<<((h|0)==31?0:25-(h>>>1|0)|0);while(1){t:{g=(i[c+4>>2]&-8)-f|0;if(g>>>0>=e>>>0){break t}d=c;e=g;if(e){break t}e=0;a=c;break r}g=i[c+20>>2];c=i[((b>>>29&4)+c|0)+16>>2];a=g?(g|0)==(c|0)?a:g:a;b=b<<1;if(c){continue}break}}if(!(a|d)){a=2<<h;a=(0-a|a)&k;if(!a){break l}a=(a&0-a)+ -1|0;b=a>>>12&16;c=b;a=a>>>b|0;b=a>>>5&8;c=c|b;a=a>>>b|0;b=a>>>2&4;c=c|b;a=a>>>b|0;b=a>>>1&2;c=c|b;a=a>>>b|0;b=a>>>1&1;a=i[((c|b)+(a>>>b|0)<<2)+17632>>2]}if(!a){break q}}while(1){c=(i[a+4>>2]&-8)-f|0;b=c>>>0<e>>>0;e=b?c:e;d=b?a:d;b=i[a+16>>2];if(b){a=b}else{a=i[a+20>>2]}if(a){continue}break}}if(!d|e>>>0>=i[4334]-f>>>0){break l}h=d+f|0;if(h>>>0<=d>>>0){break k}m=i[d+24>>2];b=i[d+12>>2];if((d|0)!=(b|0)){a=i[d+8>>2];i[a+12>>2]=b;i[b+8>>2]=a;break c}c=d+20|0;a=i[c>>2];if(!a){a=i[d+16>>2];if(!a){break i}c=d+16|0}while(1){g=c;b=a;c=a+20|0;a=i[c>>2];if(a){continue}c=b+16|0;a=i[b+16>>2];if(a){continue}break}i[g>>2]=0;break c}b=i[4334];if(b>>>0>=f>>>0){a=i[4337];c=b-f|0;u:{if(c>>>0>=16){i[4334]=c;d=a+f|0;i[4337]=d;i[d+4>>2]=c|1;i[a+b>>2]=c;i[a+4>>2]=f|3;break u}i[4337]=0;i[4334]=0;i[a+4>>2]=b|3;b=a+b|0;i[b+4>>2]=i[b+4>>2]|1}a=a+8|0;break a}d=i[4335];if(d>>>0>f>>>0){b=d-f|0;i[4335]=b;a=i[4338];c=a+f|0;i[4338]=c;i[c+4>>2]=b|1;i[a+4>>2]=f|3;a=a+8|0;break a}a=0;e=f+47|0;c=e;if(i[4450]){b=i[4452]}else{i[4453]=-1;i[4454]=-1;i[4451]=4096;i[4452]=4096;i[4450]=p+12&-16^1431655768;i[4455]=0;i[4443]=0;b=4096}g=c+b|0;h=0-b|0;c=g&h;if(c>>>0<=f>>>0){break a}b=i[4442];if(b){k=i[4440];m=k+c|0;if(m>>>0<=k>>>0|m>>>0>b>>>0){break a}}if(j[17772]&4){break f}v:{w:{b=i[4338];if(b){a=17776;while(1){k=i[a>>2];if(k+i[a+4>>2]>>>0>b>>>0?k>>>0<=b>>>0:0){break w}a=i[a+8>>2];if(a){continue}break}}b=on(0);if((b|0)==-1){break g}g=c;a=i[4451];d=a+ -1|0;if(d&b){g=(c-b|0)+(b+d&0-a)|0}if(g>>>0<=f>>>0|g>>>0>2147483646){break g}a=i[4442];if(a){d=i[4440];h=d+g|0;if(h>>>0<=d>>>0|h>>>0>a>>>0){break g}}a=on(g);if((b|0)!=(a|0)){break v}break e}g=h&g-d;if(g>>>0>2147483646){break g}b=on(g);if((b|0)==(i[a>>2]+i[a+4>>2]|0)){break h}a=b}if(!((a|0)==-1|f+48>>>0<=g>>>0)){b=i[4452];b=b+(e-g|0)&0-b;if(b>>>0>2147483646){b=a;break e}if((on(b)|0)!=-1){g=b+g|0;b=a;break e}on(0-g|0);break g}b=a;if((a|0)!=-1){break e}break g}x()}d=0;break b}b=0;break c}if((b|0)!=-1){break e}}i[4443]=i[4443]|4}if(c>>>0>2147483646){break d}b=on(c);a=on(0);if(b>>>0>=a>>>0|(b|0)==-1|(a|0)==-1){break d}g=a-b|0;if(g>>>0<=f+40>>>0){break d}}a=i[4440]+g|0;i[4440]=a;if(a>>>0>l[4441]){i[4441]=a}x:{y:{z:{e=i[4338];if(e){a=17776;while(1){c=i[a>>2];d=i[a+4>>2];if((c+d|0)==(b|0)){break z}a=i[a+8>>2];if(a){continue}break}break y}a=i[4336];if(!(b>>>0>=a>>>0?a:0)){i[4336]=b}a=0;i[4445]=g;i[4444]=b;i[4340]=-1;i[4341]=i[4450];i[4447]=0;while(1){c=a<<3;d=c+17368|0;i[c+17376>>2]=d;i[c+17380>>2]=d;a=a+1|0;if((a|0)!=32){continue}break}a=g+ -40|0;c=b+8&7?-8-b&7:0;d=a-c|0;i[4335]=d;c=b+c|0;i[4338]=c;i[c+4>>2]=d|1;i[(a+b|0)+4>>2]=40;i[4339]=i[4454];break x}if(j[a+12|0]&8|b>>>0<=e>>>0|c>>>0>e>>>0){break y}i[a+4>>2]=d+g;a=e+8&7?-8-e&7:0;b=a+e|0;i[4338]=b;c=i[4335]+g|0;a=c-a|0;i[4335]=a;i[b+4>>2]=a|1;i[(c+e|0)+4>>2]=40;i[4339]=i[4454];break x}d=i[4336];if(b>>>0<d>>>0){i[4336]=b;d=0}c=b+g|0;a=17776;A:{B:{C:{D:{E:{F:{while(1){if((c|0)!=i[a>>2]){a=i[a+8>>2];if(a){continue}break F}break}if(!(j[a+12|0]&8)){break E}}a=17776;while(1){c=i[a>>2];if(c>>>0<=e>>>0){d=c+i[a+4>>2]|0;if(d>>>0>e>>>0){break D}}a=i[a+8>>2];continue}}i[a>>2]=b;i[a+4>>2]=i[a+4>>2]+g;m=(b+8&7?-8-b&7:0)+b|0;i[m+4>>2]=f|3;b=c+(c+8&7?-8-c&7:0)|0;a=(b-m|0)-f|0;h=f+m|0;if((b|0)==(e|0)){i[4338]=h;a=i[4335]+a|0;i[4335]=a;i[h+4>>2]=a|1;break B}if(i[4337]==(b|0)){i[4337]=h;a=i[4334]+a|0;i[4334]=a;i[h+4>>2]=a|1;i[a+h>>2]=a;break B}c=i[b+4>>2];if((c&3)==1){n=c&-8;G:{if(c>>>0<=255){f=c>>>3|0;c=i[b+8>>2];d=i[b+12>>2];if((d|0)==(c|0)){q=17328,r=i[4332]&Kn(f),i[q>>2]=r;break G}i[c+12>>2]=d;i[d+8>>2]=c;break G}k=i[b+24>>2];g=i[b+12>>2];H:{if((g|0)!=(b|0)){c=i[b+8>>2];i[c+12>>2]=g;i[g+8>>2]=c;break H}I:{e=b+20|0;f=i[e>>2];if(f){break I}e=b+16|0;f=i[e>>2];if(f){break I}g=0;break H}while(1){c=e;g=f;e=f+20|0;f=i[e>>2];if(f){continue}e=g+16|0;f=i[g+16>>2];if(f){continue}break}i[c>>2]=0}if(!k){break G}c=i[b+28>>2];d=(c<<2)+17632|0;J:{if(i[d>>2]==(b|0)){i[d>>2]=g;if(g){break J}q=17332,r=i[4333]&Kn(c),i[q>>2]=r;break G}i[k+(i[k+16>>2]==(b|0)?16:20)>>2]=g;if(!g){break G}}i[g+24>>2]=k;c=i[b+16>>2];if(c){i[g+16>>2]=c;i[c+24>>2]=g}c=i[b+20>>2];if(!c){break G}i[g+20>>2]=c;i[c+24>>2]=g}b=b+n|0;a=a+n|0}i[b+4>>2]=i[b+4>>2]&-2;i[h+4>>2]=a|1;i[a+h>>2]=a;if(a>>>0<=255){b=a>>>3|0;a=(b<<3)+17368|0;c=i[4332];b=1<<b;K:{if(!(c&b)){i[4332]=b|c;b=a;break K}b=i[a+8>>2]}i[a+8>>2]=h;i[b+12>>2]=h;i[h+12>>2]=a;i[h+8>>2]=b;break B}e=31;if(a>>>0<=16777215){c=a>>>8|0;b=c+1048320>>>16&8;d=c<<b;c=d+520192>>>16&4;f=d<<c;d=f+245760>>>16&2;b=(f<<d>>>15|0)-(d|(b|c))|0;e=(b<<1|a>>>b+21&1)+28|0}i[h+28>>2]=e;i[h+16>>2]=0;i[h+20>>2]=0;b=(e<<2)+17632|0;c=i[4333];d=1<<e;L:{if(!(c&d)){i[4333]=c|d;i[b>>2]=h;i[h+24>>2]=b;break L}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=i[b>>2];while(1){c=b;if((i[b+4>>2]&-8)==(a|0)){break C}b=e>>>29|0;e=e<<1;d=(c+(b&4)|0)+16|0;b=i[d>>2];if(b){continue}break}i[d>>2]=h;i[h+24>>2]=c}i[h+12>>2]=h;i[h+8>>2]=h;break B}a=g+ -40|0;c=b+8&7?-8-b&7:0;h=a-c|0;i[4335]=h;c=b+c|0;i[4338]=c;i[c+4>>2]=h|1;i[(a+b|0)+4>>2]=40;i[4339]=i[4454];a=(d+(d+ -39&7?39-d&7:0)|0)+ -47|0;c=a>>>0<e+16>>>0?e:a;i[c+4>>2]=27;a=i[4447];i[c+16>>2]=i[4446];i[c+20>>2]=a;a=i[4445];i[c+8>>2]=i[4444];i[c+12>>2]=a;i[4446]=c+8;i[4445]=g;i[4444]=b;i[4447]=0;a=c+24|0;while(1){i[a+4>>2]=7;b=a+8|0;a=a+4|0;if(d>>>0>b>>>0){continue}break}if((c|0)==(e|0)){break x}i[c+4>>2]=i[c+4>>2]&-2;d=c-e|0;i[e+4>>2]=d|1;i[c>>2]=d;if(d>>>0<=255){b=d>>>3|0;a=(b<<3)+17368|0;c=i[4332];b=1<<b;M:{if(!(c&b)){i[4332]=b|c;b=a;break M}b=i[a+8>>2]}i[a+8>>2]=e;i[b+12>>2]=e;i[e+12>>2]=a;i[e+8>>2]=b;break x}a=31;i[e+16>>2]=0;i[e+20>>2]=0;if(d>>>0<=16777215){b=d>>>8|0;a=b+1048320>>>16&8;c=b<<a;b=c+520192>>>16&4;g=c<<b;c=g+245760>>>16&2;a=(g<<c>>>15|0)-(c|(a|b))|0;a=(a<<1|d>>>a+21&1)+28|0}i[e+28>>2]=a;b=(a<<2)+17632|0;c=i[4333];g=1<<a;N:{if(!(c&g)){i[4333]=c|g;i[b>>2]=e;i[e+24>>2]=b;break N}a=d<<((a|0)==31?0:25-(a>>>1|0)|0);b=i[b>>2];while(1){c=b;if((d|0)==(i[b+4>>2]&-8)){break A}b=a>>>29|0;a=a<<1;g=(c+(b&4)|0)+16|0;b=i[g>>2];if(b){continue}break}i[g>>2]=e;i[e+24>>2]=c}i[e+12>>2]=e;i[e+8>>2]=e;break x}a=i[c+8>>2];i[a+12>>2]=h;i[c+8>>2]=h;i[h+24>>2]=0;i[h+12>>2]=c;i[h+8>>2]=a}a=m+8|0;break a}a=i[c+8>>2];i[a+12>>2]=e;i[c+8>>2]=e;i[e+24>>2]=0;i[e+12>>2]=c;i[e+8>>2]=a}a=i[4335];if(a>>>0<=f>>>0){break d}b=a-f|0;i[4335]=b;a=i[4338];c=a+f|0;i[4338]=c;i[c+4>>2]=b|1;i[a+4>>2]=f|3;a=a+8|0;break a}i[4312]=48;a=0;break a}O:{if(!m){break O}a=i[d+28>>2];c=(a<<2)+17632|0;P:{if(i[c>>2]==(d|0)){i[c>>2]=b;if(b){break P}k=Kn(a)&k;i[4333]=k;break O}i[m+(i[m+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break O}}i[b+24>>2]=m;a=i[d+16>>2];if(a){i[b+16>>2]=a;i[a+24>>2]=b}a=i[d+20>>2];if(!a){break O}i[b+20>>2]=a;i[a+24>>2]=b}Q:{if(e>>>0<=15){a=e+f|0;i[d+4>>2]=a|3;a=a+d|0;i[a+4>>2]=i[a+4>>2]|1;break Q}i[d+4>>2]=f|3;i[h+4>>2]=e|1;i[e+h>>2]=e;if(e>>>0<=255){b=e>>>3|0;a=(b<<3)+17368|0;c=i[4332];b=1<<b;R:{if(!(c&b)){i[4332]=b|c;b=a;break R}b=i[a+8>>2]}i[a+8>>2]=h;i[b+12>>2]=h;i[h+12>>2]=a;i[h+8>>2]=b;break Q}a=31;if(e>>>0<=16777215){b=e>>>8|0;a=b+1048320>>>16&8;c=b<<a;b=c+520192>>>16&4;f=c<<b;c=f+245760>>>16&2;a=(f<<c>>>15|0)-(c|(a|b))|0;a=(a<<1|e>>>a+21&1)+28|0}i[h+28>>2]=a;i[h+16>>2]=0;i[h+20>>2]=0;b=(a<<2)+17632|0;S:{c=1<<a;T:{if(!(c&k)){i[4333]=c|k;i[b>>2]=h;break T}a=e<<((a|0)==31?0:25-(a>>>1|0)|0);f=i[b>>2];while(1){b=f;if((i[b+4>>2]&-8)==(e|0)){break S}c=a>>>29|0;a=a<<1;c=(b+(c&4)|0)+16|0;f=i[c>>2];if(f){continue}break}i[c>>2]=h}i[h+24>>2]=b;i[h+12>>2]=h;i[h+8>>2]=h;break Q}a=i[b+8>>2];i[a+12>>2]=h;i[b+8>>2]=h;i[h+24>>2]=0;i[h+12>>2]=b;i[h+8>>2]=a}a=d+8|0;break a}U:{if(!m){break U}a=i[b+28>>2];c=(a<<2)+17632|0;V:{if(i[c>>2]==(b|0)){i[c>>2]=d;if(d){break V}q=17332,r=Kn(a)&n,i[q>>2]=r;break U}i[(i[m+16>>2]==(b|0)?16:20)+m>>2]=d;if(!d){break U}}i[d+24>>2]=m;a=i[b+16>>2];if(a){i[d+16>>2]=a;i[a+24>>2]=d}a=i[b+20>>2];if(!a){break U}i[d+20>>2]=a;i[a+24>>2]=d}W:{if(e>>>0<=15){a=e+f|0;i[b+4>>2]=a|3;a=a+b|0;i[a+4>>2]=i[a+4>>2]|1;break W}i[b+4>>2]=f|3;i[o+4>>2]=e|1;i[e+o>>2]=e;if(k){c=k>>>3|0;a=(c<<3)+17368|0;d=i[4337];c=1<<c;X:{if(!(c&g)){i[4332]=c|g;c=a;break X}c=i[a+8>>2]}i[a+8>>2]=d;i[c+12>>2]=d;i[d+12>>2]=a;i[d+8>>2]=c}i[4337]=o;i[4334]=e}a=b+8|0}J=p+16|0;return a|0}function Vf(a,b){var c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;m=J-96|0;J=m;i[m+72>>2]=0;i[m+64>>2]=0;i[m+68>>2]=0;i[m+48>>2]=0;i[m+52>>2]=0;i[m+40>>2]=0;i[m+44>>2]=0;i[m+56>>2]=1065353216;i[m+32>>2]=0;i[m+24>>2]=0;i[m+28>>2]=0;A=i[a+124>>2];a:{b:{c:{d:{e:{if((b|0)<1){break e}C=i[a+216>>2]!=i[a+220>>2];q=1;while(1){f=w;w=f+1|0;f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{p:{q:{if(!j[a+308|0]){break q}r:{s:{n=i[a+296>>2];t=i[a+304>>2];c=n+(t>>>3|0)|0;h=i[a+300>>2];if(c>>>0>=h>>>0){break s}d=j[c|0];c=t+1|0;i[a+304>>2]=c;if(!(d>>>(t&7)&1)){break s}p=c>>>3|0;d=n+p|0;t:{if(d>>>0>=h>>>0){d=c;c=0;break t}e=j[d|0];d=t+2|0;i[a+304>>2]=d;p=d>>>3|0;c=e>>>(c&7)&1}e=n+p|0;if(e>>>0<h>>>0){e=j[e|0];i[a+304>>2]=d+1;d=e>>>(d&7)<<1&2}else{d=0}c=(c|d)<<1;switch(c-1|0){case 0:case 2:case 4:break n;case 5:break p;case 1:case 3:break r;default:break q}}d=i[m+68>>2];if((d|0)==i[m+64>>2]){break d}y=-1;u=i[a+8>>2];t=i[u+24>>2];c=t;p=d+ -4|0;q=i[p>>2];e=-1;u:{if((q|0)==-1){break u}d=q+1|0;d=(d>>>0)%3|0?d:q+ -2|0;e=-1;if((d|0)==-1){break u}e=i[i[u>>2]+(d<<2)>>2]}d=i[c+(e<<2)>>2];if((d|0)!=-1){c=d+1|0;y=(c>>>0)%3|0?c:d+ -2|0}d=i[u+12>>2];r=o(f,3);c=r+1|0;i[d+(q<<2)>>2]=c;n=c<<2;i[n+d>>2]=q;s=r+2|0;i[d+(y<<2)>>2]=s;f=s<<2;i[f+d>>2]=y;h=-1;c=-1;v:{if((q|0)==-1){break v}d=q+((q>>>0)%3|0?-1:2)|0;c=-1;if((d|0)==-1){break v}c=i[i[u>>2]+(d<<2)>>2]}w:{if((y|0)==-1){break w}d=y+1|0;d=(d>>>0)%3|0?d:y+ -2|0;if((d|0)==-1){break w}h=i[i[u>>2]+(d<<2)>>2]}d=-1;if((c|0)==(e|0)|(e|0)==(h|0)){break c}d=i[u>>2];i[d+(r<<2)>>2]=e;i[d+n>>2]=h;i[d+f>>2]=c;if((c|0)!=-1){i[t+(c<<2)>>2]=s}d=i[a+120>>2]+(e>>>3&536870908)|0;c=i[d>>2];D=d,E=Kn(e)&c,i[D>>2]=E;i[p>>2]=r;break f}e=i[m+68>>2];if((e|0)==i[m+64>>2]){break d}s=i[a+8>>2];d=i[s+12>>2];r=o(f,3);p=(c|1)==5;n=r+(p?2:1)|0;c=n<<2;u=i[e+ -4>>2];i[d+c>>2]=u;i[d+(u<<2)>>2]=n;$f(s+24|0,11508);d=-1;h=i[a+8>>2];t=i[h+24>>2];if(i[h+28>>2]-t>>2>(A|0)){break c}e=r+2|0;h=i[h>>2];v=h+c|0;d=i[s+28>>2]-i[s+24>>2]|0;c=(d>>2)+ -1|0;i[v>>2]=c;if(d){i[t+(c<<2)>>2]=n}e=p?r:e;n=h+(p+r<<2)|0;x:{y:{z:{if((u|0)!=-1){c=u+((u>>>0)%3|0?-1:2)|0;if((c|0)==-1){break z}c=i[h+(c<<2)>>2];i[h+(e<<2)>>2]=c;if((c|0)==-1){break y}i[t+(c<<2)>>2]=e;break y}i[h+(e<<2)>>2]=-1;d=-1;break x}i[h+(e<<2)>>2]=-1}c=u+1|0;c=(c>>>0)%3|0?c:u+ -2|0;d=-1;if((c|0)==-1){break x}d=i[h+(c<<2)>>2]}i[n>>2]=d;i[i[m+68>>2]+ -4>>2]=r;break o}p=i[m+68>>2];e=i[m+64>>2];if((p|0)==(e|0)){break d}n=p+ -4|0;z=i[n>>2];i[m+68>>2]=n;r=i[m+44>>2];if(!r){break k}d=i[m+40>>2];s=Jn(r)>>>0>1;h=f&r+2147483647;A:{if(!s){break A}c=f;h=c;if(c>>>0<r>>>0){break A}h=(f>>>0)%(r>>>0)|0}c=i[d+(h<<2)>>2];if(!c){break k}d=i[c>>2];if(!d){break k}t=r+ -1|0;while(1){B:{c=i[d+4>>2];C:{if((f|0)!=(c|0)){D:{if(!s){c=c&t;break D}if(c>>>0<r>>>0){break D}c=(c>>>0)%(r>>>0)|0}if((c|0)!=(h|0)){break k}break C}if((f|0)==i[d+8>>2]){break B}}d=i[d>>2];if(d){continue}break k}break}if((n|0)!=i[m+72>>2]){i[n>>2]=i[d+12>>2];i[m+68>>2]=p;c=e;break j}t=n-e|0;p=t>>2;n=p+1|0;if(n>>>0>=1073741824){break m}h=t>>1;n=p>>>0<536870911?h>>>0<n>>>0?n:h:1073741823;c=0;E:{if(!n){break E}if(n>>>0>=1073741824){break a}c=Dm(n<<2)}h=c+(p<<2)|0;i[h>>2]=i[d+12>>2];d=(n<<2)+c|0;p=h+4|0;if((t|0)>=1){pn(c,e,t)}i[m+72>>2]=d;i[m+68>>2]=p;i[m+64>>2]=c;if(!e){break j}nn(e);p=i[m+68>>2];c=i[m+64>>2];break j}c=i[a+8>>2];$f(c+24|0,11508);d=-1;e=i[a+8>>2];r=o(f,3);p=i[c+28>>2]-i[c+24>>2]|0;t=p>>2;h=t+ -1|0;i[i[e>>2]+(r<<2)>>2]=h;$f(e+24|0,11508);n=r+1|0;i[i[e>>2]+(n<<2)>>2]=(i[e+28>>2]-i[e+24>>2]>>2)+ -1;c=i[a+8>>2];$f(c+24|0,11508);e=r+2|0;i[i[c>>2]+(e<<2)>>2]=(i[c+28>>2]-i[c+24>>2]>>2)+ -1;c=i[a+8>>2];s=i[c+24>>2];if(i[c+28>>2]-s>>2>(A|0)){break c}F:{G:{if(!p){i[s+(t<<2)>>2]=n;d=1;break G}i[s+(h<<2)>>2]=r;d=0;if((p|0)==-4){break G}i[s+(t<<2)>>2]=n;d=t+1|0;if((d|0)==-1){break F}}i[s+(d<<2)>>2]=e}c=i[m+68>>2];if((c|0)!=i[m+72>>2]){i[c>>2]=r;i[m+68>>2]=c+4;break o}p=i[m+64>>2];n=c-p|0;h=n>>2;e=h+1|0;if(e>>>0>=1073741824){break l}d=n>>1;e=h>>>0<536870911?d>>>0<e>>>0?e:d:1073741823;c=0;H:{if(!e){break H}if(e>>>0>=1073741824){break a}c=Dm(e<<2)}d=c+(h<<2)|0;i[d>>2]=r;e=c+(e<<2)|0;d=d+4|0;if((n|0)>=1){pn(c,p,n)}i[m+72>>2]=e;i[m+68>>2]=d;i[m+64>>2]=c;if(!p){break o}nn(p)}d=i[a+40>>2];if((d|0)==i[a+36>>2]){break f}f=(f^-1)+b|0;while(1){c=i[d+ -8>>2];if(c>>>0>f>>>0){break i}if((c|0)!=(f|0)){break f}e=j[d+ -4|0];c=d+ -12|0;d=i[c>>2];i[a+40>>2]=c;if((d|0)<0){break i}h=i[i[m+68>>2]+ -4>>2];i[m+20>>2]=(d^-1)+b;i[m+88>>2]=m+20;ag(m,m+40|0,m+20|0,m+88|0);d=i[m>>2];I:{if(e&1){c=-1;if((h|0)==-1){break I}c=h+1|0;c=(c>>>0)%3|0?c:h+ -2|0;break I}c=-1;if((h|0)==-1){break I}c=h+ -1|0;if((h>>>0)%3|0){break I}c=h+2|0}i[d+12>>2]=c;d=i[a+40>>2];if((d|0)!=i[a+36>>2]){continue}break}break f}x()}Sm();x()}Sm();x()}p=n;c=e}if((c|0)==(p|0)){break i}u=i[p+ -4>>2];d=(u|0)==-1;r=i[a+8>>2];if(i[i[r+12>>2]+(u<<2)>>2]!=-1?!d:0){break i}h=(z|0)==-1;s=i[r+12>>2];if(i[s+(z<<2)>>2]!=-1?!h:0){break i}t=o(f,3);f=t+2|0;i[s+(u<<2)>>2]=f;n=f<<2;i[n+s>>2]=u;c=t+1|0;i[s+(z<<2)>>2]=c;e=c<<2;i[e+s>>2]=z;if(d){break h}q=-1;v=-1;y=i[r>>2];d=y+(t<<2)|0;c=u+((u>>>0)%3|0?-1:2)|0;if((c|0)!=-1){v=i[(c<<2)+y>>2]}i[d>>2]=v;c=u+1|0;c=(c>>>0)%3|0?c:u+ -2|0;if((c|0)==-1){break g}q=i[(c<<2)+y>>2];break g}d=-1;if(q&1){break c}break e}v=-1;y=i[r>>2];i[y+(t<<2)>>2]=-1;q=-1}i[e+y>>2]=q;J:{K:{L:{if(!h){c=z+((z>>>0)%3|0?-1:2)|0;if((c|0)==-1){break L}c=i[(c<<2)+y>>2];i[n+y>>2]=c;if((c|0)==-1){break K}i[i[r+24>>2]+(c<<2)>>2]=f;break K}i[n+y>>2]=-1;B=-1;d=-1;break J}i[n+y>>2]=-1}B=-1;c=z+1|0;c=(c>>>0)%3|0?c:z+ -2|0;d=-1;if((c|0)==-1){break J}B=i[(c<<2)+y>>2];d=c}c=i[r+24>>2];e=c+(B<<2)|0;if((v|0)!=-1){i[c+(v<<2)>>2]=i[e>>2]}M:{if((d|0)==-1){break M}while(1){i[(d<<2)+y>>2]=v;c=d+1|0;c=(c>>>0)%3|0?c:d+ -2|0;if((c|0)==-1){break M}d=i[s+(c<<2)>>2];if((d|0)==-1){break M}c=d+1|0;d=(c>>>0)%3|0?c:d+ -2|0;if((d|0)!=-1){continue}break}}i[e>>2]=-1;N:{if(C){break N}c=i[m+28>>2];if((c|0)!=i[m+32>>2]){i[c>>2]=B;i[m+28>>2]=c+4;break N}O:{n=i[m+24>>2];h=c-n|0;f=h>>2;e=f+1|0;if(e>>>0<1073741824){d=h>>1;e=f>>>0<536870911?d>>>0<e>>>0?e:d:1073741823;c=0;P:{if(!e){break P}if(e>>>0>=1073741824){break O}c=Dm(e<<2)}d=c+(f<<2)|0;i[d>>2]=B;e=c+(e<<2)|0;d=d+4|0;if((h|0)>=1){pn(c,n,h)}i[m+32>>2]=e;i[m+28>>2]=d;i[m+24>>2]=c;if(!n){break N}nn(n);p=i[m+68>>2];break N}Sm();x()}break a}i[p+ -4>>2]=t}q=(w|0)<(b|0);if((b|0)!=(w|0)){continue}break}w=b}d=-1;b=i[a+8>>2];if(i[b+28>>2]-i[b+24>>2]>>2>(A|0)){break c}Q:{R:{S:{q=i[m+68>>2];if((q|0)!=i[m+64>>2]){C=a+72|0;b=a+60|0;t=a+312|0;while(1){c=q+ -4|0;s=i[c>>2];i[m+68>>2]=c;T:{U:{V:{W:{if(k[a+270>>1]<=513){if(!j[a+364|0]){break V}e=i[a+360>>2];c=i[a+352>>2]+(e>>>3|0)|0;if(c>>>0>=l[a+356>>2]){break U}c=j[c|0];i[a+360>>2]=e+1;c=c>>>(e&7)&1;break W}c=Ce(t)}if(!c){break U}}p=i[a+8>>2];z=i[p>>2];if((w|0)>=((i[p+4>>2]-z>>2>>>0)/3|0)){break d}h=-1;v=-1;n=i[p+24>>2];f=n;c=-1;X:{if((s|0)==-1){break X}e=s+1|0;e=(e>>>0)%3|0?e:s+ -2|0;c=-1;if((e|0)==-1){break X}c=i[z+(e<<2)>>2]}f=i[f+(c<<2)>>2];Y:{if((f|0)==-1){break Y}e=f+1|0;e=(e>>>0)%3|0?e:f+ -2|0;if((e|0)==-1){break Y}f=e+1|0;f=(f>>>0)%3|0?f:e+ -2|0;if((f|0)!=-1){v=i[z+(f<<2)>>2]}h=e}q=-1;B=-1;n=i[n+(v<<2)>>2];f=-1;Z:{if((n|0)==-1){break Z}e=n+1|0;e=(e>>>0)%3|0?e:n+ -2|0;f=-1;if((e|0)==-1){break Z}f=e+1|0;f=(f>>>0)%3|0?f:e+ -2|0;if((f|0)!=-1){B=i[z+(f<<2)>>2]}f=e}A=i[p+12>>2];u=o(w,3);p=u<<2;i[A+p>>2]=s;i[A+(s<<2)>>2]=u;r=u+1|0;n=r<<2;i[n+A>>2]=h;i[A+(h<<2)>>2]=r;s=u+2|0;e=s<<2;i[e+A>>2]=f;i[A+(f<<2)>>2]=s;i[p+z>>2]=v;n=n+z|0;i[n>>2]=B;h=e+z|0;i[h>>2]=c;p=i[a+120>>2];f=r>>>0<u>>>0?-1:v;e=p+(f>>>3&536870908)|0;c=i[e>>2];D=e,E=Kn(f)&c,i[D>>2]=E;q=(r|0)!=-1?i[n>>2]:q;e=p+(q>>>3&536870908)|0;c=i[e>>2];D=e,E=Kn(q)&c,i[D>>2]=E;q=-1;q=(s|0)!=-1?i[h>>2]:q;e=p+(q>>>3&536870908)|0;c=i[e>>2];D=e,E=Kn(q)&c,i[D>>2]=E;q=i[a+64>>2];e=i[a+68>>2];if((q|0)==e<<5){if((q+1|0)<=-1){break S}c=b;if(q>>>0<=1073741822){f=q+32&-32;e=e<<6;e=e>>>0<f>>>0?f:e}else{e=2147483647}Qc(c,e);q=i[a+64>>2]}w=w+1|0;i[a+64>>2]=q+1;c=i[a+60>>2]+(q>>>3&536870908)|0;i[c>>2]=i[c>>2]|1<<q;c=i[a+76>>2];if((c|0)!=i[a+80>>2]){i[c>>2]=u;i[a+76>>2]=c+4;break T}p=i[C>>2];n=c-p|0;h=n>>2;f=h+1|0;if(f>>>0>=1073741824){break R}e=n>>1;f=h>>>0<536870911?e>>>0<f>>>0?f:e:1073741823;c=0;_:{if(!f){break _}if(f>>>0>=1073741824){break a}c=Dm(f<<2)}e=c+(h<<2)|0;i[e>>2]=u;f=c+(f<<2)|0;e=e+4|0;if((n|0)>=1){pn(c,p,n)}i[a+80>>2]=f;i[a+76>>2]=e;i[a+72>>2]=c;if(!p){break T}nn(p);break T}c=i[a+64>>2];h=i[a+68>>2];if((c|0)==h<<5){if((c+1|0)<=-1){break S}e=b;if(c>>>0<=1073741822){f=c+32&-32;c=h<<6;c=c>>>0<f>>>0?f:c}else{c=2147483647}Qc(e,c);c=i[a+64>>2]}i[a+64>>2]=c+1;f=i[a+60>>2]+(c>>>3&536870908)|0;e=i[f>>2];D=f,E=Kn(c)&e,i[D>>2]=E;c=i[a+76>>2];if((c|0)!=i[a+80>>2]){i[c>>2]=s;i[a+76>>2]=c+4;break T}p=i[C>>2];n=c-p|0;h=n>>2;f=h+1|0;if(f>>>0>=1073741824){break R}e=n>>1;f=h>>>0<536870911?e>>>0<f>>>0?f:e:1073741823;c=0;$:{if(!f){break $}if(f>>>0>=1073741824){break Q}c=Dm(f<<2)}e=c+(h<<2)|0;i[e>>2]=s;f=c+(f<<2)|0;e=e+4|0;if((n|0)>=1){pn(c,p,n)}i[a+80>>2]=f;i[a+76>>2]=e;i[a+72>>2]=c;if(!p){break T}nn(p)}q=i[m+68>>2];if((q|0)!=i[m+64>>2]){continue}break}b=i[a+8>>2]}if(((i[b+4>>2]-i[b>>2]>>2>>>0)/3|0)!=(w|0)){break c}q=i[b+24>>2];d=i[b+28>>2]-q>>2;v=i[m+24>>2];f=i[m+28>>2];if((v|0)==(f|0)){break b}while(1){h=i[v>>2];w=d+ -1|0;aa:{if(i[(w<<2)+q>>2]!=-1){c=d;break aa}q=i[b+24>>2];while(1){w=d+ -2|0;c=d+ -1|0;d=c;if(i[(w<<2)+q>>2]==-1){continue}break}}if(w>>>0>=h>>>0){i[m>>2]=b;e=w<<2;d=i[e+q>>2];g[m+12|0]=1;i[m+8>>2]=d;i[m+4>>2]=d;if((d|0)!=-1){i[i[b>>2]+(d<<2)>>2]=h;Jd(m);d=i[m+8>>2];if((d|0)!=-1){while(1){i[i[i[a+8>>2]>>2]+(d<<2)>>2]=h;Jd(m);d=i[m+8>>2];if((d|0)!=-1){continue}break}}b=i[a+8>>2]}d=i[b+24>>2];e=d+e|0;if((h|0)!=-1){i[d+(h<<2)>>2]=i[e>>2]}i[e>>2]=-1;p=1<<h;d=i[a+120>>2];n=d+(h>>>3&536870908)|0;e=n;h=d+(w>>>3&536870908)|0;d=1<<w;w=p|i[n>>2];ba:{if(i[h>>2]&d){break ba}w=i[n>>2]&(p^-1)}i[e>>2]=w;i[h>>2]=i[h>>2]&(d^-1);c=c+ -1|0}d=c;v=v+4|0;if((f|0)==(v|0)){break c}q=i[b+24>>2];continue}}Sm();x()}Sm();x()}break a}d=-1}v=i[m+24>>2]}if(v){i[m+28>>2]=v;nn(v)}a=i[m+48>>2];if(a){while(1){b=i[a>>2];nn(a);a=b;if(a){continue}break}}a=i[m+40>>2];i[m+40>>2]=0;if(a){nn(a)}a=i[m+64>>2];if(a){i[m+68>>2]=a;nn(a)}J=m+96|0;return d}Ba(12220);x()}function lg(a,b){var c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;m=J-96|0;J=m;i[m+72>>2]=0;i[m+64>>2]=0;i[m+68>>2]=0;i[m+48>>2]=0;i[m+52>>2]=0;i[m+40>>2]=0;i[m+44>>2]=0;i[m+56>>2]=1065353216;i[m+32>>2]=0;i[m+24>>2]=0;i[m+28>>2]=0;B=i[a+124>>2];a:{b:{c:{d:{e:{if((b|0)<1){break e}A=a+232|0;C=i[a+216>>2]!=i[a+220>>2];t=1;while(1){f=y;y=f+1|0;c=ng(A);f:{if(!c){d=i[m+68>>2];if((d|0)==i[m+64>>2]){break d}w=-1;q=i[a+8>>2];t=i[q+24>>2];c=t;n=d+ -4|0;v=i[n>>2];h=-1;g:{if((v|0)==-1){break g}d=v+1|0;d=(d>>>0)%3|0?d:v+ -2|0;h=-1;if((d|0)==-1){break g}h=i[i[q>>2]+(d<<2)>>2]}d=i[c+(h<<2)>>2];if((d|0)!=-1){c=d+1|0;w=(c>>>0)%3|0?c:d+ -2|0}d=i[q+12>>2];r=o(f,3);c=r+1|0;i[d+(v<<2)>>2]=c;e=c<<2;i[e+d>>2]=v;s=r+2|0;i[d+(w<<2)>>2]=s;f=s<<2;i[f+d>>2]=w;p=-1;c=-1;h:{if((v|0)==-1){break h}d=v+((v>>>0)%3|0?-1:2)|0;c=-1;if((d|0)==-1){break h}c=i[i[q>>2]+(d<<2)>>2]}i:{if((w|0)==-1){break i}d=w+1|0;d=(d>>>0)%3|0?d:w+ -2|0;if((d|0)==-1){break i}p=i[i[q>>2]+(d<<2)>>2]}d=-1;if((c|0)==(h|0)|(h|0)==(p|0)){break c}d=i[q>>2];i[d+(r<<2)>>2]=h;i[d+e>>2]=p;i[d+f>>2]=c;if((c|0)!=-1){i[t+(c<<2)>>2]=s}d=i[a+120>>2]+(h>>>3&536870908)|0;c=i[d>>2];D=d,E=Kn(h)&c,i[D>>2]=E;i[n>>2]=r;og(A,r);break f}d=-1;j:{k:{l:{m:{n:{o:{p:{q:{r:{switch(c+ -1|0){case 2:case 4:h=i[m+68>>2];if((h|0)==i[m+64>>2]){break d}r=i[a+8>>2];d=i[r+12>>2];q=o(f,3);p=(c|0)==5;n=q+(p?2:1)|0;c=n<<2;v=i[h+ -4>>2];i[d+c>>2]=v;i[d+(v<<2)>>2]=n;$f(r+24|0,11508);d=-1;e=i[a+8>>2];s=i[e+24>>2];if(i[e+28>>2]-s>>2>(B|0)){break c}h=q+2|0;e=i[e>>2];u=e+c|0;d=i[r+28>>2]-i[r+24>>2]|0;c=(d>>2)+ -1|0;i[u>>2]=c;if(d){i[s+(c<<2)>>2]=n}h=p?q:h;d=e+(p+q<<2)|0;s:{t:{u:{if((v|0)!=-1){c=v+((v>>>0)%3|0?-1:2)|0;if((c|0)==-1){break u}c=i[e+(c<<2)>>2];i[e+(h<<2)>>2]=c;if((c|0)==-1){break t}i[s+(c<<2)>>2]=h;break t}i[e+(h<<2)>>2]=-1;h=-1;break s}i[e+(h<<2)>>2]=-1}c=v+1|0;c=(c>>>0)%3|0?c:v+ -2|0;h=-1;if((c|0)==-1){break s}h=i[e+(c<<2)>>2]}i[d>>2]=h;d=i[m+68>>2];i[d+ -4>>2]=q;break q;case 0:p=i[m+68>>2];h=i[m+64>>2];if((p|0)==(h|0)){break d}n=p+ -4|0;z=i[n>>2];i[m+68>>2]=n;q=i[m+44>>2];if(!q){break n}d=i[m+40>>2];r=Jn(q)>>>0>1;e=f&q+2147483647;v:{if(!r){break v}c=f;e=c;if(c>>>0<q>>>0){break v}e=(f>>>0)%(q>>>0)|0}c=i[d+(e<<2)>>2];if(!c){break n}d=i[c>>2];if(!d){break n}s=q+ -1|0;while(1){w:{c=i[d+4>>2];x:{if((f|0)!=(c|0)){y:{if(!r){c=c&s;break y}if(c>>>0<q>>>0){break y}c=(c>>>0)%(q>>>0)|0}if((c|0)!=(e|0)){break n}break x}if((f|0)==i[d+8>>2]){break w}}d=i[d>>2];if(d){continue}break n}break}if((n|0)!=i[m+72>>2]){i[n>>2]=i[d+12>>2];i[m+68>>2]=p;c=h;break m}s=n-h|0;p=s>>2;n=p+1|0;if(n>>>0>=1073741824){break p}e=s>>1;n=p>>>0<536870911?e>>>0<n>>>0?n:e:1073741823;c=0;z:{if(!n){break z}if(n>>>0>=1073741824){break a}c=Dm(n<<2)}e=c+(p<<2)|0;i[e>>2]=i[d+12>>2];d=(n<<2)+c|0;p=e+4|0;if((s|0)>=1){pn(c,h,s)}i[m+72>>2]=d;i[m+68>>2]=p;i[m+64>>2]=c;if(!h){break m}nn(h);p=i[m+68>>2];c=i[m+64>>2];break m;case 6:break r;default:break c}}c=i[a+8>>2];$f(c+24|0,11508);h=i[a+8>>2];q=o(f,3);p=i[c+28>>2]-i[c+24>>2]|0;s=p>>2;e=s+ -1|0;i[i[h>>2]+(q<<2)>>2]=e;$f(h+24|0,11508);n=q+1|0;i[i[h>>2]+(n<<2)>>2]=(i[h+28>>2]-i[h+24>>2]>>2)+ -1;c=i[a+8>>2];$f(c+24|0,11508);h=q+2|0;i[i[c>>2]+(h<<2)>>2]=(i[c+28>>2]-i[c+24>>2]>>2)+ -1;c=i[a+8>>2];r=i[c+24>>2];if(i[c+28>>2]-r>>2>(B|0)){break c}A:{B:{if(!p){i[r+(s<<2)>>2]=n;d=1;break B}i[r+(e<<2)>>2]=q;d=0;if((p|0)==-4){break B}i[r+(s<<2)>>2]=n;d=s+1|0;if((d|0)==-1){break A}}i[r+(d<<2)>>2]=h}c=i[m+68>>2];if((c|0)!=i[m+72>>2]){i[c>>2]=q;d=c+4|0;i[m+68>>2]=d;break q}p=i[m+64>>2];n=c-p|0;e=n>>2;h=e+1|0;if(h>>>0>=1073741824){break o}d=n>>1;h=e>>>0<536870911?d>>>0<h>>>0?h:d:1073741823;c=0;C:{if(!h){break C}if(h>>>0>=1073741824){break a}c=Dm(h<<2)}d=c+(e<<2)|0;i[d>>2]=q;h=c+(h<<2)|0;d=d+4|0;if((n|0)>=1){pn(c,p,n)}i[m+72>>2]=h;i[m+68>>2]=d;i[m+64>>2]=c;if(!p){break q}nn(p);d=i[m+68>>2]}og(A,i[d+ -4>>2]);d=i[a+40>>2];if((d|0)==i[a+36>>2]){break f}f=(f^-1)+b|0;while(1){c=i[d+ -8>>2];if(c>>>0>f>>>0){break l}if((c|0)!=(f|0)){break f}h=j[d+ -4|0];c=d+ -12|0;d=i[c>>2];i[a+40>>2]=c;if((d|0)<0){break l}e=i[i[m+68>>2]+ -4>>2];i[m+20>>2]=(d^-1)+b;i[m+88>>2]=m+20;ag(m,m+40|0,m+20|0,m+88|0);d=i[m>>2];D:{if(h&1){c=-1;if((e|0)==-1){break D}c=e+1|0;c=(c>>>0)%3|0?c:e+ -2|0;break D}c=-1;if((e|0)==-1){break D}c=e+ -1|0;if((e>>>0)%3|0){break D}c=e+2|0}i[d+12>>2]=c;d=i[a+40>>2];if((d|0)!=i[a+36>>2]){continue}break}break f}Sm();x()}Sm();x()}p=n;c=h}if((c|0)==(p|0)){break l}s=i[p+ -4>>2];d=(s|0)==-1;v=i[a+8>>2];if(i[i[v+12>>2]+(s<<2)>>2]!=-1?!d:0){break l}e=(z|0)==-1;q=i[v+12>>2];if(i[q+(z<<2)>>2]!=-1?!e:0){break l}r=o(f,3);f=r+2|0;i[q+(s<<2)>>2]=f;n=f<<2;i[n+q>>2]=s;c=r+1|0;i[q+(z<<2)>>2]=c;h=c<<2;i[h+q>>2]=z;if(d){break k}u=-1;t=-1;w=i[v>>2];d=w+(r<<2)|0;c=s+((s>>>0)%3|0?-1:2)|0;if((c|0)!=-1){t=i[(c<<2)+w>>2]}i[d>>2]=t;c=s+1|0;c=(c>>>0)%3|0?c:s+ -2|0;if((c|0)==-1){break j}u=i[(c<<2)+w>>2];break j}d=-1;if(t&1){break c}break e}t=-1;w=i[v>>2];i[w+(r<<2)>>2]=-1;u=-1}i[h+w>>2]=u;E:{F:{G:{if(!e){c=z+((z>>>0)%3|0?-1:2)|0;if((c|0)==-1){break G}c=i[(c<<2)+w>>2];i[n+w>>2]=c;if((c|0)==-1){break F}i[i[v+24>>2]+(c<<2)>>2]=f;break F}i[n+w>>2]=-1;s=-1;d=-1;break E}i[n+w>>2]=-1}s=-1;c=z+1|0;c=(c>>>0)%3|0?c:z+ -2|0;d=-1;if((c|0)==-1){break E}s=i[(c<<2)+w>>2];d=c}f=i[a+388>>2];h=t<<2;c=f+h|0;n=c;e=i[c>>2];c=s<<2;i[n>>2]=e+i[c+f>>2];f=c;c=i[v+24>>2];f=f+c|0;if((t|0)!=-1){i[c+h>>2]=i[f>>2]}H:{if((d|0)==-1){break H}while(1){i[(d<<2)+w>>2]=t;c=d+1|0;c=(c>>>0)%3|0?c:d+ -2|0;if((c|0)==-1){break H}d=i[q+(c<<2)>>2];if((d|0)==-1){break H}c=d+1|0;d=(c>>>0)%3|0?c:d+ -2|0;if((d|0)!=-1){continue}break}}i[f>>2]=-1;I:{if(C){break I}c=i[m+28>>2];if((c|0)!=i[m+32>>2]){i[c>>2]=s;i[m+28>>2]=c+4;break I}J:{n=i[m+24>>2];e=c-n|0;f=e>>2;h=f+1|0;if(h>>>0<1073741824){d=e>>1;h=f>>>0<536870911?d>>>0<h>>>0?h:d:1073741823;c=0;K:{if(!h){break K}if(h>>>0>=1073741824){break J}c=Dm(h<<2)}d=c+(f<<2)|0;i[d>>2]=s;h=c+(h<<2)|0;d=d+4|0;if((e|0)>=1){pn(c,n,e)}i[m+32>>2]=h;i[m+28>>2]=d;i[m+24>>2]=c;if(!n){break I}nn(n);p=i[m+68>>2];break I}Sm();x()}break a}i[p+ -4>>2]=r;og(A,r)}t=(y|0)<(b|0);if((b|0)!=(y|0)){continue}break}y=b}d=-1;p=i[a+8>>2];if(i[p+28>>2]-i[p+24>>2]>>2>(B|0)){break c}L:{M:{N:{u=i[m+68>>2];if((u|0)!=i[m+64>>2]){B=a+72|0;h=a+60|0;s=a+312|0;while(1){b=u+ -4|0;r=i[b>>2];i[m+68>>2]=b;O:{P:{Q:{R:{if(k[a+270>>1]<=513){if(!j[a+364|0]){break Q}c=i[a+360>>2];b=i[a+352>>2]+(c>>>3|0)|0;if(b>>>0>=l[a+356>>2]){break P}b=j[b|0];i[a+360>>2]=c+1;b=b>>>(c&7)&1;break R}b=Ce(s)}if(!b){break P}}p=i[a+8>>2];w=i[p>>2];if((y|0)>=((i[p+4>>2]-w>>2>>>0)/3|0)){break d}t=-1;b=-1;n=i[p+24>>2];e=n;c=-1;S:{if((r|0)==-1){break S}f=r+1|0;f=(f>>>0)%3|0?f:r+ -2|0;c=-1;if((f|0)==-1){break S}c=i[w+(f<<2)>>2]}e=i[e+(c<<2)>>2];T:{if((e|0)==-1){break T}f=e+1|0;f=(f>>>0)%3|0?f:e+ -2|0;if((f|0)==-1){break T}e=f+1|0;e=(e>>>0)%3|0?e:f+ -2|0;if((e|0)!=-1){b=i[w+(e<<2)>>2]}t=f}A=-1;C=-1;n=i[n+(b<<2)>>2];e=-1;U:{if((n|0)==-1){break U}f=n+1|0;f=(f>>>0)%3|0?f:n+ -2|0;e=-1;if((f|0)==-1){break U}e=f+1|0;e=(e>>>0)%3|0?e:f+ -2|0;if((e|0)!=-1){C=i[w+(e<<2)>>2]}e=f}v=i[p+12>>2];z=o(y,3);p=z<<2;i[v+p>>2]=r;i[v+(r<<2)>>2]=z;q=z+1|0;n=q<<2;i[n+v>>2]=t;i[v+(t<<2)>>2]=q;r=z+2|0;f=r<<2;i[f+v>>2]=e;i[v+(e<<2)>>2]=r;i[p+w>>2]=b;n=n+w|0;i[n>>2]=C;e=f+w|0;i[e>>2]=c;t=i[a+120>>2];f=q>>>0<z>>>0?-1:b;c=t+(f>>>3&536870908)|0;b=i[c>>2];D=c,E=Kn(f)&b,i[D>>2]=E;A=(q|0)!=-1?i[n>>2]:A;c=t+(A>>>3&536870908)|0;b=i[c>>2];D=c,E=Kn(A)&b,i[D>>2]=E;u=-1;u=(r|0)!=-1?i[e>>2]:u;c=t+(u>>>3&536870908)|0;b=i[c>>2];D=c,E=Kn(u)&b,i[D>>2]=E;u=i[a+64>>2];c=i[a+68>>2];if((u|0)==c<<5){if((u+1|0)<=-1){break N}b=h;if(u>>>0<=1073741822){f=u+32&-32;c=c<<6;c=c>>>0<f>>>0?f:c}else{c=2147483647}Qc(b,c);u=i[a+64>>2]}y=y+1|0;i[a+64>>2]=u+1;b=i[a+60>>2]+(u>>>3&536870908)|0;i[b>>2]=i[b>>2]|1<<u;b=i[a+76>>2];if((b|0)!=i[a+80>>2]){i[b>>2]=z;i[a+76>>2]=b+4;break O}t=i[B>>2];n=b-t|0;e=n>>2;f=e+1|0;if(f>>>0>=1073741824){break M}c=n>>1;f=e>>>0<536870911?c>>>0<f>>>0?f:c:1073741823;b=0;V:{if(!f){break V}if(f>>>0>=1073741824){break a}b=Dm(f<<2)}c=b+(e<<2)|0;i[c>>2]=z;f=b+(f<<2)|0;c=c+4|0;if((n|0)>=1){pn(b,t,n)}i[a+80>>2]=f;i[a+76>>2]=c;i[a+72>>2]=b;if(!t){break O}nn(t);break O}c=i[a+64>>2];e=i[a+68>>2];if((c|0)==e<<5){if((c+1|0)<=-1){break N}b=h;if(c>>>0<=1073741822){f=c+32&-32;c=e<<6;c=c>>>0<f>>>0?f:c}else{c=2147483647}Qc(b,c);c=i[a+64>>2]}i[a+64>>2]=c+1;f=i[a+60>>2]+(c>>>3&536870908)|0;b=i[f>>2];D=f,E=Kn(c)&b,i[D>>2]=E;b=i[a+76>>2];if((b|0)!=i[a+80>>2]){i[b>>2]=r;i[a+76>>2]=b+4;break O}t=i[B>>2];n=b-t|0;e=n>>2;f=e+1|0;if(f>>>0>=1073741824){break M}c=n>>1;f=e>>>0<536870911?c>>>0<f>>>0?f:c:1073741823;b=0;W:{if(!f){break W}if(f>>>0>=1073741824){break L}b=Dm(f<<2)}c=b+(e<<2)|0;i[c>>2]=r;f=b+(f<<2)|0;c=c+4|0;if((n|0)>=1){pn(b,t,n)}i[a+80>>2]=f;i[a+76>>2]=c;i[a+72>>2]=b;if(!t){break O}nn(t)}u=i[m+68>>2];if((u|0)!=i[m+64>>2]){continue}break}p=i[a+8>>2]}if(((i[p+4>>2]-i[p>>2]>>2>>>0)/3|0)!=(y|0)){break c}u=i[p+24>>2];d=i[p+28>>2]-u>>2;b=i[m+24>>2];f=i[m+28>>2];if((b|0)==(f|0)){break b}while(1){e=i[b>>2];y=d+ -1|0;X:{if(i[(y<<2)+u>>2]!=-1){c=d;break X}u=i[p+24>>2];while(1){y=d+ -2|0;c=d+ -1|0;d=c;if(i[(y<<2)+u>>2]==-1){continue}break}}if(y>>>0>=e>>>0){i[m>>2]=p;h=y<<2;d=i[h+u>>2];g[m+12|0]=1;i[m+8>>2]=d;i[m+4>>2]=d;if((d|0)!=-1){i[i[p>>2]+(d<<2)>>2]=e;Jd(m);d=i[m+8>>2];if((d|0)!=-1){while(1){i[i[i[a+8>>2]>>2]+(d<<2)>>2]=e;Jd(m);d=i[m+8>>2];if((d|0)!=-1){continue}break}}p=i[a+8>>2]}d=i[p+24>>2];h=d+h|0;if((e|0)!=-1){i[d+(e<<2)>>2]=i[h>>2]}i[h>>2]=-1;t=1<<e;d=i[a+120>>2];n=d+(e>>>3&536870908)|0;h=n;e=d+(y>>>3&536870908)|0;d=1<<y;y=t|i[n>>2];Y:{if(i[e>>2]&d){break Y}y=i[n>>2]&(t^-1)}i[h>>2]=y;i[e>>2]=i[e>>2]&(d^-1);c=c+ -1|0}d=c;b=b+4|0;if((f|0)==(b|0)){break c}u=i[p+24>>2];continue}}Sm();x()}Sm();x()}break a}d=-1}b=i[m+24>>2]}if(b){i[m+28>>2]=b;nn(b)}a=i[m+48>>2];if(a){while(1){b=i[a>>2];nn(a);a=b;if(a){continue}break}}a=i[m+40>>2];i[m+40>>2]=0;if(a){nn(a)}a=i[m+64>>2];if(a){i[m+68>>2]=a;nn(a)}J=m+96|0;return d}Ba(12220);x()}function mh(a,b,c,d,e){var f=0,k=0;f=J-32|0;J=f;i[b+32>>2]=d;i[b+40>>2]=c;i[b+4>>2]=e;jh(a,d,f+16|0);a:{if(i[a>>2]){break a}c=a+4|0;if(g[a+15|0]<=-1){nn(i[c>>2])}e=j[f+23|0];if((M[i[i[b>>2]+8>>2]](b)|0)!=(e|0)){b=Dm(64);i[f>>2]=b;i[f+4>>2]=50;i[f+8>>2]=-2147483584;g[b+50|0]=0;d=j[13665]|j[13666]<<8;g[b+48|0]=d;g[b+49|0]=d>>>8;d=j[13661]|j[13662]<<8|(j[13663]<<16|j[13664]<<24);e=j[13657]|j[13658]<<8|(j[13659]<<16|j[13660]<<24);g[b+40|0]=e;g[b+41|0]=e>>>8;g[b+42|0]=e>>>16;g[b+43|0]=e>>>24;g[b+44|0]=d;g[b+45|0]=d>>>8;g[b+46|0]=d>>>16;g[b+47|0]=d>>>24;d=j[13653]|j[13654]<<8|(j[13655]<<16|j[13656]<<24);e=j[13649]|j[13650]<<8|(j[13651]<<16|j[13652]<<24);g[b+32|0]=e;g[b+33|0]=e>>>8;g[b+34|0]=e>>>16;g[b+35|0]=e>>>24;g[b+36|0]=d;g[b+37|0]=d>>>8;g[b+38|0]=d>>>16;g[b+39|0]=d>>>24;d=j[13645]|j[13646]<<8|(j[13647]<<16|j[13648]<<24);e=j[13641]|j[13642]<<8|(j[13643]<<16|j[13644]<<24);g[b+24|0]=e;g[b+25|0]=e>>>8;g[b+26|0]=e>>>16;g[b+27|0]=e>>>24;g[b+28|0]=d;g[b+29|0]=d>>>8;g[b+30|0]=d>>>16;g[b+31|0]=d>>>24;d=j[13637]|j[13638]<<8|(j[13639]<<16|j[13640]<<24);e=j[13633]|j[13634]<<8|(j[13635]<<16|j[13636]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[13629]|j[13630]<<8|(j[13631]<<16|j[13632]<<24);e=j[13625]|j[13626]<<8|(j[13627]<<16|j[13628]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[13621]|j[13622]<<8|(j[13623]<<16|j[13624]<<24);e=j[13617]|j[13618]<<8|(j[13619]<<16|j[13620]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;Gm(c,f);if(g[f+11|0]>-1){break a}nn(i[f>>2]);break a}d=j[f+21|0];g[b+36|0]=d;k=j[f+22|0];g[b+37|0]=k;if((d+ -1&255)>>>0>=2){b=Dm(32);i[f>>2]=b;i[f+4>>2]=22;i[f+8>>2]=-2147483616;g[b+22|0]=0;d=j[13686]|j[13687]<<8|(j[13688]<<16|j[13689]<<24);e=j[13682]|j[13683]<<8|(j[13684]<<16|j[13685]<<24);g[b+14|0]=e;g[b+15|0]=e>>>8;g[b+16|0]=e>>>16;g[b+17|0]=e>>>24;g[b+18|0]=d;g[b+19|0]=d>>>8;g[b+20|0]=d>>>16;g[b+21|0]=d>>>24;d=j[13680]|j[13681]<<8|(j[13682]<<16|j[13683]<<24);e=j[13676]|j[13677]<<8|(j[13678]<<16|j[13679]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[13672]|j[13673]<<8|(j[13674]<<16|j[13675]<<24);e=j[13668]|j[13669]<<8|(j[13670]<<16|j[13671]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-5;Gm(c,f);if(g[f+11|0]>-1){break a}nn(i[f>>2]);break a}if(!((d|0)!=2|(e?2:3)>>>0>=k>>>0)){b=Dm(32);i[f>>2]=b;i[f+4>>2]=22;i[f+8>>2]=-2147483616;g[b+22|0]=0;d=j[13709]|j[13710]<<8|(j[13711]<<16|j[13712]<<24);e=j[13705]|j[13706]<<8|(j[13707]<<16|j[13708]<<24);g[b+14|0]=e;g[b+15|0]=e>>>8;g[b+16|0]=e>>>16;g[b+17|0]=e>>>24;g[b+18|0]=d;g[b+19|0]=d>>>8;g[b+20|0]=d>>>16;g[b+21|0]=d>>>24;d=j[13703]|j[13704]<<8|(j[13705]<<16|j[13706]<<24);e=j[13699]|j[13700]<<8|(j[13701]<<16|j[13702]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[13695]|j[13696]<<8|(j[13697]<<16|j[13698]<<24);e=j[13691]|j[13692]<<8|(j[13693]<<16|j[13694]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-5;Gm(c,f);if(g[f+11|0]>-1){break a}nn(i[f>>2]);break a}d=d<<8|k;h[i[b+32>>2]+38>>1]=d;b:{if((d&65535)>>>0<259|h[f+26>>1]>-1){break b}kh(a,b);if(i[a>>2]){break a}if(g[c+11|0]>-1){break b}nn(i[c>>2])}if(!(M[i[i[b>>2]+12>>2]](b)|0)){b=Dm(48);i[f>>2]=b;i[f+4>>2]=33;i[f+8>>2]=-2147483600;g[b+33|0]=0;g[b+32|0]=j[13746];d=j[13742]|j[13743]<<8|(j[13744]<<16|j[13745]<<24);e=j[13738]|j[13739]<<8|(j[13740]<<16|j[13741]<<24);g[b+24|0]=e;g[b+25|0]=e>>>8;g[b+26|0]=e>>>16;g[b+27|0]=e>>>24;g[b+28|0]=d;g[b+29|0]=d>>>8;g[b+30|0]=d>>>16;g[b+31|0]=d>>>24;d=j[13734]|j[13735]<<8|(j[13736]<<16|j[13737]<<24);e=j[13730]|j[13731]<<8|(j[13732]<<16|j[13733]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[13726]|j[13727]<<8|(j[13728]<<16|j[13729]<<24);e=j[13722]|j[13723]<<8|(j[13724]<<16|j[13725]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[13718]|j[13719]<<8|(j[13720]<<16|j[13721]<<24);e=j[13714]|j[13715]<<8|(j[13716]<<16|j[13717]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;Gm(c,f);if(g[f+11|0]>-1){break a}nn(i[f>>2]);break a}if(!(M[i[i[b>>2]+20>>2]](b)|0)){b=Dm(32);i[f>>2]=b;i[f+4>>2]=31;i[f+8>>2]=-2147483616;g[b+31|0]=0;d=j[13775]|j[13776]<<8|(j[13777]<<16|j[13778]<<24);e=j[13771]|j[13772]<<8|(j[13773]<<16|j[13774]<<24);g[b+23|0]=e;g[b+24|0]=e>>>8;g[b+25|0]=e>>>16;g[b+26|0]=e>>>24;g[b+27|0]=d;g[b+28|0]=d>>>8;g[b+29|0]=d>>>16;g[b+30|0]=d>>>24;d=j[13768]|j[13769]<<8|(j[13770]<<16|j[13771]<<24);e=j[13764]|j[13765]<<8|(j[13766]<<16|j[13767]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[13760]|j[13761]<<8|(j[13762]<<16|j[13763]<<24);e=j[13756]|j[13757]<<8|(j[13758]<<16|j[13759]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[13752]|j[13753]<<8|(j[13754]<<16|j[13755]<<24);e=j[13748]|j[13749]<<8|(j[13750]<<16|j[13751]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;Gm(c,f);if(g[f+11|0]>-1){break a}nn(i[f>>2]);break a}if(!(M[i[i[b>>2]+24>>2]](b)|0)){b=Dm(48);i[f>>2]=b;i[f+4>>2]=34;i[f+8>>2]=-2147483600;g[b+34|0]=0;d=j[13812]|j[13813]<<8;g[b+32|0]=d;g[b+33|0]=d>>>8;d=j[13808]|j[13809]<<8|(j[13810]<<16|j[13811]<<24);e=j[13804]|j[13805]<<8|(j[13806]<<16|j[13807]<<24);g[b+24|0]=e;g[b+25|0]=e>>>8;g[b+26|0]=e>>>16;g[b+27|0]=e>>>24;g[b+28|0]=d;g[b+29|0]=d>>>8;g[b+30|0]=d>>>16;g[b+31|0]=d>>>24;d=j[13800]|j[13801]<<8|(j[13802]<<16|j[13803]<<24);e=j[13796]|j[13797]<<8|(j[13798]<<16|j[13799]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[13792]|j[13793]<<8|(j[13794]<<16|j[13795]<<24);e=j[13788]|j[13789]<<8|(j[13790]<<16|j[13791]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[13784]|j[13785]<<8|(j[13786]<<16|j[13787]<<24);e=j[13780]|j[13781]<<8|(j[13782]<<16|j[13783]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[a>>2]=-1;Gm(c,f);if(g[f+11|0]>-1){break a}nn(i[f>>2]);break a}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}J=f+32|0}function jh(a,b,c){var d=0,e=0,f=0,k=0,m=0,n=0;e=J-16|0;J=e;k=i[b+12>>2];d=i[b+20>>2];f=i[b+16>>2];m=f+5|0;if(m>>>0<5){d=d+1|0}a:{if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]<m>>>0:0){b=Dm(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[13561]|j[13562]<<8|(j[13563]<<16|j[13564]<<24);d=j[13557]|j[13558]<<8|(j[13559]<<16|j[13560]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[3389];d=i[3388];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[3387];d=i[3386];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[3385];d=i[3384];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;Gm(a+4|0,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}d=f+i[b>>2]|0;k=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);g[c|0]=k;g[c+1|0]=k>>>8;g[c+2|0]=k>>>16;g[c+3|0]=k>>>24;g[c+4|0]=j[d+4|0];k=b;d=i[b+20>>2];f=i[b+16>>2]+5|0;if(f>>>0<5){d=d+1|0}m=f;f=d;i[k+16>>2]=m;i[k+20>>2]=d;if(Nl(c,13566,5)){b=Dm(32);i[e>>2]=b;i[e+4>>2]=17;i[e+8>>2]=-2147483616;g[b+17|0]=0;g[b+16|0]=j[13588];c=j[13584]|j[13585]<<8|(j[13586]<<16|j[13587]<<24);d=j[13580]|j[13581]<<8|(j[13582]<<16|j[13583]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[13576]|j[13577]<<8|(j[13578]<<16|j[13579]<<24);d=j[13572]|j[13573]<<8|(j[13574]<<16|j[13575]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;Gm(a+4|0,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}d=i[b+12>>2];if((d|0)<(f|0)?1:(d|0)<=(f|0)?l[b+8>>2]<=m>>>0:0){b=Dm(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[13561]|j[13562]<<8|(j[13563]<<16|j[13564]<<24);d=j[13557]|j[13558]<<8|(j[13559]<<16|j[13560]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[3389];d=i[3388];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[3387];d=i[3386];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[3385];d=i[3384];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;Gm(a+4|0,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}g[c+5|0]=j[m+i[b>>2]|0];d=i[b+20>>2];f=i[b+16>>2]+1|0;if(f>>>0<1){d=d+1|0}i[b+16>>2]=f;i[k+20>>2]=d;k=i[b+12>>2];if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]<=f>>>0:0){b=Dm(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[13561]|j[13562]<<8|(j[13563]<<16|j[13564]<<24);d=j[13557]|j[13558]<<8|(j[13559]<<16|j[13560]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[3389];d=i[3388];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[3387];d=i[3386];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[3385];d=i[3384];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;Gm(a+4|0,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}g[c+6|0]=j[f+i[b>>2]|0];d=i[b+20>>2];f=i[b+16>>2]+1|0;if(f>>>0<1){d=d+1|0}i[b+16>>2]=f;i[b+20>>2]=d;k=i[b+12>>2];if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]<=f>>>0:0){b=Dm(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[13561]|j[13562]<<8|(j[13563]<<16|j[13564]<<24);d=j[13557]|j[13558]<<8|(j[13559]<<16|j[13560]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[3389];d=i[3388];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[3387];d=i[3386];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[3385];d=i[3384];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;Gm(a+4|0,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}g[c+7|0]=j[f+i[b>>2]|0];d=i[b+20>>2];f=i[b+16>>2]+1|0;if(f>>>0<1){d=d+1|0}i[b+16>>2]=f;i[b+20>>2]=d;k=i[b+12>>2];if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]<=f>>>0:0){b=Dm(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[13561]|j[13562]<<8|(j[13563]<<16|j[13564]<<24);d=j[13557]|j[13558]<<8|(j[13559]<<16|j[13560]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[3389];d=i[3388];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[3387];d=i[3386];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[3385];d=i[3384];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;Gm(a+4|0,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}g[c+8|0]=j[f+i[b>>2]|0];d=i[b+20>>2];f=d;n=i[b+16>>2];m=n+1|0;if(m>>>0<1){d=d+1|0}i[b+16>>2]=m;i[b+20>>2]=d;k=i[b+12>>2];d=f;f=n+3|0;if(f>>>0<3){d=d+1|0}if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]<f>>>0:0){b=Dm(32);i[e>>2]=b;i[e+4>>2]=29;i[e+8>>2]=-2147483616;g[b+29|0]=0;c=j[13561]|j[13562]<<8|(j[13563]<<16|j[13564]<<24);d=j[13557]|j[13558]<<8|(j[13559]<<16|j[13560]<<24);g[b+21|0]=d;g[b+22|0]=d>>>8;g[b+23|0]=d>>>16;g[b+24|0]=d>>>24;g[b+25|0]=c;g[b+26|0]=c>>>8;g[b+27|0]=c>>>16;g[b+28|0]=c>>>24;c=i[3389];d=i[3388];g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=i[3387];d=i[3386];g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=i[3385];d=i[3384];g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-2;Gm(a+4|0,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}f=c;c=m+i[b>>2]|0;h[f+10>>1]=j[c|0]|j[c+1|0]<<8;c=b;f=b;d=i[b+20>>2];b=i[b+16>>2]+2|0;if(b>>>0<2){d=d+1|0}i[f+16>>2]=b;i[c+20>>2]=d;i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+4>>2]=0}J=e+16|0}function jg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0;q=J+ -64|0;J=q;i[a+132>>2]=0;if(i[a+148>>2]){c=i[a+144>>2];if(c){while(1){b=i[c>>2];nn(c);c=b;if(b){continue}break}}i[a+144>>2]=0;b=i[a+140>>2];if(b){c=0;while(1){i[i[a+136>>2]+(c<<2)>>2]=0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}i[a+148>>2]=0}a:{b:{c=i[a+4>>2];e=j[c+36|0];b=e<<8|j[c+37|0];c:{if(b>>>0>513){break c}n=i[c+32>>2];if(b>>>0<=511){h=i[n+12>>2];d=i[n+20>>2];m=i[n+16>>2];b=m+4|0;if(b>>>0<4){d=d+1|0}f=b;b=d;if((h|0)<(b|0)?1:(h|0)<=(b|0)?l[n+8>>2]<f>>>0:0){break b}d=m+i[n>>2]|0;d=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[n+16>>2]=f;i[n+20>>2]=b;i[a+132>>2]=d;break c}if(!Pf(1,q,n)){break b}c=i[a+4>>2];e=j[c+36|0];i[a+132>>2]=i[q>>2]}n=i[c+32>>2];d:{e:{f:{if((e&255)>>>0<=1){e=0;h=i[n+12>>2];b=i[n+20>>2];m=i[n+16>>2];d=m+4|0;if(d>>>0<4){b=b+1|0}f=d;d=b;if((h|0)<(b|0)?1:(h|0)<=(b|0)?l[n+8>>2]<f>>>0:0){break a}b=m+i[n>>2]|0;b=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[q+60>>2]=b;i[n+16>>2]=f;i[n+20>>2]=d;i[a+156>>2]=b;u=a+156|0;break f}e=0;if(!Pf(1,q+60|0,n)){break a}c=i[a+4>>2];b=j[c+36|0];i[a+156>>2]=i[q+60>>2];u=a+156|0;if(b>>>0>1){break e}}h=i[c+32>>2];b=i[h+8>>2];m=i[h+12>>2];p=b;d=i[h+20>>2];f=i[h+16>>2];b=f+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?p>>>0<c>>>0:0){break a}d=f+i[h>>2]|0;p=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[q+56>>2]=p;i[h+16>>2]=c;i[h+20>>2]=b;break d}if(!Pf(1,q+56|0,i[c+32>>2])){break a}p=i[q+56>>2]}if(p>>>0>1431655765|l[u>>2]>o(p,3)>>>0){break a}s=i[a+4>>2];m=i[s+32>>2];t=i[m+8>>2];r=i[m+16>>2];f=i[m+12>>2];c=f;b=i[m+20>>2];if((c|0)<(b|0)?1:(c|0)<=(b|0)?t>>>0<=r>>>0:0){break a}n=i[m>>2];v=j[n+r|0];d=b;h=r+1|0;if(h>>>0<1){d=d+1|0}c=m;i[c+16>>2]=h;i[c+20>>2]=d;g:{if(j[s+36|0]<=1){d=r+5|0;if(d>>>0<5){b=b+1|0}c=d;d=b;if((f|0)<(b|0)?1:(f|0)<=(b|0)?t>>>0<c>>>0:0){break a}b=h+n|0;s=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[q+52>>2]=s;i[m+16>>2]=c;i[m+20>>2]=d;break g}if(!Pf(1,q+52|0,m)){break a}s=i[q+52>>2]}if(p>>>0<s>>>0|p>>>0>((s>>>0)/3|0)+s>>>0){break a}b=i[a+4>>2];h=i[b+32>>2];h:{if(j[b+36|0]<=1){m=i[h+12>>2];d=i[h+20>>2];f=i[h+16>>2];b=f+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?l[h+8>>2]<c>>>0:0){break a}d=f+i[h>>2]|0;t=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[q+48>>2]=t;i[h+16>>2]=c;i[h+20>>2]=b;break h}if(!Pf(1,q+48|0,h)){break a}t=i[q+48>>2]}if(t>>>0>s>>>0){break a}i[a+28>>2]=i[a+24>>2];b=Dm(88);wk(b);d=i[a+8>>2];i[a+8>>2]=b;r=a+8|0;if(d){Qf(r,d);if(!i[r>>2]){break a}}c=i[a+160>>2];i[a+164>>2]=c;i:{j:{if(i[a+168>>2]-c>>2>>>0>=p>>>0){break j}if(p>>>0>=1073741824){break i}b=p<<2;d=Dm(b);i[a+164>>2]=d;i[a+160>>2]=d;i[a+168>>2]=b+d;if(!c){break j}nn(c)}c=i[a+172>>2];i[a+176>>2]=c;k:{l:{if(i[a+180>>2]-c>>2>>>0>=p>>>0){break l}if(p>>>0>=1073741824){break k}b=p<<2;d=Dm(b);i[a+176>>2]=d;i[a+172>>2]=d;i[a+180>>2]=b+d;if(!c){break l}nn(c)}i[a+92>>2]=-1;i[a+84>>2]=-1;i[a+88>>2]=-1;i[a+40>>2]=i[a+36>>2];i[a- -64>>2]=0;i[a+52>>2]=i[a+48>>2];i[a+76>>2]=i[a+72>>2];n=a+216|0;e=i[a+216>>2];d=e;c=i[a+220>>2];if((d|0)!=(c|0)){while(1){b=i[c+ -12>>2];if(b){i[c+ -8>>2]=b;nn(b)}b=i[c+ -28>>2];if(b){i[c+ -24>>2]=b;nn(b)}b=c+ -144|0;d=i[c+ -40>>2];if(d){i[c+ -36>>2]=d;nn(d)}Rf(c+ -140|0);c=b;if((e|0)!=(b|0)){continue}break}d=i[n>>2]}i[a+220>>2]=e;b=(e-d|0)/144|0;m:{if(b>>>0<v>>>0){Sf(n,v-b|0);break m}if(b>>>0<=v>>>0){break m}c=o(v,144)+d|0;if((c|0)!=(e|0)){while(1){b=i[e+ -12>>2];if(b){i[e+ -8>>2]=b;nn(b)}b=i[e+ -28>>2];if(b){i[e+ -24>>2]=b;nn(b)}b=e+ -144|0;d=i[e+ -40>>2];if(d){i[e+ -36>>2]=d;nn(d)}Rf(e+ -140|0);e=b;if((b|0)!=(c|0)){continue}break}}i[a+220>>2]=c}e=0;if(!Gk(i[r>>2],p,i[u>>2]+t|0)){break a}b=i[a+156>>2];g[q|0]=1;Jf(a+120|0,b+t|0,q);d=i[a+4>>2];b=k[d+36>>1];b=(b<<24|b<<8&16711680)>>>16|0;n:{if(b>>>0<=513){h=i[d+32>>2];o:{if(b>>>0<=511){m=i[h+12>>2];d=i[h+20>>2];f=i[h+16>>2];b=f+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?l[h+8>>2]<c>>>0:0){break a}d=f+i[h>>2]|0;p=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[h+16>>2]=c;i[h+20>>2]=b;break o}if(!Pf(1,q+44|0,h)){break a}p=i[q+44>>2]}if(!p){break a}c=i[i[a+4>>2]+32>>2];d=i[c+8>>2];b=i[c+16>>2];f=d-b>>>0<p>>>0;b=i[c+12>>2]-(i[c+20>>2]+(d>>>0<b>>>0)|0)|0;if((b|0)<0?1:(b|0)<=0?f:0){break a}c=zh(q);f=i[i[a+4>>2]+32>>2];b=i[f+16>>2];d=i[f+8>>2];Bh(c,(b+i[f>>2]|0)+p|0,(d-b|0)-p|0,k[f+38>>1]);d=Tf(a,c);if((d|0)==-1){break a}b=d;h=b>>31;break n}b=-1;h=-1;if((Tf(a,i[d+32>>2])|0)==-1){break a}}i[a+376>>2]=a;f=a+232|0;d=i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2];m=i[d>>2]+i[d+16>>2]|0;c=i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2];d=i[c+8>>2];c=i[c+16>>2];Bh(f,m,d-c|0,k[i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2]+38>>1]);w=a,y=M[i[i[a>>2]+36>>2]](a)|0,i[w+380>>2]=y;i[a+372>>2]=v;i[a+384>>2]=i[a+156>>2]+t;c=zh(q);p:{if(!kg(f,c)){break p}m=lg(a,s);if((m|0)==-1){break p}f=i[i[a+4>>2]+32>>2];d=i[c+16>>2];e=d+i[c>>2]|0;c=i[c+8>>2];Bh(f,e,c-d|0,k[f+38>>1]);c=i[a+4>>2];d=k[c+36>>1];f=(d<<24|d<<8&16711680)>>>16|0;if(f>>>0<=513){d=i[c+32>>2];c=d;p=c;e=h+i[c+20>>2]|0;d=b+i[c+16>>2]|0;if(d>>>0<b>>>0){e=e+1|0}i[p+16>>2]=d;i[c+20>>2]=e}q:{if(i[a+220>>2]==i[a+216>>2]){break q}b=i[r>>2];d=i[b>>2];b=i[b+4>>2];r:{if(f>>>0>=513){if((b|0)==(d|0)){break q}c=0;break r}if((b|0)==(d|0)){break q}c=0;while(1){if(Wf(a,c)){c=c+3|0;b=i[r>>2];if(c>>>0<i[b+4>>2]-i[b>>2]>>2>>>0){continue}break q}break}e=0;break p}while(1){if(Xf(a,c)){c=c+3|0;b=i[r>>2];if(c>>>0<i[b+4>>2]-i[b>>2]>>2>>>0){continue}break q}break}e=0;break p}if(j[a+308|0]){Eh(a+272|0)}if(k[a+270>>1]<=513){Eh(a+328|0)}c=i[a+216>>2];if((c|0)!=i[a+220>>2]){u=0;while(1){e=o(u,144);Qk((e+c|0)+4|0,i[r>>2]);b=i[n>>2];f=b+e|0;c=i[f+132>>2];d=i[f+136>>2];if((c|0)!=(d|0)){Sk(f+4|0,i[c>>2]);c=c+4|0;if((d|0)!=(c|0)){while(1){Sk((e+i[n>>2]|0)+4|0,i[c>>2]);c=c+4|0;if((d|0)!=(c|0)){continue}break}}b=i[n>>2]}Rk((b+e|0)+4|0);u=u+1|0;c=i[a+216>>2];if(u>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}}b=i[a+8>>2];Yf(a+184|0,i[b+28>>2]-i[b+24>>2]>>2);e=i[a+216>>2];if((e|0)!=i[a+220>>2]){c=0;while(1){b=o(c,144)+e|0;d=i[b+60>>2]-i[b+56>>2]>>2;f=b+104|0;b=i[a+8>>2];b=i[b+28>>2]-i[b+24>>2]>>2;Yf(f,(d|0)<(b|0)?b:d);c=c+1|0;e=i[a+216>>2];if(c>>>0<(i[a+220>>2]-e|0)/144>>>0){continue}break}}e=Zf(a,m)}break a}Ba(12220);x()}Ba(12220);x()}e=0}J=q- -64|0;return e|0}function eg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0;q=J+ -64|0;J=q;i[a+132>>2]=0;if(i[a+148>>2]){c=i[a+144>>2];if(c){while(1){b=i[c>>2];nn(c);c=b;if(b){continue}break}}i[a+144>>2]=0;b=i[a+140>>2];if(b){c=0;while(1){i[i[a+136>>2]+(c<<2)>>2]=0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}i[a+148>>2]=0}a:{b:{c=i[a+4>>2];e=j[c+36|0];b=e<<8|j[c+37|0];c:{if(b>>>0>513){break c}n=i[c+32>>2];if(b>>>0<=511){h=i[n+12>>2];d=i[n+20>>2];m=i[n+16>>2];b=m+4|0;if(b>>>0<4){d=d+1|0}f=b;b=d;if((h|0)<(b|0)?1:(h|0)<=(b|0)?l[n+8>>2]<f>>>0:0){break b}d=m+i[n>>2]|0;d=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[n+16>>2]=f;i[n+20>>2]=b;i[a+132>>2]=d;break c}if(!Pf(1,q,n)){break b}c=i[a+4>>2];e=j[c+36|0];i[a+132>>2]=i[q>>2]}n=i[c+32>>2];d:{e:{f:{if((e&255)>>>0<=1){e=0;h=i[n+12>>2];b=i[n+20>>2];m=i[n+16>>2];d=m+4|0;if(d>>>0<4){b=b+1|0}f=d;d=b;if((h|0)<(b|0)?1:(h|0)<=(b|0)?l[n+8>>2]<f>>>0:0){break a}b=m+i[n>>2]|0;b=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[q+60>>2]=b;i[n+16>>2]=f;i[n+20>>2]=d;i[a+156>>2]=b;u=a+156|0;break f}e=0;if(!Pf(1,q+60|0,n)){break a}c=i[a+4>>2];b=j[c+36|0];i[a+156>>2]=i[q+60>>2];u=a+156|0;if(b>>>0>1){break e}}h=i[c+32>>2];b=i[h+8>>2];m=i[h+12>>2];p=b;d=i[h+20>>2];f=i[h+16>>2];b=f+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?p>>>0<c>>>0:0){break a}d=f+i[h>>2]|0;p=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[q+56>>2]=p;i[h+16>>2]=c;i[h+20>>2]=b;break d}if(!Pf(1,q+56|0,i[c+32>>2])){break a}p=i[q+56>>2]}if(p>>>0>1431655765|l[u>>2]>o(p,3)>>>0){break a}s=i[a+4>>2];m=i[s+32>>2];t=i[m+8>>2];r=i[m+16>>2];f=i[m+12>>2];c=f;b=i[m+20>>2];if((c|0)<(b|0)?1:(c|0)<=(b|0)?t>>>0<=r>>>0:0){break a}n=i[m>>2];v=j[n+r|0];d=b;h=r+1|0;if(h>>>0<1){d=d+1|0}c=m;i[c+16>>2]=h;i[c+20>>2]=d;g:{if(j[s+36|0]<=1){d=r+5|0;if(d>>>0<5){b=b+1|0}c=d;d=b;if((f|0)<(b|0)?1:(f|0)<=(b|0)?t>>>0<c>>>0:0){break a}b=h+n|0;s=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[q+52>>2]=s;i[m+16>>2]=c;i[m+20>>2]=d;break g}if(!Pf(1,q+52|0,m)){break a}s=i[q+52>>2]}if(p>>>0<s>>>0|p>>>0>((s>>>0)/3|0)+s>>>0){break a}b=i[a+4>>2];h=i[b+32>>2];h:{if(j[b+36|0]<=1){m=i[h+12>>2];d=i[h+20>>2];f=i[h+16>>2];b=f+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?l[h+8>>2]<c>>>0:0){break a}d=f+i[h>>2]|0;t=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[q+48>>2]=t;i[h+16>>2]=c;i[h+20>>2]=b;break h}if(!Pf(1,q+48|0,h)){break a}t=i[q+48>>2]}if(t>>>0>s>>>0){break a}i[a+28>>2]=i[a+24>>2];b=Dm(88);wk(b);d=i[a+8>>2];i[a+8>>2]=b;r=a+8|0;if(d){Qf(r,d);if(!i[r>>2]){break a}}c=i[a+160>>2];i[a+164>>2]=c;i:{j:{if(i[a+168>>2]-c>>2>>>0>=p>>>0){break j}if(p>>>0>=1073741824){break i}b=p<<2;d=Dm(b);i[a+164>>2]=d;i[a+160>>2]=d;i[a+168>>2]=b+d;if(!c){break j}nn(c)}c=i[a+172>>2];i[a+176>>2]=c;k:{l:{if(i[a+180>>2]-c>>2>>>0>=p>>>0){break l}if(p>>>0>=1073741824){break k}b=p<<2;d=Dm(b);i[a+176>>2]=d;i[a+172>>2]=d;i[a+180>>2]=b+d;if(!c){break l}nn(c)}i[a+92>>2]=-1;i[a+84>>2]=-1;i[a+88>>2]=-1;i[a+40>>2]=i[a+36>>2];i[a- -64>>2]=0;i[a+52>>2]=i[a+48>>2];i[a+76>>2]=i[a+72>>2];n=a+216|0;e=i[a+216>>2];d=e;c=i[a+220>>2];if((d|0)!=(c|0)){while(1){b=i[c+ -12>>2];if(b){i[c+ -8>>2]=b;nn(b)}b=i[c+ -28>>2];if(b){i[c+ -24>>2]=b;nn(b)}b=c+ -144|0;d=i[c+ -40>>2];if(d){i[c+ -36>>2]=d;nn(d)}Rf(c+ -140|0);c=b;if((e|0)!=(b|0)){continue}break}d=i[n>>2]}i[a+220>>2]=e;b=(e-d|0)/144|0;m:{if(b>>>0<v>>>0){Sf(n,v-b|0);break m}if(b>>>0<=v>>>0){break m}c=o(v,144)+d|0;if((c|0)!=(e|0)){while(1){b=i[e+ -12>>2];if(b){i[e+ -8>>2]=b;nn(b)}b=i[e+ -28>>2];if(b){i[e+ -24>>2]=b;nn(b)}b=e+ -144|0;d=i[e+ -40>>2];if(d){i[e+ -36>>2]=d;nn(d)}Rf(e+ -140|0);e=b;if((b|0)!=(c|0)){continue}break}}i[a+220>>2]=c}e=0;if(!Gk(i[r>>2],p,i[u>>2]+t|0)){break a}b=i[a+156>>2];g[q|0]=1;Jf(a+120|0,b+t|0,q);d=i[a+4>>2];b=k[d+36>>1];b=(b<<24|b<<8&16711680)>>>16|0;n:{if(b>>>0<=513){h=i[d+32>>2];o:{if(b>>>0<=511){m=i[h+12>>2];d=i[h+20>>2];f=i[h+16>>2];b=f+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?l[h+8>>2]<c>>>0:0){break a}d=f+i[h>>2]|0;p=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[h+16>>2]=c;i[h+20>>2]=b;break o}if(!Pf(1,q+44|0,h)){break a}p=i[q+44>>2]}if(!p){break a}c=i[i[a+4>>2]+32>>2];d=i[c+8>>2];b=i[c+16>>2];f=d-b>>>0<p>>>0;b=i[c+12>>2]-(i[c+20>>2]+(d>>>0<b>>>0)|0)|0;if((b|0)<0?1:(b|0)<=0?f:0){break a}c=zh(q);f=i[i[a+4>>2]+32>>2];b=i[f+16>>2];d=i[f+8>>2];Bh(c,(b+i[f>>2]|0)+p|0,(d-b|0)-p|0,k[f+38>>1]);d=Tf(a,c);if((d|0)==-1){break a}b=d;h=b>>31;break n}b=-1;h=-1;if((Tf(a,i[d+32>>2])|0)==-1){break a}}i[a+376>>2]=a;f=a+232|0;d=i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2];m=i[d>>2]+i[d+16>>2]|0;c=i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2];d=i[c+8>>2];c=i[c+16>>2];Bh(f,m,d-c|0,k[i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2]+38>>1]);w=a,y=M[i[i[a>>2]+36>>2]](a)|0,i[w+380>>2]=y;i[a+372>>2]=v;i[a+384>>2]=i[a+156>>2]+t;c=zh(q);p:{if(!fg(f,c)){break p}m=gg(a,s);if((m|0)==-1){break p}f=i[i[a+4>>2]+32>>2];d=i[c+16>>2];e=d+i[c>>2]|0;c=i[c+8>>2];Bh(f,e,c-d|0,k[f+38>>1]);c=i[a+4>>2];d=k[c+36>>1];f=(d<<24|d<<8&16711680)>>>16|0;if(f>>>0<=513){d=i[c+32>>2];c=d;p=c;e=h+i[c+20>>2]|0;d=b+i[c+16>>2]|0;if(d>>>0<b>>>0){e=e+1|0}i[p+16>>2]=d;i[c+20>>2]=e}q:{if(i[a+220>>2]==i[a+216>>2]){break q}b=i[r>>2];d=i[b>>2];b=i[b+4>>2];r:{if(f>>>0>=513){if((b|0)==(d|0)){break q}c=0;break r}if((b|0)==(d|0)){break q}c=0;while(1){if(Wf(a,c)){c=c+3|0;b=i[r>>2];if(c>>>0<i[b+4>>2]-i[b>>2]>>2>>>0){continue}break q}break}e=0;break p}while(1){if(Xf(a,c)){c=c+3|0;b=i[r>>2];if(c>>>0<i[b+4>>2]-i[b>>2]>>2>>>0){continue}break q}break}e=0;break p}if(j[a+308|0]){Eh(a+272|0)}if(k[a+270>>1]<=513){Eh(a+328|0)}c=i[a+216>>2];if((c|0)!=i[a+220>>2]){u=0;while(1){e=o(u,144);Qk((e+c|0)+4|0,i[r>>2]);b=i[n>>2];f=b+e|0;c=i[f+132>>2];d=i[f+136>>2];if((c|0)!=(d|0)){Sk(f+4|0,i[c>>2]);c=c+4|0;if((d|0)!=(c|0)){while(1){Sk((e+i[n>>2]|0)+4|0,i[c>>2]);c=c+4|0;if((d|0)!=(c|0)){continue}break}}b=i[n>>2]}Rk((b+e|0)+4|0);u=u+1|0;c=i[a+216>>2];if(u>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}}b=i[a+8>>2];Yf(a+184|0,i[b+28>>2]-i[b+24>>2]>>2);e=i[a+216>>2];if((e|0)!=i[a+220>>2]){c=0;while(1){b=o(c,144)+e|0;d=i[b+60>>2]-i[b+56>>2]>>2;f=b+104|0;b=i[a+8>>2];b=i[b+28>>2]-i[b+24>>2]>>2;Yf(f,(d|0)<(b|0)?b:d);c=c+1|0;e=i[a+216>>2];if(c>>>0<(i[a+220>>2]-e|0)/144>>>0){continue}break}}e=Zf(a,m)}break a}Ba(12220);x()}Ba(12220);x()}e=0}J=q- -64|0;return e|0}function Of(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;q=J+ -64|0;J=q;i[a+132>>2]=0;if(i[a+148>>2]){c=i[a+144>>2];if(c){while(1){b=i[c>>2];nn(c);c=b;if(b){continue}break}}i[a+144>>2]=0;b=i[a+140>>2];if(b){c=0;while(1){i[i[a+136>>2]+(c<<2)>>2]=0;c=c+1|0;if((b|0)!=(c|0)){continue}break}}i[a+148>>2]=0}a:{b:{c=i[a+4>>2];f=j[c+36|0];b=f<<8|j[c+37|0];c:{if(b>>>0>513){break c}n=i[c+32>>2];if(b>>>0<=511){h=i[n+12>>2];d=i[n+20>>2];m=i[n+16>>2];b=m+4|0;if(b>>>0<4){d=d+1|0}e=b;b=d;if((h|0)<(b|0)?1:(h|0)<=(b|0)?l[n+8>>2]<e>>>0:0){break b}d=m+i[n>>2]|0;d=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[n+16>>2]=e;i[n+20>>2]=b;i[a+132>>2]=d;break c}if(!Pf(1,q,n)){break b}c=i[a+4>>2];f=j[c+36|0];i[a+132>>2]=i[q>>2]}n=i[c+32>>2];d:{e:{f:{if((f&255)>>>0<=1){f=0;h=i[n+12>>2];b=i[n+20>>2];m=i[n+16>>2];d=m+4|0;if(d>>>0<4){b=b+1|0}e=d;d=b;if((h|0)<(b|0)?1:(h|0)<=(b|0)?l[n+8>>2]<e>>>0:0){break a}b=m+i[n>>2]|0;b=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[q+60>>2]=b;i[n+16>>2]=e;i[n+20>>2]=d;i[a+156>>2]=b;t=a+156|0;break f}f=0;if(!Pf(1,q+60|0,n)){break a}c=i[a+4>>2];b=j[c+36|0];i[a+156>>2]=i[q+60>>2];t=a+156|0;if(b>>>0>1){break e}}h=i[c+32>>2];b=i[h+8>>2];m=i[h+12>>2];p=b;d=i[h+20>>2];e=i[h+16>>2];b=e+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?p>>>0<c>>>0:0){break a}d=e+i[h>>2]|0;p=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[q+56>>2]=p;i[h+16>>2]=c;i[h+20>>2]=b;break d}if(!Pf(1,q+56|0,i[c+32>>2])){break a}p=i[q+56>>2]}if(p>>>0>1431655765|l[t>>2]>o(p,3)>>>0){break a}r=i[a+4>>2];m=i[r+32>>2];s=i[m+8>>2];v=i[m+16>>2];e=i[m+12>>2];c=e;b=i[m+20>>2];if((c|0)<(b|0)?1:(c|0)<=(b|0)?s>>>0<=v>>>0:0){break a}n=i[m>>2];u=j[n+v|0];d=b;h=v+1|0;if(h>>>0<1){d=d+1|0}c=m;i[c+16>>2]=h;i[c+20>>2]=d;g:{if(j[r+36|0]<=1){d=v+5|0;if(d>>>0<5){b=b+1|0}c=d;d=b;if((e|0)<(b|0)?1:(e|0)<=(b|0)?s>>>0<c>>>0:0){break a}b=h+n|0;s=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[q+52>>2]=s;i[m+16>>2]=c;i[m+20>>2]=d;break g}if(!Pf(1,q+52|0,m)){break a}s=i[q+52>>2]}if(p>>>0<s>>>0|p>>>0>((s>>>0)/3|0)+s>>>0){break a}b=i[a+4>>2];h=i[b+32>>2];h:{if(j[b+36|0]<=1){m=i[h+12>>2];d=i[h+20>>2];e=i[h+16>>2];b=e+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?l[h+8>>2]<c>>>0:0){break a}d=e+i[h>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[q+48>>2]=e;i[h+16>>2]=c;i[h+20>>2]=b;break h}if(!Pf(1,q+48|0,h)){break a}e=i[q+48>>2]}if(e>>>0>s>>>0){break a}i[a+28>>2]=i[a+24>>2];b=Dm(88);wk(b);d=i[a+8>>2];i[a+8>>2]=b;r=a+8|0;if(d){Qf(r,d);if(!i[r>>2]){break a}}c=i[a+160>>2];i[a+164>>2]=c;i:{j:{if(i[a+168>>2]-c>>2>>>0>=p>>>0){break j}if(p>>>0>=1073741824){break i}b=p<<2;d=Dm(b);i[a+164>>2]=d;i[a+160>>2]=d;i[a+168>>2]=b+d;if(!c){break j}nn(c)}c=i[a+172>>2];i[a+176>>2]=c;k:{l:{if(i[a+180>>2]-c>>2>>>0>=p>>>0){break l}if(p>>>0>=1073741824){break k}b=p<<2;d=Dm(b);i[a+176>>2]=d;i[a+172>>2]=d;i[a+180>>2]=b+d;if(!c){break l}nn(c)}i[a+92>>2]=-1;i[a+84>>2]=-1;i[a+88>>2]=-1;i[a+40>>2]=i[a+36>>2];i[a- -64>>2]=0;i[a+52>>2]=i[a+48>>2];i[a+76>>2]=i[a+72>>2];n=a+216|0;f=i[a+216>>2];d=f;c=i[a+220>>2];if((d|0)!=(c|0)){while(1){b=i[c+ -12>>2];if(b){i[c+ -8>>2]=b;nn(b)}b=i[c+ -28>>2];if(b){i[c+ -24>>2]=b;nn(b)}b=c+ -144|0;d=i[c+ -40>>2];if(d){i[c+ -36>>2]=d;nn(d)}Rf(c+ -140|0);c=b;if((f|0)!=(b|0)){continue}break}d=i[n>>2]}i[a+220>>2]=f;b=(f-d|0)/144|0;m:{if(b>>>0<u>>>0){Sf(n,u-b|0);break m}if(b>>>0<=u>>>0){break m}c=o(u,144)+d|0;if((c|0)!=(f|0)){while(1){b=i[f+ -12>>2];if(b){i[f+ -8>>2]=b;nn(b)}b=i[f+ -28>>2];if(b){i[f+ -24>>2]=b;nn(b)}b=f+ -144|0;d=i[f+ -40>>2];if(d){i[f+ -36>>2]=d;nn(d)}Rf(f+ -140|0);f=b;if((b|0)!=(c|0)){continue}break}}i[a+220>>2]=c}f=0;if(!Gk(i[r>>2],p,i[t>>2]+e|0)){break a}b=i[a+156>>2];g[q|0]=1;Jf(a+120|0,b+e|0,q);d=i[a+4>>2];b=k[d+36>>1];b=(b<<24|b<<8&16711680)>>>16|0;n:{if(b>>>0<=513){h=i[d+32>>2];o:{if(b>>>0<=511){m=i[h+12>>2];d=i[h+20>>2];e=i[h+16>>2];b=e+4|0;if(b>>>0<4){d=d+1|0}c=b;b=d;if((m|0)<(b|0)?1:(m|0)<=(b|0)?l[h+8>>2]<c>>>0:0){break a}d=e+i[h>>2]|0;p=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[h+16>>2]=c;i[h+20>>2]=b;break o}if(!Pf(1,q+44|0,h)){break a}p=i[q+44>>2]}if(!p){break a}c=i[i[a+4>>2]+32>>2];d=i[c+8>>2];b=i[c+16>>2];e=d-b>>>0<p>>>0;b=i[c+12>>2]-(i[c+20>>2]+(d>>>0<b>>>0)|0)|0;if((b|0)<0?1:(b|0)<=0?e:0){break a}c=zh(q);e=i[i[a+4>>2]+32>>2];b=i[e+16>>2];d=i[e+8>>2];Bh(c,(b+i[e>>2]|0)+p|0,(d-b|0)-p|0,k[e+38>>1]);d=Tf(a,c);if((d|0)==-1){break a}b=d;h=b>>31;break n}b=-1;h=-1;if((Tf(a,i[d+32>>2])|0)==-1){break a}}i[a+376>>2]=a;e=a+232|0;d=i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2];m=i[d>>2]+i[d+16>>2]|0;c=i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2];d=i[c+8>>2];c=i[c+16>>2];Bh(e,m,d-c|0,k[i[(M[i[i[a>>2]+32>>2]](a)|0)+32>>2]+38>>1]);i[a+372>>2]=u;c=zh(q);p:{if(!Uf(e,c)){break p}m=Vf(a,s);if((m|0)==-1){break p}e=i[i[a+4>>2]+32>>2];d=i[c+16>>2];f=d+i[c>>2]|0;c=i[c+8>>2];Bh(e,f,c-d|0,k[e+38>>1]);c=i[a+4>>2];d=k[c+36>>1];e=(d<<24|d<<8&16711680)>>>16|0;if(e>>>0<=513){d=i[c+32>>2];c=d;p=c;f=h+i[c+20>>2]|0;d=b+i[c+16>>2]|0;if(d>>>0<b>>>0){f=f+1|0}i[p+16>>2]=d;i[c+20>>2]=f}q:{if(i[a+220>>2]==i[a+216>>2]){break q}b=i[r>>2];d=i[b>>2];b=i[b+4>>2];r:{if(e>>>0>=513){if((b|0)==(d|0)){break q}c=0;break r}if((b|0)==(d|0)){break q}c=0;while(1){if(Wf(a,c)){c=c+3|0;b=i[r>>2];if(c>>>0<i[b+4>>2]-i[b>>2]>>2>>>0){continue}break q}break}f=0;break p}while(1){if(Xf(a,c)){c=c+3|0;b=i[r>>2];if(c>>>0<i[b+4>>2]-i[b>>2]>>2>>>0){continue}break q}break}f=0;break p}if(j[a+308|0]){Eh(a+272|0)}if(k[a+270>>1]<=513){Eh(a+328|0)}c=i[a+216>>2];if((c|0)!=i[a+220>>2]){t=0;while(1){f=o(t,144);Qk((f+c|0)+4|0,i[r>>2]);b=i[n>>2];e=b+f|0;c=i[e+132>>2];d=i[e+136>>2];if((c|0)!=(d|0)){Sk(e+4|0,i[c>>2]);c=c+4|0;if((d|0)!=(c|0)){while(1){Sk((f+i[n>>2]|0)+4|0,i[c>>2]);c=c+4|0;if((d|0)!=(c|0)){continue}break}}b=i[n>>2]}Rk((b+f|0)+4|0);t=t+1|0;c=i[a+216>>2];if(t>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}}b=i[a+8>>2];Yf(a+184|0,i[b+28>>2]-i[b+24>>2]>>2);f=i[a+216>>2];if((f|0)!=i[a+220>>2]){c=0;while(1){b=o(c,144)+f|0;d=i[b+60>>2]-i[b+56>>2]>>2;e=b+104|0;b=i[a+8>>2];b=i[b+28>>2]-i[b+24>>2]>>2;Yf(e,(d|0)<(b|0)?b:d);c=c+1|0;f=i[a+216>>2];if(c>>>0<(i[a+220>>2]-f|0)/144>>>0){continue}break}}f=Zf(a,m)}break a}Ba(12220);x()}Ba(12220);x()}f=0}J=q- -64|0;return f|0}function sb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;g=J-32|0;J=g;f=i[a+12>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{if(f){if(f>>>0>=1073741824){break a}e=f<<2;h=Dm(e);i[g+8>>2]=h;d=e+h|0;i[g+16>>2]=d;qn(h,0,e);i[g+12>>2]=d}k=i[a+120>>2];e=i[k>>2];if(e){i[k+4>>2]=e;nn(e);i[k+8>>2]=0;i[k>>2]=0;i[k+4>>2]=0;f=i[a+12>>2];h=i[g+8>>2];d=i[g+12>>2]}i[k+4>>2]=d;i[k>>2]=h;i[k+8>>2]=i[g+16>>2];h=0;i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;b:{if(f){if(f>>>0>=1073741824){break b}e=f<<2;m=Dm(e);i[g+8>>2]=m;h=e+m|0;i[g+16>>2]=h;qn(m,0,e);i[g+12>>2]=h}d=i[a+132>>2];e=i[d>>2];if(e){i[d+4>>2]=e;nn(e);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;m=i[g+8>>2];h=i[g+12>>2]}i[d+4>>2]=h;i[d>>2]=m;i[d+8>>2]=i[g+16>>2];h=g+24|0;i[h>>2]=0;i[h+4>>2]=0;d=g+16|0;i[d>>2]=0;i[d+4>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;Nb(g+8|0);k=i[g+12>>2];e=0;c:{if((k|0)==i[d>>2]){break c}d=i[h>>2]+i[g+28>>2]|0;e=(d>>>0)/341|0;e=i[k+(e<<2)>>2]+o(d-o(e,341)|0,12)|0}i[e+4>>2]=0;i[e+8>>2]=0;i[e>>2]=b;n=1;e=i[g+28>>2];f=e+1|0;i[g+28>>2]=f;d:{if(f>>>0<e>>>0){break d}while(1){e=i[g+12>>2];h=f+ -1|0;n=h+i[g+24>>2]|0;d=(n>>>0)/341|0;d=i[e+(d<<2)>>2]+o(n-o(d,341)|0,12)|0;u=i[d+8>>2];k=i[d+4>>2];t=i[d>>2];i[g+28>>2]=h;d=i[g+16>>2];e=d-e|0;if((e?o(e>>2,341)+ -1|0:0)-n>>>0>=682){nn(i[d+ -4>>2]);i[g+16>>2]=i[g+16>>2]+ -4}n=0;if(t>>>0>b>>>0){break d}e=i[a+120>>2];v=o(u,12);A=v+i[a+132>>2]|0;m=vl(a,A,k);if(m>>>0>=l[a+12>>2]){break d}z=e+v|0;e:{f:{w=m<<2;e=i[a>>2]-i[w+i[A>>2]>>2]|0;if(!e){if(!t){break f}q=0;while(1){e=0;f=i[c+16>>2];g:{if((f|0)==i[c+20>>2]){break g}while(1){k=o(e,20)+f|0;d=i[z>>2]+(i[k+4>>2]<<2)|0;s=i[k>>2];m=i[k+12>>2];h:{if(m>>>0>3){break h}h=i[c+12>>2];p=k+16|0;if(!i[p>>2]){d=h;break h}n=k+12|0;f=0;while(1){k=pn(h,(f<<2)+d|0,m);m=i[n>>2];h=k+m|0;f=f+1|0;if(f>>>0<l[p>>2]){continue}break}d=i[c+12>>2]}f=i[c+28>>2];f=j[s+84|0]?f:i[i[s+68>>2]+(f<<2)>>2];if(f>>>0>=l[s+80>>2]){break g}k=i[s+40>>2];pn(i[i[s>>2]>>2]+o(k,f)|0,d,k);e=e+1|0;f=i[c+16>>2];if(e>>>0<(i[c+20>>2]-f|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;q=q+1|0;if((t|0)!=(q|0)){continue}break}break f}i:{j:{k:{l:{if(t>>>0<=2){e=i[a+108>>2];i[e>>2]=m;h=1;f=i[a+12>>2];if(f>>>0>1){break l}break i}if(l[a+8>>2]>l[a+4>>2]){break d}k=1<<e+ -1;e=i[a+120>>2];q=u+1|0;s=o(q,12);d=e+s|0;if((d|0)!=(z|0)){ua(d,i[z>>2],i[z+4>>2]);e=i[a+120>>2]}e=w+i[e+s>>2]|0;i[e>>2]=k+i[e>>2];p=r(t)^31;n=i[a+32>>2];k=32-n|0;m:{if((p|0)<=(k|0)){h=i[a+28>>2];if((h|0)==i[a+20>>2]){k=0;break m}d=i[h>>2];e=n+p|0;i[a+32>>2]=e;k=d<<n>>>32-p|0;if((e|0)!=32){break m}i[a+32>>2]=0;i[a+28>>2]=h+4;break m}h=i[a+28>>2];e=h+4|0;if((e|0)==i[a+20>>2]){k=0;break m}d=i[h>>2];i[a+28>>2]=e;e=p-k|0;i[a+32>>2]=e;k=i[h+4>>2]>>>32-e|d<<n>>>32-p}d=(t>>>1|0)-k|0;k=t-d|0;n:{if((k|0)==(d|0)){e=d;break n}p=i[a+88>>2];if((p|0)==i[a+80>>2]){break k}n=i[p>>2];h=i[a+92>>2];e=h+1|0;i[a+92>>2]=e;h=n&-2147483648>>>h;o:{if((e|0)==32){i[a+92>>2]=0;i[a+88>>2]=p+4;if(h){break o}break k}if(!h){break k}}e=k}k=d;break j}while(1){m=(f+ -1|0)==(m|0)?0:m+1|0;i[e+(h<<2)>>2]=m;h=h+1|0;f=i[a+12>>2];if(h>>>0<f>>>0){continue}break}break i}e=d}p=i[a+132>>2];n=p+v|0;h=i[n>>2];d=h+w|0;i[d>>2]=i[d>>2]+1;ua(p+s|0,h,i[n+4>>2]);if(k){d=i[g+28>>2]+i[g+24>>2]|0;n=i[g+16>>2];f=i[g+12>>2];h=n-f|0;if((d|0)==((h?o(h>>2,341)+ -1|0:0)|0)){Nb(g+8|0);n=i[g+16>>2];f=i[g+12>>2];d=i[g+24>>2]+i[g+28>>2]|0}if((f|0)==(n|0)){d=0}else{h=(d>>>0)/341|0;d=i[(h<<2)+f>>2]+o(d-o(h,341)|0,12)|0}i[d+8>>2]=u;i[d+4>>2]=m;i[d>>2]=k;i[g+28>>2]=i[g+28>>2]+1}if(!e){break f}h=i[g+28>>2]+i[g+24>>2]|0;d=i[g+16>>2];f=i[g+12>>2];k=d-f|0;if((h|0)==((k?o(k>>2,341)+ -1|0:0)|0)){Nb(g+8|0);h=i[g+24>>2]+i[g+28>>2]|0;f=i[g+12>>2];d=i[g+16>>2]}if((d|0)==(f|0)){d=0}else{d=(h>>>0)/341|0;d=i[(d<<2)+f>>2]+o(h-o(d,341)|0,12)|0}i[d+8>>2]=q;i[d+4>>2]=m;i[d>>2]=e;f=i[g+28>>2]+1|0;i[g+28>>2]=f;break e}if(!t){break f}v=0;while(1){if(f){p=i[z>>2];n=i[A>>2];u=i[a+96>>2];h=i[a+108>>2];f=0;while(1){w=h+(f<<2)|0;i[u+(i[w>>2]<<2)>>2]=0;e=i[w>>2]<<2;y=i[a>>2]-i[e+n>>2]|0;p:{if(!y){break p}m=e+u|0;s=i[a+52>>2];k=32-s|0;if((y|0)<=(k|0)){d=i[a+48>>2];if((d|0)==i[a+40>>2]){i[m>>2]=0;break p}i[m>>2]=i[d>>2]<<s>>>32-y;e=y+i[a+52>>2]|0;i[a+52>>2]=e;if((e|0)!=32){break p}i[a+52>>2]=0;i[a+48>>2]=d+4;break p}q=i[a+48>>2];e=q+4|0;if((e|0)==i[a+40>>2]){i[m>>2]=0;break p}d=i[q>>2];i[a+48>>2]=e;e=y-k|0;i[a+52>>2]=e;i[m>>2]=i[q+4>>2]>>>32-e|d<<s>>>32-y}d=i[w>>2]<<2;e=d+u|0;i[e>>2]=i[e>>2]|i[d+p>>2];f=f+1|0;if(f>>>0<l[a+12>>2]){continue}break}}e=0;f=i[c+16>>2];q:{if((f|0)==i[c+20>>2]){break q}while(1){k=o(e,20)+f|0;d=i[a+96>>2]+(i[k+4>>2]<<2)|0;q=i[k>>2];m=i[k+12>>2];r:{if(m>>>0>3){break r}h=i[c+12>>2];p=k+16|0;if(!i[p>>2]){d=h;break r}n=k+12|0;f=0;while(1){k=pn(h,(f<<2)+d|0,m);m=i[n>>2];h=k+m|0;f=f+1|0;if(f>>>0<l[p>>2]){continue}break}d=i[c+12>>2]}f=i[c+28>>2];f=j[q+84|0]?f:i[i[q+68>>2]+(f<<2)>>2];if(f>>>0>=l[q+80>>2]){break q}k=i[q+40>>2];pn(i[i[q>>2]>>2]+o(k,f)|0,d,k);e=e+1|0;f=i[c+16>>2];if(e>>>0<(i[c+20>>2]-f|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;v=v+1|0;if((v|0)==(t|0)){break f}f=i[a+12>>2];continue}}f=i[g+28>>2]}if(f){continue}break}n=1}b=i[g+24>>2];a=(b>>>0)/341|0;f=i[g+12>>2];h=i[g+16>>2];s:{if((f|0)==(h|0)){break s}k=(a<<2)+f|0;d=i[k>>2];m=d+o(b-o(a,341)|0,12)|0;b=b+i[g+28>>2]|0;a=(b>>>0)/341|0;a=i[(a<<2)+f>>2]+o(b-o(a,341)|0,12)|0;if((m|0)==(a|0)){break s}while(1){m=m+12|0;if((m-d|0)==4092){d=i[k+4>>2];m=d;k=k+4|0}if((a|0)!=(m|0)){continue}break}}i[g+28>>2]=0;m=h-f>>2;if(m>>>0>2){while(1){nn(i[f>>2]);f=i[g+12>>2]+4|0;i[g+12>>2]=f;h=i[g+16>>2];m=h-f>>2;if(m>>>0>2){continue}break}}d=170;t:{switch(m+ -1|0){case 1:d=341;case 0:i[g+24>>2]=d;break;default:break t}}u:{if((f|0)==(h|0)){break u}while(1){nn(i[f>>2]);f=f+4|0;if((h|0)!=(f|0)){continue}break}b=i[g+16>>2];a=i[g+12>>2];if((b|0)==(a|0)){break u}i[g+16>>2]=b+(((b-a|0)+ -4>>>2^-1)<<2)}a=i[g+8>>2];if(a){nn(a)}J=g+32|0;return n}Sm();x()}Sm();x()}function ub(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;g=J-32|0;J=g;f=i[a+12>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{if(f){if(f>>>0>=1073741824){break a}e=f<<2;h=Dm(e);i[g+8>>2]=h;d=e+h|0;i[g+16>>2]=d;qn(h,0,e);i[g+12>>2]=d}k=i[a+120>>2];e=i[k>>2];if(e){i[k+4>>2]=e;nn(e);i[k+8>>2]=0;i[k>>2]=0;i[k+4>>2]=0;f=i[a+12>>2];h=i[g+8>>2];d=i[g+12>>2]}i[k+4>>2]=d;i[k>>2]=h;i[k+8>>2]=i[g+16>>2];h=0;i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;b:{if(f){if(f>>>0>=1073741824){break b}e=f<<2;m=Dm(e);i[g+8>>2]=m;h=e+m|0;i[g+16>>2]=h;qn(m,0,e);i[g+12>>2]=h}d=i[a+132>>2];e=i[d>>2];if(e){i[d+4>>2]=e;nn(e);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;m=i[g+8>>2];h=i[g+12>>2]}i[d+4>>2]=h;i[d>>2]=m;i[d+8>>2]=i[g+16>>2];h=g+24|0;i[h>>2]=0;i[h+4>>2]=0;d=g+16|0;i[d>>2]=0;i[d+4>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;Nb(g+8|0);k=i[g+12>>2];e=0;c:{if((k|0)==i[d>>2]){break c}d=i[h>>2]+i[g+28>>2]|0;e=(d>>>0)/341|0;e=i[k+(e<<2)>>2]+o(d-o(e,341)|0,12)|0}i[e+4>>2]=0;i[e+8>>2]=0;i[e>>2]=b;e=1;d=i[g+28>>2];f=d+1|0;i[g+28>>2]=f;d:{if(f>>>0<d>>>0){break d}while(1){e=i[g+12>>2];k=f+ -1|0;n=k+i[g+24>>2]|0;d=(n>>>0)/341|0;d=i[e+(d<<2)>>2]+o(n-o(d,341)|0,12)|0;v=i[d+8>>2];h=i[d+4>>2];t=i[d>>2];i[g+28>>2]=k;d=i[g+16>>2];e=d-e|0;if((e?o(e>>2,341)+ -1|0:0)-n>>>0>=682){nn(i[d+ -4>>2]);i[g+16>>2]=i[g+16>>2]+ -4}if(t>>>0>b>>>0){e=0;break d}e=0;d=i[a+12>>2];m=(h|0)==(d+ -1|0)?0:h+1|0;if(m>>>0>=d>>>0){break d}k=i[a+120>>2];u=o(v,12);y=k+u|0;e:{f:{q=m<<2;s=u+i[a+132>>2]|0;d=i[a>>2]-i[q+i[s>>2]>>2]|0;if(!d){if(!t){break f}p=0;while(1){q=0;f=i[c+16>>2];g:{if((f|0)==i[c+20>>2]){break g}while(1){e=o(q,20)+f|0;d=i[y>>2]+(i[e+4>>2]<<2)|0;s=i[e>>2];m=i[e+12>>2];h:{if(m>>>0>3){break h}h=i[c+12>>2];n=e+16|0;if(!i[n>>2]){d=h;break h}k=e+12|0;f=0;while(1){e=pn(h,(f<<2)+d|0,m);m=i[k>>2];h=e+m|0;f=f+1|0;if(f>>>0<l[n>>2]){continue}break}d=i[c+12>>2]}f=i[c+28>>2];f=j[s+84|0]?f:i[i[s+68>>2]+(f<<2)>>2];if(f>>>0>=l[s+80>>2]){break g}e=i[s+40>>2];pn(i[i[s>>2]>>2]+o(e,f)|0,d,e);q=q+1|0;f=i[c+16>>2];if(q>>>0<(i[c+20>>2]-f|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;p=p+1|0;if((t|0)!=(p|0)){continue}break}break f}i:{j:{k:{l:{if(t>>>0<=2){e=i[a+108>>2];i[e>>2]=m;h=1;f=i[a+12>>2];if(f>>>0>1){break l}break i}if(l[a+8>>2]>l[a+4>>2]){break d}e=u+12|0;ua(e+k|0,i[y>>2],i[y+4>>2]);e=q+i[e+i[a+120>>2]>>2]|0;i[e>>2]=i[e>>2]+(1<<d+ -1);p=r(t)^31;n=i[a+32>>2];k=32-n|0;m:{if((p|0)<=(k|0)){h=i[a+28>>2];if((h|0)==i[a+20>>2]){k=0;break m}d=i[h>>2];e=p+n|0;i[a+32>>2]=e;k=d<<n>>>32-p|0;if((e|0)!=32){break m}i[a+32>>2]=0;i[a+28>>2]=h+4;break m}h=i[a+28>>2];e=h+4|0;if((e|0)==i[a+20>>2]){k=0;break m}d=i[h>>2];i[a+28>>2]=e;e=p-k|0;i[a+32>>2]=e;k=i[h+4>>2]>>>32-e|d<<n>>>32-p}s=v+1|0;d=(t>>>1|0)-k|0;k=t-d|0;n:{if((k|0)==(d|0)){e=d;break n}p=i[a+88>>2];if((p|0)==i[a+80>>2]){break k}n=i[p>>2];h=i[a+92>>2];e=h+1|0;i[a+92>>2]=e;h=n&-2147483648>>>h;o:{if((e|0)==32){i[a+92>>2]=0;i[a+88>>2]=p+4;if(h){break o}break k}if(!h){break k}}e=k}k=d;break j}while(1){m=(f+ -1|0)==(m|0)?0:m+1|0;i[e+(h<<2)>>2]=m;h=h+1|0;f=i[a+12>>2];if(h>>>0<f>>>0){continue}break}break i}e=d}p=i[a+132>>2];n=p+u|0;h=i[n>>2];d=h+q|0;i[d>>2]=i[d>>2]+1;ua(p+o(s,12)|0,h,i[n+4>>2]);if(k){h=i[g+28>>2]+i[g+24>>2]|0;n=i[g+16>>2];f=i[g+12>>2];d=n-f|0;if((h|0)==((d?o(d>>2,341)+ -1|0:0)|0)){Nb(g+8|0);f=i[g+12>>2];n=i[g+16>>2];h=i[g+24>>2]+i[g+28>>2]|0}if((f|0)==(n|0)){d=0}else{d=(h>>>0)/341|0;d=i[(d<<2)+f>>2]+o(h-o(d,341)|0,12)|0}i[d+8>>2]=v;i[d+4>>2]=m;i[d>>2]=k;i[g+28>>2]=i[g+28>>2]+1}if(!e){break f}h=i[g+28>>2]+i[g+24>>2]|0;d=i[g+16>>2];f=i[g+12>>2];k=d-f|0;if((h|0)==((k?o(k>>2,341)+ -1|0:0)|0)){Nb(g+8|0);f=i[g+12>>2];h=i[g+24>>2]+i[g+28>>2]|0;d=i[g+16>>2]}if((d|0)==(f|0)){d=0}else{d=(h>>>0)/341|0;d=i[(d<<2)+f>>2]+o(h-o(d,341)|0,12)|0}i[d+8>>2]=s;i[d+4>>2]=m;i[d>>2]=e;f=i[g+28>>2]+1|0;i[g+28>>2]=f;break e}if(!t){break f}A=0;while(1){if(f){p=i[y>>2];n=i[s>>2];m=i[a+96>>2];h=i[a+108>>2];f=0;while(1){v=h+(f<<2)|0;i[m+(i[v>>2]<<2)>>2]=0;e=i[v>>2]<<2;w=i[a>>2]-i[e+n>>2]|0;p:{if(!w){break p}z=e+m|0;u=i[a+52>>2];k=32-u|0;if((w|0)<=(k|0)){d=i[a+48>>2];if((d|0)==i[a+40>>2]){i[z>>2]=0;break p}i[z>>2]=i[d>>2]<<u>>>32-w;e=w+i[a+52>>2]|0;i[a+52>>2]=e;if((e|0)!=32){break p}i[a+52>>2]=0;i[a+48>>2]=d+4;break p}q=i[a+48>>2];e=q+4|0;if((e|0)==i[a+40>>2]){i[z>>2]=0;break p}d=i[q>>2];i[a+48>>2]=e;e=w-k|0;i[a+52>>2]=e;i[z>>2]=i[q+4>>2]>>>32-e|d<<u>>>32-w}d=i[v>>2]<<2;e=d+m|0;i[e>>2]=i[e>>2]|i[d+p>>2];f=f+1|0;if(f>>>0<l[a+12>>2]){continue}break}}q=0;f=i[c+16>>2];q:{if((f|0)==i[c+20>>2]){break q}while(1){e=o(q,20)+f|0;d=i[a+96>>2]+(i[e+4>>2]<<2)|0;p=i[e>>2];m=i[e+12>>2];r:{if(m>>>0>3){break r}h=i[c+12>>2];n=e+16|0;if(!i[n>>2]){d=h;break r}k=e+12|0;f=0;while(1){e=pn(h,(f<<2)+d|0,m);m=i[k>>2];h=e+m|0;f=f+1|0;if(f>>>0<l[n>>2]){continue}break}d=i[c+12>>2]}f=i[c+28>>2];f=j[p+84|0]?f:i[i[p+68>>2]+(f<<2)>>2];if(f>>>0>=l[p+80>>2]){break q}e=i[p+40>>2];pn(i[i[p>>2]>>2]+o(e,f)|0,d,e);q=q+1|0;f=i[c+16>>2];if(q>>>0<(i[c+20>>2]-f|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;A=A+1|0;if((A|0)==(t|0)){break f}f=i[a+12>>2];continue}}f=i[g+28>>2]}if(f){continue}break}e=1}b=i[g+24>>2];a=(b>>>0)/341|0;f=i[g+12>>2];h=i[g+16>>2];s:{if((f|0)==(h|0)){break s}k=(a<<2)+f|0;d=i[k>>2];m=d+o(b-o(a,341)|0,12)|0;b=b+i[g+28>>2]|0;a=(b>>>0)/341|0;a=i[(a<<2)+f>>2]+o(b-o(a,341)|0,12)|0;if((m|0)==(a|0)){break s}while(1){m=m+12|0;if((m-d|0)==4092){d=i[k+4>>2];m=d;k=k+4|0}if((a|0)!=(m|0)){continue}break}}i[g+28>>2]=0;m=h-f>>2;if(m>>>0>2){while(1){nn(i[f>>2]);f=i[g+12>>2]+4|0;i[g+12>>2]=f;h=i[g+16>>2];m=h-f>>2;if(m>>>0>2){continue}break}}d=170;t:{switch(m+ -1|0){case 1:d=341;case 0:i[g+24>>2]=d;break;default:break t}}u:{if((f|0)==(h|0)){break u}while(1){nn(i[f>>2]);f=f+4|0;if((h|0)!=(f|0)){continue}break}b=i[g+16>>2];a=i[g+12>>2];if((b|0)==(a|0)){break u}i[g+16>>2]=b+(((b-a|0)+ -4>>>2^-1)<<2)}a=i[g+8>>2];if(a){nn(a)}J=g+32|0;return e}Sm();x()}Sm();x()}function xb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;g=J-32|0;J=g;d=i[a+12>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}h=d<<2;e=Dm(h);i[g+8>>2]=e;f=e+h|0;i[g+16>>2]=f;qn(e,0,h);i[g+12>>2]=f}h=i[a+628>>2];k=i[h>>2];if(k){i[h+4>>2]=k;nn(k);i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;d=i[a+12>>2];e=i[g+8>>2];f=i[g+12>>2]}i[h+4>>2]=f;i[h>>2]=e;i[h+8>>2]=i[g+16>>2];e=0;i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;h=0;b:{if(d){if(d>>>0>=1073741824){break b}f=d<<2;h=Dm(f);i[g+8>>2]=h;e=f+h|0;i[g+16>>2]=e;qn(h,0,f);i[g+12>>2]=e}f=i[a+640>>2];d=i[f>>2];if(d){i[f+4>>2]=d;nn(d);i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;h=i[g+8>>2];e=i[g+12>>2]}i[f+4>>2]=e;i[f>>2]=h;i[f+8>>2]=i[g+16>>2];e=g+24|0;i[e>>2]=0;i[e+4>>2]=0;d=g+16|0;i[d>>2]=0;i[d+4>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;Nb(g+8|0);h=i[d>>2];d=i[g+12>>2];f=0;c:{if((h|0)==(d|0)){break c}f=i[e>>2]+i[g+28>>2]|0;e=(f>>>0)/341|0;f=i[d+(e<<2)>>2]+o(f-o(e,341)|0,12)|0}i[f+4>>2]=0;i[f+8>>2]=0;i[f>>2]=b;k=1;f=i[g+28>>2];d=f+1|0;i[g+28>>2]=d;d:{if(d>>>0<f>>>0){break d}while(1){h=i[g+12>>2];d=d+ -1|0;f=d+i[g+24>>2]|0;e=(f>>>0)/341|0;e=i[h+(e<<2)>>2]+o(f-o(e,341)|0,12)|0;n=i[e+8>>2];p=i[e+4>>2];m=i[e>>2];i[g+28>>2]=d;e=i[g+16>>2];d=e-h|0;if((d?o(d>>2,341)+ -1|0:0)-f>>>0>=682){nn(i[e+ -4>>2]);i[g+16>>2]=i[g+16>>2]+ -4}k=0;if(m>>>0>b>>>0){break d}f=i[a+628>>2];s=o(n,12);t=s+i[a+640>>2]|0;h=vl(a,t,p);if(h>>>0>=l[a+12>>2]){break d}p=f+s|0;e:{f:{q=h<<2;f=i[a>>2]-i[q+i[t>>2]>>2]|0;if(!f){if(!m){break f}s=0;while(1){k=0;d=i[c+16>>2];g:{if((d|0)==i[c+20>>2]){break g}while(1){d=o(k,20)+d|0;f=i[p>>2]+(i[d+4>>2]<<2)|0;n=i[d>>2];h=i[d+12>>2];h:{if(h>>>0>3){break h}e=i[c+12>>2];t=d+16|0;if(!i[t>>2]){f=e;break h}q=d+12|0;d=0;while(1){e=pn(e,(d<<2)+f|0,h);h=i[q>>2];e=e+h|0;d=d+1|0;if(d>>>0<l[t>>2]){continue}break}f=i[c+12>>2]}d=i[c+28>>2];d=j[n+84|0]?d:i[i[n+68>>2]+(d<<2)>>2];if(d>>>0>=l[n+80>>2]){break g}e=i[n+40>>2];pn(i[i[n>>2]>>2]+o(e,d)|0,f,e);k=k+1|0;d=i[c+16>>2];if(k>>>0<(i[c+20>>2]-d|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;s=s+1|0;if((m|0)!=(s|0)){continue}break}break f}i:{j:{k:{l:{if(m>>>0<=2){f=i[a+616>>2];i[f>>2]=h;e=1;d=i[a+12>>2];if(d>>>0>1){break l}break i}if(l[a+8>>2]>l[a+4>>2]){break d}e=1<<f+ -1;f=i[a+628>>2];t=n+1|0;k=o(t,12);d=f+k|0;if((d|0)!=(p|0)){ua(d,i[p>>2],i[p+4>>2]);f=i[a+628>>2]}f=q+i[f+k>>2]|0;i[f>>2]=e+i[f>>2];e=0;d=0;f=r(m)^31;if(f){while(1){e=Ce(((d<<4)+a|0)+16|0)|e<<1;d=d+1|0;if((f|0)!=(d|0)){continue}break}}e=(m>>>1|0)-e|0;d=m-e|0;m:{if((d|0)==(e|0)){f=e;break m}f=i[a+596>>2];if((f|0)==i[a+588>>2]){break k}m=i[f>>2];p=i[a+600>>2];u=p+1|0;i[a+600>>2]=u;m=m&-2147483648>>>p;n:{if((u|0)==32){i[a+600>>2]=0;i[a+596>>2]=f+4;if(m){break n}break k}if(!m){break k}}f=d}d=e;break j}while(1){h=(d+ -1|0)==(h|0)?0:h+1|0;i[f+(e<<2)>>2]=h;e=e+1|0;d=i[a+12>>2];if(e>>>0<d>>>0){continue}break}break i}f=e}e=i[a+640>>2];m=e+s|0;p=i[m>>2];s=p+q|0;i[s>>2]=i[s>>2]+1;ua(e+k|0,p,i[m+4>>2]);if(d){m=i[g+28>>2]+i[g+24>>2]|0;p=i[g+16>>2];e=i[g+12>>2];k=p-e|0;if((m|0)==((k?o(k>>2,341)+ -1|0:0)|0)){Nb(g+8|0);m=i[g+24>>2]+i[g+28>>2]|0;p=i[g+16>>2];e=i[g+12>>2]}k=0;o:{if((e|0)==(p|0)){break o}k=e;e=(m>>>0)/341|0;k=i[k+(e<<2)>>2]+o(m-o(e,341)|0,12)|0}i[k+8>>2]=n;i[k+4>>2]=h;i[k>>2]=d;i[g+28>>2]=i[g+28>>2]+1}if(!f){break f}e=i[g+28>>2]+i[g+24>>2]|0;m=i[g+16>>2];d=i[g+12>>2];k=m-d|0;if((e|0)==((k?o(k>>2,341)+ -1|0:0)|0)){Nb(g+8|0);m=i[g+16>>2];d=i[g+12>>2];e=i[g+24>>2]+i[g+28>>2]|0}if((d|0)==(m|0)){e=0}else{k=d;d=(e>>>0)/341|0;e=i[k+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[e+8>>2]=t;i[e+4>>2]=h;i[e>>2]=f;d=i[g+28>>2]+1|0;i[g+28>>2]=d;break e}if(!m){break f}s=0;while(1){if(d){u=i[p>>2];y=i[t>>2];h=i[a+604>>2];z=i[a+616>>2];d=0;while(1){k=z+(d<<2)|0;i[h+(i[k>>2]<<2)>>2]=0;e=i[k>>2]<<2;f=i[a>>2]-i[e+y>>2]|0;p:{if(!f){break p}e=e+h|0;n=i[a+560>>2];v=32-n|0;if((f|0)<=(v|0)){q=i[a+556>>2];if((q|0)==i[a+548>>2]){i[e>>2]=0;break p}i[e>>2]=i[q>>2]<<n>>>32-f;f=f+i[a+560>>2]|0;i[a+560>>2]=f;if((f|0)!=32){break p}i[a+560>>2]=0;i[a+556>>2]=q+4;break p}q=i[a+556>>2];w=q+4|0;if((w|0)==i[a+548>>2]){i[e>>2]=0;break p}A=i[q>>2];i[a+556>>2]=w;v=f-v|0;i[a+560>>2]=v;i[e>>2]=i[q+4>>2]>>>32-v|A<<n>>>32-f}f=i[k>>2]<<2;e=f+h|0;i[e>>2]=i[e>>2]|i[f+u>>2];d=d+1|0;if(d>>>0<l[a+12>>2]){continue}break}}k=0;d=i[c+16>>2];q:{if((d|0)==i[c+20>>2]){break q}while(1){d=o(k,20)+d|0;f=i[a+604>>2]+(i[d+4>>2]<<2)|0;n=i[d>>2];h=i[d+12>>2];r:{if(h>>>0>3){break r}e=i[c+12>>2];q=d+16|0;if(!i[q>>2]){f=e;break r}u=d+12|0;d=0;while(1){e=pn(e,(d<<2)+f|0,h);h=i[u>>2];e=e+h|0;d=d+1|0;if(d>>>0<l[q>>2]){continue}break}f=i[c+12>>2]}d=i[c+28>>2];d=j[n+84|0]?d:i[i[n+68>>2]+(d<<2)>>2];if(d>>>0>=l[n+80>>2]){break q}e=i[n+40>>2];pn(i[i[n>>2]>>2]+o(e,d)|0,f,e);k=k+1|0;d=i[c+16>>2];if(k>>>0<(i[c+20>>2]-d|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;s=s+1|0;if((s|0)==(m|0)){break f}d=i[a+12>>2];continue}}d=i[g+28>>2]}if(d){continue}break}k=1}a=i[g+24>>2];b=(a>>>0)/341|0;d=i[g+12>>2];e=i[g+16>>2];s:{if((d|0)==(e|0)){break s}m=(b<<2)+d|0;f=i[m>>2];h=f+o(a-o(b,341)|0,12)|0;a=a+i[g+28>>2]|0;b=(a>>>0)/341|0;a=i[(b<<2)+d>>2]+o(a-o(b,341)|0,12)|0;if((h|0)==(a|0)){break s}while(1){h=h+12|0;if((h-f|0)==4092){f=i[m+4>>2];m=m+4|0;h=f}if((a|0)!=(h|0)){continue}break}}i[g+28>>2]=0;h=e-d>>2;if(h>>>0>2){while(1){nn(i[d>>2]);d=i[g+12>>2]+4|0;i[g+12>>2]=d;e=i[g+16>>2];h=e-d>>2;if(h>>>0>2){continue}break}}f=170;t:{switch(h+ -1|0){case 1:f=341;case 0:i[g+24>>2]=f;break;default:break t}}u:{if((d|0)==(e|0)){break u}while(1){nn(i[d>>2]);d=d+4|0;if((e|0)!=(d|0)){continue}break}a=i[g+16>>2];b=i[g+12>>2];if((a|0)==(b|0)){break u}i[g+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[g+8>>2];if(a){nn(a)}J=g+32|0;return k}Sm();x()}Sm();x()}function zb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;g=J-32|0;J=g;d=i[a+12>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}h=d<<2;e=Dm(h);i[g+8>>2]=e;f=e+h|0;i[g+16>>2]=f;qn(e,0,h);i[g+12>>2]=f}h=i[a+628>>2];k=i[h>>2];if(k){i[h+4>>2]=k;nn(k);i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;d=i[a+12>>2];e=i[g+8>>2];f=i[g+12>>2]}i[h+4>>2]=f;i[h>>2]=e;i[h+8>>2]=i[g+16>>2];e=0;i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;h=0;b:{if(d){if(d>>>0>=1073741824){break b}f=d<<2;h=Dm(f);i[g+8>>2]=h;e=f+h|0;i[g+16>>2]=e;qn(h,0,f);i[g+12>>2]=e}f=i[a+640>>2];d=i[f>>2];if(d){i[f+4>>2]=d;nn(d);i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;h=i[g+8>>2];e=i[g+12>>2]}i[f+4>>2]=e;i[f>>2]=h;i[f+8>>2]=i[g+16>>2];e=g+24|0;i[e>>2]=0;i[e+4>>2]=0;d=g+16|0;i[d>>2]=0;i[d+4>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;Nb(g+8|0);h=i[d>>2];d=i[g+12>>2];f=0;c:{if((h|0)==(d|0)){break c}f=i[e>>2]+i[g+28>>2]|0;e=(f>>>0)/341|0;f=i[d+(e<<2)>>2]+o(f-o(e,341)|0,12)|0}i[f+4>>2]=0;i[f+8>>2]=0;i[f>>2]=b;k=1;f=i[g+28>>2];d=f+1|0;i[g+28>>2]=d;d:{if(d>>>0<f>>>0){break d}while(1){k=i[g+12>>2];h=d+ -1|0;f=h+i[g+24>>2]|0;e=(f>>>0)/341|0;e=i[k+(e<<2)>>2]+o(f-o(e,341)|0,12)|0;n=i[e+8>>2];d=i[e+4>>2];m=i[e>>2];i[g+28>>2]=h;e=i[g+16>>2];h=e-k|0;if((h?o(h>>2,341)+ -1|0:0)-f>>>0>=682){nn(i[e+ -4>>2]);i[g+16>>2]=i[g+16>>2]+ -4}if(m>>>0>b>>>0){k=0;break d}k=0;f=i[a+12>>2];h=(d|0)==(f+ -1|0)?0:d+1|0;if(h>>>0>=f>>>0){break d}f=i[a+628>>2];p=o(n,12);s=f+p|0;e:{f:{q=h<<2;t=p+i[a+640>>2]|0;e=i[a>>2]-i[q+i[t>>2]>>2]|0;if(!e){if(!m){break f}p=0;while(1){k=0;d=i[c+16>>2];g:{if((d|0)==i[c+20>>2]){break g}while(1){d=o(k,20)+d|0;f=i[s>>2]+(i[d+4>>2]<<2)|0;n=i[d>>2];h=i[d+12>>2];h:{if(h>>>0>3){break h}e=i[c+12>>2];q=d+16|0;if(!i[q>>2]){f=e;break h}t=d+12|0;d=0;while(1){e=pn(e,(d<<2)+f|0,h);h=i[t>>2];e=e+h|0;d=d+1|0;if(d>>>0<l[q>>2]){continue}break}f=i[c+12>>2]}d=i[c+28>>2];d=j[n+84|0]?d:i[i[n+68>>2]+(d<<2)>>2];if(d>>>0>=l[n+80>>2]){break g}e=i[n+40>>2];pn(i[i[n>>2]>>2]+o(e,d)|0,f,e);k=k+1|0;d=i[c+16>>2];if(k>>>0<(i[c+20>>2]-d|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;p=p+1|0;if((m|0)!=(p|0)){continue}break}break f}i:{j:{k:{l:{if(m>>>0<=2){f=i[a+616>>2];i[f>>2]=h;e=1;d=i[a+12>>2];if(d>>>0>1){break l}break i}if(l[a+8>>2]>l[a+4>>2]){break d}d=f;f=p+12|0;ua(d+f|0,i[s>>2],i[s+4>>2]);f=q+i[f+i[a+628>>2]>>2]|0;i[f>>2]=i[f>>2]+(1<<e+ -1);e=0;d=0;f=r(m)^31;if(f){while(1){e=Ce(((d<<4)+a|0)+16|0)|e<<1;d=d+1|0;if((f|0)!=(d|0)){continue}break}}s=n+1|0;e=(m>>>1|0)-e|0;d=m-e|0;m:{if((d|0)==(e|0)){f=e;break m}f=i[a+596>>2];if((f|0)==i[a+588>>2]){break k}k=i[f>>2];m=i[a+600>>2];t=m+1|0;i[a+600>>2]=t;k=k&-2147483648>>>m;n:{if((t|0)==32){i[a+600>>2]=0;i[a+596>>2]=f+4;if(k){break n}break k}if(!k){break k}}f=d}d=e;break j}while(1){h=(d+ -1|0)==(h|0)?0:h+1|0;i[f+(e<<2)>>2]=h;e=e+1|0;d=i[a+12>>2];if(e>>>0<d>>>0){continue}break}break i}f=e}e=i[a+640>>2];k=e+p|0;m=i[k>>2];p=m+q|0;i[p>>2]=i[p>>2]+1;ua(e+o(s,12)|0,m,i[k+4>>2]);if(d){m=i[g+28>>2]+i[g+24>>2]|0;p=i[g+16>>2];e=i[g+12>>2];k=p-e|0;if((m|0)==((k?o(k>>2,341)+ -1|0:0)|0)){Nb(g+8|0);m=i[g+24>>2]+i[g+28>>2]|0;p=i[g+16>>2];e=i[g+12>>2]}k=0;o:{if((e|0)==(p|0)){break o}k=e;e=(m>>>0)/341|0;k=i[k+(e<<2)>>2]+o(m-o(e,341)|0,12)|0}i[k+8>>2]=n;i[k+4>>2]=h;i[k>>2]=d;i[g+28>>2]=i[g+28>>2]+1}if(!f){break f}e=i[g+28>>2]+i[g+24>>2]|0;m=i[g+16>>2];d=i[g+12>>2];k=m-d|0;if((e|0)==((k?o(k>>2,341)+ -1|0:0)|0)){Nb(g+8|0);m=i[g+16>>2];d=i[g+12>>2];e=i[g+24>>2]+i[g+28>>2]|0}if((d|0)==(m|0)){e=0}else{k=d;d=(e>>>0)/341|0;e=i[k+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[e+8>>2]=s;i[e+4>>2]=h;i[e>>2]=f;d=i[g+28>>2]+1|0;i[g+28>>2]=d;break e}if(!m){break f}p=0;while(1){if(d){v=i[s>>2];y=i[t>>2];h=i[a+604>>2];z=i[a+616>>2];d=0;while(1){k=z+(d<<2)|0;i[h+(i[k>>2]<<2)>>2]=0;e=i[k>>2]<<2;f=i[a>>2]-i[e+y>>2]|0;p:{if(!f){break p}e=e+h|0;n=i[a+560>>2];u=32-n|0;if((f|0)<=(u|0)){q=i[a+556>>2];if((q|0)==i[a+548>>2]){i[e>>2]=0;break p}i[e>>2]=i[q>>2]<<n>>>32-f;f=f+i[a+560>>2]|0;i[a+560>>2]=f;if((f|0)!=32){break p}i[a+560>>2]=0;i[a+556>>2]=q+4;break p}q=i[a+556>>2];w=q+4|0;if((w|0)==i[a+548>>2]){i[e>>2]=0;break p}A=i[q>>2];i[a+556>>2]=w;u=f-u|0;i[a+560>>2]=u;i[e>>2]=i[q+4>>2]>>>32-u|A<<n>>>32-f}f=i[k>>2]<<2;e=f+h|0;i[e>>2]=i[e>>2]|i[f+v>>2];d=d+1|0;if(d>>>0<l[a+12>>2]){continue}break}}k=0;d=i[c+16>>2];q:{if((d|0)==i[c+20>>2]){break q}while(1){d=o(k,20)+d|0;f=i[a+604>>2]+(i[d+4>>2]<<2)|0;n=i[d>>2];h=i[d+12>>2];r:{if(h>>>0>3){break r}e=i[c+12>>2];q=d+16|0;if(!i[q>>2]){f=e;break r}v=d+12|0;d=0;while(1){e=pn(e,(d<<2)+f|0,h);h=i[v>>2];e=e+h|0;d=d+1|0;if(d>>>0<l[q>>2]){continue}break}f=i[c+12>>2]}d=i[c+28>>2];d=j[n+84|0]?d:i[i[n+68>>2]+(d<<2)>>2];if(d>>>0>=l[n+80>>2]){break q}e=i[n+40>>2];pn(i[i[n>>2]>>2]+o(e,d)|0,f,e);k=k+1|0;d=i[c+16>>2];if(k>>>0<(i[c+20>>2]-d|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;p=p+1|0;if((p|0)==(m|0)){break f}d=i[a+12>>2];continue}}d=i[g+28>>2]}if(d){continue}break}k=1}a=i[g+24>>2];b=(a>>>0)/341|0;d=i[g+12>>2];e=i[g+16>>2];s:{if((d|0)==(e|0)){break s}m=(b<<2)+d|0;f=i[m>>2];h=f+o(a-o(b,341)|0,12)|0;a=a+i[g+28>>2]|0;b=(a>>>0)/341|0;a=i[(b<<2)+d>>2]+o(a-o(b,341)|0,12)|0;if((h|0)==(a|0)){break s}while(1){h=h+12|0;if((h-f|0)==4092){f=i[m+4>>2];m=m+4|0;h=f}if((a|0)!=(h|0)){continue}break}}i[g+28>>2]=0;h=e-d>>2;if(h>>>0>2){while(1){nn(i[d>>2]);d=i[g+12>>2]+4|0;i[g+12>>2]=d;e=i[g+16>>2];h=e-d>>2;if(h>>>0>2){continue}break}}f=170;t:{switch(h+ -1|0){case 1:f=341;case 0:i[g+24>>2]=f;break;default:break t}}u:{if((d|0)==(e|0)){break u}while(1){nn(i[d>>2]);d=d+4|0;if((e|0)!=(d|0)){continue}break}a=i[g+16>>2];b=i[g+12>>2];if((a|0)==(b|0)){break u}i[g+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[g+8>>2];if(a){nn(a)}J=g+32|0;return k}Sm();x()}Sm();x()}function Ab(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;g=J-32|0;J=g;d=i[a+12>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}h=d<<2;e=Dm(h);i[g+8>>2]=e;f=e+h|0;i[g+16>>2]=f;qn(e,0,h);i[g+12>>2]=f}h=i[a+628>>2];k=i[h>>2];if(k){i[h+4>>2]=k;nn(k);i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;d=i[a+12>>2];e=i[g+8>>2];f=i[g+12>>2]}i[h+4>>2]=f;i[h>>2]=e;i[h+8>>2]=i[g+16>>2];e=0;i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;h=0;b:{if(d){if(d>>>0>=1073741824){break b}f=d<<2;h=Dm(f);i[g+8>>2]=h;e=f+h|0;i[g+16>>2]=e;qn(h,0,f);i[g+12>>2]=e}f=i[a+640>>2];d=i[f>>2];if(d){i[f+4>>2]=d;nn(d);i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;h=i[g+8>>2];e=i[g+12>>2]}i[f+4>>2]=e;i[f>>2]=h;i[f+8>>2]=i[g+16>>2];e=g+24|0;i[e>>2]=0;i[e+4>>2]=0;d=g+16|0;i[d>>2]=0;i[d+4>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;Nb(g+8|0);h=i[d>>2];d=i[g+12>>2];f=0;c:{if((h|0)==(d|0)){break c}f=i[e>>2]+i[g+28>>2]|0;e=(f>>>0)/341|0;f=i[d+(e<<2)>>2]+o(f-o(e,341)|0,12)|0}i[f+4>>2]=0;i[f+8>>2]=0;i[f>>2]=b;k=1;f=i[g+28>>2];d=f+1|0;i[g+28>>2]=d;d:{if(d>>>0<f>>>0){break d}while(1){h=i[g+12>>2];d=d+ -1|0;f=d+i[g+24>>2]|0;e=(f>>>0)/341|0;e=i[h+(e<<2)>>2]+o(f-o(e,341)|0,12)|0;n=i[e+8>>2];m=i[e>>2];i[g+28>>2]=d;e=i[g+16>>2];d=e-h|0;if((d?o(d>>2,341)+ -1|0:0)-f>>>0>=682){nn(i[e+ -4>>2]);i[g+16>>2]=i[g+16>>2]+ -4}k=0;if(m>>>0>b>>>0){break d}f=i[a+628>>2];s=o(n,12);t=s+i[a+640>>2]|0;h=wl(a,m,t);if(h>>>0>=l[a+12>>2]){break d}q=f+s|0;e:{f:{p=h<<2;f=i[a>>2]-i[p+i[t>>2]>>2]|0;if(!f){if(!m){break f}s=0;while(1){k=0;d=i[c+16>>2];g:{if((d|0)==i[c+20>>2]){break g}while(1){d=o(k,20)+d|0;f=i[q>>2]+(i[d+4>>2]<<2)|0;n=i[d>>2];h=i[d+12>>2];h:{if(h>>>0>3){break h}e=i[c+12>>2];t=d+16|0;if(!i[t>>2]){f=e;break h}p=d+12|0;d=0;while(1){e=pn(e,(d<<2)+f|0,h);h=i[p>>2];e=e+h|0;d=d+1|0;if(d>>>0<l[t>>2]){continue}break}f=i[c+12>>2]}d=i[c+28>>2];d=j[n+84|0]?d:i[i[n+68>>2]+(d<<2)>>2];if(d>>>0>=l[n+80>>2]){break g}e=i[n+40>>2];pn(i[i[n>>2]>>2]+o(e,d)|0,f,e);k=k+1|0;d=i[c+16>>2];if(k>>>0<(i[c+20>>2]-d|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;s=s+1|0;if((m|0)!=(s|0)){continue}break}break f}i:{j:{k:{l:{if(m>>>0<=2){f=i[a+616>>2];i[f>>2]=h;e=1;d=i[a+12>>2];if(d>>>0>1){break l}break i}if(l[a+8>>2]>l[a+4>>2]){break d}e=1<<f+ -1;f=i[a+628>>2];t=n+1|0;k=o(t,12);d=f+k|0;if((d|0)!=(q|0)){ua(d,i[q>>2],i[q+4>>2]);f=i[a+628>>2]}f=p+i[f+k>>2]|0;i[f>>2]=e+i[f>>2];e=0;d=0;f=r(m)^31;if(f){while(1){e=Ce(((d<<4)+a|0)+16|0)|e<<1;d=d+1|0;if((f|0)!=(d|0)){continue}break}}e=(m>>>1|0)-e|0;d=m-e|0;m:{if((d|0)==(e|0)){f=e;break m}f=i[a+596>>2];if((f|0)==i[a+588>>2]){break k}m=i[f>>2];q=i[a+600>>2];u=q+1|0;i[a+600>>2]=u;m=m&-2147483648>>>q;n:{if((u|0)==32){i[a+600>>2]=0;i[a+596>>2]=f+4;if(m){break n}break k}if(!m){break k}}f=d}d=e;break j}while(1){h=(d+ -1|0)==(h|0)?0:h+1|0;i[f+(e<<2)>>2]=h;e=e+1|0;d=i[a+12>>2];if(e>>>0<d>>>0){continue}break}break i}f=e}e=i[a+640>>2];m=e+s|0;q=i[m>>2];s=q+p|0;i[s>>2]=i[s>>2]+1;ua(e+k|0,q,i[m+4>>2]);if(d){m=i[g+28>>2]+i[g+24>>2]|0;q=i[g+16>>2];e=i[g+12>>2];k=q-e|0;if((m|0)==((k?o(k>>2,341)+ -1|0:0)|0)){Nb(g+8|0);m=i[g+24>>2]+i[g+28>>2]|0;q=i[g+16>>2];e=i[g+12>>2]}k=0;o:{if((e|0)==(q|0)){break o}k=e;e=(m>>>0)/341|0;k=i[k+(e<<2)>>2]+o(m-o(e,341)|0,12)|0}i[k+8>>2]=n;i[k+4>>2]=h;i[k>>2]=d;i[g+28>>2]=i[g+28>>2]+1}if(!f){break f}e=i[g+28>>2]+i[g+24>>2]|0;m=i[g+16>>2];d=i[g+12>>2];k=m-d|0;if((e|0)==((k?o(k>>2,341)+ -1|0:0)|0)){Nb(g+8|0);m=i[g+16>>2];d=i[g+12>>2];e=i[g+24>>2]+i[g+28>>2]|0}if((d|0)==(m|0)){e=0}else{k=d;d=(e>>>0)/341|0;e=i[k+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[e+8>>2]=t;i[e+4>>2]=h;i[e>>2]=f;d=i[g+28>>2]+1|0;i[g+28>>2]=d;break e}if(!m){break f}s=0;while(1){if(d){u=i[q>>2];y=i[t>>2];h=i[a+604>>2];z=i[a+616>>2];d=0;while(1){k=z+(d<<2)|0;i[h+(i[k>>2]<<2)>>2]=0;e=i[k>>2]<<2;f=i[a>>2]-i[e+y>>2]|0;p:{if(!f){break p}e=e+h|0;n=i[a+560>>2];v=32-n|0;if((f|0)<=(v|0)){p=i[a+556>>2];if((p|0)==i[a+548>>2]){i[e>>2]=0;break p}i[e>>2]=i[p>>2]<<n>>>32-f;f=f+i[a+560>>2]|0;i[a+560>>2]=f;if((f|0)!=32){break p}i[a+560>>2]=0;i[a+556>>2]=p+4;break p}p=i[a+556>>2];w=p+4|0;if((w|0)==i[a+548>>2]){i[e>>2]=0;break p}A=i[p>>2];i[a+556>>2]=w;v=f-v|0;i[a+560>>2]=v;i[e>>2]=i[p+4>>2]>>>32-v|A<<n>>>32-f}f=i[k>>2]<<2;e=f+h|0;i[e>>2]=i[e>>2]|i[f+u>>2];d=d+1|0;if(d>>>0<l[a+12>>2]){continue}break}}k=0;d=i[c+16>>2];q:{if((d|0)==i[c+20>>2]){break q}while(1){d=o(k,20)+d|0;f=i[a+604>>2]+(i[d+4>>2]<<2)|0;n=i[d>>2];h=i[d+12>>2];r:{if(h>>>0>3){break r}e=i[c+12>>2];p=d+16|0;if(!i[p>>2]){f=e;break r}u=d+12|0;d=0;while(1){e=pn(e,(d<<2)+f|0,h);h=i[u>>2];e=e+h|0;d=d+1|0;if(d>>>0<l[p>>2]){continue}break}f=i[c+12>>2]}d=i[c+28>>2];d=j[n+84|0]?d:i[i[n+68>>2]+(d<<2)>>2];if(d>>>0>=l[n+80>>2]){break q}e=i[n+40>>2];pn(i[i[n>>2]>>2]+o(e,d)|0,f,e);k=k+1|0;d=i[c+16>>2];if(k>>>0<(i[c+20>>2]-d|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;s=s+1|0;if((s|0)==(m|0)){break f}d=i[a+12>>2];continue}}d=i[g+28>>2]}if(d){continue}break}k=1}a=i[g+24>>2];b=(a>>>0)/341|0;d=i[g+12>>2];e=i[g+16>>2];s:{if((d|0)==(e|0)){break s}m=(b<<2)+d|0;f=i[m>>2];h=f+o(a-o(b,341)|0,12)|0;a=a+i[g+28>>2]|0;b=(a>>>0)/341|0;a=i[(b<<2)+d>>2]+o(a-o(b,341)|0,12)|0;if((h|0)==(a|0)){break s}while(1){h=h+12|0;if((h-f|0)==4092){f=i[m+4>>2];m=m+4|0;h=f}if((a|0)!=(h|0)){continue}break}}i[g+28>>2]=0;h=e-d>>2;if(h>>>0>2){while(1){nn(i[d>>2]);d=i[g+12>>2]+4|0;i[g+12>>2]=d;e=i[g+16>>2];h=e-d>>2;if(h>>>0>2){continue}break}}f=170;t:{switch(h+ -1|0){case 1:f=341;case 0:i[g+24>>2]=f;break;default:break t}}u:{if((d|0)==(e|0)){break u}while(1){nn(i[d>>2]);d=d+4|0;if((e|0)!=(d|0)){continue}break}a=i[g+16>>2];b=i[g+12>>2];if((a|0)==(b|0)){break u}i[g+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[g+8>>2];if(a){nn(a)}J=g+32|0;return k}Sm();x()}Sm();x()}function vb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0;g=J-32|0;J=g;f=i[a+12>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{if(f){if(f>>>0>=1073741824){break a}d=f<<2;h=Dm(d);i[g+8>>2]=h;e=d+h|0;i[g+16>>2]=e;qn(h,0,d);i[g+12>>2]=e}m=i[a+116>>2];d=i[m>>2];if(d){i[m+4>>2]=d;nn(d);i[m+8>>2]=0;i[m>>2]=0;i[m+4>>2]=0;f=i[a+12>>2];h=i[g+8>>2];e=i[g+12>>2]}i[m+4>>2]=e;i[m>>2]=h;i[m+8>>2]=i[g+16>>2];h=0;i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;b:{if(f){if(f>>>0>=1073741824){break b}d=f<<2;k=Dm(d);i[g+8>>2]=k;h=d+k|0;i[g+16>>2]=h;qn(k,0,d);i[g+12>>2]=h}e=i[a+128>>2];d=i[e>>2];if(d){i[e+4>>2]=d;nn(d);i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;k=i[g+8>>2];h=i[g+12>>2]}i[e+4>>2]=h;i[e>>2]=k;i[e+8>>2]=i[g+16>>2];h=g+24|0;i[h>>2]=0;i[h+4>>2]=0;e=g+16|0;i[e>>2]=0;i[e+4>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;Nb(g+8|0);m=i[g+12>>2];d=0;c:{if((m|0)==i[e>>2]){break c}e=i[h>>2]+i[g+28>>2]|0;d=(e>>>0)/341|0;d=i[m+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;n=1;d=i[g+28>>2];f=d+1|0;i[g+28>>2]=f;d:{if(f>>>0<d>>>0){break d}B=a+16|0;while(1){d=i[g+12>>2];h=f+ -1|0;n=h+i[g+24>>2]|0;e=(n>>>0)/341|0;e=i[d+(e<<2)>>2]+o(n-o(e,341)|0,12)|0;u=i[e+8>>2];m=i[e+4>>2];t=i[e>>2];i[g+28>>2]=h;e=i[g+16>>2];d=e-d|0;if((d?o(d>>2,341)+ -1|0:0)-n>>>0>=682){nn(i[e+ -4>>2]);i[g+16>>2]=i[g+16>>2]+ -4}n=0;if(t>>>0>b>>>0){break d}d=i[a+116>>2];v=o(u,12);A=v+i[a+128>>2]|0;k=vl(a,A,m);if(k>>>0>=l[a+12>>2]){break d}z=d+v|0;e:{w=k<<2;d=i[a>>2]-i[w+i[A>>2]>>2]|0;if(!d){if(!t){break e}p=0;while(1){m=0;f=i[c+16>>2];f:{if((f|0)==i[c+20>>2]){break f}while(1){d=o(m,20)+f|0;e=i[z>>2]+(i[d+4>>2]<<2)|0;s=i[d>>2];k=i[d+12>>2];g:{if(k>>>0>3){break g}h=i[c+12>>2];q=d+16|0;if(!i[q>>2]){e=h;break g}n=d+12|0;f=0;while(1){d=pn(h,(f<<2)+e|0,k);k=i[n>>2];h=d+k|0;f=f+1|0;if(f>>>0<l[q>>2]){continue}break}e=i[c+12>>2]}f=i[c+28>>2];f=j[s+84|0]?f:i[i[s+68>>2]+(f<<2)>>2];if(f>>>0>=l[s+80>>2]){break f}d=i[s+40>>2];pn(i[i[s>>2]>>2]+o(d,f)|0,e,d);m=m+1|0;f=i[c+16>>2];if(m>>>0<(i[c+20>>2]-f|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;p=p+1|0;if((t|0)!=(p|0)){continue}break}break e}h:{i:{j:{k:{if(t>>>0<=2){d=i[a+104>>2];i[d>>2]=k;h=1;f=i[a+12>>2];if(f>>>0>1){break k}break h}if(l[a+8>>2]>l[a+4>>2]){break d}m=1<<d+ -1;d=i[a+116>>2];p=u+1|0;s=o(p,12);e=d+s|0;if((e|0)!=(z|0)){ua(e,i[z>>2],i[z+4>>2]);d=i[a+116>>2]}d=w+i[d+s>>2]|0;i[d>>2]=m+i[d>>2];i[g+4>>2]=0;De(B,r(t)^31,g+4|0);e=(t>>>1|0)-i[g+4>>2]|0;d=t-e|0;l:{if((d|0)==(e|0)){d=e;break l}q=i[a+84>>2];if((q|0)==i[a+76>>2]){break j}n=i[q>>2];h=i[a+88>>2];m=h+1|0;i[a+88>>2]=m;h=n&-2147483648>>>h;m:{if((m|0)==32){i[a+88>>2]=0;i[a+84>>2]=q+4;if(h){break m}break j}if(!h){break j}}}m=d;d=e;break i}while(1){k=(f+ -1|0)==(k|0)?0:k+1|0;i[d+(h<<2)>>2]=k;h=h+1|0;f=i[a+12>>2];if(h>>>0<f>>>0){continue}break}break h}m=e}q=i[a+128>>2];n=q+v|0;h=i[n>>2];e=h+w|0;i[e>>2]=i[e>>2]+1;ua(s+q|0,h,i[n+4>>2]);if(d){e=i[g+28>>2]+i[g+24>>2]|0;n=i[g+16>>2];f=i[g+12>>2];h=n-f|0;if((e|0)==((h?o(h>>2,341)+ -1|0:0)|0)){Nb(g+8|0);n=i[g+16>>2];f=i[g+12>>2];e=i[g+24>>2]+i[g+28>>2]|0}if((f|0)==(n|0)){e=0}else{h=(e>>>0)/341|0;e=i[(h<<2)+f>>2]+o(e-o(h,341)|0,12)|0}i[e+8>>2]=u;i[e+4>>2]=k;i[e>>2]=d;i[g+28>>2]=i[g+28>>2]+1}if(!m){break e}h=i[g+28>>2]+i[g+24>>2]|0;e=i[g+16>>2];f=i[g+12>>2];d=e-f|0;if((h|0)==((d?o(d>>2,341)+ -1|0:0)|0)){Nb(g+8|0);h=i[g+24>>2]+i[g+28>>2]|0;f=i[g+12>>2];e=i[g+16>>2]}if((e|0)==(f|0)){d=0}else{d=(h>>>0)/341|0;d=i[(d<<2)+f>>2]+o(h-o(d,341)|0,12)|0}i[d+8>>2]=p;i[d+4>>2]=k;i[d>>2]=m;i[g+28>>2]=i[g+28>>2]+1;break e}if(!t){break e}v=0;while(1){if(f){q=i[z>>2];n=i[A>>2];u=i[a+92>>2];h=i[a+104>>2];f=0;while(1){w=h+(f<<2)|0;i[u+(i[w>>2]<<2)>>2]=0;d=i[w>>2]<<2;y=i[a>>2]-i[d+n>>2]|0;n:{if(!y){break n}k=d+u|0;s=i[a+48>>2];m=32-s|0;if((y|0)<=(m|0)){e=i[a+44>>2];if((e|0)==i[a+36>>2]){i[k>>2]=0;break n}i[k>>2]=i[e>>2]<<s>>>32-y;d=y+i[a+48>>2]|0;i[a+48>>2]=d;if((d|0)!=32){break n}i[a+48>>2]=0;i[a+44>>2]=e+4;break n}p=i[a+44>>2];d=p+4|0;if((d|0)==i[a+36>>2]){i[k>>2]=0;break n}e=i[p>>2];i[a+44>>2]=d;d=y-m|0;i[a+48>>2]=d;i[k>>2]=i[p+4>>2]>>>32-d|e<<s>>>32-y}e=i[w>>2]<<2;d=e+u|0;i[d>>2]=i[d>>2]|i[e+q>>2];f=f+1|0;if(f>>>0<l[a+12>>2]){continue}break}}m=0;f=i[c+16>>2];o:{if((f|0)==i[c+20>>2]){break o}while(1){d=o(m,20)+f|0;e=i[a+92>>2]+(i[d+4>>2]<<2)|0;p=i[d>>2];k=i[d+12>>2];p:{if(k>>>0>3){break p}h=i[c+12>>2];q=d+16|0;if(!i[q>>2]){e=h;break p}n=d+12|0;f=0;while(1){d=pn(h,(f<<2)+e|0,k);k=i[n>>2];h=d+k|0;f=f+1|0;if(f>>>0<l[q>>2]){continue}break}e=i[c+12>>2]}f=i[c+28>>2];f=j[p+84|0]?f:i[i[p+68>>2]+(f<<2)>>2];if(f>>>0>=l[p+80>>2]){break o}d=i[p+40>>2];pn(i[i[p>>2]>>2]+o(d,f)|0,e,d);m=m+1|0;f=i[c+16>>2];if(m>>>0<(i[c+20>>2]-f|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;v=v+1|0;if((v|0)==(t|0)){break e}f=i[a+12>>2];continue}}f=i[g+28>>2];if(f){continue}break}n=1}b=i[g+24>>2];a=(b>>>0)/341|0;f=i[g+12>>2];h=i[g+16>>2];q:{if((f|0)==(h|0)){break q}d=(a<<2)+f|0;e=i[d>>2];k=e+o(b-o(a,341)|0,12)|0;b=b+i[g+28>>2]|0;a=(b>>>0)/341|0;a=i[(a<<2)+f>>2]+o(b-o(a,341)|0,12)|0;if((k|0)==(a|0)){break q}while(1){k=k+12|0;if((k-e|0)==4092){e=i[d+4>>2];k=e;d=d+4|0}if((a|0)!=(k|0)){continue}break}}i[g+28>>2]=0;k=h-f>>2;if(k>>>0>2){while(1){nn(i[f>>2]);f=i[g+12>>2]+4|0;i[g+12>>2]=f;h=i[g+16>>2];k=h-f>>2;if(k>>>0>2){continue}break}}e=170;r:{switch(k+ -1|0){case 1:e=341;case 0:i[g+24>>2]=e;break;default:break r}}s:{if((f|0)==(h|0)){break s}while(1){nn(i[f>>2]);f=f+4|0;if((h|0)!=(f|0)){continue}break}b=i[g+16>>2];a=i[g+12>>2];if((b|0)==(a|0)){break s}i[g+16>>2]=b+(((b-a|0)+ -4>>>2^-1)<<2)}a=i[g+8>>2];if(a){nn(a)}J=g+32|0;return n}Sm();x()}Sm();x()}function wb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0;g=J-32|0;J=g;f=i[a+12>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{if(f){if(f>>>0>=1073741824){break a}d=f<<2;h=Dm(d);i[g+8>>2]=h;e=d+h|0;i[g+16>>2]=e;qn(h,0,d);i[g+12>>2]=e}m=i[a+116>>2];d=i[m>>2];if(d){i[m+4>>2]=d;nn(d);i[m+8>>2]=0;i[m>>2]=0;i[m+4>>2]=0;f=i[a+12>>2];h=i[g+8>>2];e=i[g+12>>2]}i[m+4>>2]=e;i[m>>2]=h;i[m+8>>2]=i[g+16>>2];h=0;i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;b:{if(f){if(f>>>0>=1073741824){break b}d=f<<2;k=Dm(d);i[g+8>>2]=k;h=d+k|0;i[g+16>>2]=h;qn(k,0,d);i[g+12>>2]=h}e=i[a+128>>2];d=i[e>>2];if(d){i[e+4>>2]=d;nn(d);i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;k=i[g+8>>2];h=i[g+12>>2]}i[e+4>>2]=h;i[e>>2]=k;i[e+8>>2]=i[g+16>>2];h=g+24|0;i[h>>2]=0;i[h+4>>2]=0;e=g+16|0;i[e>>2]=0;i[e+4>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;Nb(g+8|0);m=i[g+12>>2];d=0;c:{if((m|0)==i[e>>2]){break c}e=i[h>>2]+i[g+28>>2]|0;d=(e>>>0)/341|0;d=i[m+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;m=1;d=i[g+28>>2];f=d+1|0;i[g+28>>2]=f;d:{if(f>>>0<d>>>0){break d}B=a+16|0;while(1){d=i[g+12>>2];m=f+ -1|0;n=m+i[g+24>>2]|0;e=(n>>>0)/341|0;e=i[d+(e<<2)>>2]+o(n-o(e,341)|0,12)|0;v=i[e+8>>2];h=i[e+4>>2];t=i[e>>2];i[g+28>>2]=m;e=i[g+16>>2];d=e-d|0;if((d?o(d>>2,341)+ -1|0:0)-n>>>0>=682){nn(i[e+ -4>>2]);i[g+16>>2]=i[g+16>>2]+ -4}if(t>>>0>b>>>0){m=0;break d}m=0;d=i[a+12>>2];k=(h|0)==(d+ -1|0)?0:h+1|0;if(k>>>0>=d>>>0){break d}d=i[a+116>>2];u=o(v,12);y=d+u|0;e:{q=k<<2;s=u+i[a+128>>2]|0;e=i[a>>2]-i[q+i[s>>2]>>2]|0;if(!e){if(!t){break e}p=0;while(1){q=0;f=i[c+16>>2];f:{if((f|0)==i[c+20>>2]){break f}while(1){d=o(q,20)+f|0;e=i[y>>2]+(i[d+4>>2]<<2)|0;s=i[d>>2];k=i[d+12>>2];g:{if(k>>>0>3){break g}h=i[c+12>>2];n=d+16|0;if(!i[n>>2]){e=h;break g}m=d+12|0;f=0;while(1){d=pn(h,(f<<2)+e|0,k);k=i[m>>2];h=d+k|0;f=f+1|0;if(f>>>0<l[n>>2]){continue}break}e=i[c+12>>2]}f=i[c+28>>2];f=j[s+84|0]?f:i[i[s+68>>2]+(f<<2)>>2];if(f>>>0>=l[s+80>>2]){break f}d=i[s+40>>2];pn(i[i[s>>2]>>2]+o(d,f)|0,e,d);q=q+1|0;f=i[c+16>>2];if(q>>>0<(i[c+20>>2]-f|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;p=p+1|0;if((t|0)!=(p|0)){continue}break}break e}h:{i:{j:{k:{if(t>>>0<=2){d=i[a+104>>2];i[d>>2]=k;h=1;f=i[a+12>>2];if(f>>>0>1){break k}break h}if(l[a+8>>2]>l[a+4>>2]){break d}h=d;d=u+12|0;ua(h+d|0,i[y>>2],i[y+4>>2]);d=q+i[d+i[a+116>>2]>>2]|0;i[d>>2]=i[d>>2]+(1<<e+ -1);i[g+4>>2]=0;De(B,r(t)^31,g+4|0);s=v+1|0;e=(t>>>1|0)-i[g+4>>2]|0;d=t-e|0;l:{if((d|0)==(e|0)){d=e;break l}p=i[a+84>>2];if((p|0)==i[a+76>>2]){break j}n=i[p>>2];h=i[a+88>>2];m=h+1|0;i[a+88>>2]=m;h=n&-2147483648>>>h;m:{if((m|0)==32){i[a+88>>2]=0;i[a+84>>2]=p+4;if(h){break m}break j}if(!h){break j}}}m=d;d=e;break i}while(1){k=(f+ -1|0)==(k|0)?0:k+1|0;i[d+(h<<2)>>2]=k;h=h+1|0;f=i[a+12>>2];if(h>>>0<f>>>0){continue}break}break h}m=e}p=i[a+128>>2];n=p+u|0;h=i[n>>2];e=h+q|0;i[e>>2]=i[e>>2]+1;ua(p+o(s,12)|0,h,i[n+4>>2]);if(d){h=i[g+28>>2]+i[g+24>>2]|0;n=i[g+16>>2];f=i[g+12>>2];e=n-f|0;if((h|0)==((e?o(e>>2,341)+ -1|0:0)|0)){Nb(g+8|0);f=i[g+12>>2];n=i[g+16>>2];h=i[g+24>>2]+i[g+28>>2]|0}if((f|0)==(n|0)){e=0}else{e=(h>>>0)/341|0;e=i[(e<<2)+f>>2]+o(h-o(e,341)|0,12)|0}i[e+8>>2]=v;i[e+4>>2]=k;i[e>>2]=d;i[g+28>>2]=i[g+28>>2]+1}if(!m){break e}h=i[g+28>>2]+i[g+24>>2]|0;e=i[g+16>>2];f=i[g+12>>2];d=e-f|0;if((h|0)==((d?o(d>>2,341)+ -1|0:0)|0)){Nb(g+8|0);f=i[g+12>>2];h=i[g+24>>2]+i[g+28>>2]|0;e=i[g+16>>2]}if((e|0)==(f|0)){d=0}else{d=(h>>>0)/341|0;d=i[(d<<2)+f>>2]+o(h-o(d,341)|0,12)|0}i[d+8>>2]=s;i[d+4>>2]=k;i[d>>2]=m;i[g+28>>2]=i[g+28>>2]+1;break e}if(!t){break e}A=0;while(1){if(f){p=i[y>>2];n=i[s>>2];k=i[a+92>>2];h=i[a+104>>2];f=0;while(1){v=h+(f<<2)|0;i[k+(i[v>>2]<<2)>>2]=0;d=i[v>>2]<<2;w=i[a>>2]-i[d+n>>2]|0;n:{if(!w){break n}z=d+k|0;u=i[a+48>>2];m=32-u|0;if((w|0)<=(m|0)){e=i[a+44>>2];if((e|0)==i[a+36>>2]){i[z>>2]=0;break n}i[z>>2]=i[e>>2]<<u>>>32-w;d=w+i[a+48>>2]|0;i[a+48>>2]=d;if((d|0)!=32){break n}i[a+48>>2]=0;i[a+44>>2]=e+4;break n}q=i[a+44>>2];d=q+4|0;if((d|0)==i[a+36>>2]){i[z>>2]=0;break n}e=i[q>>2];i[a+44>>2]=d;d=w-m|0;i[a+48>>2]=d;i[z>>2]=i[q+4>>2]>>>32-d|e<<u>>>32-w}e=i[v>>2]<<2;d=e+k|0;i[d>>2]=i[d>>2]|i[e+p>>2];f=f+1|0;if(f>>>0<l[a+12>>2]){continue}break}}q=0;f=i[c+16>>2];o:{if((f|0)==i[c+20>>2]){break o}while(1){d=o(q,20)+f|0;e=i[a+92>>2]+(i[d+4>>2]<<2)|0;p=i[d>>2];k=i[d+12>>2];p:{if(k>>>0>3){break p}h=i[c+12>>2];n=d+16|0;if(!i[n>>2]){e=h;break p}m=d+12|0;f=0;while(1){d=pn(h,(f<<2)+e|0,k);k=i[m>>2];h=d+k|0;f=f+1|0;if(f>>>0<l[n>>2]){continue}break}e=i[c+12>>2]}f=i[c+28>>2];f=j[p+84|0]?f:i[i[p+68>>2]+(f<<2)>>2];if(f>>>0>=l[p+80>>2]){break o}d=i[p+40>>2];pn(i[i[p>>2]>>2]+o(d,f)|0,e,d);q=q+1|0;f=i[c+16>>2];if(q>>>0<(i[c+20>>2]-f|0)/20>>>0){continue}break}}i[c+28>>2]=i[c+28>>2]+1;i[a+8>>2]=i[a+8>>2]+1;A=A+1|0;if((A|0)==(t|0)){break e}f=i[a+12>>2];continue}}f=i[g+28>>2];if(f){continue}break}m=1}b=i[g+24>>2];a=(b>>>0)/341|0;f=i[g+12>>2];h=i[g+16>>2];q:{if((f|0)==(h|0)){break q}d=(a<<2)+f|0;e=i[d>>2];k=e+o(b-o(a,341)|0,12)|0;b=b+i[g+28>>2]|0;a=(b>>>0)/341|0;a=i[(a<<2)+f>>2]+o(b-o(a,341)|0,12)|0;if((k|0)==(a|0)){break q}while(1){k=k+12|0;if((k-e|0)==4092){e=i[d+4>>2];k=e;d=d+4|0}if((a|0)!=(k|0)){continue}break}}i[g+28>>2]=0;k=h-f>>2;if(k>>>0>2){while(1){nn(i[f>>2]);f=i[g+12>>2]+4|0;i[g+12>>2]=f;h=i[g+16>>2];k=h-f>>2;if(k>>>0>2){continue}break}}e=170;r:{switch(k+ -1|0){case 1:e=341;case 0:i[g+24>>2]=e;break;default:break r}}s:{if((f|0)==(h|0)){break s}while(1){nn(i[f>>2]);f=f+4|0;if((h|0)!=(f|0)){continue}break}b=i[g+16>>2];a=i[g+12>>2];if((b|0)==(a|0)){break s}i[g+16>>2]=b+(((b-a|0)+ -4>>>2^-1)<<2)}a=i[g+8>>2];if(a){nn(a)}J=g+32|0;return m}Sm();x()}Sm();x()}function Pc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;j=J+ -64|0;J=j;i[a+8>>2]=e;f=a+32|0;k=i[f>>2];d=i[a+36>>2]-k>>2;a:{if(d>>>0<e>>>0){Ra(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=k+(e<<2)}i[j+56>>2]=0;i[j+60>>2]=0;i[j+48>>2]=0;i[j+52>>2]=0;i[j+40>>2]=0;i[j+44>>2]=0;f=j+32|0;i[f>>2]=0;i[f+4>>2]=0;i[j+24>>2]=0;i[j+28>>2]=0;i[j+16>>2]=0;i[j+20>>2]=0;i[j>>2]=0;d=0;if(e){Ta(j+16|0,e,j);h=i[j+28>>2];d=i[f>>2]}i[j>>2]=0;d=d-h>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}i[j+32>>2]=(e<<2)+h;break b}Ta(j+16|12,e-d|0,j)}i[j>>2]=0;f=i[j+40>>2];d=i[j+44>>2]-f>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}i[j+44>>2]=f+(e<<2);break c}Ta(j+40|0,e-d|0,j)}i[j>>2]=0;f=i[j+52>>2];d=i[j+56>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}i[j+56>>2]=f+(e<<2);break d}Ta(j+52|0,e-d|0,j)}e:{if(i[a+8>>2]<=0){break e}g=i[j+16>>2];h=0;while(1){d=h<<2;f=i[d+g>>2];l=i[a+16>>2];f:{if((f|0)>(l|0)){k=i[a+32>>2];i[d+k>>2]=l;break f}k=i[a+32>>2];d=d+k|0;l=i[a+12>>2];if((f|0)<(l|0)){i[d>>2]=l;break f}i[d>>2]=f}h=h+1|0;d=i[a+8>>2];if((h|0)<(d|0)){continue}break}if((d|0)<1){break e}d=0;while(1){g=d<<2;f=g+c|0;g=i[b+g>>2]+i[g+k>>2]|0;i[f>>2]=g;g:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break g}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)<i[a+8>>2]){continue}break}}A=i[a+52>>2];q=i[a+48>>2];u=Dm(16);d=u;i[d>>2]=0;i[d+4>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;i[j+8>>2]=0;i[j>>2]=0;i[j+4>>2]=0;h:{if(e){if(e>>>0>=1073741824){break h}d=e<<2;t=Dm(d);i[j>>2]=t;f=d+t|0;i[j+8>>2]=f;qn(t,0,d);i[j+4>>2]=f}d=1;f=i[a+56>>2];k=i[f+4>>2];v=i[f>>2];f=k-v|0;i:{if((f|0)<5){break i}d=v-k|0;d=((d|0)>(f|0)?d:f)>>>2|0;B=d>>>0>2?d:2;C=d>>>0>1?d:1;D=e<<2;l=1;while(1){j:{k:{l:{if((l|0)!=(C|0)){m:{n:{k=i[(l<<2)+v>>2];if((k|0)==-1){break n}n=k+((k>>>0)%3|0?-1:2)|0;w=n>>>5|0;m=1;y=1<<n;z=i[q>>2];f=0;d=k;o:{while(1){p:{if(i[z+(d>>>3&536870908)>>2]>>>d&1){break p}g=i[i[i[q+64>>2]+12>>2]+(d<<2)>>2];if((g|0)==-1){break p}r=i[A>>2];h=i[q+28>>2];s=i[r+(i[h+(g<<2)>>2]<<2)>>2];if((s|0)>=(l|0)){break p}p=g+1|0;p=i[r+(i[h+(((p>>>0)%3|0?p:g+ -2|0)<<2)>>2]<<2)>>2];if((p|0)>=(l|0)){break p}g=i[r+(i[h+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(l|0)){break p}if((e|0)>=1){r=i[(j+16|0)+o(f,12)>>2];g=o(e,g);p=o(e,p);s=o(e,s);h=0;while(1){i[r+(h<<2)>>2]=(i[(g+h<<2)+c>>2]+i[(h+p<<2)+c>>2]|0)-i[(h+s<<2)+c>>2];h=h+1|0;if((h|0)!=(e|0)){continue}break}}g=4;f=f+1|0;if((f|0)==4){break o}}q:{if(m&1){h=-1;g=d+1|0;d=(g>>>0)%3|0?g:d+ -2|0;if((d|0)==-1|i[i[q>>2]+(d>>>3&536870908)>>2]>>>d&1){break q}d=i[i[i[q+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break q}g=d+1|0;h=(g>>>0)%3|0?g:d+ -2|0;break q}h=-1;d=((d>>>0)%3|0?-1:2)+d|0;if((d|0)==-1|i[i[q>>2]+(d>>>3&536870908)>>2]>>>d&1){break q}d=i[i[i[q+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break q}if((d>>>0)%3|0){h=d+ -1|0;break q}h=d+2|0}r:{if((h|0)==(k|0)){break r}d=h;g=(h|0)!=-1;h=(g|m^-1)&1;d=h?d:-1;m=g&m;if(!((n|0)==-1|h)){if(i[i[q>>2]+(w<<2)>>2]&y){break r}g=i[i[i[q+64>>2]+12>>2]+(n<<2)>>2];if((g|0)==-1){break r}m=0;if((g>>>0)%3|0){d=g+ -1|0}else{d=g+2|0}}if((d|0)!=-1){continue}}break}g=f;if((g|0)<1){break n}}n=(e|0)<1;if(!n){qn(t,0,D)}d=g+ -1|0;m=(d<<2)+u|0;d=o(d,12)+a|0;r=d+60|0;w=i[d- -64>>2];d=0;y=i[j>>2];k=0;f=0;while(1){h=i[m>>2];i[m>>2]=h+1;if(w>>>0<=h>>>0){break i}s:{if(i[i[r>>2]+(h>>>3&536870908)>>2]>>>h&1){break s}f=f+1|0;if(n){break s}z=i[(j+16|0)+o(k,12)>>2];h=0;while(1){s=h<<2;p=s+y|0;i[p>>2]=i[p>>2]+i[s+z>>2];h=h+1|0;if((h|0)!=(e|0)){continue}break}}k=k+1|0;if((g|0)!=(k|0)){continue}break}m=o(e,l);g=m;if(!f){break m}h=0;if((e|0)>0){break l}break k}g=o(e,l)}if(i[a+8>>2]<1){break j}m=(o(l+ -1|0,e)<<2)+c|0;h=0;while(1){d=h<<2;f=i[d+m>>2];n=i[a+16>>2];t:{if((f|0)>(n|0)){k=i[a+32>>2];i[d+k>>2]=n;break t}k=i[a+32>>2];d=d+k|0;n=i[a+12>>2];if((f|0)<(n|0)){i[d>>2]=n;break t}i[d>>2]=f}h=h+1|0;f=i[a+8>>2];if((h|0)<(f|0)){continue}break}d=0;if((f|0)<1){break j}f=g<<2;h=f+c|0;m=b+f|0;while(1){g=d<<2;f=g+h|0;g=i[g+m>>2]+i[g+k>>2]|0;i[f>>2]=g;u:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break u}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)<i[a+8>>2]){continue}break}break j}Tm();x()}while(1){d=(h<<2)+t|0;i[d>>2]=i[d>>2]/(f|0);h=h+1|0;if((h|0)!=(e|0)){continue}break}}if(i[a+8>>2]<1){break j}h=0;while(1){d=h<<2;f=i[d+t>>2];g=i[a+16>>2];v:{if((f|0)>(g|0)){k=i[a+32>>2];i[d+k>>2]=g;break v}k=i[a+32>>2];d=d+k|0;g=i[a+12>>2];if((f|0)<(g|0)){i[d>>2]=g;break v}i[d>>2]=f}h=h+1|0;f=i[a+8>>2];if((h|0)<(f|0)){continue}break}d=0;if((f|0)<1){break j}f=m<<2;h=f+c|0;m=b+f|0;while(1){g=d<<2;f=g+h|0;g=i[g+m>>2]+i[g+k>>2]|0;i[f>>2]=g;w:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break w}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)<i[a+8>>2]){continue}break}}d=1;l=l+1|0;if((B|0)!=(l|0)){continue}break}}a=i[j>>2];if(a){i[j+4>>2]=a;nn(a)}nn(u);a=i[j+52>>2];if(a){i[j+56>>2]=a;nn(a)}a=i[j+40>>2];if(a){i[j+44>>2]=a;nn(a)}a=i[j+28>>2];if(a){i[j+32>>2]=a;nn(a)}a=i[j+16>>2];if(a){i[j+20>>2]=a;nn(a)}J=j- -64|0;return d|0}Sm();x()}function wd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0;h=J+ -64|0;J=h;i[a+8>>2]=e;f=a+32|0;k=i[f>>2];d=i[a+36>>2]-k>>2;a:{if(d>>>0<e>>>0){Ra(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=k+(e<<2)}i[h+56>>2]=0;i[h+60>>2]=0;i[h+48>>2]=0;i[h+52>>2]=0;i[h+40>>2]=0;i[h+44>>2]=0;d=h+32|0;i[d>>2]=0;i[d+4>>2]=0;i[h+24>>2]=0;i[h+28>>2]=0;i[h+16>>2]=0;i[h+20>>2]=0;i[h>>2]=0;f=0;if(e){Ta(h+16|0,e,h);j=i[h+28>>2];f=i[d>>2]}i[h>>2]=0;d=f-j>>2;b:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break b}i[h+32>>2]=(e<<2)+j;break b}Ta(h+16|12,e-d|0,h)}i[h>>2]=0;f=i[h+40>>2];d=i[h+44>>2]-f>>2;c:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break c}i[h+44>>2]=f+(e<<2);break c}Ta(h+40|0,e-d|0,h)}i[h>>2]=0;f=i[h+52>>2];d=i[h+56>>2]-f>>2;d:{if(d>>>0>=e>>>0){if(d>>>0<=e>>>0){break d}i[h+56>>2]=f+(e<<2);break d}Ta(h+52|0,e-d|0,h)}e:{if(i[a+8>>2]<=0){break e}g=i[h+16>>2];j=0;while(1){d=j<<2;f=i[d+g>>2];m=i[a+16>>2];f:{if((f|0)>(m|0)){k=i[a+32>>2];i[d+k>>2]=m;break f}k=i[a+32>>2];d=d+k|0;m=i[a+12>>2];if((f|0)<(m|0)){i[d>>2]=m;break f}i[d>>2]=f}j=j+1|0;d=i[a+8>>2];if((j|0)<(d|0)){continue}break}if((d|0)<1){break e}f=0;while(1){g=f<<2;d=g+c|0;g=i[b+g>>2]+i[g+k>>2]|0;i[d>>2]=g;g:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break g}g=g+i[a+20>>2]|0}i[d>>2]=g}f=f+1|0;if((f|0)<i[a+8>>2]){continue}break}}A=i[a+52>>2];z=i[a+48>>2];w=Dm(16);d=w;i[d>>2]=0;i[d+4>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;h:{if(e){if(e>>>0>=1073741824){break h}d=e<<2;s=Dm(d);i[h>>2]=s;f=d+s|0;i[h+8>>2]=f;qn(s,0,d);i[h+4>>2]=f}k=1;d=i[a+56>>2];f=i[d+4>>2];y=i[d>>2];d=f-y|0;i:{if((d|0)<5){break i}f=y-f|0;d=((f|0)>(d|0)?f:d)>>>2|0;B=d>>>0>2?d:2;C=d>>>0>1?d:1;D=e<<2;m=1;while(1){j:{k:{l:{if((m|0)!=(C|0)){m:{n:{k=i[(m<<2)+y>>2];if((k|0)==-1){break n}n=i[z+12>>2];u=k+((k>>>0)%3|0?-1:2)|0;v=n+(u<<2)|0;l=1;f=0;d=k;o:{while(1){g=i[n+(d<<2)>>2];p:{if((g|0)==-1){break p}j=-1;r=i[A>>2];p=i[z>>2];t=i[r+(i[p+(g<<2)>>2]<<2)>>2];q=g+1|0;q=(q>>>0)%3|0?q:g+ -2|0;if((q|0)!=-1){q=i[p+(q<<2)>>2]}else{q=-1}g=g+((g>>>0)%3|0?-1:2)|0;if((g|0)!=-1){j=i[p+(g<<2)>>2]}if((t|0)>=(m|0)){break p}g=i[(q<<2)+r>>2];if((g|0)>=(m|0)){break p}j=i[r+(j<<2)>>2];if((j|0)>=(m|0)){break p}p=i[(h+16|0)+o(f,12)>>2];if((e|0)>=1){r=o(e,j);g=o(e,g);t=o(e,t);j=0;while(1){i[p+(j<<2)>>2]=(i[(j+r<<2)+c>>2]+i[(g+j<<2)+c>>2]|0)-i[(j+t<<2)+c>>2];j=j+1|0;if((j|0)!=(e|0)){continue}break}}g=4;f=f+1|0;if((f|0)==4){break o}}q:{if(l&1){p=d+1|0;d=(p>>>0)%3|0?p:d+ -2|0;g=-1;if((d|0)==-1){break q}d=i[n+(d<<2)>>2];g=-1;if((d|0)==-1){break q}g=d+1|0;g=(g>>>0)%3|0?g:d+ -2|0;break q}d=((d>>>0)%3|0?-1:2)+d|0;g=-1;if((d|0)==-1){break q}d=i[n+(d<<2)>>2];g=-1;if((d|0)==-1){break q}g=d+ -1|0;if((d>>>0)%3|0){break q}g=d+2|0}r:{if((g|0)==(k|0)){break r}d=g;g=(g|0)!=-1;j=(g|l^-1)&1;d=j?d:-1;l=g&l;if(!((u|0)==-1|j)){g=i[v>>2];if((g|0)==-1){break r}l=0;if((g>>>0)%3|0){d=g+ -1|0}else{d=g+2|0}}if((d|0)!=-1){continue}}break}g=f;if((g|0)<1){break n}}n=(e|0)<1;if(!n){qn(s,0,D)}d=g+ -1|0;l=(d<<2)+w|0;d=o(d,12)+a|0;p=d+60|0;r=i[d- -64>>2];k=0;t=i[h>>2];d=0;f=0;while(1){j=i[l>>2];i[l>>2]=j+1;if(r>>>0<=j>>>0){break i}s:{if(i[i[p>>2]+(j>>>3&536870908)>>2]>>>j&1){break s}f=f+1|0;if(n){break s}q=i[(h+16|0)+o(d,12)>>2];j=0;while(1){u=j<<2;v=u+t|0;i[v>>2]=i[v>>2]+i[q+u>>2];j=j+1|0;if((j|0)!=(e|0)){continue}break}}d=d+1|0;if((g|0)!=(d|0)){continue}break}g=o(e,m);d=g;if(!f){break m}j=0;if((e|0)>0){break l}break k}d=o(e,m)}if(i[a+8>>2]<1){break j}l=(o(m+ -1|0,e)<<2)+c|0;j=0;while(1){f=j<<2;g=i[f+l>>2];n=i[a+16>>2];t:{if((g|0)>(n|0)){k=i[a+32>>2];i[f+k>>2]=n;break t}k=i[a+32>>2];f=f+k|0;n=i[a+12>>2];if((g|0)<(n|0)){i[f>>2]=n;break t}i[f>>2]=g}j=j+1|0;g=i[a+8>>2];if((j|0)<(g|0)){continue}break}f=0;if((g|0)<1){break j}d=d<<2;j=d+c|0;l=b+d|0;while(1){g=f<<2;d=g+j|0;g=i[g+l>>2]+i[g+k>>2]|0;i[d>>2]=g;u:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break u}g=g+i[a+20>>2]|0}i[d>>2]=g}f=f+1|0;if((f|0)<i[a+8>>2]){continue}break}break j}Tm();x()}while(1){d=(j<<2)+s|0;i[d>>2]=i[d>>2]/(f|0);j=j+1|0;if((j|0)!=(e|0)){continue}break}}if(i[a+8>>2]<1){break j}j=0;while(1){d=j<<2;f=i[d+s>>2];l=i[a+16>>2];v:{if((f|0)>(l|0)){k=i[a+32>>2];i[d+k>>2]=l;break v}k=i[a+32>>2];d=d+k|0;l=i[a+12>>2];if((f|0)<(l|0)){i[d>>2]=l;break v}i[d>>2]=f}j=j+1|0;d=i[a+8>>2];if((j|0)<(d|0)){continue}break}f=0;if((d|0)<1){break j}d=g<<2;j=d+c|0;l=b+d|0;while(1){g=f<<2;d=g+j|0;g=i[g+l>>2]+i[g+k>>2]|0;i[d>>2]=g;w:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break w}g=g+i[a+20>>2]|0}i[d>>2]=g}f=f+1|0;if((f|0)<i[a+8>>2]){continue}break}}k=1;m=m+1|0;if((B|0)!=(m|0)){continue}break}}a=i[h>>2];if(a){i[h+4>>2]=a;nn(a)}nn(w);a=i[h+52>>2];if(a){i[h+56>>2]=a;nn(a)}a=i[h+40>>2];if(a){i[h+44>>2]=a;nn(a)}a=i[h+28>>2];if(a){i[h+32>>2]=a;nn(a)}a=i[h+16>>2];if(a){i[h+20>>2]=a;nn(a)}J=h- -64|0;return k|0}Sm();x()}function Fl(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;f=J-32|0;J=f;d=i[a+12>>2];i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}h=d<<2;e=Dm(h);i[f+8>>2]=e;k=e+h|0;i[f+16>>2]=k;qn(e,0,h);i[f+12>>2]=k}h=i[a+120>>2];g=i[h>>2];if(g){i[h+4>>2]=g;nn(g);i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;k=i[f+12>>2];e=i[f+8>>2];d=i[a+12>>2]}i[h+4>>2]=k;i[h>>2]=e;i[h+8>>2]=i[f+16>>2];e=0;i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;b:{if(d){if(d>>>0>=1073741824){break b}d=d<<2;j=Dm(d);i[f+8>>2]=j;e=d+j|0;i[f+16>>2]=e;qn(j,0,d);i[f+12>>2]=e}d=i[a+132>>2];h=i[d>>2];if(h){i[d+4>>2]=h;nn(h);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;j=i[f+8>>2];e=i[f+12>>2]}i[d+4>>2]=e;i[d>>2]=j;i[d+8>>2]=i[f+16>>2];e=f+24|0;i[e>>2]=0;i[e+4>>2]=0;h=f+16|0;i[h>>2]=0;i[h+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;Nb(f+8|0);g=i[h>>2];h=i[f+12>>2];d=0;c:{if((g|0)==(h|0)){break c}d=i[e>>2]+i[f+28>>2]|0;e=(d>>>0)/341|0;d=i[h+(e<<2)>>2]+o(d-o(e,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;e=i[f+28>>2];d=e+1|0;i[f+28>>2]=d;d:{if(d>>>0<e>>>0){break d}y=a+96|0;while(1){j=i[f+12>>2];g=d+ -1|0;d=g+i[f+24>>2]|0;e=(d>>>0)/341|0;e=i[j+(e<<2)>>2]+o(d-o(e,341)|0,12)|0;s=i[e+8>>2];n=i[e+4>>2];h=i[e>>2];i[f+28>>2]=g;e=i[f+16>>2];g=e-j|0;if((g?o(g>>2,341)+ -1|0:0)-d>>>0>=682){nn(i[e+ -4>>2]);i[f+16>>2]=i[f+16>>2]+ -4}if(h>>>0>b>>>0){break d}d=i[a+120>>2];k=o(s,12);p=k+i[a+132>>2]|0;j=vl(a,p,n);if(j>>>0>=l[a+12>>2]){break d}g=d+k|0;e:{f:{n=j<<2;d=i[a>>2]-i[n+i[p>>2]>>2]|0;if(!d){d=0;if(!h){break f}while(1){Ml(c,g);i[a+8>>2]=i[a+8>>2]+1;d=d+1|0;if((h|0)!=(d|0)){continue}break}break f}g:{h:{i:{j:{if(h>>>0<=2){k=i[a+108>>2];i[k>>2]=j;e=1;d=i[a+12>>2];if(d>>>0>1){break j}break g}if(l[a+8>>2]>l[a+4>>2]){break d}e=1<<d+ -1;d=i[a+120>>2];t=s+1|0;p=o(t,12);m=d+p|0;if((m|0)!=(g|0)){ua(m,i[g>>2],i[g+4>>2]);d=i[a+120>>2]}d=n+i[d+p>>2]|0;i[d>>2]=e+i[d>>2];d=r(h)^31;e=i[a+32>>2];m=32-e|0;k:{if((d|0)<=(m|0)){g=i[a+28>>2];if((g|0)==i[a+20>>2]){e=0;break k}m=i[g>>2];q=d+e|0;i[a+32>>2]=q;e=m<<e>>>32-d|0;if((q|0)!=32){break k}i[a+32>>2]=0;i[a+28>>2]=g+4;break k}g=i[a+28>>2];q=g+4|0;if((q|0)==i[a+20>>2]){e=0;break k}v=i[g>>2];i[a+28>>2]=q;m=d-m|0;i[a+32>>2]=m;e=i[g+4>>2]>>>32-m|v<<e>>>32-d}d=(h>>>1|0)-e|0;e=h-d|0;l:{if((e|0)==(d|0)){e=d;break l}h=i[a+88>>2];if((h|0)==i[a+80>>2]){break i}g=i[h>>2];m=i[a+92>>2];q=m+1|0;i[a+92>>2]=q;g=g&-2147483648>>>m;m:{if((q|0)==32){i[a+92>>2]=0;i[a+88>>2]=h+4;if(g){break m}break i}if(!g){break i}}}h=e;e=d;break h}while(1){j=(d+ -1|0)==(j|0)?0:j+1|0;i[k+(e<<2)>>2]=j;e=e+1|0;d=i[a+12>>2];if(e>>>0<d>>>0){continue}break}break g}h=d}d=i[a+132>>2];g=d+k|0;k=i[g>>2];n=k+n|0;i[n>>2]=i[n>>2]+1;ua(d+p|0,k,i[g+4>>2]);if(e){k=i[f+28>>2]+i[f+24>>2]|0;g=i[f+16>>2];d=i[f+12>>2];p=g-d|0;if((k|0)==((p?o(p>>2,341)+ -1|0:0)|0)){Nb(f+8|0);k=i[f+24>>2]+i[f+28>>2]|0;g=i[f+16>>2];d=i[f+12>>2]}if((d|0)==(g|0)){d=0}else{g=d;d=(k>>>0)/341|0;d=i[g+(d<<2)>>2]+o(k-o(d,341)|0,12)|0}i[d+8>>2]=s;i[d+4>>2]=j;i[d>>2]=e;i[f+28>>2]=i[f+28>>2]+1}if(!h){break f}e=i[f+28>>2]+i[f+24>>2]|0;k=i[f+16>>2];d=i[f+12>>2];g=k-d|0;if((e|0)==((g?o(g>>2,341)+ -1|0:0)|0)){Nb(f+8|0);e=i[f+24>>2]+i[f+28>>2]|0;k=i[f+16>>2];d=i[f+12>>2]}g=0;n:{if((d|0)==(k|0)){break n}g=d;d=(e>>>0)/341|0;g=i[g+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[g+8>>2]=t;i[g+4>>2]=j;i[g>>2]=h;d=i[f+28>>2]+1|0;i[f+28>>2]=d;break e}if(!h){break f}s=0;while(1){if(d){q=i[g>>2];v=i[p>>2];k=i[a+96>>2];z=i[a+108>>2];d=0;while(1){n=z+(d<<2)|0;i[k+(i[n>>2]<<2)>>2]=0;j=i[n>>2]<<2;e=i[a>>2]-i[j+v>>2]|0;o:{if(!e){break o}j=j+k|0;t=i[a+52>>2];u=32-t|0;if((e|0)<=(u|0)){m=i[a+48>>2];if((m|0)==i[a+40>>2]){i[j>>2]=0;break o}i[j>>2]=i[m>>2]<<t>>>32-e;e=e+i[a+52>>2]|0;i[a+52>>2]=e;if((e|0)!=32){break o}i[a+52>>2]=0;i[a+48>>2]=m+4;break o}m=i[a+48>>2];w=m+4|0;if((w|0)==i[a+40>>2]){i[j>>2]=0;break o}A=i[m>>2];i[a+48>>2]=w;u=e-u|0;i[a+52>>2]=u;i[j>>2]=i[m+4>>2]>>>32-u|A<<t>>>32-e}e=i[n>>2]<<2;j=e+k|0;i[j>>2]=i[j>>2]|i[e+q>>2];d=d+1|0;if(d>>>0<l[a+12>>2]){continue}break}}Ml(c,y);i[a+8>>2]=i[a+8>>2]+1;s=s+1|0;if((s|0)==(h|0)){break f}d=i[a+12>>2];continue}}d=i[f+28>>2]}if(d){continue}break}}b=i[f+24>>2];c=(b>>>0)/341|0;a=i[f+12>>2];j=i[f+16>>2];p:{if((a|0)==(j|0)){break p}k=(c<<2)+a|0;e=i[k>>2];d=e+o(b-o(c,341)|0,12)|0;b=b+i[f+28>>2]|0;c=(b>>>0)/341|0;b=i[(c<<2)+a>>2]+o(b-o(c,341)|0,12)|0;if((d|0)==(b|0)){break p}while(1){d=d+12|0;if((d-e|0)==4092){e=i[k+4>>2];k=k+4|0;d=e}if((b|0)!=(d|0)){continue}break}}i[f+28>>2]=0;d=j-a>>2;if(d>>>0>2){while(1){nn(i[a>>2]);a=i[f+12>>2]+4|0;i[f+12>>2]=a;j=i[f+16>>2];d=j-a>>2;if(d>>>0>2){continue}break}}e=170;q:{switch(d+ -1|0){case 1:e=341;case 0:i[f+24>>2]=e;break;default:break q}}r:{if((a|0)==(j|0)){break r}while(1){nn(i[a>>2]);a=a+4|0;if((j|0)!=(a|0)){continue}break}a=i[f+16>>2];b=i[f+12>>2];if((a|0)==(b|0)){break r}i[f+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[f+8>>2];if(a){nn(a)}J=f+32|0;return}Sm();x()}Sm();x()}function Gl(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;f=J-32|0;J=f;d=i[a+12>>2];i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}e=d<<2;g=Dm(e);i[f+8>>2]=g;h=e+g|0;i[f+16>>2]=h;qn(g,0,e);i[f+12>>2]=h}e=i[a+120>>2];k=i[e>>2];if(k){i[e+4>>2]=k;nn(k);i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;h=i[f+12>>2];g=i[f+8>>2];d=i[a+12>>2]}i[e+4>>2]=h;i[e>>2]=g;i[e+8>>2]=i[f+16>>2];g=0;i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;b:{if(d){if(d>>>0>=1073741824){break b}d=d<<2;j=Dm(d);i[f+8>>2]=j;g=d+j|0;i[f+16>>2]=g;qn(j,0,d);i[f+12>>2]=g}d=i[a+132>>2];e=i[d>>2];if(e){i[d+4>>2]=e;nn(e);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;j=i[f+8>>2];g=i[f+12>>2]}i[d+4>>2]=g;i[d>>2]=j;i[d+8>>2]=i[f+16>>2];e=f+24|0;i[e>>2]=0;i[e+4>>2]=0;k=f+16|0;i[k>>2]=0;i[k+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;Nb(f+8|0);g=i[k>>2];k=i[f+12>>2];d=0;c:{if((g|0)==(k|0)){break c}d=i[e>>2]+i[f+28>>2]|0;e=(d>>>0)/341|0;d=i[k+(e<<2)>>2]+o(d-o(e,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;e=i[f+28>>2];d=e+1|0;i[f+28>>2]=d;d:{if(d>>>0<e>>>0){break d}v=a+96|0;while(1){h=i[f+12>>2];j=d+ -1|0;d=j+i[f+24>>2]|0;e=(d>>>0)/341|0;e=i[h+(e<<2)>>2]+o(d-o(e,341)|0,12)|0;q=i[e+8>>2];g=i[e+4>>2];k=i[e>>2];i[f+28>>2]=j;e=i[f+16>>2];j=e-h|0;if((j?o(j>>2,341)+ -1|0:0)-d>>>0>=682){nn(i[e+ -4>>2]);i[f+16>>2]=i[f+16>>2]+ -4}if(k>>>0>b>>>0){break d}d=i[a+12>>2];j=(g|0)==(d+ -1|0)?0:g+1|0;if(j>>>0>=d>>>0){break d}d=i[a+120>>2];g=o(q,12);h=d+g|0;e:{f:{p=j<<2;s=g+i[a+132>>2]|0;e=i[a>>2]-i[p+i[s>>2]>>2]|0;if(!e){d=0;if(!k){break f}while(1){Ml(c,h);i[a+8>>2]=i[a+8>>2]+1;d=d+1|0;if((k|0)!=(d|0)){continue}break}break f}g:{h:{i:{j:{if(k>>>0<=2){e=i[a+108>>2];i[e>>2]=j;g=1;d=i[a+12>>2];if(d>>>0>1){break j}break g}if(l[a+8>>2]>l[a+4>>2]){break d}m=d;d=g+12|0;ua(m+d|0,i[h>>2],i[h+4>>2]);d=p+i[d+i[a+120>>2]>>2]|0;i[d>>2]=i[d>>2]+(1<<e+ -1);d=r(k)^31;e=i[a+32>>2];n=32-e|0;k:{if((d|0)<=(n|0)){h=i[a+28>>2];if((h|0)==i[a+20>>2]){e=0;break k}n=i[h>>2];m=d+e|0;i[a+32>>2]=m;e=n<<e>>>32-d|0;if((m|0)!=32){break k}i[a+32>>2]=0;i[a+28>>2]=h+4;break k}h=i[a+28>>2];m=h+4|0;if((m|0)==i[a+20>>2]){e=0;break k}s=i[h>>2];i[a+28>>2]=m;n=d-n|0;i[a+32>>2]=n;e=i[h+4>>2]>>>32-n|s<<e>>>32-d}n=q+1|0;d=(k>>>1|0)-e|0;e=k-d|0;l:{if((e|0)==(d|0)){e=d;break l}k=i[a+88>>2];if((k|0)==i[a+80>>2]){break i}h=i[k>>2];m=i[a+92>>2];s=m+1|0;i[a+92>>2]=s;h=h&-2147483648>>>m;m:{if((s|0)==32){i[a+92>>2]=0;i[a+88>>2]=k+4;if(h){break m}break i}if(!h){break i}}}k=e;e=d;break h}while(1){j=(d+ -1|0)==(j|0)?0:j+1|0;i[e+(g<<2)>>2]=j;g=g+1|0;d=i[a+12>>2];if(g>>>0<d>>>0){continue}break}break g}k=d}d=i[a+132>>2];g=d+g|0;h=i[g>>2];p=h+p|0;i[p>>2]=i[p>>2]+1;ua(d+o(n,12)|0,h,i[g+4>>2]);if(e){g=i[f+28>>2]+i[f+24>>2]|0;h=i[f+16>>2];d=i[f+12>>2];p=h-d|0;if((g|0)==((p?o(p>>2,341)+ -1|0:0)|0)){Nb(f+8|0);g=i[f+24>>2]+i[f+28>>2]|0;h=i[f+16>>2];d=i[f+12>>2]}if((d|0)==(h|0)){d=0}else{m=d;d=(g>>>0)/341|0;d=i[m+(d<<2)>>2]+o(g-o(d,341)|0,12)|0}i[d+8>>2]=q;i[d+4>>2]=j;i[d>>2]=e;i[f+28>>2]=i[f+28>>2]+1}if(!k){break f}g=i[f+28>>2]+i[f+24>>2]|0;h=i[f+16>>2];d=i[f+12>>2];e=h-d|0;if((g|0)==((e?o(e>>2,341)+ -1|0:0)|0)){Nb(f+8|0);g=i[f+24>>2]+i[f+28>>2]|0;h=i[f+16>>2];d=i[f+12>>2]}e=0;n:{if((d|0)==(h|0)){break n}e=d;d=(g>>>0)/341|0;e=i[e+(d<<2)>>2]+o(g-o(d,341)|0,12)|0}i[e+8>>2]=n;i[e+4>>2]=j;i[e>>2]=k;d=i[f+28>>2]+1|0;i[f+28>>2]=d;break e}if(!k){break f}q=0;while(1){if(d){w=i[h>>2];y=i[s>>2];j=i[a+96>>2];z=i[a+108>>2];d=0;while(1){p=z+(d<<2)|0;i[j+(i[p>>2]<<2)>>2]=0;g=i[p>>2]<<2;e=i[a>>2]-i[g+y>>2]|0;o:{if(!e){break o}g=g+j|0;n=i[a+52>>2];t=32-n|0;if((e|0)<=(t|0)){m=i[a+48>>2];if((m|0)==i[a+40>>2]){i[g>>2]=0;break o}i[g>>2]=i[m>>2]<<n>>>32-e;e=e+i[a+52>>2]|0;i[a+52>>2]=e;if((e|0)!=32){break o}i[a+52>>2]=0;i[a+48>>2]=m+4;break o}m=i[a+48>>2];u=m+4|0;if((u|0)==i[a+40>>2]){i[g>>2]=0;break o}A=i[m>>2];i[a+48>>2]=u;t=e-t|0;i[a+52>>2]=t;i[g>>2]=i[m+4>>2]>>>32-t|A<<n>>>32-e}e=i[p>>2]<<2;g=e+j|0;i[g>>2]=i[g>>2]|i[e+w>>2];d=d+1|0;if(d>>>0<l[a+12>>2]){continue}break}}Ml(c,v);i[a+8>>2]=i[a+8>>2]+1;q=q+1|0;if((q|0)==(k|0)){break f}d=i[a+12>>2];continue}}d=i[f+28>>2]}if(d){continue}break}}b=i[f+24>>2];c=(b>>>0)/341|0;a=i[f+12>>2];j=i[f+16>>2];p:{if((a|0)==(j|0)){break p}h=(c<<2)+a|0;g=i[h>>2];d=g+o(b-o(c,341)|0,12)|0;b=b+i[f+28>>2]|0;c=(b>>>0)/341|0;b=i[(c<<2)+a>>2]+o(b-o(c,341)|0,12)|0;if((d|0)==(b|0)){break p}while(1){d=d+12|0;if((d-g|0)==4092){g=i[h+4>>2];h=h+4|0;d=g}if((b|0)!=(d|0)){continue}break}}i[f+28>>2]=0;d=j-a>>2;if(d>>>0>2){while(1){nn(i[a>>2]);a=i[f+12>>2]+4|0;i[f+12>>2]=a;j=i[f+16>>2];d=j-a>>2;if(d>>>0>2){continue}break}}g=170;q:{switch(d+ -1|0){case 1:g=341;case 0:i[f+24>>2]=g;break;default:break q}}r:{if((a|0)==(j|0)){break r}while(1){nn(i[a>>2]);a=a+4|0;if((j|0)!=(a|0)){continue}break}a=i[f+16>>2];b=i[f+12>>2];if((a|0)==(b|0)){break r}i[f+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[f+8>>2];if(a){nn(a)}J=f+32|0;return}Sm();x()}Sm();x()}function Bb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0;e=J-720|0;J=e;a:{b:{c:{d:{e:{f:{if(k[b+38>>1]>=515){i[e+680>>2]=0;i[e+672>>2]=0;i[e+676>>2]=0;if((M[i[i[a>>2]+24>>2]](a)|0)<1){break d}t=a+36|0;q=e+24|0;while(1){c=M[i[i[a>>2]+20>>2]](a,p)|0;d=i[i[i[(M[i[i[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];if(i[d+28>>2]==9){f=i[e+672>>2];c=i[e+676>>2]-f>>2;r=g[d+24|0];g:{if(c>>>0<r>>>0){na(e+672|0,r-c|0);break g}if(c>>>0<=r>>>0){break g}i[e+676>>2]=f+(r<<2)}d=i[b+12>>2];c=i[b+20>>2];n=i[b+16>>2];h=r<<2;f=h;u=n+f|0;if(u>>>0<f>>>0){c=c+1|0}if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]<u>>>0:0){break b}pn(i[e+672>>2],n+i[b>>2]|0,h);c=b;h=c;d=i[c+20>>2];n=f+i[c+16>>2]|0;if(n>>>0<f>>>0){d=d+1|0}f=n;i[h+16>>2]=f;i[c+20>>2]=d;s=i[b+12>>2];h=s;c=d;n=f+4|0;if(n>>>0<4){d=d+1|0}u=i[b+8>>2];if((h|0)<(d|0)?1:(h|0)<=(d|0)?u>>>0<n>>>0:0){break b}v=i[b>>2];h=v+f|0;h=j[h|0]|j[h+1|0]<<8|(j[h+2|0]<<16|j[h+3|0]<<24);i[b+16>>2]=n;i[b+20>>2]=d;if((s|0)<(d|0)?1:(s|0)<=(d|0)?u>>>0<=n>>>0:0){break b}n=j[n+v|0];f=f+5|0;if(f>>>0<5){c=c+1|0}d=b;i[d+16>>2]=f;i[d+20>>2]=c;if(n>>>0>31){break b}i[e+20>>2]=-1;i[e+16>>2]=1140;c=q;i[c+8>>2]=0;i[c+12>>2]=0;i[c>>2]=0;i[c+4>>2]=0;c=0;h:{if(!ta(e+16|0,n,i[e+672>>2],r,(Pn(2,h),Qn()))){break h}if(!Ca(e+16|0,i[i[a+60>>2]+((i[a+40>>2]-i[a+36>>2]|0)/24<<2)>>2])){break h}c=i[a+40>>2];i:{if((c|0)!=i[a+44>>2]){i[c>>2]=1140;d=i[e+20>>2];i[c+16>>2]=0;i[c+8>>2]=0;i[c+12>>2]=0;i[c+4>>2]=d;d=i[e+28>>2]-i[e+24>>2]|0;if(d){f=d>>2;if(f>>>0>=1073741824){break f}d=Dm(d);i[c+8>>2]=d;i[c+12>>2]=d;i[c+16>>2]=d+(f<<2);f=c;n=i[e+24>>2];r=i[e+28>>2]-n|0;if((r|0)>=1){d=pn(d,n,r)+r|0}i[f+12>>2]=d}m[c+20>>2]=m[e+36>>2];i[a+40>>2]=c+24;break i}Cb(t,e+16|0)}c=1}i[e+16>>2]=1140;d=i[e+24>>2];if(d){i[e+28>>2]=d;nn(d)}if(!c){break c}}p=p+1|0;if((p|0)<(M[i[i[a>>2]+24>>2]](a)|0)){continue}break}break d}n=M[i[i[a>>2]+24>>2]](a)|0;i[e+712>>2]=0;i[e+704>>2]=0;i[e+708>>2]=0;j:{if(n){if(n>>>0>=214748365){break e}c=o(n,20);d=Dm(c);i[e+704>>2]=d;q=c+d|0;i[e+712>>2]=q;f=qn(d,0,c-((c+ -20>>>0)%20|0)|0);i[e+708>>2]=q;c=0;while(1){d=M[i[i[a>>2]+20>>2]](a,c)|0;q=i[i[i[(M[i[i[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(d<<2)>>2];p=i[q+28>>2];d=Fh(p);h=(d|0)>0?d:0;if(h>>>0>4){break j}d=o(c,20)+f|0;s=g[q+24|0];i[d+16>>2]=s;i[d+12>>2]=h;i[d+8>>2]=p;i[d+4>>2]=r;i[d>>2]=q;r=r+s|0;c=c+1|0;if((n|0)!=(c|0)){continue}break}}c=M[i[i[a>>2]+20>>2]](a,0)|0;u=i[i[i[(M[i[i[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];g[u+84|0]=1;i[u+72>>2]=i[u+68>>2];s=i[b+8>>2];h=i[b+16>>2];q=i[b+12>>2];d=q;c=i[b+20>>2];if((d|0)<(c|0)?1:(d|0)<=(c|0)?s>>>0<=h>>>0:0){break j}v=i[b>>2];y=j[v+h|0];p=b;d=c;f=h+1|0;if(f>>>0<1){d=d+1|0}t=f;f=d;i[p+16>>2]=t;i[p+20>>2]=d;k:{l:{switch(y|0){case 0:if((q|0)<(f|0)?1:(q|0)<=(f|0)?s>>>0<=t>>>0:0){break j}a=c;f=h+2|0;if(f>>>0<2){a=a+1|0}d=b;i[d+16>>2]=f;i[d+20>>2]=a;a=h+6|0;if(a>>>0<6){c=c+1|0}d=a;a=c;if((q|0)<(c|0)?1:(q|0)<=(c|0)?s>>>0<d>>>0:0){break j}c=f+v|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=d;i[b+20>>2]=a;Ka(u,c);a=e+672|0;i[a+20>>2]=0;i[a+12>>2]=0;i[a+16>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+20>>2]=c;c=a;a=db(e+16|0,e+704|0);c=Db(c,b,a);b=i[a+16>>2];if(b){i[a+20>>2]=b;nn(b)}b=i[a>>2];if(b){i[a+4>>2]=b;nn(b)}if(c){break k}break j;case 1:break l;default:break j}}if((q|0)<(f|0)?1:(q|0)<=(f|0)?s>>>0<=t>>>0:0){break j}t=j[t+v|0];d=c;p=h+2|0;if(p>>>0<2){d=d+1|0}i[b+16>>2]=p;i[b+20>>2]=d;if(t>>>0>=7){i[e>>2]=t;wn(1620,e);break j}d=h+6|0;if(d>>>0<6){c=c+1|0}f=d;d=c;if((q|0)<(c|0)?1:(q|0)<=(c|0)?s>>>0<f>>>0:0){break j}c=p+v|0;q=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=d;if(n){c=0;while(1){d=M[i[i[a>>2]+20>>2]](a,c)|0;d=i[i[i[(M[i[i[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(d<<2)>>2];Ka(d,q);g[d+84|0]=1;i[d+72>>2]=i[d+68>>2];c=c+1|0;if((n|0)!=(c|0)){continue}break}}p=0;a=db(e+672|0,e+704|0);m:{n:{o:{switch(t|0){case 0:c=gb(e+16|0,r);b=eb(c,b,a);fb(c);if(b){break n}break m;case 1:c=gb(e+16|0,r);b=hb(c,b,a);fb(c);if(b){break n}break m;case 2:c=kb(e+16|0,r);b=ib(c,b,a);jb(c);if(b){break n}break m;case 3:c=kb(e+16|0,r);b=lb(c,b,a);jb(c);if(b){break n}break m;case 4:c=ob(e+16|0,r);b=mb(c,b,a);nb(c);if(b){break n}break m;case 5:c=ob(e+16|0,r);b=pb(c,b,a);nb(c);if(b){break n}break m;case 6:break o;default:break m}}c=ob(e+16|0,r);b=qb(c,b,a);nb(c);if(!b){break m}}p=1}b=i[a+16>>2];if(b){i[a+20>>2]=b;nn(b)}b=i[a>>2];if(b){i[a+4>>2]=b;nn(b)}if(!p){break j}}w=1}a=i[e+704>>2];if(!a){break a}i[e+708>>2]=a;nn(a);break a}Sm();x()}Sm();x()}w=1;if(i[a+52>>2]==i[a+48>>2]){break b}p=0;while(1){if(!Eb(1,e+16|0,b)){break c}c=i[a+48>>2];d=i[e+16>>2];i[c+(p<<2)>>2]=0-(d&1)^d>>>1;p=p+1|0;if(p>>>0<i[a+52>>2]-c>>2>>>0){continue}break}break b}w=0}a=i[e+672>>2];if(!a){break a}i[e+676>>2]=a;nn(a)}J=e+720|0;return w|0}function Tf(a,b){var c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0;q=J-16|0;J=q;a:{b:{c:{d:{if(j[i[a+4>>2]+36|0]<=1){p=-1;m=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];d=e+4|0;if(d>>>0<4){c=c+1|0}f=d;d=c;if((m|0)<(c|0)?1:(m|0)<=(c|0)?l[b+8>>2]<f>>>0:0){break c}c=e+i[b>>2]|0;r=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[q+12>>2]=r;i[b+16>>2]=f;i[b+20>>2]=d;break d}p=-1;if(!Pf(1,q+12|0,b)){break c}r=i[q+12>>2]}e:{f:{g:{h:{i:{j:{if(!r){break j}c=i[a+8>>2];if(r>>>0>(i[c+4>>2]-i[c>>2]>>2>>>0)/3>>>0){break c}c=k[i[a+4>>2]+36>>1];if((c<<24|c<<8&16711680)>>>16>>>0>=258){v=a+36|0;m=0;k:{l:{while(1){if(!Pf(1,q+8|0,b)){break c}c=i[q+8>>2];if(!Pf(1,q+8|0,b)){break c}m=c+m|0;c=i[q+8>>2];if(m>>>0<c>>>0){break c}n=m-c|0;h=i[a+40>>2];m:{if((h|0)!=i[a+44>>2]){i[h+4>>2]=m;i[h>>2]=n;i[a+40>>2]=h+12;break m}c=i[v>>2];d=h-c|0;e=(d|0)/12|0;h=e+1|0;if(h>>>0>=357913942){break l}t=e<<1;h=e>>>0<178956970?t>>>0<h>>>0?h:t:357913941;f=0;n:{if(!h){break n}if(h>>>0>=357913942){break k}f=Dm(o(h,12))}e=f+o(e,12)|0;i[e+4>>2]=m;i[e>>2]=n;n=e+o((d|0)/-12|0,12)|0;f=f+o(h,12)|0;h=e+12|0;if((d|0)>=1){pn(n,c,d)}i[a+44>>2]=f;i[a+40>>2]=h;i[a+36>>2]=n;if(!c){break m}nn(c)}s=s+1|0;if((s|0)!=(r|0)){continue}break}m=0;Ch(b,0,0);e=r>>>0>1?r:1;while(1){c=j[b+36|0];d=k[i[a+4>>2]+36>>1];o:{if((d<<24|d<<8&16711680)>>>16>>>0<=513){if(!c){break o}h=0;c=i[b+32>>2];r=c>>>3|0;f=i[b+24>>2];d=r+f|0;p=i[b+28>>2];p:{if(d>>>0>=p>>>0){d=c;break p}h=j[d|0];d=c+1|0;i[b+32>>2]=d;r=d>>>3|0;h=h>>>(c&7)&1}if(f+r>>>0>=p>>>0){break o}i[b+32>>2]=d+1;break o}if(!c){break o}h=0;c=i[b+32>>2];d=i[b+24>>2]+(c>>>3|0)|0;if(d>>>0>=l[b+28>>2]){break o}d=j[d|0];i[b+32>>2]=c+1;h=d>>>(c&7)&1}c=i[a+36>>2]+o(m,12)|0;g[c+8|0]=j[c+8|0]&254|h&1;m=m+1|0;if((e|0)!=(m|0)){continue}break}Eh(b);break j}Sm();x()}break a}z=a+36|0;v=q+10|0;while(1){e=i[b+12>>2];m=e;c=i[b+20>>2];d=c;n=i[b+16>>2];f=n+4|0;if(f>>>0<4){c=c+1|0}t=i[b+8>>2];u=f;f=c;if((e|0)<(c|0)?1:(e|0)<=(c|0)?t>>>0<u>>>0:0){break c}w=i[b>>2];c=w+n|0;y=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=u;i[b+20>>2]=f;e=m;c=d;f=n+8|0;if(f>>>0<8){c=c+1|0}if((e|0)<(c|0)?1:(e|0)<=(c|0)?t>>>0<f>>>0:0){break c}e=u+w|0;u=j[e|0]|j[e+1|0]<<8|(j[e+2|0]<<16|j[e+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=c;if((m|0)<(c|0)?1:(m|0)<=(c|0)?t>>>0<=f>>>0:0){break c}e=j[f+w|0];c=d;d=n+9|0;if(d>>>0<9){c=c+1|0}i[b+16>>2]=d;i[b+20>>2]=c;h=e&1|h&-2;c=i[a+40>>2];q:{if((c|0)!=i[a+44>>2]){g[c+8|0]=h;i[c+4>>2]=u;i[c>>2]=y;d=j[q+8|0]|j[q+9|0]<<8;g[c+9|0]=d;g[c+10|0]=d>>>8;g[c+11|0]=j[v|0];i[a+40>>2]=c+12;break q}d=i[z>>2];m=c-d|0;c=(m|0)/12|0;f=c+1|0;if(f>>>0>=357913942){break i}n=c<<1;f=c>>>0<178956970?n>>>0<f>>>0?f:n:357913941;e=0;r:{if(!f){break r}if(f>>>0>=357913942){break a}e=Dm(o(f,12))}c=e+o(c,12)|0;g[c+8|0]=h;i[c+4>>2]=u;i[c>>2]=y;n=j[q+8|0]|j[q+9|0]<<8;g[c+9|0]=n;g[c+10|0]=n>>>8;g[c+11|0]=j[v|0];n=c+o((m|0)/-12|0,12)|0;e=e+o(f,12)|0;c=c+12|0;if((m|0)>=1){pn(n,d,m)}i[a+44>>2]=e;i[a+40>>2]=c;i[a+36>>2]=n;if(!d){break q}nn(d)}s=s+1|0;if((s|0)!=(r|0)){continue}break}}i[q+8>>2]=0;c=k[i[a+4>>2]+36>>1];c=(c<<24|c<<8&16711680)>>>16|0;s:{if(c>>>0<=511){p=-1;m=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];d=e+4|0;if(d>>>0<4){c=c+1|0}f=d;d=c;if((m|0)<(c|0)?1:(m|0)<=(c|0)?l[b+8>>2]<f>>>0:0){break c}c=e+i[b>>2]|0;r=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=d;break s}if((c|0)!=512){break e}p=-1;if(!Pf(1,q+8|0,b)){break c}r=i[q+8>>2]}if(!r){break e}c=k[i[a+4>>2]+36>>1];if((c<<24|c<<8&16711680)>>>16>>>0<258){break f}s=a+48|0;h=0;m=0;while(1){if(!Pf(1,q+4|0,b)){break g}m=i[q+4>>2]+m|0;c=i[a+52>>2];t:{if((c|0)!=i[a+56>>2]){i[c>>2]=m;i[a+52>>2]=c+4;break t}d=i[s>>2];e=c-d|0;p=e>>2;f=p+1|0;if(f>>>0>=1073741824){break h}n=e>>1;f=p>>>0<536870911?n>>>0<f>>>0?f:n:1073741823;c=0;u:{if(!f){break u}if(f>>>0>=1073741824){break a}c=Dm(f<<2)}p=c+(p<<2)|0;i[p>>2]=m;f=c+(f<<2)|0;p=p+4|0;if((e|0)>=1){pn(c,d,e)}i[a+56>>2]=f;i[a+52>>2]=p;i[a+48>>2]=c;if(!d){break t}nn(d)}h=h+1|0;if((r|0)!=(h|0)){continue}break}break e}Sm();x()}Sm();x()}p=-1;break c}s=a+48|0;p=0;while(1){m=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];d=e+4|0;if(d>>>0<4){c=c+1|0}h=d;d=c;if((m|0)<(c|0)?1:(m|0)<=(c|0)?l[b+8>>2]<h>>>0:0){p=-1;break c}c=e+i[b>>2]|0;f=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=h;i[b+20>>2]=d;c=i[a+52>>2];v:{if((c|0)!=i[a+56>>2]){i[c>>2]=f;i[a+52>>2]=c+4;break v}d=i[s>>2];m=c-d|0;h=m>>2;e=h+1|0;if(e>>>0>=1073741824){break b}n=m>>1;e=h>>>0<536870911?n>>>0<e>>>0?e:n:1073741823;c=0;w:{if(!e){break w}if(e>>>0>=1073741824){break a}c=Dm(e<<2)}h=c+(h<<2)|0;i[h>>2]=f;e=c+(e<<2)|0;f=h+4|0;if((m|0)>=1){pn(c,d,m)}i[a+56>>2]=e;i[a+52>>2]=f;i[a+48>>2]=c;if(!d){break v}nn(d)}p=p+1|0;if((r|0)!=(p|0)){continue}break}}p=i[b+16>>2]}J=q+16|0;return p}Sm();x()}Ba(12220);x()}function Ul(a,b,c,d,e){var f=0,k=0,l=0,m=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;f=J-80|0;J=f;i[f+76>>2]=b;z=f+55|0;w=f+56|0;b=0;a:{b:while(1){c:{if((t|0)<0){break c}if((b|0)>(2147483647-t|0)){i[4312]=61;t=-1;break c}t=b+t|0}d:{e:{f:{m=i[f+76>>2];b=m;k=j[b|0];if(k){while(1){g:{k=k&255;h:{if(!k){k=b;break h}if((k|0)!=37){break g}k=b;while(1){if(j[b+1|0]!=37){break h}l=b+2|0;i[f+76>>2]=l;k=k+1|0;p=j[b+2|0];b=l;if((p|0)==37){continue}break}}b=k-m|0;if(a){Vl(a,m,b)}if(b){continue b}k=f;l=!Pl(g[i[f+76>>2]+1|0]);b=i[f+76>>2];i:{if(!(l|j[b+2|0]!=36)){v=g[b+1|0]+ -48|0;x=1;b=b+3|0;break i}v=-1;b=b+1|0}i[k+76>>2]=b;q=0;u=g[b|0];l=u+ -32|0;j:{if(l>>>0>31){k=b;break j}k=b;l=1<<l;if(!(l&75913)){break j}while(1){k=b+1|0;i[f+76>>2]=k;q=l|q;u=g[b+1|0];l=u+ -32|0;if(l>>>0>=32){break j}b=k;l=1<<l;if(l&75913){continue}break}}k:{if((u|0)==42){l=f;l:{m:{if(!Pl(g[k+1|0])){break m}b=i[f+76>>2];if(j[b+2|0]!=36){break m}i[((g[b+1|0]<<2)+e|0)+ -192>>2]=10;r=i[((g[b+1|0]<<3)+d|0)+ -384>>2];x=1;b=b+3|0;break l}if(x){break f}x=0;r=0;if(a){b=i[c>>2];i[c>>2]=b+4;r=i[b>>2]}b=i[f+76>>2]+1|0}i[l+76>>2]=b;if((r|0)>-1){break k}r=0-r|0;q=q|8192;break k}r=Wl(f+76|0);if((r|0)<0){break f}b=i[f+76>>2]}p=-1;n:{if(j[b|0]!=46){break n}if(j[b+1|0]==42){o:{if(!Pl(g[b+2|0])){break o}b=i[f+76>>2];if(j[b+3|0]!=36){break o}i[((g[b+2|0]<<2)+e|0)+ -192>>2]=10;p=i[((g[b+2|0]<<3)+d|0)+ -384>>2];b=b+4|0;i[f+76>>2]=b;break n}if(x){break f}if(a){b=i[c>>2];i[c>>2]=b+4;p=i[b>>2]}else{p=0}b=i[f+76>>2]+2|0;i[f+76>>2]=b;break n}i[f+76>>2]=b+1;p=Wl(f+76|0);b=i[f+76>>2]}k=0;while(1){y=k;s=-1;if(g[b|0]+ -65>>>0>57){break a}u=b+1|0;i[f+76>>2]=u;k=g[b|0];b=u;k=j[(k+o(y,58)|0)+14959|0];if(k+ -1>>>0<8){continue}break}p:{q:{if((k|0)!=19){if(!k){break a}if((v|0)>=0){i[(v<<2)+e>>2]=k;b=(v<<3)+d|0;k=i[b+4>>2];i[f+64>>2]=i[b>>2];i[f+68>>2]=k;break q}if(!a){break d}Xl(f- -64|0,k,c);u=i[f+76>>2];break p}if((v|0)>-1){break a}}b=0;if(!a){continue b}}l=q&-65537;k=q&8192?l:q;s=0;v=15005;q=w;r:{s:{t:{u:{v:{w:{x:{y:{z:{A:{B:{C:{D:{E:{F:{G:{b=g[u+ -1|0];b=y?(b&15)==3?b&-33:b:b;switch(b+ -88|0){case 11:break r;case 9:case 13:case 14:case 15:break s;case 27:break x;case 12:case 17:break A;case 23:break B;case 0:case 32:break C;case 24:break D;case 22:break E;case 29:break F;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 e;default:break G}}H:{switch(b+ -65|0){case 0:case 4:case 5:case 6:break s;case 2:break v;case 1:case 3:break e;default:break H}}if((b|0)==83){break w}break e}b=i[f+64>>2];m=i[f+68>>2];v=15005;break z}b=0;I:{switch(y&255){case 0:i[i[f+64>>2]>>2]=t;continue b;case 1:i[i[f+64>>2]>>2]=t;continue b;case 2:k=i[f+64>>2];i[k>>2]=t;i[k+4>>2]=t>>31;continue b;case 3:h[i[f+64>>2]>>1]=t;continue b;case 4:g[i[f+64>>2]]=t;continue b;case 6:i[i[f+64>>2]>>2]=t;continue b;case 7:break I;default:continue b}}k=i[f+64>>2];i[k>>2]=t;i[k+4>>2]=t>>31;continue b}p=p>>>0>8?p:8;k=k|8;b=120}m=Yl(i[f+64>>2],i[f+68>>2],w,b&32);if(!(k&8)|!(i[f+64>>2]|i[f+68>>2])){break y}v=(b>>>4|0)+15005|0;s=2;break y}m=Zl(i[f+64>>2],i[f+68>>2],w);if(!(k&8)){break y}b=w-m|0;p=(p|0)>(b|0)?p:b+1|0;break y}l=i[f+68>>2];m=l;b=i[f+64>>2];if((l|0)<-1?1:(l|0)<=-1){m=0-(m+(0<b>>>0)|0)|0;b=0-b|0;i[f+64>>2]=b;i[f+68>>2]=m;s=1;v=15005;break z}if(k&2048){s=1;v=15006;break z}s=k&1;v=s?15007:15005}m=_l(b,m,w)}k=(p|0)>-1?k&-65537:k;b=i[f+64>>2];l=i[f+68>>2];if(!(!!(b|l)|p)){p=0;m=w;break e}b=!(b|l)+(w-m|0)|0;p=(p|0)>(b|0)?p:b;break e}b=i[f+64>>2];m=b?b:15015;b=Ql(m,p);q=b?b:p+m|0;k=l;p=b?b-m|0:p;break e}l=i[f+64>>2];if(p){break u}b=0;$l(a,32,r,0,k);break t}i[f+12>>2]=0;i[f+8>>2]=i[f+64>>2];i[f+64>>2]=f+8;p=-1;l=f+8|0}b=0;J:{while(1){m=i[l>>2];if(!m){break J}m=Sl(f+4|0,m);q=(m|0)<0;if(!(q|m>>>0>p-b>>>0)){l=l+4|0;b=b+m|0;if(p>>>0>b>>>0){continue}break J}break}s=-1;if(q){break a}}$l(a,32,r,b,k);if(!b){b=0;break t}u=0;l=i[f+64>>2];while(1){m=i[l>>2];if(!m){break t}m=Sl(f+4|0,m);u=m+u|0;if((u|0)>(b|0)){break t}Vl(a,f+4|0,m);l=l+4|0;if(u>>>0<b>>>0){continue}break}}$l(a,32,r,b,k^8192);b=(r|0)>(b|0)?r:b;continue b}b=M[0](a,n[f+64>>3],r,p,k,b)|0;continue b}g[f+55|0]=i[f+64>>2];p=1;m=z;k=l;break e}l=b+1|0;i[f+76>>2]=l;k=j[b+1|0];b=l;continue}}s=t;if(a){break a}if(!x){break d}b=1;while(1){a=i[(b<<2)+e>>2];if(a){Xl((b<<3)+d|0,a,c);s=1;b=b+1|0;if((b|0)!=10){continue}break a}break}s=1;if(b>>>0>=10){break a}while(1){if(i[(b<<2)+e>>2]){break f}b=b+1|0;if((b|0)!=10){continue}break}break a}s=-1;break a}q=q-m|0;p=(p|0)<(q|0)?q:p;l=p+s|0;b=(r|0)<(l|0)?l:r;$l(a,32,b,l,k);Vl(a,v,s);$l(a,48,b,l,k^65536);$l(a,48,p,q,0);Vl(a,m,q);$l(a,32,b,l,k^8192);continue}break}s=0}J=f+80|0;return s}function fm(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=J-16|0;J=e;i[e+12>>2]=a;a:{if(a>>>0<=211){a=i[gm(15520,15712,e+12|0)>>2];break a}if(a>>>0>=4294967292){im();x()}f=(a>>>0)/210|0;d=o(f,210);i[e+8>>2]=a-d;g=gm(15712,15904,e+8|0)-15712>>2;b:{while(1){a=i[(g<<2)+15712>>2]+d|0;d=5;b=h;c:{d:{while(1){h=b;if((d|0)==47){d=211;while(1){b=(a>>>0)/(d>>>0)|0;if(b>>>0<d>>>0){break c}if((o(b,d)|0)==(a|0)){break d}b=d+10|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+12|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+16|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+18|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+22|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+28|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+30|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+36|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+40|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+42|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+46|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+52|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+58|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+60|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+66|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+70|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+72|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+78|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+82|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+88|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+96|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+100|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+102|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+106|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+108|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+112|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+120|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+126|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+130|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+136|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+138|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+142|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+148|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+150|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+156|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+162|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+166|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+168|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+172|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+178|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+180|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+186|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+190|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+192|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+196|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+198|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}if((o(b,c)|0)==(a|0)){break d}b=d+208|0;c=(a>>>0)/(b>>>0)|0;if(c>>>0<b>>>0){break c}d=d+210|0;if((o(b,c)|0)!=(a|0)){continue}break}break d}b=i[(d<<2)+15520>>2];c=(a>>>0)/(b>>>0)|0;j=o(b,c);c=c>>>0<b>>>0;if(!c){b=c?a:h;d=d+1|0;if((a|0)!=(j|0)){continue}}break}if((a|0)!=(j|0)|c){break b}}b=g+1|0;a=(b|0)==48;g=a?0:b;f=a+f|0;d=o(f,210);continue}break}i[e+12>>2]=a;break a}i[e+12>>2]=a;a=c?a:h}J=e+16|0;return a}function Jl(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;f=J-32|0;J=f;d=i[a+12>>2];i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}g=d<<2;e=Dm(g);i[f+8>>2]=e;j=e+g|0;i[f+16>>2]=j;qn(e,0,g);i[f+12>>2]=j}g=i[a+628>>2];h=i[g>>2];if(h){i[g+4>>2]=h;nn(h);i[g+8>>2]=0;i[g>>2]=0;i[g+4>>2]=0;j=i[f+12>>2];e=i[f+8>>2];d=i[a+12>>2]}i[g+4>>2]=j;i[g>>2]=e;i[g+8>>2]=i[f+16>>2];e=0;i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;h=0;b:{if(d){if(d>>>0>=1073741824){break b}d=d<<2;h=Dm(d);i[f+8>>2]=h;e=d+h|0;i[f+16>>2]=e;qn(h,0,d);i[f+12>>2]=e}d=i[a+640>>2];j=i[d>>2];if(j){i[d+4>>2]=j;nn(j);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;h=i[f+8>>2];e=i[f+12>>2]}i[d+4>>2]=e;i[d>>2]=h;i[d+8>>2]=i[f+16>>2];e=f+24|0;i[e>>2]=0;i[e+4>>2]=0;j=f+16|0;i[j>>2]=0;i[j+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;Nb(f+8|0);g=i[j>>2];j=i[f+12>>2];d=0;c:{if((g|0)==(j|0)){break c}d=i[e>>2]+i[f+28>>2]|0;e=(d>>>0)/341|0;d=i[j+(e<<2)>>2]+o(d-o(e,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;e=i[f+28>>2];d=e+1|0;i[f+28>>2]=d;d:{if(d>>>0<e>>>0){break d}w=a+604|0;while(1){h=i[f+12>>2];g=d+ -1|0;d=g+i[f+24>>2]|0;e=(d>>>0)/341|0;e=i[h+(e<<2)>>2]+o(d-o(e,341)|0,12)|0;m=i[e+8>>2];p=i[e+4>>2];j=i[e>>2];i[f+28>>2]=g;e=i[f+16>>2];g=e-h|0;if((g?o(g>>2,341)+ -1|0:0)-d>>>0>=682){nn(i[e+ -4>>2]);i[f+16>>2]=i[f+16>>2]+ -4}if(j>>>0>b>>>0){break d}d=i[a+628>>2];k=o(m,12);q=k+i[a+640>>2]|0;h=vl(a,q,p);if(h>>>0>=l[a+12>>2]){break d}g=d+k|0;e:{f:{p=h<<2;d=i[a>>2]-i[p+i[q>>2]>>2]|0;if(!d){d=0;if(!j){break f}while(1){Ml(c,g);i[a+8>>2]=i[a+8>>2]+1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break f}g:{h:{i:{j:{if(j>>>0<=2){m=i[a+616>>2];i[m>>2]=h;e=1;d=i[a+12>>2];if(d>>>0>1){break j}break g}if(l[a+8>>2]>l[a+4>>2]){break d}e=1<<d+ -1;d=i[a+628>>2];s=m+1|0;q=o(s,12);n=d+q|0;if((n|0)!=(g|0)){ua(n,i[g>>2],i[g+4>>2]);d=i[a+628>>2]}d=p+i[d+q>>2]|0;i[d>>2]=e+i[d>>2];e=0;d=0;g=r(j)^31;if(g){while(1){e=Ce(((d<<4)+a|0)+16|0)|e<<1;d=d+1|0;if((g|0)!=(d|0)){continue}break}}e=(j>>>1|0)-e|0;d=j-e|0;k:{if((d|0)==(e|0)){d=e;break k}j=i[a+596>>2];if((j|0)==i[a+588>>2]){break i}g=i[j>>2];n=i[a+600>>2];u=n+1|0;i[a+600>>2]=u;g=g&-2147483648>>>n;l:{if((u|0)==32){i[a+600>>2]=0;i[a+596>>2]=j+4;if(g){break l}break i}if(!g){break i}}}j=d;d=e;break h}while(1){h=(d+ -1|0)==(h|0)?0:h+1|0;i[m+(e<<2)>>2]=h;e=e+1|0;d=i[a+12>>2];if(e>>>0<d>>>0){continue}break}break g}j=e}e=i[a+640>>2];g=e+k|0;k=i[g>>2];p=k+p|0;i[p>>2]=i[p>>2]+1;ua(e+q|0,k,i[g+4>>2]);if(d){k=i[f+28>>2]+i[f+24>>2]|0;q=i[f+16>>2];e=i[f+12>>2];g=q-e|0;if((k|0)==((g?o(g>>2,341)+ -1|0:0)|0)){Nb(f+8|0);k=i[f+24>>2]+i[f+28>>2]|0;q=i[f+16>>2];e=i[f+12>>2]}g=0;m:{if((e|0)==(q|0)){break m}g=e;e=(k>>>0)/341|0;g=i[g+(e<<2)>>2]+o(k-o(e,341)|0,12)|0}i[g+8>>2]=m;i[g+4>>2]=h;i[g>>2]=d;i[f+28>>2]=i[f+28>>2]+1}if(!j){break f}e=i[f+28>>2]+i[f+24>>2]|0;g=i[f+16>>2];d=i[f+12>>2];m=g-d|0;if((e|0)==((m?o(m>>2,341)+ -1|0:0)|0)){Nb(f+8|0);g=i[f+16>>2];e=i[f+24>>2]+i[f+28>>2]|0;d=i[f+12>>2]}if((d|0)==(g|0)){d=0}else{g=d;d=(e>>>0)/341|0;d=i[g+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[d+8>>2]=s;i[d+4>>2]=h;i[d>>2]=j;d=i[f+28>>2]+1|0;i[f+28>>2]=d;break e}if(!j){break f}k=0;while(1){if(d){u=i[g>>2];y=i[q>>2];m=i[a+604>>2];z=i[a+616>>2];d=0;while(1){p=z+(d<<2)|0;i[m+(i[p>>2]<<2)>>2]=0;h=i[p>>2]<<2;e=i[a>>2]-i[h+y>>2]|0;n:{if(!e){break n}h=h+m|0;s=i[a+560>>2];t=32-s|0;if((e|0)<=(t|0)){n=i[a+556>>2];if((n|0)==i[a+548>>2]){i[h>>2]=0;break n}i[h>>2]=i[n>>2]<<s>>>32-e;e=e+i[a+560>>2]|0;i[a+560>>2]=e;if((e|0)!=32){break n}i[a+560>>2]=0;i[a+556>>2]=n+4;break n}n=i[a+556>>2];v=n+4|0;if((v|0)==i[a+548>>2]){i[h>>2]=0;break n}A=i[n>>2];i[a+556>>2]=v;t=e-t|0;i[a+560>>2]=t;i[h>>2]=i[n+4>>2]>>>32-t|A<<s>>>32-e}e=i[p>>2]<<2;h=e+m|0;i[h>>2]=i[h>>2]|i[e+u>>2];d=d+1|0;if(d>>>0<l[a+12>>2]){continue}break}}Ml(c,w);i[a+8>>2]=i[a+8>>2]+1;k=k+1|0;if((k|0)==(j|0)){break f}d=i[a+12>>2];continue}}d=i[f+28>>2]}if(d){continue}break}}b=i[f+24>>2];c=(b>>>0)/341|0;a=i[f+12>>2];h=i[f+16>>2];o:{if((a|0)==(h|0)){break o}j=(c<<2)+a|0;e=i[j>>2];d=e+o(b-o(c,341)|0,12)|0;b=b+i[f+28>>2]|0;c=(b>>>0)/341|0;b=i[(c<<2)+a>>2]+o(b-o(c,341)|0,12)|0;if((d|0)==(b|0)){break o}while(1){d=d+12|0;if((d-e|0)==4092){e=i[j+4>>2];j=j+4|0;d=e}if((b|0)!=(d|0)){continue}break}}i[f+28>>2]=0;d=h-a>>2;if(d>>>0>2){while(1){nn(i[a>>2]);a=i[f+12>>2]+4|0;i[f+12>>2]=a;h=i[f+16>>2];d=h-a>>2;if(d>>>0>2){continue}break}}e=170;p:{switch(d+ -1|0){case 1:e=341;case 0:i[f+24>>2]=e;break;default:break p}}q:{if((a|0)==(h|0)){break q}while(1){nn(i[a>>2]);a=a+4|0;if((h|0)!=(a|0)){continue}break}a=i[f+16>>2];b=i[f+12>>2];if((a|0)==(b|0)){break q}i[f+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[f+8>>2];if(a){nn(a)}J=f+32|0;return}Sm();x()}Sm();x()}function Kl(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;f=J-32|0;J=f;d=i[a+12>>2];i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}g=d<<2;e=Dm(g);i[f+8>>2]=e;j=e+g|0;i[f+16>>2]=j;qn(e,0,g);i[f+12>>2]=j}g=i[a+628>>2];h=i[g>>2];if(h){i[g+4>>2]=h;nn(h);i[g+8>>2]=0;i[g>>2]=0;i[g+4>>2]=0;j=i[f+12>>2];e=i[f+8>>2];d=i[a+12>>2]}i[g+4>>2]=j;i[g>>2]=e;i[g+8>>2]=i[f+16>>2];e=0;i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;h=0;b:{if(d){if(d>>>0>=1073741824){break b}d=d<<2;h=Dm(d);i[f+8>>2]=h;e=d+h|0;i[f+16>>2]=e;qn(h,0,d);i[f+12>>2]=e}d=i[a+640>>2];j=i[d>>2];if(j){i[d+4>>2]=j;nn(j);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;h=i[f+8>>2];e=i[f+12>>2]}i[d+4>>2]=e;i[d>>2]=h;i[d+8>>2]=i[f+16>>2];e=f+24|0;i[e>>2]=0;i[e+4>>2]=0;j=f+16|0;i[j>>2]=0;i[j+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;Nb(f+8|0);g=i[j>>2];j=i[f+12>>2];d=0;c:{if((g|0)==(j|0)){break c}d=i[e>>2]+i[f+28>>2]|0;e=(d>>>0)/341|0;d=i[j+(e<<2)>>2]+o(d-o(e,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;e=i[f+28>>2];d=e+1|0;i[f+28>>2]=d;d:{if(d>>>0<e>>>0){break d}v=a+604|0;while(1){k=i[f+12>>2];h=d+ -1|0;d=h+i[f+24>>2]|0;e=(d>>>0)/341|0;e=i[k+(e<<2)>>2]+o(d-o(e,341)|0,12)|0;p=i[e+8>>2];g=i[e+4>>2];j=i[e>>2];i[f+28>>2]=h;e=i[f+16>>2];h=e-k|0;if((h?o(h>>2,341)+ -1|0:0)-d>>>0>=682){nn(i[e+ -4>>2]);i[f+16>>2]=i[f+16>>2]+ -4}if(j>>>0>b>>>0){break d}d=i[a+12>>2];h=(g|0)==(d+ -1|0)?0:g+1|0;if(h>>>0>=d>>>0){break d}d=i[a+628>>2];k=o(p,12);g=d+k|0;e:{f:{m=h<<2;s=k+i[a+640>>2]|0;e=i[a>>2]-i[m+i[s>>2]>>2]|0;if(!e){d=0;if(!j){break f}while(1){Ml(c,g);i[a+8>>2]=i[a+8>>2]+1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break f}g:{h:{i:{j:{if(j>>>0<=2){k=i[a+616>>2];i[k>>2]=h;e=1;d=i[a+12>>2];if(d>>>0>1){break j}break g}if(l[a+8>>2]>l[a+4>>2]){break d}n=d;d=k+12|0;ua(n+d|0,i[g>>2],i[g+4>>2]);d=m+i[d+i[a+628>>2]>>2]|0;i[d>>2]=i[d>>2]+(1<<e+ -1);e=0;d=0;g=r(j)^31;if(g){while(1){e=Ce(((d<<4)+a|0)+16|0)|e<<1;d=d+1|0;if((g|0)!=(d|0)){continue}break}}q=p+1|0;e=(j>>>1|0)-e|0;d=j-e|0;k:{if((d|0)==(e|0)){d=e;break k}j=i[a+596>>2];if((j|0)==i[a+588>>2]){break i}g=i[j>>2];n=i[a+600>>2];s=n+1|0;i[a+600>>2]=s;g=g&-2147483648>>>n;l:{if((s|0)==32){i[a+600>>2]=0;i[a+596>>2]=j+4;if(g){break l}break i}if(!g){break i}}}j=d;d=e;break h}while(1){h=(d+ -1|0)==(h|0)?0:h+1|0;i[k+(e<<2)>>2]=h;e=e+1|0;d=i[a+12>>2];if(e>>>0<d>>>0){continue}break}break g}j=e}e=i[a+640>>2];g=e+k|0;k=i[g>>2];m=k+m|0;i[m>>2]=i[m>>2]+1;ua(e+o(q,12)|0,k,i[g+4>>2]);if(d){k=i[f+28>>2]+i[f+24>>2]|0;m=i[f+16>>2];e=i[f+12>>2];g=m-e|0;if((k|0)==((g?o(g>>2,341)+ -1|0:0)|0)){Nb(f+8|0);k=i[f+24>>2]+i[f+28>>2]|0;m=i[f+16>>2];e=i[f+12>>2]}g=0;m:{if((e|0)==(m|0)){break m}g=e;e=(k>>>0)/341|0;g=i[g+(e<<2)>>2]+o(k-o(e,341)|0,12)|0}i[g+8>>2]=p;i[g+4>>2]=h;i[g>>2]=d;i[f+28>>2]=i[f+28>>2]+1}if(!j){break f}e=i[f+28>>2]+i[f+24>>2]|0;k=i[f+16>>2];d=i[f+12>>2];g=k-d|0;if((e|0)==((g?o(g>>2,341)+ -1|0:0)|0)){Nb(f+8|0);k=i[f+16>>2];e=i[f+24>>2]+i[f+28>>2]|0;d=i[f+12>>2]}if((d|0)==(k|0)){d=0}else{g=d;d=(e>>>0)/341|0;d=i[g+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[d+8>>2]=q;i[d+4>>2]=h;i[d>>2]=j;d=i[f+28>>2]+1|0;i[f+28>>2]=d;break e}if(!j){break f}p=0;while(1){if(d){w=i[g>>2];y=i[s>>2];k=i[a+604>>2];z=i[a+616>>2];d=0;while(1){m=z+(d<<2)|0;i[k+(i[m>>2]<<2)>>2]=0;h=i[m>>2]<<2;e=i[a>>2]-i[h+y>>2]|0;n:{if(!e){break n}h=h+k|0;q=i[a+560>>2];t=32-q|0;if((e|0)<=(t|0)){n=i[a+556>>2];if((n|0)==i[a+548>>2]){i[h>>2]=0;break n}i[h>>2]=i[n>>2]<<q>>>32-e;e=e+i[a+560>>2]|0;i[a+560>>2]=e;if((e|0)!=32){break n}i[a+560>>2]=0;i[a+556>>2]=n+4;break n}n=i[a+556>>2];u=n+4|0;if((u|0)==i[a+548>>2]){i[h>>2]=0;break n}A=i[n>>2];i[a+556>>2]=u;t=e-t|0;i[a+560>>2]=t;i[h>>2]=i[n+4>>2]>>>32-t|A<<q>>>32-e}e=i[m>>2]<<2;h=e+k|0;i[h>>2]=i[h>>2]|i[e+w>>2];d=d+1|0;if(d>>>0<l[a+12>>2]){continue}break}}Ml(c,v);i[a+8>>2]=i[a+8>>2]+1;p=p+1|0;if((p|0)==(j|0)){break f}d=i[a+12>>2];continue}}d=i[f+28>>2]}if(d){continue}break}}b=i[f+24>>2];c=(b>>>0)/341|0;a=i[f+12>>2];h=i[f+16>>2];o:{if((a|0)==(h|0)){break o}j=(c<<2)+a|0;e=i[j>>2];d=e+o(b-o(c,341)|0,12)|0;b=b+i[f+28>>2]|0;c=(b>>>0)/341|0;b=i[(c<<2)+a>>2]+o(b-o(c,341)|0,12)|0;if((d|0)==(b|0)){break o}while(1){d=d+12|0;if((d-e|0)==4092){e=i[j+4>>2];j=j+4|0;d=e}if((b|0)!=(d|0)){continue}break}}i[f+28>>2]=0;d=h-a>>2;if(d>>>0>2){while(1){nn(i[a>>2]);a=i[f+12>>2]+4|0;i[f+12>>2]=a;h=i[f+16>>2];d=h-a>>2;if(d>>>0>2){continue}break}}e=170;p:{switch(d+ -1|0){case 1:e=341;case 0:i[f+24>>2]=e;break;default:break p}}q:{if((a|0)==(h|0)){break q}while(1){nn(i[a>>2]);a=a+4|0;if((h|0)!=(a|0)){continue}break}a=i[f+16>>2];b=i[f+12>>2];if((a|0)==(b|0)){break q}i[f+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[f+8>>2];if(a){nn(a)}J=f+32|0;return}Sm();x()}Sm();x()}function Ll(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;f=J-32|0;J=f;d=i[a+12>>2];i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}g=d<<2;e=Dm(g);i[f+8>>2]=e;j=e+g|0;i[f+16>>2]=j;qn(e,0,g);i[f+12>>2]=j}g=i[a+628>>2];h=i[g>>2];if(h){i[g+4>>2]=h;nn(h);i[g+8>>2]=0;i[g>>2]=0;i[g+4>>2]=0;j=i[f+12>>2];e=i[f+8>>2];d=i[a+12>>2]}i[g+4>>2]=j;i[g>>2]=e;i[g+8>>2]=i[f+16>>2];e=0;i[f+16>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;h=0;b:{if(d){if(d>>>0>=1073741824){break b}d=d<<2;h=Dm(d);i[f+8>>2]=h;e=d+h|0;i[f+16>>2]=e;qn(h,0,d);i[f+12>>2]=e}d=i[a+640>>2];j=i[d>>2];if(j){i[d+4>>2]=j;nn(j);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;h=i[f+8>>2];e=i[f+12>>2]}i[d+4>>2]=e;i[d>>2]=h;i[d+8>>2]=i[f+16>>2];e=f+24|0;i[e>>2]=0;i[e+4>>2]=0;j=f+16|0;i[j>>2]=0;i[j+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;Nb(f+8|0);g=i[j>>2];j=i[f+12>>2];d=0;c:{if((g|0)==(j|0)){break c}d=i[e>>2]+i[f+28>>2]|0;e=(d>>>0)/341|0;d=i[j+(e<<2)>>2]+o(d-o(e,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;e=i[f+28>>2];d=e+1|0;i[f+28>>2]=d;d:{if(d>>>0<e>>>0){break d}w=a+604|0;while(1){h=i[f+12>>2];g=d+ -1|0;d=g+i[f+24>>2]|0;e=(d>>>0)/341|0;e=i[h+(e<<2)>>2]+o(d-o(e,341)|0,12)|0;m=i[e+8>>2];j=i[e>>2];i[f+28>>2]=g;e=i[f+16>>2];g=e-h|0;if((g?o(g>>2,341)+ -1|0:0)-d>>>0>=682){nn(i[e+ -4>>2]);i[f+16>>2]=i[f+16>>2]+ -4}if(j>>>0>b>>>0){break d}d=i[a+628>>2];k=o(m,12);p=k+i[a+640>>2]|0;h=wl(a,j,p);if(h>>>0>=l[a+12>>2]){break d}g=d+k|0;e:{f:{q=h<<2;d=i[a>>2]-i[q+i[p>>2]>>2]|0;if(!d){d=0;if(!j){break f}while(1){Ml(c,g);i[a+8>>2]=i[a+8>>2]+1;d=d+1|0;if((j|0)!=(d|0)){continue}break}break f}g:{h:{i:{j:{if(j>>>0<=2){m=i[a+616>>2];i[m>>2]=h;e=1;d=i[a+12>>2];if(d>>>0>1){break j}break g}if(l[a+8>>2]>l[a+4>>2]){break d}e=1<<d+ -1;d=i[a+628>>2];s=m+1|0;p=o(s,12);n=d+p|0;if((n|0)!=(g|0)){ua(n,i[g>>2],i[g+4>>2]);d=i[a+628>>2]}d=q+i[d+p>>2]|0;i[d>>2]=e+i[d>>2];e=0;d=0;g=r(j)^31;if(g){while(1){e=Ce(((d<<4)+a|0)+16|0)|e<<1;d=d+1|0;if((g|0)!=(d|0)){continue}break}}e=(j>>>1|0)-e|0;d=j-e|0;k:{if((d|0)==(e|0)){d=e;break k}j=i[a+596>>2];if((j|0)==i[a+588>>2]){break i}g=i[j>>2];n=i[a+600>>2];u=n+1|0;i[a+600>>2]=u;g=g&-2147483648>>>n;l:{if((u|0)==32){i[a+600>>2]=0;i[a+596>>2]=j+4;if(g){break l}break i}if(!g){break i}}}j=d;d=e;break h}while(1){h=(d+ -1|0)==(h|0)?0:h+1|0;i[m+(e<<2)>>2]=h;e=e+1|0;d=i[a+12>>2];if(e>>>0<d>>>0){continue}break}break g}j=e}e=i[a+640>>2];g=e+k|0;k=i[g>>2];q=k+q|0;i[q>>2]=i[q>>2]+1;ua(e+p|0,k,i[g+4>>2]);if(d){k=i[f+28>>2]+i[f+24>>2]|0;p=i[f+16>>2];e=i[f+12>>2];g=p-e|0;if((k|0)==((g?o(g>>2,341)+ -1|0:0)|0)){Nb(f+8|0);k=i[f+24>>2]+i[f+28>>2]|0;p=i[f+16>>2];e=i[f+12>>2]}g=0;m:{if((e|0)==(p|0)){break m}g=e;e=(k>>>0)/341|0;g=i[g+(e<<2)>>2]+o(k-o(e,341)|0,12)|0}i[g+8>>2]=m;i[g+4>>2]=h;i[g>>2]=d;i[f+28>>2]=i[f+28>>2]+1}if(!j){break f}e=i[f+28>>2]+i[f+24>>2]|0;g=i[f+16>>2];d=i[f+12>>2];m=g-d|0;if((e|0)==((m?o(m>>2,341)+ -1|0:0)|0)){Nb(f+8|0);g=i[f+16>>2];e=i[f+24>>2]+i[f+28>>2]|0;d=i[f+12>>2]}if((d|0)==(g|0)){d=0}else{g=d;d=(e>>>0)/341|0;d=i[g+(d<<2)>>2]+o(e-o(d,341)|0,12)|0}i[d+8>>2]=s;i[d+4>>2]=h;i[d>>2]=j;d=i[f+28>>2]+1|0;i[f+28>>2]=d;break e}if(!j){break f}k=0;while(1){if(d){u=i[g>>2];y=i[p>>2];m=i[a+604>>2];z=i[a+616>>2];d=0;while(1){q=z+(d<<2)|0;i[m+(i[q>>2]<<2)>>2]=0;h=i[q>>2]<<2;e=i[a>>2]-i[h+y>>2]|0;n:{if(!e){break n}h=h+m|0;s=i[a+560>>2];t=32-s|0;if((e|0)<=(t|0)){n=i[a+556>>2];if((n|0)==i[a+548>>2]){i[h>>2]=0;break n}i[h>>2]=i[n>>2]<<s>>>32-e;e=e+i[a+560>>2]|0;i[a+560>>2]=e;if((e|0)!=32){break n}i[a+560>>2]=0;i[a+556>>2]=n+4;break n}n=i[a+556>>2];v=n+4|0;if((v|0)==i[a+548>>2]){i[h>>2]=0;break n}A=i[n>>2];i[a+556>>2]=v;t=e-t|0;i[a+560>>2]=t;i[h>>2]=i[n+4>>2]>>>32-t|A<<s>>>32-e}e=i[q>>2]<<2;h=e+m|0;i[h>>2]=i[h>>2]|i[e+u>>2];d=d+1|0;if(d>>>0<l[a+12>>2]){continue}break}}Ml(c,w);i[a+8>>2]=i[a+8>>2]+1;k=k+1|0;if((k|0)==(j|0)){break f}d=i[a+12>>2];continue}}d=i[f+28>>2]}if(d){continue}break}}b=i[f+24>>2];c=(b>>>0)/341|0;a=i[f+12>>2];h=i[f+16>>2];o:{if((a|0)==(h|0)){break o}j=(c<<2)+a|0;e=i[j>>2];d=e+o(b-o(c,341)|0,12)|0;b=b+i[f+28>>2]|0;c=(b>>>0)/341|0;b=i[(c<<2)+a>>2]+o(b-o(c,341)|0,12)|0;if((d|0)==(b|0)){break o}while(1){d=d+12|0;if((d-e|0)==4092){e=i[j+4>>2];j=j+4|0;d=e}if((b|0)!=(d|0)){continue}break}}i[f+28>>2]=0;d=h-a>>2;if(d>>>0>2){while(1){nn(i[a>>2]);a=i[f+12>>2]+4|0;i[f+12>>2]=a;h=i[f+16>>2];d=h-a>>2;if(d>>>0>2){continue}break}}e=170;p:{switch(d+ -1|0){case 1:e=341;case 0:i[f+24>>2]=e;break;default:break p}}q:{if((a|0)==(h|0)){break q}while(1){nn(i[a>>2]);a=a+4|0;if((h|0)!=(a|0)){continue}break}a=i[f+16>>2];b=i[f+12>>2];if((a|0)==(b|0)){break q}i[f+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[f+8>>2];if(a){nn(a)}J=f+32|0;return}Sm();x()}Sm();x()}function li(a,b,c,d){var e=0,f=0,h=0,o=0,r=0,s=p(0),t=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:h=1;e:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break e}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){g[d+f|0]=j[b|0];f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break e}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 1:f:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break f}h=i[a>>2];e=i[h+4>>2];h=i[h>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=h+b|0;if(e>>>0<=b>>>0){break b}while(1){h=0;e=g[b|0];if((e|0)<0){break c}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break f}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break c}if((e|0)>=(c|0)){return 1}break a;case 2:h=1;g:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break g}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=k[b>>1];if((e+128&65535)>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break g}b=b+2|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 3:h=1;h:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break h}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=k[b>>1];if(e>>>0>127){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break h}b=b+2|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 4:h=1;i:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break i}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b>>2];if(e+128>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break i}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 5:h=1;j:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break j}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b>>2];if(e>>>0>127){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break j}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 6:h=1;k:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break k}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b+4>>2];o=i[b>>2];r=o+128|0;if(r>>>0<128){e=e+1|0}if(!e&r>>>0>255|e>>>0>0){break b}g[d+f|0]=o;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break k}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 7:h=1;l:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break l}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b+4>>2];o=i[b>>2];if(!e&o>>>0>127|e>>>0>0){break b}g[d+f|0]=o;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break l}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 8:h=1;m:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break m}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){o=d+f|0;s=m[b>>2];n:{if(p(q(s))<p(2147483648)){e=~~s;break n}e=-2147483648}g[o|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break m}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 9:h=1;o:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break o}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){o=d+f|0;t=n[b>>3];p:{if(q(t)<2147483648){e=~~t;break p}e=-2147483648}g[o|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break o}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}h=1;q:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break q}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){g[d+f|0]=j[b|0];f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break q}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}qn(d+e|0,0,c-e|0)}return h}return 0}qn(d+e|0,0,c-e|0);return 1}function Hl(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0;e=J-32|0;J=e;d=i[a+12>>2];i[e+16>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}h=d<<2;f=Dm(h);i[e+8>>2]=f;j=f+h|0;i[e+16>>2]=j;qn(f,0,h);i[e+12>>2]=j}h=i[a+116>>2];g=i[h>>2];if(g){i[h+4>>2]=g;nn(g);i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;j=i[e+12>>2];f=i[e+8>>2];d=i[a+12>>2]}i[h+4>>2]=j;i[h>>2]=f;i[h+8>>2]=i[e+16>>2];f=0;i[e+16>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;g=0;b:{if(d){if(d>>>0>=1073741824){break b}d=d<<2;g=Dm(d);i[e+8>>2]=g;f=d+g|0;i[e+16>>2]=f;qn(g,0,d);i[e+12>>2]=f}d=i[a+128>>2];h=i[d>>2];if(h){i[d+4>>2]=h;nn(h);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;g=i[e+8>>2];f=i[e+12>>2]}i[d+4>>2]=f;i[d>>2]=g;i[d+8>>2]=i[e+16>>2];f=e+24|0;i[f>>2]=0;i[f+4>>2]=0;h=e+16|0;i[h>>2]=0;i[h+4>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;Nb(e+8|0);k=i[h>>2];h=i[e+12>>2];d=0;c:{if((k|0)==(h|0)){break c}d=i[f>>2]+i[e+28>>2]|0;f=(d>>>0)/341|0;d=i[h+(f<<2)>>2]+o(d-o(f,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;f=i[e+28>>2];d=f+1|0;i[e+28>>2]=d;d:{if(d>>>0<f>>>0){break d}w=a+92|0;y=a+16|0;while(1){j=i[e+12>>2];g=d+ -1|0;d=g+i[e+24>>2]|0;f=(d>>>0)/341|0;f=i[j+(f<<2)>>2]+o(d-o(f,341)|0,12)|0;m=i[f+8>>2];p=i[f+4>>2];h=i[f>>2];i[e+28>>2]=g;f=i[e+16>>2];g=f-j|0;if((g?o(g>>2,341)+ -1|0:0)-d>>>0>=682){nn(i[f+ -4>>2]);i[e+16>>2]=i[e+16>>2]+ -4}if(h>>>0>b>>>0){break d}d=i[a+116>>2];k=o(m,12);q=k+i[a+128>>2]|0;g=vl(a,q,p);if(g>>>0>=l[a+12>>2]){break d}j=d+k|0;e:{p=g<<2;d=i[a>>2]-i[p+i[q>>2]>>2]|0;if(!d){d=0;if(!h){break e}while(1){Ml(c,j);i[a+8>>2]=i[a+8>>2]+1;d=d+1|0;if((h|0)!=(d|0)){continue}break}break e}f:{g:{h:{i:{if(h>>>0<=2){m=i[a+104>>2];i[m>>2]=g;f=1;d=i[a+12>>2];if(d>>>0>1){break i}break f}if(l[a+8>>2]>l[a+4>>2]){break d}f=1<<d+ -1;d=i[a+116>>2];s=m+1|0;q=o(s,12);n=d+q|0;if((n|0)!=(j|0)){ua(n,i[j>>2],i[j+4>>2]);d=i[a+116>>2]}d=p+i[d+q>>2]|0;i[d>>2]=f+i[d>>2];i[e+4>>2]=0;De(y,r(h)^31,e+4|0);d=(h>>>1|0)-i[e+4>>2]|0;f=h-d|0;j:{if((f|0)==(d|0)){f=d;break j}h=i[a+84>>2];if((h|0)==i[a+76>>2]){break h}j=i[h>>2];n=i[a+88>>2];u=n+1|0;i[a+88>>2]=u;j=j&-2147483648>>>n;k:{if((u|0)==32){i[a+88>>2]=0;i[a+84>>2]=h+4;if(j){break k}break h}if(!j){break h}}}h=f;f=d;break g}while(1){g=(d+ -1|0)==(g|0)?0:g+1|0;i[m+(f<<2)>>2]=g;f=f+1|0;d=i[a+12>>2];if(f>>>0<d>>>0){continue}break}break f}h=d}d=i[a+128>>2];j=d+k|0;k=i[j>>2];p=k+p|0;i[p>>2]=i[p>>2]+1;ua(d+q|0,k,i[j+4>>2]);if(f){j=i[e+28>>2]+i[e+24>>2]|0;k=i[e+16>>2];d=i[e+12>>2];q=k-d|0;if((j|0)==((q?o(q>>2,341)+ -1|0:0)|0)){Nb(e+8|0);j=i[e+24>>2]+i[e+28>>2]|0;k=i[e+16>>2];d=i[e+12>>2]}if((d|0)==(k|0)){d=0}else{k=d;d=(j>>>0)/341|0;d=i[k+(d<<2)>>2]+o(j-o(d,341)|0,12)|0}i[d+8>>2]=m;i[d+4>>2]=g;i[d>>2]=f;i[e+28>>2]=i[e+28>>2]+1}if(!h){break e}f=i[e+28>>2]+i[e+24>>2]|0;j=i[e+16>>2];d=i[e+12>>2];m=j-d|0;if((f|0)==((m?o(m>>2,341)+ -1|0:0)|0)){Nb(e+8|0);j=i[e+16>>2];f=i[e+24>>2]+i[e+28>>2]|0;d=i[e+12>>2]}if((d|0)==(j|0)){d=0}else{k=d;d=(f>>>0)/341|0;d=i[k+(d<<2)>>2]+o(f-o(d,341)|0,12)|0}i[d+8>>2]=s;i[d+4>>2]=g;i[d>>2]=h;i[e+28>>2]=i[e+28>>2]+1;break e}if(!h){break e}k=0;while(1){if(d){u=i[j>>2];z=i[q>>2];m=i[a+92>>2];A=i[a+104>>2];d=0;while(1){p=A+(d<<2)|0;i[m+(i[p>>2]<<2)>>2]=0;g=i[p>>2]<<2;f=i[a>>2]-i[g+z>>2]|0;l:{if(!f){break l}g=g+m|0;s=i[a+48>>2];t=32-s|0;if((f|0)<=(t|0)){n=i[a+44>>2];if((n|0)==i[a+36>>2]){i[g>>2]=0;break l}i[g>>2]=i[n>>2]<<s>>>32-f;f=f+i[a+48>>2]|0;i[a+48>>2]=f;if((f|0)!=32){break l}i[a+48>>2]=0;i[a+44>>2]=n+4;break l}n=i[a+44>>2];v=n+4|0;if((v|0)==i[a+36>>2]){i[g>>2]=0;break l}B=i[n>>2];i[a+44>>2]=v;t=f-t|0;i[a+48>>2]=t;i[g>>2]=i[n+4>>2]>>>32-t|B<<s>>>32-f}f=i[p>>2]<<2;g=f+m|0;i[g>>2]=i[g>>2]|i[f+u>>2];d=d+1|0;if(d>>>0<l[a+12>>2]){continue}break}}Ml(c,w);i[a+8>>2]=i[a+8>>2]+1;k=k+1|0;if((k|0)==(h|0)){break e}d=i[a+12>>2];continue}}d=i[e+28>>2];if(d){continue}break}}b=i[e+24>>2];c=(b>>>0)/341|0;a=i[e+12>>2];g=i[e+16>>2];m:{if((a|0)==(g|0)){break m}j=(c<<2)+a|0;f=i[j>>2];d=f+o(b-o(c,341)|0,12)|0;b=b+i[e+28>>2]|0;c=(b>>>0)/341|0;b=i[(c<<2)+a>>2]+o(b-o(c,341)|0,12)|0;if((d|0)==(b|0)){break m}while(1){d=d+12|0;if((d-f|0)==4092){f=i[j+4>>2];j=j+4|0;d=f}if((b|0)!=(d|0)){continue}break}}i[e+28>>2]=0;d=g-a>>2;if(d>>>0>2){while(1){nn(i[a>>2]);a=i[e+12>>2]+4|0;i[e+12>>2]=a;g=i[e+16>>2];d=g-a>>2;if(d>>>0>2){continue}break}}f=170;n:{switch(d+ -1|0){case 1:f=341;case 0:i[e+24>>2]=f;break;default:break n}}o:{if((a|0)==(g|0)){break o}while(1){nn(i[a>>2]);a=a+4|0;if((g|0)!=(a|0)){continue}break}a=i[e+16>>2];b=i[e+12>>2];if((a|0)==(b|0)){break o}i[e+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[e+8>>2];if(a){nn(a)}J=e+32|0;return}Sm();x()}Sm();x()}function Il(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,p=0,q=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0;e=J-32|0;J=e;d=i[a+12>>2];i[e+16>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;a:{if(d){if(d>>>0>=1073741824){break a}f=d<<2;g=Dm(f);i[e+8>>2]=g;k=g+f|0;i[e+16>>2]=k;qn(g,0,f);i[e+12>>2]=k}f=i[a+116>>2];h=i[f>>2];if(h){i[f+4>>2]=h;nn(h);i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;k=i[e+12>>2];g=i[e+8>>2];d=i[a+12>>2]}i[f+4>>2]=k;i[f>>2]=g;i[f+8>>2]=i[e+16>>2];g=0;i[e+16>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;b:{if(d){if(d>>>0>=1073741824){break b}d=d<<2;j=Dm(d);i[e+8>>2]=j;g=d+j|0;i[e+16>>2]=g;qn(j,0,d);i[e+12>>2]=g}d=i[a+128>>2];f=i[d>>2];if(f){i[d+4>>2]=f;nn(f);i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;j=i[e+8>>2];g=i[e+12>>2]}i[d+4>>2]=g;i[d>>2]=j;i[d+8>>2]=i[e+16>>2];f=e+24|0;i[f>>2]=0;i[f+4>>2]=0;h=e+16|0;i[h>>2]=0;i[h+4>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;Nb(e+8|0);g=i[h>>2];h=i[e+12>>2];d=0;c:{if((g|0)==(h|0)){break c}d=i[f>>2]+i[e+28>>2]|0;f=(d>>>0)/341|0;d=i[h+(f<<2)>>2]+o(d-o(f,341)|0,12)|0}i[d+4>>2]=0;i[d+8>>2]=0;i[d>>2]=b;f=i[e+28>>2];d=f+1|0;i[e+28>>2]=d;d:{if(d>>>0<f>>>0){break d}v=a+92|0;w=a+16|0;while(1){j=i[e+12>>2];g=d+ -1|0;d=g+i[e+24>>2]|0;f=(d>>>0)/341|0;f=i[j+(f<<2)>>2]+o(d-o(f,341)|0,12)|0;p=i[f+8>>2];h=i[f+4>>2];f=i[f>>2];i[e+28>>2]=g;g=i[e+16>>2];j=g-j|0;if((j?o(j>>2,341)+ -1|0:0)-d>>>0>=682){nn(i[g+ -4>>2]);i[e+16>>2]=i[e+16>>2]+ -4}if(f>>>0>b>>>0){break d}d=i[a+12>>2];j=(h|0)==(d+ -1|0)?0:h+1|0;if(j>>>0>=d>>>0){break d}d=i[a+116>>2];g=o(p,12);k=d+g|0;e:{n=j<<2;s=g+i[a+128>>2]|0;h=i[a>>2]-i[n+i[s>>2]>>2]|0;if(!h){d=0;if(!f){break e}while(1){Ml(c,k);i[a+8>>2]=i[a+8>>2]+1;d=d+1|0;if((f|0)!=(d|0)){continue}break}break e}f:{g:{h:{i:{if(f>>>0<=2){h=i[a+104>>2];i[h>>2]=j;g=1;d=i[a+12>>2];if(d>>>0>1){break i}break f}if(l[a+8>>2]>l[a+4>>2]){break d}m=d;d=g+12|0;ua(m+d|0,i[k>>2],i[k+4>>2]);d=n+i[d+i[a+116>>2]>>2]|0;i[d>>2]=i[d>>2]+(1<<h+ -1);i[e+4>>2]=0;De(w,r(f)^31,e+4|0);q=p+1|0;d=(f>>>1|0)-i[e+4>>2]|0;f=f-d|0;j:{if((f|0)==(d|0)){f=d;break j}h=i[a+84>>2];if((h|0)==i[a+76>>2]){break h}k=i[h>>2];m=i[a+88>>2];s=m+1|0;i[a+88>>2]=s;k=k&-2147483648>>>m;k:{if((s|0)==32){i[a+88>>2]=0;i[a+84>>2]=h+4;if(k){break k}break h}if(!k){break h}}}h=f;f=d;break g}while(1){j=(d+ -1|0)==(j|0)?0:j+1|0;i[h+(g<<2)>>2]=j;g=g+1|0;d=i[a+12>>2];if(g>>>0<d>>>0){continue}break}break f}h=d}d=i[a+128>>2];g=d+g|0;k=i[g>>2];n=k+n|0;i[n>>2]=i[n>>2]+1;ua(d+o(q,12)|0,k,i[g+4>>2]);if(f){g=i[e+28>>2]+i[e+24>>2]|0;k=i[e+16>>2];d=i[e+12>>2];n=k-d|0;if((g|0)==((n?o(n>>2,341)+ -1|0:0)|0)){Nb(e+8|0);g=i[e+24>>2]+i[e+28>>2]|0;k=i[e+16>>2];d=i[e+12>>2]}if((d|0)==(k|0)){d=0}else{m=d;d=(g>>>0)/341|0;d=i[m+(d<<2)>>2]+o(g-o(d,341)|0,12)|0}i[d+8>>2]=p;i[d+4>>2]=j;i[d>>2]=f;i[e+28>>2]=i[e+28>>2]+1}if(!h){break e}g=i[e+28>>2]+i[e+24>>2]|0;k=i[e+16>>2];d=i[e+12>>2];f=k-d|0;if((g|0)==((f?o(f>>2,341)+ -1|0:0)|0)){Nb(e+8|0);g=i[e+24>>2]+i[e+28>>2]|0;k=i[e+16>>2];d=i[e+12>>2]}f=0;l:{if((d|0)==(k|0)){break l}f=d;d=(g>>>0)/341|0;f=i[f+(d<<2)>>2]+o(g-o(d,341)|0,12)|0}i[f+8>>2]=q;i[f+4>>2]=j;i[f>>2]=h;i[e+28>>2]=i[e+28>>2]+1;break e}if(!f){break e}p=0;while(1){if(d){y=i[k>>2];z=i[s>>2];j=i[a+92>>2];A=i[a+104>>2];d=0;while(1){n=A+(d<<2)|0;i[j+(i[n>>2]<<2)>>2]=0;g=i[n>>2]<<2;h=i[a>>2]-i[g+z>>2]|0;m:{if(!h){break m}g=g+j|0;q=i[a+48>>2];t=32-q|0;if((h|0)<=(t|0)){m=i[a+44>>2];if((m|0)==i[a+36>>2]){i[g>>2]=0;break m}i[g>>2]=i[m>>2]<<q>>>32-h;h=h+i[a+48>>2]|0;i[a+48>>2]=h;if((h|0)!=32){break m}i[a+48>>2]=0;i[a+44>>2]=m+4;break m}m=i[a+44>>2];u=m+4|0;if((u|0)==i[a+36>>2]){i[g>>2]=0;break m}B=i[m>>2];i[a+44>>2]=u;t=h-t|0;i[a+48>>2]=t;i[g>>2]=i[m+4>>2]>>>32-t|B<<q>>>32-h}h=i[n>>2]<<2;g=h+j|0;i[g>>2]=i[g>>2]|i[h+y>>2];d=d+1|0;if(d>>>0<l[a+12>>2]){continue}break}}Ml(c,v);i[a+8>>2]=i[a+8>>2]+1;p=p+1|0;if((p|0)==(f|0)){break e}d=i[a+12>>2];continue}}d=i[e+28>>2];if(d){continue}break}}b=i[e+24>>2];c=(b>>>0)/341|0;a=i[e+12>>2];j=i[e+16>>2];n:{if((a|0)==(j|0)){break n}k=(c<<2)+a|0;g=i[k>>2];d=g+o(b-o(c,341)|0,12)|0;b=b+i[e+28>>2]|0;c=(b>>>0)/341|0;b=i[(c<<2)+a>>2]+o(b-o(c,341)|0,12)|0;if((d|0)==(b|0)){break n}while(1){d=d+12|0;if((d-g|0)==4092){g=i[k+4>>2];k=k+4|0;d=g}if((b|0)!=(d|0)){continue}break}}i[e+28>>2]=0;d=j-a>>2;if(d>>>0>2){while(1){nn(i[a>>2]);a=i[e+12>>2]+4|0;i[e+12>>2]=a;j=i[e+16>>2];d=j-a>>2;if(d>>>0>2){continue}break}}g=170;o:{switch(d+ -1|0){case 1:g=341;case 0:i[e+24>>2]=g;break;default:break o}}p:{if((a|0)==(j|0)){break p}while(1){nn(i[a>>2]);a=a+4|0;if((j|0)!=(a|0)){continue}break}a=i[e+16>>2];b=i[e+12>>2];if((a|0)==(b|0)){break p}i[e+16>>2]=a+(((a-b|0)+ -4>>>2^-1)<<2)}a=i[e+8>>2];if(a){nn(a)}J=e+32|0;return}Sm();x()}Sm();x()}function ni(a,b,c,d){var e=0,f=0,h=0,o=0,q=p(0),r=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:e:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break e}h=i[a>>2];e=i[h+4>>2];h=i[h>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=h+b|0;if(e>>>0<=b>>>0){break b}while(1){h=0;e=g[b|0];if((e|0)<0){break c}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break e}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break c}if((e|0)>=(c|0)){return 1}break a;case 1:h=1;f:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break f}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){g[d+f|0]=j[b|0];f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break f}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 2:h=1;g:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break g}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=k[b>>1];if(e>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break g}b=b+2|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 3:h=1;h:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break h}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=k[b>>1];if(e>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break h}b=b+2|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 4:h=1;i:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break i}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b>>2];if(e>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break i}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 5:h=1;j:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break j}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b>>2];if(e>>>0>255){break b}g[d+f|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break j}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 6:h=1;k:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break k}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b+4>>2];o=i[b>>2];if(!e&o>>>0>255|e>>>0>0){break b}g[d+f|0]=o;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break k}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 7:h=1;l:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break l}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){e=i[b+4>>2];o=i[b>>2];if(!e&o>>>0>255|e>>>0>0){break b}g[d+f|0]=o;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break l}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 8:h=1;m:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break m}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){o=d+f|0;q=m[b>>2];n:{if(q<p(4294967296)&q>=p(0)){e=~~q>>>0;break n}e=0}g[o|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break m}b=b+4|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 9:h=1;o:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break o}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){o=d+f|0;r=n[b>>3];p:{if(r<4294967296&r>=0){e=~~r>>>0;break p}e=0}g[o|0]=e;f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break o}b=b+8|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}h=1;q:{e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24<1){break q}f=i[a>>2];e=i[f+4>>2];f=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=f+b|0;if(e>>>0<=b>>>0){break b}f=0;while(1){g[d+f|0]=j[b|0];f=f+1|0;e=g[a+24|0];if((f|0)>=((e|0)>(c|0)?c:e)<<24>>24){break q}b=b+1|0;if(l[i[a>>2]+4>>2]>b>>>0){continue}break}break b}if((e|0)>=(c|0)){break c}qn(d+e|0,0,c-e|0)}return h}return 0}qn(d+e|0,0,c-e|0);return 1}function gd(a,b,c,d){var e=0,f=0,l=0,o=0,r=p(0),t=0,w=0,x=0;a:{b:{if(!d){break b}c:{switch(i[a+28>>2]+ -1|0){case 0:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;l=g[b|0];i[e>>2]=l;i[e+4>>2]=l>>31;b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 1:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;i[e>>2]=j[b|0];i[e+4>>2]=0;b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 2:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;l=h[b>>1];i[e>>2]=l;i[e+4>>2]=l>>31;b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 3:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;i[e>>2]=k[b>>1];i[e+4>>2]=0;b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 4:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;l=i[b>>2];i[e>>2]=l;i[e+4>>2]=l>>31;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 5:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;i[e>>2]=i[b>>2];i[e+4>>2]=0;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 6:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}l=i[b+4>>2];e=(f<<3)+d|0;i[e>>2]=i[b>>2];i[e+4>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 7:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=i[b+4>>2];l=e;w=i[b>>2];if((e|0)<0?1:(e|0)<=0?w>>>0<0:0){return}e=(f<<3)+d|0;i[e>>2]=w;i[e+4>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 8:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;w=i[e+4>>2];f=0;while(1){if(w>>>0<=b>>>0){return}e=(f<<3)+d|0;o=e;r=m[b>>2];d:{if(p(q(r))<p(0x8000000000000000)){l=p(q(r))>=p(1)?r>p(0)?~~p(s(p(u(p(r*p(2.3283064365386963e-10)))),p(4294967296)))>>>0:~~p(v(p(p(r-p(~~r>>>0>>>0))*p(2.3283064365386963e-10))))>>>0:0;x=~~r>>>0;break d}l=-2147483648;x=0}i[o>>2]=x;i[e+4>>2]=l;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 9:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;w=i[e+4>>2];f=0;while(1){if(w>>>0<=b>>>0){return}e=(f<<3)+d|0;o=e;t=n[b>>3];e:{if(q(t)<0x8000000000000000){l=q(t)>=1?t>0?~~s(u(t*2.3283064365386963e-10),4294967295)>>>0:~~v((t- +(~~t>>>0>>>0))*2.3283064365386963e-10)>>>0:0;x=~~t>>>0;break e}l=-2147483648;x=0}i[o>>2]=x;i[e+4>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}break a;case 10:break c;default:break b}}e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){return}e=(f<<3)+d|0;i[e>>2]=j[b|0];i[e+4>>2]=0;b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break b}qn((e<<3)+d|0,0,c-e<<3)}return}qn((e<<3)+d|0,0,c-e<<3)}function Zf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0;e=J-48|0;J=e;f=i[i[a+4>>2]+44>>2];c=i[a+8>>2];g=i[c>>2];c=i[c+4>>2];i[e+40>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;d=(c-g>>2>>>0)/3|0;c=i[f+96>>2];g=(i[f+100>>2]-c|0)/12|0;a:{if(d>>>0>g>>>0){bg(f+96|0,d-g|0,e+32|0);break a}if(d>>>0>=g>>>0){break a}i[f+100>>2]=c+o(d,12)}b:{if(i[a+216>>2]==i[a+220>>2]){l=i[a+4>>2];k=i[l+44>>2];h=i[k+100>>2];if((h|0)!=i[k+96>>2]){j=e+40|0;c=0;while(1){g=-1;p=0;d=-1;c:{d:{e:{f=o(c,3);if((f|0)==-1){break e}n=-1;d=i[i[i[a+8>>2]>>2]+(f<<2)>>2];p=f+1|0;if((p|0)!=-1){break e}f=0;break d}n=i[i[i[a+8>>2]>>2]+(p<<2)>>2];f=f+2|0;if((f|0)==-1){break c}}g=i[i[i[a+8>>2]>>2]+(f<<2)>>2]}f=c+1|0;p=i[k+96>>2];m=(h-p|0)/12|0;if(m>>>0<=c>>>0){i[j>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;h=k+96|0;bg(h,f-m|0,e+32|0);l=i[a+4>>2];p=i[h>>2]}c=p+o(c,12)|0;i[c+8>>2]=g;i[c+4>>2]=n;i[c>>2]=d;c=f;k=i[l+44>>2];h=i[k+100>>2];if(c>>>0<(h-i[k+96>>2]|0)/12>>>0){continue}break}}i[i[l+4>>2]+80>>2]=b;c=1;break b}i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;l=i[a+8>>2];c=i[l>>2];b=i[l+4>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;f:{g:{h:{i:{j:{k:{l:{g=b-c|0;if(g){b=g>>2;if(b>>>0>=1073741824){break l}c=Dm(g);i[e>>2]=c;b=c+(b<<2)|0;i[e+8>>2]=b;qn(c,0,g);i[e+4>>2]=b}c=i[l+24>>2];if((i[l+28>>2]-c|0)<1){break g}while(1){g=i[(q<<2)+c>>2];m:{if((g|0)==-1){break m}n:{if(i[i[a+120>>2]+(q>>>3&536870908)>>2]>>>q&1){break n}b=i[a+220>>2];n=i[a+216>>2];if((b|0)==(n|0)){break n}m=(b-n|0)/144|0;j=((g>>>0)%3|0?-1:2)+g|0;p=0;while(1){d=g<<2;f=n+o(p,144)|0;b=i[d+i[i[f+68>>2]>>2]>>2];o:{if(!(i[i[f+16>>2]+(b>>>3&536870908)>>2]>>>b&1)){break o}b=g;k=b;c=-1;p:{if((j|0)==-1){break p}h=i[i[l+12>>2]+(j<<2)>>2];c=-1;if((h|0)==-1){break p}c=h+ -1|0;if((h>>>0)%3|0){break p}c=h+2|0}if((k|0)==(c|0)){break o}h=i[f+32>>2];f=i[h+d>>2];while(1){d=0;if((c|0)==-1){break f}if((f|0)!=i[h+(c<<2)>>2]){g=c;break n}k=b;c=((c>>>0)%3|0?-1:2)+c|0;d=-1;q:{if((c|0)==-1){break q}c=i[i[l+12>>2]+(c<<2)>>2];d=-1;if((c|0)==-1){break q}d=c+ -1|0;if((c>>>0)%3|0){break q}d=c+2|0}c=d;if((k|0)!=(c|0)){continue}break}}p=p+1|0;if(p>>>0<m>>>0){continue}break}}b=i[e+20>>2];j=i[e+16>>2];m=b-j|0;h=m>>2;i[i[e>>2]+(g<<2)>>2]=h;c=i[e+24>>2];r:{if(b>>>0<c>>>0){i[b>>2]=g;i[e+20>>2]=b+4;break r}f=h+1|0;if(f>>>0>=1073741824){break k}d=c-j|0;c=d>>1;d=d>>2>>>0<536870911?c>>>0<f>>>0?f:c:1073741823;b=0;s:{if(!d){break s}if(d>>>0>=1073741824){break j}b=Dm(d<<2)}c=b+(h<<2)|0;i[c>>2]=g;d=b+(d<<2)|0;c=c+4|0;if((m|0)>=1){pn(b,j,m)}i[e+24>>2]=d;i[e+20>>2]=c;i[e+16>>2]=b;if(!j){break r}nn(j);l=i[a+8>>2]}if((g|0)==-1){break m}b=((g>>>0)%3|0?-1:2)+g|0;if((b|0)==-1){break m}b=i[i[l+12>>2]+(b<<2)>>2];if((b|0)==-1){break m}c=b+((b>>>0)%3|0?-1:2)|0;if((c|0)==-1){break m}d=g;if((c|0)==(d|0)){break m}while(1){b=c;t:{u:{c=i[a+220>>2];j=i[a+216>>2];if((c|0)==(j|0)){break u}m=(c-j|0)/144|0;c=0;while(1){h=i[(j+o(c,144)|0)+32>>2];f=b<<2;if(i[h+f>>2]==i[h+(d<<2)>>2]){c=c+1|0;if(c>>>0<m>>>0){continue}break u}break}c=i[e+20>>2];n=i[e+16>>2];j=c-n|0;m=j>>2;i[f+i[e>>2]>>2]=m;d=i[e+24>>2];if(c>>>0<d>>>0){i[c>>2]=b;i[e+20>>2]=c+4;break t}h=m+1|0;if(h>>>0>=1073741824){break i}f=d-n|0;d=f>>1;f=f>>2>>>0<536870911?d>>>0<h>>>0?h:d:1073741823;c=0;v:{if(!f){break v}if(f>>>0>=1073741824){break h}c=Dm(f<<2)}d=c+(m<<2)|0;i[d>>2]=b;f=c+(f<<2)|0;d=d+4|0;if((j|0)>=1){pn(c,n,j)}i[e+24>>2]=f;i[e+20>>2]=d;i[e+16>>2]=c;if(!n){break t}nn(n);l=i[a+8>>2];break t}c=i[e>>2];i[c+(b<<2)>>2]=i[c+(d<<2)>>2]}if((b|0)==-1){break m}c=b+((b>>>0)%3|0?-1:2)|0;if((c|0)==-1){break m}c=i[i[l+12>>2]+(c<<2)>>2];if((c|0)==-1){break m}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1){break m}d=b;if((c|0)!=(g|0)){continue}break}}q=q+1|0;c=i[l+24>>2];if((q|0)<i[l+28>>2]-c>>2){continue}break}break g}Sm();x()}Sm();x()}Ba(12220);x()}Sm();x()}Ba(12220);x()}q=i[a+4>>2];k=i[q+44>>2];d=i[k+100>>2];if((d|0)!=i[k+96>>2]){n=e+40|0;c=0;while(1){g=c+1|0;j=o(c,12);b=j+i[e>>2]|0;m=i[b+8>>2];h=i[b+4>>2];f=i[b>>2];b=i[k+96>>2];d=(d-b|0)/12|0;if(d>>>0<=c>>>0){i[n>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;b=k+96|0;bg(b,g-d|0,e+32|0);q=i[a+4>>2];b=i[b>>2]}b=b+j|0;i[b+8>>2]=m;i[b+4>>2]=h;i[b>>2]=f;c=g;k=i[q+44>>2];d=i[k+100>>2];if(c>>>0<(d-i[k+96>>2]|0)/12>>>0){continue}break}}i[i[q+4>>2]+80>>2]=i[e+20>>2]-i[e+16>>2]>>2;d=1}c=d;a=i[e>>2];if(a){i[e+4>>2]=a;nn(a)}a=i[e+16>>2];if(!a){break b}i[e+20>>2]=a;nn(a)}J=e+48|0;return c}function $g(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;e=J-32|0;J=e;g=i[a+32>>2];c=k[a+36>>1];a:{b:{if((c<<24|c<<8&16711680)>>>16>>>0<=513){b=i[g+12>>2];f=b;c=i[g+20>>2];d=c;h=i[g+16>>2];n=h+4|0;if(n>>>0<4){c=c+1|0}m=i[g+8>>2];q=n;n=c;if((b|0)<(c|0)?1:(b|0)<=(c|0)?m>>>0<q>>>0:0){break a}t=i[g>>2];c=t+h|0;r=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[g+16>>2]=q;i[g+20>>2]=n;c=f;b=d;f=h+8|0;if(f>>>0<8){b=b+1|0}d=f;f=b;if((c|0)<(b|0)?1:(c|0)<=(b|0)?m>>>0<d>>>0:0){break a}c=q+t|0;t=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[e+24>>2]=t;i[g+16>>2]=d;i[g+20>>2]=f;break b}if(!ah(1,e+28|0,g)){break a}if(!ah(1,e+24|0,i[a+32>>2])){break a}r=i[e+28>>2];t=i[e+24>>2]}if(r>>>0>1431655765){break a}f=i[a+32>>2];c=f;h=i[c+8>>2];b=h;g=i[c+16>>2];n=b-g|0;d=i[c+12>>2];m=b>>>0<g>>>0;b=i[c+20>>2];q=Hn(n,d-(m+b|0)|0,3,0);n=L;if((d|0)<(b|0)?1:(d|0)<=(b|0)?h>>>0<=g>>>0:0){break a}c=r;d=Gn(c,0,3,0);h=L;if(!h&d>>>0<t>>>0|h>>>0<0|(!n&q>>>0<c>>>0|n>>>0<0)){break a}n=j[g+i[f>>2]|0];c=b;h=g+1|0;if(h>>>0<1){c=c+1|0}d=f;i[d+16>>2]=h;i[d+20>>2]=c;c:{if(!n){if(!bh(a,r)){break a}break c}d:{if(t>>>0<=255){if(!r){break c}q=0;p=e+16|0;i[p>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;o=i[f+8>>2];d=i[f+12>>2];b=d;if((b|0)<(c|0)?1:(b|0)<=(c|0)?o>>>0<=h>>>0:0){break d}while(1){g=i[f>>2];s=j[g+h|0];b=c;m=h+1|0;if(m>>>0<1){b=b+1|0}n=f;i[f+16>>2]=m;i[f+20>>2]=b;i[e+8>>2]=s;if((d|0)<(b|0)?1:(d|0)<=(b|0)?o>>>0<=m>>>0:0){break d}s=j[g+m|0];b=c;m=h+2|0;if(m>>>0<2){b=b+1|0}i[f+16>>2]=m;i[n+20>>2]=b;i[e+12>>2]=s;if((d|0)<(b|0)?1:(d|0)<=(b|0)?o>>>0<=m>>>0:0){break d}b=j[g+m|0];d=h+3|0;if(d>>>0<3){c=c+1|0}i[f+16>>2]=d;i[f+20>>2]=c;i[e+16>>2]=b;ch(i[a+44>>2]+96|0,e+8|0);q=q+1|0;if((q|0)==(r|0)){break c}f=i[a+32>>2];b=f;h=i[b+16>>2];c=i[b+20>>2];i[p>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;o=i[b+8>>2];d=i[b+12>>2];b=d;if((b|0)>(c|0)?1:(b|0)>=(c|0)?o>>>0>h>>>0:0){continue}break}break d}if(t>>>0<=65535){if(!r){break c}q=0;u=e+16|0;i[u>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;n=i[f+12>>2];p=n;d=g+3|0;if(d>>>0<3){b=b+1|0}m=i[f+8>>2];o=d;d=b;if((p|0)<(b|0)?1:(p|0)<=(b|0)?m>>>0<o>>>0:0){break d}while(1){p=i[f>>2];b=p+h|0;b=j[b|0]|j[b+1|0]<<8;i[f+16>>2]=o;i[f+20>>2]=d;i[e+8>>2]=b;d=n;b=c;g=h+4|0;if(g>>>0<4){b=b+1|0}s=g;g=b;if((d|0)<(b|0)?1:(d|0)<=(b|0)?m>>>0<s>>>0:0){break d}b=o+p|0;b=j[b|0]|j[b+1|0]<<8;i[f+16>>2]=s;i[f+20>>2]=g;i[e+12>>2]=b;b=c;c=h+6|0;if(c>>>0<6){b=b+1|0}d=c;c=b;if((n|0)<(b|0)?1:(n|0)<=(b|0)?m>>>0<d>>>0:0){break d}b=p+s|0;b=j[b|0]|j[b+1|0]<<8;i[f+16>>2]=d;i[f+20>>2]=c;i[e+16>>2]=b;ch(i[a+44>>2]+96|0,e+8|0);q=q+1|0;if((q|0)==(r|0)){break c}f=i[a+32>>2];b=f;h=i[b+16>>2];c=i[b+20>>2];i[u>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;g=i[b+12>>2];n=g;m=i[b+8>>2];p=m;b=c;d=h+2|0;if(d>>>0<2){b=b+1|0}o=d;d=b;if((g|0)>(b|0)?1:(g|0)>=(b|0)?p>>>0>=o>>>0:0){continue}break}break d}e:{if(l[i[a+44>>2]+80>>2]>2097151){break e}d=k[a+36>>1];if((d<<24|d<<8&16711680)>>>16>>>0<514){break e}if(!r){break c}c=e+16|0;i[c>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;if(!ah(1,e+4|0,f)){break d}while(1){i[e+8>>2]=i[e+4>>2];if(!ah(1,e+4|0,i[a+32>>2])){break d}i[e+12>>2]=i[e+4>>2];if(!ah(1,e+4|0,i[a+32>>2])){break d}i[e+16>>2]=i[e+4>>2];ch(i[a+44>>2]+96|0,e+8|0);o=o+1|0;if((r|0)==(o|0)){break c}b=i[a+32>>2];i[c>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;if(ah(1,e+4|0,b)){continue}break}break d}if(!r){break c}q=0;u=e+16|0;i[u>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;n=i[f+12>>2];p=n;d=g+5|0;if(d>>>0<5){b=b+1|0}m=i[f+8>>2];o=d;d=b;if((p|0)<(b|0)?1:(p|0)<=(b|0)?m>>>0<o>>>0:0){break d}while(1){p=i[f>>2];b=p+h|0;b=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[f+16>>2]=o;i[f+20>>2]=d;i[e+8>>2]=b;d=n;b=c;g=h+8|0;if(g>>>0<8){b=b+1|0}s=g;g=b;if((d|0)<(b|0)?1:(d|0)<=(b|0)?m>>>0<s>>>0:0){break d}b=o+p|0;b=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[f+16>>2]=s;i[f+20>>2]=g;i[e+12>>2]=b;b=h+12|0;if(b>>>0<12){c=c+1|0}d=b;b=c;if((n|0)<(b|0)?1:(n|0)<=(b|0)?m>>>0<d>>>0:0){break d}c=p+s|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[f+16>>2]=d;i[f+20>>2]=b;i[e+16>>2]=c;ch(i[a+44>>2]+96|0,e+8|0);q=q+1|0;if((q|0)==(r|0)){break c}f=i[a+32>>2];b=f;h=i[b+16>>2];c=i[b+20>>2];i[u>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;g=i[b+12>>2];n=g;m=i[b+8>>2];p=m;b=c;d=h+4|0;if(d>>>0<4){b=b+1|0}o=d;d=b;if((g|0)>(b|0)?1:(g|0)>=(b|0)?p>>>0>=o>>>0:0){continue}break}}o=0;break a}i[i[a+4>>2]+80>>2]=t;o=1}J=e+32|0;return o|0}function $c(a,b,c,d){var e=0,f=0,o=p(0),q=0,r=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(g[b|0]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o/p(127)}b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 1:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(j[b|0]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o/p(255)}b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 2:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(h[b>>1]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o/p(32767)}b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 3:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(k[b>>1]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o/p(65535)}b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 4:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(i[b>>2]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o*p(4.656612873077393e-10)}b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 5:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(l[b>>2]);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o*p(2.3283064365386963e-10)}b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 6:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(+l[b>>2]+ +i[b+4>>2]*4294967296);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o*p(1.0842021724855044e-19)}b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 7:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}e=(f<<2)+d|0;o=p(+l[b>>2]+ +l[b+4>>2]*4294967296);m[e>>2]=o;if(j[a+32|0]){m[e>>2]=o*p(5.421010862427522e-20)}b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 8:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}m[(f<<2)+d>>2]=m[b>>2];b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 9:r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){f=i[a>>2];e=i[f>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;q=i[f+4>>2];f=0;while(1){if(q>>>0<=b>>>0){break b}m[(f<<2)+d>>2]=n[b>>3];b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}r=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){q=i[a>>2];e=i[q>>2];b=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=e+b|0;while(1){if(l[q+4>>2]<=b>>>0){break b}m[(f<<2)+d>>2]=j[b|0]?p(1):p(0);b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}qn((e<<2)+d|0,0,c-e<<2)}return r}return 0}qn((e<<2)+d|0,0,c-e<<2);return 1}function qi(a,b,c,d){var e=0,f=0,l=0,o=0,r=0,s=0,t=p(0),u=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=g[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 1:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 2:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=k[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 3:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];o=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+o|0;l=i[e+4>>2];while(1){if(l>>>0<=b>>>0){break b}o=0;e=h[b>>1];if((e|0)<0){break c}h[(f<<1)+d>>1]=e;b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}o=1;if((e|0)>=(c|0)){break c}break a;case 4:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b>>2];if(e+32768>>>0>65535){break b}h[(f<<1)+d>>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 5:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b>>2];if(e>>>0>32767){break b}h[(f<<1)+d>>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 6:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b+4>>2];r=i[b>>2];s=r+32768|0;if(s>>>0<32768){e=e+1|0}if(!e&s>>>0>65535|e>>>0>0){break b}h[(f<<1)+d>>1]=r;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 7:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b+4>>2];r=i[b>>2];if(!e&r>>>0>32767|e>>>0>0){break b}h[(f<<1)+d>>1]=r;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 8:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}r=(f<<1)+d|0;t=m[b>>2];e:{if(p(q(t))<p(2147483648)){e=~~t;break e}e=-2147483648}h[r>>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 9:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}r=(f<<1)+d|0;u=n[b>>3];f:{if(q(u)<2147483648){e=~~u;break f}e=-2147483648}h[r>>1]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}qn((e<<1)+d|0,0,c-e<<1)}return o}return 0}qn((e<<1)+d|0,0,c-e<<1);return 1}function si(a,b,c,d){var e=0,f=0,l=0,o=0,q=0,r=p(0),s=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];o=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+o|0;l=i[e+4>>2];while(1){if(l>>>0<=b>>>0){break b}o=0;e=g[b|0];if((e|0)<0){break c}h[(f<<1)+d>>1]=e&255;b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}o=1;if((e|0)>=(c|0)){break c}break a;case 1:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 2:e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];o=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+o|0;l=i[e+4>>2];while(1){if(l>>>0<=b>>>0){break b}o=0;e=h[b>>1];if((e|0)<0){break c}h[(f<<1)+d>>1]=e;b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}o=1;if((e|0)>=(c|0)){break c}break a;case 3:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=k[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 4:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b>>2];if(e>>>0>65535){break b}h[(f<<1)+d>>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 5:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b>>2];if(e>>>0>65535){break b}h[(f<<1)+d>>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 6:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b+4>>2];q=i[b>>2];if(!e&q>>>0>65535|e>>>0>0){break b}h[(f<<1)+d>>1]=q;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 7:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}e=i[b+4>>2];q=i[b>>2];if(!e&q>>>0>65535|e>>>0>0){break b}h[(f<<1)+d>>1]=q;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 8:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}q=(f<<1)+d|0;r=m[b>>2];e:{if(r<p(4294967296)&r>=p(0)){e=~~r>>>0;break e}e=0}h[q>>1]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 9:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}q=(f<<1)+d|0;s=n[b>>3];f:{if(s<4294967296&s>=0){e=~~s>>>0;break f}e=0}h[q>>1]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;l=i[e+4>>2];f=0;while(1){if(l>>>0<=b>>>0){break b}h[(f<<1)+d>>1]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}qn((e<<1)+d|0,0,c-e<<1)}return o}return 0}qn((e<<1)+d|0,0,c-e<<1);return 1}function ui(a,b,c,d){var e=0,f=0,l=0,o=0,r=0,s=p(0),t=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=g[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 1:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 2:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=h[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 3:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=k[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 4:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=i[b>>2];b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 5:o=g[a+24|0];if(((o|0)>(c|0)?c:o)<<24>>24>=1){e=i[a>>2];l=i[e>>2];o=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+o|0;e=i[e+4>>2];while(1){if(e>>>0<=b>>>0){break b}o=0;r=i[b>>2];if((r|0)<0){break c}i[(f<<2)+d>>2]=r;b=b+4|0;f=f+1|0;o=g[a+24|0];if((f|0)<((o|0)>(c|0)?c:o)<<24>>24){continue}break}}if((o|0)>=(c|0)){return 1}qn((o<<2)+d|0,0,c-o<<2);return 1;case 6:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}e=i[b+4>>2];l=i[b>>2];if(l+ -2147483648>>>0<2147483648){e=e+1|0}if(e>>>0>0){break b}i[(f<<2)+d>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 7:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}e=i[b+4>>2];l=i[b>>2];if(!e&l>>>0>2147483647|e>>>0>0){break b}i[(f<<2)+d>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 8:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}e=(f<<2)+d|0;s=m[b>>2];e:{if(p(q(s))<p(2147483648)){l=~~s;break e}l=-2147483648}i[e>>2]=l;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 9:o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}e=(f<<2)+d|0;t=n[b>>3];f:{if(q(t)<2147483648){l=~~t;break f}l=-2147483648}i[e>>2]=l;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}o=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];l=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=l+f|0;r=i[e+4>>2];f=0;while(1){if(r>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}qn((e<<2)+d|0,0,c-e<<2)}return o}return 0}qn((e<<2)+d|0,0,c-e<<2);return 1}function fd(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;f=J-80|0;J=f;h=-1;e=-1;a:{if((b|0)==-1){break a}e=b+1|0;h=(e>>>0)%3|0?e:b+ -2|0;e=b+ -1|0;if((b>>>0)%3|0){break a}e=b+2|0}l=i[a+36>>2];b=i[l>>2];b:{c:{d:{e:{f:{l=i[l+4>>2]-b>>2;m=h<<2;h=i[i[a+32>>2]+28>>2];k=i[m+h>>2];if(l>>>0<=k>>>0){break f}e=i[h+(e<<2)>>2];if(l>>>0<=e>>>0){break f}g:{h:{u=i[b+(k<<2)>>2];w=(u|0)>=(d|0);if(w){break h}h=i[b+(e<<2)>>2];if((h|0)>=(d|0)){break h}b=h<<3;B=i[(b|4)+c>>2];e=u<<3;y=i[(e|4)+c>>2];C=i[b+c>>2];z=i[c+e>>2];if(!((C|0)!=(z|0)|(y|0)!=(B|0))){i[a+8>>2]=z;i[a+12>>2]=y;break g}b=i[i[a+4>>2]+(d<<2)>>2];i[f+72>>2]=0;i[f+76>>2]=0;e=f- -64|0;i[e>>2]=0;i[e+4>>2]=0;i[f+56>>2]=0;i[f+60>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gd(e,b,g[e+24|0],f+56|0);b=i[i[a+4>>2]+(u<<2)>>2];i[f+48>>2]=0;i[f+52>>2]=0;i[f+40>>2]=0;i[f+44>>2]=0;i[f+32>>2]=0;i[f+36>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gd(e,b,g[e+24|0],f+32|0);b=i[i[a+4>>2]+(h<<2)>>2];i[f+24>>2]=0;i[f+28>>2]=0;i[f+16>>2]=0;i[f+20>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gd(e,b,g[e+24|0],f+8|0);A=i[f+44>>2];e=i[f+16>>2];b=i[f+40>>2];q=i[f+20>>2]-(A+(e>>>0<b>>>0)|0)|0;h=e-b|0;e=Gn(h,q,h,q);p=L;m=e;E=i[f+36>>2];e=i[f+8>>2];r=i[f+32>>2];l=r;s=i[f+12>>2]-(E+(e>>>0<l>>>0)|0)|0;l=e-l|0;o=Gn(l,s,l,s);k=m+o|0;e=L+p|0;e=k>>>0<o>>>0?e+1|0:e;F=k;n=i[f+52>>2];k=i[f+24>>2];m=i[f+48>>2];o=m;p=i[f+28>>2]-(n+(k>>>0<o>>>0)|0)|0;k=k-o|0;v=Gn(k,p,k,p);o=F+v|0;e=L+e|0;t=o;o=o>>>0<v>>>0?e+1|0:e;if(!(t|o)){break h}c=i[f+64>>2];u=c-b|0;G=i[f+68>>2]-((c>>>0<b>>>0)+A|0)|0;b=Gn(u,G,h,q);c=L;e=b;b=i[f+56>>2];w=b-r|0;H=i[f+60>>2]-((b>>>0<r>>>0)+E|0)|0;d=Gn(w,H,l,s);b=e+d|0;e=L+c|0;e=b>>>0<d>>>0?e+1|0:e;d=b;b=i[f+72>>2];A=b-m|0;I=i[f+76>>2]-((b>>>0<m>>>0)+n|0)|0;c=Gn(A,I,k,p);b=d+c|0;e=L+e|0;D=b;F=b;r=b>>>0<c>>>0?e+1|0:e;K=r;e=p;b=e>>31;c=e>>31;e=b+e|0;m=c+k|0;if(m>>>0<c>>>0){e=e+1|0}c=c^m;b=b^e;M=b;m=c;E=b;d=q;b=d>>31;d=d>>31;n=b;b=q+b|0;e=d;v=e+h|0;if(v>>>0<e>>>0){b=b+1|0}d=d^v;b=b^n;N=b;v=b;e=s;b=e>>31;e=e>>31;P=m;Q=d;n=b+s|0;m=e+l|0;if(m>>>0<e>>>0){n=n+1|0}e=e^m;d=e>>>0<d>>>0;b=b^n;d=(b|0)<(N|0)?1:(b|0)<=(N|0)?d:0;e=d?Q:e;c=e>>>0<c>>>0;b=d?v:b;c=(b|0)<(M|0)?1:(b|0)<=(M|0)?c:0;c=F>>>0>In(-1,2147483647,c?P:e,c?E:b)>>>0;b=L;if((K|0)>(b|0)?1:(K|0)>=(b|0)?c:0){break b}d=1;b=0;c=Hn(Gn(h,q,D,r),L,t,o);e=G-(L+(u>>>0<c>>>0)|0)|0;c=u-c|0;c=Gn(c,e,c,e);h=L;m=c;c=Hn(Gn(l,s,D,r),L,t,o);e=H-(L+(w>>>0<c>>>0)|0)|0;c=w-c|0;e=Gn(c,e,c,e);c=m+e|0;n=L+h|0;n=c>>>0<e>>>0?n+1|0:n;l=c;c=Hn(Gn(D,r,k,p),L,t,o);e=I-(L+(A>>>0<c>>>0)|0)|0;c=A-c|0;h=Gn(c,e,c,e);c=l+h|0;e=L+n|0;h=Gn(c,c>>>0<h>>>0?e+1|0:e,t,o);c=L;l=c;if(!c&h>>>0<=1|c>>>0<0){break e}k=h;c=l;while(1){e=b<<1|d>>>31;d=d<<1;b=e;q=!c&k>>>0>7|c>>>0>0;k=(c&3)<<30|k>>>2;c=c>>>2|0;if(q){continue}break}break d}e=a;if(w){if((d|0)<=0){i[a+8>>2]=0;i[a+12>>2]=0;break g}b=(d<<1)+ -2|0}else{b=u<<1}b=(b<<2)+c|0;i[e+8>>2]=i[b>>2];i[a+12>>2]=i[b+4>>2]}O=1;break b}Tm();x()}b=l;d=h;if(d-1|0){break c}}while(1){c=In(h,l,d,b)+d|0;e=b+L|0;e=c>>>0<d>>>0?e+1|0:e;d=(e&1)<<31|c>>>1;b=e>>>1|0;c=Gn(d,b,d,b);e=L;if((l|0)==(e|0)&c>>>0>h>>>0|e>>>0>l>>>0){continue}break}}l=i[a+20>>2];if(l){k=l+ -1|0;q=i[i[a+16>>2]+(k>>>3&536870908)>>2];i[a+20>>2]=k;c=B;e=y;s=c-e|0;p=e>>31;y=(c>>31)-(p+(c>>>0<e>>>0)|0)|0;c=Gn(D,r,s,y);h=L;e=Gn(e,p,t,o);c=e+c|0;n=L+h|0;n=c>>>0<e>>>0?n+1|0:n;m=c;c=C;h=z;e=h;p=c-e|0;B=e>>31;z=(c>>31)-(B+(c>>>0<e>>>0)|0)|0;c=Gn(d,b,p,z);e=c;c=q>>>k&1;C=c?0-e|0:e;k=m+C|0;m=L;e=(c?0-(m+(0<e>>>0)|0)|0:m)+n|0;R=a,S=Hn(k,k>>>0<C>>>0?e+1|0:e,t,o),i[R+12>>2]=S;e=Gn(D,r,p,z);k=L;m=a;a=e;e=Gn(h,B,t,o);a=a+e|0;n=L+k|0;n=a>>>0<e>>>0?n+1|0:n;e=a;a=Gn(d,b,s,y);d=c?a:0-a|0;b=e+d|0;e=L;a=(c?e:0-((0<a>>>0)+e|0)|0)+n|0;R=m,S=Hn(b,b>>>0<d>>>0?a+1|0:a,t,o),i[R+8>>2]=S}O=(l|0)!=0}J=f+80|0;return O}function Ed(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;f=J-80|0;J=f;e=-1;h=-1;a:{if((b|0)==-1){break a}k=((b>>>0)%3|0?-1:2)+b|0;l=i[a+32>>2];p=b+1|0;b=(p>>>0)%3|0?p:b+ -2|0;if((b|0)!=-1){e=i[i[l>>2]+(b<<2)>>2]}if((k|0)==-1){break a}h=i[i[l>>2]+(k<<2)>>2]}k=i[a+36>>2];b=i[k>>2];b:{c:{d:{e:{k=i[k+4>>2]-b>>2;if(!(k>>>0<=e>>>0|k>>>0<=h>>>0)){f:{g:{u=i[b+(e<<2)>>2];w=(u|0)>=(d|0);if(w){break g}h=i[b+(h<<2)>>2];if((h|0)>=(d|0)){break g}b=h<<3;B=i[(b|4)+c>>2];e=u<<3;y=i[(e|4)+c>>2];C=i[b+c>>2];z=i[c+e>>2];if(!((C|0)!=(z|0)|(y|0)!=(B|0))){i[a+8>>2]=z;i[a+12>>2]=y;break f}b=i[i[a+4>>2]+(d<<2)>>2];i[f+72>>2]=0;i[f+76>>2]=0;e=f- -64|0;i[e>>2]=0;i[e+4>>2]=0;i[f+56>>2]=0;i[f+60>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gd(e,b,g[e+24|0],f+56|0);b=i[i[a+4>>2]+(u<<2)>>2];i[f+48>>2]=0;i[f+52>>2]=0;i[f+40>>2]=0;i[f+44>>2]=0;i[f+32>>2]=0;i[f+36>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gd(e,b,g[e+24|0],f+32|0);b=i[i[a+4>>2]+(h<<2)>>2];i[f+24>>2]=0;i[f+28>>2]=0;i[f+16>>2]=0;i[f+20>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;e=i[a>>2];if(!j[e+84|0]){b=i[i[e+68>>2]+(b<<2)>>2]}gd(e,b,g[e+24|0],f+8|0);A=i[f+44>>2];e=i[f+16>>2];b=i[f+40>>2];p=i[f+20>>2]-(A+(e>>>0<b>>>0)|0)|0;h=e-b|0;e=Gn(h,p,h,p);q=L;n=e;E=i[f+36>>2];e=i[f+8>>2];r=i[f+32>>2];k=r;s=i[f+12>>2]-(E+(e>>>0<k>>>0)|0)|0;k=e-k|0;o=Gn(k,s,k,s);l=n+o|0;e=L+q|0;e=l>>>0<o>>>0?e+1|0:e;F=l;m=i[f+52>>2];l=i[f+24>>2];n=i[f+48>>2];o=n;q=i[f+28>>2]-(m+(l>>>0<o>>>0)|0)|0;l=l-o|0;v=Gn(l,q,l,q);o=F+v|0;e=L+e|0;t=o;o=o>>>0<v>>>0?e+1|0:e;if(!(t|o)){break g}c=i[f+64>>2];u=c-b|0;G=i[f+68>>2]-((c>>>0<b>>>0)+A|0)|0;b=Gn(u,G,h,p);c=L;e=b;b=i[f+56>>2];w=b-r|0;H=i[f+60>>2]-((b>>>0<r>>>0)+E|0)|0;d=Gn(w,H,k,s);b=e+d|0;e=L+c|0;e=b>>>0<d>>>0?e+1|0:e;d=b;b=i[f+72>>2];A=b-n|0;I=i[f+76>>2]-((b>>>0<n>>>0)+m|0)|0;c=Gn(A,I,l,q);b=d+c|0;e=L+e|0;D=b;F=b;r=b>>>0<c>>>0?e+1|0:e;K=r;e=q;b=e>>31;c=e>>31;e=b+e|0;n=c+l|0;if(n>>>0<c>>>0){e=e+1|0}c=c^n;b=b^e;M=b;n=c;E=b;d=p;b=d>>31;d=d>>31;m=b;b=p+b|0;e=d;v=e+h|0;if(v>>>0<e>>>0){b=b+1|0}d=d^v;b=b^m;N=b;v=b;e=s;b=e>>31;e=e>>31;P=n;Q=d;m=b+s|0;n=e+k|0;if(n>>>0<e>>>0){m=m+1|0}e=e^n;d=e>>>0<d>>>0;b=b^m;d=(b|0)<(N|0)?1:(b|0)<=(N|0)?d:0;e=d?Q:e;c=e>>>0<c>>>0;b=d?v:b;c=(b|0)<(M|0)?1:(b|0)<=(M|0)?c:0;c=F>>>0>In(-1,2147483647,c?P:e,c?E:b)>>>0;b=L;if((K|0)>(b|0)?1:(K|0)>=(b|0)?c:0){break b}d=1;b=0;c=Hn(Gn(h,p,D,r),L,t,o);e=G-(L+(u>>>0<c>>>0)|0)|0;c=u-c|0;c=Gn(c,e,c,e);h=L;n=c;c=Hn(Gn(k,s,D,r),L,t,o);e=H-(L+(w>>>0<c>>>0)|0)|0;c=w-c|0;e=Gn(c,e,c,e);c=n+e|0;m=L+h|0;m=c>>>0<e>>>0?m+1|0:m;k=c;c=Hn(Gn(D,r,l,q),L,t,o);e=I-(L+(A>>>0<c>>>0)|0)|0;c=A-c|0;h=Gn(c,e,c,e);c=k+h|0;e=L+m|0;h=Gn(c,c>>>0<h>>>0?e+1|0:e,t,o);c=L;k=c;if(!c&h>>>0<=1|c>>>0<0){break e}l=h;c=k;while(1){e=b<<1|d>>>31;d=d<<1;b=e;p=!c&l>>>0>7|c>>>0>0;l=(c&3)<<30|l>>>2;c=c>>>2|0;if(p){continue}break}break d}e=a;if(w){if((d|0)<=0){i[a+8>>2]=0;i[a+12>>2]=0;break f}b=(d<<1)+ -2|0}else{b=u<<1}b=(b<<2)+c|0;i[e+8>>2]=i[b>>2];i[a+12>>2]=i[b+4>>2]}O=1;break b}Tm();x()}b=k;d=h;if(d-1|0){break c}}while(1){c=In(h,k,d,b)+d|0;e=b+L|0;e=c>>>0<d>>>0?e+1|0:e;d=(e&1)<<31|c>>>1;b=e>>>1|0;c=Gn(d,b,d,b);e=L;if((k|0)==(e|0)&c>>>0>h>>>0|e>>>0>k>>>0){continue}break}}k=i[a+20>>2];if(k){l=k+ -1|0;p=i[i[a+16>>2]+(l>>>3&536870908)>>2];i[a+20>>2]=l;c=B;e=y;s=c-e|0;q=e>>31;y=(c>>31)-(q+(c>>>0<e>>>0)|0)|0;c=Gn(D,r,s,y);h=L;e=Gn(e,q,t,o);c=e+c|0;m=L+h|0;m=c>>>0<e>>>0?m+1|0:m;n=c;c=C;h=z;e=h;q=c-e|0;B=e>>31;z=(c>>31)-(B+(c>>>0<e>>>0)|0)|0;c=Gn(d,b,q,z);e=c;c=p>>>l&1;C=c?0-e|0:e;l=n+C|0;n=L;e=(c?0-(n+(0<e>>>0)|0)|0:n)+m|0;R=a,S=Hn(l,l>>>0<C>>>0?e+1|0:e,t,o),i[R+12>>2]=S;e=Gn(D,r,q,z);l=L;n=a;a=e;e=Gn(h,B,t,o);a=a+e|0;m=L+l|0;m=a>>>0<e>>>0?m+1|0:m;e=a;a=Gn(d,b,s,y);d=c?a:0-a|0;b=e+d|0;e=L;a=(c?e:0-((0<a>>>0)+e|0)|0)+m|0;R=n,S=Hn(b,b>>>0<d>>>0?a+1|0:a,t,o),i[R+8>>2]=S}O=(k|0)!=0}J=f+80|0;return O}function wi(a,b,c,d){var e=0,f=0,o=0,q=0,r=0,s=p(0),t=0;a:{b:{c:{if(!d){break c}d:{switch(i[a+28>>2]+ -1|0){case 0:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=g[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 1:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 2:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=h[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 3:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=k[b>>1];b=b+2|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 4:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=i[b>>2];b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 5:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=i[b>>2];b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 6:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}e=i[b>>2];if(l[b+4>>2]>0){break b}i[(f<<2)+d>>2]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 7:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}e=i[b>>2];if(l[b+4>>2]>0){break b}i[(f<<2)+d>>2]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 8:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}r=(f<<2)+d|0;s=m[b>>2];e:{if(s<p(4294967296)&s>=p(0)){e=~~s>>>0;break e}e=0}i[r>>2]=e;b=b+4|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 9:q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}r=(f<<2)+d|0;t=n[b>>3];f:{if(t<4294967296&t>=0){e=~~t>>>0;break f}e=0}i[r>>2]=e;b=b+8|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}break a;case 10:break d;default:break c}}q=1;e=g[a+24|0];if(((e|0)>(c|0)?c:e)<<24>>24>=1){e=i[a>>2];o=i[e>>2];f=i[a+48>>2]+Gn(i[a+40>>2],i[a+44>>2],b,0)|0;b=o+f|0;o=i[e+4>>2];f=0;while(1){if(o>>>0<=b>>>0){break b}i[(f<<2)+d>>2]=j[b|0];b=b+1|0;f=f+1|0;e=g[a+24|0];if((f|0)<((e|0)>(c|0)?c:e)<<24>>24){continue}break}}if((e|0)>=(c|0)){break c}qn((e<<2)+d|0,0,c-e<<2)}return q}return 0}qn((e<<2)+d|0,0,c-e<<2);return 1}function kg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,p=0,q=0;n=J-16|0;J=n;a:{b:{c=i[a+144>>2];c=k[(M[i[i[c>>2]+32>>2]](c)|0)+36>>1];if((c<<24|c<<8&16711680)>>>16>>>0<=513){c=i[a+4>>2];i[a+40>>2]=i[a>>2];i[a+44>>2]=c;e=a+32|0;c=e;d=i[c+4>>2];i[a+72>>2]=i[c>>2];i[a+76>>2]=d;d=i[a+28>>2];c=a- -64|0;i[c>>2]=i[a+24>>2];i[c+4>>2]=d;c=i[a+20>>2];i[a+56>>2]=i[a+16>>2];i[a+60>>2]=c;c=i[a+12>>2];i[a+48>>2]=i[a+8>>2];i[a+52>>2]=c;c=a+40|0;if(!Ch(c,1,n+8|0)){break b}d=i[c+4>>2];i[a>>2]=i[c>>2];i[a+4>>2]=d;d=i[c+36>>2];i[e>>2]=i[c+32>>2];i[e+4>>2]=d;e=i[c+28>>2];i[a+24>>2]=i[c+24>>2];i[a+28>>2]=e;d=i[c+20>>2];g=d;e=i[c+16>>2];i[a+16>>2]=e;i[a+20>>2]=d;d=i[c+12>>2];f=d;c=i[c+8>>2];i[a+8>>2]=c;i[a+12>>2]=d;d=e;h=c-d|0;m=i[n+12>>2];c=f-((c>>>0<d>>>0)+g|0)|0;d=i[n+8>>2];if((m|0)==(c|0)&d>>>0>h>>>0|m>>>0>c>>>0){break b}c=g+m|0;e=d+e|0;if(e>>>0<d>>>0){c=c+1|0}i[a+16>>2]=e;i[a+20>>2]=c}c:{if(k[a+38>>1]<=513){c=i[a+4>>2];i[a+96>>2]=i[a>>2];i[a+100>>2]=c;e=a+32|0;c=e;d=i[c+4>>2];i[a+128>>2]=i[c>>2];i[a+132>>2]=d;d=a+24|0;c=d;f=i[c+4>>2];i[a+120>>2]=i[c>>2];i[a+124>>2]=f;f=a+16|0;c=f;g=i[c+4>>2];i[a+112>>2]=i[c>>2];i[a+116>>2]=g;g=a+8|0;c=g;h=i[c+4>>2];i[a+104>>2]=i[c>>2];i[a+108>>2]=h;c=a+96|0;if(!Ch(c,1,n+8|0)){break b}h=i[c+4>>2];i[a>>2]=i[c>>2];i[a+4>>2]=h;h=i[c+36>>2];i[e>>2]=i[c+32>>2];i[e+4>>2]=h;e=i[c+28>>2];i[d>>2]=i[c+24>>2];i[d+4>>2]=e;d=i[c+20>>2];h=d;e=i[c+16>>2];i[f>>2]=e;i[f+4>>2]=d;d=i[c+12>>2];f=d;c=i[c+8>>2];i[g>>2]=c;i[g+4>>2]=d;d=e;g=c-d|0;m=i[n+12>>2];d=f-((c>>>0<d>>>0)+h|0)|0;c=i[n+8>>2];if((m|0)==(d|0)&c>>>0>g>>>0|m>>>0>d>>>0){break b}f=h+m|0;e=c+e|0;if(e>>>0<c>>>0){f=f+1|0}i[a+16>>2]=e;i[a+20>>2]=f;break c}f=0;if(!Ae(a+80|0,a)){break a}}f=0;if(!_f(a)){break a}c=i[a+4>>2];i[b>>2]=i[a>>2];i[b+4>>2]=c;c=i[a+36>>2];i[b+32>>2]=i[a+32>>2];i[b+36>>2]=c;c=i[a+28>>2];i[b+24>>2]=i[a+24>>2];i[b+28>>2]=c;c=i[a+20>>2];i[b+16>>2]=i[a+16>>2];i[b+20>>2]=c;c=i[a+12>>2];i[b+8>>2]=i[a+8>>2];i[b+12>>2]=c;c=i[a+144>>2];c=k[(M[i[i[c>>2]+32>>2]](c)|0)+36>>1];d:{if((c<<24|c<<8&16711680)>>>16>>>0<=513){c=i[a+144>>2];e:{if(j[(M[i[i[c>>2]+32>>2]](c)|0)+36|0]<=1){d=i[b+12>>2];c=i[b+20>>2];g=i[b+16>>2];e=g+4|0;if(e>>>0<4){c=c+1|0}h=e;e=c;if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]<h>>>0:0){break a}c=g+i[b>>2]|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=h;i[b+20>>2]=e;break e}if(!Pf(1,n+8|0,b)){break a}c=i[n+8>>2]}d=c;c=i[a+152>>2];if(d>>>0>=c>>>0){break a}g=i[b+16>>2];d=i[b+12>>2];e=i[b+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[b+8>>2]<=g>>>0:0){break a}h=j[g+i[b>>2]|0];g=g+1|0;if(g>>>0<1){e=e+1|0}d=b;i[d+16>>2]=g;i[d+20>>2]=e;if(h){break a}i[a+176>>2]=2;i[a+180>>2]=7;break d}i[a+176>>2]=2;i[a+180>>2]=7;c=i[a+152>>2]}if((c|0)<0){break a}i[n+8>>2]=0;f=2;g=i[a+156>>2];d=i[a+160>>2]-g>>2;f:{if(c>>>0>d>>>0){Ta(a+156|0,c-d|0,n+8|0);f=i[a+176>>2];e=i[a+180>>2];break f}e=7;if(c>>>0>=d>>>0){break f}i[a+160>>2]=g+(c<<2)}g=a+184|0;e=(e-f|0)+1|0;c=i[a+188>>2];f=i[a+184>>2];d=(c-f|0)/12|0;g:{if(e>>>0>d>>>0){mg(g,e-d|0);e=i[a+188>>2];break g}if(e>>>0>=d>>>0){e=c;break g}e=f+o(e,12)|0;if((e|0)!=(c|0)){while(1){d=c+ -12|0;f=i[d>>2];if(f){i[c+ -8>>2]=f;nn(f)}c=d;if((e|0)!=(c|0)){continue}break}}i[a+188>>2]=e}h=a+196|0;f=i[a+184>>2];c=(e-f|0)/12|0;m=i[a+196>>2];d=i[a+200>>2]-m>>2;h:{if(c>>>0>d>>>0){Ra(h,c-d|0);f=i[a+184>>2];e=i[a+188>>2];break h}if(c>>>0>=d>>>0){break h}i[a+200>>2]=m+(c<<2)}if((e|0)==(f|0)){f=1;break a}c=0;while(1){if(!Pf(1,n+8|0,b)){break b}d=i[n+8>>2];e=i[a+148>>2];if(d>>>0>(i[e+4>>2]-i[e>>2]>>2>>>0)/3>>>0){break b}if(d){e=i[g>>2];q=o(c,12);f=e+q|0;m=i[f>>2];p=i[f+4>>2]-m>>2;i:{if(d>>>0>p>>>0){ye(f,d-p|0);e=i[g>>2];break i}if(d>>>0>=p>>>0){break i}i[f+4>>2]=(d<<2)+m}Qe(d,1,b,i[e+q>>2]);i[i[h>>2]+(c<<2)>>2]=d}f=1;c=c+1|0;if(c>>>0<(i[a+188>>2]-i[a+184>>2]|0)/12>>>0){continue}break}break a}f=0}J=n+16|0;return f}function Gg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0;a:{b:{c:{d:{e:{f:{g:{if(i[a+92>>2]==i[a+88>>2]){break g}d=i[a+52>>2];h:{if((d|0)!=i[a+56>>2]){i[d>>2]=b;i[a+52>>2]=d+4;break h}h=i[a+48>>2];g=d-h|0;f=g>>2;c=f+1|0;if(c>>>0>=1073741824){break a}e=g>>1;c=f>>>0<536870911?e>>>0<c>>>0?c:e:1073741823;d=0;i:{if(!c){break i}if(c>>>0>=1073741824){break b}d=Dm(c<<2)}e=d+(f<<2)|0;i[e>>2]=b;c=d+(c<<2)|0;e=e+4|0;if((g|0)>=1){pn(d,h,g)}i[a+56>>2]=c;i[a+52>>2]=e;i[a+48>>2]=d;if(!h){break h}nn(h)}i[a+84>>2]=0;e=-1;d=-1;j:{if((b|0)==-1){break j}f=i[a+4>>2];c=b+1|0;c=(c>>>0)%3|0?c:b+ -2|0;if((c|0)!=-1){e=i[i[f>>2]+(c<<2)>>2]}c=((b>>>0)%3|0?-1:2)+b|0;if((c|0)==-1){break j}d=i[i[f>>2]+(c<<2)>>2]}c=i[a+36>>2];h=c+(e>>>3&536870908)|0;g=i[h>>2];f=1<<e;if(!(g&f)){i[h>>2]=f|g;f=a+8|0;if((b|0)!=-1){c=b+1|0;c=(c>>>0)%3|0?c:b+ -2|0}else{c=-1}Hg(f,e,c);c=i[a+36>>2]}f=(d>>>3&536870908)+c|0;c=i[f>>2];e=1<<d;if(!(c&e)){i[f>>2]=c|e;c=a+8|0;e=-1;k:{if((b|0)==-1){break k}e=b+ -1|0;if((b>>>0)%3|0){break k}e=b+2|0}Hg(c,d,e)}e=-1;e=(b|0)!=-1?i[i[i[a+4>>2]>>2]+(b<<2)>>2]:e;f=i[a+36>>2]+(e>>>3&536870908)|0;c=i[f>>2];d=1<<e;if(!(c&d)){i[f>>2]=c|d;Hg(a+8|0,e,b)}c=i[a+84>>2];if((c|0)>2){break g}q=a+8|0;while(1){b=o(c,12)+a|0;e=b+52|0;d=i[e>>2];if((d|0)==i[b+48>>2]){c=c+1|0;if((c|0)!=3){continue}break g}d=d+ -4|0;b=i[d>>2];i[e>>2]=d;i[a+84>>2]=c;if((b|0)==-1){break g}e=i[a+24>>2];d=(b>>>0)/3|0;l:{if(i[e+(d>>>3&268435452)>>2]>>>d&1){break l}m:{while(1){g=(b>>>0)/3|0;d=(g>>>3&268435452)+e|0;i[d>>2]=i[d>>2]|1<<g;e=-1;e=(b|0)!=-1?i[i[i[a+4>>2]>>2]+(b<<2)>>2]:e;f=i[a+36>>2]+(e>>>3&536870908)|0;c=i[f>>2];d=1<<e;if(!(c&d)){i[f>>2]=c|d;Hg(q,e,b)}if((b|0)==-1){break m}h=i[a+4>>2];d=-1;e=-1;c=b+1|0;c=(c>>>0)%3|0?c:b+ -2|0;if((c|0)!=-1){e=i[i[h+12>>2]+(c<<2)>>2]}b=(b-o(g,3)|0?-1:2)+b|0;if((b|0)!=-1){d=i[i[h+12>>2]+(b<<2)>>2]}g=(d|0)==-1;f=(d>>>0)/3|0;c=(e>>>0)/3|0;n:{o:{p:{q:{b=(e|0)==-1;if(!b){b=b?-1:c;b=i[i[a+24>>2]+(b>>>3&536870908)>>2]&1<<b;if(g){break q}p=(b|0)!=0;break p}p=1;if(!g){break p}break m}if(!b){break o}break m}b=g?-1:f;r:{if(i[i[a+24>>2]+(b>>>3&536870908)>>2]>>>b&1){break r}b=0;c=i[i[h>>2]+(d<<2)>>2];if(!(i[i[a+36>>2]+(c>>>3&536870908)>>2]>>>c&1)){b=i[a+88>>2]+(c<<2)|0;c=i[b>>2];i[b>>2]=c+1;b=(c|0)<1?2:1}if(!(!p|(b|0)>i[a+84>>2])){b=d;e=i[a+24>>2];continue}c=o(b,12)+a|0;k=c+52|0;f=i[k>>2];m=c+56|0;s:{if((f|0)!=i[m>>2]){i[f>>2]=d;i[k>>2]=f+4;break s}h=c+48|0;n=i[h>>2];j=f-n|0;l=j>>2;g=l+1|0;if(g>>>0>=1073741824){break f}f=j>>1;f=l>>>0<536870911?f>>>0<g>>>0?g:f:1073741823;c=0;t:{if(!f){break t}if(f>>>0>=1073741824){break e}c=Dm(f<<2)}g=c+(l<<2)|0;i[g>>2]=d;f=c+(f<<2)|0;d=g+4|0;if((j|0)>=1){pn(c,n,j)}i[h>>2]=c;i[k>>2]=d;i[m>>2]=f;if(!n){break s}nn(n)}if(i[a+84>>2]<=(b|0)){break r}i[a+84>>2]=b}if(p){break m}b=-1;if((e|0)==-1){break n}}b=i[i[i[a+4>>2]>>2]+(e<<2)>>2]}d=0;if(!(i[i[a+36>>2]+(b>>>3&536870908)>>2]>>>b&1)){b=i[a+88>>2]+(b<<2)|0;d=i[b>>2];i[b>>2]=d+1;d=(d|0)<1?2:1}if((d|0)<=i[a+84>>2]){b=e;e=i[a+24>>2];continue}break}b=o(d,12)+a|0;l=b+52|0;c=i[l>>2];h=b+56|0;u:{if((c|0)!=i[h>>2]){i[c>>2]=e;i[l>>2]=c+4;break u}g=b+48|0;j=i[g>>2];k=c-j|0;m=k>>2;f=m+1|0;if(f>>>0>=1073741824){break d}c=k>>1;c=m>>>0<536870911?c>>>0<f>>>0?f:c:1073741823;b=0;v:{if(!c){break v}if(c>>>0>=1073741824){break c}b=Dm(c<<2)}f=b+(m<<2)|0;i[f>>2]=e;c=b+(c<<2)|0;e=f+4|0;if((k|0)>=1){pn(b,j,k)}i[g>>2]=b;i[l>>2]=e;i[h>>2]=c;if(!j){break u}nn(j)}c=i[a+84>>2];if((c|0)<=(d|0)){break l}i[a+84>>2]=d;c=d;break l}c=i[a+84>>2]}if((c|0)<3){continue}break}}return 1}Sm();x()}Ba(12220);x()}Sm();x()}Ba(12220);x()}Ba(12220);x()}Sm();x()}
function Gf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=J-80|0;J=h;a:{b:{t=i[a+4>>2];c=i[t+32>>2];u=i[c+8>>2];m=i[c+16>>2];r=i[c+12>>2];e=r;f=i[c+20>>2];c:{if((e|0)<(f|0)?1:(e|0)<=(f|0)?u>>>0<=m>>>0:0){break c}v=i[c>>2];n=j[v+m|0];e=f;p=m+1|0;if(p>>>0<1){e=e+1|0}l=c;i[c+16>>2]=p;i[c+20>>2]=e;if((r|0)<(e|0)?1:(r|0)<=(e|0)?u>>>0<=p>>>0:0){break c}p=j[p+v|0];e=f;s=m+2|0;if(s>>>0<2){e=e+1|0}i[c+16>>2]=s;i[l+20>>2]=e;l=n<<24>>24;d:{if((l|0)>=0){q=i[a+216>>2];if((i[a+220>>2]-q|0)/144>>>0<=n>>>0){break c}q=q+o(n,144)|0;if(i[q>>2]<=-1){break d}break c}if(i[a+212>>2]>-1){break c}q=a+212|0}i[q>>2]=b;e:{f:{q=k[t+36>>1];g:{if((q<<24|q<<8&16711680)>>>16>>>0>=258){if((r|0)<(e|0)?1:(r|0)<=(e|0)?u>>>0<=s>>>0:0){break c}e=j[s+v|0];m=m+3|0;if(m>>>0<3){f=f+1|0}i[c+16>>2]=m;i[c+20>>2]=f;if(e>>>0>1){break c}if(!p){break g}if((e|0)==1){break c}break f}if(p){break f}e=0}if((l|0)<=-1){c=a+184|0}else{c=i[a+216>>2]+o(n,144)|0;g[c+100|0]=0;c=c+104|0}h:{i:{switch(e|0){case 0:Hf(h+16|0,a,c);break h;case 1:break i;default:break c}}If(h+16|0,a,c)}c=i[h+16>>2];if(!c){break c}break e}if((l|0)<0){break c}e=i[t+44>>2];f=i[a+216>>2];c=Dm(80);i[c+12>>2]=0;i[c+16>>2]=0;i[c>>2]=13076;i[c+4>>2]=0;i[c+76>>2]=0;i[c+68>>2]=e;i[c+64>>2]=0;i[c+56>>2]=0;i[c+60>>2]=0;i[c+8>>2]=11956;l=c+20|0;d=l;i[d>>2]=0;i[d+4>>2]=0;r=c+28|0;d=r;i[d>>2]=0;i[d+4>>2]=0;i[c+36>>2]=0;i[c+40>>2]=0;m=c+44|0;d=m;i[d>>2]=0;i[d+4>>2]=0;i[c+52>>2]=0;d=f+o(n,144)|0;n=d+104|0;i[c+72>>2]=n;t=h+52|0;f=t;i[f>>2]=0;i[f+4>>2]=0;u=h+44|0;f=u;i[f>>2]=0;i[f+4>>2]=0;v=h+36|0;f=v;i[f>>2]=0;i[f+4>>2]=0;f=h+28|0;i[f>>2]=0;i[f+4>>2]=0;i[h+68>>2]=0;i[h+72>>2]=0;i[h+60>>2]=0;i[h+64>>2]=0;i[h+20>>2]=0;i[h+24>>2]=0;i[h+16>>2]=11956;p=d+4|0;i[h+20>>2]=p;d=i[d+68>>2];s=i[d>>2];d=i[d+4>>2];g[h+79|0]=0;Jf(h+40|0,(d-s>>2>>>0)/3|0,h+79|0);d=i[h+20>>2];s=i[d+56>>2];d=i[d+52>>2];g[h+79|0]=0;Jf(t,s-d>>2,h+79|0);i[v>>2]=c;i[h+32>>2]=e;i[f>>2]=n;i[h+24>>2]=p;i[r>>2]=c;e=i[f+4>>2];i[l>>2]=i[f>>2];i[l+4>>2]=e;f=i[h+24>>2];i[c+12>>2]=i[h+20>>2];i[c+16>>2]=f;f=c;d=i[u>>2];if(d){e=c+32|0;j:{if(d>>>0<=i[c+40>>2]<<5>>>0){l=d+ -1>>>5|0;d=i[e>>2];break j}e=i[e>>2];if(e){nn(e);i[c+40>>2]=0;i[c+32>>2]=0;i[c+36>>2]=0;d=i[h+44>>2]}if((d|0)<=-1){break b}l=d+ -1>>>5|0;e=l+1|0;d=Dm(e<<2);i[c+40>>2]=e;i[c+36>>2]=0;i[c+32>>2]=d}rn(d,i[h+40>>2],(l<<2)+4|0);d=i[h+44>>2]}else{d=0}i[f+36>>2]=d;f=c;d=i[h+56>>2];if(d){k:{if(d>>>0<=i[c+52>>2]<<5>>>0){e=d+ -1>>>5|0;d=i[m>>2];break k}e=i[m>>2];if(e){nn(e);i[c+52>>2]=0;i[c+44>>2]=0;i[c+48>>2]=0;d=i[h+56>>2]}if((d|0)<=-1){break a}e=d+ -1>>>5|0;l=e+1|0;d=Dm(l<<2);i[c+52>>2]=l;i[c+48>>2]=0;i[c+44>>2]=d}rn(d,i[h+52>>2],(e<<2)+4|0);d=i[h+56>>2]}else{d=0}i[f+48>>2]=d;Ma(c+56|0,i[h+64>>2],i[h+68>>2]);i[h+16>>2]=11956;f=i[h+64>>2];if(f){i[h+68>>2]=f;nn(f)}i[h+16>>2]=12208;f=i[h+52>>2];if(f){nn(f)}f=i[h+40>>2];if(!f){break e}nn(f)}f=Dm(64);i[h+8>>2]=c;$b(f,h+8|0);c=i[h+8>>2];i[h+8>>2]=0;if(c){M[i[i[c>>2]+4>>2]](c)}if((b|0)>=0){a=i[a+4>>2];d=a+8|0;c=i[a+12>>2];n=i[a+8>>2];e=c-n>>2;l:{if((e|0)>(b|0)){break l}l=b+1|0;if(e>>>0<=b>>>0){Kf(d,l-e|0);break l}if(l>>>0>=e>>>0){break l}l=n+(l<<2)|0;if((l|0)!=(c|0)){while(1){c=c+ -4|0;e=i[c>>2];i[c>>2]=0;if(e){M[i[i[e>>2]+4>>2]](e)}if((c|0)!=(l|0)){continue}break}}i[a+12>>2]=l}b=i[d>>2]+(b<<2)|0;a=i[b>>2];i[b>>2]=f;d=1;if(!a){break c}M[i[i[a>>2]+4>>2]](a);break c}M[i[i[f>>2]+4>>2]](f);d=0}J=h+80|0;return d|0}Sm();x()}Sm();x()}function Ic(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0;i[a+8>>2]=e;f=a+32|0;g=i[f>>2];d=i[a+36>>2]-g>>2;a:{if(d>>>0<e>>>0){Ra(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}g=0;d=(e&1073741823)!=(e|0)?-1:e<<2;n=qn(Dm(d),0,d);s=qn(Dm(d),0,d);h=i[a+8>>2];b:{if((h|0)<1){break b}while(1){d=g<<2;f=i[d+n>>2];h=i[a+16>>2];c:{if((f|0)>(h|0)){k=i[a+32>>2];i[d+k>>2]=h;break c}k=i[a+32>>2];d=d+k|0;h=i[a+12>>2];if((f|0)<(h|0)){i[d>>2]=h;break c}i[d>>2]=f}g=g+1|0;h=i[a+8>>2];if((g|0)<(h|0)){continue}break}if((h|0)<1){break b}d=0;while(1){g=d<<2;f=g+c|0;g=i[b+g>>2]+i[g+k>>2]|0;i[f>>2]=g;d:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break d}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;h=i[a+8>>2];if((d|0)<(h|0)){continue}break}}d=i[a+56>>2];f=i[d+4>>2];t=i[d>>2];d=f-t|0;if((d|0)>=5){p=i[a+48>>2];f=t-f|0;d=((f|0)>(d|0)?f:d)>>>2|0;v=d>>>0>2?d:2;w=d>>>0>1?d:1;y=e<<2;z=i[a+52>>2];m=1;while(1){e:{f:{g:{if((m|0)!=(w|0)){f=i[(m<<2)+t>>2];u=(e|0)<1;if(!u){qn(n,0,y)}if((f|0)==-1){f=o(e,m);break f}A=i[p>>2];k=0;d=f;while(1){h:{if(i[A+(d>>>3&536870908)>>2]>>>d&1){break h}g=i[i[i[p+64>>2]+12>>2]+(d<<2)>>2];if((g|0)==-1){break h}l=i[z>>2];j=i[p+28>>2];r=i[l+(i[j+(g<<2)>>2]<<2)>>2];if((r|0)>=(m|0)){break h}q=g+1|0;q=i[l+(i[j+(((q>>>0)%3|0?q:g+ -2|0)<<2)>>2]<<2)>>2];if((q|0)>=(m|0)){break h}g=i[l+(i[j+(g+((g>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((g|0)>=(m|0)){break h}i:{if(u){break i}j=o(e,g);l=o(e,q);r=o(e,r);g=0;while(1){i[s+(g<<2)>>2]=(i[(g+j<<2)+c>>2]+i[(g+l<<2)+c>>2]|0)-i[(g+r<<2)+c>>2];g=g+1|0;if((g|0)!=(e|0)){continue}break}g=0;if((e|0)<=0){break i}while(1){j=g<<2;l=j+n|0;i[l>>2]=i[l>>2]+i[j+s>>2];g=g+1|0;if((g|0)!=(e|0)){continue}break}}k=k+1|0}g=-1;d=((d>>>0)%3|0?-1:2)+d|0;j:{if((d|0)==-1|i[i[p>>2]+(d>>>3&536870908)>>2]>>>d&1){break j}d=i[i[i[p+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break j}if((d>>>0)%3|0){g=d+ -1|0;break j}g=d+2|0}d=(f|0)==(g|0)?-1:g;if((d|0)!=-1){continue}break}f=o(e,m);if(!k){break f}g=0;if((e|0)<=0){break g}while(1){d=(g<<2)+n|0;i[d>>2]=i[d>>2]/(k|0);g=g+1|0;if((g|0)!=(e|0)){continue}break}break g}Tm();x()}if((h|0)<1){break e}g=0;while(1){d=g<<2;h=i[d+n>>2];j=i[a+16>>2];k:{if((h|0)>(j|0)){k=i[a+32>>2];i[d+k>>2]=j;break k}k=i[a+32>>2];d=d+k|0;j=i[a+12>>2];if((h|0)<(j|0)){i[d>>2]=j;break k}i[d>>2]=h}g=g+1|0;h=i[a+8>>2];if((g|0)<(h|0)){continue}break}d=0;if((h|0)<1){break e}f=f<<2;j=f+c|0;l=b+f|0;while(1){g=d<<2;f=g+j|0;g=i[g+l>>2]+i[g+k>>2]|0;i[f>>2]=g;l:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break l}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;h=i[a+8>>2];if((d|0)<(h|0)){continue}break}break e}if((h|0)<1){break e}j=(o(m+ -1|0,e)<<2)+c|0;g=0;while(1){d=g<<2;h=i[d+j>>2];l=i[a+16>>2];m:{if((h|0)>(l|0)){k=i[a+32>>2];i[d+k>>2]=l;break m}k=i[a+32>>2];d=d+k|0;l=i[a+12>>2];if((h|0)<(l|0)){i[d>>2]=l;break m}i[d>>2]=h}g=g+1|0;h=i[a+8>>2];if((g|0)<(h|0)){continue}break}d=0;if((h|0)<1){break e}f=f<<2;j=f+c|0;l=b+f|0;while(1){g=d<<2;f=g+j|0;g=i[g+l>>2]+i[g+k>>2]|0;i[f>>2]=g;n:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break n}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;h=i[a+8>>2];if((d|0)<(h|0)){continue}break}}m=m+1|0;if((v|0)!=(m|0)){continue}break}}nn(s);nn(n);return 1}function yc(a,b,c,d,e,f){var g=0,h=0,j=0,k=0,l=0;a:{b:{c:{d:{e:{f:{g:{switch(b+ -1|0){case 0:b=Dm(60);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break f}c=Dm(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=pn(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b>>2]=4748;break a;case 1:b=Dm(60);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break e}c=Dm(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=pn(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b>>2]=5172;break a;case 3:b=Dm(112);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break d}c=Dm(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=pn(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=5396;i[b+68>>2]=0;i[b+72>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+84>>2]=0;i[b+88>>2]=0;i[b+92>>2]=0;i[b+96>>2]=0;i[b+100>>2]=0;i[b+104>>2]=0;i[b+108>>2]=0;break a;case 2:b=Dm(92);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];g=i[d+12>>2];h=i[d+16>>2];j=i[d+20>>2];k=i[d>>2];l=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=h;i[b+28>>2]=j;i[b+16>>2]=c;i[b+20>>2]=g;i[b+8>>2]=k;i[b+12>>2]=l;h=i[d+24>>2];g=i[d+28>>2]-h|0;if(g){d=g>>2;if(d>>>0>=1073741824){break c}c=Dm(g);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((g|0)>=1){c=pn(c,h,g)+g|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=5632;i[b+68>>2]=0;i[b+72>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+84>>2]=0;i[b+88>>2]=f;break a;case 4:b=Dm(104);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break b}c=Dm(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=pn(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=e+8|0;d=i[c>>2];f=i[c+4>>2];i[b+84>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=5848;i[b+52>>2]=d;i[b+56>>2]=f;d=i[e+4>>2];i[b+88>>2]=i[e>>2];i[b+92>>2]=d;d=i[c+4>>2];i[b+96>>2]=i[c>>2];i[b+100>>2]=d;break a;case 5:b=Dm(128);rd(b,c,d,e);break a;default:break g}}i[a>>2]=0;return}Sm();x()}Sm();x()}Sm();x()}Sm();x()}Sm();x()}i[a>>2]=b}function xc(a,b,c,d,e,f){var g=0,h=0,j=0,k=0,l=0;a:{b:{c:{d:{e:{f:{g:{switch(b+ -1|0){case 0:b=Dm(60);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break f}c=Dm(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=pn(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b>>2]=2380;break a;case 1:b=Dm(60);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break e}c=Dm(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=pn(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b>>2]=3144;break a;case 3:b=Dm(112);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break d}c=Dm(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=pn(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=3380;i[b+68>>2]=0;i[b+72>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+84>>2]=0;i[b+88>>2]=0;i[b+92>>2]=0;i[b+96>>2]=0;i[b+100>>2]=0;i[b+104>>2]=0;i[b+108>>2]=0;break a;case 2:b=Dm(92);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];g=i[d+12>>2];h=i[d+16>>2];j=i[d+20>>2];k=i[d>>2];l=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=h;i[b+28>>2]=j;i[b+16>>2]=c;i[b+20>>2]=g;i[b+8>>2]=k;i[b+12>>2]=l;h=i[d+24>>2];g=i[d+28>>2]-h|0;if(g){d=g>>2;if(d>>>0>=1073741824){break c}c=Dm(g);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((g|0)>=1){c=pn(c,h,g)+g|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=i[e+12>>2];i[b+52>>2]=i[e+8>>2];i[b+56>>2]=c;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=3628;i[b+68>>2]=0;i[b+72>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+84>>2]=0;i[b+88>>2]=f;break a;case 4:b=Dm(104);i[b+4>>2]=c;i[b>>2]=3088;c=i[d+8>>2];f=i[d+12>>2];g=i[d+16>>2];h=i[d+20>>2];j=i[d>>2];k=i[d+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=g;i[b+28>>2]=h;i[b+16>>2]=c;i[b+20>>2]=f;i[b+8>>2]=j;i[b+12>>2]=k;g=i[d+24>>2];f=i[d+28>>2]-g|0;if(f){d=f>>2;if(d>>>0>=1073741824){break b}c=Dm(f);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((f|0)>=1){c=pn(c,g,f)+f|0}i[d+36>>2]=c}c=i[e+4>>2];i[b+44>>2]=i[e>>2];i[b+48>>2]=c;c=e+8|0;d=i[c>>2];f=i[c+4>>2];i[b+84>>2]=0;i[b+76>>2]=0;i[b+80>>2]=0;i[b+60>>2]=0;i[b+64>>2]=0;i[b>>2]=3856;i[b+52>>2]=d;i[b+56>>2]=f;d=i[e+4>>2];i[b+88>>2]=i[e>>2];i[b+92>>2]=d;d=i[c+4>>2];i[b+96>>2]=i[c>>2];i[b+100>>2]=d;break a;case 5:b=Dm(128);zc(b,c,d,e);break a;default:break g}}i[a>>2]=0;return}Sm();x()}Sm();x()}Sm();x()}Sm();x()}Sm();x()}i[a>>2]=b}function Id(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;f=J-96|0;J=f;e=i[a+16>>2];g[f+92|0]=1;i[f+88>>2]=b;i[f+84>>2]=b;i[f+80>>2]=e;d=-1;d=(b|0)!=-1?i[i[e>>2]+(b<<2)>>2]:d;h=i[a+20>>2];e=i[h>>2];a:{b:{if(i[h+4>>2]-e>>2>>>0>d>>>0){e=i[i[a+8>>2]+(i[e+(d<<2)>>2]<<2)>>2];d=i[a+4>>2];if(!j[d+84|0]){e=i[i[d+68>>2]+(e<<2)>>2]}i[f+72>>2]=0;i[f+76>>2]=0;h=f- -64|0;i[h>>2]=0;i[h+4>>2]=0;i[f+56>>2]=0;i[f+60>>2]=0;gd(d,e,g[d+24|0],f+56|0);if((b|0)!=-1){d=b+1|0;h=(d>>>0)%3|0?d:b+ -2|0;m=((b>>>0)%3|0?-1:2)+b|0;n=f+48|0;o=f+40|0;while(1){e=h;d=m;c:{if(!i[a+28>>2]){break c}d=b+1|0;e=(d>>>0)%3|0?d:b+ -2|0;d=b+ -1|0;if((b>>>0)%3|0){break c}d=b+2|0}b=-1;b=(e|0)!=-1?i[i[i[a+16>>2]>>2]+(e<<2)>>2]:b;k=i[a+20>>2];e=i[k>>2];if(i[k+4>>2]-e>>2>>>0<=b>>>0){break b}e=i[i[a+8>>2]+(i[e+(b<<2)>>2]<<2)>>2];b=i[a+4>>2];if(!j[b+84|0]){e=i[i[b+68>>2]+(e<<2)>>2]}i[n>>2]=0;i[n+4>>2]=0;i[o>>2]=0;i[o+4>>2]=0;i[f+32>>2]=0;i[f+36>>2]=0;gd(b,e,g[b+24|0],f+32|0);b=-1;b=(d|0)!=-1?i[i[i[a+16>>2]>>2]+(d<<2)>>2]:b;e=i[a+20>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0<=b>>>0){break a}d=i[i[a+8>>2]+(i[d+(b<<2)>>2]<<2)>>2];b=i[a+4>>2];if(!j[b+84|0]){d=i[i[b+68>>2]+(d<<2)>>2]}e=f+24|0;i[e>>2]=0;i[e+4>>2]=0;k=f+16|0;i[k>>2]=0;i[k+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;gd(b,d,g[b+24|0],f+8|0);d=i[f+8>>2];b=i[f+56>>2];s=d-b|0;y=i[f+60>>2];t=i[f+12>>2]-(y+(d>>>0<b>>>0)|0)|0;z=i[f+40>>2];d=i[f+64>>2];D=z-d|0;A=i[f+68>>2];z=i[f+44>>2]-(A+(z>>>0<d>>>0)|0)|0;B=Gn(s,t,D,z);C=l-B|0;u=u-(L+(l>>>0<B>>>0)|0)|0;l=i[k>>2];B=l-d|0;k=i[k+4>>2]-((l>>>0<d>>>0)+A|0)|0;l=i[f+32>>2];A=l-b|0;y=i[f+36>>2]-((l>>>0<b>>>0)+y|0)|0;d=Gn(B,k,A,y);l=d+C|0;b=L+u|0;b=l>>>0<d>>>0?b+1|0:b;u=b;E=p;w=s;F=t;b=i[f+48>>2];p=i[f+72>>2];d=p;t=b-d|0;s=i[f+76>>2];C=i[f+52>>2]-(s+(b>>>0<d>>>0)|0)|0;w=Gn(w,F,t,C);d=E+w|0;b=L+q|0;b=d>>>0<w>>>0?b+1|0:b;q=i[e>>2];w=q-p|0;e=i[e+4>>2]-((q>>>0<p>>>0)+s|0)|0;q=Gn(w,e,A,y);p=d-q|0;q=b-(L+(d>>>0<q>>>0)|0)|0;b=Gn(B,k,t,C);d=r-b|0;b=v-(L+(r>>>0<b>>>0)|0)|0;v=Gn(w,e,D,z);r=v+d|0;b=L+b|0;b=r>>>0<v>>>0?b+1|0:b;v=b;Jd(f+80|0);b=i[f+88>>2];if((b|0)!=-1){continue}break}}d=v;b=d>>31;d=d>>31;h=b;b=v+b|0;m=d+r|0;if(m>>>0<d>>>0){b=b+1|0}o=d^m;n=b^h;t=-1;e=2147483647;d=q;b=d>>31;d=d>>31;m=b;b=q+b|0;k=d+p|0;if(k>>>0<d>>>0){b=b+1|0}d=d^k;b=b^m;h=b;m=d^-1;b=b^2147483647;d:{if(!i[a+28>>2]){if((b|0)==(n|0)&o>>>0>m>>>0|n>>>0>b>>>0){break d}b=h+n|0;a=d+o|0;if(a>>>0<d>>>0){b=b+1|0}d=b;h=a;b=u;e=b>>31;o=b>>31;b=o+b|0;k=e+l|0;if(k>>>0<e>>>0){b=b+1|0}e=e^k;m=b^o;n=e+h|0;b=n;h=m^2147483647;a=(h|0)==(d|0)&a>>>0>(e^-1)>>>0|d>>>0>h>>>0;d=a?0:0;b=a?-1:b;a=b;if((b|0)<536870912?1:(b|0)<=536870912?d>>>0<1:0){break d}b=(a|0)/536870912|0;a=b;b=b>>31;l=Hn(l,u,a,b);p=Hn(p,q,a,b);r=Hn(r,v,a,b);break d}e:{if((b|0)==(n|0)&o>>>0>m>>>0|n>>>0>b>>>0){break e}b=h+n|0;a=d+o|0;if(a>>>0<d>>>0){b=b+1|0}m=b;n=a;d=b;h=u;b=h>>31;h=h>>31;k=b;b=u+b|0;s=h+l|0;if(s>>>0<h>>>0){b=b+1|0}h=h^s;b=b^k;o=b;b=b^2147483647;if((b|0)==(d|0)&n>>>0>(h^-1)>>>0|d>>>0>b>>>0){break e}b=m+o|0;d=a+h|0;if(d>>>0<a>>>0){b=b+1|0}t=d;e=b;if(!b&d>>>0<536870913|b>>>0<0){break d}}a=(e&536870911)<<3|t>>>29;b=e>>>29|0;l=Hn(l,u,a,b);p=Hn(p,q,a,b);r=Hn(r,v,a,b)}i[c+8>>2]=l;i[c+4>>2]=p;i[c>>2]=r;J=f+96|0;return}Tm();x()}Tm();x()}Tm();x()}function td(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0;i[a+8>>2]=e;f=a+32|0;g=i[f>>2];d=i[a+36>>2]-g>>2;a:{if(d>>>0<e>>>0){Ra(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}g=0;d=(e&1073741823)!=(e|0)?-1:e<<2;q=qn(Dm(d),0,d);s=qn(Dm(d),0,d);h=i[a+8>>2];b:{if((h|0)<1){break b}while(1){d=g<<2;f=i[d+q>>2];h=i[a+16>>2];c:{if((f|0)>(h|0)){j=i[a+32>>2];i[d+j>>2]=h;break c}j=i[a+32>>2];d=d+j|0;h=i[a+12>>2];if((f|0)<(h|0)){i[d>>2]=h;break c}i[d>>2]=f}g=g+1|0;h=i[a+8>>2];if((g|0)<(h|0)){continue}break}if((h|0)<1){break b}f=0;while(1){g=f<<2;d=g+c|0;g=i[b+g>>2]+i[g+j>>2]|0;i[d>>2]=g;d:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break d}g=g+i[a+20>>2]|0}i[d>>2]=g}f=f+1|0;h=i[a+8>>2];if((f|0)<(h|0)){continue}break}}d=i[a+56>>2];f=i[d+4>>2];t=i[d>>2];d=f-t|0;if((d|0)>=5){u=i[a+48>>2];f=t-f|0;d=((f|0)>(d|0)?f:d)>>>2|0;y=d>>>0>2?d:2;z=d>>>0>1?d:1;A=e<<2;B=i[a+52>>2];m=1;while(1){e:{f:{g:{if((m|0)!=(z|0)){f=i[(m<<2)+t>>2];v=(e|0)<1;if(!v){qn(q,0,A)}if((f|0)==-1){d=o(e,m);break f}l=i[u+12>>2];k=0;d=f;while(1){g=i[l+(d<<2)>>2];h:{if((g|0)==-1){break h}j=-1;r=i[B>>2];n=i[u>>2];w=i[r+(i[n+(g<<2)>>2]<<2)>>2];p=g+1|0;p=(p>>>0)%3|0?p:g+ -2|0;if((p|0)!=-1){p=i[n+(p<<2)>>2]}else{p=-1}g=g+((g>>>0)%3|0?-1:2)|0;if((g|0)!=-1){j=i[n+(g<<2)>>2]}if((w|0)>=(m|0)){break h}g=i[(p<<2)+r>>2];if((g|0)>=(m|0)){break h}j=i[r+(j<<2)>>2];if((j|0)>=(m|0)){break h}i:{if(v){break i}j=o(e,j);n=o(e,g);r=o(e,w);g=0;while(1){i[s+(g<<2)>>2]=(i[(g+j<<2)+c>>2]+i[(g+n<<2)+c>>2]|0)-i[(g+r<<2)+c>>2];g=g+1|0;if((g|0)!=(e|0)){continue}break}g=0;if((e|0)<=0){break i}while(1){j=g<<2;n=j+q|0;i[n>>2]=i[n>>2]+i[j+s>>2];g=g+1|0;if((g|0)!=(e|0)){continue}break}}k=k+1|0}d=((d>>>0)%3|0?-1:2)+d|0;g=-1;j:{if((d|0)==-1){break j}d=i[l+(d<<2)>>2];g=-1;if((d|0)==-1){break j}g=d+ -1|0;if((d>>>0)%3|0){break j}g=d+2|0}d=(f|0)==(g|0)?-1:g;if((d|0)!=-1){continue}break}d=o(e,m);if(!k){break f}g=0;if((e|0)<=0){break g}while(1){f=(g<<2)+q|0;i[f>>2]=i[f>>2]/(k|0);g=g+1|0;if((g|0)!=(e|0)){continue}break}break g}Tm();x()}if((h|0)<1){break e}g=0;while(1){f=g<<2;h=i[f+q>>2];k=i[a+16>>2];k:{if((h|0)>(k|0)){j=i[a+32>>2];i[f+j>>2]=k;break k}j=i[a+32>>2];f=f+j|0;k=i[a+12>>2];if((h|0)<(k|0)){i[f>>2]=k;break k}i[f>>2]=h}g=g+1|0;h=i[a+8>>2];if((g|0)<(h|0)){continue}break}f=0;if((h|0)<1){break e}d=d<<2;k=d+c|0;l=b+d|0;while(1){g=f<<2;d=g+k|0;g=i[g+l>>2]+i[g+j>>2]|0;i[d>>2]=g;l:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break l}g=g+i[a+20>>2]|0}i[d>>2]=g}f=f+1|0;h=i[a+8>>2];if((f|0)<(h|0)){continue}break}break e}if((h|0)<1){break e}k=(o(m+ -1|0,e)<<2)+c|0;g=0;while(1){f=g<<2;h=i[f+k>>2];l=i[a+16>>2];m:{if((h|0)>(l|0)){j=i[a+32>>2];i[f+j>>2]=l;break m}j=i[a+32>>2];f=f+j|0;l=i[a+12>>2];if((h|0)<(l|0)){i[f>>2]=l;break m}i[f>>2]=h}g=g+1|0;h=i[a+8>>2];if((g|0)<(h|0)){continue}break}f=0;if((h|0)<1){break e}d=d<<2;k=d+c|0;l=b+d|0;while(1){g=f<<2;d=g+k|0;g=i[g+l>>2]+i[g+j>>2]|0;i[d>>2]=g;n:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break n}g=g+i[a+20>>2]|0}i[d>>2]=g}f=f+1|0;h=i[a+8>>2];if((f|0)<(h|0)){continue}break}}m=m+1|0;if((y|0)!=(m|0)){continue}break}}nn(s);nn(q);return 1}function od(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;f=J-96|0;J=f;d=i[a+16>>2];g[f+92|0]=1;i[f+88>>2]=b;i[f+84>>2]=b;i[f+80>>2]=d;h=i[a+20>>2];e=i[h>>2];a:{b:{d=i[i[d+28>>2]+(b<<2)>>2];if(i[h+4>>2]-e>>2>>>0>d>>>0){d=i[i[a+8>>2]+(i[e+(d<<2)>>2]<<2)>>2];e=i[a+4>>2];if(!j[e+84|0]){d=i[i[e+68>>2]+(d<<2)>>2]}i[f+72>>2]=0;i[f+76>>2]=0;h=f- -64|0;i[h>>2]=0;i[h+4>>2]=0;i[f+56>>2]=0;i[f+60>>2]=0;gd(e,d,g[e+24|0],f+56|0);if((b|0)!=-1){d=b+1|0;h=(d>>>0)%3|0?d:b+ -2|0;m=((b>>>0)%3|0?-1:2)+b|0;n=f+48|0;o=f+40|0;while(1){e=h;d=m;c:{if(!i[a+28>>2]){break c}d=b+1|0;e=(d>>>0)%3|0?d:b+ -2|0;d=b+ -1|0;if((b>>>0)%3|0){break c}d=b+2|0}k=i[a+20>>2];b=i[k>>2];e=i[i[i[a+16>>2]+28>>2]+(e<<2)>>2];if(i[k+4>>2]-b>>2>>>0<=e>>>0){break b}e=i[i[a+8>>2]+(i[b+(e<<2)>>2]<<2)>>2];b=i[a+4>>2];if(!j[b+84|0]){e=i[i[b+68>>2]+(e<<2)>>2]}i[n>>2]=0;i[n+4>>2]=0;i[o>>2]=0;i[o+4>>2]=0;i[f+32>>2]=0;i[f+36>>2]=0;gd(b,e,g[b+24|0],f+32|0);e=i[a+20>>2];b=i[e>>2];d=i[i[i[a+16>>2]+28>>2]+(d<<2)>>2];if(i[e+4>>2]-b>>2>>>0<=d>>>0){break a}e=i[i[a+8>>2]+(i[b+(d<<2)>>2]<<2)>>2];b=i[a+4>>2];if(!j[b+84|0]){e=i[i[b+68>>2]+(e<<2)>>2]}k=f+24|0;d=k;i[d>>2]=0;i[d+4>>2]=0;r=f+16|0;d=r;i[d>>2]=0;i[d+4>>2]=0;i[f+8>>2]=0;i[f+12>>2]=0;gd(b,e,g[b+24|0],f+8|0);d=i[f+8>>2];b=i[f+56>>2];t=d-b|0;y=i[f+60>>2];e=i[f+12>>2]-(y+(d>>>0<b>>>0)|0)|0;z=i[f+40>>2];d=i[f+64>>2];D=z-d|0;A=i[f+68>>2];z=i[f+44>>2]-(A+(z>>>0<d>>>0)|0)|0;B=Gn(t,e,D,z);C=l-B|0;u=u-(L+(l>>>0<B>>>0)|0)|0;l=i[r>>2];B=l-d|0;r=i[r+4>>2]-((l>>>0<d>>>0)+A|0)|0;l=i[f+32>>2];A=l-b|0;y=i[f+36>>2]-((l>>>0<b>>>0)+y|0)|0;d=Gn(B,r,A,y);l=d+C|0;b=L+u|0;b=l>>>0<d>>>0?b+1|0:b;u=b;E=p;w=t;F=e;b=i[f+48>>2];p=i[f+72>>2];d=p;e=b-d|0;t=i[f+76>>2];C=i[f+52>>2]-(t+(b>>>0<d>>>0)|0)|0;w=Gn(w,F,e,C);d=E+w|0;b=L+q|0;b=d>>>0<w>>>0?b+1|0:b;q=i[k>>2];w=q-p|0;k=i[k+4>>2]-((q>>>0<p>>>0)+t|0)|0;q=Gn(w,k,A,y);p=d-q|0;q=b-(L+(d>>>0<q>>>0)|0)|0;b=Gn(B,r,e,C);d=s-b|0;b=v-(L+(s>>>0<b>>>0)|0)|0;v=Gn(w,k,D,z);s=v+d|0;b=L+b|0;b=s>>>0<v>>>0?b+1|0:b;v=b;qd(f+80|0);b=i[f+88>>2];if((b|0)!=-1){continue}break}}d=v;b=d>>31;d=d>>31;h=b;b=v+b|0;m=d+s|0;if(m>>>0<d>>>0){b=b+1|0}o=d^m;n=b^h;r=-1;e=2147483647;d=q;b=d>>31;d=d>>31;m=b;b=q+b|0;k=d+p|0;if(k>>>0<d>>>0){b=b+1|0}d=d^k;b=b^m;h=b;m=d^-1;b=b^2147483647;d:{if(!i[a+28>>2]){if((b|0)==(n|0)&o>>>0>m>>>0|n>>>0>b>>>0){break d}b=h+n|0;a=d+o|0;if(a>>>0<d>>>0){b=b+1|0}d=b;h=a;b=u;e=b>>31;o=b>>31;b=o+b|0;k=e+l|0;if(k>>>0<e>>>0){b=b+1|0}e=e^k;m=b^o;n=e+h|0;b=n;h=m^2147483647;a=(h|0)==(d|0)&a>>>0>(e^-1)>>>0|d>>>0>h>>>0;d=a?0:0;b=a?-1:b;a=b;if((b|0)<536870912?1:(b|0)<=536870912?d>>>0<1:0){break d}b=(a|0)/536870912|0;a=b;b=b>>31;l=Hn(l,u,a,b);p=Hn(p,q,a,b);s=Hn(s,v,a,b);break d}e:{if((b|0)==(n|0)&o>>>0>m>>>0|n>>>0>b>>>0){break e}b=h+n|0;a=d+o|0;if(a>>>0<d>>>0){b=b+1|0}m=b;n=a;d=b;h=u;b=h>>31;h=h>>31;k=b;b=u+b|0;t=h+l|0;if(t>>>0<h>>>0){b=b+1|0}h=h^t;b=b^k;o=b;b=b^2147483647;if((b|0)==(d|0)&n>>>0>(h^-1)>>>0|d>>>0>b>>>0){break e}b=m+o|0;d=a+h|0;if(d>>>0<a>>>0){b=b+1|0}r=d;e=b;if(!b&d>>>0<536870913|b>>>0<0){break d}}a=(e&536870911)<<3|r>>>29;b=e>>>29|0;l=Hn(l,u,a,b);p=Hn(p,q,a,b);s=Hn(s,v,a,b)}i[c+8>>2]=l;i[c+4>>2]=p;i[c>>2]=s;J=f+96|0;return}Tm();x()}Tm();x()}Tm();x()}function nn(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;a:{if(!a){break a}d=a+ -8|0;b=i[a+ -4>>2];a=b&-8;f=d+a|0;b:{if(b&1){break b}if(!(b&3)){break a}b=i[d>>2];d=d-b|0;if(d>>>0<l[4336]){break a}a=a+b|0;if(i[4337]!=(d|0)){if(b>>>0<=255){e=i[d+8>>2];b=b>>>3|0;c=i[d+12>>2];if((c|0)==(e|0)){j=17328,k=i[4332]&Kn(b),i[j>>2]=k;break b}i[e+12>>2]=c;i[c+8>>2]=e;break b}h=i[d+24>>2];b=i[d+12>>2];c:{if((b|0)!=(d|0)){c=i[d+8>>2];i[c+12>>2]=b;i[b+8>>2]=c;break c}d:{e=d+20|0;c=i[e>>2];if(c){break d}e=d+16|0;c=i[e>>2];if(c){break d}b=0;break c}while(1){g=e;b=c;e=b+20|0;c=i[e>>2];if(c){continue}e=b+16|0;c=i[b+16>>2];if(c){continue}break}i[g>>2]=0}if(!h){break b}e=i[d+28>>2];c=(e<<2)+17632|0;e:{if(i[c>>2]==(d|0)){i[c>>2]=b;if(b){break e}j=17332,k=i[4333]&Kn(e),i[j>>2]=k;break b}i[h+(i[h+16>>2]==(d|0)?16:20)>>2]=b;if(!b){break b}}i[b+24>>2]=h;c=i[d+16>>2];if(c){i[b+16>>2]=c;i[c+24>>2]=b}c=i[d+20>>2];if(!c){break b}i[b+20>>2]=c;i[c+24>>2]=b;break b}b=i[f+4>>2];if((b&3)!=3){break b}i[4334]=a;i[f+4>>2]=b&-2;i[d+4>>2]=a|1;i[a+d>>2]=a;return}if(f>>>0<=d>>>0){break a}b=i[f+4>>2];if(!(b&1)){break a}f:{if(!(b&2)){if((f|0)==i[4338]){i[4338]=d;a=i[4335]+a|0;i[4335]=a;i[d+4>>2]=a|1;if(i[4337]!=(d|0)){break a}i[4334]=0;i[4337]=0;return}if((f|0)==i[4337]){i[4337]=d;a=i[4334]+a|0;i[4334]=a;i[d+4>>2]=a|1;i[a+d>>2]=a;return}a=(b&-8)+a|0;g:{if(b>>>0<=255){c=i[f+8>>2];b=b>>>3|0;e=i[f+12>>2];if((c|0)==(e|0)){j=17328,k=i[4332]&Kn(b),i[j>>2]=k;break g}i[c+12>>2]=e;i[e+8>>2]=c;break g}h=i[f+24>>2];b=i[f+12>>2];h:{if((f|0)!=(b|0)){c=i[f+8>>2];i[c+12>>2]=b;i[b+8>>2]=c;break h}i:{e=f+20|0;c=i[e>>2];if(c){break i}e=f+16|0;c=i[e>>2];if(c){break i}b=0;break h}while(1){g=e;b=c;e=b+20|0;c=i[e>>2];if(c){continue}e=b+16|0;c=i[b+16>>2];if(c){continue}break}i[g>>2]=0}if(!h){break g}e=i[f+28>>2];c=(e<<2)+17632|0;j:{if((f|0)==i[c>>2]){i[c>>2]=b;if(b){break j}j=17332,k=i[4333]&Kn(e),i[j>>2]=k;break g}i[h+((f|0)==i[h+16>>2]?16:20)>>2]=b;if(!b){break g}}i[b+24>>2]=h;c=i[f+16>>2];if(c){i[b+16>>2]=c;i[c+24>>2]=b}c=i[f+20>>2];if(!c){break g}i[b+20>>2]=c;i[c+24>>2]=b}i[d+4>>2]=a|1;i[a+d>>2]=a;if(i[4337]!=(d|0)){break f}i[4334]=a;return}i[f+4>>2]=b&-2;i[d+4>>2]=a|1;i[a+d>>2]=a}if(a>>>0<=255){a=a>>>3|0;b=(a<<3)+17368|0;c=i[4332];a=1<<a;k:{if(!(c&a)){i[4332]=a|c;a=b;break k}a=i[b+8>>2]}i[b+8>>2]=d;i[a+12>>2]=d;i[d+12>>2]=b;i[d+8>>2]=a;return}e=31;i[d+16>>2]=0;i[d+20>>2]=0;if(a>>>0<=16777215){b=a>>>8|0;g=b+1048320>>>16&8;b=b<<g;e=b+520192>>>16&4;b=b<<e;c=b+245760>>>16&2;b=(b<<c>>>15|0)-(c|(e|g))|0;e=(b<<1|a>>>b+21&1)+28|0}i[d+28>>2]=e;g=(e<<2)+17632|0;l:{m:{c=i[4333];b=1<<e;n:{if(!(c&b)){i[4333]=b|c;i[g>>2]=d;i[d+24>>2]=g;break n}e=a<<((e|0)==31?0:25-(e>>>1|0)|0);b=i[g>>2];while(1){c=b;if((i[b+4>>2]&-8)==(a|0)){break m}b=e>>>29|0;e=e<<1;g=(c+(b&4)|0)+16|0;b=i[g>>2];if(b){continue}break}i[g>>2]=d;i[d+24>>2]=c}i[d+12>>2]=d;i[d+8>>2]=d;break l}a=i[c+8>>2];i[a+12>>2]=d;i[c+8>>2]=d;i[d+24>>2]=0;i[d+12>>2]=c;i[d+8>>2]=a}a=i[4340]+ -1|0;i[4340]=a;if(a){break a}d=17784;while(1){a=i[d>>2];d=a+8|0;if(a){continue}break}i[4340]=-1}}function Rk(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;i[a+56>>2]=i[a+52>>2];i[a+44>>2]=i[a+40>>2];a:{b:{c:{e=i[a+64>>2];d=i[e+24>>2];if((d|0)!=i[e+28>>2]){n=a+40|0;o=a+52|0;while(1){e=c;j=i[(l<<2)+d>>2];d:{if((j|0)==-1){break d}c=i[a+56>>2];e:{if((c|0)!=i[a+60>>2]){i[c>>2]=e;i[a+56>>2]=c+4;break e}h=i[o>>2];g=c-h|0;f=g>>2;d=f+1|0;if(d>>>0>=1073741824){break c}b=g>>1;d=f>>>0<536870911?b>>>0<d>>>0?d:b:1073741823;c=0;f:{if(!d){break f}if(d>>>0>=1073741824){break a}c=Dm(d<<2)}b=c+(f<<2)|0;i[b>>2]=e;d=c+(d<<2)|0;b=b+4|0;if((g|0)>=1){pn(c,h,g)}i[a+60>>2]=d;i[a+56>>2]=b;i[a+52>>2]=c;if(!h){break e}nn(h)}g:{if(!(i[i[a+12>>2]+(l>>>3&536870908)>>2]>>>l&1)){break g}c=j+1|0;c=(c>>>0)%3|0?c:j+ -2|0;if((c|0)==-1|i[i[a>>2]+(c>>>3&536870908)>>2]>>>c&1){break g}b=i[i[i[a+64>>2]+12>>2]+(c<<2)>>2];if((b|0)==-1){break g}c=b+1|0;d=(c>>>0)%3|0?c:b+ -2|0;if((d|0)==-1){break g}while(1){c=d+1|0;j=d;c=(c>>>0)%3|0?c:d+ -2|0;if((c|0)==-1|i[i[a>>2]+(c>>>3&536870908)>>2]>>>c&1){break g}b=i[i[i[a+64>>2]+12>>2]+(c<<2)>>2];if((b|0)==-1){break g}c=b+1|0;d=(c>>>0)%3|0?c:b+ -2|0;if((d|0)!=-1){continue}break}}i[i[a+28>>2]+(j<<2)>>2]=e;c=i[a+44>>2];h:{if((c|0)!=i[a+48>>2]){i[c>>2]=j;i[a+44>>2]=c+4;break h}h=i[n>>2];g=c-h|0;f=g>>2;d=f+1|0;if(d>>>0>=1073741824){break b}b=g>>1;d=f>>>0<536870911?b>>>0<d>>>0?d:b:1073741823;c=0;i:{if(!d){break i}if(d>>>0>=1073741824){break a}c=Dm(d<<2)}b=c+(f<<2)|0;i[b>>2]=j;d=c+(d<<2)|0;b=b+4|0;if((g|0)>=1){pn(c,h,g)}i[a+48>>2]=d;i[a+44>>2]=b;i[a+40>>2]=c;if(!h){break h}nn(h)}c=e+1|0;b=((j>>>0)%3|0?-1:2)+j|0;if((b|0)==-1){break d}b=i[i[i[a+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break d}d=b+((b>>>0)%3|0?-1:2)|0;if((d|0)==-1|(d|0)==(j|0)){break d}while(1){b=d+1|0;b=(b>>>0)%3|0?b:d+ -2|0;if(i[i[a>>2]+(b>>>3&536870908)>>2]>>>b&1){e=i[a+56>>2];j:{if((e|0)!=i[a+60>>2]){i[e>>2]=c;i[a+56>>2]=e+4;break j}k=i[o>>2];h=e-k|0;g=h>>2;f=g+1|0;if(f>>>0>=1073741824){break c}b=h>>1;f=g>>>0<536870911?b>>>0<f>>>0?f:b:1073741823;e=0;k:{if(!f){break k}if(f>>>0>=1073741824){break a}e=Dm(f<<2)}b=e+(g<<2)|0;i[b>>2]=c;f=e+(f<<2)|0;b=b+4|0;if((h|0)>=1){pn(e,k,h)}i[a+60>>2]=f;i[a+56>>2]=b;i[a+52>>2]=e;if(!k){break j}nn(k)}b=c+1|0;e=i[a+44>>2];l:{if((e|0)!=i[a+48>>2]){i[e>>2]=d;i[a+44>>2]=e+4;break l}m=i[n>>2];k=e-m|0;h=k>>2;g=h+1|0;if(g>>>0>=1073741824){break b}f=k>>1;g=h>>>0<536870911?f>>>0<g>>>0?g:f:1073741823;e=0;m:{if(!g){break m}if(g>>>0>=1073741824){break a}e=Dm(g<<2)}f=e+(h<<2)|0;i[f>>2]=d;g=e+(g<<2)|0;f=f+4|0;if((k|0)>=1){pn(e,m,k)}i[a+48>>2]=g;i[a+44>>2]=f;i[a+40>>2]=e;if(!m){break l}nn(m)}e=c;c=b}i[i[a+28>>2]+(d<<2)>>2]=e;b=((d>>>0)%3|0?-1:2)+d|0;if((b|0)==-1){break d}b=i[i[i[a+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break d}d=b+((b>>>0)%3|0?-1:2)|0;if((d|0)==-1){break d}if((d|0)!=(j|0)){continue}break}}e=i[a+64>>2];d=i[e+24>>2];l=l+1|0;if(l>>>0<i[e+28>>2]-d>>2>>>0){continue}break}}return}Sm();x()}Sm();x()}Ba(14480);x()}function Xg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;if((b|0)==-1){return 1}d=(b>>>0)/3|0;if(!(i[i[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=i[a+48>>2];i[a+52>>2]=c;a:{if((c|0)!=i[a+56>>2]){i[c>>2]=b;i[a+52>>2]=c+4;break a}f=Dm(4);i[f>>2]=b;e=f+4|0;i[a+56>>2]=e;i[a+52>>2]=e;i[a+48>>2]=f;if(!c){break a}nn(c)}e=i[i[a+4>>2]+28>>2];c=b+1|0;f=(c>>>0)%3|0?c:b+ -2|0;c=i[e+(f<<2)>>2];if((c|0)==-1){return 0}h=(b-o(d,3)|0?-1:2)+b|0;d=i[e+(h<<2)>>2];if((d|0)==-1){return 0}b=i[a+36>>2];e=b+(c>>>3&536870908)|0;g=i[e>>2];j=1<<c;if(!(g&j)){i[e>>2]=g|j;Hg(a+8|0,c,f);b=i[a+36>>2]}b=(d>>>3&536870908)+b|0;c=i[b>>2];f=1<<d;if(!(c&f)){i[b>>2]=c|f;Hg(a+8|0,d,h)}c=i[a+52>>2];if((c|0)==i[a+48>>2]){return 1}l=a+48|0;m=a+8|0;while(1){c=c+ -4|0;b=i[c>>2];d=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}f=i[a+24>>2]+(d>>>3&268435452)|0;e=i[f>>2];d=1<<d;if(e&d){break c}i[f>>2]=d|e;f=i[a+4>>2];c=i[i[f+28>>2]+(b<<2)>>2];if((c|0)==-1){return 0}while(1){d=b;d:{b=i[a+36>>2]+(c>>>3&536870908)|0;e=i[b>>2];h=1<<c;e:{if(e&h){break e}g=i[i[f+40>>2]+(c<<2)>>2];if((g|0)!=-1){f:{j=g+1|0;g=(j>>>0)%3|0?j:g+ -2|0;if((g|0)==-1|i[i[f>>2]+(g>>>3&536870908)>>2]>>>g&1){break f}f=i[i[i[f+64>>2]+12>>2]+(g<<2)>>2];if((f|0)==-1){break f}i[b>>2]=e|h;Hg(m,c,d);b=f+1|0;if((((b>>>0)%3|0?b:f+ -2|0)|0)==-1){break e}b=-1;f=i[a+4>>2];g:{if((d|0)==-1){break g}c=d+1|0;c=(c>>>0)%3|0?c:d+ -2|0;if((c|0)==-1|i[i[f>>2]+(c>>>3&536870908)>>2]>>>c&1){break g}b=i[i[i[f+64>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<<c;d=i[a+24>>2];j=c>>>5|0;e=i[d+(j<<2)>>2];break d}}i[b>>2]=e|h;Hg(m,c,d)}h:{i:{if((d|0)==-1){break i}f=i[a+4>>2];b=-1;e=d+1|0;e=(e>>>0)%3|0?e:d+ -2|0;c=-1;j:{if((e|0)==-1){break j}c=-1;if(i[i[f>>2]+(e>>>3&536870908)>>2]>>>e&1){break j}c=i[i[i[f+64>>2]+12>>2]+(e<<2)>>2]}d=d+((d>>>0)%3|0?-1:2)|0;if(!((d|0)==-1|i[i[f>>2]+(d>>>3&536870908)>>2]>>>d&1)){b=i[i[i[f+64>>2]+12>>2]+(d<<2)>>2]}k=(b|0)==-1;h=k?-1:(b>>>0)/3|0;e=(c>>>0)/3|0;g=(c|0)==-1;if(!g){d=i[a+24>>2];g=g?-1:e;j=g>>>5|0;e=i[d+(j<<2)>>2];g=1<<g;if(!(e&g)){break h}}if(k){break i}g=1<<h;d=i[a+24>>2];j=h>>>5|0;e=i[d+(j<<2)>>2];if(!(g&e)){break d}}c=i[a+52>>2]+ -4|0;i[a+52>>2]=c;break b}if(k){b=c;break d}if(i[(h>>>3&536870908)+d>>2]>>>h&1){b=c;break d}d=i[a+52>>2];i[d+ -4>>2]=b;if((d|0)!=i[a+56>>2]){i[d>>2]=c;c=d+4|0;break c}k:{b=d;d=i[l>>2];f=b-d|0;h=f>>2;e=h+1|0;if(e>>>0<1073741824){g=f>>1;e=h>>>0<536870911?g>>>0<e>>>0?e:g:1073741823;b=0;l:{if(!e){break l}if(e>>>0>=1073741824){break k}b=Dm(e<<2)}h=b+(h<<2)|0;i[h>>2]=c;e=b+(e<<2)|0;c=h+4|0;if((f|0)>=1){pn(b,d,f)}i[a+56>>2]=e;i[a+52>>2]=c;i[a+48>>2]=b;if(!d){break b}nn(d);c=i[a+52>>2];break b}Sm();x()}Ba(12220);x()}i[(j<<2)+d>>2]=e|g;c=i[i[f+28>>2]+(b<<2)>>2];if((c|0)!=-1){continue}break}return 0}i[a+52>>2]=c}if(i[l>>2]!=(c|0)){continue}break}}return 1}function Gb(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,h=0,k=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0,A=p(0);e=J-32|0;J=e;a:{b:{c:{if(!(i[a+60>>2]!=i[a- -64>>2]|i[a+48>>2]!=i[a+52>>2])){b=1;break c}b=1;if((M[i[i[a>>2]+24>>2]](a)|0)<1){break c}d:{while(1){e:{b=M[i[i[a>>2]+20>>2]](a,u)|0;f:{g:{h:{f=i[i[i[(M[i[i[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(b<<2)>>2];switch(i[f+28>>2]+ -1|0){case 0:case 2:case 4:break h;case 8:break g;default:break f}}b=g[f+24|0];c=0;i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;if(b){if((b|0)<=-1){break b}b=b<<2;d=Dm(b);i[e+16>>2]=d;c=b+d|0;i[e+24>>2]=c;qn(d,0,b);i[e+20>>2]=c;c=j[f+24|0]}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(c&255){b=c<<24>>24;if((b|0)<=-1){break a}b=b<<2;d=Dm(b);i[e>>2]=d;c=b+d|0;i[e+8>>2]=c;qn(d,0,b);i[e+4>>2]=c}i:{j:{k:{switch(i[f+28>>2]+ -1|0){case 4:b=0;if(Hb(a,f,t)){break j}break i;case 2:b=0;if(Ib(a,f,t)){break j}break i;case 0:break k;default:break j}}b=0;if(!Jb(a,f,t)){break i}}t=g[f+24|0]+t|0;b=1}d=i[e>>2];if(d){i[e+4>>2]=d;nn(d)}d=i[e+16>>2];if(d){i[e+20>>2]=d;nn(d)}if(b){break f}break d}r=i[i[a+60>>2]+(h<<2)>>2];s=i[a+36>>2];k=i[(M[i[i[a>>2]+28>>2]](a)|0)+40>>2];n=i[f+56>>2];b=Dm(32);i[e+16>>2]=b;i[e+20>>2]=24;i[e+24>>2]=-2147483616;g[b+24|0]=0;d=j[1702]|j[1703]<<8|(j[1704]<<16|j[1705]<<24);c=j[1698]|j[1699]<<8|(j[1700]<<16|j[1701]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[1694]|j[1695]<<8|(j[1696]<<16|j[1697]<<24);c=j[1690]|j[1691]<<8|(j[1692]<<16|j[1693]<<24);g[b+8|0]=c;g[b+9|0]=c>>>8;g[b+10|0]=c>>>16;g[b+11|0]=c>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[1686]|j[1687]<<8|(j[1688]<<16|j[1689]<<24);c=j[1682]|j[1683]<<8|(j[1684]<<16|j[1685]<<24);g[b|0]=c;g[b+1|0]=c>>>8;g[b+2|0]=c>>>16;g[b+3|0]=c>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;l:{m:{d=k+16|0;c=d;b=i[d>>2];if(!b){break m}while(1){q=i[b+16>>2]<(n|0);c=q?c:b;b=i[(q<<2)+b>>2];if(b){continue}break}if((c|0)==(d|0)|(n|0)<i[c+16>>2]){break m}b=c+20|0;if(!Kb(b,e+16|0)){break m}b=Jh(b,e+16|0);break l}b=Jh(k,e+16|0)}if(g[e+27|0]<=-1){nn(i[e+16>>2])}d=h+1|0;n:{if(b){La(f,r);break n}b=s+o(h,24)|0;c=i[b+4>>2];h=g[f+24|0];s=h<<2;k=Dm((h|0)!=(h&1073741823)?-1:s);if(!Mh(Kh(e+16|0),m[b+20>>2],-1<<c^-1)){break e}if(i[r+80>>2]){w=i[i[r>>2]>>2]+i[r+48>>2]|0;y=b+8|0;q=0;n=0;c=0;while(1){if((h|0)>=1){z=i[y>>2];b=0;A=m[e+16>>2];while(1){v=b<<2;m[v+k>>2]=p(A*p(i[w+(c<<2)>>2]))+m[z+v>>2];c=c+1|0;b=b+1|0;if((h|0)!=(b|0)){continue}break}}pn(i[i[f+64>>2]>>2]+n|0,k,s);n=n+s|0;q=q+1|0;if(q>>>0<l[r+80>>2]){continue}break}}nn(k)}h=d}b=1;u=u+1|0;if((u|0)<(M[i[i[a>>2]+24>>2]](a)|0)){continue}break c}break}nn(k)}b=0}J=e+32|0;return b|0}Sm();x()}Sm();x()}function sd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0;i[a+8>>2]=e;f=a+32|0;g=i[f>>2];d=i[a+36>>2]-g>>2;a:{if(d>>>0<e>>>0){Ra(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}s=i[a+52>>2];r=i[a+48>>2];d=0;f=(e&1073741823)!=(e|0)?-1:e<<2;p=qn(Dm(f),0,f);f=i[a+8>>2];b:{if((f|0)<1){break b}while(1){f=d<<2;g=i[f+p>>2];k=i[a+16>>2];c:{if((g|0)>(k|0)){h=i[a+32>>2];i[f+h>>2]=k;break c}h=i[a+32>>2];f=f+h|0;k=i[a+12>>2];if((g|0)<(k|0)){i[f>>2]=k;break c}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}if((f|0)<1){break b}g=0;while(1){f=g<<2;d=f+c|0;f=i[b+f>>2]+i[f+h>>2]|0;i[d>>2]=f;d:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break d}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}}d=i[a+56>>2];g=i[d+4>>2];q=i[d>>2];d=g-q|0;if((d|0)>=5){g=q-g|0;d=((g|0)>(d|0)?g:d)>>>2|0;t=d>>>0>2?d:2;u=d>>>0>1?d:1;k=1;while(1){e:{f:{if((k|0)!=(u|0)){n=o(e,k);d=i[(k<<2)+q>>2];if((d|0)==-1){break f}d=i[i[r+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}g=-1;j=i[s>>2];h=i[r>>2];l=i[j+(i[h+(d<<2)>>2]<<2)>>2];m=d+1|0;m=(m>>>0)%3|0?m:d+ -2|0;if((m|0)!=-1){m=i[h+(m<<2)>>2]}else{m=-1}d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)!=-1){g=i[h+(d<<2)>>2]}if((l|0)>=(k|0)){break f}d=i[(m<<2)+j>>2];if((d|0)>=(k|0)){break f}g=i[j+(g<<2)>>2];if((g|0)>=(k|0)){break f}if((e|0)>=1){g=o(e,g);h=o(d,e);j=o(e,l);d=0;while(1){i[(d<<2)+p>>2]=(i[(d+g<<2)+c>>2]+i[(d+h<<2)+c>>2]|0)-i[(d+j<<2)+c>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}if((f|0)<1){break e}d=0;while(1){f=d<<2;g=i[f+p>>2];j=i[a+16>>2];g:{if((g|0)>(j|0)){h=i[a+32>>2];i[f+h>>2]=j;break g}h=i[a+32>>2];f=f+h|0;j=i[a+12>>2];if((g|0)<(j|0)){i[f>>2]=j;break g}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}g=0;if((f|0)<1){break e}d=n<<2;n=d+c|0;j=b+d|0;while(1){f=g<<2;d=f+n|0;f=i[f+j>>2]+i[f+h>>2]|0;i[d>>2]=f;h:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break h}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}break e}Tm();x()}if((f|0)<1){break e}j=(o(k+ -1|0,e)<<2)+c|0;d=0;while(1){f=d<<2;g=i[f+j>>2];l=i[a+16>>2];i:{if((g|0)>(l|0)){h=i[a+32>>2];i[f+h>>2]=l;break i}h=i[a+32>>2];f=f+h|0;l=i[a+12>>2];if((g|0)<(l|0)){i[f>>2]=l;break i}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}g=0;if((f|0)<1){break e}d=n<<2;n=d+c|0;j=b+d|0;while(1){f=g<<2;d=f+n|0;f=i[f+j>>2]+i[f+h>>2]|0;i[d>>2]=f;j:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break j}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}}k=k+1|0;if((t|0)!=(k|0)){continue}break}}nn(p);return 1}function Gc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;i[a+8>>2]=e;f=a+32|0;g=i[f>>2];d=i[a+36>>2]-g>>2;a:{if(d>>>0<e>>>0){Ra(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}r=i[a+52>>2];p=i[a+48>>2];d=0;f=(e&1073741823)!=(e|0)?-1:e<<2;n=qn(Dm(f),0,f);f=i[a+8>>2];b:{if((f|0)<1){break b}while(1){f=d<<2;g=i[f+n>>2];j=i[a+16>>2];c:{if((g|0)>(j|0)){h=i[a+32>>2];i[f+h>>2]=j;break c}h=i[a+32>>2];f=f+h|0;j=i[a+12>>2];if((g|0)<(j|0)){i[f>>2]=j;break c}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}if((f|0)<1){break b}g=0;while(1){f=g<<2;d=f+c|0;f=i[b+f>>2]+i[f+h>>2]|0;i[d>>2]=f;d:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break d}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}}d=i[a+56>>2];g=i[d+4>>2];q=i[d>>2];d=g-q|0;if((d|0)>=5){g=q-g|0;d=((g|0)>(d|0)?g:d)>>>2|0;s=d>>>0>2?d:2;t=d>>>0>1?d:1;j=1;while(1){e:{f:{if((j|0)!=(t|0)){m=o(e,j);d=i[(j<<2)+q>>2];if((d|0)==-1|i[i[p>>2]+(d>>>3&536870908)>>2]>>>d&1){break f}d=i[i[i[p+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}h=i[r>>2];g=i[p+28>>2];k=i[h+(i[g+(d<<2)>>2]<<2)>>2];if((k|0)>=(j|0)){break f}l=d+1|0;l=i[h+(i[g+(((l>>>0)%3|0?l:d+ -2|0)<<2)>>2]<<2)>>2];if((l|0)>=(j|0)){break f}d=i[h+(i[g+(d+((d>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((d|0)>=(j|0)){break f}if((e|0)>=1){g=o(d,e);h=o(e,l);k=o(e,k);d=0;while(1){i[(d<<2)+n>>2]=(i[(d+g<<2)+c>>2]+i[(d+h<<2)+c>>2]|0)-i[(d+k<<2)+c>>2];d=d+1|0;if((e|0)!=(d|0)){continue}break}}if((f|0)<1){break e}d=0;while(1){f=d<<2;g=i[f+n>>2];k=i[a+16>>2];g:{if((g|0)>(k|0)){h=i[a+32>>2];i[f+h>>2]=k;break g}h=i[a+32>>2];f=f+h|0;k=i[a+12>>2];if((g|0)<(k|0)){i[f>>2]=k;break g}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}g=0;if((f|0)<1){break e}d=m<<2;m=d+c|0;k=b+d|0;while(1){f=g<<2;d=f+m|0;f=i[f+k>>2]+i[f+h>>2]|0;i[d>>2]=f;h:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break h}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}break e}Tm();x()}if((f|0)<1){break e}k=(o(j+ -1|0,e)<<2)+c|0;d=0;while(1){f=d<<2;g=i[f+k>>2];l=i[a+16>>2];i:{if((g|0)>(l|0)){h=i[a+32>>2];i[f+h>>2]=l;break i}h=i[a+32>>2];f=f+h|0;l=i[a+12>>2];if((g|0)<(l|0)){i[f>>2]=l;break i}i[f>>2]=g}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}g=0;if((f|0)<1){break e}d=m<<2;m=d+c|0;k=b+d|0;while(1){f=g<<2;d=f+m|0;f=i[f+k>>2]+i[f+h>>2]|0;i[d>>2]=f;j:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break j}f=f+i[a+20>>2]|0}i[d>>2]=f}g=g+1|0;f=i[a+8>>2];if((g|0)<(f|0)){continue}break}}j=j+1|0;if((s|0)!=(j|0)){continue}break}}nn(n);return 1}function bb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0;d=J-704|0;J=d;r=1;a:{b:{c:{d:{if(k[b+38>>1]<515){break d}r=0;f=i[b+16>>2];e=i[b+12>>2];c=i[b+20>>2];if((e|0)<(c|0)?1:(e|0)<=(c|0)?l[b+8>>2]<=f>>>0:0){break d}u=j[f+i[b>>2]|0];f=f+1|0;if(f>>>0<1){c=c+1|0}i[b+16>>2]=f;i[b+20>>2]=c;t=i[i[(M[i[i[a>>2]+28>>2]](a)|0)+4>>2]+80>>2];c=M[i[i[a>>2]+24>>2]](a)|0;i[d+696>>2]=0;i[d+688>>2]=0;i[d+692>>2]=0;if(c){if(c>>>0>=214748365){break c}c=o(c,20);e=Dm(c);i[d+688>>2]=e;f=c+e|0;i[d+696>>2]=f;qn(e,0,c-((c+ -20>>>0)%20|0)|0);i[d+692>>2]=f}e:{if((M[i[i[a>>2]+24>>2]](a)|0)>=1){v=a+48|0;w=a+60|0;while(1){c=M[i[i[a>>2]+20>>2]](a,q)|0;e=i[i[i[(M[i[i[a>>2]+28>>2]](a)|0)+4>>2]+8>>2]+(c<<2)>>2];Ka(e,t);g[e+84|0]=1;i[e+72>>2]=i[e+68>>2];c=i[e+28>>2];if(c>>>0>9){break e}f:{g:{h:{f=1<<c;if(!(f&42)){if(f&84){break f}if((c|0)!=9){break e}c=g[e+24|0];f=Ea(d);h=i[e+56>>2];e=c;c=o(Fh(6),c);Fa(f,h,e,6,0,c,c>>31);c=Dm(96);e=Ja(c,f);i[d+656>>2]=c;g[c+84|0]=1;i[c+72>>2]=i[c+68>>2];Ka(e,t);c=i[a+64>>2];if(c>>>0>=l[a+68>>2]){break h}e=i[d+656>>2];i[d+656>>2]=0;i[c>>2]=e;c=c+4|0;i[a+64>>2]=c;break g}p=0;if(g[e+24|0]<1){break f}while(1){c=i[a+52>>2];m=i[a+56>>2];i:{if(c>>>0<m>>>0){i[c>>2]=0;i[a+52>>2]=c+4;break i}f=i[v>>2];s=c-f|0;c=s>>2;h=c+1|0;if(h>>>0>=1073741824){break b}y=c<<2;m=m-f|0;c=m>>1;h=m>>2>>>0<536870911?c>>>0<h>>>0?h:c:1073741823;c=0;j:{if(!h){break j}if(h>>>0>=1073741824){break a}c=Dm(h<<2)}m=y+c|0;i[m>>2]=0;h=c+(h<<2)|0;m=m+4|0;if((s|0)>=1){pn(c,f,s)}i[a+56>>2]=h;i[a+52>>2]=m;i[a+48>>2]=c;if(!f){break i}nn(f)}p=p+1|0;if((p|0)<g[e+24|0]){continue}break}break f}cb(w,d+656|0);c=i[a+64>>2]}e=i[c+ -4>>2];c=i[d+656>>2];i[d+656>>2]=0;if(!c){break f}Sa(c)}h=i[e+28>>2];f=Fh(h);c=i[d+688>>2]+o(q,20)|0;p=g[e+24|0];i[c+16>>2]=p;i[c+12>>2]=(f|0)>0?f:0;i[c+8>>2]=h;i[c+4>>2]=n;i[c>>2]=e;n=n+p|0;q=q+1|0;if((q|0)<(M[i[i[a>>2]+24>>2]](a)|0)){continue}break}}a=db(d+656|0,d+688|0);k:{l:{m:{switch(u|0){case 0:c=gb(d,n);b=eb(c,b,a);fb(c);if(b){break l}break k;case 1:c=gb(d,n);b=hb(c,b,a);fb(c);if(b){break l}break k;case 2:c=kb(d,n);b=ib(c,b,a);jb(c);if(b){break l}break k;case 3:c=kb(d,n);b=lb(c,b,a);jb(c);if(b){break l}break k;case 4:c=ob(d,n);b=mb(c,b,a);nb(c);if(b){break l}break k;case 5:c=ob(d,n);b=pb(c,b,a);nb(c);if(b){break l}break k;case 6:break m;default:break k}}c=ob(d,n);b=qb(c,b,a);nb(c);if(!b){break k}}r=1}b=i[a+16>>2];if(b){i[a+20>>2]=b;nn(b)}b=i[a>>2];if(!b){break e}i[a+4>>2]=b;nn(b)}a=i[d+688>>2];if(!a){break d}i[d+692>>2]=a;nn(a)}J=d+704|0;return r|0}Sm();x()}Sm();x()}Ba(1756);x()}function Ak(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,y=0,z=0;e=J-48|0;J=e;a:{if(!b){break a}w=a+12|0;g=i[a+4>>2];m=i[a>>2];f=g-m|0;k=f>>2;d=i[a+12>>2];c=i[a+16>>2]-d>>2;b:{if(k>>>0>c>>>0){Dk(w,k-c|0);g=i[a+4>>2];m=i[a>>2];f=g-m|0;k=f>>2;break b}if(k>>>0>=c>>>0){break b}i[a+16>>2]=d+(k<<2)}i[e+40>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;c:{if(!f){break c}if(k>>>0<1073741824){l=Dm(f);i[e+36>>2]=l;i[e+32>>2]=l;i[e+40>>2]=(k<<2)+l;d=l;f=0;while(1){c=i[(f<<2)+m>>2];j=d-l>>2;d:{if(c>>>0<j>>>0){break d}i[e+16>>2]=0;d=c+1|0;if(d>>>0>j>>>0){Ta(e+32|0,d-j|0,e+16|0);m=i[a>>2];g=i[a+4>>2];l=i[e+32>>2];break d}if(d>>>0>=j>>>0){break d}i[e+36>>2]=(d<<2)+l}d=(c<<2)+l|0;i[d>>2]=i[d>>2]+1;f=f+1|0;h=g-m|0;k=h>>2;if(f>>>0>=k>>>0){break c}d=i[e+36>>2];continue}}Ba(14288);x()}i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;e:{f:{if(h){if(k>>>0>=536870912){break f}n=Dm(h<<1);i[e+16>>2]=n;c=k<<3;d=c+n|0;i[e+24>>2]=d;qn(n,255,c);i[e+20>>2]=d}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;c=i[e+36>>2];g=c-l|0;u=g>>2;g:{if(g){if(u>>>0>=1073741824){break g}p=Dm(g);i[e>>2]=p;d=(u<<2)+p|0;i[e+8>>2]=d;f=0;j=qn(p,0,g);i[e+4>>2]=d;d=l-c|0;c=((d|0)>(g|0)?d:g)>>>2|0;d=(g|0)>-1?g:-1;d=o(c,(d|0)<1?d:1);c=d>>>0>1?d:1;h=0;while(1){d=h<<2;i[d+j>>2]=f;f=i[d+l>>2]+f|0;h=h+1|0;if((c|0)!=(h|0)){continue}break}}if(!k){break e}while(1){y=q<<2;g=i[y+m>>2];r=-1;d=q+1|0;c=(d>>>0)%3|0?d:q+ -2|0;if((c|0)!=-1){r=i[(c<<2)+m>>2]}s=-1;f=(q>>>0)%3|0;c=(f?-1:2)+q|0;if((c|0)!=-1){s=i[(c<<2)+m>>2]}h:{if(!(((g|0)!=(s|0)?!((r|0)==(s|0)|(g|0)==(r|0)):0)|f)){i[a+40>>2]=i[a+40>>2]+1;d=q+3|0;break h}c=s<<2;v=i[c+l>>2];i:{j:{if((v|0)<1){break j}f=i[c+p>>2];h=0;while(1){j=(f<<3)+n|0;c=i[j>>2];if((c|0)==-1){break j}k:{if((c|0)!=(r|0)){break k}t=i[j+4>>2];if((t|0)!=-1){c=i[(t<<2)+m>>2]}else{c=-1}if((c|0)==(g|0)){break k}while(1){l:{c=f;h=h+1|0;if((h|0)>=(v|0)){break l}z=(c<<3)+n|0;f=c+1|0;g=(f<<3)+n|0;j=i[g>>2];i[z>>2]=j;i[z+4>>2]=i[g+4>>2];if((j|0)!=-1){continue}}break}i[(c<<3)+n>>2]=-1;if((t|0)==-1){break j}c=i[w>>2];i[c+y>>2]=t;i[c+(t<<2)>>2]=q;break i}f=f+1|0;h=h+1|0;if((v|0)!=(h|0)){continue}break}}f=r<<2;c=i[f+l>>2];if((c|0)<1){break i}f=i[f+p>>2];h=0;while(1){j=(f<<3)+n|0;if(i[j>>2]==-1){i[j>>2]=s;i[j+4>>2]=q;break i}f=f+1|0;h=h+1|0;if((c|0)!=(h|0)){continue}break}}}q=d;if(d>>>0<k>>>0){continue}break}break e}Sm();x()}Sm();x()}i[b>>2]=u;if(p){i[e+4>>2]=p;nn(p)}a=i[e+16>>2];if(a){i[e+20>>2]=a;nn(a)}a=i[e+32>>2];if(!a){break a}i[e+36>>2]=a;nn(a)}J=e+48|0;return(b|0)!=0}function Rg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;if((b|0)==-1){return 1}d=(b>>>0)/3|0;if(!(i[i[a+24>>2]+(d>>>3&268435452)>>2]>>>d&1)){c=i[a+48>>2];i[a+52>>2]=c;a:{if((c|0)!=i[a+56>>2]){i[c>>2]=b;i[a+52>>2]=c+4;break a}e=Dm(4);i[e>>2]=b;f=e+4|0;i[a+56>>2]=f;i[a+52>>2]=f;i[a+48>>2]=e;if(!c){break a}nn(c)}e=i[a+4>>2];c=-1;f=b+1|0;f=(f>>>0)%3|0?f:b+ -2|0;if((f|0)!=-1){c=i[i[e>>2]+(f<<2)>>2]}h=(b-o(d,3)|0?-1:2)+b|0;if((h|0)==-1){return 0}if((c|0)==-1){return 0}d=i[i[e>>2]+(h<<2)>>2];if((d|0)==-1){return 0}b=i[a+36>>2];e=b+(c>>>3&536870908)|0;g=i[e>>2];j=1<<c;if(!(g&j)){i[e>>2]=g|j;Hg(a+8|0,c,f);b=i[a+36>>2]}b=(d>>>3&536870908)+b|0;c=i[b>>2];e=1<<d;if(!(c&e)){i[b>>2]=c|e;Hg(a+8|0,d,h)}d=i[a+52>>2];if((d|0)==i[a+48>>2]){return 1}k=a+48|0;l=a+8|0;while(1){d=d+ -4|0;b=i[d>>2];c=(b>>>0)/3|0;b:{c:{if((b|0)==-1){break c}e=i[a+24>>2]+(c>>>3&268435452)|0;f=i[e>>2];c=1<<c;if(f&c){break c}i[e>>2]=c|f;while(1){h=i[a+4>>2];c=i[i[h>>2]+(b<<2)>>2];if((c|0)==-1){return 0}d:{d=i[a+36>>2]+(c>>>3&536870908)|0;e=i[d>>2];f=1<<c;e:{if(e&f){break e}g=i[i[h+24>>2]+(c<<2)>>2];if((g|0)!=-1){j=g+1|0;g=(j>>>0)%3|0?j:g+ -2|0;if((g|0)!=-1){h=i[i[h+12>>2]+(g<<2)>>2];if((h|0)!=-1){i[d>>2]=e|f;Hg(l,c,b);c=h+1|0;if((((c>>>0)%3|0?c:h+ -2|0)|0)==-1){break e}d=b+ -2|0;c=b+1|0;b=-1;c=(c>>>0)%3|0?c:d;if((c|0)!=-1){b=i[i[i[a+4>>2]+12>>2]+(c<<2)>>2]}c=(b>>>0)/3|0;g=1<<c;e=i[a+24>>2];j=c>>>5|0;f=i[e+(j<<2)>>2];break d}}}i[d>>2]=e|f;Hg(l,c,b)}d=-1;e=i[a+4>>2];c=-1;f=b+1|0;f=(f>>>0)%3|0?f:b+ -2|0;if((f|0)!=-1){c=i[i[e+12>>2]+(f<<2)>>2]}b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)!=-1){d=i[i[e+12>>2]+(b<<2)>>2]}b=(d|0)==-1;h=b?-1:(d>>>0)/3|0;f=(c>>>0)/3|0;f:{g=(c|0)==-1;if(!g){e=i[a+24>>2];g=g?-1:f;j=g>>>5|0;f=i[e+(j<<2)>>2];g=1<<g;if(!(f&g)){break f}}if(!b){b=d;g=1<<h;e=i[a+24>>2];j=h>>>5|0;f=i[e+(j<<2)>>2];if(!(g&f)){break d}}d=i[a+52>>2]+ -4|0;i[a+52>>2]=d;break b}if(b){b=c;break d}if(i[(h>>>3&536870908)+e>>2]>>>h&1){b=c;break d}b=i[a+52>>2];i[b+ -4>>2]=d;if((b|0)!=i[a+56>>2]){i[b>>2]=c;d=b+4|0;break c}g:{e=i[k>>2];f=b-e|0;h=f>>2;d=h+1|0;if(d>>>0<1073741824){g=f>>1;d=h>>>0<536870911?g>>>0<d>>>0?d:g:1073741823;b=0;h:{if(!d){break h}if(d>>>0>=1073741824){break g}b=Dm(d<<2)}h=b+(h<<2)|0;i[h>>2]=c;c=b+(d<<2)|0;d=h+4|0;if((f|0)>=1){pn(b,e,f)}i[a+56>>2]=c;i[a+52>>2]=d;i[a+48>>2]=b;if(!e){break b}nn(e);d=i[a+52>>2];break b}Sm();x()}Ba(12220);x()}i[(j<<2)+e>>2]=f|g;if((b|0)!=-1){continue}break}return 0}i[a+52>>2]=d}if(i[k>>2]!=(d|0)){continue}break}}return 1}function _c(a,b,c,d){var e=0,f=0,h=p(0),k=0,l=p(0),n=p(0),r=0,s=p(0),t=p(0),v=p(0),y=p(0),z=p(0),A=0,B=0,C=p(0),D=p(0),E=p(0),F=p(0),G=p(0),H=p(0),I=p(0),K=p(0),L=0;e=J-48|0;J=e;r=-1;f=-1;a:{if((b|0)==-1){break a}f=b+1|0;r=(f>>>0)%3|0?f:b+ -2|0;f=b+ -1|0;if((b>>>0)%3|0){break a}f=b+2|0}k=i[a+52>>2];b=i[k>>2];b:{k=i[k+4>>2]-b>>2;A=i[i[a+48>>2]+28>>2];r=i[A+(r<<2)>>2];if(k>>>0<=r>>>0){break b}L=k;k=i[(f<<2)+A>>2];if(L>>>0<=k>>>0){break b}c:{d:{f=i[b+(r<<2)>>2];A=(f|0)>=(d|0);if(A){break d}r=i[b+(k<<2)>>2];if((r|0)>=(d|0)){break d}b=i[a+72>>2];k=(o(b,r)<<2)+c|0;l=p(i[k+4>>2]);b=(o(b,f)<<2)+c|0;z=p(i[b+4>>2]);C=p(i[k>>2]);F=p(i[b>>2]);if(!(C!=F|l!=z)){a=i[a+68>>2];b=a;if(p(q(l))<p(2147483648)){c=~~l}else{c=-2147483648}i[b+4>>2]=c;if(p(q(C))<p(2147483648)){i[a>>2]=~~C;break c}i[a>>2]=-2147483648;break c}d=i[i[a+64>>2]+(d<<2)>>2];i[e+40>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;b=i[a+60>>2];if(!j[b+84|0]){d=i[i[b+68>>2]+(d<<2)>>2]}$c(b,d,g[b+24|0],e+32|0);d=i[i[a+64>>2]+(f<<2)>>2];i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;b=i[a+60>>2];if(!j[b+84|0]){d=i[i[b+68>>2]+(d<<2)>>2]}$c(b,d,g[b+24|0],e+16|0);c=i[i[a+64>>2]+(r<<2)>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;b=i[a+60>>2];if(!j[b+84|0]){c=i[i[b+68>>2]+(c<<2)>>2]}$c(b,c,g[b+24|0],e);D=m[e+40>>2];E=m[e+36>>2];s=m[e+32>>2];H=m[e+16>>2];n=p(m[e>>2]-H);I=m[e+20>>2];t=p(m[e+4>>2]-I);K=m[e+24>>2];v=p(m[e+8>>2]-K);G=p(p(p(p(n*n)+p(0))+p(t*t))+p(v*v));e:{if(!(G>p(0))){y=p(0);if(i[a+88>>2]>257){break e}}s=p(s-H);E=p(E-I);D=p(D-K);h=p(p(p(p(p(n*s)+p(0))+p(t*E))+p(v*D))/G);v=p(D-p(v*h));t=p(E-p(t*h));n=p(s-p(n*h));y=p(w(p(p(p(v*v)+p(p(t*t)+p(p(n*n)+p(0))))/G)))}s=y;c=a+80|0;b=i[c>>2]+ -1|0;d=i[i[a+76>>2]+(b>>>3&536870908)>>2];i[c>>2]=b;n=p(l-z);y=p(p(n*h)+z);z=p(C-F);l=p(z*s);b=d>>>b&1;l=p(y+(b?l:p(-l)));y=p(p(z*h)+F);h=p(n*s);h=p(y+(b?p(-h):h));f:{if(h!=h){b=i[a+68>>2];i[b>>2]=-2147483648;break f}b=i[a+68>>2];a=b;B=u(+h+.5);g:{if(q(B)<2147483648){c=~~B;break g}c=-2147483648}i[a>>2]=c}B=u(+l+.5);h:{if(q(B)<2147483648){a=~~B;break h}a=-2147483648}i[b+4>>2]=l!=l?-2147483648:a;break c}i:{if(!A){b=i[a+72>>2];d=o(f,b);break i}if((d|0)<=0){if(i[a+72>>2]<1){break c}c=i[a+68>>2];b=0;while(1){i[c+(b<<2)>>2]=0;b=b+1|0;if((b|0)<i[a+72>>2]){continue}break}break c}b=i[a+72>>2];d=o(b,d+ -1|0)}if((b|0)<1){break c}f=i[a+68>>2];b=0;while(1){i[f+(b<<2)>>2]=i[(b+d<<2)+c>>2];b=b+1|0;if((b|0)<i[a+72>>2]){continue}break}}J=e+48|0;return}Tm();x()}function Ad(a,b,c,d){var e=0,f=0,h=0,k=p(0),l=p(0),n=0,r=p(0),s=p(0),t=p(0),v=p(0),y=p(0),z=p(0),A=0,B=0,C=p(0),D=p(0),E=p(0),F=p(0),G=p(0),H=0,I=p(0),K=p(0),L=p(0);e=J-48|0;J=e;f=-1;n=-1;a:{if((b|0)==-1){break a}h=((b>>>0)%3|0?-1:2)+b|0;A=i[a+48>>2];H=b+1|0;b=(H>>>0)%3|0?H:b+ -2|0;if((b|0)!=-1){f=i[i[A>>2]+(b<<2)>>2]}if((h|0)==-1){break a}n=i[i[A>>2]+(h<<2)>>2]}h=i[a+52>>2];b=i[h>>2];h=i[h+4>>2]-b>>2;if(!(h>>>0<=f>>>0|h>>>0<=n>>>0)){b:{c:{f=i[b+(f<<2)>>2];A=(f|0)>=(d|0);if(A){break c}h=i[b+(n<<2)>>2];if((h|0)>=(d|0)){break c}b=i[a+72>>2];n=(o(b,h)<<2)+c|0;l=p(i[n+4>>2]);b=(o(b,f)<<2)+c|0;z=p(i[b+4>>2]);C=p(i[n>>2]);F=p(i[b>>2]);if(!(C!=F|l!=z)){a=i[a+68>>2];b=a;if(p(q(l))<p(2147483648)){c=~~l}else{c=-2147483648}i[b+4>>2]=c;if(p(q(C))<p(2147483648)){i[a>>2]=~~C;break b}i[a>>2]=-2147483648;break b}n=i[i[a+64>>2]+(d<<2)>>2];i[e+40>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;b=i[a+60>>2];if(!j[b+84|0]){n=i[i[b+68>>2]+(n<<2)>>2]}$c(b,n,g[b+24|0],e+32|0);f=i[i[a+64>>2]+(f<<2)>>2];i[e+24>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;b=i[a+60>>2];if(!j[b+84|0]){f=i[i[b+68>>2]+(f<<2)>>2]}$c(b,f,g[b+24|0],e+16|0);c=i[i[a+64>>2]+(h<<2)>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;b=i[a+60>>2];if(!j[b+84|0]){c=i[i[b+68>>2]+(c<<2)>>2]}$c(b,c,g[b+24|0],e);D=m[e+40>>2];E=m[e+36>>2];s=m[e+32>>2];I=m[e+16>>2];r=p(m[e>>2]-I);K=m[e+20>>2];t=p(m[e+4>>2]-K);L=m[e+24>>2];v=p(m[e+8>>2]-L);G=p(p(p(p(r*r)+p(0))+p(t*t))+p(v*v));d:{if(!(G>p(0))){y=p(0);if(i[a+88>>2]>257){break d}}s=p(s-I);E=p(E-K);D=p(D-L);k=p(p(p(p(p(r*s)+p(0))+p(t*E))+p(v*D))/G);v=p(D-p(v*k));t=p(E-p(t*k));r=p(s-p(r*k));y=p(w(p(p(p(v*v)+p(p(t*t)+p(p(r*r)+p(0))))/G)))}s=y;c=a+80|0;b=i[c>>2]+ -1|0;d=i[i[a+76>>2]+(b>>>3&536870908)>>2];i[c>>2]=b;r=p(l-z);y=p(p(r*k)+z);z=p(C-F);l=p(z*s);b=d>>>b&1;l=p(y+(b?l:p(-l)));y=p(p(z*k)+F);k=p(r*s);k=p(y+(b?p(-k):k));e:{if(k!=k){b=i[a+68>>2];i[b>>2]=-2147483648;break e}b=i[a+68>>2];a=b;B=u(+k+.5);f:{if(q(B)<2147483648){c=~~B;break f}c=-2147483648}i[a>>2]=c}B=u(+l+.5);g:{if(q(B)<2147483648){a=~~B;break g}a=-2147483648}i[b+4>>2]=l!=l?-2147483648:a;break b}h:{if(!A){b=i[a+72>>2];d=o(f,b);break h}if((d|0)<=0){if(i[a+72>>2]<1){break b}c=i[a+68>>2];b=0;while(1){i[c+(b<<2)>>2]=0;b=b+1|0;if((b|0)<i[a+72>>2]){continue}break}break b}b=i[a+72>>2];d=o(b,d+ -1|0)}if((b|0)<1){break b}f=i[a+68>>2];b=0;while(1){i[f+(b<<2)>>2]=i[(b+d<<2)+c>>2];b=b+1|0;if((b|0)<i[a+72>>2]){continue}break}}J=e+48|0;return}Tm();x()}function nd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=J-32|0;J=h;i[a+68>>2]=f;e=i[a+56>>2];f=i[e>>2];j=i[e+4>>2];i[h+24>>2]=0;i[h+16>>2]=0;i[h+20>>2]=0;g=j-f|0;if((g|0)>=1){a:{d=i[e>>2];b:{if((d|0)==i[e+4>>2]){e=i[h+8>>2];break b}n=a+60|0;e=f-j|0;e=((e|0)>(g|0)?e:g)>>>2|0;o=e>>>0>1?e:1;p=a+112|0;while(1){od(n,i[(m<<2)+d>>2],h+16|0);e=i[h+20>>2];j=e>>31;f=i[h+16>>2];g=f>>31;l=i[h+24>>2];k=l>>31;d=0;k=k^k+l;j=k+((j^e+j)+(g^f+g)|0)|0;if(j>>>0<k>>>0){d=1}g=j;c:{if(!(d|g)){i[h+16>>2]=i[a+108>>2];break c}j=i[a+108>>2];k=j>>31;e=Hn(Gn(j,k,e,e>>31),L,g,d);i[h+20>>2]=e;d=Hn(Gn(j,k,f,f>>31),L,g,d);i[h+16>>2]=d;if((l|0)>=0){i[h+24>>2]=(j+((d|0)<0?d:0-d|0)|0)+((e|0)<0?e:0-e|0);break c}f=d;d=d>>31;f=(f+d^d)-j|0;d=e>>31;i[h+24>>2]=f+(d+e^d)}d=Ce(p);f=i[h+16>>2];if(d){i[h+24>>2]=0-i[h+24>>2];i[h+20>>2]=0-i[h+20>>2];f=0-f|0;i[h+16>>2]=f}e=i[h+20>>2];d:{if((f|0)>=0){d=i[a+108>>2];f=d+i[h+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<=-1){f=i[h+24>>2];d=f>>31;d=d^d+f;break e}f=i[h+24>>2];d=i[a+100>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break d}f=i[a+100>>2]+((e|0)<0?e:0-e|0)|0}f:{if(!(d|f)){f=i[a+100>>2];e=f;break f}j=i[a+100>>2];g:{h:{i:{if(!d){if((f|0)==(j|0)){e=f;break f}e=0;if(f|j){break i}f=0;break f}if(!((d|0)!=(j|0)|f)){f=d;e=f;break f}if((d|0)!=(j|0)){break g}g=i[a+108>>2];break h}g=i[a+108>>2];if((g|0)<(f|0)){f=(g<<1)-f|0;break f}if(j){break g}}j=d;if((g|0)<=(f|0)){break g}f=(g<<1)-f|0;e=d;break f}j:{if((f|0)!=(j|0)){break j}e=i[a+108>>2];if((e|0)<=(d|0)){break j}e=(e<<1)-d|0;break f}if(f){e=d;break f}f=0;e=i[a+108>>2];if((e|0)>=(d|0)){e=d;break f}e=(e<<1)-d|0}i[h+12>>2]=f;k:{if(i[a+8>>2]<1){break k}f=0;d=e;while(1){g=i[a+16>>2];l:{if((d|0)>(g|0)){j=i[a+32>>2];i[j+(f<<2)>>2]=g;break l}j=i[a+32>>2];g=j+(f<<2)|0;l=i[a+12>>2];if((d|0)<(l|0)){i[g>>2]=l;break l}i[g>>2]=d}f=f+1|0;g=i[a+8>>2];if((f|0)<(g|0)){d=i[(h+8|0)+(f<<2)>>2];continue}break}d=0;if((g|0)<1){break k}f=m<<3;l=f+c|0;k=b+f|0;while(1){g=d<<2;f=g+l|0;g=i[g+k>>2]+i[g+j>>2]|0;i[f>>2]=g;m:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break m}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)<i[a+8>>2]){continue}break}}m=m+1|0;if((o|0)==(m|0)){break a}f=i[a+56>>2];d=i[f>>2];if(i[f+4>>2]-d>>2>>>0>m>>>0){continue}break}}i[h+8>>2]=e;Tm();x()}i[h+8>>2]=e}J=h+32|0;return 1}function Hd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;h=J-32|0;J=h;i[a+68>>2]=f;e=i[a+56>>2];f=i[e>>2];j=i[e+4>>2];i[h+24>>2]=0;i[h+16>>2]=0;i[h+20>>2]=0;g=j-f|0;if((g|0)>=1){a:{d=i[e>>2];b:{if((d|0)==i[e+4>>2]){e=i[h+8>>2];break b}n=a+60|0;e=f-j|0;e=((e|0)>(g|0)?e:g)>>>2|0;o=e>>>0>1?e:1;p=a+112|0;while(1){Id(n,i[(m<<2)+d>>2],h+16|0);e=i[h+20>>2];j=e>>31;f=i[h+16>>2];g=f>>31;l=i[h+24>>2];k=l>>31;d=0;k=k^k+l;j=k+((j^e+j)+(g^f+g)|0)|0;if(j>>>0<k>>>0){d=1}g=j;c:{if(!(d|g)){i[h+16>>2]=i[a+108>>2];break c}j=i[a+108>>2];k=j>>31;e=Hn(Gn(j,k,e,e>>31),L,g,d);i[h+20>>2]=e;d=Hn(Gn(j,k,f,f>>31),L,g,d);i[h+16>>2]=d;if((l|0)>=0){i[h+24>>2]=(j+((d|0)<0?d:0-d|0)|0)+((e|0)<0?e:0-e|0);break c}f=d;d=d>>31;f=(f+d^d)-j|0;d=e>>31;i[h+24>>2]=f+(d+e^d)}d=Ce(p);f=i[h+16>>2];if(d){i[h+24>>2]=0-i[h+24>>2];i[h+20>>2]=0-i[h+20>>2];f=0-f|0;i[h+16>>2]=f}e=i[h+20>>2];d:{if((f|0)>=0){d=i[a+108>>2];f=d+i[h+24>>2]|0;d=d+e|0;break d}e:{if((e|0)<=-1){f=i[h+24>>2];d=f>>31;d=d^d+f;break e}f=i[h+24>>2];d=i[a+100>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break d}f=i[a+100>>2]+((e|0)<0?e:0-e|0)|0}f:{if(!(d|f)){f=i[a+100>>2];e=f;break f}j=i[a+100>>2];g:{h:{i:{if(!d){if((f|0)==(j|0)){e=f;break f}e=0;if(f|j){break i}f=0;break f}if(!((d|0)!=(j|0)|f)){f=d;e=f;break f}if((d|0)!=(j|0)){break g}g=i[a+108>>2];break h}g=i[a+108>>2];if((g|0)<(f|0)){f=(g<<1)-f|0;break f}if(j){break g}}j=d;if((g|0)<=(f|0)){break g}f=(g<<1)-f|0;e=d;break f}j:{if((f|0)!=(j|0)){break j}e=i[a+108>>2];if((e|0)<=(d|0)){break j}e=(e<<1)-d|0;break f}if(f){e=d;break f}f=0;e=i[a+108>>2];if((e|0)>=(d|0)){e=d;break f}e=(e<<1)-d|0}i[h+12>>2]=f;k:{if(i[a+8>>2]<1){break k}f=0;d=e;while(1){g=i[a+16>>2];l:{if((d|0)>(g|0)){j=i[a+32>>2];i[j+(f<<2)>>2]=g;break l}j=i[a+32>>2];g=j+(f<<2)|0;l=i[a+12>>2];if((d|0)<(l|0)){i[g>>2]=l;break l}i[g>>2]=d}f=f+1|0;g=i[a+8>>2];if((f|0)<(g|0)){d=i[(h+8|0)+(f<<2)>>2];continue}break}d=0;if((g|0)<1){break k}f=m<<3;l=f+c|0;k=b+f|0;while(1){g=d<<2;f=g+l|0;g=i[g+k>>2]+i[g+j>>2]|0;i[f>>2]=g;m:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break m}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)<i[a+8>>2]){continue}break}}m=m+1|0;if((o|0)==(m|0)){break a}f=i[a+56>>2];d=i[f>>2];if(i[f+4>>2]-d>>2>>>0>m>>>0){continue}break}}i[h+8>>2]=e;Tm();x()}i[h+8>>2]=e}J=h+32|0;return 1}function sc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,j=0,k=0,l=0,m=0;a:{b:{c:{d:{e:{f:{g:{h:{d=i[a+8>>2];switch(i[d+28>>2]+ -1|0){case 0:break c;case 3:break d;case 2:break e;case 5:break f;case 4:break g;case 1:break h;default:break a}}f=g[d+24|0];j=Dm((f|0)>-1?f:-1);c=i[a+16>>2];d=0;i:{if(!i[c+80>>2]){break i}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}while(1){c=0;if((f|0)>0){while(1){g[c+j|0]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}pn(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,f);l=f+l|0;e=e+1|0;if((e|0)!=(b|0)){continue}break}break b}e=g[d+24|0];m=e<<2;j=Dm((e|0)!=(e&1073741823)?-1:m);c=i[a+16>>2];d=0;j:{if(!i[c+80>>2]){break j}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}while(1){c=0;if((e|0)>0){while(1){i[(c<<2)+j>>2]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}pn(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,m);l=l+m|0;f=f+1|0;if((f|0)!=(b|0)){continue}break}break b}e=g[d+24|0];m=e<<2;j=Dm((e|0)!=(e&1073741823)?-1:m);c=i[a+16>>2];d=0;k:{if(!i[c+80>>2]){break k}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}while(1){c=0;if((e|0)>0){while(1){i[(c<<2)+j>>2]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}pn(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,m);l=l+m|0;f=f+1|0;if((f|0)!=(b|0)){continue}break}break b}e=g[d+24|0];d=e+e|0;j=Dm(d>>>0<e>>>0?-1:d);c=i[a+16>>2];d=0;l:{if(!i[c+80>>2]){break l}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}m=e<<1;while(1){c=0;if((e|0)>0){while(1){h[(c<<1)+j>>1]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}pn(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,m);l=l+m|0;f=f+1|0;if((f|0)!=(b|0)){continue}break}break b}e=g[d+24|0];d=e+e|0;j=Dm(d>>>0<e>>>0?-1:d);c=i[a+16>>2];d=0;m:{if(!i[c+80>>2]){break m}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}m=e<<1;while(1){c=0;if((e|0)>0){while(1){h[(c<<1)+j>>1]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}pn(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,m);l=l+m|0;f=f+1|0;if((f|0)!=(b|0)){continue}break}break b}f=g[d+24|0];j=Dm((f|0)>-1?f:-1);c=i[a+16>>2];d=0;n:{if(!i[c+80>>2]){break n}d=i[i[c>>2]>>2]+i[c+48>>2]|0}if(!b){break b}while(1){c=0;if((f|0)>0){while(1){g[c+j|0]=i[d+(k<<2)>>2];k=k+1|0;c=c+1|0;if((f|0)!=(c|0)){continue}break}}pn(i[i[i[a+8>>2]+64>>2]>>2]+l|0,j,f);l=f+l|0;e=e+1|0;if((e|0)!=(b|0)){continue}break}}nn(j);j=1}return j|0}function jl(a,b){var c=0,d=0,e=0,f=0,h=0,k=0;a:{b:{d=b;h=i[b>>2];if(h){c=i[b+4>>2];if(!c){break b}while(1){d=c;c=i[c>>2];if(c){continue}break}}h=i[d+4>>2];if(h){break b}h=0;e=1;break a}i[h+8>>2]=i[d+8>>2];e=0}f=i[d+8>>2];c=i[f>>2];c:{if((d|0)==(c|0)){i[f>>2]=h;if((a|0)==(d|0)){c=0;a=h;break c}c=i[f+4>>2];break c}i[f+4>>2]=h}d:{e:{f:{k=!j[d+12|0];if((b|0)!=(d|0)){f=i[b+8>>2];i[d+8>>2]=f;i[f+((i[i[b+8>>2]>>2]!=(b|0))<<2)>>2]=d;f=i[b>>2];i[d>>2]=f;i[f+8>>2]=d;f=i[b+4>>2];i[d+4>>2]=f;if(f){i[f+8>>2]=d}g[d+12|0]=j[b+12|0];a=(a|0)==(b|0)?d:a}if(!(k|!a)){if(e){while(1){b=j[c+12|0];g:{e=i[c+8>>2];if(i[e>>2]!=(c|0)){if(!b){g[c+12|0]=1;g[e+12|0]=0;d=i[e+4>>2];b=i[d>>2];i[e+4>>2]=b;if(b){i[b+8>>2]=e}i[d+8>>2]=i[e+8>>2];b=i[e+8>>2];i[(((e|0)!=i[b>>2])<<2)+b>>2]=d;i[d>>2]=e;i[e+8>>2]=d;b=i[c>>2];a=(b|0)==(a|0)?c:a;c=i[b+4>>2]}d=i[c>>2];if(!(j[d+12|0]?0:d)){b=i[c+4>>2];if(j[b+12|0]?0:b){break f}g[c+12|0]=0;c=i[c+8>>2];h:{if((c|0)==(a|0)){c=a;break h}if(j[c+12|0]){break g}}g[c+12|0]=1;return}b=i[c+4>>2];if(b){break f}break e}i:{if(b){b=c;break i}g[c+12|0]=1;g[e+12|0]=0;b=i[c+4>>2];i[e>>2]=b;if(b){i[b+8>>2]=e}i[c+8>>2]=i[e+8>>2];d=i[e+8>>2];j:{if((e|0)==i[d>>2]){i[d>>2]=c;b=i[e>>2];break j}i[d+4>>2]=c}i[c+4>>2]=e;i[e+8>>2]=c;a=(a|0)==(e|0)?c:a}d=i[b>>2];k:{if(!(!d|j[d+12|0])){c=b;break k}c=i[b+4>>2];if(!(j[c+12|0]?0:c)){g[b+12|0]=0;c=i[b+8>>2];if(j[c+12|0]?(c|0)!=(a|0):0){break g}g[c+12|0]=1;return}if(d){if(!j[d+12|0]){c=b;break k}c=i[b+4>>2]}g[c+12|0]=1;g[b+12|0]=0;a=i[c>>2];i[b+4>>2]=a;if(a){i[a+8>>2]=b}i[c+8>>2]=i[b+8>>2];a=i[b+8>>2];i[((i[a>>2]!=(b|0))<<2)+a>>2]=c;i[c>>2]=b;i[b+8>>2]=c;d=b}a=c;c=i[c+8>>2];g[a+12|0]=j[c+12|0];g[c+12|0]=1;g[d+12|0]=1;b=i[c>>2];a=i[b+4>>2];i[c>>2]=a;if(a){i[a+8>>2]=c}i[b+8>>2]=i[c+8>>2];a=i[c+8>>2];i[(((c|0)!=i[a>>2])<<2)+a>>2]=b;i[b+4>>2]=c;i[c+8>>2]=b;return}b=i[c+8>>2];c=i[((i[b>>2]==(c|0))<<2)+b>>2];continue}}g[h+12|0]=1}return}if(j[b+12|0]){break e}d=c;break d}g[d+12|0]=1;g[c+12|0]=0;a=i[d+4>>2];i[c>>2]=a;if(a){i[a+8>>2]=c}i[d+8>>2]=i[c+8>>2];a=i[c+8>>2];i[((i[a>>2]!=(c|0))<<2)+a>>2]=d;i[d+4>>2]=c;i[c+8>>2]=d;b=c}c=i[d+8>>2];g[d+12|0]=j[c+12|0];g[c+12|0]=1;g[b+12|0]=1;b=i[c+4>>2];a=i[b>>2];i[c+4>>2]=a;if(a){i[a+8>>2]=c}i[b+8>>2]=i[c+8>>2];a=i[c+8>>2];i[(((c|0)!=i[a>>2])<<2)+a>>2]=b;i[b>>2]=c;i[c+8>>2]=b}function Ck(a,b){var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=J-48|0;J=k;i[a+36>>2]=b;p=a+24|0;d=i[a+24>>2];c=i[a+28>>2]-d>>2;a:{if(c>>>0<b>>>0){Dk(p,b-c|0);break a}if(c>>>0<=b>>>0){break a}i[a+28>>2]=d+(b<<2)}g[k+16|0]=0;l=Ek(k+32|0,b,k+16|0);c=i[a>>2];d=i[a+4>>2];g[k+8|0]=0;q=Ek(k+16|0,d-c>>2,k+8|0);b:{h=i[a+4>>2];c=i[a>>2];if(h-c>>2>>>0<3){break b}t=a+48|0;while(1){m=o(r,3);e=i[(m<<2)+c>>2];d=m+1|0;c:{d:{if((d|0)==-1){j=0;f=-1;break d}f=i[(d<<2)+c>>2];j=m+2|0;d=-1;if((j|0)==-1){break c}}d=i[(j<<2)+c>>2]}e:{if(!((d|0)==(f|0)|(e|0)==(f|0)|(d|0)==(e|0))){j=i[q>>2];n=0;while(1){d=m+n|0;f:{if(i[(d>>>3&536870908)+j>>2]>>>d&1){break f}h=i[i[a>>2]+(d<<2)>>2];i[k+8>>2]=h;c=1<<h;e=i[l>>2];f=h>>>5|0;j=i[e+(f<<2)>>2];s=c&j;if(s){$f(p,14284);Fk(t,k+8|0);c=i[l+4>>2];f=i[l+8>>2];if((c|0)==f<<5){if((c+1|0)<=-1){break e}e=l;if(c>>>0<=1073741822){h=c+32&-32;c=f<<6;c=c>>>0<h>>>0?h:c}else{c=2147483647}Qc(e,c);c=i[l+4>>2]}i[l+4>>2]=c+1;e=i[l>>2];f=e+(c>>>3&536870908)|0;h=i[f>>2];u=f,v=Kn(c)&h,i[u>>2]=v;i[k+8>>2]=b;c=1<<b;f=b>>>5|0;j=i[(f<<2)+e>>2];b=b+1|0}i[(f<<2)+e>>2]=c|j;j=i[q>>2];c=d;g:{while(1){if((c|0)==-1){break g}e=(c>>>3&536870908)+j|0;i[e>>2]=i[e>>2]|1<<c;e=i[k+8>>2];i[i[p>>2]+(e<<2)>>2]=c;if(s){i[i[a>>2]+(c<<2)>>2]=e}h=d;f=c+1|0;c=(f>>>0)%3|0?f:c+ -2|0;e=-1;h:{if((c|0)==-1){break h}f=i[i[a+12>>2]+(c<<2)>>2];e=-1;if((f|0)==-1){break h}c=f+1|0;e=(c>>>0)%3|0?c:f+ -2|0}c=e;if((h|0)!=(c|0)){continue}break}if((d|0)!=-1){break f}}d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)==-1){break f}d=i[i[a+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}c=d+((d>>>0)%3|0?-1:2)|0;if((c|0)==-1){break f}while(1){d=(c>>>3&536870908)+j|0;i[d>>2]=i[d>>2]|1<<c;if(s){i[i[a>>2]+(c<<2)>>2]=i[k+8>>2]}d=((c>>>0)%3|0?-1:2)+c|0;if((d|0)==-1){break f}d=i[i[a+12>>2]+(d<<2)>>2];if((d|0)==-1){break f}c=d+((d>>>0)%3|0?-1:2)|0;if((c|0)!=-1){continue}break}}n=n+1|0;if((n|0)!=3){continue}break}c=i[a>>2];h=i[a+4>>2]}r=r+1|0;if(r>>>0<(h-c>>2>>>0)/3>>>0){continue}break b}break}Sm();x()}j=0;i[a+44>>2]=0;b=i[l>>2];c=i[l+4>>2];d=c>>>5|0;f=c&31;if(d|f){h=(d<<2)+b|0;c=0;e=b;while(1){if(!(i[e>>2]>>>c&1)){j=j+1|0;i[a+44>>2]=j}d=(c|0)==31;c=d?0:c+1|0;e=d?e+4|0:e;if((h|0)!=(e|0)|(c|0)!=(f|0)){continue}break}}a=i[q>>2];if(a){nn(a);b=i[l>>2]}if(b){nn(b)}J=k+48|0}function Pa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;g=J-96|0;J=g;a:{b:{if(j[i[a+28>>2]+36|0]<=1){f=i[b+12>>2];c=i[b+20>>2];h=i[b+16>>2];d=h+4|0;if(d>>>0<4){c=c+1|0}e=d;d=c;if((f|0)<(c|0)?1:(f|0)<=(c|0)?l[b+8>>2]<e>>>0:0){break a}c=h+i[b>>2]|0;h=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=e;i[b+20>>2]=d;break b}if(!Qa(1,g+92|0,b)){break a}h=i[g+92>>2]}if(!h){break a}d=i[b+8>>2];c=i[b+16>>2];c=Gn(d-c|0,i[b+12>>2]-(i[b+20>>2]+(d>>>0<c>>>0)|0)|0,5,0)>>>0<h>>>0;d=L;if((d|0)<0?1:(d|0)<=0?c:0){break a}c=i[a+4>>2];d=i[a+8>>2]-c>>2;c:{if(h>>>0>d>>>0){Ra(a+4|0,h-d|0);break c}if(h>>>0>=d>>>0){break c}i[a+8>>2]=c+(h<<2)}y=h>>>0>1?h:1;u=a+16|0;v=i[a+32>>2];w=1;while(1){d:{q=i[b+8>>2];m=i[b+16>>2];e=i[b+12>>2];c=e;d=i[b+20>>2];if((c|0)<(d|0)?1:(c|0)<=(d|0)?q>>>0<=m>>>0:0){break d}s=i[b>>2];x=j[s+m|0];c=d;n=m+1|0;if(n>>>0<1){c=c+1|0}f=b;i[b+16>>2]=n;i[b+20>>2]=c;if((e|0)<(c|0)?1:(e|0)<=(c|0)?q>>>0<=n>>>0:0){break d}n=j[n+s|0];c=d;p=m+2|0;if(p>>>0<2){c=c+1|0}i[b+16>>2]=p;i[f+20>>2]=c;if((e|0)<(c|0)?1:(e|0)<=(c|0)?q>>>0<=p>>>0:0){break d}p=j[p+s|0];c=d;t=m+3|0;if(t>>>0<3){c=c+1|0}i[b+16>>2]=t;i[f+20>>2]=c;if((e|0)<(c|0)?1:(e|0)<=(c|0)?q>>>0<=t>>>0:0){break d}e=j[t+s|0];c=d;d=m+4|0;if(d>>>0<4){c=c+1|0}i[b+16>>2]=d;i[f+20>>2]=c;if(!p|(x>>>0>4|(n+ -1&255)>>>0>10)){break d}m=Ea(g+24|0);d=o(Fh(n),p);Fa(m,x,p<<24>>24,n,(e|0)!=0,d,d>>31);d=k[i[a+28>>2]+36>>1];e:{if((d<<24|d<<8&16711680)>>>16>>>0<=258){f=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];d=e+2|0;if(d>>>0<2){c=c+1|0}q=d;d=c;if((f|0)<(c|0)?1:(f|0)<=(c|0)?l[b+8>>2]<q>>>0:0){break d}c=e+i[b>>2]|0;c=j[c|0]|j[c+1|0]<<8;i[b+16>>2]=q;i[b+20>>2]=d;i[g+20>>2]=c;break e}if(!Qa(1,g+20|0,b)){break d}c=i[g+20>>2]}i[g+84>>2]=c;d=Dm(96);Ja(d,m);i[g+16>>2]=d;d=pl(v,g+16|0);f=i[g+16>>2];i[g+16>>2]=0;if(f){Sa(f)}e=d<<2;i[i[e+i[v+8>>2]>>2]+60>>2]=c;i[i[a+4>>2]+(r<<2)>>2]=d;c=i[a+16>>2];f=i[a+20>>2]-c>>2;f:{if((d|0)<(f|0)){break f}i[g+12>>2]=-1;d=d+1|0;if(d>>>0>f>>>0){Ta(u,d-f|0,g+12|0);c=i[u>>2];break f}if(d>>>0>=f>>>0){break f}i[a+20>>2]=(d<<2)+c}i[c+e>>2]=r;r=r+1|0;w=r>>>0<h>>>0;if((r|0)!=(y|0)){continue}}break}r=w^1}J=g+96|0;return r&1}function xl(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0;h=J-672|0;J=h;g=i[b+12>>2];a:{e=i[b+20>>2];f=i[b+16>>2];d=f+4|0;if(d>>>0<4){e=e+1|0}b:{if((g|0)<(e|0)?1:(g|0)<=(e|0)?l[b+8>>2]<d>>>0:0){break b}d=f+i[b>>2]|0;k=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=k;d=i[b+20>>2];g=d;n=i[b+16>>2];e=n+4|0;if(e>>>0<4){d=d+1|0}i[b+16>>2]=e;i[b+20>>2]=d;if(k>>>0>31){break b}f=i[b+12>>2];d=n+8|0;if(d>>>0<8){g=g+1|0}if((f|0)<(g|0)?1:(f|0)<=(g|0)?l[b+8>>2]<d>>>0:0){break b}d=e+i[b>>2]|0;i[a+4>>2]=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);d=i[b+20>>2];g=d;n=i[b+16>>2];e=n+4|0;if(e>>>0<4){d=d+1|0}i[b+16>>2]=e;i[b+20>>2]=d;k=i[b+12>>2];d=g;f=n+8|0;if(f>>>0<8){d=d+1|0}if((k|0)<(d|0)?1:(k|0)<=(d|0)?l[b+8>>2]<f>>>0:0){break b}d=e+i[b>>2]|0;k=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+12>>2]=k;g=i[b+20>>2];f=g;d=b;p=d;n=i[d+16>>2];e=n+4|0;if(e>>>0<4){g=g+1|0}i[p+16>>2]=e;i[d+20>>2]=g;d=i[a+20>>2];if((d|0)!=(k|0)?d:0){break b}g=i[b+12>>2];d=f;f=n+8|0;if(f>>>0<8){d=d+1|0}if((g|0)<(d|0)?1:(g|0)<=(d|0)?l[b+8>>2]<f>>>0:0){break b}d=e+i[b>>2]|0;g=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+16>>2]=g;d=b;p=d;e=i[d+20>>2];f=i[d+16>>2]+4|0;if(f>>>0<4){e=e+1|0}i[p+16>>2]=f;i[d+20>>2]=e;if(g>>>0>=7){i[h>>2]=g;wn(14876,h);break b}i[h+664>>2]=c;c:{if(!k){break c}e=i[c>>2];d:{if((i[c+8>>2]-e|0)/12>>>0>=k>>>0){break d}if(k>>>0>=357913942){break a}m=i[c+4>>2];d=o(k,12);f=Dm(d);g=d+f|0;d=f+o((m-e|0)/12|0,12)|0;f=d;if((e|0)!=(m|0)){f=d;while(1){f=f+ -12|0;m=m+ -12|0;i[f>>2]=i[m>>2];i[f+4>>2]=i[m+4>>2];i[f+8>>2]=i[m+8>>2];if((e|0)!=(m|0)){continue}break}}i[c+8>>2]=g;i[c+4>>2]=d;i[c>>2]=f;if(!e){break d}nn(e)}m=0;e:{switch(i[a+16>>2]){case 0:d=gb(h+8|0,3);yl(d,b,h+664|0);fb(d);break c;case 1:d=gb(h+8|0,3);zl(d,b,h+664|0);fb(d);break c;case 2:d=kb(h+8|0,3);Al(d,b,h+664|0);jb(d);break c;case 3:d=kb(h+8|0,3);Bl(d,b,h+664|0);jb(d);break c;case 4:d=ob(h+8|0,3);Cl(d,b,h+664|0);nb(d);break c;case 5:d=ob(h+8|0,3);Dl(d,b,h+664|0);nb(d);break c;case 6:break e;default:break b}}d=ob(h+8|0,3);El(d,b,h+664|0);nb(d)}m=i[a+12>>2]==((i[c+4>>2]-i[c>>2]|0)/12|0)}J=h+672|0;return m}Ba(14937);x()}function ke(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,n=0,o=0,q=0,r=0,s=0;g=J-48|0;J=g;d=i[a+8>>2];if(d+ -2>>>0<=28){i[a+76>>2]=d;e=-1<<d;d=-2-e|0;i[a+84>>2]=d;i[a+80>>2]=e^-1;i[a+92>>2]=(d|0)/2;m[a+88>>2]=p(2)/p(d|0)}i[a+52>>2]=f;e=i[a+40>>2];f=i[e>>2];h=i[e+4>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{j=h-f|0;if((j|0)<1){break a}d=i[e>>2];if((d|0)!=i[e+4>>2]){o=a+8|0;q=a+44|0;e=f-h|0;e=((e|0)>(j|0)?e:j)>>>2|0;r=e>>>0>1?e:1;s=a+96|0;while(1){Id(q,i[(l<<2)+d>>2],g+8|0);e=i[g+12>>2];h=e>>31;f=i[g+8>>2];j=f>>31;n=i[g+16>>2];k=n>>31;d=0;k=k^k+n;h=k+((h^e+h)+(j^f+j)|0)|0;if(h>>>0<k>>>0){d=1}b:{if(!(d|h)){i[g+8>>2]=i[a+92>>2];break b}j=i[a+92>>2];k=j>>31;e=Hn(Gn(j,k,e,e>>31),L,h,d);i[g+12>>2]=e;d=Hn(Gn(j,k,f,f>>31),L,h,d);i[g+8>>2]=d;if((n|0)>=0){i[g+16>>2]=(j+((d|0)<0?d:0-d|0)|0)+((e|0)<0?e:0-e|0);break b}f=d;d=d>>31;f=(f+d^d)-j|0;d=e>>31;i[g+16>>2]=f+(d+e^d)}d=Ce(s);f=i[g+8>>2];if(d){i[g+16>>2]=0-i[g+16>>2];i[g+12>>2]=0-i[g+12>>2];f=0-f|0;i[g+8>>2]=f}e=i[g+12>>2];c:{if((f|0)>=0){d=i[a+92>>2];f=d+i[g+16>>2]|0;d=d+e|0;break c}d:{if((e|0)<=-1){f=i[g+16>>2];d=f>>31;d=d^d+f;break d}f=i[g+16>>2];d=i[a+84>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break c}f=i[a+84>>2]+((e|0)<0?e:0-e|0)|0}e:{if(!(d|f)){f=i[a+84>>2];e=f;break e}h=i[a+84>>2];f:{g:{h:{if(!d){if((f|0)==(h|0)){e=f;break e}e=0;if(f|h){break h}f=0;break e}if(!((d|0)!=(h|0)|f)){f=d;e=d;break e}if((d|0)!=(h|0)){break f}j=i[a+92>>2];break g}j=i[a+92>>2];if((j|0)<(f|0)){f=(j<<1)-f|0;break e}if(h){break f}}h=d;if((j|0)<=(f|0)){break f}f=(j<<1)-f|0;e=d;break e}i:{if((f|0)!=(h|0)){break i}e=i[a+92>>2];if((e|0)<=(d|0)){break i}e=(e<<1)-d|0;break e}if(f){e=d;break e}f=0;e=i[a+92>>2];if((e|0)>=(d|0)){e=d;break e}e=(e<<1)-d|0}d=l<<3;h=d+b|0;j=i[h+4>>2];h=i[h>>2];i[g+36>>2]=f;i[g+32>>2]=e;i[g+24>>2]=h;i[g+28>>2]=j;ge(g+40|0,o,g+32|0,g+24|0);d=c+d|0;i[d>>2]=i[g+40>>2];i[d+4>>2]=i[g+44>>2];l=l+1|0;if((r|0)==(l|0)){break a}e=i[a+40>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0>l>>>0){continue}break}}Tm();x()}J=g+48|0;return 1}function fe(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,n=0,o=0,q=0,r=0,s=0;g=J-48|0;J=g;d=i[a+8>>2];if(d+ -2>>>0<=28){i[a+76>>2]=d;e=-1<<d;d=-2-e|0;i[a+84>>2]=d;i[a+80>>2]=e^-1;i[a+92>>2]=(d|0)/2;m[a+88>>2]=p(2)/p(d|0)}i[a+52>>2]=f;e=i[a+40>>2];f=i[e>>2];h=i[e+4>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{j=h-f|0;if((j|0)<1){break a}d=i[e>>2];if((d|0)!=i[e+4>>2]){o=a+8|0;q=a+44|0;e=f-h|0;e=((e|0)>(j|0)?e:j)>>>2|0;r=e>>>0>1?e:1;s=a+96|0;while(1){od(q,i[(l<<2)+d>>2],g+8|0);e=i[g+12>>2];h=e>>31;f=i[g+8>>2];j=f>>31;n=i[g+16>>2];k=n>>31;d=0;k=k^k+n;h=k+((h^e+h)+(j^f+j)|0)|0;if(h>>>0<k>>>0){d=1}b:{if(!(d|h)){i[g+8>>2]=i[a+92>>2];break b}j=i[a+92>>2];k=j>>31;e=Hn(Gn(j,k,e,e>>31),L,h,d);i[g+12>>2]=e;d=Hn(Gn(j,k,f,f>>31),L,h,d);i[g+8>>2]=d;if((n|0)>=0){i[g+16>>2]=(j+((d|0)<0?d:0-d|0)|0)+((e|0)<0?e:0-e|0);break b}f=d;d=d>>31;f=(f+d^d)-j|0;d=e>>31;i[g+16>>2]=f+(d+e^d)}d=Ce(s);f=i[g+8>>2];if(d){i[g+16>>2]=0-i[g+16>>2];i[g+12>>2]=0-i[g+12>>2];f=0-f|0;i[g+8>>2]=f}e=i[g+12>>2];c:{if((f|0)>=0){d=i[a+92>>2];f=d+i[g+16>>2]|0;d=d+e|0;break c}d:{if((e|0)<=-1){f=i[g+16>>2];d=f>>31;d=d^d+f;break d}f=i[g+16>>2];d=i[a+84>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break c}f=i[a+84>>2]+((e|0)<0?e:0-e|0)|0}e:{if(!(d|f)){f=i[a+84>>2];e=f;break e}h=i[a+84>>2];f:{g:{h:{if(!d){if((f|0)==(h|0)){e=f;break e}e=0;if(f|h){break h}f=0;break e}if(!((d|0)!=(h|0)|f)){f=d;e=d;break e}if((d|0)!=(h|0)){break f}j=i[a+92>>2];break g}j=i[a+92>>2];if((j|0)<(f|0)){f=(j<<1)-f|0;break e}if(h){break f}}h=d;if((j|0)<=(f|0)){break f}f=(j<<1)-f|0;e=d;break e}i:{if((f|0)!=(h|0)){break i}e=i[a+92>>2];if((e|0)<=(d|0)){break i}e=(e<<1)-d|0;break e}if(f){e=d;break e}f=0;e=i[a+92>>2];if((e|0)>=(d|0)){e=d;break e}e=(e<<1)-d|0}d=l<<3;h=d+b|0;j=i[h+4>>2];h=i[h>>2];i[g+36>>2]=f;i[g+32>>2]=e;i[g+24>>2]=h;i[g+28>>2]=j;ge(g+40|0,o,g+32|0,g+24|0);d=c+d|0;i[d>>2]=i[g+40>>2];i[d+4>>2]=i[g+44>>2];l=l+1|0;if((r|0)==(l|0)){break a}e=i[a+40>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0>l>>>0){continue}break}}Tm();x()}J=g+48|0;return 1}function ae(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,n=0,o=0,q=0,r=0,s=0;g=J-48|0;J=g;d=i[a+8>>2];if(d+ -2>>>0<=28){i[a+76>>2]=d;e=-1<<d;d=-2-e|0;i[a+84>>2]=d;i[a+80>>2]=e^-1;i[a+92>>2]=(d|0)/2;m[a+88>>2]=p(2)/p(d|0)}i[a+52>>2]=f;e=i[a+40>>2];f=i[e>>2];h=i[e+4>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{j=h-f|0;if((j|0)<1){break a}d=i[e>>2];if((d|0)!=i[e+4>>2]){o=a+8|0;q=a+44|0;e=f-h|0;e=((e|0)>(j|0)?e:j)>>>2|0;r=e>>>0>1?e:1;s=a+96|0;while(1){Id(q,i[(l<<2)+d>>2],g+8|0);e=i[g+12>>2];h=e>>31;f=i[g+8>>2];j=f>>31;n=i[g+16>>2];k=n>>31;d=0;k=k^k+n;h=k+((h^e+h)+(j^f+j)|0)|0;if(h>>>0<k>>>0){d=1}b:{if(!(d|h)){i[g+8>>2]=i[a+92>>2];break b}j=i[a+92>>2];k=j>>31;e=Hn(Gn(j,k,e,e>>31),L,h,d);i[g+12>>2]=e;d=Hn(Gn(j,k,f,f>>31),L,h,d);i[g+8>>2]=d;if((n|0)>=0){i[g+16>>2]=(j+((d|0)<0?d:0-d|0)|0)+((e|0)<0?e:0-e|0);break b}f=d;d=d>>31;f=(f+d^d)-j|0;d=e>>31;i[g+16>>2]=f+(d+e^d)}d=Ce(s);f=i[g+8>>2];if(d){i[g+16>>2]=0-i[g+16>>2];i[g+12>>2]=0-i[g+12>>2];f=0-f|0;i[g+8>>2]=f}e=i[g+12>>2];c:{if((f|0)>=0){d=i[a+92>>2];f=d+i[g+16>>2]|0;d=d+e|0;break c}d:{if((e|0)<=-1){f=i[g+16>>2];d=f>>31;d=d^d+f;break d}f=i[g+16>>2];d=i[a+84>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break c}f=i[a+84>>2]+((e|0)<0?e:0-e|0)|0}e:{if(!(d|f)){f=i[a+84>>2];e=f;break e}h=i[a+84>>2];f:{g:{h:{if(!d){if((f|0)==(h|0)){e=f;break e}e=0;if(f|h){break h}f=0;break e}if(!((d|0)!=(h|0)|f)){f=d;e=d;break e}if((d|0)!=(h|0)){break f}j=i[a+92>>2];break g}j=i[a+92>>2];if((j|0)<(f|0)){f=(j<<1)-f|0;break e}if(h){break f}}h=d;if((j|0)<=(f|0)){break f}f=(j<<1)-f|0;e=d;break e}i:{if((f|0)!=(h|0)){break i}e=i[a+92>>2];if((e|0)<=(d|0)){break i}e=(e<<1)-d|0;break e}if(f){e=d;break e}f=0;e=i[a+92>>2];if((e|0)>=(d|0)){e=d;break e}e=(e<<1)-d|0}d=l<<3;h=d+b|0;j=i[h+4>>2];i[g+40>>2]=i[h>>2];i[g+44>>2]=j;i[g+28>>2]=f;i[g+24>>2]=e;Yd(g+32|0,o,g+24|0,g+40|0);d=c+d|0;i[d>>2]=i[g+32>>2];i[d+4>>2]=i[g+36>>2];l=l+1|0;if((r|0)==(l|0)){break a}e=i[a+40>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0>l>>>0){continue}break}}Tm();x()}J=g+48|0;return 1}function Xd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,n=0,o=0,q=0,r=0,s=0;g=J-48|0;J=g;d=i[a+8>>2];if(d+ -2>>>0<=28){i[a+76>>2]=d;e=-1<<d;d=-2-e|0;i[a+84>>2]=d;i[a+80>>2]=e^-1;i[a+92>>2]=(d|0)/2;m[a+88>>2]=p(2)/p(d|0)}i[a+52>>2]=f;e=i[a+40>>2];f=i[e>>2];h=i[e+4>>2];i[g+16>>2]=0;i[g+8>>2]=0;i[g+12>>2]=0;a:{j=h-f|0;if((j|0)<1){break a}d=i[e>>2];if((d|0)!=i[e+4>>2]){o=a+8|0;q=a+44|0;e=f-h|0;e=((e|0)>(j|0)?e:j)>>>2|0;r=e>>>0>1?e:1;s=a+96|0;while(1){od(q,i[(l<<2)+d>>2],g+8|0);e=i[g+12>>2];h=e>>31;f=i[g+8>>2];j=f>>31;n=i[g+16>>2];k=n>>31;d=0;k=k^k+n;h=k+((h^e+h)+(j^f+j)|0)|0;if(h>>>0<k>>>0){d=1}b:{if(!(d|h)){i[g+8>>2]=i[a+92>>2];break b}j=i[a+92>>2];k=j>>31;e=Hn(Gn(j,k,e,e>>31),L,h,d);i[g+12>>2]=e;d=Hn(Gn(j,k,f,f>>31),L,h,d);i[g+8>>2]=d;if((n|0)>=0){i[g+16>>2]=(j+((d|0)<0?d:0-d|0)|0)+((e|0)<0?e:0-e|0);break b}f=d;d=d>>31;f=(f+d^d)-j|0;d=e>>31;i[g+16>>2]=f+(d+e^d)}d=Ce(s);f=i[g+8>>2];if(d){i[g+16>>2]=0-i[g+16>>2];i[g+12>>2]=0-i[g+12>>2];f=0-f|0;i[g+8>>2]=f}e=i[g+12>>2];c:{if((f|0)>=0){d=i[a+92>>2];f=d+i[g+16>>2]|0;d=d+e|0;break c}d:{if((e|0)<=-1){f=i[g+16>>2];d=f>>31;d=d^d+f;break d}f=i[g+16>>2];d=i[a+84>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=e;e=e>>31;f=f+e^e;break c}f=i[a+84>>2]+((e|0)<0?e:0-e|0)|0}e:{if(!(d|f)){f=i[a+84>>2];e=f;break e}h=i[a+84>>2];f:{g:{h:{if(!d){if((f|0)==(h|0)){e=f;break e}e=0;if(f|h){break h}f=0;break e}if(!((d|0)!=(h|0)|f)){f=d;e=d;break e}if((d|0)!=(h|0)){break f}j=i[a+92>>2];break g}j=i[a+92>>2];if((j|0)<(f|0)){f=(j<<1)-f|0;break e}if(h){break f}}h=d;if((j|0)<=(f|0)){break f}f=(j<<1)-f|0;e=d;break e}i:{if((f|0)!=(h|0)){break i}e=i[a+92>>2];if((e|0)<=(d|0)){break i}e=(e<<1)-d|0;break e}if(f){e=d;break e}f=0;e=i[a+92>>2];if((e|0)>=(d|0)){e=d;break e}e=(e<<1)-d|0}d=l<<3;h=d+b|0;j=i[h+4>>2];i[g+40>>2]=i[h>>2];i[g+44>>2]=j;i[g+28>>2]=f;i[g+24>>2]=e;Yd(g+32|0,o,g+24|0,g+40|0);d=c+d|0;i[d>>2]=i[g+32>>2];i[d+4>>2]=i[g+36>>2];l=l+1|0;if((r|0)==(l|0)){break a}e=i[a+40>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0>l>>>0){continue}break}}Tm();x()}J=g+48|0;return 1}function Wk(a,b){var c=0,d=0,e=0,f=0,h=0,k=0,m=0,n=0,o=0,p=0,q=0;d=J-48|0;J=d;c=Dm(8);i[c+4>>2]=b;i[c>>2]=0;b=c+8|0;i[d+40>>2]=b;i[d+36>>2]=b;i[d+32>>2]=c;a:{b:{c:{d:{while(1){b=b+ -8|0;m=i[b+4>>2];q=i[b>>2];i[d+36>>2]=b;if(q){i[d+24>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;n=1;b=i[a>>2];h=i[b+16>>2];f=i[b+12>>2];c=i[b+20>>2];e:{if((f|0)<(c|0)?1:(f|0)<=(c|0)?l[b+8>>2]<=h>>>0:0){break e}e=j[h+i[b>>2]|0];f=h+1|0;if(f>>>0<1){c=c+1|0}i[b+16>>2]=f;i[b+20>>2]=c;Lm(d+16|0,e);if(e){f=i[a>>2];p=Pm(d+16|0);k=i[f+12>>2];h=i[f+20>>2];o=i[f+16>>2];b=e;c=o+b|0;if(c>>>0<b>>>0){h=h+1|0}if((k|0)<(h|0)?1:(k|0)<=(h|0)?l[f+8>>2]<c>>>0:0){break e}pn(p,o+i[f>>2]|0,e);c=f;f=c;h=i[c+20>>2];e=b+i[c+16>>2]|0;if(e>>>0<b>>>0){h=h+1|0}i[f+16>>2]=e;i[c+20>>2]=h}m=Dm(24);b=m;i[b+4>>2]=0;i[b+8>>2]=0;i[b+16>>2]=0;i[b+20>>2]=0;i[b>>2]=b+4;i[b+12>>2]=b+16;i[d+8>>2]=b;b=il(q,d+16|0,d+8|0);c=i[d+8>>2];i[d+8>>2]=0;if(c){qh(c+12|0,i[c+16>>2]);rh(c,i[c+4>>2]);nn(c)}n=b^1}if(g[d+27|0]<=-1){nn(i[d+16>>2])}if(n){break b}}if(!m){break b}i[d+16>>2]=0;if(!Xk(1,d+16|0,i[a>>2])){break b}b=0;c=i[d+16>>2];if(c){while(1){if(!Yk(a,m)){break b}b=b+1|0;if((c|0)!=(b|0)){continue}break}}i[d+4>>2]=0;if(!Xk(1,d+4|0,i[a>>2])){break b}e=i[a>>2];c=i[e+8>>2];b=i[e+16>>2];p=i[d+4>>2];f=c-b>>>0<p>>>0;b=i[e+12>>2]-(i[e+20>>2]+(c>>>0<b>>>0)|0)|0;if((b|0)<0?1:(b|0)<=0?f:0){break b}if(p){n=0;while(1){b=i[d+36>>2];c=i[d+40>>2];f:{if(b>>>0<c>>>0){i[b+4>>2]=0;i[b>>2]=m;i[d+36>>2]=b+8;break f}k=i[d+32>>2];o=b-k|0;b=o>>3;h=b+1|0;if(h>>>0>=536870912){break d}f=b<<3;e=c-k|0;c=e>>2;e=e>>3>>>0<268435455?c>>>0<h>>>0?h:c:536870911;b=0;g:{if(!e){break g}if(e>>>0>=536870912){break c}b=Dm(e<<3)}c=f+b|0;i[c+4>>2]=0;i[c>>2]=m;e=b+(e<<3)|0;c=c+8|0;if((o|0)>=1){pn(b,k,o)}i[d+40>>2]=e;i[d+36>>2]=c;i[d+32>>2]=b;if(!k){break f}nn(k)}n=n+1|0;if((p|0)!=(n|0)){continue}break}}b=i[d+36>>2];c=i[d+32>>2];if((b|0)!=(c|0)){continue}break}a=1;break a}Sm();x()}Ba(14616);x()}c=i[d+32>>2];a=0}if(c){i[d+36>>2]=c;nn(c)}J=d+48|0;return a}function of(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{c=k[b+38>>1];if(!c){break a}b:{if(c>>>0<=511){d=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];f=e+4|0;if(f>>>0<4){c=c+1|0}if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]<f>>>0:0){break a}c=e+i[b>>2]|0;f=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[a+12>>2]=f;d=i[b+20>>2];e=i[b+16>>2]+4|0;if(e>>>0<4){d=d+1|0}c=b;i[c+16>>2]=e;i[c+20>>2]=d;break b}c=a+12|0;if(!af(1,c,b)){break a}f=i[c>>2]}d=i[a>>2];c=i[a+4>>2]-d>>2;c:{if(f>>>0>c>>>0){ye(a,f-c|0);f=i[a+12>>2];break c}if(f>>>0>=c>>>0){break c}i[a+4>>2]=d+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];m=i[b+12>>2];while(1){e=i[b+16>>2];c=i[b+20>>2];if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];n=j[p+e|0];e=e+1|0;if(e>>>0<1){c=c+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=c;d=n>>>2|0;e=0;d:{e:{f:{g:{q=n&3;switch(q|0){case 3:break g;case 0:break e;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}qn(i[a>>2]+(g<<2)|0,0,(n&252)+4|0);g=c;break d}while(1){if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=h>>>0:0){return 0}n=j[h+p|0];h=h+1|0;if(h>>>0<1){c=c+1|0}i[b+16>>2]=h;i[b+20>>2]=c;d=n<<(e<<3|6)|d;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=d}g=g+1|0;f=i[a+12>>2];if(g>>>0<f>>>0){continue}break}m=a+16|0;g=i[a>>2];b=i[a+16>>2];c=i[a+20>>2]-b|0;d=c>>2;h:{if(d>>>0<=1048575){ye(m,1048576-d|0);break h}if((c|0)==4194304){break h}i[a+20>>2]=b+4194304}i:{j:{b=a+28|0;c=i[b>>2];d=i[a+32>>2]-c>>3;if(f>>>0>d>>>0){bf(b,f-d|0);c=i[b>>2];break j}if(f>>>0<d>>>0){i[a+32>>2]=(f<<3)+c}if(f){break j}b=0;a=0;break i}a=i[g>>2];e=0;i[c+4>>2]=0;i[c>>2]=a;b=1;d=i[g>>2];if(d>>>0<=1048576){b=0;while(1){k:{if(e>>>0<d>>>0){a=i[m>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((d|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+c|0;i[h+4>>2]=d;i[h>>2]=e;e=d;d=d+i[a>>2]|0;if(d>>>0>1048576){break k}continue}}break}b=b>>>0<f>>>0}a=(d|0)==1048576}return a&(b^1)}return r}function kf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{c=k[b+38>>1];if(!c){break a}b:{if(c>>>0<=511){d=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];f=e+4|0;if(f>>>0<4){c=c+1|0}if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]<f>>>0:0){break a}c=e+i[b>>2]|0;f=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[a+12>>2]=f;d=i[b+20>>2];e=i[b+16>>2]+4|0;if(e>>>0<4){d=d+1|0}c=b;i[c+16>>2]=e;i[c+20>>2]=d;break b}c=a+12|0;if(!af(1,c,b)){break a}f=i[c>>2]}d=i[a>>2];c=i[a+4>>2]-d>>2;c:{if(f>>>0>c>>>0){ye(a,f-c|0);f=i[a+12>>2];break c}if(f>>>0>=c>>>0){break c}i[a+4>>2]=d+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];m=i[b+12>>2];while(1){e=i[b+16>>2];c=i[b+20>>2];if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];n=j[p+e|0];e=e+1|0;if(e>>>0<1){c=c+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=c;d=n>>>2|0;e=0;d:{e:{f:{g:{q=n&3;switch(q|0){case 3:break g;case 0:break e;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}qn(i[a>>2]+(g<<2)|0,0,(n&252)+4|0);g=c;break d}while(1){if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=h>>>0:0){return 0}n=j[h+p|0];h=h+1|0;if(h>>>0<1){c=c+1|0}i[b+16>>2]=h;i[b+20>>2]=c;d=n<<(e<<3|6)|d;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=d}g=g+1|0;f=i[a+12>>2];if(g>>>0<f>>>0){continue}break}m=a+16|0;g=i[a>>2];b=i[a+16>>2];c=i[a+20>>2]-b|0;d=c>>2;h:{if(d>>>0<=262143){ye(m,262144-d|0);break h}if((c|0)==1048576){break h}i[a+20>>2]=b- -1048576}i:{j:{b=a+28|0;c=i[b>>2];d=i[a+32>>2]-c>>3;if(f>>>0>d>>>0){bf(b,f-d|0);c=i[b>>2];break j}if(f>>>0<d>>>0){i[a+32>>2]=(f<<3)+c}if(f){break j}b=0;a=0;break i}a=i[g>>2];e=0;i[c+4>>2]=0;i[c>>2]=a;b=1;d=i[g>>2];if(d>>>0<=262144){b=0;while(1){k:{if(e>>>0<d>>>0){a=i[m>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((d|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+c|0;i[h+4>>2]=d;i[h>>2]=e;e=d;d=d+i[a>>2]|0;if(d>>>0>262144){break k}continue}}break}b=b>>>0<f>>>0}a=(d|0)==262144}return a&(b^1)}return r}function mf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{c=k[b+38>>1];if(!c){break a}b:{if(c>>>0<=511){d=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];f=e+4|0;if(f>>>0<4){c=c+1|0}if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]<f>>>0:0){break a}c=e+i[b>>2]|0;f=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[a+12>>2]=f;d=i[b+20>>2];e=i[b+16>>2]+4|0;if(e>>>0<4){d=d+1|0}c=b;i[c+16>>2]=e;i[c+20>>2]=d;break b}c=a+12|0;if(!af(1,c,b)){break a}f=i[c>>2]}d=i[a>>2];c=i[a+4>>2]-d>>2;c:{if(f>>>0>c>>>0){ye(a,f-c|0);f=i[a+12>>2];break c}if(f>>>0>=c>>>0){break c}i[a+4>>2]=d+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];m=i[b+12>>2];while(1){e=i[b+16>>2];c=i[b+20>>2];if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];n=j[p+e|0];e=e+1|0;if(e>>>0<1){c=c+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=c;d=n>>>2|0;e=0;d:{e:{f:{g:{q=n&3;switch(q|0){case 3:break g;case 0:break e;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}qn(i[a>>2]+(g<<2)|0,0,(n&252)+4|0);g=c;break d}while(1){if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=h>>>0:0){return 0}n=j[h+p|0];h=h+1|0;if(h>>>0<1){c=c+1|0}i[b+16>>2]=h;i[b+20>>2]=c;d=n<<(e<<3|6)|d;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=d}g=g+1|0;f=i[a+12>>2];if(g>>>0<f>>>0){continue}break}m=a+16|0;g=i[a>>2];b=i[a+16>>2];c=i[a+20>>2]-b|0;d=c>>2;h:{if(d>>>0<=524287){ye(m,524288-d|0);break h}if((c|0)==2097152){break h}i[a+20>>2]=b+2097152}i:{j:{b=a+28|0;c=i[b>>2];d=i[a+32>>2]-c>>3;if(f>>>0>d>>>0){bf(b,f-d|0);c=i[b>>2];break j}if(f>>>0<d>>>0){i[a+32>>2]=(f<<3)+c}if(f){break j}b=0;a=0;break i}a=i[g>>2];e=0;i[c+4>>2]=0;i[c>>2]=a;b=1;d=i[g>>2];if(d>>>0<=524288){b=0;while(1){k:{if(e>>>0<d>>>0){a=i[m>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((d|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+c|0;i[h+4>>2]=d;i[h>>2]=e;e=d;d=d+i[a>>2]|0;if(d>>>0>524288){break k}continue}}break}b=b>>>0<f>>>0}a=(d|0)==524288}return a&(b^1)}return r}function hf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{c=k[b+38>>1];if(!c){break a}b:{if(c>>>0<=511){d=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];f=e+4|0;if(f>>>0<4){c=c+1|0}if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]<f>>>0:0){break a}c=e+i[b>>2]|0;f=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[a+12>>2]=f;d=i[b+20>>2];e=i[b+16>>2]+4|0;if(e>>>0<4){d=d+1|0}c=b;i[c+16>>2]=e;i[c+20>>2]=d;break b}c=a+12|0;if(!af(1,c,b)){break a}f=i[c>>2]}d=i[a>>2];c=i[a+4>>2]-d>>2;c:{if(f>>>0>c>>>0){ye(a,f-c|0);f=i[a+12>>2];break c}if(f>>>0>=c>>>0){break c}i[a+4>>2]=d+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];m=i[b+12>>2];while(1){e=i[b+16>>2];c=i[b+20>>2];if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];n=j[p+e|0];e=e+1|0;if(e>>>0<1){c=c+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=c;d=n>>>2|0;e=0;d:{e:{f:{g:{q=n&3;switch(q|0){case 3:break g;case 0:break e;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}qn(i[a>>2]+(g<<2)|0,0,(n&252)+4|0);g=c;break d}while(1){if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=h>>>0:0){return 0}n=j[h+p|0];h=h+1|0;if(h>>>0<1){c=c+1|0}i[b+16>>2]=h;i[b+20>>2]=c;d=n<<(e<<3|6)|d;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=d}g=g+1|0;f=i[a+12>>2];if(g>>>0<f>>>0){continue}break}m=a+16|0;g=i[a>>2];b=i[a+16>>2];c=i[a+20>>2]-b|0;d=c>>2;h:{if(d>>>0<=65535){ye(m,65536-d|0);break h}if((c|0)==262144){break h}i[a+20>>2]=b+262144}i:{j:{b=a+28|0;c=i[b>>2];d=i[a+32>>2]-c>>3;if(f>>>0>d>>>0){bf(b,f-d|0);c=i[b>>2];break j}if(f>>>0<d>>>0){i[a+32>>2]=(f<<3)+c}if(f){break j}b=0;a=0;break i}a=i[g>>2];e=0;i[c+4>>2]=0;i[c>>2]=a;b=1;d=i[g>>2];if(d>>>0<=65536){b=0;while(1){k:{if(e>>>0<d>>>0){a=i[m>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((d|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+c|0;i[h+4>>2]=d;i[h>>2]=e;e=d;d=d+i[a>>2]|0;if(d>>>0>65536){break k}continue}}break}b=b>>>0<f>>>0}a=(d|0)==65536}return a&(b^1)}return r}function ff(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{c=k[b+38>>1];if(!c){break a}b:{if(c>>>0<=511){d=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];f=e+4|0;if(f>>>0<4){c=c+1|0}if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]<f>>>0:0){break a}c=e+i[b>>2]|0;f=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[a+12>>2]=f;d=i[b+20>>2];e=i[b+16>>2]+4|0;if(e>>>0<4){d=d+1|0}c=b;i[c+16>>2]=e;i[c+20>>2]=d;break b}c=a+12|0;if(!af(1,c,b)){break a}f=i[c>>2]}d=i[a>>2];c=i[a+4>>2]-d>>2;c:{if(f>>>0>c>>>0){ye(a,f-c|0);f=i[a+12>>2];break c}if(f>>>0>=c>>>0){break c}i[a+4>>2]=d+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];m=i[b+12>>2];while(1){e=i[b+16>>2];c=i[b+20>>2];if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];n=j[p+e|0];e=e+1|0;if(e>>>0<1){c=c+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=c;d=n>>>2|0;e=0;d:{e:{f:{g:{q=n&3;switch(q|0){case 3:break g;case 0:break e;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}qn(i[a>>2]+(g<<2)|0,0,(n&252)+4|0);g=c;break d}while(1){if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=h>>>0:0){return 0}n=j[h+p|0];h=h+1|0;if(h>>>0<1){c=c+1|0}i[b+16>>2]=h;i[b+20>>2]=c;d=n<<(e<<3|6)|d;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=d}g=g+1|0;f=i[a+12>>2];if(g>>>0<f>>>0){continue}break}m=a+16|0;g=i[a>>2];b=i[a+16>>2];c=i[a+20>>2]-b|0;d=c>>2;h:{if(d>>>0<=32767){ye(m,32768-d|0);break h}if((c|0)==131072){break h}i[a+20>>2]=b+131072}i:{j:{b=a+28|0;c=i[b>>2];d=i[a+32>>2]-c>>3;if(f>>>0>d>>>0){bf(b,f-d|0);c=i[b>>2];break j}if(f>>>0<d>>>0){i[a+32>>2]=(f<<3)+c}if(f){break j}b=0;a=0;break i}a=i[g>>2];e=0;i[c+4>>2]=0;i[c>>2]=a;b=1;d=i[g>>2];if(d>>>0<=32768){b=0;while(1){k:{if(e>>>0<d>>>0){a=i[m>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((d|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+c|0;i[h+4>>2]=d;i[h>>2]=e;e=d;d=d+i[a>>2]|0;if(d>>>0>32768){break k}continue}}break}b=b>>>0<f>>>0}a=(d|0)==32768}return a&(b^1)}return r}function df(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{c=k[b+38>>1];if(!c){break a}b:{if(c>>>0<=511){d=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];f=e+4|0;if(f>>>0<4){c=c+1|0}if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]<f>>>0:0){break a}c=e+i[b>>2]|0;f=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[a+12>>2]=f;d=i[b+20>>2];e=i[b+16>>2]+4|0;if(e>>>0<4){d=d+1|0}c=b;i[c+16>>2]=e;i[c+20>>2]=d;break b}c=a+12|0;if(!af(1,c,b)){break a}f=i[c>>2]}d=i[a>>2];c=i[a+4>>2]-d>>2;c:{if(f>>>0>c>>>0){ye(a,f-c|0);f=i[a+12>>2];break c}if(f>>>0>=c>>>0){break c}i[a+4>>2]=d+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];m=i[b+12>>2];while(1){e=i[b+16>>2];c=i[b+20>>2];if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];n=j[p+e|0];e=e+1|0;if(e>>>0<1){c=c+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=c;d=n>>>2|0;e=0;d:{e:{f:{g:{q=n&3;switch(q|0){case 3:break g;case 0:break e;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}qn(i[a>>2]+(g<<2)|0,0,(n&252)+4|0);g=c;break d}while(1){if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=h>>>0:0){return 0}n=j[h+p|0];h=h+1|0;if(h>>>0<1){c=c+1|0}i[b+16>>2]=h;i[b+20>>2]=c;d=n<<(e<<3|6)|d;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=d}g=g+1|0;f=i[a+12>>2];if(g>>>0<f>>>0){continue}break}m=a+16|0;g=i[a>>2];b=i[a+16>>2];c=i[a+20>>2]-b|0;d=c>>2;h:{if(d>>>0<=8191){ye(m,8192-d|0);break h}if((c|0)==32768){break h}i[a+20>>2]=b+32768}i:{j:{b=a+28|0;c=i[b>>2];d=i[a+32>>2]-c>>3;if(f>>>0>d>>>0){bf(b,f-d|0);c=i[b>>2];break j}if(f>>>0<d>>>0){i[a+32>>2]=(f<<3)+c}if(f){break j}b=0;a=0;break i}a=i[g>>2];e=0;i[c+4>>2]=0;i[c>>2]=a;b=1;d=i[g>>2];if(d>>>0<=8192){b=0;while(1){k:{if(e>>>0<d>>>0){a=i[m>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((d|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+c|0;i[h+4>>2]=d;i[h>>2]=e;e=d;d=d+i[a>>2]|0;if(d>>>0>8192){break k}continue}}break}b=b>>>0<f>>>0}a=(d|0)==8192}return a&(b^1)}return r}function Te(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0;a:{c=k[b+38>>1];if(!c){break a}b:{if(c>>>0<=511){d=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];f=e+4|0;if(f>>>0<4){c=c+1|0}if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]<f>>>0:0){break a}c=e+i[b>>2]|0;f=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[a+12>>2]=f;d=i[b+20>>2];e=i[b+16>>2]+4|0;if(e>>>0<4){d=d+1|0}c=b;i[c+16>>2]=e;i[c+20>>2]=d;break b}c=a+12|0;if(!af(1,c,b)){break a}f=i[c>>2]}d=i[a>>2];c=i[a+4>>2]-d>>2;c:{if(f>>>0>c>>>0){ye(a,f-c|0);f=i[a+12>>2];break c}if(f>>>0>=c>>>0){break c}i[a+4>>2]=d+(f<<2)}if(!f){r=1;break a}o=i[b+8>>2];m=i[b+12>>2];while(1){e=i[b+16>>2];c=i[b+20>>2];if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=e>>>0:0){break a}p=i[b>>2];n=j[p+e|0];e=e+1|0;if(e>>>0<1){c=c+1|0}h=e;i[b+16>>2]=e;i[b+20>>2]=c;d=n>>>2|0;e=0;d:{e:{f:{g:{q=n&3;switch(q|0){case 3:break g;case 0:break e;default:break f}}c=d+g|0;if(c>>>0>=f>>>0){return 0}qn(i[a>>2]+(g<<2)|0,0,(n&252)+4|0);g=c;break d}while(1){if((m|0)<(c|0)?1:(m|0)<=(c|0)?o>>>0<=h>>>0:0){return 0}n=j[h+p|0];h=h+1|0;if(h>>>0<1){c=c+1|0}i[b+16>>2]=h;i[b+20>>2]=c;d=n<<(e<<3|6)|d;e=e+1|0;if((q|0)!=(e|0)){continue}break}}i[i[a>>2]+(g<<2)>>2]=d}g=g+1|0;f=i[a+12>>2];if(g>>>0<f>>>0){continue}break}m=a+16|0;g=i[a>>2];b=i[a+16>>2];c=i[a+20>>2]-b|0;d=c>>2;h:{if(d>>>0<=4095){ye(m,4096-d|0);break h}if((c|0)==16384){break h}i[a+20>>2]=b+16384}i:{j:{b=a+28|0;c=i[b>>2];d=i[a+32>>2]-c>>3;if(f>>>0>d>>>0){bf(b,f-d|0);c=i[b>>2];break j}if(f>>>0<d>>>0){i[a+32>>2]=(f<<3)+c}if(f){break j}b=0;a=0;break i}a=i[g>>2];e=0;i[c+4>>2]=0;i[c>>2]=a;b=1;d=i[g>>2];if(d>>>0<=4096){b=0;while(1){k:{if(e>>>0<d>>>0){a=i[m>>2];while(1){i[a+(e<<2)>>2]=b;e=e+1|0;if((d|0)!=(e|0)){continue}break}}b=b+1|0;if((f|0)!=(b|0)){a=g+(b<<2)|0;e=i[a>>2];h=(b<<3)+c|0;i[h+4>>2]=d;i[h>>2]=e;e=d;d=d+i[a>>2]|0;if(d>>>0>4096){break k}continue}}break}b=b>>>0<f>>>0}a=(d|0)==4096}return a&(b^1)}return r}function Uf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,l=0;j=J-16|0;J=j;c=i[a+4>>2];i[a+40>>2]=i[a>>2];i[a+44>>2]=c;e=a+32|0;c=e;d=i[c+4>>2];i[a+72>>2]=i[c>>2];i[a+76>>2]=d;d=a+24|0;g=i[d+4>>2];c=a- -64|0;i[c>>2]=i[d>>2];i[c+4>>2]=g;f=a+16|0;c=f;g=i[c+4>>2];i[a+56>>2]=i[c>>2];i[a+60>>2]=g;g=a+8|0;c=g;h=i[c+4>>2];i[a+48>>2]=i[c>>2];i[a+52>>2]=h;a:{b:{c=a+40|0;if(Ch(c,1,j+8|0)){h=i[c+4>>2];i[a>>2]=i[c>>2];i[a+4>>2]=h;h=i[c+36>>2];i[e>>2]=i[c+32>>2];i[e+4>>2]=h;e=i[c+28>>2];i[d>>2]=i[c+24>>2];i[d+4>>2]=e;d=i[c+20>>2];h=d;e=i[c+16>>2];i[f>>2]=e;i[f+4>>2]=d;d=i[c+12>>2];f=d;c=i[c+8>>2];i[g>>2]=c;i[g+4>>2]=d;d=e;g=c-d|0;l=i[j+12>>2];d=f-((c>>>0<d>>>0)+h|0)|0;c=i[j+8>>2];if((l|0)==(d|0)&c>>>0<=g>>>0|l>>>0<d>>>0){break b}}c=0;break a}f=h+l|0;e=c+e|0;if(e>>>0<c>>>0){f=f+1|0}i[a+16>>2]=e;i[a+20>>2]=f;c:{if(k[a+38>>1]<=513){c=i[a+4>>2];i[a+96>>2]=i[a>>2];i[a+100>>2]=c;e=a+32|0;c=e;d=i[c+4>>2];i[a+128>>2]=i[c>>2];i[a+132>>2]=d;d=a+24|0;c=d;f=i[c+4>>2];i[a+120>>2]=i[c>>2];i[a+124>>2]=f;f=a+16|0;c=f;g=i[c+4>>2];i[a+112>>2]=i[c>>2];i[a+116>>2]=g;g=a+8|0;c=g;h=i[c+4>>2];i[a+104>>2]=i[c>>2];i[a+108>>2]=h;d:{c=a+96|0;if(Ch(c,1,j+8|0)){h=i[c+4>>2];i[a>>2]=i[c>>2];i[a+4>>2]=h;h=i[c+36>>2];i[e>>2]=i[c+32>>2];i[e+4>>2]=h;e=i[c+28>>2];i[d>>2]=i[c+24>>2];i[d+4>>2]=e;d=i[c+20>>2];h=d;e=i[c+16>>2];i[f>>2]=e;i[f+4>>2]=d;d=i[c+12>>2];f=d;c=i[c+8>>2];i[g>>2]=c;i[g+4>>2]=d;d=e;g=c-d|0;l=i[j+12>>2];d=f-((c>>>0<d>>>0)+h|0)|0;c=i[j+8>>2];if((l|0)==(d|0)&c>>>0<=g>>>0|l>>>0<d>>>0){break d}}c=0;break a}f=h+l|0;e=c+e|0;if(e>>>0<c>>>0){f=f+1|0}i[a+16>>2]=e;i[a+20>>2]=f;break c}c=0;if(!Ae(a+80|0,a)){break a}}c=0;if(!_f(a)){break a}c=i[a+4>>2];i[b>>2]=i[a>>2];i[b+4>>2]=c;c=i[a+36>>2];i[b+32>>2]=i[a+32>>2];i[b+36>>2]=c;c=i[a+28>>2];i[b+24>>2]=i[a+24>>2];i[b+28>>2]=c;c=i[a+20>>2];i[b+16>>2]=i[a+16>>2];i[b+20>>2]=c;c=i[a+12>>2];i[b+8>>2]=i[a+8>>2];i[b+12>>2]=c;c=1}J=j+16|0;return c}function qc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;a:{s=M[i[i[a>>2]+44>>2]](a)|0;if((s|0)<1){break a}h=i[b+4>>2]-i[b>>2]>>2;rc(a,h,s);d=i[a+16>>2];if(!i[d+80>>2]){break a}f=i[i[d>>2]>>2];if(!f){break a}m=i[c+8>>2];k=i[c+16>>2];g=i[c+12>>2];n=g;e=i[c+20>>2];if((n|0)<(e|0)?1:(n|0)<=(e|0)?m>>>0<=k>>>0:0){break a}n=o(h,s);q=f+i[d+48>>2]|0;r=i[c>>2];t=j[r+k|0];h=c;d=e;f=k+1|0;if(f>>>0<1){d=d+1|0}p=f;f=d;i[h+16>>2]=p;i[h+20>>2]=d;b:{c:{d:{if(t){if(Qe(n,s,c,q)){break d}break a}if((g|0)<(f|0)?1:(g|0)<=(f|0)?m>>>0<=p>>>0:0){break a}h=j[p+r|0];d=e;e=k+2|0;if(e>>>0<2){d=d+1|0}i[c+16>>2]=e;i[c+20>>2]=d;d=Fh(5);e=i[i[a+16>>2]+64>>2];e=i[e+4>>2]-i[e>>2]|0;e:{if((d|0)==(h|0)){h=n<<2;if(e>>>0<h>>>0){break a}f=i[c+12>>2];d=i[c+20>>2];k=i[c+16>>2];e=h;g=k+e|0;if(g>>>0<e>>>0){d=d+1|0}if((f|0)>(d|0)?1:(f|0)>=(d|0)?l[c+8>>2]>=g>>>0:0){break e}break a}if(e>>>0<o(h,n)>>>0){break a}k=i[c+12>>2];d=i[c+20>>2];m=i[c+8>>2];f=m;p=i[c+16>>2];g=p;e=h;r=f-g>>>0<Gn(e,0,n,0)>>>0;f=k-(d+(f>>>0<g>>>0)|0)|0;g=L;if((f|0)<(g|0)?1:(f|0)<=(g|0)?r:0){break a}f=1;if(!n){break c}g=0;f=m;m=e+p|0;if(m>>>0<e>>>0){d=d+1|0}if((k|0)<(d|0)?1:(k|0)<=(d|0)?f>>>0<m>>>0:0){break b}m=0;while(1){pn(q+(m<<2)|0,p+i[c>>2]|0,h);d=i[c+20>>2];p=e+i[c+16>>2]|0;if(p>>>0<e>>>0){d=d+1|0}i[c+16>>2]=p;i[c+20>>2]=d;m=m+1|0;if((n|0)==(m|0)){break d}k=i[c+12>>2];r=e+p|0;if(r>>>0<e>>>0){d=d+1|0}if((k|0)>(d|0)?1:(k|0)>=(d|0)?l[c+8>>2]>=r>>>0:0){continue}break}break b}pn(q,k+i[c>>2]|0,h);d=i[c+20>>2];f=e+i[c+16>>2]|0;if(f>>>0<e>>>0){d=d+1|0}i[c+16>>2]=f;i[c+20>>2]=d}f=1;if(!n){break c}e=i[a+20>>2];if(e){f=0;if(M[i[i[e>>2]+32>>2]](e)|0){break c}}vh(q,n,q);f=0}e=i[a+20>>2];f:{if(!e){break f}if(!(M[i[i[e>>2]+40>>2]](e,c)|0)){break a}if(f){break f}g=0;a=i[a+20>>2];if(!(M[i[i[a>>2]+44>>2]](a,q,q,n,s,i[b>>2])|0)){break b}}g=1}return g|0}return 0}function Bk(a){var b=0,c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=J-32|0;J=e;b=i[a>>2];d=i[a+4>>2];g[e|0]=0;o=Ek(e+16|0,d-b>>2,e);i[e+8>>2]=0;i[e>>2]=0;k=i[a>>2];b=i[a+4>>2];a:{b:{while(1){c:{p=0;l=0;if((b|0)==(k|0)){break c}while(1){c=i[o>>2];d:{if(i[c+(l>>>3&536870908)>>2]>>>l&1){break d}d=i[e>>2];i[e+4>>2]=d;b=l;while(1){e:{f=b+1|0;q=b;b=(f>>>0)%3|0?f:b+ -2|0;if((b|0)==-1){break e}b=i[i[a+12>>2]+(b<<2)>>2];if((b|0)==-1){break e}f=b+1|0;b=(f>>>0)%3|0?f:b+ -2|0;if((l|0)==(b|0)|(b|0)==-1){break e}if(!(i[(b>>>3&536870908)+c>>2]>>>b&1)){continue}}break}f=d;b=q;while(1){j=(b>>>3&536870908)+c|0;i[j>>2]=i[j>>2]|1<<b;j=b+1|0;j=(j>>>0)%3|0?j:b+ -2|0;m=((b>>>0)%3|0?-1:2)+b|0;if((d|0)!=(f|0)){n=i[(j<<2)+k>>2];b=f;while(1){f:{if((n|0)!=i[b>>2]){break f}c=-1;h=i[b+4>>2];c=(m|0)!=-1?i[i[a+12>>2]+(m<<2)>>2]:c;if((h|0)==(c|0)){break f}d=-1;d=(h|0)!=-1?i[i[a+12>>2]+(h<<2)>>2]:d;if((c|0)!=-1){i[i[a+12>>2]+(c<<2)>>2]=-1}b=i[a+12>>2];if((d|0)!=-1){i[b+(d<<2)>>2]=-1}i[b+(m<<2)>>2]=-1;i[b+(h<<2)>>2]=-1;p=1;break d}b=b+8|0;if((d|0)!=(b|0)){continue}break}}n=m<<2;k=i[n+k>>2];g:{if(i[e+8>>2]!=(d|0)){b=d;i[b>>2]=k;i[b+4>>2]=j;i[e+4>>2]=b+8;break g}d=d-f|0;h=d>>3;c=h+1|0;if(c>>>0>=536870912){break b}b=d>>2;c=h>>>0<268435455?b>>>0<c>>>0?c:b:536870911;b=0;h:{if(!c){break h}if(c>>>0>=536870912){break a}b=Dm(c<<3)}h=b+(h<<3)|0;i[h>>2]=k;i[h+4>>2]=j;j=b+(c<<3)|0;c=h+8|0;if((d|0)>=1){pn(b,f,d)}i[e+8>>2]=j;i[e+4>>2]=c;i[e>>2]=b;if(!f){break g}nn(f)}i:{if((m|0)==-1){break i}b=i[n+i[a+12>>2]>>2];if((b|0)==-1){break i}b=b+((b>>>0)%3|0?-1:2)|0;if((q|0)==(b|0)|(b|0)==-1){break i}k=i[a>>2];c=i[o>>2];d=i[e+4>>2];f=i[e>>2];continue}break}k=i[a>>2]}l=l+1|0;b=i[a+4>>2];if(l>>>0<b-k>>2>>>0){continue}break}if(p){continue}}break}a=i[e>>2];if(a){i[e+4>>2]=a;nn(a)}a=i[o>>2];if(a){nn(a)}J=e+32|0;return}Sm();x()}Ba(14288);x()}function Hf(a,b,c){var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=J+ -64|0;J=e;h=i[i[b+4>>2]+44>>2];d=Dm(80);i[d+12>>2]=0;i[d+16>>2]=0;i[d>>2]=12784;i[d+4>>2]=0;i[d+76>>2]=0;i[d+72>>2]=c;i[d+68>>2]=h;i[d+64>>2]=0;i[d+56>>2]=0;i[d+60>>2]=0;i[d+8>>2]=12948;k=d+20|0;f=k;i[f>>2]=0;i[f+4>>2]=0;n=d+28|0;f=n;i[f>>2]=0;i[f+4>>2]=0;i[d+36>>2]=0;i[d+40>>2]=0;l=d+44|0;f=l;i[f>>2]=0;i[f+4>>2]=0;i[d+52>>2]=0;b=i[b+8>>2];o=e+36|0;f=o;i[f>>2]=0;i[f+4>>2]=0;p=e+28|0;f=p;i[f>>2]=0;i[f+4>>2]=0;q=e+20|0;f=q;i[f>>2]=0;i[f+4>>2]=0;f=e+12|0;i[f>>2]=0;i[f+4>>2]=0;i[e+52>>2]=0;i[e+56>>2]=0;i[e+44>>2]=0;i[e+48>>2]=0;i[e+4>>2]=0;i[e+8>>2]=0;i[e>>2]=12948;i[e+4>>2]=b;j=i[b>>2];m=i[b+4>>2];g[e+63|0]=0;Jf(e+24|0,(m-j>>2>>>0)/3|0,e+63|0);j=i[e+4>>2];m=i[j+28>>2];j=i[j+24>>2];g[e+63|0]=0;Jf(o,m-j>>2,e+63|0);i[q>>2]=d;i[e+16>>2]=h;i[f>>2]=c;i[e+8>>2]=b;i[n>>2]=d;b=i[f+4>>2];i[k>>2]=i[f>>2];i[k+4>>2]=b;b=i[e+8>>2];i[d+12>>2]=i[e+4>>2];i[d+16>>2]=b;a:{b:{c=d;b=i[p>>2];if(b){f=d+32|0;c:{if(b>>>0<=i[d+40>>2]<<5>>>0){h=b+ -1>>>5|0;b=i[f>>2];break c}f=i[f>>2];if(f){nn(f);i[d+40>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;b=i[e+28>>2]}if((b|0)<=-1){break b}h=b+ -1>>>5|0;f=h+1|0;b=Dm(f<<2);i[d+40>>2]=f;i[d+36>>2]=0;i[d+32>>2]=b}rn(b,i[e+24>>2],(h<<2)+4|0);b=i[e+28>>2]}else{b=0}i[c+36>>2]=b;f=d;b=i[e+40>>2];if(b){d:{if(b>>>0<=i[d+52>>2]<<5>>>0){c=b+ -1>>>5|0;b=i[l>>2];break d}c=i[l>>2];if(c){nn(c);i[d+52>>2]=0;i[d+44>>2]=0;i[d+48>>2]=0;b=i[e+40>>2]}if((b|0)<=-1){break a}c=b+ -1>>>5|0;h=c+1|0;b=Dm(h<<2);i[d+52>>2]=h;i[d+48>>2]=0;i[d+44>>2]=b}rn(b,i[e+36>>2],(c<<2)+4|0);b=i[e+40>>2]}else{b=0}i[f+48>>2]=b;Ma(d+56|0,i[e+48>>2],i[e+52>>2]);i[a>>2]=d;i[e>>2]=12948;a=i[e+48>>2];if(a){i[e+52>>2]=a;nn(a)}i[e>>2]=12764;a=i[e+36>>2];if(a){nn(a)}a=i[e+24>>2];if(a){nn(a)}J=e- -64|0;return}Sm();x()}Sm();x()}function Uk(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0;e=o(b,12)+a|0;n=e+12|0;p=e+8|0;i[n>>2]=i[p>>2];l=(c|0)==-1?-1:(c>>>0)/3|0;r=e+16|0;s=1;e=c;a:{b:{c:{while(1){d:{q=h;if(h){if((e|0)==-1){break d}if((Vk(a,((e>>>0)%3|0?-1:2)+e|0)|0)==-1){break a}c=e+1|0;c=(c>>>0)%3|0?c:e+ -2|0;if((c|0)==-1){break a}f=c+1|0;c=(f>>>0)%3|0?f:c+ -2|0;if((c|0)==-1){break a}c=i[i[i[a+4>>2]+12>>2]+(c<<2)>>2];if((c|0)==-1){break a}f=c+1|0;c=(f>>>0)%3|0?f:c+ -2|0;if((c|0)==-1){break a}l=(c>>>0)/3|0}j=1<<l;g=i[a+56>>2]+(l>>>3&536870908)|0;k=i[g>>2];e:{if(j&k){break e}f=0;while(1){i[g>>2]=k|j;d=i[n>>2];f:{if((d|0)!=i[r>>2]){i[d>>2]=l;i[n>>2]=d+4;break f}k=i[p>>2];j=d-k|0;m=j>>2;g=m+1|0;if(g>>>0>=1073741824){break c}d=j>>1;g=m>>>0<536870911?d>>>0<g>>>0?g:d:1073741823;d=0;g:{if(!g){break g}if(g>>>0>=1073741824){break b}d=Dm(g<<2)}m=d+(m<<2)|0;i[m>>2]=l;g=d+(g<<2)|0;m=m+4|0;if((j|0)>=1){pn(d,k,j)}i[p>>2]=d;i[n>>2]=m;i[r>>2]=g;if(!k){break f}nn(k)}d=f+1|0;h:{if(!f){break h}if(d&1){if((c|0)==-1){c=-1;break h}f=c+1|0;c=(f>>>0)%3|0?f:c+ -2|0;break h}e=q?c:e;if((c|0)==-1){c=-1;break h}if((c>>>0)%3|0){c=c+ -1|0;break h}c=c+2|0}c=Vk(a,c);if((c|0)!=-1){f=d;l=(c>>>0)/3|0;g=i[a+56>>2]+(l>>>3&268435452)|0;k=i[g>>2];j=1<<l;if(!(k&j)){continue}}break}if(!(d&1)|h^1){break e}h=i[n>>2]+ -4|0;f=i[h>>2];d=i[a+56>>2]+(f>>>3&536870908)|0;q=i[d>>2];t=d,u=Kn(f)&q,i[t>>2]=u;i[n>>2]=h}h=1;f=s;s=0;if(f){continue}break a}break}e=-1;Vk(a,-1);break a}Sm();x()}Ba(14548);x()}i[((b<<2)+a|0)+44>>2]=e;e=i[n>>2];b=i[p>>2];if((e|0)!=(b|0)){c=e-b|0;h=(c|0)>-1?c:-1;e=b-e|0;c=o((h|0)<1?h:1,((e|0)>(c|0)?e:c)>>>2|0);e=c>>>0>1?c:1;a=i[a+56>>2];c=0;while(1){h=i[b+(c<<2)>>2];f=a+(h>>>3&536870908)|0;d=i[f>>2];t=f,u=Kn(h)&d,i[t>>2]=u;c=c+1|0;if((e|0)!=(c|0)){continue}break}}}function Yg(a,b){var c=0,d=0,e=0;i[a>>2]=i[b>>2];i[a+4>>2]=i[b+4>>2];i[a+8>>2]=i[b+8>>2];c=b+12|0;i[a+12>>2]=i[c>>2];i[c>>2]=0;i[b+4>>2]=0;i[b+8>>2]=0;c=b+16|0;i[a+16>>2]=i[c>>2];i[a+20>>2]=i[b+20>>2];d=b+24|0;i[a+24>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=j[b+28|0];e=a+40|0;i[e>>2]=0;c=a+32|0;i[c>>2]=0;i[c+4>>2]=0;g[a+28|0]=d;d=c;c=b+32|0;i[d>>2]=i[c>>2];i[a+36>>2]=i[b+36>>2];d=b+40|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=a+52|0;i[d>>2]=0;c=a+44|0;i[c>>2]=0;i[c+4>>2]=0;e=c;c=b+44|0;i[e>>2]=i[c>>2];i[a+48>>2]=i[b+48>>2];e=d;d=b+52|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=a- -64|0;i[d>>2]=0;c=a+56|0;i[c>>2]=0;i[c+4>>2]=0;e=c;c=b+56|0;i[e>>2]=i[c>>2];i[a+60>>2]=i[b+60>>2];e=d;d=b- -64|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;i[a+68>>2]=i[b+68>>2];d=i[b+72>>2];e=a+84|0;i[e>>2]=0;c=a+76|0;i[c>>2]=0;i[c+4>>2]=0;i[a+72>>2]=d;d=c;c=b+76|0;i[d>>2]=i[c>>2];i[a+80>>2]=i[b+80>>2];d=b+84|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;d=a+96|0;i[d>>2]=0;c=a+88|0;i[c>>2]=0;i[c+4>>2]=0;e=c;c=b+88|0;i[e>>2]=i[c>>2];i[a+92>>2]=i[b+92>>2];e=d;d=b+96|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;c=j[b+100|0];d=a+112|0;i[d>>2]=0;i[a+104>>2]=0;i[a+108>>2]=0;g[a+100|0]=c;i[a+104>>2]=i[b+104>>2];i[a+108>>2]=i[b+108>>2];c=b+112|0;i[d>>2]=i[c>>2];i[c>>2]=0;i[b+104>>2]=0;i[b+108>>2]=0;d=a+124|0;i[d>>2]=0;c=a+116|0;i[c>>2]=0;i[c+4>>2]=0;e=c;c=b+116|0;i[e>>2]=i[c>>2];i[a+120>>2]=i[b+120>>2];e=d;d=b+124|0;i[e>>2]=i[d>>2];i[d>>2]=0;i[c>>2]=0;i[c+4>>2]=0;c=i[b+128>>2];d=a+140|0;i[d>>2]=0;i[a+132>>2]=0;i[a+136>>2]=0;i[a+128>>2]=c;i[a+132>>2]=i[b+132>>2];i[a+136>>2]=i[b+136>>2];c=b+140|0;i[d>>2]=i[c>>2];i[c>>2]=0;i[b+132>>2]=0;i[b+136>>2]=0;return a}function Xf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0,q=0;h=J-16|0;J=h;i[h>>2]=b;g=-1;a:{if((b|0)==-1){i[h+4>>2]=-1;break a}c=b+1|0;i[h+4>>2]=(c>>>0)%3|0?c:b+ -2|0;if((b>>>0)%3|0){g=b+ -1|0;break a}g=b+2|0}i[h+8>>2]=g;q=(b|0)==-1?-1:(b>>>0)/3|0;b:{c:{d:{e:{while(1){f:{g:{if((b|0)!=-1){c=i[i[i[a+8>>2]+12>>2]+(b<<2)>>2];if((c|0)!=-1){break g}}g=0;c=i[a+216>>2];if((c|0)==i[a+220>>2]){break f}while(1){f=o(g,144)+c|0;j=f+136|0;c=i[j>>2];l=f+140|0;d=i[l>>2];h:{if(c>>>0<d>>>0){i[c>>2]=b;i[j>>2]=c+4;break h}m=f+132|0;f=i[m>>2];k=c-f|0;c=k>>2;e=c+1|0;if(e>>>0>=1073741824){break e}n=c<<2;d=d-f|0;c=d>>1;e=d>>2>>>0<536870911?c>>>0<e>>>0?e:c:1073741823;c=0;i:{if(!e){break i}if(e>>>0>=1073741824){break d}c=Dm(e<<2)}d=n+c|0;i[d>>2]=b;e=c+(e<<2)|0;d=d+4|0;if((k|0)>=1){pn(c,f,k)}i[m>>2]=c;i[j>>2]=d;i[l>>2]=e;if(!f){break h}nn(f)}g=g+1|0;c=i[a+216>>2];if(g>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}break f}if((c>>>0)/3>>>0<q>>>0){break f}g=0;if(i[a+220>>2]==i[a+216>>2]){break f}while(1){j:{if(!Ce(i[a+368>>2]+(g<<4)|0)){break j}f=i[a+216>>2]+o(g,144)|0;j=f+136|0;c=i[j>>2];l=f+140|0;d=i[l>>2];if(c>>>0<d>>>0){i[c>>2]=b;i[j>>2]=c+4;break j}m=f+132|0;f=i[m>>2];k=c-f|0;c=k>>2;e=c+1|0;if(e>>>0>=1073741824){break c}n=c<<2;d=d-f|0;c=d>>1;e=d>>2>>>0<536870911?c>>>0<e>>>0?e:c:1073741823;c=0;k:{if(!e){break k}if(e>>>0>=1073741824){break b}c=Dm(e<<2)}d=n+c|0;i[d>>2]=b;e=c+(e<<2)|0;d=d+4|0;if((k|0)>=1){pn(c,f,k)}i[m>>2]=c;i[j>>2]=d;i[l>>2]=e;if(!f){break j}nn(f)}g=g+1|0;if(g>>>0<(i[a+220>>2]-i[a+216>>2]|0)/144>>>0){continue}break}}p=p+1|0;if((p|0)!=3){b=i[(p<<2)+h>>2];continue}break}J=h+16|0;return 1}Sm();x()}Ba(12220);x()}Sm();x()}Ba(12220);x()}function He(a,b,c,d){var e=0,f=0,h=0;e=J-80|0;J=e;f=i[c+36>>2];i[e+72>>2]=i[c+32>>2];i[e+76>>2]=f;h=i[c+28>>2];f=e- -64|0;i[f>>2]=i[c+24>>2];i[f+4>>2]=h;f=i[c+20>>2];i[e+56>>2]=i[c+16>>2];i[e+60>>2]=f;f=i[c+12>>2];i[e+48>>2]=i[c+8>>2];i[e+52>>2]=f;f=i[c+4>>2];i[e+40>>2]=i[c>>2];i[e+44>>2]=f;jh(a,e+40|0,e+24|0);a:{if(i[a>>2]){break a}h=a+4|0;if(g[a+15|0]<=-1){nn(i[h>>2])}if(j[e+31|0]){b=Dm(32);i[e>>2]=b;i[e+4>>2]=27;i[e+8>>2]=-2147483616;g[b+27|0]=0;c=j[11135]|j[11136]<<8|(j[11137]<<16|j[11138]<<24);g[b+23|0]=c;g[b+24|0]=c>>>8;g[b+25|0]=c>>>16;g[b+26|0]=c>>>24;c=j[11132]|j[11133]<<8|(j[11134]<<16|j[11135]<<24);d=j[11128]|j[11129]<<8|(j[11130]<<16|j[11131]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[11124]|j[11125]<<8|(j[11126]<<16|j[11127]<<24);d=j[11120]|j[11121]<<8|(j[11122]<<16|j[11123]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11116]|j[11117]<<8|(j[11118]<<16|j[11119]<<24);d=j[11112]|j[11113]<<8|(j[11114]<<16|j[11115]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;Gm(h,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}Ee(e,g[e+32|0]);f=i[e>>2];b:{if(f){i[a>>2]=f;Gm(h,e|4);break b}f=i[e+16>>2];i[e+16>>2]=0;mh(a,f,b,c,d);if(!i[a>>2]){if(g[h+11|0]<=-1){nn(i[h>>2])}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}if(!f){break b}M[i[i[f>>2]+4>>2]](f)}a=i[e+16>>2];i[e+16>>2]=0;if(a){M[i[i[a>>2]+4>>2]](a)}if(g[e+15|0]>-1){break a}nn(i[e+4>>2])}J=e+80|0}function Wf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;h=J-16|0;J=h;i[h>>2]=b;g=-1;a:{if((b|0)==-1){i[h+4>>2]=-1;break a}c=b+1|0;i[h+4>>2]=(c>>>0)%3|0?c:b+ -2|0;if((b>>>0)%3|0){g=b+ -1|0;break a}g=b+2|0}i[h+8>>2]=g;b:{c:{while(1){d:{if(!((b|0)==-1|i[i[i[a+8>>2]+12>>2]+(b<<2)>>2]==-1)){g=0;if(i[a+220>>2]==i[a+216>>2]){break d}e:{while(1){f:{g:{if(!Ce(i[a+368>>2]+(g<<4)|0)){break g}f=i[a+216>>2]+o(g,144)|0;j=f+136|0;c=i[j>>2];l=f+140|0;d=i[l>>2];if(c>>>0<d>>>0){i[c>>2]=b;i[j>>2]=c+4;break g}m=f+132|0;f=i[m>>2];k=c-f|0;c=k>>2;e=c+1|0;if(e>>>0>=1073741824){break f}n=c<<2;d=d-f|0;c=d>>1;e=d>>2>>>0<536870911?c>>>0<e>>>0?e:c:1073741823;c=0;h:{if(!e){break h}if(e>>>0>=1073741824){break e}c=Dm(e<<2)}d=n+c|0;i[d>>2]=b;e=c+(e<<2)|0;d=d+4|0;if((k|0)>=1){pn(c,f,k)}i[m>>2]=c;i[j>>2]=d;i[l>>2]=e;if(!f){break g}nn(f)}g=g+1|0;if(g>>>0<(i[a+220>>2]-i[a+216>>2]|0)/144>>>0){continue}break d}break}Sm();x()}Ba(12220);x()}g=0;c=i[a+216>>2];if((c|0)==i[a+220>>2]){break d}while(1){f=o(g,144)+c|0;j=f+136|0;c=i[j>>2];l=f+140|0;d=i[l>>2];i:{if(c>>>0<d>>>0){i[c>>2]=b;i[j>>2]=c+4;break i}m=f+132|0;f=i[m>>2];k=c-f|0;c=k>>2;e=c+1|0;if(e>>>0>=1073741824){break c}n=c<<2;d=d-f|0;c=d>>1;e=d>>2>>>0<536870911?c>>>0<e>>>0?e:c:1073741823;c=0;j:{if(!e){break j}if(e>>>0>=1073741824){break b}c=Dm(e<<2)}d=n+c|0;i[d>>2]=b;e=c+(e<<2)|0;d=d+4|0;if((k|0)>=1){pn(c,f,k)}i[m>>2]=c;i[j>>2]=d;i[l>>2]=e;if(!f){break i}nn(f)}g=g+1|0;c=i[a+216>>2];if(g>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}}p=p+1|0;if((p|0)!=3){b=i[(p<<2)+h>>2];continue}break}J=h+16|0;return 1}Sm();x()}Ba(12220);x()}function ge(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;f=c;k=i[b+16>>2];g=i[f+4>>2]-k|0;e=i[f>>2]-k|0;i[f>>2]=e;i[f+4>>2]=g;f=g>>31;h=f+g^f;f=e>>31;m=i[b+16>>2];l=(h+(f+e^f)|0)<=(m|0);a:{if(l){f=g;break a}b:{c:{if((e|0)>=0){j=1;h=1;if((g|0)>-1){break b}f=1;j=-1;h=-1;if((e|0)>=1){break c}break b}f=-1;j=-1;h=-1;if((g|0)<1){break b}}j=(g|0)<1?-1:1;h=f}f=e<<1;e=o(h,m);f=f-e|0;h=(o(h,j)|0)>-1;j=o(j,m);f=((h?0-f|0:f)+j|0)/2|0;i[c+4>>2]=f;g=(g<<1)-j|0;e=(e+(h?0-g|0:g)|0)/2|0;i[c>>2]=e}d:{e:{f:{g:{h:{if(!e){if(f){break h}j=1;f=0;g=0;h=0;break d}j=1;g=(e|0)<0&(f|0)<1;i:{if((e|0)>=1){h=(f|0)>-1?2:1;if(!g){break i}g=e;break d}h=(f|0)>0?3:0;if(!g){break i}g=e;break d}j=h+ -1|0;h=0;g=e;j:{switch(j|0){case 1:break j;case 0:break f;case 2:break g;default:break e}}f=0-f|0;g=0-e|0;h=2;break e}if((f|0)<1){break f}}g=0-f|0;h=3;f=e;break e}h=1;g=f;f=0-e|0}e=c;i[e>>2]=g;i[e+4>>2]=f;j=0}c=i[d+4>>2]+f|0;f=i[b+16>>2];e=i[d>>2]+g|0;k:{if((f|0)<(e|0)){e=e-i[b+4>>2]|0;break k}if((e|0)>=(0-f|0)){break k}e=i[b+4>>2]+e|0}l:{if((f|0)<(c|0)){c=c-i[b+4>>2]|0;break l}if((c|0)>=(0-f|0)){break l}c=i[b+4>>2]+c|0}m:{if(j){b=c;break m}b=c;n:{switch((4-h&3)+ -1|0){case 0:b=0-e|0;e=c;break m;case 1:b=0-c|0;e=0-e|0;break m;case 2:break n;default:break m}}b=e;e=0-c|0}o:{if(l){c=b;break o}p:{q:{if((e|0)>=0){c=1;g=1;if((b|0)>-1){break p}d=1;c=-1;g=-1;if((e|0)>=1){break q}break p}d=-1;c=-1;g=-1;if((b|0)<1){break p}}c=(b|0)<1?-1:1;g=d}d=e<<1;e=o(f,g);d=d-e|0;i[a>>2]=d;l=0-d|0;h=d;d=(o(c,g)|0)>-1;g=o(c,f);c=((d?l:h)+g|0)/2|0;b=(b<<1)-g|0;e=(e+(d?0-b|0:b)|0)/2|0}i[a>>2]=e+k;i[a+4>>2]=c+k}function Ee(a,b){var c=0,d=0,e=0;e=J-32|0;J=e;a:{b:{switch(b|0){case 0:c=Dm(44);b=c;i[b>>2]=0;i[b+4>>2]=0;i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=0;i[b+28>>2]=0;i[b+16>>2]=0;i[b+20>>2]=0;i[b+8>>2]=0;i[b+12>>2]=0;ih(b);i[b>>2]=13952;i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+16>>2]=b;break a;case 1:c=Dm(44);b=c;i[b>>2]=0;i[b+4>>2]=0;i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=0;i[b+28>>2]=0;i[b+16>>2]=0;i[b+20>>2]=0;i[b+8>>2]=0;i[b+12>>2]=0;ih(b);i[b>>2]=13860;i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+16>>2]=b;break a;default:break b}}b=Dm(32);i[e>>2]=b;i[e+4>>2]=28;i[e+8>>2]=-2147483616;g[b+28|0]=0;c=j[11080]|j[11081]<<8|(j[11082]<<16|j[11083]<<24);g[b+24|0]=c;g[b+25|0]=c>>>8;g[b+26|0]=c>>>16;g[b+27|0]=c>>>24;c=j[11076]|j[11077]<<8|(j[11078]<<16|j[11079]<<24);d=j[11072]|j[11073]<<8|(j[11074]<<16|j[11075]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[11068]|j[11069]<<8|(j[11070]<<16|j[11071]<<24);d=j[11064]|j[11065]<<8|(j[11066]<<16|j[11067]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11060]|j[11061]<<8|(j[11062]<<16|j[11063]<<24);d=j[11056]|j[11057]<<8|(j[11058]<<16|j[11059]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[e+16>>2]=-1;b=Gm(e+16|4,e);i[a>>2]=i[e+16>>2];Gm(a+4|0,b);i[a+16>>2]=0;if(g[b+11|0]<=-1){nn(i[b>>2])}if(g[e+11|0]>-1){break a}nn(i[e>>2])}J=e+32|0}function fc(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;e=J-16|0;J=e;h=M[i[i[a>>2]+24>>2]](a)|0;a:{if((h|0)<1){break a}q=a+48|0;k=1;while(1){b:{c:{if(!i[(M[i[i[a>>2]+28>>2]](a)|0)+40>>2]){break c}l=f<<2;b=i[l+i[a+36>>2]>>2];c=i[b+8>>2];m=Vb(b);if(!m){break c}n=i[(M[i[i[a>>2]+28>>2]](a)|0)+40>>2];o=i[c+56>>2];b=Dm(32);i[e>>2]=b;i[e+4>>2]=24;i[e+8>>2]=-2147483616;g[b+24|0]=0;c=j[2120]|j[2121]<<8|(j[2122]<<16|j[2123]<<24);d=j[2116]|j[2117]<<8|(j[2118]<<16|j[2119]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[2112]|j[2113]<<8|(j[2114]<<16|j[2115]<<24);d=j[2108]|j[2109]<<8|(j[2110]<<16|j[2111]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[2104]|j[2105]<<8|(j[2106]<<16|j[2107]<<24);d=j[2100]|j[2101]<<8|(j[2102]<<16|j[2103]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;d:{e:{d=n+16|0;b=d;c=i[b>>2];if(!c){break e}while(1){p=i[c+16>>2]<(o|0);b=p?b:c;c=i[(p<<2)+c>>2];if(c){continue}break}if((b|0)==(d|0)|(o|0)<i[b+16>>2]){break e}b=b+20|0;if(!Kb(b,e)){break e}b=Jh(b,e);break d}b=Jh(n,e)}if(g[e+11|0]<=-1){nn(i[e>>2])}if(!b){break c}La(i[i[i[a+36>>2]+l>>2]+8>>2],m);break b}b=i[i[a+36>>2]+(f<<2)>>2];if(!(M[i[i[b>>2]+24>>2]](b,q)|0)){break a}}f=f+1|0;k=(f|0)<(h|0);if((f|0)!=(h|0)){continue}break}}J=e+16|0;return(k^-1)&1}function Oe(a,b,c,d,e){var f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;a:{b:{c:{d:{e:{n=a+4|0;f:{if((n|0)==(b|0)){break f}f=j[b+27|0];h=f<<24>>24<0;k=j[e+11|0];p=k<<24>>24;g=(p|0)<0;f=h?i[b+20>>2]:f;k=g?i[e+4>>2]:k;l=f>>>0<k>>>0;m=l?f:k;if(m){g=g?i[e>>2]:e;o=b+16|0;h=h?i[o>>2]:o;o=Nl(g,h,m);if(!o){if(k>>>0<f>>>0){break f}break e}if((o|0)>-1){break e}break f}if(k>>>0>=f>>>0){break d}}h=i[b>>2];d=b;g:{h:{if(i[a>>2]==(b|0)){break h}i:{if(h){f=h;while(1){d=f;f=i[f+4>>2];if(f){continue}break}break i}d=b+8|0;if(i[i[b+8>>2]>>2]==(b|0)){while(1){f=i[d>>2];d=f+8|0;if((f|0)==i[i[f+8>>2]>>2]){continue}break}}d=i[d>>2]}g=j[e+11|0];f=g<<24>>24<0;l=j[d+27|0];k=l<<24>>24<0;j:{g=f?i[e+4>>2]:g;l=k?i[d+20>>2]:l;m=g>>>0<l>>>0?g:l;if(m){n=d+16|0;f=Nl(k?i[n>>2]:n,f?i[e>>2]:e,m);if(f){break j}}if(l>>>0<g>>>0){break h}break g}if((f|0)>-1){break g}}if(!h){i[c>>2]=b;return b}i[c>>2]=d;return d+4|0}return Pe(a,c,e)}f=Nl(h,g,m);if(f){break c}}if(l){break b}break a}if((f|0)>-1){break a}}h=i[b+4>>2];k:{if(h){f=h;while(1){d=f;f=i[f>>2];if(f){continue}break}break k}d=i[b+8>>2];if(i[d>>2]==(b|0)){break k}f=b+8|0;while(1){g=i[f>>2];f=g+8|0;d=i[g+8>>2];if((g|0)!=i[d>>2]){continue}break}}l:{m:{if((d|0)==(n|0)){break m}g=j[d+27|0];f=g<<24>>24<0;n:{g=f?i[d+20>>2]:g;l=g>>>0<k>>>0?g:k;if(l){m=d+16|0;f=Nl((p|0)<0?i[e>>2]:e,f?i[m>>2]:m,l);if(f){break n}}if(k>>>0<g>>>0){break m}break l}if((f|0)>-1){break l}}if(!h){i[c>>2]=b;return b+4|0}i[c>>2]=d;return d}return Pe(a,c,e)}i[c>>2]=b;i[d>>2]=b;return d}function Ge(a,b){var c=0,d=0,e=0;c=J-96|0;J=c;d=i[b+36>>2];i[c+88>>2]=i[b+32>>2];i[c+92>>2]=d;d=i[b+28>>2];i[c+80>>2]=i[b+24>>2];i[c+84>>2]=d;d=i[b+20>>2];i[c+72>>2]=i[b+16>>2];i[c+76>>2]=d;e=i[b+12>>2];d=c- -64|0;i[d>>2]=i[b+8>>2];i[d+4>>2]=e;d=i[b+4>>2];i[c+56>>2]=i[b>>2];i[c+60>>2]=d;jh(c+24|0,c+56|0,c+40|0);b=i[c+24>>2];a:{if(b){i[a>>2]=b;Gm(a+4|0,c+24|4);if(g[c+39|0]>-1){break a}nn(i[c+28>>2]);break a}if(g[c+39|0]<=-1){nn(i[c+28>>2])}b=j[c+47|0];if(b>>>0>=2){b=Dm(32);i[c+8>>2]=b;i[c+12>>2]=26;i[c+16>>2]=-2147483616;g[b+26|0]=0;d=j[11109]|j[11110]<<8;g[b+24|0]=d;g[b+25|0]=d>>>8;d=j[11105]|j[11106]<<8|(j[11107]<<16|j[11108]<<24);e=j[11101]|j[11102]<<8|(j[11103]<<16|j[11104]<<24);g[b+16|0]=e;g[b+17|0]=e>>>8;g[b+18|0]=e>>>16;g[b+19|0]=e>>>24;g[b+20|0]=d;g[b+21|0]=d>>>8;g[b+22|0]=d>>>16;g[b+23|0]=d>>>24;d=j[11097]|j[11098]<<8|(j[11099]<<16|j[11100]<<24);e=j[11093]|j[11094]<<8|(j[11095]<<16|j[11096]<<24);g[b+8|0]=e;g[b+9|0]=e>>>8;g[b+10|0]=e>>>16;g[b+11|0]=e>>>24;g[b+12|0]=d;g[b+13|0]=d>>>8;g[b+14|0]=d>>>16;g[b+15|0]=d>>>24;d=j[11089]|j[11090]<<8|(j[11091]<<16|j[11092]<<24);e=j[11085]|j[11086]<<8|(j[11087]<<16|j[11088]<<24);g[b|0]=e;g[b+1|0]=e>>>8;g[b+2|0]=e>>>16;g[b+3|0]=e>>>24;g[b+4|0]=d;g[b+5|0]=d>>>8;g[b+6|0]=d>>>16;g[b+7|0]=d>>>24;i[c+24>>2]=-1;b=Gm(c+24|4,c+8|0);i[a>>2]=i[c+24>>2];Gm(a+4|0,b);if(g[b+11|0]<=-1){nn(i[b>>2])}if(g[c+19|0]>-1){break a}nn(i[c+8>>2]);break a}i[a>>2]=0;i[a+4>>2]=0;i[a+16>>2]=b;i[a+8>>2]=0;i[a+12>>2]=0}J=c+96|0}function Ie(a,b,c,d){var e=0,f=0,h=0;e=J-80|0;J=e;f=i[c+36>>2];i[e+72>>2]=i[c+32>>2];i[e+76>>2]=f;h=i[c+28>>2];f=e- -64|0;i[f>>2]=i[c+24>>2];i[f+4>>2]=h;f=i[c+20>>2];i[e+56>>2]=i[c+16>>2];i[e+60>>2]=f;f=i[c+12>>2];i[e+48>>2]=i[c+8>>2];i[e+52>>2]=f;f=i[c+4>>2];i[e+40>>2]=i[c>>2];i[e+44>>2]=f;jh(a,e+40|0,e+24|0);a:{if(i[a>>2]){break a}f=a+4|0;if(g[a+15|0]<=-1){nn(i[f>>2])}if(j[e+31|0]!=1){b=Dm(32);i[e>>2]=b;i[e+4>>2]=20;i[e+8>>2]=-2147483616;g[b+20|0]=0;c=j[11156]|j[11157]<<8|(j[11158]<<16|j[11159]<<24);g[b+16|0]=c;g[b+17|0]=c>>>8;g[b+18|0]=c>>>16;g[b+19|0]=c>>>24;c=j[11152]|j[11153]<<8|(j[11154]<<16|j[11155]<<24);d=j[11148]|j[11149]<<8|(j[11150]<<16|j[11151]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11144]|j[11145]<<8|(j[11146]<<16|j[11147]<<24);d=j[11140]|j[11141]<<8|(j[11142]<<16|j[11143]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;Gm(f,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}Fe(e,j[e+32|0]);h=i[e>>2];b:{if(h){i[a>>2]=h;Gm(f,e|4);break b}h=i[e+16>>2];i[e+16>>2]=0;i[h+44>>2]=d;mh(a,h,b,c,d);if(!i[a>>2]){if(g[f+11|0]<=-1){nn(i[f>>2])}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}if(!h){break b}M[i[i[h>>2]+4>>2]](h)}a=i[e+16>>2];i[e+16>>2]=0;if(a){M[i[i[a>>2]+4>>2]](a)}if(g[e+15|0]>-1){break a}nn(i[e+4>>2])}J=e+80|0}function Kd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;i[a+8>>2]=e;h=a+32|0;g=i[h>>2];f=i[a+36>>2]-g>>2;a:{if(f>>>0<e>>>0){Ra(h,e-f|0);break a}if(f>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}h=0;f=(e&1073741823)!=(e|0)?-1:e<<2;n=qn(Dm(f),0,f);g=i[a+8>>2];b:{if((g|0)<1){break b}while(1){f=h<<2;g=i[f+n>>2];j=i[a+16>>2];c:{if((g|0)>(j|0)){k=i[a+32>>2];i[f+k>>2]=j;break c}k=i[a+32>>2];f=f+k|0;j=i[a+12>>2];if((g|0)<(j|0)){i[f>>2]=j;break c}i[f>>2]=g}h=h+1|0;g=i[a+8>>2];if((h|0)<(g|0)){continue}break}if((g|0)<1){break b}j=0;while(1){h=j<<2;f=h+c|0;h=i[b+h>>2]+i[h+k>>2]|0;i[f>>2]=h;d:{if((h|0)>i[a+16>>2]){h=h-i[a+20>>2]|0}else{if((h|0)>=i[a+12>>2]){break d}h=h+i[a+20>>2]|0}i[f>>2]=h}j=j+1|0;g=i[a+8>>2];if((j|0)<(g|0)){continue}break}}if((e|0)<(d|0)){p=0-e<<2;f=e;while(1){e:{if((g|0)<1){break e}m=f<<2;o=m+c|0;q=o+p|0;h=0;while(1){g=h<<2;j=i[g+q>>2];l=i[a+16>>2];f:{if((j|0)>(l|0)){k=i[a+32>>2];i[g+k>>2]=l;break f}k=i[a+32>>2];g=g+k|0;l=i[a+12>>2];if((j|0)<(l|0)){i[g>>2]=l;break f}i[g>>2]=j}h=h+1|0;g=i[a+8>>2];if((h|0)<(g|0)){continue}break}j=0;if((g|0)<1){break e}m=b+m|0;while(1){g=j<<2;h=g+o|0;g=i[g+m>>2]+i[g+k>>2]|0;i[h>>2]=g;g:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break g}g=g+i[a+20>>2]|0}i[h>>2]=g}j=j+1|0;g=i[a+8>>2];if((j|0)<(g|0)){continue}break}}f=e+f|0;if((f|0)<(d|0)){continue}break}}nn(n);return 1}function hg(a,b){var c=0,d=0,e=0,f=0,g=0;c=-1;f=-1;a:{if((b|0)==-1){break a}e=b+1|0;c=(e>>>0)%3|0?e:b+ -2|0;f=b+ -1|0;if((b>>>0)%3|0){break a}f=b+2|0}b:{c:{d:{e:{f:{g:{d=i[a+184>>2];switch(d|0){case 7:break d;case 3:break e;case 5:break f;case 0:case 1:break g;default:break b}}g=i[a+148>>2];e=-1;d=1;c=((c|0)!=-1?i[i[g>>2]+(c<<2)>>2]:e)<<2;e=i[a+156>>2];c=c+e|0;i[c>>2]=i[c>>2]+1;c=(((f|0)!=-1?i[i[g>>2]+(f<<2)>>2]:-1)<<2)+e|0;break c}g=i[a+148>>2];e=i[a+156>>2];d=e+(((b|0)!=-1?i[i[g>>2]+(b<<2)>>2]:-1)<<2)|0;i[d>>2]=i[d>>2]+1;d=(((c|0)!=-1?i[i[g>>2]+(c<<2)>>2]:-1)<<2)+e|0;i[d>>2]=i[d>>2]+1;c=-1;d=2;c=e+(((f|0)!=-1?i[i[g>>2]+(f<<2)>>2]:c)<<2)|0;break c}g=i[a+148>>2];e=i[a+156>>2];d=e+(((b|0)!=-1?i[i[g>>2]+(b<<2)>>2]:-1)<<2)|0;i[d>>2]=i[d>>2]+1;d=(((c|0)!=-1?i[i[g>>2]+(c<<2)>>2]:-1)<<2)+e|0;i[d>>2]=i[d>>2]+2;d=1;c=(((f|0)!=-1?i[i[g>>2]+(f<<2)>>2]:-1)<<2)+e|0;break c}g=i[a+148>>2];e=i[a+156>>2];d=e+(((b|0)!=-1?i[i[g>>2]+(b<<2)>>2]:-1)<<2)|0;i[d>>2]=i[d>>2]+2;d=(((c|0)!=-1?i[i[g>>2]+(c<<2)>>2]:-1)<<2)+e|0;i[d>>2]=i[d>>2]+2;c=-1;d=2;c=e+(((f|0)!=-1?i[i[g>>2]+(f<<2)>>2]:c)<<2)|0}i[c>>2]=i[c>>2]+d;d=i[a+184>>2]}h:{switch(d|0){case 0:case 5:f=i[a+156>>2];c=-1;i:{if((b|0)==-1){break i}d=b+1|0;b=(d>>>0)%3|0?d:b+ -2|0;c=-1;if((b|0)==-1){break i}c=i[i[i[a+148>>2]>>2]+(b<<2)>>2]}if(i[f+(c<<2)>>2]<=5){i[a+188>>2]=5;return}i[a+188>>2]=0;return;default:break h}}i[a+188>>2]=-1}function If(a,b,c){var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0;d=J-112|0;J=d;m=i[i[b+4>>2]+44>>2];h=Dm(120);e=h;i[e+12>>2]=0;i[e+16>>2]=0;i[e>>2]=12316;i[e+4>>2]=0;i[e+8>>2]=12528;i[e+116>>2]=0;i[e+112>>2]=c;i[e+108>>2]=m;i[e+104>>2]=0;i[e+96>>2]=0;i[e+100>>2]=0;i[e+20>>2]=0;i[e+24>>2]=0;i[e+28>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;i[e+56>>2]=0;i[e+60>>2]=0;e=e- -64|0;i[e>>2]=0;i[e+4>>2]=0;i[h+72>>2]=0;i[h+76>>2]=0;i[h+80>>2]=0;i[h+84>>2]=0;i[h+88>>2]=0;b=i[b+8>>2];i[d+52>>2]=0;e=d+44|0;i[e>>2]=0;i[e+4>>2]=0;i[d+36>>2]=0;i[d+40>>2]=0;n=d+28|0;k=n;i[k>>2]=0;i[k+4>>2]=0;k=d+20|0;f=k;i[f>>2]=0;i[f+4>>2]=0;f=d- -64|0;i[f>>2]=0;i[f+4>>2]=0;i[d+72>>2]=0;i[d+76>>2]=0;f=d+80|0;i[f>>2]=0;i[f+4>>2]=0;i[d+88>>2]=0;i[d+104>>2]=0;i[d+12>>2]=0;i[d+16>>2]=0;i[d+56>>2]=0;i[d+60>>2]=0;i[d+8>>2]=12528;i[d+96>>2]=0;i[d+100>>2]=0;i[d+12>>2]=b;j=i[b>>2];l=i[b+4>>2];g[d+111|0]=0;Jf(d+32|0,(l-j>>2>>>0)/3|0,d+111|0);j=i[d+12>>2];l=i[j+28>>2];j=i[j+24>>2];g[d+111|0]=0;Jf(e,l-j>>2,d+111|0);i[n>>2]=h;i[d+24>>2]=m;i[k>>2]=c;i[d+16>>2]=b;Lf(h,d+8|0);i[a>>2]=h;i[d+8>>2]=12528;a=i[d+96>>2];if(a){i[d+100>>2]=a;nn(a)}a=i[f>>2];if(a){i[d+84>>2]=a;nn(a)}a=i[d+68>>2];if(a){i[d+72>>2]=a;nn(a)}a=i[d+56>>2];if(a){i[d+60>>2]=a;nn(a)}i[d+8>>2]=12764;a=i[d+44>>2];if(a){nn(a)}a=i[d+32>>2];if(a){nn(a)}J=d+112|0}function Yc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,o=0,p=0,q=0;n=J-32|0;J=n;i[n+28>>2]=0;a:{b:{if(k[b+38>>1]<=513){g=i[b+12>>2];c=i[b+20>>2];e=i[b+16>>2];d=e+4|0;if(d>>>0<4){c=c+1|0}f=d;d=c;if((g|0)<(c|0)?1:(g|0)<=(c|0)?l[b+8>>2]<f>>>0:0){break a}c=e+i[b>>2]|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=d;break b}if(!Nc(1,n+28|0,b)){break a}c=i[n+28>>2]}if(!c){break a}f=a+76|0;Oc(f,c);o=ze(n+8|0);c:{if(!Ae(o,b)){break c}g=1;while(1){e=1<<m;h=Ce(o);d=i[f>>2]+(m>>>3&536870908)|0;g=g^h;h=i[d>>2]|e;d:{if(!(g&1)){break d}h=i[d>>2]&(e^-1)}e=h;g=g^1;i[d>>2]=e;m=m+1|0;if((c|0)!=(m|0)){continue}break}m=0;d=i[b+12>>2];g=d;c=i[b+20>>2];e=c;o=i[b+16>>2];f=o+4|0;if(f>>>0<4){c=c+1|0}p=i[b+8>>2];h=f;f=c;if((d|0)<(c|0)?1:(d|0)<=(c|0)?p>>>0<h>>>0:0){break c}q=i[b>>2];c=q+o|0;d=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=h;i[b+20>>2]=f;c=e;e=o+8|0;if(e>>>0<8){c=c+1|0}f=e;e=c;if((g|0)<(c|0)?1:(g|0)<=(c|0)?p>>>0<f>>>0:0){break c}c=h+q|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=e;if((d|0)>(c|0)){break c}i[a+16>>2]=c;i[a+12>>2]=d;b=d;d=(c>>31)-((c>>>0<b>>>0)+(b>>31)|0)|0;b=c-b|0;if(!d&b>>>0>2147483646|d>>>0>0){break c}m=1;b=b+1|0;i[a+20>>2]=b;c=(b|0)/2|0;i[a+24>>2]=c;i[a+28>>2]=0-c;if(b&1){break c}i[a+24>>2]=c+ -1}}J=n+32|0;return m|0}function Sf(a,b){var c=0,d=0,e=0,f=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if((e-c|0)/144>>>0>=b>>>0){d=a;if(b){a=o(b,144)+c|0;while(1){i[c>>2]=-1;Pk(c+4|0);i[c+104>>2]=0;i[c+108>>2]=0;g[c+100|0]=1;i[c+112>>2]=0;i[c+116>>2]=0;i[c+120>>2]=0;i[c+124>>2]=0;i[c+128>>2]=0;i[c+132>>2]=0;i[c+136>>2]=0;i[c+140>>2]=0;c=c+144|0;if((a|0)!=(c|0)){continue}break}c=a}i[d+4>>2]=c;return}a:{b:{c:{f=i[a>>2];c=(c-f|0)/144|0;d=c+b|0;if(d>>>0<29826162){h=o(c,144);e=(e-f|0)/144|0;f=e<<1;f=e>>>0<14913080?f>>>0<d>>>0?d:f:29826161;c=0;d:{if(!f){break d}if(f>>>0>=29826162){break c}c=Dm(o(f,144))}e=c;d=c+h|0;h=d+o(b,144)|0;c=d;while(1){i[c>>2]=-1;Pk(c+4|0);i[c+104>>2]=0;i[c+108>>2]=0;g[c+100|0]=1;i[c+112>>2]=0;i[c+116>>2]=0;i[c+120>>2]=0;i[c+124>>2]=0;i[c+128>>2]=0;i[c+132>>2]=0;i[c+136>>2]=0;i[c+140>>2]=0;c=c+144|0;if((h|0)!=(c|0)){continue}break}e=o(f,144)+e|0;b=i[a>>2];c=i[a+4>>2];if((b|0)==(c|0)){break b}while(1){c=c+ -144|0;d=Yg(d+ -144|0,c);if((b|0)!=(c|0)){continue}break}i[a+8>>2]=e;c=i[a+4>>2];i[a+4>>2]=h;b=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){a=i[c+ -12>>2];if(a){i[c+ -8>>2]=a;nn(a)}a=i[c+ -28>>2];if(a){i[c+ -24>>2]=a;nn(a)}a=c+ -144|0;d=i[c+ -40>>2];if(d){i[c+ -36>>2]=d;nn(d)}Rf(c+ -140|0);c=a;if((c|0)!=(b|0)){continue}break}break a}Sm();x()}Ba(12220);x()}i[a+8>>2]=e;i[a+4>>2]=h;i[a>>2]=d}if(b){nn(b)}}function Mc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,m=0,n=0,p=0,q=0,r=0;n=J-32|0;J=n;a:{if(k[b+38>>1]<=513){e=i[b+16>>2];d=i[b+12>>2];c=i[b+20>>2];if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]<=e>>>0:0){break a}f=j[e+i[b>>2]|0];e=e+1|0;if(e>>>0<1){c=c+1|0}i[b+16>>2]=e;i[b+20>>2]=c;if(f){break a}}b:{while(1){if(!Nc(1,n+28|0,b)){break b}c=i[n+28>>2];if(c){f=(o(g,12)+a|0)+60|0;Oc(f,c);m=ze(n+8|0);if(!Ae(m,b)){break b}h=0;while(1){d=1<<h;p=Ce(m);e=i[f>>2]+(h>>>3&536870908)|0;q=e;if(p){d=i[e>>2]|d}else{d=i[e>>2]&(d^-1)}i[q>>2]=d;h=h+1|0;if((c|0)!=(h|0)){continue}break}}g=g+1|0;if((g|0)!=4){continue}break}h=0;d=i[b+12>>2];e=d;c=i[b+20>>2];g=c;m=i[b+16>>2];f=m+4|0;if(f>>>0<4){c=c+1|0}q=i[b+8>>2];p=f;f=c;if((d|0)<(c|0)?1:(d|0)<=(c|0)?q>>>0<p>>>0:0){break a}r=i[b>>2];c=r+m|0;d=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=p;i[b+20>>2]=f;c=g;g=m+8|0;if(g>>>0<8){c=c+1|0}f=g;g=c;if((e|0)<(c|0)?1:(e|0)<=(c|0)?q>>>0<f>>>0:0){break a}c=p+r|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=g;if((d|0)>(c|0)){break a}i[a+16>>2]=c;i[a+12>>2]=d;b=d;d=(c>>31)-((c>>>0<b>>>0)+(b>>31)|0)|0;b=c-b|0;if(!d&b>>>0>2147483646|d>>>0>0){break a}h=1;b=b+1|0;i[a+20>>2]=b;c=(b|0)/2|0;i[a+24>>2]=c;i[a+28>>2]=0-c;if(b&1){break a}i[a+24>>2]=c+ -1;break a}h=0}J=n+32|0;return h|0}function Fe(a,b){var c=0,d=0,e=0;e=J-32|0;J=e;a:{b:{switch(b|0){case 0:b=Dm(48);qf(b);i[b>>2]=13256;i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+16>>2]=b;break a;case 1:b=Dm(52);qf(b);i[b+48>>2]=0;i[b>>2]=11360;i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+16>>2]=b;break a;default:break b}}b=Dm(32);i[e>>2]=b;i[e+4>>2]=28;i[e+8>>2]=-2147483616;g[b+28|0]=0;c=j[11080]|j[11081]<<8|(j[11082]<<16|j[11083]<<24);g[b+24|0]=c;g[b+25|0]=c>>>8;g[b+26|0]=c>>>16;g[b+27|0]=c>>>24;c=j[11076]|j[11077]<<8|(j[11078]<<16|j[11079]<<24);d=j[11072]|j[11073]<<8|(j[11074]<<16|j[11075]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[11068]|j[11069]<<8|(j[11070]<<16|j[11071]<<24);d=j[11064]|j[11065]<<8|(j[11066]<<16|j[11067]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11060]|j[11061]<<8|(j[11062]<<16|j[11063]<<24);d=j[11056]|j[11057]<<8|(j[11058]<<16|j[11059]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[e+16>>2]=-1;b=Gm(e+16|4,e);i[a>>2]=i[e+16>>2];Gm(a+4|0,b);i[a+16>>2]=0;if(g[b+11|0]<=-1){nn(i[b>>2])}if(g[e+11|0]>-1){break a}nn(i[e>>2])}J=e+32|0}function dd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,o=0,p=0;m=J-16|0;J=m;e=i[b+12>>2];c=i[b+20>>2];f=i[b+16>>2];d=f+4|0;if(d>>>0<4){c=c+1|0}g=d;d=c;a:{if((e|0)<(c|0)?1:(e|0)<=(c|0)?l[b+8>>2]<g>>>0:0){break a}c=f+i[b>>2]|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=g;i[b+20>>2]=d;if((c|0)<0){break a}Oc(a+76|0,c);g=ze(m);b:{if(!Ae(g,b)){break b}if((c|0)>=1){e=1;while(1){f=1<<k;h=Ce(g);d=i[a+76>>2]+(k>>>3&536870908)|0;e=e^h;h=i[d>>2]|f;c:{if(!(e&1)){break c}h=i[d>>2]&(f^-1)}f=h;e=e^1;i[d>>2]=f;k=k+1|0;if((c|0)!=(k|0)){continue}break}}d=i[b+12>>2];k=d;c=i[b+20>>2];e=c;g=i[b+16>>2];f=g+4|0;if(f>>>0<4){c=c+1|0}n=i[b+8>>2];h=f;f=c;if((d|0)<(c|0)?1:(d|0)<=(c|0)?n>>>0<h>>>0:0){break b}o=i[b>>2];c=o+g|0;d=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=h;i[b+20>>2]=f;c=e;e=g+8|0;if(e>>>0<8){c=c+1|0}f=e;e=c;if((k|0)<(c|0)?1:(k|0)<=(c|0)?n>>>0<f>>>0:0){break b}c=h+o|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=e;if((d|0)>(c|0)){break b}i[a+16>>2]=c;i[a+12>>2]=d;b=d;d=(c>>31)-((c>>>0<b>>>0)+(b>>31)|0)|0;b=c-b|0;if(!d&b>>>0>2147483646|d>>>0>0){break b}p=1;b=b+1|0;i[a+20>>2]=b;c=(b|0)/2|0;i[a+24>>2]=c;i[a+28>>2]=0-c;if(b&1){break b}i[a+24>>2]=c+ -1}}J=m+16|0;return p|0}function og(a,b){var c=0,d=0,e=0,f=0,g=0;f=-1;d=-1;a:{if((b|0)==-1){break a}d=b+1|0;f=(d>>>0)%3|0?d:b+ -2|0;d=b+ -1|0;if((b>>>0)%3|0){break a}d=b+2|0}b:{c:{d:{switch(i[a+168>>2]){case 0:case 1:c=i[a+148>>2];e=1;b=i[a+156>>2];g=b+(((f|0)!=-1?i[i[c>>2]+(f<<2)>>2]:-1)<<2)|0;i[g>>2]=i[g>>2]+1;b=(((d|0)!=-1?i[i[c>>2]+(d<<2)>>2]:-1)<<2)+b|0;break c;case 5:e=i[a+148>>2];c=-1;c=((b|0)!=-1?i[i[e>>2]+(b<<2)>>2]:c)<<2;b=i[a+156>>2];c=c+b|0;i[c>>2]=i[c>>2]+1;c=(((f|0)!=-1?i[i[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;i[c>>2]=i[c>>2]+1;c=-1;c=(d|0)!=-1?i[i[e>>2]+(d<<2)>>2]:c;e=2;b=b+(c<<2)|0;break c;case 3:e=i[a+148>>2];c=-1;c=((b|0)!=-1?i[i[e>>2]+(b<<2)>>2]:c)<<2;b=i[a+156>>2];c=c+b|0;i[c>>2]=i[c>>2]+1;c=(((f|0)!=-1?i[i[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;i[c>>2]=i[c>>2]+2;b=(((d|0)!=-1?i[i[e>>2]+(d<<2)>>2]:-1)<<2)+b|0;e=1;break c;case 7:break d;default:break b}}e=i[a+148>>2];c=-1;c=((b|0)!=-1?i[i[e>>2]+(b<<2)>>2]:c)<<2;b=i[a+156>>2];c=c+b|0;i[c>>2]=i[c>>2]+2;c=(((f|0)!=-1?i[i[e>>2]+(f<<2)>>2]:-1)<<2)+b|0;i[c>>2]=i[c>>2]+2;c=-1;c=(d|0)!=-1?i[i[e>>2]+(d<<2)>>2]:c;e=2;b=b+(c<<2)|0}i[b>>2]=i[b>>2]+e}c=-1;c=(f|0)!=-1?i[i[i[a+148>>2]>>2]+(f<<2)>>2]:c;f=i[a+176>>2];b=f;d=a;c=i[i[a+156>>2]+(c<<2)>>2];if((c|0)>=(b|0)){a=i[a+180>>2];b=(c|0)>(a|0)?a:c}i[d+172>>2]=b-f}function fi(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=J-16|0;J=e;i[a+68>>2]=i[a+68>>2]+1;d=o(b,12)+a|0;f=i[d+12>>2];h=i[d+8>>2];d=f-h|0;if((d|0)>=1){f=h-f|0;d=((f|0)>(d|0)?f:d)>>>2|0;k=d>>>0>1?d:1;d=i[((b<<2)+a|0)+44>>2];h=0;while(1){b=d;f=(b>>>0)/3|0;g=(b|0)==-1;d=g?-1:f;j=i[a+56>>2]+(d>>>3&536870908)|0;i[j>>2]=i[j>>2]|1<<d;i[a+72>>2]=i[a+72>>2]+1;a:{b:{if(!h){i[e+12>>2]=(b|0)<0?-1:i[(i[i[a>>2]+96>>2]+o(f,12)|0)+((b>>>0)%3<<2)>>2];i[e+8>>2]=c;ei(e+8|0,e+12|0);c:{if(!g){d=-1;f=e;g=b+1|0;g=(g>>>0)%3|0?g:b+ -2|0;if((g|0)>=0){j=(g>>>0)/3|0;j=i[(i[i[a>>2]+96>>2]+o(j,12)|0)+(g-o(j,3)<<2)>>2]}else{j=-1}i[f+12>>2]=j;i[e+8>>2]=c;ei(e+8|0,e+12|0);f=((b>>>0)%3|0?-1:2)+b|0;if((f|0)<0){break c}d=(f>>>0)/3|0;d=i[(i[i[a>>2]+96>>2]+o(d,12)|0)+(f-o(d,3)<<2)>>2];break c}d=-1;i[e+12>>2]=-1;i[e+8>>2]=c;ei(e+8|0,e+12|0)}i[a+76>>2]=d;i[e+12>>2]=d;i[e+8>>2]=c;ei(e+8|0,e+12|0);break b}g=(b|0)<0?-1:i[(i[i[a>>2]+96>>2]+o(f,12)|0)+((b>>>0)%3<<2)>>2];i[a+76>>2]=g;i[e+12>>2]=g;i[e+8>>2]=c;ei(e+8|0,e+12|0);if(h&1){d=-1;if((b|0)==-1){break a}if(b-o(f,3)|0){b=b+ -1|0;break b}b=b+2|0;break b}d=-1;if((b|0)==-1){break a}d=b+1|0;b=(d>>>0)%3|0?d:b+ -2|0}d=-1;if((b|0)==-1){break a}d=i[i[i[a+4>>2]+12>>2]+(b<<2)>>2]}h=h+1|0;if((k|0)!=(h|0)){continue}break}}J=e+16|0}function Ke(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=J-32|0;J=e;f=a+16|0;d=i[f>>2];a:{b:{if(!d){break b}h=i[b>>2];c=f;while(1){g=i[d+16>>2]<(h|0);c=g?c:d;d=i[(g<<2)+d>>2];if(d){continue}break}if((c|0)==(f|0)){break b}if((h|0)>=i[c+16>>2]){break a}}k=Gh(e+16|0);b=i[b>>2];j=e+8|0;i[j>>2]=0;i[j+4>>2]=0;i[e>>2]=b;i[e+4>>2]=j;c=i[k>>2];h=k+4|0;if((c|0)!=(h|0)){g=e|4;while(1){b=c;d=c+16|0;Le(g,j,d,d);d=i[c+4>>2];c:{if(!d){c=i[b+8>>2];if((b|0)==i[c>>2]){break c}d=b+8|0;while(1){b=i[d>>2];d=b+8|0;c=i[b+8>>2];if((b|0)!=i[c>>2]){continue}break}break c}while(1){c=d;d=i[c>>2];if(d){continue}break}}if((c|0)!=(h|0)){continue}break}}d=i[f>>2];d:{if(d){f=a+16|0;g=i[e>>2];while(1){b=i[d+16>>2];e:{if((g|0)<(b|0)){c=i[d>>2];if(c){break e}f=d;break d}if((b|0)>=(g|0)){break d}f=d+4|0;c=i[d+4>>2];if(!c){break d}d=f}f=d;d=c;continue}}d=f}c=i[f>>2];if(!c){c=Dm(32);i[c+16>>2]=i[e>>2];i[c+20>>2]=i[e+4>>2];g=i[e+8>>2];i[c+24>>2]=g;b=i[e+12>>2];i[c+28>>2]=b;h=c+24|0;f:{if(!b){i[c+20>>2]=h;break f}i[g+8>>2]=h;i[e+8>>2]=0;i[e+12>>2]=0;i[e+4>>2]=j}i[c+8>>2]=d;i[c>>2]=0;i[c+4>>2]=0;i[f>>2]=c;d=i[i[a+12>>2]>>2];b=c;g:{if(!d){break g}i[a+12>>2]=d;b=i[f>>2]}Me(i[a+16>>2],b);a=a+20|0;i[a>>2]=i[a>>2]+1}Ne(e|4,i[e+8>>2]);Ne(k,i[k+4>>2])}J=e+32|0;return c+20|0}function kh(a,b){var c=0,d=0,e=0;e=J-32|0;J=e;c=Dm(36);i[c+4>>2]=0;i[c+8>>2]=0;i[c+16>>2]=0;i[c+20>>2]=0;i[c+32>>2]=0;i[c+24>>2]=0;i[c+28>>2]=0;i[c>>2]=c+4;i[c+12>>2]=c+16;i[e+24>>2]=c;d=e+16|0;i[d>>2]=0;a:{if(!Zk(d,i[b+32>>2],c)){b=Dm(32);i[e>>2]=b;i[e+4>>2]=26;i[e+8>>2]=-2147483616;g[b+26|0]=0;c=j[13614]|j[13615]<<8;g[b+24|0]=c;g[b+25|0]=c>>>8;c=j[13610]|j[13611]<<8|(j[13612]<<16|j[13613]<<24);d=j[13606]|j[13607]<<8|(j[13608]<<16|j[13609]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[13602]|j[13603]<<8|(j[13604]<<16|j[13605]<<24);d=j[13598]|j[13599]<<8|(j[13600]<<16|j[13601]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[13594]|j[13595]<<8|(j[13596]<<16|j[13597]<<24);d=j[13590]|j[13591]<<8|(j[13592]<<16|j[13593]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;i[a>>2]=-1;Gm(a+4|0,e);if(g[e+11|0]>-1){break a}nn(i[e>>2]);break a}b=i[b+4>>2];i[e+24>>2]=0;d=i[b+4>>2];i[b+4>>2]=c;if(d){lh(d)}i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}a=i[e+24>>2];i[e+24>>2]=0;if(a){lh(a)}J=e+32|0}function Re(a,b,c,d){var e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=J+ -64|0;J=e;i[e+56>>2]=0;i[e+48>>2]=0;i[e+52>>2]=0;i[e+40>>2]=0;i[e+44>>2]=0;i[e+32>>2]=0;i[e+36>>2]=0;i[e+24>>2]=0;i[e+28>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;a:{if(!Te(e+8|0,c)){break a}if(!Ue(e+8|0,c)){break a}b:{if(!a){Ch(c,0,0);break b}if(!i[e+20>>2]){break a}Ch(c,0,0);h=i[e+56>>2];s=i[e+36>>2];t=i[e+48>>2];u=i[e+24>>2];while(1){c:{if(h>>>0>16383){break c}f=i[e+52>>2];while(1){if((f|0)<1){break c}f=f+ -1|0;i[e+52>>2]=f;h=j[f+t|0]|h<<8;i[e+56>>2]=h;if(h>>>0<16384){continue}break}}g=h&4095;q=i[(g<<2)+u>>2];k=(q<<3)+s|0;h=(o(i[k>>2],h>>>12|0)+g|0)-i[k+4>>2]|0;i[e+56>>2]=h;if((b|0)>=1){if(!j[c+36|0]){g=0;break a}k=b+l|0;while(1){d:{if((q|0)<1){n=0;break d}g=i[c+32>>2];v=i[c+28>>2];w=i[c+24>>2];f=0;n=0;while(1){m=(g>>>3|0)+w|0;e:{if(m>>>0>=v>>>0){p=0;break e}p=j[m|0];m=g+1|0;i[c+32>>2]=m;p=p>>>(g&7)&1;g=m}n=p<<f|n;f=f+1|0;if((q|0)!=(f|0)){continue}break}}i[(l<<2)+d>>2]=n;l=l+1|0;if((k|0)!=(l|0)){continue}break}l=k}r=b+r|0;if(r>>>0<a>>>0){continue}break}}Eh(c);g=1}a=i[e+36>>2];if(a){i[e+40>>2]=a;nn(a)}a=i[e+24>>2];if(a){i[e+28>>2]=a;nn(a)}a=i[e+8>>2];if(a){i[e+12>>2]=a;nn(a)}J=e- -64|0;return g}function lf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=J-16|0;J=l;a:{b:{if(k[b+38>>1]<=511){f=i[b+12>>2];m=f;c=i[b+20>>2];d=i[b+16>>2];e=d+8|0;if(e>>>0<8){c=c+1|0}g=i[b+8>>2];if((f|0)<(c|0)?1:(f|0)<=(c|0)?g>>>0<e>>>0:0){break a}d=d+i[b>>2]|0;f=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);h=j[d+4|0]|j[d+5|0]<<8|(j[d+6|0]<<16|j[d+7|0]<<24);i[b+16>>2]=e;i[b+20>>2]=c;break b}if(!cf(1,l+8|0,b)){break a}e=i[b+16>>2];c=i[b+20>>2];g=i[b+8>>2];m=i[b+12>>2];f=i[l+8>>2];h=i[l+12>>2]}d=e;n=g-d|0;g=m-(c+(g>>>0<d>>>0)|0)|0;if((g|0)==(h|0)&f>>>0>n>>>0|h>>>0>g>>>0){break a}d=c+h|0;c=e;h=c+f|0;if(h>>>0<c>>>0){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=f;if((c|0)<1){break a}e=e+i[b>>2]|0;i[a+40>>2]=e;b=a;c:{d:{e:{f:{g:{f=c+ -1|0;g=e+f|0;switch((j[g|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break g}}i[a+44>>2]=f;a=j[g|0]&63;break c}if((c|0)<2){break a}i[a+44>>2]=c+ -2;a=(c+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break c}if((c|0)<3){break a}i[a+44>>2]=c+ -3;a=(c+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0];break c}i[a+44>>2]=c+ -4;a=(c+e|0)+ -4|0;a=j[a+2|0]<<16|j[a+3|0]<<24&1056964608|j[a+1|0]<<8|j[a|0]}a=a- -1048576|0;i[b+48>>2]=a;o=a>>>0<268435456}J=l+16|0;return o}function pf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=J-16|0;J=l;a:{b:{if(k[b+38>>1]<=511){f=i[b+12>>2];m=f;c=i[b+20>>2];d=i[b+16>>2];e=d+8|0;if(e>>>0<8){c=c+1|0}g=i[b+8>>2];if((f|0)<(c|0)?1:(f|0)<=(c|0)?g>>>0<e>>>0:0){break a}d=d+i[b>>2]|0;f=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);h=j[d+4|0]|j[d+5|0]<<8|(j[d+6|0]<<16|j[d+7|0]<<24);i[b+16>>2]=e;i[b+20>>2]=c;break b}if(!cf(1,l+8|0,b)){break a}e=i[b+16>>2];c=i[b+20>>2];g=i[b+8>>2];m=i[b+12>>2];f=i[l+8>>2];h=i[l+12>>2]}d=e;n=g-d|0;g=m-(c+(g>>>0<d>>>0)|0)|0;if((g|0)==(h|0)&f>>>0>n>>>0|h>>>0>g>>>0){break a}d=c+h|0;c=e;h=c+f|0;if(h>>>0<c>>>0){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=f;if((c|0)<1){break a}e=e+i[b>>2]|0;i[a+40>>2]=e;b=a;c:{d:{e:{f:{g:{f=c+ -1|0;g=e+f|0;switch((j[g|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break g}}i[a+44>>2]=f;a=j[g|0]&63;break c}if((c|0)<2){break a}i[a+44>>2]=c+ -2;a=(c+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break c}if((c|0)<3){break a}i[a+44>>2]=c+ -3;a=(c+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0];break c}i[a+44>>2]=c+ -4;a=(c+e|0)+ -4|0;a=j[a+2|0]<<16|j[a+3|0]<<24&1056964608|j[a+1|0]<<8|j[a|0]}a=a+4194304|0;i[b+48>>2]=a;o=a>>>0<1073741824}J=l+16|0;return o}function nf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=J-16|0;J=l;a:{b:{if(k[b+38>>1]<=511){f=i[b+12>>2];m=f;c=i[b+20>>2];d=i[b+16>>2];e=d+8|0;if(e>>>0<8){c=c+1|0}g=i[b+8>>2];if((f|0)<(c|0)?1:(f|0)<=(c|0)?g>>>0<e>>>0:0){break a}d=d+i[b>>2]|0;f=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);h=j[d+4|0]|j[d+5|0]<<8|(j[d+6|0]<<16|j[d+7|0]<<24);i[b+16>>2]=e;i[b+20>>2]=c;break b}if(!cf(1,l+8|0,b)){break a}e=i[b+16>>2];c=i[b+20>>2];g=i[b+8>>2];m=i[b+12>>2];f=i[l+8>>2];h=i[l+12>>2]}d=e;n=g-d|0;g=m-(c+(g>>>0<d>>>0)|0)|0;if((g|0)==(h|0)&f>>>0>n>>>0|h>>>0>g>>>0){break a}d=c+h|0;c=e;h=c+f|0;if(h>>>0<c>>>0){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=f;if((c|0)<1){break a}e=e+i[b>>2]|0;i[a+40>>2]=e;b=a;c:{d:{e:{f:{g:{f=c+ -1|0;g=e+f|0;switch((j[g|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break g}}i[a+44>>2]=f;a=j[g|0]&63;break c}if((c|0)<2){break a}i[a+44>>2]=c+ -2;a=(c+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break c}if((c|0)<3){break a}i[a+44>>2]=c+ -3;a=(c+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0];break c}i[a+44>>2]=c+ -4;a=(c+e|0)+ -4|0;a=j[a+2|0]<<16|j[a+3|0]<<24&1056964608|j[a+1|0]<<8|j[a|0]}a=a+2097152|0;i[b+48>>2]=a;o=a>>>0<536870912}J=l+16|0;return o}function jf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=J-16|0;J=l;a:{b:{if(k[b+38>>1]<=511){f=i[b+12>>2];m=f;c=i[b+20>>2];d=i[b+16>>2];e=d+8|0;if(e>>>0<8){c=c+1|0}g=i[b+8>>2];if((f|0)<(c|0)?1:(f|0)<=(c|0)?g>>>0<e>>>0:0){break a}d=d+i[b>>2]|0;f=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);h=j[d+4|0]|j[d+5|0]<<8|(j[d+6|0]<<16|j[d+7|0]<<24);i[b+16>>2]=e;i[b+20>>2]=c;break b}if(!cf(1,l+8|0,b)){break a}e=i[b+16>>2];c=i[b+20>>2];g=i[b+8>>2];m=i[b+12>>2];f=i[l+8>>2];h=i[l+12>>2]}d=e;n=g-d|0;g=m-(c+(g>>>0<d>>>0)|0)|0;if((g|0)==(h|0)&f>>>0>n>>>0|h>>>0>g>>>0){break a}d=c+h|0;c=e;h=c+f|0;if(h>>>0<c>>>0){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=f;if((c|0)<1){break a}e=e+i[b>>2]|0;i[a+40>>2]=e;b=a;c:{d:{e:{f:{g:{f=c+ -1|0;g=e+f|0;switch((j[g|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break g}}i[a+44>>2]=f;a=j[g|0]&63;break c}if((c|0)<2){break a}i[a+44>>2]=c+ -2;a=(c+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break c}if((c|0)<3){break a}i[a+44>>2]=c+ -3;a=(c+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0];break c}i[a+44>>2]=c+ -4;a=(c+e|0)+ -4|0;a=j[a+2|0]<<16|j[a+3|0]<<24&1056964608|j[a+1|0]<<8|j[a|0]}a=a+262144|0;i[b+48>>2]=a;o=a>>>0<67108864}J=l+16|0;return o}function gf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=J-16|0;J=l;a:{b:{if(k[b+38>>1]<=511){f=i[b+12>>2];m=f;c=i[b+20>>2];d=i[b+16>>2];e=d+8|0;if(e>>>0<8){c=c+1|0}g=i[b+8>>2];if((f|0)<(c|0)?1:(f|0)<=(c|0)?g>>>0<e>>>0:0){break a}d=d+i[b>>2]|0;f=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);h=j[d+4|0]|j[d+5|0]<<8|(j[d+6|0]<<16|j[d+7|0]<<24);i[b+16>>2]=e;i[b+20>>2]=c;break b}if(!cf(1,l+8|0,b)){break a}e=i[b+16>>2];c=i[b+20>>2];g=i[b+8>>2];m=i[b+12>>2];f=i[l+8>>2];h=i[l+12>>2]}d=e;n=g-d|0;g=m-(c+(g>>>0<d>>>0)|0)|0;if((g|0)==(h|0)&f>>>0>n>>>0|h>>>0>g>>>0){break a}d=c+h|0;c=e;h=c+f|0;if(h>>>0<c>>>0){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=f;if((c|0)<1){break a}e=e+i[b>>2]|0;i[a+40>>2]=e;b=a;c:{d:{e:{f:{g:{f=c+ -1|0;g=e+f|0;switch((j[g|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break g}}i[a+44>>2]=f;a=j[g|0]&63;break c}if((c|0)<2){break a}i[a+44>>2]=c+ -2;a=(c+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break c}if((c|0)<3){break a}i[a+44>>2]=c+ -3;a=(c+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0];break c}i[a+44>>2]=c+ -4;a=(c+e|0)+ -4|0;a=j[a+2|0]<<16|j[a+3|0]<<24&1056964608|j[a+1|0]<<8|j[a|0]}a=a+131072|0;i[b+48>>2]=a;o=a>>>0<33554432}J=l+16|0;return o}function ef(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=J-16|0;J=l;a:{b:{if(k[b+38>>1]<=511){f=i[b+12>>2];m=f;c=i[b+20>>2];d=i[b+16>>2];e=d+8|0;if(e>>>0<8){c=c+1|0}g=i[b+8>>2];if((f|0)<(c|0)?1:(f|0)<=(c|0)?g>>>0<e>>>0:0){break a}d=d+i[b>>2]|0;f=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);h=j[d+4|0]|j[d+5|0]<<8|(j[d+6|0]<<16|j[d+7|0]<<24);i[b+16>>2]=e;i[b+20>>2]=c;break b}if(!cf(1,l+8|0,b)){break a}e=i[b+16>>2];c=i[b+20>>2];g=i[b+8>>2];m=i[b+12>>2];f=i[l+8>>2];h=i[l+12>>2]}d=e;n=g-d|0;g=m-(c+(g>>>0<d>>>0)|0)|0;if((g|0)==(h|0)&f>>>0>n>>>0|h>>>0>g>>>0){break a}d=c+h|0;c=e;h=c+f|0;if(h>>>0<c>>>0){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=f;if((c|0)<1){break a}e=e+i[b>>2]|0;i[a+40>>2]=e;b=a;c:{d:{e:{f:{g:{f=c+ -1|0;g=e+f|0;switch((j[g|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break g}}i[a+44>>2]=f;a=j[g|0]&63;break c}if((c|0)<2){break a}i[a+44>>2]=c+ -2;a=(c+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break c}if((c|0)<3){break a}i[a+44>>2]=c+ -3;a=(c+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0];break c}i[a+44>>2]=c+ -4;a=(c+e|0)+ -4|0;a=j[a+2|0]<<16|j[a+3|0]<<24&1056964608|j[a+1|0]<<8|j[a|0]}a=a+32768|0;i[b+48>>2]=a;o=a>>>0<8388608}J=l+16|0;return o}function Ue(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=J-16|0;J=l;a:{b:{if(k[b+38>>1]<=511){f=i[b+12>>2];m=f;c=i[b+20>>2];d=i[b+16>>2];e=d+8|0;if(e>>>0<8){c=c+1|0}g=i[b+8>>2];if((f|0)<(c|0)?1:(f|0)<=(c|0)?g>>>0<e>>>0:0){break a}d=d+i[b>>2]|0;f=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);h=j[d+4|0]|j[d+5|0]<<8|(j[d+6|0]<<16|j[d+7|0]<<24);i[b+16>>2]=e;i[b+20>>2]=c;break b}if(!cf(1,l+8|0,b)){break a}e=i[b+16>>2];c=i[b+20>>2];g=i[b+8>>2];m=i[b+12>>2];f=i[l+8>>2];h=i[l+12>>2]}d=e;n=g-d|0;g=m-(c+(g>>>0<d>>>0)|0)|0;if((g|0)==(h|0)&f>>>0>n>>>0|h>>>0>g>>>0){break a}d=c+h|0;c=e;h=c+f|0;if(h>>>0<c>>>0){d=d+1|0}i[b+16>>2]=h;i[b+20>>2]=d;c=f;if((c|0)<1){break a}e=e+i[b>>2]|0;i[a+40>>2]=e;b=a;c:{d:{e:{f:{g:{f=c+ -1|0;g=e+f|0;switch((j[g|0]>>>6|0)-1|0){case 2:break d;case 1:break e;case 0:break f;default:break g}}i[a+44>>2]=f;a=j[g|0]&63;break c}if((c|0)<2){break a}i[a+44>>2]=c+ -2;a=(c+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break c}if((c|0)<3){break a}i[a+44>>2]=c+ -3;a=(c+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0];break c}i[a+44>>2]=c+ -4;a=(c+e|0)+ -4|0;a=j[a+2|0]<<16|j[a+3|0]<<24&1056964608|j[a+1|0]<<8|j[a|0]}a=a+16384|0;i[b+48>>2]=a;o=a>>>0<4194304}J=l+16|0;return o}function Ae(a,b){var c=0,d=0,e=0,f=0,h=0,m=0,n=0,o=0,p=0,q=0,r=0;p=J-16|0;J=p;e=i[b+16>>2];c=i[b+12>>2];d=i[b+20>>2];a:{if((c|0)<(d|0)?1:(c|0)<=(d|0)?l[b+8>>2]<=e>>>0:0){break a}g[a+12|0]=j[e+i[b>>2]|0];c=i[b+20>>2];e=c;h=i[b+16>>2];m=h+1|0;if(m>>>0<1){c=c+1|0}f=m;i[b+16>>2]=f;i[b+20>>2]=c;b:{if(k[b+38>>1]<=513){n=i[b+12>>2];o=n;d=e;c=h+5|0;if(c>>>0<5){d=d+1|0}m=i[b+8>>2];h=c;c=d;if((o|0)<(c|0)?1:(o|0)<=(c|0)?m>>>0<h>>>0:0){break a}d=f+i[b>>2]|0;f=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[b+16>>2]=h;i[b+20>>2]=c;break b}if(!Be(1,p+12|0,b)){break a}h=i[b+16>>2];c=i[b+20>>2];m=i[b+8>>2];n=i[b+12>>2];f=i[p+12>>2]}d=f;e=n-(c+(m>>>0<h>>>0)|0)|0;if(((e|0)<0?1:(e|0)<=0?m-h>>>0<d>>>0:0)|(d|0)<1){break a}e=h+i[b>>2]|0;i[a>>2]=e;n=f+ -1|0;o=n+e|0;m=j[o|0]>>>6|0;if((m|0)==3){break a}q=a;c:{d:{switch(m-1|0){default:i[a+4>>2]=n;a=j[o|0]&63;break c;case 0:if((f|0)<2){break a}i[a+4>>2]=f+ -2;a=(f+e|0)+ -2|0;a=j[a+1|0]<<8&16128|j[a|0];break c;case 1:break d}}if((f|0)<3){break a}i[a+4>>2]=f+ -3;a=(f+e|0)+ -3|0;a=j[a+1|0]<<8|j[a+2|0]<<16&4128768|j[a|0]}a=a+4096|0;i[q+8>>2]=a;if(a>>>0>1048575){break a}a=d+h|0;if(a>>>0<d>>>0){c=c+1|0}i[b+16>>2]=a;i[b+20>>2]=c;r=1}J=p+16|0;return r}function nh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0;a:{b=i[a+32>>2];e=i[b+16>>2];h=i[b+12>>2];d=i[b+20>>2];b:{if((h|0)<(d|0)?1:(h|0)<=(d|0)?l[b+8>>2]<=e>>>0:0){break b}g=j[e+i[b>>2]|0];k=e+1|0;if(k>>>0<1){d=d+1|0}i[b+16>>2]=k;i[b+20>>2]=d;c:{if(!g){break c}while(1){if(M[i[i[a>>2]+16>>2]](a,c)|0){c=c+1|0;if((g|0)!=(c|0)){continue}break c}break}return 0}c=i[a+8>>2];d=i[a+12>>2];if((c|0)!=(d|0)){while(1){b=i[c>>2];if(!(M[i[i[b>>2]+8>>2]](b,a,i[a+4>>2])|0)){break b}c=c+4|0;if((d|0)!=(c|0)){continue}break}}d:{if(!g){break d}c=0;while(1){b=i[i[a+8>>2]+(c<<2)>>2];if(!(M[i[i[b>>2]+12>>2]](b,i[a+32>>2])|0)){break a}c=c+1|0;if((g|0)!=(c|0)){continue}break}if(!g){break d}h=a+20|0;while(1){c=0;k=m<<2;b=i[k+i[a+8>>2]>>2];d=M[i[i[b>>2]+24>>2]](b)|0;if((d|0)>0){while(1){b=i[i[a+8>>2]+k>>2];b=M[i[i[b>>2]+20>>2]](b,c)|0;n=i[a+20>>2];e=i[a+24>>2]-n>>2;e:{if(b>>>0<e>>>0){break e}f=b+1|0;if(f>>>0>e>>>0){Ra(h,f-e|0);n=i[h>>2];break e}if(f>>>0>=e>>>0){break e}i[a+24>>2]=(f<<2)+n}i[(b<<2)+n>>2]=m;c=c+1|0;if((d|0)!=(c|0)){continue}break}}m=m+1|0;if((m|0)!=(g|0)){continue}break}}f=0;if(!(M[i[i[a>>2]+28>>2]](a)|0)){break b}f=M[i[i[a>>2]+32>>2]](a)|0}return f|0}return 0}function Yk(a,b){var c=0,d=0,e=0,f=0,h=0,k=0,m=0,n=0,o=0,p=0;d=J-32|0;J=d;i[d+24>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;a:{e=i[a>>2];c=e;h=i[c+16>>2];k=l[c+8>>2]<=h>>>0;f=i[c+12>>2];c=i[c+20>>2];b:{if((f|0)<(c|0)?1:(f|0)<=(c|0)?k:0){break b}k=j[h+i[e>>2]|0];f=c;c=h+1|0;if(c>>>0<1){f=f+1|0}i[e+16>>2]=c;i[e+20>>2]=f;Lm(d+16|0,k);if(k){f=i[a>>2];n=Pm(d+16|0);m=i[f+12>>2];h=i[f+20>>2];p=i[f+16>>2];e=k;c=p+e|0;if(c>>>0<e>>>0){h=h+1|0}if((m|0)<(h|0)?1:(m|0)<=(h|0)?l[f+8>>2]<c>>>0:0){break b}pn(n,p+i[f>>2]|0,k);h=i[f+20>>2];k=e+i[f+16>>2]|0;if(k>>>0<e>>>0){h=h+1|0}c=f;i[c+16>>2]=k;i[c+20>>2]=h}i[d+12>>2]=0;c=Xk(1,d+12|0,i[a>>2]);e=i[d+12>>2];if(!e|!c){break b}i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;if((e|0)<=-1){break a}m=Dm(e);i[d>>2]=m;c=e+m|0;i[d+8>>2]=c;p=qn(m,0,e);i[d+4>>2]=c;c=i[a>>2];a=i[c+8>>2];o=i[c+12>>2];f=a;n=i[c+20>>2];h=i[c+16>>2];a=e;k=h+e|0;if(k>>>0<e>>>0){n=n+1|0}o=(o|0)>(n|0)?1:(o|0)>=(n|0)?f>>>0>=k>>>0:0;if(o){pn(p,h+i[c>>2]|0,e);e=c;k=c;f=i[c+20>>2];c=a+i[c+16>>2]|0;if(c>>>0<a>>>0){f=f+1|0}i[k+16>>2]=c;i[e+20>>2]=f;hl(b,d+16|0,d);m=i[d>>2];if(!m){break b}}i[d+4>>2]=m;nn(m)}if(g[d+27|0]<=-1){nn(i[d+16>>2])}J=d+32|0;return o}Sm();x()}function Fn(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{g=b;if(g){e=c;if(!e){break j}f=d;if(!f){break i}f=r(f)-r(g)|0;if(f>>>0<=31){break h}break b}if((d|0)==1&c>>>0>=0|d>>>0>1){break b}b=(a>>>0)/(c>>>0)|0;L=0;return b}e=d;if(!a){break g}if(!e){break f}if(e+ -1&e){break f}a=g>>>Ln(e)|0;L=0;return a}if(!(e+ -1&e)){break e}j=(r(e)+33|0)-r(g)|0;h=0-j|0;break c}j=f+1|0;h=63-f|0;break c}a=(g>>>0)/(e>>>0)|0;L=0;return a}f=r(e)-r(g)|0;if(f>>>0<31){break d}break b}if((e|0)==1){break a}c=a;a=Ln(e);d=a&31;if(32<=(a&63)>>>0){f=0;a=b>>>d|0}else{f=b>>>d|0;a=((1<<d)-1&b)<<32-d|c>>>d}L=f;return a}j=f+1|0;h=63-f|0}e=b;g=a;f=j&63;i=f&31;if(32<=(f&63)>>>0){f=0;l=e>>>i|0}else{f=e>>>i|0;l=((1<<i)-1&e)<<32-i|g>>>i}a=h&63;h=a&31;if(32<=(a&63)>>>0){e=g<<h;a=0}else{e=(1<<h)-1&g>>>32-h|b<<h;a=g<<h}b=e;if(j){g=d+ -1|0;e=c+ -1|0;if((e|0)!=-1){g=g+1|0}h=e;while(1){e=l;k=f<<1|e>>>31;f=e<<1|b>>>31;m=k;e=k;k=f;i=g-((h>>>0<f>>>0)+e|0)|0;e=i>>31;i=i>>31;f=c&i;l=k-f|0;f=m-((d&e)+(k>>>0<f>>>0)|0)|0;e=b<<1|a>>>31;a=n|a<<1;b=e|o;m=0;k=i&1;n=k;j=j+ -1|0;if(j){continue}break}}L=m|(b<<1|a>>>31);return k|a<<1}a=0;b=0}L=b;return a}function ag(a,b,c,d){var e=0,f=0,h=0,j=0,k=p(0),l=0,n=p(0),o=0,q=0;f=i[c>>2];o=a;a:{b:{e=i[b+4>>2];if(!e){break b}j=i[b>>2];l=Jn(e);h=f&e+ -1;c:{if(l>>>0<=1){break c}c=f;h=c;if(c>>>0<e>>>0){break c}h=(f>>>0)%(e>>>0)|0}c=h;h=c;c=i[(c<<2)+j>>2];if(!c){break b}q=e+ -1|0;l=l>>>0>1;while(1){c=i[c>>2];if(!c){break b}j=i[c+4>>2];if((f|0)!=(j|0)){d:{if(!l){j=j&q;break d}if(j>>>0<e>>>0){break d}j=(j>>>0)%(e>>>0)|0}if((j|0)!=(h|0)){break b}}if((f|0)!=i[c+8>>2]){continue}break}b=0;break a}c=Dm(16);d=i[i[d>>2]>>2];i[c+12>>2]=0;i[c+8>>2]=d;i[c+4>>2]=f;i[c>>2]=0;k=m[b+16>>2];n=p(i[b+12>>2]+1>>>0);e:{if(p(k*p(e>>>0))<n^1?e:0){break e}e=(e+ -1&e)!=0|e>>>0<3|e<<1;d=b;k=p(v(p(n/k)));f:{if(k<p(4294967296)&k>=p(0)){h=~~k>>>0;break f}h=0}Zg(d,e>>>0<h>>>0?h:e);e=i[b+4>>2];if(!(e&e+ -1)){h=f&e+ -1;break e}if(f>>>0<e>>>0){h=f;break e}h=(f>>>0)%(e>>>0)|0}f=i[b>>2]+(h<<2)|0;d=i[f>>2];g:{h:{if(!d){i[c>>2]=i[b+8>>2];i[b+8>>2]=c;i[f>>2]=b+8;d=i[c>>2];if(!d){break g}d=i[d+4>>2];f=e+ -1|0;i:{if(!(f&e)){d=d&f;break i}if(d>>>0<e>>>0){break i}d=(d>>>0)%(e>>>0)|0}d=i[b>>2]+(d<<2)|0;break h}i[c>>2]=i[d>>2]}i[d>>2]=c}i[b+12>>2]=i[b+12>>2]+1;b=1}g[o+4|0]=b;i[a>>2]=c}function Rd(a,b,c,d,e,f){var g=0,h=0,j=0,k=0;k=i[i[i[b+4>>2]+8>>2]+(d<<2)>>2];a:{b:{if((M[i[i[b>>2]+8>>2]](b)|0)!=1|c+ -1>>>0>5){break b}h=M[i[i[b>>2]+36>>2]](b)|0;f=M[i[i[b>>2]+44>>2]](b,d)|0;if(!(f?h:0)){i[a>>2]=0;return}g=f+12|0;j=M[i[i[b>>2]+40>>2]](b,d)|0;d=i[b+44>>2];if(j){if((c|0)!=6){break b}b=Dm(112);i[b+4>>2]=k;c=i[e+4>>2];i[b+8>>2]=i[e>>2];i[b+12>>2]=c;c=i[e+12>>2];i[b+16>>2]=i[e+8>>2];i[b+20>>2]=c;i[b+24>>2]=i[e+16>>2];i[b+40>>2]=f;i[b+36>>2]=g;i[b+32>>2]=j;i[b+28>>2]=d;i[b+68>>2]=f;i[b+64>>2]=g;i[b+60>>2]=j;i[b+56>>2]=d;i[b+48>>2]=0;i[b+52>>2]=0;i[b>>2]=8844;i[b+88>>2]=1065353216;i[b+92>>2]=-1;i[b+80>>2]=-1;i[b+84>>2]=-1;i[b+72>>2]=1;i[b+76>>2]=-1;i[b+44>>2]=9408;break a}if((c|0)!=6){break b}b=Dm(112);i[b+4>>2]=k;c=i[e+4>>2];i[b+8>>2]=i[e>>2];i[b+12>>2]=c;c=i[e+12>>2];i[b+16>>2]=i[e+8>>2];i[b+20>>2]=c;i[b+24>>2]=i[e+16>>2];i[b+40>>2]=f;i[b+36>>2]=g;i[b+32>>2]=h;i[b+28>>2]=d;i[b+68>>2]=f;i[b+64>>2]=g;i[b+60>>2]=h;i[b+56>>2]=d;i[b+48>>2]=0;i[b+52>>2]=0;i[b>>2]=9848;i[b+88>>2]=1065353216;i[b+92>>2]=-1;i[b+80>>2]=-1;i[b+84>>2]=-1;i[b+72>>2]=1;i[b+76>>2]=-1;i[b+44>>2]=10268;break a}i[a>>2]=0;return}ze(b+96|0);i[a>>2]=b}function Qd(a,b,c,d,e,f){var g=0,h=0,j=0,k=0;k=i[i[i[b+4>>2]+8>>2]+(d<<2)>>2];a:{b:{if((M[i[i[b>>2]+8>>2]](b)|0)!=1|c+ -1>>>0>5){break b}h=M[i[i[b>>2]+36>>2]](b)|0;f=M[i[i[b>>2]+44>>2]](b,d)|0;if(!(f?h:0)){i[a>>2]=0;return}g=f+12|0;j=M[i[i[b>>2]+40>>2]](b,d)|0;d=i[b+44>>2];if(j){if((c|0)!=6){break b}b=Dm(112);i[b+4>>2]=k;c=i[e+4>>2];i[b+8>>2]=i[e>>2];i[b+12>>2]=c;c=i[e+12>>2];i[b+16>>2]=i[e+8>>2];i[b+20>>2]=c;i[b+24>>2]=i[e+16>>2];i[b+40>>2]=f;i[b+36>>2]=g;i[b+32>>2]=j;i[b+28>>2]=d;i[b+68>>2]=f;i[b+64>>2]=g;i[b+60>>2]=j;i[b+56>>2]=d;i[b+48>>2]=0;i[b+52>>2]=0;i[b>>2]=6960;i[b+88>>2]=1065353216;i[b+92>>2]=-1;i[b+80>>2]=-1;i[b+84>>2]=-1;i[b+72>>2]=1;i[b+76>>2]=-1;i[b+44>>2]=7484;break a}if((c|0)!=6){break b}b=Dm(112);i[b+4>>2]=k;c=i[e+4>>2];i[b+8>>2]=i[e>>2];i[b+12>>2]=c;c=i[e+12>>2];i[b+16>>2]=i[e+8>>2];i[b+20>>2]=c;i[b+24>>2]=i[e+16>>2];i[b+40>>2]=f;i[b+36>>2]=g;i[b+32>>2]=h;i[b+28>>2]=d;i[b+68>>2]=f;i[b+64>>2]=g;i[b+60>>2]=h;i[b+56>>2]=d;i[b+48>>2]=0;i[b+52>>2]=0;i[b>>2]=7896;i[b+88>>2]=1065353216;i[b+92>>2]=-1;i[b+80>>2]=-1;i[b+84>>2]=-1;i[b+72>>2]=1;i[b+76>>2]=-1;i[b+44>>2]=8288;break a}i[a>>2]=0;return}ze(b+96|0);i[a>>2]=b}function rg(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=11520;b=i[a+388>>2];if(b){i[a+392>>2]=b;nn(b)}b=a+368|0;d=i[b>>2];i[b>>2]=0;if(d){c=d+ -4|0;b=i[c>>2];if(b){b=d+(b<<4)|0;while(1){b=b+ -16|0;if((d|0)!=(b|0)){continue}break}}nn(c)}d=i[a+216>>2];if(d){b=i[a+220>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=i[b+ -12>>2];if(c){i[b+ -8>>2]=c;nn(c)}c=i[b+ -28>>2];if(c){i[b+ -24>>2]=c;nn(c)}c=b+ -144|0;e=i[b+ -40>>2];if(e){i[b+ -36>>2]=e;nn(e)}Rf(b+ -140|0);b=c;if((d|0)!=(b|0)){continue}break}c=i[a+216>>2]}i[a+220>>2]=d;nn(c)}b=i[a+196>>2];if(b){i[a+200>>2]=b;nn(b)}b=i[a+184>>2];if(b){i[a+188>>2]=b;nn(b)}b=i[a+172>>2];if(b){i[a+176>>2]=b;nn(b)}b=i[a+160>>2];if(b){i[a+164>>2]=b;nn(b)}b=i[a+144>>2];if(b){while(1){d=i[b>>2];nn(b);b=d;if(b){continue}break}}b=i[a+136>>2];i[a+136>>2]=0;if(b){nn(b)}b=i[a+120>>2];if(b){nn(b)}b=i[a+108>>2];if(b){nn(b)}b=i[a+96>>2];if(b){nn(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;nn(b)}b=i[a+60>>2];if(b){nn(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}b=i[a+36>>2];if(b){i[a+40>>2]=b;nn(b)}b=i[a+24>>2];if(b){i[a+28>>2]=b;nn(b)}b=i[a+12>>2];if(b){i[a+16>>2]=b;nn(b)}b=i[a+8>>2];i[a+8>>2]=0;if(b){Qf(a+8|0,b)}return a|0}function zd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;i[a+64>>2]=f;i[a+72>>2]=e;f=Dm((e&1073741823)!=(e|0)?-1:e<<2);d=i[a+68>>2];i[a+68>>2]=f;if(d){nn(d)}i[a+8>>2]=e;f=a+32|0;g=i[f>>2];d=i[a+36>>2]-g>>2;a:{if(d>>>0<e>>>0){Ra(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}b:{f=i[a+56>>2];d=i[f+4>>2];f=i[f>>2];g=d-f|0;if((g|0)<1){break b}if((d|0)!=(f|0)){d=f-d|0;d=((d|0)>(g|0)?d:g)>>>2|0;m=d>>>0>1?d:1;while(1){Ad(a,i[(j<<2)+f>>2],c,j);c:{if(i[a+8>>2]<1){break c}l=i[a+68>>2];f=0;while(1){d=f<<2;g=i[d+l>>2];h=i[a+16>>2];d:{if((g|0)>(h|0)){k=i[a+32>>2];i[d+k>>2]=h;break d}k=i[a+32>>2];d=d+k|0;h=i[a+12>>2];if((g|0)<(h|0)){i[d>>2]=h;break d}i[d>>2]=g}f=f+1|0;g=i[a+8>>2];if((f|0)<(g|0)){continue}break}d=0;if((g|0)<1){break c}f=o(e,j)<<2;l=f+c|0;h=b+f|0;while(1){g=d<<2;f=g+l|0;g=i[g+h>>2]+i[g+k>>2]|0;i[f>>2]=g;e:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break e}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)<i[a+8>>2]){continue}break}}j=j+1|0;if((m|0)==(j|0)){break b}d=i[a+56>>2];f=i[d>>2];if(i[d+4>>2]-f>>2>>>0>j>>>0){continue}break}}Tm();x()}return 1}function Zc(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;i[a+64>>2]=f;i[a+72>>2]=e;f=Dm((e&1073741823)!=(e|0)?-1:e<<2);d=i[a+68>>2];i[a+68>>2]=f;if(d){nn(d)}i[a+8>>2]=e;f=a+32|0;g=i[f>>2];d=i[a+36>>2]-g>>2;a:{if(d>>>0<e>>>0){Ra(f,e-d|0);break a}if(d>>>0<=e>>>0){break a}i[a+36>>2]=g+(e<<2)}b:{f=i[a+56>>2];d=i[f+4>>2];f=i[f>>2];g=d-f|0;if((g|0)<1){break b}if((d|0)!=(f|0)){d=f-d|0;d=((d|0)>(g|0)?d:g)>>>2|0;m=d>>>0>1?d:1;while(1){_c(a,i[(j<<2)+f>>2],c,j);c:{if(i[a+8>>2]<1){break c}l=i[a+68>>2];f=0;while(1){d=f<<2;g=i[d+l>>2];h=i[a+16>>2];d:{if((g|0)>(h|0)){k=i[a+32>>2];i[d+k>>2]=h;break d}k=i[a+32>>2];d=d+k|0;h=i[a+12>>2];if((g|0)<(h|0)){i[d>>2]=h;break d}i[d>>2]=g}f=f+1|0;g=i[a+8>>2];if((f|0)<(g|0)){continue}break}d=0;if((g|0)<1){break c}f=o(e,j)<<2;l=f+c|0;h=b+f|0;while(1){g=d<<2;f=g+l|0;g=i[g+h>>2]+i[g+k>>2]|0;i[f>>2]=g;e:{if((g|0)>i[a+16>>2]){g=g-i[a+20>>2]|0}else{if((g|0)>=i[a+12>>2]){break e}g=g+i[a+20>>2]|0}i[f>>2]=g}d=d+1|0;if((d|0)<i[a+8>>2]){continue}break}}j=j+1|0;if((m|0)==(j|0)){break b}d=i[a+56>>2];f=i[d>>2];if(i[d+4>>2]-f>>2>>>0>j>>>0){continue}break}}Tm();x()}return 1}function Cb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,n=0,p=0;a:{b:{c:{d:{d=i[a+4>>2];j=i[a>>2];g=(d-j|0)/24|0;e=g+1|0;if(e>>>0<178956971){c=(i[a+8>>2]-j|0)/24|0;f=c<<1;h=c>>>0<89478485?f>>>0<e>>>0?e:f:178956970;if(h){if(h>>>0>=178956971){break d}k=Dm(o(h,24))}c=o(g,24)+k|0;i[c>>2]=1140;e=i[b+4>>2];l=c+16|0;i[l>>2]=0;i[c+8>>2]=0;i[c+12>>2]=0;i[c+4>>2]=e;n=i[b+8>>2];f=i[b+12>>2]-n|0;if(f){p=f>>2;if(p>>>0>=1073741824){break c}g=c+12|0;e=Dm(f);i[g>>2]=e;i[c+8>>2]=e;i[l>>2]=e+(p<<2);if((f|0)>=1){e=pn(e,n,f)+f|0}i[g>>2]=e}e=o(h,24)+k|0;m[c+20>>2]=m[b+20>>2];g=c+24|0;if((d|0)==(j|0)){break b}while(1){c=c+ -24|0;i[c>>2]=1140;b=i[d+ -20>>2];f=c+16|0;i[f>>2]=0;i[c+8>>2]=0;i[c+12>>2]=0;i[c+4>>2]=b;b=d+ -16|0;i[c+8>>2]=i[b>>2];i[c+12>>2]=i[d+ -12>>2];h=f;f=d+ -8|0;i[h>>2]=i[f>>2];i[f>>2]=0;i[b>>2]=0;i[b+4>>2]=0;m[c+20>>2]=m[d+ -4>>2];d=d+ -24|0;if((j|0)!=(d|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=g;d=i[a>>2];i[a>>2]=c;if((b|0)==(d|0)){break a}while(1){b=b+ -24|0;M[i[i[b>>2]>>2]](b)|0;if((b|0)!=(d|0)){continue}break}break a}Sm();x()}Ba(1756);x()}Sm();x()}i[a+8>>2]=e;i[a+4>>2]=g;i[a>>2]=c}if(d){nn(d)}}function ed(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;if((e|0)==2){i[a+8>>2]=2;i[a- -64>>2]=f;d=a+32|0;e=i[d>>2];f=i[a+36>>2]-e|0;g=f>>2;a:{if(g>>>0<=1){Ra(d,2-g|0);break a}if((f|0)==8){break a}i[a+36>>2]=e+8}b:{d=i[a+56>>2];f=i[d+4>>2];d=i[d>>2];e=f-d|0;if((e|0)<1){f=0;break b}if((d|0)!=(f|0)){k=a+60|0;l=e>>2;f=d-f|0;e=((f|0)>(e|0)?f:e)>>>2|0;m=e>>>0>1?e:1;f=1;while(1){if(!fd(k,i[(h<<2)+d>>2],c,h)){break b}c:{if(i[a+8>>2]<1){break c}d=0;while(1){e=d<<2;f=i[(e+a|0)+68>>2];j=i[a+16>>2];d:{if((f|0)>(j|0)){g=i[a+32>>2];i[e+g>>2]=j;break d}g=i[a+32>>2];e=e+g|0;j=i[a+12>>2];if((f|0)<(j|0)){i[e>>2]=j;break d}i[e>>2]=f}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<1){break c}d=h<<3;j=d+c|0;n=b+d|0;while(1){f=e<<2;d=f+j|0;f=i[f+n>>2]+i[f+g>>2]|0;i[d>>2]=f;e:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break e}f=f+i[a+20>>2]|0}i[d>>2]=f}e=e+1|0;if((e|0)<i[a+8>>2]){continue}break}}h=h+1|0;f=(h|0)<(l|0);if((h|0)==(m|0)){break b}e=i[a+56>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0>h>>>0){continue}break}}Tm();x()}a=f^1}else{a=0}return a&1}function Dd(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;if((e|0)==2){i[a+8>>2]=2;i[a- -64>>2]=f;d=a+32|0;e=i[d>>2];f=i[a+36>>2]-e|0;g=f>>2;a:{if(g>>>0<=1){Ra(d,2-g|0);break a}if((f|0)==8){break a}i[a+36>>2]=e+8}b:{d=i[a+56>>2];f=i[d+4>>2];d=i[d>>2];e=f-d|0;if((e|0)<1){f=0;break b}if((d|0)!=(f|0)){k=a+60|0;l=e>>2;f=d-f|0;e=((f|0)>(e|0)?f:e)>>>2|0;m=e>>>0>1?e:1;f=1;while(1){if(!Ed(k,i[(h<<2)+d>>2],c,h)){break b}c:{if(i[a+8>>2]<1){break c}d=0;while(1){e=d<<2;f=i[(e+a|0)+68>>2];j=i[a+16>>2];d:{if((f|0)>(j|0)){g=i[a+32>>2];i[e+g>>2]=j;break d}g=i[a+32>>2];e=e+g|0;j=i[a+12>>2];if((f|0)<(j|0)){i[e>>2]=j;break d}i[e>>2]=f}d=d+1|0;f=i[a+8>>2];if((d|0)<(f|0)){continue}break}e=0;if((f|0)<1){break c}d=h<<3;j=d+c|0;n=b+d|0;while(1){f=e<<2;d=f+j|0;f=i[f+n>>2]+i[f+g>>2]|0;i[d>>2]=f;e:{if((f|0)>i[a+16>>2]){f=f-i[a+20>>2]|0}else{if((f|0)>=i[a+12>>2]){break e}f=f+i[a+20>>2]|0}i[d>>2]=f}e=e+1|0;if((e|0)<i[a+8>>2]){continue}break}}h=h+1|0;f=(h|0)<(l|0);if((h|0)==(m|0)){break b}e=i[a+56>>2];d=i[e>>2];if(i[e+4>>2]-d>>2>>>0>h>>>0){continue}break}}Tm();x()}a=f^1}else{a=0}return a&1}function pn(a,b,c){var d=0,e=0,f=0;if(c>>>0>=512){G(a|0,b|0,c|0)|0;return a}e=a+c|0;a:{if(!((a^b)&3)){b:{if((c|0)<1){c=a;break b}if(!(a&3)){c=a;break b}c=a;while(1){g[c|0]=j[b|0];b=b+1|0;c=c+1|0;if(c>>>0>=e>>>0){break b}if(c&3){continue}break}}d=e&-4;c:{if(d>>>0<64){break c}f=d+ -64|0;if(c>>>0>f>>>0){break c}while(1){i[c>>2]=i[b>>2];i[c+4>>2]=i[b+4>>2];i[c+8>>2]=i[b+8>>2];i[c+12>>2]=i[b+12>>2];i[c+16>>2]=i[b+16>>2];i[c+20>>2]=i[b+20>>2];i[c+24>>2]=i[b+24>>2];i[c+28>>2]=i[b+28>>2];i[c+32>>2]=i[b+32>>2];i[c+36>>2]=i[b+36>>2];i[c+40>>2]=i[b+40>>2];i[c+44>>2]=i[b+44>>2];i[c+48>>2]=i[b+48>>2];i[c+52>>2]=i[b+52>>2];i[c+56>>2]=i[b+56>>2];i[c+60>>2]=i[b+60>>2];b=b- -64|0;c=c- -64|0;if(c>>>0<=f>>>0){continue}break}}if(c>>>0>=d>>>0){break a}while(1){i[c>>2]=i[b>>2];b=b+4|0;c=c+4|0;if(c>>>0<d>>>0){continue}break}break a}if(e>>>0<4){c=a;break a}d=e+ -4|0;if(d>>>0<a>>>0){c=a;break a}c=a;while(1){g[c|0]=j[b|0];g[c+1|0]=j[b+1|0];g[c+2|0]=j[b+2|0];g[c+3|0]=j[b+3|0];b=b+4|0;c=c+4|0;if(c>>>0<=d>>>0){continue}break}}if(c>>>0<e>>>0){while(1){g[c|0]=j[b|0];b=b+1|0;c=c+1|0;if((e|0)!=(c|0)){continue}break}}return a}function ac(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;g=J-16|0;J=g;if(Pa(a,b)){m=a+36|0;h=M[i[i[a>>2]+24>>2]](a)|0;e=i[a+40>>2];d=i[a+36>>2];c=e-d>>2;a:{if(h>>>0>c>>>0){bc(m,h-c|0);break a}if(h>>>0>=c>>>0){break a}d=d+(h<<2)|0;if((d|0)!=(e|0)){while(1){e=e+ -4|0;c=i[e>>2];i[e>>2]=0;if(c){M[i[i[c>>2]+4>>2]](c)}if((e|0)!=(d|0)){continue}break}}i[a+40>>2]=d}b:{if((h|0)<1){break b}n=1;f=i[b+16>>2];d=i[b+12>>2];c=i[b+20>>2];if((d|0)<(c|0)?1:(d|0)<=(c|0)?l[b+8>>2]<=f>>>0:0){break b}e=0;while(1){k=j[f+i[b>>2]|0];f=f+1|0;if(f>>>0<1){c=c+1|0}d=b;i[d+16>>2]=f;i[d+20>>2]=c;M[i[i[a>>2]+48>>2]](g+8|0,a,k);c=i[a+36>>2];d=i[g+8>>2];i[g+8>>2]=0;f=e<<2;k=c+f|0;c=i[k>>2];i[k>>2]=d;if(c){M[i[i[c>>2]+4>>2]](c)}c=i[g+8>>2];i[g+8>>2]=0;if(c){M[i[i[c>>2]+4>>2]](c)}c=i[i[m>>2]+f>>2];if(!c){break b}if(!(p=c,q=M[i[i[a>>2]+28>>2]](a)|0,r=M[i[i[a>>2]+20>>2]](a,e)|0,o=i[i[c>>2]+8>>2],M[o](p|0,q|0,r|0)|0)){break b}e=e+1|0;n=(e|0)<(h|0);if((e|0)==(h|0)){break b}f=i[b+16>>2];d=i[b+12>>2];c=i[b+20>>2];if((d|0)>(c|0)?1:(d|0)>=(c|0)?l[b+8>>2]>f>>>0:0){continue}break}}e=n^1}J=g+16|0;return e&1}function pg(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=11468;b=a+368|0;d=i[b>>2];i[b>>2]=0;if(d){c=d+ -4|0;b=i[c>>2];if(b){b=d+(b<<4)|0;while(1){b=b+ -16|0;if((d|0)!=(b|0)){continue}break}}nn(c)}d=i[a+216>>2];if(d){b=i[a+220>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=i[b+ -12>>2];if(c){i[b+ -8>>2]=c;nn(c)}c=i[b+ -28>>2];if(c){i[b+ -24>>2]=c;nn(c)}c=b+ -144|0;e=i[b+ -40>>2];if(e){i[b+ -36>>2]=e;nn(e)}Rf(b+ -140|0);b=c;if((d|0)!=(b|0)){continue}break}c=i[a+216>>2]}i[a+220>>2]=d;nn(c)}b=i[a+196>>2];if(b){i[a+200>>2]=b;nn(b)}b=i[a+184>>2];if(b){i[a+188>>2]=b;nn(b)}b=i[a+172>>2];if(b){i[a+176>>2]=b;nn(b)}b=i[a+160>>2];if(b){i[a+164>>2]=b;nn(b)}b=i[a+144>>2];if(b){while(1){d=i[b>>2];nn(b);b=d;if(b){continue}break}}b=i[a+136>>2];i[a+136>>2]=0;if(b){nn(b)}b=i[a+120>>2];if(b){nn(b)}b=i[a+108>>2];if(b){nn(b)}b=i[a+96>>2];if(b){nn(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;nn(b)}b=i[a+60>>2];if(b){nn(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}b=i[a+36>>2];if(b){i[a+40>>2]=b;nn(b)}b=i[a+24>>2];if(b){i[a+28>>2]=b;nn(b)}b=i[a+12>>2];if(b){i[a+16>>2]=b;nn(b)}b=i[a+8>>2];i[a+8>>2]=0;if(b){Qf(a+8|0,b)}return a|0}function ca(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,n=0,o=0;j=+m[b>>2];k=+m[b+4>>2];n=+m[b+8>>2];h=q(j)+q(k)+q(n);a:{if(h>1e-6^1){j=1;k=0;f=0;break a}h=1/h;k=h*k;j=h*j;f=h*n<0}h=k;g=i[a+16>>2];k=+(g|0);h=u(h*k+.5);b:{if(q(h)<2147483648){b=~~h;break b}b=-2147483648}l=(b|0)<0?b:0-b|0;j=u(j*k+.5);c:{if(q(j)<2147483648){e=~~j;break c}e=-2147483648}o=(e|0)<0;e=l+((o?e:0-e|0)+g|0)|0;l=(e|0)<0?0:e;f=f?0-l|0:l;b=b+(e>>31&((b|0)>0?e:0-e|0))|0;d:{if(!o){e=b+g|0;b=f+g|0;break d}e:{if((b|0)<=-1){e=f>>31;e=e+f^e;break e}e=i[a+8>>2]+((f|0)<0?f:0-f|0)|0}if((f|0)<=-1){f=b;b=b>>31;b=f+b^b;break d}b=i[a+8>>2]+((b|0)<0?b:0-b|0)|0}f:{if(!(b|e)){b=i[a+8>>2];a=b;break f}f=i[a+8>>2];g:{h:{i:{j:{if(!e){if((b|0)==(f|0)){a=b;break f}a=0;if(b|f){break j}b=0;break f}if((e|0)!=(f|0)|b){break i}b=e;a=b;break f}if((g|0)<(b|0)){b=(g<<1)-b|0;break f}if(f){break g}break h}if((e|0)!=(f|0)){break g}}f=e;if((g|0)<=(b|0)){break g}b=(g<<1)-b|0;a=e;break f}if(!((b|0)!=(f|0)|(g|0)<=(e|0))){a=(g<<1)-e|0;break f}if(b){a=e;break f}b=0;if((g|0)>=(e|0)){a=e;break f}a=(g<<1)-e|0}i[c>>2]=a;i[d>>2]=b}function Pd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=J-32|0;J=e;a:{b:{switch(d+ -2|0){case 0:d=i[b+4>>2];f=i[b+12>>2];i[e+24>>2]=-1;i[e+16>>2]=-1;i[e+20>>2]=1065353216;i[e+8>>2]=-1;i[e+12>>2]=-1;b=0;c:{if((c|0)==-2){break c}g=i[i[i[d+4>>2]+8>>2]+(f<<2)>>2];if((M[i[i[d>>2]+8>>2]](d)|0)==1){b=k[d+36>>1];Qd(e,d,c,f,e+8|0,(b<<24|b<<8&16711680)>>>16|0);b=i[e>>2];if(b){break c}i[e>>2]=0}b=Dm(28);i[b+4>>2]=g;c=i[e+12>>2];i[b+8>>2]=i[e+8>>2];i[b+12>>2]=c;c=i[e+20>>2];i[b+16>>2]=i[e+16>>2];i[b+20>>2]=c;i[b+24>>2]=i[e+24>>2];i[b>>2]=8676}i[a>>2]=b;break a;case 1:d=i[b+4>>2];f=i[b+12>>2];i[e+24>>2]=-1;i[e+16>>2]=-1;i[e+20>>2]=1065353216;i[e+8>>2]=-1;i[e+12>>2]=-1;b=0;d:{if((c|0)==-2){break d}g=i[i[i[d+4>>2]+8>>2]+(f<<2)>>2];if((M[i[i[d>>2]+8>>2]](d)|0)==1){b=k[d+36>>1];Rd(e,d,c,f,e+8|0,(b<<24|b<<8&16711680)>>>16|0);b=i[e>>2];if(b){break d}i[e>>2]=0}b=Dm(28);i[b+4>>2]=g;c=i[e+12>>2];i[b+8>>2]=i[e+8>>2];i[b+12>>2]=c;c=i[e+20>>2];i[b+16>>2]=i[e+16>>2];i[b+20>>2]=c;i[b+24>>2]=i[e+24>>2];i[b>>2]=10680}i[a>>2]=b;break a;default:break b}}i[a>>2]=0}J=e+32|0}function sl(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;a:{if((b|0)<0){break a}c=i[a+12>>2];d=i[a+8>>2];if(c-d>>2>>>0<=b>>>0){break a}d=d+(b<<2)|0;f=i[d>>2];h=i[f+60>>2];g=i[f+56>>2];e=d+4|0;b:{if((e|0)!=(c|0)){while(1){j=i[e>>2];i[e>>2]=0;i[d>>2]=j;if(f){Sa(f)}d=d+4|0;e=e+4|0;if((e|0)!=(c|0)){f=i[d>>2];continue}break}c=i[a+12>>2];if((d|0)==(c|0)){break b}}while(1){c=c+ -4|0;f=i[c>>2];i[c>>2]=0;if(f){Sa(f)}if((c|0)!=(d|0)){continue}break}}i[a+12>>2]=d;c=i[a+4>>2];if(c){tl(c,h)}c:{if((g|0)>4){break c}d:{d=o(g,12)+a|0;c=i[d+20>>2];f=d+24|0;d=i[f>>2];if((c|0)==(d|0)){break d}while(1){if(i[c>>2]==(b|0)){break d}c=c+4|0;if((d|0)!=(c|0)){continue}break}break c}if((c|0)==(d|0)){break c}e=c+4|0;d=d-e|0;if(d){rn(c,e,d)}i[f>>2]=c+d}d=0;while(1){c=o(d,12)+a|0;e=i[c+24>>2];f=i[c+20>>2];if((e|0)!=(f|0)){c=e-f|0;g=(c|0)>-1?c:-1;e=f-e|0;c=o((g|0)<1?g:1,((e|0)>(c|0)?e:c)>>>2|0);e=c>>>0>1?c:1;c=0;while(1){g=f+(c<<2)|0;h=i[g>>2];if((h|0)>(b|0)){i[g>>2]=h+ -1}c=c+1|0;if((e|0)!=(c|0)){continue}break}}d=d+1|0;if((d|0)!=5){continue}break}}}function Me(a,b){var c=0,d=0,e=0;c=(a|0)==(b|0);g[b+12|0]=c;a:{if(c){break a}while(1){d=i[b+8>>2];if(j[d+12|0]){break a}b:{c=i[d+8>>2];e=i[c>>2];if((e|0)==(d|0)){e=i[c+4>>2];if(!(!e|j[e+12|0])){break b}c:{if(i[d>>2]==(b|0)){b=d;break c}b=i[d+4>>2];e=i[b>>2];i[d+4>>2]=e;a=b;if(e){i[e+8>>2]=d;c=i[d+8>>2]}i[a+8>>2]=c;a=i[d+8>>2];i[(((d|0)!=i[a>>2])<<2)+a>>2]=b;i[b>>2]=d;i[d+8>>2]=b;c=i[b+8>>2]}g[b+12|0]=1;g[c+12|0]=0;a=i[c>>2];b=i[a+4>>2];i[c>>2]=b;if(b){i[b+8>>2]=c}i[a+8>>2]=i[c+8>>2];b=i[c+8>>2];i[((i[b>>2]!=(c|0))<<2)+b>>2]=a;i[a+4>>2]=c;i[c+8>>2]=a;return}if(!(j[e+12|0]|!e)){break b}d:{if(i[d>>2]!=(b|0)){b=d;break d}e=i[b+4>>2];i[d>>2]=e;a=b;if(e){i[e+8>>2]=d;c=i[d+8>>2]}i[a+8>>2]=c;a=i[d+8>>2];i[(((d|0)!=i[a>>2])<<2)+a>>2]=b;i[b+4>>2]=d;i[d+8>>2]=b;c=i[b+8>>2]}g[b+12|0]=1;g[c+12|0]=0;a=i[c+4>>2];b=i[a>>2];i[c+4>>2]=b;if(b){i[b+8>>2]=c}i[a+8>>2]=i[c+8>>2];b=i[c+8>>2];i[((i[b>>2]!=(c|0))<<2)+b>>2]=a;i[a>>2]=c;i[c+8>>2]=a;break a}b=e+12|0;g[d+12|0]=1;g[c+12|0]=(a|0)==(c|0);g[b|0]=1;b=c;if((a|0)!=(b|0)){continue}break}}}function Yd(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i[b+16>>2];h=i[c+4>>2]-l|0;e=i[c>>2]-l|0;i[c>>2]=e;i[c+4>>2]=h;f=h>>31;g=f+h^f;f=e>>31;g=g+(f+e^f)|0;f=i[b+16>>2];m=(g|0)<=(f|0);a:{if(m){g=h;break a}b:{c:{if((e|0)>=0){g=1;j=1;if((h|0)>-1){break b}k=1;g=-1;j=-1;if((e|0)>=1){break c}break b}k=-1;g=-1;j=-1;if((h|0)<1){break b}}g=(h|0)<1?-1:1;j=k}k=o(f,j);e=(e<<1)-k|0;j=(o(g,j)|0)>-1;f=o(f,g);g=((j?0-e|0:e)+f|0)/2|0;i[c+4>>2]=g;n=c;c=(h<<1)-f|0;e=(k+(j?0-c|0:c)|0)/2|0;i[n>>2]=e;f=i[b+16>>2]}c=i[d+4>>2]+g|0;e=i[d>>2]+e|0;d:{if((f|0)<(e|0)){e=e-i[b+4>>2]|0;break d}if((e|0)>=(0-f|0)){break d}e=i[b+4>>2]+e|0}e:{if((f|0)<(c|0)){c=c-i[b+4>>2]|0;break e}if((c|0)>=(0-f|0)){break e}c=i[b+4>>2]+c|0}f:{if(m){f=c;break f}g:{h:{if((e|0)>=0){b=1;g=1;if((c|0)>-1){break g}d=1;b=-1;g=-1;if((e|0)>=1){break h}break g}d=-1;b=-1;g=-1;if((c|0)<1){break g}}b=(c|0)<1?-1:1;g=d}h=o(f,g);d=(e<<1)-h|0;i[a>>2]=d;k=0-d|0;j=d;d=(o(b,g)|0)>-1;b=o(b,f);f=((d?k:j)+b|0)/2|0;b=(c<<1)-b|0;e=(h+(d?0-b|0:b)|0)/2|0}i[a>>2]=e+l;i[a+4>>2]=f+l}function Sc(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;g=i[b+4>>2];f=i[b>>2];c=(i[c+4>>2]-g|0)+(i[c>>2]-f<<3)|0;a:{if((c|0)<=0){g=i[d+4>>2];break a}b:{if(!g){g=i[d+4>>2];break b}e=i[d+4>>2];j=32-e|0;l=32-g|0;h=(c|0)<(l|0)?c:l;k=j>>>0<h>>>0?j:h;m=i[d>>2];f=i[f>>2]&(-1<<g&-1>>>l-h);i[m>>2]=i[m>>2]&(-1<<e&-1>>>j-k^-1)|(e>>>0>g>>>0?f<<e-g:f>>>g-e|0);e=e+k|0;g=e&31;i[d+4>>2]=g;j=m+(e>>>3&536870908)|0;i[d>>2]=j;e=h-k|0;if((e|0)>=1){i[j>>2]=i[j>>2]&(-1>>>32-e^-1)|f>>>k+i[b+4>>2];i[d+4>>2]=e;g=e}c=c-h|0;f=i[b>>2]+4|0;i[b>>2]=f}k=-1<<g;h=32-g|0;c:{if((c|0)<32){e=c;break c}j=k^-1;while(1){e=i[d>>2];f=i[f>>2];i[e>>2]=j&i[e>>2]|f<<g;i[d>>2]=e+4;i[e+4>>2]=k&i[e+4>>2]|f>>>h;f=i[b>>2]+4|0;i[b>>2]=f;l=(c|0)>63;e=c+ -32|0;c=e;if(l){continue}break}}if((e|0)<1){break a}b=i[d>>2];c=(h|0)<(e|0)?h:e;j=i[b>>2]&(k&-1>>>h-c^-1);h=i[f>>2]&-1>>>32-e;i[b>>2]=j|h<<g;f=c+g|0;g=f&31;i[d+4>>2]=g;f=b+(f>>>3&536870908)|0;i[d>>2]=f;b=e-c|0;if((b|0)<1){break a}i[f>>2]=i[f>>2]&(-1>>>32-b^-1)|h>>>c;i[d+4>>2]=b;g=b}b=i[d>>2];i[a+4>>2]=g;i[a>>2]=b}function vi(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0;e=J-16|0;J=e;m=i[a+80>>2];k=g[b+24|0];f=o(m,k);a:{b:{c:{a=i[b+28>>2];if(!(!j[b+84|0]|((a|0)!=6?(a|0)!=5:0))){l=i[b+48>>2];k=i[i[b>>2]>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;a=0;b=f<<2;d:{if(!b){break d}a=b>>2;if(a>>>0>=1073741824){break c}d=Dm(b);h=d+(a<<2)|0;if((b|0)<1){a=d;break d}d=pn(d,k+l|0,b);a=d;d=b+a|0}b=i[c>>2];if(b){i[c+4>>2]=b;nn(b)}i[c+8>>2]=h;i[c+4>>2]=d;i[c>>2]=a;a=1;break a}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(k){if((k|0)<=-1){break c}a=k<<2;h=Dm(a);i[e>>2]=h;d=a+h|0;i[e+8>>2]=d;qn(h,0,a);i[e+4>>2]=d}d=i[c>>2];a=i[c+4>>2]-d>>2;e:{if(f>>>0>a>>>0){ye(c,f-a|0);break e}if(f>>>0>=a>>>0){break e}i[c+4>>2]=d+(f<<2)}if(!m){break b}d=0;n=1;while(1){a=l;f=b;if(!j[b+84|0]){a=i[i[b+68>>2]+(l<<2)>>2]}if(!wi(f,a,g[b+24|0],h)){break b}if((k|0)>=1){f=i[c>>2];a=0;while(1){i[f+(d<<2)>>2]=i[(a<<2)+h>>2];d=d+1|0;a=a+1|0;if((k|0)!=(a|0)){continue}break}}l=l+1|0;n=l>>>0<m>>>0;if((l|0)!=(m|0)){continue}break}break b}Sm();x()}if(h){nn(h)}a=n^1}J=e+16|0;return a&1}function ti(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0;e=J-16|0;J=e;m=i[a+80>>2];k=g[b+24|0];f=o(m,k);a:{b:{c:{a=i[b+28>>2];if(!(!j[b+84|0]|((a|0)!=6?(a|0)!=5:0))){l=i[b+48>>2];k=i[i[b>>2]>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;a=0;b=f<<2;d:{if(!b){break d}a=b>>2;if(a>>>0>=1073741824){break c}d=Dm(b);h=d+(a<<2)|0;if((b|0)<1){a=d;break d}d=pn(d,k+l|0,b);a=d;d=b+a|0}b=i[c>>2];if(b){i[c+4>>2]=b;nn(b)}i[c+8>>2]=h;i[c+4>>2]=d;i[c>>2]=a;a=1;break a}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(k){if((k|0)<=-1){break c}a=k<<2;h=Dm(a);i[e>>2]=h;d=a+h|0;i[e+8>>2]=d;qn(h,0,a);i[e+4>>2]=d}d=i[c>>2];a=i[c+4>>2]-d>>2;e:{if(f>>>0>a>>>0){Ra(c,f-a|0);break e}if(f>>>0>=a>>>0){break e}i[c+4>>2]=d+(f<<2)}if(!m){break b}d=0;n=1;while(1){a=l;f=b;if(!j[b+84|0]){a=i[i[b+68>>2]+(l<<2)>>2]}if(!ui(f,a,g[b+24|0],h)){break b}if((k|0)>=1){f=i[c>>2];a=0;while(1){i[f+(d<<2)>>2]=i[(a<<2)+h>>2];d=d+1|0;a=a+1|0;if((k|0)!=(a|0)){continue}break}}l=l+1|0;n=l>>>0<m>>>0;if((l|0)!=(m|0)){continue}break}break b}Sm();x()}if(h){nn(h)}a=n^1}J=e+16|0;return a&1}function Nb(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=J-32|0;J=b;c=i[a+16>>2];a:{if(c>>>0>=341){i[a+16>>2]=c+ -341;c=i[a+4>>2];i[b+8>>2]=i[c>>2];i[a+4>>2]=c+4;Ob(a,b+8|0);break a}b:{c:{d:{e:{d=i[a+8>>2];e=d-i[a+4>>2]>>2;f=i[a+12>>2];c=f-i[a>>2]|0;if(e>>>0<c>>2>>>0){if((d|0)==(f|0)){break e}g=b,h=Dm(4092),i[g+8>>2]=h;Ob(a,b+8|0);break a}i[b+24>>2]=a+12;c=c?c>>1:1;if(c>>>0>=1073741824){break d}d=c<<2;c=Dm(d);i[b+8>>2]=c;e=c+(e<<2)|0;i[b+16>>2]=e;i[b+20>>2]=c+d;i[b+12>>2]=e;g=b,h=Dm(4092),i[g+4>>2]=h;Ob(b+8|0,b+4|0);d=i[a+8>>2];if((d|0)==i[a+4>>2]){c=d;break b}while(1){d=d+ -4|0;Pb(b+8|0,d);if(i[a+4>>2]!=(d|0)){continue}break}break c}g=b,h=Dm(4092),i[g+8>>2]=h;Pb(a,b+8|0);c=i[a+4>>2];i[b+8>>2]=i[c>>2];i[a+4>>2]=c+4;Ob(a,b+8|0);break a}Ba(1756);x()}c=i[a+8>>2]}e=i[a>>2];i[a>>2]=i[b+8>>2];i[b+8>>2]=e;i[a+4>>2]=i[b+12>>2];i[b+12>>2]=d;i[a+8>>2]=i[b+16>>2];i[b+16>>2]=c;f=i[a+12>>2];i[a+12>>2]=i[b+20>>2];i[b+20>>2]=f;if((c|0)!=(d|0)){i[b+16>>2]=c+(((c-d|0)+ -4>>>2^-1)<<2)}if(!e){break a}nn(e)}J=b+32|0}function tg(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=11568;ug(a+232|0);e=i[a+216>>2];if(e){c=e;b=i[a+220>>2];d=c;a:{if((c|0)==(b|0)){break a}while(1){c=i[b+ -12>>2];if(c){i[b+ -8>>2]=c;nn(c)}c=i[b+ -28>>2];if(c){i[b+ -24>>2]=c;nn(c)}c=b+ -144|0;d=i[b+ -40>>2];if(d){i[b+ -36>>2]=d;nn(d)}Rf(b+ -140|0);b=c;if((e|0)!=(b|0)){continue}break}d=i[a+216>>2]}c=d;i[a+220>>2]=e;nn(c)}b=i[a+196>>2];if(b){i[a+200>>2]=b;nn(b)}b=i[a+184>>2];if(b){i[a+188>>2]=b;nn(b)}b=i[a+172>>2];if(b){i[a+176>>2]=b;nn(b)}b=i[a+160>>2];if(b){i[a+164>>2]=b;nn(b)}b=i[a+144>>2];if(b){while(1){c=i[b>>2];nn(b);b=c;if(b){continue}break}}b=i[a+136>>2];i[a+136>>2]=0;if(b){nn(b)}b=i[a+120>>2];if(b){nn(b)}b=i[a+108>>2];if(b){nn(b)}b=i[a+96>>2];if(b){nn(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;nn(b)}b=i[a+60>>2];if(b){nn(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}b=i[a+36>>2];if(b){i[a+40>>2]=b;nn(b)}b=i[a+24>>2];if(b){i[a+28>>2]=b;nn(b)}b=i[a+12>>2];if(b){i[a+16>>2]=b;nn(b)}b=i[a+8>>2];i[a+8>>2]=0;if(b){Qf(a+8|0,b)}return a|0}function mi(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0;f=J-16|0;J=f;l=i[a+80>>2];h=g[b+24|0];a=o(l,h);a:{e=i[b+28>>2];b:{if(!(!j[b+84|0]|((e|0)!=2?(e|0)!=1:0))){e=i[b+48>>2];k=i[i[b>>2]>>2];i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;b=0;if(a){if((a|0)<=-1){break a}b=Dm(a);d=pn(b,e+k|0,a)+a|0}a=i[c>>2];if(a){i[c+4>>2]=a;nn(a)}i[c+8>>2]=d;i[c+4>>2]=d;i[c>>2]=b;a=1;break b}i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;if(h){if((h|0)<=-1){break a}d=Dm(h);i[f>>2]=d;e=d+h|0;i[f+8>>2]=e;qn(d,0,h);i[f+4>>2]=e}k=i[c>>2];e=i[c+4>>2]-k|0;c:{if(a>>>0>e>>>0){rb(c,a-e|0);break c}if(a>>>0>=e>>>0){break c}i[c+4>>2]=a+k}if(l){a=0;m=1;e=0;while(1){d=e;k=b;if(!j[b+84|0]){d=i[i[b+68>>2]+(e<<2)>>2]}n=d;d=i[f>>2];if(ni(k,n,g[b+24|0],d)){d:{if((h|0)<1){break d}g[i[c>>2]+a|0]=j[d|0];d=1;a=a+1|0;if((h|0)==1){break d}while(1){g[i[c>>2]+a|0]=j[i[f>>2]+d|0];a=a+1|0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}e=e+1|0;m=e>>>0<l>>>0;if((e|0)!=(l|0)){continue}}break}d=i[f>>2]}if(d){nn(d)}a=m^1}J=f+16|0;return a&1}Sm();x()}function ki(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0;f=J-16|0;J=f;l=i[a+80>>2];h=g[b+24|0];a=o(l,h);a:{e=i[b+28>>2];b:{if(!(!j[b+84|0]|((e|0)!=2?(e|0)!=1:0))){e=i[b+48>>2];k=i[i[b>>2]>>2];i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;b=0;if(a){if((a|0)<=-1){break a}b=Dm(a);d=pn(b,e+k|0,a)+a|0}a=i[c>>2];if(a){i[c+4>>2]=a;nn(a)}i[c+8>>2]=d;i[c+4>>2]=d;i[c>>2]=b;a=1;break b}i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;if(h){if((h|0)<=-1){break a}d=Dm(h);i[f>>2]=d;e=d+h|0;i[f+8>>2]=e;qn(d,0,h);i[f+4>>2]=e}k=i[c>>2];e=i[c+4>>2]-k|0;c:{if(a>>>0>e>>>0){rb(c,a-e|0);break c}if(a>>>0>=e>>>0){break c}i[c+4>>2]=a+k}if(l){a=0;m=1;e=0;while(1){d=e;k=b;if(!j[b+84|0]){d=i[i[b+68>>2]+(e<<2)>>2]}n=d;d=i[f>>2];if(li(k,n,g[b+24|0],d)){d:{if((h|0)<1){break d}g[i[c>>2]+a|0]=j[d|0];d=1;a=a+1|0;if((h|0)==1){break d}while(1){g[i[c>>2]+a|0]=j[i[f>>2]+d|0];a=a+1|0;d=d+1|0;if((h|0)!=(d|0)){continue}break}}e=e+1|0;m=e>>>0<l>>>0;if((e|0)!=(l|0)){continue}}break}d=i[f>>2]}if(d){nn(d)}a=m^1}J=f+16|0;return a&1}Sm();x()}function md(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,m=0,n=0,o=0;l=i[b+12>>2];e=l;d=i[b+20>>2];f=d;a:{m=i[b+16>>2];c=m+4|0;if(c>>>0<4){d=d+1|0}n=i[b+8>>2];g=c;c=d;if((e|0)<(c|0)?1:(e|0)<=(c|0)?n>>>0<g>>>0:0){break a}o=i[b>>2];d=o+m|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[b+16>>2]=g;i[b+20>>2]=c;c=l;d=f;h=m+8|0;if(h>>>0<8){d=d+1|0}if((c|0)<(d|0)?1:(c|0)<=(d|0)?n>>>0<h>>>0:0){break a}c=g+o|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=h;i[b+20>>2]=d;if((e|0)>(c|0)){break a}i[a+16>>2]=c;i[a+12>>2]=e;g=e;e=(c>>31)-((e>>31)+(c>>>0<e>>>0)|0)|0;c=c-g|0;if(!e&c>>>0>2147483646|e>>>0>0){break a}e=c+1|0;i[a+20>>2]=e;c=(e|0)/2|0;i[a+24>>2]=c;i[a+28>>2]=0-c;if(!(e&1)){i[a+24>>2]=c+ -1}if(k[b+38>>1]<=513){if((l|0)<(d|0)?1:(l|0)<=(d|0)?n>>>0<=h>>>0:0){break a}c=j[h+o|0];d=f;f=m+9|0;if(f>>>0<9){d=d+1|0}e=b;i[e+16>>2]=f;i[e+20>>2]=d;d=0;b:{switch(c|0){case 1:d=1;break;case 0:break b;default:break a}}i[a+88>>2]=d}return Ae(a+112|0,b)|0}return 0}function ri(a,b,c){var d=0,e=0,f=0,l=0,m=0,n=0,p=0,q=0;e=J-16|0;J=e;p=i[a+80>>2];n=g[b+24|0];a=o(p,n);a:{b:{c:{d=i[b+28>>2];if(!(!j[b+84|0]|((d|0)!=4?(d|0)!=3:0))){l=i[b+48>>2];d=i[i[b>>2]>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;b=0;a=a<<1;if(a){if((a|0)<=-1){break c}b=Dm(a);l=pn(b,d+l|0,a);m=l+a|0;f=l+(a>>1<<1)|0}a=i[c>>2];if(a){i[c+4>>2]=a;nn(a)}i[c+8>>2]=f;i[c+4>>2]=m;i[c>>2]=b;a=1;break a}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(n){if((n|0)<=-1){break c}d=n<<1;m=Dm(d);i[e>>2]=m;f=d+m|0;i[e+8>>2]=f;qn(m,0,d);i[e+4>>2]=f}f=i[c>>2];d=i[c+4>>2]-f>>1;d:{if(a>>>0>d>>>0){pi(c,a-d|0);break d}if(a>>>0>=d>>>0){break d}i[c+4>>2]=f+(a<<1)}if(!p){break b}f=0;q=1;while(1){a=l;d=b;if(!j[d+84|0]){a=i[i[b+68>>2]+(l<<2)>>2]}if(!si(d,a,g[b+24|0],m)){break b}if((n|0)>=1){d=i[c>>2];a=0;while(1){h[d+(f<<1)>>1]=k[(a<<1)+m>>1];f=f+1|0;a=a+1|0;if((n|0)!=(a|0)){continue}break}}l=l+1|0;q=l>>>0<p>>>0;if((l|0)!=(p|0)){continue}break}break b}Sm();x()}if(m){nn(m)}a=q^1}J=e+16|0;return a&1}function oi(a,b,c){var d=0,e=0,f=0,l=0,m=0,n=0,p=0,q=0;e=J-16|0;J=e;p=i[a+80>>2];n=g[b+24|0];a=o(p,n);a:{b:{c:{d=i[b+28>>2];if(!(!j[b+84|0]|((d|0)!=4?(d|0)!=3:0))){l=i[b+48>>2];d=i[i[b>>2]>>2];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;b=0;a=a<<1;if(a){if((a|0)<=-1){break c}b=Dm(a);l=pn(b,d+l|0,a);m=l+a|0;f=l+(a>>1<<1)|0}a=i[c>>2];if(a){i[c+4>>2]=a;nn(a)}i[c+8>>2]=f;i[c+4>>2]=m;i[c>>2]=b;a=1;break a}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(n){if((n|0)<=-1){break c}d=n<<1;m=Dm(d);i[e>>2]=m;f=d+m|0;i[e+8>>2]=f;qn(m,0,d);i[e+4>>2]=f}f=i[c>>2];d=i[c+4>>2]-f>>1;d:{if(a>>>0>d>>>0){pi(c,a-d|0);break d}if(a>>>0>=d>>>0){break d}i[c+4>>2]=f+(a<<1)}if(!p){break b}f=0;q=1;while(1){a=l;d=b;if(!j[d+84|0]){a=i[i[b+68>>2]+(l<<2)>>2]}if(!qi(d,a,g[b+24|0],m)){break b}if((n|0)>=1){d=i[c>>2];a=0;while(1){h[d+(f<<1)>>1]=k[(a<<1)+m>>1];f=f+1|0;a=a+1|0;if((n|0)!=(a|0)){continue}break}}l=l+1|0;q=l>>>0<p>>>0;if((l|0)!=(p|0)){continue}break}break b}Sm();x()}if(m){nn(m)}a=q^1}J=e+16|0;return a&1}function ba(a,b,c,d,e){var f=0,g=0,h=0,k=0,l=0,n=0,o=0,q=0;f=J-48|0;J=f;a=i[a+4>>2];a:{if(a+ -2>>>0>28){break a}l=i[i[e>>2]>>2]+i[e+48>>2]|0;i[f+16>>2]=a;a=-1<<a;i[f+20>>2]=a^-1;a=-2-a|0;i[f+24>>2]=a;i[f+32>>2]=(a|0)/2;m[f+28>>2]=p(2)/p(a|0);g=i[c>>2];if((g|0)!=i[c+4>>2]){a=0;e=0;while(1){d=i[(e<<2)+g>>2];g=f+36|0;n=i[i[b>>2]>>2];o=i[b+48>>2];h=i[b+44>>2];k=i[b+40>>2];q=k;if(!j[b+84|0]){d=i[i[b+68>>2]+(d<<2)>>2]}d=Gn(q,h,d,0)+o|0;pn(g,d+n|0,k);ca(f+16|0,f+36|0,f+12|0,f+8|0);d=a<<2;i[d+l>>2]=i[f+12>>2];i[(d|4)+l>>2]=i[f+8>>2];h=1;a=a+2|0;e=e+1|0;g=i[c>>2];if(e>>>0<i[c+4>>2]-g>>2>>>0){continue}break}break a}if(!d){h=1;break a}e=0;a=0;while(1){c=a;g=f+36|0;n=i[i[b>>2]>>2];o=i[b+48>>2];h=i[b+44>>2];k=i[b+40>>2];q=k;if(!j[b+84|0]){c=i[i[b+68>>2]+(a<<2)>>2]}c=Gn(q,h,c,0)+o|0;pn(g,c+n|0,k);ca(f+16|0,f+36|0,f+12|0,f+8|0);c=e<<2;i[c+l>>2]=i[f+12>>2];i[(c|4)+l>>2]=i[f+8>>2];e=e+2|0;h=1;a=a+1|0;if((d|0)!=(a|0)){continue}break}}J=f+48|0;return h}function wa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,k=0,m=0,n=0;e=i[a+12>>2];d=i[a+8>>2];f=e-d>>2;b=g[b+24|0];a:{if(f>>>0<b>>>0){na(a+8|0,b-f|0);d=i[a+8>>2];e=i[a+12>>2];break a}if(f>>>0<=b>>>0){break a}e=(b<<2)+d|0;i[a+12>>2]=e}b=0;h=i[c+12>>2];f=i[c+20>>2];k=i[c+16>>2];m=e-d|0;e=m;n=k+e|0;if(n>>>0<e>>>0){f=f+1|0}b:{if((h|0)<(f|0)?1:(h|0)<=(f|0)?l[c+8>>2]<n>>>0:0){break b}pn(d,k+i[c>>2]|0,m);d=i[c+20>>2];h=e+i[c+16>>2]|0;if(h>>>0<e>>>0){d=d+1|0}e=h;i[c+16>>2]=e;i[c+20>>2]=d;f=i[c+12>>2];h=e+4|0;if(h>>>0<4){d=d+1|0}if((f|0)<(d|0)?1:(f|0)<=(d|0)?l[c+8>>2]<h>>>0:0){break b}d=e+i[c>>2]|0;i[a+20>>2]=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);d=i[c+20>>2];e=d;k=i[c+16>>2];h=k+4|0;if(h>>>0<4){d=d+1|0}i[c+16>>2]=h;i[c+20>>2]=d;f=i[c+12>>2];if((f|0)<(d|0)?1:(f|0)<=(d|0)?l[c+8>>2]<=h>>>0:0){break b}f=j[h+i[c>>2]|0];d=e;e=k+5|0;if(e>>>0<5){d=d+1|0}i[c+16>>2]=e;i[c+20>>2]=d;if(f+ -1>>>0>29){break b}i[a+4>>2]=f;b=1}return b|0}function Qk(a,b){var c=0,d=0,e=0,f=0,h=0,j=0;j=J-16|0;J=j;a:{b:{if(b){i[a+88>>2]=0;i[a+92>>2]=0;c=a+84|0;d=i[c>>2];i[c>>2]=0;if(d){nn(d)}i[a+76>>2]=0;i[a+80>>2]=0;c=a+72|0;d=i[c>>2];i[c>>2]=0;if(d){nn(d)}d=i[b>>2];c=i[b+4>>2];g[j+15|0]=0;Jf(a,c-d>>2,j+15|0);c=b+28|0;d=i[c>>2];e=i[b+24>>2];g[j+14|0]=0;Jf(a+12|0,d-e>>2,j+14|0);Hk(a+28|0,i[b+4>>2]-i[b>>2]>>2,14476);d=i[a+52>>2];e=i[c>>2]-i[b+24>>2]|0;c=e>>2;c:{if(i[a+60>>2]-d>>2>>>0>=c>>>0){break c}if(c>>>0>=1073741824){break b}f=i[a+56>>2];h=c<<2;c=Dm(e);h=h+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){pn(c,d,e)}i[a+60>>2]=h;i[a+56>>2]=f;i[a+52>>2]=c;if(!d){break c}nn(d)}d=i[a+40>>2];e=i[b+28>>2]-i[b+24>>2]|0;c=e>>2;d:{if(i[a+48>>2]-d>>2>>>0>=c>>>0){break d}if(c>>>0>=1073741824){break a}f=i[a+44>>2];h=c<<2;c=Dm(e);h=h+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){pn(c,d,e)}i[a+48>>2]=h;i[a+44>>2]=f;i[a+40>>2]=c;if(!d){break d}nn(d)}g[a+24|0]=1;i[a+64>>2]=b}J=j+16|0;return}Ba(14480);x()}Ba(14480);x()}function Eg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;n=i[a+12>>2];d=i[a+108>>2];e=i[d+80>>2];g[b+84|0]=0;f=i[b+68>>2];c=i[b+72>>2]-f>>2;a:{if(e>>>0>c>>>0){Wb(b+68|0,e-c|0,12516);d=i[a+108>>2];e=i[d+80>>2];break a}if(e>>>0>=c>>>0){break a}i[b+72>>2]=f+(e<<2)}m=i[d+96>>2];c=i[d+100>>2]-m|0;d=(c|0)/12|0;if(!c){return 1}p=d>>>0>1?d:1;d=0;b:{while(1){c:{if((d|0)==1431655765){break c}c=i[n>>2]+(o(d,3)<<2)|0;j=i[c>>2];if((j|0)==-1){break c}f=o(d,12)+m|0;h=i[f>>2];if(h>>>0>=e>>>0){break c}l=i[i[a+112>>2]+12>>2];k=i[l+(j<<2)>>2];if(k>>>0>=e>>>0){break c}j=i[b+68>>2];i[j+(h<<2)>>2]=k;h=i[c+4>>2];if((h|0)==-1){break c}k=i[f+4>>2];if(k>>>0>=e>>>0){break c}h=i[(h<<2)+l>>2];if(h>>>0>=e>>>0){break c}i[j+(k<<2)>>2]=h;c=i[c+8>>2];if((c|0)==-1){break c}f=i[f+8>>2];if(f>>>0>=e>>>0){break c}c=i[(c<<2)+l>>2];if(c>>>0>=e>>>0){break c}i[j+(f<<2)>>2]=c;c=1;d=d+1|0;if((p|0)!=(d|0)){continue}break b}break}c=0}return c|0}function Pg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;n=i[a+12>>2];d=i[a+68>>2];e=i[d+80>>2];g[b+84|0]=0;f=i[b+68>>2];c=i[b+72>>2]-f>>2;a:{if(e>>>0>c>>>0){Wb(b+68|0,e-c|0,12516);d=i[a+68>>2];e=i[d+80>>2];break a}if(e>>>0>=c>>>0){break a}i[b+72>>2]=f+(e<<2)}m=i[d+96>>2];c=i[d+100>>2]-m|0;d=(c|0)/12|0;if(!c){return 1}p=d>>>0>1?d:1;d=0;b:{while(1){c:{if((d|0)==1431655765){break c}c=i[n>>2]+(o(d,3)<<2)|0;j=i[c>>2];if((j|0)==-1){break c}f=o(d,12)+m|0;h=i[f>>2];if(h>>>0>=e>>>0){break c}l=i[i[a+72>>2]+12>>2];k=i[l+(j<<2)>>2];if(k>>>0>=e>>>0){break c}j=i[b+68>>2];i[j+(h<<2)>>2]=k;h=i[c+4>>2];if((h|0)==-1){break c}k=i[f+4>>2];if(k>>>0>=e>>>0){break c}h=i[(h<<2)+l>>2];if(h>>>0>=e>>>0){break c}i[j+(k<<2)>>2]=h;c=i[c+8>>2];if((c|0)==-1){break c}f=i[f+8>>2];if(f>>>0>=e>>>0){break c}c=i[(c<<2)+l>>2];if(c>>>0>=e>>>0){break c}i[j+(f<<2)>>2]=c;c=1;d=d+1|0;if((p|0)!=(d|0)){continue}break b}break}c=0}return c|0}function Oc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=J-16|0;J=e;a:{c=i[a+4>>2];b:{if(c>>>0<b>>>0){d=i[a+8>>2];f=d<<5;g=b-c|0;c:{if(!(f>>>0<g>>>0|c>>>0>f-g>>>0)){i[a+4>>2]=b;d=c&31;b=i[a>>2]+(c>>>3&536870908)|0;break c}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if((b|0)<=-1){break a}c=e;if(f>>>0<=1073741822){f=b+31&-32;b=d<<6;b=b>>>0<f>>>0?f:b}else{b=2147483647}Qc(c,b);d=i[a+4>>2];i[e+4>>2]=d+g;h=i[a>>2];b=i[e>>2];d:{if((d|0)<1){d=0;break d}c=d>>>5|0;f=c<<2;b=rn(b,h,f)+f|0;d=d-(c<<5)|0;e:{if((d|0)<1){d=0;break e}c=-1>>>32-d|0;i[b>>2]=i[b>>2]&(c^-1)|c&i[f+h>>2]}h=i[a>>2]}i[a>>2]=i[e>>2];i[e>>2]=h;c=i[a+4>>2];i[a+4>>2]=i[e+4>>2];i[e+4>>2]=c;c=i[a+8>>2];i[a+8>>2]=i[e+8>>2];i[e+8>>2]=c;if(!h){break c}nn(h)}if(!g){break b}if(d){c=32-d|0;a=c>>>0>g>>>0?g:c;i[b>>2]=i[b>>2]&(-1<<d&-1>>>c-a^-1);g=g-a|0;b=b+4|0}c=g>>>5<<2;a=qn(b,0,c);b=g&31;if(!b){break b}a=a+c|0;i[a>>2]=i[a>>2]&(-1>>>32-b^-1);break b}i[a+4>>2]=b}J=e+16|0;return}Sm();x()}function Fg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;g=J-16|0;J=g;b=i[a+4>>2];d=i[b>>2];a:{c=i[a+12>>2];e=i[c+28>>2]-i[c+24>>2]|0;c=e>>2;b:{if(i[b+8>>2]-d>>2>>>0>=c>>>0){break b}if(c>>>0>=1073741824){break a}f=i[b+4>>2];h=c<<2;c=Dm(e);h=h+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){pn(c,d,e)}i[b+8>>2]=h;i[b+4>>2]=f;i[b>>2]=c;if(!d){break b}nn(d)}b=i[a+12>>2];d=i[b+28>>2];b=i[b+24>>2];i[g+12>>2]=0;b=d-b>>2;c=a+96|0;e=i[c>>2];d=i[a+100>>2]-e>>2;c:{if(b>>>0>d>>>0){Ta(c,b-d|0,g+12|0);break c}if(b>>>0>=d>>>0){break c}i[a+100>>2]=e+(b<<2)}e=a+8|0;b=i[a+116>>2];d:{if(b){c=i[b>>2];if((c|0)==i[b+4>>2]){d=1;break d}b=0;while(1){d=Gg(e,i[(b<<2)+c>>2]);if(!d){break d}f=i[a+116>>2];c=i[f>>2];b=b+1|0;if(b>>>0<i[f+4>>2]-c>>2>>>0){continue}break}break d}d=1;a=i[a+12>>2];a=(i[a+4>>2]-i[a>>2]>>2>>>0)/3|0;if(a>>>0<1){break d}b=0;while(1){d=Gg(e,o(b,3));b=b+1|0;if((a|0)==(b|0)){break d}if(d){continue}break}}J=g+16|0;return d|0}Ba(12220);x()}function Vg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,p=0;j=i[a+12>>2];d=i[a+68>>2];e=i[d+80>>2];g[b+84|0]=0;h=i[b+68>>2];c=i[b+72>>2]-h>>2;a:{if(e>>>0>c>>>0){Wb(b+68|0,e-c|0,12516);d=i[a+68>>2];e=i[d+80>>2];break a}if(e>>>0>=c>>>0){break a}i[b+72>>2]=h+(e<<2)}m=i[d+96>>2];c=i[d+100>>2]-m|0;d=(c|0)/12|0;if(!c){return 1}n=d>>>0>1?d:1;p=i[j+28>>2];d=0;b:{while(1){c:{c=(o(d,3)<<2)+p|0;h=i[c>>2];if((h|0)==-1){break c}j=o(d,12)+m|0;k=i[j>>2];if(k>>>0>=e>>>0){break c}f=h<<2;h=i[i[a+72>>2]+12>>2];f=i[f+h>>2];if(f>>>0>=e>>>0){break c}l=k<<2;k=i[b+68>>2];i[l+k>>2]=f;f=i[c+4>>2];if((f|0)==-1){break c}l=i[j+4>>2];if(l>>>0>=e>>>0){break c}f=i[h+(f<<2)>>2];if(f>>>0>=e>>>0){break c}i[k+(l<<2)>>2]=f;c=i[c+8>>2];if((c|0)==-1){break c}j=i[j+8>>2];if(j>>>0>=e>>>0){break c}c=i[h+(c<<2)>>2];if(c>>>0>=e>>>0){break c}i[k+(j<<2)>>2]=c;c=1;d=d+1|0;if((n|0)!=(d|0)){continue}break b}break}c=0}return c|0}function ql(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=a+8|0;d=i[a+12>>2];h=i[a+8>>2];f=d-h>>2;a:{if((f|0)>(b|0)){break a}e=b+1|0;if(e>>>0>f>>>0){rl(j,e-f|0);break a}if(e>>>0>=f>>>0){break a}f=h+(e<<2)|0;if((f|0)!=(d|0)){while(1){d=d+ -4|0;e=i[d>>2];i[d>>2]=0;if(e){Sa(e)}if((d|0)!=(f|0)){continue}break}}i[a+12>>2]=f}b:{c:{d=i[i[c>>2]+56>>2];d:{if((d|0)>4){break d}d=o(d,12)+a|0;h=d+24|0;a=i[h>>2];k=d+28|0;if((a|0)!=i[k>>2]){i[a>>2]=b;i[h>>2]=a+4;break d}l=d+20|0;d=i[l>>2];f=a-d|0;g=f>>2;e=g+1|0;if(e>>>0>=1073741824){break c}a=f>>1;e=g>>>0<536870911?a>>>0<e>>>0?e:a:1073741823;a=0;e:{if(!e){break e}if(e>>>0>=1073741824){break b}a=Dm(e<<2)}g=a+(g<<2)|0;i[g>>2]=b;e=a+(e<<2)|0;g=g+4|0;if((f|0)>=1){pn(a,d,f)}i[l>>2]=a;i[h>>2]=g;i[k>>2]=e;if(!d){break d}nn(d)}d=i[c>>2];i[d+60>>2]=b;a=i[j>>2];i[c>>2]=0;b=a+(b<<2)|0;a=i[b>>2];i[b>>2]=d;if(a){Sa(a)}return}Sm();x()}Ba(14808);x()}function mg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if((e-c|0)/12>>>0>=b>>>0){if(b){b=o(b,12);c=qn(c,0,b-((b+ -12>>>0)%12|0)|0)+b|0}i[a+4>>2]=c;return}a:{b:{c:{h=i[a>>2];f=(c-h|0)/12|0;d=f+b|0;if(d>>>0<357913942){f=o(f,12);e=(e-h|0)/12|0;g=e<<1;e=e>>>0<178956970?g>>>0<d>>>0?d:g:357913941;if(e){if(e>>>0>=357913942){break c}j=Dm(o(e,12))}d=f+j|0;b=o(b,12);f=qn(d,0,b-((b+ -12>>>0)%12|0)|0);g=b+f|0;b=o(e,12)+j|0;if((c|0)==(h|0)){break b}while(1){d=d+ -12|0;i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;c=c+ -12|0;i[d>>2]=i[c>>2];i[d+4>>2]=i[c+4>>2];i[d+8>>2]=i[c+8>>2];i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;if((c|0)!=(h|0)){continue}break}i[a+8>>2]=b;b=i[a+4>>2];i[a+4>>2]=g;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){a=b+ -12|0;d=i[a>>2];if(d){i[b+ -8>>2]=d;nn(d)}b=a;if((b|0)!=(c|0)){continue}break}break a}Sm();x()}Ba(12220);x()}i[a+8>>2]=b;i[a+4>>2]=g;i[a>>2]=f}if(c){nn(c)}}function da(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=p(0),f=p(0),h=p(0),k=p(0),l=p(0),m=0,n=p(0),o=p(0),r=p(0),s=p(0),u=0;a:{if(i[c+28>>2]!=9|j[c+24|0]!=3){break a}a=i[a+4>>2];if(a+ -2>>>0>28){break a}u=1;m=i[c+80>>2];if(!m){break a}n=p(p(2)/p((1<<a)+ -2|0));c=i[i[c>>2]>>2]+i[c+48>>2]|0;a=i[i[b>>2]>>2]+i[b+48>>2]|0;b=0;while(1){h=p(0);o=p(0);r=p(0);e=p(p(n*p(i[a>>2]))+p(-1));f=p(p(n*p(i[a+4>>2]))+p(-1));l=p(p(p(1)-p(q(e)))-p(q(f)));k=p(t(p(-l),p(0)));s=p(-k);f=p(f+(f<p(0)?k:s));e=p(e+(e<p(0)?k:s));k=p(p(f*f)+p(p(l*l)+p(e*e)));if(!(+k<1e-6)){h=p(p(1)/p(w(k)));r=p(f*h);o=p(e*h);h=p(l*h)}a=a+8|0;d=(Nn(r),On(2));g[c+8|0]=d;g[c+9|0]=d>>>8;g[c+10|0]=d>>>16;g[c+11|0]=d>>>24;d=(Nn(o),On(2));g[c+4|0]=d;g[c+5|0]=d>>>8;g[c+6|0]=d>>>16;g[c+7|0]=d>>>24;d=(Nn(h),On(2));g[c|0]=d;g[c+1|0]=d>>>8;g[c+2|0]=d>>>16;g[c+3|0]=d>>>24;c=c+12|0;b=b+1|0;if((m|0)!=(b|0)){continue}break}}return u|0}function zc(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0;i[a+4>>2]=b;i[a>>2]=3088;b=c;e=i[b+8>>2];f=i[b+12>>2];h=i[b+16>>2];j=i[b+20>>2];k=i[b>>2];l=i[b+4>>2];i[a+40>>2]=0;g=a+32|0;i[g>>2]=0;i[g+4>>2]=0;i[a+24>>2]=h;i[a+28>>2]=j;i[a+16>>2]=e;i[a+20>>2]=f;i[a+8>>2]=k;i[a+12>>2]=l;a:{b=i[b+28>>2]-i[b+24>>2]|0;if(b){e=b>>2;if(e>>>0>=1073741824){break a}b=Dm(b);i[a+32>>2]=b;i[a+36>>2]=b;i[a+40>>2]=b+(e<<2);e=a;f=i[c+24>>2];c=i[c+28>>2]-f|0;if((c|0)>=1){b=pn(b,f,c)+c|0}i[e+36>>2]=b}i[a>>2]=3032;b=i[d+4>>2];i[a+44>>2]=i[d>>2];i[a+48>>2]=b;b=d+8|0;e=i[b+4>>2];i[a+52>>2]=i[b>>2];i[a+56>>2]=e;c=a- -64|0;i[c>>2]=0;i[c+4>>2]=0;i[a+60>>2]=4720;i[a>>2]=4092;c=i[d+4>>2];i[a+72>>2]=i[d>>2];i[a+76>>2]=c;c=i[b+4>>2];i[a+80>>2]=i[b>>2];i[a+84>>2]=c;i[a+104>>2]=1065353216;i[a+108>>2]=-1;i[a+96>>2]=-1;i[a+100>>2]=-1;i[a+88>>2]=1;i[a+92>>2]=-1;i[a+60>>2]=4328;ze(a+112|0);return}Sm();x()}function rd(a,b,c,d){var e=0,f=0,g=0,h=0,j=0,k=0,l=0;i[a+4>>2]=b;i[a>>2]=3088;b=c;e=i[b+8>>2];f=i[b+12>>2];h=i[b+16>>2];j=i[b+20>>2];k=i[b>>2];l=i[b+4>>2];i[a+40>>2]=0;g=a+32|0;i[g>>2]=0;i[g+4>>2]=0;i[a+24>>2]=h;i[a+28>>2]=j;i[a+16>>2]=e;i[a+20>>2]=f;i[a+8>>2]=k;i[a+12>>2]=l;a:{b=i[b+28>>2]-i[b+24>>2]|0;if(b){e=b>>2;if(e>>>0>=1073741824){break a}b=Dm(b);i[a+32>>2]=b;i[a+36>>2]=b;i[a+40>>2]=b+(e<<2);e=a;f=i[c+24>>2];c=i[c+28>>2]-f|0;if((c|0)>=1){b=pn(b,f,c)+c|0}i[e+36>>2]=b}i[a>>2]=5116;b=i[d+4>>2];i[a+44>>2]=i[d>>2];i[a+48>>2]=b;b=d+8|0;e=i[b+4>>2];i[a+52>>2]=i[b>>2];i[a+56>>2]=e;c=a- -64|0;i[c>>2]=0;i[c+4>>2]=0;i[a+60>>2]=6656;i[a>>2]=6072;c=i[d+4>>2];i[a+72>>2]=i[d>>2];i[a+76>>2]=c;c=i[b+4>>2];i[a+80>>2]=i[b>>2];i[a+84>>2]=c;i[a+104>>2]=1065353216;i[a+108>>2]=-1;i[a+96>>2]=-1;i[a+100>>2]=-1;i[a+88>>2]=1;i[a+92>>2]=-1;i[a+60>>2]=6292;ze(a+112|0);return}Sm();x()}function qd(a){var b=0,c=0,d=0;b=i[a+8>>2];d=i[a>>2];a:{if(j[a+12|0]){b:{c:{d:{e:{if((b|0)==-1){break e}c=b+1|0;b=(c>>>0)%3|0?c:b+ -2|0;if((b|0)==-1|i[i[d>>2]+(b>>>3&536870908)>>2]>>>b&1){break e}b=i[i[i[d+64>>2]+12>>2]+(b<<2)>>2];if((b|0)!=-1){break d}}i[a+8>>2]=-1;break c}c=b+1|0;b=(c>>>0)%3|0?c:b+ -2|0;i[a+8>>2]=b;if((b|0)!=-1){break b}}b=-1;c=i[a+4>>2];f:{if((c|0)==-1){break f}c=c+((c>>>0)%3|0?-1:2)|0;if((c|0)==-1|i[i[d>>2]+(c>>>3&536870908)>>2]>>>c&1){break f}d=i[i[i[d+64>>2]+12>>2]+(c<<2)>>2];if((d|0)==-1){break f}if((d>>>0)%3|0){b=d+ -1|0;break f}b=d+2|0}g[a+12|0]=0;i[a+8>>2]=b;return}if((b|0)!=i[a+4>>2]){break a}i[a+8>>2]=-1;return}c=-1;g:{if((b|0)==-1){break g}b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)==-1|i[i[d>>2]+(b>>>3&536870908)>>2]>>>b&1){break g}b=i[i[i[d+64>>2]+12>>2]+(b<<2)>>2];if((b|0)==-1){break g}if((b>>>0)%3|0){c=b+ -1|0;break g}c=b+2|0}i[a+8>>2]=c}}function nc(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;f=J-16|0;J=f;m=i[c+8>>2];h=i[c+16>>2];l=i[c+12>>2];d=l;k=i[c+20>>2];e=k;a:{if((d|0)<(e|0)?1:(d|0)<=(e|0)?m>>>0<=h>>>0:0){break a}n=i[c>>2];o=g[n+h|0];d=k;e=h+1|0;if(e>>>0<1){d=d+1|0}i[c+16>>2]=e;i[c+20>>2]=d;b:{if((o|0)==-2){break b}if((l|0)<(d|0)?1:(l|0)<=(d|0)?m>>>0<=e>>>0:0){break a}e=g[e+n|0];h=h+2|0;if(h>>>0<2){k=k+1|0}d=c;i[d+16>>2]=h;i[d+20>>2]=k;if((e+1&255)>>>0>4){break a}M[i[i[a>>2]+40>>2]](f+8|0,a,o,e);k=i[f+8>>2];i[f+8>>2]=0;d=i[a+20>>2];i[a+20>>2]=k;if(!d){break b}M[i[i[d>>2]+4>>2]](d);d=i[f+8>>2];i[f+8>>2]=0;if(!d){break b}M[i[i[d>>2]+4>>2]](d)}d=i[a+20>>2];if(d){if(!(M[i[i[a>>2]+28>>2]](a,d)|0)){break a}}if(!(M[i[i[a>>2]+36>>2]](a,b,c)|0)){break a}c=i[a+4>>2];if(!(!c|j[c+36|0]>1)){if(!(M[i[i[a>>2]+48>>2]](a,i[b+4>>2]-i[b>>2]>>2)|0)){break a}}p=1}J=f+16|0;return p|0}function _g(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;a:{b:{if(b){if(b>>>0>=1073741824){break a}c=Dm(b<<2);d=i[a>>2];i[a>>2]=c;if(d){nn(d)}i[a+4>>2]=b;d=b>>>0>1?b:1;c=0;while(1){i[i[a>>2]+(c<<2)>>2]=0;c=c+1|0;if((d|0)!=(c|0)){continue}break}f=i[a+8>>2];if(!f){break b}d=a+8|0;g=i[f+4>>2];c=Jn(b);c:{if(c>>>0<=1){g=b+ -1&g;break c}if(g>>>0<b>>>0){break c}g=(g>>>0)%(b>>>0)|0}i[i[a>>2]+(g<<2)>>2]=d;d=i[f>>2];if(!d){break b}k=b+ -1|0;l=c>>>0>1;while(1){e=i[d+4>>2];d:{if(!l){e=e&k;break d}if(e>>>0<b>>>0){break d}e=(e>>>0)%(b>>>0)|0}e:{if((e|0)==(g|0)){f=d;break e}c=d;h=e<<2;j=h+i[a>>2]|0;if(!i[j>>2]){i[j>>2]=f;f=d;g=e;break e}while(1){e=c;c=i[c>>2];if(i[d+8>>2]==i[c+8>>2]?c:0){continue}break}i[f>>2]=c;i[e>>2]=i[i[i[a>>2]+h>>2]>>2];i[i[i[a>>2]+h>>2]>>2]=d}d=i[f>>2];if(d){continue}break}break b}b=i[a>>2];i[a>>2]=0;if(b){nn(b)}i[a+4>>2]=0}return}Ba(12220);x()}function qb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0;e=i[b+12>>2];a:{f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]<d>>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]<d>>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){k=1;break a}i[a+8>>2]=0;d=0;while(1){if(!Ae(((d<<4)+a|0)+16|0,b)){break a}d=d+1|0;if((d|0)!=32){continue}break}if(!Ae(a+528|0,b)){break a}if(!xe(a+544|0,b)){break a}if(!xe(a+564|0,b)){break a}if(!xe(a+584|0,b)){break a}return Ab(a,i[a+4>>2],c)}return k}function pb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0;e=i[b+12>>2];a:{f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]<d>>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]<d>>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){k=1;break a}i[a+8>>2]=0;d=0;while(1){if(!Ae(((d<<4)+a|0)+16|0,b)){break a}d=d+1|0;if((d|0)!=32){continue}break}if(!Ae(a+528|0,b)){break a}if(!xe(a+544|0,b)){break a}if(!xe(a+564|0,b)){break a}if(!xe(a+584|0,b)){break a}return zb(a,i[a+4>>2],c)}return k}function mb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0;e=i[b+12>>2];a:{f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]<d>>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]<d>>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){k=1;break a}i[a+8>>2]=0;d=0;while(1){if(!Ae(((d<<4)+a|0)+16|0,b)){break a}d=d+1|0;if((d|0)!=32){continue}break}if(!Ae(a+528|0,b)){break a}if(!xe(a+544|0,b)){break a}if(!xe(a+564|0,b)){break a}if(!xe(a+584|0,b)){break a}return xb(a,i[a+4>>2],c)}return k}function ig(a){i[a>>2]=11568;qn(a+4|0,0,80);i[a+96>>2]=0;i[a+100>>2]=0;i[a+92>>2]=-1;i[a+84>>2]=-1;i[a+88>>2]=-1;i[a+104>>2]=0;i[a+108>>2]=0;i[a+112>>2]=0;i[a+116>>2]=0;i[a+120>>2]=0;i[a+124>>2]=0;i[a+128>>2]=0;i[a+132>>2]=0;i[a+136>>2]=0;i[a+140>>2]=0;i[a+144>>2]=0;i[a+148>>2]=0;i[a+156>>2]=0;i[a+160>>2]=0;i[a+152>>2]=1065353216;i[a+164>>2]=0;i[a+168>>2]=0;i[a+172>>2]=0;i[a+176>>2]=0;i[a+180>>2]=0;i[a+184>>2]=0;i[a+188>>2]=0;i[a+192>>2]=0;i[a+196>>2]=0;i[a+200>>2]=0;i[a+204>>2]=0;i[a+208>>2]=0;i[a+212>>2]=-1;i[a+216>>2]=0;i[a+220>>2]=0;i[a+224>>2]=0;zh(a+232|0);zh(a+272|0);ze(a+312|0);zh(a+328|0);i[a+392>>2]=0;i[a+396>>2]=0;i[a+384>>2]=0;i[a+388>>2]=0;i[a+376>>2]=0;i[a+380>>2]=0;i[a+368>>2]=0;i[a+372>>2]=0;i[a+416>>2]=0;i[a+420>>2]=0;i[a+408>>2]=2;i[a+412>>2]=7;i[a+400>>2]=-1;i[a+404>>2]=-1;i[a+424>>2]=0;i[a+428>>2]=0;i[a+432>>2]=0;i[a+436>>2]=0}function ci(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;e=J-16|0;J=e;k=di(a,b);a:{if(!k){break a}d=i[b+100>>2];f=i[b+96>>2];if((d|0)==(f|0)){break a}while(1){if(!(i[i[a+56>>2]+(j>>>3&536870908)>>2]>>>j&1)){d=o(j,3);Uk(a,0,d);f=i[a+8>>2];h=i[a+12>>2];Uk(a,1,d+1|0);g=i[a+20>>2];l=i[a+24>>2];Uk(a,2,d+2|0);g=l-g>>2;f=h-f|0;h=f>>2;d=g>>>0>h>>>0;h=i[a+36>>2]-i[a+32>>2]>>2>>>0>(d?g:h)>>>0?2:d?1:f?0:-1;b:{if(i[a+68>>2]<1){break b}i[e+12>>2]=i[a+76>>2];i[e+8>>2]=c;ei(e+8|0,e+12|0);f=e;g=i[((h<<2)+a|0)+44>>2];d=-1;c:{if((g|0)<0){break c}d=(g>>>0)/3|0;d=i[(i[i[a>>2]+96>>2]+o(d,12)|0)+(g-o(d,3)<<2)>>2]}i[f+12>>2]=d;i[e+8>>2]=c;ei(e+8|0,e+12|0);f=i[a+72>>2]+2|0;i[a+72>>2]=f;if(!(f&1)){break b}i[e+12>>2]=d;i[e+8>>2]=c;ei(e+8|0,e+12|0);i[a+72>>2]=i[a+72>>2]+1}fi(a,h,c);f=i[b+96>>2];d=i[b+100>>2]}j=j+1|0;if(j>>>0<(d-f|0)/12>>>0){continue}break}}J=e+16|0;return k}function Wd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,n=0,o=0,q=0;g=i[b+12>>2];c=g;d=i[b+20>>2];e=d;a:{h=i[b+16>>2];f=h+4|0;if(f>>>0<4){d=d+1|0}l=i[b+8>>2];if((c|0)<(d|0)?1:(c|0)<=(d|0)?l>>>0<f>>>0:0){break a}n=i[b>>2];c=h+n|0;o=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=f;i[b+20>>2]=d;q=k[b+38>>1];if(q>>>0<=513){c=g;d=e;e=h+8|0;if(e>>>0<8){d=d+1|0}f=e;if((c|0)<(d|0)?1:(c|0)<=(d|0)?l>>>0<f>>>0:0){break a}i[b+16>>2]=f;i[b+20>>2]=d}if(!(o&1)){break a}c=r(o)^31;if(c+ -1>>>0>28){break a}i[a+8>>2]=c+1;e=-2<<c;c=-2-e|0;i[a+16>>2]=c;i[a+12>>2]=e^-1;i[a+24>>2]=(c|0)/2;m[a+20>>2]=p(2)/p(c|0);if(q>>>0<=513){if((g|0)<(d|0)?1:(g|0)<=(d|0)?l>>>0<=f>>>0:0){break a}c=j[f+n|0];e=f+1|0;if(e>>>0<1){d=d+1|0}i[b+16>>2]=e;i[b+20>>2]=d;d=0;b:{switch(c|0){case 1:d=1;break;case 0:break b;default:break a}}i[a+72>>2]=d}return Ae(a+96|0,b)|0}return 0}function ra(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,n=0,r=0,s=0,t=0,v=0,w=0,x=p(0),y=0,z=0,A=p(0),B=0,C=0,D=0,E=0;r=J-16|0;J=r;e=i[a+4>>2];h=i[d+48>>2];l=i[i[d>>2]>>2];k=g[b+24|0];f=Kh(r+8|0);Lh(f,m[a+20>>2],-1<<e^-1);d=Dm((k&1073741823)!=(k|0)?-1:k<<2);n=i[c>>2];e=i[c+4>>2];if((n|0)!=(e|0)){y=h+l|0;c=e-n|0;h=(c|0)>-1?c:-1;e=n-e|0;c=o((h|0)<1?h:1,((e|0)>(c|0)?e:c)>>>2|0);z=c>>>0>1?c:1;A=m[f>>2];B=i[b>>2];e=i[b+48>>2];C=i[b+68>>2];h=i[b+44>>2];l=i[b+40>>2];D=l;c=0;E=j[b+84|0];while(1){b=i[(s<<2)+n>>2];f=d;t=i[B>>2];v=l;w=h;if(!E){b=i[(b<<2)+C>>2]}b=Gn(v,w,b,0)+e|0;v=pn(f,b+t|0,D);if((k|0)>=1){w=i[a+8>>2];b=0;while(1){t=y+(c<<2)|0;f=b<<2;x=p(u(p(p(A*p(m[f+v>>2]-m[f+w>>2]))+p(.5))));a:{if(p(q(x))<p(2147483648)){f=~~x;break a}f=-2147483648}i[t>>2]=f;c=c+1|0;b=b+1|0;if((k|0)!=(b|0)){continue}break}}s=s+1|0;if((z|0)!=(s|0)){continue}break}}nn(d);J=r+16|0}function fa(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0;l=d-c|0;if((l|0)<1){return}a:{e=i[a+8>>2];m=i[a+4>>2];if((l|0)<=(e-m|0)){k=m-b|0;if((l|0)<=(k|0)){e=m;h=d;break a}e=m;h=c+k|0;if((h|0)!=(d|0)){f=h;while(1){g[e|0]=j[f|0];e=e+1|0;f=f+1|0;if((f|0)!=(d|0)){continue}break}}i[a+4>>2]=e;if((k|0)>=1){break a}return}h=i[a>>2];d=(m-h|0)+l|0;if((d|0)>-1){k=b-h|0;n=k;f=e-h|0;e=f<<1;e=f>>>0<1073741823?e>>>0<d>>>0?d:e:2147483647;d=0;b:{if(!e){break b}d=Dm(e)}c=pn(n+d|0,c,l);if((k|0)>=1){pn(d,h,k)}e=d+e|0;c=c+l|0;f=m-b|0;if((f|0)>=1){c=pn(c,b,f)+f|0}i[a+8>>2]=e;i[a+4>>2]=c;i[a>>2]=d;if(h){nn(h)}return}Sm();x()}k=e-(b+l|0)|0;f=e;d=e-l|0;if(d>>>0<m>>>0){while(1){g[f|0]=j[d|0];f=f+1|0;d=d+1|0;if(d>>>0<m>>>0){continue}break}}i[a+4>>2]=f;if(k){rn(e-k|0,b,k)}if((c|0)==(h|0)){return}f=b;while(1){g[f|0]=j[c|0];f=f+1|0;c=c+1|0;if((h|0)!=(c|0)){continue}break}}function $e(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=J+ -64|0;J=d;i[d+56>>2]=0;i[d+48>>2]=0;i[d+52>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;a:{if(!of(d+8|0,b)){break a}if(a){if(!i[d+20>>2]){break a}if(!pf(d+8|0,b)){break a}b=i[d+56>>2];k=i[d+36>>2];l=i[d+48>>2];m=i[d+24>>2];while(1){b:{if(b>>>0>4194303){break b}e=i[d+52>>2];while(1){if((e|0)<1){break b}e=e+ -1|0;i[d+52>>2]=e;b=j[e+l|0]|b<<8;i[d+56>>2]=b;if(b>>>0<4194304){continue}break}}e=b&1048575;g=i[(e<<2)+m>>2];h=(g<<3)+k|0;b=(o(i[h>>2],b>>>20|0)+e|0)-i[h+4>>2]|0;i[d+56>>2]=b;i[(f<<2)+c>>2]=g;e=1;f=f+1|0;if((f|0)!=(a|0)){continue}break}break a}e=pf(d+8|0,b)}a=i[d+36>>2];if(a){i[d+40>>2]=a;nn(a)}a=i[d+24>>2];if(a){i[d+28>>2]=a;nn(a)}a=i[d+8>>2];if(a){i[d+12>>2]=a;nn(a)}J=d- -64|0;return e}function _e(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=J+ -64|0;J=d;i[d+56>>2]=0;i[d+48>>2]=0;i[d+52>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;a:{if(!mf(d+8|0,b)){break a}if(a){if(!i[d+20>>2]){break a}if(!nf(d+8|0,b)){break a}b=i[d+56>>2];k=i[d+36>>2];l=i[d+48>>2];m=i[d+24>>2];while(1){b:{if(b>>>0>2097151){break b}e=i[d+52>>2];while(1){if((e|0)<1){break b}e=e+ -1|0;i[d+52>>2]=e;b=j[e+l|0]|b<<8;i[d+56>>2]=b;if(b>>>0<2097152){continue}break}}e=b&524287;g=i[(e<<2)+m>>2];h=(g<<3)+k|0;b=(o(i[h>>2],b>>>19|0)+e|0)-i[h+4>>2]|0;i[d+56>>2]=b;i[(f<<2)+c>>2]=g;e=1;f=f+1|0;if((f|0)!=(a|0)){continue}break}break a}e=nf(d+8|0,b)}a=i[d+36>>2];if(a){i[d+40>>2]=a;nn(a)}a=i[d+24>>2];if(a){i[d+28>>2]=a;nn(a)}a=i[d+8>>2];if(a){i[d+12>>2]=a;nn(a)}J=d- -64|0;return e}function Ze(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=J+ -64|0;J=d;i[d+56>>2]=0;i[d+48>>2]=0;i[d+52>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;a:{if(!kf(d+8|0,b)){break a}if(a){if(!i[d+20>>2]){break a}if(!lf(d+8|0,b)){break a}b=i[d+56>>2];k=i[d+36>>2];l=i[d+48>>2];m=i[d+24>>2];while(1){b:{if(b>>>0>1048575){break b}e=i[d+52>>2];while(1){if((e|0)<1){break b}e=e+ -1|0;i[d+52>>2]=e;b=j[e+l|0]|b<<8;i[d+56>>2]=b;if(b>>>0<1048576){continue}break}}e=b&262143;g=i[(e<<2)+m>>2];h=(g<<3)+k|0;b=(o(i[h>>2],b>>>18|0)+e|0)-i[h+4>>2]|0;i[d+56>>2]=b;i[(f<<2)+c>>2]=g;e=1;f=f+1|0;if((f|0)!=(a|0)){continue}break}break a}e=lf(d+8|0,b)}a=i[d+36>>2];if(a){i[d+40>>2]=a;nn(a)}a=i[d+24>>2];if(a){i[d+28>>2]=a;nn(a)}a=i[d+8>>2];if(a){i[d+12>>2]=a;nn(a)}J=d- -64|0;return e}function Je(a,b){var c=0,d=0,e=0;e=J-16|0;J=e;i[e+12>>2]=b;b=Dm(32);i[e>>2]=b;i[e+4>>2]=24;i[e+8>>2]=-2147483616;g[b+24|0]=0;c=j[11181]|j[11182]<<8|(j[11183]<<16|j[11184]<<24);d=j[11177]|j[11178]<<8|(j[11179]<<16|j[11180]<<24);g[b+16|0]=d;g[b+17|0]=d>>>8;g[b+18|0]=d>>>16;g[b+19|0]=d>>>24;g[b+20|0]=c;g[b+21|0]=c>>>8;g[b+22|0]=c>>>16;g[b+23|0]=c>>>24;c=j[11173]|j[11174]<<8|(j[11175]<<16|j[11176]<<24);d=j[11169]|j[11170]<<8|(j[11171]<<16|j[11172]<<24);g[b+8|0]=d;g[b+9|0]=d>>>8;g[b+10|0]=d>>>16;g[b+11|0]=d>>>24;g[b+12|0]=c;g[b+13|0]=c>>>8;g[b+14|0]=c>>>16;g[b+15|0]=c>>>24;c=j[11165]|j[11166]<<8|(j[11167]<<16|j[11168]<<24);d=j[11161]|j[11162]<<8|(j[11163]<<16|j[11164]<<24);g[b|0]=d;g[b+1|0]=d>>>8;g[b+2|0]=d>>>16;g[b+3|0]=d>>>24;g[b+4|0]=c;g[b+5|0]=c>>>8;g[b+6|0]=c>>>16;g[b+7|0]=c>>>24;Hh(Ke(a,e+12|0),e);if(g[e+11|0]<=-1){nn(i[e>>2])}J=e+16|0}function ee(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,n=0,o=0,q=0;g=i[b+12>>2];h=g;c=i[b+20>>2];f=c;a:{l=i[b+16>>2];d=l+4|0;if(d>>>0<4){c=c+1|0}n=i[b+8>>2];e=d;d=c;if((h|0)<(c|0)?1:(h|0)<=(c|0)?n>>>0<e>>>0:0){break a}h=i[b>>2];c=h+l|0;q=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=e;i[b+20>>2]=d;d=g;c=f;e=l+8|0;if(e>>>0<8){c=c+1|0}o=e;if((d|0)<(c|0)?1:(d|0)<=(c|0)?n>>>0<e>>>0:0){break a}i[b+16>>2]=o;i[b+20>>2]=c;if(!(q&1)){break a}d=r(q)^31;if(d+ -1>>>0>28){break a}i[a+8>>2]=d+1;d=-2<<d;e=-2-d|0;i[a+16>>2]=e;i[a+12>>2]=d^-1;i[a+24>>2]=(e|0)/2;m[a+20>>2]=p(2)/p(e|0);if(k[b+38>>1]<=513){if((g|0)<(c|0)?1:(g|0)<=(c|0)?n>>>0<=o>>>0:0){break a}g=j[h+o|0];d=l+9|0;if(d>>>0<9){f=f+1|0}c=b;i[c+16>>2]=d;i[c+20>>2]=f;f=0;b:{switch(g|0){case 1:f=1;break;case 0:break b;default:break a}}i[a+72>>2]=f}return Ae(a+96|0,b)|0}return 0}function Ye(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=J+ -64|0;J=d;i[d+56>>2]=0;i[d+48>>2]=0;i[d+52>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;a:{if(!hf(d+8|0,b)){break a}if(a){if(!i[d+20>>2]){break a}if(!jf(d+8|0,b)){break a}b=i[d+56>>2];k=i[d+36>>2];l=i[d+48>>2];m=i[d+24>>2];while(1){b:{if(b>>>0>262143){break b}e=i[d+52>>2];while(1){if((e|0)<1){break b}e=e+ -1|0;i[d+52>>2]=e;b=j[e+l|0]|b<<8;i[d+56>>2]=b;if(b>>>0<262144){continue}break}}e=b&65535;g=i[(e<<2)+m>>2];h=(g<<3)+k|0;b=(o(i[h>>2],b>>>16|0)+e|0)-i[h+4>>2]|0;i[d+56>>2]=b;i[(f<<2)+c>>2]=g;e=1;f=f+1|0;if((f|0)!=(a|0)){continue}break}break a}e=jf(d+8|0,b)}a=i[d+36>>2];if(a){i[d+40>>2]=a;nn(a)}a=i[d+24>>2];if(a){i[d+28>>2]=a;nn(a)}a=i[d+8>>2];if(a){i[d+12>>2]=a;nn(a)}J=d- -64|0;return e}function Xe(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=J+ -64|0;J=d;i[d+56>>2]=0;i[d+48>>2]=0;i[d+52>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;a:{if(!ff(d+8|0,b)){break a}if(a){if(!i[d+20>>2]){break a}if(!gf(d+8|0,b)){break a}b=i[d+56>>2];k=i[d+36>>2];l=i[d+48>>2];m=i[d+24>>2];while(1){b:{if(b>>>0>131071){break b}e=i[d+52>>2];while(1){if((e|0)<1){break b}e=e+ -1|0;i[d+52>>2]=e;b=j[e+l|0]|b<<8;i[d+56>>2]=b;if(b>>>0<131072){continue}break}}e=b&32767;g=i[(e<<2)+m>>2];h=(g<<3)+k|0;b=(o(i[h>>2],b>>>15|0)+e|0)-i[h+4>>2]|0;i[d+56>>2]=b;i[(f<<2)+c>>2]=g;e=1;f=f+1|0;if((f|0)!=(a|0)){continue}break}break a}e=gf(d+8|0,b)}a=i[d+36>>2];if(a){i[d+40>>2]=a;nn(a)}a=i[d+24>>2];if(a){i[d+28>>2]=a;nn(a)}a=i[d+8>>2];if(a){i[d+12>>2]=a;nn(a)}J=d- -64|0;return e}function We(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=J+ -64|0;J=d;i[d+56>>2]=0;i[d+48>>2]=0;i[d+52>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;a:{if(!df(d+8|0,b)){break a}if(a){if(!i[d+20>>2]){break a}if(!ef(d+8|0,b)){break a}b=i[d+56>>2];k=i[d+36>>2];l=i[d+48>>2];m=i[d+24>>2];while(1){b:{if(b>>>0>32767){break b}e=i[d+52>>2];while(1){if((e|0)<1){break b}e=e+ -1|0;i[d+52>>2]=e;b=j[e+l|0]|b<<8;i[d+56>>2]=b;if(b>>>0<32768){continue}break}}e=b&8191;g=i[(e<<2)+m>>2];h=(g<<3)+k|0;b=(o(i[h>>2],b>>>13|0)+e|0)-i[h+4>>2]|0;i[d+56>>2]=b;i[(f<<2)+c>>2]=g;e=1;f=f+1|0;if((f|0)!=(a|0)){continue}break}break a}e=ef(d+8|0,b)}a=i[d+36>>2];if(a){i[d+40>>2]=a;nn(a)}a=i[d+24>>2];if(a){i[d+28>>2]=a;nn(a)}a=i[d+8>>2];if(a){i[d+12>>2]=a;nn(a)}J=d- -64|0;return e}function Ve(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;d=J+ -64|0;J=d;i[d+56>>2]=0;i[d+48>>2]=0;i[d+52>>2]=0;i[d+40>>2]=0;i[d+44>>2]=0;i[d+32>>2]=0;i[d+36>>2]=0;i[d+24>>2]=0;i[d+28>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d+8>>2]=0;i[d+12>>2]=0;a:{if(!Te(d+8|0,b)){break a}if(a){if(!i[d+20>>2]){break a}if(!Ue(d+8|0,b)){break a}b=i[d+56>>2];k=i[d+36>>2];l=i[d+48>>2];m=i[d+24>>2];while(1){b:{if(b>>>0>16383){break b}e=i[d+52>>2];while(1){if((e|0)<1){break b}e=e+ -1|0;i[d+52>>2]=e;b=j[e+l|0]|b<<8;i[d+56>>2]=b;if(b>>>0<16384){continue}break}}e=b&4095;g=i[(e<<2)+m>>2];h=(g<<3)+k|0;b=(o(i[h>>2],b>>>12|0)+e|0)-i[h+4>>2]|0;i[d+56>>2]=b;i[(f<<2)+c>>2]=g;e=1;f=f+1|0;if((f|0)!=(a|0)){continue}break}break a}e=Ue(d+8|0,b)}a=i[d+36>>2];if(a){i[d+40>>2]=a;nn(a)}a=i[d+24>>2];if(a){i[d+28>>2]=a;nn(a)}a=i[d+8>>2];if(a){i[d+12>>2]=a;nn(a)}J=d- -64|0;return e}function La(a,b){var c=0,d=0,e=0,f=0,h=0;if(!i[a+64>>2]){e=Dm(32);c=wh(e);d=i[a+64>>2];i[a+64>>2]=e;e=a;if(d){c=i[d>>2];if(c){i[d+4>>2]=c;nn(c)}nn(d);c=i[a+64>>2]}Ha(e,c,0,0)}a:{b:{if(!Ga(a,b)){break b}g[a+84|0]=j[b+84|0];i[a+80>>2]=i[b+80>>2];if((a|0)!=(b|0)){Ma(a+68|0,i[b+68>>2],i[b+72>>2])}d=i[b+88>>2];if(d){b=Dm(40);c=i[d>>2];i[b+16>>2]=0;i[b+8>>2]=0;i[b+12>>2]=0;i[b>>2]=c;e=i[d+12>>2]-i[d+8>>2]|0;if(e){if((e|0)<=-1){break a}c=Dm(e);i[b+8>>2]=c;i[b+12>>2]=c;i[b+16>>2]=c+e;e=b;h=i[d+8>>2];f=i[d+12>>2]-h|0;if((f|0)>=1){c=pn(c,h,f)+f|0}i[e+12>>2]=c}c=i[d+36>>2];i[b+32>>2]=i[d+32>>2];i[b+36>>2]=c;c=i[d+28>>2];i[b+24>>2]=i[d+24>>2];i[b+28>>2]=c;c=i[a+88>>2];i[a+88>>2]=b;if(!c){break b}a=i[c+8>>2];if(a){i[c+12>>2]=a;nn(a)}nn(c);return}b=i[a+88>>2];i[a+88>>2]=0;if(!b){break b}a=i[b+8>>2];if(a){i[b+12>>2]=a;nn(a)}nn(b)}return}Sm();x()}function El(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=i[b+12>>2];f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]<d>>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]<d>>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){break a}i[a+8>>2]=0;d=0;while(1){if(!Ae(((d<<4)+a|0)+16|0,b)){break a}d=d+1|0;if((d|0)!=32){continue}break}if(!Ae(a+528|0,b)){break a}if(!xe(a+544|0,b)){break a}if(!xe(a+564|0,b)){break a}if(!xe(a+584|0,b)){break a}Ll(a,i[a+4>>2],c)}}function Dl(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=i[b+12>>2];f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]<d>>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]<d>>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){break a}i[a+8>>2]=0;d=0;while(1){if(!Ae(((d<<4)+a|0)+16|0,b)){break a}d=d+1|0;if((d|0)!=32){continue}break}if(!Ae(a+528|0,b)){break a}if(!xe(a+544|0,b)){break a}if(!xe(a+564|0,b)){break a}if(!xe(a+584|0,b)){break a}Kl(a,i[a+4>>2],c)}}function Cl(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=i[b+12>>2];f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]<d>>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]<d>>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){break a}i[a+8>>2]=0;d=0;while(1){if(!Ae(((d<<4)+a|0)+16|0,b)){break a}d=d+1|0;if((d|0)!=32){continue}break}if(!Ae(a+528|0,b)){break a}if(!xe(a+544|0,b)){break a}if(!xe(a+564|0,b)){break a}if(!xe(a+584|0,b)){break a}Jl(a,i[a+4>>2],c)}}function Sk(a,b){var c=0,d=0,e=0,f=0,h=0,j=0;e=i[a>>2];c=e+(b>>>3&536870908)|0;i[c>>2]=i[c>>2]|1<<b;h=i[a+64>>2];f=(b|0)==-1;c=-1;a:{if(f){break a}d=b+1|0;d=(d>>>0)%3|0?d:b+ -2|0;c=-1;if((d|0)==-1){break a}c=i[i[h>>2]+(d<<2)>>2]}d=i[a+12>>2];j=(c>>>3&536870908)+d|0;i[j>>2]=i[j>>2]|1<<c;b:{c:{if(!f){c=-1;f=((b>>>0)%3|0?-1:2)+b|0;if((f|0)!=-1){c=i[i[h>>2]+(f<<2)>>2]}f=d+(c>>>3&536870908)|0;i[f>>2]=i[f>>2]|1<<c;b=i[i[h+12>>2]+(b<<2)>>2];if((b|0)==-1){break b}g[a+24|0]=0;a=(b>>>3&536870908)+e|0;i[a>>2]=i[a>>2]|1<<b;a=-1;c=-1;e=b+1|0;e=(e>>>0)%3|0?e:b+ -2|0;if((e|0)!=-1){c=i[i[h>>2]+(e<<2)>>2]}e=d+(c>>>3&536870908)|0;i[e>>2]=i[e>>2]|1<<c;b=b+((b>>>0)%3|0?-1:2)|0;if((b|0)!=-1){a=i[i[h>>2]+(b<<2)>>2]}b=1<<a;a=d+(a>>>3&536870908)|0;c=i[a>>2];break c}a=d+536870908|0;b=i[d+536870908>>2];c=-2147483648}i[a>>2]=b|c}}function ob(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=J-16|0;J=c;i[a+12>>2]=b;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;yb(a+16|0);ze(a+528|0);ve(a+544|0);ve(a+564|0);ve(a+584|0);i[a+612>>2]=0;i[a+604>>2]=0;i[a+608>>2]=0;a:{if(b){if(b>>>0>=1073741824){break a}f=b<<2;d=Dm(f);i[a+604>>2]=d;e=d+f|0;i[a+612>>2]=e;qn(d,0,f);i[a+608>>2]=e}i[a+616>>2]=0;i[a+620>>2]=0;i[a+624>>2]=0;if(b){f=b<<2;d=Dm(f);i[a+616>>2]=d;e=d+f|0;i[a+624>>2]=e;qn(d,0,f);i[a+620>>2]=e}i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;g=a+628|0;f=b<<5|1;if(b){d=b<<2;e=Dm(d);i[c>>2]=e;h=d+e|0;i[c+8>>2]=h;qn(e,0,d);i[c+4>>2]=h}tb(g,f,c);d=i[c>>2];if(d){i[c+4>>2]=d;nn(d)}i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;e=a+640|0;if(b){b=b<<2;d=Dm(b);i[c>>2]=d;g=b+d|0;i[c+8>>2]=g;qn(d,0,b);i[c+4>>2]=g}tb(e,f,c);b=i[c>>2];if(b){i[c+4>>2]=b;nn(b)}J=c+16|0;return a}Sm();x()}function xi(a,b,c,d,e){var f=0,h=0,k=0,l=0,m=0,n=0,p=0,q=0;h=J-16|0;J=h;a:{b:{switch(c+ -1|0){case 0:f=yi(a,b,d,e);break a;case 2:f=zi(a,b,d,e);break a;case 4:f=Ai(a,b,d,e);break a;case 1:f=Bi(a,b,d,e);break a;case 3:f=Ci(a,b,d,e);break a;case 5:f=Di(a,b,d,e);break a;case 8:break b;default:break a}}l=g[b+24|0];m=l<<2;a=i[a+80>>2];if((o(m,a)|0)!=(d|0)){break a}c=i[b+28>>2];d=i[3527];i[h+8>>2]=i[3526];i[h+12>>2]=d;d=i[3525];i[h>>2]=i[3524];i[h+4>>2]=d;c:{if(!a){break c}d=0;p=(c|0)!=9;k=1;while(1){c=j[b+84|0]?f:i[i[b+68>>2]+(f<<2)>>2];d:{if(!p){k=i[b+48>>2];q=i[i[b>>2]>>2];n=i[b+40>>2];c=Gn(n,i[b+44>>2],c,0)+k|0;pn(h,q+c|0,n);break d}if(!$c(b,c,g[b+24|0],h)){break c}}if((l|0)>=1){pn((d<<2)+e|0,h,m);d=d+l|0}f=f+1|0;k=f>>>0<a>>>0;if((a|0)!=(f|0)){continue}break}}f=k^1}J=h+16|0;return f&1}function Db(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;d=J-32|0;J=d;i[d+24>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;k=i[b+12>>2];f=k;h=i[b+20>>2];l=h;m=i[b+16>>2];e=m+4|0;if(e>>>0<4){h=h+1|0}o=i[b+8>>2];n=e;a:{if((f|0)<(h|0)?1:(f|0)<=(h|0)?o>>>0<e>>>0:0){break a}f=i[b>>2];e=m+f|0;e=j[e|0]|j[e+1|0]<<8|(j[e+2|0]<<16|j[e+3|0]<<24);i[b+16>>2]=n;i[b+20>>2]=h;b:{c:{switch(e+ -2|0){case 1:if((k|0)<(h|0)?1:(k|0)<=(h|0)?o>>>0<=n>>>0:0){break a}f=g[f+n|0];e=m+5|0;if(e>>>0<5){l=l+1|0}i[b+16>>2]=e;i[b+20>>2]=l;i[a+8>>2]=f;if((f|0)==1){if(xl(a,b,d+16|0)){break b}break a}un(1824,23,i[3876]);break a;default:un(1848,24,i[3876]);break a;case 0:break c}}if(!xl(a,b,d+16|0)){break a}}i[d+8>>2]=i[d+16>>2];i[d>>2]=i[d+20>>2];Fb(d+8|0,d,a,c);p=1}a=i[d+16>>2];if(a){i[d+20>>2]=a;nn(a)}J=d+32|0;return p}function gb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=J-16|0;J=c;i[a+12>>2]=b;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;ve(a+16|0);ve(a+36|0);ve(a+56|0);ve(a+76|0);i[a+104>>2]=0;i[a+96>>2]=0;i[a+100>>2]=0;a:{if(b){if(b>>>0>=1073741824){break a}f=b<<2;d=Dm(f);i[a+96>>2]=d;e=d+f|0;i[a+104>>2]=e;qn(d,0,f);i[a+100>>2]=e}i[a+108>>2]=0;i[a+112>>2]=0;i[a+116>>2]=0;if(b){f=b<<2;d=Dm(f);i[a+108>>2]=d;e=d+f|0;i[a+116>>2]=e;qn(d,0,f);i[a+112>>2]=e}i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;g=a+120|0;f=b<<5|1;if(b){d=b<<2;e=Dm(d);i[c>>2]=e;h=d+e|0;i[c+8>>2]=h;qn(e,0,d);i[c+4>>2]=h}tb(g,f,c);d=i[c>>2];if(d){i[c+4>>2]=d;nn(d)}i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;e=a+132|0;if(b){b=b<<2;d=Dm(b);i[c>>2]=d;g=b+d|0;i[c+8>>2]=g;qn(d,0,b);i[c+4>>2]=g}tb(e,f,c);b=i[c>>2];if(b){i[c+4>>2]=b;nn(b)}J=c+16|0;return a}Sm();x()}function kb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=J-16|0;J=c;i[a+12>>2]=b;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;ze(a+16|0);ve(a+32|0);ve(a+52|0);ve(a+72|0);i[a+100>>2]=0;i[a+92>>2]=0;i[a+96>>2]=0;a:{if(b){if(b>>>0>=1073741824){break a}f=b<<2;d=Dm(f);i[a+92>>2]=d;e=d+f|0;i[a+100>>2]=e;qn(d,0,f);i[a+96>>2]=e}i[a+104>>2]=0;i[a+108>>2]=0;i[a+112>>2]=0;if(b){f=b<<2;d=Dm(f);i[a+104>>2]=d;e=d+f|0;i[a+112>>2]=e;qn(d,0,f);i[a+108>>2]=e}i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;g=a+116|0;f=b<<5|1;if(b){d=b<<2;e=Dm(d);i[c>>2]=e;h=d+e|0;i[c+8>>2]=h;qn(e,0,d);i[c+4>>2]=h}tb(g,f,c);d=i[c>>2];if(d){i[c+4>>2]=d;nn(d)}i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;e=a+128|0;if(b){b=b<<2;d=Dm(b);i[c>>2]=d;g=b+d|0;i[c+8>>2]=g;qn(d,0,b);i[c+4>>2]=g}tb(e,f,c);b=i[c>>2];if(b){i[c+4>>2]=b;nn(b)}J=c+16|0;return a}Sm();x()}function zi(a,b,c,d){var e=0,f=0,l=0,m=0,n=0,p=0,q=0,r=0;l=J-16|0;J=l;a:{p=i[a+80>>2];m=g[b+24|0];f=m<<1;e=0;b:{if((o(p,f)|0)!=(c|0)){break b}q=i[b+28>>2]!=3;if(!(q|!j[b+84|0])){pn(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);e=1;break b}i[l+8>>2]=0;i[l>>2]=0;i[l+4>>2]=0;a=0;if(m){if((m|0)<=-1){break a}a=Dm(f);i[l>>2]=a;c=(m<<1)+a|0;i[l+8>>2]=c;qn(a,0,f);i[l+4>>2]=c}c:{if(!p){break c}c=0;n=1;f=0;while(1){e=j[b+84|0]?f:i[i[b+68>>2]+(f<<2)>>2];d:{if(!q){r=i[i[b>>2]>>2];n=i[b+40>>2];e=i[b+48>>2]+Gn(n,i[b+44>>2],e,0)|0;pn(a,r+e|0,n);break d}if(!qi(b,e,g[b+24|0],a)){break c}}e=0;if((m|0)>=1){while(1){h[(c<<1)+d>>1]=k[(e<<1)+a>>1];c=c+1|0;e=e+1|0;if((m|0)!=(e|0)){continue}break}}f=f+1|0;n=f>>>0<p>>>0;if((f|0)!=(p|0)){continue}break}}if(a){nn(a)}e=n^1}J=l+16|0;return e&1}Sm();x()}function Di(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0;h=J-16|0;J=h;a:{m=i[a+80>>2];k=g[b+24|0];f=k<<2;e=0;b:{if((o(m,f)|0)!=(c|0)){break b}n=i[b+28>>2]!=6;if(!(n|!j[b+84|0])){pn(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);e=1;break b}i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;a=0;if(k){if((k|0)<=-1){break a}a=Dm(f);i[h>>2]=a;c=(k<<2)+a|0;i[h+8>>2]=c;qn(a,0,f);i[h+4>>2]=c}c:{if(!m){break c}c=0;l=1;f=0;while(1){e=j[b+84|0]?f:i[i[b+68>>2]+(f<<2)>>2];d:{if(!n){p=i[i[b>>2]>>2];l=i[b+40>>2];e=i[b+48>>2]+Gn(l,i[b+44>>2],e,0)|0;pn(a,p+e|0,l);break d}if(!wi(b,e,g[b+24|0],a)){break c}}e=0;if((k|0)>=1){while(1){i[(c<<2)+d>>2]=i[(e<<2)+a>>2];c=c+1|0;e=e+1|0;if((k|0)!=(e|0)){continue}break}}f=f+1|0;l=f>>>0<m>>>0;if((f|0)!=(m|0)){continue}break}}if(a){nn(a)}e=l^1}J=h+16|0;return e&1}Sm();x()}function Ci(a,b,c,d){var e=0,f=0,l=0,m=0,n=0,p=0,q=0,r=0;l=J-16|0;J=l;a:{p=i[a+80>>2];m=g[b+24|0];f=m<<1;e=0;b:{if((o(p,f)|0)!=(c|0)){break b}q=i[b+28>>2]!=4;if(!(q|!j[b+84|0])){pn(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);e=1;break b}i[l+8>>2]=0;i[l>>2]=0;i[l+4>>2]=0;a=0;if(m){if((m|0)<=-1){break a}a=Dm(f);i[l>>2]=a;c=(m<<1)+a|0;i[l+8>>2]=c;qn(a,0,f);i[l+4>>2]=c}c:{if(!p){break c}c=0;n=1;f=0;while(1){e=j[b+84|0]?f:i[i[b+68>>2]+(f<<2)>>2];d:{if(!q){r=i[i[b>>2]>>2];n=i[b+40>>2];e=i[b+48>>2]+Gn(n,i[b+44>>2],e,0)|0;pn(a,r+e|0,n);break d}if(!si(b,e,g[b+24|0],a)){break c}}e=0;if((m|0)>=1){while(1){h[(c<<1)+d>>1]=k[(e<<1)+a>>1];c=c+1|0;e=e+1|0;if((m|0)!=(e|0)){continue}break}}f=f+1|0;n=f>>>0<p>>>0;if((f|0)!=(p|0)){continue}break}}if(a){nn(a)}e=n^1}J=l+16|0;return e&1}Sm();x()}function Ai(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0;h=J-16|0;J=h;a:{m=i[a+80>>2];k=g[b+24|0];f=k<<2;e=0;b:{if((o(m,f)|0)!=(c|0)){break b}n=i[b+28>>2]!=5;if(!(n|!j[b+84|0])){pn(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);e=1;break b}i[h+8>>2]=0;i[h>>2]=0;i[h+4>>2]=0;a=0;if(k){if((k|0)<=-1){break a}a=Dm(f);i[h>>2]=a;c=(k<<2)+a|0;i[h+8>>2]=c;qn(a,0,f);i[h+4>>2]=c}c:{if(!m){break c}c=0;l=1;f=0;while(1){e=j[b+84|0]?f:i[i[b+68>>2]+(f<<2)>>2];d:{if(!n){p=i[i[b>>2]>>2];l=i[b+40>>2];e=i[b+48>>2]+Gn(l,i[b+44>>2],e,0)|0;pn(a,p+e|0,l);break d}if(!ui(b,e,g[b+24|0],a)){break c}}e=0;if((k|0)>=1){while(1){i[(c<<2)+d>>2]=i[(e<<2)+a>>2];c=c+1|0;e=e+1|0;if((k|0)!=(e|0)){continue}break}}f=f+1|0;l=f>>>0<m>>>0;if((f|0)!=(m|0)){continue}break}}if(a){nn(a)}e=l^1}J=h+16|0;return e&1}Sm();x()}function lb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0;e=i[b+12>>2];a:{f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]<d>>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]<d>>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){k=1;break a}i[a+8>>2]=0;if(!Ae(a+16|0,b)){break a}if(!xe(a+32|0,b)){break a}if(!xe(a+52|0,b)){break a}if(!xe(a+72|0,b)){break a}return wb(a,i[a+4>>2],c)}return k}function ib(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0;e=i[b+12>>2];a:{f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]<d>>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]<d>>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){k=1;break a}i[a+8>>2]=0;if(!Ae(a+16|0,b)){break a}if(!xe(a+32|0,b)){break a}if(!xe(a+52|0,b)){break a}if(!xe(a+72|0,b)){break a}return vb(a,i[a+4>>2],c)}return k}function hb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0;e=i[b+12>>2];a:{f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]<d>>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]<d>>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){k=1;break a}i[a+8>>2]=0;if(!xe(a+16|0,b)){break a}if(!xe(a+36|0,b)){break a}if(!xe(a+56|0,b)){break a}if(!xe(a+76|0,b)){break a}return ub(a,i[a+4>>2],c)}return k}function eb(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0;e=i[b+12>>2];a:{f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]<d>>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]<d>>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){k=1;break a}i[a+8>>2]=0;if(!xe(a+16|0,b)){break a}if(!xe(a+36|0,b)){break a}if(!xe(a+56|0,b)){break a}if(!xe(a+76|0,b)){break a}return sb(a,i[a+4>>2],c)}return k}function xe(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0;i[a+16>>2]=0;c=i[a>>2];i[a+4>>2]=c;i[a+12>>2]=c;h=i[b+12>>2];c=h;e=i[b+20>>2];d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}k=i[b+8>>2];g=f;f=e;a:{if((c|0)<(e|0)?1:(c|0)<=(e|0)?k>>>0<g>>>0:0){break a}c=d+i[b>>2]|0;e=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=g;i[b+20>>2]=f;if(!e|e&3){break a}d=k;c=e;l=d-g>>>0<c>>>0;d=h-(f+(d>>>0<g>>>0)|0)|0;if((d|0)<0?1:(d|0)<=0?l:0){break a}d=e>>>2|0;if(d){ye(a,d);k=i[b+8>>2];h=i[b+12>>2];g=i[b+16>>2];f=i[b+20>>2]}d=c+g|0;if(d>>>0<c>>>0){f=f+1|0}if((h|0)<(f|0)?1:(h|0)<=(f|0)?k>>>0<d>>>0:0){break a}pn(i[a>>2],g+i[b>>2]|0,e);f=b;d=b;e=i[b+20>>2];b=c+i[b+16>>2]|0;if(b>>>0<c>>>0){e=e+1|0}i[d+16>>2]=b;i[f+20>>2]=e;i[a+16>>2]=0;i[a+12>>2]=i[a>>2];m=1}return m}function dg(a){i[a>>2]=11520;qn(a+4|0,0,80);i[a+96>>2]=0;i[a+100>>2]=0;i[a+92>>2]=-1;i[a+84>>2]=-1;i[a+88>>2]=-1;i[a+104>>2]=0;i[a+108>>2]=0;i[a+112>>2]=0;i[a+116>>2]=0;i[a+120>>2]=0;i[a+124>>2]=0;i[a+128>>2]=0;i[a+132>>2]=0;i[a+136>>2]=0;i[a+140>>2]=0;i[a+144>>2]=0;i[a+148>>2]=0;i[a+156>>2]=0;i[a+160>>2]=0;i[a+152>>2]=1065353216;i[a+164>>2]=0;i[a+168>>2]=0;i[a+172>>2]=0;i[a+176>>2]=0;i[a+180>>2]=0;i[a+184>>2]=0;i[a+188>>2]=0;i[a+192>>2]=0;i[a+196>>2]=0;i[a+200>>2]=0;i[a+204>>2]=0;i[a+208>>2]=0;i[a+212>>2]=-1;i[a+216>>2]=0;i[a+220>>2]=0;i[a+224>>2]=0;zh(a+232|0);zh(a+272|0);ze(a+312|0);zh(a+328|0);i[a+392>>2]=0;i[a+396>>2]=0;i[a+384>>2]=0;i[a+388>>2]=0;i[a+376>>2]=0;i[a+380>>2]=0;i[a+368>>2]=0;i[a+372>>2]=0;ze(a+400|0);i[a+416>>2]=-1;i[a+420>>2]=-1}function Jd(a){var b=0,c=0,d=0;b=i[a+8>>2];d=i[a>>2];a:{if(j[a+12|0]){b:{c:{d:{e:{if((b|0)==-1){break e}c=b+1|0;b=(c>>>0)%3|0?c:b+ -2|0;if((b|0)==-1){break e}b=i[i[d+12>>2]+(b<<2)>>2];if((b|0)!=-1){break d}}i[a+8>>2]=-1;break c}c=b+1|0;b=(c>>>0)%3|0?c:b+ -2|0;i[a+8>>2]=b;if((b|0)!=-1){break b}}c=i[a+4>>2];b=-1;f:{if((c|0)==-1){break f}c=c+((c>>>0)%3|0?-1:2)|0;b=-1;if((c|0)==-1){break f}c=i[i[d+12>>2]+(c<<2)>>2];b=-1;if((c|0)==-1){break f}b=c+ -1|0;if((c>>>0)%3|0){break f}b=c+2|0}g[a+12|0]=0;i[a+8>>2]=b;return}if((b|0)!=i[a+4>>2]){break a}i[a+8>>2]=-1;return}c=-1;g:{if((b|0)==-1){break g}b=b+((b>>>0)%3|0?-1:2)|0;c=-1;if((b|0)==-1){break g}b=i[i[d+12>>2]+(b<<2)>>2];c=-1;if((b|0)==-1){break g}c=b+ -1|0;if((b>>>0)%3|0){break g}c=b+2|0}i[a+8>>2]=c}}function rn(a,b,c){var d=0;a:{if((a|0)==(b|0)){break a}if((b-a|0)-c>>>0<=0-(c<<1)>>>0){return pn(a,b,c)}d=(a^b)&3;b:{c:{if(a>>>0<b>>>0){if(d){d=a;break b}if(!(a&3)){d=a;break c}d=a;while(1){if(!c){break a}g[d|0]=j[b|0];b=b+1|0;c=c+ -1|0;d=d+1|0;if(d&3){continue}break}break c}d:{if(d){break d}if(a+c&3){while(1){if(!c){break a}c=c+ -1|0;d=c+a|0;g[d|0]=j[b+c|0];if(d&3){continue}break}}if(c>>>0<=3){break d}while(1){c=c+ -4|0;i[c+a>>2]=i[b+c>>2];if(c>>>0>3){continue}break}}if(!c){break a}while(1){c=c+ -1|0;g[c+a|0]=j[b+c|0];if(c){continue}break}break a}if(c>>>0<=3){break b}while(1){i[d>>2]=i[b>>2];b=b+4|0;d=d+4|0;c=c+ -4|0;if(c>>>0>3){continue}break}}if(!c){break a}while(1){g[d|0]=j[b|0];d=d+1|0;b=b+1|0;c=c+ -1|0;if(c){continue}break}}return a}function ng(a){var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=i[a+172>>2];if((b|0)!=-1){c=i[a+196>>2]+(b<<2)|0;d=i[c>>2];b=d+ -1|0;i[c>>2]=b;if((d|0)<1){return 9}c=a;a=i[(i[i[i[a+184>>2]+o(i[a+172>>2],12)>>2]+(b<<2)>>2]<<2)+12288>>2];i[c+168>>2]=a;return a}b=7;c=i[a+144>>2];c=k[(M[i[i[c>>2]+32>>2]](c)|0)+36>>1];a:{if((c<<24|c<<8&16711680)>>>16>>>0>513){break a}if(!j[a+76|0]){i[a+168>>2]=1;return 1}b=0;f=i[a- -64>>2];d=i[a+72>>2];c=f+(d>>>3|0)|0;g=i[a+68>>2];if(c>>>0>=g>>>0){break a}e=j[c|0];c=d+1|0;i[a+72>>2]=c;if(!(e>>>(d&7)&1)){break a}e=c>>>3|0;b=f+e|0;b:{if(b>>>0>=g>>>0){b=c;c=0;break b}h=j[b|0];b=d+2|0;i[a+72>>2]=b;e=b>>>3|0;c=h>>>(c&7)&1}d=e+f|0;if(d>>>0<g>>>0){d=j[d|0];i[a+72>>2]=b+1;b=d>>>(b&7)<<1&2}else{b=0}b=(c|b)<<1|1}i[a+168>>2]=b;return b}function zl(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=i[b+12>>2];f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]<d>>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]<d>>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){break a}i[a+8>>2]=0;if(!xe(a+16|0,b)){break a}if(!xe(a+36|0,b)){break a}if(!xe(a+56|0,b)){break a}if(!xe(a+76|0,b)){break a}Gl(a,i[a+4>>2],c)}}function yl(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=i[b+12>>2];f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]<d>>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]<d>>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){break a}i[a+8>>2]=0;if(!xe(a+16|0,b)){break a}if(!xe(a+36|0,b)){break a}if(!xe(a+56|0,b)){break a}if(!xe(a+76|0,b)){break a}Fl(a,i[a+4>>2],c)}}function Th(a,b){var c=0,d=0,e=0,f=0,h=0;a:{b:{c:{e=i[a>>2];h=(i[a+4>>2]-e|0)/12|0;c=h+1|0;if(c>>>0<357913942){e=(i[a+8>>2]-e|0)/12|0;f=e<<1;c=e>>>0<178956970?f>>>0<c>>>0?c:f:357913941;d=0;d:{if(!c){break d}if(c>>>0>=357913942){break c}d=Dm(o(c,12))}e=d+o(c,12)|0;d=Gm(d+o(h,12)|0,b);h=d+12|0;b=i[a+4>>2];c=i[a>>2];if((b|0)==(c|0)){break b}while(1){b=b+ -12|0;f=i[b+4>>2];d=d+ -12|0;i[d>>2]=i[b>>2];i[d+4>>2]=f;f=b+8|0;i[d+8>>2]=i[f>>2];i[b>>2]=0;i[b+4>>2]=0;i[f>>2]=0;if((b|0)!=(c|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=h;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){a=b+ -12|0;if(g[b+ -1|0]<=-1){nn(i[a>>2])}b=a;if((a|0)!=(c|0)){continue}break}break a}Sm();x()}Ba(14112);x()}i[a+8>>2]=e;i[a+4>>2]=h;i[a>>2]=d}if(c){nn(c)}}function Sh(a,b,c){var d=0,e=0,f=0,h=0,j=0;a:{if(i[a+12>>2]==(b|0)){break a}d=i[a>>2];e=i[a+4>>2];if((d|0)!=(e|0)){while(1){f=e+ -12|0;if(g[e+ -1|0]<=-1){nn(i[f>>2])}e=f;if((e|0)!=(d|0)){continue}break}}i[a+12>>2]=b;i[a+4>>2]=d;e=i[b>>2];f=b+4|0;if((e|0)==(f|0)){break a}while(1){b=e+16|0;b:{if(i[a+8>>2]!=(d|0)){h=a,j=Gm(d,b)+12|0,i[h+4>>2]=j;break b}Th(a,b)}d=i[e+4>>2];c:{if(!d){b=i[e+8>>2];if(i[b>>2]==(e|0)){break c}e=e+8|0;while(1){d=i[e>>2];e=d+8|0;b=i[d+8>>2];if((d|0)!=i[b>>2]){continue}break}break c}while(1){b=d;d=i[d>>2];if(d){continue}break}}if((b|0)==(f|0)){break a}d=i[a+4>>2];e=b;continue}}d=0;d:{if((c|0)<0){break d}b=i[a+4>>2];a=i[a>>2];if((b-a|0)/12>>>0<=c>>>0){break d}d=a+o(c,12)|0;if(g[d+11|0]>-1){break d}d=i[d>>2]}return d}function Bl(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=i[b+12>>2];f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]<d>>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]<d>>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){break a}i[a+8>>2]=0;if(!Ae(a+16|0,b)){break a}if(!xe(a+32|0,b)){break a}if(!xe(a+52|0,b)){break a}if(!xe(a+72|0,b)){break a}Il(a,i[a+4>>2],c)}}function Al(a,b,c){var d=0,e=0,f=0,g=0,h=0;a:{e=i[b+12>>2];f=i[b+20>>2];g=i[b+16>>2];d=g+4|0;if(d>>>0<4){f=f+1|0}if((e|0)<(f|0)?1:(e|0)<=(f|0)?l[b+8>>2]<d>>>0:0){break a}d=g+i[b>>2]|0;h=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a>>2]=h;e=i[b+20>>2];g=e;d=i[b+16>>2];f=d+4|0;if(f>>>0<4){e=e+1|0}i[b+16>>2]=f;i[b+20>>2]=e;if(h>>>0>32){break a}e=i[b+12>>2];d=d+8|0;if(d>>>0<8){g=g+1|0}if((e|0)<(g|0)?1:(e|0)<=(g|0)?l[b+8>>2]<d>>>0:0){break a}d=f+i[b>>2]|0;e=j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24);i[a+4>>2]=e;f=i[b+20>>2];g=i[b+16>>2]+4|0;if(g>>>0<4){f=f+1|0}i[b+16>>2]=g;i[b+20>>2]=f;if(!e){break a}i[a+8>>2]=0;if(!Ae(a+16|0,b)){break a}if(!xe(a+32|0,b)){break a}if(!xe(a+52|0,b)){break a}if(!xe(a+72|0,b)){break a}Hl(a,i[a+4>>2],c)}}function _k(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,o=0,p=0;d=J-16|0;J=d;g=i[a+24>>2];n=i[a+28>>2];a:{if((g|0)!=(n|0)){p=d+8|0;while(1){i[p>>2]=0;i[d>>2]=0;i[d+4>>2]=0;e=gl(i[g>>2],b,d);a=j[d+11|0];l=a<<24>>24;m=3;b:{c:{d:{if(!e){break d}m=0;e=j[c+11|0];f=e<<24>>24;k=(l|0)<0?i[d+4>>2]:a;if((k|0)!=(((f|0)<0?i[c+4>>2]:e)|0)){break d}h=(f|0)<0?i[c>>2]:c;f=i[d>>2];e=(l|0)<0;e:{if(!e){if(!k){break e}e=d;if(j[h|0]!=(f&255)){break d}while(1){a=a+ -1|0;if(!a){break e}f=j[h+1|0];h=h+1|0;e=e+1|0;if((f|0)==j[e|0]){continue}break}break d}if(!k){break e}if(Nl(e?f:d,h,k)){break c}}o=i[g>>2];m=1}if((l|0)>-1){break b}}nn(i[d>>2])}f:{switch(m|0){case 0:case 3:break f;default:break a}}g=g+4|0;if((n|0)!=(g|0)){continue}break}}o=0}J=d+16|0;return o}function yi(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0;e=J-16|0;J=e;a:{m=i[a+80>>2];f=g[b+24|0];k=0;b:{if((o(m,f)|0)!=(c|0)){break b}k=i[b+28>>2]!=1;if(!(k|!j[b+84|0])){pn(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);k=1;break b}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(f){if((f|0)<=-1){break a}h=Dm(f);i[e>>2]=h;a=f+h|0;i[e+8>>2]=a;qn(h,0,f);i[e+4>>2]=a}c:{if(!m){break c}c=0;l=1;while(1){a=n;a=j[b+84|0]?a:i[i[b+68>>2]+(a<<2)>>2];d:{if(!k){p=i[i[b>>2]>>2];l=i[b+40>>2];a=i[b+48>>2]+Gn(l,i[b+44>>2],a,0)|0;pn(h,p+a|0,l);break d}if(!li(b,a,g[b+24|0],h)){break c}}a=0;if((f|0)>=1){while(1){g[c+d|0]=j[a+h|0];c=c+1|0;a=a+1|0;if((f|0)!=(a|0)){continue}break}}n=n+1|0;l=n>>>0<m>>>0;if((n|0)!=(m|0)){continue}break}}if(h){nn(h)}k=l^1}J=e+16|0;return k&1}Sm();x()}function Bi(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,m=0,n=0,p=0;e=J-16|0;J=e;a:{m=i[a+80>>2];f=g[b+24|0];k=0;b:{if((o(m,f)|0)!=(c|0)){break b}k=i[b+28>>2]!=2;if(!(k|!j[b+84|0])){pn(d,i[i[b>>2]>>2]+i[b+48>>2]|0,c);k=1;break b}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if(f){if((f|0)<=-1){break a}h=Dm(f);i[e>>2]=h;a=f+h|0;i[e+8>>2]=a;qn(h,0,f);i[e+4>>2]=a}c:{if(!m){break c}c=0;l=1;while(1){a=n;a=j[b+84|0]?a:i[i[b+68>>2]+(a<<2)>>2];d:{if(!k){p=i[i[b>>2]>>2];l=i[b+40>>2];a=i[b+48>>2]+Gn(l,i[b+44>>2],a,0)|0;pn(h,p+a|0,l);break d}if(!ni(b,a,g[b+24|0],h)){break c}}a=0;if((f|0)>=1){while(1){g[c+d|0]=j[a+h|0];c=c+1|0;a=a+1|0;if((f|0)!=(a|0)){continue}break}}n=n+1|0;l=n>>>0<m>>>0;if((n|0)!=(m|0)){continue}break}}if(h){nn(h)}k=l^1}J=e+16|0;return k&1}Sm();x()}function Fc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0;d=i[b+12>>2];k=d;c=i[b+20>>2];f=c;g=i[b+16>>2];e=g+4|0;if(e>>>0<4){c=c+1|0}l=i[b+8>>2];h=e;e=c;a:{if((d|0)<(c|0)?1:(d|0)<=(c|0)?l>>>0<h>>>0:0){break a}m=i[b>>2];c=m+g|0;d=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=h;i[b+20>>2]=e;c=f;f=g+8|0;if(f>>>0<8){c=c+1|0}e=f;f=c;if((k|0)<(c|0)?1:(k|0)<=(c|0)?l>>>0<e>>>0:0){break a}c=h+m|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=e;i[b+20>>2]=f;if((d|0)>(c|0)){break a}i[a+16>>2]=c;i[a+12>>2]=d;b=d;d=(c>>31)-((c>>>0<b>>>0)+(b>>31)|0)|0;b=c-b|0;if(!d&b>>>0>2147483646|d>>>0>0){break a}n=1;b=b+1|0;i[a+20>>2]=b;c=(b|0)/2|0;i[a+24>>2]=c;i[a+28>>2]=0-c;if(b&1){break a}i[a+24>>2]=c+ -1}return n|0}function Kf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;d=i[a+8>>2];c=i[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{b:{c:{g=i[a>>2];f=c-g>>2;e=f+b|0;if(e>>>0<1073741824){d=d-g|0;h=d>>1;e=d>>2>>>0<536870911?h>>>0<e>>>0?e:h:1073741823;if(e){if(e>>>0>=1073741824){break c}j=Dm(e<<2)}d=(f<<2)+j|0;f=b<<2;b=qn(d,0,f);f=b+f|0;e=(e<<2)+j|0;if((c|0)==(g|0)){break b}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;d=d+ -4|0;i[d>>2]=b;if((c|0)!=(g|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b+ -4|0;a=i[b>>2];i[b>>2]=0;if(a){M[i[i[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}Sm();x()}Ba(12220);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){nn(c)}}function bc(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;d=i[a+8>>2];c=i[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{b:{c:{g=i[a>>2];f=c-g>>2;e=f+b|0;if(e>>>0<1073741824){d=d-g|0;h=d>>1;e=d>>2>>>0<536870911?h>>>0<e>>>0?e:h:1073741823;if(e){if(e>>>0>=1073741824){break c}j=Dm(e<<2)}d=(f<<2)+j|0;f=b<<2;b=qn(d,0,f);f=b+f|0;e=(e<<2)+j|0;if((c|0)==(g|0)){break b}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;d=d+ -4|0;i[d>>2]=b;if((c|0)!=(g|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b+ -4|0;a=i[b>>2];i[b>>2]=0;if(a){M[i[i[a>>2]+4>>2]](a)}if((b|0)!=(c|0)){continue}break}break a}Sm();x()}Ba(2188);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){nn(c)}}function bg(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=i[a+8>>2];d=i[a+4>>2];if((e-d|0)/12>>>0>=b>>>0){f=a;if(b){a=o(b,12)+d|0;while(1){b=i[c+4>>2];i[d>>2]=i[c>>2];i[d+4>>2]=b;i[d+8>>2]=i[c+8>>2];d=d+12|0;if((a|0)!=(d|0)){continue}break}d=a}i[f+4>>2]=d;return}a:{g=i[a>>2];j=d-g|0;h=(j|0)/12|0;f=h+b|0;if(f>>>0<357913942){d=o(b,12);e=(e-g|0)/12|0;k=e<<1;e=e>>>0<178956970?k>>>0<f>>>0?f:k:357913941;f=0;b:{if(!e){break b}if(e>>>0>=357913942){break a}f=Dm(o(e,12))}b=f+o(h,12)|0;h=d+b|0;d=b;while(1){k=i[c+4>>2];i[d>>2]=i[c>>2];i[d+4>>2]=k;i[d+8>>2]=i[c+8>>2];d=d+12|0;if((h|0)!=(d|0)){continue}break}c=f+o(e,12)|0;b=b+o((j|0)/-12|0,12)|0;if((j|0)>=1){pn(b,g,j)}i[a+8>>2]=c;i[a+4>>2]=h;i[a>>2]=b;if(g){nn(g)}return}Sm();x()}Ba(12220);x()}function qa(a,b,c,d){var e=0,f=0,h=0,k=0,l=0,n=0,o=0,r=0,s=0,t=0,v=0,w=p(0),x=0,y=p(0),z=0,A=0,B=0,C=0,D=0;n=J-16|0;J=n;h=i[a+4>>2];o=i[d+48>>2];d=i[i[d>>2]>>2];f=g[b+24|0];k=Kh(n+8|0);Lh(k,m[a+20>>2],-1<<h^-1);h=Dm((f&1073741823)!=(f|0)?-1:f<<2);if(c){x=d+o|0;y=m[k>>2];z=i[b>>2];o=i[b+48>>2];A=i[b+68>>2];k=i[b+44>>2];v=i[b+40>>2];B=v;d=0;C=j[b+84|0];D=(f|0)<1;while(1){b=l;e=h;r=i[z>>2];s=v;t=k;if(!C){b=i[(l<<2)+A>>2]}b=Gn(s,t,b,0)+o|0;s=pn(e,b+r|0,B);if(!D){t=i[a+8>>2];b=0;while(1){r=(d<<2)+x|0;e=b<<2;w=p(u(p(p(y*p(m[e+s>>2]-m[e+t>>2]))+p(.5))));a:{if(p(q(w))<p(2147483648)){e=~~w;break a}e=-2147483648}i[r>>2]=e;d=d+1|0;b=b+1|0;if((f|0)!=(b|0)){continue}break}}l=l+1|0;if((l|0)!=(c|0)){continue}break}}nn(h);J=n+16|0}function Yb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;g=i[b>>2];h=i[b+4>>2];p=i[i[a+8>>2]+40>>2];j=p;q=Dm((j|0)>-1?j:-1);k=1;m=h-g|0;a:{if((m|0)<1){break a}b=0;n=i[c+12>>2];k=0;d=0+i[c+20>>2]|0;o=i[c+16>>2];e=p;f=o+e|0;if(f>>>0<e>>>0){d=d+1|0}e=f;f=d;if((n|0)<(d|0)?1:(n|0)<=(d|0)?l[c+8>>2]<e>>>0:0){break a}k=m>>2;d=g-h|0;d=((d|0)>(m|0)?d:m)>>>2|0;n=d>>>0>1?d:1;g=0;while(1){b:{d=pn(q,o+i[c>>2]|0,j);i[c+16>>2]=e;i[c+20>>2]=f;pn(i[i[i[a+8>>2]+64>>2]>>2]+b|0,d,j);g=g+1|0;if((n|0)==(g|0)){break b}b=b+j|0;h=i[c+12>>2];d=r+i[c+20>>2]|0;o=i[c+16>>2];f=p;e=o+f|0;if(e>>>0<f>>>0){d=d+1|0}f=d;if((h|0)>(d|0)?1:(h|0)>=(d|0)?l[c+8>>2]>=e>>>0:0){continue}}break}k=(g|0)>=(k|0)}nn(q);return k|0}function Rc(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;e=J-32|0;J=e;h=i[c>>2];g=i[b>>2];j=i[c+4>>2];c=i[b+4>>2];b=(h-g<<3)+(j-c|0)|0;d=i[a+4>>2];f=b+d|0;i[a+4>>2]=f;a:{if(!(!d|(f+ -1^d+ -1)>>>0>31)){a=i[a>>2];break a}a=i[a>>2];if(f>>>0<=32){i[a>>2]=0;break a}i[(f+ -1>>>3&536870908)+a>>2]=0}a=(d>>>3&536870908)+a|0;d=d&31;b:{if((d|0)==(c|0)){if((b|0)<1){break b}if(c){f=32-c|0;d=(b|0)<(f|0)?b:f;f=-1<<c&-1>>>f-d;i[a>>2]=i[a>>2]&(f^-1)|f&i[g>>2];b=b-d|0;g=g+4|0;a=a+(c+d>>>3&536870908)|0}d=a;c=(b|0)/32|0;a=c<<2;d=rn(d,g,a);b=b-(c<<5)|0;if((b|0)<1){break b}c=a+d|0;b=-1>>>32-b|0;i[c>>2]=i[c>>2]&(b^-1)|b&i[a+g>>2];break b}i[e+28>>2]=c;i[e+24>>2]=g;i[e+20>>2]=j;i[e+16>>2]=h;i[e+12>>2]=d;i[e+8>>2]=a;Sc(e,e+24|0,e+16|0,e+8|0)}J=e+32|0}function qn(a,b,c){var d=0,e=0,f=0,h=0;a:{if(!c){break a}d=a+c|0;g[d+ -1|0]=b;g[a|0]=b;if(c>>>0<3){break a}g[d+ -2|0]=b;g[a+1|0]=b;g[d+ -3|0]=b;g[a+2|0]=b;if(c>>>0<7){break a}g[d+ -4|0]=b;g[a+3|0]=b;if(c>>>0<9){break a}d=0-a&3;e=d+a|0;b=o(b&255,16843009);i[e>>2]=b;c=c-d&-4;d=c+e|0;i[d+ -4>>2]=b;if(c>>>0<9){break a}i[e+8>>2]=b;i[e+4>>2]=b;i[d+ -8>>2]=b;i[d+ -12>>2]=b;if(c>>>0<25){break a}i[e+24>>2]=b;i[e+20>>2]=b;i[e+16>>2]=b;i[e+12>>2]=b;i[d+ -16>>2]=b;i[d+ -20>>2]=b;i[d+ -24>>2]=b;i[d+ -28>>2]=b;h=e&4|24;c=c-h|0;if(c>>>0<32){break a}d=b;f=b;b=e+h|0;while(1){i[b+24>>2]=f;i[b+28>>2]=d;i[b+16>>2]=f;i[b+20>>2]=d;i[b+8>>2]=f;i[b+12>>2]=d;i[b>>2]=f;i[b+4>>2]=d;b=b+32|0;c=c+ -32|0;if(c>>>0>31){continue}break}}return a}function rl(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;d=i[a+8>>2];c=i[a+4>>2];if(d-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{b:{c:{g=i[a>>2];f=c-g>>2;e=f+b|0;if(e>>>0<1073741824){d=d-g|0;h=d>>1;e=d>>2>>>0<536870911?h>>>0<e>>>0?e:h:1073741823;if(e){if(e>>>0>=1073741824){break c}j=Dm(e<<2)}d=(f<<2)+j|0;f=b<<2;b=qn(d,0,f);f=b+f|0;e=(e<<2)+j|0;if((c|0)==(g|0)){break b}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;d=d+ -4|0;i[d>>2]=b;if((c|0)!=(g|0)){continue}break}i[a+8>>2]=e;b=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=d;if((b|0)==(c|0)){break a}while(1){b=b+ -4|0;a=i[b>>2];i[b>>2]=0;if(a){Sa(a)}if((b|0)!=(c|0)){continue}break}break a}Sm();x()}Ba(14808);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){nn(c)}}function cm(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;d=J-32|0;J=d;e=i[a+28>>2];i[d+16>>2]=e;f=i[a+20>>2];i[d+28>>2]=c;i[d+24>>2]=b;b=f-e|0;i[d+20>>2]=b;e=b+c|0;k=2;b=d+16|0;a:{b:{c:{if(!em(D(i[a+60>>2],d+16|0,2,d+12|0)|0)){while(1){f=i[d+12>>2];if((f|0)==(e|0)){break c}if((f|0)<=-1){break b}g=i[b+4>>2];h=f>>>0>g>>>0;j=(h<<3)+b|0;g=f-(h?g:0)|0;i[j>>2]=g+i[j>>2];j=(h?12:4)+b|0;i[j>>2]=i[j>>2]-g;e=e-f|0;b=h?b+8|0:b;k=k-h|0;if(!em(D(i[a+60>>2],b|0,k|0,d+12|0)|0)){continue}break}}if((e|0)!=-1){break b}}b=i[a+44>>2];i[a+28>>2]=b;i[a+20>>2]=b;i[a+16>>2]=b+i[a+48>>2];a=c;break a}i[a+28>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a>>2]=i[a>>2]|32;a=0;if((k|0)==2){break a}a=c-i[b+4>>2]|0}J=d+32|0;return a|0}function Vk(a,b){var c=0,d=0,e=0,f=0,g=0;d=-1;f=-1;e=-1;a:{b:{if((b|0)==-1){break b}g=1;f=i[i[i[a+4>>2]+12>>2]+(b<<2)>>2];c=b+1|0;c=(c>>>0)%3|0?c:b+ -2|0;if((c|0)>=0){e=(c>>>0)/3|0;e=i[(i[i[a>>2]+96>>2]+o(e,12)|0)+(c-o(e,3)<<2)>>2]}c:{if((f|0)==-1){break c}g=0;c=((f>>>0)%3|0?-1:2)+f|0;if((c|0)<0){break c}d=(c>>>0)/3|0;d=i[(i[i[a>>2]+96>>2]+o(d,12)|0)+(c-o(d,3)<<2)>>2]}c=-1;if((d|0)!=(e|0)){break a}e=-1;d:{b=((b>>>0)%3|0?-1:2)+b|0;if((b|0)>=0){d=(b>>>0)/3|0;d=i[(i[i[a>>2]+96>>2]+o(d,12)|0)+(b-o(d,3)<<2)>>2];if(g){break b}break d}d=-1;if(!g){break d}break b}b=f+1|0;b=(b>>>0)%3|0?b:f+ -2|0;if((b|0)<0){break b}c=i[i[a>>2]+96>>2];a=(b>>>0)/3|0;e=i[(c+o(a,12)|0)+(b-o(a,3)<<2)>>2]}c=(d|0)==(e|0)?f:-1}return c}function Wg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=i[a+4>>2];d=i[b>>2];a:{c=i[a+12>>2];e=i[c+56>>2]-i[c+52>>2]|0;c=e>>2;b:{if(i[b+8>>2]-d>>2>>>0>=c>>>0){break b}if(c>>>0>=1073741824){break a}f=i[b+4>>2];g=c<<2;c=Dm(e);g=g+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){pn(c,d,e)}i[b+8>>2]=g;i[b+4>>2]=f;i[b>>2]=c;if(!d){break b}nn(d)}e=a+8|0;b=i[a+76>>2];c:{if(b){c=i[b>>2];if((c|0)==i[b+4>>2]){return 1}b=0;while(1){d=Xg(e,i[(b<<2)+c>>2]);if(!d){break c}f=i[a+76>>2];c=i[f>>2];b=b+1|0;if(b>>>0<i[f+4>>2]-c>>2>>>0){continue}break}break c}d=1;a=i[i[a+12>>2]+64>>2];a=(i[a+4>>2]-i[a>>2]>>2>>>0)/3|0;if(a>>>0<1){break c}b=0;while(1){d=Xg(e,o(b,3));b=b+1|0;if((a|0)==(b|0)){break c}if(d){continue}break}}return d|0}Ba(12220);x()}function al(a,b){var c=0,d=0,e=0,f=0,g=0;a:{b:{c:{e=i[a>>2];f=i[a+4>>2]-e>>2;c=f+1|0;if(c>>>0<1073741824){e=i[a+8>>2]-e|0;g=e>>1;c=e>>2>>>0<536870911?g>>>0<c>>>0?c:g:1073741823;if(c){if(c>>>0>=1073741824){break c}d=Dm(c<<2)}e=i[b>>2];i[b>>2]=0;b=(f<<2)+d|0;i[b>>2]=e;e=(c<<2)+d|0;f=b+4|0;d=i[a+4>>2];c=i[a>>2];if((d|0)==(c|0)){break b}while(1){d=d+ -4|0;g=i[d>>2];i[d>>2]=0;b=b+ -4|0;i[b>>2]=g;if((d|0)!=(c|0)){continue}break}i[a+8>>2]=e;d=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=b;if((d|0)==(c|0)){break a}while(1){d=d+ -4|0;a=i[d>>2];i[d>>2]=0;if(a){qh(a+12|0,i[a+16>>2]);rh(a,i[a+4>>2]);nn(a)}if((d|0)!=(c|0)){continue}break}break a}Sm();x()}Ba(14684);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){nn(c)}}function Qg(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;b=i[a+4>>2];d=i[b>>2];a:{c=i[a+12>>2];e=i[c+28>>2]-i[c+24>>2]|0;c=e>>2;b:{if(i[b+8>>2]-d>>2>>>0>=c>>>0){break b}if(c>>>0>=1073741824){break a}f=i[b+4>>2];g=c<<2;c=Dm(e);g=g+c|0;e=f-d|0;f=e+c|0;if((e|0)>=1){pn(c,d,e)}i[b+8>>2]=g;i[b+4>>2]=f;i[b>>2]=c;if(!d){break b}nn(d)}e=a+8|0;b=i[a+76>>2];c:{if(b){c=i[b>>2];if((c|0)==i[b+4>>2]){return 1}b=0;while(1){d=Rg(e,i[(b<<2)+c>>2]);if(!d){break c}f=i[a+76>>2];c=i[f>>2];b=b+1|0;if(b>>>0<i[f+4>>2]-c>>2>>>0){continue}break}break c}d=1;a=i[a+12>>2];a=(i[a+4>>2]-i[a>>2]>>2>>>0)/3|0;if(a>>>0<1){break c}b=0;while(1){d=Rg(e,o(b,3));b=b+1|0;if((a|0)==(b|0)){break c}if(d){continue}break}}return d|0}Ba(12220);x()}function Xl(a,b,c){a:{if(b>>>0>20){break a}b:{switch(b+ -9|0){case 0:b=i[c>>2];i[c>>2]=b+4;i[a>>2]=i[b>>2];return;case 1:b=i[c>>2];i[c>>2]=b+4;b=i[b>>2];i[a>>2]=b;i[a+4>>2]=b>>31;return;case 2:b=i[c>>2];i[c>>2]=b+4;i[a>>2]=i[b>>2];i[a+4>>2]=0;return;case 3:b=i[c>>2]+7&-8;i[c>>2]=b+8;c=i[b+4>>2];i[a>>2]=i[b>>2];i[a+4>>2]=c;return;case 4:b=i[c>>2];i[c>>2]=b+4;b=h[b>>1];i[a>>2]=b;i[a+4>>2]=b>>31;return;case 5:b=i[c>>2];i[c>>2]=b+4;i[a>>2]=k[b>>1];i[a+4>>2]=0;return;case 6:b=i[c>>2];i[c>>2]=b+4;b=g[b|0];i[a>>2]=b;i[a+4>>2]=b>>31;return;case 7:b=i[c>>2];i[c>>2]=b+4;i[a>>2]=j[b|0];i[a+4>>2]=0;return;case 8:b=i[c>>2]+7&-8;i[c>>2]=b+8;n[a>>3]=n[b>>3];return;case 9:break b;default:break a}}M[0](a,c)}}function Ib(a,b,c){var d=0,e=0,f=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=J-16|0;J=f;d=g[b+24|0];i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;a:{b:{if(d){if((d|0)<=-1){break b}e=d<<1;m=Dm(e);i[f>>2]=m;n=e+m|0;i[f+8>>2]=n;qn(m,0,e);i[f+4>>2]=n;p=Dm(e);qn(p,0,e)}if(!i[b+80>>2]){break a}while(1){v=i[b>>2];q=i[v>>2];t=i[b+48>>2];e=i[b+40>>2];n=Gn(e,i[b+44>>2],u,r);s=q;q=n+t|0;n=pn(m,s+q|0,e);if(d<<24>>24>=1){d=d&255;q=d>>>0>1?d:1;t=i[a+48>>2];d=0;while(1){s=d<<1;h[s+p>>1]=k[n+s>>1]+k[(c+d<<2)+t>>1];d=d+1|0;if((q|0)!=(d|0)){continue}break}}pn(i[v>>2]+o(e,u)|0,p,e);e=u+1|0;if(e>>>0<1){r=r+1|0}u=e;if(!r&e>>>0>=l[b+80>>2]|r>>>0>0){break a}d=j[b+24|0];continue}}Sm();x()}if(p){nn(p)}if(m){nn(m)}J=f+16|0;return 1}function Hb(a,b,c){var d=0,e=0,f=0,h=0,k=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0;f=J-16|0;J=f;d=g[b+24|0];i[f+8>>2]=0;i[f>>2]=0;i[f+4>>2]=0;a:{b:{if(d){if((d|0)<=-1){break b}e=d<<2;h=Dm(e);i[f>>2]=h;k=e+h|0;i[f+8>>2]=k;qn(h,0,e);i[f+4>>2]=k;m=Dm(e);qn(m,0,e)}if(!i[b+80>>2]){break a}while(1){t=i[b>>2];n=i[t>>2];r=i[b+48>>2];e=i[b+40>>2];k=Gn(e,i[b+44>>2],s,p);q=n;n=k+r|0;k=pn(h,q+n|0,e);if(d<<24>>24>=1){d=d&255;n=d>>>0>1?d:1;r=i[a+48>>2];d=0;while(1){q=d<<2;i[q+m>>2]=i[(c+d<<2)+r>>2]+i[k+q>>2];d=d+1|0;if((n|0)!=(d|0)){continue}break}}pn(i[t>>2]+o(e,s)|0,m,e);e=s+1|0;if(e>>>0<1){p=p+1|0}s=e;if(!p&e>>>0>=l[b+80>>2]|p>>>0>0){break a}d=j[b+24|0];continue}}Sm();x()}if(m){nn(m)}if(h){nn(h)}J=f+16|0;return 1}function Hk(a,b,c){var d=0,e=0,f=0,g=0,h=0;d=i[a+8>>2];e=i[a>>2];if(d-e>>2>>>0>=b>>>0){f=i[a+4>>2];g=f-e>>2;h=g>>>0<b>>>0?g:b;if(h){d=e;while(1){i[d>>2]=i[c>>2];d=d+4|0;h=h+ -1|0;if(h){continue}break}}if(g>>>0<b>>>0){d=a;a=b-g|0;if(a){a=(a<<2)+f|0;while(1){i[f>>2]=i[c>>2];f=f+4|0;if((a|0)!=(f|0)){continue}break}}else{a=f}i[d+4>>2]=a;return}i[a+4>>2]=(b<<2)+e;return}if(e){i[a+4>>2]=e;nn(e);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;d=0}a:{if(b>>>0>=1073741824){break a}e=d>>1;d=d>>2>>>0<536870911?e>>>0<b>>>0?b:e:1073741823;if(d>>>0>=1073741824){break a}e=d<<2;d=Dm(e);i[a>>2]=d;i[a+8>>2]=d+e;b=(b<<2)+d|0;c=i[c>>2];while(1){i[d>>2]=c;d=d+4|0;if((b|0)!=(d|0)){continue}break}i[a+4>>2]=b;return}Sm();x()}function Ml(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;b=i[b>>2];g=i[b+8>>2];h=i[b+4>>2];j=i[b>>2];e=i[a>>2];b=i[e+4>>2];c=i[e+8>>2];if(b>>>0<c>>>0){i[b+8>>2]=g;i[b+4>>2]=h;i[b>>2]=j;i[e+4>>2]=b+12;return}a:{f=i[e>>2];d=(b-f|0)/12|0;a=d+1|0;if(a>>>0<357913942){k=o(d,12);c=(c-f|0)/12|0;d=c<<1;c=c>>>0<178956970?d>>>0<a>>>0?a:d:357913941;d=0;b:{if(!c){break b}if(c>>>0>=357913942){break a}d=Dm(o(c,12))}a=k+d|0;i[a+8>>2]=g;i[a+4>>2]=h;i[a>>2]=j;d=d+o(c,12)|0;c=a+12|0;if((b|0)!=(f|0)){while(1){a=a+ -12|0;b=b+ -12|0;i[a>>2]=i[b>>2];i[a+4>>2]=i[b+4>>2];i[a+8>>2]=i[b+8>>2];if((b|0)!=(f|0)){continue}break}}i[e+8>>2]=d;i[e+4>>2]=c;i[e>>2]=a;if(f){nn(f)}return}Sm();x()}Ba(14937);x()}function uf(a){a=a|0;var b=0,c=0,d=0,e=0;b=i[a+32>>2];d=i[b+16>>2];e=i[b+12>>2];c=i[b+20>>2];if((e|0)>(c|0)?1:(e|0)>=(c|0)?l[b+8>>2]>d>>>0:0){e=j[d+i[b>>2]|0];d=d+1|0;if(d>>>0<1){c=c+1|0}i[b+16>>2]=d;i[b+20>>2]=c;b=i[a+48>>2];i[a+48>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}a:{b:{c:{switch(e|0){case 0:c=Dm(384);Cf(c);b=i[a+48>>2];i[a+48>>2]=c;if(!b){break a}M[i[i[b>>2]+4>>2]](b);break b;case 1:c=Dm(424);dg(c);b=i[a+48>>2];i[a+48>>2]=c;if(!b){break a}M[i[i[b>>2]+4>>2]](b);break b;case 2:break c;default:break b}}c=Dm(440);ig(c);b=i[a+48>>2];i[a+48>>2]=c;if(!b){break a}M[i[i[b>>2]+4>>2]](b)}c=i[a+48>>2];if(c){break a}return 0}a=M[i[i[c>>2]+8>>2]](c,a)|0}else{a=0}return a|0}function pc(a,b,c,d,e){var f=0,g=0,h=0,j=0;if((b|0)==-2){i[a>>2]=0;return}f=i[i[i[d+4>>2]+8>>2]+(c<<2)>>2];a:{b:{if((M[i[i[d>>2]+8>>2]](d)|0)==1){g=b;b=k[d+36>>1];wc(a,d,g,c,e,(b<<24|b<<8&16711680)>>>16|0);if(i[a>>2]){break b}i[a>>2]=0}b=Dm(44);i[b+4>>2]=f;i[b>>2]=3088;c=i[e+8>>2];d=i[e+12>>2];f=i[e+16>>2];g=i[e+20>>2];h=i[e>>2];j=i[e+4>>2];i[b+40>>2]=0;i[b+32>>2]=0;i[b+36>>2]=0;i[b+24>>2]=f;i[b+28>>2]=g;i[b+16>>2]=c;i[b+20>>2]=d;i[b+8>>2]=h;i[b+12>>2]=j;f=i[e+24>>2];e=i[e+28>>2]-f|0;if(e){d=e>>2;if(d>>>0>=1073741824){break a}c=Dm(e);i[b+32>>2]=c;i[b+36>>2]=c;i[b+40>>2]=c+(d<<2);d=b;if((e|0)>=1){c=pn(c,f,e)+e|0}i[d+36>>2]=c}i[b>>2]=6684;i[a>>2]=b}return}Sm();x()}function Tk(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,m=0,n=0,p=0;d=J-16|0;J=d;h=ml(b);a:{if(!h){i[a>>2]=0;break a}c=i[b+100>>2];k=i[b+96>>2];i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;c=c-k|0;e=(c|0)/12|0;b:{if(!c){break b}if(e>>>0<357913942){g=Dm(c);i[d>>2]=g;f=g+o(e,12)|0;i[d+8>>2]=f;b=0;m=qn(g,0,c-((c+ -12>>>0)%12|0)|0);i[d+4>>2]=f;n=e>>>0>1?e:1;p=j[h+84|0];while(1){l=o(b,12);c=l+k|0;e=i[c>>2];c:{if(p){g=c+8|0;c=c+4|0;break c}f=i[h+68>>2];g=f+(i[c+8>>2]<<2)|0;e=i[f+(e<<2)>>2];c=f+(i[c+4>>2]<<2)|0}f=i[c>>2];c=m+l|0;i[c+8>>2]=i[g>>2];i[c+4>>2]=f;i[c>>2]=e;b=b+1|0;if((n|0)!=(b|0)){continue}break}break b}Sm();x()}xk(a,d);a=i[d>>2];if(!a){break a}i[d+4>>2]=a;nn(a)}J=d+16|0}function cb(a,b){var c=0,d=0,e=0,f=0,g=0;a:{b:{c:{e=i[a>>2];f=i[a+4>>2]-e>>2;c=f+1|0;if(c>>>0<1073741824){e=i[a+8>>2]-e|0;g=e>>1;c=e>>2>>>0<536870911?g>>>0<c>>>0?c:g:1073741823;if(c){if(c>>>0>=1073741824){break c}d=Dm(c<<2)}e=i[b>>2];i[b>>2]=0;b=(f<<2)+d|0;i[b>>2]=e;e=(c<<2)+d|0;f=b+4|0;d=i[a+4>>2];c=i[a>>2];if((d|0)==(c|0)){break b}while(1){d=d+ -4|0;g=i[d>>2];i[d>>2]=0;b=b+ -4|0;i[b>>2]=g;if((d|0)!=(c|0)){continue}break}i[a+8>>2]=e;d=i[a+4>>2];i[a+4>>2]=f;c=i[a>>2];i[a>>2]=b;if((d|0)==(c|0)){break a}while(1){d=d+ -4|0;a=i[d>>2];i[d>>2]=0;if(a){Sa(a)}if((d|0)!=(c|0)){continue}break}break a}Sm();x()}Ba(1756);x()}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b}if(c){nn(c)}}function bh(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;d=J-32|0;J=d;i[d+24>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;a:{f=o(b,3);if(f){if(f>>>0>=1073741824){break a}g=o(b,12);e=Dm(g);i[d+16>>2]=e;c=(f<<2)+e|0;i[d+24>>2]=c;qn(e,0,g);i[d+20>>2]=c}k=Qe(f,1,i[a+32>>2],e);if(!(!k|!b)){g=0;f=0;c=0;while(1){l=d+8|0;i[l>>2]=0;i[d>>2]=0;i[d+4>>2]=0;h=c;e=(f<<2)+e|0;c=i[e>>2];j=c>>>1|0;c=h+(c&1?0-j|0:j)|0;i[d>>2]=c;h=c;c=i[e+4>>2];j=c>>>1|0;c=h+(c&1?0-j|0:j)|0;i[d+4>>2]=c;h=c;e=i[e+8>>2];c=e>>>1|0;c=h+(e&1?0-c|0:c)|0;i[l>>2]=c;ch(i[a+44>>2]+96|0,d);g=g+1|0;if((g|0)!=(b|0)){f=f+3|0;e=i[d+16>>2];continue}break}e=i[d+16>>2]}if(e){i[d+20>>2]=e;nn(e)}J=d+32|0;return k}Sm();x()}function dh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,j=0;f=J-16|0;J=f;g=Dm(64);c=Dm(12);i[c+8>>2]=i[i[a+4>>2]+80>>2];i[c>>2]=13428;i[c+4>>2]=0;i[f+8>>2]=c;$b(g,f+8|0);a:{if((b|0)>=0){h=a+8|0;c=i[a+12>>2];j=i[a+8>>2];d=c-j>>2;b:{if((d|0)>(b|0)){break b}e=b+1|0;if(d>>>0<=b>>>0){Kf(h,e-d|0);break b}if(e>>>0>=d>>>0){break b}e=j+(e<<2)|0;if((e|0)!=(c|0)){while(1){c=c+ -4|0;d=i[c>>2];i[c>>2]=0;if(d){M[i[i[d>>2]+4>>2]](d)}if((c|0)!=(e|0)){continue}break}}i[a+12>>2]=e}c=i[h>>2]+(b<<2)|0;a=i[c>>2];i[c>>2]=g;if(!a){break a}M[i[i[a>>2]+4>>2]](a);break a}M[i[i[g>>2]+4>>2]](g)}a=i[f+8>>2];i[f+8>>2]=0;if(a){M[i[i[a>>2]+4>>2]](a)}J=f+16|0;return(b^-1)>>>31|0}function Jf(a,b,c){var d=0,e=0,f=0,g=0,h=0;e=J-16|0;J=e;i[a+4>>2]=0;a:{b:{if(!b){break b}f=i[a+8>>2];d=f<<5;c:{if(d>>>0>=b>>>0){i[a+4>>2]=b;break c}i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;if((b|0)<=-1){break a}h=e;if(d>>>0<=1073741822){g=b+31&-32;d=f<<6;d=d>>>0<g>>>0?g:d}else{d=2147483647}Qc(h,d);d=i[a>>2];i[a>>2]=i[e>>2];i[e>>2]=d;f=i[a+4>>2];i[a+4>>2]=b;i[e+4>>2]=f;f=i[a+8>>2];i[a+8>>2]=i[e+8>>2];i[e+8>>2]=f;if(!d){break c}nn(d)}d=b>>>5|0;f=d<<2;a=i[a>>2];if(j[c|0]){a=qn(a,255,f);b=b&31;if(!b){break b}a=a+(d<<2)|0;i[a>>2]=i[a>>2]|-1>>>32-b;break b}a=qn(a,0,f);b=b&31;if(!b){break b}a=a+(d<<2)|0;i[a>>2]=i[a>>2]&(-1>>>32-b^-1)}J=e+16|0;return}Sm();x()}function oa(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0;i[b>>2]=1;f=b+8|0;c=i[b+8>>2];d=i[b+12>>2]-c|0;if(d>>>0<=4294967291){yh(f,d+4|0);c=i[f>>2]}c=c+d|0;d=i[a+4>>2];g[c|0]=d;g[c+1|0]=d>>>8;g[c+2|0]=d>>>16;g[c+3|0]=d>>>24;c=i[a+8>>2];if((c|0)!=i[a+12>>2]){d=0;while(1){h=(d<<2)+c|0;c=i[b+8>>2];e=i[b+12>>2]-c|0;if(e>>>0<=4294967291){yh(f,e+4|0);c=i[f>>2]}c=c+e|0;e=i[h>>2];g[c|0]=e;g[c+1|0]=e>>>8;g[c+2|0]=e>>>16;g[c+3|0]=e>>>24;d=d+1|0;c=i[a+8>>2];if(d>>>0<i[a+12>>2]-c>>2>>>0){continue}break}}c=i[b+12>>2];b=i[b+8>>2];c=c-b|0;if(c>>>0<=4294967291){yh(f,c+4|0);b=i[f>>2]}b=b+c|0;a=i[a+20>>2];g[b|0]=a;g[b+1|0]=a>>>8;g[b+2|0]=a>>>16;g[b+3|0]=a>>>24}function Cf(a){i[a>>2]=11468;qn(a+4|0,0,80);i[a+96>>2]=0;i[a+100>>2]=0;i[a+92>>2]=-1;i[a+84>>2]=-1;i[a+88>>2]=-1;i[a+104>>2]=0;i[a+108>>2]=0;i[a+112>>2]=0;i[a+116>>2]=0;i[a+120>>2]=0;i[a+124>>2]=0;i[a+128>>2]=0;i[a+132>>2]=0;i[a+136>>2]=0;i[a+140>>2]=0;i[a+144>>2]=0;i[a+148>>2]=0;i[a+156>>2]=0;i[a+160>>2]=0;i[a+152>>2]=1065353216;i[a+164>>2]=0;i[a+168>>2]=0;i[a+172>>2]=0;i[a+176>>2]=0;i[a+180>>2]=0;i[a+184>>2]=0;i[a+188>>2]=0;i[a+192>>2]=0;i[a+196>>2]=0;i[a+200>>2]=0;i[a+204>>2]=0;i[a+208>>2]=0;i[a+212>>2]=-1;i[a+216>>2]=0;i[a+220>>2]=0;i[a+224>>2]=0;zh(a+232|0);zh(a+272|0);ze(a+312|0);zh(a+328|0);i[a+376>>2]=0;i[a+368>>2]=0;i[a+372>>2]=0}function db(a,b){var c=0,d=0,e=0,f=0,g=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+24>>2]=0;c=i[b+4>>2]-i[b>>2]|0;d=(c|0)/20|0;a:{if(!c){i[a+28>>2]=0;break a}if(d>>>0<214748365){c=Dm(c);i[a+16>>2]=c;i[a+20>>2]=c;i[a+24>>2]=c+o(d,20);d=i[b>>2];b=i[b+4>>2]-d|0;if((b|0)<=0){i[a+28>>2]=0;i[a+20>>2]=c;break a}d=pn(c,d,b);c=0;i[a+28>>2]=0;b=o((b>>>0)/20|0,20);f=b+d|0;i[a+20>>2]=f;g=a;if(b){b=(f-d|0)/20|0;f=b>>>0>1?b:1;b=0;while(1){e=o(c,20)+d|0;e=o(i[e+16>>2],i[e+12>>2]);b=b>>>0<e>>>0?e:b;c=c+1|0;if((f|0)!=(c|0)){continue}break}if(!b){break a}rb(a,b);b=i[a>>2]}else{b=0}i[g+12>>2]=b;return a}Sm();x()}i[a+12>>2]=0;return a}function yk(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;f=J-16|0;J=f;i[a+80>>2]=0;i[a+84>>2]=0;c=a+76|0;d=i[c>>2];i[c>>2]=0;if(d){nn(d)}i[a+68>>2]=0;i[a+72>>2]=0;c=a- -64|0;d=i[c>>2];i[c>>2]=0;if(d){nn(d)}c=i[b+4>>2];d=i[b>>2];e=o((c-d|0)/12|0,3);h=i[a>>2];g=i[a+4>>2]-h>>2;a:{if(e>>>0>g>>>0){zk(a,e-g|0);d=i[b>>2];c=i[b+4>>2];break a}if(e>>>0>=g>>>0){break a}i[a+4>>2]=h+(e<<2)}if((c|0)!=(d|0)){b=(c-d|0)/12|0;g=b>>>0>1?b:1;h=i[a>>2];b=0;while(1){e=o(b,12);c=e+h|0;e=d+e|0;i[c>>2]=i[e>>2];i[c+4>>2]=i[e+4>>2];i[c+8>>2]=i[e+8>>2];b=b+1|0;if((g|0)!=(b|0)){continue}break}}i[f+12>>2]=-1;b=Ak(a,f+12|0);if(b){Bk(a);Ck(a,i[f+12>>2])}J=f+16|0;return b}function Jb(a,b,c){var d=0,e=0,f=0,h=0,k=0,m=0,n=0,p=0,q=0;e=J-16|0;J=e;d=g[b+24|0];i[e+8>>2]=0;i[e>>2]=0;i[e+4>>2]=0;a:{if(d){if((d|0)<=-1){break a}h=Dm(d);i[e>>2]=h;f=d+h|0;i[e+8>>2]=f;qn(h,0,d);i[e+4>>2]=f;f=Dm(d);qn(f,0,d)}if(i[b+80>>2]){while(1){n=i[i[b>>2]>>2];k=i[b+40>>2];d=i[b+48>>2]+Gn(k,i[b+44>>2],p,m)|0;q=pn(h,n+d|0,k);k=g[b+24|0];if((k|0)>=1){n=i[a+48>>2];d=0;while(1){g[d+f|0]=j[d+q|0]+j[(c+d<<2)+n|0];d=d+1|0;if((d|0)<(k|0)){continue}break}}d=i[b+40>>2];pn(i[i[b>>2]>>2]+o(d,p)|0,f,d);d=p+1|0;if(d>>>0<1){m=m+1|0}p=d;if(!m&d>>>0<l[b+80>>2]|m>>>0<0){continue}break}}if(f){nn(f)}if(h){nn(h)}J=e+16|0;return 1}Sm();x()}function Zd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,l=0,n=0,o=0;c=i[b+12>>2];h=c;e=c;c=i[b+20>>2];f=c;g=i[b+16>>2];d=g+4|0;if(d>>>0<4){c=c+1|0}l=i[b+8>>2];n=d;d=c;a:{if((e|0)<(c|0)?1:(e|0)<=(c|0)?l>>>0<n>>>0:0){break a}c=g+i[b>>2]|0;e=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=n;i[b+20>>2]=d;if(k[b+38>>1]<=513){c=f;d=g+8|0;if(d>>>0<8){c=c+1|0}f=d;d=c;if((h|0)<(c|0)?1:(h|0)<=(c|0)?l>>>0<f>>>0:0){break a}i[b+16>>2]=f;i[b+20>>2]=d}if(!(e&1)){break a}b=r(e)^31;c=b+ -1|0;if(c>>>0<=28){i[a+8>>2]=b+1;b=-2<<b;d=-2-b|0;i[a+16>>2]=d;i[a+12>>2]=b^-1;i[a+24>>2]=(d|0)/2;m[a+20>>2]=p(2)/p(d|0)}o=c>>>0<29}return o|0}function ma(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,h=0,k=0;d=i[b+88>>2];if(!(!d|i[d>>2]!=1)){c=i[d+8>>2];i[a+4>>2]=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);f=a+8|0;h=i[a+8>>2];e=i[a+12>>2]-h>>2;c=g[b+24|0];a:{if(e>>>0<c>>>0){na(f,c-e|0);c=j[b+24|0];break a}if(e>>>0<=c>>>0){break a}i[a+12>>2]=h+(c<<2)}h=1;e=i[d+8>>2];b:{if(c<<24>>24<1){b=4;break b}b=c&255;k=b>>>0>1?b:1;f=i[f>>2];c=0;b=4;while(1){d=b+e|0;m[f+(c<<2)>>2]=(Pn(2,j[d|0]|j[d+1|0]<<8|(j[d+2|0]<<16|j[d+3|0]<<24)),Qn());b=b+4|0;c=c+1|0;if((k|0)!=(c|0)){continue}break}}c=a;a=b+e|0;m[c+20>>2]=(Pn(2,j[a|0]|j[a+1|0]<<8|(j[a+2|0]<<16|j[a+3|0]<<24)),Qn())}return h|0}function Ma(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=i[a+8>>2];e=i[a>>2];if(g>>>0<=d-e>>2>>>0){f=i[a+4>>2];d=f-e|0;h=d>>2;d=g>>>0>h>>>0?b+d|0:c;if((d|0)!=(b|0)){while(1){i[e>>2]=i[b>>2];e=e+4|0;b=b+4|0;if((d|0)!=(b|0)){continue}break}}if(g>>>0>h>>>0){b=c-d|0;if((b|0)>=1){f=pn(f,d,b)+b|0}i[a+4>>2]=f;return}i[a+4>>2]=e;return}if(e){i[a+4>>2]=e;nn(e);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;d=0}a:{if(g>>>0>=1073741824){break a}c=d>>1;c=d>>2>>>0<536870911?c>>>0<g>>>0?g:c:1073741823;if(c>>>0>=1073741824){break a}e=c<<2;c=Dm(e);i[a>>2]=c;i[a+4>>2]=c;i[a+8>>2]=c+e;if((f|0)>=1){c=pn(c,b,f)+f|0}i[a+4>>2]=c;return}Sm();x()}function $h(a,b,c){var d=0,e=0,f=0,h=0;d=J-32|0;J=d;a:{h=xn(b);if(h>>>0<4294967280){b:{c:{if(h>>>0>=11){e=h+16&-16;f=Dm(e);i[d+24>>2]=e|-2147483648;i[d+16>>2]=f;i[d+20>>2]=h;break c}g[d+27|0]=h;f=d+16|0;if(!h){break b}}pn(f,b,h)}g[f+h|0]=0;e=xn(c);if(e>>>0>=4294967280){break a}d:{e:{if(e>>>0>=11){b=e+16&-16;f=Dm(b);i[d+8>>2]=b|-2147483648;i[d>>2]=f;i[d+4>>2]=e;break e}g[d+11|0]=e;f=d;if(!e){break d}}pn(f,c,e)}g[e+f|0]=0;c=i[a+4>>2];b=-1;f:{if(!c){break f}c=_k(c,d+16|0,d);b=-1;if(!c){break f}b=ol(a,i[c+24>>2])}a=b;if(g[d+11|0]<=-1){nn(i[d>>2])}if(g[d+27|0]<=-1){nn(i[d+16>>2])}J=d+32|0;return a}Fm();x()}Fm();x()}function be(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=J-32|0;J=f;g=(e&1073741823)!=(e|0)?-1:e<<2;m=qn(Dm(g),0,g);g=m;j=i[g>>2];g=i[g+4>>2];l=i[b+4>>2];i[f+24>>2]=i[b>>2];i[f+28>>2]=l;i[f+8>>2]=j;i[f+12>>2]=g;j=a+8|0;Yd(f+16|0,j,f+8|0,f+24|0);i[c>>2]=i[f+16>>2];i[c+4>>2]=i[f+20>>2];if((e|0)<(d|0)){l=0-e<<2;a=e;while(1){h=a<<2;g=h+c|0;k=g+l|0;n=i[k>>2];k=i[k+4>>2];h=b+h|0;o=i[h+4>>2];i[f+24>>2]=i[h>>2];i[f+28>>2]=o;i[f+8>>2]=n;i[f+12>>2]=k;Yd(f+16|0,j,f+8|0,f+24|0);i[g>>2]=i[f+16>>2];i[g+4>>2]=i[f+20>>2];a=a+e|0;if((a|0)<(d|0)){continue}break}}nn(m);J=f+32|0;return 1}function Hg(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;d=(c>>>0)/3|0;Ig(i[a+12>>2],i[(i[i[a+8>>2]+96>>2]+o(d,12)|0)+(c-o(d,3)<<2)>>2]);f=i[a+4>>2];d=i[f+4>>2];a:{b:{c:{if((d|0)!=i[f+8>>2]){i[d>>2]=c;i[f+4>>2]=d+4;break c}h=i[f>>2];j=d-h|0;g=j>>2;e=g+1|0;if(e>>>0>=1073741824){break b}d=j>>1;e=g>>>0<536870911?d>>>0<e>>>0?e:d:1073741823;d=0;d:{if(!e){break d}if(e>>>0>=1073741824){break a}d=Dm(e<<2)}g=d+(g<<2)|0;i[g>>2]=c;c=d+(e<<2)|0;e=g+4|0;if((j|0)>=1){pn(d,h,j)}i[f+8>>2]=c;i[f+4>>2]=e;i[f>>2]=d;if(!h){break c}nn(h)}a=i[a+4>>2];i[i[a+12>>2]+(b<<2)>>2]=i[a+24>>2];i[a+24>>2]=i[a+24>>2]+1;return}Sm();x()}Ba(12220);x()}function le(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;f=J-32|0;J=f;h=(e&1073741823)!=(e|0)?-1:e<<2;h=qn(Dm(h),0,h);g=i[b>>2];j=i[b+4>>2];l=i[h+4>>2];i[f+16>>2]=i[h>>2];i[f+20>>2]=l;i[f+8>>2]=g;i[f+12>>2]=j;j=a+8|0;ge(f+24|0,j,f+16|0,f+8|0);i[c>>2]=i[f+24>>2];i[c+4>>2]=i[f+28>>2];if((e|0)<(d|0)){l=0-e<<2;a=e;while(1){g=a<<2;k=g+b|0;n=i[k>>2];k=i[k+4>>2];g=c+g|0;m=g+l|0;o=i[m+4>>2];i[f+16>>2]=i[m>>2];i[f+20>>2]=o;i[f+8>>2]=n;i[f+12>>2]=k;ge(f+24|0,j,f+16|0,f+8|0);i[g>>2]=i[f+24>>2];i[g+4>>2]=i[f+28>>2];a=a+e|0;if((a|0)<(d|0)){continue}break}}nn(h);J=f+32|0;return 1}function he(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0,n=0;c=i[b+12>>2];h=c;e=c;c=i[b+20>>2];f=c;g=i[b+16>>2];d=g+4|0;if(d>>>0<4){c=c+1|0}k=i[b+8>>2];l=d;d=c;a:{if((e|0)<(c|0)?1:(e|0)<=(c|0)?k>>>0<l>>>0:0){break a}c=g+i[b>>2]|0;e=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=l;i[b+20>>2]=d;c=f;d=g+8|0;if(d>>>0<8){c=c+1|0}f=d;d=c;if((h|0)<(c|0)?1:(h|0)<=(c|0)?k>>>0<f>>>0:0){break a}i[b+16>>2]=f;i[b+20>>2]=d;if(!(e&1)){break a}b=r(e)^31;if(b+ -1>>>0>28){break a}n=1;i[a+8>>2]=b+1;b=-2<<b;c=-2-b|0;i[a+16>>2]=c;i[a+12>>2]=b^-1;i[a+24>>2]=(c|0)/2;m[a+20>>2]=p(2)/p(c|0)}return n|0}function Wb(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;f=i[a+8>>2];d=i[a+4>>2];if(f-d>>2>>>0>=b>>>0){e=a;if(b){a=(b<<2)+d|0;while(1){i[d>>2]=i[c>>2];d=d+4|0;if((a|0)!=(d|0)){continue}break}}else{a=d}i[e+4>>2]=a;return}a:{g=i[a>>2];h=d-g|0;e=h>>2;d=e+b|0;if(d>>>0<1073741824){j=e<<2;f=f-g|0;e=f>>1;f=f>>2>>>0<536870911?e>>>0<d>>>0?d:e:1073741823;e=0;b:{if(!f){break b}if(f>>>0>=1073741824){break a}e=Dm(f<<2)}d=j+e|0;b=d+(b<<2)|0;c=i[c>>2];while(1){i[d>>2]=c;d=d+4|0;if((b|0)!=(d|0)){continue}break}c=e+(f<<2)|0;if((h|0)>=1){pn(e,g,h)}i[a+8>>2]=c;i[a+4>>2]=b;i[a>>2]=e;if(g){nn(g)}return}Sm();x()}Ba(1972);x()}function Ta(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0;f=i[a+8>>2];d=i[a+4>>2];if(f-d>>2>>>0>=b>>>0){e=a;if(b){a=(b<<2)+d|0;while(1){i[d>>2]=i[c>>2];d=d+4|0;if((a|0)!=(d|0)){continue}break}}else{a=d}i[e+4>>2]=a;return}a:{g=i[a>>2];h=d-g|0;e=h>>2;d=e+b|0;if(d>>>0<1073741824){j=e<<2;f=f-g|0;e=f>>1;f=f>>2>>>0<536870911?e>>>0<d>>>0?d:e:1073741823;e=0;b:{if(!f){break b}if(f>>>0>=1073741824){break a}e=Dm(f<<2)}d=j+e|0;b=d+(b<<2)|0;c=i[c>>2];while(1){i[d>>2]=c;d=d+4|0;if((b|0)!=(d|0)){continue}break}c=e+(f<<2)|0;if((h|0)>=1){pn(e,g,h)}i[a+8>>2]=c;i[a+4>>2]=b;i[a>>2]=e;if(g){nn(g)}return}Sm();x()}Ba(1496);x()}function Dk(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){d=a;if(b){a=(b<<2)+c|0;while(1){i[c>>2]=i[3571];c=c+4|0;if((a|0)!=(c|0)){continue}break}}else{a=c}i[d+4>>2]=a;return}a:{f=i[a>>2];g=c-f|0;d=g>>2;c=d+b|0;if(c>>>0<1073741824){h=d<<2;e=e-f|0;d=e>>1;e=e>>2>>>0<536870911?d>>>0<c>>>0?c:d:1073741823;d=0;b:{if(!e){break b}if(e>>>0>=1073741824){break a}d=Dm(e<<2)}c=h+d|0;b=c+(b<<2)|0;h=i[3571];while(1){i[c>>2]=h;c=c+4|0;if((b|0)!=(c|0)){continue}break}c=d+(e<<2)|0;if((g|0)>=1){pn(d,f,g)}i[a+8>>2]=c;i[a+4>>2]=b;i[a>>2]=d;if(f){nn(f)}return}Sm();x()}Ba(14288);x()}function ji(a,b,c){var d=0,e=0,f=0,h=0,k=0,l=0,n=0;d=J-16|0;J=d;k=i[a+80>>2];l=g[b+24|0];a=i[3527];i[d+8>>2]=i[3526];i[d+12>>2]=a;a=i[3525];i[d>>2]=i[3524];i[d+4>>2]=a;a=o(k,l);f=i[c>>2];e=i[c+4>>2]-f>>2;a:{if(a>>>0>e>>>0){na(c,a-e|0);break a}if(a>>>0>=e>>>0){break a}i[c+4>>2]=f+(a<<2)}b:{if(!k){f=0;break b}f=1;while(1){a=h;e=b;if(!j[e+84|0]){a=i[i[b+68>>2]+(h<<2)>>2]}if(!$c(e,a,g[b+24|0],d)){break b}if((l|0)>=1){e=i[c>>2];a=0;while(1){m[e+(n<<2)>>2]=m[(a<<2)+d>>2];n=n+1|0;a=a+1|0;if((l|0)!=(a|0)){continue}break}}h=h+1|0;f=h>>>0<k>>>0;if((k|0)!=(h|0)){continue}break}}J=d+16|0;return(f^-1)&1}function Pb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;a:{f=i[a+4>>2];b:{if((f|0)!=i[a>>2]){c=f;break b}e=i[a+8>>2];c=i[a+12>>2];if(e>>>0<c>>>0){d=((c-e>>2)+1|0)/2<<2;c=d+e|0;g=e-f|0;if(g){c=c-g|0;rn(c,f,g);e=i[a+8>>2]}i[a+4>>2]=c;i[a+8>>2]=e+d;break b}c=c-f|0;d=c?c>>1:1;if(d>>>0>=1073741824){break a}c=d<<2;h=Dm(c);g=h+c|0;c=(d+3&-4)+h|0;j=c;d=e-f|0;if(d){j=c+d|0;e=c;d=f;while(1){i[e>>2]=i[d>>2];d=d+4|0;e=e+4|0;if((j|0)!=(e|0)){continue}break}}i[a+12>>2]=g;i[a+8>>2]=j;i[a+4>>2]=c;i[a>>2]=h;if(!f){break b}nn(f);c=i[a+4>>2]}i[c+ -4>>2]=i[b>>2];i[a+4>>2]=i[a+4>>2]+ -4;return}Ba(1756);x()}function Nk(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){d=a;if(b){a=(b<<2)+c|0;while(1){i[c>>2]=1;c=c+4|0;if((a|0)!=(c|0)){continue}break}}else{a=c}i[d+4>>2]=a;return}a:{f=i[a>>2];g=c-f|0;d=g>>2;c=d+b|0;if(c>>>0<1073741824){h=d<<2;e=e-f|0;d=e>>1;e=e>>2>>>0<536870911?d>>>0<c>>>0?c:d:1073741823;d=0;b:{if(!e){break b}if(e>>>0>=1073741824){break a}d=Dm(e<<2)}c=h+d|0;b=c+(b<<2)|0;while(1){i[c>>2]=1;c=c+4|0;if((b|0)!=(c|0)){continue}break}c=d+(e<<2)|0;if((g|0)>=1){pn(d,f,g)}i[a+8>>2]=c;i[a+4>>2]=b;i[a>>2]=d;if(f){nn(f)}return}Sm();x()}Ba(14408);x()}function sa(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=0,n=0,o=0,q=0,r=0,s=0,t=0,u=0,v=p(0);f=J-16|0;J=f;if(i[c+28>>2]==9){d=i[a+4>>2];e=g[c+24|0];h=e<<2;j=Dm((e&1073741823)!=(e|0)?-1:h);k=Kh(f+8|0);l=Mh(k,m[a+20>>2],-1<<d^-1);a:{if(!l){break a}n=i[c+80>>2];if(!n){break a}s=i[i[b>>2]>>2]+i[b+48>>2]|0;t=(e|0)<1;d=0;while(1){if(!t){u=i[a+8>>2];v=m[k>>2];b=0;while(1){o=b<<2;m[o+j>>2]=p(v*p(i[(d<<2)+s>>2]))+m[u+o>>2];d=d+1|0;b=b+1|0;if((e|0)!=(b|0)){continue}break}}pn(i[i[c+64>>2]>>2]+q|0,j,h);q=h+q|0;r=r+1|0;if((r|0)!=(n|0)){continue}break}}nn(j)}J=f+16|0;return l|0}function Pe(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0,l=0;f=a+4|0;a:{a=i[a+4>>2];if(a){e=j[c+11|0];d=e<<24>>24<0;k=d?i[c>>2]:c;e=d?i[c+4>>2]:e;while(1){c=j[a+27|0];d=c<<24>>24<0;c=d?i[a+20>>2]:c;l=c>>>0<e>>>0;b:{c:{d:{e:{f:{h=l?c:e;g:{if(h){g=a+16|0;d=d?i[g>>2]:g;g=Nl(k,d,h);if(!g){if(e>>>0<c>>>0){break g}break f}if((g|0)>-1){break f}break g}if(e>>>0>=c>>>0){break e}}c=i[a>>2];if(c){break b}i[b>>2]=a;return a}c=Nl(d,k,h);if(c){break d}}if(l){break c}break a}if((c|0)>-1){break a}}f=a+4|0;c=i[a+4>>2];if(!c){break a}a=f}f=a;a=c;continue}}i[b>>2]=f;return f}i[b>>2]=a;return f}function Ob(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;a:{e=i[a+8>>2];b:{if((e|0)!=i[a+12>>2]){break b}f=i[a+4>>2];g=i[a>>2];if(f>>>0>g>>>0){g=((f-g>>2)+1|0)/-2<<2;c=g+f|0;d=e-f|0;if(d){rn(c,f,d);f=i[a+4>>2]}e=c+d|0;i[a+8>>2]=e;i[a+4>>2]=f+g;break b}c=e-g|0;c=c?c>>1:1;if(c>>>0>=1073741824){break a}d=c<<2;h=Dm(d);j=h+d|0;d=e-f|0;c=(c&-4)+h|0;e=c;if(d){e=c+d|0;d=c;while(1){i[d>>2]=i[f>>2];f=f+4|0;d=d+4|0;if((d|0)!=(e|0)){continue}break}}i[a+12>>2]=j;i[a+8>>2]=e;i[a+4>>2]=c;i[a>>2]=h;if(!g){break b}nn(g);e=i[a+8>>2]}i[e>>2]=i[b>>2];i[a+8>>2]=i[a+8>>2]+4;return}Ba(1756);x()}function Ja(a,b){var c=0;c=i[b+4>>2];i[a>>2]=i[b>>2];i[a+4>>2]=c;c=i[b+60>>2];i[a+56>>2]=i[b+56>>2];i[a+60>>2]=c;c=i[b+52>>2];i[a+48>>2]=i[b+48>>2];i[a+52>>2]=c;c=i[b+44>>2];i[a+40>>2]=i[b+40>>2];i[a+44>>2]=c;c=i[b+36>>2];i[a+32>>2]=i[b+32>>2];i[a+36>>2]=c;c=i[b+28>>2];i[a+24>>2]=i[b+24>>2];i[a+28>>2]=c;c=i[b+20>>2];i[a+16>>2]=i[b+16>>2];i[a+20>>2]=c;c=i[b+12>>2];i[a+8>>2]=i[b+8>>2];i[a+12>>2]=c;i[a+88>>2]=0;i[a+64>>2]=0;i[a+68>>2]=0;i[a+72>>2]=0;i[a+76>>2]=0;g[a+77|0]=0;g[a+78|0]=0;g[a+79|0]=0;g[a+80|0]=0;g[a+81|0]=0;g[a+82|0]=0;g[a+83|0]=0;g[a+84|0]=0;return a}function Ih(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0,l=0;g=a+4|0;a=i[a+4>>2];a:{b:{if(!a){break b}d=j[b+11|0];c=d<<24>>24<0;k=c?i[b>>2]:b;e=c?i[b+4>>2]:d;c=g;while(1){b=j[a+27|0];l=b<<24>>24<0;h=l?i[a+20>>2]:b;f=e>>>0<h>>>0;d=f?e:h;c:{if(d){b=a+16|0;b=Nl(l?i[b>>2]:b,k,d);if(b){break c}}b=h>>>0<e>>>0?-1:f}c=(b|0)<0?c:a;a=i[(b>>>29&4)+a>>2];if(a){continue}break}if((c|0)==(g|0)){break b}a=j[c+27|0];f=a<<24>>24<0;d:{d=f?i[c+20>>2]:a;b=d>>>0<e>>>0?d:e;if(b){a=c+16|0;a=Nl(k,f?i[a>>2]:a,b);if(a){break d}}if(e>>>0<d>>>0){break b}break a}if((a|0)>-1){break a}}c=g}return c}function cl(a,b,c,d){var e=0,f=0,h=0,j=0,k=0,l=0,m=0;h=J-16|0;J=h;l=a;j=Pe(b,h+12|0,c);c=i[j>>2];if(c){b=0}else{c=Dm(40);e=d+8|0;i[c+24>>2]=i[e>>2];f=i[d+4>>2];i[c+16>>2]=i[d>>2];i[c+20>>2]=f;i[d>>2]=0;i[d+4>>2]=0;i[e>>2]=0;i[c+36>>2]=0;i[c+28>>2]=0;i[c+32>>2]=0;f=i[d+12>>2];k=i[d+16>>2]-f|0;e=0;a:{if(!k){break a}e=c+28|0;rb(e,k);f=i[d+12>>2];m=i[d+16>>2]-f|0;e=i[e>>2]}pn(e,f,m);i[c+8>>2]=i[h+12>>2];i[c>>2]=0;i[c+4>>2]=0;i[j>>2]=c;e=i[i[b>>2]>>2];d=c;b:{if(!e){break b}i[b>>2]=e;d=i[j>>2]}Me(i[b+4>>2],d);i[b+8>>2]=i[b+8>>2]+1;b=1}g[l+4|0]=b;i[a>>2]=c;J=h+16|0}function ua(a,b,c){var d=0,e=0,f=0,g=0,h=0;f=c-b|0;g=f>>2;d=i[a+8>>2];e=i[a>>2];if(g>>>0<=d-e>>2>>>0){d=i[a+4>>2]-e|0;f=d>>2;d=g>>>0>f>>>0?b+d|0:c;h=d-b|0;if(h){rn(e,b,h)}if(g>>>0>f>>>0){b=i[a+4>>2];c=c-d|0;if((c|0)>=1){b=pn(b,d,c)+c|0}i[a+4>>2]=b;return}i[a+4>>2]=e+h;return}if(e){i[a+4>>2]=e;nn(e);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;d=0}a:{if(g>>>0>=1073741824){break a}c=d>>1;c=d>>2>>>0<536870911?c>>>0<g>>>0?g:c:1073741823;if(c>>>0>=1073741824){break a}e=c<<2;c=Dm(e);i[a>>2]=c;i[a+4>>2]=c;i[a+8>>2]=c+e;if((f|0)>=1){c=pn(c,b,f)+f|0}i[a+4>>2]=c;return}Sm();x()}function Se(a,b,c){var d=0,e=0,f=0,g=0;a:{b:{d=i[b+16>>2];f=i[b+12>>2];e=i[b+20>>2];c:{if((f|0)<(e|0)?1:(f|0)<=(e|0)?l[b+8>>2]<=d>>>0:0){break c}f=j[d+i[b>>2]|0];d=d+1|0;if(d>>>0<1){e=e+1|0}i[b+16>>2]=d;i[b+20>>2]=e;d:{e:{switch(f+ -1|0){case 8:return We(a,b,c);case 9:return Xe(a,b,c);case 10:return Ye(a,b,c);case 11:return Ze(a,b,c);case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:break b;case 13:case 14:case 15:case 16:break a;case 17:break d;case 12:break e;default:break c}}return _e(a,b,c)}g=$e(a,b,c)}return g}return Ve(a,b,c)}return $e(a,b,c)}function Ch(a,b,c){var d=0,e=0,f=0,h=0;a:{b:{if(!b){break b}if(k[a+38>>1]<=513){e=i[a+12>>2];b=i[a+20>>2];f=i[a+16>>2];h=f+8|0;if(h>>>0<8){b=b+1|0}if((e|0)<(b|0)?1:(e|0)<=(b|0)?l[a+8>>2]<h>>>0:0){break a}b=f+i[a>>2]|0;d=j[b+4|0]|j[b+5|0]<<8|(j[b+6|0]<<16|j[b+7|0]<<24);i[c>>2]=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[c+4>>2]=d;c=i[a+20>>2];d=i[a+16>>2]+8|0;if(d>>>0<8){c=c+1|0}i[a+16>>2]=d;i[a+20>>2]=c;break b}if(!Dh(1,c,a)){break a}}g[a+36|0]=1;i[a+32>>2]=0;b=i[a+16>>2];c=b+i[a>>2]|0;i[a+24>>2]=c;d=a;a=i[a+8>>2];i[d+28>>2]=c+(a-b|0);d=1}return d}function ch(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;c=i[a+4>>2];if((c|0)!=i[a+8>>2]){e=i[b+4>>2];i[c>>2]=i[b>>2];i[c+4>>2]=e;i[c+8>>2]=i[b+8>>2];i[a+4>>2]=c+12;return}a:{e=i[a>>2];g=c-e|0;c=(g|0)/12|0;d=c+1|0;if(d>>>0<357913942){h=c<<1;d=c>>>0<178956970?h>>>0<d>>>0?d:h:357913941;f=0;b:{if(!d){break b}if(d>>>0>=357913942){break a}f=Dm(o(d,12))}c=f+o(c,12)|0;h=i[b+4>>2];i[c>>2]=i[b>>2];i[c+4>>2]=h;i[c+8>>2]=i[b+8>>2];b=c+o((g|0)/-12|0,12)|0;f=f+o(d,12)|0;c=c+12|0;if((g|0)>=1){pn(b,e,g)}i[a+8>>2]=f;i[a+4>>2]=c;i[a>>2]=b;if(e){nn(e)}return}Sm();x()}Ba(13352);x()}function tl(a,b){var c=0,d=0,e=0,f=0;a:{if((b|0)<0){break a}c=i[a+24>>2];d=i[a+28>>2];if((c|0)==(d|0)){break a}while(1){f=c+4|0;e=i[c>>2];if(i[e+24>>2]==(b|0)){b:{if((d|0)!=(f|0)){while(1){b=i[f>>2];i[f>>2]=0;i[c>>2]=b;if(e){qh(e+12|0,i[e+16>>2]);rh(e,i[e+4>>2]);nn(e)}c=c+4|0;f=f+4|0;if((d|0)!=(f|0)){e=i[c>>2];continue}break}d=i[a+28>>2];if((d|0)==(c|0)){break b}}while(1){d=d+ -4|0;b=i[d>>2];i[d>>2]=0;if(b){qh(b+12|0,i[b+16>>2]);rh(b,i[b+4>>2]);nn(b)}if((c|0)!=(d|0)){continue}break}}i[a+28>>2]=c;return}c=f;if((d|0)!=(c|0)){continue}break}}}function Tl(a,b,c){var d=0,e=0,f=0;d=J-208|0;J=d;i[d+204>>2]=c;c=0;qn(d+160|0,0,40);i[d+200>>2]=i[d+204>>2];a:{if((Ul(0,b,d+200|0,d+80|0,d+160|0)|0)<0){break a}c=i[a+76>>2]>=0?1:c;e=i[a>>2];if(g[a+74|0]<=0){i[a>>2]=e&-33}f=e&32;b:{if(i[a+48>>2]){Ul(a,b,d+200|0,d+80|0,d+160|0);break b}i[a+48>>2]=80;i[a+16>>2]=d+80;i[a+28>>2]=d;i[a+20>>2]=d;e=i[a+44>>2];i[a+44>>2]=d;Ul(a,b,d+200|0,d+80|0,d+160|0);if(!e){break b}M[i[a+36>>2]](a,0,0)|0;i[a+48>>2]=0;i[a+44>>2]=e;i[a+28>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0}i[a>>2]=f|i[a>>2];if(!c){break a}}J=d+208|0}function Gk(a,b,c){var d=0,e=0,f=0,g=0;a:{if((b|c)>=0){b:{if(b>>>0>1431655765){break b}d=o(b,3);Hk(a,d,14280);Hk(a+12|0,d,14284);d=i[a+24>>2];c:{if(i[a+32>>2]-d>>2>>>0>=c>>>0){break c}if(c>>>0>=1073741824){break a}e=i[a+28>>2];f=c<<2;c=Dm(f);f=c+f|0;e=e-d|0;g=e+c|0;if((e|0)>=1){pn(c,d,e)}i[a+32>>2]=f;i[a+28>>2]=g;i[a+24>>2]=c;if(!d){break c}nn(d)}i[a+80>>2]=0;i[a+84>>2]=0;d=a+76|0;c=i[d>>2];i[d>>2]=0;if(c){nn(c)}i[a+68>>2]=0;i[a+72>>2]=0;c=a- -64|0;a=i[c>>2];i[c>>2]=0;if(!a){break b}nn(a)}a=b>>>0<1431655766}else{a=0}return a}Ba(14288);x()}function fg(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,k=0;f=J-16|0;J=f;a:{if(!Uf(a,b)){break a}g=i[b+12>>2];c=i[b+20>>2];h=i[b+16>>2];e=h+4|0;if(e>>>0<4){c=c+1|0}d=e;e=c;if((g|0)<(c|0)?1:(g|0)<=(c|0)?l[b+8>>2]<d>>>0:0){break a}c=h+i[b>>2]|0;c=j[c|0]|j[c+1|0]<<8|(j[c+2|0]<<16|j[c+3|0]<<24);i[b+16>>2]=d;i[b+20>>2]=e;if((c|0)<0){break a}d=i[a+152>>2];if((c|0)>=(d|0)){break a}i[f+12>>2]=0;e=i[a+156>>2];c=i[a+160>>2]-e>>2;b:{if(d>>>0>c>>>0){Ta(a+156|0,d-c|0,f+12|0);break b}if(d>>>0>=c>>>0){break b}i[a+160>>2]=e+(d<<2)}k=Ae(a+168|0,b)}J=f+16|0;return k}function fb(a){var b=0,c=0,d=0,e=0;d=i[a+132>>2];if(d){b=i[a+136>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;nn(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+132>>2]}i[a+136>>2]=d;nn(c)}d=i[a+120>>2];if(d){b=i[a+124>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;nn(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+120>>2]}i[a+124>>2]=d;nn(c)}b=i[a+108>>2];if(b){i[a+112>>2]=b;nn(b)}b=i[a+96>>2];if(b){i[a+100>>2]=b;nn(b)}we(a+76|0);we(a+56|0);we(a+36|0);we(a+16|0)}function bn(a){var b=0,c=0,d=0,e=0;b=J+ -64|0;J=b;d=i[a>>2];c=i[d+ -4>>2];d=i[d+ -8>>2];i[b+20>>2]=0;i[b+16>>2]=16520;i[b+12>>2]=a;i[b+8>>2]=16568;qn(b+24|0,0,39);a=a+d|0;a:{if($m(c,16568,0)){i[b+56>>2]=1;M[i[i[c>>2]+20>>2]](c,b+8|0,a,a,1,0);e=i[b+32>>2]==1?a:0;break a}M[i[i[c>>2]+24>>2]](c,b+8|0,a,1,0);b:{switch(i[b+44>>2]){case 0:e=i[b+48>>2]==1?i[b+36>>2]==1?i[b+40>>2]==1?i[b+28>>2]:0:0:0;break a;case 1:break b;default:break a}}if(i[b+32>>2]!=1){if(i[b+48>>2]|i[b+36>>2]!=1|i[b+40>>2]!=1){break a}}e=i[b+24>>2]}J=b- -64|0;return e}function Lb(a){a=a|0;var b=0,c=0,d=0;i[a>>2]=1572;b=i[a+60>>2];if(b){c=i[a- -64>>2];d=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;d=i[c>>2];i[c>>2]=0;if(d){Sa(d)}if((b|0)!=(c|0)){continue}break}d=i[a+60>>2]}i[a+64>>2]=b;nn(d)}b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}b=i[a+36>>2];if(b){c=i[a+40>>2];d=b;b:{if((b|0)==(c|0)){break b}while(1){c=c+ -24|0;M[i[i[c>>2]>>2]](c)|0;if((b|0)!=(c|0)){continue}break}d=i[a+36>>2]}i[a+40>>2]=b;nn(d)}i[a>>2]=1360;b=i[a+16>>2];if(b){i[a+20>>2]=b;nn(b)}b=i[a+4>>2];if(b){i[a+8>>2]=b;nn(b)}return a|0}function nb(a){var b=0,c=0,d=0,e=0;d=i[a+640>>2];if(d){b=i[a+644>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;nn(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+640>>2]}i[a+644>>2]=d;nn(c)}d=i[a+628>>2];if(d){b=i[a+632>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;nn(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+628>>2]}i[a+632>>2]=d;nn(c)}b=i[a+616>>2];if(b){i[a+620>>2]=b;nn(b)}b=i[a+604>>2];if(b){i[a+608>>2]=b;nn(b)}we(a+584|0);we(a+564|0);we(a+544|0)}function Zk(a,b,c){var d=0,e=0,f=0;e=J-16|0;J=e;a:{b:{if(!c){break b}i[a>>2]=b;i[e+12>>2]=0;d=0;if(!Xk(1,e+12|0,b)){break a}c:{f=i[e+12>>2];if(f){b=0;while(1){if(!Xk(1,e+8|0,i[a>>2])){break b}d=Dm(28);i[d+4>>2]=0;i[d+8>>2]=0;i[d+16>>2]=0;i[d+20>>2]=0;i[d>>2]=d+4;i[d+12>>2]=d+16;i[d+24>>2]=i[e+8>>2];if(!Wk(a,d)){break c}i[e>>2]=d;$k(c,e);d=i[e>>2];i[e>>2]=0;if(d){qh(d+12|0,i[d+16>>2]);rh(d,i[d+4>>2]);nn(d)}b=b+1|0;if((f|0)!=(b|0)){continue}break}}d=Wk(a,c);break a}qh(d+12|0,i[d+16>>2]);rh(d,i[d+4>>2]);nn(d)}d=0}J=e+16|0;return d}function jb(a){var b=0,c=0,d=0,e=0;d=i[a+128>>2];if(d){b=i[a+132>>2];c=d;a:{if((d|0)==(b|0)){break a}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;nn(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+128>>2]}i[a+132>>2]=d;nn(c)}d=i[a+116>>2];if(d){b=i[a+120>>2];c=d;b:{if((d|0)==(b|0)){break b}while(1){c=b+ -12|0;e=i[c>>2];if(e){i[b+ -8>>2]=e;nn(e)}b=c;if((b|0)!=(d|0)){continue}break}c=i[a+116>>2]}i[a+120>>2]=d;nn(c)}b=i[a+104>>2];if(b){i[a+108>>2]=b;nn(b)}b=i[a+92>>2];if(b){i[a+96>>2]=b;nn(b)}we(a+72|0);we(a+52|0);we(a+32|0)}function cc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;c=i[a+60>>2];a:{if(!c){break a}i[c+4>>2]=a+48;if(!(M[i[i[c>>2]+12>>2]](c)|0)){break a}b:{d=M[i[i[a>>2]+24>>2]](a)|0;if((d|0)<1){break b}c=0;while(1){c:{f=i[(M[i[i[a>>2]+28>>2]](a)|0)+4>>2];g=M[i[i[a>>2]+20>>2]](a,c)|0;e=i[a+60>>2];if(!(M[i[i[e>>2]+8>>2]](e,i[i[f+8>>2]+(g<<2)>>2])|0)){break c}c=c+1|0;if((d|0)!=(c|0)){continue}break b}break}return 0}if(!(M[i[i[a>>2]+36>>2]](a,b)|0)){break a}if(!(M[i[i[a>>2]+40>>2]](a,b)|0)){break a}h=M[i[i[a>>2]+44>>2]](a)|0}return h|0}function wl(a,b,c){var d=0,e=0,f=0;a:{if(b>>>0<=63){b=0;d=i[a+12>>2];if(d>>>0<2){break a}c=i[c>>2];a=1;while(1){b=l[c+(b<<2)>>2]>l[c+(a<<2)>>2]?a:b;a=a+1|0;if((d|0)!=(a|0)){continue}break}break a}b=i[a+580>>2];d=32-b|0;if((d|0)>=4){c=i[a+576>>2];if((c|0)==i[a+568>>2]){return 0}d=i[c>>2];e=b+4|0;i[a+580>>2]=e;b=d<<b>>>28|0;if((e|0)!=32){break a}i[a+580>>2]=0;i[a+576>>2]=c+4;return b}c=i[a+576>>2];e=c+4|0;if((e|0)==i[a+568>>2]){return 0}f=i[c>>2];i[a+576>>2]=e;i[a+580>>2]=b+ -28;a=60-b|0;b=i[c+4>>2]>>>a|f<<b>>>a-d}return b}function xh(a,b,c,d){var e=0,f=0,g=0;a:{if(!b){if((d|0)<0?1:(d|0)<=0?c>>>0<0:0){return 0}d=i[a>>2];b=i[a+4>>2]-d|0;if(b>>>0<c>>>0){rb(a,c-b|0);break a}if(b>>>0<=c>>>0){break a}i[a+4>>2]=c+d;break a}if((d|0)<0?1:(d|0)<=0?c>>>0<0:0){return 0}e=c;g=i[a>>2];f=i[a+4>>2]-g|0;b:{c:{if(0>(d|0)?1:0>=(d|0)?f>>>0>=c>>>0:0){break c}if(f>>>0<e>>>0){rb(a,e-f|0);break b}if(f>>>0<=e>>>0){break c}i[a+4>>2]=e+g}if(!e){break a}}rn(i[a>>2],b,e)}b=a+24|0;c=b;d=b;a=i[b+4>>2];b=i[b>>2]+1|0;if(b>>>0<1){a=a+1|0}i[d>>2]=b;i[c+4>>2]=a;return 1}function wc(a,b,c,d,e,f){var g=0,h=0,j=0,k=0;g=J-32|0;J=g;j=i[i[i[b+4>>2]+8>>2]+(d<<2)>>2];a:{b:{if((M[i[i[b>>2]+8>>2]](b)|0)!=1|c+ -1>>>0>5){break b}k=M[i[i[b>>2]+36>>2]](b)|0;h=M[i[i[b>>2]+44>>2]](b,d)|0;if(!(h?k:0)){i[a>>2]=0;break a}d=M[i[i[b>>2]+40>>2]](b,d)|0;if(d){b=i[b+44>>2];i[g+12>>2]=d;i[g+8>>2]=b;i[g+20>>2]=h;i[g+16>>2]=h+12;xc(a,c,j,e,g+8|0,f);if(!i[a>>2]){break b}break a}b=i[b+44>>2];i[g+12>>2]=k;i[g+8>>2]=b;i[g+20>>2]=h;i[g+16>>2]=h+12;yc(a,c,j,e,g+8|0,f);if(i[a>>2]){break a}}i[a>>2]=0}J=g+32|0}function hn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if($m(a,i[b+8>>2],e)){gn(b,c,d);return}a:{if($m(a,i[b>>2],e)){if(!(i[b+20>>2]!=(c|0)?i[b+16>>2]!=(c|0):0)){if((d|0)!=1){break a}i[b+32>>2]=1;return}i[b+32>>2]=d;b:{if(i[b+44>>2]==4){break b}h[b+52>>1]=0;a=i[a+8>>2];M[i[i[a>>2]+20>>2]](a,b,c,c,1,e);if(j[b+53|0]){i[b+44>>2]=3;if(!j[b+52|0]){break b}break a}i[b+44>>2]=4}i[b+20>>2]=c;i[b+40>>2]=i[b+40>>2]+1;if(i[b+36>>2]!=1|i[b+24>>2]!=2){break a}g[b+54|0]=1;return}a=i[a+8>>2];M[i[i[a>>2]+24>>2]](a,b,c,d,e)}}function Ef(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=i[a+216>>2];if((c|0)!=i[a+220>>2]){while(1){a:{c=i[o(e,144)+c>>2];if((c|0)<0){break a}f=i[a+4>>2];d=i[f+8>>2];if((c|0)>=i[f+12>>2]-d>>2){break a}c=i[d+(c<<2)>>2];if((M[i[i[c>>2]+24>>2]](c)|0)<1){break a}d=0;while(1){if((M[i[i[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((d|0)<(M[i[i[c>>2]+24>>2]](c)|0)){continue}break a}break}a=i[a+216>>2]+o(e,144)|0;return(j[a+100|0]?a+4|0:0)|0}e=e+1|0;c=i[a+216>>2];if(e>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}}return 0}function hl(a,b,c){var d=0,e=0,f=0,h=0;d=J-48|0;J=d;f=Ih(a,b);if((f|0)!=(a+4|0)){bl(a,f)}f=0;i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;h=i[c>>2];e=i[c+4>>2]-h|0;if(e){rb(d,e);h=i[c>>2];c=i[d>>2]}else{c=0}pn(c,h,e);h=Gm(d+16|0,b);i[d+36>>2]=0;i[d+28>>2]=0;i[d+32>>2]=0;c=i[d>>2];e=i[d+4>>2]-c|0;b=0;a:{if(!e){break a}rb(d+28|0,e);c=i[d>>2];f=i[d+4>>2]-c|0;b=i[d+28>>2]}pn(b,c,f);cl(d+40|0,a,h,d+16|0);a=i[d+28>>2];if(a){i[d+32>>2]=a;nn(a)}if(g[d+27|0]<=-1){nn(i[d+16>>2])}a=i[d>>2];if(a){i[d+4>>2]=a;nn(a)}J=d+48|0}function Qc(a,b){var c=0,d=0;c=J-32|0;J=c;a:{b:{if(i[a+8>>2]<<5>>>0>=b>>>0){break b}i[c+24>>2]=0;i[c+16>>2]=0;i[c+20>>2]=0;if((b|0)<=-1){break a}b=(b+ -1>>>5|0)+1|0;d=Dm(b<<2);i[c+24>>2]=b;i[c+20>>2]=0;i[c+16>>2]=d;b=i[a>>2];i[c+12>>2]=0;i[c+8>>2]=b;d=i[a+4>>2];i[c+4>>2]=d&31;i[c>>2]=b+(d>>>3&536870908);Rc(c+16|0,c+8|0,c);b=i[a>>2];i[a>>2]=i[c+16>>2];i[c+16>>2]=b;d=i[a+4>>2];i[a+4>>2]=i[c+20>>2];i[c+20>>2]=d;d=i[a+8>>2];i[a+8>>2]=i[c+24>>2];i[c+24>>2]=d;if(!b){break b}nn(b)}J=c+32|0;return}Sm();x()}function Ff(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=i[a+216>>2];if((c|0)!=i[a+220>>2]){while(1){a:{c=i[o(e,144)+c>>2];if((c|0)<0){break a}f=i[a+4>>2];d=i[f+8>>2];if((c|0)>=i[f+12>>2]-d>>2){break a}c=i[d+(c<<2)>>2];if((M[i[i[c>>2]+24>>2]](c)|0)<1){break a}d=0;while(1){if((M[i[i[c>>2]+20>>2]](c,d)|0)!=(b|0)){d=d+1|0;if((d|0)<(M[i[i[c>>2]+24>>2]](c)|0)){continue}break a}break}return(i[a+216>>2]+o(e,144)|0)+104|0}e=e+1|0;c=i[a+216>>2];if(e>>>0<(i[a+220>>2]-c|0)/144>>>0){continue}break}}return a+184|0}function Fb(a,b,c,d){var e=0,f=0,g=0,h=p(0),k=0,l=0,n=0;e=J-32|0;J=e;f=i[c>>2];h=m[c+4>>2];l=Kh(e+24|0);f=-1<<f^-1;Mh(l,h,f);c=i[a>>2];if((c|0)!=i[b>>2]){a=i[d+28>>2];while(1){g=i[c>>2];k=i[c+4>>2];h=m[l>>2];m[e+16>>2]=h*p(i[c+8>>2]-f|0);m[e+12>>2]=h*p(k-f|0);m[e+8>>2]=h*p(g-f|0);k=i[d+16>>2];g=i[k>>2];if(!j[g+84|0]){a=i[i[g+68>>2]+(a<<2)>>2]}n=a;a=i[g+40>>2];pn(i[i[g>>2]>>2]+o(n,a)|0,(e+8|0)+(i[k+4>>2]<<2)|0,a);a=i[d+28>>2]+1|0;i[d+28>>2]=a;c=c+12|0;if((c|0)!=i[b>>2]){continue}break}}J=e+32|0}function th(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;f=Dm(72);ab(f);a:{if((b|0)>=0){g=a+8|0;c=i[a+12>>2];h=i[a+8>>2];d=c-h>>2;b:{if((d|0)>(b|0)){break b}e=b+1|0;if(d>>>0<=b>>>0){Kf(g,e-d|0);break b}if(e>>>0>=d>>>0){break b}e=h+(e<<2)|0;if((e|0)!=(c|0)){while(1){c=c+ -4|0;d=i[c>>2];i[c>>2]=0;if(d){M[i[i[d>>2]+4>>2]](d)}if((c|0)!=(e|0)){continue}break}}i[a+12>>2]=e}c=i[g>>2]+(b<<2)|0;a=i[c>>2];i[c>>2]=f;if(!a){break a}M[i[i[a>>2]+4>>2]](a);break a}M[i[i[f>>2]+4>>2]](f)}return(b^-1)>>>31|0}function tb(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;a:{b:{if(b){if(b>>>0>=357913942){break b}e=o(b,12);b=Dm(e);i[a>>2]=b;i[a+4>>2]=b;f=b+e|0;i[a+8>>2]=f;g=i[c>>2];d=i[c+4>>2]-g|0;h=d>>2;j=h>>>0<1073741824;k=(d|0)<1;l=d>>>2<<2;while(1){i[b+8>>2]=0;i[b>>2]=0;i[b+4>>2]=0;if(d){if(!j){break a}c=Dm(d);i[b>>2]=c;i[b+4>>2]=c;i[b+8>>2]=c+(h<<2);e=b;if(!k){c=pn(c,g,d)+l|0}i[e+4>>2]=c}b=b+12|0;if((f|0)!=(b|0)){continue}break}i[a+4>>2]=f}return}Sm();x()}Sm();x()}function Vb(a){var b=0,c=0,d=0,e=0,f=0;b=i[a+8>>2];a:{if(j[b+84|0]){break a}c=i[a+16>>2];if(!c|!j[c+84|0]){break a}d=i[b+72>>2];e=i[b+68>>2];g[c+84|0]=0;d=d-e>>2;f=i[c+68>>2];e=i[c+72>>2]-f>>2;b:{if(d>>>0>e>>>0){Wb(c+68|0,d-e|0,1968);b=i[a+8>>2];break b}if(d>>>0>=e>>>0){break b}i[c+72>>2]=f+(d<<2)}if(j[b+84|0]){break a}c=i[b+68>>2];b=i[b+72>>2]-c|0;if(!b){break a}d=b>>2;e=i[i[a+16>>2]+68>>2];b=0;while(1){f=b<<2;i[f+e>>2]=i[c+f>>2];b=b+1|0;if(b>>>0<d>>>0){continue}break}}return i[a+16>>2]}function il(a,b,c){var d=0,e=0,f=0,g=0,h=0,j=0,k=0;e=J-16|0;J=e;f=a+12|0;j=Ih(f,b);k=a+16|0;a:{if((j|0)!=(k|0)){break a}g=Pe(f,e+12|0,b);d=i[g>>2];if(!d){d=Dm(32);Gm(d+16|0,b);i[d+28>>2]=0;i[d+8>>2]=i[e+12>>2];i[d>>2]=0;i[d+4>>2]=0;i[g>>2]=d;b=i[i[f>>2]>>2];h=d;b:{if(!b){break b}i[f>>2]=b;h=i[g>>2]}b=h;Me(i[a+16>>2],b);a=a+20|0;i[a>>2]=i[a>>2]+1}b=i[c>>2];i[c>>2]=0;c=d+28|0;a=i[c>>2];i[c>>2]=b;if(!a){break a}qh(a+12|0,i[a+16>>2]);rh(a,i[a+4>>2]);nn(a)}J=e+16|0;return(j|0)==(k|0)}function gh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0;a:{c=i[a+8>>2];b:{if((c|0)<0){break b}d=i[a+4>>2];b=i[d>>2];e=i[d+4>>2]-b>>2;c:{if(c>>>0>e>>>0){hh(d,c-e|0);f=i[a+8>>2];break c}f=c;if(c>>>0>=e>>>0){break c}i[d+4>>2]=b+(c<<2);f=c}g=f;if((f|0)<1){break b}a=i[a+4>>2];b=i[a+4>>2];d=i[a>>2];a=b-d|0;e=(a|0)>-1?a:-1;b=d-b|0;b=o((e|0)<1?e:1,((b|0)>(a|0)?b:a)>>>2|0);a=0;while(1){if((a|0)==(b|0)){break a}i[d+(a<<2)>>2]=a;a=a+1|0;if((a|0)<(g|0)){continue}break}}return(c^-1)>>>31|0}Tm();x()}function bi(a,b){var c=0,d=0;c=J-96|0;J=c;qn(c+16|0,0,76);i[c+92>>2]=-1;i[c+8>>2]=0;i[c>>2]=0;i[c+4>>2]=0;a:{if(ci(c+16|0,a,c)){a=i[b>>2];if(a){i[b+4>>2]=a;nn(a)}i[b>>2]=i[c>>2];i[b+4>>2]=i[c+4>>2];i[b+8>>2]=i[c+8>>2];d=i[c+84>>2];break a}a=i[c>>2];if(!a){break a}i[c+4>>2]=a;nn(a)}a=i[c+72>>2];if(a){nn(a)}a=i[c+48>>2];if(a){i[c+52>>2]=a;nn(a)}a=i[c+36>>2];if(a){i[c+40>>2]=a;nn(a)}a=i[c+24>>2];if(a){i[c+28>>2]=a;nn(a)}a=i[c+20>>2];i[c+20>>2]=0;if(a){Qf(c+16|4,a)}J=c+96|0;return d}function Kk(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=14760;b=i[a+68>>2];if(b){i[a+72>>2]=b;nn(b)}b=i[a+56>>2];if(b){i[a+60>>2]=b;nn(b)}b=i[a+44>>2];if(b){i[a+48>>2]=b;nn(b)}b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}b=i[a+20>>2];if(b){i[a+24>>2]=b;nn(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){Sa(b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;nn(b)}b=i[a+4>>2];i[a+4>>2]=0;if(b){lh(b)}return a|0}function _f(a){var b=0,c=0,d=0,e=0;c=1;d=i[a+140>>2];a:{if((d|0)<1){break a}b=d<<4;c=Dm((d|0)!=(d&268435455)?-1:b|4);i[c>>2]=d;c=c+4|0;d=c+b|0;b=c;while(1){b=ze(b)+16|0;if((d|0)!=(b|0)){continue}break}e=i[a+136>>2];i[a+136>>2]=c;if(e){d=e+ -4|0;c=i[d>>2];if(c){b=e+(c<<4)|0;while(1){b=b+ -16|0;if((e|0)!=(b|0)){continue}break}}nn(d)}c=1;if(i[a+140>>2]<1){break a}b=0;while(1){c=Ae(i[a+136>>2]+(b<<4)|0,a);if(!c){break a}b=b+1|0;if((b|0)<i[a+140>>2]){continue}break}}return c}function ei(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a>>2];a=i[e+4>>2];d=i[e+8>>2];if(a>>>0<d>>>0){i[a>>2]=i[b>>2];i[e+4>>2]=a+4;return}a:{f=i[e>>2];g=a-f|0;a=g>>2;c=a+1|0;if(c>>>0<1073741824){h=a<<2;d=d-f|0;a=d>>1;c=d>>2>>>0<536870911?a>>>0<c>>>0?c:a:1073741823;a=0;b:{if(!c){break b}if(c>>>0>=1073741824){break a}a=Dm(c<<2)}d=h+a|0;i[d>>2]=i[b>>2];b=a+(c<<2)|0;c=d+4|0;if((g|0)>=1){pn(a,f,g)}i[e+8>>2]=b;i[e+4>>2]=c;i[e>>2]=a;if(f){nn(f)}return}Sm();x()}Ba(14112);x()}function Kb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;a=i[a+4>>2];if(a){c=j[b+11|0];d=c<<24>>24<0;g=d?i[b>>2]:b;b=d?i[b+4>>2]:c;while(1){c=j[a+27|0];d=c<<24>>24<0;c=d?i[a+20>>2]:c;h=c>>>0<b>>>0;a:{b:{f=h?c:b;c:{if(f){e=a+16|0;d=d?i[e>>2]:e;e=Nl(g,d,f);d:{if(!e){if(b>>>0>=c>>>0){break d}break a}if((e|0)<=-1){break a}}c=Nl(d,g,f);if(!c){break c}if((c|0)<=-1){break b}return 1}if(b>>>0<c>>>0){break a}}if(h){break b}return 1}a=a+4|0}a=i[a>>2];if(a){continue}break}}return 0}function zk(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0<d>>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=Dm(d<<2)}b=b<<2;b=qn(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){pn(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(14288);x()}function ye(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0<d>>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=Dm(d<<2)}b=b<<2;b=qn(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){pn(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(10988);x()}function hh(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0<d>>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=Dm(d<<2)}b=b<<2;b=qn(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){pn(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(13352);x()}function na(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0<d>>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=Dm(d<<2)}b=b<<2;b=qn(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){pn(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(1244);x()}function Ra(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>2>>>0>=b>>>0){if(b){b=b<<2;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>2;d=g+b|0;if(d>>>0<1073741824){c=0;g=g<<2;e=e-f|0;j=e>>1;d=e>>2>>>0<536870911?j>>>0<d>>>0?d:j:1073741823;if(d){if(d>>>0>=1073741824){break a}c=Dm(d<<2)}b=b<<2;b=qn(c+g|0,0,b)+b|0;d=(d<<2)+c|0;if((h|0)>=1){pn(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(1496);x()}function _h(a,b){var c=0,d=0,e=0,f=0;c=J-32|0;J=c;d=xn(b);if(d>>>0<4294967280){a:{b:{if(d>>>0>=11){f=d+16&-16;e=Dm(f);i[c+24>>2]=f|-2147483648;i[c+16>>2]=e;i[c+20>>2]=d;break b}g[c+27|0]=d;e=c+16|0;if(!d){break a}}pn(e,b,d)}g[d+e|0]=0;g[c+4|0]=0;i[c>>2]=1701667182;g[c+11|0]=4;d=i[a+4>>2];b=-1;c:{if(!d){break c}d=_k(d,c,c+16|0);b=-1;if(!d){break c}b=ol(a,i[d+24>>2])}if(g[c+11|0]<=-1){nn(i[c>>2])}if(g[c+27|0]<=-1){nn(i[c+16>>2])}J=c+32|0;return b}Fm();x()}function bf(a,b){var c=0,d=0,e=0,f=0,g=0,h=0,j=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>3>>>0>=b>>>0){if(b){b=b<<3;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];h=c-f|0;g=h>>3;d=g+b|0;if(d>>>0<536870912){c=0;g=g<<3;e=e-f|0;j=e>>2;d=e>>3>>>0<268435455?j>>>0<d>>>0?d:j:536870911;if(d){if(d>>>0>=536870912){break a}c=Dm(d<<3)}b=b<<3;b=qn(c+g|0,0,b)+b|0;d=(d<<3)+c|0;if((h|0)>=1){pn(c,f,h)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(11186);x()}function ii(a,b,c){var d=0,e=0,f=0,h=0,j=0;d=J-32|0;J=d;f=g[a+24|0];e=i[3527];i[d+24>>2]=i[3526];i[d+28>>2]=e;e=i[3525];i[d+16>>2]=i[3524];i[d+20>>2]=e;a:{e=$c(a,b,f,d+16|0);if(e){i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;a=0;if(f){if((f|0)<=-1){break a}b=f<<2;a=Dm(b);i[d>>2]=a;h=(f<<2)+a|0;i[d+8>>2]=h;pn(a,d+16|0,b);i[d+4>>2]=h;j=h}b=i[c>>2];if(b){i[c+4>>2]=b;nn(b);h=i[d+8>>2];j=i[d+4>>2];a=i[d>>2]}i[c+8>>2]=h;i[c+4>>2]=j;i[c>>2]=a}J=d+32|0;return e}Sm();x()}function hc(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=2048;b=i[a+60>>2];i[a+60>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}d=i[a+36>>2];if(d){b=d;c=i[a+40>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+36>>2]}b=e;i[a+40>>2]=d;nn(b)}i[a>>2]=1360;b=i[a+16>>2];if(b){i[a+20>>2]=b;nn(b)}b=i[a+4>>2];if(b){i[a+8>>2]=b;nn(b)}return a|0}function Rl(a,b){a:{if(a){if(b>>>0<=127){break a}b:{if(!i[i[4224]>>2]){if((b&-128)==57216){break a}break b}if(b>>>0<=2047){g[a+1|0]=b&63|128;g[a|0]=b>>>6|192;return 2}if(!((b&-8192)!=57344?b>>>0>=55296:0)){g[a+2|0]=b&63|128;g[a|0]=b>>>12|224;g[a+1|0]=b>>>6&63|128;return 3}if(b+ -65536>>>0<=1048575){g[a+3|0]=b&63|128;g[a|0]=b>>>18|240;g[a+2|0]=b>>>6&63|128;g[a+1|0]=b>>>12&63|128;return 4}}i[4312]=25;a=-1}else{a=1}return a}g[a|0]=b;return 1}function ic(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=2048;b=i[a+60>>2];i[a+60>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}d=i[a+36>>2];if(d){b=d;c=i[a+40>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+36>>2]}b=e;i[a+40>>2]=d;nn(b)}i[a>>2]=1360;b=i[a+16>>2];if(b){i[a+20>>2]=b;nn(b)}b=i[a+4>>2];if(b){i[a+8>>2]=b;nn(b)}nn(a)}function ug(a){var b=0,c=0,d=0,e=0;b=i[a+196>>2];if(b){i[a+200>>2]=b;nn(b)}b=i[a+184>>2];if(b){c=i[a+188>>2];d=b;a:{if((b|0)==(c|0)){break a}while(1){d=c+ -12|0;e=i[d>>2];if(e){i[c+ -8>>2]=e;nn(e)}c=d;if((c|0)!=(b|0)){continue}break}d=i[a+184>>2]}i[a+188>>2]=b;nn(d)}b=i[a+156>>2];if(b){i[a+160>>2]=b;nn(b)}b=i[a+136>>2];i[a+136>>2]=0;if(b){c=b+ -4|0;a=i[c>>2];if(a){a=b+(a<<4)|0;while(1){a=a+ -16|0;if((b|0)!=(a|0)){continue}break}}nn(c)}}function Ph(a,b,c){var d=0,e=0,f=0,h=0;d=J-32|0;J=d;e=xn(b);if(e>>>0<4294967280){a:{b:{if(e>>>0>=11){h=e+16&-16;f=Dm(h);i[d+24>>2]=h|-2147483648;i[d+16>>2]=f;i[d+20>>2]=e;break b}g[d+27|0]=e;f=d+16|0;if(!e){break a}}pn(f,b,e)}g[e+f|0]=0;i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;el(a,d+16|0,d);a=i[c>>2];if(a){i[c+4>>2]=a;nn(a)}i[c>>2]=i[d>>2];i[c+4>>2]=i[d+4>>2];i[c+8>>2]=i[d+8>>2];if(g[d+27|0]<=-1){nn(i[d+16>>2])}J=d+32|0;return}Fm();x()}function va(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;d=J-16|0;J=d;e=i[a+4>>2];a:{if((e|0)==-1){break a}c=i[b+20>>2];if((c|0)>0?1:(c|0)>=0?l[b+16>>2]>0:0){break a}fa(b,i[b+4>>2],i[a+8>>2],i[a+12>>2]);c=i[b+20>>2];if((c|0)>0?1:(c|0)>=0?l[b+16>>2]>=1:0){break a}c=a+20|0;fa(b,i[b+4>>2],c,c+4|0);c=i[b+20>>2];f=i[b+16>>2];g[d+15|0]=i[a+4>>2];if((c|0)>0?1:(c|0)>=0?f>>>0>0:0){break a}fa(b,i[b+4>>2],d+15|0,d+16|0)}J=d+16|0;return(e|0)!=-1|0}function pi(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>1>>>0>=b>>>0){if(b){b=b<<1;c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}a:{f=i[a>>2];g=c-f|0;h=g>>1;d=h+b|0;if((d|0)>-1){c=0;e=e-f|0;d=e>>1>>>0<1073741823?e>>>0<d>>>0?d:e:2147483647;if(d){if((d|0)<=-1){break a}c=Dm(d<<1)}b=b<<1;b=qn((h<<1)+c|0,0,b)+b|0;d=(d<<1)+c|0;if((g|0)>=1){pn(c,f,g)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(14112);x()}function Ig(a,b){var c=0,d=0,e=0,f=0,g=0;d=i[a+4>>2];a=i[d+4>>2];if((a|0)!=i[d+8>>2]){i[a>>2]=b;i[d+4>>2]=a+4;return}a:{f=i[d>>2];g=a-f|0;e=g>>2;c=e+1|0;if(c>>>0<1073741824){a=g>>1;c=e>>>0<536870911?a>>>0<c>>>0?c:a:1073741823;a=0;b:{if(!c){break b}if(c>>>0>=1073741824){break a}a=Dm(c<<2)}e=a+(e<<2)|0;i[e>>2]=b;b=a+(c<<2)|0;c=e+4|0;if((g|0)>=1){pn(a,f,g)}i[d+8>>2]=b;i[d+4>>2]=c;i[d>>2]=a;if(f){nn(f)}return}Sm();x()}Ba(12220);x()}function Fk(a,b){var c=0,d=0,e=0,f=0,g=0;c=i[a+4>>2];if((c|0)!=i[a+8>>2]){i[c>>2]=i[b>>2];i[a+4>>2]=c+4;return}a:{f=i[a>>2];g=c-f|0;e=g>>2;d=e+1|0;if(d>>>0<1073741824){c=g>>1;d=e>>>0<536870911?c>>>0<d>>>0?d:c:1073741823;c=0;b:{if(!d){break b}if(d>>>0>=1073741824){break a}c=Dm(d<<2)}e=c+(e<<2)|0;i[e>>2]=i[b>>2];b=c+(d<<2)|0;d=e+4|0;if((g|0)>=1){pn(c,f,g)}i[a+8>>2]=b;i[a+4>>2]=d;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(14288);x()}function $f(a,b){var c=0,d=0,e=0,f=0,g=0;c=i[a+4>>2];if((c|0)!=i[a+8>>2]){i[c>>2]=i[b>>2];i[a+4>>2]=c+4;return}a:{f=i[a>>2];g=c-f|0;e=g>>2;d=e+1|0;if(d>>>0<1073741824){c=g>>1;d=e>>>0<536870911?c>>>0<d>>>0?d:c:1073741823;c=0;b:{if(!d){break b}if(d>>>0>=1073741824){break a}c=Dm(d<<2)}e=c+(e<<2)|0;i[e>>2]=i[b>>2];b=c+(d<<2)|0;d=e+4|0;if((g|0)>=1){pn(c,f,g)}i[a+8>>2]=b;i[a+4>>2]=d;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}Ba(12220);x()}function Ga(a,b){var c=0;g[a+24|0]=j[b+24|0];i[a+28>>2]=i[b+28>>2];g[a+32|0]=j[b+32|0];c=i[b+44>>2];i[a+40>>2]=i[b+40>>2];i[a+44>>2]=c;c=i[b+52>>2];i[a+48>>2]=i[b+48>>2];i[a+52>>2]=c;i[a+56>>2]=i[b+56>>2];c=i[b+12>>2];i[a+8>>2]=i[b+8>>2];i[a+12>>2]=c;c=i[b+20>>2];i[a+16>>2]=i[b+16>>2];i[a+20>>2]=c;i[a+60>>2]=i[b+60>>2];b=i[b>>2];if(!b){i[a>>2]=0;return 1}a=i[a>>2];if(!a){return 0}c=a;a=i[b>>2];xh(c,a,i[b+4>>2]-a|0,0);return 1}function Ek(a,b,c){var d=0,e=0,f=0;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;a:{b:{if(!b){break b}if((b|0)<=-1){break a}e=b+ -1>>>5|0;f=e+1|0;d=Dm(f<<2);i[a+8>>2]=f;i[a>>2]=d;f=j[c|0];i[a+4>>2]=b;i[(b>>>0<33?d:d+(e<<2)|0)>>2]=0;c=b>>>5|0;e=c<<2;if(f){d=qn(d,255,e);b=b&31;if(!b){break b}c=d+(c<<2)|0;i[c>>2]=i[c>>2]|-1>>>32-b;return a}d=qn(d,0,e);b=b&31;if(!b){break b}c=d+(c<<2)|0;i[c>>2]=i[c>>2]&(-1>>>32-b^-1)}return a}Sm();x()}function xk(a,b){var c=0,d=0,e=0;d=J-16|0;J=d;e=Dm(88);c=e;i[c>>2]=0;i[c+4>>2]=0;i[c+64>>2]=0;i[c+68>>2]=0;i[c+56>>2]=0;i[c+48>>2]=0;i[c+52>>2]=0;i[c+40>>2]=0;i[c+44>>2]=0;i[c+32>>2]=0;i[c+36>>2]=0;i[c+24>>2]=0;i[c+28>>2]=0;i[c+16>>2]=0;i[c+20>>2]=0;i[c+8>>2]=0;i[c+12>>2]=0;i[c+72>>2]=0;i[c+76>>2]=0;i[c+80>>2]=0;i[c+84>>2]=0;i[c+60>>2]=c;a:{if(yk(c,b)){i[a>>2]=e;break a}i[a>>2]=0;i[d+8>>2]=0;Qf(d+8|0,e)}J=d+16|0}function Xb(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;if((M[i[i[b>>2]+20>>2]](b)|0)>=1){while(1){c=ll(i[i[a+4>>2]+4>>2],M[i[i[b>>2]+24>>2]](b,d)|0);if((c|0)==-1){return 0}a:{e=i[a+4>>2];if(j[e+36|0]<=1){if(M[i[i[b>>2]+28>>2]](b,i[i[i[e+4>>2]+8>>2]+(c<<2)>>2])|0){break a}return 0}c=ph(e,c);if(!c){return 0}if(M[i[i[b>>2]+28>>2]](b,c)|0){break a}return 0}d=d+1|0;if((d|0)<(M[i[i[b>>2]+20>>2]](b)|0)){continue}break}}return 1}function Zg(a,b){var c=0,d=0,e=p(0),f=0;c=2;a:{if((b|0)==1){break a}c=b;if(!(b+ -1&b)){break a}c=fm(b)}d=i[a+4>>2];if(c>>>0>d>>>0){_g(a,c);return}b:{if(c>>>0>=d>>>0){break b}f=d>>>0<3;e=p(v(p(p(l[a+12>>2])/m[a+16>>2])));c:{if(e<p(4294967296)&e>=p(0)){b=~~e>>>0;break c}b=0}d:{e:{if(f){break e}if(Jn(d)>>>0>1){break e}b=b>>>0<2?b:1<<32-r(b+ -1|0);break d}b=fm(b)}b=c>>>0<b>>>0?b:c;if(b>>>0>=d>>>0){break b}_g(a,b)}}function Ql(a,b){var c=0;c=(b|0)!=0;a:{b:{c:{if(!b|!(a&3)){break c}while(1){if(!j[a|0]){break b}a=a+1|0;b=b+ -1|0;c=(b|0)!=0;if(!b){break c}if(a&3){continue}break}}if(!c){break a}}d:{if(!j[a|0]|b>>>0<4){break d}while(1){c=i[a>>2];if((c^-1)&c+ -16843009&-2139062144){break d}a=a+4|0;b=b+ -4|0;if(b>>>0>3){continue}break}}if(!b){break a}while(1){if(!j[a|0]){return a}a=a+1|0;b=b+ -1|0;if(b){continue}break}}return 0}function Hh(a,b){var c=0,d=0,e=0,f=0;d=J-16|0;J=d;Qm(d);e=Pe(a,d+12|0,b);c=i[e>>2];if(!c){c=Dm(40);Gm(c+16|0,b);i[c+36>>2]=0;i[c+28>>2]=0;i[c+32>>2]=0;i[c+8>>2]=i[d+12>>2];i[c>>2]=0;i[c+4>>2]=0;i[e>>2]=c;b=i[i[a>>2]>>2];f=c;a:{if(!b){break a}i[a>>2]=b;f=i[e>>2]}b=f;Me(i[a+4>>2],b);i[a+8>>2]=i[a+8>>2]+1}a=c+28|0;if(g[c+39|0]<=-1){nn(i[a>>2])}b=i[d+4>>2];i[a>>2]=i[d>>2];i[a+4>>2]=b;i[a+8>>2]=i[d+8>>2];J=d+16|0}function cf(a,b,c){var d=0,e=0,f=0,h=0,j=0;a:{if(a>>>0>10){break a}e=i[c+16>>2];f=i[c+12>>2];d=i[c+20>>2];if((f|0)<(d|0)?1:(f|0)<=(d|0)?l[c+8>>2]<=e>>>0:0){break a}f=g[e+i[c>>2]|0];e=e+1|0;if(e>>>0<1){d=d+1|0}i[c+16>>2]=e;i[c+20>>2]=d;e=b;h=b;d=f;b:{if((d|0)<=-1){if(!cf(a+1|0,b,c)){break a}a=i[b+4>>2];b=i[b>>2];a=a<<7|b>>>25;b=d&127|b<<7;break b}a=0;b=d&255}i[h>>2]=b;i[e+4>>2]=a;j=1}return j}function Dh(a,b,c){var d=0,e=0,f=0,h=0,j=0;a:{if(a>>>0>10){break a}e=i[c+16>>2];f=i[c+12>>2];d=i[c+20>>2];if((f|0)<(d|0)?1:(f|0)<=(d|0)?l[c+8>>2]<=e>>>0:0){break a}f=g[e+i[c>>2]|0];e=e+1|0;if(e>>>0<1){d=d+1|0}i[c+16>>2]=e;i[c+20>>2]=d;e=b;h=b;d=f;b:{if((d|0)<=-1){if(!Dh(a+1|0,b,c)){break a}a=i[b+4>>2];b=i[b>>2];a=a<<7|b>>>25;b=d&127|b<<7;break b}a=0;b=d&255}i[h>>2]=b;i[e+4>>2]=a;j=1}return j}function Yf(a,b){var c=0,d=0,e=0,f=0;d=i[a+12>>2];c=i[a+16>>2]-d>>2;a:{if(c>>>0<b>>>0){Ra(a+12|0,b-c|0);break a}if(c>>>0<=b>>>0){break a}i[a+16>>2]=d+(b<<2)}b:{c=i[a>>2];c:{if(i[a+8>>2]-c>>2>>>0>=b>>>0){break c}if(b>>>0>=1073741824){break b}d=i[a+4>>2];e=b<<2;b=Dm(e);e=b+e|0;d=d-c|0;f=d+b|0;if((d|0)>=1){pn(b,c,d)}i[a+8>>2]=e;i[a+4>>2]=f;i[a>>2]=b;if(!c){break c}nn(c)}return}Ba(12220);x()}function yb(a){ze(a);ze(a+16|0);ze(a+32|0);ze(a+48|0);ze(a- -64|0);ze(a+80|0);ze(a+96|0);ze(a+112|0);ze(a+128|0);ze(a+144|0);ze(a+160|0);ze(a+176|0);ze(a+192|0);ze(a+208|0);ze(a+224|0);ze(a+240|0);ze(a+256|0);ze(a+272|0);ze(a+288|0);ze(a+304|0);ze(a+320|0);ze(a+336|0);ze(a+352|0);ze(a+368|0);ze(a+384|0);ze(a+400|0);ze(a+416|0);ze(a+432|0);ze(a+448|0);ze(a+464|0);ze(a+480|0);ze(a+496|0)}function tn(a,b,c){var d=0,e=0,f=0;d=i[c+16>>2];a:{if(!d){if(sn(c)){break a}d=i[c+16>>2]}f=i[c+20>>2];if(d-f>>>0<b>>>0){return M[i[c+36>>2]](c,a,b)|0}b:{if(g[c+75|0]<0){d=0;break b}e=b;while(1){d=e;if(!d){d=0;break b}e=d+ -1|0;if(j[e+a|0]!=10){continue}break}e=M[i[c+36>>2]](c,a,d)|0;if(e>>>0<d>>>0){break a}a=a+d|0;b=b-d|0;f=i[c+20>>2]}pn(f,a,b);i[c+20>>2]=i[c+20>>2]+b;e=b+d|0}return e}function Ag(a,b){var c=0,d=0,e=0;a:{if((a|0)!=(b|0)){e=a;c=i[b+4>>2];d=0;b:{if(!c){break b}c:{if(c>>>0<=i[a+8>>2]<<5>>>0){d=i[a>>2];break c}d=i[a>>2];if(d){nn(d);i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;c=i[b+4>>2]}if((c|0)<=-1){break a}c=(c+ -1>>>5|0)+1|0;d=Dm(c<<2);i[a+8>>2]=c;i[a+4>>2]=0;i[a>>2]=d;c=i[b+4>>2]}rn(d,i[b>>2],(c+ -1>>>3&536870908)+4|0);d=i[b+4>>2]}i[e+4>>2]=d}return}Sm();x()}function el(a,b,c){var d=0,e=0,f=0;a:{b=Ih(a,b);b:{if((b|0)==(a+4|0)){break b}a=i[b+28>>2];d=i[b+32>>2];if((a|0)==(d|0)){break b}a=d-a|0;if(a&3){break b}d=a>>>2|0;e=i[c+4>>2];a=i[c>>2];f=e-a>>2;c:{if(d>>>0>f>>>0){Ra(c,d-f|0);a=i[c>>2];e=i[c+4>>2];break c}if(d>>>0>=f>>>0){break c}e=(d<<2)+a|0;i[c+4>>2]=e}if((a|0)==(e|0)){break a}c=a;a=i[b+28>>2];pn(c,a,i[b+32>>2]-a|0)}return}Tm();x()}function Lf(a,b){var c=0;c=i[b+8>>2];i[a+12>>2]=i[b+4>>2];i[a+16>>2]=c;i[a+28>>2]=i[b+20>>2];c=i[b+16>>2];i[a+20>>2]=i[b+12>>2];i[a+24>>2]=c;Ag(a+32|0,b+24|0);Ag(a+44|0,b+36|0);if((a+8|0)==(b|0)){i[a+92>>2]=i[b+84>>2];return}Ma(a+56|0,i[b+48>>2],i[b+52>>2]);Ma(a+68|0,i[b+60>>2],i[b- -64>>2]);Ma(a+80|0,i[b+72>>2],i[b+76>>2]);i[a+92>>2]=i[b+84>>2];ua(a+96|0,i[b+88>>2],i[b+92>>2])}function bl(a,b){var c=0,d=0,e=0;c=i[b+4>>2];a:{if(!c){d=i[b+8>>2];if(i[d>>2]==(b|0)){break a}e=b+8|0;while(1){c=i[e>>2];e=c+8|0;d=i[c+8>>2];if((c|0)!=i[d>>2]){continue}break}break a}while(1){d=c;c=i[c>>2];if(c){continue}break}}if(i[a>>2]==(b|0)){i[a>>2]=d}i[a+8>>2]=i[a+8>>2]+ -1;jl(i[a+4>>2],b);a=i[b+28>>2];if(a){i[b+32>>2]=a;nn(a)}if(g[b+27|0]<=-1){nn(i[b+16>>2])}nn(b)}function xf(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=11360;b=i[a+48>>2];i[a+48>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}i[a>>2]=13492;b=i[a+20>>2];if(b){i[a+24>>2]=b;nn(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;nn(b)}return a|0}function yf(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=11360;b=i[a+48>>2];i[a+48>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}i[a>>2]=13492;b=i[a+20>>2];if(b){i[a+24>>2]=b;nn(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;nn(b)}nn(a)}function sh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0,k=0;d=i[a+32>>2];c=d;e=i[c+8>>2];f=i[c+12>>2];b=i[c+20>>2];h=e;e=i[c+16>>2];c=e+4|0;if(c>>>0<4){b=b+1|0}g=c;c=b;a:{if((f|0)<(b|0)?1:(f|0)<=(b|0)?h>>>0<g>>>0:0){break a}b=e+i[d>>2]|0;b=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[d+16>>2]=g;i[d+20>>2]=c;if((b|0)<0){break a}i[i[a+4>>2]+80>>2]=b;k=1}return k|0}function Qh(a,b){var c=0,d=0,e=0,f=0,h=0;c=J-32|0;J=c;i[c+24>>2]=0;i[c+28>>2]=0;d=xn(b);if(d>>>0<4294967280){a:{b:{if(d>>>0>=11){e=d+16&-16;f=Dm(e);i[c+16>>2]=e|-2147483648;i[c+8>>2]=f;i[c+12>>2]=d;e=c+8|0;break b}g[c+19|0]=d;e=c+8|0;f=e;if(!d){break a}}pn(f,b,d)}g[d+f|0]=0;fl(a,c+8|0,c+24|0);h=n[c+24>>3];if(g[e+11|0]<=-1){nn(i[c+8>>2])}J=c+32|0;return h}Fm();x()}function Km(a,b,c,d,e,f,h){var j=0,k=0,l=0;j=J-16|0;J=j;if((b^-1)+ -17>>>0>=c>>>0){k=sm(a);a:{if(2147483623>b>>>0){i[j+8>>2]=b<<1;i[j+12>>2]=b+c;c=xm(i[mm(j+12|0,j+8|0)>>2]);break a}c=-18}l=c+1|0;c=ym(l);if(f){lm(c,h,f)}d=d-e|0;h=d;if(d){lm(c+f|0,e+k|0,h)}if((b|0)!=10){nn(k)}zm(a,c);Am(a,l);b=a;a=d+f|0;vm(b,a);g[j+7|0]=0;um(a+c|0,j+7|0);J=j+16|0;return}Fm();x()}function Rh(a,b,c){var d=0,e=0,f=0,h=0;d=J-16|0;J=d;e=xn(c);if(e>>>0<4294967280){a:{b:{if(e>>>0>=11){h=e+16&-16;f=Dm(h);i[d+8>>2]=h|-2147483648;i[d>>2]=f;i[d+4>>2]=e;break b}g[d+11|0]=e;f=d;if(!e){break a}}pn(f,c,e)}g[e+f|0]=0;a=a+16|0;c=0;c:{if(!gl(b,d,a)){break c}c=i[a>>2];if(g[a+11|0]<=-1){break c}c=a}if(g[d+11|0]<=-1){nn(i[d>>2])}J=d+16|0;return c}Fm();x()}function uh(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;d=i[a+32>>2];b=d;f=i[b+12>>2];g=i[b+8>>2];h=f;c=i[b+20>>2];b=i[b+16>>2];e=b+4|0;if(e>>>0<4){c=c+1|0}if((h|0)>(c|0)?1:(h|0)>=(c|0)?g>>>0>=e>>>0:0){b=b+i[d>>2]|0;b=j[b|0]|j[b+1|0]<<8|(j[b+2|0]<<16|j[b+3|0]<<24);i[d+16>>2]=e;i[d+20>>2]=c;i[i[a+4>>2]+80>>2]=b}return((f|0)>(c|0)?1:(f|0)>=(c|0)?g>>>0>=e>>>0:0)|0}function rb(a,b){var c=0,d=0,e=0,f=0,g=0,h=0;e=i[a+8>>2];c=i[a+4>>2];if(e-c>>>0>=b>>>0){if(b){c=qn(c,0,b)+b|0}i[a+4>>2]=c;return}f=i[a>>2];g=c-f|0;d=g+b|0;if((d|0)>-1){c=0;e=e-f|0;h=e<<1;d=e>>>0<1073741823?h>>>0<d>>>0?d:h:2147483647;if(d){c=Dm(d)}d=c+d|0;b=qn(c+g|0,0,b)+b|0;if((g|0)>=1){pn(c,f,g)}i[a+8>>2]=d;i[a+4>>2]=b;i[a>>2]=c;if(f){nn(f)}return}Sm();x()}function fn(a,b,c,d){g[a+53|0]=1;a:{if(i[a+4>>2]!=(c|0)){break a}g[a+52|0]=1;c=i[a+16>>2];if(!c){i[a+36>>2]=1;i[a+24>>2]=d;i[a+16>>2]=b;if((d|0)!=1|i[a+48>>2]!=1){break a}g[a+54|0]=1;return}if((b|0)==(c|0)){c=i[a+24>>2];if((c|0)==2){i[a+24>>2]=d;c=d}if(i[a+48>>2]!=1|(c|0)!=1){break a}g[a+54|0]=1;return}g[a+54|0]=1;i[a+36>>2]=i[a+36>>2]+1}}function De(a,b,c){var d=0,e=0,f=0,g=0,h=0,k=0;if(!b){i[c>>2]=0;return}g=0-j[a+12|0]&255;e=i[a+8>>2];while(1){h=d<<1;a:{if(e>>>0>4095){break a}d=i[a+4>>2];if((d|0)<1){break a}d=d+ -1|0;i[a+4>>2]=d;e=j[d+i[a>>2]|0]|e<<8}f=e&255;d=f>>>0<g>>>0;k=f;f=o(e>>>8|0,g);e=d?k+f|0:(e-g|0)-f|0;i[a+8>>2]=e;d=d|h;b=b+ -1|0;if(b){continue}break}i[c>>2]=d}function gi(a,b,c){var d=0,e=0,f=0,g=0;a:{if(l[a+80>>2]>65535){break a}f=i[a+96>>2];d=i[a+100>>2]-f|0;a=(d|0)/12|0;e=o(a,6);g=(e|0)==(b|0);if(!d|(b|0)!=(e|0)){break a}g=1;e=a>>>0>1?a:1;a=0;while(1){b=o(a,6)+c|0;d=o(a,12)+f|0;h[b>>1]=i[d>>2];h[b+2>>1]=i[d+4>>2];h[b+4>>1]=i[d+8>>2];a=a+1|0;if((e|0)!=(a|0)){continue}break}}return g}function Oh(a,b){var c=0,d=0,e=0,f=0;c=J-16|0;J=c;i[c+12>>2]=0;d=xn(b);if(d>>>0<4294967280){a:{b:{if(d>>>0>=11){e=d+16&-16;f=Dm(e);i[c+8>>2]=e|-2147483648;i[c>>2]=f;i[c+4>>2]=d;e=c;break b}g[c+11|0]=d;e=c;f=c;if(!d){break a}}pn(f,b,d)}g[d+f|0]=0;dl(a,c,c+12|0);a=i[c+12>>2];if(g[e+11|0]<=-1){nn(i[c>>2])}J=c+16|0;return a}Fm();x()}function Mf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=J-16|0;J=d;i[a+4>>2]=b;b=i[b+64>>2];e=i[b>>2];b=i[b+4>>2];g[d+15|0]=0;Jf(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=i[a+4>>2];e=i[b+56>>2];b=i[b+52>>2];g[d+14|0]=0;Jf(a+36|0,e-b>>2,d+14|0);b=i[c+12>>2];i[a+16>>2]=i[c+8>>2];i[a+20>>2]=b;b=i[c+4>>2];i[a+8>>2]=i[c>>2];i[a+12>>2]=b;J=d+16|0}function xn(a){var b=0,c=0,d=0;a:{b:{b=a;if(!(b&3)){break b}if(!j[a|0]){return 0}while(1){b=b+1|0;if(!(b&3)){break b}if(j[b|0]){continue}break}break a}while(1){c=b;b=b+4|0;d=i[c>>2];if(!((d^-1)&d+ -16843009&-2139062144)){continue}break}if(!(d&255)){return c-a|0}while(1){d=j[c+1|0];b=c+1|0;c=b;if(d){continue}break}}return b-a|0}function oc(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=J-48|0;J=e;a:{if((d|0)!=1){i[a>>2]=0;break a}d=i[b+4>>2];b=i[b+12>>2];i[e+40>>2]=0;f=e+32|0;i[f>>2]=0;i[f+4>>2]=0;i[e+24>>2]=0;i[e+28>>2]=0;i[e+16>>2]=0;i[e+20>>2]=0;i[e+8>>2]=0;i[e+12>>2]=0;pc(e,c,b,d,e+8|0);b=i[f>>2];if(b){i[e+36>>2]=b;nn(b)}i[a>>2]=i[e>>2]}J=e+48|0}function an(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=J+ -64|0;J=d;e=1;a:{if($m(a,b,0)){break a}e=0;if(!b){break a}b=bn(b);e=0;if(!b){break a}qn(d+8|4,0,52);i[d+56>>2]=1;i[d+20>>2]=-1;i[d+16>>2]=a;i[d+8>>2]=b;M[i[i[b>>2]+28>>2]](b,d+8|0,i[c>>2],1);a=i[d+32>>2];if((a|0)==1){i[c>>2]=i[d+24>>2]}e=(a|0)==1}a=e;J=d- -64|0;return a|0}function ec(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=M[i[i[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<1){break a}d=i[i[a+36>>2]>>2];f=a+48|0;c=0;if(!(M[i[i[d>>2]+20>>2]](d,f,b)|0)){break a}d=1;while(1){c=d;if((e|0)!=(c|0)){d=c+1|0;g=i[i[a+36>>2]+(c<<2)>>2];if(M[i[i[g>>2]+20>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function dc(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0,g=0;e=M[i[i[a>>2]+24>>2]](a)|0;c=1;a:{if((e|0)<1){break a}d=i[i[a+36>>2]>>2];f=a+48|0;c=0;if(!(M[i[i[d>>2]+16>>2]](d,f,b)|0)){break a}d=1;while(1){c=d;if((e|0)!=(c|0)){d=c+1|0;g=i[i[a+36>>2]+(c<<2)>>2];if(M[i[i[g>>2]+16>>2]](g,f,b)|0){continue}}break}c=(c|0)>=(e|0)}return c|0}function rc(a,b,c){var d=0,e=0,f=0,h=0;d=J-80|0;J=d;e=Ea(d+16|0);f=i[i[a+8>>2]+56>>2];h=c<<24>>24;c=o(Fh(5),c);Fa(e,f,h,5,0,c,c>>31);c=Dm(96);e=Ja(c,e);i[d+8>>2]=c;g[c+84|0]=1;i[c+72>>2]=i[c+68>>2];Ka(e,b);i[d+8>>2]=0;b=i[a+16>>2];i[a+16>>2]=c;a:{if(!b){break a}Sa(b);a=i[d+8>>2];i[d+8>>2]=0;if(!a){break a}Sa(a)}J=d+80|0}function Qe(a,b,c,d){var e=0,f=0,g=0,h=0;if(!a){return 1}e=i[c+16>>2];g=i[c+12>>2];f=i[c+20>>2];a:{if((g|0)<(f|0)?1:(g|0)<=(f|0)?l[c+8>>2]<=e>>>0:0){break a}g=j[e+i[c>>2]|0];e=e+1|0;if(e>>>0<1){f=f+1|0}i[c+16>>2]=e;i[c+20>>2]=f;b:{switch(g|0){case 0:return Re(a,b,c,d);case 1:break b;default:break a}}h=Se(a,c,d)}return h}function jn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if($m(a,i[b+8>>2],e)){gn(b,c,d);return}a:{if(!$m(a,i[b>>2],e)){break a}if(!(i[b+20>>2]!=(c|0)?i[b+16>>2]!=(c|0):0)){if((d|0)!=1){break a}i[b+32>>2]=1;return}i[b+20>>2]=c;i[b+32>>2]=d;i[b+40>>2]=i[b+40>>2]+1;if(!(i[b+36>>2]!=1|i[b+24>>2]!=2)){g[b+54|0]=1}i[b+44>>2]=4}}function Pk(a){i[a>>2]=0;i[a+4>>2]=0;i[a+28>>2]=0;i[a+32>>2]=0;g[a+24|0]=1;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;i[a+36>>2]=0;i[a+40>>2]=0;i[a+44>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;i[a+56>>2]=0;i[a+60>>2]=0;i[a+64>>2]=0;i[a+72>>2]=0;i[a+76>>2]=0;i[a+80>>2]=0;i[a+84>>2]=0;i[a+88>>2]=0;i[a+92>>2]=0;i[a+68>>2]=a}function dm(a){var b=0,c=0,d=0,e=0,f=0;while(1){b=a;a=b+1|0;c=g[b|0];if((c|0)==32|c+ -9>>>0<5){continue}break}a:{b:{c:{c=g[b|0];switch(c+ -43|0){case 0:break b;case 2:break c;default:break a}}e=1}c=g[a|0];b=a;f=e}if(Pl(c)){while(1){d=(o(d,10)-g[b|0]|0)+48|0;a=g[b+1|0];b=b+1|0;if(Pl(a)){continue}break}}return f?d:0-d|0}function di(a,b){var c=0,d=0,e=0,f=0;c=J-16|0;J=c;i[a+68>>2]=0;i[a+72>>2]=0;i[a>>2]=b;Tk(c+8|0,b);d=i[c+8>>2];i[c+8>>2]=0;e=i[a+4>>2];i[a+4>>2]=d;if(e){f=a+4|0;Qf(f,e);d=i[c+8>>2];i[c+8>>2]=0;if(d){Qf(c+8|0,d)}d=i[f>>2]}if(d){e=i[b+100>>2];b=i[b+96>>2];g[c+7|0]=0;Jf(a+56|0,(e-b|0)/12|0,c+7|0)}J=c+16|0;return(d|0)!=0}function zg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=J-16|0;J=d;i[a+4>>2]=b;e=i[b>>2];b=i[b+4>>2];g[d+15|0]=0;Jf(a+24|0,(b-e>>2>>>0)/3|0,d+15|0);b=i[a+4>>2];e=i[b+28>>2];b=i[b+24>>2];g[d+14|0]=0;Jf(a+36|0,e-b>>2,d+14|0);b=i[c+12>>2];i[a+16>>2]=i[c+8>>2];i[a+20>>2]=b;b=i[c+4>>2];i[a+8>>2]=i[c>>2];i[a+12>>2]=b;J=d+16|0}function ah(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!ah(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function af(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!af(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function Xk(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!Xk(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function Qa(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!Qa(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function Pf(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!Pf(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function Nc(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!Nc(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function Eb(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!Eb(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function Be(a,b,c){var d=0,e=0,f=0,g=0;a:{if(a>>>0>5){break a}f=i[c+16>>2];d=i[c+12>>2];e=i[c+20>>2];if((d|0)<(e|0)?1:(d|0)<=(e|0)?l[c+8>>2]<=f>>>0:0){break a}d=j[f+i[c>>2]|0];f=f+1|0;if(f>>>0<1){e=e+1|0}i[c+16>>2]=f;i[c+20>>2]=e;e=b;if(d&128){if(!Be(a+1|0,b,c)){break a}d=d&127|i[b>>2]<<7}i[e>>2]=d;g=1}return g}function wk(a){var b=0;i[a>>2]=0;i[a+4>>2]=0;i[a+56>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;i[a+40>>2]=0;i[a+44>>2]=0;i[a+32>>2]=0;i[a+36>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;b=a- -64|0;i[b>>2]=0;i[b+4>>2]=0;i[a+72>>2]=0;i[a+76>>2]=0;i[a+80>>2]=0;i[a+84>>2]=0;i[a+60>>2]=a}function lh(a){var b=0,c=0,d=0,e=0;if(a){d=i[a+24>>2];if(d){b=d;c=i[a+28>>2];e=b;a:{if((c|0)==(b|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){qh(b+12|0,i[b+16>>2]);rh(b,i[b+4>>2]);nn(b)}if((c|0)!=(d|0)){continue}break}e=i[a+24>>2]}b=e;i[a+28>>2]=d;nn(b)}qh(a+12|0,i[a+16>>2]);rh(a,i[a+4>>2]);nn(a)}}function Nh(a,b){var c=0,d=0,e=0,f=0;c=J-16|0;J=c;d=xn(b);if(d>>>0<4294967280){a:{b:{if(d>>>0>=11){e=d+16&-16;f=Dm(e);i[c+8>>2]=e|-2147483648;i[c>>2]=f;i[c+4>>2]=d;e=c;break b}g[c+11|0]=d;e=c;f=c;if(!d){break a}}pn(f,b,d)}g[d+f|0]=0;a=Kb(a,c);if(g[e+11|0]<=-1){nn(i[c>>2])}J=c+16|0;return(a|0)!=0}Fm();x()}function sf(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=13492;b=i[a+20>>2];if(b){i[a+24>>2]=b;nn(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;nn(b)}return a|0}function Mk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=J-16|0;J=d;e=i[c>>2];i[c>>2]=0;i[d+8>>2]=e;ql(a,b,d+8|0);c=i[d+8>>2];i[d+8>>2]=0;if(c){Sa(c)}e=i[a+84>>2];c=i[a+88>>2]-e>>2;a:{if((c|0)>(b|0)){break a}b=b+1|0;if(b>>>0>c>>>0){Nk(a+84|0,b-c|0);break a}if(b>>>0>=c>>>0){break a}i[a+88>>2]=e+(b<<2)}J=d+16|0}function ga(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,f=0,g=0,h=0,k=0;h=i[c+8>>2];f=i[c+16>>2];g=i[c+12>>2];d=g;e=i[c+20>>2];if((d|0)>(e|0)?1:(d|0)>=(e|0)?h>>>0>f>>>0:0){b=j[f+i[c>>2]|0];d=e;k=f+1|0;if(k>>>0<1){d=d+1|0}i[c+16>>2]=k;i[c+20>>2]=d;i[a+4>>2]=b}return((g|0)>(e|0)?1:(g|0)>=(e|0)?h>>>0>f>>>0:0)|0}function Om(a,b,c,d,e){var f=0,g=0,h=0;f=J-16|0;J=f;if(-17-b>>>0>=c>>>0){g=sm(a);a:{if(2147483623>b>>>0){i[f+8>>2]=b<<1;i[f+12>>2]=b+c;c=xm(i[mm(f+12|0,f+8|0)>>2]);break a}c=-18}h=c+1|0;c=ym(h);if(e){lm(c,g,e)}d=d-e|0;if(d){lm(c+e|0,e+g|0,d)}if((b|0)!=10){nn(g)}zm(a,c);Am(a,h);J=f+16|0;return}Fm();x()}function eh(a){a=a|0;var b=0,c=0,d=0,e=0;i[a>>2]=13492;b=i[a+20>>2];if(b){i[a+24>>2]=b;nn(b)}d=i[a+8>>2];if(d){b=d;c=i[a+12>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=i[c>>2];i[c>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=i[a+8>>2]}b=e;i[a+12>>2]=d;nn(b)}nn(a)}function _l(a,b,c){var d=0,e=0,f=0;a:{if((b|0)==1&a>>>0<0|b>>>0<1){d=a;break a}while(1){d=In(a,b,10,0);e=L;f=e;e=Gn(d,e,10,0);c=c+ -1|0;g[c|0]=a-e|48;e=b>>>0>9;a=d;b=f;if(e){continue}break}}if(d){while(1){c=c+ -1|0;a=(d>>>0)/10|0;g[c|0]=d-o(a,10)|48;b=d>>>0>9;d=a;if(b){continue}break}}return c}function Cg(a){a=a|0;var b=0;i[a+8>>2]=12528;i[a>>2]=12316;b=i[a+96>>2];if(b){i[a+100>>2]=b;nn(b)}b=i[a+80>>2];if(b){i[a+84>>2]=b;nn(b)}b=i[a+68>>2];if(b){i[a+72>>2]=b;nn(b)}b=i[a+56>>2];if(b){i[a+60>>2]=b;nn(b)}i[a+8>>2]=12764;b=i[a+44>>2];if(b){nn(b)}b=i[a+32>>2];if(b){nn(b)}return a|0}function Da(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,h=0,j=0;e=J+ -64|0;J=e;f=M[i[i[b>>2]+44>>2]](b,c)|0;b=M[i[i[b>>2]+40>>2]](b,c)|0;h=Ea(e);j=i[c+56>>2];c=b;b=o(Fh(b),f);Fa(h,j,f<<24>>24,c,0,b,b>>31);b=Dm(96);c=Ja(b,h);i[a>>2]=b;Ka(c,d);g[b+84|0]=1;i[b+72>>2]=i[b+68>>2];J=e- -64|0}function Dg(a){a=a|0;var b=0;i[a+8>>2]=12528;i[a>>2]=12316;b=i[a+96>>2];if(b){i[a+100>>2]=b;nn(b)}b=i[a+80>>2];if(b){i[a+84>>2]=b;nn(b)}b=i[a+68>>2];if(b){i[a+72>>2]=b;nn(b)}b=i[a+56>>2];if(b){i[a+60>>2]=b;nn(b)}i[a+8>>2]=12764;b=i[a+44>>2];if(b){nn(b)}b=i[a+32>>2];if(b){nn(b)}nn(a)}function Ka(a,b){var c=0,d=0,e=0;a:{if(i[a+64>>2]){break a}d=Dm(32);wh(d);c=i[a+64>>2];i[a+64>>2]=d;if(!c){break a}d=i[c>>2];if(d){i[c+4>>2]=d;nn(d)}nn(c)}c=Fh(i[a+28>>2]);c=o(c,g[a+24|0]);d=c;c=c>>31;e=xh(i[a+64>>2],0,Gn(d,c,b,0),L);if(e){Ha(a,i[a+64>>2],d,c);i[a+80>>2]=b}return e}function nl(a,b){var c=0,d=0,e=0;d=i[a+8>>2];c=i[a+12>>2];a:{if((d|0)!=(c|0)){a=c-d|0;e=(a|0)>-1?a:-1;c=d-c|0;a=o((e|0)<1?e:1,((c|0)>(a|0)?c:a)>>>2|0);e=a>>>0>1?a:1;a=0;while(1){c=i[(a<<2)+d>>2];if(i[c+60>>2]==(b|0)){break a}a=a+1|0;if((e|0)!=(a|0)){continue}break}}c=0}return c}function hi(a,b,c){var d=0,e=0,f=0,g=0,h=0;g=i[a+96>>2];e=i[a+100>>2]-g|0;a=(e|0)/12|0;if(!(!e|(b|0)!=(e|0))){h=a>>>0>1?a:1;a=0;while(1){d=o(a,12);f=d+c|0;d=d+g|0;i[f>>2]=i[d>>2];i[f+4>>2]=i[d+4>>2];i[f+8>>2]=i[d+8>>2];a=a+1|0;if((h|0)!=(a|0)){continue}break}}return(b|0)==(e|0)}function Cm(a,b,c){var d=0,e=0,f=0,h=0;f=J-16|0;J=f;e=c-b|0;if(e>>>0<=4294967279){a:{if(e>>>0<=10){wm(a,e);d=a;break a}h=xm(e)+1|0;d=ym(h);zm(a,d);Am(a,h);vm(a,e)}while(1){if((b|0)!=(c|0)){um(d,b);d=d+1|0;b=b+1|0;continue}break}g[f+15|0]=0;um(d,f+15|0);J=f+16|0;return}Fm();x()}function Ei(a,b){var c=0,d=0;c=i[a+4>>2];if(!c){return 0}b=i[i[i[a+8>>2]+(b<<2)>>2]+60>>2];if((b|0)<0){return 0}a=i[c+24>>2];c=i[c+28>>2];if((a|0)==(c|0)){return 0}a:{while(1){d=i[a>>2];if((b|0)==i[d+24>>2]){break a}a=a+4|0;if((c|0)!=(a|0)){continue}break}return 0}return d}function Bg(a){a=a|0;var b=0;i[a>>2]=12528;b=i[a+88>>2];if(b){i[a+92>>2]=b;nn(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;nn(b)}b=i[a+60>>2];if(b){i[a- -64>>2]=b;nn(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}i[a>>2]=12764;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}return a|0}function Cj(a){a=a|0;var b=0,c=0,d=0,e=0;if(a){if(g[a+27|0]<=-1){nn(i[a+16>>2])}c=i[a>>2];if(c){b=c;d=i[a+4>>2];e=b;a:{if((d|0)==(b|0)){break a}while(1){b=d+ -12|0;if(g[d+ -1|0]<=-1){nn(i[b>>2])}d=b;if((b|0)!=(c|0)){continue}break}e=i[a>>2]}b=e;i[a+4>>2]=c;nn(b)}nn(a)}}function Jg(a){a=a|0;var b=0;i[a>>2]=12528;b=i[a+88>>2];if(b){i[a+92>>2]=b;nn(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;nn(b)}b=i[a+60>>2];if(b){i[a- -64>>2]=b;nn(b)}b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}i[a>>2]=12764;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}nn(a)}function gc(a,b,c){a=a|0;b=b|0;c=c|0;a:{b:{switch(c|0){case 0:b=Dm(20);Qb(b);break a;case 1:b=Dm(24);kc(b);break a;case 2:b=Dm(48);me(b);break a;case 3:b=Dm(32);kc(b);i[b+28>>2]=-1;i[b+24>>2]=1032;i[b>>2]=6844;break a;default:break b}}i[a>>2]=0;return}i[a>>2]=b}function Le(a,b,c,d){var e=0;e=J-16|0;J=e;c=Oe(a,b,e+12|0,e+8|0,c);if(!i[c>>2]){b=Dm(40);Gm(b+16|0,d);Gm(b+28|0,d+12|0);i[b+8>>2]=i[e+12>>2];i[b>>2]=0;i[b+4>>2]=0;i[c>>2]=b;d=i[i[a>>2]>>2];if(d){i[a>>2]=d;b=i[c>>2]}Me(i[a+4>>2],b);i[a+8>>2]=i[a+8>>2]+1}J=e+16|0}function Rf(a){var b=0;b=i[a+84>>2];if(b){i[a+88>>2]=b;nn(b)}b=i[a+72>>2];if(b){i[a+76>>2]=b;nn(b)}b=i[a+52>>2];if(b){i[a+56>>2]=b;nn(b)}b=i[a+40>>2];if(b){i[a+44>>2]=b;nn(b)}b=i[a+28>>2];if(b){i[a+32>>2]=b;nn(b)}b=i[a+12>>2];if(b){nn(b)}a=i[a>>2];if(a){nn(a)}}function Qf(a,b){if(b){a=i[b+76>>2];if(a){i[b+80>>2]=a;nn(a)}a=i[b- -64>>2];if(a){i[b+68>>2]=a;nn(a)}a=i[b+48>>2];if(a){i[b+52>>2]=a;nn(a)}a=i[b+24>>2];if(a){i[b+28>>2]=a;nn(a)}a=i[b+12>>2];if(a){i[b+16>>2]=a;nn(a)}a=i[b>>2];if(a){i[b+4>>2]=a;nn(a)}nn(b)}}function Ce(a){var b=0,c=0,d=0,e=0,f=0;d=j[a+12|0];c=i[a+8>>2];a:{if(c>>>0>4095){break a}b=i[a+4>>2];if((b|0)<1){break a}b=b+ -1|0;i[a+4>>2]=b;c=j[b+i[a>>2]|0]|c<<8}d=0-d&255;b=o(d,c>>>8|0);e=c&255;f=e>>>0<d>>>0;i[a+8>>2]=f?b+e|0:(c-d|0)-b|0;return f}function En(a,b,c,d){var e=0,f=0,g=0,h=0;e=b;f=e>>31;e=e>>31;a=a^e;g=a-e|0;h=(b^f)-((a>>>0<e>>>0)+f|0)|0;e=d;f=e>>31;e=e>>31;a=c^e;e=In(g,h,a-e|0,(d^f)-((a>>>0<e>>>0)+f|0)|0);b=b^d;c=b>>31;a=b>>31;b=e^a;d=b-a|0;L=(c^L)-((b>>>0<a>>>0)+c|0)|0;return d}function fl(a,b,c){var d=0;a:{d=a+4|0;a=Ih(a,b);if((d|0)==(a|0)){break a}b=i[a+32>>2];a=i[a+28>>2];if((b-a|0)!=8){break a}b=j[a+4|0]|j[a+5|0]<<8|(j[a+6|0]<<16|j[a+7|0]<<24);i[c>>2]=j[a|0]|j[a+1|0]<<8|(j[a+2|0]<<16|j[a+3|0]<<24);i[c+4>>2]=b}}function jm(a,b,c){var d=0,e=0,f=0,g=0;e=J-16|0;J=e;b=b-a>>2;while(1){if(b){i[e+12>>2]=a;d=e+12|0;f=d;g=i[d>>2];d=b>>>1|0;i[f>>2]=g+(d<<2);f=(d^-1)+b|0;b=d;d=km(i[e+12>>2],c);b=d?f:b;a=d?i[e+12>>2]+4|0:a;continue}break}J=e+16|0;return a}function ai(a,b,c){var d=0,e=0,f=0;d=J-16|0;J=d;a=i[a+96>>2];i[d+8>>2]=0;i[d>>2]=0;i[d+4>>2]=0;e=Dm(12);f=e+12|0;a=pn(e,a+o(b,12)|0,12);b=a;e=a+12|0;a=i[c>>2];if(a){i[c+4>>2]=a;nn(a)}i[c+8>>2]=f;i[c+4>>2]=e;i[c>>2]=b;J=d+16|0;return 1}function Sa(a){a=a|0;var b=0,c=0;if(a){b=i[a+88>>2];i[a+88>>2]=0;if(b){c=i[b+8>>2];if(c){i[b+12>>2]=c;nn(c)}nn(b)}b=i[a+68>>2];if(b){i[a+72>>2]=b;nn(b)}b=i[a+64>>2];i[a+64>>2]=0;if(b){c=i[b>>2];if(c){i[b+4>>2]=c;nn(c)}nn(b)}nn(a)}}function te(a){a=a|0;var b=0;i[a+24>>2]=1140;i[a>>2]=10864;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}i[a>>2]=2264;b=i[a+20>>2];i[a+20>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}i[a>>2]=1884;b=i[a+16>>2];i[a+16>>2]=0;if(b){Sa(b)}return a|0}function pl(a,b){var c=0,d=0,e=0,f=0;c=J-16|0;J=c;d=i[a+12>>2];e=i[a+8>>2];f=i[b>>2];i[b>>2]=0;i[c+8>>2]=f;M[i[i[a>>2]+8>>2]](a,d-e>>2,c+8|0);b=i[c+8>>2];i[c+8>>2]=0;if(b){Sa(b)}J=c+16|0;return(i[a+12>>2]-i[a+8>>2]>>2)+ -1|0}function Dn(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0;e=c>>>16|0;f=a>>>16|0;j=o(e,f);g=c&65535;h=a&65535;i=o(g,h);f=(i>>>16|0)+o(f,g)|0;e=(f&65535)+o(e,h)|0;a=(o(b,c)+j|0)+o(a,d)+(f>>>16)+(e>>>16)|0;b=i&65535|e<<16;L=a;return b}function ue(a){a=a|0;var b=0;i[a+24>>2]=1140;i[a>>2]=10864;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}i[a>>2]=2264;b=i[a+20>>2];i[a+20>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}i[a>>2]=1884;b=i[a+16>>2];i[a+16>>2]=0;if(b){Sa(b)}nn(a)}function zh(a){h[a+38>>1]=0;i[a>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;g[a+29|0]=0;g[a+30|0]=0;g[a+31|0]=0;g[a+32|0]=0;g[a+33|0]=0;g[a+34|0]=0;g[a+35|0]=0;g[a+36|0]=0;return a}function ea(a,b){a=a|0;b=b|0;var c=0,d=0;c=J-16|0;J=c;a=i[a+4>>2];a:{if((a|0)==-1){break a}g[c+15|0]=a;d=i[b+20>>2];if((d|0)>0?1:(d|0)>=0?l[b+16>>2]>0:0){break a}fa(b,i[b+4>>2],c+15|0,c+16|0)}J=c+16|0;return(a|0)!=-1|0}function yh(a,b){var c=0,d=0;d=i[a>>2];c=i[a+4>>2]-d|0;a:{if(c>>>0<b>>>0){rb(a,b-c|0);break a}if(c>>>0<=b>>>0){break a}i[a+4>>2]=b+d}b=a+24|0;c=b;d=b;a=i[b+4>>2];b=i[b>>2]+1|0;if(b>>>0<1){a=a+1|0}i[d>>2]=b;i[c+4>>2]=a}function Hm(a,b,c){var d=0,e=0,f=0;d=J-16|0;J=d;if(4294967279>=c>>>0){a:{if(c>>>0<=10){wm(a,c);e=a;break a}f=xm(c)+1|0;e=ym(f);zm(a,e);Am(a,f);vm(a,c)}lm(e,b,c);g[d+15|0]=0;um(c+e|0,d+15|0);J=d+16|0;return}Fm();x()}function oh(a){a=a|0;var b=0,c=0,d=0;b=i[a+8>>2];d=i[a+12>>2];if((b|0)==(d|0)){return 1}while(1){a:{c=i[b>>2];c=M[i[i[c>>2]+16>>2]](c,i[a+32>>2])|0;b=b+4|0;if((d|0)==(b|0)){break a}if(c){continue}}break}return c|0}function cn(a,b,c){var d=0;d=i[a+16>>2];if(!d){i[a+36>>2]=1;i[a+24>>2]=c;i[a+16>>2]=b;return}a:{if((b|0)==(d|0)){if(i[a+24>>2]!=2){break a}i[a+24>>2]=c;return}g[a+54|0]=1;i[a+24>>2]=2;i[a+36>>2]=i[a+36>>2]+1}}function $(a,b){a=a|0;b=b|0;var c=0,d=0;i[b>>2]=2;c=i[b+8>>2];d=i[b+12>>2]-c|0;if(d>>>0<=4294967291){b=b+8|0;yh(b,d+4|0);c=i[b>>2]}b=c+d|0;a=i[a+4>>2];g[b|0]=a;g[b+1|0]=a>>>8;g[b+2|0]=a>>>16;g[b+3|0]=a>>>24}function Eh(a){var b=0,c=0,d=0,e=0,f=0,h=0;g[a+36|0]=0;d=i[a+20>>2];e=a;f=a;h=i[a+16>>2];a=i[a+32>>2]+7|0;if(a>>>0<7){b=1}c=b>>>3|0;a=b<<29|a>>>3;b=h+a|0;c=c+d|0;i[f+16>>2]=b;i[e+20>>2]=b>>>0<a>>>0?c+1|0:c}function ud(a){a=a|0;var b=0;i[a>>2]=5396;b=i[a+96>>2];if(b){nn(b)}b=i[a+84>>2];if(b){nn(b)}b=i[a+72>>2];if(b){nn(b)}b=i[a+60>>2];if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}function Jc(a){a=a|0;var b=0;i[a>>2]=3380;b=i[a+96>>2];if(b){nn(b)}b=i[a+84>>2];if(b){nn(b)}b=i[a+72>>2];if(b){nn(b)}b=i[a+60>>2];if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}function $l(a,b,c,d,e){var f=0;f=J-256|0;J=f;if(!(e&73728|(c|0)<=(d|0))){c=c-d|0;d=c>>>0<256;qn(f,b&255,d?c:256);if(!d){while(1){Vl(a,f,256);c=c+ -256|0;if(c>>>0>255){continue}break}}Vl(a,f,c)}J=f+256|0}function Jm(a,b,c){var d=0,e=0,f=0,h=0;e=J-16|0;J=e;d=qm(a);a:{if(d>>>0>=c>>>0){f=sm(a);h=f;d=c;if(c){rn(h,b,d)}g[e+15|0]=0;um(c+f|0,e+15|0);Bm(a,c);break a}f=a;a=pm(a);Km(f,d,c-d|0,a,a,c,b)}J=e+16|0}function vd(a){a=a|0;var b=0;i[a>>2]=5396;b=i[a+96>>2];if(b){nn(b)}b=i[a+84>>2];if(b){nn(b)}b=i[a+72>>2];if(b){nn(b)}b=i[a+60>>2];if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function Kc(a){a=a|0;var b=0;i[a>>2]=3380;b=i[a+96>>2];if(b){nn(b)}b=i[a+84>>2];if(b){nn(b)}b=i[a+72>>2];if(b){nn(b)}b=i[a+60>>2];if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function Mm(a,b){var c=0,d=0,e=0,f=0;e=J-16|0;J=e;if(b){d=qm(a);c=pm(a);f=c+b|0;if(d-c>>>0<b>>>0){Om(a,d,f-d|0,c,c)}d=c;c=sm(a);d=d+c|0;if(b){qn(d,0,b)}Bm(a,f);g[e+15|0]=0;um(c+f|0,e+15|0)}J=e+16|0}function gl(a,b,c){var d=0,e=0;d=a+4|0;a=Ih(a,b);if((d|0)==(a|0)){return 0}b=i[a+32>>2];d=i[a+28>>2];if((b|0)!=(d|0)){Lm(c,b-d|0);e=Pm(c);c=i[a+28>>2];pn(e,c,i[a+32>>2]-c|0)}return(b|0)!=(d|0)}function ph(a,b){var c=0,d=0;a:{if((b|0)<0){break a}c=i[a+4>>2];if(i[c+12>>2]-i[c+8>>2]>>2<=(b|0)){break a}a=i[i[a+8>>2]+(i[i[a+20>>2]+(b<<2)>>2]<<2)>>2];d=M[i[i[a>>2]+32>>2]](a,b)|0}return d}function Ia(a){Ea(a);i[a+64>>2]=0;i[a+68>>2]=0;i[a+88>>2]=0;i[a+72>>2]=0;i[a+76>>2]=0;g[a+77|0]=0;g[a+78|0]=0;g[a+79|0]=0;g[a+80|0]=0;g[a+81|0]=0;g[a+82|0]=0;g[a+83|0]=0;g[a+84|0]=0;return a}function Ha(a,b,c,d){var e=0;i[a>>2]=b;e=i[b+20>>2];i[a+8>>2]=i[b+16>>2];i[a+12>>2]=e;e=i[b+24>>2];b=i[b+28>>2];i[a+48>>2]=0;i[a+52>>2]=0;i[a+40>>2]=c;i[a+44>>2]=d;i[a+16>>2]=e;i[a+20>>2]=b}function sn(a){var b=0;b=j[a+74|0];g[a+74|0]=b+ -1|b;b=i[a>>2];if(b&8){i[a>>2]=b|32;return-1}i[a+4>>2]=0;i[a+8>>2]=0;b=i[a+44>>2];i[a+28>>2]=b;i[a+20>>2]=b;i[a+16>>2]=b+i[a+48>>2];return 0}function Zh(a,b,c,d){var e=0,f=0;e=J+ -64|0;J=e;f=zh(e+8|0);Ah(f,b,c);Ie(e+48|0,a,f,d);i[a+24>>2]=i[e+48>>2];Im(a+28|0,e+48|4);a=a+24|0;if(g[e+63|0]<=-1){nn(i[e+52>>2])}J=e- -64|0;return a}function Xh(a,b,c,d){var e=0,f=0;e=J+ -64|0;J=e;f=zh(e+8|0);Ah(f,b,c);He(e+48|0,a,f,d);i[a+24>>2]=i[e+48>>2];Im(a+28|0,e+48|4);a=a+24|0;if(g[e+63|0]<=-1){nn(i[e+52>>2])}J=e- -64|0;return a}function Ea(a){i[a+8>>2]=0;i[a+12>>2]=0;i[a>>2]=0;i[a+40>>2]=0;i[a+44>>2]=0;i[a+28>>2]=9;g[a+24|0]=1;i[a+56>>2]=-1;i[a+60>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;return a}function om(a,b){var c=0,d=0;c=j[a|0];d=j[b|0];a:{if(!c|(c|0)!=(d|0)){break a}while(1){d=j[b+1|0];c=j[a+1|0];if(!c){break a}b=b+1|0;a=a+1|0;if((c|0)==(d|0)){continue}break}}return c-d|0}function ol(a,b){var c=0,d=0;c=i[a+8>>2];a=i[a+12>>2];if((c|0)!=(a|0)){d=a-c>>2;a=0;while(1){if(i[i[(a<<2)+c>>2]+60>>2]==(b|0)){return a}a=a+1|0;if(a>>>0<d>>>0){continue}break}}return-1}function Ok(a,b){a=a|0;b=b|0;var c=0,d=0;sl(a,b);a:{if((b|0)<0){break a}c=i[a+88>>2];d=i[a+84>>2];if(c-d>>2<=(b|0)){break a}b=d+(b<<2)|0;d=b+4|0;c=c-d|0;if(c){rn(b,d,c)}i[a+88>>2]=b+c}}function qh(a,b){var c=0;if(b){qh(a,i[b>>2]);qh(a,i[b+4>>2]);c=b+28|0;a=i[c>>2];i[c>>2]=0;if(a){qh(a+12|0,i[a+16>>2]);rh(a,i[a+4>>2]);nn(a)}if(g[b+27|0]<=-1){nn(i[b+16>>2])}nn(b)}}function on(a){var b=0,c=0;b=i[4274];c=a+3&-4;a=b+c|0;a:{if(a>>>0<=b>>>0?(c|0)>=1:0){break a}if(a>>>0>Sn()<<16>>>0){if(!(F(a|0)|0)){break a}}i[4274]=a;return b}i[4312]=48;return-1}function jc(a,b){a=a|0;b=b|0;var c=0,d=0;d=i[a+16>>2];c=0;a:{if(i[a+20>>2]-d>>2<=(b|0)){break a}b=i[(b<<2)+d>>2];c=0;if((b|0)<0){break a}c=Vb(i[i[a+36>>2]+(b<<2)>>2])}return c|0}function dl(a,b,c){var d=0;a:{d=a+4|0;a=Ih(a,b);if((d|0)==(a|0)){break a}b=i[a+32>>2];a=i[a+28>>2];if((b-a|0)!=4){break a}i[c>>2]=j[a|0]|j[a+1|0]<<8|(j[a+2|0]<<16|j[a+3|0]<<24)}}function Tg(a){a=a|0;var b=0;i[a+8>>2]=11956;i[a>>2]=13076;b=i[a+56>>2];if(b){i[a+60>>2]=b;nn(b)}i[a+8>>2]=12208;b=i[a+44>>2];if(b){nn(b)}b=i[a+32>>2];if(b){nn(b)}return a|0}function Ng(a){a=a|0;var b=0;i[a+8>>2]=12948;i[a>>2]=12784;b=i[a+56>>2];if(b){i[a+60>>2]=b;nn(b)}i[a+8>>2]=12764;b=i[a+44>>2];if(b){nn(b)}b=i[a+32>>2];if(b){nn(b)}return a|0}function Gm(a,b){var c=0,d=0,e=0;d=J-16|0;J=d;c=a;a:{if(!rm(b)){i[c+8>>2]=i[b+8>>2];e=i[b+4>>2];i[c>>2]=i[b>>2];i[c+4>>2]=e;break a}Hm(a,i[b>>2],i[b+4>>2])}J=d+16|0;return a}function Ug(a){a=a|0;var b=0;i[a+8>>2]=11956;i[a>>2]=13076;b=i[a+56>>2];if(b){i[a+60>>2]=b;nn(b)}i[a+8>>2]=12208;b=i[a+44>>2];if(b){nn(b)}b=i[a+32>>2];if(b){nn(b)}nn(a)}function Tb(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{d=i[a+8>>2];if(g[d+24|0]<1){break a}if(!Ka(d,i[b+4>>2]-i[b>>2]>>2)){break a}return M[i[i[a>>2]+32>>2]](a,b,c)|0}return 0}function Og(a){a=a|0;var b=0;i[a+8>>2]=12948;i[a>>2]=12784;b=i[a+56>>2];if(b){i[a+60>>2]=b;nn(b)}i[a+8>>2]=12764;b=i[a+44>>2];if(b){nn(b)}b=i[a+32>>2];if(b){nn(b)}nn(a)}function Nl(a,b,c){var d=0,e=0,f=0;a:{if(!c){break a}while(1){d=j[a|0];e=j[b|0];if((d|0)==(e|0)){b=b+1|0;a=a+1|0;c=c+ -1|0;if(c){continue}break a}break}f=d-e|0}return f}function xd(a){a=a|0;var b=0;i[a>>2]=5632;b=i[a+76>>2];if(b){nn(b)}b=i[a+68>>2];i[a+68>>2]=0;if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}function Tc(a){a=a|0;var b=0;i[a>>2]=3628;b=i[a+76>>2];if(b){nn(b)}b=i[a+68>>2];i[a+68>>2]=0;if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}function Qm(a){var b=0,c=0,d=0,e=0;b=J-32|0;J=b;c=b+8|0;d=b+32|0;e=b+21|0;a:{if((d|0)==(e|0)){break a}}Rm(c,e,d);c=J-16|0;J=c;Cm(a,b+21|0,i[b+8>>2]);J=c+16|0;J=b+32|0}function Ca(a,b){var c=0;c=Dm(40);i[c>>2]=-1;wh(c+8|0);M[i[i[a>>2]+16>>2]](a,c);a=i[b+88>>2];i[b+88>>2]=c;if(a){b=i[a+8>>2];if(b){i[a+12>>2]=b;nn(b)}nn(a)}return 1}function yd(a){a=a|0;var b=0;i[a>>2]=5632;b=i[a+76>>2];if(b){nn(b)}b=i[a+68>>2];i[a+68>>2]=0;if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function Uc(a){a=a|0;var b=0;i[a>>2]=3628;b=i[a+76>>2];if(b){nn(b)}b=i[a+68>>2];i[a+68>>2]=0;if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function bm(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=J-16|0;J=e;a=em(I(i[a+60>>2],b|0,c|0,d&255,e+8|0)|0);J=e+16|0;L=a?-1:i[e+12>>2];return(a?-1:i[e+8>>2])|0}function tc(a){a=a|0;var b=0;i[a>>2]=2264;b=i[a+20>>2];i[a+20>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}i[a>>2]=1884;b=i[a+16>>2];i[a+16>>2]=0;if(b){Sa(b)}return a|0}function _(a,b){a=a|0;b=b|0;var c=0;b=i[b+88>>2];if(!(!b|i[b>>2]!=2)){c=a;a=i[b+8>>2];i[c+4>>2]=j[a|0]|j[a+1|0]<<8|(j[a+2|0]<<16|j[a+3|0]<<24);c=1}return c|0}function kd(a){a=a|0;a:{if(!i[a- -64>>2]|!i[a+68>>2]|(!i[a+44>>2]|!i[a+48>>2])){break a}if(!i[a+52>>2]|!i[a+56>>2]){break a}return i[a+92>>2]!=-1|0}return 0}function ih(a){i[a+40>>2]=0;i[a>>2]=13492;i[a+4>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+32>>2]=0;h[a+36>>1]=0}function Wa(a,b){a=a|0;b=b|0;a:{if(!(M[i[i[a>>2]+36>>2]](a,b)|0)){break a}if(!(M[i[i[a>>2]+40>>2]](a,b)|0)){break a}return M[i[i[a>>2]+44>>2]](a)|0}return 0}function Nm(a,b){var c=0,d=0;c=J-16|0;J=c;a:{if(rm(a)){d=i[a>>2];g[c+15|0]=0;um(b+d|0,c+15|0);vm(a,b);break a}g[c+14|0]=0;um(a+b|0,c+14|0);wm(a,b)}J=c+16|0}function Nf(a){a=a|0;var b=0;i[a>>2]=11956;b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}i[a>>2]=12208;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}return a|0}function Mg(a){a=a|0;var b=0;i[a>>2]=12948;b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}i[a>>2]=12764;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}return a|0}function Wl(a){var b=0,c=0,d=0;if(Pl(g[i[a>>2]])){while(1){b=i[a>>2];d=g[b|0];i[a>>2]=b+1;c=(o(c,10)+d|0)+ -48|0;if(Pl(g[b+1|0])){continue}break}}return c}function Ud(a){a=a|0;a:{if(!i[a+48>>2]|!i[a+52>>2]|(!i[a+28>>2]|!i[a+32>>2])){break a}if(!i[a+36>>2]|!i[a+40>>2]){break a}return i[a+76>>2]!=-1|0}return 0}function $b(a,b){var c=0;Na(a);i[a+36>>2]=0;i[a+40>>2]=0;i[a>>2]=2048;i[a+44>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;i[a+56>>2]=0;c=i[b>>2];i[b>>2]=0;i[a+60>>2]=c}function uc(a){a=a|0;var b=0;i[a>>2]=2264;b=i[a+20>>2];i[a+20>>2]=0;if(b){M[i[i[b>>2]+4>>2]](b)}i[a>>2]=1884;b=i[a+16>>2];i[a+16>>2]=0;if(b){Sa(b)}nn(a)}function Jh(a,b){var c=0;b=Ih(a,b);a:{if((b|0)==(a+4|0)){break a}a=b+28|0;if(g[b+39|0]<=-1){a=i[a>>2]}a=dm(a);if((a|0)==-1){break a}c=(a|0)!=0}return c}function wg(a){a=a|0;var b=0;i[a>>2]=11956;b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}i[a>>2]=12208;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}nn(a)}function ab(a){Na(a);i[a+36>>2]=0;i[a+40>>2]=0;i[a>>2]=1572;i[a+44>>2]=0;i[a+48>>2]=0;i[a+52>>2]=0;i[a+56>>2]=0;i[a+60>>2]=0;i[a+64>>2]=0;i[a+68>>2]=0}function Sg(a){a=a|0;var b=0;i[a>>2]=12948;b=i[a+48>>2];if(b){i[a+52>>2]=b;nn(b)}i[a>>2]=12764;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}nn(a)}function mc(a,b){a=a|0;b=b|0;var c=0,d=0;d=i[a+4>>2];a:{if(d){c=1;if(j[d+36|0]<2){break a}}c=M[i[i[a>>2]+48>>2]](a,i[b+4>>2]-i[b>>2]>>2)|0}return c|0}function Rm(a,b,c){var d=0,e=0;e=a;d=c-b|0;a:{if(!((1-(l[4056]>1)|0)>(d|0)?(d|0)<=9:0)){g[b|0]=49;i[a>>2]=b+1;a=0;break a}i[a>>2]=c;a=61}i[e+4>>2]=a}function $k(a,b){var c=0,d=0;a:{d=i[b>>2];if(!d){break a}c=i[a+28>>2];if(c>>>0<l[a+32>>2]){i[b>>2]=0;i[c>>2]=d;i[a+28>>2]=c+4;break a}al(a+24|0,b)}}function kn(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if($m(a,i[b+8>>2],f)){fn(b,c,d,e);return}a=i[a+8>>2];M[i[i[a>>2]+20>>2]](a,b,c,d,e,f)}function pe(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(j[i[a+4>>2]+36|0]>=2){b=0;if(!(M[i[i[a>>2]+52>>2]](a)|0)){break a}}b=Ca(a+24|0,i[a+16>>2])}return b|0}function Yh(a,b,c){var d=0;d=J-16|0;J=d;Ie(d,a,b,c);i[a+24>>2]=i[d>>2];Im(a+28|0,d|4);a=a+24|0;if(g[d+15|0]<=-1){nn(i[d+4>>2])}J=d+16|0;return a}function Wh(a,b,c){var d=0;d=J-16|0;J=d;He(d,a,b,c);i[a+24>>2]=i[d>>2];Im(a+28|0,d|4);a=a+24|0;if(g[d+15|0]<=-1){nn(i[d+4>>2])}J=d+16|0;return a}function vh(a,b,c){var d=0,e=0,f=0;if((b|0)>0){while(1){e=d<<2;f=i[e+a>>2];i[c+e>>2]=0-(f&1)^f>>>1;d=d+1|0;if((d|0)!=(b|0)){continue}break}}}function oe(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{if(j[i[a+4>>2]+36|0]<=1){d=0;if(!(M[i[i[a>>2]+52>>2]](a)|0)){break a}}d=qc(a,b,c)}return d|0}function ml(a){var b=0,c=0;b=i[a+20>>2];a:{if((i[a+24>>2]-b|0)<1){break a}b=i[b>>2];if((b|0)==-1){break a}c=i[i[a+8>>2]+(b<<2)>>2]}return c}function ll(a,b){var c=0;c=-1;a:{if((b|0)==-1|(b|0)>4){break a}b=o(b,12)+a|0;a=i[b+20>>2];if((i[b+24>>2]-a|0)<1){break a}c=i[a>>2]}return c}function Fa(a,b,c,d,e,f,h){i[a>>2]=0;i[a+56>>2]=b;i[a+48>>2]=0;i[a+52>>2]=0;i[a+40>>2]=f;i[a+44>>2]=h;g[a+32|0]=e;i[a+28>>2]=d;g[a+24|0]=c}function ze(a){i[a>>2]=0;i[a+4>>2]=0;g[a+5|0]=0;g[a+6|0]=0;g[a+7|0]=0;g[a+8|0]=0;g[a+9|0]=0;g[a+10|0]=0;g[a+11|0]=0;g[a+12|0]=0;return a}function Yl(a,b,c,d){if(a|b){while(1){c=c+ -1|0;g[c|0]=j[(a&15)+15488|0]|d;a=(b&15)<<28|a>>>4;b=b>>>4|0;if(a|b){continue}break}}return c}function Nd(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(j[i[a+4>>2]+36|0]>=2){b=0;if(!ga(a+24|0,Vb(a),c)){break a}}b=Ca(a+24|0,i[a+16>>2])}return b|0}function Md(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;a:{if(j[i[a+4>>2]+36|0]<=1){d=0;if(!ga(a+24|0,i[a+8>>2],c)){break a}}d=qc(a,b,c)}return d|0}function Jk(a){a=a|0;var b=0;i[a>>2]=14364;b=i[a+96>>2];if(b){i[a+100>>2]=b;nn(b)}b=i[a+84>>2];if(b){i[a+88>>2]=b;nn(b)}Kk(a);return a|0}function Uh(a){var b=0;Gh(a);b=a+16|0;i[b>>2]=0;i[b+4>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+12>>2]=b;i[a+32>>2]=0;i[a+36>>2]=0;return a}function Lk(a){a=a|0;var b=0;i[a>>2]=14364;b=i[a+96>>2];if(b){i[a+100>>2]=b;nn(b)}b=i[a+84>>2];if(b){i[a+88>>2]=b;nn(b)}Kk(a);nn(a)}function Ld(a,b,c){a=a|0;b=b|0;c=c|0;a:{if(!lc(a,b,c)){break a}a=i[a+8>>2];if(j[a+24|0]!=3){break a}return i[a+28>>2]==9|0}return 0}function rh(a,b){if(b){rh(a,i[b>>2]);rh(a,i[b+4>>2]);a=i[b+28>>2];if(a){i[b+32>>2]=a;nn(a)}if(g[b+27|0]<=-1){nn(i[b+16>>2])}nn(b)}}function Na(a){i[a+4>>2]=0;i[a+8>>2]=0;i[a>>2]=1360;i[a+12>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;i[a+32>>2]=0}function ad(a){a=a|0;var b=0;i[a>>2]=3856;b=i[a+76>>2];if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}function Bd(a){a=a|0;var b=0;i[a>>2]=5848;b=i[a+76>>2];if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}function uj(){var a=0;a=Dm(28);i[a>>2]=0;i[a+4>>2]=0;i[a+24>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0;return a|0}function Ua(a){a=a|0;var b=0;i[a>>2]=1360;b=i[a+16>>2];if(b){i[a+20>>2]=b;nn(b)}b=i[a+4>>2];if(b){i[a+8>>2]=b;nn(b)}return a|0}function Em(a,b){var c=0,d=0,e=0,f=0;c=xn(b);d=Dm(c+13|0);i[d+8>>2]=0;i[d+4>>2]=c;i[d>>2]=c;e=a,f=pn(d+12|0,b,c+1|0),i[e>>2]=f}function Ne(a,b){if(b){Ne(a,i[b>>2]);Ne(a,i[b+4>>2]);if(g[b+39|0]<=-1){nn(i[b+28>>2])}if(g[b+27|0]<=-1){nn(i[b+16>>2])}nn(b)}}function en(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if($m(a,i[b+8>>2],0)){cn(b,c,d);return}a=i[a+8>>2];M[i[i[a>>2]+28>>2]](a,b,c,d)}function bd(a){a=a|0;var b=0;i[a>>2]=3856;b=i[a+76>>2];if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function Ik(a){kl(a);i[a+84>>2]=0;i[a+88>>2]=0;i[a>>2]=14364;i[a+92>>2]=0;i[a+96>>2]=0;i[a+100>>2]=0;i[a+104>>2]=0;return a}function Cd(a){a=a|0;var b=0;i[a>>2]=5848;b=i[a+76>>2];if(b){nn(b)}i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function Dm(a){var b=0;a=a?a:1;a:{while(1){b=mn(a);if(b){break a}b=i[4331];if(b){M[b|0]();continue}break}E();x()}return b}function Zl(a,b,c){if(a|b){while(1){c=c+ -1|0;g[c|0]=a&7|48;a=(b&7)<<29|a>>>3;b=b>>>3|0;if(a|b){continue}break}}return c}function ej(){var a=0;a=Dm(24);i[a+4>>2]=0;i[a+8>>2]=0;i[a+16>>2]=0;i[a+20>>2]=0;i[a>>2]=a+4;i[a+12>>2]=a+16;return a|0}function ta(a,b,c,d,e){var f=0;f=b+ -1|0;if(f>>>0<=29){i[a+4>>2]=b;ua(a+8|0,c,(d<<2)+c|0);m[a+20>>2]=e}return f>>>0<30}function pa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(i[c>>2]==i[c+4>>2]){qa(a,b,i[d+80>>2],d);return 1}ra(a,b,c,d);return 1}function Wi(){var a=0;a=Dm(24);i[a+8>>2]=0;i[a+12>>2]=0;i[a+4>>2]=-1;i[a>>2]=1140;i[a+16>>2]=0;i[a+20>>2]=0;return a|0}function me(a){kc(a);i[a+32>>2]=0;i[a+36>>2]=0;i[a+28>>2]=-1;i[a+24>>2]=1140;i[a>>2]=10864;i[a+40>>2]=0;i[a+44>>2]=0}function ne(a,b,c){a=a|0;b=b|0;c=c|0;if(lc(a,b,c)){a=i[i[i[i[b+4>>2]+8>>2]+(c<<2)>>2]+28>>2]==9}else{a=0}return a|0}function Rb(a,b,c){a=a|0;b=b|0;c=c|0;i[a+4>>2]=b;b=i[i[i[b+4>>2]+8>>2]+(c<<2)>>2];i[a+12>>2]=c;i[a+8>>2]=b;return 1}function Wc(a){a=a|0;var b=0;if(!(!i[a+60>>2]|!i[a+44>>2]|(!i[a+48>>2]|!i[a+52>>2]))){b=i[a+56>>2]!=0}return b|0}function Vh(a){var b=0;b=J-32|0;J=b;Ge(b+8|0,a);a=i[b+24>>2];if(g[b+23|0]<=-1){nn(i[b+12>>2])}J=b+32|0;return a}function $m(a,b,c){if(!c){return i[a+4>>2]==i[b+4>>2]}if((a|0)==(b|0)){return 1}return!om(i[a+4>>2],i[b+4>>2])}function wh(a){i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=0;i[a>>2]=0;i[a+4>>2]=0;i[a+24>>2]=0;i[a+28>>2]=0;return a}function Xm(a){var b=0,c=0;a:{b=i[a>>2]+ -12|0;c=b+8|0;a=i[c>>2]+ -1|0;i[c>>2]=a;if((a|0)>-1){break a}nn(b)}}function Fd(a){a=a|0;var b=0;i[a>>2]=6072;i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}
function Ba(a){var b=0;b=A(8)|0;i[b>>2]=16324;i[b>>2]=16368;Em(b+4|0,a);i[b>>2]=16416;B(b|0,16448,13);x()}function re(a){a=a|0;var b=0,c=0;c=a+24|0;b=Vb(a);if(!b){b=i[a+8>>2]}return wa(c,b,i[i[a+4>>2]+32>>2])|0}function ck(a){a=a|0;if(a){if(g[a+39|0]<=-1){nn(i[a+28>>2])}dk(a+12|0,i[a+16>>2]);Ne(a,i[a+4>>2]);nn(a)}}function xg(a){a=a|0;var b=0;i[a>>2]=12208;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}return a|0}function hd(a){a=a|0;var b=0;i[a>>2]=4092;i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}function Kg(a){a=a|0;var b=0;i[a>>2]=12764;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}return a|0}function Cc(a){a=a|0;var b=0;if(!(!i[a+52>>2]|(!i[a+44>>2]|!i[a+48>>2]))){b=i[a+56>>2]!=0}return b|0}function yg(a){a=a|0;var b=0;i[a>>2]=12208;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}nn(a)}function id(a){a=a|0;var b=0;i[a>>2]=4092;i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function Xc(a,b){a=a|0;b=b|0;var c=0;if(!(i[b+56>>2]|!b|j[b+24|0]!=3)){i[a+60>>2]=b;c=1}return c|0}function Lg(a){a=a|0;var b=0;i[a>>2]=12764;b=i[a+36>>2];if(b){nn(b)}b=i[a+24>>2];if(b){nn(b)}nn(a)}function Gd(a){a=a|0;var b=0;i[a>>2]=6072;i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function ld(a,b){a=a|0;b=b|0;var c=0;if(!(i[b+56>>2]|j[b+24|0]!=3)){i[a- -64>>2]=b;c=1}return c|0}function we(a){var b=0;i[a+16>>2]=0;b=i[a>>2];i[a+4>>2]=b;i[a+12>>2]=b;if(b){i[a+4>>2]=b;nn(b)}}function ln(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if($m(a,i[b+8>>2],f)){fn(b,c,d,e)}}function Vd(a,b){a=a|0;b=b|0;var c=0;if(!(i[b+56>>2]|j[b+24|0]!=3)){i[a+48>>2]=b;c=1}return c|0}function Bh(a,b,c,d){h[a+38>>1]=d;i[a>>2]=b;i[a+16>>2]=0;i[a+20>>2]=0;i[a+8>>2]=c;i[a+12>>2]=0}function xm(a){var b=0;if(a>>>0>=11){b=a+16&-16;a=b+ -1|0;a=(a|0)==11?b:a}else{a=10}return a}function Zb(a){a=a|0;var b=0;i[a>>2]=1884;b=i[a+16>>2];i[a+16>>2]=0;if(b){Sa(b)}return a|0}function Hc(a){a=a|0;var b=0;i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}return a|0}function Cn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;a=M[a|0](b,c,d,e)|0;H(L|0);return a|0}function xa(a){a=a|0;var b=0;i[a>>2]=1140;b=i[a+8>>2];if(b){i[a+12>>2]=b;nn(b)}return a|0}function _b(a){a=a|0;var b=0;i[a>>2]=1884;b=i[a+16>>2];i[a+16>>2]=0;if(b){Sa(b)}nn(a)}function Jn(a){var b=0,c=0;while(1){c=b;if(a){a=a-1&a;b=b+1|0;continue}break}return c}function Ac(a){a=a|0;var b=0;i[a>>2]=3088;b=i[a+32>>2];if(b){i[a+36>>2]=b;nn(b)}nn(a)}function ya(a){a=a|0;var b=0;i[a>>2]=1140;b=i[a+8>>2];if(b){i[a+12>>2]=b;nn(b)}nn(a)}function Zj(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return xi(b,c,d,e,f)|0}function dk(a,b){if(b){dk(a,i[b>>2]);dk(a,i[b+4>>2]);Ne(b+20|0,i[b+24>>2]);nn(b)}}function Ah(a,b,c){i[a+16>>2]=0;i[a+20>>2]=0;i[a>>2]=b;i[a+8>>2]=c;i[a+12>>2]=0}function Qb(a){i[a+12>>2]=-1;i[a+16>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;i[a>>2]=1884}function Li(a){a=a|0;var b=0;if(a){b=i[a+8>>2];if(b){i[a+12>>2]=b;nn(b)}nn(a)}}function dn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if($m(a,i[b+8>>2],0)){cn(b,c,d)}}function rf(a){a=a|0;if(i[a+44>>2]){return M[i[i[a>>2]+48>>2]](a)|0}return 0}function aa(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ba(a,b,c,i[d+80>>2],d)|0}function wn(a,b){var c=0;c=J-16|0;J=c;i[c+12>>2]=b;Tl(i[4178],a,b);J=c+16|0}function tf(a,b){a=a|0;b=b|0;a=i[a+48>>2];return M[i[i[a>>2]+20>>2]](a,b)|0}function mj(a){a=a|0;var b=0;if(a){b=i[a>>2];if(b){i[a+4>>2]=b;nn(b)}nn(a)}}function jj(){var a=0;a=Dm(12);i[a>>2]=0;i[a+4>>2]=0;i[a+8>>2]=0;return a|0}function hj(a){a=a|0;var b=0;b=a+4|0;if(g[a+15|0]<=-1){b=i[b>>2]}return b|0}function Lm(a,b){var c=0;c=pm(a);if(c>>>0<b>>>0){Mm(a,b-c|0);return}Nm(a,b)}function Bf(a,b){a=a|0;b=b|0;a=i[a+48>>2];return M[i[i[a>>2]+16>>2]](a,b)|0}function Af(a,b){a=a|0;b=b|0;a=i[a+48>>2];return M[i[i[a>>2]+12>>2]](a,b)|0}function ve(a){i[a>>2]=0;i[a+4>>2]=0;i[a+16>>2]=0;i[a+8>>2]=0;i[a+12>>2]=0}function qm(a){if(rm(a)){a=(i[a+8>>2]&2147483647)+ -1|0}else{a=10}return a}function Kn(a){var b=0;b=a&31;a=0-a&31;return(-1>>>b&-2)<<b|(-1<<a&-2)>>>a}function un(a,b,c){a:{if(i[c+76>>2]<=-1){a=tn(a,b,c);break a}a=tn(a,b,c)}}function nm(a,b){var c=0,d=0;c=J-16|0;J=c;d=km(a,b);J=c+16|0;return d?b:a}function Fh(a){a=a+ -1|0;if(a>>>0<=10){return i[(a<<2)+14040>>2]}return-1}function pd(a,b){a=a|0;b=b|0;if(b>>>0<=1){i[a+28>>2]=b}return b>>>0<2|0}function fj(a){a=a|0;if(a){qh(a+12|0,i[a+16>>2]);rh(a,i[a+4>>2]);nn(a)}}function fh(a,b){a=a|0;b=b|0;g[b+84|0]=1;i[b+72>>2]=i[b+68>>2];return 1}function Oa(a,b,c){a=a|0;b=b|0;c=c|0;i[a+32>>2]=c;i[a+28>>2]=b;return 1}function gn(a,b,c){if(!(i[a+28>>2]==1|i[a+4>>2]!=(b|0))){i[a+28>>2]=c}}function hm(a,b,c){var d=0;d=J-16|0;J=d;a=jm(a,b,c);J=d+16|0;return a}function Jj(a,b,c){a=a|0;b=b|0;c=c|0;return i[i[b+8>>2]+(c<<2)>>2]}function $i(){var a=0;a=Dm(8);i[a+4>>2]=-1;i[a>>2]=1032;return a|0}function zf(a){a=a|0;a=i[a+48>>2];return M[i[i[a>>2]+36>>2]](a)|0}function wf(a){a=a|0;a=i[a+48>>2];return M[i[i[a>>2]+28>>2]](a)|0}function vf(a){a=a|0;a=i[a+48>>2];return M[i[i[a>>2]+24>>2]](a)|0}function ij(a){a=a|0;if(a){if(g[a+15|0]<=-1){nn(i[a+4>>2])}nn(a)}}function Fj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Zh(a,b,c,d)|0}function Ej(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Xh(a,b,c,d)|0}function se(a,b){a=a|0;b=b|0;return sa(a+24|0,Vb(a),i[a+8>>2])|0}function Od(a,b){a=a|0;b=b|0;return da(a+24|0,Vb(a),i[a+8>>2])|0}function Yj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return vi(b,c,d)|0}function Xj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ri(b,c,d)|0}function Wj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return oi(b,c,d)|0}function Vj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return mi(b,c,d)|0}function Uj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ki(b,c,d)|0}function Tj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ti(b,c,d)|0}function Sj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ji(b,c,d)|0}function Sb(a,b){a=a|0;b=b|0;i[a+12>>2]=-1;i[a+8>>2]=b;return 1}function Rj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ii(b,c,d)|0}function Qj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return hi(b,c,d)|0}function Pj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return gi(b,c,d)|0}function Nj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ai(b,c,d)|0}function Ij(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return $h(b,c,d)|0}function ym(a){if(4294967295<a>>>0){Ba(15926);x()}return Dm(a)}function qe(a,b){a=a|0;b=b|0;return M[i[i[a>>2]+56>>2]](a,b)|0}function Xi(a,b){a=a|0;b=b|0;return M[i[i[a>>2]+12>>2]](a,b)|0}function Mh(a,b,c){if((c|0)>=1){m[a>>2]=b/p(c|0)}return(c|0)>0}function Ji(){var a=0;a=Dm(40);i[a>>2]=-1;wh(a+8|0);return a|0}function Bn(a,b){a=a|0;b=b|0;if(!i[4714]){i[4715]=b;i[4714]=a}}function Yi(a,b){a=a|0;b=b|0;return p(m[i[a+8>>2]+(b<<2)>>2])}function kj(a,b){a=a|0;b=b|0;return p(m[i[a>>2]+(b<<2)>>2])}function Gh(a){i[a+4>>2]=0;i[a+8>>2]=0;i[a>>2]=a+4;return a}function vl(a,b,c){return(i[a+12>>2]+ -1|0)==(c|0)?0:c+1|0}function pm(a){if(rm(a)){return i[a+4>>2]}return j[a+11|0]}function dj(a){a=a|0;return(i[a+100>>2]-i[a+96>>2]|0)/12|0}function Xa(a,b){a=a|0;b=b|0;return i[i[a+4>>2]+(b<<2)>>2]}function vn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;L=0;return 0}function Ln(a){if(a){return 31-r(a+ -1^a)|0}return 32}
function tj(a,b){a=a|0;b=b|0;return i[i[a>>2]+(b<<2)>>2]}function sj(a,b){a=a|0;b=b|0;return k[i[a>>2]+(b<<1)>>1]}function qj(a,b){a=a|0;b=b|0;return h[i[a>>2]+(b<<1)>>1]}function zj(a,b,c){a=a|0;b=b|0;c=c|0;return Rh(a,b,c)|0}function lc(a,b,c){a=a|0;b=b|0;c=c|0;return Rb(a,b,c)|0}function bk(a,b,c){a=a|0;b=b|0;c=c|0;return Yh(a,b,c)|0}function ak(a,b,c){a=a|0;b=b|0;c=c|0;return Wh(a,b,c)|0}function Wm(a){a=a|0;i[a>>2]=16368;Xm(a+4|0);return a|0}function Bj(a,b,c){a=a|0;b=b|0;c=c|0;return Sh(a,b,c)|0}function xj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ph(b,c,d)}function wj(a,b,c){a=a|0;b=b|0;c=c|0;return Oh(b,c)|0}function vj(a,b,c){a=a|0;b=b|0;c=c|0;return Nh(b,c)|0}function em(a){if(!a){return 0}i[4312]=a;return-1}
function Pm(a){if(pm(a)>>>0<=0){im();x()}return sm(a)}function Oj(a,b,c){a=a|0;b=b|0;c=c|0;return bi(b,c)|0}function Mj(a,b,c){a=a|0;b=b|0;c=c|0;return Ei(b,c)|0}function Kj(a,b,c){a=a|0;b=b|0;c=c|0;return nl(b,c)|0}function Hj(a,b,c){a=a|0;b=b|0;c=c|0;return _h(b,c)|0}function Gj(a,b,c){a=a|0;b=b|0;c=c|0;return ll(b,c)|0}function kl(a){i[a>>2]=14760;qn(a+4|0,0,80);return a}function Im(a,b){if((a|0)!=(b|0)){Jm(a,sm(b),pm(b))}}function yj(a,b,c){a=a|0;b=b|0;c=c|0;return+Qh(b,c)}function bj(a){a=a|0;return i[a+12>>2]-i[a+8>>2]>>2}function pj(a,b){a=a|0;b=b|0;return j[i[a>>2]+b|0]}function nj(a,b){a=a|0;b=b|0;return g[i[a>>2]+b|0]}function Ya(a){a=a|0;return i[a+8>>2]-i[a+4>>2]>>2}function _i(a){a=a|0;if(a){M[i[i[a>>2]+4>>2]](a)}}function Df(a,b){a=a|0;b=b|0;i[a+4>>2]=b;return 1}function Bm(a,b){if(rm(a)){vm(a,b);return}wm(a,b)}function sm(a){if(rm(a)){return i[a>>2]}return a}function rj(a){a=a|0;return i[a+4>>2]-i[a>>2]>>1}function lj(a){a=a|0;return i[a+4>>2]-i[a>>2]>>2}function qf(a){ih(a);i[a+44>>2]=0;i[a>>2]=11264}function oj(a){a=a|0;return i[a+4>>2]-i[a>>2]|0}function Sl(a,b){if(!a){return 0}return Rl(a,b)}function kc(a){Qb(a);i[a+20>>2]=0;i[a>>2]=2264}function Vl(a,b,c){if(!(j[a|0]&32)){tn(b,c,a)}}function Ii(a,b,c){a=a|0;b=b|0;c=c|0;Ah(a,b,c)}function vc(a){a=a|0;return g[i[a+8>>2]+24|0]}function Ub(a,b,c){a=a|0;b=b|0;c=c|0;return 1}function Lj(a,b){a=a|0;b=b|0;return i[b+4>>2]}function An(a){a=a|0;a=J-a&-16;J=a;return a|0}function Aj(a,b){a=a|0;b=b|0;return i[b+8>>2]}function Aa(a,b){a=a|0;b=b|0;return g[b+24|0]}function ie(a){a=a|0;i[a>>2]=9848;return a|0}function ce(a){a=a|0;i[a>>2]=8844;return a|0}function _d(a){a=a|0;i[a>>2]=7896;return a|0}function Sd(a){a=a|0;i[a>>2]=6960;return a|0}function am(a){a=a|0;return C(i[a+60>>2])|0}function In(a,b,c,d){a=Fn(a,b,c,d);return a}function Hn(a,b,c,d){a=En(a,b,c,d);return a}function Gn(a,b,c,d){a=Dn(a,b,c,d);return a}function $j(a,b){a=a|0;b=b|0;return Vh(b)|0}function Kh(a){i[a>>2]=1065353216;return a}function Zi(a){a=a|0;return p(m[a+20>>2])}function Am(a,b){i[a+8>>2]=b|-2147483648}function km(a,b){return l[a>>2]<l[b>>2]}function je(a){a=a|0;i[a>>2]=9848;nn(a)}function de(a){a=a|0;i[a>>2]=8844;nn(a)}function Td(a){a=a|0;i[a>>2]=6960;nn(a)}function $d(a){a=a|0;i[a>>2]=7896;nn(a)}function Za(a){a=a|0;return i[a+28>>2]}function Vi(a){a=a|0;return i[a+60>>2]}function Ui(a){a=a|0;return i[a+48>>2]}function Ti(a){a=a|0;return i[a+40>>2]}function Qi(a){a=a|0;return i[a+56>>2]}function Pi(a){a=a|0;return i[a+88>>2]}function Oi(a){a=a|0;return i[a+80>>2]}function rm(a){return j[a+11|0]>>>7|0}function la(a,b){a=a|0;b=b|0;return 2}function ka(a,b){a=a|0;b=b|0;return 6}function gj(a){a=a|0;return!i[a>>2]|0}function cg(a){a=a|0;return i[a+8>>2]}function _a(a,b){a=a|0;b=b|0;return 0}function Zm(a){a=a|0;return i[a+4>>2]}function Si(a){a=a|0;return j[a+32|0]}function Ri(a){a=a|0;return g[a+24|0]}function Ec(a,b){a=a|0;b=b|0;return-1}function Bc(a){a=a|0;return i[a+4>>2]}function $a(a,b){a=a|0;b=b|0;return 1}function _j(a,b){a=a|0;b=b|0;Je(a,b)}function lm(a,b,c){if(c){pn(a,b,c)}}function gm(a,b,c){return hm(a,b,c)}function Pl(a){return a+ -48>>>0<10}function Lh(a,b,c){m[a>>2]=p(c|0)/b}function Ki(a){a=a|0;return i[a>>2]}function cj(){return Ik(Dm(108))|0}function aj(){return kl(Dm(84))|0}function Vm(a){a=a|0;return 16301}function Ni(){return Ia(Dm(96))|0}function Mi(){return Ea(Dm(64))|0}function Hi(){return zh(Dm(40))|0}function Gi(a){a=a|0;if(a){nn(a)}}function Dj(){return Uh(Dm(40))|0}function _m(a){a=a|0;Wm(a);nn(a)}function mm(a,b){return nm(a,b)}function ha(a){a=a|0;return a|0}function vg(a){a=a|0;nn(tg(a))}function um(a,b){g[a|0]=j[b|0]}function ul(a){a=a|0;nn(Kk(a))}function sg(a){a=a|0;nn(rg(a))}function qg(a){a=a|0;nn(pg(a))}function Ym(a){a=a|0;nn(Wm(a))}function Mb(a){a=a|0;nn(Lb(a))}function za(a){a=a|0;return 1}function jd(a){a=a|0;return 6}function ja(a){a=a|0;return 2}function cd(a){a=a|0;return 5}function Vc(a){a=a|0;return 3}function Lc(a){a=a|0;return 4}function Dc(a){a=a|0;return 0}function wm(a,b){g[a+11|0]=b}function vm(a,b){i[a+4>>2]=b}function Sm(){Ba(16264);x()}function Fm(){Ba(16200);x()}function zm(a,b){i[a>>2]=b}function ia(a){a=a|0;nn(a)}function Ol(){return 17248}function Fi(){return 14180}function zn(a){a=a|0;J=a}function yn(){return J|0}function Va(a){a=a|0;x()}function rk(){return 12}function qk(){return 11}function pk(){return 10}function vk(){return-5}function uk(){return-4}function tk(){return-3}function sk(){return-2}function ok(){return 9}function nk(){return 8}function mk(){return 7}function lk(){return 6}function kk(){return 5}function jk(){return 4}function ik(){return 3}function hk(){return 2}function gk(){return 1}function fk(){return 0}function ek(){return-1}function Tm(){im();x()}function im(){E();x()}function tm(a){a=a|0}function Um(){x()}function Z(){}
// EMSCRIPTEN_END_FUNCS
var M=Mn([null,ha,ia,ja,_,$,aa,da,ea,ga,Da,ka,la,Wm,xa,ya,za,ma,oa,pa,sa,va,wa,ka,Aa,Ua,Va,Oa,Pa,Wa,Xa,Ya,Za,_a,Um,$a,za,Lb,Mb,bb,Bb,Gb,Zb,_b,Rb,Sb,Tb,Ub,$a,Xb,Yb,hc,ic,ac,cc,jc,dc,ec,fc,gc,tc,uc,lc,mc,nc,qc,oc,vc,sc,Hc,Ac,za,Bc,Cc,Dc,Ec,_a,Dc,za,Fc,Gc,Va,Va,Ac,ja,Cc,Ic,Jc,Kc,Lc,Cc,Mc,Pc,Tc,Uc,Vc,Wc,za,_a,Xc,Yc,Zc,ad,bd,cd,Wc,za,_a,Xc,dd,ed,hd,id,jd,kd,za,_a,ld,md,nd,ha,ia,pd,Za,od,Va,Ac,za,Cc,sd,Va,Ac,ja,Cc,td,ud,vd,Lc,Cc,Mc,wd,xd,yd,Vc,Wc,za,_a,Xc,Yc,zd,Bd,Cd,cd,Wc,za,_a,Xc,dd,Dd,Fd,Gd,jd,kd,za,_a,ld,md,Hd,ha,ia,pd,Za,Id,Va,Ac,Dc,za,Kd,tc,uc,Ld,Nd,Md,Pd,ja,Od,Sd,Td,jd,Bc,Ud,za,_a,Vd,za,ja,Wd,Xd,ha,ia,pd,Za,od,_d,$d,jd,Ud,za,_a,Vd,Wd,ae,ha,ia,pd,Za,Id,ha,ia,Dc,za,Dc,Ec,_a,Zd,be,ce,de,jd,Bc,Ud,za,_a,Vd,za,Vc,ee,fe,ha,ia,pd,Za,od,ie,je,jd,Ud,za,_a,Vd,ee,ke,ha,ia,pd,Za,Id,ia,Dc,za,Dc,Ec,_a,he,le,te,ue,ne,pe,oe,qe,re,se,sf,Va,za,za,rf,nh,oh,za,Dc,_a,_a,xf,yf,uf,tf,wf,zf,Af,Bf,vf,pg,qg,Df,Ef,Ff,Gf,Of,za,Bc,cg,rg,sg,Df,Ef,Ff,Gf,eg,za,Bc,cg,tg,vg,Df,Ef,Ff,Gf,jg,za,Bc,cg,Nf,wg,Mf,xg,yg,Cg,Dg,Eg,Fg,Bg,Jg,zg,Kg,Lg,Ng,Og,Pg,Qg,Mg,Sg,Tg,Ug,Vg,Wg,eh,dh,$g,ha,ia,fh,gh,Va,Dc,za,eh,th,sh,eh,dh,uh,Jk,Lk,Mk,Ok,Kk,ul,ql,sl,am,cm,bm,ha,ia,Vm,Ym,Zm,_m,ha,ia,tm,tm,an,ln,jn,dn,ia,kn,hn,en,Dc,vn]);function Sn(){return f.byteLength/65536|0}function Tn(bo){bo=bo|0;var N=Sn()|0;var O=N+bo|0;if(N<O&&O<65536){var P=new ArrayBuffer(o(O,65536));var Q=new $n.Int8Array(P);Q.set(g);g=Q;g=new $n.Int8Array(P);h=new $n.Int16Array(P);i=new $n.Int32Array(P);j=new $n.Uint8Array(P);k=new $n.Uint16Array(P);l=new $n.Uint32Array(P);m=new $n.Float32Array(P);n=new $n.Float64Array(P);f=P;e.buffer=P}return N}return{"__indirect_function_table":M,"__wasm_call_ctors":Z,"__em_js__array_bounds_check_error":Fi,"emscripten_bind_VoidPtr___destroy___0":Gi,"emscripten_bind_DecoderBuffer_DecoderBuffer_0":Hi,"emscripten_bind_DecoderBuffer_Init_2":Ii,"emscripten_bind_DecoderBuffer___destroy___0":Gi,"emscripten_bind_AttributeTransformData_AttributeTransformData_0":Ji,"emscripten_bind_AttributeTransformData_transform_type_0":Ki,"emscripten_bind_AttributeTransformData___destroy___0":Li,"emscripten_bind_GeometryAttribute_GeometryAttribute_0":Mi,"emscripten_bind_GeometryAttribute___destroy___0":Gi,"emscripten_bind_PointAttribute_PointAttribute_0":Ni,"emscripten_bind_PointAttribute_size_0":Oi,"emscripten_bind_PointAttribute_GetAttributeTransformData_0":Pi,"emscripten_bind_PointAttribute_attribute_type_0":Qi,"emscripten_bind_PointAttribute_data_type_0":Za,"emscripten_bind_PointAttribute_num_components_0":Ri,"emscripten_bind_PointAttribute_normalized_0":Si,"emscripten_bind_PointAttribute_byte_stride_0":Ti,"emscripten_bind_PointAttribute_byte_offset_0":Ui,"emscripten_bind_PointAttribute_unique_id_0":Vi,"emscripten_bind_PointAttribute___destroy___0":Sa,"emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0":Wi,"emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1":Xi,"emscripten_bind_AttributeQuantizationTransform_quantization_bits_0":Bc,"emscripten_bind_AttributeQuantizationTransform_min_value_1":Yi,"emscripten_bind_AttributeQuantizationTransform_range_0":Zi,"emscripten_bind_AttributeQuantizationTransform___destroy___0":_i,"emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0":$i,"emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1":Xi,"emscripten_bind_AttributeOctahedronTransform_quantization_bits_0":Bc,"emscripten_bind_AttributeOctahedronTransform___destroy___0":_i,"emscripten_bind_PointCloud_PointCloud_0":aj,"emscripten_bind_PointCloud_num_attributes_0":bj,"emscripten_bind_PointCloud_num_points_0":Oi,"emscripten_bind_PointCloud___destroy___0":_i,"emscripten_bind_Mesh_Mesh_0":cj,"emscripten_bind_Mesh_num_faces_0":dj,"emscripten_bind_Mesh_num_attributes_0":bj,"emscripten_bind_Mesh_num_points_0":Oi,"emscripten_bind_Mesh___destroy___0":_i,"emscripten_bind_Metadata_Metadata_0":ej,"emscripten_bind_Metadata___destroy___0":fj,"emscripten_bind_Status_code_0":Ki,"emscripten_bind_Status_ok_0":gj,"emscripten_bind_Status_error_msg_0":hj,"emscripten_bind_Status___destroy___0":ij,"emscripten_bind_DracoFloat32Array_DracoFloat32Array_0":jj,"emscripten_bind_DracoFloat32Array_GetValue_1":kj,"emscripten_bind_DracoFloat32Array_size_0":lj,"emscripten_bind_DracoFloat32Array___destroy___0":mj,"emscripten_bind_DracoInt8Array_DracoInt8Array_0":jj,"emscripten_bind_DracoInt8Array_GetValue_1":nj,"emscripten_bind_DracoInt8Array_size_0":oj,"emscripten_bind_DracoInt8Array___destroy___0":mj,"emscripten_bind_DracoUInt8Array_DracoUInt8Array_0":jj,"emscripten_bind_DracoUInt8Array_GetValue_1":pj,"emscripten_bind_DracoUInt8Array_size_0":oj,"emscripten_bind_DracoUInt8Array___destroy___0":mj,"emscripten_bind_DracoInt16Array_DracoInt16Array_0":jj,"emscripten_bind_DracoInt16Array_GetValue_1":qj,"emscripten_bind_DracoInt16Array_size_0":rj,"emscripten_bind_DracoInt16Array___destroy___0":mj,"emscripten_bind_DracoUInt16Array_DracoUInt16Array_0":jj,"emscripten_bind_DracoUInt16Array_GetValue_1":sj,"emscripten_bind_DracoUInt16Array_size_0":rj,"emscripten_bind_DracoUInt16Array___destroy___0":mj,"emscripten_bind_DracoInt32Array_DracoInt32Array_0":jj,"emscripten_bind_DracoInt32Array_GetValue_1":tj,"emscripten_bind_DracoInt32Array_size_0":lj,"emscripten_bind_DracoInt32Array___destroy___0":mj,"emscripten_bind_DracoUInt32Array_DracoUInt32Array_0":jj,"emscripten_bind_DracoUInt32Array_GetValue_1":tj,"emscripten_bind_DracoUInt32Array_size_0":lj,"emscripten_bind_DracoUInt32Array___destroy___0":mj,"emscripten_bind_MetadataQuerier_MetadataQuerier_0":uj,"emscripten_bind_MetadataQuerier_HasEntry_2":vj,"emscripten_bind_MetadataQuerier_GetIntEntry_2":wj,"emscripten_bind_MetadataQuerier_GetIntEntryArray_3":xj,"emscripten_bind_MetadataQuerier_GetDoubleEntry_2":yj,"emscripten_bind_MetadataQuerier_GetStringEntry_2":zj,"emscripten_bind_MetadataQuerier_NumEntries_1":Aj,"emscripten_bind_MetadataQuerier_GetEntryName_2":Bj,"emscripten_bind_MetadataQuerier___destroy___0":Cj,"emscripten_bind_Decoder_Decoder_0":Dj,"emscripten_bind_Decoder_DecodeArrayToPointCloud_3":Ej,"emscripten_bind_Decoder_DecodeArrayToMesh_3":Fj,"emscripten_bind_Decoder_GetAttributeId_2":Gj,"emscripten_bind_Decoder_GetAttributeIdByName_2":Hj,"emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3":Ij,"emscripten_bind_Decoder_GetAttribute_2":Jj,"emscripten_bind_Decoder_GetAttributeByUniqueId_2":Kj,"emscripten_bind_Decoder_GetMetadata_1":Lj,"emscripten_bind_Decoder_GetAttributeMetadata_2":Mj,"emscripten_bind_Decoder_GetFaceFromMesh_3":Nj,"emscripten_bind_Decoder_GetTriangleStripsFromMesh_2":Oj,"emscripten_bind_Decoder_GetTrianglesUInt16Array_3":Pj,"emscripten_bind_Decoder_GetTrianglesUInt32Array_3":Qj,"emscripten_bind_Decoder_GetAttributeFloat_3":Rj,"emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3":Sj,"emscripten_bind_Decoder_GetAttributeIntForAllPoints_3":Tj,"emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3":Uj,"emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3":Vj,"emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3":Wj,"emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3":Xj,"emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3":Tj,"emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3":Yj,"emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5":Zj,"emscripten_bind_Decoder_SkipAttributeTransform_1":_j,"emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1":$j,"emscripten_bind_Decoder_DecodeBufferToPointCloud_2":ak,"emscripten_bind_Decoder_DecodeBufferToMesh_2":bk,"emscripten_bind_Decoder___destroy___0":ck,"emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM":ek,"emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM":fk,"emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM":gk,"emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM":hk,"emscripten_enum_draco_GeometryAttribute_Type_INVALID":ek,"emscripten_enum_draco_GeometryAttribute_Type_POSITION":fk,"emscripten_enum_draco_GeometryAttribute_Type_NORMAL":gk,"emscripten_enum_draco_GeometryAttribute_Type_COLOR":hk,"emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD":ik,"emscripten_enum_draco_GeometryAttribute_Type_GENERIC":jk,"emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE":ek,"emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD":fk,"emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH":gk,"emscripten_enum_draco_DataType_DT_INVALID":fk,"emscripten_enum_draco_DataType_DT_INT8":gk,"emscripten_enum_draco_DataType_DT_UINT8":hk,"emscripten_enum_draco_DataType_DT_INT16":ik,"emscripten_enum_draco_DataType_DT_UINT16":jk,"emscripten_enum_draco_DataType_DT_INT32":kk,"emscripten_enum_draco_DataType_DT_UINT32":lk,"emscripten_enum_draco_DataType_DT_INT64":mk,"emscripten_enum_draco_DataType_DT_UINT64":nk,"emscripten_enum_draco_DataType_DT_FLOAT32":ok,"emscripten_enum_draco_DataType_DT_FLOAT64":pk,"emscripten_enum_draco_DataType_DT_BOOL":qk,"emscripten_enum_draco_DataType_DT_TYPES_COUNT":rk,"emscripten_enum_draco_StatusCode_OK":fk,"emscripten_enum_draco_StatusCode_DRACO_ERROR":ek,"emscripten_enum_draco_StatusCode_IO_ERROR":sk,"emscripten_enum_draco_StatusCode_INVALID_PARAMETER":tk,"emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION":uk,"emscripten_enum_draco_StatusCode_UNKNOWN_VERSION":vk,"__errno_location":Ol,"stackSave":yn,"stackRestore":zn,"stackAlloc":An,"setThrew":Bn,"free":nn,"malloc":mn,"__data_end":K,"dynCall_jiji":Cn}}var R=new Uint8Array(Wn.buffer);for(var S=new Uint8Array(123),T=25;T>=0;--T){S[48+T]=52+T;S[65+T]=T;S[97+T]=26+T}S[43]=62;S[47]=63;function Un(co,eo,fo){var U,V,T=0,W=eo,X=fo.length,Y=eo+(X*3>>2)-(fo[X-2]=="=")-(fo[X-1]=="=");for(;T<X;T+=4){U=S[fo.charCodeAt(T+1)];V=S[fo.charCodeAt(T+2)];co[W++]=S[fo.charCodeAt(T)]<<2|U>>4;if(W<Y)co[W++]=U<<4|V>>2;if(W<Y)co[W++]=V<<6|S[fo.charCodeAt(T+3)]}}Un(R,1028,"YAQAAAEAAAACAAAAAwAAAAQAAAAFAAAABgAAAAcAAAAIAAAACQAAAAoAAAALAAAADAAAAE41ZHJhY28yOEF0dHJpYnV0ZU9jdGFoZWRyb25UcmFuc2Zvcm1FAAD0QAAAOAQAAEAFAAAAAAAA0AQAAA4AAAAPAAAAEAAAABEAAAASAAAAEwAAABQAAAAVAAAAFgAAAAoAAAAXAAAAGAAAAE41ZHJhY28zMEF0dHJpYnV0ZVF1YW50aXphdGlvblRyYW5zZm9ybUUAAAAA9EAAAKQEAABABQAAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQBONWRyYWNvMThBdHRyaWJ1dGVUcmFuc2Zvcm1FAAAAAMxAAAAgBQAAAAAAAMwFAAAZAAAAGgAAABsAAAAcAAAAHQAAAB4AAAAfAAAAIAAAACEAAAAiAAAAIwAAACQAAABONWRyYWNvMTdBdHRyaWJ1dGVzRGVjb2RlckUATjVkcmFjbzI2QXR0cmlidXRlc0RlY29kZXJJbnRlcmZhY2VFAAAAAMxAAACcBQAA9EAAAIAFAADEBQAAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQAAAAAA0AYAACUAAAAmAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACcAAAAoAAAAKQAAAEtkVHJlZUF0dHJpYnV0ZXNEZWNvZGVyOiBjb21wcmVzc2lvbiBsZXZlbCAlaSBub3Qgc3VwcG9ydGVkLgoAc2tpcF9hdHRyaWJ1dGVfdHJhbnNmb3JtAE41ZHJhY28yM0tkVHJlZUF0dHJpYnV0ZXNEZWNvZGVyRQAAAAD0QAAAqwYAAMwFAABhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAE1ldGhvZCBub3Qgc3VwcG9ydGVkLiAKAFZlcnNpb24gbm90IHN1cHBvcnRlZC4gCgAAAAAAAAAAqAcAACoAAAArAAAALAAAAC0AAAAuAAAALwAAADAAAAAxAAAAMgAAAE41ZHJhY28yNlNlcXVlbnRpYWxBdHRyaWJ1dGVEZWNvZGVyRQAAAADMQAAAgAcAAP////9hbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAAAAAACACAAAMwAAADQAAAAbAAAANQAAADYAAAAeAAAAHwAAACAAAAA3AAAAOAAAADkAAAA6AAAAOwAAAHNraXBfYXR0cmlidXRlX3RyYW5zZm9ybQBONWRyYWNvMzdTZXF1ZW50aWFsQXR0cmlidXRlRGVjb2RlcnNDb250cm9sbGVyRQAAAAD0QAAATQgAAMwFAABhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAAAAAAA4CQAAPAAAAD0AAAA+AAAALQAAAC4AAAAvAAAAPwAAADEAAABAAAAAQQAAAEIAAABDAAAARAAAAE41ZHJhY28zM1NlcXVlbnRpYWxJbnRlZ2VyQXR0cmlidXRlRGVjb2RlckUA9EAAAAwJAACoBwAAAAAAAMQLAABFAAAARgAAAEcAAABIAAAASQAAAEoAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABONWRyYWNvNDBNZXNoUHJlZGljdGlvblNjaGVtZVBhcmFsbGVsb2dyYW1EZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzIzUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFRUUATjVkcmFjbzM3UHJlZGljdGlvblNjaGVtZVR5cGVkRGVjb2RlckludGVyZmFjZUlpaUVFAE41ZHJhY28zMlByZWRpY3Rpb25TY2hlbWVEZWNvZGVySW50ZXJmYWNlRQBONWRyYWNvMjVQcmVkaWN0aW9uU2NoZW1lSW50ZXJmYWNlRQDMQAAAaAsAAPRAAAA9CwAAjAsAAPRAAAAJCwAAlAsAAPRAAAC1CgAAoAsAAPRAAAAfCgAArAsAAPRAAAB8CQAAuAsAAAAAAAC4CwAARQAAAFEAAAAiAAAASAAAACIAAABKAAAASwAAAEwAAABNAAAATgAAAE8AAAAiAAAAAAAAAKwLAABFAAAAUgAAACIAAABIAAAAIgAAAEoAAABLAAAATAAAAE0AAABOAAAATwAAACIAAAAAAAAAIA0AAEUAAABTAAAAVAAAAEgAAABVAAAASgAAAEsAAABMAAAATQAAAE4AAABPAAAAVgAAAE41ZHJhY280NU1lc2hQcmVkaWN0aW9uU2NoZW1lTXVsdGlQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAPRAAAB4DAAAuAsAAAAAAAAYDgAAVwAAAFgAAABZAAAASAAAAFoAAABKAAAASwAAAEwAAABNAAAATgAAAFsAAABcAAAATjVkcmFjbzU2TWVzaFByZWRpY3Rpb25TY2hlbWVDb25zdHJhaW5lZE11bHRpUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAA9EAAAGQNAAC4CwAAAAAAAPwOAABdAAAAXgAAAF8AAABIAAAAYAAAAGEAAABiAAAAYwAAAE0AAABOAAAAZAAAAGUAAABONWRyYWNvMzZNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc0RlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAA9EAAAFwOAAC4CwAAAAAAAOgPAABmAAAAZwAAAGgAAABIAAAAaQAAAGoAAABrAAAAbAAAAE0AAABOAAAAbQAAAG4AAABONWRyYWNvNDRNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc1BvcnRhYmxlRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAD0QAAAQA8AALgLAAAAAAAA1BAAAG8AAABwAAAAcQAAAEgAAAByAAAAcwAAAHQAAAB1AAAATQAAAE4AAAB2AAAAdwAAAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAAAAPRAAAAsEAAAuAsAAAAAAABcEgAAeAAAAHkAAAB6AAAAewAAAHwAAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQAAAMxAAACnEQAA9EAAAPwQAABUEgAAAAAAAFQSAAB4AAAAfQAAACIAAAB7AAAAIgAAAAAAAADoEwAARQAAAH4AAAB/AAAASAAAAIAAAABKAAAASwAAAEwAAABNAAAATgAAAE8AAACBAAAATjVkcmFjbzQwTWVzaFByZWRpY3Rpb25TY2hlbWVQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAA9EAAAFITAACsCwAA9EAAALwSAADcEwAAAAAAANwTAABFAAAAggAAACIAAABIAAAAIgAAAEoAAABLAAAATAAAAE0AAABOAAAATwAAACIAAAAAAAAAABUAAEUAAACDAAAAhAAAAEgAAACFAAAASgAAAEsAAABMAAAATQAAAE4AAABPAAAAhgAAAE41ZHJhY280NU1lc2hQcmVkaWN0aW9uU2NoZW1lTXVsdGlQYXJhbGxlbG9ncmFtRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAAPRAAABkFAAA3BMAAAAAAADsFQAAhwAAAIgAAACJAAAASAAAAIoAAABKAAAASwAAAEwAAABNAAAATgAAAIsAAACMAAAATjVkcmFjbzU2TWVzaFByZWRpY3Rpb25TY2hlbWVDb25zdHJhaW5lZE11bHRpUGFyYWxsZWxvZ3JhbURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAA9EAAAEQVAADcEwAAAAAAAMQWAACNAAAAjgAAAI8AAABIAAAAkAAAAJEAAACSAAAAkwAAAE0AAABOAAAAlAAAAJUAAABONWRyYWNvMzZNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc0RlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAA9EAAADAWAADcEwAAAAAAAKQXAACWAAAAlwAAAJgAAABIAAAAmQAAAJoAAACbAAAAnAAAAE0AAABOAAAAnQAAAJ4AAABONWRyYWNvNDRNZXNoUHJlZGljdGlvblNjaGVtZVRleENvb3Jkc1BvcnRhYmxlRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAAAD0QAAACBcAANwTAAAAAAAAgBgAAJ8AAACgAAAAoQAAAEgAAACiAAAAowAAAKQAAAClAAAATQAAAE4AAACmAAAApwAAAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUA9EAAAOgXAADcEwAAAAAAAOwZAACoAAAAqQAAAKoAAACrAAAArAAAAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcERlY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRGVjb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQDMQAAARhkAAPRAAACoGAAA5BkAAAAAAADkGQAAqAAAAK0AAAAiAAAAqwAAACIAAAAAAAAAqBoAAEUAAACuAAAArwAAAEgAAACwAAAASgAAAEsAAABMAAAATQAAAE4AAABPAAAAsQAAAE41ZHJhY28yOFByZWRpY3Rpb25TY2hlbWVEZWx0YURlY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBEZWNvZGluZ1RyYW5zZm9ybUlpaUVFRUUAAAAA9EAAAEwaAACsCwAAAAAAABwbAACyAAAAswAAALQAAAAtAAAALgAAALUAAAA/AAAAMQAAAEAAAAC2AAAAtwAAALgAAAC5AAAATjVkcmFjbzMyU2VxdWVudGlhbE5vcm1hbEF0dHJpYnV0ZURlY29kZXJFAAD0QAAA8BoAADgJAAAAAAAAKB0AALoAAAC7AAAAvAAAAL0AAAC+AAAAvwAAAMAAAADBAAAAwgAAAMMAAADEAAAAxQAAAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzI3TWVzaFByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjNQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRUVFAPRAAACxHAAAoAsAAPRAAAAQHAAAEB0AAPRAAABgGwAAHB0AAAAAAADEHgAAxgAAAMcAAADIAAAAyQAAAMoAAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAzEAAAAYeAAD0QAAAUB0AALweAAAAAAAATCAAAMsAAADMAAAAzQAAAL0AAADOAAAAzwAAANAAAADRAAAAwgAAAMMAAADSAAAA0wAAAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfNDlQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkRlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAAPRAAACrHwAAEB0AAPRAAAAIHwAAQCAAAAAAAADQIQAA1AAAANUAAADWAAAA1wAAANgAAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU180OVByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAzEAAAB0hAAD0QAAAdCAAAMghAAAAAAAAeCIAANkAAADaAAAA2wAAAL0AAADcAAAA3QAAAN4AAADfAAAAwgAAAMMAAADgAAAA4QAAAE41ZHJhY28yOFByZWRpY3Rpb25TY2hlbWVEZWx0YURlY29kZXJJaU5TXzQ5UHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25EZWNvZGluZ1RyYW5zZm9ybUlpRUVFRQD0QAAAFCIAABAdAAAAAAAArCQAAOIAAADjAAAA5AAAAOUAAADmAAAA5wAAAOgAAADpAAAA6gAAAOsAAADsAAAA7QAAAE41ZHJhY280Mk1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRGVjb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yM1ByZWRpY3Rpb25TY2hlbWVEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRUVFAAD0QAAAJyQAAKALAAD0QAAAeSMAAJQkAAD0QAAAvCIAAKAkAAAAAAAAZCYAAO4AAADvAAAA8AAAAPEAAADyAAAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JCYXNlSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAADMQAAAlyUAAPRAAADUJAAAXCYAAAAAAAAIKAAA8wAAAPQAAAD1AAAA5QAAAPYAAAD3AAAA+AAAAPkAAADqAAAA6wAAAPoAAAD7AAAATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxEZWNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZERlY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZURlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAAAAAPRAAABYJwAAlCQAAPRAAACoJgAA/CcAAAAAAACkKQAA/AAAAP0AAAD+AAAA/wAAAAABAABONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckFyZWFJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWREZWNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAzEAAAOYoAAD0QAAAMCgAAJwpAAAAAAAAXCoAANkAAAABAQAAAgEAAOUAAAADAQAABAEAAAUBAAAGAQAA6gAAAOsAAAAHAQAACAEAAE41ZHJhY28yOFByZWRpY3Rpb25TY2hlbWVEZWx0YURlY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRGVjb2RpbmdUcmFuc2Zvcm1JaUVFRUUAAAAA9EAAAOgpAACUJAAAAAAAAOAqAAAJAQAACgEAAAsBAAAtAAAALgAAAAwBAAA/AAAAMQAAAEAAAAANAQAAQgAAAEMAAAAOAQAADwEAABABAABONWRyYWNvMzhTZXF1ZW50aWFsUXVhbnRpemF0aW9uQXR0cmlidXRlRGVjb2RlckUAAAAA9EAAAKwqAAA4CQAAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQBVbnN1cHBvcnRlZCBlbmNvZGluZyBtZXRob2QuAFVuc3VwcG9ydGVkIGdlb21ldHJ5IHR5cGUuAElucHV0IGlzIG5vdCBhIHBvaW50IGNsb3VkLgBJbnB1dCBpcyBub3QgYSBtZXNoLgBza2lwX2F0dHJpYnV0ZV90cmFuc2Zvcm0AYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQAAAAAAAABMLAAAEQEAABIBAAATAQAAFAEAACIAAAAVAQAAFgEAABcBAAAYAQAAGQEAABoBAAAbAQAAIgAAAE41ZHJhY28xMU1lc2hEZWNvZGVyRQAAAPRAAAA0LAAAFDYAAAAAAAC4LAAAHAEAAB0BAAATAQAAHgEAAB8BAAAVAQAAFgEAABcBAAAgAQAAIQEAACIBAAAjAQAAJAEAAE41ZHJhY28yMk1lc2hFZGdlYnJlYWtlckRlY29kZXJFAAAAAPRAAACULAAATCwAAAAAAADcLQAAJQEAACYBAAAnAQAAKAEAACkBAAAqAQAAKwEAACwBAAAtAQAALgEAAP////8AAAAAQC4AAC8BAAAwAQAAMQEAADIBAAAzAQAANAEAADUBAAA2AQAANwEAADgBAAAAAAAAoC4AADkBAAA6AQAAOwEAADwBAAA9AQAAPgEAAD8BAABAAQAAQQEAAEIBAABONWRyYWNvMjZNZXNoRWRnZWJyZWFrZXJEZWNvZGVySW1wbElOU18zMU1lc2hFZGdlYnJlYWtlclRyYXZlcnNhbERlY29kZXJFRUUATjVkcmFjbzM1TWVzaEVkZ2VicmVha2VyRGVjb2RlckltcGxJbnRlcmZhY2VFAAAAzEAAAKQtAAD0QAAAWC0AANQtAABONWRyYWNvMjZNZXNoRWRnZWJyZWFrZXJEZWNvZGVySW1wbElOU180MU1lc2hFZGdlYnJlYWtlclRyYXZlcnNhbFByZWRpY3RpdmVEZWNvZGVyRUVFAAAA9EAAAOgtAADULQAATjVkcmFjbzI2TWVzaEVkZ2VicmVha2VyRGVjb2RlckltcGxJTlNfMzhNZXNoRWRnZWJyZWFrZXJUcmF2ZXJzYWxWYWxlbmNlRGVjb2RlckVFRQAA9EAAAEwuAADULQAAAAAAAJwvAABDAQAARAEAAEUBAABONWRyYWNvMTlEZXB0aEZpcnN0VHJhdmVyc2VySU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMxX0VFRUUATjVkcmFjbzEzVHJhdmVyc2VyQmFzZUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMV9FRUVFAMxAAAAtLwAA9EAAAMAuAACULwAAAAAAAJQvAABGAQAARwEAAEUBAABhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAAAAAAABAAAAAwAAAAUAAAAHAAAAAAAAANgwAABIAQAASQEAAEoBAABLAQAATjVkcmFjbzIyTWVzaFRyYXZlcnNhbFNlcXVlbmNlcklOU18yOE1heFByZWRpY3Rpb25EZWdyZWVUcmF2ZXJzZXJJTlNfMTFDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMl9FRUVFRUUATjVkcmFjbzE1UG9pbnRzU2VxdWVuY2VyRQAAAADMQAAAszAAAPRAAAAsMAAA0DAAAP////8AAAAAyDEAAEwBAABNAQAATgEAAE41ZHJhY28yOE1heFByZWRpY3Rpb25EZWdyZWVUcmF2ZXJzZXJJTlNfMTFDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMV9FRUVFAE41ZHJhY28xM1RyYXZlcnNlckJhc2VJTlNfMTFDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMV9FRUVFAADMQAAAZTEAAPRAAAD8MAAAwDEAAAAAAADAMQAATwEAAFABAABOAQAAAAAAAIAyAABRAQAAUgEAAFMBAABUAQAATjVkcmFjbzIyTWVzaFRyYXZlcnNhbFNlcXVlbmNlcklOU18xOURlcHRoRmlyc3RUcmF2ZXJzZXJJTlNfMTFDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMl9FRUVFRUUAAAD0QAAAADIAANAwAAAAAAAAADMAAFUBAABWAQAATgEAAE41ZHJhY28xOURlcHRoRmlyc3RUcmF2ZXJzZXJJTlNfMTFDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMV9FRUVFAPRAAACgMgAAwDEAAAAAAACwMwAAVwEAAFgBAABZAQAAWgEAAE41ZHJhY28yMk1lc2hUcmF2ZXJzYWxTZXF1ZW5jZXJJTlNfMTlEZXB0aEZpcnN0VHJhdmVyc2VySU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMyX0VFRUVFRQAA9EAAACQzAADQMA==");Un(R,13252,"HDQAABEBAABbAQAAEwEAABQBAABcAQAAFQEAABYBAAAXAQAAGAEAABkBAAAaAQAAGwEAAF0BAABONWRyYWNvMjFNZXNoU2VxdWVudGlhbERlY29kZXJFAPRAAAD8MwAATCwAAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUAAAAAAKA0AABeAQAAXwEAAGABAABhAQAATjVkcmFjbzE1TGluZWFyU2VxdWVuY2VyRQAAAPRAAACENAAA0DAAAAAAAAAUNgAAEQEAAGIBAABjAQAAFAEAACIAAABkAQAAFgEAABcBAAAYAQ==");Un(R,13536,"RmFpbGVkIHRvIHBhcnNlIERyYWNvIGhlYWRlci4ARFJBQ08ATm90IGEgRHJhY28gZmlsZS4ARmFpbGVkIHRvIGRlY29kZSBtZXRhZGF0YS4AVXNpbmcgaW5jb21wYXRpYmxlIGRlY29kZXIgZm9yIHRoZSBpbnB1dCBnZW9tZXRyeS4AVW5rbm93biBtYWpvciB2ZXJzaW9uLgBVbmtub3duIG1pbm9yIHZlcnNpb24uAEZhaWxlZCB0byBpbml0aWFsaXplIHRoZSBkZWNvZGVyLgBGYWlsZWQgdG8gZGVjb2RlIGdlb21ldHJ5IGRhdGEuAEZhaWxlZCB0byBkZWNvZGUgcG9pbnQgYXR0cmlidXRlcy4ATjVkcmFjbzE3UG9pbnRDbG91ZERlY29kZXJFAADMQAAA9zUAAAAAAABsNgAAEQEAAGUBAABjAQAAFAEAAGYBAABnAQAAFgEAABcBAAAYAQAATjVkcmFjbzIzUG9pbnRDbG91ZEtkVHJlZURlY29kZXJFAAAA9EAAAEg2AAAUNgAAAAAAAMw2AAARAQAAaAEAAGMBAAAUAQAAaQEAAGoBAAAWAQAAFwEAABgBAABONWRyYWNvMjdQb2ludENsb3VkU2VxdWVudGlhbERlY29kZXJFAAAA9EAAAKQ2AAAUNgAAAQAAAAEAAAACAAAAAgAAAAQAAAAEAAAACAAAAAgAAAAEAAAACAAAAAE=");Un(R,14099,"wAAAAMAAAADAAAAAwGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUAKHNpemVfdCBpZHgsIHNpemVfdCBzaXplKTw6Oj57IHRocm93ICdBcnJheSBpbmRleCAnICsgaWR4ICsgJyBvdXQgb2YgYm91bmRzOiBbMCwnICsgc2l6ZSArICcpJzsgfQAAAP//////////YWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQAAAAAAPDgAAGsBAABsAQAAbQEAAG4BAABONWRyYWNvNE1lc2hFAAAA9EAAACw4AADQOQAAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQD/////YWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQBhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQAAAAAA0DkAAG8BAABwAQAAcQEAAHIBAABONWRyYWNvMTBQb2ludENsb3VkRQAAAADMQAAAuDkAAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUARmxvYXRQb2ludHNUcmVlRGVjb2RlcjogY29tcHJlc3Npb24gbGV2ZWwgJWkgbm90IHN1cHBvcnRlZC4KAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUALSsgICAwWDB4AChudWxsKQAAABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABAAkLCwAACQYLAAALAAYRAAAAERER");Un(R,15105,"CwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAAL");Un(R,15163,"DA==");Un(R,15175,"DAAAAAAMAAAAAAkMAAAAAAAMAAAM");Un(R,15221,"Dg==");Un(R,15233,"DQAAAAQNAAAAAAkOAAAAAAAOAAAO");Un(R,15279,"EA==");Un(R,15291,"DwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhIS");Un(R,15346,"EgAAABISEgAAAAAAAAk=");Un(R,15395,"Cw==");Un(R,15407,"CgAAAAAKAAAAAAkLAAAAAAALAAAL");Un(R,15453,"DA==");Un(R,15465,"DAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVGOEI=");Un(R,15524,"AgAAAAMAAAAFAAAABwAAAAsAAAANAAAAEQAAABMAAAAXAAAAHQAAAB8AAAAlAAAAKQAAACsAAAAvAAAANQAAADsAAAA9AAAAQwAAAEcAAABJAAAATwAAAFMAAABZAAAAYQAAAGUAAABnAAAAawAAAG0AAABxAAAAfwAAAIMAAACJAAAAiwAAAJUAAACXAAAAnQAAAKMAAACnAAAArQAAALMAAAC1AAAAvwAAAMEAAADFAAAAxwAAANMAAAABAAAACwAAAA0AAAARAAAAEwAAABcAAAAdAAAAHwAAACUAAAApAAAAKwAAAC8AAAA1AAAAOwAAAD0AAABDAAAARwAAAEkAAABPAAAAUwAAAFkAAABhAAAAZQAAAGcAAABrAAAAbQAAAHEAAAB5AAAAfwAAAIMAAACJAAAAiwAAAI8AAACVAAAAlwAAAJ0AAACjAAAApwAAAKkAAACtAAAAswAAALUAAAC7AAAAvwAAAMEAAADFAAAAxwAAANEAAABfX25leHRfcHJpbWUgb3ZlcmZsb3cAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQAAAAAAAAAwMDAxMDIwMzA0MDUwNjA3MDgwOTEwMTExMjEzMTQxNTE2MTcxODE5MjAyMTIyMjMyNDI1MjYyNzI4MjkzMDMxMzIzMzM0MzUzNjM3MzgzOTQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NTA1MTUyNTM1NDU1NTY1NzU4NTk2MDYxNjI2MzY0NjU2NjY3Njg2OTcwNzE3MjczNzQ3NTc2Nzc3ODc5ODA4MTgyODM4NDg1ODY4Nzg4ODk5MDkxOTI5Mzk0OTU5Njk3OTg5OWJhc2ljX3N0cmluZw==");Un(R,16228,"CgAAAGQAAADoAwAAECcAAKCGAQBAQg8AgJaYAADh9QUAypo7dmVjdG9yAFB1cmUgdmlydHVhbCBmdW5jdGlvbiBjYWxsZWQhAHN0ZDo6ZXhjZXB0aW9uAAAAAADgPwAAdgEAAHcBAAB4AQAAU3Q5ZXhjZXB0aW9uAAAAAMxAAADQPwAAAAAAAAxAAAANAAAAeQEAAHoBAABTdDExbG9naWNfZXJyb3IA9EAAAPw/AADgPwAAAAAAAEBAAAANAAAAewEAAHoBAABTdDEybGVuZ3RoX2Vycm9yAAAAAPRAAAAsQAAADEAAAFN0OXR5cGVfaW5mbwAAAADMQAAATEAAAE4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAAAAAPRAAABkQAAAXEAAAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQAAAPRAAACUQAAAiEAAAAAAAAC4QAAAfAEAAH0BAAB+AQAAfwEAAIABAACBAQAAggEAAIMBAAAAAAAAPEEAAHwBAACEAQAAfgEAAH8BAACAAQAAhQEAAIYBAACHAQAATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAAAAAPRAAAAUQQAAuEAAANBC");Un(R,16896,"jEM=");Un(R,16952,"BQ==");Un(R,16964,"cwE=");Un(R,16988,"dAEAAHUBAACsQw==");Un(R,17012,"Ag==");Un(R,17027,"//////8=");Un(R,17096,"sElQAAAAAAAF");Un(R,17116,"iAE=");Un(R,17140,"dAEAAIkBAACoRQAAAAQ=");Un(R,17164,"AQ==");Un(R,17179,"Cv////8=");return Rn({"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity,"Math":Math},Vn,Wn.buffer)}
// EMSCRIPTEN_END_ASM
)(asmLibraryArg,wasmMemory)},instantiate:function(binary,info){return{then:function(ok){var module=new WebAssembly.Module(binary);ok({"instance":new WebAssembly.Instance(module)})}}},RuntimeError:Error};wasmBinary=[];if(typeof WebAssembly!=="object"){abort("no native wasm support detected")}var wasmMemory;var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}function ccall(ident,returnType,argTypes,args,opts){var toC={"string":function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=stackAlloc(len);stringToUTF8(str,ret,len)}return ret},"array":function(arr){var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string")return UTF8ToString(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);ret=convertReturnValue(ret);if(stack!==0)stackRestore(stack);return ret}var ALLOC_STACK=1;var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(heap,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heap[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heap.subarray&&UTF8Decoder){return UTF8Decoder.decode(heap.subarray(idx,endPtr))}else{var str="";while(idx<endPtr){var u0=heap[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=heap[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=heap[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u0=(u0&7)<<18|u1<<12|u2<<6|heap[idx++]&63}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127)++len;else if(u<=2047)len+=2;else if(u<=65535)len+=3;else len+=4}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var WASM_PAGE_SIZE=65536;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferAndViews(buf){buffer=buf;Module["HEAP8"]=HEAP8=new Int8Array(buf);Module["HEAP16"]=HEAP16=new Int16Array(buf);Module["HEAP32"]=HEAP32=new Int32Array(buf);Module["HEAPU8"]=HEAPU8=new Uint8Array(buf);Module["HEAPU16"]=HEAPU16=new Uint16Array(buf);Module["HEAPU32"]=HEAPU32=new Uint32Array(buf);Module["HEAPF32"]=HEAPF32=new Float32Array(buf);Module["HEAPF64"]=HEAPF64=new Float64Array(buf)}var STACK_BASE=5261744;var INITIAL_INITIAL_MEMORY=Module["INITIAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_INITIAL_MEMORY/WASM_PAGE_SIZE,"maximum":2147483648/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_INITIAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPreMain(cb){__ATMAIN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what+="";err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}function hasPrefix(str,prefix){return String.prototype.startsWith?str.startsWith(prefix):str.indexOf(prefix)===0}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return hasPrefix(filename,dataURIPrefix)}var fileURIPrefix="file://";function isFileURI(filename){return hasPrefix(filename,fileURIPrefix)}var wasmBinaryFile="draco_decoder.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(){try{if(wasmBinary){return new Uint8Array(wasmBinary)}var binary=tryParseAsDataURI(wasmBinaryFile);if(binary){return binary}if(readBinary){return readBinary(wasmBinaryFile)}else{throw"both async and sync fetching of the wasm failed"}}catch(err){abort(err)}}function getBinaryPromise(){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&typeof fetch==="function"&&!isFileURI(wasmBinaryFile)){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){if(!response["ok"]){throw"failed to load wasm binary file at '"+wasmBinaryFile+"'"}return response["arrayBuffer"]()}).catch(function(){return getBinary()})}return Promise.resolve().then(getBinary)}function createWasm(){var info={"env":asmLibraryArg,"wasi_snapshot_preview1":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmTable=Module["asm"]["__indirect_function_table"];removeRunDependency("wasm-instantiate")}addRunDependency("wasm-instantiate");function receiveInstantiatedSource(output){receiveInstance(output["instance"])}function instantiateArrayBuffer(receiver){return getBinaryPromise().then(function(binary){return WebAssembly.instantiate(binary,info)}).then(receiver,function(reason){err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(){if(!wasmBinary&&typeof WebAssembly.instantiateStreaming==="function"&&!isDataURI(wasmBinaryFile)&&!isFileURI(wasmBinaryFile)&&typeof fetch==="function"){return fetch(wasmBinaryFile,{credentials:"same-origin"}).then(function(response){var result=WebAssembly.instantiateStreaming(response,info);return result.then(receiveInstantiatedSource,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(receiveInstantiatedSource)})})}else{return instantiateArrayBuffer(receiveInstantiatedSource)}}if(Module["instantiateWasm"]){try{var exports=Module["instantiateWasm"](info,receiveInstance);return exports}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync().catch(readyPromiseReject);return{}}var tempDouble;var tempI64;function array_bounds_check_error(idx,size){throw"Array index "+idx+" out of bounds: [0,"+size+")"}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback(Module);continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){wasmTable.get(func)()}else{wasmTable.get(func)(callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}function demangle(func){return func}function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}function dynCallLegacy(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}return Module["dynCall_"+sig].call(null,ptr)}function jsStackTrace(){var error=new Error;if(!error.stack){try{throw new Error}catch(e){error=e}if(!error.stack){return"(no stack trace available)"}}return error.stack.toString()}var ExceptionInfoAttrs={DESTRUCTOR_OFFSET:0,REFCOUNT_OFFSET:4,TYPE_OFFSET:8,CAUGHT_OFFSET:12,RETHROWN_OFFSET:13,SIZE:16};function ___cxa_allocate_exception(size){return _malloc(size+ExceptionInfoAttrs.SIZE)+ExceptionInfoAttrs.SIZE}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-ExceptionInfoAttrs.SIZE;this.set_type=function(type){HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]=type};this.get_type=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.TYPE_OFFSET>>2]};this.set_destructor=function(destructor){HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]=destructor};this.get_destructor=function(){return HEAP32[this.ptr+ExceptionInfoAttrs.DESTRUCTOR_OFFSET>>2]};this.set_refcount=function(refcount){HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=refcount};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.CAUGHT_OFFSET>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+ExceptionInfoAttrs.RETHROWN_OFFSET>>0]!=0};this.init=function(type,destructor){this.set_type(type);this.set_destructor(destructor);this.set_refcount(0);this.set_caught(false);this.set_rethrown(false)};this.add_ref=function(){var value=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=value+1};this.release_ref=function(){var prev=HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2];HEAP32[this.ptr+ExceptionInfoAttrs.REFCOUNT_OFFSET>>2]=prev-1;return prev===1}}var exceptionLast=0;function __ZSt18uncaught_exceptionv(){return __ZSt18uncaught_exceptionv.uncaught_exceptions>0}function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exceptions=1}else{__ZSt18uncaught_exceptionv.uncaught_exceptions++}throw ptr}function _abort(){abort()}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function _emscripten_get_heap_size(){return HEAPU8.length}function emscripten_realloc_buffer(size){try{wasmMemory.grow(size-buffer.byteLength+65535>>>16);updateGlobalBufferAndViews(wasmMemory.buffer);return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){requestedSize=requestedSize>>>0;var oldSize=_emscripten_get_heap_size();var maxHeapSize=2147483648;if(requestedSize>maxHeapSize){return false}var minHeapSize=16777216;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(minHeapSize,requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var SYSCALLS={mappings:{},buffers:[null,[],[]],printChar:function(stream,curr){var buffer=SYSCALLS.buffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}},varargs:undefined,get:function(){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret},get64:function(low,high){return low}};function _fd_close(fd){return 0}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){}function _fd_write(fd,iov,iovcnt,pnum){var num=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j<len;j++){SYSCALLS.printChar(fd,HEAPU8[ptr+j])}num+=len}HEAP32[pnum>>2]=num;return 0}var ASSERTIONS=false;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var decodeBase64=typeof atob==="function"?atob:function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i<input.length);return output};function intArrayFromBase64(s){if(typeof ENVIRONMENT_IS_NODE==="boolean"&&ENVIRONMENT_IS_NODE){var buf;try{buf=Buffer.from(s,"base64")}catch(_){buf=new Buffer(s,"base64")}return new Uint8Array(buf["buffer"],buf["byteOffset"],buf["byteLength"])}try{var decoded=decodeBase64(s);var bytes=new Uint8Array(decoded.length);for(var i=0;i<decoded.length;++i){bytes[i]=decoded.charCodeAt(i)}return bytes}catch(_){throw new Error("Converting base64 string to bytes failed.")}}function tryParseAsDataURI(filename){if(!isDataURI(filename)){return}return intArrayFromBase64(filename.slice(dataURIPrefix.length))}__ATINIT__.push({func:function(){___wasm_call_ctors()}});var asmLibraryArg={"__cxa_allocate_exception":___cxa_allocate_exception,"__cxa_throw":___cxa_throw,"abort":_abort,"array_bounds_check_error":array_bounds_check_error,"emscripten_memcpy_big":_emscripten_memcpy_big,"emscripten_resize_heap":_emscripten_resize_heap,"fd_close":_fd_close,"fd_seek":_fd_seek,"fd_write":_fd_write,"getTempRet0":getTempRet0,"memory":wasmMemory,"setTempRet0":setTempRet0};var asm=createWasm();var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return(___wasm_call_ctors=Module["___wasm_call_ctors"]=Module["asm"]["__wasm_call_ctors"]).apply(null,arguments)};var ___em_js__array_bounds_check_error=Module["___em_js__array_bounds_check_error"]=function(){return(___em_js__array_bounds_check_error=Module["___em_js__array_bounds_check_error"]=Module["asm"]["__em_js__array_bounds_check_error"]).apply(null,arguments)};var _emscripten_bind_VoidPtr___destroy___0=Module["_emscripten_bind_VoidPtr___destroy___0"]=function(){return(_emscripten_bind_VoidPtr___destroy___0=Module["_emscripten_bind_VoidPtr___destroy___0"]=Module["asm"]["emscripten_bind_VoidPtr___destroy___0"]).apply(null,arguments)};var _emscripten_bind_DecoderBuffer_DecoderBuffer_0=Module["_emscripten_bind_DecoderBuffer_DecoderBuffer_0"]=function(){return(_emscripten_bind_DecoderBuffer_DecoderBuffer_0=Module["_emscripten_bind_DecoderBuffer_DecoderBuffer_0"]=Module["asm"]["emscripten_bind_DecoderBuffer_DecoderBuffer_0"]).apply(null,arguments)};var _emscripten_bind_DecoderBuffer_Init_2=Module["_emscripten_bind_DecoderBuffer_Init_2"]=function(){return(_emscripten_bind_DecoderBuffer_Init_2=Module["_emscripten_bind_DecoderBuffer_Init_2"]=Module["asm"]["emscripten_bind_DecoderBuffer_Init_2"]).apply(null,arguments)};var _emscripten_bind_DecoderBuffer___destroy___0=Module["_emscripten_bind_DecoderBuffer___destroy___0"]=function(){return(_emscripten_bind_DecoderBuffer___destroy___0=Module["_emscripten_bind_DecoderBuffer___destroy___0"]=Module["asm"]["emscripten_bind_DecoderBuffer___destroy___0"]).apply(null,arguments)};var _emscripten_bind_AttributeTransformData_AttributeTransformData_0=Module["_emscripten_bind_AttributeTransformData_AttributeTransformData_0"]=function(){return(_emscripten_bind_AttributeTransformData_AttributeTransformData_0=Module["_emscripten_bind_AttributeTransformData_AttributeTransformData_0"]=Module["asm"]["emscripten_bind_AttributeTransformData_AttributeTransformData_0"]).apply(null,arguments)};var _emscripten_bind_AttributeTransformData_transform_type_0=Module["_emscripten_bind_AttributeTransformData_transform_type_0"]=function(){return(_emscripten_bind_AttributeTransformData_transform_type_0=Module["_emscripten_bind_AttributeTransformData_transform_type_0"]=Module["asm"]["emscripten_bind_AttributeTransformData_transform_type_0"]).apply(null,arguments)};var _emscripten_bind_AttributeTransformData___destroy___0=Module["_emscripten_bind_AttributeTransformData___destroy___0"]=function(){return(_emscripten_bind_AttributeTransformData___destroy___0=Module["_emscripten_bind_AttributeTransformData___destroy___0"]=Module["asm"]["emscripten_bind_AttributeTransformData___destroy___0"]).apply(null,arguments)};var _emscripten_bind_GeometryAttribute_GeometryAttribute_0=Module["_emscripten_bind_GeometryAttribute_GeometryAttribute_0"]=function(){return(_emscripten_bind_GeometryAttribute_GeometryAttribute_0=Module["_emscripten_bind_GeometryAttribute_GeometryAttribute_0"]=Module["asm"]["emscripten_bind_GeometryAttribute_GeometryAttribute_0"]).apply(null,arguments)};var _emscripten_bind_GeometryAttribute___destroy___0=Module["_emscripten_bind_GeometryAttribute___destroy___0"]=function(){return(_emscripten_bind_GeometryAttribute___destroy___0=Module["_emscripten_bind_GeometryAttribute___destroy___0"]=Module["asm"]["emscripten_bind_GeometryAttribute___destroy___0"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_PointAttribute_0=Module["_emscripten_bind_PointAttribute_PointAttribute_0"]=function(){return(_emscripten_bind_PointAttribute_PointAttribute_0=Module["_emscripten_bind_PointAttribute_PointAttribute_0"]=Module["asm"]["emscripten_bind_PointAttribute_PointAttribute_0"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_size_0=Module["_emscripten_bind_PointAttribute_size_0"]=function(){return(_emscripten_bind_PointAttribute_size_0=Module["_emscripten_bind_PointAttribute_size_0"]=Module["asm"]["emscripten_bind_PointAttribute_size_0"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_GetAttributeTransformData_0=Module["_emscripten_bind_PointAttribute_GetAttributeTransformData_0"]=function(){return(_emscripten_bind_PointAttribute_GetAttributeTransformData_0=Module["_emscripten_bind_PointAttribute_GetAttributeTransformData_0"]=Module["asm"]["emscripten_bind_PointAttribute_GetAttributeTransformData_0"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_attribute_type_0=Module["_emscripten_bind_PointAttribute_attribute_type_0"]=function(){return(_emscripten_bind_PointAttribute_attribute_type_0=Module["_emscripten_bind_PointAttribute_attribute_type_0"]=Module["asm"]["emscripten_bind_PointAttribute_attribute_type_0"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_data_type_0=Module["_emscripten_bind_PointAttribute_data_type_0"]=function(){return(_emscripten_bind_PointAttribute_data_type_0=Module["_emscripten_bind_PointAttribute_data_type_0"]=Module["asm"]["emscripten_bind_PointAttribute_data_type_0"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_num_components_0=Module["_emscripten_bind_PointAttribute_num_components_0"]=function(){return(_emscripten_bind_PointAttribute_num_components_0=Module["_emscripten_bind_PointAttribute_num_components_0"]=Module["asm"]["emscripten_bind_PointAttribute_num_components_0"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_normalized_0=Module["_emscripten_bind_PointAttribute_normalized_0"]=function(){return(_emscripten_bind_PointAttribute_normalized_0=Module["_emscripten_bind_PointAttribute_normalized_0"]=Module["asm"]["emscripten_bind_PointAttribute_normalized_0"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_byte_stride_0=Module["_emscripten_bind_PointAttribute_byte_stride_0"]=function(){return(_emscripten_bind_PointAttribute_byte_stride_0=Module["_emscripten_bind_PointAttribute_byte_stride_0"]=Module["asm"]["emscripten_bind_PointAttribute_byte_stride_0"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_byte_offset_0=Module["_emscripten_bind_PointAttribute_byte_offset_0"]=function(){return(_emscripten_bind_PointAttribute_byte_offset_0=Module["_emscripten_bind_PointAttribute_byte_offset_0"]=Module["asm"]["emscripten_bind_PointAttribute_byte_offset_0"]).apply(null,arguments)};var _emscripten_bind_PointAttribute_unique_id_0=Module["_emscripten_bind_PointAttribute_unique_id_0"]=function(){return(_emscripten_bind_PointAttribute_unique_id_0=Module["_emscripten_bind_PointAttribute_unique_id_0"]=Module["asm"]["emscripten_bind_PointAttribute_unique_id_0"]).apply(null,arguments)};var _emscripten_bind_PointAttribute___destroy___0=Module["_emscripten_bind_PointAttribute___destroy___0"]=function(){return(_emscripten_bind_PointAttribute___destroy___0=Module["_emscripten_bind_PointAttribute___destroy___0"]=Module["asm"]["emscripten_bind_PointAttribute___destroy___0"]).apply(null,arguments)};var _emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=Module["_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0"]=function(){return(_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0=Module["_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0"]=Module["asm"]["emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0"]).apply(null,arguments)};var _emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=Module["_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1"]=function(){return(_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1=Module["_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1"]=Module["asm"]["emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1"]).apply(null,arguments)};var _emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=Module["_emscripten_bind_AttributeQuantizationTransform_quantization_bits_0"]=function(){return(_emscripten_bind_AttributeQuantizationTransform_quantization_bits_0=Module["_emscripten_bind_AttributeQuantizationTransform_quantization_bits_0"]=Module["asm"]["emscripten_bind_AttributeQuantizationTransform_quantization_bits_0"]).apply(null,arguments)};var _emscripten_bind_AttributeQuantizationTransform_min_value_1=Module["_emscripten_bind_AttributeQuantizationTransform_min_value_1"]=function(){return(_emscripten_bind_AttributeQuantizationTransform_min_value_1=Module["_emscripten_bind_AttributeQuantizationTransform_min_value_1"]=Module["asm"]["emscripten_bind_AttributeQuantizationTransform_min_value_1"]).apply(null,arguments)};var _emscripten_bind_AttributeQuantizationTransform_range_0=Module["_emscripten_bind_AttributeQuantizationTransform_range_0"]=function(){return(_emscripten_bind_AttributeQuantizationTransform_range_0=Module["_emscripten_bind_AttributeQuantizationTransform_range_0"]=Module["asm"]["emscripten_bind_AttributeQuantizationTransform_range_0"]).apply(null,arguments)};var _emscripten_bind_AttributeQuantizationTransform___destroy___0=Module["_emscripten_bind_AttributeQuantizationTransform___destroy___0"]=function(){return(_emscripten_bind_AttributeQuantizationTransform___destroy___0=Module["_emscripten_bind_AttributeQuantizationTransform___destroy___0"]=Module["asm"]["emscripten_bind_AttributeQuantizationTransform___destroy___0"]).apply(null,arguments)};var _emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=Module["_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0"]=function(){return(_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0=Module["_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0"]=Module["asm"]["emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0"]).apply(null,arguments)};var _emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=Module["_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1"]=function(){return(_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1=Module["_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1"]=Module["asm"]["emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1"]).apply(null,arguments)};var _emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=Module["_emscripten_bind_AttributeOctahedronTransform_quantization_bits_0"]=function(){return(_emscripten_bind_AttributeOctahedronTransform_quantization_bits_0=Module["_emscripten_bind_AttributeOctahedronTransform_quantization_bits_0"]=Module["asm"]["emscripten_bind_AttributeOctahedronTransform_quantization_bits_0"]).apply(null,arguments)};var _emscripten_bind_AttributeOctahedronTransform___destroy___0=Module["_emscripten_bind_AttributeOctahedronTransform___destroy___0"]=function(){return(_emscripten_bind_AttributeOctahedronTransform___destroy___0=Module["_emscripten_bind_AttributeOctahedronTransform___destroy___0"]=Module["asm"]["emscripten_bind_AttributeOctahedronTransform___destroy___0"]).apply(null,arguments)};var _emscripten_bind_PointCloud_PointCloud_0=Module["_emscripten_bind_PointCloud_PointCloud_0"]=function(){return(_emscripten_bind_PointCloud_PointCloud_0=Module["_emscripten_bind_PointCloud_PointCloud_0"]=Module["asm"]["emscripten_bind_PointCloud_PointCloud_0"]).apply(null,arguments)};var _emscripten_bind_PointCloud_num_attributes_0=Module["_emscripten_bind_PointCloud_num_attributes_0"]=function(){return(_emscripten_bind_PointCloud_num_attributes_0=Module["_emscripten_bind_PointCloud_num_attributes_0"]=Module["asm"]["emscripten_bind_PointCloud_num_attributes_0"]).apply(null,arguments)};var _emscripten_bind_PointCloud_num_points_0=Module["_emscripten_bind_PointCloud_num_points_0"]=function(){return(_emscripten_bind_PointCloud_num_points_0=Module["_emscripten_bind_PointCloud_num_points_0"]=Module["asm"]["emscripten_bind_PointCloud_num_points_0"]).apply(null,arguments)};var _emscripten_bind_PointCloud___destroy___0=Module["_emscripten_bind_PointCloud___destroy___0"]=function(){return(_emscripten_bind_PointCloud___destroy___0=Module["_emscripten_bind_PointCloud___destroy___0"]=Module["asm"]["emscripten_bind_PointCloud___destroy___0"]).apply(null,arguments)};var _emscripten_bind_Mesh_Mesh_0=Module["_emscripten_bind_Mesh_Mesh_0"]=function(){return(_emscripten_bind_Mesh_Mesh_0=Module["_emscripten_bind_Mesh_Mesh_0"]=Module["asm"]["emscripten_bind_Mesh_Mesh_0"]).apply(null,arguments)};var _emscripten_bind_Mesh_num_faces_0=Module["_emscripten_bind_Mesh_num_faces_0"]=function(){return(_emscripten_bind_Mesh_num_faces_0=Module["_emscripten_bind_Mesh_num_faces_0"]=Module["asm"]["emscripten_bind_Mesh_num_faces_0"]).apply(null,arguments)};var _emscripten_bind_Mesh_num_attributes_0=Module["_emscripten_bind_Mesh_num_attributes_0"]=function(){return(_emscripten_bind_Mesh_num_attributes_0=Module["_emscripten_bind_Mesh_num_attributes_0"]=Module["asm"]["emscripten_bind_Mesh_num_attributes_0"]).apply(null,arguments)};var _emscripten_bind_Mesh_num_points_0=Module["_emscripten_bind_Mesh_num_points_0"]=function(){return(_emscripten_bind_Mesh_num_points_0=Module["_emscripten_bind_Mesh_num_points_0"]=Module["asm"]["emscripten_bind_Mesh_num_points_0"]).apply(null,arguments)};var _emscripten_bind_Mesh___destroy___0=Module["_emscripten_bind_Mesh___destroy___0"]=function(){return(_emscripten_bind_Mesh___destroy___0=Module["_emscripten_bind_Mesh___destroy___0"]=Module["asm"]["emscripten_bind_Mesh___destroy___0"]).apply(null,arguments)};var _emscripten_bind_Metadata_Metadata_0=Module["_emscripten_bind_Metadata_Metadata_0"]=function(){return(_emscripten_bind_Metadata_Metadata_0=Module["_emscripten_bind_Metadata_Metadata_0"]=Module["asm"]["emscripten_bind_Metadata_Metadata_0"]).apply(null,arguments)};var _emscripten_bind_Metadata___destroy___0=Module["_emscripten_bind_Metadata___destroy___0"]=function(){return(_emscripten_bind_Metadata___destroy___0=Module["_emscripten_bind_Metadata___destroy___0"]=Module["asm"]["emscripten_bind_Metadata___destroy___0"]).apply(null,arguments)};var _emscripten_bind_Status_code_0=Module["_emscripten_bind_Status_code_0"]=function(){return(_emscripten_bind_Status_code_0=Module["_emscripten_bind_Status_code_0"]=Module["asm"]["emscripten_bind_Status_code_0"]).apply(null,arguments)};var _emscripten_bind_Status_ok_0=Module["_emscripten_bind_Status_ok_0"]=function(){return(_emscripten_bind_Status_ok_0=Module["_emscripten_bind_Status_ok_0"]=Module["asm"]["emscripten_bind_Status_ok_0"]).apply(null,arguments)};var _emscripten_bind_Status_error_msg_0=Module["_emscripten_bind_Status_error_msg_0"]=function(){return(_emscripten_bind_Status_error_msg_0=Module["_emscripten_bind_Status_error_msg_0"]=Module["asm"]["emscripten_bind_Status_error_msg_0"]).apply(null,arguments)};var _emscripten_bind_Status___destroy___0=Module["_emscripten_bind_Status___destroy___0"]=function(){return(_emscripten_bind_Status___destroy___0=Module["_emscripten_bind_Status___destroy___0"]=Module["asm"]["emscripten_bind_Status___destroy___0"]).apply(null,arguments)};var _emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=Module["_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0"]=function(){return(_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0=Module["_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0"]=Module["asm"]["emscripten_bind_DracoFloat32Array_DracoFloat32Array_0"]).apply(null,arguments)};var _emscripten_bind_DracoFloat32Array_GetValue_1=Module["_emscripten_bind_DracoFloat32Array_GetValue_1"]=function(){return(_emscripten_bind_DracoFloat32Array_GetValue_1=Module["_emscripten_bind_DracoFloat32Array_GetValue_1"]=Module["asm"]["emscripten_bind_DracoFloat32Array_GetValue_1"]).apply(null,arguments)};var _emscripten_bind_DracoFloat32Array_size_0=Module["_emscripten_bind_DracoFloat32Array_size_0"]=function(){return(_emscripten_bind_DracoFloat32Array_size_0=Module["_emscripten_bind_DracoFloat32Array_size_0"]=Module["asm"]["emscripten_bind_DracoFloat32Array_size_0"]).apply(null,arguments)};var _emscripten_bind_DracoFloat32Array___destroy___0=Module["_emscripten_bind_DracoFloat32Array___destroy___0"]=function(){return(_emscripten_bind_DracoFloat32Array___destroy___0=Module["_emscripten_bind_DracoFloat32Array___destroy___0"]=Module["asm"]["emscripten_bind_DracoFloat32Array___destroy___0"]).apply(null,arguments)};var _emscripten_bind_DracoInt8Array_DracoInt8Array_0=Module["_emscripten_bind_DracoInt8Array_DracoInt8Array_0"]=function(){return(_emscripten_bind_DracoInt8Array_DracoInt8Array_0=Module["_emscripten_bind_DracoInt8Array_DracoInt8Array_0"]=Module["asm"]["emscripten_bind_DracoInt8Array_DracoInt8Array_0"]).apply(null,arguments)};var _emscripten_bind_DracoInt8Array_GetValue_1=Module["_emscripten_bind_DracoInt8Array_GetValue_1"]=function(){return(_emscripten_bind_DracoInt8Array_GetValue_1=Module["_emscripten_bind_DracoInt8Array_GetValue_1"]=Module["asm"]["emscripten_bind_DracoInt8Array_GetValue_1"]).apply(null,arguments)};var _emscripten_bind_DracoInt8Array_size_0=Module["_emscripten_bind_DracoInt8Array_size_0"]=function(){return(_emscripten_bind_DracoInt8Array_size_0=Module["_emscripten_bind_DracoInt8Array_size_0"]=Module["asm"]["emscripten_bind_DracoInt8Array_size_0"]).apply(null,arguments)};var _emscripten_bind_DracoInt8Array___destroy___0=Module["_emscripten_bind_DracoInt8Array___destroy___0"]=function(){return(_emscripten_bind_DracoInt8Array___destroy___0=Module["_emscripten_bind_DracoInt8Array___destroy___0"]=Module["asm"]["emscripten_bind_DracoInt8Array___destroy___0"]).apply(null,arguments)};var _emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=Module["_emscripten_bind_DracoUInt8Array_DracoUInt8Array_0"]=function(){return(_emscripten_bind_DracoUInt8Array_DracoUInt8Array_0=Module["_emscripten_bind_DracoUInt8Array_DracoUInt8Array_0"]=Module["asm"]["emscripten_bind_DracoUInt8Array_DracoUInt8Array_0"]).apply(null,arguments)};var _emscripten_bind_DracoUInt8Array_GetValue_1=Module["_emscripten_bind_DracoUInt8Array_GetValue_1"]=function(){return(_emscripten_bind_DracoUInt8Array_GetValue_1=Module["_emscripten_bind_DracoUInt8Array_GetValue_1"]=Module["asm"]["emscripten_bind_DracoUInt8Array_GetValue_1"]).apply(null,arguments)};var _emscripten_bind_DracoUInt8Array_size_0=Module["_emscripten_bind_DracoUInt8Array_size_0"]=function(){return(_emscripten_bind_DracoUInt8Array_size_0=Module["_emscripten_bind_DracoUInt8Array_size_0"]=Module["asm"]["emscripten_bind_DracoUInt8Array_size_0"]).apply(null,arguments)};var _emscripten_bind_DracoUInt8Array___destroy___0=Module["_emscripten_bind_DracoUInt8Array___destroy___0"]=function(){return(_emscripten_bind_DracoUInt8Array___destroy___0=Module["_emscripten_bind_DracoUInt8Array___destroy___0"]=Module["asm"]["emscripten_bind_DracoUInt8Array___destroy___0"]).apply(null,arguments)};var _emscripten_bind_DracoInt16Array_DracoInt16Array_0=Module["_emscripten_bind_DracoInt16Array_DracoInt16Array_0"]=function(){return(_emscripten_bind_DracoInt16Array_DracoInt16Array_0=Module["_emscripten_bind_DracoInt16Array_DracoInt16Array_0"]=Module["asm"]["emscripten_bind_DracoInt16Array_DracoInt16Array_0"]).apply(null,arguments)};var _emscripten_bind_DracoInt16Array_GetValue_1=Module["_emscripten_bind_DracoInt16Array_GetValue_1"]=function(){return(_emscripten_bind_DracoInt16Array_GetValue_1=Module["_emscripten_bind_DracoInt16Array_GetValue_1"]=Module["asm"]["emscripten_bind_DracoInt16Array_GetValue_1"]).apply(null,arguments)};var _emscripten_bind_DracoInt16Array_size_0=Module["_emscripten_bind_DracoInt16Array_size_0"]=function(){return(_emscripten_bind_DracoInt16Array_size_0=Module["_emscripten_bind_DracoInt16Array_size_0"]=Module["asm"]["emscripten_bind_DracoInt16Array_size_0"]).apply(null,arguments)};var _emscripten_bind_DracoInt16Array___destroy___0=Module["_emscripten_bind_DracoInt16Array___destroy___0"]=function(){return(_emscripten_bind_DracoInt16Array___destroy___0=Module["_emscripten_bind_DracoInt16Array___destroy___0"]=Module["asm"]["emscripten_bind_DracoInt16Array___destroy___0"]).apply(null,arguments)};var _emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=Module["_emscripten_bind_DracoUInt16Array_DracoUInt16Array_0"]=function(){return(_emscripten_bind_DracoUInt16Array_DracoUInt16Array_0=Module["_emscripten_bind_DracoUInt16Array_DracoUInt16Array_0"]=Module["asm"]["emscripten_bind_DracoUInt16Array_DracoUInt16Array_0"]).apply(null,arguments)};var _emscripten_bind_DracoUInt16Array_GetValue_1=Module["_emscripten_bind_DracoUInt16Array_GetValue_1"]=function(){return(_emscripten_bind_DracoUInt16Array_GetValue_1=Module["_emscripten_bind_DracoUInt16Array_GetValue_1"]=Module["asm"]["emscripten_bind_DracoUInt16Array_GetValue_1"]).apply(null,arguments)};var _emscripten_bind_DracoUInt16Array_size_0=Module["_emscripten_bind_DracoUInt16Array_size_0"]=function(){return(_emscripten_bind_DracoUInt16Array_size_0=Module["_emscripten_bind_DracoUInt16Array_size_0"]=Module["asm"]["emscripten_bind_DracoUInt16Array_size_0"]).apply(null,arguments)};var _emscripten_bind_DracoUInt16Array___destroy___0=Module["_emscripten_bind_DracoUInt16Array___destroy___0"]=function(){return(_emscripten_bind_DracoUInt16Array___destroy___0=Module["_emscripten_bind_DracoUInt16Array___destroy___0"]=Module["asm"]["emscripten_bind_DracoUInt16Array___destroy___0"]).apply(null,arguments)};var _emscripten_bind_DracoInt32Array_DracoInt32Array_0=Module["_emscripten_bind_DracoInt32Array_DracoInt32Array_0"]=function(){return(_emscripten_bind_DracoInt32Array_DracoInt32Array_0=Module["_emscripten_bind_DracoInt32Array_DracoInt32Array_0"]=Module["asm"]["emscripten_bind_DracoInt32Array_DracoInt32Array_0"]).apply(null,arguments)};var _emscripten_bind_DracoInt32Array_GetValue_1=Module["_emscripten_bind_DracoInt32Array_GetValue_1"]=function(){return(_emscripten_bind_DracoInt32Array_GetValue_1=Module["_emscripten_bind_DracoInt32Array_GetValue_1"]=Module["asm"]["emscripten_bind_DracoInt32Array_GetValue_1"]).apply(null,arguments)};var _emscripten_bind_DracoInt32Array_size_0=Module["_emscripten_bind_DracoInt32Array_size_0"]=function(){return(_emscripten_bind_DracoInt32Array_size_0=Module["_emscripten_bind_DracoInt32Array_size_0"]=Module["asm"]["emscripten_bind_DracoInt32Array_size_0"]).apply(null,arguments)};var _emscripten_bind_DracoInt32Array___destroy___0=Module["_emscripten_bind_DracoInt32Array___destroy___0"]=function(){return(_emscripten_bind_DracoInt32Array___destroy___0=Module["_emscripten_bind_DracoInt32Array___destroy___0"]=Module["asm"]["emscripten_bind_DracoInt32Array___destroy___0"]).apply(null,arguments)};var _emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=Module["_emscripten_bind_DracoUInt32Array_DracoUInt32Array_0"]=function(){return(_emscripten_bind_DracoUInt32Array_DracoUInt32Array_0=Module["_emscripten_bind_DracoUInt32Array_DracoUInt32Array_0"]=Module["asm"]["emscripten_bind_DracoUInt32Array_DracoUInt32Array_0"]).apply(null,arguments)};var _emscripten_bind_DracoUInt32Array_GetValue_1=Module["_emscripten_bind_DracoUInt32Array_GetValue_1"]=function(){return(_emscripten_bind_DracoUInt32Array_GetValue_1=Module["_emscripten_bind_DracoUInt32Array_GetValue_1"]=Module["asm"]["emscripten_bind_DracoUInt32Array_GetValue_1"]).apply(null,arguments)};var _emscripten_bind_DracoUInt32Array_size_0=Module["_emscripten_bind_DracoUInt32Array_size_0"]=function(){return(_emscripten_bind_DracoUInt32Array_size_0=Module["_emscripten_bind_DracoUInt32Array_size_0"]=Module["asm"]["emscripten_bind_DracoUInt32Array_size_0"]).apply(null,arguments)};var _emscripten_bind_DracoUInt32Array___destroy___0=Module["_emscripten_bind_DracoUInt32Array___destroy___0"]=function(){return(_emscripten_bind_DracoUInt32Array___destroy___0=Module["_emscripten_bind_DracoUInt32Array___destroy___0"]=Module["asm"]["emscripten_bind_DracoUInt32Array___destroy___0"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier_MetadataQuerier_0=Module["_emscripten_bind_MetadataQuerier_MetadataQuerier_0"]=function(){return(_emscripten_bind_MetadataQuerier_MetadataQuerier_0=Module["_emscripten_bind_MetadataQuerier_MetadataQuerier_0"]=Module["asm"]["emscripten_bind_MetadataQuerier_MetadataQuerier_0"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier_HasEntry_2=Module["_emscripten_bind_MetadataQuerier_HasEntry_2"]=function(){return(_emscripten_bind_MetadataQuerier_HasEntry_2=Module["_emscripten_bind_MetadataQuerier_HasEntry_2"]=Module["asm"]["emscripten_bind_MetadataQuerier_HasEntry_2"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier_GetIntEntry_2=Module["_emscripten_bind_MetadataQuerier_GetIntEntry_2"]=function(){return(_emscripten_bind_MetadataQuerier_GetIntEntry_2=Module["_emscripten_bind_MetadataQuerier_GetIntEntry_2"]=Module["asm"]["emscripten_bind_MetadataQuerier_GetIntEntry_2"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier_GetIntEntryArray_3=Module["_emscripten_bind_MetadataQuerier_GetIntEntryArray_3"]=function(){return(_emscripten_bind_MetadataQuerier_GetIntEntryArray_3=Module["_emscripten_bind_MetadataQuerier_GetIntEntryArray_3"]=Module["asm"]["emscripten_bind_MetadataQuerier_GetIntEntryArray_3"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier_GetDoubleEntry_2=Module["_emscripten_bind_MetadataQuerier_GetDoubleEntry_2"]=function(){return(_emscripten_bind_MetadataQuerier_GetDoubleEntry_2=Module["_emscripten_bind_MetadataQuerier_GetDoubleEntry_2"]=Module["asm"]["emscripten_bind_MetadataQuerier_GetDoubleEntry_2"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier_GetStringEntry_2=Module["_emscripten_bind_MetadataQuerier_GetStringEntry_2"]=function(){return(_emscripten_bind_MetadataQuerier_GetStringEntry_2=Module["_emscripten_bind_MetadataQuerier_GetStringEntry_2"]=Module["asm"]["emscripten_bind_MetadataQuerier_GetStringEntry_2"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier_NumEntries_1=Module["_emscripten_bind_MetadataQuerier_NumEntries_1"]=function(){return(_emscripten_bind_MetadataQuerier_NumEntries_1=Module["_emscripten_bind_MetadataQuerier_NumEntries_1"]=Module["asm"]["emscripten_bind_MetadataQuerier_NumEntries_1"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier_GetEntryName_2=Module["_emscripten_bind_MetadataQuerier_GetEntryName_2"]=function(){return(_emscripten_bind_MetadataQuerier_GetEntryName_2=Module["_emscripten_bind_MetadataQuerier_GetEntryName_2"]=Module["asm"]["emscripten_bind_MetadataQuerier_GetEntryName_2"]).apply(null,arguments)};var _emscripten_bind_MetadataQuerier___destroy___0=Module["_emscripten_bind_MetadataQuerier___destroy___0"]=function(){return(_emscripten_bind_MetadataQuerier___destroy___0=Module["_emscripten_bind_MetadataQuerier___destroy___0"]=Module["asm"]["emscripten_bind_MetadataQuerier___destroy___0"]).apply(null,arguments)};var _emscripten_bind_Decoder_Decoder_0=Module["_emscripten_bind_Decoder_Decoder_0"]=function(){return(_emscripten_bind_Decoder_Decoder_0=Module["_emscripten_bind_Decoder_Decoder_0"]=Module["asm"]["emscripten_bind_Decoder_Decoder_0"]).apply(null,arguments)};var _emscripten_bind_Decoder_DecodeArrayToPointCloud_3=Module["_emscripten_bind_Decoder_DecodeArrayToPointCloud_3"]=function(){return(_emscripten_bind_Decoder_DecodeArrayToPointCloud_3=Module["_emscripten_bind_Decoder_DecodeArrayToPointCloud_3"]=Module["asm"]["emscripten_bind_Decoder_DecodeArrayToPointCloud_3"]).apply(null,arguments)};var _emscripten_bind_Decoder_DecodeArrayToMesh_3=Module["_emscripten_bind_Decoder_DecodeArrayToMesh_3"]=function(){return(_emscripten_bind_Decoder_DecodeArrayToMesh_3=Module["_emscripten_bind_Decoder_DecodeArrayToMesh_3"]=Module["asm"]["emscripten_bind_Decoder_DecodeArrayToMesh_3"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeId_2=Module["_emscripten_bind_Decoder_GetAttributeId_2"]=function(){return(_emscripten_bind_Decoder_GetAttributeId_2=Module["_emscripten_bind_Decoder_GetAttributeId_2"]=Module["asm"]["emscripten_bind_Decoder_GetAttributeId_2"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeIdByName_2=Module["_emscripten_bind_Decoder_GetAttributeIdByName_2"]=function(){return(_emscripten_bind_Decoder_GetAttributeIdByName_2=Module["_emscripten_bind_Decoder_GetAttributeIdByName_2"]=Module["asm"]["emscripten_bind_Decoder_GetAttributeIdByName_2"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=Module["_emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3=Module["_emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3"]=Module["asm"]["emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttribute_2=Module["_emscripten_bind_Decoder_GetAttribute_2"]=function(){return(_emscripten_bind_Decoder_GetAttribute_2=Module["_emscripten_bind_Decoder_GetAttribute_2"]=Module["asm"]["emscripten_bind_Decoder_GetAttribute_2"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeByUniqueId_2=Module["_emscripten_bind_Decoder_GetAttributeByUniqueId_2"]=function(){return(_emscripten_bind_Decoder_GetAttributeByUniqueId_2=Module["_emscripten_bind_Decoder_GetAttributeByUniqueId_2"]=Module["asm"]["emscripten_bind_Decoder_GetAttributeByUniqueId_2"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetMetadata_1=Module["_emscripten_bind_Decoder_GetMetadata_1"]=function(){return(_emscripten_bind_Decoder_GetMetadata_1=Module["_emscripten_bind_Decoder_GetMetadata_1"]=Module["asm"]["emscripten_bind_Decoder_GetMetadata_1"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeMetadata_2=Module["_emscripten_bind_Decoder_GetAttributeMetadata_2"]=function(){return(_emscripten_bind_Decoder_GetAttributeMetadata_2=Module["_emscripten_bind_Decoder_GetAttributeMetadata_2"]=Module["asm"]["emscripten_bind_Decoder_GetAttributeMetadata_2"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetFaceFromMesh_3=Module["_emscripten_bind_Decoder_GetFaceFromMesh_3"]=function(){return(_emscripten_bind_Decoder_GetFaceFromMesh_3=Module["_emscripten_bind_Decoder_GetFaceFromMesh_3"]=Module["asm"]["emscripten_bind_Decoder_GetFaceFromMesh_3"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=Module["_emscripten_bind_Decoder_GetTriangleStripsFromMesh_2"]=function(){return(_emscripten_bind_Decoder_GetTriangleStripsFromMesh_2=Module["_emscripten_bind_Decoder_GetTriangleStripsFromMesh_2"]=Module["asm"]["emscripten_bind_Decoder_GetTriangleStripsFromMesh_2"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetTrianglesUInt16Array_3=Module["_emscripten_bind_Decoder_GetTrianglesUInt16Array_3"]=function(){return(_emscripten_bind_Decoder_GetTrianglesUInt16Array_3=Module["_emscripten_bind_Decoder_GetTrianglesUInt16Array_3"]=Module["asm"]["emscripten_bind_Decoder_GetTrianglesUInt16Array_3"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetTrianglesUInt32Array_3=Module["_emscripten_bind_Decoder_GetTrianglesUInt32Array_3"]=function(){return(_emscripten_bind_Decoder_GetTrianglesUInt32Array_3=Module["_emscripten_bind_Decoder_GetTrianglesUInt32Array_3"]=Module["asm"]["emscripten_bind_Decoder_GetTrianglesUInt32Array_3"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeFloat_3=Module["_emscripten_bind_Decoder_GetAttributeFloat_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeFloat_3=Module["_emscripten_bind_Decoder_GetAttributeFloat_3"]=Module["asm"]["emscripten_bind_Decoder_GetAttributeFloat_3"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3"]=Module["asm"]["emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3"]=Module["asm"]["emscripten_bind_Decoder_GetAttributeIntForAllPoints_3"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3"]=Module["asm"]["emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3"]=Module["asm"]["emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3"]=Module["asm"]["emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3"]=Module["asm"]["emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3"]=Module["asm"]["emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3"]=function(){return(_emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3=Module["_emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3"]=Module["asm"]["emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=Module["_emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5"]=function(){return(_emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5=Module["_emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5"]=Module["asm"]["emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5"]).apply(null,arguments)};var _emscripten_bind_Decoder_SkipAttributeTransform_1=Module["_emscripten_bind_Decoder_SkipAttributeTransform_1"]=function(){return(_emscripten_bind_Decoder_SkipAttributeTransform_1=Module["_emscripten_bind_Decoder_SkipAttributeTransform_1"]=Module["asm"]["emscripten_bind_Decoder_SkipAttributeTransform_1"]).apply(null,arguments)};var _emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=Module["_emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1"]=function(){return(_emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1=Module["_emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1"]=Module["asm"]["emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1"]).apply(null,arguments)};var _emscripten_bind_Decoder_DecodeBufferToPointCloud_2=Module["_emscripten_bind_Decoder_DecodeBufferToPointCloud_2"]=function(){return(_emscripten_bind_Decoder_DecodeBufferToPointCloud_2=Module["_emscripten_bind_Decoder_DecodeBufferToPointCloud_2"]=Module["asm"]["emscripten_bind_Decoder_DecodeBufferToPointCloud_2"]).apply(null,arguments)};var _emscripten_bind_Decoder_DecodeBufferToMesh_2=Module["_emscripten_bind_Decoder_DecodeBufferToMesh_2"]=function(){return(_emscripten_bind_Decoder_DecodeBufferToMesh_2=Module["_emscripten_bind_Decoder_DecodeBufferToMesh_2"]=Module["asm"]["emscripten_bind_Decoder_DecodeBufferToMesh_2"]).apply(null,arguments)};var _emscripten_bind_Decoder___destroy___0=Module["_emscripten_bind_Decoder___destroy___0"]=function(){return(_emscripten_bind_Decoder___destroy___0=Module["_emscripten_bind_Decoder___destroy___0"]=Module["asm"]["emscripten_bind_Decoder___destroy___0"]).apply(null,arguments)};var _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM"]=function(){return(_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM"]=Module["asm"]["emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM"]).apply(null,arguments)};var _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM"]=function(){return(_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM"]=Module["asm"]["emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM"]).apply(null,arguments)};var _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM"]=function(){return(_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM"]=Module["asm"]["emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM"]).apply(null,arguments)};var _emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM"]=function(){return(_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM=Module["_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM"]=Module["asm"]["emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM"]).apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_INVALID=Module["_emscripten_enum_draco_GeometryAttribute_Type_INVALID"]=function(){return(_emscripten_enum_draco_GeometryAttribute_Type_INVALID=Module["_emscripten_enum_draco_GeometryAttribute_Type_INVALID"]=Module["asm"]["emscripten_enum_draco_GeometryAttribute_Type_INVALID"]).apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_POSITION=Module["_emscripten_enum_draco_GeometryAttribute_Type_POSITION"]=function(){return(_emscripten_enum_draco_GeometryAttribute_Type_POSITION=Module["_emscripten_enum_draco_GeometryAttribute_Type_POSITION"]=Module["asm"]["emscripten_enum_draco_GeometryAttribute_Type_POSITION"]).apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_NORMAL=Module["_emscripten_enum_draco_GeometryAttribute_Type_NORMAL"]=function(){return(_emscripten_enum_draco_GeometryAttribute_Type_NORMAL=Module["_emscripten_enum_draco_GeometryAttribute_Type_NORMAL"]=Module["asm"]["emscripten_enum_draco_GeometryAttribute_Type_NORMAL"]).apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_COLOR=Module["_emscripten_enum_draco_GeometryAttribute_Type_COLOR"]=function(){return(_emscripten_enum_draco_GeometryAttribute_Type_COLOR=Module["_emscripten_enum_draco_GeometryAttribute_Type_COLOR"]=Module["asm"]["emscripten_enum_draco_GeometryAttribute_Type_COLOR"]).apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=Module["_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD"]=function(){return(_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=Module["_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD"]=Module["asm"]["emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD"]).apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_GENERIC=Module["_emscripten_enum_draco_GeometryAttribute_Type_GENERIC"]=function(){return(_emscripten_enum_draco_GeometryAttribute_Type_GENERIC=Module["_emscripten_enum_draco_GeometryAttribute_Type_GENERIC"]=Module["asm"]["emscripten_enum_draco_GeometryAttribute_Type_GENERIC"]).apply(null,arguments)};var _emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=Module["_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE"]=function(){return(_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=Module["_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE"]=Module["asm"]["emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE"]).apply(null,arguments)};var _emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=Module["_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD"]=function(){return(_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=Module["_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD"]=Module["asm"]["emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD"]).apply(null,arguments)};var _emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=Module["_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH"]=function(){return(_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=Module["_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH"]=Module["asm"]["emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_INVALID=Module["_emscripten_enum_draco_DataType_DT_INVALID"]=function(){return(_emscripten_enum_draco_DataType_DT_INVALID=Module["_emscripten_enum_draco_DataType_DT_INVALID"]=Module["asm"]["emscripten_enum_draco_DataType_DT_INVALID"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_INT8=Module["_emscripten_enum_draco_DataType_DT_INT8"]=function(){return(_emscripten_enum_draco_DataType_DT_INT8=Module["_emscripten_enum_draco_DataType_DT_INT8"]=Module["asm"]["emscripten_enum_draco_DataType_DT_INT8"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_UINT8=Module["_emscripten_enum_draco_DataType_DT_UINT8"]=function(){return(_emscripten_enum_draco_DataType_DT_UINT8=Module["_emscripten_enum_draco_DataType_DT_UINT8"]=Module["asm"]["emscripten_enum_draco_DataType_DT_UINT8"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_INT16=Module["_emscripten_enum_draco_DataType_DT_INT16"]=function(){return(_emscripten_enum_draco_DataType_DT_INT16=Module["_emscripten_enum_draco_DataType_DT_INT16"]=Module["asm"]["emscripten_enum_draco_DataType_DT_INT16"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_UINT16=Module["_emscripten_enum_draco_DataType_DT_UINT16"]=function(){return(_emscripten_enum_draco_DataType_DT_UINT16=Module["_emscripten_enum_draco_DataType_DT_UINT16"]=Module["asm"]["emscripten_enum_draco_DataType_DT_UINT16"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_INT32=Module["_emscripten_enum_draco_DataType_DT_INT32"]=function(){return(_emscripten_enum_draco_DataType_DT_INT32=Module["_emscripten_enum_draco_DataType_DT_INT32"]=Module["asm"]["emscripten_enum_draco_DataType_DT_INT32"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_UINT32=Module["_emscripten_enum_draco_DataType_DT_UINT32"]=function(){return(_emscripten_enum_draco_DataType_DT_UINT32=Module["_emscripten_enum_draco_DataType_DT_UINT32"]=Module["asm"]["emscripten_enum_draco_DataType_DT_UINT32"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_INT64=Module["_emscripten_enum_draco_DataType_DT_INT64"]=function(){return(_emscripten_enum_draco_DataType_DT_INT64=Module["_emscripten_enum_draco_DataType_DT_INT64"]=Module["asm"]["emscripten_enum_draco_DataType_DT_INT64"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_UINT64=Module["_emscripten_enum_draco_DataType_DT_UINT64"]=function(){return(_emscripten_enum_draco_DataType_DT_UINT64=Module["_emscripten_enum_draco_DataType_DT_UINT64"]=Module["asm"]["emscripten_enum_draco_DataType_DT_UINT64"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_FLOAT32=Module["_emscripten_enum_draco_DataType_DT_FLOAT32"]=function(){return(_emscripten_enum_draco_DataType_DT_FLOAT32=Module["_emscripten_enum_draco_DataType_DT_FLOAT32"]=Module["asm"]["emscripten_enum_draco_DataType_DT_FLOAT32"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_FLOAT64=Module["_emscripten_enum_draco_DataType_DT_FLOAT64"]=function(){return(_emscripten_enum_draco_DataType_DT_FLOAT64=Module["_emscripten_enum_draco_DataType_DT_FLOAT64"]=Module["asm"]["emscripten_enum_draco_DataType_DT_FLOAT64"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_BOOL=Module["_emscripten_enum_draco_DataType_DT_BOOL"]=function(){return(_emscripten_enum_draco_DataType_DT_BOOL=Module["_emscripten_enum_draco_DataType_DT_BOOL"]=Module["asm"]["emscripten_enum_draco_DataType_DT_BOOL"]).apply(null,arguments)};var _emscripten_enum_draco_DataType_DT_TYPES_COUNT=Module["_emscripten_enum_draco_DataType_DT_TYPES_COUNT"]=function(){return(_emscripten_enum_draco_DataType_DT_TYPES_COUNT=Module["_emscripten_enum_draco_DataType_DT_TYPES_COUNT"]=Module["asm"]["emscripten_enum_draco_DataType_DT_TYPES_COUNT"]).apply(null,arguments)};var _emscripten_enum_draco_StatusCode_OK=Module["_emscripten_enum_draco_StatusCode_OK"]=function(){return(_emscripten_enum_draco_StatusCode_OK=Module["_emscripten_enum_draco_StatusCode_OK"]=Module["asm"]["emscripten_enum_draco_StatusCode_OK"]).apply(null,arguments)};var _emscripten_enum_draco_StatusCode_DRACO_ERROR=Module["_emscripten_enum_draco_StatusCode_DRACO_ERROR"]=function(){return(_emscripten_enum_draco_StatusCode_DRACO_ERROR=Module["_emscripten_enum_draco_StatusCode_DRACO_ERROR"]=Module["asm"]["emscripten_enum_draco_StatusCode_DRACO_ERROR"]).apply(null,arguments)};var _emscripten_enum_draco_StatusCode_IO_ERROR=Module["_emscripten_enum_draco_StatusCode_IO_ERROR"]=function(){return(_emscripten_enum_draco_StatusCode_IO_ERROR=Module["_emscripten_enum_draco_StatusCode_IO_ERROR"]=Module["asm"]["emscripten_enum_draco_StatusCode_IO_ERROR"]).apply(null,arguments)};var _emscripten_enum_draco_StatusCode_INVALID_PARAMETER=Module["_emscripten_enum_draco_StatusCode_INVALID_PARAMETER"]=function(){return(_emscripten_enum_draco_StatusCode_INVALID_PARAMETER=Module["_emscripten_enum_draco_StatusCode_INVALID_PARAMETER"]=Module["asm"]["emscripten_enum_draco_StatusCode_INVALID_PARAMETER"]).apply(null,arguments)};var _emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=Module["_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION"]=function(){return(_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION=Module["_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION"]=Module["asm"]["emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION"]).apply(null,arguments)};var _emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=Module["_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION"]=function(){return(_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION=Module["_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION"]=Module["asm"]["emscripten_enum_draco_StatusCode_UNKNOWN_VERSION"]).apply(null,arguments)};var ___errno_location=Module["___errno_location"]=function(){return(___errno_location=Module["___errno_location"]=Module["asm"]["__errno_location"]).apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return(stackSave=Module["stackSave"]=Module["asm"]["stackSave"]).apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return(stackRestore=Module["stackRestore"]=Module["asm"]["stackRestore"]).apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return(stackAlloc=Module["stackAlloc"]=Module["asm"]["stackAlloc"]).apply(null,arguments)};var _setThrew=Module["_setThrew"]=function(){return(_setThrew=Module["_setThrew"]=Module["asm"]["setThrew"]).apply(null,arguments)};var _free=Module["_free"]=function(){return(_free=Module["_free"]=Module["asm"]["free"]).apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return(_malloc=Module["_malloc"]=Module["asm"]["malloc"]).apply(null,arguments)};var dynCall_jiji=Module["dynCall_jiji"]=function(){return(dynCall_jiji=Module["dynCall_jiji"]=Module["asm"]["dynCall_jiji"]).apply(null,arguments)};var calledRun;function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(args){args=args||arguments_;if(runDependencies>0){return}preRun();if(runDependencies>0)return;function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}Module["run"]=run;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}noExitRuntime=true;run();function WrapperObject(){}WrapperObject.prototype=Object.create(WrapperObject.prototype);WrapperObject.prototype.constructor=WrapperObject;WrapperObject.prototype.__class__=WrapperObject;WrapperObject.__cache__={};Module["WrapperObject"]=WrapperObject;function getCache(__class__){return(__class__||WrapperObject).__cache__}Module["getCache"]=getCache;function wrapPointer(ptr,__class__){var cache=getCache(__class__);var ret=cache[ptr];if(ret)return ret;ret=Object.create((__class__||WrapperObject).prototype);ret.ptr=ptr;return cache[ptr]=ret}Module["wrapPointer"]=wrapPointer;function castObject(obj,__class__){return wrapPointer(obj.ptr,__class__)}Module["castObject"]=castObject;Module["NULL"]=wrapPointer(0);function destroy(obj){if(!obj["__destroy__"])throw"Error: Cannot destroy object. (Did you create it yourself?)";obj["__destroy__"]();delete getCache(obj.__class__)[obj.ptr]}Module["destroy"]=destroy;function compare(obj1,obj2){return obj1.ptr===obj2.ptr}Module["compare"]=compare;function getPointer(obj){return obj.ptr}Module["getPointer"]=getPointer;function getClass(obj){return obj.__class__}Module["getClass"]=getClass;var ensureCache={buffer:0,size:0,pos:0,temps:[],needed:0,prepare:function(){if(ensureCache.needed){for(var i=0;i<ensureCache.temps.length;i++){Module["_free"](ensureCache.temps[i])}ensureCache.temps.length=0;Module["_free"](ensureCache.buffer);ensureCache.buffer=0;ensureCache.size+=ensureCache.needed;ensureCache.needed=0}if(!ensureCache.buffer){ensureCache.size+=128;ensureCache.buffer=Module["_malloc"](ensureCache.size);assert(ensureCache.buffer)}ensureCache.pos=0},alloc:function(array,view){assert(ensureCache.buffer);var bytes=view.BYTES_PER_ELEMENT;var len=array.length*bytes;len=len+7&-8;var ret;if(ensureCache.pos+len>=ensureCache.size){assert(len>0);ensureCache.needed+=len;ret=Module["_malloc"](len);ensureCache.temps.push(ret)}else{ret=ensureCache.buffer+ensureCache.pos;ensureCache.pos+=len}return ret},copy:function(array,view,offset){offset>>>=0;var bytes=view.BYTES_PER_ELEMENT;switch(bytes){case 2:offset>>>=1;break;case 4:offset>>>=2;break;case 8:offset>>>=3;break}for(var i=0;i<array.length;i++){view[offset+i]=array[i]}}};function ensureString(value){if(typeof value==="string"){var intArray=intArrayFromString(value);var offset=ensureCache.alloc(intArray,HEAP8);ensureCache.copy(intArray,HEAP8,offset);return offset}return value}function ensureInt8(value){if(typeof value==="object"){var offset=ensureCache.alloc(value,HEAP8);ensureCache.copy(value,HEAP8,offset);return offset}return value}function VoidPtr(){throw"cannot construct a VoidPtr, no constructor in IDL"}VoidPtr.prototype=Object.create(WrapperObject.prototype);VoidPtr.prototype.constructor=VoidPtr;VoidPtr.prototype.__class__=VoidPtr;VoidPtr.__cache__={};Module["VoidPtr"]=VoidPtr;VoidPtr.prototype["__destroy__"]=VoidPtr.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_VoidPtr___destroy___0(self)};function DecoderBuffer(){this.ptr=_emscripten_bind_DecoderBuffer_DecoderBuffer_0();getCache(DecoderBuffer)[this.ptr]=this}DecoderBuffer.prototype=Object.create(WrapperObject.prototype);DecoderBuffer.prototype.constructor=DecoderBuffer;DecoderBuffer.prototype.__class__=DecoderBuffer;DecoderBuffer.__cache__={};Module["DecoderBuffer"]=DecoderBuffer;DecoderBuffer.prototype["Init"]=DecoderBuffer.prototype.Init=function(data,data_size){var self=this.ptr;ensureCache.prepare();if(typeof data=="object"){data=ensureInt8(data)}if(data_size&&typeof data_size==="object")data_size=data_size.ptr;_emscripten_bind_DecoderBuffer_Init_2(self,data,data_size)};DecoderBuffer.prototype["__destroy__"]=DecoderBuffer.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_DecoderBuffer___destroy___0(self)};function AttributeTransformData(){this.ptr=_emscripten_bind_AttributeTransformData_AttributeTransformData_0();getCache(AttributeTransformData)[this.ptr]=this}AttributeTransformData.prototype=Object.create(WrapperObject.prototype);AttributeTransformData.prototype.constructor=AttributeTransformData;AttributeTransformData.prototype.__class__=AttributeTransformData;AttributeTransformData.__cache__={};Module["AttributeTransformData"]=AttributeTransformData;AttributeTransformData.prototype["transform_type"]=AttributeTransformData.prototype.transform_type=function(){var self=this.ptr;return _emscripten_bind_AttributeTransformData_transform_type_0(self)};AttributeTransformData.prototype["__destroy__"]=AttributeTransformData.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_AttributeTransformData___destroy___0(self)};function GeometryAttribute(){this.ptr=_emscripten_bind_GeometryAttribute_GeometryAttribute_0();getCache(GeometryAttribute)[this.ptr]=this}GeometryAttribute.prototype=Object.create(WrapperObject.prototype);GeometryAttribute.prototype.constructor=GeometryAttribute;GeometryAttribute.prototype.__class__=GeometryAttribute;GeometryAttribute.__cache__={};Module["GeometryAttribute"]=GeometryAttribute;GeometryAttribute.prototype["__destroy__"]=GeometryAttribute.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_GeometryAttribute___destroy___0(self)};function PointAttribute(){this.ptr=_emscripten_bind_PointAttribute_PointAttribute_0();getCache(PointAttribute)[this.ptr]=this}PointAttribute.prototype=Object.create(WrapperObject.prototype);PointAttribute.prototype.constructor=PointAttribute;PointAttribute.prototype.__class__=PointAttribute;PointAttribute.__cache__={};Module["PointAttribute"]=PointAttribute;PointAttribute.prototype["size"]=PointAttribute.prototype.size=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_size_0(self)};PointAttribute.prototype["GetAttributeTransformData"]=PointAttribute.prototype.GetAttributeTransformData=function(){var self=this.ptr;return wrapPointer(_emscripten_bind_PointAttribute_GetAttributeTransformData_0(self),AttributeTransformData)};PointAttribute.prototype["attribute_type"]=PointAttribute.prototype.attribute_type=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_attribute_type_0(self)};PointAttribute.prototype["data_type"]=PointAttribute.prototype.data_type=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_data_type_0(self)};PointAttribute.prototype["num_components"]=PointAttribute.prototype.num_components=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_num_components_0(self)};PointAttribute.prototype["normalized"]=PointAttribute.prototype.normalized=function(){var self=this.ptr;return!!_emscripten_bind_PointAttribute_normalized_0(self)};PointAttribute.prototype["byte_stride"]=PointAttribute.prototype.byte_stride=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_byte_stride_0(self)};PointAttribute.prototype["byte_offset"]=PointAttribute.prototype.byte_offset=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_byte_offset_0(self)};PointAttribute.prototype["unique_id"]=PointAttribute.prototype.unique_id=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_unique_id_0(self)};PointAttribute.prototype["__destroy__"]=PointAttribute.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_PointAttribute___destroy___0(self)};function AttributeQuantizationTransform(){this.ptr=_emscripten_bind_AttributeQuantizationTransform_AttributeQuantizationTransform_0();getCache(AttributeQuantizationTransform)[this.ptr]=this}AttributeQuantizationTransform.prototype=Object.create(WrapperObject.prototype);AttributeQuantizationTransform.prototype.constructor=AttributeQuantizationTransform;AttributeQuantizationTransform.prototype.__class__=AttributeQuantizationTransform;AttributeQuantizationTransform.__cache__={};Module["AttributeQuantizationTransform"]=AttributeQuantizationTransform;AttributeQuantizationTransform.prototype["InitFromAttribute"]=AttributeQuantizationTransform.prototype.InitFromAttribute=function(att){var self=this.ptr;if(att&&typeof att==="object")att=att.ptr;return!!_emscripten_bind_AttributeQuantizationTransform_InitFromAttribute_1(self,att)};AttributeQuantizationTransform.prototype["quantization_bits"]=AttributeQuantizationTransform.prototype.quantization_bits=function(){var self=this.ptr;return _emscripten_bind_AttributeQuantizationTransform_quantization_bits_0(self)};AttributeQuantizationTransform.prototype["min_value"]=AttributeQuantizationTransform.prototype.min_value=function(axis){var self=this.ptr;if(axis&&typeof axis==="object")axis=axis.ptr;return _emscripten_bind_AttributeQuantizationTransform_min_value_1(self,axis)};AttributeQuantizationTransform.prototype["range"]=AttributeQuantizationTransform.prototype.range=function(){var self=this.ptr;return _emscripten_bind_AttributeQuantizationTransform_range_0(self)};AttributeQuantizationTransform.prototype["__destroy__"]=AttributeQuantizationTransform.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_AttributeQuantizationTransform___destroy___0(self)};function AttributeOctahedronTransform(){this.ptr=_emscripten_bind_AttributeOctahedronTransform_AttributeOctahedronTransform_0();getCache(AttributeOctahedronTransform)[this.ptr]=this}AttributeOctahedronTransform.prototype=Object.create(WrapperObject.prototype);AttributeOctahedronTransform.prototype.constructor=AttributeOctahedronTransform;AttributeOctahedronTransform.prototype.__class__=AttributeOctahedronTransform;AttributeOctahedronTransform.__cache__={};Module["AttributeOctahedronTransform"]=AttributeOctahedronTransform;AttributeOctahedronTransform.prototype["InitFromAttribute"]=AttributeOctahedronTransform.prototype.InitFromAttribute=function(att){var self=this.ptr;if(att&&typeof att==="object")att=att.ptr;return!!_emscripten_bind_AttributeOctahedronTransform_InitFromAttribute_1(self,att)};AttributeOctahedronTransform.prototype["quantization_bits"]=AttributeOctahedronTransform.prototype.quantization_bits=function(){var self=this.ptr;return _emscripten_bind_AttributeOctahedronTransform_quantization_bits_0(self)};AttributeOctahedronTransform.prototype["__destroy__"]=AttributeOctahedronTransform.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_AttributeOctahedronTransform___destroy___0(self)};function PointCloud(){this.ptr=_emscripten_bind_PointCloud_PointCloud_0();getCache(PointCloud)[this.ptr]=this}PointCloud.prototype=Object.create(WrapperObject.prototype);PointCloud.prototype.constructor=PointCloud;PointCloud.prototype.__class__=PointCloud;PointCloud.__cache__={};Module["PointCloud"]=PointCloud;PointCloud.prototype["num_attributes"]=PointCloud.prototype.num_attributes=function(){var self=this.ptr;return _emscripten_bind_PointCloud_num_attributes_0(self)};PointCloud.prototype["num_points"]=PointCloud.prototype.num_points=function(){var self=this.ptr;return _emscripten_bind_PointCloud_num_points_0(self)};PointCloud.prototype["__destroy__"]=PointCloud.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_PointCloud___destroy___0(self)};function Mesh(){this.ptr=_emscripten_bind_Mesh_Mesh_0();getCache(Mesh)[this.ptr]=this}Mesh.prototype=Object.create(WrapperObject.prototype);Mesh.prototype.constructor=Mesh;Mesh.prototype.__class__=Mesh;Mesh.__cache__={};Module["Mesh"]=Mesh;Mesh.prototype["num_faces"]=Mesh.prototype.num_faces=function(){var self=this.ptr;return _emscripten_bind_Mesh_num_faces_0(self)};Mesh.prototype["num_attributes"]=Mesh.prototype.num_attributes=function(){var self=this.ptr;return _emscripten_bind_Mesh_num_attributes_0(self)};Mesh.prototype["num_points"]=Mesh.prototype.num_points=function(){var self=this.ptr;return _emscripten_bind_Mesh_num_points_0(self)};Mesh.prototype["__destroy__"]=Mesh.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_Mesh___destroy___0(self)};function Metadata(){this.ptr=_emscripten_bind_Metadata_Metadata_0();getCache(Metadata)[this.ptr]=this}Metadata.prototype=Object.create(WrapperObject.prototype);Metadata.prototype.constructor=Metadata;Metadata.prototype.__class__=Metadata;Metadata.__cache__={};Module["Metadata"]=Metadata;Metadata.prototype["__destroy__"]=Metadata.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_Metadata___destroy___0(self)};function Status(){throw"cannot construct a Status, no constructor in IDL"}Status.prototype=Object.create(WrapperObject.prototype);Status.prototype.constructor=Status;Status.prototype.__class__=Status;Status.__cache__={};Module["Status"]=Status;Status.prototype["code"]=Status.prototype.code=function(){var self=this.ptr;return _emscripten_bind_Status_code_0(self)};Status.prototype["ok"]=Status.prototype.ok=function(){var self=this.ptr;return!!_emscripten_bind_Status_ok_0(self)};Status.prototype["error_msg"]=Status.prototype.error_msg=function(){var self=this.ptr;return UTF8ToString(_emscripten_bind_Status_error_msg_0(self))};Status.prototype["__destroy__"]=Status.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_Status___destroy___0(self)};function DracoFloat32Array(){this.ptr=_emscripten_bind_DracoFloat32Array_DracoFloat32Array_0();getCache(DracoFloat32Array)[this.ptr]=this}DracoFloat32Array.prototype=Object.create(WrapperObject.prototype);DracoFloat32Array.prototype.constructor=DracoFloat32Array;DracoFloat32Array.prototype.__class__=DracoFloat32Array;DracoFloat32Array.__cache__={};Module["DracoFloat32Array"]=DracoFloat32Array;DracoFloat32Array.prototype["GetValue"]=DracoFloat32Array.prototype.GetValue=function(index){var self=this.ptr;if(index&&typeof index==="object")index=index.ptr;return _emscripten_bind_DracoFloat32Array_GetValue_1(self,index)};DracoFloat32Array.prototype["size"]=DracoFloat32Array.prototype.size=function(){var self=this.ptr;return _emscripten_bind_DracoFloat32Array_size_0(self)};DracoFloat32Array.prototype["__destroy__"]=DracoFloat32Array.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_DracoFloat32Array___destroy___0(self)};function DracoInt8Array(){this.ptr=_emscripten_bind_DracoInt8Array_DracoInt8Array_0();getCache(DracoInt8Array)[this.ptr]=this}DracoInt8Array.prototype=Object.create(WrapperObject.prototype);DracoInt8Array.prototype.constructor=DracoInt8Array;DracoInt8Array.prototype.__class__=DracoInt8Array;DracoInt8Array.__cache__={};Module["DracoInt8Array"]=DracoInt8Array;DracoInt8Array.prototype["GetValue"]=DracoInt8Array.prototype.GetValue=function(index){var self=this.ptr;if(index&&typeof index==="object")index=index.ptr;return _emscripten_bind_DracoInt8Array_GetValue_1(self,index)};DracoInt8Array.prototype["size"]=DracoInt8Array.prototype.size=function(){var self=this.ptr;return _emscripten_bind_DracoInt8Array_size_0(self)};DracoInt8Array.prototype["__destroy__"]=DracoInt8Array.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_DracoInt8Array___destroy___0(self)};function DracoUInt8Array(){this.ptr=_emscripten_bind_DracoUInt8Array_DracoUInt8Array_0();getCache(DracoUInt8Array)[this.ptr]=this}DracoUInt8Array.prototype=Object.create(WrapperObject.prototype);DracoUInt8Array.prototype.constructor=DracoUInt8Array;DracoUInt8Array.prototype.__class__=DracoUInt8Array;DracoUInt8Array.__cache__={};Module["DracoUInt8Array"]=DracoUInt8Array;DracoUInt8Array.prototype["GetValue"]=DracoUInt8Array.prototype.GetValue=function(index){var self=this.ptr;if(index&&typeof index==="object")index=index.ptr;return _emscripten_bind_DracoUInt8Array_GetValue_1(self,index)};DracoUInt8Array.prototype["size"]=DracoUInt8Array.prototype.size=function(){var self=this.ptr;return _emscripten_bind_DracoUInt8Array_size_0(self)};DracoUInt8Array.prototype["__destroy__"]=DracoUInt8Array.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_DracoUInt8Array___destroy___0(self)};function DracoInt16Array(){this.ptr=_emscripten_bind_DracoInt16Array_DracoInt16Array_0();getCache(DracoInt16Array)[this.ptr]=this}DracoInt16Array.prototype=Object.create(WrapperObject.prototype);DracoInt16Array.prototype.constructor=DracoInt16Array;DracoInt16Array.prototype.__class__=DracoInt16Array;DracoInt16Array.__cache__={};Module["DracoInt16Array"]=DracoInt16Array;DracoInt16Array.prototype["GetValue"]=DracoInt16Array.prototype.GetValue=function(index){var self=this.ptr;if(index&&typeof index==="object")index=index.ptr;return _emscripten_bind_DracoInt16Array_GetValue_1(self,index)};DracoInt16Array.prototype["size"]=DracoInt16Array.prototype.size=function(){var self=this.ptr;return _emscripten_bind_DracoInt16Array_size_0(self)};DracoInt16Array.prototype["__destroy__"]=DracoInt16Array.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_DracoInt16Array___destroy___0(self)};function DracoUInt16Array(){this.ptr=_emscripten_bind_DracoUInt16Array_DracoUInt16Array_0();getCache(DracoUInt16Array)[this.ptr]=this}DracoUInt16Array.prototype=Object.create(WrapperObject.prototype);DracoUInt16Array.prototype.constructor=DracoUInt16Array;DracoUInt16Array.prototype.__class__=DracoUInt16Array;DracoUInt16Array.__cache__={};Module["DracoUInt16Array"]=DracoUInt16Array;DracoUInt16Array.prototype["GetValue"]=DracoUInt16Array.prototype.GetValue=function(index){var self=this.ptr;if(index&&typeof index==="object")index=index.ptr;return _emscripten_bind_DracoUInt16Array_GetValue_1(self,index)};DracoUInt16Array.prototype["size"]=DracoUInt16Array.prototype.size=function(){var self=this.ptr;return _emscripten_bind_DracoUInt16Array_size_0(self)};DracoUInt16Array.prototype["__destroy__"]=DracoUInt16Array.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_DracoUInt16Array___destroy___0(self)};function DracoInt32Array(){this.ptr=_emscripten_bind_DracoInt32Array_DracoInt32Array_0();getCache(DracoInt32Array)[this.ptr]=this}DracoInt32Array.prototype=Object.create(WrapperObject.prototype);DracoInt32Array.prototype.constructor=DracoInt32Array;DracoInt32Array.prototype.__class__=DracoInt32Array;DracoInt32Array.__cache__={};Module["DracoInt32Array"]=DracoInt32Array;DracoInt32Array.prototype["GetValue"]=DracoInt32Array.prototype.GetValue=function(index){var self=this.ptr;if(index&&typeof index==="object")index=index.ptr;return _emscripten_bind_DracoInt32Array_GetValue_1(self,index)};DracoInt32Array.prototype["size"]=DracoInt32Array.prototype.size=function(){var self=this.ptr;return _emscripten_bind_DracoInt32Array_size_0(self)};DracoInt32Array.prototype["__destroy__"]=DracoInt32Array.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_DracoInt32Array___destroy___0(self)};function DracoUInt32Array(){this.ptr=_emscripten_bind_DracoUInt32Array_DracoUInt32Array_0();getCache(DracoUInt32Array)[this.ptr]=this}DracoUInt32Array.prototype=Object.create(WrapperObject.prototype);DracoUInt32Array.prototype.constructor=DracoUInt32Array;DracoUInt32Array.prototype.__class__=DracoUInt32Array;DracoUInt32Array.__cache__={};Module["DracoUInt32Array"]=DracoUInt32Array;DracoUInt32Array.prototype["GetValue"]=DracoUInt32Array.prototype.GetValue=function(index){var self=this.ptr;if(index&&typeof index==="object")index=index.ptr;return _emscripten_bind_DracoUInt32Array_GetValue_1(self,index)};DracoUInt32Array.prototype["size"]=DracoUInt32Array.prototype.size=function(){var self=this.ptr;return _emscripten_bind_DracoUInt32Array_size_0(self)};DracoUInt32Array.prototype["__destroy__"]=DracoUInt32Array.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_DracoUInt32Array___destroy___0(self)};function MetadataQuerier(){this.ptr=_emscripten_bind_MetadataQuerier_MetadataQuerier_0();getCache(MetadataQuerier)[this.ptr]=this}MetadataQuerier.prototype=Object.create(WrapperObject.prototype);MetadataQuerier.prototype.constructor=MetadataQuerier;MetadataQuerier.prototype.__class__=MetadataQuerier;MetadataQuerier.__cache__={};Module["MetadataQuerier"]=MetadataQuerier;MetadataQuerier.prototype["HasEntry"]=MetadataQuerier.prototype.HasEntry=function(metadata,entry_name){var self=this.ptr;ensureCache.prepare();if(metadata&&typeof metadata==="object")metadata=metadata.ptr;if(entry_name&&typeof entry_name==="object")entry_name=entry_name.ptr;else entry_name=ensureString(entry_name);return!!_emscripten_bind_MetadataQuerier_HasEntry_2(self,metadata,entry_name)};MetadataQuerier.prototype["GetIntEntry"]=MetadataQuerier.prototype.GetIntEntry=function(metadata,entry_name){var self=this.ptr;ensureCache.prepare();if(metadata&&typeof metadata==="object")metadata=metadata.ptr;if(entry_name&&typeof entry_name==="object")entry_name=entry_name.ptr;else entry_name=ensureString(entry_name);return _emscripten_bind_MetadataQuerier_GetIntEntry_2(self,metadata,entry_name)};MetadataQuerier.prototype["GetIntEntryArray"]=MetadataQuerier.prototype.GetIntEntryArray=function(metadata,entry_name,out_values){var self=this.ptr;ensureCache.prepare();if(metadata&&typeof metadata==="object")metadata=metadata.ptr;if(entry_name&&typeof entry_name==="object")entry_name=entry_name.ptr;else entry_name=ensureString(entry_name);if(out_values&&typeof out_values==="object")out_values=out_values.ptr;_emscripten_bind_MetadataQuerier_GetIntEntryArray_3(self,metadata,entry_name,out_values)};MetadataQuerier.prototype["GetDoubleEntry"]=MetadataQuerier.prototype.GetDoubleEntry=function(metadata,entry_name){var self=this.ptr;ensureCache.prepare();if(metadata&&typeof metadata==="object")metadata=metadata.ptr;if(entry_name&&typeof entry_name==="object")entry_name=entry_name.ptr;else entry_name=ensureString(entry_name);return _emscripten_bind_MetadataQuerier_GetDoubleEntry_2(self,metadata,entry_name)};MetadataQuerier.prototype["GetStringEntry"]=MetadataQuerier.prototype.GetStringEntry=function(metadata,entry_name){var self=this.ptr;ensureCache.prepare();if(metadata&&typeof metadata==="object")metadata=metadata.ptr;if(entry_name&&typeof entry_name==="object")entry_name=entry_name.ptr;else entry_name=ensureString(entry_name);return UTF8ToString(_emscripten_bind_MetadataQuerier_GetStringEntry_2(self,metadata,entry_name))};MetadataQuerier.prototype["NumEntries"]=MetadataQuerier.prototype.NumEntries=function(metadata){var self=this.ptr;if(metadata&&typeof metadata==="object")metadata=metadata.ptr;return _emscripten_bind_MetadataQuerier_NumEntries_1(self,metadata)};MetadataQuerier.prototype["GetEntryName"]=MetadataQuerier.prototype.GetEntryName=function(metadata,entry_id){var self=this.ptr;if(metadata&&typeof metadata==="object")metadata=metadata.ptr;if(entry_id&&typeof entry_id==="object")entry_id=entry_id.ptr;return UTF8ToString(_emscripten_bind_MetadataQuerier_GetEntryName_2(self,metadata,entry_id))};MetadataQuerier.prototype["__destroy__"]=MetadataQuerier.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_MetadataQuerier___destroy___0(self)};function Decoder(){this.ptr=_emscripten_bind_Decoder_Decoder_0();getCache(Decoder)[this.ptr]=this}Decoder.prototype=Object.create(WrapperObject.prototype);Decoder.prototype.constructor=Decoder;Decoder.prototype.__class__=Decoder;Decoder.__cache__={};Module["Decoder"]=Decoder;Decoder.prototype["DecodeArrayToPointCloud"]=Decoder.prototype.DecodeArrayToPointCloud=function(data,data_size,out_point_cloud){var self=this.ptr;ensureCache.prepare();if(typeof data=="object"){data=ensureInt8(data)}if(data_size&&typeof data_size==="object")data_size=data_size.ptr;if(out_point_cloud&&typeof out_point_cloud==="object")out_point_cloud=out_point_cloud.ptr;return wrapPointer(_emscripten_bind_Decoder_DecodeArrayToPointCloud_3(self,data,data_size,out_point_cloud),Status)};Decoder.prototype["DecodeArrayToMesh"]=Decoder.prototype.DecodeArrayToMesh=function(data,data_size,out_mesh){var self=this.ptr;ensureCache.prepare();if(typeof data=="object"){data=ensureInt8(data)}if(data_size&&typeof data_size==="object")data_size=data_size.ptr;if(out_mesh&&typeof out_mesh==="object")out_mesh=out_mesh.ptr;return wrapPointer(_emscripten_bind_Decoder_DecodeArrayToMesh_3(self,data,data_size,out_mesh),Status)};Decoder.prototype["GetAttributeId"]=Decoder.prototype.GetAttributeId=function(pc,type){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;return _emscripten_bind_Decoder_GetAttributeId_2(self,pc,type)};Decoder.prototype["GetAttributeIdByName"]=Decoder.prototype.GetAttributeIdByName=function(pc,name){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(name&&typeof name==="object")name=name.ptr;else name=ensureString(name);return _emscripten_bind_Decoder_GetAttributeIdByName_2(self,pc,name)};Decoder.prototype["GetAttributeIdByMetadataEntry"]=Decoder.prototype.GetAttributeIdByMetadataEntry=function(pc,name,value){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(name&&typeof name==="object")name=name.ptr;else name=ensureString(name);if(value&&typeof value==="object")value=value.ptr;else value=ensureString(value);return _emscripten_bind_Decoder_GetAttributeIdByMetadataEntry_3(self,pc,name,value)};Decoder.prototype["GetAttribute"]=Decoder.prototype.GetAttribute=function(pc,att_id){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(att_id&&typeof att_id==="object")att_id=att_id.ptr;return wrapPointer(_emscripten_bind_Decoder_GetAttribute_2(self,pc,att_id),PointAttribute)};Decoder.prototype["GetAttributeByUniqueId"]=Decoder.prototype.GetAttributeByUniqueId=function(pc,unique_id){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(unique_id&&typeof unique_id==="object")unique_id=unique_id.ptr;return wrapPointer(_emscripten_bind_Decoder_GetAttributeByUniqueId_2(self,pc,unique_id),PointAttribute)};Decoder.prototype["GetMetadata"]=Decoder.prototype.GetMetadata=function(pc){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;return wrapPointer(_emscripten_bind_Decoder_GetMetadata_1(self,pc),Metadata)};Decoder.prototype["GetAttributeMetadata"]=Decoder.prototype.GetAttributeMetadata=function(pc,att_id){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(att_id&&typeof att_id==="object")att_id=att_id.ptr;return wrapPointer(_emscripten_bind_Decoder_GetAttributeMetadata_2(self,pc,att_id),Metadata)};Decoder.prototype["GetFaceFromMesh"]=Decoder.prototype.GetFaceFromMesh=function(m,face_id,out_values){var self=this.ptr;if(m&&typeof m==="object")m=m.ptr;if(face_id&&typeof face_id==="object")face_id=face_id.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetFaceFromMesh_3(self,m,face_id,out_values)};Decoder.prototype["GetTriangleStripsFromMesh"]=Decoder.prototype.GetTriangleStripsFromMesh=function(m,strip_values){var self=this.ptr;if(m&&typeof m==="object")m=m.ptr;if(strip_values&&typeof strip_values==="object")strip_values=strip_values.ptr;return _emscripten_bind_Decoder_GetTriangleStripsFromMesh_2(self,m,strip_values)};Decoder.prototype["GetTrianglesUInt16Array"]=Decoder.prototype.GetTrianglesUInt16Array=function(m,out_size,out_values){var self=this.ptr;if(m&&typeof m==="object")m=m.ptr;if(out_size&&typeof out_size==="object")out_size=out_size.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetTrianglesUInt16Array_3(self,m,out_size,out_values)};Decoder.prototype["GetTrianglesUInt32Array"]=Decoder.prototype.GetTrianglesUInt32Array=function(m,out_size,out_values){var self=this.ptr;if(m&&typeof m==="object")m=m.ptr;if(out_size&&typeof out_size==="object")out_size=out_size.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetTrianglesUInt32Array_3(self,m,out_size,out_values)};Decoder.prototype["GetAttributeFloat"]=Decoder.prototype.GetAttributeFloat=function(pa,att_index,out_values){var self=this.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(att_index&&typeof att_index==="object")att_index=att_index.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeFloat_3(self,pa,att_index,out_values)};Decoder.prototype["GetAttributeFloatForAllPoints"]=Decoder.prototype.GetAttributeFloatForAllPoints=function(pc,pa,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeFloatForAllPoints_3(self,pc,pa,out_values)};Decoder.prototype["GetAttributeIntForAllPoints"]=Decoder.prototype.GetAttributeIntForAllPoints=function(pc,pa,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeIntForAllPoints_3(self,pc,pa,out_values)};Decoder.prototype["GetAttributeInt8ForAllPoints"]=Decoder.prototype.GetAttributeInt8ForAllPoints=function(pc,pa,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeInt8ForAllPoints_3(self,pc,pa,out_values)};Decoder.prototype["GetAttributeUInt8ForAllPoints"]=Decoder.prototype.GetAttributeUInt8ForAllPoints=function(pc,pa,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeUInt8ForAllPoints_3(self,pc,pa,out_values)};Decoder.prototype["GetAttributeInt16ForAllPoints"]=Decoder.prototype.GetAttributeInt16ForAllPoints=function(pc,pa,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeInt16ForAllPoints_3(self,pc,pa,out_values)};Decoder.prototype["GetAttributeUInt16ForAllPoints"]=Decoder.prototype.GetAttributeUInt16ForAllPoints=function(pc,pa,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeUInt16ForAllPoints_3(self,pc,pa,out_values)};Decoder.prototype["GetAttributeInt32ForAllPoints"]=Decoder.prototype.GetAttributeInt32ForAllPoints=function(pc,pa,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeInt32ForAllPoints_3(self,pc,pa,out_values)};Decoder.prototype["GetAttributeUInt32ForAllPoints"]=Decoder.prototype.GetAttributeUInt32ForAllPoints=function(pc,pa,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeUInt32ForAllPoints_3(self,pc,pa,out_values)};Decoder.prototype["GetAttributeDataArrayForAllPoints"]=Decoder.prototype.GetAttributeDataArrayForAllPoints=function(pc,pa,data_type,out_size,out_values){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(pa&&typeof pa==="object")pa=pa.ptr;if(data_type&&typeof data_type==="object")data_type=data_type.ptr;if(out_size&&typeof out_size==="object")out_size=out_size.ptr;if(out_values&&typeof out_values==="object")out_values=out_values.ptr;return!!_emscripten_bind_Decoder_GetAttributeDataArrayForAllPoints_5(self,pc,pa,data_type,out_size,out_values)};Decoder.prototype["SkipAttributeTransform"]=Decoder.prototype.SkipAttributeTransform=function(att_type){var self=this.ptr;if(att_type&&typeof att_type==="object")att_type=att_type.ptr;_emscripten_bind_Decoder_SkipAttributeTransform_1(self,att_type)};Decoder.prototype["GetEncodedGeometryType_Deprecated"]=Decoder.prototype.GetEncodedGeometryType_Deprecated=function(in_buffer){var self=this.ptr;if(in_buffer&&typeof in_buffer==="object")in_buffer=in_buffer.ptr;return _emscripten_bind_Decoder_GetEncodedGeometryType_Deprecated_1(self,in_buffer)};Decoder.prototype["DecodeBufferToPointCloud"]=Decoder.prototype.DecodeBufferToPointCloud=function(in_buffer,out_point_cloud){var self=this.ptr;if(in_buffer&&typeof in_buffer==="object")in_buffer=in_buffer.ptr;if(out_point_cloud&&typeof out_point_cloud==="object")out_point_cloud=out_point_cloud.ptr;return wrapPointer(_emscripten_bind_Decoder_DecodeBufferToPointCloud_2(self,in_buffer,out_point_cloud),Status)};Decoder.prototype["DecodeBufferToMesh"]=Decoder.prototype.DecodeBufferToMesh=function(in_buffer,out_mesh){var self=this.ptr;if(in_buffer&&typeof in_buffer==="object")in_buffer=in_buffer.ptr;if(out_mesh&&typeof out_mesh==="object")out_mesh=out_mesh.ptr;return wrapPointer(_emscripten_bind_Decoder_DecodeBufferToMesh_2(self,in_buffer,out_mesh),Status)};Decoder.prototype["__destroy__"]=Decoder.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_Decoder___destroy___0(self)};(function(){function setupEnums(){Module["ATTRIBUTE_INVALID_TRANSFORM"]=_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_INVALID_TRANSFORM();Module["ATTRIBUTE_NO_TRANSFORM"]=_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_NO_TRANSFORM();Module["ATTRIBUTE_QUANTIZATION_TRANSFORM"]=_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_QUANTIZATION_TRANSFORM();Module["ATTRIBUTE_OCTAHEDRON_TRANSFORM"]=_emscripten_enum_draco_AttributeTransformType_ATTRIBUTE_OCTAHEDRON_TRANSFORM();Module["INVALID"]=_emscripten_enum_draco_GeometryAttribute_Type_INVALID();Module["POSITION"]=_emscripten_enum_draco_GeometryAttribute_Type_POSITION();Module["NORMAL"]=_emscripten_enum_draco_GeometryAttribute_Type_NORMAL();Module["COLOR"]=_emscripten_enum_draco_GeometryAttribute_Type_COLOR();Module["TEX_COORD"]=_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD();Module["GENERIC"]=_emscripten_enum_draco_GeometryAttribute_Type_GENERIC();Module["INVALID_GEOMETRY_TYPE"]=_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE();Module["POINT_CLOUD"]=_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD();Module["TRIANGULAR_MESH"]=_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH();Module["DT_INVALID"]=_emscripten_enum_draco_DataType_DT_INVALID();Module["DT_INT8"]=_emscripten_enum_draco_DataType_DT_INT8();Module["DT_UINT8"]=_emscripten_enum_draco_DataType_DT_UINT8();Module["DT_INT16"]=_emscripten_enum_draco_DataType_DT_INT16();Module["DT_UINT16"]=_emscripten_enum_draco_DataType_DT_UINT16();Module["DT_INT32"]=_emscripten_enum_draco_DataType_DT_INT32();Module["DT_UINT32"]=_emscripten_enum_draco_DataType_DT_UINT32();Module["DT_INT64"]=_emscripten_enum_draco_DataType_DT_INT64();Module["DT_UINT64"]=_emscripten_enum_draco_DataType_DT_UINT64();Module["DT_FLOAT32"]=_emscripten_enum_draco_DataType_DT_FLOAT32();Module["DT_FLOAT64"]=_emscripten_enum_draco_DataType_DT_FLOAT64();Module["DT_BOOL"]=_emscripten_enum_draco_DataType_DT_BOOL();Module["DT_TYPES_COUNT"]=_emscripten_enum_draco_DataType_DT_TYPES_COUNT();Module["OK"]=_emscripten_enum_draco_StatusCode_OK();Module["DRACO_ERROR"]=_emscripten_enum_draco_StatusCode_DRACO_ERROR();Module["IO_ERROR"]=_emscripten_enum_draco_StatusCode_IO_ERROR();Module["INVALID_PARAMETER"]=_emscripten_enum_draco_StatusCode_INVALID_PARAMETER();Module["UNSUPPORTED_VERSION"]=_emscripten_enum_draco_StatusCode_UNSUPPORTED_VERSION();Module["UNKNOWN_VERSION"]=_emscripten_enum_draco_StatusCode_UNKNOWN_VERSION()}if(runtimeInitialized)setupEnums();else addOnPreMain(setupEnums)})();if(typeof Module["onModuleParsed"]==="function"){Module["onModuleParsed"]()}Module["Decoder"].prototype.GetEncodedGeometryType=function(array){if(array.__class__&&array.__class__===Module.DecoderBuffer){return Module.Decoder.prototype.GetEncodedGeometryType_Deprecated(array)}if(array.byteLength<8)return Module.INVALID_GEOMETRY_TYPE;switch(array[7]){case 0:return Module.POINT_CLOUD;case 1:return Module.TRIANGULAR_MESH;default:return Module.INVALID_GEOMETRY_TYPE}};
return DracoDecoderModule.ready
}
);
})();
if (typeof exports === 'object' && typeof module === 'object')
module.exports = DracoDecoderModule;
else if (typeof define === 'function' && define['amd'])
define([], function() { return DracoDecoderModule; });
else if (typeof exports === 'object')
exports["DracoDecoderModule"] = DracoDecoderModule;