draco/javascript/npm/draco_animation/draco_animation_encoder_nodejs.js
2020-03-03 10:35:26 -08:00

48 lines
517 KiB
JavaScript

var DracoAnimationEncoderModule = (function() {
var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
return (
function(DracoAnimationEncoderModule) {
DracoAnimationEncoderModule = DracoAnimationEncoderModule || {};
var Module=typeof DracoAnimationEncoderModule!=="undefined"?DracoAnimationEncoderModule:{};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]<=3)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_HAS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_HAS_NODE=typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string";ENVIRONMENT_IS_NODE=ENVIRONMENT_HAS_NODE&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;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){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);process["on"]("uncaughtException",function(ex){if(!(ex instanceof ExitStatus)){throw ex}});process["on"]("unhandledRejection",abort);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(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 dynamicAlloc(size){var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;if(end>_emscripten_get_heap_size()){abort()}HEAP32[DYNAMICTOP_PTR>>2]=end;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0,"getNativeTypeSize invalid bits "+bits+", type "+type);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}function convertJsFunctionToWasm(func,sig){return func}function addFunctionWasm(func,sig){var table=wasmTable;var ret=table.length;try{table.grow(1)}catch(err){if(!err instanceof RangeError){throw err}throw"Unable to grow wasm table. Use a higher value for RESERVED_FUNCTION_POINTERS or set ALLOW_TABLE_GROWTH."}try{table.set(ret,func)}catch(err){if(!err instanceof TypeError){throw err}assert(typeof sig!=="undefined","Missing signature argument to addFunction");var wrapped=convertJsFunctionToWasm(func,sig);table.set(ret,wrapped)}return ret}function removeFunctionWasm(index){}var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}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){return{buffer:new ArrayBuffer(opts["initial"]*65536),grow:function(amount){var ret=__growWasmMemory(amount);return ret}}},Table:function(opts){var ret=new Array(opts["initial"]);ret.grow=function(by){if(ret.length>=288+0){abort("Unable to grow wasm table. Use a higher value for RESERVED_FUNCTION_POINTERS or set ALLOW_TABLE_GROWTH.")}ret.push(null)};ret.set=function(i,func){ret[i]=func};ret.get=function(i){return ret[i]};return ret},Module:function(binary){return{}},Instance:function(module,info){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.")}}var atob=decodeBase64;var exports=(
// EMSCRIPTEN_START_ASM
function a(/** @suppress {uselessCode} */asmLibraryArg,wasmMemory,wasmTable){var scratchBuffer=new ArrayBuffer(8);var b=new Int32Array(scratchBuffer);var c=new Float32Array(scratchBuffer);var d=new Float64Array(scratchBuffer);function e(index){return b[index]}function f(index,value){b[index]=value}function g(){return d[0]}function h(value){d[0]=value}function i(low,high){b[0]=low;b[1]=high}function j(value){c[0]=value}function k(){return c[0]}function l(global,env,buffer){var m=env.memory;var n=wasmTable;var o=new global.Int8Array(buffer);var p=new global.Int16Array(buffer);var q=new global.Int32Array(buffer);var r=new global.Uint8Array(buffer);var s=new global.Uint16Array(buffer);var t=new global.Uint32Array(buffer);var u=new global.Float32Array(buffer);var v=new global.Float64Array(buffer);var w=global.Math.imul;var x=global.Math.fround;var y=global.Math.abs;var z=global.Math.clz32;var A=global.Math.min;var B=global.Math.max;var C=global.Math.floor;var D=global.Math.ceil;var E=global.Math.sqrt;var F=env.abort;var G=global.NaN;var H=global.Infinity;var I=env.__cxa_allocate_exception;var J=env.__cxa_throw;var K=env.fd_write;var L=env.fd_close;var M=env.environ_sizes_get;var N=env.environ_get;var O=env.abort;var P=env.emscripten_resize_heap;var Q=env.emscripten_memcpy_big;var R=env.setTempRet0;var S=env.fd_seek;var T=5258272;var U=15384;var V=0;
// EMSCRIPTEN_START_FUNCS
function ea(){di()}function fa(a){a=a|0;var b=0,c=0,d=0,e=0,f=0;q[a>>2]=10456;b=q[a+32>>2];if(b){q[a+36>>2]=b;ij(b)}b=q[a+20>>2];if(b){q[a+24>>2]=b;ij(b)}d=q[a+8>>2];if(d){b=d;f=a+12|0;c=q[f>>2];e=b;a:{if((b|0)==(c|0)){break a}while(1){c=c+ -4|0;b=q[c>>2];q[c>>2]=0;if(b){n[q[q[b>>2]+4>>2]](b)}if((c|0)!=(d|0)){continue}break}e=q[a+8>>2]}b=e;q[f>>2]=d;ij(b)}return a|0}function ga(a){a=a|0;var g=0,h=0,i=0,j=0,k=0;q[a>>2]=10456;g=q[a+32>>2];if(g){q[a+36>>2]=g;ij(g)}g=q[a+20>>2];if(g){q[a+24>>2]=g;ij(g)}i=q[a+8>>2];if(i){g=i;k=a+12|0;h=q[k>>2];j=g;a:{if((g|0)==(h|0)){break a}while(1){h=h+ -4|0;g=q[h>>2];q[h>>2]=0;if(g){n[q[q[g>>2]+4>>2]](g)}if((h|0)!=(i|0)){continue}break}j=q[a+8>>2]}g=j;q[k>>2]=i;ij(g)}ij(a)}function ha(a){a=a|0;return 0}function ia(a){a=a|0;return 1}function ja(a,l){a=a|0;l=l|0;return 1}function ka(a){q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;return a}function la(a,l,m){var n=0,p=0,r=0,s=0,t=0,u=0;a:{r=m-l|0;p=q[a+8>>2];n=q[a>>2];b:{if(r>>>0<=p-n>>2>>>0){p=q[a+4>>2];t=p-n>>2;s=t+l|0;u=r>>>0>t>>>0?s:m;if((u|0)!=(l|0)){while(1){q[n>>2]=o[l|0];n=n+4|0;l=l+1|0;if((u|0)!=(l|0)){continue}break}}if(r>>>0>t>>>0){if((m|0)==(u|0)){break b}while(1){q[p>>2]=o[s|0];p=p+4|0;q[a+4>>2]=p;s=s+1|0;if((s|0)!=(m|0)){continue}break}break b}q[a+4>>2]=n;return}if(n){q[a+4>>2]=n;ij(n);q[a+8>>2]=0;q[a>>2]=0;q[a+4>>2]=0;p=0}if(r>>>0>=1073741824){break a}n=p>>1;n=p>>2>>>0<536870911?n>>>0<r>>>0?r:n:1073741823;if(n>>>0>=1073741824){break a}p=n<<2;n=ui(p);q[a>>2]=n;r=a+4|0;q[r>>2]=n;q[a+8>>2]=n+p;if((l|0)==(m|0)){break b}while(1){q[n>>2]=o[l|0];n=n+4|0;q[r>>2]=n;l=l+1|0;if((m|0)!=(l|0)){continue}break}}return}Gi();F()}function ma(a){a=a|0;return a|0}function na(a,l,m){var o=0,v=0,w=0;o=T-16|0;T=o;a:{b:{if(!a|!m){break b}q[o+8>>2]=0;q[o>>2]=0;q[o+4>>2]=0;if(l){if(l>>>0>=1073741824){break a}w=l<<2;v=ui(w);q[o>>2]=v;l=v+(l<<2)|0;q[o+8>>2]=l;oj(v,m,w);q[o+4>>2]=l}v=Ra(a,o);a=q[o>>2];if(!a){break b}q[o+4>>2]=a;ij(a)}T=o+16|0;return v}Gi();F()}function oa(a,l,m,x){var y=0,z=0,A=0;y=T-16|0;T=y;z=-1;a:{b:{if(!a|!x){break b}q[y+8>>2]=0;q[y>>2]=0;q[y+4>>2]=0;l=w(l,m);if(l){if(l>>>0>=1073741824){break a}A=l<<2;z=ui(A);q[y>>2]=z;l=z+(l<<2)|0;q[y+8>>2]=l;oj(z,x,A);q[y+4>>2]=l}z=pa(a,m,y);a=q[y>>2];if(!a){break b}q[y+4>>2]=a;ij(a)}T=y+16|0;return z}Gi();F()}function pa(a,l,m){var x=0,B=0,C=0,D=0,E=0,F=0;x=T-32|0;T=x;C=-1;a:{if(!l){break a}b:{if(q[a+12>>2]!=q[a+8>>2]){break b}B=ui(96);D=ub(B);q[x+24>>2]=B;wb(D,l<<24>>24,0);q[x+16>>2]=q[x+24>>2];q[x+24>>2]=0;Tg(a,x+16|0);B=q[x+16>>2];q[x+16>>2]=0;if(B){qa(B)}q[a+80>>2]=(q[m+4>>2]-q[m>>2]>>2>>>0)/(l>>>0);B=q[x+24>>2];q[x+24>>2]=0;if(!B){break b}qa(B)}B=a+80|0;if((w(q[B>>2],l)|0)!=q[m+4>>2]-q[m>>2]>>2){break a}C=ui(96);D=ub(C);q[x+24>>2]=C;C=0;wb(D,l<<24>>24,q[B>>2]);if(q[B>>2]){E=a+80|0;while(1){B=C;D=q[x+24>>2];if(!r[D+84|0]){B=q[q[D+68>>2]+(C<<2)>>2]}F=B;B=q[D+40>>2];oj(q[q[D>>2]>>2]+w(F,B)|0,q[m>>2]+(w(l,C)<<2)|0,B);C=C+1|0;if(C>>>0<t[E>>2]){continue}break}}q[x+8>>2]=q[x+24>>2];q[x+24>>2]=0;C=Tg(a,x+8|0);a=q[x+8>>2];q[x+8>>2]=0;if(a){qa(a)}a=q[x+24>>2];q[x+24>>2]=0;if(!a){break a}qa(a)}T=x+32|0;return C}function qa(a){var l=0,m=0;if(a){l=a+88|0;m=q[l>>2];q[l>>2]=0;if(m){l=q[m+8>>2];if(l){q[m+12>>2]=l;ij(l)}ij(m)}m=q[a+68>>2];if(m){q[a+72>>2]=m;ij(m)}l=a- -64|0;m=q[l>>2];q[l>>2]=0;if(m){l=q[m>>2];if(l){q[m+4>>2]=l;ij(l)}ij(m)}ij(a)}}function ra(a){var G=0,H=0,I=0,J=0,K=0;I=T-16|0;T=I;Ig(a);G=a+16|0;q[G>>2]=0;q[G+4>>2]=0;q[a+12>>2]=G;J=Ig(a+24|0);K=I+8|0;q[K>>2]=0;q[I>>2]=0;q[I+4>>2]=0;a=ui(32);q[I>>2]=a;q[I+4>>2]=20;q[I+8>>2]=-2147483616;o[a+20|0]=0;G=r[1178]|r[1179]<<8|(r[1180]<<16|r[1181]<<24);o[a+16|0]=G;o[a+17|0]=G>>>8;o[a+18|0]=G>>>16;o[a+19|0]=G>>>24;G=r[1174]|r[1175]<<8|(r[1176]<<16|r[1177]<<24);H=r[1170]|r[1171]<<8|(r[1172]<<16|r[1173]<<24);o[a+8|0]=H;o[a+9|0]=H>>>8;o[a+10|0]=H>>>16;o[a+11|0]=H>>>24;o[a+12|0]=G;o[a+13|0]=G>>>8;o[a+14|0]=G>>>16;o[a+15|0]=G>>>24;G=r[1166]|r[1167]<<8|(r[1168]<<16|r[1169]<<24);H=r[1162]|r[1163]<<8|(r[1164]<<16|r[1165]<<24);o[a|0]=H;o[a+1|0]=H>>>8;o[a+2|0]=H>>>16;o[a+3|0]=H>>>24;o[a+4|0]=G;o[a+5|0]=G>>>8;o[a+6|0]=G>>>16;o[a+7|0]=G>>>24;Jg(J,I,1);if(o[I+11|0]<=-1){ij(q[I>>2])}q[K>>2]=0;q[I>>2]=0;q[I+4>>2]=0;a=ui(32);q[I>>2]=a;q[I+4>>2]=22;q[I+8>>2]=-2147483616;o[a+22|0]=0;G=r[1201]|r[1202]<<8|(r[1203]<<16|r[1204]<<24);H=r[1197]|r[1198]<<8|(r[1199]<<16|r[1200]<<24);o[a+14|0]=H;o[a+15|0]=H>>>8;o[a+16|0]=H>>>16;o[a+17|0]=H>>>24;o[a+18|0]=G;o[a+19|0]=G>>>8;o[a+20|0]=G>>>16;o[a+21|0]=G>>>24;G=r[1195]|r[1196]<<8|(r[1197]<<16|r[1198]<<24);H=r[1191]|r[1192]<<8|(r[1193]<<16|r[1194]<<24);o[a+8|0]=H;o[a+9|0]=H>>>8;o[a+10|0]=H>>>16;o[a+11|0]=H>>>24;o[a+12|0]=G;o[a+13|0]=G>>>8;o[a+14|0]=G>>>16;o[a+15|0]=G>>>24;G=r[1187]|r[1188]<<8|(r[1189]<<16|r[1190]<<24);H=r[1183]|r[1184]<<8|(r[1185]<<16|r[1186]<<24);o[a|0]=H;o[a+1|0]=H>>>8;o[a+2|0]=H>>>16;o[a+3|0]=H>>>24;o[a+4|0]=G;o[a+5|0]=G>>>8;o[a+6|0]=G>>>16;o[a+7|0]=G>>>24;Jg(J,I,1);if(o[I+11|0]<=-1){ij(q[I>>2])}T=I+16|0}function sa(a,L,M){var N=0,O=0,P=0,Q=0,R=0,S=0,U=0,V=0,W=0,X=0,Y=0,Z=0;O=T+ -64|0;T=O;a:{if(!L){break a}R=Eg(O+32|0);S=q[a+56>>2];b:{if((S|0)<1){break b}q[O+28>>2]=0;q[O+16>>2]=0;q[O+8>>2]=0;q[O+12>>2]=0;N=ui(32);q[O+8>>2]=N;q[O+12>>2]=17;q[O+16>>2]=-2147483616;o[N+17|0]=0;o[N+16|0]=r[1160];P=r[1156]|r[1157]<<8|(r[1158]<<16|r[1159]<<24);Q=r[1152]|r[1153]<<8|(r[1154]<<16|r[1155]<<24);o[N+8|0]=Q;o[N+9|0]=Q>>>8;o[N+10|0]=Q>>>16;o[N+11|0]=Q>>>24;o[N+12|0]=P;o[N+13|0]=P>>>8;o[N+14|0]=P>>>16;o[N+15|0]=P>>>24;P=r[1148]|r[1149]<<8|(r[1150]<<16|r[1151]<<24);Q=r[1144]|r[1145]<<8|(r[1146]<<16|r[1147]<<24);o[N|0]=Q;o[N+1|0]=Q>>>8;o[N+2|0]=Q>>>16;o[N+3|0]=Q>>>24;o[N+4|0]=P;o[N+5|0]=P>>>8;o[N+6|0]=P>>>16;o[N+7|0]=P>>>24;Jg(ta(a- -64|0,O+28|0),O+8|0,S);if(o[O+19|0]>-1){break b}ij(q[O+8>>2])}c:{if(q[a+60>>2]<1){break c}q[O+28>>2]=1;U=L+12|0;V=L+8|0;if((q[U>>2]-q[V>>2]|0)<5){break c}W=a- -64|0;Q=r[1144]|r[1145]<<8|(r[1146]<<16|r[1147]<<24);S=r[1148]|r[1149]<<8|(r[1150]<<16|r[1151]<<24);X=r[1152]|r[1153]<<8|(r[1154]<<16|r[1155]<<24);Y=r[1156]|r[1157]<<8|(r[1158]<<16|r[1159]<<24);Z=r[1160];while(1){q[O+16>>2]=0;q[O+8>>2]=0;q[O+12>>2]=0;N=ui(32);q[O+8>>2]=N;q[O+12>>2]=17;q[O+16>>2]=-2147483616;o[N+17|0]=0;o[N+16|0]=Z;P=X;o[N+8|0]=P;o[N+9|0]=P>>>8;o[N+10|0]=P>>>16;o[N+11|0]=P>>>24;P=Y;o[N+12|0]=P;o[N+13|0]=P>>>8;o[N+14|0]=P>>>16;o[N+15|0]=P>>>24;P=Q;o[N|0]=P;o[N+1|0]=P>>>8;o[N+2|0]=P>>>16;o[N+3|0]=P>>>24;P=S;o[N+4|0]=P;o[N+5|0]=P>>>8;o[N+6|0]=P>>>16;o[N+7|0]=P>>>24;N=q[a+60>>2];Jg(ta(W,O+28|0),O+8|0,N);if(o[O+19|0]<=-1){ij(q[O+8>>2])}N=q[O+28>>2]+1|0;q[O+28>>2]=N;if((N|0)<q[U>>2]-q[V>>2]>>2){continue}break}}Za(a,L);jg(O+8|0,a,a- -64|0,R);a=q[O+8>>2];if(o[O+23|0]<=-1){ij(q[O+12>>2])}N=0;if(!a){la(M,q[R>>2],q[R+4>>2]);N=q[R+4>>2]-q[R>>2]|0}a=q[R+12>>2];q[R+12>>2]=0;if(a){ij(a)}a=q[R>>2];if(!a){break a}q[R+4>>2]=a;ij(a)}T=O- -64|0;return N}function ta(a,L){var M=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0;$=T-32|0;T=$;aa=a+16|0;_=q[aa>>2];a:{b:{if(!_){break b}ca=q[L>>2];M=aa;while(1){ba=q[_+16>>2]<(ca|0);M=ba?M:_;_=q[(ba<<2)+_>>2];if(_){continue}break}if((M|0)==(aa|0)){break b}if((ca|0)>=q[M+16>>2]){break a}}ca=Ig($+16|0);L=q[L>>2];ba=$+8|0;q[ba>>2]=0;q[ba+4>>2]=0;q[$>>2]=L;q[$+4>>2]=ba;M=q[ca>>2];da=ca+4|0;if((M|0)!=(da|0)){ea=$|4;while(1){L=M;_=M+16|0;wa(ea,ba,_,_);_=q[M+4>>2];c:{if(!_){M=q[L+8>>2];if((L|0)==q[M>>2]){break c}L=L+8|0;while(1){_=q[L>>2];L=_+8|0;M=q[_+8>>2];if((_|0)!=q[M>>2]){continue}break}break c}while(1){M=_;_=q[M>>2];if(_){continue}break}}if((M|0)!=(da|0)){continue}break}}L=a+16|0;_=q[L>>2];d:{if(_){aa=q[$>>2];while(1){M=q[_+16>>2];e:{if((aa|0)<(M|0)){M=q[_>>2];if(M){break e}L=_;break d}if((M|0)>=(aa|0)){break d}L=_+4|0;M=q[_+4>>2];if(!M){break d}_=L}L=_;_=M;continue}}_=aa;L=_}M=q[L>>2];if(!M){M=ui(32);q[M+16>>2]=q[$>>2];q[M+20>>2]=q[$+4>>2];aa=M+24|0;da=q[$+8>>2];q[aa>>2]=da;ea=q[$+12>>2];q[M+28>>2]=ea;f:{if(!ea){q[M+20>>2]=aa;break f}q[da+8>>2]=aa;q[$+8>>2]=0;q[$+12>>2]=0;q[$+4>>2]=ba}q[M+8>>2]=_;q[M>>2]=0;q[M+4>>2]=0;q[L>>2]=M;aa=q[q[a+12>>2]>>2];_=M;g:{if(!aa){break g}q[a+12>>2]=aa;_=q[L>>2]}xa(q[a+16>>2],_);a=a+20|0;q[a>>2]=q[a>>2]+1}va($|4,q[$+8>>2]);va(ca,q[ca+4>>2])}T=$+32|0;return M+20|0}function ua(a,L){if(L){ua(a,q[L>>2]);ua(a,q[L+4>>2]);va(L+20|0,q[L+24>>2]);ij(L)}}function va(a,L){if(L){va(a,q[L>>2]);va(a,q[L+4>>2]);if(o[L+39|0]<=-1){ij(q[L+28>>2])}if(o[L+27|0]<=-1){ij(q[L+16>>2])}ij(L)}}function wa(a,L,fa,ga){var ha=0;ha=T-16|0;T=ha;fa=ya(a,L,ha+12|0,ha+8|0,fa);if(!q[fa>>2]){L=ui(40);yi(L+16|0,ga);yi(L+28|0,ga+12|0);q[L+8>>2]=q[ha+12>>2];q[L>>2]=0;q[L+4>>2]=0;q[fa>>2]=L;ga=L;L=q[q[a>>2]>>2];if(L){q[a>>2]=L;ga=q[fa>>2]}xa(q[a+4>>2],ga);a=a+8|0;q[a>>2]=q[a>>2]+1}T=ha+16|0}function xa(a,L){var T=0,fa=0,ga=0;T=(a|0)==(L|0);o[L+12|0]=T;a:{if(T){break a}while(1){fa=q[L+8>>2];if(r[fa+12|0]){break a}b:{T=q[fa+8>>2];ga=q[T>>2];if((ga|0)==(fa|0)){ga=q[T+4>>2];if(!(!ga|r[ga+12|0])){break b}c:{if(q[fa>>2]==(L|0)){L=fa;break c}L=q[fa+4>>2];ga=q[L>>2];q[fa+4>>2]=ga;a=L;if(ga){q[ga+8>>2]=fa;T=q[fa+8>>2]}q[a+8>>2]=T;a=q[fa+8>>2];q[((fa|0)==q[a>>2]?a:a+4|0)>>2]=L;q[L>>2]=fa;q[fa+8>>2]=L;T=q[L+8>>2]}o[L+12|0]=1;o[T+12|0]=0;a=q[T>>2];L=q[a+4>>2];q[T>>2]=L;if(L){q[L+8>>2]=T}q[a+8>>2]=q[T+8>>2];L=q[T+8>>2];q[(q[L>>2]==(T|0)?L:L+4|0)>>2]=a;q[a+4>>2]=T;q[T+8>>2]=a;return}if(!(r[ga+12|0]|!ga)){break b}d:{if(q[fa>>2]!=(L|0)){L=fa;break d}ga=q[L+4>>2];q[fa>>2]=ga;a=L;if(ga){q[ga+8>>2]=fa;T=q[fa+8>>2]}q[a+8>>2]=T;a=q[fa+8>>2];q[((fa|0)==q[a>>2]?a:a+4|0)>>2]=L;q[L+4>>2]=fa;q[fa+8>>2]=L;T=q[L+8>>2]}o[L+12|0]=1;o[T+12|0]=0;a=q[T+4>>2];L=q[a>>2];q[T+4>>2]=L;if(L){q[L+8>>2]=T}q[a+8>>2]=q[T+8>>2];L=q[T+8>>2];q[(q[L>>2]==(T|0)?L:L+4|0)>>2]=a;q[a>>2]=T;q[T+8>>2]=a;break a}L=ga+12|0;o[fa+12|0]=1;o[T+12|0]=(a|0)==(T|0);o[L|0]=1;L=T;if((L|0)!=(a|0)){continue}break}}}function ya(a,L,ia,ja,ka){var la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0;a:{b:{c:{d:{e:{ta=a+4|0;f:{if((ta|0)==(L|0)){break f}la=L+16|0;na=r[L+27|0];ua=na<<24>>24;ma=(ua|0)<0;oa=r[ka+11|0];pa=oa<<24>>24;qa=(pa|0)<0;ra=ma?q[L+20>>2]:na;oa=qa?q[ka+4>>2]:oa;sa=ra>>>0<oa>>>0;g:{na=sa?ra:oa;if(na){qa=qa?q[ka>>2]:ka;ma=ma?q[la>>2]:la;va=yh(qa,ma,na);if(va){break g}}if(oa>>>0<ra>>>0){break f}if(!na){break d}qa=(pa|0)<0?q[ka>>2]:ka;ma=(ua|0)<0?q[la>>2]:la;break e}if((va|0)>-1){break e}}na=q[L>>2];h:{i:{if(q[a>>2]==(L|0)){la=L;break i}j:{if(!na){ja=L;while(1){la=q[ja+8>>2];oa=q[la>>2]==(ja|0);ja=la;if(oa){continue}break}break j}ja=na;while(1){la=ja;ja=q[la+4>>2];if(ja){continue}break}}ma=r[ka+11|0];ja=ma<<24>>24<0;pa=r[la+27|0];oa=pa<<24>>24<0;k:{ma=ja?q[ka+4>>2]:ma;pa=oa?q[la+20>>2]:pa;qa=ma>>>0<pa>>>0?ma:pa;if(qa){ra=la+16|0;ja=yh(oa?q[ra>>2]:ra,ja?q[ka>>2]:ka,qa);if(ja){break k}}if(pa>>>0<ma>>>0){break i}break h}if((ja|0)>-1){break h}}if(!na){q[ia>>2]=L;return L}q[ia>>2]=la;return la+4|0}return za(a,ia,ka)}la=yh(ma,qa,na);if(la){break c}}if(sa){break b}break a}if((la|0)>-1){break a}}qa=L+4|0;na=q[qa>>2];l:{if(na){la=na;while(1){ja=la;la=q[la>>2];if(la){continue}break}break l}ja=q[L+8>>2];if(q[ja>>2]==(L|0)){break l}la=L+8|0;while(1){ma=q[la>>2];la=ma+8|0;ja=q[ma+8>>2];if((ma|0)!=q[ja>>2]){continue}break}}m:{n:{if((ja|0)==(ta|0)){break n}ma=r[ja+27|0];la=ma<<24>>24<0;o:{ma=la?q[ja+20>>2]:ma;ra=ma>>>0<oa>>>0?ma:oa;if(ra){sa=(pa|0)<0?q[ka>>2]:ka;pa=ja+16|0;la=yh(sa,la?q[pa>>2]:pa,ra);if(la){break o}}if(oa>>>0<ma>>>0){break n}break m}if((la|0)>-1){break m}}if(!na){q[ia>>2]=L;return qa}q[ia>>2]=ja;return ja}return za(a,ia,ka)}q[ia>>2]=L;q[ja>>2]=L;return ja}function za(a,L,ia){var ja=0,ka=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0;a:{ja=a+4|0;a=q[ja>>2];if(a){wa=r[ia+11|0];xa=wa<<24>>24<0;wa=xa?q[ia+4>>2]:wa;Aa=xa?q[ia>>2]:ia;while(1){ia=a+16|0;ka=r[a+27|0];xa=ka<<24>>24<0;ya=xa?q[a+20>>2]:ka;Ba=ya>>>0<wa>>>0;b:{c:{d:{e:{f:{g:{h:{ka=Ba?ya:wa;if(ka){za=xa?q[ia>>2]:ia;Ca=yh(Aa,za,ka);if(Ca){break h}}if(wa>>>0<ya>>>0){break g}if(!ka){break e}za=xa?q[ia>>2]:ia;break f}if((Ca|0)>-1){break f}}ia=q[a>>2];if(ia){break b}q[L>>2]=a;return a}ia=yh(za,Aa,ka);if(ia){break d}}if(Ba){break c}break a}if((ia|0)>-1){break a}}ja=a+4|0;ia=q[a+4>>2];if(!ia){break a}a=ja}ja=a;a=ia;continue}}q[L>>2]=ja;return ja}q[L>>2]=a;return ja}function Aa(){return ui(1)|0}function Ba(a,q,L,ia){a=a|0;q=q|0;L=L|0;ia=ia|0;return na(q,L,ia)|0}function Ca(a,q,L,ia,Da){a=a|0;q=q|0;L=L|0;ia=ia|0;Da=Da|0;return oa(q,L,ia,Da)|0}function Da(a){a=a|0;if(a){ij(a)}}function Ea(){return ka(ui(12))|0}function Fa(a,L){a=a|0;L=L|0;return q[q[a>>2]+(L<<2)>>2]}function Ga(a){a=a|0;return q[a+4>>2]-q[a>>2]>>2}function Ha(a){a=a|0;var L=0;if(a){L=q[a>>2];if(L){q[a+4>>2]=L;ij(L)}ij(a)}}function Ia(){var a=0;a=ui(100);ig(a);q[a>>2]=1032;q[a+56>>2]=-1;q[a+60>>2]=-1;ra(a- -64|0);return a|0}function Ja(ia,Da){ia=ia|0;Da=Da|0;q[ia+56>>2]=Da}function Ka(ia,Da){ia=ia|0;Da=Da|0;q[ia+60>>2]=Da}function La(q,ia,Da){q=q|0;ia=ia|0;Da=Da|0;return sa(q,ia,Da)|0}function Ma(q){q=q|0;if(q){ij(Na(q))}}function Na(ia){var Da=0,Ea=0,Fa=0,Ga=0,Ha=0;va(ia+88|0,q[ia+92>>2]);ua(ia+76|0,q[ia+80>>2]);va(ia- -64|0,q[ia+68>>2]);q[ia>>2]=10456;Da=q[ia+32>>2];if(Da){q[ia+36>>2]=Da;ij(Da)}Da=q[ia+20>>2];if(Da){q[ia+24>>2]=Da;ij(Da)}Fa=q[ia+8>>2];if(Fa){Da=Fa;Ha=ia+12|0;Ea=q[Ha>>2];Ga=Da;a:{if((Da|0)==(Ea|0)){break a}while(1){Ea=Ea+ -4|0;Da=q[Ea>>2];q[Ea>>2]=0;if(Da){n[q[q[Da>>2]+4>>2]](Da)}if((Ea|0)!=(Fa|0)){continue}break}Ga=q[ia+8>>2]}Da=Ga;q[Ha>>2]=Fa;ij(Da)}return ia}function Oa(){var ia=0;ia=ui(84);q[ia>>2]=12888;pj(ia+4|0,0,80);q[ia>>2]=1216;return ia|0}function Pa(Ia){Ia=Ia|0;return q[Ia+80>>2]}function Qa(Ia){Ia=Ia|0;if(Ia){n[q[q[Ia>>2]+4>>2]](Ia)}}function Ra(Ia,Ja){var Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0;Ka=T-16|0;T=Ka;Na=q[Ja+4>>2]-q[Ja>>2]|0;Oa=Na>>2;a:{b:{if((q[Ia+12>>2]-q[Ia+8>>2]|0)>=1){if(q[Sg(Ia)+80>>2]){break a}if(q[Ia+80>>2]==(Oa|0)){break b}break a}q[Ia+80>>2]=Oa}La=ui(96);Ma=ub(La);q[Ka+8>>2]=La;La=0;wb(Ma,1,Oa);c:{if(!Na){Ma=q[Ka+8>>2];break c}Ma=q[Ka+8>>2];Qa=Ma+68|0;Ra=Ma+40|0;while(1){Na=La;Pa=q[q[Ma>>2]>>2];if(!r[Ma+84|0]){Na=q[q[Qa>>2]+(La<<2)>>2]}Sa=Pa;Pa=q[Ra>>2];oj(Sa+w(Na,Pa)|0,q[Ja>>2]+(La<<2)|0,Pa);La=La+1|0;if(La>>>0<Oa>>>0){continue}break}}q[Ka>>2]=Ma;q[Ka+8>>2]=0;n[q[q[Ia>>2]+8>>2]](Ia,0,Ka);Ia=q[Ka>>2];q[Ka>>2]=0;if(Ia){qa(Ia)}Ia=q[Ka+8>>2];q[Ka+8>>2]=0;if(Ia){qa(Ia)}La=1}T=Ka+16|0;return La}function Sa(Ia){Ia=Ia|0;var Ja=0,Ua=0,Va=0,Wa=0,Xa=0;q[Ia>>2]=12888;Ja=q[Ia+68>>2];if(Ja){q[Ia+72>>2]=Ja;ij(Ja)}Ja=q[Ia+56>>2];if(Ja){q[Ia+60>>2]=Ja;ij(Ja)}Ja=q[Ia+44>>2];if(Ja){q[Ia+48>>2]=Ja;ij(Ja)}Ja=q[Ia+32>>2];if(Ja){q[Ia+36>>2]=Ja;ij(Ja)}Ja=q[Ia+20>>2];if(Ja){q[Ia+24>>2]=Ja;ij(Ja)}Va=q[Ia+8>>2];if(Va){Ja=Va;Xa=Ia+12|0;Ua=q[Xa>>2];Wa=Ja;a:{if((Ja|0)==(Ua|0)){break a}while(1){Ua=Ua+ -4|0;Ja=q[Ua>>2];q[Ua>>2]=0;if(Ja){qa(Ja)}if((Ua|0)!=(Va|0)){continue}break}Wa=q[Ia+8>>2]}Ja=Wa;q[Xa>>2]=Va;ij(Ja)}Ja=q[Ia+4>>2];q[Ia+4>>2]=0;if(Ja){Ta(Ja)}return Ia|0}function Ta(Ia){var Ta=0,Ya=0,Za=0,_a=0,$a=0;if(Ia){Za=q[Ia+24>>2];if(Za){Ta=Za;$a=Ia+28|0;Ya=q[$a>>2];_a=Ta;a:{if((Ya|0)==(Ta|0)){break a}while(1){Ya=Ya+ -4|0;Ta=q[Ya>>2];q[Ya>>2]=0;if(Ta){Va(Ta+12|0,q[Ta+16>>2]);Wa(Ta,q[Ta+4>>2]);ij(Ta)}if((Ya|0)!=(Za|0)){continue}break}_a=q[Ia+24>>2]}Ta=_a;q[$a>>2]=Za;ij(Ta)}Va(Ia+12|0,q[Ia+16>>2]);Wa(Ia,q[Ia+4>>2]);ij(Ia)}}function Ua(q){q=q|0;Sa(q);ij(q)}function Va(Ia,ab){var bb=0;if(ab){Va(Ia,q[ab>>2]);Va(Ia,q[ab+4>>2]);bb=ab+28|0;Ia=q[bb>>2];q[bb>>2]=0;if(Ia){Va(Ia+12|0,q[Ia+16>>2]);Wa(Ia,q[Ia+4>>2]);ij(Ia)}if(o[ab+27|0]<=-1){ij(q[ab+16>>2])}ij(ab)}}function Wa(Ia,ab){if(ab){Wa(Ia,q[ab>>2]);Wa(Ia,q[ab+4>>2]);Ia=q[ab+28>>2];if(Ia){q[ab+32>>2]=Ia;ij(Ia)}if(o[ab+27|0]<=-1){ij(q[ab+16>>2])}ij(ab)}}function Xa(Ia,ab){Ia=Ia|0;ab=ab|0;var cb=0;ab=q[ab+88>>2];if(!(!ab|q[ab>>2]!=2)){cb=Ia;Ia=q[ab+8>>2];q[cb+4>>2]=r[Ia|0]|r[Ia+1|0]<<8|(r[Ia+2|0]<<16|r[Ia+3|0]<<24);cb=1}return cb|0}function Ya(Ia,ab){Ia=Ia|0;ab=ab|0;var db=0,eb=0;q[ab>>2]=2;db=q[ab+8>>2];eb=q[ab+12>>2]-db|0;if(eb>>>0<=4294967291){ab=ab+8|0;Cg(ab,eb+4|0);db=q[ab>>2]}ab=db+eb|0;Ia=r[Ia+4|0]|r[Ia+5|0]<<8|(r[Ia+6|0]<<16|r[Ia+7|0]<<24);o[ab|0]=Ia;o[ab+1|0]=Ia>>>8;o[ab+2|0]=Ia>>>16;o[ab+3|0]=Ia>>>24}function Za(Ia,ab){q[Ia+4>>2]=ab}function _a(Ia,ab){var fb=0,gb=0;fb=T-16|0;T=fb;Ia=q[Ia+4>>2];gb=0;a:{if((Ia|0)==-1){break a}o[fb+15|0]=Ia;Ia=q[ab+20>>2];if((Ia|0)<0?1:(Ia|0)<=0?t[ab+16>>2]>0?0:1:0){$a(ab,q[ab+4>>2],fb+15|0,fb+16|0)}gb=1}Ia=gb;T=fb+16|0;return Ia}function $a(Ia,ab,hb,ib){var jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0;kb=ib-hb|0;if((kb|0)<1){return}a:{nb=q[Ia+8>>2];mb=q[Ia+4>>2];if((kb|0)<=(nb-mb|0)){ob=mb-ab|0;if((kb|0)<=(ob|0)){lb=mb;nb=ib;break a}lb=mb;nb=hb+ob|0;if((nb|0)!=(ib|0)){pb=Ia+4|0;jb=nb;while(1){o[lb|0]=r[jb|0];lb=q[pb>>2]+1|0;q[pb>>2]=lb;jb=jb+1|0;if((jb|0)!=(ib|0)){continue}break}}if((ob|0)>=1){break a}return}lb=kb;kb=q[Ia>>2];lb=lb+(mb-kb|0)|0;if((lb|0)>-1){mb=nb-kb|0;nb=mb<<1;nb=mb>>>0<1073741823?nb>>>0<lb>>>0?lb:nb:2147483647;mb=0;b:{if(!nb){break b}mb=ui(nb)}lb=mb+(ab-kb|0)|0;c:{if((hb|0)==(ib|0)){jb=lb;break c}jb=lb;while(1){o[jb|0]=r[hb|0];jb=jb+1|0;hb=hb+1|0;if((ib|0)!=(hb|0)){continue}break}kb=q[Ia>>2]}hb=ab-kb|0;ib=lb-hb|0;if((hb|0)>=1){oj(ib,kb,hb)}lb=mb+nb|0;mb=Ia+4|0;hb=q[mb>>2]-ab|0;if((hb|0)>=1){jb=oj(jb,ab,hb)+hb|0;kb=q[Ia>>2]}q[Ia>>2]=ib;q[Ia+8>>2]=lb;q[mb>>2]=jb;if(kb){ij(kb)}return}Gi();F()}ib=lb-(ab+kb|0)|0;jb=lb-kb|0;if(jb>>>0<mb>>>0){Ia=Ia+4|0;kb=lb;while(1){o[kb|0]=r[jb|0];kb=q[Ia>>2]+1|0;q[Ia>>2]=kb;jb=jb+1|0;if((mb|0)!=(jb|0)){continue}break}}if(ib){qj(lb-ib|0,ab,ib)}if((hb|0)==(nb|0)){return}jb=ab;while(1){o[jb|0]=r[hb|0];jb=jb+1|0;hb=hb+1|0;if((nb|0)!=(hb|0)){continue}break}}function ab(Ia,ab,hb,ib,qb){var rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0;rb=T-48|0;T=rb;sb=ib+4|0;pb(rb+40|0,q[sb>>2]-q[ib>>2]>>2,2,qb,hb);qb=q[rb+40>>2];tb=q[qb+48>>2];ub=q[q[qb>>2]>>2];q[rb+16>>2]=-1;q[rb+20>>2]=-1;q[rb+8>>2]=-1;q[rb+12>>2]=-1;ab=q[ab+4>>2];a:{if(ab+ -2>>>0<=28){q[rb+8>>2]=ab;ab=-1<<ab;q[rb+12>>2]=ab^-1;ab=-2-ab|0;q[rb+16>>2]=ab;q[rb+20>>2]=(ab|0)/2;wb=Ia;Ia=q[ib>>2];if((Ia|0)!=q[sb>>2]){tb=tb+ub|0;qb=0;ub=hb+68|0;ab=0;while(1){Ia=q[(ab<<2)+Ia>>2];xb=rb+28|0;yb=q[q[hb>>2]>>2];zb=q[hb+48>>2];sb=q[hb+44>>2];vb=q[hb+40>>2];Ab=vb;if(!r[hb+84|0]){Ia=q[q[ub>>2]+(Ia<<2)>>2]}Ia=Nj(Ab,sb,Ia,0)+zb|0;oj(xb,Ia+yb|0,vb);bb(rb+8|0,rb+28|0,rb+4|0,rb);Ia=qb<<2;q[Ia+tb>>2]=q[rb+4>>2];q[tb+(Ia|4)>>2]=q[rb>>2];qb=qb+2|0;ab=ab+1|0;Ia=q[ib>>2];if(ab>>>0<q[ib+4>>2]-Ia>>2>>>0){continue}break}qb=q[rb+40>>2]}q[wb>>2]=qb;q[rb+40>>2]=0;break a}q[Ia>>2]=0;q[rb+40>>2]=0;if(!qb){break a}qa(qb)}T=rb+48|0}function bb(Ia,ab,hb,ib){var qb=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0;Eb=+u[ab>>2];Fb=+u[ab+4>>2];Ib=+u[ab+8>>2];Db=y(Eb)+y(Fb)+y(Ib);a:{if(!(Db>1e-6)){Eb=1;Fb=0;Bb=0;break a}Db=1/Db;Fb=Db*Fb;Eb=Db*Eb;Bb=Db*Ib<0}Db=Fb;Cb=q[Ia+12>>2];Fb=+(Cb|0);Db=C(Db*Fb+.5);b:{if(y(Db)<2147483648){ab=~~Db;break b}ab=-2147483648}Jb=(ab|0)<0?ab:0-ab|0;Gb=Cb;Eb=C(Eb*Fb+.5);c:{if(y(Eb)<2147483648){qb=~~Eb;break c}qb=-2147483648}Hb=qb>>31;Gb=Jb+(Gb-(qb+Hb^Hb)|0)|0;Hb=(Gb|0)<0?0:Gb;Bb=Bb?0-Hb|0:Hb;ab=ab+(Gb>>31&((ab|0)>0?Gb:0-Gb|0))|0;d:{if((qb|0)>=0){qb=ab+Cb|0;ab=Cb+Bb|0;break d}e:{if((ab|0)<=-1){qb=Bb>>31;qb=qb+Bb^qb;break e}qb=Bb>>31;qb=q[Ia+8>>2]-(qb+Bb^qb)|0}if((Bb|0)<=-1){Bb=ab;ab=ab>>31;ab=Bb+ab^ab;break d}Bb=ab;ab=ab>>31;ab=q[Ia+8>>2]-(Bb+ab^ab)|0}Ia=q[Ia+8>>2];f:{if(!(ab|qb)){ab=Ia;qb=ab;break f}if(!((Ia|0)!=(ab|0)|qb)){qb=ab;break f}if(!((Ia|0)!=(qb|0)|ab)){ab=qb;break f}if(!((Cb|0)>=(ab|0)|qb)){ab=(Cb<<1)-ab|0;qb=0;break f}if(!((Ia|0)!=(qb|0)|(Cb|0)<=(ab|0))){ab=(Cb<<1)-ab|0;break f}if(!((Ia|0)!=(ab|0)|(Cb|0)<=(qb|0))){qb=(Cb<<1)-qb|0;break f}if(ab){break f}ab=0;if((Cb|0)>=(qb|0)){break f}qb=(Cb<<1)-qb|0}q[hb>>2]=qb;q[ib>>2]=ab}function cb(q){q=q|0;ij(q)}function db(q){q=q|0;return 2}function eb(Ia,ab){Ia=Ia|0;ab=ab|0;var hb=0,ib=0,Kb=0,Lb=0,Mb=0,Nb=0;Kb=q[ab+88>>2];if(!(!Kb|q[Kb>>2]!=1)){Lb=Kb+8|0;Kb=q[Lb>>2];hb=Kb;q[Ia+4>>2]=r[hb|0]|r[hb+1|0]<<8|(r[hb+2|0]<<16|r[hb+3|0]<<24);Mb=Ia+8|0;Nb=q[Ia+8>>2];ib=q[Ia+12>>2]-Nb>>2;hb=o[ab+24|0];a:{if(ib>>>0<hb>>>0){fb(Mb,hb-ib|0);Kb=q[Lb>>2];hb=r[ab+24|0];break a}if(ib>>>0<=hb>>>0){break a}q[Ia+12>>2]=Nb+(hb<<2)}Lb=1;ab=Kb;ib=r[ab+4|0]|r[ab+5|0]<<8|(r[ab+6|0]<<16|r[ab+7|0]<<24);if(hb<<24>>24>=1){Nb=hb&255;Mb=q[Mb>>2];ab=0;hb=4;while(1){q[Mb+(ab<<2)>>2]=ib;hb=hb+4|0;ib=Kb+hb|0;ib=r[ib|0]|r[ib+1|0]<<8|(r[ib+2|0]<<16|r[ib+3|0]<<24);ab=ab+1|0;if(ab>>>0<Nb>>>0){continue}break}}q[Ia+20>>2]=ib}return Lb|0}function fb(Ia,ab){var Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0;Pb=q[Ia+8>>2];Qb=Ia+4|0;Ob=q[Qb>>2];if(Pb-Ob>>2>>>0>=ab>>>0){Ia=ab<<2;Vb=Qb,Wb=pj(Ob,0,Ia)+Ia|0,q[Vb>>2]=Wb;return}a:{Qb=q[Ia>>2];Sb=Ob-Qb|0;Ob=Sb>>2;Rb=Ob+ab|0;if(Rb>>>0<1073741824){Ub=Ob<<2;Pb=Pb-Qb|0;Ob=Pb>>1;Pb=Pb>>2>>>0<536870911?Ob>>>0<Rb>>>0?Rb:Ob:1073741823;Ob=0;b:{if(!Pb){break b}if(Pb>>>0>=1073741824){break a}Tb=ui(Pb<<2);Ob=Tb}pj(Ub+Ob|0,0,ab<<2);ab=Ob+(Rb<<2)|0;Rb=Ob+(Pb<<2)|0;if((Sb|0)>=1){oj(Tb,Qb,Sb)}q[Ia>>2]=Ob;q[Ia+8>>2]=Rb;q[Ia+4>>2]=ab;if(Qb){ij(Qb)}return}Gi();F()}ob(1472);F()}function gb(Ia,ab){Ia=Ia|0;ab=ab|0;var Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0;q[ab>>2]=1;_b=ab+8|0;Xb=q[ab+8>>2];Yb=q[ab+12>>2]-Xb|0;if(Yb>>>0<=4294967291){Cg(_b,Yb+4|0);Xb=q[_b>>2]}Yb=Xb+Yb|0;Xb=r[Ia+4|0]|r[Ia+5|0]<<8|(r[Ia+6|0]<<16|r[Ia+7|0]<<24);o[Yb|0]=Xb;o[Yb+1|0]=Xb>>>8;o[Yb+2|0]=Xb>>>16;o[Yb+3|0]=Xb>>>24;Xb=q[Ia+8>>2];if((Xb|0)!=q[Ia+12>>2]){ac=ab+12|0;while(1){Yb=($b<<2)+Xb|0;Xb=q[ab+8>>2];Zb=q[ac>>2]-Xb|0;if(Zb>>>0<=4294967291){Cg(_b,Zb+4|0);Xb=q[_b>>2]}Zb=Xb+Zb|0;Xb=r[Yb|0]|r[Yb+1|0]<<8|(r[Yb+2|0]<<16|r[Yb+3|0]<<24);o[Zb|0]=Xb;o[Zb+1|0]=Xb>>>8;o[Zb+2|0]=Xb>>>16;o[Zb+3|0]=Xb>>>24;$b=$b+1|0;Xb=q[Ia+8>>2];if($b>>>0<q[Ia+12>>2]-Xb>>2>>>0){continue}break}}Xb=q[ab+12>>2];ab=q[ab+8>>2];Xb=Xb-ab|0;if(Xb>>>0<=4294967291){Cg(_b,Xb+4|0);ab=q[_b>>2]}ab=ab+Xb|0;Ia=r[Ia+20|0]|r[Ia+21|0]<<8|(r[Ia+22|0]<<16|r[Ia+23|0]<<24);o[ab|0]=Ia;o[ab+1|0]=Ia>>>8;o[ab+2|0]=Ia>>>16;o[ab+3|0]=Ia>>>24}function hb(Ia,ab,bc,cc,dc){q[Ia+4>>2]=ab;ib(Ia+8|0,bc,(cc<<2)+bc|0);u[Ia+20>>2]=dc}function ib(Ia,ab,bc){var cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0;a:{fc=bc-ab|0;ec=fc>>2;cc=q[Ia+8>>2];dc=q[Ia>>2];b:{if(ec>>>0<=cc-dc>>2>>>0){cc=q[Ia+4>>2]-dc|0;fc=cc>>2;cc=ec>>>0>fc>>>0?ab+cc|0:bc;gc=cc-ab|0;if(gc){qj(dc,ab,gc)}if(ec>>>0>fc>>>0){ab=bc-cc|0;if((ab|0)<1){break b}Ia=Ia+4|0;oj(q[Ia>>2],cc,ab);q[Ia>>2]=ab+q[Ia>>2];return}q[Ia+4>>2]=dc+(gc>>2<<2);return}if(dc){q[Ia+4>>2]=dc;ij(dc);q[Ia+8>>2]=0;q[Ia>>2]=0;q[Ia+4>>2]=0;cc=0}if(ec>>>0>=1073741824){break a}bc=cc>>1;bc=cc>>2>>>0<536870911?bc>>>0<ec>>>0?ec:bc:1073741823;if(bc>>>0>=1073741824){break a}dc=bc<<2;bc=ui(dc);q[Ia>>2]=bc;ec=Ia+4|0;q[ec>>2]=bc;q[Ia+8>>2]=bc+dc;if((fc|0)<1){break b}hc=ec,ic=oj(bc,ab,fc)+fc|0,q[hc>>2]=ic}return}Gi();F()}function jb(Ia,ab,bc){var jc=0,kc=0,lc=0,mc=x(0),nc=0,oc=0,pc=0,qc=x(0),rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0;oc=T-16|0;T=oc;a:{if(q[Ia+4>>2]==-1){q[Ia+4>>2]=bc;lc=o[ab+24|0];q[Ia+20>>2]=0;q[oc+8>>2]=0;q[oc>>2]=0;q[oc+4>>2]=0;bc=0;if(lc){if((lc|0)<=-1){break a}bc=lc<<2;kc=ui(bc);q[oc>>2]=kc;q[oc+4>>2]=kc;nc=bc+kc|0;q[oc+8>>2]=nc;bc=pj(kc,0,bc);jc=lc;while(1){bc=bc+4|0;jc=jc+ -1|0;if(jc){continue}break}q[oc+4>>2]=bc}jc=q[Ia+8>>2];if(jc){q[Ia+12>>2]=jc;ij(jc);q[Ia+16>>2]=0;q[Ia+8>>2]=0;q[Ia+12>>2]=0}q[Ia+8>>2]=kc;q[Ia+16>>2]=nc;q[Ia+12>>2]=bc;bc=(lc&1073741823)!=(lc|0)?-1:lc<<2;pc=ui(bc);rc=ui(bc);jc=q[ab+48>>2];nc=q[ab>>2];bc=q[ab+40>>2];vc=oj(rc,jc+q[nc>>2]|0,bc);oj(kc,jc+q[nc>>2]|0,bc);xc=q[ab+44>>2];nc=q[ab+48>>2];wc=q[ab>>2];sc=q[ab+40>>2];yc=sc;tc=oj(pc,nc+q[wc>>2]|0,sc);jc=q[ab+80>>2];if(jc>>>0>=2){zc=(lc|0)<1;rc=1;ab=0;while(1){bc=q[wc>>2];pc=Nj(rc,ab,sc,xc)+nc|0;Ac=oj(vc,bc+pc|0,yc);if(!zc){Bc=q[Ia+8>>2];bc=0;while(1){uc=bc<<2;kc=uc+Bc|0;pc=uc+Ac|0;mc=u[pc>>2];if(!!(u[kc>>2]>mc)){u[kc>>2]=mc;mc=u[pc>>2]}pc=tc+uc|0;if(!!(u[pc>>2]<mc)){u[pc>>2]=mc}bc=bc+1|0;if((lc|0)!=(bc|0)){continue}break}}bc=rc+1|0;if(bc>>>0<1){ab=ab+1|0}rc=bc;if(!ab&bc>>>0<jc>>>0|ab>>>0<0){continue}break}}bc=0;b:{c:{if((lc|0)<=0){qc=u[Ia+20>>2];break c}nc=q[Ia+8>>2];while(1){kc=0;jc=bc<<2;ab=jc+nc|0;qc=u[ab>>2];if((q[ab>>2]&2139095040)==2139095040){break b}ab=jc+tc|0;mc=u[ab>>2];if((q[ab>>2]&2139095040)==2139095040){break b}mc=x(mc-qc);qc=u[Ia+20>>2];if(!!(mc>qc)){u[Ia+20>>2]=mc;qc=mc}bc=bc+1|0;if((lc|0)!=(bc|0)){continue}break}}kc=1;if(qc!=x(0)){break b}q[Ia+20>>2]=1065353216}ij(vc);ij(tc)}T=oc+16|0;return kc}Gi();F()}function kb(Ia,ab){var bc=0,Cc=0,Dc=0,Ec=0;Dc=T-16|0;T=Dc;Cc=q[Ia+4>>2];bc=0;a:{if((Cc|0)==-1){break a}bc=Dc;b:{c:{Ec=q[ab+20>>2];if((Ec|0)<0?1:(Ec|0)<=0?t[ab+16>>2]>0?0:1:0){Ec=ab+4|0;$a(ab,q[Ec>>2],q[Ia+8>>2],q[Ia+12>>2]);Cc=q[ab+20>>2];if((Cc|0)<0?1:(Cc|0)<=0?t[ab+16>>2]>=1?0:1:0){break c}Cc=q[Ia+4>>2]}o[bc+15|0]=Cc;break b}bc=Ia+20|0;$a(ab,q[Ec>>2],bc,bc+4|0);Cc=q[ab+20>>2];bc=q[ab+16>>2];o[Dc+15|0]=q[Ia+4>>2];if((Cc|0)>0?1:(Cc|0)>=0?bc>>>0<=0?0:1:0){break b}$a(ab,q[ab+4>>2],Dc+15|0,Dc+16|0)}bc=1}T=Dc+16|0;return bc}function lb(Ia,ab,Fc,Gc,Hc){var Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=x(0),Sc=0,Tc=0,Uc=x(0),Vc=0,Wc=0,Xc=0,Yc=0,Zc=0,_c=0;Nc=T-16|0;T=Nc;Lc=Gc+4|0;Ic=o[Fc+24|0];pb(Ia,q[Lc>>2]-q[Gc>>2]>>2,Ic,Hc,Fc);Ia=q[Ia>>2];Mc=q[Ia+48>>2];Jc=q[ab+4>>2];Kc=q[q[Ia>>2]>>2];Hc=Nc+8|0;q[Hc>>2]=1065353216;u[Hc>>2]=x(-1<<Jc^-1)/u[ab+20>>2];Ia=ui((Ic&1073741823)!=(Ic|0)?-1:Ic<<2);Oc=q[Gc>>2];Gc=q[Lc>>2];if((Oc|0)!=(Gc|0)){Sc=Kc+Mc|0;Tc=Gc-Oc>>2;Uc=u[Hc>>2];Vc=q[Fc>>2];Hc=q[Fc+48>>2];Lc=q[Fc+44>>2];Mc=q[Fc+40>>2];Wc=Mc;Gc=0;Xc=r[Fc+84|0];Yc=Fc+68|0;Zc=(Ic|0)<1;_c=ab+8|0;while(1){ab=q[(Pc<<2)+Oc>>2];Fc=Ia;Qc=q[Vc>>2];Jc=Mc;Kc=Lc;if(!Xc){ab=q[q[Yc>>2]+(ab<<2)>>2]}ab=Nj(Jc,Kc,ab,0)+Hc|0;Jc=oj(Fc,ab+Qc|0,Wc);if(!Zc){Kc=q[_c>>2];Fc=0;while(1){Qc=Sc+(Gc<<2)|0;ab=Fc<<2;Rc=x(C(x(x(Uc*x(u[ab+Jc>>2]-u[ab+Kc>>2]))+x(.5))));a:{if(x(y(Rc))<x(2147483648)){ab=~~Rc;break a}ab=-2147483648}q[Qc>>2]=ab;Gc=Gc+1|0;Fc=Fc+1|0;if((Ic|0)!=(Fc|0)){continue}break}}Pc=Pc+1|0;if(Pc>>>0<Tc>>>0){continue}break}}ij(Ia);T=Nc+16|0}function mb(Ia){Ia=Ia|0;var ab=0;q[Ia>>2]=1396;ab=q[Ia+8>>2];if(ab){q[Ia+12>>2]=ab;ij(ab)}return Ia|0}function nb(Ia){Ia=Ia|0;var Fc=0;q[Ia>>2]=1396;Fc=q[Ia+8>>2];if(Fc){q[Ia+12>>2]=Fc;ij(Fc)}ij(Ia)}function ob(Ia){var Gc=0;Gc=I(8)|0;q[Gc>>2]=13928;q[Gc>>2]=13972;vi(Gc+4|0,Ia);q[Gc>>2]=14020;J(Gc|0,14052,23);F()}function pb(Ia,Hc,$c,ad,bd){var cd=0,dd=0,ed=0;cd=T+ -64|0;T=cd;dd=rb(cd);bd=q[bd+56>>2];ed=$c<<24>>24;$c=w(Dg(6),$c);sb(dd,bd,0,ed,6,$c,$c>>31);$c=ui(96);bd=vb($c,dd);q[Ia>>2]=$c;xb(bd,Hc);Ia=q[Ia>>2];a:{if(ad){o[Ia+84|0]=0;$c=q[Ia+68>>2];Hc=q[Ia+72>>2]-$c>>2;if(Hc>>>0<ad>>>0){qb(Ia+68|0,ad-Hc|0,1540);break a}if(Hc>>>0<=ad>>>0){break a}q[Ia+72>>2]=$c+(ad<<2);break a}o[Ia+84|0]=1;q[Ia+72>>2]=q[Ia+68>>2]}T=cd- -64|0}function qb(Ia,Hc,$c){var ad=0,bd=0,fd=0,gd=0,hd=0,id=0;fd=q[Ia+8>>2];ad=q[Ia+4>>2];if(fd-ad>>2>>>0>=Hc>>>0){while(1){q[ad>>2]=q[$c>>2];ad=ad+4|0;Hc=Hc+ -1|0;if(Hc){continue}break}q[Ia+4>>2]=ad;return}a:{gd=q[Ia>>2];hd=ad-gd|0;id=hd>>2;ad=id+Hc|0;if(ad>>>0<1073741824){fd=fd-gd|0;bd=fd>>1;ad=fd>>2>>>0<536870911?bd>>>0<ad>>>0?ad:bd:1073741823;bd=0;b:{if(!ad){break b}if(ad>>>0>=1073741824){break a}bd=ui(ad<<2)}fd=bd+(ad<<2)|0;ad=bd+(id<<2)|0;while(1){q[ad>>2]=q[$c>>2];ad=ad+4|0;Hc=Hc+ -1|0;if(Hc){continue}break}if((hd|0)>=1){oj(bd,gd,hd)}q[Ia>>2]=bd;q[Ia+8>>2]=fd;q[Ia+4>>2]=ad;if(gd){ij(gd)}return}Gi();F()}ob(1544);F()}function rb(Ia){q[Ia+8>>2]=0;q[Ia+12>>2]=0;q[Ia>>2]=0;q[Ia+40>>2]=0;q[Ia+44>>2]=0;q[Ia+28>>2]=9;o[Ia+24|0]=1;q[Ia+56>>2]=-1;q[Ia+60>>2]=0;q[Ia+16>>2]=0;q[Ia+20>>2]=0;q[Ia+48>>2]=0;q[Ia+52>>2]=0;return Ia}function sb(Ia,Hc,$c,jd,kd,ld,md){var nd=0;q[Ia>>2]=$c;if($c){nd=q[$c+20>>2];q[Ia+8>>2]=q[$c+16>>2];q[Ia+12>>2]=nd;nd=q[$c+28>>2];q[Ia+16>>2]=q[$c+24>>2];q[Ia+20>>2]=nd}q[Ia+56>>2]=Hc;q[Ia+48>>2]=0;q[Ia+52>>2]=0;q[Ia+40>>2]=ld;q[Ia+44>>2]=md;o[Ia+32|0]=0;q[Ia+28>>2]=kd;o[Ia+24|0]=jd}function tb(Ia,Hc,$c,jd){var kd=0;q[Ia>>2]=Hc;kd=q[Hc+20>>2];q[Ia+8>>2]=q[Hc+16>>2];q[Ia+12>>2]=kd;kd=q[Hc+24>>2];Hc=q[Hc+28>>2];q[Ia+48>>2]=0;q[Ia+52>>2]=0;q[Ia+40>>2]=$c;q[Ia+44>>2]=jd;q[Ia+16>>2]=kd;q[Ia+20>>2]=Hc}function ub(Ia){rb(Ia);q[Ia+64>>2]=0;q[Ia+68>>2]=0;q[Ia+88>>2]=0;q[Ia+72>>2]=0;q[Ia+76>>2]=0;o[Ia+77|0]=0;o[Ia+78|0]=0;o[Ia+79|0]=0;o[Ia+80|0]=0;o[Ia+81|0]=0;o[Ia+82|0]=0;o[Ia+83|0]=0;o[Ia+84|0]=0;return Ia}function vb(Ia,Hc){var $c=0;$c=q[Hc+4>>2];q[Ia>>2]=q[Hc>>2];q[Ia+4>>2]=$c;$c=q[Hc+60>>2];q[Ia+56>>2]=q[Hc+56>>2];q[Ia+60>>2]=$c;$c=q[Hc+52>>2];q[Ia+48>>2]=q[Hc+48>>2];q[Ia+52>>2]=$c;$c=q[Hc+44>>2];q[Ia+40>>2]=q[Hc+40>>2];q[Ia+44>>2]=$c;$c=q[Hc+36>>2];q[Ia+32>>2]=q[Hc+32>>2];q[Ia+36>>2]=$c;$c=q[Hc+28>>2];q[Ia+24>>2]=q[Hc+24>>2];q[Ia+28>>2]=$c;$c=q[Hc+20>>2];q[Ia+16>>2]=q[Hc+16>>2];q[Ia+20>>2]=$c;$c=q[Hc+12>>2];q[Ia+8>>2]=q[Hc+8>>2];q[Ia+12>>2]=$c;q[Ia+88>>2]=0;q[Ia+64>>2]=0;q[Ia+68>>2]=0;q[Ia+72>>2]=0;q[Ia+76>>2]=0;o[Ia+77|0]=0;o[Ia+78|0]=0;o[Ia+79|0]=0;o[Ia+80|0]=0;o[Ia+81|0]=0;o[Ia+82|0]=0;o[Ia+83|0]=0;o[Ia+84|0]=0;return Ia}function wb(Ia,Hc,jd){var ld=0,md=0,od=0;ld=ui(32);zg(ld);md=q[Ia+64>>2];q[Ia+64>>2]=ld;od=Ia;if(md){ld=q[md>>2];if(ld){q[md+4>>2]=ld;ij(ld)}ij(md);ld=q[Ia+64>>2]}md=Hc;Hc=w(Dg(9),Hc);sb(od,4,ld,md,9,Hc,Hc>>31);xb(Ia,jd);o[Ia+84|0]=1;q[Ia+72>>2]=q[Ia+68>>2]}function xb(Ia,Hc){var jd=0,pd=0;a:{if(q[Ia+64>>2]){break a}pd=ui(32);zg(pd);jd=q[Ia+64>>2];q[Ia+64>>2]=pd;if(!jd){break a}pd=q[jd>>2];if(pd){q[jd+4>>2]=pd;ij(pd)}ij(jd)}jd=Dg(q[Ia+28>>2]);jd=w(jd,o[Ia+24|0]);pd=jd;jd=jd>>31;if(Ag(q[Ia+64>>2],Nj(pd,jd,Hc,0),V)){tb(Ia,q[Ia+64>>2],pd,jd);q[Ia+80>>2]=Hc}}function yb(Ia){var Hc=0,qd=0,rd=0,sd=0,td=0,ud=0;qd=T-16|0;T=qd;q[Ia>>2]=1620;rd=Ia+4|0;Hc=rd;q[Hc>>2]=0;q[Hc+4>>2]=0;q[Ia+12>>2]=0;q[Ia+16>>2]=0;Hc=Ia+20|0;q[Hc>>2]=0;q[Hc+4>>2]=0;q[Ia+28>>2]=0;q[Ia+32>>2]=0;q[qd+12>>2]=0;zb(rd,qd+12|0);rd=q[qd+12>>2];sd=q[Hc>>2];ud=Ia+16|0;Hc=q[ud>>2];td=sd-Hc>>2;a:{if((rd|0)<(td|0)){break a}q[qd+8>>2]=-1;sd=rd+1|0;if(sd>>>0>td>>>0){Ab(ud,sd-td|0,qd+8|0);Hc=q[ud>>2];rd=q[qd+12>>2];break a}if(sd>>>0>=td>>>0){break a}q[Ia+20>>2]=(sd<<2)+Hc}q[(rd<<2)+Hc>>2]=(q[Ia+8>>2]-q[Ia+4>>2]>>2)+ -1;T=qd+16|0}function zb(Ia,vd){var wd=0,xd=0,yd=0,zd=0,Ad=0,Bd=0;a:{yd=q[Ia>>2];Ad=q[Ia+4>>2]-yd|0;wd=Ad>>2;xd=wd+1|0;if(xd>>>0<1073741824){Bd=wd<<2;wd=q[Ia+8>>2]-yd|0;zd=wd>>1;xd=wd>>2>>>0<536870911?zd>>>0<xd>>>0?xd:zd:1073741823;wd=0;b:{if(!xd){break b}if(xd>>>0>=1073741824){break a}wd=ui(xd<<2)}zd=Bd+wd|0;q[zd>>2]=q[vd>>2];vd=wd+(xd<<2)|0;xd=zd+4|0;if((Ad|0)>=1){oj(wd,yd,Ad)}q[Ia>>2]=wd;q[Ia+8>>2]=vd;q[Ia+4>>2]=xd;if(yd){ij(yd)}return}Gi();F()}ob(1708);F()}function Ab(Ia,vd,Cd){var Dd=0,Ed=0,Fd=0,Gd=0,Hd=0,Id=0;Fd=q[Ia+8>>2];Dd=q[Ia+4>>2];if(Fd-Dd>>2>>>0>=vd>>>0){while(1){q[Dd>>2]=q[Cd>>2];Dd=Dd+4|0;vd=vd+ -1|0;if(vd){continue}break}q[Ia+4>>2]=Dd;return}a:{Gd=q[Ia>>2];Hd=Dd-Gd|0;Id=Hd>>2;Dd=Id+vd|0;if(Dd>>>0<1073741824){Fd=Fd-Gd|0;Ed=Fd>>1;Dd=Fd>>2>>>0<536870911?Ed>>>0<Dd>>>0?Dd:Ed:1073741823;Ed=0;b:{if(!Dd){break b}if(Dd>>>0>=1073741824){break a}Ed=ui(Dd<<2)}Fd=Ed+(Dd<<2)|0;Dd=Ed+(Id<<2)|0;while(1){q[Dd>>2]=q[Cd>>2];Dd=Dd+4|0;vd=vd+ -1|0;if(vd){continue}break}if((Hd|0)>=1){oj(Ed,Gd,Hd)}q[Ia>>2]=Ed;q[Ia+8>>2]=Fd;q[Ia+4>>2]=Dd;if(Gd){ij(Gd)}return}Gi();F()}ob(1708);F()}function Bb(Ia,vd,Cd){Ia=Ia|0;vd=vd|0;Cd=Cd|0;q[Ia+32>>2]=Cd;q[Ia+28>>2]=vd;return 1}function Cb(Ia,vd){Ia=Ia|0;vd=vd|0;var Cd=0,Jd=0,Kd=0,Ld=0,Md=0,Nd=0,Od=0,Pd=0,Qd=0,Rd=0,Sd=0;Jd=T-16|0;T=Jd;Nd=Ia+8|0;Db(q[Nd>>2]-q[Ia+4>>2]>>2,vd);Cd=q[Ia+4>>2];if((Cd|0)!=q[Nd>>2]){Pd=Jd+13|0;Qd=Jd+14|0;Rd=Jd+15|0;Sd=Jd+16|0;Md=vd+4|0;while(1){Ld=q[q[q[Ia+32>>2]+8>>2]+(q[(Od<<2)+Cd>>2]<<2)>>2];o[Jd+15|0]=q[Ld+56>>2];Cd=q[vd+20>>2];Kd=q[vd+16>>2];if((Cd|0)<0?1:(Cd|0)<=0?Kd>>>0>0?0:1:0){$a(vd,q[Md>>2],Jd+15|0,Sd);Kd=q[vd+16>>2];Cd=q[vd+20>>2]}o[Jd+14|0]=q[Ld+28>>2];if((Cd|0)<0?1:(Cd|0)<=0?Kd>>>0>0?0:1:0){$a(vd,q[Md>>2],Jd+14|0,Rd);Kd=q[vd+16>>2];Cd=q[vd+20>>2]}o[Jd+13|0]=r[Ld+24|0];if((Cd|0)<0?1:(Cd|0)<=0?Kd>>>0>0?0:1:0){$a(vd,q[Md>>2],Jd+13|0,Qd);Kd=q[vd+16>>2];Cd=q[vd+20>>2]}o[Jd+12|0]=r[Ld+32|0];if((Cd|0)<0?1:(Cd|0)<=0?Kd>>>0>0?0:1:0){$a(vd,q[Md>>2],Jd+12|0,Pd)}Db(q[Ld+60>>2],vd);Od=Od+1|0;Cd=q[Ia+4>>2];if(Od>>>0<q[Nd>>2]-Cd>>2>>>0){continue}break}}T=Jd+16|0;return 1}function Db(Ia,vd){var Td=0,Ud=0,Vd=0;Td=T-16|0;T=Td;o[Td+15|0]=Ia&127;a:{if(Ia>>>0>=128){o[Td+15|0]=Ia|128;Vd=q[vd+20>>2];Ud=0;if((Vd|0)>0?1:(Vd|0)>=0?t[vd+16>>2]<=0?0:1:0){break a}$a(vd,q[vd+4>>2],Td+15|0,Td+16|0);Ud=Db(Ia>>>7,vd);break a}Ia=q[vd+20>>2];Ud=0;if((Ia|0)>0?1:(Ia|0)>=0?t[vd+16>>2]<1?0:1:0){break a}$a(vd,q[vd+4>>2],Td+15|0,Td+16|0);Ud=1}Ia=Ud;T=Td+16|0;return Ia}function Eb(Ia){Ia=Ia|0;var vd=0;q[Ia>>2]=1620;vd=q[Ia+16>>2];if(vd){q[Ia+20>>2]=vd;ij(vd)}vd=q[Ia+4>>2];if(vd){q[Ia+8>>2]=vd;ij(vd)}return Ia|0}function Fb(q){q=q|0;F()}function Gb(Ia,Wd){Ia=Ia|0;Wd=Wd|0;var Xd=0;a:{if(!n[q[q[Ia>>2]+40>>2]](Ia)){break a}if(!n[q[q[Ia>>2]+44>>2]](Ia,Wd)){break a}Xd=n[q[q[Ia>>2]+48>>2]](Ia,Wd)|0}return Xd|0}function Hb(q,Ia){q=q|0;Ia=Ia|0;return 0}function Ib(q,Ia,Wd){q=q|0;Ia=Ia|0;Wd=Wd|0;return-1}function Jb(Ia,Wd){var Yd=0,Zd=0,_d=0,$d=0,ae=0,be=0,ce=0,de=0;Ia=q[Ia+4>>2];if(Ia){Zd=r[Wd+11|0];_d=Zd<<24>>24<0;Zd=_d?q[Wd+4>>2]:Zd;be=_d?q[Wd>>2]:Wd;while(1){Wd=Ia+16|0;Yd=r[Ia+27|0];_d=Yd<<24>>24<0;$d=_d?q[Ia+20>>2]:Yd;ce=$d>>>0<Zd>>>0;a:{b:{c:{d:{e:{f:{Yd=ce?$d:Zd;if(Yd){ae=_d?q[Wd>>2]:Wd;de=yh(be,ae,Yd);if(de){break f}}if(Zd>>>0<$d>>>0){break a}if(!Yd){break d}ae=_d?q[Wd>>2]:Wd;break e}if((de|0)<=-1){break a}}Wd=yh(ae,be,Yd);if(Wd){break c}}if(ce){break b}return 1}if((Wd|0)<=-1){break b}return 1}Ia=Ia+4|0}Ia=q[Ia>>2];if(Ia){continue}break}}return 0}function Kb(Ia,Wd,ee,fe){var ge=0,he=0,ie=0,je=x(0);ge=T-32|0;T=ge;ie=Ia+4|0;Ia=Nb(Ia,Wd);if((ie|0)!=(Ia|0)){he=yi(ge+16|0,Ia+28|0);Wd=r[he+11|0];Ia=Wd<<24>>24;if(!(!((Ia|0)<0?q[he+4>>2]:Wd)|(ee|0)<1)){Wd=0;Ia=(Ia|0)<0?q[he>>2]:ge+16|0;while(1){je=th(Ia,ge+12|0);ie=Ia;Ia=q[ge+12>>2];a:{if((ie|0)==(Ia|0)){break a}u[(Wd<<2)+fe>>2]=je;Wd=Wd+1|0;if((ee|0)!=(Wd|0)){continue}}break}Ia=r[he+11|0]}if(Ia<<24>>24<=-1){ij(q[he>>2])}}T=ge+32|0}function Lb(Ia,Wd,ee,fe){var ke=0,le=0,me=0,ne=0,oe=x(0),pe=0;a:{b:{if(!fe){break b}ke=q[Ia+28>>2]+ -1|0;if(ke>>>0>10){break b}c:{d:{e:{switch(ke-1|0){default:me=1;ke=o[Ia+24|0];if(((ke|0)>(ee|0)?ee:ke)<<24>>24>=1){ke=q[q[Ia>>2]>>2];Wd=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],Wd,0)|0;Wd=ke+Wd|0;while(1){q[(le<<2)+fe>>2]=o[Wd|0];Wd=Wd+1|0;le=le+1|0;ke=o[Ia+24|0];if((le|0)<((ke|0)>(ee|0)?ee:ke)<<24>>24){continue}break}}if((ke|0)>=(ee|0)){break b}break a;case 0:me=1;ke=o[Ia+24|0];if(((ke|0)>(ee|0)?ee:ke)<<24>>24>=1){ke=q[q[Ia>>2]>>2];Wd=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],Wd,0)|0;Wd=ke+Wd|0;while(1){q[(le<<2)+fe>>2]=r[Wd|0];Wd=Wd+1|0;le=le+1|0;ke=o[Ia+24|0];if((le|0)<((ke|0)>(ee|0)?ee:ke)<<24>>24){continue}break}}if((ke|0)>=(ee|0)){break b}break a;case 1:me=1;ke=o[Ia+24|0];if(((ke|0)>(ee|0)?ee:ke)<<24>>24>=1){ke=q[q[Ia>>2]>>2];Wd=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],Wd,0)|0;Wd=ke+Wd|0;while(1){q[(le<<2)+fe>>2]=p[Wd>>1];Wd=Wd+2|0;le=le+1|0;ke=o[Ia+24|0];if((le|0)<((ke|0)>(ee|0)?ee:ke)<<24>>24){continue}break}}if((ke|0)>=(ee|0)){break b}break a;case 2:me=1;ke=o[Ia+24|0];if(((ke|0)>(ee|0)?ee:ke)<<24>>24>=1){ke=q[q[Ia>>2]>>2];Wd=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],Wd,0)|0;Wd=ke+Wd|0;while(1){q[(le<<2)+fe>>2]=s[Wd>>1];Wd=Wd+2|0;le=le+1|0;ke=o[Ia+24|0];if((le|0)<((ke|0)>(ee|0)?ee:ke)<<24>>24){continue}break}}if((ke|0)>=(ee|0)){break b}break a;case 3:me=1;ke=o[Ia+24|0];if(((ke|0)>(ee|0)?ee:ke)<<24>>24>=1){ke=q[q[Ia>>2]>>2];Wd=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],Wd,0)|0;Wd=ke+Wd|0;while(1){q[(le<<2)+fe>>2]=q[Wd>>2];Wd=Wd+4|0;le=le+1|0;ke=o[Ia+24|0];if((le|0)<((ke|0)>(ee|0)?ee:ke)<<24>>24){continue}break}}if((ke|0)>=(ee|0)){break b}break a;case 4:me=1;ke=o[Ia+24|0];if(((ke|0)>(ee|0)?ee:ke)<<24>>24>=1){ke=q[q[Ia>>2]>>2];Wd=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],Wd,0)|0;Wd=ke+Wd|0;while(1){q[(le<<2)+fe>>2]=q[Wd>>2];Wd=Wd+4|0;le=le+1|0;ke=o[Ia+24|0];if((le|0)<((ke|0)>(ee|0)?ee:ke)<<24>>24){continue}break}}if((ke|0)>=(ee|0)){break b}break a;case 5:me=1;ke=o[Ia+24|0];if(((ke|0)>(ee|0)?ee:ke)<<24>>24>=1){ke=q[q[Ia>>2]>>2];Wd=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],Wd,0)|0;Wd=ke+Wd|0;while(1){q[(le<<2)+fe>>2]=q[Wd>>2];Wd=Wd+8|0;le=le+1|0;ke=o[Ia+24|0];if((le|0)<((ke|0)>(ee|0)?ee:ke)<<24>>24){continue}break}}if((ke|0)>=(ee|0)){break b}break a;case 6:me=1;ke=o[Ia+24|0];if(((ke|0)>(ee|0)?ee:ke)<<24>>24>=1){ke=q[q[Ia>>2]>>2];Wd=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],Wd,0)|0;Wd=ke+Wd|0;while(1){q[(le<<2)+fe>>2]=q[Wd>>2];Wd=Wd+8|0;le=le+1|0;ke=o[Ia+24|0];if((le|0)<((ke|0)>(ee|0)?ee:ke)<<24>>24){continue}break}}if((ke|0)>=(ee|0)){break b}break a;case 7:me=1;ke=o[Ia+24|0];if(((ke|0)>(ee|0)?ee:ke)<<24>>24<1){break c}ke=q[q[Ia>>2]>>2];Wd=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],Wd,0)|0;Wd=ke+Wd|0;while(1){ke=(le<<2)+fe|0;oe=u[Wd>>2];f:{if(x(y(oe))<x(2147483648)){ne=~~oe;break f}ne=-2147483648}q[ke>>2]=ne;Wd=Wd+4|0;le=le+1|0;ke=o[Ia+24|0];if((le|0)<((ke|0)>(ee|0)?ee:ke)<<24>>24){continue}break}break c;case 8:me=1;ke=o[Ia+24|0];if(((ke|0)>(ee|0)?ee:ke)<<24>>24<1){break d}ke=q[q[Ia>>2]>>2];Wd=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],Wd,0)|0;Wd=ke+Wd|0;while(1){ke=(le<<2)+fe|0;pe=v[Wd>>3];g:{if(y(pe)<2147483648){ne=~~pe;break g}ne=-2147483648}q[ke>>2]=ne;Wd=Wd+8|0;le=le+1|0;ke=o[Ia+24|0];if((le|0)<((ke|0)>(ee|0)?ee:ke)<<24>>24){continue}break}break d;case 9:break e}}me=1;ke=o[Ia+24|0];if(((ke|0)>(ee|0)?ee:ke)<<24>>24>=1){ke=q[q[Ia>>2]>>2];Wd=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],Wd,0)|0;Wd=ke+Wd|0;while(1){q[(le<<2)+fe>>2]=r[Wd|0];Wd=Wd+1|0;le=le+1|0;ke=o[Ia+24|0];if((le|0)<((ke|0)>(ee|0)?ee:ke)<<24>>24){continue}break}}if((ke|0)>=(ee|0)){break b}pj((ke<<2)+fe|0,0,ee-ke<<2);break b}if((ke|0)>=(ee|0)){break b}break a}if((ke|0)>=(ee|0)){break b}break a}return me}pj((ke<<2)+fe|0,0,ee-ke<<2);return 1}function Mb(Ia){var Wd=0,ee=0,fe=0,qe=0,re=0;qe=T-16|0;T=qe;Wd=ui(16);q[qe>>2]=Wd;q[qe+4>>2]=14;q[qe+8>>2]=-2147483632;o[Wd+14|0]=0;ee=r[1854]|r[1855]<<8|(r[1856]<<16|r[1857]<<24);fe=r[1850]|r[1851]<<8|(r[1852]<<16|r[1853]<<24);o[Wd+6|0]=fe;o[Wd+7|0]=fe>>>8;o[Wd+8|0]=fe>>>16;o[Wd+9|0]=fe>>>24;o[Wd+10|0]=ee;o[Wd+11|0]=ee>>>8;o[Wd+12|0]=ee>>>16;o[Wd+13|0]=ee>>>24;ee=r[1848]|r[1849]<<8|(r[1850]<<16|r[1851]<<24);fe=r[1844]|r[1845]<<8|(r[1846]<<16|r[1847]<<24);o[Wd|0]=fe;o[Wd+1|0]=fe>>>8;o[Wd+2|0]=fe>>>16;o[Wd+3|0]=fe>>>24;o[Wd+4|0]=ee;o[Wd+5|0]=ee>>>8;o[Wd+6|0]=ee>>>16;o[Wd+7|0]=ee>>>24;re=Lg(Ia,qe,-1);if(o[qe+11|0]<=-1){ij(q[qe>>2])}Wd=ui(16);q[qe>>2]=Wd;q[qe+4>>2]=14;q[qe+8>>2]=-2147483632;o[Wd+14|0]=0;ee=r[1869]|r[1870]<<8|(r[1871]<<16|r[1872]<<24);fe=r[1865]|r[1866]<<8|(r[1867]<<16|r[1868]<<24);o[Wd+6|0]=fe;o[Wd+7|0]=fe>>>8;o[Wd+8|0]=fe>>>16;o[Wd+9|0]=fe>>>24;o[Wd+10|0]=ee;o[Wd+11|0]=ee>>>8;o[Wd+12|0]=ee>>>16;o[Wd+13|0]=ee>>>24;ee=r[1863]|r[1864]<<8|(r[1865]<<16|r[1866]<<24);fe=r[1859]|r[1860]<<8|(r[1861]<<16|r[1862]<<24);o[Wd|0]=fe;o[Wd+1|0]=fe>>>8;o[Wd+2|0]=fe>>>16;o[Wd+3|0]=fe>>>24;o[Wd+4|0]=ee;o[Wd+5|0]=ee>>>8;o[Wd+6|0]=ee>>>16;o[Wd+7|0]=ee>>>24;Ia=Lg(Ia,qe,-1);if(o[qe+11|0]<=-1){ij(q[qe>>2])}T=qe+16|0;Ia=(re|0)<(Ia|0)?Ia:re;return(Ia|0)==-1?5:Ia}function Nb(Ia,se){var te=0,ue=0,ve=0,we=0,xe=0,ye=0,ze=0,Ae=0;xe=Ia+4|0;Ia=q[xe>>2];a:{b:{if(!Ia){break b}te=r[se+11|0];ue=te<<24>>24<0;ve=ue?q[se+4>>2]:te;ze=ue?q[se>>2]:se;te=xe;while(1){se=r[Ia+27|0];Ae=se<<24>>24<0;ye=Ae?q[Ia+20>>2]:se;we=ve>>>0<ye>>>0;ue=we?ve:ye;c:{if(ue){se=Ia+16|0;se=yh(Ae?q[se>>2]:se,ze,ue);if(se){break c}}se=ye>>>0<ve>>>0?-1:we}te=(se|0)<0?te:Ia;Ia=q[(se>>>29&4)+Ia>>2];if(Ia){continue}break}if((te|0)==(xe|0)){break b}Ia=r[te+27|0];we=Ia<<24>>24<0;d:{ue=we?q[te+20>>2]:Ia;se=ue>>>0<ve>>>0?ue:ve;if(se){Ia=te+16|0;Ia=yh(ze,we?q[Ia>>2]:Ia,se);if(Ia){break d}}if(ve>>>0<ue>>>0){break b}break a}if((Ia|0)>-1){break a}}te=xe}return te}function Ob(Ia,se){var Be=0,Ce=0,De=0,Ee=0,Fe=0,Ge=0;a:{De=q[Ia>>2];Fe=q[Ia+4>>2]-De|0;Be=Fe>>2;Ce=Be+1|0;if(Ce>>>0<1073741824){Ge=Be<<2;Be=q[Ia+8>>2]-De|0;Ee=Be>>1;Ce=Be>>2>>>0<536870911?Ee>>>0<Ce>>>0?Ce:Ee:1073741823;Be=0;b:{if(!Ce){break b}if(Ce>>>0>=1073741824){break a}Be=ui(Ce<<2)}Ee=Ge+Be|0;q[Ee>>2]=q[se>>2];se=Be+(Ce<<2)|0;Ce=Ee+4|0;if((Fe|0)>=1){oj(Be,De,Fe)}q[Ia>>2]=Be;q[Ia+8>>2]=se;q[Ia+4>>2]=Ce;if(De){ij(De)}return}Gi();F()}ob(1776);F()}function Pb(Ia){q[Ia+32>>2]=0;q[Ia+12>>2]=-1;q[Ia+4>>2]=0;q[Ia+8>>2]=0;q[Ia>>2]=1884;q[Ia+16>>2]=0;q[Ia+20>>2]=0;o[Ia+21|0]=0;o[Ia+22|0]=0;o[Ia+23|0]=0;o[Ia+24|0]=0;o[Ia+25|0]=0;o[Ia+26|0]=0;o[Ia+27|0]=0;o[Ia+28|0]=0}function Qb(Ia,se,He){Ia=Ia|0;se=se|0;He=He|0;q[Ia+4>>2]=se;se=q[q[q[se+4>>2]+8>>2]+(He<<2)>>2];q[Ia+12>>2]=He;q[Ia+8>>2]=se;return 1}function Rb(Ia,se){Ia=Ia|0;se=se|0;q[Ia+12>>2]=-1;q[Ia+8>>2]=se;return 1}function Sb(Ia,se,He){Ia=Ia|0;se=se|0;He=He|0;return n[q[q[Ia>>2]+44>>2]](Ia,se,He)|0}function Tb(Ia,se,He){Ia=Ia|0;se=se|0;He=He|0;var Ie=0,Je=0,Ke=0,Le=0,Me=0,Ne=0,Oe=0,Pe=0,Qe=0,Re=0,Se=0,Te=0,Ue=0,Ve=0;Ie=q[Ia+8>>2];Je=q[Ie+40>>2];Me=ui((Je|0)>-1?Je:-1);a:{Le=q[se>>2];Pe=se+4|0;Ne=q[Pe>>2];if((Le|0)==(Ne|0)){break a}Re=Je+Me|0;while(1){Ke=q[(Oe<<2)+Le>>2];Je=Me;Se=q[q[Ie>>2]>>2];Te=q[Ie+48>>2];Qe=q[Ie+40>>2];Ue=Qe;Ve=q[Ie+44>>2];if(!r[Ie+84|0]){Ke=q[q[Ie+68>>2]+(Ke<<2)>>2]}Ie=Je;Je=Nj(Ue,Ve,Ke,0)+Te|0;Ke=oj(Ie,Je+Se|0,Qe);Je=q[He+20>>2];if((Je|0)<0?1:(Je|0)<=0?t[He+16>>2]>0?0:1:0){$a(He,q[He+4>>2],Ke,Re);Le=q[se>>2];Ne=q[Pe>>2]}Oe=Oe+1|0;if(Oe>>>0>=Ne-Le>>2>>>0){break a}Ie=q[Ia+8>>2];continue}}ij(Me);return 1}function Ub(q){o[q+28|0]=1}function Vb(Ia,se){Ia=Ia|0;se=se|0;var He=0,We=0,Xe=0,Ye=0,Ze=0,_e=0,$e=0;We=T-16|0;T=We;He=1;a:{if((n[q[q[se>>2]+20>>2]](se)|0)<1){break a}_e=Ia+16|0;$e=Ia+24|0;Ze=Ia+20|0;while(1){b:{He=Rg(q[q[Ia+4>>2]+4>>2],n[q[q[se>>2]+24>>2]](se,Xe)|0);q[We+12>>2]=He;if((He|0)==-1){break b}Ye=q[Ze>>2];c:{if((Ye|0)!=q[$e>>2]){q[Ye>>2]=He;q[Ze>>2]=Ye+4;break c}zb(_e,We+12|0)}sg(q[Ia+4>>2],q[We+12>>2]);He=1;Xe=Xe+1|0;if((Xe|0)<(n[q[q[se>>2]+20>>2]](se)|0)){continue}break a}break}He=0}T=We+16|0;return He|0}function Wb(Ia,se){Ia=Ia|0;se=se|0;var af=0,bf=0,cf=0,df=0,ef=0,ff=0;af=1;a:{if((n[q[q[se>>2]+20>>2]](se)|0)<1){break a}af=0;while(1){cf=Rg(q[q[Ia+4>>2]+4>>2],n[q[q[se>>2]+24>>2]](se,bf)|0);if((cf|0)==-1){break a}if(!(ef=se,ff=tg(q[Ia+4>>2],cf),df=q[q[se>>2]+28>>2],n[df](ef|0,ff|0)|0)){break a}bf=bf+1|0;if((bf|0)<(n[q[q[se>>2]+20>>2]](se)|0)){continue}break}af=1}return af|0}function Xb(Ia){Ia=Ia|0;var se=0;q[Ia>>2]=1884;se=q[Ia+32>>2];q[Ia+32>>2]=0;if(se){qa(se)}se=q[Ia+16>>2];if(se){q[Ia+20>>2]=se;ij(se)}return Ia|0}function Yb(Ia){Ia=Ia|0;var gf=0;q[Ia>>2]=1884;gf=q[Ia+32>>2];q[Ia+32>>2]=0;if(gf){qa(gf)}gf=q[Ia+16>>2];if(gf){q[Ia+20>>2]=gf;ij(gf)}ij(Ia)}function Zb(Ia,hf){var jf=0;yb(Ia);q[Ia+36>>2]=0;q[Ia+40>>2]=0;q[Ia>>2]=1988;q[Ia+44>>2]=0;q[Ia+48>>2]=0;q[Ia+52>>2]=0;q[Ia+56>>2]=0;q[Ia+60>>2]=0;q[Ia+64>>2]=0;q[Ia+68>>2]=0;jf=q[hf>>2];q[hf>>2]=0;q[Ia+72>>2]=jf}function _b(Ia,hf,kf){Ia=Ia|0;hf=hf|0;kf=kf|0;var lf=0,mf=0,nf=0,of=0,pf=0,qf=0;a:{if(!Bb(Ia,hf,kf)){break a}if(!n[q[q[Ia>>2]+52>>2]](Ia)){break a}lf=1;mf=Ia+4|0;kf=q[mf>>2];nf=Ia+8|0;if((kf|0)==q[nf>>2]){break a}lf=0;qf=Ia+36|0;Ia=0;while(1){of=Ia<<2;pf=q[of+q[qf>>2]>>2];if(!n[q[q[pf>>2]+8>>2]](pf,hf,q[kf+of>>2])){break a}Ia=Ia+1|0;kf=q[mf>>2];if(Ia>>>0<q[nf>>2]-kf>>2>>>0){continue}break}lf=1}return lf|0}function $b(Ia,hf){Ia=Ia|0;hf=hf|0;var kf=0,rf=0,sf=0,tf=0,uf=0,vf=0,wf=0,xf=0,yf=0;rf=T-16|0;T=rf;a:{if(!Cb(Ia,hf)){break a}uf=1;kf=q[Ia+36>>2];tf=Ia+40|0;if((kf|0)==q[tf>>2]){break a}vf=rf+16|0;wf=hf+4|0;while(1){kf=q[(sf<<2)+kf>>2];xf=rf,yf=n[q[q[kf>>2]+32>>2]](kf)|0,o[xf+15|0]=yf;kf=q[hf+20>>2];if((kf|0)<0?1:(kf|0)<=0?t[hf+16>>2]>0?0:1:0){$a(hf,q[wf>>2],rf+15|0,vf)}sf=sf+1|0;kf=q[Ia+36>>2];if(sf>>>0<q[tf>>2]-kf>>2>>>0){continue}break}}T=rf+16|0;return uf|0}function ac(Ia,hf){Ia=Ia|0;hf=hf|0;var zf=0,Af=0;zf=q[Ia+72>>2];a:{if(!zf){break a}q[zf+4>>2]=Ia+60;if(!n[q[q[zf>>2]+12>>2]](zf)){break a}if(!n[q[q[Ia>>2]+40>>2]](Ia)){break a}if(!n[q[q[Ia>>2]+44>>2]](Ia,hf)){break a}Af=n[q[q[Ia>>2]+48>>2]](Ia,hf)|0}return Af|0}function bc(Ia){Ia=Ia|0;var hf=0,Bf=0,Cf=0,Df=0,Ef=0;Bf=1;hf=q[Ia+36>>2];Df=Ia+40|0;a:{if((hf|0)==q[Df>>2]){break a}Ef=Ia+60|0;Bf=0;while(1){hf=q[(Cf<<2)+hf>>2];if(!n[q[q[hf>>2]+16>>2]](hf,Ef)){break a}Cf=Cf+1|0;hf=q[Ia+36>>2];if(Cf>>>0<q[Df>>2]-hf>>2>>>0){continue}break}Bf=1}return Bf|0}function cc(Ia,Ff){Ia=Ia|0;Ff=Ff|0;var Gf=0,Hf=0,If=0,Jf=0,Kf=0;Hf=1;Gf=q[Ia+36>>2];Jf=Ia+40|0;a:{if((Gf|0)==q[Jf>>2]){break a}Kf=Ia+60|0;Hf=0;while(1){Gf=q[(If<<2)+Gf>>2];if(!n[q[q[Gf>>2]+20>>2]](Gf,Kf,Ff)){break a}If=If+1|0;Gf=q[Ia+36>>2];if(If>>>0<q[Jf>>2]-Gf>>2>>>0){continue}break}Hf=1}return Hf|0}function dc(Ia,Ff){Ia=Ia|0;Ff=Ff|0;var Lf=0,Mf=0,Nf=0;Lf=q[Ia+36>>2];Nf=Ia+40|0;if((Lf|0)!=q[Nf>>2]){a:{while(1){Lf=q[(Mf<<2)+Lf>>2];if(!n[q[q[Lf>>2]+24>>2]](Lf,Ff)){break a}Mf=Mf+1|0;Lf=q[Ia+36>>2];if(Mf>>>0<q[Nf>>2]-Lf>>2>>>0){continue}break}return 1}Ia=0}else{Ia=1}return Ia|0}function ec(Ia){Ia=Ia|0;var Ff=0,Of=0,Pf=0,Qf=0,Rf=0,Sf=0,Tf=0,Uf=0,Vf=0;Qf=T-16|0;T=Qf;Sf=Ia+36|0;Ff=q[Ia+8>>2]-q[Ia+4>>2]>>2;Of=q[Ia+40>>2];Rf=q[Ia+36>>2];Pf=Of-Rf>>2;a:{if(Ff>>>0>Pf>>>0){fc(Sf,Ff-Pf|0);break a}if(Ff>>>0>=Pf>>>0){break a}Pf=Rf+(Ff<<2)|0;if((Pf|0)!=(Of|0)){while(1){Of=Of+ -4|0;Ff=q[Of>>2];q[Of>>2]=0;if(Ff){n[q[q[Ff>>2]+4>>2]](Ff)}if((Of|0)!=(Pf|0)){continue}break}}q[Ia+40>>2]=Pf}Ff=1;Pf=Ia+8|0;Rf=Ia+4|0;b:{if(q[Pf>>2]==q[Rf>>2]){break b}Of=0;while(1){n[q[q[Ia>>2]+56>>2]](Qf+8|0,Ia,Of);Ff=q[Ia+36>>2];Vf=q[Qf+8>>2];q[Qf+8>>2]=0;Tf=Of<<2;Uf=Tf+Ff|0;Ff=q[Uf>>2];q[Uf>>2]=Vf;if(Ff){n[q[q[Ff>>2]+4>>2]](Ff)}Ff=q[Qf+8>>2];q[Qf+8>>2]=0;if(Ff){n[q[q[Ff>>2]+4>>2]](Ff)}Ff=q[Tf+q[Sf>>2]>>2];if(!Ff){Ff=0;break b}if(!(!(q[q[Ia+48>>2]+(Of>>>3&536870908)>>2]>>>(Of&31)&1)|Of>>>0>=t[Ia+52>>2])){Ub(Ff)}Ff=1;Of=Of+1|0;if(Of>>>0<q[Pf>>2]-q[Rf>>2]>>2>>>0){continue}break}}T=Qf+16|0;return Ff|0}function fc(Ia,Wf){var Xf=0,Yf=0,Zf=0,_f=0,$f=0,ag=0,bg=0,cg=0,dg=0;Yf=q[Ia+8>>2];Zf=Ia+4|0;Xf=q[Zf>>2];if(Yf-Xf>>2>>>0>=Wf>>>0){Ia=Wf<<2;cg=Zf,dg=pj(Xf,0,Ia)+Ia|0,q[cg>>2]=dg;return}a:{Zf=q[Ia>>2];_f=Xf-Zf>>2;$f=_f+Wf|0;if($f>>>0<1073741824){_f=_f<<2;Yf=Yf-Zf|0;bg=Yf>>1;Yf=Yf>>2>>>0<536870911?bg>>>0<$f>>>0?$f:bg:1073741823;if(Yf){if(Yf>>>0>=1073741824){break a}ag=ui(Yf<<2)}_f=_f+ag|0;pj(_f,0,Wf<<2);Wf=($f<<2)+ag|0;$f=(Yf<<2)+ag|0;if((Xf|0)!=(Zf|0)){while(1){Xf=Xf+ -4|0;Yf=q[Xf>>2];q[Xf>>2]=0;_f=_f+ -4|0;q[_f>>2]=Yf;if((Xf|0)!=(Zf|0)){continue}break}Zf=q[Ia>>2];Xf=q[Ia+4>>2]}q[Ia>>2]=_f;q[Ia+8>>2]=$f;q[Ia+4>>2]=Wf;if((Xf|0)!=(Zf|0)){while(1){Xf=Xf+ -4|0;Ia=q[Xf>>2];q[Xf>>2]=0;if(Ia){n[q[q[Ia>>2]+4>>2]](Ia)}if((Xf|0)!=(Zf|0)){continue}break}}if(Zf){ij(Zf)}return}Gi();F()}ob(2128);F()}function gc(Ia,Wf,eg){Ia=Ia|0;Wf=Wf|0;eg=eg|0;var fg=0,gg=0,hg=0,ig=0,jg=0,kg=0;gg=T-16|0;T=gg;fg=q[Wf+28>>2];hg=q[q[Wf+4>>2]+(eg<<2)>>2];ig=q[q[q[fg+4>>2]+8>>2]+(hg<<2)>>2];Wf=q[ig+28>>2];a:{if(Wf+ -1>>>0>=6){b:{if((Wf|0)!=9){break b}jg=q[fg+48>>2];Wf=ui(32);q[gg>>2]=Wf;q[gg+4>>2]=17;q[gg+8>>2]=-2147483616;o[Wf+17|0]=0;o[Wf+16|0]=r[2064];eg=r[2060]|r[2061]<<8|(r[2062]<<16|r[2063]<<24);fg=r[2056]|r[2057]<<8|(r[2058]<<16|r[2059]<<24);o[Wf+8|0]=fg;o[Wf+9|0]=fg>>>8;o[Wf+10|0]=fg>>>16;o[Wf+11|0]=fg>>>24;o[Wf+12|0]=eg;o[Wf+13|0]=eg>>>8;o[Wf+14|0]=eg>>>16;o[Wf+15|0]=eg>>>24;eg=r[2052]|r[2053]<<8|(r[2054]<<16|r[2055]<<24);fg=r[2048]|r[2049]<<8|(r[2050]<<16|r[2051]<<24);o[Wf|0]=fg;o[Wf+1|0]=fg>>>8;o[Wf+2|0]=fg>>>16;o[Wf+3|0]=fg>>>24;o[Wf+4|0]=eg;o[Wf+5|0]=eg>>>8;o[Wf+6|0]=eg>>>16;o[Wf+7|0]=eg>>>24;c:{d:{fg=jg+16|0;Wf=q[fg>>2];if(!Wf){break d}eg=fg;while(1){kg=q[Wf+16>>2]<(hg|0);eg=kg?eg:Wf;Wf=q[(kg<<2)+Wf>>2];if(Wf){continue}break}if((eg|0)==(fg|0)|(hg|0)<q[eg+16>>2]){break d}Wf=eg+20|0;if(!Jb(Wf,gg)){break d}Wf=Lg(Wf,gg,-1);break c}Wf=Lg(jg,gg,-1)}if(o[gg+11|0]<=-1){ij(q[gg>>2])}if((Wf|0)<1){break b}if(q[ig+56>>2]==1){Wf=ui(48);q[Wf>>2]=0;q[Wf+4>>2]=0;eg=Wf+40|0;q[eg>>2]=0;q[eg+4>>2]=0;q[Wf+32>>2]=0;q[Wf+36>>2]=0;q[Wf+24>>2]=0;q[Wf+28>>2]=0;q[Wf+16>>2]=0;q[Wf+20>>2]=0;q[Wf+8>>2]=0;q[Wf+12>>2]=0;rc(Wf);q[Wf+44>>2]=-1;q[eg>>2]=1280;q[Wf>>2]=5956;break a}Wf=ui(64);oe(Wf);break a}Wf=ui(36);Pb(Wf);break a}Wf=ui(40);rc(Wf)}q[Ia>>2]=Wf;T=gg+16|0}function hc(Ia){Ia=Ia|0;var Wf=0,eg=0,lg=0,mg=0,ng=0;q[Ia>>2]=1988;Wf=Ia+72|0;eg=q[Wf>>2];q[Wf>>2]=0;if(eg){n[q[q[eg>>2]+4>>2]](eg)}Wf=q[Ia+60>>2];if(Wf){q[Ia- -64>>2]=Wf;ij(Wf)}Wf=q[Ia+48>>2];if(Wf){ij(Wf)}eg=q[Ia+36>>2];if(eg){Wf=eg;ng=Ia+40|0;lg=q[ng>>2];mg=Wf;a:{if((Wf|0)==(lg|0)){break a}while(1){lg=lg+ -4|0;Wf=q[lg>>2];q[lg>>2]=0;if(Wf){n[q[q[Wf>>2]+4>>2]](Wf)}if((eg|0)!=(lg|0)){continue}break}mg=q[Ia+36>>2]}Wf=mg;q[ng>>2]=eg;ij(Wf)}q[Ia>>2]=1620;Wf=q[Ia+16>>2];if(Wf){q[Ia+20>>2]=Wf;ij(Wf)}Wf=q[Ia+4>>2];if(Wf){q[Ia+8>>2]=Wf;ij(Wf)}return Ia|0}function ic(q){q=q|0;ij(hc(q))}function jc(Ia,og){Ia=Ia|0;og=og|0;var pg=0,qg=0;qg=q[Ia+16>>2];pg=0;a:{if(q[Ia+20>>2]-qg>>2<=(og|0)){break a}og=q[(og<<2)+qg>>2];pg=0;if((og|0)<0){break a}Ia=q[q[Ia+36>>2]+(og<<2)>>2];pg=q[Ia+20>>2]-q[Ia+16>>2]>>2}return pg|0}function kc(Ia,og,rg){Ia=Ia|0;og=og|0;rg=rg|0;var sg=0,tg=0;sg=-1;tg=q[Ia+16>>2];a:{if(q[Ia+20>>2]-tg>>2<=(og|0)){break a}og=q[(og<<2)+tg>>2];if((og|0)<0){break a}sg=q[q[q[q[Ia+36>>2]+(og<<2)>>2]+16>>2]+(rg<<2)>>2]}return sg|0}function lc(Ia,og){Ia=Ia|0;og=og|0;var rg=0,ug=0;rg=q[Ia+16>>2];a:{if(q[Ia+20>>2]-rg>>2<=(og|0)){break a}og=q[rg+(og<<2)>>2];if((og|0)<0){break a}if(t[Ia+52>>2]<=og>>>0){mc(Ia+48|0,og+1|0)}ug=1;rg=q[Ia+48>>2]+(og>>>3&536870908)|0;q[rg>>2]=q[rg>>2]|1<<(og&31);rg=q[Ia+40>>2];Ia=q[Ia+36>>2];if(rg-Ia>>2>>>0<=og>>>0){break a}Ub(q[Ia+(og<<2)>>2])}return ug|0}function mc(Ia,og){var vg=0,wg=0,xg=0,yg=0,zg=0,Ag=0;wg=T-32|0;T=wg;a:{vg=q[Ia+4>>2];b:{if(vg>>>0<og>>>0){zg=q[Ia+8>>2];xg=zg<<5;yg=og-vg|0;c:{if(!(xg>>>0<yg>>>0|vg>>>0>xg-yg>>>0)){q[Ia+4>>2]=og;og=vg&31;Ia=q[Ia>>2]+(vg>>>3&536870908)|0;break c}q[wg+24>>2]=0;q[wg+16>>2]=0;q[wg+20>>2]=0;if((og|0)<=-1){break a}vg=wg+16|0;if(xg>>>0<=1073741822){og=og+31&-32;xg=zg<<6;og=xg>>>0<og>>>0?og:xg}else{og=2147483647}oc(vg,og);vg=q[Ia+4>>2];q[wg+20>>2]=vg+yg;og=q[wg+16>>2];d:{if((vg|0)<1){vg=0;break d}zg=q[Ia>>2];xg=vg>>>5<<2;og=qj(og,zg,xg)+xg|0;vg=vg&31;if(!vg){vg=0;break d}Ag=-1>>>32-vg;q[og>>2]=q[og>>2]&(Ag^-1)|q[xg+zg>>2]&Ag}q[wg+12>>2]=vg;q[wg+8>>2]=og;vg=q[wg+8>>2];og=q[wg+12>>2];xg=q[Ia>>2];q[Ia>>2]=q[wg+16>>2];q[wg+16>>2]=xg;zg=q[Ia+4>>2];q[Ia+4>>2]=q[wg+20>>2];q[wg+20>>2]=zg;Ia=Ia+8|0;zg=q[Ia>>2];q[Ia>>2]=q[wg+24>>2];q[wg+24>>2]=zg;if(xg){ij(xg)}Ia=vg}if(!yg){break b}if(og){vg=32-og|0;xg=vg>>>0>yg>>>0?yg:vg;q[Ia>>2]=q[Ia>>2]&(-1<<og&-1>>>vg-xg^-1);yg=yg-xg|0;Ia=Ia+4|0}og=Ia;Ia=yg>>>5<<2;og=pj(og,0,Ia);vg=yg&31;if(!vg){break b}Ia=Ia+og|0;q[Ia>>2]=q[Ia>>2]&(-1>>>32-vg^-1);break b}q[Ia+4>>2]=og}T=wg+32|0;return}Gi();F()}function nc(Ia,og){Ia=Ia|0;og=og|0;var Bg=0,Cg=0;Cg=q[Ia+16>>2];a:{if(q[Ia+20>>2]-Cg>>2<=(og|0)){break a}og=q[(og<<2)+Cg>>2];if((og|0)<0){break a}Ia=q[q[Ia+36>>2]+(og<<2)>>2];Bg=q[Ia+32>>2];if(Bg){break a}Bg=q[Ia+8>>2]}return Bg|0}function oc(Ia,og){var Dg=0,Eg=0;Dg=T-32|0;T=Dg;a:{b:{if(q[Ia+8>>2]<<5>>>0>=og>>>0){break b}q[Dg+24>>2]=0;q[Dg+16>>2]=0;q[Dg+20>>2]=0;if((og|0)<=-1){break a}og=(og+ -1>>>5)+1|0;Eg=ui(og<<2);q[Dg+24>>2]=og;q[Dg+20>>2]=0;q[Dg+16>>2]=Eg;og=q[Ia>>2];q[Dg+12>>2]=0;q[Dg+8>>2]=og;Eg=q[Ia+4>>2];q[Dg+4>>2]=Eg&31;q[Dg>>2]=og+(Eg>>>3&536870908);pc(Dg+16|0,Dg+8|0,Dg);og=q[Ia>>2];q[Ia>>2]=q[Dg+16>>2];q[Dg+16>>2]=og;Eg=q[Ia+4>>2];q[Ia+4>>2]=q[Dg+20>>2];q[Dg+20>>2]=Eg;Ia=Ia+8|0;Eg=q[Ia>>2];q[Ia>>2]=q[Dg+24>>2];q[Dg+24>>2]=Eg;if(!og){break b}ij(og)}T=Dg+32|0;return}Gi();F()}function pc(Ia,og,Fg){var Gg=0,Hg=0,Ig=0,Jg=0,Kg=0,Lg=0;Ig=T-32|0;T=Ig;Kg=q[Fg+4>>2];Gg=q[og+4>>2];Lg=q[Fg>>2];Jg=q[og>>2];og=(Kg-Gg|0)+(Lg-Jg<<3)|0;Fg=q[Ia+4>>2];Hg=og+Fg|0;q[Ia+4>>2]=Hg;a:{if(!(!Fg|(Hg+ -1^Fg+ -1)>>>0>31)){Ia=q[Ia>>2];break a}Ia=q[Ia>>2];if(Hg>>>0<=32){q[Ia>>2]=0;break a}q[(Hg+ -1>>>3&536870908)+Ia>>2]=0}Ia=(Fg>>>3&536870908)+Ia|0;Fg=Fg&31;b:{if((Fg|0)==(Gg|0)){c:{if((og|0)<1){break c}d:{if(!Gg){Fg=0;break d}Hg=32-Gg|0;Fg=(og|0)<(Hg|0)?og:Hg;Hg=-1<<Gg&-1>>>Hg-Fg;q[Ia>>2]=q[Ia>>2]&(Hg^-1)|Hg&q[Jg>>2];og=og-Fg|0;Gg=Fg+Gg|0;Fg=Gg&31;Ia=(Gg>>>3&536870908)+Ia|0;Jg=Jg+4|0}Gg=(og|0)/32|0;Hg=Gg<<2;Ia=qj(Ia,Jg,Hg)+Hg|0;Gg=og-(Gg<<5)|0;if((Gg|0)<1){Gg=Fg;break c}og=-1>>>32-Gg;q[Ia>>2]=q[Ia>>2]&(og^-1)|og&q[Hg+Jg>>2]}q[Ig+4>>2]=Gg;q[Ig>>2]=Ia;break b}q[Ig+28>>2]=Gg;q[Ig+24>>2]=Jg;q[Ig+20>>2]=Kg;q[Ig+16>>2]=Lg;q[Ig+12>>2]=Fg;q[Ig+8>>2]=Ia;qc(Ig,Ig+24|0,Ig+16|0,Ig+8|0)}T=Ig+32|0}function qc(Ia,og,Fg,Mg){var Ng=0,Og=0,Pg=0,Qg=0,Rg=0,Sg=0,Tg=0,Ug=0;Og=q[og>>2];Ng=q[Fg+4>>2]+(q[Fg>>2]-Og<<3)|0;Fg=q[og+4>>2];Pg=Ng-Fg|0;a:{if((Pg|0)<=0){Fg=q[Mg+4>>2];break a}b:{if(!Fg){Fg=q[Mg+4>>2];break b}Ng=q[Mg+4>>2];Sg=32-Ng|0;Tg=32-Fg|0;Qg=(Pg|0)<(Tg|0)?Pg:Tg;Rg=Sg>>>0<Qg>>>0?Sg:Qg;Ug=q[Mg>>2];Og=q[Og>>2]&(-1<<Fg&-1>>>Tg-Qg);q[Ug>>2]=q[Ug>>2]&(-1<<Ng&-1>>>Sg-Rg^-1)|(Ng>>>0>Fg>>>0?Og<<Ng-Fg:Og>>>Fg-Ng);Ng=Ng+Rg|0;Fg=Ng&31;q[Mg+4>>2]=Fg;Sg=Ug+(Ng>>>3&536870908)|0;q[Mg>>2]=Sg;Ng=Qg-Rg|0;if((Ng|0)>=1){q[Sg>>2]=q[Sg>>2]&(-1>>>32-Ng^-1)|Og>>>Rg+q[og+4>>2];q[Mg+4>>2]=Ng;Fg=Ng}Pg=Pg-Qg|0;Og=q[og>>2]+4|0;q[og>>2]=Og}Rg=-1<<Fg;Qg=32-Fg|0;c:{if((Pg|0)<32){Ng=Pg;break c}Sg=Rg^-1;while(1){Ng=q[Mg>>2];Og=q[Og>>2];q[Ng>>2]=Sg&q[Ng>>2]|Og<<Fg;q[Mg>>2]=Ng+4;q[Ng+4>>2]=Rg&q[Ng+4>>2]|Og>>>Qg;Og=q[og>>2]+4|0;q[og>>2]=Og;Tg=(Pg|0)>63;Ng=Pg+ -32|0;Pg=Ng;if(Tg){continue}break}}if((Ng|0)<1){break a}og=q[Mg>>2];Pg=(Qg|0)<(Ng|0)?Qg:Ng;Rg=q[og>>2]&(Rg&-1>>>Qg-Pg^-1);Qg=q[Og>>2]&-1>>>32-Ng;q[og>>2]=Rg|Qg<<Fg;Og=Fg+Pg|0;Fg=Og&31;q[Mg+4>>2]=Fg;Og=og+(Og>>>3&536870908)|0;q[Mg>>2]=Og;og=Ng-Pg|0;if((og|0)<1){break a}q[Og>>2]=q[Og>>2]&(-1>>>32-og^-1)|Qg>>>Pg;q[Mg+4>>2]=og;Fg=og}og=q[Mg>>2];q[Ia+4>>2]=Fg;q[Ia>>2]=og}function rc(Ia){Pb(Ia);q[Ia+36>>2]=0;q[Ia>>2]=2204}function sc(Ia,og,Fg){Ia=Ia|0;og=og|0;Fg=Fg|0;var Mg=0,Vg=0,Wg=0,Xg=0,Yg=0,Zg=0;Mg=T-16|0;T=Mg;a:{if(!Qb(Ia,og,Fg)){break a}if(Wg=(n[q[q[Ia>>2]+32>>2]](Ia)|0)==1,Xg=0,Yg=q[q[Ia+8>>2]+28>>2]+ -1>>>0>5,Yg?Wg:Xg){break a}Xg=Mg+8|0,Yg=Ia,Zg=ve(Fg,q[og+48>>2]),Wg=q[q[Ia>>2]+48>>2],n[Wg](Xg|0,Yg|0,Zg|0);og=q[Mg+8>>2];q[Mg+8>>2]=0;Fg=q[Ia+36>>2];q[Ia+36>>2]=og;b:{if(!Fg){q[Mg+8>>2]=0;break b}n[q[q[Fg>>2]+4>>2]](Fg);og=q[Mg+8>>2];q[Mg+8>>2]=0;if(og){n[q[q[og>>2]+4>>2]](og)}og=q[Ia+36>>2]}Vg=1;if(!og){break a}if(n[q[q[Ia>>2]+36>>2]](Ia,og)){break a}og=q[Ia+36>>2];q[Ia+36>>2]=0;if(!og){break a}n[q[q[og>>2]+4>>2]](og)}T=Mg+16|0;return Vg|0}function tc(Ia,og){Ia=Ia|0;og=og|0;var Fg=0,_g=0,$g=0,ah=0,bh=0,ch=0,dh=0,eh=0,fh=0,gh=0,hh=0;_g=T-16|0;T=_g;a:{Fg=q[Ia+4>>2];b:{c:{if(Fg){if(n[q[q[Ia>>2]+52>>2]](Ia,og,q[q[Fg+4>>2]+80>>2])){break c}break b}if(!n[q[q[Ia>>2]+52>>2]](Ia,og,0)){break b}}gh=1;if(!r[Ia+28|0]){break b}hh=q[Ia+32>>2];bh=q[Ia+8>>2];Fg=q[bh+80>>2];q[_g+8>>2]=0;q[_g>>2]=0;q[_g+4>>2]=0;if(Fg){if(Fg>>>0>=1073741824){break a}$g=Fg<<2;ah=ui($g);q[_g>>2]=ah;Fg=$g+ah|0;q[_g+8>>2]=Fg;pj(ah,0,$g);q[_g+4>>2]=Fg}Fg=q[og+4>>2];dh=q[og>>2];if((Fg|0)!=(dh|0)){ch=Fg-dh>>2;og=0;eh=r[bh+84|0];fh=bh+68|0;while(1){$g=q[dh+(og<<2)>>2];Fg=ah;if(!eh){$g=q[q[fh>>2]+($g<<2)>>2]}q[($g<<2)+Fg>>2]=og;og=og+1|0;if(og>>>0<ch>>>0){continue}break}}ch=q[q[q[Ia+4>>2]+4>>2]+80>>2];if(ch){eh=q[hh+68>>2];og=0;fh=r[bh+84|0];while(1){Ia=og;$g=eh+(og<<2)|0;Fg=ah;if(!fh){Ia=q[q[bh+68>>2]+(og<<2)>>2]}q[$g>>2]=q[(Ia<<2)+Fg>>2];og=og+1|0;if(og>>>0<ch>>>0){continue}break}}if(!ah){break b}q[_g+4>>2]=ah;ij(ah)}T=_g+16|0;return gh|0}Gi();F()}function uc(Ia,og,ih){Ia=Ia|0;og=og|0;ih=ih|0;var jh=0,kh=0,lh=0;jh=T-48|0;T=jh;lh=q[og+4>>2];og=q[og+12>>2];q[jh+40>>2]=0;kh=jh+32|0;q[kh>>2]=0;q[kh+4>>2]=0;q[jh+24>>2]=0;q[jh+28>>2]=0;q[jh+16>>2]=0;q[jh+20>>2]=0;q[jh+8>>2]=0;q[jh+12>>2]=0;vc(jh,ih,og,lh,jh+8|0);og=q[kh>>2];if(og){q[jh+36>>2]=og;ij(og)}q[Ia>>2]=q[jh>>2];T=jh+48|0}function vc(Ia,og,ih,mh,nh){var oh=0,ph=0;ph=q[q[q[mh+4>>2]+8>>2]+(ih<<2)>>2];if((og|0)==-1){og=ue(ih,mh)}a:{if((og|0)!=-2){if((n[q[q[mh>>2]+8>>2]](mh)|0)==1){Bc(Ia,mh,og,ih,nh);if(q[Ia>>2]){break a}q[Ia>>2]=0}oh=ui(44);Cc(oh,ph,nh)}q[Ia>>2]=oh}}function wc(Ia,og,ih){Ia=Ia|0;og=og|0;ih=ih|0;var mh=0,nh=0,qh=0,rh=0,sh=0,th=0,uh=0,vh=0,wh=0,xh=0;nh=T-32|0;T=nh;a:{b:{if(!q[q[Ia+8>>2]+80>>2]){mh=1;break b}o[nh+31|0]=254;sh=q[Ia+36>>2];if(sh){if(!n[q[q[Ia>>2]+40>>2]](Ia,sh)){break b}mh=q[Ia+36>>2];wh=nh,xh=n[q[q[mh>>2]+8>>2]](mh)|0,o[wh+31|0]=xh}mh=q[ih+20>>2];if((mh|0)<0?1:(mh|0)<=0?t[ih+16>>2]>0?0:1:0){$a(ih,q[ih+4>>2],nh+31|0,nh+32|0)}mh=q[Ia+36>>2];c:{if(!mh){break c}wh=nh,xh=n[q[q[mh>>2]+36>>2]](mh)|0,o[wh+16|0]=xh;mh=q[ih+20>>2];if((mh|0)>0?1:(mh|0)>=0?t[ih+16>>2]<=0?0:1:0){break c}$a(ih,q[ih+4>>2],nh+16|0,nh+17|0)}mh=q[Ia+32>>2];sh=q[mh+80>>2];th=o[mh+24|0];rh=q[q[mh>>2]>>2];uh=q[mh+48>>2];mh=0;q[nh+24>>2]=0;q[nh+16>>2]=0;q[nh+20>>2]=0;sh=w(sh,th);if(sh){if(sh>>>0>=1073741824){break a}qh=sh<<2;mh=ui(qh);q[nh+16>>2]=mh;vh=mh+qh|0;q[nh+24>>2]=vh;pj(mh,0,qh);q[nh+20>>2]=vh}qh=rh+uh|0;uh=Ia+36|0;rh=q[uh>>2];d:{e:{if(!rh){break e}n[q[q[rh>>2]+44>>2]](rh,qh,mh,sh,th,q[og>>2])|0;mh=q[uh>>2];if(!mh){mh=q[nh+16>>2];break e}if(n[q[q[mh>>2]+32>>2]](mh)){break d}mh=q[nh+16>>2];qh=q[Ia+36>>2]?mh:qh}yg(qh,sh,mh)}f:{g:{h:{i:{j:{mh=q[Ia+4>>2];if(!mh){break j}uh=q[mh+48>>2];q[nh+8>>2]=0;q[nh>>2]=0;q[nh+4>>2]=0;mh=ui(48);q[nh>>2]=mh;q[nh+4>>2]=34;q[nh+8>>2]=-2147483600;o[mh+34|0]=0;qh=r[2292]|r[2293]<<8;o[mh+32|0]=qh;o[mh+33|0]=qh>>>8;qh=r[2288]|r[2289]<<8|(r[2290]<<16|r[2291]<<24);rh=r[2284]|r[2285]<<8|(r[2286]<<16|r[2287]<<24);o[mh+24|0]=rh;o[mh+25|0]=rh>>>8;o[mh+26|0]=rh>>>16;o[mh+27|0]=rh>>>24;o[mh+28|0]=qh;o[mh+29|0]=qh>>>8;o[mh+30|0]=qh>>>16;o[mh+31|0]=qh>>>24;qh=r[2280]|r[2281]<<8|(r[2282]<<16|r[2283]<<24);rh=r[2276]|r[2277]<<8|(r[2278]<<16|r[2279]<<24);o[mh+16|0]=rh;o[mh+17|0]=rh>>>8;o[mh+18|0]=rh>>>16;o[mh+19|0]=rh>>>24;o[mh+20|0]=qh;o[mh+21|0]=qh>>>8;o[mh+22|0]=qh>>>16;o[mh+23|0]=qh>>>24;qh=r[2272]|r[2273]<<8|(r[2274]<<16|r[2275]<<24);rh=r[2268]|r[2269]<<8|(r[2270]<<16|r[2271]<<24);o[mh+8|0]=rh;o[mh+9|0]=rh>>>8;o[mh+10|0]=rh>>>16;o[mh+11|0]=rh>>>24;o[mh+12|0]=qh;o[mh+13|0]=qh>>>8;o[mh+14|0]=qh>>>16;o[mh+15|0]=qh>>>24;qh=r[2264]|r[2265]<<8|(r[2266]<<16|r[2267]<<24);rh=r[2260]|r[2261]<<8|(r[2262]<<16|r[2263]<<24);o[mh|0]=rh;o[mh+1|0]=rh>>>8;o[mh+2|0]=rh>>>16;o[mh+3|0]=rh>>>24;o[mh+4|0]=qh;o[mh+5|0]=qh>>>8;o[mh+6|0]=qh>>>16;o[mh+7|0]=qh>>>24;mh=Ng(uh,nh,1);if(o[nh+11|0]<=-1){ij(q[nh>>2])}if(mh){break j}if(!sh){break i}mh=0;th=q[nh+16>>2];og=0;while(1){og=q[th+(mh<<2)>>2]|og;mh=mh+1|0;if((sh|0)!=(mh|0)){continue}break}if(!og){break i}og=(z(og)>>>3^3)+1|0;break h}o[nh|0]=1;mh=q[ih+20>>2];if((mh|0)<0?1:(mh|0)<=0?t[ih+16>>2]>0?0:1:0){$a(ih,q[ih+4>>2],nh,nh+1|0)}mh=Ig(nh);sh=q[Ia+4>>2];if(sh){Me(mh,10-Mb(q[sh+48>>2])|0)}og=Ne(q[nh+16>>2],w(th,q[og+4>>2]-q[og>>2]>>2),th,mh,ih);va(mh,q[mh+4>>2]);mh=0;if(og){break g}break f}og=1}o[nh|0]=0;th=q[ih+20>>2];mh=th;qh=q[ih+16>>2];if((mh|0)<0?1:(mh|0)<=0?qh>>>0>0?0:1:0){$a(ih,q[ih+4>>2],nh,nh+1|0);qh=q[ih+16>>2];mh=q[ih+20>>2]}o[nh|0]=og;if((mh|0)<0?1:(mh|0)<=0?qh>>>0>0?0:1:0){$a(ih,q[ih+4>>2],nh,nh+1|0)}if((Dg(5)|0)!=(og|0)){if(!sh){break g}mh=0;th=ih+4|0;while(1){qh=q[ih+20>>2];if((qh|0)<0?1:(qh|0)<=0?t[ih+16>>2]>0?0:1:0){qh=q[nh+16>>2]+(mh<<2)|0;$a(ih,q[th>>2],qh,og+qh|0)}mh=mh+1|0;if((sh|0)!=(mh|0)){continue}break}break g}og=q[ih+20>>2];if((og|0)>0?1:(og|0)>=0?t[ih+16>>2]<=0?0:1:0){break g}og=q[nh+16>>2];$a(ih,q[ih+4>>2],og,og+(sh<<2)|0)}mh=1;Ia=q[Ia+36>>2];if(!Ia){break f}n[q[q[Ia>>2]+40>>2]](Ia,ih)|0}Ia=q[nh+16>>2];if(!Ia){break b}q[nh+20>>2]=Ia;ij(Ia)}T=nh+32|0;return mh|0}Gi();F()}function xc(Ia,og,ih){Ia=Ia|0;og=og|0;ih=ih|0;var yh=0,zh=0,Ah=0,Bh=0,Ch=0,Dh=0,Eh=0;yh=og+4|0;zh=q[Ia+8>>2];Ah=zh+24|0;Bh=o[Ah|0];yc(Ia,q[yh>>2]-q[og>>2]>>2,Bh,ih);og=q[og>>2];Ch=q[yh>>2];if((og|0)!=(Ch|0)){Ia=q[Ia+32>>2];Dh=q[q[Ia>>2]>>2]+q[Ia+48>>2]|0;Ia=0;Eh=zh+68|0;while(1){ih=q[og>>2];yh=zh;if(!r[zh+84|0]){ih=q[q[Eh>>2]+(ih<<2)>>2]}if(!Lb(yh,ih,o[Ah|0],(Ia<<2)+Dh|0)){return 0}Ia=Ia+Bh|0;og=og+4|0;if((Ch|0)!=(og|0)){continue}break}}return 1}function yc(Ia,og,ih,Fh){var Gh=0,Hh=0,Ih=0,Jh=0;Gh=T-80|0;T=Gh;Hh=rb(Gh+16|0);Ih=q[q[Ia+8>>2]+56>>2];Jh=ih<<24>>24;ih=w(Dg(5),ih);sb(Hh,Ih,0,Jh,5,ih,ih>>31);ih=ui(96);Hh=vb(ih,Hh);q[Gh+8>>2]=ih;xb(Hh,og);q[Gh>>2]=0;ih=q[Gh+8>>2];q[Gh+8>>2]=0;Hh=Ia+32|0;og=q[Hh>>2];q[Hh>>2]=ih;a:{if(!og){q[Gh>>2]=0;break a}qa(og);og=q[Gh>>2];q[Gh>>2]=0;if(!og){break a}qa(og)}b:{if(!Fh){break b}Ia=q[Ia+32>>2];o[Ia+84|0]=0;ih=q[Ia+68>>2];og=q[Ia+72>>2]-ih>>2;if(og>>>0<Fh>>>0){qb(Ia+68|0,Fh-og|0,2420);break b}if(og>>>0<=Fh>>>0){break b}q[Ia+72>>2]=ih+(Fh<<2)}Ia=q[Gh+8>>2];q[Gh+8>>2]=0;if(Ia){qa(Ia)}T=Gh+80|0}function zc(Ia){Ia=Ia|0;var og=0,ih=0;q[Ia>>2]=2204;ih=Ia+36|0;og=q[ih>>2];q[ih>>2]=0;if(og){n[q[q[og>>2]+4>>2]](og)}q[Ia>>2]=1884;ih=Ia+32|0;og=q[ih>>2];q[ih>>2]=0;if(og){qa(og)}og=q[Ia+16>>2];if(og){q[Ia+20>>2]=og;ij(og)}return Ia|0}function Ac(Ia){Ia=Ia|0;var Fh=0,Kh=0;q[Ia>>2]=2204;Kh=Ia+36|0;Fh=q[Kh>>2];q[Kh>>2]=0;if(Fh){n[q[q[Fh>>2]+4>>2]](Fh)}q[Ia>>2]=1884;Kh=Ia+32|0;Fh=q[Kh>>2];q[Kh>>2]=0;if(Fh){qa(Fh)}Fh=q[Ia+16>>2];if(Fh){q[Ia+20>>2]=Fh;ij(Fh)}ij(Ia)}function Bc(Ia,Lh,Mh,Nh,Oh){var Ph=0,Qh=0,Rh=0,Sh=0;Ph=T-32|0;T=Ph;Rh=q[q[q[Lh+4>>2]+8>>2]+(Nh<<2)>>2];a:{b:{if((n[q[q[Lh>>2]+8>>2]](Lh)|0)!=1|Mh+ -1>>>0>5){break b}Sh=n[q[q[Lh>>2]+52>>2]](Lh)|0;Qh=n[q[q[Lh>>2]+60>>2]](Lh,Nh)|0;if(!(Qh?Sh:0)){q[Ia>>2]=0;break a}Nh=n[q[q[Lh>>2]+56>>2]](Lh,Nh)|0;if(Nh){Lh=q[Lh+56>>2];q[Ph+20>>2]=Nh;q[Ph+16>>2]=Lh;q[Ph+28>>2]=Qh;q[Ph+24>>2]=Qh+12;Dc(Ia,Mh,Rh,Oh,Ph+16|0);if(q[Ia>>2]){break a}q[Ia>>2]=0;break b}Lh=q[Lh+56>>2];q[Ph+20>>2]=Sh;q[Ph+16>>2]=Lh;q[Ph+28>>2]=Qh;q[Ph+24>>2]=Qh+12;Ec(Ia,Mh,Rh,Oh,Ph+16|0);if(q[Ia>>2]){break a}q[Ia>>2]=0}q[Ia>>2]=0}T=Ph+32|0}function Cc(Ia,Lh,Mh){var Nh=0,Oh=0,Th=0,Uh=0,Vh=0,Wh=0,Xh=0,Yh=0;q[Ia>>2]=3140;q[Ia+4>>2]=Lh;Lh=q[Mh+8>>2];Nh=q[Mh+12>>2];Oh=q[Mh+16>>2];Uh=q[Mh+20>>2];Vh=q[Mh>>2];Wh=q[Mh+4>>2];q[Ia+40>>2]=0;Th=Ia+32|0;q[Th>>2]=0;q[Th+4>>2]=0;q[Ia+24>>2]=Oh;q[Ia+28>>2]=Uh;q[Ia+16>>2]=Lh;q[Ia+20>>2]=Nh;q[Ia+8>>2]=Vh;q[Ia+12>>2]=Wh;a:{Lh=q[Mh+28>>2]-q[Mh+24>>2]|0;b:{if(!Lh){break b}Nh=Lh>>2;if(Nh>>>0>=1073741824){break a}Lh=ui(Lh);q[Ia+32>>2]=Lh;Oh=Ia+36|0;q[Oh>>2]=Lh;q[Ia+40>>2]=Lh+(Nh<<2);Nh=q[Mh+24>>2];Mh=q[Mh+28>>2]-Nh|0;if((Mh|0)<1){break b}Xh=Oh,Yh=oj(Lh,Nh,Mh)+Mh|0,q[Xh>>2]=Yh}q[Ia>>2]=5776;return}Gi();F()}function Dc(Ia,Lh,Mh,Zh,_h){var $h=0;a:{Lh=Lh+ -1|0;b:{if(Lh>>>0>5){break b}c:{switch(Lh-1|0){default:Lh=ui(60);Fc(Lh,Mh,Zh,_h);q[Lh>>2]=2432;break a;case 2:Lh=ui(168);Gc(Lh,Mh,Zh,_h);break a;case 3:Lh=ui(104);Fc(Lh,Mh,Zh,_h);q[Lh+76>>2]=0;q[Lh+80>>2]=0;q[Lh+60>>2]=0;q[Lh+64>>2]=0;q[Lh>>2]=3444;q[Lh+84>>2]=0;Mh=q[_h+4>>2];q[Lh+88>>2]=q[_h>>2];q[Lh+92>>2]=Mh;Mh=q[_h+12>>2];q[Lh+96>>2]=q[_h+8>>2];q[Lh+100>>2]=Mh;break a;case 0:case 1:break b;case 4:break c}}$h=ui(140);Fc($h,Mh,Zh,_h);q[$h>>2]=3680;Lh=$h- -64|0;q[Lh>>2]=0;q[Lh+4>>2]=0;Lh=q[_h+4>>2];q[$h+72>>2]=q[_h>>2];q[$h+76>>2]=Lh;Lh=q[_h+12>>2];q[$h+80>>2]=q[_h+8>>2];q[$h+84>>2]=Lh;q[$h+92>>2]=-1;q[$h+96>>2]=-1;q[$h+88>>2]=1;q[$h+60>>2]=3916;q[$h+100>>2]=-1;q[$h+104>>2]=-1;we($h+108|0)}q[Ia>>2]=$h;return}q[Ia>>2]=Lh}function Ec(Ia,Lh,Mh,Zh,_h){var ai=0;a:{Lh=Lh+ -1|0;b:{if(Lh>>>0>5){break b}c:{switch(Lh-1|0){default:Lh=ui(60);Hc(Lh,Mh,Zh,_h);q[Lh>>2]=4308;break a;case 2:Lh=ui(168);Ic(Lh,Mh,Zh,_h);break a;case 3:Lh=ui(104);Hc(Lh,Mh,Zh,_h);q[Lh+76>>2]=0;q[Lh+80>>2]=0;q[Lh+60>>2]=0;q[Lh+64>>2]=0;q[Lh>>2]=4968;q[Lh+84>>2]=0;Mh=q[_h+4>>2];q[Lh+88>>2]=q[_h>>2];q[Lh+92>>2]=Mh;Mh=q[_h+12>>2];q[Lh+96>>2]=q[_h+8>>2];q[Lh+100>>2]=Mh;break a;case 0:case 1:break b;case 4:break c}}ai=ui(140);Hc(ai,Mh,Zh,_h);q[ai>>2]=5192;Lh=ai- -64|0;q[Lh>>2]=0;q[Lh+4>>2]=0;Lh=q[_h+4>>2];q[ai+72>>2]=q[_h>>2];q[ai+76>>2]=Lh;Lh=q[_h+12>>2];q[ai+80>>2]=q[_h+8>>2];q[ai+84>>2]=Lh;q[ai+92>>2]=-1;q[ai+96>>2]=-1;q[ai+88>>2]=1;q[ai+60>>2]=5412;q[ai+100>>2]=-1;q[ai+104>>2]=-1;we(ai+108|0)}q[Ia>>2]=ai;return}q[Ia>>2]=Lh}function Fc(Ia,Lh,Mh,Zh){var _h=0,bi=0,ci=0,di=0,ei=0,fi=0,gi=0,hi=0;q[Ia>>2]=3140;q[Ia+4>>2]=Lh;Lh=q[Mh+8>>2];_h=q[Mh+12>>2];bi=q[Mh+16>>2];di=q[Mh+20>>2];ei=q[Mh>>2];fi=q[Mh+4>>2];q[Ia+40>>2]=0;ci=Ia+32|0;q[ci>>2]=0;q[ci+4>>2]=0;q[Ia+24>>2]=bi;q[Ia+28>>2]=di;q[Ia+16>>2]=Lh;q[Ia+20>>2]=_h;q[Ia+8>>2]=ei;q[Ia+12>>2]=fi;a:{Lh=q[Mh+28>>2]-q[Mh+24>>2]|0;b:{if(!Lh){break b}_h=Lh>>2;if(_h>>>0>=1073741824){break a}Lh=ui(Lh);q[Ia+32>>2]=Lh;bi=Ia+36|0;q[bi>>2]=Lh;q[Ia+40>>2]=Lh+(_h<<2);_h=q[Mh+24>>2];Mh=q[Mh+28>>2]-_h|0;if((Mh|0)<1){break b}gi=bi,hi=oj(Lh,_h,Mh)+Mh|0,q[gi>>2]=hi}q[Ia>>2]=3084;Lh=q[Zh+4>>2];q[Ia+44>>2]=q[Zh>>2];q[Ia+48>>2]=Lh;Lh=q[Zh+12>>2];q[Ia+52>>2]=q[Zh+8>>2];q[Ia+56>>2]=Lh;return}Gi();F()}function Gc(Ia,Lh,Mh,Zh){Fc(Ia,Lh,Mh,Zh);q[Ia+60>>2]=0;q[Ia+64>>2]=0;q[Ia>>2]=3196;q[Ia+68>>2]=0;q[Ia+72>>2]=0;q[Ia+76>>2]=0;q[Ia+80>>2]=0;q[Ia+84>>2]=0;q[Ia+88>>2]=0;q[Ia+92>>2]=0;q[Ia+96>>2]=0;q[Ia+100>>2]=0;q[Ia+104>>2]=0;q[Ia+108>>2]=0;Fe(Ia+112|0);q[Ia+160>>2]=0;q[Ia+152>>2]=0;q[Ia+156>>2]=0}function Hc(Ia,Lh,Mh,Zh){var ii=0,ji=0,ki=0,li=0,mi=0,ni=0,oi=0,pi=0;q[Ia>>2]=3140;q[Ia+4>>2]=Lh;Lh=q[Mh+8>>2];ii=q[Mh+12>>2];ji=q[Mh+16>>2];li=q[Mh+20>>2];mi=q[Mh>>2];ni=q[Mh+4>>2];q[Ia+40>>2]=0;ki=Ia+32|0;q[ki>>2]=0;q[ki+4>>2]=0;q[Ia+24>>2]=ji;q[Ia+28>>2]=li;q[Ia+16>>2]=Lh;q[Ia+20>>2]=ii;q[Ia+8>>2]=mi;q[Ia+12>>2]=ni;a:{Lh=q[Mh+28>>2]-q[Mh+24>>2]|0;b:{if(!Lh){break b}ii=Lh>>2;if(ii>>>0>=1073741824){break a}Lh=ui(Lh);q[Ia+32>>2]=Lh;ji=Ia+36|0;q[ji>>2]=Lh;q[Ia+40>>2]=Lh+(ii<<2);ii=q[Mh+24>>2];Mh=q[Mh+28>>2]-ii|0;if((Mh|0)<1){break b}oi=ji,pi=oj(Lh,ii,Mh)+Mh|0,q[oi>>2]=pi}q[Ia>>2]=4676;Lh=q[Zh+4>>2];q[Ia+44>>2]=q[Zh>>2];q[Ia+48>>2]=Lh;Lh=q[Zh+12>>2];q[Ia+52>>2]=q[Zh+8>>2];q[Ia+56>>2]=Lh;return}Gi();F()}function Ic(Ia,Lh,Mh,Zh){Hc(Ia,Lh,Mh,Zh);q[Ia+60>>2]=0;q[Ia+64>>2]=0;q[Ia>>2]=4732;q[Ia+68>>2]=0;q[Ia+72>>2]=0;q[Ia+76>>2]=0;q[Ia+80>>2]=0;q[Ia+84>>2]=0;q[Ia+88>>2]=0;q[Ia+92>>2]=0;q[Ia+96>>2]=0;q[Ia+100>>2]=0;q[Ia+104>>2]=0;q[Ia+108>>2]=0;Fe(Ia+112|0);q[Ia+160>>2]=0;q[Ia+152>>2]=0;q[Ia+156>>2]=0}function Jc(Ia){Ia=Ia|0;var Lh=0;q[Ia>>2]=3140;Lh=q[Ia+32>>2];if(Lh){q[Ia+36>>2]=Lh;ij(Lh)}return Ia|0}function Kc(Ia){Ia=Ia|0;var Mh=0;q[Ia>>2]=3140;Mh=q[Ia+32>>2];if(Mh){q[Ia+36>>2]=Mh;ij(Mh)}ij(Ia)}function Lc(Ia){Ia=Ia|0;return q[Ia+4>>2]}function Mc(Ia){Ia=Ia|0;var Zh=0;if(!(!q[Ia+52>>2]|(!q[Ia+44>>2]|!q[Ia+48>>2]))){Zh=q[Ia+56>>2]!=0}return Zh|0}function Nc(q,Ia){q=q|0;Ia=Ia|0;return-1}function Oc(Ia,qi){Ia=Ia|0;qi=qi|0;var ri=0,si=0,ti=0,ui=0;ri=T-16|0;T=ri;q[ri+12>>2]=q[Ia+12>>2];si=q[qi+20>>2];ti=si;ui=q[qi+16>>2];if((si|0)<0?1:(si|0)<=0?ui>>>0>0?0:1:0){$a(qi,q[qi+4>>2],ri+12|0,ri+16|0);ui=q[qi+16>>2];ti=q[qi+20>>2]}q[ri+8>>2]=q[Ia+16>>2];if((ti|0)<0?1:(ti|0)<=0?ui>>>0>0?0:1:0){$a(qi,q[qi+4>>2],ri+8|0,ri+12|0)}T=ri+16|0;return 1}function Pc(Ia,qi,vi,wi,xi,yi){Ia=Ia|0;qi=qi|0;vi=vi|0;wi=wi|0;xi=xi|0;yi=yi|0;var zi=0,Ai=0,Bi=0,Ci=0,Di=0,Ei=0,Fi=0,Gi=0,Ii=0,Ji=0,Ki=0,Li=0,Mi=0,Ni=0,Oi=0,Pi=0,Qi=0,Ri=0,Si=0,Ti=0,Ui=0;q[Ia+8>>2]=xi;zi=Ia+32|0;Di=q[zi>>2];yi=q[Ia+36>>2]-Di>>2;a:{if(yi>>>0<xi>>>0){Qc(zi,xi-yi|0);break a}if(yi>>>0<=xi>>>0){break a}q[Ia+36>>2]=Di+(xi<<2)}b:{if(!wi){break b}Di=1;zi=q[qi>>2];c:{if((wi|0)<=1){yi=zi;break c}yi=zi;while(1){Bi=q[(Di<<2)+qi>>2];Ii=(Bi|0)<(yi|0);yi=Ii?Bi:yi;zi=Ii?zi:(Bi|0)>(zi|0)?Bi:zi;Di=Di+1|0;if((Di|0)!=(wi|0)){continue}break}}q[Ia+16>>2]=zi;q[Ia+12>>2]=yi;wi=(zi>>31)-((yi>>31)+(zi>>>0<yi>>>0)|0)|0;yi=zi-yi|0;if(!wi&yi>>>0>2147483646|wi>>>0>0){break b}wi=yi+1|0;q[Ia+20>>2]=wi;zi=Ia+24|0;yi=(wi|0)/2|0;q[zi>>2]=yi;q[Ia+28>>2]=0-yi;if(wi&1){break b}q[zi>>2]=yi+ -1}wi=(xi&1073741823)!=(xi|0)?-1:xi<<2;Di=pj(ui(wi),0,wi);wi=q[Ia+56>>2];Ni=q[wi>>2];wi=q[wi+4>>2]-Ni|0;if((wi|0)>=5){Mi=q[Ia+48>>2];Ui=q[Ia+52>>2];Gi=Ia+8|0;Ji=Ia+16|0;Ki=Ia+32|0;Qi=Ia+12|0;Ri=Ia+28|0;Li=Ia+20|0;Si=Ia+24|0;Ti=wi>>2;Bi=Ti;while(1){Ii=Bi;d:{e:{Bi=Bi+ -1|0;if(Ti>>>0>Bi>>>0){yi=w(xi,Bi);wi=q[(Bi<<2)+Ni>>2];if((wi|0)==-1|q[q[Mi>>2]+(wi>>>3&536870908)>>2]>>>(wi&31)&1){break e}wi=q[q[q[Mi+64>>2]+12>>2]+(wi<<2)>>2];if((wi|0)==-1){break e}Ai=q[Ui>>2];zi=q[Mi+28>>2];Ci=q[Ai+(q[zi+(wi<<2)>>2]<<2)>>2];if((Ci|0)>=(Bi|0)){break e}Ei=wi+1|0;Ei=q[Ai+(q[zi+(((Ei>>>0)%3|0?Ei:wi+ -2|0)<<2)>>2]<<2)>>2];if((Ei|0)>=(Bi|0)){break e}wi=q[Ai+(q[zi+(wi+((wi>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((wi|0)>=(Bi|0)){break e}if((xi|0)>=1){wi=w(wi,xi);Ai=w(xi,Ei);Ci=w(xi,Ci);zi=0;while(1){q[(zi<<2)+Di>>2]=(q[(wi+zi<<2)+qi>>2]+q[(zi+Ai<<2)+qi>>2]|0)-q[(zi+Ci<<2)+qi>>2];zi=zi+1|0;if((zi|0)!=(xi|0)){continue}break}}wi=q[Gi>>2];if((wi|0)<1){break d}yi=yi<<2;Oi=yi+vi|0;Pi=qi+yi|0;yi=Di;Ai=0;while(1){zi=0;f:{if((wi|0)<=0){wi=q[Ki>>2];break f}while(1){Ci=zi<<2;Ei=q[Ci+yi>>2];Fi=q[Ji>>2];g:{if((Ei|0)>(Fi|0)){wi=q[Ki>>2];q[Ci+wi>>2]=Fi;break g}wi=q[Ki>>2];Ci=Ci+wi|0;Fi=q[Qi>>2];if((Ei|0)<(Fi|0)){q[Ci>>2]=Fi;break g}q[Ci>>2]=Ei}zi=zi+1|0;if((zi|0)<q[Gi>>2]){continue}break}}zi=Ai<<2;yi=zi+Oi|0;zi=q[zi+Pi>>2]-q[wi+zi>>2]|0;q[yi>>2]=zi;h:{if((zi|0)<q[Ri>>2]){zi=zi+q[Li>>2]|0}else{if((zi|0)<=q[Si>>2]){break h}zi=zi-q[Li>>2]|0}q[yi>>2]=zi}yi=wi;Ai=Ai+1|0;wi=q[Gi>>2];if((Ai|0)<(wi|0)){continue}break}break d}Hi();F()}wi=q[Gi>>2];if((wi|0)<1){break d}yi=yi<<2;Oi=yi+vi|0;Pi=qi+yi|0;yi=(w(Ii+ -2|0,xi)<<2)+qi|0;Ai=0;while(1){zi=0;i:{if((wi|0)<=0){wi=q[Ki>>2];break i}while(1){Ci=zi<<2;Ei=q[Ci+yi>>2];Fi=q[Ji>>2];j:{if((Ei|0)>(Fi|0)){wi=q[Ki>>2];q[Ci+wi>>2]=Fi;break j}wi=q[Ki>>2];Ci=Ci+wi|0;Fi=q[Qi>>2];if((Ei|0)<(Fi|0)){q[Ci>>2]=Fi;break j}q[Ci>>2]=Ei}zi=zi+1|0;if((zi|0)<q[Gi>>2]){continue}break}}zi=Ai<<2;yi=zi+Oi|0;zi=q[zi+Pi>>2]-q[wi+zi>>2]|0;q[yi>>2]=zi;k:{if((zi|0)<q[Ri>>2]){zi=zi+q[Li>>2]|0}else{if((zi|0)<=q[Si>>2]){break k}zi=zi-q[Li>>2]|0}q[yi>>2]=zi}yi=wi;Ai=Ai+1|0;wi=q[Gi>>2];if((Ai|0)<(wi|0)){continue}break}}if((Ii|0)>2){continue}break}}if((xi|0)>=1){pj(Di,0,xi<<2)}Bi=Ia+8|0;wi=q[Bi>>2];if((wi|0)>=1){Ki=Ia+16|0;yi=Ia+32|0;Li=Ia+12|0;Mi=Ia+28|0;Ii=Ia+20|0;Ni=Ia+24|0;Ia=Di;Ai=0;while(1){zi=0;l:{if((wi|0)<=0){wi=q[yi>>2];break l}while(1){xi=zi<<2;Gi=q[xi+Ia>>2];Ji=q[Ki>>2];m:{if((Gi|0)>(Ji|0)){wi=q[yi>>2];q[xi+wi>>2]=Ji;break m}wi=q[yi>>2];xi=xi+wi|0;Ji=q[Li>>2];if((Gi|0)<(Ji|0)){q[xi>>2]=Ji;break m}q[xi>>2]=Gi}zi=zi+1|0;if((zi|0)<q[Bi>>2]){continue}break}}xi=Ai<<2;Ia=xi+vi|0;xi=q[qi+xi>>2]-q[wi+xi>>2]|0;q[Ia>>2]=xi;n:{if((xi|0)<q[Mi>>2]){xi=xi+q[Ii>>2]|0}else{if((xi|0)<=q[Ni>>2]){break n}xi=xi-q[Ii>>2]|0}q[Ia>>2]=xi}Ia=wi;Ai=Ai+1|0;wi=q[Bi>>2];if((Ai|0)<(wi|0)){continue}break}}ij(Di);return 1}function Qc(Ia,qi){var vi=0,wi=0,xi=0,yi=0,Hi=0,Vi=0,Wi=0,Xi=0,Yi=0;wi=q[Ia+8>>2];xi=Ia+4|0;vi=q[xi>>2];if(wi-vi>>2>>>0>=qi>>>0){Ia=qi<<2;Xi=xi,Yi=pj(vi,0,Ia)+Ia|0,q[Xi>>2]=Yi;return}a:{xi=q[Ia>>2];Hi=vi-xi|0;vi=Hi>>2;yi=vi+qi|0;if(yi>>>0<1073741824){Wi=vi<<2;wi=wi-xi|0;vi=wi>>1;wi=wi>>2>>>0<536870911?vi>>>0<yi>>>0?yi:vi:1073741823;vi=0;b:{if(!wi){break b}if(wi>>>0>=1073741824){break a}Vi=ui(wi<<2);vi=Vi}pj(Wi+vi|0,0,qi<<2);qi=vi+(yi<<2)|0;yi=vi+(wi<<2)|0;if((Hi|0)>=1){oj(Vi,xi,Hi)}q[Ia>>2]=vi;q[Ia+8>>2]=yi;q[Ia+4>>2]=qi;if(xi){ij(xi)}return}Gi();F()}ob(2352);F()}function Rc(Ia){Ia=Ia|0;var qi=0;q[Ia>>2]=3196;qi=q[Ia+152>>2];if(qi){q[Ia+156>>2]=qi;ij(qi)}qi=q[Ia+112>>2];if(qi){q[Ia+116>>2]=qi;ij(qi)}qi=q[Ia+96>>2];if(qi){ij(qi)}qi=q[Ia+84>>2];if(qi){ij(qi)}qi=q[Ia+72>>2];if(qi){ij(qi)}qi=q[Ia+60>>2];if(qi){ij(qi)}q[Ia>>2]=3140;qi=q[Ia+32>>2];if(qi){q[Ia+36>>2]=qi;ij(qi)}return Ia|0}function Sc(q){q=q|0;ij(Rc(q))}function Tc(q){q=q|0;return 4}function Uc(Ia,Zi){Ia=Ia|0;Zi=Zi|0;var _i=0,$i=0,aj=0,bj=0,cj=0,dj=0,ej=0,fj=0;$i=T-32|0;T=$i;dj=1;while(1){cj=w(_i,12)+Ia|0;aj=cj- -64|0;Db(q[aj>>2],Zi);_i=_i+1|0;if(q[aj>>2]){bj=we($i);ze(bj);aj=q[aj>>2]-_i|0;if((aj|0)>=0){fj=cj+60|0;while(1){cj=0;while(1){ej=aj+cj|0;Ae(bj,q[q[fj>>2]+(ej>>>3&536870908)>>2]>>>(ej&31)&1);cj=cj+1|0;if((dj|0)!=(cj|0)){continue}break}aj=aj-_i|0;if((aj|0)>=0){continue}break}}Be(bj,Zi);xe(bj)}dj=dj+1|0;if((_i|0)!=4){continue}break}q[$i>>2]=q[Ia+12>>2];dj=q[Zi+20>>2];_i=dj;bj=q[Zi+16>>2];if((_i|0)<0?1:(_i|0)<=0?bj>>>0>0?0:1:0){$a(Zi,q[Zi+4>>2],$i,$i+4|0);bj=q[Zi+16>>2];_i=q[Zi+20>>2]}q[$i>>2]=q[Ia+16>>2];if((_i|0)<0?1:(_i|0)<=0?bj>>>0>0?0:1:0){$a(Zi,q[Zi+4>>2],$i,$i+4|0)}T=$i+32|0;return 1}function Vc(Ia,Zi,gj,hj,jj,kj){Ia=Ia|0;Zi=Zi|0;gj=gj|0;hj=hj|0;jj=jj|0;kj=kj|0;var lj=0,mj=0,nj=0,oj=0,qj=0,rj=0,sj=0,tj=0,uj=0,vj=0,wj=0,xj=0,yj=0,zj=0,Aj=0,Bj=0,Cj=0,Dj=0,Ej=0,Fj=0,Gj=0,Hj=0,Ij=0,Jj=0,Kj=0,Lj=0,Mj=0,Nj=0,Oj=0,Pj=0,Rj=0,Sj=0,Tj=0,Uj=0,Vj=0,Wj=0,Xj=0,Yj=0,Zj=0,_j=0,$j=0;mj=T-240|0;T=mj;q[Ia+8>>2]=jj;nj=Ia+32|0;lj=q[nj>>2];kj=q[Ia+36>>2]-lj>>2;a:{if(kj>>>0<jj>>>0){Qc(nj,jj-kj|0);break a}if(kj>>>0<=jj>>>0){break a}q[Ia+36>>2]=lj+(jj<<2)}b:{if(!hj){break b}oj=1;lj=q[Zi>>2];c:{if((hj|0)<=1){nj=lj;break c}nj=lj;while(1){kj=q[(oj<<2)+Zi>>2];qj=(kj|0)<(nj|0);nj=qj?kj:nj;lj=qj?lj:(kj|0)>(lj|0)?kj:lj;oj=oj+1|0;if((oj|0)!=(hj|0)){continue}break}}q[Ia+16>>2]=lj;q[Ia+12>>2]=nj;hj=nj;kj=(lj>>31)-((lj>>>0<hj>>>0)+(hj>>31)|0)|0;hj=lj-hj|0;if(!kj&hj>>>0>2147483646|kj>>>0>0){break b}hj=hj+1|0;q[Ia+20>>2]=hj;nj=Ia+24|0;kj=(hj|0)/2|0;q[nj>>2]=kj;q[Ia+28>>2]=0-kj;if(hj&1){break b}q[nj>>2]=kj+ -1}Tj=q[Ia+52>>2];xj=q[Ia+48>>2];q[mj+200>>2]=0;q[mj+204>>2]=0;q[mj+192>>2]=0;q[mj+196>>2]=0;q[mj+184>>2]=0;q[mj+188>>2]=0;hj=mj+176|0;q[hj>>2]=0;q[hj+4>>2]=0;q[mj+168>>2]=0;q[mj+172>>2]=0;q[mj+160>>2]=0;q[mj+164>>2]=0;d:{if(!jj){oj=0;hj=0;break d}Qc(mj+160|0,jj);oj=q[hj>>2];hj=q[mj+172>>2]}kj=oj-hj>>2;e:{if(kj>>>0>=jj>>>0){if(kj>>>0<=jj>>>0){break e}q[mj+176>>2]=hj+(jj<<2);break e}Qc(mj+160|12,jj-kj|0)}kj=q[mj+184>>2];hj=q[mj+188>>2]-kj>>2;f:{if(hj>>>0>=jj>>>0){if(hj>>>0<=jj>>>0){break f}q[mj+188>>2]=kj+(jj<<2);break f}Qc(mj+184|0,jj-hj|0)}kj=q[mj+196>>2];hj=q[mj+200>>2]-kj>>2;g:{if(hj>>>0>=jj>>>0){if(hj>>>0<=jj>>>0){break g}q[mj+200>>2]=kj+(jj<<2);break g}Qc(mj+196|0,jj-hj|0)}q[mj+152>>2]=0;q[mj+144>>2]=0;q[mj+148>>2]=0;h:{i:{if(jj){if(jj>>>0>=1073741824){break i}hj=jj<<2;kj=ui(hj);q[mj+144>>2]=kj;nj=hj+kj|0;q[mj+152>>2]=nj;pj(kj,0,hj);q[mj+148>>2]=nj}Hj=Ia+152|0;kj=q[Ia+152>>2];hj=q[Ia+156>>2]-kj>>2;j:{if(hj>>>0<jj>>>0){Qc(Hj,jj-hj|0);break j}if(hj>>>0<=jj>>>0){break j}q[Ia+156>>2]=kj+(jj<<2)}q[mj+120>>2]=0;q[mj+124>>2]=0;q[mj+112>>2]=0;q[mj+116>>2]=0;q[mj+104>>2]=0;q[mj+108>>2]=0;q[mj+96>>2]=0;q[mj+100>>2]=0;q[mj+88>>2]=0;q[mj+92>>2]=0;q[mj+80>>2]=0;q[mj+84>>2]=0;q[mj+72>>2]=0;q[mj+76>>2]=0;q[mj+64>>2]=0;q[mj+68>>2]=0;q[mj+56>>2]=0;q[mj+48>>2]=0;q[mj+52>>2]=0;if(jj){hj=jj<<2;Dj=ui(hj);q[mj+48>>2]=Dj;Ij=hj+Dj|0;q[mj+56>>2]=Ij;pj(Dj,0,hj);q[mj+52>>2]=Ij}hj=q[Ia+56>>2];oj=q[hj>>2];hj=q[hj+4>>2]-oj|0;if((hj|0)<5){break h}Ej=hj>>>2;nj=Ej+ -1|0;if(hj>>2>>>0>nj>>>0){Lj=jj<<2;Jj=Ia+112|0;Uj=mj+141|0;Mj=mj+36|0;Nj=mj+24|0;yj=mj+20|0;Vj=yj+24|0;Oj=yj+16|0;Kj=Ia+152|0;Wj=Ia+28|0;Pj=Ia+20|0;while(1){kj=0;zj=nj;hj=q[(nj<<2)+oj>>2];k:{if((hj|0)==-1){break k}qj=hj+((hj>>>0)%3|0?-1:2)|0;vj=qj>>>5;nj=1;Aj=1<<(qj&31);tj=q[xj>>2];rj=0;oj=hj;while(1){l:{if(q[tj+(oj>>>3&536870908)>>2]>>>(oj&31)&1){break l}kj=q[q[q[xj+64>>2]+12>>2]+(oj<<2)>>2];if((kj|0)==-1){break l}sj=q[Tj>>2];lj=q[xj+28>>2];Bj=q[sj+(q[lj+(kj<<2)>>2]<<2)>>2];if((Bj|0)>=(zj|0)){break l}uj=kj+1|0;uj=q[sj+(q[lj+(((uj>>>0)%3|0?uj:kj+ -2|0)<<2)>>2]<<2)>>2];if((uj|0)>=(zj|0)){break l}kj=q[sj+(q[lj+(kj+((kj>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((kj|0)>=(zj|0)){break l}if((jj|0)>=1){sj=q[(mj+160|0)+w(rj,12)>>2];kj=w(jj,kj);uj=w(jj,uj);Bj=w(jj,Bj);lj=0;while(1){q[sj+(lj<<2)>>2]=(q[(kj+lj<<2)+Zi>>2]+q[(lj+uj<<2)+Zi>>2]|0)-q[(lj+Bj<<2)+Zi>>2];lj=lj+1|0;if((lj|0)!=(jj|0)){continue}break}}kj=4;rj=rj+1|0;if((rj|0)==4){break k}}m:{if(nj&1){lj=-1;kj=oj+1|0;kj=(kj>>>0)%3|0?kj:oj+ -2|0;if((kj|0)==-1|q[q[xj>>2]+(kj>>>3&536870908)>>2]>>>(kj&31)&1){break m}kj=q[q[q[xj+64>>2]+12>>2]+(kj<<2)>>2];if((kj|0)==-1){break m}lj=kj+1|0;lj=(lj>>>0)%3|0?lj:kj+ -2|0;break m}lj=-1;kj=((oj>>>0)%3|0?-1:2)+oj|0;if((kj|0)==-1|q[q[xj>>2]+(kj>>>3&536870908)>>2]>>>(kj&31)&1){break m}kj=q[q[q[xj+64>>2]+12>>2]+(kj<<2)>>2];if((kj|0)==-1){break m}if((kj>>>0)%3){lj=kj+ -1|0;break m}lj=kj+2|0}if((hj|0)==(lj|0)){kj=rj;break k}oj=lj;kj=(lj|0)!=-1;lj=(kj|nj^-1)&1;oj=lj?oj:-1;nj=kj&nj;if(!((qj|0)==-1|lj)){if(Aj&q[q[xj>>2]+(vj<<2)>>2]){kj=rj;break k}kj=q[q[q[xj+64>>2]+12>>2]+(qj<<2)>>2];if((kj|0)==-1){kj=rj;break k}if((kj>>>0)%3){oj=kj+ -1|0}else{oj=kj+2|0}nj=0}kj=rj;if((oj|0)!=-1){continue}break}}oj=0;o[mj+16|0]=0;q[mj+8>>2]=0;q[mj+12>>2]=0;q[Vj>>2]=0;q[Oj>>2]=0;q[Oj+4>>2]=0;hj=yj;q[hj+8>>2]=0;q[hj+12>>2]=0;q[hj>>2]=0;q[hj+4>>2]=0;Rj=w(jj,zj)<<2;Bj=Rj+Zi|0;rj=(w(Ej+ -2|0,jj)<<2)+Zi|0;qj=q[Kj>>2];nj=0;if((jj|0)>0){while(1){lj=nj<<2;hj=q[lj+rj>>2]-q[lj+Bj>>2]|0;q[lj+Dj>>2]=hj;Aj=lj+qj|0;lj=hj>>31;q[Aj>>2]=lj^hj<<1;oj=(lj^hj+lj)+oj|0;nj=nj+1|0;if((nj|0)!=(jj|0)){continue}break}}Ge(mj+216|0,Jj,qj,jj);hj=Je(mj+216|0);lj=V;qj=Ke(mj+216|0);nj=qj+hj|0;hj=V+lj|0;hj=nj>>>0<qj>>>0?hj+1|0:hj;lj=nj;uj=(kj|0)>0;if(uj){sj=(kj<<3)+ -8|0;qj=sj+(mj- -64|0)|0;vj=qj;Fj=qj;nj=q[qj+4>>2];Aj=kj+q[qj>>2]|0;if(Aj>>>0<kj>>>0){nj=nj+1|0}qj=Aj;q[Fj>>2]=qj;q[vj+4>>2]=nj;wj=D(Ee(qj,q[sj+(mj+96|0)>>2])*(+(qj>>>0)+4294967296*+(nj|0)));n:{if(y(wj)<0x8000000000000000){qj=y(wj)>=1?wj>0?~~A(C(wj/4294967296),4294967295)>>>0:~~D((wj- +(~~wj>>>0>>>0))/4294967296)>>>0:0;nj=~~wj>>>0;break n}qj=-2147483648;nj=0}hj=hj+qj|0;nj=lj+nj|0;if(nj>>>0<lj>>>0){hj=hj+1|0}lj=nj}q[mj+20>>2]=0;o[mj+16|0]=0;q[mj+8>>2]=lj;q[mj+12>>2]=oj;ib(Nj,rj,rj+Lj|0);Wc(Mj,Dj,Ij);if((kj|0)>=1){vj=(mj+140|0)+kj|0;Aj=vj+ -2|0;sj=vj+ -1|0;hj=(kj<<3)+ -8|0;Sj=hj+(mj- -64|0)|0;Xj=hj+(mj+96|0)|0;rj=1;Gj=0;while(1){pj(mj+140|0,1,kj);Gj=Gj+1|0;pj(mj+140|0,0,Gj);Yj=q[mj+52>>2];Zj=q[mj+48>>2];o:{p:while(1){nj=(jj|0)<1;if(!nj){pj(q[mj+144>>2],0,Lj)}hj=0;qj=q[mj+144>>2];tj=0;while(1){if(!r[(mj+140|0)+hj|0]){if(!nj){oj=q[(mj+160|0)+w(hj,12)>>2];lj=0;while(1){Cj=lj<<2;Fj=Cj+qj|0;q[Fj>>2]=q[Fj>>2]+q[oj+Cj>>2];lj=lj+1|0;if((lj|0)!=(jj|0)){continue}break}}tj=1<<hj|tj}hj=hj+1|0;if((kj|0)!=(hj|0)){continue}break}lj=0;q:{if((jj|0)>0){Cj=q[mj+144>>2];while(1){hj=Cj+(lj<<2)|0;q[hj>>2]=q[hj>>2]/(rj|0);lj=lj+1|0;if((lj|0)!=(jj|0)){continue}break}qj=0;hj=q[Kj>>2];if((jj|0)<=0){break q}nj=0;while(1){oj=nj<<2;lj=q[oj+Cj>>2]-q[oj+Bj>>2]|0;q[oj+Dj>>2]=lj;Fj=hj+oj|0;oj=lj>>31;q[Fj>>2]=oj^lj<<1;qj=(oj^lj+oj)+qj|0;nj=nj+1|0;if((nj|0)!=(jj|0)){continue}break}break q}hj=q[Kj>>2];qj=0}Ge(mj+216|0,Jj,hj,jj);nj=Je(mj+216|0)+Ke(mj+216|0)|0;lj=nj;if(uj){hj=q[Sj+4>>2];nj=q[Sj>>2];wj=D(Ee(nj,q[Xj>>2]+rj|0)*(+(nj>>>0)+4294967296*+(hj|0)));r:{if(y(wj)<0x8000000000000000){hj=~~wj>>>0;break r}hj=0}lj=hj+lj|0}hj=q[mj+8>>2];if(!((lj|0)>(hj|0)|(qj|0)>=q[mj+12>>2]?(lj|0)>=(hj|0):0)){q[mj+20>>2]=rj;o[mj+16|0]=tj;q[mj+8>>2]=lj;q[mj+12>>2]=qj;Wc(Nj,q[mj+144>>2],q[mj+148>>2]);Wc(Mj,Zj,Yj)}if((sj|0)==(mj+140|0)){break o}oj=-1;hj=r[sj|0];lj=hj;while(1){qj=lj&255;nj=oj+ -1|0;tj=nj+vj|0;lj=r[tj|0];if(lj>>>0<qj>>>0){qj=sj;nj=vj;if(lj>>>0>=(hj&255)>>>0){while(1){hj=qj;qj=hj+ -1|0;Cj=nj+ -2|0;nj=hj;if(lj>>>0>=r[Cj|0]){continue}break}hj=1}nj=oj+vj|0;o[tj|0]=hj;o[qj|0]=lj;lj=sj;if((oj|0)==-1){continue p}while(1){hj=r[nj|0];o[nj|0]=r[lj|0];o[lj|0]=hj;nj=nj+1|0;lj=lj+ -1|0;if(nj>>>0<lj>>>0){continue}break}continue p}oj=nj;if((tj|0)!=(mj+140|0)){continue}break}break}if(sj>>>0<=mj+140>>>0){break o}nj=r[mj+140|0];o[mj+140|0]=hj;o[sj|0]=nj;oj=Uj;lj=Aj;if(oj>>>0>=lj>>>0){break o}while(1){hj=r[oj|0];o[oj|0]=r[lj|0];o[lj|0]=hj;oj=oj+1|0;lj=lj+ -1|0;if(oj>>>0<lj>>>0){continue}break}}rj=rj+1|0;if((kj|0)!=(Gj|0)){continue}break}}if(uj){hj=((kj<<3)+mj|0)+88|0;lj=hj;qj=q[mj+20>>2];oj=qj;nj=oj+q[hj>>2]|0;hj=q[hj+4>>2]+(oj>>31)|0;q[lj>>2]=nj;q[lj+4>>2]=nj>>>0<oj>>>0?hj+1|0:hj}s:{if((jj|0)<=0){nj=q[Hj>>2];break s}nj=q[Hj>>2];lj=0;qj=q[mj+36>>2];while(1){oj=lj<<2;hj=q[oj+qj>>2];q[nj+oj>>2]=hj<<1^hj>>31;lj=lj+1|0;if((lj|0)!=(jj|0)){continue}break}}Ie(mj+216|0,Jj,nj,jj);t:{if(!uj){break t}hj=w(kj,12)+Ia|0;sj=hj+56|0;qj=hj+52|0;hj=hj+48|0;oj=0;while(1){u:{rj=q[sj>>2];nj=rj<<5;lj=q[qj>>2];v:{if(!(r[mj+16|0]>>>oj&1)){if((lj|0)==(nj|0)){if((lj+1|0)<=-1){break u}nj=hj;if(lj>>>0<=1073741822){lj=lj+32&-32;rj=rj<<6;lj=rj>>>0<lj>>>0?lj:rj}else{lj=2147483647}oc(nj,lj);lj=q[qj>>2]}q[qj>>2]=lj+1;nj=q[hj>>2]+(lj>>>3&536870908)|0;q[nj>>2]=q[nj>>2]|1<<(lj&31);break v}if((lj|0)==(nj|0)){if((lj+1|0)<=-1){break u}nj=hj;if(lj>>>0<=1073741822){lj=lj+32&-32;rj=rj<<6;lj=rj>>>0<lj>>>0?lj:rj}else{lj=2147483647}oc(nj,lj);lj=q[qj>>2]}q[qj>>2]=lj+1;nj=q[hj>>2]+(lj>>>3&536870908)|0;rj=q[nj>>2];_j=nj,$j=Qj(lj)&rj,q[_j>>2]=$j}oj=oj+1|0;if((oj|0)!=(kj|0)){continue}break t}break}Gi();F()}nj=Ia+8|0;oj=q[nj>>2];if((oj|0)>=1){rj=gj+Rj|0;kj=q[mj+24>>2];tj=0;while(1){lj=0;w:{if((oj|0)<=0){qj=q[Ia+32>>2];break w}while(1){hj=lj<<2;oj=q[hj+kj>>2];sj=q[Ia+16>>2];x:{if((oj|0)>(sj|0)){qj=q[Ia+32>>2];q[hj+qj>>2]=sj;break x}qj=q[Ia+32>>2];hj=hj+qj|0;sj=q[Ia+12>>2];if((oj|0)<(sj|0)){q[hj>>2]=sj;break x}q[hj>>2]=oj}lj=lj+1|0;if((lj|0)<q[nj>>2]){continue}break}}kj=tj<<2;hj=kj+rj|0;kj=q[kj+Bj>>2]-q[kj+qj>>2]|0;q[hj>>2]=kj;y:{if((kj|0)<q[Wj>>2]){kj=kj+q[Pj>>2]|0}else{if((kj|0)<=q[Ia+24>>2]){break y}kj=kj-q[Pj>>2]|0}q[hj>>2]=kj}kj=qj;tj=tj+1|0;oj=q[nj>>2];if((tj|0)<(oj|0)){continue}break}}hj=q[mj+36>>2];if(hj){q[mj+40>>2]=hj;ij(hj)}hj=q[mj+24>>2];if(hj){q[mj+28>>2]=hj;ij(hj)}if((Ej|0)<3){break h}Ej=zj;hj=q[Ia+56>>2];oj=q[hj>>2];nj=zj+ -1|0;if(q[hj+4>>2]-oj>>2>>>0>nj>>>0){continue}break}}Hi();F()}Gi();F()}lj=0;qj=q[mj+160>>2];if((jj|0)>0){while(1){q[(lj<<2)+qj>>2]=0;lj=lj+1|0;if((lj|0)!=(jj|0)){continue}break}}nj=Ia+8|0;oj=q[nj>>2];if((oj|0)>=1){zj=Ia+16|0;kj=Ia+32|0;sj=Ia+12|0;vj=Ia+28|0;rj=Ia+20|0;Ej=Ia+24|0;Ia=0;while(1){lj=0;z:{if((oj|0)<=0){oj=q[kj>>2];break z}while(1){hj=lj<<2;jj=q[hj+qj>>2];yj=q[zj>>2];A:{if((jj|0)>(yj|0)){oj=q[kj>>2];q[hj+oj>>2]=yj;break A}oj=q[kj>>2];hj=hj+oj|0;yj=q[sj>>2];if((jj|0)<(yj|0)){q[hj>>2]=yj;break A}q[hj>>2]=jj}lj=lj+1|0;if((lj|0)<q[nj>>2]){continue}break}}jj=Ia<<2;hj=jj+gj|0;jj=q[Zi+jj>>2]-q[jj+oj>>2]|0;q[hj>>2]=jj;B:{if((jj|0)<q[vj>>2]){jj=jj+q[rj>>2]|0}else{if((jj|0)<=q[Ej>>2]){break B}jj=jj-q[rj>>2]|0}q[hj>>2]=jj}qj=oj;Ia=Ia+1|0;oj=q[nj>>2];if((Ia|0)<(oj|0)){continue}break}}Ia=q[mj+48>>2];if(Ia){q[mj+52>>2]=Ia;ij(Ia)}Ia=q[mj+144>>2];if(Ia){q[mj+148>>2]=Ia;ij(Ia)}Ia=q[mj+196>>2];if(Ia){q[mj+200>>2]=Ia;ij(Ia)}Ia=q[mj+184>>2];if(Ia){q[mj+188>>2]=Ia;ij(Ia)}Ia=q[mj+172>>2];if(Ia){q[mj+176>>2]=Ia;ij(Ia)}Ia=q[mj+160>>2];if(Ia){q[mj+164>>2]=Ia;ij(Ia)}T=mj+240|0;return 1}function Wc(Ia,Zi,gj){var hj=0,jj=0,kj=0,pj=0,Qj=0,ak=0;a:{kj=gj-Zi>>2;hj=q[Ia+8>>2];jj=q[Ia>>2];b:{if(kj>>>0<=hj-jj>>2>>>0){pj=q[Ia+4>>2]-jj|0;hj=pj+Zi|0;Qj=pj>>2;ak=kj>>>0>Qj>>>0?hj:gj;pj=ak-Zi|0;if(pj){qj(jj,Zi,pj)}if(kj>>>0>Qj>>>0){if((gj|0)==(ak|0)){break b}Zi=q[Ia+4>>2];while(1){q[Zi>>2]=q[hj>>2];Zi=Zi+4|0;hj=hj+4|0;if((hj|0)!=(gj|0)){continue}break}q[Ia+4>>2]=Zi;return}q[Ia+4>>2]=jj+(pj>>2<<2);return}if(jj){q[Ia+4>>2]=jj;ij(jj);q[Ia+8>>2]=0;q[Ia>>2]=0;q[Ia+4>>2]=0;hj=0}if(kj>>>0>=1073741824){break a}jj=hj>>1;hj=hj>>2>>>0<536870911?jj>>>0<kj>>>0?kj:jj:1073741823;if(hj>>>0>=1073741824){break a}jj=hj<<2;hj=ui(jj);q[Ia>>2]=hj;q[Ia+4>>2]=hj;q[Ia+8>>2]=hj+jj;if((Zi|0)==(gj|0)){break b}while(1){q[hj>>2]=q[Zi>>2];hj=hj+4|0;Zi=Zi+4|0;if((gj|0)!=(Zi|0)){continue}break}q[Ia+4>>2]=hj}return}Gi();F()}function Xc(Ia){Ia=Ia|0;var Zi=0;q[Ia>>2]=3444;Zi=q[Ia+76>>2];if(Zi){ij(Zi)}q[Ia>>2]=3140;Zi=q[Ia+32>>2];if(Zi){q[Ia+36>>2]=Zi;ij(Zi)}return Ia|0}function Yc(Ia){Ia=Ia|0;var gj=0;q[Ia>>2]=3444;gj=q[Ia+76>>2];if(gj){ij(gj)}q[Ia>>2]=3140;gj=q[Ia+32>>2];if(gj){q[Ia+36>>2]=gj;ij(gj)}ij(Ia)}function Zc(q){q=q|0;return 5}function _c(Ia){Ia=Ia|0;if(!(!q[Ia+60>>2]|!q[Ia+44>>2]|(!q[Ia+48>>2]|!q[Ia+52>>2]))){return q[Ia+56>>2]!=0|0}return 0}function $c(Ia,ij){Ia=Ia|0;ij=ij|0;var bk=0;if(!(q[ij+56>>2]|r[ij+24|0]!=3)){q[Ia+60>>2]=ij;bk=1}return bk|0}function ad(Ia,ij){Ia=Ia|0;ij=ij|0;var ck=0,dk=0,ek=0,fk=0,gk=0;ck=T-48|0;T=ck;q[ck+40>>2]=q[Ia+80>>2];fk=q[ij+20>>2];if((fk|0)<0?1:(fk|0)<=0?t[ij+16>>2]>0?0:1:0){$a(ij,q[ij+4>>2],ck+40|0,ck+44|0)}fk=we(ck+8|0);ze(fk);if(q[ck+40>>2]>=1){dk=1;while(1){gk=dk;dk=q[q[Ia+76>>2]+(ek>>>3&536870908)>>2]>>>(ek&31);Ae(fk,(gk^dk^-1)&1);dk=dk&1;ek=ek+1|0;if((ek|0)<q[ck+40>>2]){continue}break}}Be(fk,ij);q[ck+44>>2]=q[Ia+12>>2];dk=q[ij+20>>2];ek=dk;dk=q[ij+16>>2];if((ek|0)<0?1:(ek|0)<=0?dk>>>0>0?0:1:0){$a(ij,q[ij+4>>2],ck+44|0,ck+48|0);dk=q[ij+16>>2];ek=q[ij+20>>2]}q[ck+44>>2]=q[Ia+16>>2];if((ek|0)<0?1:(ek|0)<=0?dk>>>0>0?0:1:0){$a(ij,q[ij+4>>2],ck+44|0,ck+48|0)}xe(fk);T=ck+48|0;return 1}function bd(Ia,ij,hk,ik,jk,kk){Ia=Ia|0;ij=ij|0;hk=hk|0;ik=ik|0;jk=jk|0;kk=kk|0;var lk=0,mk=0,nk=0,ok=0,pk=0,qk=0,rk=0,sk=0,tk=0,uk=0,vk=0,wk=0,xk=0,yk=0,zk=0,Ak=0,Bk=0;q[Ia+8>>2]=jk;q[Ia- -64>>2]=kk;lk=Ia+32|0;mk=q[lk>>2];kk=q[Ia+36>>2]-mk>>2;a:{if(kk>>>0<jk>>>0){Qc(lk,jk-kk|0);break a}if(kk>>>0<=jk>>>0){break a}q[Ia+36>>2]=mk+(jk<<2)}b:{if(!ik){break b}mk=1;kk=q[ij>>2];c:{if((ik|0)<=1){lk=kk;break c}lk=kk;while(1){nk=q[(mk<<2)+ij>>2];ok=(nk|0)<(lk|0);lk=ok?nk:lk;kk=ok?kk:(nk|0)>(kk|0)?nk:kk;mk=mk+1|0;if((mk|0)!=(ik|0)){continue}break}}q[Ia+16>>2]=kk;q[Ia+12>>2]=lk;ik=(kk>>31)-((lk>>31)+(kk>>>0<lk>>>0)|0)|0;kk=kk-lk|0;if(!ik&kk>>>0>2147483646|ik>>>0>0){break b}ik=kk+1|0;q[Ia+20>>2]=ik;lk=Ia+24|0;kk=(ik|0)/2|0;q[lk>>2]=kk;q[Ia+28>>2]=0-kk;if(ik&1){break b}q[lk>>2]=kk+ -1}kk=q[Ia+56>>2];ik=q[kk>>2];d:{kk=q[kk+4>>2]-ik|0;if((kk|0)<1){break d}mk=(kk>>>2)+ -1|0;if(kk>>2>>>0>mk>>>0){uk=Ia+60|0;lk=Ia+68|0;nk=Ia+8|0;vk=Ia+16|0;ok=Ia+32|0;wk=Ia+12|0;xk=Ia+28|0;tk=Ia+20|0;yk=Ia+24|0;zk=Ia+56|0;while(1){cd(uk,q[(mk<<2)+ik>>2],ij,mk);ik=q[nk>>2];if((ik|0)>=1){Ia=w(jk,mk)<<2;Ak=Ia+hk|0;Bk=Ia+ij|0;Ia=lk;rk=0;while(1){kk=0;e:{if((ik|0)<=0){ik=q[ok>>2];break e}while(1){pk=kk<<2;sk=q[pk+Ia>>2];qk=q[vk>>2];f:{if((sk|0)>(qk|0)){ik=q[ok>>2];q[pk+ik>>2]=qk;break f}ik=q[ok>>2];pk=pk+ik|0;qk=q[wk>>2];if((sk|0)<(qk|0)){q[pk>>2]=qk;break f}q[pk>>2]=sk}kk=kk+1|0;if((kk|0)<q[nk>>2]){continue}break}}kk=rk<<2;Ia=kk+Ak|0;kk=q[kk+Bk>>2]-q[ik+kk>>2]|0;q[Ia>>2]=kk;g:{if((kk|0)<q[xk>>2]){kk=kk+q[tk>>2]|0}else{if((kk|0)<=q[yk>>2]){break g}kk=kk-q[tk>>2]|0}q[Ia>>2]=kk}Ia=ik;rk=rk+1|0;ik=q[nk>>2];if((rk|0)<(ik|0)){continue}break}}mk=mk+ -1|0;if((mk|0)<0){break d}Ia=q[zk>>2];ik=q[Ia>>2];if(q[Ia+4>>2]-ik>>2>>>0>mk>>>0){continue}break}}Hi();F()}return 1}function cd(Ia,ij,hk,ik){var jk=0,kk=0,Ck=0,Dk=0,Ek=0,Fk=0,Gk=0,Hk=0,Ik=0,Jk=0,Kk=0,Lk=0,Mk=0,Nk=0,Ok=0,Pk=0,Qk=0,Rk=0,Sk=0,Tk=0,Uk=0,Vk=0,Wk=0,Xk=0,Yk=0,Zk=0,_k=0,$k=0,al=0,bl=0,cl=0;Dk=T-80|0;T=Dk;Ek=-1;kk=-1;a:{if((ij|0)==-1){break a}kk=ij+1|0;Ek=(kk>>>0)%3|0?kk:ij+ -2|0;kk=ij+ -1|0;if((ij>>>0)%3){break a}kk=ij+2|0}jk=q[Ia+36>>2];ij=q[jk>>2];b:{c:{d:{e:{f:{g:{jk=q[jk+4>>2]-ij>>2;Ck=Ek<<2;Ek=q[q[Ia+32>>2]+28>>2];Ck=q[Ck+Ek>>2];if(jk>>>0<=Ck>>>0){break g}kk=q[Ek+(kk<<2)>>2];if(jk>>>0<=kk>>>0){break g}h:{Ek=q[ij+(Ck<<2)>>2];Kk=(Ek|0)>=(ik|0);if(Kk){break h}Ck=q[ij+(kk<<2)>>2];if((Ck|0)>=(ik|0)){break h}kk=Ck<<3;Hk=q[(kk|4)+hk>>2];jk=Ek<<3;ij=q[(jk|4)+hk>>2];Wk=q[hk+kk>>2];Jk=q[hk+jk>>2];if(!((Wk|0)!=(Jk|0)|(ij|0)!=(Hk|0))){q[Ia+8>>2]=Jk;q[Ia+12>>2]=ij;break c}kk=q[q[Ia+4>>2]+(ik<<2)>>2];q[Dk+72>>2]=0;q[Dk+76>>2]=0;jk=Dk- -64|0;q[jk>>2]=0;q[jk+4>>2]=0;q[Dk+56>>2]=0;q[Dk+60>>2]=0;jk=q[Ia>>2];if(!r[jk+84|0]){kk=q[q[jk+68>>2]+(kk<<2)>>2]}dd(jk,kk,o[jk+24|0],Dk+56|0);kk=q[q[Ia+4>>2]+(Ek<<2)>>2];q[Dk+48>>2]=0;q[Dk+52>>2]=0;q[Dk+40>>2]=0;q[Dk+44>>2]=0;q[Dk+32>>2]=0;q[Dk+36>>2]=0;jk=q[Ia>>2];if(!r[jk+84|0]){kk=q[q[jk+68>>2]+(kk<<2)>>2]}dd(jk,kk,o[jk+24|0],Dk+32|0);kk=q[q[Ia+4>>2]+(Ck<<2)>>2];q[Dk+24>>2]=0;q[Dk+28>>2]=0;q[Dk+16>>2]=0;q[Dk+20>>2]=0;q[Dk+8>>2]=0;q[Dk+12>>2]=0;jk=q[Ia>>2];if(!r[jk+84|0]){kk=q[q[jk+68>>2]+(kk<<2)>>2]}dd(jk,kk,o[jk+24|0],Dk+8|0);Ok=q[Dk+44>>2];kk=q[Dk+16>>2];Ck=q[Dk+40>>2];jk=Ck;Gk=q[Dk+20>>2]-(Ok+(kk>>>0<jk>>>0)|0)|0;Sk=kk-jk|0;kk=Nj(Sk,Gk,Sk,Gk);jk=V;Lk=kk;Qk=q[Dk+36>>2];kk=q[Dk+8>>2];Fk=q[Dk+32>>2];Nk=q[Dk+12>>2]-(Qk+(kk>>>0<Fk>>>0)|0)|0;Rk=kk-Fk|0;Ik=Nj(Rk,Nk,Rk,Nk);kk=Lk+Ik|0;jk=V+jk|0;jk=kk>>>0<Ik>>>0?jk+1|0:jk;Mk=kk;Lk=q[Dk+52>>2];kk=q[Dk+24>>2];Uk=q[Dk+48>>2];Ik=Uk;Pk=q[Dk+28>>2]-(Lk+(kk>>>0<Ik>>>0)|0)|0;Vk=kk-Ik|0;Ik=Nj(Vk,Pk,Vk,Pk);kk=Mk+Ik|0;jk=V+jk|0;Mk=kk;Ik=kk>>>0<Ik>>>0?jk+1|0:jk;if(!(kk|Ik)){break h}Ek=1;kk=0;jk=q[Dk+64>>2];Kk=jk-Ck|0;Xk=q[Dk+68>>2]-((jk>>>0<Ck>>>0)+Ok|0)|0;jk=Nj(Kk,Xk,Sk,Gk);Tk=V;Ck=jk;jk=q[Dk+56>>2];Ok=jk-Fk|0;Zk=q[Dk+60>>2]-((jk>>>0<Fk>>>0)+Qk|0)|0;Fk=Nj(Ok,Zk,Rk,Nk);Ck=Ck+Fk|0;jk=V+Tk|0;jk=Ck>>>0<Fk>>>0?jk+1|0:jk;Yk=Ck;Ck=q[Dk+72>>2];Qk=Ck-Uk|0;Tk=q[Dk+76>>2]-((Ck>>>0<Uk>>>0)+Lk|0)|0;Fk=Nj(Qk,Tk,Vk,Pk);Ck=Yk+Fk|0;jk=V+jk|0;Lk=Ck;Ck=Ck>>>0<Fk>>>0?jk+1|0:jk;jk=Hk;Fk=ij;Yk=jk-ij|0;ij=ij>>31;_k=(jk>>31)-(ij+(jk>>>0<Fk>>>0)|0)|0;jk=Nj(Lk,Ck,Yk,_k);Hk=V;Fk=Nj(Mk,Ik,Fk,ij);ij=Fk+jk|0;jk=V+Hk|0;jk=ij>>>0<Fk>>>0?jk+1|0:jk;Fk=ij;Uk=jk;ij=Wk;jk=Jk;$k=ij-jk|0;Jk=jk>>31;al=(ij>>31)-(Jk+(ij>>>0<jk>>>0)|0)|0;ij=Nj(Lk,Ck,$k,al);Hk=V;Jk=Nj(Mk,Ik,jk,Jk);jk=Jk+ij|0;ij=V+Hk|0;ij=jk>>>0<Jk>>>0?ij+1|0:ij;Jk=jk;Wk=ij;ij=Oj(Nj(Sk,Gk,Lk,Ck),V,Mk,Ik);jk=Xk-(V+(Kk>>>0<ij>>>0)|0)|0;ij=Kk-ij|0;ij=Nj(ij,jk,ij,jk);Hk=V;Kk=ij;ij=Oj(Nj(Rk,Nk,Lk,Ck),V,Mk,Ik);jk=Zk-(V+(Ok>>>0<ij>>>0)|0)|0;ij=Ok-ij|0;Gk=Nj(ij,jk,ij,jk);ij=Kk+Gk|0;jk=V+Hk|0;jk=ij>>>0<Gk>>>0?jk+1|0:jk;Gk=ij;ij=Oj(Nj(Lk,Ck,Vk,Pk),V,Mk,Ik);Ck=Tk-(V+(Qk>>>0<ij>>>0)|0)|0;ij=Qk-ij|0;Hk=Nj(ij,Ck,ij,Ck);Ck=Gk+Hk|0;ij=V+jk|0;Ck=Nj(Ck,Ck>>>0<Hk>>>0?ij+1|0:ij,Mk,Ik);ij=V;Hk=ij;if(!ij&Ck>>>0<=1|ij>>>0<0){break f}Gk=Ck;jk=Hk;while(1){ij=kk<<1|Ek>>>31;Ek=Ek<<1;kk=ij;Nk=!jk&Gk>>>0>7|jk>>>0>0;Gk=(jk&3)<<30|Gk>>>2;jk=jk>>>2;if(Nk){continue}break}break e}jk=Ia;if(Kk){if((ik|0)<=0){q[Ia+8>>2]=0;q[Ia+12>>2]=0;break c}ij=(ik<<1)+ -2|0}else{ij=Ek<<1}ij=(ij<<2)+hk|0;q[jk+8>>2]=q[ij>>2];q[Ia+12>>2]=q[ij+4>>2];break c}Hi();F()}Ek=Ck;kk=Hk;if(Ck-1){break d}}while(1){ij=Pj(Ck,Hk,Ek,kk)+Ek|0;jk=kk+V|0;jk=ij>>>0<Ek>>>0?jk+1|0:jk;Ek=(jk&1)<<31|ij>>>1;kk=jk>>>1;ij=Nj(Ek,kk,Ek,kk);jk=V;if((Hk|0)==(jk|0)&ij>>>0>Ck>>>0|jk>>>0>Hk>>>0){continue}break}}Ck=Ia+16|0;Ok=q[Ia+24>>2];Qk=Ok<<5;ij=q[Ia+20>>2];Kk=ik<<3;jk=q[(Kk|4)+hk>>2];Hk=jk;Lk=Nj(Ek,kk,$k,al);Gk=Lk;Sk=V;ik=Oj(Fk-Gk|0,Uk-(Sk+(Fk>>>0<Gk>>>0)|0)|0,Mk,Ik);Nk=jk>>31;Gk=ik;Pk=Nk-(V+(jk>>>0<Gk>>>0)|0)|0;jk=jk-Gk|0;Rk=Nj(jk,Pk,jk,Pk);Vk=V;jk=q[hk+Kk>>2];hk=jk>>31;Pk=jk;Gk=jk;Kk=hk;Xk=hk;kk=Nj(Ek,kk,Yk,_k);Tk=V;jk=Wk+Tk|0;hk=Jk;Ek=hk+kk|0;if(Ek>>>0<hk>>>0){jk=jk+1|0}Ek=Oj(Ek,jk,Mk,Ik);hk=Ek;jk=Xk-(V+(Gk>>>0<hk>>>0)|0)|0;hk=Gk-hk|0;Gk=Nj(hk,jk,hk,jk);hk=Gk+Rk|0;jk=V+Vk|0;Rk=hk;Gk=hk>>>0<Gk>>>0?jk+1|0:jk;jk=Sk+Uk|0;hk=Fk+Lk|0;if(hk>>>0<Fk>>>0){jk=jk+1|0}hk=Oj(hk,jk,Mk,Ik);jk=hk;Fk=Nk-(V+(Hk>>>0<jk>>>0)|0)|0;jk=Hk-jk|0;jk=Nj(jk,Fk,jk,Fk);Nk=V;kk=Oj(Jk-kk|0,Wk-((Jk>>>0<kk>>>0)+Tk|0)|0,Mk,Ik);Hk=jk;jk=kk;Fk=Kk-(V+(Pk>>>0<jk>>>0)|0)|0;jk=Pk-jk|0;Jk=Nj(jk,Fk,jk,Fk);Fk=Hk+Jk|0;jk=V+Nk|0;jk=Fk>>>0<Jk>>>0?jk+1|0:jk;i:{if((jk|0)==(Gk|0)&Rk>>>0<Fk>>>0|Gk>>>0<jk>>>0){if((ij|0)==(Qk|0)){if((ij+1|0)<=-1){break b}if(ij>>>0<=1073741822){ij=ij+32&-32;hk=Ok<<6;ij=hk>>>0<ij>>>0?ij:hk}else{ij=2147483647}oc(Ck,ij);ij=q[Ia+20>>2]}q[Ia+20>>2]=ij+1;hk=q[Ia+16>>2]+(ij>>>3&536870908)|0;q[hk>>2]=q[hk>>2]|1<<(ij&31);break i}if((ij|0)==(Qk|0)){if((ij+1|0)<=-1){break b}if(ij>>>0<=1073741822){ij=ij+32&-32;ik=Ok<<6;ij=ik>>>0<ij>>>0?ij:ik}else{ij=2147483647}oc(Ck,ij);ij=q[Ia+20>>2]}q[Ia+20>>2]=ij+1;ik=q[Ia+16>>2]+(ij>>>3&536870908)|0;Ek=q[ik>>2];bl=ik,cl=Qj(ij)&Ek,q[bl>>2]=cl;ik=hk;Ek=kk}q[Ia+8>>2]=Ek;q[Ia+12>>2]=ik}T=Dk+80|0;return}Gi();F()}function dd(Ia,ij,hk,ik){var dl=0,el=0,fl=0,gl=0,hl=x(0),il=0,jl=0;a:{b:{if(!ik){break b}dl=q[Ia+28>>2]+ -1|0;if(dl>>>0>10){break b}c:{d:{e:{switch(dl-1|0){default:dl=o[Ia+24|0];if(((dl|0)>(hk|0)?hk:dl)<<24>>24>=1){fl=q[q[Ia>>2]>>2];dl=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],ij,0)|0;ij=fl+dl|0;while(1){dl=(el<<3)+ik|0;gl=o[ij|0];q[dl>>2]=gl;q[dl+4>>2]=gl>>31;ij=ij+1|0;el=el+1|0;dl=o[Ia+24|0];if((el|0)<((dl|0)>(hk|0)?hk:dl)<<24>>24){continue}break}}if((dl|0)>=(hk|0)){break b}break a;case 0:dl=o[Ia+24|0];if(((dl|0)>(hk|0)?hk:dl)<<24>>24>=1){fl=q[q[Ia>>2]>>2];dl=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],ij,0)|0;ij=fl+dl|0;while(1){dl=(el<<3)+ik|0;q[dl>>2]=r[ij|0];q[dl+4>>2]=0;ij=ij+1|0;el=el+1|0;dl=o[Ia+24|0];if((el|0)<((dl|0)>(hk|0)?hk:dl)<<24>>24){continue}break}}if((dl|0)>=(hk|0)){break b}break a;case 1:dl=o[Ia+24|0];if(((dl|0)>(hk|0)?hk:dl)<<24>>24>=1){fl=q[q[Ia>>2]>>2];dl=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],ij,0)|0;ij=fl+dl|0;while(1){dl=(el<<3)+ik|0;gl=p[ij>>1];q[dl>>2]=gl;q[dl+4>>2]=gl>>31;ij=ij+2|0;el=el+1|0;dl=o[Ia+24|0];if((el|0)<((dl|0)>(hk|0)?hk:dl)<<24>>24){continue}break}}if((dl|0)>=(hk|0)){break b}break a;case 2:dl=o[Ia+24|0];if(((dl|0)>(hk|0)?hk:dl)<<24>>24>=1){fl=q[q[Ia>>2]>>2];dl=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],ij,0)|0;ij=fl+dl|0;while(1){dl=(el<<3)+ik|0;q[dl>>2]=s[ij>>1];q[dl+4>>2]=0;ij=ij+2|0;el=el+1|0;dl=o[Ia+24|0];if((el|0)<((dl|0)>(hk|0)?hk:dl)<<24>>24){continue}break}}if((dl|0)>=(hk|0)){break b}break a;case 3:dl=o[Ia+24|0];if(((dl|0)>(hk|0)?hk:dl)<<24>>24>=1){fl=q[q[Ia>>2]>>2];dl=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],ij,0)|0;ij=fl+dl|0;while(1){dl=(el<<3)+ik|0;gl=q[ij>>2];q[dl>>2]=gl;q[dl+4>>2]=gl>>31;ij=ij+4|0;el=el+1|0;dl=o[Ia+24|0];if((el|0)<((dl|0)>(hk|0)?hk:dl)<<24>>24){continue}break}}if((dl|0)>=(hk|0)){break b}break a;case 4:dl=o[Ia+24|0];if(((dl|0)>(hk|0)?hk:dl)<<24>>24>=1){fl=q[q[Ia>>2]>>2];dl=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],ij,0)|0;ij=fl+dl|0;while(1){dl=(el<<3)+ik|0;q[dl>>2]=q[ij>>2];q[dl+4>>2]=0;ij=ij+4|0;el=el+1|0;dl=o[Ia+24|0];if((el|0)<((dl|0)>(hk|0)?hk:dl)<<24>>24){continue}break}}if((dl|0)>=(hk|0)){break b}break a;case 5:dl=o[Ia+24|0];if(((dl|0)>(hk|0)?hk:dl)<<24>>24>=1){fl=q[q[Ia>>2]>>2];dl=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],ij,0)|0;ij=fl+dl|0;while(1){gl=q[ij+4>>2];dl=(el<<3)+ik|0;q[dl>>2]=q[ij>>2];q[dl+4>>2]=gl;ij=ij+8|0;el=el+1|0;dl=o[Ia+24|0];if((el|0)<((dl|0)>(hk|0)?hk:dl)<<24>>24){continue}break}}if((dl|0)>=(hk|0)){break b}break a;case 6:dl=o[Ia+24|0];if(((dl|0)>(hk|0)?hk:dl)<<24>>24>=1){fl=q[q[Ia>>2]>>2];dl=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],ij,0)|0;ij=fl+dl|0;while(1){gl=q[ij+4>>2];dl=(el<<3)+ik|0;q[dl>>2]=q[ij>>2];q[dl+4>>2]=gl;ij=ij+8|0;el=el+1|0;dl=o[Ia+24|0];if((el|0)<((dl|0)>(hk|0)?hk:dl)<<24>>24){continue}break}}if((dl|0)>=(hk|0)){break b}break a;case 7:dl=o[Ia+24|0];if(((dl|0)>(hk|0)?hk:dl)<<24>>24<1){break c}fl=q[q[Ia>>2]>>2];dl=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],ij,0)|0;ij=fl+dl|0;while(1){dl=(el<<3)+ik|0;fl=dl;hl=u[ij>>2];f:{if(x(y(hl))<x(0x8000000000000000)){gl=x(y(hl))>=x(1)?hl>x(0)?~~x(A(x(C(x(hl/x(4294967296)))),x(4294967296)))>>>0:~~x(D(x(x(hl-x(~~hl>>>0>>>0))/x(4294967296))))>>>0:0;jl=~~hl>>>0;break f}gl=-2147483648;jl=0}q[fl>>2]=jl;q[dl+4>>2]=gl;ij=ij+4|0;el=el+1|0;dl=o[Ia+24|0];if((el|0)<((dl|0)>(hk|0)?hk:dl)<<24>>24){continue}break}break c;case 8:dl=o[Ia+24|0];if(((dl|0)>(hk|0)?hk:dl)<<24>>24<1){break d}fl=q[q[Ia>>2]>>2];dl=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],ij,0)|0;ij=fl+dl|0;while(1){dl=(el<<3)+ik|0;fl=dl;il=v[ij>>3];g:{if(y(il)<0x8000000000000000){gl=y(il)>=1?il>0?~~A(C(il/4294967296),4294967295)>>>0:~~D((il- +(~~il>>>0>>>0))/4294967296)>>>0:0;jl=~~il>>>0;break g}gl=-2147483648;jl=0}q[fl>>2]=jl;q[dl+4>>2]=gl;ij=ij+8|0;el=el+1|0;dl=o[Ia+24|0];if((el|0)<((dl|0)>(hk|0)?hk:dl)<<24>>24){continue}break}break d;case 9:break e}}dl=o[Ia+24|0];if(((dl|0)>(hk|0)?hk:dl)<<24>>24>=1){fl=q[q[Ia>>2]>>2];dl=q[Ia+48>>2]+Nj(q[Ia+40>>2],q[Ia+44>>2],ij,0)|0;ij=fl+dl|0;while(1){dl=(el<<3)+ik|0;q[dl>>2]=r[ij|0];q[dl+4>>2]=0;ij=ij+1|0;el=el+1|0;dl=o[Ia+24|0];if((el|0)<((dl|0)>(hk|0)?hk:dl)<<24>>24){continue}break}}if((dl|0)>=(hk|0)){break b}pj((dl<<3)+ik|0,0,hk-dl<<3);break b}if((dl|0)>=(hk|0)){break b}break a}if((dl|0)>=(hk|0)){break b}pj((dl<<3)+ik|0,0,hk-dl<<3)}return}pj((dl<<3)+ik|0,0,hk-dl<<3)}function ed(Ia){Ia=Ia|0;var hk=0;q[Ia>>2]=3680;xe(Ia+108|0);q[Ia>>2]=3140;hk=q[Ia+32>>2];if(hk){q[Ia+36>>2]=hk;ij(hk)}return Ia|0}function fd(Ia){Ia=Ia|0;var ik=0;q[Ia>>2]=3680;xe(Ia+108|0);q[Ia>>2]=3140;ik=q[Ia+32>>2];if(ik){q[Ia+36>>2]=ik;ij(ik)}ij(Ia)}function gd(q){q=q|0;return 6}function hd(Ia){Ia=Ia|0;a:{if(!q[Ia- -64>>2]|!q[Ia+68>>2]|(!q[Ia+44>>2]|!q[Ia+48>>2])){break a}if(!q[Ia+52>>2]){break a}return q[Ia+56>>2]!=0|0}return 0}function id(Ia,ij){Ia=Ia|0;ij=ij|0;var kl=0;if(!(q[ij+56>>2]|r[ij+24|0]!=3)){q[Ia- -64>>2]=ij;kl=1}return kl|0}function jd(Ia,ij){Ia=Ia|0;ij=ij|0;var ll=0,ml=0,nl=0,ol=0;ll=T-16|0;T=ll;q[ll+12>>2]=q[Ia+12>>2];ml=q[ij+20>>2];nl=ml;ol=q[ij+16>>2];if((ml|0)<0?1:(ml|0)<=0?ol>>>0>0?0:1:0){$a(ij,q[ij+4>>2],ll+12|0,ll+16|0);ol=q[ij+16>>2];nl=q[ij+20>>2]}q[ll+8>>2]=q[Ia+16>>2];if((nl|0)<0?1:(nl|0)<=0?ol>>>0>0?0:1:0){$a(ij,q[ij+4>>2],ll+8|0,ll+12|0)}Be(Ia+108|0,ij);T=ll+16|0;return 1}function kd(Ia,ij,pl,ql,rl,sl){Ia=Ia|0;ij=ij|0;pl=pl|0;ql=ql|0;rl=rl|0;sl=sl|0;var tl=0,ul=0,vl=0,wl=0,xl=0,yl=0,zl=0,Al=0,Bl=0,Cl=0,Dl=0,El=0,Fl=0,Gl=0,Hl=0,Il=0,Jl=0,Kl=0,Ll=0,Ml=0;wl=T-48|0;T=wl;q[Ia+68>>2]=sl;Cl=Ia+108|0;ze(Cl);ql=q[Ia+56>>2];rl=q[ql>>2];sl=ql+4|0;tl=q[sl>>2];q[wl+40>>2]=0;q[wl+32>>2]=0;q[wl+36>>2]=0;q[wl+24>>2]=0;q[wl+28>>2]=0;q[wl+16>>2]=0;q[wl+20>>2]=0;q[wl+8>>2]=0;q[wl+12>>2]=0;q[wl>>2]=0;q[wl+4>>2]=0;a:{rl=tl-rl|0;if((rl|0)<1){break a}ul=q[ql>>2];if((ul|0)!=q[sl>>2]){Jl=rl>>2;Kl=Ia+60|0;Ll=pl+4|0;Dl=Ia+8|0;Fl=Ia+16|0;El=Ia+32|0;Gl=Ia+12|0;Hl=Ia+28|0;Bl=Ia+20|0;Il=Ia+24|0;Ml=Ia+56|0;while(1){ld(Kl,q[(Al<<2)+ul>>2],wl+32|0);sl=q[wl+36>>2];tl=sl>>31;rl=q[wl+32>>2];vl=rl>>31;ul=q[wl+40>>2];xl=ul>>31;ql=0;xl=xl^ul+xl;tl=xl+((tl^sl+tl)+(vl^rl+vl)|0)|0;if(tl>>>0<xl>>>0){ql=1}b:{if(!(ql|tl)){yl=q[Ia+104>>2];q[wl+32>>2]=yl;rl=yl;break b}yl=q[Ia+104>>2];vl=yl;xl=vl>>31;sl=Oj(Nj(vl,xl,sl,sl>>31),V,tl,ql);q[wl+36>>2]=sl;rl=Oj(Nj(vl,xl,rl,rl>>31),V,tl,ql);q[wl+32>>2]=rl;ql=rl>>31;ql=(vl-(ql+rl^ql)|0)+((sl|0)<0?sl:0-sl|0)|0;ul=(ul|0)>-1?ql:0-ql|0;q[wl+40>>2]=ul}c:{if((rl|0)>=0){tl=sl+yl|0;xl=ul+yl|0;break c}d:{if((sl|0)<=-1){ql=ul>>31;tl=ql+ul^ql;break d}ql=ul>>31;tl=q[Ia+100>>2]-(ql+ul^ql)|0}if((ul|0)<=-1){ql=sl>>31;xl=ql+sl^ql;break c}ql=sl>>31;xl=q[Ia+100>>2]-(ql+sl^ql)|0}ql=q[Ia+100>>2];zl=ql;vl=ql;e:{if(!(tl|xl)){break e}if(!((ql|0)!=(xl|0)|tl)){zl=xl;vl=xl;break e}if(!((ql|0)!=(tl|0)|xl)){zl=tl;vl=tl;break e}if(!((yl|0)>=(xl|0)|tl)){zl=(yl<<1)-xl|0;vl=0;break e}if(!((ql|0)!=(tl|0)|(yl|0)<=(xl|0))){zl=(yl<<1)-xl|0;vl=tl;break e}if(!((ql|0)!=(xl|0)|(yl|0)<=(tl|0))){zl=xl;vl=(yl<<1)-tl|0;break e}if(xl){zl=xl;vl=tl;break e}zl=0;vl=tl;if((yl|0)>=(tl|0)){break e}vl=(yl<<1)-tl|0}q[wl+28>>2]=zl;q[wl+24>>2]=vl;q[wl+40>>2]=0-ul;q[wl+36>>2]=0-sl;q[wl+32>>2]=0-rl;f:{if((rl|0)<=0){rl=yl-ul|0;sl=yl-sl|0;break f}rl=sl>>31;rl=rl+sl^rl;rl=(ul|0)>0?rl:ql-rl|0;tl=ul>>31;tl=tl+ul^tl;sl=(sl|0)>0?tl:ql-tl|0}g:{if(!(rl|sl)){rl=ql;break g}if(!((ql|0)!=(rl|0)|sl)){rl=ql;break g}tl=(ql|0)!=(sl|0);if(!(rl|tl)){rl=ql;break g}if(!((yl|0)>=(rl|0)|sl)){rl=(yl<<1)-rl|0;ql=0;break g}if(!((yl|0)<=(rl|0)|tl)){rl=(yl<<1)-rl|0;break g}if(!((ql|0)!=(rl|0)|(yl|0)<=(sl|0))){rl=ql;ql=(yl<<1)-sl|0;break g}if(rl){ql=sl;break g}rl=0;if((yl|0)>=(sl|0)){ql=sl;break g}ql=(yl<<1)-sl|0}q[wl+20>>2]=rl;q[wl+16>>2]=ql;ul=q[Dl>>2];h:{if((ul|0)<1){break h}xl=(Al<<3)+ij|0;vl=wl+24|0;tl=0;while(1){sl=0;i:{if((ul|0)<=0){ql=q[El>>2];break i}while(1){rl=sl<<2;zl=q[rl+vl>>2];ul=q[Fl>>2];j:{if((zl|0)>(ul|0)){ql=q[El>>2];q[rl+ql>>2]=ul;break j}ql=q[El>>2];rl=rl+ql|0;ul=q[Gl>>2];if((zl|0)<(ul|0)){q[rl>>2]=ul;break j}q[rl>>2]=zl}sl=sl+1|0;ul=q[Dl>>2];if((sl|0)<(ul|0)){continue}break}}sl=tl<<2;rl=sl+(wl+8|0)|0;vl=q[sl+xl>>2]-q[ql+sl>>2]|0;q[rl>>2]=vl;sl=rl;rl=q[Hl>>2];zl=vl+q[Bl>>2]|0;k:{l:{if((vl|0)<(rl|0)){break l}if((vl|0)<=q[Il>>2]){break k}zl=vl-q[Bl>>2]|0}q[sl>>2]=zl}vl=ql;tl=tl+1|0;if((tl|0)<(ul|0)){continue}break}tl=0;vl=wl+16|0;if((ul|0)<1){break h}while(1){sl=0;if((ul|0)>=1){while(1){rl=sl<<2;zl=q[rl+vl>>2];ul=q[Fl>>2];m:{if((zl|0)>(ul|0)){q[ql+rl>>2]=ul;break m}rl=ql+rl|0;ul=q[Gl>>2];if((zl|0)<(ul|0)){q[rl>>2]=ul;break m}q[rl>>2]=zl}sl=sl+1|0;ul=q[Dl>>2];if((sl|0)<(ul|0)){continue}break}rl=q[Hl>>2]}vl=tl<<2;sl=vl+wl|0;vl=q[vl+xl>>2]-q[ql+vl>>2]|0;q[sl>>2]=vl;n:{if((vl|0)<(rl|0)){vl=vl+q[Bl>>2]|0}else{if((vl|0)<=q[Il>>2]){break n}vl=vl-q[Bl>>2]|0}q[sl>>2]=vl}vl=ql;tl=tl+1|0;if((tl|0)<(ul|0)){continue}break}}tl=q[Ia+104>>2];ul=q[wl+8>>2];o:{if((tl|0)<(ul|0)){ul=ul-q[Ia+96>>2]|0;break o}if((ul|0)>=(0-tl|0)){break o}ul=q[Ia+96>>2]+ul|0}q[wl+8>>2]=ul;rl=q[wl+12>>2];p:{if((tl|0)<(rl|0)){rl=rl-q[Ia+96>>2]|0;break p}if((rl|0)>=(0-tl|0)){break p}rl=q[Ia+96>>2]+rl|0}q[wl+12>>2]=rl;ql=q[wl>>2];q:{if((tl|0)<(ql|0)){ql=ql-q[Ia+96>>2]|0;break q}if((ql|0)>=(0-tl|0)){break q}ql=q[Ia+96>>2]+ql|0}q[wl>>2]=ql;sl=q[wl+4>>2];r:{if((tl|0)<(sl|0)){sl=sl-q[Ia+96>>2]|0;break r}if((sl|0)>=(0-tl|0)){break r}sl=q[Ia+96>>2]+sl|0}tl=Al<<1;q[wl+4>>2]=sl;vl=rl>>31;xl=vl+rl^vl;vl=ul>>31;xl=xl+(vl+ul^vl)|0;vl=sl>>31;zl=vl+sl^vl;vl=ql>>31;s:{if((xl|0)<(zl+(vl+ql^vl)|0)){Ae(Cl,0);ql=(tl<<2)+pl|0;if((ul|0)<=-1){ul=q[Ia+96>>2]+ul|0}q[ql>>2]=ul;if((rl|0)>-1){sl=rl;break s}sl=q[Ia+96>>2]+rl|0;break s}Ae(Cl,1);rl=(tl<<2)+pl|0;if((ql|0)<=-1){ql=q[Ia+96>>2]+ql|0}q[rl>>2]=ql;if((sl|0)>-1){break s}sl=q[Ia+96>>2]+sl|0}q[(tl<<2)+Ll>>2]=sl;Al=Al+1|0;if((Al|0)>=(Jl|0)){break a}ql=q[Ml>>2];ul=q[ql>>2];if(q[ql+4>>2]-ul>>2>>>0>Al>>>0){continue}break}}Hi();F()}T=wl+48|0;return 1}function ld(Ia,ij,pl){Ia=Ia|0;ij=ij|0;pl=pl|0;var ql=0,rl=0,sl=0,Nl=0,Ol=0,Pl=0,Ql=0,Rl=0,Sl=0,Tl=0,Ul=0,Vl=0,Wl=0,Xl=0,Yl=0,Zl=0,_l=0,$l=0,am=0,bm=0,cm=0,dm=0,em=0,fm=0,gm=0,hm=0;rl=T-96|0;T=rl;ql=q[Ia+16>>2];o[rl+92|0]=1;q[rl+88>>2]=ij;q[rl+84>>2]=ij;q[rl+80>>2]=ql;Nl=q[Ia+20>>2];sl=q[Nl>>2];a:{b:{c:{d:{ql=q[q[ql+28>>2]+(ij<<2)>>2];if(q[Nl+4>>2]-sl>>2>>>0>ql>>>0){ql=q[q[Ia+8>>2]+(q[sl+(ql<<2)>>2]<<2)>>2];sl=q[Ia+4>>2];if(!r[sl+84|0]){ql=q[q[sl+68>>2]+(ql<<2)>>2]}q[rl+72>>2]=0;q[rl+76>>2]=0;Nl=rl- -64|0;q[Nl>>2]=0;q[Nl+4>>2]=0;q[rl+56>>2]=0;q[rl+60>>2]=0;dd(sl,ql,o[sl+24|0],rl+56|0);if((ij|0)==-1){break a}ql=ij+1|0;Nl=(ql>>>0)%3|0?ql:ij+ -2|0;Xl=((ij>>>0)%3|0?-1:2)+ij|0;cm=Ia+28|0;Ol=!q[cm>>2];dm=Ia+20|0;em=Ia+16|0;fm=Ia+8|0;while(1){sl=Nl;ql=Xl;e:{if(Ol){break e}ql=ij+1|0;sl=(ql>>>0)%3|0?ql:ij+ -2|0;ql=ij+ -1|0;if((ij>>>0)%3){break e}ql=ij+2|0}Ol=q[dm>>2];ij=q[Ol>>2];sl=q[q[q[em>>2]+28>>2]+(sl<<2)>>2];if(q[Ol+4>>2]-ij>>2>>>0<=sl>>>0){break d}sl=q[q[fm>>2]+(q[ij+(sl<<2)>>2]<<2)>>2];Ol=Ia+4|0;ij=q[Ol>>2];if(!r[ij+84|0]){sl=q[q[ij+68>>2]+(sl<<2)>>2]}q[rl+48>>2]=0;q[rl+52>>2]=0;q[rl+40>>2]=0;q[rl+44>>2]=0;q[rl+32>>2]=0;q[rl+36>>2]=0;dd(ij,sl,o[ij+24|0],rl+32|0);sl=q[dm>>2];ij=q[sl>>2];ql=q[q[q[em>>2]+28>>2]+(ql<<2)>>2];if(q[sl+4>>2]-ij>>2>>>0<=ql>>>0){break c}sl=q[q[fm>>2]+(q[ij+(ql<<2)>>2]<<2)>>2];ij=q[Ol>>2];if(!r[ij+84|0]){sl=q[q[ij+68>>2]+(sl<<2)>>2]}Ol=rl+24|0;ql=Ol;q[ql>>2]=0;q[ql+4>>2]=0;Rl=rl+16|0;ql=Rl;q[ql>>2]=0;q[ql+4>>2]=0;q[rl+8>>2]=0;q[rl+12>>2]=0;dd(ij,sl,o[ij+24|0],rl+8|0);ql=q[rl+8>>2];ij=q[rl+56>>2];Yl=ql-ij|0;Zl=q[rl+60>>2];sl=q[rl+12>>2]-(Zl+(ql>>>0<ij>>>0)|0)|0;_l=q[rl+40>>2];ql=q[rl+64>>2];gm=_l-ql|0;$l=q[rl+68>>2];_l=q[rl+44>>2]-($l+(_l>>>0<ql>>>0)|0)|0;am=Nj(Yl,sl,gm,_l);bm=Pl-am|0;Sl=Sl-(V+(Pl>>>0<am>>>0)|0)|0;Pl=q[Rl>>2];am=Pl-ql|0;Rl=q[Rl+4>>2]-((Pl>>>0<ql>>>0)+$l|0)|0;Pl=q[rl+32>>2];$l=Pl-ij|0;Zl=q[rl+36>>2]-((Pl>>>0<ij>>>0)+Zl|0)|0;ql=Nj(am,Rl,$l,Zl);Pl=ql+bm|0;ij=V+Sl|0;ij=Pl>>>0<ql>>>0?ij+1|0:ij;Sl=ij;ql=Ql;Ul=Yl;hm=sl;Ql=q[rl+48>>2];ij=q[rl+72>>2];sl=Ql-ij|0;Yl=q[rl+76>>2];bm=q[rl+52>>2]-(Yl+(Ql>>>0<ij>>>0)|0)|0;Ul=Nj(Ul,hm,sl,bm);Ql=ql+Ul|0;ql=V+Vl|0;ql=Ql>>>0<Ul>>>0?ql+1|0:ql;Vl=Ql;Ql=q[Ol>>2];Ul=Ql-ij|0;ij=q[Ol+4>>2]-((Ql>>>0<ij>>>0)+Yl|0)|0;Ol=Nj(Ul,ij,$l,Zl);Ql=Vl-Ol|0;Vl=ql-(V+(Vl>>>0<Ol>>>0)|0)|0;ql=Nj(am,Rl,sl,bm);sl=Tl-ql|0;Wl=Wl-(V+(Tl>>>0<ql>>>0)|0)|0;ql=Nj(Ul,ij,gm,_l);Tl=ql+sl|0;ij=V+Wl|0;ij=Tl>>>0<ql>>>0?ij+1|0:ij;Wl=ij;od(rl+80|0);Rl=q[cm>>2];Ol=!Rl;ij=q[rl+88>>2];if((ij|0)!=-1){continue}break}ij=Vl;ql=ij>>31;Ia=ij>>31;ij=Ia+ij|0;Nl=ql+Ql|0;if(Nl>>>0<ql>>>0){ij=ij+1|0}ql=ql^Nl;Ol=Ia^ij;ij=Wl;Ia=ij>>31;ij=ij>>31;Nl=Ia;Xl=Wl+Ia|0;sl=ij+Tl|0;if(sl>>>0<ij>>>0){Xl=Xl+1|0}Ia=ij^sl;sl=Nl^Xl;f:{if((Sl|0)<-1?1:(Sl|0)<=-1?Pl>>>0>4294967295?0:1:0){ij=Pl;Nl=Ia+(ql-ij|0)|0;ij=sl+(Ol-((ql>>>0<ij>>>0)+Sl|0)|0)|0;ql=Nl;Ia=ql>>>0<Ia>>>0?ij+1|0:ij;if(!Rl){break f}break b}ij=Ol+Sl|0;Nl=ql;ql=Pl;Nl=Nl+ql|0;if(Nl>>>0<ql>>>0){ij=ij+1|0}ql=Ia;Nl=ql+Nl|0;Ia=ij+sl|0;Ia=Nl>>>0<ql>>>0?Ia+1|0:Ia;ql=Nl;if(Rl){break b}}if((ql|0)<536870913){break a}Ia=((Ia&536870911)<<3|ql>>>29)&7;ij=0;Pl=Oj(Pl,Sl,Ia,ij);Ql=Oj(Ql,Vl,Ia,ij);Tl=Oj(Tl,Wl,Ia,ij);break a}Hi();F()}Hi();F()}Hi();F()}if((Ia|0)<0?1:(Ia|0)<=0?ql>>>0>=536870913?0:1:0){break a}ij=Ia>>>29;Ia=(Ia&536870911)<<3|ql>>>29;Pl=Oj(Pl,Sl,Ia,ij);Ql=Oj(Ql,Vl,Ia,ij);Tl=Oj(Tl,Wl,Ia,ij)}q[pl+8>>2]=Pl;q[pl+4>>2]=Ql;q[pl>>2]=Tl;T=rl+96|0}function md(Ia,ij){Ia=Ia|0;ij=ij|0;if(ij>>>0<=1){q[Ia+28>>2]=ij;Ia=1}else{Ia=0}return Ia|0}function nd(Ia){Ia=Ia|0;return q[Ia+28>>2]}function od(Ia){var ij=0,pl=0,im=0;ij=q[Ia+8>>2];im=q[Ia>>2];a:{if(r[Ia+12|0]){b:{c:{d:{e:{if((ij|0)==-1){break e}pl=ij+1|0;ij=(pl>>>0)%3|0?pl:ij+ -2|0;if((ij|0)==-1|q[q[im>>2]+(ij>>>3&536870908)>>2]>>>(ij&31)&1){break e}ij=q[q[q[im+64>>2]+12>>2]+(ij<<2)>>2];if((ij|0)!=-1){break d}}q[Ia+8>>2]=-1;break c}pl=ij+1|0;ij=(pl>>>0)%3|0?pl:ij+ -2|0;q[Ia+8>>2]=ij;if((ij|0)!=-1){break b}}ij=-1;pl=q[Ia+4>>2];f:{if((pl|0)==-1){break f}pl=pl+((pl>>>0)%3|0?-1:2)|0;if((pl|0)==-1|q[q[im>>2]+(pl>>>3&536870908)>>2]>>>(pl&31)&1){break f}im=q[q[q[im+64>>2]+12>>2]+(pl<<2)>>2];if((im|0)==-1){break f}if((im>>>0)%3){ij=im+ -1|0;break f}ij=im+2|0}o[Ia+12|0]=0;q[Ia+8>>2]=ij;return}if((ij|0)!=q[Ia+4>>2]){break a}q[Ia+8>>2]=-1;return}pl=-1;g:{if((ij|0)==-1){break g}ij=ij+((ij>>>0)%3|0?-1:2)|0;if((ij|0)==-1|q[q[im>>2]+(ij>>>3&536870908)>>2]>>>(ij&31)&1){break g}ij=q[q[q[im+64>>2]+12>>2]+(ij<<2)>>2];if((ij|0)==-1){break g}if((ij>>>0)%3){pl=ij+ -1|0;break g}pl=ij+2|0}q[Ia+8>>2]=pl}}function pd(Ia,jm,km,lm,mm,nm){Ia=Ia|0;jm=jm|0;km=km|0;lm=lm|0;mm=mm|0;nm=nm|0;var om=0,pm=0,qm=0,rm=0,sm=0,tm=0,um=0,vm=0,wm=0,xm=0,ym=0,zm=0,Am=0,Bm=0,Cm=0,Dm=0,Em=0,Fm=0,Gm=0,Hm=0,Im=0;q[Ia+8>>2]=mm;om=Ia+32|0;sm=q[om>>2];nm=q[Ia+36>>2]-sm>>2;a:{if(nm>>>0<mm>>>0){Qc(om,mm-nm|0);break a}if(nm>>>0<=mm>>>0){break a}q[Ia+36>>2]=sm+(mm<<2)}b:{if(!lm){break b}pm=1;om=q[jm>>2];c:{if((lm|0)<=1){nm=om;break c}nm=om;while(1){sm=q[(pm<<2)+jm>>2];rm=(sm|0)<(nm|0);nm=rm?sm:nm;om=rm?om:(sm|0)>(om|0)?sm:om;pm=pm+1|0;if((pm|0)!=(lm|0)){continue}break}}q[Ia+16>>2]=om;q[Ia+12>>2]=nm;lm=(om>>31)-((nm>>31)+(om>>>0<nm>>>0)|0)|0;nm=om-nm|0;if(!lm&nm>>>0>2147483646|lm>>>0>0){break b}lm=nm+1|0;q[Ia+20>>2]=lm;om=Ia+24|0;nm=(lm|0)/2|0;q[om>>2]=nm;q[Ia+28>>2]=0-nm;if(lm&1){break b}q[om>>2]=nm+ -1}lm=(mm&1073741823)!=(mm|0)?-1:mm<<2;sm=pj(ui(lm),0,lm);lm=q[Ia+56>>2];Bm=q[lm>>2];lm=q[lm+4>>2]-Bm|0;if((lm|0)>=5){Cm=q[Ia+48>>2];Im=q[Ia+52>>2];vm=Ia+8|0;xm=Ia+16|0;ym=Ia+32|0;Em=Ia+12|0;Fm=Ia+28|0;zm=Ia+20|0;Gm=Ia+24|0;Hm=lm>>2;rm=Hm;while(1){Am=rm;d:{e:{rm=rm+ -1|0;if(Hm>>>0>rm>>>0){nm=w(mm,rm);lm=q[(rm<<2)+Bm>>2];if((lm|0)==-1){break e}lm=q[q[Cm+12>>2]+(lm<<2)>>2];if((lm|0)==-1){break e}pm=-1;qm=q[Im>>2];om=q[Cm>>2];wm=q[qm+(q[om+(lm<<2)>>2]<<2)>>2];tm=lm+1|0;tm=(tm>>>0)%3|0?tm:lm+ -2|0;if((tm|0)!=-1){tm=q[om+(tm<<2)>>2]}else{tm=-1}lm=lm+((lm>>>0)%3|0?-1:2)|0;if((lm|0)!=-1){pm=q[om+(lm<<2)>>2]}if((wm|0)>=(rm|0)){break e}lm=q[(tm<<2)+qm>>2];if((lm|0)>=(rm|0)){break e}om=q[qm+(pm<<2)>>2];if((om|0)>=(rm|0)){break e}if((mm|0)>=1){pm=w(mm,om);lm=w(lm,mm);qm=w(mm,wm);om=0;while(1){q[(om<<2)+sm>>2]=(q[(om+pm<<2)+jm>>2]+q[(lm+om<<2)+jm>>2]|0)-q[(om+qm<<2)+jm>>2];om=om+1|0;if((om|0)!=(mm|0)){continue}break}}lm=q[vm>>2];if((lm|0)<1){break d}nm=nm<<2;tm=nm+km|0;Dm=jm+nm|0;nm=sm;pm=0;while(1){om=0;f:{if((lm|0)<=0){lm=q[ym>>2];break f}while(1){qm=om<<2;wm=q[qm+nm>>2];um=q[xm>>2];g:{if((wm|0)>(um|0)){lm=q[ym>>2];q[qm+lm>>2]=um;break g}lm=q[ym>>2];qm=qm+lm|0;um=q[Em>>2];if((wm|0)<(um|0)){q[qm>>2]=um;break g}q[qm>>2]=wm}om=om+1|0;if((om|0)<q[vm>>2]){continue}break}}om=pm<<2;nm=om+tm|0;om=q[om+Dm>>2]-q[lm+om>>2]|0;q[nm>>2]=om;h:{if((om|0)<q[Fm>>2]){om=om+q[zm>>2]|0}else{if((om|0)<=q[Gm>>2]){break h}om=om-q[zm>>2]|0}q[nm>>2]=om}nm=lm;pm=pm+1|0;lm=q[vm>>2];if((pm|0)<(lm|0)){continue}break}break d}Hi();F()}lm=q[vm>>2];if((lm|0)<1){break d}nm=nm<<2;tm=nm+km|0;Dm=jm+nm|0;nm=(w(Am+ -2|0,mm)<<2)+jm|0;pm=0;while(1){om=0;i:{if((lm|0)<=0){lm=q[ym>>2];break i}while(1){qm=om<<2;wm=q[qm+nm>>2];um=q[xm>>2];j:{if((wm|0)>(um|0)){lm=q[ym>>2];q[qm+lm>>2]=um;break j}lm=q[ym>>2];qm=qm+lm|0;um=q[Em>>2];if((wm|0)<(um|0)){q[qm>>2]=um;break j}q[qm>>2]=wm}om=om+1|0;if((om|0)<q[vm>>2]){continue}break}}om=pm<<2;nm=om+tm|0;om=q[om+Dm>>2]-q[lm+om>>2]|0;q[nm>>2]=om;k:{if((om|0)<q[Fm>>2]){om=om+q[zm>>2]|0}else{if((om|0)<=q[Gm>>2]){break k}om=om-q[zm>>2]|0}q[nm>>2]=om}nm=lm;pm=pm+1|0;lm=q[vm>>2];if((pm|0)<(lm|0)){continue}break}}if((Am|0)>2){continue}break}}if((mm|0)>=1){pj(sm,0,mm<<2)}rm=Ia+8|0;lm=q[rm>>2];if((lm|0)>=1){ym=Ia+16|0;nm=Ia+32|0;zm=Ia+12|0;Bm=Ia+28|0;Am=Ia+20|0;Cm=Ia+24|0;Ia=sm;pm=0;while(1){om=0;l:{if((lm|0)<=0){lm=q[nm>>2];break l}while(1){mm=om<<2;vm=q[mm+Ia>>2];xm=q[ym>>2];m:{if((vm|0)>(xm|0)){lm=q[nm>>2];q[mm+lm>>2]=xm;break m}lm=q[nm>>2];mm=mm+lm|0;xm=q[zm>>2];if((vm|0)<(xm|0)){q[mm>>2]=xm;break m}q[mm>>2]=vm}om=om+1|0;if((om|0)<q[rm>>2]){continue}break}}mm=pm<<2;Ia=mm+km|0;mm=q[jm+mm>>2]-q[lm+mm>>2]|0;q[Ia>>2]=mm;n:{if((mm|0)<q[Bm>>2]){mm=mm+q[Am>>2]|0}else{if((mm|0)<=q[Cm>>2]){break n}mm=mm-q[Am>>2]|0}q[Ia>>2]=mm}Ia=lm;pm=pm+1|0;lm=q[rm>>2];if((pm|0)<(lm|0)){continue}break}}ij(sm);return 1}function qd(Ia){Ia=Ia|0;var jm=0;q[Ia>>2]=4732;jm=q[Ia+152>>2];if(jm){q[Ia+156>>2]=jm;ij(jm)}jm=q[Ia+112>>2];if(jm){q[Ia+116>>2]=jm;ij(jm)}jm=q[Ia+96>>2];if(jm){ij(jm)}jm=q[Ia+84>>2];if(jm){ij(jm)}jm=q[Ia+72>>2];if(jm){ij(jm)}jm=q[Ia+60>>2];if(jm){ij(jm)}q[Ia>>2]=3140;jm=q[Ia+32>>2];if(jm){q[Ia+36>>2]=jm;ij(jm)}return Ia|0}function rd(q){q=q|0;ij(qd(q))}function sd(Ia,km,lm,mm,nm,Jm){Ia=Ia|0;km=km|0;lm=lm|0;mm=mm|0;nm=nm|0;Jm=Jm|0;var Km=0,Lm=0,Mm=0,Nm=0,Om=0,Pm=0,Qm=0,Rm=0,Sm=0,Tm=0,Um=0,Vm=0,Wm=0,Xm=0,Ym=0,Zm=0,_m=0,$m=0,an=0,bn=0,cn=0,dn=0,en=0,fn=0,gn=0,hn=0,jn=0,kn=0,ln=0,mn=0,nn=0,on=0,pn=0,qn=0,rn=0,sn=0,tn=0,un=0,vn=0,wn=0,xn=0;Lm=T-240|0;T=Lm;q[Ia+8>>2]=nm;Mm=Ia+32|0;Km=q[Mm>>2];Jm=q[Ia+36>>2]-Km>>2;a:{if(Jm>>>0<nm>>>0){Qc(Mm,nm-Jm|0);break a}if(Jm>>>0<=nm>>>0){break a}q[Ia+36>>2]=Km+(nm<<2)}b:{if(!mm){break b}Om=1;Km=q[km>>2];c:{if((mm|0)<=1){Mm=Km;break c}Mm=Km;while(1){Jm=q[(Om<<2)+km>>2];Pm=(Jm|0)<(Mm|0);Mm=Pm?Jm:Mm;Km=Pm?Km:(Jm|0)>(Km|0)?Jm:Km;Om=Om+1|0;if((Om|0)!=(mm|0)){continue}break}}q[Ia+16>>2]=Km;q[Ia+12>>2]=Mm;mm=Mm;Jm=(Km>>31)-((Km>>>0<mm>>>0)+(mm>>31)|0)|0;mm=Km-mm|0;if(!Jm&mm>>>0>2147483646|Jm>>>0>0){break b}mm=mm+1|0;q[Ia+20>>2]=mm;Mm=Ia+24|0;Jm=(mm|0)/2|0;q[Mm>>2]=Jm;q[Ia+28>>2]=0-Jm;if(mm&1){break b}q[Mm>>2]=Jm+ -1}pn=q[Ia+52>>2];gn=q[Ia+48>>2];q[Lm+200>>2]=0;q[Lm+204>>2]=0;q[Lm+192>>2]=0;q[Lm+196>>2]=0;q[Lm+184>>2]=0;q[Lm+188>>2]=0;mm=Lm+176|0;q[mm>>2]=0;q[mm+4>>2]=0;q[Lm+168>>2]=0;q[Lm+172>>2]=0;q[Lm+160>>2]=0;q[Lm+164>>2]=0;d:{if(!nm){mm=0;break d}Qc(Lm+160|0,nm);Nm=q[mm>>2];mm=q[Lm+172>>2]}Jm=Nm-mm>>2;e:{if(Jm>>>0>=nm>>>0){if(Jm>>>0<=nm>>>0){break e}q[Lm+176>>2]=mm+(nm<<2);break e}Qc(Lm+160|12,nm-Jm|0)}Jm=q[Lm+184>>2];mm=q[Lm+188>>2]-Jm>>2;f:{if(mm>>>0>=nm>>>0){if(mm>>>0<=nm>>>0){break f}q[Lm+188>>2]=Jm+(nm<<2);break f}Qc(Lm+184|0,nm-mm|0)}Jm=q[Lm+196>>2];mm=q[Lm+200>>2]-Jm>>2;g:{if(mm>>>0>=nm>>>0){if(mm>>>0<=nm>>>0){break g}q[Lm+200>>2]=Jm+(nm<<2);break g}Qc(Lm+196|0,nm-mm|0)}q[Lm+152>>2]=0;q[Lm+144>>2]=0;q[Lm+148>>2]=0;h:{i:{if(nm){if(nm>>>0>=1073741824){break i}mm=nm<<2;Jm=ui(mm);q[Lm+144>>2]=Jm;Mm=mm+Jm|0;q[Lm+152>>2]=Mm;pj(Jm,0,mm);q[Lm+148>>2]=Mm}cn=Ia+152|0;Jm=q[Ia+152>>2];mm=q[Ia+156>>2]-Jm>>2;j:{if(mm>>>0<nm>>>0){Qc(cn,nm-mm|0);break j}if(mm>>>0<=nm>>>0){break j}q[Ia+156>>2]=Jm+(nm<<2)}q[Lm+120>>2]=0;q[Lm+124>>2]=0;q[Lm+112>>2]=0;q[Lm+116>>2]=0;q[Lm+104>>2]=0;q[Lm+108>>2]=0;q[Lm+96>>2]=0;q[Lm+100>>2]=0;q[Lm+88>>2]=0;q[Lm+92>>2]=0;q[Lm+80>>2]=0;q[Lm+84>>2]=0;q[Lm+72>>2]=0;q[Lm+76>>2]=0;q[Lm+64>>2]=0;q[Lm+68>>2]=0;q[Lm+56>>2]=0;q[Lm+48>>2]=0;q[Lm+52>>2]=0;if(nm){mm=nm<<2;Xm=ui(mm);q[Lm+48>>2]=Xm;dn=mm+Xm|0;q[Lm+56>>2]=dn;pj(Xm,0,mm);q[Lm+52>>2]=dn}mm=q[Ia+56>>2];Nm=q[mm>>2];mm=q[mm+4>>2]-Nm|0;if((mm|0)<5){break h}Ym=mm>>>2;Mm=Ym+ -1|0;if(mm>>2>>>0>Mm>>>0){hn=nm<<2;en=Ia+112|0;qn=Lm+141|0;jn=Lm+36|0;kn=Lm+24|0;an=Lm+20|0;rn=an+24|0;ln=an+16|0;fn=Ia+152|0;sn=Ia+28|0;mn=Ia+20|0;while(1){Pm=0;Vm=Mm;Mm=q[(Mm<<2)+Nm>>2];k:{if((Mm|0)==-1){break k}Nm=q[gn+12>>2];Zm=Mm+((Mm>>>0)%3|0?-1:2)|0;_m=Nm+(Zm<<2)|0;Rm=1;Om=0;mm=Mm;while(1){Km=q[Nm+(mm<<2)>>2];l:{if((Km|0)==-1){break l}Jm=-1;Qm=q[pn>>2];Pm=q[gn>>2];Tm=q[Qm+(q[Pm+(Km<<2)>>2]<<2)>>2];Sm=Km+1|0;Sm=(Sm>>>0)%3|0?Sm:Km+ -2|0;if((Sm|0)!=-1){Sm=q[Pm+(Sm<<2)>>2]}else{Sm=-1}Km=Km+((Km>>>0)%3|0?-1:2)|0;if((Km|0)!=-1){Jm=q[Pm+(Km<<2)>>2]}if((Tm|0)>=(Vm|0)){break l}Km=q[(Sm<<2)+Qm>>2];if((Km|0)>=(Vm|0)){break l}Jm=q[Qm+(Jm<<2)>>2];if((Jm|0)>=(Vm|0)){break l}Pm=q[(Lm+160|0)+w(Om,12)>>2];if((nm|0)>=1){Jm=w(nm,Jm);Qm=w(nm,Km);Tm=w(nm,Tm);Km=0;while(1){q[Pm+(Km<<2)>>2]=(q[(Jm+Km<<2)+km>>2]+q[(Km+Qm<<2)+km>>2]|0)-q[(Km+Tm<<2)+km>>2];Km=Km+1|0;if((Km|0)!=(nm|0)){continue}break}}Pm=4;Om=Om+1|0;if((Om|0)==4){break k}}m:{if(Rm&1){Pm=mm+1|0;mm=(Pm>>>0)%3|0?Pm:mm+ -2|0;Jm=-1;if((mm|0)==-1){break m}mm=q[Nm+(mm<<2)>>2];Jm=-1;if((mm|0)==-1){break m}Jm=mm+1|0;Jm=(Jm>>>0)%3|0?Jm:mm+ -2|0;break m}mm=((mm>>>0)%3|0?-1:2)+mm|0;Jm=-1;if((mm|0)==-1){break m}mm=q[Nm+(mm<<2)>>2];Jm=-1;if((mm|0)==-1){break m}Jm=mm+ -1|0;if((mm>>>0)%3){break m}Jm=mm+2|0}if((Jm|0)==(Mm|0)){Pm=Om;break k}mm=Jm;Jm=(Jm|0)!=-1;Km=(Jm|Rm^-1)&1;mm=Km?mm:-1;Rm=Jm&Rm;if(!((Zm|0)==-1|Km)){Jm=q[_m>>2];if((Jm|0)==-1){Pm=Om;break k}Rm=0;if((Jm>>>0)%3){mm=Jm+ -1|0}else{mm=Jm+2|0}}Pm=Om;if((mm|0)!=-1){continue}break}}Om=0;o[Lm+16|0]=0;q[Lm+8>>2]=0;q[Lm+12>>2]=0;q[rn>>2]=0;q[ln>>2]=0;q[ln+4>>2]=0;mm=an;q[mm+8>>2]=0;q[mm+12>>2]=0;q[mm>>2]=0;q[mm+4>>2]=0;nn=w(nm,Vm)<<2;Zm=nn+km|0;Nm=(w(Ym+ -2|0,nm)<<2)+km|0;Km=q[fn>>2];Mm=0;if((nm|0)>0){while(1){Jm=Mm<<2;mm=q[Jm+Nm>>2]-q[Jm+Zm>>2]|0;q[Jm+Xm>>2]=mm;Sm=Jm+Km|0;Jm=mm>>31;q[Sm>>2]=Jm^mm<<1;Om=(Jm^mm+Jm)+Om|0;Mm=Mm+1|0;if((Mm|0)!=(nm|0)){continue}break}}Ge(Lm+216|0,en,Km,nm);mm=Je(Lm+216|0);Mm=V;Km=Ke(Lm+216|0);Jm=Km+mm|0;mm=V+Mm|0;mm=Jm>>>0<Km>>>0?mm+1|0:mm;Mm=Jm;_m=(Pm|0)>0;if(_m){Qm=(Pm<<3)+ -8|0;Km=Qm+(Lm- -64|0)|0;Tm=Km;$m=Km;Jm=q[Km+4>>2];Sm=q[Km>>2];Km=Pm;Sm=Sm+Km|0;if(Sm>>>0<Km>>>0){Jm=Jm+1|0}Km=Sm;q[$m>>2]=Km;q[Tm+4>>2]=Jm;Um=D(Ee(Km,q[Qm+(Lm+96|0)>>2])*(+(Km>>>0)+4294967296*+(Jm|0)));n:{if(y(Um)<0x8000000000000000){Km=y(Um)>=1?Um>0?~~A(C(Um/4294967296),4294967295)>>>0:~~D((Um- +(~~Um>>>0>>>0))/4294967296)>>>0:0;Jm=~~Um>>>0;break n}Km=-2147483648;Jm=0}mm=mm+Km|0;Jm=Jm+Mm|0;if(Jm>>>0<Mm>>>0){mm=mm+1|0}Mm=Jm}q[Lm+20>>2]=0;o[Lm+16|0]=0;q[Lm+8>>2]=Mm;q[Lm+12>>2]=Om;ib(kn,Nm,Nm+hn|0);Wc(jn,Xm,dn);if((Pm|0)>=1){Tm=(Lm+140|0)+Pm|0;Sm=Tm+ -2|0;Qm=Tm+ -1|0;mm=(Pm<<3)+ -8|0;on=mm+(Lm- -64|0)|0;tn=mm+(Lm+96|0)|0;Om=1;bn=0;while(1){pj(Lm+140|0,1,Pm);bn=bn+1|0;pj(Lm+140|0,0,bn);un=q[Lm+52>>2];vn=q[Lm+48>>2];o:{p:while(1){Jm=(nm|0)<1;if(!Jm){pj(q[Lm+144>>2],0,hn)}mm=0;Mm=q[Lm+144>>2];Rm=0;while(1){if(!r[(Lm+140|0)+mm|0]){if(!Jm){Nm=q[(Lm+160|0)+w(mm,12)>>2];Km=0;while(1){Wm=Km<<2;$m=Wm+Mm|0;q[$m>>2]=q[$m>>2]+q[Nm+Wm>>2];Km=Km+1|0;if((Km|0)!=(nm|0)){continue}break}}Rm=1<<mm|Rm}mm=mm+1|0;if((Pm|0)!=(mm|0)){continue}break}Km=0;q:{if((nm|0)>0){Wm=q[Lm+144>>2];while(1){mm=Wm+(Km<<2)|0;q[mm>>2]=q[mm>>2]/(Om|0);Km=Km+1|0;if((Km|0)!=(nm|0)){continue}break}Jm=0;mm=q[fn>>2];if((nm|0)<=0){break q}Mm=0;while(1){Nm=Mm<<2;Km=q[Nm+Wm>>2]-q[Nm+Zm>>2]|0;q[Nm+Xm>>2]=Km;$m=mm+Nm|0;Nm=Km>>31;q[$m>>2]=Nm^Km<<1;Jm=(Nm^Km+Nm)+Jm|0;Mm=Mm+1|0;if((Mm|0)!=(nm|0)){continue}break}break q}mm=q[fn>>2];Jm=0}Ge(Lm+216|0,en,mm,nm);Mm=Je(Lm+216|0)+Ke(Lm+216|0)|0;Km=Mm;if(_m){mm=q[on+4>>2];Mm=q[on>>2];Um=D(Ee(Mm,q[tn>>2]+Om|0)*(+(Mm>>>0)+4294967296*+(mm|0)));r:{if(y(Um)<0x8000000000000000){mm=~~Um>>>0;break r}mm=0}Km=mm+Km|0}mm=q[Lm+8>>2];if(!((Km|0)>(mm|0)|(Jm|0)>=q[Lm+12>>2]?(Km|0)>=(mm|0):0)){q[Lm+20>>2]=Om;o[Lm+16|0]=Rm;q[Lm+8>>2]=Km;q[Lm+12>>2]=Jm;Wc(kn,q[Lm+144>>2],q[Lm+148>>2]);Wc(jn,vn,un)}if((Qm|0)==(Lm+140|0)){break o}Nm=-1;mm=r[Qm|0];Km=mm;while(1){Mm=Km&255;Jm=Nm+ -1|0;Rm=Jm+Tm|0;Km=r[Rm|0];if(Km>>>0<Mm>>>0){Jm=Qm;Mm=Tm;if(Km>>>0>=(mm&255)>>>0){while(1){mm=Jm;Jm=mm+ -1|0;Wm=Mm+ -2|0;Mm=mm;if(Km>>>0>=r[Wm|0]){continue}break}mm=1}Mm=Nm+Tm|0;o[Rm|0]=mm;o[Jm|0]=Km;Km=Qm;if((Nm|0)==-1){continue p}while(1){mm=r[Mm|0];o[Mm|0]=r[Km|0];o[Km|0]=mm;Mm=Mm+1|0;Km=Km+ -1|0;if(Mm>>>0<Km>>>0){continue}break}continue p}Nm=Jm;if((Rm|0)!=(Lm+140|0)){continue}break}break}if(Qm>>>0<=Lm+140>>>0){break o}Jm=r[Lm+140|0];o[Lm+140|0]=mm;o[Qm|0]=Jm;Nm=qn;Km=Sm;if(Nm>>>0>=Km>>>0){break o}while(1){mm=r[Nm|0];o[Nm|0]=r[Km|0];o[Km|0]=mm;Nm=Nm+1|0;Km=Km+ -1|0;if(Nm>>>0<Km>>>0){continue}break}}Om=Om+1|0;if((Pm|0)!=(bn|0)){continue}break}}if(_m){mm=((Pm<<3)+Lm|0)+88|0;Mm=mm;Km=q[Lm+20>>2];Jm=Km+q[mm>>2]|0;mm=q[mm+4>>2]+(Km>>31)|0;q[Mm>>2]=Jm;q[Mm+4>>2]=Jm>>>0<Km>>>0?mm+1|0:mm}s:{if((nm|0)<=0){Mm=q[cn>>2];break s}Mm=q[cn>>2];Km=0;Jm=q[Lm+36>>2];while(1){Om=Km<<2;mm=q[Om+Jm>>2];q[Mm+Om>>2]=mm<<1^mm>>31;Km=Km+1|0;if((Km|0)!=(nm|0)){continue}break}}Ie(Lm+216|0,en,Mm,nm);t:{if(!_m){break t}mm=w(Pm,12)+Ia|0;Qm=mm+56|0;Mm=mm+52|0;mm=mm+48|0;Nm=0;while(1){u:{Om=q[Qm>>2];Jm=Om<<5;Km=q[Mm>>2];v:{if(!(r[Lm+16|0]>>>Nm&1)){if((Jm|0)==(Km|0)){if((Km+1|0)<=-1){break u}Jm=mm;if(Km>>>0<=1073741822){Km=Km+32&-32;Om=Om<<6;Km=Om>>>0<Km>>>0?Km:Om}else{Km=2147483647}oc(Jm,Km);Km=q[Mm>>2]}q[Mm>>2]=Km+1;Jm=q[mm>>2]+(Km>>>3&536870908)|0;q[Jm>>2]=q[Jm>>2]|1<<(Km&31);break v}if((Jm|0)==(Km|0)){if((Km+1|0)<=-1){break u}Jm=mm;if(Km>>>0<=1073741822){Km=Km+32&-32;Om=Om<<6;Km=Om>>>0<Km>>>0?Km:Om}else{Km=2147483647}oc(Jm,Km);Km=q[Mm>>2]}q[Mm>>2]=Km+1;Jm=q[mm>>2]+(Km>>>3&536870908)|0;Om=q[Jm>>2];wn=Jm,xn=Qj(Km)&Om,q[wn>>2]=xn}Nm=Nm+1|0;if((Pm|0)!=(Nm|0)){continue}break t}break}Gi();F()}Om=Ia+8|0;Nm=q[Om>>2];if((Nm|0)>=1){Qm=lm+nn|0;Pm=q[Lm+24>>2];Rm=0;while(1){Km=0;w:{if((Nm|0)<=0){Jm=q[Ia+32>>2];break w}while(1){mm=Km<<2;Mm=q[mm+Pm>>2];Nm=q[Ia+16>>2];x:{if((Mm|0)>(Nm|0)){Jm=q[Ia+32>>2];q[mm+Jm>>2]=Nm;break x}Jm=q[Ia+32>>2];mm=mm+Jm|0;Nm=q[Ia+12>>2];if((Mm|0)<(Nm|0)){q[mm>>2]=Nm;break x}q[mm>>2]=Mm}Km=Km+1|0;if((Km|0)<q[Om>>2]){continue}break}}Mm=Rm<<2;mm=Mm+Qm|0;Mm=q[Mm+Zm>>2]-q[Jm+Mm>>2]|0;q[mm>>2]=Mm;y:{if((Mm|0)<q[sn>>2]){Mm=Mm+q[mn>>2]|0}else{if((Mm|0)<=q[Ia+24>>2]){break y}Mm=Mm-q[mn>>2]|0}q[mm>>2]=Mm}Pm=Jm;Rm=Rm+1|0;Nm=q[Om>>2];if((Rm|0)<(Nm|0)){continue}break}}mm=q[Lm+36>>2];if(mm){q[Lm+40>>2]=mm;ij(mm)}mm=q[Lm+24>>2];if(mm){q[Lm+28>>2]=mm;ij(mm)}if((Ym|0)<3){break h}Ym=Vm;mm=q[Ia+56>>2];Nm=q[mm>>2];Mm=Vm+ -1|0;if(q[mm+4>>2]-Nm>>2>>>0>Mm>>>0){continue}break}}Hi();F()}Gi();F()}Km=0;Jm=q[Lm+160>>2];if((nm|0)>0){while(1){q[(Km<<2)+Jm>>2]=0;Km=Km+1|0;if((Km|0)!=(nm|0)){continue}break}}Pm=Ia+8|0;Nm=q[Pm>>2];if((Nm|0)>=1){Qm=Ia+16|0;Mm=Ia+32|0;Tm=Ia+12|0;Ym=Ia+28|0;Vm=Ia+20|0;an=Ia+24|0;Ia=0;while(1){Km=0;z:{if((Nm|0)<=0){Om=q[Mm>>2];break z}while(1){mm=Km<<2;nm=q[mm+Jm>>2];Nm=q[Qm>>2];A:{if((nm|0)>(Nm|0)){Om=q[Mm>>2];q[mm+Om>>2]=Nm;break A}Om=q[Mm>>2];mm=mm+Om|0;Nm=q[Tm>>2];if((nm|0)<(Nm|0)){q[mm>>2]=Nm;break A}q[mm>>2]=nm}Km=Km+1|0;if((Km|0)<q[Pm>>2]){continue}break}}nm=Ia<<2;mm=nm+lm|0;nm=q[km+nm>>2]-q[nm+Om>>2]|0;q[mm>>2]=nm;B:{if((nm|0)<q[Ym>>2]){nm=nm+q[Vm>>2]|0}else{if((nm|0)<=q[an>>2]){break B}nm=nm-q[Vm>>2]|0}q[mm>>2]=nm}Jm=Om;Ia=Ia+1|0;Nm=q[Pm>>2];if((Ia|0)<(Nm|0)){continue}break}}Ia=q[Lm+48>>2];if(Ia){q[Lm+52>>2]=Ia;ij(Ia)}Ia=q[Lm+144>>2];if(Ia){q[Lm+148>>2]=Ia;ij(Ia)}Ia=q[Lm+196>>2];if(Ia){q[Lm+200>>2]=Ia;ij(Ia)}Ia=q[Lm+184>>2];if(Ia){q[Lm+188>>2]=Ia;ij(Ia)}Ia=q[Lm+172>>2];if(Ia){q[Lm+176>>2]=Ia;ij(Ia)}Ia=q[Lm+160>>2];if(Ia){q[Lm+164>>2]=Ia;ij(Ia)}T=Lm+240|0;return 1}function td(Ia){Ia=Ia|0;var km=0;q[Ia>>2]=4968;km=q[Ia+76>>2];if(km){ij(km)}q[Ia>>2]=3140;km=q[Ia+32>>2];if(km){q[Ia+36>>2]=km;ij(km)}return Ia|0}function ud(Ia){Ia=Ia|0;var lm=0;q[Ia>>2]=4968;lm=q[Ia+76>>2];if(lm){ij(lm)}q[Ia>>2]=3140;lm=q[Ia+32>>2];if(lm){q[Ia+36>>2]=lm;ij(lm)}ij(Ia)}function vd(Ia,mm,nm,Jm,yn,zn){Ia=Ia|0;mm=mm|0;nm=nm|0;Jm=Jm|0;yn=yn|0;zn=zn|0;var An=0,Bn=0,Cn=0,Dn=0,En=0,Fn=0,Gn=0,Hn=0,In=0,Jn=0,Kn=0,Ln=0,Mn=0,Nn=0,On=0,Pn=0,Qn=0;q[Ia+8>>2]=yn;q[Ia- -64>>2]=zn;An=Ia+32|0;Bn=q[An>>2];zn=q[Ia+36>>2]-Bn>>2;a:{if(zn>>>0<yn>>>0){Qc(An,yn-zn|0);break a}if(zn>>>0<=yn>>>0){break a}q[Ia+36>>2]=Bn+(yn<<2)}b:{if(!Jm){break b}Bn=1;zn=q[mm>>2];c:{if((Jm|0)<=1){An=zn;break c}An=zn;while(1){Cn=q[(Bn<<2)+mm>>2];Dn=(Cn|0)<(An|0);An=Dn?Cn:An;zn=Dn?zn:(Cn|0)>(zn|0)?Cn:zn;Bn=Bn+1|0;if((Bn|0)!=(Jm|0)){continue}break}}q[Ia+16>>2]=zn;q[Ia+12>>2]=An;Jm=(zn>>31)-((An>>31)+(zn>>>0<An>>>0)|0)|0;zn=zn-An|0;if(!Jm&zn>>>0>2147483646|Jm>>>0>0){break b}Jm=zn+1|0;q[Ia+20>>2]=Jm;An=Ia+24|0;zn=(Jm|0)/2|0;q[An>>2]=zn;q[Ia+28>>2]=0-zn;if(Jm&1){break b}q[An>>2]=zn+ -1}zn=q[Ia+56>>2];Jm=q[zn>>2];d:{zn=q[zn+4>>2]-Jm|0;if((zn|0)<1){break d}Bn=(zn>>>2)+ -1|0;if(zn>>2>>>0>Bn>>>0){Jn=Ia+60|0;An=Ia+68|0;Cn=Ia+8|0;Kn=Ia+16|0;Dn=Ia+32|0;Ln=Ia+12|0;Mn=Ia+28|0;In=Ia+20|0;Nn=Ia+24|0;On=Ia+56|0;while(1){wd(Jn,q[(Bn<<2)+Jm>>2],mm,Bn);Jm=q[Cn>>2];if((Jm|0)>=1){Ia=w(yn,Bn)<<2;Pn=Ia+nm|0;Qn=Ia+mm|0;Ia=An;Gn=0;while(1){zn=0;e:{if((Jm|0)<=0){Jm=q[Dn>>2];break e}while(1){En=zn<<2;Hn=q[En+Ia>>2];Fn=q[Kn>>2];f:{if((Hn|0)>(Fn|0)){Jm=q[Dn>>2];q[En+Jm>>2]=Fn;break f}Jm=q[Dn>>2];En=En+Jm|0;Fn=q[Ln>>2];if((Hn|0)<(Fn|0)){q[En>>2]=Fn;break f}q[En>>2]=Hn}zn=zn+1|0;if((zn|0)<q[Cn>>2]){continue}break}}zn=Gn<<2;Ia=zn+Pn|0;zn=q[zn+Qn>>2]-q[Jm+zn>>2]|0;q[Ia>>2]=zn;g:{if((zn|0)<q[Mn>>2]){zn=zn+q[In>>2]|0}else{if((zn|0)<=q[Nn>>2]){break g}zn=zn-q[In>>2]|0}q[Ia>>2]=zn}Ia=Jm;Gn=Gn+1|0;Jm=q[Cn>>2];if((Gn|0)<(Jm|0)){continue}break}}Bn=Bn+ -1|0;if((Bn|0)<0){break d}Ia=q[On>>2];Jm=q[Ia>>2];if(q[Ia+4>>2]-Jm>>2>>>0>Bn>>>0){continue}break}}Hi();F()}return 1}function wd(Ia,mm,nm,Jm){var yn=0,zn=0,Rn=0,Sn=0,Tn=0,Un=0,Vn=0,Wn=0,Xn=0,Yn=0,Zn=0,_n=0,$n=0,ao=0,bo=0,co=0,eo=0,fo=0,go=0,ho=0,io=0,jo=0,ko=0,lo=0,mo=0,no=0,oo=0,po=0,qo=0,ro=0,so=0;Sn=T-80|0;T=Sn;Rn=-1;zn=-1;a:{if((mm|0)==-1){break a}yn=((mm>>>0)%3|0?-1:2)+mm|0;Tn=q[Ia+32>>2];Wn=mm+1|0;mm=(Wn>>>0)%3|0?Wn:mm+ -2|0;if((mm|0)!=-1){Rn=q[q[Tn>>2]+(mm<<2)>>2]}if((yn|0)==-1){break a}zn=q[q[Tn>>2]+(yn<<2)>>2]}yn=q[Ia+36>>2];mm=q[yn>>2];b:{c:{d:{e:{f:{yn=q[yn+4>>2]-mm>>2;if(!(yn>>>0<=Rn>>>0|yn>>>0<=zn>>>0)){g:{Yn=q[mm+(Rn<<2)>>2];co=(Yn|0)>=(Jm|0);if(co){break g}yn=q[mm+(zn<<2)>>2];if((yn|0)>=(Jm|0)){break g}Rn=yn<<3;Wn=q[(Rn|4)+nm>>2];zn=Yn<<3;mm=q[(zn|4)+nm>>2];ko=q[nm+Rn>>2];Xn=q[nm+zn>>2];if(!((ko|0)!=(Xn|0)|(mm|0)!=(Wn|0))){q[Ia+8>>2]=Xn;q[Ia+12>>2]=mm;break c}Rn=q[q[Ia+4>>2]+(Jm<<2)>>2];q[Sn+72>>2]=0;q[Sn+76>>2]=0;zn=Sn- -64|0;q[zn>>2]=0;q[zn+4>>2]=0;q[Sn+56>>2]=0;q[Sn+60>>2]=0;zn=q[Ia>>2];if(!r[zn+84|0]){Rn=q[q[zn+68>>2]+(Rn<<2)>>2]}dd(zn,Rn,o[zn+24|0],Sn+56|0);Rn=q[q[Ia+4>>2]+(Yn<<2)>>2];q[Sn+48>>2]=0;q[Sn+52>>2]=0;q[Sn+40>>2]=0;q[Sn+44>>2]=0;q[Sn+32>>2]=0;q[Sn+36>>2]=0;zn=q[Ia>>2];if(!r[zn+84|0]){Rn=q[q[zn+68>>2]+(Rn<<2)>>2]}dd(zn,Rn,o[zn+24|0],Sn+32|0);Rn=q[q[Ia+4>>2]+(yn<<2)>>2];q[Sn+24>>2]=0;q[Sn+28>>2]=0;q[Sn+16>>2]=0;q[Sn+20>>2]=0;q[Sn+8>>2]=0;q[Sn+12>>2]=0;zn=q[Ia>>2];if(!r[zn+84|0]){Rn=q[q[zn+68>>2]+(Rn<<2)>>2]}dd(zn,Rn,o[zn+24|0],Sn+8|0);ao=q[Sn+44>>2];Rn=q[Sn+16>>2];Tn=q[Sn+40>>2];zn=Tn;Vn=q[Sn+20>>2]-(ao+(Rn>>>0<zn>>>0)|0)|0;ho=Rn-zn|0;Rn=Nj(ho,Vn,ho,Vn);zn=V;fo=Rn;_n=q[Sn+36>>2];Rn=q[Sn+8>>2];Un=q[Sn+32>>2];yn=Un;bo=q[Sn+12>>2]-(_n+(Rn>>>0<yn>>>0)|0)|0;go=Rn-yn|0;Zn=Nj(go,bo,go,bo);Rn=fo+Zn|0;yn=V+zn|0;yn=Rn>>>0<Zn>>>0?yn+1|0:yn;$n=Rn;io=q[Sn+52>>2];Rn=q[Sn+24>>2];fo=q[Sn+48>>2];zn=fo;eo=q[Sn+28>>2]-(io+(Rn>>>0<zn>>>0)|0)|0;jo=Rn-zn|0;zn=Nj(jo,eo,jo,eo);Rn=$n+zn|0;yn=V+yn|0;$n=Rn;Zn=Rn>>>0<zn>>>0?yn+1|0:yn;if(!(Rn|Zn)){break g}zn=1;Rn=0;yn=q[Sn+64>>2];Yn=yn-Tn|0;lo=q[Sn+68>>2]-((yn>>>0<Tn>>>0)+ao|0)|0;yn=Nj(Yn,lo,ho,Vn);ao=V;Tn=yn;yn=q[Sn+56>>2];co=yn-Un|0;mo=q[Sn+60>>2]-((yn>>>0<Un>>>0)+_n|0)|0;Un=Nj(co,mo,go,bo);Tn=Tn+Un|0;yn=V+ao|0;yn=Tn>>>0<Un>>>0?yn+1|0:yn;_n=Tn;Tn=q[Sn+72>>2];ao=Tn-fo|0;io=q[Sn+76>>2]-((Tn>>>0<fo>>>0)+io|0)|0;Un=Nj(ao,io,jo,eo);Tn=_n+Un|0;yn=V+yn|0;_n=Tn;Tn=Tn>>>0<Un>>>0?yn+1|0:yn;yn=Wn;Un=mm;no=yn-mm|0;mm=mm>>31;oo=(yn>>31)-(mm+(yn>>>0<Un>>>0)|0)|0;yn=Nj(_n,Tn,no,oo);Wn=V;Un=Nj($n,Zn,Un,mm);mm=Un+yn|0;yn=V+Wn|0;yn=mm>>>0<Un>>>0?yn+1|0:yn;Un=mm;fo=yn;mm=ko;yn=Xn;po=mm-yn|0;Xn=yn>>31;qo=(mm>>31)-(Xn+(mm>>>0<yn>>>0)|0)|0;mm=Nj(_n,Tn,po,qo);Wn=V;Xn=Nj($n,Zn,yn,Xn);yn=Xn+mm|0;mm=V+Wn|0;mm=yn>>>0<Xn>>>0?mm+1|0:mm;Xn=yn;ko=mm;mm=Oj(Nj(ho,Vn,_n,Tn),V,$n,Zn);yn=lo-(V+(Yn>>>0<mm>>>0)|0)|0;mm=Yn-mm|0;mm=Nj(mm,yn,mm,yn);Wn=V;Yn=mm;mm=Oj(Nj(go,bo,_n,Tn),V,$n,Zn);yn=mo-(V+(co>>>0<mm>>>0)|0)|0;mm=co-mm|0;Vn=Nj(mm,yn,mm,yn);mm=Yn+Vn|0;yn=V+Wn|0;yn=mm>>>0<Vn>>>0?yn+1|0:yn;Vn=mm;mm=Oj(Nj(_n,Tn,jo,eo),V,$n,Zn);Tn=io-(V+(ao>>>0<mm>>>0)|0)|0;mm=ao-mm|0;Wn=Nj(mm,Tn,mm,Tn);Tn=Vn+Wn|0;mm=V+yn|0;Tn=Nj(Tn,Tn>>>0<Wn>>>0?mm+1|0:mm,$n,Zn);mm=V;Wn=mm;if(!mm&Tn>>>0<=1|mm>>>0<0){break f}Vn=Tn;yn=Wn;while(1){mm=Rn<<1|zn>>>31;zn=zn<<1;Rn=mm;bo=!yn&Vn>>>0>7|yn>>>0>0;Vn=(yn&3)<<30|Vn>>>2;yn=yn>>>2;if(bo){continue}break}break e}yn=Ia;if(co){if((Jm|0)<=0){q[Ia+8>>2]=0;q[Ia+12>>2]=0;break c}mm=(Jm<<1)+ -2|0}else{mm=Yn<<1}mm=(mm<<2)+nm|0;q[yn+8>>2]=q[mm>>2];q[Ia+12>>2]=q[mm+4>>2];break c}Hi();F()}Rn=Wn;zn=Tn;if(zn-1){break d}}while(1){mm=Pj(Tn,Wn,zn,Rn)+zn|0;yn=Rn+V|0;yn=mm>>>0<zn>>>0?yn+1|0:yn;zn=(yn&1)<<31|mm>>>1;Rn=yn>>>1;mm=Nj(zn,Rn,zn,Rn);yn=V;if((Wn|0)==(yn|0)&mm>>>0>Tn>>>0|yn>>>0>Wn>>>0){continue}break}}Tn=Ia+16|0;co=q[Ia+24>>2];ao=co<<5;mm=q[Ia+20>>2];Yn=Jm<<3;yn=q[(Yn|4)+nm>>2];Wn=yn;_n=Nj(zn,Rn,po,qo);Vn=_n;ho=V;Jm=Oj(Un-Vn|0,fo-(ho+(Un>>>0<Vn>>>0)|0)|0,$n,Zn);bo=yn>>31;Vn=Jm;eo=bo-(V+(yn>>>0<Vn>>>0)|0)|0;yn=yn-Vn|0;go=Nj(yn,eo,yn,eo);jo=V;yn=q[nm+Yn>>2];nm=yn>>31;eo=yn;Vn=yn;Yn=nm;io=nm;Rn=Nj(zn,Rn,no,oo);lo=V;yn=ko+lo|0;nm=Xn;zn=nm+Rn|0;if(zn>>>0<nm>>>0){yn=yn+1|0}zn=Oj(zn,yn,$n,Zn);yn=io-(V+(Vn>>>0<zn>>>0)|0)|0;nm=Vn-zn|0;Vn=Nj(nm,yn,nm,yn);nm=Vn+go|0;yn=V+jo|0;go=nm;Vn=nm>>>0<Vn>>>0?yn+1|0:yn;yn=ho+fo|0;nm=Un+_n|0;if(nm>>>0<Un>>>0){yn=yn+1|0}nm=Oj(nm,yn,$n,Zn);yn=nm;Un=bo-(V+(Wn>>>0<yn>>>0)|0)|0;yn=Wn-yn|0;yn=Nj(yn,Un,yn,Un);bo=V;Rn=Oj(Xn-Rn|0,ko-((Xn>>>0<Rn>>>0)+lo|0)|0,$n,Zn);Wn=yn;yn=Rn;Un=Yn-(V+(eo>>>0<yn>>>0)|0)|0;yn=eo-yn|0;Xn=Nj(yn,Un,yn,Un);Un=Wn+Xn|0;yn=V+bo|0;yn=Un>>>0<Xn>>>0?yn+1|0:yn;h:{if((yn|0)==(Vn|0)&go>>>0<Un>>>0|Vn>>>0<yn>>>0){if((mm|0)==(ao|0)){if((mm+1|0)<=-1){break b}if(mm>>>0<=1073741822){mm=mm+32&-32;nm=co<<6;mm=nm>>>0<mm>>>0?mm:nm}else{mm=2147483647}oc(Tn,mm);mm=q[Ia+20>>2]}q[Ia+20>>2]=mm+1;nm=q[Ia+16>>2]+(mm>>>3&536870908)|0;q[nm>>2]=q[nm>>2]|1<<(mm&31);break h}if((mm|0)==(ao|0)){if((mm+1|0)<=-1){break b}if(mm>>>0<=1073741822){mm=mm+32&-32;Jm=co<<6;mm=Jm>>>0<mm>>>0?mm:Jm}else{mm=2147483647}oc(Tn,mm);mm=q[Ia+20>>2]}q[Ia+20>>2]=mm+1;Jm=q[Ia+16>>2]+(mm>>>3&536870908)|0;zn=q[Jm>>2];ro=Jm,so=Qj(mm)&zn,q[ro>>2]=so;Jm=nm;zn=Rn}q[Ia+8>>2]=zn;q[Ia+12>>2]=Jm}T=Sn+80|0;return}Gi();F()}function xd(Ia){Ia=Ia|0;var mm=0;q[Ia>>2]=5192;xe(Ia+108|0);q[Ia>>2]=3140;mm=q[Ia+32>>2];if(mm){q[Ia+36>>2]=mm;ij(mm)}return Ia|0}function yd(Ia){Ia=Ia|0;var nm=0;q[Ia>>2]=5192;xe(Ia+108|0);q[Ia>>2]=3140;nm=q[Ia+32>>2];if(nm){q[Ia+36>>2]=nm;ij(nm)}ij(Ia)}function zd(Ia,Jm,to,uo,vo,wo){Ia=Ia|0;Jm=Jm|0;to=to|0;uo=uo|0;vo=vo|0;wo=wo|0;var xo=0,yo=0,zo=0,Ao=0,Bo=0,Co=0,Do=0,Eo=0,Fo=0,Go=0,Ho=0,Io=0,Jo=0,Ko=0,Lo=0,Mo=0,No=0,Oo=0,Po=0,Qo=0;Ao=T-48|0;T=Ao;q[Ia+68>>2]=wo;Go=Ia+108|0;ze(Go);uo=q[Ia+56>>2];vo=q[uo>>2];wo=uo+4|0;xo=q[wo>>2];q[Ao+40>>2]=0;q[Ao+32>>2]=0;q[Ao+36>>2]=0;q[Ao+24>>2]=0;q[Ao+28>>2]=0;q[Ao+16>>2]=0;q[Ao+20>>2]=0;q[Ao+8>>2]=0;q[Ao+12>>2]=0;q[Ao>>2]=0;q[Ao+4>>2]=0;a:{vo=xo-vo|0;if((vo|0)<1){break a}yo=q[uo>>2];if((yo|0)!=q[wo>>2]){No=vo>>2;Oo=Ia+60|0;Po=to+4|0;Ho=Ia+8|0;Jo=Ia+16|0;Io=Ia+32|0;Ko=Ia+12|0;Lo=Ia+28|0;Fo=Ia+20|0;Mo=Ia+24|0;Qo=Ia+56|0;while(1){Ad(Oo,q[(Eo<<2)+yo>>2],Ao+32|0);wo=q[Ao+36>>2];xo=wo>>31;vo=q[Ao+32>>2];zo=vo>>31;yo=q[Ao+40>>2];Bo=yo>>31;uo=0;Bo=Bo^yo+Bo;xo=Bo+((xo^wo+xo)+(zo^vo+zo)|0)|0;if(xo>>>0<Bo>>>0){uo=1}b:{if(!(uo|xo)){Co=q[Ia+104>>2];q[Ao+32>>2]=Co;vo=Co;break b}Co=q[Ia+104>>2];zo=Co;Bo=zo>>31;wo=Oj(Nj(zo,Bo,wo,wo>>31),V,xo,uo);q[Ao+36>>2]=wo;vo=Oj(Nj(zo,Bo,vo,vo>>31),V,xo,uo);q[Ao+32>>2]=vo;uo=vo>>31;uo=(zo-(uo+vo^uo)|0)+((wo|0)<0?wo:0-wo|0)|0;yo=(yo|0)>-1?uo:0-uo|0;q[Ao+40>>2]=yo}c:{if((vo|0)>=0){xo=wo+Co|0;Bo=yo+Co|0;break c}d:{if((wo|0)<=-1){uo=yo>>31;xo=uo+yo^uo;break d}uo=yo>>31;xo=q[Ia+100>>2]-(uo+yo^uo)|0}if((yo|0)<=-1){uo=wo>>31;Bo=uo+wo^uo;break c}uo=wo>>31;Bo=q[Ia+100>>2]-(uo+wo^uo)|0}uo=q[Ia+100>>2];Do=uo;zo=uo;e:{if(!(xo|Bo)){break e}if(!((uo|0)!=(Bo|0)|xo)){Do=Bo;zo=Bo;break e}if(!((uo|0)!=(xo|0)|Bo)){Do=xo;zo=xo;break e}if(!((Co|0)>=(Bo|0)|xo)){Do=(Co<<1)-Bo|0;zo=0;break e}if(!((uo|0)!=(xo|0)|(Co|0)<=(Bo|0))){Do=(Co<<1)-Bo|0;zo=xo;break e}if(!((uo|0)!=(Bo|0)|(Co|0)<=(xo|0))){Do=Bo;zo=(Co<<1)-xo|0;break e}if(Bo){Do=Bo;zo=xo;break e}Do=0;zo=xo;if((Co|0)>=(xo|0)){break e}zo=(Co<<1)-xo|0}q[Ao+28>>2]=Do;q[Ao+24>>2]=zo;q[Ao+40>>2]=0-yo;q[Ao+36>>2]=0-wo;q[Ao+32>>2]=0-vo;f:{if((vo|0)<=0){vo=Co-yo|0;wo=Co-wo|0;break f}vo=wo>>31;vo=vo+wo^vo;vo=(yo|0)>0?vo:uo-vo|0;xo=yo>>31;xo=xo+yo^xo;wo=(wo|0)>0?xo:uo-xo|0}g:{if(!(vo|wo)){vo=uo;break g}if(!((uo|0)!=(vo|0)|wo)){vo=uo;break g}xo=(uo|0)!=(wo|0);if(!(vo|xo)){vo=uo;break g}if(!((Co|0)>=(vo|0)|wo)){vo=(Co<<1)-vo|0;uo=0;break g}if(!((Co|0)<=(vo|0)|xo)){vo=(Co<<1)-vo|0;break g}if(!((uo|0)!=(vo|0)|(Co|0)<=(wo|0))){vo=uo;uo=(Co<<1)-wo|0;break g}if(vo){uo=wo;break g}vo=0;if((Co|0)>=(wo|0)){uo=wo;break g}uo=(Co<<1)-wo|0}q[Ao+20>>2]=vo;q[Ao+16>>2]=uo;yo=q[Ho>>2];h:{if((yo|0)<1){break h}Bo=(Eo<<3)+Jm|0;zo=Ao+24|0;xo=0;while(1){wo=0;i:{if((yo|0)<=0){uo=q[Io>>2];break i}while(1){vo=wo<<2;Do=q[vo+zo>>2];yo=q[Jo>>2];j:{if((Do|0)>(yo|0)){uo=q[Io>>2];q[vo+uo>>2]=yo;break j}uo=q[Io>>2];vo=vo+uo|0;yo=q[Ko>>2];if((Do|0)<(yo|0)){q[vo>>2]=yo;break j}q[vo>>2]=Do}wo=wo+1|0;yo=q[Ho>>2];if((wo|0)<(yo|0)){continue}break}}wo=xo<<2;vo=wo+(Ao+8|0)|0;zo=q[wo+Bo>>2]-q[uo+wo>>2]|0;q[vo>>2]=zo;wo=vo;vo=q[Lo>>2];Do=zo+q[Fo>>2]|0;k:{l:{if((zo|0)<(vo|0)){break l}if((zo|0)<=q[Mo>>2]){break k}Do=zo-q[Fo>>2]|0}q[wo>>2]=Do}zo=uo;xo=xo+1|0;if((xo|0)<(yo|0)){continue}break}xo=0;zo=Ao+16|0;if((yo|0)<1){break h}while(1){wo=0;if((yo|0)>=1){while(1){vo=wo<<2;Do=q[vo+zo>>2];yo=q[Jo>>2];m:{if((Do|0)>(yo|0)){q[uo+vo>>2]=yo;break m}vo=uo+vo|0;yo=q[Ko>>2];if((Do|0)<(yo|0)){q[vo>>2]=yo;break m}q[vo>>2]=Do}wo=wo+1|0;yo=q[Ho>>2];if((wo|0)<(yo|0)){continue}break}vo=q[Lo>>2]}zo=xo<<2;wo=zo+Ao|0;zo=q[zo+Bo>>2]-q[uo+zo>>2]|0;q[wo>>2]=zo;n:{if((zo|0)<(vo|0)){zo=zo+q[Fo>>2]|0}else{if((zo|0)<=q[Mo>>2]){break n}zo=zo-q[Fo>>2]|0}q[wo>>2]=zo}zo=uo;xo=xo+1|0;if((xo|0)<(yo|0)){continue}break}}xo=q[Ia+104>>2];yo=q[Ao+8>>2];o:{if((xo|0)<(yo|0)){yo=yo-q[Ia+96>>2]|0;break o}if((yo|0)>=(0-xo|0)){break o}yo=q[Ia+96>>2]+yo|0}q[Ao+8>>2]=yo;vo=q[Ao+12>>2];p:{if((xo|0)<(vo|0)){vo=vo-q[Ia+96>>2]|0;break p}if((vo|0)>=(0-xo|0)){break p}vo=q[Ia+96>>2]+vo|0}q[Ao+12>>2]=vo;uo=q[Ao>>2];q:{if((xo|0)<(uo|0)){uo=uo-q[Ia+96>>2]|0;break q}if((uo|0)>=(0-xo|0)){break q}uo=q[Ia+96>>2]+uo|0}q[Ao>>2]=uo;wo=q[Ao+4>>2];r:{if((xo|0)<(wo|0)){wo=wo-q[Ia+96>>2]|0;break r}if((wo|0)>=(0-xo|0)){break r}wo=q[Ia+96>>2]+wo|0}xo=Eo<<1;q[Ao+4>>2]=wo;zo=vo>>31;Bo=zo+vo^zo;zo=yo>>31;Bo=Bo+(zo+yo^zo)|0;zo=wo>>31;Do=zo+wo^zo;zo=uo>>31;s:{if((Bo|0)<(Do+(zo+uo^zo)|0)){Ae(Go,0);uo=(xo<<2)+to|0;if((yo|0)<=-1){yo=q[Ia+96>>2]+yo|0}q[uo>>2]=yo;if((vo|0)>-1){wo=vo;break s}wo=q[Ia+96>>2]+vo|0;break s}Ae(Go,1);vo=(xo<<2)+to|0;if((uo|0)<=-1){uo=q[Ia+96>>2]+uo|0}q[vo>>2]=uo;if((wo|0)>-1){break s}wo=q[Ia+96>>2]+wo|0}q[(xo<<2)+Po>>2]=wo;Eo=Eo+1|0;if((Eo|0)>=(No|0)){break a}uo=q[Qo>>2];yo=q[uo>>2];if(q[uo+4>>2]-yo>>2>>>0>Eo>>>0){continue}break}}Hi();F()}T=Ao+48|0;return 1}function Ad(Ia,Jm,to){Ia=Ia|0;Jm=Jm|0;to=to|0;var uo=0,vo=0,wo=0,Ro=0,So=0,To=0,Uo=0,Vo=0,Wo=0,Xo=0,Yo=0,Zo=0,_o=0,$o=0,ap=0,bp=0,cp=0,dp=0,ep=0,fp=0,gp=0,hp=0,ip=0,jp=0,kp=0,lp=0;wo=T-96|0;T=wo;vo=q[Ia+16>>2];o[wo+92|0]=1;q[wo+88>>2]=Jm;q[wo+84>>2]=Jm;q[wo+80>>2]=vo;uo=-1;uo=(Jm|0)!=-1?q[q[vo>>2]+(Jm<<2)>>2]:uo;Ro=q[Ia+20>>2];vo=q[Ro>>2];a:{b:{c:{d:{if(q[Ro+4>>2]-vo>>2>>>0>uo>>>0){vo=q[q[Ia+8>>2]+(q[vo+(uo<<2)>>2]<<2)>>2];uo=q[Ia+4>>2];if(!r[uo+84|0]){vo=q[q[uo+68>>2]+(vo<<2)>>2]}q[wo+72>>2]=0;q[wo+76>>2]=0;Ro=wo- -64|0;q[Ro>>2]=0;q[Ro+4>>2]=0;q[wo+56>>2]=0;q[wo+60>>2]=0;dd(uo,vo,o[uo+24|0],wo+56|0);if((Jm|0)==-1){break a}uo=Jm+1|0;Ro=(uo>>>0)%3|0?uo:Jm+ -2|0;$o=((Jm>>>0)%3|0?-1:2)+Jm|0;gp=Ia+28|0;So=!q[gp>>2];hp=Ia+20|0;ip=Ia+8|0;jp=wo+48|0;while(1){vo=Ro;uo=$o;e:{if(So){break e}uo=Jm+1|0;vo=(uo>>>0)%3|0?uo:Jm+ -2|0;uo=Jm+ -1|0;if((Jm>>>0)%3){break e}uo=Jm+2|0}Jm=-1;Jm=(vo|0)!=-1?q[q[q[Ia+16>>2]>>2]+(vo<<2)>>2]:Jm;So=q[hp>>2];vo=q[So>>2];if(q[So+4>>2]-vo>>2>>>0<=Jm>>>0){break d}vo=q[q[ip>>2]+(q[vo+(Jm<<2)>>2]<<2)>>2];So=Ia+4|0;Jm=q[So>>2];if(!r[Jm+84|0]){vo=q[q[Jm+68>>2]+(vo<<2)>>2]}q[jp>>2]=0;q[jp+4>>2]=0;q[wo+40>>2]=0;q[wo+44>>2]=0;q[wo+32>>2]=0;q[wo+36>>2]=0;dd(Jm,vo,o[Jm+24|0],wo+32|0);Jm=-1;Jm=(uo|0)!=-1?q[q[q[Ia+16>>2]>>2]+(uo<<2)>>2]:Jm;vo=q[hp>>2];uo=q[vo>>2];if(q[vo+4>>2]-uo>>2>>>0<=Jm>>>0){break c}uo=q[q[ip>>2]+(q[uo+(Jm<<2)>>2]<<2)>>2];Jm=q[So>>2];if(!r[Jm+84|0]){uo=q[q[Jm+68>>2]+(uo<<2)>>2]}vo=wo+24|0;q[vo>>2]=0;q[vo+4>>2]=0;So=wo+16|0;q[So>>2]=0;q[So+4>>2]=0;q[wo+8>>2]=0;q[wo+12>>2]=0;dd(Jm,uo,o[Jm+24|0],wo+8|0);uo=q[wo+8>>2];Jm=q[wo+56>>2];ap=uo-Jm|0;bp=q[wo+60>>2];Vo=q[wo+12>>2]-(bp+(uo>>>0<Jm>>>0)|0)|0;cp=q[wo+40>>2];uo=q[wo+64>>2];kp=cp-uo|0;dp=q[wo+68>>2];cp=q[wo+44>>2]-(dp+(cp>>>0<uo>>>0)|0)|0;ep=Nj(ap,Vo,kp,cp);fp=To-ep|0;Wo=Wo-(V+(To>>>0<ep>>>0)|0)|0;To=q[So>>2];ep=To-uo|0;So=q[So+4>>2]-((To>>>0<uo>>>0)+dp|0)|0;To=q[wo+32>>2];dp=To-Jm|0;bp=q[wo+36>>2]-((To>>>0<Jm>>>0)+bp|0)|0;uo=Nj(ep,So,dp,bp);To=uo+fp|0;Jm=V+Wo|0;Jm=To>>>0<uo>>>0?Jm+1|0:Jm;Wo=Jm;uo=Uo;Yo=ap;lp=Vo;Uo=q[wo+48>>2];Jm=q[wo+72>>2];Vo=Uo-Jm|0;ap=q[wo+76>>2];fp=q[wo+52>>2]-(ap+(Uo>>>0<Jm>>>0)|0)|0;Yo=Nj(Yo,lp,Vo,fp);Uo=uo+Yo|0;uo=V+Zo|0;uo=Uo>>>0<Yo>>>0?uo+1|0:uo;Zo=Uo;Uo=q[vo>>2];Yo=Uo-Jm|0;Jm=q[vo+4>>2]-((Uo>>>0<Jm>>>0)+ap|0)|0;vo=Nj(Yo,Jm,dp,bp);Uo=Zo-vo|0;Zo=uo-(V+(Zo>>>0<vo>>>0)|0)|0;uo=Nj(ep,So,Vo,fp);vo=Xo-uo|0;_o=_o-(V+(Xo>>>0<uo>>>0)|0)|0;uo=Nj(Yo,Jm,kp,cp);Xo=uo+vo|0;Jm=V+_o|0;Jm=Xo>>>0<uo>>>0?Jm+1|0:Jm;_o=Jm;Bd(wo+80|0);Vo=q[gp>>2];So=!Vo;Jm=q[wo+88>>2];if((Jm|0)!=-1){continue}break}Jm=Zo;uo=Jm>>31;Ia=Jm>>31;Jm=Ia+Jm|0;Ro=uo+Uo|0;if(Ro>>>0<uo>>>0){Jm=Jm+1|0}uo=uo^Ro;So=Ia^Jm;Jm=_o;Ia=Jm>>31;Jm=Jm>>31;Ro=Ia;$o=_o+Ia|0;vo=Jm+Xo|0;if(vo>>>0<Jm>>>0){$o=$o+1|0}Ia=Jm^vo;vo=Ro^$o;f:{if((Wo|0)<-1?1:(Wo|0)<=-1?To>>>0>4294967295?0:1:0){Jm=To;Ro=Ia+(uo-Jm|0)|0;Jm=vo+(So-((uo>>>0<Jm>>>0)+Wo|0)|0)|0;uo=Ro;Ia=uo>>>0<Ia>>>0?Jm+1|0:Jm;if(!Vo){break f}break b}Jm=So+Wo|0;Ro=uo;uo=To;Ro=Ro+uo|0;if(Ro>>>0<uo>>>0){Jm=Jm+1|0}uo=Ia;Ro=uo+Ro|0;Ia=Jm+vo|0;Ia=Ro>>>0<uo>>>0?Ia+1|0:Ia;uo=Ro;if(Vo){break b}}if((uo|0)<536870913){break a}Ia=((Ia&536870911)<<3|uo>>>29)&7;Jm=0;To=Oj(To,Wo,Ia,Jm);Uo=Oj(Uo,Zo,Ia,Jm);Xo=Oj(Xo,_o,Ia,Jm);break a}Hi();F()}Hi();F()}Hi();F()}if((Ia|0)<0?1:(Ia|0)<=0?uo>>>0>=536870913?0:1:0){break a}Jm=Ia>>>29;Ia=(Ia&536870911)<<3|uo>>>29;To=Oj(To,Wo,Ia,Jm);Uo=Oj(Uo,Zo,Ia,Jm);Xo=Oj(Xo,_o,Ia,Jm)}q[to+8>>2]=To;q[to+4>>2]=Uo;q[to>>2]=Xo;T=wo+96|0}function Bd(Ia){var Jm=0,to=0,mp=0;Jm=q[Ia+8>>2];mp=q[Ia>>2];a:{if(r[Ia+12|0]){b:{c:{d:{e:{if((Jm|0)==-1){break e}to=Jm+1|0;Jm=(to>>>0)%3|0?to:Jm+ -2|0;if((Jm|0)==-1){break e}Jm=q[q[mp+12>>2]+(Jm<<2)>>2];if((Jm|0)!=-1){break d}}q[Ia+8>>2]=-1;break c}to=Jm+1|0;Jm=(to>>>0)%3|0?to:Jm+ -2|0;q[Ia+8>>2]=Jm;if((Jm|0)!=-1){break b}}to=q[Ia+4>>2];Jm=-1;f:{if((to|0)==-1){break f}to=to+((to>>>0)%3|0?-1:2)|0;Jm=-1;if((to|0)==-1){break f}to=q[q[mp+12>>2]+(to<<2)>>2];Jm=-1;if((to|0)==-1){break f}Jm=to+ -1|0;if((to>>>0)%3){break f}Jm=to+2|0}o[Ia+12|0]=0;q[Ia+8>>2]=Jm;return}if((Jm|0)!=q[Ia+4>>2]){break a}q[Ia+8>>2]=-1;return}to=-1;g:{if((Jm|0)==-1){break g}Jm=Jm+((Jm>>>0)%3|0?-1:2)|0;to=-1;if((Jm|0)==-1){break g}Jm=q[q[mp+12>>2]+(Jm<<2)>>2];to=-1;if((Jm|0)==-1){break g}to=Jm+ -1|0;if((Jm>>>0)%3){break g}to=Jm+2|0}q[Ia+8>>2]=to}}function Cd(Ia,np,op,pp,qp,rp){Ia=Ia|0;np=np|0;op=op|0;pp=pp|0;qp=qp|0;rp=rp|0;var sp=0,tp=0,up=0,vp=0,wp=0,xp=0,yp=0,zp=0,Ap=0,Bp=0,Cp=0,Dp=0,Ep=0,Fp=0,Gp=0,Hp=0;q[Ia+8>>2]=qp;sp=Ia+32|0;tp=q[sp>>2];rp=q[Ia+36>>2]-tp>>2;a:{if(rp>>>0<qp>>>0){Qc(sp,qp-rp|0);break a}if(rp>>>0<=qp>>>0){break a}q[Ia+36>>2]=tp+(qp<<2)}b:{if(!pp){break b}tp=1;rp=q[np>>2];c:{if((pp|0)<=1){sp=rp;break c}sp=rp;while(1){up=q[(tp<<2)+np>>2];vp=(up|0)<(sp|0);sp=vp?up:sp;rp=vp?rp:(up|0)>(rp|0)?up:rp;tp=tp+1|0;if((tp|0)!=(pp|0)){continue}break}}q[Ia+16>>2]=rp;q[Ia+12>>2]=sp;tp=rp;rp=(rp>>31)-((sp>>31)+(rp>>>0<sp>>>0)|0)|0;sp=tp-sp|0;if(!rp&sp>>>0>2147483646|rp>>>0>0){break b}rp=sp+1|0;q[Ia+20>>2]=rp;tp=Ia+24|0;sp=(rp|0)/2|0;q[tp>>2]=sp;q[Ia+28>>2]=0-sp;if(rp&1){break b}q[tp>>2]=sp+ -1}up=pp-qp|0;if((up|0)>=1){yp=Ia+8|0;sp=q[yp>>2];Cp=0-qp<<2;Dp=Ia+16|0;vp=Ia+32|0;xp=Ia+12|0;Fp=Ia+28|0;zp=Ia+20|0;Gp=Ia+24|0;while(1){if((sp|0)>=1){pp=up<<2;Hp=pp+op|0;Ep=np+pp|0;pp=Ep+Cp|0;tp=0;while(1){rp=0;d:{if((sp|0)<=0){sp=q[vp>>2];break d}while(1){wp=rp<<2;Ap=q[wp+pp>>2];Bp=q[Dp>>2];e:{if((Ap|0)>(Bp|0)){sp=q[vp>>2];q[wp+sp>>2]=Bp;break e}sp=q[vp>>2];wp=wp+sp|0;Bp=q[xp>>2];if((Ap|0)<(Bp|0)){q[wp>>2]=Bp;break e}q[wp>>2]=Ap}rp=rp+1|0;if((rp|0)<q[yp>>2]){continue}break}}rp=tp<<2;pp=rp+Hp|0;rp=q[rp+Ep>>2]-q[rp+sp>>2]|0;q[pp>>2]=rp;f:{if((rp|0)<q[Fp>>2]){rp=rp+q[zp>>2]|0}else{if((rp|0)<=q[Gp>>2]){break f}rp=rp-q[zp>>2]|0}q[pp>>2]=rp}pp=sp;tp=tp+1|0;sp=q[yp>>2];if((tp|0)<(sp|0)){continue}break}}up=up-qp|0;if((up|0)>0){continue}break}}tp=0;pp=(qp&1073741823)!=(qp|0)?-1:qp<<2;pp=pj(ui(pp),0,pp);vp=Ia+8|0;sp=q[vp>>2];if((sp|0)>=1){wp=Ia+16|0;up=Ia+32|0;Ap=Ia+12|0;Cp=Ia+28|0;yp=Ia+20|0;Dp=Ia+24|0;Ia=pp;while(1){rp=0;g:{if((sp|0)<=0){sp=q[up>>2];break g}while(1){qp=rp<<2;zp=q[qp+Ia>>2];xp=q[wp>>2];h:{if((zp|0)>(xp|0)){sp=q[up>>2];q[qp+sp>>2]=xp;break h}sp=q[up>>2];qp=qp+sp|0;xp=q[Ap>>2];if((zp|0)<(xp|0)){q[qp>>2]=xp;break h}q[qp>>2]=zp}rp=rp+1|0;if((rp|0)<q[vp>>2]){continue}break}}qp=tp<<2;Ia=qp+op|0;qp=q[np+qp>>2]-q[qp+sp>>2]|0;q[Ia>>2]=qp;i:{if((qp|0)<q[Cp>>2]){qp=qp+q[yp>>2]|0}else{if((qp|0)<=q[Dp>>2]){break i}qp=qp-q[yp>>2]|0}q[Ia>>2]=qp}Ia=sp;tp=tp+1|0;sp=q[vp>>2];if((tp|0)<(sp|0)){continue}break}}ij(pp);return 1}function Dd(Ia,np,op){Ia=Ia|0;np=np|0;op=op|0;var pp=0,qp=0,rp=0,Ip=0,Jp=0;rp=T-16|0;T=rp;a:{if(!sc(Ia,np,op)|r[q[Ia+8>>2]+24|0]!=3){break a}Ip=q[np+48>>2];np=ui(32);q[rp>>2]=np;q[rp+4>>2]=17;q[rp+8>>2]=-2147483616;o[np+17|0]=0;o[np+16|0]=r[5944];qp=r[5940]|r[5941]<<8|(r[5942]<<16|r[5943]<<24);pp=r[5936]|r[5937]<<8|(r[5938]<<16|r[5939]<<24);o[np+8|0]=pp;o[np+9|0]=pp>>>8;o[np+10|0]=pp>>>16;o[np+11|0]=pp>>>24;o[np+12|0]=qp;o[np+13|0]=qp>>>8;o[np+14|0]=qp>>>16;o[np+15|0]=qp>>>24;qp=r[5932]|r[5933]<<8|(r[5934]<<16|r[5935]<<24);pp=r[5928]|r[5929]<<8|(r[5930]<<16|r[5931]<<24);o[np|0]=pp;o[np+1|0]=pp>>>8;o[np+2|0]=pp>>>16;o[np+3|0]=pp>>>24;o[np+4|0]=qp;o[np+5|0]=qp>>>8;o[np+6|0]=qp>>>16;o[np+7|0]=qp>>>24;b:{c:{qp=Ip+16|0;pp=q[qp>>2];if(!pp){break c}np=qp;while(1){Jp=q[pp+16>>2]<(op|0);np=Jp?np:pp;pp=q[(Jp<<2)+pp>>2];if(pp){continue}break}if((np|0)==(qp|0)|q[np+16>>2]>(op|0)){break c}np=np+20|0;if(!Jb(np,rp)){break c}np=Lg(np,rp,-1);break b}np=Lg(Ip,rp,-1)}if(o[rp+11|0]<=-1){ij(q[rp>>2])}pp=1;if((np|0)<1){pp=0;break a}Za(Ia+40|0,np)}T=rp+16|0;return pp|0}function Ed(q,Ia){q=q|0;Ia=Ia|0;return _a(q+40|0,Ia)|0}function Fd(Ia,np,op){Ia=Ia|0;np=np|0;op=op|0;var Kp=0;Kp=T-16|0;T=Kp;ab(Kp+8|0,Ia+40|0,q[Ia+8>>2],np,op);np=q[Kp+8>>2];q[Kp+8>>2]=0;op=Ia+32|0;Ia=q[op>>2];q[op>>2]=np;a:{if(!Ia){q[Kp+8>>2]=0;break a}qa(Ia);Ia=q[Kp+8>>2];q[Kp+8>>2]=0;if(!Ia){break a}qa(Ia)}T=Kp+16|0;return 1}function Gd(q){q=q|0;return 3}function Hd(Ia,np,op){Ia=Ia|0;np=np|0;op=op|0;var Lp=0,Mp=0,Np=0,Op=0,Pp=0,Qp=0,Rp=0;Lp=T-32|0;T=Lp;Op=q[np+12>>2];Pp=q[q[np+4>>2]+48>>2];op=ui(32);q[Lp+16>>2]=op;q[Lp+20>>2]=17;q[Lp+24>>2]=-2147483616;o[op+17|0]=0;o[op+16|0]=r[5944];Mp=r[5940]|r[5941]<<8|(r[5942]<<16|r[5943]<<24);Np=r[5936]|r[5937]<<8|(r[5938]<<16|r[5939]<<24);o[op+8|0]=Np;o[op+9|0]=Np>>>8;o[op+10|0]=Np>>>16;o[op+11|0]=Np>>>24;o[op+12|0]=Mp;o[op+13|0]=Mp>>>8;o[op+14|0]=Mp>>>16;o[op+15|0]=Mp>>>24;Mp=r[5932]|r[5933]<<8|(r[5934]<<16|r[5935]<<24);Np=r[5928]|r[5929]<<8|(r[5930]<<16|r[5931]<<24);o[op|0]=Np;o[op+1|0]=Np>>>8;o[op+2|0]=Np>>>16;o[op+3|0]=Np>>>24;o[op+4|0]=Mp;o[op+5|0]=Mp>>>8;o[op+6|0]=Mp>>>16;o[op+7|0]=Mp>>>24;a:{b:{Mp=Pp+16|0;Np=q[Mp>>2];if(!Np){break b}op=Mp;while(1){Qp=q[Np+16>>2]<(Op|0);op=Qp?op:Np;Np=q[(Qp<<2)+Np>>2];if(Np){continue}break}if((op|0)==(Mp|0)|(Op|0)<q[op+16>>2]){break b}op=op+20|0;if(!Jb(op,Lp+16|0)){break b}op=Lg(op,Lp+16|0,-1);break a}op=Lg(Pp,Lp+16|0,-1)}if(o[Lp+27|0]<=-1){ij(q[Lp+16>>2])}q[Lp+24>>2]=-1;q[Lp+28>>2]=-1;q[Lp+16>>2]=-1;q[Lp+20>>2]=-1;op=-1<<op^-1;c:{if(!(op&1)){break c}op=z(op)^31;if(op+ -1>>>0>28){break c}q[Lp+16>>2]=op+1;op=-2<<op;q[Lp+20>>2]=op^-1;op=-2-op|0;q[Lp+24>>2]=op;q[Lp+28>>2]=(op|0)/2}op=np+12|0;Mp=np+4|0;Op=ue(q[op>>2],q[Mp>>2]);Pp=q[op>>2];Qp=q[q[Mp>>2]+48>>2];op=ui(32);q[Lp>>2]=op;q[Lp+4>>2]=17;q[Lp+8>>2]=-2147483616;o[op+17|0]=0;o[op+16|0]=r[6084];Mp=r[6080]|r[6081]<<8|(r[6082]<<16|r[6083]<<24);Np=r[6076]|r[6077]<<8|(r[6078]<<16|r[6079]<<24);o[op+8|0]=Np;o[op+9|0]=Np>>>8;o[op+10|0]=Np>>>16;o[op+11|0]=Np>>>24;o[op+12|0]=Mp;o[op+13|0]=Mp>>>8;o[op+14|0]=Mp>>>16;o[op+15|0]=Mp>>>24;Mp=r[6072]|r[6073]<<8|(r[6074]<<16|r[6075]<<24);Np=r[6068]|r[6069]<<8|(r[6070]<<16|r[6071]<<24);o[op|0]=Np;o[op+1|0]=Np>>>8;o[op+2|0]=Np>>>16;o[op+3|0]=Np>>>24;o[op+4|0]=Mp;o[op+5|0]=Mp>>>8;o[op+6|0]=Mp>>>16;o[op+7|0]=Mp>>>24;d:{e:{Mp=Qp+16|0;Np=q[Mp>>2];if(!Np){break e}op=Mp;while(1){Rp=q[Np+16>>2]<(Pp|0);op=Rp?op:Np;Np=q[(Rp<<2)+Np>>2];if(Np){continue}break}if((op|0)==(Mp|0)|(Pp|0)<q[op+16>>2]){break e}op=op+20|0;if(!Jb(op,Lp)){break e}op=Lg(op,Lp,Op);break d}op=Lg(Qp,Lp,Op)}if(o[Lp+11|0]<=-1){ij(q[Lp>>2])}f:{g:{if(op>>>0>6){break g}h:{switch(op-1|0){case 5:op=q[np+4>>2];np=q[np+12>>2];Mp=q[q[q[op+4>>2]+8>>2]+(np<<2)>>2];if((n[q[q[op>>2]+8>>2]](op)|0)==1){Id(Lp,op,np,Lp+16|0);np=q[Lp>>2];if(np){q[Ia>>2]=np;break f}q[Lp>>2]=0}np=ui(24);q[np+4>>2]=Mp;op=q[Lp+20>>2];q[np+8>>2]=q[Lp+16>>2];q[np+12>>2]=op;op=q[Lp+28>>2];q[np+16>>2]=q[Lp+24>>2];q[np+20>>2]=op;q[np>>2]=9640;q[Lp>>2]=np;q[Ia>>2]=np;break f;case 0:case 1:case 2:case 3:case 4:break g;default:break h}}op=q[np+4>>2];Mp=q[q[q[op+4>>2]+8>>2]+(q[np+12>>2]<<2)>>2];if((n[q[q[op>>2]+8>>2]](op)|0)==1){n[q[q[op>>2]+8>>2]](op)|0}np=ui(24);q[np+4>>2]=Mp;op=q[Lp+20>>2];q[np+8>>2]=q[Lp+16>>2];q[np+12>>2]=op;op=q[Lp+28>>2];q[np+16>>2]=q[Lp+24>>2];q[np+20>>2]=op;q[np>>2]=9640;q[Ia>>2]=np;break f}q[Ia>>2]=0}T=Lp+32|0}function Id(Ia,np,op,Sp){var Tp=0,Up=0,Vp=0,Wp=0;Tp=T-32|0;T=Tp;Vp=q[q[q[np+4>>2]+8>>2]+(op<<2)>>2];a:{b:{if((n[q[q[np>>2]+8>>2]](np)|0)!=1){break b}Wp=n[q[q[np>>2]+52>>2]](np)|0;Up=n[q[q[np>>2]+60>>2]](np,op)|0;if(!(Up?Wp:0)){q[Ia>>2]=0;break a}op=n[q[q[np>>2]+56>>2]](np,op)|0;if(op){np=q[np+56>>2];q[Tp+20>>2]=op;q[Tp+16>>2]=np;q[Tp+28>>2]=Up;q[Tp+24>>2]=Up+12;Jd(Ia,Vp,Sp,Tp+16|0);if(q[Ia>>2]){break a}q[Ia>>2]=0;break b}np=q[np+56>>2];q[Tp+20>>2]=Wp;q[Tp+16>>2]=np;q[Tp+28>>2]=Up;q[Tp+24>>2]=Up+12;Kd(Ia,Vp,Sp,Tp+16|0);if(q[Ia>>2]){break a}q[Ia>>2]=0}q[Ia>>2]=0}T=Tp+32|0}function Jd(Ia,np,op,Sp){var Xp=0,Yp=0;Xp=ui(120);q[Xp+4>>2]=np;np=q[op+4>>2];q[Xp+8>>2]=q[op>>2];q[Xp+12>>2]=np;np=q[op+12>>2];q[Xp+16>>2]=q[op+8>>2];q[Xp+20>>2]=np;np=q[Sp+4>>2];q[Xp+24>>2]=q[Sp>>2];q[Xp+28>>2]=np;np=Sp+8|0;op=np;Yp=q[op+4>>2];q[Xp+32>>2]=q[op>>2];q[Xp+36>>2]=Yp;q[Xp+44>>2]=0;q[Xp+48>>2]=0;q[Xp>>2]=7304;op=q[Sp+4>>2];q[Xp+52>>2]=q[Sp>>2];q[Xp+56>>2]=op;op=q[np+4>>2];q[Xp+60>>2]=q[np>>2];q[Xp+64>>2]=op;q[Xp+72>>2]=-1;q[Xp+76>>2]=-1;q[Xp+68>>2]=1;q[Xp+40>>2]=7564;q[Xp+80>>2]=-1;q[Xp+84>>2]=-1;we(Xp+88|0);q[Ia>>2]=Xp}function Kd(Ia,np,op,Sp){var Zp=0,_p=0;Zp=ui(120);q[Zp+4>>2]=np;np=q[op+4>>2];q[Zp+8>>2]=q[op>>2];q[Zp+12>>2]=np;np=q[op+12>>2];q[Zp+16>>2]=q[op+8>>2];q[Zp+20>>2]=np;np=q[Sp+4>>2];q[Zp+24>>2]=q[Sp>>2];q[Zp+28>>2]=np;np=Sp+8|0;op=np;_p=q[op+4>>2];q[Zp+32>>2]=q[op>>2];q[Zp+36>>2]=_p;q[Zp+44>>2]=0;q[Zp+48>>2]=0;q[Zp>>2]=8984;op=q[Sp+4>>2];q[Zp+52>>2]=q[Sp>>2];q[Zp+56>>2]=op;op=q[np+4>>2];q[Zp+60>>2]=q[np>>2];q[Zp+64>>2]=op;q[Zp+72>>2]=-1;q[Zp+76>>2]=-1;q[Zp+68>>2]=1;q[Zp+40>>2]=9228;q[Zp+80>>2]=-1;q[Zp+84>>2]=-1;we(Zp+88|0);q[Ia>>2]=Zp}function Ld(Ia){Ia=Ia|0;var np=0;if(!(!q[Ia+32>>2]|(!q[Ia+24>>2]|!q[Ia+28>>2]))){np=q[Ia+36>>2]!=0}return np|0}function Md(Ia,op){Ia=Ia|0;op=op|0;var Sp=0,$p=0,aq=0,bq=0;Sp=T-16|0;T=Sp;q[Sp+12>>2]=q[Ia+12>>2];$p=q[op+20>>2];aq=$p;bq=q[op+16>>2];if(($p|0)<0?1:($p|0)<=0?bq>>>0>0?0:1:0){$a(op,q[op+4>>2],Sp+12|0,Sp+16|0);bq=q[op+16>>2];aq=q[op+20>>2]}q[Sp+8>>2]=q[Ia+20>>2];if((aq|0)<0?1:(aq|0)<=0?bq>>>0>0?0:1:0){$a(op,q[op+4>>2],Sp+8|0,Sp+12|0)}T=Sp+16|0;return 1}function Nd(Ia,op,cq,dq,eq,fq){Ia=Ia|0;op=op|0;cq=cq|0;dq=dq|0;eq=eq|0;fq=fq|0;var gq=0,hq=0,iq=0,jq=0,kq=0,lq=0,mq=0,nq=0,oq=0,pq=0,qq=0,rq=0,sq=0;hq=T-32|0;T=hq;dq=(eq&1073741823)!=(eq|0)?-1:eq<<2;mq=pj(ui(dq),0,dq);dq=q[Ia+36>>2];gq=q[dq>>2];a:{dq=q[dq+4>>2]-gq|0;if((dq|0)<5){break a}fq=dq>>2;dq=fq+ -1|0;if(fq>>>0>dq>>>0){pq=Ia+8|0;qq=q[Ia+32>>2];rq=Ia+36|0;oq=q[Ia+28>>2];sq=oq+28|0;while(1){jq=w(dq,eq);b:{c:{gq=q[(dq<<2)+gq>>2];if((gq|0)==-1|q[q[oq>>2]+(gq>>>3&536870908)>>2]>>>(gq&31)&1){break c}gq=q[q[q[oq+64>>2]+12>>2]+(gq<<2)>>2];if((gq|0)==-1){break c}iq=q[qq>>2];kq=q[sq>>2];lq=q[iq+(q[kq+(gq<<2)>>2]<<2)>>2];if((lq|0)>=(dq|0)){break c}nq=gq+1|0;nq=q[iq+(q[kq+(((nq>>>0)%3|0?nq:gq+ -2|0)<<2)>>2]<<2)>>2];if((nq|0)>=(dq|0)){break c}gq=q[iq+(q[kq+(gq+((gq>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((gq|0)>=(dq|0)){break c}if((eq|0)>=1){kq=w(eq,gq);iq=w(eq,nq);lq=w(eq,lq);gq=0;while(1){q[(gq<<2)+mq>>2]=(q[(gq+kq<<2)+op>>2]+q[(gq+iq<<2)+op>>2]|0)-q[(gq+lq<<2)+op>>2];gq=gq+1|0;if((gq|0)!=(eq|0)){continue}break}}gq=q[mq>>2];kq=q[mq+4>>2];jq=jq<<2;iq=jq+op|0;lq=q[iq+4>>2];q[hq+16>>2]=q[iq>>2];q[hq+20>>2]=lq;q[hq+8>>2]=gq;q[hq+12>>2]=kq;break b}gq=(w(fq+ -2|0,eq)<<2)+op|0;kq=q[gq>>2];gq=q[gq+4>>2];jq=jq<<2;iq=jq+op|0;lq=q[iq+4>>2];q[hq+16>>2]=q[iq>>2];q[hq+20>>2]=lq;q[hq+8>>2]=kq;q[hq+12>>2]=gq}Od(hq+24|0,pq,hq+16|0,hq+8|0);gq=cq+jq|0;q[gq>>2]=q[hq+24>>2];q[gq+4>>2]=q[hq+28>>2];if((fq|0)<3){break a}fq=dq;jq=q[rq>>2];gq=q[jq>>2];dq=dq+ -1|0;if(q[jq+4>>2]-gq>>2>>>0>dq>>>0){continue}break}}Hi();F()}if((eq|0)>=1){pj(mq,0,eq<<2)}dq=q[mq>>2];eq=q[mq+4>>2];fq=q[op+4>>2];q[hq+16>>2]=q[op>>2];q[hq+20>>2]=fq;q[hq+8>>2]=dq;q[hq+12>>2]=eq;Od(hq+24|0,Ia+8|0,hq+16|0,hq+8|0);q[cq>>2]=q[hq+24>>2];q[cq+4>>2]=q[hq+28>>2];ij(mq);T=hq+32|0;return 1}function Od(Ia,op,cq,dq){var eq=0,fq=0,tq=0,uq=0,vq=0,wq=0,xq=0;vq=op+12|0;eq=q[vq>>2];fq=q[cq+4>>2]-eq|0;q[cq>>2]=q[cq>>2]-eq;q[cq+4>>2]=fq;tq=q[dq+4>>2]-eq|0;fq=tq;eq=q[dq>>2]-eq|0;q[dq>>2]=eq;q[dq+4>>2]=fq;fq=fq>>31;uq=fq+tq^fq;fq=eq>>31;vq=q[vq>>2];if((uq+(fq+eq^fq)|0)>(vq|0)){eq=q[cq+4>>2];wq=q[cq>>2];a:{b:{if((wq|0)>=0){tq=1;fq=1;if((eq|0)>-1){break a}uq=1;tq=-1;fq=-1;if((wq|0)>=1){break b}break a}uq=-1;tq=-1;fq=-1;if((eq|0)<1){break a}}tq=(eq|0)<1?-1:1;fq=uq}xq=w(tq,vq);eq=(eq<<1)-xq|0;q[cq+4>>2]=eq;vq=w(fq,vq);uq=(wq<<1)-vq|0;q[cq>>2]=uq;c:{if((w(fq,tq)|0)>=0){eq=0-eq|0;q[cq>>2]=eq;uq=0-uq|0;break c}q[cq>>2]=eq}q[cq+4>>2]=(uq+xq|0)/2;q[cq>>2]=(eq+vq|0)/2;eq=q[dq+4>>2];vq=q[dq>>2];d:{e:{if((vq|0)>=0){tq=1;uq=1;if((eq|0)>-1){break d}fq=1;tq=-1;uq=-1;if((vq|0)>=1){break e}break d}fq=-1;tq=-1;uq=-1;if((eq|0)<1){break d}}tq=(eq|0)<1?-1:1;uq=fq}fq=q[op+12>>2];wq=w(fq,tq);eq=(eq<<1)-wq|0;q[dq+4>>2]=eq;xq=vq<<1;vq=w(fq,uq);fq=xq-vq|0;q[dq>>2]=fq;f:{if((w(tq,uq)|0)>=0){eq=0-eq|0;q[dq>>2]=eq;fq=0-fq|0;break f}q[dq>>2]=eq}tq=(fq+wq|0)/2|0;q[dq+4>>2]=tq;eq=(eq+vq|0)/2|0;q[dq>>2]=eq}uq=dq;g:{h:{i:{j:{k:{l:{m:{if(!eq){if(!tq){break g}if((tq|0)<1){break m}break j}if((tq|0)<1?(eq|0)<=-1:0){break g}if((eq|0)<1){break k}if((tq|0)>-1){break l}}fq=0-q[cq>>2]|0;q[cq>>2]=q[cq+4>>2];q[cq+4>>2]=fq;eq=q[dq+4>>2];tq=0-q[dq>>2]|0;break h}tq=0-q[cq+4>>2]|0;q[cq>>2]=0-q[cq>>2];q[cq+4>>2]=tq;eq=0-q[dq>>2]|0;tq=0-q[dq+4>>2]|0;break h}if((tq|0)<=0){break i}}fq=q[cq>>2];q[cq>>2]=0-q[cq+4>>2];q[cq+4>>2]=fq;eq=0-q[dq+4>>2]|0;tq=q[dq>>2];break h}eq=q[dq>>2];tq=q[dq+4>>2]}q[uq>>2]=eq;q[uq+4>>2]=tq}dq=q[cq>>2]-eq|0;q[Ia>>2]=dq;cq=q[cq+4>>2]-tq|0;q[Ia+4>>2]=cq;fq=Ia;if((dq|0)<=-1){dq=dq+q[op+4>>2]|0}q[fq>>2]=dq;if((cq|0)<=-1){cq=cq+q[op+4>>2]|0}q[Ia+4>>2]=cq}function Pd(Ia){Ia=Ia|0;var op=0;q[Ia>>2]=6772;op=q[Ia+136>>2];if(op){q[Ia+140>>2]=op;ij(op)}op=q[Ia+96>>2];if(op){q[Ia+100>>2]=op;ij(op)}op=q[Ia+76>>2];if(op){ij(op)}op=q[Ia- -64>>2];if(op){ij(op)}op=q[Ia+52>>2];if(op){ij(op)}op=q[Ia+40>>2];if(op){ij(op)}return Ia|0}function Qd(Ia){Ia=Ia|0;var cq=0;q[Ia>>2]=6772;cq=q[Ia+136>>2];if(cq){q[Ia+140>>2]=cq;ij(cq)}cq=q[Ia+96>>2];if(cq){q[Ia+100>>2]=cq;ij(cq)}cq=q[Ia+76>>2];if(cq){ij(cq)}cq=q[Ia- -64>>2];if(cq){ij(cq)}cq=q[Ia+52>>2];if(cq){ij(cq)}cq=q[Ia+40>>2];if(cq){ij(cq)}ij(Ia)}function Rd(Ia,dq){Ia=Ia|0;dq=dq|0;var yq=0,zq=0,Aq=0,Bq=0,Cq=0,Dq=0,Eq=0,Fq=0;zq=T-32|0;T=zq;Dq=1;while(1){Cq=w(yq,12)+Ia|0;Aq=Cq+44|0;Db(q[Aq>>2],dq);yq=yq+1|0;if(q[Aq>>2]){Bq=we(zq);ze(Bq);Aq=q[Aq>>2]-yq|0;if((Aq|0)>=0){Fq=Cq+40|0;while(1){Cq=0;while(1){Eq=Aq+Cq|0;Ae(Bq,q[q[Fq>>2]+(Eq>>>3&536870908)>>2]>>>(Eq&31)&1);Cq=Cq+1|0;if((Dq|0)!=(Cq|0)){continue}break}Aq=Aq-yq|0;if((Aq|0)>=0){continue}break}}Be(Bq,dq);xe(Bq)}Dq=Dq+1|0;if((yq|0)!=4){continue}break}q[zq>>2]=q[Ia+12>>2];Dq=q[dq+20>>2];yq=Dq;Bq=q[dq+16>>2];if((yq|0)<0?1:(yq|0)<=0?Bq>>>0>0?0:1:0){$a(dq,q[dq+4>>2],zq,zq+4|0);Bq=q[dq+16>>2];yq=q[dq+20>>2]}q[zq>>2]=q[Ia+20>>2];if((yq|0)<0?1:(yq|0)<=0?Bq>>>0>0?0:1:0){$a(dq,q[dq+4>>2],zq,zq+4|0)}T=zq+32|0;return 1}function Sd(Ia,dq,Gq,Hq,Iq,Jq){Ia=Ia|0;dq=dq|0;Gq=Gq|0;Hq=Hq|0;Iq=Iq|0;Jq=Jq|0;var Kq=0,Lq=0,Mq=0,Nq=0,Oq=0,Pq=0,Qq=0,Rq=0,Sq=0,Tq=0,Uq=0,Vq=0,Wq=0,Xq=0,Yq=0,Zq=0,_q=0,$q=0,ar=0,br=0,cr=0,dr=0,er=0,fr=0,gr=0,hr=0,ir=0,jr=0,kr=0,lr=0,mr=0,nr=0,or=0,pr=0,qr=0,rr=0,sr=0,tr=0,ur=0,vr=0;Kq=T-256|0;T=Kq;or=q[Ia+32>>2];Tq=q[Ia+28>>2];q[Kq+200>>2]=0;q[Kq+204>>2]=0;q[Kq+192>>2]=0;q[Kq+196>>2]=0;q[Kq+184>>2]=0;q[Kq+188>>2]=0;Hq=Kq+176|0;q[Hq>>2]=0;q[Hq+4>>2]=0;q[Kq+168>>2]=0;q[Kq+172>>2]=0;q[Kq+160>>2]=0;q[Kq+164>>2]=0;if(Iq){Qc(Kq+160|0,Iq);Mq=q[Hq>>2];Hq=q[Kq+172>>2]}else{Hq=0}Jq=Mq-Hq>>2;a:{if(Jq>>>0>=Iq>>>0){if(Jq>>>0<=Iq>>>0){break a}q[Kq+176>>2]=Hq+(Iq<<2);break a}Qc(Kq+160|12,Iq-Jq|0)}Jq=q[Kq+184>>2];Hq=q[Kq+188>>2]-Jq>>2;b:{if(Hq>>>0>=Iq>>>0){if(Hq>>>0<=Iq>>>0){break b}q[Kq+188>>2]=Jq+(Iq<<2);break b}Qc(Kq+184|0,Iq-Hq|0)}Jq=q[Kq+196>>2];Hq=q[Kq+200>>2]-Jq>>2;c:{if(Hq>>>0>=Iq>>>0){if(Hq>>>0<=Iq>>>0){break c}q[Kq+200>>2]=Jq+(Iq<<2);break c}Qc(Kq+196|0,Iq-Hq|0)}q[Kq+152>>2]=0;q[Kq+144>>2]=0;q[Kq+148>>2]=0;d:{e:{if(Iq){if(Iq>>>0>=1073741824){break e}Hq=Iq<<2;Jq=ui(Hq);q[Kq+144>>2]=Jq;Mq=Hq+Jq|0;q[Kq+152>>2]=Mq;pj(Jq,0,Hq);q[Kq+148>>2]=Mq}dr=Ia+136|0;Jq=q[Ia+136>>2];Hq=q[Ia+140>>2]-Jq>>2;f:{if(Hq>>>0<Iq>>>0){Qc(dr,Iq-Hq|0);break f}if(Hq>>>0<=Iq>>>0){break f}q[Ia+140>>2]=Jq+(Iq<<2)}q[Kq+120>>2]=0;q[Kq+124>>2]=0;q[Kq+112>>2]=0;q[Kq+116>>2]=0;q[Kq+104>>2]=0;q[Kq+108>>2]=0;q[Kq+96>>2]=0;q[Kq+100>>2]=0;q[Kq+88>>2]=0;q[Kq+92>>2]=0;q[Kq+80>>2]=0;q[Kq+84>>2]=0;q[Kq+72>>2]=0;q[Kq+76>>2]=0;q[Kq+64>>2]=0;q[Kq+68>>2]=0;q[Kq+56>>2]=0;q[Kq+48>>2]=0;q[Kq+52>>2]=0;if(Iq){Hq=Iq<<2;ar=ui(Hq);q[Kq+48>>2]=ar;$q=Hq+ar|0;q[Kq+56>>2]=$q;pj(ar,0,Hq);q[Kq+52>>2]=$q}Hq=q[Ia+36>>2];Mq=q[Hq>>2];Hq=q[Hq+4>>2]-Mq|0;if((Hq|0)<5){break d}g:{br=Hq>>>2;Nq=br+ -1|0;if(Hq>>2>>>0>Nq>>>0){hr=Iq<<2;pr=Ia+8|0;er=Ia+96|0;qr=Kq+141|0;ir=Kq+36|0;jr=Kq+24|0;fr=Kq+20|0;rr=fr+24|0;kr=fr+16|0;gr=Ia+136|0;while(1){Hq=0;Yq=Nq;Oq=q[(Nq<<2)+Mq>>2];h:{if((Oq|0)==-1){break h}Qq=Oq+((Oq>>>0)%3|0?-1:2)|0;Uq=Qq>>>5;Nq=1;Zq=1<<(Qq&31);_q=q[Tq>>2];Jq=0;Mq=Oq;while(1){i:{if(q[_q+(Mq>>>3&536870908)>>2]>>>(Mq&31)&1){break i}Hq=q[q[q[Tq+64>>2]+12>>2]+(Mq<<2)>>2];if((Hq|0)==-1){break i}Pq=q[or>>2];Lq=q[Tq+28>>2];Vq=q[Pq+(q[Lq+(Hq<<2)>>2]<<2)>>2];if((Vq|0)>=(Yq|0)){break i}Rq=Hq+1|0;Rq=q[Pq+(q[Lq+(((Rq>>>0)%3|0?Rq:Hq+ -2|0)<<2)>>2]<<2)>>2];if((Rq|0)>=(Yq|0)){break i}Hq=q[Pq+(q[Lq+(Hq+((Hq>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((Hq|0)>=(Yq|0)){break i}if((Iq|0)>=1){Pq=q[(Kq+160|0)+w(Jq,12)>>2];Hq=w(Hq,Iq);Rq=w(Iq,Rq);Vq=w(Iq,Vq);Lq=0;while(1){q[Pq+(Lq<<2)>>2]=(q[(Hq+Lq<<2)+dq>>2]+q[(Lq+Rq<<2)+dq>>2]|0)-q[(Lq+Vq<<2)+dq>>2];Lq=Lq+1|0;if((Lq|0)!=(Iq|0)){continue}break}}Hq=4;Jq=Jq+1|0;if((Jq|0)==4){break h}}j:{if(Nq&1){Lq=-1;Hq=Mq+1|0;Hq=(Hq>>>0)%3|0?Hq:Mq+ -2|0;if((Hq|0)==-1|q[q[Tq>>2]+(Hq>>>3&536870908)>>2]>>>(Hq&31)&1){break j}Hq=q[q[q[Tq+64>>2]+12>>2]+(Hq<<2)>>2];if((Hq|0)==-1){break j}Mq=Hq+1|0;Lq=(Mq>>>0)%3|0?Mq:Hq+ -2|0;break j}Lq=-1;Hq=((Mq>>>0)%3|0?-1:2)+Mq|0;if((Hq|0)==-1|q[q[Tq>>2]+(Hq>>>3&536870908)>>2]>>>(Hq&31)&1){break j}Hq=q[q[q[Tq+64>>2]+12>>2]+(Hq<<2)>>2];if((Hq|0)==-1){break j}if((Hq>>>0)%3){Lq=Hq+ -1|0;break j}Lq=Hq+2|0}if((Lq|0)==(Oq|0)){Hq=Jq;break h}Mq=Lq;Hq=(Lq|0)!=-1;Lq=(Hq|Nq^-1)&1;Mq=Lq?Mq:-1;Nq=Hq&Nq;if(!((Qq|0)==-1|Lq)){if(Zq&q[q[Tq>>2]+(Uq<<2)>>2]){Hq=Jq;break h}Hq=q[q[q[Tq+64>>2]+12>>2]+(Qq<<2)>>2];if((Hq|0)==-1){Hq=Jq;break h}Nq=0;if((Hq>>>0)%3){Mq=Hq+ -1|0}else{Mq=Hq+2|0}}Hq=Jq;if((Mq|0)!=-1){continue}break}}Oq=0;o[Kq+16|0]=0;q[Kq+8>>2]=0;q[Kq+12>>2]=0;q[rr>>2]=0;q[kr>>2]=0;q[kr+4>>2]=0;Jq=fr;q[Jq+8>>2]=0;q[Jq+12>>2]=0;q[Jq>>2]=0;q[Jq+4>>2]=0;lr=w(Iq,Yq)<<2;_q=lr+dq|0;Qq=(w(br+ -2|0,Iq)<<2)+dq|0;Lq=q[gr>>2];Nq=0;if((Iq|0)>0){while(1){Mq=Nq<<2;Jq=q[Mq+Qq>>2]-q[Mq+_q>>2]|0;q[Mq+ar>>2]=Jq;Pq=Lq+Mq|0;Mq=Jq>>31;q[Pq>>2]=Mq^Jq<<1;Oq=(Mq^Jq+Mq)+Oq|0;Nq=Nq+1|0;if((Nq|0)!=(Iq|0)){continue}break}}Ge(Kq+232|0,er,Lq,Iq);Jq=Je(Kq+232|0);Mq=V;Nq=Ke(Kq+232|0);Jq=Nq+Jq|0;Mq=V+Mq|0;Mq=Jq>>>0<Nq>>>0?Mq+1|0:Mq;Nq=Jq;Vq=(Hq|0)>0;if(Vq){Pq=(Hq<<3)+ -8|0;Lq=Pq+(Kq- -64|0)|0;Uq=Lq;Rq=Lq;Jq=q[Lq+4>>2];Zq=Hq+q[Lq>>2]|0;if(Zq>>>0<Hq>>>0){Jq=Jq+1|0}Lq=Zq;q[Rq>>2]=Lq;q[Uq+4>>2]=Jq;Sq=D(Ee(Lq,q[Pq+(Kq+96|0)>>2])*(+(Lq>>>0)+4294967296*+(Jq|0)));k:{if(y(Sq)<0x8000000000000000){Lq=y(Sq)>=1?Sq>0?~~A(C(Sq/4294967296),4294967295)>>>0:~~D((Sq- +(~~Sq>>>0>>>0))/4294967296)>>>0:0;Jq=~~Sq>>>0;break k}Lq=-2147483648;Jq=0}Mq=Lq+Mq|0;Jq=Jq+Nq|0;if(Jq>>>0<Nq>>>0){Mq=Mq+1|0}Nq=Jq}q[Kq+20>>2]=0;o[Kq+16|0]=0;q[Kq+8>>2]=Nq;q[Kq+12>>2]=Oq;ib(jr,Qq,Qq+hr|0);mr=q[Kq+48>>2];Wc(ir,mr,$q);if((Hq|0)>=1){Uq=(Kq+140|0)+Hq|0;Zq=Uq+ -2|0;Qq=Uq+ -1|0;Jq=(Hq<<3)+ -8|0;nr=Jq+(Kq- -64|0)|0;sr=Jq+(Kq+96|0)|0;Jq=1;Rq=0;while(1){pj(Kq+140|0,1,Hq);Rq=Rq+1|0;pj(Kq+140|0,0,Rq);$q=q[Kq+52>>2];tr=q[Kq+48>>2];l:{m:while(1){Mq=(Iq|0)<1;if(!Mq){pj(q[Kq+144>>2],0,hr)}Pq=0;Nq=q[Kq+144>>2];Wq=0;while(1){if(!r[(Kq+140|0)+Pq|0]){if(!Mq){Oq=q[(Kq+160|0)+w(Pq,12)>>2];Lq=0;while(1){Xq=Lq<<2;cr=Xq+Nq|0;q[cr>>2]=q[cr>>2]+q[Oq+Xq>>2];Lq=Lq+1|0;if((Lq|0)!=(Iq|0)){continue}break}}Wq=1<<Pq|Wq}Pq=Pq+1|0;if((Pq|0)!=(Hq|0)){continue}break}Lq=0;n:{if((Iq|0)>0){Xq=q[Kq+144>>2];while(1){Mq=Xq+(Lq<<2)|0;q[Mq>>2]=q[Mq>>2]/(Jq|0);Lq=Lq+1|0;if((Lq|0)!=(Iq|0)){continue}break}Oq=0;Pq=q[gr>>2];if((Iq|0)<=0){break n}Nq=0;while(1){Lq=Nq<<2;Mq=q[Lq+Xq>>2]-q[Lq+_q>>2]|0;q[Lq+mr>>2]=Mq;cr=Lq+Pq|0;Lq=Mq>>31;q[cr>>2]=Lq^Mq<<1;Oq=(Lq^Lq+Mq)+Oq|0;Nq=Nq+1|0;if((Nq|0)!=(Iq|0)){continue}break}break n}Pq=q[gr>>2];Oq=0}Ge(Kq+232|0,er,Pq,Iq);Nq=Je(Kq+232|0)+Ke(Kq+232|0)|0;Lq=Nq;if(Vq){Mq=q[nr+4>>2];Nq=q[nr>>2];Sq=D(Ee(Nq,q[sr>>2]+Jq|0)*(+(Nq>>>0)+4294967296*+(Mq|0)));o:{if(y(Sq)<0x8000000000000000){Nq=~~Sq>>>0;break o}Nq=0}Lq=Nq+Lq|0}Mq=q[Kq+8>>2];if(!((Lq|0)>(Mq|0)|(Oq|0)>=q[Kq+12>>2]?(Lq|0)>=(Mq|0):0)){q[Kq+20>>2]=Jq;o[Kq+16|0]=Wq;q[Kq+8>>2]=Lq;q[Kq+12>>2]=Oq;Wc(jr,q[Kq+144>>2],q[Kq+148>>2]);Wc(ir,tr,$q)}if((Qq|0)==(Kq+140|0)){break l}Mq=-1;Pq=r[Qq|0];Lq=Pq;while(1){Oq=Lq&255;Nq=Mq+ -1|0;Wq=Nq+Uq|0;Lq=r[Wq|0];if(Lq>>>0<Oq>>>0){Oq=Qq;Nq=Uq;if(Lq>>>0>=(Pq&255)>>>0){while(1){Pq=Oq;Oq=Oq+ -1|0;Xq=Nq+ -2|0;Nq=Pq;if(Lq>>>0>=r[Xq|0]){continue}break}Pq=1}Nq=Mq+Uq|0;o[Wq|0]=Pq;o[Oq|0]=Lq;Lq=Qq;if((Mq|0)==-1){continue m}while(1){Mq=r[Nq|0];o[Nq|0]=r[Lq|0];o[Lq|0]=Mq;Nq=Nq+1|0;Lq=Lq+ -1|0;if(Nq>>>0<Lq>>>0){continue}break}continue m}Mq=Nq;if((Wq|0)!=(Kq+140|0)){continue}break}break}if(Qq>>>0<=Kq+140>>>0){break l}Mq=r[Kq+140|0];o[Kq+140|0]=Pq;o[Qq|0]=Mq;Mq=qr;Lq=Zq;if(Mq>>>0>=Lq>>>0){break l}while(1){Nq=r[Mq|0];o[Mq|0]=r[Lq|0];o[Lq|0]=Nq;Mq=Mq+1|0;Lq=Lq+ -1|0;if(Mq>>>0<Lq>>>0){continue}break}}Jq=Jq+1|0;if((Hq|0)!=(Rq|0)){continue}break}}if(Vq){Jq=((Hq<<3)+Kq|0)+88|0;Nq=Jq;Oq=q[Kq+20>>2];Lq=Oq;Mq=Lq+q[Jq>>2]|0;Jq=q[Jq+4>>2]+(Lq>>31)|0;q[Nq>>2]=Mq;q[Nq+4>>2]=Mq>>>0<Lq>>>0?Jq+1|0:Jq}p:{if((Iq|0)<=0){Nq=q[dr>>2];break p}Nq=q[dr>>2];Lq=0;Mq=q[Kq+36>>2];while(1){Oq=Lq<<2;Jq=q[Oq+Mq>>2];q[Nq+Oq>>2]=Jq<<1^Jq>>31;Lq=Lq+1|0;if((Lq|0)!=(Iq|0)){continue}break}}Ie(Kq+232|0,er,Nq,Iq);if(Vq){Jq=w(Hq,12)+Ia|0;Pq=Jq+36|0;Oq=Jq+32|0;Jq=Jq+28|0;Mq=0;while(1){Qq=q[Pq>>2];Nq=Qq<<5;Lq=q[Oq>>2];q:{if(!(r[Kq+16|0]>>>Mq&1)){if((Lq|0)==(Nq|0)){if((Lq+1|0)<=-1){break g}Nq=Jq;if(Lq>>>0<=1073741822){Lq=Lq+32&-32;Qq=Qq<<6;Lq=Qq>>>0<Lq>>>0?Lq:Qq}else{Lq=2147483647}oc(Nq,Lq);Lq=q[Oq>>2]}q[Oq>>2]=Lq+1;Nq=q[Jq>>2]+(Lq>>>3&536870908)|0;q[Nq>>2]=q[Nq>>2]|1<<(Lq&31);break q}if((Lq|0)==(Nq|0)){if((Lq+1|0)<=-1){break g}Nq=Jq;if(Lq>>>0<=1073741822){Lq=Lq+32&-32;Qq=Qq<<6;Lq=Qq>>>0<Lq>>>0?Lq:Qq}else{Lq=2147483647}oc(Nq,Lq);Lq=q[Oq>>2]}q[Oq>>2]=Lq+1;Nq=q[Jq>>2]+(Lq>>>3&536870908)|0;Qq=q[Nq>>2];ur=Nq,vr=Qj(Lq)&Qq,q[ur>>2]=vr}Mq=Mq+1|0;if((Mq|0)!=(Hq|0)){continue}break}}Hq=q[Kq+24>>2];Jq=q[Hq>>2];Hq=q[Hq+4>>2];Mq=q[_q+4>>2];q[Kq+224>>2]=q[_q>>2];q[Kq+228>>2]=Mq;q[Kq+216>>2]=Jq;q[Kq+220>>2]=Hq;Od(Kq+232|0,pr,Kq+224|0,Kq+216|0);Hq=Gq+lr|0;q[Hq>>2]=q[Kq+232>>2];q[Hq+4>>2]=q[Kq+236>>2];Hq=q[Kq+36>>2];if(Hq){q[Kq+40>>2]=Hq;ij(Hq)}Hq=q[Kq+24>>2];if(Hq){q[Kq+28>>2]=Hq;ij(Hq)}if((br|0)<3){break d}br=Yq;Hq=q[Ia+36>>2];Mq=q[Hq>>2];Nq=Yq+ -1|0;if(q[Hq+4>>2]-Mq>>2>>>0>Nq>>>0){continue}break}}Hi();F()}Gi();F()}Gi();F()}if((Iq|0)>=1){pj(q[Kq+160>>2],0,Iq<<2)}Hq=q[Kq+160>>2];Iq=q[Hq>>2];Hq=q[Hq+4>>2];Jq=q[dq+4>>2];q[Kq+232>>2]=q[dq>>2];q[Kq+236>>2]=Jq;q[Kq+224>>2]=Iq;q[Kq+228>>2]=Hq;Od(Kq+8|0,Ia+8|0,Kq+232|0,Kq+224|0);q[Gq>>2]=q[Kq+8>>2];q[Gq+4>>2]=q[Kq+12>>2];Ia=q[Kq+48>>2];if(Ia){q[Kq+52>>2]=Ia;ij(Ia)}Ia=q[Kq+144>>2];if(Ia){q[Kq+148>>2]=Ia;ij(Ia)}Ia=q[Kq+196>>2];if(Ia){q[Kq+200>>2]=Ia;ij(Ia)}Ia=q[Kq+184>>2];if(Ia){q[Kq+188>>2]=Ia;ij(Ia)}Ia=q[Kq+172>>2];if(Ia){q[Kq+176>>2]=Ia;ij(Ia)}Ia=q[Kq+160>>2];if(Ia){q[Kq+164>>2]=Ia;ij(Ia)}T=Kq+256|0;return 1}function Td(Ia){Ia=Ia|0;var dq=0;q[Ia>>2]=7044;dq=q[Ia+56>>2];if(dq){ij(dq)}return Ia|0}function Ud(Ia){Ia=Ia|0;var Gq=0;q[Ia>>2]=7044;Gq=q[Ia+56>>2];if(Gq){ij(Gq)}ij(Ia)}function Vd(Ia){Ia=Ia|0;if(!(!q[Ia+40>>2]|!q[Ia+24>>2]|(!q[Ia+28>>2]|!q[Ia+32>>2]))){return q[Ia+36>>2]!=0|0}return 0}function Wd(Ia,Hq){Ia=Ia|0;Hq=Hq|0;var Iq=0;if(!(q[Hq+56>>2]|r[Hq+24|0]!=3)){q[Ia+40>>2]=Hq;Iq=1}return Iq|0}function Xd(Ia,Hq){Ia=Ia|0;Hq=Hq|0;var Jq=0,wr=0,xr=0,yr=0,zr=0;Jq=T-48|0;T=Jq;q[Jq+40>>2]=q[Ia+60>>2];yr=q[Hq+20>>2];if((yr|0)<0?1:(yr|0)<=0?t[Hq+16>>2]>0?0:1:0){$a(Hq,q[Hq+4>>2],Jq+40|0,Jq+44|0)}yr=we(Jq+8|0);ze(yr);if(q[Jq+40>>2]>=1){wr=1;while(1){zr=wr;wr=q[q[Ia+56>>2]+(xr>>>3&536870908)>>2]>>>(xr&31);Ae(yr,(zr^wr^-1)&1);wr=wr&1;xr=xr+1|0;if((xr|0)<q[Jq+40>>2]){continue}break}}Be(yr,Hq);q[Jq+44>>2]=q[Ia+12>>2];wr=q[Hq+20>>2];xr=wr;wr=q[Hq+16>>2];if((xr|0)<0?1:(xr|0)<=0?wr>>>0>0?0:1:0){$a(Hq,q[Hq+4>>2],Jq+44|0,Jq+48|0);wr=q[Hq+16>>2];xr=q[Hq+20>>2]}q[Jq+44>>2]=q[Ia+20>>2];if((xr|0)<0?1:(xr|0)<=0?wr>>>0>0?0:1:0){$a(Hq,q[Hq+4>>2],Jq+44|0,Jq+48|0)}xe(yr);T=Jq+48|0;return 1}function Yd(Ia,Hq,Ar,Br,Cr,Dr){Ia=Ia|0;Hq=Hq|0;Ar=Ar|0;Br=Br|0;Cr=Cr|0;Dr=Dr|0;var Er=0,Fr=0,Gr=0,Hr=0,Ir=0,Jr=0,Kr=0,Lr=0;Br=T-32|0;T=Br;q[Ia+44>>2]=Dr;Dr=q[Ia+36>>2];Er=q[Dr>>2];a:{Dr=q[Dr+4>>2]-Er|0;if((Dr|0)<1){break a}Fr=Dr>>2;Dr=(Dr>>>2)+ -1|0;if(Fr>>>0>Dr>>>0){Ir=Ia+40|0;Jr=Ia+8|0;Kr=Ia+36|0;while(1){cd(Ir,q[(Dr<<2)+Er>>2],Hq,Dr);Er=q[Ia+48>>2];Fr=q[Ia+52>>2];Gr=w(Cr,Dr)<<2;Hr=Gr+Hq|0;Lr=q[Hr+4>>2];q[Br+16>>2]=q[Hr>>2];q[Br+20>>2]=Lr;q[Br+8>>2]=Er;q[Br+12>>2]=Fr;Od(Br+24|0,Jr,Br+16|0,Br+8|0);Er=Ar+Gr|0;q[Er>>2]=q[Br+24>>2];q[Er+4>>2]=q[Br+28>>2];Dr=Dr+ -1|0;if((Dr|0)<0){break a}Fr=q[Kr>>2];Er=q[Fr>>2];if(q[Fr+4>>2]-Er>>2>>>0>Dr>>>0){continue}break}}Hi();F()}T=Br+32|0;return 1}function Zd(Ia){Ia=Ia|0;q[Ia>>2]=7304;xe(Ia+88|0);return Ia|0}function _d(Ia){Ia=Ia|0;q[Ia>>2]=7304;xe(Ia+88|0);ij(Ia)}function $d(Ia){Ia=Ia|0;a:{if(!q[Ia+44>>2]|!q[Ia+48>>2]|(!q[Ia+24>>2]|!q[Ia+28>>2])){break a}if(!q[Ia+32>>2]){break a}return q[Ia+36>>2]!=0|0}return 0}function ae(Ia,Hq){Ia=Ia|0;Hq=Hq|0;var Ar=0;if(!(q[Hq+56>>2]|r[Hq+24|0]!=3)){q[Ia+44>>2]=Hq;Ar=1}return Ar|0}function be(Ia,Hq){Ia=Ia|0;Hq=Hq|0;var Br=0,Cr=0,Dr=0,Mr=0;Br=T-16|0;T=Br;q[Br+12>>2]=q[Ia+12>>2];Cr=q[Hq+20>>2];Dr=Cr;Mr=q[Hq+16>>2];if((Cr|0)<0?1:(Cr|0)<=0?Mr>>>0>0?0:1:0){$a(Hq,q[Hq+4>>2],Br+12|0,Br+16|0);Mr=q[Hq+16>>2];Dr=q[Hq+20>>2]}q[Br+8>>2]=q[Ia+20>>2];if((Dr|0)<0?1:(Dr|0)<=0?Mr>>>0>0?0:1:0){$a(Hq,q[Hq+4>>2],Br+8|0,Br+12|0)}Be(Ia+88|0,Hq);T=Br+16|0;return 1}function ce(Ia,Hq,Nr,Or,Pr,Qr){Ia=Ia|0;Hq=Hq|0;Nr=Nr|0;Or=Or|0;Pr=Pr|0;Qr=Qr|0;var Rr=0,Sr=0,Tr=0,Ur=0,Vr=0,Wr=0,Xr=0,Yr=0,Zr=0,_r=0,$r=0,as=0,bs=0,cs=0,ds=0;Sr=T-48|0;T=Sr;_r=Ia+8|0;Or=q[_r>>2];if(Or+ -2>>>0<=28){q[Ia+72>>2]=Or;Or=-1<<Or;Pr=-2-Or|0;q[Ia+80>>2]=Pr;q[Ia+76>>2]=Or^-1;q[Ia+84>>2]=(Pr|0)/2}q[Ia+48>>2]=Qr;$r=Ia+88|0;ze($r);Or=q[Ia+36>>2];Pr=q[Or>>2];Qr=Or+4|0;Rr=q[Qr>>2];q[Sr+16>>2]=0;q[Sr+8>>2]=0;q[Sr+12>>2]=0;a:{Pr=Rr-Pr|0;if((Pr|0)<1){break a}Tr=q[Or>>2];if((Tr|0)!=q[Qr>>2]){as=Pr>>2;bs=Ia+40|0;cs=Nr+4|0;ds=Ia+36|0;while(1){ld(bs,q[(Zr<<2)+Tr>>2],Sr+8|0);Qr=q[Sr+12>>2];Rr=Qr>>31;Pr=q[Sr+8>>2];Ur=Pr>>31;Tr=q[Sr+16>>2];Xr=Tr>>31;Or=0;Xr=Xr^Tr+Xr;Rr=Xr+((Rr^Qr+Rr)+(Ur^Pr+Ur)|0)|0;if(Rr>>>0<Xr>>>0){Or=1}b:{if(!(Or|Rr)){Vr=q[Ia+84>>2];q[Sr+8>>2]=Vr;Wr=Vr;break b}Vr=q[Ia+84>>2];Xr=Vr>>31;Qr=Oj(Nj(Vr,Xr,Qr,Qr>>31),V,Rr,Or);q[Sr+12>>2]=Qr;Wr=Oj(Nj(Vr,Xr,Pr,Pr>>31),V,Rr,Or);q[Sr+8>>2]=Wr;Or=Wr>>31;Or=(Vr-(Or+Wr^Or)|0)+((Qr|0)<0?Qr:0-Qr|0)|0;Tr=(Tr|0)>-1?Or:0-Or|0;q[Sr+16>>2]=Tr}c:{if((Wr|0)>=0){Rr=Qr+Vr|0;Ur=Tr+Vr|0;break c}d:{if((Qr|0)<=-1){Or=Tr>>31;Rr=Or+Tr^Or;break d}Or=Tr>>31;Rr=q[Ia+80>>2]-(Or+Tr^Or)|0}if((Tr|0)<=-1){Or=Qr>>31;Ur=Or+Qr^Or;break c}Or=Qr>>31;Ur=q[Ia+80>>2]-(Or+Qr^Or)|0}Pr=q[Ia+80>>2];Xr=Pr;Yr=Pr;e:{if(!(Rr|Ur)){break e}if(!((Pr|0)!=(Ur|0)|Rr)){Xr=Ur;Yr=Ur;break e}if(!((Pr|0)!=(Rr|0)|Ur)){Xr=Rr;Yr=Rr;break e}if(!((Vr|0)>=(Ur|0)|Rr)){Xr=(Vr<<1)-Ur|0;Yr=0;break e}if(!((Pr|0)!=(Rr|0)|(Vr|0)<=(Ur|0))){Xr=(Vr<<1)-Ur|0;Yr=Rr;break e}if(!((Pr|0)!=(Ur|0)|(Vr|0)<=(Rr|0))){Xr=Ur;Yr=(Vr<<1)-Rr|0;break e}if(Ur){Xr=Ur;Yr=Rr;break e}Xr=0;Or=Rr;Yr=Or;if((Vr|0)>=(Or|0)){break e}Yr=(Vr<<1)-Rr|0}Rr=Yr;q[Sr+16>>2]=0-Tr;q[Sr+12>>2]=0-Qr;q[Sr+8>>2]=0-Wr;f:{if((Wr|0)<=0){Or=Vr-Tr|0;Qr=Vr-Qr|0;break f}Or=Qr>>31;Or=Or+Qr^Or;Or=(Tr|0)>0?Or:Pr-Or|0;Ur=Tr>>31;Ur=Ur+Tr^Ur;Qr=(Qr|0)>0?Ur:Pr-Ur|0}g:{if(!(Or|Qr)){Or=Pr;break g}if(!((Or|0)!=(Pr|0)|Qr)){Or=Pr;break g}Ur=(Pr|0)!=(Qr|0);if(!(Or|Ur)){Or=Pr;break g}if(!((Vr|0)>=(Or|0)|Qr)){Or=(Vr<<1)-Or|0;Pr=0;break g}if(!((Vr|0)<=(Or|0)|Ur)){Or=(Vr<<1)-Or|0;break g}if(!((Or|0)!=(Pr|0)|(Vr|0)<=(Qr|0))){Or=Pr;Pr=(Vr<<1)-Qr|0;break g}if(Or){Pr=Qr;break g}Or=0;if((Vr|0)>=(Qr|0)){Pr=Qr;break g}Pr=(Vr<<1)-Qr|0}Qr=(Zr<<3)+Hq|0;Ur=q[Qr+4>>2];q[Sr+32>>2]=q[Qr>>2];q[Sr+36>>2]=Ur;q[Sr+28>>2]=Xr;q[Sr+24>>2]=Rr;Od(Sr+40|0,_r,Sr+32|0,Sr+24|0);Wr=q[Sr+44>>2];Tr=q[Sr+40>>2];Rr=q[Qr+4>>2];q[Sr+32>>2]=q[Qr>>2];q[Sr+36>>2]=Rr;q[Sr+28>>2]=Or;q[Sr+24>>2]=Pr;Od(Sr+40|0,_r,Sr+32|0,Sr+24|0);Qr=q[Sr+44>>2];Pr=q[Sr+40>>2];Or=q[Ia+84>>2];h:{if((Or|0)<(Tr|0)){Tr=Tr-q[Ia+76>>2]|0;break h}if((Tr|0)>=(0-Or|0)){break h}Tr=q[Ia+76>>2]+Tr|0}i:{if((Or|0)<(Wr|0)){Wr=Wr-q[Ia+76>>2]|0;break i}if((Wr|0)>=(0-Or|0)){break i}Wr=q[Ia+76>>2]+Wr|0}j:{if((Or|0)<(Pr|0)){Pr=Pr-q[Ia+76>>2]|0;break j}if((Pr|0)>=(0-Or|0)){break j}Pr=q[Ia+76>>2]+Pr|0}k:{if((Or|0)<(Qr|0)){Qr=Qr-q[Ia+76>>2]|0;break k}if((Qr|0)>=(0-Or|0)){break k}Qr=q[Ia+76>>2]+Qr|0}Or=Zr<<1;Rr=Wr>>31;Yr=Rr+Wr^Rr;Rr=Tr>>31;Ur=Yr+(Rr+Tr^Rr)|0;Rr=Qr>>31;Yr=Rr+Qr^Rr;Rr=Pr>>31;l:{if((Ur|0)<(Yr+(Rr+Pr^Rr)|0)){Ae($r,0);Pr=(Or<<2)+Nr|0;if((Tr|0)<=-1){Tr=q[Ia+76>>2]+Tr|0}q[Pr>>2]=Tr;if((Wr|0)>-1){Qr=Wr;break l}Qr=q[Ia+76>>2]+Wr|0;break l}Ae($r,1);Rr=(Or<<2)+Nr|0;if((Pr|0)<=-1){Pr=q[Ia+76>>2]+Pr|0}q[Rr>>2]=Pr;if((Qr|0)>-1){break l}Qr=q[Ia+76>>2]+Qr|0}q[(Or<<2)+cs>>2]=Qr;Zr=Zr+1|0;if((Zr|0)>=(as|0)){break a}Or=q[ds>>2];Tr=q[Or>>2];if(q[Or+4>>2]-Tr>>2>>>0>Zr>>>0){continue}break}}Hi();F()}T=Sr+48|0;return 1}function de(Ia,Hq,Nr,Or,Pr,Qr){Ia=Ia|0;Hq=Hq|0;Nr=Nr|0;Or=Or|0;Pr=Pr|0;Qr=Qr|0;var es=0,fs=0,gs=0,hs=0,is=0,js=0,ks=0,ls=0,ms=0,ns=0,os=0,ps=0,qs=0,rs=0;fs=T-32|0;T=fs;Or=(Pr&1073741823)!=(Pr|0)?-1:Pr<<2;ls=pj(ui(Or),0,Or);Or=q[Ia+36>>2];es=q[Or>>2];a:{Or=q[Or+4>>2]-es|0;if((Or|0)<5){break a}Qr=Or>>2;Or=Qr+ -1|0;if(Qr>>>0>Or>>>0){os=Ia+8|0;ps=q[Ia+32>>2];qs=Ia+36|0;ms=q[Ia+28>>2];rs=ms+12|0;while(1){is=w(Or,Pr);b:{c:{es=q[(Or<<2)+es>>2];if((es|0)==-1){break c}es=q[q[rs>>2]+(es<<2)>>2];if((es|0)==-1){break c}gs=-1;js=q[ps>>2];hs=q[ms>>2];ns=q[js+(q[hs+(es<<2)>>2]<<2)>>2];ks=es+1|0;ks=(ks>>>0)%3|0?ks:es+ -2|0;if((ks|0)!=-1){ks=q[(ks<<2)+hs>>2]}else{ks=-1}es=es+((es>>>0)%3|0?-1:2)|0;if((es|0)!=-1){gs=q[(es<<2)+hs>>2]}if((ns|0)>=(Or|0)){break c}es=q[(ks<<2)+js>>2];if((es|0)>=(Or|0)){break c}gs=q[js+(gs<<2)>>2];if((gs|0)>=(Or|0)){break c}if((Pr|0)>=1){gs=w(Pr,gs);hs=w(Pr,es);js=w(Pr,ns);es=0;while(1){q[(es<<2)+ls>>2]=(q[(es+gs<<2)+Hq>>2]+q[(es+hs<<2)+Hq>>2]|0)-q[(es+js<<2)+Hq>>2];es=es+1|0;if((es|0)!=(Pr|0)){continue}break}}es=q[ls>>2];gs=q[ls+4>>2];is=is<<2;hs=is+Hq|0;js=q[hs+4>>2];q[fs+16>>2]=q[hs>>2];q[fs+20>>2]=js;q[fs+8>>2]=es;q[fs+12>>2]=gs;break b}es=(w(Qr+ -2|0,Pr)<<2)+Hq|0;gs=q[es>>2];es=q[es+4>>2];is=is<<2;hs=is+Hq|0;js=q[hs+4>>2];q[fs+16>>2]=q[hs>>2];q[fs+20>>2]=js;q[fs+8>>2]=gs;q[fs+12>>2]=es}Od(fs+24|0,os,fs+16|0,fs+8|0);es=Nr+is|0;q[es>>2]=q[fs+24>>2];q[es+4>>2]=q[fs+28>>2];if((Qr|0)<3){break a}Qr=Or;is=q[qs>>2];es=q[is>>2];Or=Or+ -1|0;if(q[is+4>>2]-es>>2>>>0>Or>>>0){continue}break}}Hi();F()}if((Pr|0)>=1){pj(ls,0,Pr<<2)}Or=q[ls>>2];Pr=q[ls+4>>2];Qr=q[Hq+4>>2];q[fs+16>>2]=q[Hq>>2];q[fs+20>>2]=Qr;q[fs+8>>2]=Or;q[fs+12>>2]=Pr;Od(fs+24|0,Ia+8|0,fs+16|0,fs+8|0);q[Nr>>2]=q[fs+24>>2];q[Nr+4>>2]=q[fs+28>>2];ij(ls);T=fs+32|0;return 1}function ee(Ia){Ia=Ia|0;var Hq=0;q[Ia>>2]=8476;Hq=q[Ia+136>>2];if(Hq){q[Ia+140>>2]=Hq;ij(Hq)}Hq=q[Ia+96>>2];if(Hq){q[Ia+100>>2]=Hq;ij(Hq)}Hq=q[Ia+76>>2];if(Hq){ij(Hq)}Hq=q[Ia- -64>>2];if(Hq){ij(Hq)}Hq=q[Ia+52>>2];if(Hq){ij(Hq)}Hq=q[Ia+40>>2];if(Hq){ij(Hq)}return Ia|0}function fe(Ia){Ia=Ia|0;var Nr=0;q[Ia>>2]=8476;Nr=q[Ia+136>>2];if(Nr){q[Ia+140>>2]=Nr;ij(Nr)}Nr=q[Ia+96>>2];if(Nr){q[Ia+100>>2]=Nr;ij(Nr)}Nr=q[Ia+76>>2];if(Nr){ij(Nr)}Nr=q[Ia- -64>>2];if(Nr){ij(Nr)}Nr=q[Ia+52>>2];if(Nr){ij(Nr)}Nr=q[Ia+40>>2];if(Nr){ij(Nr)}ij(Ia)}function ge(Ia,Or,Pr,Qr,ss,ts){Ia=Ia|0;Or=Or|0;Pr=Pr|0;Qr=Qr|0;ss=ss|0;ts=ts|0;var us=0,vs=0,ws=0,xs=0,ys=0,zs=0,As=0,Bs=0,Cs=0,Ds=0,Es=0,Fs=0,Gs=0,Hs=0,Is=0,Js=0,Ks=0,Ls=0,Ms=0,Ns=0,Os=0,Ps=0,Qs=0,Rs=0,Ss=0,Ts=0,Us=0,Vs=0,Ws=0,Xs=0,Ys=0,Zs=0,_s=0,$s=0,at=0,bt=0,ct=0,dt=0,et=0,ft=0;us=T-256|0;T=us;_s=q[Ia+32>>2];Ss=q[Ia+28>>2];q[us+200>>2]=0;q[us+204>>2]=0;q[us+192>>2]=0;q[us+196>>2]=0;q[us+184>>2]=0;q[us+188>>2]=0;Qr=us+176|0;q[Qr>>2]=0;q[Qr+4>>2]=0;q[us+168>>2]=0;q[us+172>>2]=0;q[us+160>>2]=0;q[us+164>>2]=0;if(ss){Qc(us+160|0,ss);zs=q[Qr>>2];Qr=q[us+172>>2]}else{Qr=0}ts=zs-Qr>>2;a:{if(ts>>>0>=ss>>>0){if(ts>>>0<=ss>>>0){break a}q[us+176>>2]=Qr+(ss<<2);break a}Qc(us+160|12,ss-ts|0)}ts=q[us+184>>2];Qr=q[us+188>>2]-ts>>2;b:{if(Qr>>>0>=ss>>>0){if(Qr>>>0<=ss>>>0){break b}q[us+188>>2]=ts+(ss<<2);break b}Qc(us+184|0,ss-Qr|0)}ts=q[us+196>>2];Qr=q[us+200>>2]-ts>>2;c:{if(Qr>>>0>=ss>>>0){if(Qr>>>0<=ss>>>0){break c}q[us+200>>2]=ts+(ss<<2);break c}Qc(us+196|0,ss-Qr|0)}q[us+152>>2]=0;q[us+144>>2]=0;q[us+148>>2]=0;d:{e:{if(ss){if(ss>>>0>=1073741824){break e}Qr=ss<<2;ts=ui(Qr);q[us+144>>2]=ts;ws=Qr+ts|0;q[us+152>>2]=ws;pj(ts,0,Qr);q[us+148>>2]=ws}Os=Ia+136|0;ts=q[Ia+136>>2];Qr=q[Ia+140>>2]-ts>>2;f:{if(Qr>>>0<ss>>>0){Qc(Os,ss-Qr|0);break f}if(Qr>>>0<=ss>>>0){break f}q[Ia+140>>2]=ts+(ss<<2)}q[us+120>>2]=0;q[us+124>>2]=0;q[us+112>>2]=0;q[us+116>>2]=0;q[us+104>>2]=0;q[us+108>>2]=0;q[us+96>>2]=0;q[us+100>>2]=0;q[us+88>>2]=0;q[us+92>>2]=0;q[us+80>>2]=0;q[us+84>>2]=0;q[us+72>>2]=0;q[us+76>>2]=0;q[us+64>>2]=0;q[us+68>>2]=0;q[us+56>>2]=0;q[us+48>>2]=0;q[us+52>>2]=0;if(ss){Qr=ss<<2;Ls=ui(Qr);q[us+48>>2]=Ls;Ks=Qr+Ls|0;q[us+56>>2]=Ks;pj(Ls,0,Qr);q[us+52>>2]=Ks}Qr=q[Ia+36>>2];zs=q[Qr>>2];Qr=q[Qr+4>>2]-zs|0;if((Qr|0)<5){break d}g:{Ms=Qr>>>2;ws=Ms+ -1|0;if(Qr>>2>>>0>ws>>>0){Ts=ss<<2;$s=Ia+8|0;Ps=Ia+96|0;at=us+141|0;Us=us+36|0;Vs=us+24|0;Qs=us+20|0;bt=Qs+24|0;Ws=Qs+16|0;Rs=Ia+136|0;while(1){ts=0;Is=ws;ws=q[(ws<<2)+zs>>2];h:{if((ws|0)==-1){break h}As=q[Ss+12>>2];Gs=ws+((ws>>>0)%3|0?-1:2)|0;Js=As+(Gs<<2)|0;zs=1;Qr=0;xs=ws;while(1){ts=q[As+(xs<<2)>>2];i:{if((ts|0)==-1){break i}ys=-1;Cs=q[_s>>2];vs=q[Ss>>2];Fs=q[Cs+(q[vs+(ts<<2)>>2]<<2)>>2];Ds=ts+1|0;Ds=(Ds>>>0)%3|0?Ds:ts+ -2|0;if((Ds|0)!=-1){Ds=q[vs+(Ds<<2)>>2]}else{Ds=-1}ts=ts+((ts>>>0)%3|0?-1:2)|0;if((ts|0)!=-1){ys=q[vs+(ts<<2)>>2]}if((Fs|0)>=(Is|0)){break i}ts=q[(Ds<<2)+Cs>>2];if((ts|0)>=(Is|0)){break i}ys=q[Cs+(ys<<2)>>2];if((ys|0)>=(Is|0)){break i}Cs=q[(us+160|0)+w(Qr,12)>>2];if((ss|0)>=1){ys=w(ss,ys);ts=w(ss,ts);Fs=w(ss,Fs);vs=0;while(1){q[Cs+(vs<<2)>>2]=(q[(vs+ys<<2)+Or>>2]+q[(ts+vs<<2)+Or>>2]|0)-q[(vs+Fs<<2)+Or>>2];vs=vs+1|0;if((vs|0)!=(ss|0)){continue}break}}ts=4;Qr=Qr+1|0;if((Qr|0)==4){break h}}j:{if(zs&1){vs=xs+1|0;vs=(vs>>>0)%3|0?vs:xs+ -2|0;ts=-1;if((vs|0)==-1){break j}vs=q[As+(vs<<2)>>2];ts=-1;if((vs|0)==-1){break j}ts=vs+1|0;ts=(ts>>>0)%3|0?ts:vs+ -2|0;break j}vs=((xs>>>0)%3|0?-1:2)+xs|0;ts=-1;if((vs|0)==-1){break j}vs=q[As+(vs<<2)>>2];ts=-1;if((vs|0)==-1){break j}ts=vs+ -1|0;if((vs>>>0)%3){break j}ts=vs+2|0}if((ts|0)==(ws|0)){ts=Qr;break h}xs=ts;ts=(ts|0)!=-1;ys=(ts|zs^-1)&1;xs=ys?xs:-1;zs=ts&zs;if(!((Gs|0)==-1|ys)){ts=q[Js>>2];if((ts|0)==-1){ts=Qr;break h}zs=0;if((ts>>>0)%3){xs=ts+ -1|0}else{xs=ts+2|0}}ts=Qr;if((xs|0)!=-1){continue}break}}ys=0;o[us+16|0]=0;q[us+8>>2]=0;q[us+12>>2]=0;q[bt>>2]=0;q[Ws>>2]=0;q[Ws+4>>2]=0;Qr=Qs;q[Qr+8>>2]=0;q[Qr+12>>2]=0;q[Qr>>2]=0;q[Qr+4>>2]=0;Xs=w(ss,Is)<<2;Ds=Xs+Or|0;zs=(w(Ms+ -2|0,ss)<<2)+Or|0;xs=q[Rs>>2];ws=0;if((ss|0)>0){while(1){vs=ws<<2;Qr=q[vs+zs>>2]-q[vs+Ds>>2]|0;q[vs+Ls>>2]=Qr;As=vs+xs|0;vs=Qr>>31;q[As>>2]=vs^Qr<<1;ys=(vs^Qr+vs)+ys|0;ws=ws+1|0;if((ws|0)!=(ss|0)){continue}break}}Ge(us+232|0,Ps,xs,ss);Qr=Je(us+232|0);ws=V;vs=Ke(us+232|0);Qr=vs+Qr|0;ws=V+ws|0;ws=Qr>>>0<vs>>>0?ws+1|0:ws;vs=Qr;Gs=(ts|0)>0;if(Gs){As=(ts<<3)+ -8|0;xs=As+(us- -64|0)|0;Cs=xs;Bs=xs;Qr=q[xs+4>>2];Fs=ts+q[xs>>2]|0;if(Fs>>>0<ts>>>0){Qr=Qr+1|0}xs=Fs;q[Bs>>2]=xs;q[Cs+4>>2]=Qr;Es=D(Ee(xs,q[As+(us+96|0)>>2])*(+(xs>>>0)+4294967296*+(Qr|0)));k:{if(y(Es)<0x8000000000000000){xs=y(Es)>=1?Es>0?~~A(C(Es/4294967296),4294967295)>>>0:~~D((Es- +(~~Es>>>0>>>0))/4294967296)>>>0:0;Qr=~~Es>>>0;break k}xs=-2147483648;Qr=0}ws=ws+xs|0;Qr=Qr+vs|0;if(Qr>>>0<vs>>>0){ws=ws+1|0}vs=Qr}q[us+20>>2]=0;o[us+16|0]=0;q[us+8>>2]=vs;q[us+12>>2]=ys;ib(Vs,zs,zs+Ts|0);Ys=q[us+48>>2];Wc(Us,Ys,Ks);if((ts|0)>=1){Cs=(us+140|0)+ts|0;Fs=Cs+ -2|0;As=Cs+ -1|0;Qr=(ts<<3)+ -8|0;Zs=Qr+(us- -64|0)|0;ct=Qr+(us+96|0)|0;Qr=1;Js=0;while(1){pj(us+140|0,1,ts);Js=Js+1|0;pj(us+140|0,0,Js);Ks=q[us+52>>2];dt=q[us+48>>2];l:{m:while(1){ws=(ss|0)<1;if(!ws){pj(q[us+144>>2],0,Ts)}xs=0;ys=q[us+144>>2];zs=0;while(1){if(!r[(us+140|0)+xs|0]){if(!ws){Bs=q[(us+160|0)+w(xs,12)>>2];vs=0;while(1){Hs=vs<<2;Ns=Hs+ys|0;q[Ns>>2]=q[Ns>>2]+q[Bs+Hs>>2];vs=vs+1|0;if((vs|0)!=(ss|0)){continue}break}}zs=1<<xs|zs}xs=xs+1|0;if((xs|0)!=(ts|0)){continue}break}vs=0;n:{if((ss|0)>0){Hs=q[us+144>>2];while(1){ws=Hs+(vs<<2)|0;q[ws>>2]=q[ws>>2]/(Qr|0);vs=vs+1|0;if((vs|0)!=(ss|0)){continue}break}ys=0;xs=q[Rs>>2];if((ss|0)<=0){break n}ws=0;while(1){Bs=ws<<2;vs=q[Bs+Hs>>2]-q[Bs+Ds>>2]|0;q[Bs+Ys>>2]=vs;Ns=xs+Bs|0;Bs=vs>>31;q[Ns>>2]=Bs^vs<<1;ys=(Bs^vs+Bs)+ys|0;ws=ws+1|0;if((ws|0)!=(ss|0)){continue}break}break n}xs=q[Rs>>2];ys=0}Ge(us+232|0,Ps,xs,ss);vs=Je(us+232|0)+Ke(us+232|0)|0;if(Gs){ws=q[Zs+4>>2];xs=q[Zs>>2];Es=D(Ee(xs,q[ct>>2]+Qr|0)*(+(xs>>>0)+4294967296*+(ws|0)));o:{if(y(Es)<0x8000000000000000){xs=~~Es>>>0;break o}xs=0}vs=xs+vs|0}ws=q[us+8>>2];if(!((vs|0)>(ws|0)|(ys|0)>=q[us+12>>2]?(vs|0)>=(ws|0):0)){q[us+20>>2]=Qr;o[us+16|0]=zs;q[us+8>>2]=vs;q[us+12>>2]=ys;Wc(Vs,q[us+144>>2],q[us+148>>2]);Wc(Us,dt,Ks)}if((As|0)==(us+140|0)){break l}zs=-1;xs=r[As|0];vs=xs;while(1){ys=vs&255;ws=zs+ -1|0;Bs=ws+Cs|0;vs=r[Bs|0];if(vs>>>0<ys>>>0){ys=As;ws=Cs;if(vs>>>0>=(xs&255)>>>0){while(1){xs=ys;ys=xs+ -1|0;Hs=ws+ -2|0;ws=xs;if(vs>>>0>=r[Hs|0]){continue}break}xs=1}ws=zs+Cs|0;o[Bs|0]=xs;o[ys|0]=vs;vs=As;if((zs|0)==-1){continue m}while(1){ys=r[ws|0];o[ws|0]=r[vs|0];o[vs|0]=ys;ws=ws+1|0;vs=vs+ -1|0;if(ws>>>0<vs>>>0){continue}break}continue m}zs=ws;if((Bs|0)!=(us+140|0)){continue}break}break}if(As>>>0<=us+140>>>0){break l}ws=r[us+140|0];o[us+140|0]=xs;o[As|0]=ws;zs=at;vs=Fs;if(zs>>>0>=vs>>>0){break l}while(1){ws=r[zs|0];o[zs|0]=r[vs|0];o[vs|0]=ws;zs=zs+1|0;vs=vs+ -1|0;if(zs>>>0<vs>>>0){continue}break}}Qr=Qr+1|0;if((ts|0)!=(Js|0)){continue}break}}if(Gs){Qr=((ts<<3)+us|0)+88|0;ys=Qr;vs=q[us+20>>2];ws=vs+q[Qr>>2]|0;Qr=q[Qr+4>>2]+(vs>>31)|0;q[ys>>2]=ws;q[ys+4>>2]=ws>>>0<vs>>>0?Qr+1|0:Qr}p:{if((ss|0)<=0){ws=q[Os>>2];break p}ws=q[Os>>2];vs=0;ys=q[us+36>>2];while(1){xs=vs<<2;Qr=q[xs+ys>>2];q[ws+xs>>2]=Qr<<1^Qr>>31;vs=vs+1|0;if((vs|0)!=(ss|0)){continue}break}}Ie(us+232|0,Ps,ws,ss);if(Gs){Qr=w(ts,12)+Ia|0;As=Qr+36|0;ys=Qr+32|0;Qr=Qr+28|0;zs=0;while(1){xs=q[As>>2];ws=xs<<5;vs=q[ys>>2];q:{if(!(r[us+16|0]>>>zs&1)){if((vs|0)==(ws|0)){if((vs+1|0)<=-1){break g}ws=Qr;if(vs>>>0<=1073741822){vs=vs+32&-32;xs=xs<<6;xs=xs>>>0<vs>>>0?vs:xs}else{xs=2147483647}oc(ws,xs);vs=q[ys>>2]}q[ys>>2]=vs+1;ws=q[Qr>>2]+(vs>>>3&536870908)|0;q[ws>>2]=q[ws>>2]|1<<(vs&31);break q}if((vs|0)==(ws|0)){if((vs+1|0)<=-1){break g}ws=Qr;if(vs>>>0<=1073741822){vs=vs+32&-32;xs=xs<<6;xs=xs>>>0<vs>>>0?vs:xs}else{xs=2147483647}oc(ws,xs);vs=q[ys>>2]}q[ys>>2]=vs+1;ws=q[Qr>>2]+(vs>>>3&536870908)|0;xs=q[ws>>2];et=ws,ft=Qj(vs)&xs,q[et>>2]=ft}zs=zs+1|0;if((zs|0)!=(ts|0)){continue}break}}Qr=q[us+24>>2];ts=q[Qr>>2];Qr=q[Qr+4>>2];ws=q[Ds+4>>2];q[us+224>>2]=q[Ds>>2];q[us+228>>2]=ws;q[us+216>>2]=ts;q[us+220>>2]=Qr;Od(us+232|0,$s,us+224|0,us+216|0);Qr=Pr+Xs|0;q[Qr>>2]=q[us+232>>2];q[Qr+4>>2]=q[us+236>>2];Qr=q[us+36>>2];if(Qr){q[us+40>>2]=Qr;ij(Qr)}Qr=q[us+24>>2];if(Qr){q[us+28>>2]=Qr;ij(Qr)}if((Ms|0)<3){break d}Ms=Is;Qr=q[Ia+36>>2];zs=q[Qr>>2];ws=Is+ -1|0;if(q[Qr+4>>2]-zs>>2>>>0>ws>>>0){continue}break}}Hi();F()}Gi();F()}Gi();F()}if((ss|0)>=1){pj(q[us+160>>2],0,ss<<2)}Qr=q[us+160>>2];ss=q[Qr>>2];Qr=q[Qr+4>>2];ts=q[Or+4>>2];q[us+232>>2]=q[Or>>2];q[us+236>>2]=ts;q[us+224>>2]=ss;q[us+228>>2]=Qr;Od(us+8|0,Ia+8|0,us+232|0,us+224|0);q[Pr>>2]=q[us+8>>2];q[Pr+4>>2]=q[us+12>>2];Ia=q[us+48>>2];if(Ia){q[us+52>>2]=Ia;ij(Ia)}Ia=q[us+144>>2];if(Ia){q[us+148>>2]=Ia;ij(Ia)}Ia=q[us+196>>2];if(Ia){q[us+200>>2]=Ia;ij(Ia)}Ia=q[us+184>>2];if(Ia){q[us+188>>2]=Ia;ij(Ia)}Ia=q[us+172>>2];if(Ia){q[us+176>>2]=Ia;ij(Ia)}Ia=q[us+160>>2];if(Ia){q[us+164>>2]=Ia;ij(Ia)}T=us+256|0;return 1}function he(Ia){Ia=Ia|0;var Or=0;q[Ia>>2]=8736;Or=q[Ia+56>>2];if(Or){ij(Or)}return Ia|0}function ie(Ia){Ia=Ia|0;var Pr=0;q[Ia>>2]=8736;Pr=q[Ia+56>>2];if(Pr){ij(Pr)}ij(Ia)}function je(Ia,Qr,ss,ts,gt,ht){Ia=Ia|0;Qr=Qr|0;ss=ss|0;ts=ts|0;gt=gt|0;ht=ht|0;var it=0,jt=0,kt=0,lt=0,mt=0,nt=0,ot=0,pt=0;ts=T-32|0;T=ts;q[Ia+44>>2]=ht;ht=q[Ia+36>>2];it=q[ht>>2];a:{ht=q[ht+4>>2]-it|0;if((ht|0)<1){break a}jt=ht>>2;ht=(ht>>>2)+ -1|0;if(jt>>>0>ht>>>0){mt=Ia+40|0;nt=Ia+8|0;ot=Ia+36|0;while(1){wd(mt,q[(ht<<2)+it>>2],Qr,ht);it=q[Ia+48>>2];jt=q[Ia+52>>2];kt=w(gt,ht)<<2;lt=kt+Qr|0;pt=q[lt+4>>2];q[ts+16>>2]=q[lt>>2];q[ts+20>>2]=pt;q[ts+8>>2]=it;q[ts+12>>2]=jt;Od(ts+24|0,nt,ts+16|0,ts+8|0);it=ss+kt|0;q[it>>2]=q[ts+24>>2];q[it+4>>2]=q[ts+28>>2];ht=ht+ -1|0;if((ht|0)<0){break a}jt=q[ot>>2];it=q[jt>>2];if(q[jt+4>>2]-it>>2>>>0>ht>>>0){continue}break}}Hi();F()}T=ts+32|0;return 1}function ke(Ia){Ia=Ia|0;q[Ia>>2]=8984;xe(Ia+88|0);return Ia|0}function le(Ia){Ia=Ia|0;q[Ia>>2]=8984;xe(Ia+88|0);ij(Ia)}function me(Ia,Qr,ss,ts,gt,ht){Ia=Ia|0;Qr=Qr|0;ss=ss|0;ts=ts|0;gt=gt|0;ht=ht|0;var qt=0,rt=0,st=0,tt=0,ut=0,vt=0,wt=0,xt=0,yt=0,zt=0,At=0,Bt=0,Ct=0,Dt=0,Et=0;rt=T-48|0;T=rt;zt=Ia+8|0;ts=q[zt>>2];if(ts+ -2>>>0<=28){q[Ia+72>>2]=ts;ts=-1<<ts;gt=-2-ts|0;q[Ia+80>>2]=gt;q[Ia+76>>2]=ts^-1;q[Ia+84>>2]=(gt|0)/2}q[Ia+48>>2]=ht;At=Ia+88|0;ze(At);ts=q[Ia+36>>2];gt=q[ts>>2];ht=ts+4|0;qt=q[ht>>2];q[rt+16>>2]=0;q[rt+8>>2]=0;q[rt+12>>2]=0;a:{gt=qt-gt|0;if((gt|0)<1){break a}st=q[ts>>2];if((st|0)!=q[ht>>2]){Bt=gt>>2;Ct=Ia+40|0;Dt=ss+4|0;Et=Ia+36|0;while(1){Ad(Ct,q[(yt<<2)+st>>2],rt+8|0);ht=q[rt+12>>2];qt=ht>>31;gt=q[rt+8>>2];tt=gt>>31;st=q[rt+16>>2];wt=st>>31;ts=0;wt=wt^st+wt;qt=wt+((qt^ht+qt)+(tt^gt+tt)|0)|0;if(qt>>>0<wt>>>0){ts=1}b:{if(!(ts|qt)){ut=q[Ia+84>>2];q[rt+8>>2]=ut;vt=ut;break b}ut=q[Ia+84>>2];wt=ut>>31;ht=Oj(Nj(ut,wt,ht,ht>>31),V,qt,ts);q[rt+12>>2]=ht;vt=Oj(Nj(ut,wt,gt,gt>>31),V,qt,ts);q[rt+8>>2]=vt;ts=vt>>31;ts=(ut-(ts+vt^ts)|0)+((ht|0)<0?ht:0-ht|0)|0;st=(st|0)>-1?ts:0-ts|0;q[rt+16>>2]=st}c:{if((vt|0)>=0){qt=ht+ut|0;tt=st+ut|0;break c}d:{if((ht|0)<=-1){ts=st>>31;qt=ts+st^ts;break d}ts=st>>31;qt=q[Ia+80>>2]-(ts+st^ts)|0}if((st|0)<=-1){ts=ht>>31;tt=ts+ht^ts;break c}ts=ht>>31;tt=q[Ia+80>>2]-(ts+ht^ts)|0}gt=q[Ia+80>>2];wt=gt;xt=gt;e:{if(!(qt|tt)){break e}if(!((gt|0)!=(tt|0)|qt)){wt=tt;xt=tt;break e}if(!((gt|0)!=(qt|0)|tt)){wt=qt;xt=qt;break e}if(!((ut|0)>=(tt|0)|qt)){wt=(ut<<1)-tt|0;xt=0;break e}if(!((gt|0)!=(qt|0)|(ut|0)<=(tt|0))){wt=(ut<<1)-tt|0;xt=qt;break e}if(!((gt|0)!=(tt|0)|(ut|0)<=(qt|0))){wt=tt;xt=(ut<<1)-qt|0;break e}if(tt){wt=tt;xt=qt;break e}wt=0;ts=qt;xt=ts;if((ut|0)>=(ts|0)){break e}xt=(ut<<1)-qt|0}qt=xt;q[rt+16>>2]=0-st;q[rt+12>>2]=0-ht;q[rt+8>>2]=0-vt;f:{if((vt|0)<=0){ts=ut-st|0;ht=ut-ht|0;break f}ts=ht>>31;ts=ts+ht^ts;ts=(st|0)>0?ts:gt-ts|0;tt=st>>31;tt=tt+st^tt;ht=(ht|0)>0?tt:gt-tt|0}g:{if(!(ts|ht)){ts=gt;break g}if(!((ts|0)!=(gt|0)|ht)){ts=gt;break g}tt=(gt|0)!=(ht|0);if(!(ts|tt)){ts=gt;break g}if(!((ut|0)>=(ts|0)|ht)){ts=(ut<<1)-ts|0;gt=0;break g}if(!((ut|0)<=(ts|0)|tt)){ts=(ut<<1)-ts|0;break g}if(!((ts|0)!=(gt|0)|(ut|0)<=(ht|0))){ts=gt;gt=(ut<<1)-ht|0;break g}if(ts){gt=ht;break g}ts=0;if((ut|0)>=(ht|0)){gt=ht;break g}gt=(ut<<1)-ht|0}ht=(yt<<3)+Qr|0;tt=q[ht+4>>2];q[rt+32>>2]=q[ht>>2];q[rt+36>>2]=tt;q[rt+28>>2]=wt;q[rt+24>>2]=qt;Od(rt+40|0,zt,rt+32|0,rt+24|0);vt=q[rt+44>>2];st=q[rt+40>>2];qt=q[ht+4>>2];q[rt+32>>2]=q[ht>>2];q[rt+36>>2]=qt;q[rt+28>>2]=ts;q[rt+24>>2]=gt;Od(rt+40|0,zt,rt+32|0,rt+24|0);ht=q[rt+44>>2];gt=q[rt+40>>2];ts=q[Ia+84>>2];h:{if((ts|0)<(st|0)){st=st-q[Ia+76>>2]|0;break h}if((st|0)>=(0-ts|0)){break h}st=q[Ia+76>>2]+st|0}i:{if((ts|0)<(vt|0)){vt=vt-q[Ia+76>>2]|0;break i}if((vt|0)>=(0-ts|0)){break i}vt=q[Ia+76>>2]+vt|0}j:{if((ts|0)<(gt|0)){gt=gt-q[Ia+76>>2]|0;break j}if((gt|0)>=(0-ts|0)){break j}gt=q[Ia+76>>2]+gt|0}k:{if((ts|0)<(ht|0)){ht=ht-q[Ia+76>>2]|0;break k}if((ht|0)>=(0-ts|0)){break k}ht=q[Ia+76>>2]+ht|0}ts=yt<<1;qt=vt>>31;xt=qt+vt^qt;qt=st>>31;tt=xt+(qt+st^qt)|0;qt=ht>>31;xt=qt+ht^qt;qt=gt>>31;l:{if((tt|0)<(xt+(qt+gt^qt)|0)){Ae(At,0);gt=(ts<<2)+ss|0;if((st|0)<=-1){st=q[Ia+76>>2]+st|0}q[gt>>2]=st;if((vt|0)>-1){ht=vt;break l}ht=q[Ia+76>>2]+vt|0;break l}Ae(At,1);qt=(ts<<2)+ss|0;if((gt|0)<=-1){gt=q[Ia+76>>2]+gt|0}q[qt>>2]=gt;if((ht|0)>-1){break l}ht=q[Ia+76>>2]+ht|0}q[(ts<<2)+Dt>>2]=ht;yt=yt+1|0;if((yt|0)>=(Bt|0)){break a}ts=q[Et>>2];st=q[ts>>2];if(q[ts+4>>2]-st>>2>>>0>yt>>>0){continue}break}}Hi();F()}T=rt+48|0;return 1}function ne(Ia,Qr,ss,ts,gt,ht){Ia=Ia|0;Qr=Qr|0;ss=ss|0;ts=ts|0;gt=gt|0;ht=ht|0;var Ft=0,Gt=0,Ht=0,It=0,Jt=0,Kt=0,Lt=0;ht=T-32|0;T=ht;ts=ts-gt|0;if((ts|0)>=1){Ht=Ia+8|0;Jt=0-gt<<2;while(1){It=ts<<2;Ft=It+Qr|0;Gt=Ft+Jt|0;Kt=q[Gt>>2];Gt=q[Gt+4>>2];Lt=q[Ft+4>>2];q[ht+16>>2]=q[Ft>>2];q[ht+20>>2]=Lt;q[ht+8>>2]=Kt;q[ht+12>>2]=Gt;Od(ht+24|0,Ht,ht+16|0,ht+8|0);Ft=ss+It|0;q[Ft>>2]=q[ht+24>>2];q[Ft+4>>2]=q[ht+28>>2];ts=ts-gt|0;if((ts|0)>0){continue}break}}ts=(gt&1073741823)!=(gt|0)?-1:gt<<2;ts=pj(ui(ts),0,ts);gt=q[ts>>2];Ft=q[ts+4>>2];Ht=q[Qr+4>>2];q[ht+16>>2]=q[Qr>>2];q[ht+20>>2]=Ht;q[ht+8>>2]=gt;q[ht+12>>2]=Ft;Od(ht+24|0,Ia+8|0,ht+16|0,ht+8|0);q[ss>>2]=q[ht+24>>2];q[ss+4>>2]=q[ht+28>>2];ij(ts);T=ht+32|0;return 1}function oe(Ia){rc(Ia);q[Ia+48>>2]=0;q[Ia+52>>2]=0;q[Ia+44>>2]=-1;q[Ia+40>>2]=1396;q[Ia>>2]=9824;q[Ia+56>>2]=0;q[Ia+60>>2]=0}function pe(Ia,Qr,ss){Ia=Ia|0;Qr=Qr|0;ss=ss|0;var ts=0,gt=0,ht=0,Mt=0,Nt=0,Ot=0,Pt=0,Qt=0,Rt=0,St=0,Tt=x(0);Mt=T-32|0;T=Mt;a:{b:{if(!sc(Ia,Qr,ss)){break b}Rt=q[q[q[Qr+4>>2]+8>>2]+(ss<<2)>>2];if(q[Rt+28>>2]!=9){break b}Nt=q[Qr+48>>2];ts=ui(32);q[Mt+16>>2]=ts;q[Mt+20>>2]=17;q[Mt+24>>2]=-2147483616;o[ts+17|0]=0;o[ts+16|0]=r[9896];Ot=r[9892]|r[9893]<<8|(r[9894]<<16|r[9895]<<24);gt=r[9888]|r[9889]<<8|(r[9890]<<16|r[9891]<<24);o[ts+8|0]=gt;o[ts+9|0]=gt>>>8;o[ts+10|0]=gt>>>16;o[ts+11|0]=gt>>>24;o[ts+12|0]=Ot;o[ts+13|0]=Ot>>>8;o[ts+14|0]=Ot>>>16;o[ts+15|0]=Ot>>>24;Ot=r[9884]|r[9885]<<8|(r[9886]<<16|r[9887]<<24);gt=r[9880]|r[9881]<<8|(r[9882]<<16|r[9883]<<24);o[ts|0]=gt;o[ts+1|0]=gt>>>8;o[ts+2|0]=gt>>>16;o[ts+3|0]=gt>>>24;o[ts+4|0]=Ot;o[ts+5|0]=Ot>>>8;o[ts+6|0]=Ot>>>16;o[ts+7|0]=Ot>>>24;c:{d:{Ot=Nt+16|0;ht=q[Ot>>2];if(!ht){break d}ts=Ot;while(1){gt=q[ht+16>>2]<(ss|0);ts=gt?ts:ht;ht=q[(gt<<2)+ht>>2];if(ht){continue}break}if((ts|0)==(Ot|0)|q[ts+16>>2]>(ss|0)){break d}ts=ts+20|0;if(!Jb(ts,Mt+16|0)){break d}Ot=Lg(ts,Mt+16|0,-1);break c}Ot=Lg(Nt,Mt+16|0,-1)}if(o[Mt+27|0]<=-1){ij(q[Mt+16>>2])}if((Ot|0)<1){ht=0;break b}Nt=q[Qr+48>>2];ts=ui(32);q[Mt+16>>2]=ts;q[Mt+20>>2]=19;q[Mt+24>>2]=-2147483616;o[ts+19|0]=0;gt=r[9913]|r[9914]<<8|(r[9915]<<16|r[9916]<<24);o[ts+15|0]=gt;o[ts+16|0]=gt>>>8;o[ts+17|0]=gt>>>16;o[ts+18|0]=gt>>>24;gt=r[9910]|r[9911]<<8|(r[9912]<<16|r[9913]<<24);ht=r[9906]|r[9907]<<8|(r[9908]<<16|r[9909]<<24);o[ts+8|0]=ht;o[ts+9|0]=ht>>>8;o[ts+10|0]=ht>>>16;o[ts+11|0]=ht>>>24;o[ts+12|0]=gt;o[ts+13|0]=gt>>>8;o[ts+14|0]=gt>>>16;o[ts+15|0]=gt>>>24;gt=r[9902]|r[9903]<<8|(r[9904]<<16|r[9905]<<24);ht=r[9898]|r[9899]<<8|(r[9900]<<16|r[9901]<<24);o[ts|0]=ht;o[ts+1|0]=ht>>>8;o[ts+2|0]=ht>>>16;o[ts+3|0]=ht>>>24;o[ts+4|0]=gt;o[ts+5|0]=gt>>>8;o[ts+6|0]=gt>>>16;o[ts+7|0]=gt>>>24;e:{f:{gt=Nt+16|0;ht=q[gt>>2];if(!ht){break f}ts=gt;while(1){Pt=q[ht+16>>2]<(ss|0);ts=Pt?ts:ht;ht=q[(Pt<<2)+ht>>2];if(ht){continue}break}if((ts|0)==(gt|0)|q[ts+16>>2]>(ss|0)){break f}gt=Jb(ts+20|0,Mt+16|0);break e}gt=Jb(Nt,Mt+16|0)}ts=0;g:{if(!gt){break g}Nt=q[Qr+48>>2];q[Mt+8>>2]=0;q[Mt>>2]=0;q[Mt+4>>2]=0;ts=ui(32);q[Mt>>2]=ts;q[Mt+4>>2]=18;q[Mt+8>>2]=-2147483616;o[ts+18|0]=0;gt=r[9934]|r[9935]<<8;o[ts+16|0]=gt;o[ts+17|0]=gt>>>8;gt=r[9930]|r[9931]<<8|(r[9932]<<16|r[9933]<<24);ht=r[9926]|r[9927]<<8|(r[9928]<<16|r[9929]<<24);o[ts+8|0]=ht;o[ts+9|0]=ht>>>8;o[ts+10|0]=ht>>>16;o[ts+11|0]=ht>>>24;o[ts+12|0]=gt;o[ts+13|0]=gt>>>8;o[ts+14|0]=gt>>>16;o[ts+15|0]=gt>>>24;gt=r[9922]|r[9923]<<8|(r[9924]<<16|r[9925]<<24);ht=r[9918]|r[9919]<<8|(r[9920]<<16|r[9921]<<24);o[ts|0]=ht;o[ts+1|0]=ht>>>8;o[ts+2|0]=ht>>>16;o[ts+3|0]=ht>>>24;o[ts+4|0]=gt;o[ts+5|0]=gt>>>8;o[ts+6|0]=gt>>>16;o[ts+7|0]=gt>>>24;h:{i:{gt=Nt+16|0;ht=q[gt>>2];if(!ht){break i}ts=gt;while(1){Pt=q[ht+16>>2]<(ss|0);ts=Pt?ts:ht;ht=q[(Pt<<2)+ht>>2];if(ht){continue}break}if((ts|0)==(gt|0)|q[ts+16>>2]>(ss|0)){break i}ts=Jb(ts+20|0,Mt);break h}ts=Jb(Nt,Mt)}if(o[Mt+11|0]<=-1){ij(q[Mt>>2])}ts=(ts|0)!=0}if(o[Mt+27|0]<=-1){ij(q[Mt+16>>2])}j:{if(ts){Qt=Rt+24|0;ts=o[Qt|0];q[Mt+24>>2]=0;q[Mt+16>>2]=0;q[Mt+20>>2]=0;Nt=0;if(ts){if((ts|0)<=-1){break a}ts=ts<<2;Nt=ui(ts);q[Mt+16>>2]=Nt;gt=ts+Nt|0;q[Mt+24>>2]=gt;pj(Nt,0,ts);q[Mt+20>>2]=gt}Pt=q[Qr+48>>2];q[Mt+8>>2]=0;q[Mt>>2]=0;q[Mt+4>>2]=0;ts=ui(32);q[Mt>>2]=ts;q[Mt+4>>2]=19;q[Mt+8>>2]=-2147483616;o[ts+19|0]=0;gt=r[9913]|r[9914]<<8|(r[9915]<<16|r[9916]<<24);o[ts+15|0]=gt;o[ts+16|0]=gt>>>8;o[ts+17|0]=gt>>>16;o[ts+18|0]=gt>>>24;gt=r[9910]|r[9911]<<8|(r[9912]<<16|r[9913]<<24);ht=r[9906]|r[9907]<<8|(r[9908]<<16|r[9909]<<24);o[ts+8|0]=ht;o[ts+9|0]=ht>>>8;o[ts+10|0]=ht>>>16;o[ts+11|0]=ht>>>24;o[ts+12|0]=gt;o[ts+13|0]=gt>>>8;o[ts+14|0]=gt>>>16;o[ts+15|0]=gt>>>24;gt=r[9902]|r[9903]<<8|(r[9904]<<16|r[9905]<<24);ht=r[9898]|r[9899]<<8|(r[9900]<<16|r[9901]<<24);o[ts|0]=ht;o[ts+1|0]=ht>>>8;o[ts+2|0]=ht>>>16;o[ts+3|0]=ht>>>24;o[ts+4|0]=gt;o[ts+5|0]=gt>>>8;o[ts+6|0]=gt>>>16;o[ts+7|0]=gt>>>24;Qt=o[Qt|0];k:{l:{gt=Pt+16|0;ht=q[gt>>2];if(!ht){break l}ts=gt;while(1){St=q[ht+16>>2]<(ss|0);ts=St?ts:ht;ht=q[(St<<2)+ht>>2];if(ht){continue}break}if((ts|0)==(gt|0)|q[ts+16>>2]>(ss|0)){break l}ts=ts+20|0;if(!Jb(ts,Mt)){break l}Kb(ts,Mt,Qt,Nt);break k}Kb(Pt,Mt,Qt,Nt)}if(o[Mt+11|0]<=-1){ij(q[Mt>>2])}Nt=q[Qr+48>>2];q[Mt+8>>2]=0;q[Mt>>2]=0;q[Mt+4>>2]=0;Qr=ui(32);q[Mt>>2]=Qr;q[Mt+4>>2]=18;q[Mt+8>>2]=-2147483616;o[Qr+18|0]=0;ts=r[9934]|r[9935]<<8;o[Qr+16|0]=ts;o[Qr+17|0]=ts>>>8;ts=r[9930]|r[9931]<<8|(r[9932]<<16|r[9933]<<24);gt=r[9926]|r[9927]<<8|(r[9928]<<16|r[9929]<<24);o[Qr+8|0]=gt;o[Qr+9|0]=gt>>>8;o[Qr+10|0]=gt>>>16;o[Qr+11|0]=gt>>>24;o[Qr+12|0]=ts;o[Qr+13|0]=ts>>>8;o[Qr+14|0]=ts>>>16;o[Qr+15|0]=ts>>>24;ts=r[9922]|r[9923]<<8|(r[9924]<<16|r[9925]<<24);gt=r[9918]|r[9919]<<8|(r[9920]<<16|r[9921]<<24);o[Qr|0]=gt;o[Qr+1|0]=gt>>>8;o[Qr+2|0]=gt>>>16;o[Qr+3|0]=gt>>>24;o[Qr+4|0]=ts;o[Qr+5|0]=ts>>>8;o[Qr+6|0]=ts>>>16;o[Qr+7|0]=ts>>>24;m:{n:{Qr=Nt+16|0;ht=q[Qr>>2];if(!ht){break n}ts=Qr;while(1){gt=q[ht+16>>2]<(ss|0);ts=gt?ts:ht;ht=q[(gt<<2)+ht>>2];if(ht){continue}break}if((Qr|0)==(ts|0)|q[ts+16>>2]>(ss|0)){break n}Qr=ts+20|0;if(!Jb(Qr,Mt)){break n}Tt=Mg(Qr,Mt);break m}Tt=Mg(Nt,Mt)}if(o[Mt+11|0]<=-1){ij(q[Mt>>2])}hb(Ia+40|0,Ot,q[Mt+16>>2],o[Rt+24|0],Tt);Ia=q[Mt+16>>2];if(!Ia){break j}q[Mt+20>>2]=Ia;ij(Ia);break j}ht=0;if(!jb(Ia+40|0,Rt,Ot)){break b}}ht=1}T=Mt+32|0;return ht|0}Gi();F()}function qe(q,Ia){q=q|0;Ia=Ia|0;return kb(q+40|0,Ia)|0}function re(Ia,Qr,ss){Ia=Ia|0;Qr=Qr|0;ss=ss|0;var Ut=0;Ut=T-16|0;T=Ut;lb(Ut+8|0,Ia+40|0,q[Ia+8>>2],Qr,ss);Qr=q[Ut+8>>2];q[Ut+8>>2]=0;ss=Ia+32|0;Ia=q[ss>>2];q[ss>>2]=Qr;a:{if(!Ia){q[Ut+8>>2]=0;break a}qa(Ia);Ia=q[Ut+8>>2];q[Ut+8>>2]=0;if(!Ia){break a}qa(Ia)}T=Ut+16|0;return 1}function se(Ia){Ia=Ia|0;var Qr=0,ss=0;q[Ia>>2]=9824;q[Ia+40>>2]=1396;Qr=q[Ia+48>>2];if(Qr){q[Ia+52>>2]=Qr;ij(Qr)}q[Ia>>2]=2204;ss=Ia+36|0;Qr=q[ss>>2];q[ss>>2]=0;if(Qr){n[q[q[Qr>>2]+4>>2]](Qr)}q[Ia>>2]=1884;ss=Ia+32|0;Qr=q[ss>>2];q[ss>>2]=0;if(Qr){qa(Qr)}Qr=q[Ia+16>>2];if(Qr){q[Ia+20>>2]=Qr;ij(Qr)}return Ia|0}function te(Ia){Ia=Ia|0;var Vt=0,Wt=0;q[Ia>>2]=9824;q[Ia+40>>2]=1396;Vt=q[Ia+48>>2];if(Vt){q[Ia+52>>2]=Vt;ij(Vt)}q[Ia>>2]=2204;Wt=Ia+36|0;Vt=q[Wt>>2];q[Wt>>2]=0;if(Vt){n[q[q[Vt>>2]+4>>2]](Vt)}q[Ia>>2]=1884;Wt=Ia+32|0;Vt=q[Wt>>2];q[Wt>>2]=0;if(Vt){qa(Vt)}Vt=q[Ia+16>>2];if(Vt){q[Ia+20>>2]=Vt;ij(Vt)}ij(Ia)}function ue(Ia,Xt){var Yt=0;a:{if((Mb(q[Xt+48>>2])|0)>9){break a}if((n[q[q[Xt>>2]+8>>2]](Xt)|0)!=1){break a}Ia=q[q[q[Xt+4>>2]+8>>2]+(Ia<<2)>>2];Yt=q[Ia+56>>2];if((Yt|0)==3){Yt=5;if((Mb(q[Xt+48>>2])|0)<4){break a}Yt=q[Ia+56>>2]}Ia=Mb(q[Xt+48>>2]);if((Yt|0)==1){Yt=(Ia|0)<4?6:0;break a}Yt=0;if((Ia|0)>7){break a}Yt=1;if((Mb(q[Xt+48>>2])|0)>1){break a}return t[q[Xt+4>>2]+80>>2]<40?1:4}return Yt}function ve(Ia,Xt){var Zt=0,_t=0,$t=0,au=0,bu=0;au=T-16|0;T=au;Zt=ui(32);q[au>>2]=Zt;q[au+4>>2]=17;q[au+8>>2]=-2147483616;o[Zt+17|0]=0;o[Zt+16|0]=r[10016];$t=r[10012]|r[10013]<<8|(r[10014]<<16|r[10015]<<24);_t=r[10008]|r[10009]<<8|(r[10010]<<16|r[10011]<<24);o[Zt+8|0]=_t;o[Zt+9|0]=_t>>>8;o[Zt+10|0]=_t>>>16;o[Zt+11|0]=_t>>>24;o[Zt+12|0]=$t;o[Zt+13|0]=$t>>>8;o[Zt+14|0]=$t>>>16;o[Zt+15|0]=$t>>>24;$t=r[10004]|r[10005]<<8|(r[10006]<<16|r[10007]<<24);_t=r[1e4]|r[10001]<<8|(r[10002]<<16|r[10003]<<24);o[Zt|0]=_t;o[Zt+1|0]=_t>>>8;o[Zt+2|0]=_t>>>16;o[Zt+3|0]=_t>>>24;o[Zt+4|0]=$t;o[Zt+5|0]=$t>>>8;o[Zt+6|0]=$t>>>16;o[Zt+7|0]=$t>>>24;a:{b:{$t=Xt+16|0;_t=q[$t>>2];if(!_t){break b}Zt=$t;while(1){bu=q[_t+16>>2]<(Ia|0);Zt=bu?Zt:_t;_t=q[(bu<<2)+_t>>2];if(_t){continue}break}if((Zt|0)==($t|0)|q[Zt+16>>2]>(Ia|0)){break b}Ia=Zt+20|0;if(!Jb(Ia,au)){break b}Ia=Lg(Ia,au,-1);break a}Ia=Lg(Xt,au,-1)}if(o[au+11|0]<=-1){ij(q[au>>2])}T=au+16|0;return(Ia|0)==-1?-1:Ia>>>0>6?-2:Ia}function we(Ia){q[Ia>>2]=0;q[Ia+4>>2]=0;q[Ia+24>>2]=0;q[Ia+28>>2]=0;q[Ia+16>>2]=0;q[Ia+20>>2]=0;q[Ia+8>>2]=0;q[Ia+12>>2]=0;return Ia}function xe(Ia){var Xt=0,cu=0,du=0;cu=T-16|0;T=cu;q[cu+8>>2]=0;q[cu+12>>2]=0;ye(Ia,cu+8|0);q[Ia+24>>2]=0;q[Ia+28>>2]=0;du=Ia+16|0;Xt=q[Ia+12>>2];q[du>>2]=Xt;if(Xt){q[du>>2]=Xt;ij(Xt)}Xt=q[Ia>>2];if(Xt){q[Ia+4>>2]=Xt;ij(Xt)}T=cu+16|0}function ye(Ia,eu){var fu=0,gu=0,hu=0,iu=0,ju=0,ku=0;hu=2;fu=q[Ia+8>>2];gu=q[Ia>>2];if(fu-gu>>3>>>0>=2){iu=q[Ia+4>>2];ju=iu-gu>>3;hu=ju>>>0<2?ju:2;if(hu){fu=gu;while(1){ku=q[eu+4>>2];q[fu>>2]=q[eu>>2];q[fu+4>>2]=ku;fu=fu+8|0;hu=hu+ -1|0;if(hu){continue}break}}if(ju>>>0<2){fu=2-ju|0;while(1){gu=q[eu+4>>2];q[iu>>2]=q[eu>>2];q[iu+4>>2]=gu;iu=iu+8|0;fu=fu+ -1|0;if(fu){continue}break}q[Ia+4>>2]=iu;return}q[Ia+4>>2]=gu+16;return}if(gu){q[Ia+4>>2]=gu;ij(gu);q[Ia+8>>2]=0;q[Ia>>2]=0;q[Ia+4>>2]=0;fu=0}gu=fu>>2;gu=fu>>3>>>0<268435455?gu>>>0<2?2:gu:536870911;if(gu>>>0<536870912){gu=gu<<3;fu=ui(gu);q[Ia>>2]=fu;q[Ia+4>>2]=fu;q[Ia+8>>2]=fu+gu;while(1){gu=q[eu+4>>2];q[fu>>2]=q[eu>>2];q[fu+4>>2]=gu;fu=fu+8|0;hu=hu+ -1|0;if(hu){continue}break}q[Ia+4>>2]=fu;return}Gi();F()}function ze(Ia){var eu=0;eu=T-16|0;T=eu;q[eu+8>>2]=0;q[eu+12>>2]=0;ye(Ia,eu+8|0);q[Ia+24>>2]=0;q[Ia+28>>2]=0;q[Ia+16>>2]=q[Ia+12>>2];T=eu+16|0}function Ae(Ia,lu){var mu=0,nu=0,ou=0;mu=q[Ia>>2];a:{if(lu){lu=mu;ou=mu;nu=q[mu+12>>2];mu=q[mu+8>>2]+1|0;if(mu>>>0<1){nu=nu+1|0}q[ou+8>>2]=mu;q[lu+12>>2]=nu;lu=q[Ia+28>>2];q[Ia+24>>2]=q[Ia+24>>2]|1<<lu;break a}lu=mu;ou=mu;nu=q[mu+4>>2];mu=q[mu>>2]+1|0;if(mu>>>0<1){nu=nu+1|0}q[ou>>2]=mu;q[lu+4>>2]=nu;lu=q[Ia+28>>2]}lu=lu+1|0;q[Ia+28>>2]=lu;if((lu|0)==32){mu=Ia+16|0;lu=q[mu>>2];b:{if((lu|0)!=q[Ia+20>>2]){q[lu>>2]=q[Ia+24>>2];q[mu>>2]=lu+4;break b}Ob(Ia+12|0,Ia+24|0)}q[Ia+24>>2]=0;q[Ia+28>>2]=0}}function Be(Ia,lu){var pu=0,qu=0,ru=0,su=0,tu=0,uu=0,vu=0,wu=0,xu=0,yu=0,zu=0,Au=0;su=T-32|0;T=su;vu=su;qu=q[Ia>>2];tu=q[qu>>2];pu=q[qu+4>>2];wu=+(tu>>>0)+4294967296*+(pu>>>0);pu=q[qu+12>>2]+pu|0;qu=q[qu+8>>2];tu=qu+tu|0;if(tu>>>0<qu>>>0){pu=pu+1|0}qu=!(pu|tu);wu=wu/(+((qu?1:tu)>>>0)+4294967296*+((qu?0:pu)>>>0))*256+.5;a:{if(wu<4294967296&wu>=0){pu=~~wu>>>0;break a}pu=0}ru=pu>>>0<255?pu:255;ru=!(ru&255)+ru|0;o[vu+23|0]=ru;pu=q[Ia+16>>2];qu=q[Ia+12>>2];q[su+16>>2]=0;q[su+8>>2]=0;q[su+12>>2]=0;b:{c:{qu=(pu-qu<<1)- -64|0;if(qu){if((qu|0)<=-1){break c}pu=ui(qu);q[su+8>>2]=pu;q[su+12>>2]=pu;q[su+16>>2]=qu+pu;while(1){o[pu|0]=0;pu=q[su+12>>2]+1|0;q[su+12>>2]=pu;qu=qu+ -1|0;if(qu){continue}break}xu=q[su+8>>2]}pu=q[Ia+28>>2]+ -1|0;if((pu|0)<0){qu=4096;break b}qu=4096;while(1){tu=0-ru|0;yu=q[Ia+24>>2]&1<<pu;ru=(yu?tu:ru)&255;if(qu>>>0>=ru<<12>>>0){o[uu+xu|0]=qu;uu=uu+1|0;qu=qu>>>8}vu=256-ru|0;ru=ru<<3;Nj(q[ru+10784>>2],0,qu,0);qu=((yu?0:tu&255)+qu|0)+w(vu,V+qu>>>q[ru+10788>>2])|0;pu=pu+ -1|0;if((pu|0)<0){break b}ru=r[su+23|0];continue}}Gi();F()}tu=q[Ia+16>>2];if((tu|0)!=q[Ia+12>>2]){while(1){tu=tu+ -4|0;yu=q[tu>>2];ru=31;while(1){pu=r[su+23|0];zu=0-pu|0;vu=pu;pu=ru;Au=1<<pu&yu;ru=(Au?zu:vu)&255;if(qu>>>0>=ru<<12>>>0){o[uu+xu|0]=qu;uu=uu+1|0;qu=qu>>>8}vu=256-ru|0;ru=ru<<3;Nj(q[ru+10784>>2],0,qu,0);qu=((Au?0:zu&255)+qu|0)+w(vu,V+qu>>>q[ru+10788>>2])|0;ru=pu+ -1|0;if(pu){continue}break}if(q[Ia+12>>2]!=(tu|0)){continue}break}}pu=qu+ -4096|0;d:{e:{if(pu>>>0<=63){qu=uu+xu|0;ru=1;break e}if(pu>>>0<=16383){ru=uu+xu|0;pu=qu+12288|0;o[ru|0]=pu;qu=ru+1|0;pu=pu>>>8;ru=2;break e}if(pu>>>0>4194303){break d}ru=uu+xu|0;pu=qu+8384512|0;o[ru|0]=pu;o[ru+1|0]=pu>>>8;qu=ru+2|0;pu=pu>>>16;ru=3}o[qu|0]=pu;uu=ru+uu|0}ru=q[lu+20>>2];if((ru|0)<0?1:(ru|0)<=0?t[lu+16>>2]>0?0:1:0){$a(lu,q[lu+4>>2],su+23|0,su+24|0)}Db(uu,lu);ru=q[lu+20>>2];if((ru|0)<0?1:(ru|0)<=0?t[lu+16>>2]>0?0:1:0){pu=lu;ru=q[lu+4>>2];lu=q[su+8>>2];$a(pu,ru,lu,lu+uu|0)}q[su+24>>2]=0;q[su+28>>2]=0;ye(Ia,su+24|0);q[Ia+24>>2]=0;q[Ia+28>>2]=0;q[Ia+16>>2]=q[Ia+12>>2];Ia=q[su+8>>2];if(Ia){q[su+12>>2]=Ia;ij(Ia)}T=su+32|0}function Ce(Ia,lu,Bu,Cu){var Du=0,Eu=0,Fu=0,Gu=0;Du=T-16|0;T=Du;Gu=Ia;Eu=za(lu,Du+12|0,Bu);Bu=q[Eu>>2];if(Bu){lu=0}else{Bu=ui(40);yi(Bu+16|0,q[Cu>>2]);q[Bu+36>>2]=0;q[Bu+28>>2]=0;q[Bu+32>>2]=0;q[Bu+8>>2]=q[Du+12>>2];q[Bu>>2]=0;q[Bu+4>>2]=0;q[Eu>>2]=Bu;Cu=Bu;Fu=q[q[lu>>2]>>2];if(Fu){q[lu>>2]=Fu;Cu=q[Eu>>2]}xa(q[lu+4>>2],Cu);lu=lu+8|0;q[lu>>2]=q[lu>>2]+1;lu=1}o[Gu+4|0]=lu;q[Ia>>2]=Bu;T=Du+16|0}function De(Ia,lu,Bu,Cu){var Hu=0,Iu=0,Ju=0,Ku=0,Lu=0,Mu=0,Nu=0,Ou=0,Pu=0;Iu=T-16|0;T=Iu;q[Iu+8>>2]=0;q[Iu>>2]=0;q[Iu+4>>2]=0;a:{b:{Mu=Bu+1|0;if(Mu>>>0>=Bu>>>0){if(Mu>>>0>=1073741824){break b}Ju=Mu<<2;Nu=ui(Ju);q[Iu>>2]=Nu;q[Iu+4>>2]=Nu;q[Iu+8>>2]=Ju+Nu;Ju=pj(Nu,0,(Bu<<2)+4|0);Ku=Ju;while(1){Ku=Ku+4|0;Mu=Mu+ -1|0;if(Mu){continue}break}q[Iu+4>>2]=Ku;Ku=Ju}if((lu|0)>0){while(1){Ju=(q[(Lu<<2)+Ia>>2]<<2)+Ku|0;q[Ju>>2]=q[Ju>>2]+1;Lu=Lu+1|0;if((Lu|0)!=(lu|0)){continue}break}}Lu=0;if((Bu|0)<0){lu=0;break a}Ou=+(lu|0);lu=0;while(1){Ia=q[(Lu<<2)+Ku>>2];if((Ia|0)>=1){Pu=Hu;Hu=+(Ia|0);Hu=Pu+lj(Hu/Ou)*Hu;lu=lu+1|0}Ia=(Bu|0)==(Lu|0);Lu=Lu+1|0;if(!Ia){continue}break}break a}Gi();F()}if(Cu){q[Cu>>2]=lu}Hu=-Hu;c:{if(y(Hu)<0x8000000000000000){lu=~~Hu>>>0;Ia=y(Hu)>=1?Hu>0?~~A(C(Hu/4294967296),4294967295)>>>0:~~D((Hu- +(~~Hu>>>0>>>0))/4294967296)>>>0:0;break c}lu=0;Ia=-2147483648}if(Ku){q[Iu+4>>2]=Ku;ij(Nu)}T=Iu+16|0;V=Ia;return lu}function Ee(q,Ia){var lu=0,Bu=0;if(!(!q|!Ia|(q|0)==(Ia|0))){lu=+(Ia>>>0)/+(q>>>0);Bu=lu*lj(lu);lu=1-lu;lu=-(Bu+lu*lj(lu))}return lu}function Fe(Ia){q[Ia+16>>2]=0;q[Ia+20>>2]=0;q[Ia>>2]=0;q[Ia+4>>2]=0;q[Ia+8>>2]=0;q[Ia+24>>2]=0;q[Ia+28>>2]=0;q[Ia+32>>2]=0}function Ge(q,Ia,Cu,Qu){He(q,Ia,Cu,Qu,0)}function He(Ia,Cu,Qu,Ru,Su){var Tu=0,Uu=0,Vu=0,Wu=0,Xu=0,Yu=0,Zu=0,_u=0,$u=0,av=0,bv=0;Zu=T-16|0;T=Zu;Vu=q[Cu+28>>2];Tu=Ia+8|0;Uu=q[Cu+24>>2];q[Tu>>2]=Uu;q[Tu+4>>2]=Vu;Wu=q[Cu+20>>2];q[Ia>>2]=q[Cu+16>>2];q[Ia+4>>2]=Wu;Wu=q[Cu+36>>2];q[Ia+16>>2]=q[Cu+32>>2];q[Ia+20>>2]=Wu;q[Tu>>2]=Ru+Uu;if((Ru|0)>=1){Wu=q[Cu>>2];_u=Cu+4|0;Tu=0;while(1){Uu=q[_u>>2]-Wu>>2;Vu=q[(Tu<<2)+Qu>>2];a:{if(Uu>>>0>Vu>>>0){break a}q[Zu+12>>2]=0;Xu=Vu+1|0;if(Xu>>>0>Uu>>>0){Ab(Cu,Xu-Uu|0,Zu+12|0);Wu=q[Cu>>2];break a}if(Xu>>>0>=Uu>>>0){break a}q[_u>>2]=(Xu<<2)+Wu}Xu=(Vu<<2)+Wu|0;Uu=q[Xu>>2];b:{if((Uu|0)>=2){Yu=+(Uu|0);Yu=lj(Yu)*Yu;break b}Yu=0;if(Uu){break b}q[Ia+16>>2]=q[Ia+16>>2]+1;if(Vu>>>0<=t[Ia+12>>2]){break b}q[Ia+12>>2]=Vu}Vu=Uu+1|0;q[Xu>>2]=Vu;$u=+(Vu|0);av=Ia,bv=lj($u)*$u-Yu+v[Ia>>3],v[av>>3]=bv;Tu=Tu+1|0;if((Tu|0)!=(Ru|0)){continue}break}}c:{if(!Su){if((Ru|0)<1){break c}Ia=q[Cu>>2];Tu=0;while(1){Cu=Ia+(q[(Tu<<2)+Qu>>2]<<2)|0;q[Cu>>2]=q[Cu>>2]+ -1;Tu=Tu+1|0;if((Tu|0)!=(Ru|0)){continue}break}break c}Ru=q[Ia+4>>2];Cu=Cu+16|0;q[Cu>>2]=q[Ia>>2];q[Cu+4>>2]=Ru;q[Cu+16>>2]=q[Ia+16>>2];Qu=q[Ia+12>>2];q[Cu+8>>2]=q[Ia+8>>2];q[Cu+12>>2]=Qu}T=Zu+16|0}function Ie(q,Ia,Cu,Qu){He(q,Ia,Cu,Qu,1)}function Je(Ia){var Cu=0,Qu=0;Qu=q[Ia+8>>2];if((Qu|0)>=2){Cu=+(Qu|0);Cu=D(lj(Cu)*Cu-v[Ia>>3]);if(y(Cu)<0x8000000000000000){V=y(Cu)>=1?Cu>0?~~A(C(Cu/4294967296),4294967295)>>>0:~~D((Cu- +(~~Cu>>>0>>>0))/4294967296)>>>0:0;return~~Cu>>>0}Ia=-2147483648}else{Ia=0}V=Ia;return 0}function Ke(Ia){var Ru=0,Su=0,cv=0;Ru=q[Ia+12>>2];Ia=q[Ia+16>>2];Su=(((Ru-Ia|0)+1|0)/64|0)+Ia<<3;Ru=Su;Ia=Ia<<3;cv=Ia;Ru=Ru+Ia|0;Ia=(Su>>31)+(Ia>>31)|0;Ia=Ru>>>0<cv>>>0?Ia+1|0:Ia;V=Ia;return Ru}function Le(Ia,dv){var ev=0,fv=0,gv=0,hv=0,iv=0,jv=0,kv=0;a:{b:{gv=q[Ia+8>>2];ev=Ia+4|0;fv=q[ev>>2];c:{if(gv-fv>>3>>>0>=dv>>>0){while(1){q[fv>>2]=0;q[fv+4>>2]=0;fv=q[ev>>2]+8|0;q[ev>>2]=fv;dv=dv+ -1|0;if(dv){continue}break c}}hv=q[Ia>>2];iv=fv-hv|0;ev=iv>>3;fv=ev+dv|0;if(fv>>>0>=536870912){break b}kv=ev<<3;gv=gv-hv|0;ev=gv>>2;gv=gv>>3>>>0<268435455?ev>>>0<fv>>>0?fv:ev:536870911;ev=0;d:{if(!gv){break d}if(gv>>>0>=536870912){break a}jv=ui(gv<<3);ev=jv}fv=kv+ev|0;pj(fv,0,dv<<3);gv=ev+(gv<<3)|0;while(1){fv=fv+8|0;dv=dv+ -1|0;if(dv){continue}break}if((iv|0)>=1){oj(jv,hv,iv)}q[Ia>>2]=ev;q[Ia+8>>2]=gv;q[Ia+4>>2]=fv;if(!hv){break c}ij(hv)}return}Gi();F()}ob(10018);F()}function Me(Ia,dv){var lv=0,mv=0,nv=0,ov=0;ov=T-16|0;T=ov;if(dv>>>0<=10){lv=ui(48);q[ov>>2]=lv;q[ov+4>>2]=33;q[ov+8>>2]=-2147483600;o[lv+33|0]=0;o[lv+32|0]=r[10141];mv=r[10137]|r[10138]<<8|(r[10139]<<16|r[10140]<<24);nv=r[10133]|r[10134]<<8|(r[10135]<<16|r[10136]<<24);o[lv+24|0]=nv;o[lv+25|0]=nv>>>8;o[lv+26|0]=nv>>>16;o[lv+27|0]=nv>>>24;o[lv+28|0]=mv;o[lv+29|0]=mv>>>8;o[lv+30|0]=mv>>>16;o[lv+31|0]=mv>>>24;mv=r[10129]|r[10130]<<8|(r[10131]<<16|r[10132]<<24);nv=r[10125]|r[10126]<<8|(r[10127]<<16|r[10128]<<24);o[lv+16|0]=nv;o[lv+17|0]=nv>>>8;o[lv+18|0]=nv>>>16;o[lv+19|0]=nv>>>24;o[lv+20|0]=mv;o[lv+21|0]=mv>>>8;o[lv+22|0]=mv>>>16;o[lv+23|0]=mv>>>24;mv=r[10121]|r[10122]<<8|(r[10123]<<16|r[10124]<<24);nv=r[10117]|r[10118]<<8|(r[10119]<<16|r[10120]<<24);o[lv+8|0]=nv;o[lv+9|0]=nv>>>8;o[lv+10|0]=nv>>>16;o[lv+11|0]=nv>>>24;o[lv+12|0]=mv;o[lv+13|0]=mv>>>8;o[lv+14|0]=mv>>>16;o[lv+15|0]=mv>>>24;mv=r[10113]|r[10114]<<8|(r[10115]<<16|r[10116]<<24);nv=r[10109]|r[10110]<<8|(r[10111]<<16|r[10112]<<24);o[lv|0]=nv;o[lv+1|0]=nv>>>8;o[lv+2|0]=nv>>>16;o[lv+3|0]=nv>>>24;o[lv+4|0]=mv;o[lv+5|0]=mv>>>8;o[lv+6|0]=mv>>>16;o[lv+7|0]=mv>>>24;Jg(Ia,ov,dv);if(o[ov+11|0]<=-1){ij(q[ov>>2])}}T=ov+16|0}function Ne(Ia,dv,pv,qv,rv){var sv=0,tv=0,uv=0,vv=0,wv=0,xv=0,yv=0,zv=0,Av=0,Bv=0,Cv=0,Dv=0,Ev=0,Fv=0;tv=T-48|0;T=tv;a:{b:{c:{if((dv|0)<0){break c}if(!dv){sv=1;break c}q[tv+40>>2]=0;q[tv+32>>2]=0;q[tv+36>>2]=0;if(dv>>>0>=1073741824){break a}Cv=(pv|0)>1?pv:1;sv=dv<<2;uv=ui(sv);q[tv+36>>2]=uv;q[tv+32>>2]=uv;q[tv+40>>2]=sv+uv;while(1){uv=1;sv=q[(xv<<2)+Ia>>2];if((pv|0)>1){while(1){wv=q[(uv+xv<<2)+Ia>>2];sv=sv>>>0<wv>>>0?wv:sv;uv=uv+1|0;if((Cv|0)!=(uv|0)){continue}break}}wv=sv?(z(sv)^31)+1|0:1;q[tv>>2]=wv;uv=sv>>>0>Bv>>>0;Av=q[tv+36>>2];d:{if(Av>>>0<t[tv+40>>2]){q[Av>>2]=wv;q[tv+36>>2]=Av+4;break d}Oe(tv+32|0,tv)}Bv=uv?sv:Bv;xv=xv+Cv|0;if((xv|0)<(dv|0)){continue}break}sv=0;q[tv+24>>2]=0;q[tv+16>>2]=0;q[tv+20>>2]=0;uv=0;xv=0;wv=q[tv+32>>2];Av=q[tv+36>>2]-wv|0;e:{if(!Av){break e}pv=Av>>2;if(pv>>>0>=1073741824){break b}uv=ui(Av);q[tv+16>>2]=uv;q[tv+20>>2]=uv;q[tv+24>>2]=(pv<<2)+uv;if((Av|0)<1){xv=uv;break e}xv=oj(uv,wv,Av)+Av|0;q[tv+20>>2]=xv}pv=xv-uv|0;wv=pv>>2;if(pv){while(1){xv=q[(sv<<2)+uv>>2];pv=xv+Dv|0;if(pv>>>0<xv>>>0){vv=vv+1|0}Dv=pv;sv=sv+1|0;if(sv>>>0<wv>>>0){continue}break}}Ev=De(uv,wv,32,tv);uv=V;sv=q[tv>>2];pv=q[tv+16>>2];if(pv){q[tv+20>>2]=pv;ij(pv)}Av=De(Ia,dv,Bv,tv);wv=V;Fv=q[tv>>2];xv=(Bv-Fv|0)/64|0;f:{g:{if(!qv){break g}q[tv+8>>2]=0;q[tv>>2]=0;q[tv+4>>2]=0;pv=ui(32);q[tv>>2]=pv;q[tv+4>>2]=22;q[tv+8>>2]=-2147483616;o[pv+22|0]=0;yv=r[10104]|r[10105]<<8|(r[10106]<<16|r[10107]<<24);zv=r[10100]|r[10101]<<8|(r[10102]<<16|r[10103]<<24);o[pv+14|0]=zv;o[pv+15|0]=zv>>>8;o[pv+16|0]=zv>>>16;o[pv+17|0]=zv>>>24;o[pv+18|0]=yv;o[pv+19|0]=yv>>>8;o[pv+20|0]=yv>>>16;o[pv+21|0]=yv>>>24;yv=r[10098]|r[10099]<<8|(r[10100]<<16|r[10101]<<24);zv=r[10094]|r[10095]<<8|(r[10096]<<16|r[10097]<<24);o[pv+8|0]=zv;o[pv+9|0]=zv>>>8;o[pv+10|0]=zv>>>16;o[pv+11|0]=zv>>>24;o[pv+12|0]=yv;o[pv+13|0]=yv>>>8;o[pv+14|0]=yv>>>16;o[pv+15|0]=yv>>>24;yv=r[10090]|r[10091]<<8|(r[10092]<<16|r[10093]<<24);zv=r[10086]|r[10087]<<8|(r[10088]<<16|r[10089]<<24);o[pv|0]=zv;o[pv+1|0]=zv>>>8;o[pv+2|0]=zv>>>16;o[pv+3|0]=zv>>>24;o[pv+4|0]=yv;o[pv+5|0]=yv>>>8;o[pv+6|0]=yv>>>16;o[pv+7|0]=yv>>>24;pv=Jb(qv,tv);if(o[tv+11|0]<=-1){ij(q[tv>>2])}if(!pv){break g}q[tv+8>>2]=0;q[tv>>2]=0;q[tv+4>>2]=0;pv=ui(32);q[tv>>2]=pv;q[tv+4>>2]=22;q[tv+8>>2]=-2147483616;o[pv+22|0]=0;sv=r[10104]|r[10105]<<8|(r[10106]<<16|r[10107]<<24);vv=r[10100]|r[10101]<<8|(r[10102]<<16|r[10103]<<24);o[pv+14|0]=vv;o[pv+15|0]=vv>>>8;o[pv+16|0]=vv>>>16;o[pv+17|0]=vv>>>24;o[pv+18|0]=sv;o[pv+19|0]=sv>>>8;o[pv+20|0]=sv>>>16;o[pv+21|0]=sv>>>24;sv=r[10098]|r[10099]<<8|(r[10100]<<16|r[10101]<<24);vv=r[10094]|r[10095]<<8|(r[10096]<<16|r[10097]<<24);o[pv+8|0]=vv;o[pv+9|0]=vv>>>8;o[pv+10|0]=vv>>>16;o[pv+11|0]=vv>>>24;o[pv+12|0]=sv;o[pv+13|0]=sv>>>8;o[pv+14|0]=sv>>>16;o[pv+15|0]=sv>>>24;sv=r[10090]|r[10091]<<8|(r[10092]<<16|r[10093]<<24);vv=r[10086]|r[10087]<<8|(r[10088]<<16|r[10089]<<24);o[pv|0]=vv;o[pv+1|0]=vv>>>8;o[pv+2|0]=vv>>>16;o[pv+3|0]=vv>>>24;o[pv+4|0]=sv;o[pv+5|0]=sv>>>8;o[pv+6|0]=sv>>>16;o[pv+7|0]=sv>>>24;sv=Kg(qv,tv);if(o[tv+11|0]>-1){break f}ij(q[tv>>2]);break f}if((z(Bv>>>0>1?Bv:1)^30)>>>0<18){vv=Nj(Dv,vv,Cv,0);Ev=vv+Ev|0;pv=V+uv|0;pv=Ev>>>0<vv>>>0?pv+1|0:pv;sv=sv<<3;vv=sv>>31;uv=sv;sv=vv<<1|sv>>>31;vv=uv<<1;uv=vv+Ev|0;pv=pv+sv|0;pv=uv>>>0<vv>>>0?pv+1|0:pv;sv=xv+Fv<<3;xv=sv>>31;Dv=uv;vv=sv;sv=Fv<<3;uv=sv+Av|0;wv=(sv>>31)+wv|0;wv=uv>>>0<sv>>>0?wv+1|0:wv;sv=uv;uv=vv+sv|0;vv=wv+xv|0;vv=uv>>>0<sv>>>0?vv+1|0:vv;sv=(pv|0)>(vv|0)?1:(pv|0)>=(vv|0)?Dv>>>0<uv>>>0?0:1:0}else{sv=0}}o[tv|0]=sv;pv=q[rv+20>>2];if((pv|0)<0?1:(pv|0)<=0?t[rv+16>>2]>0?0:1:0){$a(rv,q[rv+4>>2],tv,tv+1|0)}pv=0;h:{if(sv>>>0>1){break h}if(sv-1){pv=Pe(Ia,dv,Cv,tv+32|0,rv);break h}pv=Qe(Ia,dv,Bv,Fv,qv,rv)}sv=pv;Ia=q[tv+32>>2];if(!Ia){break c}q[tv+36>>2]=Ia;ij(Ia)}T=tv+48|0;return sv}Gi();F()}ob(10143);F()}function Oe(Ia,dv){var pv=0,qv=0,rv=0,Gv=0,Hv=0,Iv=0;a:{rv=q[Ia>>2];Hv=q[Ia+4>>2]-rv|0;pv=Hv>>2;qv=pv+1|0;if(qv>>>0<1073741824){Iv=pv<<2;pv=q[Ia+8>>2]-rv|0;Gv=pv>>1;qv=pv>>2>>>0<536870911?Gv>>>0<qv>>>0?qv:Gv:1073741823;pv=0;b:{if(!qv){break b}if(qv>>>0>=1073741824){break a}pv=ui(qv<<2)}Gv=Iv+pv|0;q[Gv>>2]=q[dv>>2];dv=pv+(qv<<2)|0;qv=Gv+4|0;if((Hv|0)>=1){oj(pv,rv,Hv)}q[Ia>>2]=pv;q[Ia+8>>2]=dv;q[Ia+4>>2]=qv;if(rv){ij(rv)}return}Gi();F()}ob(10143);F()}function Pe(Ia,dv,Jv,Kv,Lv){var Mv=0,Nv=0,Ov=0,Pv=0,Qv=0,Rv=0,Sv=0,Tv=0,Uv=0,Vv=0,Wv=0,Xv=0,Yv=0,Zv=0,_v=0,$v=0,aw=0;Nv=T-336|0;T=Nv;pj(Nv+80|0,0,256);Ov=q[Kv+4>>2];Rv=q[Kv>>2];if((Ov|0)!=(Rv|0)){Sv=Ov-Rv>>2;while(1){Ov=(Nv+80|0)+(q[Rv+(Qv<<2)>>2]<<3)|0;Mv=Ov;Vv=Mv;Pv=q[Mv+4>>2];Ov=q[Mv>>2]+1|0;if(Ov>>>0<1){Pv=Pv+1|0}q[Vv>>2]=Ov;q[Mv+4>>2]=Pv;Qv=Qv+1|0;if(Qv>>>0<Sv>>>0){continue}break}}Tv=Eg(Nv+48|0);q[Nv+8>>2]=0;q[Nv+12>>2]=0;Mv=Nv+16|0;q[Mv>>2]=0;q[Mv+4>>2]=0;Rv=Nv+24|0;Ov=Rv;q[Ov>>2]=0;q[Ov+4>>2]=0;q[Nv+32>>2]=0;q[Nv>>2]=0;q[Nv+4>>2]=0;q[Nv+40>>2]=0;q[Nv+44>>2]=0;Re(Nv,Nv+80|0,32,Lv);Pv=q[Mv>>2];Ov=q[Mv+4>>2];Mv=q[Lv+4>>2]-q[Lv>>2]|0;q[Nv+40>>2]=Mv;q[Nv+44>>2]=0;Vv=Lv;Sv=Pv;Pv=Ov<<1|Pv>>>31;Ov=(Sv<<1)+39|0;if(Ov>>>0<39){Pv=Pv+1|0}Sv=Ov;Ov=Pv>>>3;Pv=Mv+((Pv&7)<<29|Sv>>>3)|0;if(Pv>>>0<Mv>>>0){Ov=Ov+1|0}Mv=Pv+8|0;Mv>>>0<8;Fg(Vv,Mv);Ov=q[Lv>>2];q[Nv+28>>2]=0;q[Nv+32>>2]=16384;q[Rv>>2]=Ov+q[Nv+40>>2];Mv=dv;Gg(Tv,Mv<<5,Mv>>31<<5|Mv>>>27);dv=Mv-Jv|0;if((dv|0)>=0){_v=(Jv|0)<1;Ov=dv;while(1){Qv=q[Nv+32>>2];Uv=q[Kv>>2];Sv=q[Nv>>2]+(q[Uv+((Ov|0)/(Jv|0)<<2)>>2]<<3)|0;Rv=q[Sv>>2];Pv=Rv<<10;if(Qv>>>0>=Pv>>>0){while(1){Mv=q[Nv+28>>2];q[Nv+28>>2]=Mv+1;o[Mv+q[Nv+24>>2]|0]=Qv;Qv=q[Nv+32>>2]>>>8;q[Nv+32>>2]=Qv;if(Qv>>>0>=Pv>>>0){continue}break}Uv=q[Kv>>2]}Mv=(Qv>>>0)/(Rv>>>0)|0;q[Nv+32>>2]=q[Sv+4>>2]+((Mv<<12)+(Qv-w(Mv,Rv)|0)|0);Qv=dv-Ov|0;Mv=(Qv|0)/(Jv|0)|0;if(!_v){Zv=q[(Mv<<2)+Uv>>2];Xv=0;while(1){Mv=q[Tv+20>>2];if(!((Zv|0)<1|((Mv|0)<0?1:(Mv|0)<=0?t[Tv+16>>2]>=1?0:1:0))){Rv=q[(Qv+Xv<<2)+Ia>>2];Wv=q[Tv+12>>2];Uv=q[Wv+4>>2];Yv=0;while(1){Sv=Uv>>>3;Pv=Sv+q[Wv>>2]|0;Mv=r[Pv|0];Vv=Pv;Pv=Uv&7;$v=Vv,aw=Qj(Pv)&Mv,o[$v|0]=aw;Mv=Sv+q[Wv>>2]|0;o[Mv|0]=r[Mv|0]|(Rv>>>Yv&1)<<Pv;Uv=q[Wv+4>>2]+1|0;q[Wv+4>>2]=Uv;Yv=Yv+1|0;if((Zv|0)!=(Yv|0)){continue}break}}Xv=Xv+1|0;if((Xv|0)!=(Jv|0)){continue}break}}Ov=Ov-Jv|0;if((Ov|0)>-1){continue}break}}Se(Nv,Lv);Hg(Tv);Ia=q[Lv+20>>2];if((Ia|0)<0?1:(Ia|0)<=0?t[Lv+16>>2]>0?0:1:0){$a(Lv,q[Lv+4>>2],q[Tv>>2],q[Tv+4>>2])}Ia=q[Nv>>2];if(Ia){q[Nv+4>>2]=Ia;ij(Ia)}Ia=q[Tv+12>>2];q[Tv+12>>2]=0;if(Ia){ij(Ia)}Ia=q[Tv>>2];if(Ia){q[Tv+4>>2]=Ia;ij(Ia)}T=Nv+336|0;return 1}function Qe(Ia,dv,Jv,Kv,Lv,bw){var cw=0,dw=0,ew=0,fw=0;fw=T-16|0;T=fw;a:{b:{if((Kv|0)<=0){Kv=1;q[fw+12>>2]=1;break b}dw=z(Kv)^31;Kv=dw+1|0;q[fw+12>>2]=Kv;if(dw>>>0>17){break a}}c:{if(!Lv){break c}cw=ui(48);q[fw>>2]=cw;q[fw+4>>2]=33;q[fw+8>>2]=-2147483600;o[cw+33|0]=0;o[cw+32|0]=r[10141];dw=r[10137]|r[10138]<<8|(r[10139]<<16|r[10140]<<24);ew=r[10133]|r[10134]<<8|(r[10135]<<16|r[10136]<<24);o[cw+24|0]=ew;o[cw+25|0]=ew>>>8;o[cw+26|0]=ew>>>16;o[cw+27|0]=ew>>>24;o[cw+28|0]=dw;o[cw+29|0]=dw>>>8;o[cw+30|0]=dw>>>16;o[cw+31|0]=dw>>>24;dw=r[10129]|r[10130]<<8|(r[10131]<<16|r[10132]<<24);ew=r[10125]|r[10126]<<8|(r[10127]<<16|r[10128]<<24);o[cw+16|0]=ew;o[cw+17|0]=ew>>>8;o[cw+18|0]=ew>>>16;o[cw+19|0]=ew>>>24;o[cw+20|0]=dw;o[cw+21|0]=dw>>>8;o[cw+22|0]=dw>>>16;o[cw+23|0]=dw>>>24;dw=r[10121]|r[10122]<<8|(r[10123]<<16|r[10124]<<24);ew=r[10117]|r[10118]<<8|(r[10119]<<16|r[10120]<<24);o[cw+8|0]=ew;o[cw+9|0]=ew>>>8;o[cw+10|0]=ew>>>16;o[cw+11|0]=ew>>>24;o[cw+12|0]=dw;o[cw+13|0]=dw>>>8;o[cw+14|0]=dw>>>16;o[cw+15|0]=dw>>>24;dw=r[10113]|r[10114]<<8|(r[10115]<<16|r[10116]<<24);ew=r[10109]|r[10110]<<8|(r[10111]<<16|r[10112]<<24);o[cw|0]=ew;o[cw+1|0]=ew>>>8;o[cw+2|0]=ew>>>16;o[cw+3|0]=ew>>>24;o[cw+4|0]=dw;o[cw+5|0]=dw>>>8;o[cw+6|0]=dw>>>16;o[cw+7|0]=dw>>>24;cw=Jb(Lv,fw);if(o[fw+11|0]<=-1){ij(q[fw>>2])}if(!cw){break c}cw=ui(48);q[fw>>2]=cw;q[fw+4>>2]=33;q[fw+8>>2]=-2147483600;o[cw+33|0]=0;o[cw+32|0]=r[10141];dw=r[10137]|r[10138]<<8|(r[10139]<<16|r[10140]<<24);ew=r[10133]|r[10134]<<8|(r[10135]<<16|r[10136]<<24);o[cw+24|0]=ew;o[cw+25|0]=ew>>>8;o[cw+26|0]=ew>>>16;o[cw+27|0]=ew>>>24;o[cw+28|0]=dw;o[cw+29|0]=dw>>>8;o[cw+30|0]=dw>>>16;o[cw+31|0]=dw>>>24;dw=r[10129]|r[10130]<<8|(r[10131]<<16|r[10132]<<24);ew=r[10125]|r[10126]<<8|(r[10127]<<16|r[10128]<<24);o[cw+16|0]=ew;o[cw+17|0]=ew>>>8;o[cw+18|0]=ew>>>16;o[cw+19|0]=ew>>>24;o[cw+20|0]=dw;o[cw+21|0]=dw>>>8;o[cw+22|0]=dw>>>16;o[cw+23|0]=dw>>>24;dw=r[10121]|r[10122]<<8|(r[10123]<<16|r[10124]<<24);ew=r[10117]|r[10118]<<8|(r[10119]<<16|r[10120]<<24);o[cw+8|0]=ew;o[cw+9|0]=ew>>>8;o[cw+10|0]=ew>>>16;o[cw+11|0]=ew>>>24;o[cw+12|0]=dw;o[cw+13|0]=dw>>>8;o[cw+14|0]=dw>>>16;o[cw+15|0]=dw>>>24;dw=r[10113]|r[10114]<<8|(r[10115]<<16|r[10116]<<24);ew=r[10109]|r[10110]<<8|(r[10111]<<16|r[10112]<<24);o[cw|0]=ew;o[cw+1|0]=ew>>>8;o[cw+2|0]=ew>>>16;o[cw+3|0]=ew>>>24;o[cw+4|0]=dw;o[cw+5|0]=dw>>>8;o[cw+6|0]=dw>>>16;o[cw+7|0]=dw>>>24;dw=Kg(Lv,fw);if(o[fw+11|0]<=-1){ij(q[fw>>2])}Lv=fw;cw=Kv+ -2|0;d:{if((dw|0)<=3){break d}cw=Kv+ -1|0;if((dw|0)<=5){break d}cw=Kv+2|0;if((dw|0)>=10){break d}if((dw|0)<8){break c}cw=Kv+1|0}Kv=cw;q[Lv+12>>2]=Kv}Kv=(Kv|0)>1?Kv:1;Kv=(Kv|0)<18?Kv:18;q[fw+12>>2]=Kv;o[fw|0]=Kv;Lv=q[bw+20>>2];if((Lv|0)<0?1:(Lv|0)<=0?t[bw+16>>2]>0?0:1:0){$a(bw,q[bw+4>>2],fw,fw+1|0)}if(Kv>>>0>18){cw=0;break a}e:{switch(Kv-2|0){default:cw=Te(Ia,dv,Jv,bw);break a;case 0:cw=Ue(Ia,dv,Jv,bw);break a;case 1:cw=Ve(Ia,dv,Jv,bw);break a;case 2:cw=We(Ia,dv,Jv,bw);break a;case 3:cw=Xe(Ia,dv,Jv,bw);break a;case 4:cw=Ye(Ia,dv,Jv,bw);break a;case 5:cw=Ze(Ia,dv,Jv,bw);break a;case 6:cw=_e(Ia,dv,Jv,bw);break a;case 7:cw=$e(Ia,dv,Jv,bw);break a;case 8:cw=af(Ia,dv,Jv,bw);break a;case 9:cw=bf(Ia,dv,Jv,bw);break a;case 10:cw=cf(Ia,dv,Jv,bw);break a;case 11:cw=df(Ia,dv,Jv,bw);break a;case 12:cw=ef(Ia,dv,Jv,bw);break a;case 13:cw=ff(Ia,dv,Jv,bw);break a;case 14:cw=gf(Ia,dv,Jv,bw);break a;case 15:cw=hf(Ia,dv,Jv,bw);break a;case 16:break e}}cw=jf(Ia,dv,Jv,bw)}T=fw+16|0;return cw}function Re(Ia,dv,Jv,Kv){var Lv=0,bw=0,gw=0,hw=0,iw=0,jw=0,kw=0,lw=0,mw=0,nw=0,ow=0,pw=0,qw=0,rw=0,sw=0,tw=0;kw=T-32|0;T=kw;if((Jv|0)>0){while(1){pw=hw;hw=(Lv<<3)+dv|0;jw=q[hw+4>>2];gw=q[hw>>2];hw=!(jw|gw)?pw:Lv;bw=bw+jw|0;jw=gw+lw|0;if(jw>>>0<gw>>>0){bw=bw+1|0}lw=jw;Lv=Lv+1|0;if((Lv|0)!=(Jv|0)){continue}break}}jw=hw+1|0;q[Ia+12>>2]=jw;gw=q[Ia>>2];Jv=q[Ia+4>>2]-gw>>3;a:{if(jw>>>0>Jv>>>0){Le(Ia,jw-Jv|0);break a}if(jw>>>0>=Jv>>>0){break a}q[Ia+4>>2]=gw+(jw<<3)}b:{c:{d:{e:{if((hw|0)>=0){ow=+(lw>>>0)+4294967296*+(bw>>>0);bw=q[Ia>>2];Lv=0;while(1){gw=Lv<<3;lw=gw+dv|0;Jv=q[lw+4>>2];lw=q[lw>>2];qw=(lw|0)!=0|(Jv|0)!=0;gw=bw+gw|0;iw=(+(lw>>>0)+4294967296*+(Jv>>>0))/ow*4096+.5;f:{if(iw<4294967296&iw>=0){Jv=~~iw>>>0;break f}Jv=0}Jv=qw?Jv?Jv:1:Jv;q[gw>>2]=Jv;mw=Jv+mw|0;Jv=(Lv|0)==(hw|0);Lv=Lv+1|0;if(!Jv){continue}break}if((mw|0)==4096){break e}}q[kw+16>>2]=0;q[kw+8>>2]=0;q[kw+12>>2]=0;gw=0;if(jw){if(jw>>>0>=1073741824){break b}Jv=jw<<2;gw=ui(Jv);q[kw+8>>2]=gw;nw=Jv+gw|0;q[kw+16>>2]=nw;pj(gw,0,Jv);q[kw+12>>2]=nw}if((hw|0)>-1){Lv=0;while(1){q[(Lv<<2)+gw>>2]=Lv;Jv=(Lv|0)==(hw|0);Lv=Lv+1|0;if(!Jv){continue}break}}q[kw+24>>2]=Ia;kf(gw,nw,kw+24|0);g:{if((mw|0)<4096){Jv=q[Ia>>2]+(q[q[kw+12>>2]+ -4>>2]<<3)|0;q[Jv>>2]=(q[Jv>>2]-mw|0)+4096;Lv=0;break g}Jv=mw+ -4096|0;jw=q[kw+8>>2];lw=(hw|0)<1;while(1){h:{if(lw){break h}iw=4096/+(mw|0);nw=q[Ia>>2];gw=hw;while(1){Lv=nw+(q[(gw<<2)+jw>>2]<<3)|0;bw=q[Lv>>2];if(bw>>>0<=1){if((gw|0)!=(hw|0)){break h}Lv=1;break g}qw=bw+ -1|0;pw=Lv;sw=bw;tw=Jv;Lv=bw;ow=C(iw*+(bw>>>0));i:{if(y(ow)<2147483648){rw=~~ow;break i}rw=-2147483648}Lv=Lv-rw|0;Lv=Lv?Lv:1;bw=(Lv|0)<(bw|0)?Lv:qw;bw=(bw|0)>(Jv|0)?tw:bw;q[pw>>2]=sw-bw;Jv=Jv-bw|0;mw=mw-bw|0;if((mw|0)==4096){mw=4096;break h}bw=(gw|0)>1;gw=gw+ -1|0;if(bw){continue}break}}Lv=0;if((Jv|0)>0){continue}break}}Jv=q[kw+8>>2];if(Jv){q[kw+12>>2]=Jv;ij(Jv)}if(Lv){break c}if((hw|0)>=0){break d}break c}if((hw|0)<0){break c}}bw=q[Ia>>2];Lv=0;Jv=0;while(1){gw=bw+(Lv<<3)|0;q[gw+4>>2]=Jv;Jv=q[gw>>2]+Jv|0;gw=(Lv|0)==(hw|0);Lv=Lv+1|0;if(!gw){continue}break}if((Jv|0)!=4096){break c}Lv=0;iw=0;if((hw|0)>=0){Jv=q[Ia>>2];while(1){bw=Lv<<3;gw=q[bw+Jv>>2];if(gw){bw=dv+bw|0;iw=iw+lj(+(gw>>>0)*.000244140625)*(+t[bw>>2]+4294967296*+t[bw+4>>2])}bw=(Lv|0)==(hw|0);Lv=Lv+1|0;if(!bw){continue}break}}dv=Ia;Jv=Ia;iw=D(-iw);j:{if(iw<0x10000000000000000&iw>=0){bw=y(iw)>=1?iw>0?~~A(C(iw/4294967296),4294967295)>>>0:~~D((iw- +(~~iw>>>0>>>0))/4294967296)>>>0:0;hw=~~iw>>>0;break j}bw=0;hw=0}q[Jv+16>>2]=hw;q[dv+20>>2]=bw;lf(Ia,Kv)}T=kw+32|0;return}Gi();F()}function Se(Ia,dv){var Jv=0,Kv=0,uw=0,vw=0,ww=0,xw=0,yw=0,zw=0;xw=T-32|0;T=xw;ww=q[dv>>2]+q[Ia+40>>2]|0;Jv=q[Ia+32>>2];Kv=Jv+ -16384|0;a:{if(Kv>>>0<=63){Jv=Ia+28|0;o[q[Ia+24>>2]+q[Jv>>2]|0]=Kv;Jv=q[Jv>>2]+1|0;break a}if(Kv>>>0<=16383){Kv=Ia+28|0;uw=q[Ia+24>>2]+q[Kv>>2]|0;o[uw|0]=Jv;o[uw+1|0]=Jv>>>8;Jv=q[Kv>>2]+2|0;break a}if(Kv>>>0<=4194303){uw=Ia+28|0;Kv=q[Ia+24>>2]+q[uw>>2]|0;Jv=Jv+8372224|0;o[Kv+2|0]=Jv>>>16;o[Kv+1|0]=Jv>>>8;o[Kv|0]=Jv;Jv=q[uw>>2]+3|0;break a}if(Kv>>>0<=1073741823){uw=Ia+28|0;Kv=q[Ia+24>>2]+q[uw>>2]|0;Jv=Jv+ -1073758208|0;o[Kv|0]=Jv;o[Kv+1|0]=Jv>>>8;o[Kv+2|0]=Jv>>>16;o[Kv+3|0]=Jv>>>24;Jv=q[uw>>2]+4|0;break a}Jv=q[Ia+28>>2]}vw=Jv>>31;uw=vw;Kv=Jv;vw=Eg(xw);mf(Kv,uw,vw);yw=q[vw+4>>2]-q[vw>>2]|0;qj(yw+ww|0,ww,Kv);oj(ww,q[vw>>2],yw);Jv=q[Ia+44>>2];ww=dv;zw=q[Ia+40>>2];Ia=uw;dv=Kv+yw|0;if(dv>>>0<Kv>>>0){Ia=Ia+1|0}Kv=dv;dv=zw+Kv|0;Fg(ww,dv);Ia=q[vw+12>>2];q[vw+12>>2]=0;if(Ia){ij(Ia)}Ia=q[vw>>2];if(Ia){q[vw+4>>2]=Ia;ij(Ia)}T=xw+32|0}function Te(Ia,dv,Aw,Bw){var Cw=0,Dw=0,Ew=0,Fw=0,Gw=0,Hw=0,Iw=0;Cw=T+ -64|0;T=Cw;q[Cw+56>>2]=0;q[Cw+48>>2]=0;q[Cw+52>>2]=0;a:{Dw=Aw+1|0;if(Dw>>>0>=Aw>>>0){if(Dw>>>0>=536870912){break a}Ew=Dw<<3;Iw=ui(Ew);q[Cw+48>>2]=Iw;q[Cw+52>>2]=Iw;q[Cw+56>>2]=Ew+Iw;Gw=pj(Iw,0,(Aw<<3)+8|0);while(1){Gw=Gw+8|0;Dw=Dw+ -1|0;if(Dw){continue}break}q[Cw+52>>2]=Gw}if((dv|0)>=1){while(1){Aw=(q[(Fw<<2)+Ia>>2]<<3)+Iw|0;Ew=Aw;Hw=Aw;Dw=q[Aw+4>>2];Aw=q[Aw>>2]+1|0;if(Aw>>>0<1){Dw=Dw+1|0}q[Hw>>2]=Aw;q[Ew+4>>2]=Dw;Fw=Fw+1|0;if((Fw|0)!=(dv|0)){continue}break}}q[Cw+8>>2]=0;q[Cw+12>>2]=0;Ew=Cw+16|0;Aw=Ew;q[Aw>>2]=0;q[Aw+4>>2]=0;Hw=Cw+24|0;Aw=Hw;q[Aw>>2]=0;q[Aw+4>>2]=0;q[Cw+32>>2]=0;q[Cw>>2]=0;q[Cw+4>>2]=0;q[Cw+40>>2]=0;q[Cw+44>>2]=0;sf(Cw,Iw,Gw-Iw>>3,Bw);Dw=q[Ew>>2];Aw=q[Ew+4>>2];Ew=q[Bw+4>>2]-q[Bw>>2]|0;q[Cw+40>>2]=Ew;q[Cw+44>>2]=0;Fw=Bw;Gw=Dw;Dw=Aw<<1|Dw>>>31;Aw=(Gw<<1)+39|0;if(Aw>>>0<39){Dw=Dw+1|0}Gw=Aw;Aw=Dw>>>3;Dw=Ew+((Dw&7)<<29|Gw>>>3)|0;if(Dw>>>0<Ew>>>0){Aw=Aw+1|0}Ew=Dw+8|0;Ew>>>0<8;Fg(Fw,Ew);Aw=q[Bw>>2];q[Cw+28>>2]=0;q[Cw+32>>2]=16384;q[Hw>>2]=Aw+q[Cw+40>>2];if((dv|0)>=1){Fw=16384;while(1){Aw=dv+ -1|0;Gw=q[Cw>>2]+(q[(Aw<<2)+Ia>>2]<<3)|0;Hw=q[Gw>>2];Dw=Hw<<10;if(Fw>>>0>=Dw>>>0){while(1){Ew=q[Cw+28>>2];q[Cw+28>>2]=Ew+1;o[Ew+q[Cw+24>>2]|0]=Fw;Fw=q[Cw+32>>2]>>>8;q[Cw+32>>2]=Fw;if(Fw>>>0>=Dw>>>0){continue}break}}Ew=(Fw>>>0)/(Hw>>>0)|0;Fw=q[Gw+4>>2]+((Ew<<12)+(Fw-w(Ew,Hw)|0)|0)|0;q[Cw+32>>2]=Fw;Ew=(dv|0)>1;dv=Aw;if(Ew){continue}break}}Se(Cw,Bw);Ia=q[Cw>>2];if(Ia){q[Cw+4>>2]=Ia;ij(Ia)}Ia=q[Cw+48>>2];if(Ia){q[Cw+52>>2]=Ia;ij(Ia)}T=Cw- -64|0;return 1}Gi();F()}function Ue(Ia,dv,Aw,Bw){var Jw=0,Kw=0,Lw=0,Mw=0,Nw=0,Ow=0,Pw=0;Jw=T+ -64|0;T=Jw;q[Jw+56>>2]=0;q[Jw+48>>2]=0;q[Jw+52>>2]=0;a:{Kw=Aw+1|0;if(Kw>>>0>=Aw>>>0){if(Kw>>>0>=536870912){break a}Lw=Kw<<3;Pw=ui(Lw);q[Jw+48>>2]=Pw;q[Jw+52>>2]=Pw;q[Jw+56>>2]=Lw+Pw;Nw=pj(Pw,0,(Aw<<3)+8|0);while(1){Nw=Nw+8|0;Kw=Kw+ -1|0;if(Kw){continue}break}q[Jw+52>>2]=Nw}if((dv|0)>=1){while(1){Aw=(q[(Mw<<2)+Ia>>2]<<3)+Pw|0;Lw=Aw;Ow=Aw;Kw=q[Aw+4>>2];Aw=q[Aw>>2]+1|0;if(Aw>>>0<1){Kw=Kw+1|0}q[Ow>>2]=Aw;q[Lw+4>>2]=Kw;Mw=Mw+1|0;if((Mw|0)!=(dv|0)){continue}break}}q[Jw+8>>2]=0;q[Jw+12>>2]=0;Lw=Jw+16|0;Aw=Lw;q[Aw>>2]=0;q[Aw+4>>2]=0;Ow=Jw+24|0;Aw=Ow;q[Aw>>2]=0;q[Aw+4>>2]=0;q[Jw+32>>2]=0;q[Jw>>2]=0;q[Jw+4>>2]=0;q[Jw+40>>2]=0;q[Jw+44>>2]=0;tf(Jw,Pw,Nw-Pw>>3,Bw);Kw=q[Lw>>2];Aw=q[Lw+4>>2];Lw=q[Bw+4>>2]-q[Bw>>2]|0;q[Jw+40>>2]=Lw;q[Jw+44>>2]=0;Mw=Bw;Nw=Kw;Kw=Aw<<1|Kw>>>31;Aw=(Nw<<1)+39|0;if(Aw>>>0<39){Kw=Kw+1|0}Nw=Aw;Aw=Kw>>>3;Kw=Lw+((Kw&7)<<29|Nw>>>3)|0;if(Kw>>>0<Lw>>>0){Aw=Aw+1|0}Lw=Kw+8|0;Lw>>>0<8;Fg(Mw,Lw);Aw=q[Bw>>2];q[Jw+28>>2]=0;q[Jw+32>>2]=16384;q[Ow>>2]=Aw+q[Jw+40>>2];if((dv|0)>=1){Mw=16384;while(1){Aw=dv+ -1|0;Nw=q[Jw>>2]+(q[(Aw<<2)+Ia>>2]<<3)|0;Ow=q[Nw>>2];Kw=Ow<<10;if(Mw>>>0>=Kw>>>0){while(1){Lw=q[Jw+28>>2];q[Jw+28>>2]=Lw+1;o[Lw+q[Jw+24>>2]|0]=Mw;Mw=q[Jw+32>>2]>>>8;q[Jw+32>>2]=Mw;if(Mw>>>0>=Kw>>>0){continue}break}}Lw=(Mw>>>0)/(Ow>>>0)|0;Mw=q[Nw+4>>2]+((Lw<<12)+(Mw-w(Lw,Ow)|0)|0)|0;q[Jw+32>>2]=Mw;Lw=(dv|0)>1;dv=Aw;if(Lw){continue}break}}Se(Jw,Bw);Ia=q[Jw>>2];if(Ia){q[Jw+4>>2]=Ia;ij(Ia)}Ia=q[Jw+48>>2];if(Ia){q[Jw+52>>2]=Ia;ij(Ia)}T=Jw- -64|0;return 1}Gi();F()}function Ve(Ia,dv,Aw,Bw){var Qw=0,Rw=0,Sw=0,Tw=0,Uw=0,Vw=0,Ww=0;Qw=T+ -64|0;T=Qw;q[Qw+56>>2]=0;q[Qw+48>>2]=0;q[Qw+52>>2]=0;a:{Rw=Aw+1|0;if(Rw>>>0>=Aw>>>0){if(Rw>>>0>=536870912){break a}Sw=Rw<<3;Ww=ui(Sw);q[Qw+48>>2]=Ww;q[Qw+52>>2]=Ww;q[Qw+56>>2]=Sw+Ww;Uw=pj(Ww,0,(Aw<<3)+8|0);while(1){Uw=Uw+8|0;Rw=Rw+ -1|0;if(Rw){continue}break}q[Qw+52>>2]=Uw}if((dv|0)>=1){while(1){Aw=(q[(Tw<<2)+Ia>>2]<<3)+Ww|0;Sw=Aw;Vw=Aw;Rw=q[Aw+4>>2];Aw=q[Aw>>2]+1|0;if(Aw>>>0<1){Rw=Rw+1|0}q[Vw>>2]=Aw;q[Sw+4>>2]=Rw;Tw=Tw+1|0;if((Tw|0)!=(dv|0)){continue}break}}q[Qw+8>>2]=0;q[Qw+12>>2]=0;Sw=Qw+16|0;Aw=Sw;q[Aw>>2]=0;q[Aw+4>>2]=0;Vw=Qw+24|0;Aw=Vw;q[Aw>>2]=0;q[Aw+4>>2]=0;q[Qw+32>>2]=0;q[Qw>>2]=0;q[Qw+4>>2]=0;q[Qw+40>>2]=0;q[Qw+44>>2]=0;uf(Qw,Ww,Uw-Ww>>3,Bw);Rw=q[Sw>>2];Aw=q[Sw+4>>2];Sw=q[Bw+4>>2]-q[Bw>>2]|0;q[Qw+40>>2]=Sw;q[Qw+44>>2]=0;Tw=Bw;Uw=Rw;Rw=Aw<<1|Rw>>>31;Aw=(Uw<<1)+39|0;if(Aw>>>0<39){Rw=Rw+1|0}Uw=Aw;Aw=Rw>>>3;Rw=Sw+((Rw&7)<<29|Uw>>>3)|0;if(Rw>>>0<Sw>>>0){Aw=Aw+1|0}Sw=Rw+8|0;Sw>>>0<8;Fg(Tw,Sw);Aw=q[Bw>>2];q[Qw+28>>2]=0;q[Qw+32>>2]=16384;q[Vw>>2]=Aw+q[Qw+40>>2];if((dv|0)>=1){Tw=16384;while(1){Aw=dv+ -1|0;Uw=q[Qw>>2]+(q[(Aw<<2)+Ia>>2]<<3)|0;Vw=q[Uw>>2];Rw=Vw<<10;if(Tw>>>0>=Rw>>>0){while(1){Sw=q[Qw+28>>2];q[Qw+28>>2]=Sw+1;o[Sw+q[Qw+24>>2]|0]=Tw;Tw=q[Qw+32>>2]>>>8;q[Qw+32>>2]=Tw;if(Tw>>>0>=Rw>>>0){continue}break}}Sw=(Tw>>>0)/(Vw>>>0)|0;Tw=q[Uw+4>>2]+((Sw<<12)+(Tw-w(Sw,Vw)|0)|0)|0;q[Qw+32>>2]=Tw;Sw=(dv|0)>1;dv=Aw;if(Sw){continue}break}}Se(Qw,Bw);Ia=q[Qw>>2];if(Ia){q[Qw+4>>2]=Ia;ij(Ia)}Ia=q[Qw+48>>2];if(Ia){q[Qw+52>>2]=Ia;ij(Ia)}T=Qw- -64|0;return 1}Gi();F()}function We(Ia,dv,Aw,Bw){var Xw=0,Yw=0,Zw=0,_w=0,$w=0,ax=0,bx=0;Xw=T+ -64|0;T=Xw;q[Xw+56>>2]=0;q[Xw+48>>2]=0;q[Xw+52>>2]=0;a:{Yw=Aw+1|0;if(Yw>>>0>=Aw>>>0){if(Yw>>>0>=536870912){break a}Zw=Yw<<3;bx=ui(Zw);q[Xw+48>>2]=bx;q[Xw+52>>2]=bx;q[Xw+56>>2]=Zw+bx;$w=pj(bx,0,(Aw<<3)+8|0);while(1){$w=$w+8|0;Yw=Yw+ -1|0;if(Yw){continue}break}q[Xw+52>>2]=$w}if((dv|0)>=1){while(1){Aw=(q[(_w<<2)+Ia>>2]<<3)+bx|0;Zw=Aw;ax=Aw;Yw=q[Aw+4>>2];Aw=q[Aw>>2]+1|0;if(Aw>>>0<1){Yw=Yw+1|0}q[ax>>2]=Aw;q[Zw+4>>2]=Yw;_w=_w+1|0;if((_w|0)!=(dv|0)){continue}break}}q[Xw+8>>2]=0;q[Xw+12>>2]=0;Zw=Xw+16|0;Aw=Zw;q[Aw>>2]=0;q[Aw+4>>2]=0;ax=Xw+24|0;Aw=ax;q[Aw>>2]=0;q[Aw+4>>2]=0;q[Xw+32>>2]=0;q[Xw>>2]=0;q[Xw+4>>2]=0;q[Xw+40>>2]=0;q[Xw+44>>2]=0;vf(Xw,bx,$w-bx>>3,Bw);Yw=q[Zw>>2];Aw=q[Zw+4>>2];Zw=q[Bw+4>>2]-q[Bw>>2]|0;q[Xw+40>>2]=Zw;q[Xw+44>>2]=0;_w=Bw;$w=Yw;Yw=Aw<<1|Yw>>>31;Aw=($w<<1)+39|0;if(Aw>>>0<39){Yw=Yw+1|0}$w=Aw;Aw=Yw>>>3;Yw=Zw+((Yw&7)<<29|$w>>>3)|0;if(Yw>>>0<Zw>>>0){Aw=Aw+1|0}Zw=Yw+8|0;Zw>>>0<8;Fg(_w,Zw);Aw=q[Bw>>2];q[Xw+28>>2]=0;q[Xw+32>>2]=16384;q[ax>>2]=Aw+q[Xw+40>>2];if((dv|0)>=1){_w=16384;while(1){Aw=dv+ -1|0;$w=q[Xw>>2]+(q[(Aw<<2)+Ia>>2]<<3)|0;ax=q[$w>>2];Yw=ax<<10;if(_w>>>0>=Yw>>>0){while(1){Zw=q[Xw+28>>2];q[Xw+28>>2]=Zw+1;o[Zw+q[Xw+24>>2]|0]=_w;_w=q[Xw+32>>2]>>>8;q[Xw+32>>2]=_w;if(_w>>>0>=Yw>>>0){continue}break}}Zw=(_w>>>0)/(ax>>>0)|0;_w=q[$w+4>>2]+((Zw<<12)+(_w-w(Zw,ax)|0)|0)|0;q[Xw+32>>2]=_w;Zw=(dv|0)>1;dv=Aw;if(Zw){continue}break}}Se(Xw,Bw);Ia=q[Xw>>2];if(Ia){q[Xw+4>>2]=Ia;ij(Ia)}Ia=q[Xw+48>>2];if(Ia){q[Xw+52>>2]=Ia;ij(Ia)}T=Xw- -64|0;return 1}Gi();F()}
function Xe(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=T+ -64|0;T=e;q[e+56>>2]=0;q[e+48>>2]=0;q[e+52>>2]=0;a:{f=c+1|0;if(f>>>0>=c>>>0){if(f>>>0>=536870912){break a}g=f<<3;k=ui(g);q[e+48>>2]=k;q[e+52>>2]=k;q[e+56>>2]=g+k;i=pj(k,0,(c<<3)+8|0);while(1){i=i+8|0;f=f+ -1|0;if(f){continue}break}q[e+52>>2]=i}if((b|0)>=1){while(1){c=(q[(h<<2)+a>>2]<<3)+k|0;g=c;j=c;f=q[c+4>>2];c=q[c>>2]+1|0;if(c>>>0<1){f=f+1|0}q[j>>2]=c;q[g+4>>2]=f;h=h+1|0;if((h|0)!=(b|0)){continue}break}}q[e+8>>2]=0;q[e+12>>2]=0;g=e+16|0;c=g;q[c>>2]=0;q[c+4>>2]=0;j=e+24|0;c=j;q[c>>2]=0;q[c+4>>2]=0;q[e+32>>2]=0;q[e>>2]=0;q[e+4>>2]=0;q[e+40>>2]=0;q[e+44>>2]=0;Re(e,k,i-k>>3,d);f=q[g>>2];c=q[g+4>>2];g=q[d+4>>2]-q[d>>2]|0;q[e+40>>2]=g;q[e+44>>2]=0;h=d;i=f;f=c<<1|f>>>31;c=(i<<1)+39|0;if(c>>>0<39){f=f+1|0}i=c;c=f>>>3;f=g+((f&7)<<29|i>>>3)|0;if(f>>>0<g>>>0){c=c+1|0}g=f+8|0;g>>>0<8;Fg(h,g);c=q[d>>2];q[e+28>>2]=0;q[e+32>>2]=16384;q[j>>2]=c+q[e+40>>2];if((b|0)>=1){h=16384;while(1){c=b+ -1|0;i=q[e>>2]+(q[(c<<2)+a>>2]<<3)|0;j=q[i>>2];f=j<<10;if(h>>>0>=f>>>0){while(1){g=q[e+28>>2];q[e+28>>2]=g+1;o[g+q[e+24>>2]|0]=h;h=q[e+32>>2]>>>8;q[e+32>>2]=h;if(h>>>0>=f>>>0){continue}break}}g=(h>>>0)/(j>>>0)|0;h=q[i+4>>2]+((g<<12)+(h-w(g,j)|0)|0)|0;q[e+32>>2]=h;g=(b|0)>1;b=c;if(g){continue}break}}Se(e,d);a=q[e>>2];if(a){q[e+4>>2]=a;ij(a)}a=q[e+48>>2];if(a){q[e+52>>2]=a;ij(a)}T=e- -64|0;return 1}Gi();F()}function Ye(a,b,c,d){var l=0,m=0,n=0,p=0,r=0,s=0,t=0;l=T+ -64|0;T=l;q[l+56>>2]=0;q[l+48>>2]=0;q[l+52>>2]=0;a:{m=c+1|0;if(m>>>0>=c>>>0){if(m>>>0>=536870912){break a}n=m<<3;t=ui(n);q[l+48>>2]=t;q[l+52>>2]=t;q[l+56>>2]=n+t;r=pj(t,0,(c<<3)+8|0);while(1){r=r+8|0;m=m+ -1|0;if(m){continue}break}q[l+52>>2]=r}if((b|0)>=1){while(1){c=(q[(p<<2)+a>>2]<<3)+t|0;n=c;s=c;m=q[c+4>>2];c=q[c>>2]+1|0;if(c>>>0<1){m=m+1|0}q[s>>2]=c;q[n+4>>2]=m;p=p+1|0;if((p|0)!=(b|0)){continue}break}}q[l+8>>2]=0;q[l+12>>2]=0;n=l+16|0;c=n;q[c>>2]=0;q[c+4>>2]=0;s=l+24|0;c=s;q[c>>2]=0;q[c+4>>2]=0;q[l+32>>2]=0;q[l>>2]=0;q[l+4>>2]=0;q[l+40>>2]=0;q[l+44>>2]=0;wf(l,t,r-t>>3,d);m=q[n>>2];c=q[n+4>>2];n=q[d+4>>2]-q[d>>2]|0;q[l+40>>2]=n;q[l+44>>2]=0;p=d;r=m;m=c<<1|m>>>31;c=(r<<1)+39|0;if(c>>>0<39){m=m+1|0}r=c;c=m>>>3;m=n+((m&7)<<29|r>>>3)|0;if(m>>>0<n>>>0){c=c+1|0}n=m+8|0;n>>>0<8;Fg(p,n);c=q[d>>2];q[l+28>>2]=0;q[l+32>>2]=16384;q[s>>2]=c+q[l+40>>2];if((b|0)>=1){p=16384;while(1){c=b+ -1|0;r=q[l>>2]+(q[(c<<2)+a>>2]<<3)|0;s=q[r>>2];m=s<<10;if(p>>>0>=m>>>0){while(1){n=q[l+28>>2];q[l+28>>2]=n+1;o[n+q[l+24>>2]|0]=p;p=q[l+32>>2]>>>8;q[l+32>>2]=p;if(p>>>0>=m>>>0){continue}break}}n=(p>>>0)/(s>>>0)|0;p=q[r+4>>2]+((n<<12)+(p-w(n,s)|0)|0)|0;q[l+32>>2]=p;n=(b|0)>1;b=c;if(n){continue}break}}Se(l,d);a=q[l>>2];if(a){q[l+4>>2]=a;ij(a)}a=q[l+48>>2];if(a){q[l+52>>2]=a;ij(a)}T=l- -64|0;return 1}Gi();F()}function Ze(a,b,c,d){var u=0,v=0,x=0,y=0,z=0,A=0,B=0;u=T+ -64|0;T=u;q[u+56>>2]=0;q[u+48>>2]=0;q[u+52>>2]=0;a:{v=c+1|0;if(v>>>0>=c>>>0){if(v>>>0>=536870912){break a}x=v<<3;B=ui(x);q[u+48>>2]=B;q[u+52>>2]=B;q[u+56>>2]=x+B;z=pj(B,0,(c<<3)+8|0);while(1){z=z+8|0;v=v+ -1|0;if(v){continue}break}q[u+52>>2]=z}if((b|0)>=1){while(1){c=(q[(y<<2)+a>>2]<<3)+B|0;x=c;A=c;v=q[c+4>>2];c=q[c>>2]+1|0;if(c>>>0<1){v=v+1|0}q[A>>2]=c;q[x+4>>2]=v;y=y+1|0;if((y|0)!=(b|0)){continue}break}}q[u+8>>2]=0;q[u+12>>2]=0;x=u+16|0;c=x;q[c>>2]=0;q[c+4>>2]=0;A=u+24|0;c=A;q[c>>2]=0;q[c+4>>2]=0;q[u+32>>2]=0;q[u>>2]=0;q[u+4>>2]=0;q[u+40>>2]=0;q[u+44>>2]=0;xf(u,B,z-B>>3,d);v=q[x>>2];c=q[x+4>>2];x=q[d+4>>2]-q[d>>2]|0;q[u+40>>2]=x;q[u+44>>2]=0;y=d;z=v;v=c<<1|v>>>31;c=(z<<1)+39|0;if(c>>>0<39){v=v+1|0}z=c;c=v>>>3;v=x+((v&7)<<29|z>>>3)|0;if(v>>>0<x>>>0){c=c+1|0}x=v+8|0;x>>>0<8;Fg(y,x);c=q[d>>2];q[u+28>>2]=0;q[u+32>>2]=16384;q[A>>2]=c+q[u+40>>2];if((b|0)>=1){y=16384;while(1){c=b+ -1|0;z=q[u>>2]+(q[(c<<2)+a>>2]<<3)|0;A=q[z>>2];v=A<<10;if(y>>>0>=v>>>0){while(1){x=q[u+28>>2];q[u+28>>2]=x+1;o[x+q[u+24>>2]|0]=y;y=q[u+32>>2]>>>8;q[u+32>>2]=y;if(y>>>0>=v>>>0){continue}break}}x=(y>>>0)/(A>>>0)|0;y=q[z+4>>2]+((x<<12)+(y-w(x,A)|0)|0)|0;q[u+32>>2]=y;x=(b|0)>1;b=c;if(x){continue}break}}Se(u,d);a=q[u>>2];if(a){q[u+4>>2]=a;ij(a)}a=q[u+48>>2];if(a){q[u+52>>2]=a;ij(a)}T=u- -64|0;return 1}Gi();F()}function _e(a,b,c,d){var C=0,D=0,E=0,G=0,H=0,I=0,J=0;C=T+ -64|0;T=C;q[C+56>>2]=0;q[C+48>>2]=0;q[C+52>>2]=0;a:{D=c+1|0;if(D>>>0>=c>>>0){if(D>>>0>=536870912){break a}E=D<<3;J=ui(E);q[C+48>>2]=J;q[C+52>>2]=J;q[C+56>>2]=E+J;H=pj(J,0,(c<<3)+8|0);while(1){H=H+8|0;D=D+ -1|0;if(D){continue}break}q[C+52>>2]=H}if((b|0)>=1){while(1){c=(q[(G<<2)+a>>2]<<3)+J|0;E=c;I=c;D=q[c+4>>2];c=q[c>>2]+1|0;if(c>>>0<1){D=D+1|0}q[I>>2]=c;q[E+4>>2]=D;G=G+1|0;if((G|0)!=(b|0)){continue}break}}q[C+8>>2]=0;q[C+12>>2]=0;E=C+16|0;c=E;q[c>>2]=0;q[c+4>>2]=0;I=C+24|0;c=I;q[c>>2]=0;q[c+4>>2]=0;q[C+32>>2]=0;q[C>>2]=0;q[C+4>>2]=0;q[C+40>>2]=0;q[C+44>>2]=0;yf(C,J,H-J>>3,d);D=q[E>>2];c=q[E+4>>2];E=q[d+4>>2]-q[d>>2]|0;q[C+40>>2]=E;q[C+44>>2]=0;G=d;H=D;D=c<<1|D>>>31;c=(H<<1)+39|0;if(c>>>0<39){D=D+1|0}H=c;c=D>>>3;D=E+((D&7)<<29|H>>>3)|0;if(D>>>0<E>>>0){c=c+1|0}E=D+8|0;E>>>0<8;Fg(G,E);c=q[d>>2];q[C+28>>2]=0;q[C+32>>2]=16384;q[I>>2]=c+q[C+40>>2];if((b|0)>=1){G=16384;while(1){c=b+ -1|0;H=q[C>>2]+(q[(c<<2)+a>>2]<<3)|0;I=q[H>>2];D=I<<10;if(G>>>0>=D>>>0){while(1){E=q[C+28>>2];q[C+28>>2]=E+1;o[E+q[C+24>>2]|0]=G;G=q[C+32>>2]>>>8;q[C+32>>2]=G;if(G>>>0>=D>>>0){continue}break}}E=(G>>>0)/(I>>>0)|0;G=q[H+4>>2]+((E<<12)+(G-w(E,I)|0)|0)|0;q[C+32>>2]=G;E=(b|0)>1;b=c;if(E){continue}break}}Se(C,d);a=q[C>>2];if(a){q[C+4>>2]=a;ij(a)}a=q[C+48>>2];if(a){q[C+52>>2]=a;ij(a)}T=C- -64|0;return 1}Gi();F()}function $e(a,b,c,d){var K=0,L=0,M=0,N=0,O=0,P=0,Q=0;K=T+ -64|0;T=K;q[K+56>>2]=0;q[K+48>>2]=0;q[K+52>>2]=0;a:{L=c+1|0;if(L>>>0>=c>>>0){if(L>>>0>=536870912){break a}M=L<<3;Q=ui(M);q[K+48>>2]=Q;q[K+52>>2]=Q;q[K+56>>2]=M+Q;O=pj(Q,0,(c<<3)+8|0);while(1){O=O+8|0;L=L+ -1|0;if(L){continue}break}q[K+52>>2]=O}if((b|0)>=1){while(1){c=(q[(N<<2)+a>>2]<<3)+Q|0;M=c;P=c;L=q[c+4>>2];c=q[c>>2]+1|0;if(c>>>0<1){L=L+1|0}q[P>>2]=c;q[M+4>>2]=L;N=N+1|0;if((N|0)!=(b|0)){continue}break}}q[K+8>>2]=0;q[K+12>>2]=0;M=K+16|0;c=M;q[c>>2]=0;q[c+4>>2]=0;P=K+24|0;c=P;q[c>>2]=0;q[c+4>>2]=0;q[K+32>>2]=0;q[K>>2]=0;q[K+4>>2]=0;q[K+40>>2]=0;q[K+44>>2]=0;zf(K,Q,O-Q>>3,d);L=q[M>>2];c=q[M+4>>2];M=q[d+4>>2]-q[d>>2]|0;q[K+40>>2]=M;q[K+44>>2]=0;N=d;O=L;L=c<<1|L>>>31;c=(O<<1)+39|0;if(c>>>0<39){L=L+1|0}O=c;c=L>>>3;L=M+((L&7)<<29|O>>>3)|0;if(L>>>0<M>>>0){c=c+1|0}M=L+8|0;M>>>0<8;Fg(N,M);c=q[d>>2];q[K+28>>2]=0;q[K+32>>2]=32768;q[P>>2]=c+q[K+40>>2];if((b|0)>=1){N=32768;while(1){c=b+ -1|0;O=q[K>>2]+(q[(c<<2)+a>>2]<<3)|0;P=q[O>>2];L=P<<10;if(N>>>0>=L>>>0){while(1){M=q[K+28>>2];q[K+28>>2]=M+1;o[M+q[K+24>>2]|0]=N;N=q[K+32>>2]>>>8;q[K+32>>2]=N;if(N>>>0>=L>>>0){continue}break}}M=(N>>>0)/(P>>>0)|0;N=q[O+4>>2]+((M<<13)+(N-w(M,P)|0)|0)|0;q[K+32>>2]=N;M=(b|0)>1;b=c;if(M){continue}break}}Af(K,d);a=q[K>>2];if(a){q[K+4>>2]=a;ij(a)}a=q[K+48>>2];if(a){q[K+52>>2]=a;ij(a)}T=K- -64|0;return 1}Gi();F()}function af(a,b,c,d){var R=0,S=0,U=0,V=0,W=0,X=0,Y=0;R=T+ -64|0;T=R;q[R+56>>2]=0;q[R+48>>2]=0;q[R+52>>2]=0;a:{S=c+1|0;if(S>>>0>=c>>>0){if(S>>>0>=536870912){break a}U=S<<3;Y=ui(U);q[R+48>>2]=Y;q[R+52>>2]=Y;q[R+56>>2]=U+Y;W=pj(Y,0,(c<<3)+8|0);while(1){W=W+8|0;S=S+ -1|0;if(S){continue}break}q[R+52>>2]=W}if((b|0)>=1){while(1){c=(q[(V<<2)+a>>2]<<3)+Y|0;U=c;X=c;S=q[c+4>>2];c=q[c>>2]+1|0;if(c>>>0<1){S=S+1|0}q[X>>2]=c;q[U+4>>2]=S;V=V+1|0;if((V|0)!=(b|0)){continue}break}}q[R+8>>2]=0;q[R+12>>2]=0;U=R+16|0;c=U;q[c>>2]=0;q[c+4>>2]=0;X=R+24|0;c=X;q[c>>2]=0;q[c+4>>2]=0;q[R+32>>2]=0;q[R>>2]=0;q[R+4>>2]=0;q[R+40>>2]=0;q[R+44>>2]=0;Bf(R,Y,W-Y>>3,d);S=q[U>>2];c=q[U+4>>2];U=q[d+4>>2]-q[d>>2]|0;q[R+40>>2]=U;q[R+44>>2]=0;V=d;W=S;S=c<<1|S>>>31;c=(W<<1)+39|0;if(c>>>0<39){S=S+1|0}W=c;c=S>>>3;S=U+((S&7)<<29|W>>>3)|0;if(S>>>0<U>>>0){c=c+1|0}U=S+8|0;U>>>0<8;Fg(V,U);c=q[d>>2];q[R+28>>2]=0;q[R+32>>2]=131072;q[X>>2]=c+q[R+40>>2];if((b|0)>=1){V=131072;while(1){c=b+ -1|0;W=q[R>>2]+(q[(c<<2)+a>>2]<<3)|0;X=q[W>>2];S=X<<10;if(V>>>0>=S>>>0){while(1){U=q[R+28>>2];q[R+28>>2]=U+1;o[U+q[R+24>>2]|0]=V;V=q[R+32>>2]>>>8;q[R+32>>2]=V;if(V>>>0>=S>>>0){continue}break}}U=(V>>>0)/(X>>>0)|0;V=q[W+4>>2]+((U<<15)+(V-w(U,X)|0)|0)|0;q[R+32>>2]=V;U=(b|0)>1;b=c;if(U){continue}break}}Cf(R,d);a=q[R>>2];if(a){q[R+4>>2]=a;ij(a)}a=q[R+48>>2];if(a){q[R+52>>2]=a;ij(a)}T=R- -64|0;return 1}Gi();F()}function bf(a,b,c,d){var Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0;Z=T+ -64|0;T=Z;q[Z+56>>2]=0;q[Z+48>>2]=0;q[Z+52>>2]=0;a:{_=c+1|0;if(_>>>0>=c>>>0){if(_>>>0>=536870912){break a}$=_<<3;da=ui($);q[Z+48>>2]=da;q[Z+52>>2]=da;q[Z+56>>2]=$+da;ba=pj(da,0,(c<<3)+8|0);while(1){ba=ba+8|0;_=_+ -1|0;if(_){continue}break}q[Z+52>>2]=ba}if((b|0)>=1){while(1){c=(q[(aa<<2)+a>>2]<<3)+da|0;$=c;ca=c;_=q[c+4>>2];c=q[c>>2]+1|0;if(c>>>0<1){_=_+1|0}q[ca>>2]=c;q[$+4>>2]=_;aa=aa+1|0;if((aa|0)!=(b|0)){continue}break}}q[Z+8>>2]=0;q[Z+12>>2]=0;$=Z+16|0;c=$;q[c>>2]=0;q[c+4>>2]=0;ca=Z+24|0;c=ca;q[c>>2]=0;q[c+4>>2]=0;q[Z+32>>2]=0;q[Z>>2]=0;q[Z+4>>2]=0;q[Z+40>>2]=0;q[Z+44>>2]=0;Df(Z,da,ba-da>>3,d);_=q[$>>2];c=q[$+4>>2];$=q[d+4>>2]-q[d>>2]|0;q[Z+40>>2]=$;q[Z+44>>2]=0;aa=d;ba=_;_=c<<1|_>>>31;c=(ba<<1)+39|0;if(c>>>0<39){_=_+1|0}ba=c;c=_>>>3;_=$+((_&7)<<29|ba>>>3)|0;if(_>>>0<$>>>0){c=c+1|0}$=_+8|0;$>>>0<8;Fg(aa,$);c=q[d>>2];q[Z+28>>2]=0;q[Z+32>>2]=262144;q[ca>>2]=c+q[Z+40>>2];if((b|0)>=1){aa=262144;while(1){c=b+ -1|0;ba=q[Z>>2]+(q[(c<<2)+a>>2]<<3)|0;ca=q[ba>>2];_=ca<<10;if(aa>>>0>=_>>>0){while(1){$=q[Z+28>>2];q[Z+28>>2]=$+1;o[$+q[Z+24>>2]|0]=aa;aa=q[Z+32>>2]>>>8;q[Z+32>>2]=aa;if(aa>>>0>=_>>>0){continue}break}}$=(aa>>>0)/(ca>>>0)|0;aa=q[ba+4>>2]+(($<<16)+(aa-w($,ca)|0)|0)|0;q[Z+32>>2]=aa;$=(b|0)>1;b=c;if($){continue}break}}Ef(Z,d);a=q[Z>>2];if(a){q[Z+4>>2]=a;ij(a)}a=q[Z+48>>2];if(a){q[Z+52>>2]=a;ij(a)}T=Z- -64|0;return 1}Gi();F()}function cf(a,b,c,d){var ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;ea=T+ -64|0;T=ea;q[ea+56>>2]=0;q[ea+48>>2]=0;q[ea+52>>2]=0;a:{fa=c+1|0;if(fa>>>0>=c>>>0){if(fa>>>0>=536870912){break a}ga=fa<<3;ka=ui(ga);q[ea+48>>2]=ka;q[ea+52>>2]=ka;q[ea+56>>2]=ga+ka;ia=pj(ka,0,(c<<3)+8|0);while(1){ia=ia+8|0;fa=fa+ -1|0;if(fa){continue}break}q[ea+52>>2]=ia}if((b|0)>=1){while(1){c=(q[(ha<<2)+a>>2]<<3)+ka|0;ga=c;ja=c;fa=q[c+4>>2];c=q[c>>2]+1|0;if(c>>>0<1){fa=fa+1|0}q[ja>>2]=c;q[ga+4>>2]=fa;ha=ha+1|0;if((ha|0)!=(b|0)){continue}break}}q[ea+8>>2]=0;q[ea+12>>2]=0;ga=ea+16|0;c=ga;q[c>>2]=0;q[c+4>>2]=0;ja=ea+24|0;c=ja;q[c>>2]=0;q[c+4>>2]=0;q[ea+32>>2]=0;q[ea>>2]=0;q[ea+4>>2]=0;q[ea+40>>2]=0;q[ea+44>>2]=0;Ff(ea,ka,ia-ka>>3,d);fa=q[ga>>2];c=q[ga+4>>2];ga=q[d+4>>2]-q[d>>2]|0;q[ea+40>>2]=ga;q[ea+44>>2]=0;ha=d;ia=fa;fa=c<<1|fa>>>31;c=(ia<<1)+39|0;if(c>>>0<39){fa=fa+1|0}ia=c;c=fa>>>3;fa=ga+((fa&7)<<29|ia>>>3)|0;if(fa>>>0<ga>>>0){c=c+1|0}ga=fa+8|0;ga>>>0<8;Fg(ha,ga);c=q[d>>2];q[ea+28>>2]=0;q[ea+32>>2]=1048576;q[ja>>2]=c+q[ea+40>>2];if((b|0)>=1){ha=1048576;while(1){c=b+ -1|0;ia=q[ea>>2]+(q[(c<<2)+a>>2]<<3)|0;ja=q[ia>>2];fa=ja<<10;if(ha>>>0>=fa>>>0){while(1){ga=q[ea+28>>2];q[ea+28>>2]=ga+1;o[ga+q[ea+24>>2]|0]=ha;ha=q[ea+32>>2]>>>8;q[ea+32>>2]=ha;if(ha>>>0>=fa>>>0){continue}break}}ga=(ha>>>0)/(ja>>>0)|0;ha=q[ia+4>>2]+((ga<<18)+(ha-w(ga,ja)|0)|0)|0;q[ea+32>>2]=ha;ga=(b|0)>1;b=c;if(ga){continue}break}}Gf(ea,d);a=q[ea>>2];if(a){q[ea+4>>2]=a;ij(a)}a=q[ea+48>>2];if(a){q[ea+52>>2]=a;ij(a)}T=ea- -64|0;return 1}Gi();F()}function df(a,b,c,d){var la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0;la=T+ -64|0;T=la;q[la+56>>2]=0;q[la+48>>2]=0;q[la+52>>2]=0;a:{ma=c+1|0;if(ma>>>0>=c>>>0){if(ma>>>0>=536870912){break a}na=ma<<3;ra=ui(na);q[la+48>>2]=ra;q[la+52>>2]=ra;q[la+56>>2]=na+ra;pa=pj(ra,0,(c<<3)+8|0);while(1){pa=pa+8|0;ma=ma+ -1|0;if(ma){continue}break}q[la+52>>2]=pa}if((b|0)>=1){while(1){c=(q[(oa<<2)+a>>2]<<3)+ra|0;na=c;qa=c;ma=q[c+4>>2];c=q[c>>2]+1|0;if(c>>>0<1){ma=ma+1|0}q[qa>>2]=c;q[na+4>>2]=ma;oa=oa+1|0;if((oa|0)!=(b|0)){continue}break}}q[la+8>>2]=0;q[la+12>>2]=0;na=la+16|0;c=na;q[c>>2]=0;q[c+4>>2]=0;qa=la+24|0;c=qa;q[c>>2]=0;q[c+4>>2]=0;q[la+32>>2]=0;q[la>>2]=0;q[la+4>>2]=0;q[la+40>>2]=0;q[la+44>>2]=0;Hf(la,ra,pa-ra>>3,d);ma=q[na>>2];c=q[na+4>>2];na=q[d+4>>2]-q[d>>2]|0;q[la+40>>2]=na;q[la+44>>2]=0;oa=d;pa=ma;ma=c<<1|ma>>>31;c=(pa<<1)+39|0;if(c>>>0<39){ma=ma+1|0}pa=c;c=ma>>>3;ma=na+((ma&7)<<29|pa>>>3)|0;if(ma>>>0<na>>>0){c=c+1|0}na=ma+8|0;na>>>0<8;Fg(oa,na);c=q[d>>2];q[la+28>>2]=0;q[la+32>>2]=2097152;q[qa>>2]=c+q[la+40>>2];if((b|0)>=1){oa=2097152;while(1){c=b+ -1|0;pa=q[la>>2]+(q[(c<<2)+a>>2]<<3)|0;qa=q[pa>>2];ma=qa<<10;if(oa>>>0>=ma>>>0){while(1){na=q[la+28>>2];q[la+28>>2]=na+1;o[na+q[la+24>>2]|0]=oa;oa=q[la+32>>2]>>>8;q[la+32>>2]=oa;if(oa>>>0>=ma>>>0){continue}break}}na=(oa>>>0)/(qa>>>0)|0;oa=q[pa+4>>2]+((na<<19)+(oa-w(na,qa)|0)|0)|0;q[la+32>>2]=oa;na=(b|0)>1;b=c;if(na){continue}break}}If(la,d);a=q[la>>2];if(a){q[la+4>>2]=a;ij(a)}a=q[la+48>>2];if(a){q[la+52>>2]=a;ij(a)}T=la- -64|0;return 1}Gi();F()}function ef(a,b,c,d){var sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0;sa=T+ -64|0;T=sa;q[sa+56>>2]=0;q[sa+48>>2]=0;q[sa+52>>2]=0;a:{ta=c+1|0;if(ta>>>0>=c>>>0){if(ta>>>0>=536870912){break a}ua=ta<<3;ya=ui(ua);q[sa+48>>2]=ya;q[sa+52>>2]=ya;q[sa+56>>2]=ua+ya;wa=pj(ya,0,(c<<3)+8|0);while(1){wa=wa+8|0;ta=ta+ -1|0;if(ta){continue}break}q[sa+52>>2]=wa}if((b|0)>=1){while(1){c=(q[(va<<2)+a>>2]<<3)+ya|0;ua=c;xa=c;ta=q[c+4>>2];c=q[c>>2]+1|0;if(c>>>0<1){ta=ta+1|0}q[xa>>2]=c;q[ua+4>>2]=ta;va=va+1|0;if((va|0)!=(b|0)){continue}break}}q[sa+8>>2]=0;q[sa+12>>2]=0;ua=sa+16|0;c=ua;q[c>>2]=0;q[c+4>>2]=0;xa=sa+24|0;c=xa;q[c>>2]=0;q[c+4>>2]=0;q[sa+32>>2]=0;q[sa>>2]=0;q[sa+4>>2]=0;q[sa+40>>2]=0;q[sa+44>>2]=0;Jf(sa,ya,wa-ya>>3,d);ta=q[ua>>2];c=q[ua+4>>2];ua=q[d+4>>2]-q[d>>2]|0;q[sa+40>>2]=ua;q[sa+44>>2]=0;va=d;wa=ta;ta=c<<1|ta>>>31;c=(wa<<1)+39|0;if(c>>>0<39){ta=ta+1|0}wa=c;c=ta>>>3;ta=ua+((ta&7)<<29|wa>>>3)|0;if(ta>>>0<ua>>>0){c=c+1|0}ua=ta+8|0;ua>>>0<8;Fg(va,ua);c=q[d>>2];q[sa+28>>2]=0;q[sa+32>>2]=4194304;q[xa>>2]=c+q[sa+40>>2];if((b|0)>=1){va=4194304;while(1){c=b+ -1|0;wa=q[sa>>2]+(q[(c<<2)+a>>2]<<3)|0;xa=q[wa>>2];ta=xa<<10;if(va>>>0>=ta>>>0){while(1){ua=q[sa+28>>2];q[sa+28>>2]=ua+1;o[ua+q[sa+24>>2]|0]=va;va=q[sa+32>>2]>>>8;q[sa+32>>2]=va;if(va>>>0>=ta>>>0){continue}break}}ua=(va>>>0)/(xa>>>0)|0;va=q[wa+4>>2]+((ua<<20)+(va-w(ua,xa)|0)|0)|0;q[sa+32>>2]=va;ua=(b|0)>1;b=c;if(ua){continue}break}}Kf(sa,d);a=q[sa>>2];if(a){q[sa+4>>2]=a;ij(a)}a=q[sa+48>>2];if(a){q[sa+52>>2]=a;ij(a)}T=sa- -64|0;return 1}Gi();F()}function ff(a,b,c,d){var za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0;za=T+ -64|0;T=za;q[za+56>>2]=0;q[za+48>>2]=0;q[za+52>>2]=0;a:{Aa=c+1|0;if(Aa>>>0>=c>>>0){if(Aa>>>0>=536870912){break a}Ba=Aa<<3;Fa=ui(Ba);q[za+48>>2]=Fa;q[za+52>>2]=Fa;q[za+56>>2]=Ba+Fa;Da=pj(Fa,0,(c<<3)+8|0);while(1){Da=Da+8|0;Aa=Aa+ -1|0;if(Aa){continue}break}q[za+52>>2]=Da}if((b|0)>=1){while(1){c=(q[(Ca<<2)+a>>2]<<3)+Fa|0;Ba=c;Ea=c;Aa=q[c+4>>2];c=q[c>>2]+1|0;if(c>>>0<1){Aa=Aa+1|0}q[Ea>>2]=c;q[Ba+4>>2]=Aa;Ca=Ca+1|0;if((Ca|0)!=(b|0)){continue}break}}q[za+8>>2]=0;q[za+12>>2]=0;Ba=za+16|0;c=Ba;q[c>>2]=0;q[c+4>>2]=0;Ea=za+24|0;c=Ea;q[c>>2]=0;q[c+4>>2]=0;q[za+32>>2]=0;q[za>>2]=0;q[za+4>>2]=0;q[za+40>>2]=0;q[za+44>>2]=0;Lf(za,Fa,Da-Fa>>3,d);Aa=q[Ba>>2];c=q[Ba+4>>2];Ba=q[d+4>>2]-q[d>>2]|0;q[za+40>>2]=Ba;q[za+44>>2]=0;Ca=d;Da=Aa;Aa=c<<1|Aa>>>31;c=(Da<<1)+39|0;if(c>>>0<39){Aa=Aa+1|0}Da=c;c=Aa>>>3;Aa=Ba+((Aa&7)<<29|Da>>>3)|0;if(Aa>>>0<Ba>>>0){c=c+1|0}Ba=Aa+8|0;Ba>>>0<8;Fg(Ca,Ba);c=q[d>>2];q[za+28>>2]=0;q[za+32>>2]=4194304;q[Ea>>2]=c+q[za+40>>2];if((b|0)>=1){Ca=4194304;while(1){c=b+ -1|0;Da=q[za>>2]+(q[(c<<2)+a>>2]<<3)|0;Ea=q[Da>>2];Aa=Ea<<10;if(Ca>>>0>=Aa>>>0){while(1){Ba=q[za+28>>2];q[za+28>>2]=Ba+1;o[Ba+q[za+24>>2]|0]=Ca;Ca=q[za+32>>2]>>>8;q[za+32>>2]=Ca;if(Ca>>>0>=Aa>>>0){continue}break}}Ba=(Ca>>>0)/(Ea>>>0)|0;Ca=q[Da+4>>2]+((Ba<<20)+(Ca-w(Ba,Ea)|0)|0)|0;q[za+32>>2]=Ca;Ba=(b|0)>1;b=c;if(Ba){continue}break}}Kf(za,d);a=q[za>>2];if(a){q[za+4>>2]=a;ij(a)}a=q[za+48>>2];if(a){q[za+52>>2]=a;ij(a)}T=za- -64|0;return 1}Gi();F()}function gf(a,b,c,d){var Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0;Ga=T+ -64|0;T=Ga;q[Ga+56>>2]=0;q[Ga+48>>2]=0;q[Ga+52>>2]=0;a:{Ha=c+1|0;if(Ha>>>0>=c>>>0){if(Ha>>>0>=536870912){break a}Ia=Ha<<3;Ma=ui(Ia);q[Ga+48>>2]=Ma;q[Ga+52>>2]=Ma;q[Ga+56>>2]=Ia+Ma;Ka=pj(Ma,0,(c<<3)+8|0);while(1){Ka=Ka+8|0;Ha=Ha+ -1|0;if(Ha){continue}break}q[Ga+52>>2]=Ka}if((b|0)>=1){while(1){c=(q[(Ja<<2)+a>>2]<<3)+Ma|0;Ia=c;La=c;Ha=q[c+4>>2];c=q[c>>2]+1|0;if(c>>>0<1){Ha=Ha+1|0}q[La>>2]=c;q[Ia+4>>2]=Ha;Ja=Ja+1|0;if((Ja|0)!=(b|0)){continue}break}}q[Ga+8>>2]=0;q[Ga+12>>2]=0;Ia=Ga+16|0;c=Ia;q[c>>2]=0;q[c+4>>2]=0;La=Ga+24|0;c=La;q[c>>2]=0;q[c+4>>2]=0;q[Ga+32>>2]=0;q[Ga>>2]=0;q[Ga+4>>2]=0;q[Ga+40>>2]=0;q[Ga+44>>2]=0;Mf(Ga,Ma,Ka-Ma>>3,d);Ha=q[Ia>>2];c=q[Ia+4>>2];Ia=q[d+4>>2]-q[d>>2]|0;q[Ga+40>>2]=Ia;q[Ga+44>>2]=0;Ja=d;Ka=Ha;Ha=c<<1|Ha>>>31;c=(Ka<<1)+39|0;if(c>>>0<39){Ha=Ha+1|0}Ka=c;c=Ha>>>3;Ha=Ia+((Ha&7)<<29|Ka>>>3)|0;if(Ha>>>0<Ia>>>0){c=c+1|0}Ia=Ha+8|0;Ia>>>0<8;Fg(Ja,Ia);c=q[d>>2];q[Ga+28>>2]=0;q[Ga+32>>2]=4194304;q[La>>2]=c+q[Ga+40>>2];if((b|0)>=1){Ja=4194304;while(1){c=b+ -1|0;Ka=q[Ga>>2]+(q[(c<<2)+a>>2]<<3)|0;La=q[Ka>>2];Ha=La<<10;if(Ja>>>0>=Ha>>>0){while(1){Ia=q[Ga+28>>2];q[Ga+28>>2]=Ia+1;o[Ia+q[Ga+24>>2]|0]=Ja;Ja=q[Ga+32>>2]>>>8;q[Ga+32>>2]=Ja;if(Ja>>>0>=Ha>>>0){continue}break}}Ia=(Ja>>>0)/(La>>>0)|0;Ja=q[Ka+4>>2]+((Ia<<20)+(Ja-w(Ia,La)|0)|0)|0;q[Ga+32>>2]=Ja;Ia=(b|0)>1;b=c;if(Ia){continue}break}}Kf(Ga,d);a=q[Ga>>2];if(a){q[Ga+4>>2]=a;ij(a)}a=q[Ga+48>>2];if(a){q[Ga+52>>2]=a;ij(a)}T=Ga- -64|0;return 1}Gi();F()}function hf(a,b,c,d){var Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0;Na=T+ -64|0;T=Na;q[Na+56>>2]=0;q[Na+48>>2]=0;q[Na+52>>2]=0;a:{Oa=c+1|0;if(Oa>>>0>=c>>>0){if(Oa>>>0>=536870912){break a}Pa=Oa<<3;Ta=ui(Pa);q[Na+48>>2]=Ta;q[Na+52>>2]=Ta;q[Na+56>>2]=Pa+Ta;Ra=pj(Ta,0,(c<<3)+8|0);while(1){Ra=Ra+8|0;Oa=Oa+ -1|0;if(Oa){continue}break}q[Na+52>>2]=Ra}if((b|0)>=1){while(1){c=(q[(Qa<<2)+a>>2]<<3)+Ta|0;Pa=c;Sa=c;Oa=q[c+4>>2];c=q[c>>2]+1|0;if(c>>>0<1){Oa=Oa+1|0}q[Sa>>2]=c;q[Pa+4>>2]=Oa;Qa=Qa+1|0;if((Qa|0)!=(b|0)){continue}break}}q[Na+8>>2]=0;q[Na+12>>2]=0;Pa=Na+16|0;c=Pa;q[c>>2]=0;q[c+4>>2]=0;Sa=Na+24|0;c=Sa;q[c>>2]=0;q[c+4>>2]=0;q[Na+32>>2]=0;q[Na>>2]=0;q[Na+4>>2]=0;q[Na+40>>2]=0;q[Na+44>>2]=0;Nf(Na,Ta,Ra-Ta>>3,d);Oa=q[Pa>>2];c=q[Pa+4>>2];Pa=q[d+4>>2]-q[d>>2]|0;q[Na+40>>2]=Pa;q[Na+44>>2]=0;Qa=d;Ra=Oa;Oa=c<<1|Oa>>>31;c=(Ra<<1)+39|0;if(c>>>0<39){Oa=Oa+1|0}Ra=c;c=Oa>>>3;Oa=Pa+((Oa&7)<<29|Ra>>>3)|0;if(Oa>>>0<Pa>>>0){c=c+1|0}Pa=Oa+8|0;Pa>>>0<8;Fg(Qa,Pa);c=q[d>>2];q[Na+28>>2]=0;q[Na+32>>2]=4194304;q[Sa>>2]=c+q[Na+40>>2];if((b|0)>=1){Qa=4194304;while(1){c=b+ -1|0;Ra=q[Na>>2]+(q[(c<<2)+a>>2]<<3)|0;Sa=q[Ra>>2];Oa=Sa<<10;if(Qa>>>0>=Oa>>>0){while(1){Pa=q[Na+28>>2];q[Na+28>>2]=Pa+1;o[Pa+q[Na+24>>2]|0]=Qa;Qa=q[Na+32>>2]>>>8;q[Na+32>>2]=Qa;if(Qa>>>0>=Oa>>>0){continue}break}}Pa=(Qa>>>0)/(Sa>>>0)|0;Qa=q[Ra+4>>2]+((Pa<<20)+(Qa-w(Pa,Sa)|0)|0)|0;q[Na+32>>2]=Qa;Pa=(b|0)>1;b=c;if(Pa){continue}break}}Kf(Na,d);a=q[Na>>2];if(a){q[Na+4>>2]=a;ij(a)}a=q[Na+48>>2];if(a){q[Na+52>>2]=a;ij(a)}T=Na- -64|0;return 1}Gi();F()}function jf(a,b,c,d){var Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0;Ua=T+ -64|0;T=Ua;q[Ua+56>>2]=0;q[Ua+48>>2]=0;q[Ua+52>>2]=0;a:{Va=c+1|0;if(Va>>>0>=c>>>0){if(Va>>>0>=536870912){break a}Wa=Va<<3;_a=ui(Wa);q[Ua+48>>2]=_a;q[Ua+52>>2]=_a;q[Ua+56>>2]=Wa+_a;Ya=pj(_a,0,(c<<3)+8|0);while(1){Ya=Ya+8|0;Va=Va+ -1|0;if(Va){continue}break}q[Ua+52>>2]=Ya}if((b|0)>=1){while(1){c=(q[(Xa<<2)+a>>2]<<3)+_a|0;Wa=c;Za=c;Va=q[c+4>>2];c=q[c>>2]+1|0;if(c>>>0<1){Va=Va+1|0}q[Za>>2]=c;q[Wa+4>>2]=Va;Xa=Xa+1|0;if((Xa|0)!=(b|0)){continue}break}}q[Ua+8>>2]=0;q[Ua+12>>2]=0;Wa=Ua+16|0;c=Wa;q[c>>2]=0;q[c+4>>2]=0;Za=Ua+24|0;c=Za;q[c>>2]=0;q[c+4>>2]=0;q[Ua+32>>2]=0;q[Ua>>2]=0;q[Ua+4>>2]=0;q[Ua+40>>2]=0;q[Ua+44>>2]=0;Of(Ua,_a,Ya-_a>>3,d);Va=q[Wa>>2];c=q[Wa+4>>2];Wa=q[d+4>>2]-q[d>>2]|0;q[Ua+40>>2]=Wa;q[Ua+44>>2]=0;Xa=d;Ya=Va;Va=c<<1|Va>>>31;c=(Ya<<1)+39|0;if(c>>>0<39){Va=Va+1|0}Ya=c;c=Va>>>3;Va=Wa+((Va&7)<<29|Ya>>>3)|0;if(Va>>>0<Wa>>>0){c=c+1|0}Wa=Va+8|0;Wa>>>0<8;Fg(Xa,Wa);c=q[d>>2];q[Ua+28>>2]=0;q[Ua+32>>2]=4194304;q[Za>>2]=c+q[Ua+40>>2];if((b|0)>=1){Xa=4194304;while(1){c=b+ -1|0;Ya=q[Ua>>2]+(q[(c<<2)+a>>2]<<3)|0;Za=q[Ya>>2];Va=Za<<10;if(Xa>>>0>=Va>>>0){while(1){Wa=q[Ua+28>>2];q[Ua+28>>2]=Wa+1;o[Wa+q[Ua+24>>2]|0]=Xa;Xa=q[Ua+32>>2]>>>8;q[Ua+32>>2]=Xa;if(Xa>>>0>=Va>>>0){continue}break}}Wa=(Xa>>>0)/(Za>>>0)|0;Xa=q[Ya+4>>2]+((Wa<<20)+(Xa-w(Wa,Za)|0)|0)|0;q[Ua+32>>2]=Xa;Wa=(b|0)>1;b=c;if(Wa){continue}break}}Kf(Ua,d);a=q[Ua>>2];if(a){q[Ua+4>>2]=a;ij(a)}a=q[Ua+48>>2];if(a){q[Ua+52>>2]=a;ij(a)}T=Ua- -64|0;return 1}Gi();F()}function kf(a,b,c){var d=0,o=0,w=0,T=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0;a:{b:while(1){db=b+ -4|0;c:while(1){w=a;d:while(1){e:{f:{g:{h:{d=b-w|0;a=d>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:c=q[c>>2];a=q[c>>2];c=q[c+4>>2]-a>>3;d=b+ -4|0;b=q[d>>2];if(c>>>0<=b>>>0){break h}db=c;c=q[w>>2];if(db>>>0<=c>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(c<<3)>>2]){break a}q[w>>2]=b;q[d>>2]=c;return;case 2:nf(w,w+4|0,w+8|0,b+ -4|0,c);return;case 3:break i;case 1:break g;default:break a}}of(w,w+4|0,w+8|0,w+12|0,b+ -4|0,c);return}if((d|0)<=123){pf(w,b,c);return}ab=((a|0)/2<<2)+w|0;j:{if((d|0)>=3997){a=(a|0)/4<<2;cb=of(w,a+w|0,ab,a+ab|0,db,c);break j}cb=qf(w,ab,db,c)}a=q[c>>2];$a=q[a>>2];T=q[a+4>>2]-$a>>3;a=q[w>>2];if(T>>>0<=a>>>0){break e}d=q[ab>>2];if(T>>>0<=d>>>0){break e}o=db;bb=q[$a+(a<<3)>>2];eb=q[$a+(d<<3)>>2];if(bb>>>0>=eb>>>0){while(1){o=o+ -4|0;if((o|0)==(w|0)){a=q[db>>2];if(T>>>0<=a>>>0){break e}d=w+4|0;if(bb>>>0<t[$a+(a<<3)>>2]){break f}if((d|0)==(db|0)){break a}while(1){o=q[d>>2];if(T>>>0<=o>>>0){break e}if(bb>>>0<t[$a+(o<<3)>>2]){q[d>>2]=a;q[db>>2]=o;d=d+4|0;break f}d=d+4|0;if((db|0)!=(d|0)){continue}break}break a}d=q[o>>2];if(T>>>0<=d>>>0){break e}if(t[$a+(d<<3)>>2]>=eb>>>0){continue}break}q[w>>2]=d;q[o>>2]=a;cb=cb+1|0}k:{d=w+4|0;if(d>>>0>=o>>>0){break k}a=q[d>>2];if(T>>>0<=a>>>0){break e}while(1){bb=q[ab>>2];eb=$a+(bb<<3)|0;while(1){if(T>>>0<=bb>>>0){break e}fb=q[eb>>2];if(t[$a+(a<<3)>>2]<fb>>>0){a=q[d+4>>2];d=d+4|0;if(T>>>0>a>>>0){continue}break e}break}while(1){o=o+ -4|0;bb=q[o>>2];if(T>>>0<=bb>>>0){break e}if(t[$a+(bb<<3)>>2]>=fb>>>0){continue}break}if(d>>>0>o>>>0){break k}q[d>>2]=bb;q[o>>2]=a;ab=(d|0)==(ab|0)?o:ab;cb=cb+1|0;a=q[d+4>>2];d=d+4|0;if(T>>>0>a>>>0){continue}break}break e}l:{if((d|0)==(ab|0)){break l}a=q[ab>>2];if(T>>>0<=a>>>0){break e}o=q[d>>2];if(T>>>0<=o>>>0){break e}if(t[$a+(a<<3)>>2]>=t[$a+(o<<3)>>2]){break l}q[d>>2]=a;q[ab>>2]=o;cb=cb+1|0}if(!cb){o=rf(w,d,c);a=d+4|0;if(rf(a,b,c)){b=d;a=w;if(!o){continue b}break a}if(o){continue c}}if((d-w|0)<(b-d|0)){kf(w,d,c);a=d+4|0;continue c}kf(d+4|0,b,c);b=d;a=w;continue b}Hi();F()}qf(w,w+4|0,b+ -4|0,c);break a}if((d|0)==(db|0)){break a}a=db;o=q[w>>2];if(T>>>0<=o>>>0){break e}while(1){ab=$a+(o<<3)|0;while(1){cb=q[d>>2];if(T>>>0<=cb>>>0){break e}bb=q[ab>>2];if(bb>>>0>=t[$a+(cb<<3)>>2]){d=d+4|0;if(T>>>0>o>>>0){continue}break e}break}while(1){a=a+ -4|0;o=q[a>>2];if(T>>>0<=o>>>0){break e}if(bb>>>0<t[$a+(o<<3)>>2]){continue}break}if(d>>>0>=a>>>0){w=d;continue d}q[d>>2]=o;q[a>>2]=cb;d=d+4|0;o=q[w>>2];if(T>>>0>o>>>0){continue}break}}break}break}break}Hi();F()}}function lf(a,b){var c=0,F=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0;F=T-16|0;T=F;Db(q[a+12>>2],b);a:{if(!q[a+12>>2]){break a}lb=F+14|0;mb=F+15|0;nb=F+16|0;jb=b+4|0;while(1){b:{c:{gb=q[a>>2];hb=q[gb+(ib<<3)>>2];if(hb>>>0>=64){c=1;if(hb>>>0<16384){break c}c=2;if(hb>>>0<=4194303){break c}break a}c=0;if(hb){break c}while(1){d:{if(q[(gb+(c+ib<<3)|0)+8>>2]){hb=c;break d}hb=63;c=c+1|0;if((c|0)!=63){continue}}break}o[F+15|0]=hb<<2|3;c=q[b+20>>2];if((c|0)<0?1:(c|0)<=0?t[b+16>>2]>0?0:1:0){$a(b,q[jb>>2],F+15|0,nb)}ib=hb+ib|0;break b}o[F+14|0]=hb<<2|c;gb=q[b+20>>2];if((gb|0)<0?1:(gb|0)<=0?t[b+16>>2]>0?0:1:0){$a(b,q[jb>>2],F+14|0,mb)}gb=0;if(!c){break b}while(1){gb=gb+1|0;o[F+13|0]=hb>>>(gb<<3)+ -2;kb=q[b+20>>2];if((kb|0)<0?1:(kb|0)<=0?t[b+16>>2]>0?0:1:0){$a(b,q[jb>>2],F+13|0,lb)}if((c|0)!=(gb|0)){continue}break}}ib=ib+1|0;if(ib>>>0<t[a+12>>2]){continue}break}}T=F+16|0}function mf(a,b,ob){var pb=0,qb=0,rb=0;pb=T-16|0;T=pb;qb=a;o[pb+15|0]=a&127;a:{if(!b&a>>>0>=128|b>>>0>0){o[pb+15|0]=qb|128;qb=q[ob+20>>2];rb=0;if((qb|0)>0?1:(qb|0)>=0?t[ob+16>>2]<=0?0:1:0){break a}$a(ob,q[ob+4>>2],pb+15|0,pb+16|0);rb=mf((b&127)<<25|a>>>7,b>>>7,ob);break a}a=q[ob+20>>2];rb=0;if((a|0)>0?1:(a|0)>=0?t[ob+16>>2]<1?0:1:0){break a}$a(ob,q[ob+4>>2],pb+15|0,pb+16|0);rb=1}qb=rb;T=pb+16|0;return qb}function nf(a,b,ob,sb,tb){var ub=0,vb=0,wb=0,xb=0;wb=qf(a,b,ob,tb);ub=q[tb>>2];tb=q[ub>>2];a:{ub=q[ub+4>>2]-tb>>3;vb=q[sb>>2];if(ub>>>0<=vb>>>0){break a}xb=q[ob>>2];if(ub>>>0<=xb>>>0){break a}if(t[tb+(vb<<3)>>2]<t[tb+(xb<<3)>>2]){q[ob>>2]=vb;q[sb>>2]=xb;sb=q[ob>>2];if(ub>>>0<=sb>>>0){break a}vb=q[b>>2];if(ub>>>0<=vb>>>0){break a}if(t[tb+(sb<<3)>>2]>=t[tb+(vb<<3)>>2]){return wb+1|0}q[b>>2]=sb;q[ob>>2]=vb;ob=q[b>>2];if(ub>>>0<=ob>>>0){break a}sb=q[a>>2];if(ub>>>0<=sb>>>0){break a}if(t[tb+(ob<<3)>>2]>=t[tb+(sb<<3)>>2]){return wb+2|0}q[a>>2]=ob;q[b>>2]=sb;wb=wb+3|0}return wb}Hi();F()}function of(a,b,ob,sb,tb,yb){var zb=0,Ab=0,Bb=0,Cb=0;Bb=nf(a,b,ob,sb,yb);zb=q[yb>>2];yb=q[zb>>2];a:{zb=q[zb+4>>2]-yb>>3;Ab=q[tb>>2];if(zb>>>0<=Ab>>>0){break a}Cb=q[sb>>2];if(zb>>>0<=Cb>>>0){break a}if(t[yb+(Ab<<3)>>2]<t[yb+(Cb<<3)>>2]){q[sb>>2]=Ab;q[tb>>2]=Cb;tb=q[sb>>2];if(zb>>>0<=tb>>>0){break a}Ab=q[ob>>2];if(zb>>>0<=Ab>>>0){break a}if(t[yb+(tb<<3)>>2]>=t[yb+(Ab<<3)>>2]){return Bb+1|0}q[ob>>2]=tb;q[sb>>2]=Ab;sb=q[ob>>2];if(zb>>>0<=sb>>>0){break a}tb=q[b>>2];if(zb>>>0<=tb>>>0){break a}if(t[yb+(sb<<3)>>2]>=t[yb+(tb<<3)>>2]){return Bb+2|0}q[b>>2]=sb;q[ob>>2]=tb;ob=q[b>>2];if(zb>>>0<=ob>>>0){break a}sb=q[a>>2];if(zb>>>0<=sb>>>0){break a}if(t[yb+(ob<<3)>>2]>=t[yb+(sb<<3)>>2]){return Bb+3|0}q[a>>2]=ob;q[b>>2]=sb;Bb=Bb+4|0}return Bb}Hi();F()}function pf(a,b,ob){var sb=0,tb=0,yb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0;tb=a+8|0;qf(a,a+4|0,tb,ob);a:{sb=a+12|0;if((sb|0)!=(b|0)){ob=q[ob>>2];yb=q[ob>>2];Db=q[ob+4>>2]-yb>>3;while(1){Eb=q[sb>>2];if(Db>>>0<=Eb>>>0){break a}Fb=sb;sb=q[tb>>2];if(Db>>>0<=sb>>>0){break a}Gb=Fb;Hb=(Eb<<3)+yb|0;if(t[Hb>>2]<t[(sb<<3)+yb>>2]){while(1){q[Gb>>2]=sb;ob=tb;b:{if((ob|0)==(a|0)){ob=a;break b}tb=ob+ -4|0;sb=q[tb>>2];if(Db>>>0<=sb>>>0){break a}Gb=ob;if(t[Hb>>2]<t[(sb<<3)+yb>>2]){continue}}break}q[ob>>2]=Eb}tb=Fb;sb=tb+4|0;if((sb|0)!=(b|0)){continue}break}}return}Hi();F()}function qf(a,b,ob,Ib){var Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0;Jb=q[Ib>>2];Ib=q[Jb>>2];a:{Jb=q[Jb+4>>2]-Ib>>3;Mb=q[b>>2];if(Jb>>>0<=Mb>>>0){break a}Lb=q[a>>2];if(Jb>>>0<=Lb>>>0){break a}Nb=q[ob>>2];if(Jb>>>0<=Nb>>>0){break a}Pb=q[Ib+(Nb<<3)>>2];Ob=q[Ib+(Mb<<3)>>2];Qb=Ib+(Lb<<3)|0;b:{c:{if(Ob>>>0>=t[Qb>>2]){Kb=0;if(Pb>>>0>=Ob>>>0){break b}q[b>>2]=Nb;q[ob>>2]=Mb;ob=q[b>>2];if(Jb>>>0<=ob>>>0){break a}Kb=Jb;Jb=q[a>>2];if(Kb>>>0<=Jb>>>0){break a}Kb=1;if(t[Ib+(ob<<3)>>2]>=t[Ib+(Jb<<3)>>2]){break b}q[a>>2]=ob;q[b>>2]=Jb;break c}if(Pb>>>0<Ob>>>0){q[a>>2]=Nb;q[ob>>2]=Lb;return 1}q[a>>2]=Mb;q[b>>2]=Lb;a=q[ob>>2];if(Jb>>>0<=a>>>0){break a}Kb=1;if(t[Ib+(a<<3)>>2]>=t[Qb>>2]){break b}q[b>>2]=a;q[ob>>2]=Lb}Kb=2}return Kb}Hi();F()}function rf(a,b,ob){var Ib=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0;Tb=1;a:{b:{Ib=b-a>>2;c:{if(Ib>>>0<=5){d:{switch(Ib-2|0){case 0:Ib=q[ob>>2];ob=q[Ib>>2];Ib=q[Ib+4>>2]-ob>>3;Sb=b+ -4|0;b=q[Sb>>2];if(Ib>>>0<=b>>>0){break b}Rb=Ib;Ib=q[a>>2];if(Rb>>>0<=Ib>>>0){break b}if(t[ob+(b<<3)>>2]>=t[ob+(Ib<<3)>>2]){break c}q[a>>2]=b;q[Sb>>2]=Ib;return 1;case 1:qf(a,a+4|0,b+ -4|0,ob);return 1;case 2:nf(a,a+4|0,a+8|0,b+ -4|0,ob);return 1;case 3:break d;default:break c}}of(a,a+4|0,a+8|0,a+12|0,b+ -4|0,ob);return 1}Sb=a+8|0;qf(a,a+4|0,Sb,ob);Rb=a+12|0;if((Rb|0)==(b|0)){break c}ob=q[ob>>2];Ub=q[ob>>2];Vb=q[ob+4>>2]-Ub>>3;e:{while(1){Ib=Rb;Wb=q[Ib>>2];if(Vb>>>0<=Wb>>>0){break a}Rb=q[Sb>>2];if(Vb>>>0<=Rb>>>0){break a}Tb=Ib;Xb=Ub+(Wb<<3)|0;if(t[Xb>>2]<t[Ub+(Rb<<3)>>2]){while(1){q[Tb>>2]=Rb;ob=Sb;f:{if((ob|0)==(a|0)){ob=a;break f}Sb=ob+ -4|0;Rb=q[Sb>>2];if(Vb>>>0<=Rb>>>0){break a}Tb=ob;if(t[Xb>>2]<t[Ub+(Rb<<3)>>2]){continue}}break}q[ob>>2]=Wb;Yb=Yb+1|0;if((Yb|0)==8){break e}}Sb=Ib;Rb=Ib+4|0;if((Rb|0)!=(b|0)){continue}break}return 1}Tb=(Ib+4|0)==(b|0)}return Tb}Hi();F()}Hi();F()}function sf(a,b,ob,Zb){var _b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0;ec=T-32|0;T=ec;if((ob|0)>0){while(1){jc=bc;bc=(_b<<3)+b|0;dc=q[bc+4>>2];ac=q[bc>>2];bc=!(dc|ac)?jc:_b;$b=$b+dc|0;dc=ac+fc|0;if(dc>>>0<ac>>>0){$b=$b+1|0}fc=dc;_b=_b+1|0;if((_b|0)!=(ob|0)){continue}break}}dc=bc+1|0;q[a+12>>2]=dc;ac=q[a>>2];ob=q[a+4>>2]-ac>>3;a:{if(dc>>>0>ob>>>0){Le(a,dc-ob|0);break a}if(dc>>>0>=ob>>>0){break a}q[a+4>>2]=ac+(dc<<3)}b:{c:{d:{e:{if((bc|0)>=0){ic=+(fc>>>0)+4294967296*+($b>>>0);$b=q[a>>2];_b=0;while(1){ac=_b<<3;fc=ac+b|0;ob=q[fc+4>>2];fc=q[fc>>2];kc=(fc|0)!=0|(ob|0)!=0;ac=$b+ac|0;cc=(+(fc>>>0)+4294967296*+(ob>>>0))/ic*4096+.5;f:{if(cc<4294967296&cc>=0){ob=~~cc>>>0;break f}ob=0}ob=kc?ob?ob:1:ob;q[ac>>2]=ob;gc=ob+gc|0;ob=(_b|0)==(bc|0);_b=_b+1|0;if(!ob){continue}break}if((gc|0)==4096){break e}}q[ec+16>>2]=0;q[ec+8>>2]=0;q[ec+12>>2]=0;ac=0;if(dc){if(dc>>>0>=1073741824){break b}ob=dc<<2;ac=ui(ob);q[ec+8>>2]=ac;hc=ob+ac|0;q[ec+16>>2]=hc;pj(ac,0,ob);q[ec+12>>2]=hc}if((bc|0)>-1){_b=0;while(1){q[(_b<<2)+ac>>2]=_b;ob=(_b|0)==(bc|0);_b=_b+1|0;if(!ob){continue}break}}q[ec+24>>2]=a;Pf(ac,hc,ec+24|0);g:{if((gc|0)<4096){ob=q[a>>2]+(q[q[ec+12>>2]+ -4>>2]<<3)|0;q[ob>>2]=(q[ob>>2]-gc|0)+4096;_b=0;break g}ob=gc+ -4096|0;dc=q[ec+8>>2];fc=(bc|0)<1;while(1){h:{if(fc){break h}cc=4096/+(gc|0);hc=q[a>>2];ac=bc;while(1){_b=hc+(q[(ac<<2)+dc>>2]<<3)|0;$b=q[_b>>2];if($b>>>0<=1){if((ac|0)!=(bc|0)){break h}_b=1;break g}kc=$b+ -1|0;jc=_b;mc=$b;nc=ob;_b=$b;ic=C(cc*+($b>>>0));i:{if(y(ic)<2147483648){lc=~~ic;break i}lc=-2147483648}_b=_b-lc|0;_b=_b?_b:1;$b=(_b|0)<($b|0)?_b:kc;$b=($b|0)>(ob|0)?nc:$b;q[jc>>2]=mc-$b;ob=ob-$b|0;gc=gc-$b|0;if((gc|0)==4096){gc=4096;break h}$b=(ac|0)>1;ac=ac+ -1|0;if($b){continue}break}}_b=0;if((ob|0)>0){continue}break}}ob=q[ec+8>>2];if(ob){q[ec+12>>2]=ob;ij(ob)}if(_b){break c}if((bc|0)>=0){break d}break c}if((bc|0)<0){break c}}$b=q[a>>2];_b=0;ob=0;while(1){ac=$b+(_b<<3)|0;q[ac+4>>2]=ob;ob=q[ac>>2]+ob|0;ac=(_b|0)==(bc|0);_b=_b+1|0;if(!ac){continue}break}if((ob|0)!=4096){break c}_b=0;cc=0;if((bc|0)>=0){ob=q[a>>2];while(1){$b=_b<<3;ac=q[$b+ob>>2];if(ac){$b=b+$b|0;cc=cc+lj(+(ac>>>0)*.000244140625)*(+t[$b>>2]+4294967296*+t[$b+4>>2])}$b=(_b|0)==(bc|0);_b=_b+1|0;if(!$b){continue}break}}b=a;ob=a;cc=D(-cc);j:{if(cc<0x10000000000000000&cc>=0){$b=y(cc)>=1?cc>0?~~A(C(cc/4294967296),4294967295)>>>0:~~D((cc- +(~~cc>>>0>>>0))/4294967296)>>>0:0;bc=~~cc>>>0;break j}$b=0;bc=0}q[ob+16>>2]=bc;q[b+20>>2]=$b;lf(a,Zb)}T=ec+32|0;return}Gi();F()}function tf(a,b,ob,Zb){var oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0;uc=T-32|0;T=uc;if((ob|0)>0){while(1){zc=rc;rc=(oc<<3)+b|0;tc=q[rc+4>>2];qc=q[rc>>2];rc=!(tc|qc)?zc:oc;pc=pc+tc|0;tc=qc+vc|0;if(tc>>>0<qc>>>0){pc=pc+1|0}vc=tc;oc=oc+1|0;if((oc|0)!=(ob|0)){continue}break}}tc=rc+1|0;q[a+12>>2]=tc;qc=q[a>>2];ob=q[a+4>>2]-qc>>3;a:{if(tc>>>0>ob>>>0){Le(a,tc-ob|0);break a}if(tc>>>0>=ob>>>0){break a}q[a+4>>2]=qc+(tc<<3)}b:{c:{d:{e:{if((rc|0)>=0){yc=+(vc>>>0)+4294967296*+(pc>>>0);pc=q[a>>2];oc=0;while(1){qc=oc<<3;vc=qc+b|0;ob=q[vc+4>>2];vc=q[vc>>2];Ac=(vc|0)!=0|(ob|0)!=0;qc=pc+qc|0;sc=(+(vc>>>0)+4294967296*+(ob>>>0))/yc*4096+.5;f:{if(sc<4294967296&sc>=0){ob=~~sc>>>0;break f}ob=0}ob=Ac?ob?ob:1:ob;q[qc>>2]=ob;wc=ob+wc|0;ob=(oc|0)==(rc|0);oc=oc+1|0;if(!ob){continue}break}if((wc|0)==4096){break e}}q[uc+16>>2]=0;q[uc+8>>2]=0;q[uc+12>>2]=0;qc=0;if(tc){if(tc>>>0>=1073741824){break b}ob=tc<<2;qc=ui(ob);q[uc+8>>2]=qc;xc=ob+qc|0;q[uc+16>>2]=xc;pj(qc,0,ob);q[uc+12>>2]=xc}if((rc|0)>-1){oc=0;while(1){q[(oc<<2)+qc>>2]=oc;ob=(oc|0)==(rc|0);oc=oc+1|0;if(!ob){continue}break}}q[uc+24>>2]=a;Qf(qc,xc,uc+24|0);g:{if((wc|0)<4096){ob=q[a>>2]+(q[q[uc+12>>2]+ -4>>2]<<3)|0;q[ob>>2]=(q[ob>>2]-wc|0)+4096;oc=0;break g}ob=wc+ -4096|0;tc=q[uc+8>>2];vc=(rc|0)<1;while(1){h:{if(vc){break h}sc=4096/+(wc|0);xc=q[a>>2];qc=rc;while(1){oc=xc+(q[(qc<<2)+tc>>2]<<3)|0;pc=q[oc>>2];if(pc>>>0<=1){if((qc|0)!=(rc|0)){break h}oc=1;break g}Ac=pc+ -1|0;zc=oc;Cc=pc;Dc=ob;oc=pc;yc=C(sc*+(pc>>>0));i:{if(y(yc)<2147483648){Bc=~~yc;break i}Bc=-2147483648}oc=oc-Bc|0;oc=oc?oc:1;pc=(oc|0)<(pc|0)?oc:Ac;pc=(pc|0)>(ob|0)?Dc:pc;q[zc>>2]=Cc-pc;ob=ob-pc|0;wc=wc-pc|0;if((wc|0)==4096){wc=4096;break h}pc=(qc|0)>1;qc=qc+ -1|0;if(pc){continue}break}}oc=0;if((ob|0)>0){continue}break}}ob=q[uc+8>>2];if(ob){q[uc+12>>2]=ob;ij(ob)}if(oc){break c}if((rc|0)>=0){break d}break c}if((rc|0)<0){break c}}pc=q[a>>2];oc=0;ob=0;while(1){qc=pc+(oc<<3)|0;q[qc+4>>2]=ob;ob=q[qc>>2]+ob|0;qc=(oc|0)==(rc|0);oc=oc+1|0;if(!qc){continue}break}if((ob|0)!=4096){break c}oc=0;sc=0;if((rc|0)>=0){ob=q[a>>2];while(1){pc=oc<<3;qc=q[pc+ob>>2];if(qc){pc=b+pc|0;sc=sc+lj(+(qc>>>0)*.000244140625)*(+t[pc>>2]+4294967296*+t[pc+4>>2])}pc=(oc|0)==(rc|0);oc=oc+1|0;if(!pc){continue}break}}b=a;ob=a;sc=D(-sc);j:{if(sc<0x10000000000000000&sc>=0){pc=y(sc)>=1?sc>0?~~A(C(sc/4294967296),4294967295)>>>0:~~D((sc- +(~~sc>>>0>>>0))/4294967296)>>>0:0;rc=~~sc>>>0;break j}pc=0;rc=0}q[ob+16>>2]=rc;q[b+20>>2]=pc;lf(a,Zb)}T=uc+32|0;return}Gi();F()}function uf(a,b,ob,Zb){var Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0;Kc=T-32|0;T=Kc;if((ob|0)>0){while(1){Pc=Hc;Hc=(Ec<<3)+b|0;Jc=q[Hc+4>>2];Gc=q[Hc>>2];Hc=!(Jc|Gc)?Pc:Ec;Fc=Fc+Jc|0;Jc=Gc+Lc|0;if(Jc>>>0<Gc>>>0){Fc=Fc+1|0}Lc=Jc;Ec=Ec+1|0;if((Ec|0)!=(ob|0)){continue}break}}Jc=Hc+1|0;q[a+12>>2]=Jc;Gc=q[a>>2];ob=q[a+4>>2]-Gc>>3;a:{if(Jc>>>0>ob>>>0){Le(a,Jc-ob|0);break a}if(Jc>>>0>=ob>>>0){break a}q[a+4>>2]=Gc+(Jc<<3)}b:{c:{d:{e:{if((Hc|0)>=0){Oc=+(Lc>>>0)+4294967296*+(Fc>>>0);Fc=q[a>>2];Ec=0;while(1){Gc=Ec<<3;Lc=Gc+b|0;ob=q[Lc+4>>2];Lc=q[Lc>>2];Qc=(Lc|0)!=0|(ob|0)!=0;Gc=Fc+Gc|0;Ic=(+(Lc>>>0)+4294967296*+(ob>>>0))/Oc*4096+.5;f:{if(Ic<4294967296&Ic>=0){ob=~~Ic>>>0;break f}ob=0}ob=Qc?ob?ob:1:ob;q[Gc>>2]=ob;Mc=ob+Mc|0;ob=(Ec|0)==(Hc|0);Ec=Ec+1|0;if(!ob){continue}break}if((Mc|0)==4096){break e}}q[Kc+16>>2]=0;q[Kc+8>>2]=0;q[Kc+12>>2]=0;Gc=0;if(Jc){if(Jc>>>0>=1073741824){break b}ob=Jc<<2;Gc=ui(ob);q[Kc+8>>2]=Gc;Nc=ob+Gc|0;q[Kc+16>>2]=Nc;pj(Gc,0,ob);q[Kc+12>>2]=Nc}if((Hc|0)>-1){Ec=0;while(1){q[(Ec<<2)+Gc>>2]=Ec;ob=(Ec|0)==(Hc|0);Ec=Ec+1|0;if(!ob){continue}break}}q[Kc+24>>2]=a;Rf(Gc,Nc,Kc+24|0);g:{if((Mc|0)<4096){ob=q[a>>2]+(q[q[Kc+12>>2]+ -4>>2]<<3)|0;q[ob>>2]=(q[ob>>2]-Mc|0)+4096;Ec=0;break g}ob=Mc+ -4096|0;Jc=q[Kc+8>>2];Lc=(Hc|0)<1;while(1){h:{if(Lc){break h}Ic=4096/+(Mc|0);Nc=q[a>>2];Gc=Hc;while(1){Ec=Nc+(q[(Gc<<2)+Jc>>2]<<3)|0;Fc=q[Ec>>2];if(Fc>>>0<=1){if((Gc|0)!=(Hc|0)){break h}Ec=1;break g}Qc=Fc+ -1|0;Pc=Ec;Sc=Fc;Tc=ob;Ec=Fc;Oc=C(Ic*+(Fc>>>0));i:{if(y(Oc)<2147483648){Rc=~~Oc;break i}Rc=-2147483648}Ec=Ec-Rc|0;Ec=Ec?Ec:1;Fc=(Ec|0)<(Fc|0)?Ec:Qc;Fc=(Fc|0)>(ob|0)?Tc:Fc;q[Pc>>2]=Sc-Fc;ob=ob-Fc|0;Mc=Mc-Fc|0;if((Mc|0)==4096){Mc=4096;break h}Fc=(Gc|0)>1;Gc=Gc+ -1|0;if(Fc){continue}break}}Ec=0;if((ob|0)>0){continue}break}}ob=q[Kc+8>>2];if(ob){q[Kc+12>>2]=ob;ij(ob)}if(Ec){break c}if((Hc|0)>=0){break d}break c}if((Hc|0)<0){break c}}Fc=q[a>>2];Ec=0;ob=0;while(1){Gc=Fc+(Ec<<3)|0;q[Gc+4>>2]=ob;ob=q[Gc>>2]+ob|0;Gc=(Ec|0)==(Hc|0);Ec=Ec+1|0;if(!Gc){continue}break}if((ob|0)!=4096){break c}Ec=0;Ic=0;if((Hc|0)>=0){ob=q[a>>2];while(1){Fc=Ec<<3;Gc=q[Fc+ob>>2];if(Gc){Fc=b+Fc|0;Ic=Ic+lj(+(Gc>>>0)*.000244140625)*(+t[Fc>>2]+4294967296*+t[Fc+4>>2])}Fc=(Ec|0)==(Hc|0);Ec=Ec+1|0;if(!Fc){continue}break}}b=a;ob=a;Ic=D(-Ic);j:{if(Ic<0x10000000000000000&Ic>=0){Fc=y(Ic)>=1?Ic>0?~~A(C(Ic/4294967296),4294967295)>>>0:~~D((Ic- +(~~Ic>>>0>>>0))/4294967296)>>>0:0;Hc=~~Ic>>>0;break j}Fc=0;Hc=0}q[ob+16>>2]=Hc;q[b+20>>2]=Fc;lf(a,Zb)}T=Kc+32|0;return}Gi();F()}function vf(a,b,ob,Zb){var Uc=0,Vc=0,Wc=0,Xc=0,Yc=0,Zc=0,_c=0,$c=0,ad=0,bd=0,cd=0,dd=0,ed=0,fd=0,gd=0,hd=0;_c=T-32|0;T=_c;if((ob|0)>0){while(1){dd=Xc;Xc=(Uc<<3)+b|0;Zc=q[Xc+4>>2];Wc=q[Xc>>2];Xc=!(Zc|Wc)?dd:Uc;Vc=Vc+Zc|0;Zc=Wc+$c|0;if(Zc>>>0<Wc>>>0){Vc=Vc+1|0}$c=Zc;Uc=Uc+1|0;if((Uc|0)!=(ob|0)){continue}break}}Zc=Xc+1|0;q[a+12>>2]=Zc;Wc=q[a>>2];ob=q[a+4>>2]-Wc>>3;a:{if(Zc>>>0>ob>>>0){Le(a,Zc-ob|0);break a}if(Zc>>>0>=ob>>>0){break a}q[a+4>>2]=Wc+(Zc<<3)}b:{c:{d:{e:{if((Xc|0)>=0){cd=+($c>>>0)+4294967296*+(Vc>>>0);Vc=q[a>>2];Uc=0;while(1){Wc=Uc<<3;$c=Wc+b|0;ob=q[$c+4>>2];$c=q[$c>>2];ed=($c|0)!=0|(ob|0)!=0;Wc=Vc+Wc|0;Yc=(+($c>>>0)+4294967296*+(ob>>>0))/cd*4096+.5;f:{if(Yc<4294967296&Yc>=0){ob=~~Yc>>>0;break f}ob=0}ob=ed?ob?ob:1:ob;q[Wc>>2]=ob;ad=ob+ad|0;ob=(Uc|0)==(Xc|0);Uc=Uc+1|0;if(!ob){continue}break}if((ad|0)==4096){break e}}q[_c+16>>2]=0;q[_c+8>>2]=0;q[_c+12>>2]=0;Wc=0;if(Zc){if(Zc>>>0>=1073741824){break b}ob=Zc<<2;Wc=ui(ob);q[_c+8>>2]=Wc;bd=ob+Wc|0;q[_c+16>>2]=bd;pj(Wc,0,ob);q[_c+12>>2]=bd}if((Xc|0)>-1){Uc=0;while(1){q[(Uc<<2)+Wc>>2]=Uc;ob=(Uc|0)==(Xc|0);Uc=Uc+1|0;if(!ob){continue}break}}q[_c+24>>2]=a;Sf(Wc,bd,_c+24|0);g:{if((ad|0)<4096){ob=q[a>>2]+(q[q[_c+12>>2]+ -4>>2]<<3)|0;q[ob>>2]=(q[ob>>2]-ad|0)+4096;Uc=0;break g}ob=ad+ -4096|0;Zc=q[_c+8>>2];$c=(Xc|0)<1;while(1){h:{if($c){break h}Yc=4096/+(ad|0);bd=q[a>>2];Wc=Xc;while(1){Uc=bd+(q[(Wc<<2)+Zc>>2]<<3)|0;Vc=q[Uc>>2];if(Vc>>>0<=1){if((Wc|0)!=(Xc|0)){break h}Uc=1;break g}ed=Vc+ -1|0;dd=Uc;gd=Vc;hd=ob;Uc=Vc;cd=C(Yc*+(Vc>>>0));i:{if(y(cd)<2147483648){fd=~~cd;break i}fd=-2147483648}Uc=Uc-fd|0;Uc=Uc?Uc:1;Vc=(Uc|0)<(Vc|0)?Uc:ed;Vc=(Vc|0)>(ob|0)?hd:Vc;q[dd>>2]=gd-Vc;ob=ob-Vc|0;ad=ad-Vc|0;if((ad|0)==4096){ad=4096;break h}Vc=(Wc|0)>1;Wc=Wc+ -1|0;if(Vc){continue}break}}Uc=0;if((ob|0)>0){continue}break}}ob=q[_c+8>>2];if(ob){q[_c+12>>2]=ob;ij(ob)}if(Uc){break c}if((Xc|0)>=0){break d}break c}if((Xc|0)<0){break c}}Vc=q[a>>2];Uc=0;ob=0;while(1){Wc=Vc+(Uc<<3)|0;q[Wc+4>>2]=ob;ob=q[Wc>>2]+ob|0;Wc=(Uc|0)==(Xc|0);Uc=Uc+1|0;if(!Wc){continue}break}if((ob|0)!=4096){break c}Uc=0;Yc=0;if((Xc|0)>=0){ob=q[a>>2];while(1){Vc=Uc<<3;Wc=q[Vc+ob>>2];if(Wc){Vc=b+Vc|0;Yc=Yc+lj(+(Wc>>>0)*.000244140625)*(+t[Vc>>2]+4294967296*+t[Vc+4>>2])}Vc=(Uc|0)==(Xc|0);Uc=Uc+1|0;if(!Vc){continue}break}}b=a;ob=a;Yc=D(-Yc);j:{if(Yc<0x10000000000000000&Yc>=0){Vc=y(Yc)>=1?Yc>0?~~A(C(Yc/4294967296),4294967295)>>>0:~~D((Yc- +(~~Yc>>>0>>>0))/4294967296)>>>0:0;Xc=~~Yc>>>0;break j}Vc=0;Xc=0}q[ob+16>>2]=Xc;q[b+20>>2]=Vc;lf(a,Zb)}T=_c+32|0;return}Gi();F()}function wf(a,b,ob,Zb){var id=0,jd=0,kd=0,ld=0,md=0,nd=0,od=0,pd=0,qd=0,rd=0,sd=0,td=0,ud=0,vd=0,wd=0,xd=0;od=T-32|0;T=od;if((ob|0)>0){while(1){td=ld;ld=(id<<3)+b|0;nd=q[ld+4>>2];kd=q[ld>>2];ld=!(nd|kd)?td:id;jd=jd+nd|0;nd=kd+pd|0;if(nd>>>0<kd>>>0){jd=jd+1|0}pd=nd;id=id+1|0;if((id|0)!=(ob|0)){continue}break}}nd=ld+1|0;q[a+12>>2]=nd;kd=q[a>>2];ob=q[a+4>>2]-kd>>3;a:{if(nd>>>0>ob>>>0){Le(a,nd-ob|0);break a}if(nd>>>0>=ob>>>0){break a}q[a+4>>2]=kd+(nd<<3)}b:{c:{d:{e:{if((ld|0)>=0){sd=+(pd>>>0)+4294967296*+(jd>>>0);jd=q[a>>2];id=0;while(1){kd=id<<3;pd=kd+b|0;ob=q[pd+4>>2];pd=q[pd>>2];ud=(pd|0)!=0|(ob|0)!=0;kd=jd+kd|0;md=(+(pd>>>0)+4294967296*+(ob>>>0))/sd*4096+.5;f:{if(md<4294967296&md>=0){ob=~~md>>>0;break f}ob=0}ob=ud?ob?ob:1:ob;q[kd>>2]=ob;qd=ob+qd|0;ob=(id|0)==(ld|0);id=id+1|0;if(!ob){continue}break}if((qd|0)==4096){break e}}q[od+16>>2]=0;q[od+8>>2]=0;q[od+12>>2]=0;kd=0;if(nd){if(nd>>>0>=1073741824){break b}ob=nd<<2;kd=ui(ob);q[od+8>>2]=kd;rd=ob+kd|0;q[od+16>>2]=rd;pj(kd,0,ob);q[od+12>>2]=rd}if((ld|0)>-1){id=0;while(1){q[(id<<2)+kd>>2]=id;ob=(id|0)==(ld|0);id=id+1|0;if(!ob){continue}break}}q[od+24>>2]=a;Tf(kd,rd,od+24|0);g:{if((qd|0)<4096){ob=q[a>>2]+(q[q[od+12>>2]+ -4>>2]<<3)|0;q[ob>>2]=(q[ob>>2]-qd|0)+4096;id=0;break g}ob=qd+ -4096|0;nd=q[od+8>>2];pd=(ld|0)<1;while(1){h:{if(pd){break h}md=4096/+(qd|0);rd=q[a>>2];kd=ld;while(1){id=rd+(q[(kd<<2)+nd>>2]<<3)|0;jd=q[id>>2];if(jd>>>0<=1){if((kd|0)!=(ld|0)){break h}id=1;break g}ud=jd+ -1|0;td=id;wd=jd;xd=ob;id=jd;sd=C(md*+(jd>>>0));i:{if(y(sd)<2147483648){vd=~~sd;break i}vd=-2147483648}id=id-vd|0;id=id?id:1;jd=(id|0)<(jd|0)?id:ud;jd=(jd|0)>(ob|0)?xd:jd;q[td>>2]=wd-jd;ob=ob-jd|0;qd=qd-jd|0;if((qd|0)==4096){qd=4096;break h}jd=(kd|0)>1;kd=kd+ -1|0;if(jd){continue}break}}id=0;if((ob|0)>0){continue}break}}ob=q[od+8>>2];if(ob){q[od+12>>2]=ob;ij(ob)}if(id){break c}if((ld|0)>=0){break d}break c}if((ld|0)<0){break c}}jd=q[a>>2];id=0;ob=0;while(1){kd=jd+(id<<3)|0;q[kd+4>>2]=ob;ob=q[kd>>2]+ob|0;kd=(id|0)==(ld|0);id=id+1|0;if(!kd){continue}break}if((ob|0)!=4096){break c}id=0;md=0;if((ld|0)>=0){ob=q[a>>2];while(1){jd=id<<3;kd=q[jd+ob>>2];if(kd){jd=b+jd|0;md=md+lj(+(kd>>>0)*.000244140625)*(+t[jd>>2]+4294967296*+t[jd+4>>2])}jd=(id|0)==(ld|0);id=id+1|0;if(!jd){continue}break}}b=a;ob=a;md=D(-md);j:{if(md<0x10000000000000000&md>=0){jd=y(md)>=1?md>0?~~A(C(md/4294967296),4294967295)>>>0:~~D((md- +(~~md>>>0>>>0))/4294967296)>>>0:0;ld=~~md>>>0;break j}jd=0;ld=0}q[ob+16>>2]=ld;q[b+20>>2]=jd;lf(a,Zb)}T=od+32|0;return}Gi();F()}function xf(a,b,ob,Zb){var yd=0,zd=0,Ad=0,Bd=0,Cd=0,Dd=0,Ed=0,Fd=0,Gd=0,Hd=0,Id=0,Jd=0,Kd=0,Ld=0,Md=0,Nd=0;Ed=T-32|0;T=Ed;if((ob|0)>0){while(1){Jd=Bd;Bd=(yd<<3)+b|0;Dd=q[Bd+4>>2];Ad=q[Bd>>2];Bd=!(Dd|Ad)?Jd:yd;zd=zd+Dd|0;Dd=Ad+Fd|0;if(Dd>>>0<Ad>>>0){zd=zd+1|0}Fd=Dd;yd=yd+1|0;if((yd|0)!=(ob|0)){continue}break}}Dd=Bd+1|0;q[a+12>>2]=Dd;Ad=q[a>>2];ob=q[a+4>>2]-Ad>>3;a:{if(Dd>>>0>ob>>>0){Le(a,Dd-ob|0);break a}if(Dd>>>0>=ob>>>0){break a}q[a+4>>2]=Ad+(Dd<<3)}b:{c:{d:{e:{if((Bd|0)>=0){Id=+(Fd>>>0)+4294967296*+(zd>>>0);zd=q[a>>2];yd=0;while(1){Ad=yd<<3;Fd=Ad+b|0;ob=q[Fd+4>>2];Fd=q[Fd>>2];Kd=(Fd|0)!=0|(ob|0)!=0;Ad=zd+Ad|0;Cd=(+(Fd>>>0)+4294967296*+(ob>>>0))/Id*4096+.5;f:{if(Cd<4294967296&Cd>=0){ob=~~Cd>>>0;break f}ob=0}ob=Kd?ob?ob:1:ob;q[Ad>>2]=ob;Gd=ob+Gd|0;ob=(yd|0)==(Bd|0);yd=yd+1|0;if(!ob){continue}break}if((Gd|0)==4096){break e}}q[Ed+16>>2]=0;q[Ed+8>>2]=0;q[Ed+12>>2]=0;Ad=0;if(Dd){if(Dd>>>0>=1073741824){break b}ob=Dd<<2;Ad=ui(ob);q[Ed+8>>2]=Ad;Hd=ob+Ad|0;q[Ed+16>>2]=Hd;pj(Ad,0,ob);q[Ed+12>>2]=Hd}if((Bd|0)>-1){yd=0;while(1){q[(yd<<2)+Ad>>2]=yd;ob=(yd|0)==(Bd|0);yd=yd+1|0;if(!ob){continue}break}}q[Ed+24>>2]=a;Uf(Ad,Hd,Ed+24|0);g:{if((Gd|0)<4096){ob=q[a>>2]+(q[q[Ed+12>>2]+ -4>>2]<<3)|0;q[ob>>2]=(q[ob>>2]-Gd|0)+4096;yd=0;break g}ob=Gd+ -4096|0;Dd=q[Ed+8>>2];Fd=(Bd|0)<1;while(1){h:{if(Fd){break h}Cd=4096/+(Gd|0);Hd=q[a>>2];Ad=Bd;while(1){yd=Hd+(q[(Ad<<2)+Dd>>2]<<3)|0;zd=q[yd>>2];if(zd>>>0<=1){if((Ad|0)!=(Bd|0)){break h}yd=1;break g}Kd=zd+ -1|0;Jd=yd;Md=zd;Nd=ob;yd=zd;Id=C(Cd*+(zd>>>0));i:{if(y(Id)<2147483648){Ld=~~Id;break i}Ld=-2147483648}yd=yd-Ld|0;yd=yd?yd:1;zd=(yd|0)<(zd|0)?yd:Kd;zd=(zd|0)>(ob|0)?Nd:zd;q[Jd>>2]=Md-zd;ob=ob-zd|0;Gd=Gd-zd|0;if((Gd|0)==4096){Gd=4096;break h}zd=(Ad|0)>1;Ad=Ad+ -1|0;if(zd){continue}break}}yd=0;if((ob|0)>0){continue}break}}ob=q[Ed+8>>2];if(ob){q[Ed+12>>2]=ob;ij(ob)}if(yd){break c}if((Bd|0)>=0){break d}break c}if((Bd|0)<0){break c}}zd=q[a>>2];yd=0;ob=0;while(1){Ad=zd+(yd<<3)|0;q[Ad+4>>2]=ob;ob=q[Ad>>2]+ob|0;Ad=(yd|0)==(Bd|0);yd=yd+1|0;if(!Ad){continue}break}if((ob|0)!=4096){break c}yd=0;Cd=0;if((Bd|0)>=0){ob=q[a>>2];while(1){zd=yd<<3;Ad=q[zd+ob>>2];if(Ad){zd=b+zd|0;Cd=Cd+lj(+(Ad>>>0)*.000244140625)*(+t[zd>>2]+4294967296*+t[zd+4>>2])}zd=(yd|0)==(Bd|0);yd=yd+1|0;if(!zd){continue}break}}b=a;ob=a;Cd=D(-Cd);j:{if(Cd<0x10000000000000000&Cd>=0){zd=y(Cd)>=1?Cd>0?~~A(C(Cd/4294967296),4294967295)>>>0:~~D((Cd- +(~~Cd>>>0>>>0))/4294967296)>>>0:0;Bd=~~Cd>>>0;break j}zd=0;Bd=0}q[ob+16>>2]=Bd;q[b+20>>2]=zd;lf(a,Zb)}T=Ed+32|0;return}Gi();F()}function yf(a,b,ob,Zb){var Od=0,Pd=0,Qd=0,Rd=0,Sd=0,Td=0,Ud=0,Vd=0,Wd=0,Xd=0,Yd=0,Zd=0,_d=0,$d=0,ae=0,be=0;Ud=T-32|0;T=Ud;if((ob|0)>0){while(1){Zd=Rd;Rd=(Od<<3)+b|0;Td=q[Rd+4>>2];Qd=q[Rd>>2];Rd=!(Td|Qd)?Zd:Od;Pd=Pd+Td|0;Td=Qd+Vd|0;if(Td>>>0<Qd>>>0){Pd=Pd+1|0}Vd=Td;Od=Od+1|0;if((Od|0)!=(ob|0)){continue}break}}Td=Rd+1|0;q[a+12>>2]=Td;Qd=q[a>>2];ob=q[a+4>>2]-Qd>>3;a:{if(Td>>>0>ob>>>0){Le(a,Td-ob|0);break a}if(Td>>>0>=ob>>>0){break a}q[a+4>>2]=Qd+(Td<<3)}b:{c:{d:{e:{if((Rd|0)>=0){Yd=+(Vd>>>0)+4294967296*+(Pd>>>0);Pd=q[a>>2];Od=0;while(1){Qd=Od<<3;Vd=Qd+b|0;ob=q[Vd+4>>2];Vd=q[Vd>>2];_d=(Vd|0)!=0|(ob|0)!=0;Qd=Pd+Qd|0;Sd=(+(Vd>>>0)+4294967296*+(ob>>>0))/Yd*4096+.5;f:{if(Sd<4294967296&Sd>=0){ob=~~Sd>>>0;break f}ob=0}ob=_d?ob?ob:1:ob;q[Qd>>2]=ob;Wd=ob+Wd|0;ob=(Od|0)==(Rd|0);Od=Od+1|0;if(!ob){continue}break}if((Wd|0)==4096){break e}}q[Ud+16>>2]=0;q[Ud+8>>2]=0;q[Ud+12>>2]=0;Qd=0;if(Td){if(Td>>>0>=1073741824){break b}ob=Td<<2;Qd=ui(ob);q[Ud+8>>2]=Qd;Xd=ob+Qd|0;q[Ud+16>>2]=Xd;pj(Qd,0,ob);q[Ud+12>>2]=Xd}if((Rd|0)>-1){Od=0;while(1){q[(Od<<2)+Qd>>2]=Od;ob=(Od|0)==(Rd|0);Od=Od+1|0;if(!ob){continue}break}}q[Ud+24>>2]=a;Vf(Qd,Xd,Ud+24|0);g:{if((Wd|0)<4096){ob=q[a>>2]+(q[q[Ud+12>>2]+ -4>>2]<<3)|0;q[ob>>2]=(q[ob>>2]-Wd|0)+4096;Od=0;break g}ob=Wd+ -4096|0;Td=q[Ud+8>>2];Vd=(Rd|0)<1;while(1){h:{if(Vd){break h}Sd=4096/+(Wd|0);Xd=q[a>>2];Qd=Rd;while(1){Od=Xd+(q[(Qd<<2)+Td>>2]<<3)|0;Pd=q[Od>>2];if(Pd>>>0<=1){if((Qd|0)!=(Rd|0)){break h}Od=1;break g}_d=Pd+ -1|0;Zd=Od;ae=Pd;be=ob;Od=Pd;Yd=C(Sd*+(Pd>>>0));i:{if(y(Yd)<2147483648){$d=~~Yd;break i}$d=-2147483648}Od=Od-$d|0;Od=Od?Od:1;Pd=(Od|0)<(Pd|0)?Od:_d;Pd=(Pd|0)>(ob|0)?be:Pd;q[Zd>>2]=ae-Pd;ob=ob-Pd|0;Wd=Wd-Pd|0;if((Wd|0)==4096){Wd=4096;break h}Pd=(Qd|0)>1;Qd=Qd+ -1|0;if(Pd){continue}break}}Od=0;if((ob|0)>0){continue}break}}ob=q[Ud+8>>2];if(ob){q[Ud+12>>2]=ob;ij(ob)}if(Od){break c}if((Rd|0)>=0){break d}break c}if((Rd|0)<0){break c}}Pd=q[a>>2];Od=0;ob=0;while(1){Qd=Pd+(Od<<3)|0;q[Qd+4>>2]=ob;ob=q[Qd>>2]+ob|0;Qd=(Od|0)==(Rd|0);Od=Od+1|0;if(!Qd){continue}break}if((ob|0)!=4096){break c}Od=0;Sd=0;if((Rd|0)>=0){ob=q[a>>2];while(1){Pd=Od<<3;Qd=q[Pd+ob>>2];if(Qd){Pd=b+Pd|0;Sd=Sd+lj(+(Qd>>>0)*.000244140625)*(+t[Pd>>2]+4294967296*+t[Pd+4>>2])}Pd=(Od|0)==(Rd|0);Od=Od+1|0;if(!Pd){continue}break}}b=a;ob=a;Sd=D(-Sd);j:{if(Sd<0x10000000000000000&Sd>=0){Pd=y(Sd)>=1?Sd>0?~~A(C(Sd/4294967296),4294967295)>>>0:~~D((Sd- +(~~Sd>>>0>>>0))/4294967296)>>>0:0;Rd=~~Sd>>>0;break j}Pd=0;Rd=0}q[ob+16>>2]=Rd;q[b+20>>2]=Pd;lf(a,Zb)}T=Ud+32|0;return}Gi();F()}function zf(a,b,ob,Zb){var ce=0,de=0,ee=0,fe=0,ge=0,he=0,ie=0,je=0,ke=0,le=0,me=0,ne=0,oe=0,pe=0,qe=0,re=0;ie=T-32|0;T=ie;if((ob|0)>0){while(1){ne=fe;fe=(ce<<3)+b|0;he=q[fe+4>>2];ee=q[fe>>2];fe=!(he|ee)?ne:ce;de=de+he|0;he=ee+je|0;if(he>>>0<ee>>>0){de=de+1|0}je=he;ce=ce+1|0;if((ce|0)!=(ob|0)){continue}break}}he=fe+1|0;q[a+12>>2]=he;ee=q[a>>2];ob=q[a+4>>2]-ee>>3;a:{if(he>>>0>ob>>>0){Le(a,he-ob|0);break a}if(he>>>0>=ob>>>0){break a}q[a+4>>2]=ee+(he<<3)}b:{c:{d:{e:{if((fe|0)>=0){me=+(je>>>0)+4294967296*+(de>>>0);de=q[a>>2];ce=0;while(1){ee=ce<<3;je=ee+b|0;ob=q[je+4>>2];je=q[je>>2];oe=(je|0)!=0|(ob|0)!=0;ee=de+ee|0;ge=(+(je>>>0)+4294967296*+(ob>>>0))/me*8192+.5;f:{if(ge<4294967296&ge>=0){ob=~~ge>>>0;break f}ob=0}ob=oe?ob?ob:1:ob;q[ee>>2]=ob;ke=ob+ke|0;ob=(ce|0)==(fe|0);ce=ce+1|0;if(!ob){continue}break}if((ke|0)==8192){break e}}q[ie+16>>2]=0;q[ie+8>>2]=0;q[ie+12>>2]=0;ee=0;if(he){if(he>>>0>=1073741824){break b}ob=he<<2;ee=ui(ob);q[ie+8>>2]=ee;le=ob+ee|0;q[ie+16>>2]=le;pj(ee,0,ob);q[ie+12>>2]=le}if((fe|0)>-1){ce=0;while(1){q[(ce<<2)+ee>>2]=ce;ob=(ce|0)==(fe|0);ce=ce+1|0;if(!ob){continue}break}}q[ie+24>>2]=a;Wf(ee,le,ie+24|0);g:{if((ke|0)<8192){ob=q[a>>2]+(q[q[ie+12>>2]+ -4>>2]<<3)|0;q[ob>>2]=(q[ob>>2]-ke|0)- -8192;ce=0;break g}ob=ke+ -8192|0;he=q[ie+8>>2];je=(fe|0)<1;while(1){h:{if(je){break h}ge=8192/+(ke|0);le=q[a>>2];ee=fe;while(1){ce=le+(q[(ee<<2)+he>>2]<<3)|0;de=q[ce>>2];if(de>>>0<=1){if((ee|0)!=(fe|0)){break h}ce=1;break g}oe=de+ -1|0;ne=ce;qe=de;re=ob;ce=de;me=C(ge*+(de>>>0));i:{if(y(me)<2147483648){pe=~~me;break i}pe=-2147483648}ce=ce-pe|0;ce=ce?ce:1;de=(ce|0)<(de|0)?ce:oe;de=(de|0)>(ob|0)?re:de;q[ne>>2]=qe-de;ob=ob-de|0;ke=ke-de|0;if((ke|0)==8192){ke=8192;break h}de=(ee|0)>1;ee=ee+ -1|0;if(de){continue}break}}ce=0;if((ob|0)>0){continue}break}}ob=q[ie+8>>2];if(ob){q[ie+12>>2]=ob;ij(ob)}if(ce){break c}if((fe|0)>=0){break d}break c}if((fe|0)<0){break c}}de=q[a>>2];ce=0;ob=0;while(1){ee=de+(ce<<3)|0;q[ee+4>>2]=ob;ob=q[ee>>2]+ob|0;ee=(ce|0)==(fe|0);ce=ce+1|0;if(!ee){continue}break}if((ob|0)!=8192){break c}ce=0;ge=0;if((fe|0)>=0){ob=q[a>>2];while(1){de=ce<<3;ee=q[de+ob>>2];if(ee){de=b+de|0;ge=ge+lj(+(ee>>>0)*.0001220703125)*(+t[de>>2]+4294967296*+t[de+4>>2])}de=(ce|0)==(fe|0);ce=ce+1|0;if(!de){continue}break}}b=a;ob=a;ge=D(-ge);j:{if(ge<0x10000000000000000&ge>=0){de=y(ge)>=1?ge>0?~~A(C(ge/4294967296),4294967295)>>>0:~~D((ge- +(~~ge>>>0>>>0))/4294967296)>>>0:0;fe=~~ge>>>0;break j}de=0;fe=0}q[ob+16>>2]=fe;q[b+20>>2]=de;lf(a,Zb)}T=ie+32|0;return}Gi();F()}function Af(a,b){var ob=0,Zb=0,se=0,te=0,ue=0,ve=0,we=0,xe=0;ve=T-32|0;T=ve;ue=q[b>>2]+q[a+40>>2]|0;ob=q[a+32>>2];Zb=ob+ -32768|0;a:{if(Zb>>>0<=63){ob=a+28|0;o[q[a+24>>2]+q[ob>>2]|0]=Zb;Zb=q[ob>>2]+1|0;break a}if(Zb>>>0<=16383){Zb=a+28|0;se=q[a+24>>2]+q[Zb>>2]|0;ob=ob+ -16384|0;o[se|0]=ob;o[se+1|0]=ob>>>8;Zb=q[Zb>>2]+2|0;break a}if(Zb>>>0<=4194303){se=a+28|0;Zb=q[a+24>>2]+q[se>>2]|0;ob=ob+8355840|0;o[Zb+2|0]=ob>>>16;o[Zb+1|0]=ob>>>8;o[Zb|0]=ob;Zb=q[se>>2]+3|0;break a}if(Zb>>>0<=1073741823){se=a+28|0;Zb=q[a+24>>2]+q[se>>2]|0;ob=ob+ -1073774592|0;o[Zb|0]=ob;o[Zb+1|0]=ob>>>8;o[Zb+2|0]=ob>>>16;o[Zb+3|0]=ob>>>24;Zb=q[se>>2]+4|0;break a}Zb=q[a+28>>2]}te=Zb>>31;se=te;ob=Zb;te=Eg(ve);mf(ob,se,te);we=q[te+4>>2]-q[te>>2]|0;qj(we+ue|0,ue,ob);oj(ue,q[te>>2],we);Zb=q[a+44>>2];ue=b;xe=q[a+40>>2];a=se;b=ob+we|0;if(b>>>0<ob>>>0){a=a+1|0}ob=b;b=xe+ob|0;Fg(ue,b);a=q[te+12>>2];q[te+12>>2]=0;if(a){ij(a)}a=q[te>>2];if(a){q[te+4>>2]=a;ij(a)}T=ve+32|0}function Bf(a,b,ye,ze){var Ae=0,Be=0,Ce=0,De=0,Ee=0,Fe=0,Ge=0,He=0,Ie=0,Je=0,Ke=0,Me=0,Ne=0,Oe=0,Pe=0,Qe=0;Ge=T-32|0;T=Ge;if((ye|0)>0){while(1){Me=De;De=(Ae<<3)+b|0;Fe=q[De+4>>2];Ce=q[De>>2];De=!(Fe|Ce)?Me:Ae;Be=Be+Fe|0;Fe=Ce+He|0;if(Fe>>>0<Ce>>>0){Be=Be+1|0}He=Fe;Ae=Ae+1|0;if((Ae|0)!=(ye|0)){continue}break}}Fe=De+1|0;q[a+12>>2]=Fe;Ce=q[a>>2];ye=q[a+4>>2]-Ce>>3;a:{if(Fe>>>0>ye>>>0){Le(a,Fe-ye|0);break a}if(Fe>>>0>=ye>>>0){break a}q[a+4>>2]=Ce+(Fe<<3)}b:{c:{d:{e:{if((De|0)>=0){Ke=+(He>>>0)+4294967296*+(Be>>>0);Be=q[a>>2];Ae=0;while(1){Ce=Ae<<3;He=Ce+b|0;ye=q[He+4>>2];He=q[He>>2];Ne=(He|0)!=0|(ye|0)!=0;Ce=Be+Ce|0;Ee=(+(He>>>0)+4294967296*+(ye>>>0))/Ke*32768+.5;f:{if(Ee<4294967296&Ee>=0){ye=~~Ee>>>0;break f}ye=0}ye=Ne?ye?ye:1:ye;q[Ce>>2]=ye;Ie=ye+Ie|0;ye=(Ae|0)==(De|0);Ae=Ae+1|0;if(!ye){continue}break}if((Ie|0)==32768){break e}}q[Ge+16>>2]=0;q[Ge+8>>2]=0;q[Ge+12>>2]=0;Ce=0;if(Fe){if(Fe>>>0>=1073741824){break b}ye=Fe<<2;Ce=ui(ye);q[Ge+8>>2]=Ce;Je=ye+Ce|0;q[Ge+16>>2]=Je;pj(Ce,0,ye);q[Ge+12>>2]=Je}if((De|0)>-1){Ae=0;while(1){q[(Ae<<2)+Ce>>2]=Ae;ye=(Ae|0)==(De|0);Ae=Ae+1|0;if(!ye){continue}break}}q[Ge+24>>2]=a;Xf(Ce,Je,Ge+24|0);g:{if((Ie|0)<32768){ye=q[a>>2]+(q[q[Ge+12>>2]+ -4>>2]<<3)|0;q[ye>>2]=(q[ye>>2]-Ie|0)+32768;Ae=0;break g}ye=Ie+ -32768|0;Fe=q[Ge+8>>2];He=(De|0)<1;while(1){h:{if(He){break h}Ee=32768/+(Ie|0);Je=q[a>>2];Ce=De;while(1){Ae=Je+(q[(Ce<<2)+Fe>>2]<<3)|0;Be=q[Ae>>2];if(Be>>>0<=1){if((Ce|0)!=(De|0)){break h}Ae=1;break g}Ne=Be+ -1|0;Me=Ae;Pe=Be;Qe=ye;Ae=Be;Ke=C(Ee*+(Be>>>0));i:{if(y(Ke)<2147483648){Oe=~~Ke;break i}Oe=-2147483648}Ae=Ae-Oe|0;Ae=Ae?Ae:1;Be=(Ae|0)<(Be|0)?Ae:Ne;Be=(Be|0)>(ye|0)?Qe:Be;q[Me>>2]=Pe-Be;ye=ye-Be|0;Ie=Ie-Be|0;if((Ie|0)==32768){Ie=32768;break h}Be=(Ce|0)>1;Ce=Ce+ -1|0;if(Be){continue}break}}Ae=0;if((ye|0)>0){continue}break}}ye=q[Ge+8>>2];if(ye){q[Ge+12>>2]=ye;ij(ye)}if(Ae){break c}if((De|0)>=0){break d}break c}if((De|0)<0){break c}}Be=q[a>>2];Ae=0;ye=0;while(1){Ce=Be+(Ae<<3)|0;q[Ce+4>>2]=ye;ye=q[Ce>>2]+ye|0;Ce=(Ae|0)==(De|0);Ae=Ae+1|0;if(!Ce){continue}break}if((ye|0)!=32768){break c}Ae=0;Ee=0;if((De|0)>=0){ye=q[a>>2];while(1){Be=Ae<<3;Ce=q[Be+ye>>2];if(Ce){Be=b+Be|0;Ee=Ee+lj(+(Ce>>>0)*30517578125e-15)*(+t[Be>>2]+4294967296*+t[Be+4>>2])}Be=(Ae|0)==(De|0);Ae=Ae+1|0;if(!Be){continue}break}}b=a;ye=a;Ee=D(-Ee);j:{if(Ee<0x10000000000000000&Ee>=0){Be=y(Ee)>=1?Ee>0?~~A(C(Ee/4294967296),4294967295)>>>0:~~D((Ee- +(~~Ee>>>0>>>0))/4294967296)>>>0:0;De=~~Ee>>>0;break j}Be=0;De=0}q[ye+16>>2]=De;q[b+20>>2]=Be;lf(a,ze)}T=Ge+32|0;return}Gi();F()}function Cf(a,b){var ye=0,ze=0,Le=0,Re=0,Se=0,Te=0,Ue=0,Ve=0;Te=T-32|0;T=Te;Se=q[b>>2]+q[a+40>>2]|0;ye=q[a+32>>2];ze=ye+ -131072|0;a:{if(ze>>>0<=63){ye=a+28|0;o[q[a+24>>2]+q[ye>>2]|0]=ze;ze=q[ye>>2]+1|0;break a}if(ze>>>0<=16383){ze=a+28|0;Le=q[a+24>>2]+q[ze>>2]|0;ye=ye+ -114688|0;o[Le|0]=ye;o[Le+1|0]=ye>>>8;ze=q[ze>>2]+2|0;break a}if(ze>>>0<=4194303){Le=a+28|0;ze=q[a+24>>2]+q[Le>>2]|0;ye=ye+8257536|0;o[ze+2|0]=ye>>>16;o[ze+1|0]=ye>>>8;o[ze|0]=ye;ze=q[Le>>2]+3|0;break a}if(ze>>>0<=1073741823){Le=a+28|0;ze=q[a+24>>2]+q[Le>>2]|0;ye=ye+ -1073872896|0;o[ze|0]=ye;o[ze+1|0]=ye>>>8;o[ze+2|0]=ye>>>16;o[ze+3|0]=ye>>>24;ze=q[Le>>2]+4|0;break a}ze=q[a+28>>2]}Re=ze>>31;Le=Re;ye=ze;Re=Eg(Te);mf(ye,Le,Re);Ue=q[Re+4>>2]-q[Re>>2]|0;qj(Ue+Se|0,Se,ye);oj(Se,q[Re>>2],Ue);ze=q[a+44>>2];Se=b;Ve=q[a+40>>2];a=Le;b=ye+Ue|0;if(b>>>0<ye>>>0){a=a+1|0}ye=b;b=Ve+ye|0;Fg(Se,b);a=q[Re+12>>2];q[Re+12>>2]=0;if(a){ij(a)}a=q[Re>>2];if(a){q[Re+4>>2]=a;ij(a)}T=Te+32|0}function Df(a,b,We,Xe){var Ye=0,Ze=0,_e=0,$e=0,af=0,bf=0,cf=0,df=0,ef=0,ff=0,gf=0,hf=0,jf=0,kf=0,mf=0,nf=0;cf=T-32|0;T=cf;if((We|0)>0){while(1){hf=$e;$e=(Ye<<3)+b|0;bf=q[$e+4>>2];_e=q[$e>>2];$e=!(bf|_e)?hf:Ye;Ze=Ze+bf|0;bf=_e+df|0;if(bf>>>0<_e>>>0){Ze=Ze+1|0}df=bf;Ye=Ye+1|0;if((Ye|0)!=(We|0)){continue}break}}bf=$e+1|0;q[a+12>>2]=bf;_e=q[a>>2];We=q[a+4>>2]-_e>>3;a:{if(bf>>>0>We>>>0){Le(a,bf-We|0);break a}if(bf>>>0>=We>>>0){break a}q[a+4>>2]=_e+(bf<<3)}b:{c:{d:{e:{if(($e|0)>=0){gf=+(df>>>0)+4294967296*+(Ze>>>0);Ze=q[a>>2];Ye=0;while(1){_e=Ye<<3;df=_e+b|0;We=q[df+4>>2];df=q[df>>2];jf=(df|0)!=0|(We|0)!=0;_e=Ze+_e|0;af=(+(df>>>0)+4294967296*+(We>>>0))/gf*65536+.5;f:{if(af<4294967296&af>=0){We=~~af>>>0;break f}We=0}We=jf?We?We:1:We;q[_e>>2]=We;ef=We+ef|0;We=(Ye|0)==($e|0);Ye=Ye+1|0;if(!We){continue}break}if((ef|0)==65536){break e}}q[cf+16>>2]=0;q[cf+8>>2]=0;q[cf+12>>2]=0;_e=0;if(bf){if(bf>>>0>=1073741824){break b}We=bf<<2;_e=ui(We);q[cf+8>>2]=_e;ff=We+_e|0;q[cf+16>>2]=ff;pj(_e,0,We);q[cf+12>>2]=ff}if(($e|0)>-1){Ye=0;while(1){q[(Ye<<2)+_e>>2]=Ye;We=(Ye|0)==($e|0);Ye=Ye+1|0;if(!We){continue}break}}q[cf+24>>2]=a;Yf(_e,ff,cf+24|0);g:{if((ef|0)<65536){We=q[a>>2]+(q[q[cf+12>>2]+ -4>>2]<<3)|0;q[We>>2]=(q[We>>2]-ef|0)+65536;Ye=0;break g}We=ef+ -65536|0;bf=q[cf+8>>2];df=($e|0)<1;while(1){h:{if(df){break h}af=65536/+(ef|0);ff=q[a>>2];_e=$e;while(1){Ye=ff+(q[(_e<<2)+bf>>2]<<3)|0;Ze=q[Ye>>2];if(Ze>>>0<=1){if((_e|0)!=($e|0)){break h}Ye=1;break g}jf=Ze+ -1|0;hf=Ye;mf=Ze;nf=We;Ye=Ze;gf=C(af*+(Ze>>>0));i:{if(y(gf)<2147483648){kf=~~gf;break i}kf=-2147483648}Ye=Ye-kf|0;Ye=Ye?Ye:1;Ze=(Ye|0)<(Ze|0)?Ye:jf;Ze=(Ze|0)>(We|0)?nf:Ze;q[hf>>2]=mf-Ze;We=We-Ze|0;ef=ef-Ze|0;if((ef|0)==65536){ef=65536;break h}Ze=(_e|0)>1;_e=_e+ -1|0;if(Ze){continue}break}}Ye=0;if((We|0)>0){continue}break}}We=q[cf+8>>2];if(We){q[cf+12>>2]=We;ij(We)}if(Ye){break c}if(($e|0)>=0){break d}break c}if(($e|0)<0){break c}}Ze=q[a>>2];Ye=0;We=0;while(1){_e=Ze+(Ye<<3)|0;q[_e+4>>2]=We;We=q[_e>>2]+We|0;_e=(Ye|0)==($e|0);Ye=Ye+1|0;if(!_e){continue}break}if((We|0)!=65536){break c}Ye=0;af=0;if(($e|0)>=0){We=q[a>>2];while(1){Ze=Ye<<3;_e=q[Ze+We>>2];if(_e){Ze=b+Ze|0;af=af+lj(+(_e>>>0)*152587890625e-16)*(+t[Ze>>2]+4294967296*+t[Ze+4>>2])}Ze=(Ye|0)==($e|0);Ye=Ye+1|0;if(!Ze){continue}break}}b=a;We=a;af=D(-af);j:{if(af<0x10000000000000000&af>=0){Ze=y(af)>=1?af>0?~~A(C(af/4294967296),4294967295)>>>0:~~D((af- +(~~af>>>0>>>0))/4294967296)>>>0:0;$e=~~af>>>0;break j}Ze=0;$e=0}q[We+16>>2]=$e;q[b+20>>2]=Ze;lf(a,Xe)}T=cf+32|0;return}Gi();F()}function Ef(a,b){var We=0,Xe=0,lf=0,of=0,pf=0,qf=0,rf=0,sf=0;qf=T-32|0;T=qf;pf=q[b>>2]+q[a+40>>2]|0;We=q[a+32>>2];Xe=We+ -262144|0;a:{if(Xe>>>0<=63){We=a+28|0;o[q[a+24>>2]+q[We>>2]|0]=Xe;Xe=q[We>>2]+1|0;break a}if(Xe>>>0<=16383){Xe=a+28|0;lf=q[a+24>>2]+q[Xe>>2]|0;We=We+ -245760|0;o[lf|0]=We;o[lf+1|0]=We>>>8;Xe=q[Xe>>2]+2|0;break a}if(Xe>>>0<=4194303){lf=a+28|0;Xe=q[a+24>>2]+q[lf>>2]|0;We=We+8126464|0;o[Xe+2|0]=We>>>16;o[Xe+1|0]=We>>>8;o[Xe|0]=We;Xe=q[lf>>2]+3|0;break a}if(Xe>>>0<=1073741823){lf=a+28|0;Xe=q[a+24>>2]+q[lf>>2]|0;We=We+ -1074003968|0;o[Xe|0]=We;o[Xe+1|0]=We>>>8;o[Xe+2|0]=We>>>16;o[Xe+3|0]=We>>>24;Xe=q[lf>>2]+4|0;break a}Xe=q[a+28>>2]}of=Xe>>31;lf=of;We=Xe;of=Eg(qf);mf(We,lf,of);rf=q[of+4>>2]-q[of>>2]|0;qj(rf+pf|0,pf,We);oj(pf,q[of>>2],rf);Xe=q[a+44>>2];pf=b;sf=q[a+40>>2];a=lf;b=We+rf|0;if(b>>>0<We>>>0){a=a+1|0}We=b;b=sf+We|0;Fg(pf,b);a=q[of+12>>2];q[of+12>>2]=0;if(a){ij(a)}a=q[of>>2];if(a){q[of+4>>2]=a;ij(a)}T=qf+32|0}function Ff(a,b,tf,uf){var vf=0,wf=0,xf=0,yf=0,zf=0,Af=0,Bf=0,Cf=0,Df=0,Ef=0,Ff=0,Gf=0,Hf=0,If=0,Jf=0,Kf=0;Bf=T-32|0;T=Bf;if((tf|0)>0){while(1){Gf=yf;yf=(vf<<3)+b|0;Af=q[yf+4>>2];xf=q[yf>>2];yf=!(Af|xf)?Gf:vf;wf=wf+Af|0;Af=xf+Cf|0;if(Af>>>0<xf>>>0){wf=wf+1|0}Cf=Af;vf=vf+1|0;if((vf|0)!=(tf|0)){continue}break}}Af=yf+1|0;q[a+12>>2]=Af;xf=q[a>>2];tf=q[a+4>>2]-xf>>3;a:{if(Af>>>0>tf>>>0){Le(a,Af-tf|0);break a}if(Af>>>0>=tf>>>0){break a}q[a+4>>2]=xf+(Af<<3)}b:{c:{d:{e:{if((yf|0)>=0){Ff=+(Cf>>>0)+4294967296*+(wf>>>0);wf=q[a>>2];vf=0;while(1){xf=vf<<3;Cf=xf+b|0;tf=q[Cf+4>>2];Cf=q[Cf>>2];Hf=(Cf|0)!=0|(tf|0)!=0;xf=wf+xf|0;zf=(+(Cf>>>0)+4294967296*+(tf>>>0))/Ff*262144+.5;f:{if(zf<4294967296&zf>=0){tf=~~zf>>>0;break f}tf=0}tf=Hf?tf?tf:1:tf;q[xf>>2]=tf;Df=tf+Df|0;tf=(vf|0)==(yf|0);vf=vf+1|0;if(!tf){continue}break}if((Df|0)==262144){break e}}q[Bf+16>>2]=0;q[Bf+8>>2]=0;q[Bf+12>>2]=0;xf=0;if(Af){if(Af>>>0>=1073741824){break b}tf=Af<<2;xf=ui(tf);q[Bf+8>>2]=xf;Ef=tf+xf|0;q[Bf+16>>2]=Ef;pj(xf,0,tf);q[Bf+12>>2]=Ef}if((yf|0)>-1){vf=0;while(1){q[(vf<<2)+xf>>2]=vf;tf=(vf|0)==(yf|0);vf=vf+1|0;if(!tf){continue}break}}q[Bf+24>>2]=a;Zf(xf,Ef,Bf+24|0);g:{if((Df|0)<262144){tf=q[a>>2]+(q[q[Bf+12>>2]+ -4>>2]<<3)|0;q[tf>>2]=(q[tf>>2]-Df|0)+262144;vf=0;break g}tf=Df+ -262144|0;Af=q[Bf+8>>2];Cf=(yf|0)<1;while(1){h:{if(Cf){break h}zf=262144/+(Df|0);Ef=q[a>>2];xf=yf;while(1){vf=Ef+(q[(xf<<2)+Af>>2]<<3)|0;wf=q[vf>>2];if(wf>>>0<=1){if((xf|0)!=(yf|0)){break h}vf=1;break g}Hf=wf+ -1|0;Gf=vf;Jf=wf;Kf=tf;vf=wf;Ff=C(zf*+(wf>>>0));i:{if(y(Ff)<2147483648){If=~~Ff;break i}If=-2147483648}vf=vf-If|0;vf=vf?vf:1;wf=(vf|0)<(wf|0)?vf:Hf;wf=(wf|0)>(tf|0)?Kf:wf;q[Gf>>2]=Jf-wf;tf=tf-wf|0;Df=Df-wf|0;if((Df|0)==262144){Df=262144;break h}wf=(xf|0)>1;xf=xf+ -1|0;if(wf){continue}break}}vf=0;if((tf|0)>0){continue}break}}tf=q[Bf+8>>2];if(tf){q[Bf+12>>2]=tf;ij(tf)}if(vf){break c}if((yf|0)>=0){break d}break c}if((yf|0)<0){break c}}wf=q[a>>2];vf=0;tf=0;while(1){xf=wf+(vf<<3)|0;q[xf+4>>2]=tf;tf=q[xf>>2]+tf|0;xf=(vf|0)==(yf|0);vf=vf+1|0;if(!xf){continue}break}if((tf|0)!=262144){break c}vf=0;zf=0;if((yf|0)>=0){tf=q[a>>2];while(1){wf=vf<<3;xf=q[wf+tf>>2];if(xf){wf=b+wf|0;zf=zf+lj(+(xf>>>0)*3814697265625e-18)*(+t[wf>>2]+4294967296*+t[wf+4>>2])}wf=(vf|0)==(yf|0);vf=vf+1|0;if(!wf){continue}break}}b=a;tf=a;zf=D(-zf);j:{if(zf<0x10000000000000000&zf>=0){wf=y(zf)>=1?zf>0?~~A(C(zf/4294967296),4294967295)>>>0:~~D((zf- +(~~zf>>>0>>>0))/4294967296)>>>0:0;yf=~~zf>>>0;break j}wf=0;yf=0}q[tf+16>>2]=yf;q[b+20>>2]=wf;lf(a,uf)}T=Bf+32|0;return}Gi();F()}function Gf(a,b){var tf=0,uf=0,Lf=0,Mf=0,Nf=0,Of=0,Pf=0,Qf=0;Of=T-32|0;T=Of;Nf=q[b>>2]+q[a+40>>2]|0;tf=q[a+32>>2];uf=tf+ -1048576|0;a:{if(uf>>>0<=63){tf=a+28|0;o[q[a+24>>2]+q[tf>>2]|0]=uf;uf=q[tf>>2]+1|0;break a}if(uf>>>0<=16383){uf=a+28|0;Lf=q[a+24>>2]+q[uf>>2]|0;tf=tf+ -1032192|0;o[Lf|0]=tf;o[Lf+1|0]=tf>>>8;uf=q[uf>>2]+2|0;break a}if(uf>>>0<=4194303){Lf=a+28|0;uf=q[a+24>>2]+q[Lf>>2]|0;tf=tf+7340032|0;o[uf+2|0]=tf>>>16;o[uf+1|0]=tf>>>8;o[uf|0]=tf;uf=q[Lf>>2]+3|0;break a}if(uf>>>0<=1073741823){Lf=a+28|0;uf=q[a+24>>2]+q[Lf>>2]|0;tf=tf+ -1074790400|0;o[uf|0]=tf;o[uf+1|0]=tf>>>8;o[uf+2|0]=tf>>>16;o[uf+3|0]=tf>>>24;uf=q[Lf>>2]+4|0;break a}uf=q[a+28>>2]}Mf=uf>>31;Lf=Mf;tf=uf;Mf=Eg(Of);mf(tf,Lf,Mf);Pf=q[Mf+4>>2]-q[Mf>>2]|0;qj(Pf+Nf|0,Nf,tf);oj(Nf,q[Mf>>2],Pf);uf=q[a+44>>2];Nf=b;Qf=q[a+40>>2];a=Lf;b=tf+Pf|0;if(b>>>0<tf>>>0){a=a+1|0}tf=b;b=Qf+tf|0;Fg(Nf,b);a=q[Mf+12>>2];q[Mf+12>>2]=0;if(a){ij(a)}a=q[Mf>>2];if(a){q[Mf+4>>2]=a;ij(a)}T=Of+32|0}function Hf(a,b,Rf,Sf){var Tf=0,Uf=0,Vf=0,Wf=0,Xf=0,Yf=0,Zf=0,$f=0,ag=0,bg=0,cg=0,dg=0,eg=0,fg=0,gg=0,hg=0;Zf=T-32|0;T=Zf;if((Rf|0)>0){while(1){dg=Wf;Wf=(Tf<<3)+b|0;Yf=q[Wf+4>>2];Vf=q[Wf>>2];Wf=!(Yf|Vf)?dg:Tf;Uf=Uf+Yf|0;Yf=Vf+$f|0;if(Yf>>>0<Vf>>>0){Uf=Uf+1|0}$f=Yf;Tf=Tf+1|0;if((Tf|0)!=(Rf|0)){continue}break}}Yf=Wf+1|0;q[a+12>>2]=Yf;Vf=q[a>>2];Rf=q[a+4>>2]-Vf>>3;a:{if(Yf>>>0>Rf>>>0){Le(a,Yf-Rf|0);break a}if(Yf>>>0>=Rf>>>0){break a}q[a+4>>2]=Vf+(Yf<<3)}b:{c:{d:{e:{if((Wf|0)>=0){cg=+($f>>>0)+4294967296*+(Uf>>>0);Uf=q[a>>2];Tf=0;while(1){Vf=Tf<<3;$f=Vf+b|0;Rf=q[$f+4>>2];$f=q[$f>>2];eg=($f|0)!=0|(Rf|0)!=0;Vf=Uf+Vf|0;Xf=(+($f>>>0)+4294967296*+(Rf>>>0))/cg*524288+.5;f:{if(Xf<4294967296&Xf>=0){Rf=~~Xf>>>0;break f}Rf=0}Rf=eg?Rf?Rf:1:Rf;q[Vf>>2]=Rf;ag=Rf+ag|0;Rf=(Tf|0)==(Wf|0);Tf=Tf+1|0;if(!Rf){continue}break}if((ag|0)==524288){break e}}q[Zf+16>>2]=0;q[Zf+8>>2]=0;q[Zf+12>>2]=0;Vf=0;if(Yf){if(Yf>>>0>=1073741824){break b}Rf=Yf<<2;Vf=ui(Rf);q[Zf+8>>2]=Vf;bg=Rf+Vf|0;q[Zf+16>>2]=bg;pj(Vf,0,Rf);q[Zf+12>>2]=bg}if((Wf|0)>-1){Tf=0;while(1){q[(Tf<<2)+Vf>>2]=Tf;Rf=(Tf|0)==(Wf|0);Tf=Tf+1|0;if(!Rf){continue}break}}q[Zf+24>>2]=a;_f(Vf,bg,Zf+24|0);g:{if((ag|0)<524288){Rf=q[a>>2]+(q[q[Zf+12>>2]+ -4>>2]<<3)|0;q[Rf>>2]=(q[Rf>>2]-ag|0)+524288;Tf=0;break g}Rf=ag+ -524288|0;Yf=q[Zf+8>>2];$f=(Wf|0)<1;while(1){h:{if($f){break h}Xf=524288/+(ag|0);bg=q[a>>2];Vf=Wf;while(1){Tf=bg+(q[(Vf<<2)+Yf>>2]<<3)|0;Uf=q[Tf>>2];if(Uf>>>0<=1){if((Vf|0)!=(Wf|0)){break h}Tf=1;break g}eg=Uf+ -1|0;dg=Tf;gg=Uf;hg=Rf;Tf=Uf;cg=C(Xf*+(Uf>>>0));i:{if(y(cg)<2147483648){fg=~~cg;break i}fg=-2147483648}Tf=Tf-fg|0;Tf=Tf?Tf:1;Uf=(Tf|0)<(Uf|0)?Tf:eg;Uf=(Uf|0)>(Rf|0)?hg:Uf;q[dg>>2]=gg-Uf;Rf=Rf-Uf|0;ag=ag-Uf|0;if((ag|0)==524288){ag=524288;break h}Uf=(Vf|0)>1;Vf=Vf+ -1|0;if(Uf){continue}break}}Tf=0;if((Rf|0)>0){continue}break}}Rf=q[Zf+8>>2];if(Rf){q[Zf+12>>2]=Rf;ij(Rf)}if(Tf){break c}if((Wf|0)>=0){break d}break c}if((Wf|0)<0){break c}}Uf=q[a>>2];Tf=0;Rf=0;while(1){Vf=Uf+(Tf<<3)|0;q[Vf+4>>2]=Rf;Rf=q[Vf>>2]+Rf|0;Vf=(Tf|0)==(Wf|0);Tf=Tf+1|0;if(!Vf){continue}break}if((Rf|0)!=524288){break c}Tf=0;Xf=0;if((Wf|0)>=0){Rf=q[a>>2];while(1){Uf=Tf<<3;Vf=q[Uf+Rf>>2];if(Vf){Uf=b+Uf|0;Xf=Xf+lj(+(Vf>>>0)*19073486328125e-19)*(+t[Uf>>2]+4294967296*+t[Uf+4>>2])}Uf=(Tf|0)==(Wf|0);Tf=Tf+1|0;if(!Uf){continue}break}}b=a;Rf=a;Xf=D(-Xf);j:{if(Xf<0x10000000000000000&Xf>=0){Uf=y(Xf)>=1?Xf>0?~~A(C(Xf/4294967296),4294967295)>>>0:~~D((Xf- +(~~Xf>>>0>>>0))/4294967296)>>>0:0;Wf=~~Xf>>>0;break j}Uf=0;Wf=0}q[Rf+16>>2]=Wf;q[b+20>>2]=Uf;lf(a,Sf)}T=Zf+32|0;return}Gi();F()}function If(a,b){var Rf=0,Sf=0,_f=0,ig=0,jg=0,kg=0,lg=0,mg=0;kg=T-32|0;T=kg;jg=q[b>>2]+q[a+40>>2]|0;Rf=q[a+32>>2];Sf=Rf+ -2097152|0;a:{if(Sf>>>0<=63){Rf=a+28|0;o[q[a+24>>2]+q[Rf>>2]|0]=Sf;Sf=q[Rf>>2]+1|0;break a}if(Sf>>>0<=16383){Sf=a+28|0;_f=q[a+24>>2]+q[Sf>>2]|0;Rf=Rf+ -2080768|0;o[_f|0]=Rf;o[_f+1|0]=Rf>>>8;Sf=q[Sf>>2]+2|0;break a}if(Sf>>>0<=4194303){_f=a+28|0;Sf=q[a+24>>2]+q[_f>>2]|0;Rf=Rf+6291456|0;o[Sf+2|0]=Rf>>>16;o[Sf+1|0]=Rf>>>8;o[Sf|0]=Rf;Sf=q[_f>>2]+3|0;break a}if(Sf>>>0<=1073741823){_f=a+28|0;Sf=q[a+24>>2]+q[_f>>2]|0;Rf=Rf+ -1075838976|0;o[Sf|0]=Rf;o[Sf+1|0]=Rf>>>8;o[Sf+2|0]=Rf>>>16;o[Sf+3|0]=Rf>>>24;Sf=q[_f>>2]+4|0;break a}Sf=q[a+28>>2]}ig=Sf>>31;_f=ig;Rf=Sf;ig=Eg(kg);mf(Rf,_f,ig);lg=q[ig+4>>2]-q[ig>>2]|0;qj(lg+jg|0,jg,Rf);oj(jg,q[ig>>2],lg);Sf=q[a+44>>2];jg=b;mg=q[a+40>>2];a=_f;b=Rf+lg|0;if(b>>>0<Rf>>>0){a=a+1|0}Rf=b;b=mg+Rf|0;Fg(jg,b);a=q[ig+12>>2];q[ig+12>>2]=0;if(a){ij(a)}a=q[ig>>2];if(a){q[ig+4>>2]=a;ij(a)}T=kg+32|0}function Jf(a,b,ng,og){var pg=0,qg=0,rg=0,sg=0,tg=0,ug=0,vg=0,wg=0,xg=0,yg=0,zg=0,Ag=0,Bg=0,Cg=0,Dg=0,Eg=0;vg=T-32|0;T=vg;if((ng|0)>0){while(1){Ag=sg;sg=(pg<<3)+b|0;ug=q[sg+4>>2];rg=q[sg>>2];sg=!(ug|rg)?Ag:pg;qg=qg+ug|0;ug=rg+wg|0;if(ug>>>0<rg>>>0){qg=qg+1|0}wg=ug;pg=pg+1|0;if((pg|0)!=(ng|0)){continue}break}}ug=sg+1|0;q[a+12>>2]=ug;rg=q[a>>2];ng=q[a+4>>2]-rg>>3;a:{if(ug>>>0>ng>>>0){Le(a,ug-ng|0);break a}if(ug>>>0>=ng>>>0){break a}q[a+4>>2]=rg+(ug<<3)}b:{c:{d:{e:{if((sg|0)>=0){zg=+(wg>>>0)+4294967296*+(qg>>>0);qg=q[a>>2];pg=0;while(1){rg=pg<<3;wg=rg+b|0;ng=q[wg+4>>2];wg=q[wg>>2];Bg=(wg|0)!=0|(ng|0)!=0;rg=qg+rg|0;tg=(+(wg>>>0)+4294967296*+(ng>>>0))/zg*1048576+.5;f:{if(tg<4294967296&tg>=0){ng=~~tg>>>0;break f}ng=0}ng=Bg?ng?ng:1:ng;q[rg>>2]=ng;xg=ng+xg|0;ng=(pg|0)==(sg|0);pg=pg+1|0;if(!ng){continue}break}if((xg|0)==1048576){break e}}q[vg+16>>2]=0;q[vg+8>>2]=0;q[vg+12>>2]=0;rg=0;if(ug){if(ug>>>0>=1073741824){break b}ng=ug<<2;rg=ui(ng);q[vg+8>>2]=rg;yg=ng+rg|0;q[vg+16>>2]=yg;pj(rg,0,ng);q[vg+12>>2]=yg}if((sg|0)>-1){pg=0;while(1){q[(pg<<2)+rg>>2]=pg;ng=(pg|0)==(sg|0);pg=pg+1|0;if(!ng){continue}break}}q[vg+24>>2]=a;$f(rg,yg,vg+24|0);g:{if((xg|0)<1048576){ng=q[a>>2]+(q[q[vg+12>>2]+ -4>>2]<<3)|0;q[ng>>2]=(q[ng>>2]-xg|0)- -1048576;pg=0;break g}ng=xg+ -1048576|0;ug=q[vg+8>>2];wg=(sg|0)<1;while(1){h:{if(wg){break h}tg=1048576/+(xg|0);yg=q[a>>2];rg=sg;while(1){pg=yg+(q[(rg<<2)+ug>>2]<<3)|0;qg=q[pg>>2];if(qg>>>0<=1){if((rg|0)!=(sg|0)){break h}pg=1;break g}Bg=qg+ -1|0;Ag=pg;Dg=qg;Eg=ng;pg=qg;zg=C(tg*+(qg>>>0));i:{if(y(zg)<2147483648){Cg=~~zg;break i}Cg=-2147483648}pg=pg-Cg|0;pg=pg?pg:1;qg=(pg|0)<(qg|0)?pg:Bg;qg=(qg|0)>(ng|0)?Eg:qg;q[Ag>>2]=Dg-qg;ng=ng-qg|0;xg=xg-qg|0;if((xg|0)==1048576){xg=1048576;break h}qg=(rg|0)>1;rg=rg+ -1|0;if(qg){continue}break}}pg=0;if((ng|0)>0){continue}break}}ng=q[vg+8>>2];if(ng){q[vg+12>>2]=ng;ij(ng)}if(pg){break c}if((sg|0)>=0){break d}break c}if((sg|0)<0){break c}}qg=q[a>>2];pg=0;ng=0;while(1){rg=qg+(pg<<3)|0;q[rg+4>>2]=ng;ng=q[rg>>2]+ng|0;rg=(pg|0)==(sg|0);pg=pg+1|0;if(!rg){continue}break}if((ng|0)!=1048576){break c}pg=0;tg=0;if((sg|0)>=0){ng=q[a>>2];while(1){qg=pg<<3;rg=q[qg+ng>>2];if(rg){qg=b+qg|0;tg=tg+lj(+(rg>>>0)*9.5367431640625e-7)*(+t[qg>>2]+4294967296*+t[qg+4>>2])}qg=(pg|0)==(sg|0);pg=pg+1|0;if(!qg){continue}break}}b=a;ng=a;tg=D(-tg);j:{if(tg<0x10000000000000000&tg>=0){qg=y(tg)>=1?tg>0?~~A(C(tg/4294967296),4294967295)>>>0:~~D((tg- +(~~tg>>>0>>>0))/4294967296)>>>0:0;sg=~~tg>>>0;break j}qg=0;sg=0}q[ng+16>>2]=sg;q[b+20>>2]=qg;lf(a,og)}T=vg+32|0;return}Gi();F()}function Kf(a,b){var ng=0,og=0,Gg=0,Hg=0,Ig=0,Jg=0,Kg=0,Lg=0;Jg=T-32|0;T=Jg;Ig=q[b>>2]+q[a+40>>2]|0;ng=q[a+32>>2];og=ng+ -4194304|0;a:{if(og>>>0<=63){ng=a+28|0;o[q[a+24>>2]+q[ng>>2]|0]=og;og=q[ng>>2]+1|0;break a}if(og>>>0<=16383){og=a+28|0;Gg=q[a+24>>2]+q[og>>2]|0;ng=ng+ -4177920|0;o[Gg|0]=ng;o[Gg+1|0]=ng>>>8;og=q[og>>2]+2|0;break a}if(og>>>0<=4194303){Gg=a+28|0;og=q[a+24>>2]+q[Gg>>2]|0;ng=ng+4194304|0;o[og+2|0]=ng>>>16;o[og+1|0]=ng>>>8;o[og|0]=ng;og=q[Gg>>2]+3|0;break a}if(og>>>0<=1073741823){Gg=a+28|0;og=q[a+24>>2]+q[Gg>>2]|0;ng=ng+ -1077936128|0;o[og|0]=ng;o[og+1|0]=ng>>>8;o[og+2|0]=ng>>>16;o[og+3|0]=ng>>>24;og=q[Gg>>2]+4|0;break a}og=q[a+28>>2]}Hg=og>>31;Gg=Hg;ng=og;Hg=Eg(Jg);mf(ng,Gg,Hg);Kg=q[Hg+4>>2]-q[Hg>>2]|0;qj(Kg+Ig|0,Ig,ng);oj(Ig,q[Hg>>2],Kg);og=q[a+44>>2];Ig=b;Lg=q[a+40>>2];a=Gg;b=ng+Kg|0;if(b>>>0<ng>>>0){a=a+1|0}ng=b;b=Lg+ng|0;Fg(Ig,b);a=q[Hg+12>>2];q[Hg+12>>2]=0;if(a){ij(a)}a=q[Hg>>2];if(a){q[Hg+4>>2]=a;ij(a)}T=Jg+32|0}function Lf(a,b,Fg,Mg){var Ng=0,Og=0,Pg=0,Qg=0,Rg=0,Sg=0,Tg=0,Ug=0,Vg=0,Wg=0,Xg=0,Yg=0,Zg=0,_g=0,$g=0,ah=0;Tg=T-32|0;T=Tg;if((Fg|0)>0){while(1){Yg=Qg;Qg=(Ng<<3)+b|0;Sg=q[Qg+4>>2];Pg=q[Qg>>2];Qg=!(Sg|Pg)?Yg:Ng;Og=Og+Sg|0;Sg=Pg+Ug|0;if(Sg>>>0<Pg>>>0){Og=Og+1|0}Ug=Sg;Ng=Ng+1|0;if((Ng|0)!=(Fg|0)){continue}break}}Sg=Qg+1|0;q[a+12>>2]=Sg;Pg=q[a>>2];Fg=q[a+4>>2]-Pg>>3;a:{if(Sg>>>0>Fg>>>0){Le(a,Sg-Fg|0);break a}if(Sg>>>0>=Fg>>>0){break a}q[a+4>>2]=Pg+(Sg<<3)}b:{c:{d:{e:{if((Qg|0)>=0){Xg=+(Ug>>>0)+4294967296*+(Og>>>0);Og=q[a>>2];Ng=0;while(1){Pg=Ng<<3;Ug=Pg+b|0;Fg=q[Ug+4>>2];Ug=q[Ug>>2];Zg=(Ug|0)!=0|(Fg|0)!=0;Pg=Og+Pg|0;Rg=(+(Ug>>>0)+4294967296*+(Fg>>>0))/Xg*1048576+.5;f:{if(Rg<4294967296&Rg>=0){Fg=~~Rg>>>0;break f}Fg=0}Fg=Zg?Fg?Fg:1:Fg;q[Pg>>2]=Fg;Vg=Fg+Vg|0;Fg=(Ng|0)==(Qg|0);Ng=Ng+1|0;if(!Fg){continue}break}if((Vg|0)==1048576){break e}}q[Tg+16>>2]=0;q[Tg+8>>2]=0;q[Tg+12>>2]=0;Pg=0;if(Sg){if(Sg>>>0>=1073741824){break b}Fg=Sg<<2;Pg=ui(Fg);q[Tg+8>>2]=Pg;Wg=Fg+Pg|0;q[Tg+16>>2]=Wg;pj(Pg,0,Fg);q[Tg+12>>2]=Wg}if((Qg|0)>-1){Ng=0;while(1){q[(Ng<<2)+Pg>>2]=Ng;Fg=(Ng|0)==(Qg|0);Ng=Ng+1|0;if(!Fg){continue}break}}q[Tg+24>>2]=a;ag(Pg,Wg,Tg+24|0);g:{if((Vg|0)<1048576){Fg=q[a>>2]+(q[q[Tg+12>>2]+ -4>>2]<<3)|0;q[Fg>>2]=(q[Fg>>2]-Vg|0)- -1048576;Ng=0;break g}Fg=Vg+ -1048576|0;Sg=q[Tg+8>>2];Ug=(Qg|0)<1;while(1){h:{if(Ug){break h}Rg=1048576/+(Vg|0);Wg=q[a>>2];Pg=Qg;while(1){Ng=Wg+(q[(Pg<<2)+Sg>>2]<<3)|0;Og=q[Ng>>2];if(Og>>>0<=1){if((Pg|0)!=(Qg|0)){break h}Ng=1;break g}Zg=Og+ -1|0;Yg=Ng;$g=Og;ah=Fg;Ng=Og;Xg=C(Rg*+(Og>>>0));i:{if(y(Xg)<2147483648){_g=~~Xg;break i}_g=-2147483648}Ng=Ng-_g|0;Ng=Ng?Ng:1;Og=(Ng|0)<(Og|0)?Ng:Zg;Og=(Og|0)>(Fg|0)?ah:Og;q[Yg>>2]=$g-Og;Fg=Fg-Og|0;Vg=Vg-Og|0;if((Vg|0)==1048576){Vg=1048576;break h}Og=(Pg|0)>1;Pg=Pg+ -1|0;if(Og){continue}break}}Ng=0;if((Fg|0)>0){continue}break}}Fg=q[Tg+8>>2];if(Fg){q[Tg+12>>2]=Fg;ij(Fg)}if(Ng){break c}if((Qg|0)>=0){break d}break c}if((Qg|0)<0){break c}}Og=q[a>>2];Ng=0;Fg=0;while(1){Pg=Og+(Ng<<3)|0;q[Pg+4>>2]=Fg;Fg=q[Pg>>2]+Fg|0;Pg=(Ng|0)==(Qg|0);Ng=Ng+1|0;if(!Pg){continue}break}if((Fg|0)!=1048576){break c}Ng=0;Rg=0;if((Qg|0)>=0){Fg=q[a>>2];while(1){Og=Ng<<3;Pg=q[Og+Fg>>2];if(Pg){Og=b+Og|0;Rg=Rg+lj(+(Pg>>>0)*9.5367431640625e-7)*(+t[Og>>2]+4294967296*+t[Og+4>>2])}Og=(Ng|0)==(Qg|0);Ng=Ng+1|0;if(!Og){continue}break}}b=a;Fg=a;Rg=D(-Rg);j:{if(Rg<0x10000000000000000&Rg>=0){Og=y(Rg)>=1?Rg>0?~~A(C(Rg/4294967296),4294967295)>>>0:~~D((Rg- +(~~Rg>>>0>>>0))/4294967296)>>>0:0;Qg=~~Rg>>>0;break j}Og=0;Qg=0}q[Fg+16>>2]=Qg;q[b+20>>2]=Og;lf(a,Mg)}T=Tg+32|0;return}Gi();F()}function Mf(a,b,Fg,Mg){var bh=0,ch=0,dh=0,eh=0,fh=0,gh=0,hh=0,ih=0,jh=0,kh=0,lh=0,mh=0,nh=0,oh=0,ph=0,qh=0;hh=T-32|0;T=hh;if((Fg|0)>0){while(1){mh=eh;eh=(bh<<3)+b|0;gh=q[eh+4>>2];dh=q[eh>>2];eh=!(gh|dh)?mh:bh;ch=ch+gh|0;gh=dh+ih|0;if(gh>>>0<dh>>>0){ch=ch+1|0}ih=gh;bh=bh+1|0;if((bh|0)!=(Fg|0)){continue}break}}gh=eh+1|0;q[a+12>>2]=gh;dh=q[a>>2];Fg=q[a+4>>2]-dh>>3;a:{if(gh>>>0>Fg>>>0){Le(a,gh-Fg|0);break a}if(gh>>>0>=Fg>>>0){break a}q[a+4>>2]=dh+(gh<<3)}b:{c:{d:{e:{if((eh|0)>=0){lh=+(ih>>>0)+4294967296*+(ch>>>0);ch=q[a>>2];bh=0;while(1){dh=bh<<3;ih=dh+b|0;Fg=q[ih+4>>2];ih=q[ih>>2];nh=(ih|0)!=0|(Fg|0)!=0;dh=ch+dh|0;fh=(+(ih>>>0)+4294967296*+(Fg>>>0))/lh*1048576+.5;f:{if(fh<4294967296&fh>=0){Fg=~~fh>>>0;break f}Fg=0}Fg=nh?Fg?Fg:1:Fg;q[dh>>2]=Fg;jh=Fg+jh|0;Fg=(bh|0)==(eh|0);bh=bh+1|0;if(!Fg){continue}break}if((jh|0)==1048576){break e}}q[hh+16>>2]=0;q[hh+8>>2]=0;q[hh+12>>2]=0;dh=0;if(gh){if(gh>>>0>=1073741824){break b}Fg=gh<<2;dh=ui(Fg);q[hh+8>>2]=dh;kh=Fg+dh|0;q[hh+16>>2]=kh;pj(dh,0,Fg);q[hh+12>>2]=kh}if((eh|0)>-1){bh=0;while(1){q[(bh<<2)+dh>>2]=bh;Fg=(bh|0)==(eh|0);bh=bh+1|0;if(!Fg){continue}break}}q[hh+24>>2]=a;bg(dh,kh,hh+24|0);g:{if((jh|0)<1048576){Fg=q[a>>2]+(q[q[hh+12>>2]+ -4>>2]<<3)|0;q[Fg>>2]=(q[Fg>>2]-jh|0)- -1048576;bh=0;break g}Fg=jh+ -1048576|0;gh=q[hh+8>>2];ih=(eh|0)<1;while(1){h:{if(ih){break h}fh=1048576/+(jh|0);kh=q[a>>2];dh=eh;while(1){bh=kh+(q[(dh<<2)+gh>>2]<<3)|0;ch=q[bh>>2];if(ch>>>0<=1){if((dh|0)!=(eh|0)){break h}bh=1;break g}nh=ch+ -1|0;mh=bh;ph=ch;qh=Fg;bh=ch;lh=C(fh*+(ch>>>0));i:{if(y(lh)<2147483648){oh=~~lh;break i}oh=-2147483648}bh=bh-oh|0;bh=bh?bh:1;ch=(bh|0)<(ch|0)?bh:nh;ch=(ch|0)>(Fg|0)?qh:ch;q[mh>>2]=ph-ch;Fg=Fg-ch|0;jh=jh-ch|0;if((jh|0)==1048576){jh=1048576;break h}ch=(dh|0)>1;dh=dh+ -1|0;if(ch){continue}break}}bh=0;if((Fg|0)>0){continue}break}}Fg=q[hh+8>>2];if(Fg){q[hh+12>>2]=Fg;ij(Fg)}if(bh){break c}if((eh|0)>=0){break d}break c}if((eh|0)<0){break c}}ch=q[a>>2];bh=0;Fg=0;while(1){dh=ch+(bh<<3)|0;q[dh+4>>2]=Fg;Fg=q[dh>>2]+Fg|0;dh=(bh|0)==(eh|0);bh=bh+1|0;if(!dh){continue}break}if((Fg|0)!=1048576){break c}bh=0;fh=0;if((eh|0)>=0){Fg=q[a>>2];while(1){ch=bh<<3;dh=q[ch+Fg>>2];if(dh){ch=b+ch|0;fh=fh+lj(+(dh>>>0)*9.5367431640625e-7)*(+t[ch>>2]+4294967296*+t[ch+4>>2])}ch=(bh|0)==(eh|0);bh=bh+1|0;if(!ch){continue}break}}b=a;Fg=a;fh=D(-fh);j:{if(fh<0x10000000000000000&fh>=0){ch=y(fh)>=1?fh>0?~~A(C(fh/4294967296),4294967295)>>>0:~~D((fh- +(~~fh>>>0>>>0))/4294967296)>>>0:0;eh=~~fh>>>0;break j}ch=0;eh=0}q[Fg+16>>2]=eh;q[b+20>>2]=ch;lf(a,Mg)}T=hh+32|0;return}Gi();F()}function Nf(a,b,Fg,Mg){var rh=0,sh=0,th=0,uh=0,vh=0,wh=0,xh=0,yh=0,zh=0,Ah=0,Bh=0,Ch=0,Dh=0,Eh=0,Fh=0,Gh=0;xh=T-32|0;T=xh;if((Fg|0)>0){while(1){Ch=uh;uh=(rh<<3)+b|0;wh=q[uh+4>>2];th=q[uh>>2];uh=!(wh|th)?Ch:rh;sh=sh+wh|0;wh=th+yh|0;if(wh>>>0<th>>>0){sh=sh+1|0}yh=wh;rh=rh+1|0;if((rh|0)!=(Fg|0)){continue}break}}wh=uh+1|0;q[a+12>>2]=wh;th=q[a>>2];Fg=q[a+4>>2]-th>>3;a:{if(wh>>>0>Fg>>>0){Le(a,wh-Fg|0);break a}if(wh>>>0>=Fg>>>0){break a}q[a+4>>2]=th+(wh<<3)}b:{c:{d:{e:{if((uh|0)>=0){Bh=+(yh>>>0)+4294967296*+(sh>>>0);sh=q[a>>2];rh=0;while(1){th=rh<<3;yh=th+b|0;Fg=q[yh+4>>2];yh=q[yh>>2];Dh=(yh|0)!=0|(Fg|0)!=0;th=sh+th|0;vh=(+(yh>>>0)+4294967296*+(Fg>>>0))/Bh*1048576+.5;f:{if(vh<4294967296&vh>=0){Fg=~~vh>>>0;break f}Fg=0}Fg=Dh?Fg?Fg:1:Fg;q[th>>2]=Fg;zh=Fg+zh|0;Fg=(rh|0)==(uh|0);rh=rh+1|0;if(!Fg){continue}break}if((zh|0)==1048576){break e}}q[xh+16>>2]=0;q[xh+8>>2]=0;q[xh+12>>2]=0;th=0;if(wh){if(wh>>>0>=1073741824){break b}Fg=wh<<2;th=ui(Fg);q[xh+8>>2]=th;Ah=Fg+th|0;q[xh+16>>2]=Ah;pj(th,0,Fg);q[xh+12>>2]=Ah}if((uh|0)>-1){rh=0;while(1){q[(rh<<2)+th>>2]=rh;Fg=(rh|0)==(uh|0);rh=rh+1|0;if(!Fg){continue}break}}q[xh+24>>2]=a;cg(th,Ah,xh+24|0);g:{if((zh|0)<1048576){Fg=q[a>>2]+(q[q[xh+12>>2]+ -4>>2]<<3)|0;q[Fg>>2]=(q[Fg>>2]-zh|0)- -1048576;rh=0;break g}Fg=zh+ -1048576|0;wh=q[xh+8>>2];yh=(uh|0)<1;while(1){h:{if(yh){break h}vh=1048576/+(zh|0);Ah=q[a>>2];th=uh;while(1){rh=Ah+(q[(th<<2)+wh>>2]<<3)|0;sh=q[rh>>2];if(sh>>>0<=1){if((th|0)!=(uh|0)){break h}rh=1;break g}Dh=sh+ -1|0;Ch=rh;Fh=sh;Gh=Fg;rh=sh;Bh=C(vh*+(sh>>>0));i:{if(y(Bh)<2147483648){Eh=~~Bh;break i}Eh=-2147483648}rh=rh-Eh|0;rh=rh?rh:1;sh=(rh|0)<(sh|0)?rh:Dh;sh=(sh|0)>(Fg|0)?Gh:sh;q[Ch>>2]=Fh-sh;Fg=Fg-sh|0;zh=zh-sh|0;if((zh|0)==1048576){zh=1048576;break h}sh=(th|0)>1;th=th+ -1|0;if(sh){continue}break}}rh=0;if((Fg|0)>0){continue}break}}Fg=q[xh+8>>2];if(Fg){q[xh+12>>2]=Fg;ij(Fg)}if(rh){break c}if((uh|0)>=0){break d}break c}if((uh|0)<0){break c}}sh=q[a>>2];rh=0;Fg=0;while(1){th=sh+(rh<<3)|0;q[th+4>>2]=Fg;Fg=q[th>>2]+Fg|0;th=(rh|0)==(uh|0);rh=rh+1|0;if(!th){continue}break}if((Fg|0)!=1048576){break c}rh=0;vh=0;if((uh|0)>=0){Fg=q[a>>2];while(1){sh=rh<<3;th=q[sh+Fg>>2];if(th){sh=b+sh|0;vh=vh+lj(+(th>>>0)*9.5367431640625e-7)*(+t[sh>>2]+4294967296*+t[sh+4>>2])}sh=(rh|0)==(uh|0);rh=rh+1|0;if(!sh){continue}break}}b=a;Fg=a;vh=D(-vh);j:{if(vh<0x10000000000000000&vh>=0){sh=y(vh)>=1?vh>0?~~A(C(vh/4294967296),4294967295)>>>0:~~D((vh- +(~~vh>>>0>>>0))/4294967296)>>>0:0;uh=~~vh>>>0;break j}sh=0;uh=0}q[Fg+16>>2]=uh;q[b+20>>2]=sh;lf(a,Mg)}T=xh+32|0;return}Gi();F()}function Of(a,b,Fg,Mg){var Hh=0,Ih=0,Jh=0,Kh=0,Lh=0,Mh=0,Nh=0,Oh=0,Ph=0,Qh=0,Rh=0,Sh=0,Th=0,Uh=0,Vh=0,Wh=0;Nh=T-32|0;T=Nh;if((Fg|0)>0){while(1){Sh=Kh;Kh=(Hh<<3)+b|0;Mh=q[Kh+4>>2];Jh=q[Kh>>2];Kh=!(Mh|Jh)?Sh:Hh;Ih=Ih+Mh|0;Mh=Jh+Oh|0;if(Mh>>>0<Jh>>>0){Ih=Ih+1|0}Oh=Mh;Hh=Hh+1|0;if((Hh|0)!=(Fg|0)){continue}break}}Mh=Kh+1|0;q[a+12>>2]=Mh;Jh=q[a>>2];Fg=q[a+4>>2]-Jh>>3;a:{if(Mh>>>0>Fg>>>0){Le(a,Mh-Fg|0);break a}if(Mh>>>0>=Fg>>>0){break a}q[a+4>>2]=Jh+(Mh<<3)}b:{c:{d:{e:{if((Kh|0)>=0){Rh=+(Oh>>>0)+4294967296*+(Ih>>>0);Ih=q[a>>2];Hh=0;while(1){Jh=Hh<<3;Oh=Jh+b|0;Fg=q[Oh+4>>2];Oh=q[Oh>>2];Th=(Oh|0)!=0|(Fg|0)!=0;Jh=Ih+Jh|0;Lh=(+(Oh>>>0)+4294967296*+(Fg>>>0))/Rh*1048576+.5;f:{if(Lh<4294967296&Lh>=0){Fg=~~Lh>>>0;break f}Fg=0}Fg=Th?Fg?Fg:1:Fg;q[Jh>>2]=Fg;Ph=Fg+Ph|0;Fg=(Hh|0)==(Kh|0);Hh=Hh+1|0;if(!Fg){continue}break}if((Ph|0)==1048576){break e}}q[Nh+16>>2]=0;q[Nh+8>>2]=0;q[Nh+12>>2]=0;Jh=0;if(Mh){if(Mh>>>0>=1073741824){break b}Fg=Mh<<2;Jh=ui(Fg);q[Nh+8>>2]=Jh;Qh=Fg+Jh|0;q[Nh+16>>2]=Qh;pj(Jh,0,Fg);q[Nh+12>>2]=Qh}if((Kh|0)>-1){Hh=0;while(1){q[(Hh<<2)+Jh>>2]=Hh;Fg=(Hh|0)==(Kh|0);Hh=Hh+1|0;if(!Fg){continue}break}}q[Nh+24>>2]=a;dg(Jh,Qh,Nh+24|0);g:{if((Ph|0)<1048576){Fg=q[a>>2]+(q[q[Nh+12>>2]+ -4>>2]<<3)|0;q[Fg>>2]=(q[Fg>>2]-Ph|0)- -1048576;Hh=0;break g}Fg=Ph+ -1048576|0;Mh=q[Nh+8>>2];Oh=(Kh|0)<1;while(1){h:{if(Oh){break h}Lh=1048576/+(Ph|0);Qh=q[a>>2];Jh=Kh;while(1){Hh=Qh+(q[(Jh<<2)+Mh>>2]<<3)|0;Ih=q[Hh>>2];if(Ih>>>0<=1){if((Jh|0)!=(Kh|0)){break h}Hh=1;break g}Th=Ih+ -1|0;Sh=Hh;Vh=Ih;Wh=Fg;Hh=Ih;Rh=C(Lh*+(Ih>>>0));i:{if(y(Rh)<2147483648){Uh=~~Rh;break i}Uh=-2147483648}Hh=Hh-Uh|0;Hh=Hh?Hh:1;Ih=(Hh|0)<(Ih|0)?Hh:Th;Ih=(Ih|0)>(Fg|0)?Wh:Ih;q[Sh>>2]=Vh-Ih;Fg=Fg-Ih|0;Ph=Ph-Ih|0;if((Ph|0)==1048576){Ph=1048576;break h}Ih=(Jh|0)>1;Jh=Jh+ -1|0;if(Ih){continue}break}}Hh=0;if((Fg|0)>0){continue}break}}Fg=q[Nh+8>>2];if(Fg){q[Nh+12>>2]=Fg;ij(Fg)}if(Hh){break c}if((Kh|0)>=0){break d}break c}if((Kh|0)<0){break c}}Ih=q[a>>2];Hh=0;Fg=0;while(1){Jh=Ih+(Hh<<3)|0;q[Jh+4>>2]=Fg;Fg=q[Jh>>2]+Fg|0;Jh=(Hh|0)==(Kh|0);Hh=Hh+1|0;if(!Jh){continue}break}if((Fg|0)!=1048576){break c}Hh=0;Lh=0;if((Kh|0)>=0){Fg=q[a>>2];while(1){Ih=Hh<<3;Jh=q[Ih+Fg>>2];if(Jh){Ih=b+Ih|0;Lh=Lh+lj(+(Jh>>>0)*9.5367431640625e-7)*(+t[Ih>>2]+4294967296*+t[Ih+4>>2])}Ih=(Hh|0)==(Kh|0);Hh=Hh+1|0;if(!Ih){continue}break}}b=a;Fg=a;Lh=D(-Lh);j:{if(Lh<0x10000000000000000&Lh>=0){Ih=y(Lh)>=1?Lh>0?~~A(C(Lh/4294967296),4294967295)>>>0:~~D((Lh- +(~~Lh>>>0>>>0))/4294967296)>>>0:0;Kh=~~Lh>>>0;break j}Ih=0;Kh=0}q[Fg+16>>2]=Kh;q[b+20>>2]=Ih;lf(a,Mg)}T=Nh+32|0;return}Gi();F()}function Pf(a,b,Fg){var Mg=0,Xh=0,Yh=0,Zh=0,_h=0,$h=0,ai=0,bi=0,ci=0,di=0,ei=0;a:{b:while(1){ci=b+ -4|0;c:while(1){Yh=a;d:while(1){e:{f:{g:{h:{Mg=b-Yh|0;a=Mg>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;Mg=b+ -4|0;b=q[Mg>>2];if(Fg>>>0<=b>>>0){break h}ci=Fg;Fg=q[Yh>>2];if(ci>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[Yh>>2]=b;q[Mg>>2]=Fg;return;case 2:nf(Yh,Yh+4|0,Yh+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of(Yh,Yh+4|0,Yh+8|0,Yh+12|0,b+ -4|0,Fg);return}if((Mg|0)<=123){pf(Yh,b,Fg);return}$h=((a|0)/2<<2)+Yh|0;j:{if((Mg|0)>=3997){a=(a|0)/4<<2;bi=of(Yh,a+Yh|0,$h,a+$h|0,ci,Fg);break j}bi=qf(Yh,$h,ci,Fg)}a=q[Fg>>2];_h=q[a>>2];Zh=q[a+4>>2]-_h>>3;a=q[Yh>>2];if(Zh>>>0<=a>>>0){break e}Mg=q[$h>>2];if(Zh>>>0<=Mg>>>0){break e}Xh=ci;ai=q[_h+(a<<3)>>2];di=q[_h+(Mg<<3)>>2];if(ai>>>0>=di>>>0){while(1){Xh=Xh+ -4|0;if((Xh|0)==(Yh|0)){a=q[ci>>2];if(Zh>>>0<=a>>>0){break e}Mg=Yh+4|0;if(ai>>>0<t[_h+(a<<3)>>2]){break f}if((Mg|0)==(ci|0)){break a}while(1){Xh=q[Mg>>2];if(Zh>>>0<=Xh>>>0){break e}if(ai>>>0<t[_h+(Xh<<3)>>2]){q[Mg>>2]=a;q[ci>>2]=Xh;Mg=Mg+4|0;break f}Mg=Mg+4|0;if((ci|0)!=(Mg|0)){continue}break}break a}Mg=q[Xh>>2];if(Zh>>>0<=Mg>>>0){break e}if(t[_h+(Mg<<3)>>2]>=di>>>0){continue}break}q[Yh>>2]=Mg;q[Xh>>2]=a;bi=bi+1|0}k:{Mg=Yh+4|0;if(Mg>>>0>=Xh>>>0){break k}a=q[Mg>>2];if(Zh>>>0<=a>>>0){break e}while(1){ai=q[$h>>2];di=_h+(ai<<3)|0;while(1){if(Zh>>>0<=ai>>>0){break e}ei=q[di>>2];if(t[_h+(a<<3)>>2]<ei>>>0){a=q[Mg+4>>2];Mg=Mg+4|0;if(Zh>>>0>a>>>0){continue}break e}break}while(1){Xh=Xh+ -4|0;ai=q[Xh>>2];if(Zh>>>0<=ai>>>0){break e}if(t[_h+(ai<<3)>>2]>=ei>>>0){continue}break}if(Mg>>>0>Xh>>>0){break k}q[Mg>>2]=ai;q[Xh>>2]=a;$h=(Mg|0)==($h|0)?Xh:$h;bi=bi+1|0;a=q[Mg+4>>2];Mg=Mg+4|0;if(Zh>>>0>a>>>0){continue}break}break e}l:{if((Mg|0)==($h|0)){break l}a=q[$h>>2];if(Zh>>>0<=a>>>0){break e}Xh=q[Mg>>2];if(Zh>>>0<=Xh>>>0){break e}if(t[_h+(a<<3)>>2]>=t[_h+(Xh<<3)>>2]){break l}q[Mg>>2]=a;q[$h>>2]=Xh;bi=bi+1|0}if(!bi){Xh=rf(Yh,Mg,Fg);a=Mg+4|0;if(rf(a,b,Fg)){b=Mg;a=Yh;if(!Xh){continue b}break a}if(Xh){continue c}}if((Mg-Yh|0)<(b-Mg|0)){Pf(Yh,Mg,Fg);a=Mg+4|0;continue c}Pf(Mg+4|0,b,Fg);b=Mg;a=Yh;continue b}Hi();F()}qf(Yh,Yh+4|0,b+ -4|0,Fg);break a}if((Mg|0)==(ci|0)){break a}a=ci;Xh=q[Yh>>2];if(Zh>>>0<=Xh>>>0){break e}while(1){$h=_h+(Xh<<3)|0;while(1){bi=q[Mg>>2];if(Zh>>>0<=bi>>>0){break e}ai=q[$h>>2];if(ai>>>0>=t[_h+(bi<<3)>>2]){Mg=Mg+4|0;if(Zh>>>0>Xh>>>0){continue}break e}break}while(1){a=a+ -4|0;Xh=q[a>>2];if(Zh>>>0<=Xh>>>0){break e}if(ai>>>0<t[_h+(Xh<<3)>>2]){continue}break}if(Mg>>>0>=a>>>0){Yh=Mg;continue d}q[Mg>>2]=Xh;q[a>>2]=bi;Mg=Mg+4|0;Xh=q[Yh>>2];if(Zh>>>0>Xh>>>0){continue}break}}break}break}break}Hi();F()}}function Qf(a,b,Fg){var fi=0,gi=0,hi=0,ii=0,ji=0,ki=0,li=0,mi=0,ni=0,oi=0,pi=0;a:{b:while(1){ni=b+ -4|0;c:while(1){hi=a;d:while(1){e:{f:{g:{h:{fi=b-hi|0;a=fi>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;fi=b+ -4|0;b=q[fi>>2];if(Fg>>>0<=b>>>0){break h}ni=Fg;Fg=q[hi>>2];if(ni>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[hi>>2]=b;q[fi>>2]=Fg;return;case 2:nf(hi,hi+4|0,hi+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of(hi,hi+4|0,hi+8|0,hi+12|0,b+ -4|0,Fg);return}if((fi|0)<=123){pf(hi,b,Fg);return}ki=((a|0)/2<<2)+hi|0;j:{if((fi|0)>=3997){a=(a|0)/4<<2;mi=of(hi,a+hi|0,ki,a+ki|0,ni,Fg);break j}mi=qf(hi,ki,ni,Fg)}a=q[Fg>>2];ji=q[a>>2];ii=q[a+4>>2]-ji>>3;a=q[hi>>2];if(ii>>>0<=a>>>0){break e}fi=q[ki>>2];if(ii>>>0<=fi>>>0){break e}gi=ni;li=q[ji+(a<<3)>>2];oi=q[ji+(fi<<3)>>2];if(li>>>0>=oi>>>0){while(1){gi=gi+ -4|0;if((gi|0)==(hi|0)){a=q[ni>>2];if(ii>>>0<=a>>>0){break e}fi=hi+4|0;if(li>>>0<t[ji+(a<<3)>>2]){break f}if((fi|0)==(ni|0)){break a}while(1){gi=q[fi>>2];if(ii>>>0<=gi>>>0){break e}if(li>>>0<t[ji+(gi<<3)>>2]){q[fi>>2]=a;q[ni>>2]=gi;fi=fi+4|0;break f}fi=fi+4|0;if((ni|0)!=(fi|0)){continue}break}break a}fi=q[gi>>2];if(ii>>>0<=fi>>>0){break e}if(t[ji+(fi<<3)>>2]>=oi>>>0){continue}break}q[hi>>2]=fi;q[gi>>2]=a;mi=mi+1|0}k:{fi=hi+4|0;if(fi>>>0>=gi>>>0){break k}a=q[fi>>2];if(ii>>>0<=a>>>0){break e}while(1){li=q[ki>>2];oi=ji+(li<<3)|0;while(1){if(ii>>>0<=li>>>0){break e}pi=q[oi>>2];if(t[ji+(a<<3)>>2]<pi>>>0){a=q[fi+4>>2];fi=fi+4|0;if(ii>>>0>a>>>0){continue}break e}break}while(1){gi=gi+ -4|0;li=q[gi>>2];if(ii>>>0<=li>>>0){break e}if(t[ji+(li<<3)>>2]>=pi>>>0){continue}break}if(fi>>>0>gi>>>0){break k}q[fi>>2]=li;q[gi>>2]=a;ki=(fi|0)==(ki|0)?gi:ki;mi=mi+1|0;a=q[fi+4>>2];fi=fi+4|0;if(ii>>>0>a>>>0){continue}break}break e}l:{if((fi|0)==(ki|0)){break l}a=q[ki>>2];if(ii>>>0<=a>>>0){break e}gi=q[fi>>2];if(ii>>>0<=gi>>>0){break e}if(t[ji+(a<<3)>>2]>=t[ji+(gi<<3)>>2]){break l}q[fi>>2]=a;q[ki>>2]=gi;mi=mi+1|0}if(!mi){gi=rf(hi,fi,Fg);a=fi+4|0;if(rf(a,b,Fg)){b=fi;a=hi;if(!gi){continue b}break a}if(gi){continue c}}if((fi-hi|0)<(b-fi|0)){Qf(hi,fi,Fg);a=fi+4|0;continue c}Qf(fi+4|0,b,Fg);b=fi;a=hi;continue b}Hi();F()}qf(hi,hi+4|0,b+ -4|0,Fg);break a}if((fi|0)==(ni|0)){break a}a=ni;gi=q[hi>>2];if(ii>>>0<=gi>>>0){break e}while(1){ki=ji+(gi<<3)|0;while(1){mi=q[fi>>2];if(ii>>>0<=mi>>>0){break e}li=q[ki>>2];if(li>>>0>=t[ji+(mi<<3)>>2]){fi=fi+4|0;if(ii>>>0>gi>>>0){continue}break e}break}while(1){a=a+ -4|0;gi=q[a>>2];if(ii>>>0<=gi>>>0){break e}if(li>>>0<t[ji+(gi<<3)>>2]){continue}break}if(fi>>>0>=a>>>0){hi=fi;continue d}q[fi>>2]=gi;q[a>>2]=mi;fi=fi+4|0;gi=q[hi>>2];if(ii>>>0>gi>>>0){continue}break}}break}break}break}Hi();F()}}function Rf(a,b,Fg){var qi=0,ri=0,si=0,ti=0,ui=0,vi=0,wi=0,xi=0,yi=0,zi=0,Ai=0;a:{b:while(1){yi=b+ -4|0;c:while(1){si=a;d:while(1){e:{f:{g:{h:{qi=b-si|0;a=qi>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;qi=b+ -4|0;b=q[qi>>2];if(Fg>>>0<=b>>>0){break h}yi=Fg;Fg=q[si>>2];if(yi>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[si>>2]=b;q[qi>>2]=Fg;return;case 2:nf(si,si+4|0,si+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of(si,si+4|0,si+8|0,si+12|0,b+ -4|0,Fg);return}if((qi|0)<=123){pf(si,b,Fg);return}vi=((a|0)/2<<2)+si|0;j:{if((qi|0)>=3997){a=(a|0)/4<<2;xi=of(si,a+si|0,vi,a+vi|0,yi,Fg);break j}xi=qf(si,vi,yi,Fg)}a=q[Fg>>2];ui=q[a>>2];ti=q[a+4>>2]-ui>>3;a=q[si>>2];if(ti>>>0<=a>>>0){break e}qi=q[vi>>2];if(ti>>>0<=qi>>>0){break e}ri=yi;wi=q[ui+(a<<3)>>2];zi=q[ui+(qi<<3)>>2];if(wi>>>0>=zi>>>0){while(1){ri=ri+ -4|0;if((ri|0)==(si|0)){a=q[yi>>2];if(ti>>>0<=a>>>0){break e}qi=si+4|0;if(wi>>>0<t[ui+(a<<3)>>2]){break f}if((qi|0)==(yi|0)){break a}while(1){ri=q[qi>>2];if(ti>>>0<=ri>>>0){break e}if(wi>>>0<t[ui+(ri<<3)>>2]){q[qi>>2]=a;q[yi>>2]=ri;qi=qi+4|0;break f}qi=qi+4|0;if((yi|0)!=(qi|0)){continue}break}break a}qi=q[ri>>2];if(ti>>>0<=qi>>>0){break e}if(t[ui+(qi<<3)>>2]>=zi>>>0){continue}break}q[si>>2]=qi;q[ri>>2]=a;xi=xi+1|0}k:{qi=si+4|0;if(qi>>>0>=ri>>>0){break k}a=q[qi>>2];if(ti>>>0<=a>>>0){break e}while(1){wi=q[vi>>2];zi=ui+(wi<<3)|0;while(1){if(ti>>>0<=wi>>>0){break e}Ai=q[zi>>2];if(t[ui+(a<<3)>>2]<Ai>>>0){a=q[qi+4>>2];qi=qi+4|0;if(ti>>>0>a>>>0){continue}break e}break}while(1){ri=ri+ -4|0;wi=q[ri>>2];if(ti>>>0<=wi>>>0){break e}if(t[ui+(wi<<3)>>2]>=Ai>>>0){continue}break}if(qi>>>0>ri>>>0){break k}q[qi>>2]=wi;q[ri>>2]=a;vi=(qi|0)==(vi|0)?ri:vi;xi=xi+1|0;a=q[qi+4>>2];qi=qi+4|0;if(ti>>>0>a>>>0){continue}break}break e}l:{if((qi|0)==(vi|0)){break l}a=q[vi>>2];if(ti>>>0<=a>>>0){break e}ri=q[qi>>2];if(ti>>>0<=ri>>>0){break e}if(t[ui+(a<<3)>>2]>=t[ui+(ri<<3)>>2]){break l}q[qi>>2]=a;q[vi>>2]=ri;xi=xi+1|0}if(!xi){ri=rf(si,qi,Fg);a=qi+4|0;if(rf(a,b,Fg)){b=qi;a=si;if(!ri){continue b}break a}if(ri){continue c}}if((qi-si|0)<(b-qi|0)){Rf(si,qi,Fg);a=qi+4|0;continue c}Rf(qi+4|0,b,Fg);b=qi;a=si;continue b}Hi();F()}qf(si,si+4|0,b+ -4|0,Fg);break a}if((qi|0)==(yi|0)){break a}a=yi;ri=q[si>>2];if(ti>>>0<=ri>>>0){break e}while(1){vi=ui+(ri<<3)|0;while(1){xi=q[qi>>2];if(ti>>>0<=xi>>>0){break e}wi=q[vi>>2];if(wi>>>0>=t[ui+(xi<<3)>>2]){qi=qi+4|0;if(ti>>>0>ri>>>0){continue}break e}break}while(1){a=a+ -4|0;ri=q[a>>2];if(ti>>>0<=ri>>>0){break e}if(wi>>>0<t[ui+(ri<<3)>>2]){continue}break}if(qi>>>0>=a>>>0){si=qi;continue d}q[qi>>2]=ri;q[a>>2]=xi;qi=qi+4|0;ri=q[si>>2];if(ti>>>0>ri>>>0){continue}break}}break}break}break}Hi();F()}}function Sf(a,b,Fg){var Bi=0,Ci=0,Di=0,Ei=0,Fi=0,Gi=0,Ii=0,Ji=0,Ki=0,Li=0,Mi=0;a:{b:while(1){Ki=b+ -4|0;c:while(1){Di=a;d:while(1){e:{f:{g:{h:{Bi=b-Di|0;a=Bi>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;Bi=b+ -4|0;b=q[Bi>>2];if(Fg>>>0<=b>>>0){break h}Ki=Fg;Fg=q[Di>>2];if(Ki>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[Di>>2]=b;q[Bi>>2]=Fg;return;case 2:nf(Di,Di+4|0,Di+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of(Di,Di+4|0,Di+8|0,Di+12|0,b+ -4|0,Fg);return}if((Bi|0)<=123){pf(Di,b,Fg);return}Gi=((a|0)/2<<2)+Di|0;j:{if((Bi|0)>=3997){a=(a|0)/4<<2;Ji=of(Di,a+Di|0,Gi,a+Gi|0,Ki,Fg);break j}Ji=qf(Di,Gi,Ki,Fg)}a=q[Fg>>2];Fi=q[a>>2];Ei=q[a+4>>2]-Fi>>3;a=q[Di>>2];if(Ei>>>0<=a>>>0){break e}Bi=q[Gi>>2];if(Ei>>>0<=Bi>>>0){break e}Ci=Ki;Ii=q[Fi+(a<<3)>>2];Li=q[Fi+(Bi<<3)>>2];if(Ii>>>0>=Li>>>0){while(1){Ci=Ci+ -4|0;if((Ci|0)==(Di|0)){a=q[Ki>>2];if(Ei>>>0<=a>>>0){break e}Bi=Di+4|0;if(Ii>>>0<t[Fi+(a<<3)>>2]){break f}if((Bi|0)==(Ki|0)){break a}while(1){Ci=q[Bi>>2];if(Ei>>>0<=Ci>>>0){break e}if(Ii>>>0<t[Fi+(Ci<<3)>>2]){q[Bi>>2]=a;q[Ki>>2]=Ci;Bi=Bi+4|0;break f}Bi=Bi+4|0;if((Ki|0)!=(Bi|0)){continue}break}break a}Bi=q[Ci>>2];if(Ei>>>0<=Bi>>>0){break e}if(t[Fi+(Bi<<3)>>2]>=Li>>>0){continue}break}q[Di>>2]=Bi;q[Ci>>2]=a;Ji=Ji+1|0}k:{Bi=Di+4|0;if(Bi>>>0>=Ci>>>0){break k}a=q[Bi>>2];if(Ei>>>0<=a>>>0){break e}while(1){Ii=q[Gi>>2];Li=Fi+(Ii<<3)|0;while(1){if(Ei>>>0<=Ii>>>0){break e}Mi=q[Li>>2];if(t[Fi+(a<<3)>>2]<Mi>>>0){a=q[Bi+4>>2];Bi=Bi+4|0;if(Ei>>>0>a>>>0){continue}break e}break}while(1){Ci=Ci+ -4|0;Ii=q[Ci>>2];if(Ei>>>0<=Ii>>>0){break e}if(t[Fi+(Ii<<3)>>2]>=Mi>>>0){continue}break}if(Bi>>>0>Ci>>>0){break k}q[Bi>>2]=Ii;q[Ci>>2]=a;Gi=(Bi|0)==(Gi|0)?Ci:Gi;Ji=Ji+1|0;a=q[Bi+4>>2];Bi=Bi+4|0;if(Ei>>>0>a>>>0){continue}break}break e}l:{if((Bi|0)==(Gi|0)){break l}a=q[Gi>>2];if(Ei>>>0<=a>>>0){break e}Ci=q[Bi>>2];if(Ei>>>0<=Ci>>>0){break e}if(t[Fi+(a<<3)>>2]>=t[Fi+(Ci<<3)>>2]){break l}q[Bi>>2]=a;q[Gi>>2]=Ci;Ji=Ji+1|0}if(!Ji){Ci=rf(Di,Bi,Fg);a=Bi+4|0;if(rf(a,b,Fg)){b=Bi;a=Di;if(!Ci){continue b}break a}if(Ci){continue c}}if((Bi-Di|0)<(b-Bi|0)){Sf(Di,Bi,Fg);a=Bi+4|0;continue c}Sf(Bi+4|0,b,Fg);b=Bi;a=Di;continue b}Hi();F()}qf(Di,Di+4|0,b+ -4|0,Fg);break a}if((Bi|0)==(Ki|0)){break a}a=Ki;Ci=q[Di>>2];if(Ei>>>0<=Ci>>>0){break e}while(1){Gi=Fi+(Ci<<3)|0;while(1){Ji=q[Bi>>2];if(Ei>>>0<=Ji>>>0){break e}Ii=q[Gi>>2];if(Ii>>>0>=t[Fi+(Ji<<3)>>2]){Bi=Bi+4|0;if(Ei>>>0>Ci>>>0){continue}break e}break}while(1){a=a+ -4|0;Ci=q[a>>2];if(Ei>>>0<=Ci>>>0){break e}if(Ii>>>0<t[Fi+(Ci<<3)>>2]){continue}break}if(Bi>>>0>=a>>>0){Di=Bi;continue d}q[Bi>>2]=Ci;q[a>>2]=Ji;Bi=Bi+4|0;Ci=q[Di>>2];if(Ei>>>0>Ci>>>0){continue}break}}break}break}break}Hi();F()}}function Tf(a,b,Fg){var Ni=0,Oi=0,Pi=0,Qi=0,Ri=0,Si=0,Ti=0,Ui=0,Vi=0,Wi=0,Xi=0;a:{b:while(1){Vi=b+ -4|0;c:while(1){Pi=a;d:while(1){e:{f:{g:{h:{Ni=b-Pi|0;a=Ni>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;Ni=b+ -4|0;b=q[Ni>>2];if(Fg>>>0<=b>>>0){break h}Vi=Fg;Fg=q[Pi>>2];if(Vi>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[Pi>>2]=b;q[Ni>>2]=Fg;return;case 2:nf(Pi,Pi+4|0,Pi+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of(Pi,Pi+4|0,Pi+8|0,Pi+12|0,b+ -4|0,Fg);return}if((Ni|0)<=123){pf(Pi,b,Fg);return}Si=((a|0)/2<<2)+Pi|0;j:{if((Ni|0)>=3997){a=(a|0)/4<<2;Ui=of(Pi,a+Pi|0,Si,a+Si|0,Vi,Fg);break j}Ui=qf(Pi,Si,Vi,Fg)}a=q[Fg>>2];Ri=q[a>>2];Qi=q[a+4>>2]-Ri>>3;a=q[Pi>>2];if(Qi>>>0<=a>>>0){break e}Ni=q[Si>>2];if(Qi>>>0<=Ni>>>0){break e}Oi=Vi;Ti=q[Ri+(a<<3)>>2];Wi=q[Ri+(Ni<<3)>>2];if(Ti>>>0>=Wi>>>0){while(1){Oi=Oi+ -4|0;if((Oi|0)==(Pi|0)){a=q[Vi>>2];if(Qi>>>0<=a>>>0){break e}Ni=Pi+4|0;if(Ti>>>0<t[Ri+(a<<3)>>2]){break f}if((Ni|0)==(Vi|0)){break a}while(1){Oi=q[Ni>>2];if(Qi>>>0<=Oi>>>0){break e}if(Ti>>>0<t[Ri+(Oi<<3)>>2]){q[Ni>>2]=a;q[Vi>>2]=Oi;Ni=Ni+4|0;break f}Ni=Ni+4|0;if((Vi|0)!=(Ni|0)){continue}break}break a}Ni=q[Oi>>2];if(Qi>>>0<=Ni>>>0){break e}if(t[Ri+(Ni<<3)>>2]>=Wi>>>0){continue}break}q[Pi>>2]=Ni;q[Oi>>2]=a;Ui=Ui+1|0}k:{Ni=Pi+4|0;if(Ni>>>0>=Oi>>>0){break k}a=q[Ni>>2];if(Qi>>>0<=a>>>0){break e}while(1){Ti=q[Si>>2];Wi=Ri+(Ti<<3)|0;while(1){if(Qi>>>0<=Ti>>>0){break e}Xi=q[Wi>>2];if(t[Ri+(a<<3)>>2]<Xi>>>0){a=q[Ni+4>>2];Ni=Ni+4|0;if(Qi>>>0>a>>>0){continue}break e}break}while(1){Oi=Oi+ -4|0;Ti=q[Oi>>2];if(Qi>>>0<=Ti>>>0){break e}if(t[Ri+(Ti<<3)>>2]>=Xi>>>0){continue}break}if(Ni>>>0>Oi>>>0){break k}q[Ni>>2]=Ti;q[Oi>>2]=a;Si=(Ni|0)==(Si|0)?Oi:Si;Ui=Ui+1|0;a=q[Ni+4>>2];Ni=Ni+4|0;if(Qi>>>0>a>>>0){continue}break}break e}l:{if((Ni|0)==(Si|0)){break l}a=q[Si>>2];if(Qi>>>0<=a>>>0){break e}Oi=q[Ni>>2];if(Qi>>>0<=Oi>>>0){break e}if(t[Ri+(a<<3)>>2]>=t[Ri+(Oi<<3)>>2]){break l}q[Ni>>2]=a;q[Si>>2]=Oi;Ui=Ui+1|0}if(!Ui){Oi=rf(Pi,Ni,Fg);a=Ni+4|0;if(rf(a,b,Fg)){b=Ni;a=Pi;if(!Oi){continue b}break a}if(Oi){continue c}}if((Ni-Pi|0)<(b-Ni|0)){Tf(Pi,Ni,Fg);a=Ni+4|0;continue c}Tf(Ni+4|0,b,Fg);b=Ni;a=Pi;continue b}Hi();F()}qf(Pi,Pi+4|0,b+ -4|0,Fg);break a}if((Ni|0)==(Vi|0)){break a}a=Vi;Oi=q[Pi>>2];if(Qi>>>0<=Oi>>>0){break e}while(1){Si=Ri+(Oi<<3)|0;while(1){Ui=q[Ni>>2];if(Qi>>>0<=Ui>>>0){break e}Ti=q[Si>>2];if(Ti>>>0>=t[Ri+(Ui<<3)>>2]){Ni=Ni+4|0;if(Qi>>>0>Oi>>>0){continue}break e}break}while(1){a=a+ -4|0;Oi=q[a>>2];if(Qi>>>0<=Oi>>>0){break e}if(Ti>>>0<t[Ri+(Oi<<3)>>2]){continue}break}if(Ni>>>0>=a>>>0){Pi=Ni;continue d}q[Ni>>2]=Oi;q[a>>2]=Ui;Ni=Ni+4|0;Oi=q[Pi>>2];if(Qi>>>0>Oi>>>0){continue}break}}break}break}break}Hi();F()}}function Uf(a,b,Fg){var Yi=0,Zi=0,_i=0,$i=0,aj=0,bj=0,cj=0,dj=0,ej=0,fj=0,gj=0;a:{b:while(1){ej=b+ -4|0;c:while(1){_i=a;d:while(1){e:{f:{g:{h:{Yi=b-_i|0;a=Yi>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;Yi=b+ -4|0;b=q[Yi>>2];if(Fg>>>0<=b>>>0){break h}ej=Fg;Fg=q[_i>>2];if(ej>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[_i>>2]=b;q[Yi>>2]=Fg;return;case 2:nf(_i,_i+4|0,_i+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of(_i,_i+4|0,_i+8|0,_i+12|0,b+ -4|0,Fg);return}if((Yi|0)<=123){pf(_i,b,Fg);return}bj=((a|0)/2<<2)+_i|0;j:{if((Yi|0)>=3997){a=(a|0)/4<<2;dj=of(_i,a+_i|0,bj,a+bj|0,ej,Fg);break j}dj=qf(_i,bj,ej,Fg)}a=q[Fg>>2];aj=q[a>>2];$i=q[a+4>>2]-aj>>3;a=q[_i>>2];if($i>>>0<=a>>>0){break e}Yi=q[bj>>2];if($i>>>0<=Yi>>>0){break e}Zi=ej;cj=q[aj+(a<<3)>>2];fj=q[aj+(Yi<<3)>>2];if(cj>>>0>=fj>>>0){while(1){Zi=Zi+ -4|0;if((Zi|0)==(_i|0)){a=q[ej>>2];if($i>>>0<=a>>>0){break e}Yi=_i+4|0;if(cj>>>0<t[aj+(a<<3)>>2]){break f}if((Yi|0)==(ej|0)){break a}while(1){Zi=q[Yi>>2];if($i>>>0<=Zi>>>0){break e}if(cj>>>0<t[aj+(Zi<<3)>>2]){q[Yi>>2]=a;q[ej>>2]=Zi;Yi=Yi+4|0;break f}Yi=Yi+4|0;if((ej|0)!=(Yi|0)){continue}break}break a}Yi=q[Zi>>2];if($i>>>0<=Yi>>>0){break e}if(t[aj+(Yi<<3)>>2]>=fj>>>0){continue}break}q[_i>>2]=Yi;q[Zi>>2]=a;dj=dj+1|0}k:{Yi=_i+4|0;if(Yi>>>0>=Zi>>>0){break k}a=q[Yi>>2];if($i>>>0<=a>>>0){break e}while(1){cj=q[bj>>2];fj=aj+(cj<<3)|0;while(1){if($i>>>0<=cj>>>0){break e}gj=q[fj>>2];if(t[aj+(a<<3)>>2]<gj>>>0){a=q[Yi+4>>2];Yi=Yi+4|0;if($i>>>0>a>>>0){continue}break e}break}while(1){Zi=Zi+ -4|0;cj=q[Zi>>2];if($i>>>0<=cj>>>0){break e}if(t[aj+(cj<<3)>>2]>=gj>>>0){continue}break}if(Yi>>>0>Zi>>>0){break k}q[Yi>>2]=cj;q[Zi>>2]=a;bj=(Yi|0)==(bj|0)?Zi:bj;dj=dj+1|0;a=q[Yi+4>>2];Yi=Yi+4|0;if($i>>>0>a>>>0){continue}break}break e}l:{if((Yi|0)==(bj|0)){break l}a=q[bj>>2];if($i>>>0<=a>>>0){break e}Zi=q[Yi>>2];if($i>>>0<=Zi>>>0){break e}if(t[aj+(a<<3)>>2]>=t[aj+(Zi<<3)>>2]){break l}q[Yi>>2]=a;q[bj>>2]=Zi;dj=dj+1|0}if(!dj){Zi=rf(_i,Yi,Fg);a=Yi+4|0;if(rf(a,b,Fg)){b=Yi;a=_i;if(!Zi){continue b}break a}if(Zi){continue c}}if((Yi-_i|0)<(b-Yi|0)){Uf(_i,Yi,Fg);a=Yi+4|0;continue c}Uf(Yi+4|0,b,Fg);b=Yi;a=_i;continue b}Hi();F()}qf(_i,_i+4|0,b+ -4|0,Fg);break a}if((Yi|0)==(ej|0)){break a}a=ej;Zi=q[_i>>2];if($i>>>0<=Zi>>>0){break e}while(1){bj=aj+(Zi<<3)|0;while(1){dj=q[Yi>>2];if($i>>>0<=dj>>>0){break e}cj=q[bj>>2];if(cj>>>0>=t[aj+(dj<<3)>>2]){Yi=Yi+4|0;if($i>>>0>Zi>>>0){continue}break e}break}while(1){a=a+ -4|0;Zi=q[a>>2];if($i>>>0<=Zi>>>0){break e}if(cj>>>0<t[aj+(Zi<<3)>>2]){continue}break}if(Yi>>>0>=a>>>0){_i=Yi;continue d}q[Yi>>2]=Zi;q[a>>2]=dj;Yi=Yi+4|0;Zi=q[_i>>2];if($i>>>0>Zi>>>0){continue}break}}break}break}break}Hi();F()}}function Vf(a,b,Fg){var hj=0,ij=0,jj=0,kj=0,lj=0,mj=0,nj=0,oj=0,pj=0,qj=0,rj=0;a:{b:while(1){pj=b+ -4|0;c:while(1){jj=a;d:while(1){e:{f:{g:{h:{hj=b-jj|0;a=hj>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;hj=b+ -4|0;b=q[hj>>2];if(Fg>>>0<=b>>>0){break h}pj=Fg;Fg=q[jj>>2];if(pj>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[jj>>2]=b;q[hj>>2]=Fg;return;case 2:nf(jj,jj+4|0,jj+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of(jj,jj+4|0,jj+8|0,jj+12|0,b+ -4|0,Fg);return}if((hj|0)<=123){pf(jj,b,Fg);return}mj=((a|0)/2<<2)+jj|0;j:{if((hj|0)>=3997){a=(a|0)/4<<2;oj=of(jj,a+jj|0,mj,a+mj|0,pj,Fg);break j}oj=qf(jj,mj,pj,Fg)}a=q[Fg>>2];lj=q[a>>2];kj=q[a+4>>2]-lj>>3;a=q[jj>>2];if(kj>>>0<=a>>>0){break e}hj=q[mj>>2];if(kj>>>0<=hj>>>0){break e}ij=pj;nj=q[lj+(a<<3)>>2];qj=q[lj+(hj<<3)>>2];if(nj>>>0>=qj>>>0){while(1){ij=ij+ -4|0;if((ij|0)==(jj|0)){a=q[pj>>2];if(kj>>>0<=a>>>0){break e}hj=jj+4|0;if(nj>>>0<t[lj+(a<<3)>>2]){break f}if((hj|0)==(pj|0)){break a}while(1){ij=q[hj>>2];if(kj>>>0<=ij>>>0){break e}if(nj>>>0<t[lj+(ij<<3)>>2]){q[hj>>2]=a;q[pj>>2]=ij;hj=hj+4|0;break f}hj=hj+4|0;if((pj|0)!=(hj|0)){continue}break}break a}hj=q[ij>>2];if(kj>>>0<=hj>>>0){break e}if(t[lj+(hj<<3)>>2]>=qj>>>0){continue}break}q[jj>>2]=hj;q[ij>>2]=a;oj=oj+1|0}k:{hj=jj+4|0;if(hj>>>0>=ij>>>0){break k}a=q[hj>>2];if(kj>>>0<=a>>>0){break e}while(1){nj=q[mj>>2];qj=lj+(nj<<3)|0;while(1){if(kj>>>0<=nj>>>0){break e}rj=q[qj>>2];if(t[lj+(a<<3)>>2]<rj>>>0){a=q[hj+4>>2];hj=hj+4|0;if(kj>>>0>a>>>0){continue}break e}break}while(1){ij=ij+ -4|0;nj=q[ij>>2];if(kj>>>0<=nj>>>0){break e}if(t[lj+(nj<<3)>>2]>=rj>>>0){continue}break}if(hj>>>0>ij>>>0){break k}q[hj>>2]=nj;q[ij>>2]=a;mj=(hj|0)==(mj|0)?ij:mj;oj=oj+1|0;a=q[hj+4>>2];hj=hj+4|0;if(kj>>>0>a>>>0){continue}break}break e}l:{if((hj|0)==(mj|0)){break l}a=q[mj>>2];if(kj>>>0<=a>>>0){break e}ij=q[hj>>2];if(kj>>>0<=ij>>>0){break e}if(t[lj+(a<<3)>>2]>=t[lj+(ij<<3)>>2]){break l}q[hj>>2]=a;q[mj>>2]=ij;oj=oj+1|0}if(!oj){ij=rf(jj,hj,Fg);a=hj+4|0;if(rf(a,b,Fg)){b=hj;a=jj;if(!ij){continue b}break a}if(ij){continue c}}if((hj-jj|0)<(b-hj|0)){Vf(jj,hj,Fg);a=hj+4|0;continue c}Vf(hj+4|0,b,Fg);b=hj;a=jj;continue b}Hi();F()}qf(jj,jj+4|0,b+ -4|0,Fg);break a}if((hj|0)==(pj|0)){break a}a=pj;ij=q[jj>>2];if(kj>>>0<=ij>>>0){break e}while(1){mj=lj+(ij<<3)|0;while(1){oj=q[hj>>2];if(kj>>>0<=oj>>>0){break e}nj=q[mj>>2];if(nj>>>0>=t[lj+(oj<<3)>>2]){hj=hj+4|0;if(kj>>>0>ij>>>0){continue}break e}break}while(1){a=a+ -4|0;ij=q[a>>2];if(kj>>>0<=ij>>>0){break e}if(nj>>>0<t[lj+(ij<<3)>>2]){continue}break}if(hj>>>0>=a>>>0){jj=hj;continue d}q[hj>>2]=ij;q[a>>2]=oj;hj=hj+4|0;ij=q[jj>>2];if(kj>>>0>ij>>>0){continue}break}}break}break}break}Hi();F()}}function Wf(a,b,Fg){var sj=0,tj=0,uj=0,vj=0,wj=0,xj=0,yj=0,zj=0,Aj=0,Bj=0,Cj=0;a:{b:while(1){Aj=b+ -4|0;c:while(1){uj=a;d:while(1){e:{f:{g:{h:{sj=b-uj|0;a=sj>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;sj=b+ -4|0;b=q[sj>>2];if(Fg>>>0<=b>>>0){break h}Aj=Fg;Fg=q[uj>>2];if(Aj>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[uj>>2]=b;q[sj>>2]=Fg;return;case 2:nf(uj,uj+4|0,uj+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of(uj,uj+4|0,uj+8|0,uj+12|0,b+ -4|0,Fg);return}if((sj|0)<=123){pf(uj,b,Fg);return}xj=((a|0)/2<<2)+uj|0;j:{if((sj|0)>=3997){a=(a|0)/4<<2;zj=of(uj,a+uj|0,xj,a+xj|0,Aj,Fg);break j}zj=qf(uj,xj,Aj,Fg)}a=q[Fg>>2];wj=q[a>>2];vj=q[a+4>>2]-wj>>3;a=q[uj>>2];if(vj>>>0<=a>>>0){break e}sj=q[xj>>2];if(vj>>>0<=sj>>>0){break e}tj=Aj;yj=q[wj+(a<<3)>>2];Bj=q[wj+(sj<<3)>>2];if(yj>>>0>=Bj>>>0){while(1){tj=tj+ -4|0;if((tj|0)==(uj|0)){a=q[Aj>>2];if(vj>>>0<=a>>>0){break e}sj=uj+4|0;if(yj>>>0<t[wj+(a<<3)>>2]){break f}if((sj|0)==(Aj|0)){break a}while(1){tj=q[sj>>2];if(vj>>>0<=tj>>>0){break e}if(yj>>>0<t[wj+(tj<<3)>>2]){q[sj>>2]=a;q[Aj>>2]=tj;sj=sj+4|0;break f}sj=sj+4|0;if((Aj|0)!=(sj|0)){continue}break}break a}sj=q[tj>>2];if(vj>>>0<=sj>>>0){break e}if(t[wj+(sj<<3)>>2]>=Bj>>>0){continue}break}q[uj>>2]=sj;q[tj>>2]=a;zj=zj+1|0}k:{sj=uj+4|0;if(sj>>>0>=tj>>>0){break k}a=q[sj>>2];if(vj>>>0<=a>>>0){break e}while(1){yj=q[xj>>2];Bj=wj+(yj<<3)|0;while(1){if(vj>>>0<=yj>>>0){break e}Cj=q[Bj>>2];if(t[wj+(a<<3)>>2]<Cj>>>0){a=q[sj+4>>2];sj=sj+4|0;if(vj>>>0>a>>>0){continue}break e}break}while(1){tj=tj+ -4|0;yj=q[tj>>2];if(vj>>>0<=yj>>>0){break e}if(t[wj+(yj<<3)>>2]>=Cj>>>0){continue}break}if(sj>>>0>tj>>>0){break k}q[sj>>2]=yj;q[tj>>2]=a;xj=(sj|0)==(xj|0)?tj:xj;zj=zj+1|0;a=q[sj+4>>2];sj=sj+4|0;if(vj>>>0>a>>>0){continue}break}break e}l:{if((sj|0)==(xj|0)){break l}a=q[xj>>2];if(vj>>>0<=a>>>0){break e}tj=q[sj>>2];if(vj>>>0<=tj>>>0){break e}if(t[wj+(a<<3)>>2]>=t[wj+(tj<<3)>>2]){break l}q[sj>>2]=a;q[xj>>2]=tj;zj=zj+1|0}if(!zj){tj=rf(uj,sj,Fg);a=sj+4|0;if(rf(a,b,Fg)){b=sj;a=uj;if(!tj){continue b}break a}if(tj){continue c}}if((sj-uj|0)<(b-sj|0)){Wf(uj,sj,Fg);a=sj+4|0;continue c}Wf(sj+4|0,b,Fg);b=sj;a=uj;continue b}Hi();F()}qf(uj,uj+4|0,b+ -4|0,Fg);break a}if((sj|0)==(Aj|0)){break a}a=Aj;tj=q[uj>>2];if(vj>>>0<=tj>>>0){break e}while(1){xj=wj+(tj<<3)|0;while(1){zj=q[sj>>2];if(vj>>>0<=zj>>>0){break e}yj=q[xj>>2];if(yj>>>0>=t[wj+(zj<<3)>>2]){sj=sj+4|0;if(vj>>>0>tj>>>0){continue}break e}break}while(1){a=a+ -4|0;tj=q[a>>2];if(vj>>>0<=tj>>>0){break e}if(yj>>>0<t[wj+(tj<<3)>>2]){continue}break}if(sj>>>0>=a>>>0){uj=sj;continue d}q[sj>>2]=tj;q[a>>2]=zj;sj=sj+4|0;tj=q[uj>>2];if(vj>>>0>tj>>>0){continue}break}}break}break}break}Hi();F()}}function Xf(a,b,Fg){var Dj=0,Ej=0,Fj=0,Gj=0,Hj=0,Ij=0,Jj=0,Kj=0,Lj=0,Mj=0,Nj=0;a:{b:while(1){Lj=b+ -4|0;c:while(1){Fj=a;d:while(1){e:{f:{g:{h:{Dj=b-Fj|0;a=Dj>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;Dj=b+ -4|0;b=q[Dj>>2];if(Fg>>>0<=b>>>0){break h}Lj=Fg;Fg=q[Fj>>2];if(Lj>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[Fj>>2]=b;q[Dj>>2]=Fg;return;case 2:nf(Fj,Fj+4|0,Fj+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of(Fj,Fj+4|0,Fj+8|0,Fj+12|0,b+ -4|0,Fg);return}if((Dj|0)<=123){pf(Fj,b,Fg);return}Ij=((a|0)/2<<2)+Fj|0;j:{if((Dj|0)>=3997){a=(a|0)/4<<2;Kj=of(Fj,a+Fj|0,Ij,a+Ij|0,Lj,Fg);break j}Kj=qf(Fj,Ij,Lj,Fg)}a=q[Fg>>2];Hj=q[a>>2];Gj=q[a+4>>2]-Hj>>3;a=q[Fj>>2];if(Gj>>>0<=a>>>0){break e}Dj=q[Ij>>2];if(Gj>>>0<=Dj>>>0){break e}Ej=Lj;Jj=q[Hj+(a<<3)>>2];Mj=q[Hj+(Dj<<3)>>2];if(Jj>>>0>=Mj>>>0){while(1){Ej=Ej+ -4|0;if((Ej|0)==(Fj|0)){a=q[Lj>>2];if(Gj>>>0<=a>>>0){break e}Dj=Fj+4|0;if(Jj>>>0<t[Hj+(a<<3)>>2]){break f}if((Dj|0)==(Lj|0)){break a}while(1){Ej=q[Dj>>2];if(Gj>>>0<=Ej>>>0){break e}if(Jj>>>0<t[Hj+(Ej<<3)>>2]){q[Dj>>2]=a;q[Lj>>2]=Ej;Dj=Dj+4|0;break f}Dj=Dj+4|0;if((Lj|0)!=(Dj|0)){continue}break}break a}Dj=q[Ej>>2];if(Gj>>>0<=Dj>>>0){break e}if(t[Hj+(Dj<<3)>>2]>=Mj>>>0){continue}break}q[Fj>>2]=Dj;q[Ej>>2]=a;Kj=Kj+1|0}k:{Dj=Fj+4|0;if(Dj>>>0>=Ej>>>0){break k}a=q[Dj>>2];if(Gj>>>0<=a>>>0){break e}while(1){Jj=q[Ij>>2];Mj=Hj+(Jj<<3)|0;while(1){if(Gj>>>0<=Jj>>>0){break e}Nj=q[Mj>>2];if(t[Hj+(a<<3)>>2]<Nj>>>0){a=q[Dj+4>>2];Dj=Dj+4|0;if(Gj>>>0>a>>>0){continue}break e}break}while(1){Ej=Ej+ -4|0;Jj=q[Ej>>2];if(Gj>>>0<=Jj>>>0){break e}if(t[Hj+(Jj<<3)>>2]>=Nj>>>0){continue}break}if(Dj>>>0>Ej>>>0){break k}q[Dj>>2]=Jj;q[Ej>>2]=a;Ij=(Dj|0)==(Ij|0)?Ej:Ij;Kj=Kj+1|0;a=q[Dj+4>>2];Dj=Dj+4|0;if(Gj>>>0>a>>>0){continue}break}break e}l:{if((Dj|0)==(Ij|0)){break l}a=q[Ij>>2];if(Gj>>>0<=a>>>0){break e}Ej=q[Dj>>2];if(Gj>>>0<=Ej>>>0){break e}if(t[Hj+(a<<3)>>2]>=t[Hj+(Ej<<3)>>2]){break l}q[Dj>>2]=a;q[Ij>>2]=Ej;Kj=Kj+1|0}if(!Kj){Ej=rf(Fj,Dj,Fg);a=Dj+4|0;if(rf(a,b,Fg)){b=Dj;a=Fj;if(!Ej){continue b}break a}if(Ej){continue c}}if((Dj-Fj|0)<(b-Dj|0)){Xf(Fj,Dj,Fg);a=Dj+4|0;continue c}Xf(Dj+4|0,b,Fg);b=Dj;a=Fj;continue b}Hi();F()}qf(Fj,Fj+4|0,b+ -4|0,Fg);break a}if((Dj|0)==(Lj|0)){break a}a=Lj;Ej=q[Fj>>2];if(Gj>>>0<=Ej>>>0){break e}while(1){Ij=Hj+(Ej<<3)|0;while(1){Kj=q[Dj>>2];if(Gj>>>0<=Kj>>>0){break e}Jj=q[Ij>>2];if(Jj>>>0>=t[Hj+(Kj<<3)>>2]){Dj=Dj+4|0;if(Gj>>>0>Ej>>>0){continue}break e}break}while(1){a=a+ -4|0;Ej=q[a>>2];if(Gj>>>0<=Ej>>>0){break e}if(Jj>>>0<t[Hj+(Ej<<3)>>2]){continue}break}if(Dj>>>0>=a>>>0){Fj=Dj;continue d}q[Dj>>2]=Ej;q[a>>2]=Kj;Dj=Dj+4|0;Ej=q[Fj>>2];if(Gj>>>0>Ej>>>0){continue}break}}break}break}break}Hi();F()}}function Yf(a,b,Fg){var Oj=0,Pj=0,Qj=0,Rj=0,Sj=0,Tj=0,Uj=0,Vj=0,Wj=0,Xj=0,Yj=0;a:{b:while(1){Wj=b+ -4|0;c:while(1){Qj=a;d:while(1){e:{f:{g:{h:{Oj=b-Qj|0;a=Oj>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;Oj=b+ -4|0;b=q[Oj>>2];if(Fg>>>0<=b>>>0){break h}Wj=Fg;Fg=q[Qj>>2];if(Wj>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[Qj>>2]=b;q[Oj>>2]=Fg;return;case 2:nf(Qj,Qj+4|0,Qj+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of(Qj,Qj+4|0,Qj+8|0,Qj+12|0,b+ -4|0,Fg);return}if((Oj|0)<=123){pf(Qj,b,Fg);return}Tj=((a|0)/2<<2)+Qj|0;j:{if((Oj|0)>=3997){a=(a|0)/4<<2;Vj=of(Qj,a+Qj|0,Tj,a+Tj|0,Wj,Fg);break j}Vj=qf(Qj,Tj,Wj,Fg)}a=q[Fg>>2];Sj=q[a>>2];Rj=q[a+4>>2]-Sj>>3;a=q[Qj>>2];if(Rj>>>0<=a>>>0){break e}Oj=q[Tj>>2];if(Rj>>>0<=Oj>>>0){break e}Pj=Wj;Uj=q[Sj+(a<<3)>>2];Xj=q[Sj+(Oj<<3)>>2];if(Uj>>>0>=Xj>>>0){while(1){Pj=Pj+ -4|0;if((Pj|0)==(Qj|0)){a=q[Wj>>2];if(Rj>>>0<=a>>>0){break e}Oj=Qj+4|0;if(Uj>>>0<t[Sj+(a<<3)>>2]){break f}if((Oj|0)==(Wj|0)){break a}while(1){Pj=q[Oj>>2];if(Rj>>>0<=Pj>>>0){break e}if(Uj>>>0<t[Sj+(Pj<<3)>>2]){q[Oj>>2]=a;q[Wj>>2]=Pj;Oj=Oj+4|0;break f}Oj=Oj+4|0;if((Wj|0)!=(Oj|0)){continue}break}break a}Oj=q[Pj>>2];if(Rj>>>0<=Oj>>>0){break e}if(t[Sj+(Oj<<3)>>2]>=Xj>>>0){continue}break}q[Qj>>2]=Oj;q[Pj>>2]=a;Vj=Vj+1|0}k:{Oj=Qj+4|0;if(Oj>>>0>=Pj>>>0){break k}a=q[Oj>>2];if(Rj>>>0<=a>>>0){break e}while(1){Uj=q[Tj>>2];Xj=Sj+(Uj<<3)|0;while(1){if(Rj>>>0<=Uj>>>0){break e}Yj=q[Xj>>2];if(t[Sj+(a<<3)>>2]<Yj>>>0){a=q[Oj+4>>2];Oj=Oj+4|0;if(Rj>>>0>a>>>0){continue}break e}break}while(1){Pj=Pj+ -4|0;Uj=q[Pj>>2];if(Rj>>>0<=Uj>>>0){break e}if(t[Sj+(Uj<<3)>>2]>=Yj>>>0){continue}break}if(Oj>>>0>Pj>>>0){break k}q[Oj>>2]=Uj;q[Pj>>2]=a;Tj=(Oj|0)==(Tj|0)?Pj:Tj;Vj=Vj+1|0;a=q[Oj+4>>2];Oj=Oj+4|0;if(Rj>>>0>a>>>0){continue}break}break e}l:{if((Oj|0)==(Tj|0)){break l}a=q[Tj>>2];if(Rj>>>0<=a>>>0){break e}Pj=q[Oj>>2];if(Rj>>>0<=Pj>>>0){break e}if(t[Sj+(a<<3)>>2]>=t[Sj+(Pj<<3)>>2]){break l}q[Oj>>2]=a;q[Tj>>2]=Pj;Vj=Vj+1|0}if(!Vj){Pj=rf(Qj,Oj,Fg);a=Oj+4|0;if(rf(a,b,Fg)){b=Oj;a=Qj;if(!Pj){continue b}break a}if(Pj){continue c}}if((Oj-Qj|0)<(b-Oj|0)){Yf(Qj,Oj,Fg);a=Oj+4|0;continue c}Yf(Oj+4|0,b,Fg);b=Oj;a=Qj;continue b}Hi();F()}qf(Qj,Qj+4|0,b+ -4|0,Fg);break a}if((Oj|0)==(Wj|0)){break a}a=Wj;Pj=q[Qj>>2];if(Rj>>>0<=Pj>>>0){break e}while(1){Tj=Sj+(Pj<<3)|0;while(1){Vj=q[Oj>>2];if(Rj>>>0<=Vj>>>0){break e}Uj=q[Tj>>2];if(Uj>>>0>=t[Sj+(Vj<<3)>>2]){Oj=Oj+4|0;if(Rj>>>0>Pj>>>0){continue}break e}break}while(1){a=a+ -4|0;Pj=q[a>>2];if(Rj>>>0<=Pj>>>0){break e}if(Uj>>>0<t[Sj+(Pj<<3)>>2]){continue}break}if(Oj>>>0>=a>>>0){Qj=Oj;continue d}q[Oj>>2]=Pj;q[a>>2]=Vj;Oj=Oj+4|0;Pj=q[Qj>>2];if(Rj>>>0>Pj>>>0){continue}break}}break}break}break}Hi();F()}}function Zf(a,b,Fg){var Zj=0,_j=0,$j=0,ak=0,bk=0,ck=0,dk=0,ek=0,fk=0,gk=0,hk=0;a:{b:while(1){fk=b+ -4|0;c:while(1){$j=a;d:while(1){e:{f:{g:{h:{Zj=b-$j|0;a=Zj>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;Zj=b+ -4|0;b=q[Zj>>2];if(Fg>>>0<=b>>>0){break h}fk=Fg;Fg=q[$j>>2];if(fk>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[$j>>2]=b;q[Zj>>2]=Fg;return;case 2:nf($j,$j+4|0,$j+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of($j,$j+4|0,$j+8|0,$j+12|0,b+ -4|0,Fg);return}if((Zj|0)<=123){pf($j,b,Fg);return}ck=((a|0)/2<<2)+$j|0;j:{if((Zj|0)>=3997){a=(a|0)/4<<2;ek=of($j,a+$j|0,ck,a+ck|0,fk,Fg);break j}ek=qf($j,ck,fk,Fg)}a=q[Fg>>2];bk=q[a>>2];ak=q[a+4>>2]-bk>>3;a=q[$j>>2];if(ak>>>0<=a>>>0){break e}Zj=q[ck>>2];if(ak>>>0<=Zj>>>0){break e}_j=fk;dk=q[bk+(a<<3)>>2];gk=q[bk+(Zj<<3)>>2];if(dk>>>0>=gk>>>0){while(1){_j=_j+ -4|0;if((_j|0)==($j|0)){a=q[fk>>2];if(ak>>>0<=a>>>0){break e}Zj=$j+4|0;if(dk>>>0<t[bk+(a<<3)>>2]){break f}if((Zj|0)==(fk|0)){break a}while(1){_j=q[Zj>>2];if(ak>>>0<=_j>>>0){break e}if(dk>>>0<t[bk+(_j<<3)>>2]){q[Zj>>2]=a;q[fk>>2]=_j;Zj=Zj+4|0;break f}Zj=Zj+4|0;if((fk|0)!=(Zj|0)){continue}break}break a}Zj=q[_j>>2];if(ak>>>0<=Zj>>>0){break e}if(t[bk+(Zj<<3)>>2]>=gk>>>0){continue}break}q[$j>>2]=Zj;q[_j>>2]=a;ek=ek+1|0}k:{Zj=$j+4|0;if(Zj>>>0>=_j>>>0){break k}a=q[Zj>>2];if(ak>>>0<=a>>>0){break e}while(1){dk=q[ck>>2];gk=bk+(dk<<3)|0;while(1){if(ak>>>0<=dk>>>0){break e}hk=q[gk>>2];if(t[bk+(a<<3)>>2]<hk>>>0){a=q[Zj+4>>2];Zj=Zj+4|0;if(ak>>>0>a>>>0){continue}break e}break}while(1){_j=_j+ -4|0;dk=q[_j>>2];if(ak>>>0<=dk>>>0){break e}if(t[bk+(dk<<3)>>2]>=hk>>>0){continue}break}if(Zj>>>0>_j>>>0){break k}q[Zj>>2]=dk;q[_j>>2]=a;ck=(Zj|0)==(ck|0)?_j:ck;ek=ek+1|0;a=q[Zj+4>>2];Zj=Zj+4|0;if(ak>>>0>a>>>0){continue}break}break e}l:{if((Zj|0)==(ck|0)){break l}a=q[ck>>2];if(ak>>>0<=a>>>0){break e}_j=q[Zj>>2];if(ak>>>0<=_j>>>0){break e}if(t[bk+(a<<3)>>2]>=t[bk+(_j<<3)>>2]){break l}q[Zj>>2]=a;q[ck>>2]=_j;ek=ek+1|0}if(!ek){_j=rf($j,Zj,Fg);a=Zj+4|0;if(rf(a,b,Fg)){b=Zj;a=$j;if(!_j){continue b}break a}if(_j){continue c}}if((Zj-$j|0)<(b-Zj|0)){Zf($j,Zj,Fg);a=Zj+4|0;continue c}Zf(Zj+4|0,b,Fg);b=Zj;a=$j;continue b}Hi();F()}qf($j,$j+4|0,b+ -4|0,Fg);break a}if((Zj|0)==(fk|0)){break a}a=fk;_j=q[$j>>2];if(ak>>>0<=_j>>>0){break e}while(1){ck=bk+(_j<<3)|0;while(1){ek=q[Zj>>2];if(ak>>>0<=ek>>>0){break e}dk=q[ck>>2];if(dk>>>0>=t[bk+(ek<<3)>>2]){Zj=Zj+4|0;if(ak>>>0>_j>>>0){continue}break e}break}while(1){a=a+ -4|0;_j=q[a>>2];if(ak>>>0<=_j>>>0){break e}if(dk>>>0<t[bk+(_j<<3)>>2]){continue}break}if(Zj>>>0>=a>>>0){$j=Zj;continue d}q[Zj>>2]=_j;q[a>>2]=ek;Zj=Zj+4|0;_j=q[$j>>2];if(ak>>>0>_j>>>0){continue}break}}break}break}break}Hi();F()}}function _f(a,b,Fg){var ik=0,jk=0,kk=0,lk=0,mk=0,nk=0,ok=0,pk=0,qk=0,rk=0,sk=0;a:{b:while(1){qk=b+ -4|0;c:while(1){kk=a;d:while(1){e:{f:{g:{h:{ik=b-kk|0;a=ik>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;ik=b+ -4|0;b=q[ik>>2];if(Fg>>>0<=b>>>0){break h}qk=Fg;Fg=q[kk>>2];if(qk>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[kk>>2]=b;q[ik>>2]=Fg;return;case 2:nf(kk,kk+4|0,kk+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of(kk,kk+4|0,kk+8|0,kk+12|0,b+ -4|0,Fg);return}if((ik|0)<=123){pf(kk,b,Fg);return}nk=((a|0)/2<<2)+kk|0;j:{if((ik|0)>=3997){a=(a|0)/4<<2;pk=of(kk,a+kk|0,nk,a+nk|0,qk,Fg);break j}pk=qf(kk,nk,qk,Fg)}a=q[Fg>>2];mk=q[a>>2];lk=q[a+4>>2]-mk>>3;a=q[kk>>2];if(lk>>>0<=a>>>0){break e}ik=q[nk>>2];if(lk>>>0<=ik>>>0){break e}jk=qk;ok=q[mk+(a<<3)>>2];rk=q[mk+(ik<<3)>>2];if(ok>>>0>=rk>>>0){while(1){jk=jk+ -4|0;if((jk|0)==(kk|0)){a=q[qk>>2];if(lk>>>0<=a>>>0){break e}ik=kk+4|0;if(ok>>>0<t[mk+(a<<3)>>2]){break f}if((ik|0)==(qk|0)){break a}while(1){jk=q[ik>>2];if(lk>>>0<=jk>>>0){break e}if(ok>>>0<t[mk+(jk<<3)>>2]){q[ik>>2]=a;q[qk>>2]=jk;ik=ik+4|0;break f}ik=ik+4|0;if((qk|0)!=(ik|0)){continue}break}break a}ik=q[jk>>2];if(lk>>>0<=ik>>>0){break e}if(t[mk+(ik<<3)>>2]>=rk>>>0){continue}break}q[kk>>2]=ik;q[jk>>2]=a;pk=pk+1|0}k:{ik=kk+4|0;if(ik>>>0>=jk>>>0){break k}a=q[ik>>2];if(lk>>>0<=a>>>0){break e}while(1){ok=q[nk>>2];rk=mk+(ok<<3)|0;while(1){if(lk>>>0<=ok>>>0){break e}sk=q[rk>>2];if(t[mk+(a<<3)>>2]<sk>>>0){a=q[ik+4>>2];ik=ik+4|0;if(lk>>>0>a>>>0){continue}break e}break}while(1){jk=jk+ -4|0;ok=q[jk>>2];if(lk>>>0<=ok>>>0){break e}if(t[mk+(ok<<3)>>2]>=sk>>>0){continue}break}if(ik>>>0>jk>>>0){break k}q[ik>>2]=ok;q[jk>>2]=a;nk=(ik|0)==(nk|0)?jk:nk;pk=pk+1|0;a=q[ik+4>>2];ik=ik+4|0;if(lk>>>0>a>>>0){continue}break}break e}l:{if((ik|0)==(nk|0)){break l}a=q[nk>>2];if(lk>>>0<=a>>>0){break e}jk=q[ik>>2];if(lk>>>0<=jk>>>0){break e}if(t[mk+(a<<3)>>2]>=t[mk+(jk<<3)>>2]){break l}q[ik>>2]=a;q[nk>>2]=jk;pk=pk+1|0}if(!pk){jk=rf(kk,ik,Fg);a=ik+4|0;if(rf(a,b,Fg)){b=ik;a=kk;if(!jk){continue b}break a}if(jk){continue c}}if((ik-kk|0)<(b-ik|0)){_f(kk,ik,Fg);a=ik+4|0;continue c}_f(ik+4|0,b,Fg);b=ik;a=kk;continue b}Hi();F()}qf(kk,kk+4|0,b+ -4|0,Fg);break a}if((ik|0)==(qk|0)){break a}a=qk;jk=q[kk>>2];if(lk>>>0<=jk>>>0){break e}while(1){nk=mk+(jk<<3)|0;while(1){pk=q[ik>>2];if(lk>>>0<=pk>>>0){break e}ok=q[nk>>2];if(ok>>>0>=t[mk+(pk<<3)>>2]){ik=ik+4|0;if(lk>>>0>jk>>>0){continue}break e}break}while(1){a=a+ -4|0;jk=q[a>>2];if(lk>>>0<=jk>>>0){break e}if(ok>>>0<t[mk+(jk<<3)>>2]){continue}break}if(ik>>>0>=a>>>0){kk=ik;continue d}q[ik>>2]=jk;q[a>>2]=pk;ik=ik+4|0;jk=q[kk>>2];if(lk>>>0>jk>>>0){continue}break}}break}break}break}Hi();F()}}function $f(a,b,Fg){var tk=0,uk=0,vk=0,wk=0,xk=0,yk=0,zk=0,Ak=0,Bk=0,Ck=0,Dk=0;a:{b:while(1){Bk=b+ -4|0;c:while(1){vk=a;d:while(1){e:{f:{g:{h:{tk=b-vk|0;a=tk>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;tk=b+ -4|0;b=q[tk>>2];if(Fg>>>0<=b>>>0){break h}Bk=Fg;Fg=q[vk>>2];if(Bk>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[vk>>2]=b;q[tk>>2]=Fg;return;case 2:nf(vk,vk+4|0,vk+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of(vk,vk+4|0,vk+8|0,vk+12|0,b+ -4|0,Fg);return}if((tk|0)<=123){pf(vk,b,Fg);return}yk=((a|0)/2<<2)+vk|0;j:{if((tk|0)>=3997){a=(a|0)/4<<2;Ak=of(vk,a+vk|0,yk,a+yk|0,Bk,Fg);break j}Ak=qf(vk,yk,Bk,Fg)}a=q[Fg>>2];xk=q[a>>2];wk=q[a+4>>2]-xk>>3;a=q[vk>>2];if(wk>>>0<=a>>>0){break e}tk=q[yk>>2];if(wk>>>0<=tk>>>0){break e}uk=Bk;zk=q[xk+(a<<3)>>2];Ck=q[xk+(tk<<3)>>2];if(zk>>>0>=Ck>>>0){while(1){uk=uk+ -4|0;if((uk|0)==(vk|0)){a=q[Bk>>2];if(wk>>>0<=a>>>0){break e}tk=vk+4|0;if(zk>>>0<t[xk+(a<<3)>>2]){break f}if((tk|0)==(Bk|0)){break a}while(1){uk=q[tk>>2];if(wk>>>0<=uk>>>0){break e}if(zk>>>0<t[xk+(uk<<3)>>2]){q[tk>>2]=a;q[Bk>>2]=uk;tk=tk+4|0;break f}tk=tk+4|0;if((Bk|0)!=(tk|0)){continue}break}break a}tk=q[uk>>2];if(wk>>>0<=tk>>>0){break e}if(t[xk+(tk<<3)>>2]>=Ck>>>0){continue}break}q[vk>>2]=tk;q[uk>>2]=a;Ak=Ak+1|0}k:{tk=vk+4|0;if(tk>>>0>=uk>>>0){break k}a=q[tk>>2];if(wk>>>0<=a>>>0){break e}while(1){zk=q[yk>>2];Ck=xk+(zk<<3)|0;while(1){if(wk>>>0<=zk>>>0){break e}Dk=q[Ck>>2];if(t[xk+(a<<3)>>2]<Dk>>>0){a=q[tk+4>>2];tk=tk+4|0;if(wk>>>0>a>>>0){continue}break e}break}while(1){uk=uk+ -4|0;zk=q[uk>>2];if(wk>>>0<=zk>>>0){break e}if(t[xk+(zk<<3)>>2]>=Dk>>>0){continue}break}if(tk>>>0>uk>>>0){break k}q[tk>>2]=zk;q[uk>>2]=a;yk=(tk|0)==(yk|0)?uk:yk;Ak=Ak+1|0;a=q[tk+4>>2];tk=tk+4|0;if(wk>>>0>a>>>0){continue}break}break e}l:{if((tk|0)==(yk|0)){break l}a=q[yk>>2];if(wk>>>0<=a>>>0){break e}uk=q[tk>>2];if(wk>>>0<=uk>>>0){break e}if(t[xk+(a<<3)>>2]>=t[xk+(uk<<3)>>2]){break l}q[tk>>2]=a;q[yk>>2]=uk;Ak=Ak+1|0}if(!Ak){uk=rf(vk,tk,Fg);a=tk+4|0;if(rf(a,b,Fg)){b=tk;a=vk;if(!uk){continue b}break a}if(uk){continue c}}if((tk-vk|0)<(b-tk|0)){$f(vk,tk,Fg);a=tk+4|0;continue c}$f(tk+4|0,b,Fg);b=tk;a=vk;continue b}Hi();F()}qf(vk,vk+4|0,b+ -4|0,Fg);break a}if((tk|0)==(Bk|0)){break a}a=Bk;uk=q[vk>>2];if(wk>>>0<=uk>>>0){break e}while(1){yk=xk+(uk<<3)|0;while(1){Ak=q[tk>>2];if(wk>>>0<=Ak>>>0){break e}zk=q[yk>>2];if(zk>>>0>=t[xk+(Ak<<3)>>2]){tk=tk+4|0;if(wk>>>0>uk>>>0){continue}break e}break}while(1){a=a+ -4|0;uk=q[a>>2];if(wk>>>0<=uk>>>0){break e}if(zk>>>0<t[xk+(uk<<3)>>2]){continue}break}if(tk>>>0>=a>>>0){vk=tk;continue d}q[tk>>2]=uk;q[a>>2]=Ak;tk=tk+4|0;uk=q[vk>>2];if(wk>>>0>uk>>>0){continue}break}}break}break}break}Hi();F()}}function ag(a,b,Fg){var Ek=0,Fk=0,Gk=0,Hk=0,Ik=0,Jk=0,Kk=0,Lk=0,Mk=0,Nk=0,Ok=0;a:{b:while(1){Mk=b+ -4|0;c:while(1){Gk=a;d:while(1){e:{f:{g:{h:{Ek=b-Gk|0;a=Ek>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;Ek=b+ -4|0;b=q[Ek>>2];if(Fg>>>0<=b>>>0){break h}Mk=Fg;Fg=q[Gk>>2];if(Mk>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[Gk>>2]=b;q[Ek>>2]=Fg;return;case 2:nf(Gk,Gk+4|0,Gk+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of(Gk,Gk+4|0,Gk+8|0,Gk+12|0,b+ -4|0,Fg);return}if((Ek|0)<=123){pf(Gk,b,Fg);return}Jk=((a|0)/2<<2)+Gk|0;j:{if((Ek|0)>=3997){a=(a|0)/4<<2;Lk=of(Gk,a+Gk|0,Jk,a+Jk|0,Mk,Fg);break j}Lk=qf(Gk,Jk,Mk,Fg)}a=q[Fg>>2];Ik=q[a>>2];Hk=q[a+4>>2]-Ik>>3;a=q[Gk>>2];if(Hk>>>0<=a>>>0){break e}Ek=q[Jk>>2];if(Hk>>>0<=Ek>>>0){break e}Fk=Mk;Kk=q[Ik+(a<<3)>>2];Nk=q[Ik+(Ek<<3)>>2];if(Kk>>>0>=Nk>>>0){while(1){Fk=Fk+ -4|0;if((Fk|0)==(Gk|0)){a=q[Mk>>2];if(Hk>>>0<=a>>>0){break e}Ek=Gk+4|0;if(Kk>>>0<t[Ik+(a<<3)>>2]){break f}if((Ek|0)==(Mk|0)){break a}while(1){Fk=q[Ek>>2];if(Hk>>>0<=Fk>>>0){break e}if(Kk>>>0<t[Ik+(Fk<<3)>>2]){q[Ek>>2]=a;q[Mk>>2]=Fk;Ek=Ek+4|0;break f}Ek=Ek+4|0;if((Mk|0)!=(Ek|0)){continue}break}break a}Ek=q[Fk>>2];if(Hk>>>0<=Ek>>>0){break e}if(t[Ik+(Ek<<3)>>2]>=Nk>>>0){continue}break}q[Gk>>2]=Ek;q[Fk>>2]=a;Lk=Lk+1|0}k:{Ek=Gk+4|0;if(Ek>>>0>=Fk>>>0){break k}a=q[Ek>>2];if(Hk>>>0<=a>>>0){break e}while(1){Kk=q[Jk>>2];Nk=Ik+(Kk<<3)|0;while(1){if(Hk>>>0<=Kk>>>0){break e}Ok=q[Nk>>2];if(t[Ik+(a<<3)>>2]<Ok>>>0){a=q[Ek+4>>2];Ek=Ek+4|0;if(Hk>>>0>a>>>0){continue}break e}break}while(1){Fk=Fk+ -4|0;Kk=q[Fk>>2];if(Hk>>>0<=Kk>>>0){break e}if(t[Ik+(Kk<<3)>>2]>=Ok>>>0){continue}break}if(Ek>>>0>Fk>>>0){break k}q[Ek>>2]=Kk;q[Fk>>2]=a;Jk=(Ek|0)==(Jk|0)?Fk:Jk;Lk=Lk+1|0;a=q[Ek+4>>2];Ek=Ek+4|0;if(Hk>>>0>a>>>0){continue}break}break e}l:{if((Ek|0)==(Jk|0)){break l}a=q[Jk>>2];if(Hk>>>0<=a>>>0){break e}Fk=q[Ek>>2];if(Hk>>>0<=Fk>>>0){break e}if(t[Ik+(a<<3)>>2]>=t[Ik+(Fk<<3)>>2]){break l}q[Ek>>2]=a;q[Jk>>2]=Fk;Lk=Lk+1|0}if(!Lk){Fk=rf(Gk,Ek,Fg);a=Ek+4|0;if(rf(a,b,Fg)){b=Ek;a=Gk;if(!Fk){continue b}break a}if(Fk){continue c}}if((Ek-Gk|0)<(b-Ek|0)){ag(Gk,Ek,Fg);a=Ek+4|0;continue c}ag(Ek+4|0,b,Fg);b=Ek;a=Gk;continue b}Hi();F()}qf(Gk,Gk+4|0,b+ -4|0,Fg);break a}if((Ek|0)==(Mk|0)){break a}a=Mk;Fk=q[Gk>>2];if(Hk>>>0<=Fk>>>0){break e}while(1){Jk=Ik+(Fk<<3)|0;while(1){Lk=q[Ek>>2];if(Hk>>>0<=Lk>>>0){break e}Kk=q[Jk>>2];if(Kk>>>0>=t[Ik+(Lk<<3)>>2]){Ek=Ek+4|0;if(Hk>>>0>Fk>>>0){continue}break e}break}while(1){a=a+ -4|0;Fk=q[a>>2];if(Hk>>>0<=Fk>>>0){break e}if(Kk>>>0<t[Ik+(Fk<<3)>>2]){continue}break}if(Ek>>>0>=a>>>0){Gk=Ek;continue d}q[Ek>>2]=Fk;q[a>>2]=Lk;Ek=Ek+4|0;Fk=q[Gk>>2];if(Hk>>>0>Fk>>>0){continue}break}}break}break}break}Hi();F()}}function bg(a,b,Fg){var Pk=0,Qk=0,Rk=0,Sk=0,Tk=0,Uk=0,Vk=0,Wk=0,Xk=0,Yk=0,Zk=0;a:{b:while(1){Xk=b+ -4|0;c:while(1){Rk=a;d:while(1){e:{f:{g:{h:{Pk=b-Rk|0;a=Pk>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;Pk=b+ -4|0;b=q[Pk>>2];if(Fg>>>0<=b>>>0){break h}Xk=Fg;Fg=q[Rk>>2];if(Xk>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[Rk>>2]=b;q[Pk>>2]=Fg;return;case 2:nf(Rk,Rk+4|0,Rk+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of(Rk,Rk+4|0,Rk+8|0,Rk+12|0,b+ -4|0,Fg);return}if((Pk|0)<=123){pf(Rk,b,Fg);return}Uk=((a|0)/2<<2)+Rk|0;j:{if((Pk|0)>=3997){a=(a|0)/4<<2;Wk=of(Rk,a+Rk|0,Uk,a+Uk|0,Xk,Fg);break j}Wk=qf(Rk,Uk,Xk,Fg)}a=q[Fg>>2];Tk=q[a>>2];Sk=q[a+4>>2]-Tk>>3;a=q[Rk>>2];if(Sk>>>0<=a>>>0){break e}Pk=q[Uk>>2];if(Sk>>>0<=Pk>>>0){break e}Qk=Xk;Vk=q[Tk+(a<<3)>>2];Yk=q[Tk+(Pk<<3)>>2];if(Vk>>>0>=Yk>>>0){while(1){Qk=Qk+ -4|0;if((Qk|0)==(Rk|0)){a=q[Xk>>2];if(Sk>>>0<=a>>>0){break e}Pk=Rk+4|0;if(Vk>>>0<t[Tk+(a<<3)>>2]){break f}if((Pk|0)==(Xk|0)){break a}while(1){Qk=q[Pk>>2];if(Sk>>>0<=Qk>>>0){break e}if(Vk>>>0<t[Tk+(Qk<<3)>>2]){q[Pk>>2]=a;q[Xk>>2]=Qk;Pk=Pk+4|0;break f}Pk=Pk+4|0;if((Xk|0)!=(Pk|0)){continue}break}break a}Pk=q[Qk>>2];if(Sk>>>0<=Pk>>>0){break e}if(t[Tk+(Pk<<3)>>2]>=Yk>>>0){continue}break}q[Rk>>2]=Pk;q[Qk>>2]=a;Wk=Wk+1|0}k:{Pk=Rk+4|0;if(Pk>>>0>=Qk>>>0){break k}a=q[Pk>>2];if(Sk>>>0<=a>>>0){break e}while(1){Vk=q[Uk>>2];Yk=Tk+(Vk<<3)|0;while(1){if(Sk>>>0<=Vk>>>0){break e}Zk=q[Yk>>2];if(t[Tk+(a<<3)>>2]<Zk>>>0){a=q[Pk+4>>2];Pk=Pk+4|0;if(Sk>>>0>a>>>0){continue}break e}break}while(1){Qk=Qk+ -4|0;Vk=q[Qk>>2];if(Sk>>>0<=Vk>>>0){break e}if(t[Tk+(Vk<<3)>>2]>=Zk>>>0){continue}break}if(Pk>>>0>Qk>>>0){break k}q[Pk>>2]=Vk;q[Qk>>2]=a;Uk=(Pk|0)==(Uk|0)?Qk:Uk;Wk=Wk+1|0;a=q[Pk+4>>2];Pk=Pk+4|0;if(Sk>>>0>a>>>0){continue}break}break e}l:{if((Pk|0)==(Uk|0)){break l}a=q[Uk>>2];if(Sk>>>0<=a>>>0){break e}Qk=q[Pk>>2];if(Sk>>>0<=Qk>>>0){break e}if(t[Tk+(a<<3)>>2]>=t[Tk+(Qk<<3)>>2]){break l}q[Pk>>2]=a;q[Uk>>2]=Qk;Wk=Wk+1|0}if(!Wk){Qk=rf(Rk,Pk,Fg);a=Pk+4|0;if(rf(a,b,Fg)){b=Pk;a=Rk;if(!Qk){continue b}break a}if(Qk){continue c}}if((Pk-Rk|0)<(b-Pk|0)){bg(Rk,Pk,Fg);a=Pk+4|0;continue c}bg(Pk+4|0,b,Fg);b=Pk;a=Rk;continue b}Hi();F()}qf(Rk,Rk+4|0,b+ -4|0,Fg);break a}if((Pk|0)==(Xk|0)){break a}a=Xk;Qk=q[Rk>>2];if(Sk>>>0<=Qk>>>0){break e}while(1){Uk=Tk+(Qk<<3)|0;while(1){Wk=q[Pk>>2];if(Sk>>>0<=Wk>>>0){break e}Vk=q[Uk>>2];if(Vk>>>0>=t[Tk+(Wk<<3)>>2]){Pk=Pk+4|0;if(Sk>>>0>Qk>>>0){continue}break e}break}while(1){a=a+ -4|0;Qk=q[a>>2];if(Sk>>>0<=Qk>>>0){break e}if(Vk>>>0<t[Tk+(Qk<<3)>>2]){continue}break}if(Pk>>>0>=a>>>0){Rk=Pk;continue d}q[Pk>>2]=Qk;q[a>>2]=Wk;Pk=Pk+4|0;Qk=q[Rk>>2];if(Sk>>>0>Qk>>>0){continue}break}}break}break}break}Hi();F()}}function cg(a,b,Fg){var _k=0,$k=0,al=0,bl=0,cl=0,dl=0,el=0,fl=0,gl=0,hl=0,il=0;a:{b:while(1){gl=b+ -4|0;c:while(1){al=a;d:while(1){e:{f:{g:{h:{_k=b-al|0;a=_k>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;_k=b+ -4|0;b=q[_k>>2];if(Fg>>>0<=b>>>0){break h}gl=Fg;Fg=q[al>>2];if(gl>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[al>>2]=b;q[_k>>2]=Fg;return;case 2:nf(al,al+4|0,al+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of(al,al+4|0,al+8|0,al+12|0,b+ -4|0,Fg);return}if((_k|0)<=123){pf(al,b,Fg);return}dl=((a|0)/2<<2)+al|0;j:{if((_k|0)>=3997){a=(a|0)/4<<2;fl=of(al,a+al|0,dl,a+dl|0,gl,Fg);break j}fl=qf(al,dl,gl,Fg)}a=q[Fg>>2];cl=q[a>>2];bl=q[a+4>>2]-cl>>3;a=q[al>>2];if(bl>>>0<=a>>>0){break e}_k=q[dl>>2];if(bl>>>0<=_k>>>0){break e}$k=gl;el=q[cl+(a<<3)>>2];hl=q[cl+(_k<<3)>>2];if(el>>>0>=hl>>>0){while(1){$k=$k+ -4|0;if(($k|0)==(al|0)){a=q[gl>>2];if(bl>>>0<=a>>>0){break e}_k=al+4|0;if(el>>>0<t[cl+(a<<3)>>2]){break f}if((_k|0)==(gl|0)){break a}while(1){$k=q[_k>>2];if(bl>>>0<=$k>>>0){break e}if(el>>>0<t[cl+($k<<3)>>2]){q[_k>>2]=a;q[gl>>2]=$k;_k=_k+4|0;break f}_k=_k+4|0;if((gl|0)!=(_k|0)){continue}break}break a}_k=q[$k>>2];if(bl>>>0<=_k>>>0){break e}if(t[cl+(_k<<3)>>2]>=hl>>>0){continue}break}q[al>>2]=_k;q[$k>>2]=a;fl=fl+1|0}k:{_k=al+4|0;if(_k>>>0>=$k>>>0){break k}a=q[_k>>2];if(bl>>>0<=a>>>0){break e}while(1){el=q[dl>>2];hl=cl+(el<<3)|0;while(1){if(bl>>>0<=el>>>0){break e}il=q[hl>>2];if(t[cl+(a<<3)>>2]<il>>>0){a=q[_k+4>>2];_k=_k+4|0;if(bl>>>0>a>>>0){continue}break e}break}while(1){$k=$k+ -4|0;el=q[$k>>2];if(bl>>>0<=el>>>0){break e}if(t[cl+(el<<3)>>2]>=il>>>0){continue}break}if(_k>>>0>$k>>>0){break k}q[_k>>2]=el;q[$k>>2]=a;dl=(_k|0)==(dl|0)?$k:dl;fl=fl+1|0;a=q[_k+4>>2];_k=_k+4|0;if(bl>>>0>a>>>0){continue}break}break e}l:{if((_k|0)==(dl|0)){break l}a=q[dl>>2];if(bl>>>0<=a>>>0){break e}$k=q[_k>>2];if(bl>>>0<=$k>>>0){break e}if(t[cl+(a<<3)>>2]>=t[cl+($k<<3)>>2]){break l}q[_k>>2]=a;q[dl>>2]=$k;fl=fl+1|0}if(!fl){$k=rf(al,_k,Fg);a=_k+4|0;if(rf(a,b,Fg)){b=_k;a=al;if(!$k){continue b}break a}if($k){continue c}}if((_k-al|0)<(b-_k|0)){cg(al,_k,Fg);a=_k+4|0;continue c}cg(_k+4|0,b,Fg);b=_k;a=al;continue b}Hi();F()}qf(al,al+4|0,b+ -4|0,Fg);break a}if((_k|0)==(gl|0)){break a}a=gl;$k=q[al>>2];if(bl>>>0<=$k>>>0){break e}while(1){dl=cl+($k<<3)|0;while(1){fl=q[_k>>2];if(bl>>>0<=fl>>>0){break e}el=q[dl>>2];if(el>>>0>=t[cl+(fl<<3)>>2]){_k=_k+4|0;if(bl>>>0>$k>>>0){continue}break e}break}while(1){a=a+ -4|0;$k=q[a>>2];if(bl>>>0<=$k>>>0){break e}if(el>>>0<t[cl+($k<<3)>>2]){continue}break}if(_k>>>0>=a>>>0){al=_k;continue d}q[_k>>2]=$k;q[a>>2]=fl;_k=_k+4|0;$k=q[al>>2];if(bl>>>0>$k>>>0){continue}break}}break}break}break}Hi();F()}}function dg(a,b,Fg){var jl=0,kl=0,ll=0,ml=0,nl=0,ol=0,pl=0,ql=0,rl=0,sl=0,tl=0;a:{b:while(1){rl=b+ -4|0;c:while(1){ll=a;d:while(1){e:{f:{g:{h:{jl=b-ll|0;a=jl>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Fg=q[Fg>>2];a=q[Fg>>2];Fg=q[Fg+4>>2]-a>>3;jl=b+ -4|0;b=q[jl>>2];if(Fg>>>0<=b>>>0){break h}rl=Fg;Fg=q[ll>>2];if(rl>>>0<=Fg>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(Fg<<3)>>2]){break a}q[ll>>2]=b;q[jl>>2]=Fg;return;case 2:nf(ll,ll+4|0,ll+8|0,b+ -4|0,Fg);return;case 3:break i;case 1:break g;default:break a}}of(ll,ll+4|0,ll+8|0,ll+12|0,b+ -4|0,Fg);return}if((jl|0)<=123){pf(ll,b,Fg);return}ol=((a|0)/2<<2)+ll|0;j:{if((jl|0)>=3997){a=(a|0)/4<<2;ql=of(ll,a+ll|0,ol,a+ol|0,rl,Fg);break j}ql=qf(ll,ol,rl,Fg)}a=q[Fg>>2];nl=q[a>>2];ml=q[a+4>>2]-nl>>3;a=q[ll>>2];if(ml>>>0<=a>>>0){break e}jl=q[ol>>2];if(ml>>>0<=jl>>>0){break e}kl=rl;pl=q[nl+(a<<3)>>2];sl=q[nl+(jl<<3)>>2];if(pl>>>0>=sl>>>0){while(1){kl=kl+ -4|0;if((kl|0)==(ll|0)){a=q[rl>>2];if(ml>>>0<=a>>>0){break e}jl=ll+4|0;if(pl>>>0<t[nl+(a<<3)>>2]){break f}if((jl|0)==(rl|0)){break a}while(1){kl=q[jl>>2];if(ml>>>0<=kl>>>0){break e}if(pl>>>0<t[nl+(kl<<3)>>2]){q[jl>>2]=a;q[rl>>2]=kl;jl=jl+4|0;break f}jl=jl+4|0;if((rl|0)!=(jl|0)){continue}break}break a}jl=q[kl>>2];if(ml>>>0<=jl>>>0){break e}if(t[nl+(jl<<3)>>2]>=sl>>>0){continue}break}q[ll>>2]=jl;q[kl>>2]=a;ql=ql+1|0}k:{jl=ll+4|0;if(jl>>>0>=kl>>>0){break k}a=q[jl>>2];if(ml>>>0<=a>>>0){break e}while(1){pl=q[ol>>2];sl=nl+(pl<<3)|0;while(1){if(ml>>>0<=pl>>>0){break e}tl=q[sl>>2];if(t[nl+(a<<3)>>2]<tl>>>0){a=q[jl+4>>2];jl=jl+4|0;if(ml>>>0>a>>>0){continue}break e}break}while(1){kl=kl+ -4|0;pl=q[kl>>2];if(ml>>>0<=pl>>>0){break e}if(t[nl+(pl<<3)>>2]>=tl>>>0){continue}break}if(jl>>>0>kl>>>0){break k}q[jl>>2]=pl;q[kl>>2]=a;ol=(jl|0)==(ol|0)?kl:ol;ql=ql+1|0;a=q[jl+4>>2];jl=jl+4|0;if(ml>>>0>a>>>0){continue}break}break e}l:{if((jl|0)==(ol|0)){break l}a=q[ol>>2];if(ml>>>0<=a>>>0){break e}kl=q[jl>>2];if(ml>>>0<=kl>>>0){break e}if(t[nl+(a<<3)>>2]>=t[nl+(kl<<3)>>2]){break l}q[jl>>2]=a;q[ol>>2]=kl;ql=ql+1|0}if(!ql){kl=rf(ll,jl,Fg);a=jl+4|0;if(rf(a,b,Fg)){b=jl;a=ll;if(!kl){continue b}break a}if(kl){continue c}}if((jl-ll|0)<(b-jl|0)){dg(ll,jl,Fg);a=jl+4|0;continue c}dg(jl+4|0,b,Fg);b=jl;a=ll;continue b}Hi();F()}qf(ll,ll+4|0,b+ -4|0,Fg);break a}if((jl|0)==(rl|0)){break a}a=rl;kl=q[ll>>2];if(ml>>>0<=kl>>>0){break e}while(1){ol=nl+(kl<<3)|0;while(1){ql=q[jl>>2];if(ml>>>0<=ql>>>0){break e}pl=q[ol>>2];if(pl>>>0>=t[nl+(ql<<3)>>2]){jl=jl+4|0;if(ml>>>0>kl>>>0){continue}break e}break}while(1){a=a+ -4|0;kl=q[a>>2];if(ml>>>0<=kl>>>0){break e}if(pl>>>0<t[nl+(kl<<3)>>2]){continue}break}if(jl>>>0>=a>>>0){ll=jl;continue d}q[jl>>2]=kl;q[a>>2]=ql;jl=jl+4|0;kl=q[ll>>2];if(ml>>>0>kl>>>0){continue}break}}break}break}break}Hi();F()}}function eg(a,b){var Fg=0,Hi=0,ul=0,vl=0,wl=0;a:{b:{c:{ul=q[a>>2];vl=q[a+4>>2]-ul>>2;Fg=vl+1|0;if(Fg>>>0<1073741824){ul=q[a+8>>2]-ul|0;wl=ul>>1;Fg=ul>>2>>>0<536870911?wl>>>0<Fg>>>0?Fg:wl:1073741823;if(Fg){if(Fg>>>0>=1073741824){break c}Hi=ui(Fg<<2)}ul=q[b>>2];q[b>>2]=0;b=(vl<<2)+Hi|0;q[b>>2]=ul;ul=(Fg<<2)+Hi|0;vl=b+4|0;Fg=q[a+4>>2];Hi=q[a>>2];if((Fg|0)==(Hi|0)){break b}while(1){Fg=Fg+ -4|0;wl=q[Fg>>2];q[Fg>>2]=0;b=b+ -4|0;q[b>>2]=wl;if((Fg|0)!=(Hi|0)){continue}break}Hi=q[a+4>>2];Fg=q[a>>2];break a}Gi();F()}ob(10211);F()}Fg=Hi}q[a>>2]=b;q[a+8>>2]=ul;q[a+4>>2]=vl;if((Fg|0)!=(Hi|0)){while(1){Hi=Hi+ -4|0;a=q[Hi>>2];q[Hi>>2]=0;if(a){n[q[q[a>>2]+4>>2]](a)}if((Fg|0)!=(Hi|0)){continue}break}}if(Fg){ij(Fg)}}function fg(a,b){a=a|0;b=b|0;o[b+84|0]=1;q[b+72>>2]=q[b+68>>2];return 1}function gg(a){a=a|0;var b=0,xl=0,yl=0,zl=0;a:{b=q[a+8>>2];b:{if((b|0)<0){break b}xl=q[a+4>>2];zl=q[xl>>2];yl=q[xl+4>>2]-zl>>2;c:{if(b>>>0>yl>>>0){hg(xl,b-yl|0);b=q[a+8>>2];break c}if(b>>>0>=yl>>>0){break c}q[xl+4>>2]=zl+(b<<2)}zl=1;if((b|0)<1){break b}a=q[a+4>>2];xl=q[a>>2];yl=q[a+4>>2]-xl>>2;a=0;while(1){if((a|0)==(yl|0)){break a}q[xl+(a<<2)>>2]=a;a=a+1|0;if((a|0)<(b|0)){continue}break}}return zl|0}Hi();F()}function hg(a,Al){var Bl=0,Cl=0,Dl=0,El=0,Fl=0,Gl=0,Hl=0,Il=0,Jl=0;Cl=q[a+8>>2];Dl=a+4|0;Bl=q[Dl>>2];if(Cl-Bl>>2>>>0>=Al>>>0){a=Al<<2;Il=Dl,Jl=pj(Bl,0,a)+a|0,q[Il>>2]=Jl;return}a:{Dl=q[a>>2];Fl=Bl-Dl|0;Bl=Fl>>2;El=Bl+Al|0;if(El>>>0<1073741824){Hl=Bl<<2;Cl=Cl-Dl|0;Bl=Cl>>1;Cl=Cl>>2>>>0<536870911?Bl>>>0<El>>>0?El:Bl:1073741823;Bl=0;b:{if(!Cl){break b}if(Cl>>>0>=1073741824){break a}Gl=ui(Cl<<2);Bl=Gl}pj(Hl+Bl|0,0,Al<<2);Al=Bl+(El<<2)|0;El=Bl+(Cl<<2)|0;if((Fl|0)>=1){oj(Gl,Dl,Fl)}q[a>>2]=Bl;q[a+8>>2]=El;q[a+4>>2]=Al;if(Dl){ij(Dl)}return}Gi();F()}ob(10316);F()}function ig(a){q[a+52>>2]=0;q[a>>2]=10456;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0;q[a+16>>2]=0;q[a+20>>2]=0;q[a+24>>2]=0;q[a+28>>2]=0;q[a+32>>2]=0;q[a+36>>2]=0;q[a+40>>2]=0;q[a+44>>2]=0}function jg(a,Al,Kl,Ll){var Ml=0,Nl=0,Ol=0,Pl=0;Nl=T-16|0;T=Nl;q[Al+44>>2]=Ll;q[Al+48>>2]=Kl;Pl=Al+12|0;Ll=q[Pl>>2];Ol=q[Al+8>>2];if((Ll|0)!=(Ol|0)){while(1){Ll=Ll+ -4|0;Ml=q[Ll>>2];q[Ll>>2]=0;if(Ml){n[q[q[Ml>>2]+4>>2]](Ml)}if((Ll|0)!=(Ol|0)){continue}break}}q[Pl>>2]=Ol;q[Al+24>>2]=q[Al+20>>2];q[Al+36>>2]=q[Al+32>>2];a:{if(!q[Al+4>>2]){Al=ui(32);q[Nl>>2]=Al;q[Nl+4>>2]=23;q[Nl+8>>2]=-2147483616;o[Al+23|0]=0;Kl=r[10527]|r[10528]<<8|(r[10529]<<16|r[10530]<<24);Ll=r[10523]|r[10524]<<8|(r[10525]<<16|r[10526]<<24);o[Al+15|0]=Ll;o[Al+16|0]=Ll>>>8;o[Al+17|0]=Ll>>>16;o[Al+18|0]=Ll>>>24;o[Al+19|0]=Kl;o[Al+20|0]=Kl>>>8;o[Al+21|0]=Kl>>>16;o[Al+22|0]=Kl>>>24;Kl=r[10520]|r[10521]<<8|(r[10522]<<16|r[10523]<<24);Ll=r[10516]|r[10517]<<8|(r[10518]<<16|r[10519]<<24);o[Al+8|0]=Ll;o[Al+9|0]=Ll>>>8;o[Al+10|0]=Ll>>>16;o[Al+11|0]=Ll>>>24;o[Al+12|0]=Kl;o[Al+13|0]=Kl>>>8;o[Al+14|0]=Kl>>>16;o[Al+15|0]=Kl>>>24;Kl=r[10512]|r[10513]<<8|(r[10514]<<16|r[10515]<<24);Ll=r[10508]|r[10509]<<8|(r[10510]<<16|r[10511]<<24);o[Al|0]=Ll;o[Al+1|0]=Ll>>>8;o[Al+2|0]=Ll>>>16;o[Al+3|0]=Ll>>>24;o[Al+4|0]=Kl;o[Al+5|0]=Kl>>>8;o[Al+6|0]=Kl>>>16;o[Al+7|0]=Kl>>>24;q[a>>2]=-1;yi(a+4|0,Nl);if(o[Nl+11|0]>-1){break a}ij(q[Nl>>2]);break a}kg(a,Al);if(q[a>>2]){break a}Ll=a+4|0;if(o[a+15|0]<=-1){ij(q[Ll>>2])}lg(a,Al);if(q[a>>2]){break a}if(o[Ll+11|0]<=-1){ij(q[Ll>>2])}if(!n[q[q[Al>>2]+16>>2]](Al)){Al=ui(32);q[Nl>>2]=Al;q[Nl+4>>2]=29;q[Nl+8>>2]=-2147483616;o[Al+29|0]=0;Kl=r[10557]|r[10558]<<8|(r[10559]<<16|r[10560]<<24);Ml=r[10553]|r[10554]<<8|(r[10555]<<16|r[10556]<<24);o[Al+21|0]=Ml;o[Al+22|0]=Ml>>>8;o[Al+23|0]=Ml>>>16;o[Al+24|0]=Ml>>>24;o[Al+25|0]=Kl;o[Al+26|0]=Kl>>>8;o[Al+27|0]=Kl>>>16;o[Al+28|0]=Kl>>>24;Kl=r[10552]|r[10553]<<8|(r[10554]<<16|r[10555]<<24);Ml=r[10548]|r[10549]<<8|(r[10550]<<16|r[10551]<<24);o[Al+16|0]=Ml;o[Al+17|0]=Ml>>>8;o[Al+18|0]=Ml>>>16;o[Al+19|0]=Ml>>>24;o[Al+20|0]=Kl;o[Al+21|0]=Kl>>>8;o[Al+22|0]=Kl>>>16;o[Al+23|0]=Kl>>>24;Kl=r[10544]|r[10545]<<8|(r[10546]<<16|r[10547]<<24);Ml=r[10540]|r[10541]<<8|(r[10542]<<16|r[10543]<<24);o[Al+8|0]=Ml;o[Al+9|0]=Ml>>>8;o[Al+10|0]=Ml>>>16;o[Al+11|0]=Ml>>>24;o[Al+12|0]=Kl;o[Al+13|0]=Kl>>>8;o[Al+14|0]=Kl>>>16;o[Al+15|0]=Kl>>>24;Kl=r[10536]|r[10537]<<8|(r[10538]<<16|r[10539]<<24);Ml=r[10532]|r[10533]<<8|(r[10534]<<16|r[10535]<<24);o[Al|0]=Ml;o[Al+1|0]=Ml>>>8;o[Al+2|0]=Ml>>>16;o[Al+3|0]=Ml>>>24;o[Al+4|0]=Kl;o[Al+5|0]=Kl>>>8;o[Al+6|0]=Kl>>>16;o[Al+7|0]=Kl>>>24;q[a>>2]=-1;yi(Ll,Nl);if(o[Nl+11|0]>-1){break a}ij(q[Nl>>2]);break a}if(!n[q[q[Al>>2]+20>>2]](Al)){Al=ui(32);q[Nl>>2]=Al;q[Nl+4>>2]=31;q[Nl+8>>2]=-2147483616;o[Al+31|0]=0;Kl=r[10589]|r[10590]<<8|(r[10591]<<16|r[10592]<<24);Ml=r[10585]|r[10586]<<8|(r[10587]<<16|r[10588]<<24);o[Al+23|0]=Ml;o[Al+24|0]=Ml>>>8;o[Al+25|0]=Ml>>>16;o[Al+26|0]=Ml>>>24;o[Al+27|0]=Kl;o[Al+28|0]=Kl>>>8;o[Al+29|0]=Kl>>>16;o[Al+30|0]=Kl>>>24;Kl=r[10582]|r[10583]<<8|(r[10584]<<16|r[10585]<<24);Ml=r[10578]|r[10579]<<8|(r[10580]<<16|r[10581]<<24);o[Al+16|0]=Ml;o[Al+17|0]=Ml>>>8;o[Al+18|0]=Ml>>>16;o[Al+19|0]=Ml>>>24;o[Al+20|0]=Kl;o[Al+21|0]=Kl>>>8;o[Al+22|0]=Kl>>>16;o[Al+23|0]=Kl>>>24;Kl=r[10574]|r[10575]<<8|(r[10576]<<16|r[10577]<<24);Ml=r[10570]|r[10571]<<8|(r[10572]<<16|r[10573]<<24);o[Al+8|0]=Ml;o[Al+9|0]=Ml>>>8;o[Al+10|0]=Ml>>>16;o[Al+11|0]=Ml>>>24;o[Al+12|0]=Kl;o[Al+13|0]=Kl>>>8;o[Al+14|0]=Kl>>>16;o[Al+15|0]=Kl>>>24;Kl=r[10566]|r[10567]<<8|(r[10568]<<16|r[10569]<<24);Ml=r[10562]|r[10563]<<8|(r[10564]<<16|r[10565]<<24);o[Al|0]=Ml;o[Al+1|0]=Ml>>>8;o[Al+2|0]=Ml>>>16;o[Al+3|0]=Ml>>>24;o[Al+4|0]=Kl;o[Al+5|0]=Kl>>>8;o[Al+6|0]=Kl>>>16;o[Al+7|0]=Kl>>>24;q[a>>2]=-1;yi(Ll,Nl);if(o[Nl+11|0]>-1){break a}ij(q[Nl>>2]);break a}n[q[q[Al>>2]+24>>2]](a,Al);if(q[a>>2]){break a}if(o[Ll+11|0]<=-1){ij(q[Ll>>2])}if(!n[q[q[Al>>2]+28>>2]](Al)){Al=ui(48);q[Nl>>2]=Al;q[Nl+4>>2]=34;q[Nl+8>>2]=-2147483600;o[Al+34|0]=0;Kl=r[10626]|r[10627]<<8;o[Al+32|0]=Kl;o[Al+33|0]=Kl>>>8;Kl=r[10622]|r[10623]<<8|(r[10624]<<16|r[10625]<<24);Ml=r[10618]|r[10619]<<8|(r[10620]<<16|r[10621]<<24);o[Al+24|0]=Ml;o[Al+25|0]=Ml>>>8;o[Al+26|0]=Ml>>>16;o[Al+27|0]=Ml>>>24;o[Al+28|0]=Kl;o[Al+29|0]=Kl>>>8;o[Al+30|0]=Kl>>>16;o[Al+31|0]=Kl>>>24;Kl=r[10614]|r[10615]<<8|(r[10616]<<16|r[10617]<<24);Ml=r[10610]|r[10611]<<8|(r[10612]<<16|r[10613]<<24);o[Al+16|0]=Ml;o[Al+17|0]=Ml>>>8;o[Al+18|0]=Ml>>>16;o[Al+19|0]=Ml>>>24;o[Al+20|0]=Kl;o[Al+21|0]=Kl>>>8;o[Al+22|0]=Kl>>>16;o[Al+23|0]=Kl>>>24;Kl=r[10606]|r[10607]<<8|(r[10608]<<16|r[10609]<<24);Ml=r[10602]|r[10603]<<8|(r[10604]<<16|r[10605]<<24);o[Al+8|0]=Ml;o[Al+9|0]=Ml>>>8;o[Al+10|0]=Ml>>>16;o[Al+11|0]=Ml>>>24;o[Al+12|0]=Kl;o[Al+13|0]=Kl>>>8;o[Al+14|0]=Kl>>>16;o[Al+15|0]=Kl>>>24;Kl=r[10598]|r[10599]<<8|(r[10600]<<16|r[10601]<<24);Ml=r[10594]|r[10595]<<8|(r[10596]<<16|r[10597]<<24);o[Al|0]=Ml;o[Al+1|0]=Ml>>>8;o[Al+2|0]=Ml>>>16;o[Al+3|0]=Ml>>>24;o[Al+4|0]=Kl;o[Al+5|0]=Kl>>>8;o[Al+6|0]=Kl>>>16;o[Al+7|0]=Kl>>>24;q[a>>2]=-1;yi(Ll,Nl);if(o[Nl+11|0]>-1){break a}ij(q[Nl>>2]);break a}Ll=ui(32);q[Nl>>2]=Ll;q[Nl+4>>2]=30;q[Nl+8>>2]=-2147483616;o[Ll+30|0]=0;Ml=r[10655]|r[10656]<<8|(r[10657]<<16|r[10658]<<24);Ol=r[10651]|r[10652]<<8|(r[10653]<<16|r[10654]<<24);o[Ll+22|0]=Ol;o[Ll+23|0]=Ol>>>8;o[Ll+24|0]=Ol>>>16;o[Ll+25|0]=Ol>>>24;o[Ll+26|0]=Ml;o[Ll+27|0]=Ml>>>8;o[Ll+28|0]=Ml>>>16;o[Ll+29|0]=Ml>>>24;Ml=r[10649]|r[10650]<<8|(r[10651]<<16|r[10652]<<24);Ol=r[10645]|r[10646]<<8|(r[10647]<<16|r[10648]<<24);o[Ll+16|0]=Ol;o[Ll+17|0]=Ol>>>8;o[Ll+18|0]=Ol>>>16;o[Ll+19|0]=Ol>>>24;o[Ll+20|0]=Ml;o[Ll+21|0]=Ml>>>8;o[Ll+22|0]=Ml>>>16;o[Ll+23|0]=Ml>>>24;Ml=r[10641]|r[10642]<<8|(r[10643]<<16|r[10644]<<24);Ol=r[10637]|r[10638]<<8|(r[10639]<<16|r[10640]<<24);o[Ll+8|0]=Ol;o[Ll+9|0]=Ol>>>8;o[Ll+10|0]=Ol>>>16;o[Ll+11|0]=Ol>>>24;o[Ll+12|0]=Ml;o[Ll+13|0]=Ml>>>8;o[Ll+14|0]=Ml>>>16;o[Ll+15|0]=Ml>>>24;Ml=r[10633]|r[10634]<<8|(r[10635]<<16|r[10636]<<24);Ol=r[10629]|r[10630]<<8|(r[10631]<<16|r[10632]<<24);o[Ll|0]=Ol;o[Ll+1|0]=Ol>>>8;o[Ll+2|0]=Ol>>>16;o[Ll+3|0]=Ol>>>24;o[Ll+4|0]=Ml;o[Ll+5|0]=Ml>>>8;o[Ll+6|0]=Ml>>>16;o[Ll+7|0]=Ml>>>24;Kl=Ng(Kl,Nl,0);if(o[Nl+11|0]<=-1){ij(q[Nl>>2])}if(Kl){n[q[q[Al>>2]+48>>2]](Al)}q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0}T=Nl+16|0}function kg(a,Al){var Kl=0,Ll=0,Ql=0,Rl=0,Sl=0;Ll=T-16|0;T=Ll;Kl=q[Al+44>>2];Ql=q[Kl+20>>2];if((Ql|0)<0?1:(Ql|0)<=0?t[Kl+16>>2]>0?0:1:0){$a(Kl,q[Kl+4>>2],10660,10665)}Kl=n[q[q[Al>>2]+8>>2]](Al)|0;o[Ll+15|0]=Kl;o[Ll+14|0]=2;o[Ll+13|0]=Kl&255?2:3;Kl=q[Al+44>>2];Ql=q[Kl+20>>2];a:{if((Ql|0)>0?1:(Ql|0)>=0?t[Kl+16>>2]<=0?0:1:0){break a}$a(Kl,q[Kl+4>>2],Ll+14|0,Ll+15|0);Kl=q[Al+44>>2];Ql=q[Kl+20>>2];if((Ql|0)>0?1:(Ql|0)>=0?t[Kl+16>>2]<=0?0:1:0){break a}$a(Kl,q[Kl+4>>2],Ll+13|0,Ll+14|0);Kl=q[Al+44>>2];Ql=q[Kl+20>>2];if((Ql|0)>0?1:(Ql|0)>=0?t[Kl+16>>2]<=0?0:1:0){break a}$a(Kl,q[Kl+4>>2],Ll+15|0,Ll+16|0);Kl=q[Al+44>>2]}Rl=Ll,Sl=n[q[q[Al>>2]+12>>2]](Al)|0,o[Rl+12|0]=Sl;Ql=q[Kl+20>>2];if((Ql|0)<0?1:(Ql|0)<=0?t[Kl+16>>2]>0?0:1:0){$a(Kl,q[Kl+4>>2],Ll+12|0,Ll+13|0)}p[Ll+10>>1]=(q[q[Al+4>>2]+4>>2]!=0)<<15;Al=q[Al+44>>2];Kl=q[Al+20>>2];if((Kl|0)<0?1:(Kl|0)<=0?t[Al+16>>2]>0?0:1:0){$a(Al,q[Al+4>>2],Ll+10|0,Ll+12|0)}q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0;T=Ll+16|0}function lg(a,Al){var Tl=0,Ul=0,Vl=0;Vl=T-32|0;T=Vl;Tl=q[q[Al+4>>2]+4>>2];a:{if(!Tl){q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0;break a}if(!Qg(Vl+24|0,q[Al+44>>2],Tl)){Al=ui(32);q[Vl+8>>2]=Al;q[Vl+12>>2]=26;q[Vl+16>>2]=-2147483616;o[Al+26|0]=0;Tl=r[10690]|r[10691]<<8;o[Al+24|0]=Tl;o[Al+25|0]=Tl>>>8;Tl=r[10686]|r[10687]<<8|(r[10688]<<16|r[10689]<<24);Ul=r[10682]|r[10683]<<8|(r[10684]<<16|r[10685]<<24);o[Al+16|0]=Ul;o[Al+17|0]=Ul>>>8;o[Al+18|0]=Ul>>>16;o[Al+19|0]=Ul>>>24;o[Al+20|0]=Tl;o[Al+21|0]=Tl>>>8;o[Al+22|0]=Tl>>>16;o[Al+23|0]=Tl>>>24;Tl=r[10678]|r[10679]<<8|(r[10680]<<16|r[10681]<<24);Ul=r[10674]|r[10675]<<8|(r[10676]<<16|r[10677]<<24);o[Al+8|0]=Ul;o[Al+9|0]=Ul>>>8;o[Al+10|0]=Ul>>>16;o[Al+11|0]=Ul>>>24;o[Al+12|0]=Tl;o[Al+13|0]=Tl>>>8;o[Al+14|0]=Tl>>>16;o[Al+15|0]=Tl>>>24;Tl=r[10670]|r[10671]<<8|(r[10672]<<16|r[10673]<<24);Ul=r[10666]|r[10667]<<8|(r[10668]<<16|r[10669]<<24);o[Al|0]=Ul;o[Al+1|0]=Ul>>>8;o[Al+2|0]=Ul>>>16;o[Al+3|0]=Ul>>>24;o[Al+4|0]=Tl;o[Al+5|0]=Tl>>>8;o[Al+6|0]=Tl>>>16;o[Al+7|0]=Tl>>>24;q[a>>2]=-1;yi(a+4|0,Vl+8|0);if(o[Vl+19|0]>-1){break a}ij(q[Vl+8>>2]);break a}q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0}T=Vl+32|0}function mg(a){a=a|0;var Al=0,Wl=0,Xl=0,Yl=0,Zl=0,_l=0,$l=0;Yl=T-16|0;T=Yl;a:{if(!n[q[q[a>>2]+32>>2]](a)){break a}Wl=q[a+44>>2];Zl=a+12|0;Xl=q[Zl>>2];Al=q[a+8>>2];o[Yl+15|0]=Xl-Al>>>2;_l=q[Wl+20>>2];if((_l|0)<0?1:(_l|0)<=0?t[Wl+16>>2]>0?0:1:0){$a(Wl,q[Wl+4>>2],Yl+15|0,Yl+16|0);Xl=q[Zl>>2];Al=q[a+8>>2]}if((Al|0)!=(Xl|0)){while(1){Wl=q[Al>>2];if(!n[q[q[Wl>>2]+8>>2]](Wl,a,q[a+4>>2])){break a}Al=Al+4|0;if((Xl|0)!=(Al|0)){continue}break}}if(!ng(a)){break a}Al=q[a+32>>2];Wl=q[a+36>>2];b:{if((Al|0)==(Wl|0)){break b}while(1){if(!n[q[q[a>>2]+40>>2]](a,q[Al>>2])){break a}Al=Al+4|0;if((Wl|0)!=(Al|0)){continue}break}Al=q[a+32>>2];Wl=q[a+36>>2];if((Al|0)==(Wl|0)){break b}while(1){Xl=q[q[a+8>>2]+(q[Al>>2]<<2)>>2];if(!n[q[q[Xl>>2]+12>>2]](Xl,q[a+44>>2])){break a}Al=Al+4|0;if((Wl|0)!=(Al|0)){continue}break}}$l=n[q[q[a>>2]+44>>2]](a)|0}T=Yl+16|0;return $l|0}function ng(a){var am=0,bm=0,cm=0,dm=0,em=0,fm=0,gm=0,hm=0,im=0,jm=0,km=0,lm=0,mm=0,nm=0,om=0,pm=0,qm=0,rm=0;fm=T+ -64|0;T=fm;pm=a+32|0;hm=a+12|0;am=q[hm>>2]-q[a+8>>2]>>2;dm=q[a+32>>2];bm=q[a+36>>2]-dm>>2;a:{if(am>>>0>bm>>>0){Qc(pm,am-bm|0);am=q[hm>>2]-q[a+8>>2]>>2;break a}if(am>>>0>=bm>>>0){break a}q[a+36>>2]=dm+(am<<2)}o[fm+32|0]=0;nm=og(fm+48|0,am,fm+32|0);im=a+12|0;am=q[im>>2];cm=q[a+8>>2];om=a+20|0;b:{while(1){if(jm>>>0<am-cm>>2>>>0){bm=0;em=0;hm=0;gm=0;if((am|0)!=(cm|0)){while(1){lm=1<<(gm&31);mm=gm>>>5<<2;c:{if(lm&q[mm+q[nm>>2]>>2]){break c}em=1;dm=0;d:{bm=gm<<2;am=q[bm+cm>>2];if(q[am+8>>2]==q[am+4>>2]){break d}e:while(1){km=q[q[am+4>>2]+(dm<<2)>>2];am=0;while(1){f:{cm=q[bm+cm>>2];if((am|0)<(n[q[q[cm>>2]+24>>2]](cm,km)|0)){cm=q[bm+q[a+8>>2]>>2];cm=n[q[q[cm>>2]+28>>2]](cm,km,am)|0;if((cm|0)==(gm|0)){break f}cm=q[q[om>>2]+(cm<<2)>>2];if(q[q[nm>>2]+(cm>>>3&536870908)>>2]>>>(cm&31)&1){break f}em=0}dm=dm+1|0;cm=q[a+8>>2];am=q[bm+cm>>2];if(dm>>>0<q[am+8>>2]-q[am+4>>2]>>2>>>0){continue e}if(!em){break c}break d}am=am+1|0;cm=q[a+8>>2];continue}}}q[q[pm>>2]+(jm<<2)>>2]=gm;bm=mm+q[nm>>2]|0;q[bm>>2]=lm|q[bm>>2];hm=1;jm=jm+1|0}gm=gm+1|0;am=q[im>>2];em=am-cm>>2;if(gm>>>0<em>>>0){continue}break}bm=hm}if(bm&1|jm>>>0>=em>>>0){continue}break b}break}q[fm+40>>2]=0;q[fm+32>>2]=0;q[fm+36>>2]=0;bm=q[a+4>>2];hm=q[bm+12>>2];bm=q[bm+8>>2];o[fm+15|0]=0;km=og(fm+16|0,hm-bm>>2,fm+15|0);qm=1;am=q[a+8>>2];mm=a+12|0;bm=q[mm>>2];g:{if((am|0)==(bm|0)){break g}hm=0;while(1){h:{im=q[q[pm>>2]+(hm<<2)>>2]<<2;dm=q[im+am>>2];dm=q[dm+8>>2]-q[dm+4>>2]|0;if((dm|0)<8){break h}cm=dm>>2;am=q[fm+32>>2];bm=q[fm+36>>2]-am>>2;i:{if(cm>>>0>bm>>>0){Qc(fm+32|0,cm-bm|0);break i}if(cm>>>0>=bm>>>0){break i}q[fm+36>>2]=am+(cm<<2)}gm=0;while(1){dm=0;jm=0;j:{if((gm|0)<(cm|0)){while(1){bm=1;rm=1<<(dm&31);lm=dm>>>5<<2;k:{if(rm&q[lm+q[km>>2]>>2]){break k}em=q[im+q[a+8>>2]>>2];om=q[q[em+4>>2]+(dm<<2)>>2];am=0;while(1){if((am|0)<(n[q[q[em>>2]+24>>2]](em,om)|0)){em=q[im+q[a+8>>2]>>2];em=n[q[q[em>>2]+28>>2]](em,om,am)|0;em=q[q[km>>2]+(em>>>3&536870908)>>2]&1<<(em&31);if(!em){break k}am=am+1|0;bm=(em|0)!=0&bm;em=q[im+q[a+8>>2]>>2];continue}break}if(!(bm&1)){break k}q[q[fm+32>>2]+(gm<<2)>>2]=dm;bm=lm+q[km>>2]|0;q[bm>>2]=rm|q[bm>>2];jm=1;gm=gm+1|0}dm=dm+1|0;if((dm|0)<(cm|0)){continue}break j}}pg(q[im+q[a+8>>2]>>2],fm+32|0);bm=q[mm>>2];am=q[a+8>>2];break h}if(((gm|0)>=(cm|0)|jm)&1){continue}break}qm=0;break g}hm=hm+1|0;if(hm>>>0<bm-am>>2>>>0){continue}break}}a=q[km>>2];if(a){ij(a)}a=q[fm+32>>2];if(!a){break b}q[fm+36>>2]=a;ij(a)}a=q[nm>>2];if(a){ij(a)}T=fm- -64|0;return qm}function og(a,sm,tm){var um=0,vm=0,wm=0;q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;a:{b:{if(!sm){break b}if((sm|0)<=-1){break a}vm=sm+ -1>>>5;wm=vm+1|0;um=ui(wm<<2);q[a+8>>2]=wm;q[a>>2]=um;wm=r[tm|0];q[a+4>>2]=sm;q[(sm>>>0<33?um:um+(vm<<2)|0)>>2]=0;tm=sm>>>5;vm=tm<<2;if(wm){um=pj(um,255,vm);sm=sm&31;if(!sm){break b}tm=um+(tm<<2)|0;q[tm>>2]=q[tm>>2]|-1>>>32-sm;return a}um=pj(um,0,vm);sm=sm&31;if(!sm){break b}tm=um+(tm<<2)|0;q[tm>>2]=q[tm>>2]&(-1>>>32-sm^-1)}return a}Gi();F()}function pg(a,sm){var tm=0,xm=0,ym=0,zm=0,Am=0,Bm=0,Cm=0,Dm=0,Em=0,Fm=0,Gm=0;ym=T-16|0;T=ym;Cm=a+8|0;tm=q[a+4>>2];q[Cm>>2]=tm;Dm=a+20|0;zm=q[a+16>>2];q[Dm>>2]=zm;Am=q[sm>>2];Em=q[sm+4>>2];if((Am|0)!=(Em|0)){sm=a+16|0;Fm=a+4|0;Gm=a+12|0;while(1){xm=q[Am>>2];q[ym+12>>2]=xm;a:{if(q[Gm>>2]!=(tm|0)){q[tm>>2]=xm;q[Cm>>2]=tm+4;break a}zb(Fm,ym+12|0);zm=q[sm>>2]}tm=q[ym+12>>2];xm=q[Dm>>2]-zm>>2;b:{if((tm|0)<(xm|0)){break b}q[ym+8>>2]=-1;Bm=tm+1|0;if(Bm>>>0>xm>>>0){Ab(sm,Bm-xm|0,ym+8|0);zm=q[sm>>2];tm=q[ym+12>>2];break b}if(Bm>>>0>=xm>>>0){break b}q[Dm>>2]=(Bm<<2)+zm}xm=(tm<<2)+zm|0;tm=q[Cm>>2];q[xm>>2]=(tm-q[a+4>>2]>>2)+ -1;Am=Am+4|0;if((Em|0)!=(Am|0)){continue}break}}T=ym+16|0}function qg(a){a=a|0;var sm=0,Hm=0,Im=0,Jm=0,Km=0,Lm=0,Mm=0;sm=q[a+4>>2];sm=q[sm+12>>2]-q[sm+8>>2]|0;a:{b:{if((sm|0)<1){Hm=sm>>2;break b}sm=0;while(1){if(!n[q[q[a>>2]+36>>2]](a,sm)){break a}sm=sm+1|0;Hm=q[a+4>>2];Hm=q[Hm+12>>2]-q[Hm+8>>2]>>2;if((sm|0)<(Hm|0)){continue}break}}Km=a+20|0;Im=q[a+20>>2];sm=q[a+24>>2]-Im>>2;c:{if(Hm>>>0>sm>>>0){Qc(Km,Hm-sm|0);break c}if(Hm>>>0>=sm>>>0){break c}q[a+24>>2]=Im+(Hm<<2)}Im=1;Hm=q[a+8>>2];a=q[a+12>>2];if((Hm|0)==(a|0)){break a}Lm=a-Hm>>2;sm=0;while(1){a=q[(sm<<2)+Hm>>2];Jm=q[a+8>>2];Im=q[a+4>>2];if((Jm|0)!=(Im|0)){Jm=Jm-Im>>2;Mm=q[Km>>2];a=0;while(1){q[(q[Im+(a<<2)>>2]<<2)+Mm>>2]=sm;a=a+1|0;if(a>>>0<Jm>>>0){continue}break}}Im=1;sm=sm+1|0;if(sm>>>0<Lm>>>0){continue}break}}return Im|0}function rg(a){a=a|0;var Nm=0,Om=0,Pm=0,Qm=0,Rm=0;Om=1;Nm=q[a+32>>2];Pm=q[a+36>>2];a:{if((Nm|0)==(Pm|0)){break a}Rm=a+8|0;while(1){Qm=q[q[Rm>>2]+(q[Nm>>2]<<2)>>2];if(n[q[q[Qm>>2]+20>>2]](Qm,q[a+44>>2])){Nm=Nm+4|0;if((Pm|0)!=(Nm|0)){continue}break a}break}Om=0}return Om|0}function sg(a,Sm){var Tm=0;a:{if((Sm|0)<0){break a}Tm=q[a+4>>2];if(q[Tm+12>>2]-q[Tm+8>>2]>>2<=(Sm|0)){break a}a=q[q[a+8>>2]+(q[q[a+20>>2]+(Sm<<2)>>2]<<2)>>2];n[q[q[a>>2]+32>>2]](a,Sm)|0}}function tg(a,Sm){var Um=0,Vm=0;a:{if((Sm|0)<0){break a}Um=q[a+4>>2];if(q[Um+12>>2]-q[Um+8>>2]>>2<=(Sm|0)){break a}a=q[q[a+8>>2]+(q[q[a+20>>2]+(Sm<<2)>>2]<<2)>>2];Vm=n[q[q[a>>2]+36>>2]](a,Sm)|0}return Vm}function ug(a,Sm){a=a|0;Sm=Sm|0;q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0}function vg(a,Sm){a=a|0;Sm=Sm|0;var Wm=0,Xm=0;Wm=T-16|0;T=Wm;q[Wm+12>>2]=q[q[Sm+4>>2]+80>>2];Sm=q[Sm+44>>2];Xm=q[Sm+20>>2];if((Xm|0)<0?1:(Xm|0)<=0?t[Sm+16>>2]>0?0:1:0){$a(Sm,q[Sm+4>>2],Wm+12|0,Wm+16|0)}q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0;T=Wm+16|0}function wg(a,Sm){a=a|0;Sm=Sm|0;var Ym=0,Zm=0,_m=0,$m=0;Ym=T-32|0;T=Ym;a:{if(!Sm){Sm=ui(76);Zm=ui(12);q[Zm+8>>2]=q[q[a+4>>2]+80>>2];q[Zm>>2]=10392;q[Zm+4>>2]=0;q[Ym+8>>2]=Zm;Zb(Sm,Ym+8|0);q[Ym+16>>2]=Sm;_m=a+12|0;Zm=q[_m>>2];b:{if(Zm>>>0<t[a+16>>2]){q[Ym+16>>2]=0;q[Zm>>2]=Sm;q[_m>>2]=Zm+4;break b}eg(a+8|0,Ym+16|0)}a=q[Ym+16>>2];q[Ym+16>>2]=0;if(a){n[q[q[a>>2]+4>>2]](a)}a=q[Ym+8>>2];q[Ym+8>>2]=0;if(!a){break a}n[q[q[a>>2]+4>>2]](a);break a}a=q[q[a+8>>2]>>2];q[Ym+28>>2]=Sm;_m=a+8|0;Zm=q[_m>>2];c:{if((Zm|0)!=q[a+12>>2]){q[Zm>>2]=Sm;q[_m>>2]=Zm+4;break c}zb(a+4|0,Ym+28|0)}Sm=q[Ym+28>>2];Zm=q[a+16>>2];_m=q[a+20>>2]-Zm>>2;d:{if((Sm|0)<(_m|0)){break d}q[Ym+24>>2]=-1;$m=Sm+1|0;if($m>>>0>_m>>>0){Sm=a+16|0;Ab(Sm,$m-_m|0,Ym+24|0);Zm=q[Sm>>2];Sm=q[Ym+28>>2];break d}if($m>>>0>=_m>>>0){break d}q[a+20>>2]=($m<<2)+Zm}q[(Sm<<2)+Zm>>2]=(q[a+8>>2]-q[a+4>>2]>>2)+ -1}T=Ym+32|0;return 1}function xg(a){a=a|0;q[a+52>>2]=q[q[a+4>>2]+80>>2]}function yg(a,Sm,an){var bn=0,cn=0,dn=0;if((Sm|0)>0){while(1){cn=bn<<2;dn=q[cn+a>>2];q[an+cn>>2]=dn<<1^dn>>31;bn=bn+1|0;if((bn|0)!=(Sm|0)){continue}break}}}function zg(a){q[a+16>>2]=0;q[a+20>>2]=0;q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+24>>2]=0;q[a+28>>2]=0}function Ag(a,Sm,an){var en=0;an=Sm>>>0<0?an+1|0:an;if((an|0)<0?1:(an|0)<=0?Sm>>>0>=0?0:1:0){return 0}en=q[a>>2];an=q[a+4>>2]-en|0;a:{if(an>>>0<Sm>>>0){Bg(a,Sm-an|0);break a}if(an>>>0<=Sm>>>0){break a}q[a+4>>2]=Sm+en}Sm=a+24|0;an=Sm;en=Sm;a=q[Sm+4>>2];Sm=q[Sm>>2]+1|0;if(Sm>>>0<1){a=a+1|0}q[en>>2]=Sm;q[an+4>>2]=a;return 1}function Bg(a,Sm){var an=0,fn=0,gn=0,hn=0,jn=0,kn=0;a:{fn=q[a+8>>2];gn=a+4|0;an=q[gn>>2];b:{if(fn-an>>>0>=Sm>>>0){while(1){o[an|0]=0;an=q[gn>>2]+1|0;q[gn>>2]=an;Sm=Sm+ -1|0;if(Sm){continue}break b}}hn=q[a>>2];jn=an-hn|0;an=jn+Sm|0;if((an|0)<=-1){break a}gn=0;fn=fn-hn|0;kn=fn<<1;fn=fn>>>0<1073741823?kn>>>0<an>>>0?an:kn:2147483647;if(fn){gn=ui(fn)}an=gn+jn|0;pj(an,0,Sm);fn=fn+gn|0;while(1){an=an+1|0;Sm=Sm+ -1|0;if(Sm){continue}break}if((jn|0)>=1){oj(gn,hn,jn)}q[a>>2]=gn;q[a+8>>2]=fn;q[a+4>>2]=an;if(!hn){break b}ij(hn)}return}Gi();F()}function Cg(a,Sm){var ln=0,mn=0;mn=q[a>>2];ln=q[a+4>>2]-mn|0;a:{if(ln>>>0<Sm>>>0){Bg(a,Sm-ln|0);break a}if(ln>>>0<=Sm>>>0){break a}q[a+4>>2]=Sm+mn}Sm=a+24|0;ln=Sm;mn=Sm;a=q[Sm+4>>2];Sm=q[Sm>>2]+1|0;if(Sm>>>0<1){a=a+1|0}q[mn>>2]=Sm;q[ln+4>>2]=a}function Dg(a){a=a+ -1|0;if(a>>>0<=10){return q[(a<<2)+12832>>2]}return-1}function Eg(a){q[a>>2]=0;q[a+4>>2]=0;o[a+24|0]=0;q[a+16>>2]=0;q[a+20>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0;return a}function Fg(a,Sm){var nn=0,on=0;on=q[a>>2];nn=q[a+4>>2]-on|0;if(nn>>>0<Sm>>>0){Bg(a,Sm-nn|0);return}if(nn>>>0>Sm>>>0){q[a+4>>2]=Sm+on}}function Gg(a,Sm,pn){var qn=0,rn=0;a:{if((pn|0)<0?1:(pn|0)<=0?Sm>>>0>=1?0:1:0){break a}qn=q[a+20>>2];if((qn|0)>0?1:(qn|0)>=0?t[a+16>>2]<=0?0:1:0){break a}o[a+24|0]=0;qn=a;rn=a;Sm=Sm+7|0;if(Sm>>>0<7){pn=pn+1|0}pn=Oj(Sm,pn,8,0);q[rn+16>>2]=pn;q[qn+20>>2]=V;qn=q[a>>2];Sm=q[a+4>>2]-qn|0;rn=pn;pn=Sm;rn=rn+Sm|0;b:{if(Sm>>>0<rn>>>0){Bg(a,rn-Sm|0);qn=q[a>>2];break b}if(Sm>>>0<=rn>>>0){break b}q[a+4>>2]=qn+rn}Sm=ui(8);q[Sm+4>>2]=0;q[Sm>>2]=pn+qn;pn=q[a+12>>2];q[a+12>>2]=Sm;if(!pn){break a}ij(pn)}}function Hg(a){var Sm=0,pn=0,sn=0,tn=0,un=0,vn=0,wn=0;un=T-32|0;T=un;pn=q[a+16>>2];Sm=q[a+20>>2];if((Sm|0)>0?1:(Sm|0)>=0?pn>>>0<1?0:1:0){Sm=q[q[a+12>>2]+4>>2]+7|0;if(Sm>>>0<7){tn=1}sn=Sm;Sm=tn>>>3;tn=tn<<29|sn>>>3;sn=Sm;if(r[a+24|0]){vn=q[a+4>>2];o[un+24|0]=0;Sm=un;q[Sm+16>>2]=0;q[Sm+20>>2]=0;q[Sm+8>>2]=0;q[Sm+12>>2]=0;q[Sm>>2]=0;q[Sm+4>>2]=0;mf(tn,sn,Sm);pn=vn-pn|0;vn=pn+ -8|0;sn=q[Sm+4>>2]-q[Sm>>2]|0;qj(vn+sn|0,pn,tn);oj(vn,q[Sm>>2],sn);Sm=a;wn=Sm;pn=q[Sm+20>>2];sn=8-sn|0;vn=sn+q[Sm+16>>2]|0;if(vn>>>0<sn>>>0){pn=pn+1|0}q[wn+16>>2]=vn;q[Sm+20>>2]=pn;Sm=q[un+12>>2];q[un+12>>2]=0;if(Sm){ij(Sm)}Sm=q[un>>2];if(Sm){q[un+4>>2]=Sm;ij(Sm)}pn=q[a+16>>2]}sn=q[a>>2];Sm=q[a+4>>2]-sn|0;tn=tn-pn|0;pn=Sm+tn|0;a:{if(pn>>>0>Sm>>>0){Bg(a,tn);break a}if(pn>>>0>=Sm>>>0){break a}q[a+4>>2]=pn+sn}q[a+16>>2]=0;q[a+20>>2]=0}T=un+32|0}function Ig(a){var xn=0;xn=a+4|0;q[xn>>2]=0;q[xn+4>>2]=0;q[a>>2]=xn;return a}function Jg(a,yn,zn){var An=0;An=T-48|0;T=An;Ei(An+8|0,zn);q[An+32>>2]=yn;Ce(An+40|0,a,yn,An+32|0);a=q[An+40>>2];yn=a+28|0;a:{if(o[a+39|0]>=0){o[yn+11|0]=0;o[yn|0]=0;break a}o[q[a+28>>2]]=0;q[a+32>>2]=0;if(o[a+39|0]>-1){break a}ij(q[a+28>>2]);q[a+36>>2]=0}a=q[An+12>>2];q[yn>>2]=q[An+8>>2];q[yn+4>>2]=a;q[yn+8>>2]=q[An+16>>2];T=An+48|0}function Kg(a,yn){yn=Nb(a,yn);if((yn|0)==(a+4|0)){return-1}a=yn+28|0;if(o[yn+39|0]<=-1){a=q[a>>2]}return xh(a)}function Lg(a,yn,zn){yn=Nb(a,yn);if((yn|0)!=(a+4|0)){a=yn+28|0;if(o[yn+39|0]<=-1){a=q[a>>2]}zn=xh(a)}return zn}function Mg(a,yn){var zn=x(0);yn=Nb(a,yn);if((yn|0)!=(a+4|0)){a=yn+28|0;if(o[yn+39|0]<=-1){a=q[a>>2]}zn=x(vh(a))}else{zn=x(1)}return zn}function Ng(a,yn,Bn){yn=Nb(a,yn);a:{if((yn|0)==(a+4|0)){break a}a=yn+28|0;if(o[yn+39|0]<=-1){a=q[a>>2]}a=xh(a);if((a|0)==-1){break a}Bn=(a|0)!=0}return Bn}function Og(a,yn,Bn){var Cn=0,Dn=0,En=0,Fn=0;Db(q[Bn+8>>2],yn);Cn=q[Bn>>2];Fn=Bn+4|0;if((Cn|0)!=(Fn|0)){while(1){En=Cn;if(!Pg(yn,Cn+16|0)){return}Cn=q[En+32>>2]-q[En+28>>2]|0;Db(Cn,yn);Dn=q[yn+20>>2];if((Dn|0)<0?1:(Dn|0)<=0?t[yn+16>>2]>0?0:1:0){Dn=q[En+28>>2];$a(yn,q[yn+4>>2],Dn,Dn+Cn|0)}Dn=q[En+4>>2];a:{if(!Dn){Cn=q[En+8>>2];if((En|0)==q[Cn>>2]){break a}Dn=En+8|0;while(1){En=q[Dn>>2];Dn=En+8|0;Cn=q[En+8>>2];if((En|0)!=q[Cn>>2]){continue}break}break a}while(1){Cn=Dn;Dn=q[Cn>>2];if(Dn){continue}break}}if((Cn|0)!=(Fn|0)){continue}break}}Db(q[Bn+20>>2],yn);Cn=q[Bn+12>>2];En=Bn+16|0;if((Cn|0)!=(En|0)){while(1){Bn=Cn;if(!Pg(yn,Cn+16|0)){return}Og(a,yn,q[Bn+28>>2]);Dn=q[Bn+4>>2];b:{if(!Dn){Cn=q[Bn+8>>2];if((Bn|0)==q[Cn>>2]){break b}Dn=Bn+8|0;while(1){Bn=q[Dn>>2];Dn=Bn+8|0;Cn=q[Bn+8>>2];if((Bn|0)!=q[Cn>>2]){continue}break}break b}while(1){Cn=Dn;Dn=q[Cn>>2];if(Dn){continue}break}}if((Cn|0)!=(En|0)){continue}break}}}function Pg(a,yn){var Bn=0,Gn=0,Hn=0,In=0,Jn=0,Kn=0;Hn=T-16|0;T=Hn;Bn=r[yn+11|0];In=Bn<<24>>24;a:{b:{if((In|0)<=-1){Gn=q[yn+4>>2];if(Gn>>>0<=255){break b}break a}Gn=Bn}if(!Gn){o[Hn+15|0]=0;yn=q[a+20>>2];if((yn|0)<0?1:(yn|0)<=0?t[a+16>>2]>0?0:1:0){$a(a,q[a+4>>2],Hn+15|0,Hn+16|0)}Jn=1;break a}o[Hn+14|0]=(In|0)<0?q[yn+4>>2]:Bn;Gn=q[a+20>>2];Bn=Gn;Gn=q[a+16>>2];if((Bn|0)<0?1:(Bn|0)<=0?Gn>>>0>0?0:1:0){$a(a,q[a+4>>2],Hn+14|0,Hn+15|0);Gn=q[a+16>>2];In=r[yn+11|0];Bn=q[a+20>>2]}Jn=1;if((Bn|0)>0?1:(Bn|0)>=0?Gn>>>0<=0?0:1:0){break a}Gn=a;Kn=q[a+4>>2];a=In<<24>>24;Bn=(a|0)<0?q[yn>>2]:yn;$a(Gn,Kn,Bn,Bn+((a|0)<0?q[yn+4>>2]:In&255)|0)}T=Hn+16|0;return Jn}function Qg(a,yn,Ln){var Mn=0,Nn=0,On=0;if(!Ln){return 0}Mn=Ln+28|0;Db(q[Mn>>2]-q[Ln+24>>2]>>2,yn);Nn=q[Ln+24>>2];On=q[Mn>>2];if((Nn|0)!=(On|0)){while(1){Mn=q[Nn>>2];if(Mn){Db(q[Mn+24>>2],yn);Og(a,yn,Mn)}Nn=Nn+4|0;if((On|0)!=(Nn|0)){continue}break}}Og(a,yn,Ln);return 1}function Rg(a,yn){var Ln=0;Ln=-1;a:{if((yn|0)==-1|(yn|0)>4){break a}yn=w(yn,12)+a|0;a=q[yn+20>>2];if((q[yn+24>>2]-a|0)<1){break a}Ln=q[a>>2]}return Ln}function Sg(a){var yn=0,Pn=0,Qn=0;yn=q[a+8>>2];a=q[a+12>>2];a:{if((yn|0)==(a|0)){break a}Qn=a-yn>>2;a=0;while(1){Pn=q[(a<<2)+yn>>2];if(!q[Pn+60>>2]){break a}a=a+1|0;if(a>>>0<Qn>>>0){continue}break}Pn=0}return Pn}function Tg(a,Rn){var Sn=0,Tn=0,Un=0,Vn=0,Wn=0;Sn=T-16|0;T=Sn;Tn=a+12|0;Un=q[Tn>>2];Vn=q[a+8>>2];Wn=q[Rn>>2];q[Rn>>2]=0;q[Sn+8>>2]=Wn;n[q[q[a>>2]+8>>2]](a,Un-Vn>>2,Sn+8|0);Rn=q[Sn+8>>2];q[Sn+8>>2]=0;if(Rn){qa(Rn)}T=Sn+16|0;return(q[Tn>>2]-q[a+8>>2]>>2)+ -1|0}function Ug(a,Rn,Xn){a=a|0;Rn=Rn|0;Xn=Xn|0;var Yn=0,Zn=0,_n=0,$n=0,ao=0,bo=0;$n=T-16|0;T=$n;q[$n+12>>2]=Rn;ao=a+8|0;Yn=q[a+12>>2];bo=q[a+8>>2];Zn=Yn-bo>>2;a:{if((Zn|0)>(Rn|0)){break a}_n=Rn+1|0;if(_n>>>0>Zn>>>0){Vg(ao,_n-Zn|0);break a}if(_n>>>0>=Zn>>>0){break a}Zn=bo+(_n<<2)|0;if((Zn|0)!=(Yn|0)){while(1){Yn=Yn+ -4|0;_n=q[Yn>>2];q[Yn>>2]=0;if(_n){qa(_n)}if((Yn|0)!=(Zn|0)){continue}break}}q[a+12>>2]=Zn}Yn=q[q[Xn>>2]+56>>2];b:{if((Yn|0)>4){break b}Yn=w(Yn,12)+a|0;Zn=Yn+24|0;a=q[Zn>>2];if((a|0)!=q[Yn+28>>2]){q[a>>2]=Rn;q[Zn>>2]=a+4;break b}zb(Yn+20|0,$n+12|0)}Rn=q[Xn>>2];a=q[$n+12>>2];q[Rn+60>>2]=a;Yn=q[ao>>2];q[Xn>>2]=0;Xn=Yn+(a<<2)|0;a=q[Xn>>2];q[Xn>>2]=Rn;if(a){qa(a)}T=$n+16|0}function Vg(a,Rn){var Xn=0,co=0,eo=0,fo=0,go=0,ho=0,io=0,jo=0,ko=0;co=q[a+8>>2];eo=a+4|0;Xn=q[eo>>2];if(co-Xn>>2>>>0>=Rn>>>0){a=Rn<<2;jo=eo,ko=pj(Xn,0,a)+a|0,q[jo>>2]=ko;return}a:{eo=q[a>>2];fo=Xn-eo>>2;go=fo+Rn|0;if(go>>>0<1073741824){fo=fo<<2;co=co-eo|0;io=co>>1;co=co>>2>>>0<536870911?io>>>0<go>>>0?go:io:1073741823;if(co){if(co>>>0>=1073741824){break a}ho=ui(co<<2)}fo=fo+ho|0;pj(fo,0,Rn<<2);Rn=(go<<2)+ho|0;go=(co<<2)+ho|0;if((Xn|0)!=(eo|0)){while(1){Xn=Xn+ -4|0;co=q[Xn>>2];q[Xn>>2]=0;fo=fo+ -4|0;q[fo>>2]=co;if((Xn|0)!=(eo|0)){continue}break}eo=q[a>>2];Xn=q[a+4>>2]}q[a>>2]=fo;q[a+8>>2]=go;q[a+4>>2]=Rn;if((Xn|0)!=(eo|0)){while(1){Xn=Xn+ -4|0;a=q[Xn>>2];q[Xn>>2]=0;if(a){qa(a)}if((Xn|0)!=(eo|0)){continue}break}}if(eo){ij(eo)}return}Gi();F()}ob(12936);F()}function Wg(a,Rn){a=a|0;Rn=Rn|0;var lo=0,mo=0,no=0,oo=0,po=0,qo=0,ro=0;a:{if((Rn|0)<0){break a}lo=q[a+12>>2];mo=q[a+8>>2];if(lo-mo>>2>>>0<=Rn>>>0){break a}mo=mo+(Rn<<2)|0;no=q[mo>>2];qo=q[no+60>>2];oo=q[no+56>>2];no=mo+4|0;b:{if((no|0)!=(lo|0)){while(1){ro=q[no>>2];q[no>>2]=0;po=q[mo>>2];q[mo>>2]=ro;if(po){qa(po)}mo=mo+4|0;no=no+4|0;if((no|0)!=(lo|0)){continue}break}lo=q[a+12>>2];if((mo|0)==(lo|0)){break b}}while(1){lo=lo+ -4|0;no=q[lo>>2];q[lo>>2]=0;if(no){qa(no)}if((lo|0)!=(mo|0)){continue}break}}q[a+12>>2]=mo;lo=q[a+4>>2];if(lo){Xg(lo,qo)}c:{if((oo|0)>4){break c}d:{mo=w(oo,12)+a|0;lo=q[mo+20>>2];no=mo+24|0;mo=q[no>>2];if((lo|0)==(mo|0)){break d}while(1){if(q[lo>>2]==(Rn|0)){break d}lo=lo+4|0;if((mo|0)!=(lo|0)){continue}break}break c}if((lo|0)==(mo|0)){break c}oo=lo+4|0;mo=mo-oo|0;po=mo>>2;if(mo){qj(lo,oo,mo)}q[no>>2]=(po<<2)+lo}lo=q[a+24>>2];mo=q[a+20>>2];if((lo|0)!=(mo|0)){no=lo-mo>>2;lo=0;while(1){oo=mo+(lo<<2)|0;po=q[oo>>2];if((po|0)>(Rn|0)){q[oo>>2]=po+ -1}lo=lo+1|0;if(lo>>>0<no>>>0){continue}break}}lo=q[a+36>>2];mo=q[a+32>>2];if((lo|0)!=(mo|0)){no=lo-mo>>2;lo=0;while(1){oo=mo+(lo<<2)|0;po=q[oo>>2];if((po|0)>(Rn|0)){q[oo>>2]=po+ -1}lo=lo+1|0;if(lo>>>0<no>>>0){continue}break}}lo=q[a+48>>2];mo=q[a+44>>2];if((lo|0)!=(mo|0)){no=lo-mo>>2;lo=0;while(1){oo=mo+(lo<<2)|0;po=q[oo>>2];if((po|0)>(Rn|0)){q[oo>>2]=po+ -1}lo=lo+1|0;if(lo>>>0<no>>>0){continue}break}}lo=q[a+60>>2];mo=q[a+56>>2];if((lo|0)!=(mo|0)){no=lo-mo>>2;lo=0;while(1){oo=mo+(lo<<2)|0;po=q[oo>>2];if((po|0)>(Rn|0)){q[oo>>2]=po+ -1}lo=lo+1|0;if(lo>>>0<no>>>0){continue}break}}lo=q[a+72>>2];a=q[a+68>>2];if((lo|0)==(a|0)){break a}mo=lo-a>>2;lo=0;while(1){no=a+(lo<<2)|0;oo=q[no>>2];if((oo|0)>(Rn|0)){q[no>>2]=oo+ -1}lo=lo+1|0;if(lo>>>0<mo>>>0){continue}break}}}function Xg(a,Rn){var so=0,to=0,uo=0,vo=0;a:{if((Rn|0)<0){break a}so=q[a+28>>2];uo=q[a+24>>2];while(1){to=uo;if((so|0)==(to|0)){break a}uo=to+4|0;if(q[q[to>>2]+24>>2]!=(Rn|0)){continue}break}b:{if((so|0)!=(uo|0)){while(1){Rn=q[uo>>2];q[uo>>2]=0;vo=q[to>>2];q[to>>2]=Rn;if(vo){Va(vo+12|0,q[vo+16>>2]);Wa(vo,q[vo+4>>2]);ij(vo)}to=to+4|0;uo=uo+4|0;if((so|0)!=(uo|0)){continue}break}so=q[a+28>>2];if((so|0)==(to|0)){break b}}while(1){so=so+ -4|0;Rn=q[so>>2];q[so>>2]=0;if(Rn){Va(Rn+12|0,q[Rn+16>>2]);Wa(Rn,q[Rn+4>>2]);ij(Rn)}if((to|0)!=(so|0)){continue}break}}q[a+28>>2]=to}}function Yg(a){a=a|0;ij(Sa(a))}function Zg(a){a=a|0}function _g(a){var Rn=0;Rn=r[a+74|0];o[a+74|0]=Rn+ -1|Rn;Rn=q[a>>2];if(Rn&8){q[a>>2]=Rn|32;return-1}q[a+4>>2]=0;q[a+8>>2]=0;Rn=q[a+44>>2];q[a+28>>2]=Rn;q[a+20>>2]=Rn;q[a+16>>2]=Rn+q[a+48>>2];return 0}function $g(a,wo,xo){var yo=0,zo=0,Ao=0;yo=q[xo+16>>2];a:{if(!yo){if(_g(xo)){break a}yo=q[xo+16>>2]}Ao=q[xo+20>>2];if(yo-Ao>>>0<wo>>>0){n[q[xo+36>>2]](xo,a,wo)|0;return}b:{if(o[xo+75|0]<0){break b}yo=wo;while(1){zo=yo;if(!zo){break b}yo=zo+ -1|0;if(r[yo+a|0]!=10){continue}break}if(n[q[xo+36>>2]](xo,a,zo)>>>0<zo>>>0){break a}wo=wo-zo|0;a=a+zo|0;Ao=q[xo+20>>2]}oj(Ao,a,wo);q[xo+20>>2]=q[xo+20>>2]+wo}}function ah(a,wo,xo){var Bo=0,Co=0,Do=0,Eo=0;Bo=T-208|0;T=Bo;q[Bo+204>>2]=xo;xo=0;pj(Bo+160|0,0,40);q[Bo+200>>2]=q[Bo+204>>2];a:{if((bh(0,wo,Bo+200|0,Bo+80|0,Bo+160|0)|0)<0){wo=-1;break a}xo=q[a+76>>2]>=0?1:xo;Co=q[a>>2];if(o[a+74|0]<=0){q[a>>2]=Co&-33}Eo=Co&32;b:{if(q[a+48>>2]){wo=bh(a,wo,Bo+200|0,Bo+80|0,Bo+160|0);break b}q[a+48>>2]=80;q[a+16>>2]=Bo+80;q[a+28>>2]=Bo;q[a+20>>2]=Bo;Co=q[a+44>>2];q[a+44>>2]=Bo;Do=bh(a,wo,Bo+200|0,Bo+80|0,Bo+160|0);wo=Do;if(!Co){break b}n[q[a+36>>2]](a,0,0)|0;q[a+48>>2]=0;q[a+44>>2]=Co;q[a+28>>2]=0;q[a+16>>2]=0;wo=q[a+20>>2];q[a+20>>2]=0;wo=wo?Do:-1}Do=a;a=q[a>>2];q[Do>>2]=a|Eo;wo=a&32?-1:wo;if(!xo){break a}}T=Bo+208|0;return wo}function bh(a,wo,xo,Fo,Go){var Ho=0,Io=0,Jo=0,Ko=0,Lo=0,Mo=0,No=0,Oo=0,Po=0,Qo=0,Ro=0,So=0,To=0,Uo=0,Vo=0;Ho=T-80|0;T=Ho;q[Ho+76>>2]=wo;Vo=Ho+55|0;So=Ho+56|0;wo=0;a:{b:while(1){c:{if((Po|0)<0){break c}if((wo|0)>(2147483647-Po|0)){q[3701]=61;Po=-1;break c}Po=wo+Po|0}d:{e:{f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{p:{q:{Lo=q[Ho+76>>2];wo=Lo;Ko=r[wo|0];if(Ko){while(1){r:{s:{Io=Ko&255;t:{if(!Io){Ko=wo;break t}if((Io|0)!=37){break s}Ko=wo;while(1){if(r[wo+1|0]!=37){break t}Io=wo+2|0;q[Ho+76>>2]=Io;Ko=Ko+1|0;Jo=r[wo+2|0];wo=Io;if((Jo|0)==37){continue}break}}wo=Ko-Lo|0;if(a){ch(a,Lo,wo)}if(wo){continue b}Qo=-1;Ko=1;Io=Ho;Mo=!ph(o[q[Ho+76>>2]+1|0]);wo=q[Ho+76>>2];if(!(Mo|r[wo+2|0]!=36)){Qo=o[wo+1|0]+ -48|0;To=1;Ko=3}wo=Ko+wo|0;q[Io+76>>2]=wo;Ko=0;Ro=o[wo|0];Jo=Ro+ -32|0;u:{if(Jo>>>0>31){Io=wo;break u}Io=wo;Jo=1<<Jo;if(!(Jo&75913)){break u}while(1){Io=wo+1|0;q[Ho+76>>2]=Io;Ko=Jo|Ko;Ro=o[wo+1|0];Jo=Ro+ -32|0;if(Jo>>>0>31){break u}wo=Io;Jo=1<<Jo;if(Jo&75913){continue}break}}v:{if((Ro|0)==42){Mo=Ho;w:{x:{if(!ph(o[Io+1|0])){break x}wo=q[Ho+76>>2];if(r[wo+2|0]!=36){break x}q[((o[wo+1|0]<<2)+Go|0)+ -192>>2]=10;No=q[((o[wo+1|0]<<3)+Fo|0)+ -384>>2];To=1;wo=wo+3|0;break w}if(To){break q}To=0;No=0;if(a){wo=q[xo>>2];q[xo>>2]=wo+4;No=q[wo>>2]}wo=q[Ho+76>>2]+1|0}q[Mo+76>>2]=wo;if((No|0)>-1){break v}No=0-No|0;Ko=Ko|8192;break v}No=dh(Ho+76|0);if((No|0)<0){break q}wo=q[Ho+76>>2]}Jo=-1;y:{if(r[wo|0]!=46){break y}if(r[wo+1|0]==42){z:{if(!ph(o[wo+2|0])){break z}wo=q[Ho+76>>2];if(r[wo+3|0]!=36){break z}q[((o[wo+2|0]<<2)+Go|0)+ -192>>2]=10;Jo=q[((o[wo+2|0]<<3)+Fo|0)+ -384>>2];wo=wo+4|0;q[Ho+76>>2]=wo;break y}if(To){break q}if(a){wo=q[xo>>2];q[xo>>2]=wo+4;Jo=q[wo>>2]}else{Jo=0}wo=q[Ho+76>>2]+2|0;q[Ho+76>>2]=wo;break y}q[Ho+76>>2]=wo+1;Jo=dh(Ho+76|0);wo=q[Ho+76>>2]}Io=0;while(1){Uo=Io;Oo=-1;if(o[wo|0]+ -65>>>0>57){break a}Ro=wo+1|0;q[Ho+76>>2]=Ro;Io=o[wo|0];wo=Ro;Io=r[(Io+w(Uo,58)|0)+12959|0];if(Io+ -1>>>0<8){continue}break}if(!Io){break a}A:{B:{C:{if((Io|0)==19){if((Qo|0)<=-1){break C}break a}if((Qo|0)<0){break B}q[(Qo<<2)+Go>>2]=Io;wo=(Qo<<3)+Fo|0;Io=q[wo+4>>2];q[Ho+64>>2]=q[wo>>2];q[Ho+68>>2]=Io}wo=0;if(!a){continue b}break A}if(!a){break d}eh(Ho- -64|0,Io,xo);Ro=q[Ho+76>>2]}Mo=Ko&-65537;Ko=Ko&8192?Mo:Ko;Oo=0;Qo=13004;Io=So;wo=o[Ro+ -1|0];wo=Uo?(wo&15)==3?wo&-33:wo:wo;Ro=wo+ -88|0;if(Ro>>>0<=32){break r}D:{E:{F:{G:{Mo=wo+ -65|0;if(Mo>>>0>6){if((wo|0)!=83){break e}if(!Jo){break G}Io=q[Ho+64>>2];break E}switch(Mo-1|0){case 1:break F;case 0:case 2:break e;default:break p}}wo=0;fh(a,32,No,0,Ko);break D}q[Ho+12>>2]=0;q[Ho+8>>2]=q[Ho+64>>2];q[Ho+64>>2]=Ho+8;Jo=-1;Io=Ho+8|0}wo=0;H:{while(1){Lo=q[Io>>2];if(!Lo){break H}Lo=qh(Ho+4|0,Lo);Mo=(Lo|0)<0;if(!(Mo|Lo>>>0>Jo-wo>>>0)){Io=Io+4|0;wo=wo+Lo|0;if(Jo>>>0>wo>>>0){continue}break H}break}Oo=-1;if(Mo){break a}}fh(a,32,No,wo,Ko);if(!wo){wo=0;break D}Jo=0;Io=q[Ho+64>>2];while(1){Lo=q[Io>>2];if(!Lo){break D}Lo=qh(Ho+4|0,Lo);Jo=Lo+Jo|0;if((Jo|0)>(wo|0)){break D}ch(a,Ho+4|0,Lo);Io=Io+4|0;if(Jo>>>0<wo>>>0){continue}break}}fh(a,32,No,wo,Ko^8192);wo=(No|0)>(wo|0)?No:wo;continue b}Io=wo+1|0;q[Ho+76>>2]=Io;Ko=r[wo+1|0];wo=Io;continue}break}switch(Ro-1|0){case 21:break i;case 23:break k;case 22:break l;case 11:case 16:break m;case 10:break n;case 26:break o;case 8:case 12:case 13:case 14:break p;case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 9:case 15:case 17:case 18:case 19:case 20:case 24:case 25:case 27:case 29:case 30:break e;case 28:break h;default:break j}}Oo=Po;if(a){break a}if(!To){break d}wo=1;while(1){a=q[(wo<<2)+Go>>2];if(a){eh((wo<<3)+Fo|0,a,xo);Oo=1;wo=wo+1|0;if((wo|0)!=10){continue}break a}break}Oo=1;if(wo>>>0>=10){break a}while(1){if(q[(wo<<2)+Go>>2]){break q}a=wo>>>0>8;wo=wo+1|0;if(!a){continue}break}break a}Oo=-1;break a}wo=n[260](a,v[Ho+64>>3],No,Jo,Ko,wo)|0;continue}wo=q[Ho+64>>2];Lo=wo?wo:13014;wo=zh(Lo,Jo);Io=wo?wo:Jo+Lo|0;Ko=Mo;Jo=wo?wo-Lo|0:Jo;break e}o[Ho+55|0]=q[Ho+64>>2];Jo=1;Lo=Vo;Ko=Mo;break e}Mo=q[Ho+68>>2];wo=Mo;Lo=q[Ho+64>>2];if((wo|0)<-1?1:(wo|0)<=-1?Lo>>>0>4294967295?0:1:0){wo=0-(wo+(0<Lo>>>0)|0)|0;Lo=0-Lo|0;q[Ho+64>>2]=Lo;q[Ho+68>>2]=wo;Oo=1;Qo=13004;break g}if(Ko&2048){Oo=1;Qo=13005;break g}Oo=Ko&1;Qo=Oo?13006:13004;break g}Lo=gh(q[Ho+64>>2],q[Ho+68>>2],So);if(!(Ko&8)){break f}wo=So-Lo|0;Jo=(Jo|0)>(wo|0)?Jo:wo+1|0;break f}Jo=Jo>>>0>8?Jo:8;Ko=Ko|8;wo=120}Lo=hh(q[Ho+64>>2],q[Ho+68>>2],So,wo&32);if(!(Ko&8)|!(q[Ho+64>>2]|q[Ho+68>>2])){break f}Qo=(wo>>>4)+13004|0;Oo=2;break f}wo=0;Io=Uo&255;if(Io>>>0>7){continue}I:{switch(Io-1|0){default:q[q[Ho+64>>2]>>2]=Po;continue;case 0:q[q[Ho+64>>2]>>2]=Po;continue;case 1:Io=q[Ho+64>>2];q[Io>>2]=Po;q[Io+4>>2]=Po>>31;continue;case 2:p[q[Ho+64>>2]>>1]=Po;continue;case 3:o[q[Ho+64>>2]]=Po;continue;case 5:q[q[Ho+64>>2]>>2]=Po;continue;case 4:continue;case 6:break I}}Io=q[Ho+64>>2];q[Io>>2]=Po;q[Io+4>>2]=Po>>31;continue}Lo=q[Ho+64>>2];wo=q[Ho+68>>2];Qo=13004}Lo=ih(Lo,wo,So)}Ko=(Jo|0)>-1?Ko&-65537:Ko;wo=q[Ho+64>>2];Mo=q[Ho+68>>2];J:{if(!(!!(wo|Mo)|Jo)){Lo=So;Jo=0;break J}wo=!(wo|Mo)+(So-Lo|0)|0;Jo=(Jo|0)>(wo|0)?Jo:wo}}Mo=Io-Lo|0;Jo=(Jo|0)<(Mo|0)?Mo:Jo;Io=Jo+Oo|0;wo=(No|0)<(Io|0)?Io:No;fh(a,32,wo,Io,Ko);ch(a,Qo,Oo);fh(a,48,wo,Io,Ko^65536);fh(a,48,Jo,Mo,0);ch(a,Lo,Mo);fh(a,32,wo,Io,Ko^8192);continue}break}Oo=0}T=Ho+80|0;return Oo}function ch(a,q,wo){if(!(r[a|0]&32)){$g(q,wo,a)}}function dh(a){var wo=0,xo=0,Fo=0;if(ph(o[q[a>>2]])){while(1){wo=q[a>>2];Fo=o[wo|0];q[a>>2]=wo+1;xo=(w(xo,10)+Fo|0)+ -48|0;if(ph(o[wo+1|0])){continue}break}}return xo}function eh(a,Go,Wo){a:{b:{if(Go>>>0>20){break b}Go=Go+ -9|0;if(Go>>>0>9){break b}c:{switch(Go-1|0){default:Go=q[Wo>>2];q[Wo>>2]=Go+4;q[a>>2]=q[Go>>2];return;case 0:Go=q[Wo>>2];q[Wo>>2]=Go+4;Go=q[Go>>2];q[a>>2]=Go;q[a+4>>2]=Go>>31;return;case 1:Go=q[Wo>>2];q[Wo>>2]=Go+4;q[a>>2]=q[Go>>2];q[a+4>>2]=0;return;case 3:Go=q[Wo>>2];q[Wo>>2]=Go+4;Go=p[Go>>1];q[a>>2]=Go;q[a+4>>2]=Go>>31;return;case 4:Go=q[Wo>>2];q[Wo>>2]=Go+4;q[a>>2]=s[Go>>1];q[a+4>>2]=0;return;case 5:Go=q[Wo>>2];q[Wo>>2]=Go+4;Go=o[Go|0];q[a>>2]=Go;q[a+4>>2]=Go>>31;return;case 6:Go=q[Wo>>2];q[Wo>>2]=Go+4;q[a>>2]=r[Go|0];q[a+4>>2]=0;return;case 2:case 7:break a;case 8:break c}}n[261](a,Wo)}return}Go=q[Wo>>2]+7&-8;q[Wo>>2]=Go+8;Wo=q[Go+4>>2];q[a>>2]=q[Go>>2];q[a+4>>2]=Wo}function fh(a,q,Go,Wo,Xo){var Yo=0,Zo=0,_o=0;Yo=T-256|0;T=Yo;if(!(Xo&73728|(Go|0)<=(Wo|0))){Xo=Go-Wo|0;Zo=Xo>>>0<256;pj(Yo,q,Zo?Xo:256);q=a;_o=Yo;if(!Zo){Go=Go-Wo|0;while(1){ch(a,Yo,256);Xo=Xo+ -256|0;if(Xo>>>0>255){continue}break}Xo=Go&255}ch(q,_o,Xo)}T=Yo+256|0}function gh(a,q,Go){if(a|q){while(1){Go=Go+ -1|0;o[Go|0]=a&7|48;a=(q&7)<<29|a>>>3;q=q>>>3;if(a|q){continue}break}}return Go}function hh(a,q,Go,Wo){if(a|q){while(1){Go=Go+ -1|0;o[Go|0]=r[(a&15)+13488|0]|Wo;a=(q&15)<<28|a>>>4;q=q>>>4;if(a|q){continue}break}}return Go}function ih(a,q,Go){var Wo=0,Xo=0,$o=0;a:{if((q|0)==1&a>>>0<0|q>>>0<1){Wo=a;break a}while(1){Wo=Pj(a,q,10,0);Xo=V;$o=Xo;Xo=Nj(Wo,Xo,10,0);Go=Go+ -1|0;o[Go|0]=a-Xo|48;Xo=(q|0)==9&a>>>0>4294967295|q>>>0>9;a=Wo;q=$o;if(Xo){continue}break}}if(Wo){while(1){Go=Go+ -1|0;a=(Wo>>>0)/10|0;o[Go|0]=Wo-w(a,10)|48;q=Wo>>>0>9;Wo=a;if(q){continue}break}}return Go}function jh(a,q,Go){return ah(a,q,Go)}function kh(a,Go,ap,bp,cp,dp){a=a|0;Go=+Go;ap=ap|0;bp=bp|0;cp=cp|0;dp=dp|0;var ep=0,fp=0,gp=0,hp=0,ip=0,jp=0,kp=0,lp=0,mp=0,np=0,op=0,pp=0,qp=0,rp=0,sp=0,tp=0,up=0,vp=0,wp=0,xp=0,yp=0,zp=0,Ap=0,Bp=0,Cp=0;ip=T-560|0;T=ip;q[ip+44>>2]=0;h(+Go);ep=e(1)|0;a:{if(xp=1,yp=(Ap=e(0)>>>0>4294967295?0:1,Bp=0,Cp=(ep|0)<=-1,Cp?Ap:Bp),zp=(ep|0)<-1,zp?xp:yp){Go=-Go;h(+Go);ep=e(1)|0;e(0)|0;sp=1;tp=13504;break a}if(cp&2048){sp=1;tp=13507;break a}sp=cp&1;tp=sp?13510:13505}b:{if((ep&2146435072)==2146435072){kp=sp+3|0;fh(a,32,ap,kp,cp&-65537);ch(a,tp,sp);bp=dp>>>5&1;ch(a,Go!=Go?bp?13531:13535:bp?13523:13527,3);break b}Go=sh(Go,ip+44|0);Go=Go+Go;if(Go!=0){q[ip+44>>2]=q[ip+44>>2]+ -1}pp=ip+16|0;up=dp|32;if((up|0)==97){jp=dp&32;fp=jp?tp+9|0:tp;c:{if(bp>>>0>11){break c}ep=12-bp|0;if(!ep){break c}qp=8;while(1){qp=qp*16;ep=ep+ -1|0;if(ep){continue}break}if(r[fp|0]==45){Go=-(qp+(-Go-qp));break c}Go=Go+qp-qp}hp=q[ip+44>>2];ep=hp>>31;ep=ih(ep^ep+hp,0,pp);if((pp|0)==(ep|0)){o[ip+15|0]=48;ep=ip+15|0}hp=sp|2;gp=q[ip+44>>2];mp=ep+ -2|0;o[mp|0]=dp+15;o[ep+ -1|0]=(gp|0)<0?45:43;tp=cp&8;gp=ip+16|0;while(1){dp=gp;kp=jp;if(y(Go)<2147483648){ep=~~Go}else{ep=-2147483648}o[gp|0]=kp|r[ep+13488|0];Go=(Go- +(ep|0))*16;gp=dp+1|0;if(!((gp-(ip+16|0)|0)!=1|(Go==0?!((bp|0)>0|tp):0))){o[dp+1|0]=46;gp=dp+2|0}if(Go!=0){continue}break}dp=a;ep=ap;if(!bp|((gp-ip|0)+ -18|0)>=(bp|0)){jp=((pp-(ip+16|0)|0)-mp|0)+gp|0}else{jp=((bp+pp|0)-mp|0)+2|0}bp=jp;kp=bp+hp|0;fh(dp,32,ep,kp,cp);ch(a,fp,hp);fh(a,48,ap,kp,cp^65536);dp=gp-(ip+16|0)|0;ch(a,ip+16|0,dp);bp=pp-mp|0;fh(a,48,jp-(bp+dp|0)|0,0,0);ch(a,mp,bp);break b}ep=(bp|0)<0;d:{if(Go==0){fp=q[ip+44>>2];break d}fp=q[ip+44>>2]+ -28|0;q[ip+44>>2]=fp;Go=Go*268435456}jp=ep?6:bp;mp=(fp|0)<0?ip+48|0:ip+336|0;hp=mp;while(1){bp=hp;if(Go<4294967296&Go>=0){ep=~~Go>>>0}else{ep=0}q[bp>>2]=ep;hp=hp+4|0;Go=(Go- +(ep>>>0))*1e9;if(Go!=0){continue}break}e:{if((fp|0)<1){ep=hp;gp=mp;break e}gp=mp;while(1){lp=(fp|0)<29?fp:29;ep=hp+ -4|0;f:{if(ep>>>0<gp>>>0){break f}bp=lp;fp=0;while(1){kp=ep;vp=fp;op=q[ep>>2];np=bp&31;if(32<=(bp&63)>>>0){fp=op<<np;op=0}else{fp=(1<<np)-1&op>>>32-np;op=op<<np}np=vp+op|0;fp=fp+wp|0;fp=np>>>0<op>>>0?fp+1|0:fp;fp=Pj(np,fp,1e9,0);op=kp;kp=Nj(fp,V,1e9,0);q[op>>2]=np-kp;ep=ep+ -4|0;if(ep>>>0>=gp>>>0){continue}break}if(!fp){break f}gp=gp+ -4|0;q[gp>>2]=fp}while(1){ep=hp;if(ep>>>0>gp>>>0){hp=ep+ -4|0;if(!q[hp>>2]){continue}}break}fp=q[ip+44>>2]-lp|0;q[ip+44>>2]=fp;hp=ep;if((fp|0)>0){continue}break}}if((fp|0)<=-1){rp=((jp+25|0)/9|0)+1|0;lp=(up|0)==102;while(1){bp=(fp|0)<-9?9:0-fp|0;g:{if(gp>>>0>=ep>>>0){gp=q[gp>>2]?gp:gp+4|0;break g}kp=1e9>>>bp;np=-1<<bp^-1;fp=0;hp=gp;while(1){op=fp;fp=q[hp>>2];q[hp>>2]=op+(fp>>>bp);fp=w(kp,fp&np);hp=hp+4|0;if(hp>>>0<ep>>>0){continue}break}gp=q[gp>>2]?gp:gp+4|0;if(!fp){break g}q[ep>>2]=fp;ep=ep+4|0}fp=bp+q[ip+44>>2]|0;q[ip+44>>2]=fp;bp=lp?mp:gp;ep=ep-bp>>2>(rp|0)?bp+(rp<<2)|0:ep;if((fp|0)<0){continue}break}}hp=0;h:{if(gp>>>0>=ep>>>0){break h}hp=w(mp-gp>>2,9);fp=10;bp=q[gp>>2];if(bp>>>0<10){break h}while(1){hp=hp+1|0;fp=w(fp,10);if(bp>>>0>=fp>>>0){continue}break}}bp=(jp-((up|0)==102?0:hp)|0)-((up|0)==103&(jp|0)!=0)|0;if((bp|0)<(w(ep-mp>>2,9)+ -9|0)){fp=bp+9216|0;kp=(fp|0)/9|0;lp=(mp+(kp<<2)|0)+ -4092|0;bp=10;fp=fp-w(kp,9)|0;if((fp|0)<=7){while(1){bp=w(bp,10);kp=(fp|0)<7;fp=fp+1|0;if(kp){continue}break}}kp=q[lp>>2];np=(kp>>>0)/(bp>>>0)|0;rp=lp+4|0;fp=kp-w(bp,np)|0;i:{if(fp?0:(rp|0)==(ep|0)){break i}op=bp>>>1;qp=fp>>>0<op>>>0?.5:(ep|0)==(rp|0)?(op|0)==(fp|0)?1:1.5:1.5;Go=np&1?9007199254740994:9007199254740992;if(!(!sp|r[tp|0]!=45)){qp=-qp;Go=-Go}fp=kp-fp|0;q[lp>>2]=fp;if(Go+qp==Go){break i}bp=bp+fp|0;q[lp>>2]=bp;if(bp>>>0>=1e9){while(1){q[lp>>2]=0;lp=lp+ -4|0;if(lp>>>0<gp>>>0){gp=gp+ -4|0;q[gp>>2]=0}bp=q[lp>>2]+1|0;q[lp>>2]=bp;if(bp>>>0>999999999){continue}break}}hp=w(mp-gp>>2,9);fp=10;bp=q[gp>>2];if(bp>>>0<10){break i}while(1){hp=hp+1|0;fp=w(fp,10);if(bp>>>0>=fp>>>0){continue}break}}bp=lp+4|0;ep=ep>>>0>bp>>>0?bp:ep}j:{while(1){fp=ep;lp=0;if(ep>>>0<=gp>>>0){break j}ep=fp+ -4|0;if(!q[ep>>2]){continue}break}lp=1}k:{if((up|0)!=103){np=cp&8;break k}bp=jp?jp:1;ep=(bp|0)>(hp|0)&(hp|0)>-5;jp=(ep?hp^-1:-1)+bp|0;dp=(ep?-1:-2)+dp|0;np=cp&8;if(np){break k}ep=9;l:{if(!lp){break l}kp=q[fp+ -4>>2];if(!kp){break l}bp=10;ep=0;if((kp>>>0)%10){break l}while(1){ep=ep+1|0;bp=w(bp,10);if(!((kp>>>0)%(bp>>>0))){continue}break}}bp=w(fp-mp>>2,9)+ -9|0;if((dp|32)==102){np=0;bp=bp-ep|0;bp=(bp|0)>0?bp:0;jp=(jp|0)<(bp|0)?jp:bp;break k}np=0;bp=(bp+hp|0)-ep|0;bp=(bp|0)>0?bp:0;jp=(jp|0)<(bp|0)?jp:bp}up=jp|np;op=(up|0)!=0;bp=a;vp=ap;wp=dp|32;ep=(hp|0)>0?hp:0;m:{if((wp|0)==102){break m}ep=hp>>31;ep=ih(ep+hp^ep,0,pp);if((pp-ep|0)<=1){while(1){ep=ep+ -1|0;o[ep|0]=48;if((pp-ep|0)<2){continue}break}}rp=ep+ -2|0;o[rp|0]=dp;o[ep+ -1|0]=(hp|0)<0?45:43;ep=pp-rp|0}kp=(ep+(op+(jp+sp|0)|0)|0)+1|0;fh(bp,32,vp,kp,cp);ch(a,tp,sp);fh(a,48,ap,kp,cp^65536);n:{o:{p:{if((wp|0)==102){bp=ip+16|8;dp=ip+16|9;hp=gp>>>0>mp>>>0?mp:gp;gp=hp;while(1){ep=ih(q[gp>>2],0,dp);q:{if((gp|0)!=(hp|0)){if(ep>>>0<=ip+16>>>0){break q}while(1){ep=ep+ -1|0;o[ep|0]=48;if(ep>>>0>ip+16>>>0){continue}break}break q}if((dp|0)!=(ep|0)){break q}o[ip+24|0]=48;ep=bp}ch(a,ep,dp-ep|0);gp=gp+4|0;if(gp>>>0<=mp>>>0){continue}break}if(up){ch(a,13539,1)}if((jp|0)<1|gp>>>0>=fp>>>0){break p}while(1){ep=ih(q[gp>>2],0,dp);if(ep>>>0>ip+16>>>0){while(1){ep=ep+ -1|0;o[ep|0]=48;if(ep>>>0>ip+16>>>0){continue}break}}ch(a,ep,(jp|0)<9?jp:9);ep=jp+ -9|0;gp=gp+4|0;if(gp>>>0>=fp>>>0){break o}bp=(jp|0)>9;jp=ep;if(bp){continue}break}break o}r:{if((jp|0)<0){break r}mp=lp?fp:gp+4|0;bp=ip+16|8;dp=ip+16|9;hp=gp;while(1){ep=ih(q[hp>>2],0,dp);if((dp|0)==(ep|0)){o[ip+24|0]=48;ep=bp}s:{if((gp|0)!=(hp|0)){if(ep>>>0<=ip+16>>>0){break s}while(1){ep=ep+ -1|0;o[ep|0]=48;if(ep>>>0>ip+16>>>0){continue}break}break s}ch(a,ep,1);ep=ep+1|0;if((jp|0)<1?!np:0){break s}ch(a,13539,1)}fp=ep;ep=dp-ep|0;ch(a,fp,(jp|0)>(ep|0)?ep:jp);jp=jp-ep|0;hp=hp+4|0;if(hp>>>0>=mp>>>0){break r}if((jp|0)>-1){continue}break}}fh(a,48,jp+18|0,18,0);ch(a,rp,pp-rp|0);break n}ep=jp}fh(a,48,ep+9|0,9,0)}}fh(a,32,ap,kp,cp^8192);T=ip+560|0;return((kp|0)<(ap|0)?ap:kp)|0}function lh(a,Go){a=a|0;Go=Go|0;var ap=0,bp=0,cp=0;ap=Go;Go=q[Go>>2]+15&-16;q[ap>>2]=Go+16;bp=a,cp=Yh(q[Go>>2],q[Go+4>>2],q[Go+8>>2],q[Go+12>>2]),v[bp>>3]=cp}function mh(a,Go,dp){a=a|0;Go=Go|0;dp=dp|0;var Dp=0,Ep=0,Fp=0,Gp=0,Hp=0,Ip=0;Dp=T-32|0;T=Dp;Ep=q[a+28>>2];q[Dp+16>>2]=Ep;Fp=q[a+20>>2];q[Dp+28>>2]=dp;q[Dp+24>>2]=Go;Go=Fp-Ep|0;q[Dp+20>>2]=Go;Fp=Go+dp|0;Hp=2;Go=Dp+16|0;while(1){a:{b:{if(Kh(K(q[a+60>>2],Go|0,Hp|0,Dp+12|0)|0)){q[Dp+12>>2]=-1;Ep=-1;break b}Ep=q[Dp+12>>2]}c:{if((Ep|0)==(Fp|0)){Go=q[a+44>>2];q[a+28>>2]=Go;q[a+20>>2]=Go;q[a+16>>2]=Go+q[a+48>>2];a=dp;break c}if((Ep|0)>-1){break a}q[a+28>>2]=0;q[a+16>>2]=0;q[a+20>>2]=0;q[a>>2]=q[a>>2]|32;a=0;if((Hp|0)==2){break c}a=dp-q[Go+4>>2]|0}T=Dp+32|0;return a|0}Gp=q[Go+4>>2];Ip=Ep>>>0>Gp>>>0;Go=Ip?Go+8|0:Go;Gp=Ep-(Ip?Gp:0)|0;q[Go>>2]=Gp+q[Go>>2];q[Go+4>>2]=q[Go+4>>2]-Gp;Fp=Fp-Ep|0;Hp=Hp-Ip|0;continue}}function nh(a,Go,dp,Jp){a=a|0;Go=Go|0;dp=dp|0;Jp=Jp|0;var Kp=0;Kp=T-16|0;T=Kp;a:{if(!Kh(S(q[a+60>>2],Go|0,dp|0,Jp&255,Kp+8|0)|0)){Go=q[Kp+12>>2];a=q[Kp+8>>2];break a}q[Kp+8>>2]=-1;q[Kp+12>>2]=-1;Go=-1;a=-1}T=Kp+16|0;V=Go;return a|0}function oh(a){a=a|0;return L(q[a+60>>2])|0}function ph(a){return a+ -48>>>0<10}function qh(a,q){if(!a){return 0}return rh(a,q)}function rh(a,Go){a:{if(a){if(Go>>>0<=127){break a}b:{if(!q[q[3685]>>2]){if((Go&-128)==57216){break a}break b}if(Go>>>0<=2047){o[a+1|0]=Go&63|128;o[a|0]=Go>>>6|192;return 2}if(!((Go&-8192)!=57344?Go>>>0>=55296:0)){o[a+2|0]=Go&63|128;o[a|0]=Go>>>12|224;o[a+1|0]=Go>>>6&63|128;return 3}if(Go+ -65536>>>0<=1048575){o[a+3|0]=Go&63|128;o[a|0]=Go>>>18|240;o[a+2|0]=Go>>>6&63|128;o[a+1|0]=Go>>>12&63|128;return 4}}q[3701]=25;a=-1}else{a=1}return a}o[a|0]=Go;return 1}function sh(a,Go){var dp=0,Jp=0,Lp=0;h(+a);dp=e(1)|0;Jp=e(0)|0;Lp=dp;dp=dp>>>20&2047;if((dp|0)!=2047){if(!dp){dp=Go;if(a==0){Go=0}else{a=sh(a*0x10000000000000000,Go);Go=q[Go>>2]+ -64|0}q[dp>>2]=Go;return a}q[Go>>2]=dp+ -1022;f(0,Jp|0);f(1,Lp&-2146435073|1071644672);a=+g()}return a}function th(a,Go){var Mp=0,Np=x(0);Mp=T-16|0;T=Mp;uh(Mp,a,Go,0);Np=Zh(q[Mp>>2],q[Mp+4>>2],q[Mp+8>>2],q[Mp+12>>2]);T=Mp+16|0;return Np}function uh(a,Go,Op,Pp){var Qp=0,Rp=0,Sp=0,Tp=0,Up=0,Vp=0,Wp=0;Qp=T-160|0;T=Qp;pj(Qp+16|0,0,144);q[Qp+92>>2]=-1;q[Qp+60>>2]=Go;q[Qp+24>>2]=-1;q[Qp+20>>2]=Go;Ih(Qp+16|0);Ch(Qp,Qp+16|0,Pp);Pp=q[Qp+8>>2];Sp=q[Qp+12>>2];Tp=q[Qp>>2];Up=q[Qp+4>>2];if(Op){Vp=Op;Rp=Go;Go=q[Qp+20>>2]-q[Qp+24>>2]|0;Wp=Go;Op=Go+q[Qp+136>>2]|0;Go=q[Qp+140>>2]+(Go>>31)|0;Go=Op>>>0<Wp>>>0?Go+1|0:Go;q[Vp>>2]=!(Go|Op)?Rp:Rp+Op|0}q[a>>2]=Tp;q[a+4>>2]=Up;q[a+8>>2]=Pp;q[a+12>>2]=Sp;T=Qp+160|0}function vh(a){var Go=0,Op=0;Go=T-16|0;T=Go;uh(Go,a,0,1);Op=Yh(q[Go>>2],q[Go+4>>2],q[Go+8>>2],q[Go+12>>2]);T=Go+16|0;return Op}function wh(a){return(a|0)==32|a+ -9>>>0<5}function xh(a){var q=0,Pp=0,Xp=0,Yp=0,Zp=0,_p=0;while(1){q=a;a=q+1|0;if(wh(o[q|0])){continue}break}Pp=o[q|0];Yp=Pp+ -43|0;a:{if(Yp>>>0>2){break a}b:{switch(Yp-1|0){case 1:Zp=1;break;case 0:break a;default:break b}}Pp=o[a|0];q=a;_p=Zp}if(ph(Pp)){while(1){Xp=(w(Xp,10)-o[q|0]|0)+48|0;a=o[q+1|0];q=q+1|0;if(ph(a)){continue}break}}return _p?Xp:0-Xp|0}function yh(a,$p,aq){var bq=0,cq=0,dq=0;a:{if(!aq){break a}while(1){bq=r[a|0];cq=r[$p|0];if((bq|0)==(cq|0)){$p=$p+1|0;a=a+1|0;aq=aq+ -1|0;if(aq){continue}break a}break}dq=bq-cq|0}return dq}function zh(a,$p){var aq=0,eq=0,fq=0;aq=($p|0)!=0;a:{b:{c:{d:{if(!$p|!(a&3)){break d}while(1){if(!r[a|0]){break c}a=a+1|0;$p=$p+ -1|0;aq=($p|0)!=0;if(!$p){break d}if(a&3){continue}break}}if(!aq){break b}}if(!r[a|0]){break a}e:{if($p>>>0>=4){aq=$p+ -4|0;eq=aq&-4;aq=aq-eq|0;eq=(a+eq|0)+4|0;while(1){fq=q[a>>2];if((fq^-1)&fq+ -16843009&-2139062144){break e}a=a+4|0;$p=$p+ -4|0;if($p>>>0>3){continue}break}$p=aq;a=eq}if(!$p){break b}}while(1){if(!r[a|0]){break a}a=a+1|0;$p=$p+ -1|0;if($p){continue}break}}return 0}return a}function Ah(a,$p,gq,hq,iq,jq,kq,lq,mq){q[a>>2]=$p;q[a+4>>2]=gq;q[a+8>>2]=hq;q[a+12>>2]=iq&65535|(mq>>>16&32768|iq>>>16&32767)<<16}function Bh(a,$p,gq,hq,iq,jq){var kq=0;kq=T-80|0;T=kq;a:{if((jq|0)>=16384){Vh(kq+32|0,$p,gq,hq,iq,0,0,0,2147352576);hq=q[kq+40>>2];iq=q[kq+44>>2];$p=q[kq+32>>2];gq=q[kq+36>>2];if((jq|0)<32767){jq=jq+ -16383|0;break a}Vh(kq+16|0,$p,gq,hq,iq,0,0,0,2147352576);jq=((jq|0)<49149?jq:49149)+ -32766|0;hq=q[kq+24>>2];iq=q[kq+28>>2];$p=q[kq+16>>2];gq=q[kq+20>>2];break a}if((jq|0)>-16383){break a}Vh(kq- -64|0,$p,gq,hq,iq,0,0,0,65536);hq=q[kq+72>>2];iq=q[kq+76>>2];$p=q[kq+64>>2];gq=q[kq+68>>2];if((jq|0)>-32765){jq=jq+16382|0;break a}Vh(kq+48|0,$p,gq,hq,iq,0,0,0,65536);jq=((jq|0)>-49146?jq:-49146)+32764|0;hq=q[kq+56>>2];iq=q[kq+60>>2];$p=q[kq+48>>2];gq=q[kq+52>>2]}Vh(kq,$p,gq,hq,iq,0,0,0,jq+16383<<16);$p=q[kq+12>>2];q[a+8>>2]=q[kq+8>>2];q[a+12>>2]=$p;$p=q[kq+4>>2];q[a>>2]=q[kq>>2];q[a+4>>2]=$p;T=kq+80|0}function Ch(a,$p,gq){var hq=0,iq=0,jq=0,lq=0,mq=0,nq=0,oq=0,pq=0,qq=0,rq=0;jq=T-48|0;T=jq;if(gq>>>0<=2){iq=$p+4|0;gq=gq<<2;qq=q[gq+13628>>2];rq=q[gq+13616>>2];while(1){gq=q[$p+4>>2];a:{if(gq>>>0<t[$p+104>>2]){q[iq>>2]=gq+1;gq=r[gq|0];break a}gq=Jh($p)}if(wh(gq)){continue}break}hq=gq+ -43|0;b:{if(hq>>>0>2){lq=1;break b}lq=1;if(!(hq-1)){break b}lq=(gq|0)==45?-1:1;gq=q[$p+4>>2];if(gq>>>0<t[$p+104>>2]){q[iq>>2]=gq+1;gq=r[gq|0];break b}gq=Jh($p)}hq=0;c:{d:{e:{while(1){if(o[hq+13548|0]==(gq|32)){f:{if(hq>>>0>6){break f}gq=q[$p+4>>2];if(gq>>>0<t[$p+104>>2]){q[iq>>2]=gq+1;gq=r[gq|0];break f}gq=Jh($p)}hq=hq+1|0;if((hq|0)!=8){continue}break e}break}if((hq|0)!=3){if((hq|0)==8){break e}if(hq>>>0<4){break d}if((hq|0)==8){break e}}$p=q[$p+104>>2];if($p){q[iq>>2]=q[iq>>2]+ -1}if(hq>>>0<4){break e}while(1){if($p){q[iq>>2]=q[iq>>2]+ -1}hq=hq+ -1|0;if(hq>>>0>3){continue}break}}Rh(jq,x(x(lq|0)*x(H)));nq=q[jq+8>>2];mq=q[jq+12>>2];oq=q[jq>>2];pq=q[jq+4>>2];break c}g:{h:{i:{if(hq){break i}hq=0;while(1){if(o[hq+13557|0]!=(gq|32)){break i}j:{if(hq>>>0>1){break j}gq=q[$p+4>>2];if(gq>>>0<t[$p+104>>2]){q[iq>>2]=gq+1;gq=r[gq|0];break j}gq=Jh($p)}hq=hq+1|0;if((hq|0)!=3){continue}break}break h}k:{l:{if(hq>>>0>3){break l}switch(hq-1|0){case 2:break h;case 0:case 1:break l;default:break k}}if(q[$p+104>>2]){q[iq>>2]=q[iq>>2]+ -1}q[3701]=28;break g}m:{if((gq|0)!=48){break m}hq=q[$p+4>>2];n:{if(hq>>>0<t[$p+104>>2]){q[iq>>2]=hq+1;hq=r[hq|0];break n}hq=Jh($p)}if((hq|32)==120){Dh(jq+16|0,$p,rq,qq,lq);nq=q[jq+24>>2];mq=q[jq+28>>2];oq=q[jq+16>>2];pq=q[jq+20>>2];break c}if(!q[$p+104>>2]){break m}q[iq>>2]=q[iq>>2]+ -1}Eh(jq+32|0,$p,gq,rq,qq,lq);nq=q[jq+40>>2];mq=q[jq+44>>2];oq=q[jq+32>>2];pq=q[jq+36>>2];break c}o:{gq=q[$p+4>>2];p:{if(gq>>>0<t[$p+104>>2]){q[iq>>2]=gq+1;gq=r[gq|0];break p}gq=Jh($p)}if((gq|0)==40){hq=1;break o}mq=2147450880;if(!q[$p+104>>2]){break c}q[iq>>2]=q[iq>>2]+ -1;break c}while(1){q:{gq=q[$p+4>>2];r:{if(gq>>>0<t[$p+104>>2]){q[iq>>2]=gq+1;gq=r[gq|0];break r}gq=Jh($p)}if(!(gq+ -48>>>0<10|gq+ -65>>>0<26|(gq|0)==95)){if(gq+ -97>>>0>=26){break q}}hq=hq+1|0;continue}break}mq=2147450880;if((gq|0)==41){break c}$p=q[$p+104>>2];if($p){q[iq>>2]=q[iq>>2]+ -1}if(!hq){break c}while(1){hq=hq+ -1|0;if($p){q[iq>>2]=q[iq>>2]+ -1}if(hq){continue}break}break c}Ih($p)}}q[a>>2]=oq;q[a+4>>2]=pq;q[a+8>>2]=nq;q[a+12>>2]=mq;T=jq+48|0}function Dh(a,$p,gq,sq,tq){var uq=0,vq=0,wq=0,xq=0,yq=0,zq=0,Aq=0,Bq=0,Cq=0,Dq=0,Eq=0,Fq=0,Gq=0,Hq=0,Iq=0,Jq=0,Kq=0,Lq=0,Mq=0,Nq=0,Oq=0,Pq=0;uq=T-432|0;T=uq;vq=q[$p+4>>2];a:{if(vq>>>0<t[$p+104>>2]){q[$p+4>>2]=vq+1;wq=r[vq|0];break a}wq=Jh($p)}b:{c:{while(1){d:{if((wq|0)!=48){if((wq|0)!=46){break b}vq=q[$p+4>>2];if(vq>>>0>=t[$p+104>>2]){break d}q[$p+4>>2]=vq+1;wq=r[vq|0];break c}vq=q[$p+4>>2];if(vq>>>0<t[$p+104>>2]){Iq=1;q[$p+4>>2]=vq+1;wq=r[vq|0]}else{wq=Jh($p);Iq=1}continue}break}wq=Jh($p)}Hq=1;if((wq|0)!=48){break b}while(1){vq=Jq+ -1|0;wq=Kq+ -1|0;if(wq>>>0<4294967295){vq=vq+1|0}Kq=wq;Jq=vq;vq=q[$p+4>>2];e:{if(vq>>>0<t[$p+104>>2]){q[$p+4>>2]=vq+1;wq=r[vq|0];break e}wq=Jh($p)}if((wq|0)==48){continue}break}Iq=1}vq=1073676288;while(1){f:{Lq=wq|32;g:{h:{Mq=wq+ -48|0;if(Mq>>>0<10){break h}if(Lq+ -97>>>0>5?(wq|0)!=46:0){break f}if((wq|0)!=46){break h}if(Hq){break f}Hq=1;Kq=Cq;Jq=xq;break g}wq=(wq|0)>57?Lq+ -87|0:Mq;i:{if((xq|0)<0?1:(xq|0)<=0?Cq>>>0>7?0:1:0){Dq=wq+(Dq<<4)|0;break i}if((xq|0)<0?1:(xq|0)<=0?Cq>>>0>28?0:1:0){Vh(uq+32|0,zq,Eq,yq,vq,0,0,0,1073414144);Sh(uq+48|0,wq);zq=q[uq+32>>2];Eq=q[uq+36>>2];yq=q[uq+40>>2];vq=q[uq+44>>2];Vh(uq+16|0,zq,Eq,yq,vq,q[uq+48>>2],q[uq+52>>2],q[uq+56>>2],q[uq+60>>2]);Lh(uq,Aq,Bq,Fq,Gq,q[uq+16>>2],q[uq+20>>2],q[uq+24>>2],q[uq+28>>2]);Fq=q[uq+8>>2];Gq=q[uq+12>>2];Aq=q[uq>>2];Bq=q[uq+4>>2];break i}if(!wq|Pq){break i}Vh(uq+80|0,zq,Eq,yq,vq,0,0,0,1073610752);Lh(uq- -64|0,Aq,Bq,Fq,Gq,q[uq+80>>2],q[uq+84>>2],q[uq+88>>2],q[uq+92>>2]);Fq=q[uq+72>>2];Gq=q[uq+76>>2];Pq=1;Aq=q[uq+64>>2];Bq=q[uq+68>>2]}wq=Cq+1|0;if(wq>>>0<1){xq=xq+1|0}Cq=wq;Iq=1}wq=q[$p+4>>2];if(wq>>>0<t[$p+104>>2]){q[$p+4>>2]=wq+1;wq=r[wq|0]}else{wq=Jh($p)}continue}break}j:{if(!Iq){gq=q[$p+104>>2];if(gq){q[$p+4>>2]=q[$p+4>>2]+ -1}k:{if(!gq){break k}q[$p+4>>2]=q[$p+4>>2]+ -1;if(!Hq|!gq){break k}q[$p+4>>2]=q[$p+4>>2]+ -1}Qh(uq+96|0,+(tq|0)*0);Aq=q[uq+96>>2];Bq=q[uq+100>>2];gq=q[uq+108>>2];$p=q[uq+104>>2];break j}if((xq|0)<0?1:(xq|0)<=0?Cq>>>0>7?0:1:0){yq=Cq;vq=xq;while(1){Dq=Dq<<4;Eq=(vq|0)<0?1:(vq|0)<=0?yq>>>0>=7?0:1:0;zq=vq;vq=yq+1|0;if(vq>>>0<1){zq=zq+1|0}yq=vq;vq=zq;if(Eq){continue}break}}l:{if((wq|32)==112){yq=Fh($p);wq=V;vq=wq;if(yq|(vq|0)!=-2147483648){break l}yq=0;vq=0;if(!q[$p+104>>2]){break l}q[$p+4>>2]=q[$p+4>>2]+ -1;break l}yq=0;vq=0;if(!q[$p+104>>2]){break l}q[$p+4>>2]=q[$p+4>>2]+ -1}if(!Dq){Qh(uq+112|0,+(tq|0)*0);Aq=q[uq+112>>2];Bq=q[uq+116>>2];gq=q[uq+124>>2];$p=q[uq+120>>2];break j}$p=Hq?Kq:Cq;zq=(Hq?Jq:xq)<<2|$p>>>30;xq=yq+($p<<2)|0;$p=vq+zq|0;vq=xq+ -32|0;xq=(xq>>>0<yq>>>0?$p+1|0:$p)+ -1|0;Cq=vq;$p=0-sq|0;wq=vq>>>0<=$p>>>0?0:1;xq=vq>>>0<4294967264?xq+1|0:xq;$p=$p>>31;if((xq|0)>($p|0)?1:(xq|0)>=($p|0)?wq:0){Sh(uq+160|0,tq);Vh(uq+144|0,q[uq+160>>2],q[uq+164>>2],q[uq+168>>2],q[uq+172>>2],-1,-1,-1,2147418111);Vh(uq+128|0,q[uq+144>>2],q[uq+148>>2],q[uq+152>>2],q[uq+156>>2],-1,-1,-1,2147418111);q[3701]=68;Aq=q[uq+128>>2];Bq=q[uq+132>>2];gq=q[uq+140>>2];$p=q[uq+136>>2];break j}$p=sq+ -226|0;vq=Cq>>>0<$p>>>0?0:1;$p=$p>>31;if((xq|0)>($p|0)?1:(xq|0)>=($p|0)?vq:0){if((Dq|0)>-1){while(1){Lh(uq+416|0,Aq,Bq,Fq,Gq,0,0,0,-1073807360);$p=Oh(Aq,Bq,Fq,Gq);vq=($p|0)<0;Lh(uq+400|0,Aq,Bq,Fq,Gq,vq?Aq:q[uq+416>>2],vq?Bq:q[uq+420>>2],vq?Fq:q[uq+424>>2],vq?Gq:q[uq+428>>2]);vq=xq+ -1|0;xq=Cq+ -1|0;if(xq>>>0<4294967295){vq=vq+1|0}Cq=xq;xq=vq;Fq=q[uq+408>>2];Gq=q[uq+412>>2];Aq=q[uq+400>>2];Bq=q[uq+404>>2];Dq=Dq<<1|($p|0)>-1;if((Dq|0)>-1){continue}break}}vq=Cq;wq=sq;yq=(vq-wq|0)+32|0;zq=xq-((wq>>31)+(vq>>>0<wq>>>0)|0)|0;xq=yq;$p=gq;sq=xq>>>0>=$p>>>0?0:1;zq=xq>>>0<32?zq+1|0:zq;$p=$p>>31;$p=((zq|0)<($p|0)?1:(zq|0)<=($p|0)?sq:0)?(xq|0)>0?xq:0:gq;m:{if(($p|0)>=113){Sh(uq+384|0,tq);yq=q[uq+392>>2];vq=q[uq+396>>2];zq=q[uq+384>>2];Eq=q[uq+388>>2];sq=0;gq=0;break m}Sh(uq+336|0,tq);Qh(uq+352|0,mj(144-$p|0));zq=q[uq+336>>2];Eq=q[uq+340>>2];yq=q[uq+344>>2];vq=q[uq+348>>2];Ah(uq+368|0,q[uq+352>>2],q[uq+356>>2],q[uq+360>>2],q[uq+364>>2],zq,Eq,yq,vq);Nq=q[uq+376>>2];Oq=q[uq+380>>2];sq=q[uq+372>>2];gq=q[uq+368>>2]}$p=!(Dq&1)&((Nh(Aq,Bq,Fq,Gq,0,0,0,0)|0)!=0&($p|0)<32);Th(uq+320|0,$p+Dq|0);Vh(uq+304|0,zq,Eq,yq,vq,q[uq+320>>2],q[uq+324>>2],q[uq+328>>2],q[uq+332>>2]);Vh(uq+288|0,$p?0:Aq,$p?0:Bq,$p?0:Fq,$p?0:Gq,zq,Eq,yq,vq);Lh(uq+272|0,q[uq+304>>2],q[uq+308>>2],q[uq+312>>2],q[uq+316>>2],gq,sq,Nq,Oq);Lh(uq+256|0,q[uq+288>>2],q[uq+292>>2],q[uq+296>>2],q[uq+300>>2],q[uq+272>>2],q[uq+276>>2],q[uq+280>>2],q[uq+284>>2]);Xh(uq+240|0,q[uq+256>>2],q[uq+260>>2],q[uq+264>>2],q[uq+268>>2],gq,sq,Nq,Oq);$p=q[uq+240>>2];gq=q[uq+244>>2];sq=q[uq+248>>2];tq=q[uq+252>>2];if(!Nh($p,gq,sq,tq,0,0,0,0)){q[3701]=68}Bh(uq+224|0,$p,gq,sq,tq,Cq);Aq=q[uq+224>>2];Bq=q[uq+228>>2];gq=q[uq+236>>2];$p=q[uq+232>>2];break j}Sh(uq+208|0,tq);Vh(uq+192|0,q[uq+208>>2],q[uq+212>>2],q[uq+216>>2],q[uq+220>>2],0,0,0,65536);Vh(uq+176|0,q[uq+192>>2],q[uq+196>>2],q[uq+200>>2],q[uq+204>>2],0,0,0,65536);q[3701]=68;Aq=q[uq+176>>2];Bq=q[uq+180>>2];gq=q[uq+188>>2];$p=q[uq+184>>2]}q[a>>2]=Aq;q[a+4>>2]=Bq;q[a+8>>2]=$p;q[a+12>>2]=gq;T=uq+432|0}function Eh(a,$p,gq,sq,tq,Qq){var Rq=0,Sq=0,Tq=0,Uq=0,Vq=0,Wq=0,Xq=0,Yq=0,Zq=0,_q=0,$q=0,ar=0,br=0,cr=0,dr=0,er=0,fr=0,gr=0,hr=0,ir=0,jr=0,kr=0,lr=0;Rq=T-8960|0;T=Rq;dr=sq+tq|0;jr=0-dr|0;a:{b:{while(1){c:{if((gq|0)!=48){if((gq|0)!=46){break a}gq=q[$p+4>>2];if(gq>>>0>=t[$p+104>>2]){break c}q[$p+4>>2]=gq+1;gq=r[gq|0];break b}gq=q[$p+4>>2];if(gq>>>0<t[$p+104>>2]){Zq=1;q[$p+4>>2]=gq+1;gq=r[gq|0]}else{gq=Jh($p);Zq=1}continue}break}gq=Jh($p)}Vq=1;if((gq|0)!=48){break a}while(1){Sq=Sq+ -1|0;gq=Tq+ -1|0;if(gq>>>0<4294967295){Sq=Sq+1|0}Tq=gq;gq=q[$p+4>>2];d:{if(gq>>>0<t[$p+104>>2]){q[$p+4>>2]=gq+1;gq=r[gq|0];break d}gq=Jh($p)}if((gq|0)==48){continue}break}Zq=1}q[Rq+768>>2]=0;kr=a;lr=a;e:{f:{Uq=(gq|0)==46;_q=gq+ -48|0;g:{h:{i:{if(!(Uq|_q>>>0<=9)){break i}while(1){j:{if(Uq&1){if(!Vq){Tq=Yq;Sq=Xq;Vq=1;break j}Zq=(Zq|0)!=0;break h}Uq=Yq+1|0;if(Uq>>>0<1){Xq=Xq+1|0}Yq=Uq;if((Wq|0)<=2044){cr=(gq|0)!=48?Yq:cr;Uq=(Rq+768|0)+(Wq<<2)|0;Zq=Uq;if($q){_q=(w(q[Uq>>2],10)+gq|0)+ -48|0}q[Zq>>2]=_q;Zq=1;Uq=$q+1|0;gq=(Uq|0)==9;$q=gq?0:Uq;Wq=gq+Wq|0;break j}if((gq|0)==48){break j}q[Rq+8944>>2]=q[Rq+8944>>2]|1}gq=q[$p+4>>2];k:{if(gq>>>0<t[$p+104>>2]){q[$p+4>>2]=gq+1;gq=r[gq|0];break k}gq=Jh($p)}Uq=(gq|0)==46;_q=gq+ -48|0;if(Uq|_q>>>0<10){continue}break}}Tq=Vq?Tq:Yq;Sq=Vq?Sq:Xq;if(!(!Zq|(gq|32)!=101)){gq=Fh($p);Uq=V;Vq=Uq;l:{if(gq|(Uq|0)!=-2147483648){break l}gq=0;Vq=0;if(!q[$p+104>>2]){break l}q[$p+4>>2]=q[$p+4>>2]+ -1}Sq=Sq+Vq|0;$p=gq+Tq|0;if($p>>>0<gq>>>0){Sq=Sq+1|0}Tq=$p;break f}Zq=(Zq|0)!=0;if((gq|0)<0){break g}}if(!q[$p+104>>2]){break g}q[$p+4>>2]=q[$p+4>>2]+ -1}if(Zq){break f}q[3701]=28;Ih($p);Tq=0;Sq=0;gq=0;$p=0;break e}$p=q[Rq+768>>2];if(!$p){Qh(Rq,+(Qq|0)*0);Tq=q[Rq+8>>2];Sq=q[Rq+12>>2];gq=q[Rq+4>>2];$p=q[Rq>>2];break e}if(!((Tq|0)!=(Yq|0)|(Sq|0)!=(Xq|0)|((Xq|0)>0?1:(Xq|0)>=0?Yq>>>0<=9?0:1:0)|($p>>>sq?(sq|0)<=30:0))){Th(Rq+32|0,$p);Sh(Rq+48|0,Qq);Vh(Rq+16|0,q[Rq+48>>2],q[Rq+52>>2],q[Rq+56>>2],q[Rq+60>>2],q[Rq+32>>2],q[Rq+36>>2],q[Rq+40>>2],q[Rq+44>>2]);Tq=q[Rq+24>>2];Sq=q[Rq+28>>2];gq=q[Rq+20>>2];$p=q[Rq+16>>2];break e}$p=(tq|0)/-2|0;gq=Tq>>>0<=$p>>>0?0:1;$p=$p>>31;if((Sq|0)>($p|0)?1:(Sq|0)>=($p|0)?gq:0){Sh(Rq+96|0,Qq);Vh(Rq+80|0,q[Rq+96>>2],q[Rq+100>>2],q[Rq+104>>2],q[Rq+108>>2],-1,-1,-1,2147418111);Vh(Rq- -64|0,q[Rq+80>>2],q[Rq+84>>2],q[Rq+88>>2],q[Rq+92>>2],-1,-1,-1,2147418111);q[3701]=68;Tq=q[Rq+72>>2];Sq=q[Rq+76>>2];gq=q[Rq+68>>2];$p=q[Rq+64>>2];break e}$p=tq+ -226|0;gq=Tq>>>0>=$p>>>0?0:1;$p=$p>>31;if((Sq|0)<($p|0)?1:(Sq|0)<=($p|0)?gq:0){Sh(Rq+144|0,Qq);Vh(Rq+128|0,q[Rq+144>>2],q[Rq+148>>2],q[Rq+152>>2],q[Rq+156>>2],0,0,0,65536);Vh(Rq+112|0,q[Rq+128>>2],q[Rq+132>>2],q[Rq+136>>2],q[Rq+140>>2],0,0,0,65536);q[3701]=68;Tq=q[Rq+120>>2];Sq=q[Rq+124>>2];gq=q[Rq+116>>2];$p=q[Rq+112>>2];break e}if($q){if(($q|0)<=8){gq=(Rq+768|0)+(Wq<<2)|0;$p=q[gq>>2];while(1){$p=w($p,10);Sq=($q|0)<8;$q=$q+1|0;if(Sq){continue}break}q[gq>>2]=$p}Wq=Wq+1|0}m:{Vq=Tq;if((cr|0)>8|(cr|0)>(Tq|0)|(Tq|0)>17){break m}if((Vq|0)==9){Th(Rq+176|0,q[Rq+768>>2]);Sh(Rq+192|0,Qq);Vh(Rq+160|0,q[Rq+192>>2],q[Rq+196>>2],q[Rq+200>>2],q[Rq+204>>2],q[Rq+176>>2],q[Rq+180>>2],q[Rq+184>>2],q[Rq+188>>2]);Tq=q[Rq+168>>2];Sq=q[Rq+172>>2];gq=q[Rq+164>>2];$p=q[Rq+160>>2];break e}if((Vq|0)<=8){Th(Rq+256|0,q[Rq+768>>2]);Sh(Rq+272|0,Qq);Vh(Rq+240|0,q[Rq+272>>2],q[Rq+276>>2],q[Rq+280>>2],q[Rq+284>>2],q[Rq+256>>2],q[Rq+260>>2],q[Rq+264>>2],q[Rq+268>>2]);Sh(Rq+224|0,q[(0-Vq<<2)+13616>>2]);Ph(Rq+208|0,q[Rq+240>>2],q[Rq+244>>2],q[Rq+248>>2],q[Rq+252>>2],q[Rq+224>>2],q[Rq+228>>2],q[Rq+232>>2],q[Rq+236>>2]);Tq=q[Rq+216>>2];Sq=q[Rq+220>>2];gq=q[Rq+212>>2];$p=q[Rq+208>>2];break e}$p=(w(Vq,-3)+sq|0)+27|0;gq=q[Rq+768>>2];if(gq>>>$p?($p|0)<=30:0){break m}Th(Rq+336|0,gq);Sh(Rq+352|0,Qq);Vh(Rq+320|0,q[Rq+352>>2],q[Rq+356>>2],q[Rq+360>>2],q[Rq+364>>2],q[Rq+336>>2],q[Rq+340>>2],q[Rq+344>>2],q[Rq+348>>2]);Sh(Rq+304|0,q[(Vq<<2)+13544>>2]);Vh(Rq+288|0,q[Rq+320>>2],q[Rq+324>>2],q[Rq+328>>2],q[Rq+332>>2],q[Rq+304>>2],q[Rq+308>>2],q[Rq+312>>2],q[Rq+316>>2]);Tq=q[Rq+296>>2];Sq=q[Rq+300>>2];gq=q[Rq+292>>2];$p=q[Rq+288>>2];break e}$q=0;$p=(Vq|0)%9|0;n:{if(!$p){gq=0;break n}Sq=(Vq|0)>-1?$p:$p+9|0;o:{if(!Wq){gq=0;Wq=0;break o}Tq=q[(0-Sq<<2)+13616>>2];Xq=1e9/(Tq|0)|0;Zq=0;$p=0;gq=0;while(1){Uq=Zq;Yq=(Rq+768|0)+($p<<2)|0;Zq=q[Yq>>2];_q=(Zq>>>0)/(Tq>>>0)|0;Uq=Uq+_q|0;q[Yq>>2]=Uq;Uq=!Uq&($p|0)==(gq|0);gq=Uq?gq+1&2047:gq;Vq=Uq?Vq+ -9|0:Vq;Zq=w(Xq,Zq-w(Tq,_q)|0);$p=$p+1|0;if((Wq|0)!=($p|0)){continue}break}if(!Zq){break o}q[(Rq+768|0)+(Wq<<2)>>2]=Zq;Wq=Wq+1|0}Vq=(Vq-Sq|0)+9|0}while(1){Yq=(Rq+768|0)+(gq<<2)|0;p:{while(1){if((Vq|0)!=36|t[Yq>>2]>=10384593?(Vq|0)>=36:0){break p}_q=Wq+2047|0;Zq=0;Uq=Wq;while(1){Wq=Uq;Xq=_q&2047;_q=(Rq+768|0)+(Xq<<2)|0;$p=q[_q>>2];Sq=$p>>>3;Tq=$p<<29;$p=Tq+Zq|0;if($p>>>0<Tq>>>0){Sq=Sq+1|0}Tq=$p;Uq=0;q:{if(!Sq&$p>>>0<1000000001|Sq>>>0<0){break q}Uq=Pj($p,Sq,1e9,0);Tq=Tq-Nj(Uq,V,1e9,0)|0}Zq=Uq;q[_q>>2]=Tq;Uq=(Xq|0)!=(Wq+ -1&2047)?Wq:(gq|0)==(Xq|0)?Wq:Tq?Wq:Xq;_q=Xq+ -1|0;if((gq|0)!=(Xq|0)){continue}break}$q=$q+ -29|0;if(!Zq){continue}break}gq=gq+ -1&2047;if((Uq|0)==(gq|0)){$p=(Rq+768|0)+((Uq+2046&2047)<<2)|0;Wq=Uq+ -1&2047;q[$p>>2]=q[$p>>2]|q[(Rq+768|0)+(Wq<<2)>>2]}Vq=Vq+9|0;q[(Rq+768|0)+(gq<<2)>>2]=Zq;continue}break}r:{s:while(1){Sq=Wq+1&2047;Xq=(Rq+768|0)+((Wq+ -1&2047)<<2)|0;while(1){Tq=(Vq|0)>45?9:1;t:{while(1){Uq=gq;$p=0;u:{while(1){gq=$p+Uq&2047;v:{if((gq|0)==(Wq|0)){break v}gq=q[(Rq+768|0)+(gq<<2)>>2];Yq=q[($p<<2)+13568>>2];if(gq>>>0<Yq>>>0){break v}if(gq>>>0>Yq>>>0){break u}$p=$p+1|0;if(($p|0)!=4){continue}}break}if((Vq|0)!=36){break u}Tq=0;Sq=0;$p=0;Yq=0;Xq=0;while(1){gq=$p+Uq&2047;if((gq|0)==(Wq|0)){Wq=Wq+1&2047;q[((Wq<<2)+Rq|0)+764>>2]=0}Vh(Rq+752|0,Tq,Sq,Yq,Xq,0,0,1342177280,1075633366);Th(Rq+736|0,q[(Rq+768|0)+(gq<<2)>>2]);Lh(Rq+720|0,q[Rq+752>>2],q[Rq+756>>2],q[Rq+760>>2],q[Rq+764>>2],q[Rq+736>>2],q[Rq+740>>2],q[Rq+744>>2],q[Rq+748>>2]);Yq=q[Rq+728>>2];Xq=q[Rq+732>>2];Tq=q[Rq+720>>2];Sq=q[Rq+724>>2];$p=$p+1|0;if(($p|0)!=4){continue}break}Sh(Rq+704|0,Qq);Vh(Rq+688|0,Tq,Sq,Yq,Xq,q[Rq+704>>2],q[Rq+708>>2],q[Rq+712>>2],q[Rq+716>>2]);Yq=q[Rq+696>>2];Xq=q[Rq+700>>2];Tq=0;Sq=0;gq=q[Rq+688>>2];Vq=q[Rq+692>>2];_q=$q+113|0;tq=_q-tq|0;Zq=(tq|0)<(sq|0);sq=Zq?(tq|0)>0?tq:0:sq;if((sq|0)<=112){break t}break r}$q=Tq+$q|0;gq=Wq;if((Uq|0)==(gq|0)){continue}break}Yq=1e9>>>Tq;Zq=-1<<Tq^-1;$p=0;gq=Uq;while(1){_q=(Rq+768|0)+(Uq<<2)|0;cr=q[_q>>2];$p=(cr>>>Tq)+$p|0;q[_q>>2]=$p;$p=!$p&(gq|0)==(Uq|0);gq=$p?gq+1&2047:gq;Vq=$p?Vq+ -9|0:Vq;$p=w(Yq,Zq&cr);Uq=Uq+1&2047;if((Uq|0)!=(Wq|0)){continue}break}if(!$p){continue}if((gq|0)!=(Sq|0)){q[(Rq+768|0)+(Wq<<2)>>2]=$p;Wq=Sq;continue s}q[Xq>>2]=q[Xq>>2]|1;gq=Sq;continue}break}break}Qh(Rq+640|0,mj(225-sq|0));Ah(Rq+672|0,q[Rq+640>>2],q[Rq+644>>2],q[Rq+648>>2],q[Rq+652>>2],gq,Vq,Yq,Xq);er=q[Rq+680>>2];fr=q[Rq+684>>2];gr=q[Rq+672>>2];hr=q[Rq+676>>2];Qh(Rq+624|0,mj(113-sq|0));kj(Rq+656|0,gq,Vq,Yq,Xq,q[Rq+624>>2],q[Rq+628>>2],q[Rq+632>>2],q[Rq+636>>2]);Tq=q[Rq+656>>2];Sq=q[Rq+660>>2];ar=q[Rq+664>>2];br=q[Rq+668>>2];Xh(Rq+608|0,gq,Vq,Yq,Xq,Tq,Sq,ar,br);Lh(Rq+592|0,gr,hr,er,fr,q[Rq+608>>2],q[Rq+612>>2],q[Rq+616>>2],q[Rq+620>>2]);Yq=q[Rq+600>>2];Xq=q[Rq+604>>2];gq=q[Rq+592>>2];Vq=q[Rq+596>>2]}$p=Uq+4&2047;w:{if(($p|0)==(Wq|0)){break w}$p=q[(Rq+768|0)+($p<<2)>>2];x:{if($p>>>0<=499999999){if((Uq+5&2047)==(Wq|0)?!$p:0){break x}Qh(Rq+480|0,+(Qq|0)*.25);Lh(Rq+464|0,Tq,Sq,ar,br,q[Rq+480>>2],q[Rq+484>>2],q[Rq+488>>2],q[Rq+492>>2]);ar=q[Rq+472>>2];br=q[Rq+476>>2];Tq=q[Rq+464>>2];Sq=q[Rq+468>>2];break x}if(($p|0)!=5e8){Qh(Rq+576|0,+(Qq|0)*.75);Lh(Rq+560|0,Tq,Sq,ar,br,q[Rq+576>>2],q[Rq+580>>2],q[Rq+584>>2],q[Rq+588>>2]);ar=q[Rq+568>>2];br=q[Rq+572>>2];Tq=q[Rq+560>>2];Sq=q[Rq+564>>2];break x}ir=+(Qq|0);if((Uq+5&2047)==(Wq|0)){Qh(Rq+512|0,ir*.5);Lh(Rq+496|0,Tq,Sq,ar,br,q[Rq+512>>2],q[Rq+516>>2],q[Rq+520>>2],q[Rq+524>>2]);ar=q[Rq+504>>2];br=q[Rq+508>>2];Tq=q[Rq+496>>2];Sq=q[Rq+500>>2];break x}Qh(Rq+544|0,ir*.75);Lh(Rq+528|0,Tq,Sq,ar,br,q[Rq+544>>2],q[Rq+548>>2],q[Rq+552>>2],q[Rq+556>>2]);ar=q[Rq+536>>2];br=q[Rq+540>>2];Tq=q[Rq+528>>2];Sq=q[Rq+532>>2]}if((sq|0)>111){break w}kj(Rq+448|0,Tq,Sq,ar,br,0,0,0,1073676288);if(Nh(q[Rq+448>>2],q[Rq+452>>2],q[Rq+456>>2],q[Rq+460>>2],0,0,0,0)){break w}Lh(Rq+432|0,Tq,Sq,ar,br,0,0,0,1073676288);ar=q[Rq+440>>2];br=q[Rq+444>>2];Tq=q[Rq+432>>2];Sq=q[Rq+436>>2]}Lh(Rq+416|0,gq,Vq,Yq,Xq,Tq,Sq,ar,br);Xh(Rq+400|0,q[Rq+416>>2],q[Rq+420>>2],q[Rq+424>>2],q[Rq+428>>2],gr,hr,er,fr);Yq=q[Rq+408>>2];Xq=q[Rq+412>>2];gq=q[Rq+400>>2];Vq=q[Rq+404>>2];y:{if((_q&2147483647)<=(-2-dr|0)){break y}Vh(Rq+384|0,gq,Vq,Yq,Xq,0,0,0,1073610752);Qq=Nh(Tq,Sq,ar,br,0,0,0,0);$p=y(Yh(gq,Vq,Yq,Xq))>=1.0384593717069655e+34;Yq=$p?q[Rq+392>>2]:Yq;Xq=$p?q[Rq+396>>2]:Xq;gq=$p?q[Rq+384>>2]:gq;Vq=$p?q[Rq+388>>2]:Vq;$q=$p+$q|0;if(($q+110|0)<=(jr|0)?!(Zq&($p^1|(sq|0)!=(tq|0))&(Qq|0)!=0):0){break y}q[3701]=68}Bh(Rq+368|0,gq,Vq,Yq,Xq,$q);Tq=q[Rq+376>>2];Sq=q[Rq+380>>2];gq=q[Rq+372>>2];$p=q[Rq+368>>2]}q[lr>>2]=$p;q[kr+4>>2]=gq;q[a+8>>2]=Tq;q[a+12>>2]=Sq;T=Rq+8960|0}function Fh(a){var $p=0,gq=0,sq=0,tq=0,Qq=0;$p=q[a+4>>2];a:{if($p>>>0<t[a+104>>2]){q[a+4>>2]=$p+1;$p=r[$p|0];break a}$p=Jh(a)}sq=$p+ -43|0;b:{if(!(sq-1|0?sq>>>0<=2:0)){gq=$p+ -48|0;break b}Qq=($p|0)==45;$p=q[a+4>>2];c:{if($p>>>0<t[a+104>>2]){q[a+4>>2]=$p+1;$p=r[$p|0];break c}$p=Jh(a)}gq=$p+ -48|0;if(!(gq>>>0<10|!q[a+104>>2])){q[a+4>>2]=q[a+4>>2]+ -1}}d:{if(gq>>>0<10){gq=0;while(1){sq=w(gq,10)+$p|0;$p=q[a+4>>2];e:{if($p>>>0<t[a+104>>2]){q[a+4>>2]=$p+1;$p=r[$p|0];break e}$p=Jh(a)}tq=$p+ -48|0;gq=sq+ -48|0;if((gq|0)<214748364?tq>>>0<=9:0){continue}break}sq=gq;gq=gq>>31;f:{if(tq>>>0>=10){break f}while(1){gq=Nj(sq,gq,10,0);sq=gq+$p|0;$p=V;$p=sq>>>0<gq>>>0?$p+1|0:$p;sq=sq+ -48|0;gq=$p+ -1|0;gq=sq>>>0<4294967248?gq+1|0:gq;$p=q[a+4>>2];g:{if($p>>>0<t[a+104>>2]){q[a+4>>2]=$p+1;$p=r[$p|0];break g}$p=Jh(a)}tq=$p+ -48|0;if(tq>>>0>9){break f}if((gq|0)<21474836?1:(gq|0)<=21474836?sq>>>0>=2061584302?0:1:0){continue}break}}if(tq>>>0<10){while(1){$p=q[a+4>>2];h:{if($p>>>0<t[a+104>>2]){q[a+4>>2]=$p+1;$p=r[$p|0];break h}$p=Jh(a)}if($p+ -48>>>0<10){continue}break}}if(q[a+104>>2]){q[a+4>>2]=q[a+4>>2]+ -1}a=sq;sq=Qq?0-a|0:a;gq=Qq?0-(gq+(0<a>>>0)|0)|0:gq;break d}sq=0;gq=-2147483648;if(!q[a+104>>2]){break d}q[a+4>>2]=q[a+4>>2]+ -1;V=-2147483648;return 0}V=gq;return sq}function Gh(a){var mr=0,nr=0;mr=r[a+74|0];o[a+74|0]=mr+ -1|mr;if(t[a+20>>2]>t[a+28>>2]){n[q[a+36>>2]](a,0,0)|0}q[a+28>>2]=0;q[a+16>>2]=0;q[a+20>>2]=0;mr=q[a>>2];if(mr&4){q[a>>2]=mr|32;return-1}nr=q[a+44>>2]+q[a+48>>2]|0;q[a+8>>2]=nr;q[a+4>>2]=nr;return mr<<27>>31}function Hh(a){var or=0,pr=0;or=T-16|0;T=or;pr=-1;a:{if(Gh(a)){break a}if((n[q[a+32>>2]](a,or+15|0,1)|0)!=1){break a}pr=r[or+15|0]}T=or+16|0;return pr}function Ih(a){var qr=0,rr=0;q[a+112>>2]=0;q[a+116>>2]=0;qr=q[a+8>>2];rr=qr-q[a+4>>2]|0;q[a+120>>2]=rr;q[a+124>>2]=rr>>31;q[a+104>>2]=qr}function Jh(a){var sr=0,tr=0,ur=0,vr=0,wr=0,xr=0,yr=0;sr=q[a+116>>2];tr=sr;a:{wr=q[a+112>>2];b:{if(sr|wr){sr=q[a+124>>2];if((sr|0)>(tr|0)?1:(sr|0)>=(tr|0)?t[a+120>>2]<wr>>>0?0:1:0){break b}}wr=Hh(a);if((wr|0)>-1){break a}}q[a+104>>2]=0;return-1}sr=q[a+8>>2];tr=q[a+116>>2];vr=tr;c:{d:{ur=q[a+112>>2];if(!(tr|ur)){break d}tr=(q[a+124>>2]^-1)+vr|0;vr=q[a+120>>2]^-1;ur=vr+ur|0;if(ur>>>0<vr>>>0){tr=tr+1|0}vr=ur;ur=q[a+4>>2];xr=sr-ur|0;yr=vr>>>0<xr>>>0?0:1;xr=xr>>31;if((tr|0)>(xr|0)?1:(tr|0)>=(xr|0)?yr:0){break d}q[a+104>>2]=vr+ur;break c}q[a+104>>2]=sr}e:{if(!sr){sr=q[a+4>>2];break e}tr=a;vr=sr;sr=q[a+4>>2];ur=(vr-sr|0)+1|0;vr=ur+q[a+120>>2]|0;a=q[a+124>>2]+(ur>>31)|0;q[tr+120>>2]=vr;q[tr+124>>2]=vr>>>0<ur>>>0?a+1|0:a}a=sr+ -1|0;if(r[a|0]!=(wr|0)){o[a|0]=wr}return wr}function Kh(a){if(!a){return 0}q[3701]=a;return-1}function Lh(a,zr,Ar,Br,Cr,Dr,Er,Fr,Gr){var Hr=0,Ir=0,Jr=0,Kr=0,Lr=0,Mr=0,Nr=0,Or=0,Pr=0,Qr=0,Rr=0,Sr=0;Jr=T-112|0;T=Jr;Kr=Fr;Mr=Gr&2147483647;Ir=Ar+ -1|0;Hr=zr+ -1|0;if(Hr>>>0<4294967295){Ir=Ir+1|0}Lr=Hr;Or=(Hr|0)==-1&(Ir|0)==-1;Nr=Cr&2147483647;Hr=Nr;Pr=Br;Ir=(Ar|0)==(Ir|0)&Lr>>>0<zr>>>0|Ir>>>0<Ar>>>0;Lr=Br+Ir|0;if(Lr>>>0<Ir>>>0){Hr=Hr+1|0}Lr=Lr+ -1|0;Ir=Hr+ -1|0;Hr=Lr;a:{b:{Ir=Hr>>>0<4294967295?Ir+1|0:Ir;if(!((Hr|0)==-1&(Ir|0)==2147418111?Or:(Ir|0)==2147418111&Hr>>>0>4294967295|Ir>>>0>2147418111)){Ir=Er+ -1|0;Hr=Dr+ -1|0;if(Hr>>>0<4294967295){Ir=Ir+1|0}Lr=Hr;Or=(Hr|0)!=-1|(Ir|0)!=-1;Hr=Mr;Ir=(Er|0)==(Ir|0)&Lr>>>0<Dr>>>0|Ir>>>0<Er>>>0;Lr=Ir+Kr|0;if(Lr>>>0<Ir>>>0){Hr=Hr+1|0}Ir=Lr+ -1|0;Hr=Hr+ -1|0;Hr=Ir>>>0<4294967295?Hr+1|0:Hr;if((Ir|0)==-1&(Hr|0)==2147418111?Or:(Hr|0)==2147418111&Ir>>>0<4294967295|Hr>>>0<2147418111){break b}}if(!(!Pr&(Nr|0)==2147418112?!(zr|Ar):(Nr|0)==2147418112&Pr>>>0<0|Nr>>>0<2147418112)){Fr=Br;Gr=Cr|32768;Dr=zr;Er=Ar;break a}if(!(!Kr&(Mr|0)==2147418112?!(Dr|Er):(Mr|0)==2147418112&Kr>>>0<0|Mr>>>0<2147418112)){Gr=Gr|32768;break a}if(!(zr|Pr|(Nr^2147418112|Ar))){Hr=Br;Br=!(zr^Dr|Br^Fr|(Ar^Er|Cr^Gr^-2147483648));Fr=Br?0:Hr;Gr=Br?2147450880:Cr;Dr=Br?0:zr;Er=Br?0:Ar;break a}if(!(Dr|Kr|(Mr^2147418112|Er))){break a}if(!(zr|Pr|(Ar|Nr))){if(Dr|Kr|(Er|Mr)){break a}Dr=zr&Dr;Er=Ar&Er;Fr=Br&Fr;Gr=Cr&Gr;break a}if(Dr|Kr|(Er|Mr)){break b}Dr=zr;Er=Ar;Fr=Br;Gr=Cr;break a}Ir=(Kr|0)==(Pr|0)&(Mr|0)==(Nr|0)?(Ar|0)==(Er|0)&Dr>>>0>zr>>>0|Er>>>0>Ar>>>0:(Mr|0)==(Nr|0)&Kr>>>0>Pr>>>0|Mr>>>0>Nr>>>0;Hr=Ir;Nr=Hr?Dr:zr;Mr=Hr?Er:Ar;Kr=Hr?Gr:Cr;Pr=Kr;Qr=Hr?Fr:Br;Lr=Qr;Hr=Kr&65535;Gr=Ir?Cr:Gr;Rr=Gr;Cr=Ir?Br:Fr;Or=Gr>>>16&32767;Kr=Kr>>>16&32767;if(!Kr){Br=!(Hr|Lr);Fr=Br<<6;Gr=z(Br?Nr:Lr)+32|0;Br=z(Br?Mr:Hr);Br=Fr+((Br|0)==32?Gr:Br)|0;Mh(Jr+96|0,Nr,Mr,Lr,Hr,Br+ -15|0);Lr=q[Jr+104>>2];Nr=q[Jr+96>>2];Mr=q[Jr+100>>2];Kr=16-Br|0;Hr=q[Jr+108>>2]}Dr=Ir?zr:Dr;Er=Ir?Ar:Er;zr=Cr;Ar=Rr&65535;if(Or){Br=zr;zr=Ar}else{Gr=zr;Br=!(zr|Ar);Fr=Br<<6;Ir=z(Br?Dr:zr)+32|0;zr=z(Br?Er:Ar);zr=Fr+((zr|0)==32?Ir:zr)|0;Mh(Jr+80|0,Dr,Er,Gr,Ar,zr+ -15|0);Or=16-zr|0;Dr=q[Jr+80>>2];Er=q[Jr+84>>2];Br=q[Jr+88>>2];zr=q[Jr+92>>2]}Ar=Br;Ir=zr<<3|Ar>>>29;Fr=Ar<<3|Er>>>29;Gr=Ir|524288;zr=Lr;Br=Hr<<3|zr>>>29;Ir=zr<<3|Mr>>>29;Sr=Br;Qr=Cr^Qr;Lr=Pr^Rr;zr=Dr;Hr=Er<<3|zr>>>29;zr=zr<<3;Ar=Hr;Cr=Kr-Or|0;Br=zr;c:{if(!Cr){break c}if(Cr>>>0>127){Fr=0;Gr=0;Hr=0;Br=1;break c}Mh(Jr- -64|0,zr,Ar,Fr,Gr,128-Cr|0);Uh(Jr+48|0,zr,Ar,Fr,Gr,Cr);Fr=q[Jr+56>>2];Gr=q[Jr+60>>2];Hr=q[Jr+52>>2];Br=q[Jr+48>>2]|((q[Jr+64>>2]|q[Jr+72>>2])!=0|(q[Jr+68>>2]|q[Jr+76>>2])!=0)}Er=Hr;Cr=Ir;Or=Sr|524288;zr=Nr;Hr=Mr<<3|zr>>>29;Ar=zr<<3;d:{if((Lr|0)<-1?1:(Lr|0)<=-1?Qr>>>0>4294967295?0:1:0){Mr=Br;zr=Ar-Br|0;Nr=Cr-Fr|0;Br=(Er|0)==(Hr|0)&Ar>>>0<Br>>>0|Hr>>>0<Er>>>0;Dr=Nr-Br|0;Ar=Hr-((Ar>>>0<Mr>>>0)+Er|0)|0;Er=(Or-((Cr>>>0<Fr>>>0)+Gr|0)|0)-(Nr>>>0<Br>>>0)|0;if(!(zr|Dr|(Ar|Er))){Dr=0;Er=0;Fr=0;Gr=0;break a}if((Er|0)==524287&Dr>>>0>4294967295|Er>>>0>524287){break d}Fr=zr;Br=!(Dr|Er);Cr=Br<<6;Gr=z(Br?zr:Dr)+32|0;zr=z(Br?Ar:Er);zr=Cr+((zr|0)==32?Gr:zr)|0;zr=zr+ -12|0;Mh(Jr+32|0,Fr,Ar,Dr,Er,zr);Kr=Kr-zr|0;Dr=q[Jr+40>>2];Er=q[Jr+44>>2];zr=q[Jr+32>>2];Ar=q[Jr+36>>2];break d}Ir=Er+Hr|0;zr=Br;Ar=zr+Ar|0;if(Ar>>>0<zr>>>0){Ir=Ir+1|0}zr=Ar;Ar=Ir;Er=(Er|0)==(Ar|0)&zr>>>0<Br>>>0|Ar>>>0<Er>>>0;Ir=Gr+Or|0;Br=Cr+Fr|0;if(Br>>>0<Cr>>>0){Ir=Ir+1|0}Dr=Br;Cr=Er+Br|0;Br=Ir;Br=Cr>>>0<Dr>>>0?Br+1|0:Br;Dr=Cr;Er=Br;if(!(Br&1048576)){break d}zr=zr&1|((Ar&1)<<31|zr>>>1);Ar=Dr<<31|Ar>>>1;Kr=Kr+1|0;Dr=(Er&1)<<31|Dr>>>1;Er=Er>>>1}Fr=0;Hr=Pr&-2147483648;if((Kr|0)>=32767){Gr=Hr|2147418112;Dr=0;Er=0;break a}Cr=0;e:{if((Kr|0)>0){Cr=Kr;break e}Mh(Jr+16|0,zr,Ar,Dr,Er,Kr+127|0);Uh(Jr,zr,Ar,Dr,Er,1-Kr|0);zr=q[Jr>>2]|((q[Jr+16>>2]|q[Jr+24>>2])!=0|(q[Jr+20>>2]|q[Jr+28>>2])!=0);Ar=q[Jr+4>>2];Dr=q[Jr+8>>2];Er=q[Jr+12>>2]}Fr=Fr|((Er&7)<<29|Dr>>>3);Cr=Hr|Er>>>3&65535|Cr<<16;Hr=Dr<<29;Br=0;Dr=Hr;Er=(Ar&7)<<29|zr>>>3|Br;Hr=Cr;Br=Ar>>>3|Dr;Ir=Br;Cr=zr&7;zr=Cr>>>0>4;Ar=zr+Er|0;if(Ar>>>0<zr>>>0){Ir=Ir+1|0}zr=Ar;Ar=Ir;Br=(Br|0)==(Ar|0)&zr>>>0<Er>>>0|Ar>>>0<Br>>>0;Dr=Br+Fr|0;if(Dr>>>0<Br>>>0){Hr=Hr+1|0}Cr=(Cr|0)==4;Br=Cr?zr&1:0;Gr=Hr;Fr=Dr;Cr=0;Hr=Ar+Cr|0;Ar=zr+Br|0;if(Ar>>>0<zr>>>0){Hr=Hr+1|0}Dr=Ar;zr=Ar;Er=Hr;zr=(Cr|0)==(Hr|0)&zr>>>0<Br>>>0|Hr>>>0<Cr>>>0;Ar=Fr+zr|0;if(Ar>>>0<zr>>>0){Gr=Gr+1|0}Fr=Ar}q[a>>2]=Dr;q[a+4>>2]=Er;q[a+8>>2]=Fr;q[a+12>>2]=Gr;T=Jr+112|0}function Mh(a,zr,Ar,Br,Cr,Dr){var Er=0,Fr=0,Gr=0,Tr=0;a:{if(Dr&64){Br=zr;Cr=Dr+ -64|0;zr=Cr&31;if(32<=(Cr&63)>>>0){Cr=Br<<zr;Br=0}else{Cr=(1<<zr)-1&Br>>>32-zr|Ar<<zr;Br=Br<<zr}zr=0;Ar=0;break a}if(!Dr){break a}Er=Br;Gr=Dr;Br=Dr&31;if(32<=(Dr&63)>>>0){Fr=Er<<Br;Tr=0}else{Fr=(1<<Br)-1&Er>>>32-Br|Cr<<Br;Tr=Er<<Br}Br=Ar;Er=zr;Dr=64-Dr|0;Cr=Dr&31;if(32<=(Dr&63)>>>0){Dr=0;Br=Br>>>Cr}else{Dr=Br>>>Cr;Br=((1<<Cr)-1&Br)<<32-Cr|Er>>>Cr}Br=Tr|Br;Cr=Dr|Fr;Dr=zr;zr=Gr&31;if(32<=(Gr&63)>>>0){Fr=Dr<<zr;zr=0}else{Fr=(1<<zr)-1&Dr>>>32-zr|Ar<<zr;zr=Dr<<zr}Ar=Fr}q[a>>2]=zr;q[a+4>>2]=Ar;q[a+8>>2]=Br;q[a+12>>2]=Cr}function Nh(a,zr,Ar,Br,Cr,Dr,Ur,Vr){var Wr=0,Xr=0,Yr=0,Zr=0,_r=0,$r=0;Xr=1;Wr=Br&2147483647;_r=Wr;Yr=Ar;a:{if(!Ar&(Wr|0)==2147418112?a|zr:(Wr|0)==2147418112&Ar>>>0>0|Wr>>>0>2147418112){break a}Zr=Vr&2147483647;$r=Zr;Wr=Ur;if(!Ur&(Zr|0)==2147418112?Cr|Dr:(Zr|0)==2147418112&Ur>>>0>0|Zr>>>0>2147418112){break a}if(!(a|Cr|(Wr|Yr)|(zr|Dr|(_r|$r)))){return 0}Yr=Br&Vr;if((Yr|0)>0?1:(Yr|0)>=0?(Ar&Ur)>>>0<0?0:1:0){Xr=-1;if((Ar|0)==(Ur|0)&(Br|0)==(Vr|0)?(zr|0)==(Dr|0)&a>>>0<Cr>>>0|zr>>>0<Dr>>>0:(Br|0)<(Vr|0)?1:(Br|0)<=(Vr|0)?Ar>>>0>=Ur>>>0?0:1:0){break a}return(a^Cr|Ar^Ur)!=0|(zr^Dr|Br^Vr)!=0}Xr=-1;if((Ar|0)==(Ur|0)&(Br|0)==(Vr|0)?(zr|0)==(Dr|0)&a>>>0>Cr>>>0|zr>>>0>Dr>>>0:(Br|0)>(Vr|0)?1:(Br|0)>=(Vr|0)?Ar>>>0<=Ur>>>0?0:1:0){break a}Xr=(a^Cr|Ar^Ur)!=0|(zr^Dr|Br^Vr)!=0}return Xr}function Oh(a,zr,Ar,Br){var Cr=0,Dr=0,Ur=0,Vr=0;Ur=-1;Cr=Br&2147483647;Vr=Cr;Dr=Ar;a:{if(!Ar&(Cr|0)==2147418112?a|zr:(Cr|0)==2147418112&Ar>>>0>0|Cr>>>0>2147418112){break a}if(!(a|Dr|(Vr|1073610752|zr))){return 0}Dr=Br&1073610752;if((Dr|0)>0?1:(Dr|0)>=0?1:0){if(!Ar&(Br|0)==1073610752?!zr&a>>>0<0|zr>>>0<0:(Br|0)<1073610752?1:(Br|0)<=1073610752?Ar>>>0>=0?0:1:0){break a}return(a|Ar)!=0|(Br^1073610752|zr)!=0}if(!Ar&(Br|0)==1073610752?!zr&a>>>0>0|zr>>>0>0:(Br|0)>1073610752?1:(Br|0)>=1073610752?Ar>>>0<=0?0:1:0){break a}Ur=(a|Ar)!=0|(Br^1073610752|zr)!=0}return Ur}
function Ph(a,b,c,d,e,f,g,h,i){var j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;n=T-192|0;T=n;F=h;H=i&65535;r=d;p=e&65535;G=(e^i)&-2147483648;o=i>>>16&32767;a:{u=e>>>16&32767;b:{c:{if(o+ -1>>>0<32766?u+ -1>>>0<=32765:0){break c}m=e&2147483647;k=m;j=d;if(!(!j&(k|0)==2147418112?!(b|c):(k|0)==2147418112&j>>>0<0|k>>>0<2147418112)){J=d;G=e|32768;break b}m=i&2147483647;e=m;d=h;if(!(!d&(e|0)==2147418112?!(f|g):(e|0)==2147418112&d>>>0<0|e>>>0<2147418112)){J=h;G=i|32768;b=f;c=g;break b}if(!(b|j|(k^2147418112|c))){if(!(d|f|(e^2147418112|g))){b=0;c=0;G=2147450880;break b}G=G|2147418112;b=0;c=0;break b}if(!(d|f|(e^2147418112|g))){b=0;c=0;break b}if(!(b|j|(c|k))){break a}if(!(d|f|(e|g))){G=G|2147418112;b=0;c=0;break b}if((k|0)==65535&j>>>0<=4294967295|k>>>0<65535){j=b;h=!(r|p);i=h<<6;k=z(h?b:r)+32|0;b=z(h?c:p);b=i+((b|0)==32?k:b)|0;Mh(n+176|0,j,c,r,p,b+ -15|0);l=16-b|0;r=q[n+184>>2];p=q[n+188>>2];c=q[n+180>>2];b=q[n+176>>2]}if((e|0)==65535&d>>>0>4294967295|e>>>0>65535){break c}d=!(F|H);e=d<<6;h=z(d?f:F)+32|0;d=z(d?g:H);d=e+((d|0)==32?h:d)|0;Mh(n+160|0,f,g,F,H,d+ -15|0);l=(d+l|0)+ -16|0;F=q[n+168>>2];H=q[n+172>>2];f=q[n+160>>2];g=q[n+164>>2]}e=H|65536;K=e;P=F;d=F;k=e<<15|d>>>17;d=d<<15|g>>>17;h=-102865788-d|0;e=k;j=k;i=1963258675-(j+(4192101508<d>>>0)|0)|0;Wh(n+144|0,d,j,h,i);j=q[n+152>>2];Wh(n+128|0,0-j|0,0-(q[n+156>>2]+(0<j>>>0)|0)|0,h,i);h=q[n+136>>2];i=h<<1|q[n+132>>2]>>>31;h=q[n+140>>2]<<1|h>>>31;Wh(n+112|0,i,h,d,k);j=h;h=q[n+120>>2];Wh(n+96|0,i,j,0-h|0,0-(q[n+124>>2]+(0<h>>>0)|0)|0);h=q[n+104>>2];i=h<<1|q[n+100>>2]>>>31;h=q[n+108>>2]<<1|h>>>31;Wh(n+80|0,i,h,d,k);j=h;h=q[n+88>>2];Wh(n- -64|0,i,j,0-h|0,0-(q[n+92>>2]+(0<h>>>0)|0)|0);h=q[n+72>>2];i=h<<1|q[n+68>>2]>>>31;h=q[n+76>>2]<<1|h>>>31;Wh(n+48|0,i,h,d,k);j=h;h=q[n+56>>2];Wh(n+32|0,i,j,0-h|0,0-(q[n+60>>2]+(0<h>>>0)|0)|0);h=q[n+40>>2];i=h<<1|q[n+36>>2]>>>31;h=q[n+44>>2]<<1|h>>>31;Wh(n+16|0,i,h,d,k);j=h;h=q[n+24>>2];Wh(n,i,j,0-h|0,0-(q[n+28>>2]+(0<h>>>0)|0)|0);L=(u-o|0)+l|0;h=q[n+8>>2];j=q[n+12>>2]<<1|h>>>31;i=h<<1;k=j+ -1|0;i=(q[n+4>>2]>>>31|i)+ -1|0;if(i>>>0<4294967295){k=k+1|0}j=0;v=j;h=i;w=e;l=0;s=Nj(h,j,e,l);e=V;t=e;B=k;i=0;o=d;u=0;k=Nj(k,i,d,u);d=k+s|0;j=V+e|0;m=d;d=d>>>0<k>>>0?j+1|0:j;o=Nj(h,v,o,u);e=0+o|0;k=m;j=k+V|0;j=e>>>0<o>>>0?j+1|0:j;u=e;o=e;e=j;j=(k|0)==(j|0)&o>>>0<x>>>0|j>>>0<k>>>0;k=(d|0)==(t|0)&k>>>0<s>>>0|d>>>0<t>>>0;m=d;d=Nj(B,i,w,l)+d|0;l=k+V|0;l=d>>>0<m>>>0?l+1|0:l;k=d;d=j+k|0;j=l;C=d;d=d>>>0<k>>>0?j+1|0:j;j=g;A=(j&131071)<<15|f>>>17;t=Nj(h,v,A,0);j=V;w=j;m=f;l=m<<15&-32768;y=Nj(B,i,l,0);m=y+t|0;k=V+j|0;k=m>>>0<y>>>0?k+1|0:k;j=m;y=0;D=Nj(h,v,l,x);x=y+D|0;l=j;j=j+V|0;j=x>>>0<D>>>0?j+1|0:j;s=(j|0)==(l|0)&x>>>0<y>>>0|j>>>0<l>>>0;j=(k|0)==(w|0)&l>>>0<t>>>0|k>>>0<w>>>0;o=k;m=Nj(B,i,A,E)+k|0;l=j+V|0;k=m;j=s+k|0;m=k>>>0<o>>>0?l+1|0:l;m=j>>>0<k>>>0?m+1|0:m;l=j;k=j+u|0;j=m+e|0;j=k>>>0<l>>>0?j+1|0:j;o=k;k=d;s=j;d=(e|0)==(j|0)&o>>>0<u>>>0|j>>>0<e>>>0;e=d+C|0;if(e>>>0<d>>>0){k=k+1|0}j=k;d=(o|0)!=0|(s|0)!=0;e=e+d|0;if(e>>>0<d>>>0){j=j+1|0}k=e;e=0-k|0;t=0;u=Nj(e,t,h,v);d=V;w=d;x=Nj(B,i,e,t);e=V;C=e;A=0-((0<k>>>0)+j|0)|0;j=0;t=Nj(h,v,A,j);l=t+x|0;k=V+e|0;k=l>>>0<t>>>0?k+1|0:k;e=l;t=0+u|0;l=d+e|0;l=t>>>0<E>>>0?l+1|0:l;m=t;d=l;l=(w|0)==(d|0)&m>>>0<u>>>0|d>>>0<w>>>0;m=(k|0)==(C|0)&e>>>0<x>>>0|k>>>0<C>>>0;e=Nj(B,i,A,j)+k|0;j=m+V|0;j=e>>>0<k>>>0?j+1|0:j;k=e;e=l+k|0;if(e>>>0<k>>>0){j=j+1|0}C=e;e=j;k=0-o|0;A=0-((0<o>>>0)+s|0)|0;o=0;x=Nj(A,o,h,v);w=V;s=k;m=Nj(k,0,B,i);j=m+x|0;k=V+w|0;k=j>>>0<m>>>0?k+1|0:k;m=j;v=Nj(h,v,s,E);s=0+v|0;h=j;j=j+V|0;j=s>>>0<v>>>0?j+1|0:j;j=(h|0)==(j|0)&s>>>0<y>>>0|j>>>0<h>>>0;h=Nj(A,o,B,i);h=h+k|0;m=V+((k|0)==(w|0)&m>>>0<x>>>0|k>>>0<w>>>0)|0;m=h>>>0<k>>>0?m+1|0:m;i=h;h=j+h|0;j=m;j=h>>>0<i>>>0?j+1|0:j;i=h;h=h+t|0;j=j+d|0;j=h>>>0<i>>>0?j+1|0:j;i=h;k=e;e=j;d=(d|0)==(j|0)&h>>>0<t>>>0|j>>>0<d>>>0;h=d+C|0;if(h>>>0<d>>>0){k=k+1|0}d=h;j=k;m=d;l=e+ -1|0;d=i+ -2|0;if(d>>>0<4294967294){l=l+1|0}h=d;k=d;d=l;e=(e|0)==(d|0)&k>>>0<i>>>0|d>>>0<e>>>0;i=m+e|0;if(i>>>0<e>>>0){j=j+1|0}e=i+ -1|0;j=j+ -1|0;j=e>>>0<4294967295?j+1|0:j;i=0;w=i;o=e;k=r;x=k<<2|c>>>30;A=0;m=Nj(e,i,x,A);i=V;s=i;k=i;i=c;E=(i&1073741823)<<2|b>>>30;u=0;y=j;i=0;j=Nj(E,u,j,i);e=j+m|0;l=V+k|0;l=e>>>0<j>>>0?l+1|0:l;k=e;t=l;v=(s|0)==(l|0)&k>>>0<m>>>0|l>>>0<s>>>0;m=l;l=0;s=l;j=0;C=d;D=((p&1073741823)<<2|r>>>30)&-262145|262144;e=Nj(d,l,D,0);d=e+k|0;m=V+m|0;m=d>>>0<e>>>0?m+1|0:m;p=d;e=m;d=(t|0)==(e|0)&d>>>0<k>>>0|e>>>0<t>>>0;k=d+v|0;if(k>>>0<d>>>0){j=1}c=k;k=Nj(y,i,D,I);d=c+k|0;j=V+j|0;k=d>>>0<k>>>0?j+1|0:j;l=Nj(o,w,D,I);j=V;c=d;r=Nj(x,A,y,i);d=r+l|0;m=V+j|0;m=d>>>0<r>>>0?m+1|0:m;r=d;d=m;m=(j|0)==(d|0)&r>>>0<l>>>0|d>>>0<j>>>0;l=c+d|0;k=k+m|0;j=l;m=j>>>0<d>>>0?k+1|0:k;c=j;l=e+r|0;k=0;d=k+p|0;if(d>>>0<k>>>0){l=l+1|0}k=d;j=k;d=l;e=(e|0)==(d|0)&j>>>0<p>>>0|d>>>0<e>>>0;j=c+e|0;if(j>>>0<e>>>0){m=m+1|0}M=j;p=d;r=Nj(E,u,C,s);l=V;t=h;v=Nj(h,0,x,A);h=v+r|0;j=V+l|0;j=h>>>0<v>>>0?j+1|0:j;B=h;v=h;h=j;r=(l|0)==(j|0)&v>>>0<r>>>0|j>>>0<l>>>0;N=k;j=0;Q=r;c=b<<2&-4;r=Nj(o,w,c,0);e=r+v|0;l=V+h|0;l=e>>>0<r>>>0?l+1|0:l;v=e;r=e;e=l;h=(h|0)==(e|0)&r>>>0<B>>>0|e>>>0<h>>>0;l=Q+h|0;if(l>>>0<h>>>0){j=1}h=N+l|0;j=j+p|0;j=h>>>0<l>>>0?j+1|0:j;r=h;l=m;h=j;d=(d|0)==(j|0)&r>>>0<k>>>0|j>>>0<d>>>0;j=d+M|0;if(j>>>0<d>>>0){l=l+1|0}N=j;p=r;B=h;M=Nj(y,i,c,R);y=V;i=Nj(D,I,t,O);d=i+M|0;m=V+y|0;m=d>>>0<i>>>0?m+1|0:m;D=d;k=Nj(x,A,C,s);d=d+k|0;i=m;j=m+V|0;j=d>>>0<k>>>0?j+1|0:j;x=d;m=Nj(o,w,E,u);d=d+m|0;k=j;j=j+V|0;o=d;j=d>>>0<m>>>0?j+1|0:j;w=0;m=l;d=j;j=(j|0)==(k|0)&o>>>0<x>>>0|j>>>0<k>>>0;l=(i|0)==(y|0)&D>>>0<M>>>0|i>>>0<y>>>0;i=(i|0)==(k|0)&x>>>0<D>>>0|k>>>0<i>>>0;k=l+i|0;k>>>0<i>>>0;i=j+k|0;j=i;l=d|0;i=l+p|0;k=(j|w)+B|0;k=i>>>0<l>>>0?k+1|0:k;B=i;p=k;h=(h|0)==(k|0)&i>>>0<r>>>0|k>>>0<h>>>0;i=h+N|0;if(i>>>0<h>>>0){m=m+1|0}A=i;i=m;m=B;r=p;C=Nj(C,s,c,R);s=V;j=Nj(E,u,t,O);h=j+C|0;l=V+s|0;l=h>>>0<j>>>0?l+1|0:l;k=l;u=k;l=0;j=(k|0)==(s|0)&h>>>0<C>>>0|k>>>0<s>>>0;h=k+v|0;k=(j|l)+e|0;k=h>>>0<u>>>0?k+1|0:k;u=h;j=h;h=k;j=(e|0)==(k|0)&j>>>0<v>>>0|k>>>0<e>>>0;c=m;e=j;j=k+o|0;m=0;d=m+u|0;if(d>>>0<m>>>0){j=j+1|0}d=(h|0)==(j|0)&d>>>0<u>>>0|j>>>0<h>>>0;e=e+d|0;if(e>>>0<d>>>0){l=1}d=c+e|0;m=l+r|0;h=d;j=i;m=d>>>0<e>>>0?m+1|0:m;i=m;d=(p|0)==(m|0)&d>>>0<B>>>0|m>>>0<p>>>0;e=d+A|0;if(e>>>0<d>>>0){j=j+1|0}d=e;e=j;d:{if((j|0)==131071&d>>>0<=4294967295|j>>>0<131071){w=0;p=f;x=0;k=Nj(h,w,p,x);l=V;j=b<<17;b=0;c=(k|0)!=0|(l|0)!=0;o=b-c|0;D=j-(b>>>0<c>>>0)|0;u=0-k|0;s=0-((0<k>>>0)+l|0)|0;c=0;A=Nj(i,c,p,x);b=V;E=b;y=g;r=0;k=Nj(h,w,y,r);j=k+A|0;l=V+b|0;l=j>>>0<k>>>0?l+1|0:l;b=j;k=j;t=0;j=t;v=k;j=(k|0)==(s|0)&u>>>0<j>>>0|s>>>0<k>>>0;B=o-j|0;o=D-(o>>>0<j>>>0)|0;j=Nj(d,0,p,x);k=V;p=Nj(h,w,F,0);j=p+j|0;m=V+k|0;m=j>>>0<p>>>0?m+1|0:m;p=Nj(i,c,y,r);j=p+j|0;k=V+m|0;k=j>>>0<p>>>0?k+1|0:k;m=k;k=(l|0)==(E|0)&b>>>0<A>>>0|l>>>0<E>>>0;b=l+j|0;j=k+m|0;m=b;b=m>>>0<l>>>0?j+1|0:j;j=Nj(h,i,K,0);l=V;p=m;m=Nj(f,y,e,0);k=m+j|0;j=V+l|0;j=k>>>0<m>>>0?j+1|0:j;l=Nj(d,e,y,r);m=l+k|0;k=V+j|0;j=m;m=Nj(i,c,F,H);c=j+m|0;j=c;k=0;c=p+k|0;j=b+j|0;b=c;F=B-b|0;j=o-((B>>>0<b>>>0)+(b>>>0<k>>>0?j+1|0:j)|0)|0;L=L+ -1|0;c=s-((u>>>0<t>>>0)+v|0)|0;k=u-t|0;break d}t=i>>>1;l=0;m=b<<16;c=0;k=d<<31;h=(i&1)<<31|h>>>1;i=i>>>1|k;A=0;o=f;E=0;b=Nj(h,A,o,E);j=V;k=j;j=(b|0)!=0|(j|0)!=0;p=c-j|0;I=m-(c>>>0<j>>>0)|0;v=0-b|0;B=0-((0<b>>>0)+k|0)|0;m=B;y=g;u=0;s=Nj(h,A,y,u);b=V;D=b;k=d;t=k<<31|t;O=e<<31|k>>>1|l;c=t;w=Nj(c,0,o,E);k=w+s|0;j=V+b|0;j=k>>>0<w>>>0?j+1|0:j;b=j;j=k;x=j;w=0;j=(j|0)==(m|0)&v>>>0<w>>>0|m>>>0<j>>>0;C=p-j|0;I=I-(p>>>0<j>>>0)|0;j=Nj(y,u,c,l);l=V;c=e>>>1;p=(e&1)<<31|d>>>1;o=Nj(p,0,o,E);m=o+j|0;j=V+l|0;j=m>>>0<o>>>0?j+1|0:j;l=Nj(h,A,F,0);m=l+m|0;j=V+j|0;j=m>>>0<l>>>0?j+1|0:j;l=m;m=j;j=(b|0)==(D|0)&k>>>0<s>>>0|b>>>0<D>>>0;r=b;b=b+l|0;l=j+m|0;m=b;b=m>>>0<r>>>0?l+1|0:l;j=Nj(h,i,K,0);k=V;e=Nj(f,y,e>>>1,0);d=e+j|0;j=V+k|0;j=d>>>0<e>>>0?j+1|0:j;e=Nj(y,u,p,c);d=e+d|0;j=V+j|0;e=Nj(t,O,F,H);d=e+d|0;j=d;e=0;d=e+m|0;k=b+j|0;F=C-d|0;j=I-((C>>>0<d>>>0)+(d>>>0<e>>>0?k+1|0:k)|0)|0;d=p;e=c;c=B-((v>>>0<w>>>0)+x|0)|0;k=v-w|0}b=c;if((L|0)>=16384){G=G|2147418112;b=0;c=0;break b}if((L|0)<=-16383){b=0;c=0;break b}l=i;e=e&65535;m=b<<1|k>>>31;p=k<<1;g=(g|0)==(m|0)&p>>>0>=f>>>0|m>>>0>g>>>0;f=F;m=j<<1|f>>>31;c=f<<1|b>>>31;b=(c|0)==(P|0)&(m|0)==(K|0)?g:(K|0)==(m|0)&c>>>0>=P>>>0|m>>>0>K>>>0;c=b+h|0;if(c>>>0<b>>>0){l=l+1|0}b=c;c=l;k=L+16383<<16;f=d;d=((i|0)==(l|0)&b>>>0<h>>>0|l>>>0<i>>>0)+d|0;j=e|k;J=d|J;G=G|(d>>>0<f>>>0?j+1|0:j)}q[a>>2]=b;q[a+4>>2]=c;q[a+8>>2]=J;q[a+12>>2]=G;T=n+192|0;return}q[a>>2]=0;q[a+4>>2]=0;b=(d|f)!=0|(e|g)!=0;q[a+8>>2]=b?J:0;q[a+12>>2]=b?G:2147450880;T=n+192|0}function Qh(a,b){var c=0,d=0,f=0,g=0,i=0,S=0,U=0,V=0,W=0,X=0,Y=0;g=T-16|0;T=g;h(+b);d=e(1)|0;i=e(0)|0;W=d&-2147483648;f=d&2147483647;c=f;S=c+ -1048576|0;f=i;U=f;if(f>>>0<0){S=S+1|0}a:{if((S|0)==2145386495&U>>>0<=4294967295|S>>>0<2145386495){V=f<<28;d=(c&15)<<28|f>>>4;c=(c>>>4)+1006632960|0;c=d>>>0<0?c+1|0:c;break a}if((c|0)==2146435072&f>>>0>=0|c>>>0>2146435072){V=i<<28;c=d>>>4;d=(d&15)<<28|i>>>4;c=c|2147418112;break a}if(!(c|f)){d=0;c=0;break a}U=c;c=(c|0)==1&f>>>0>=0|c>>>0>1?z(c):z(i)+32|0;Mh(g,f,U,0,0,c+49|0);X=q[g>>2];V=q[g+4>>2];d=q[g+8>>2];c=q[g+12>>2]^65536|15372-c<<16}q[a>>2]=X;q[a+4>>2]=V;q[a+8>>2]=d|Y;q[a+12>>2]=c|W;T=g+16|0}function Rh(a,b){var h=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;_=T-16|0;T=_;Z=(j(b),e(0));aa=Z&-2147483648;h=Z&2147483647;a:{if(h+ -8388608>>>0<=2130706431){Z=h;h=h>>>7;Z=Z<<25;h=h+1065353216|0;$=Z;h=Z>>>0<0?h+1|0:h;break a}if(h>>>0>=2139095040){$=Z<<25;h=Z>>>7|2147418112;break a}if(!h){h=0;break a}Z=h;h=z(h);Mh(_,Z,0,0,0,h+81|0);ba=q[_>>2];ca=q[_+4>>2];$=q[_+8>>2];h=q[_+12>>2]^65536|16265-h<<16}q[a>>2]=ba;q[a+4>>2]=ca;q[a+8>>2]=$;q[a+12>>2]=h|aa;T=_+16|0}function Sh(a,b){var e=0,da=0,ea=0,fa=0,ga=0,ha=0;da=T-16|0;T=da;ga=a;ha=a;a:{if(!b){b=0;break a}e=b>>31;ea=e+b^e;e=z(ea);Mh(da,ea,0,0,0,e+81|0);e=(q[da+12>>2]^65536)+(16414-e<<16)|0;ea=0+q[da+8>>2]|0;if(ea>>>0<fa>>>0){e=e+1|0}fa=b&-2147483648|e;e=q[da+4>>2];b=q[da>>2]}q[ha>>2]=b;q[ga+4>>2]=e;q[a+8>>2]=ea;q[a+12>>2]=fa;T=da+16|0}function Th(a,b){var ia=0,ja=0,ka=0,la=0,ma=0,na=0;ia=T-16|0;T=ia;ma=a;na=a;a:{if(!b){b=0;ka=0;break a}ja=b;b=z(b);Mh(ia,ja,0,0,0,b+81|0);b=(q[ia+12>>2]^65536)+(16414-b<<16)|0;ja=0+q[ia+8>>2]|0;if(ja>>>0<la>>>0){b=b+1|0}la=ja;ja=b;b=q[ia+4>>2];ka=q[ia>>2]}q[na>>2]=ka;q[ma+4>>2]=b;q[a+8>>2]=la;q[a+12>>2]=ja;T=ia+16|0}function Uh(a,b,z,T,oa,pa){var qa=0,ra=0,sa=0,ta=0;a:{b:{if(pa&64){z=pa+ -64|0;b=z&31;if(32<=(z&63)>>>0){z=0;b=oa>>>b}else{z=oa>>>b;b=((1<<b)-1&oa)<<32-b|T>>>b}T=0;oa=0;break b}if(!pa){break a}ra=oa;sa=T;ta=64-pa|0;qa=ta&31;if(32<=(ta&63)>>>0){ra=sa<<qa;ta=0}else{ra=(1<<qa)-1&sa>>>32-qa|ra<<qa;ta=sa<<qa}sa=b;qa=pa;b=qa&31;if(32<=(qa&63)>>>0){qa=0;b=z>>>b}else{qa=z>>>b;b=((1<<b)-1&z)<<32-b|sa>>>b}b=ta|b;z=qa|ra;qa=T;T=pa&31;if(32<=(pa&63)>>>0){ra=0;T=oa>>>T}else{ra=oa>>>T;T=((1<<T)-1&oa)<<32-T|qa>>>T}oa=ra}}q[a>>2]=b;q[a+4>>2]=z;q[a+8>>2]=T;q[a+12>>2]=oa}function Vh(a,b,oa,pa,ua,va,wa,xa,ya){var za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0;Da=T-96|0;T=Da;Aa=wa;Ia=(Aa&131071)<<15|va>>>17;Ja=oa;za=ya&65535;Ca=za;La=xa;Aa=xa;Pa=Aa<<15|wa>>>17;Fa=(ua^ya)&-2147483648;Aa=za;Sa=(Aa&131071)<<15|xa>>>17;Ga=ua&65535;za=Ga;Ha=pa;Qa=za;Ga=0;$a=ya>>>16&32767;ab=ua>>>16&32767;a:{b:{if(ab+ -1>>>0<=32765){Ka=0;if($a+ -1>>>0<32766){break b}}Ma=ua&2147483647;Ea=Ma;Aa=pa;if(!(!pa&(Ea|0)==2147418112?!(b|oa):(Ea|0)==2147418112&pa>>>0<0|Ea>>>0<2147418112)){Na=pa;Fa=ua|32768;break a}Ma=ya&2147483647;ua=Ma;pa=xa;if(!(!pa&(ua|0)==2147418112?!(va|wa):(ua|0)==2147418112&pa>>>0<0|ua>>>0<2147418112)){Na=xa;Fa=ya|32768;b=va;oa=wa;break a}if(!(b|Aa|(Ea^2147418112|oa))){if(!(pa|va|(ua|wa))){Fa=2147450880;b=0;oa=0;break a}Fa=Fa|2147418112;b=0;oa=0;break a}if(!(pa|va|(ua^2147418112|wa))){pa=b|Aa;ua=oa|Ea;b=0;oa=0;if(!(pa|ua)){Fa=2147450880;break a}Fa=Fa|2147418112;break a}if(!(b|Aa|(oa|Ea))){b=0;oa=0;break a}if(!(pa|va|(ua|wa))){b=0;oa=0;break a}if((Ea|0)==65535&Aa>>>0<=4294967295|Ea>>>0<65535){Aa=b;xa=!(za|Ha);ya=xa<<6;Ba=z(xa?b:Ha)+32|0;b=z(xa?oa:za);b=ya+((b|0)==32?Ba:b)|0;Mh(Da+80|0,Aa,oa,Ha,za,b+ -15|0);Ja=q[Da+84>>2];Ha=q[Da+88>>2];Qa=q[Da+92>>2];Ba=16-b|0;b=q[Da+80>>2]}Ka=Ba;if((ua|0)==65535&pa>>>0>4294967295|ua>>>0>65535){break b}oa=!(Ca|La);pa=oa<<6;ua=z(oa?va:La)+32|0;oa=z(oa?wa:Ca);oa=pa+((oa|0)==32?ua:oa)|0;xa=oa;Mh(Da- -64|0,va,wa,La,Ca,oa+ -15|0);va=q[Da+76>>2];oa=va;ya=q[Da+68>>2];wa=ya;ua=q[Da+72>>2];pa=ua;Pa=pa<<15|wa>>>17;pa=wa;va=q[Da+64>>2];Ia=(pa&131071)<<15|va>>>17;Sa=(oa&131071)<<15|ua>>>17;Ka=(Ba-xa|0)+16|0}pa=Ia;Ia=0;ya=Nj(pa,0,b,Ia);oa=V;Ra=oa;Oa=va<<15&-32768;Ea=Ja;va=Nj(Oa,0,Ea,0);ua=va+ya|0;Ba=V+oa|0;Ba=ua>>>0<va>>>0?Ba+1|0:Ba;oa=ua;va=0;wa=Nj(Oa,Ta,b,Ia);ua=va+wa|0;za=V+oa|0;za=ua>>>0<wa>>>0?za+1|0:za;Ja=ua;wa=za;jb=(oa|0)==(za|0)&ua>>>0<va>>>0|za>>>0<oa>>>0;cb=Nj(pa,Ua,Ea,bb);Xa=V;Ma=Ha;va=Nj(Oa,Ta,Ha,0);ua=va+cb|0;Ca=V+Xa|0;Ca=ua>>>0<va>>>0?Ca+1|0:Ca;db=ua;xa=Nj(Pa,0,b,Ia);ua=ua+xa|0;va=V+Ca|0;Ya=ua;va=ua>>>0<xa>>>0?va+1|0:va;La=va;xa=va;va=(Ba|0)==(Ra|0)&oa>>>0<ya>>>0|Ba>>>0<Ra>>>0;ua=Ba;oa=ua+Ya|0;za=va+xa|0;Ra=oa;za=oa>>>0<ua>>>0?za+1|0:za;ua=za;xa=oa;fb=Nj(pa,Ua,Ha,eb);Za=V;oa=Oa;Va=Qa|65536;Oa=Ga;va=Nj(oa,Ta,Va,Ga);oa=va+fb|0;za=V+Za|0;za=oa>>>0<va>>>0?za+1|0:za;gb=oa;Aa=Nj(Ea,bb,Pa,hb);oa=oa+Aa|0;Ga=za;va=za+V|0;va=oa>>>0<Aa>>>0?va+1|0:va;_a=oa;Wa=Sa&2147483647|-2147483648;oa=Nj(Wa,0,b,Ia);b=_a+oa|0;Ia=va;Aa=va+V|0;Ta=b;oa=b>>>0<oa>>>0?Aa+1|0:Aa;za=ua+b|0;va=0;b=va+xa|0;if(b>>>0<va>>>0){za=za+1|0}Sa=b;Qa=za;va=za;xa=b+jb|0;if(xa>>>0<b>>>0){va=va+1|0}ya=va;Ha=(Ka+($a+ab|0)|0)+ -16383|0;va=Nj(Ma,eb,Pa,hb);b=V;Ba=0;Aa=Nj(pa,Ua,Va,Oa);pa=Aa+va|0;za=V+b|0;za=pa>>>0<Aa>>>0?za+1|0:za;Ka=pa;Aa=pa;pa=za;za=(b|0)==(pa|0)&Aa>>>0<va>>>0|pa>>>0<b>>>0;va=Nj(Wa,ib,Ea,bb);b=va+Aa|0;Aa=V+pa|0;Aa=b>>>0<va>>>0?Aa+1|0:Aa;Ea=b;va=b;b=Aa;pa=(pa|0)==(b|0)&va>>>0<Ka>>>0|b>>>0<pa>>>0;va=za+pa|0;if(va>>>0<pa>>>0){Ba=1}Aa=va;pa=b;va=Ba;Ua=Aa;za=0;Aa=(Ca|0)==(La|0)&Ya>>>0<db>>>0|La>>>0<Ca>>>0;Ca=Aa+((Ca|0)==(Xa|0)&db>>>0<cb>>>0|Ca>>>0<Xa>>>0)|0;if(Ca>>>0<Aa>>>0){za=1}Ba=Ca;Ca=Ca+Ea|0;Aa=pa+za|0;Ka=Ca;za=Ca;Aa=za>>>0<Ba>>>0?Aa+1|0:Aa;pa=Aa;b=(b|0)==(pa|0)&za>>>0<Ea>>>0|pa>>>0<b>>>0;Aa=Ua+b|0;if(Aa>>>0<b>>>0){va=va+1|0}b=Aa;Aa=Nj(Wa,ib,Va,Oa);b=b+Aa|0;za=V+va|0;za=b>>>0<Aa>>>0?za+1|0:za;Ba=b;Ca=Nj(Wa,ib,Ma,eb);va=V;Ea=Nj(Pa,hb,Va,Oa);b=Ea+Ca|0;Aa=V+va|0;Aa=b>>>0<Ea>>>0?Aa+1|0:Aa;Ea=b;b=Aa;Aa=(va|0)==(b|0)&Ea>>>0<Ca>>>0|b>>>0<va>>>0;va=b+Ba|0;Ba=za+Aa|0;Aa=va>>>0<b>>>0?Ba+1|0:Ba;Ma=va;za=pa+Ea|0;Ba=0;b=Ba+Ka|0;if(b>>>0<Ba>>>0){za=za+1|0}Ca=b;va=b;b=za;pa=(pa|0)==(b|0)&va>>>0<Ka>>>0|b>>>0<pa>>>0;va=Ma+pa|0;if(va>>>0<pa>>>0){Aa=Aa+1|0}Ea=va;Ba=b;za=0;va=(Ga|0)==(Ia|0)&_a>>>0<gb>>>0|Ia>>>0<Ga>>>0;Ga=va+((Ga|0)==(Za|0)&gb>>>0<fb>>>0|Ga>>>0<Za>>>0)|0;if(Ga>>>0<va>>>0){za=1}va=Ga+((oa|0)==(Ia|0)&Ta>>>0<_a>>>0|oa>>>0<Ia>>>0)|0;pa=oa;oa=pa+Ca|0;Ba=va+Ba|0;Ba=oa>>>0<pa>>>0?Ba+1|0:Ba;Ga=oa;pa=oa;oa=Ba;b=(b|0)==(oa|0)&pa>>>0<Ca>>>0|oa>>>0<b>>>0;pa=b+Ea|0;if(pa>>>0<b>>>0){Aa=Aa+1|0}b=oa;za=Aa;Aa=pa;va=0;pa=(ua|0)==(Qa|0)&Sa>>>0<Ra>>>0|Qa>>>0<ua>>>0;ua=pa+((ua|0)==(La|0)&Ra>>>0<Ya>>>0|ua>>>0<La>>>0)|0;if(ua>>>0<pa>>>0){va=1}pa=ua+Ga|0;Ba=b+va|0;Ba=pa>>>0<ua>>>0?Ba+1|0:Ba;b=pa;ua=Ba;b=(oa|0)==(ua|0)&b>>>0<Ga>>>0|ua>>>0<oa>>>0;oa=Aa+b|0;if(oa>>>0<b>>>0){za=za+1|0}b=oa;oa=za;c:{if(oa&65536){Ha=Ha+1|0;break c}Ca=wa>>>31;za=oa<<1|b>>>31;b=b<<1|ua>>>31;oa=za;za=ua<<1|pa>>>31;pa=pa<<1|ya>>>31;ua=za;Aa=Ja;za=wa<<1|Aa>>>31;Ja=Aa<<1;wa=za;Aa=ya<<1|xa>>>31;xa=xa<<1|Ca;ya=Aa}if((Ha|0)>=32767){Fa=Fa|2147418112;b=0;oa=0;break a}d:{if((Ha|0)<=0){va=1-Ha|0;if(va>>>0<=127){Uh(Da+16|0,Ja,wa,xa,ya,va);Aa=Ha+127|0;Mh(Da+32|0,pa,ua,b,oa,Aa);Mh(Da+48|0,Ja,wa,xa,ya,Aa);Uh(Da,pa,ua,b,oa,va);Ja=(q[Da+48>>2]|q[Da+56>>2])!=0|(q[Da+52>>2]|q[Da+60>>2])!=0|(q[Da+32>>2]|q[Da+16>>2]);wa=q[Da+36>>2]|q[Da+20>>2];xa=q[Da+40>>2]|q[Da+24>>2];ya=q[Da+44>>2]|q[Da+28>>2];pa=q[Da>>2];ua=q[Da+4>>2];oa=q[Da+12>>2];b=q[Da+8>>2];break d}b=0;oa=0;break a}oa=oa&65535|Ha<<16}Na=b|Na;Fa=oa|Fa;if(!(!xa&(ya|0)==-2147483648?!(wa|Ja):(ya|0)>-1?1:(ya|0)>=-1?xa>>>0<=4294967295?0:1:0)){Ba=Fa;Ca=ua;b=pa+1|0;if(b>>>0<1){Ca=Ca+1|0}oa=Ca;pa=(ua|0)==(oa|0)&b>>>0<pa>>>0|oa>>>0<ua>>>0;ua=pa+Na|0;if(ua>>>0<pa>>>0){Ba=Ba+1|0}Na=ua;Fa=Ba;break a}if(xa|Ja|(ya^-2147483648|wa)){b=pa;oa=ua;break a}Ca=Fa;za=ua;b=pa&1;oa=b+pa|0;if(oa>>>0<b>>>0){za=za+1|0}b=oa;oa=za;pa=(ua|0)==(oa|0)&b>>>0<pa>>>0|oa>>>0<ua>>>0;ua=pa+Na|0;if(ua>>>0<pa>>>0){Ca=Ca+1|0}Na=ua;Fa=Ca}q[a>>2]=b;q[a+4>>2]=oa;q[a+8>>2]=Na;q[a+12>>2]=Fa;T=Da+96|0}function Wh(a,b,z,T,oa){var pa=0,ua=0,va=0,wa=0,xa=0,ya=0,kb=0,lb=0;xa=oa;oa=0;ya=oa;va=z;z=0;ua=Nj(xa,oa,va,z);oa=V;kb=ua;ua=ua>>>0<0?oa+1|0:oa;pa=T;oa=0;wa=b;T=Nj(pa,oa,b,0);b=V;pa=Nj(pa,oa,va,z);z=b+pa|0;b=V;b=z>>>0<pa>>>0?b+1|0:b;va=b;pa=b+kb|0;b=ua;b=pa>>>0<va>>>0?b+1|0:b;ua=b;b=Nj(wa,lb,xa,ya)+z|0;oa=V;oa=b>>>0<z>>>0?oa+1|0:oa;wa=oa;pa=oa+pa|0;oa=ua;q[a+8>>2]=pa;q[a+12>>2]=pa>>>0<wa>>>0?oa+1|0:oa;q[a>>2]=T;q[a+4>>2]=b}function Xh(a,b,z,oa,mb,nb,ob,pb,qb){var rb=0;rb=T-16|0;T=rb;Lh(rb,b,z,oa,mb,nb,ob,pb,qb^-2147483648);oa=q[rb>>2];z=q[rb+4>>2];b=q[rb+12>>2];q[a+8>>2]=q[rb+8>>2];q[a+12>>2]=b;q[a>>2]=oa;q[a+4>>2]=z;T=rb+16|0}function Yh(a,b,z,oa){var mb=0,nb=0,ob=0,pb=0,qb=0,sb=0,tb=0;ob=T-32|0;T=ob;mb=oa&2147483647;qb=mb;mb=mb+ -1006698496|0;pb=z;nb=z;if(z>>>0<0){mb=mb+1|0}sb=nb;nb=mb;mb=qb+ -1140785152|0;tb=pb;if(pb>>>0<0){mb=mb+1|0}a:{if((mb|0)==(nb|0)&sb>>>0<tb>>>0|nb>>>0<mb>>>0){mb=oa<<4|z>>>28;z=z<<4|b>>>28;b=b&268435455;pb=b;if((b|0)==134217728&a>>>0>=1|b>>>0>134217728){mb=mb+1073741824|0;a=z+1|0;if(a>>>0<1){mb=mb+1|0}nb=a;break a}nb=z;mb=mb-((z>>>0<0)+ -1073741824|0)|0;if(a|pb^134217728){break a}a=nb+(nb&1)|0;if(a>>>0<nb>>>0){mb=mb+1|0}nb=a;break a}if(!(!pb&(qb|0)==2147418112?!(a|b):(qb|0)==2147418112&pb>>>0<0|qb>>>0<2147418112)){mb=oa<<4|z>>>28;nb=z<<4|b>>>28;mb=mb&524287|2146959360;break a}nb=0;mb=2146435072;if((qb|0)==1140785151&pb>>>0>4294967295|qb>>>0>1140785151){break a}mb=0;pb=qb>>>16;if(pb>>>0<15249){break a}mb=oa&65535|65536;Uh(ob,a,b,z,mb,15361-pb|0);Mh(ob+16|0,a,b,z,mb,pb+ -15233|0);z=q[ob+4>>2];a=q[ob+8>>2];mb=q[ob+12>>2]<<4|a>>>28;nb=a<<4|z>>>28;a=z&268435455;z=a;b=q[ob>>2]|((q[ob+16>>2]|q[ob+24>>2])!=0|(q[ob+20>>2]|q[ob+28>>2])!=0);if((a|0)==134217728&b>>>0>=1|a>>>0>134217728){a=nb+1|0;if(a>>>0<1){mb=mb+1|0}nb=a;break a}if(b|z^134217728){break a}a=nb+(nb&1)|0;if(a>>>0<nb>>>0){mb=mb+1|0}nb=a}T=ob+32|0;f(0,nb|0);f(1,oa&-2147483648|mb);return+g()}function Zh(a,b,z,oa){var ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0;xb=T-32|0;T=xb;vb=oa&2147483647;wb=vb;ub=vb+ -1065418752|0;vb=z;yb=vb;if(vb>>>0<0){ub=ub+1|0}Ab=yb;zb=wb+ -1082064896|0;yb=vb;if(vb>>>0<0){zb=zb+1|0}a:{if((ub|0)==(zb|0)&Ab>>>0<yb>>>0|ub>>>0<zb>>>0){wb=(oa&33554431)<<7|z>>>25;vb=0;zb=vb;yb=z&33554431;if(!(!vb&(yb|0)==16777216?!(a|b):!vb&yb>>>0<16777216|vb>>>0<0)){ub=wb+1073741825|0;break a}ub=wb+1073741824|0;if(yb^16777216|a|(b|zb)){break a}ub=(ub&1)+ub|0;break a}if(!(!vb&(wb|0)==2147418112?!(a|b):(wb|0)==2147418112&vb>>>0<0|wb>>>0<2147418112)){ub=((oa&33554431)<<7|z>>>25)&4194303|2143289344;break a}ub=2139095040;if((wb|0)==1082064895&vb>>>0>4294967295|wb>>>0>1082064895){break a}ub=0;wb=wb>>>16;if(wb>>>0<16145){break a}ub=oa&65535|65536;Uh(xb,a,b,z,ub,16257-wb|0);Mh(xb+16|0,a,b,vb,ub,wb+ -16129|0);b=q[xb+8>>2];ub=(q[xb+12>>2]&33554431)<<7|b>>>25;vb=q[xb+4>>2];wb=vb;a=0;yb=a;zb=q[xb>>2]|((q[xb+16>>2]|q[xb+24>>2])!=0|(q[xb+20>>2]|q[xb+28>>2])!=0);b=b&33554431;if(!(!a&(b|0)==16777216?!(vb|zb):!a&b>>>0<16777216|a>>>0<0)){ub=ub+1|0;break a}if(b^16777216|zb|(wb|yb)){break a}ub=(ub&1)+ub|0}T=xb+32|0;return f(0,oa&-2147483648|ub),k()}function _h(){return 0}function $h(a){var b=0,z=0,T=0;a:{b:{b=a;if(!(b&3)){break b}if(!r[a|0]){break a}while(1){b=b+1|0;if(!(b&3)){break b}if(r[b|0]){continue}break}break a}while(1){z=b;b=b+4|0;T=q[z>>2];if(!((T^-1)&T+ -16843009&-2139062144)){continue}break}if(!(T&255)){b=z;break a}while(1){T=r[z+1|0];b=z+1|0;z=b;if(T){continue}break}}return b-a|0}function ai(a,q,oa){if(oa){oj(a,q,oa)}}function bi(a,q){var oa=0;oa=T-16|0;T=oa;T=oa+16|0;return t[a>>2]<t[q>>2]?q:a}function ci(a,q){var Bb=0,Cb=0;Bb=r[a|0];Cb=r[q|0];a:{if(!Bb|(Bb|0)!=(Cb|0)){break a}while(1){Cb=r[q+1|0];Bb=r[a+1|0];if(!Bb){break a}q=q+1|0;a=a+1|0;if((Bb|0)==(Cb|0)){continue}break}}return Bb-Cb|0}function di(){var a=0,Db=0,Eb=0;a=T-16|0;T=a;a:{if(M(a+12|0,a+8|0)){break a}Db=hj((q[a+12>>2]<<2)+4|0);q[3718]=Db;if(!Db){break a}b:{Db=hj(q[a+8>>2]);if(Db){Eb=q[3718];if(Eb){break b}}q[3718]=0;break a}q[(q[a+12>>2]<<2)+Eb>>2]=0;if(!N(q[3718],Db|0)){break a}q[3718]=0}T=a+16|0}function ei(Fb,Gb,Hb){var Ib=0,Jb=0;Ib=T-160|0;T=Ib;oj(Ib+8|0,13640,144);a:{b:{if(Gb+ -1>>>0>=2147483647){if(Gb){break b}Gb=1;Fb=Ib+159|0}q[Ib+52>>2]=Fb;q[Ib+28>>2]=Fb;Jb=-2-Fb|0;Gb=Gb>>>0>Jb>>>0?Jb:Gb;q[Ib+56>>2]=Gb;Fb=Fb+Gb|0;q[Ib+36>>2]=Fb;q[Ib+24>>2]=Fb;Fb=jh(Ib+8|0,13865,Hb);if(!Gb){break a}Gb=q[Ib+28>>2];o[Gb-((Gb|0)==q[Ib+24>>2])|0]=0;break a}q[3701]=61;Fb=-1}T=Ib+160|0;return Fb}function fi(Fb,Gb,Hb){Fb=Fb|0;Gb=Gb|0;Hb=Hb|0;var Kb=0,Lb=0;Lb=q[Fb+20>>2];Kb=q[Fb+16>>2]-Lb|0;Kb=Kb>>>0>Hb>>>0?Hb:Kb;oj(Lb,Gb,Kb);q[Fb+20>>2]=Kb+q[Fb+20>>2];return Hb|0}function gi(Fb,Gb,Hb){var Mb=0;Mb=T-16|0;T=Mb;q[Mb+12>>2]=Hb;Fb=ei(Fb,Gb,Hb);T=Mb+16|0;return Fb}function hi(Fb){if(li(Fb)){return q[Fb+4>>2]}return r[Fb+11|0]}function ii(q){if(li(q)){q=mi(q)+ -1|0}else{q=10}return q}function ji(q,Fb){Ai(q,Fb)}function ki(Fb){var Gb=0;Gb=Fb;Fb=0;while(1){if((Fb|0)!=3){q[(Fb<<2)+Gb>>2]=0;Fb=Fb+1|0;continue}break}}function li(q){return o[q+11|0]<0}function mi(Fb){return q[Fb+8>>2]&2147483647}function ni(Fb){if(li(Fb)){return q[Fb>>2]}return Fb}function oi(q,Fb){o[q|0]=r[Fb|0]}function pi(q,Fb){o[q+11|0]=Fb}function qi(q){var Fb=0;if(q>>>0>=11){Fb=q+16&-16;q=Fb+ -1|0;q=(q|0)==11?Fb:q}else{q=10}return q}function ri(q){if(4294967295<q>>>0){ob(13784);F()}return ui(q)}function si(Hb,Nb){q[Hb>>2]=Nb}function ti(Hb,Nb){q[Hb+8>>2]=Nb|-2147483648}function ui(Hb){var Nb=0,Ob=0;Hb=Hb?Hb:1;while(1){a:{Nb=hj(Hb);if(Nb){break a}Ob=q[3719];if(!Ob){break a}n[Ob]();continue}break}return Nb}function vi(Hb,Pb){var Qb=0,Rb=0,Sb=0,Tb=0;Qb=$h(Pb);Rb=ui(Qb+13|0);q[Rb+8>>2]=0;q[Rb+4>>2]=Qb;q[Rb>>2]=Qb;Sb=Hb,Tb=oj(Rb+12|0,Pb,Qb+1|0),q[Sb>>2]=Tb}function wi(Hb){var Pb=0,Ub=0,Vb=0;Pb=T-16|0;T=Pb;o[Pb+15|0]=10;Ub=q[Hb+16>>2];a:{if(!Ub){if(_g(Hb)){break a}Ub=q[Hb+16>>2]}Vb=q[Hb+20>>2];if(!(o[Hb+75|0]==10|Vb>>>0>=Ub>>>0)){q[Hb+20>>2]=Vb+1;o[Vb|0]=10;break a}if((n[q[Hb+36>>2]](Hb,Pb+15|0,1)|0)!=1){break a}}T=Pb+16|0}function xi(){ob(13852);F()}function yi(Hb,Wb){var Xb=0,Yb=0,Zb=0;Yb=T-16|0;T=Yb;ka(Hb);Xb=Hb;a:{if(!li(Wb)){q[Xb+8>>2]=q[Wb+8>>2];Zb=q[Wb+4>>2];q[Xb>>2]=q[Wb>>2];q[Xb+4>>2]=Zb;break a}zi(Hb,q[Wb>>2],q[Wb+4>>2])}T=Yb+16|0;return Hb}function zi(q,Hb,Wb){var _b=0,$b=0,ac=0;_b=T-16|0;T=_b;if(4294967279>=Wb>>>0){a:{if(Wb>>>0<=10){pi(q,Wb);$b=q;break a}ac=qi(Wb)+1|0;$b=ri(ac);si(q,$b);ti(q,ac);Za(q,Wb)}ai($b,Hb,Wb);o[_b+15|0]=0;oi(Wb+$b|0,_b+15|0);T=_b+16|0;return}xi();F()}function Ai(q,Hb){var Wb=0;Wb=hi(q);if(Wb>>>0<Hb>>>0){Bi(q,Hb-Wb|0);return}Ci(q,Hb)}function Bi(q,Hb){var bc=0,cc=0,dc=0,ec=0;dc=T-16|0;T=dc;if(Hb){cc=ii(q);bc=hi(q);ec=bc+Hb|0;if(cc-bc>>>0<Hb>>>0){Di(q,cc,ec-cc|0,bc,bc)}cc=bc;bc=ni(q);cc=cc+bc|0;if(Hb){pj(cc,0,Hb)}Hb=ec;a:{if(li(q)){Za(q,Hb);break a}pi(q,Hb)}o[dc+15|0]=0;oi(bc+ec|0,dc+15|0)}T=dc+16|0}function Ci(Hb,fc){var gc=0,hc=0;gc=T-16|0;T=gc;a:{if(li(Hb)){hc=q[Hb>>2];o[gc+15|0]=0;oi(fc+hc|0,gc+15|0);Za(Hb,fc);break a}o[gc+14|0]=0;oi(Hb+fc|0,gc+14|0);pi(Hb,fc)}T=gc+16|0}function Di(Hb,fc,ic,jc,kc){var lc=0,mc=0,nc=0;lc=T-16|0;T=lc;if(-17-fc>>>0>=ic>>>0){mc=ni(Hb);a:{if(2147483623>fc>>>0){q[lc+8>>2]=fc<<1;q[lc+12>>2]=fc+ic;ic=qi(q[bi(lc+12|0,lc+8|0)>>2]);break a}ic=-18}nc=ic+1|0;ic=ri(nc);if(kc){ai(ic,mc,kc)}jc=jc-kc|0;if(jc){ai(ic+kc|0,kc+mc|0,jc)}if((fc|0)!=10){ij(mc)}si(Hb,ic);ti(Hb,nc);T=lc+16|0;return}xi();F()}function Ei(Hb,fc){var ic=0;ic=T-16|0;T=ic;ka(ic);ki(ic);ji(ic,ii(ic));Fi(Hb,ic,fc);Hb=ic;if(li(ic)){fc=q[Hb>>2];mi(Hb);ij(fc)}T=ic+16|0}function Fi(Hb,fc,jc){var kc=0,oc=0,pc=0,qc=0;pc=T-16|0;T=pc;kc=hi(fc);while(1){a:{oc=ni(fc);q[pc>>2]=jc;qc=fc;oc=gi(oc,kc+1|0,pc);b:{if((oc|0)>=0){if(oc>>>0<=kc>>>0){break a}kc=oc;break b}kc=kc<<1|1}ji(qc,kc);continue}break}ji(fc,oc);jc=q[fc+4>>2];q[Hb>>2]=q[fc>>2];q[Hb+4>>2]=jc;q[Hb+8>>2]=q[fc+8>>2];ki(fc);T=pc+16|0}function Gi(){ob(13868);F()}function Hi(){O();F()}function Ii(Hb){var fc=0;if(q[Hb+76>>2]<0){a:{if(o[Hb+75|0]==10){break a}fc=q[Hb+20>>2];if(fc>>>0>=t[Hb+16>>2]){break a}q[Hb+20>>2]=fc+1;o[fc|0]=10;return}wi(Hb);return}b:{c:{if(o[Hb+75|0]==10){break c}fc=q[Hb+20>>2];if(fc>>>0>=t[Hb+16>>2]){break c}q[Hb+20>>2]=fc+1;o[fc|0]=10;break b}wi(Hb)}}function Ji(){var Hb=0;Hb=T-16|0;T=Hb;q[Hb+12>>2]=0;Hb=q[3386];jh(Hb,13875,0);Ii(Hb);O();F()}function Ki(){Ji();F()}function Li(q){q=q|0;return 13905}function Mi(jc){jc=jc|0;q[jc>>2]=13972;Ni(jc+4|0);return jc|0}function Ni(jc){var rc=0,sc=0;rc=q[jc>>2]+ -12|0;sc=rc+8|0;jc=q[sc>>2]+ -1|0;q[sc>>2]=jc;a:{if((jc|0)>-1){break a}ij(rc)}}function Oi(q){q=q|0;ij(Mi(q))}function Pi(jc){jc=jc|0;return q[jc+4>>2]}function Qi(q){q=q|0;Mi(q);ij(q)}function Ri(jc,tc,uc){if(!uc){return(jc|0)==(tc|0)}return!ci(q[jc+4>>2],q[tc+4>>2])}function Si(jc,tc,uc){jc=jc|0;tc=tc|0;uc=uc|0;var vc=0,wc=0;vc=T+ -64|0;T=vc;wc=1;a:{if(Ri(jc,tc,0)){break a}wc=0;if(!tc){break a}tc=Ti(tc);wc=0;if(!tc){break a}q[vc+20>>2]=-1;q[vc+16>>2]=jc;q[vc+12>>2]=0;q[vc+8>>2]=tc;pj(vc+24|0,0,39);q[vc+56>>2]=1;n[q[q[tc>>2]+28>>2]](tc,vc+8|0,q[uc>>2],1);wc=0;if(q[vc+32>>2]!=1){break a}q[uc>>2]=q[vc+24>>2];wc=1}T=vc- -64|0;return wc|0}function Ti(jc){var tc=0,uc=0,xc=0,yc=0;tc=T+ -64|0;T=tc;uc=q[jc>>2];yc=q[uc+ -8>>2];uc=q[uc+ -4>>2];q[tc+20>>2]=0;q[tc+16>>2]=14124;q[tc+12>>2]=jc;q[tc+8>>2]=14172;pj(tc+24|0,0,39);jc=jc+yc|0;a:{if(Ri(uc,14172,0)){q[tc+56>>2]=1;n[q[q[uc>>2]+20>>2]](uc,tc+8|0,jc,jc,1,0);xc=q[tc+32>>2]==1?jc:0;break a}n[q[q[uc>>2]+24>>2]](uc,tc+8|0,jc,1,0);jc=q[tc+44>>2];if(jc>>>0>1){break a}if(jc-1){xc=q[tc+48>>2]==1?q[tc+36>>2]==1?q[tc+40>>2]==1?q[tc+28>>2]:0:0:0;break a}if(q[tc+32>>2]!=1){if(q[tc+48>>2]|q[tc+36>>2]!=1|q[tc+40>>2]!=1){break a}}xc=q[tc+24>>2]}T=tc- -64|0;return xc}function Ui(jc,zc,Ac){var Bc=0;Bc=q[jc+16>>2];if(!Bc){q[jc+36>>2]=1;q[jc+24>>2]=Ac;q[jc+16>>2]=zc;return}a:{if((zc|0)==(Bc|0)){if(q[jc+24>>2]!=2){break a}q[jc+24>>2]=Ac;return}o[jc+54|0]=1;q[jc+24>>2]=2;q[jc+36>>2]=q[jc+36>>2]+1}}function Vi(jc,zc,Ac,Cc){jc=jc|0;zc=zc|0;Ac=Ac|0;Cc=Cc|0;if(Ri(jc,q[zc+8>>2],0)){Ui(zc,Ac,Cc)}}function Wi(jc,zc,Ac,Cc){jc=jc|0;zc=zc|0;Ac=Ac|0;Cc=Cc|0;if(Ri(jc,q[zc+8>>2],0)){Ui(zc,Ac,Cc);return}jc=q[jc+8>>2];n[q[q[jc>>2]+28>>2]](jc,zc,Ac,Cc)}function Xi(jc,zc,Ac,Cc){var Dc=0,Ec=0,Fc=0,Gc=0;Ec=q[jc+4>>2];jc=q[jc>>2];Fc=jc;Gc=zc;Dc=0;a:{if(!Ac){break a}zc=Ec>>8;Dc=zc;if(!(Ec&1)){break a}Dc=q[zc+q[Ac>>2]>>2]}n[q[q[jc>>2]+28>>2]](Fc,Gc,Dc+Ac|0,Ec&2?Cc:2)}function Yi(jc,zc,Ac,Cc){jc=jc|0;zc=zc|0;Ac=Ac|0;Cc=Cc|0;var Hc=0,Ic=0;if(Ri(jc,q[zc+8>>2],0)){Ui(zc,Ac,Cc);return}Hc=q[jc+12>>2];Ic=jc+16|0;Xi(Ic,zc,Ac,Cc);a:{if((Hc|0)<2){break a}Hc=(Hc<<3)+Ic|0;jc=jc+24|0;while(1){Xi(jc,zc,Ac,Cc);if(r[zc+54|0]){break a}jc=jc+8|0;if(jc>>>0<Hc>>>0){continue}break}}}function Zi(jc,zc,Ac,Cc){o[jc+53|0]=1;a:{if(q[jc+4>>2]!=(Ac|0)){break a}o[jc+52|0]=1;Ac=q[jc+16>>2];if(!Ac){q[jc+36>>2]=1;q[jc+24>>2]=Cc;q[jc+16>>2]=zc;if((Cc|0)!=1|q[jc+48>>2]!=1){break a}o[jc+54|0]=1;return}if((zc|0)==(Ac|0)){Ac=q[jc+24>>2];if((Ac|0)==2){q[jc+24>>2]=Cc;Ac=Cc}if(q[jc+48>>2]!=1|(Ac|0)!=1){break a}o[jc+54|0]=1;return}o[jc+54|0]=1;q[jc+36>>2]=q[jc+36>>2]+1}}function _i(jc,zc,Ac){if(!(q[jc+28>>2]==1|q[jc+4>>2]!=(zc|0))){q[jc+28>>2]=Ac}}function $i(jc,zc,Ac,Cc,Jc){jc=jc|0;zc=zc|0;Ac=Ac|0;Cc=Cc|0;Jc=Jc|0;var Kc=0,Lc=0,Mc=0,Nc=0,Oc=0;if(Ri(jc,q[zc+8>>2],Jc)){_i(zc,Ac,Cc);return}a:{if(Ri(jc,q[zc>>2],Jc)){if(!(q[zc+20>>2]!=(Ac|0)?q[zc+16>>2]!=(Ac|0):0)){if((Cc|0)!=1){break a}q[zc+32>>2]=1;return}q[zc+32>>2]=Cc;if(q[zc+44>>2]!=4){Kc=jc+16|0;Nc=Kc+(q[jc+12>>2]<<3)|0;Oc=zc;b:{c:{while(1){d:{if(Kc>>>0>=Nc>>>0){break d}p[zc+52>>1]=0;aj(Kc,zc,Ac,Ac,1,Jc);if(r[zc+54|0]){break d}e:{if(!r[zc+53|0]){break e}if(r[zc+52|0]){Cc=1;if(q[zc+24>>2]==1){break c}Mc=1;Lc=1;if(r[jc+8|0]&2){break e}break c}Mc=1;Cc=Lc;if(!(o[jc+8|0]&1)){break c}}Kc=Kc+8|0;continue}break}Cc=Lc;jc=4;if(!Mc){break b}}jc=3}q[Oc+44>>2]=jc;if(Cc&1){break a}}q[zc+20>>2]=Ac;q[zc+40>>2]=q[zc+40>>2]+1;if(q[zc+36>>2]!=1|q[zc+24>>2]!=2){break a}o[zc+54|0]=1;return}Lc=q[jc+12>>2];Kc=jc+16|0;bj(Kc,zc,Ac,Cc,Jc);if((Lc|0)<2){break a}Lc=Kc+(Lc<<3)|0;Kc=jc+24|0;jc=q[jc+8>>2];if(!(q[zc+36>>2]!=1?!(jc&2):0)){while(1){if(r[zc+54|0]){break a}bj(Kc,zc,Ac,Cc,Jc);Kc=Kc+8|0;if(Kc>>>0<Lc>>>0){continue}break}break a}if(!(jc&1)){while(1){if(r[zc+54|0]|q[zc+36>>2]==1){break a}bj(Kc,zc,Ac,Cc,Jc);Kc=Kc+8|0;if(Kc>>>0<Lc>>>0){continue}break a}}while(1){if(r[zc+54|0]|(q[zc+24>>2]==1?q[zc+36>>2]==1:0)){break a}bj(Kc,zc,Ac,Cc,Jc);Kc=Kc+8|0;if(Kc>>>0<Lc>>>0){continue}break}}}function aj(jc,zc,Ac,Cc,Jc,Pc){var Qc=0,Rc=0,Sc=0;Qc=q[jc+4>>2];Rc=Qc>>8;jc=q[jc>>2];Sc=jc;if(Qc&1){Rc=q[q[Cc>>2]+Rc>>2]}n[q[q[jc>>2]+20>>2]](Sc,zc,Ac,Cc+Rc|0,Qc&2?Jc:2,Pc)}function bj(jc,zc,Ac,Cc,Jc){var Pc=0,Tc=0,Uc=0;Pc=q[jc+4>>2];Tc=Pc>>8;jc=q[jc>>2];Uc=jc;if(Pc&1){Tc=q[q[Ac>>2]+Tc>>2]}n[q[q[jc>>2]+24>>2]](Uc,zc,Ac+Tc|0,Pc&2?Cc:2,Jc)}function cj(jc,zc,Ac,Cc,Jc){jc=jc|0;zc=zc|0;Ac=Ac|0;Cc=Cc|0;Jc=Jc|0;if(Ri(jc,q[zc+8>>2],Jc)){_i(zc,Ac,Cc);return}a:{if(Ri(jc,q[zc>>2],Jc)){if(!(q[zc+20>>2]!=(Ac|0)?q[zc+16>>2]!=(Ac|0):0)){if((Cc|0)!=1){break a}q[zc+32>>2]=1;return}q[zc+32>>2]=Cc;b:{if(q[zc+44>>2]==4){break b}p[zc+52>>1]=0;jc=q[jc+8>>2];n[q[q[jc>>2]+20>>2]](jc,zc,Ac,Ac,1,Jc);if(r[zc+53|0]){q[zc+44>>2]=3;if(!r[zc+52|0]){break b}break a}q[zc+44>>2]=4}q[zc+20>>2]=Ac;q[zc+40>>2]=q[zc+40>>2]+1;if(q[zc+36>>2]!=1|q[zc+24>>2]!=2){break a}o[zc+54|0]=1;return}jc=q[jc+8>>2];n[q[q[jc>>2]+24>>2]](jc,zc,Ac,Cc,Jc)}}function dj(jc,zc,Ac,Cc,Jc){jc=jc|0;zc=zc|0;Ac=Ac|0;Cc=Cc|0;Jc=Jc|0;if(Ri(jc,q[zc+8>>2],Jc)){_i(zc,Ac,Cc);return}a:{if(!Ri(jc,q[zc>>2],Jc)){break a}if(!(q[zc+20>>2]!=(Ac|0)?q[zc+16>>2]!=(Ac|0):0)){if((Cc|0)!=1){break a}q[zc+32>>2]=1;return}q[zc+20>>2]=Ac;q[zc+32>>2]=Cc;q[zc+40>>2]=q[zc+40>>2]+1;if(!(q[zc+36>>2]!=1|q[zc+24>>2]!=2)){o[zc+54|0]=1}q[zc+44>>2]=4}}function ej(jc,zc,Ac,Cc,Jc,Vc){jc=jc|0;zc=zc|0;Ac=Ac|0;Cc=Cc|0;Jc=Jc|0;Vc=Vc|0;var Wc=0,Xc=0,Yc=0,Zc=0,_c=0,$c=0;if(Ri(jc,q[zc+8>>2],Vc)){Zi(zc,Ac,Cc,Jc);return}Xc=r[zc+53|0];Wc=q[jc+12>>2];o[zc+53|0]=0;Yc=r[zc+52|0];o[zc+52|0]=0;Zc=jc+16|0;aj(Zc,zc,Ac,Cc,Jc,Vc);_c=r[zc+53|0];Xc=Xc|_c;$c=r[zc+52|0];Yc=Yc|$c;a:{if((Wc|0)<2){break a}Zc=Zc+(Wc<<3)|0;Wc=jc+24|0;while(1){if(r[zc+54|0]){break a}b:{if($c){if(q[zc+24>>2]==1){break a}if(r[jc+8|0]&2){break b}break a}if(!_c){break b}if(!(o[jc+8|0]&1)){break a}}p[zc+52>>1]=0;aj(Wc,zc,Ac,Cc,Jc,Vc);_c=r[zc+53|0];Xc=_c|Xc;$c=r[zc+52|0];Yc=$c|Yc;Wc=Wc+8|0;if(Wc>>>0<Zc>>>0){continue}break}}o[zc+53|0]=(Xc&255)!=0;o[zc+52|0]=(Yc&255)!=0}function fj(jc,zc,Ac,Cc,Jc,Vc){jc=jc|0;zc=zc|0;Ac=Ac|0;Cc=Cc|0;Jc=Jc|0;Vc=Vc|0;if(Ri(jc,q[zc+8>>2],Vc)){Zi(zc,Ac,Cc,Jc);return}jc=q[jc+8>>2];n[q[q[jc>>2]+20>>2]](jc,zc,Ac,Cc,Jc,Vc)}function gj(jc,zc,Ac,Cc,Jc,Vc){jc=jc|0;zc=zc|0;Ac=Ac|0;Cc=Cc|0;Jc=Jc|0;Vc=Vc|0;if(Ri(jc,q[zc+8>>2],Vc)){Zi(zc,Ac,Cc,Jc)}}function hj(jc){jc=jc|0;var zc=0,Ac=0,Cc=0,Jc=0,Vc=0,ad=0,bd=0,cd=0,dd=0,ed=0,fd=0,gd=0,hd=0;fd=T-16|0;T=fd;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(jc>>>0<=244){Vc=q[3720];bd=jc>>>0<11?16:jc+11&-8;zc=bd>>>3;jc=Vc>>>zc;if(jc&3){Cc=zc+((jc^-1)&1)|0;zc=Cc<<3;Jc=q[zc+14928>>2];jc=Jc+8|0;Ac=q[Jc+8>>2];zc=zc+14920|0;l:{if((Ac|0)==(zc|0)){gd=14880,hd=Qj(Cc)&Vc,q[gd>>2]=hd;break l}q[Ac+12>>2]=zc;q[zc+8>>2]=Ac}zc=Cc<<3;q[Jc+4>>2]=zc|3;zc=zc+Jc|0;q[zc+4>>2]=q[zc+4>>2]|1;break a}ed=q[3722];if(bd>>>0<=ed>>>0){break k}if(jc){Ac=jc<<zc;jc=2<<zc;jc=Ac&(0-jc|jc);zc=(0-jc&jc)+ -1|0;jc=zc>>>12&16;Ac=jc;zc=zc>>>jc;jc=zc>>>5&8;Ac=Ac|jc;zc=zc>>>jc;jc=zc>>>2&4;Ac=Ac|jc;zc=zc>>>jc;jc=zc>>>1&2;Ac=Ac|jc;zc=zc>>>jc;jc=zc>>>1&1;Ac=(Ac|jc)+(zc>>>jc)|0;jc=Ac<<3;ad=q[jc+14928>>2];zc=q[ad+8>>2];jc=jc+14920|0;m:{if((zc|0)==(jc|0)){Vc=Qj(Ac)&Vc;q[3720]=Vc;break m}q[zc+12>>2]=jc;q[jc+8>>2]=zc}jc=ad+8|0;q[ad+4>>2]=bd|3;Cc=ad+bd|0;zc=Ac<<3;Jc=zc-bd|0;q[Cc+4>>2]=Jc|1;q[zc+ad>>2]=Jc;if(ed){zc=ed>>>3;Ac=(zc<<3)+14920|0;bd=q[3725];zc=1<<zc;n:{if(!(zc&Vc)){q[3720]=zc|Vc;zc=Ac;break n}zc=q[Ac+8>>2]}q[Ac+8>>2]=bd;q[zc+12>>2]=bd;q[bd+12>>2]=Ac;q[bd+8>>2]=zc}q[3725]=Cc;q[3722]=Jc;break a}cd=q[3721];if(!cd){break k}zc=(cd&0-cd)+ -1|0;jc=zc>>>12&16;Ac=jc;zc=zc>>>jc;jc=zc>>>5&8;Ac=Ac|jc;zc=zc>>>jc;jc=zc>>>2&4;Ac=Ac|jc;zc=zc>>>jc;jc=zc>>>1&2;Ac=Ac|jc;zc=zc>>>jc;jc=zc>>>1&1;zc=q[((Ac|jc)+(zc>>>jc)<<2)+15184>>2];Cc=(q[zc+4>>2]&-8)-bd|0;Ac=zc;while(1){o:{jc=q[Ac+16>>2];if(!jc){jc=q[Ac+20>>2];if(!jc){break o}}Ac=(q[jc+4>>2]&-8)-bd|0;Jc=Ac>>>0<Cc>>>0;Cc=Jc?Ac:Cc;zc=Jc?jc:zc;Ac=jc;continue}break}dd=q[zc+24>>2];Jc=q[zc+12>>2];if((Jc|0)!=(zc|0)){jc=q[zc+8>>2];q[jc+12>>2]=Jc;q[Jc+8>>2]=jc;break b}Ac=zc+20|0;jc=q[Ac>>2];if(!jc){jc=q[zc+16>>2];if(!jc){break j}Ac=zc+16|0}while(1){ad=Ac;Jc=jc;Ac=jc+20|0;jc=q[Ac>>2];if(jc){continue}Ac=Jc+16|0;jc=q[Jc+16>>2];if(jc){continue}break}q[ad>>2]=0;break b}bd=-1;if(jc>>>0>4294967231){break k}jc=jc+11|0;bd=jc&-8;cd=q[3721];if(!cd){break k}jc=jc>>>8;ad=0;p:{if(!jc){break p}ad=31;if(bd>>>0>16777215){break p}zc=jc+1048320>>>16&8;jc=jc<<zc;Cc=jc+520192>>>16&4;jc=jc<<Cc;Ac=jc+245760>>>16&2;jc=(jc<<Ac>>>15)-(Ac|(zc|Cc))|0;ad=(jc<<1|bd>>>jc+21&1)+28|0}Ac=0-bd|0;Cc=q[(ad<<2)+15184>>2];q:{r:{s:{if(!Cc){jc=0;break s}zc=bd<<((ad|0)==31?0:25-(ad>>>1)|0);jc=0;while(1){t:{Vc=(q[Cc+4>>2]&-8)-bd|0;if(Vc>>>0>=Ac>>>0){break t}Jc=Cc;Ac=Vc;if(Ac){break t}Ac=0;jc=Cc;break r}Vc=q[Cc+20>>2];Cc=q[((zc>>>29&4)+Cc|0)+16>>2];jc=Vc?(Vc|0)==(Cc|0)?jc:Vc:jc;zc=zc<<((Cc|0)!=0);if(Cc){continue}break}}if(!(jc|Jc)){jc=2<<ad;jc=(0-jc|jc)&cd;if(!jc){break k}zc=(jc&0-jc)+ -1|0;jc=zc>>>12&16;Cc=jc;zc=zc>>>jc;jc=zc>>>5&8;Cc=Cc|jc;zc=zc>>>jc;jc=zc>>>2&4;Cc=Cc|jc;zc=zc>>>jc;jc=zc>>>1&2;Cc=Cc|jc;zc=zc>>>jc;jc=zc>>>1&1;jc=q[((Cc|jc)+(zc>>>jc)<<2)+15184>>2]}if(!jc){break q}}while(1){zc=(q[jc+4>>2]&-8)-bd|0;Cc=zc>>>0<Ac>>>0;Ac=Cc?zc:Ac;Jc=Cc?jc:Jc;zc=q[jc+16>>2];if(zc){jc=zc}else{jc=q[jc+20>>2]}if(jc){continue}break}}if(!Jc|Ac>>>0>=q[3722]-bd>>>0){break k}ad=q[Jc+24>>2];zc=q[Jc+12>>2];if((Jc|0)!=(zc|0)){jc=q[Jc+8>>2];q[jc+12>>2]=zc;q[zc+8>>2]=jc;break c}Cc=Jc+20|0;jc=q[Cc>>2];if(!jc){jc=q[Jc+16>>2];if(!jc){break i}Cc=Jc+16|0}while(1){Vc=Cc;zc=jc;Cc=jc+20|0;jc=q[Cc>>2];if(jc){continue}Cc=zc+16|0;jc=q[zc+16>>2];if(jc){continue}break}q[Vc>>2]=0;break c}Ac=q[3722];if(Ac>>>0>=bd>>>0){Cc=q[3725];zc=Ac-bd|0;u:{if(zc>>>0>=16){q[3722]=zc;jc=Cc+bd|0;q[3725]=jc;q[jc+4>>2]=zc|1;q[Ac+Cc>>2]=zc;q[Cc+4>>2]=bd|3;break u}q[3725]=0;q[3722]=0;q[Cc+4>>2]=Ac|3;jc=Ac+Cc|0;q[jc+4>>2]=q[jc+4>>2]|1}jc=Cc+8|0;break a}dd=q[3723];if(dd>>>0>bd>>>0){zc=dd-bd|0;q[3723]=zc;Ac=q[3726];jc=Ac+bd|0;q[3726]=jc;q[jc+4>>2]=zc|1;q[Ac+4>>2]=bd|3;jc=Ac+8|0;break a}jc=0;cd=bd+47|0;zc=cd;if(q[3838]){Ac=q[3840]}else{q[3841]=-1;q[3842]=-1;q[3839]=4096;q[3840]=4096;q[3838]=fd+12&-16^1431655768;q[3843]=0;q[3831]=0;Ac=4096}ad=zc+Ac|0;Vc=0-Ac|0;Ac=ad&Vc;if(Ac>>>0<=bd>>>0){break a}Jc=q[3830];if(Jc){Cc=q[3828];zc=Cc+Ac|0;if(zc>>>0<=Cc>>>0|zc>>>0>Jc>>>0){break a}}if(r[15324]&4){break f}v:{w:{Cc=q[3726];if(Cc){jc=15328;while(1){zc=q[jc>>2];if(zc+q[jc+4>>2]>>>0>Cc>>>0?zc>>>0<=Cc>>>0:0){break w}jc=q[jc+8>>2];if(jc){continue}break}}zc=jj(0);if((zc|0)==-1){break g}Vc=Ac;Cc=q[3839];jc=Cc+ -1|0;if(jc&zc){Vc=(Ac-zc|0)+(jc+zc&0-Cc)|0}if(Vc>>>0<=bd>>>0|Vc>>>0>2147483646){break g}Jc=q[3830];if(Jc){Cc=q[3828];jc=Cc+Vc|0;if(jc>>>0<=Cc>>>0|jc>>>0>Jc>>>0){break g}}jc=jj(Vc);if((zc|0)!=(jc|0)){break v}break e}Vc=Vc&ad-dd;if(Vc>>>0>2147483646){break g}zc=jj(Vc);if((zc|0)==(q[jc>>2]+q[jc+4>>2]|0)){break h}jc=zc}zc=jc;if(!(bd+48>>>0<=Vc>>>0|Vc>>>0>2147483646|(jc|0)==-1)){jc=q[3840];jc=jc+(cd-Vc|0)&0-jc;if(jc>>>0>2147483646){break e}if((jj(jc)|0)!=-1){Vc=jc+Vc|0;break e}jj(0-Vc|0);break g}if((zc|0)!=-1){break e}break g}Jc=0;break b}zc=0;break c}if((zc|0)!=-1){break e}}q[3831]=q[3831]|4}if(Ac>>>0>2147483646){break d}zc=jj(Ac);jc=jj(0);if(zc>>>0>=jc>>>0|(zc|0)==-1|(jc|0)==-1){break d}Vc=jc-zc|0;if(Vc>>>0<=bd+40>>>0){break d}}jc=q[3828]+Vc|0;q[3828]=jc;if(jc>>>0>t[3829]){q[3829]=jc}x:{y:{z:{Cc=q[3726];if(Cc){jc=15328;while(1){Jc=q[jc>>2];Ac=q[jc+4>>2];if((Jc+Ac|0)==(zc|0)){break z}jc=q[jc+8>>2];if(jc){continue}break}break y}jc=q[3724];if(!(zc>>>0>=jc>>>0?jc:0)){q[3724]=zc}jc=0;q[3833]=Vc;q[3832]=zc;q[3728]=-1;q[3729]=q[3838];q[3835]=0;while(1){Cc=jc<<3;Ac=Cc+14920|0;q[Cc+14928>>2]=Ac;q[Cc+14932>>2]=Ac;jc=jc+1|0;if((jc|0)!=32){continue}break}Cc=Vc+ -40|0;jc=zc+8&7?-8-zc&7:0;Ac=Cc-jc|0;q[3723]=Ac;jc=jc+zc|0;q[3726]=jc;q[jc+4>>2]=Ac|1;q[(zc+Cc|0)+4>>2]=40;q[3727]=q[3842];break x}if(r[jc+12|0]&8|zc>>>0<=Cc>>>0|Jc>>>0>Cc>>>0){break y}q[jc+4>>2]=Ac+Vc;jc=Cc+8&7?-8-Cc&7:0;Ac=jc+Cc|0;q[3726]=Ac;zc=q[3723]+Vc|0;jc=zc-jc|0;q[3723]=jc;q[Ac+4>>2]=jc|1;q[(zc+Cc|0)+4>>2]=40;q[3727]=q[3842];break x}Jc=q[3724];if(zc>>>0<Jc>>>0){q[3724]=zc;Jc=0}Ac=zc+Vc|0;jc=15328;A:{B:{C:{D:{E:{F:{while(1){if((Ac|0)!=q[jc>>2]){jc=q[jc+8>>2];if(jc){continue}break F}break}if(!(r[jc+12|0]&8)){break E}}jc=15328;while(1){Ac=q[jc>>2];if(Ac>>>0<=Cc>>>0){ad=Ac+q[jc+4>>2]|0;if(ad>>>0>Cc>>>0){break D}}jc=q[jc+8>>2];continue}}q[jc>>2]=zc;q[jc+4>>2]=q[jc+4>>2]+Vc;dd=(zc+8&7?-8-zc&7:0)+zc|0;q[dd+4>>2]=bd|3;zc=Ac+(Ac+8&7?-8-Ac&7:0)|0;jc=(zc-dd|0)-bd|0;ad=bd+dd|0;if((zc|0)==(Cc|0)){q[3726]=ad;jc=q[3723]+jc|0;q[3723]=jc;q[ad+4>>2]=jc|1;break B}if(q[3725]==(zc|0)){q[3725]=ad;jc=q[3722]+jc|0;q[3722]=jc;q[ad+4>>2]=jc|1;q[jc+ad>>2]=jc;break B}Ac=q[zc+4>>2];if((Ac&3)==1){cd=Ac&-8;G:{if(Ac>>>0<=255){Jc=q[zc+8>>2];Ac=Ac>>>3;Cc=q[zc+12>>2];if((Cc|0)==(Jc|0)){gd=14880,hd=q[3720]&Qj(Ac),q[gd>>2]=hd;break G}q[Jc+12>>2]=Cc;q[Cc+8>>2]=Jc;break G}ed=q[zc+24>>2];Vc=q[zc+12>>2];H:{if((Vc|0)!=(zc|0)){Ac=q[zc+8>>2];q[Ac+12>>2]=Vc;q[Vc+8>>2]=Ac;break H}I:{Cc=zc+20|0;bd=q[Cc>>2];if(bd){break I}Cc=zc+16|0;bd=q[Cc>>2];if(bd){break I}Vc=0;break H}while(1){Ac=Cc;Vc=bd;Cc=Vc+20|0;bd=q[Cc>>2];if(bd){continue}Cc=Vc+16|0;bd=q[Vc+16>>2];if(bd){continue}break}q[Ac>>2]=0}if(!ed){break G}Cc=q[zc+28>>2];Ac=(Cc<<2)+15184|0;J:{if(q[Ac>>2]==(zc|0)){q[Ac>>2]=Vc;if(Vc){break J}gd=14884,hd=q[3721]&Qj(Cc),q[gd>>2]=hd;break G}q[ed+(q[ed+16>>2]==(zc|0)?16:20)>>2]=Vc;if(!Vc){break G}}q[Vc+24>>2]=ed;Ac=q[zc+16>>2];if(Ac){q[Vc+16>>2]=Ac;q[Ac+24>>2]=Vc}Ac=q[zc+20>>2];if(!Ac){break G}q[Vc+20>>2]=Ac;q[Ac+24>>2]=Vc}zc=zc+cd|0;jc=jc+cd|0}q[zc+4>>2]=q[zc+4>>2]&-2;q[ad+4>>2]=jc|1;q[jc+ad>>2]=jc;if(jc>>>0<=255){jc=jc>>>3;zc=(jc<<3)+14920|0;Ac=q[3720];jc=1<<jc;K:{if(!(Ac&jc)){q[3720]=jc|Ac;jc=zc;break K}jc=q[zc+8>>2]}q[zc+8>>2]=ad;q[jc+12>>2]=ad;q[ad+12>>2]=zc;q[ad+8>>2]=jc;break B}zc=ad;Cc=jc>>>8;Ac=0;L:{if(!Cc){break L}Ac=31;if(jc>>>0>16777215){break L}Ac=Cc;Cc=Cc+1048320>>>16&8;Ac=Ac<<Cc;Vc=Ac+520192>>>16&4;Ac=Ac<<Vc;Jc=Ac+245760>>>16&2;Ac=(Ac<<Jc>>>15)-(Jc|(Cc|Vc))|0;Ac=(Ac<<1|jc>>>Ac+21&1)+28|0}q[zc+28>>2]=Ac;q[ad+16>>2]=0;q[ad+20>>2]=0;Jc=(Ac<<2)+15184|0;Cc=q[3721];zc=1<<Ac;M:{if(!(Cc&zc)){q[3721]=zc|Cc;q[Jc>>2]=ad;q[ad+24>>2]=Jc;break M}Cc=jc<<((Ac|0)==31?0:25-(Ac>>>1)|0);zc=q[Jc>>2];while(1){Ac=zc;if((q[zc+4>>2]&-8)==(jc|0)){break C}zc=Cc>>>29;Cc=Cc<<1;Jc=(Ac+(zc&4)|0)+16|0;zc=q[Jc>>2];if(zc){continue}break}q[Jc>>2]=ad;q[ad+24>>2]=Ac}q[ad+12>>2]=ad;q[ad+8>>2]=ad;break B}Jc=Vc+ -40|0;jc=zc+8&7?-8-zc&7:0;Ac=Jc-jc|0;q[3723]=Ac;jc=jc+zc|0;q[3726]=jc;q[jc+4>>2]=Ac|1;q[(zc+Jc|0)+4>>2]=40;q[3727]=q[3842];jc=(ad+(ad+ -39&7?39-ad&7:0)|0)+ -47|0;Ac=jc>>>0<Cc+16>>>0?Cc:jc;q[Ac+4>>2]=27;jc=q[3835];q[Ac+16>>2]=q[3834];q[Ac+20>>2]=jc;jc=q[3833];q[Ac+8>>2]=q[3832];q[Ac+12>>2]=jc;q[3834]=Ac+8;q[3833]=Vc;q[3832]=zc;q[3835]=0;jc=Ac+24|0;while(1){q[jc+4>>2]=7;zc=jc+8|0;jc=jc+4|0;if(zc>>>0<ad>>>0){continue}break}if((Ac|0)==(Cc|0)){break x}q[Ac+4>>2]=q[Ac+4>>2]&-2;ad=Ac-Cc|0;q[Cc+4>>2]=ad|1;q[Ac>>2]=ad;if(ad>>>0<=255){jc=ad>>>3;zc=(jc<<3)+14920|0;Ac=q[3720];jc=1<<jc;N:{if(!(Ac&jc)){q[3720]=jc|Ac;jc=zc;break N}jc=q[zc+8>>2]}q[zc+8>>2]=Cc;q[jc+12>>2]=Cc;q[Cc+12>>2]=zc;q[Cc+8>>2]=jc;break x}q[Cc+16>>2]=0;q[Cc+20>>2]=0;jc=Cc;Ac=ad>>>8;zc=0;O:{if(!Ac){break O}zc=31;if(ad>>>0>16777215){break O}zc=Ac;Ac=Ac+1048320>>>16&8;zc=zc<<Ac;Vc=zc+520192>>>16&4;zc=zc<<Vc;Jc=zc+245760>>>16&2;zc=(zc<<Jc>>>15)-(Jc|(Ac|Vc))|0;zc=(zc<<1|ad>>>zc+21&1)+28|0}q[jc+28>>2]=zc;Jc=(zc<<2)+15184|0;Ac=q[3721];jc=1<<zc;P:{if(!(Ac&jc)){q[3721]=jc|Ac;q[Jc>>2]=Cc;q[Cc+24>>2]=Jc;break P}jc=ad<<((zc|0)==31?0:25-(zc>>>1)|0);zc=q[Jc>>2];while(1){Ac=zc;if((ad|0)==(q[zc+4>>2]&-8)){break A}zc=jc>>>29;jc=jc<<1;Jc=(Ac+(zc&4)|0)+16|0;zc=q[Jc>>2];if(zc){continue}break}q[Jc>>2]=Cc;q[Cc+24>>2]=Ac}q[Cc+12>>2]=Cc;q[Cc+8>>2]=Cc;break x}jc=q[Ac+8>>2];q[jc+12>>2]=ad;q[Ac+8>>2]=ad;q[ad+24>>2]=0;q[ad+12>>2]=Ac;q[ad+8>>2]=jc}jc=dd+8|0;break a}jc=q[Ac+8>>2];q[jc+12>>2]=Cc;q[Ac+8>>2]=Cc;q[Cc+24>>2]=0;q[Cc+12>>2]=Ac;q[Cc+8>>2]=jc}jc=q[3723];if(jc>>>0<=bd>>>0){break d}zc=jc-bd|0;q[3723]=zc;Ac=q[3726];jc=Ac+bd|0;q[3726]=jc;q[jc+4>>2]=zc|1;q[Ac+4>>2]=bd|3;jc=Ac+8|0;break a}q[3701]=48;jc=0;break a}Q:{if(!ad){break Q}Cc=q[Jc+28>>2];jc=(Cc<<2)+15184|0;R:{if(q[jc>>2]==(Jc|0)){q[jc>>2]=zc;if(zc){break R}cd=Qj(Cc)&cd;q[3721]=cd;break Q}q[ad+(q[ad+16>>2]==(Jc|0)?16:20)>>2]=zc;if(!zc){break Q}}q[zc+24>>2]=ad;jc=q[Jc+16>>2];if(jc){q[zc+16>>2]=jc;q[jc+24>>2]=zc}jc=q[Jc+20>>2];if(!jc){break Q}q[zc+20>>2]=jc;q[jc+24>>2]=zc}S:{if(Ac>>>0<=15){jc=Ac+bd|0;q[Jc+4>>2]=jc|3;jc=jc+Jc|0;q[jc+4>>2]=q[jc+4>>2]|1;break S}q[Jc+4>>2]=bd|3;Cc=Jc+bd|0;q[Cc+4>>2]=Ac|1;q[Ac+Cc>>2]=Ac;if(Ac>>>0<=255){jc=Ac>>>3;zc=(jc<<3)+14920|0;Ac=q[3720];jc=1<<jc;T:{if(!(Ac&jc)){q[3720]=jc|Ac;jc=zc;break T}jc=q[zc+8>>2]}q[zc+8>>2]=Cc;q[jc+12>>2]=Cc;q[Cc+12>>2]=zc;q[Cc+8>>2]=jc;break S}jc=Cc;Vc=Ac>>>8;zc=0;U:{if(!Vc){break U}zc=31;if(Ac>>>0>16777215){break U}zc=Vc;Vc=Vc+1048320>>>16&8;zc=zc<<Vc;ad=zc+520192>>>16&4;zc=zc<<ad;bd=zc+245760>>>16&2;zc=(zc<<bd>>>15)-(bd|(Vc|ad))|0;zc=(zc<<1|Ac>>>zc+21&1)+28|0}q[jc+28>>2]=zc;q[Cc+16>>2]=0;q[Cc+20>>2]=0;Vc=(zc<<2)+15184|0;V:{jc=1<<zc;W:{if(!(jc&cd)){q[3721]=jc|cd;q[Vc>>2]=Cc;q[Cc+24>>2]=Vc;break W}jc=Ac<<((zc|0)==31?0:25-(zc>>>1)|0);bd=q[Vc>>2];while(1){zc=bd;if((q[zc+4>>2]&-8)==(Ac|0)){break V}Vc=jc>>>29;jc=jc<<1;Vc=(zc+(Vc&4)|0)+16|0;bd=q[Vc>>2];if(bd){continue}break}q[Vc>>2]=Cc;q[Cc+24>>2]=zc}q[Cc+12>>2]=Cc;q[Cc+8>>2]=Cc;break S}jc=q[zc+8>>2];q[jc+12>>2]=Cc;q[zc+8>>2]=Cc;q[Cc+24>>2]=0;q[Cc+12>>2]=zc;q[Cc+8>>2]=jc}jc=Jc+8|0;break a}X:{if(!dd){break X}Ac=q[zc+28>>2];jc=(Ac<<2)+15184|0;Y:{if(q[jc>>2]==(zc|0)){q[jc>>2]=Jc;if(Jc){break Y}gd=14884,hd=Qj(Ac)&cd,q[gd>>2]=hd;break X}q[(q[dd+16>>2]==(zc|0)?16:20)+dd>>2]=Jc;if(!Jc){break X}}q[Jc+24>>2]=dd;jc=q[zc+16>>2];if(jc){q[Jc+16>>2]=jc;q[jc+24>>2]=Jc}jc=q[zc+20>>2];if(!jc){break X}q[Jc+20>>2]=jc;q[jc+24>>2]=Jc}Z:{if(Cc>>>0<=15){jc=Cc+bd|0;q[zc+4>>2]=jc|3;jc=jc+zc|0;q[jc+4>>2]=q[jc+4>>2]|1;break Z}q[zc+4>>2]=bd|3;Jc=zc+bd|0;q[Jc+4>>2]=Cc|1;q[Cc+Jc>>2]=Cc;if(ed){jc=ed>>>3;Ac=(jc<<3)+14920|0;bd=q[3725];jc=1<<jc;_:{if(!(jc&Vc)){q[3720]=jc|Vc;jc=Ac;break _}jc=q[Ac+8>>2]}q[Ac+8>>2]=bd;q[jc+12>>2]=bd;q[bd+12>>2]=Ac;q[bd+8>>2]=jc}q[3725]=Jc;q[3722]=Cc}jc=zc+8|0}T=fd+16|0;return jc|0}function ij(jc){jc=jc|0;var id=0,jd=0,kd=0,ld=0,md=0,nd=0,od=0,pd=0,qd=0;a:{if(!jc){break a}kd=jc+ -8|0;jd=q[jc+ -4>>2];jc=jd&-8;md=kd+jc|0;b:{if(jd&1){break b}if(!(jd&3)){break a}jd=q[kd>>2];kd=kd-jd|0;if(kd>>>0<t[3724]){break a}jc=jc+jd|0;if(q[3725]!=(kd|0)){if(jd>>>0<=255){ld=q[kd+8>>2];jd=jd>>>3;id=q[kd+12>>2];if((id|0)==(ld|0)){pd=14880,qd=q[3720]&Qj(jd),q[pd>>2]=qd;break b}q[ld+12>>2]=id;q[id+8>>2]=ld;break b}od=q[kd+24>>2];jd=q[kd+12>>2];c:{if((jd|0)!=(kd|0)){id=q[kd+8>>2];q[id+12>>2]=jd;q[jd+8>>2]=id;break c}d:{ld=kd+20|0;id=q[ld>>2];if(id){break d}ld=kd+16|0;id=q[ld>>2];if(id){break d}jd=0;break c}while(1){nd=ld;jd=id;ld=jd+20|0;id=q[ld>>2];if(id){continue}ld=jd+16|0;id=q[jd+16>>2];if(id){continue}break}q[nd>>2]=0}if(!od){break b}ld=q[kd+28>>2];id=(ld<<2)+15184|0;e:{if(q[id>>2]==(kd|0)){q[id>>2]=jd;if(jd){break e}pd=14884,qd=q[3721]&Qj(ld),q[pd>>2]=qd;break b}q[od+(q[od+16>>2]==(kd|0)?16:20)>>2]=jd;if(!jd){break b}}q[jd+24>>2]=od;id=q[kd+16>>2];if(id){q[jd+16>>2]=id;q[id+24>>2]=jd}id=q[kd+20>>2];if(!id){break b}q[jd+20>>2]=id;q[id+24>>2]=jd;break b}jd=q[md+4>>2];if((jd&3)!=3){break b}q[3722]=jc;q[md+4>>2]=jd&-2;q[kd+4>>2]=jc|1;q[jc+kd>>2]=jc;return}if(md>>>0<=kd>>>0){break a}jd=q[md+4>>2];if(!(jd&1)){break a}f:{if(!(jd&2)){if((md|0)==q[3726]){q[3726]=kd;jc=q[3723]+jc|0;q[3723]=jc;q[kd+4>>2]=jc|1;if(q[3725]!=(kd|0)){break a}q[3722]=0;q[3725]=0;return}if((md|0)==q[3725]){q[3725]=kd;jc=q[3722]+jc|0;q[3722]=jc;q[kd+4>>2]=jc|1;q[jc+kd>>2]=jc;return}jc=(jd&-8)+jc|0;g:{if(jd>>>0<=255){id=q[md+8>>2];jd=jd>>>3;ld=q[md+12>>2];if((id|0)==(ld|0)){pd=14880,qd=q[3720]&Qj(jd),q[pd>>2]=qd;break g}q[id+12>>2]=ld;q[ld+8>>2]=id;break g}od=q[md+24>>2];jd=q[md+12>>2];h:{if((md|0)!=(jd|0)){id=q[md+8>>2];q[id+12>>2]=jd;q[jd+8>>2]=id;break h}i:{ld=md+20|0;id=q[ld>>2];if(id){break i}ld=md+16|0;id=q[ld>>2];if(id){break i}jd=0;break h}while(1){nd=ld;jd=id;ld=jd+20|0;id=q[ld>>2];if(id){continue}ld=jd+16|0;id=q[jd+16>>2];if(id){continue}break}q[nd>>2]=0}if(!od){break g}ld=q[md+28>>2];id=(ld<<2)+15184|0;j:{if((md|0)==q[id>>2]){q[id>>2]=jd;if(jd){break j}pd=14884,qd=q[3721]&Qj(ld),q[pd>>2]=qd;break g}q[od+((md|0)==q[od+16>>2]?16:20)>>2]=jd;if(!jd){break g}}q[jd+24>>2]=od;id=q[md+16>>2];if(id){q[jd+16>>2]=id;q[id+24>>2]=jd}id=q[md+20>>2];if(!id){break g}q[jd+20>>2]=id;q[id+24>>2]=jd}q[kd+4>>2]=jc|1;q[jc+kd>>2]=jc;if(q[3725]!=(kd|0)){break f}q[3722]=jc;return}q[md+4>>2]=jd&-2;q[kd+4>>2]=jc|1;q[jc+kd>>2]=jc}if(jc>>>0<=255){jc=jc>>>3;jd=(jc<<3)+14920|0;id=q[3720];jc=1<<jc;k:{if(!(id&jc)){q[3720]=jc|id;jc=jd;break k}jc=q[jd+8>>2]}q[jd+8>>2]=kd;q[jc+12>>2]=kd;q[kd+12>>2]=jd;q[kd+8>>2]=jc;return}q[kd+16>>2]=0;q[kd+20>>2]=0;jd=kd;ld=jc>>>8;id=0;l:{if(!ld){break l}id=31;if(jc>>>0>16777215){break l}id=ld;ld=ld+1048320>>>16&8;id=id<<ld;od=id+520192>>>16&4;id=id<<od;nd=id+245760>>>16&2;id=(id<<nd>>>15)-(nd|(ld|od))|0;id=(id<<1|jc>>>id+21&1)+28|0}q[jd+28>>2]=id;nd=(id<<2)+15184|0;ld=q[3721];jd=1<<id;m:{if(!(ld&jd)){q[3721]=jd|ld;q[nd>>2]=kd;q[kd+12>>2]=kd;q[kd+24>>2]=nd;q[kd+8>>2]=kd;break m}ld=jc<<((id|0)==31?0:25-(id>>>1)|0);jd=q[nd>>2];n:{while(1){id=jd;if((q[jd+4>>2]&-8)==(jc|0)){break n}jd=ld>>>29;ld=ld<<1;nd=(id+(jd&4)|0)+16|0;jd=q[nd>>2];if(jd){continue}break}q[nd>>2]=kd;q[kd+12>>2]=kd;q[kd+24>>2]=id;q[kd+8>>2]=kd;break m}jc=q[id+8>>2];q[jc+12>>2]=kd;q[id+8>>2]=kd;q[kd+24>>2]=0;q[kd+12>>2]=id;q[kd+8>>2]=jc}jc=q[3728]+ -1|0;q[3728]=jc;if(jc){break a}kd=15336;while(1){jc=q[kd>>2];kd=jc+8|0;if(jc){continue}break}q[3728]=-1}}function jj(jc){var rd=0;rd=q[3848];jc=rd+jc|0;if((jc|0)<=-1){q[3701]=48;return-1}a:{if(jc>>>0<=W()<<16>>>0){break a}if(P(jc|0)){break a}q[3701]=48;return-1}q[3848]=jc;return rd}function kj(jc,sd,td,ud,vd,wd,xd,yd,zd){var Ad=0,Bd=0,Cd=0,Dd=0,Ed=0,Fd=0,Gd=0,Hd=0,Id=0,Jd=0,Kd=0,Ld=0,Md=0;Ad=T-128|0;T=Ad;a:{b:{c:{if(!Nh(wd,xd,yd,zd,0,0,0,0)){break c}Cd=nj(wd,xd,yd,zd);Kd=vd>>>16;Fd=Kd&32767;if((Fd|0)==32767){break c}if(Cd){break b}}Vh(Ad+16|0,sd,td,ud,vd,wd,xd,yd,zd);vd=q[Ad+16>>2];ud=q[Ad+20>>2];td=q[Ad+24>>2];sd=q[Ad+28>>2];Ph(Ad,vd,ud,td,sd,vd,ud,td,sd);ud=q[Ad+8>>2];vd=q[Ad+12>>2];yd=q[Ad>>2];zd=q[Ad+4>>2];break a}Bd=vd&65535|Fd<<16;Ed=Bd;Dd=ud;Gd=yd;Jd=zd>>>16&32767;Cd=zd&65535|Jd<<16;if((Nh(sd,td,Dd,Bd,wd,xd,yd,Cd)|0)<=0){if(Nh(sd,td,Dd,Ed,wd,xd,Gd,Cd)){yd=sd;zd=td;break a}Vh(Ad+112|0,sd,td,ud,vd,0,0,0,0);ud=q[Ad+120>>2];vd=q[Ad+124>>2];yd=q[Ad+112>>2];zd=q[Ad+116>>2];break a}if(Fd){zd=td;yd=sd}else{Vh(Ad+96|0,sd,td,Dd,Ed,0,0,0,1081540608);yd=q[Ad+108>>2];Ed=yd;Dd=q[Ad+104>>2];Fd=(yd>>>16)+ -120|0;zd=q[Ad+100>>2];yd=q[Ad+96>>2]}if(!Jd){Vh(Ad+80|0,wd,xd,Gd,Cd,0,0,0,1081540608);wd=q[Ad+92>>2];Cd=wd;Gd=q[Ad+88>>2];Jd=(Cd>>>16)+ -120|0;xd=q[Ad+84>>2];wd=q[Ad+80>>2]}Md=Gd;Bd=Gd;Gd=Dd-Bd|0;Ed=Ed&65535|65536;Ld=Cd&65535|65536;Cd=(xd|0)==(zd|0)&yd>>>0<wd>>>0|zd>>>0<xd>>>0;Bd=(Ed-(Ld+(Dd>>>0<Bd>>>0)|0)|0)-(Gd>>>0<Cd>>>0)|0;Hd=Gd-Cd|0;Id=(Bd|0)>-1?1:(Bd|0)>=-1?Hd>>>0<=4294967295?0:1:0;Gd=yd-wd|0;Cd=zd-((yd>>>0<wd>>>0)+xd|0)|0;if((Fd|0)>(Jd|0)){while(1){d:{if(Id&1){if(!(Gd|Hd|(Bd|Cd))){Vh(Ad+32|0,sd,td,ud,vd,0,0,0,0);ud=q[Ad+40>>2];vd=q[Ad+44>>2];yd=q[Ad+32>>2];zd=q[Ad+36>>2];break a}yd=Hd;Id=Bd<<1|yd>>>31;Hd=yd<<1;Bd=Id;Id=0;yd=Cd>>>31;break d}Bd=0;Cd=zd;Hd=zd>>>31;Gd=yd;yd=Dd;Id=Ed<<1|yd>>>31;yd=yd<<1}Dd=yd|Hd;zd=Dd;yd=Md;Hd=zd-yd|0;Ed=Bd|Id;Bd=Ed-((zd>>>0<yd>>>0)+Ld|0)|0;yd=Gd;Id=Cd<<1|yd>>>31;yd=yd<<1;zd=Id;Cd=(xd|0)==(zd|0)&yd>>>0<wd>>>0|zd>>>0<xd>>>0;Bd=Bd-(Hd>>>0<Cd>>>0)|0;Hd=Hd-Cd|0;Id=(Bd|0)>-1?1:(Bd|0)>=-1?Hd>>>0<=4294967295?0:1:0;Gd=yd-wd|0;Cd=zd-((yd>>>0<wd>>>0)+xd|0)|0;Fd=Fd+ -1|0;if((Fd|0)>(Jd|0)){continue}break}Fd=Jd}e:{if(!Id){break e}yd=Gd;Dd=Hd;zd=Cd;Ed=Bd;if(yd|Dd|(zd|Bd)){break e}Vh(Ad+48|0,sd,td,ud,vd,0,0,0,0);ud=q[Ad+56>>2];vd=q[Ad+60>>2];yd=q[Ad+48>>2];zd=q[Ad+52>>2];break a}if((Ed|0)==65535&Dd>>>0<=4294967295|Ed>>>0<65535){while(1){ud=zd>>>31;sd=0;Fd=Fd+ -1|0;Bd=zd<<1|yd>>>31;yd=yd<<1;zd=Bd;Id=Ed<<1|Dd>>>31;Dd=Dd<<1|ud;sd=sd|Id;Ed=sd;if((sd|0)==65536&Dd>>>0<0|sd>>>0<65536){continue}break}}sd=Kd&32768;if((Fd|0)<=0){Vh(Ad- -64|0,yd,zd,Dd,Ed&65535|(sd|Fd+120)<<16,0,0,0,1065811968);ud=q[Ad+72>>2];vd=q[Ad+76>>2];yd=q[Ad+64>>2];zd=q[Ad+68>>2];break a}ud=Dd;vd=Ed&65535|(sd|Fd)<<16}q[jc>>2]=yd;q[jc+4>>2]=zd;q[jc+8>>2]=ud;q[jc+12>>2]=vd;T=Ad+128|0}function lj(q){var jc=0,sd=0,td=0,ud=0,vd=0,wd=0,xd=0,yd=0,zd=0,Nd=0,Od=0,Pd=0;a:{b:{c:{d:{h(+q);jc=e(1)|0;sd=e(0)|0;if((jc|0)>0?1:(jc|0)>=0?sd>>>0<0?0:1:0){ud=jc;if(jc>>>0>1048575){break d}}if(!(jc&2147483647|sd)){return-1/(q*q)}if((jc|0)>-1?1:(jc|0)>=-1?sd>>>0<=4294967295?0:1:0){break c}return(q-q)/0}if(ud>>>0>2146435071){break a}jc=1072693248;zd=-1023;if((ud|0)!=1072693248){jc=ud;break b}if(sd){break b}return 0}h(+(q*0x40000000000000));jc=e(1)|0;sd=e(0)|0;zd=-1077}f(0,sd|0);sd=jc+614242|0;f(1,(sd&1048575)+1072079006|0);td=+g()+ -1;vd=td*(td*.5);wd=td/(td+2);xd=wd*wd;q=xd*xd;h(+(td-vd));jc=e(1)|0;e(0)|0;f(0,0);f(1,jc|0);yd=+g();Nd=yd*1.4426950407214463;Od=+((sd>>>20)+zd|0);Pd=Nd+Od;q=td-yd-vd+wd*(vd+(q*(q*(q*.15313837699209373+.22222198432149784)+.3999999999940942)+xd*(q*(q*(q*.14798198605116586+.1818357216161805)+.2857142874366239)+.6666666666666735)));q=Pd+(Nd+(Od-Pd)+(q*1.4426950407214463+(q+yd)*1.6751713164886512e-10))}return q}function mj(q){var Qd=0;Qd=1;a:{if((q|0)>=1024){Qd=8.98846567431158e+307;if((q|0)<2047){q=q+ -1023|0;break a}Qd=H;q=((q|0)<3069?q:3069)+ -2046|0;break a}if((q|0)>-1023){break a}Qd=2.2250738585072014e-308;if((q|0)>-2045){q=q+1022|0;break a}Qd=0;q=((q|0)>-3066?q:-3066)+2044|0}f(0,0);f(1,q+1023<<20);return Qd*+g()}function nj(q,Rd,Sd,Td){var Ud=0,Vd=0;Vd=Td&65535;Td=Td>>>16&32767;a:{if((Td|0)!=32767){Ud=4;if(Td){break a}return q|Sd|(Rd|Vd)?3:2}Ud=!(q|Sd|(Rd|Vd))}return Ud}function oj(Rd,Sd,Td){var Wd=0,Xd=0,Yd=0;if(Td>>>0>=8192){Q(Rd|0,Sd|0,Td|0)|0;return Rd}Xd=Rd+Td|0;a:{if(!((Rd^Sd)&3)){b:{if((Td|0)<1){Td=Rd;break b}if(!(Rd&3)){Td=Rd;break b}Td=Rd;while(1){o[Td|0]=r[Sd|0];Sd=Sd+1|0;Td=Td+1|0;if(Td>>>0>=Xd>>>0){break b}if(Td&3){continue}break}}Wd=Xd&-4;c:{if(Wd>>>0<64){break c}Yd=Wd+ -64|0;if(Td>>>0>Yd>>>0){break c}while(1){q[Td>>2]=q[Sd>>2];q[Td+4>>2]=q[Sd+4>>2];q[Td+8>>2]=q[Sd+8>>2];q[Td+12>>2]=q[Sd+12>>2];q[Td+16>>2]=q[Sd+16>>2];q[Td+20>>2]=q[Sd+20>>2];q[Td+24>>2]=q[Sd+24>>2];q[Td+28>>2]=q[Sd+28>>2];q[Td+32>>2]=q[Sd+32>>2];q[Td+36>>2]=q[Sd+36>>2];q[Td+40>>2]=q[Sd+40>>2];q[Td+44>>2]=q[Sd+44>>2];q[Td+48>>2]=q[Sd+48>>2];q[Td+52>>2]=q[Sd+52>>2];q[Td+56>>2]=q[Sd+56>>2];q[Td+60>>2]=q[Sd+60>>2];Sd=Sd- -64|0;Td=Td- -64|0;if(Td>>>0<=Yd>>>0){continue}break}}if(Td>>>0>=Wd>>>0){break a}while(1){q[Td>>2]=q[Sd>>2];Sd=Sd+4|0;Td=Td+4|0;if(Td>>>0<Wd>>>0){continue}break}break a}if(Xd>>>0<4){Td=Rd;break a}Wd=Xd+ -4|0;if(Wd>>>0<Rd>>>0){Td=Rd;break a}Td=Rd;while(1){o[Td|0]=r[Sd|0];o[Td+1|0]=r[Sd+1|0];o[Td+2|0]=r[Sd+2|0];o[Td+3|0]=r[Sd+3|0];Sd=Sd+4|0;Td=Td+4|0;if(Td>>>0<=Wd>>>0){continue}break}}if(Td>>>0<Xd>>>0){while(1){o[Td|0]=r[Sd|0];Sd=Sd+1|0;Td=Td+1|0;if((Xd|0)!=(Td|0)){continue}break}}return Rd}function pj(Rd,Sd,Td){var Zd=0,_d=0,$d=0,ae=0;a:{if(!Td){break a}Zd=Rd+Td|0;o[Zd+ -1|0]=Sd;o[Rd|0]=Sd;if(Td>>>0<3){break a}o[Zd+ -2|0]=Sd;o[Rd+1|0]=Sd;o[Zd+ -3|0]=Sd;o[Rd+2|0]=Sd;if(Td>>>0<7){break a}o[Zd+ -4|0]=Sd;o[Rd+3|0]=Sd;if(Td>>>0<9){break a}Zd=0-Rd&3;_d=Zd+Rd|0;Sd=w(Sd&255,16843009);q[_d>>2]=Sd;Td=Td-Zd&-4;Zd=Td+_d|0;q[Zd+ -4>>2]=Sd;if(Td>>>0<9){break a}q[_d+8>>2]=Sd;q[_d+4>>2]=Sd;q[Zd+ -8>>2]=Sd;q[Zd+ -12>>2]=Sd;if(Td>>>0<25){break a}q[_d+24>>2]=Sd;q[_d+20>>2]=Sd;q[_d+16>>2]=Sd;q[_d+12>>2]=Sd;q[Zd+ -16>>2]=Sd;q[Zd+ -20>>2]=Sd;q[Zd+ -24>>2]=Sd;q[Zd+ -28>>2]=Sd;ae=_d&4|24;Td=Td-ae|0;if(Td>>>0<32){break a}Zd=Sd;$d=Sd;Sd=_d+ae|0;while(1){q[Sd+24>>2]=$d;q[Sd+28>>2]=Zd;q[Sd+16>>2]=$d;q[Sd+20>>2]=Zd;q[Sd+8>>2]=$d;q[Sd+12>>2]=Zd;q[Sd>>2]=$d;q[Sd+4>>2]=Zd;Sd=Sd+32|0;Td=Td+ -32|0;if(Td>>>0>31){continue}break}}return Rd}function qj(Rd,Sd,Td){var be=0,ce=0;a:{if((Rd|0)==(Sd|0)){break a}b:{if(Sd+Td>>>0>Rd>>>0){ce=Rd+Td|0;if(ce>>>0>Sd>>>0){break b}}return oj(Rd,Sd,Td)}be=(Rd^Sd)&3;c:{d:{if(Rd>>>0<Sd>>>0){if(be){be=Rd;break c}if(!(Rd&3)){be=Rd;break d}be=Rd;while(1){if(!Td){break a}o[be|0]=r[Sd|0];Sd=Sd+1|0;Td=Td+ -1|0;be=be+1|0;if(be&3){continue}break}break d}e:{if(be){break e}if(ce&3){while(1){if(!Td){break a}Td=Td+ -1|0;be=Td+Rd|0;o[be|0]=r[Sd+Td|0];if(be&3){continue}break}}if(Td>>>0<=3){break e}while(1){Td=Td+ -4|0;q[Td+Rd>>2]=q[Sd+Td>>2];if(Td>>>0>3){continue}break}}if(!Td){break a}while(1){Td=Td+ -1|0;o[Td+Rd|0]=r[Sd+Td|0];if(Td){continue}break}break a}if(Td>>>0<=3){break c}ce=Td;while(1){q[be>>2]=q[Sd>>2];Sd=Sd+4|0;be=be+4|0;ce=ce+ -4|0;if(ce>>>0>3){continue}break}Td=Td&3}if(!Td){break a}while(1){o[be|0]=r[Sd|0];be=be+1|0;Sd=Sd+1|0;Td=Td+ -1|0;if(Td){continue}break}}return Rd}function rj(Rd,Sd){Rd=Rd|0;Sd=Sd|0;if(!q[3844]){q[3845]=Sd;q[3844]=Rd}}function sj(){return T|0}function tj(q){q=q|0;q=T-q&-16;T=q;return q|0}function uj(q){q=q|0;T=q}function vj(q){q=q|0;return X(q|0)|0}function wj(q,Rd){q=q|0;Rd=Rd|0;return n[q](Rd)|0}function xj(q,Rd){q=q|0;Rd=Rd|0;n[q](Rd)}function yj(q,Rd,Sd){q=q|0;Rd=Rd|0;Sd=Sd|0;n[q](Rd,Sd)}function zj(q,Rd,Sd){q=q|0;Rd=Rd|0;Sd=Sd|0;return n[q](Rd,Sd)|0}function Aj(q,Rd,Sd,Td){q=q|0;Rd=Rd|0;Sd=Sd|0;Td=Td|0;n[q](Rd,Sd,Td)}function Bj(q,Rd,Sd,Td){q=q|0;Rd=Rd|0;Sd=Sd|0;Td=Td|0;return n[q](Rd,Sd,Td)|0}function Cj(q){q=q|0;n[q]()}function Dj(q,Rd,Sd,Td,de,ee,fe){q=q|0;Rd=Rd|0;Sd=Sd|0;Td=Td|0;de=de|0;ee=ee|0;fe=fe|0;return n[q](Rd,Sd,Td,de,ee,fe)|0}function Ej(q,Rd,Sd,Td,de,ee,fe){q=q|0;Rd=Rd|0;Sd=+Sd;Td=Td|0;de=de|0;ee=ee|0;fe=fe|0;return n[q](Rd,Sd,Td,de,ee,fe)|0}function Fj(q,Rd,Sd,Td,de,ee,fe){q=q|0;Rd=Rd|0;Sd=Sd|0;Td=Td|0;de=de|0;ee=ee|0;fe=fe|0;n[q](Rd,Sd,Td,de,ee,fe)}function Gj(q,Rd,Sd,Td,de,ee){q=q|0;Rd=Rd|0;Sd=Sd|0;Td=Td|0;de=de|0;ee=ee|0;n[q](Rd,Sd,Td,de,ee)}function Hj(q,Rd,Sd,Td,de){q=q|0;Rd=Rd|0;Sd=Sd|0;Td=Td|0;de=de|0;n[q](Rd,Sd,Td,de)}function Ij(q,Rd,Sd,Td,de){q=q|0;Rd=Rd|0;Sd=Sd|0;Td=Td|0;de=de|0;q=n[q](Rd,Sd,Td,de)|0;R(V|0);return q|0}function Jj(q,Rd){i(q|0,Rd|0)}function Kj(q,Rd,Sd,Td){var de=0,ee=0,fe=0,ge=0,he=0,ie=0;de=Sd>>>16;ee=q>>>16;ie=w(de,ee);fe=Sd&65535;ge=q&65535;he=w(fe,ge);ee=(he>>>16)+w(ee,fe)|0;de=(ee&65535)+w(de,ge)|0;q=(((w(Rd,Sd)+ie|0)+w(q,Td)|0)+(ee>>>16)|0)+(de>>>16)|0;Rd=he&65535|de<<16;V=q;return Rd}function Lj(q,Rd,Sd,Td){var je=0,ke=0,le=0,me=0;je=Rd;ke=je>>31;je=je>>31;q=q^je;le=q-je|0;me=(Rd^ke)-((q>>>0<je>>>0)+ke|0)|0;je=Td;ke=je>>31;je=je>>31;q=Sd^je;je=Pj(le,me,q-je|0,(Td^ke)-((q>>>0<je>>>0)+ke|0)|0);Rd=Rd^Td;Sd=Rd>>31;q=Rd>>31;Rd=je^q;Td=Rd-q|0;V=(Sd^V)-((Rd>>>0<q>>>0)+Sd|0)|0;return Td}function Mj(q,Rd,Sd,Td){var ne=0,oe=0,pe=0,qe=0,re=0,se=0,te=0,ue=0,ve=0,we=0,xe=0;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{pe=Rd;if(pe){ne=Sd;if(!ne){break j}oe=Td;if(!oe){break i}oe=z(oe)-z(pe)|0;if(oe>>>0<=31){break h}break b}if((Td|0)==1&Sd>>>0>=0|Td>>>0>1){break b}Rd=(q>>>0)/(Sd>>>0)|0;Jj(q-w(Rd,Sd)|0,0);V=0;return Rd}ne=Td;if(!q){break g}if(!ne){break f}oe=ne+ -1|0;if(oe&ne){break f}Jj(q,oe&pe);q=pe>>>(Rj(ne)&31);V=0;return q}oe=ne+ -1|0;if(!(oe&ne)){break e}se=(z(ne)+33|0)-z(pe)|0;qe=0-se|0;break c}se=oe+1|0;qe=63-oe|0;break c}q=(pe>>>0)/(ne>>>0)|0;Jj(0,pe-w(q,ne)|0);V=0;return q}oe=z(ne)-z(pe)|0;if(oe>>>0<31){break d}break b}Jj(q&oe,0);if((ne|0)==1){break a}Sd=q;q=Rj(ne);Td=q&31;if(32<=(q&63)>>>0){oe=0;q=Rd>>>Td}else{oe=Rd>>>Td;q=((1<<Td)-1&Rd)<<32-Td|Sd>>>Td}V=oe;return q}se=oe+1|0;qe=63-oe|0}ne=Rd;pe=q;oe=se&63;re=oe&31;if(32<=(oe&63)>>>0){oe=0;ue=ne>>>re}else{oe=ne>>>re;ue=((1<<re)-1&ne)<<32-re|pe>>>re}q=qe&63;qe=q&31;if(32<=(q&63)>>>0){ne=pe<<qe;q=0}else{ne=(1<<qe)-1&pe>>>32-qe|Rd<<qe;q=pe<<qe}Rd=ne;if(se){pe=Td+ -1|0;ne=Sd+ -1|0;if(ne>>>0<4294967295){pe=pe+1|0}qe=ne;while(1){ne=ue;oe=oe<<1|ne>>>31;ne=ne<<1;te=oe;oe=Rd>>>31|ne;ve=te;ne=te;te=oe;re=pe-((qe>>>0<oe>>>0)+ne|0)|0;ne=re>>31;re=re>>31;oe=Sd&re;ue=te-oe|0;oe=ve-((Td&ne)+(te>>>0<oe>>>0)|0)|0;ne=Rd<<1|q>>>31;q=we|q<<1;Rd=ne|xe;ne=0;ve=ne;te=re&1;we=te;se=se+ -1|0;if(se){continue}break}}Jj(ue,oe);ne=Rd<<1|q>>>31;q=te|q<<1;V=ne|ve;return q}Jj(q,Rd);q=0;Rd=0}V=Rd;return q}function Nj(q,Rd,Sd,Td){q=Kj(q,Rd,Sd,Td);return q}function Oj(q,Rd,Sd,Td){q=Lj(q,Rd,Sd,Td);return q}function Pj(q,Rd,Sd,Td){q=Mj(q,Rd,Sd,Td);return q}function Qj(q){var Rd=0;Rd=q&31;q=0-q&31;return(-1>>>Rd&-2)<<Rd|(-1<<q&-2)>>>q}function Rj(q){if(q){return 31-z(q+ -1^q)|0}return 32}
// EMSCRIPTEN_END_FUNCS
n[1]=fa;n[2]=ga;n[3]=ha;n[4]=ha;n[5]=ia;n[6]=ia;n[7]=vg;n[8]=mg;n[9]=qg;n[10]=wg;n[11]=ja;n[12]=rg;n[13]=xg;n[14]=Sa;n[15]=Ua;n[16]=Ug;n[17]=Wg;n[18]=ma;n[19]=cb;n[20]=db;n[21]=Xa;n[22]=Ya;n[23]=Mi;n[24]=mb;n[25]=nb;n[26]=ia;n[27]=eb;n[28]=gb;n[29]=Eb;n[30]=Fb;n[31]=Bb;n[32]=Cb;n[33]=Ki;n[34]=Gb;n[35]=Hb;n[36]=Ib;n[37]=Hb;n[38]=Hb;n[39]=ia;n[40]=ja;n[41]=Xb;n[42]=Yb;n[43]=Qb;n[44]=Rb;n[45]=ja;n[46]=Sb;n[47]=ja;n[48]=ha;n[49]=ha;n[50]=Vb;n[51]=Wb;n[52]=Tb;n[53]=hc;n[54]=ic;n[55]=_b;n[56]=$b;n[57]=ha;n[58]=ac;n[59]=jc;n[60]=kc;n[61]=lc;n[62]=nc;n[63]=bc;n[64]=cc;n[65]=dc;n[66]=ec;n[67]=gc;n[68]=zc;n[69]=Ac;n[70]=sc;n[71]=tc;n[72]=ia;n[73]=wc;n[74]=uc;n[75]=xc;n[76]=Jc;n[77]=Kc;n[78]=ia;n[79]=Lc;n[80]=Mc;n[81]=ha;n[82]=Nc;n[83]=Hb;n[84]=ha;n[85]=ia;n[86]=Oc;n[87]=Pc;n[88]=Fb;n[89]=Fb;n[90]=Rc;n[91]=Sc;n[92]=Tc;n[93]=Mc;n[94]=Uc;n[95]=Vc;n[96]=Xc;n[97]=Yc;n[98]=Zc;n[99]=_c;n[100]=ia;n[101]=Hb;n[102]=$c;n[103]=ad;n[104]=bd;n[105]=ed;n[106]=fd;n[107]=gd;n[108]=hd;n[109]=ia;n[110]=Hb;n[111]=id;n[112]=jd;n[113]=kd;n[114]=ma;n[115]=cb;n[116]=md;n[117]=nd;n[118]=ld;n[119]=Kc;n[120]=ia;n[121]=Mc;n[122]=pd;n[123]=Fb;n[124]=qd;n[125]=rd;n[126]=Tc;n[127]=Mc;n[128]=Uc;n[129]=sd;n[130]=td;n[131]=ud;n[132]=Zc;n[133]=_c;n[134]=ia;n[135]=Hb;n[136]=$c;n[137]=ad;n[138]=vd;n[139]=xd;n[140]=yd;n[141]=gd;n[142]=hd;n[143]=ia;n[144]=Hb;n[145]=id;n[146]=jd;n[147]=zd;n[148]=ma;n[149]=cb;n[150]=md;n[151]=nd;n[152]=Ad;n[153]=Kc;n[154]=ha;n[155]=ia;n[156]=Cd;n[157]=zc;n[158]=Ac;n[159]=Dd;n[160]=Ed;n[161]=ia;n[162]=Gd;n[163]=Hd;n[164]=Fd;n[165]=ma;n[166]=cb;n[167]=ia;n[168]=Lc;n[169]=Ld;n[170]=ha;n[171]=Nc;n[172]=Hb;n[173]=ia;n[174]=Gd;n[175]=Md;n[176]=Nd;n[177]=Fb;n[178]=Fb;n[179]=Pd;n[180]=Qd;n[181]=Tc;n[182]=Ld;n[183]=Rd;n[184]=Sd;n[185]=Td;n[186]=Ud;n[187]=Zc;n[188]=Vd;n[189]=ia;n[190]=Hb;n[191]=Wd;n[192]=Xd;n[193]=Yd;n[194]=Zd;n[195]=_d;n[196]=gd;n[197]=$d;n[198]=ia;n[199]=Hb;n[200]=ae;n[201]=be;n[202]=ce;n[203]=ma;n[204]=cb;n[205]=md;n[206]=nd;n[207]=ld;n[208]=cb;n[209]=ia;n[210]=Ld;n[211]=de;n[212]=Fb;n[213]=ee;n[214]=fe;n[215]=Tc;n[216]=Ld;n[217]=Rd;n[218]=ge;n[219]=he;n[220]=ie;n[221]=Zc;n[222]=Vd;n[223]=ia;n[224]=Hb;n[225]=Wd;n[226]=Xd;n[227]=je;n[228]=ke;n[229]=le;n[230]=gd;n[231]=$d;n[232]=ia;n[233]=Hb;n[234]=ae;n[235]=be;n[236]=me;n[237]=ma;n[238]=cb;n[239]=md;n[240]=nd;n[241]=Ad;n[242]=cb;n[243]=ha;n[244]=ia;n[245]=ne;n[246]=se;n[247]=te;n[248]=pe;n[249]=qe;n[250]=ia;n[251]=db;n[252]=re;n[253]=ma;n[254]=cb;n[255]=fg;n[256]=gg;n[257]=Fb;n[258]=ug;n[259]=Yg;n[260]=kh;n[261]=lh;n[262]=oh;n[263]=mh;n[264]=nh;n[265]=fi;n[266]=ma;n[267]=cb;n[268]=Li;n[269]=Oi;n[270]=Pi;n[271]=Qi;n[272]=ma;n[273]=cb;n[274]=Zg;n[275]=Zg;n[276]=Si;n[277]=gj;n[278]=dj;n[279]=Vi;n[280]=cb;n[281]=fj;n[282]=cj;n[283]=Wi;n[284]=cb;n[285]=ej;n[286]=$i;n[287]=Yi;function W(){return buffer.byteLength/65536|0}function X(pagesToAdd){pagesToAdd=pagesToAdd|0;var Y=W()|0;var Z=Y+pagesToAdd|0;if(Y<Z&&Z<65536){var _=new ArrayBuffer(w(Z,65536));var $=new global.Int8Array(_);$.set(o);o=$;o=new global.Int8Array(_);p=new global.Int16Array(_);q=new global.Int32Array(_);r=new global.Uint8Array(_);s=new global.Uint16Array(_);t=new global.Uint32Array(_);u=new global.Float32Array(_);v=new global.Float64Array(_);buffer=_;m.buffer=_}return Y}return{"__wasm_call_ctors":ea,"emscripten_bind_AnimationBuilder_AnimationBuilder_0":Aa,"emscripten_bind_AnimationBuilder_SetTimestamps_3":Ba,"emscripten_bind_AnimationBuilder_AddKeyframes_4":Ca,"emscripten_bind_AnimationBuilder___destroy___0":Da,"emscripten_bind_VoidPtr___destroy___0":Da,"emscripten_bind_DracoInt8Array_DracoInt8Array_0":Ea,"emscripten_bind_DracoInt8Array_GetValue_1":Fa,"emscripten_bind_DracoInt8Array_size_0":Ga,"emscripten_bind_DracoInt8Array___destroy___0":Ha,"emscripten_bind_AnimationEncoder_AnimationEncoder_0":Ia,"emscripten_bind_AnimationEncoder_SetTimestampsQuantization_1":Ja,"emscripten_bind_AnimationEncoder_SetKeyframesQuantization_1":Ka,"emscripten_bind_AnimationEncoder_EncodeAnimationToDracoBuffer_2":La,"emscripten_bind_AnimationEncoder___destroy___0":Ma,"emscripten_bind_KeyframeAnimation_KeyframeAnimation_0":Oa,"emscripten_bind_KeyframeAnimation_num_frames_0":Pa,"emscripten_bind_KeyframeAnimation___destroy___0":Qa,"setThrew":rj,"_ZSt18uncaught_exceptionv":_h,"free":ij,"malloc":hj,"stackSave":sj,"stackAlloc":tj,"stackRestore":uj,"__growWasmMemory":vj,"dynCall_ii":wj,"dynCall_vi":xj,"dynCall_vii":yj,"dynCall_iii":zj,"dynCall_viii":Aj,"dynCall_iiii":Bj,"dynCall_v":Cj,"dynCall_iiiiiii":Dj,"dynCall_iidiiii":Ej,"dynCall_jiji":Ij,"dynCall_viiiiii":Fj,"dynCall_viiiii":Gj,"dynCall_viiii":Hj}}var aa=(function(mem){var ba=new Uint8Array(mem);return(function(offset,s){var ca,da;if(typeof Buffer==="undefined"){ca=atob(s);for(da=0;da<ca.length;da++)ba[offset+da]=ca.charCodeAt(da)}else{ca=Buffer.from(s,"base64");for(da=0;da<ca.length;da++)ba[offset+da]=ca[da]}})})(wasmMemory.buffer);aa(1028,"YAQAAAEAAAACAAAAAwAAAAQAAAAFAAAABgAAAAcAAAAIAAAACQAAAAoAAAALAAAADAAAAA0AAABONWRyYWNvMjRLZXlmcmFtZUFuaW1hdGlvbkVuY29kZXJFAAD0NwAAPAQAAAAAAAABAAAAFCoAAAAAAABxdWFudGl6YXRpb25fYml0cwBzdGFuZGFyZF9lZGdlYnJlYWtlcgBwcmVkaWN0aXZlX2VkZ2VicmVha2VyAAAAAAAAAOwEAAAOAAAADwAAABAAAAARAAAATjVkcmFjbzE3S2V5ZnJhbWVBbmltYXRpb25FAJg3AADQBAAAgDIAAAAAAABgBQAAEgAAABMAAAAUAAAAFQAAABYAAABONWRyYWNvMjhBdHRyaWJ1dGVPY3RhaGVkcm9uVHJhbnNmb3JtRQBONWRyYWNvMThBdHRyaWJ1dGVUcmFuc2Zvcm1FAHA3AAA7BQAAmDcAABQFAABYBQAAAAAAALQFAAAYAAAAGQAAABoAAAAbAAAAHAAAAE41ZHJhY28zMEF0dHJpYnV0ZVF1YW50aXphdGlvblRyYW5zZm9ybUUAAAAAmDcAAIgFAABYBQAAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQD/////YWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQAAAAAApAYAAB0AAAAeAAAAHwAAACAAAAAhAAAAIgAAACMAAAAkAAAAJQAAACYAAAAnAAAAIQAAACgAAABONWRyYWNvMTdBdHRyaWJ1dGVzRW5jb2RlckUAcDcAAIgGAABhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUAZW5jb2Rpbmdfc3BlZWQAZGVjb2Rpbmdfc3BlZWQAAAAAAAAAtAcAACkAAAAqAAAAKwAAACwAAAAtAAAALgAAAC8AAAAwAAAAMQAAADIAAAAzAAAANAAAAE41ZHJhY28yNlNlcXVlbnRpYWxBdHRyaWJ1dGVFbmNvZGVyRQAAAABwNwAAjAcAAAAAAABECAAANQAAADYAAAA3AAAAOAAAADkAAAA6AAAAOwAAADwAAAA9AAAAPgAAAD8AAABAAAAAQQAAAEIAAABDAAAAcXVhbnRpemF0aW9uX2JpdHMATjVkcmFjbzM3U2VxdWVudGlhbEF0dHJpYnV0ZUVuY29kZXJzQ29udHJvbGxlckUAAACYNwAAEggAAKQGAABhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAAAAAAAkCQAARAAAAEUAAABGAAAALAAAAEcAAAAuAAAALwAAADAAAABIAAAAMgAAADMAAABJAAAASgAAAEsAAAB1c2VfYnVpbHRfaW5fYXR0cmlidXRlX2NvbXByZXNzaW9uAE41ZHJhY28zM1NlcXVlbnRpYWxJbnRlZ2VyQXR0cmlidXRlRW5jb2RlckUAAJg3AAD3CAAAtAcAAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUA/////wAAAAD4CwAATAAAAE0AAABOAAAATwAAAFAAAABRAAAAUgAAAFMAAABUAAAAVQAAAFYAAABXAAAATjVkcmFjbzQwTWVzaFByZWRpY3Rpb25TY2hlbWVQYXJhbGxlbG9ncmFtRW5jb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRW5jb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yM1ByZWRpY3Rpb25TY2hlbWVFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRUVFAE41ZHJhY28zN1ByZWRpY3Rpb25TY2hlbWVUeXBlZEVuY29kZXJJbnRlcmZhY2VJaWlFRQBONWRyYWNvMzJQcmVkaWN0aW9uU2NoZW1lRW5jb2RlckludGVyZmFjZUUATjVkcmFjbzI1UHJlZGljdGlvblNjaGVtZUludGVyZmFjZUUAcDcAAJwLAACYNwAAcQsAAMALAACYNwAAPQsAAMgLAACYNwAA6QoAANQLAACYNwAAUwoAAOALAACYNwAAsAkAAOwLAAAAAAAA7AsAAEwAAABYAAAAIQAAAE8AAAAhAAAAUQAAAFIAAABTAAAAVAAAAFUAAABWAAAAIQAAAAAAAADgCwAATAAAAFkAAAAhAAAATwAAACEAAABRAAAAUgAAAFMAAABUAAAAVQAAAFYAAAAhAAAAAAAAAGANAABaAAAAWwAAAFwAAABPAAAAXQAAAFEAAABSAAAAUwAAAFQAAABVAAAAXgAAAF8AAABONWRyYWNvNTZNZXNoUHJlZGljdGlvblNjaGVtZUNvbnN0cmFpbmVkTXVsdGlQYXJhbGxlbG9ncmFtRW5jb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAACYNwAArAwAAOwLAAAAAAAATA4AAGAAAABhAAAAYgAAAE8AAABjAAAAZAAAAGUAAABmAAAAVAAAAFUAAABnAAAAaAAAAE41ZHJhY280NE1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzUG9ydGFibGVFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAJg3AACkDQAA7AsAAAAAAAA4DwAAaQAAAGoAAABrAAAATwAAAGwAAABtAAAAbgAAAG8AAABUAAAAVQAAAHAAAABxAAAATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAAAAmDcAAJAOAADsCwAAAAAAAMAQAAByAAAAcwAAAHQAAAB1AAAAdgAAAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAAAcDcAAAsQAACYNwAAYA8AALgQAAAAAAAAMBIAAEwAAAB3AAAAeAAAAE8AAAB5AAAAUQAAAFIAAABTAAAAVAAAAFUAAABWAAAAegAAAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbUVuY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRW5jb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAAJg3AACaEQAA4AsAAJg3AAAEEQAAJBIAAAAAAAAkEgAATAAAAHsAAAAhAAAATwAAACEAAABRAAAAUgAAAFMAAABUAAAAVQAAAFYAAAAhAAAAAAAAAFQTAAB8AAAAfQAAAH4AAABPAAAAfwAAAFEAAABSAAAAUwAAAFQAAABVAAAAgAAAAIEAAABONWRyYWNvNTZNZXNoUHJlZGljdGlvblNjaGVtZUNvbnN0cmFpbmVkTXVsdGlQYXJhbGxlbG9ncmFtRW5jb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAAACYNwAArBIAACQSAAAAAAAANBQAAIIAAACDAAAAhAAAAE8AAACFAAAAhgAAAIcAAACIAAAAVAAAAFUAAACJAAAAigAAAE41ZHJhY280NE1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzUG9ydGFibGVFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAJg3AACYEwAAJBIAAAAAAAAQFQAAiwAAAIwAAACNAAAATwAAAI4AAACPAAAAkAAAAJEAAABUAAAAVQAAAJIAAACTAAAATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQCYNwAAeBQAACQSAAAAAAAAfBYAAJQAAACVAAAAlgAAAJcAAACYAAAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAHA3AADWFQAAmDcAADgVAAB0FgAAAAAAABwXAABMAAAAmQAAAJoAAABPAAAAmwAAAFEAAABSAAAAUwAAAFQAAABVAAAAVgAAAJwAAABONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRUVFAAAAAJg3AADAFgAA4AsAAHF1YW50aXphdGlvbl9iaXRzAAAAAAAAAKgXAACdAAAAngAAAJ8AAAAsAAAARwAAAC4AAACgAAAAoQAAAKIAAAAyAAAAMwAAAEkAAACjAAAApAAAAE41ZHJhY28zMlNlcXVlbnRpYWxOb3JtYWxBdHRyaWJ1dGVFbmNvZGVyRQAAmDcAAHwXAAAkCQAAcHJlZGljdGlvbl9zY2hlbWUAAAAAAAAA8BkAAKUAAACmAAAApwAAAKgAAACpAAAAqgAAAKsAAACsAAAArQAAAK4AAACvAAAAsAAAAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbUVuY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZUVuY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjNQcmVkaWN0aW9uU2NoZW1lRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVFRQAAAACYNwAAaRkAANQLAACYNwAAuxgAANgZAACYNwAAABgAAOQZAAAAAAAA5BkAAKUAAACxAAAAIQAAAKgAAAAhAAAAqgAAAKsAAACsAAAArQAAAK4AAACvAAAAIQAAAAAAAADYGQAApQAAALIAAAAhAAAAqAAAACEAAACqAAAAqwAAAKwAAACtAAAArgAAAK8AAAAhAAAAAAAAAHAbAACzAAAAtAAAALUAAACoAAAAtgAAAKoAAACrAAAArAAAAK0AAACuAAAAtwAAALgAAABONWRyYWNvNTZNZXNoUHJlZGljdGlvblNjaGVtZUNvbnN0cmFpbmVkTXVsdGlQYXJhbGxlbG9ncmFtRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAACYNwAApBoAAOQZAAAAAAAAdBwAALkAAAC6AAAAuwAAAKgAAAC8AAAAvQAAAL4AAAC/AAAArQAAAK4AAADAAAAAwQAAAE41ZHJhY280NE1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzUG9ydGFibGVFbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAJg3AAC0GwAA5BkAAAAAAAB4HQAAwgAAAMMAAADEAAAAqAAAAMUAAADGAAAAxwAAAMgAAACtAAAArgAAAMkAAADKAAAATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxFbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAAAAmDcAALgcAADkGQAAAAAAADAfAADLAAAAzAAAAM0AAADOAAAAzwAAAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAAAcDcAAGMeAACYNwAAoB0AACgfAAAAAAAA0CAAAKUAAADQAAAA0QAAAKgAAADSAAAAqgAAAKsAAACsAAAArQAAAK4AAACvAAAA0wAAAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbUVuY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAAJg3AAAiIAAA2BkAAJg3AAB0HwAAxCAAAAAAAADEIAAApQAAANQAAAAhAAAAqAAAACEAAACqAAAAqwAAAKwAAACtAAAArgAAAK8AAAAhAAAAAAAAAAwiAADVAAAA1gAAANcAAACoAAAA2AAAAKoAAACrAAAArAAAAK0AAACuAAAA2QAAANoAAABONWRyYWNvNTZNZXNoUHJlZGljdGlvblNjaGVtZUNvbnN0cmFpbmVkTXVsdGlQYXJhbGxlbG9ncmFtRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAAACYNwAATCEAAMQgAAAAAAAABCMAANsAAADcAAAA3QAAAKgAAADeAAAA3wAAAOAAAADhAAAArQAAAK4AAADiAAAA4wAAAE41ZHJhY280NE1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzUG9ydGFibGVFbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAJg3AABQIgAAxCAAAAAAAAD4IwAA5AAAAOUAAADmAAAAqAAAAOcAAADoAAAA6QAAAOoAAACtAAAArgAAAOsAAADsAAAATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxFbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQCYNwAASCMAAMQgAAAAAAAAlCUAAO0AAADuAAAA7wAAAPAAAADxAAAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAHA3AADWJAAAmDcAACAkAACMJQAAAAAAAEwmAAClAAAA8gAAAPMAAACoAAAA9AAAAKoAAACrAAAArAAAAK0AAACuAAAArwAAAPUAAABONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFFbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRUVFAAAAAJg3AADYJQAA2BkAAAAAAAAEJwAA9gAAAPcAAAD4AAAALAAAAEcAAAAuAAAA+QAAAPoAAAD7AAAAMgAAADMAAABJAAAASgAAAPwAAABxdWFudGl6YXRpb25fYml0cwBxdWFudGl6YXRpb25fb3JpZ2luAHF1YW50aXphdGlvbl9yYW5nZQBONWRyYWNvMzhTZXF1ZW50aWFsUXVhbnRpemF0aW9uQXR0cmlidXRlRW5jb2RlckUAAACYNwAA0SYAACQJAABwcmVkaWN0aW9uX3NjaGVtZQBhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAHN5bWJvbF9lbmNvZGluZ19tZXRob2QAc3ltYm9sX2VuY29kaW5nX2NvbXByZXNzaW9uX2xldmVsAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQBONWRyYWNvMTVQb2ludHNTZXF1ZW5jZXJFAAAAAHA3AAAnKAAAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQAAAAAAxCgAAP0AAAD+AAAA/wAAAAABAABONWRyYWNvMTVMaW5lYXJTZXF1ZW5jZXJFAAAAmDcAAKgoAABEKAAAAAAAAOQpAAABAAAAAQEAAAMAAAAhAAAABQAAAAYAAAACAQAACAAAAAkAAAAhAAAACwAAAAwAAAAhAAAASW52YWxpZCBpbnB1dCBnZW9tZXRyeS4ARmFpbGVkIHRvIGluaXRpYWxpemUgZW5jb2Rlci4ARmFpbGVkIHRvIGVuY29kZSBpbnRlcm5hbCBkYXRhLgBGYWlsZWQgdG8gZW5jb2RlIHBvaW50IGF0dHJpYnV0ZXMuAHN0b3JlX251bWJlcl9vZl9lbmNvZGVkX3BvaW50cwBEUkFDTwBGYWlsZWQgdG8gZW5jb2RlIG1ldGFkYXRhLgBONWRyYWNvMTdQb2ludENsb3VkRW5jb2RlckUAAAAAcDcAAMUpAABONWRyYWNvMjdQb2ludENsb3VkU2VxdWVudGlhbEVuY29kZXJFAAAAmDcAAOwpAADkKQ==");aa(10804,"AQAAAFZVVVUCAAAAAAAAAAIAAACamZmZAwAAAFZVVVUDAAAAJUmSJAMAAAAAAAAAAwAAAMhxHMcEAAAAmpmZmQQAAABGF110BAAAAFZVVVUEAAAAPLETOwQAAAAlSZIkBAAAABIREREEAAAAAAAAAAQAAADi4eHhBQAAAMhxHMcFAAAAy2sorwUAAACamZmZBQAAAIdhGIYFAAAARhdddAUAAACRhSxkBQAAAFZVVVUFAAAAexSuRwUAAAA8sRM7BQAAANtLaC8FAAAAJUmSJAUAAAASlnsaBQAAABIREREFAAAAhRBCCAUAAAAAAAAABQAAAAgffPAGAAAA4uHh4QYAAADVQR3UBgAAAMhxHMcGAAAATZHPugYAAADLayivBgAAAKVBGqQGAAAAmpmZmQYAAAD6GJyPBgAAAIdhGIYGAAAAGPQFfQYAAABGF110BgAAAG3BFmwGAAAAkYUsZAYAAAC6gphcBgAAAFZVVVUGAAAAcwpeTgYAAAB7FK5HBgAAAEJBQUEGAAAAPLETOwYAAACzzyE1BgAAANtLaC8GAAAAnxLkKQYAAAAlSZIkBgAAAN1HcB8GAAAAEpZ7GgYAAAD45bEVBgAAABIREREGAAAA/BSXDAYAAACFEEIIBgAAAAVBEAQGAAAAAAAAAAYAAAD5gR/4BwAAAAgffPAHAAAAwBoT6QcAAADi4eHhBwAAAGwH5toHAAAA1UEd1AcAAACRaIXNBwAAAMhxHMcHAAAAOXDgwAcAAABNkc+6BwAAAE8b6LQHAAAAy2sorwcAAAAH9o6pBwAAAKVBGqQHAAAAUunIngcAAACamZmZBwAAAM4Pi5QHAAAA+hicjwcAAAD3kMuKBwAAAIdhGIYHAAAAgoGBgQcAAAAY9AV9BwAAABjIpHgHAAAARhdddAcAAADBBS5wBwAAAG3BFmwHAAAAaYEWaAcAAACRhSxkBwAAAAYWWGAHAAAAuoKYXAcAAAAJI+1YBwAAAFZVVVUHAAAAr37QUQcAAABzCl5OBwAAAAZq/UoHAAAAexSuRwcAAABXhm9EBwAAAEJBQUEHAAAAz8siPgcAAAA8sRM7BwAAADmBEzgHAAAAs88hNQcAAACjND4yBwAAANtLaC8HAAAA2bSfLAcAAACfEuQpBwAAAIkLNScHAAAAJUmSJAcAAAATePshBwAAAN1HcB8HAAAA22rwHAcAAAASlnsaBwAAABmBERgHAAAA+OWxFQcAAAAUgVwTBwAAABIREREHAAAAv1bPDgcAAAD8FJcMBwAAAKcQaAoHAAAAhRBCCAcAAAAw3SQGBwAAAAVBEAQHAAAAEQgEAgcAAAAAAAAABwAAACDwB/wIAAAA+YEf+AgAAADlWUb0CAAAAAgffPAIAAAAMXvA7AgAAADAGhPpCAAAAJGsc+UIAAAA4uHh4QgAAABAbl3eCAAAAGwH5toIAAAATGV71wgAAADVQR3UCAAAAPdYy9AIAAAAkWiFzQgAAABWMEvKCAAAAMhxHMcIAAAAHfD4wwgAAAA5cODACAAAAJq40r0IAAAATZHPuggAAADew9a3CAAAAE8b6LQIAAAAB2QDsggAAADLayivCAAAAK0BV6wIAAAAB/aOqQgAAABuGtCmCAAAAKVBGqQIAAAAmD9toQgAAABS6cieCAAAAO8ULZwIAAAAmpmZmQgAAACBTw6XCAAAAM4Pi5QIAAAAnrQPkggAAAD6GJyPCAAAANQYMI0IAAAA95DLiggAAAALX26ICAAAAIdhGIYIAAAArHfJgwgAAACCgYGBCAAAANFfQH8IAAAAGPQFfQgAAACPINJ6CAAAABjIpHgIAAAARM59dggAAABGF110CAAAAPWHQnIIAAAAwQUucAgAAAC1dh9uCAAAAG3BFmwIAAAAFs0TaggAAABpgRZoCAAAAKbGHmYIAAAAkYUsZAgAAABxpz9iCAAAAAYWWGAIAAAAjrt1XggAAAC6gphcCAAAALFWwFoIAAAACSPtWAgAAADG0x5XCAAAAFZVVVUIAAAAkJSQUwgAAACvftBRCAAAAFEBFVAIAAAAcwpeTggAAABziKtMCAAAAAZq/UoIAAAAPJ5TSQgAAAB7FK5HCAAAAIC8DEYIAAAAV4ZvRAgAAABeYtZCCAAAAEJBQUEIAAAA/BOwPwgAAADPyyI+CAAAAEhamTwIAAAAPLETOwgAAADCwpE5CAAAADmBEzgIAAAAPt+YNggAAACzzyE1CAAAALZFrjMIAAAAozQ+MggAAAAUkNEwCAAAANtLaC8IAAAABVwCLggAAADZtJ8sCAAAANFKQCsIAAAAnxLkKQgAAAApAYsoCAAAAIkLNScIAAAACSfiJQgAAAAlSZIkCAAAAIpnRSMIAAAAE3j7IQgAAADHcLQgCAAAAN1HcB8IAAAAtPMuHggAAADbavAcCAAAAAWktBsIAAAAEpZ7GggAAAAJOEUZCAAAABmBERgIAAAAlWjgFggAAAD45bEVCAAAAOHwhRQIAAAAFIFcEwgAAAB2jjUSCAAAABIREREIAAAAEAHvDwgAAAC/Vs8OCAAAAIkKsg0IAAAA/BSXDAgAAADDbn4LCAAAAKcQaAoIAAAAkfNTCQgAAACFEEIICAAAAKVgMgcIAAAAMN0kBggAAAB+fxkFCAAAAAVBEAQIAAAAUhsJAwgAAAARCAQCCAAAAAIBAQEIAAAAAQAAAAEAAAACAAAAAgAAAAQAAAAEAAAACAAAAAgAAAAEAAAACAAAAAE=");aa(12884,"gDIAAA4AAAADAQAAEAAAABEAAABONWRyYWNvMTBQb2ludENsb3VkRQAAAABwNwAAaDIAAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUALSsgICAwWDB4AChudWxsKQAAAAARAAoAERERAAAAAAUAAAAAAAAJAAAAAAs=");aa(13056,"EQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERER");aa(13105,"Cw==");aa(13114,"EQAKChEREQAKAAACAAkLAAAACQALAAAL");aa(13163,"DA==");aa(13175,"DAAAAAAMAAAAAAkMAAAAAAAMAAAM");aa(13221,"Dg==");aa(13233,"DQAAAAQNAAAAAAkOAAAAAAAOAAAO");aa(13279,"EA==");aa(13291,"DwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhIS");aa(13346,"EgAAABISEgAAAAAAAAk=");aa(13395,"Cw==");aa(13407,"CgAAAAAKAAAAAAkLAAAAAAALAAAL");aa(13453,"DA==");aa(13465,"DAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVGLTBYKzBYIDBYLTB4KzB4IDB4AGluZgBJTkYAbmFuAE5BTgAuAAAAAEg4AABpbmZpbml0eQBuYW4=");aa(13568,"0XSeAFedvSqAcFIP//8+JwoAAABkAAAA6AMAABAnAACghgEAQEIPAICWmAAA4fUFGAAAADUAAABxAAAAa////877//+Sv///");aa(13676,"CQE=");aa(13715,"//////8=");aa(13784,"YWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQBiYXNpY19zdHJpbmcAJWQAdmVjdG9yAFB1cmUgdmlydHVhbCBmdW5jdGlvbiBjYWxsZWQhAHN0ZDo6ZXhjZXB0aW9uAAAAAACENgAACgEAAAsBAAAMAQAAU3Q5ZXhjZXB0aW9uAAAAAHA3AAB0NgAAAAAAALA2AAAXAAAADQEAAA4BAABTdDExbG9naWNfZXJyb3IAmDcAAKA2AACENgAAAAAAAOQ2AAAXAAAADwEAAA4BAABTdDEybGVuZ3RoX2Vycm9yAAAAAJg3AADQNgAAsDYAAFN0OXR5cGVfaW5mbwAAAABwNwAA8DYAAE4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAAAAAJg3AAAINwAAADcAAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQAAAJg3AAA4NwAALDcAAAAAAABcNwAAEAEAABEBAAASAQAAEwEAABQBAAAVAQAAFgEAABcBAAAAAAAA4DcAABABAAAYAQAAEgEAABMBAAAUAQAAGQEAABoBAAAbAQAATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAAAAAJg3AAC4NwAAXDcAAAAAAAA8OAAAEAEAABwBAAASAQAAEwEAABQBAAAdAQAAHgEAAB8BAABOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9FAAAAmDcAABQ4AABcNw==");aa(14408,"BQ==");aa(14420,"BgE=");aa(14444,"BwEAAAgBAADUOQ==");aa(14468,"Ag==");aa(14483,"//////8=");aa(14741,"Og==");return l({"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity,"Math":Math},asmLibraryArg,wasmMemory.buffer)}
// EMSCRIPTEN_END_ASM
)(asmLibraryArg,wasmMemory,wasmTable);return{"exports":exports}},instantiate:function(binary,info){return{then:function(ok,err){ok({"instance":new WebAssembly.Instance(new WebAssembly.Module(binary,info))})}}},RuntimeError:Error};wasmBinary=[];if(typeof WebAssembly!=="object"){err("no native wasm support detected")}function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":HEAP8[ptr>>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=1?tempDouble>0?(Math_min(+Math_floor(tempDouble/4294967296),4294967295)|0)>>>0:~~+Math_ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var wasmMemory;var wasmTable=new WebAssembly.Table({"initial":288,"maximum":288+0,"element":"anyfunc"});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_NONE=3;var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(u8Array[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var str="";while(idx<endPtr){var u0=u8Array[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u0=(u0&7)<<18|u1<<12|u2<<6|u8Array[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,outU8Array,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;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[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=5258432,DYNAMIC_BASE=5258432,DYNAMICTOP_PTR=15392;var INITIAL_TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_TOTAL_MEMORY/WASM_PAGE_SIZE})}if(wasmMemory){buffer=wasmMemory.buffer}INITIAL_TOTAL_MEMORY=buffer.byteLength;updateGlobalBufferAndViews(buffer);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}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 Math_abs=Math.abs;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;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+="";out(what);err(what);ABORT=true;EXITSTATUS=1;what="abort("+what+"). Build with -s ASSERTIONS=1 for more info.";throw new WebAssembly.RuntimeError(what)}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}var wasmBinaryFile="draco_animation_encoder.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"){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 new Promise(function(resolve,reject){resolve(getBinary())})}function createWasm(){var info={"env":asmLibraryArg,"wasi_unstable":asmLibraryArg};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;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)&&typeof fetch==="function"){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");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();return{}}var tempDouble;var tempI64;__ATINIT__.push({func:function(){___wasm_call_ctors()}});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 jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function ___cxa_allocate_exception(size){return _malloc(size)}var ___exception_infos={};var ___exception_last=0;function ___cxa_throw(ptr,type,destructor){___exception_infos[ptr]={ptr:ptr,adjusted:[ptr],type:type,destructor:destructor,refcount:0,caught:false,rethrown:false};___exception_last=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exceptions=1}else{__ZSt18uncaught_exceptionv.uncaught_exceptions++}throw ptr}function _abort(){abort()}function _emscripten_get_heap_size(){return HEAP8.length}function _emscripten_get_sbrk_ptr(){return 15392}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest)}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){var oldSize=_emscripten_get_heap_size();var PAGE_MULTIPLE=65536;var LIMIT=2147483648-PAGE_MULTIPLE;if(requestedSize>LIMIT){return false}var MIN_TOTAL_MEMORY=16777216;var newSize=Math.max(oldSize,MIN_TOTAL_MEMORY);while(newSize<requestedSize){if(newSize<=536870912){newSize=alignUp(2*newSize,PAGE_MULTIPLE)}else{newSize=Math.min(alignUp((3*newSize+2147483648)/4,PAGE_MULTIPLE),LIMIT)}}var replacement=emscripten_realloc_buffer(newSize);if(!replacement){return false}return true}var ENV={};function _emscripten_get_environ(){if(!_emscripten_get_environ.strings){var env={"USER":"web_user","LOGNAME":"web_user","PATH":"/","PWD":"/","HOME":"/home/web_user","LANG":(typeof navigator==="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8","_":thisProgram};for(var x in ENV){env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(x+"="+env[x])}_emscripten_get_environ.strings=strings}return _emscripten_get_environ.strings}function _environ_get(__environ,environ_buf){var strings=_emscripten_get_environ();var bufSize=0;strings.forEach(function(string,i){var ptr=environ_buf+bufSize;HEAP32[__environ+i*4>>2]=ptr;writeAsciiToMemory(string,ptr);bufSize+=string.length+1});return 0}function _environ_sizes_get(penviron_count,penviron_buf_size){var strings=_emscripten_get_environ();HEAP32[penviron_count>>2]=strings.length;var bufSize=0;strings.forEach(function(string){bufSize+=string.length+1});HEAP32[penviron_buf_size>>2]=bufSize;return 0}var PATH={splitPath:function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(function(p){return!!p}),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},extname:function(path){return PATH.splitPath(path)[3]},join:function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))},join2:function(l,r){return PATH.normalize(l+"/"+r)}};var SYSCALLS={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:0,get:function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(){var ret=UTF8ToString(SYSCALLS.get());return ret},get64:function(){var low=SYSCALLS.get(),high=SYSCALLS.get();return low},getZero:function(){SYSCALLS.get()}};function _fd_close(fd){try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}function _fd_write(fd,iov,iovcnt,pnum){try{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}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return e.errno}}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))}var asmLibraryArg={"__cxa_allocate_exception":___cxa_allocate_exception,"__cxa_throw":___cxa_throw,"abort":_abort,"emscripten_get_sbrk_ptr":_emscripten_get_sbrk_ptr,"emscripten_memcpy_big":_emscripten_memcpy_big,"emscripten_resize_heap":_emscripten_resize_heap,"environ_get":_environ_get,"environ_sizes_get":_environ_sizes_get,"fd_close":_fd_close,"fd_seek":_fd_seek,"fd_write":_fd_write,"getTempRet0":getTempRet0,"memory":wasmMemory,"setTempRet0":setTempRet0,"table":wasmTable};var asm=createWasm();Module["asm"]=asm;var ___wasm_call_ctors=Module["___wasm_call_ctors"]=function(){return Module["asm"]["__wasm_call_ctors"].apply(null,arguments)};var _emscripten_bind_AnimationBuilder_AnimationBuilder_0=Module["_emscripten_bind_AnimationBuilder_AnimationBuilder_0"]=function(){return Module["asm"]["emscripten_bind_AnimationBuilder_AnimationBuilder_0"].apply(null,arguments)};var _emscripten_bind_AnimationBuilder_SetTimestamps_3=Module["_emscripten_bind_AnimationBuilder_SetTimestamps_3"]=function(){return Module["asm"]["emscripten_bind_AnimationBuilder_SetTimestamps_3"].apply(null,arguments)};var _emscripten_bind_AnimationBuilder_AddKeyframes_4=Module["_emscripten_bind_AnimationBuilder_AddKeyframes_4"]=function(){return Module["asm"]["emscripten_bind_AnimationBuilder_AddKeyframes_4"].apply(null,arguments)};var _emscripten_bind_AnimationBuilder___destroy___0=Module["_emscripten_bind_AnimationBuilder___destroy___0"]=function(){return Module["asm"]["emscripten_bind_AnimationBuilder___destroy___0"].apply(null,arguments)};var _emscripten_bind_VoidPtr___destroy___0=Module["_emscripten_bind_VoidPtr___destroy___0"]=function(){return Module["asm"]["emscripten_bind_VoidPtr___destroy___0"].apply(null,arguments)};var _emscripten_bind_DracoInt8Array_DracoInt8Array_0=Module["_emscripten_bind_DracoInt8Array_DracoInt8Array_0"]=function(){return Module["asm"]["emscripten_bind_DracoInt8Array_DracoInt8Array_0"].apply(null,arguments)};var _emscripten_bind_DracoInt8Array_GetValue_1=Module["_emscripten_bind_DracoInt8Array_GetValue_1"]=function(){return Module["asm"]["emscripten_bind_DracoInt8Array_GetValue_1"].apply(null,arguments)};var _emscripten_bind_DracoInt8Array_size_0=Module["_emscripten_bind_DracoInt8Array_size_0"]=function(){return Module["asm"]["emscripten_bind_DracoInt8Array_size_0"].apply(null,arguments)};var _emscripten_bind_DracoInt8Array___destroy___0=Module["_emscripten_bind_DracoInt8Array___destroy___0"]=function(){return Module["asm"]["emscripten_bind_DracoInt8Array___destroy___0"].apply(null,arguments)};var _emscripten_bind_AnimationEncoder_AnimationEncoder_0=Module["_emscripten_bind_AnimationEncoder_AnimationEncoder_0"]=function(){return Module["asm"]["emscripten_bind_AnimationEncoder_AnimationEncoder_0"].apply(null,arguments)};var _emscripten_bind_AnimationEncoder_SetTimestampsQuantization_1=Module["_emscripten_bind_AnimationEncoder_SetTimestampsQuantization_1"]=function(){return Module["asm"]["emscripten_bind_AnimationEncoder_SetTimestampsQuantization_1"].apply(null,arguments)};var _emscripten_bind_AnimationEncoder_SetKeyframesQuantization_1=Module["_emscripten_bind_AnimationEncoder_SetKeyframesQuantization_1"]=function(){return Module["asm"]["emscripten_bind_AnimationEncoder_SetKeyframesQuantization_1"].apply(null,arguments)};var _emscripten_bind_AnimationEncoder_EncodeAnimationToDracoBuffer_2=Module["_emscripten_bind_AnimationEncoder_EncodeAnimationToDracoBuffer_2"]=function(){return Module["asm"]["emscripten_bind_AnimationEncoder_EncodeAnimationToDracoBuffer_2"].apply(null,arguments)};var _emscripten_bind_AnimationEncoder___destroy___0=Module["_emscripten_bind_AnimationEncoder___destroy___0"]=function(){return Module["asm"]["emscripten_bind_AnimationEncoder___destroy___0"].apply(null,arguments)};var _emscripten_bind_KeyframeAnimation_KeyframeAnimation_0=Module["_emscripten_bind_KeyframeAnimation_KeyframeAnimation_0"]=function(){return Module["asm"]["emscripten_bind_KeyframeAnimation_KeyframeAnimation_0"].apply(null,arguments)};var _emscripten_bind_KeyframeAnimation_num_frames_0=Module["_emscripten_bind_KeyframeAnimation_num_frames_0"]=function(){return Module["asm"]["emscripten_bind_KeyframeAnimation_num_frames_0"].apply(null,arguments)};var _emscripten_bind_KeyframeAnimation___destroy___0=Module["_emscripten_bind_KeyframeAnimation___destroy___0"]=function(){return Module["asm"]["emscripten_bind_KeyframeAnimation___destroy___0"].apply(null,arguments)};var _setThrew=Module["_setThrew"]=function(){return Module["asm"]["setThrew"].apply(null,arguments)};var __ZSt18uncaught_exceptionv=Module["__ZSt18uncaught_exceptionv"]=function(){return Module["asm"]["_ZSt18uncaught_exceptionv"].apply(null,arguments)};var _free=Module["_free"]=function(){return Module["asm"]["free"].apply(null,arguments)};var _malloc=Module["_malloc"]=function(){return Module["asm"]["malloc"].apply(null,arguments)};var stackSave=Module["stackSave"]=function(){return Module["asm"]["stackSave"].apply(null,arguments)};var stackAlloc=Module["stackAlloc"]=function(){return Module["asm"]["stackAlloc"].apply(null,arguments)};var stackRestore=Module["stackRestore"]=function(){return Module["asm"]["stackRestore"].apply(null,arguments)};var __growWasmMemory=Module["__growWasmMemory"]=function(){return Module["asm"]["__growWasmMemory"].apply(null,arguments)};var dynCall_ii=Module["dynCall_ii"]=function(){return Module["asm"]["dynCall_ii"].apply(null,arguments)};var dynCall_vi=Module["dynCall_vi"]=function(){return Module["asm"]["dynCall_vi"].apply(null,arguments)};var dynCall_vii=Module["dynCall_vii"]=function(){return Module["asm"]["dynCall_vii"].apply(null,arguments)};var dynCall_iii=Module["dynCall_iii"]=function(){return Module["asm"]["dynCall_iii"].apply(null,arguments)};var dynCall_viii=Module["dynCall_viii"]=function(){return Module["asm"]["dynCall_viii"].apply(null,arguments)};var dynCall_iiii=Module["dynCall_iiii"]=function(){return Module["asm"]["dynCall_iiii"].apply(null,arguments)};var dynCall_v=Module["dynCall_v"]=function(){return Module["asm"]["dynCall_v"].apply(null,arguments)};var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=function(){return Module["asm"]["dynCall_iiiiiii"].apply(null,arguments)};var dynCall_iidiiii=Module["dynCall_iidiiii"]=function(){return Module["asm"]["dynCall_iidiiii"].apply(null,arguments)};var dynCall_jiji=Module["dynCall_jiji"]=function(){return Module["asm"]["dynCall_jiji"].apply(null,arguments)};var dynCall_viiiiii=Module["dynCall_viiiiii"]=function(){return Module["asm"]["dynCall_viiiiii"].apply(null,arguments)};var dynCall_viiiii=Module["dynCall_viiiii"]=function(){return Module["asm"]["dynCall_viiiii"].apply(null,arguments)};var dynCall_viiii=Module["dynCall_viiii"]=function(){return Module["asm"]["dynCall_viiii"].apply(null,arguments)};Module["asm"]=asm;var calledRun;Module["then"]=function(func){if(calledRun){func(Module)}else{var old=Module["onRuntimeInitialized"];Module["onRuntimeInitialized"]=function(){if(old)old();func(Module)}}return Module};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;if(ABORT)return;initRuntime();preMain();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){var offsetShifted=offset;var bytes=view.BYTES_PER_ELEMENT;switch(bytes){case 2:offsetShifted>>=1;break;case 4:offsetShifted>>=2;break;case 8:offsetShifted>>=3;break}for(var i=0;i<array.length;i++){view[offsetShifted+i]=array[i]}}};function ensureFloat32(value){if(typeof value==="object"){var offset=ensureCache.alloc(value,HEAPF32);ensureCache.copy(value,HEAPF32,offset);return offset}return value}function AnimationBuilder(){this.ptr=_emscripten_bind_AnimationBuilder_AnimationBuilder_0();getCache(AnimationBuilder)[this.ptr]=this}AnimationBuilder.prototype=Object.create(WrapperObject.prototype);AnimationBuilder.prototype.constructor=AnimationBuilder;AnimationBuilder.prototype.__class__=AnimationBuilder;AnimationBuilder.__cache__={};Module["AnimationBuilder"]=AnimationBuilder;AnimationBuilder.prototype["SetTimestamps"]=AnimationBuilder.prototype.SetTimestamps=function(animation,num_frames,timestamps){var self=this.ptr;ensureCache.prepare();if(animation&&typeof animation==="object")animation=animation.ptr;if(num_frames&&typeof num_frames==="object")num_frames=num_frames.ptr;if(typeof timestamps=="object"){timestamps=ensureFloat32(timestamps)}return!!_emscripten_bind_AnimationBuilder_SetTimestamps_3(self,animation,num_frames,timestamps)};AnimationBuilder.prototype["AddKeyframes"]=AnimationBuilder.prototype.AddKeyframes=function(animation,num_frames,num_components,animation_data){var self=this.ptr;ensureCache.prepare();if(animation&&typeof animation==="object")animation=animation.ptr;if(num_frames&&typeof num_frames==="object")num_frames=num_frames.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof animation_data=="object"){animation_data=ensureFloat32(animation_data)}return _emscripten_bind_AnimationBuilder_AddKeyframes_4(self,animation,num_frames,num_components,animation_data)};AnimationBuilder.prototype["__destroy__"]=AnimationBuilder.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_AnimationBuilder___destroy___0(self)};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 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 AnimationEncoder(){this.ptr=_emscripten_bind_AnimationEncoder_AnimationEncoder_0();getCache(AnimationEncoder)[this.ptr]=this}AnimationEncoder.prototype=Object.create(WrapperObject.prototype);AnimationEncoder.prototype.constructor=AnimationEncoder;AnimationEncoder.prototype.__class__=AnimationEncoder;AnimationEncoder.__cache__={};Module["AnimationEncoder"]=AnimationEncoder;AnimationEncoder.prototype["SetTimestampsQuantization"]=AnimationEncoder.prototype.SetTimestampsQuantization=function(quantization_bits){var self=this.ptr;if(quantization_bits&&typeof quantization_bits==="object")quantization_bits=quantization_bits.ptr;_emscripten_bind_AnimationEncoder_SetTimestampsQuantization_1(self,quantization_bits)};AnimationEncoder.prototype["SetKeyframesQuantization"]=AnimationEncoder.prototype.SetKeyframesQuantization=function(quantization_bits){var self=this.ptr;if(quantization_bits&&typeof quantization_bits==="object")quantization_bits=quantization_bits.ptr;_emscripten_bind_AnimationEncoder_SetKeyframesQuantization_1(self,quantization_bits)};AnimationEncoder.prototype["EncodeAnimationToDracoBuffer"]=AnimationEncoder.prototype.EncodeAnimationToDracoBuffer=function(animation,encoded_data){var self=this.ptr;if(animation&&typeof animation==="object")animation=animation.ptr;if(encoded_data&&typeof encoded_data==="object")encoded_data=encoded_data.ptr;return _emscripten_bind_AnimationEncoder_EncodeAnimationToDracoBuffer_2(self,animation,encoded_data)};AnimationEncoder.prototype["__destroy__"]=AnimationEncoder.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_AnimationEncoder___destroy___0(self)};function KeyframeAnimation(){this.ptr=_emscripten_bind_KeyframeAnimation_KeyframeAnimation_0();getCache(KeyframeAnimation)[this.ptr]=this}KeyframeAnimation.prototype=Object.create(WrapperObject.prototype);KeyframeAnimation.prototype.constructor=KeyframeAnimation;KeyframeAnimation.prototype.__class__=KeyframeAnimation;KeyframeAnimation.__cache__={};Module["KeyframeAnimation"]=KeyframeAnimation;KeyframeAnimation.prototype["num_frames"]=KeyframeAnimation.prototype.num_frames=function(){var self=this.ptr;return _emscripten_bind_KeyframeAnimation_num_frames_0(self)};KeyframeAnimation.prototype["__destroy__"]=KeyframeAnimation.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_KeyframeAnimation___destroy___0(self)};(function(){function setupEnums(){}if(runtimeInitialized)setupEnums();else addOnPreMain(setupEnums)})();if(typeof Module["onModuleParsed"]==="function"){Module["onModuleParsed"]()}
return DracoAnimationEncoderModule
}
);
})();
if (typeof exports === 'object' && typeof module === 'object')
module.exports = DracoAnimationEncoderModule;
else if (typeof define === 'function' && define['amd'])
define([], function() { return DracoAnimationEncoderModule; });
else if (typeof exports === 'object')
exports["DracoAnimationEncoderModule"] = DracoAnimationEncoderModule;