forked from webaverse/app
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdraco_encoder.js
52 lines (29 loc) · 871 KB
/
draco_encoder.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
var DracoEncoderModule = (function() {
var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
return (
function(DracoEncoderModule) {
DracoEncoderModule = DracoEncoderModule || {};
var Module=typeof DracoEncoderModule!=="undefined"?DracoEncoderModule:{};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>=380+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=5262192;var U=19304;var V=0;
// EMSCRIPTEN_START_FUNCS
function Df(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,p=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;h=T-80|0;T=h;i=-1;f=-1;a:{if((b|0)==-1){break a}f=b+1|0;i=(f>>>0)%3|0?f:b+ -2|0;f=b+ -1|0;if((b>>>0)%3){break a}f=b+2|0}e=q[a+36>>2];b=q[e>>2];b:{c:{d:{e:{f:{g:{e=q[e+4>>2]-b>>2;g=i<<2;i=q[q[a+32>>2]+28>>2];g=q[g+i>>2];if(e>>>0<=g>>>0){break g}f=q[i+(f<<2)>>2];if(e>>>0<=f>>>0){break g}h:{i=q[b+(g<<2)>>2];p=(i|0)>=(d|0);if(p){break h}g=q[b+(f<<2)>>2];if((g|0)>=(d|0)){break h}f=g<<3;l=q[(f|4)+c>>2];e=i<<3;b=q[(e|4)+c>>2];D=q[c+f>>2];n=q[c+e>>2];if(!((D|0)!=(n|0)|(b|0)!=(l|0))){q[a+8>>2]=n;q[a+12>>2]=b;break c}f=q[q[a+4>>2]+(d<<2)>>2];q[h+72>>2]=0;q[h+76>>2]=0;e=h- -64|0;q[e>>2]=0;q[e+4>>2]=0;q[h+56>>2]=0;q[h+60>>2]=0;e=q[a>>2];if(!r[e+84|0]){f=q[q[e+68>>2]+(f<<2)>>2]}Ef(e,f,o[e+24|0],h+56|0);f=q[q[a+4>>2]+(i<<2)>>2];q[h+48>>2]=0;q[h+52>>2]=0;q[h+40>>2]=0;q[h+44>>2]=0;q[h+32>>2]=0;q[h+36>>2]=0;e=q[a>>2];if(!r[e+84|0]){f=q[q[e+68>>2]+(f<<2)>>2]}Ef(e,f,o[e+24|0],h+32|0);f=q[q[a+4>>2]+(g<<2)>>2];q[h+24>>2]=0;q[h+28>>2]=0;q[h+16>>2]=0;q[h+20>>2]=0;q[h+8>>2]=0;q[h+12>>2]=0;e=q[a>>2];if(!r[e+84|0]){f=q[q[e+68>>2]+(f<<2)>>2]}Ef(e,f,o[e+24|0],h+8|0);v=q[h+44>>2];f=q[h+16>>2];g=q[h+40>>2];e=g;k=q[h+20>>2]-(v+(f>>>0<e>>>0)|0)|0;z=f-e|0;f=Up(z,k,z,k);e=V;s=f;x=q[h+36>>2];f=q[h+8>>2];j=q[h+32>>2];u=q[h+12>>2]-(x+(f>>>0<j>>>0)|0)|0;y=f-j|0;m=Up(y,u,y,u);f=s+m|0;e=V+e|0;e=f>>>0<m>>>0?e+1|0:e;t=f;s=q[h+52>>2];f=q[h+24>>2];B=q[h+48>>2];m=B;w=q[h+28>>2]-(s+(f>>>0<m>>>0)|0)|0;C=f-m|0;m=Up(C,w,C,w);f=t+m|0;e=V+e|0;t=f;m=f>>>0<m>>>0?e+1|0:e;if(!(f|m)){break h}i=1;f=0;e=q[h+64>>2];p=e-g|0;E=q[h+68>>2]-((e>>>0<g>>>0)+v|0)|0;e=Up(p,E,z,k);A=V;g=e;e=q[h+56>>2];v=e-j|0;H=q[h+60>>2]-((e>>>0<j>>>0)+x|0)|0;j=Up(v,H,y,u);g=g+j|0;e=V+A|0;e=g>>>0<j>>>0?e+1|0:e;G=g;g=q[h+72>>2];x=g-B|0;A=q[h+76>>2]-((g>>>0<B>>>0)+s|0)|0;j=Up(x,A,C,w);g=G+j|0;e=V+e|0;s=g;g=g>>>0<j>>>0?e+1|0:e;e=l;j=b;G=e-b|0;b=b>>31;I=(e>>31)-(b+(e>>>0<j>>>0)|0)|0;e=Up(s,g,G,I);l=V;j=Up(t,m,j,b);b=j+e|0;e=V+l|0;e=b>>>0<j>>>0?e+1|0:e;j=b;B=e;b=D;e=n;J=b-e|0;n=e>>31;K=(b>>31)-(n+(b>>>0<e>>>0)|0)|0;b=Up(s,g,J,K);l=V;n=Up(t,m,e,n);e=n+b|0;b=V+l|0;b=e>>>0<n>>>0?b+1|0:b;n=e;D=b;b=Vp(Up(z,k,s,g),V,t,m);e=E-(V+(p>>>0<b>>>0)|0)|0;b=p-b|0;b=Up(b,e,b,e);l=V;p=b;b=Vp(Up(y,u,s,g),V,t,m);e=H-(V+(v>>>0<b>>>0)|0)|0;b=v-b|0;k=Up(b,e,b,e);b=p+k|0;e=V+l|0;e=b>>>0<k>>>0?e+1|0:e;k=b;b=Vp(Up(s,g,C,w),V,t,m);g=A-(V+(x>>>0<b>>>0)|0)|0;b=x-b|0;l=Up(b,g,b,g);g=k+l|0;b=V+e|0;g=Up(g,g>>>0<l>>>0?b+1|0:b,t,m);b=V;l=b;if(!b&g>>>0<=1|b>>>0<0){break f}k=g;e=l;while(1){b=f<<1|i>>>31;i=i<<1;f=b;u=!e&k>>>0>7|e>>>0>0;k=(e&3)<<30|k>>>2;e=e>>>2;if(u){continue}break}break e}e=a;if(p){if((d|0)<=0){q[a+8>>2]=0;q[a+12>>2]=0;break c}b=(d<<1)+ -2|0}else{b=i<<1}b=(b<<2)+c|0;q[e+8>>2]=q[b>>2];q[a+12>>2]=q[b+4>>2];break c}Uo();F()}i=g;f=l;if(g-1){break d}}while(1){b=Wp(g,l,i,f)+i|0;e=f+V|0;e=b>>>0<i>>>0?e+1|0:e;i=(e&1)<<31|b>>>1;f=e>>>1;b=Up(i,f,i,f);e=V;if((l|0)==(e|0)&b>>>0>g>>>0|e>>>0>l>>>0){continue}break}}g=a+16|0;v=q[a+24>>2];x=v<<5;b=q[a+20>>2];p=d<<3;e=q[(p|4)+c>>2];l=e;s=Up(i,f,J,K);k=s;z=V;d=Vp(j-k|0,B-(z+(j>>>0<k>>>0)|0)|0,t,m);u=e>>31;k=d;w=u-(V+(e>>>0<k>>>0)|0)|0;e=e-k|0;y=Up(e,w,e,w);C=V;e=q[c+p>>2];c=e>>31;w=e;k=e;p=c;E=c;f=Up(i,f,G,I);A=V;e=D+A|0;c=n;i=c+f|0;if(i>>>0<c>>>0){e=e+1|0}i=Vp(i,e,t,m);c=i;e=E-(V+(k>>>0<c>>>0)|0)|0;c=k-c|0;k=Up(c,e,c,e);c=k+y|0;e=V+C|0;y=c;k=c>>>0<k>>>0?e+1|0:e;e=z+B|0;c=j+s|0;if(c>>>0<j>>>0){e=e+1|0}c=Vp(c,e,t,m);e=c;j=u-(V+(l>>>0<e>>>0)|0)|0;e=l-e|0;e=Up(e,j,e,j);u=V;f=Vp(n-f|0,D-((n>>>0<f>>>0)+A|0)|0,t,m);l=e;e=f;j=p-(V+(w>>>0<e>>>0)|0)|0;e=w-e|0;n=Up(e,j,e,j);j=l+n|0;e=V+u|0;e=j>>>0<n>>>0?e+1|0:e;i:{if((e|0)==(k|0)&y>>>0<j>>>0|k>>>0<e>>>0){if((b|0)==(x|0)){if((b+1|0)<=-1){break b}if(b>>>0<=1073741822){b=b+32&-32;c=v<<6;b=c>>>0<b>>>0?b:c}else{b=2147483647}Oe(g,b);b=q[a+20>>2]}q[a+20>>2]=b+1;c=q[a+16>>2]+(b>>>3&536870908)|0;q[c>>2]=q[c>>2]|1<<(b&31);break i}if((b|0)==(x|0)){if((b+1|0)<=-1){break b}if(b>>>0<=1073741822){b=b+32&-32;d=v<<6;b=d>>>0<b>>>0?b:d}else{b=2147483647}Oe(g,b);b=q[a+20>>2]}q[a+20>>2]=b+1;d=q[a+16>>2]+(b>>>3&536870908)|0;i=q[d>>2];L=d,M=Yp(-2,b)&i,q[L>>2]=M;d=c;i=f}q[a+8>>2]=i;q[a+12>>2]=d}T=h+80|0;return}To();F()}function Ef(a,b,c,d){var F=0,N=0,O=0,P=0,Q=x(0),R=0,S=0;a:{b:{if(!d){break b}F=q[a+28>>2]+ -1|0;if(F>>>0>10){break b}c:{d:{e:{switch(F-1|0){default:F=o[a+24|0];if(((F|0)>(c|0)?c:F)<<24>>24>=1){O=q[q[a>>2]>>2];F=q[a+48>>2]+Up(q[a+40>>2],q[a+44>>2],b,0)|0;b=O+F|0;while(1){F=(N<<3)+d|0;P=o[b|0];q[F>>2]=P;q[F+4>>2]=P>>31;b=b+1|0;N=N+1|0;F=o[a+24|0];if((N|0)<((F|0)>(c|0)?c:F)<<24>>24){continue}break}}if((F|0)>=(c|0)){break b}break a;case 0:F=o[a+24|0];if(((F|0)>(c|0)?c:F)<<24>>24>=1){O=q[q[a>>2]>>2];F=q[a+48>>2]+Up(q[a+40>>2],q[a+44>>2],b,0)|0;b=O+F|0;while(1){F=(N<<3)+d|0;q[F>>2]=r[b|0];q[F+4>>2]=0;b=b+1|0;N=N+1|0;F=o[a+24|0];if((N|0)<((F|0)>(c|0)?c:F)<<24>>24){continue}break}}if((F|0)>=(c|0)){break b}break a;case 1:F=o[a+24|0];if(((F|0)>(c|0)?c:F)<<24>>24>=1){O=q[q[a>>2]>>2];F=q[a+48>>2]+Up(q[a+40>>2],q[a+44>>2],b,0)|0;b=O+F|0;while(1){F=(N<<3)+d|0;P=p[b>>1];q[F>>2]=P;q[F+4>>2]=P>>31;b=b+2|0;N=N+1|0;F=o[a+24|0];if((N|0)<((F|0)>(c|0)?c:F)<<24>>24){continue}break}}if((F|0)>=(c|0)){break b}break a;case 2:F=o[a+24|0];if(((F|0)>(c|0)?c:F)<<24>>24>=1){O=q[q[a>>2]>>2];F=q[a+48>>2]+Up(q[a+40>>2],q[a+44>>2],b,0)|0;b=O+F|0;while(1){F=(N<<3)+d|0;q[F>>2]=s[b>>1];q[F+4>>2]=0;b=b+2|0;N=N+1|0;F=o[a+24|0];if((N|0)<((F|0)>(c|0)?c:F)<<24>>24){continue}break}}if((F|0)>=(c|0)){break b}break a;case 3:F=o[a+24|0];if(((F|0)>(c|0)?c:F)<<24>>24>=1){O=q[q[a>>2]>>2];F=q[a+48>>2]+Up(q[a+40>>2],q[a+44>>2],b,0)|0;b=O+F|0;while(1){F=(N<<3)+d|0;P=q[b>>2];q[F>>2]=P;q[F+4>>2]=P>>31;b=b+4|0;N=N+1|0;F=o[a+24|0];if((N|0)<((F|0)>(c|0)?c:F)<<24>>24){continue}break}}if((F|0)>=(c|0)){break b}break a;case 4:F=o[a+24|0];if(((F|0)>(c|0)?c:F)<<24>>24>=1){O=q[q[a>>2]>>2];F=q[a+48>>2]+Up(q[a+40>>2],q[a+44>>2],b,0)|0;b=O+F|0;while(1){F=(N<<3)+d|0;q[F>>2]=q[b>>2];q[F+4>>2]=0;b=b+4|0;N=N+1|0;F=o[a+24|0];if((N|0)<((F|0)>(c|0)?c:F)<<24>>24){continue}break}}if((F|0)>=(c|0)){break b}break a;case 5:F=o[a+24|0];if(((F|0)>(c|0)?c:F)<<24>>24>=1){O=q[q[a>>2]>>2];F=q[a+48>>2]+Up(q[a+40>>2],q[a+44>>2],b,0)|0;b=O+F|0;while(1){P=q[b+4>>2];F=(N<<3)+d|0;q[F>>2]=q[b>>2];q[F+4>>2]=P;b=b+8|0;N=N+1|0;F=o[a+24|0];if((N|0)<((F|0)>(c|0)?c:F)<<24>>24){continue}break}}if((F|0)>=(c|0)){break b}break a;case 6:F=o[a+24|0];if(((F|0)>(c|0)?c:F)<<24>>24>=1){O=q[q[a>>2]>>2];F=q[a+48>>2]+Up(q[a+40>>2],q[a+44>>2],b,0)|0;b=O+F|0;while(1){P=q[b+4>>2];F=(N<<3)+d|0;q[F>>2]=q[b>>2];q[F+4>>2]=P;b=b+8|0;N=N+1|0;F=o[a+24|0];if((N|0)<((F|0)>(c|0)?c:F)<<24>>24){continue}break}}if((F|0)>=(c|0)){break b}break a;case 7:F=o[a+24|0];if(((F|0)>(c|0)?c:F)<<24>>24<1){break c}O=q[q[a>>2]>>2];F=q[a+48>>2]+Up(q[a+40>>2],q[a+44>>2],b,0)|0;b=O+F|0;while(1){F=(N<<3)+d|0;O=F;Q=u[b>>2];f:{if(x(y(Q))<x(0x8000000000000000)){P=x(y(Q))>=x(1)?Q>x(0)?~~x(A(x(C(x(Q/x(4294967296)))),x(4294967296)))>>>0:~~x(D(x(x(Q-x(~~Q>>>0>>>0))/x(4294967296))))>>>0:0;S=~~Q>>>0;break f}P=-2147483648;S=0}q[O>>2]=S;q[F+4>>2]=P;b=b+4|0;N=N+1|0;F=o[a+24|0];if((N|0)<((F|0)>(c|0)?c:F)<<24>>24){continue}break}break c;case 8:F=o[a+24|0];if(((F|0)>(c|0)?c:F)<<24>>24<1){break d}O=q[q[a>>2]>>2];F=q[a+48>>2]+Up(q[a+40>>2],q[a+44>>2],b,0)|0;b=O+F|0;while(1){F=(N<<3)+d|0;O=F;R=v[b>>3];g:{if(y(R)<0x8000000000000000){P=y(R)>=1?R>0?~~A(C(R/4294967296),4294967295)>>>0:~~D((R- +(~~R>>>0>>>0))/4294967296)>>>0:0;S=~~R>>>0;break g}P=-2147483648;S=0}q[O>>2]=S;q[F+4>>2]=P;b=b+8|0;N=N+1|0;F=o[a+24|0];if((N|0)<((F|0)>(c|0)?c:F)<<24>>24){continue}break}break d;case 9:break e}}F=o[a+24|0];if(((F|0)>(c|0)?c:F)<<24>>24>=1){O=q[q[a>>2]>>2];F=q[a+48>>2]+Up(q[a+40>>2],q[a+44>>2],b,0)|0;b=O+F|0;while(1){F=(N<<3)+d|0;q[F>>2]=r[b|0];q[F+4>>2]=0;b=b+1|0;N=N+1|0;F=o[a+24|0];if((N|0)<((F|0)>(c|0)?c:F)<<24>>24){continue}break}}if((F|0)>=(c|0)){break b}wp((F<<3)+d|0,0,c-F<<3);break b}if((F|0)>=(c|0)){break b}break a}if((F|0)>=(c|0)){break b}wp((F<<3)+d|0,0,c-F<<3)}return}wp((F<<3)+d|0,0,c-F<<3)}function Ff(a){a=a|0;var b=0;q[a>>2]=3904;$g(a+108|0);q[a>>2]=3364;b=q[a+32>>2];if(b){q[a+36>>2]=b;pp(b)}return a|0}function Gf(a){a=a|0;var c=0;q[a>>2]=3904;$g(a+108|0);q[a>>2]=3364;c=q[a+32>>2];if(c){q[a+36>>2]=c;pp(c)}pp(a)}function Hf(a){a=a|0;return 6}function If(a){a=a|0;a:{if(!q[a- -64>>2]|!q[a+68>>2]|(!q[a+44>>2]|!q[a+48>>2])){break a}if(!q[a+52>>2]){break a}return q[a+56>>2]!=0|0}return 0}function Jf(a,d){a=a|0;d=d|0;var o=0;if(!(q[d+56>>2]|r[d+24|0]!=3)){q[a- -64>>2]=d;o=1}return o|0}function Kf(a,d){a=a|0;d=d|0;var r=0,U=0,V=0,W=0;r=T-16|0;T=r;q[r+12>>2]=q[a+12>>2];U=q[d+20>>2];V=U;W=q[d+16>>2];if((U|0)<0?1:(U|0)<=0?W>>>0>0?0:1:0){Vb(d,q[d+4>>2],r+12|0,r+16|0);W=q[d+16>>2];V=q[d+20>>2]}q[r+8>>2]=q[a+16>>2];if((V|0)<0?1:(V|0)<=0?W>>>0>0?0:1:0){Vb(d,q[d+4>>2],r+8|0,r+12|0)}eh(a+108|0,d);T=r+16|0;return 1}function Lf(a,d,X,Y,Z,_){a=a|0;d=d|0;X=X|0;Y=Y|0;Z=Z|0;_=_|0;var $=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;ca=T-48|0;T=ca;q[a+68>>2]=_;ia=a+108|0;bh(ia);Y=q[a+56>>2];Z=q[Y>>2];_=Y+4|0;$=q[_>>2];q[ca+40>>2]=0;q[ca+32>>2]=0;q[ca+36>>2]=0;q[ca+24>>2]=0;q[ca+28>>2]=0;q[ca+16>>2]=0;q[ca+20>>2]=0;q[ca+8>>2]=0;q[ca+12>>2]=0;q[ca>>2]=0;q[ca+4>>2]=0;a:{Z=$-Z|0;if((Z|0)<1){break a}aa=q[Y>>2];if((aa|0)!=q[_>>2]){pa=Z>>2;qa=a+60|0;ra=X+4|0;ja=a+8|0;la=a+16|0;ka=a+32|0;ma=a+12|0;na=a+28|0;ha=a+20|0;oa=a+24|0;sa=a+56|0;while(1){Mf(qa,q[(ga<<2)+aa>>2],ca+32|0);_=q[ca+36>>2];$=_>>31;Z=q[ca+32>>2];ba=Z>>31;aa=q[ca+40>>2];da=aa>>31;Y=0;da=da^aa+da;$=da+(($^_+$)+(ba^Z+ba)|0)|0;if($>>>0<da>>>0){Y=1}b:{if(!(Y|$)){ea=q[a+104>>2];q[ca+32>>2]=ea;Z=ea;break b}ea=q[a+104>>2];ba=ea;da=ba>>31;_=Vp(Up(ba,da,_,_>>31),V,$,Y);q[ca+36>>2]=_;Z=Vp(Up(ba,da,Z,Z>>31),V,$,Y);q[ca+32>>2]=Z;Y=Z>>31;Y=(ba-(Y+Z^Y)|0)+((_|0)<0?_:0-_|0)|0;aa=(aa|0)>-1?Y:0-Y|0;q[ca+40>>2]=aa}c:{if((Z|0)>=0){$=_+ea|0;da=aa+ea|0;break c}d:{if((_|0)<=-1){Y=aa>>31;$=Y+aa^Y;break d}Y=aa>>31;$=q[a+100>>2]-(Y+aa^Y)|0}if((aa|0)<=-1){Y=_>>31;da=Y+_^Y;break c}Y=_>>31;da=q[a+100>>2]-(Y+_^Y)|0}Y=q[a+100>>2];fa=Y;ba=Y;e:{if(!($|da)){break e}if(!((Y|0)!=(da|0)|$)){fa=da;ba=da;break e}if(!((Y|0)!=($|0)|da)){fa=$;ba=$;break e}if(!((ea|0)>=(da|0)|$)){fa=(ea<<1)-da|0;ba=0;break e}if(!((Y|0)!=($|0)|(ea|0)<=(da|0))){fa=(ea<<1)-da|0;ba=$;break e}if(!((Y|0)!=(da|0)|(ea|0)<=($|0))){fa=da;ba=(ea<<1)-$|0;break e}if(da){fa=da;ba=$;break e}fa=0;ba=$;if((ea|0)>=($|0)){break e}ba=(ea<<1)-$|0}q[ca+28>>2]=fa;q[ca+24>>2]=ba;q[ca+40>>2]=0-aa;q[ca+36>>2]=0-_;q[ca+32>>2]=0-Z;f:{if((Z|0)<=0){Z=ea-aa|0;_=ea-_|0;break f}Z=_>>31;Z=Z+_^Z;Z=(aa|0)>0?Z:Y-Z|0;$=aa>>31;$=$+aa^$;_=(_|0)>0?$:Y-$|0}g:{if(!(Z|_)){Z=Y;break g}if(!((Y|0)!=(Z|0)|_)){Z=Y;break g}$=(Y|0)!=(_|0);if(!(Z|$)){Z=Y;break g}if(!((ea|0)>=(Z|0)|_)){Z=(ea<<1)-Z|0;Y=0;break g}if(!((ea|0)<=(Z|0)|$)){Z=(ea<<1)-Z|0;break g}if(!((Y|0)!=(Z|0)|(ea|0)<=(_|0))){Z=Y;Y=(ea<<1)-_|0;break g}if(Z){Y=_;break g}Z=0;if((ea|0)>=(_|0)){Y=_;break g}Y=(ea<<1)-_|0}q[ca+20>>2]=Z;q[ca+16>>2]=Y;aa=q[ja>>2];h:{if((aa|0)<1){break h}da=(ga<<3)+d|0;ba=ca+24|0;$=0;while(1){_=0;i:{if((aa|0)<=0){Y=q[ka>>2];break i}while(1){Z=_<<2;fa=q[Z+ba>>2];aa=q[la>>2];j:{if((fa|0)>(aa|0)){Y=q[ka>>2];q[Z+Y>>2]=aa;break j}Y=q[ka>>2];Z=Z+Y|0;aa=q[ma>>2];if((fa|0)<(aa|0)){q[Z>>2]=aa;break j}q[Z>>2]=fa}_=_+1|0;aa=q[ja>>2];if((_|0)<(aa|0)){continue}break}}_=$<<2;Z=_+(ca+8|0)|0;ba=q[_+da>>2]-q[Y+_>>2]|0;q[Z>>2]=ba;_=Z;Z=q[na>>2];fa=ba+q[ha>>2]|0;k:{l:{if((ba|0)<(Z|0)){break l}if((ba|0)<=q[oa>>2]){break k}fa=ba-q[ha>>2]|0}q[_>>2]=fa}ba=Y;$=$+1|0;if(($|0)<(aa|0)){continue}break}$=0;ba=ca+16|0;if((aa|0)<1){break h}while(1){_=0;if((aa|0)>=1){while(1){Z=_<<2;fa=q[Z+ba>>2];aa=q[la>>2];m:{if((fa|0)>(aa|0)){q[Y+Z>>2]=aa;break m}Z=Y+Z|0;aa=q[ma>>2];if((fa|0)<(aa|0)){q[Z>>2]=aa;break m}q[Z>>2]=fa}_=_+1|0;aa=q[ja>>2];if((_|0)<(aa|0)){continue}break}Z=q[na>>2]}ba=$<<2;_=ba+ca|0;ba=q[ba+da>>2]-q[Y+ba>>2]|0;q[_>>2]=ba;n:{if((ba|0)<(Z|0)){ba=ba+q[ha>>2]|0}else{if((ba|0)<=q[oa>>2]){break n}ba=ba-q[ha>>2]|0}q[_>>2]=ba}ba=Y;$=$+1|0;if(($|0)<(aa|0)){continue}break}}$=q[a+104>>2];aa=q[ca+8>>2];o:{if(($|0)<(aa|0)){aa=aa-q[a+96>>2]|0;break o}if((aa|0)>=(0-$|0)){break o}aa=q[a+96>>2]+aa|0}q[ca+8>>2]=aa;Z=q[ca+12>>2];p:{if(($|0)<(Z|0)){Z=Z-q[a+96>>2]|0;break p}if((Z|0)>=(0-$|0)){break p}Z=q[a+96>>2]+Z|0}q[ca+12>>2]=Z;Y=q[ca>>2];q:{if(($|0)<(Y|0)){Y=Y-q[a+96>>2]|0;break q}if((Y|0)>=(0-$|0)){break q}Y=q[a+96>>2]+Y|0}q[ca>>2]=Y;_=q[ca+4>>2];r:{if(($|0)<(_|0)){_=_-q[a+96>>2]|0;break r}if((_|0)>=(0-$|0)){break r}_=q[a+96>>2]+_|0}$=ga<<1;q[ca+4>>2]=_;ba=Z>>31;da=ba+Z^ba;ba=aa>>31;da=da+(ba+aa^ba)|0;ba=_>>31;fa=ba+_^ba;ba=Y>>31;s:{if((da|0)<(fa+(ba+Y^ba)|0)){ch(ia,0);Y=($<<2)+X|0;if((aa|0)<=-1){aa=q[a+96>>2]+aa|0}q[Y>>2]=aa;if((Z|0)>-1){_=Z;break s}_=q[a+96>>2]+Z|0;break s}ch(ia,1);Z=($<<2)+X|0;if((Y|0)<=-1){Y=q[a+96>>2]+Y|0}q[Z>>2]=Y;if((_|0)>-1){break s}_=q[a+96>>2]+_|0}q[($<<2)+ra>>2]=_;ga=ga+1|0;if((ga|0)>=(pa|0)){break a}Y=q[sa>>2];aa=q[Y>>2];if(q[Y+4>>2]-aa>>2>>>0>ga>>>0){continue}break}}Uo();F()}T=ca+48|0;return 1}function Mf(a,d,X){a=a|0;d=d|0;X=X|0;var Y=0,Z=0,_=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,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;Z=T-96|0;T=Z;Y=q[a+16>>2];o[Z+92|0]=1;q[Z+88>>2]=d;q[Z+84>>2]=d;q[Z+80>>2]=Y;ta=q[a+20>>2];_=q[ta>>2];a:{b:{c:{d:{Y=q[q[Y+28>>2]+(d<<2)>>2];if(q[ta+4>>2]-_>>2>>>0>Y>>>0){Y=q[q[a+8>>2]+(q[_+(Y<<2)>>2]<<2)>>2];_=q[a+4>>2];if(!r[_+84|0]){Y=q[q[_+68>>2]+(Y<<2)>>2]}q[Z+72>>2]=0;q[Z+76>>2]=0;ta=Z- -64|0;q[ta>>2]=0;q[ta+4>>2]=0;q[Z+56>>2]=0;q[Z+60>>2]=0;Ef(_,Y,o[_+24|0],Z+56|0);if((d|0)==-1){break a}Y=d+1|0;ta=(Y>>>0)%3|0?Y:d+ -2|0;Da=((d>>>0)%3|0?-1:2)+d|0;Ka=a+28|0;ua=!q[Ka>>2];La=a+20|0;Ma=a+16|0;Na=a+8|0;while(1){_=ta;Y=Da;e:{if(ua){break e}Y=d+1|0;_=(Y>>>0)%3|0?Y:d+ -2|0;Y=d+ -1|0;if((d>>>0)%3){break e}Y=d+2|0}ua=q[La>>2];d=q[ua>>2];_=q[q[q[Ma>>2]+28>>2]+(_<<2)>>2];if(q[ua+4>>2]-d>>2>>>0<=_>>>0){break d}_=q[q[Na>>2]+(q[d+(_<<2)>>2]<<2)>>2];ua=a+4|0;d=q[ua>>2];if(!r[d+84|0]){_=q[q[d+68>>2]+(_<<2)>>2]}q[Z+48>>2]=0;q[Z+52>>2]=0;q[Z+40>>2]=0;q[Z+44>>2]=0;q[Z+32>>2]=0;q[Z+36>>2]=0;Ef(d,_,o[d+24|0],Z+32|0);_=q[La>>2];d=q[_>>2];Y=q[q[q[Ma>>2]+28>>2]+(Y<<2)>>2];if(q[_+4>>2]-d>>2>>>0<=Y>>>0){break c}_=q[q[Na>>2]+(q[d+(Y<<2)>>2]<<2)>>2];d=q[ua>>2];if(!r[d+84|0]){_=q[q[d+68>>2]+(_<<2)>>2]}ua=Z+24|0;Y=ua;q[Y>>2]=0;q[Y+4>>2]=0;xa=Z+16|0;Y=xa;q[Y>>2]=0;q[Y+4>>2]=0;q[Z+8>>2]=0;q[Z+12>>2]=0;Ef(d,_,o[d+24|0],Z+8|0);Y=q[Z+8>>2];d=q[Z+56>>2];Ea=Y-d|0;Fa=q[Z+60>>2];_=q[Z+12>>2]-(Fa+(Y>>>0<d>>>0)|0)|0;Ga=q[Z+40>>2];Y=q[Z+64>>2];Oa=Ga-Y|0;Ha=q[Z+68>>2];Ga=q[Z+44>>2]-(Ha+(Ga>>>0<Y>>>0)|0)|0;Ia=Up(Ea,_,Oa,Ga);Ja=va-Ia|0;ya=ya-(V+(va>>>0<Ia>>>0)|0)|0;va=q[xa>>2];Ia=va-Y|0;xa=q[xa+4>>2]-((va>>>0<Y>>>0)+Ha|0)|0;va=q[Z+32>>2];Ha=va-d|0;Fa=q[Z+36>>2]-((va>>>0<d>>>0)+Fa|0)|0;Y=Up(Ia,xa,Ha,Fa);va=Y+Ja|0;d=V+ya|0;d=va>>>0<Y>>>0?d+1|0:d;ya=d;Y=wa;Aa=Ea;Pa=_;wa=q[Z+48>>2];d=q[Z+72>>2];_=wa-d|0;Ea=q[Z+76>>2];Ja=q[Z+52>>2]-(Ea+(wa>>>0<d>>>0)|0)|0;Aa=Up(Aa,Pa,_,Ja);wa=Y+Aa|0;Y=V+Ba|0;Y=wa>>>0<Aa>>>0?Y+1|0:Y;Ba=wa;wa=q[ua>>2];Aa=wa-d|0;d=q[ua+4>>2]-((wa>>>0<d>>>0)+Ea|0)|0;ua=Up(Aa,d,Ha,Fa);wa=Ba-ua|0;Ba=Y-(V+(Ba>>>0<ua>>>0)|0)|0;Y=Up(Ia,xa,_,Ja);_=za-Y|0;Ca=Ca-(V+(za>>>0<Y>>>0)|0)|0;Y=Up(Aa,d,Oa,Ga);za=Y+_|0;d=V+Ca|0;d=za>>>0<Y>>>0?d+1|0:d;Ca=d;Of(Z+80|0);xa=q[Ka>>2];ua=!xa;d=q[Z+88>>2];if((d|0)!=-1){continue}break}d=Ba;Y=d>>31;a=d>>31;d=a+d|0;ta=Y+wa|0;if(ta>>>0<Y>>>0){d=d+1|0}Y=Y^ta;ua=a^d;d=Ca;a=d>>31;d=d>>31;ta=a;Da=Ca+a|0;_=d+za|0;if(_>>>0<d>>>0){Da=Da+1|0}a=d^_;_=ta^Da;f:{if((ya|0)<-1?1:(ya|0)<=-1?va>>>0>4294967295?0:1:0){d=va;ta=a+(Y-d|0)|0;d=_+(ua-((Y>>>0<d>>>0)+ya|0)|0)|0;Y=ta;a=Y>>>0<a>>>0?d+1|0:d;if(!xa){break f}break b}d=ua+ya|0;ta=Y;Y=va;ta=ta+Y|0;if(ta>>>0<Y>>>0){d=d+1|0}Y=a;ta=Y+ta|0;a=d+_|0;a=ta>>>0<Y>>>0?a+1|0:a;Y=ta;if(xa){break b}}if((Y|0)<536870913){break a}a=((a&536870911)<<3|Y>>>29)&7;d=0;va=Vp(va,ya,a,d);wa=Vp(wa,Ba,a,d);za=Vp(za,Ca,a,d);break a}Uo();F()}Uo();F()}Uo();F()}if((a|0)<0?1:(a|0)<=0?Y>>>0>=536870913?0:1:0){break a}d=a>>>29;a=(a&536870911)<<3|Y>>>29;va=Vp(va,ya,a,d);wa=Vp(wa,Ba,a,d);za=Vp(za,Ca,a,d)}q[X+8>>2]=va;q[X+4>>2]=wa;q[X>>2]=za;T=Z+96|0}function Nf(a,d){a=a|0;d=d|0;if(d>>>0<=1){q[a+28>>2]=d;a=1}else{a=0}return a|0}function Of(a){var d=0,T=0,X=0;d=q[a+8>>2];X=q[a>>2];a:{if(r[a+12|0]){b:{c:{d:{e:{if((d|0)==-1){break e}T=d+1|0;d=(T>>>0)%3|0?T:d+ -2|0;if((d|0)==-1|q[q[X>>2]+(d>>>3&536870908)>>2]>>>(d&31)&1){break e}d=q[q[q[X+64>>2]+12>>2]+(d<<2)>>2];if((d|0)!=-1){break d}}q[a+8>>2]=-1;break c}T=d+1|0;d=(T>>>0)%3|0?T:d+ -2|0;q[a+8>>2]=d;if((d|0)!=-1){break b}}d=-1;T=q[a+4>>2];f:{if((T|0)==-1){break f}T=T+((T>>>0)%3|0?-1:2)|0;if((T|0)==-1|q[q[X>>2]+(T>>>3&536870908)>>2]>>>(T&31)&1){break f}X=q[q[q[X+64>>2]+12>>2]+(T<<2)>>2];if((X|0)==-1){break f}if((X>>>0)%3){d=X+ -1|0;break f}d=X+2|0}o[a+12|0]=0;q[a+8>>2]=d;return}if((d|0)!=q[a+4>>2]){break a}q[a+8>>2]=-1;return}T=-1;g:{if((d|0)==-1){break g}d=d+((d>>>0)%3|0?-1:2)|0;if((d|0)==-1|q[q[X>>2]+(d>>>3&536870908)>>2]>>>(d&31)&1){break g}d=q[q[q[X+64>>2]+12>>2]+(d<<2)>>2];if((d|0)==-1){break g}if((d>>>0)%3){T=d+ -1|0;break g}T=d+2|0}q[a+8>>2]=T}}function Pf(a,Qa,Ra,Sa,Ta,Ua){a=a|0;Qa=Qa|0;Ra=Ra|0;Sa=Sa|0;Ta=Ta|0;Ua=Ua|0;var 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,kb=0,lb=0,mb=0,nb=0;q[a+8>>2]=Ta;Va=a+32|0;Za=q[Va>>2];Ua=q[a+36>>2]-Za>>2;a:{if(Ua>>>0<Ta>>>0){pf(Va,Ta-Ua|0);break a}if(Ua>>>0<=Ta>>>0){break a}q[a+36>>2]=Za+(Ta<<2)}b:{if(!Sa){break b}Wa=1;Va=q[Qa>>2];c:{if((Sa|0)<=1){Ua=Va;break c}Ua=Va;while(1){Za=q[(Wa<<2)+Qa>>2];Ya=(Za|0)<(Ua|0);Ua=Ya?Za:Ua;Va=Ya?Va:(Za|0)>(Va|0)?Za:Va;Wa=Wa+1|0;if((Wa|0)!=(Sa|0)){continue}break}}q[a+16>>2]=Va;q[a+12>>2]=Ua;Sa=(Va>>31)-((Ua>>31)+(Va>>>0<Ua>>>0)|0)|0;Ua=Va-Ua|0;if(!Sa&Ua>>>0>2147483646|Sa>>>0>0){break b}Sa=Ua+1|0;q[a+20>>2]=Sa;Va=a+24|0;Ua=(Sa|0)/2|0;q[Va>>2]=Ua;q[a+28>>2]=0-Ua;if(Sa&1){break b}q[Va>>2]=Ua+ -1}Sa=(Ta&1073741823)!=(Ta|0)?-1:Ta<<2;Za=wp(zo(Sa),0,Sa);Sa=q[a+56>>2];gb=q[Sa>>2];Sa=q[Sa+4>>2]-gb|0;if((Sa|0)>=5){hb=q[a+48>>2];nb=q[a+52>>2];ab=a+8|0;cb=a+16|0;db=a+32|0;jb=a+12|0;kb=a+28|0;eb=a+20|0;lb=a+24|0;mb=Sa>>2;Ya=mb;while(1){fb=Ya;d:{e:{Ya=Ya+ -1|0;if(mb>>>0>Ya>>>0){Ua=w(Ta,Ya);Sa=q[(Ya<<2)+gb>>2];if((Sa|0)==-1){break e}Sa=q[q[hb+12>>2]+(Sa<<2)>>2];if((Sa|0)==-1){break e}Wa=-1;Xa=q[nb>>2];Va=q[hb>>2];bb=q[Xa+(q[Va+(Sa<<2)>>2]<<2)>>2];_a=Sa+1|0;_a=(_a>>>0)%3|0?_a:Sa+ -2|0;if((_a|0)!=-1){_a=q[Va+(_a<<2)>>2]}else{_a=-1}Sa=Sa+((Sa>>>0)%3|0?-1:2)|0;if((Sa|0)!=-1){Wa=q[Va+(Sa<<2)>>2]}if((bb|0)>=(Ya|0)){break e}Sa=q[(_a<<2)+Xa>>2];if((Sa|0)>=(Ya|0)){break e}Va=q[Xa+(Wa<<2)>>2];if((Va|0)>=(Ya|0)){break e}if((Ta|0)>=1){Wa=w(Ta,Va);Sa=w(Sa,Ta);Xa=w(Ta,bb);Va=0;while(1){q[(Va<<2)+Za>>2]=(q[(Va+Wa<<2)+Qa>>2]+q[(Sa+Va<<2)+Qa>>2]|0)-q[(Va+Xa<<2)+Qa>>2];Va=Va+1|0;if((Va|0)!=(Ta|0)){continue}break}}Sa=q[ab>>2];if((Sa|0)<1){break d}Ua=Ua<<2;_a=Ua+Ra|0;ib=Qa+Ua|0;Ua=Za;Wa=0;while(1){Va=0;f:{if((Sa|0)<=0){Sa=q[db>>2];break f}while(1){Xa=Va<<2;bb=q[Xa+Ua>>2];$a=q[cb>>2];g:{if((bb|0)>($a|0)){Sa=q[db>>2];q[Xa+Sa>>2]=$a;break g}Sa=q[db>>2];Xa=Xa+Sa|0;$a=q[jb>>2];if((bb|0)<($a|0)){q[Xa>>2]=$a;break g}q[Xa>>2]=bb}Va=Va+1|0;if((Va|0)<q[ab>>2]){continue}break}}Va=Wa<<2;Ua=Va+_a|0;Va=q[Va+ib>>2]-q[Sa+Va>>2]|0;q[Ua>>2]=Va;h:{if((Va|0)<q[kb>>2]){Va=Va+q[eb>>2]|0}else{if((Va|0)<=q[lb>>2]){break h}Va=Va-q[eb>>2]|0}q[Ua>>2]=Va}Ua=Sa;Wa=Wa+1|0;Sa=q[ab>>2];if((Wa|0)<(Sa|0)){continue}break}break d}Uo();F()}Sa=q[ab>>2];if((Sa|0)<1){break d}Ua=Ua<<2;_a=Ua+Ra|0;ib=Qa+Ua|0;Ua=(w(fb+ -2|0,Ta)<<2)+Qa|0;Wa=0;while(1){Va=0;i:{if((Sa|0)<=0){Sa=q[db>>2];break i}while(1){Xa=Va<<2;bb=q[Xa+Ua>>2];$a=q[cb>>2];j:{if((bb|0)>($a|0)){Sa=q[db>>2];q[Xa+Sa>>2]=$a;break j}Sa=q[db>>2];Xa=Xa+Sa|0;$a=q[jb>>2];if((bb|0)<($a|0)){q[Xa>>2]=$a;break j}q[Xa>>2]=bb}Va=Va+1|0;if((Va|0)<q[ab>>2]){continue}break}}Va=Wa<<2;Ua=Va+_a|0;Va=q[Va+ib>>2]-q[Sa+Va>>2]|0;q[Ua>>2]=Va;k:{if((Va|0)<q[kb>>2]){Va=Va+q[eb>>2]|0}else{if((Va|0)<=q[lb>>2]){break k}Va=Va-q[eb>>2]|0}q[Ua>>2]=Va}Ua=Sa;Wa=Wa+1|0;Sa=q[ab>>2];if((Wa|0)<(Sa|0)){continue}break}}if((fb|0)>2){continue}break}}if((Ta|0)>=1){wp(Za,0,Ta<<2)}Ya=a+8|0;Sa=q[Ya>>2];if((Sa|0)>=1){db=a+16|0;Ua=a+32|0;eb=a+12|0;gb=a+28|0;fb=a+20|0;hb=a+24|0;a=Za;Wa=0;while(1){Va=0;l:{if((Sa|0)<=0){Sa=q[Ua>>2];break l}while(1){Ta=Va<<2;ab=q[Ta+a>>2];cb=q[db>>2];m:{if((ab|0)>(cb|0)){Sa=q[Ua>>2];q[Ta+Sa>>2]=cb;break m}Sa=q[Ua>>2];Ta=Ta+Sa|0;cb=q[eb>>2];if((ab|0)<(cb|0)){q[Ta>>2]=cb;break m}q[Ta>>2]=ab}Va=Va+1|0;if((Va|0)<q[Ya>>2]){continue}break}}Ta=Wa<<2;a=Ta+Ra|0;Ta=q[Qa+Ta>>2]-q[Sa+Ta>>2]|0;q[a>>2]=Ta;n:{if((Ta|0)<q[gb>>2]){Ta=Ta+q[fb>>2]|0}else{if((Ta|0)<=q[hb>>2]){break n}Ta=Ta-q[fb>>2]|0}q[a>>2]=Ta}a=Sa;Wa=Wa+1|0;Sa=q[Ya>>2];if((Wa|0)<(Sa|0)){continue}break}}pp(Za);return 1}function Qf(a){a=a|0;var Qa=0;q[a>>2]=4956;Qa=q[a+152>>2];if(Qa){q[a+156>>2]=Qa;pp(Qa)}Qa=q[a+112>>2];if(Qa){q[a+116>>2]=Qa;pp(Qa)}Qa=q[a+96>>2];if(Qa){pp(Qa)}Qa=q[a+84>>2];if(Qa){pp(Qa)}Qa=q[a+72>>2];if(Qa){pp(Qa)}Qa=q[a+60>>2];if(Qa){pp(Qa)}q[a>>2]=3364;Qa=q[a+32>>2];if(Qa){q[a+36>>2]=Qa;pp(Qa)}return a|0}function Rf(a){a=a|0;pp(Qf(a))}function Sf(a,Ra,Sa,Ta,Ua,ob){a=a|0;Ra=Ra|0;Sa=Sa|0;Ta=Ta|0;Ua=Ua|0;ob=ob|0;var pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0;qb=T-240|0;T=qb;q[a+8>>2]=Ua;rb=a+32|0;pb=q[rb>>2];ob=q[a+36>>2]-pb>>2;a:{if(ob>>>0<Ua>>>0){pf(rb,Ua-ob|0);break a}if(ob>>>0<=Ua>>>0){break a}q[a+36>>2]=pb+(Ua<<2)}b:{if(!Ta){break b}tb=1;pb=q[Ra>>2];c:{if((Ta|0)<=1){rb=pb;break c}rb=pb;while(1){ob=q[(tb<<2)+Ra>>2];ub=(ob|0)<(rb|0);rb=ub?ob:rb;pb=ub?pb:(ob|0)>(pb|0)?ob:pb;tb=tb+1|0;if((tb|0)!=(Ta|0)){continue}break}}q[a+16>>2]=pb;q[a+12>>2]=rb;Ta=rb;ob=(pb>>31)-((pb>>>0<Ta>>>0)+(Ta>>31)|0)|0;Ta=pb-Ta|0;if(!ob&Ta>>>0>2147483646|ob>>>0>0){break b}Ta=Ta+1|0;q[a+20>>2]=Ta;rb=a+24|0;ob=(Ta|0)/2|0;q[rb>>2]=ob;q[a+28>>2]=0-ob;if(Ta&1){break b}q[rb>>2]=ob+ -1}Vb=q[a+52>>2];Nb=q[a+48>>2];q[qb+200>>2]=0;q[qb+204>>2]=0;q[qb+192>>2]=0;q[qb+196>>2]=0;q[qb+184>>2]=0;q[qb+188>>2]=0;Ta=qb+176|0;q[Ta>>2]=0;q[Ta+4>>2]=0;q[qb+168>>2]=0;q[qb+172>>2]=0;q[qb+160>>2]=0;q[qb+164>>2]=0;d:{if(!Ua){Ta=0;break d}pf(qb+160|0,Ua);sb=q[Ta>>2];Ta=q[qb+172>>2]}ob=sb-Ta>>2;e:{if(ob>>>0>=Ua>>>0){if(ob>>>0<=Ua>>>0){break e}q[qb+176>>2]=Ta+(Ua<<2);break e}pf(qb+160|12,Ua-ob|0)}ob=q[qb+184>>2];Ta=q[qb+188>>2]-ob>>2;f:{if(Ta>>>0>=Ua>>>0){if(Ta>>>0<=Ua>>>0){break f}q[qb+188>>2]=ob+(Ua<<2);break f}pf(qb+184|0,Ua-Ta|0)}ob=q[qb+196>>2];Ta=q[qb+200>>2]-ob>>2;g:{if(Ta>>>0>=Ua>>>0){if(Ta>>>0<=Ua>>>0){break g}q[qb+200>>2]=ob+(Ua<<2);break g}pf(qb+196|0,Ua-Ta|0)}q[qb+152>>2]=0;q[qb+144>>2]=0;q[qb+148>>2]=0;h:{i:{if(Ua){if(Ua>>>0>=1073741824){break i}Ta=Ua<<2;ob=zo(Ta);q[qb+144>>2]=ob;rb=Ta+ob|0;q[qb+152>>2]=rb;wp(ob,0,Ta);q[qb+148>>2]=rb}Jb=a+152|0;ob=q[a+152>>2];Ta=q[a+156>>2]-ob>>2;j:{if(Ta>>>0<Ua>>>0){pf(Jb,Ua-Ta|0);break j}if(Ta>>>0<=Ua>>>0){break j}q[a+156>>2]=ob+(Ua<<2)}q[qb+120>>2]=0;q[qb+124>>2]=0;q[qb+112>>2]=0;q[qb+116>>2]=0;q[qb+104>>2]=0;q[qb+108>>2]=0;q[qb+96>>2]=0;q[qb+100>>2]=0;q[qb+88>>2]=0;q[qb+92>>2]=0;q[qb+80>>2]=0;q[qb+84>>2]=0;q[qb+72>>2]=0;q[qb+76>>2]=0;q[qb+64>>2]=0;q[qb+68>>2]=0;q[qb+56>>2]=0;q[qb+48>>2]=0;q[qb+52>>2]=0;if(Ua){Ta=Ua<<2;Cb=zo(Ta);q[qb+48>>2]=Cb;Kb=Ta+Cb|0;q[qb+56>>2]=Kb;wp(Cb,0,Ta);q[qb+52>>2]=Kb}Ta=q[a+56>>2];sb=q[Ta>>2];Ta=q[Ta+4>>2]-sb|0;if((Ta|0)<5){break h}Db=Ta>>>2;rb=Db+ -1|0;if(Ta>>2>>>0>rb>>>0){Ob=Ua<<2;Lb=a+112|0;Wb=qb+141|0;Pb=qb+36|0;Qb=qb+24|0;Hb=qb+20|0;Xb=Hb+24|0;Rb=Hb+16|0;Mb=a+152|0;Yb=a+28|0;Sb=a+20|0;while(1){ub=0;Ab=rb;rb=q[(rb<<2)+sb>>2];k:{if((rb|0)==-1){break k}sb=q[Nb+12>>2];Eb=rb+((rb>>>0)%3|0?-1:2)|0;Fb=sb+(Eb<<2)|0;wb=1;tb=0;Ta=rb;while(1){pb=q[sb+(Ta<<2)>>2];l:{if((pb|0)==-1){break l}ob=-1;vb=q[Vb>>2];ub=q[Nb>>2];yb=q[vb+(q[ub+(pb<<2)>>2]<<2)>>2];xb=pb+1|0;xb=(xb>>>0)%3|0?xb:pb+ -2|0;if((xb|0)!=-1){xb=q[ub+(xb<<2)>>2]}else{xb=-1}pb=pb+((pb>>>0)%3|0?-1:2)|0;if((pb|0)!=-1){ob=q[ub+(pb<<2)>>2]}if((yb|0)>=(Ab|0)){break l}pb=q[(xb<<2)+vb>>2];if((pb|0)>=(Ab|0)){break l}ob=q[vb+(ob<<2)>>2];if((ob|0)>=(Ab|0)){break l}ub=q[(qb+160|0)+w(tb,12)>>2];if((Ua|0)>=1){ob=w(Ua,ob);vb=w(Ua,pb);yb=w(Ua,yb);pb=0;while(1){q[ub+(pb<<2)>>2]=(q[(ob+pb<<2)+Ra>>2]+q[(pb+vb<<2)+Ra>>2]|0)-q[(pb+yb<<2)+Ra>>2];pb=pb+1|0;if((pb|0)!=(Ua|0)){continue}break}}ub=4;tb=tb+1|0;if((tb|0)==4){break k}}m:{if(wb&1){ub=Ta+1|0;Ta=(ub>>>0)%3|0?ub:Ta+ -2|0;ob=-1;if((Ta|0)==-1){break m}Ta=q[sb+(Ta<<2)>>2];ob=-1;if((Ta|0)==-1){break m}ob=Ta+1|0;ob=(ob>>>0)%3|0?ob:Ta+ -2|0;break m}Ta=((Ta>>>0)%3|0?-1:2)+Ta|0;ob=-1;if((Ta|0)==-1){break m}Ta=q[sb+(Ta<<2)>>2];ob=-1;if((Ta|0)==-1){break m}ob=Ta+ -1|0;if((Ta>>>0)%3){break m}ob=Ta+2|0}if((ob|0)==(rb|0)){ub=tb;break k}Ta=ob;ob=(ob|0)!=-1;pb=(ob|wb^-1)&1;Ta=pb?Ta:-1;wb=ob&wb;if(!((Eb|0)==-1|pb)){ob=q[Fb>>2];if((ob|0)==-1){ub=tb;break k}wb=0;if((ob>>>0)%3){Ta=ob+ -1|0}else{Ta=ob+2|0}}ub=tb;if((Ta|0)!=-1){continue}break}}tb=0;o[qb+16|0]=0;q[qb+8>>2]=0;q[qb+12>>2]=0;q[Xb>>2]=0;q[Rb>>2]=0;q[Rb+4>>2]=0;Ta=Hb;q[Ta+8>>2]=0;q[Ta+12>>2]=0;q[Ta>>2]=0;q[Ta+4>>2]=0;Tb=w(Ua,Ab)<<2;Eb=Tb+Ra|0;sb=(w(Db+ -2|0,Ua)<<2)+Ra|0;pb=q[Mb>>2];rb=0;if((Ua|0)>0){while(1){ob=rb<<2;Ta=q[ob+sb>>2]-q[ob+Eb>>2]|0;q[ob+Cb>>2]=Ta;xb=ob+pb|0;ob=Ta>>31;q[xb>>2]=ob^Ta<<1;tb=(ob^Ta+ob)+tb|0;rb=rb+1|0;if((rb|0)!=(Ua|0)){continue}break}}Ph(qb+216|0,Lb,pb,Ua);Ta=Sh(qb+216|0);rb=V;pb=Th(qb+216|0);ob=pb+Ta|0;Ta=V+rb|0;Ta=ob>>>0<pb>>>0?Ta+1|0:Ta;rb=ob;Fb=(ub|0)>0;if(Fb){vb=(ub<<3)+ -8|0;pb=vb+(qb- -64|0)|0;yb=pb;Gb=pb;ob=q[pb+4>>2];xb=q[pb>>2];pb=ub;xb=xb+pb|0;if(xb>>>0<pb>>>0){ob=ob+1|0}pb=xb;q[Gb>>2]=pb;q[yb+4>>2]=ob;zb=D(Nh(pb,q[vb+(qb+96|0)>>2])*(+(pb>>>0)+4294967296*+(ob|0)));n:{if(y(zb)<0x8000000000000000){pb=y(zb)>=1?zb>0?~~A(C(zb/4294967296),4294967295)>>>0:~~D((zb- +(~~zb>>>0>>>0))/4294967296)>>>0:0;ob=~~zb>>>0;break n}pb=-2147483648;ob=0}Ta=Ta+pb|0;ob=ob+rb|0;if(ob>>>0<rb>>>0){Ta=Ta+1|0}rb=ob}q[qb+20>>2]=0;o[qb+16|0]=0;q[qb+8>>2]=rb;q[qb+12>>2]=tb;cc(Qb,sb,sb+Ob|0);vf(Pb,Cb,Kb);if((ub|0)>=1){yb=(qb+140|0)+ub|0;xb=yb+ -2|0;vb=yb+ -1|0;Ta=(ub<<3)+ -8|0;Ub=Ta+(qb- -64|0)|0;Zb=Ta+(qb+96|0)|0;tb=1;Ib=0;while(1){wp(qb+140|0,1,ub);Ib=Ib+1|0;wp(qb+140|0,0,Ib);_b=q[qb+52>>2];$b=q[qb+48>>2];o:{p:while(1){ob=(Ua|0)<1;if(!ob){wp(q[qb+144>>2],0,Ob)}Ta=0;rb=q[qb+144>>2];wb=0;while(1){if(!r[(qb+140|0)+Ta|0]){if(!ob){sb=q[(qb+160|0)+w(Ta,12)>>2];pb=0;while(1){Bb=pb<<2;Gb=Bb+rb|0;q[Gb>>2]=q[Gb>>2]+q[sb+Bb>>2];pb=pb+1|0;if((pb|0)!=(Ua|0)){continue}break}}wb=1<<Ta|wb}Ta=Ta+1|0;if((ub|0)!=(Ta|0)){continue}break}pb=0;q:{if((Ua|0)>0){Bb=q[qb+144>>2];while(1){Ta=Bb+(pb<<2)|0;q[Ta>>2]=q[Ta>>2]/(tb|0);pb=pb+1|0;if((pb|0)!=(Ua|0)){continue}break}ob=0;Ta=q[Mb>>2];if((Ua|0)<=0){break q}rb=0;while(1){sb=rb<<2;pb=q[sb+Bb>>2]-q[sb+Eb>>2]|0;q[sb+Cb>>2]=pb;Gb=Ta+sb|0;sb=pb>>31;q[Gb>>2]=sb^pb<<1;ob=(sb^pb+sb)+ob|0;rb=rb+1|0;if((rb|0)!=(Ua|0)){continue}break}break q}Ta=q[Mb>>2];ob=0}Ph(qb+216|0,Lb,Ta,Ua);rb=Sh(qb+216|0)+Th(qb+216|0)|0;pb=rb;if(Fb){Ta=q[Ub+4>>2];rb=q[Ub>>2];zb=D(Nh(rb,q[Zb>>2]+tb|0)*(+(rb>>>0)+4294967296*+(Ta|0)));r:{if(y(zb)<0x8000000000000000){Ta=~~zb>>>0;break r}Ta=0}pb=Ta+pb|0}Ta=q[qb+8>>2];if(!((pb|0)>(Ta|0)|(ob|0)>=q[qb+12>>2]?(pb|0)>=(Ta|0):0)){q[qb+20>>2]=tb;o[qb+16|0]=wb;q[qb+8>>2]=pb;q[qb+12>>2]=ob;vf(Qb,q[qb+144>>2],q[qb+148>>2]);vf(Pb,$b,_b)}if((vb|0)==(qb+140|0)){break o}sb=-1;Ta=r[vb|0];pb=Ta;while(1){rb=pb&255;ob=sb+ -1|0;wb=ob+yb|0;pb=r[wb|0];if(pb>>>0<rb>>>0){ob=vb;rb=yb;if(pb>>>0>=(Ta&255)>>>0){while(1){Ta=ob;ob=Ta+ -1|0;Bb=rb+ -2|0;rb=Ta;if(pb>>>0>=r[Bb|0]){continue}break}Ta=1}rb=sb+yb|0;o[wb|0]=Ta;o[ob|0]=pb;pb=vb;if((sb|0)==-1){continue p}while(1){Ta=r[rb|0];o[rb|0]=r[pb|0];o[pb|0]=Ta;rb=rb+1|0;pb=pb+ -1|0;if(rb>>>0<pb>>>0){continue}break}continue p}sb=ob;if((wb|0)!=(qb+140|0)){continue}break}break}if(vb>>>0<=qb+140>>>0){break o}ob=r[qb+140|0];o[qb+140|0]=Ta;o[vb|0]=ob;sb=Wb;pb=xb;if(sb>>>0>=pb>>>0){break o}while(1){Ta=r[sb|0];o[sb|0]=r[pb|0];o[pb|0]=Ta;sb=sb+1|0;pb=pb+ -1|0;if(sb>>>0<pb>>>0){continue}break}}tb=tb+1|0;if((ub|0)!=(Ib|0)){continue}break}}if(Fb){Ta=((ub<<3)+qb|0)+88|0;rb=Ta;pb=q[qb+20>>2];ob=pb+q[Ta>>2]|0;Ta=q[Ta+4>>2]+(pb>>31)|0;q[rb>>2]=ob;q[rb+4>>2]=ob>>>0<pb>>>0?Ta+1|0:Ta}s:{if((Ua|0)<=0){rb=q[Jb>>2];break s}rb=q[Jb>>2];pb=0;ob=q[qb+36>>2];while(1){tb=pb<<2;Ta=q[tb+ob>>2];q[rb+tb>>2]=Ta<<1^Ta>>31;pb=pb+1|0;if((pb|0)!=(Ua|0)){continue}break}}Rh(qb+216|0,Lb,rb,Ua);t:{if(!Fb){break t}Ta=w(ub,12)+a|0;vb=Ta+56|0;rb=Ta+52|0;Ta=Ta+48|0;sb=0;while(1){u:{tb=q[vb>>2];ob=tb<<5;pb=q[rb>>2];v:{if(!(r[qb+16|0]>>>sb&1)){if((ob|0)==(pb|0)){if((pb+1|0)<=-1){break u}ob=Ta;if(pb>>>0<=1073741822){pb=pb+32&-32;tb=tb<<6;pb=tb>>>0<pb>>>0?pb:tb}else{pb=2147483647}Oe(ob,pb);pb=q[rb>>2]}q[rb>>2]=pb+1;ob=q[Ta>>2]+(pb>>>3&536870908)|0;q[ob>>2]=q[ob>>2]|1<<(pb&31);break v}if((ob|0)==(pb|0)){if((pb+1|0)<=-1){break u}ob=Ta;if(pb>>>0<=1073741822){pb=pb+32&-32;tb=tb<<6;pb=tb>>>0<pb>>>0?pb:tb}else{pb=2147483647}Oe(ob,pb);pb=q[rb>>2]}q[rb>>2]=pb+1;ob=q[Ta>>2]+(pb>>>3&536870908)|0;tb=q[ob>>2];ac=ob,bc=Yp(-2,pb)&tb,q[ac>>2]=bc}sb=sb+1|0;if((ub|0)!=(sb|0)){continue}break t}break}To();F()}tb=a+8|0;sb=q[tb>>2];if((sb|0)>=1){vb=Sa+Tb|0;ub=q[qb+24>>2];wb=0;while(1){pb=0;w:{if((sb|0)<=0){ob=q[a+32>>2];break w}while(1){Ta=pb<<2;rb=q[Ta+ub>>2];sb=q[a+16>>2];x:{if((rb|0)>(sb|0)){ob=q[a+32>>2];q[Ta+ob>>2]=sb;break x}ob=q[a+32>>2];Ta=Ta+ob|0;sb=q[a+12>>2];if((rb|0)<(sb|0)){q[Ta>>2]=sb;break x}q[Ta>>2]=rb}pb=pb+1|0;if((pb|0)<q[tb>>2]){continue}break}}rb=wb<<2;Ta=rb+vb|0;rb=q[rb+Eb>>2]-q[ob+rb>>2]|0;q[Ta>>2]=rb;y:{if((rb|0)<q[Yb>>2]){rb=rb+q[Sb>>2]|0}else{if((rb|0)<=q[a+24>>2]){break y}rb=rb-q[Sb>>2]|0}q[Ta>>2]=rb}ub=ob;wb=wb+1|0;sb=q[tb>>2];if((wb|0)<(sb|0)){continue}break}}Ta=q[qb+36>>2];if(Ta){q[qb+40>>2]=Ta;pp(Ta)}Ta=q[qb+24>>2];if(Ta){q[qb+28>>2]=Ta;pp(Ta)}if((Db|0)<3){break h}Db=Ab;Ta=q[a+56>>2];sb=q[Ta>>2];rb=Ab+ -1|0;if(q[Ta+4>>2]-sb>>2>>>0>rb>>>0){continue}break}}Uo();F()}To();F()}pb=0;ob=q[qb+160>>2];if((Ua|0)>0){while(1){q[(pb<<2)+ob>>2]=0;pb=pb+1|0;if((pb|0)!=(Ua|0)){continue}break}}ub=a+8|0;sb=q[ub>>2];if((sb|0)>=1){vb=a+16|0;rb=a+32|0;yb=a+12|0;Db=a+28|0;Ab=a+20|0;Hb=a+24|0;a=0;while(1){pb=0;z:{if((sb|0)<=0){tb=q[rb>>2];break z}while(1){Ta=pb<<2;Ua=q[Ta+ob>>2];sb=q[vb>>2];A:{if((Ua|0)>(sb|0)){tb=q[rb>>2];q[Ta+tb>>2]=sb;break A}tb=q[rb>>2];Ta=Ta+tb|0;sb=q[yb>>2];if((Ua|0)<(sb|0)){q[Ta>>2]=sb;break A}q[Ta>>2]=Ua}pb=pb+1|0;if((pb|0)<q[ub>>2]){continue}break}}Ua=a<<2;Ta=Ua+Sa|0;Ua=q[Ra+Ua>>2]-q[Ua+tb>>2]|0;q[Ta>>2]=Ua;B:{if((Ua|0)<q[Db>>2]){Ua=Ua+q[Ab>>2]|0}else{if((Ua|0)<=q[Hb>>2]){break B}Ua=Ua-q[Ab>>2]|0}q[Ta>>2]=Ua}ob=tb;a=a+1|0;sb=q[ub>>2];if((a|0)<(sb|0)){continue}break}}a=q[qb+48>>2];if(a){q[qb+52>>2]=a;pp(a)}a=q[qb+144>>2];if(a){q[qb+148>>2]=a;pp(a)}a=q[qb+196>>2];if(a){q[qb+200>>2]=a;pp(a)}a=q[qb+184>>2];if(a){q[qb+188>>2]=a;pp(a)}a=q[qb+172>>2];if(a){q[qb+176>>2]=a;pp(a)}a=q[qb+160>>2];if(a){q[qb+164>>2]=a;pp(a)}T=qb+240|0;return 1}function Tf(a){a=a|0;var Ra=0;q[a>>2]=5192;Ra=q[a+76>>2];if(Ra){pp(Ra)}q[a>>2]=3364;Ra=q[a+32>>2];if(Ra){q[a+36>>2]=Ra;pp(Ra)}return a|0}function Uf(a){a=a|0;var Sa=0;q[a>>2]=5192;Sa=q[a+76>>2];if(Sa){pp(Sa)}q[a>>2]=3364;Sa=q[a+32>>2];if(Sa){q[a+36>>2]=Sa;pp(Sa)}pp(a)}function Vf(a,Ta,Ua,ob,cc,dc){a=a|0;Ta=Ta|0;Ua=Ua|0;ob=ob|0;cc=cc|0;dc=dc|0;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,uc=0;q[a+8>>2]=cc;q[a- -64>>2]=dc;ec=a+32|0;fc=q[ec>>2];dc=q[a+36>>2]-fc>>2;a:{if(dc>>>0<cc>>>0){pf(ec,cc-dc|0);break a}if(dc>>>0<=cc>>>0){break a}q[a+36>>2]=fc+(cc<<2)}b:{if(!ob){break b}fc=1;dc=q[Ta>>2];c:{if((ob|0)<=1){ec=dc;break c}ec=dc;while(1){gc=q[(fc<<2)+Ta>>2];hc=(gc|0)<(ec|0);ec=hc?gc:ec;dc=hc?dc:(gc|0)>(dc|0)?gc:dc;fc=fc+1|0;if((fc|0)!=(ob|0)){continue}break}}q[a+16>>2]=dc;q[a+12>>2]=ec;ob=(dc>>31)-((ec>>31)+(dc>>>0<ec>>>0)|0)|0;dc=dc-ec|0;if(!ob&dc>>>0>2147483646|ob>>>0>0){break b}ob=dc+1|0;q[a+20>>2]=ob;ec=a+24|0;dc=(ob|0)/2|0;q[ec>>2]=dc;q[a+28>>2]=0-dc;if(ob&1){break b}q[ec>>2]=dc+ -1}dc=q[a+56>>2];ob=q[dc>>2];d:{dc=q[dc+4>>2]-ob|0;if((dc|0)<1){break d}fc=(dc>>>2)+ -1|0;if(dc>>2>>>0>fc>>>0){nc=a+60|0;ec=a+68|0;gc=a+8|0;oc=a+16|0;hc=a+32|0;pc=a+12|0;qc=a+28|0;mc=a+20|0;rc=a+24|0;sc=a+56|0;while(1){Wf(nc,q[(fc<<2)+ob>>2],Ta,fc);ob=q[gc>>2];if((ob|0)>=1){a=w(cc,fc)<<2;tc=a+Ua|0;uc=a+Ta|0;a=ec;kc=0;while(1){dc=0;e:{if((ob|0)<=0){ob=q[hc>>2];break e}while(1){ic=dc<<2;lc=q[ic+a>>2];jc=q[oc>>2];f:{if((lc|0)>(jc|0)){ob=q[hc>>2];q[ic+ob>>2]=jc;break f}ob=q[hc>>2];ic=ic+ob|0;jc=q[pc>>2];if((lc|0)<(jc|0)){q[ic>>2]=jc;break f}q[ic>>2]=lc}dc=dc+1|0;if((dc|0)<q[gc>>2]){continue}break}}dc=kc<<2;a=dc+tc|0;dc=q[dc+uc>>2]-q[ob+dc>>2]|0;q[a>>2]=dc;g:{if((dc|0)<q[qc>>2]){dc=dc+q[mc>>2]|0}else{if((dc|0)<=q[rc>>2]){break g}dc=dc-q[mc>>2]|0}q[a>>2]=dc}a=ob;kc=kc+1|0;ob=q[gc>>2];if((kc|0)<(ob|0)){continue}break}}fc=fc+ -1|0;if((fc|0)<0){break d}a=q[sc>>2];ob=q[a>>2];if(q[a+4>>2]-ob>>2>>>0>fc>>>0){continue}break}}Uo();F()}return 1}function Wf(a,Ta,Ua,ob){var cc=0,dc=0,vc=0,wc=0,xc=0,yc=0,zc=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,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=0,Vc=0,Wc=0,Xc=0;wc=T-80|0;T=wc;vc=-1;dc=-1;a:{if((Ta|0)==-1){break a}cc=((Ta>>>0)%3|0?-1:2)+Ta|0;xc=q[a+32>>2];Ac=Ta+1|0;Ta=(Ac>>>0)%3|0?Ac:Ta+ -2|0;if((Ta|0)!=-1){vc=q[q[xc>>2]+(Ta<<2)>>2]}if((cc|0)==-1){break a}dc=q[q[xc>>2]+(cc<<2)>>2]}cc=q[a+36>>2];Ta=q[cc>>2];b:{c:{d:{e:{f:{cc=q[cc+4>>2]-Ta>>2;if(!(cc>>>0<=vc>>>0|cc>>>0<=dc>>>0)){g:{Cc=q[Ta+(vc<<2)>>2];Ic=(Cc|0)>=(ob|0);if(Ic){break g}cc=q[Ta+(dc<<2)>>2];if((cc|0)>=(ob|0)){break g}vc=cc<<3;Ac=q[(vc|4)+Ua>>2];dc=Cc<<3;Ta=q[(dc|4)+Ua>>2];Pc=q[Ua+vc>>2];Bc=q[Ua+dc>>2];if(!((Pc|0)!=(Bc|0)|(Ta|0)!=(Ac|0))){q[a+8>>2]=Bc;q[a+12>>2]=Ta;break c}vc=q[q[a+4>>2]+(ob<<2)>>2];q[wc+72>>2]=0;q[wc+76>>2]=0;dc=wc- -64|0;q[dc>>2]=0;q[dc+4>>2]=0;q[wc+56>>2]=0;q[wc+60>>2]=0;dc=q[a>>2];if(!r[dc+84|0]){vc=q[q[dc+68>>2]+(vc<<2)>>2]}Ef(dc,vc,o[dc+24|0],wc+56|0);vc=q[q[a+4>>2]+(Cc<<2)>>2];q[wc+48>>2]=0;q[wc+52>>2]=0;q[wc+40>>2]=0;q[wc+44>>2]=0;q[wc+32>>2]=0;q[wc+36>>2]=0;dc=q[a>>2];if(!r[dc+84|0]){vc=q[q[dc+68>>2]+(vc<<2)>>2]}Ef(dc,vc,o[dc+24|0],wc+32|0);vc=q[q[a+4>>2]+(cc<<2)>>2];q[wc+24>>2]=0;q[wc+28>>2]=0;q[wc+16>>2]=0;q[wc+20>>2]=0;q[wc+8>>2]=0;q[wc+12>>2]=0;dc=q[a>>2];if(!r[dc+84|0]){vc=q[q[dc+68>>2]+(vc<<2)>>2]}Ef(dc,vc,o[dc+24|0],wc+8|0);Gc=q[wc+44>>2];vc=q[wc+16>>2];xc=q[wc+40>>2];dc=xc;zc=q[wc+20>>2]-(Gc+(vc>>>0<dc>>>0)|0)|0;Mc=vc-dc|0;vc=Up(Mc,zc,Mc,zc);dc=V;Kc=vc;Ec=q[wc+36>>2];vc=q[wc+8>>2];yc=q[wc+32>>2];cc=yc;Hc=q[wc+12>>2]-(Ec+(vc>>>0<cc>>>0)|0)|0;Lc=vc-cc|0;Dc=Up(Lc,Hc,Lc,Hc);vc=Kc+Dc|0;cc=V+dc|0;cc=vc>>>0<Dc>>>0?cc+1|0:cc;Fc=vc;Nc=q[wc+52>>2];vc=q[wc+24>>2];Kc=q[wc+48>>2];dc=Kc;Jc=q[wc+28>>2]-(Nc+(vc>>>0<dc>>>0)|0)|0;Oc=vc-dc|0;dc=Up(Oc,Jc,Oc,Jc);vc=Fc+dc|0;cc=V+cc|0;Fc=vc;Dc=vc>>>0<dc>>>0?cc+1|0:cc;if(!(vc|Dc)){break g}dc=1;vc=0;cc=q[wc+64>>2];Cc=cc-xc|0;Qc=q[wc+68>>2]-((cc>>>0<xc>>>0)+Gc|0)|0;cc=Up(Cc,Qc,Mc,zc);Gc=V;xc=cc;cc=q[wc+56>>2];Ic=cc-yc|0;Rc=q[wc+60>>2]-((cc>>>0<yc>>>0)+Ec|0)|0;yc=Up(Ic,Rc,Lc,Hc);xc=xc+yc|0;cc=V+Gc|0;cc=xc>>>0<yc>>>0?cc+1|0:cc;Ec=xc;xc=q[wc+72>>2];Gc=xc-Kc|0;Nc=q[wc+76>>2]-((xc>>>0<Kc>>>0)+Nc|0)|0;yc=Up(Gc,Nc,Oc,Jc);xc=Ec+yc|0;cc=V+cc|0;Ec=xc;xc=xc>>>0<yc>>>0?cc+1|0:cc;cc=Ac;yc=Ta;Sc=cc-Ta|0;Ta=Ta>>31;Tc=(cc>>31)-(Ta+(cc>>>0<yc>>>0)|0)|0;cc=Up(Ec,xc,Sc,Tc);Ac=V;yc=Up(Fc,Dc,yc,Ta);Ta=yc+cc|0;cc=V+Ac|0;cc=Ta>>>0<yc>>>0?cc+1|0:cc;yc=Ta;Kc=cc;Ta=Pc;cc=Bc;Uc=Ta-cc|0;Bc=cc>>31;Vc=(Ta>>31)-(Bc+(Ta>>>0<cc>>>0)|0)|0;Ta=Up(Ec,xc,Uc,Vc);Ac=V;Bc=Up(Fc,Dc,cc,Bc);cc=Bc+Ta|0;Ta=V+Ac|0;Ta=cc>>>0<Bc>>>0?Ta+1|0:Ta;Bc=cc;Pc=Ta;Ta=Vp(Up(Mc,zc,Ec,xc),V,Fc,Dc);cc=Qc-(V+(Cc>>>0<Ta>>>0)|0)|0;Ta=Cc-Ta|0;Ta=Up(Ta,cc,Ta,cc);Ac=V;Cc=Ta;Ta=Vp(Up(Lc,Hc,Ec,xc),V,Fc,Dc);cc=Rc-(V+(Ic>>>0<Ta>>>0)|0)|0;Ta=Ic-Ta|0;zc=Up(Ta,cc,Ta,cc);Ta=Cc+zc|0;cc=V+Ac|0;cc=Ta>>>0<zc>>>0?cc+1|0:cc;zc=Ta;Ta=Vp(Up(Ec,xc,Oc,Jc),V,Fc,Dc);xc=Nc-(V+(Gc>>>0<Ta>>>0)|0)|0;Ta=Gc-Ta|0;Ac=Up(Ta,xc,Ta,xc);xc=zc+Ac|0;Ta=V+cc|0;xc=Up(xc,xc>>>0<Ac>>>0?Ta+1|0:Ta,Fc,Dc);Ta=V;Ac=Ta;if(!Ta&xc>>>0<=1|Ta>>>0<0){break f}zc=xc;cc=Ac;while(1){Ta=vc<<1|dc>>>31;dc=dc<<1;vc=Ta;Hc=!cc&zc>>>0>7|cc>>>0>0;zc=(cc&3)<<30|zc>>>2;cc=cc>>>2;if(Hc){continue}break}break e}cc=a;if(Ic){if((ob|0)<=0){q[a+8>>2]=0;q[a+12>>2]=0;break c}Ta=(ob<<1)+ -2|0}else{Ta=Cc<<1}Ta=(Ta<<2)+Ua|0;q[cc+8>>2]=q[Ta>>2];q[a+12>>2]=q[Ta+4>>2];break c}Uo();F()}vc=Ac;dc=xc;if(dc-1){break d}}while(1){Ta=Wp(xc,Ac,dc,vc)+dc|0;cc=vc+V|0;cc=Ta>>>0<dc>>>0?cc+1|0:cc;dc=(cc&1)<<31|Ta>>>1;vc=cc>>>1;Ta=Up(dc,vc,dc,vc);cc=V;if((Ac|0)==(cc|0)&Ta>>>0>xc>>>0|cc>>>0>Ac>>>0){continue}break}}xc=a+16|0;Ic=q[a+24>>2];Gc=Ic<<5;Ta=q[a+20>>2];Cc=ob<<3;cc=q[(Cc|4)+Ua>>2];Ac=cc;Ec=Up(dc,vc,Uc,Vc);zc=Ec;Mc=V;ob=Vp(yc-zc|0,Kc-(Mc+(yc>>>0<zc>>>0)|0)|0,Fc,Dc);Hc=cc>>31;zc=ob;Jc=Hc-(V+(cc>>>0<zc>>>0)|0)|0;cc=cc-zc|0;Lc=Up(cc,Jc,cc,Jc);Oc=V;cc=q[Ua+Cc>>2];Ua=cc>>31;Jc=cc;zc=cc;Cc=Ua;Nc=Ua;vc=Up(dc,vc,Sc,Tc);Qc=V;cc=Pc+Qc|0;Ua=Bc;dc=Ua+vc|0;if(dc>>>0<Ua>>>0){cc=cc+1|0}dc=Vp(dc,cc,Fc,Dc);cc=Nc-(V+(zc>>>0<dc>>>0)|0)|0;Ua=zc-dc|0;zc=Up(Ua,cc,Ua,cc);Ua=zc+Lc|0;cc=V+Oc|0;Lc=Ua;zc=Ua>>>0<zc>>>0?cc+1|0:cc;cc=Mc+Kc|0;Ua=yc+Ec|0;if(Ua>>>0<yc>>>0){cc=cc+1|0}Ua=Vp(Ua,cc,Fc,Dc);cc=Ua;yc=Hc-(V+(Ac>>>0<cc>>>0)|0)|0;cc=Ac-cc|0;cc=Up(cc,yc,cc,yc);Hc=V;vc=Vp(Bc-vc|0,Pc-((Bc>>>0<vc>>>0)+Qc|0)|0,Fc,Dc);Ac=cc;cc=vc;yc=Cc-(V+(Jc>>>0<cc>>>0)|0)|0;cc=Jc-cc|0;Bc=Up(cc,yc,cc,yc);yc=Ac+Bc|0;cc=V+Hc|0;cc=yc>>>0<Bc>>>0?cc+1|0:cc;h:{if((cc|0)==(zc|0)&Lc>>>0<yc>>>0|zc>>>0<cc>>>0){if((Ta|0)==(Gc|0)){if((Ta+1|0)<=-1){break b}if(Ta>>>0<=1073741822){Ta=Ta+32&-32;Ua=Ic<<6;Ta=Ua>>>0<Ta>>>0?Ta:Ua}else{Ta=2147483647}Oe(xc,Ta);Ta=q[a+20>>2]}q[a+20>>2]=Ta+1;Ua=q[a+16>>2]+(Ta>>>3&536870908)|0;q[Ua>>2]=q[Ua>>2]|1<<(Ta&31);break h}if((Ta|0)==(Gc|0)){if((Ta+1|0)<=-1){break b}if(Ta>>>0<=1073741822){Ta=Ta+32&-32;ob=Ic<<6;Ta=ob>>>0<Ta>>>0?Ta:ob}else{Ta=2147483647}Oe(xc,Ta);Ta=q[a+20>>2]}q[a+20>>2]=Ta+1;ob=q[a+16>>2]+(Ta>>>3&536870908)|0;dc=q[ob>>2];Wc=ob,Xc=Yp(-2,Ta)&dc,q[Wc>>2]=Xc;ob=Ua;dc=vc}q[a+8>>2]=dc;q[a+12>>2]=ob}T=wc+80|0;return}To();F()}function Xf(a){a=a|0;var Ta=0;q[a>>2]=5416;$g(a+108|0);q[a>>2]=3364;Ta=q[a+32>>2];if(Ta){q[a+36>>2]=Ta;pp(Ta)}return a|0}function Yf(a){a=a|0;var Ua=0;q[a>>2]=5416;$g(a+108|0);q[a>>2]=3364;Ua=q[a+32>>2];if(Ua){q[a+36>>2]=Ua;pp(Ua)}pp(a)}function Zf(a,ob,Yc,Zc,_c,$c){a=a|0;ob=ob|0;Yc=Yc|0;Zc=Zc|0;_c=_c|0;$c=$c|0;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,nd=0,od=0,pd=0,qd=0,rd=0,sd=0,td=0;dd=T-48|0;T=dd;q[a+68>>2]=$c;jd=a+108|0;bh(jd);Zc=q[a+56>>2];_c=q[Zc>>2];$c=Zc+4|0;ad=q[$c>>2];q[dd+40>>2]=0;q[dd+32>>2]=0;q[dd+36>>2]=0;q[dd+24>>2]=0;q[dd+28>>2]=0;q[dd+16>>2]=0;q[dd+20>>2]=0;q[dd+8>>2]=0;q[dd+12>>2]=0;q[dd>>2]=0;q[dd+4>>2]=0;a:{_c=ad-_c|0;if((_c|0)<1){break a}bd=q[Zc>>2];if((bd|0)!=q[$c>>2]){qd=_c>>2;rd=a+60|0;sd=Yc+4|0;kd=a+8|0;md=a+16|0;ld=a+32|0;nd=a+12|0;od=a+28|0;id=a+20|0;pd=a+24|0;td=a+56|0;while(1){_f(rd,q[(hd<<2)+bd>>2],dd+32|0);$c=q[dd+36>>2];ad=$c>>31;_c=q[dd+32>>2];cd=_c>>31;bd=q[dd+40>>2];ed=bd>>31;Zc=0;ed=ed^bd+ed;ad=ed+((ad^$c+ad)+(cd^_c+cd)|0)|0;if(ad>>>0<ed>>>0){Zc=1}b:{if(!(Zc|ad)){fd=q[a+104>>2];q[dd+32>>2]=fd;_c=fd;break b}fd=q[a+104>>2];cd=fd;ed=cd>>31;$c=Vp(Up(cd,ed,$c,$c>>31),V,ad,Zc);q[dd+36>>2]=$c;_c=Vp(Up(cd,ed,_c,_c>>31),V,ad,Zc);q[dd+32>>2]=_c;Zc=_c>>31;Zc=(cd-(Zc+_c^Zc)|0)+(($c|0)<0?$c:0-$c|0)|0;bd=(bd|0)>-1?Zc:0-Zc|0;q[dd+40>>2]=bd}c:{if((_c|0)>=0){ad=$c+fd|0;ed=bd+fd|0;break c}d:{if(($c|0)<=-1){Zc=bd>>31;ad=Zc+bd^Zc;break d}Zc=bd>>31;ad=q[a+100>>2]-(Zc+bd^Zc)|0}if((bd|0)<=-1){Zc=$c>>31;ed=Zc+$c^Zc;break c}Zc=$c>>31;ed=q[a+100>>2]-(Zc+$c^Zc)|0}Zc=q[a+100>>2];gd=Zc;cd=Zc;e:{if(!(ad|ed)){break e}if(!((Zc|0)!=(ed|0)|ad)){gd=ed;cd=ed;break e}if(!((Zc|0)!=(ad|0)|ed)){gd=ad;cd=ad;break e}if(!((fd|0)>=(ed|0)|ad)){gd=(fd<<1)-ed|0;cd=0;break e}if(!((Zc|0)!=(ad|0)|(fd|0)<=(ed|0))){gd=(fd<<1)-ed|0;cd=ad;break e}if(!((Zc|0)!=(ed|0)|(fd|0)<=(ad|0))){gd=ed;cd=(fd<<1)-ad|0;break e}if(ed){gd=ed;cd=ad;break e}gd=0;cd=ad;if((fd|0)>=(ad|0)){break e}cd=(fd<<1)-ad|0}q[dd+28>>2]=gd;q[dd+24>>2]=cd;q[dd+40>>2]=0-bd;q[dd+36>>2]=0-$c;q[dd+32>>2]=0-_c;f:{if((_c|0)<=0){_c=fd-bd|0;$c=fd-$c|0;break f}_c=$c>>31;_c=_c+$c^_c;_c=(bd|0)>0?_c:Zc-_c|0;ad=bd>>31;ad=ad+bd^ad;$c=($c|0)>0?ad:Zc-ad|0}g:{if(!(_c|$c)){_c=Zc;break g}if(!((Zc|0)!=(_c|0)|$c)){_c=Zc;break g}ad=(Zc|0)!=($c|0);if(!(_c|ad)){_c=Zc;break g}if(!((fd|0)>=(_c|0)|$c)){_c=(fd<<1)-_c|0;Zc=0;break g}if(!((fd|0)<=(_c|0)|ad)){_c=(fd<<1)-_c|0;break g}if(!((Zc|0)!=(_c|0)|(fd|0)<=($c|0))){_c=Zc;Zc=(fd<<1)-$c|0;break g}if(_c){Zc=$c;break g}_c=0;if((fd|0)>=($c|0)){Zc=$c;break g}Zc=(fd<<1)-$c|0}q[dd+20>>2]=_c;q[dd+16>>2]=Zc;bd=q[kd>>2];h:{if((bd|0)<1){break h}ed=(hd<<3)+ob|0;cd=dd+24|0;ad=0;while(1){$c=0;i:{if((bd|0)<=0){Zc=q[ld>>2];break i}while(1){_c=$c<<2;gd=q[_c+cd>>2];bd=q[md>>2];j:{if((gd|0)>(bd|0)){Zc=q[ld>>2];q[_c+Zc>>2]=bd;break j}Zc=q[ld>>2];_c=_c+Zc|0;bd=q[nd>>2];if((gd|0)<(bd|0)){q[_c>>2]=bd;break j}q[_c>>2]=gd}$c=$c+1|0;bd=q[kd>>2];if(($c|0)<(bd|0)){continue}break}}$c=ad<<2;_c=$c+(dd+8|0)|0;cd=q[$c+ed>>2]-q[Zc+$c>>2]|0;q[_c>>2]=cd;$c=_c;_c=q[od>>2];gd=cd+q[id>>2]|0;k:{l:{if((cd|0)<(_c|0)){break l}if((cd|0)<=q[pd>>2]){break k}gd=cd-q[id>>2]|0}q[$c>>2]=gd}cd=Zc;ad=ad+1|0;if((ad|0)<(bd|0)){continue}break}ad=0;cd=dd+16|0;if((bd|0)<1){break h}while(1){$c=0;if((bd|0)>=1){while(1){_c=$c<<2;gd=q[_c+cd>>2];bd=q[md>>2];m:{if((gd|0)>(bd|0)){q[Zc+_c>>2]=bd;break m}_c=Zc+_c|0;bd=q[nd>>2];if((gd|0)<(bd|0)){q[_c>>2]=bd;break m}q[_c>>2]=gd}$c=$c+1|0;bd=q[kd>>2];if(($c|0)<(bd|0)){continue}break}_c=q[od>>2]}cd=ad<<2;$c=cd+dd|0;cd=q[cd+ed>>2]-q[Zc+cd>>2]|0;q[$c>>2]=cd;n:{if((cd|0)<(_c|0)){cd=cd+q[id>>2]|0}else{if((cd|0)<=q[pd>>2]){break n}cd=cd-q[id>>2]|0}q[$c>>2]=cd}cd=Zc;ad=ad+1|0;if((ad|0)<(bd|0)){continue}break}}ad=q[a+104>>2];bd=q[dd+8>>2];o:{if((ad|0)<(bd|0)){bd=bd-q[a+96>>2]|0;break o}if((bd|0)>=(0-ad|0)){break o}bd=q[a+96>>2]+bd|0}q[dd+8>>2]=bd;_c=q[dd+12>>2];p:{if((ad|0)<(_c|0)){_c=_c-q[a+96>>2]|0;break p}if((_c|0)>=(0-ad|0)){break p}_c=q[a+96>>2]+_c|0}q[dd+12>>2]=_c;Zc=q[dd>>2];q:{if((ad|0)<(Zc|0)){Zc=Zc-q[a+96>>2]|0;break q}if((Zc|0)>=(0-ad|0)){break q}Zc=q[a+96>>2]+Zc|0}q[dd>>2]=Zc;$c=q[dd+4>>2];r:{if((ad|0)<($c|0)){$c=$c-q[a+96>>2]|0;break r}if(($c|0)>=(0-ad|0)){break r}$c=q[a+96>>2]+$c|0}ad=hd<<1;q[dd+4>>2]=$c;cd=_c>>31;ed=cd+_c^cd;cd=bd>>31;ed=ed+(cd+bd^cd)|0;cd=$c>>31;gd=cd+$c^cd;cd=Zc>>31;s:{if((ed|0)<(gd+(cd+Zc^cd)|0)){ch(jd,0);Zc=(ad<<2)+Yc|0;if((bd|0)<=-1){bd=q[a+96>>2]+bd|0}q[Zc>>2]=bd;if((_c|0)>-1){$c=_c;break s}$c=q[a+96>>2]+_c|0;break s}ch(jd,1);_c=(ad<<2)+Yc|0;if((Zc|0)<=-1){Zc=q[a+96>>2]+Zc|0}q[_c>>2]=Zc;if(($c|0)>-1){break s}$c=q[a+96>>2]+$c|0}q[(ad<<2)+sd>>2]=$c;hd=hd+1|0;if((hd|0)>=(qd|0)){break a}Zc=q[td>>2];bd=q[Zc>>2];if(q[Zc+4>>2]-bd>>2>>>0>hd>>>0){continue}break}}Uo();F()}T=dd+48|0;return 1}function _f(a,ob,Yc){a=a|0;ob=ob|0;Yc=Yc|0;var Zc=0,_c=0,$c=0,ud=0,vd=0,wd=0,xd=0,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,Od=0,Pd=0,Qd=0;$c=T-96|0;T=$c;_c=q[a+16>>2];o[$c+92|0]=1;q[$c+88>>2]=ob;q[$c+84>>2]=ob;q[$c+80>>2]=_c;Zc=-1;Zc=(ob|0)!=-1?q[q[_c>>2]+(ob<<2)>>2]:Zc;ud=q[a+20>>2];_c=q[ud>>2];a:{b:{c:{d:{if(q[ud+4>>2]-_c>>2>>>0>Zc>>>0){_c=q[q[a+8>>2]+(q[_c+(Zc<<2)>>2]<<2)>>2];Zc=q[a+4>>2];if(!r[Zc+84|0]){_c=q[q[Zc+68>>2]+(_c<<2)>>2]}q[$c+72>>2]=0;q[$c+76>>2]=0;ud=$c- -64|0;q[ud>>2]=0;q[ud+4>>2]=0;q[$c+56>>2]=0;q[$c+60>>2]=0;Ef(Zc,_c,o[Zc+24|0],$c+56|0);if((ob|0)==-1){break a}Zc=ob+1|0;ud=(Zc>>>0)%3|0?Zc:ob+ -2|0;Ed=((ob>>>0)%3|0?-1:2)+ob|0;Ld=a+28|0;vd=!q[Ld>>2];Md=a+20|0;Nd=a+8|0;Od=$c+48|0;while(1){_c=ud;Zc=Ed;e:{if(vd){break e}Zc=ob+1|0;_c=(Zc>>>0)%3|0?Zc:ob+ -2|0;Zc=ob+ -1|0;if((ob>>>0)%3){break e}Zc=ob+2|0}ob=-1;ob=(_c|0)!=-1?q[q[q[a+16>>2]>>2]+(_c<<2)>>2]:ob;vd=q[Md>>2];_c=q[vd>>2];if(q[vd+4>>2]-_c>>2>>>0<=ob>>>0){break d}_c=q[q[Nd>>2]+(q[_c+(ob<<2)>>2]<<2)>>2];vd=a+4|0;ob=q[vd>>2];if(!r[ob+84|0]){_c=q[q[ob+68>>2]+(_c<<2)>>2]}q[Od>>2]=0;q[Od+4>>2]=0;q[$c+40>>2]=0;q[$c+44>>2]=0;q[$c+32>>2]=0;q[$c+36>>2]=0;Ef(ob,_c,o[ob+24|0],$c+32|0);ob=-1;ob=(Zc|0)!=-1?q[q[q[a+16>>2]>>2]+(Zc<<2)>>2]:ob;_c=q[Md>>2];Zc=q[_c>>2];if(q[_c+4>>2]-Zc>>2>>>0<=ob>>>0){break c}Zc=q[q[Nd>>2]+(q[Zc+(ob<<2)>>2]<<2)>>2];ob=q[vd>>2];if(!r[ob+84|0]){Zc=q[q[ob+68>>2]+(Zc<<2)>>2]}_c=$c+24|0;q[_c>>2]=0;q[_c+4>>2]=0;vd=$c+16|0;q[vd>>2]=0;q[vd+4>>2]=0;q[$c+8>>2]=0;q[$c+12>>2]=0;Ef(ob,Zc,o[ob+24|0],$c+8|0);Zc=q[$c+8>>2];ob=q[$c+56>>2];Fd=Zc-ob|0;Gd=q[$c+60>>2];yd=q[$c+12>>2]-(Gd+(Zc>>>0<ob>>>0)|0)|0;Hd=q[$c+40>>2];Zc=q[$c+64>>2];Pd=Hd-Zc|0;Id=q[$c+68>>2];Hd=q[$c+44>>2]-(Id+(Hd>>>0<Zc>>>0)|0)|0;Jd=Up(Fd,yd,Pd,Hd);Kd=wd-Jd|0;zd=zd-(V+(wd>>>0<Jd>>>0)|0)|0;wd=q[vd>>2];Jd=wd-Zc|0;vd=q[vd+4>>2]-((wd>>>0<Zc>>>0)+Id|0)|0;wd=q[$c+32>>2];Id=wd-ob|0;Gd=q[$c+36>>2]-((wd>>>0<ob>>>0)+Gd|0)|0;Zc=Up(Jd,vd,Id,Gd);wd=Zc+Kd|0;ob=V+zd|0;ob=wd>>>0<Zc>>>0?ob+1|0:ob;zd=ob;Zc=xd;Bd=Fd;Qd=yd;xd=q[$c+48>>2];ob=q[$c+72>>2];yd=xd-ob|0;Fd=q[$c+76>>2];Kd=q[$c+52>>2]-(Fd+(xd>>>0<ob>>>0)|0)|0;Bd=Up(Bd,Qd,yd,Kd);xd=Zc+Bd|0;Zc=V+Cd|0;Zc=xd>>>0<Bd>>>0?Zc+1|0:Zc;Cd=xd;xd=q[_c>>2];Bd=xd-ob|0;ob=q[_c+4>>2]-((xd>>>0<ob>>>0)+Fd|0)|0;_c=Up(Bd,ob,Id,Gd);xd=Cd-_c|0;Cd=Zc-(V+(Cd>>>0<_c>>>0)|0)|0;Zc=Up(Jd,vd,yd,Kd);_c=Ad-Zc|0;Dd=Dd-(V+(Ad>>>0<Zc>>>0)|0)|0;Zc=Up(Bd,ob,Pd,Hd);Ad=Zc+_c|0;ob=V+Dd|0;ob=Ad>>>0<Zc>>>0?ob+1|0:ob;Dd=ob;$f($c+80|0);yd=q[Ld>>2];vd=!yd;ob=q[$c+88>>2];if((ob|0)!=-1){continue}break}ob=Cd;Zc=ob>>31;a=ob>>31;ob=a+ob|0;ud=Zc+xd|0;if(ud>>>0<Zc>>>0){ob=ob+1|0}Zc=Zc^ud;vd=a^ob;ob=Dd;a=ob>>31;ob=ob>>31;ud=a;Ed=Dd+a|0;_c=ob+Ad|0;if(_c>>>0<ob>>>0){Ed=Ed+1|0}a=ob^_c;_c=ud^Ed;f:{if((zd|0)<-1?1:(zd|0)<=-1?wd>>>0>4294967295?0:1:0){ob=wd;ud=a+(Zc-ob|0)|0;ob=_c+(vd-((Zc>>>0<ob>>>0)+zd|0)|0)|0;Zc=ud;a=Zc>>>0<a>>>0?ob+1|0:ob;if(!yd){break f}break b}ob=vd+zd|0;ud=Zc;Zc=wd;ud=ud+Zc|0;if(ud>>>0<Zc>>>0){ob=ob+1|0}Zc=a;ud=Zc+ud|0;a=ob+_c|0;a=ud>>>0<Zc>>>0?a+1|0:a;Zc=ud;if(yd){break b}}if((Zc|0)<536870913){break a}a=((a&536870911)<<3|Zc>>>29)&7;ob=0;wd=Vp(wd,zd,a,ob);xd=Vp(xd,Cd,a,ob);Ad=Vp(Ad,Dd,a,ob);break a}Uo();F()}Uo();F()}Uo();F()}if((a|0)<0?1:(a|0)<=0?Zc>>>0>=536870913?0:1:0){break a}ob=a>>>29;a=(a&536870911)<<3|Zc>>>29;wd=Vp(wd,zd,a,ob);xd=Vp(xd,Cd,a,ob);Ad=Vp(Ad,Dd,a,ob)}q[Yc+8>>2]=wd;q[Yc+4>>2]=xd;q[Yc>>2]=Ad;T=$c+96|0}function $f(a){var ob=0,Yc=0,Rd=0;ob=q[a+8>>2];Rd=q[a>>2];a:{if(r[a+12|0]){b:{c:{d:{e:{if((ob|0)==-1){break e}Yc=ob+1|0;ob=(Yc>>>0)%3|0?Yc:ob+ -2|0;if((ob|0)==-1){break e}ob=q[q[Rd+12>>2]+(ob<<2)>>2];if((ob|0)!=-1){break d}}q[a+8>>2]=-1;break c}Yc=ob+1|0;ob=(Yc>>>0)%3|0?Yc:ob+ -2|0;q[a+8>>2]=ob;if((ob|0)!=-1){break b}}Yc=q[a+4>>2];ob=-1;f:{if((Yc|0)==-1){break f}Yc=Yc+((Yc>>>0)%3|0?-1:2)|0;ob=-1;if((Yc|0)==-1){break f}Yc=q[q[Rd+12>>2]+(Yc<<2)>>2];ob=-1;if((Yc|0)==-1){break f}ob=Yc+ -1|0;if((Yc>>>0)%3){break f}ob=Yc+2|0}o[a+12|0]=0;q[a+8>>2]=ob;return}if((ob|0)!=q[a+4>>2]){break a}q[a+8>>2]=-1;return}Yc=-1;g:{if((ob|0)==-1){break g}ob=ob+((ob>>>0)%3|0?-1:2)|0;Yc=-1;if((ob|0)==-1){break g}ob=q[q[Rd+12>>2]+(ob<<2)>>2];Yc=-1;if((ob|0)==-1){break g}Yc=ob+ -1|0;if((ob>>>0)%3){break g}Yc=ob+2|0}q[a+8>>2]=Yc}}function ag(a,Sd,Td,Ud,Vd,Wd){a=a|0;Sd=Sd|0;Td=Td|0;Ud=Ud|0;Vd=Vd|0;Wd=Wd|0;var Xd=0,Yd=0,Zd=0,_d=0,$d=0,ae=0,be=0,ce=0,de=0,ee=0,fe=0,ge=0,he=0,ie=0,je=0,ke=0;q[a+8>>2]=Vd;Xd=a+32|0;Yd=q[Xd>>2];Wd=q[a+36>>2]-Yd>>2;a:{if(Wd>>>0<Vd>>>0){pf(Xd,Vd-Wd|0);break a}if(Wd>>>0<=Vd>>>0){break a}q[a+36>>2]=Yd+(Vd<<2)}b:{if(!Ud){break b}Yd=1;Wd=q[Sd>>2];c:{if((Ud|0)<=1){Xd=Wd;break c}Xd=Wd;while(1){Zd=q[(Yd<<2)+Sd>>2];_d=(Zd|0)<(Xd|0);Xd=_d?Zd:Xd;Wd=_d?Wd:(Zd|0)>(Wd|0)?Zd:Wd;Yd=Yd+1|0;if((Yd|0)!=(Ud|0)){continue}break}}q[a+16>>2]=Wd;q[a+12>>2]=Xd;Yd=Wd;Wd=(Wd>>31)-((Xd>>31)+(Wd>>>0<Xd>>>0)|0)|0;Xd=Yd-Xd|0;if(!Wd&Xd>>>0>2147483646|Wd>>>0>0){break b}Wd=Xd+1|0;q[a+20>>2]=Wd;Yd=a+24|0;Xd=(Wd|0)/2|0;q[Yd>>2]=Xd;q[a+28>>2]=0-Xd;if(Wd&1){break b}q[Yd>>2]=Xd+ -1}Zd=Ud-Vd|0;if((Zd|0)>=1){be=a+8|0;Xd=q[be>>2];fe=0-Vd<<2;ge=a+16|0;_d=a+32|0;ae=a+12|0;ie=a+28|0;ce=a+20|0;je=a+24|0;while(1){if((Xd|0)>=1){Ud=Zd<<2;ke=Ud+Td|0;he=Sd+Ud|0;Ud=he+fe|0;Yd=0;while(1){Wd=0;d:{if((Xd|0)<=0){Xd=q[_d>>2];break d}while(1){$d=Wd<<2;de=q[$d+Ud>>2];ee=q[ge>>2];e:{if((de|0)>(ee|0)){Xd=q[_d>>2];q[$d+Xd>>2]=ee;break e}Xd=q[_d>>2];$d=$d+Xd|0;ee=q[ae>>2];if((de|0)<(ee|0)){q[$d>>2]=ee;break e}q[$d>>2]=de}Wd=Wd+1|0;if((Wd|0)<q[be>>2]){continue}break}}Wd=Yd<<2;Ud=Wd+ke|0;Wd=q[Wd+he>>2]-q[Wd+Xd>>2]|0;q[Ud>>2]=Wd;f:{if((Wd|0)<q[ie>>2]){Wd=Wd+q[ce>>2]|0}else{if((Wd|0)<=q[je>>2]){break f}Wd=Wd-q[ce>>2]|0}q[Ud>>2]=Wd}Ud=Xd;Yd=Yd+1|0;Xd=q[be>>2];if((Yd|0)<(Xd|0)){continue}break}}Zd=Zd-Vd|0;if((Zd|0)>0){continue}break}}Yd=0;Ud=(Vd&1073741823)!=(Vd|0)?-1:Vd<<2;Ud=wp(zo(Ud),0,Ud);_d=a+8|0;Xd=q[_d>>2];if((Xd|0)>=1){$d=a+16|0;Zd=a+32|0;de=a+12|0;fe=a+28|0;be=a+20|0;ge=a+24|0;a=Ud;while(1){Wd=0;g:{if((Xd|0)<=0){Xd=q[Zd>>2];break g}while(1){Vd=Wd<<2;ce=q[Vd+a>>2];ae=q[$d>>2];h:{if((ce|0)>(ae|0)){Xd=q[Zd>>2];q[Vd+Xd>>2]=ae;break h}Xd=q[Zd>>2];Vd=Vd+Xd|0;ae=q[de>>2];if((ce|0)<(ae|0)){q[Vd>>2]=ae;break h}q[Vd>>2]=ce}Wd=Wd+1|0;if((Wd|0)<q[_d>>2]){continue}break}}Vd=Yd<<2;a=Vd+Td|0;Vd=q[Sd+Vd>>2]-q[Vd+Xd>>2]|0;q[a>>2]=Vd;i:{if((Vd|0)<q[fe>>2]){Vd=Vd+q[be>>2]|0}else{if((Vd|0)<=q[ge>>2]){break i}Vd=Vd-q[be>>2]|0}q[a>>2]=Vd}a=Xd;Yd=Yd+1|0;Xd=q[_d>>2];if((Yd|0)<(Xd|0)){continue}break}}pp(Ud);return 1}function bg(a,Sd,Td){a=a|0;Sd=Sd|0;Td=Td|0;var Ud=0,Vd=0,Wd=0,le=0,me=0;Wd=T-16|0;T=Wd;a:{if(!Se(a,Sd,Td)|r[q[a+8>>2]+24|0]!=3){break a}le=q[Sd+48>>2];Sd=zo(32);q[Wd>>2]=Sd;q[Wd+4>>2]=17;q[Wd+8>>2]=-2147483616;o[Sd+17|0]=0;o[Sd+16|0]=r[6168];Vd=r[6164]|r[6165]<<8|(r[6166]<<16|r[6167]<<24);Ud=r[6160]|r[6161]<<8|(r[6162]<<16|r[6163]<<24);o[Sd+8|0]=Ud;o[Sd+9|0]=Ud>>>8;o[Sd+10|0]=Ud>>>16;o[Sd+11|0]=Ud>>>24;o[Sd+12|0]=Vd;o[Sd+13|0]=Vd>>>8;o[Sd+14|0]=Vd>>>16;o[Sd+15|0]=Vd>>>24;Vd=r[6156]|r[6157]<<8|(r[6158]<<16|r[6159]<<24);Ud=r[6152]|r[6153]<<8|(r[6154]<<16|r[6155]<<24);o[Sd|0]=Ud;o[Sd+1|0]=Ud>>>8;o[Sd+2|0]=Ud>>>16;o[Sd+3|0]=Ud>>>24;o[Sd+4|0]=Vd;o[Sd+5|0]=Vd>>>8;o[Sd+6|0]=Vd>>>16;o[Sd+7|0]=Vd>>>24;b:{c:{Vd=le+16|0;Ud=q[Vd>>2];if(!Ud){break c}Sd=Vd;while(1){me=q[Ud+16>>2]<(Td|0);Sd=me?Sd:Ud;Ud=q[(me<<2)+Ud>>2];if(Ud){continue}break}if((Sd|0)==(Vd|0)|q[Sd+16>>2]>(Td|0)){break c}Sd=Sd+20|0;if(!Cd(Sd,Wd)){break c}Sd=Ll(Sd,Wd,-1);break b}Sd=Ll(le,Wd,-1)}if(o[Wd+11|0]<=-1){pp(q[Wd>>2])}Ud=1;if((Sd|0)<1){Ud=0;break a}Tb(a+40|0,Sd)}T=Wd+16|0;return Ud|0}function cg(a,q){a=a|0;q=q|0;return Ub(a+40|0,q)|0}function dg(a,Sd,Td){a=a|0;Sd=Sd|0;Td=Td|0;var ne=0;ne=T-16|0;T=ne;Wb(ne+8|0,a+40|0,q[a+8>>2],Sd,Td);Sd=q[ne+8>>2];q[ne+8>>2]=0;Td=a+32|0;a=q[Td>>2];q[Td>>2]=Sd;a:{if(!a){q[ne+8>>2]=0;break a}Ba(a);a=q[ne+8>>2];q[ne+8>>2]=0;if(!a){break a}Ba(a)}T=ne+16|0;return 1}function eg(a){a=a|0;return 3}function fg(a,Sd,Td){a=a|0;Sd=Sd|0;Td=Td|0;var oe=0,pe=0,qe=0,re=0,se=0,te=0,ue=0;oe=T-32|0;T=oe;re=q[Sd+12>>2];se=q[q[Sd+4>>2]+48>>2];Td=zo(32);q[oe+16>>2]=Td;q[oe+20>>2]=17;q[oe+24>>2]=-2147483616;o[Td+17|0]=0;o[Td+16|0]=r[6168];pe=r[6164]|r[6165]<<8|(r[6166]<<16|r[6167]<<24);qe=r[6160]|r[6161]<<8|(r[6162]<<16|r[6163]<<24);o[Td+8|0]=qe;o[Td+9|0]=qe>>>8;o[Td+10|0]=qe>>>16;o[Td+11|0]=qe>>>24;o[Td+12|0]=pe;o[Td+13|0]=pe>>>8;o[Td+14|0]=pe>>>16;o[Td+15|0]=pe>>>24;pe=r[6156]|r[6157]<<8|(r[6158]<<16|r[6159]<<24);qe=r[6152]|r[6153]<<8|(r[6154]<<16|r[6155]<<24);o[Td|0]=qe;o[Td+1|0]=qe>>>8;o[Td+2|0]=qe>>>16;o[Td+3|0]=qe>>>24;o[Td+4|0]=pe;o[Td+5|0]=pe>>>8;o[Td+6|0]=pe>>>16;o[Td+7|0]=pe>>>24;a:{b:{pe=se+16|0;qe=q[pe>>2];if(!qe){break b}Td=pe;while(1){te=q[qe+16>>2]<(re|0);Td=te?Td:qe;qe=q[(te<<2)+qe>>2];if(qe){continue}break}if((Td|0)==(pe|0)|(re|0)<q[Td+16>>2]){break b}Td=Td+20|0;if(!Cd(Td,oe+16|0)){break b}Td=Ll(Td,oe+16|0,-1);break a}Td=Ll(se,oe+16|0,-1)}if(o[oe+27|0]<=-1){pp(q[oe+16>>2])}q[oe+24>>2]=-1;q[oe+28>>2]=-1;q[oe+16>>2]=-1;q[oe+20>>2]=-1;Td=-1<<Td^-1;c:{if(!(Td&1)){break c}Td=z(Td)^31;if(Td+ -1>>>0>28){break c}q[oe+16>>2]=Td+1;Td=-2<<Td;q[oe+20>>2]=Td^-1;Td=-2-Td|0;q[oe+24>>2]=Td;q[oe+28>>2]=(Td|0)/2}Td=Sd+12|0;pe=Sd+4|0;re=Ug(q[Td>>2],q[pe>>2]);se=q[Td>>2];te=q[q[pe>>2]+48>>2];Td=zo(32);q[oe>>2]=Td;q[oe+4>>2]=17;q[oe+8>>2]=-2147483616;o[Td+17|0]=0;o[Td+16|0]=r[6308];pe=r[6304]|r[6305]<<8|(r[6306]<<16|r[6307]<<24);qe=r[6300]|r[6301]<<8|(r[6302]<<16|r[6303]<<24);o[Td+8|0]=qe;o[Td+9|0]=qe>>>8;o[Td+10|0]=qe>>>16;o[Td+11|0]=qe>>>24;o[Td+12|0]=pe;o[Td+13|0]=pe>>>8;o[Td+14|0]=pe>>>16;o[Td+15|0]=pe>>>24;pe=r[6296]|r[6297]<<8|(r[6298]<<16|r[6299]<<24);qe=r[6292]|r[6293]<<8|(r[6294]<<16|r[6295]<<24);o[Td|0]=qe;o[Td+1|0]=qe>>>8;o[Td+2|0]=qe>>>16;o[Td+3|0]=qe>>>24;o[Td+4|0]=pe;o[Td+5|0]=pe>>>8;o[Td+6|0]=pe>>>16;o[Td+7|0]=pe>>>24;d:{e:{pe=te+16|0;qe=q[pe>>2];if(!qe){break e}Td=pe;while(1){ue=q[qe+16>>2]<(se|0);Td=ue?Td:qe;qe=q[(ue<<2)+qe>>2];if(qe){continue}break}if((Td|0)==(pe|0)|(se|0)<q[Td+16>>2]){break e}Td=Td+20|0;if(!Cd(Td,oe)){break e}Td=Ll(Td,oe,re);break d}Td=Ll(te,oe,re)}if(o[oe+11|0]<=-1){pp(q[oe>>2])}f:{g:{if(Td>>>0>6){break g}h:{switch(Td-1|0){case 5:Td=q[Sd+4>>2];Sd=q[Sd+12>>2];pe=q[q[q[Td+4>>2]+8>>2]+(Sd<<2)>>2];if((n[q[q[Td>>2]+8>>2]](Td)|0)==1){gg(oe,Td,Sd,oe+16|0);Sd=q[oe>>2];if(Sd){q[a>>2]=Sd;break f}q[oe>>2]=0}Sd=zo(24);q[Sd+4>>2]=pe;Td=q[oe+20>>2];q[Sd+8>>2]=q[oe+16>>2];q[Sd+12>>2]=Td;Td=q[oe+28>>2];q[Sd+16>>2]=q[oe+24>>2];q[Sd+20>>2]=Td;q[Sd>>2]=9864;q[oe>>2]=Sd;q[a>>2]=Sd;break f;case 0:case 1:case 2:case 3:case 4:break g;default:break h}}Td=q[Sd+4>>2];pe=q[q[q[Td+4>>2]+8>>2]+(q[Sd+12>>2]<<2)>>2];if((n[q[q[Td>>2]+8>>2]](Td)|0)==1){n[q[q[Td>>2]+8>>2]](Td)|0}Sd=zo(24);q[Sd+4>>2]=pe;Td=q[oe+20>>2];q[Sd+8>>2]=q[oe+16>>2];q[Sd+12>>2]=Td;Td=q[oe+28>>2];q[Sd+16>>2]=q[oe+24>>2];q[Sd+20>>2]=Td;q[Sd>>2]=9864;q[a>>2]=Sd;break f}q[a>>2]=0}T=oe+32|0}function gg(a,Sd,Td,ve){var we=0,xe=0,ye=0,ze=0;we=T-32|0;T=we;ye=q[q[q[Sd+4>>2]+8>>2]+(Td<<2)>>2];a:{b:{if((n[q[q[Sd>>2]+8>>2]](Sd)|0)!=1){break b}ze=n[q[q[Sd>>2]+52>>2]](Sd)|0;xe=n[q[q[Sd>>2]+60>>2]](Sd,Td)|0;if(!(xe?ze:0)){q[a>>2]=0;break a}Td=n[q[q[Sd>>2]+56>>2]](Sd,Td)|0;if(Td){Sd=q[Sd+56>>2];q[we+20>>2]=Td;q[we+16>>2]=Sd;q[we+28>>2]=xe;q[we+24>>2]=xe+12;hg(a,ye,ve,we+16|0);if(q[a>>2]){break a}q[a>>2]=0;break b}Sd=q[Sd+56>>2];q[we+20>>2]=ze;q[we+16>>2]=Sd;q[we+28>>2]=xe;q[we+24>>2]=xe+12;ig(a,ye,ve,we+16|0);if(q[a>>2]){break a}q[a>>2]=0}q[a>>2]=0}T=we+32|0}function hg(a,Sd,Td,ve){var Ae=0,Be=0;Ae=zo(120);q[Ae+4>>2]=Sd;Sd=q[Td+4>>2];q[Ae+8>>2]=q[Td>>2];q[Ae+12>>2]=Sd;Sd=q[Td+12>>2];q[Ae+16>>2]=q[Td+8>>2];q[Ae+20>>2]=Sd;Sd=q[ve+4>>2];q[Ae+24>>2]=q[ve>>2];q[Ae+28>>2]=Sd;Sd=ve+8|0;Td=Sd;Be=q[Td+4>>2];q[Ae+32>>2]=q[Td>>2];q[Ae+36>>2]=Be;q[Ae+44>>2]=0;q[Ae+48>>2]=0;q[Ae>>2]=7528;Td=q[ve+4>>2];q[Ae+52>>2]=q[ve>>2];q[Ae+56>>2]=Td;Td=q[Sd+4>>2];q[Ae+60>>2]=q[Sd>>2];q[Ae+64>>2]=Td;q[Ae+72>>2]=-1;q[Ae+76>>2]=-1;q[Ae+68>>2]=1;q[Ae+40>>2]=7788;q[Ae+80>>2]=-1;q[Ae+84>>2]=-1;_g(Ae+88|0);q[a>>2]=Ae}function ig(a,Sd,Td,ve){var Ce=0,De=0;Ce=zo(120);q[Ce+4>>2]=Sd;Sd=q[Td+4>>2];q[Ce+8>>2]=q[Td>>2];q[Ce+12>>2]=Sd;Sd=q[Td+12>>2];q[Ce+16>>2]=q[Td+8>>2];q[Ce+20>>2]=Sd;Sd=q[ve+4>>2];q[Ce+24>>2]=q[ve>>2];q[Ce+28>>2]=Sd;Sd=ve+8|0;Td=Sd;De=q[Td+4>>2];q[Ce+32>>2]=q[Td>>2];q[Ce+36>>2]=De;q[Ce+44>>2]=0;q[Ce+48>>2]=0;q[Ce>>2]=9208;Td=q[ve+4>>2];q[Ce+52>>2]=q[ve>>2];q[Ce+56>>2]=Td;Td=q[Sd+4>>2];q[Ce+60>>2]=q[Sd>>2];q[Ce+64>>2]=Td;q[Ce+72>>2]=-1;q[Ce+76>>2]=-1;q[Ce+68>>2]=1;q[Ce+40>>2]=9452;q[Ce+80>>2]=-1;q[Ce+84>>2]=-1;_g(Ce+88|0);q[a>>2]=Ce}function jg(a){a=a|0;var Sd=0;if(!(!q[a+32>>2]|(!q[a+24>>2]|!q[a+28>>2]))){Sd=q[a+36>>2]!=0}return Sd|0}function kg(a,Td){a=a|0;Td=Td|0;var ve=0,Ee=0,Fe=0,Ge=0;ve=T-16|0;T=ve;q[ve+12>>2]=q[a+12>>2];Ee=q[Td+20>>2];Fe=Ee;Ge=q[Td+16>>2];if((Ee|0)<0?1:(Ee|0)<=0?Ge>>>0>0?0:1:0){Vb(Td,q[Td+4>>2],ve+12|0,ve+16|0);Ge=q[Td+16>>2];Fe=q[Td+20>>2]}q[ve+8>>2]=q[a+20>>2];if((Fe|0)<0?1:(Fe|0)<=0?Ge>>>0>0?0:1:0){Vb(Td,q[Td+4>>2],ve+8|0,ve+12|0)}T=ve+16|0;return 1}function lg(a,Td,He,Ie,Je,Ke){a=a|0;Td=Td|0;He=He|0;Ie=Ie|0;Je=Je|0;Ke=Ke|0;var Le=0,Me=0,Ne=0,Oe=0,Pe=0,Qe=0,Re=0,Se=0,Te=0,Ue=0,Ve=0,We=0,Xe=0;Me=T-32|0;T=Me;Ie=(Je&1073741823)!=(Je|0)?-1:Je<<2;Re=wp(zo(Ie),0,Ie);Ie=q[a+36>>2];Le=q[Ie>>2];a:{Ie=q[Ie+4>>2]-Le|0;if((Ie|0)<5){break a}Ke=Ie>>2;Ie=Ke+ -1|0;if(Ke>>>0>Ie>>>0){Ue=a+8|0;Ve=q[a+32>>2];We=a+36|0;Te=q[a+28>>2];Xe=Te+28|0;while(1){Oe=w(Ie,Je);b:{c:{Le=q[(Ie<<2)+Le>>2];if((Le|0)==-1|q[q[Te>>2]+(Le>>>3&536870908)>>2]>>>(Le&31)&1){break c}Le=q[q[q[Te+64>>2]+12>>2]+(Le<<2)>>2];if((Le|0)==-1){break c}Ne=q[Ve>>2];Pe=q[Xe>>2];Qe=q[Ne+(q[Pe+(Le<<2)>>2]<<2)>>2];if((Qe|0)>=(Ie|0)){break c}Se=Le+1|0;Se=q[Ne+(q[Pe+(((Se>>>0)%3|0?Se:Le+ -2|0)<<2)>>2]<<2)>>2];if((Se|0)>=(Ie|0)){break c}Le=q[Ne+(q[Pe+(Le+((Le>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((Le|0)>=(Ie|0)){break c}if((Je|0)>=1){Pe=w(Je,Le);Ne=w(Je,Se);Qe=w(Je,Qe);Le=0;while(1){q[(Le<<2)+Re>>2]=(q[(Le+Pe<<2)+Td>>2]+q[(Le+Ne<<2)+Td>>2]|0)-q[(Le+Qe<<2)+Td>>2];Le=Le+1|0;if((Le|0)!=(Je|0)){continue}break}}Le=q[Re>>2];Pe=q[Re+4>>2];Oe=Oe<<2;Ne=Oe+Td|0;Qe=q[Ne+4>>2];q[Me+16>>2]=q[Ne>>2];q[Me+20>>2]=Qe;q[Me+8>>2]=Le;q[Me+12>>2]=Pe;break b}Le=(w(Ke+ -2|0,Je)<<2)+Td|0;Pe=q[Le>>2];Le=q[Le+4>>2];Oe=Oe<<2;Ne=Oe+Td|0;Qe=q[Ne+4>>2];q[Me+16>>2]=q[Ne>>2];q[Me+20>>2]=Qe;q[Me+8>>2]=Pe;q[Me+12>>2]=Le}mg(Me+24|0,Ue,Me+16|0,Me+8|0);Le=He+Oe|0;q[Le>>2]=q[Me+24>>2];q[Le+4>>2]=q[Me+28>>2];if((Ke|0)<3){break a}Ke=Ie;Oe=q[We>>2];Le=q[Oe>>2];Ie=Ie+ -1|0;if(q[Oe+4>>2]-Le>>2>>>0>Ie>>>0){continue}break}}Uo();F()}if((Je|0)>=1){wp(Re,0,Je<<2)}Ie=q[Re>>2];Je=q[Re+4>>2];Ke=q[Td+4>>2];q[Me+16>>2]=q[Td>>2];q[Me+20>>2]=Ke;q[Me+8>>2]=Ie;q[Me+12>>2]=Je;mg(Me+24|0,a+8|0,Me+16|0,Me+8|0);q[He>>2]=q[Me+24>>2];q[He+4>>2]=q[Me+28>>2];pp(Re);T=Me+32|0;return 1}function mg(a,Td,He,Ie){var Je=0,Ke=0,Ye=0,Ze=0,_e=0,$e=0,af=0;_e=Td+12|0;Je=q[_e>>2];Ke=q[He+4>>2]-Je|0;q[He>>2]=q[He>>2]-Je;q[He+4>>2]=Ke;Ye=q[Ie+4>>2]-Je|0;Ke=Ye;Je=q[Ie>>2]-Je|0;q[Ie>>2]=Je;q[Ie+4>>2]=Ke;Ke=Ke>>31;Ze=Ke+Ye^Ke;Ke=Je>>31;_e=q[_e>>2];if((Ze+(Ke+Je^Ke)|0)>(_e|0)){Je=q[He+4>>2];$e=q[He>>2];a:{b:{if(($e|0)>=0){Ye=1;Ke=1;if((Je|0)>-1){break a}Ze=1;Ye=-1;Ke=-1;if(($e|0)>=1){break b}break a}Ze=-1;Ye=-1;Ke=-1;if((Je|0)<1){break a}}Ye=(Je|0)<1?-1:1;Ke=Ze}af=w(Ye,_e);Je=(Je<<1)-af|0;q[He+4>>2]=Je;_e=w(Ke,_e);Ze=($e<<1)-_e|0;q[He>>2]=Ze;c:{if((w(Ke,Ye)|0)>=0){Je=0-Je|0;q[He>>2]=Je;Ze=0-Ze|0;break c}q[He>>2]=Je}q[He+4>>2]=(Ze+af|0)/2;q[He>>2]=(Je+_e|0)/2;Je=q[Ie+4>>2];_e=q[Ie>>2];d:{e:{if((_e|0)>=0){Ye=1;Ze=1;if((Je|0)>-1){break d}Ke=1;Ye=-1;Ze=-1;if((_e|0)>=1){break e}break d}Ke=-1;Ye=-1;Ze=-1;if((Je|0)<1){break d}}Ye=(Je|0)<1?-1:1;Ze=Ke}Ke=q[Td+12>>2];$e=w(Ke,Ye);Je=(Je<<1)-$e|0;q[Ie+4>>2]=Je;af=_e<<1;_e=w(Ke,Ze);Ke=af-_e|0;q[Ie>>2]=Ke;f:{if((w(Ye,Ze)|0)>=0){Je=0-Je|0;q[Ie>>2]=Je;Ke=0-Ke|0;break f}q[Ie>>2]=Je}Ye=(Ke+$e|0)/2|0;q[Ie+4>>2]=Ye;Je=(Je+_e|0)/2|0;q[Ie>>2]=Je}Ze=Ie;g:{h:{i:{j:{k:{l:{m:{if(!Je){if(!Ye){break g}if((Ye|0)<1){break m}break j}if((Ye|0)<1?(Je|0)<=-1:0){break g}if((Je|0)<1){break k}if((Ye|0)>-1){break l}}Ke=0-q[He>>2]|0;q[He>>2]=q[He+4>>2];q[He+4>>2]=Ke;Je=q[Ie+4>>2];Ye=0-q[Ie>>2]|0;break h}Ye=0-q[He+4>>2]|0;q[He>>2]=0-q[He>>2];q[He+4>>2]=Ye;Je=0-q[Ie>>2]|0;Ye=0-q[Ie+4>>2]|0;break h}if((Ye|0)<=0){break i}}Ke=q[He>>2];q[He>>2]=0-q[He+4>>2];q[He+4>>2]=Ke;Je=0-q[Ie+4>>2]|0;Ye=q[Ie>>2];break h}Je=q[Ie>>2];Ye=q[Ie+4>>2]}q[Ze>>2]=Je;q[Ze+4>>2]=Ye}Ie=q[He>>2]-Je|0;q[a>>2]=Ie;He=q[He+4>>2]-Ye|0;q[a+4>>2]=He;Ke=a;if((Ie|0)<=-1){Ie=Ie+q[Td+4>>2]|0}q[Ke>>2]=Ie;if((He|0)<=-1){He=He+q[Td+4>>2]|0}q[a+4>>2]=He}function ng(a){a=a|0;var Td=0;q[a>>2]=6996;Td=q[a+136>>2];if(Td){q[a+140>>2]=Td;pp(Td)}Td=q[a+96>>2];if(Td){q[a+100>>2]=Td;pp(Td)}Td=q[a+76>>2];if(Td){pp(Td)}Td=q[a- -64>>2];if(Td){pp(Td)}Td=q[a+52>>2];if(Td){pp(Td)}Td=q[a+40>>2];if(Td){pp(Td)}return a|0}function og(a){a=a|0;var He=0;q[a>>2]=6996;He=q[a+136>>2];if(He){q[a+140>>2]=He;pp(He)}He=q[a+96>>2];if(He){q[a+100>>2]=He;pp(He)}He=q[a+76>>2];if(He){pp(He)}He=q[a- -64>>2];if(He){pp(He)}He=q[a+52>>2];if(He){pp(He)}He=q[a+40>>2];if(He){pp(He)}pp(a)}function pg(a,Ie){a=a|0;Ie=Ie|0;var bf=0,cf=0,df=0,ef=0,ff=0,gf=0,hf=0,jf=0;cf=T-32|0;T=cf;gf=1;while(1){ff=w(bf,12)+a|0;df=ff+44|0;td(q[df>>2],Ie);bf=bf+1|0;if(q[df>>2]){ef=_g(cf);bh(ef);df=q[df>>2]-bf|0;if((df|0)>=0){jf=ff+40|0;while(1){ff=0;while(1){hf=df+ff|0;ch(ef,q[q[jf>>2]+(hf>>>3&536870908)>>2]>>>(hf&31)&1);ff=ff+1|0;if((gf|0)!=(ff|0)){continue}break}df=df-bf|0;if((df|0)>=0){continue}break}}eh(ef,Ie);$g(ef)}gf=gf+1|0;if((bf|0)!=4){continue}break}q[cf>>2]=q[a+12>>2];gf=q[Ie+20>>2];bf=gf;ef=q[Ie+16>>2];if((bf|0)<0?1:(bf|0)<=0?ef>>>0>0?0:1:0){Vb(Ie,q[Ie+4>>2],cf,cf+4|0);ef=q[Ie+16>>2];bf=q[Ie+20>>2]}q[cf>>2]=q[a+20>>2];if((bf|0)<0?1:(bf|0)<=0?ef>>>0>0?0:1:0){Vb(Ie,q[Ie+4>>2],cf,cf+4|0)}T=cf+32|0;return 1}function qg(a,Ie,kf,lf,mf,nf){a=a|0;Ie=Ie|0;kf=kf|0;lf=lf|0;mf=mf|0;nf=nf|0;var of=0,qf=0,rf=0,sf=0,tf=0,uf=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,Lf=0,Mf=0,Nf=0,Of=0,Pf=0,Qf=0,Rf=0,Sf=0,Tf=0,Uf=0,Vf=0,Wf=0,Xf=0,Yf=0,Zf=0,_f=0,$f=0,ag=0,bg=0;of=T-256|0;T=of;Wf=q[a+32>>2];zf=q[a+28>>2];q[of+200>>2]=0;q[of+204>>2]=0;q[of+192>>2]=0;q[of+196>>2]=0;q[of+184>>2]=0;q[of+188>>2]=0;lf=of+176|0;q[lf>>2]=0;q[lf+4>>2]=0;q[of+168>>2]=0;q[of+172>>2]=0;q[of+160>>2]=0;q[of+164>>2]=0;if(mf){pf(of+160|0,mf);rf=q[lf>>2];lf=q[of+172>>2]}else{lf=0}nf=rf-lf>>2;a:{if(nf>>>0>=mf>>>0){if(nf>>>0<=mf>>>0){break a}q[of+176>>2]=lf+(mf<<2);break a}pf(of+160|12,mf-nf|0)}nf=q[of+184>>2];lf=q[of+188>>2]-nf>>2;b:{if(lf>>>0>=mf>>>0){if(lf>>>0<=mf>>>0){break b}q[of+188>>2]=nf+(mf<<2);break b}pf(of+184|0,mf-lf|0)}nf=q[of+196>>2];lf=q[of+200>>2]-nf>>2;c:{if(lf>>>0>=mf>>>0){if(lf>>>0<=mf>>>0){break c}q[of+200>>2]=nf+(mf<<2);break c}pf(of+196|0,mf-lf|0)}q[of+152>>2]=0;q[of+144>>2]=0;q[of+148>>2]=0;d:{e:{if(mf){if(mf>>>0>=1073741824){break e}lf=mf<<2;nf=zo(lf);q[of+144>>2]=nf;rf=lf+nf|0;q[of+152>>2]=rf;wp(nf,0,lf);q[of+148>>2]=rf}Lf=a+136|0;nf=q[a+136>>2];lf=q[a+140>>2]-nf>>2;f:{if(lf>>>0<mf>>>0){pf(Lf,mf-lf|0);break f}if(lf>>>0<=mf>>>0){break f}q[a+140>>2]=nf+(mf<<2)}q[of+120>>2]=0;q[of+124>>2]=0;q[of+112>>2]=0;q[of+116>>2]=0;q[of+104>>2]=0;q[of+108>>2]=0;q[of+96>>2]=0;q[of+100>>2]=0;q[of+88>>2]=0;q[of+92>>2]=0;q[of+80>>2]=0;q[of+84>>2]=0;q[of+72>>2]=0;q[of+76>>2]=0;q[of+64>>2]=0;q[of+68>>2]=0;q[of+56>>2]=0;q[of+48>>2]=0;q[of+52>>2]=0;if(mf){lf=mf<<2;If=zo(lf);q[of+48>>2]=If;Hf=lf+If|0;q[of+56>>2]=Hf;wp(If,0,lf);q[of+52>>2]=Hf}lf=q[a+36>>2];rf=q[lf>>2];lf=q[lf+4>>2]-rf|0;if((lf|0)<5){break d}g:{Jf=lf>>>2;sf=Jf+ -1|0;if(lf>>2>>>0>sf>>>0){Pf=mf<<2;Xf=a+8|0;Mf=a+96|0;Yf=of+141|0;Qf=of+36|0;Rf=of+24|0;Nf=of+20|0;Zf=Nf+24|0;Sf=Nf+16|0;Of=a+136|0;while(1){lf=0;Ef=sf;tf=q[(sf<<2)+rf>>2];h:{if((tf|0)==-1){break h}wf=tf+((tf>>>0)%3|0?-1:2)|0;Af=wf>>>5;sf=1;Ff=1<<(wf&31);Gf=q[zf>>2];nf=0;rf=tf;while(1){i:{if(q[Gf+(rf>>>3&536870908)>>2]>>>(rf&31)&1){break i}lf=q[q[q[zf+64>>2]+12>>2]+(rf<<2)>>2];if((lf|0)==-1){break i}uf=q[Wf>>2];qf=q[zf+28>>2];Bf=q[uf+(q[qf+(lf<<2)>>2]<<2)>>2];if((Bf|0)>=(Ef|0)){break i}xf=lf+1|0;xf=q[uf+(q[qf+(((xf>>>0)%3|0?xf:lf+ -2|0)<<2)>>2]<<2)>>2];if((xf|0)>=(Ef|0)){break i}lf=q[uf+(q[qf+(lf+((lf>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((lf|0)>=(Ef|0)){break i}if((mf|0)>=1){uf=q[(of+160|0)+w(nf,12)>>2];lf=w(lf,mf);xf=w(mf,xf);Bf=w(mf,Bf);qf=0;while(1){q[uf+(qf<<2)>>2]=(q[(lf+qf<<2)+Ie>>2]+q[(qf+xf<<2)+Ie>>2]|0)-q[(qf+Bf<<2)+Ie>>2];qf=qf+1|0;if((qf|0)!=(mf|0)){continue}break}}lf=4;nf=nf+1|0;if((nf|0)==4){break h}}j:{if(sf&1){qf=-1;lf=rf+1|0;lf=(lf>>>0)%3|0?lf:rf+ -2|0;if((lf|0)==-1|q[q[zf>>2]+(lf>>>3&536870908)>>2]>>>(lf&31)&1){break j}lf=q[q[q[zf+64>>2]+12>>2]+(lf<<2)>>2];if((lf|0)==-1){break j}rf=lf+1|0;qf=(rf>>>0)%3|0?rf:lf+ -2|0;break j}qf=-1;lf=((rf>>>0)%3|0?-1:2)+rf|0;if((lf|0)==-1|q[q[zf>>2]+(lf>>>3&536870908)>>2]>>>(lf&31)&1){break j}lf=q[q[q[zf+64>>2]+12>>2]+(lf<<2)>>2];if((lf|0)==-1){break j}if((lf>>>0)%3){qf=lf+ -1|0;break j}qf=lf+2|0}if((qf|0)==(tf|0)){lf=nf;break h}rf=qf;lf=(qf|0)!=-1;qf=(lf|sf^-1)&1;rf=qf?rf:-1;sf=lf&sf;if(!((wf|0)==-1|qf)){if(Ff&q[q[zf>>2]+(Af<<2)>>2]){lf=nf;break h}lf=q[q[q[zf+64>>2]+12>>2]+(wf<<2)>>2];if((lf|0)==-1){lf=nf;break h}sf=0;if((lf>>>0)%3){rf=lf+ -1|0}else{rf=lf+2|0}}lf=nf;if((rf|0)!=-1){continue}break}}tf=0;o[of+16|0]=0;q[of+8>>2]=0;q[of+12>>2]=0;q[Zf>>2]=0;q[Sf>>2]=0;q[Sf+4>>2]=0;nf=Nf;q[nf+8>>2]=0;q[nf+12>>2]=0;q[nf>>2]=0;q[nf+4>>2]=0;Tf=w(mf,Ef)<<2;Gf=Tf+Ie|0;wf=(w(Jf+ -2|0,mf)<<2)+Ie|0;qf=q[Of>>2];sf=0;if((mf|0)>0){while(1){rf=sf<<2;nf=q[rf+wf>>2]-q[rf+Gf>>2]|0;q[rf+If>>2]=nf;uf=qf+rf|0;rf=nf>>31;q[uf>>2]=rf^nf<<1;tf=(rf^nf+rf)+tf|0;sf=sf+1|0;if((sf|0)!=(mf|0)){continue}break}}Ph(of+232|0,Mf,qf,mf);nf=Sh(of+232|0);rf=V;sf=Th(of+232|0);nf=sf+nf|0;rf=V+rf|0;rf=nf>>>0<sf>>>0?rf+1|0:rf;sf=nf;Bf=(lf|0)>0;if(Bf){uf=(lf<<3)+ -8|0;qf=uf+(of- -64|0)|0;Af=qf;xf=qf;nf=q[qf+4>>2];Ff=lf+q[qf>>2]|0;if(Ff>>>0<lf>>>0){nf=nf+1|0}qf=Ff;q[xf>>2]=qf;q[Af+4>>2]=nf;yf=D(Nh(qf,q[uf+(of+96|0)>>2])*(+(qf>>>0)+4294967296*+(nf|0)));k:{if(y(yf)<0x8000000000000000){qf=y(yf)>=1?yf>0?~~A(C(yf/4294967296),4294967295)>>>0:~~D((yf- +(~~yf>>>0>>>0))/4294967296)>>>0:0;nf=~~yf>>>0;break k}qf=-2147483648;nf=0}rf=qf+rf|0;nf=nf+sf|0;if(nf>>>0<sf>>>0){rf=rf+1|0}sf=nf}q[of+20>>2]=0;o[of+16|0]=0;q[of+8>>2]=sf;q[of+12>>2]=tf;cc(Rf,wf,wf+Pf|0);Uf=q[of+48>>2];vf(Qf,Uf,Hf);if((lf|0)>=1){Af=(of+140|0)+lf|0;Ff=Af+ -2|0;wf=Af+ -1|0;nf=(lf<<3)+ -8|0;Vf=nf+(of- -64|0)|0;_f=nf+(of+96|0)|0;nf=1;xf=0;while(1){wp(of+140|0,1,lf);xf=xf+1|0;wp(of+140|0,0,xf);Hf=q[of+52>>2];$f=q[of+48>>2];l:{m:while(1){rf=(mf|0)<1;if(!rf){wp(q[of+144>>2],0,Pf)}uf=0;sf=q[of+144>>2];Cf=0;while(1){if(!r[(of+140|0)+uf|0]){if(!rf){tf=q[(of+160|0)+w(uf,12)>>2];qf=0;while(1){Df=qf<<2;Kf=Df+sf|0;q[Kf>>2]=q[Kf>>2]+q[tf+Df>>2];qf=qf+1|0;if((qf|0)!=(mf|0)){continue}break}}Cf=1<<uf|Cf}uf=uf+1|0;if((uf|0)!=(lf|0)){continue}break}qf=0;n:{if((mf|0)>0){Df=q[of+144>>2];while(1){rf=Df+(qf<<2)|0;q[rf>>2]=q[rf>>2]/(nf|0);qf=qf+1|0;if((qf|0)!=(mf|0)){continue}break}tf=0;uf=q[Of>>2];if((mf|0)<=0){break n}sf=0;while(1){qf=sf<<2;rf=q[qf+Df>>2]-q[qf+Gf>>2]|0;q[qf+Uf>>2]=rf;Kf=qf+uf|0;qf=rf>>31;q[Kf>>2]=qf^rf<<1;tf=(qf^qf+rf)+tf|0;sf=sf+1|0;if((sf|0)!=(mf|0)){continue}break}break n}uf=q[Of>>2];tf=0}Ph(of+232|0,Mf,uf,mf);sf=Sh(of+232|0)+Th(of+232|0)|0;qf=sf;if(Bf){rf=q[Vf+4>>2];sf=q[Vf>>2];yf=D(Nh(sf,q[_f>>2]+nf|0)*(+(sf>>>0)+4294967296*+(rf|0)));o:{if(y(yf)<0x8000000000000000){sf=~~yf>>>0;break o}sf=0}qf=sf+qf|0}rf=q[of+8>>2];if(!((qf|0)>(rf|0)|(tf|0)>=q[of+12>>2]?(qf|0)>=(rf|0):0)){q[of+20>>2]=nf;o[of+16|0]=Cf;q[of+8>>2]=qf;q[of+12>>2]=tf;vf(Rf,q[of+144>>2],q[of+148>>2]);vf(Qf,$f,Hf)}if((wf|0)==(of+140|0)){break l}rf=-1;uf=r[wf|0];qf=uf;while(1){tf=qf&255;sf=rf+ -1|0;Cf=sf+Af|0;qf=r[Cf|0];if(qf>>>0<tf>>>0){tf=wf;sf=Af;if(qf>>>0>=(uf&255)>>>0){while(1){uf=tf;tf=tf+ -1|0;Df=sf+ -2|0;sf=uf;if(qf>>>0>=r[Df|0]){continue}break}uf=1}sf=rf+Af|0;o[Cf|0]=uf;o[tf|0]=qf;qf=wf;if((rf|0)==-1){continue m}while(1){rf=r[sf|0];o[sf|0]=r[qf|0];o[qf|0]=rf;sf=sf+1|0;qf=qf+ -1|0;if(sf>>>0<qf>>>0){continue}break}continue m}rf=sf;if((Cf|0)!=(of+140|0)){continue}break}break}if(wf>>>0<=of+140>>>0){break l}rf=r[of+140|0];o[of+140|0]=uf;o[wf|0]=rf;rf=Yf;qf=Ff;if(rf>>>0>=qf>>>0){break l}while(1){sf=r[rf|0];o[rf|0]=r[qf|0];o[qf|0]=sf;rf=rf+1|0;qf=qf+ -1|0;if(rf>>>0<qf>>>0){continue}break}}nf=nf+1|0;if((lf|0)!=(xf|0)){continue}break}}if(Bf){nf=((lf<<3)+of|0)+88|0;sf=nf;tf=q[of+20>>2];qf=tf;rf=qf+q[nf>>2]|0;nf=q[nf+4>>2]+(qf>>31)|0;q[sf>>2]=rf;q[sf+4>>2]=rf>>>0<qf>>>0?nf+1|0:nf}p:{if((mf|0)<=0){sf=q[Lf>>2];break p}sf=q[Lf>>2];qf=0;rf=q[of+36>>2];while(1){tf=qf<<2;nf=q[tf+rf>>2];q[sf+tf>>2]=nf<<1^nf>>31;qf=qf+1|0;if((qf|0)!=(mf|0)){continue}break}}Rh(of+232|0,Mf,sf,mf);if(Bf){nf=w(lf,12)+a|0;uf=nf+36|0;tf=nf+32|0;nf=nf+28|0;rf=0;while(1){wf=q[uf>>2];sf=wf<<5;qf=q[tf>>2];q:{if(!(r[of+16|0]>>>rf&1)){if((qf|0)==(sf|0)){if((qf+1|0)<=-1){break g}sf=nf;if(qf>>>0<=1073741822){qf=qf+32&-32;wf=wf<<6;qf=wf>>>0<qf>>>0?qf:wf}else{qf=2147483647}Oe(sf,qf);qf=q[tf>>2]}q[tf>>2]=qf+1;sf=q[nf>>2]+(qf>>>3&536870908)|0;q[sf>>2]=q[sf>>2]|1<<(qf&31);break q}if((qf|0)==(sf|0)){if((qf+1|0)<=-1){break g}sf=nf;if(qf>>>0<=1073741822){qf=qf+32&-32;wf=wf<<6;qf=wf>>>0<qf>>>0?qf:wf}else{qf=2147483647}Oe(sf,qf);qf=q[tf>>2]}q[tf>>2]=qf+1;sf=q[nf>>2]+(qf>>>3&536870908)|0;wf=q[sf>>2];ag=sf,bg=Yp(-2,qf)&wf,q[ag>>2]=bg}rf=rf+1|0;if((rf|0)!=(lf|0)){continue}break}}lf=q[of+24>>2];nf=q[lf>>2];lf=q[lf+4>>2];rf=q[Gf+4>>2];q[of+224>>2]=q[Gf>>2];q[of+228>>2]=rf;q[of+216>>2]=nf;q[of+220>>2]=lf;mg(of+232|0,Xf,of+224|0,of+216|0);lf=kf+Tf|0;q[lf>>2]=q[of+232>>2];q[lf+4>>2]=q[of+236>>2];lf=q[of+36>>2];if(lf){q[of+40>>2]=lf;pp(lf)}lf=q[of+24>>2];if(lf){q[of+28>>2]=lf;pp(lf)}if((Jf|0)<3){break d}Jf=Ef;lf=q[a+36>>2];rf=q[lf>>2];sf=Ef+ -1|0;if(q[lf+4>>2]-rf>>2>>>0>sf>>>0){continue}break}}Uo();F()}To();F()}To();F()}if((mf|0)>=1){wp(q[of+160>>2],0,mf<<2)}lf=q[of+160>>2];mf=q[lf>>2];lf=q[lf+4>>2];nf=q[Ie+4>>2];q[of+232>>2]=q[Ie>>2];q[of+236>>2]=nf;q[of+224>>2]=mf;q[of+228>>2]=lf;mg(of+8|0,a+8|0,of+232|0,of+224|0);q[kf>>2]=q[of+8>>2];q[kf+4>>2]=q[of+12>>2];a=q[of+48>>2];if(a){q[of+52>>2]=a;pp(a)}a=q[of+144>>2];if(a){q[of+148>>2]=a;pp(a)}a=q[of+196>>2];if(a){q[of+200>>2]=a;pp(a)}a=q[of+184>>2];if(a){q[of+188>>2]=a;pp(a)}a=q[of+172>>2];if(a){q[of+176>>2]=a;pp(a)}a=q[of+160>>2];if(a){q[of+164>>2]=a;pp(a)}T=of+256|0;return 1}function rg(a){a=a|0;var Ie=0;q[a>>2]=7268;Ie=q[a+56>>2];if(Ie){pp(Ie)}return a|0}function sg(a){a=a|0;var kf=0;q[a>>2]=7268;kf=q[a+56>>2];if(kf){pp(kf)}pp(a)}function tg(a){a=a|0;if(!(!q[a+40>>2]|!q[a+24>>2]|(!q[a+28>>2]|!q[a+32>>2]))){return q[a+36>>2]!=0|0}return 0}function ug(a,lf){a=a|0;lf=lf|0;var mf=0;if(!(q[lf+56>>2]|r[lf+24|0]!=3)){q[a+40>>2]=lf;mf=1}return mf|0}function vg(a,lf){a=a|0;lf=lf|0;var nf=0,pf=0,vf=0,cg=0,dg=0;nf=T-48|0;T=nf;q[nf+40>>2]=q[a+60>>2];cg=q[lf+20>>2];if((cg|0)<0?1:(cg|0)<=0?t[lf+16>>2]>0?0:1:0){Vb(lf,q[lf+4>>2],nf+40|0,nf+44|0)}cg=_g(nf+8|0);bh(cg);if(q[nf+40>>2]>=1){pf=1;while(1){dg=pf;pf=q[q[a+56>>2]+(vf>>>3&536870908)>>2]>>>(vf&31);ch(cg,(dg^pf^-1)&1);pf=pf&1;vf=vf+1|0;if((vf|0)<q[nf+40>>2]){continue}break}}eh(cg,lf);q[nf+44>>2]=q[a+12>>2];pf=q[lf+20>>2];vf=pf;pf=q[lf+16>>2];if((vf|0)<0?1:(vf|0)<=0?pf>>>0>0?0:1:0){Vb(lf,q[lf+4>>2],nf+44|0,nf+48|0);pf=q[lf+16>>2];vf=q[lf+20>>2]}q[nf+44>>2]=q[a+20>>2];if((vf|0)<0?1:(vf|0)<=0?pf>>>0>0?0:1:0){Vb(lf,q[lf+4>>2],nf+44|0,nf+48|0)}$g(cg);T=nf+48|0;return 1}function wg(a,lf,eg,fg,gg,hg){a=a|0;lf=lf|0;eg=eg|0;fg=fg|0;gg=gg|0;hg=hg|0;var ig=0,jg=0,kg=0,lg=0,ng=0,og=0,pg=0,qg=0;fg=T-32|0;T=fg;q[a+44>>2]=hg;hg=q[a+36>>2];ig=q[hg>>2];a:{hg=q[hg+4>>2]-ig|0;if((hg|0)<1){break a}jg=hg>>2;hg=(hg>>>2)+ -1|0;if(jg>>>0>hg>>>0){ng=a+40|0;og=a+8|0;pg=a+36|0;while(1){Df(ng,q[(hg<<2)+ig>>2],lf,hg);ig=q[a+48>>2];jg=q[a+52>>2];kg=w(gg,hg)<<2;lg=kg+lf|0;qg=q[lg+4>>2];q[fg+16>>2]=q[lg>>2];q[fg+20>>2]=qg;q[fg+8>>2]=ig;q[fg+12>>2]=jg;mg(fg+24|0,og,fg+16|0,fg+8|0);ig=eg+kg|0;q[ig>>2]=q[fg+24>>2];q[ig+4>>2]=q[fg+28>>2];hg=hg+ -1|0;if((hg|0)<0){break a}jg=q[pg>>2];ig=q[jg>>2];if(q[jg+4>>2]-ig>>2>>>0>hg>>>0){continue}break}}Uo();F()}T=fg+32|0;return 1}function xg(a){a=a|0;q[a>>2]=7528;$g(a+88|0);return a|0}function yg(a){a=a|0;q[a>>2]=7528;$g(a+88|0);pp(a)}function zg(a){a=a|0;a:{if(!q[a+44>>2]|!q[a+48>>2]|(!q[a+24>>2]|!q[a+28>>2])){break a}if(!q[a+32>>2]){break a}return q[a+36>>2]!=0|0}return 0}function Ag(a,lf){a=a|0;lf=lf|0;var eg=0;if(!(q[lf+56>>2]|r[lf+24|0]!=3)){q[a+44>>2]=lf;eg=1}return eg|0}function Bg(a,lf){a=a|0;lf=lf|0;var fg=0,gg=0,hg=0,mg=0;fg=T-16|0;T=fg;q[fg+12>>2]=q[a+12>>2];gg=q[lf+20>>2];hg=gg;mg=q[lf+16>>2];if((gg|0)<0?1:(gg|0)<=0?mg>>>0>0?0:1:0){Vb(lf,q[lf+4>>2],fg+12|0,fg+16|0);mg=q[lf+16>>2];hg=q[lf+20>>2]}q[fg+8>>2]=q[a+20>>2];if((hg|0)<0?1:(hg|0)<=0?mg>>>0>0?0:1:0){Vb(lf,q[lf+4>>2],fg+8|0,fg+12|0)}eh(a+88|0,lf);T=fg+16|0;return 1}function Cg(a,lf,rg,sg,tg,ug){a=a|0;lf=lf|0;rg=rg|0;sg=sg|0;tg=tg|0;ug=ug|0;var vg=0,wg=0,xg=0,yg=0,zg=0,Ag=0,Bg=0,Cg=0,Dg=0,Eg=0,Fg=0,Gg=0,Hg=0,Ig=0,Jg=0;wg=T-48|0;T=wg;Eg=a+8|0;sg=q[Eg>>2];if(sg+ -2>>>0<=28){q[a+72>>2]=sg;sg=-1<<sg;tg=-2-sg|0;q[a+80>>2]=tg;q[a+76>>2]=sg^-1;q[a+84>>2]=(tg|0)/2}q[a+48>>2]=ug;Fg=a+88|0;bh(Fg);sg=q[a+36>>2];tg=q[sg>>2];ug=sg+4|0;vg=q[ug>>2];q[wg+16>>2]=0;q[wg+8>>2]=0;q[wg+12>>2]=0;a:{tg=vg-tg|0;if((tg|0)<1){break a}xg=q[sg>>2];if((xg|0)!=q[ug>>2]){Gg=tg>>2;Hg=a+40|0;Ig=rg+4|0;Jg=a+36|0;while(1){Mf(Hg,q[(Dg<<2)+xg>>2],wg+8|0);ug=q[wg+12>>2];vg=ug>>31;tg=q[wg+8>>2];yg=tg>>31;xg=q[wg+16>>2];Bg=xg>>31;sg=0;Bg=Bg^xg+Bg;vg=Bg+((vg^ug+vg)+(yg^tg+yg)|0)|0;if(vg>>>0<Bg>>>0){sg=1}b:{if(!(sg|vg)){zg=q[a+84>>2];q[wg+8>>2]=zg;Ag=zg;break b}zg=q[a+84>>2];Bg=zg>>31;ug=Vp(Up(zg,Bg,ug,ug>>31),V,vg,sg);q[wg+12>>2]=ug;Ag=Vp(Up(zg,Bg,tg,tg>>31),V,vg,sg);q[wg+8>>2]=Ag;sg=Ag>>31;sg=(zg-(sg+Ag^sg)|0)+((ug|0)<0?ug:0-ug|0)|0;xg=(xg|0)>-1?sg:0-sg|0;q[wg+16>>2]=xg}c:{if((Ag|0)>=0){vg=ug+zg|0;yg=xg+zg|0;break c}d:{if((ug|0)<=-1){sg=xg>>31;vg=sg+xg^sg;break d}sg=xg>>31;vg=q[a+80>>2]-(sg+xg^sg)|0}if((xg|0)<=-1){sg=ug>>31;yg=sg+ug^sg;break c}sg=ug>>31;yg=q[a+80>>2]-(sg+ug^sg)|0}tg=q[a+80>>2];Bg=tg;Cg=tg;e:{if(!(vg|yg)){break e}if(!((tg|0)!=(yg|0)|vg)){Bg=yg;Cg=yg;break e}if(!((tg|0)!=(vg|0)|yg)){Bg=vg;Cg=vg;break e}if(!((zg|0)>=(yg|0)|vg)){Bg=(zg<<1)-yg|0;Cg=0;break e}if(!((tg|0)!=(vg|0)|(zg|0)<=(yg|0))){Bg=(zg<<1)-yg|0;Cg=vg;break e}if(!((tg|0)!=(yg|0)|(zg|0)<=(vg|0))){Bg=yg;Cg=(zg<<1)-vg|0;break e}if(yg){Bg=yg;Cg=vg;break e}Bg=0;sg=vg;Cg=sg;if((zg|0)>=(sg|0)){break e}Cg=(zg<<1)-vg|0}vg=Cg;q[wg+16>>2]=0-xg;q[wg+12>>2]=0-ug;q[wg+8>>2]=0-Ag;f:{if((Ag|0)<=0){sg=zg-xg|0;ug=zg-ug|0;break f}sg=ug>>31;sg=sg+ug^sg;sg=(xg|0)>0?sg:tg-sg|0;yg=xg>>31;yg=yg+xg^yg;ug=(ug|0)>0?yg:tg-yg|0}g:{if(!(sg|ug)){sg=tg;break g}if(!((sg|0)!=(tg|0)|ug)){sg=tg;break g}yg=(tg|0)!=(ug|0);if(!(sg|yg)){sg=tg;break g}if(!((zg|0)>=(sg|0)|ug)){sg=(zg<<1)-sg|0;tg=0;break g}if(!((zg|0)<=(sg|0)|yg)){sg=(zg<<1)-sg|0;break g}if(!((sg|0)!=(tg|0)|(zg|0)<=(ug|0))){sg=tg;tg=(zg<<1)-ug|0;break g}if(sg){tg=ug;break g}sg=0;if((zg|0)>=(ug|0)){tg=ug;break g}tg=(zg<<1)-ug|0}ug=(Dg<<3)+lf|0;yg=q[ug+4>>2];q[wg+32>>2]=q[ug>>2];q[wg+36>>2]=yg;q[wg+28>>2]=Bg;q[wg+24>>2]=vg;mg(wg+40|0,Eg,wg+32|0,wg+24|0);Ag=q[wg+44>>2];xg=q[wg+40>>2];vg=q[ug+4>>2];q[wg+32>>2]=q[ug>>2];q[wg+36>>2]=vg;q[wg+28>>2]=sg;q[wg+24>>2]=tg;mg(wg+40|0,Eg,wg+32|0,wg+24|0);ug=q[wg+44>>2];tg=q[wg+40>>2];sg=q[a+84>>2];h:{if((sg|0)<(xg|0)){xg=xg-q[a+76>>2]|0;break h}if((xg|0)>=(0-sg|0)){break h}xg=q[a+76>>2]+xg|0}i:{if((sg|0)<(Ag|0)){Ag=Ag-q[a+76>>2]|0;break i}if((Ag|0)>=(0-sg|0)){break i}Ag=q[a+76>>2]+Ag|0}j:{if((sg|0)<(tg|0)){tg=tg-q[a+76>>2]|0;break j}if((tg|0)>=(0-sg|0)){break j}tg=q[a+76>>2]+tg|0}k:{if((sg|0)<(ug|0)){ug=ug-q[a+76>>2]|0;break k}if((ug|0)>=(0-sg|0)){break k}ug=q[a+76>>2]+ug|0}sg=Dg<<1;vg=Ag>>31;Cg=vg+Ag^vg;vg=xg>>31;yg=Cg+(vg+xg^vg)|0;vg=ug>>31;Cg=vg+ug^vg;vg=tg>>31;l:{if((yg|0)<(Cg+(vg+tg^vg)|0)){ch(Fg,0);tg=(sg<<2)+rg|0;if((xg|0)<=-1){xg=q[a+76>>2]+xg|0}q[tg>>2]=xg;if((Ag|0)>-1){ug=Ag;break l}ug=q[a+76>>2]+Ag|0;break l}ch(Fg,1);vg=(sg<<2)+rg|0;if((tg|0)<=-1){tg=q[a+76>>2]+tg|0}q[vg>>2]=tg;if((ug|0)>-1){break l}ug=q[a+76>>2]+ug|0}q[(sg<<2)+Ig>>2]=ug;Dg=Dg+1|0;if((Dg|0)>=(Gg|0)){break a}sg=q[Jg>>2];xg=q[sg>>2];if(q[sg+4>>2]-xg>>2>>>0>Dg>>>0){continue}break}}Uo();F()}T=wg+48|0;return 1}function Dg(a,lf,rg,sg,tg,ug){a=a|0;lf=lf|0;rg=rg|0;sg=sg|0;tg=tg|0;ug=ug|0;var Kg=0,Lg=0,Mg=0,Ng=0,Og=0,Pg=0,Qg=0,Rg=0,Sg=0,Tg=0,Ug=0,Vg=0,Wg=0,Xg=0;Lg=T-32|0;T=Lg;sg=(tg&1073741823)!=(tg|0)?-1:tg<<2;Rg=wp(zo(sg),0,sg);sg=q[a+36>>2];Kg=q[sg>>2];a:{sg=q[sg+4>>2]-Kg|0;if((sg|0)<5){break a}ug=sg>>2;sg=ug+ -1|0;if(ug>>>0>sg>>>0){Ug=a+8|0;Vg=q[a+32>>2];Wg=a+36|0;Sg=q[a+28>>2];Xg=Sg+12|0;while(1){Og=w(sg,tg);b:{c:{Kg=q[(sg<<2)+Kg>>2];if((Kg|0)==-1){break c}Kg=q[q[Xg>>2]+(Kg<<2)>>2];if((Kg|0)==-1){break c}Mg=-1;Pg=q[Vg>>2];Ng=q[Sg>>2];Tg=q[Pg+(q[Ng+(Kg<<2)>>2]<<2)>>2];Qg=Kg+1|0;Qg=(Qg>>>0)%3|0?Qg:Kg+ -2|0;if((Qg|0)!=-1){Qg=q[(Qg<<2)+Ng>>2]}else{Qg=-1}Kg=Kg+((Kg>>>0)%3|0?-1:2)|0;if((Kg|0)!=-1){Mg=q[(Kg<<2)+Ng>>2]}if((Tg|0)>=(sg|0)){break c}Kg=q[(Qg<<2)+Pg>>2];if((Kg|0)>=(sg|0)){break c}Mg=q[Pg+(Mg<<2)>>2];if((Mg|0)>=(sg|0)){break c}if((tg|0)>=1){Mg=w(tg,Mg);Ng=w(tg,Kg);Pg=w(tg,Tg);Kg=0;while(1){q[(Kg<<2)+Rg>>2]=(q[(Kg+Mg<<2)+lf>>2]+q[(Kg+Ng<<2)+lf>>2]|0)-q[(Kg+Pg<<2)+lf>>2];Kg=Kg+1|0;if((Kg|0)!=(tg|0)){continue}break}}Kg=q[Rg>>2];Mg=q[Rg+4>>2];Og=Og<<2;Ng=Og+lf|0;Pg=q[Ng+4>>2];q[Lg+16>>2]=q[Ng>>2];q[Lg+20>>2]=Pg;q[Lg+8>>2]=Kg;q[Lg+12>>2]=Mg;break b}Kg=(w(ug+ -2|0,tg)<<2)+lf|0;Mg=q[Kg>>2];Kg=q[Kg+4>>2];Og=Og<<2;Ng=Og+lf|0;Pg=q[Ng+4>>2];q[Lg+16>>2]=q[Ng>>2];q[Lg+20>>2]=Pg;q[Lg+8>>2]=Mg;q[Lg+12>>2]=Kg}mg(Lg+24|0,Ug,Lg+16|0,Lg+8|0);Kg=rg+Og|0;q[Kg>>2]=q[Lg+24>>2];q[Kg+4>>2]=q[Lg+28>>2];if((ug|0)<3){break a}ug=sg;Og=q[Wg>>2];Kg=q[Og>>2];sg=sg+ -1|0;if(q[Og+4>>2]-Kg>>2>>>0>sg>>>0){continue}break}}Uo();F()}if((tg|0)>=1){wp(Rg,0,tg<<2)}sg=q[Rg>>2];tg=q[Rg+4>>2];ug=q[lf+4>>2];q[Lg+16>>2]=q[lf>>2];q[Lg+20>>2]=ug;q[Lg+8>>2]=sg;q[Lg+12>>2]=tg;mg(Lg+24|0,a+8|0,Lg+16|0,Lg+8|0);q[rg>>2]=q[Lg+24>>2];q[rg+4>>2]=q[Lg+28>>2];pp(Rg);T=Lg+32|0;return 1}function Eg(a){a=a|0;var lf=0;q[a>>2]=8700;lf=q[a+136>>2];if(lf){q[a+140>>2]=lf;pp(lf)}lf=q[a+96>>2];if(lf){q[a+100>>2]=lf;pp(lf)}lf=q[a+76>>2];if(lf){pp(lf)}lf=q[a- -64>>2];if(lf){pp(lf)}lf=q[a+52>>2];if(lf){pp(lf)}lf=q[a+40>>2];if(lf){pp(lf)}return a|0}function Fg(a){a=a|0;var rg=0;q[a>>2]=8700;rg=q[a+136>>2];if(rg){q[a+140>>2]=rg;pp(rg)}rg=q[a+96>>2];if(rg){q[a+100>>2]=rg;pp(rg)}rg=q[a+76>>2];if(rg){pp(rg)}rg=q[a- -64>>2];if(rg){pp(rg)}rg=q[a+52>>2];if(rg){pp(rg)}rg=q[a+40>>2];if(rg){pp(rg)}pp(a)}function Gg(a,sg,tg,ug,Yg,Zg){a=a|0;sg=sg|0;tg=tg|0;ug=ug|0;Yg=Yg|0;Zg=Zg|0;var _g=0,$g=0,ah=0,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,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,Hh=0,Ih=0,Jh=0,Kh=0,Lh=0;_g=T-256|0;T=_g;Eh=q[a+32>>2];wh=q[a+28>>2];q[_g+200>>2]=0;q[_g+204>>2]=0;q[_g+192>>2]=0;q[_g+196>>2]=0;q[_g+184>>2]=0;q[_g+188>>2]=0;ug=_g+176|0;q[ug>>2]=0;q[ug+4>>2]=0;q[_g+168>>2]=0;q[_g+172>>2]=0;q[_g+160>>2]=0;q[_g+164>>2]=0;if(Yg){pf(_g+160|0,Yg);dh=q[ug>>2];ug=q[_g+172>>2]}else{ug=0}Zg=dh-ug>>2;a:{if(Zg>>>0>=Yg>>>0){if(Zg>>>0<=Yg>>>0){break a}q[_g+176>>2]=ug+(Yg<<2);break a}pf(_g+160|12,Yg-Zg|0)}Zg=q[_g+184>>2];ug=q[_g+188>>2]-Zg>>2;b:{if(ug>>>0>=Yg>>>0){if(ug>>>0<=Yg>>>0){break b}q[_g+188>>2]=Zg+(Yg<<2);break b}pf(_g+184|0,Yg-ug|0)}Zg=q[_g+196>>2];ug=q[_g+200>>2]-Zg>>2;c:{if(ug>>>0>=Yg>>>0){if(ug>>>0<=Yg>>>0){break c}q[_g+200>>2]=Zg+(Yg<<2);break c}pf(_g+196|0,Yg-ug|0)}q[_g+152>>2]=0;q[_g+144>>2]=0;q[_g+148>>2]=0;d:{e:{if(Yg){if(Yg>>>0>=1073741824){break e}ug=Yg<<2;Zg=zo(ug);q[_g+144>>2]=Zg;ah=ug+Zg|0;q[_g+152>>2]=ah;wp(Zg,0,ug);q[_g+148>>2]=ah}sh=a+136|0;Zg=q[a+136>>2];ug=q[a+140>>2]-Zg>>2;f:{if(ug>>>0<Yg>>>0){pf(sh,Yg-ug|0);break f}if(ug>>>0<=Yg>>>0){break f}q[a+140>>2]=Zg+(Yg<<2)}q[_g+120>>2]=0;q[_g+124>>2]=0;q[_g+112>>2]=0;q[_g+116>>2]=0;q[_g+104>>2]=0;q[_g+108>>2]=0;q[_g+96>>2]=0;q[_g+100>>2]=0;q[_g+88>>2]=0;q[_g+92>>2]=0;q[_g+80>>2]=0;q[_g+84>>2]=0;q[_g+72>>2]=0;q[_g+76>>2]=0;q[_g+64>>2]=0;q[_g+68>>2]=0;q[_g+56>>2]=0;q[_g+48>>2]=0;q[_g+52>>2]=0;if(Yg){ug=Yg<<2;ph=zo(ug);q[_g+48>>2]=ph;oh=ug+ph|0;q[_g+56>>2]=oh;wp(ph,0,ug);q[_g+52>>2]=oh}ug=q[a+36>>2];dh=q[ug>>2];ug=q[ug+4>>2]-dh|0;if((ug|0)<5){break d}g:{qh=ug>>>2;ah=qh+ -1|0;if(ug>>2>>>0>ah>>>0){xh=Yg<<2;Fh=a+8|0;th=a+96|0;Gh=_g+141|0;yh=_g+36|0;zh=_g+24|0;uh=_g+20|0;Hh=uh+24|0;Ah=uh+16|0;vh=a+136|0;while(1){Zg=0;mh=ah;ah=q[(ah<<2)+dh>>2];h:{if((ah|0)==-1){break h}eh=q[wh+12>>2];kh=ah+((ah>>>0)%3|0?-1:2)|0;nh=eh+(kh<<2)|0;dh=1;ug=0;bh=ah;while(1){Zg=q[eh+(bh<<2)>>2];i:{if((Zg|0)==-1){break i}ch=-1;gh=q[Eh>>2];$g=q[wh>>2];jh=q[gh+(q[$g+(Zg<<2)>>2]<<2)>>2];hh=Zg+1|0;hh=(hh>>>0)%3|0?hh:Zg+ -2|0;if((hh|0)!=-1){hh=q[$g+(hh<<2)>>2]}else{hh=-1}Zg=Zg+((Zg>>>0)%3|0?-1:2)|0;if((Zg|0)!=-1){ch=q[$g+(Zg<<2)>>2]}if((jh|0)>=(mh|0)){break i}Zg=q[(hh<<2)+gh>>2];if((Zg|0)>=(mh|0)){break i}ch=q[gh+(ch<<2)>>2];if((ch|0)>=(mh|0)){break i}gh=q[(_g+160|0)+w(ug,12)>>2];if((Yg|0)>=1){ch=w(Yg,ch);Zg=w(Yg,Zg);jh=w(Yg,jh);$g=0;while(1){q[gh+($g<<2)>>2]=(q[($g+ch<<2)+sg>>2]+q[(Zg+$g<<2)+sg>>2]|0)-q[($g+jh<<2)+sg>>2];$g=$g+1|0;if(($g|0)!=(Yg|0)){continue}break}}Zg=4;ug=ug+1|0;if((ug|0)==4){break h}}j:{if(dh&1){$g=bh+1|0;$g=($g>>>0)%3|0?$g:bh+ -2|0;Zg=-1;if(($g|0)==-1){break j}$g=q[eh+($g<<2)>>2];Zg=-1;if(($g|0)==-1){break j}Zg=$g+1|0;Zg=(Zg>>>0)%3|0?Zg:$g+ -2|0;break j}$g=((bh>>>0)%3|0?-1:2)+bh|0;Zg=-1;if(($g|0)==-1){break j}$g=q[eh+($g<<2)>>2];Zg=-1;if(($g|0)==-1){break j}Zg=$g+ -1|0;if(($g>>>0)%3){break j}Zg=$g+2|0}if((Zg|0)==(ah|0)){Zg=ug;break h}bh=Zg;Zg=(Zg|0)!=-1;ch=(Zg|dh^-1)&1;bh=ch?bh:-1;dh=Zg&dh;if(!((kh|0)==-1|ch)){Zg=q[nh>>2];if((Zg|0)==-1){Zg=ug;break h}dh=0;if((Zg>>>0)%3){bh=Zg+ -1|0}else{bh=Zg+2|0}}Zg=ug;if((bh|0)!=-1){continue}break}}ch=0;o[_g+16|0]=0;q[_g+8>>2]=0;q[_g+12>>2]=0;q[Hh>>2]=0;q[Ah>>2]=0;q[Ah+4>>2]=0;ug=uh;q[ug+8>>2]=0;q[ug+12>>2]=0;q[ug>>2]=0;q[ug+4>>2]=0;Bh=w(Yg,mh)<<2;hh=Bh+sg|0;dh=(w(qh+ -2|0,Yg)<<2)+sg|0;bh=q[vh>>2];ah=0;if((Yg|0)>0){while(1){$g=ah<<2;ug=q[$g+dh>>2]-q[$g+hh>>2]|0;q[$g+ph>>2]=ug;eh=$g+bh|0;$g=ug>>31;q[eh>>2]=$g^ug<<1;ch=($g^ug+$g)+ch|0;ah=ah+1|0;if((ah|0)!=(Yg|0)){continue}break}}Ph(_g+232|0,th,bh,Yg);ug=Sh(_g+232|0);ah=V;$g=Th(_g+232|0);ug=$g+ug|0;ah=V+ah|0;ah=ug>>>0<$g>>>0?ah+1|0:ah;$g=ug;kh=(Zg|0)>0;if(kh){eh=(Zg<<3)+ -8|0;bh=eh+(_g- -64|0)|0;gh=bh;fh=bh;ug=q[bh+4>>2];jh=Zg+q[bh>>2]|0;if(jh>>>0<Zg>>>0){ug=ug+1|0}bh=jh;q[fh>>2]=bh;q[gh+4>>2]=ug;ih=D(Nh(bh,q[eh+(_g+96|0)>>2])*(+(bh>>>0)+4294967296*+(ug|0)));k:{if(y(ih)<0x8000000000000000){bh=y(ih)>=1?ih>0?~~A(C(ih/4294967296),4294967295)>>>0:~~D((ih- +(~~ih>>>0>>>0))/4294967296)>>>0:0;ug=~~ih>>>0;break k}bh=-2147483648;ug=0}ah=ah+bh|0;ug=ug+$g|0;if(ug>>>0<$g>>>0){ah=ah+1|0}$g=ug}q[_g+20>>2]=0;o[_g+16|0]=0;q[_g+8>>2]=$g;q[_g+12>>2]=ch;cc(zh,dh,dh+xh|0);Ch=q[_g+48>>2];vf(yh,Ch,oh);if((Zg|0)>=1){gh=(_g+140|0)+Zg|0;jh=gh+ -2|0;eh=gh+ -1|0;ug=(Zg<<3)+ -8|0;Dh=ug+(_g- -64|0)|0;Ih=ug+(_g+96|0)|0;ug=1;nh=0;while(1){wp(_g+140|0,1,Zg);nh=nh+1|0;wp(_g+140|0,0,nh);oh=q[_g+52>>2];Jh=q[_g+48>>2];l:{m:while(1){ah=(Yg|0)<1;if(!ah){wp(q[_g+144>>2],0,xh)}bh=0;ch=q[_g+144>>2];dh=0;while(1){if(!r[(_g+140|0)+bh|0]){if(!ah){fh=q[(_g+160|0)+w(bh,12)>>2];$g=0;while(1){lh=$g<<2;rh=lh+ch|0;q[rh>>2]=q[rh>>2]+q[fh+lh>>2];$g=$g+1|0;if(($g|0)!=(Yg|0)){continue}break}}dh=1<<bh|dh}bh=bh+1|0;if((bh|0)!=(Zg|0)){continue}break}$g=0;n:{if((Yg|0)>0){lh=q[_g+144>>2];while(1){ah=lh+($g<<2)|0;q[ah>>2]=q[ah>>2]/(ug|0);$g=$g+1|0;if(($g|0)!=(Yg|0)){continue}break}ch=0;bh=q[vh>>2];if((Yg|0)<=0){break n}ah=0;while(1){fh=ah<<2;$g=q[fh+lh>>2]-q[fh+hh>>2]|0;q[fh+Ch>>2]=$g;rh=bh+fh|0;fh=$g>>31;q[rh>>2]=fh^$g<<1;ch=(fh^$g+fh)+ch|0;ah=ah+1|0;if((ah|0)!=(Yg|0)){continue}break}break n}bh=q[vh>>2];ch=0}Ph(_g+232|0,th,bh,Yg);$g=Sh(_g+232|0)+Th(_g+232|0)|0;if(kh){ah=q[Dh+4>>2];bh=q[Dh>>2];ih=D(Nh(bh,q[Ih>>2]+ug|0)*(+(bh>>>0)+4294967296*+(ah|0)));o:{if(y(ih)<0x8000000000000000){bh=~~ih>>>0;break o}bh=0}$g=bh+$g|0}ah=q[_g+8>>2];if(!(($g|0)>(ah|0)|(ch|0)>=q[_g+12>>2]?($g|0)>=(ah|0):0)){q[_g+20>>2]=ug;o[_g+16|0]=dh;q[_g+8>>2]=$g;q[_g+12>>2]=ch;vf(zh,q[_g+144>>2],q[_g+148>>2]);vf(yh,Jh,oh)}if((eh|0)==(_g+140|0)){break l}dh=-1;bh=r[eh|0];$g=bh;while(1){ch=$g&255;ah=dh+ -1|0;fh=ah+gh|0;$g=r[fh|0];if($g>>>0<ch>>>0){ch=eh;ah=gh;if($g>>>0>=(bh&255)>>>0){while(1){bh=ch;ch=bh+ -1|0;lh=ah+ -2|0;ah=bh;if($g>>>0>=r[lh|0]){continue}break}bh=1}ah=dh+gh|0;o[fh|0]=bh;o[ch|0]=$g;$g=eh;if((dh|0)==-1){continue m}while(1){ch=r[ah|0];o[ah|0]=r[$g|0];o[$g|0]=ch;ah=ah+1|0;$g=$g+ -1|0;if(ah>>>0<$g>>>0){continue}break}continue m}dh=ah;if((fh|0)!=(_g+140|0)){continue}break}break}if(eh>>>0<=_g+140>>>0){break l}ah=r[_g+140|0];o[_g+140|0]=bh;o[eh|0]=ah;dh=Gh;$g=jh;if(dh>>>0>=$g>>>0){break l}while(1){ah=r[dh|0];o[dh|0]=r[$g|0];o[$g|0]=ah;dh=dh+1|0;$g=$g+ -1|0;if(dh>>>0<$g>>>0){continue}break}}ug=ug+1|0;if((Zg|0)!=(nh|0)){continue}break}}if(kh){ug=((Zg<<3)+_g|0)+88|0;ch=ug;$g=q[_g+20>>2];ah=$g+q[ug>>2]|0;ug=q[ug+4>>2]+($g>>31)|0;q[ch>>2]=ah;q[ch+4>>2]=ah>>>0<$g>>>0?ug+1|0:ug}p:{if((Yg|0)<=0){ah=q[sh>>2];break p}ah=q[sh>>2];$g=0;ch=q[_g+36>>2];while(1){bh=$g<<2;ug=q[bh+ch>>2];q[ah+bh>>2]=ug<<1^ug>>31;$g=$g+1|0;if(($g|0)!=(Yg|0)){continue}break}}Rh(_g+232|0,th,ah,Yg);if(kh){ug=w(Zg,12)+a|0;eh=ug+36|0;ch=ug+32|0;ug=ug+28|0;dh=0;while(1){bh=q[eh>>2];ah=bh<<5;$g=q[ch>>2];q:{if(!(r[_g+16|0]>>>dh&1)){if(($g|0)==(ah|0)){if(($g+1|0)<=-1){break g}ah=ug;if($g>>>0<=1073741822){$g=$g+32&-32;bh=bh<<6;bh=bh>>>0<$g>>>0?$g:bh}else{bh=2147483647}Oe(ah,bh);$g=q[ch>>2]}q[ch>>2]=$g+1;ah=q[ug>>2]+($g>>>3&536870908)|0;q[ah>>2]=q[ah>>2]|1<<($g&31);break q}if(($g|0)==(ah|0)){if(($g+1|0)<=-1){break g}ah=ug;if($g>>>0<=1073741822){$g=$g+32&-32;bh=bh<<6;bh=bh>>>0<$g>>>0?$g:bh}else{bh=2147483647}Oe(ah,bh);$g=q[ch>>2]}q[ch>>2]=$g+1;ah=q[ug>>2]+($g>>>3&536870908)|0;bh=q[ah>>2];Kh=ah,Lh=Yp(-2,$g)&bh,q[Kh>>2]=Lh}dh=dh+1|0;if((dh|0)!=(Zg|0)){continue}break}}ug=q[_g+24>>2];Zg=q[ug>>2];ug=q[ug+4>>2];ah=q[hh+4>>2];q[_g+224>>2]=q[hh>>2];q[_g+228>>2]=ah;q[_g+216>>2]=Zg;q[_g+220>>2]=ug;mg(_g+232|0,Fh,_g+224|0,_g+216|0);ug=tg+Bh|0;q[ug>>2]=q[_g+232>>2];q[ug+4>>2]=q[_g+236>>2];ug=q[_g+36>>2];if(ug){q[_g+40>>2]=ug;pp(ug)}ug=q[_g+24>>2];if(ug){q[_g+28>>2]=ug;pp(ug)}if((qh|0)<3){break d}qh=mh;ug=q[a+36>>2];dh=q[ug>>2];ah=mh+ -1|0;if(q[ug+4>>2]-dh>>2>>>0>ah>>>0){continue}break}}Uo();F()}To();F()}To();F()}if((Yg|0)>=1){wp(q[_g+160>>2],0,Yg<<2)}ug=q[_g+160>>2];Yg=q[ug>>2];ug=q[ug+4>>2];Zg=q[sg+4>>2];q[_g+232>>2]=q[sg>>2];q[_g+236>>2]=Zg;q[_g+224>>2]=Yg;q[_g+228>>2]=ug;mg(_g+8|0,a+8|0,_g+232|0,_g+224|0);q[tg>>2]=q[_g+8>>2];q[tg+4>>2]=q[_g+12>>2];a=q[_g+48>>2];if(a){q[_g+52>>2]=a;pp(a)}a=q[_g+144>>2];if(a){q[_g+148>>2]=a;pp(a)}a=q[_g+196>>2];if(a){q[_g+200>>2]=a;pp(a)}a=q[_g+184>>2];if(a){q[_g+188>>2]=a;pp(a)}a=q[_g+172>>2];if(a){q[_g+176>>2]=a;pp(a)}a=q[_g+160>>2];if(a){q[_g+164>>2]=a;pp(a)}T=_g+256|0;return 1}function Hg(a){a=a|0;var sg=0;q[a>>2]=8960;sg=q[a+56>>2];if(sg){pp(sg)}return a|0}function Ig(a){a=a|0;var tg=0;q[a>>2]=8960;tg=q[a+56>>2];if(tg){pp(tg)}pp(a)}function Jg(a,ug,Yg,Zg,Mh,Nh){a=a|0;ug=ug|0;Yg=Yg|0;Zg=Zg|0;Mh=Mh|0;Nh=Nh|0;var Oh=0,Ph=0,Qh=0,Rh=0,Sh=0,Th=0,Uh=0,Vh=0;Zg=T-32|0;T=Zg;q[a+44>>2]=Nh;Nh=q[a+36>>2];Oh=q[Nh>>2];a:{Nh=q[Nh+4>>2]-Oh|0;if((Nh|0)<1){break a}Ph=Nh>>2;Nh=(Nh>>>2)+ -1|0;if(Ph>>>0>Nh>>>0){Sh=a+40|0;Th=a+8|0;Uh=a+36|0;while(1){Wf(Sh,q[(Nh<<2)+Oh>>2],ug,Nh);Oh=q[a+48>>2];Ph=q[a+52>>2];Qh=w(Mh,Nh)<<2;Rh=Qh+ug|0;Vh=q[Rh+4>>2];q[Zg+16>>2]=q[Rh>>2];q[Zg+20>>2]=Vh;q[Zg+8>>2]=Oh;q[Zg+12>>2]=Ph;mg(Zg+24|0,Th,Zg+16|0,Zg+8|0);Oh=Yg+Qh|0;q[Oh>>2]=q[Zg+24>>2];q[Oh+4>>2]=q[Zg+28>>2];Nh=Nh+ -1|0;if((Nh|0)<0){break a}Ph=q[Uh>>2];Oh=q[Ph>>2];if(q[Ph+4>>2]-Oh>>2>>>0>Nh>>>0){continue}break}}Uo();F()}T=Zg+32|0;return 1}function Kg(a){a=a|0;q[a>>2]=9208;$g(a+88|0);return a|0}function Lg(a){a=a|0;q[a>>2]=9208;$g(a+88|0);pp(a)}function Mg(a,ug,Yg,Zg,Mh,Nh){a=a|0;ug=ug|0;Yg=Yg|0;Zg=Zg|0;Mh=Mh|0;Nh=Nh|0;var Wh=0,Xh=0,Yh=0,Zh=0,_h=0,$h=0,ai=0,bi=0,ci=0,di=0,ei=0,fi=0,gi=0,hi=0,ii=0;Xh=T-48|0;T=Xh;di=a+8|0;Zg=q[di>>2];if(Zg+ -2>>>0<=28){q[a+72>>2]=Zg;Zg=-1<<Zg;Mh=-2-Zg|0;q[a+80>>2]=Mh;q[a+76>>2]=Zg^-1;q[a+84>>2]=(Mh|0)/2}q[a+48>>2]=Nh;ei=a+88|0;bh(ei);Zg=q[a+36>>2];Mh=q[Zg>>2];Nh=Zg+4|0;Wh=q[Nh>>2];q[Xh+16>>2]=0;q[Xh+8>>2]=0;q[Xh+12>>2]=0;a:{Mh=Wh-Mh|0;if((Mh|0)<1){break a}Yh=q[Zg>>2];if((Yh|0)!=q[Nh>>2]){fi=Mh>>2;gi=a+40|0;hi=Yg+4|0;ii=a+36|0;while(1){_f(gi,q[(ci<<2)+Yh>>2],Xh+8|0);Nh=q[Xh+12>>2];Wh=Nh>>31;Mh=q[Xh+8>>2];Zh=Mh>>31;Yh=q[Xh+16>>2];ai=Yh>>31;Zg=0;ai=ai^Yh+ai;Wh=ai+((Wh^Nh+Wh)+(Zh^Mh+Zh)|0)|0;if(Wh>>>0<ai>>>0){Zg=1}b:{if(!(Zg|Wh)){_h=q[a+84>>2];q[Xh+8>>2]=_h;$h=_h;break b}_h=q[a+84>>2];ai=_h>>31;Nh=Vp(Up(_h,ai,Nh,Nh>>31),V,Wh,Zg);q[Xh+12>>2]=Nh;$h=Vp(Up(_h,ai,Mh,Mh>>31),V,Wh,Zg);q[Xh+8>>2]=$h;Zg=$h>>31;Zg=(_h-(Zg+$h^Zg)|0)+((Nh|0)<0?Nh:0-Nh|0)|0;Yh=(Yh|0)>-1?Zg:0-Zg|0;q[Xh+16>>2]=Yh}c:{if(($h|0)>=0){Wh=Nh+_h|0;Zh=Yh+_h|0;break c}d:{if((Nh|0)<=-1){Zg=Yh>>31;Wh=Zg+Yh^Zg;break d}Zg=Yh>>31;Wh=q[a+80>>2]-(Zg+Yh^Zg)|0}if((Yh|0)<=-1){Zg=Nh>>31;Zh=Zg+Nh^Zg;break c}Zg=Nh>>31;Zh=q[a+80>>2]-(Zg+Nh^Zg)|0}Mh=q[a+80>>2];ai=Mh;bi=Mh;e:{if(!(Wh|Zh)){break e}if(!((Mh|0)!=(Zh|0)|Wh)){ai=Zh;bi=Zh;break e}if(!((Mh|0)!=(Wh|0)|Zh)){ai=Wh;bi=Wh;break e}if(!((_h|0)>=(Zh|0)|Wh)){ai=(_h<<1)-Zh|0;bi=0;break e}if(!((Mh|0)!=(Wh|0)|(_h|0)<=(Zh|0))){ai=(_h<<1)-Zh|0;bi=Wh;break e}if(!((Mh|0)!=(Zh|0)|(_h|0)<=(Wh|0))){ai=Zh;bi=(_h<<1)-Wh|0;break e}if(Zh){ai=Zh;bi=Wh;break e}ai=0;Zg=Wh;bi=Zg;if((_h|0)>=(Zg|0)){break e}bi=(_h<<1)-Wh|0}Wh=bi;q[Xh+16>>2]=0-Yh;q[Xh+12>>2]=0-Nh;q[Xh+8>>2]=0-$h;f:{if(($h|0)<=0){Zg=_h-Yh|0;Nh=_h-Nh|0;break f}Zg=Nh>>31;Zg=Zg+Nh^Zg;Zg=(Yh|0)>0?Zg:Mh-Zg|0;Zh=Yh>>31;Zh=Zh+Yh^Zh;Nh=(Nh|0)>0?Zh:Mh-Zh|0}g:{if(!(Zg|Nh)){Zg=Mh;break g}if(!((Zg|0)!=(Mh|0)|Nh)){Zg=Mh;break g}Zh=(Mh|0)!=(Nh|0);if(!(Zg|Zh)){Zg=Mh;break g}if(!((_h|0)>=(Zg|0)|Nh)){Zg=(_h<<1)-Zg|0;Mh=0;break g}if(!((_h|0)<=(Zg|0)|Zh)){Zg=(_h<<1)-Zg|0;break g}if(!((Zg|0)!=(Mh|0)|(_h|0)<=(Nh|0))){Zg=Mh;Mh=(_h<<1)-Nh|0;break g}if(Zg){Mh=Nh;break g}Zg=0;if((_h|0)>=(Nh|0)){Mh=Nh;break g}Mh=(_h<<1)-Nh|0}Nh=(ci<<3)+ug|0;Zh=q[Nh+4>>2];q[Xh+32>>2]=q[Nh>>2];q[Xh+36>>2]=Zh;q[Xh+28>>2]=ai;q[Xh+24>>2]=Wh;mg(Xh+40|0,di,Xh+32|0,Xh+24|0);$h=q[Xh+44>>2];Yh=q[Xh+40>>2];Wh=q[Nh+4>>2];q[Xh+32>>2]=q[Nh>>2];q[Xh+36>>2]=Wh;q[Xh+28>>2]=Zg;q[Xh+24>>2]=Mh;mg(Xh+40|0,di,Xh+32|0,Xh+24|0);Nh=q[Xh+44>>2];Mh=q[Xh+40>>2];Zg=q[a+84>>2];h:{if((Zg|0)<(Yh|0)){Yh=Yh-q[a+76>>2]|0;break h}if((Yh|0)>=(0-Zg|0)){break h}Yh=q[a+76>>2]+Yh|0}i:{if((Zg|0)<($h|0)){$h=$h-q[a+76>>2]|0;break i}if(($h|0)>=(0-Zg|0)){break i}$h=q[a+76>>2]+$h|0}j:{if((Zg|0)<(Mh|0)){Mh=Mh-q[a+76>>2]|0;break j}if((Mh|0)>=(0-Zg|0)){break j}Mh=q[a+76>>2]+Mh|0}k:{if((Zg|0)<(Nh|0)){Nh=Nh-q[a+76>>2]|0;break k}if((Nh|0)>=(0-Zg|0)){break k}Nh=q[a+76>>2]+Nh|0}Zg=ci<<1;Wh=$h>>31;bi=Wh+$h^Wh;Wh=Yh>>31;Zh=bi+(Wh+Yh^Wh)|0;Wh=Nh>>31;bi=Wh+Nh^Wh;Wh=Mh>>31;l:{if((Zh|0)<(bi+(Wh+Mh^Wh)|0)){ch(ei,0);Mh=(Zg<<2)+Yg|0;if((Yh|0)<=-1){Yh=q[a+76>>2]+Yh|0}q[Mh>>2]=Yh;if(($h|0)>-1){Nh=$h;break l}Nh=q[a+76>>2]+$h|0;break l}ch(ei,1);Wh=(Zg<<2)+Yg|0;if((Mh|0)<=-1){Mh=q[a+76>>2]+Mh|0}q[Wh>>2]=Mh;if((Nh|0)>-1){break l}Nh=q[a+76>>2]+Nh|0}q[(Zg<<2)+hi>>2]=Nh;ci=ci+1|0;if((ci|0)>=(fi|0)){break a}Zg=q[ii>>2];Yh=q[Zg>>2];if(q[Zg+4>>2]-Yh>>2>>>0>ci>>>0){continue}break}}Uo();F()}T=Xh+48|0;return 1}function Ng(a,ug,Yg,Zg,Mh,Nh){a=a|0;ug=ug|0;Yg=Yg|0;Zg=Zg|0;Mh=Mh|0;Nh=Nh|0;var ji=0,ki=0,li=0,mi=0,ni=0,oi=0,pi=0;Nh=T-32|0;T=Nh;Zg=Zg-Mh|0;if((Zg|0)>=1){li=a+8|0;ni=0-Mh<<2;while(1){mi=Zg<<2;ji=mi+ug|0;ki=ji+ni|0;oi=q[ki>>2];ki=q[ki+4>>2];pi=q[ji+4>>2];q[Nh+16>>2]=q[ji>>2];q[Nh+20>>2]=pi;q[Nh+8>>2]=oi;q[Nh+12>>2]=ki;mg(Nh+24|0,li,Nh+16|0,Nh+8|0);ji=Yg+mi|0;q[ji>>2]=q[Nh+24>>2];q[ji+4>>2]=q[Nh+28>>2];Zg=Zg-Mh|0;if((Zg|0)>0){continue}break}}Zg=(Mh&1073741823)!=(Mh|0)?-1:Mh<<2;Zg=wp(zo(Zg),0,Zg);Mh=q[Zg>>2];ji=q[Zg+4>>2];li=q[ug+4>>2];q[Nh+16>>2]=q[ug>>2];q[Nh+20>>2]=li;q[Nh+8>>2]=Mh;q[Nh+12>>2]=ji;mg(Nh+24|0,a+8|0,Nh+16|0,Nh+8|0);q[Yg>>2]=q[Nh+24>>2];q[Yg+4>>2]=q[Nh+28>>2];pp(Zg);T=Nh+32|0;return 1}function Og(a){Re(a);q[a+48>>2]=0;q[a+52>>2]=0;q[a+44>>2]=-1;q[a+40>>2]=1384;q[a>>2]=10048;q[a+56>>2]=0;q[a+60>>2]=0}function Pg(a,ug,Yg){a=a|0;ug=ug|0;Yg=Yg|0;var Zg=0,Mh=0,Nh=0,qi=0,ri=0,si=0,ti=0,ui=0,vi=0,wi=0,xi=x(0);qi=T-32|0;T=qi;a:{b:{if(!Se(a,ug,Yg)){break b}vi=q[q[q[ug+4>>2]+8>>2]+(Yg<<2)>>2];if(q[vi+28>>2]!=9){break b}ri=q[ug+48>>2];Zg=zo(32);q[qi+16>>2]=Zg;q[qi+20>>2]=17;q[qi+24>>2]=-2147483616;o[Zg+17|0]=0;o[Zg+16|0]=r[10120];si=r[10116]|r[10117]<<8|(r[10118]<<16|r[10119]<<24);Mh=r[10112]|r[10113]<<8|(r[10114]<<16|r[10115]<<24);o[Zg+8|0]=Mh;o[Zg+9|0]=Mh>>>8;o[Zg+10|0]=Mh>>>16;o[Zg+11|0]=Mh>>>24;o[Zg+12|0]=si;o[Zg+13|0]=si>>>8;o[Zg+14|0]=si>>>16;o[Zg+15|0]=si>>>24;si=r[10108]|r[10109]<<8|(r[10110]<<16|r[10111]<<24);Mh=r[10104]|r[10105]<<8|(r[10106]<<16|r[10107]<<24);o[Zg|0]=Mh;o[Zg+1|0]=Mh>>>8;o[Zg+2|0]=Mh>>>16;o[Zg+3|0]=Mh>>>24;o[Zg+4|0]=si;o[Zg+5|0]=si>>>8;o[Zg+6|0]=si>>>16;o[Zg+7|0]=si>>>24;c:{d:{si=ri+16|0;Nh=q[si>>2];if(!Nh){break d}Zg=si;while(1){Mh=q[Nh+16>>2]<(Yg|0);Zg=Mh?Zg:Nh;Nh=q[(Mh<<2)+Nh>>2];if(Nh){continue}break}if((Zg|0)==(si|0)|q[Zg+16>>2]>(Yg|0)){break d}Zg=Zg+20|0;if(!Cd(Zg,qi+16|0)){break d}si=Ll(Zg,qi+16|0,-1);break c}si=Ll(ri,qi+16|0,-1)}if(o[qi+27|0]<=-1){pp(q[qi+16>>2])}if((si|0)<1){Nh=0;break b}ri=q[ug+48>>2];Zg=zo(32);q[qi+16>>2]=Zg;q[qi+20>>2]=19;q[qi+24>>2]=-2147483616;o[Zg+19|0]=0;Mh=r[10137]|r[10138]<<8|(r[10139]<<16|r[10140]<<24);o[Zg+15|0]=Mh;o[Zg+16|0]=Mh>>>8;o[Zg+17|0]=Mh>>>16;o[Zg+18|0]=Mh>>>24;Mh=r[10134]|r[10135]<<8|(r[10136]<<16|r[10137]<<24);Nh=r[10130]|r[10131]<<8|(r[10132]<<16|r[10133]<<24);o[Zg+8|0]=Nh;o[Zg+9|0]=Nh>>>8;o[Zg+10|0]=Nh>>>16;o[Zg+11|0]=Nh>>>24;o[Zg+12|0]=Mh;o[Zg+13|0]=Mh>>>8;o[Zg+14|0]=Mh>>>16;o[Zg+15|0]=Mh>>>24;Mh=r[10126]|r[10127]<<8|(r[10128]<<16|r[10129]<<24);Nh=r[10122]|r[10123]<<8|(r[10124]<<16|r[10125]<<24);o[Zg|0]=Nh;o[Zg+1|0]=Nh>>>8;o[Zg+2|0]=Nh>>>16;o[Zg+3|0]=Nh>>>24;o[Zg+4|0]=Mh;o[Zg+5|0]=Mh>>>8;o[Zg+6|0]=Mh>>>16;o[Zg+7|0]=Mh>>>24;e:{f:{Mh=ri+16|0;Nh=q[Mh>>2];if(!Nh){break f}Zg=Mh;while(1){ti=q[Nh+16>>2]<(Yg|0);Zg=ti?Zg:Nh;Nh=q[(ti<<2)+Nh>>2];if(Nh){continue}break}if((Zg|0)==(Mh|0)|q[Zg+16>>2]>(Yg|0)){break f}Mh=Cd(Zg+20|0,qi+16|0);break e}Mh=Cd(ri,qi+16|0)}Zg=0;g:{if(!Mh){break g}ri=q[ug+48>>2];q[qi+8>>2]=0;q[qi>>2]=0;q[qi+4>>2]=0;Zg=zo(32);q[qi>>2]=Zg;q[qi+4>>2]=18;q[qi+8>>2]=-2147483616;o[Zg+18|0]=0;Mh=r[10158]|r[10159]<<8;o[Zg+16|0]=Mh;o[Zg+17|0]=Mh>>>8;Mh=r[10154]|r[10155]<<8|(r[10156]<<16|r[10157]<<24);Nh=r[10150]|r[10151]<<8|(r[10152]<<16|r[10153]<<24);o[Zg+8|0]=Nh;o[Zg+9|0]=Nh>>>8;o[Zg+10|0]=Nh>>>16;o[Zg+11|0]=Nh>>>24;o[Zg+12|0]=Mh;o[Zg+13|0]=Mh>>>8;o[Zg+14|0]=Mh>>>16;o[Zg+15|0]=Mh>>>24;Mh=r[10146]|r[10147]<<8|(r[10148]<<16|r[10149]<<24);Nh=r[10142]|r[10143]<<8|(r[10144]<<16|r[10145]<<24);o[Zg|0]=Nh;o[Zg+1|0]=Nh>>>8;o[Zg+2|0]=Nh>>>16;o[Zg+3|0]=Nh>>>24;o[Zg+4|0]=Mh;o[Zg+5|0]=Mh>>>8;o[Zg+6|0]=Mh>>>16;o[Zg+7|0]=Mh>>>24;h:{i:{Mh=ri+16|0;Nh=q[Mh>>2];if(!Nh){break i}Zg=Mh;while(1){ti=q[Nh+16>>2]<(Yg|0);Zg=ti?Zg:Nh;Nh=q[(ti<<2)+Nh>>2];if(Nh){continue}break}if((Zg|0)==(Mh|0)|q[Zg+16>>2]>(Yg|0)){break i}Zg=Cd(Zg+20|0,qi);break h}Zg=Cd(ri,qi)}if(o[qi+11|0]<=-1){pp(q[qi>>2])}Zg=(Zg|0)!=0}if(o[qi+27|0]<=-1){pp(q[qi+16>>2])}j:{if(Zg){ui=vi+24|0;Zg=o[ui|0];q[qi+24>>2]=0;q[qi+16>>2]=0;q[qi+20>>2]=0;ri=0;if(Zg){if((Zg|0)<=-1){break a}Zg=Zg<<2;ri=zo(Zg);q[qi+16>>2]=ri;Mh=Zg+ri|0;q[qi+24>>2]=Mh;wp(ri,0,Zg);q[qi+20>>2]=Mh}ti=q[ug+48>>2];q[qi+8>>2]=0;q[qi>>2]=0;q[qi+4>>2]=0;Zg=zo(32);q[qi>>2]=Zg;q[qi+4>>2]=19;q[qi+8>>2]=-2147483616;o[Zg+19|0]=0;Mh=r[10137]|r[10138]<<8|(r[10139]<<16|r[10140]<<24);o[Zg+15|0]=Mh;o[Zg+16|0]=Mh>>>8;o[Zg+17|0]=Mh>>>16;o[Zg+18|0]=Mh>>>24;Mh=r[10134]|r[10135]<<8|(r[10136]<<16|r[10137]<<24);Nh=r[10130]|r[10131]<<8|(r[10132]<<16|r[10133]<<24);o[Zg+8|0]=Nh;o[Zg+9|0]=Nh>>>8;o[Zg+10|0]=Nh>>>16;o[Zg+11|0]=Nh>>>24;o[Zg+12|0]=Mh;o[Zg+13|0]=Mh>>>8;o[Zg+14|0]=Mh>>>16;o[Zg+15|0]=Mh>>>24;Mh=r[10126]|r[10127]<<8|(r[10128]<<16|r[10129]<<24);Nh=r[10122]|r[10123]<<8|(r[10124]<<16|r[10125]<<24);o[Zg|0]=Nh;o[Zg+1|0]=Nh>>>8;o[Zg+2|0]=Nh>>>16;o[Zg+3|0]=Nh>>>24;o[Zg+4|0]=Mh;o[Zg+5|0]=Mh>>>8;o[Zg+6|0]=Mh>>>16;o[Zg+7|0]=Mh>>>24;ui=o[ui|0];k:{l:{Mh=ti+16|0;Nh=q[Mh>>2];if(!Nh){break l}Zg=Mh;while(1){wi=q[Nh+16>>2]<(Yg|0);Zg=wi?Zg:Nh;Nh=q[(wi<<2)+Nh>>2];if(Nh){continue}break}if((Zg|0)==(Mh|0)|q[Zg+16>>2]>(Yg|0)){break l}Zg=Zg+20|0;if(!Cd(Zg,qi)){break l}Dd(Zg,qi,ui,ri);break k}Dd(ti,qi,ui,ri)}if(o[qi+11|0]<=-1){pp(q[qi>>2])}ri=q[ug+48>>2];q[qi+8>>2]=0;q[qi>>2]=0;q[qi+4>>2]=0;ug=zo(32);q[qi>>2]=ug;q[qi+4>>2]=18;q[qi+8>>2]=-2147483616;o[ug+18|0]=0;Zg=r[10158]|r[10159]<<8;o[ug+16|0]=Zg;o[ug+17|0]=Zg>>>8;Zg=r[10154]|r[10155]<<8|(r[10156]<<16|r[10157]<<24);Mh=r[10150]|r[10151]<<8|(r[10152]<<16|r[10153]<<24);o[ug+8|0]=Mh;o[ug+9|0]=Mh>>>8;o[ug+10|0]=Mh>>>16;o[ug+11|0]=Mh>>>24;o[ug+12|0]=Zg;o[ug+13|0]=Zg>>>8;o[ug+14|0]=Zg>>>16;o[ug+15|0]=Zg>>>24;Zg=r[10146]|r[10147]<<8|(r[10148]<<16|r[10149]<<24);Mh=r[10142]|r[10143]<<8|(r[10144]<<16|r[10145]<<24);o[ug|0]=Mh;o[ug+1|0]=Mh>>>8;o[ug+2|0]=Mh>>>16;o[ug+3|0]=Mh>>>24;o[ug+4|0]=Zg;o[ug+5|0]=Zg>>>8;o[ug+6|0]=Zg>>>16;o[ug+7|0]=Zg>>>24;m:{n:{ug=ri+16|0;Nh=q[ug>>2];if(!Nh){break n}Zg=ug;while(1){Mh=q[Nh+16>>2]<(Yg|0);Zg=Mh?Zg:Nh;Nh=q[(Mh<<2)+Nh>>2];if(Nh){continue}break}if((ug|0)==(Zg|0)|q[Zg+16>>2]>(Yg|0)){break n}ug=Zg+20|0;if(!Cd(ug,qi)){break n}xi=Ml(ug,qi);break m}xi=Ml(ri,qi)}if(o[qi+11|0]<=-1){pp(q[qi>>2])}bc(a+40|0,si,q[qi+16>>2],o[vi+24|0],xi);a=q[qi+16>>2];if(!a){break j}q[qi+20>>2]=a;pp(a);break j}Nh=0;if(!dc(a+40|0,vi,si)){break b}}Nh=1}T=qi+32|0;return Nh|0}To();F()}function Qg(a,q){a=a|0;q=q|0;return ec(a+40|0,q)|0}function Rg(a,ug,Yg){a=a|0;ug=ug|0;Yg=Yg|0;var yi=0;yi=T-16|0;T=yi;gc(yi+8|0,a+40|0,q[a+8>>2],ug,Yg);ug=q[yi+8>>2];q[yi+8>>2]=0;Yg=a+32|0;a=q[Yg>>2];q[Yg>>2]=ug;a:{if(!a){q[yi+8>>2]=0;break a}Ba(a);a=q[yi+8>>2];q[yi+8>>2]=0;if(!a){break a}Ba(a)}T=yi+16|0;return 1}function Sg(a){a=a|0;var ug=0,Yg=0;q[a>>2]=10048;q[a+40>>2]=1384;ug=q[a+48>>2];if(ug){q[a+52>>2]=ug;pp(ug)}q[a>>2]=2428;Yg=a+36|0;ug=q[Yg>>2];q[Yg>>2]=0;if(ug){n[q[q[ug>>2]+4>>2]](ug)}q[a>>2]=2108;Yg=a+32|0;ug=q[Yg>>2];q[Yg>>2]=0;if(ug){Ba(ug)}ug=q[a+16>>2];if(ug){q[a+20>>2]=ug;pp(ug)}return a|0}function Tg(a){a=a|0;var zi=0,Ai=0;q[a>>2]=10048;q[a+40>>2]=1384;zi=q[a+48>>2];if(zi){q[a+52>>2]=zi;pp(zi)}q[a>>2]=2428;Ai=a+36|0;zi=q[Ai>>2];q[Ai>>2]=0;if(zi){n[q[q[zi>>2]+4>>2]](zi)}q[a>>2]=2108;Ai=a+32|0;zi=q[Ai>>2];q[Ai>>2]=0;if(zi){Ba(zi)}zi=q[a+16>>2];if(zi){q[a+20>>2]=zi;pp(zi)}pp(a)}function Ug(a,Bi){var Ci=0;a:{if((Jd(q[Bi+48>>2])|0)>9){break a}if((n[q[q[Bi>>2]+8>>2]](Bi)|0)!=1){break a}a=q[q[q[Bi+4>>2]+8>>2]+(a<<2)>>2];Ci=q[a+56>>2];if((Ci|0)==3){Ci=5;if((Jd(q[Bi+48>>2])|0)<4){break a}Ci=q[a+56>>2]}a=Jd(q[Bi+48>>2]);if((Ci|0)==1){Ci=(a|0)<4?6:0;break a}Ci=0;if((a|0)>7){break a}Ci=1;if((Jd(q[Bi+48>>2])|0)>1){break a}return t[q[Bi+4>>2]+80>>2]<40?1:4}return Ci}function Vg(a,Bi){var Di=0,Ei=0,Fi=0,Gi=0,Hi=0;Gi=T-16|0;T=Gi;Di=zo(32);q[Gi>>2]=Di;q[Gi+4>>2]=17;q[Gi+8>>2]=-2147483616;o[Di+17|0]=0;o[Di+16|0]=r[10240];Fi=r[10236]|r[10237]<<8|(r[10238]<<16|r[10239]<<24);Ei=r[10232]|r[10233]<<8|(r[10234]<<16|r[10235]<<24);o[Di+8|0]=Ei;o[Di+9|0]=Ei>>>8;o[Di+10|0]=Ei>>>16;o[Di+11|0]=Ei>>>24;o[Di+12|0]=Fi;o[Di+13|0]=Fi>>>8;o[Di+14|0]=Fi>>>16;o[Di+15|0]=Fi>>>24;Fi=r[10228]|r[10229]<<8|(r[10230]<<16|r[10231]<<24);Ei=r[10224]|r[10225]<<8|(r[10226]<<16|r[10227]<<24);o[Di|0]=Ei;o[Di+1|0]=Ei>>>8;o[Di+2|0]=Ei>>>16;o[Di+3|0]=Ei>>>24;o[Di+4|0]=Fi;o[Di+5|0]=Fi>>>8;o[Di+6|0]=Fi>>>16;o[Di+7|0]=Fi>>>24;a:{b:{Fi=Bi+16|0;Ei=q[Fi>>2];if(!Ei){break b}Di=Fi;while(1){Hi=q[Ei+16>>2]<(a|0);Di=Hi?Di:Ei;Ei=q[(Hi<<2)+Ei>>2];if(Ei){continue}break}if((Di|0)==(Fi|0)|q[Di+16>>2]>(a|0)){break b}a=Di+20|0;if(!Cd(a,Gi)){break b}a=Ll(a,Gi,-1);break a}a=Ll(Bi,Gi,-1)}if(o[Gi+11|0]<=-1){pp(q[Gi>>2])}T=Gi+16|0;return(a|0)==-1?-1:a>>>0>6?-2:a}function Wg(a){q[a>>2]=0;q[a+4>>2]=0;q[a+16>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0}function Xg(a){var Bi=0;q[a+12>>2]=0;q[a+16>>2]=0;Bi=a+4|0;a=q[a>>2];q[Bi>>2]=a;if(a){q[Bi>>2]=a;pp(a)}}function Yg(a){q[a+12>>2]=0;q[a+16>>2]=0;q[a+4>>2]=q[a>>2]}function Zg(a,Ii){var Ji=0,Ki=0,Li=0,Mi=0;Li=T-16|0;T=Li;Ji=a+4|0;Ki=q[Ji>>2];a:{if((Ki|0)!=q[a+8>>2]){q[Ki>>2]=q[a+12>>2];Mi=Ji;Ji=Ki+4|0;q[Mi>>2]=Ji;break a}he(a,a+12|0);Ji=q[Ji>>2]}Mi=Ji;Ji=q[a>>2];q[Li+12>>2]=Mi-Ji;Ki=q[Ii+20>>2];b:{if((Ki|0)>0?1:(Ki|0)>=0?t[Ii+16>>2]<=0?0:1:0){break b}Ki=Ii+4|0;Vb(Ii,q[Ki>>2],Li+12|0,Li+16|0);Ji=q[a>>2];Mi=q[Ii+20>>2];if((Mi|0)>0?1:(Mi|0)>=0?t[Ii+16>>2]<=0?0:1:0){break b}Vb(Ii,q[Ki>>2],Ji,q[Li+12>>2]+Ji|0);Ji=q[a>>2]}q[a+12>>2]=0;q[a+16>>2]=0;q[a+4>>2]=Ji;T=Li+16|0}function _g(a){q[a>>2]=0;q[a+4>>2]=0;q[a+24>>2]=0;q[a+28>>2]=0;q[a+16>>2]=0;q[a+20>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0;return a}function $g(a){var Ii=0,Ni=0,Oi=0;Ni=T-16|0;T=Ni;q[Ni+8>>2]=0;q[Ni+12>>2]=0;ah(a,Ni+8|0);q[a+24>>2]=0;q[a+28>>2]=0;Oi=a+16|0;Ii=q[a+12>>2];q[Oi>>2]=Ii;if(Ii){q[Oi>>2]=Ii;pp(Ii)}Ii=q[a>>2];if(Ii){q[a+4>>2]=Ii;pp(Ii)}T=Ni+16|0;return a}function ah(a,Pi){var Qi=0,Ri=0,Si=0,Ti=0,Ui=0,Vi=0;Si=2;Qi=q[a+8>>2];Ri=q[a>>2];if(Qi-Ri>>3>>>0>=2){Ti=q[a+4>>2];Ui=Ti-Ri>>3;Si=Ui>>>0<2?Ui:2;if(Si){Qi=Ri;while(1){Vi=q[Pi+4>>2];q[Qi>>2]=q[Pi>>2];q[Qi+4>>2]=Vi;Qi=Qi+8|0;Si=Si+ -1|0;if(Si){continue}break}}if(Ui>>>0<2){Qi=2-Ui|0;while(1){Ri=q[Pi+4>>2];q[Ti>>2]=q[Pi>>2];q[Ti+4>>2]=Ri;Ti=Ti+8|0;Qi=Qi+ -1|0;if(Qi){continue}break}q[a+4>>2]=Ti;return}q[a+4>>2]=Ri+16;return}if(Ri){q[a+4>>2]=Ri;pp(Ri);q[a+8>>2]=0;q[a>>2]=0;q[a+4>>2]=0;Qi=0}Ri=Qi>>2;Ri=Qi>>3>>>0<268435455?Ri>>>0<2?2:Ri:536870911;if(Ri>>>0<536870912){Ri=Ri<<3;Qi=zo(Ri);q[a>>2]=Qi;q[a+4>>2]=Qi;q[a+8>>2]=Qi+Ri;while(1){Ri=q[Pi+4>>2];q[Qi>>2]=q[Pi>>2];q[Qi+4>>2]=Ri;Qi=Qi+8|0;Si=Si+ -1|0;if(Si){continue}break}q[a+4>>2]=Qi;return}To();F()}function bh(a){var Pi=0;Pi=T-16|0;T=Pi;q[Pi+8>>2]=0;q[Pi+12>>2]=0;ah(a,Pi+8|0);q[a+24>>2]=0;q[a+28>>2]=0;q[a+16>>2]=q[a+12>>2];T=Pi+16|0}function ch(a,Wi){var Xi=0,Yi=0,Zi=0;Xi=q[a>>2];a:{if(Wi){Wi=Xi;Zi=Xi;Yi=q[Xi+12>>2];Xi=q[Xi+8>>2]+1|0;if(Xi>>>0<1){Yi=Yi+1|0}q[Zi+8>>2]=Xi;q[Wi+12>>2]=Yi;Wi=q[a+28>>2];q[a+24>>2]=q[a+24>>2]|1<<Wi;break a}Wi=Xi;Zi=Xi;Yi=q[Xi+4>>2];Xi=q[Xi>>2]+1|0;if(Xi>>>0<1){Yi=Yi+1|0}q[Zi>>2]=Xi;q[Wi+4>>2]=Yi;Wi=q[a+28>>2]}Wi=Wi+1|0;q[a+28>>2]=Wi;if((Wi|0)==32){Xi=a+16|0;Wi=q[Xi>>2];b:{if((Wi|0)!=q[a+20>>2]){q[Wi>>2]=q[a+24>>2];q[Xi>>2]=Wi+4;break b}he(a+12|0,a+24|0)}q[a+24>>2]=0;q[a+28>>2]=0}}function dh(a,Wi,_i){var $i=0,aj=0,bj=0,cj=0,dj=0,ej=0,fj=0,gj=0;aj=q[a>>2];bj=aj;gj=aj;$i=q[aj+12>>2];dj=q[aj+8>>2];_i=_i>>>1&1431655765|_i<<1&-1431655766;_i=_i>>>2&858993459|_i<<2&-858993460;_i=_i>>>4&252645135|_i<<4&-252645136;ej=32-Wi|0;cj=Yp(_i>>>8&16711935|_i<<8&-16711936,16)>>>ej;_i=cj-(cj>>>1&1431655765)|0;_i=(_i>>>2&858993459)+(_i&858993459)|0;fj=w((_i>>>4)+_i&252645135,16843009)>>>24;_i=fj;dj=dj+_i|0;if(dj>>>0<_i>>>0){$i=$i+1|0}q[gj+8>>2]=dj;q[bj+12>>2]=$i;_i=aj;bj=Wi-fj|0;$i=bj+q[_i>>2]|0;aj=q[_i+4>>2]+(bj>>31)|0;q[_i>>2]=$i;q[_i+4>>2]=$i>>>0<bj>>>0?aj+1|0:aj;aj=a+24|0;a:{b:{c:{_i=q[a+28>>2];$i=32-_i|0;if(($i|0)>=(Wi|0)){Wi=Wi+_i|0;q[a+28>>2]=Wi;$i=-1>>>ej<<_i;_i=q[a+24>>2]&($i^-1)|$i&cj<<_i;q[a+24>>2]=_i;if((Wi|0)!=32){break a}cj=a+16|0;Wi=q[cj>>2];if((Wi|0)!=q[a+20>>2]){q[Wi>>2]=_i;q[cj>>2]=Wi+4;break c}he(a+12|0,aj);break c}bj=q[a+24>>2]&(-1<<_i^-1)|cj<<_i;q[a+24>>2]=bj;_i=q[a+16>>2];d:{if((_i|0)!=q[a+20>>2]){q[_i>>2]=bj;q[a+16>>2]=_i+4;break d}he(a+12|0,aj)}Wi=Wi-$i|0;_i=-1>>>32-Wi&cj>>>$i;break b}Wi=0;_i=0}q[a+28>>2]=Wi;q[a+24>>2]=_i}}function eh(a,Wi){var _i=0,hj=0,ij=0,jj=0,kj=0,lj=0,mj=0,nj=0,oj=0,pj=0,qj=0,rj=0;jj=T-32|0;T=jj;mj=jj;hj=q[a>>2];kj=q[hj>>2];_i=q[hj+4>>2];nj=+(kj>>>0)+4294967296*+(_i>>>0);_i=q[hj+12>>2]+_i|0;hj=q[hj+8>>2];kj=hj+kj|0;if(kj>>>0<hj>>>0){_i=_i+1|0}hj=!(_i|kj);nj=nj/(+((hj?1:kj)>>>0)+4294967296*+((hj?0:_i)>>>0))*256+.5;a:{if(nj<4294967296&nj>=0){_i=~~nj>>>0;break a}_i=0}ij=_i>>>0<255?_i:255;ij=!(ij&255)+ij|0;o[mj+23|0]=ij;_i=q[a+16>>2];hj=q[a+12>>2];q[jj+16>>2]=0;q[jj+8>>2]=0;q[jj+12>>2]=0;b:{c:{hj=(_i-hj<<1)- -64|0;if(hj){if((hj|0)<=-1){break c}_i=zo(hj);q[jj+8>>2]=_i;q[jj+12>>2]=_i;q[jj+16>>2]=hj+_i;while(1){o[_i|0]=0;_i=q[jj+12>>2]+1|0;q[jj+12>>2]=_i;hj=hj+ -1|0;if(hj){continue}break}oj=q[jj+8>>2]}_i=q[a+28>>2]+ -1|0;if((_i|0)<0){hj=4096;break b}hj=4096;while(1){kj=0-ij|0;pj=q[a+24>>2]&1<<_i;ij=(pj?kj:ij)&255;if(hj>>>0>=ij<<12>>>0){o[lj+oj|0]=hj;lj=lj+1|0;hj=hj>>>8}mj=256-ij|0;ij=ij<<3;Up(q[ij+14032>>2],0,hj,0);hj=((pj?0:kj&255)+hj|0)+w(mj,V+hj>>>q[ij+14036>>2])|0;_i=_i+ -1|0;if((_i|0)<0){break b}ij=r[jj+23|0];continue}}To();F()}kj=q[a+16>>2];if((kj|0)!=q[a+12>>2]){while(1){kj=kj+ -4|0;pj=q[kj>>2];ij=31;while(1){_i=r[jj+23|0];qj=0-_i|0;mj=_i;_i=ij;rj=1<<_i&pj;ij=(rj?qj:mj)&255;if(hj>>>0>=ij<<12>>>0){o[lj+oj|0]=hj;lj=lj+1|0;hj=hj>>>8}mj=256-ij|0;ij=ij<<3;Up(q[ij+14032>>2],0,hj,0);hj=((rj?0:qj&255)+hj|0)+w(mj,V+hj>>>q[ij+14036>>2])|0;ij=_i+ -1|0;if(_i){continue}break}if(q[a+12>>2]!=(kj|0)){continue}break}}_i=hj+ -4096|0;d:{e:{if(_i>>>0<=63){hj=lj+oj|0;ij=1;break e}if(_i>>>0<=16383){ij=lj+oj|0;_i=hj+12288|0;o[ij|0]=_i;hj=ij+1|0;_i=_i>>>8;ij=2;break e}if(_i>>>0>4194303){break d}ij=lj+oj|0;_i=hj+8384512|0;o[ij|0]=_i;o[ij+1|0]=_i>>>8;hj=ij+2|0;_i=_i>>>16;ij=3}o[hj|0]=_i;lj=ij+lj|0}ij=q[Wi+20>>2];if((ij|0)<0?1:(ij|0)<=0?t[Wi+16>>2]>0?0:1:0){Vb(Wi,q[Wi+4>>2],jj+23|0,jj+24|0)}td(lj,Wi);ij=q[Wi+20>>2];if((ij|0)<0?1:(ij|0)<=0?t[Wi+16>>2]>0?0:1:0){_i=Wi;ij=q[Wi+4>>2];Wi=q[jj+8>>2];Vb(_i,ij,Wi,Wi+lj|0)}q[jj+24>>2]=0;q[jj+28>>2]=0;ah(a,jj+24|0);q[a+24>>2]=0;q[a+28>>2]=0;q[a+16>>2]=q[a+12>>2];a=q[jj+8>>2];if(a){q[jj+12>>2]=a;pp(a)}T=jj+32|0}function fh(a){var Wi=0,sj=0,tj=0,uj=0,vj=0;tj=T-16|0;T=tj;Hl(a);Wi=a+16|0;q[Wi>>2]=0;q[Wi+4>>2]=0;q[a+12>>2]=Wi;uj=Hl(a+24|0);vj=tj+8|0;q[vj>>2]=0;q[tj>>2]=0;q[tj+4>>2]=0;a=zo(32);q[tj>>2]=a;q[tj+4>>2]=20;q[tj+8>>2]=-2147483616;o[a+20|0]=0;Wi=r[10448]|r[10449]<<8|(r[10450]<<16|r[10451]<<24);o[a+16|0]=Wi;o[a+17|0]=Wi>>>8;o[a+18|0]=Wi>>>16;o[a+19|0]=Wi>>>24;Wi=r[10444]|r[10445]<<8|(r[10446]<<16|r[10447]<<24);sj=r[10440]|r[10441]<<8|(r[10442]<<16|r[10443]<<24);o[a+8|0]=sj;o[a+9|0]=sj>>>8;o[a+10|0]=sj>>>16;o[a+11|0]=sj>>>24;o[a+12|0]=Wi;o[a+13|0]=Wi>>>8;o[a+14|0]=Wi>>>16;o[a+15|0]=Wi>>>24;Wi=r[10436]|r[10437]<<8|(r[10438]<<16|r[10439]<<24);sj=r[10432]|r[10433]<<8|(r[10434]<<16|r[10435]<<24);o[a|0]=sj;o[a+1|0]=sj>>>8;o[a+2|0]=sj>>>16;o[a+3|0]=sj>>>24;o[a+4|0]=Wi;o[a+5|0]=Wi>>>8;o[a+6|0]=Wi>>>16;o[a+7|0]=Wi>>>24;Il(uj,tj,1);if(o[tj+11|0]<=-1){pp(q[tj>>2])}q[vj>>2]=0;q[tj>>2]=0;q[tj+4>>2]=0;a=zo(32);q[tj>>2]=a;q[tj+4>>2]=22;q[tj+8>>2]=-2147483616;o[a+22|0]=0;Wi=r[10471]|r[10472]<<8|(r[10473]<<16|r[10474]<<24);sj=r[10467]|r[10468]<<8|(r[10469]<<16|r[10470]<<24);o[a+14|0]=sj;o[a+15|0]=sj>>>8;o[a+16|0]=sj>>>16;o[a+17|0]=sj>>>24;o[a+18|0]=Wi;o[a+19|0]=Wi>>>8;o[a+20|0]=Wi>>>16;o[a+21|0]=Wi>>>24;Wi=r[10465]|r[10466]<<8|(r[10467]<<16|r[10468]<<24);sj=r[10461]|r[10462]<<8|(r[10463]<<16|r[10464]<<24);o[a+8|0]=sj;o[a+9|0]=sj>>>8;o[a+10|0]=sj>>>16;o[a+11|0]=sj>>>24;o[a+12|0]=Wi;o[a+13|0]=Wi>>>8;o[a+14|0]=Wi>>>16;o[a+15|0]=Wi>>>24;Wi=r[10457]|r[10458]<<8|(r[10459]<<16|r[10460]<<24);sj=r[10453]|r[10454]<<8|(r[10455]<<16|r[10456]<<24);o[a|0]=sj;o[a+1|0]=sj>>>8;o[a+2|0]=sj>>>16;o[a+3|0]=sj>>>24;o[a+4|0]=Wi;o[a+5|0]=Wi>>>8;o[a+6|0]=Wi>>>16;o[a+7|0]=Wi>>>24;Il(uj,tj,1);if(o[tj+11|0]<=-1){pp(q[tj>>2])}T=tj+16|0}function gh(a,wj,xj,yj){a=a|0;wj=wj|0;xj=xj|0;yj=yj|0;var zj=0,Aj=0;zj=T-96|0;T=zj;Aj=zh(zj+40|0,xj);hh(zj,wj,xj);Fh(Aj,zj);Ma(zj+24|0,q[zj+28>>2]);ih(zj+12|0,q[zj+16>>2]);Ma(zj,q[zj+4>>2]);Ch(a,Aj,yj);q[Aj>>2]=10364;Ma(Aj+28|0,q[Aj+32>>2]);ih(Aj+16|0,q[Aj+20>>2]);Ma(Aj+4|0,q[Aj+8>>2]);T=zj+96|0}function hh(a,wj,xj){var yj=0,Bj=0,Cj=0,Dj=0,Ej=0,Fj=0;Dj=T-16|0;T=Dj;Bj=Hl(a);yj=a+16|0;q[yj>>2]=0;q[yj+4>>2]=0;q[a+12>>2]=yj;yj=Hl(a+24|0);Cj=Bj;Bj=wj+4|0;if((Cj|0)!=(Bj|0)){jh(a,q[Bj>>2],wj+8|0)}Bj=wj+28|0;if((Bj|0)!=(yj|0)){jh(yj,q[Bj>>2],wj+32|0)}yj=0;q[Dj+12>>2]=0;Ej=xj+12|0;Cj=q[xj+8>>2];if((q[Ej>>2]-Cj|0)>=1){Bj=wj+20|0;while(1){wj=q[Bj>>2];a:{if(!wj){break a}Fj=q[q[(yj<<2)+Cj>>2]+56>>2];yj=Bj;while(1){Cj=q[wj+16>>2]<(Fj|0);yj=Cj?yj:wj;wj=q[(Cj<<2)+wj>>2];if(wj){continue}break}if((yj|0)==(Bj|0)|(Fj|0)<q[yj+16>>2]){break a}wj=kh(a,Dj+12|0);if((wj|0)==(yj+20|0)){break a}jh(wj,q[yj+20>>2],yj+24|0)}yj=q[Dj+12>>2]+1|0;q[Dj+12>>2]=yj;Cj=q[xj+8>>2];if((yj|0)<q[Ej>>2]-Cj>>2){continue}break}}T=Dj+16|0}function ih(a,wj){if(wj){ih(a,q[wj>>2]);ih(a,q[wj+4>>2]);Ma(wj+20|0,q[wj+24>>2]);pp(wj)}}function jh(a,wj,xj){var Gj=0,Hj=0,Ij=0,Jj=0,Kj=0,Lj=0,Mj=0,Nj=0,Oj=0,Pj=0,Qj=0;a:{if(!q[a+8>>2]){break a}Hj=q[a>>2];Kj=a+4|0;q[a>>2]=Kj;q[q[Kj>>2]+8>>2]=0;q[Kj>>2]=0;q[Kj+4>>2]=0;Gj=q[Hj+4>>2];Hj=Gj?Gj:Hj;if(!Hj){break a}Oj=a+8|0;while(1){Ij=Hj;Lj=wj;b:{if((wj|0)!=(xj|0)){Gj=Ij+16|0;Go(Gj,Lj+16|0);Go(Ij+28|0,Lj+28|0);Hj=q[Ij+8>>2];c:{if(!Hj){Hj=0;break c}wj=q[Hj>>2];if((Ij|0)==(wj|0)){q[Hj>>2]=0;wj=q[Hj+4>>2];if(!wj){break c}while(1){Hj=wj;wj=q[wj>>2];if(wj){continue}wj=q[Hj+4>>2];if(wj){continue}break}break c}q[Hj+4>>2]=0;if(!wj){break c}while(1){Hj=wj;wj=q[wj>>2];if(wj){continue}wj=q[Hj+4>>2];if(wj){continue}break}}wj=q[Kj>>2];if(!wj){wj=Kj;Gj=wj;break b}Nj=q[Gj>>2];Jj=Gj;Gj=r[Ij+27|0];Mj=Gj<<24>>24<0;Nj=Mj?Nj:Jj;Mj=Mj?q[Ij+20>>2]:Gj;while(1){Jj=r[wj+27|0];Gj=Jj<<24>>24<0;d:{e:{f:{g:{Jj=Gj?q[wj+20>>2]:Jj;Pj=Jj>>>0<Mj>>>0?Jj:Mj;if(Pj){Qj=wj+16|0;Gj=vn(Nj,Gj?q[Qj>>2]:Qj,Pj);if(Gj){break g}}if(Mj>>>0<Jj>>>0){break f}break e}if((Gj|0)>-1){break e}}Gj=q[wj>>2];if(Gj){break d}Gj=wj;break b}Gj=q[wj+4>>2];if(Gj){break d}Gj=wj+4|0;break b}wj=Gj;continue}}while(1){wj=q[Ij+8>>2];if(wj){Ij=wj;continue}break}Ma(a,Ij);return}q[Ij+8>>2]=wj;q[Ij>>2]=0;q[Ij+4>>2]=0;q[Gj>>2]=Ij;wj=q[q[a>>2]>>2];if(wj){q[a>>2]=wj;Ij=q[Gj>>2]}th(q[Kj>>2],Ij);q[Oj>>2]=q[Oj>>2]+1;Gj=q[Lj+4>>2];h:{if(!Gj){wj=q[Lj+8>>2];if(q[wj>>2]==(Lj|0)){break h}Gj=Lj+8|0;while(1){Ij=q[Gj>>2];Gj=Ij+8|0;wj=q[Ij+8>>2];if((Ij|0)!=q[wj>>2]){continue}break}break h}while(1){wj=Gj;Gj=q[wj>>2];if(Gj){continue}break}}if(Hj){continue}break}}if((wj|0)!=(xj|0)){while(1){Hj=wj;uh(a,wj+16|0);Gj=q[wj+4>>2];i:{if(!Gj){wj=q[Hj+8>>2];if((Hj|0)==q[wj>>2]){break i}Gj=Hj+8|0;while(1){Hj=q[Gj>>2];Gj=Hj+8|0;wj=q[Hj+8>>2];if((Hj|0)!=q[wj>>2]){continue}break}break i}while(1){wj=Gj;Gj=q[wj>>2];if(Gj){continue}break}}if((wj|0)!=(xj|0)){continue}break}}}function kh(a,wj){var xj=0,Rj=0,Sj=0,Tj=0,Uj=0,Vj=0,Wj=0,Xj=0;Sj=T-32|0;T=Sj;Tj=a+16|0;Rj=q[Tj>>2];a:{b:{if(!Rj){break b}Vj=q[wj>>2];xj=Tj;while(1){Uj=q[Rj+16>>2]<(Vj|0);xj=Uj?xj:Rj;Rj=q[(Uj<<2)+Rj>>2];if(Rj){continue}break}if((xj|0)==(Tj|0)){break b}if((Vj|0)>=q[xj+16>>2]){break a}}Vj=Hl(Sj+16|0);wj=q[wj>>2];Uj=Sj+8|0;q[Uj>>2]=0;q[Uj+4>>2]=0;q[Sj>>2]=wj;q[Sj+4>>2]=Uj;xj=q[Vj>>2];Wj=Vj+4|0;if((xj|0)!=(Wj|0)){Xj=Sj|4;while(1){wj=xj;Rj=xj+16|0;vh(Xj,Uj,Rj,Rj);Rj=q[xj+4>>2];c:{if(!Rj){xj=q[wj+8>>2];if((wj|0)==q[xj>>2]){break c}wj=wj+8|0;while(1){Rj=q[wj>>2];wj=Rj+8|0;xj=q[Rj+8>>2];if((Rj|0)!=q[xj>>2]){continue}break}break c}while(1){xj=Rj;Rj=q[xj>>2];if(Rj){continue}break}}if((xj|0)!=(Wj|0)){continue}break}}wj=a+16|0;Rj=q[wj>>2];d:{if(Rj){Tj=q[Sj>>2];while(1){xj=q[Rj+16>>2];e:{if((Tj|0)<(xj|0)){xj=q[Rj>>2];if(xj){break e}wj=Rj;break d}if((xj|0)>=(Tj|0)){break d}wj=Rj+4|0;xj=q[Rj+4>>2];if(!xj){break d}Rj=wj}wj=Rj;Rj=xj;continue}}Rj=Tj;wj=Rj}xj=q[wj>>2];if(!xj){xj=zo(32);q[xj+16>>2]=q[Sj>>2];q[xj+20>>2]=q[Sj+4>>2];Tj=xj+24|0;Wj=q[Sj+8>>2];q[Tj>>2]=Wj;Xj=q[Sj+12>>2];q[xj+28>>2]=Xj;f:{if(!Xj){q[xj+20>>2]=Tj;break f}q[Wj+8>>2]=Tj;q[Sj+8>>2]=0;q[Sj+12>>2]=0;q[Sj+4>>2]=Uj}q[xj+8>>2]=Rj;q[xj>>2]=0;q[xj+4>>2]=0;q[wj>>2]=xj;Tj=q[q[a+12>>2]>>2];Rj=xj;g:{if(!Tj){break g}q[a+12>>2]=Tj;Rj=q[wj>>2]}th(q[a+16>>2],Rj);a=a+20|0;q[a>>2]=q[a>>2]+1}Ma(Sj|4,q[Sj+8>>2]);Ma(Vj,q[Vj+4>>2])}T=Sj+32|0;return xj+20|0}function lh(a){a=a|0;q[a>>2]=10364;Ma(a+28|0,q[a+32>>2]);ih(a+16|0,q[a+20>>2]);Ma(a+4|0,q[a+8>>2]);return a|0}function mh(a,wj,Yj,Zj){a=a|0;wj=wj|0;Yj=Yj|0;Zj=Zj|0;var _j=0,$j=0;_j=T-96|0;T=_j;$j=Bh(_j+40|0,Yj);hh(_j,wj,Yj);Fh($j,_j);Ma(_j+24|0,q[_j+28>>2]);ih(_j+12|0,q[_j+16>>2]);Ma(_j,q[_j+4>>2]);Ch(a,$j,Zj);if(!q[a>>2]){if(o[a+15|0]<=-1){pp(q[a+4>>2])}q[wj+40>>2]=q[$j+40>>2];q[wj+44>>2]=q[$j+44>>2];q[a+8>>2]=0;q[a+12>>2]=0;q[a>>2]=0;q[a+4>>2]=0}q[$j>>2]=10364;Ma($j+28|0,q[$j+32>>2]);ih($j+16|0,q[$j+20>>2]);Ma($j+4|0,q[$j+8>>2]);T=_j+96|0}function nh(a,wj,Yj){var Zj=0,ak=0,bk=0,ck=0;bk=T-16|0;T=bk;Zj=zo(16);q[bk>>2]=Zj;q[bk+4>>2]=14;q[bk+8>>2]=-2147483632;o[Zj+14|0]=0;ck=r[10486]|r[10487]<<8|(r[10488]<<16|r[10489]<<24);ak=r[10482]|r[10483]<<8|(r[10484]<<16|r[10485]<<24);o[Zj+6|0]=ak;o[Zj+7|0]=ak>>>8;o[Zj+8|0]=ak>>>16;o[Zj+9|0]=ak>>>24;o[Zj+10|0]=ck;o[Zj+11|0]=ck>>>8;o[Zj+12|0]=ck>>>16;o[Zj+13|0]=ck>>>24;ck=r[10480]|r[10481]<<8|(r[10482]<<16|r[10483]<<24);ak=r[10476]|r[10477]<<8|(r[10478]<<16|r[10479]<<24);o[Zj|0]=ak;o[Zj+1|0]=ak>>>8;o[Zj+2|0]=ak>>>16;o[Zj+3|0]=ak>>>24;o[Zj+4|0]=ck;o[Zj+5|0]=ck>>>8;o[Zj+6|0]=ck>>>16;o[Zj+7|0]=ck>>>24;Il(a,bk,wj);if(o[bk+11|0]<=-1){pp(q[bk>>2])}wj=zo(16);q[bk>>2]=wj;q[bk+4>>2]=14;q[bk+8>>2]=-2147483632;o[wj+14|0]=0;ak=r[10501]|r[10502]<<8|(r[10503]<<16|r[10504]<<24);Zj=r[10497]|r[10498]<<8|(r[10499]<<16|r[10500]<<24);o[wj+6|0]=Zj;o[wj+7|0]=Zj>>>8;o[wj+8|0]=Zj>>>16;o[wj+9|0]=Zj>>>24;o[wj+10|0]=ak;o[wj+11|0]=ak>>>8;o[wj+12|0]=ak>>>16;o[wj+13|0]=ak>>>24;ak=r[10495]|r[10496]<<8|(r[10497]<<16|r[10498]<<24);Zj=r[10491]|r[10492]<<8|(r[10493]<<16|r[10494]<<24);o[wj|0]=Zj;o[wj+1|0]=Zj>>>8;o[wj+2|0]=Zj>>>16;o[wj+3|0]=Zj>>>24;o[wj+4|0]=ak;o[wj+5|0]=ak>>>8;o[wj+6|0]=ak>>>16;o[wj+7|0]=ak>>>24;Il(a,bk,Yj);if(o[bk+11|0]<=-1){pp(q[bk>>2])}T=bk+16|0}function oh(a,wj,Yj){var dk=0,ek=0,fk=0;dk=T-16|0;T=dk;q[dk+12>>2]=wj;wj=zo(32);q[dk>>2]=wj;q[dk+4>>2]=17;q[dk+8>>2]=-2147483616;o[wj+17|0]=0;o[wj+16|0]=r[10284];ek=r[10280]|r[10281]<<8|(r[10282]<<16|r[10283]<<24);fk=r[10276]|r[10277]<<8|(r[10278]<<16|r[10279]<<24);o[wj+8|0]=fk;o[wj+9|0]=fk>>>8;o[wj+10|0]=fk>>>16;o[wj+11|0]=fk>>>24;o[wj+12|0]=ek;o[wj+13|0]=ek>>>8;o[wj+14|0]=ek>>>16;o[wj+15|0]=ek>>>24;ek=r[10272]|r[10273]<<8|(r[10274]<<16|r[10275]<<24);fk=r[10268]|r[10269]<<8|(r[10270]<<16|r[10271]<<24);o[wj|0]=fk;o[wj+1|0]=fk>>>8;o[wj+2|0]=fk>>>16;o[wj+3|0]=fk>>>24;o[wj+4|0]=ek;o[wj+5|0]=ek>>>8;o[wj+6|0]=ek>>>16;o[wj+7|0]=ek>>>24;Il(kh(a+4|0,dk+12|0),dk,Yj);if(o[dk+11|0]<=-1){pp(q[dk>>2])}T=dk+16|0}function ph(a,wj,Yj,gk,hk,ik){var jk=0,kk=0,lk=0;jk=T-16|0;T=jk;q[jk+12>>2]=wj;wj=zo(32);q[jk>>2]=wj;q[jk+4>>2]=17;q[jk+8>>2]=-2147483616;o[wj+17|0]=0;o[wj+16|0]=r[10284];kk=r[10280]|r[10281]<<8|(r[10282]<<16|r[10283]<<24);lk=r[10276]|r[10277]<<8|(r[10278]<<16|r[10279]<<24);o[wj+8|0]=lk;o[wj+9|0]=lk>>>8;o[wj+10|0]=lk>>>16;o[wj+11|0]=lk>>>24;o[wj+12|0]=kk;o[wj+13|0]=kk>>>8;o[wj+14|0]=kk>>>16;o[wj+15|0]=kk>>>24;kk=r[10272]|r[10273]<<8|(r[10274]<<16|r[10275]<<24);lk=r[10268]|r[10269]<<8|(r[10270]<<16|r[10271]<<24);o[wj|0]=lk;o[wj+1|0]=lk>>>8;o[wj+2|0]=lk>>>16;o[wj+3|0]=lk>>>24;o[wj+4|0]=kk;o[wj+5|0]=kk>>>8;o[wj+6|0]=kk>>>16;o[wj+7|0]=kk>>>24;kk=a+4|0;Il(kh(kk,jk+12|0),jk,Yj);if(o[jk+11|0]<=-1){pp(q[jk>>2])}a=zo(32);q[jk>>2]=a;q[jk+4>>2]=19;q[jk+8>>2]=-2147483616;o[a+19|0]=0;wj=r[10301]|r[10302]<<8|(r[10303]<<16|r[10304]<<24);o[a+15|0]=wj;o[a+16|0]=wj>>>8;o[a+17|0]=wj>>>16;o[a+18|0]=wj>>>24;wj=r[10298]|r[10299]<<8|(r[10300]<<16|r[10301]<<24);Yj=r[10294]|r[10295]<<8|(r[10296]<<16|r[10297]<<24);o[a+8|0]=Yj;o[a+9|0]=Yj>>>8;o[a+10|0]=Yj>>>16;o[a+11|0]=Yj>>>24;o[a+12|0]=wj;o[a+13|0]=wj>>>8;o[a+14|0]=wj>>>16;o[a+15|0]=wj>>>24;wj=r[10290]|r[10291]<<8|(r[10292]<<16|r[10293]<<24);Yj=r[10286]|r[10287]<<8|(r[10288]<<16|r[10289]<<24);o[a|0]=Yj;o[a+1|0]=Yj>>>8;o[a+2|0]=Yj>>>16;o[a+3|0]=Yj>>>24;o[a+4|0]=wj;o[a+5|0]=wj>>>8;o[a+6|0]=wj>>>16;o[a+7|0]=wj>>>24;qh(kh(kk,jk+12|0),jk,hk,gk);if(o[jk+11|0]<=-1){pp(q[jk>>2])}a=zo(32);q[jk>>2]=a;q[jk+4>>2]=18;q[jk+8>>2]=-2147483616;o[a+18|0]=0;wj=r[10322]|r[10323]<<8;o[a+16|0]=wj;o[a+17|0]=wj>>>8;wj=r[10318]|r[10319]<<8|(r[10320]<<16|r[10321]<<24);Yj=r[10314]|r[10315]<<8|(r[10316]<<16|r[10317]<<24);o[a+8|0]=Yj;o[a+9|0]=Yj>>>8;o[a+10|0]=Yj>>>16;o[a+11|0]=Yj>>>24;o[a+12|0]=wj;o[a+13|0]=wj>>>8;o[a+14|0]=wj>>>16;o[a+15|0]=wj>>>24;wj=r[10310]|r[10311]<<8|(r[10312]<<16|r[10313]<<24);Yj=r[10306]|r[10307]<<8|(r[10308]<<16|r[10309]<<24);o[a|0]=Yj;o[a+1|0]=Yj>>>8;o[a+2|0]=Yj>>>16;o[a+3|0]=Yj>>>24;o[a+4|0]=wj;o[a+5|0]=wj>>>8;o[a+6|0]=wj>>>16;o[a+7|0]=wj>>>24;Jl(kh(kk,jk+12|0),jk,ik);if(o[jk+11|0]<=-1){pp(q[jk>>2])}T=jk+16|0}function qh(a,wj,Yj,gk){var hk=0,ik=0,mk=0,nk=0;hk=T-48|0;T=hk;q[hk+24>>2]=0;q[hk+16>>2]=0;q[hk+20>>2]=0;if((gk|0)>=1){while(1){if(ik){No(hk+16|0,10506,wn(10506))}Ro(hk,u[(ik<<2)+Yj>>2]);mk=r[hk+11|0];nk=mk<<24>>24<0;No(hk+16|0,nk?q[hk>>2]:hk,nk?q[hk+4>>2]:mk);if(o[hk+11|0]<=-1){pp(q[hk>>2])}ik=ik+1|0;if((ik|0)!=(gk|0)){continue}break}}q[hk+40>>2]=wj;yh(hk,a,wj,hk+40|0);Go(q[hk>>2]+28|0,hk+16|0);if(o[hk+27|0]<0){pp(q[hk+16>>2])}T=hk+48|0}function rh(a,wj){var Yj=0,gk=0,ok=0,pk=0;pk=T-16|0;T=pk;Yj=zo(16);q[pk>>2]=Yj;q[pk+4>>2]=15;q[pk+8>>2]=-2147483632;o[Yj+15|0]=0;gk=r[10520]|r[10521]<<8|(r[10522]<<16|r[10523]<<24);ok=r[10516]|r[10517]<<8|(r[10518]<<16|r[10519]<<24);o[Yj+7|0]=ok;o[Yj+8|0]=ok>>>8;o[Yj+9|0]=ok>>>16;o[Yj+10|0]=ok>>>24;o[Yj+11|0]=gk;o[Yj+12|0]=gk>>>8;o[Yj+13|0]=gk>>>16;o[Yj+14|0]=gk>>>24;gk=r[10513]|r[10514]<<8|(r[10515]<<16|r[10516]<<24);ok=r[10509]|r[10510]<<8|(r[10511]<<16|r[10512]<<24);o[Yj|0]=ok;o[Yj+1|0]=ok>>>8;o[Yj+2|0]=ok>>>16;o[Yj+3|0]=ok>>>24;o[Yj+4|0]=gk;o[Yj+5|0]=gk>>>8;o[Yj+6|0]=gk>>>16;o[Yj+7|0]=gk>>>24;Il(a+4|0,pk,wj);if(o[pk+11|0]<=-1){pp(q[pk>>2])}T=pk+16|0}function sh(a){a=a|0;q[a>>2]=10364;Ma(a+28|0,q[a+32>>2]);ih(a+16|0,q[a+20>>2]);Ma(a+4|0,q[a+8>>2]);pp(a)}function th(a,wj){var qk=0,rk=0,sk=0;qk=(a|0)==(wj|0);o[wj+12|0]=qk;a:{if(qk){break a}while(1){rk=q[wj+8>>2];if(r[rk+12|0]){break a}b:{qk=q[rk+8>>2];sk=q[qk>>2];if((sk|0)==(rk|0)){sk=q[qk+4>>2];if(!(!sk|r[sk+12|0])){break b}c:{if(q[rk>>2]==(wj|0)){wj=rk;break c}wj=q[rk+4>>2];sk=q[wj>>2];q[rk+4>>2]=sk;a=wj;if(sk){q[sk+8>>2]=rk;qk=q[rk+8>>2]}q[a+8>>2]=qk;a=q[rk+8>>2];q[((rk|0)==q[a>>2]?a:a+4|0)>>2]=wj;q[wj>>2]=rk;q[rk+8>>2]=wj;qk=q[wj+8>>2]}o[wj+12|0]=1;o[qk+12|0]=0;a=q[qk>>2];wj=q[a+4>>2];q[qk>>2]=wj;if(wj){q[wj+8>>2]=qk}q[a+8>>2]=q[qk+8>>2];wj=q[qk+8>>2];q[(q[wj>>2]==(qk|0)?wj:wj+4|0)>>2]=a;q[a+4>>2]=qk;q[qk+8>>2]=a;return}if(!(r[sk+12|0]|!sk)){break b}d:{if(q[rk>>2]!=(wj|0)){wj=rk;break d}sk=q[wj+4>>2];q[rk>>2]=sk;a=wj;if(sk){q[sk+8>>2]=rk;qk=q[rk+8>>2]}q[a+8>>2]=qk;a=q[rk+8>>2];q[((rk|0)==q[a>>2]?a:a+4|0)>>2]=wj;q[wj+4>>2]=rk;q[rk+8>>2]=wj;qk=q[wj+8>>2]}o[wj+12|0]=1;o[qk+12|0]=0;a=q[qk+4>>2];wj=q[a>>2];q[qk+4>>2]=wj;if(wj){q[wj+8>>2]=qk}q[a+8>>2]=q[qk+8>>2];wj=q[qk+8>>2];q[(q[wj>>2]==(qk|0)?wj:wj+4|0)>>2]=a;q[a>>2]=qk;q[qk+8>>2]=a;break a}wj=sk+12|0;o[rk+12|0]=1;o[qk+12|0]=(a|0)==(qk|0);o[wj|0]=1;wj=qk;if((wj|0)!=(a|0)){continue}break}}}function uh(a,wj){var tk=0,uk=0,vk=0,wk=0,xk=0,yk=0,zk=0;uk=zo(40);vk=uk+16|0;Do(vk,wj);Do(uk+28|0,wj+12|0);tk=a+4|0;wj=q[tk>>2];a:{if(wj){wk=r[uk+27|0];tk=wk<<24>>24<0;wk=tk?q[uk+20>>2]:wk;zk=tk?q[uk+16>>2]:vk;while(1){vk=r[wj+27|0];tk=vk<<24>>24<0;b:{c:{d:{e:{vk=tk?q[wj+20>>2]:vk;xk=vk>>>0<wk>>>0?vk:wk;if(xk){yk=wj+16|0;tk=vn(zk,tk?q[yk>>2]:yk,xk);if(tk){break e}}if(wk>>>0<vk>>>0){break d}break c}if((tk|0)>-1){break c}}tk=q[wj>>2];if(tk){break b}tk=wj;break a}tk=q[wj+4>>2];if(tk){break b}tk=wj+4|0;break a}wj=tk;continue}}wj=tk}q[uk+8>>2]=wj;q[uk>>2]=0;q[uk+4>>2]=0;q[tk>>2]=uk;wj=q[q[a>>2]>>2];if(wj){q[a>>2]=wj;uk=q[tk>>2]}th(q[a+4>>2],uk);a=a+8|0;q[a>>2]=q[a>>2]+1}function vh(a,wj,Ak,Bk){var Ck=0;Ck=T-16|0;T=Ck;Ak=wh(a,wj,Ck+12|0,Ck+8|0,Ak);if(!q[Ak>>2]){wj=zo(40);Do(wj+16|0,Bk);Do(wj+28|0,Bk+12|0);q[wj+8>>2]=q[Ck+12>>2];q[wj>>2]=0;q[wj+4>>2]=0;q[Ak>>2]=wj;Bk=wj;wj=q[q[a>>2]>>2];if(wj){q[a>>2]=wj;Bk=q[Ak>>2]}th(q[a+4>>2],Bk);a=a+8|0;q[a>>2]=q[a>>2]+1}T=Ck+16|0}function wh(a,wj,Ak,Bk,Dk){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:{c:{d:{e:{Mk=a+4|0;f:{if((Mk|0)==(wj|0)){break f}Ek=wj+16|0;Gk=r[wj+27|0];Nk=Gk<<24>>24;Fk=(Nk|0)<0;Hk=r[Dk+11|0];Ik=Hk<<24>>24;Jk=(Ik|0)<0;Kk=Fk?q[wj+20>>2]:Gk;Hk=Jk?q[Dk+4>>2]:Hk;Lk=Kk>>>0<Hk>>>0;g:{Gk=Lk?Kk:Hk;if(Gk){Jk=Jk?q[Dk>>2]:Dk;Fk=Fk?q[Ek>>2]:Ek;Ok=vn(Jk,Fk,Gk);if(Ok){break g}}if(Hk>>>0<Kk>>>0){break f}if(!Gk){break d}Jk=(Ik|0)<0?q[Dk>>2]:Dk;Fk=(Nk|0)<0?q[Ek>>2]:Ek;break e}if((Ok|0)>-1){break e}}Gk=q[wj>>2];h:{i:{if(q[a>>2]==(wj|0)){Ek=wj;break i}j:{if(!Gk){Bk=wj;while(1){Ek=q[Bk+8>>2];Hk=q[Ek>>2]==(Bk|0);Bk=Ek;if(Hk){continue}break}break j}Bk=Gk;while(1){Ek=Bk;Bk=q[Ek+4>>2];if(Bk){continue}break}}Fk=r[Dk+11|0];Bk=Fk<<24>>24<0;Ik=r[Ek+27|0];Hk=Ik<<24>>24<0;k:{Fk=Bk?q[Dk+4>>2]:Fk;Ik=Hk?q[Ek+20>>2]:Ik;Jk=Fk>>>0<Ik>>>0?Fk:Ik;if(Jk){Kk=Ek+16|0;Bk=vn(Hk?q[Kk>>2]:Kk,Bk?q[Dk>>2]:Dk,Jk);if(Bk){break k}}if(Ik>>>0<Fk>>>0){break i}break h}if((Bk|0)>-1){break h}}if(!Gk){q[Ak>>2]=wj;return wj}q[Ak>>2]=Ek;return Ek+4|0}return xh(a,Ak,Dk)}Ek=vn(Fk,Jk,Gk);if(Ek){break c}}if(Lk){break b}break a}if((Ek|0)>-1){break a}}Jk=wj+4|0;Gk=q[Jk>>2];l:{if(Gk){Ek=Gk;while(1){Bk=Ek;Ek=q[Ek>>2];if(Ek){continue}break}break l}Bk=q[wj+8>>2];if(q[Bk>>2]==(wj|0)){break l}Ek=wj+8|0;while(1){Fk=q[Ek>>2];Ek=Fk+8|0;Bk=q[Fk+8>>2];if((Fk|0)!=q[Bk>>2]){continue}break}}m:{n:{if((Bk|0)==(Mk|0)){break n}Fk=r[Bk+27|0];Ek=Fk<<24>>24<0;o:{Fk=Ek?q[Bk+20>>2]:Fk;Kk=Fk>>>0<Hk>>>0?Fk:Hk;if(Kk){Lk=(Ik|0)<0?q[Dk>>2]:Dk;Ik=Bk+16|0;Ek=vn(Lk,Ek?q[Ik>>2]:Ik,Kk);if(Ek){break o}}if(Hk>>>0<Fk>>>0){break n}break m}if((Ek|0)>-1){break m}}if(!Gk){q[Ak>>2]=wj;return Jk}q[Ak>>2]=Bk;return Bk}return xh(a,Ak,Dk)}q[Ak>>2]=wj;q[Bk>>2]=wj;return Bk}function xh(a,wj,Ak){var Bk=0,Dk=0,Pk=0,Qk=0,Rk=0,Sk=0,Tk=0,Uk=0,Vk=0;a:{Bk=a+4|0;a=q[Bk>>2];if(a){Pk=r[Ak+11|0];Qk=Pk<<24>>24<0;Pk=Qk?q[Ak+4>>2]:Pk;Tk=Qk?q[Ak>>2]:Ak;while(1){Ak=a+16|0;Dk=r[a+27|0];Qk=Dk<<24>>24<0;Rk=Qk?q[a+20>>2]:Dk;Uk=Rk>>>0<Pk>>>0;b:{c:{d:{e:{f:{g:{h:{Dk=Uk?Rk:Pk;if(Dk){Sk=Qk?q[Ak>>2]:Ak;Vk=vn(Tk,Sk,Dk);if(Vk){break h}}if(Pk>>>0<Rk>>>0){break g}if(!Dk){break e}Sk=Qk?q[Ak>>2]:Ak;break f}if((Vk|0)>-1){break f}}Ak=q[a>>2];if(Ak){break b}q[wj>>2]=a;return a}Ak=vn(Sk,Tk,Dk);if(Ak){break d}}if(Uk){break c}break a}if((Ak|0)>-1){break a}}Bk=a+4|0;Ak=q[a+4>>2];if(!Ak){break a}a=Bk}Bk=a;a=Ak;continue}}q[wj>>2]=Bk;return Bk}q[wj>>2]=a;return Bk}function yh(a,wj,Ak,Wk){var Xk=0,Yk=0,Zk=0,_k=0;Xk=T-16|0;T=Xk;_k=a;Yk=xh(wj,Xk+12|0,Ak);Ak=q[Yk>>2];if(Ak){wj=0}else{Ak=zo(40);Do(Ak+16|0,q[Wk>>2]);q[Ak+36>>2]=0;q[Ak+28>>2]=0;q[Ak+32>>2]=0;q[Ak+8>>2]=q[Xk+12>>2];q[Ak>>2]=0;q[Ak+4>>2]=0;q[Yk>>2]=Ak;Wk=Ak;Zk=q[q[wj>>2]>>2];if(Zk){q[wj>>2]=Zk;Wk=q[Yk>>2]}th(q[wj+4>>2],Wk);wj=wj+8|0;q[wj>>2]=q[wj>>2]+1;wj=1}o[_k+4|0]=wj;q[a>>2]=Ak;T=Xk+16|0}function zh(a,wj){q[a>>2]=10364;Ah(a+4|0);q[a+40>>2]=0;q[a+44>>2]=0;q[a+52>>2]=0;q[a+48>>2]=wj;q[a>>2]=10536;return a}function Ah(a){var wj=0,Ak=0,Wk=0,$k=0,al=0;Wk=T-16|0;T=Wk;Hl(a);wj=a+16|0;q[wj>>2]=0;q[wj+4>>2]=0;q[a+12>>2]=wj;$k=Hl(a+24|0);al=Wk+8|0;q[al>>2]=0;q[Wk>>2]=0;q[Wk+4>>2]=0;a=zo(32);q[Wk>>2]=a;q[Wk+4>>2]=20;q[Wk+8>>2]=-2147483616;o[a+20|0]=0;wj=r[10720]|r[10721]<<8|(r[10722]<<16|r[10723]<<24);o[a+16|0]=wj;o[a+17|0]=wj>>>8;o[a+18|0]=wj>>>16;o[a+19|0]=wj>>>24;wj=r[10716]|r[10717]<<8|(r[10718]<<16|r[10719]<<24);Ak=r[10712]|r[10713]<<8|(r[10714]<<16|r[10715]<<24);o[a+8|0]=Ak;o[a+9|0]=Ak>>>8;o[a+10|0]=Ak>>>16;o[a+11|0]=Ak>>>24;o[a+12|0]=wj;o[a+13|0]=wj>>>8;o[a+14|0]=wj>>>16;o[a+15|0]=wj>>>24;wj=r[10708]|r[10709]<<8|(r[10710]<<16|r[10711]<<24);Ak=r[10704]|r[10705]<<8|(r[10706]<<16|r[10707]<<24);o[a|0]=Ak;o[a+1|0]=Ak>>>8;o[a+2|0]=Ak>>>16;o[a+3|0]=Ak>>>24;o[a+4|0]=wj;o[a+5|0]=wj>>>8;o[a+6|0]=wj>>>16;o[a+7|0]=wj>>>24;Il($k,Wk,1);if(o[Wk+11|0]<=-1){pp(q[Wk>>2])}q[al>>2]=0;q[Wk>>2]=0;q[Wk+4>>2]=0;a=zo(32);q[Wk>>2]=a;q[Wk+4>>2]=22;q[Wk+8>>2]=-2147483616;o[a+22|0]=0;wj=r[10743]|r[10744]<<8|(r[10745]<<16|r[10746]<<24);Ak=r[10739]|r[10740]<<8|(r[10741]<<16|r[10742]<<24);o[a+14|0]=Ak;o[a+15|0]=Ak>>>8;o[a+16|0]=Ak>>>16;o[a+17|0]=Ak>>>24;o[a+18|0]=wj;o[a+19|0]=wj>>>8;o[a+20|0]=wj>>>16;o[a+21|0]=wj>>>24;wj=r[10737]|r[10738]<<8|(r[10739]<<16|r[10740]<<24);Ak=r[10733]|r[10734]<<8|(r[10735]<<16|r[10736]<<24);o[a+8|0]=Ak;o[a+9|0]=Ak>>>8;o[a+10|0]=Ak>>>16;o[a+11|0]=Ak>>>24;o[a+12|0]=wj;o[a+13|0]=wj>>>8;o[a+14|0]=wj>>>16;o[a+15|0]=wj>>>24;wj=r[10729]|r[10730]<<8|(r[10731]<<16|r[10732]<<24);Ak=r[10725]|r[10726]<<8|(r[10727]<<16|r[10728]<<24);o[a|0]=Ak;o[a+1|0]=Ak>>>8;o[a+2|0]=Ak>>>16;o[a+3|0]=Ak>>>24;o[a+4|0]=wj;o[a+5|0]=wj>>>8;o[a+6|0]=wj>>>16;o[a+7|0]=wj>>>24;Il($k,Wk,1);if(o[Wk+11|0]<=-1){pp(q[Wk>>2])}T=Wk+16|0}function Bh(a,bl){q[a>>2]=10364;Ah(a+4|0);q[a+40>>2]=0;q[a+44>>2]=0;q[a+52>>2]=bl;q[a+48>>2]=bl;q[a>>2]=10536;return a}function Ch(a,bl,cl){var dl=0,el=0,fl=0;el=T-16|0;T=el;dl=q[bl+48>>2];a:{if(!dl){bl=zo(32);q[el>>2]=bl;q[el+4>>2]=23;q[el+8>>2]=-2147483616;o[bl+23|0]=0;cl=r[10563]|r[10564]<<8|(r[10565]<<16|r[10566]<<24);dl=r[10559]|r[10560]<<8|(r[10561]<<16|r[10562]<<24);o[bl+15|0]=dl;o[bl+16|0]=dl>>>8;o[bl+17|0]=dl>>>16;o[bl+18|0]=dl>>>24;o[bl+19|0]=cl;o[bl+20|0]=cl>>>8;o[bl+21|0]=cl>>>16;o[bl+22|0]=cl>>>24;cl=r[10556]|r[10557]<<8|(r[10558]<<16|r[10559]<<24);dl=r[10552]|r[10553]<<8|(r[10554]<<16|r[10555]<<24);o[bl+8|0]=dl;o[bl+9|0]=dl>>>8;o[bl+10|0]=dl>>>16;o[bl+11|0]=dl>>>24;o[bl+12|0]=cl;o[bl+13|0]=cl>>>8;o[bl+14|0]=cl>>>16;o[bl+15|0]=cl>>>24;cl=r[10548]|r[10549]<<8|(r[10550]<<16|r[10551]<<24);dl=r[10544]|r[10545]<<8|(r[10546]<<16|r[10547]<<24);o[bl|0]=dl;o[bl+1|0]=dl>>>8;o[bl+2|0]=dl>>>16;o[bl+3|0]=dl>>>24;o[bl+4|0]=cl;o[bl+5|0]=cl>>>8;o[bl+6|0]=cl>>>16;o[bl+7|0]=cl>>>24;q[a>>2]=-1;Do(a+4|0,el);if(o[el+11|0]>-1){break a}pp(q[el>>2]);break a}fl=q[bl+52>>2];if(!fl){Dh(a,bl,dl,cl);break a}Eh(a,bl,fl,cl)}T=el+16|0}function Dh(a,bl,cl,gl){var jl=0,kl=0,ll=0,ml=0,nl=0,ol=0,pl=0,ql=0,rl=0;ll=T-16|0;T=ll;q[ll+8>>2]=0;q[ll>>2]=0;q[ll+4>>2]=0;jl=zo(16);q[ll>>2]=jl;q[ll+4>>2]=15;q[ll+8>>2]=-2147483632;o[jl+15|0]=0;ml=r[10579]|r[10580]<<8|(r[10581]<<16|r[10582]<<24);kl=r[10575]|r[10576]<<8|(r[10577]<<16|r[10578]<<24);o[jl+7|0]=kl;o[jl+8|0]=kl>>>8;o[jl+9|0]=kl>>>16;o[jl+10|0]=kl>>>24;o[jl+11|0]=ml;o[jl+12|0]=ml>>>8;o[jl+13|0]=ml>>>16;o[jl+14|0]=ml>>>24;ml=r[10572]|r[10573]<<8|(r[10574]<<16|r[10575]<<24);kl=r[10568]|r[10569]<<8|(r[10570]<<16|r[10571]<<24);o[jl|0]=kl;o[jl+1|0]=kl>>>8;o[jl+2|0]=kl>>>16;o[jl+3|0]=kl>>>24;o[jl+4|0]=ml;o[jl+5|0]=ml>>>8;o[jl+6|0]=ml>>>16;o[jl+7|0]=ml>>>24;ol=bl+4|0;ql=Ll(ol,ll,-1);if(o[ll+11|0]<=-1){pp(q[ll>>2])}a:{b:{c:{d:{jl=ql+1|0;if(jl>>>0>1){break d}if(!(jl-1)){break c}if((Jd(ol)|0)!=10){break d}break c}e:{rl=cl+12|0;jl=q[rl>>2];kl=q[cl+8>>2];if((jl-kl|0)>=1){ml=bl+20|0;while(1){nl=q[q[(pl<<2)+kl>>2]+28>>2];if(nl+ -1>>>0>=6){if((nl|0)!=9){break e}q[ll+8>>2]=0;q[ll>>2]=0;q[ll+4>>2]=0;jl=zo(32);q[ll>>2]=jl;q[ll+4>>2]=17;q[ll+8>>2]=-2147483616;o[jl+17|0]=0;o[jl+16|0]=r[10600];kl=r[10596]|r[10597]<<8|(r[10598]<<16|r[10599]<<24);nl=r[10592]|r[10593]<<8|(r[10594]<<16|r[10595]<<24);o[jl+8|0]=nl;o[jl+9|0]=nl>>>8;o[jl+10|0]=nl>>>16;o[jl+11|0]=nl>>>24;o[jl+12|0]=kl;o[jl+13|0]=kl>>>8;o[jl+14|0]=kl>>>16;o[jl+15|0]=kl>>>24;kl=r[10588]|r[10589]<<8|(r[10590]<<16|r[10591]<<24);nl=r[10584]|r[10585]<<8|(r[10586]<<16|r[10587]<<24);o[jl|0]=nl;o[jl+1|0]=nl>>>8;o[jl+2|0]=nl>>>16;o[jl+3|0]=nl>>>24;o[jl+4|0]=kl;o[jl+5|0]=kl>>>8;o[jl+6|0]=kl>>>16;o[jl+7|0]=kl>>>24;f:{g:{jl=ml;kl=q[jl>>2];if(!kl){break g}while(1){nl=q[kl+16>>2];jl=(nl|0)<0?jl:kl;kl=q[(nl>>>29&4)+kl>>2];if(kl){continue}break}if((jl|0)==(ml|0)|q[jl+16>>2]>0){break g}jl=jl+20|0;if(!Cd(jl,ll)){break g}jl=Ll(jl,ll,-1);break f}jl=Ll(ol,ll,-1)}if(o[ll+11|0]<=-1){pp(q[ll>>2])}if((jl|0)<1){break e}kl=q[cl+8>>2];jl=q[rl>>2]}pl=pl+1|0;if((pl|0)<jl-kl>>2){continue}break}}kl=zo(56);jl=kl;q[jl>>2]=0;q[jl+4>>2]=0;q[jl+48>>2]=0;q[jl+52>>2]=0;q[jl+40>>2]=0;q[jl+44>>2]=0;q[jl+32>>2]=0;q[jl+36>>2]=0;q[jl+24>>2]=0;q[jl+28>>2]=0;q[jl+16>>2]=0;q[jl+20>>2]=0;q[jl+8>>2]=0;q[jl+12>>2]=0;ml=13816;jl=hl(jl);break b}if((ql|0)==1){q[ll+8>>2]=0;q[ll>>2]=0;q[ll+4>>2]=0;bl=zo(32);q[ll>>2]=bl;q[ll+4>>2]=24;q[ll+8>>2]=-2147483616;o[bl+24|0]=0;cl=r[10622]|r[10623]<<8|(r[10624]<<16|r[10625]<<24);gl=r[10618]|r[10619]<<8|(r[10620]<<16|r[10621]<<24);o[bl+16|0]=gl;o[bl+17|0]=gl>>>8;o[bl+18|0]=gl>>>16;o[bl+19|0]=gl>>>24;o[bl+20|0]=cl;o[bl+21|0]=cl>>>8;o[bl+22|0]=cl>>>16;o[bl+23|0]=cl>>>24;cl=r[10614]|r[10615]<<8|(r[10616]<<16|r[10617]<<24);gl=r[10610]|r[10611]<<8|(r[10612]<<16|r[10613]<<24);o[bl+8|0]=gl;o[bl+9|0]=gl>>>8;o[bl+10|0]=gl>>>16;o[bl+11|0]=gl>>>24;o[bl+12|0]=cl;o[bl+13|0]=cl>>>8;o[bl+14|0]=cl>>>16;o[bl+15|0]=cl>>>24;cl=r[10606]|r[10607]<<8|(r[10608]<<16|r[10609]<<24);gl=r[10602]|r[10603]<<8|(r[10604]<<16|r[10605]<<24);o[bl|0]=gl;o[bl+1|0]=gl>>>8;o[bl+2|0]=gl>>>16;o[bl+3|0]=gl>>>24;o[bl+4|0]=cl;o[bl+5|0]=cl>>>8;o[bl+6|0]=cl>>>16;o[bl+7|0]=cl>>>24;q[a>>2]=-1;Do(a+4|0,ll);if(o[ll+11|0]>-1){break a}pp(q[ll>>2]);break a}}kl=zo(56);jl=kl;q[jl>>2]=0;q[jl+4>>2]=0;q[jl+48>>2]=0;q[jl+52>>2]=0;q[jl+40>>2]=0;q[jl+44>>2]=0;q[jl+32>>2]=0;q[jl+36>>2]=0;q[jl+24>>2]=0;q[jl+28>>2]=0;q[jl+16>>2]=0;q[jl+20>>2]=0;q[jl+8>>2]=0;q[jl+12>>2]=0;ml=13924;jl=hl(jl)}q[kl>>2]=ml;Tb(jl,cl);il(a,jl,ol,gl);if(!q[a>>2]){if(o[a+15|0]<=-1){pp(q[a+4>>2])}cl=q[kl+52>>2];q[bl+44>>2]=0;q[bl+40>>2]=cl;q[a+8>>2]=0;q[a+12>>2]=0;q[a>>2]=0;q[a+4>>2]=0}n[q[q[kl>>2]+4>>2]](jl)}T=ll+16|0}function Eh(a,bl,cl,gl){var hl=0,sl=0,tl=0,ul=0;tl=T-16|0;T=tl;q[tl+8>>2]=0;q[tl>>2]=0;q[tl+4>>2]=0;hl=zo(16);q[tl>>2]=hl;q[tl+4>>2]=15;q[tl+8>>2]=-2147483632;o[hl+15|0]=0;sl=r[10579]|r[10580]<<8|(r[10581]<<16|r[10582]<<24);ul=r[10575]|r[10576]<<8|(r[10577]<<16|r[10578]<<24);o[hl+7|0]=ul;o[hl+8|0]=ul>>>8;o[hl+9|0]=ul>>>16;o[hl+10|0]=ul>>>24;o[hl+11|0]=sl;o[hl+12|0]=sl>>>8;o[hl+13|0]=sl>>>16;o[hl+14|0]=sl>>>24;sl=r[10572]|r[10573]<<8|(r[10574]<<16|r[10575]<<24);ul=r[10568]|r[10569]<<8|(r[10570]<<16|r[10571]<<24);o[hl|0]=ul;o[hl+1|0]=ul>>>8;o[hl+2|0]=ul>>>16;o[hl+3|0]=ul>>>24;o[hl+4|0]=sl;o[hl+5|0]=sl>>>8;o[hl+6|0]=sl>>>16;o[hl+7|0]=sl>>>24;sl=bl+4|0;hl=Ll(sl,tl,-1);if(o[tl+11|0]<=-1){pp(q[tl>>2])}a:{b:{hl=hl+1|0;if(hl>>>0>2){break b}c:{switch(hl-1|0){default:if((Jd(sl)|0)==10){break b}break;case 0:break b;case 1:break c}}hl=zo(68);Xk(hl);q[hl+64>>2]=0;q[hl>>2]=10980;break a}hl=zo(64);Xk(hl);q[hl>>2]=13252}q[hl+56>>2]=cl;Tb(hl,cl);il(a,hl,sl,gl);if(!q[a>>2]){if(o[a+15|0]<=-1){pp(q[a+4>>2])}q[bl+40>>2]=q[hl+52>>2];q[bl+44>>2]=q[hl+60>>2];q[a+8>>2]=0;q[a+12>>2]=0;q[a>>2]=0;q[a+4>>2]=0}n[q[q[hl>>2]+4>>2]](hl);T=tl+16|0}function Fh(a,bl){var cl=0;cl=a+4|0;if((cl|0)!=(bl|0)){jh(cl,q[bl>>2],bl+4|0);Gh(a+16|0,q[bl+12>>2],bl+16|0);jh(a+28|0,q[bl+24>>2],bl+28|0)}}function Gh(a,bl,gl){var il=0,vl=0,wl=0,xl=0,yl=0,zl=0,Al=0,Bl=0;zl=T-16|0;T=zl;a:{b:{if(!q[a+8>>2]){break b}il=q[a>>2];yl=a+4|0;q[a>>2]=yl;q[q[yl>>2]+8>>2]=0;q[yl>>2]=0;q[yl+4>>2]=0;vl=q[il+4>>2];il=vl?vl:il;if(!il){break b}Al=a+8|0;while(1){xl=il;wl=bl;c:{if((bl|0)!=(gl|0)){q[xl+16>>2]=q[wl+16>>2];if((wl|0)!=(xl|0)){jh(xl+20|0,q[wl+20>>2],wl+24|0)}il=q[xl+8>>2];d:{if(!il){il=0;break d}bl=q[il>>2];if((xl|0)==(bl|0)){q[il>>2]=0;bl=q[il+4>>2];if(!bl){break d}while(1){il=bl;bl=q[bl>>2];if(bl){continue}bl=q[il+4>>2];if(bl){continue}break}break d}q[il+4>>2]=0;if(!bl){break d}while(1){il=bl;bl=q[bl>>2];if(bl){continue}bl=q[il+4>>2];if(bl){continue}break}}bl=q[yl>>2];if(!bl){bl=yl;vl=bl;break c}Bl=q[xl+16>>2];while(1){e:{if((Bl|0)<q[bl+16>>2]){vl=q[bl>>2];if(vl){break e}vl=bl;break c}vl=q[bl+4>>2];if(vl){break e}vl=bl+4|0;break c}bl=vl;continue}}while(1){bl=q[xl+8>>2];if(bl){xl=bl;continue}break}ih(a,xl);break a}q[xl+8>>2]=bl;q[xl>>2]=0;q[xl+4>>2]=0;q[vl>>2]=xl;bl=q[q[a>>2]>>2];if(bl){q[a>>2]=bl;xl=q[vl>>2]}th(q[a+4>>2],xl);q[Al>>2]=q[Al>>2]+1;vl=q[wl+4>>2];f:{if(!vl){bl=q[wl+8>>2];if((wl|0)==q[bl>>2]){break f}wl=wl+8|0;while(1){vl=q[wl>>2];wl=vl+8|0;bl=q[vl+8>>2];if((vl|0)!=q[bl>>2]){continue}break}break f}while(1){bl=vl;vl=q[bl>>2];if(vl){continue}break}}if(il){continue}break}}if((bl|0)==(gl|0)){break a}xl=a+4|0;yl=a+8|0;while(1){vl=bl;Lh(zl,a,bl+16|0);wl=q[zl>>2];g:{bl=q[xl>>2];if(!bl){bl=xl;il=bl;break g}Al=q[wl+16>>2];while(1){h:{if((Al|0)<q[bl+16>>2]){il=q[bl>>2];if(il){break h}il=bl;break g}il=q[bl+4>>2];if(il){break h}il=bl+4|0;break g}bl=il;continue}}q[wl+8>>2]=bl;q[wl>>2]=0;q[wl+4>>2]=0;q[il>>2]=wl;bl=q[q[a>>2]>>2];if(bl){q[a>>2]=bl;wl=q[il>>2]}th(q[a+4>>2],wl);q[yl>>2]=q[yl>>2]+1;il=q[vl+4>>2];i:{if(!il){bl=q[vl+8>>2];if((vl|0)==q[bl>>2]){break i}vl=vl+8|0;while(1){il=q[vl>>2];vl=il+8|0;bl=q[il+8>>2];if((il|0)!=q[bl>>2]){continue}break}break i}while(1){bl=il;il=q[bl>>2];if(il){continue}break}}if((bl|0)!=(gl|0)){continue}break}}T=zl+16|0}function Hh(a,bl,gl){var Cl=0,Dl=0,El=0,Fl=0;El=T-16|0;T=El;Cl=zo(16);q[El>>2]=Cl;q[El+4>>2]=14;q[El+8>>2]=-2147483632;o[Cl+14|0]=0;Fl=r[10758]|r[10759]<<8|(r[10760]<<16|r[10761]<<24);Dl=r[10754]|r[10755]<<8|(r[10756]<<16|r[10757]<<24);o[Cl+6|0]=Dl;o[Cl+7|0]=Dl>>>8;o[Cl+8|0]=Dl>>>16;o[Cl+9|0]=Dl>>>24;o[Cl+10|0]=Fl;o[Cl+11|0]=Fl>>>8;o[Cl+12|0]=Fl>>>16;o[Cl+13|0]=Fl>>>24;Fl=r[10752]|r[10753]<<8|(r[10754]<<16|r[10755]<<24);Dl=r[10748]|r[10749]<<8|(r[10750]<<16|r[10751]<<24);o[Cl|0]=Dl;o[Cl+1|0]=Dl>>>8;o[Cl+2|0]=Dl>>>16;o[Cl+3|0]=Dl>>>24;o[Cl+4|0]=Fl;o[Cl+5|0]=Fl>>>8;o[Cl+6|0]=Fl>>>16;o[Cl+7|0]=Fl>>>24;Il(a,El,bl);if(o[El+11|0]<=-1){pp(q[El>>2])}bl=zo(16);q[El>>2]=bl;q[El+4>>2]=14;q[El+8>>2]=-2147483632;o[bl+14|0]=0;Dl=r[10773]|r[10774]<<8|(r[10775]<<16|r[10776]<<24);Cl=r[10769]|r[10770]<<8|(r[10771]<<16|r[10772]<<24);o[bl+6|0]=Cl;o[bl+7|0]=Cl>>>8;o[bl+8|0]=Cl>>>16;o[bl+9|0]=Cl>>>24;o[bl+10|0]=Dl;o[bl+11|0]=Dl>>>8;o[bl+12|0]=Dl>>>16;o[bl+13|0]=Dl>>>24;Dl=r[10767]|r[10768]<<8|(r[10769]<<16|r[10770]<<24);Cl=r[10763]|r[10764]<<8|(r[10765]<<16|r[10766]<<24);o[bl|0]=Cl;o[bl+1|0]=Cl>>>8;o[bl+2|0]=Cl>>>16;o[bl+3|0]=Cl>>>24;o[bl+4|0]=Dl;o[bl+5|0]=Dl>>>8;o[bl+6|0]=Dl>>>16;o[bl+7|0]=Dl>>>24;Il(a,El,gl);if(o[El+11|0]<=-1){pp(q[El>>2])}T=El+16|0}function Ih(a,bl,gl){var Gl=0,Hl=0,Jl=0;Gl=T-16|0;T=Gl;q[Gl+12>>2]=bl;bl=zo(32);q[Gl>>2]=bl;q[Gl+4>>2]=17;q[Gl+8>>2]=-2147483616;o[bl+17|0]=0;o[bl+16|0]=r[10600];Hl=r[10596]|r[10597]<<8|(r[10598]<<16|r[10599]<<24);Jl=r[10592]|r[10593]<<8|(r[10594]<<16|r[10595]<<24);o[bl+8|0]=Jl;o[bl+9|0]=Jl>>>8;o[bl+10|0]=Jl>>>16;o[bl+11|0]=Jl>>>24;o[bl+12|0]=Hl;o[bl+13|0]=Hl>>>8;o[bl+14|0]=Hl>>>16;o[bl+15|0]=Hl>>>24;Hl=r[10588]|r[10589]<<8|(r[10590]<<16|r[10591]<<24);Jl=r[10584]|r[10585]<<8|(r[10586]<<16|r[10587]<<24);o[bl|0]=Jl;o[bl+1|0]=Jl>>>8;o[bl+2|0]=Jl>>>16;o[bl+3|0]=Jl>>>24;o[bl+4|0]=Hl;o[bl+5|0]=Hl>>>8;o[bl+6|0]=Hl>>>16;o[bl+7|0]=Hl>>>24;Il(kh(a+4|0,Gl+12|0),Gl,gl);if(o[Gl+11|0]<=-1){pp(q[Gl>>2])}T=Gl+16|0}function Jh(a,bl,gl,Kl,Ll,Ml){var Nl=0,Ol=0,Pl=0;Nl=T-16|0;T=Nl;q[Nl+12>>2]=bl;bl=zo(32);q[Nl>>2]=bl;q[Nl+4>>2]=17;q[Nl+8>>2]=-2147483616;o[bl+17|0]=0;o[bl+16|0]=r[10600];Ol=r[10596]|r[10597]<<8|(r[10598]<<16|r[10599]<<24);Pl=r[10592]|r[10593]<<8|(r[10594]<<16|r[10595]<<24);o[bl+8|0]=Pl;o[bl+9|0]=Pl>>>8;o[bl+10|0]=Pl>>>16;o[bl+11|0]=Pl>>>24;o[bl+12|0]=Ol;o[bl+13|0]=Ol>>>8;o[bl+14|0]=Ol>>>16;o[bl+15|0]=Ol>>>24;Ol=r[10588]|r[10589]<<8|(r[10590]<<16|r[10591]<<24);Pl=r[10584]|r[10585]<<8|(r[10586]<<16|r[10587]<<24);o[bl|0]=Pl;o[bl+1|0]=Pl>>>8;o[bl+2|0]=Pl>>>16;o[bl+3|0]=Pl>>>24;o[bl+4|0]=Ol;o[bl+5|0]=Ol>>>8;o[bl+6|0]=Ol>>>16;o[bl+7|0]=Ol>>>24;Ol=a+4|0;Il(kh(Ol,Nl+12|0),Nl,gl);if(o[Nl+11|0]<=-1){pp(q[Nl>>2])}a=zo(32);q[Nl>>2]=a;q[Nl+4>>2]=19;q[Nl+8>>2]=-2147483616;o[a+19|0]=0;bl=r[10642]|r[10643]<<8|(r[10644]<<16|r[10645]<<24);o[a+15|0]=bl;o[a+16|0]=bl>>>8;o[a+17|0]=bl>>>16;o[a+18|0]=bl>>>24;bl=r[10639]|r[10640]<<8|(r[10641]<<16|r[10642]<<24);gl=r[10635]|r[10636]<<8|(r[10637]<<16|r[10638]<<24);o[a+8|0]=gl;o[a+9|0]=gl>>>8;o[a+10|0]=gl>>>16;o[a+11|0]=gl>>>24;o[a+12|0]=bl;o[a+13|0]=bl>>>8;o[a+14|0]=bl>>>16;o[a+15|0]=bl>>>24;bl=r[10631]|r[10632]<<8|(r[10633]<<16|r[10634]<<24);gl=r[10627]|r[10628]<<8|(r[10629]<<16|r[10630]<<24);o[a|0]=gl;o[a+1|0]=gl>>>8;o[a+2|0]=gl>>>16;o[a+3|0]=gl>>>24;o[a+4|0]=bl;o[a+5|0]=bl>>>8;o[a+6|0]=bl>>>16;o[a+7|0]=bl>>>24;qh(kh(Ol,Nl+12|0),Nl,Ll,Kl);if(o[Nl+11|0]<=-1){pp(q[Nl>>2])}a=zo(32);q[Nl>>2]=a;q[Nl+4>>2]=18;q[Nl+8>>2]=-2147483616;o[a+18|0]=0;bl=r[10663]|r[10664]<<8;o[a+16|0]=bl;o[a+17|0]=bl>>>8;bl=r[10659]|r[10660]<<8|(r[10661]<<16|r[10662]<<24);gl=r[10655]|r[10656]<<8|(r[10657]<<16|r[10658]<<24);o[a+8|0]=gl;o[a+9|0]=gl>>>8;o[a+10|0]=gl>>>16;o[a+11|0]=gl>>>24;o[a+12|0]=bl;o[a+13|0]=bl>>>8;o[a+14|0]=bl>>>16;o[a+15|0]=bl>>>24;bl=r[10651]|r[10652]<<8|(r[10653]<<16|r[10654]<<24);gl=r[10647]|r[10648]<<8|(r[10649]<<16|r[10650]<<24);o[a|0]=gl;o[a+1|0]=gl>>>8;o[a+2|0]=gl>>>16;o[a+3|0]=gl>>>24;o[a+4|0]=bl;o[a+5|0]=bl>>>8;o[a+6|0]=bl>>>16;o[a+7|0]=bl>>>24;Jl(kh(Ol,Nl+12|0),Nl,Ml);if(o[Nl+11|0]<=-1){pp(q[Nl>>2])}T=Nl+16|0}function Kh(a,bl){var gl=0,Kl=0,Ll=0,Ml=0;Ml=T-16|0;T=Ml;gl=zo(16);q[Ml>>2]=gl;q[Ml+4>>2]=15;q[Ml+8>>2]=-2147483632;o[gl+15|0]=0;Kl=r[10579]|r[10580]<<8|(r[10581]<<16|r[10582]<<24);Ll=r[10575]|r[10576]<<8|(r[10577]<<16|r[10578]<<24);o[gl+7|0]=Ll;o[gl+8|0]=Ll>>>8;o[gl+9|0]=Ll>>>16;o[gl+10|0]=Ll>>>24;o[gl+11|0]=Kl;o[gl+12|0]=Kl>>>8;o[gl+13|0]=Kl>>>16;o[gl+14|0]=Kl>>>24;Kl=r[10572]|r[10573]<<8|(r[10574]<<16|r[10575]<<24);Ll=r[10568]|r[10569]<<8|(r[10570]<<16|r[10571]<<24);o[gl|0]=Ll;o[gl+1|0]=Ll>>>8;o[gl+2|0]=Ll>>>16;o[gl+3|0]=Ll>>>24;o[gl+4|0]=Kl;o[gl+5|0]=Kl>>>8;o[gl+6|0]=Kl>>>16;o[gl+7|0]=Kl>>>24;Il(a+4|0,Ml,bl);if(o[Ml+11|0]<=-1){pp(q[Ml>>2])}T=Ml+16|0}function Lh(a,bl,Il){var Ql=0,Rl=0,Sl=0,Tl=0;Ql=zo(32);o[a+8|0]=0;q[a+4>>2]=bl+4;q[a>>2]=Ql;bl=q[Il>>2];Rl=Ql+24|0;q[Rl>>2]=0;q[Rl+4>>2]=0;q[Ql+16>>2]=bl;q[Ql+20>>2]=Rl;bl=q[Il+4>>2];Sl=Il+8|0;if((bl|0)!=(Sl|0)){Tl=Ql+20|0;while(1){Il=bl;bl=bl+16|0;vh(Tl,Rl,bl,bl);Ql=q[Il+4>>2];a:{if(!Ql){bl=q[Il+8>>2];if((Il|0)==q[bl>>2]){break a}Il=Il+8|0;while(1){Ql=q[Il>>2];Il=Ql+8|0;bl=q[Ql+8>>2];if((Ql|0)!=q[bl>>2]){continue}break}break a}while(1){bl=Ql;Ql=q[Ql>>2];if(Ql){continue}break}}if((bl|0)!=(Sl|0)){continue}break}}o[a+8|0]=1}function Mh(a,bl,Il,Ul){var Vl=0,Wl=0,Xl=0,Yl=0,Zl=0,_l=0,$l=0,am=0,bm=0;Wl=T-16|0;T=Wl;q[Wl+8>>2]=0;q[Wl>>2]=0;q[Wl+4>>2]=0;a:{b:{_l=Il+1|0;if(_l>>>0>=Il>>>0){if(_l>>>0>=1073741824){break b}Xl=_l<<2;$l=zo(Xl);q[Wl>>2]=$l;q[Wl+4>>2]=$l;q[Wl+8>>2]=Xl+$l;Xl=wp($l,0,(Il<<2)+4|0);Yl=Xl;while(1){Yl=Yl+4|0;_l=_l+ -1|0;if(_l){continue}break}q[Wl+4>>2]=Yl;Yl=Xl}if((bl|0)>0){while(1){Xl=(q[(Zl<<2)+a>>2]<<2)+Yl|0;q[Xl>>2]=q[Xl>>2]+1;Zl=Zl+1|0;if((Zl|0)!=(bl|0)){continue}break}}Zl=0;if((Il|0)<0){bl=0;break a}am=+(bl|0);bl=0;while(1){a=q[(Zl<<2)+Yl>>2];if((a|0)>=1){bm=Vl;Vl=+(a|0);Vl=bm+sp(Vl/am)*Vl;bl=bl+1|0}a=(Il|0)==(Zl|0);Zl=Zl+1|0;if(!a){continue}break}break a}To();F()}if(Ul){q[Ul>>2]=bl}Vl=-Vl;c:{if(y(Vl)<0x8000000000000000){bl=~~Vl>>>0;a=y(Vl)>=1?Vl>0?~~A(C(Vl/4294967296),4294967295)>>>0:~~D((Vl- +(~~Vl>>>0>>>0))/4294967296)>>>0:0;break c}bl=0;a=-2147483648}if(Yl){q[Wl+4>>2]=Yl;pp($l)}T=Wl+16|0;V=a;return bl}function Nh(a,q){var bl=0,Il=0;if(!(!a|!q|(a|0)==(q|0))){bl=+(q>>>0)/+(a>>>0);Il=bl*sp(bl);bl=1-bl;bl=-(Il+bl*sp(bl))}return bl}function Oh(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;q[a+32>>2]=0}function Ph(a,q,Ul,cm){Qh(a,q,Ul,cm,0)}function Qh(a,Ul,cm,dm,em){var fm=0,gm=0,hm=0,im=0,jm=0,km=0,lm=0,mm=0,nm=0,om=0,pm=0;lm=T-16|0;T=lm;hm=q[Ul+28>>2];fm=a+8|0;gm=q[Ul+24>>2];q[fm>>2]=gm;q[fm+4>>2]=hm;im=q[Ul+20>>2];q[a>>2]=q[Ul+16>>2];q[a+4>>2]=im;im=q[Ul+36>>2];q[a+16>>2]=q[Ul+32>>2];q[a+20>>2]=im;q[fm>>2]=dm+gm;if((dm|0)>=1){im=q[Ul>>2];mm=Ul+4|0;fm=0;while(1){gm=q[mm>>2]-im>>2;hm=q[(fm<<2)+cm>>2];a:{if(gm>>>0>hm>>>0){break a}q[lm+12>>2]=0;jm=hm+1|0;if(jm>>>0>gm>>>0){qd(Ul,jm-gm|0,lm+12|0);im=q[Ul>>2];break a}if(jm>>>0>=gm>>>0){break a}q[mm>>2]=(jm<<2)+im}jm=(hm<<2)+im|0;gm=q[jm>>2];b:{if((gm|0)>=2){km=+(gm|0);km=sp(km)*km;break b}km=0;if(gm){break b}q[a+16>>2]=q[a+16>>2]+1;if(hm>>>0<=t[a+12>>2]){break b}q[a+12>>2]=hm}hm=gm+1|0;q[jm>>2]=hm;nm=+(hm|0);om=a,pm=sp(nm)*nm-km+v[a>>3],v[om>>3]=pm;fm=fm+1|0;if((fm|0)!=(dm|0)){continue}break}}c:{if(!em){if((dm|0)<1){break c}a=q[Ul>>2];fm=0;while(1){Ul=a+(q[(fm<<2)+cm>>2]<<2)|0;q[Ul>>2]=q[Ul>>2]+ -1;fm=fm+1|0;if((fm|0)!=(dm|0)){continue}break}break c}dm=q[a+4>>2];Ul=Ul+16|0;q[Ul>>2]=q[a>>2];q[Ul+4>>2]=dm;q[Ul+16>>2]=q[a+16>>2];cm=q[a+12>>2];q[Ul+8>>2]=q[a+8>>2];q[Ul+12>>2]=cm}T=lm+16|0}function Rh(a,q,Ul,cm){Qh(a,q,Ul,cm,1)}function Sh(a){var Ul=0,cm=0;cm=q[a+8>>2];if((cm|0)>=2){Ul=+(cm|0);Ul=D(sp(Ul)*Ul-v[a>>3]);if(y(Ul)<0x8000000000000000){V=y(Ul)>=1?Ul>0?~~A(C(Ul/4294967296),4294967295)>>>0:~~D((Ul- +(~~Ul>>>0>>>0))/4294967296)>>>0:0;return~~Ul>>>0}a=-2147483648}else{a=0}V=a;return 0}function Th(a){var dm=0,em=0,qm=0;dm=q[a+12>>2];a=q[a+16>>2];em=(((dm-a|0)+1|0)/64|0)+a<<3;dm=em;a=a<<3;qm=a;dm=dm+a|0;a=(em>>31)+(a>>31)|0;a=dm>>>0<qm>>>0?a+1|0:a;V=a;return dm}function Uh(a,rm){var sm=0,tm=0,um=0,vm=0,wm=0,xm=0,ym=0;a:{b:{um=q[a+8>>2];sm=a+4|0;tm=q[sm>>2];c:{if(um-tm>>3>>>0>=rm>>>0){while(1){q[tm>>2]=0;q[tm+4>>2]=0;tm=q[sm>>2]+8|0;q[sm>>2]=tm;rm=rm+ -1|0;if(rm){continue}break c}}vm=q[a>>2];wm=tm-vm|0;sm=wm>>3;tm=sm+rm|0;if(tm>>>0>=536870912){break b}ym=sm<<3;um=um-vm|0;sm=um>>2;um=um>>3>>>0<268435455?sm>>>0<tm>>>0?tm:sm:536870911;sm=0;d:{if(!um){break d}if(um>>>0>=536870912){break a}xm=zo(um<<3);sm=xm}tm=ym+sm|0;wp(tm,0,rm<<3);um=sm+(um<<3)|0;while(1){tm=tm+8|0;rm=rm+ -1|0;if(rm){continue}break}if((wm|0)>=1){vp(xm,vm,wm)}q[a>>2]=sm;q[a+8>>2]=um;q[a+4>>2]=tm;if(!vm){break c}pp(vm)}return}To();F()}Qb(10778);F()}function Vh(a,rm){var zm=0,Am=0,Bm=0,Cm=0;Cm=T-16|0;T=Cm;if(rm>>>0<=10){zm=zo(48);q[Cm>>2]=zm;q[Cm+4>>2]=33;q[Cm+8>>2]=-2147483600;o[zm+33|0]=0;o[zm+32|0]=r[10901];Am=r[10897]|r[10898]<<8|(r[10899]<<16|r[10900]<<24);Bm=r[10893]|r[10894]<<8|(r[10895]<<16|r[10896]<<24);o[zm+24|0]=Bm;o[zm+25|0]=Bm>>>8;o[zm+26|0]=Bm>>>16;o[zm+27|0]=Bm>>>24;o[zm+28|0]=Am;o[zm+29|0]=Am>>>8;o[zm+30|0]=Am>>>16;o[zm+31|0]=Am>>>24;Am=r[10889]|r[10890]<<8|(r[10891]<<16|r[10892]<<24);Bm=r[10885]|r[10886]<<8|(r[10887]<<16|r[10888]<<24);o[zm+16|0]=Bm;o[zm+17|0]=Bm>>>8;o[zm+18|0]=Bm>>>16;o[zm+19|0]=Bm>>>24;o[zm+20|0]=Am;o[zm+21|0]=Am>>>8;o[zm+22|0]=Am>>>16;o[zm+23|0]=Am>>>24;Am=r[10881]|r[10882]<<8|(r[10883]<<16|r[10884]<<24);Bm=r[10877]|r[10878]<<8|(r[10879]<<16|r[10880]<<24);o[zm+8|0]=Bm;o[zm+9|0]=Bm>>>8;o[zm+10|0]=Bm>>>16;o[zm+11|0]=Bm>>>24;o[zm+12|0]=Am;o[zm+13|0]=Am>>>8;o[zm+14|0]=Am>>>16;o[zm+15|0]=Am>>>24;Am=r[10873]|r[10874]<<8|(r[10875]<<16|r[10876]<<24);Bm=r[10869]|r[10870]<<8|(r[10871]<<16|r[10872]<<24);o[zm|0]=Bm;o[zm+1|0]=Bm>>>8;o[zm+2|0]=Bm>>>16;o[zm+3|0]=Bm>>>24;o[zm+4|0]=Am;o[zm+5|0]=Am>>>8;o[zm+6|0]=Am>>>16;o[zm+7|0]=Am>>>24;Il(a,Cm,rm);if(o[Cm+11|0]<=-1){pp(q[Cm>>2])}}T=Cm+16|0}function Wh(a,rm,Dm,Em,Fm){var Gm=0,Hm=0,Im=0,Jm=0,Km=0,Lm=0,Mm=0,Nm=0,Om=0,Pm=0,Qm=0,Rm=0,Sm=0,Tm=0;Hm=T-48|0;T=Hm;a:{b:{c:{if((rm|0)<0){break c}if(!rm){Gm=1;break c}q[Hm+40>>2]=0;q[Hm+32>>2]=0;q[Hm+36>>2]=0;if(rm>>>0>=1073741824){break a}Qm=(Dm|0)>1?Dm:1;Gm=rm<<2;Im=zo(Gm);q[Hm+36>>2]=Im;q[Hm+32>>2]=Im;q[Hm+40>>2]=Gm+Im;while(1){Im=1;Gm=q[(Lm<<2)+a>>2];if((Dm|0)>1){while(1){Km=q[(Im+Lm<<2)+a>>2];Gm=Gm>>>0<Km>>>0?Km:Gm;Im=Im+1|0;if((Qm|0)!=(Im|0)){continue}break}}Km=Gm?(z(Gm)^31)+1|0:1;q[Hm>>2]=Km;Im=Gm>>>0>Pm>>>0;Om=q[Hm+36>>2];d:{if(Om>>>0<t[Hm+40>>2]){q[Om>>2]=Km;q[Hm+36>>2]=Om+4;break d}Xh(Hm+32|0,Hm)}Pm=Im?Gm:Pm;Lm=Lm+Qm|0;if((Lm|0)<(rm|0)){continue}break}Gm=0;q[Hm+24>>2]=0;q[Hm+16>>2]=0;q[Hm+20>>2]=0;Im=0;Lm=0;Km=q[Hm+32>>2];Om=q[Hm+36>>2]-Km|0;e:{if(!Om){break e}Dm=Om>>2;if(Dm>>>0>=1073741824){break b}Im=zo(Om);q[Hm+16>>2]=Im;q[Hm+20>>2]=Im;q[Hm+24>>2]=(Dm<<2)+Im;if((Om|0)<1){Lm=Im;break e}Lm=vp(Im,Km,Om)+Om|0;q[Hm+20>>2]=Lm}Dm=Lm-Im|0;Km=Dm>>2;if(Dm){while(1){Lm=q[(Gm<<2)+Im>>2];Dm=Lm+Rm|0;if(Dm>>>0<Lm>>>0){Jm=Jm+1|0}Rm=Dm;Gm=Gm+1|0;if(Gm>>>0<Km>>>0){continue}break}}Sm=Mh(Im,Km,32,Hm);Im=V;Gm=q[Hm>>2];Dm=q[Hm+16>>2];if(Dm){q[Hm+20>>2]=Dm;pp(Dm)}Om=Mh(a,rm,Pm,Hm);Km=V;Tm=q[Hm>>2];Lm=(Pm-Tm|0)/64|0;f:{g:{if(!Em){break g}q[Hm+8>>2]=0;q[Hm>>2]=0;q[Hm+4>>2]=0;Dm=zo(32);q[Hm>>2]=Dm;q[Hm+4>>2]=22;q[Hm+8>>2]=-2147483616;o[Dm+22|0]=0;Mm=r[10864]|r[10865]<<8|(r[10866]<<16|r[10867]<<24);Nm=r[10860]|r[10861]<<8|(r[10862]<<16|r[10863]<<24);o[Dm+14|0]=Nm;o[Dm+15|0]=Nm>>>8;o[Dm+16|0]=Nm>>>16;o[Dm+17|0]=Nm>>>24;o[Dm+18|0]=Mm;o[Dm+19|0]=Mm>>>8;o[Dm+20|0]=Mm>>>16;o[Dm+21|0]=Mm>>>24;Mm=r[10858]|r[10859]<<8|(r[10860]<<16|r[10861]<<24);Nm=r[10854]|r[10855]<<8|(r[10856]<<16|r[10857]<<24);o[Dm+8|0]=Nm;o[Dm+9|0]=Nm>>>8;o[Dm+10|0]=Nm>>>16;o[Dm+11|0]=Nm>>>24;o[Dm+12|0]=Mm;o[Dm+13|0]=Mm>>>8;o[Dm+14|0]=Mm>>>16;o[Dm+15|0]=Mm>>>24;Mm=r[10850]|r[10851]<<8|(r[10852]<<16|r[10853]<<24);Nm=r[10846]|r[10847]<<8|(r[10848]<<16|r[10849]<<24);o[Dm|0]=Nm;o[Dm+1|0]=Nm>>>8;o[Dm+2|0]=Nm>>>16;o[Dm+3|0]=Nm>>>24;o[Dm+4|0]=Mm;o[Dm+5|0]=Mm>>>8;o[Dm+6|0]=Mm>>>16;o[Dm+7|0]=Mm>>>24;Dm=Cd(Em,Hm);if(o[Hm+11|0]<=-1){pp(q[Hm>>2])}if(!Dm){break g}q[Hm+8>>2]=0;q[Hm>>2]=0;q[Hm+4>>2]=0;Dm=zo(32);q[Hm>>2]=Dm;q[Hm+4>>2]=22;q[Hm+8>>2]=-2147483616;o[Dm+22|0]=0;Gm=r[10864]|r[10865]<<8|(r[10866]<<16|r[10867]<<24);Jm=r[10860]|r[10861]<<8|(r[10862]<<16|r[10863]<<24);o[Dm+14|0]=Jm;o[Dm+15|0]=Jm>>>8;o[Dm+16|0]=Jm>>>16;o[Dm+17|0]=Jm>>>24;o[Dm+18|0]=Gm;o[Dm+19|0]=Gm>>>8;o[Dm+20|0]=Gm>>>16;o[Dm+21|0]=Gm>>>24;Gm=r[10858]|r[10859]<<8|(r[10860]<<16|r[10861]<<24);Jm=r[10854]|r[10855]<<8|(r[10856]<<16|r[10857]<<24);o[Dm+8|0]=Jm;o[Dm+9|0]=Jm>>>8;o[Dm+10|0]=Jm>>>16;o[Dm+11|0]=Jm>>>24;o[Dm+12|0]=Gm;o[Dm+13|0]=Gm>>>8;o[Dm+14|0]=Gm>>>16;o[Dm+15|0]=Gm>>>24;Gm=r[10850]|r[10851]<<8|(r[10852]<<16|r[10853]<<24);Jm=r[10846]|r[10847]<<8|(r[10848]<<16|r[10849]<<24);o[Dm|0]=Jm;o[Dm+1|0]=Jm>>>8;o[Dm+2|0]=Jm>>>16;o[Dm+3|0]=Jm>>>24;o[Dm+4|0]=Gm;o[Dm+5|0]=Gm>>>8;o[Dm+6|0]=Gm>>>16;o[Dm+7|0]=Gm>>>24;Gm=Kl(Em,Hm);if(o[Hm+11|0]>-1){break f}pp(q[Hm>>2]);break f}if((z(Pm>>>0>1?Pm:1)^30)>>>0<18){Jm=Up(Rm,Jm,Qm,0);Sm=Jm+Sm|0;Dm=V+Im|0;Dm=Sm>>>0<Jm>>>0?Dm+1|0:Dm;Gm=Gm<<3;Jm=Gm>>31;Im=Gm;Gm=Jm<<1|Gm>>>31;Jm=Im<<1;Im=Jm+Sm|0;Dm=Dm+Gm|0;Dm=Im>>>0<Jm>>>0?Dm+1|0:Dm;Gm=Lm+Tm<<3;Lm=Gm>>31;Rm=Im;Jm=Gm;Gm=Tm<<3;Im=Gm+Om|0;Km=(Gm>>31)+Km|0;Km=Im>>>0<Gm>>>0?Km+1|0:Km;Gm=Im;Im=Jm+Gm|0;Jm=Km+Lm|0;Jm=Im>>>0<Gm>>>0?Jm+1|0:Jm;Gm=(Dm|0)>(Jm|0)?1:(Dm|0)>=(Jm|0)?Rm>>>0<Im>>>0?0:1:0}else{Gm=0}}o[Hm|0]=Gm;Dm=q[Fm+20>>2];if((Dm|0)<0?1:(Dm|0)<=0?t[Fm+16>>2]>0?0:1:0){Vb(Fm,q[Fm+4>>2],Hm,Hm+1|0)}Dm=0;h:{if(Gm>>>0>1){break h}if(Gm-1){Dm=Yh(a,rm,Qm,Hm+32|0,Fm);break h}Dm=Zh(a,rm,Pm,Tm,Em,Fm)}Gm=Dm;a=q[Hm+32>>2];if(!a){break c}q[Hm+36>>2]=a;pp(a)}T=Hm+48|0;return Gm}To();F()}Qb(10903);F()}function Xh(a,rm){var Dm=0,Em=0,Fm=0,Um=0,Vm=0,Wm=0;a:{Fm=q[a>>2];Vm=q[a+4>>2]-Fm|0;Dm=Vm>>2;Em=Dm+1|0;if(Em>>>0<1073741824){Wm=Dm<<2;Dm=q[a+8>>2]-Fm|0;Um=Dm>>1;Em=Dm>>2>>>0<536870911?Um>>>0<Em>>>0?Em:Um:1073741823;Dm=0;b:{if(!Em){break b}if(Em>>>0>=1073741824){break a}Dm=zo(Em<<2)}Um=Wm+Dm|0;q[Um>>2]=q[rm>>2];rm=Dm+(Em<<2)|0;Em=Um+4|0;if((Vm|0)>=1){vp(Dm,Fm,Vm)}q[a>>2]=Dm;q[a+8>>2]=rm;q[a+4>>2]=Em;if(Fm){pp(Fm)}return}To();F()}Qb(10903);F()}function Yh(a,rm,Xm,Ym,Zm){var _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;$m=T-336|0;T=$m;wp($m+80|0,0,256);an=q[Ym+4>>2];dn=q[Ym>>2];if((an|0)!=(dn|0)){en=an-dn>>2;while(1){an=($m+80|0)+(q[dn+(cn<<2)>>2]<<3)|0;_m=an;hn=_m;bn=q[_m+4>>2];an=q[_m>>2]+1|0;if(an>>>0<1){bn=bn+1|0}q[hn>>2]=an;q[_m+4>>2]=bn;cn=cn+1|0;if(cn>>>0<en>>>0){continue}break}}fn=Dl($m+48|0);q[$m+8>>2]=0;q[$m+12>>2]=0;_m=$m+16|0;q[_m>>2]=0;q[_m+4>>2]=0;dn=$m+24|0;an=dn;q[an>>2]=0;q[an+4>>2]=0;q[$m+32>>2]=0;q[$m>>2]=0;q[$m+4>>2]=0;q[$m+40>>2]=0;q[$m+44>>2]=0;_h($m,$m+80|0,32,Zm);bn=q[_m>>2];an=q[_m+4>>2];_m=q[Zm+4>>2]-q[Zm>>2]|0;q[$m+40>>2]=_m;q[$m+44>>2]=0;hn=Zm;en=bn;bn=an<<1|bn>>>31;an=(en<<1)+39|0;if(an>>>0<39){bn=bn+1|0}en=an;an=bn>>>3;bn=_m+((bn&7)<<29|en>>>3)|0;if(bn>>>0<_m>>>0){an=an+1|0}_m=bn+8|0;_m>>>0<8;El(hn,_m);an=q[Zm>>2];q[$m+28>>2]=0;q[$m+32>>2]=16384;q[dn>>2]=an+q[$m+40>>2];_m=rm;Fl(fn,_m<<5,_m>>31<<5|_m>>>27,0);rm=_m-Xm|0;if((rm|0)>=0){nn=(Xm|0)<1;an=rm;while(1){cn=q[$m+32>>2];gn=q[Ym>>2];en=q[$m>>2]+(q[gn+((an|0)/(Xm|0)<<2)>>2]<<3)|0;dn=q[en>>2];bn=dn<<10;if(cn>>>0>=bn>>>0){while(1){_m=q[$m+28>>2];q[$m+28>>2]=_m+1;o[_m+q[$m+24>>2]|0]=cn;cn=q[$m+32>>2]>>>8;q[$m+32>>2]=cn;if(cn>>>0>=bn>>>0){continue}break}gn=q[Ym>>2]}_m=(cn>>>0)/(dn>>>0)|0;q[$m+32>>2]=q[en+4>>2]+((_m<<12)+(cn-w(_m,dn)|0)|0);cn=rm-an|0;_m=(cn|0)/(Xm|0)|0;if(!nn){mn=q[(_m<<2)+gn>>2];kn=0;while(1){_m=q[fn+20>>2];if(!((mn|0)<1|((_m|0)<0?1:(_m|0)<=0?t[fn+16>>2]>=1?0:1:0))){dn=q[(cn+kn<<2)+a>>2];jn=q[fn+12>>2];gn=q[jn+4>>2];ln=0;while(1){en=gn>>>3;bn=en+q[jn>>2]|0;_m=r[bn|0];hn=bn;bn=gn&7;on=hn,pn=Yp(-2,bn)&_m,o[on|0]=pn;_m=en+q[jn>>2]|0;o[_m|0]=r[_m|0]|(dn>>>ln&1)<<bn;gn=q[jn+4>>2]+1|0;q[jn+4>>2]=gn;ln=ln+1|0;if((mn|0)!=(ln|0)){continue}break}}kn=kn+1|0;if((kn|0)!=(Xm|0)){continue}break}}an=an-Xm|0;if((an|0)>-1){continue}break}}$h($m,Zm);Gl(fn);a=q[Zm+20>>2];if((a|0)<0?1:(a|0)<=0?t[Zm+16>>2]>0?0:1:0){Vb(Zm,q[Zm+4>>2],q[fn>>2],q[fn+4>>2])}a=q[$m>>2];if(a){q[$m+4>>2]=a;pp(a)}a=q[fn+12>>2];q[fn+12>>2]=0;if(a){pp(a)}a=q[fn>>2];if(a){q[fn+4>>2]=a;pp(a)}T=$m+336|0;return 1}function Zh(a,rm,Xm,Ym,Zm,qn){var rn=0,sn=0,tn=0,un=0;un=T-16|0;T=un;a:{b:{if((Ym|0)<=0){Ym=1;q[un+12>>2]=1;break b}sn=z(Ym)^31;Ym=sn+1|0;q[un+12>>2]=Ym;if(sn>>>0>17){break a}}c:{if(!Zm){break c}rn=zo(48);q[un>>2]=rn;q[un+4>>2]=33;q[un+8>>2]=-2147483600;o[rn+33|0]=0;o[rn+32|0]=r[10901];sn=r[10897]|r[10898]<<8|(r[10899]<<16|r[10900]<<24);tn=r[10893]|r[10894]<<8|(r[10895]<<16|r[10896]<<24);o[rn+24|0]=tn;o[rn+25|0]=tn>>>8;o[rn+26|0]=tn>>>16;o[rn+27|0]=tn>>>24;o[rn+28|0]=sn;o[rn+29|0]=sn>>>8;o[rn+30|0]=sn>>>16;o[rn+31|0]=sn>>>24;sn=r[10889]|r[10890]<<8|(r[10891]<<16|r[10892]<<24);tn=r[10885]|r[10886]<<8|(r[10887]<<16|r[10888]<<24);o[rn+16|0]=tn;o[rn+17|0]=tn>>>8;o[rn+18|0]=tn>>>16;o[rn+19|0]=tn>>>24;o[rn+20|0]=sn;o[rn+21|0]=sn>>>8;o[rn+22|0]=sn>>>16;o[rn+23|0]=sn>>>24;sn=r[10881]|r[10882]<<8|(r[10883]<<16|r[10884]<<24);tn=r[10877]|r[10878]<<8|(r[10879]<<16|r[10880]<<24);o[rn+8|0]=tn;o[rn+9|0]=tn>>>8;o[rn+10|0]=tn>>>16;o[rn+11|0]=tn>>>24;o[rn+12|0]=sn;o[rn+13|0]=sn>>>8;o[rn+14|0]=sn>>>16;o[rn+15|0]=sn>>>24;sn=r[10873]|r[10874]<<8|(r[10875]<<16|r[10876]<<24);tn=r[10869]|r[10870]<<8|(r[10871]<<16|r[10872]<<24);o[rn|0]=tn;o[rn+1|0]=tn>>>8;o[rn+2|0]=tn>>>16;o[rn+3|0]=tn>>>24;o[rn+4|0]=sn;o[rn+5|0]=sn>>>8;o[rn+6|0]=sn>>>16;o[rn+7|0]=sn>>>24;rn=Cd(Zm,un);if(o[un+11|0]<=-1){pp(q[un>>2])}if(!rn){break c}rn=zo(48);q[un>>2]=rn;q[un+4>>2]=33;q[un+8>>2]=-2147483600;o[rn+33|0]=0;o[rn+32|0]=r[10901];sn=r[10897]|r[10898]<<8|(r[10899]<<16|r[10900]<<24);tn=r[10893]|r[10894]<<8|(r[10895]<<16|r[10896]<<24);o[rn+24|0]=tn;o[rn+25|0]=tn>>>8;o[rn+26|0]=tn>>>16;o[rn+27|0]=tn>>>24;o[rn+28|0]=sn;o[rn+29|0]=sn>>>8;o[rn+30|0]=sn>>>16;o[rn+31|0]=sn>>>24;sn=r[10889]|r[10890]<<8|(r[10891]<<16|r[10892]<<24);tn=r[10885]|r[10886]<<8|(r[10887]<<16|r[10888]<<24);o[rn+16|0]=tn;o[rn+17|0]=tn>>>8;o[rn+18|0]=tn>>>16;o[rn+19|0]=tn>>>24;o[rn+20|0]=sn;o[rn+21|0]=sn>>>8;o[rn+22|0]=sn>>>16;o[rn+23|0]=sn>>>24;sn=r[10881]|r[10882]<<8|(r[10883]<<16|r[10884]<<24);tn=r[10877]|r[10878]<<8|(r[10879]<<16|r[10880]<<24);o[rn+8|0]=tn;o[rn+9|0]=tn>>>8;o[rn+10|0]=tn>>>16;o[rn+11|0]=tn>>>24;o[rn+12|0]=sn;o[rn+13|0]=sn>>>8;o[rn+14|0]=sn>>>16;o[rn+15|0]=sn>>>24;sn=r[10873]|r[10874]<<8|(r[10875]<<16|r[10876]<<24);tn=r[10869]|r[10870]<<8|(r[10871]<<16|r[10872]<<24);o[rn|0]=tn;o[rn+1|0]=tn>>>8;o[rn+2|0]=tn>>>16;o[rn+3|0]=tn>>>24;o[rn+4|0]=sn;o[rn+5|0]=sn>>>8;o[rn+6|0]=sn>>>16;o[rn+7|0]=sn>>>24;sn=Kl(Zm,un);if(o[un+11|0]<=-1){pp(q[un>>2])}Zm=un;rn=Ym+ -2|0;d:{if((sn|0)<=3){break d}rn=Ym+ -1|0;if((sn|0)<=5){break d}rn=Ym+2|0;if((sn|0)>=10){break d}if((sn|0)<8){break c}rn=Ym+1|0}Ym=rn;q[Zm+12>>2]=Ym}Ym=(Ym|0)>1?Ym:1;Ym=(Ym|0)<18?Ym:18;q[un+12>>2]=Ym;o[un|0]=Ym;Zm=q[qn+20>>2];if((Zm|0)<0?1:(Zm|0)<=0?t[qn+16>>2]>0?0:1:0){Vb(qn,q[qn+4>>2],un,un+1|0)}if(Ym>>>0>18){rn=0;break a}e:{switch(Ym-2|0){default:rn=ai(a,rm,Xm,qn);break a;case 0:rn=bi(a,rm,Xm,qn);break a;case 1:rn=ci(a,rm,Xm,qn);break a;case 2:rn=di(a,rm,Xm,qn);break a;case 3:rn=ei(a,rm,Xm,qn);break a;case 4:rn=fi(a,rm,Xm,qn);break a;case 5:rn=gi(a,rm,Xm,qn);break a;case 6:rn=hi(a,rm,Xm,qn);break a;case 7:rn=ii(a,rm,Xm,qn);break a;case 8:rn=ji(a,rm,Xm,qn);break a;case 9:rn=ki(a,rm,Xm,qn);break a;case 10:rn=li(a,rm,Xm,qn);break a;case 11:rn=mi(a,rm,Xm,qn);break a;case 12:rn=ni(a,rm,Xm,qn);break a;case 13:rn=oi(a,rm,Xm,qn);break a;case 14:rn=pi(a,rm,Xm,qn);break a;case 15:rn=qi(a,rm,Xm,qn);break a;case 16:break e}}rn=ri(a,rm,Xm,qn)}T=un+16|0;return rn}function _h(a,rm,Xm,Ym){var Zm=0,qn=0,vn=0,wn=0,xn=0,yn=0,zn=0,An=0,Bn=0,Cn=0,Dn=0,En=0,Fn=0,Gn=0,Hn=0,In=0;zn=T-32|0;T=zn;if((Xm|0)>0){while(1){En=wn;wn=(Zm<<3)+rm|0;yn=q[wn+4>>2];vn=q[wn>>2];wn=!(yn|vn)?En:Zm;qn=qn+yn|0;yn=vn+An|0;if(yn>>>0<vn>>>0){qn=qn+1|0}An=yn;Zm=Zm+1|0;if((Zm|0)!=(Xm|0)){continue}break}}yn=wn+1|0;q[a+12>>2]=yn;vn=q[a>>2];Xm=q[a+4>>2]-vn>>3;a:{if(yn>>>0>Xm>>>0){Uh(a,yn-Xm|0);break a}if(yn>>>0>=Xm>>>0){break a}q[a+4>>2]=vn+(yn<<3)}b:{c:{d:{e:{if((wn|0)>=0){Dn=+(An>>>0)+4294967296*+(qn>>>0);qn=q[a>>2];Zm=0;while(1){vn=Zm<<3;An=vn+rm|0;Xm=q[An+4>>2];An=q[An>>2];Fn=(An|0)!=0|(Xm|0)!=0;vn=qn+vn|0;xn=(+(An>>>0)+4294967296*+(Xm>>>0))/Dn*4096+.5;f:{if(xn<4294967296&xn>=0){Xm=~~xn>>>0;break f}Xm=0}Xm=Fn?Xm?Xm:1:Xm;q[vn>>2]=Xm;Bn=Xm+Bn|0;Xm=(Zm|0)==(wn|0);Zm=Zm+1|0;if(!Xm){continue}break}if((Bn|0)==4096){break e}}q[zn+16>>2]=0;q[zn+8>>2]=0;q[zn+12>>2]=0;vn=0;if(yn){if(yn>>>0>=1073741824){break b}Xm=yn<<2;vn=zo(Xm);q[zn+8>>2]=vn;Cn=Xm+vn|0;q[zn+16>>2]=Cn;wp(vn,0,Xm);q[zn+12>>2]=Cn}if((wn|0)>-1){Zm=0;while(1){q[(Zm<<2)+vn>>2]=Zm;Xm=(Zm|0)==(wn|0);Zm=Zm+1|0;if(!Xm){continue}break}}q[zn+24>>2]=a;si(vn,Cn,zn+24|0);g:{if((Bn|0)<4096){Xm=q[a>>2]+(q[q[zn+12>>2]+ -4>>2]<<3)|0;q[Xm>>2]=(q[Xm>>2]-Bn|0)+4096;Zm=0;break g}Xm=Bn+ -4096|0;yn=q[zn+8>>2];An=(wn|0)<1;while(1){h:{if(An){break h}xn=4096/+(Bn|0);Cn=q[a>>2];vn=wn;while(1){Zm=Cn+(q[(vn<<2)+yn>>2]<<3)|0;qn=q[Zm>>2];if(qn>>>0<=1){if((vn|0)!=(wn|0)){break h}Zm=1;break g}Fn=qn+ -1|0;En=Zm;Hn=qn;In=Xm;Zm=qn;Dn=C(xn*+(qn>>>0));i:{if(y(Dn)<2147483648){Gn=~~Dn;break i}Gn=-2147483648}Zm=Zm-Gn|0;Zm=Zm?Zm:1;qn=(Zm|0)<(qn|0)?Zm:Fn;qn=(qn|0)>(Xm|0)?In:qn;q[En>>2]=Hn-qn;Xm=Xm-qn|0;Bn=Bn-qn|0;if((Bn|0)==4096){Bn=4096;break h}qn=(vn|0)>1;vn=vn+ -1|0;if(qn){continue}break}}Zm=0;if((Xm|0)>0){continue}break}}Xm=q[zn+8>>2];if(Xm){q[zn+12>>2]=Xm;pp(Xm)}if(Zm){break c}if((wn|0)>=0){break d}break c}if((wn|0)<0){break c}}qn=q[a>>2];Zm=0;Xm=0;while(1){vn=qn+(Zm<<3)|0;q[vn+4>>2]=Xm;Xm=q[vn>>2]+Xm|0;vn=(Zm|0)==(wn|0);Zm=Zm+1|0;if(!vn){continue}break}if((Xm|0)!=4096){break c}Zm=0;xn=0;if((wn|0)>=0){Xm=q[a>>2];while(1){qn=Zm<<3;vn=q[qn+Xm>>2];if(vn){qn=rm+qn|0;xn=xn+sp(+(vn>>>0)*.000244140625)*(+t[qn>>2]+4294967296*+t[qn+4>>2])}qn=(Zm|0)==(wn|0);Zm=Zm+1|0;if(!qn){continue}break}}rm=a;Xm=a;xn=D(-xn);j:{if(xn<0x10000000000000000&xn>=0){qn=y(xn)>=1?xn>0?~~A(C(xn/4294967296),4294967295)>>>0:~~D((xn- +(~~xn>>>0>>>0))/4294967296)>>>0:0;wn=~~xn>>>0;break j}qn=0;wn=0}q[Xm+16>>2]=wn;q[rm+20>>2]=qn;ti(a,Ym)}T=zn+32|0;return}To();F()}function $h(a,rm){var Xm=0,Ym=0,Jn=0,Kn=0,Ln=0,Mn=0,Nn=0,On=0;Mn=T-32|0;T=Mn;Ln=q[rm>>2]+q[a+40>>2]|0;Xm=q[a+32>>2];Ym=Xm+ -16384|0;a:{if(Ym>>>0<=63){Xm=a+28|0;o[q[a+24>>2]+q[Xm>>2]|0]=Ym;Xm=q[Xm>>2]+1|0;break a}if(Ym>>>0<=16383){Ym=a+28|0;Jn=q[a+24>>2]+q[Ym>>2]|0;o[Jn|0]=Xm;o[Jn+1|0]=Xm>>>8;Xm=q[Ym>>2]+2|0;break a}if(Ym>>>0<=4194303){Jn=a+28|0;Ym=q[a+24>>2]+q[Jn>>2]|0;Xm=Xm+8372224|0;o[Ym+2|0]=Xm>>>16;o[Ym+1|0]=Xm>>>8;o[Ym|0]=Xm;Xm=q[Jn>>2]+3|0;break a}if(Ym>>>0<=1073741823){Jn=a+28|0;Ym=q[a+24>>2]+q[Jn>>2]|0;Xm=Xm+ -1073758208|0;o[Ym|0]=Xm;o[Ym+1|0]=Xm>>>8;o[Ym+2|0]=Xm>>>16;o[Ym+3|0]=Xm>>>24;Xm=q[Jn>>2]+4|0;break a}Xm=q[a+28>>2]}Kn=Xm>>31;Jn=Kn;Ym=Xm;Kn=Dl(Mn);ui(Ym,Jn,Kn);Nn=q[Kn+4>>2]-q[Kn>>2]|0;xp(Nn+Ln|0,Ln,Ym);vp(Ln,q[Kn>>2],Nn);Xm=q[a+44>>2];Ln=rm;On=q[a+40>>2];a=Jn;rm=Ym+Nn|0;if(rm>>>0<Ym>>>0){a=a+1|0}Ym=rm;rm=On+Ym|0;El(Ln,rm);a=q[Kn+12>>2];q[Kn+12>>2]=0;if(a){pp(a)}a=q[Kn>>2];if(a){q[Kn+4>>2]=a;pp(a)}T=Mn+32|0}function ai(a,rm,Pn,Qn){var Rn=0,Sn=0,Tn=0,Un=0,Vn=0,Wn=0,Xn=0;Rn=T+ -64|0;T=Rn;q[Rn+56>>2]=0;q[Rn+48>>2]=0;q[Rn+52>>2]=0;a:{Sn=Pn+1|0;if(Sn>>>0>=Pn>>>0){if(Sn>>>0>=536870912){break a}Tn=Sn<<3;Xn=zo(Tn);q[Rn+48>>2]=Xn;q[Rn+52>>2]=Xn;q[Rn+56>>2]=Tn+Xn;Vn=wp(Xn,0,(Pn<<3)+8|0);while(1){Vn=Vn+8|0;Sn=Sn+ -1|0;if(Sn){continue}break}q[Rn+52>>2]=Vn}if((rm|0)>=1){while(1){Pn=(q[(Un<<2)+a>>2]<<3)+Xn|0;Tn=Pn;Wn=Pn;Sn=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){Sn=Sn+1|0}q[Wn>>2]=Pn;q[Tn+4>>2]=Sn;Un=Un+1|0;if((Un|0)!=(rm|0)){continue}break}}q[Rn+8>>2]=0;q[Rn+12>>2]=0;Tn=Rn+16|0;Pn=Tn;q[Pn>>2]=0;q[Pn+4>>2]=0;Wn=Rn+24|0;Pn=Wn;q[Pn>>2]=0;q[Pn+4>>2]=0;q[Rn+32>>2]=0;q[Rn>>2]=0;q[Rn+4>>2]=0;q[Rn+40>>2]=0;q[Rn+44>>2]=0;Ai(Rn,Xn,Vn-Xn>>3,Qn);Sn=q[Tn>>2];Pn=q[Tn+4>>2];Tn=q[Qn+4>>2]-q[Qn>>2]|0;q[Rn+40>>2]=Tn;q[Rn+44>>2]=0;Un=Qn;Vn=Sn;Sn=Pn<<1|Sn>>>31;Pn=(Vn<<1)+39|0;if(Pn>>>0<39){Sn=Sn+1|0}Vn=Pn;Pn=Sn>>>3;Sn=Tn+((Sn&7)<<29|Vn>>>3)|0;if(Sn>>>0<Tn>>>0){Pn=Pn+1|0}Tn=Sn+8|0;Tn>>>0<8;El(Un,Tn);Pn=q[Qn>>2];q[Rn+28>>2]=0;q[Rn+32>>2]=16384;q[Wn>>2]=Pn+q[Rn+40>>2];if((rm|0)>=1){Un=16384;while(1){Pn=rm+ -1|0;Vn=q[Rn>>2]+(q[(Pn<<2)+a>>2]<<3)|0;Wn=q[Vn>>2];Sn=Wn<<10;if(Un>>>0>=Sn>>>0){while(1){Tn=q[Rn+28>>2];q[Rn+28>>2]=Tn+1;o[Tn+q[Rn+24>>2]|0]=Un;Un=q[Rn+32>>2]>>>8;q[Rn+32>>2]=Un;if(Un>>>0>=Sn>>>0){continue}break}}Tn=(Un>>>0)/(Wn>>>0)|0;Un=q[Vn+4>>2]+((Tn<<12)+(Un-w(Tn,Wn)|0)|0)|0;q[Rn+32>>2]=Un;Tn=(rm|0)>1;rm=Pn;if(Tn){continue}break}}$h(Rn,Qn);a=q[Rn>>2];if(a){q[Rn+4>>2]=a;pp(a)}a=q[Rn+48>>2];if(a){q[Rn+52>>2]=a;pp(a)}T=Rn- -64|0;return 1}To();F()}function bi(a,rm,Pn,Qn){var Yn=0,Zn=0,_n=0,$n=0,ao=0,bo=0,co=0;Yn=T+ -64|0;T=Yn;q[Yn+56>>2]=0;q[Yn+48>>2]=0;q[Yn+52>>2]=0;a:{Zn=Pn+1|0;if(Zn>>>0>=Pn>>>0){if(Zn>>>0>=536870912){break a}_n=Zn<<3;co=zo(_n);q[Yn+48>>2]=co;q[Yn+52>>2]=co;q[Yn+56>>2]=_n+co;ao=wp(co,0,(Pn<<3)+8|0);while(1){ao=ao+8|0;Zn=Zn+ -1|0;if(Zn){continue}break}q[Yn+52>>2]=ao}if((rm|0)>=1){while(1){Pn=(q[($n<<2)+a>>2]<<3)+co|0;_n=Pn;bo=Pn;Zn=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){Zn=Zn+1|0}q[bo>>2]=Pn;q[_n+4>>2]=Zn;$n=$n+1|0;if(($n|0)!=(rm|0)){continue}break}}q[Yn+8>>2]=0;q[Yn+12>>2]=0;_n=Yn+16|0;Pn=_n;q[Pn>>2]=0;q[Pn+4>>2]=0;bo=Yn+24|0;Pn=bo;q[Pn>>2]=0;q[Pn+4>>2]=0;q[Yn+32>>2]=0;q[Yn>>2]=0;q[Yn+4>>2]=0;q[Yn+40>>2]=0;q[Yn+44>>2]=0;Bi(Yn,co,ao-co>>3,Qn);Zn=q[_n>>2];Pn=q[_n+4>>2];_n=q[Qn+4>>2]-q[Qn>>2]|0;q[Yn+40>>2]=_n;q[Yn+44>>2]=0;$n=Qn;ao=Zn;Zn=Pn<<1|Zn>>>31;Pn=(ao<<1)+39|0;if(Pn>>>0<39){Zn=Zn+1|0}ao=Pn;Pn=Zn>>>3;Zn=_n+((Zn&7)<<29|ao>>>3)|0;if(Zn>>>0<_n>>>0){Pn=Pn+1|0}_n=Zn+8|0;_n>>>0<8;El($n,_n);Pn=q[Qn>>2];q[Yn+28>>2]=0;q[Yn+32>>2]=16384;q[bo>>2]=Pn+q[Yn+40>>2];if((rm|0)>=1){$n=16384;while(1){Pn=rm+ -1|0;ao=q[Yn>>2]+(q[(Pn<<2)+a>>2]<<3)|0;bo=q[ao>>2];Zn=bo<<10;if($n>>>0>=Zn>>>0){while(1){_n=q[Yn+28>>2];q[Yn+28>>2]=_n+1;o[_n+q[Yn+24>>2]|0]=$n;$n=q[Yn+32>>2]>>>8;q[Yn+32>>2]=$n;if($n>>>0>=Zn>>>0){continue}break}}_n=($n>>>0)/(bo>>>0)|0;$n=q[ao+4>>2]+((_n<<12)+($n-w(_n,bo)|0)|0)|0;q[Yn+32>>2]=$n;_n=(rm|0)>1;rm=Pn;if(_n){continue}break}}$h(Yn,Qn);a=q[Yn>>2];if(a){q[Yn+4>>2]=a;pp(a)}a=q[Yn+48>>2];if(a){q[Yn+52>>2]=a;pp(a)}T=Yn- -64|0;return 1}To();F()}function ci(a,rm,Pn,Qn){var eo=0,fo=0,go=0,ho=0,io=0,jo=0,ko=0;eo=T+ -64|0;T=eo;q[eo+56>>2]=0;q[eo+48>>2]=0;q[eo+52>>2]=0;a:{fo=Pn+1|0;if(fo>>>0>=Pn>>>0){if(fo>>>0>=536870912){break a}go=fo<<3;ko=zo(go);q[eo+48>>2]=ko;q[eo+52>>2]=ko;q[eo+56>>2]=go+ko;io=wp(ko,0,(Pn<<3)+8|0);while(1){io=io+8|0;fo=fo+ -1|0;if(fo){continue}break}q[eo+52>>2]=io}if((rm|0)>=1){while(1){Pn=(q[(ho<<2)+a>>2]<<3)+ko|0;go=Pn;jo=Pn;fo=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){fo=fo+1|0}q[jo>>2]=Pn;q[go+4>>2]=fo;ho=ho+1|0;if((ho|0)!=(rm|0)){continue}break}}q[eo+8>>2]=0;q[eo+12>>2]=0;go=eo+16|0;Pn=go;q[Pn>>2]=0;q[Pn+4>>2]=0;jo=eo+24|0;Pn=jo;q[Pn>>2]=0;q[Pn+4>>2]=0;q[eo+32>>2]=0;q[eo>>2]=0;q[eo+4>>2]=0;q[eo+40>>2]=0;q[eo+44>>2]=0;Ci(eo,ko,io-ko>>3,Qn);fo=q[go>>2];Pn=q[go+4>>2];go=q[Qn+4>>2]-q[Qn>>2]|0;q[eo+40>>2]=go;q[eo+44>>2]=0;ho=Qn;io=fo;fo=Pn<<1|fo>>>31;Pn=(io<<1)+39|0;if(Pn>>>0<39){fo=fo+1|0}io=Pn;Pn=fo>>>3;fo=go+((fo&7)<<29|io>>>3)|0;if(fo>>>0<go>>>0){Pn=Pn+1|0}go=fo+8|0;go>>>0<8;El(ho,go);Pn=q[Qn>>2];q[eo+28>>2]=0;q[eo+32>>2]=16384;q[jo>>2]=Pn+q[eo+40>>2];if((rm|0)>=1){ho=16384;while(1){Pn=rm+ -1|0;io=q[eo>>2]+(q[(Pn<<2)+a>>2]<<3)|0;jo=q[io>>2];fo=jo<<10;if(ho>>>0>=fo>>>0){while(1){go=q[eo+28>>2];q[eo+28>>2]=go+1;o[go+q[eo+24>>2]|0]=ho;ho=q[eo+32>>2]>>>8;q[eo+32>>2]=ho;if(ho>>>0>=fo>>>0){continue}break}}go=(ho>>>0)/(jo>>>0)|0;ho=q[io+4>>2]+((go<<12)+(ho-w(go,jo)|0)|0)|0;q[eo+32>>2]=ho;go=(rm|0)>1;rm=Pn;if(go){continue}break}}$h(eo,Qn);a=q[eo>>2];if(a){q[eo+4>>2]=a;pp(a)}a=q[eo+48>>2];if(a){q[eo+52>>2]=a;pp(a)}T=eo- -64|0;return 1}To();F()}function di(a,rm,Pn,Qn){var lo=0,mo=0,no=0,oo=0,po=0,qo=0,ro=0;lo=T+ -64|0;T=lo;q[lo+56>>2]=0;q[lo+48>>2]=0;q[lo+52>>2]=0;a:{mo=Pn+1|0;if(mo>>>0>=Pn>>>0){if(mo>>>0>=536870912){break a}no=mo<<3;ro=zo(no);q[lo+48>>2]=ro;q[lo+52>>2]=ro;q[lo+56>>2]=no+ro;po=wp(ro,0,(Pn<<3)+8|0);while(1){po=po+8|0;mo=mo+ -1|0;if(mo){continue}break}q[lo+52>>2]=po}if((rm|0)>=1){while(1){Pn=(q[(oo<<2)+a>>2]<<3)+ro|0;no=Pn;qo=Pn;mo=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){mo=mo+1|0}q[qo>>2]=Pn;q[no+4>>2]=mo;oo=oo+1|0;if((oo|0)!=(rm|0)){continue}break}}q[lo+8>>2]=0;q[lo+12>>2]=0;no=lo+16|0;Pn=no;q[Pn>>2]=0;q[Pn+4>>2]=0;qo=lo+24|0;Pn=qo;q[Pn>>2]=0;q[Pn+4>>2]=0;q[lo+32>>2]=0;q[lo>>2]=0;q[lo+4>>2]=0;q[lo+40>>2]=0;q[lo+44>>2]=0;Di(lo,ro,po-ro>>3,Qn);mo=q[no>>2];Pn=q[no+4>>2];no=q[Qn+4>>2]-q[Qn>>2]|0;q[lo+40>>2]=no;q[lo+44>>2]=0;oo=Qn;po=mo;mo=Pn<<1|mo>>>31;Pn=(po<<1)+39|0;if(Pn>>>0<39){mo=mo+1|0}po=Pn;Pn=mo>>>3;mo=no+((mo&7)<<29|po>>>3)|0;if(mo>>>0<no>>>0){Pn=Pn+1|0}no=mo+8|0;no>>>0<8;El(oo,no);Pn=q[Qn>>2];q[lo+28>>2]=0;q[lo+32>>2]=16384;q[qo>>2]=Pn+q[lo+40>>2];if((rm|0)>=1){oo=16384;while(1){Pn=rm+ -1|0;po=q[lo>>2]+(q[(Pn<<2)+a>>2]<<3)|0;qo=q[po>>2];mo=qo<<10;if(oo>>>0>=mo>>>0){while(1){no=q[lo+28>>2];q[lo+28>>2]=no+1;o[no+q[lo+24>>2]|0]=oo;oo=q[lo+32>>2]>>>8;q[lo+32>>2]=oo;if(oo>>>0>=mo>>>0){continue}break}}no=(oo>>>0)/(qo>>>0)|0;oo=q[po+4>>2]+((no<<12)+(oo-w(no,qo)|0)|0)|0;q[lo+32>>2]=oo;no=(rm|0)>1;rm=Pn;if(no){continue}break}}$h(lo,Qn);a=q[lo>>2];if(a){q[lo+4>>2]=a;pp(a)}a=q[lo+48>>2];if(a){q[lo+52>>2]=a;pp(a)}T=lo- -64|0;return 1}To();F()}function ei(a,rm,Pn,Qn){var so=0,to=0,uo=0,vo=0,wo=0,xo=0,yo=0;so=T+ -64|0;T=so;q[so+56>>2]=0;q[so+48>>2]=0;q[so+52>>2]=0;a:{to=Pn+1|0;if(to>>>0>=Pn>>>0){if(to>>>0>=536870912){break a}uo=to<<3;yo=zo(uo);q[so+48>>2]=yo;q[so+52>>2]=yo;q[so+56>>2]=uo+yo;wo=wp(yo,0,(Pn<<3)+8|0);while(1){wo=wo+8|0;to=to+ -1|0;if(to){continue}break}q[so+52>>2]=wo}if((rm|0)>=1){while(1){Pn=(q[(vo<<2)+a>>2]<<3)+yo|0;uo=Pn;xo=Pn;to=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){to=to+1|0}q[xo>>2]=Pn;q[uo+4>>2]=to;vo=vo+1|0;if((vo|0)!=(rm|0)){continue}break}}q[so+8>>2]=0;q[so+12>>2]=0;uo=so+16|0;Pn=uo;q[Pn>>2]=0;q[Pn+4>>2]=0;xo=so+24|0;Pn=xo;q[Pn>>2]=0;q[Pn+4>>2]=0;q[so+32>>2]=0;q[so>>2]=0;q[so+4>>2]=0;q[so+40>>2]=0;q[so+44>>2]=0;_h(so,yo,wo-yo>>3,Qn);to=q[uo>>2];Pn=q[uo+4>>2];uo=q[Qn+4>>2]-q[Qn>>2]|0;q[so+40>>2]=uo;q[so+44>>2]=0;vo=Qn;wo=to;to=Pn<<1|to>>>31;Pn=(wo<<1)+39|0;if(Pn>>>0<39){to=to+1|0}wo=Pn;Pn=to>>>3;to=uo+((to&7)<<29|wo>>>3)|0;if(to>>>0<uo>>>0){Pn=Pn+1|0}uo=to+8|0;uo>>>0<8;El(vo,uo);Pn=q[Qn>>2];q[so+28>>2]=0;q[so+32>>2]=16384;q[xo>>2]=Pn+q[so+40>>2];if((rm|0)>=1){vo=16384;while(1){Pn=rm+ -1|0;wo=q[so>>2]+(q[(Pn<<2)+a>>2]<<3)|0;xo=q[wo>>2];to=xo<<10;if(vo>>>0>=to>>>0){while(1){uo=q[so+28>>2];q[so+28>>2]=uo+1;o[uo+q[so+24>>2]|0]=vo;vo=q[so+32>>2]>>>8;q[so+32>>2]=vo;if(vo>>>0>=to>>>0){continue}break}}uo=(vo>>>0)/(xo>>>0)|0;vo=q[wo+4>>2]+((uo<<12)+(vo-w(uo,xo)|0)|0)|0;q[so+32>>2]=vo;uo=(rm|0)>1;rm=Pn;if(uo){continue}break}}$h(so,Qn);a=q[so>>2];if(a){q[so+4>>2]=a;pp(a)}a=q[so+48>>2];if(a){q[so+52>>2]=a;pp(a)}T=so- -64|0;return 1}To();F()}function fi(a,rm,Pn,Qn){var Ao=0,Bo=0,Co=0,Do=0,Eo=0,Fo=0,Go=0;Ao=T+ -64|0;T=Ao;q[Ao+56>>2]=0;q[Ao+48>>2]=0;q[Ao+52>>2]=0;a:{Bo=Pn+1|0;if(Bo>>>0>=Pn>>>0){if(Bo>>>0>=536870912){break a}Co=Bo<<3;Go=zo(Co);q[Ao+48>>2]=Go;q[Ao+52>>2]=Go;q[Ao+56>>2]=Co+Go;Eo=wp(Go,0,(Pn<<3)+8|0);while(1){Eo=Eo+8|0;Bo=Bo+ -1|0;if(Bo){continue}break}q[Ao+52>>2]=Eo}if((rm|0)>=1){while(1){Pn=(q[(Do<<2)+a>>2]<<3)+Go|0;Co=Pn;Fo=Pn;Bo=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){Bo=Bo+1|0}q[Fo>>2]=Pn;q[Co+4>>2]=Bo;Do=Do+1|0;if((Do|0)!=(rm|0)){continue}break}}q[Ao+8>>2]=0;q[Ao+12>>2]=0;Co=Ao+16|0;Pn=Co;q[Pn>>2]=0;q[Pn+4>>2]=0;Fo=Ao+24|0;Pn=Fo;q[Pn>>2]=0;q[Pn+4>>2]=0;q[Ao+32>>2]=0;q[Ao>>2]=0;q[Ao+4>>2]=0;q[Ao+40>>2]=0;q[Ao+44>>2]=0;Ei(Ao,Go,Eo-Go>>3,Qn);Bo=q[Co>>2];Pn=q[Co+4>>2];Co=q[Qn+4>>2]-q[Qn>>2]|0;q[Ao+40>>2]=Co;q[Ao+44>>2]=0;Do=Qn;Eo=Bo;Bo=Pn<<1|Bo>>>31;Pn=(Eo<<1)+39|0;if(Pn>>>0<39){Bo=Bo+1|0}Eo=Pn;Pn=Bo>>>3;Bo=Co+((Bo&7)<<29|Eo>>>3)|0;if(Bo>>>0<Co>>>0){Pn=Pn+1|0}Co=Bo+8|0;Co>>>0<8;El(Do,Co);Pn=q[Qn>>2];q[Ao+28>>2]=0;q[Ao+32>>2]=16384;q[Fo>>2]=Pn+q[Ao+40>>2];if((rm|0)>=1){Do=16384;while(1){Pn=rm+ -1|0;Eo=q[Ao>>2]+(q[(Pn<<2)+a>>2]<<3)|0;Fo=q[Eo>>2];Bo=Fo<<10;if(Do>>>0>=Bo>>>0){while(1){Co=q[Ao+28>>2];q[Ao+28>>2]=Co+1;o[Co+q[Ao+24>>2]|0]=Do;Do=q[Ao+32>>2]>>>8;q[Ao+32>>2]=Do;if(Do>>>0>=Bo>>>0){continue}break}}Co=(Do>>>0)/(Fo>>>0)|0;Do=q[Eo+4>>2]+((Co<<12)+(Do-w(Co,Fo)|0)|0)|0;q[Ao+32>>2]=Do;Co=(rm|0)>1;rm=Pn;if(Co){continue}break}}$h(Ao,Qn);a=q[Ao>>2];if(a){q[Ao+4>>2]=a;pp(a)}a=q[Ao+48>>2];if(a){q[Ao+52>>2]=a;pp(a)}T=Ao- -64|0;return 1}To();F()}function gi(a,rm,Pn,Qn){var Ho=0,Io=0,Jo=0,Ko=0,Lo=0,Mo=0,No=0;Ho=T+ -64|0;T=Ho;q[Ho+56>>2]=0;q[Ho+48>>2]=0;q[Ho+52>>2]=0;a:{Io=Pn+1|0;if(Io>>>0>=Pn>>>0){if(Io>>>0>=536870912){break a}Jo=Io<<3;No=zo(Jo);q[Ho+48>>2]=No;q[Ho+52>>2]=No;q[Ho+56>>2]=Jo+No;Lo=wp(No,0,(Pn<<3)+8|0);while(1){Lo=Lo+8|0;Io=Io+ -1|0;if(Io){continue}break}q[Ho+52>>2]=Lo}if((rm|0)>=1){while(1){Pn=(q[(Ko<<2)+a>>2]<<3)+No|0;Jo=Pn;Mo=Pn;Io=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){Io=Io+1|0}q[Mo>>2]=Pn;q[Jo+4>>2]=Io;Ko=Ko+1|0;if((Ko|0)!=(rm|0)){continue}break}}q[Ho+8>>2]=0;q[Ho+12>>2]=0;Jo=Ho+16|0;Pn=Jo;q[Pn>>2]=0;q[Pn+4>>2]=0;Mo=Ho+24|0;Pn=Mo;q[Pn>>2]=0;q[Pn+4>>2]=0;q[Ho+32>>2]=0;q[Ho>>2]=0;q[Ho+4>>2]=0;q[Ho+40>>2]=0;q[Ho+44>>2]=0;Fi(Ho,No,Lo-No>>3,Qn);Io=q[Jo>>2];Pn=q[Jo+4>>2];Jo=q[Qn+4>>2]-q[Qn>>2]|0;q[Ho+40>>2]=Jo;q[Ho+44>>2]=0;Ko=Qn;Lo=Io;Io=Pn<<1|Io>>>31;Pn=(Lo<<1)+39|0;if(Pn>>>0<39){Io=Io+1|0}Lo=Pn;Pn=Io>>>3;Io=Jo+((Io&7)<<29|Lo>>>3)|0;if(Io>>>0<Jo>>>0){Pn=Pn+1|0}Jo=Io+8|0;Jo>>>0<8;El(Ko,Jo);Pn=q[Qn>>2];q[Ho+28>>2]=0;q[Ho+32>>2]=16384;q[Mo>>2]=Pn+q[Ho+40>>2];if((rm|0)>=1){Ko=16384;while(1){Pn=rm+ -1|0;Lo=q[Ho>>2]+(q[(Pn<<2)+a>>2]<<3)|0;Mo=q[Lo>>2];Io=Mo<<10;if(Ko>>>0>=Io>>>0){while(1){Jo=q[Ho+28>>2];q[Ho+28>>2]=Jo+1;o[Jo+q[Ho+24>>2]|0]=Ko;Ko=q[Ho+32>>2]>>>8;q[Ho+32>>2]=Ko;if(Ko>>>0>=Io>>>0){continue}break}}Jo=(Ko>>>0)/(Mo>>>0)|0;Ko=q[Lo+4>>2]+((Jo<<12)+(Ko-w(Jo,Mo)|0)|0)|0;q[Ho+32>>2]=Ko;Jo=(rm|0)>1;rm=Pn;if(Jo){continue}break}}$h(Ho,Qn);a=q[Ho>>2];if(a){q[Ho+4>>2]=a;pp(a)}a=q[Ho+48>>2];if(a){q[Ho+52>>2]=a;pp(a)}T=Ho- -64|0;return 1}To();F()}function hi(a,rm,Pn,Qn){var Oo=0,Po=0,Qo=0,Ro=0,So=0,Uo=0,Vo=0;Oo=T+ -64|0;T=Oo;q[Oo+56>>2]=0;q[Oo+48>>2]=0;q[Oo+52>>2]=0;a:{Po=Pn+1|0;if(Po>>>0>=Pn>>>0){if(Po>>>0>=536870912){break a}Qo=Po<<3;Vo=zo(Qo);q[Oo+48>>2]=Vo;q[Oo+52>>2]=Vo;q[Oo+56>>2]=Qo+Vo;So=wp(Vo,0,(Pn<<3)+8|0);while(1){So=So+8|0;Po=Po+ -1|0;if(Po){continue}break}q[Oo+52>>2]=So}if((rm|0)>=1){while(1){Pn=(q[(Ro<<2)+a>>2]<<3)+Vo|0;Qo=Pn;Uo=Pn;Po=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){Po=Po+1|0}q[Uo>>2]=Pn;q[Qo+4>>2]=Po;Ro=Ro+1|0;if((Ro|0)!=(rm|0)){continue}break}}q[Oo+8>>2]=0;q[Oo+12>>2]=0;Qo=Oo+16|0;Pn=Qo;q[Pn>>2]=0;q[Pn+4>>2]=0;Uo=Oo+24|0;Pn=Uo;q[Pn>>2]=0;q[Pn+4>>2]=0;q[Oo+32>>2]=0;q[Oo>>2]=0;q[Oo+4>>2]=0;q[Oo+40>>2]=0;q[Oo+44>>2]=0;Gi(Oo,Vo,So-Vo>>3,Qn);Po=q[Qo>>2];Pn=q[Qo+4>>2];Qo=q[Qn+4>>2]-q[Qn>>2]|0;q[Oo+40>>2]=Qo;q[Oo+44>>2]=0;Ro=Qn;So=Po;Po=Pn<<1|Po>>>31;Pn=(So<<1)+39|0;if(Pn>>>0<39){Po=Po+1|0}So=Pn;Pn=Po>>>3;Po=Qo+((Po&7)<<29|So>>>3)|0;if(Po>>>0<Qo>>>0){Pn=Pn+1|0}Qo=Po+8|0;Qo>>>0<8;El(Ro,Qo);Pn=q[Qn>>2];q[Oo+28>>2]=0;q[Oo+32>>2]=16384;q[Uo>>2]=Pn+q[Oo+40>>2];if((rm|0)>=1){Ro=16384;while(1){Pn=rm+ -1|0;So=q[Oo>>2]+(q[(Pn<<2)+a>>2]<<3)|0;Uo=q[So>>2];Po=Uo<<10;if(Ro>>>0>=Po>>>0){while(1){Qo=q[Oo+28>>2];q[Oo+28>>2]=Qo+1;o[Qo+q[Oo+24>>2]|0]=Ro;Ro=q[Oo+32>>2]>>>8;q[Oo+32>>2]=Ro;if(Ro>>>0>=Po>>>0){continue}break}}Qo=(Ro>>>0)/(Uo>>>0)|0;Ro=q[So+4>>2]+((Qo<<12)+(Ro-w(Qo,Uo)|0)|0)|0;q[Oo+32>>2]=Ro;Qo=(rm|0)>1;rm=Pn;if(Qo){continue}break}}$h(Oo,Qn);a=q[Oo>>2];if(a){q[Oo+4>>2]=a;pp(a)}a=q[Oo+48>>2];if(a){q[Oo+52>>2]=a;pp(a)}T=Oo- -64|0;return 1}To();F()}function ii(a,rm,Pn,Qn){var Wo=0,Xo=0,Yo=0,Zo=0,_o=0,$o=0,ap=0;Wo=T+ -64|0;T=Wo;q[Wo+56>>2]=0;q[Wo+48>>2]=0;q[Wo+52>>2]=0;a:{Xo=Pn+1|0;if(Xo>>>0>=Pn>>>0){if(Xo>>>0>=536870912){break a}Yo=Xo<<3;ap=zo(Yo);q[Wo+48>>2]=ap;q[Wo+52>>2]=ap;q[Wo+56>>2]=Yo+ap;_o=wp(ap,0,(Pn<<3)+8|0);while(1){_o=_o+8|0;Xo=Xo+ -1|0;if(Xo){continue}break}q[Wo+52>>2]=_o}if((rm|0)>=1){while(1){Pn=(q[(Zo<<2)+a>>2]<<3)+ap|0;Yo=Pn;$o=Pn;Xo=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){Xo=Xo+1|0}q[$o>>2]=Pn;q[Yo+4>>2]=Xo;Zo=Zo+1|0;if((Zo|0)!=(rm|0)){continue}break}}q[Wo+8>>2]=0;q[Wo+12>>2]=0;Yo=Wo+16|0;Pn=Yo;q[Pn>>2]=0;q[Pn+4>>2]=0;$o=Wo+24|0;Pn=$o;q[Pn>>2]=0;q[Pn+4>>2]=0;q[Wo+32>>2]=0;q[Wo>>2]=0;q[Wo+4>>2]=0;q[Wo+40>>2]=0;q[Wo+44>>2]=0;Hi(Wo,ap,_o-ap>>3,Qn);Xo=q[Yo>>2];Pn=q[Yo+4>>2];Yo=q[Qn+4>>2]-q[Qn>>2]|0;q[Wo+40>>2]=Yo;q[Wo+44>>2]=0;Zo=Qn;_o=Xo;Xo=Pn<<1|Xo>>>31;Pn=(_o<<1)+39|0;if(Pn>>>0<39){Xo=Xo+1|0}_o=Pn;Pn=Xo>>>3;Xo=Yo+((Xo&7)<<29|_o>>>3)|0;if(Xo>>>0<Yo>>>0){Pn=Pn+1|0}Yo=Xo+8|0;Yo>>>0<8;El(Zo,Yo);Pn=q[Qn>>2];q[Wo+28>>2]=0;q[Wo+32>>2]=32768;q[$o>>2]=Pn+q[Wo+40>>2];if((rm|0)>=1){Zo=32768;while(1){Pn=rm+ -1|0;_o=q[Wo>>2]+(q[(Pn<<2)+a>>2]<<3)|0;$o=q[_o>>2];Xo=$o<<10;if(Zo>>>0>=Xo>>>0){while(1){Yo=q[Wo+28>>2];q[Wo+28>>2]=Yo+1;o[Yo+q[Wo+24>>2]|0]=Zo;Zo=q[Wo+32>>2]>>>8;q[Wo+32>>2]=Zo;if(Zo>>>0>=Xo>>>0){continue}break}}Yo=(Zo>>>0)/($o>>>0)|0;Zo=q[_o+4>>2]+((Yo<<13)+(Zo-w(Yo,$o)|0)|0)|0;q[Wo+32>>2]=Zo;Yo=(rm|0)>1;rm=Pn;if(Yo){continue}break}}Ii(Wo,Qn);a=q[Wo>>2];if(a){q[Wo+4>>2]=a;pp(a)}a=q[Wo+48>>2];if(a){q[Wo+52>>2]=a;pp(a)}T=Wo- -64|0;return 1}To();F()}function ji(a,rm,Pn,Qn){var bp=0,cp=0,dp=0,ep=0,fp=0,gp=0,hp=0;bp=T+ -64|0;T=bp;q[bp+56>>2]=0;q[bp+48>>2]=0;q[bp+52>>2]=0;a:{cp=Pn+1|0;if(cp>>>0>=Pn>>>0){if(cp>>>0>=536870912){break a}dp=cp<<3;hp=zo(dp);q[bp+48>>2]=hp;q[bp+52>>2]=hp;q[bp+56>>2]=dp+hp;fp=wp(hp,0,(Pn<<3)+8|0);while(1){fp=fp+8|0;cp=cp+ -1|0;if(cp){continue}break}q[bp+52>>2]=fp}if((rm|0)>=1){while(1){Pn=(q[(ep<<2)+a>>2]<<3)+hp|0;dp=Pn;gp=Pn;cp=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){cp=cp+1|0}q[gp>>2]=Pn;q[dp+4>>2]=cp;ep=ep+1|0;if((ep|0)!=(rm|0)){continue}break}}q[bp+8>>2]=0;q[bp+12>>2]=0;dp=bp+16|0;Pn=dp;q[Pn>>2]=0;q[Pn+4>>2]=0;gp=bp+24|0;Pn=gp;q[Pn>>2]=0;q[Pn+4>>2]=0;q[bp+32>>2]=0;q[bp>>2]=0;q[bp+4>>2]=0;q[bp+40>>2]=0;q[bp+44>>2]=0;Ji(bp,hp,fp-hp>>3,Qn);cp=q[dp>>2];Pn=q[dp+4>>2];dp=q[Qn+4>>2]-q[Qn>>2]|0;q[bp+40>>2]=dp;q[bp+44>>2]=0;ep=Qn;fp=cp;cp=Pn<<1|cp>>>31;Pn=(fp<<1)+39|0;if(Pn>>>0<39){cp=cp+1|0}fp=Pn;Pn=cp>>>3;cp=dp+((cp&7)<<29|fp>>>3)|0;if(cp>>>0<dp>>>0){Pn=Pn+1|0}dp=cp+8|0;dp>>>0<8;El(ep,dp);Pn=q[Qn>>2];q[bp+28>>2]=0;q[bp+32>>2]=131072;q[gp>>2]=Pn+q[bp+40>>2];if((rm|0)>=1){ep=131072;while(1){Pn=rm+ -1|0;fp=q[bp>>2]+(q[(Pn<<2)+a>>2]<<3)|0;gp=q[fp>>2];cp=gp<<10;if(ep>>>0>=cp>>>0){while(1){dp=q[bp+28>>2];q[bp+28>>2]=dp+1;o[dp+q[bp+24>>2]|0]=ep;ep=q[bp+32>>2]>>>8;q[bp+32>>2]=ep;if(ep>>>0>=cp>>>0){continue}break}}dp=(ep>>>0)/(gp>>>0)|0;ep=q[fp+4>>2]+((dp<<15)+(ep-w(dp,gp)|0)|0)|0;q[bp+32>>2]=ep;dp=(rm|0)>1;rm=Pn;if(dp){continue}break}}Ki(bp,Qn);a=q[bp>>2];if(a){q[bp+4>>2]=a;pp(a)}a=q[bp+48>>2];if(a){q[bp+52>>2]=a;pp(a)}T=bp- -64|0;return 1}To();F()}function ki(a,rm,Pn,Qn){var ip=0,jp=0,kp=0,lp=0,mp=0,np=0,op=0;ip=T+ -64|0;T=ip;q[ip+56>>2]=0;q[ip+48>>2]=0;q[ip+52>>2]=0;a:{jp=Pn+1|0;if(jp>>>0>=Pn>>>0){if(jp>>>0>=536870912){break a}kp=jp<<3;op=zo(kp);q[ip+48>>2]=op;q[ip+52>>2]=op;q[ip+56>>2]=kp+op;mp=wp(op,0,(Pn<<3)+8|0);while(1){mp=mp+8|0;jp=jp+ -1|0;if(jp){continue}break}q[ip+52>>2]=mp}if((rm|0)>=1){while(1){Pn=(q[(lp<<2)+a>>2]<<3)+op|0;kp=Pn;np=Pn;jp=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){jp=jp+1|0}q[np>>2]=Pn;q[kp+4>>2]=jp;lp=lp+1|0;if((lp|0)!=(rm|0)){continue}break}}q[ip+8>>2]=0;q[ip+12>>2]=0;kp=ip+16|0;Pn=kp;q[Pn>>2]=0;q[Pn+4>>2]=0;np=ip+24|0;Pn=np;q[Pn>>2]=0;q[Pn+4>>2]=0;q[ip+32>>2]=0;q[ip>>2]=0;q[ip+4>>2]=0;q[ip+40>>2]=0;q[ip+44>>2]=0;Li(ip,op,mp-op>>3,Qn);jp=q[kp>>2];Pn=q[kp+4>>2];kp=q[Qn+4>>2]-q[Qn>>2]|0;q[ip+40>>2]=kp;q[ip+44>>2]=0;lp=Qn;mp=jp;jp=Pn<<1|jp>>>31;Pn=(mp<<1)+39|0;if(Pn>>>0<39){jp=jp+1|0}mp=Pn;Pn=jp>>>3;jp=kp+((jp&7)<<29|mp>>>3)|0;if(jp>>>0<kp>>>0){Pn=Pn+1|0}kp=jp+8|0;kp>>>0<8;El(lp,kp);Pn=q[Qn>>2];q[ip+28>>2]=0;q[ip+32>>2]=262144;q[np>>2]=Pn+q[ip+40>>2];if((rm|0)>=1){lp=262144;while(1){Pn=rm+ -1|0;mp=q[ip>>2]+(q[(Pn<<2)+a>>2]<<3)|0;np=q[mp>>2];jp=np<<10;if(lp>>>0>=jp>>>0){while(1){kp=q[ip+28>>2];q[ip+28>>2]=kp+1;o[kp+q[ip+24>>2]|0]=lp;lp=q[ip+32>>2]>>>8;q[ip+32>>2]=lp;if(lp>>>0>=jp>>>0){continue}break}}kp=(lp>>>0)/(np>>>0)|0;lp=q[mp+4>>2]+((kp<<16)+(lp-w(kp,np)|0)|0)|0;q[ip+32>>2]=lp;kp=(rm|0)>1;rm=Pn;if(kp){continue}break}}Mi(ip,Qn);a=q[ip>>2];if(a){q[ip+4>>2]=a;pp(a)}a=q[ip+48>>2];if(a){q[ip+52>>2]=a;pp(a)}T=ip- -64|0;return 1}To();F()}function li(a,rm,Pn,Qn){var qp=0,rp=0,sp=0,tp=0,up=0,vp=0,xp=0;qp=T+ -64|0;T=qp;q[qp+56>>2]=0;q[qp+48>>2]=0;q[qp+52>>2]=0;a:{rp=Pn+1|0;if(rp>>>0>=Pn>>>0){if(rp>>>0>=536870912){break a}sp=rp<<3;xp=zo(sp);q[qp+48>>2]=xp;q[qp+52>>2]=xp;q[qp+56>>2]=sp+xp;up=wp(xp,0,(Pn<<3)+8|0);while(1){up=up+8|0;rp=rp+ -1|0;if(rp){continue}break}q[qp+52>>2]=up}if((rm|0)>=1){while(1){Pn=(q[(tp<<2)+a>>2]<<3)+xp|0;sp=Pn;vp=Pn;rp=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){rp=rp+1|0}q[vp>>2]=Pn;q[sp+4>>2]=rp;tp=tp+1|0;if((tp|0)!=(rm|0)){continue}break}}q[qp+8>>2]=0;q[qp+12>>2]=0;sp=qp+16|0;Pn=sp;q[Pn>>2]=0;q[Pn+4>>2]=0;vp=qp+24|0;Pn=vp;q[Pn>>2]=0;q[Pn+4>>2]=0;q[qp+32>>2]=0;q[qp>>2]=0;q[qp+4>>2]=0;q[qp+40>>2]=0;q[qp+44>>2]=0;Ni(qp,xp,up-xp>>3,Qn);rp=q[sp>>2];Pn=q[sp+4>>2];sp=q[Qn+4>>2]-q[Qn>>2]|0;q[qp+40>>2]=sp;q[qp+44>>2]=0;tp=Qn;up=rp;rp=Pn<<1|rp>>>31;Pn=(up<<1)+39|0;if(Pn>>>0<39){rp=rp+1|0}up=Pn;Pn=rp>>>3;rp=sp+((rp&7)<<29|up>>>3)|0;if(rp>>>0<sp>>>0){Pn=Pn+1|0}sp=rp+8|0;sp>>>0<8;El(tp,sp);Pn=q[Qn>>2];q[qp+28>>2]=0;q[qp+32>>2]=1048576;q[vp>>2]=Pn+q[qp+40>>2];if((rm|0)>=1){tp=1048576;while(1){Pn=rm+ -1|0;up=q[qp>>2]+(q[(Pn<<2)+a>>2]<<3)|0;vp=q[up>>2];rp=vp<<10;if(tp>>>0>=rp>>>0){while(1){sp=q[qp+28>>2];q[qp+28>>2]=sp+1;o[sp+q[qp+24>>2]|0]=tp;tp=q[qp+32>>2]>>>8;q[qp+32>>2]=tp;if(tp>>>0>=rp>>>0){continue}break}}sp=(tp>>>0)/(vp>>>0)|0;tp=q[up+4>>2]+((sp<<18)+(tp-w(sp,vp)|0)|0)|0;q[qp+32>>2]=tp;sp=(rm|0)>1;rm=Pn;if(sp){continue}break}}Oi(qp,Qn);a=q[qp>>2];if(a){q[qp+4>>2]=a;pp(a)}a=q[qp+48>>2];if(a){q[qp+52>>2]=a;pp(a)}T=qp- -64|0;return 1}To();F()}function mi(a,rm,Pn,Qn){var yp=0,zp=0,Ap=0,Bp=0,Cp=0,Dp=0,Ep=0;yp=T+ -64|0;T=yp;q[yp+56>>2]=0;q[yp+48>>2]=0;q[yp+52>>2]=0;a:{zp=Pn+1|0;if(zp>>>0>=Pn>>>0){if(zp>>>0>=536870912){break a}Ap=zp<<3;Ep=zo(Ap);q[yp+48>>2]=Ep;q[yp+52>>2]=Ep;q[yp+56>>2]=Ap+Ep;Cp=wp(Ep,0,(Pn<<3)+8|0);while(1){Cp=Cp+8|0;zp=zp+ -1|0;if(zp){continue}break}q[yp+52>>2]=Cp}if((rm|0)>=1){while(1){Pn=(q[(Bp<<2)+a>>2]<<3)+Ep|0;Ap=Pn;Dp=Pn;zp=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){zp=zp+1|0}q[Dp>>2]=Pn;q[Ap+4>>2]=zp;Bp=Bp+1|0;if((Bp|0)!=(rm|0)){continue}break}}q[yp+8>>2]=0;q[yp+12>>2]=0;Ap=yp+16|0;Pn=Ap;q[Pn>>2]=0;q[Pn+4>>2]=0;Dp=yp+24|0;Pn=Dp;q[Pn>>2]=0;q[Pn+4>>2]=0;q[yp+32>>2]=0;q[yp>>2]=0;q[yp+4>>2]=0;q[yp+40>>2]=0;q[yp+44>>2]=0;Pi(yp,Ep,Cp-Ep>>3,Qn);zp=q[Ap>>2];Pn=q[Ap+4>>2];Ap=q[Qn+4>>2]-q[Qn>>2]|0;q[yp+40>>2]=Ap;q[yp+44>>2]=0;Bp=Qn;Cp=zp;zp=Pn<<1|zp>>>31;Pn=(Cp<<1)+39|0;if(Pn>>>0<39){zp=zp+1|0}Cp=Pn;Pn=zp>>>3;zp=Ap+((zp&7)<<29|Cp>>>3)|0;if(zp>>>0<Ap>>>0){Pn=Pn+1|0}Ap=zp+8|0;Ap>>>0<8;El(Bp,Ap);Pn=q[Qn>>2];q[yp+28>>2]=0;q[yp+32>>2]=2097152;q[Dp>>2]=Pn+q[yp+40>>2];if((rm|0)>=1){Bp=2097152;while(1){Pn=rm+ -1|0;Cp=q[yp>>2]+(q[(Pn<<2)+a>>2]<<3)|0;Dp=q[Cp>>2];zp=Dp<<10;if(Bp>>>0>=zp>>>0){while(1){Ap=q[yp+28>>2];q[yp+28>>2]=Ap+1;o[Ap+q[yp+24>>2]|0]=Bp;Bp=q[yp+32>>2]>>>8;q[yp+32>>2]=Bp;if(Bp>>>0>=zp>>>0){continue}break}}Ap=(Bp>>>0)/(Dp>>>0)|0;Bp=q[Cp+4>>2]+((Ap<<19)+(Bp-w(Ap,Dp)|0)|0)|0;q[yp+32>>2]=Bp;Ap=(rm|0)>1;rm=Pn;if(Ap){continue}break}}Qi(yp,Qn);a=q[yp>>2];if(a){q[yp+4>>2]=a;pp(a)}a=q[yp+48>>2];if(a){q[yp+52>>2]=a;pp(a)}T=yp- -64|0;return 1}To();F()}function ni(a,rm,Pn,Qn){var Fp=0,Gp=0,Hp=0,Ip=0,Jp=0,Kp=0,Lp=0;Fp=T+ -64|0;T=Fp;q[Fp+56>>2]=0;q[Fp+48>>2]=0;q[Fp+52>>2]=0;a:{Gp=Pn+1|0;if(Gp>>>0>=Pn>>>0){if(Gp>>>0>=536870912){break a}Hp=Gp<<3;Lp=zo(Hp);q[Fp+48>>2]=Lp;q[Fp+52>>2]=Lp;q[Fp+56>>2]=Hp+Lp;Jp=wp(Lp,0,(Pn<<3)+8|0);while(1){Jp=Jp+8|0;Gp=Gp+ -1|0;if(Gp){continue}break}q[Fp+52>>2]=Jp}if((rm|0)>=1){while(1){Pn=(q[(Ip<<2)+a>>2]<<3)+Lp|0;Hp=Pn;Kp=Pn;Gp=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){Gp=Gp+1|0}q[Kp>>2]=Pn;q[Hp+4>>2]=Gp;Ip=Ip+1|0;if((Ip|0)!=(rm|0)){continue}break}}q[Fp+8>>2]=0;q[Fp+12>>2]=0;Hp=Fp+16|0;Pn=Hp;q[Pn>>2]=0;q[Pn+4>>2]=0;Kp=Fp+24|0;Pn=Kp;q[Pn>>2]=0;q[Pn+4>>2]=0;q[Fp+32>>2]=0;q[Fp>>2]=0;q[Fp+4>>2]=0;q[Fp+40>>2]=0;q[Fp+44>>2]=0;Ri(Fp,Lp,Jp-Lp>>3,Qn);Gp=q[Hp>>2];Pn=q[Hp+4>>2];Hp=q[Qn+4>>2]-q[Qn>>2]|0;q[Fp+40>>2]=Hp;q[Fp+44>>2]=0;Ip=Qn;Jp=Gp;Gp=Pn<<1|Gp>>>31;Pn=(Jp<<1)+39|0;if(Pn>>>0<39){Gp=Gp+1|0}Jp=Pn;Pn=Gp>>>3;Gp=Hp+((Gp&7)<<29|Jp>>>3)|0;if(Gp>>>0<Hp>>>0){Pn=Pn+1|0}Hp=Gp+8|0;Hp>>>0<8;El(Ip,Hp);Pn=q[Qn>>2];q[Fp+28>>2]=0;q[Fp+32>>2]=4194304;q[Kp>>2]=Pn+q[Fp+40>>2];if((rm|0)>=1){Ip=4194304;while(1){Pn=rm+ -1|0;Jp=q[Fp>>2]+(q[(Pn<<2)+a>>2]<<3)|0;Kp=q[Jp>>2];Gp=Kp<<10;if(Ip>>>0>=Gp>>>0){while(1){Hp=q[Fp+28>>2];q[Fp+28>>2]=Hp+1;o[Hp+q[Fp+24>>2]|0]=Ip;Ip=q[Fp+32>>2]>>>8;q[Fp+32>>2]=Ip;if(Ip>>>0>=Gp>>>0){continue}break}}Hp=(Ip>>>0)/(Kp>>>0)|0;Ip=q[Jp+4>>2]+((Hp<<20)+(Ip-w(Hp,Kp)|0)|0)|0;q[Fp+32>>2]=Ip;Hp=(rm|0)>1;rm=Pn;if(Hp){continue}break}}Si(Fp,Qn);a=q[Fp>>2];if(a){q[Fp+4>>2]=a;pp(a)}a=q[Fp+48>>2];if(a){q[Fp+52>>2]=a;pp(a)}T=Fp- -64|0;return 1}To();F()}function oi(a,rm,Pn,Qn){var Mp=0,Np=0,Op=0,Pp=0,Qp=0,Rp=0,Sp=0;Mp=T+ -64|0;T=Mp;q[Mp+56>>2]=0;q[Mp+48>>2]=0;q[Mp+52>>2]=0;a:{Np=Pn+1|0;if(Np>>>0>=Pn>>>0){if(Np>>>0>=536870912){break a}Op=Np<<3;Sp=zo(Op);q[Mp+48>>2]=Sp;q[Mp+52>>2]=Sp;q[Mp+56>>2]=Op+Sp;Qp=wp(Sp,0,(Pn<<3)+8|0);while(1){Qp=Qp+8|0;Np=Np+ -1|0;if(Np){continue}break}q[Mp+52>>2]=Qp}if((rm|0)>=1){while(1){Pn=(q[(Pp<<2)+a>>2]<<3)+Sp|0;Op=Pn;Rp=Pn;Np=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){Np=Np+1|0}q[Rp>>2]=Pn;q[Op+4>>2]=Np;Pp=Pp+1|0;if((Pp|0)!=(rm|0)){continue}break}}q[Mp+8>>2]=0;q[Mp+12>>2]=0;Op=Mp+16|0;Pn=Op;q[Pn>>2]=0;q[Pn+4>>2]=0;Rp=Mp+24|0;Pn=Rp;q[Pn>>2]=0;q[Pn+4>>2]=0;q[Mp+32>>2]=0;q[Mp>>2]=0;q[Mp+4>>2]=0;q[Mp+40>>2]=0;q[Mp+44>>2]=0;Ti(Mp,Sp,Qp-Sp>>3,Qn);Np=q[Op>>2];Pn=q[Op+4>>2];Op=q[Qn+4>>2]-q[Qn>>2]|0;q[Mp+40>>2]=Op;q[Mp+44>>2]=0;Pp=Qn;Qp=Np;Np=Pn<<1|Np>>>31;Pn=(Qp<<1)+39|0;if(Pn>>>0<39){Np=Np+1|0}Qp=Pn;Pn=Np>>>3;Np=Op+((Np&7)<<29|Qp>>>3)|0;if(Np>>>0<Op>>>0){Pn=Pn+1|0}Op=Np+8|0;Op>>>0<8;El(Pp,Op);Pn=q[Qn>>2];q[Mp+28>>2]=0;q[Mp+32>>2]=4194304;q[Rp>>2]=Pn+q[Mp+40>>2];if((rm|0)>=1){Pp=4194304;while(1){Pn=rm+ -1|0;Qp=q[Mp>>2]+(q[(Pn<<2)+a>>2]<<3)|0;Rp=q[Qp>>2];Np=Rp<<10;if(Pp>>>0>=Np>>>0){while(1){Op=q[Mp+28>>2];q[Mp+28>>2]=Op+1;o[Op+q[Mp+24>>2]|0]=Pp;Pp=q[Mp+32>>2]>>>8;q[Mp+32>>2]=Pp;if(Pp>>>0>=Np>>>0){continue}break}}Op=(Pp>>>0)/(Rp>>>0)|0;Pp=q[Qp+4>>2]+((Op<<20)+(Pp-w(Op,Rp)|0)|0)|0;q[Mp+32>>2]=Pp;Op=(rm|0)>1;rm=Pn;if(Op){continue}break}}Si(Mp,Qn);a=q[Mp>>2];if(a){q[Mp+4>>2]=a;pp(a)}a=q[Mp+48>>2];if(a){q[Mp+52>>2]=a;pp(a)}T=Mp- -64|0;return 1}To();F()}function pi(a,rm,Pn,Qn){var Tp=0,Up=0,Vp=0,Wp=0,Xp=0,Yp=0,Zp=0;Tp=T+ -64|0;T=Tp;q[Tp+56>>2]=0;q[Tp+48>>2]=0;q[Tp+52>>2]=0;a:{Up=Pn+1|0;if(Up>>>0>=Pn>>>0){if(Up>>>0>=536870912){break a}Vp=Up<<3;Zp=zo(Vp);q[Tp+48>>2]=Zp;q[Tp+52>>2]=Zp;q[Tp+56>>2]=Vp+Zp;Xp=wp(Zp,0,(Pn<<3)+8|0);while(1){Xp=Xp+8|0;Up=Up+ -1|0;if(Up){continue}break}q[Tp+52>>2]=Xp}if((rm|0)>=1){while(1){Pn=(q[(Wp<<2)+a>>2]<<3)+Zp|0;Vp=Pn;Yp=Pn;Up=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){Up=Up+1|0}q[Yp>>2]=Pn;q[Vp+4>>2]=Up;Wp=Wp+1|0;if((Wp|0)!=(rm|0)){continue}break}}q[Tp+8>>2]=0;q[Tp+12>>2]=0;Vp=Tp+16|0;Pn=Vp;q[Pn>>2]=0;q[Pn+4>>2]=0;Yp=Tp+24|0;Pn=Yp;q[Pn>>2]=0;q[Pn+4>>2]=0;q[Tp+32>>2]=0;q[Tp>>2]=0;q[Tp+4>>2]=0;q[Tp+40>>2]=0;q[Tp+44>>2]=0;Ui(Tp,Zp,Xp-Zp>>3,Qn);Up=q[Vp>>2];Pn=q[Vp+4>>2];Vp=q[Qn+4>>2]-q[Qn>>2]|0;q[Tp+40>>2]=Vp;q[Tp+44>>2]=0;Wp=Qn;Xp=Up;Up=Pn<<1|Up>>>31;Pn=(Xp<<1)+39|0;if(Pn>>>0<39){Up=Up+1|0}Xp=Pn;Pn=Up>>>3;Up=Vp+((Up&7)<<29|Xp>>>3)|0;if(Up>>>0<Vp>>>0){Pn=Pn+1|0}Vp=Up+8|0;Vp>>>0<8;El(Wp,Vp);Pn=q[Qn>>2];q[Tp+28>>2]=0;q[Tp+32>>2]=4194304;q[Yp>>2]=Pn+q[Tp+40>>2];if((rm|0)>=1){Wp=4194304;while(1){Pn=rm+ -1|0;Xp=q[Tp>>2]+(q[(Pn<<2)+a>>2]<<3)|0;Yp=q[Xp>>2];Up=Yp<<10;if(Wp>>>0>=Up>>>0){while(1){Vp=q[Tp+28>>2];q[Tp+28>>2]=Vp+1;o[Vp+q[Tp+24>>2]|0]=Wp;Wp=q[Tp+32>>2]>>>8;q[Tp+32>>2]=Wp;if(Wp>>>0>=Up>>>0){continue}break}}Vp=(Wp>>>0)/(Yp>>>0)|0;Wp=q[Xp+4>>2]+((Vp<<20)+(Wp-w(Vp,Yp)|0)|0)|0;q[Tp+32>>2]=Wp;Vp=(rm|0)>1;rm=Pn;if(Vp){continue}break}}Si(Tp,Qn);a=q[Tp>>2];if(a){q[Tp+4>>2]=a;pp(a)}a=q[Tp+48>>2];if(a){q[Tp+52>>2]=a;pp(a)}T=Tp- -64|0;return 1}To();F()}function qi(a,rm,Pn,Qn){var _p=0,$p=0,aq=0,bq=0,cq=0,dq=0,eq=0;_p=T+ -64|0;T=_p;q[_p+56>>2]=0;q[_p+48>>2]=0;q[_p+52>>2]=0;a:{$p=Pn+1|0;if($p>>>0>=Pn>>>0){if($p>>>0>=536870912){break a}aq=$p<<3;eq=zo(aq);q[_p+48>>2]=eq;q[_p+52>>2]=eq;q[_p+56>>2]=aq+eq;cq=wp(eq,0,(Pn<<3)+8|0);while(1){cq=cq+8|0;$p=$p+ -1|0;if($p){continue}break}q[_p+52>>2]=cq}if((rm|0)>=1){while(1){Pn=(q[(bq<<2)+a>>2]<<3)+eq|0;aq=Pn;dq=Pn;$p=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){$p=$p+1|0}q[dq>>2]=Pn;q[aq+4>>2]=$p;bq=bq+1|0;if((bq|0)!=(rm|0)){continue}break}}q[_p+8>>2]=0;q[_p+12>>2]=0;aq=_p+16|0;Pn=aq;q[Pn>>2]=0;q[Pn+4>>2]=0;dq=_p+24|0;Pn=dq;q[Pn>>2]=0;q[Pn+4>>2]=0;q[_p+32>>2]=0;q[_p>>2]=0;q[_p+4>>2]=0;q[_p+40>>2]=0;q[_p+44>>2]=0;Vi(_p,eq,cq-eq>>3,Qn);$p=q[aq>>2];Pn=q[aq+4>>2];aq=q[Qn+4>>2]-q[Qn>>2]|0;q[_p+40>>2]=aq;q[_p+44>>2]=0;bq=Qn;cq=$p;$p=Pn<<1|$p>>>31;Pn=(cq<<1)+39|0;if(Pn>>>0<39){$p=$p+1|0}cq=Pn;Pn=$p>>>3;$p=aq+(($p&7)<<29|cq>>>3)|0;if($p>>>0<aq>>>0){Pn=Pn+1|0}aq=$p+8|0;aq>>>0<8;El(bq,aq);Pn=q[Qn>>2];q[_p+28>>2]=0;q[_p+32>>2]=4194304;q[dq>>2]=Pn+q[_p+40>>2];if((rm|0)>=1){bq=4194304;while(1){Pn=rm+ -1|0;cq=q[_p>>2]+(q[(Pn<<2)+a>>2]<<3)|0;dq=q[cq>>2];$p=dq<<10;if(bq>>>0>=$p>>>0){while(1){aq=q[_p+28>>2];q[_p+28>>2]=aq+1;o[aq+q[_p+24>>2]|0]=bq;bq=q[_p+32>>2]>>>8;q[_p+32>>2]=bq;if(bq>>>0>=$p>>>0){continue}break}}aq=(bq>>>0)/(dq>>>0)|0;bq=q[cq+4>>2]+((aq<<20)+(bq-w(aq,dq)|0)|0)|0;q[_p+32>>2]=bq;aq=(rm|0)>1;rm=Pn;if(aq){continue}break}}Si(_p,Qn);a=q[_p>>2];if(a){q[_p+4>>2]=a;pp(a)}a=q[_p+48>>2];if(a){q[_p+52>>2]=a;pp(a)}T=_p- -64|0;return 1}To();F()}function ri(a,rm,Pn,Qn){var fq=0,gq=0,hq=0,iq=0,jq=0,kq=0,lq=0;fq=T+ -64|0;T=fq;q[fq+56>>2]=0;q[fq+48>>2]=0;q[fq+52>>2]=0;a:{gq=Pn+1|0;if(gq>>>0>=Pn>>>0){if(gq>>>0>=536870912){break a}hq=gq<<3;lq=zo(hq);q[fq+48>>2]=lq;q[fq+52>>2]=lq;q[fq+56>>2]=hq+lq;jq=wp(lq,0,(Pn<<3)+8|0);while(1){jq=jq+8|0;gq=gq+ -1|0;if(gq){continue}break}q[fq+52>>2]=jq}if((rm|0)>=1){while(1){Pn=(q[(iq<<2)+a>>2]<<3)+lq|0;hq=Pn;kq=Pn;gq=q[Pn+4>>2];Pn=q[Pn>>2]+1|0;if(Pn>>>0<1){gq=gq+1|0}q[kq>>2]=Pn;q[hq+4>>2]=gq;iq=iq+1|0;if((iq|0)!=(rm|0)){continue}break}}q[fq+8>>2]=0;q[fq+12>>2]=0;hq=fq+16|0;Pn=hq;q[Pn>>2]=0;q[Pn+4>>2]=0;kq=fq+24|0;Pn=kq;q[Pn>>2]=0;q[Pn+4>>2]=0;q[fq+32>>2]=0;q[fq>>2]=0;q[fq+4>>2]=0;q[fq+40>>2]=0;q[fq+44>>2]=0;Wi(fq,lq,jq-lq>>3,Qn);gq=q[hq>>2];Pn=q[hq+4>>2];hq=q[Qn+4>>2]-q[Qn>>2]|0;q[fq+40>>2]=hq;q[fq+44>>2]=0;iq=Qn;jq=gq;gq=Pn<<1|gq>>>31;Pn=(jq<<1)+39|0;if(Pn>>>0<39){gq=gq+1|0}jq=Pn;Pn=gq>>>3;gq=hq+((gq&7)<<29|jq>>>3)|0;if(gq>>>0<hq>>>0){Pn=Pn+1|0}hq=gq+8|0;hq>>>0<8;El(iq,hq);Pn=q[Qn>>2];q[fq+28>>2]=0;q[fq+32>>2]=4194304;q[kq>>2]=Pn+q[fq+40>>2];if((rm|0)>=1){iq=4194304;while(1){Pn=rm+ -1|0;jq=q[fq>>2]+(q[(Pn<<2)+a>>2]<<3)|0;kq=q[jq>>2];gq=kq<<10;if(iq>>>0>=gq>>>0){while(1){hq=q[fq+28>>2];q[fq+28>>2]=hq+1;o[hq+q[fq+24>>2]|0]=iq;iq=q[fq+32>>2]>>>8;q[fq+32>>2]=iq;if(iq>>>0>=gq>>>0){continue}break}}hq=(iq>>>0)/(kq>>>0)|0;iq=q[jq+4>>2]+((hq<<20)+(iq-w(hq,kq)|0)|0)|0;q[fq+32>>2]=iq;hq=(rm|0)>1;rm=Pn;if(hq){continue}break}}Si(fq,Qn);a=q[fq>>2];if(a){q[fq+4>>2]=a;pp(a)}a=q[fq+48>>2];if(a){q[fq+52>>2]=a;pp(a)}T=fq- -64|0;return 1}To();F()}function si(a,rm,Pn){var Qn=0,zo=0,To=0,pp=0,wp=0,mq=0,nq=0,oq=0,pq=0,qq=0,rq=0;a:{b:while(1){pq=rm+ -4|0;c:while(1){To=a;d:while(1){e:{f:{g:{h:{Qn=rm-To|0;a=Qn>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:Pn=q[Pn>>2];a=q[Pn>>2];Pn=q[Pn+4>>2]-a>>3;Qn=rm+ -4|0;rm=q[Qn>>2];if(Pn>>>0<=rm>>>0){break h}pq=Pn;Pn=q[To>>2];if(pq>>>0<=Pn>>>0){break h}if(t[a+(rm<<3)>>2]>=t[a+(Pn<<3)>>2]){break a}q[To>>2]=rm;q[Qn>>2]=Pn;return;case 2:vi(To,To+4|0,To+8|0,rm+ -4|0,Pn);return;case 3:break i;case 1:break g;default:break a}}wi(To,To+4|0,To+8|0,To+12|0,rm+ -4|0,Pn);return}if((Qn|0)<=123){xi(To,rm,Pn);return}mq=((a|0)/2<<2)+To|0;j:{if((Qn|0)>=3997){a=(a|0)/4<<2;oq=wi(To,a+To|0,mq,a+mq|0,pq,Pn);break j}oq=yi(To,mq,pq,Pn)}a=q[Pn>>2];wp=q[a>>2];pp=q[a+4>>2]-wp>>3;a=q[To>>2];if(pp>>>0<=a>>>0){break e}Qn=q[mq>>2];if(pp>>>0<=Qn>>>0){break e}zo=pq;nq=q[wp+(a<<3)>>2];qq=q[wp+(Qn<<3)>>2];if(nq>>>0>=qq>>>0){while(1){zo=zo+ -4|0;if((zo|0)==(To|0)){a=q[pq>>2];if(pp>>>0<=a>>>0){break e}Qn=To+4|0;if(nq>>>0<t[wp+(a<<3)>>2]){break f}if((Qn|0)==(pq|0)){break a}while(1){zo=q[Qn>>2];if(pp>>>0<=zo>>>0){break e}if(nq>>>0<t[wp+(zo<<3)>>2]){q[Qn>>2]=a;q[pq>>2]=zo;Qn=Qn+4|0;break f}Qn=Qn+4|0;if((pq|0)!=(Qn|0)){continue}break}break a}Qn=q[zo>>2];if(pp>>>0<=Qn>>>0){break e}if(t[wp+(Qn<<3)>>2]>=qq>>>0){continue}break}q[To>>2]=Qn;q[zo>>2]=a;oq=oq+1|0}k:{Qn=To+4|0;if(Qn>>>0>=zo>>>0){break k}a=q[Qn>>2];if(pp>>>0<=a>>>0){break e}while(1){nq=q[mq>>2];qq=wp+(nq<<3)|0;while(1){if(pp>>>0<=nq>>>0){break e}rq=q[qq>>2];if(t[wp+(a<<3)>>2]<rq>>>0){a=q[Qn+4>>2];Qn=Qn+4|0;if(pp>>>0>a>>>0){continue}break e}break}while(1){zo=zo+ -4|0;nq=q[zo>>2];if(pp>>>0<=nq>>>0){break e}if(t[wp+(nq<<3)>>2]>=rq>>>0){continue}break}if(Qn>>>0>zo>>>0){break k}q[Qn>>2]=nq;q[zo>>2]=a;mq=(Qn|0)==(mq|0)?zo:mq;oq=oq+1|0;a=q[Qn+4>>2];Qn=Qn+4|0;if(pp>>>0>a>>>0){continue}break}break e}l:{if((Qn|0)==(mq|0)){break l}a=q[mq>>2];if(pp>>>0<=a>>>0){break e}zo=q[Qn>>2];if(pp>>>0<=zo>>>0){break e}if(t[wp+(a<<3)>>2]>=t[wp+(zo<<3)>>2]){break l}q[Qn>>2]=a;q[mq>>2]=zo;oq=oq+1|0}if(!oq){zo=zi(To,Qn,Pn);a=Qn+4|0;if(zi(a,rm,Pn)){rm=Qn;a=To;if(!zo){continue b}break a}if(zo){continue c}}if((Qn-To|0)<(rm-Qn|0)){si(To,Qn,Pn);a=Qn+4|0;continue c}si(Qn+4|0,rm,Pn);rm=Qn;a=To;continue b}Uo();F()}yi(To,To+4|0,rm+ -4|0,Pn);break a}if((Qn|0)==(pq|0)){break a}a=pq;zo=q[To>>2];if(pp>>>0<=zo>>>0){break e}while(1){mq=wp+(zo<<3)|0;while(1){oq=q[Qn>>2];if(pp>>>0<=oq>>>0){break e}nq=q[mq>>2];if(nq>>>0>=t[wp+(oq<<3)>>2]){Qn=Qn+4|0;if(pp>>>0>zo>>>0){continue}break e}break}while(1){a=a+ -4|0;zo=q[a>>2];if(pp>>>0<=zo>>>0){break e}if(nq>>>0<t[wp+(zo<<3)>>2]){continue}break}if(Qn>>>0>=a>>>0){To=Qn;continue d}q[Qn>>2]=zo;q[a>>2]=oq;Qn=Qn+4|0;zo=q[To>>2];if(pp>>>0>zo>>>0){continue}break}}break}break}break}Uo();F()}}function ti(a,rm){var Pn=0,sq=0,tq=0,uq=0,vq=0,wq=0,xq=0,yq=0,zq=0,Aq=0;sq=T-16|0;T=sq;td(q[a+12>>2],rm);a:{if(!q[a+12>>2]){break a}yq=sq+14|0;zq=sq+15|0;Aq=sq+16|0;wq=rm+4|0;while(1){b:{c:{tq=q[a>>2];uq=q[tq+(vq<<3)>>2];if(uq>>>0>=64){Pn=1;if(uq>>>0<16384){break c}Pn=2;if(uq>>>0<=4194303){break c}break a}Pn=0;if(uq){break c}while(1){d:{if(q[(tq+(Pn+vq<<3)|0)+8>>2]){uq=Pn;break d}uq=63;Pn=Pn+1|0;if((Pn|0)!=63){continue}}break}o[sq+15|0]=uq<<2|3;Pn=q[rm+20>>2];if((Pn|0)<0?1:(Pn|0)<=0?t[rm+16>>2]>0?0:1:0){Vb(rm,q[wq>>2],sq+15|0,Aq)}vq=uq+vq|0;break b}o[sq+14|0]=uq<<2|Pn;tq=q[rm+20>>2];if((tq|0)<0?1:(tq|0)<=0?t[rm+16>>2]>0?0:1:0){Vb(rm,q[wq>>2],sq+14|0,zq)}tq=0;if(!Pn){break b}while(1){tq=tq+1|0;o[sq+13|0]=uq>>>(tq<<3)+ -2;xq=q[rm+20>>2];if((xq|0)<0?1:(xq|0)<=0?t[rm+16>>2]>0?0:1:0){Vb(rm,q[wq>>2],sq+13|0,yq)}if((Pn|0)!=(tq|0)){continue}break}}vq=vq+1|0;if(vq>>>0<t[a+12>>2]){continue}break}}T=sq+16|0}function ui(a,rm,Bq){var Cq=0,Dq=0,Eq=0;Cq=T-16|0;T=Cq;Dq=a;o[Cq+15|0]=a&127;a:{if(!rm&a>>>0>=128|rm>>>0>0){o[Cq+15|0]=Dq|128;Dq=q[Bq+20>>2];Eq=0;if((Dq|0)>0?1:(Dq|0)>=0?t[Bq+16>>2]<=0?0:1:0){break a}Vb(Bq,q[Bq+4>>2],Cq+15|0,Cq+16|0);Eq=ui((rm&127)<<25|a>>>7,rm>>>7,Bq);break a}a=q[Bq+20>>2];Eq=0;if((a|0)>0?1:(a|0)>=0?t[Bq+16>>2]<1?0:1:0){break a}Vb(Bq,q[Bq+4>>2],Cq+15|0,Cq+16|0);Eq=1}Dq=Eq;T=Cq+16|0;return Dq}function vi(a,rm,Bq,Fq,Gq){var Hq=0,Iq=0,Jq=0,Kq=0;Jq=yi(a,rm,Bq,Gq);Hq=q[Gq>>2];Gq=q[Hq>>2];a:{Hq=q[Hq+4>>2]-Gq>>3;Iq=q[Fq>>2];if(Hq>>>0<=Iq>>>0){break a}Kq=q[Bq>>2];if(Hq>>>0<=Kq>>>0){break a}if(t[Gq+(Iq<<3)>>2]<t[Gq+(Kq<<3)>>2]){q[Bq>>2]=Iq;q[Fq>>2]=Kq;Fq=q[Bq>>2];if(Hq>>>0<=Fq>>>0){break a}Iq=q[rm>>2];if(Hq>>>0<=Iq>>>0){break a}if(t[Gq+(Fq<<3)>>2]>=t[Gq+(Iq<<3)>>2]){return Jq+1|0}q[rm>>2]=Fq;q[Bq>>2]=Iq;Bq=q[rm>>2];if(Hq>>>0<=Bq>>>0){break a}Fq=q[a>>2];if(Hq>>>0<=Fq>>>0){break a}if(t[Gq+(Bq<<3)>>2]>=t[Gq+(Fq<<3)>>2]){return Jq+2|0}q[a>>2]=Bq;q[rm>>2]=Fq;Jq=Jq+3|0}return Jq}Uo();F()}function wi(a,rm,Bq,Fq,Gq,Lq){var Mq=0,Nq=0,Oq=0,Pq=0;Oq=vi(a,rm,Bq,Fq,Lq);Mq=q[Lq>>2];Lq=q[Mq>>2];a:{Mq=q[Mq+4>>2]-Lq>>3;Nq=q[Gq>>2];if(Mq>>>0<=Nq>>>0){break a}Pq=q[Fq>>2];if(Mq>>>0<=Pq>>>0){break a}if(t[Lq+(Nq<<3)>>2]<t[Lq+(Pq<<3)>>2]){q[Fq>>2]=Nq;q[Gq>>2]=Pq;Gq=q[Fq>>2];if(Mq>>>0<=Gq>>>0){break a}Nq=q[Bq>>2];if(Mq>>>0<=Nq>>>0){break a}if(t[Lq+(Gq<<3)>>2]>=t[Lq+(Nq<<3)>>2]){return Oq+1|0}q[Bq>>2]=Gq;q[Fq>>2]=Nq;Fq=q[Bq>>2];if(Mq>>>0<=Fq>>>0){break a}Gq=q[rm>>2];if(Mq>>>0<=Gq>>>0){break a}if(t[Lq+(Fq<<3)>>2]>=t[Lq+(Gq<<3)>>2]){return Oq+2|0}q[rm>>2]=Fq;q[Bq>>2]=Gq;Bq=q[rm>>2];if(Mq>>>0<=Bq>>>0){break a}Fq=q[a>>2];if(Mq>>>0<=Fq>>>0){break a}if(t[Lq+(Bq<<3)>>2]>=t[Lq+(Fq<<3)>>2]){return Oq+3|0}q[a>>2]=Bq;q[rm>>2]=Fq;Oq=Oq+4|0}return Oq}Uo();F()}function xi(a,rm,Bq){var Fq=0,Gq=0,Lq=0,Qq=0,Rq=0,Sq=0,Tq=0,Uq=0;Gq=a+8|0;yi(a,a+4|0,Gq,Bq);a:{Fq=a+12|0;if((Fq|0)!=(rm|0)){Bq=q[Bq>>2];Lq=q[Bq>>2];Qq=q[Bq+4>>2]-Lq>>3;while(1){Rq=q[Fq>>2];if(Qq>>>0<=Rq>>>0){break a}Sq=Fq;Fq=q[Gq>>2];if(Qq>>>0<=Fq>>>0){break a}Tq=Sq;Uq=(Rq<<3)+Lq|0;if(t[Uq>>2]<t[(Fq<<3)+Lq>>2]){while(1){q[Tq>>2]=Fq;Bq=Gq;b:{if((Bq|0)==(a|0)){Bq=a;break b}Gq=Bq+ -4|0;Fq=q[Gq>>2];if(Qq>>>0<=Fq>>>0){break a}Tq=Bq;if(t[Uq>>2]<t[(Fq<<3)+Lq>>2]){continue}}break}q[Bq>>2]=Rq}Gq=Sq;Fq=Gq+4|0;if((Fq|0)!=(rm|0)){continue}break}}return}Uo();F()}function yi(a,rm,Bq,Vq){var Wq=0,Xq=0,Yq=0,Zq=0,_q=0,$q=0,ar=0,br=0;Wq=q[Vq>>2];Vq=q[Wq>>2];a:{Wq=q[Wq+4>>2]-Vq>>3;Zq=q[rm>>2];if(Wq>>>0<=Zq>>>0){break a}Yq=q[a>>2];if(Wq>>>0<=Yq>>>0){break a}_q=q[Bq>>2];if(Wq>>>0<=_q>>>0){break a}ar=q[Vq+(_q<<3)>>2];$q=q[Vq+(Zq<<3)>>2];br=Vq+(Yq<<3)|0;b:{c:{if($q>>>0>=t[br>>2]){Xq=0;if(ar>>>0>=$q>>>0){break b}q[rm>>2]=_q;q[Bq>>2]=Zq;Bq=q[rm>>2];if(Wq>>>0<=Bq>>>0){break a}Xq=Wq;Wq=q[a>>2];if(Xq>>>0<=Wq>>>0){break a}Xq=1;if(t[Vq+(Bq<<3)>>2]>=t[Vq+(Wq<<3)>>2]){break b}q[a>>2]=Bq;q[rm>>2]=Wq;break c}if(ar>>>0<$q>>>0){q[a>>2]=_q;q[Bq>>2]=Yq;return 1}q[a>>2]=Zq;q[rm>>2]=Yq;a=q[Bq>>2];if(Wq>>>0<=a>>>0){break a}Xq=1;if(t[Vq+(a<<3)>>2]>=t[br>>2]){break b}q[rm>>2]=a;q[Bq>>2]=Yq}Xq=2}return Xq}Uo();F()}function zi(a,rm,Bq){var Vq=0,cr=0,dr=0,er=0,fr=0,gr=0,hr=0,ir=0,jr=0;er=1;a:{b:{Vq=rm-a>>2;c:{if(Vq>>>0<=5){d:{switch(Vq-2|0){case 0:Vq=q[Bq>>2];Bq=q[Vq>>2];Vq=q[Vq+4>>2]-Bq>>3;dr=rm+ -4|0;rm=q[dr>>2];if(Vq>>>0<=rm>>>0){break b}cr=Vq;Vq=q[a>>2];if(cr>>>0<=Vq>>>0){break b}if(t[Bq+(rm<<3)>>2]>=t[Bq+(Vq<<3)>>2]){break c}q[a>>2]=rm;q[dr>>2]=Vq;return 1;case 1:yi(a,a+4|0,rm+ -4|0,Bq);return 1;case 2:vi(a,a+4|0,a+8|0,rm+ -4|0,Bq);return 1;case 3:break d;default:break c}}wi(a,a+4|0,a+8|0,a+12|0,rm+ -4|0,Bq);return 1}dr=a+8|0;yi(a,a+4|0,dr,Bq);cr=a+12|0;if((cr|0)==(rm|0)){break c}Bq=q[Bq>>2];fr=q[Bq>>2];gr=q[Bq+4>>2]-fr>>3;e:{while(1){Vq=cr;hr=q[Vq>>2];if(gr>>>0<=hr>>>0){break a}cr=q[dr>>2];if(gr>>>0<=cr>>>0){break a}er=Vq;ir=fr+(hr<<3)|0;if(t[ir>>2]<t[fr+(cr<<3)>>2]){while(1){q[er>>2]=cr;Bq=dr;f:{if((Bq|0)==(a|0)){Bq=a;break f}dr=Bq+ -4|0;cr=q[dr>>2];if(gr>>>0<=cr>>>0){break a}er=Bq;if(t[ir>>2]<t[fr+(cr<<3)>>2]){continue}}break}q[Bq>>2]=hr;jr=jr+1|0;if((jr|0)==8){break e}}dr=Vq;cr=Vq+4|0;if((cr|0)!=(rm|0)){continue}break}return 1}er=(Vq+4|0)==(rm|0)}return er}Uo();F()}Uo();F()}function Ai(a,rm,Bq,kr){var lr=0,mr=0,nr=0,or=0,pr=0,qr=0,rr=0,sr=0,tr=0,ur=0,vr=0,wr=0,xr=0,yr=0,zr=0,Ar=0;rr=T-32|0;T=rr;if((Bq|0)>0){while(1){wr=or;or=(lr<<3)+rm|0;qr=q[or+4>>2];nr=q[or>>2];or=!(qr|nr)?wr:lr;mr=mr+qr|0;qr=nr+sr|0;if(qr>>>0<nr>>>0){mr=mr+1|0}sr=qr;lr=lr+1|0;if((lr|0)!=(Bq|0)){continue}break}}qr=or+1|0;q[a+12>>2]=qr;nr=q[a>>2];Bq=q[a+4>>2]-nr>>3;a:{if(qr>>>0>Bq>>>0){Uh(a,qr-Bq|0);break a}if(qr>>>0>=Bq>>>0){break a}q[a+4>>2]=nr+(qr<<3)}b:{c:{d:{e:{if((or|0)>=0){vr=+(sr>>>0)+4294967296*+(mr>>>0);mr=q[a>>2];lr=0;while(1){nr=lr<<3;sr=nr+rm|0;Bq=q[sr+4>>2];sr=q[sr>>2];xr=(sr|0)!=0|(Bq|0)!=0;nr=mr+nr|0;pr=(+(sr>>>0)+4294967296*+(Bq>>>0))/vr*4096+.5;f:{if(pr<4294967296&pr>=0){Bq=~~pr>>>0;break f}Bq=0}Bq=xr?Bq?Bq:1:Bq;q[nr>>2]=Bq;tr=Bq+tr|0;Bq=(lr|0)==(or|0);lr=lr+1|0;if(!Bq){continue}break}if((tr|0)==4096){break e}}q[rr+16>>2]=0;q[rr+8>>2]=0;q[rr+12>>2]=0;nr=0;if(qr){if(qr>>>0>=1073741824){break b}Bq=qr<<2;nr=zo(Bq);q[rr+8>>2]=nr;ur=Bq+nr|0;q[rr+16>>2]=ur;wp(nr,0,Bq);q[rr+12>>2]=ur}if((or|0)>-1){lr=0;while(1){q[(lr<<2)+nr>>2]=lr;Bq=(lr|0)==(or|0);lr=lr+1|0;if(!Bq){continue}break}}q[rr+24>>2]=a;Xi(nr,ur,rr+24|0);g:{if((tr|0)<4096){Bq=q[a>>2]+(q[q[rr+12>>2]+ -4>>2]<<3)|0;q[Bq>>2]=(q[Bq>>2]-tr|0)+4096;lr=0;break g}Bq=tr+ -4096|0;qr=q[rr+8>>2];sr=(or|0)<1;while(1){h:{if(sr){break h}pr=4096/+(tr|0);ur=q[a>>2];nr=or;while(1){lr=ur+(q[(nr<<2)+qr>>2]<<3)|0;mr=q[lr>>2];if(mr>>>0<=1){if((nr|0)!=(or|0)){break h}lr=1;break g}xr=mr+ -1|0;wr=lr;zr=mr;Ar=Bq;lr=mr;vr=C(pr*+(mr>>>0));i:{if(y(vr)<2147483648){yr=~~vr;break i}yr=-2147483648}lr=lr-yr|0;lr=lr?lr:1;mr=(lr|0)<(mr|0)?lr:xr;mr=(mr|0)>(Bq|0)?Ar:mr;q[wr>>2]=zr-mr;Bq=Bq-mr|0;tr=tr-mr|0;if((tr|0)==4096){tr=4096;break h}mr=(nr|0)>1;nr=nr+ -1|0;if(mr){continue}break}}lr=0;if((Bq|0)>0){continue}break}}Bq=q[rr+8>>2];if(Bq){q[rr+12>>2]=Bq;pp(Bq)}if(lr){break c}if((or|0)>=0){break d}break c}if((or|0)<0){break c}}mr=q[a>>2];lr=0;Bq=0;while(1){nr=mr+(lr<<3)|0;q[nr+4>>2]=Bq;Bq=q[nr>>2]+Bq|0;nr=(lr|0)==(or|0);lr=lr+1|0;if(!nr){continue}break}if((Bq|0)!=4096){break c}lr=0;pr=0;if((or|0)>=0){Bq=q[a>>2];while(1){mr=lr<<3;nr=q[mr+Bq>>2];if(nr){mr=rm+mr|0;pr=pr+sp(+(nr>>>0)*.000244140625)*(+t[mr>>2]+4294967296*+t[mr+4>>2])}mr=(lr|0)==(or|0);lr=lr+1|0;if(!mr){continue}break}}rm=a;Bq=a;pr=D(-pr);j:{if(pr<0x10000000000000000&pr>=0){mr=y(pr)>=1?pr>0?~~A(C(pr/4294967296),4294967295)>>>0:~~D((pr- +(~~pr>>>0>>>0))/4294967296)>>>0:0;or=~~pr>>>0;break j}mr=0;or=0}q[Bq+16>>2]=or;q[rm+20>>2]=mr;ti(a,kr)}T=rr+32|0;return}To();F()}function Bi(a,rm,Bq,kr){var 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;Hr=T-32|0;T=Hr;if((Bq|0)>0){while(1){Mr=Er;Er=(Br<<3)+rm|0;Gr=q[Er+4>>2];Dr=q[Er>>2];Er=!(Gr|Dr)?Mr:Br;Cr=Cr+Gr|0;Gr=Dr+Ir|0;if(Gr>>>0<Dr>>>0){Cr=Cr+1|0}Ir=Gr;Br=Br+1|0;if((Br|0)!=(Bq|0)){continue}break}}Gr=Er+1|0;q[a+12>>2]=Gr;Dr=q[a>>2];Bq=q[a+4>>2]-Dr>>3;a:{if(Gr>>>0>Bq>>>0){Uh(a,Gr-Bq|0);break a}if(Gr>>>0>=Bq>>>0){break a}q[a+4>>2]=Dr+(Gr<<3)}b:{c:{d:{e:{if((Er|0)>=0){Lr=+(Ir>>>0)+4294967296*+(Cr>>>0);Cr=q[a>>2];Br=0;while(1){Dr=Br<<3;Ir=Dr+rm|0;Bq=q[Ir+4>>2];Ir=q[Ir>>2];Nr=(Ir|0)!=0|(Bq|0)!=0;Dr=Cr+Dr|0;Fr=(+(Ir>>>0)+4294967296*+(Bq>>>0))/Lr*4096+.5;f:{if(Fr<4294967296&Fr>=0){Bq=~~Fr>>>0;break f}Bq=0}Bq=Nr?Bq?Bq:1:Bq;q[Dr>>2]=Bq;Jr=Bq+Jr|0;Bq=(Br|0)==(Er|0);Br=Br+1|0;if(!Bq){continue}break}if((Jr|0)==4096){break e}}q[Hr+16>>2]=0;q[Hr+8>>2]=0;q[Hr+12>>2]=0;Dr=0;if(Gr){if(Gr>>>0>=1073741824){break b}Bq=Gr<<2;Dr=zo(Bq);q[Hr+8>>2]=Dr;Kr=Bq+Dr|0;q[Hr+16>>2]=Kr;wp(Dr,0,Bq);q[Hr+12>>2]=Kr}if((Er|0)>-1){Br=0;while(1){q[(Br<<2)+Dr>>2]=Br;Bq=(Br|0)==(Er|0);Br=Br+1|0;if(!Bq){continue}break}}q[Hr+24>>2]=a;Yi(Dr,Kr,Hr+24|0);g:{if((Jr|0)<4096){Bq=q[a>>2]+(q[q[Hr+12>>2]+ -4>>2]<<3)|0;q[Bq>>2]=(q[Bq>>2]-Jr|0)+4096;Br=0;break g}Bq=Jr+ -4096|0;Gr=q[Hr+8>>2];Ir=(Er|0)<1;while(1){h:{if(Ir){break h}Fr=4096/+(Jr|0);Kr=q[a>>2];Dr=Er;while(1){Br=Kr+(q[(Dr<<2)+Gr>>2]<<3)|0;Cr=q[Br>>2];if(Cr>>>0<=1){if((Dr|0)!=(Er|0)){break h}Br=1;break g}Nr=Cr+ -1|0;Mr=Br;Pr=Cr;Qr=Bq;Br=Cr;Lr=C(Fr*+(Cr>>>0));i:{if(y(Lr)<2147483648){Or=~~Lr;break i}Or=-2147483648}Br=Br-Or|0;Br=Br?Br:1;Cr=(Br|0)<(Cr|0)?Br:Nr;Cr=(Cr|0)>(Bq|0)?Qr:Cr;q[Mr>>2]=Pr-Cr;Bq=Bq-Cr|0;Jr=Jr-Cr|0;if((Jr|0)==4096){Jr=4096;break h}Cr=(Dr|0)>1;Dr=Dr+ -1|0;if(Cr){continue}break}}Br=0;if((Bq|0)>0){continue}break}}Bq=q[Hr+8>>2];if(Bq){q[Hr+12>>2]=Bq;pp(Bq)}if(Br){break c}if((Er|0)>=0){break d}break c}if((Er|0)<0){break c}}Cr=q[a>>2];Br=0;Bq=0;while(1){Dr=Cr+(Br<<3)|0;q[Dr+4>>2]=Bq;Bq=q[Dr>>2]+Bq|0;Dr=(Br|0)==(Er|0);Br=Br+1|0;if(!Dr){continue}break}if((Bq|0)!=4096){break c}Br=0;Fr=0;if((Er|0)>=0){Bq=q[a>>2];while(1){Cr=Br<<3;Dr=q[Cr+Bq>>2];if(Dr){Cr=rm+Cr|0;Fr=Fr+sp(+(Dr>>>0)*.000244140625)*(+t[Cr>>2]+4294967296*+t[Cr+4>>2])}Cr=(Br|0)==(Er|0);Br=Br+1|0;if(!Cr){continue}break}}rm=a;Bq=a;Fr=D(-Fr);j:{if(Fr<0x10000000000000000&Fr>=0){Cr=y(Fr)>=1?Fr>0?~~A(C(Fr/4294967296),4294967295)>>>0:~~D((Fr- +(~~Fr>>>0>>>0))/4294967296)>>>0:0;Er=~~Fr>>>0;break j}Cr=0;Er=0}q[Bq+16>>2]=Er;q[rm+20>>2]=Cr;ti(a,kr)}T=Hr+32|0;return}To();F()}function Ci(a,rm,Bq,kr){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,es=0;Xr=T-32|0;T=Xr;if((Bq|0)>0){while(1){as=Ur;Ur=(Rr<<3)+rm|0;Wr=q[Ur+4>>2];Tr=q[Ur>>2];Ur=!(Wr|Tr)?as:Rr;Sr=Sr+Wr|0;Wr=Tr+Yr|0;if(Wr>>>0<Tr>>>0){Sr=Sr+1|0}Yr=Wr;Rr=Rr+1|0;if((Rr|0)!=(Bq|0)){continue}break}}Wr=Ur+1|0;q[a+12>>2]=Wr;Tr=q[a>>2];Bq=q[a+4>>2]-Tr>>3;a:{if(Wr>>>0>Bq>>>0){Uh(a,Wr-Bq|0);break a}if(Wr>>>0>=Bq>>>0){break a}q[a+4>>2]=Tr+(Wr<<3)}b:{c:{d:{e:{if((Ur|0)>=0){$r=+(Yr>>>0)+4294967296*+(Sr>>>0);Sr=q[a>>2];Rr=0;while(1){Tr=Rr<<3;Yr=Tr+rm|0;Bq=q[Yr+4>>2];Yr=q[Yr>>2];bs=(Yr|0)!=0|(Bq|0)!=0;Tr=Sr+Tr|0;Vr=(+(Yr>>>0)+4294967296*+(Bq>>>0))/$r*4096+.5;f:{if(Vr<4294967296&Vr>=0){Bq=~~Vr>>>0;break f}Bq=0}Bq=bs?Bq?Bq:1:Bq;q[Tr>>2]=Bq;Zr=Bq+Zr|0;Bq=(Rr|0)==(Ur|0);Rr=Rr+1|0;if(!Bq){continue}break}if((Zr|0)==4096){break e}}q[Xr+16>>2]=0;q[Xr+8>>2]=0;q[Xr+12>>2]=0;Tr=0;if(Wr){if(Wr>>>0>=1073741824){break b}Bq=Wr<<2;Tr=zo(Bq);q[Xr+8>>2]=Tr;_r=Bq+Tr|0;q[Xr+16>>2]=_r;wp(Tr,0,Bq);q[Xr+12>>2]=_r}if((Ur|0)>-1){Rr=0;while(1){q[(Rr<<2)+Tr>>2]=Rr;Bq=(Rr|0)==(Ur|0);Rr=Rr+1|0;if(!Bq){continue}break}}q[Xr+24>>2]=a;Zi(Tr,_r,Xr+24|0);g:{if((Zr|0)<4096){Bq=q[a>>2]+(q[q[Xr+12>>2]+ -4>>2]<<3)|0;q[Bq>>2]=(q[Bq>>2]-Zr|0)+4096;Rr=0;break g}Bq=Zr+ -4096|0;Wr=q[Xr+8>>2];Yr=(Ur|0)<1;while(1){h:{if(Yr){break h}Vr=4096/+(Zr|0);_r=q[a>>2];Tr=Ur;while(1){Rr=_r+(q[(Tr<<2)+Wr>>2]<<3)|0;Sr=q[Rr>>2];if(Sr>>>0<=1){if((Tr|0)!=(Ur|0)){break h}Rr=1;break g}bs=Sr+ -1|0;as=Rr;ds=Sr;es=Bq;Rr=Sr;$r=C(Vr*+(Sr>>>0));i:{if(y($r)<2147483648){cs=~~$r;break i}cs=-2147483648}Rr=Rr-cs|0;Rr=Rr?Rr:1;Sr=(Rr|0)<(Sr|0)?Rr:bs;Sr=(Sr|0)>(Bq|0)?es:Sr;q[as>>2]=ds-Sr;Bq=Bq-Sr|0;Zr=Zr-Sr|0;if((Zr|0)==4096){Zr=4096;break h}Sr=(Tr|0)>1;Tr=Tr+ -1|0;if(Sr){continue}break}}Rr=0;if((Bq|0)>0){continue}break}}Bq=q[Xr+8>>2];if(Bq){q[Xr+12>>2]=Bq;pp(Bq)}if(Rr){break c}if((Ur|0)>=0){break d}break c}if((Ur|0)<0){break c}}Sr=q[a>>2];Rr=0;Bq=0;while(1){Tr=Sr+(Rr<<3)|0;q[Tr+4>>2]=Bq;Bq=q[Tr>>2]+Bq|0;Tr=(Rr|0)==(Ur|0);Rr=Rr+1|0;if(!Tr){continue}break}if((Bq|0)!=4096){break c}Rr=0;Vr=0;if((Ur|0)>=0){Bq=q[a>>2];while(1){Sr=Rr<<3;Tr=q[Sr+Bq>>2];if(Tr){Sr=rm+Sr|0;Vr=Vr+sp(+(Tr>>>0)*.000244140625)*(+t[Sr>>2]+4294967296*+t[Sr+4>>2])}Sr=(Rr|0)==(Ur|0);Rr=Rr+1|0;if(!Sr){continue}break}}rm=a;Bq=a;Vr=D(-Vr);j:{if(Vr<0x10000000000000000&Vr>=0){Sr=y(Vr)>=1?Vr>0?~~A(C(Vr/4294967296),4294967295)>>>0:~~D((Vr- +(~~Vr>>>0>>>0))/4294967296)>>>0:0;Ur=~~Vr>>>0;break j}Sr=0;Ur=0}q[Bq+16>>2]=Ur;q[rm+20>>2]=Sr;ti(a,kr)}T=Xr+32|0;return}To();F()}function Di(a,rm,Bq,kr){var 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;ls=T-32|0;T=ls;if((Bq|0)>0){while(1){qs=is;is=(fs<<3)+rm|0;ks=q[is+4>>2];hs=q[is>>2];is=!(ks|hs)?qs:fs;gs=gs+ks|0;ks=hs+ms|0;if(ks>>>0<hs>>>0){gs=gs+1|0}ms=ks;fs=fs+1|0;if((fs|0)!=(Bq|0)){continue}break}}ks=is+1|0;q[a+12>>2]=ks;hs=q[a>>2];Bq=q[a+4>>2]-hs>>3;a:{if(ks>>>0>Bq>>>0){Uh(a,ks-Bq|0);break a}if(ks>>>0>=Bq>>>0){break a}q[a+4>>2]=hs+(ks<<3)}b:{c:{d:{e:{if((is|0)>=0){ps=+(ms>>>0)+4294967296*+(gs>>>0);gs=q[a>>2];fs=0;while(1){hs=fs<<3;ms=hs+rm|0;Bq=q[ms+4>>2];ms=q[ms>>2];rs=(ms|0)!=0|(Bq|0)!=0;hs=gs+hs|0;js=(+(ms>>>0)+4294967296*+(Bq>>>0))/ps*4096+.5;f:{if(js<4294967296&js>=0){Bq=~~js>>>0;break f}Bq=0}Bq=rs?Bq?Bq:1:Bq;q[hs>>2]=Bq;ns=Bq+ns|0;Bq=(fs|0)==(is|0);fs=fs+1|0;if(!Bq){continue}break}if((ns|0)==4096){break e}}q[ls+16>>2]=0;q[ls+8>>2]=0;q[ls+12>>2]=0;hs=0;if(ks){if(ks>>>0>=1073741824){break b}Bq=ks<<2;hs=zo(Bq);q[ls+8>>2]=hs;os=Bq+hs|0;q[ls+16>>2]=os;wp(hs,0,Bq);q[ls+12>>2]=os}if((is|0)>-1){fs=0;while(1){q[(fs<<2)+hs>>2]=fs;Bq=(fs|0)==(is|0);fs=fs+1|0;if(!Bq){continue}break}}q[ls+24>>2]=a;_i(hs,os,ls+24|0);g:{if((ns|0)<4096){Bq=q[a>>2]+(q[q[ls+12>>2]+ -4>>2]<<3)|0;q[Bq>>2]=(q[Bq>>2]-ns|0)+4096;fs=0;break g}Bq=ns+ -4096|0;ks=q[ls+8>>2];ms=(is|0)<1;while(1){h:{if(ms){break h}js=4096/+(ns|0);os=q[a>>2];hs=is;while(1){fs=os+(q[(hs<<2)+ks>>2]<<3)|0;gs=q[fs>>2];if(gs>>>0<=1){if((hs|0)!=(is|0)){break h}fs=1;break g}rs=gs+ -1|0;qs=fs;ts=gs;us=Bq;fs=gs;ps=C(js*+(gs>>>0));i:{if(y(ps)<2147483648){ss=~~ps;break i}ss=-2147483648}fs=fs-ss|0;fs=fs?fs:1;gs=(fs|0)<(gs|0)?fs:rs;gs=(gs|0)>(Bq|0)?us:gs;q[qs>>2]=ts-gs;Bq=Bq-gs|0;ns=ns-gs|0;if((ns|0)==4096){ns=4096;break h}gs=(hs|0)>1;hs=hs+ -1|0;if(gs){continue}break}}fs=0;if((Bq|0)>0){continue}break}}Bq=q[ls+8>>2];if(Bq){q[ls+12>>2]=Bq;pp(Bq)}if(fs){break c}if((is|0)>=0){break d}break c}if((is|0)<0){break c}}gs=q[a>>2];fs=0;Bq=0;while(1){hs=gs+(fs<<3)|0;q[hs+4>>2]=Bq;Bq=q[hs>>2]+Bq|0;hs=(fs|0)==(is|0);fs=fs+1|0;if(!hs){continue}break}if((Bq|0)!=4096){break c}fs=0;js=0;if((is|0)>=0){Bq=q[a>>2];while(1){gs=fs<<3;hs=q[gs+Bq>>2];if(hs){gs=rm+gs|0;js=js+sp(+(hs>>>0)*.000244140625)*(+t[gs>>2]+4294967296*+t[gs+4>>2])}gs=(fs|0)==(is|0);fs=fs+1|0;if(!gs){continue}break}}rm=a;Bq=a;js=D(-js);j:{if(js<0x10000000000000000&js>=0){gs=y(js)>=1?js>0?~~A(C(js/4294967296),4294967295)>>>0:~~D((js- +(~~js>>>0>>>0))/4294967296)>>>0:0;is=~~js>>>0;break j}gs=0;is=0}q[Bq+16>>2]=is;q[rm+20>>2]=gs;ti(a,kr)}T=ls+32|0;return}To();F()}function Ei(a,rm,Bq,kr){var 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;Bs=T-32|0;T=Bs;if((Bq|0)>0){while(1){Gs=ys;ys=(vs<<3)+rm|0;As=q[ys+4>>2];xs=q[ys>>2];ys=!(As|xs)?Gs:vs;ws=ws+As|0;As=xs+Cs|0;if(As>>>0<xs>>>0){ws=ws+1|0}Cs=As;vs=vs+1|0;if((vs|0)!=(Bq|0)){continue}break}}As=ys+1|0;q[a+12>>2]=As;xs=q[a>>2];Bq=q[a+4>>2]-xs>>3;a:{if(As>>>0>Bq>>>0){Uh(a,As-Bq|0);break a}if(As>>>0>=Bq>>>0){break a}q[a+4>>2]=xs+(As<<3)}b:{c:{d:{e:{if((ys|0)>=0){Fs=+(Cs>>>0)+4294967296*+(ws>>>0);ws=q[a>>2];vs=0;while(1){xs=vs<<3;Cs=xs+rm|0;Bq=q[Cs+4>>2];Cs=q[Cs>>2];Hs=(Cs|0)!=0|(Bq|0)!=0;xs=ws+xs|0;zs=(+(Cs>>>0)+4294967296*+(Bq>>>0))/Fs*4096+.5;f:{if(zs<4294967296&zs>=0){Bq=~~zs>>>0;break f}Bq=0}Bq=Hs?Bq?Bq:1:Bq;q[xs>>2]=Bq;Ds=Bq+Ds|0;Bq=(vs|0)==(ys|0);vs=vs+1|0;if(!Bq){continue}break}if((Ds|0)==4096){break e}}q[Bs+16>>2]=0;q[Bs+8>>2]=0;q[Bs+12>>2]=0;xs=0;if(As){if(As>>>0>=1073741824){break b}Bq=As<<2;xs=zo(Bq);q[Bs+8>>2]=xs;Es=Bq+xs|0;q[Bs+16>>2]=Es;wp(xs,0,Bq);q[Bs+12>>2]=Es}if((ys|0)>-1){vs=0;while(1){q[(vs<<2)+xs>>2]=vs;Bq=(vs|0)==(ys|0);vs=vs+1|0;if(!Bq){continue}break}}q[Bs+24>>2]=a;$i(xs,Es,Bs+24|0);g:{if((Ds|0)<4096){Bq=q[a>>2]+(q[q[Bs+12>>2]+ -4>>2]<<3)|0;q[Bq>>2]=(q[Bq>>2]-Ds|0)+4096;vs=0;break g}Bq=Ds+ -4096|0;As=q[Bs+8>>2];Cs=(ys|0)<1;while(1){h:{if(Cs){break h}zs=4096/+(Ds|0);Es=q[a>>2];xs=ys;while(1){vs=Es+(q[(xs<<2)+As>>2]<<3)|0;ws=q[vs>>2];if(ws>>>0<=1){if((xs|0)!=(ys|0)){break h}vs=1;break g}Hs=ws+ -1|0;Gs=vs;Js=ws;Ks=Bq;vs=ws;Fs=C(zs*+(ws>>>0));i:{if(y(Fs)<2147483648){Is=~~Fs;break i}Is=-2147483648}vs=vs-Is|0;vs=vs?vs:1;ws=(vs|0)<(ws|0)?vs:Hs;ws=(ws|0)>(Bq|0)?Ks:ws;q[Gs>>2]=Js-ws;Bq=Bq-ws|0;Ds=Ds-ws|0;if((Ds|0)==4096){Ds=4096;break h}ws=(xs|0)>1;xs=xs+ -1|0;if(ws){continue}break}}vs=0;if((Bq|0)>0){continue}break}}Bq=q[Bs+8>>2];if(Bq){q[Bs+12>>2]=Bq;pp(Bq)}if(vs){break c}if((ys|0)>=0){break d}break c}if((ys|0)<0){break c}}ws=q[a>>2];vs=0;Bq=0;while(1){xs=ws+(vs<<3)|0;q[xs+4>>2]=Bq;Bq=q[xs>>2]+Bq|0;xs=(vs|0)==(ys|0);vs=vs+1|0;if(!xs){continue}break}if((Bq|0)!=4096){break c}vs=0;zs=0;if((ys|0)>=0){Bq=q[a>>2];while(1){ws=vs<<3;xs=q[ws+Bq>>2];if(xs){ws=rm+ws|0;zs=zs+sp(+(xs>>>0)*.000244140625)*(+t[ws>>2]+4294967296*+t[ws+4>>2])}ws=(vs|0)==(ys|0);vs=vs+1|0;if(!ws){continue}break}}rm=a;Bq=a;zs=D(-zs);j:{if(zs<0x10000000000000000&zs>=0){ws=y(zs)>=1?zs>0?~~A(C(zs/4294967296),4294967295)>>>0:~~D((zs- +(~~zs>>>0>>>0))/4294967296)>>>0:0;ys=~~zs>>>0;break j}ws=0;ys=0}q[Bq+16>>2]=ys;q[rm+20>>2]=ws;ti(a,kr)}T=Bs+32|0;return}To();F()}function Fi(a,rm,Bq,kr){var 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;Rs=T-32|0;T=Rs;if((Bq|0)>0){while(1){Ws=Os;Os=(Ls<<3)+rm|0;Qs=q[Os+4>>2];Ns=q[Os>>2];Os=!(Qs|Ns)?Ws:Ls;Ms=Ms+Qs|0;Qs=Ns+Ss|0;if(Qs>>>0<Ns>>>0){Ms=Ms+1|0}Ss=Qs;Ls=Ls+1|0;if((Ls|0)!=(Bq|0)){continue}break}}Qs=Os+1|0;q[a+12>>2]=Qs;Ns=q[a>>2];Bq=q[a+4>>2]-Ns>>3;a:{if(Qs>>>0>Bq>>>0){Uh(a,Qs-Bq|0);break a}if(Qs>>>0>=Bq>>>0){break a}q[a+4>>2]=Ns+(Qs<<3)}b:{c:{d:{e:{if((Os|0)>=0){Vs=+(Ss>>>0)+4294967296*+(Ms>>>0);Ms=q[a>>2];Ls=0;while(1){Ns=Ls<<3;Ss=Ns+rm|0;Bq=q[Ss+4>>2];Ss=q[Ss>>2];Xs=(Ss|0)!=0|(Bq|0)!=0;Ns=Ms+Ns|0;Ps=(+(Ss>>>0)+4294967296*+(Bq>>>0))/Vs*4096+.5;f:{if(Ps<4294967296&Ps>=0){Bq=~~Ps>>>0;break f}Bq=0}Bq=Xs?Bq?Bq:1:Bq;q[Ns>>2]=Bq;Ts=Bq+Ts|0;Bq=(Ls|0)==(Os|0);Ls=Ls+1|0;if(!Bq){continue}break}if((Ts|0)==4096){break e}}q[Rs+16>>2]=0;q[Rs+8>>2]=0;q[Rs+12>>2]=0;Ns=0;if(Qs){if(Qs>>>0>=1073741824){break b}Bq=Qs<<2;Ns=zo(Bq);q[Rs+8>>2]=Ns;Us=Bq+Ns|0;q[Rs+16>>2]=Us;wp(Ns,0,Bq);q[Rs+12>>2]=Us}if((Os|0)>-1){Ls=0;while(1){q[(Ls<<2)+Ns>>2]=Ls;Bq=(Ls|0)==(Os|0);Ls=Ls+1|0;if(!Bq){continue}break}}q[Rs+24>>2]=a;aj(Ns,Us,Rs+24|0);g:{if((Ts|0)<4096){Bq=q[a>>2]+(q[q[Rs+12>>2]+ -4>>2]<<3)|0;q[Bq>>2]=(q[Bq>>2]-Ts|0)+4096;Ls=0;break g}Bq=Ts+ -4096|0;Qs=q[Rs+8>>2];Ss=(Os|0)<1;while(1){h:{if(Ss){break h}Ps=4096/+(Ts|0);Us=q[a>>2];Ns=Os;while(1){Ls=Us+(q[(Ns<<2)+Qs>>2]<<3)|0;Ms=q[Ls>>2];if(Ms>>>0<=1){if((Ns|0)!=(Os|0)){break h}Ls=1;break g}Xs=Ms+ -1|0;Ws=Ls;Zs=Ms;_s=Bq;Ls=Ms;Vs=C(Ps*+(Ms>>>0));i:{if(y(Vs)<2147483648){Ys=~~Vs;break i}Ys=-2147483648}Ls=Ls-Ys|0;Ls=Ls?Ls:1;Ms=(Ls|0)<(Ms|0)?Ls:Xs;Ms=(Ms|0)>(Bq|0)?_s:Ms;q[Ws>>2]=Zs-Ms;Bq=Bq-Ms|0;Ts=Ts-Ms|0;if((Ts|0)==4096){Ts=4096;break h}Ms=(Ns|0)>1;Ns=Ns+ -1|0;if(Ms){continue}break}}Ls=0;if((Bq|0)>0){continue}break}}Bq=q[Rs+8>>2];if(Bq){q[Rs+12>>2]=Bq;pp(Bq)}if(Ls){break c}if((Os|0)>=0){break d}break c}if((Os|0)<0){break c}}Ms=q[a>>2];Ls=0;Bq=0;while(1){Ns=Ms+(Ls<<3)|0;q[Ns+4>>2]=Bq;Bq=q[Ns>>2]+Bq|0;Ns=(Ls|0)==(Os|0);Ls=Ls+1|0;if(!Ns){continue}break}if((Bq|0)!=4096){break c}Ls=0;Ps=0;if((Os|0)>=0){Bq=q[a>>2];while(1){Ms=Ls<<3;Ns=q[Ms+Bq>>2];if(Ns){Ms=rm+Ms|0;Ps=Ps+sp(+(Ns>>>0)*.000244140625)*(+t[Ms>>2]+4294967296*+t[Ms+4>>2])}Ms=(Ls|0)==(Os|0);Ls=Ls+1|0;if(!Ms){continue}break}}rm=a;Bq=a;Ps=D(-Ps);j:{if(Ps<0x10000000000000000&Ps>=0){Ms=y(Ps)>=1?Ps>0?~~A(C(Ps/4294967296),4294967295)>>>0:~~D((Ps- +(~~Ps>>>0>>>0))/4294967296)>>>0:0;Os=~~Ps>>>0;break j}Ms=0;Os=0}q[Bq+16>>2]=Os;q[rm+20>>2]=Ms;ti(a,kr)}T=Rs+32|0;return}To();F()}function Gi(a,rm,Bq,kr){var $s=0,at=0,bt=0,ct=0,dt=0,et=0,ft=0,gt=0,ht=0,it=0,jt=0,kt=0,lt=0,mt=0,nt=0,ot=0;ft=T-32|0;T=ft;if((Bq|0)>0){while(1){kt=ct;ct=($s<<3)+rm|0;et=q[ct+4>>2];bt=q[ct>>2];ct=!(et|bt)?kt:$s;at=at+et|0;et=bt+gt|0;if(et>>>0<bt>>>0){at=at+1|0}gt=et;$s=$s+1|0;if(($s|0)!=(Bq|0)){continue}break}}et=ct+1|0;q[a+12>>2]=et;bt=q[a>>2];Bq=q[a+4>>2]-bt>>3;a:{if(et>>>0>Bq>>>0){Uh(a,et-Bq|0);break a}if(et>>>0>=Bq>>>0){break a}q[a+4>>2]=bt+(et<<3)}b:{c:{d:{e:{if((ct|0)>=0){jt=+(gt>>>0)+4294967296*+(at>>>0);at=q[a>>2];$s=0;while(1){bt=$s<<3;gt=bt+rm|0;Bq=q[gt+4>>2];gt=q[gt>>2];lt=(gt|0)!=0|(Bq|0)!=0;bt=at+bt|0;dt=(+(gt>>>0)+4294967296*+(Bq>>>0))/jt*4096+.5;f:{if(dt<4294967296&dt>=0){Bq=~~dt>>>0;break f}Bq=0}Bq=lt?Bq?Bq:1:Bq;q[bt>>2]=Bq;ht=Bq+ht|0;Bq=($s|0)==(ct|0);$s=$s+1|0;if(!Bq){continue}break}if((ht|0)==4096){break e}}q[ft+16>>2]=0;q[ft+8>>2]=0;q[ft+12>>2]=0;bt=0;if(et){if(et>>>0>=1073741824){break b}Bq=et<<2;bt=zo(Bq);q[ft+8>>2]=bt;it=Bq+bt|0;q[ft+16>>2]=it;wp(bt,0,Bq);q[ft+12>>2]=it}if((ct|0)>-1){$s=0;while(1){q[($s<<2)+bt>>2]=$s;Bq=($s|0)==(ct|0);$s=$s+1|0;if(!Bq){continue}break}}q[ft+24>>2]=a;bj(bt,it,ft+24|0);g:{if((ht|0)<4096){Bq=q[a>>2]+(q[q[ft+12>>2]+ -4>>2]<<3)|0;q[Bq>>2]=(q[Bq>>2]-ht|0)+4096;$s=0;break g}Bq=ht+ -4096|0;et=q[ft+8>>2];gt=(ct|0)<1;while(1){h:{if(gt){break h}dt=4096/+(ht|0);it=q[a>>2];bt=ct;while(1){$s=it+(q[(bt<<2)+et>>2]<<3)|0;at=q[$s>>2];if(at>>>0<=1){if((bt|0)!=(ct|0)){break h}$s=1;break g}lt=at+ -1|0;kt=$s;nt=at;ot=Bq;$s=at;jt=C(dt*+(at>>>0));i:{if(y(jt)<2147483648){mt=~~jt;break i}mt=-2147483648}$s=$s-mt|0;$s=$s?$s:1;at=($s|0)<(at|0)?$s:lt;at=(at|0)>(Bq|0)?ot:at;q[kt>>2]=nt-at;Bq=Bq-at|0;ht=ht-at|0;if((ht|0)==4096){ht=4096;break h}at=(bt|0)>1;bt=bt+ -1|0;if(at){continue}break}}$s=0;if((Bq|0)>0){continue}break}}Bq=q[ft+8>>2];if(Bq){q[ft+12>>2]=Bq;pp(Bq)}if($s){break c}if((ct|0)>=0){break d}break c}if((ct|0)<0){break c}}at=q[a>>2];$s=0;Bq=0;while(1){bt=at+($s<<3)|0;q[bt+4>>2]=Bq;Bq=q[bt>>2]+Bq|0;bt=($s|0)==(ct|0);$s=$s+1|0;if(!bt){continue}break}if((Bq|0)!=4096){break c}$s=0;dt=0;if((ct|0)>=0){Bq=q[a>>2];while(1){at=$s<<3;bt=q[at+Bq>>2];if(bt){at=rm+at|0;dt=dt+sp(+(bt>>>0)*.000244140625)*(+t[at>>2]+4294967296*+t[at+4>>2])}at=($s|0)==(ct|0);$s=$s+1|0;if(!at){continue}break}}rm=a;Bq=a;dt=D(-dt);j:{if(dt<0x10000000000000000&dt>=0){at=y(dt)>=1?dt>0?~~A(C(dt/4294967296),4294967295)>>>0:~~D((dt- +(~~dt>>>0>>>0))/4294967296)>>>0:0;ct=~~dt>>>0;break j}at=0;ct=0}q[Bq+16>>2]=ct;q[rm+20>>2]=at;ti(a,kr)}T=ft+32|0;return}To();F()}function Hi(a,rm,Bq,kr){var pt=0,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;vt=T-32|0;T=vt;if((Bq|0)>0){while(1){At=st;st=(pt<<3)+rm|0;ut=q[st+4>>2];rt=q[st>>2];st=!(ut|rt)?At:pt;qt=qt+ut|0;ut=rt+wt|0;if(ut>>>0<rt>>>0){qt=qt+1|0}wt=ut;pt=pt+1|0;if((pt|0)!=(Bq|0)){continue}break}}ut=st+1|0;q[a+12>>2]=ut;rt=q[a>>2];Bq=q[a+4>>2]-rt>>3;a:{if(ut>>>0>Bq>>>0){Uh(a,ut-Bq|0);break a}if(ut>>>0>=Bq>>>0){break a}q[a+4>>2]=rt+(ut<<3)}b:{c:{d:{e:{if((st|0)>=0){zt=+(wt>>>0)+4294967296*+(qt>>>0);qt=q[a>>2];pt=0;while(1){rt=pt<<3;wt=rt+rm|0;Bq=q[wt+4>>2];wt=q[wt>>2];Bt=(wt|0)!=0|(Bq|0)!=0;rt=qt+rt|0;tt=(+(wt>>>0)+4294967296*+(Bq>>>0))/zt*8192+.5;f:{if(tt<4294967296&tt>=0){Bq=~~tt>>>0;break f}Bq=0}Bq=Bt?Bq?Bq:1:Bq;q[rt>>2]=Bq;xt=Bq+xt|0;Bq=(pt|0)==(st|0);pt=pt+1|0;if(!Bq){continue}break}if((xt|0)==8192){break e}}q[vt+16>>2]=0;q[vt+8>>2]=0;q[vt+12>>2]=0;rt=0;if(ut){if(ut>>>0>=1073741824){break b}Bq=ut<<2;rt=zo(Bq);q[vt+8>>2]=rt;yt=Bq+rt|0;q[vt+16>>2]=yt;wp(rt,0,Bq);q[vt+12>>2]=yt}if((st|0)>-1){pt=0;while(1){q[(pt<<2)+rt>>2]=pt;Bq=(pt|0)==(st|0);pt=pt+1|0;if(!Bq){continue}break}}q[vt+24>>2]=a;cj(rt,yt,vt+24|0);g:{if((xt|0)<8192){Bq=q[a>>2]+(q[q[vt+12>>2]+ -4>>2]<<3)|0;q[Bq>>2]=(q[Bq>>2]-xt|0)- -8192;pt=0;break g}Bq=xt+ -8192|0;ut=q[vt+8>>2];wt=(st|0)<1;while(1){h:{if(wt){break h}tt=8192/+(xt|0);yt=q[a>>2];rt=st;while(1){pt=yt+(q[(rt<<2)+ut>>2]<<3)|0;qt=q[pt>>2];if(qt>>>0<=1){if((rt|0)!=(st|0)){break h}pt=1;break g}Bt=qt+ -1|0;At=pt;Dt=qt;Et=Bq;pt=qt;zt=C(tt*+(qt>>>0));i:{if(y(zt)<2147483648){Ct=~~zt;break i}Ct=-2147483648}pt=pt-Ct|0;pt=pt?pt:1;qt=(pt|0)<(qt|0)?pt:Bt;qt=(qt|0)>(Bq|0)?Et:qt;q[At>>2]=Dt-qt;Bq=Bq-qt|0;xt=xt-qt|0;if((xt|0)==8192){xt=8192;break h}qt=(rt|0)>1;rt=rt+ -1|0;if(qt){continue}break}}pt=0;if((Bq|0)>0){continue}break}}Bq=q[vt+8>>2];if(Bq){q[vt+12>>2]=Bq;pp(Bq)}if(pt){break c}if((st|0)>=0){break d}break c}if((st|0)<0){break c}}qt=q[a>>2];pt=0;Bq=0;while(1){rt=qt+(pt<<3)|0;q[rt+4>>2]=Bq;Bq=q[rt>>2]+Bq|0;rt=(pt|0)==(st|0);pt=pt+1|0;if(!rt){continue}break}if((Bq|0)!=8192){break c}pt=0;tt=0;if((st|0)>=0){Bq=q[a>>2];while(1){qt=pt<<3;rt=q[qt+Bq>>2];if(rt){qt=rm+qt|0;tt=tt+sp(+(rt>>>0)*.0001220703125)*(+t[qt>>2]+4294967296*+t[qt+4>>2])}qt=(pt|0)==(st|0);pt=pt+1|0;if(!qt){continue}break}}rm=a;Bq=a;tt=D(-tt);j:{if(tt<0x10000000000000000&tt>=0){qt=y(tt)>=1?tt>0?~~A(C(tt/4294967296),4294967295)>>>0:~~D((tt- +(~~tt>>>0>>>0))/4294967296)>>>0:0;st=~~tt>>>0;break j}qt=0;st=0}q[Bq+16>>2]=st;q[rm+20>>2]=qt;ti(a,kr)}T=vt+32|0;return}To();F()}function Ii(a,rm){var Bq=0,kr=0,Ft=0,Gt=0,Ht=0,It=0,Jt=0,Kt=0;It=T-32|0;T=It;Ht=q[rm>>2]+q[a+40>>2]|0;Bq=q[a+32>>2];kr=Bq+ -32768|0;a:{if(kr>>>0<=63){Bq=a+28|0;o[q[a+24>>2]+q[Bq>>2]|0]=kr;kr=q[Bq>>2]+1|0;break a}if(kr>>>0<=16383){kr=a+28|0;Ft=q[a+24>>2]+q[kr>>2]|0;Bq=Bq+ -16384|0;o[Ft|0]=Bq;o[Ft+1|0]=Bq>>>8;kr=q[kr>>2]+2|0;break a}if(kr>>>0<=4194303){Ft=a+28|0;kr=q[a+24>>2]+q[Ft>>2]|0;Bq=Bq+8355840|0;o[kr+2|0]=Bq>>>16;o[kr+1|0]=Bq>>>8;o[kr|0]=Bq;kr=q[Ft>>2]+3|0;break a}if(kr>>>0<=1073741823){Ft=a+28|0;kr=q[a+24>>2]+q[Ft>>2]|0;Bq=Bq+ -1073774592|0;o[kr|0]=Bq;o[kr+1|0]=Bq>>>8;o[kr+2|0]=Bq>>>16;o[kr+3|0]=Bq>>>24;kr=q[Ft>>2]+4|0;break a}kr=q[a+28>>2]}Gt=kr>>31;Ft=Gt;Bq=kr;Gt=Dl(It);ui(Bq,Ft,Gt);Jt=q[Gt+4>>2]-q[Gt>>2]|0;xp(Jt+Ht|0,Ht,Bq);vp(Ht,q[Gt>>2],Jt);kr=q[a+44>>2];Ht=rm;Kt=q[a+40>>2];a=Ft;rm=Bq+Jt|0;if(rm>>>0<Bq>>>0){a=a+1|0}Bq=rm;rm=Kt+Bq|0;El(Ht,rm);a=q[Gt+12>>2];q[Gt+12>>2]=0;if(a){pp(a)}a=q[Gt>>2];if(a){q[Gt+4>>2]=a;pp(a)}T=It+32|0}
function ea(){go()}function fa(){return Hm(zo(84))|0}function ga(a){a=a|0;return q[a+12>>2]-q[a+8>>2]>>2}function ha(a){a=a|0;return q[a+80>>2]}function ia(a){a=a|0;if(a){n[q[q[a>>2]+4>>2]](a)}}function ja(a){a=a|0;return Ob(zo(8),a)|0}function ka(a,b){a=a|0;b=b|0;Kh(q[a>>2],b)}function la(a,b,c){a=a|0;b=b|0;c=c|0;Ih(q[a>>2],b,c)}function ma(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=x(f);Jh(q[a>>2],b,c,d,e,f)}function na(a,b,c){a=a|0;b=b|0;c=c|0;Hh(q[a>>2]+4|0,b,c)}function oa(a,b){a=a|0;b=b|0;Lb(q[a>>2],b)}function pa(a,b,c){a=a|0;b=b|0;c=c|0;return Pb(a,b,c)|0}function qa(a){a=a|0;return q[q[a>>2]+40>>2]}function ra(a){a=a|0;return q[q[a>>2]+44>>2]}function sa(a){a=a|0;var b=0;if(a){b=q[a>>2];q[a>>2]=0;if(b){n[q[q[b>>2]+4>>2]](b)}pp(a)}}function ta(){return pc(zo(96))|0}function ua(a){a=a|0;return q[a+56>>2]}function va(a){a=a|0;return q[a+28>>2]}function wa(a){a=a|0;return o[a+24|0]}function xa(a){a=a|0;return r[a+32|0]}function ya(a){a=a|0;return q[a+40>>2]}function za(a){a=a|0;return q[a+48>>2]}function Aa(a){a=a|0;return q[a+60>>2]}function Ba(a){a=a|0;var c=0,d=0;if(a){c=a+88|0;d=q[c>>2];q[c>>2]=0;if(d){c=q[d+8>>2];if(c){q[d+12>>2]=c;pp(c)}pp(d)}d=q[a+68>>2];if(d){q[a+72>>2]=d;pp(d)}c=a- -64|0;d=q[c>>2];q[c>>2]=0;if(d){c=q[d>>2];if(c){q[d+4>>2]=c;pp(c)}pp(d)}pp(a)}}function Ca(){var a=0;a=zo(48);q[a>>2]=1032;fh(a+4|0);q[a+40>>2]=0;q[a+44>>2]=0;q[a>>2]=10252;return a|0}function Da(e,f){e=e|0;f=f|0;rh(e,f)}function Ea(e,f,g){e=e|0;f=f|0;g=g|0;oh(e,f,g)}function Fa(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=x(j);ph(e,f,g,h,i,j)}function Ga(e,f,g){e=e|0;f=f|0;g=g|0;nh(e+4|0,f,g)}function Ha(e,f){e=e|0;f=f|0;Lb(e,f)}function Ia(e,f,g){e=e|0;f=f|0;g=g|0;return Mb(e,f,g)|0}function Ja(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;return Nb(e,f,g,h)|0}function Ka(e){e=e|0;return q[e+44>>2]}function La(e){e=e|0;if(e){q[e>>2]=1032;Ma(e+28|0,q[e+32>>2]);Na(e+16|0,q[e+20>>2]);Ma(e+4|0,q[e+8>>2]);pp(e)}}function Ma(e,f){if(f){Ma(e,q[f>>2]);Ma(e,q[f+4>>2]);if(o[f+39|0]<=-1){pp(q[f+28>>2])}if(o[f+27|0]<=-1){pp(q[f+16>>2])}pp(f)}}function Na(e,f){if(f){Na(e,q[f>>2]);Na(e,q[f+4>>2]);Ma(f+20|0,q[f+24>>2]);pp(f)}}function Oa(){return zo(1)|0}function Pa(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;return Ib(f,g,h)|0}function Qa(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Cb(f,g,h,i,j,9)|0}function Ra(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Cb(f,g,h,i,j,5)|0}function Sa(e,f,g){e=e|0;f=f|0;g=g|0;return Kb(f,g)|0}function Ta(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Db(f,g,h,i,j,1)|0}function Ua(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Db(f,g,h,i,j,2)|0}function Va(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Eb(f,g,h,i,j,3)|0}function Wa(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Eb(f,g,h,i,j,4)|0}function Xa(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Cb(f,g,h,i,j,6)|0}function Ya(e,f,g){e=e|0;f=f|0;g=g|0;return Fb(f,g)|0}function Za(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;return Hb(f,g,h)|0}function _a(e){e=e|0;if(e){pp(e)}}function $a(){return wb(zo(12))|0}function ab(e,f){e=e|0;f=f|0;return o[q[e>>2]+f|0]}function bb(e){e=e|0;return q[e+4>>2]-q[e>>2]|0}function cb(e){e=e|0;var f=0;if(e){f=q[e>>2];if(f){q[e+4>>2]=f;pp(f)}pp(e)}}function db(e,g,h,i){e=e|0;g=g|0;h=h|0;i=i|0;return zb(g,h,i)|0}function eb(e,g,h,i){e=e|0;g=g|0;h=h|0;i=i|0;return Ab(g,h,i)|0}function fb(e,g,h,i){e=e|0;g=g|0;h=h|0;i=+i;return Bb(g,h,i)|0}function gb(){return mc(zo(64))|0}function hb(){return $l(zo(108))|0}function ib(e){e=e|0;return(q[e+100>>2]-q[e+96>>2]|0)/12|0}function jb(e,g){e=e|0;g=g|0;q[e+80>>2]=g}function kb(){var e=0,g=0,h=0;g=zo(24);h=g+4|0;e=h;q[e>>2]=0;q[e+4>>2]=0;e=g+16|0;q[e>>2]=0;q[e+4>>2]=0;q[g>>2]=h;q[g+12>>2]=e;return g|0}function lb(i){i=i|0;if(i){mb(i+12|0,q[i+16>>2]);nb(i,q[i+4>>2]);pp(i)}}function mb(i,j){var k=0;if(j){mb(i,q[j>>2]);mb(i,q[j+4>>2]);k=j+28|0;i=q[k>>2];q[k>>2]=0;if(i){mb(i+12|0,q[i+16>>2]);nb(i,q[i+4>>2]);pp(i)}if(o[j+27|0]<=-1){pp(q[j+16>>2])}pp(j)}}function nb(i,j){if(j){nb(i,q[j>>2]);nb(i,q[j+4>>2]);i=q[j+28>>2];if(i){q[j+32>>2]=i;pp(i)}if(o[j+27|0]<=-1){pp(q[j+16>>2])}pp(j)}}function ob(){return 0}function pb(){return 1}function qb(){return-1}function rb(){return 2}function sb(){return 3}function tb(){return 4}function ub(i){i=i|0;q[i>>2]=1032;Ma(i+28|0,q[i+32>>2]);Na(i+16|0,q[i+20>>2]);Ma(i+4|0,q[i+8>>2]);return i|0}function vb(i){i=i|0;q[i>>2]=1032;Ma(i+28|0,q[i+32>>2]);Na(i+16|0,q[i+20>>2]);Ma(i+4|0,q[i+8>>2]);pp(i)}function wb(i){q[i>>2]=0;q[i+4>>2]=0;q[i+8>>2]=0;return i}function xb(i,j,l){var m=0,n=0,p=0,s=0,t=0;a:{p=l-j|0;n=q[i+8>>2];m=q[i>>2];b:{if(p>>>0<=n-m>>>0){s=q[i+4>>2]-m|0;n=s+j|0;t=p>>>0>s>>>0?n:l;if((t|0)!=(j|0)){while(1){o[m|0]=r[j|0];m=m+1|0;j=j+1|0;if((t|0)!=(j|0)){continue}break}}if(p>>>0>s>>>0){if((l|0)==(t|0)){break b}i=i+4|0;m=q[i>>2];while(1){o[m|0]=r[n|0];m=q[i>>2]+1|0;q[i>>2]=m;n=n+1|0;if((n|0)!=(l|0)){continue}break}break b}q[i+4>>2]=m;return}if(m){q[i+4>>2]=m;pp(m);q[i+8>>2]=0;q[i>>2]=0;q[i+4>>2]=0;n=0}if((p|0)<=-1){break a}m=n<<1;n=n>>>0<1073741823?m>>>0<p>>>0?p:m:2147483647;if((n|0)<=-1){break a}m=zo(n);q[i>>2]=m;p=i+4|0;q[p>>2]=m;q[i+8>>2]=m+n;if((j|0)==(l|0)){break b}while(1){o[m|0]=r[j|0];m=q[p>>2]+1|0;q[p>>2]=m;j=j+1|0;if((l|0)!=(j|0)){continue}break}}return}To();F()}function yb(i){i=i|0;return i|0}function zb(i,j,l){var r=0,u=0,v=0,w=0,x=0;r=T+ -64|0;T=r;a:{b:{if(i){q[r+56>>2]=0;q[r+48>>2]=0;q[r+52>>2]=0;v=wn(j);if(v>>>0>=4294967280){break b}c:{d:{if(v>>>0>=11){w=v+16&-16;u=zo(w);q[r+56>>2]=w|-2147483648;q[r+48>>2]=u;q[r+52>>2]=v;break d}o[r+59|0]=v;u=r+48|0;if(!v){break c}}vp(u,j,v)}o[u+v|0]=0;q[r+40>>2]=0;q[r+32>>2]=0;q[r+36>>2]=0;u=wn(l);if(u>>>0>=4294967280){break a}e:{f:{if(u>>>0>=11){x=u+16&-16;w=zo(x);q[r+40>>2]=x|-2147483648;q[r+32>>2]=w;q[r+36>>2]=u;break f}o[r+43|0]=u;w=r+32|0;if(!u){break e}}vp(w,l,u)}o[u+w|0]=0;q[r+24>>2]=0;q[r+16>>2]=0;q[r+20>>2]=0;g:{h:{if(v>>>0>=11){x=v+16&-16;w=zo(x);q[r+24>>2]=x|-2147483648;q[r+16>>2]=w;q[r+20>>2]=v;break h}o[r+27|0]=v;w=r+16|0;if(!v){break g}}vp(w,j,v)}o[v+w|0]=0;q[r+8>>2]=0;q[r>>2]=0;q[r+4>>2]=0;i:{j:{if(u>>>0>=11){v=u+16&-16;j=zo(v);q[r+8>>2]=v|-2147483648;q[r>>2]=j;q[r+4>>2]=u;break j}o[r+11|0]=u;j=r;if(!u){break i}}vp(j,l,u)}o[j+u|0]=0;Em(i,r+16|0,r);if(o[r+11|0]<=-1){pp(q[r>>2])}if(o[r+27|0]<=-1){pp(q[r+16>>2])}if(o[r+43|0]<=-1){pp(q[r+32>>2])}if(o[r+59|0]<=-1){pp(q[r+48>>2])}i=1}else{i=0}T=r- -64|0;return i}Co();F()}Co();F()}function Ab(i,j,l){var y=0,z=0,A=0,B=0;y=T-16|0;T=y;a:{if(i){q[y+8>>2]=0;q[y>>2]=0;q[y+4>>2]=0;z=wn(j);if(z>>>0>=4294967280){break a}b:{c:{if(z>>>0>=11){B=z+16&-16;A=zo(B);q[y+8>>2]=B|-2147483648;q[y>>2]=A;q[y+4>>2]=z;break c}o[y+11|0]=z;A=y;if(!z){break b}}vp(A,j,z)}o[z+A|0]=0;ym(i,y,l);if(o[y+11|0]<=-1){pp(q[y>>2])}i=1}else{i=0}T=y+16|0;return i}Co();F()}function Bb(i,j,l){var C=0,D=0,E=0,G=0;C=T-16|0;T=C;a:{if(i){q[C+8>>2]=0;q[C>>2]=0;q[C+4>>2]=0;D=wn(j);if(D>>>0>=4294967280){break a}b:{c:{if(D>>>0>=11){G=D+16&-16;E=zo(G);q[C+8>>2]=G|-2147483648;q[C>>2]=E;q[C+4>>2]=D;break c}o[C+11|0]=D;E=C;if(!D){break b}}vp(E,j,D)}o[D+E|0]=0;Cm(i,C,l);if(o[C+11|0]<=-1){pp(q[C>>2])}i=1}else{i=0}T=C+16|0;return i}Co();F()}function Cb(i,j,l,o,F,H){var I=0,J=0,K=0,L=0,M=0,N=0,O=0;I=T-16|0;T=I;a:{if(!i){j=-1;break a}K=zo(96);J=pc(K);q[I+8>>2]=K;rc(J,j,o<<24>>24,H,l);q[I>>2]=q[I+8>>2];q[I+8>>2]=0;K=Km(i,I);j=q[I>>2];q[I>>2]=0;if(j){Ba(j)}if(l){j=0;J=q[q[i+8>>2]+(K<<2)>>2];L=J+68|0;M=J+40|0;while(1){H=j;N=q[q[J>>2]>>2];if(!r[J+84|0]){H=q[q[L>>2]+(j<<2)>>2]}O=H;H=q[M>>2];vp(w(O,H)+N|0,(w(j,o)<<2)+F|0,H);j=j+1|0;if((l|0)!=(j|0)){continue}break}}o=q[i+80>>2];b:{c:{if(!o){q[i+80>>2]=l;break c}j=-1;if((l|0)!=(o|0)){break b}}j=K}i=q[I+8>>2];q[I+8>>2]=0;if(!i){break a}Ba(i)}T=I+16|0;return j}function Db(i,j,l,o,F,H){var P=0,Q=0,R=0,S=0,U=0,V=0,W=0;P=T-16|0;T=P;a:{if(!i){j=-1;break a}R=zo(96);Q=pc(R);q[P+8>>2]=R;rc(Q,j,o<<24>>24,H,l);q[P>>2]=q[P+8>>2];q[P+8>>2]=0;R=Km(i,P);j=q[P>>2];q[P>>2]=0;if(j){Ba(j)}if(l){j=0;Q=q[q[i+8>>2]+(R<<2)>>2];S=Q+68|0;U=Q+40|0;while(1){H=j;V=q[q[Q>>2]>>2];if(!r[Q+84|0]){H=q[q[S>>2]+(j<<2)>>2]}W=H;H=q[U>>2];vp(w(W,H)+V|0,w(j,o)+F|0,H);j=j+1|0;if((l|0)!=(j|0)){continue}break}}o=q[i+80>>2];b:{c:{if(!o){q[i+80>>2]=l;break c}j=-1;if((l|0)!=(o|0)){break b}}j=R}i=q[P+8>>2];q[P+8>>2]=0;if(!i){break a}Ba(i)}T=P+16|0;return j}function Eb(i,j,l,o,F,H){var X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0;X=T-16|0;T=X;a:{if(!i){j=-1;break a}Z=zo(96);Y=pc(Z);q[X+8>>2]=Z;rc(Y,j,o<<24>>24,H,l);q[X>>2]=q[X+8>>2];q[X+8>>2]=0;Z=Km(i,X);j=q[X>>2];q[X>>2]=0;if(j){Ba(j)}if(l){j=0;Y=q[q[i+8>>2]+(Z<<2)>>2];_=Y+68|0;$=Y+40|0;while(1){H=j;aa=q[q[Y>>2]>>2];if(!r[Y+84|0]){H=q[q[_>>2]+(j<<2)>>2]}ba=H;H=q[$>>2];vp(w(ba,H)+aa|0,(w(j,o)<<1)+F|0,H);j=j+1|0;if((l|0)!=(j|0)){continue}break}}o=q[i+80>>2];b:{c:{if(!o){q[i+80>>2]=l;break c}j=-1;if((l|0)!=(o|0)){break b}}j=Z}i=q[X+8>>2];q[X+8>>2]=0;if(!i){break a}Ba(i)}T=X+16|0;return j}function Fb(i,j){var l=0;a:{if(q[i+4>>2]|!i){break a}l=zo(36);vm(l,j);q[l+32>>2]=0;q[l+24>>2]=0;q[l+28>>2]=0;j=q[i+4>>2];q[i+4>>2]=l;l=1;if(!j){break a}Gb(j)}return l}function Gb(i){var j=0,o=0,F=0,H=0,T=0;if(i){F=q[i+24>>2];if(F){j=F;T=i+28|0;o=q[T>>2];H=j;a:{if((o|0)==(j|0)){break a}while(1){o=o+ -4|0;j=q[o>>2];q[o>>2]=0;if(j){mb(j+12|0,q[j+16>>2]);nb(j,q[j+4>>2]);pp(j)}if((o|0)!=(F|0)){continue}break}H=q[i+24>>2]}j=H;q[T>>2]=F;pp(j)}mb(i+12|0,q[i+16>>2]);nb(i,q[i+4>>2]);pp(i)}}function Hb(i,ca,da){var ea=0,fa=0,ga=0,ha=0,ia=0,ja=0;fa=T-16|0;T=fa;a:{if(!da|(!i|(ca|0)<0)){break a}ha=q[i+8>>2];if(q[i+12>>2]-ha>>2<=(ca|0)){break a}ia=i+4|0;if(!q[ia>>2]){ea=zo(36);ja=ea+4|0;ga=ja;q[ga>>2]=0;q[ga+4>>2]=0;ga=ea+16|0;q[ga>>2]=0;q[ga+4>>2]=0;q[ea>>2]=ja;q[ea+32>>2]=0;q[ea+24>>2]=0;q[ea+28>>2]=0;q[ea+12>>2]=ga;q[i+4>>2]=ea}ca=q[q[(ca<<2)+ha>>2]+60>>2];i=zo(28);vm(i,da);q[i+24>>2]=ca;ca=q[ia>>2];q[fa+8>>2]=i;tm(ca,fa+8|0);i=q[fa+8>>2];q[fa+8>>2]=0;ea=1;if(!i){break a}mb(i+12|0,q[i+16>>2]);nb(i,q[i+4>>2]);pp(i)}T=fa+16|0;return ea}function Ib(i,ca,da){var ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0;la=T-16|0;T=la;if(i){q[la+8>>2]=0;q[la>>2]=0;q[la+4>>2]=0;na=i+96|0;ka=q[i+96>>2];ma=(q[i+100>>2]-ka|0)/12|0;a:{b:{if(ma>>>0<ca>>>0){Jb(na,ca-ma|0,la);break b}if(ma>>>0>ca>>>0){q[i+100>>2]=ka+w(ca,12)}if(!ca){break a}}ma=q[na>>2];pa=i+100|0;i=0;while(1){oa=w(i,12);ka=oa+da|0;qa=q[ka>>2];ra=q[ka+8>>2];sa=q[ka+4>>2];ka=(q[pa>>2]-ma|0)/12|0;c:{if(ka>>>0>i>>>0){i=i+1|0;break c}q[la+8>>2]=0;q[la>>2]=0;q[la+4>>2]=0;i=i+1|0;Jb(na,i-ka|0,la);ma=q[na>>2]}ka=ma+oa|0;q[ka+8>>2]=ra;q[ka+4>>2]=sa;q[ka>>2]=qa;if((i|0)!=(ca|0)){continue}break}}i=1}else{i=0}T=la+16|0;return i}function Jb(i,ca,da){var ta=0,ua=0,va=0,wa=0,xa=0;a:{b:{wa=q[i+8>>2];ua=i+4|0;ta=q[ua>>2];c:{if((wa-ta|0)/12>>>0>=ca>>>0){while(1){i=q[da+4>>2];q[ta>>2]=q[da>>2];q[ta+4>>2]=i;q[ta+8>>2]=q[da+8>>2];ta=q[ua>>2]+12|0;q[ua>>2]=ta;ca=ca+ -1|0;if(ca){continue}break c}}va=q[i>>2];xa=(ta-va|0)/12|0;ua=xa+ca|0;if(ua>>>0>=357913942){break b}wa=(wa-va|0)/12|0;va=wa<<1;ua=wa>>>0<178956970?va>>>0<ua>>>0?ua:va:357913941;ta=0;d:{if(!ua){break d}if(ua>>>0>=357913942){break a}ta=zo(w(ua,12))}wa=ta+w(ua,12)|0;ua=ta+w(xa,12)|0;ta=ua;while(1){va=q[da+4>>2];q[ta>>2]=q[da>>2];q[ta+4>>2]=va;q[ta+8>>2]=q[da+8>>2];ta=ta+12|0;ca=ca+ -1|0;if(ca){continue}break}va=i+4|0;ca=q[i>>2];da=q[va>>2]-ca|0;ua=ua+w((da|0)/-12|0,12)|0;if((da|0)>=1){vp(ua,ca,da)}q[i>>2]=ua;q[i+8>>2]=wa;q[va>>2]=ta;if(!ca){break c}pp(ca)}return}To();F()}Qb(1128);F()}function Kb(i,ca){var da=0,ya=0;a:{if(!i){break a}da=i+4|0;if(q[da>>2]){break a}i=zo(36);vm(i,ca);q[i+32>>2]=0;q[i+24>>2]=0;q[i+28>>2]=0;ca=q[da>>2];q[da>>2]=i;ya=1;if(!ca){break a}Gb(ca)}return ya}function Lb(i,ca){var za=0,Aa=0,Ba=0,Ca=0;Ca=T-16|0;T=Ca;Ba=zo(32);q[Ca>>2]=Ba;q[Ca+4>>2]=30;q[Ca+8>>2]=-2147483616;o[Ba+30|0]=0;za=r[1222]|r[1223]<<8|(r[1224]<<16|r[1225]<<24);Aa=r[1218]|r[1219]<<8|(r[1220]<<16|r[1221]<<24);o[Ba+22|0]=Aa;o[Ba+23|0]=Aa>>>8;o[Ba+24|0]=Aa>>>16;o[Ba+25|0]=Aa>>>24;o[Ba+26|0]=za;o[Ba+27|0]=za>>>8;o[Ba+28|0]=za>>>16;o[Ba+29|0]=za>>>24;za=r[1216]|r[1217]<<8|(r[1218]<<16|r[1219]<<24);Aa=r[1212]|r[1213]<<8|(r[1214]<<16|r[1215]<<24);o[Ba+16|0]=Aa;o[Ba+17|0]=Aa>>>8;o[Ba+18|0]=Aa>>>16;o[Ba+19|0]=Aa>>>24;o[Ba+20|0]=za;o[Ba+21|0]=za>>>8;o[Ba+22|0]=za>>>16;o[Ba+23|0]=za>>>24;za=r[1208]|r[1209]<<8|(r[1210]<<16|r[1211]<<24);Aa=r[1204]|r[1205]<<8|(r[1206]<<16|r[1207]<<24);o[Ba+8|0]=Aa;o[Ba+9|0]=Aa>>>8;o[Ba+10|0]=Aa>>>16;o[Ba+11|0]=Aa>>>24;o[Ba+12|0]=za;o[Ba+13|0]=za>>>8;o[Ba+14|0]=za>>>16;o[Ba+15|0]=za>>>24;za=r[1200]|r[1201]<<8|(r[1202]<<16|r[1203]<<24);Aa=r[1196]|r[1197]<<8|(r[1198]<<16|r[1199]<<24);o[Ba|0]=Aa;o[Ba+1|0]=Aa>>>8;o[Ba+2|0]=Aa>>>16;o[Ba+3|0]=Aa>>>24;o[Ba+4|0]=za;o[Ba+5|0]=za>>>8;o[Ba+6|0]=za>>>16;o[Ba+7|0]=za>>>24;Ba=i+4|0;Il(Ba,Ca,ca);if(o[Ca+11|0]<=-1){pp(q[Ca>>2])}i=zo(32);q[Ca>>2]=i;q[Ca+4>>2]=29;q[Ca+8>>2]=-2147483616;o[i+29|0]=0;za=r[1252]|r[1253]<<8|(r[1254]<<16|r[1255]<<24);Aa=r[1248]|r[1249]<<8|(r[1250]<<16|r[1251]<<24);o[i+21|0]=Aa;o[i+22|0]=Aa>>>8;o[i+23|0]=Aa>>>16;o[i+24|0]=Aa>>>24;o[i+25|0]=za;o[i+26|0]=za>>>8;o[i+27|0]=za>>>16;o[i+28|0]=za>>>24;za=r[1247]|r[1248]<<8|(r[1249]<<16|r[1250]<<24);Aa=r[1243]|r[1244]<<8|(r[1245]<<16|r[1246]<<24);o[i+16|0]=Aa;o[i+17|0]=Aa>>>8;o[i+18|0]=Aa>>>16;o[i+19|0]=Aa>>>24;o[i+20|0]=za;o[i+21|0]=za>>>8;o[i+22|0]=za>>>16;o[i+23|0]=za>>>24;za=r[1239]|r[1240]<<8|(r[1241]<<16|r[1242]<<24);Aa=r[1235]|r[1236]<<8|(r[1237]<<16|r[1238]<<24);o[i+8|0]=Aa;o[i+9|0]=Aa>>>8;o[i+10|0]=Aa>>>16;o[i+11|0]=Aa>>>24;o[i+12|0]=za;o[i+13|0]=za>>>8;o[i+14|0]=za>>>16;o[i+15|0]=za>>>24;za=r[1231]|r[1232]<<8|(r[1233]<<16|r[1234]<<24);Aa=r[1227]|r[1228]<<8|(r[1229]<<16|r[1230]<<24);o[i|0]=Aa;o[i+1|0]=Aa>>>8;o[i+2|0]=Aa>>>16;o[i+3|0]=Aa>>>24;o[i+4|0]=za;o[i+5|0]=za>>>8;o[i+6|0]=za>>>16;o[i+7|0]=za>>>24;Il(Ba,Ca,ca);if(o[Ca+11|0]<=-1){pp(q[Ca>>2])}T=Ca+16|0}function Mb(i,ca,Da){var Ea=0,Fa=0,Ga=0;Fa=T-48|0;T=Fa;a:{if(!ca){i=0;break a}Ea=Dl(Fa+16|0);Ga=0;b:{if((Im(ca,0)|0)==-1){break b}Ga=0;if(!n[q[q[ca>>2]+16>>2]](ca)){break b}n[q[q[ca>>2]+20>>2]](ca);mh(Fa,i,ca,Ea);i=q[Fa>>2];if(o[Fa+15|0]<=-1){pp(q[Fa+4>>2])}Ga=0;if(i){break b}xb(Da,q[Ea>>2],q[Ea+4>>2]);Ga=q[Ea+4>>2]-q[Ea>>2]|0}i=Ga;ca=q[Ea+12>>2];q[Ea+12>>2]=0;if(ca){pp(ca)}ca=q[Ea>>2];if(!ca){break a}q[Ea+4>>2]=ca;pp(ca)}T=Fa+48|0;return i}function Nb(i,ca,Da,Ha){var Ia=0,Ja=0,Ka=0;Ja=T-48|0;T=Ja;a:{if(!ca){i=0;break a}Ia=Dl(Ja+16|0);Ka=0;b:{if((Im(ca,0)|0)==-1){break b}if(Da){Ka=0;if(!n[q[q[ca>>2]+16>>2]](ca)){break b}n[q[q[ca>>2]+20>>2]](ca)}gh(Ja,i,ca,Ia);i=q[Ja>>2];if(o[Ja+15|0]<=-1){pp(q[Ja+4>>2])}Ka=0;if(i){break b}xb(Ha,q[Ia>>2],q[Ia+4>>2]);Ka=q[Ia+4>>2]-q[Ia>>2]|0}i=Ka;ca=q[Ia+12>>2];q[Ia+12>>2]=0;if(ca){pp(ca)}ca=q[Ia>>2];if(!ca){break a}q[Ia+4>>2]=ca;pp(ca)}T=Ja+48|0;return i}function Ob(i,ca){var Da=0;q[i+4>>2]=ca;q[i>>2]=0;a:{b:{if(!ca){break b}Da=ep(ca,16536,16252);if(!Da){break b}ca=zo(56);Bh(ca,Da);Da=q[i>>2];q[i>>2]=ca;if(!Da){break a}n[q[q[Da>>2]+4>>2]](Da);return i}Da=zo(56);zh(Da,ca);ca=q[i>>2];q[i>>2]=Da;if(!ca){break a}n[q[q[ca>>2]+4>>2]](ca)}return i}function Pb(i,ca,Ha){var La=0,Ma=0,Na=0;La=T-48|0;T=La;Ma=q[i+4>>2];a:{if(!Ma){break a}if(ca){if(!n[q[q[Ma>>2]+16>>2]](Ma)){break a}ca=q[i+4>>2];n[q[q[ca>>2]+20>>2]](ca)}ca=Dl(La+16|0);Ch(La,q[i>>2],ca);i=q[La>>2];if(o[La+15|0]<=-1){pp(q[La+4>>2])}if(!i){xb(Ha,q[ca>>2],q[ca+4>>2]);Na=q[ca+4>>2]-q[ca>>2]|0}i=q[ca+12>>2];q[ca+12>>2]=0;if(i){pp(i)}i=q[ca>>2];if(!i){break a}q[ca+4>>2]=i;pp(i)}T=La+48|0;return Na}function Qb(i){var ca=0;ca=I(8)|0;q[ca>>2]=17940;q[ca>>2]=17984;Ao(ca+4|0,i);q[ca>>2]=18032;J(ca|0,18064,3);F()}function Rb(i,Ha){i=i|0;Ha=Ha|0;var Oa=0;Ha=q[Ha+88>>2];if(!(!Ha|q[Ha>>2]!=2)){Oa=i;i=q[Ha+8>>2];q[Oa+4>>2]=r[i|0]|r[i+1|0]<<8|(r[i+2|0]<<16|r[i+3|0]<<24);Oa=1}return Oa|0}function Sb(i,Ha){i=i|0;Ha=Ha|0;var Pa=0,Qa=0;q[Ha>>2]=2;Pa=q[Ha+8>>2];Qa=q[Ha+12>>2]-Pa|0;if(Qa>>>0<=4294967291){Ha=Ha+8|0;Bl(Ha,Qa+4|0);Pa=q[Ha>>2]}Ha=Pa+Qa|0;i=r[i+4|0]|r[i+5|0]<<8|(r[i+6|0]<<16|r[i+7|0]<<24);o[Ha|0]=i;o[Ha+1|0]=i>>>8;o[Ha+2|0]=i>>>16;o[Ha+3|0]=i>>>24}function Tb(i,Ha){q[i+4>>2]=Ha}function Ub(i,Ha){var Ra=0,Sa=0;Ra=T-16|0;T=Ra;i=q[i+4>>2];Sa=0;a:{if((i|0)==-1){break a}o[Ra+15|0]=i;i=q[Ha+20>>2];if((i|0)<0?1:(i|0)<=0?t[Ha+16>>2]>0?0:1:0){Vb(Ha,q[Ha+4>>2],Ra+15|0,Ra+16|0)}Sa=1}i=Sa;T=Ra+16|0;return i}function Vb(i,Ha,Ta,Ua){var Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0;Wa=Ua-Ta|0;if((Wa|0)<1){return}a:{Za=q[i+8>>2];Ya=q[i+4>>2];if((Wa|0)<=(Za-Ya|0)){_a=Ya-Ha|0;if((Wa|0)<=(_a|0)){Xa=Ya;Za=Ua;break a}Xa=Ya;Za=Ta+_a|0;if((Za|0)!=(Ua|0)){$a=i+4|0;Va=Za;while(1){o[Xa|0]=r[Va|0];Xa=q[$a>>2]+1|0;q[$a>>2]=Xa;Va=Va+1|0;if((Va|0)!=(Ua|0)){continue}break}}if((_a|0)>=1){break a}return}Xa=Wa;Wa=q[i>>2];Xa=Xa+(Ya-Wa|0)|0;if((Xa|0)>-1){Ya=Za-Wa|0;Za=Ya<<1;Za=Ya>>>0<1073741823?Za>>>0<Xa>>>0?Xa:Za:2147483647;Ya=0;b:{if(!Za){break b}Ya=zo(Za)}Xa=Ya+(Ha-Wa|0)|0;c:{if((Ta|0)==(Ua|0)){Va=Xa;break c}Va=Xa;while(1){o[Va|0]=r[Ta|0];Va=Va+1|0;Ta=Ta+1|0;if((Ua|0)!=(Ta|0)){continue}break}Wa=q[i>>2]}Ta=Ha-Wa|0;Ua=Xa-Ta|0;if((Ta|0)>=1){vp(Ua,Wa,Ta)}Xa=Ya+Za|0;Ya=i+4|0;Ta=q[Ya>>2]-Ha|0;if((Ta|0)>=1){Va=vp(Va,Ha,Ta)+Ta|0;Wa=q[i>>2]}q[i>>2]=Ua;q[i+8>>2]=Xa;q[Ya>>2]=Va;if(Wa){pp(Wa)}return}To();F()}Ua=Xa-(Ha+Wa|0)|0;Va=Xa-Wa|0;if(Va>>>0<Ya>>>0){i=i+4|0;Wa=Xa;while(1){o[Wa|0]=r[Va|0];Wa=q[i>>2]+1|0;q[i>>2]=Wa;Va=Va+1|0;if((Ya|0)!=(Va|0)){continue}break}}if(Ua){xp(Xa-Ua|0,Ha,Ua)}if((Ta|0)==(Za|0)){return}Va=Ha;while(1){o[Va|0]=r[Ta|0];Va=Va+1|0;Ta=Ta+1|0;if((Za|0)!=(Ta|0)){continue}break}}function Wb(i,Ha,Ta,Ua,ab){var bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0;bb=T-48|0;T=bb;cb=Ua+4|0;kc(bb+40|0,q[cb>>2]-q[Ua>>2]>>2,2,ab,Ta);ab=q[bb+40>>2];db=q[ab+48>>2];eb=q[q[ab>>2]>>2];q[bb+16>>2]=-1;q[bb+20>>2]=-1;q[bb+8>>2]=-1;q[bb+12>>2]=-1;Ha=q[Ha+4>>2];a:{if(Ha+ -2>>>0<=28){q[bb+8>>2]=Ha;Ha=-1<<Ha;q[bb+12>>2]=Ha^-1;Ha=-2-Ha|0;q[bb+16>>2]=Ha;q[bb+20>>2]=(Ha|0)/2;gb=i;i=q[Ua>>2];if((i|0)!=q[cb>>2]){db=db+eb|0;ab=0;eb=Ta+68|0;Ha=0;while(1){i=q[(Ha<<2)+i>>2];hb=bb+28|0;ib=q[q[Ta>>2]>>2];jb=q[Ta+48>>2];cb=q[Ta+44>>2];fb=q[Ta+40>>2];kb=fb;if(!r[Ta+84|0]){i=q[q[eb>>2]+(i<<2)>>2]}i=Up(kb,cb,i,0)+jb|0;vp(hb,i+ib|0,fb);Xb(bb+8|0,bb+28|0,bb+4|0,bb);i=ab<<2;q[i+db>>2]=q[bb+4>>2];q[db+(i|4)>>2]=q[bb>>2];ab=ab+2|0;Ha=Ha+1|0;i=q[Ua>>2];if(Ha>>>0<q[Ua+4>>2]-i>>2>>>0){continue}break}ab=q[bb+40>>2]}q[gb>>2]=ab;q[bb+40>>2]=0;break a}q[i>>2]=0;q[bb+40>>2]=0;if(!ab){break a}Ba(ab)}T=bb+48|0}function Xb(i,Ha,Ta,Ua){var ab=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0;ob=+u[Ha>>2];pb=+u[Ha+4>>2];sb=+u[Ha+8>>2];nb=y(ob)+y(pb)+y(sb);a:{if(!(nb>1e-6)){ob=1;pb=0;lb=0;break a}nb=1/nb;pb=nb*pb;ob=nb*ob;lb=nb*sb<0}nb=pb;mb=q[i+12>>2];pb=+(mb|0);nb=C(nb*pb+.5);b:{if(y(nb)<2147483648){Ha=~~nb;break b}Ha=-2147483648}tb=(Ha|0)<0?Ha:0-Ha|0;qb=mb;ob=C(ob*pb+.5);c:{if(y(ob)<2147483648){ab=~~ob;break c}ab=-2147483648}rb=ab>>31;qb=tb+(qb-(ab+rb^rb)|0)|0;rb=(qb|0)<0?0:qb;lb=lb?0-rb|0:rb;Ha=Ha+(qb>>31&((Ha|0)>0?qb:0-qb|0))|0;d:{if((ab|0)>=0){ab=Ha+mb|0;Ha=mb+lb|0;break d}e:{if((Ha|0)<=-1){ab=lb>>31;ab=ab+lb^ab;break e}ab=lb>>31;ab=q[i+8>>2]-(ab+lb^ab)|0}if((lb|0)<=-1){lb=Ha;Ha=Ha>>31;Ha=lb+Ha^Ha;break d}lb=Ha;Ha=Ha>>31;Ha=q[i+8>>2]-(lb+Ha^Ha)|0}i=q[i+8>>2];f:{if(!(Ha|ab)){Ha=i;ab=Ha;break f}if(!((i|0)!=(Ha|0)|ab)){ab=Ha;break f}if(!((i|0)!=(ab|0)|Ha)){Ha=ab;break f}if(!((mb|0)>=(Ha|0)|ab)){Ha=(mb<<1)-Ha|0;ab=0;break f}if(!((i|0)!=(ab|0)|(mb|0)<=(Ha|0))){Ha=(mb<<1)-Ha|0;break f}if(!((i|0)!=(Ha|0)|(mb|0)<=(ab|0))){ab=(mb<<1)-ab|0;break f}if(Ha){break f}Ha=0;if((mb|0)>=(ab|0)){break f}ab=(mb<<1)-ab|0}q[Ta>>2]=ab;q[Ua>>2]=Ha}function Yb(i){i=i|0;pp(i)}function Zb(i){i=i|0;return 2}function _b(i,Ha){i=i|0;Ha=Ha|0;var Ta=0,Ua=0,ub=0,vb=0,wb=0,xb=0;ub=q[Ha+88>>2];if(!(!ub|q[ub>>2]!=1)){vb=ub+8|0;ub=q[vb>>2];Ta=ub;q[i+4>>2]=r[Ta|0]|r[Ta+1|0]<<8|(r[Ta+2|0]<<16|r[Ta+3|0]<<24);wb=i+8|0;xb=q[i+8>>2];Ua=q[i+12>>2]-xb>>2;Ta=o[Ha+24|0];a:{if(Ua>>>0<Ta>>>0){$b(wb,Ta-Ua|0);ub=q[vb>>2];Ta=r[Ha+24|0];break a}if(Ua>>>0<=Ta>>>0){break a}q[i+12>>2]=xb+(Ta<<2)}vb=1;Ha=ub;Ua=r[Ha+4|0]|r[Ha+5|0]<<8|(r[Ha+6|0]<<16|r[Ha+7|0]<<24);if(Ta<<24>>24>=1){xb=Ta&255;wb=q[wb>>2];Ha=0;Ta=4;while(1){q[wb+(Ha<<2)>>2]=Ua;Ta=Ta+4|0;Ua=ub+Ta|0;Ua=r[Ua|0]|r[Ua+1|0]<<8|(r[Ua+2|0]<<16|r[Ua+3|0]<<24);Ha=Ha+1|0;if(Ha>>>0<xb>>>0){continue}break}}q[i+20>>2]=Ua}return vb|0}function $b(i,Ha){var yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0;zb=q[i+8>>2];Ab=i+4|0;yb=q[Ab>>2];if(zb-yb>>2>>>0>=Ha>>>0){i=Ha<<2;Fb=Ab,Gb=wp(yb,0,i)+i|0,q[Fb>>2]=Gb;return}a:{Ab=q[i>>2];Cb=yb-Ab|0;yb=Cb>>2;Bb=yb+Ha|0;if(Bb>>>0<1073741824){Eb=yb<<2;zb=zb-Ab|0;yb=zb>>1;zb=zb>>2>>>0<536870911?yb>>>0<Bb>>>0?Bb:yb:1073741823;yb=0;b:{if(!zb){break b}if(zb>>>0>=1073741824){break a}Db=zo(zb<<2);yb=Db}wp(Eb+yb|0,0,Ha<<2);Ha=yb+(Bb<<2)|0;Bb=yb+(zb<<2)|0;if((Cb|0)>=1){vp(Db,Ab,Cb)}q[i>>2]=yb;q[i+8>>2]=Bb;q[i+4>>2]=Ha;if(Ab){pp(Ab)}return}To();F()}Qb(1460);F()}function ac(i,Ha){i=i|0;Ha=Ha|0;var Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0;q[Ha>>2]=1;Kb=Ha+8|0;Hb=q[Ha+8>>2];Ib=q[Ha+12>>2]-Hb|0;if(Ib>>>0<=4294967291){Bl(Kb,Ib+4|0);Hb=q[Kb>>2]}Ib=Hb+Ib|0;Hb=r[i+4|0]|r[i+5|0]<<8|(r[i+6|0]<<16|r[i+7|0]<<24);o[Ib|0]=Hb;o[Ib+1|0]=Hb>>>8;o[Ib+2|0]=Hb>>>16;o[Ib+3|0]=Hb>>>24;Hb=q[i+8>>2];if((Hb|0)!=q[i+12>>2]){Mb=Ha+12|0;while(1){Ib=(Lb<<2)+Hb|0;Hb=q[Ha+8>>2];Jb=q[Mb>>2]-Hb|0;if(Jb>>>0<=4294967291){Bl(Kb,Jb+4|0);Hb=q[Kb>>2]}Jb=Hb+Jb|0;Hb=r[Ib|0]|r[Ib+1|0]<<8|(r[Ib+2|0]<<16|r[Ib+3|0]<<24);o[Jb|0]=Hb;o[Jb+1|0]=Hb>>>8;o[Jb+2|0]=Hb>>>16;o[Jb+3|0]=Hb>>>24;Lb=Lb+1|0;Hb=q[i+8>>2];if(Lb>>>0<q[i+12>>2]-Hb>>2>>>0){continue}break}}Hb=q[Ha+12>>2];Ha=q[Ha+8>>2];Hb=Hb-Ha|0;if(Hb>>>0<=4294967291){Bl(Kb,Hb+4|0);Ha=q[Kb>>2]}Ha=Ha+Hb|0;i=r[i+20|0]|r[i+21|0]<<8|(r[i+22|0]<<16|r[i+23|0]<<24);o[Ha|0]=i;o[Ha+1|0]=i>>>8;o[Ha+2|0]=i>>>16;o[Ha+3|0]=i>>>24}function bc(i,Ha,Nb,Ob,Pb){q[i+4>>2]=Ha;cc(i+8|0,Nb,(Ob<<2)+Nb|0);u[i+20>>2]=Pb}function cc(i,Ha,Nb){var Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0;a:{Rb=Nb-Ha|0;Qb=Rb>>2;Ob=q[i+8>>2];Pb=q[i>>2];b:{if(Qb>>>0<=Ob-Pb>>2>>>0){Ob=q[i+4>>2]-Pb|0;Rb=Ob>>2;Ob=Qb>>>0>Rb>>>0?Ha+Ob|0:Nb;Sb=Ob-Ha|0;if(Sb){xp(Pb,Ha,Sb)}if(Qb>>>0>Rb>>>0){Ha=Nb-Ob|0;if((Ha|0)<1){break b}i=i+4|0;vp(q[i>>2],Ob,Ha);q[i>>2]=Ha+q[i>>2];return}q[i+4>>2]=Pb+(Sb>>2<<2);return}if(Pb){q[i+4>>2]=Pb;pp(Pb);q[i+8>>2]=0;q[i>>2]=0;q[i+4>>2]=0;Ob=0}if(Qb>>>0>=1073741824){break a}Nb=Ob>>1;Nb=Ob>>2>>>0<536870911?Nb>>>0<Qb>>>0?Qb:Nb:1073741823;if(Nb>>>0>=1073741824){break a}Pb=Nb<<2;Nb=zo(Pb);q[i>>2]=Nb;Qb=i+4|0;q[Qb>>2]=Nb;q[i+8>>2]=Nb+Pb;if((Rb|0)<1){break b}Tb=Qb,Ub=vp(Nb,Ha,Rb)+Rb|0,q[Tb>>2]=Ub}return}To();F()}function dc(i,Ha,Nb){var Vb=0,Wb=0,Xb=0,Yb=x(0),Zb=0,_b=0,$b=0,ac=x(0),bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0;_b=T-16|0;T=_b;a:{if(q[i+4>>2]==-1){q[i+4>>2]=Nb;Xb=o[Ha+24|0];q[i+20>>2]=0;q[_b+8>>2]=0;q[_b>>2]=0;q[_b+4>>2]=0;Nb=0;if(Xb){if((Xb|0)<=-1){break a}Nb=Xb<<2;Wb=zo(Nb);q[_b>>2]=Wb;q[_b+4>>2]=Wb;Zb=Nb+Wb|0;q[_b+8>>2]=Zb;Nb=wp(Wb,0,Nb);Vb=Xb;while(1){Nb=Nb+4|0;Vb=Vb+ -1|0;if(Vb){continue}break}q[_b+4>>2]=Nb}Vb=q[i+8>>2];if(Vb){q[i+12>>2]=Vb;pp(Vb);q[i+16>>2]=0;q[i+8>>2]=0;q[i+12>>2]=0}q[i+8>>2]=Wb;q[i+16>>2]=Zb;q[i+12>>2]=Nb;Nb=(Xb&1073741823)!=(Xb|0)?-1:Xb<<2;$b=zo(Nb);bc=zo(Nb);Vb=q[Ha+48>>2];Zb=q[Ha>>2];Nb=q[Ha+40>>2];fc=vp(bc,Vb+q[Zb>>2]|0,Nb);vp(Wb,Vb+q[Zb>>2]|0,Nb);hc=q[Ha+44>>2];Zb=q[Ha+48>>2];gc=q[Ha>>2];cc=q[Ha+40>>2];ic=cc;dc=vp($b,Zb+q[gc>>2]|0,cc);Vb=q[Ha+80>>2];if(Vb>>>0>=2){jc=(Xb|0)<1;bc=1;Ha=0;while(1){Nb=q[gc>>2];$b=Up(bc,Ha,cc,hc)+Zb|0;kc=vp(fc,Nb+$b|0,ic);if(!jc){lc=q[i+8>>2];Nb=0;while(1){ec=Nb<<2;Wb=ec+lc|0;$b=ec+kc|0;Yb=u[$b>>2];if(!!(u[Wb>>2]>Yb)){u[Wb>>2]=Yb;Yb=u[$b>>2]}$b=dc+ec|0;if(!!(u[$b>>2]<Yb)){u[$b>>2]=Yb}Nb=Nb+1|0;if((Xb|0)!=(Nb|0)){continue}break}}Nb=bc+1|0;if(Nb>>>0<1){Ha=Ha+1|0}bc=Nb;if(!Ha&Nb>>>0<Vb>>>0|Ha>>>0<0){continue}break}}Nb=0;b:{c:{if((Xb|0)<=0){ac=u[i+20>>2];break c}Zb=q[i+8>>2];while(1){Wb=0;Vb=Nb<<2;Ha=Vb+Zb|0;ac=u[Ha>>2];if((q[Ha>>2]&2139095040)==2139095040){break b}Ha=Vb+dc|0;Yb=u[Ha>>2];if((q[Ha>>2]&2139095040)==2139095040){break b}Yb=x(Yb-ac);ac=u[i+20>>2];if(!!(Yb>ac)){u[i+20>>2]=Yb;ac=Yb}Nb=Nb+1|0;if((Xb|0)!=(Nb|0)){continue}break}}Wb=1;if(ac!=x(0)){break b}q[i+20>>2]=1065353216}pp(fc);pp(dc)}T=_b+16|0;return Wb}To();F()}function ec(i,Ha){var Nb=0,mc=0,nc=0,oc=0;nc=T-16|0;T=nc;mc=q[i+4>>2];Nb=0;a:{if((mc|0)==-1){break a}Nb=nc;b:{c:{oc=q[Ha+20>>2];if((oc|0)<0?1:(oc|0)<=0?t[Ha+16>>2]>0?0:1:0){oc=Ha+4|0;Vb(Ha,q[oc>>2],q[i+8>>2],q[i+12>>2]);mc=q[Ha+20>>2];if((mc|0)<0?1:(mc|0)<=0?t[Ha+16>>2]>=1?0:1:0){break c}mc=q[i+4>>2]}o[Nb+15|0]=mc;break b}Nb=i+20|0;Vb(Ha,q[oc>>2],Nb,Nb+4|0);mc=q[Ha+20>>2];Nb=q[Ha+16>>2];o[nc+15|0]=q[i+4>>2];if((mc|0)>0?1:(mc|0)>=0?Nb>>>0<=0?0:1:0){break b}Vb(Ha,q[Ha+4>>2],nc+15|0,nc+16|0)}Nb=1}T=nc+16|0;return Nb}function fc(i,Ha,pc,qc){var rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=x(0),Cc=0,Dc=x(0),Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0;uc=T-16|0;T=uc;rc=o[pc+24|0];kc(i,qc,rc,0,pc);i=q[i>>2];vc=q[i+48>>2];sc=q[Ha+4>>2];i=q[q[i>>2]>>2];tc=Pl(uc+8|0);Ql(tc,u[Ha+20>>2],-1<<sc^-1);sc=zo((rc&1073741823)!=(rc|0)?-1:rc<<2);if(qc){Cc=i+vc|0;Dc=u[tc>>2];Ec=q[pc>>2];vc=q[pc+48>>2];tc=q[pc+44>>2];zc=q[pc+40>>2];Fc=zc;Gc=r[pc+84|0];Hc=pc+68|0;Ic=(rc|0)<1;Jc=Ha+8|0;Ha=0;while(1){i=Ha;pc=sc;wc=q[Ec>>2];xc=zc;yc=tc;if(!Gc){i=q[q[Hc>>2]+(Ha<<2)>>2]}i=Up(xc,yc,i,0)+vc|0;xc=vp(pc,i+wc|0,Fc);if(!Ic){yc=q[Jc>>2];pc=0;while(1){wc=Cc+(Ac<<2)|0;i=pc<<2;Bc=x(C(x(x(Dc*x(u[i+xc>>2]-u[i+yc>>2]))+x(.5))));a:{if(x(y(Bc))<x(2147483648)){i=~~Bc;break a}i=-2147483648}q[wc>>2]=i;Ac=Ac+1|0;pc=pc+1|0;if((rc|0)!=(pc|0)){continue}break}}Ha=Ha+1|0;if((Ha|0)!=(qc|0)){continue}break}}pp(sc);T=uc+16|0}function gc(i,Ha,pc,qc,Kc){var Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=x(0),Vc=0,Wc=0,Xc=x(0),Yc=0,Zc=0,_c=0,$c=0,ad=0,bd=0;Qc=T-16|0;T=Qc;Oc=qc+4|0;Lc=o[pc+24|0];kc(i,q[Oc>>2]-q[qc>>2]>>2,Lc,Kc,pc);i=q[i>>2];Kc=q[i+48>>2];Pc=q[Ha+4>>2];Nc=q[q[i>>2]>>2];Mc=Pl(Qc+8|0);Ql(Mc,u[Ha+20>>2],-1<<Pc^-1);i=zo((Lc&1073741823)!=(Lc|0)?-1:Lc<<2);Rc=q[qc>>2];qc=q[Oc>>2];if((Rc|0)!=(qc|0)){Vc=Kc+Nc|0;Wc=qc-Rc>>2;Xc=u[Mc>>2];Yc=q[pc>>2];Kc=q[pc+48>>2];Oc=q[pc+44>>2];Pc=q[pc+40>>2];Zc=Pc;qc=0;_c=r[pc+84|0];$c=pc+68|0;ad=(Lc|0)<1;bd=Ha+8|0;while(1){Ha=q[(Sc<<2)+Rc>>2];pc=i;Tc=q[Yc>>2];Nc=Pc;Mc=Oc;if(!_c){Ha=q[q[$c>>2]+(Ha<<2)>>2]}Ha=Up(Nc,Mc,Ha,0)+Kc|0;Nc=vp(pc,Ha+Tc|0,Zc);if(!ad){Mc=q[bd>>2];pc=0;while(1){Tc=Vc+(qc<<2)|0;Ha=pc<<2;Uc=x(C(x(x(Xc*x(u[Ha+Nc>>2]-u[Ha+Mc>>2]))+x(.5))));a:{if(x(y(Uc))<x(2147483648)){Ha=~~Uc;break a}Ha=-2147483648}q[Tc>>2]=Ha;qc=qc+1|0;pc=pc+1|0;if((Lc|0)!=(pc|0)){continue}break}}Sc=Sc+1|0;if(Sc>>>0<Wc>>>0){continue}break}}pp(i);T=Qc+16|0}function hc(i){i=i|0;var Ha=0;q[i>>2]=1384;Ha=q[i+8>>2];if(Ha){q[i+12>>2]=Ha;pp(Ha)}return i|0}function ic(i){i=i|0;var pc=0;q[i>>2]=1384;pc=q[i+8>>2];if(pc){q[i+12>>2]=pc;pp(pc)}pp(i)}function jc(i){i=i|0;return 1}function kc(i,Kc,cd,dd,ed){var fd=0,gd=0,hd=0;fd=T+ -64|0;T=fd;gd=mc(fd);ed=q[ed+56>>2];hd=cd<<24>>24;cd=w(Cl(6),cd);nc(gd,ed,0,hd,6,cd,cd>>31);cd=zo(96);ed=qc(cd,gd);q[i>>2]=cd;sc(ed,Kc);i=q[i>>2];a:{if(dd){o[i+84|0]=0;cd=q[i+68>>2];Kc=q[i+72>>2]-cd>>2;if(Kc>>>0<dd>>>0){lc(i+68|0,dd-Kc|0,1528);break a}if(Kc>>>0<=dd>>>0){break a}q[i+72>>2]=cd+(dd<<2);break a}o[i+84|0]=1;q[i+72>>2]=q[i+68>>2]}T=fd- -64|0}function lc(i,qc,Kc){var cd=0,dd=0,ed=0,id=0,jd=0,kd=0;ed=q[i+8>>2];cd=q[i+4>>2];if(ed-cd>>2>>>0>=qc>>>0){while(1){q[cd>>2]=q[Kc>>2];cd=cd+4|0;qc=qc+ -1|0;if(qc){continue}break}q[i+4>>2]=cd;return}a:{id=q[i>>2];jd=cd-id|0;kd=jd>>2;cd=kd+qc|0;if(cd>>>0<1073741824){ed=ed-id|0;dd=ed>>1;cd=ed>>2>>>0<536870911?dd>>>0<cd>>>0?cd:dd:1073741823;dd=0;b:{if(!cd){break b}if(cd>>>0>=1073741824){break a}dd=zo(cd<<2)}ed=dd+(cd<<2)|0;cd=dd+(kd<<2)|0;while(1){q[cd>>2]=q[Kc>>2];cd=cd+4|0;qc=qc+ -1|0;if(qc){continue}break}if((jd|0)>=1){vp(dd,id,jd)}q[i>>2]=dd;q[i+8>>2]=ed;q[i+4>>2]=cd;if(id){pp(id)}return}To();F()}Qb(1532);F()}function mc(i){q[i+8>>2]=0;q[i+12>>2]=0;q[i>>2]=0;q[i+40>>2]=0;q[i+44>>2]=0;q[i+28>>2]=9;o[i+24|0]=1;q[i+56>>2]=-1;q[i+60>>2]=0;q[i+16>>2]=0;q[i+20>>2]=0;q[i+48>>2]=0;q[i+52>>2]=0;return i}function nc(i,qc,Kc,ld,md,nd,od){var pd=0;q[i>>2]=Kc;if(Kc){pd=q[Kc+20>>2];q[i+8>>2]=q[Kc+16>>2];q[i+12>>2]=pd;pd=q[Kc+28>>2];q[i+16>>2]=q[Kc+24>>2];q[i+20>>2]=pd}q[i+56>>2]=qc;q[i+48>>2]=0;q[i+52>>2]=0;q[i+40>>2]=nd;q[i+44>>2]=od;o[i+32|0]=0;q[i+28>>2]=md;o[i+24|0]=ld}function oc(i,qc,Kc,ld){var md=0;q[i>>2]=qc;md=q[qc+20>>2];q[i+8>>2]=q[qc+16>>2];q[i+12>>2]=md;md=q[qc+24>>2];qc=q[qc+28>>2];q[i+48>>2]=0;q[i+52>>2]=0;q[i+40>>2]=Kc;q[i+44>>2]=ld;q[i+16>>2]=md;q[i+20>>2]=qc}function pc(i){mc(i);q[i+64>>2]=0;q[i+68>>2]=0;q[i+88>>2]=0;q[i+72>>2]=0;q[i+76>>2]=0;o[i+77|0]=0;o[i+78|0]=0;o[i+79|0]=0;o[i+80|0]=0;o[i+81|0]=0;o[i+82|0]=0;o[i+83|0]=0;o[i+84|0]=0;return i}function qc(i,qc){var Kc=0;Kc=q[qc+4>>2];q[i>>2]=q[qc>>2];q[i+4>>2]=Kc;Kc=q[qc+60>>2];q[i+56>>2]=q[qc+56>>2];q[i+60>>2]=Kc;Kc=q[qc+52>>2];q[i+48>>2]=q[qc+48>>2];q[i+52>>2]=Kc;Kc=q[qc+44>>2];q[i+40>>2]=q[qc+40>>2];q[i+44>>2]=Kc;Kc=q[qc+36>>2];q[i+32>>2]=q[qc+32>>2];q[i+36>>2]=Kc;Kc=q[qc+28>>2];q[i+24>>2]=q[qc+24>>2];q[i+28>>2]=Kc;Kc=q[qc+20>>2];q[i+16>>2]=q[qc+16>>2];q[i+20>>2]=Kc;Kc=q[qc+12>>2];q[i+8>>2]=q[qc+8>>2];q[i+12>>2]=Kc;q[i+88>>2]=0;q[i+64>>2]=0;q[i+68>>2]=0;q[i+72>>2]=0;q[i+76>>2]=0;o[i+77|0]=0;o[i+78|0]=0;o[i+79|0]=0;o[i+80|0]=0;o[i+81|0]=0;o[i+82|0]=0;o[i+83|0]=0;o[i+84|0]=0;return i}function rc(i,qc,ld,nd,od){var qd=0,rd=0,sd=0;qd=zo(32);yl(qd);rd=q[i+64>>2];q[i+64>>2]=qd;sd=i;if(rd){qd=q[rd>>2];if(qd){q[rd+4>>2]=qd;pp(qd)}pp(rd);qd=q[i+64>>2]}rd=qc;qc=w(Cl(nd),ld);nc(sd,rd,qd,ld,nd,qc,qc>>31);sc(i,od);o[i+84|0]=1;q[i+72>>2]=q[i+68>>2]}function sc(i,qc){var ld=0,nd=0;a:{if(q[i+64>>2]){break a}nd=zo(32);yl(nd);ld=q[i+64>>2];q[i+64>>2]=nd;if(!ld){break a}nd=q[ld>>2];if(nd){q[ld+4>>2]=nd;pp(nd)}pp(ld)}ld=Cl(q[i+28>>2]);ld=w(ld,o[i+24|0]);nd=ld;ld=ld>>31;if(zl(q[i+64>>2],Up(nd,ld,qc,0),V)){oc(i,q[i+64>>2],nd,ld);q[i+80>>2]=qc}}function tc(i,qc){var od=0,td=0;od=-1;td=q[qc+28>>2]+ -1|0;a:{if(td>>>0>10){break a}b:{c:{d:{switch(td-1|0){case 7:od=o[qc+24|0]+ -1|0;if(od>>>0>3){break b}e:{switch(od-1|0){default:od=uc(i,qc);break c;case 0:od=vc(i,qc);break c;case 1:od=wc(i,qc);break c;case 2:break e}}od=xc(i,qc);break c;default:od=o[qc+24|0]+ -1|0;if(od>>>0>3){break b}f:{switch(od-1|0){default:od=yc(i,qc);break c;case 0:od=zc(i,qc);break c;case 1:od=Ac(i,qc);break c;case 2:break f}}od=Bc(i,qc);break c;case 0:case 9:od=o[qc+24|0]+ -1|0;if(od>>>0>3){break b}g:{switch(od-1|0){default:od=yc(i,qc);break c;case 0:od=zc(i,qc);break c;case 1:od=Ac(i,qc);break c;case 2:break g}}od=Bc(i,qc);break c;case 2:od=o[qc+24|0]+ -1|0;if(od>>>0>3){break b}h:{switch(od-1|0){default:od=Cc(i,qc);break c;case 0:od=Dc(i,qc);break c;case 1:od=Ec(i,qc);break c;case 2:break h}}od=Fc(i,qc);break c;case 1:od=o[qc+24|0]+ -1|0;if(od>>>0>3){break b}i:{switch(od-1|0){default:od=Cc(i,qc);break c;case 0:od=Dc(i,qc);break c;case 1:od=Ec(i,qc);break c;case 2:break i}}od=Fc(i,qc);break c;case 4:od=o[qc+24|0]+ -1|0;if(od>>>0>3){break b}j:{switch(od-1|0){default:od=uc(i,qc);break c;case 0:od=vc(i,qc);break c;case 1:od=wc(i,qc);break c;case 2:break j}}od=xc(i,qc);break c;case 5:case 6:case 8:break a;case 3:break d}}od=o[qc+24|0]+ -1|0;if(od>>>0>3){break b}k:{switch(od-1|0){default:od=uc(i,qc);break c;case 0:od=vc(i,qc);break c;case 1:od=wc(i,qc);break c;case 2:break k}}od=xc(i,qc)}if(od){break a}}od=-1}return od}function uc(i,qc){var ud=0,vd=0,wd=0,xd=0,yd=0,zd=0,Ad=0,Bd=0,Cd=0,Dd=0,Ed=0,Fd=0,Gd=0,Hd=0,Id=0;wd=T+ -64|0;T=wd;q[wd+40>>2]=0;q[wd+44>>2]=0;q[wd+32>>2]=0;q[wd+36>>2]=0;q[wd+48>>2]=1065353216;ud=q[i+80>>2];q[wd+24>>2]=0;q[wd+16>>2]=0;q[wd+20>>2]=0;a:{b:{if(!ud){break b}if(ud>>>0>=1073741824){break a}ud=ud<<2;xd=zo(ud);q[wd+16>>2]=xd;vd=ud+xd|0;q[wd+24>>2]=vd;wp(xd,0,ud);q[wd+20>>2]=vd;Hd=i+40|0;while(1){ud=qc;vd=q[ud+48>>2];Cd=q[q[ud>>2]>>2];Fd=Dd;vd=Up(q[ud+40>>2],q[ud+44>>2],Dd,0)+vd|0;ud=Cd+vd|0;Ed=r[ud|0]|r[ud+1|0]<<8|(r[ud+2|0]<<16|r[ud+3|0]<<24);q[wd+28>>2]=Ed;c:{d:{e:{if(!zd){break e}vd=q[wd+32>>2];Cd=Ed^318;ud=Cd&zd+ -1;Gd=Xp(zd)>>>0>1;f:{if(!Gd){break f}ud=Cd;if(ud>>>0<zd>>>0){break f}ud=(Cd>>>0)%(zd>>>0)|0}vd=q[(ud<<2)+vd>>2];if(!vd){break e}vd=q[vd>>2];if(!vd){break e}Id=zd+ -1|0;while(1){yd=q[vd+4>>2];g:{if((Cd|0)!=(yd|0)){h:{if(!Gd){yd=yd&Id;break h}if(yd>>>0<zd>>>0){break h}yd=(yd>>>0)%(zd>>>0)|0}if((ud|0)==(yd|0)){break g}break e}if(q[vd+8>>2]==(Ed|0)){break d}}vd=q[vd>>2];if(vd){continue}break}}q[wd+12>>2]=Bd;q[wd+8>>2]=Ed;Gc(wd+56|0,wd+32|0,wd+8|0,wd+8|0);ud=q[Hd>>2];vp(q[q[i>>2]>>2]+w(ud,Bd)|0,wd+28|0,ud);xd=q[wd+16>>2];q[xd+(Fd<<2)>>2]=Bd;Bd=Bd+1|0;break c}q[(Fd<<2)+xd>>2]=q[vd+12>>2]}ud=Ad;Ad=Dd+1|0;if(Ad>>>0<1){ud=ud+1|0}Dd=Ad;Ad=ud;vd=q[i+80>>2];if(!ud&Dd>>>0<vd>>>0|ud>>>0<0){zd=q[wd+36>>2];continue}break}if((vd|0)!=(Bd|0)){i:{if(!r[i+84|0]){ud=q[i+72>>2];qc=q[i+68>>2];if((ud|0)==(qc|0)){break i}ud=ud-qc>>2;vd=0;while(1){Ad=qc+(vd<<2)|0;q[Ad>>2]=q[(q[Ad>>2]<<2)+xd>>2];vd=vd+1|0;if(vd>>>0<ud>>>0){continue}break}break i}o[i+84|0]=0;ud=q[i+68>>2];qc=q[i+72>>2]-ud>>2;j:{if(vd>>>0>qc>>>0){lc(i+68|0,vd-qc|0,1668);vd=q[i+80>>2];break j}if(vd>>>0>=qc>>>0){break j}q[i+72>>2]=ud+(vd<<2)}xd=q[wd+16>>2];if(!vd){break i}qc=q[i+68>>2];yd=0;while(1){ud=yd<<2;q[ud+qc>>2]=q[ud+xd>>2];yd=yd+1|0;if(yd>>>0<vd>>>0){continue}break}}q[i+80>>2]=Bd}if(!xd){break b}q[wd+20>>2]=xd;pp(xd)}vd=q[wd+40>>2];if(vd){while(1){i=q[vd>>2];pp(vd);vd=i;if(vd){continue}break}}i=q[wd+32>>2];q[wd+32>>2]=0;if(i){pp(i)}T=wd- -64|0;return Bd}To();F()}function vc(i,qc){var 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,Yd=0,Zd=0,_d=0;Kd=T-80|0;T=Kd;q[Kd+56>>2]=0;q[Kd+60>>2]=0;q[Kd+48>>2]=0;q[Kd+52>>2]=0;q[Kd+64>>2]=1065353216;Ld=q[i+80>>2];q[Kd+32>>2]=0;q[Kd+24>>2]=0;q[Kd+28>>2]=0;a:{b:{if(!Ld){break b}if(Ld>>>0>=1073741824){break a}Md=Ld<<2;Pd=zo(Md);q[Kd+24>>2]=Pd;Ld=Pd+Md|0;q[Kd+32>>2]=Ld;wp(Pd,0,Md);q[Kd+28>>2]=Ld;Yd=i+40|0;while(1){Ld=qc;Nd=q[Ld+48>>2];Md=q[q[Ld>>2]>>2];Wd=Ud;Ld=Up(q[Ld+40>>2],q[Ld+44>>2],Ud,0)+Nd|0;Nd=Md+Ld|0;Ld=r[Nd+4|0]|r[Nd+5|0]<<8|(r[Nd+6|0]<<16|r[Nd+7|0]<<24);Vd=r[Nd|0]|r[Nd+1|0]<<8|(r[Nd+2|0]<<16|r[Nd+3|0]<<24);q[Kd+40>>2]=Vd;q[Kd+44>>2]=Ld;c:{d:{e:{if(!Rd){break e}Jd=q[Kd+48>>2];Zd=Ld;Nd=Vd;Td=Ld^(Nd^318)+239;Md=Td&Rd+ -1;Xd=Xp(Rd)>>>0>1;f:{if(!Xd){break f}Md=Td;if(Md>>>0<Rd>>>0){break f}Md=(Td>>>0)%(Rd>>>0)|0}Jd=q[(Md<<2)+Jd>>2];if(!Jd){break e}Jd=q[Jd>>2];if(!Jd){break e}_d=Rd+ -1|0;while(1){Qd=q[Jd+4>>2];g:{if((Td|0)!=(Qd|0)){h:{if(!Xd){Qd=Qd&_d;break h}if(Qd>>>0<Rd>>>0){break h}Qd=(Qd>>>0)%(Rd>>>0)|0}if((Qd|0)==(Md|0)){break g}break e}if(q[Jd+8>>2]!=(Nd|0)){break g}if(q[Jd+12>>2]==(Zd|0)){break d}}Jd=q[Jd>>2];if(Jd){continue}break}}q[Kd+16>>2]=Sd;q[Kd+8>>2]=Vd;q[Kd+12>>2]=Ld;Hc(Kd+72|0,Kd+48|0,Kd+8|0,Kd+8|0);Ld=q[Yd>>2];vp(q[q[i>>2]>>2]+w(Ld,Sd)|0,Kd+40|0,Ld);Pd=q[Kd+24>>2];q[Pd+(Wd<<2)>>2]=Sd;Sd=Sd+1|0;break c}q[(Wd<<2)+Pd>>2]=q[Jd+16>>2]}Ld=Od;Od=Ud+1|0;if(Od>>>0<1){Ld=Ld+1|0}Ud=Od;Md=Od;Od=Ld;Jd=q[i+80>>2];if(!Ld&Md>>>0<Jd>>>0|Ld>>>0<0){Rd=q[Kd+52>>2];continue}break}if((Jd|0)!=(Sd|0)){i:{if(!r[i+84|0]){qc=q[i+72>>2];Ld=q[i+68>>2];if((qc|0)==(Ld|0)){break i}Od=qc-Ld>>2;Jd=0;while(1){qc=Ld+(Jd<<2)|0;q[qc>>2]=q[(q[qc>>2]<<2)+Pd>>2];Jd=Jd+1|0;if(Jd>>>0<Od>>>0){continue}break}break i}o[i+84|0]=0;qc=q[i+68>>2];Od=q[i+72>>2]-qc>>2;j:{if(Jd>>>0>Od>>>0){lc(i+68|0,Jd-Od|0,1668);Jd=q[i+80>>2];break j}if(Jd>>>0>=Od>>>0){break j}q[i+72>>2]=qc+(Jd<<2)}Pd=q[Kd+24>>2];if(!Jd){break i}Od=q[i+68>>2];Qd=0;while(1){qc=Qd<<2;q[qc+Od>>2]=q[qc+Pd>>2];Qd=Qd+1|0;if(Qd>>>0<Jd>>>0){continue}break}}q[i+80>>2]=Sd}if(!Pd){break b}q[Kd+28>>2]=Pd;pp(Pd)}Jd=q[Kd+56>>2];if(Jd){while(1){i=q[Jd>>2];pp(Jd);Jd=i;if(Jd){continue}break}}i=q[Kd+48>>2];q[Kd+48>>2]=0;if(i){pp(i)}T=Kd+80|0;return Sd}To();F()}function wc(i,qc){var $d=0,ae=0,be=0,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;be=T-80|0;T=be;q[be+56>>2]=0;q[be+60>>2]=0;q[be+48>>2]=0;q[be+52>>2]=0;q[be+64>>2]=1065353216;$d=q[i+80>>2];q[be+24>>2]=0;q[be+16>>2]=0;q[be+20>>2]=0;a:{b:{if(!$d){break b}if($d>>>0>=1073741824){break a}$d=$d<<2;ce=zo($d);q[be+16>>2]=ce;ae=$d+ce|0;q[be+24>>2]=ae;wp(ce,0,$d);q[be+20>>2]=ae;oe=i+40|0;while(1){$d=qc;ae=q[$d+48>>2];he=q[q[$d>>2]>>2];me=ie;ae=Up(q[$d+40>>2],q[$d+44>>2],ie,0)+ae|0;$d=he+ae|0;je=r[$d+8|0]|r[$d+9|0]<<8|(r[$d+10|0]<<16|r[$d+11|0]<<24);q[be+40>>2]=je;ae=r[$d+4|0]|r[$d+5|0]<<8|(r[$d+6|0]<<16|r[$d+7|0]<<24);ke=r[$d|0]|r[$d+1|0]<<8|(r[$d+2|0]<<16|r[$d+3|0]<<24);q[be+32>>2]=ke;q[be+36>>2]=ae;le=q[be+36>>2];c:{d:{e:{if(!ee){break e}ae=q[be+48>>2];he=((ke^318)+239^le)+239^je;$d=he&ee+ -1;ne=Xp(ee)>>>0>1;f:{if(!ne){break f}$d=he;if($d>>>0<ee>>>0){break f}$d=(he>>>0)%(ee>>>0)|0}ae=q[($d<<2)+ae>>2];if(!ae){break e}ae=q[ae>>2];if(!ae){break e}pe=ee+ -1|0;while(1){de=q[ae+4>>2];g:{if((he|0)!=(de|0)){h:{if(!ne){de=de&pe;break h}if(de>>>0<ee>>>0){break h}de=(de>>>0)%(ee>>>0)|0}if(($d|0)==(de|0)){break g}break e}if(q[ae+8>>2]!=(ke|0)|q[ae+12>>2]!=(le|0)){break g}if(q[ae+16>>2]==(je|0)){break d}}ae=q[ae>>2];if(ae){continue}break}}q[be+12>>2]=ge;q[be+8>>2]=je;q[be+4>>2]=le;q[be>>2]=ke;Ic(be+72|0,be+48|0,be,be);$d=q[oe>>2];vp(q[q[i>>2]>>2]+w($d,ge)|0,be+32|0,$d);ce=q[be+16>>2];q[ce+(me<<2)>>2]=ge;ge=ge+1|0;break c}q[(me<<2)+ce>>2]=q[ae+20>>2]}$d=fe;fe=ie+1|0;if(fe>>>0<1){$d=$d+1|0}ie=fe;fe=$d;ae=q[i+80>>2];if(!$d&ie>>>0<ae>>>0|$d>>>0<0){ee=q[be+52>>2];continue}break}if((ae|0)!=(ge|0)){i:{if(!r[i+84|0]){$d=q[i+72>>2];qc=q[i+68>>2];if(($d|0)==(qc|0)){break i}$d=$d-qc>>2;ae=0;while(1){fe=qc+(ae<<2)|0;q[fe>>2]=q[(q[fe>>2]<<2)+ce>>2];ae=ae+1|0;if(ae>>>0<$d>>>0){continue}break}break i}o[i+84|0]=0;$d=q[i+68>>2];qc=q[i+72>>2]-$d>>2;j:{if(ae>>>0>qc>>>0){lc(i+68|0,ae-qc|0,1668);ae=q[i+80>>2];break j}if(ae>>>0>=qc>>>0){break j}q[i+72>>2]=$d+(ae<<2)}ce=q[be+16>>2];if(!ae){break i}qc=q[i+68>>2];de=0;while(1){$d=de<<2;q[$d+qc>>2]=q[$d+ce>>2];de=de+1|0;if(de>>>0<ae>>>0){continue}break}}q[i+80>>2]=ge}if(!ce){break b}q[be+20>>2]=ce;pp(ce)}ae=q[be+56>>2];if(ae){while(1){i=q[ae>>2];pp(ae);ae=i;if(ae){continue}break}}i=q[be+48>>2];q[be+48>>2]=0;if(i){pp(i)}T=be+80|0;return ge}To();F()}function xc(i,qc){var qe=0,re=0,se=0,te=0,ue=0,ve=0,we=0,xe=0,ye=0,ze=0,Ae=0,Be=0,Ce=0,De=0,Ee=0,Fe=0,Ge=0,He=0;se=T-96|0;T=se;q[se+72>>2]=0;q[se+76>>2]=0;q[se+64>>2]=0;q[se+68>>2]=0;q[se+80>>2]=1065353216;qe=q[i+80>>2];q[se+40>>2]=0;q[se+32>>2]=0;q[se+36>>2]=0;a:{b:{if(!qe){break b}if(qe>>>0>=1073741824){break a}qe=qe<<2;te=zo(qe);q[se+32>>2]=te;re=qe+te|0;q[se+40>>2]=re;wp(te,0,qe);q[se+36>>2]=re;Ge=i+40|0;while(1){qe=qc;ve=q[qe+48>>2];re=q[q[qe>>2]>>2];Ee=ze;ve=Up(q[qe+40>>2],q[qe+44>>2],ze,0)+ve|0;qe=re+ve|0;ve=r[qe+12|0]|r[qe+13|0]<<8|(r[qe+14|0]<<16|r[qe+15|0]<<24);Ae=r[qe+8|0]|r[qe+9|0]<<8|(r[qe+10|0]<<16|r[qe+11|0]<<24);q[se+56>>2]=Ae;q[se+60>>2]=ve;re=r[qe+4|0]|r[qe+5|0]<<8|(r[qe+6|0]<<16|r[qe+7|0]<<24);ve=r[qe|0]|r[qe+1|0]<<8|(r[qe+2|0]<<16|r[qe+3|0]<<24);q[se+48>>2]=ve;q[se+52>>2]=re;Ce=q[se+52>>2];De=q[se+60>>2];c:{d:{e:{if(!we){break e}re=q[se+64>>2];Be=(((ve^318)+239^Ce)+239^Ae)+239^De;qe=Be&we+ -1;Fe=Xp(we)>>>0>1;f:{if(!Fe){break f}qe=Be;if(qe>>>0<we>>>0){break f}qe=(Be>>>0)%(we>>>0)|0}re=q[(qe<<2)+re>>2];if(!re){break e}re=q[re>>2];if(!re){break e}He=we+ -1|0;while(1){ue=q[re+4>>2];g:{if((Be|0)!=(ue|0)){h:{if(!Fe){ue=ue&He;break h}if(ue>>>0<we>>>0){break h}ue=(ue>>>0)%(we>>>0)|0}if((qe|0)==(ue|0)){break g}break e}if(q[re+8>>2]!=(ve|0)|q[re+12>>2]!=(Ce|0)|q[re+16>>2]!=(Ae|0)){break g}if(q[re+20>>2]==(De|0)){break d}}re=q[re>>2];if(re){continue}break}}q[se+24>>2]=ye;q[se+20>>2]=De;q[se+16>>2]=Ae;q[se+12>>2]=Ce;q[se+8>>2]=ve;Jc(se+88|0,se- -64|0,se+8|0,se+8|0);qe=q[Ge>>2];vp(q[q[i>>2]>>2]+w(qe,ye)|0,se+48|0,qe);te=q[se+32>>2];q[te+(Ee<<2)>>2]=ye;ye=ye+1|0;break c}q[(Ee<<2)+te>>2]=q[re+24>>2]}qe=xe;xe=ze+1|0;if(xe>>>0<1){qe=qe+1|0}ze=xe;xe=qe;re=q[i+80>>2];if(!qe&ze>>>0<re>>>0|qe>>>0<0){we=q[se+68>>2];continue}break}if((re|0)!=(ye|0)){i:{if(!r[i+84|0]){qe=q[i+72>>2];qc=q[i+68>>2];if((qe|0)==(qc|0)){break i}qe=qe-qc>>2;re=0;while(1){xe=qc+(re<<2)|0;q[xe>>2]=q[(q[xe>>2]<<2)+te>>2];re=re+1|0;if(re>>>0<qe>>>0){continue}break}break i}o[i+84|0]=0;qe=q[i+68>>2];qc=q[i+72>>2]-qe>>2;j:{if(re>>>0>qc>>>0){lc(i+68|0,re-qc|0,1668);re=q[i+80>>2];break j}if(re>>>0>=qc>>>0){break j}q[i+72>>2]=qe+(re<<2)}te=q[se+32>>2];if(!re){break i}qc=q[i+68>>2];ue=0;while(1){qe=ue<<2;q[qe+qc>>2]=q[qe+te>>2];ue=ue+1|0;if(ue>>>0<re>>>0){continue}break}}q[i+80>>2]=ye}if(!te){break b}q[se+36>>2]=te;pp(te)}re=q[se+72>>2];if(re){while(1){i=q[re>>2];pp(re);re=i;if(re){continue}break}}i=q[se+64>>2];q[se+64>>2]=0;if(i){pp(i)}T=se+96|0;return ye}To();F()}function yc(i,qc){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,We=0;Ke=T+ -64|0;T=Ke;q[Ke+40>>2]=0;q[Ke+44>>2]=0;q[Ke+32>>2]=0;q[Ke+36>>2]=0;q[Ke+48>>2]=1065353216;Je=q[i+80>>2];q[Ke+24>>2]=0;q[Ke+16>>2]=0;q[Ke+20>>2]=0;a:{b:{if(!Je){break b}if(Je>>>0>=1073741824){break a}Je=Je<<2;Le=zo(Je);q[Ke+16>>2]=Le;Ie=Je+Le|0;q[Ke+24>>2]=Ie;wp(Le,0,Je);q[Ke+20>>2]=Ie;Ve=i+40|0;while(1){Je=qc;Ie=q[Je+48>>2];Qe=q[q[Je>>2]>>2];Te=Re;Ie=Up(q[Je+40>>2],q[Je+44>>2],Re,0)+Ie|0;Se=r[Qe+Ie|0];o[Ke+31|0]=Se;c:{d:{e:{if(!Ne){break e}Ie=q[Ke+32>>2];Qe=Se^318;Je=Qe&Ne+ -1;Ue=Xp(Ne)>>>0>1;f:{if(!Ue){break f}Je=Qe;if(Je>>>0<Ne>>>0){break f}Je=(Qe>>>0)%(Ne>>>0)|0}Ie=q[(Je<<2)+Ie>>2];if(!Ie){break e}Ie=q[Ie>>2];if(!Ie){break e}We=Ne+ -1|0;while(1){Me=q[Ie+4>>2];g:{if((Qe|0)!=(Me|0)){h:{if(!Ue){Me=Me&We;break h}if(Me>>>0<Ne>>>0){break h}Me=(Me>>>0)%(Ne>>>0)|0}if((Je|0)==(Me|0)){break g}break e}if(r[Ie+8|0]==(Se|0)){break d}}Ie=q[Ie>>2];if(Ie){continue}break}}q[Ke+12>>2]=Pe;o[Ke+8|0]=Se;Sc(Ke+56|0,Ke+32|0,Ke+8|0,Ke+8|0);Je=q[Ve>>2];vp(q[q[i>>2]>>2]+w(Je,Pe)|0,Ke+31|0,Je);Le=q[Ke+16>>2];q[Le+(Te<<2)>>2]=Pe;Pe=Pe+1|0;break c}q[(Te<<2)+Le>>2]=q[Ie+12>>2]}Je=Oe;Oe=Re+1|0;if(Oe>>>0<1){Je=Je+1|0}Re=Oe;Oe=Je;Ie=q[i+80>>2];if(!Je&Re>>>0<Ie>>>0|Je>>>0<0){Ne=q[Ke+36>>2];continue}break}if((Ie|0)!=(Pe|0)){i:{if(!r[i+84|0]){Je=q[i+72>>2];qc=q[i+68>>2];if((Je|0)==(qc|0)){break i}Je=Je-qc>>2;Ie=0;while(1){Oe=qc+(Ie<<2)|0;q[Oe>>2]=q[(q[Oe>>2]<<2)+Le>>2];Ie=Ie+1|0;if(Ie>>>0<Je>>>0){continue}break}break i}o[i+84|0]=0;Je=q[i+68>>2];qc=q[i+72>>2]-Je>>2;j:{if(Ie>>>0>qc>>>0){lc(i+68|0,Ie-qc|0,1668);Ie=q[i+80>>2];break j}if(Ie>>>0>=qc>>>0){break j}q[i+72>>2]=Je+(Ie<<2)}Le=q[Ke+16>>2];if(!Ie){break i}qc=q[i+68>>2];Me=0;while(1){Je=Me<<2;q[Je+qc>>2]=q[Je+Le>>2];Me=Me+1|0;if(Me>>>0<Ie>>>0){continue}break}}q[i+80>>2]=Pe}if(!Le){break b}q[Ke+20>>2]=Le;pp(Le)}Ie=q[Ke+40>>2];if(Ie){while(1){i=q[Ie>>2];pp(Ie);Ie=i;if(Ie){continue}break}}i=q[Ke+32>>2];q[Ke+32>>2]=0;if(i){pp(i)}T=Ke- -64|0;return Pe}To();F()}function zc(i,qc){var Xe=0,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,lf=0,mf=0;Ze=T+ -64|0;T=Ze;q[Ze+40>>2]=0;q[Ze+44>>2]=0;q[Ze+32>>2]=0;q[Ze+36>>2]=0;q[Ze+48>>2]=1065353216;Xe=q[i+80>>2];q[Ze+24>>2]=0;q[Ze+16>>2]=0;q[Ze+20>>2]=0;a:{b:{if(!Xe){break b}if(Xe>>>0>=1073741824){break a}Xe=Xe<<2;_e=zo(Xe);q[Ze+16>>2]=_e;Ye=Xe+_e|0;q[Ze+24>>2]=Ye;wp(_e,0,Xe);q[Ze+20>>2]=Ye;lf=i+40|0;while(1){Xe=qc;Ye=q[Xe+48>>2];df=q[q[Xe>>2]>>2];gf=ef;Ye=Up(q[Xe+40>>2],q[Xe+44>>2],ef,0)+Ye|0;Xe=df+Ye|0;ff=r[Xe|0]|r[Xe+1|0]<<8;p[Ze+30>>1]=ff;c:{d:{e:{if(!af){break e}Ye=q[Ze+32>>2];hf=ff>>>8;jf=ff&255;df=hf^(jf^318)+239;Xe=df&af+ -1;kf=Xp(af)>>>0>1;f:{if(!kf){break f}Xe=df;if(af>>>0>Xe>>>0){break f}Xe=(df>>>0)%(af>>>0)|0}Ye=q[(Xe<<2)+Ye>>2];if(!Ye){break e}Ye=q[Ye>>2];if(!Ye){break e}mf=af+ -1|0;while(1){$e=q[Ye+4>>2];g:{if((df|0)!=($e|0)){h:{if(!kf){$e=$e&mf;break h}if($e>>>0<af>>>0){break h}$e=($e>>>0)%(af>>>0)|0}if((Xe|0)==($e|0)){break g}break e}if(r[Ye+8|0]!=(jf|0)){break g}if(r[Ye+9|0]==(hf|0)){break d}}Ye=q[Ye>>2];if(Ye){continue}break}}q[Ze+12>>2]=cf;p[Ze+8>>1]=ff;Tc(Ze+56|0,Ze+32|0,Ze+8|0,Ze+8|0);Xe=q[lf>>2];vp(q[q[i>>2]>>2]+w(Xe,cf)|0,Ze+30|0,Xe);_e=q[Ze+16>>2];q[_e+(gf<<2)>>2]=cf;cf=cf+1|0;break c}q[(gf<<2)+_e>>2]=q[Ye+12>>2]}Xe=bf;bf=ef+1|0;if(bf>>>0<1){Xe=Xe+1|0}ef=bf;bf=Xe;Ye=q[i+80>>2];if(!Xe&ef>>>0<Ye>>>0|Xe>>>0<0){af=q[Ze+36>>2];continue}break}if((Ye|0)!=(cf|0)){i:{if(!r[i+84|0]){Xe=q[i+72>>2];qc=q[i+68>>2];if((Xe|0)==(qc|0)){break i}Xe=Xe-qc>>2;Ye=0;while(1){bf=qc+(Ye<<2)|0;q[bf>>2]=q[(q[bf>>2]<<2)+_e>>2];Ye=Ye+1|0;if(Ye>>>0<Xe>>>0){continue}break}break i}o[i+84|0]=0;Xe=q[i+68>>2];qc=q[i+72>>2]-Xe>>2;j:{if(Ye>>>0>qc>>>0){lc(i+68|0,Ye-qc|0,1668);Ye=q[i+80>>2];break j}if(Ye>>>0>=qc>>>0){break j}q[i+72>>2]=Xe+(Ye<<2)}_e=q[Ze+16>>2];if(!Ye){break i}qc=q[i+68>>2];$e=0;while(1){Xe=$e<<2;q[Xe+qc>>2]=q[Xe+_e>>2];$e=$e+1|0;if($e>>>0<Ye>>>0){continue}break}}q[i+80>>2]=cf}if(!_e){break b}q[Ze+20>>2]=_e;pp(_e)}Ye=q[Ze+40>>2];if(Ye){while(1){i=q[Ye>>2];pp(Ye);Ye=i;if(Ye){continue}break}}i=q[Ze+32>>2];q[Ze+32>>2]=0;if(i){pp(i)}T=Ze- -64|0;return cf}To();F()}function Ac(i,qc){var nf=0,of=0,pf=0,qf=0,rf=0,sf=0,tf=0,uf=0,vf=0,wf=0,xf=0,yf=0,zf=0,Af=0,Bf=0,Cf=0,Df=0;pf=T+ -64|0;T=pf;q[pf+40>>2]=0;q[pf+44>>2]=0;q[pf+32>>2]=0;q[pf+36>>2]=0;q[pf+48>>2]=1065353216;nf=q[i+80>>2];q[pf+24>>2]=0;q[pf+16>>2]=0;q[pf+20>>2]=0;a:{b:{if(!nf){break b}if(nf>>>0>=1073741824){break a}nf=nf<<2;qf=zo(nf);q[pf+16>>2]=qf;of=nf+qf|0;q[pf+24>>2]=of;wp(qf,0,nf);q[pf+20>>2]=of;Cf=i+40|0;while(1){nf=qc;of=q[nf+48>>2];vf=q[q[nf>>2]>>2];Af=wf;of=Up(q[nf+40>>2],q[nf+44>>2],wf,0)+of|0;nf=vf+of|0;xf=r[nf+2|0];o[pf+30|0]=xf;p[pf+28>>1]=r[nf|0]|r[nf+1|0]<<8;yf=r[pf+28|0];zf=r[pf+29|0];c:{d:{e:{if(!sf){break e}of=q[pf+32>>2];vf=((yf^318)+239^zf)+239^xf;nf=vf&sf+ -1;Bf=Xp(sf)>>>0>1;f:{if(!Bf){break f}nf=vf;if(nf>>>0<sf>>>0){break f}nf=(vf>>>0)%(sf>>>0)|0}of=q[(nf<<2)+of>>2];if(!of){break e}of=q[of>>2];if(!of){break e}Df=sf+ -1|0;while(1){rf=q[of+4>>2];g:{if((vf|0)!=(rf|0)){h:{if(!Bf){rf=rf&Df;break h}if(rf>>>0<sf>>>0){break h}rf=(rf>>>0)%(sf>>>0)|0}if((nf|0)==(rf|0)){break g}break e}if(r[of+8|0]!=(yf|0)|r[of+9|0]!=(zf|0)){break g}if(r[of+10|0]==(xf|0)){break d}}of=q[of>>2];if(of){continue}break}}q[pf+12>>2]=uf;o[pf+10|0]=xf;o[pf+9|0]=zf;o[pf+8|0]=yf;Uc(pf+56|0,pf+32|0,pf+8|0,pf+8|0);nf=q[Cf>>2];vp(q[q[i>>2]>>2]+w(nf,uf)|0,pf+28|0,nf);qf=q[pf+16>>2];q[qf+(Af<<2)>>2]=uf;uf=uf+1|0;break c}q[(Af<<2)+qf>>2]=q[of+12>>2]}nf=tf;tf=wf+1|0;if(tf>>>0<1){nf=nf+1|0}wf=tf;tf=nf;of=q[i+80>>2];if(!nf&wf>>>0<of>>>0|nf>>>0<0){sf=q[pf+36>>2];continue}break}if((of|0)!=(uf|0)){i:{if(!r[i+84|0]){nf=q[i+72>>2];qc=q[i+68>>2];if((nf|0)==(qc|0)){break i}nf=nf-qc>>2;of=0;while(1){tf=qc+(of<<2)|0;q[tf>>2]=q[(q[tf>>2]<<2)+qf>>2];of=of+1|0;if(of>>>0<nf>>>0){continue}break}break i}o[i+84|0]=0;nf=q[i+68>>2];qc=q[i+72>>2]-nf>>2;j:{if(of>>>0>qc>>>0){lc(i+68|0,of-qc|0,1668);of=q[i+80>>2];break j}if(of>>>0>=qc>>>0){break j}q[i+72>>2]=nf+(of<<2)}qf=q[pf+16>>2];if(!of){break i}qc=q[i+68>>2];rf=0;while(1){nf=rf<<2;q[nf+qc>>2]=q[nf+qf>>2];rf=rf+1|0;if(rf>>>0<of>>>0){continue}break}}q[i+80>>2]=uf}if(!qf){break b}q[pf+20>>2]=qf;pp(qf)}of=q[pf+40>>2];if(of){while(1){i=q[of>>2];pp(of);of=i;if(of){continue}break}}i=q[pf+32>>2];q[pf+32>>2]=0;if(i){pp(i)}T=pf- -64|0;return uf}To();F()}function Bc(i,qc){var Ef=0,Ff=0,Gf=0,Hf=0,If=0,Jf=0,Kf=0,Lf=0,Mf=0,Nf=0,Of=0,Pf=0,Qf=0,Rf=0,Sf=0,Tf=0,Uf=0,Vf=0,Wf=0;Gf=T+ -64|0;T=Gf;q[Gf+40>>2]=0;q[Gf+44>>2]=0;q[Gf+32>>2]=0;q[Gf+36>>2]=0;q[Gf+48>>2]=1065353216;Ef=q[i+80>>2];q[Gf+24>>2]=0;q[Gf+16>>2]=0;q[Gf+20>>2]=0;a:{b:{if(!Ef){break b}if(Ef>>>0>=1073741824){break a}Ef=Ef<<2;Hf=zo(Ef);q[Gf+16>>2]=Hf;Ff=Ef+Hf|0;q[Gf+24>>2]=Ff;wp(Hf,0,Ef);q[Gf+20>>2]=Ff;Vf=i+40|0;while(1){Ef=qc;Ff=q[Ef+48>>2];Mf=q[q[Ef>>2]>>2];Rf=Of;Ff=Up(q[Ef+40>>2],q[Ef+44>>2],Of,0)+Ff|0;Ef=Mf+Ff|0;Nf=r[Ef|0]|r[Ef+1|0]<<8|(r[Ef+2|0]<<16|r[Ef+3|0]<<24);q[Gf+28>>2]=Nf;Pf=Nf>>>8&255;Qf=Nf>>>16&255;c:{d:{e:{if(!Jf){break e}Ff=q[Gf+32>>2];Sf=Nf>>>24;Tf=Nf&255;Mf=Sf^(((Tf^318)+239^Pf)+239^Qf)+239;Ef=Mf&Jf+ -1;Uf=Xp(Jf)>>>0>1;f:{if(!Uf){break f}Ef=Mf;if(Ef>>>0<Jf>>>0){break f}Ef=(Mf>>>0)%(Jf>>>0)|0}Ff=q[(Ef<<2)+Ff>>2];if(!Ff){break e}Ff=q[Ff>>2];if(!Ff){break e}Wf=Jf+ -1|0;while(1){If=q[Ff+4>>2];g:{if((Mf|0)!=(If|0)){h:{if(!Uf){If=If&Wf;break h}if(If>>>0<Jf>>>0){break h}If=(If>>>0)%(Jf>>>0)|0}if((Ef|0)==(If|0)){break g}break e}if(r[Ff+8|0]!=(Tf|0)|r[Ff+9|0]!=(Pf|0)|r[Ff+10|0]!=(Qf|0)){break g}if(r[Ff+11|0]==(Sf|0)){break d}}Ff=q[Ff>>2];if(Ff){continue}break}}q[Gf+12>>2]=Lf;q[Gf+8>>2]=Nf&-16776961|Qf<<16|Pf<<8;Vc(Gf+56|0,Gf+32|0,Gf+8|0,Gf+8|0);Ef=q[Vf>>2];vp(q[q[i>>2]>>2]+w(Ef,Lf)|0,Gf+28|0,Ef);Hf=q[Gf+16>>2];q[Hf+(Rf<<2)>>2]=Lf;Lf=Lf+1|0;break c}q[(Rf<<2)+Hf>>2]=q[Ff+12>>2]}Ef=Kf;Kf=Of+1|0;if(Kf>>>0<1){Ef=Ef+1|0}Of=Kf;Kf=Ef;Ff=q[i+80>>2];if(!Ef&Of>>>0<Ff>>>0|Ef>>>0<0){Jf=q[Gf+36>>2];continue}break}if((Ff|0)!=(Lf|0)){i:{if(!r[i+84|0]){Ef=q[i+72>>2];qc=q[i+68>>2];if((Ef|0)==(qc|0)){break i}Ef=Ef-qc>>2;Ff=0;while(1){Kf=qc+(Ff<<2)|0;q[Kf>>2]=q[(q[Kf>>2]<<2)+Hf>>2];Ff=Ff+1|0;if(Ff>>>0<Ef>>>0){continue}break}break i}o[i+84|0]=0;Ef=q[i+68>>2];qc=q[i+72>>2]-Ef>>2;j:{if(Ff>>>0>qc>>>0){lc(i+68|0,Ff-qc|0,1668);Ff=q[i+80>>2];break j}if(Ff>>>0>=qc>>>0){break j}q[i+72>>2]=Ef+(Ff<<2)}Hf=q[Gf+16>>2];if(!Ff){break i}qc=q[i+68>>2];If=0;while(1){Ef=If<<2;q[Ef+qc>>2]=q[Ef+Hf>>2];If=If+1|0;if(If>>>0<Ff>>>0){continue}break}}q[i+80>>2]=Lf}if(!Hf){break b}q[Gf+20>>2]=Hf;pp(Hf)}Ff=q[Gf+40>>2];if(Ff){while(1){i=q[Ff>>2];pp(Ff);Ff=i;if(Ff){continue}break}}i=q[Gf+32>>2];q[Gf+32>>2]=0;if(i){pp(i)}T=Gf- -64|0;return Lf}To();F()}function Cc(i,qc){var Xf=0,Yf=0,Zf=0,_f=0,$f=0,ag=0,bg=0,cg=0,dg=0,eg=0,fg=0,gg=0,hg=0,ig=0,jg=0;Zf=T+ -64|0;T=Zf;q[Zf+40>>2]=0;q[Zf+44>>2]=0;q[Zf+32>>2]=0;q[Zf+36>>2]=0;q[Zf+48>>2]=1065353216;Xf=q[i+80>>2];q[Zf+24>>2]=0;q[Zf+16>>2]=0;q[Zf+20>>2]=0;a:{b:{if(!Xf){break b}if(Xf>>>0>=1073741824){break a}Xf=Xf<<2;_f=zo(Xf);q[Zf+16>>2]=_f;Yf=Xf+_f|0;q[Zf+24>>2]=Yf;wp(_f,0,Xf);q[Zf+20>>2]=Yf;ig=i+40|0;while(1){Xf=qc;Yf=q[Xf+48>>2];dg=q[q[Xf>>2]>>2];gg=eg;Yf=Up(q[Xf+40>>2],q[Xf+44>>2],eg,0)+Yf|0;Xf=dg+Yf|0;fg=r[Xf|0]|r[Xf+1|0]<<8;p[Zf+30>>1]=fg;c:{d:{e:{if(!ag){break e}Yf=q[Zf+32>>2];dg=fg^318;Xf=dg&ag+ -1;hg=Xp(ag)>>>0>1;f:{if(!hg){break f}Xf=dg;if(ag>>>0>Xf>>>0){break f}Xf=(dg>>>0)%(ag>>>0)|0}Yf=q[(Xf<<2)+Yf>>2];if(!Yf){break e}Yf=q[Yf>>2];if(!Yf){break e}jg=ag+ -1|0;while(1){$f=q[Yf+4>>2];g:{if((dg|0)!=($f|0)){h:{if(!hg){$f=$f&jg;break h}if($f>>>0<ag>>>0){break h}$f=($f>>>0)%(ag>>>0)|0}if((Xf|0)==($f|0)){break g}break e}if(s[Yf+8>>1]==(fg|0)){break d}}Yf=q[Yf>>2];if(Yf){continue}break}}q[Zf+12>>2]=cg;p[Zf+8>>1]=fg;cd(Zf+56|0,Zf+32|0,Zf+8|0,Zf+8|0);Xf=q[ig>>2];vp(q[q[i>>2]>>2]+w(Xf,cg)|0,Zf+30|0,Xf);_f=q[Zf+16>>2];q[_f+(gg<<2)>>2]=cg;cg=cg+1|0;break c}q[(gg<<2)+_f>>2]=q[Yf+12>>2]}Xf=bg;bg=eg+1|0;if(bg>>>0<1){Xf=Xf+1|0}eg=bg;bg=Xf;Yf=q[i+80>>2];if(!Xf&eg>>>0<Yf>>>0|Xf>>>0<0){ag=q[Zf+36>>2];continue}break}if((Yf|0)!=(cg|0)){i:{if(!r[i+84|0]){Xf=q[i+72>>2];qc=q[i+68>>2];if((Xf|0)==(qc|0)){break i}Xf=Xf-qc>>2;Yf=0;while(1){bg=qc+(Yf<<2)|0;q[bg>>2]=q[(q[bg>>2]<<2)+_f>>2];Yf=Yf+1|0;if(Yf>>>0<Xf>>>0){continue}break}break i}o[i+84|0]=0;Xf=q[i+68>>2];qc=q[i+72>>2]-Xf>>2;j:{if(Yf>>>0>qc>>>0){lc(i+68|0,Yf-qc|0,1668);Yf=q[i+80>>2];break j}if(Yf>>>0>=qc>>>0){break j}q[i+72>>2]=Xf+(Yf<<2)}_f=q[Zf+16>>2];if(!Yf){break i}qc=q[i+68>>2];$f=0;while(1){Xf=$f<<2;q[Xf+qc>>2]=q[Xf+_f>>2];$f=$f+1|0;if($f>>>0<Yf>>>0){continue}break}}q[i+80>>2]=cg}if(!_f){break b}q[Zf+20>>2]=_f;pp(_f)}Yf=q[Zf+40>>2];if(Yf){while(1){i=q[Yf>>2];pp(Yf);Yf=i;if(Yf){continue}break}}i=q[Zf+32>>2];q[Zf+32>>2]=0;if(i){pp(i)}T=Zf- -64|0;return cg}To();F()}function Dc(i,qc){var kg=0,lg=0,mg=0,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,Ag=0;mg=T+ -64|0;T=mg;q[mg+40>>2]=0;q[mg+44>>2]=0;q[mg+32>>2]=0;q[mg+36>>2]=0;q[mg+48>>2]=1065353216;kg=q[i+80>>2];q[mg+24>>2]=0;q[mg+16>>2]=0;q[mg+20>>2]=0;a:{b:{if(!kg){break b}if(kg>>>0>=1073741824){break a}kg=kg<<2;ng=zo(kg);q[mg+16>>2]=ng;lg=kg+ng|0;q[mg+24>>2]=lg;wp(ng,0,kg);q[mg+20>>2]=lg;zg=i+40|0;while(1){kg=qc;lg=q[kg+48>>2];sg=q[q[kg>>2]>>2];vg=tg;lg=Up(q[kg+40>>2],q[kg+44>>2],tg,0)+lg|0;kg=sg+lg|0;ug=r[kg|0]|r[kg+1|0]<<8|(r[kg+2|0]<<16|r[kg+3|0]<<24);q[mg+28>>2]=ug;c:{d:{e:{if(!pg){break e}lg=q[mg+32>>2];wg=ug>>>16;xg=ug&65535;sg=wg^(xg^318)+239;kg=sg&pg+131071;yg=Xp(pg)>>>0>1;f:{if(!yg){break f}kg=sg;if(kg>>>0<pg>>>0){break f}kg=(sg>>>0)%(pg>>>0)|0}lg=q[(kg<<2)+lg>>2];if(!lg){break e}lg=q[lg>>2];if(!lg){break e}Ag=pg+ -1|0;while(1){og=q[lg+4>>2];g:{if((sg|0)!=(og|0)){h:{if(!yg){og=og&Ag;break h}if(og>>>0<pg>>>0){break h}og=(og>>>0)%(pg>>>0)|0}if((kg|0)==(og|0)){break g}break e}if(s[lg+8>>1]!=(xg|0)){break g}if(s[lg+10>>1]==(wg|0)){break d}}lg=q[lg>>2];if(lg){continue}break}}q[mg+12>>2]=rg;q[mg+8>>2]=ug;dd(mg+56|0,mg+32|0,mg+8|0,mg+8|0);kg=q[zg>>2];vp(q[q[i>>2]>>2]+w(kg,rg)|0,mg+28|0,kg);ng=q[mg+16>>2];q[ng+(vg<<2)>>2]=rg;rg=rg+1|0;break c}q[(vg<<2)+ng>>2]=q[lg+12>>2]}kg=qg;qg=tg+1|0;if(qg>>>0<1){kg=kg+1|0}tg=qg;qg=kg;lg=q[i+80>>2];if(!kg&tg>>>0<lg>>>0|kg>>>0<0){pg=q[mg+36>>2];continue}break}if((lg|0)!=(rg|0)){i:{if(!r[i+84|0]){kg=q[i+72>>2];qc=q[i+68>>2];if((kg|0)==(qc|0)){break i}kg=kg-qc>>2;lg=0;while(1){qg=qc+(lg<<2)|0;q[qg>>2]=q[(q[qg>>2]<<2)+ng>>2];lg=lg+1|0;if(lg>>>0<kg>>>0){continue}break}break i}o[i+84|0]=0;kg=q[i+68>>2];qc=q[i+72>>2]-kg>>2;j:{if(lg>>>0>qc>>>0){lc(i+68|0,lg-qc|0,1668);lg=q[i+80>>2];break j}if(lg>>>0>=qc>>>0){break j}q[i+72>>2]=kg+(lg<<2)}ng=q[mg+16>>2];if(!lg){break i}qc=q[i+68>>2];og=0;while(1){kg=og<<2;q[kg+qc>>2]=q[kg+ng>>2];og=og+1|0;if(og>>>0<lg>>>0){continue}break}}q[i+80>>2]=rg}if(!ng){break b}q[mg+20>>2]=ng;pp(ng)}lg=q[mg+40>>2];if(lg){while(1){i=q[lg>>2];pp(lg);lg=i;if(lg){continue}break}}i=q[mg+32>>2];q[mg+32>>2]=0;if(i){pp(i)}T=mg- -64|0;return rg}To();F()}function Ec(i,qc){var Bg=0,Cg=0,Dg=0,Eg=0,Fg=0,Gg=0,Hg=0,Ig=0,Jg=0,Kg=0,Lg=0,Mg=0,Ng=0,Og=0,Pg=0,Qg=0,Rg=0;Dg=T-80|0;T=Dg;q[Dg+56>>2]=0;q[Dg+60>>2]=0;q[Dg+48>>2]=0;q[Dg+52>>2]=0;q[Dg+64>>2]=1065353216;Bg=q[i+80>>2];q[Dg+32>>2]=0;q[Dg+24>>2]=0;q[Dg+28>>2]=0;a:{b:{if(!Bg){break b}if(Bg>>>0>=1073741824){break a}Bg=Bg<<2;Eg=zo(Bg);q[Dg+24>>2]=Eg;Cg=Bg+Eg|0;q[Dg+32>>2]=Cg;wp(Eg,0,Bg);q[Dg+28>>2]=Cg;Qg=i+40|0;while(1){Bg=qc;Cg=q[Bg+48>>2];Jg=q[q[Bg>>2]>>2];Og=Kg;Cg=Up(q[Bg+40>>2],q[Bg+44>>2],Kg,0)+Cg|0;Bg=Jg+Cg|0;Lg=r[Bg+4|0]|r[Bg+5|0]<<8;p[Dg+44>>1]=Lg;Mg=r[Bg|0]|r[Bg+1|0]<<8|(r[Bg+2|0]<<16|r[Bg+3|0]<<24);q[Dg+40>>2]=Mg;Ng=s[Dg+42>>1];c:{d:{e:{if(!Gg){break e}Cg=q[Dg+48>>2];Jg=(((Mg^318)&65535)+239^Ng)+239^Lg;Bg=Jg&Gg+262143;Pg=Xp(Gg)>>>0>1;f:{if(!Pg){break f}Bg=Jg;if(Bg>>>0<Gg>>>0){break f}Bg=(Jg>>>0)%(Gg>>>0)|0}Cg=q[(Bg<<2)+Cg>>2];if(!Cg){break e}Cg=q[Cg>>2];if(!Cg){break e}Rg=Gg+ -1|0;while(1){Fg=q[Cg+4>>2];g:{if((Jg|0)!=(Fg|0)){h:{if(!Pg){Fg=Fg&Rg;break h}if(Fg>>>0<Gg>>>0){break h}Fg=(Fg>>>0)%(Gg>>>0)|0}if((Bg|0)==(Fg|0)){break g}break e}if(s[Cg+8>>1]!=(Mg&65535)|s[Cg+10>>1]!=(Ng|0)){break g}if(s[Cg+12>>1]==(Lg|0)){break d}}Cg=q[Cg>>2];if(Cg){continue}break}}q[Dg+16>>2]=Ig;p[Dg+12>>1]=Lg;p[Dg+10>>1]=Ng;p[Dg+8>>1]=Mg;ed(Dg+72|0,Dg+48|0,Dg+8|0,Dg+8|0);Bg=q[Qg>>2];vp(q[q[i>>2]>>2]+w(Bg,Ig)|0,Dg+40|0,Bg);Eg=q[Dg+24>>2];q[Eg+(Og<<2)>>2]=Ig;Ig=Ig+1|0;break c}q[(Og<<2)+Eg>>2]=q[Cg+16>>2]}Bg=Hg;Hg=Kg+1|0;if(Hg>>>0<1){Bg=Bg+1|0}Kg=Hg;Hg=Bg;Cg=q[i+80>>2];if(!Bg&Kg>>>0<Cg>>>0|Bg>>>0<0){Gg=q[Dg+52>>2];continue}break}if((Cg|0)!=(Ig|0)){i:{if(!r[i+84|0]){Bg=q[i+72>>2];qc=q[i+68>>2];if((Bg|0)==(qc|0)){break i}Bg=Bg-qc>>2;Cg=0;while(1){Hg=qc+(Cg<<2)|0;q[Hg>>2]=q[(q[Hg>>2]<<2)+Eg>>2];Cg=Cg+1|0;if(Cg>>>0<Bg>>>0){continue}break}break i}o[i+84|0]=0;Bg=q[i+68>>2];qc=q[i+72>>2]-Bg>>2;j:{if(Cg>>>0>qc>>>0){lc(i+68|0,Cg-qc|0,1668);Cg=q[i+80>>2];break j}if(Cg>>>0>=qc>>>0){break j}q[i+72>>2]=Bg+(Cg<<2)}Eg=q[Dg+24>>2];if(!Cg){break i}qc=q[i+68>>2];Fg=0;while(1){Bg=Fg<<2;q[Bg+qc>>2]=q[Bg+Eg>>2];Fg=Fg+1|0;if(Fg>>>0<Cg>>>0){continue}break}}q[i+80>>2]=Ig}if(!Eg){break b}q[Dg+28>>2]=Eg;pp(Eg)}Cg=q[Dg+56>>2];if(Cg){while(1){i=q[Cg>>2];pp(Cg);Cg=i;if(Cg){continue}break}}i=q[Dg+48>>2];q[Dg+48>>2]=0;if(i){pp(i)}T=Dg+80|0;return Ig}To();F()}function Fc(i,qc){var Sg=0,Tg=0,Ug=0,Vg=0,Wg=0,Xg=0,Yg=0,Zg=0,_g=0,$g=0,ah=0,bh=0,ch=0,dh=0,eh=0,fh=0,gh=0,hh=0,ih=0,jh=0;Ug=T-80|0;T=Ug;q[Ug+56>>2]=0;q[Ug+60>>2]=0;q[Ug+48>>2]=0;q[Ug+52>>2]=0;q[Ug+64>>2]=1065353216;Tg=q[i+80>>2];q[Ug+32>>2]=0;q[Ug+24>>2]=0;q[Ug+28>>2]=0;a:{b:{if(!Tg){break b}if(Tg>>>0>=1073741824){break a}Tg=Tg<<2;Wg=zo(Tg);q[Ug+24>>2]=Wg;Vg=Tg+Wg|0;q[Ug+32>>2]=Vg;wp(Wg,0,Tg);q[Ug+28>>2]=Vg;gh=i+40|0;while(1){Tg=qc;Sg=q[Tg+48>>2];Vg=q[q[Tg>>2]>>2];bh=ah;Sg=Up(q[Tg+40>>2],q[Tg+44>>2],ah,0)+Sg|0;Sg=Vg+Sg|0;Tg=r[Sg+4|0]|r[Sg+5|0]<<8|(r[Sg+6|0]<<16|r[Sg+7|0]<<24);_g=r[Sg|0]|r[Sg+1|0]<<8|(r[Sg+2|0]<<16|r[Sg+3|0]<<24);q[Ug+40>>2]=_g;q[Ug+44>>2]=Tg;c:{d:{e:{if(!Yg){break e}Sg=q[Ug+48>>2];ch=Tg>>>16;dh=Tg&65535;eh=((Tg&65535)<<16|_g>>>16)&65535;hh=_g;$g=ch^(dh^(eh^((_g^318)&65535)+239)+239)+239;Vg=$g&Yg+ -1;fh=Xp(Yg)>>>0>1;f:{if(!fh){break f}Vg=$g;if(Vg>>>0<Yg>>>0){break f}Vg=($g>>>0)%(Yg>>>0)|0}Sg=q[(Vg<<2)+Sg>>2];if(!Sg){break e}Sg=q[Sg>>2];if(!Sg){break e}ih=Yg+ -1|0;while(1){Xg=q[Sg+4>>2];g:{if(($g|0)!=(Xg|0)){h:{if(!fh){Xg=Xg&ih;break h}if(Xg>>>0<Yg>>>0){break h}Xg=(Xg>>>0)%(Yg>>>0)|0}if((Vg|0)==(Xg|0)){break g}break e}if(s[Sg+8>>1]!=(hh&65535)|s[Sg+10>>1]!=(eh|0)|s[Sg+12>>1]!=(dh|0)){break g}if(s[Sg+14>>1]==(ch|0)){break d}}Sg=q[Sg>>2];if(Sg){continue}break}}q[Ug+16>>2]=Zg;q[Ug+8>>2]=_g;q[Ug+12>>2]=Tg;fd(Ug+72|0,Ug+48|0,Ug+8|0,Ug+8|0);Tg=q[gh>>2];vp(q[q[i>>2]>>2]+w(Tg,Zg)|0,Ug+40|0,Tg);Wg=q[Ug+24>>2];q[Wg+(bh<<2)>>2]=Zg;Zg=Zg+1|0;break c}q[(bh<<2)+Wg>>2]=q[Sg+16>>2]}Tg=jh;Vg=ah+1|0;if(Vg>>>0<1){Tg=Tg+1|0}ah=Vg;jh=Tg;Sg=q[i+80>>2];if(!Tg&Vg>>>0<Sg>>>0|Tg>>>0<0){Yg=q[Ug+52>>2];continue}break}if((Sg|0)!=(Zg|0)){i:{if(!r[i+84|0]){Tg=q[i+72>>2];qc=q[i+68>>2];if((Tg|0)==(qc|0)){break i}Tg=Tg-qc>>2;Sg=0;while(1){Vg=qc+(Sg<<2)|0;q[Vg>>2]=q[(q[Vg>>2]<<2)+Wg>>2];Sg=Sg+1|0;if(Sg>>>0<Tg>>>0){continue}break}break i}o[i+84|0]=0;Tg=q[i+68>>2];qc=q[i+72>>2]-Tg>>2;j:{if(Sg>>>0>qc>>>0){lc(i+68|0,Sg-qc|0,1668);Sg=q[i+80>>2];break j}if(Sg>>>0>=qc>>>0){break j}q[i+72>>2]=Tg+(Sg<<2)}Wg=q[Ug+24>>2];if(!Sg){break i}qc=q[i+68>>2];Xg=0;while(1){Tg=Xg<<2;q[Tg+qc>>2]=q[Tg+Wg>>2];Xg=Xg+1|0;if(Xg>>>0<Sg>>>0){continue}break}}q[i+80>>2]=Zg}if(!Wg){break b}q[Ug+28>>2]=Wg;pp(Wg)}Sg=q[Ug+56>>2];if(Sg){while(1){i=q[Sg>>2];pp(Sg);Sg=i;if(Sg){continue}break}}i=q[Ug+48>>2];q[Ug+48>>2]=0;if(i){pp(i)}T=Ug+80|0;return Zg}To();F()}function Gc(i,qc,kh,lh){var mh=0,nh=0,oh=0,ph=0,qh=x(0),rh=0,sh=0,th=x(0),uh=0,vh=0;sh=q[kh>>2];oh=sh^318;uh=i;a:{b:{mh=q[qc+4>>2];if(!mh){break b}nh=q[qc>>2];rh=Xp(mh);ph=mh+ -1&oh;c:{if(rh>>>0<=1){break c}kh=oh;ph=kh;if(kh>>>0<mh>>>0){break c}ph=(oh>>>0)%(mh>>>0)|0}kh=ph;ph=kh;kh=q[(kh<<2)+nh>>2];if(!kh){break b}vh=mh+ -1|0;rh=rh>>>0>1;while(1){kh=q[kh>>2];if(!kh){break b}nh=q[kh+4>>2];if((oh|0)!=(nh|0)){d:{if(!rh){nh=nh&vh;break d}if(nh>>>0<mh>>>0){break d}nh=(nh>>>0)%(mh>>>0)|0}if((nh|0)!=(ph|0)){break b}}if(q[kh+8>>2]!=(sh|0)){continue}break}qc=0;break a}kh=zo(16);q[kh+8>>2]=q[lh>>2];lh=q[lh+4>>2];q[kh+4>>2]=oh;q[kh+12>>2]=lh;q[kh>>2]=0;qh=u[qc+16>>2];th=x(q[qc+12>>2]+1>>>0);e:{if(!(!mh|!!(x(qh*x(mh>>>0))<th))){oh=ph;break e}mh=(mh+ -1&mh)!=0|mh>>>0<3|mh<<1;lh=qc;qh=x(D(x(th/qh)));f:{if(qh<x(4294967296)&qh>=x(0)){ph=~~qh>>>0;break f}ph=0}Kc(lh,mh>>>0<ph>>>0?ph:mh);mh=q[qc+4>>2];if(!(mh&mh+ -1)){oh=mh+ -1&oh;break e}if(oh>>>0<mh>>>0){break e}oh=(oh>>>0)%(mh>>>0)|0}oh=q[qc>>2]+(oh<<2)|0;nh=q[oh>>2];g:{h:{if(!nh){lh=qc+8|0;q[kh>>2]=q[lh>>2];q[lh>>2]=kh;q[oh>>2]=lh;lh=q[kh>>2];if(!lh){break g}nh=q[lh+4>>2];lh=mh+ -1|0;i:{if(!(lh&mh)){nh=lh&nh;break i}if(nh>>>0<mh>>>0){break i}nh=(nh>>>0)%(mh>>>0)|0}nh=q[qc>>2]+(nh<<2)|0;break h}q[kh>>2]=q[nh>>2]}q[nh>>2]=kh}qc=qc+12|0;q[qc>>2]=q[qc>>2]+1;qc=1}o[uh+4|0]=qc;q[i>>2]=kh}function Hc(i,qc,kh,lh){var wh=0,xh=0,yh=0,zh=0,Ah=x(0),Bh=0,Ch=0,Dh=0,Eh=x(0),Fh=0,Gh=0;Ch=q[kh+4>>2];Dh=q[kh>>2];yh=Ch^(Dh^318)+239;Fh=i;a:{b:{wh=q[qc+4>>2];if(!wh){break b}xh=q[qc>>2];Bh=Xp(wh);zh=wh+ -1&yh;c:{if(Bh>>>0<=1){break c}kh=yh;zh=kh;if(kh>>>0<wh>>>0){break c}zh=(yh>>>0)%(wh>>>0)|0}kh=zh;zh=kh;kh=q[(kh<<2)+xh>>2];if(!kh){break b}Gh=wh+ -1|0;Bh=Bh>>>0>1;while(1){kh=q[kh>>2];if(!kh){break b}xh=q[kh+4>>2];if((yh|0)!=(xh|0)){d:{if(!Bh){xh=xh&Gh;break d}if(xh>>>0<wh>>>0){break d}xh=(xh>>>0)%(wh>>>0)|0}if((xh|0)!=(zh|0)){break b}}if(q[kh+8>>2]!=(Dh|0)|q[kh+12>>2]!=(Ch|0)){continue}break}qc=0;break a}kh=zo(20);xh=q[lh+4>>2];q[kh+8>>2]=q[lh>>2];q[kh+12>>2]=xh;lh=q[lh+8>>2];q[kh+4>>2]=yh;q[kh+16>>2]=lh;q[kh>>2]=0;Ah=u[qc+16>>2];Eh=x(q[qc+12>>2]+1>>>0);e:{if(!(!wh|!!(x(Ah*x(wh>>>0))<Eh))){yh=zh;break e}wh=(wh+ -1&wh)!=0|wh>>>0<3|wh<<1;lh=qc;Ah=x(D(x(Eh/Ah)));f:{if(Ah<x(4294967296)&Ah>=x(0)){zh=~~Ah>>>0;break f}zh=0}Mc(lh,wh>>>0<zh>>>0?zh:wh);wh=q[qc+4>>2];if(!(wh&wh+ -1)){yh=wh+ -1&yh;break e}if(yh>>>0<wh>>>0){break e}yh=(yh>>>0)%(wh>>>0)|0}yh=q[qc>>2]+(yh<<2)|0;xh=q[yh>>2];g:{h:{if(!xh){lh=qc+8|0;q[kh>>2]=q[lh>>2];q[lh>>2]=kh;q[yh>>2]=lh;lh=q[kh>>2];if(!lh){break g}xh=q[lh+4>>2];lh=wh+ -1|0;i:{if(!(lh&wh)){xh=lh&xh;break i}if(xh>>>0<wh>>>0){break i}xh=(xh>>>0)%(wh>>>0)|0}xh=q[qc>>2]+(xh<<2)|0;break h}q[kh>>2]=q[xh>>2]}q[xh>>2]=kh}qc=qc+12|0;q[qc>>2]=q[qc>>2]+1;qc=1}o[Fh+4|0]=qc;q[i>>2]=kh}function Ic(i,qc,kh,lh){var Hh=0,Ih=0,Jh=0,Kh=0,Lh=x(0),Mh=0,Nh=0,Oh=0,Ph=0,Qh=x(0),Rh=0,Sh=0;Nh=q[kh+8>>2];Oh=q[kh+4>>2];Ph=q[kh>>2];Jh=Nh^(Oh^(Ph^318)+239)+239;Rh=i;Hh=q[qc+4>>2];a:{b:{if(!Hh){break b}Ih=q[qc>>2];Mh=Xp(Hh);Kh=Hh+ -1&Jh;c:{if(Mh>>>0<=1){break c}kh=Jh;Kh=kh;if(kh>>>0<Hh>>>0){break c}Kh=(Jh>>>0)%(Hh>>>0)|0}kh=Kh;Kh=kh;kh=q[(kh<<2)+Ih>>2];if(!kh){break b}kh=q[kh>>2];if(!kh){break b}Sh=Hh+ -1|0;Mh=Mh>>>0>1;while(1){Ih=q[kh+4>>2];if((Jh|0)!=(Ih|0)){d:{if(!Mh){Ih=Ih&Sh;break d}if(Ih>>>0<Hh>>>0){break d}Ih=(Ih>>>0)%(Hh>>>0)|0}if((Ih|0)!=(Kh|0)){break b}}if(!(q[kh+8>>2]!=(Ph|0)|q[kh+12>>2]!=(Oh|0)|q[kh+16>>2]!=(Nh|0))){qc=0;break a}kh=q[kh>>2];if(kh){continue}break}}kh=zo(24);q[kh+16>>2]=q[lh+8>>2];Ih=q[lh+4>>2];q[kh+8>>2]=q[lh>>2];q[kh+12>>2]=Ih;lh=q[lh+12>>2];q[kh>>2]=0;q[kh+4>>2]=Jh;q[kh+20>>2]=lh;Lh=u[qc+16>>2];Qh=x(q[qc+12>>2]+1>>>0);e:{if(!(!Hh|!!(x(Lh*x(Hh>>>0))<Qh))){Jh=Kh;break e}Hh=(Hh+ -1&Hh)!=0|Hh>>>0<3|Hh<<1;lh=qc;Lh=x(D(x(Qh/Lh)));f:{if(Lh<x(4294967296)&Lh>=x(0)){Kh=~~Lh>>>0;break f}Kh=0}Oc(lh,Hh>>>0<Kh>>>0?Kh:Hh);Hh=q[qc+4>>2];if(!(Hh&Hh+ -1)){Jh=Hh+ -1&Jh;break e}if(Jh>>>0<Hh>>>0){break e}Jh=(Jh>>>0)%(Hh>>>0)|0}Jh=q[qc>>2]+(Jh<<2)|0;Ih=q[Jh>>2];g:{h:{if(!Ih){lh=qc+8|0;q[kh>>2]=q[lh>>2];q[lh>>2]=kh;q[Jh>>2]=lh;lh=q[kh>>2];if(!lh){break g}Ih=q[lh+4>>2];lh=Hh+ -1|0;i:{if(!(lh&Hh)){Ih=lh&Ih;break i}if(Ih>>>0<Hh>>>0){break i}Ih=(Ih>>>0)%(Hh>>>0)|0}Ih=q[qc>>2]+(Ih<<2)|0;break h}q[kh>>2]=q[Ih>>2]}q[Ih>>2]=kh}qc=qc+12|0;q[qc>>2]=q[qc>>2]+1;qc=1}o[Rh+4|0]=qc;q[i>>2]=kh}function Jc(i,qc,kh,lh){var Th=0,Uh=0,Vh=0,Wh=0,Xh=x(0),Yh=0,Zh=0,_h=0,$h=0,ai=0,bi=x(0),ci=0,di=0;Zh=q[kh+12>>2];_h=q[kh+8>>2];$h=q[kh+4>>2];ai=q[kh>>2];Vh=Zh^(_h^($h^(ai^318)+239)+239)+239;ci=i;Th=q[qc+4>>2];a:{b:{if(!Th){break b}Uh=q[qc>>2];Yh=Xp(Th);Wh=Th+ -1&Vh;c:{if(Yh>>>0<=1){break c}kh=Vh;Wh=kh;if(kh>>>0<Th>>>0){break c}Wh=(Vh>>>0)%(Th>>>0)|0}kh=Wh;Wh=kh;kh=q[(kh<<2)+Uh>>2];if(!kh){break b}kh=q[kh>>2];if(!kh){break b}di=Th+ -1|0;Yh=Yh>>>0>1;while(1){Uh=q[kh+4>>2];if((Vh|0)!=(Uh|0)){d:{if(!Yh){Uh=Uh&di;break d}if(Uh>>>0<Th>>>0){break d}Uh=(Uh>>>0)%(Th>>>0)|0}if((Uh|0)!=(Wh|0)){break b}}if(!(q[kh+8>>2]!=(ai|0)|q[kh+12>>2]!=($h|0)|(q[kh+16>>2]!=(_h|0)|q[kh+20>>2]!=(Zh|0)))){qc=0;break a}kh=q[kh>>2];if(kh){continue}break}}kh=zo(28);Uh=q[lh+12>>2];q[kh+16>>2]=q[lh+8>>2];q[kh+20>>2]=Uh;Uh=q[lh+4>>2];q[kh+8>>2]=q[lh>>2];q[kh+12>>2]=Uh;lh=q[lh+16>>2];q[kh>>2]=0;q[kh+4>>2]=Vh;q[kh+24>>2]=lh;Xh=u[qc+16>>2];bi=x(q[qc+12>>2]+1>>>0);e:{if(!(!Th|!!(x(Xh*x(Th>>>0))<bi))){Vh=Wh;break e}Th=(Th+ -1&Th)!=0|Th>>>0<3|Th<<1;lh=qc;Xh=x(D(x(bi/Xh)));f:{if(Xh<x(4294967296)&Xh>=x(0)){Wh=~~Xh>>>0;break f}Wh=0}Qc(lh,Th>>>0<Wh>>>0?Wh:Th);Th=q[qc+4>>2];if(!(Th&Th+ -1)){Vh=Th+ -1&Vh;break e}if(Vh>>>0<Th>>>0){break e}Vh=(Vh>>>0)%(Th>>>0)|0}Vh=q[qc>>2]+(Vh<<2)|0;Uh=q[Vh>>2];g:{h:{if(!Uh){lh=qc+8|0;q[kh>>2]=q[lh>>2];q[lh>>2]=kh;q[Vh>>2]=lh;lh=q[kh>>2];if(!lh){break g}Uh=q[lh+4>>2];lh=Th+ -1|0;i:{if(!(lh&Th)){Uh=lh&Uh;break i}if(Uh>>>0<Th>>>0){break i}Uh=(Uh>>>0)%(Th>>>0)|0}Uh=q[qc>>2]+(Uh<<2)|0;break h}q[kh>>2]=q[Uh>>2]}q[Uh>>2]=kh}qc=qc+12|0;q[qc>>2]=q[qc>>2]+1;qc=1}o[ci+4|0]=qc;q[i>>2]=kh}function Kc(i,qc){var kh=0,lh=0,ei=x(0);kh=2;a:{if((qc|0)==1){break a}kh=qc;if(!(qc+ -1&qc)){break a}kh=Yn(qc)}lh=q[i+4>>2];if(kh>>>0>lh>>>0){Lc(i,kh);return}b:{if(kh>>>0>=lh>>>0){break b}ei=x(D(x(x(t[i+12>>2])/u[i+16>>2])));c:{if(ei<x(4294967296)&ei>=x(0)){qc=~~ei>>>0;break c}qc=0}d:{e:{if(lh>>>0<3){break e}if(Xp(lh)>>>0>1){break e}qc=qc>>>0<2?qc:1<<32-z(qc+ -1|0);break d}qc=Yn(qc)}qc=kh>>>0<qc>>>0?qc:kh;if(qc>>>0>=lh>>>0){break b}Lc(i,qc)}}function Lc(i,qc){var fi=0,gi=0,hi=0,ii=0,ji=0,ki=0,li=0,mi=0,ni=0;a:{b:{if(qc){if(qc>>>0>=1073741824){break a}fi=zo(qc<<2);gi=q[i>>2];q[i>>2]=fi;if(gi){pp(gi)}q[i+4>>2]=qc;fi=0;while(1){q[q[i>>2]+(fi<<2)>>2]=0;fi=fi+1|0;if((fi|0)!=(qc|0)){continue}break}gi=i+8|0;ii=q[gi>>2];if(!ii){break b}ji=q[ii+4>>2];fi=Xp(qc);c:{if(fi>>>0<=1){ji=qc+ -1&ji;break c}if(ji>>>0<qc>>>0){break c}ji=(ji>>>0)%(qc>>>0)|0}q[q[i>>2]+(ji<<2)>>2]=gi;gi=q[ii>>2];if(!gi){break b}mi=qc+ -1|0;ni=fi>>>0>1;while(1){hi=q[gi+4>>2];d:{if(!ni){hi=hi&mi;break d}if(hi>>>0<qc>>>0){break d}hi=(hi>>>0)%(qc>>>0)|0}e:{if((hi|0)==(ji|0)){ii=gi;break e}fi=gi;ki=hi<<2;li=ki+q[i>>2]|0;if(!q[li>>2]){q[li>>2]=ii;ii=gi;ji=hi;break e}while(1){hi=fi;fi=q[fi>>2];if(q[gi+8>>2]==q[fi+8>>2]?fi:0){continue}break}q[ii>>2]=fi;q[hi>>2]=q[q[q[i>>2]+ki>>2]>>2];q[q[q[i>>2]+ki>>2]>>2]=gi}gi=q[ii>>2];if(gi){continue}break}break b}qc=q[i>>2];q[i>>2]=0;if(qc){pp(qc)}q[i+4>>2]=0}return}Qb(1600);F()}function Mc(i,qc){var oi=0,pi=0,qi=x(0);oi=2;a:{if((qc|0)==1){break a}oi=qc;if(!(qc+ -1&qc)){break a}oi=Yn(qc)}pi=q[i+4>>2];if(oi>>>0>pi>>>0){Nc(i,oi);return}b:{if(oi>>>0>=pi>>>0){break b}qi=x(D(x(x(t[i+12>>2])/u[i+16>>2])));c:{if(qi<x(4294967296)&qi>=x(0)){qc=~~qi>>>0;break c}qc=0}d:{e:{if(pi>>>0<3){break e}if(Xp(pi)>>>0>1){break e}qc=qc>>>0<2?qc:1<<32-z(qc+ -1|0);break d}qc=Yn(qc)}qc=oi>>>0<qc>>>0?qc:oi;if(qc>>>0>=pi>>>0){break b}Nc(i,qc)}}function Nc(i,qc){var ri=0,si=0,ti=0,ui=0,vi=0,wi=0,xi=0,yi=0,zi=0;a:{b:{if(qc){if(qc>>>0>=1073741824){break a}ri=zo(qc<<2);si=q[i>>2];q[i>>2]=ri;if(si){pp(si)}q[i+4>>2]=qc;ri=0;while(1){q[q[i>>2]+(ri<<2)>>2]=0;ri=ri+1|0;if((ri|0)!=(qc|0)){continue}break}si=i+8|0;ui=q[si>>2];if(!ui){break b}vi=q[ui+4>>2];ri=Xp(qc);c:{if(ri>>>0<=1){vi=qc+ -1&vi;break c}if(vi>>>0<qc>>>0){break c}vi=(vi>>>0)%(qc>>>0)|0}q[q[i>>2]+(vi<<2)>>2]=si;si=q[ui>>2];if(!si){break b}yi=qc+ -1|0;zi=ri>>>0>1;while(1){ti=q[si+4>>2];d:{if(!zi){ti=ti&yi;break d}if(ti>>>0<qc>>>0){break d}ti=(ti>>>0)%(qc>>>0)|0}e:{if((ti|0)==(vi|0)){ui=si;break e}ri=si;wi=ti<<2;xi=wi+q[i>>2]|0;if(!q[xi>>2]){q[xi>>2]=ui;ui=si;vi=ti;break e}while(1){ti=ri;ri=q[ri>>2];f:{if(!ri|q[si+8>>2]!=q[ri+8>>2]){break f}if(q[si+12>>2]==q[ri+12>>2]){continue}}break}q[ui>>2]=ri;q[ti>>2]=q[q[q[i>>2]+wi>>2]>>2];q[q[q[i>>2]+wi>>2]>>2]=si}si=q[ui>>2];if(si){continue}break}break b}qc=q[i>>2];q[i>>2]=0;if(qc){pp(qc)}q[i+4>>2]=0}return}Qb(1600);F()}function Oc(i,qc){var Ai=0,Bi=0,Ci=x(0);Ai=2;a:{if((qc|0)==1){break a}Ai=qc;if(!(qc+ -1&qc)){break a}Ai=Yn(qc)}Bi=q[i+4>>2];if(Ai>>>0>Bi>>>0){Pc(i,Ai);return}b:{if(Ai>>>0>=Bi>>>0){break b}Ci=x(D(x(x(t[i+12>>2])/u[i+16>>2])));c:{if(Ci<x(4294967296)&Ci>=x(0)){qc=~~Ci>>>0;break c}qc=0}d:{e:{if(Bi>>>0<3){break e}if(Xp(Bi)>>>0>1){break e}qc=qc>>>0<2?qc:1<<32-z(qc+ -1|0);break d}qc=Yn(qc)}qc=Ai>>>0<qc>>>0?qc:Ai;if(qc>>>0>=Bi>>>0){break b}Pc(i,qc)}}function Pc(i,qc){var Di=0,Ei=0,Fi=0,Gi=0,Hi=0,Ii=0,Ji=0,Ki=0,Li=0;a:{b:{if(qc){if(qc>>>0>=1073741824){break a}Di=zo(qc<<2);Ei=q[i>>2];q[i>>2]=Di;if(Ei){pp(Ei)}q[i+4>>2]=qc;Di=0;while(1){q[q[i>>2]+(Di<<2)>>2]=0;Di=Di+1|0;if((Di|0)!=(qc|0)){continue}break}Ei=i+8|0;Gi=q[Ei>>2];if(!Gi){break b}Hi=q[Gi+4>>2];Di=Xp(qc);c:{if(Di>>>0<=1){Hi=qc+ -1&Hi;break c}if(Hi>>>0<qc>>>0){break c}Hi=(Hi>>>0)%(qc>>>0)|0}q[q[i>>2]+(Hi<<2)>>2]=Ei;Ei=q[Gi>>2];if(!Ei){break b}Ki=qc+ -1|0;Li=Di>>>0>1;while(1){Fi=q[Ei+4>>2];d:{if(!Li){Fi=Fi&Ki;break d}if(Fi>>>0<qc>>>0){break d}Fi=(Fi>>>0)%(qc>>>0)|0}e:{if((Fi|0)==(Hi|0)){Gi=Ei;break e}Di=Ei;Ii=Fi<<2;Ji=Ii+q[i>>2]|0;if(!q[Ji>>2]){q[Ji>>2]=Gi;Gi=Ei;Hi=Fi;break e}while(1){Fi=Di;Di=q[Di>>2];f:{if(!Di|q[Ei+8>>2]!=q[Di+8>>2]|q[Ei+12>>2]!=q[Di+12>>2]){break f}if(q[Ei+16>>2]==q[Di+16>>2]){continue}}break}q[Gi>>2]=Di;q[Fi>>2]=q[q[q[i>>2]+Ii>>2]>>2];q[q[q[i>>2]+Ii>>2]>>2]=Ei}Ei=q[Gi>>2];if(Ei){continue}break}break b}qc=q[i>>2];q[i>>2]=0;if(qc){pp(qc)}q[i+4>>2]=0}return}Qb(1600);F()}function Qc(i,qc){var Mi=0,Ni=0,Oi=x(0);Mi=2;a:{if((qc|0)==1){break a}Mi=qc;if(!(qc+ -1&qc)){break a}Mi=Yn(qc)}Ni=q[i+4>>2];if(Mi>>>0>Ni>>>0){Rc(i,Mi);return}b:{if(Mi>>>0>=Ni>>>0){break b}Oi=x(D(x(x(t[i+12>>2])/u[i+16>>2])));c:{if(Oi<x(4294967296)&Oi>=x(0)){qc=~~Oi>>>0;break c}qc=0}d:{e:{if(Ni>>>0<3){break e}if(Xp(Ni)>>>0>1){break e}qc=qc>>>0<2?qc:1<<32-z(qc+ -1|0);break d}qc=Yn(qc)}qc=Mi>>>0<qc>>>0?qc:Mi;if(qc>>>0>=Ni>>>0){break b}Rc(i,qc)}}function Rc(i,qc){var Pi=0,Qi=0,Ri=0,Si=0,Ti=0,Ui=0,Vi=0,Wi=0,Xi=0;a:{b:{if(qc){if(qc>>>0>=1073741824){break a}Pi=zo(qc<<2);Qi=q[i>>2];q[i>>2]=Pi;if(Qi){pp(Qi)}q[i+4>>2]=qc;Pi=0;while(1){q[q[i>>2]+(Pi<<2)>>2]=0;Pi=Pi+1|0;if((Pi|0)!=(qc|0)){continue}break}Qi=i+8|0;Si=q[Qi>>2];if(!Si){break b}Ti=q[Si+4>>2];Pi=Xp(qc);c:{if(Pi>>>0<=1){Ti=qc+ -1&Ti;break c}if(Ti>>>0<qc>>>0){break c}Ti=(Ti>>>0)%(qc>>>0)|0}q[q[i>>2]+(Ti<<2)>>2]=Qi;Qi=q[Si>>2];if(!Qi){break b}Wi=qc+ -1|0;Xi=Pi>>>0>1;while(1){Ri=q[Qi+4>>2];d:{if(!Xi){Ri=Ri&Wi;break d}if(Ri>>>0<qc>>>0){break d}Ri=(Ri>>>0)%(qc>>>0)|0}e:{if((Ri|0)==(Ti|0)){Si=Qi;break e}Pi=Qi;Ui=Ri<<2;Vi=Ui+q[i>>2]|0;if(!q[Vi>>2]){q[Vi>>2]=Si;Si=Qi;Ti=Ri;break e}while(1){Ri=Pi;Pi=q[Pi>>2];f:{if(!Pi|q[Qi+8>>2]!=q[Pi+8>>2]|(q[Qi+12>>2]!=q[Pi+12>>2]|q[Qi+16>>2]!=q[Pi+16>>2])){break f}if(q[Qi+20>>2]==q[Pi+20>>2]){continue}}break}q[Si>>2]=Pi;q[Ri>>2]=q[q[q[i>>2]+Ui>>2]>>2];q[q[q[i>>2]+Ui>>2]>>2]=Qi}Qi=q[Si>>2];if(Qi){continue}break}break b}qc=q[i>>2];q[i>>2]=0;if(qc){pp(qc)}q[i+4>>2]=0}return}Qb(1600);F()}function Sc(i,qc,Yi,Zi){var _i=0,$i=0,aj=0,bj=0,cj=x(0),dj=0,ej=0,fj=x(0),gj=0,hj=0;ej=r[Yi|0];aj=ej^318;gj=i;a:{b:{_i=q[qc+4>>2];if(!_i){break b}$i=q[qc>>2];dj=Xp(_i);bj=_i+ -1&aj;c:{if(dj>>>0<=1){break c}Yi=aj;bj=Yi;if(Yi>>>0<_i>>>0){break c}bj=(aj>>>0)%(_i>>>0)|0}Yi=bj;bj=Yi;Yi=q[(Yi<<2)+$i>>2];if(!Yi){break b}hj=_i+ -1|0;dj=dj>>>0>1;while(1){Yi=q[Yi>>2];if(!Yi){break b}$i=q[Yi+4>>2];if((aj|0)!=($i|0)){d:{if(!dj){$i=$i&hj;break d}if($i>>>0<_i>>>0){break d}$i=($i>>>0)%(_i>>>0)|0}if(($i|0)!=(bj|0)){break b}}if(r[Yi+8|0]!=(ej|0)){continue}break}qc=0;break a}Yi=zo(16);o[Yi+8|0]=r[Zi|0];Zi=q[Zi+4>>2];q[Yi+4>>2]=aj;q[Yi+12>>2]=Zi;q[Yi>>2]=0;cj=u[qc+16>>2];fj=x(q[qc+12>>2]+1>>>0);e:{if(!(!_i|!!(x(cj*x(_i>>>0))<fj))){aj=bj;break e}_i=(_i+ -1&_i)!=0|_i>>>0<3|_i<<1;Zi=qc;cj=x(D(x(fj/cj)));f:{if(cj<x(4294967296)&cj>=x(0)){bj=~~cj>>>0;break f}bj=0}Wc(Zi,_i>>>0<bj>>>0?bj:_i);_i=q[qc+4>>2];if(!(_i&_i+ -1)){aj=_i+ -1&aj;break e}if(aj>>>0<_i>>>0){break e}aj=(aj>>>0)%(_i>>>0)|0}aj=q[qc>>2]+(aj<<2)|0;$i=q[aj>>2];g:{h:{if(!$i){Zi=qc+8|0;q[Yi>>2]=q[Zi>>2];q[Zi>>2]=Yi;q[aj>>2]=Zi;Zi=q[Yi>>2];if(!Zi){break g}$i=q[Zi+4>>2];Zi=_i+ -1|0;i:{if(!(Zi&_i)){$i=Zi&$i;break i}if($i>>>0<_i>>>0){break i}$i=($i>>>0)%(_i>>>0)|0}$i=q[qc>>2]+($i<<2)|0;break h}q[Yi>>2]=q[$i>>2]}q[$i>>2]=Yi}qc=qc+12|0;q[qc>>2]=q[qc>>2]+1;qc=1}o[gj+4|0]=qc;q[i>>2]=Yi}function Tc(i,qc,Yi,Zi){var ij=0,jj=0,kj=0,lj=0,mj=x(0),nj=0,oj=0,pj=0,qj=x(0),rj=0,sj=0;oj=r[Yi+1|0];pj=r[Yi|0];kj=oj^(pj^318)+239;rj=i;a:{b:{ij=q[qc+4>>2];if(!ij){break b}jj=q[qc>>2];nj=Xp(ij);lj=ij+1023&kj;c:{if(nj>>>0<=1){break c}Yi=kj;lj=Yi;if(Yi>>>0<ij>>>0){break c}lj=(kj>>>0)%(ij>>>0)|0}Yi=lj;lj=Yi;Yi=q[(Yi<<2)+jj>>2];if(!Yi){break b}sj=ij+ -1|0;nj=nj>>>0>1;while(1){Yi=q[Yi>>2];if(!Yi){break b}jj=q[Yi+4>>2];if((kj|0)!=(jj|0)){d:{if(!nj){jj=jj&sj;break d}if(jj>>>0<ij>>>0){break d}jj=(jj>>>0)%(ij>>>0)|0}if((jj|0)!=(lj|0)){break b}}if(r[Yi+8|0]!=(pj|0)|r[Yi+9|0]!=(oj|0)){continue}break}qc=0;break a}Yi=zo(16);p[Yi+8>>1]=r[Zi|0]|r[Zi+1|0]<<8;Zi=q[Zi+4>>2];q[Yi+4>>2]=kj;q[Yi+12>>2]=Zi;q[Yi>>2]=0;mj=u[qc+16>>2];qj=x(q[qc+12>>2]+1>>>0);e:{if(!(!ij|!!(x(mj*x(ij>>>0))<qj))){kj=lj;break e}ij=(ij+ -1&ij)!=0|ij>>>0<3|ij<<1;Zi=qc;mj=x(D(x(qj/mj)));f:{if(mj<x(4294967296)&mj>=x(0)){lj=~~mj>>>0;break f}lj=0}Yc(Zi,ij>>>0<lj>>>0?lj:ij);ij=q[qc+4>>2];if(!(ij&ij+ -1)){kj=ij+ -1&kj;break e}if(kj>>>0<ij>>>0){break e}kj=(kj>>>0)%(ij>>>0)|0}kj=q[qc>>2]+(kj<<2)|0;jj=q[kj>>2];g:{h:{if(!jj){Zi=qc+8|0;q[Yi>>2]=q[Zi>>2];q[Zi>>2]=Yi;q[kj>>2]=Zi;Zi=q[Yi>>2];if(!Zi){break g}jj=q[Zi+4>>2];Zi=ij+ -1|0;i:{if(!(Zi&ij)){jj=Zi&jj;break i}if(jj>>>0<ij>>>0){break i}jj=(jj>>>0)%(ij>>>0)|0}jj=q[qc>>2]+(jj<<2)|0;break h}q[Yi>>2]=q[jj>>2]}q[jj>>2]=Yi}qc=qc+12|0;q[qc>>2]=q[qc>>2]+1;qc=1}o[rj+4|0]=qc;q[i>>2]=Yi}function Uc(i,qc,Yi,Zi){var tj=0,uj=0,vj=0,wj=0,xj=x(0),yj=0,zj=0,Aj=0,Bj=0,Cj=x(0),Dj=0,Ej=0;zj=r[Yi+2|0];Aj=r[Yi+1|0];Bj=r[Yi|0];vj=zj^(Aj^(Bj^318)+239)+239;Dj=i;tj=q[qc+4>>2];a:{b:{if(!tj){break b}uj=q[qc>>2];yj=Xp(tj);wj=tj+ -1&vj;c:{if(yj>>>0<=1){break c}Yi=vj;wj=Yi;if(Yi>>>0<tj>>>0){break c}wj=(vj>>>0)%(tj>>>0)|0}Yi=wj;wj=Yi;Yi=q[(Yi<<2)+uj>>2];if(!Yi){break b}Yi=q[Yi>>2];if(!Yi){break b}Ej=tj+ -1|0;yj=yj>>>0>1;while(1){uj=q[Yi+4>>2];if((vj|0)!=(uj|0)){d:{if(!yj){uj=uj&Ej;break d}if(uj>>>0<tj>>>0){break d}uj=(uj>>>0)%(tj>>>0)|0}if((uj|0)!=(wj|0)){break b}}if(!(r[Yi+8|0]!=(Bj|0)|r[Yi+9|0]!=(Aj|0)|r[Yi+10|0]!=(zj|0))){qc=0;break a}Yi=q[Yi>>2];if(Yi){continue}break}}Yi=zo(16);o[Yi+10|0]=r[Zi+2|0];uj=r[Zi|0]|r[Zi+1|0]<<8;o[Yi+8|0]=uj;o[Yi+9|0]=uj>>>8;Zi=q[Zi+4>>2];q[Yi>>2]=0;q[Yi+4>>2]=vj;q[Yi+12>>2]=Zi;xj=u[qc+16>>2];Cj=x(q[qc+12>>2]+1>>>0);e:{if(!(!tj|!!(x(xj*x(tj>>>0))<Cj))){vj=wj;break e}tj=(tj+ -1&tj)!=0|tj>>>0<3|tj<<1;Zi=qc;xj=x(D(x(Cj/xj)));f:{if(xj<x(4294967296)&xj>=x(0)){wj=~~xj>>>0;break f}wj=0}_c(Zi,tj>>>0<wj>>>0?wj:tj);tj=q[qc+4>>2];if(!(tj&tj+ -1)){vj=tj+ -1&vj;break e}if(vj>>>0<tj>>>0){break e}vj=(vj>>>0)%(tj>>>0)|0}vj=q[qc>>2]+(vj<<2)|0;uj=q[vj>>2];g:{h:{if(!uj){Zi=qc+8|0;q[Yi>>2]=q[Zi>>2];q[Zi>>2]=Yi;q[vj>>2]=Zi;Zi=q[Yi>>2];if(!Zi){break g}uj=q[Zi+4>>2];Zi=tj+ -1|0;i:{if(!(Zi&tj)){uj=Zi&uj;break i}if(uj>>>0<tj>>>0){break i}uj=(uj>>>0)%(tj>>>0)|0}uj=q[qc>>2]+(uj<<2)|0;break h}q[Yi>>2]=q[uj>>2]}q[uj>>2]=Yi}qc=qc+12|0;q[qc>>2]=q[qc>>2]+1;qc=1}o[Dj+4|0]=qc;q[i>>2]=Yi}function Vc(i,qc,Yi,Zi){var Fj=0,Gj=0,Hj=0,Ij=0,Jj=x(0),Kj=0,Lj=0,Mj=0,Nj=0,Oj=0,Pj=x(0),Qj=0,Rj=0;Lj=r[Yi+3|0];Mj=r[Yi+2|0];Nj=r[Yi+1|0];Oj=r[Yi|0];Hj=Lj^(Mj^(Nj^(Oj^318)+239)+239)+239;Qj=i;Fj=q[qc+4>>2];a:{b:{if(!Fj){break b}Gj=q[qc>>2];Kj=Xp(Fj);Ij=Fj+ -1&Hj;c:{if(Kj>>>0<=1){break c}Yi=Hj;Ij=Yi;if(Yi>>>0<Fj>>>0){break c}Ij=(Hj>>>0)%(Fj>>>0)|0}Yi=Ij;Ij=Yi;Yi=q[(Yi<<2)+Gj>>2];if(!Yi){break b}Yi=q[Yi>>2];if(!Yi){break b}Rj=Fj+ -1|0;Kj=Kj>>>0>1;while(1){Gj=q[Yi+4>>2];if((Hj|0)!=(Gj|0)){d:{if(!Kj){Gj=Gj&Rj;break d}if(Gj>>>0<Fj>>>0){break d}Gj=(Gj>>>0)%(Fj>>>0)|0}if((Gj|0)!=(Ij|0)){break b}}if(!(r[Yi+8|0]!=(Oj|0)|r[Yi+9|0]!=(Nj|0)|(r[Yi+10|0]!=(Mj|0)|r[Yi+11|0]!=(Lj|0)))){qc=0;break a}Yi=q[Yi>>2];if(Yi){continue}break}}Yi=zo(16);q[Yi+8>>2]=r[Zi|0]|r[Zi+1|0]<<8|(r[Zi+2|0]<<16|r[Zi+3|0]<<24);Zi=q[Zi+4>>2];q[Yi+4>>2]=Hj;q[Yi+12>>2]=Zi;q[Yi>>2]=0;Jj=u[qc+16>>2];Pj=x(q[qc+12>>2]+1>>>0);e:{if(!(!Fj|!!(x(Jj*x(Fj>>>0))<Pj))){Hj=Ij;break e}Fj=(Fj+ -1&Fj)!=0|Fj>>>0<3|Fj<<1;Zi=qc;Jj=x(D(x(Pj/Jj)));f:{if(Jj<x(4294967296)&Jj>=x(0)){Ij=~~Jj>>>0;break f}Ij=0}ad(Zi,Fj>>>0<Ij>>>0?Ij:Fj);Fj=q[qc+4>>2];if(!(Fj&Fj+ -1)){Hj=Fj+ -1&Hj;break e}if(Hj>>>0<Fj>>>0){break e}Hj=(Hj>>>0)%(Fj>>>0)|0}Hj=q[qc>>2]+(Hj<<2)|0;Gj=q[Hj>>2];g:{h:{if(!Gj){Zi=qc+8|0;q[Yi>>2]=q[Zi>>2];q[Zi>>2]=Yi;q[Hj>>2]=Zi;Zi=q[Yi>>2];if(!Zi){break g}Gj=q[Zi+4>>2];Zi=Fj+ -1|0;i:{if(!(Zi&Fj)){Gj=Zi&Gj;break i}if(Gj>>>0<Fj>>>0){break i}Gj=(Gj>>>0)%(Fj>>>0)|0}Gj=q[qc>>2]+(Gj<<2)|0;break h}q[Yi>>2]=q[Gj>>2]}q[Gj>>2]=Yi}qc=qc+12|0;q[qc>>2]=q[qc>>2]+1;qc=1}o[Qj+4|0]=qc;q[i>>2]=Yi}function Wc(i,qc){var Yi=0,Zi=0,Sj=x(0);Yi=2;a:{if((qc|0)==1){break a}Yi=qc;if(!(qc+ -1&qc)){break a}Yi=Yn(qc)}Zi=q[i+4>>2];if(Yi>>>0>Zi>>>0){Xc(i,Yi);return}b:{if(Yi>>>0>=Zi>>>0){break b}Sj=x(D(x(x(t[i+12>>2])/u[i+16>>2])));c:{if(Sj<x(4294967296)&Sj>=x(0)){qc=~~Sj>>>0;break c}qc=0}d:{e:{if(Zi>>>0<3){break e}if(Xp(Zi)>>>0>1){break e}qc=qc>>>0<2?qc:1<<32-z(qc+ -1|0);break d}qc=Yn(qc)}qc=Yi>>>0<qc>>>0?qc:Yi;if(qc>>>0>=Zi>>>0){break b}Xc(i,qc)}}function Xc(i,qc){var Tj=0,Uj=0,Vj=0,Wj=0,Xj=0,Yj=0,Zj=0,_j=0,$j=0;a:{b:{if(qc){if(qc>>>0>=1073741824){break a}Tj=zo(qc<<2);Uj=q[i>>2];q[i>>2]=Tj;if(Uj){pp(Uj)}q[i+4>>2]=qc;Tj=0;while(1){q[q[i>>2]+(Tj<<2)>>2]=0;Tj=Tj+1|0;if((Tj|0)!=(qc|0)){continue}break}Uj=i+8|0;Wj=q[Uj>>2];if(!Wj){break b}Xj=q[Wj+4>>2];Tj=Xp(qc);c:{if(Tj>>>0<=1){Xj=qc+ -1&Xj;break c}if(Xj>>>0<qc>>>0){break c}Xj=(Xj>>>0)%(qc>>>0)|0}q[q[i>>2]+(Xj<<2)>>2]=Uj;Uj=q[Wj>>2];if(!Uj){break b}_j=qc+ -1|0;$j=Tj>>>0>1;while(1){Vj=q[Uj+4>>2];d:{if(!$j){Vj=Vj&_j;break d}if(Vj>>>0<qc>>>0){break d}Vj=(Vj>>>0)%(qc>>>0)|0}e:{if((Vj|0)==(Xj|0)){Wj=Uj;break e}Tj=Uj;Yj=Vj<<2;Zj=Yj+q[i>>2]|0;if(!q[Zj>>2]){q[Zj>>2]=Wj;Wj=Uj;Xj=Vj;break e}while(1){Vj=Tj;Tj=q[Tj>>2];if(r[Uj+8|0]==r[Tj+8|0]?Tj:0){continue}break}q[Wj>>2]=Tj;q[Vj>>2]=q[q[q[i>>2]+Yj>>2]>>2];q[q[q[i>>2]+Yj>>2]>>2]=Uj}Uj=q[Wj>>2];if(Uj){continue}break}break b}qc=q[i>>2];q[i>>2]=0;if(qc){pp(qc)}q[i+4>>2]=0}return}Qb(1600);F()}function Yc(i,qc){var ak=0,bk=0,ck=x(0);ak=2;a:{if((qc|0)==1){break a}ak=qc;if(!(qc+ -1&qc)){break a}ak=Yn(qc)}bk=q[i+4>>2];if(ak>>>0>bk>>>0){Zc(i,ak);return}b:{if(ak>>>0>=bk>>>0){break b}ck=x(D(x(x(t[i+12>>2])/u[i+16>>2])));c:{if(ck<x(4294967296)&ck>=x(0)){qc=~~ck>>>0;break c}qc=0}d:{e:{if(bk>>>0<3){break e}if(Xp(bk)>>>0>1){break e}qc=qc>>>0<2?qc:1<<32-z(qc+ -1|0);break d}qc=Yn(qc)}qc=ak>>>0<qc>>>0?qc:ak;if(qc>>>0>=bk>>>0){break b}Zc(i,qc)}}function Zc(i,qc){var dk=0,ek=0,fk=0,gk=0,hk=0,ik=0,jk=0,kk=0,lk=0;a:{b:{if(qc){if(qc>>>0>=1073741824){break a}dk=zo(qc<<2);ek=q[i>>2];q[i>>2]=dk;if(ek){pp(ek)}q[i+4>>2]=qc;dk=0;while(1){q[q[i>>2]+(dk<<2)>>2]=0;dk=dk+1|0;if((dk|0)!=(qc|0)){continue}break}ek=i+8|0;gk=q[ek>>2];if(!gk){break b}hk=q[gk+4>>2];dk=Xp(qc);c:{if(dk>>>0<=1){hk=qc+ -1&hk;break c}if(hk>>>0<qc>>>0){break c}hk=(hk>>>0)%(qc>>>0)|0}q[q[i>>2]+(hk<<2)>>2]=ek;ek=q[gk>>2];if(!ek){break b}kk=qc+ -1|0;lk=dk>>>0>1;while(1){fk=q[ek+4>>2];d:{if(!lk){fk=fk&kk;break d}if(fk>>>0<qc>>>0){break d}fk=(fk>>>0)%(qc>>>0)|0}e:{if((fk|0)==(hk|0)){gk=ek;break e}dk=ek;ik=fk<<2;jk=ik+q[i>>2]|0;if(!q[jk>>2]){q[jk>>2]=gk;gk=ek;hk=fk;break e}while(1){fk=dk;dk=q[dk>>2];f:{if(!dk|r[ek+8|0]!=r[dk+8|0]){break f}if(r[ek+9|0]==r[dk+9|0]){continue}}break}q[gk>>2]=dk;q[fk>>2]=q[q[q[i>>2]+ik>>2]>>2];q[q[q[i>>2]+ik>>2]>>2]=ek}ek=q[gk>>2];if(ek){continue}break}break b}qc=q[i>>2];q[i>>2]=0;if(qc){pp(qc)}q[i+4>>2]=0}return}Qb(1600);F()}function _c(i,qc){var mk=0,nk=0,ok=x(0);mk=2;a:{if((qc|0)==1){break a}mk=qc;if(!(qc+ -1&qc)){break a}mk=Yn(qc)}nk=q[i+4>>2];if(mk>>>0>nk>>>0){$c(i,mk);return}b:{if(mk>>>0>=nk>>>0){break b}ok=x(D(x(x(t[i+12>>2])/u[i+16>>2])));c:{if(ok<x(4294967296)&ok>=x(0)){qc=~~ok>>>0;break c}qc=0}d:{e:{if(nk>>>0<3){break e}if(Xp(nk)>>>0>1){break e}qc=qc>>>0<2?qc:1<<32-z(qc+ -1|0);break d}qc=Yn(qc)}qc=mk>>>0<qc>>>0?qc:mk;if(qc>>>0>=nk>>>0){break b}$c(i,qc)}}function $c(i,qc){var pk=0,qk=0,rk=0,sk=0,tk=0,uk=0,vk=0,wk=0,xk=0;a:{b:{if(qc){if(qc>>>0>=1073741824){break a}pk=zo(qc<<2);qk=q[i>>2];q[i>>2]=pk;if(qk){pp(qk)}q[i+4>>2]=qc;pk=0;while(1){q[q[i>>2]+(pk<<2)>>2]=0;pk=pk+1|0;if((pk|0)!=(qc|0)){continue}break}qk=i+8|0;sk=q[qk>>2];if(!sk){break b}tk=q[sk+4>>2];pk=Xp(qc);c:{if(pk>>>0<=1){tk=qc+ -1&tk;break c}if(tk>>>0<qc>>>0){break c}tk=(tk>>>0)%(qc>>>0)|0}q[q[i>>2]+(tk<<2)>>2]=qk;qk=q[sk>>2];if(!qk){break b}wk=qc+ -1|0;xk=pk>>>0>1;while(1){rk=q[qk+4>>2];d:{if(!xk){rk=rk&wk;break d}if(rk>>>0<qc>>>0){break d}rk=(rk>>>0)%(qc>>>0)|0}e:{if((rk|0)==(tk|0)){sk=qk;break e}pk=qk;uk=rk<<2;vk=uk+q[i>>2]|0;if(!q[vk>>2]){q[vk>>2]=sk;sk=qk;tk=rk;break e}while(1){rk=pk;pk=q[pk>>2];f:{if(!pk|r[qk+8|0]!=r[pk+8|0]|r[qk+9|0]!=r[pk+9|0]){break f}if(r[qk+10|0]==r[pk+10|0]){continue}}break}q[sk>>2]=pk;q[rk>>2]=q[q[q[i>>2]+uk>>2]>>2];q[q[q[i>>2]+uk>>2]>>2]=qk}qk=q[sk>>2];if(qk){continue}break}break b}qc=q[i>>2];q[i>>2]=0;if(qc){pp(qc)}q[i+4>>2]=0}return}Qb(1600);F()}function ad(i,qc){var yk=0,zk=0,Ak=x(0);yk=2;a:{if((qc|0)==1){break a}yk=qc;if(!(qc+ -1&qc)){break a}yk=Yn(qc)}zk=q[i+4>>2];if(yk>>>0>zk>>>0){bd(i,yk);return}b:{if(yk>>>0>=zk>>>0){break b}Ak=x(D(x(x(t[i+12>>2])/u[i+16>>2])));c:{if(Ak<x(4294967296)&Ak>=x(0)){qc=~~Ak>>>0;break c}qc=0}d:{e:{if(zk>>>0<3){break e}if(Xp(zk)>>>0>1){break e}qc=qc>>>0<2?qc:1<<32-z(qc+ -1|0);break d}qc=Yn(qc)}qc=yk>>>0<qc>>>0?qc:yk;if(qc>>>0>=zk>>>0){break b}bd(i,qc)}}function bd(i,qc){var Bk=0,Ck=0,Dk=0,Ek=0,Fk=0,Gk=0,Hk=0,Ik=0,Jk=0;a:{b:{if(qc){if(qc>>>0>=1073741824){break a}Bk=zo(qc<<2);Ck=q[i>>2];q[i>>2]=Bk;if(Ck){pp(Ck)}q[i+4>>2]=qc;Bk=0;while(1){q[q[i>>2]+(Bk<<2)>>2]=0;Bk=Bk+1|0;if((Bk|0)!=(qc|0)){continue}break}Ck=i+8|0;Ek=q[Ck>>2];if(!Ek){break b}Fk=q[Ek+4>>2];Bk=Xp(qc);c:{if(Bk>>>0<=1){Fk=qc+ -1&Fk;break c}if(Fk>>>0<qc>>>0){break c}Fk=(Fk>>>0)%(qc>>>0)|0}q[q[i>>2]+(Fk<<2)>>2]=Ck;Ck=q[Ek>>2];if(!Ck){break b}Ik=qc+ -1|0;Jk=Bk>>>0>1;while(1){Dk=q[Ck+4>>2];d:{if(!Jk){Dk=Dk&Ik;break d}if(Dk>>>0<qc>>>0){break d}Dk=(Dk>>>0)%(qc>>>0)|0}e:{if((Dk|0)==(Fk|0)){Ek=Ck;break e}Bk=Ck;Gk=Dk<<2;Hk=Gk+q[i>>2]|0;if(!q[Hk>>2]){q[Hk>>2]=Ek;Ek=Ck;Fk=Dk;break e}while(1){Dk=Bk;Bk=q[Bk>>2];f:{if(!Bk|r[Ck+8|0]!=r[Bk+8|0]|(r[Ck+9|0]!=r[Bk+9|0]|r[Ck+10|0]!=r[Bk+10|0])){break f}if(r[Ck+11|0]==r[Bk+11|0]){continue}}break}q[Ek>>2]=Bk;q[Dk>>2]=q[q[q[i>>2]+Gk>>2]>>2];q[q[q[i>>2]+Gk>>2]>>2]=Ck}Ck=q[Ek>>2];if(Ck){continue}break}break b}qc=q[i>>2];q[i>>2]=0;if(qc){pp(qc)}q[i+4>>2]=0}return}Qb(1600);F()}function cd(i,qc,Kk,Lk){var Mk=0,Nk=0,Ok=0,Pk=0,Qk=x(0),Rk=0,Sk=0,Tk=x(0),Uk=0,Vk=0;Rk=s[Kk>>1];Ok=Rk^318;Uk=i;a:{b:{Mk=q[qc+4>>2];if(!Mk){break b}Nk=q[qc>>2];Sk=Xp(Mk);Pk=Mk+ -1&Ok;c:{if(Sk>>>0<=1){break c}Kk=Ok;Pk=Kk;if(Mk>>>0>Kk>>>0){break c}Pk=(Ok>>>0)%(Mk>>>0)|0}Kk=Pk;Pk=Kk;Kk=q[(Kk<<2)+Nk>>2];if(!Kk){break b}Vk=Mk+ -1|0;Sk=Sk>>>0>1;while(1){Kk=q[Kk>>2];if(!Kk){break b}Nk=q[Kk+4>>2];if((Ok|0)!=(Nk|0)){d:{if(!Sk){Nk=Nk&Vk;break d}if(Nk>>>0<Mk>>>0){break d}Nk=(Nk>>>0)%(Mk>>>0)|0}if((Nk|0)!=(Pk|0)){break b}}if(s[Kk+8>>1]!=(Rk|0)){continue}break}qc=0;break a}Kk=zo(16);p[Kk+8>>1]=s[Lk>>1];Lk=q[Lk+4>>2];q[Kk+4>>2]=Ok;q[Kk+12>>2]=Lk;q[Kk>>2]=0;Qk=u[qc+16>>2];Tk=x(q[qc+12>>2]+1>>>0);e:{if(!(!Mk|!!(x(Qk*x(Mk>>>0))<Tk))){Ok=Pk;break e}Rk=(Mk+ -1&Mk)!=0|Mk>>>0<3|Mk<<1;Lk=qc;Qk=x(D(x(Tk/Qk)));f:{if(Qk<x(4294967296)&Qk>=x(0)){Pk=~~Qk>>>0;break f}Pk=0}gd(Lk,Rk>>>0<Pk>>>0?Pk:Rk);Mk=q[qc+4>>2];if(!(Mk&Mk+ -1)){Ok=Mk+ -1&Ok;break e}if(Mk>>>0>Ok>>>0){break e}Ok=(Ok>>>0)%(Mk>>>0)|0}Ok=q[qc>>2]+(Ok<<2)|0;Nk=q[Ok>>2];g:{h:{if(!Nk){Lk=qc+8|0;q[Kk>>2]=q[Lk>>2];q[Lk>>2]=Kk;q[Ok>>2]=Lk;Lk=q[Kk>>2];if(!Lk){break g}Nk=q[Lk+4>>2];Lk=Mk+ -1|0;i:{if(!(Lk&Mk)){Nk=Lk&Nk;break i}if(Nk>>>0<Mk>>>0){break i}Nk=(Nk>>>0)%(Mk>>>0)|0}Nk=q[qc>>2]+(Nk<<2)|0;break h}q[Kk>>2]=q[Nk>>2]}q[Nk>>2]=Kk}qc=qc+12|0;q[qc>>2]=q[qc>>2]+1;qc=1}o[Uk+4|0]=qc;q[i>>2]=Kk}function dd(i,qc,Kk,Lk){var Wk=0,Xk=0,Yk=0,Zk=0,_k=x(0),$k=0,al=0,bl=0,cl=x(0),dl=0,el=0;bl=s[Kk+2>>1];$k=s[Kk>>1];Yk=bl^($k^318)+239;dl=i;a:{b:{Wk=q[qc+4>>2];if(!Wk){break b}Xk=q[qc>>2];al=Xp(Wk);Zk=Wk+131071&Yk;c:{if(al>>>0<=1){break c}Kk=Yk;Zk=Kk;if(Kk>>>0<Wk>>>0){break c}Zk=(Yk>>>0)%(Wk>>>0)|0}Kk=Zk;Zk=Kk;Kk=q[(Kk<<2)+Xk>>2];if(!Kk){break b}el=Wk+ -1|0;al=al>>>0>1;while(1){Kk=q[Kk>>2];if(!Kk){break b}Xk=q[Kk+4>>2];if((Yk|0)!=(Xk|0)){d:{if(!al){Xk=Xk⪙break d}if(Xk>>>0<Wk>>>0){break d}Xk=(Xk>>>0)%(Wk>>>0)|0}if((Xk|0)!=(Zk|0)){break b}}if(s[Kk+8>>1]!=($k|0)|s[Kk+10>>1]!=(bl|0)){continue}break}qc=0;break a}Kk=zo(16);q[Kk+8>>2]=s[Lk>>1]|s[Lk+2>>1]<<16;Lk=q[Lk+4>>2];q[Kk+4>>2]=Yk;q[Kk+12>>2]=Lk;q[Kk>>2]=0;_k=u[qc+16>>2];cl=x(q[qc+12>>2]+1>>>0);e:{if(!(!Wk|!!(x(_k*x(Wk>>>0))<cl))){Yk=Zk;break e}$k=(Wk+ -1&Wk)!=0|Wk>>>0<3|Wk<<1;Lk=qc;_k=x(D(x(cl/_k)));f:{if(_k<x(4294967296)&_k>=x(0)){Zk=~~_k>>>0;break f}Zk=0}id(Lk,$k>>>0<Zk>>>0?Zk:$k);Wk=q[qc+4>>2];if(!(Wk&Wk+ -1)){Yk=Wk+ -1&Yk;break e}if(Yk>>>0<Wk>>>0){break e}Yk=(Yk>>>0)%(Wk>>>0)|0}Yk=q[qc>>2]+(Yk<<2)|0;Xk=q[Yk>>2];g:{h:{if(!Xk){Lk=qc+8|0;q[Kk>>2]=q[Lk>>2];q[Lk>>2]=Kk;q[Yk>>2]=Lk;Lk=q[Kk>>2];if(!Lk){break g}Xk=q[Lk+4>>2];Lk=Wk+ -1|0;i:{if(!(Lk&Wk)){Xk=Lk&Xk;break i}if(Xk>>>0<Wk>>>0){break i}Xk=(Xk>>>0)%(Wk>>>0)|0}Xk=q[qc>>2]+(Xk<<2)|0;break h}q[Kk>>2]=q[Xk>>2]}q[Xk>>2]=Kk}qc=qc+12|0;q[qc>>2]=q[qc>>2]+1;qc=1}o[dl+4|0]=qc;q[i>>2]=Kk}function ed(i,qc,Kk,Lk){var fl=0,gl=0,hl=0,il=0,jl=0,kl=x(0),ll=0,ml=0,nl=0,ol=x(0),pl=0,ql=0;ml=s[Kk+4>>1];nl=s[Kk+2>>1];jl=s[Kk>>1];hl=ml^(nl^(jl^318)+239)+239;pl=i;fl=q[qc+4>>2];a:{b:{if(!fl){break b}gl=q[qc>>2];ll=Xp(fl);il=fl+262143&hl;c:{if(ll>>>0<=1){break c}Kk=hl;il=Kk;if(Kk>>>0<fl>>>0){break c}il=(hl>>>0)%(fl>>>0)|0}Kk=il;il=Kk;Kk=q[(Kk<<2)+gl>>2];if(!Kk){break b}Kk=q[Kk>>2];if(!Kk){break b}ql=fl+ -1|0;ll=ll>>>0>1;while(1){gl=q[Kk+4>>2];if((hl|0)!=(gl|0)){d:{if(!ll){gl=gl&ql;break d}if(gl>>>0<fl>>>0){break d}gl=(gl>>>0)%(fl>>>0)|0}if((gl|0)!=(il|0)){break b}}if(!(s[Kk+8>>1]!=(jl|0)|s[Kk+10>>1]!=(nl|0)|s[Kk+12>>1]!=(ml|0))){qc=0;break a}Kk=q[Kk>>2];if(Kk){continue}break}}Kk=zo(20);p[Kk+12>>1]=s[Lk+4>>1];jl=s[Lk>>1]|s[Lk+2>>1]<<16;p[Kk+8>>1]=jl;p[Kk+10>>1]=jl>>>16;Lk=q[Lk+8>>2];q[Kk>>2]=0;q[Kk+4>>2]=hl;q[Kk+16>>2]=Lk;kl=u[qc+16>>2];ol=x(q[qc+12>>2]+1>>>0);e:{if(!(!fl|!!(x(kl*x(fl>>>0))<ol))){hl=il;break e}jl=(fl+ -1&fl)!=0|fl>>>0<3|fl<<1;Lk=qc;kl=x(D(x(ol/kl)));f:{if(kl<x(4294967296)&kl>=x(0)){il=~~kl>>>0;break f}il=0}kd(Lk,jl>>>0<il>>>0?il:jl);fl=q[qc+4>>2];if(!(fl&fl+ -1)){hl=fl+ -1&hl;break e}if(hl>>>0<fl>>>0){break e}hl=(hl>>>0)%(fl>>>0)|0}hl=q[qc>>2]+(hl<<2)|0;gl=q[hl>>2];g:{h:{if(!gl){Lk=qc+8|0;q[Kk>>2]=q[Lk>>2];q[Lk>>2]=Kk;q[hl>>2]=Lk;Lk=q[Kk>>2];if(!Lk){break g}gl=q[Lk+4>>2];Lk=fl+ -1|0;i:{if(!(Lk&fl)){gl=Lk≷break i}if(gl>>>0<fl>>>0){break i}gl=(gl>>>0)%(fl>>>0)|0}gl=q[qc>>2]+(gl<<2)|0;break h}q[Kk>>2]=q[gl>>2]}q[gl>>2]=Kk}qc=qc+12|0;q[qc>>2]=q[qc>>2]+1;qc=1}o[pl+4|0]=qc;q[i>>2]=Kk}function fd(i,qc,Kk,Lk){var rl=0,sl=0,tl=0,ul=0,vl=0,wl=x(0),xl=0,yl=0,zl=0,Al=0,Bl=x(0),Cl=0,Dl=0;yl=s[Kk+6>>1];zl=s[Kk+4>>1];Al=s[Kk+2>>1];vl=s[Kk>>1];tl=yl^(zl^(Al^(vl^318)+239)+239)+239;Cl=i;rl=q[qc+4>>2];a:{b:{if(!rl){break b}sl=q[qc>>2];xl=Xp(rl);ul=rl+ -1&tl;c:{if(xl>>>0<=1){break c}Kk=tl;ul=Kk;if(Kk>>>0<rl>>>0){break c}ul=(tl>>>0)%(rl>>>0)|0}Kk=ul;ul=Kk;Kk=q[(Kk<<2)+sl>>2];if(!Kk){break b}Kk=q[Kk>>2];if(!Kk){break b}Dl=rl+ -1|0;xl=xl>>>0>1;while(1){sl=q[Kk+4>>2];if((tl|0)!=(sl|0)){d:{if(!xl){sl=sl&Dl;break d}if(sl>>>0<rl>>>0){break d}sl=(sl>>>0)%(rl>>>0)|0}if((sl|0)!=(ul|0)){break b}}if(!(s[Kk+8>>1]!=(vl|0)|s[Kk+10>>1]!=(Al|0)|(s[Kk+12>>1]!=(zl|0)|s[Kk+14>>1]!=(yl|0)))){qc=0;break a}Kk=q[Kk>>2];if(Kk){continue}break}}Kk=zo(20);vl=s[Lk+4>>1]|s[Lk+6>>1]<<16;q[Kk+8>>2]=s[Lk>>1]|s[Lk+2>>1]<<16;q[Kk+12>>2]=vl;Lk=q[Lk+8>>2];q[Kk+4>>2]=tl;q[Kk+16>>2]=Lk;q[Kk>>2]=0;wl=u[qc+16>>2];Bl=x(q[qc+12>>2]+1>>>0);e:{if(!(!rl|!!(x(wl*x(rl>>>0))<Bl))){tl=ul;break e}vl=(rl+ -1&rl)!=0|rl>>>0<3|rl<<1;Lk=qc;wl=x(D(x(Bl/wl)));f:{if(wl<x(4294967296)&wl>=x(0)){ul=~~wl>>>0;break f}ul=0}md(Lk,vl>>>0<ul>>>0?ul:vl);rl=q[qc+4>>2];if(!(rl&rl+ -1)){tl=rl+ -1&tl;break e}if(tl>>>0<rl>>>0){break e}tl=(tl>>>0)%(rl>>>0)|0}tl=q[qc>>2]+(tl<<2)|0;sl=q[tl>>2];g:{h:{if(!sl){Lk=qc+8|0;q[Kk>>2]=q[Lk>>2];q[Lk>>2]=Kk;q[tl>>2]=Lk;Lk=q[Kk>>2];if(!Lk){break g}sl=q[Lk+4>>2];Lk=rl+ -1|0;i:{if(!(Lk&rl)){sl=Lk&sl;break i}if(sl>>>0<rl>>>0){break i}sl=(sl>>>0)%(rl>>>0)|0}sl=q[qc>>2]+(sl<<2)|0;break h}q[Kk>>2]=q[sl>>2]}q[sl>>2]=Kk}qc=qc+12|0;q[qc>>2]=q[qc>>2]+1;qc=1}o[Cl+4|0]=qc;q[i>>2]=Kk}function gd(i,qc){var Kk=0,Lk=0,El=x(0);Kk=2;a:{if((qc|0)==1){break a}Kk=qc;if(!(qc+ -1&qc)){break a}Kk=Yn(qc)}Lk=q[i+4>>2];if(Kk>>>0>Lk>>>0){hd(i,Kk);return}b:{if(Kk>>>0>=Lk>>>0){break b}El=x(D(x(x(t[i+12>>2])/u[i+16>>2])));c:{if(El<x(4294967296)&El>=x(0)){qc=~~El>>>0;break c}qc=0}d:{e:{if(Lk>>>0<3){break e}if(Xp(Lk)>>>0>1){break e}qc=qc>>>0<2?qc:1<<32-z(qc+ -1|0);break d}qc=Yn(qc)}qc=Kk>>>0<qc>>>0?qc:Kk;if(qc>>>0>=Lk>>>0){break b}hd(i,qc)}}function hd(i,qc){var Fl=0,Gl=0,Hl=0,Il=0,Jl=0,Kl=0,Ll=0,Ml=0,Nl=0;a:{b:{if(qc){if(qc>>>0>=1073741824){break a}Fl=zo(qc<<2);Gl=q[i>>2];q[i>>2]=Fl;if(Gl){pp(Gl)}q[i+4>>2]=qc;Fl=0;while(1){q[q[i>>2]+(Fl<<2)>>2]=0;Fl=Fl+1|0;if((Fl|0)!=(qc|0)){continue}break}Gl=i+8|0;Il=q[Gl>>2];if(!Il){break b}Jl=q[Il+4>>2];Fl=Xp(qc);c:{if(Fl>>>0<=1){Jl=qc+ -1&Jl;break c}if(Jl>>>0<qc>>>0){break c}Jl=(Jl>>>0)%(qc>>>0)|0}q[q[i>>2]+(Jl<<2)>>2]=Gl;Gl=q[Il>>2];if(!Gl){break b}Ml=qc+ -1|0;Nl=Fl>>>0>1;while(1){Hl=q[Gl+4>>2];d:{if(!Nl){Hl=Hl&Ml;break d}if(Hl>>>0<qc>>>0){break d}Hl=(Hl>>>0)%(qc>>>0)|0}e:{if((Hl|0)==(Jl|0)){Il=Gl;break e}Fl=Gl;Kl=Hl<<2;Ll=Kl+q[i>>2]|0;if(!q[Ll>>2]){q[Ll>>2]=Il;Il=Gl;Jl=Hl;break e}while(1){Hl=Fl;Fl=q[Fl>>2];if(s[Gl+8>>1]==s[Fl+8>>1]?Fl:0){continue}break}q[Il>>2]=Fl;q[Hl>>2]=q[q[q[i>>2]+Kl>>2]>>2];q[q[q[i>>2]+Kl>>2]>>2]=Gl}Gl=q[Il>>2];if(Gl){continue}break}break b}qc=q[i>>2];q[i>>2]=0;if(qc){pp(qc)}q[i+4>>2]=0}return}Qb(1600);F()}function id(i,qc){var Ol=0,Pl=0,Ql=x(0);Ol=2;a:{if((qc|0)==1){break a}Ol=qc;if(!(qc+ -1&qc)){break a}Ol=Yn(qc)}Pl=q[i+4>>2];if(Ol>>>0>Pl>>>0){jd(i,Ol);return}b:{if(Ol>>>0>=Pl>>>0){break b}Ql=x(D(x(x(t[i+12>>2])/u[i+16>>2])));c:{if(Ql<x(4294967296)&Ql>=x(0)){qc=~~Ql>>>0;break c}qc=0}d:{e:{if(Pl>>>0<3){break e}if(Xp(Pl)>>>0>1){break e}qc=qc>>>0<2?qc:1<<32-z(qc+ -1|0);break d}qc=Yn(qc)}qc=Ol>>>0<qc>>>0?qc:Ol;if(qc>>>0>=Pl>>>0){break b}jd(i,qc)}}function jd(i,qc){var Rl=0,Sl=0,Tl=0,Ul=0,Vl=0,Wl=0,Xl=0,Yl=0,Zl=0;a:{b:{if(qc){if(qc>>>0>=1073741824){break a}Rl=zo(qc<<2);Sl=q[i>>2];q[i>>2]=Rl;if(Sl){pp(Sl)}q[i+4>>2]=qc;Rl=0;while(1){q[q[i>>2]+(Rl<<2)>>2]=0;Rl=Rl+1|0;if((Rl|0)!=(qc|0)){continue}break}Sl=i+8|0;Ul=q[Sl>>2];if(!Ul){break b}Vl=q[Ul+4>>2];Rl=Xp(qc);c:{if(Rl>>>0<=1){Vl=qc+ -1&Vl;break c}if(Vl>>>0<qc>>>0){break c}Vl=(Vl>>>0)%(qc>>>0)|0}q[q[i>>2]+(Vl<<2)>>2]=Sl;Sl=q[Ul>>2];if(!Sl){break b}Yl=qc+ -1|0;Zl=Rl>>>0>1;while(1){Tl=q[Sl+4>>2];d:{if(!Zl){Tl=Tl&Yl;break d}if(Tl>>>0<qc>>>0){break d}Tl=(Tl>>>0)%(qc>>>0)|0}e:{if((Tl|0)==(Vl|0)){Ul=Sl;break e}Rl=Sl;Wl=Tl<<2;Xl=Wl+q[i>>2]|0;if(!q[Xl>>2]){q[Xl>>2]=Ul;Ul=Sl;Vl=Tl;break e}while(1){Tl=Rl;Rl=q[Rl>>2];f:{if(!Rl|s[Sl+8>>1]!=s[Rl+8>>1]){break f}if(s[Sl+10>>1]==s[Rl+10>>1]){continue}}break}q[Ul>>2]=Rl;q[Tl>>2]=q[q[q[i>>2]+Wl>>2]>>2];q[q[q[i>>2]+Wl>>2]>>2]=Sl}Sl=q[Ul>>2];if(Sl){continue}break}break b}qc=q[i>>2];q[i>>2]=0;if(qc){pp(qc)}q[i+4>>2]=0}return}Qb(1600);F()}function kd(i,qc){var _l=0,$l=0,am=x(0);_l=2;a:{if((qc|0)==1){break a}_l=qc;if(!(qc+ -1&qc)){break a}_l=Yn(qc)}$l=q[i+4>>2];if(_l>>>0>$l>>>0){ld(i,_l);return}b:{if(_l>>>0>=$l>>>0){break b}am=x(D(x(x(t[i+12>>2])/u[i+16>>2])));c:{if(am<x(4294967296)&am>=x(0)){qc=~~am>>>0;break c}qc=0}d:{e:{if($l>>>0<3){break e}if(Xp($l)>>>0>1){break e}qc=qc>>>0<2?qc:1<<32-z(qc+ -1|0);break d}qc=Yn(qc)}qc=_l>>>0<qc>>>0?qc:_l;if(qc>>>0>=$l>>>0){break b}ld(i,qc)}}function ld(i,qc){var bm=0,cm=0,dm=0,em=0,fm=0,gm=0,hm=0,im=0,jm=0;a:{b:{if(qc){if(qc>>>0>=1073741824){break a}bm=zo(qc<<2);cm=q[i>>2];q[i>>2]=bm;if(cm){pp(cm)}q[i+4>>2]=qc;bm=0;while(1){q[q[i>>2]+(bm<<2)>>2]=0;bm=bm+1|0;if((bm|0)!=(qc|0)){continue}break}cm=i+8|0;em=q[cm>>2];if(!em){break b}fm=q[em+4>>2];bm=Xp(qc);c:{if(bm>>>0<=1){fm=qc+ -1&fm;break c}if(fm>>>0<qc>>>0){break c}fm=(fm>>>0)%(qc>>>0)|0}q[q[i>>2]+(fm<<2)>>2]=cm;cm=q[em>>2];if(!cm){break b}im=qc+ -1|0;jm=bm>>>0>1;while(1){dm=q[cm+4>>2];d:{if(!jm){dm=dm&im;break d}if(dm>>>0<qc>>>0){break d}dm=(dm>>>0)%(qc>>>0)|0}e:{if((dm|0)==(fm|0)){em=cm;break e}bm=cm;gm=dm<<2;hm=gm+q[i>>2]|0;if(!q[hm>>2]){q[hm>>2]=em;em=cm;fm=dm;break e}while(1){dm=bm;bm=q[bm>>2];f:{if(!bm|s[cm+8>>1]!=s[bm+8>>1]|s[cm+10>>1]!=s[bm+10>>1]){break f}if(s[cm+12>>1]==s[bm+12>>1]){continue}}break}q[em>>2]=bm;q[dm>>2]=q[q[q[i>>2]+gm>>2]>>2];q[q[q[i>>2]+gm>>2]>>2]=cm}cm=q[em>>2];if(cm){continue}break}break b}qc=q[i>>2];q[i>>2]=0;if(qc){pp(qc)}q[i+4>>2]=0}return}Qb(1600);F()}function md(i,qc){var km=0,lm=0,mm=x(0);km=2;a:{if((qc|0)==1){break a}km=qc;if(!(qc+ -1&qc)){break a}km=Yn(qc)}lm=q[i+4>>2];if(km>>>0>lm>>>0){nd(i,km);return}b:{if(km>>>0>=lm>>>0){break b}mm=x(D(x(x(t[i+12>>2])/u[i+16>>2])));c:{if(mm<x(4294967296)&mm>=x(0)){qc=~~mm>>>0;break c}qc=0}d:{e:{if(lm>>>0<3){break e}if(Xp(lm)>>>0>1){break e}qc=qc>>>0<2?qc:1<<32-z(qc+ -1|0);break d}qc=Yn(qc)}qc=km>>>0<qc>>>0?qc:km;if(qc>>>0>=lm>>>0){break b}nd(i,qc)}}function nd(i,qc){var nm=0,om=0,pm=0,qm=0,rm=0,sm=0,tm=0,um=0,vm=0;a:{b:{if(qc){if(qc>>>0>=1073741824){break a}nm=zo(qc<<2);om=q[i>>2];q[i>>2]=nm;if(om){pp(om)}q[i+4>>2]=qc;nm=0;while(1){q[q[i>>2]+(nm<<2)>>2]=0;nm=nm+1|0;if((nm|0)!=(qc|0)){continue}break}om=i+8|0;qm=q[om>>2];if(!qm){break b}rm=q[qm+4>>2];nm=Xp(qc);c:{if(nm>>>0<=1){rm=qc+ -1&rm;break c}if(rm>>>0<qc>>>0){break c}rm=(rm>>>0)%(qc>>>0)|0}q[q[i>>2]+(rm<<2)>>2]=om;om=q[qm>>2];if(!om){break b}um=qc+ -1|0;vm=nm>>>0>1;while(1){pm=q[om+4>>2];d:{if(!vm){pm=pm&um;break d}if(pm>>>0<qc>>>0){break d}pm=(pm>>>0)%(qc>>>0)|0}e:{if((pm|0)==(rm|0)){qm=om;break e}nm=om;sm=pm<<2;tm=sm+q[i>>2]|0;if(!q[tm>>2]){q[tm>>2]=qm;qm=om;rm=pm;break e}while(1){pm=nm;nm=q[nm>>2];f:{if(!nm|s[om+8>>1]!=s[nm+8>>1]|(s[om+10>>1]!=s[nm+10>>1]|s[om+12>>1]!=s[nm+12>>1])){break f}if(s[om+14>>1]==s[nm+14>>1]){continue}}break}q[qm>>2]=nm;q[pm>>2]=q[q[q[i>>2]+sm>>2]>>2];q[q[q[i>>2]+sm>>2]>>2]=om}om=q[qm>>2];if(om){continue}break}break b}qc=q[i>>2];q[i>>2]=0;if(qc){pp(qc)}q[i+4>>2]=0}return}Qb(1600);F()}function od(i,qc){var wm=0,xm=0,ym=0,zm=0,Am=0;ym=T-16|0;T=ym;q[i>>2]=1680;xm=i+4|0;wm=xm;q[wm>>2]=0;q[wm+4>>2]=0;q[i+12>>2]=0;q[i+16>>2]=0;wm=i+20|0;q[wm>>2]=0;q[wm+4>>2]=0;q[i+28>>2]=0;q[i+32>>2]=0;q[ym+12>>2]=qc;pd(xm,ym+12|0);qc=q[ym+12>>2];xm=q[wm>>2];Am=i+16|0;wm=q[Am>>2];xm=xm-wm>>2;a:{if((qc|0)<(xm|0)){break a}q[ym+8>>2]=-1;zm=qc+1|0;if(zm>>>0>xm>>>0){qd(Am,zm-xm|0,ym+8|0);wm=q[Am>>2];qc=q[ym+12>>2];break a}if(zm>>>0>=xm>>>0){break a}q[i+20>>2]=(zm<<2)+wm}q[(qc<<2)+wm>>2]=(q[i+8>>2]-q[i+4>>2]>>2)+ -1;T=ym+16|0}function pd(i,qc){var Bm=0,Cm=0,Dm=0,Em=0,Fm=0,Gm=0;a:{Dm=q[i>>2];Fm=q[i+4>>2]-Dm|0;Bm=Fm>>2;Cm=Bm+1|0;if(Cm>>>0<1073741824){Gm=Bm<<2;Bm=q[i+8>>2]-Dm|0;Em=Bm>>1;Cm=Bm>>2>>>0<536870911?Em>>>0<Cm>>>0?Cm:Em:1073741823;Bm=0;b:{if(!Cm){break b}if(Cm>>>0>=1073741824){break a}Bm=zo(Cm<<2)}Em=Gm+Bm|0;q[Em>>2]=q[qc>>2];qc=Bm+(Cm<<2)|0;Cm=Em+4|0;if((Fm|0)>=1){vp(Bm,Dm,Fm)}q[i>>2]=Bm;q[i+8>>2]=qc;q[i+4>>2]=Cm;if(Dm){pp(Dm)}return}To();F()}Qb(1768);F()}function qd(i,qc,Hm){var Im=0,Jm=0,Km=0,Lm=0,Mm=0,Nm=0;Km=q[i+8>>2];Im=q[i+4>>2];if(Km-Im>>2>>>0>=qc>>>0){while(1){q[Im>>2]=q[Hm>>2];Im=Im+4|0;qc=qc+ -1|0;if(qc){continue}break}q[i+4>>2]=Im;return}a:{Lm=q[i>>2];Mm=Im-Lm|0;Nm=Mm>>2;Im=Nm+qc|0;if(Im>>>0<1073741824){Km=Km-Lm|0;Jm=Km>>1;Im=Km>>2>>>0<536870911?Jm>>>0<Im>>>0?Im:Jm:1073741823;Jm=0;b:{if(!Im){break b}if(Im>>>0>=1073741824){break a}Jm=zo(Im<<2)}Km=Jm+(Im<<2)|0;Im=Jm+(Nm<<2)|0;while(1){q[Im>>2]=q[Hm>>2];Im=Im+4|0;qc=qc+ -1|0;if(qc){continue}break}if((Mm|0)>=1){vp(Jm,Lm,Mm)}q[i>>2]=Jm;q[i+8>>2]=Km;q[i+4>>2]=Im;if(Lm){pp(Lm)}return}To();F()}Qb(1768);F()}function rd(i,qc,Hm){i=i|0;qc=qc|0;Hm=Hm|0;q[i+32>>2]=Hm;q[i+28>>2]=qc;return 1}function sd(i,qc){i=i|0;qc=qc|0;var Hm=0,Om=0,Pm=0,Qm=0,Rm=0,Sm=0,Tm=0,Um=0,Vm=0,Wm=0,Xm=0;Om=T-16|0;T=Om;Sm=i+8|0;td(q[Sm>>2]-q[i+4>>2]>>2,qc);Hm=q[i+4>>2];if((Hm|0)!=q[Sm>>2]){Um=Om+13|0;Vm=Om+14|0;Wm=Om+15|0;Xm=Om+16|0;Rm=qc+4|0;while(1){Qm=q[q[q[i+32>>2]+8>>2]+(q[(Tm<<2)+Hm>>2]<<2)>>2];o[Om+15|0]=q[Qm+56>>2];Hm=q[qc+20>>2];Pm=q[qc+16>>2];if((Hm|0)<0?1:(Hm|0)<=0?Pm>>>0>0?0:1:0){Vb(qc,q[Rm>>2],Om+15|0,Xm);Pm=q[qc+16>>2];Hm=q[qc+20>>2]}o[Om+14|0]=q[Qm+28>>2];if((Hm|0)<0?1:(Hm|0)<=0?Pm>>>0>0?0:1:0){Vb(qc,q[Rm>>2],Om+14|0,Wm);Pm=q[qc+16>>2];Hm=q[qc+20>>2]}o[Om+13|0]=r[Qm+24|0];if((Hm|0)<0?1:(Hm|0)<=0?Pm>>>0>0?0:1:0){Vb(qc,q[Rm>>2],Om+13|0,Vm);Pm=q[qc+16>>2];Hm=q[qc+20>>2]}o[Om+12|0]=r[Qm+32|0];if((Hm|0)<0?1:(Hm|0)<=0?Pm>>>0>0?0:1:0){Vb(qc,q[Rm>>2],Om+12|0,Um)}td(q[Qm+60>>2],qc);Tm=Tm+1|0;Hm=q[i+4>>2];if(Tm>>>0<q[Sm>>2]-Hm>>2>>>0){continue}break}}T=Om+16|0;return 1}function td(i,qc){var Ym=0,Zm=0,_m=0;Ym=T-16|0;T=Ym;o[Ym+15|0]=i&127;a:{if(i>>>0>=128){o[Ym+15|0]=i|128;_m=q[qc+20>>2];Zm=0;if((_m|0)>0?1:(_m|0)>=0?t[qc+16>>2]<=0?0:1:0){break a}Vb(qc,q[qc+4>>2],Ym+15|0,Ym+16|0);Zm=td(i>>>7,qc);break a}i=q[qc+20>>2];Zm=0;if((i|0)>0?1:(i|0)>=0?t[qc+16>>2]<1?0:1:0){break a}Vb(qc,q[qc+4>>2],Ym+15|0,Ym+16|0);Zm=1}i=Zm;T=Ym+16|0;return i}function ud(i){i=i|0;var qc=0;q[i>>2]=1680;qc=q[i+16>>2];if(qc){q[i+20>>2]=qc;pp(qc)}qc=q[i+4>>2];if(qc){q[i+8>>2]=qc;pp(qc)}return i|0}function vd(i){i=i|0;F()}function wd(i,$m){i=i|0;$m=$m|0;var an=0;a:{if(!n[q[q[i>>2]+40>>2]](i)){break a}if(!n[q[q[i>>2]+44>>2]](i,$m)){break a}an=n[q[q[i>>2]+48>>2]](i,$m)|0}return an|0}function xd(i,q){i=i|0;q=q|0;return 0}function yd(i,q,$m){i=i|0;q=q|0;$m=$m|0;return-1}function zd(i,q){i=i|0;q=q|0;return 1}function Ad(i,$m){od(i,$m);q[i+36>>2]=0;q[i+40>>2]=0;q[i>>2]=1844;q[i+44>>2]=0;q[i+48>>2]=0;q[i+52>>2]=0;q[i+56>>2]=0;q[i+60>>2]=0;q[i+64>>2]=0;q[i+68>>2]=0;q[i+72>>2]=0}function Bd(i){i=i|0;var $m=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=x(0),xn=0,yn=0,zn=0,An=0,Bn=0,Cn=0,Dn=0,En=0,Fn=0,Gn=0,Hn=0;bn=T+ -64|0;T=bn;a:{fn=q[i+4>>2];kn=q[i+8>>2];if((fn|0)==(kn|0)){q[i+72>>2]=0;cn=1;break a}ln=q[i+28>>2];mn=q[ln+4>>2];xn=q[mn+80>>2];dn=kn-fn>>2;$m=q[mn+8>>2];while(1){gn=o[q[$m+(q[(cn<<2)+fn>>2]<<2)>>2]+24|0]+gn|0;cn=cn+1|0;if(cn>>>0<dn>>>0){continue}break}q[i+72>>2]=gn;cn=1;if((fn|0)==(kn|0)){break a}yn=i+60|0;zn=i+36|0;An=i+48|0;Bn=bn+48|0;Cn=i+4|0;Dn=i+56|0;un=i+52|0;En=i+44|0;sn=i+40|0;Fn=i+68|0;vn=i- -64|0;while(1){nn=q[(tn<<2)+fn>>2];pn=q[q[mn+8>>2]+(nn<<2)>>2];$m=q[pn+28>>2]+ -1|0;b:{if($m>>>0>8){break b}c:{d:{e:{f:{g:{h:{switch($m-1|0){case 7:q[bn+44>>2]=-1;q[bn+40>>2]=1384;$m=Bn;q[$m+8>>2]=0;q[$m+12>>2]=0;q[$m>>2]=0;q[$m+4>>2]=0;gn=q[ln+48>>2];kn=bn+32|0;q[kn>>2]=0;q[bn+24>>2]=0;q[bn+28>>2]=0;hn=zo(32);q[bn+24>>2]=hn;q[bn+28>>2]=17;q[bn+32>>2]=-2147483616;o[hn+17|0]=0;o[hn+16|0]=r[1912];dn=r[1908]|r[1909]<<8|(r[1910]<<16|r[1911]<<24);$m=r[1904]|r[1905]<<8|(r[1906]<<16|r[1907]<<24);o[hn+8|0]=$m;o[hn+9|0]=$m>>>8;o[hn+10|0]=$m>>>16;o[hn+11|0]=$m>>>24;o[hn+12|0]=dn;o[hn+13|0]=dn>>>8;o[hn+14|0]=dn>>>16;o[hn+15|0]=dn>>>24;dn=r[1900]|r[1901]<<8|(r[1902]<<16|r[1903]<<24);$m=r[1896]|r[1897]<<8|(r[1898]<<16|r[1899]<<24);o[hn|0]=$m;o[hn+1|0]=$m>>>8;o[hn+2|0]=$m>>>16;o[hn+3|0]=$m>>>24;o[hn+4|0]=dn;o[hn+5|0]=dn>>>8;o[hn+6|0]=dn>>>16;o[hn+7|0]=dn>>>24;i:{j:{dn=gn+16|0;fn=dn;cn=q[dn>>2];if(!cn){break j}while(1){$m=q[cn+16>>2]<(nn|0);fn=$m?fn:cn;cn=q[($m<<2)+cn>>2];if(cn){continue}break}if((dn|0)==(fn|0)|(nn|0)<q[fn+16>>2]){break j}$m=fn+20|0;if(!Cd($m,bn+24|0)){break j}on=Ll($m,bn+24|0,-1);break i}on=Ll(gn,bn+24|0,-1)}if(o[bn+35|0]<=-1){pp(q[bn+24>>2])}cn=1;if((on|0)>=1){rn=i+28|0;ln=q[q[rn>>2]+48>>2];q[kn>>2]=0;q[bn+24>>2]=0;q[bn+28>>2]=0;en=zo(32);q[bn+24>>2]=en;q[bn+28>>2]=19;q[bn+32>>2]=-2147483616;o[en+19|0]=0;qn=r[1929]|r[1930]<<8|(r[1931]<<16|r[1932]<<24);o[en+15|0]=qn;o[en+16|0]=qn>>>8;o[en+17|0]=qn>>>16;o[en+18|0]=qn>>>24;dn=r[1926]|r[1927]<<8|(r[1928]<<16|r[1929]<<24);hn=dn;gn=r[1922]|r[1923]<<8|(r[1924]<<16|r[1925]<<24);$m=gn;o[en+8|0]=$m;o[en+9|0]=$m>>>8;o[en+10|0]=$m>>>16;o[en+11|0]=$m>>>24;o[en+12|0]=dn;o[en+13|0]=dn>>>8;o[en+14|0]=dn>>>16;o[en+15|0]=dn>>>24;jn=r[1918]|r[1919]<<8|(r[1920]<<16|r[1921]<<24);kn=jn;dn=r[1914]|r[1915]<<8|(r[1916]<<16|r[1917]<<24);$m=dn;o[en|0]=$m;o[en+1|0]=$m>>>8;o[en+2|0]=$m>>>16;o[en+3|0]=$m>>>24;o[en+4|0]=jn;o[en+5|0]=jn>>>8;o[en+6|0]=jn>>>16;o[en+7|0]=jn>>>24;k:{l:{jn=ln+16|0;fn=jn;cn=q[fn>>2];if(!cn){break l}while(1){$m=q[cn+16>>2]<(nn|0);fn=$m?fn:cn;cn=q[($m<<2)+cn>>2];if(cn){continue}break}if((fn|0)==(jn|0)|(nn|0)<q[fn+16>>2]){break l}jn=Cd(fn+20|0,bn+24|0);break k}jn=Cd(ln,bn+24|0)}$m=0;m:{if(!jn){break m}ln=q[q[rn>>2]+48>>2];q[bn+16>>2]=0;q[bn+8>>2]=0;q[bn+12>>2]=0;en=zo(32);q[bn+8>>2]=en;q[bn+12>>2]=18;q[bn+16>>2]=-2147483616;o[en+18|0]=0;$m=r[1950]|r[1951]<<8;o[en+16|0]=$m;o[en+17|0]=$m>>>8;jn=r[1946]|r[1947]<<8|(r[1948]<<16|r[1949]<<24);$m=r[1942]|r[1943]<<8|(r[1944]<<16|r[1945]<<24);o[en+8|0]=$m;o[en+9|0]=$m>>>8;o[en+10|0]=$m>>>16;o[en+11|0]=$m>>>24;o[en+12|0]=jn;o[en+13|0]=jn>>>8;o[en+14|0]=jn>>>16;o[en+15|0]=jn>>>24;jn=r[1938]|r[1939]<<8|(r[1940]<<16|r[1941]<<24);$m=r[1934]|r[1935]<<8|(r[1936]<<16|r[1937]<<24);o[en|0]=$m;o[en+1|0]=$m>>>8;o[en+2|0]=$m>>>16;o[en+3|0]=$m>>>24;o[en+4|0]=jn;o[en+5|0]=jn>>>8;o[en+6|0]=jn>>>16;o[en+7|0]=jn>>>24;n:{o:{jn=ln+16|0;fn=jn;cn=q[fn>>2];if(!cn){break o}while(1){$m=q[cn+16>>2]<(nn|0);fn=$m?fn:cn;cn=q[($m<<2)+cn>>2];if(cn){continue}break}if((fn|0)==(jn|0)|(nn|0)<q[fn+16>>2]){break o}$m=Cd(fn+20|0,bn+8|0);break n}$m=Cd(ln,bn+8|0)}if(o[bn+19|0]<=-1){pp(q[bn+8>>2])}$m=($m|0)!=0}if(o[bn+35|0]<=-1){pp(q[bn+24>>2])}p:{if($m){en=pn+24|0;$m=o[en|0];mn=0;q[bn+32>>2]=0;q[bn+24>>2]=0;q[bn+28>>2]=0;if($m){if(($m|0)<=-1){break g}jn=$m<<2;mn=zo(jn);q[bn+24>>2]=mn;$m=jn+mn|0;q[bn+32>>2]=$m;wp(mn,0,jn);q[bn+28>>2]=$m}ln=q[q[rn>>2]+48>>2];jn=bn+16|0;q[jn>>2]=0;q[bn+8>>2]=0;q[bn+12>>2]=0;$m=zo(32);q[bn+8>>2]=$m;q[bn+12>>2]=19;q[bn+16>>2]=-2147483616;o[$m+19|0]=0;o[$m+15|0]=qn;o[$m+16|0]=qn>>>8;o[$m+17|0]=qn>>>16;o[$m+18|0]=qn>>>24;o[$m+8|0]=gn;o[$m+9|0]=gn>>>8;o[$m+10|0]=gn>>>16;o[$m+11|0]=gn>>>24;o[$m+12|0]=hn;o[$m+13|0]=hn>>>8;o[$m+14|0]=hn>>>16;o[$m+15|0]=hn>>>24;o[$m|0]=dn;o[$m+1|0]=dn>>>8;o[$m+2|0]=dn>>>16;o[$m+3|0]=dn>>>24;o[$m+4|0]=kn;o[$m+5|0]=kn>>>8;o[$m+6|0]=kn>>>16;o[$m+7|0]=kn>>>24;kn=o[en|0];q:{r:{dn=ln+16|0;fn=dn;cn=q[dn>>2];if(!cn){break r}while(1){$m=q[cn+16>>2]<(nn|0);fn=$m?fn:cn;cn=q[($m<<2)+cn>>2];if(cn){continue}break}if((dn|0)==(fn|0)|(nn|0)<q[fn+16>>2]){break r}$m=fn+20|0;if(!Cd($m,bn+8|0)){break r}Dd($m,bn+8|0,kn,mn);break q}Dd(ln,bn+8|0,kn,mn)}if(o[bn+19|0]<=-1){pp(q[bn+8>>2])}kn=q[q[rn>>2]+48>>2];q[jn>>2]=0;q[bn+8>>2]=0;q[bn+12>>2]=0;gn=zo(32);q[bn+8>>2]=gn;q[bn+12>>2]=18;q[bn+16>>2]=-2147483616;o[gn+18|0]=0;$m=r[1950]|r[1951]<<8;o[gn+16|0]=$m;o[gn+17|0]=$m>>>8;dn=r[1946]|r[1947]<<8|(r[1948]<<16|r[1949]<<24);$m=r[1942]|r[1943]<<8|(r[1944]<<16|r[1945]<<24);o[gn+8|0]=$m;o[gn+9|0]=$m>>>8;o[gn+10|0]=$m>>>16;o[gn+11|0]=$m>>>24;o[gn+12|0]=dn;o[gn+13|0]=dn>>>8;o[gn+14|0]=dn>>>16;o[gn+15|0]=dn>>>24;dn=r[1938]|r[1939]<<8|(r[1940]<<16|r[1941]<<24);$m=r[1934]|r[1935]<<8|(r[1936]<<16|r[1937]<<24);o[gn|0]=$m;o[gn+1|0]=$m>>>8;o[gn+2|0]=$m>>>16;o[gn+3|0]=$m>>>24;o[gn+4|0]=dn;o[gn+5|0]=dn>>>8;o[gn+6|0]=dn>>>16;o[gn+7|0]=dn>>>24;s:{t:{dn=kn+16|0;fn=dn;cn=q[dn>>2];if(!cn){break t}while(1){$m=q[cn+16>>2]<(nn|0);fn=$m?fn:cn;cn=q[($m<<2)+cn>>2];if(cn){continue}break}if((dn|0)==(fn|0)|(nn|0)<q[fn+16>>2]){break t}$m=fn+20|0;if(!Cd($m,bn+8|0)){break t}wn=Ml($m,bn+8|0);break s}wn=Ml(kn,bn+8|0)}if(o[bn+19|0]<=-1){pp(q[bn+8>>2])}bc(bn+40|0,on,q[bn+24>>2],o[en|0],wn);$m=q[bn+24>>2];if(!$m){break p}q[bn+28>>2]=$m;pp($m);break p}dc(bn+40|0,pn,on)}hn=q[sn>>2];u:{if((hn|0)!=q[En>>2]){q[hn>>2]=1384;$m=q[bn+44>>2];kn=hn+16|0;q[kn>>2]=0;q[hn+8>>2]=0;q[hn+12>>2]=0;q[hn+4>>2]=$m;dn=q[bn+52>>2]-q[bn+48>>2]|0;v:{if(!dn){break v}$m=dn>>2;if($m>>>0>=1073741824){break f}gn=zo(dn);q[hn+8>>2]=gn;dn=hn+12|0;q[dn>>2]=gn;q[kn>>2]=gn+($m<<2);$m=q[bn+48>>2];kn=q[bn+52>>2]-$m|0;if((kn|0)<1){break v}Gn=dn,Hn=vp(gn,$m,kn)+kn|0,q[Gn>>2]=Hn}q[hn+20>>2]=q[bn+60>>2];q[sn>>2]=q[sn>>2]+24;break u}Ed(zn,bn+40|0)}fc(bn+24|0,bn+40|0,pn,xn);dn=q[vn>>2];w:{if(dn>>>0<t[Fn>>2]){$m=q[bn+24>>2];q[bn+24>>2]=0;q[dn>>2]=$m;q[vn>>2]=dn+4;break w}Fd(yn,bn+24|0)}$m=q[bn+24>>2];q[bn+24>>2]=0;if($m){Ba($m)}cn=0}q[bn+40>>2]=1384;$m=q[bn+48>>2];if($m){q[bn+52>>2]=$m;pp($m)}if(!cn){break b}cn=0;break a;case 0:case 2:case 4:case 5:case 6:break b;default:break h}}jn=pn+24|0;gn=o[jn|0];fn=0;q[bn+48>>2]=0;q[bn+40>>2]=0;q[bn+44>>2]=0;cn=0;if(gn){if((gn|0)<=-1){break e}$m=gn<<2;cn=zo($m);q[bn+40>>2]=cn;q[bn+44>>2]=cn;q[bn+48>>2]=$m+cn;while(1){q[cn>>2]=2147483647;cn=cn+4|0;gn=gn+ -1|0;if(gn){continue}break}q[bn+44>>2]=cn;cn=r[jn|0]}q[bn+32>>2]=0;q[bn+24>>2]=0;q[bn+28>>2]=0;if(cn&255){$m=cn<<24>>24;if(($m|0)<=-1){break d}dn=$m<<2;fn=zo(dn);q[bn+24>>2]=fn;$m=dn+fn|0;q[bn+32>>2]=$m;wp(fn,0,dn);q[bn+28>>2]=$m}ln=r[jn|0];on=0;if(!q[pn+80>>2]){break c}while(1){Gd(pn,on,ln<<24>>24,fn);hn=r[jn|0];ln=hn<<24>>24;if((ln|0)>=1){cn=0;gn=q[bn+24>>2];kn=q[bn+40>>2];while(1){$m=cn<<2;dn=$m+kn|0;$m=q[$m+gn>>2];if(q[dn>>2]>($m|0)){q[dn>>2]=$m}cn=cn+1|0;if(cn>>>0<hn>>>0){continue}break}}on=on+1|0;if(on>>>0>=t[pn+80>>2]){break c}fn=q[bn+24>>2];continue}}To();F()}To();F()}To();F()}To();F()}cn=0;if(ln<<24>>24>0){while(1){dn=q[bn+40>>2]+(cn<<2)|0;$m=q[un>>2];x:{if(($m|0)!=q[Dn>>2]){q[$m>>2]=q[dn>>2];q[un>>2]=$m+4;break x}pd(An,dn);ln=r[jn|0]}cn=cn+1|0;if((cn|0)<ln<<24>>24){continue}break}}$m=q[bn+24>>2];if($m){q[bn+28>>2]=$m;pp($m)}$m=q[bn+40>>2];if(!$m){break b}q[bn+44>>2]=$m;pp($m)}cn=1;tn=tn+1|0;fn=q[Cn>>2];if(tn>>>0>=q[i+8>>2]-fn>>2>>>0){break a}ln=q[i+28>>2];mn=q[ln+4>>2];continue}}T=bn- -64|0;return cn|0}function Cd(i,In){var Jn=0,Kn=0,Ln=0,Mn=0,Nn=0,On=0,Pn=0,Qn=0;i=q[i+4>>2];if(i){Kn=r[In+11|0];Ln=Kn<<24>>24<0;Kn=Ln?q[In+4>>2]:Kn;On=Ln?q[In>>2]:In;while(1){In=i+16|0;Jn=r[i+27|0];Ln=Jn<<24>>24<0;Mn=Ln?q[i+20>>2]:Jn;Pn=Mn>>>0<Kn>>>0;a:{b:{c:{d:{e:{f:{Jn=Pn?Mn:Kn;if(Jn){Nn=Ln?q[In>>2]:In;Qn=vn(On,Nn,Jn);if(Qn){break f}}if(Kn>>>0<Mn>>>0){break a}if(!Jn){break d}Nn=Ln?q[In>>2]:In;break e}if((Qn|0)<=-1){break a}}In=vn(Nn,On,Jn);if(In){break c}}if(Pn){break b}return 1}if((In|0)<=-1){break b}return 1}i=i+4|0}i=q[i>>2];if(i){continue}break}}return 0}function Dd(i,In,Rn,Sn){var Tn=0,Un=0,Vn=0,Wn=x(0);Tn=T-32|0;T=Tn;Vn=i+4|0;i=de(i,In);if((Vn|0)!=(i|0)){Un=Do(Tn+16|0,i+28|0);In=r[Un+11|0];i=In<<24>>24;if(!(!((i|0)<0?q[Un+4>>2]:In)|(Rn|0)<1)){In=0;i=(i|0)<0?q[Un>>2]:Tn+16|0;while(1){Wn=qn(i,Tn+12|0);Vn=i;i=q[Tn+12>>2];a:{if((Vn|0)==(i|0)){break a}u[(In<<2)+Sn>>2]=Wn;In=In+1|0;if((Rn|0)!=(In|0)){continue}}break}i=r[Un+11|0]}if(i<<24>>24<=-1){pp(q[Un>>2])}}T=Tn+32|0}function Ed(i,In){var Rn=0,Sn=0,Xn=0,Yn=0,Zn=0,_n=0,$n=0;a:{b:{c:{Sn=q[i>>2];Zn=(q[i+4>>2]-Sn|0)/24|0;Rn=Zn+1|0;if(Rn>>>0<178956971){Sn=(q[i+8>>2]-Sn|0)/24|0;_n=Sn<<1;Sn=Sn>>>0<89478485?_n>>>0<Rn>>>0?Rn:_n:178956970;Xn=0;d:{if(!Sn){break d}if(Sn>>>0>=178956971){break c}Xn=zo(w(Sn,24))}Rn=Xn+w(Zn,24)|0;ee(Rn,In);Zn=Xn+w(Sn,24)|0;_n=Rn+24|0;In=q[i+4>>2];Xn=q[i>>2];if((In|0)==(Xn|0)){break b}while(1){Rn=Rn+ -24|0;q[Rn>>2]=1384;Sn=q[In+ -20>>2];Yn=Rn+16|0;q[Yn>>2]=0;q[Rn+8>>2]=0;q[Rn+12>>2]=0;q[Rn+4>>2]=Sn;Sn=In+ -16|0;q[Rn+8>>2]=q[Sn>>2];q[Rn+12>>2]=q[In+ -12>>2];$n=Yn;Yn=In+ -8|0;q[$n>>2]=q[Yn>>2];q[Yn>>2]=0;q[Sn>>2]=0;q[Sn+4>>2]=0;q[Rn+20>>2]=q[In+ -4>>2];In=In+ -24|0;if((Xn|0)!=(In|0)){continue}break}Xn=q[i+4>>2];In=q[i>>2];break a}To();F()}Qb(2e3);F()}In=Xn}q[i>>2]=Rn;q[i+8>>2]=Zn;q[i+4>>2]=_n;if((In|0)!=(Xn|0)){while(1){Xn=Xn+ -24|0;n[q[q[Xn>>2]>>2]](Xn)|0;if((In|0)!=(Xn|0)){continue}break}}if(In){pp(In)}}function Fd(i,In){var ao=0,bo=0,co=0,eo=0,fo=0;a:{b:{c:{co=q[i>>2];eo=q[i+4>>2]-co>>2;ao=eo+1|0;if(ao>>>0<1073741824){co=q[i+8>>2]-co|0;fo=co>>1;ao=co>>2>>>0<536870911?fo>>>0<ao>>>0?ao:fo:1073741823;if(ao){if(ao>>>0>=1073741824){break c}bo=zo(ao<<2)}co=q[In>>2];q[In>>2]=0;In=(eo<<2)+bo|0;q[In>>2]=co;co=(ao<<2)+bo|0;eo=In+4|0;ao=q[i+4>>2];bo=q[i>>2];if((ao|0)==(bo|0)){break b}while(1){ao=ao+ -4|0;fo=q[ao>>2];q[ao>>2]=0;In=In+ -4|0;q[In>>2]=fo;if((ao|0)!=(bo|0)){continue}break}bo=q[i+4>>2];ao=q[i>>2];break a}To();F()}Qb(2e3);F()}ao=bo}q[i>>2]=In;q[i+8>>2]=co;q[i+4>>2]=eo;if((ao|0)!=(bo|0)){while(1){bo=bo+ -4|0;i=q[bo>>2];q[bo>>2]=0;if(i){Ba(i)}if((ao|0)!=(bo|0)){continue}break}}if(ao){pp(ao)}}function Gd(i,In,go,ho){var io=0,jo=0,ko=0,lo=0,mo=x(0),no=0;a:{b:{if(!ho){break b}io=q[i+28>>2]+ -1|0;if(io>>>0>10){break b}c:{d:{e:{switch(io-1|0){default:ko=1;io=o[i+24|0];if(((io|0)>(go|0)?go:io)<<24>>24>=1){io=q[q[i>>2]>>2];In=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],In,0)|0;In=io+In|0;while(1){q[(jo<<2)+ho>>2]=o[In|0];In=In+1|0;jo=jo+1|0;io=o[i+24|0];if((jo|0)<((io|0)>(go|0)?go:io)<<24>>24){continue}break}}if((io|0)>=(go|0)){break b}break a;case 0:ko=1;io=o[i+24|0];if(((io|0)>(go|0)?go:io)<<24>>24>=1){io=q[q[i>>2]>>2];In=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],In,0)|0;In=io+In|0;while(1){q[(jo<<2)+ho>>2]=r[In|0];In=In+1|0;jo=jo+1|0;io=o[i+24|0];if((jo|0)<((io|0)>(go|0)?go:io)<<24>>24){continue}break}}if((io|0)>=(go|0)){break b}break a;case 1:ko=1;io=o[i+24|0];if(((io|0)>(go|0)?go:io)<<24>>24>=1){io=q[q[i>>2]>>2];In=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],In,0)|0;In=io+In|0;while(1){q[(jo<<2)+ho>>2]=p[In>>1];In=In+2|0;jo=jo+1|0;io=o[i+24|0];if((jo|0)<((io|0)>(go|0)?go:io)<<24>>24){continue}break}}if((io|0)>=(go|0)){break b}break a;case 2:ko=1;io=o[i+24|0];if(((io|0)>(go|0)?go:io)<<24>>24>=1){io=q[q[i>>2]>>2];In=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],In,0)|0;In=io+In|0;while(1){q[(jo<<2)+ho>>2]=s[In>>1];In=In+2|0;jo=jo+1|0;io=o[i+24|0];if((jo|0)<((io|0)>(go|0)?go:io)<<24>>24){continue}break}}if((io|0)>=(go|0)){break b}break a;case 3:ko=1;io=o[i+24|0];if(((io|0)>(go|0)?go:io)<<24>>24>=1){io=q[q[i>>2]>>2];In=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],In,0)|0;In=io+In|0;while(1){q[(jo<<2)+ho>>2]=q[In>>2];In=In+4|0;jo=jo+1|0;io=o[i+24|0];if((jo|0)<((io|0)>(go|0)?go:io)<<24>>24){continue}break}}if((io|0)>=(go|0)){break b}break a;case 4:ko=1;io=o[i+24|0];if(((io|0)>(go|0)?go:io)<<24>>24>=1){io=q[q[i>>2]>>2];In=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],In,0)|0;In=io+In|0;while(1){q[(jo<<2)+ho>>2]=q[In>>2];In=In+4|0;jo=jo+1|0;io=o[i+24|0];if((jo|0)<((io|0)>(go|0)?go:io)<<24>>24){continue}break}}if((io|0)>=(go|0)){break b}break a;case 5:ko=1;io=o[i+24|0];if(((io|0)>(go|0)?go:io)<<24>>24>=1){io=q[q[i>>2]>>2];In=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],In,0)|0;In=io+In|0;while(1){q[(jo<<2)+ho>>2]=q[In>>2];In=In+8|0;jo=jo+1|0;io=o[i+24|0];if((jo|0)<((io|0)>(go|0)?go:io)<<24>>24){continue}break}}if((io|0)>=(go|0)){break b}break a;case 6:ko=1;io=o[i+24|0];if(((io|0)>(go|0)?go:io)<<24>>24>=1){io=q[q[i>>2]>>2];In=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],In,0)|0;In=io+In|0;while(1){q[(jo<<2)+ho>>2]=q[In>>2];In=In+8|0;jo=jo+1|0;io=o[i+24|0];if((jo|0)<((io|0)>(go|0)?go:io)<<24>>24){continue}break}}if((io|0)>=(go|0)){break b}break a;case 7:ko=1;io=o[i+24|0];if(((io|0)>(go|0)?go:io)<<24>>24<1){break c}io=q[q[i>>2]>>2];In=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],In,0)|0;In=io+In|0;while(1){io=(jo<<2)+ho|0;mo=u[In>>2];f:{if(x(y(mo))<x(2147483648)){lo=~~mo;break f}lo=-2147483648}q[io>>2]=lo;In=In+4|0;jo=jo+1|0;io=o[i+24|0];if((jo|0)<((io|0)>(go|0)?go:io)<<24>>24){continue}break}break c;case 8:ko=1;io=o[i+24|0];if(((io|0)>(go|0)?go:io)<<24>>24<1){break d}io=q[q[i>>2]>>2];In=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],In,0)|0;In=io+In|0;while(1){io=(jo<<2)+ho|0;no=v[In>>3];g:{if(y(no)<2147483648){lo=~~no;break g}lo=-2147483648}q[io>>2]=lo;In=In+8|0;jo=jo+1|0;io=o[i+24|0];if((jo|0)<((io|0)>(go|0)?go:io)<<24>>24){continue}break}break d;case 9:break e}}ko=1;io=o[i+24|0];if(((io|0)>(go|0)?go:io)<<24>>24>=1){io=q[q[i>>2]>>2];In=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],In,0)|0;In=io+In|0;while(1){q[(jo<<2)+ho>>2]=r[In|0];In=In+1|0;jo=jo+1|0;io=o[i+24|0];if((jo|0)<((io|0)>(go|0)?go:io)<<24>>24){continue}break}}if((io|0)>=(go|0)){break b}wp((io<<2)+ho|0,0,go-io<<2);break b}if((io|0)>=(go|0)){break b}break a}if((io|0)>=(go|0)){break b}break a}return ko}wp((io<<2)+ho|0,0,go-io<<2);return 1}function Hd(i,In){i=i|0;In=In|0;var go=0,ho=0,oo=0;go=q[i+36>>2];oo=i+40|0;if((go|0)!=q[oo>>2]){while(1){ec(w(ho,24)+go|0,In);ho=ho+1|0;go=q[i+36>>2];if(ho>>>0<(q[oo>>2]-go|0)/24>>>0){continue}break}}go=q[i+48>>2];oo=i+52|0;if((go|0)!=q[oo>>2]){ho=0;while(1){go=q[(ho<<2)+go>>2];td(go<<1^go>>31,In);ho=ho+1|0;go=q[i+48>>2];if(ho>>>0<q[oo>>2]-go>>2>>>0){continue}break}}return 1}function Id(i,In){i=i|0;In=In|0;var po=0,qo=0,ro=0,so=0,to=0,uo=0,vo=0,wo=0,xo=0,yo=0,Ao=0,Bo=0,Co=0,Do=0,Eo=0,Fo=0,Go=0,Ho=0,Io=0,Jo=0;po=T-1696|0;T=po;qo=10-Jd(q[q[i+28>>2]+48>>2])|0;qo=(qo|0)<6?qo:6;o[po+1695|0]=qo;if(!((qo&255)!=6|q[i+72>>2]<16)){o[po+1695|0]=5}qo=q[In+20>>2];if((qo|0)<0?1:(qo|0)<=0?t[In+16>>2]>0?0:1:0){Vb(In,q[In+4>>2],po+1695|0,po+1696|0)}so=q[i+28>>2];wo=q[q[so+4>>2]+80>>2];ro=q[i+72>>2];q[po+1684>>2]=0;q[po+1676>>2]=0;q[po+1680>>2]=0;q[po+1668>>2]=ro;q[po+1664>>2]=wo;q[po+1672>>2]=ro<<2;a:{uo=w(ro,wo);if(uo){if(uo>>>0>=1073741824){break a}qo=uo<<2;to=zo(qo);q[po+1676>>2]=to;vo=qo+to|0;q[po+1684>>2]=vo;wp(to,0,qo);q[po+1680>>2]=vo}q[po+1688>>2]=to;b:{Do=i+4|0;qo=q[Do>>2];Eo=i+8|0;c:{if((qo|0)!=q[Eo>>2]){Ho=i+48|0;Io=i+60|0;while(1){so=q[q[q[so+4>>2]+8>>2]+(q[(Ao<<2)+qo>>2]<<2)>>2];qo=q[so+28>>2];if(qo+ -1>>>0>=6){if((qo|0)!=9){break c}so=q[q[Io>>2]+(Fo<<2)>>2];Fo=Fo+1|0}if(!so){break c}d:{e:{qo=q[so+28>>2]+ -1|0;if(qo>>>0>5){break e}f:{switch(qo-1|0){case 4:if(!wo){break d}qo=0;while(1){ro=qo;to=(q[po+1688>>2]+(xo<<2)|0)+(w(q[po+1668>>2],qo)<<2)|0;uo=q[q[so>>2]>>2];vo=q[so+48>>2];Bo=q[so+40>>2];Co=q[so+44>>2];if(!r[so+84|0]){ro=q[q[so+68>>2]+(qo<<2)>>2]}yo=to;to=Up(Bo,Co,ro,0)+vo|0;vp(yo,to+uo|0,o[so+24|0]<<2);qo=qo+1|0;if((wo|0)!=(qo|0)){continue}break}break d;case 0:case 2:break e;default:break f}}vo=so+24|0;ro=o[vo|0];qo=0;q[po+464>>2]=0;q[po+456>>2]=0;q[po+460>>2]=0;uo=0;g:{if(ro){if((ro|0)<=-1){break g}ro=ro<<2;to=zo(ro);q[po+456>>2]=to;uo=ro+to|0;q[po+464>>2]=uo;wp(to,0,ro);q[po+460>>2]=uo;uo=r[vo|0]}q[po+1656>>2]=0;q[po+1648>>2]=0;q[po+1652>>2]=0;h:{if(uo&255){qo=uo<<24>>24;if((qo|0)<=-1){break h}ro=qo<<2;qo=zo(ro);q[po+1648>>2]=qo;to=qo+ro|0;q[po+1656>>2]=to;wp(qo,0,ro);q[po+1652>>2]=to}if(wo){ro=0;while(1){qo=ro;to=so;if(!r[so+84|0]){qo=q[q[so+68>>2]+(ro<<2)>>2]}Gd(to,qo,o[vo|0],q[po+456>>2]);uo=o[vo|0];i:{if((uo|0)<=0){to=q[po+1648>>2];break i}uo=uo&255;Bo=q[Ho>>2];qo=0;to=q[po+1648>>2];Co=q[po+456>>2];while(1){yo=qo<<2;q[yo+to>>2]=q[Co+yo>>2]-q[Bo+(qo+Go<<2)>>2];qo=qo+1|0;if(qo>>>0<uo>>>0){continue}break}}vp((q[po+1688>>2]+(xo<<2)|0)+(w(q[po+1668>>2],ro)<<2)|0,to,uo<<2);ro=ro+1|0;if((ro|0)!=(wo|0)){continue}break}qo=q[po+1648>>2]}ro=o[vo|0];if(qo){q[po+1652>>2]=qo;pp(qo)}qo=q[po+456>>2];if(qo){q[po+460>>2]=qo;pp(qo)}Go=ro+Go|0;break d}To();F()}To();F()}uo=so+24|0;ro=o[uo|0];qo=0;q[po+464>>2]=0;q[po+456>>2]=0;q[po+460>>2]=0;if(ro){if((ro|0)<=-1){break b}ro=ro<<2;qo=zo(ro);q[po+456>>2]=qo;to=qo+ro|0;q[po+464>>2]=to;wp(qo,0,ro);q[po+460>>2]=to}if(wo){qo=0;while(1){ro=qo;to=so;if(!r[so+84|0]){ro=q[q[so+68>>2]+(qo<<2)>>2]}Kd(to,ro,o[uo|0],q[po+456>>2]);vp((q[po+1688>>2]+(xo<<2)|0)+(w(q[po+1668>>2],qo)<<2)|0,q[po+456>>2],o[uo|0]<<2);qo=qo+1|0;if((wo|0)!=(qo|0)){continue}break}qo=q[po+456>>2]}if(!qo){break d}q[po+460>>2]=qo;pp(qo)}Ao=Ao+1|0;qo=q[Do>>2];if(Ao>>>0<q[Eo>>2]-qo>>2>>>0){xo=o[so+24|0]+xo|0;so=q[i+28>>2];continue}break}ro=q[i+72>>2];uo=w(wo,ro);to=q[po+1688>>2]}so=0;if((uo|0)>0){qo=0;while(1){i=q[(qo<<2)+to>>2];if(i){i=z(i)^31;so=(i|0)<(so|0)?so:i+1|0}qo=qo+1|0;if((qo|0)<(uo|0)){continue}break}}i=r[po+1695|0];if(i>>>0>6){break c}j:{k:{switch(i-1|0){case 5:qo=Nd(po+456|0,ro);i=q[po+1668>>2];q[po+32>>2]=i;q[po+16>>2]=i;q[po+440>>2]=0;q[po+448>>2]=i;q[po+424>>2]=q[po+1664>>2];q[po+432>>2]=i;q[po+444>>2]=po+1664;i=q[po+444>>2];q[po+24>>2]=q[po+440>>2];q[po+28>>2]=i;q[po+428>>2]=po+1664;q[po+1648>>2]=so;i=q[po+428>>2];q[po+8>>2]=q[po+424>>2];q[po+12>>2]=i;i=Ld(qo,po+24|0,po+8|0,po+1648|0,In);Md(qo);if(i){break j}break c;case 4:qo=Nd(po+456|0,ro);i=q[po+1668>>2];q[po- -64>>2]=i;q[po+48>>2]=i;q[po+408>>2]=0;q[po+416>>2]=i;q[po+392>>2]=q[po+1664>>2];q[po+400>>2]=i;q[po+412>>2]=po+1664;i=q[po+412>>2];q[po+56>>2]=q[po+408>>2];q[po+60>>2]=i;q[po+396>>2]=po+1664;q[po+1648>>2]=so;i=q[po+396>>2];q[po+40>>2]=q[po+392>>2];q[po+44>>2]=i;i=Od(qo,po+56|0,po+40|0,po+1648|0,In);Md(qo);if(i){break j}break c;case 3:qo=Nd(po+456|0,ro);i=q[po+1668>>2];q[po+96>>2]=i;q[po+80>>2]=i;q[po+376>>2]=0;q[po+384>>2]=i;q[po+360>>2]=q[po+1664>>2];q[po+368>>2]=i;q[po+380>>2]=po+1664;i=q[po+380>>2];q[po+88>>2]=q[po+376>>2];q[po+92>>2]=i;q[po+364>>2]=po+1664;q[po+1648>>2]=so;i=q[po+364>>2];q[po+72>>2]=q[po+360>>2];q[po+76>>2]=i;i=Od(qo,po+88|0,po+72|0,po+1648|0,In);Md(qo);if(i){break j}break c;case 2:qo=Pd(po+456|0,ro);i=q[po+1668>>2];q[po+128>>2]=i;q[po+112>>2]=i;q[po+344>>2]=0;q[po+352>>2]=i;q[po+328>>2]=q[po+1664>>2];q[po+336>>2]=i;q[po+348>>2]=po+1664;i=q[po+348>>2];q[po+120>>2]=q[po+344>>2];q[po+124>>2]=i;q[po+332>>2]=po+1664;q[po+1648>>2]=so;i=q[po+332>>2];q[po+104>>2]=q[po+328>>2];q[po+108>>2]=i;i=Qd(qo,po+120|0,po+104|0,po+1648|0,In);Rd(qo);if(i){break j}break c;case 1:qo=Pd(po+456|0,ro);i=q[po+1668>>2];q[po+160>>2]=i;q[po+144>>2]=i;q[po+312>>2]=0;q[po+320>>2]=i;q[po+296>>2]=q[po+1664>>2];q[po+304>>2]=i;q[po+316>>2]=po+1664;i=q[po+316>>2];q[po+152>>2]=q[po+312>>2];q[po+156>>2]=i;q[po+300>>2]=po+1664;q[po+1648>>2]=so;i=q[po+300>>2];q[po+136>>2]=q[po+296>>2];q[po+140>>2]=i;i=Qd(qo,po+152|0,po+136|0,po+1648|0,In);Rd(qo);if(i){break j}break c;case 0:qo=Sd(po+456|0,ro);i=q[po+1668>>2];q[po+192>>2]=i;q[po+176>>2]=i;q[po+280>>2]=0;q[po+288>>2]=i;q[po+264>>2]=q[po+1664>>2];q[po+272>>2]=i;q[po+284>>2]=po+1664;i=q[po+284>>2];q[po+184>>2]=q[po+280>>2];q[po+188>>2]=i;q[po+268>>2]=po+1664;q[po+1648>>2]=so;i=q[po+268>>2];q[po+168>>2]=q[po+264>>2];q[po+172>>2]=i;i=Td(qo,po+184|0,po+168|0,po+1648|0,In);Ud(qo);if(i){break j}break c;default:break k}}qo=Sd(po+456|0,ro);i=q[po+1668>>2];q[po+224>>2]=i;q[po+208>>2]=i;q[po+248>>2]=0;q[po+256>>2]=i;q[po+232>>2]=q[po+1664>>2];q[po+240>>2]=i;q[po+252>>2]=po+1664;i=q[po+252>>2];q[po+216>>2]=q[po+248>>2];q[po+220>>2]=i;q[po+236>>2]=po+1664;q[po+1648>>2]=so;i=q[po+236>>2];q[po+200>>2]=q[po+232>>2];q[po+204>>2]=i;i=Td(qo,po+216|0,po+200|0,po+1648|0,In);Ud(qo);if(!i){break c}}Jo=1}i=q[po+1676>>2];if(i){q[po+1680>>2]=i;pp(i)}T=po+1696|0;return Jo|0}To();F()}To();F()}function Jd(i){var In=0,Ko=0,Lo=0,Mo=0,No=0;Mo=T-16|0;T=Mo;In=zo(16);q[Mo>>2]=In;q[Mo+4>>2]=14;q[Mo+8>>2]=-2147483632;o[In+14|0]=0;Ko=r[2078]|r[2079]<<8|(r[2080]<<16|r[2081]<<24);Lo=r[2074]|r[2075]<<8|(r[2076]<<16|r[2077]<<24);o[In+6|0]=Lo;o[In+7|0]=Lo>>>8;o[In+8|0]=Lo>>>16;o[In+9|0]=Lo>>>24;o[In+10|0]=Ko;o[In+11|0]=Ko>>>8;o[In+12|0]=Ko>>>16;o[In+13|0]=Ko>>>24;Ko=r[2072]|r[2073]<<8|(r[2074]<<16|r[2075]<<24);Lo=r[2068]|r[2069]<<8|(r[2070]<<16|r[2071]<<24);o[In|0]=Lo;o[In+1|0]=Lo>>>8;o[In+2|0]=Lo>>>16;o[In+3|0]=Lo>>>24;o[In+4|0]=Ko;o[In+5|0]=Ko>>>8;o[In+6|0]=Ko>>>16;o[In+7|0]=Ko>>>24;No=Ll(i,Mo,-1);if(o[Mo+11|0]<=-1){pp(q[Mo>>2])}In=zo(16);q[Mo>>2]=In;q[Mo+4>>2]=14;q[Mo+8>>2]=-2147483632;o[In+14|0]=0;Ko=r[2093]|r[2094]<<8|(r[2095]<<16|r[2096]<<24);Lo=r[2089]|r[2090]<<8|(r[2091]<<16|r[2092]<<24);o[In+6|0]=Lo;o[In+7|0]=Lo>>>8;o[In+8|0]=Lo>>>16;o[In+9|0]=Lo>>>24;o[In+10|0]=Ko;o[In+11|0]=Ko>>>8;o[In+12|0]=Ko>>>16;o[In+13|0]=Ko>>>24;Ko=r[2087]|r[2088]<<8|(r[2089]<<16|r[2090]<<24);Lo=r[2083]|r[2084]<<8|(r[2085]<<16|r[2086]<<24);o[In|0]=Lo;o[In+1|0]=Lo>>>8;o[In+2|0]=Lo>>>16;o[In+3|0]=Lo>>>24;o[In+4|0]=Ko;o[In+5|0]=Ko>>>8;o[In+6|0]=Ko>>>16;o[In+7|0]=Ko>>>24;i=Ll(i,Mo,-1);if(o[Mo+11|0]<=-1){pp(q[Mo>>2])}T=Mo+16|0;i=(No|0)<(i|0)?i:No;return(i|0)==-1?5:i}function Kd(i,zo,Oo,Po){var Qo=0,Ro=0,So=0,To=x(0),Uo=0;a:{b:{if(!Po){break b}Qo=q[i+28>>2]+ -1|0;if(Qo>>>0>10){break b}c:{d:{e:{switch(Qo-1|0){default:Qo=o[i+24|0];if(((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24>=1){Qo=q[q[i>>2]>>2];zo=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],zo,0)|0;zo=Qo+zo|0;while(1){q[(Ro<<2)+Po>>2]=o[zo|0];zo=zo+1|0;Ro=Ro+1|0;Qo=o[i+24|0];if((Ro|0)<((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24){continue}break}}if((Qo|0)>=(Oo|0)){break b}break a;case 0:Qo=o[i+24|0];if(((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24>=1){Qo=q[q[i>>2]>>2];zo=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],zo,0)|0;zo=Qo+zo|0;while(1){q[(Ro<<2)+Po>>2]=r[zo|0];zo=zo+1|0;Ro=Ro+1|0;Qo=o[i+24|0];if((Ro|0)<((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24){continue}break}}if((Qo|0)>=(Oo|0)){break b}break a;case 1:Qo=o[i+24|0];if(((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24>=1){Qo=q[q[i>>2]>>2];zo=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],zo,0)|0;zo=Qo+zo|0;while(1){q[(Ro<<2)+Po>>2]=p[zo>>1];zo=zo+2|0;Ro=Ro+1|0;Qo=o[i+24|0];if((Ro|0)<((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24){continue}break}}if((Qo|0)>=(Oo|0)){break b}break a;case 2:Qo=o[i+24|0];if(((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24>=1){Qo=q[q[i>>2]>>2];zo=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],zo,0)|0;zo=Qo+zo|0;while(1){q[(Ro<<2)+Po>>2]=s[zo>>1];zo=zo+2|0;Ro=Ro+1|0;Qo=o[i+24|0];if((Ro|0)<((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24){continue}break}}if((Qo|0)>=(Oo|0)){break b}break a;case 3:Qo=o[i+24|0];if(((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24>=1){Qo=q[q[i>>2]>>2];zo=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],zo,0)|0;zo=Qo+zo|0;while(1){q[(Ro<<2)+Po>>2]=q[zo>>2];zo=zo+4|0;Ro=Ro+1|0;Qo=o[i+24|0];if((Ro|0)<((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24){continue}break}}if((Qo|0)>=(Oo|0)){break b}break a;case 4:Qo=o[i+24|0];if(((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24>=1){Qo=q[q[i>>2]>>2];zo=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],zo,0)|0;zo=Qo+zo|0;while(1){q[(Ro<<2)+Po>>2]=q[zo>>2];zo=zo+4|0;Ro=Ro+1|0;Qo=o[i+24|0];if((Ro|0)<((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24){continue}break}}if((Qo|0)>=(Oo|0)){break b}break a;case 5:Qo=o[i+24|0];if(((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24>=1){Qo=q[q[i>>2]>>2];zo=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],zo,0)|0;zo=Qo+zo|0;while(1){q[(Ro<<2)+Po>>2]=q[zo>>2];zo=zo+8|0;Ro=Ro+1|0;Qo=o[i+24|0];if((Ro|0)<((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24){continue}break}}if((Qo|0)>=(Oo|0)){break b}break a;case 6:Qo=o[i+24|0];if(((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24>=1){Qo=q[q[i>>2]>>2];zo=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],zo,0)|0;zo=Qo+zo|0;while(1){q[(Ro<<2)+Po>>2]=q[zo>>2];zo=zo+8|0;Ro=Ro+1|0;Qo=o[i+24|0];if((Ro|0)<((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24){continue}break}}if((Qo|0)>=(Oo|0)){break b}break a;case 7:Qo=o[i+24|0];if(((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24<1){break c}Qo=q[q[i>>2]>>2];zo=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],zo,0)|0;zo=Qo+zo|0;while(1){Qo=(Ro<<2)+Po|0;To=u[zo>>2];f:{if(To<x(4294967296)&To>=x(0)){So=~~To>>>0;break f}So=0}q[Qo>>2]=So;zo=zo+4|0;Ro=Ro+1|0;Qo=o[i+24|0];if((Ro|0)<((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24){continue}break}break c;case 8:Qo=o[i+24|0];if(((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24<1){break d}Qo=q[q[i>>2]>>2];zo=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],zo,0)|0;zo=Qo+zo|0;while(1){Qo=(Ro<<2)+Po|0;Uo=v[zo>>3];g:{if(Uo<4294967296&Uo>=0){So=~~Uo>>>0;break g}So=0}q[Qo>>2]=So;zo=zo+8|0;Ro=Ro+1|0;Qo=o[i+24|0];if((Ro|0)<((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24){continue}break}break d;case 9:break e}}Qo=o[i+24|0];if(((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24>=1){Qo=q[q[i>>2]>>2];zo=q[i+48>>2]+Up(q[i+40>>2],q[i+44>>2],zo,0)|0;zo=Qo+zo|0;while(1){q[(Ro<<2)+Po>>2]=r[zo|0];zo=zo+1|0;Ro=Ro+1|0;Qo=o[i+24|0];if((Ro|0)<((Qo|0)>(Oo|0)?Oo:Qo)<<24>>24){continue}break}}if((Qo|0)>=(Oo|0)){break b}wp((Qo<<2)+Po|0,0,Oo-Qo<<2);break b}if((Qo|0)>=(Oo|0)){break b}break a}if((Qo|0)>=(Oo|0)){break b}wp((Qo<<2)+Po|0,0,Oo-Qo<<2)}return}wp((Qo<<2)+Po|0,0,Oo-Qo<<2)}function Ld(i,zo,Oo,Po,Vo){var Wo=0,Xo=0,Yo=0,Zo=0;Wo=T-32|0;T=Wo;q[i>>2]=q[Po>>2];Po=q[Oo>>2]-q[zo>>2]|0;q[i+4>>2]=Po;Xo=q[Vo+20>>2];if((Xo|0)<0?1:(Xo|0)<=0?t[Vo+16>>2]>0?0:1:0){Po=i+4|0;Vb(Vo,q[Vo+4>>2],i,Po);Xo=q[Vo+20>>2];if((Xo|0)<0?1:(Xo|0)<=0?t[Vo+16>>2]>0?0:1:0){Vb(Vo,q[Vo+4>>2],Po,Po+4|0)}Po=q[Po>>2]}if(Po){Vd(i+12|0);Po=i+1068|0;Yg(Po);Xo=i+1088|0;Yg(Xo);Yo=i+1108|0;Yg(Yo);q[Wo+24>>2]=q[zo+8>>2];Zo=q[zo+4>>2];q[Wo+16>>2]=q[zo>>2];q[Wo+20>>2]=Zo;q[Wo+8>>2]=q[Oo+8>>2];zo=q[Oo+4>>2];q[Wo>>2]=q[Oo>>2];q[Wo+4>>2]=zo;Wd(i,Wo+16|0,Wo);Oo=0;while(1){eh(((Oo<<5)+i|0)+12|0,Vo);Oo=Oo+1|0;if((Oo|0)!=32){continue}break}eh(i+1036|0,Vo);Zg(Po,Vo);Zg(Xo,Vo);Zg(Yo,Vo)}T=Wo+32|0;return 1}function Md(i){var zo=0,Oo=0,Po=0,Vo=0,_o=0;Po=q[i+1176>>2];if(Po){_o=i+1180|0;zo=q[_o>>2];Oo=Po;a:{if((Po|0)==(zo|0)){break a}while(1){Oo=zo+ -12|0;Vo=q[Oo>>2];if(Vo){q[zo+ -8>>2]=Vo;pp(Vo)}zo=Oo;if((zo|0)!=(Po|0)){continue}break}Oo=q[i+1176>>2]}q[_o>>2]=Po;pp(Oo)}Po=q[i+1164>>2];if(Po){_o=i+1168|0;zo=q[_o>>2];Oo=Po;b:{if((Po|0)==(zo|0)){break b}while(1){Oo=zo+ -12|0;Vo=q[Oo>>2];if(Vo){q[zo+ -8>>2]=Vo;pp(Vo)}zo=Oo;if((zo|0)!=(Po|0)){continue}break}Oo=q[i+1164>>2]}q[_o>>2]=Po;pp(Oo)}zo=q[i+1152>>2];if(zo){q[i+1156>>2]=zo;pp(zo)}zo=q[i+1140>>2];if(zo){q[i+1144>>2]=zo;pp(zo)}zo=q[i+1128>>2];if(zo){q[i+1132>>2]=zo;pp(zo)}Xg(i+1108|0);Xg(i+1088|0);Xg(i+1068|0);$g(i+1036|0);Xd(i+12|0)}function Nd(i,$o){var ap=0,bp=0,cp=0,dp=0;cp=T-16|0;T=cp;q[i+8>>2]=$o;q[i>>2]=0;Yd(i+12|0);_g(i+1036|0);Wg(i+1068|0);Wg(i+1088|0);Wg(i+1108|0);q[i+1136>>2]=0;q[i+1128>>2]=0;q[i+1132>>2]=0;a:{b:{c:{d:{if($o){if($o>>>0>=1073741824){break d}ap=$o<<2;bp=zo(ap);q[i+1128>>2]=bp;q[i+1132>>2]=bp;q[i+1136>>2]=bp+ap;wp(bp,0,ap);ap=$o;while(1){bp=bp+4|0;ap=ap+ -1|0;if(ap){continue}break}q[i+1132>>2]=bp}q[i+1140>>2]=0;q[i+1144>>2]=0;q[i+1148>>2]=0;if($o){if($o>>>0>=1073741824){break c}ap=$o<<2;bp=zo(ap);q[i+1140>>2]=bp;q[i+1144>>2]=bp;q[i+1148>>2]=bp+ap;wp(bp,0,ap);ap=$o;while(1){bp=bp+4|0;ap=ap+ -1|0;if(ap){continue}break}q[i+1144>>2]=bp}q[i+1152>>2]=0;q[i+1156>>2]=0;q[i+1160>>2]=0;if($o){if($o>>>0>=1073741824){break b}ap=$o<<2;bp=zo(ap);q[i+1152>>2]=bp;q[i+1156>>2]=bp;q[i+1160>>2]=bp+ap;wp(bp,0,ap);ap=$o;while(1){bp=bp+4|0;ap=ap+ -1|0;if(ap){continue}break}q[i+1156>>2]=bp}q[cp+8>>2]=0;q[cp>>2]=0;q[cp+4>>2]=0;if($o){if($o>>>0>=1073741824){break a}ap=$o<<2;bp=zo(ap);q[cp>>2]=bp;q[cp+4>>2]=bp;q[cp+8>>2]=bp+ap;wp(bp,0,ap);ap=$o;while(1){bp=bp+4|0;ap=ap+ -1|0;if(ap){continue}break}q[cp+4>>2]=bp}dp=$o<<5|1;Zd(i+1164|0,dp,cp);ap=q[cp>>2];if(ap){q[cp+4>>2]=ap;pp(ap)}q[cp+8>>2]=0;q[cp>>2]=0;q[cp+4>>2]=0;if($o){if($o>>>0>=1073741824){break a}ap=$o<<2;bp=zo(ap);q[cp>>2]=bp;q[cp+4>>2]=bp;q[cp+8>>2]=bp+ap;wp(bp,0,ap);while(1){bp=bp+4|0;$o=$o+ -1|0;if($o){continue}break}q[cp+4>>2]=bp}Zd(i+1176|0,dp,cp);$o=q[cp>>2];if($o){q[cp+4>>2]=$o;pp($o)}T=cp+16|0;return i}To();F()}To();F()}To();F()}To();F()}function Od(i,$o,ep,fp,gp){var hp=0,ip=0,jp=0,kp=0;hp=T-32|0;T=hp;q[i>>2]=q[fp>>2];fp=q[ep>>2]-q[$o>>2]|0;q[i+4>>2]=fp;ip=q[gp+20>>2];if((ip|0)<0?1:(ip|0)<=0?t[gp+16>>2]>0?0:1:0){fp=i+4|0;Vb(gp,q[gp+4>>2],i,fp);ip=q[gp+20>>2];if((ip|0)<0?1:(ip|0)<=0?t[gp+16>>2]>0?0:1:0){Vb(gp,q[gp+4>>2],fp,fp+4|0)}fp=q[fp>>2]}if(fp){Vd(i+12|0);fp=i+1068|0;Yg(fp);ip=i+1088|0;Yg(ip);jp=i+1108|0;Yg(jp);q[hp+24>>2]=q[$o+8>>2];kp=q[$o+4>>2];q[hp+16>>2]=q[$o>>2];q[hp+20>>2]=kp;q[hp+8>>2]=q[ep+8>>2];$o=q[ep+4>>2];q[hp>>2]=q[ep>>2];q[hp+4>>2]=$o;_d(i,hp+16|0,hp);ep=0;while(1){eh(((ep<<5)+i|0)+12|0,gp);ep=ep+1|0;if((ep|0)!=32){continue}break}eh(i+1036|0,gp);Zg(fp,gp);Zg(ip,gp);Zg(jp,gp)}T=hp+32|0;return 1}function Pd(i,$o){var ep=0,fp=0,gp=0,lp=0;gp=T-16|0;T=gp;q[i+8>>2]=$o;q[i>>2]=0;_g(i+12|0);Wg(i+44|0);Wg(i- -64|0);Wg(i+84|0);q[i+112>>2]=0;q[i+104>>2]=0;q[i+108>>2]=0;a:{b:{c:{d:{if($o){if($o>>>0>=1073741824){break d}ep=$o<<2;fp=zo(ep);q[i+104>>2]=fp;q[i+108>>2]=fp;q[i+112>>2]=fp+ep;wp(fp,0,ep);ep=$o;while(1){fp=fp+4|0;ep=ep+ -1|0;if(ep){continue}break}q[i+108>>2]=fp}q[i+116>>2]=0;q[i+120>>2]=0;q[i+124>>2]=0;if($o){if($o>>>0>=1073741824){break c}ep=$o<<2;fp=zo(ep);q[i+116>>2]=fp;q[i+120>>2]=fp;q[i+124>>2]=fp+ep;wp(fp,0,ep);ep=$o;while(1){fp=fp+4|0;ep=ep+ -1|0;if(ep){continue}break}q[i+120>>2]=fp}q[i+128>>2]=0;q[i+132>>2]=0;q[i+136>>2]=0;if($o){if($o>>>0>=1073741824){break b}ep=$o<<2;fp=zo(ep);q[i+128>>2]=fp;q[i+132>>2]=fp;q[i+136>>2]=fp+ep;wp(fp,0,ep);ep=$o;while(1){fp=fp+4|0;ep=ep+ -1|0;if(ep){continue}break}q[i+132>>2]=fp}q[gp+8>>2]=0;q[gp>>2]=0;q[gp+4>>2]=0;if($o){if($o>>>0>=1073741824){break a}ep=$o<<2;fp=zo(ep);q[gp>>2]=fp;q[gp+4>>2]=fp;q[gp+8>>2]=fp+ep;wp(fp,0,ep);ep=$o;while(1){fp=fp+4|0;ep=ep+ -1|0;if(ep){continue}break}q[gp+4>>2]=fp}lp=$o<<5|1;Zd(i+140|0,lp,gp);ep=q[gp>>2];if(ep){q[gp+4>>2]=ep;pp(ep)}q[gp+8>>2]=0;q[gp>>2]=0;q[gp+4>>2]=0;if($o){if($o>>>0>=1073741824){break a}ep=$o<<2;fp=zo(ep);q[gp>>2]=fp;q[gp+4>>2]=fp;q[gp+8>>2]=fp+ep;wp(fp,0,ep);while(1){fp=fp+4|0;$o=$o+ -1|0;if($o){continue}break}q[gp+4>>2]=fp}Zd(i+152|0,lp,gp);$o=q[gp>>2];if($o){q[gp+4>>2]=$o;pp($o)}T=gp+16|0;return i}To();F()}To();F()}To();F()}To();F()}function Qd(i,$o,mp,np,op){var pp=0,qp=0,rp=0,sp=0,tp=0;pp=T-32|0;T=pp;q[i>>2]=q[np>>2];np=q[mp>>2]-q[$o>>2]|0;q[i+4>>2]=np;qp=q[op+20>>2];if((qp|0)<0?1:(qp|0)<=0?t[op+16>>2]>0?0:1:0){np=i+4|0;Vb(op,q[op+4>>2],i,np);qp=q[op+20>>2];if((qp|0)<0?1:(qp|0)<=0?t[op+16>>2]>0?0:1:0){Vb(op,q[op+4>>2],np,np+4|0)}np=q[np>>2]}if(np){np=i+12|0;bh(np);qp=i+44|0;Yg(qp);rp=i- -64|0;Yg(rp);sp=i+84|0;Yg(sp);q[pp+24>>2]=q[$o+8>>2];tp=q[$o+4>>2];q[pp+16>>2]=q[$o>>2];q[pp+20>>2]=tp;q[pp+8>>2]=q[mp+8>>2];$o=q[mp+4>>2];q[pp>>2]=q[mp>>2];q[pp+4>>2]=$o;$d(i,pp+16|0,pp);eh(np,op);Zg(qp,op);Zg(rp,op);Zg(sp,op)}T=pp+32|0;return 1}function Rd(i){var $o=0,mp=0,np=0,op=0,up=0;np=q[i+152>>2];if(np){up=i+156|0;$o=q[up>>2];mp=np;a:{if((np|0)==($o|0)){break a}while(1){mp=$o+ -12|0;op=q[mp>>2];if(op){q[$o+ -8>>2]=op;pp(op)}$o=mp;if(($o|0)!=(np|0)){continue}break}mp=q[i+152>>2]}q[up>>2]=np;pp(mp)}np=q[i+140>>2];if(np){up=i+144|0;$o=q[up>>2];mp=np;b:{if((np|0)==($o|0)){break b}while(1){mp=$o+ -12|0;op=q[mp>>2];if(op){q[$o+ -8>>2]=op;pp(op)}$o=mp;if(($o|0)!=(np|0)){continue}break}mp=q[i+140>>2]}q[up>>2]=np;pp(mp)}$o=q[i+128>>2];if($o){q[i+132>>2]=$o;pp($o)}$o=q[i+116>>2];if($o){q[i+120>>2]=$o;pp($o)}$o=q[i+104>>2];if($o){q[i+108>>2]=$o;pp($o)}Xg(i+84|0);Xg(i- -64|0);Xg(i+44|0);$g(i+12|0)}function Sd(i,vp){var xp=0,yp=0,zp=0,Ap=0;zp=T-16|0;T=zp;q[i+8>>2]=vp;q[i>>2]=0;Wg(i+12|0);Wg(i+32|0);Wg(i+52|0);Wg(i+72|0);q[i+100>>2]=0;q[i+92>>2]=0;q[i+96>>2]=0;a:{b:{c:{d:{if(vp){if(vp>>>0>=1073741824){break d}xp=vp<<2;yp=zo(xp);q[i+92>>2]=yp;q[i+96>>2]=yp;q[i+100>>2]=yp+xp;wp(yp,0,xp);xp=vp;while(1){yp=yp+4|0;xp=xp+ -1|0;if(xp){continue}break}q[i+96>>2]=yp}q[i+104>>2]=0;q[i+108>>2]=0;q[i+112>>2]=0;if(vp){if(vp>>>0>=1073741824){break c}xp=vp<<2;yp=zo(xp);q[i+104>>2]=yp;q[i+108>>2]=yp;q[i+112>>2]=yp+xp;wp(yp,0,xp);xp=vp;while(1){yp=yp+4|0;xp=xp+ -1|0;if(xp){continue}break}q[i+108>>2]=yp}q[i+116>>2]=0;q[i+120>>2]=0;q[i+124>>2]=0;if(vp){if(vp>>>0>=1073741824){break b}xp=vp<<2;yp=zo(xp);q[i+116>>2]=yp;q[i+120>>2]=yp;q[i+124>>2]=yp+xp;wp(yp,0,xp);xp=vp;while(1){yp=yp+4|0;xp=xp+ -1|0;if(xp){continue}break}q[i+120>>2]=yp}q[zp+8>>2]=0;q[zp>>2]=0;q[zp+4>>2]=0;if(vp){if(vp>>>0>=1073741824){break a}xp=vp<<2;yp=zo(xp);q[zp>>2]=yp;q[zp+4>>2]=yp;q[zp+8>>2]=yp+xp;wp(yp,0,xp);xp=vp;while(1){yp=yp+4|0;xp=xp+ -1|0;if(xp){continue}break}q[zp+4>>2]=yp}Ap=vp<<5|1;Zd(i+128|0,Ap,zp);xp=q[zp>>2];if(xp){q[zp+4>>2]=xp;pp(xp)}q[zp+8>>2]=0;q[zp>>2]=0;q[zp+4>>2]=0;if(vp){if(vp>>>0>=1073741824){break a}xp=vp<<2;yp=zo(xp);q[zp>>2]=yp;q[zp+4>>2]=yp;q[zp+8>>2]=yp+xp;wp(yp,0,xp);while(1){yp=yp+4|0;vp=vp+ -1|0;if(vp){continue}break}q[zp+4>>2]=yp}Zd(i+140|0,Ap,zp);vp=q[zp>>2];if(vp){q[zp+4>>2]=vp;pp(vp)}T=zp+16|0;return i}To();F()}To();F()}To();F()}To();F()}function Td(i,vp,wp,Bp,Cp){var Dp=0,Ep=0,Fp=0,Gp=0,Hp=0;Dp=T-32|0;T=Dp;q[i>>2]=q[Bp>>2];Bp=q[wp>>2]-q[vp>>2]|0;q[i+4>>2]=Bp;Ep=q[Cp+20>>2];if((Ep|0)<0?1:(Ep|0)<=0?t[Cp+16>>2]>0?0:1:0){Bp=i+4|0;Vb(Cp,q[Cp+4>>2],i,Bp);Ep=q[Cp+20>>2];if((Ep|0)<0?1:(Ep|0)<=0?t[Cp+16>>2]>0?0:1:0){Vb(Cp,q[Cp+4>>2],Bp,Bp+4|0)}Bp=q[Bp>>2]}if(Bp){Bp=i+12|0;Yg(Bp);Ep=i+32|0;Yg(Ep);Fp=i+52|0;Yg(Fp);Gp=i+72|0;Yg(Gp);q[Dp+24>>2]=q[vp+8>>2];Hp=q[vp+4>>2];q[Dp+16>>2]=q[vp>>2];q[Dp+20>>2]=Hp;q[Dp+8>>2]=q[wp+8>>2];vp=q[wp+4>>2];q[Dp>>2]=q[wp>>2];q[Dp+4>>2]=vp;ae(i,Dp+16|0,Dp);Zg(Bp,Cp);Zg(Ep,Cp);Zg(Fp,Cp);Zg(Gp,Cp)}T=Dp+32|0;return 1}function Ud(i){var vp=0,wp=0,Bp=0,Cp=0,Ip=0;Bp=q[i+140>>2];if(Bp){Ip=i+144|0;vp=q[Ip>>2];wp=Bp;a:{if((Bp|0)==(vp|0)){break a}while(1){wp=vp+ -12|0;Cp=q[wp>>2];if(Cp){q[vp+ -8>>2]=Cp;pp(Cp)}vp=wp;if((vp|0)!=(Bp|0)){continue}break}wp=q[i+140>>2]}q[Ip>>2]=Bp;pp(wp)}Bp=q[i+128>>2];if(Bp){Ip=i+132|0;vp=q[Ip>>2];wp=Bp;b:{if((Bp|0)==(vp|0)){break b}while(1){wp=vp+ -12|0;Cp=q[wp>>2];if(Cp){q[vp+ -8>>2]=Cp;pp(Cp)}vp=wp;if((vp|0)!=(Bp|0)){continue}break}wp=q[i+128>>2]}q[Ip>>2]=Bp;pp(wp)}vp=q[i+116>>2];if(vp){q[i+120>>2]=vp;pp(vp)}vp=q[i+104>>2];if(vp){q[i+108>>2]=vp;pp(vp)}vp=q[i+92>>2];if(vp){q[i+96>>2]=vp;pp(vp)}Xg(i+72|0);Xg(i+52|0);Xg(i+32|0);Xg(i+12|0)}function Vd(i){bh(i);bh(i+32|0);bh(i- -64|0);bh(i+96|0);bh(i+128|0);bh(i+160|0);bh(i+192|0);bh(i+224|0);bh(i+256|0);bh(i+288|0);bh(i+320|0);bh(i+352|0);bh(i+384|0);bh(i+416|0);bh(i+448|0);bh(i+480|0);bh(i+512|0);bh(i+544|0);bh(i+576|0);bh(i+608|0);bh(i+640|0);bh(i+672|0);bh(i+704|0);bh(i+736|0);bh(i+768|0);bh(i+800|0);bh(i+832|0);bh(i+864|0);bh(i+896|0);bh(i+928|0);bh(i+960|0);bh(i+992|0);bh(i+1024|0)}function Wd(i,Jp,Kp){var 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,_p=0,$p=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,qq=0,rq=0,sq=0,tq=0;Mp=T+ -64|0;T=Mp;Op=q[i+8>>2];q[Mp+48>>2]=0;q[Mp+40>>2]=0;q[Mp+44>>2]=0;a:{if(Op){if(Op>>>0>=1073741824){break a}Np=Op<<2;Rp=zo(Np);q[Mp+40>>2]=Rp;q[Mp+44>>2]=Rp;q[Mp+48>>2]=Np+Rp;Lp=wp(Rp,0,Np);Np=Op;while(1){Lp=Lp+4|0;Np=Np+ -1|0;if(Np){continue}break}q[Mp+44>>2]=Lp}Qp=q[i+1164>>2];Np=q[Qp>>2];if(Np){q[Qp+4>>2]=Np;pp(Np);q[Qp+8>>2]=0;q[Qp>>2]=0;q[Qp+4>>2]=0;Op=q[i+8>>2];Rp=q[Mp+40>>2];Lp=q[Mp+44>>2]}q[Qp>>2]=Rp;q[Qp+4>>2]=Lp;q[Qp+8>>2]=q[Mp+48>>2];Lp=0;q[Mp+48>>2]=0;q[Mp+40>>2]=0;q[Mp+44>>2]=0;Np=0;b:{if(Op){if(Op>>>0>=1073741824){break b}Lp=Op<<2;Np=zo(Lp);q[Mp+40>>2]=Np;q[Mp+44>>2]=Np;q[Mp+48>>2]=Lp+Np;Lp=wp(Np,0,Lp);while(1){Lp=Lp+4|0;Op=Op+ -1|0;if(Op){continue}break}q[Mp+44>>2]=Lp}Tp=q[i+1176>>2];Qp=q[Tp>>2];if(Qp){q[Tp+4>>2]=Qp;pp(Qp);q[Tp+8>>2]=0;q[Tp>>2]=0;q[Tp+4>>2]=0;Lp=q[Mp+44>>2];Np=q[Mp+40>>2]}q[Tp>>2]=Np;q[Tp+4>>2]=Lp;q[Tp+8>>2]=q[Mp+48>>2];aq=q[Jp+4>>2];iq=q[Jp+8>>2];bq=q[Kp+4>>2];jq=q[Kp+8>>2];Vp=q[Kp>>2];Pp=q[Jp>>2];Lp=Mp+56|0;q[Lp>>2]=0;q[Lp+4>>2]=0;Np=Mp+48|0;q[Np>>2]=0;q[Np+4>>2]=0;q[Mp+40>>2]=0;q[Mp+44>>2]=0;Tp=Vp-Pp|0;fe(Mp+40|0);Op=0;Qp=q[Mp+44>>2];if((Qp|0)!=q[Np>>2]){Lp=q[Lp>>2]+q[Mp+60>>2]|0;Np=(Lp>>>0)/113|0;Op=q[Qp+(Np<<2)>>2]+w(Lp-w(Np,113)|0,36)|0}q[Op+32>>2]=0;q[Op+28>>2]=Tp;q[Op+24>>2]=0;q[Op+16>>2]=bq;q[Op+20>>2]=jq;q[Op+12>>2]=Vp;q[Op+4>>2]=aq;q[Op+8>>2]=iq;q[Op>>2]=Pp;Np=q[Mp+60>>2];Op=Np+1|0;q[Mp+60>>2]=Op;if(Op>>>0>=Np>>>0){Tp=bq;Vp=aq;oq=i+1068|0;pq=i+1108|0;cq=i+1120|0;qq=q[Kp+8>>2];Yp=q[Jp+8>>2];dq=i+1164|0;kq=i+1176|0;lq=i+1152|0;rq=i+1116|0;mq=i+1112|0;while(1){Np=q[Mp+44>>2];Sp=q[Mp+56>>2];Pp=Op+ -1|0;Qp=Sp+Pp|0;Lp=(Qp>>>0)/113|0;Lp=q[Np+(Lp<<2)>>2]+w(Qp-w(Lp,113)|0,36)|0;eq=q[Lp+32>>2];Up=q[Lp+12>>2];Qp=q[Lp>>2];q[Mp+60>>2]=Pp;Lp=q[Mp+48>>2];Np=Lp-Np|0;if(((Np?w(Np>>2,113)+ -1|0:0)-(Op+Sp|0)|0)+1>>>0>=226){pp(q[Lp+ -4>>2]);q[Mp+48>>2]=q[Mp+48>>2]+ -4}q[Jp>>2]=Qp;q[Kp>>2]=Up;Pp=q[dq>>2];Lp=q[kq>>2];q[Mp+32>>2]=q[Jp+8>>2];Np=q[Jp+4>>2];q[Mp+24>>2]=q[Jp>>2];q[Mp+28>>2]=Np;q[Mp+16>>2]=q[Kp+8>>2];Np=q[Kp+4>>2];q[Mp+8>>2]=q[Kp>>2];q[Mp+12>>2]=Np;fq=w(eq,12);Rp=Pp+fq|0;Sp=Lp+fq|0;Op=ge(i,Mp+24|0,Mp+8|0,Rp,Sp);Zp=Op<<2;Pp=q[i>>2]-q[Zp+q[Sp>>2]>>2]|0;c:{d:{if(!Pp){break d}e:{f:{_p=Up-Qp|0;if(_p>>>0<=2){Pp=q[lq>>2];q[Pp>>2]=Op;Np=1;Lp=q[i+8>>2];if(Lp>>>0>1){break f}break e}nq=eq+1|0;gq=w(nq,12);Np=q[dq>>2];Lp=gq+Np|0;if((Lp|0)!=(Rp|0)){cc(Lp,q[Rp>>2],q[Rp+4>>2]);Np=q[dq>>2]}Np=Zp+q[Np+gq>>2]|0;hq=q[Np>>2]+(1<<Pp+ -1)|0;q[Np>>2]=hq;Np=Qp;g:{if((Up|0)==(Np|0)){break g}sq=q[Vp+24>>2];Lp=Qp;Np=Up;while(1){Wp=sq+(w(Lp,Yp)<<2)|0;if(t[Wp+Zp>>2]<hq>>>0){Lp=Lp+1|0;if((Np|0)!=(Lp|0)){continue}break g}while(1){Np=Np+ -1|0;if((Np|0)==(Lp|0)){Np=Lp;break g}Xp=q[Tp+24>>2]+(w(Np,qq)<<2)|0;if(t[Zp+Xp>>2]>=hq>>>0){continue}break}$p=0;if(Yp){while(1){Rp=$p<<2;Pp=Rp+Wp|0;Sp=q[Pp>>2];tq=Pp;Pp=Rp+Xp|0;q[tq>>2]=q[Pp>>2];q[Pp>>2]=Sp;$p=$p+1|0;if((Yp|0)!=($p|0)){continue}break}}Lp=Lp+1|0;if((Np|0)!=(Lp|0)){continue}break}}Pp=z(_p);Wp=Np-Qp|0;Xp=Up-Np|0;h:{if((Wp|0)==(Xp|0)){break h}Lp=q[i+1124>>2];if(Wp>>>0<Xp>>>0){q[cq>>2]=q[cq>>2]|-2147483648>>>Lp}Lp=Lp+1|0;q[i+1124>>2]=Lp;if((Lp|0)!=32){break h}Lp=q[mq>>2];i:{if((Lp|0)!=q[rq>>2]){q[Lp>>2]=q[i+1120>>2];q[mq>>2]=Lp+4;break i}he(pq,cq)}q[i+1120>>2]=0;q[i+1124>>2]=0}Sp=Pp^31;Lp=_p>>>1;j:{if(Wp>>>0<Xp>>>0){if(!Sp){break j}Pp=Lp-Wp|0;Lp=1<<Sp+ -1;Rp=0;while(1){ch(((Rp<<5)+i|0)+12|0,(Lp&Pp)!=0);Lp=Lp>>>1;Rp=Rp+1|0;if((Sp|0)!=(Rp|0)){continue}break}break j}if(!Sp){break j}Pp=Lp-Xp|0;Lp=1<<Sp+ -1;Rp=0;while(1){ch(((Rp<<5)+i|0)+12|0,(Lp&Pp)!=0);Lp=Lp>>>1;Rp=Rp+1|0;if((Sp|0)!=(Rp|0)){continue}break}}Rp=q[kq>>2];Sp=Rp+fq|0;Pp=q[Sp>>2];Lp=Pp+Zp|0;q[Lp>>2]=q[Lp>>2]+1;cc(Rp+gq|0,Pp,q[Sp+4>>2]);if((Np|0)!=(Qp|0)){Rp=q[Mp+60>>2]+q[Mp+56>>2]|0;Sp=q[Mp+48>>2];Lp=q[Mp+44>>2];Pp=Sp-Lp|0;if((Rp|0)==((Pp?w(Pp>>2,113)+ -1|0:0)|0)){fe(Mp+40|0);Rp=q[Mp+56>>2]+q[Mp+60>>2]|0;Sp=q[Mp+48>>2];Lp=q[Mp+44>>2]}Pp=0;k:{if((Lp|0)==(Sp|0)){break k}Pp=Lp;Lp=(Rp>>>0)/113|0;Pp=q[Pp+(Lp<<2)>>2]+w(Rp-w(Lp,113)|0,36)|0}q[Pp+32>>2]=eq;q[Pp+28>>2]=Wp;q[Pp+24>>2]=Op;q[Pp+20>>2]=Yp;q[Pp+16>>2]=Vp;q[Pp+12>>2]=Np;q[Pp+4>>2]=aq;q[Pp+8>>2]=iq;q[Pp>>2]=Qp;q[Mp+60>>2]=q[Mp+60>>2]+1}if((Np|0)==(Up|0)){break d}Rp=q[Mp+60>>2]+q[Mp+56>>2]|0;Sp=q[Mp+48>>2];Lp=q[Mp+44>>2];Qp=Sp-Lp|0;if((Rp|0)==((Qp?w(Qp>>2,113)+ -1|0:0)|0)){fe(Mp+40|0);Rp=q[Mp+56>>2]+q[Mp+60>>2]|0;Sp=q[Mp+48>>2];Lp=q[Mp+44>>2]}Qp=0;l:{if((Lp|0)==(Sp|0)){break l}Qp=Lp;Lp=(Rp>>>0)/113|0;Qp=q[Qp+(Lp<<2)>>2]+w(Rp-w(Lp,113)|0,36)|0}q[Qp+32>>2]=nq;q[Qp+28>>2]=Xp;q[Qp+24>>2]=Op;q[Qp+16>>2]=bq;q[Qp+20>>2]=jq;q[Qp+12>>2]=Up;q[Qp+8>>2]=Yp;q[Qp+4>>2]=Vp;q[Qp>>2]=Np;Op=q[Mp+60>>2]+1|0;q[Mp+60>>2]=Op;break c}while(1){Op=(Lp+ -1|0)==(Op|0)?0:Op+1|0;q[Pp+(Np<<2)>>2]=Op;Np=Np+1|0;Lp=q[i+8>>2];if(Np>>>0<Lp>>>0){continue}break}}Rp=0;Np=Lp;if(!_p){break d}while(1){m:{if(!Np){Np=0;break m}Up=q[Vp+24>>2]+(w(q[Vp+4>>2],Qp+Rp|0)<<2)|0;Op=0;while(1){Pp=q[q[lq>>2]+(Op<<2)>>2]<<2;Np=q[i>>2]-q[Pp+q[Sp>>2]>>2]|0;if(Np){ie(oq,Np,q[Pp+Up>>2]);Lp=q[i+8>>2]}Np=Lp;Op=Op+1|0;if(Op>>>0<Lp>>>0){continue}break}}Rp=Rp+1|0;if((_p|0)!=(Rp|0)){continue}break}}Op=q[Mp+60>>2]}if(Op){continue}break}}je(Mp+40|0);Op=q[Mp+44>>2];i=q[Mp+48>>2];n:{if((Op|0)==(i|0)){break n}while(1){pp(q[Op>>2]);Op=Op+4|0;if((i|0)!=(Op|0)){continue}break}Jp=q[Mp+48>>2];i=q[Mp+44>>2];if((Jp|0)==(i|0)){break n}q[Mp+48>>2]=Jp+(((Jp-i|0)+ -4>>>2^-1)<<2)}i=q[Mp+40>>2];if(i){pp(i)}T=Mp- -64|0;return}To();F()}To();F()}function Xd(i){$g(i+992|0);$g(i+960|0);$g(i+928|0);$g(i+896|0);$g(i+864|0);$g(i+832|0);$g(i+800|0);$g(i+768|0);$g(i+736|0);$g(i+704|0);$g(i+672|0);$g(i+640|0);$g(i+608|0);$g(i+576|0);$g(i+544|0);$g(i+512|0);$g(i+480|0);$g(i+448|0);$g(i+416|0);$g(i+384|0);$g(i+352|0);$g(i+320|0);$g(i+288|0);$g(i+256|0);$g(i+224|0);$g(i+192|0);$g(i+160|0);$g(i+128|0);$g(i+96|0);$g(i- -64|0);$g(i+32|0);$g(i)}function Yd(i){_g(i);_g(i+32|0);_g(i- -64|0);_g(i+96|0);_g(i+128|0);_g(i+160|0);_g(i+192|0);_g(i+224|0);_g(i+256|0);_g(i+288|0);_g(i+320|0);_g(i+352|0);_g(i+384|0);_g(i+416|0);_g(i+448|0);_g(i+480|0);_g(i+512|0);_g(i+544|0);_g(i+576|0);_g(i+608|0);_g(i+640|0);_g(i+672|0);_g(i+704|0);_g(i+736|0);_g(i+768|0);_g(i+800|0);_g(i+832|0);_g(i+864|0);_g(i+896|0);_g(i+928|0);_g(i+960|0);_g(i+992|0)}function Zd(i,Jp,Kp){var uq=0,vq=0,wq=0,xq=0,yq=0,zq=0,Aq=0,Bq=0;q[i>>2]=0;q[i+4>>2]=0;q[i+8>>2]=0;a:{b:{if(Jp){if(Jp>>>0>=357913942){break b}vq=w(Jp,12);uq=zo(vq);q[i>>2]=uq;wq=i+4|0;q[wq>>2]=uq;q[i+8>>2]=uq+vq;while(1){q[uq>>2]=0;q[uq+4>>2]=0;vq=uq+8|0;q[vq>>2]=0;xq=Kp+4|0;i=q[xq>>2]-q[Kp>>2]|0;c:{if(!i){break c}yq=i>>2;if(yq>>>0>=1073741824){break a}i=zo(i);q[uq>>2]=i;zq=uq+4|0;q[zq>>2]=i;q[vq>>2]=i+(yq<<2);vq=q[Kp>>2];uq=q[xq>>2]-vq|0;if((uq|0)<1){break c}Aq=zq,Bq=vp(i,vq,uq)+uq|0,q[Aq>>2]=Bq}uq=q[wq>>2]+12|0;q[wq>>2]=uq;Jp=Jp+ -1|0;if(Jp){continue}break}}return}To();F()}To();F()}function _d(i,Jp,Kp){var 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,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;Eq=T-32|0;T=Eq;Fq=q[i+8>>2];q[Eq+16>>2]=0;q[Eq+8>>2]=0;q[Eq+12>>2]=0;a:{if(Fq){if(Fq>>>0>=1073741824){break a}Dq=Fq<<2;Iq=zo(Dq);q[Eq+8>>2]=Iq;q[Eq+12>>2]=Iq;q[Eq+16>>2]=Dq+Iq;Cq=wp(Iq,0,Dq);Dq=Fq;while(1){Cq=Cq+4|0;Dq=Dq+ -1|0;if(Dq){continue}break}q[Eq+12>>2]=Cq}Hq=q[i+1164>>2];Dq=q[Hq>>2];if(Dq){q[Hq+4>>2]=Dq;pp(Dq);q[Hq+8>>2]=0;q[Hq>>2]=0;q[Hq+4>>2]=0;Fq=q[i+8>>2];Iq=q[Eq+8>>2];Cq=q[Eq+12>>2]}q[Hq>>2]=Iq;q[Hq+4>>2]=Cq;q[Hq+8>>2]=q[Eq+16>>2];Cq=0;q[Eq+16>>2]=0;q[Eq+8>>2]=0;q[Eq+12>>2]=0;Dq=0;b:{if(Fq){if(Fq>>>0>=1073741824){break b}Cq=Fq<<2;Dq=zo(Cq);q[Eq+8>>2]=Dq;q[Eq+12>>2]=Dq;q[Eq+16>>2]=Cq+Dq;Cq=wp(Dq,0,Cq);while(1){Cq=Cq+4|0;Fq=Fq+ -1|0;if(Fq){continue}break}q[Eq+12>>2]=Cq}Kq=q[i+1176>>2];Hq=q[Kq>>2];if(Hq){q[Kq+4>>2]=Hq;pp(Hq);q[Kq+8>>2]=0;q[Kq>>2]=0;q[Kq+4>>2]=0;Cq=q[Eq+12>>2];Dq=q[Eq+8>>2]}q[Kq>>2]=Dq;q[Kq+4>>2]=Cq;q[Kq+8>>2]=q[Eq+16>>2];Vq=q[Jp+4>>2];$q=q[Jp+8>>2];Wq=q[Kp+4>>2];ar=q[Kp+8>>2];Mq=q[Kp>>2];Gq=q[Jp>>2];Cq=Eq+24|0;q[Cq>>2]=0;q[Cq+4>>2]=0;Dq=Eq+16|0;q[Dq>>2]=0;q[Dq+4>>2]=0;q[Eq+8>>2]=0;q[Eq+12>>2]=0;Kq=Mq-Gq|0;fe(Eq+8|0);Fq=0;Hq=q[Eq+12>>2];if((Hq|0)!=q[Dq>>2]){Cq=q[Cq>>2]+q[Eq+28>>2]|0;Dq=(Cq>>>0)/113|0;Fq=q[Hq+(Dq<<2)>>2]+w(Cq-w(Dq,113)|0,36)|0}q[Fq+32>>2]=0;q[Fq+28>>2]=Kq;q[Fq+24>>2]=0;q[Fq+16>>2]=Wq;q[Fq+20>>2]=ar;q[Fq+12>>2]=Mq;q[Fq+4>>2]=Vq;q[Fq+8>>2]=$q;q[Fq>>2]=Gq;Dq=q[Eq+28>>2];Fq=Dq+1|0;q[Eq+28>>2]=Fq;if(Fq>>>0>=Dq>>>0){Kq=Wq;Mq=Vq;fr=i+1068|0;gr=i+1108|0;Xq=i+1120|0;hr=q[Kp+8>>2];Pq=q[Jp+8>>2];br=i+1176|0;cr=i+1164|0;dr=i+1152|0;ir=i+1116|0;er=i+1112|0;while(1){Dq=q[Eq+12>>2];Jq=q[Eq+24>>2];Gq=Fq+ -1|0;Hq=Jq+Gq|0;Cq=(Hq>>>0)/113|0;Cq=q[Dq+(Cq<<2)>>2]+w(Hq-w(Cq,113)|0,36)|0;Yq=q[Cq+32>>2];Iq=q[Cq+24>>2];Lq=q[Cq+12>>2];Hq=q[Cq>>2];q[Eq+28>>2]=Gq;Cq=q[Eq+16>>2];Dq=Cq-Dq|0;if(((Dq?w(Dq>>2,113)+ -1|0:0)-(Fq+Jq|0)|0)+1>>>0>=226){pp(q[Cq+ -4>>2]);q[Eq+16>>2]=q[Eq+16>>2]+ -4}q[Jp>>2]=Hq;q[Kp>>2]=Lq;Fq=(Iq|0)==(q[i+8>>2]+ -1|0)?0:Iq+1|0;Qq=Fq<<2;Tq=w(Yq,12);Jq=Tq+q[br>>2]|0;Cq=q[i>>2]-q[Qq+q[Jq>>2]>>2]|0;c:{d:{if(!Cq){break d}e:{f:{Rq=Lq-Hq|0;if(Rq>>>0<=2){Gq=q[dr>>2];q[Gq>>2]=Fq;Dq=1;Cq=q[i+8>>2];if(Cq>>>0>1){break f}break e}Dq=q[cr>>2];Gq=Dq+Tq|0;Zq=Dq;Dq=Tq+12|0;cc(Zq+Dq|0,q[Gq>>2],q[Gq+4>>2]);Dq=Qq+q[Dq+q[cr>>2]>>2]|0;_q=q[Dq>>2]+(1<<Cq+ -1)|0;q[Dq>>2]=_q;Dq=Hq;g:{if((Lq|0)==(Dq|0)){break g}Oq=q[Mq+24>>2];Cq=Hq;Dq=Lq;while(1){Nq=Oq+(w(Cq,Pq)<<2)|0;if(t[Nq+Qq>>2]<_q>>>0){Cq=Cq+1|0;if((Dq|0)!=(Cq|0)){continue}break g}while(1){Dq=Dq+ -1|0;if((Dq|0)==(Cq|0)){Dq=Cq;break g}Sq=q[Kq+24>>2]+(w(Dq,hr)<<2)|0;if(t[Sq+Qq>>2]>=_q>>>0){continue}break}Uq=0;if(Pq){while(1){Iq=Uq<<2;Gq=Iq+Nq|0;Jq=q[Gq>>2];Zq=Gq;Gq=Iq+Sq|0;q[Zq>>2]=q[Gq>>2];q[Gq>>2]=Jq;Uq=Uq+1|0;if((Pq|0)!=(Uq|0)){continue}break}}Cq=Cq+1|0;if((Dq|0)!=(Cq|0)){continue}break}}Gq=z(Rq);Oq=Dq-Hq|0;Nq=Lq-Dq|0;h:{if((Oq|0)==(Nq|0)){break h}Cq=q[i+1124>>2];if(Oq>>>0<Nq>>>0){q[Xq>>2]=q[Xq>>2]|-2147483648>>>Cq}Cq=Cq+1|0;q[i+1124>>2]=Cq;if((Cq|0)!=32){break h}Cq=q[er>>2];i:{if((Cq|0)!=q[ir>>2]){q[Cq>>2]=q[i+1120>>2];q[er>>2]=Cq+4;break i}he(gr,Xq)}q[i+1120>>2]=0;q[i+1124>>2]=0}Sq=Yq+1|0;Jq=Gq^31;Cq=Rq>>>1;j:{if(Oq>>>0<Nq>>>0){if(!Jq){break j}Gq=Cq-Oq|0;Cq=1<<Jq+ -1;Iq=0;while(1){ch(((Iq<<5)+i|0)+12|0,(Cq&Gq)!=0);Cq=Cq>>>1;Iq=Iq+1|0;if((Jq|0)!=(Iq|0)){continue}break}break j}if(!Jq){break j}Gq=Cq-Nq|0;Cq=1<<Jq+ -1;Iq=0;while(1){ch(((Iq<<5)+i|0)+12|0,(Cq&Gq)!=0);Cq=Cq>>>1;Iq=Iq+1|0;if((Jq|0)!=(Iq|0)){continue}break}}Iq=q[br>>2];Jq=Iq+Tq|0;Gq=q[Jq>>2];Cq=Gq+Qq|0;q[Cq>>2]=q[Cq>>2]+1;cc(Iq+w(Sq,12)|0,Gq,q[Jq+4>>2]);if((Dq|0)!=(Hq|0)){Iq=q[Eq+28>>2]+q[Eq+24>>2]|0;Jq=q[Eq+16>>2];Cq=q[Eq+12>>2];Gq=Jq-Cq|0;if((Iq|0)==((Gq?w(Gq>>2,113)+ -1|0:0)|0)){fe(Eq+8|0);Iq=q[Eq+24>>2]+q[Eq+28>>2]|0;Jq=q[Eq+16>>2];Cq=q[Eq+12>>2]}Gq=0;k:{if((Cq|0)==(Jq|0)){break k}Gq=Cq;Cq=(Iq>>>0)/113|0;Gq=q[Gq+(Cq<<2)>>2]+w(Iq-w(Cq,113)|0,36)|0}q[Gq+32>>2]=Yq;q[Gq+28>>2]=Oq;q[Gq+24>>2]=Fq;q[Gq+20>>2]=Pq;q[Gq+16>>2]=Mq;q[Gq+12>>2]=Dq;q[Gq+4>>2]=Vq;q[Gq+8>>2]=$q;q[Gq>>2]=Hq;q[Eq+28>>2]=q[Eq+28>>2]+1}if((Dq|0)==(Lq|0)){break d}Iq=q[Eq+28>>2]+q[Eq+24>>2]|0;Jq=q[Eq+16>>2];Cq=q[Eq+12>>2];Hq=Jq-Cq|0;if((Iq|0)==((Hq?w(Hq>>2,113)+ -1|0:0)|0)){fe(Eq+8|0);Iq=q[Eq+24>>2]+q[Eq+28>>2]|0;Jq=q[Eq+16>>2];Cq=q[Eq+12>>2]}Hq=0;l:{if((Cq|0)==(Jq|0)){break l}Hq=Cq;Cq=(Iq>>>0)/113|0;Hq=q[Hq+(Cq<<2)>>2]+w(Iq-w(Cq,113)|0,36)|0}q[Hq+32>>2]=Sq;q[Hq+28>>2]=Nq;q[Hq+24>>2]=Fq;q[Hq+16>>2]=Wq;q[Hq+20>>2]=ar;q[Hq+12>>2]=Lq;q[Hq+8>>2]=Pq;q[Hq+4>>2]=Mq;q[Hq>>2]=Dq;Fq=q[Eq+28>>2]+1|0;q[Eq+28>>2]=Fq;break c}while(1){Fq=(Cq+ -1|0)==(Fq|0)?0:Fq+1|0;q[Gq+(Dq<<2)>>2]=Fq;Dq=Dq+1|0;Cq=q[i+8>>2];if(Dq>>>0<Cq>>>0){continue}break}}Iq=0;Dq=Cq;if(!Rq){break d}while(1){m:{if(!Dq){Dq=0;break m}Lq=q[Mq+24>>2]+(w(q[Mq+4>>2],Hq+Iq|0)<<2)|0;Fq=0;while(1){Gq=q[q[dr>>2]+(Fq<<2)>>2]<<2;Dq=q[i>>2]-q[Gq+q[Jq>>2]>>2]|0;if(Dq){ie(fr,Dq,q[Gq+Lq>>2]);Cq=q[i+8>>2]}Dq=Cq;Fq=Fq+1|0;if(Fq>>>0<Cq>>>0){continue}break}}Iq=Iq+1|0;if((Rq|0)!=(Iq|0)){continue}break}}Fq=q[Eq+28>>2]}if(Fq){continue}break}}je(Eq+8|0);Fq=q[Eq+12>>2];i=q[Eq+16>>2];n:{if((Fq|0)==(i|0)){break n}while(1){pp(q[Fq>>2]);Fq=Fq+4|0;if((i|0)!=(Fq|0)){continue}break}Jp=q[Eq+16>>2];i=q[Eq+12>>2];if((Jp|0)==(i|0)){break n}q[Eq+16>>2]=Jp+(((Jp-i|0)+ -4>>>2^-1)<<2)}i=q[Eq+8>>2];if(i){pp(i)}T=Eq+32|0;return}To();F()}To();F()}function $d(i,Jp,Kp){var 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,wr=0,xr=0,yr=0,zr=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;lr=T-32|0;T=lr;mr=q[i+8>>2];q[lr+16>>2]=0;q[lr+8>>2]=0;q[lr+12>>2]=0;a:{if(mr){if(mr>>>0>=1073741824){break a}kr=mr<<2;pr=zo(kr);q[lr+8>>2]=pr;q[lr+12>>2]=pr;q[lr+16>>2]=kr+pr;jr=wp(pr,0,kr);kr=mr;while(1){jr=jr+4|0;kr=kr+ -1|0;if(kr){continue}break}q[lr+12>>2]=jr}or=q[i+140>>2];kr=q[or>>2];if(kr){q[or+4>>2]=kr;pp(kr);q[or+8>>2]=0;q[or>>2]=0;q[or+4>>2]=0;mr=q[i+8>>2];pr=q[lr+8>>2];jr=q[lr+12>>2]}q[or>>2]=pr;q[or+4>>2]=jr;q[or+8>>2]=q[lr+16>>2];jr=0;q[lr+16>>2]=0;q[lr+8>>2]=0;q[lr+12>>2]=0;kr=0;b:{if(mr){if(mr>>>0>=1073741824){break b}jr=mr<<2;kr=zo(jr);q[lr+8>>2]=kr;q[lr+12>>2]=kr;q[lr+16>>2]=jr+kr;jr=wp(kr,0,jr);while(1){jr=jr+4|0;mr=mr+ -1|0;if(mr){continue}break}q[lr+12>>2]=jr}rr=q[i+152>>2];or=q[rr>>2];if(or){q[rr+4>>2]=or;pp(or);q[rr+8>>2]=0;q[rr>>2]=0;q[rr+4>>2]=0;jr=q[lr+12>>2];kr=q[lr+8>>2]}q[rr>>2]=kr;q[rr+4>>2]=jr;q[rr+8>>2]=q[lr+16>>2];Cr=q[Jp+4>>2];Ir=q[Jp+8>>2];Dr=q[Kp+4>>2];Jr=q[Kp+8>>2];tr=q[Kp>>2];nr=q[Jp>>2];jr=lr+24|0;q[jr>>2]=0;q[jr+4>>2]=0;kr=lr+16|0;q[kr>>2]=0;q[kr+4>>2]=0;q[lr+8>>2]=0;q[lr+12>>2]=0;rr=tr-nr|0;fe(lr+8|0);mr=0;or=q[lr+12>>2];if((or|0)!=q[kr>>2]){jr=q[jr>>2]+q[lr+28>>2]|0;kr=(jr>>>0)/113|0;mr=q[or+(kr<<2)>>2]+w(jr-w(kr,113)|0,36)|0}q[mr+32>>2]=0;q[mr+28>>2]=rr;q[mr+24>>2]=0;q[mr+16>>2]=Dr;q[mr+20>>2]=Jr;q[mr+12>>2]=tr;q[mr+4>>2]=Cr;q[mr+8>>2]=Ir;q[mr>>2]=nr;kr=q[lr+28>>2];mr=kr+1|0;q[lr+28>>2]=mr;if(mr>>>0>=kr>>>0){rr=Dr;tr=Cr;Pr=i+44|0;Kr=i+12|0;Qr=i+84|0;Er=i+96|0;Rr=q[Kp+8>>2];wr=q[Jp+8>>2];Lr=i+152|0;Mr=i+140|0;Nr=i+128|0;Sr=i+92|0;Or=i+88|0;while(1){kr=q[lr+12>>2];qr=q[lr+24>>2];nr=mr+ -1|0;or=qr+nr|0;jr=(or>>>0)/113|0;jr=q[kr+(jr<<2)>>2]+w(or-w(jr,113)|0,36)|0;Fr=q[jr+32>>2];pr=q[jr+24>>2];sr=q[jr+12>>2];or=q[jr>>2];q[lr+28>>2]=nr;jr=q[lr+16>>2];kr=jr-kr|0;if(((kr?w(kr>>2,113)+ -1|0:0)-(mr+qr|0)|0)+1>>>0>=226){pp(q[jr+ -4>>2]);q[lr+16>>2]=q[lr+16>>2]+ -4}q[Jp>>2]=or;q[Kp>>2]=sr;mr=(pr|0)==(q[i+8>>2]+ -1|0)?0:pr+1|0;xr=mr<<2;Ar=w(Fr,12);qr=Ar+q[Lr>>2]|0;jr=q[i>>2]-q[xr+q[qr>>2]>>2]|0;c:{d:{if(!jr){break d}e:{f:{yr=sr-or|0;if(yr>>>0<=2){nr=q[Nr>>2];q[nr>>2]=mr;kr=1;jr=q[i+8>>2];if(jr>>>0>1){break f}break e}kr=q[Mr>>2];nr=kr+Ar|0;Gr=kr;kr=Ar+12|0;cc(Gr+kr|0,q[nr>>2],q[nr+4>>2]);kr=xr+q[kr+q[Mr>>2]>>2]|0;Hr=q[kr>>2]+(1<<jr+ -1)|0;q[kr>>2]=Hr;kr=or;g:{if((sr|0)==(kr|0)){break g}vr=q[tr+24>>2];jr=or;kr=sr;while(1){ur=vr+(w(jr,wr)<<2)|0;if(t[ur+xr>>2]<Hr>>>0){jr=jr+1|0;if((kr|0)!=(jr|0)){continue}break g}while(1){kr=kr+ -1|0;if((kr|0)==(jr|0)){kr=jr;break g}zr=q[rr+24>>2]+(w(kr,Rr)<<2)|0;if(t[xr+zr>>2]>=Hr>>>0){continue}break}Br=0;if(wr){while(1){pr=Br<<2;nr=pr+ur|0;qr=q[nr>>2];Gr=nr;nr=pr+zr|0;q[Gr>>2]=q[nr>>2];q[nr>>2]=qr;Br=Br+1|0;if((Br|0)!=(wr|0)){continue}break}}jr=jr+1|0;if((kr|0)!=(jr|0)){continue}break}}nr=z(yr);vr=kr-or|0;ur=sr-kr|0;h:{if((vr|0)==(ur|0)){break h}jr=q[i+100>>2];if(vr>>>0<ur>>>0){q[Er>>2]=q[Er>>2]|-2147483648>>>jr}jr=jr+1|0;q[i+100>>2]=jr;if((jr|0)!=32){break h}jr=q[Or>>2];i:{if((jr|0)!=q[Sr>>2]){q[jr>>2]=q[i+96>>2];q[Or>>2]=jr+4;break i}he(Qr,Er)}q[i+96>>2]=0;q[i+100>>2]=0}zr=Fr+1|0;nr=nr^31;jr=yr>>>1;j:{if(vr>>>0<ur>>>0){dh(Kr,nr,jr-vr|0);break j}dh(Kr,nr,jr-ur|0)}pr=q[Lr>>2];qr=pr+Ar|0;nr=q[qr>>2];jr=nr+xr|0;q[jr>>2]=q[jr>>2]+1;cc(pr+w(zr,12)|0,nr,q[qr+4>>2]);if((kr|0)!=(or|0)){pr=q[lr+28>>2]+q[lr+24>>2]|0;qr=q[lr+16>>2];jr=q[lr+12>>2];nr=qr-jr|0;if((pr|0)==((nr?w(nr>>2,113)+ -1|0:0)|0)){fe(lr+8|0);pr=q[lr+24>>2]+q[lr+28>>2]|0;qr=q[lr+16>>2];jr=q[lr+12>>2]}nr=0;k:{if((jr|0)==(qr|0)){break k}nr=jr;jr=(pr>>>0)/113|0;nr=q[nr+(jr<<2)>>2]+w(pr-w(jr,113)|0,36)|0}q[nr+32>>2]=Fr;q[nr+28>>2]=vr;q[nr+24>>2]=mr;q[nr+20>>2]=wr;q[nr+16>>2]=tr;q[nr+12>>2]=kr;q[nr+4>>2]=Cr;q[nr+8>>2]=Ir;q[nr>>2]=or;q[lr+28>>2]=q[lr+28>>2]+1}if((kr|0)==(sr|0)){break d}pr=q[lr+28>>2]+q[lr+24>>2]|0;nr=q[lr+16>>2];jr=q[lr+12>>2];or=nr-jr|0;if((pr|0)==((or?w(or>>2,113)+ -1|0:0)|0)){fe(lr+8|0);pr=q[lr+24>>2]+q[lr+28>>2]|0;nr=q[lr+16>>2];jr=q[lr+12>>2]}or=0;l:{if((jr|0)==(nr|0)){break l}or=jr;jr=(pr>>>0)/113|0;or=q[or+(jr<<2)>>2]+w(pr-w(jr,113)|0,36)|0}q[or+32>>2]=zr;q[or+28>>2]=ur;q[or+24>>2]=mr;q[or+16>>2]=Dr;q[or+20>>2]=Jr;q[or+12>>2]=sr;q[or+8>>2]=wr;q[or+4>>2]=tr;q[or>>2]=kr;mr=q[lr+28>>2]+1|0;q[lr+28>>2]=mr;break c}while(1){mr=(jr+ -1|0)==(mr|0)?0:mr+1|0;q[nr+(kr<<2)>>2]=mr;kr=kr+1|0;jr=q[i+8>>2];if(kr>>>0<jr>>>0){continue}break}}pr=0;kr=jr;if(!yr){break d}while(1){m:{if(!kr){kr=0;break m}sr=q[tr+24>>2]+(w(q[tr+4>>2],or+pr|0)<<2)|0;mr=0;while(1){nr=q[q[Nr>>2]+(mr<<2)>>2]<<2;kr=q[i>>2]-q[nr+q[qr>>2]>>2]|0;if(kr){ie(Pr,kr,q[nr+sr>>2]);jr=q[i+8>>2]}kr=jr;mr=mr+1|0;if(mr>>>0<jr>>>0){continue}break}}pr=pr+1|0;if((yr|0)!=(pr|0)){continue}break}}mr=q[lr+28>>2]}if(mr){continue}break}}je(lr+8|0);mr=q[lr+12>>2];i=q[lr+16>>2];n:{if((mr|0)==(i|0)){break n}while(1){pp(q[mr>>2]);mr=mr+4|0;if((i|0)!=(mr|0)){continue}break}Jp=q[lr+16>>2];i=q[lr+12>>2];if((Jp|0)==(i|0)){break n}q[lr+16>>2]=Jp+(((Jp-i|0)+ -4>>>2^-1)<<2)}i=q[lr+8>>2];if(i){pp(i)}T=lr+32|0;return}To();F()}To();F()}function ae(i,Jp,Kp){var 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,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,As=0;Vr=T-32|0;T=Vr;Wr=q[i+8>>2];q[Vr+16>>2]=0;q[Vr+8>>2]=0;q[Vr+12>>2]=0;a:{if(Wr){if(Wr>>>0>=1073741824){break a}Ur=Wr<<2;Zr=zo(Ur);q[Vr+8>>2]=Zr;q[Vr+12>>2]=Zr;q[Vr+16>>2]=Ur+Zr;Tr=wp(Zr,0,Ur);Ur=Wr;while(1){Tr=Tr+4|0;Ur=Ur+ -1|0;if(Ur){continue}break}q[Vr+12>>2]=Tr}Yr=q[i+128>>2];Ur=q[Yr>>2];if(Ur){q[Yr+4>>2]=Ur;pp(Ur);q[Yr+8>>2]=0;q[Yr>>2]=0;q[Yr+4>>2]=0;Wr=q[i+8>>2];Zr=q[Vr+8>>2];Tr=q[Vr+12>>2]}q[Yr>>2]=Zr;q[Yr+4>>2]=Tr;q[Yr+8>>2]=q[Vr+16>>2];Tr=0;q[Vr+16>>2]=0;q[Vr+8>>2]=0;q[Vr+12>>2]=0;Ur=0;b:{if(Wr){if(Wr>>>0>=1073741824){break b}Tr=Wr<<2;Ur=zo(Tr);q[Vr+8>>2]=Ur;q[Vr+12>>2]=Ur;q[Vr+16>>2]=Tr+Ur;Tr=wp(Ur,0,Tr);while(1){Tr=Tr+4|0;Wr=Wr+ -1|0;if(Wr){continue}break}q[Vr+12>>2]=Tr}$r=q[i+140>>2];Yr=q[$r>>2];if(Yr){q[$r+4>>2]=Yr;pp(Yr);q[$r+8>>2]=0;q[$r>>2]=0;q[$r+4>>2]=0;Tr=q[Vr+12>>2];Ur=q[Vr+8>>2]}q[$r>>2]=Ur;q[$r+4>>2]=Tr;q[$r+8>>2]=q[Vr+16>>2];ks=q[Jp+4>>2];qs=q[Jp+8>>2];ls=q[Kp+4>>2];rs=q[Kp+8>>2];bs=q[Kp>>2];Xr=q[Jp>>2];Tr=Vr+24|0;q[Tr>>2]=0;q[Tr+4>>2]=0;Ur=Vr+16|0;q[Ur>>2]=0;q[Ur+4>>2]=0;q[Vr+8>>2]=0;q[Vr+12>>2]=0;$r=bs-Xr|0;fe(Vr+8|0);Wr=0;Yr=q[Vr+12>>2];if((Yr|0)!=q[Ur>>2]){Tr=q[Tr>>2]+q[Vr+28>>2]|0;Ur=(Tr>>>0)/113|0;Wr=q[Yr+(Ur<<2)>>2]+w(Tr-w(Ur,113)|0,36)|0}q[Wr+32>>2]=0;q[Wr+28>>2]=$r;q[Wr+24>>2]=0;q[Wr+16>>2]=ls;q[Wr+20>>2]=rs;q[Wr+12>>2]=bs;q[Wr+4>>2]=ks;q[Wr+8>>2]=qs;q[Wr>>2]=Xr;Ur=q[Vr+28>>2];Wr=Ur+1|0;q[Vr+28>>2]=Wr;if(Wr>>>0>=Ur>>>0){$r=ls;bs=ks;xs=i+32|0;ss=i+12|0;ys=i+72|0;ms=i+84|0;zs=q[Kp+8>>2];es=q[Jp+8>>2];ts=i+140|0;us=i+128|0;vs=i+116|0;As=i+80|0;ws=i+76|0;while(1){Ur=q[Vr+12>>2];_r=q[Vr+24>>2];Xr=Wr+ -1|0;Yr=_r+Xr|0;Tr=(Yr>>>0)/113|0;Tr=q[Ur+(Tr<<2)>>2]+w(Yr-w(Tr,113)|0,36)|0;ns=q[Tr+32>>2];Zr=q[Tr+24>>2];as=q[Tr+12>>2];Yr=q[Tr>>2];q[Vr+28>>2]=Xr;Tr=q[Vr+16>>2];Ur=Tr-Ur|0;if(((Ur?w(Ur>>2,113)+ -1|0:0)-(Wr+_r|0)|0)+1>>>0>=226){pp(q[Tr+ -4>>2]);q[Vr+16>>2]=q[Vr+16>>2]+ -4}q[Jp>>2]=Yr;q[Kp>>2]=as;Wr=(Zr|0)==(q[i+8>>2]+ -1|0)?0:Zr+1|0;fs=Wr<<2;is=w(ns,12);_r=is+q[ts>>2]|0;Tr=q[i>>2]-q[fs+q[_r>>2]>>2]|0;c:{d:{if(!Tr){break d}e:{f:{gs=as-Yr|0;if(gs>>>0<=2){Xr=q[vs>>2];q[Xr>>2]=Wr;Ur=1;Tr=q[i+8>>2];if(Tr>>>0>1){break f}break e}Ur=q[us>>2];Xr=Ur+is|0;os=Ur;Ur=is+12|0;cc(os+Ur|0,q[Xr>>2],q[Xr+4>>2]);Ur=fs+q[Ur+q[us>>2]>>2]|0;ps=q[Ur>>2]+(1<<Tr+ -1)|0;q[Ur>>2]=ps;Ur=Yr;g:{if((as|0)==(Ur|0)){break g}ds=q[bs+24>>2];Tr=Yr;Ur=as;while(1){cs=ds+(w(Tr,es)<<2)|0;if(t[cs+fs>>2]<ps>>>0){Tr=Tr+1|0;if((Ur|0)!=(Tr|0)){continue}break g}while(1){Ur=Ur+ -1|0;if((Ur|0)==(Tr|0)){Ur=Tr;break g}hs=q[$r+24>>2]+(w(Ur,zs)<<2)|0;if(t[fs+hs>>2]>=ps>>>0){continue}break}js=0;if(es){while(1){Zr=js<<2;Xr=Zr+cs|0;_r=q[Xr>>2];os=Xr;Xr=Zr+hs|0;q[os>>2]=q[Xr>>2];q[Xr>>2]=_r;js=js+1|0;if((js|0)!=(es|0)){continue}break}}Tr=Tr+1|0;if((Ur|0)!=(Tr|0)){continue}break}}Xr=z(gs);ds=Ur-Yr|0;cs=as-Ur|0;h:{if((ds|0)==(cs|0)){break h}Tr=q[i+88>>2];if(ds>>>0<cs>>>0){q[ms>>2]=q[ms>>2]|-2147483648>>>Tr}Tr=Tr+1|0;q[i+88>>2]=Tr;if((Tr|0)!=32){break h}Tr=q[ws>>2];i:{if((Tr|0)!=q[As>>2]){q[Tr>>2]=q[i+84>>2];q[ws>>2]=Tr+4;break i}he(ys,ms)}q[i+84>>2]=0;q[i+88>>2]=0}hs=ns+1|0;Xr=Xr^31;Tr=gs>>>1;j:{if(ds>>>0<cs>>>0){ie(ss,Xr,Tr-ds|0);break j}ie(ss,Xr,Tr-cs|0)}Zr=q[ts>>2];_r=Zr+is|0;Xr=q[_r>>2];Tr=Xr+fs|0;q[Tr>>2]=q[Tr>>2]+1;cc(Zr+w(hs,12)|0,Xr,q[_r+4>>2]);if((Ur|0)!=(Yr|0)){Zr=q[Vr+28>>2]+q[Vr+24>>2]|0;_r=q[Vr+16>>2];Tr=q[Vr+12>>2];Xr=_r-Tr|0;if((Zr|0)==((Xr?w(Xr>>2,113)+ -1|0:0)|0)){fe(Vr+8|0);Zr=q[Vr+24>>2]+q[Vr+28>>2]|0;_r=q[Vr+16>>2];Tr=q[Vr+12>>2]}Xr=0;k:{if((Tr|0)==(_r|0)){break k}Xr=Tr;Tr=(Zr>>>0)/113|0;Xr=q[Xr+(Tr<<2)>>2]+w(Zr-w(Tr,113)|0,36)|0}q[Xr+32>>2]=ns;q[Xr+28>>2]=ds;q[Xr+24>>2]=Wr;q[Xr+20>>2]=es;q[Xr+16>>2]=bs;q[Xr+12>>2]=Ur;q[Xr+4>>2]=ks;q[Xr+8>>2]=qs;q[Xr>>2]=Yr;q[Vr+28>>2]=q[Vr+28>>2]+1}if((Ur|0)==(as|0)){break d}Zr=q[Vr+28>>2]+q[Vr+24>>2]|0;Xr=q[Vr+16>>2];Tr=q[Vr+12>>2];Yr=Xr-Tr|0;if((Zr|0)==((Yr?w(Yr>>2,113)+ -1|0:0)|0)){fe(Vr+8|0);Zr=q[Vr+24>>2]+q[Vr+28>>2]|0;Xr=q[Vr+16>>2];Tr=q[Vr+12>>2]}Yr=0;l:{if((Tr|0)==(Xr|0)){break l}Yr=Tr;Tr=(Zr>>>0)/113|0;Yr=q[Yr+(Tr<<2)>>2]+w(Zr-w(Tr,113)|0,36)|0}q[Yr+32>>2]=hs;q[Yr+28>>2]=cs;q[Yr+24>>2]=Wr;q[Yr+16>>2]=ls;q[Yr+20>>2]=rs;q[Yr+12>>2]=as;q[Yr+8>>2]=es;q[Yr+4>>2]=bs;q[Yr>>2]=Ur;Wr=q[Vr+28>>2]+1|0;q[Vr+28>>2]=Wr;break c}while(1){Wr=(Tr+ -1|0)==(Wr|0)?0:Wr+1|0;q[Xr+(Ur<<2)>>2]=Wr;Ur=Ur+1|0;Tr=q[i+8>>2];if(Ur>>>0<Tr>>>0){continue}break}}Zr=0;Ur=Tr;if(!gs){break d}while(1){m:{if(!Ur){Ur=0;break m}as=q[bs+24>>2]+(w(q[bs+4>>2],Yr+Zr|0)<<2)|0;Wr=0;while(1){Xr=q[q[vs>>2]+(Wr<<2)>>2]<<2;Ur=q[i>>2]-q[Xr+q[_r>>2]>>2]|0;if(Ur){ie(xs,Ur,q[Xr+as>>2]);Tr=q[i+8>>2]}Ur=Tr;Wr=Wr+1|0;if(Wr>>>0<Tr>>>0){continue}break}}Zr=Zr+1|0;if((gs|0)!=(Zr|0)){continue}break}}Wr=q[Vr+28>>2]}if(Wr){continue}break}}je(Vr+8|0);Wr=q[Vr+12>>2];i=q[Vr+16>>2];n:{if((Wr|0)==(i|0)){break n}while(1){pp(q[Wr>>2]);Wr=Wr+4|0;if((i|0)!=(Wr|0)){continue}break}Jp=q[Vr+16>>2];i=q[Vr+12>>2];if((Jp|0)==(i|0)){break n}q[Vr+16>>2]=Jp+(((Jp-i|0)+ -4>>>2^-1)<<2)}i=q[Vr+8>>2];if(i){pp(i)}T=Vr+32|0;return}To();F()}To();F()}function be(i){i=i|0;var Jp=0,Kp=0,Bs=0,Cs=0;q[i>>2]=1844;Jp=q[i+60>>2];if(Jp){Cs=i- -64|0;Kp=q[Cs>>2];Bs=Jp;a:{if((Jp|0)==(Kp|0)){break a}while(1){Kp=Kp+ -4|0;Bs=q[Kp>>2];q[Kp>>2]=0;if(Bs){Ba(Bs)}if((Jp|0)!=(Kp|0)){continue}break}Bs=q[i+60>>2]}q[Cs>>2]=Jp;pp(Bs)}Jp=q[i+48>>2];if(Jp){q[i+52>>2]=Jp;pp(Jp)}Jp=q[i+36>>2];if(Jp){Cs=i+40|0;Kp=q[Cs>>2];Bs=Jp;b:{if((Jp|0)==(Kp|0)){break b}while(1){Kp=Kp+ -24|0;n[q[q[Kp>>2]>>2]](Kp)|0;if((Jp|0)!=(Kp|0)){continue}break}Bs=q[i+36>>2]}q[Cs>>2]=Jp;pp(Bs)}q[i>>2]=1680;Jp=q[i+16>>2];if(Jp){q[i+20>>2]=Jp;pp(Jp)}Jp=q[i+4>>2];if(Jp){q[i+8>>2]=Jp;pp(Jp)}return i|0}function ce(i){i=i|0;pp(be(i))}function de(i,Ds){var Es=0,Fs=0,Gs=0,Hs=0,Is=0,Js=0,Ks=0,Ls=0;Is=i+4|0;i=q[Is>>2];a:{b:{if(!i){break b}Es=r[Ds+11|0];Fs=Es<<24>>24<0;Gs=Fs?q[Ds+4>>2]:Es;Ks=Fs?q[Ds>>2]:Ds;Es=Is;while(1){Ds=r[i+27|0];Ls=Ds<<24>>24<0;Js=Ls?q[i+20>>2]:Ds;Hs=Gs>>>0<Js>>>0;Fs=Hs?Gs:Js;c:{if(Fs){Ds=i+16|0;Ds=vn(Ls?q[Ds>>2]:Ds,Ks,Fs);if(Ds){break c}}Ds=Js>>>0<Gs>>>0?-1:Hs}Es=(Ds|0)<0?Es:i;i=q[(Ds>>>29&4)+i>>2];if(i){continue}break}if((Es|0)==(Is|0)){break b}i=r[Es+27|0];Hs=i<<24>>24<0;d:{Fs=Hs?q[Es+20>>2]:i;Ds=Fs>>>0<Gs>>>0?Fs:Gs;if(Ds){i=Es+16|0;i=vn(Ks,Hs?q[i>>2]:i,Ds);if(i){break d}}if(Gs>>>0<Fs>>>0){break b}break a}if((i|0)>-1){break a}}Es=Is}return Es}function ee(i,Ds){var Ms=0,Ns=0,Os=0,Ps=0,Qs=0,Rs=0;q[i>>2]=1384;Ms=q[Ds+4>>2];q[i+16>>2]=0;q[i+8>>2]=0;q[i+12>>2]=0;q[i+4>>2]=Ms;a:{Ms=q[Ds+12>>2]-q[Ds+8>>2]|0;b:{if(!Ms){break b}Ns=Ms>>2;if(Ns>>>0>=1073741824){break a}Ms=zo(Ms);q[i+8>>2]=Ms;Os=i+12|0;q[Os>>2]=Ms;q[i+16>>2]=Ms+(Ns<<2);Ps=q[Ds+8>>2];Ns=q[Ds+12>>2]-Ps|0;if((Ns|0)<1){break b}Qs=Os,Rs=vp(Ms,Ps,Ns)+Ns|0,q[Qs>>2]=Rs}q[i+20>>2]=q[Ds+20>>2];return}To();F()}function fe(i){var Ds=0,Ss=0,Ts=0,Us=0,Vs=0,Ws=0,Xs=0,Ys=0,Zs=0,_s=0,$s=0,at=0;Ws=T-32|0;T=Ws;a:{b:{Ds=i+16|0;Ss=q[Ds>>2];if(Ss>>>0>=113){q[Ds>>2]=Ss+ -113;Ds=i+4|0;Ss=q[Ds>>2];Zs=q[Ss>>2];Ss=Ss+4|0;q[Ds>>2]=Ss;Ys=i+8|0;Ts=q[Ys>>2];Ds=q[i+12>>2];c:{if((Ts|0)!=(Ds|0)){break c}Us=q[i>>2];if(Ss>>>0>Us>>>0){Ts=Ts-Ss|0;Xs=Ts>>2;Us=((Ss-Us>>2)+1|0)/-2<<2;Vs=Us+Ss|0;Ds=i;if(Ts){xp(Vs,Ss,Ts);Ss=q[i+4>>2]}q[Ds+4>>2]=Ss+Us;Ts=Vs+(Xs<<2)|0;q[i+8>>2]=Ts;break c}Ds=Ds-Us|0;Ds=Ds?Ds>>1:1;if(Ds>>>0>=1073741824){break b}Vs=Ds<<2;Xs=zo(Vs);_s=Vs+Xs|0;Vs=Xs+(Ds&-4)|0;Ds=Vs;if((Ss|0)!=(Ts|0)){Ds=Vs;while(1){q[Ds>>2]=q[Ss>>2];Ds=Ds+4|0;Ss=Ss+4|0;if((Ts|0)!=(Ss|0)){continue}break}Us=q[i>>2]}q[i>>2]=Xs;q[i+12>>2]=_s;Ss=i+8|0;q[Ss>>2]=Ds;q[i+4>>2]=Vs;if(!Us){Ts=Ds;break c}pp(Us);Ts=q[Ss>>2]}q[Ts>>2]=Zs;q[Ys>>2]=q[Ys>>2]+4;break a}d:{Ss=q[i+8>>2];Ts=Ss-q[i+4>>2]>>2;Vs=i+12|0;Us=q[Vs>>2];Ds=Us-q[i>>2]|0;if(Ts>>>0<Ds>>2>>>0){if((Ss|0)!=(Us|0)){$s=Ws,at=zo(4068),q[$s+8>>2]=at;ke(i,Ws+8|0);break a}$s=Ws,at=zo(4068),q[$s+8>>2]=at;le(i,Ws+8|0);Ds=i+4|0;Ss=q[Ds>>2];Zs=q[Ss>>2];Ss=Ss+4|0;q[Ds>>2]=Ss;Ys=i+8|0;Ts=q[Ys>>2];Ds=q[i+12>>2];e:{if((Ts|0)!=(Ds|0)){break e}Us=q[i>>2];if(Ss>>>0>Us>>>0){Ts=Ts-Ss|0;Xs=Ts>>2;Us=((Ss-Us>>2)+1|0)/-2<<2;Vs=Us+Ss|0;Ds=i;if(Ts){xp(Vs,Ss,Ts);Ss=q[i+4>>2]}q[Ds+4>>2]=Ss+Us;Ts=Vs+(Xs<<2)|0;q[i+8>>2]=Ts;break e}Ds=Ds-Us|0;Ds=Ds?Ds>>1:1;if(Ds>>>0>=1073741824){break d}Vs=Ds<<2;Xs=zo(Vs);_s=Vs+Xs|0;Vs=Xs+(Ds&-4)|0;Ds=Vs;if((Ss|0)!=(Ts|0)){Ds=Vs;while(1){q[Ds>>2]=q[Ss>>2];Ds=Ds+4|0;Ss=Ss+4|0;if((Ts|0)!=(Ss|0)){continue}break}Us=q[i>>2]}q[i>>2]=Xs;q[i+12>>2]=_s;Ss=i+8|0;q[Ss>>2]=Ds;q[i+4>>2]=Vs;if(!Us){Ts=Ds;break e}pp(Us);Ts=q[Ss>>2]}q[Ts>>2]=Zs;q[Ys>>2]=q[Ys>>2]+4;break a}q[Ws+24>>2]=Vs;q[Ws+20>>2]=0;Ds=Ds?Ds>>1:1;if(Ds>>>0<1073741824){Ss=Ds<<2;Ds=zo(Ss);q[Ws+8>>2]=Ds;Ts=Ds+(Ts<<2)|0;q[Ws+16>>2]=Ts;q[Ws+20>>2]=Ds+Ss;q[Ws+12>>2]=Ts;$s=Ws,at=zo(4068),q[$s+4>>2]=at;ke(Ws+8|0,Ws+4|0);Ss=q[i+8>>2];Ds=i+4|0;while(1){Vs=q[Ds>>2];if((Vs|0)==(Ss|0)){Ts=q[i>>2];q[i>>2]=q[Ws+8>>2];q[Ws+8>>2]=Ts;q[i+4>>2]=q[Ws+12>>2];q[Ws+12>>2]=Vs;Us=i+8|0;Ds=q[Us>>2];q[Us>>2]=q[Ws+16>>2];q[Ws+16>>2]=Ds;i=i+12|0;Us=q[i>>2];q[i>>2]=q[Ws+20>>2];q[Ws+20>>2]=Us;if((Ds|0)!=(Ss|0)){q[Ws+16>>2]=Ds+(((Ds-Vs|0)+ -4>>>2^-1)<<2)}if(!Ts){break a}pp(Ts);break a}else{Ss=Ss+ -4|0;le(Ws+8|0,Ss);continue}}}Qb(2e3);F()}Qb(2e3);F()}Qb(2e3);F()}T=Ws+32|0}function ge(i,bt,ct,dt,et){var ft=0,gt=0,ht=0,it=0,jt=0,kt=0,lt=0,mt=0,nt=0,ot=0,pt=0;gt=q[i+8>>2];a:{b:{c:{it=q[ct>>2];ft=q[bt>>2];jt=it-ft|0;if(jt>>>0>=64){if(gt){break c}bt=0;break b}bt=0;if(gt>>>0<2){break a}i=q[et>>2];ct=1;while(1){bt=t[i+(bt<<2)>>2]>t[i+(ct<<2)>>2]?ct:bt;ct=ct+1|0;if(ct>>>0<gt>>>0){continue}break}break a}gt=q[i+1140>>2];kt=q[i+1128>>2];lt=q[bt+8>>2];mt=q[bt+4>>2];nt=q[dt>>2];ot=q[et>>2];while(1){bt=ht<<2;dt=bt+kt|0;q[dt>>2]=0;ct=q[i>>2]-q[bt+ot>>2]|0;q[bt+gt>>2]=ct;if(ct){d:{if((ft|0)==(it|0)){ct=q[dt>>2];break d}et=q[bt+nt>>2]+(1<<ct+ -1)|0;pt=bt+q[mt+24>>2]|0;ct=q[dt>>2];bt=ft;while(1){ct=(t[pt+(w(bt,lt)<<2)>>2]<et>>>0)+ct|0;q[dt>>2]=ct;bt=bt+1|0;if((it|0)!=(bt|0)){continue}break}}bt=jt-ct|0;q[dt>>2]=bt>>>0<ct>>>0?ct:bt}ht=ht+1|0;et=q[i+8>>2];if(ht>>>0<et>>>0){continue}break}if(!et){bt=0;break b}gt=q[i+1140>>2];ct=0;it=i+1128|0;dt=0;bt=0;while(1){ft=ct<<2;if(q[ft+gt>>2]){ht=q[ft+q[it>>2]>>2];ft=dt>>>0<ht>>>0;dt=ft?ht:dt;bt=ft?ct:bt}ct=ct+1|0;if((et|0)!=(ct|0)){continue}break}}ie(i+1088|0,4,bt)}return bt}function he(i,bt){var ct=0,dt=0,et=0,qt=0,rt=0,st=0;a:{et=q[i>>2];rt=q[i+4>>2]-et|0;ct=rt>>2;dt=ct+1|0;if(dt>>>0<1073741824){st=ct<<2;ct=q[i+8>>2]-et|0;qt=ct>>1;dt=ct>>2>>>0<536870911?qt>>>0<dt>>>0?dt:qt:1073741823;ct=0;b:{if(!dt){break b}if(dt>>>0>=1073741824){break a}ct=zo(dt<<2)}qt=st+ct|0;q[qt>>2]=q[bt>>2];bt=ct+(dt<<2)|0;dt=qt+4|0;if((rt|0)>=1){vp(ct,et,rt)}q[i>>2]=ct;q[i+8>>2]=bt;q[i+4>>2]=dt;if(et){pp(et)}return}To();F()}Qb(2e3);F()}function ie(i,bt,tt){var ut=0,vt=0,wt=0;vt=32-bt|0;tt=tt<<vt;ut=q[i+16>>2];wt=32-ut|0;a:{if((wt|0)>=(bt|0)){bt=bt+ut|0;q[i+16>>2]=bt;tt=q[i+12>>2]|tt>>>ut;q[i+12>>2]=tt;if((bt|0)!=32){break a}ut=i+4|0;bt=q[ut>>2];b:{if((bt|0)!=q[i+8>>2]){q[bt>>2]=tt;q[ut>>2]=bt+4;break b}he(i,i+12|0)}q[i+12>>2]=0;q[i+16>>2]=0;return}bt=bt-wt|0;q[i+16>>2]=bt;tt=tt>>>vt;ut=q[i+12>>2]|tt>>>bt;q[i+12>>2]=ut;vt=i+4|0;bt=q[vt>>2];c:{if((bt|0)!=q[i+8>>2]){q[bt>>2]=ut;q[vt>>2]=bt+4;break c}he(i,i+12|0)}q[i+12>>2]=tt<<32-q[i+16>>2]}}function je(i){var bt=0,tt=0,xt=0,yt=0,zt=0,At=0,Bt=0;tt=q[i+16>>2];bt=(tt>>>0)/113|0;xt=q[i+4>>2];At=q[i+8>>2];a:{if((xt|0)==(At|0)){zt=i+20|0;break a}yt=(bt<<2)+xt|0;bt=q[yt>>2]+w(tt-w(bt,113)|0,36)|0;zt=i+20|0;tt=tt+q[zt>>2]|0;Bt=(tt>>>0)/113|0;tt=q[(Bt<<2)+xt>>2]+w(tt-w(Bt,113)|0,36)|0;if((bt|0)==(tt|0)){break a}while(1){bt=bt+36|0;if((bt-q[yt>>2]|0)==4068){bt=q[yt+4>>2];yt=yt+4|0}if((bt|0)!=(tt|0)){continue}break}}q[zt>>2]=0;bt=At-xt>>2;if(bt>>>0>2){while(1){pp(q[xt>>2]);xt=q[i+4>>2]+4|0;q[i+4>>2]=xt;bt=q[i+8>>2]-xt>>2;if(bt>>>0>2){continue}break}}bt=bt+ -1|0;if(bt>>>0<=1){q[i+16>>2]=bt-1|0?56:113}}function ke(i,Ct){var Dt=0,Et=0,Ft=0,Gt=0,Ht=0,It=0,Jt=0;a:{Ft=q[i+8>>2];Dt=q[i+12>>2];b:{if((Ft|0)!=(Dt|0)){Dt=Ft;break b}Et=q[i+4>>2];Gt=q[i>>2];if(Et>>>0>Gt>>>0){Ft=Ft-Et|0;It=Ft>>2;Gt=((Et-Gt>>2)+1|0)/-2<<2;Ht=Gt+Et|0;Dt=i;if(Ft){xp(Ht,Et,Ft);Et=q[i+4>>2]}q[Dt+4>>2]=Et+Gt;Dt=Ht+(It<<2)|0;q[i+8>>2]=Dt;break b}Dt=Dt-Gt|0;Dt=Dt?Dt>>1:1;if(Dt>>>0>=1073741824){break a}Ht=Dt<<2;It=zo(Ht);Jt=Ht+It|0;Ht=It+(Dt&-4)|0;Dt=Ht;if((Et|0)!=(Ft|0)){Dt=Ht;while(1){q[Dt>>2]=q[Et>>2];Dt=Dt+4|0;Et=Et+4|0;if((Ft|0)!=(Et|0)){continue}break}Gt=q[i>>2]}q[i+8>>2]=Dt;q[i+4>>2]=Ht;q[i>>2]=It;q[i+12>>2]=Jt;if(!Gt){break b}pp(Gt);Dt=q[i+8>>2]}q[Dt>>2]=q[Ct>>2];q[i+8>>2]=q[i+8>>2]+4;return}Qb(2e3);F()}function le(i,Ct){var Kt=0,Lt=0,Mt=0,Nt=0,Ot=0,Pt=0;a:{Mt=q[i+4>>2];Lt=q[i>>2];b:{if((Mt|0)!=(Lt|0)){Kt=Mt;break b}Nt=q[i+8>>2];Kt=q[i+12>>2];if(Nt>>>0<Kt>>>0){Ot=((Kt-Nt>>2)+1|0)/2<<2;Kt=Ot+Nt|0;Lt=Nt-Mt|0;if(Lt){Kt=Kt-Lt|0;xp(Kt,Mt,Lt);Nt=q[i+8>>2]}q[i+4>>2]=Kt;q[i+8>>2]=Nt+Ot;break b}Kt=Kt-Lt|0;Kt=Kt?Kt>>1:1;if(Kt>>>0>=1073741824){break a}Lt=Kt<<2;Ot=zo(Lt);Pt=Lt+Ot|0;Kt=Ot+(Kt+3&-4)|0;c:{if((Mt|0)==(Nt|0)){Lt=Kt;break c}Lt=Kt;while(1){q[Lt>>2]=q[Mt>>2];Lt=Lt+4|0;Mt=Mt+4|0;if((Nt|0)!=(Mt|0)){continue}break}Mt=q[i>>2]}q[i+8>>2]=Lt;q[i+4>>2]=Kt;q[i>>2]=Ot;q[i+12>>2]=Pt;if(!Mt){break b}pp(Mt);Kt=q[i+4>>2]}q[Kt+ -4>>2]=q[Ct>>2];q[i+4>>2]=q[i+4>>2]+ -4;return}Qb(2e3);F()}function me(i){q[i+32>>2]=0;q[i+12>>2]=-1;q[i+4>>2]=0;q[i+8>>2]=0;q[i>>2]=2108;q[i+16>>2]=0;q[i+20>>2]=0;o[i+21|0]=0;o[i+22|0]=0;o[i+23|0]=0;o[i+24|0]=0;o[i+25|0]=0;o[i+26|0]=0;o[i+27|0]=0;o[i+28|0]=0}function ne(i,Ct,Qt){i=i|0;Ct=Ct|0;Qt=Qt|0;q[i+4>>2]=Ct;Ct=q[q[q[Ct+4>>2]+8>>2]+(Qt<<2)>>2];q[i+12>>2]=Qt;q[i+8>>2]=Ct;return 1}function oe(i,Ct){i=i|0;Ct=Ct|0;q[i+12>>2]=-1;q[i+8>>2]=Ct;return 1}function pe(i,Ct,Qt){i=i|0;Ct=Ct|0;Qt=Qt|0;return n[q[q[i>>2]+44>>2]](i,Ct,Qt)|0}function qe(i,Ct,Qt){i=i|0;Ct=Ct|0;Qt=Qt|0;var Rt=0,St=0,Tt=0,Ut=0,Vt=0,Wt=0,Xt=0,Yt=0,Zt=0,_t=0,$t=0,au=0,bu=0,cu=0;Rt=q[i+8>>2];St=q[Rt+40>>2];Vt=zo((St|0)>-1?St:-1);a:{Ut=q[Ct>>2];Yt=Ct+4|0;Wt=q[Yt>>2];if((Ut|0)==(Wt|0)){break a}_t=St+Vt|0;while(1){Tt=q[(Xt<<2)+Ut>>2];St=Vt;$t=q[q[Rt>>2]>>2];au=q[Rt+48>>2];Zt=q[Rt+40>>2];bu=Zt;cu=q[Rt+44>>2];if(!r[Rt+84|0]){Tt=q[q[Rt+68>>2]+(Tt<<2)>>2]}Rt=St;St=Up(bu,cu,Tt,0)+au|0;Tt=vp(Rt,St+$t|0,Zt);St=q[Qt+20>>2];if((St|0)<0?1:(St|0)<=0?t[Qt+16>>2]>0?0:1:0){Vb(Qt,q[Qt+4>>2],Tt,_t);Ut=q[Ct>>2];Wt=q[Yt>>2]}Xt=Xt+1|0;if(Xt>>>0>=Wt-Ut>>2>>>0){break a}Rt=q[i+8>>2];continue}}pp(Vt);return 1}function re(i){o[i+28|0]=1}function se(i,Ct){i=i|0;Ct=Ct|0;var Qt=0,du=0,eu=0,fu=0,gu=0,hu=0,iu=0;du=T-16|0;T=du;Qt=1;a:{if((n[q[q[Ct>>2]+20>>2]](Ct)|0)<1){break a}hu=i+16|0;iu=i+24|0;gu=i+20|0;while(1){b:{Qt=Im(q[q[i+4>>2]+4>>2],n[q[q[Ct>>2]+24>>2]](Ct,eu)|0);q[du+12>>2]=Qt;if((Qt|0)==-1){break b}fu=q[gu>>2];c:{if((fu|0)!=q[iu>>2]){q[fu>>2]=Qt;q[gu>>2]=fu+4;break c}pd(hu,du+12|0)}rl(q[i+4>>2],q[du+12>>2]);Qt=1;eu=eu+1|0;if((eu|0)<(n[q[q[Ct>>2]+20>>2]](Ct)|0)){continue}break a}break}Qt=0}T=du+16|0;return Qt|0}function te(i,Ct){i=i|0;Ct=Ct|0;var ju=0,ku=0,lu=0,mu=0,nu=0,ou=0;ju=1;a:{if((n[q[q[Ct>>2]+20>>2]](Ct)|0)<1){break a}ju=0;while(1){lu=Im(q[q[i+4>>2]+4>>2],n[q[q[Ct>>2]+24>>2]](Ct,ku)|0);if((lu|0)==-1){break a}if(!(nu=Ct,ou=sl(q[i+4>>2],lu),mu=q[q[Ct>>2]+28>>2],n[mu](nu|0,ou|0)|0)){break a}ku=ku+1|0;if((ku|0)<(n[q[q[Ct>>2]+20>>2]](Ct)|0)){continue}break}ju=1}return ju|0}function ue(i){i=i|0;var Ct=0;q[i>>2]=2108;Ct=q[i+32>>2];q[i+32>>2]=0;if(Ct){Ba(Ct)}Ct=q[i+16>>2];if(Ct){q[i+20>>2]=Ct;pp(Ct)}return i|0}function ve(i){i=i|0;var pu=0;q[i>>2]=2108;pu=q[i+32>>2];q[i+32>>2]=0;if(pu){Ba(pu)}pu=q[i+16>>2];if(pu){q[i+20>>2]=pu;pp(pu)}pp(i)}function we(i){i=i|0;return 0}function xe(i,qu,ru){od(i,ru);q[i+36>>2]=0;q[i+40>>2]=0;q[i>>2]=2212;q[i+44>>2]=0;q[i+48>>2]=0;q[i+52>>2]=0;q[i+56>>2]=0;q[i+60>>2]=0;q[i+64>>2]=0;q[i+68>>2]=0;ru=q[qu>>2];q[qu>>2]=0;q[i+72>>2]=ru}function ye(i,qu,ru){i=i|0;qu=qu|0;ru=ru|0;var su=0,tu=0,uu=0,vu=0,wu=0,xu=0;a:{if(!rd(i,qu,ru)){break a}if(!n[q[q[i>>2]+52>>2]](i)){break a}su=1;tu=i+4|0;ru=q[tu>>2];uu=i+8|0;if((ru|0)==q[uu>>2]){break a}su=0;xu=i+36|0;i=0;while(1){vu=i<<2;wu=q[vu+q[xu>>2]>>2];if(!n[q[q[wu>>2]+8>>2]](wu,qu,q[ru+vu>>2])){break a}i=i+1|0;ru=q[tu>>2];if(i>>>0<q[uu>>2]-ru>>2>>>0){continue}break}su=1}return su|0}function ze(i,qu){i=i|0;qu=qu|0;var ru=0,yu=0,zu=0,Au=0,Bu=0,Cu=0,Du=0,Eu=0,Fu=0;yu=T-16|0;T=yu;a:{if(!sd(i,qu)){break a}Bu=1;ru=q[i+36>>2];Au=i+40|0;if((ru|0)==q[Au>>2]){break a}Cu=yu+16|0;Du=qu+4|0;while(1){ru=q[(zu<<2)+ru>>2];Eu=yu,Fu=n[q[q[ru>>2]+32>>2]](ru)|0,o[Eu+15|0]=Fu;ru=q[qu+20>>2];if((ru|0)<0?1:(ru|0)<=0?t[qu+16>>2]>0?0:1:0){Vb(qu,q[Du>>2],yu+15|0,Cu)}zu=zu+1|0;ru=q[i+36>>2];if(zu>>>0<q[Au>>2]-ru>>2>>>0){continue}break}}T=yu+16|0;return Bu|0}function Ae(i,qu){i=i|0;qu=qu|0;var Gu=0,Hu=0;Gu=q[i+72>>2];a:{if(!Gu){break a}q[Gu+4>>2]=i+60;if(!n[q[q[Gu>>2]+12>>2]](Gu)){break a}if(!n[q[q[i>>2]+40>>2]](i)){break a}if(!n[q[q[i>>2]+44>>2]](i,qu)){break a}Hu=n[q[q[i>>2]+48>>2]](i,qu)|0}return Hu|0}function Be(i){i=i|0;var qu=0,Iu=0,Ju=0,Ku=0,Lu=0;Iu=1;qu=q[i+36>>2];Ku=i+40|0;a:{if((qu|0)==q[Ku>>2]){break a}Lu=i+60|0;Iu=0;while(1){qu=q[(Ju<<2)+qu>>2];if(!n[q[q[qu>>2]+16>>2]](qu,Lu)){break a}Ju=Ju+1|0;qu=q[i+36>>2];if(Ju>>>0<q[Ku>>2]-qu>>2>>>0){continue}break}Iu=1}return Iu|0}function Ce(i,Mu){i=i|0;Mu=Mu|0;var Nu=0,Ou=0,Pu=0,Qu=0,Ru=0;Ou=1;Nu=q[i+36>>2];Qu=i+40|0;a:{if((Nu|0)==q[Qu>>2]){break a}Ru=i+60|0;Ou=0;while(1){Nu=q[(Pu<<2)+Nu>>2];if(!n[q[q[Nu>>2]+20>>2]](Nu,Ru,Mu)){break a}Pu=Pu+1|0;Nu=q[i+36>>2];if(Pu>>>0<q[Qu>>2]-Nu>>2>>>0){continue}break}Ou=1}return Ou|0}function De(i,Mu){i=i|0;Mu=Mu|0;var Su=0,Tu=0,Uu=0;Su=q[i+36>>2];Uu=i+40|0;if((Su|0)!=q[Uu>>2]){a:{while(1){Su=q[(Tu<<2)+Su>>2];if(!n[q[q[Su>>2]+24>>2]](Su,Mu)){break a}Tu=Tu+1|0;Su=q[i+36>>2];if(Tu>>>0<q[Uu>>2]-Su>>2>>>0){continue}break}return 1}i=0}else{i=1}return i|0}function Ee(i){i=i|0;var Mu=0,Vu=0,Wu=0,Xu=0,Yu=0,Zu=0,_u=0,$u=0,av=0;Xu=T-16|0;T=Xu;Zu=i+36|0;Mu=q[i+8>>2]-q[i+4>>2]>>2;Vu=q[i+40>>2];Yu=q[i+36>>2];Wu=Vu-Yu>>2;a:{if(Mu>>>0>Wu>>>0){Fe(Zu,Mu-Wu|0);break a}if(Mu>>>0>=Wu>>>0){break a}Wu=Yu+(Mu<<2)|0;if((Wu|0)!=(Vu|0)){while(1){Vu=Vu+ -4|0;Mu=q[Vu>>2];q[Vu>>2]=0;if(Mu){n[q[q[Mu>>2]+4>>2]](Mu)}if((Vu|0)!=(Wu|0)){continue}break}}q[i+40>>2]=Wu}Mu=1;Wu=i+8|0;Yu=i+4|0;b:{if(q[Wu>>2]==q[Yu>>2]){break b}Vu=0;while(1){n[q[q[i>>2]+56>>2]](Xu+8|0,i,Vu);Mu=q[i+36>>2];av=q[Xu+8>>2];q[Xu+8>>2]=0;_u=Vu<<2;$u=_u+Mu|0;Mu=q[$u>>2];q[$u>>2]=av;if(Mu){n[q[q[Mu>>2]+4>>2]](Mu)}Mu=q[Xu+8>>2];q[Xu+8>>2]=0;if(Mu){n[q[q[Mu>>2]+4>>2]](Mu)}Mu=q[_u+q[Zu>>2]>>2];if(!Mu){Mu=0;break b}if(!(!(q[q[i+48>>2]+(Vu>>>3&536870908)>>2]>>>(Vu&31)&1)|Vu>>>0>=t[i+52>>2])){re(Mu)}Mu=1;Vu=Vu+1|0;if(Vu>>>0<q[Wu>>2]-q[Yu>>2]>>2>>>0){continue}break}}T=Xu+16|0;return Mu|0}function Fe(i,bv){var cv=0,dv=0,ev=0,fv=0,gv=0,hv=0,iv=0,jv=0,kv=0;dv=q[i+8>>2];ev=i+4|0;cv=q[ev>>2];if(dv-cv>>2>>>0>=bv>>>0){i=bv<<2;jv=ev,kv=wp(cv,0,i)+i|0,q[jv>>2]=kv;return}a:{ev=q[i>>2];fv=cv-ev>>2;gv=fv+bv|0;if(gv>>>0<1073741824){fv=fv<<2;dv=dv-ev|0;iv=dv>>1;dv=dv>>2>>>0<536870911?iv>>>0<gv>>>0?gv:iv:1073741823;if(dv){if(dv>>>0>=1073741824){break a}hv=zo(dv<<2)}fv=fv+hv|0;wp(fv,0,bv<<2);bv=(gv<<2)+hv|0;gv=(dv<<2)+hv|0;if((cv|0)!=(ev|0)){while(1){cv=cv+ -4|0;dv=q[cv>>2];q[cv>>2]=0;fv=fv+ -4|0;q[fv>>2]=dv;if((cv|0)!=(ev|0)){continue}break}ev=q[i>>2];cv=q[i+4>>2]}q[i>>2]=fv;q[i+8>>2]=gv;q[i+4>>2]=bv;if((cv|0)!=(ev|0)){while(1){cv=cv+ -4|0;i=q[cv>>2];q[cv>>2]=0;if(i){n[q[q[i>>2]+4>>2]](i)}if((cv|0)!=(ev|0)){continue}break}}if(ev){pp(ev)}return}To();F()}Qb(2352);F()}function Ge(i,bv,lv){i=i|0;bv=bv|0;lv=lv|0;var mv=0,nv=0,ov=0,pv=0,qv=0,rv=0;nv=T-16|0;T=nv;mv=q[bv+28>>2];ov=q[q[bv+4>>2]+(lv<<2)>>2];pv=q[q[q[mv+4>>2]+8>>2]+(ov<<2)>>2];bv=q[pv+28>>2];a:{if(bv+ -1>>>0>=6){b:{if((bv|0)!=9){break b}qv=q[mv+48>>2];bv=zo(32);q[nv>>2]=bv;q[nv+4>>2]=17;q[nv+8>>2]=-2147483616;o[bv+17|0]=0;o[bv+16|0]=r[2288];lv=r[2284]|r[2285]<<8|(r[2286]<<16|r[2287]<<24);mv=r[2280]|r[2281]<<8|(r[2282]<<16|r[2283]<<24);o[bv+8|0]=mv;o[bv+9|0]=mv>>>8;o[bv+10|0]=mv>>>16;o[bv+11|0]=mv>>>24;o[bv+12|0]=lv;o[bv+13|0]=lv>>>8;o[bv+14|0]=lv>>>16;o[bv+15|0]=lv>>>24;lv=r[2276]|r[2277]<<8|(r[2278]<<16|r[2279]<<24);mv=r[2272]|r[2273]<<8|(r[2274]<<16|r[2275]<<24);o[bv|0]=mv;o[bv+1|0]=mv>>>8;o[bv+2|0]=mv>>>16;o[bv+3|0]=mv>>>24;o[bv+4|0]=lv;o[bv+5|0]=lv>>>8;o[bv+6|0]=lv>>>16;o[bv+7|0]=lv>>>24;c:{d:{mv=qv+16|0;bv=q[mv>>2];if(!bv){break d}lv=mv;while(1){rv=q[bv+16>>2]<(ov|0);lv=rv?lv:bv;bv=q[(rv<<2)+bv>>2];if(bv){continue}break}if((lv|0)==(mv|0)|(ov|0)<q[lv+16>>2]){break d}bv=lv+20|0;if(!Cd(bv,nv)){break d}bv=Ll(bv,nv,-1);break c}bv=Ll(qv,nv,-1)}if(o[nv+11|0]<=-1){pp(q[nv>>2])}if((bv|0)<1){break b}if(q[pv+56>>2]==1){bv=zo(48);q[bv>>2]=0;q[bv+4>>2]=0;lv=bv+40|0;q[lv>>2]=0;q[lv+4>>2]=0;q[bv+32>>2]=0;q[bv+36>>2]=0;q[bv+24>>2]=0;q[bv+28>>2]=0;q[bv+16>>2]=0;q[bv+20>>2]=0;q[bv+8>>2]=0;q[bv+12>>2]=0;Re(bv);q[bv+44>>2]=-1;q[lv>>2]=1268;q[bv>>2]=6180;break a}bv=zo(64);Og(bv);break a}bv=zo(36);me(bv);break a}bv=zo(40);Re(bv)}q[i>>2]=bv;T=nv+16|0}function He(i){i=i|0;var bv=0,lv=0,sv=0,tv=0,uv=0;q[i>>2]=2212;bv=i+72|0;lv=q[bv>>2];q[bv>>2]=0;if(lv){n[q[q[lv>>2]+4>>2]](lv)}bv=q[i+60>>2];if(bv){q[i- -64>>2]=bv;pp(bv)}bv=q[i+48>>2];if(bv){pp(bv)}lv=q[i+36>>2];if(lv){bv=lv;uv=i+40|0;sv=q[uv>>2];tv=bv;a:{if((bv|0)==(sv|0)){break a}while(1){sv=sv+ -4|0;bv=q[sv>>2];q[sv>>2]=0;if(bv){n[q[q[bv>>2]+4>>2]](bv)}if((lv|0)!=(sv|0)){continue}break}tv=q[i+36>>2]}bv=tv;q[uv>>2]=lv;pp(bv)}q[i>>2]=1680;bv=q[i+16>>2];if(bv){q[i+20>>2]=bv;pp(bv)}bv=q[i+4>>2];if(bv){q[i+8>>2]=bv;pp(bv)}return i|0}function Ie(i){i=i|0;pp(He(i))}function Je(i,vv){i=i|0;vv=vv|0;var wv=0,xv=0;xv=q[i+16>>2];wv=0;a:{if(q[i+20>>2]-xv>>2<=(vv|0)){break a}vv=q[(vv<<2)+xv>>2];wv=0;if((vv|0)<0){break a}i=q[q[i+36>>2]+(vv<<2)>>2];wv=q[i+20>>2]-q[i+16>>2]>>2}return wv|0}function Ke(i,vv,yv){i=i|0;vv=vv|0;yv=yv|0;var zv=0,Av=0;zv=-1;Av=q[i+16>>2];a:{if(q[i+20>>2]-Av>>2<=(vv|0)){break a}vv=q[(vv<<2)+Av>>2];if((vv|0)<0){break a}zv=q[q[q[q[i+36>>2]+(vv<<2)>>2]+16>>2]+(yv<<2)>>2]}return zv|0}function Le(i,vv){i=i|0;vv=vv|0;var yv=0,Bv=0;yv=q[i+16>>2];a:{if(q[i+20>>2]-yv>>2<=(vv|0)){break a}vv=q[yv+(vv<<2)>>2];if((vv|0)<0){break a}if(t[i+52>>2]<=vv>>>0){Me(i+48|0,vv+1|0)}Bv=1;yv=q[i+48>>2]+(vv>>>3&536870908)|0;q[yv>>2]=q[yv>>2]|1<<(vv&31);yv=q[i+40>>2];i=q[i+36>>2];if(yv-i>>2>>>0<=vv>>>0){break a}re(q[i+(vv<<2)>>2])}return Bv|0}function Me(i,vv){var Cv=0,Dv=0,Ev=0,Fv=0,Gv=0,Hv=0;Dv=T-32|0;T=Dv;a:{Cv=q[i+4>>2];b:{if(Cv>>>0<vv>>>0){Gv=q[i+8>>2];Ev=Gv<<5;Fv=vv-Cv|0;c:{if(!(Ev>>>0<Fv>>>0|Cv>>>0>Ev-Fv>>>0)){q[i+4>>2]=vv;vv=Cv&31;i=q[i>>2]+(Cv>>>3&536870908)|0;break c}q[Dv+24>>2]=0;q[Dv+16>>2]=0;q[Dv+20>>2]=0;if((vv|0)<=-1){break a}Cv=Dv+16|0;if(Ev>>>0<=1073741822){vv=vv+31&-32;Ev=Gv<<6;vv=Ev>>>0<vv>>>0?vv:Ev}else{vv=2147483647}Oe(Cv,vv);Cv=q[i+4>>2];q[Dv+20>>2]=Cv+Fv;vv=q[Dv+16>>2];d:{if((Cv|0)<1){Cv=0;break d}Gv=q[i>>2];Ev=Cv>>>5<<2;vv=xp(vv,Gv,Ev)+Ev|0;Cv=Cv&31;if(!Cv){Cv=0;break d}Hv=-1>>>32-Cv;q[vv>>2]=q[vv>>2]&(Hv^-1)|q[Ev+Gv>>2]&Hv}q[Dv+12>>2]=Cv;q[Dv+8>>2]=vv;Cv=q[Dv+8>>2];vv=q[Dv+12>>2];Ev=q[i>>2];q[i>>2]=q[Dv+16>>2];q[Dv+16>>2]=Ev;Gv=q[i+4>>2];q[i+4>>2]=q[Dv+20>>2];q[Dv+20>>2]=Gv;i=i+8|0;Gv=q[i>>2];q[i>>2]=q[Dv+24>>2];q[Dv+24>>2]=Gv;if(Ev){pp(Ev)}i=Cv}if(!Fv){break b}if(vv){Cv=32-vv|0;Ev=Cv>>>0>Fv>>>0?Fv:Cv;q[i>>2]=q[i>>2]&(-1<<vv&-1>>>Cv-Ev^-1);Fv=Fv-Ev|0;i=i+4|0}vv=i;i=Fv>>>5<<2;vv=wp(vv,0,i);Cv=Fv&31;if(!Cv){break b}i=i+vv|0;q[i>>2]=q[i>>2]&(-1>>>32-Cv^-1);break b}q[i+4>>2]=vv}T=Dv+32|0;return}To();F()}function Ne(i,vv){i=i|0;vv=vv|0;var Iv=0,Jv=0;Jv=q[i+16>>2];a:{if(q[i+20>>2]-Jv>>2<=(vv|0)){break a}vv=q[(vv<<2)+Jv>>2];if((vv|0)<0){break a}i=q[q[i+36>>2]+(vv<<2)>>2];Iv=q[i+32>>2];if(Iv){break a}Iv=q[i+8>>2]}return Iv|0}function Oe(i,vv){var Kv=0,Lv=0;Kv=T-32|0;T=Kv;a:{b:{if(q[i+8>>2]<<5>>>0>=vv>>>0){break b}q[Kv+24>>2]=0;q[Kv+16>>2]=0;q[Kv+20>>2]=0;if((vv|0)<=-1){break a}vv=(vv+ -1>>>5)+1|0;Lv=zo(vv<<2);q[Kv+24>>2]=vv;q[Kv+20>>2]=0;q[Kv+16>>2]=Lv;vv=q[i>>2];q[Kv+12>>2]=0;q[Kv+8>>2]=vv;Lv=q[i+4>>2];q[Kv+4>>2]=Lv&31;q[Kv>>2]=vv+(Lv>>>3&536870908);Pe(Kv+16|0,Kv+8|0,Kv);vv=q[i>>2];q[i>>2]=q[Kv+16>>2];q[Kv+16>>2]=vv;Lv=q[i+4>>2];q[i+4>>2]=q[Kv+20>>2];q[Kv+20>>2]=Lv;i=i+8|0;Lv=q[i>>2];q[i>>2]=q[Kv+24>>2];q[Kv+24>>2]=Lv;if(!vv){break b}pp(vv)}T=Kv+32|0;return}To();F()}function Pe(i,vv,Mv){var Nv=0,Ov=0,Pv=0,Qv=0,Rv=0,Sv=0;Pv=T-32|0;T=Pv;Rv=q[Mv+4>>2];Nv=q[vv+4>>2];Sv=q[Mv>>2];Qv=q[vv>>2];vv=(Rv-Nv|0)+(Sv-Qv<<3)|0;Mv=q[i+4>>2];Ov=vv+Mv|0;q[i+4>>2]=Ov;a:{if(!(!Mv|(Ov+ -1^Mv+ -1)>>>0>31)){i=q[i>>2];break a}i=q[i>>2];if(Ov>>>0<=32){q[i>>2]=0;break a}q[(Ov+ -1>>>3&536870908)+i>>2]=0}i=(Mv>>>3&536870908)+i|0;Mv=Mv&31;b:{if((Mv|0)==(Nv|0)){c:{if((vv|0)<1){break c}d:{if(!Nv){Mv=0;break d}Ov=32-Nv|0;Mv=(vv|0)<(Ov|0)?vv:Ov;Ov=-1<<Nv&-1>>>Ov-Mv;q[i>>2]=q[i>>2]&(Ov^-1)|Ov&q[Qv>>2];vv=vv-Mv|0;Nv=Mv+Nv|0;Mv=Nv&31;i=(Nv>>>3&536870908)+i|0;Qv=Qv+4|0}Nv=(vv|0)/32|0;Ov=Nv<<2;i=xp(i,Qv,Ov)+Ov|0;Nv=vv-(Nv<<5)|0;if((Nv|0)<1){Nv=Mv;break c}vv=-1>>>32-Nv;q[i>>2]=q[i>>2]&(vv^-1)|vv&q[Ov+Qv>>2]}q[Pv+4>>2]=Nv;q[Pv>>2]=i;break b}q[Pv+28>>2]=Nv;q[Pv+24>>2]=Qv;q[Pv+20>>2]=Rv;q[Pv+16>>2]=Sv;q[Pv+12>>2]=Mv;q[Pv+8>>2]=i;Qe(Pv,Pv+24|0,Pv+16|0,Pv+8|0)}T=Pv+32|0}function Qe(i,vv,Mv,Tv){var Uv=0,Vv=0,Wv=0,Xv=0,Yv=0,Zv=0,_v=0,$v=0;Vv=q[vv>>2];Uv=q[Mv+4>>2]+(q[Mv>>2]-Vv<<3)|0;Mv=q[vv+4>>2];Wv=Uv-Mv|0;a:{if((Wv|0)<=0){Mv=q[Tv+4>>2];break a}b:{if(!Mv){Mv=q[Tv+4>>2];break b}Uv=q[Tv+4>>2];Zv=32-Uv|0;_v=32-Mv|0;Xv=(Wv|0)<(_v|0)?Wv:_v;Yv=Zv>>>0<Xv>>>0?Zv:Xv;$v=q[Tv>>2];Vv=q[Vv>>2]&(-1<<Mv&-1>>>_v-Xv);q[$v>>2]=q[$v>>2]&(-1<<Uv&-1>>>Zv-Yv^-1)|(Uv>>>0>Mv>>>0?Vv<<Uv-Mv:Vv>>>Mv-Uv);Uv=Uv+Yv|0;Mv=Uv&31;q[Tv+4>>2]=Mv;Zv=$v+(Uv>>>3&536870908)|0;q[Tv>>2]=Zv;Uv=Xv-Yv|0;if((Uv|0)>=1){q[Zv>>2]=q[Zv>>2]&(-1>>>32-Uv^-1)|Vv>>>Yv+q[vv+4>>2];q[Tv+4>>2]=Uv;Mv=Uv}Wv=Wv-Xv|0;Vv=q[vv>>2]+4|0;q[vv>>2]=Vv}Yv=-1<<Mv;Xv=32-Mv|0;c:{if((Wv|0)<32){Uv=Wv;break c}Zv=Yv^-1;while(1){Uv=q[Tv>>2];Vv=q[Vv>>2];q[Uv>>2]=Zv&q[Uv>>2]|Vv<<Mv;q[Tv>>2]=Uv+4;q[Uv+4>>2]=Yv&q[Uv+4>>2]|Vv>>>Xv;Vv=q[vv>>2]+4|0;q[vv>>2]=Vv;_v=(Wv|0)>63;Uv=Wv+ -32|0;Wv=Uv;if(_v){continue}break}}if((Uv|0)<1){break a}vv=q[Tv>>2];Wv=(Xv|0)<(Uv|0)?Xv:Uv;Yv=q[vv>>2]&(Yv&-1>>>Xv-Wv^-1);Xv=q[Vv>>2]&-1>>>32-Uv;q[vv>>2]=Yv|Xv<<Mv;Vv=Mv+Wv|0;Mv=Vv&31;q[Tv+4>>2]=Mv;Vv=vv+(Vv>>>3&536870908)|0;q[Tv>>2]=Vv;vv=Uv-Wv|0;if((vv|0)<1){break a}q[Vv>>2]=q[Vv>>2]&(-1>>>32-vv^-1)|Xv>>>Wv;q[Tv+4>>2]=vv;Mv=vv}vv=q[Tv>>2];q[i+4>>2]=Mv;q[i>>2]=vv}function Re(i){me(i);q[i+36>>2]=0;q[i>>2]=2428}function Se(i,vv,Mv){i=i|0;vv=vv|0;Mv=Mv|0;var Tv=0,aw=0,bw=0,cw=0,dw=0,ew=0;Tv=T-16|0;T=Tv;a:{if(!ne(i,vv,Mv)){break a}if(bw=(n[q[q[i>>2]+32>>2]](i)|0)==1,cw=0,dw=q[q[i+8>>2]+28>>2]+ -1>>>0>5,dw?bw:cw){break a}cw=Tv+8|0,dw=i,ew=Vg(Mv,q[vv+48>>2]),bw=q[q[i>>2]+48>>2],n[bw](cw|0,dw|0,ew|0);vv=q[Tv+8>>2];q[Tv+8>>2]=0;Mv=q[i+36>>2];q[i+36>>2]=vv;b:{if(!Mv){q[Tv+8>>2]=0;break b}n[q[q[Mv>>2]+4>>2]](Mv);vv=q[Tv+8>>2];q[Tv+8>>2]=0;if(vv){n[q[q[vv>>2]+4>>2]](vv)}vv=q[i+36>>2]}aw=1;if(!vv){break a}if(n[q[q[i>>2]+36>>2]](i,vv)){break a}vv=q[i+36>>2];q[i+36>>2]=0;if(!vv){break a}n[q[q[vv>>2]+4>>2]](vv)}T=Tv+16|0;return aw|0}function Te(i,vv){i=i|0;vv=vv|0;var Mv=0,fw=0,gw=0,hw=0,iw=0,jw=0,kw=0,lw=0,mw=0,nw=0,ow=0;fw=T-16|0;T=fw;a:{Mv=q[i+4>>2];b:{c:{if(Mv){if(n[q[q[i>>2]+52>>2]](i,vv,q[q[Mv+4>>2]+80>>2])){break c}break b}if(!n[q[q[i>>2]+52>>2]](i,vv,0)){break b}}nw=1;if(!r[i+28|0]){break b}ow=q[i+32>>2];iw=q[i+8>>2];Mv=q[iw+80>>2];q[fw+8>>2]=0;q[fw>>2]=0;q[fw+4>>2]=0;if(Mv){if(Mv>>>0>=1073741824){break a}gw=Mv<<2;hw=zo(gw);q[fw>>2]=hw;Mv=gw+hw|0;q[fw+8>>2]=Mv;wp(hw,0,gw);q[fw+4>>2]=Mv}Mv=q[vv+4>>2];kw=q[vv>>2];if((Mv|0)!=(kw|0)){jw=Mv-kw>>2;vv=0;lw=r[iw+84|0];mw=iw+68|0;while(1){gw=q[kw+(vv<<2)>>2];Mv=hw;if(!lw){gw=q[q[mw>>2]+(gw<<2)>>2]}q[(gw<<2)+Mv>>2]=vv;vv=vv+1|0;if(vv>>>0<jw>>>0){continue}break}}jw=q[q[q[i+4>>2]+4>>2]+80>>2];if(jw){lw=q[ow+68>>2];vv=0;mw=r[iw+84|0];while(1){i=vv;gw=lw+(vv<<2)|0;Mv=hw;if(!mw){i=q[q[iw+68>>2]+(vv<<2)>>2]}q[gw>>2]=q[(i<<2)+Mv>>2];vv=vv+1|0;if(vv>>>0<jw>>>0){continue}break}}if(!hw){break b}q[fw+4>>2]=hw;pp(hw)}T=fw+16|0;return nw|0}To();F()}function Ue(i,vv,pw){i=i|0;vv=vv|0;pw=pw|0;var qw=0,rw=0,sw=0;qw=T-48|0;T=qw;sw=q[vv+4>>2];vv=q[vv+12>>2];q[qw+40>>2]=0;rw=qw+32|0;q[rw>>2]=0;q[rw+4>>2]=0;q[qw+24>>2]=0;q[qw+28>>2]=0;q[qw+16>>2]=0;q[qw+20>>2]=0;q[qw+8>>2]=0;q[qw+12>>2]=0;Ve(qw,pw,vv,sw,qw+8|0);vv=q[rw>>2];if(vv){q[qw+36>>2]=vv;pp(vv)}q[i>>2]=q[qw>>2];T=qw+48|0}function Ve(i,vv,pw,tw,uw){var vw=0,ww=0;ww=q[q[q[tw+4>>2]+8>>2]+(pw<<2)>>2];if((vv|0)==-1){vv=Ug(pw,tw)}a:{if((vv|0)!=-2){if((n[q[q[tw>>2]+8>>2]](tw)|0)==1){$e(i,tw,vv,pw,uw);if(q[i>>2]){break a}q[i>>2]=0}vw=zo(44);af(vw,ww,uw)}q[i>>2]=vw}}function We(i,vv,pw){i=i|0;vv=vv|0;pw=pw|0;var tw=0,uw=0,xw=0,yw=0,zw=0,Aw=0,Bw=0,Cw=0,Dw=0,Ew=0;uw=T-32|0;T=uw;a:{b:{if(!q[q[i+8>>2]+80>>2]){tw=1;break b}o[uw+31|0]=254;zw=q[i+36>>2];if(zw){if(!n[q[q[i>>2]+40>>2]](i,zw)){break b}tw=q[i+36>>2];Dw=uw,Ew=n[q[q[tw>>2]+8>>2]](tw)|0,o[Dw+31|0]=Ew}tw=q[pw+20>>2];if((tw|0)<0?1:(tw|0)<=0?t[pw+16>>2]>0?0:1:0){Vb(pw,q[pw+4>>2],uw+31|0,uw+32|0)}tw=q[i+36>>2];c:{if(!tw){break c}Dw=uw,Ew=n[q[q[tw>>2]+36>>2]](tw)|0,o[Dw+16|0]=Ew;tw=q[pw+20>>2];if((tw|0)>0?1:(tw|0)>=0?t[pw+16>>2]<=0?0:1:0){break c}Vb(pw,q[pw+4>>2],uw+16|0,uw+17|0)}tw=q[i+32>>2];zw=q[tw+80>>2];Aw=o[tw+24|0];yw=q[q[tw>>2]>>2];Bw=q[tw+48>>2];tw=0;q[uw+24>>2]=0;q[uw+16>>2]=0;q[uw+20>>2]=0;zw=w(zw,Aw);if(zw){if(zw>>>0>=1073741824){break a}xw=zw<<2;tw=zo(xw);q[uw+16>>2]=tw;Cw=tw+xw|0;q[uw+24>>2]=Cw;wp(tw,0,xw);q[uw+20>>2]=Cw}xw=yw+Bw|0;Bw=i+36|0;yw=q[Bw>>2];d:{e:{if(!yw){break e}n[q[q[yw>>2]+44>>2]](yw,xw,tw,zw,Aw,q[vv>>2])|0;tw=q[Bw>>2];if(!tw){tw=q[uw+16>>2];break e}if(n[q[q[tw>>2]+32>>2]](tw)){break d}tw=q[uw+16>>2];xw=q[i+36>>2]?tw:xw}xl(xw,zw,tw)}f:{g:{h:{i:{j:{tw=q[i+4>>2];if(!tw){break j}Bw=q[tw+48>>2];q[uw+8>>2]=0;q[uw>>2]=0;q[uw+4>>2]=0;tw=zo(48);q[uw>>2]=tw;q[uw+4>>2]=34;q[uw+8>>2]=-2147483600;o[tw+34|0]=0;xw=r[2516]|r[2517]<<8;o[tw+32|0]=xw;o[tw+33|0]=xw>>>8;xw=r[2512]|r[2513]<<8|(r[2514]<<16|r[2515]<<24);yw=r[2508]|r[2509]<<8|(r[2510]<<16|r[2511]<<24);o[tw+24|0]=yw;o[tw+25|0]=yw>>>8;o[tw+26|0]=yw>>>16;o[tw+27|0]=yw>>>24;o[tw+28|0]=xw;o[tw+29|0]=xw>>>8;o[tw+30|0]=xw>>>16;o[tw+31|0]=xw>>>24;xw=r[2504]|r[2505]<<8|(r[2506]<<16|r[2507]<<24);yw=r[2500]|r[2501]<<8|(r[2502]<<16|r[2503]<<24);o[tw+16|0]=yw;o[tw+17|0]=yw>>>8;o[tw+18|0]=yw>>>16;o[tw+19|0]=yw>>>24;o[tw+20|0]=xw;o[tw+21|0]=xw>>>8;o[tw+22|0]=xw>>>16;o[tw+23|0]=xw>>>24;xw=r[2496]|r[2497]<<8|(r[2498]<<16|r[2499]<<24);yw=r[2492]|r[2493]<<8|(r[2494]<<16|r[2495]<<24);o[tw+8|0]=yw;o[tw+9|0]=yw>>>8;o[tw+10|0]=yw>>>16;o[tw+11|0]=yw>>>24;o[tw+12|0]=xw;o[tw+13|0]=xw>>>8;o[tw+14|0]=xw>>>16;o[tw+15|0]=xw>>>24;xw=r[2488]|r[2489]<<8|(r[2490]<<16|r[2491]<<24);yw=r[2484]|r[2485]<<8|(r[2486]<<16|r[2487]<<24);o[tw|0]=yw;o[tw+1|0]=yw>>>8;o[tw+2|0]=yw>>>16;o[tw+3|0]=yw>>>24;o[tw+4|0]=xw;o[tw+5|0]=xw>>>8;o[tw+6|0]=xw>>>16;o[tw+7|0]=xw>>>24;tw=Ol(Bw,uw,1);if(o[uw+11|0]<=-1){pp(q[uw>>2])}if(tw){break j}if(!zw){break i}tw=0;Aw=q[uw+16>>2];vv=0;while(1){vv=q[Aw+(tw<<2)>>2]|vv;tw=tw+1|0;if((zw|0)!=(tw|0)){continue}break}if(!vv){break i}vv=(z(vv)>>>3^3)+1|0;break h}o[uw|0]=1;tw=q[pw+20>>2];if((tw|0)<0?1:(tw|0)<=0?t[pw+16>>2]>0?0:1:0){Vb(pw,q[pw+4>>2],uw,uw+1|0)}tw=Hl(uw);zw=q[i+4>>2];if(zw){Vh(tw,10-Jd(q[zw+48>>2])|0)}vv=Wh(q[uw+16>>2],w(Aw,q[vv+4>>2]-q[vv>>2]>>2),Aw,tw,pw);Ma(tw,q[tw+4>>2]);tw=0;if(vv){break g}break f}vv=1}o[uw|0]=0;Aw=q[pw+20>>2];tw=Aw;xw=q[pw+16>>2];if((tw|0)<0?1:(tw|0)<=0?xw>>>0>0?0:1:0){Vb(pw,q[pw+4>>2],uw,uw+1|0);xw=q[pw+16>>2];tw=q[pw+20>>2]}o[uw|0]=vv;if((tw|0)<0?1:(tw|0)<=0?xw>>>0>0?0:1:0){Vb(pw,q[pw+4>>2],uw,uw+1|0)}if((Cl(5)|0)!=(vv|0)){if(!zw){break g}tw=0;Aw=pw+4|0;while(1){xw=q[pw+20>>2];if((xw|0)<0?1:(xw|0)<=0?t[pw+16>>2]>0?0:1:0){xw=q[uw+16>>2]+(tw<<2)|0;Vb(pw,q[Aw>>2],xw,vv+xw|0)}tw=tw+1|0;if((zw|0)!=(tw|0)){continue}break}break g}vv=q[pw+20>>2];if((vv|0)>0?1:(vv|0)>=0?t[pw+16>>2]<=0?0:1:0){break g}vv=q[uw+16>>2];Vb(pw,q[pw+4>>2],vv,vv+(zw<<2)|0)}tw=1;i=q[i+36>>2];if(!i){break f}n[q[q[i>>2]+40>>2]](i,pw)|0}i=q[uw+16>>2];if(!i){break b}q[uw+20>>2]=i;pp(i)}T=uw+32|0;return tw|0}To();F()}function Xe(i,vv,pw){i=i|0;vv=vv|0;pw=pw|0;var Fw=0,Gw=0,Hw=0,Iw=0,Jw=0,Kw=0,Lw=0;Fw=vv+4|0;Gw=q[i+8>>2];Hw=Gw+24|0;Iw=o[Hw|0];Ye(i,q[Fw>>2]-q[vv>>2]>>2,Iw,pw);vv=q[vv>>2];Jw=q[Fw>>2];if((vv|0)!=(Jw|0)){i=q[i+32>>2];Kw=q[q[i>>2]>>2]+q[i+48>>2]|0;i=0;Lw=Gw+68|0;while(1){pw=q[vv>>2];Fw=Gw;if(!r[Gw+84|0]){pw=q[q[Lw>>2]+(pw<<2)>>2]}if(!Gd(Fw,pw,o[Hw|0],(i<<2)+Kw|0)){return 0}i=i+Iw|0;vv=vv+4|0;if((Jw|0)!=(vv|0)){continue}break}}return 1}function Ye(i,vv,pw,Mw){var Nw=0,Ow=0,Pw=0,Qw=0;Nw=T-80|0;T=Nw;Ow=mc(Nw+16|0);Pw=q[q[i+8>>2]+56>>2];Qw=pw<<24>>24;pw=w(Cl(5),pw);nc(Ow,Pw,0,Qw,5,pw,pw>>31);pw=zo(96);Ow=qc(pw,Ow);q[Nw+8>>2]=pw;sc(Ow,vv);q[Nw>>2]=0;pw=q[Nw+8>>2];q[Nw+8>>2]=0;Ow=i+32|0;vv=q[Ow>>2];q[Ow>>2]=pw;a:{if(!vv){q[Nw>>2]=0;break a}Ba(vv);vv=q[Nw>>2];q[Nw>>2]=0;if(!vv){break a}Ba(vv)}b:{if(!Mw){break b}i=q[i+32>>2];o[i+84|0]=0;pw=q[i+68>>2];vv=q[i+72>>2]-pw>>2;if(vv>>>0<Mw>>>0){lc(i+68|0,Mw-vv|0,2644);break b}if(vv>>>0<=Mw>>>0){break b}q[i+72>>2]=pw+(Mw<<2)}i=q[Nw+8>>2];q[Nw+8>>2]=0;if(i){Ba(i)}T=Nw+80|0}function Ze(i){i=i|0;var vv=0,pw=0;q[i>>2]=2428;pw=i+36|0;vv=q[pw>>2];q[pw>>2]=0;if(vv){n[q[q[vv>>2]+4>>2]](vv)}q[i>>2]=2108;pw=i+32|0;vv=q[pw>>2];q[pw>>2]=0;if(vv){Ba(vv)}vv=q[i+16>>2];if(vv){q[i+20>>2]=vv;pp(vv)}return i|0}function _e(i){i=i|0;var Mw=0,Rw=0;q[i>>2]=2428;Rw=i+36|0;Mw=q[Rw>>2];q[Rw>>2]=0;if(Mw){n[q[q[Mw>>2]+4>>2]](Mw)}q[i>>2]=2108;Rw=i+32|0;Mw=q[Rw>>2];q[Rw>>2]=0;if(Mw){Ba(Mw)}Mw=q[i+16>>2];if(Mw){q[i+20>>2]=Mw;pp(Mw)}pp(i)}function $e(i,Sw,Tw,Uw,Vw){var Ww=0,Xw=0,Yw=0,Zw=0;Ww=T-32|0;T=Ww;Yw=q[q[q[Sw+4>>2]+8>>2]+(Uw<<2)>>2];a:{b:{if((n[q[q[Sw>>2]+8>>2]](Sw)|0)!=1|Tw+ -1>>>0>5){break b}Zw=n[q[q[Sw>>2]+52>>2]](Sw)|0;Xw=n[q[q[Sw>>2]+60>>2]](Sw,Uw)|0;if(!(Xw?Zw:0)){q[i>>2]=0;break a}Uw=n[q[q[Sw>>2]+56>>2]](Sw,Uw)|0;if(Uw){Sw=q[Sw+56>>2];q[Ww+20>>2]=Uw;q[Ww+16>>2]=Sw;q[Ww+28>>2]=Xw;q[Ww+24>>2]=Xw+12;bf(i,Tw,Yw,Vw,Ww+16|0);if(q[i>>2]){break a}q[i>>2]=0;break b}Sw=q[Sw+56>>2];q[Ww+20>>2]=Zw;q[Ww+16>>2]=Sw;q[Ww+28>>2]=Xw;q[Ww+24>>2]=Xw+12;cf(i,Tw,Yw,Vw,Ww+16|0);if(q[i>>2]){break a}q[i>>2]=0}q[i>>2]=0}T=Ww+32|0}function af(i,Sw,Tw){var Uw=0,Vw=0,_w=0,$w=0,ax=0,bx=0,cx=0,dx=0;q[i>>2]=3364;q[i+4>>2]=Sw;Sw=q[Tw+8>>2];Uw=q[Tw+12>>2];Vw=q[Tw+16>>2];$w=q[Tw+20>>2];ax=q[Tw>>2];bx=q[Tw+4>>2];q[i+40>>2]=0;_w=i+32|0;q[_w>>2]=0;q[_w+4>>2]=0;q[i+24>>2]=Vw;q[i+28>>2]=$w;q[i+16>>2]=Sw;q[i+20>>2]=Uw;q[i+8>>2]=ax;q[i+12>>2]=bx;a:{Sw=q[Tw+28>>2]-q[Tw+24>>2]|0;b:{if(!Sw){break b}Uw=Sw>>2;if(Uw>>>0>=1073741824){break a}Sw=zo(Sw);q[i+32>>2]=Sw;Vw=i+36|0;q[Vw>>2]=Sw;q[i+40>>2]=Sw+(Uw<<2);Uw=q[Tw+24>>2];Tw=q[Tw+28>>2]-Uw|0;if((Tw|0)<1){break b}cx=Vw,dx=vp(Sw,Uw,Tw)+Tw|0,q[cx>>2]=dx}q[i>>2]=6e3;return}To();F()}function bf(i,Sw,Tw,ex,fx){var gx=0;a:{Sw=Sw+ -1|0;b:{if(Sw>>>0>5){break b}c:{switch(Sw-1|0){default:Sw=zo(60);df(Sw,Tw,ex,fx);q[Sw>>2]=2656;break a;case 2:Sw=zo(168);ef(Sw,Tw,ex,fx);break a;case 3:Sw=zo(104);df(Sw,Tw,ex,fx);q[Sw+76>>2]=0;q[Sw+80>>2]=0;q[Sw+60>>2]=0;q[Sw+64>>2]=0;q[Sw>>2]=3668;q[Sw+84>>2]=0;Tw=q[fx+4>>2];q[Sw+88>>2]=q[fx>>2];q[Sw+92>>2]=Tw;Tw=q[fx+12>>2];q[Sw+96>>2]=q[fx+8>>2];q[Sw+100>>2]=Tw;break a;case 0:case 1:break b;case 4:break c}}gx=zo(140);df(gx,Tw,ex,fx);q[gx>>2]=3904;Sw=gx- -64|0;q[Sw>>2]=0;q[Sw+4>>2]=0;Sw=q[fx+4>>2];q[gx+72>>2]=q[fx>>2];q[gx+76>>2]=Sw;Sw=q[fx+12>>2];q[gx+80>>2]=q[fx+8>>2];q[gx+84>>2]=Sw;q[gx+92>>2]=-1;q[gx+96>>2]=-1;q[gx+88>>2]=1;q[gx+60>>2]=4140;q[gx+100>>2]=-1;q[gx+104>>2]=-1;_g(gx+108|0)}q[i>>2]=gx;return}q[i>>2]=Sw}function cf(i,Sw,Tw,ex,fx){var hx=0;a:{Sw=Sw+ -1|0;b:{if(Sw>>>0>5){break b}c:{switch(Sw-1|0){default:Sw=zo(60);ff(Sw,Tw,ex,fx);q[Sw>>2]=4532;break a;case 2:Sw=zo(168);gf(Sw,Tw,ex,fx);break a;case 3:Sw=zo(104);ff(Sw,Tw,ex,fx);q[Sw+76>>2]=0;q[Sw+80>>2]=0;q[Sw+60>>2]=0;q[Sw+64>>2]=0;q[Sw>>2]=5192;q[Sw+84>>2]=0;Tw=q[fx+4>>2];q[Sw+88>>2]=q[fx>>2];q[Sw+92>>2]=Tw;Tw=q[fx+12>>2];q[Sw+96>>2]=q[fx+8>>2];q[Sw+100>>2]=Tw;break a;case 0:case 1:break b;case 4:break c}}hx=zo(140);ff(hx,Tw,ex,fx);q[hx>>2]=5416;Sw=hx- -64|0;q[Sw>>2]=0;q[Sw+4>>2]=0;Sw=q[fx+4>>2];q[hx+72>>2]=q[fx>>2];q[hx+76>>2]=Sw;Sw=q[fx+12>>2];q[hx+80>>2]=q[fx+8>>2];q[hx+84>>2]=Sw;q[hx+92>>2]=-1;q[hx+96>>2]=-1;q[hx+88>>2]=1;q[hx+60>>2]=5636;q[hx+100>>2]=-1;q[hx+104>>2]=-1;_g(hx+108|0)}q[i>>2]=hx;return}q[i>>2]=Sw}function df(i,Sw,Tw,ex){var fx=0,ix=0,jx=0,kx=0,lx=0,mx=0,nx=0,ox=0;q[i>>2]=3364;q[i+4>>2]=Sw;Sw=q[Tw+8>>2];fx=q[Tw+12>>2];ix=q[Tw+16>>2];kx=q[Tw+20>>2];lx=q[Tw>>2];mx=q[Tw+4>>2];q[i+40>>2]=0;jx=i+32|0;q[jx>>2]=0;q[jx+4>>2]=0;q[i+24>>2]=ix;q[i+28>>2]=kx;q[i+16>>2]=Sw;q[i+20>>2]=fx;q[i+8>>2]=lx;q[i+12>>2]=mx;a:{Sw=q[Tw+28>>2]-q[Tw+24>>2]|0;b:{if(!Sw){break b}fx=Sw>>2;if(fx>>>0>=1073741824){break a}Sw=zo(Sw);q[i+32>>2]=Sw;ix=i+36|0;q[ix>>2]=Sw;q[i+40>>2]=Sw+(fx<<2);fx=q[Tw+24>>2];Tw=q[Tw+28>>2]-fx|0;if((Tw|0)<1){break b}nx=ix,ox=vp(Sw,fx,Tw)+Tw|0,q[nx>>2]=ox}q[i>>2]=3308;Sw=q[ex+4>>2];q[i+44>>2]=q[ex>>2];q[i+48>>2]=Sw;Sw=q[ex+12>>2];q[i+52>>2]=q[ex+8>>2];q[i+56>>2]=Sw;return}To();F()}function ef(i,Sw,Tw,ex){df(i,Sw,Tw,ex);q[i+60>>2]=0;q[i+64>>2]=0;q[i>>2]=3420;q[i+68>>2]=0;q[i+72>>2]=0;q[i+76>>2]=0;q[i+80>>2]=0;q[i+84>>2]=0;q[i+88>>2]=0;q[i+92>>2]=0;q[i+96>>2]=0;q[i+100>>2]=0;q[i+104>>2]=0;q[i+108>>2]=0;Oh(i+112|0);q[i+160>>2]=0;q[i+152>>2]=0;q[i+156>>2]=0}function ff(i,Sw,Tw,ex){var px=0,qx=0,rx=0,sx=0,tx=0,ux=0,vx=0,wx=0;q[i>>2]=3364;q[i+4>>2]=Sw;Sw=q[Tw+8>>2];px=q[Tw+12>>2];qx=q[Tw+16>>2];sx=q[Tw+20>>2];tx=q[Tw>>2];ux=q[Tw+4>>2];q[i+40>>2]=0;rx=i+32|0;q[rx>>2]=0;q[rx+4>>2]=0;q[i+24>>2]=qx;q[i+28>>2]=sx;q[i+16>>2]=Sw;q[i+20>>2]=px;q[i+8>>2]=tx;q[i+12>>2]=ux;a:{Sw=q[Tw+28>>2]-q[Tw+24>>2]|0;b:{if(!Sw){break b}px=Sw>>2;if(px>>>0>=1073741824){break a}Sw=zo(Sw);q[i+32>>2]=Sw;qx=i+36|0;q[qx>>2]=Sw;q[i+40>>2]=Sw+(px<<2);px=q[Tw+24>>2];Tw=q[Tw+28>>2]-px|0;if((Tw|0)<1){break b}vx=qx,wx=vp(Sw,px,Tw)+Tw|0,q[vx>>2]=wx}q[i>>2]=4900;Sw=q[ex+4>>2];q[i+44>>2]=q[ex>>2];q[i+48>>2]=Sw;Sw=q[ex+12>>2];q[i+52>>2]=q[ex+8>>2];q[i+56>>2]=Sw;return}To();F()}function gf(i,Sw,Tw,ex){ff(i,Sw,Tw,ex);q[i+60>>2]=0;q[i+64>>2]=0;q[i>>2]=4956;q[i+68>>2]=0;q[i+72>>2]=0;q[i+76>>2]=0;q[i+80>>2]=0;q[i+84>>2]=0;q[i+88>>2]=0;q[i+92>>2]=0;q[i+96>>2]=0;q[i+100>>2]=0;q[i+104>>2]=0;q[i+108>>2]=0;Oh(i+112|0);q[i+160>>2]=0;q[i+152>>2]=0;q[i+156>>2]=0}function hf(i){i=i|0;var Sw=0;q[i>>2]=3364;Sw=q[i+32>>2];if(Sw){q[i+36>>2]=Sw;pp(Sw)}return i|0}function jf(i){i=i|0;var Tw=0;q[i>>2]=3364;Tw=q[i+32>>2];if(Tw){q[i+36>>2]=Tw;pp(Tw)}pp(i)}function kf(i){i=i|0;return q[i+4>>2]}function lf(i){i=i|0;var ex=0;if(!(!q[i+52>>2]|(!q[i+44>>2]|!q[i+48>>2]))){ex=q[i+56>>2]!=0}return ex|0}function mf(i,q){i=i|0;q=q|0;return-1}function nf(i,xx){i=i|0;xx=xx|0;var yx=0,zx=0,Ax=0,Bx=0;yx=T-16|0;T=yx;q[yx+12>>2]=q[i+12>>2];zx=q[xx+20>>2];Ax=zx;Bx=q[xx+16>>2];if((zx|0)<0?1:(zx|0)<=0?Bx>>>0>0?0:1:0){Vb(xx,q[xx+4>>2],yx+12|0,yx+16|0);Bx=q[xx+16>>2];Ax=q[xx+20>>2]}q[yx+8>>2]=q[i+16>>2];if((Ax|0)<0?1:(Ax|0)<=0?Bx>>>0>0?0:1:0){Vb(xx,q[xx+4>>2],yx+8|0,yx+12|0)}T=yx+16|0;return 1}function of(i,xx,Cx,Dx,Ex,Fx){i=i|0;xx=xx|0;Cx=Cx|0;Dx=Dx|0;Ex=Ex|0;Fx=Fx|0;var Gx=0,Hx=0,Ix=0,Jx=0,Kx=0,Lx=0,Mx=0,Nx=0,Ox=0,Px=0,Qx=0,Rx=0,Sx=0,Tx=0,Ux=0,Vx=0,Wx=0,Xx=0,Yx=0,Zx=0,_x=0;q[i+8>>2]=Ex;Gx=i+32|0;Kx=q[Gx>>2];Fx=q[i+36>>2]-Kx>>2;a:{if(Fx>>>0<Ex>>>0){pf(Gx,Ex-Fx|0);break a}if(Fx>>>0<=Ex>>>0){break a}q[i+36>>2]=Kx+(Ex<<2)}b:{if(!Dx){break b}Kx=1;Gx=q[xx>>2];c:{if((Dx|0)<=1){Fx=Gx;break c}Fx=Gx;while(1){Ix=q[(Kx<<2)+xx>>2];Ox=(Ix|0)<(Fx|0);Fx=Ox?Ix:Fx;Gx=Ox?Gx:(Ix|0)>(Gx|0)?Ix:Gx;Kx=Kx+1|0;if((Kx|0)!=(Dx|0)){continue}break}}q[i+16>>2]=Gx;q[i+12>>2]=Fx;Dx=(Gx>>31)-((Fx>>31)+(Gx>>>0<Fx>>>0)|0)|0;Fx=Gx-Fx|0;if(!Dx&Fx>>>0>2147483646|Dx>>>0>0){break b}Dx=Fx+1|0;q[i+20>>2]=Dx;Gx=i+24|0;Fx=(Dx|0)/2|0;q[Gx>>2]=Fx;q[i+28>>2]=0-Fx;if(Dx&1){break b}q[Gx>>2]=Fx+ -1}Dx=(Ex&1073741823)!=(Ex|0)?-1:Ex<<2;Kx=wp(zo(Dx),0,Dx);Dx=q[i+56>>2];Tx=q[Dx>>2];Dx=q[Dx+4>>2]-Tx|0;if((Dx|0)>=5){Sx=q[i+48>>2];_x=q[i+52>>2];Nx=i+8|0;Px=i+16|0;Qx=i+32|0;Wx=i+12|0;Xx=i+28|0;Rx=i+20|0;Yx=i+24|0;Zx=Dx>>2;Ix=Zx;while(1){Ox=Ix;d:{e:{Ix=Ix+ -1|0;if(Zx>>>0>Ix>>>0){Fx=w(Ex,Ix);Dx=q[(Ix<<2)+Tx>>2];if((Dx|0)==-1|q[q[Sx>>2]+(Dx>>>3&536870908)>>2]>>>(Dx&31)&1){break e}Dx=q[q[q[Sx+64>>2]+12>>2]+(Dx<<2)>>2];if((Dx|0)==-1){break e}Hx=q[_x>>2];Gx=q[Sx+28>>2];Jx=q[Hx+(q[Gx+(Dx<<2)>>2]<<2)>>2];if((Jx|0)>=(Ix|0)){break e}Lx=Dx+1|0;Lx=q[Hx+(q[Gx+(((Lx>>>0)%3|0?Lx:Dx+ -2|0)<<2)>>2]<<2)>>2];if((Lx|0)>=(Ix|0)){break e}Dx=q[Hx+(q[Gx+(Dx+((Dx>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((Dx|0)>=(Ix|0)){break e}if((Ex|0)>=1){Dx=w(Dx,Ex);Hx=w(Ex,Lx);Jx=w(Ex,Jx);Gx=0;while(1){q[(Gx<<2)+Kx>>2]=(q[(Dx+Gx<<2)+xx>>2]+q[(Gx+Hx<<2)+xx>>2]|0)-q[(Gx+Jx<<2)+xx>>2];Gx=Gx+1|0;if((Gx|0)!=(Ex|0)){continue}break}}Dx=q[Nx>>2];if((Dx|0)<1){break d}Fx=Fx<<2;Ux=Fx+Cx|0;Vx=xx+Fx|0;Fx=Kx;Hx=0;while(1){Gx=0;f:{if((Dx|0)<=0){Dx=q[Qx>>2];break f}while(1){Jx=Gx<<2;Lx=q[Jx+Fx>>2];Mx=q[Px>>2];g:{if((Lx|0)>(Mx|0)){Dx=q[Qx>>2];q[Jx+Dx>>2]=Mx;break g}Dx=q[Qx>>2];Jx=Jx+Dx|0;Mx=q[Wx>>2];if((Lx|0)<(Mx|0)){q[Jx>>2]=Mx;break g}q[Jx>>2]=Lx}Gx=Gx+1|0;if((Gx|0)<q[Nx>>2]){continue}break}}Gx=Hx<<2;Fx=Gx+Ux|0;Gx=q[Gx+Vx>>2]-q[Dx+Gx>>2]|0;q[Fx>>2]=Gx;h:{if((Gx|0)<q[Xx>>2]){Gx=Gx+q[Rx>>2]|0}else{if((Gx|0)<=q[Yx>>2]){break h}Gx=Gx-q[Rx>>2]|0}q[Fx>>2]=Gx}Fx=Dx;Hx=Hx+1|0;Dx=q[Nx>>2];if((Hx|0)<(Dx|0)){continue}break}break d}Uo();F()}Dx=q[Nx>>2];if((Dx|0)<1){break d}Fx=Fx<<2;Ux=Fx+Cx|0;Vx=xx+Fx|0;Fx=(w(Ox+ -2|0,Ex)<<2)+xx|0;Hx=0;while(1){Gx=0;i:{if((Dx|0)<=0){Dx=q[Qx>>2];break i}while(1){Jx=Gx<<2;Lx=q[Jx+Fx>>2];Mx=q[Px>>2];j:{if((Lx|0)>(Mx|0)){Dx=q[Qx>>2];q[Jx+Dx>>2]=Mx;break j}Dx=q[Qx>>2];Jx=Jx+Dx|0;Mx=q[Wx>>2];if((Lx|0)<(Mx|0)){q[Jx>>2]=Mx;break j}q[Jx>>2]=Lx}Gx=Gx+1|0;if((Gx|0)<q[Nx>>2]){continue}break}}Gx=Hx<<2;Fx=Gx+Ux|0;Gx=q[Gx+Vx>>2]-q[Dx+Gx>>2]|0;q[Fx>>2]=Gx;k:{if((Gx|0)<q[Xx>>2]){Gx=Gx+q[Rx>>2]|0}else{if((Gx|0)<=q[Yx>>2]){break k}Gx=Gx-q[Rx>>2]|0}q[Fx>>2]=Gx}Fx=Dx;Hx=Hx+1|0;Dx=q[Nx>>2];if((Hx|0)<(Dx|0)){continue}break}}if((Ox|0)>2){continue}break}}if((Ex|0)>=1){wp(Kx,0,Ex<<2)}Ix=i+8|0;Dx=q[Ix>>2];if((Dx|0)>=1){Qx=i+16|0;Fx=i+32|0;Rx=i+12|0;Sx=i+28|0;Ox=i+20|0;Tx=i+24|0;i=Kx;Hx=0;while(1){Gx=0;l:{if((Dx|0)<=0){Dx=q[Fx>>2];break l}while(1){Ex=Gx<<2;Nx=q[Ex+i>>2];Px=q[Qx>>2];m:{if((Nx|0)>(Px|0)){Dx=q[Fx>>2];q[Ex+Dx>>2]=Px;break m}Dx=q[Fx>>2];Ex=Ex+Dx|0;Px=q[Rx>>2];if((Nx|0)<(Px|0)){q[Ex>>2]=Px;break m}q[Ex>>2]=Nx}Gx=Gx+1|0;if((Gx|0)<q[Ix>>2]){continue}break}}Ex=Hx<<2;i=Ex+Cx|0;Ex=q[xx+Ex>>2]-q[Dx+Ex>>2]|0;q[i>>2]=Ex;n:{if((Ex|0)<q[Sx>>2]){Ex=Ex+q[Ox>>2]|0}else{if((Ex|0)<=q[Tx>>2]){break n}Ex=Ex-q[Ox>>2]|0}q[i>>2]=Ex}i=Dx;Hx=Hx+1|0;Dx=q[Ix>>2];if((Hx|0)<(Dx|0)){continue}break}}pp(Kx);return 1}function pf(i,xx){var Cx=0,Dx=0,Ex=0,Fx=0,$x=0,ay=0,by=0,cy=0,dy=0;Dx=q[i+8>>2];Ex=i+4|0;Cx=q[Ex>>2];if(Dx-Cx>>2>>>0>=xx>>>0){i=xx<<2;cy=Ex,dy=wp(Cx,0,i)+i|0,q[cy>>2]=dy;return}a:{Ex=q[i>>2];$x=Cx-Ex|0;Cx=$x>>2;Fx=Cx+xx|0;if(Fx>>>0<1073741824){by=Cx<<2;Dx=Dx-Ex|0;Cx=Dx>>1;Dx=Dx>>2>>>0<536870911?Cx>>>0<Fx>>>0?Fx:Cx:1073741823;Cx=0;b:{if(!Dx){break b}if(Dx>>>0>=1073741824){break a}ay=zo(Dx<<2);Cx=ay}wp(by+Cx|0,0,xx<<2);xx=Cx+(Fx<<2)|0;Fx=Cx+(Dx<<2)|0;if(($x|0)>=1){vp(ay,Ex,$x)}q[i>>2]=Cx;q[i+8>>2]=Fx;q[i+4>>2]=xx;if(Ex){pp(Ex)}return}To();F()}Qb(2576);F()}function qf(i){i=i|0;var xx=0;q[i>>2]=3420;xx=q[i+152>>2];if(xx){q[i+156>>2]=xx;pp(xx)}xx=q[i+112>>2];if(xx){q[i+116>>2]=xx;pp(xx)}xx=q[i+96>>2];if(xx){pp(xx)}xx=q[i+84>>2];if(xx){pp(xx)}xx=q[i+72>>2];if(xx){pp(xx)}xx=q[i+60>>2];if(xx){pp(xx)}q[i>>2]=3364;xx=q[i+32>>2];if(xx){q[i+36>>2]=xx;pp(xx)}return i|0}function rf(i){i=i|0;pp(qf(i))}function sf(i){i=i|0;return 4}function tf(i,ey){i=i|0;ey=ey|0;var fy=0,gy=0,hy=0,iy=0,jy=0,ky=0,ly=0,my=0;gy=T-32|0;T=gy;ky=1;while(1){jy=w(fy,12)+i|0;hy=jy- -64|0;td(q[hy>>2],ey);fy=fy+1|0;if(q[hy>>2]){iy=_g(gy);bh(iy);hy=q[hy>>2]-fy|0;if((hy|0)>=0){my=jy+60|0;while(1){jy=0;while(1){ly=hy+jy|0;ch(iy,q[q[my>>2]+(ly>>>3&536870908)>>2]>>>(ly&31)&1);jy=jy+1|0;if((ky|0)!=(jy|0)){continue}break}hy=hy-fy|0;if((hy|0)>=0){continue}break}}eh(iy,ey);$g(iy)}ky=ky+1|0;if((fy|0)!=4){continue}break}q[gy>>2]=q[i+12>>2];ky=q[ey+20>>2];fy=ky;iy=q[ey+16>>2];if((fy|0)<0?1:(fy|0)<=0?iy>>>0>0?0:1:0){Vb(ey,q[ey+4>>2],gy,gy+4|0);iy=q[ey+16>>2];fy=q[ey+20>>2]}q[gy>>2]=q[i+16>>2];if((fy|0)<0?1:(fy|0)<=0?iy>>>0>0?0:1:0){Vb(ey,q[ey+4>>2],gy,gy+4|0)}T=gy+32|0;return 1}function uf(i,ey,ny,oy,py,qy){i=i|0;ey=ey|0;ny=ny|0;oy=oy|0;py=py|0;qy=qy|0;var ry=0,sy=0,ty=0,uy=0,vy=0,wy=0,xy=0,yy=0,zy=0,Ay=0,By=0,Cy=0,Dy=0,Ey=0,Fy=0,Gy=0,Hy=0,Iy=0,Jy=0,Ky=0,Ly=0,My=0,Ny=0,Oy=0,Py=0,Qy=0,Ry=0,Sy=0,Ty=0,Uy=0,Vy=0,Wy=0,Xy=0,Yy=0,Zy=0,_y=0,$y=0,az=0,bz=0,cz=0,dz=0;sy=T-240|0;T=sy;q[i+8>>2]=py;ty=i+32|0;ry=q[ty>>2];qy=q[i+36>>2]-ry>>2;a:{if(qy>>>0<py>>>0){pf(ty,py-qy|0);break a}if(qy>>>0<=py>>>0){break a}q[i+36>>2]=ry+(py<<2)}b:{if(!oy){break b}uy=1;ry=q[ey>>2];c:{if((oy|0)<=1){ty=ry;break c}ty=ry;while(1){qy=q[(uy<<2)+ey>>2];vy=(qy|0)<(ty|0);ty=vy?qy:ty;ry=vy?ry:(qy|0)>(ry|0)?qy:ry;uy=uy+1|0;if((uy|0)!=(oy|0)){continue}break}}q[i+16>>2]=ry;q[i+12>>2]=ty;oy=ty;qy=(ry>>31)-((ry>>>0<oy>>>0)+(oy>>31)|0)|0;oy=ry-oy|0;if(!qy&oy>>>0>2147483646|qy>>>0>0){break b}oy=oy+1|0;q[i+20>>2]=oy;ty=i+24|0;qy=(oy|0)/2|0;q[ty>>2]=qy;q[i+28>>2]=0-qy;if(oy&1){break b}q[ty>>2]=qy+ -1}Xy=q[i+52>>2];Cy=q[i+48>>2];q[sy+200>>2]=0;q[sy+204>>2]=0;q[sy+192>>2]=0;q[sy+196>>2]=0;q[sy+184>>2]=0;q[sy+188>>2]=0;oy=sy+176|0;q[oy>>2]=0;q[oy+4>>2]=0;q[sy+168>>2]=0;q[sy+172>>2]=0;q[sy+160>>2]=0;q[sy+164>>2]=0;d:{if(!py){uy=0;oy=0;break d}pf(sy+160|0,py);uy=q[oy>>2];oy=q[sy+172>>2]}qy=uy-oy>>2;e:{if(qy>>>0>=py>>>0){if(qy>>>0<=py>>>0){break e}q[sy+176>>2]=oy+(py<<2);break e}pf(sy+160|12,py-qy|0)}qy=q[sy+184>>2];oy=q[sy+188>>2]-qy>>2;f:{if(oy>>>0>=py>>>0){if(oy>>>0<=py>>>0){break f}q[sy+188>>2]=qy+(py<<2);break f}pf(sy+184|0,py-oy|0)}qy=q[sy+196>>2];oy=q[sy+200>>2]-qy>>2;g:{if(oy>>>0>=py>>>0){if(oy>>>0<=py>>>0){break g}q[sy+200>>2]=qy+(py<<2);break g}pf(sy+196|0,py-oy|0)}q[sy+152>>2]=0;q[sy+144>>2]=0;q[sy+148>>2]=0;h:{i:{if(py){if(py>>>0>=1073741824){break i}oy=py<<2;qy=zo(oy);q[sy+144>>2]=qy;ty=oy+qy|0;q[sy+152>>2]=ty;wp(qy,0,oy);q[sy+148>>2]=ty}My=i+152|0;qy=q[i+152>>2];oy=q[i+156>>2]-qy>>2;j:{if(oy>>>0<py>>>0){pf(My,py-oy|0);break j}if(oy>>>0<=py>>>0){break j}q[i+156>>2]=qy+(py<<2)}q[sy+120>>2]=0;q[sy+124>>2]=0;q[sy+112>>2]=0;q[sy+116>>2]=0;q[sy+104>>2]=0;q[sy+108>>2]=0;q[sy+96>>2]=0;q[sy+100>>2]=0;q[sy+88>>2]=0;q[sy+92>>2]=0;q[sy+80>>2]=0;q[sy+84>>2]=0;q[sy+72>>2]=0;q[sy+76>>2]=0;q[sy+64>>2]=0;q[sy+68>>2]=0;q[sy+56>>2]=0;q[sy+48>>2]=0;q[sy+52>>2]=0;if(py){oy=py<<2;Iy=zo(oy);q[sy+48>>2]=Iy;Ny=oy+Iy|0;q[sy+56>>2]=Ny;wp(Iy,0,oy);q[sy+52>>2]=Ny}oy=q[i+56>>2];uy=q[oy>>2];oy=q[oy+4>>2]-uy|0;if((oy|0)<5){break h}Jy=oy>>>2;ty=Jy+ -1|0;if(oy>>2>>>0>ty>>>0){Qy=py<<2;Oy=i+112|0;Yy=sy+141|0;Ry=sy+36|0;Sy=sy+24|0;Dy=sy+20|0;Zy=Dy+24|0;Ty=Dy+16|0;Py=i+152|0;_y=i+28|0;Uy=i+20|0;while(1){qy=0;Ey=ty;oy=q[(ty<<2)+uy>>2];k:{if((oy|0)==-1){break k}vy=oy+((oy>>>0)%3|0?-1:2)|0;Ay=vy>>>5;ty=1;Fy=1<<(vy&31);yy=q[Cy>>2];wy=0;uy=oy;while(1){l:{if(q[yy+(uy>>>3&536870908)>>2]>>>(uy&31)&1){break l}qy=q[q[q[Cy+64>>2]+12>>2]+(uy<<2)>>2];if((qy|0)==-1){break l}xy=q[Xy>>2];ry=q[Cy+28>>2];Gy=q[xy+(q[ry+(qy<<2)>>2]<<2)>>2];if((Gy|0)>=(Ey|0)){break l}zy=qy+1|0;zy=q[xy+(q[ry+(((zy>>>0)%3|0?zy:qy+ -2|0)<<2)>>2]<<2)>>2];if((zy|0)>=(Ey|0)){break l}qy=q[xy+(q[ry+(qy+((qy>>>0)%3|0?-1:2)<<2)>>2]<<2)>>2];if((qy|0)>=(Ey|0)){break l}if((py|0)>=1){xy=q[(sy+160|0)+w(wy,12)>>2];qy=w(py,qy);zy=w(py,zy);Gy=w(py,Gy);ry=0;while(1){q[xy+(ry<<2)>>2]=(q[(qy+ry<<2)+ey>>2]+q[(ry+zy<<2)+ey>>2]|0)-q[(ry+Gy<<2)+ey>>2];ry=ry+1|0;if((ry|0)!=(py|0)){continue}break}}qy=4;wy=wy+1|0;if((wy|0)==4){break k}}m:{if(ty&1){ry=-1;qy=uy+1|0;qy=(qy>>>0)%3|0?qy:uy+ -2|0;if((qy|0)==-1|q[q[Cy>>2]+(qy>>>3&536870908)>>2]>>>(qy&31)&1){break m}qy=q[q[q[Cy+64>>2]+12>>2]+(qy<<2)>>2];if((qy|0)==-1){break m}ry=qy+1|0;ry=(ry>>>0)%3|0?ry:qy+ -2|0;break m}ry=-1;qy=((uy>>>0)%3|0?-1:2)+uy|0;if((qy|0)==-1|q[q[Cy>>2]+(qy>>>3&536870908)>>2]>>>(qy&31)&1){break m}qy=q[q[q[Cy+64>>2]+12>>2]+(qy<<2)>>2];if((qy|0)==-1){break m}if((qy>>>0)%3){ry=qy+ -1|0;break m}ry=qy+2|0}if((oy|0)==(ry|0)){qy=wy;break k}uy=ry;qy=(ry|0)!=-1;ry=(qy|ty^-1)&1;uy=ry?uy:-1;ty=qy&ty;if(!((vy|0)==-1|ry)){if(Fy&q[q[Cy>>2]+(Ay<<2)>>2]){qy=wy;break k}qy=q[q[q[Cy+64>>2]+12>>2]+(vy<<2)>>2];if((qy|0)==-1){qy=wy;break k}if((qy>>>0)%3){uy=qy+ -1|0}else{uy=qy+2|0}ty=0}qy=wy;if((uy|0)!=-1){continue}break}}uy=0;o[sy+16|0]=0;q[sy+8>>2]=0;q[sy+12>>2]=0;q[Zy>>2]=0;q[Ty>>2]=0;q[Ty+4>>2]=0;oy=Dy;q[oy+8>>2]=0;q[oy+12>>2]=0;q[oy>>2]=0;q[oy+4>>2]=0;Vy=w(py,Ey)<<2;Gy=Vy+ey|0;wy=(w(Jy+ -2|0,py)<<2)+ey|0;vy=q[Py>>2];ty=0;if((py|0)>0){while(1){ry=ty<<2;oy=q[ry+wy>>2]-q[ry+Gy>>2]|0;q[ry+Iy>>2]=oy;Fy=ry+vy|0;ry=oy>>31;q[Fy>>2]=ry^oy<<1;uy=(ry^oy+ry)+uy|0;ty=ty+1|0;if((ty|0)!=(py|0)){continue}break}}Ph(sy+216|0,Oy,vy,py);oy=Sh(sy+216|0);ry=V;vy=Th(sy+216|0);ty=vy+oy|0;oy=V+ry|0;oy=ty>>>0<vy>>>0?oy+1|0:oy;ry=ty;zy=(qy|0)>0;if(zy){xy=(qy<<3)+ -8|0;vy=xy+(sy- -64|0)|0;Ay=vy;Ky=vy;ty=q[vy+4>>2];Fy=qy+q[vy>>2]|0;if(Fy>>>0<qy>>>0){ty=ty+1|0}vy=Fy;q[Ky>>2]=vy;q[Ay+4>>2]=ty;By=D(Nh(vy,q[xy+(sy+96|0)>>2])*(+(vy>>>0)+4294967296*+(ty|0)));n:{if(y(By)<0x8000000000000000){vy=y(By)>=1?By>0?~~A(C(By/4294967296),4294967295)>>>0:~~D((By- +(~~By>>>0>>>0))/4294967296)>>>0:0;ty=~~By>>>0;break n}vy=-2147483648;ty=0}oy=oy+vy|0;ty=ry+ty|0;if(ty>>>0<ry>>>0){oy=oy+1|0}ry=ty}q[sy+20>>2]=0;o[sy+16|0]=0;q[sy+8>>2]=ry;q[sy+12>>2]=uy;cc(Sy,wy,wy+Qy|0);vf(Ry,Iy,Ny);if((qy|0)>=1){Ay=(sy+140|0)+qy|0;Fy=Ay+ -2|0;xy=Ay+ -1|0;oy=(qy<<3)+ -8|0;Wy=oy+(sy- -64|0)|0;$y=oy+(sy+96|0)|0;wy=1;Ly=0;while(1){wp(sy+140|0,1,qy);Ly=Ly+1|0;wp(sy+140|0,0,Ly);az=q[sy+52>>2];bz=q[sy+48>>2];o:{p:while(1){ty=(py|0)<1;if(!ty){wp(q[sy+144>>2],0,Qy)}oy=0;vy=q[sy+144>>2];yy=0;while(1){if(!r[(sy+140|0)+oy|0]){if(!ty){uy=q[(sy+160|0)+w(oy,12)>>2];ry=0;while(1){Hy=ry<<2;Ky=Hy+vy|0;q[Ky>>2]=q[Ky>>2]+q[uy+Hy>>2];ry=ry+1|0;if((ry|0)!=(py|0)){continue}break}}yy=1<<oy|yy}oy=oy+1|0;if((qy|0)!=(oy|0)){continue}break}ry=0;q:{if((py|0)>0){Hy=q[sy+144>>2];while(1){oy=Hy+(ry<<2)|0;q[oy>>2]=q[oy>>2]/(wy|0);ry=ry+1|0;if((ry|0)!=(py|0)){continue}break}vy=0;oy=q[Py>>2];if((py|0)<=0){break q}ty=0;while(1){uy=ty<<2;ry=q[uy+Hy>>2]-q[uy+Gy>>2]|0;q[uy+Iy>>2]=ry;Ky=oy+uy|0;uy=ry>>31;q[Ky>>2]=uy^ry<<1;vy=(uy^ry+uy)+vy|0;ty=ty+1|0;if((ty|0)!=(py|0)){continue}break}break q}oy=q[Py>>2];vy=0}Ph(sy+216|0,Oy,oy,py);ty=Sh(sy+216|0)+Th(sy+216|0)|0;ry=ty;if(zy){oy=q[Wy+4>>2];ty=q[Wy>>2];By=D(Nh(ty,q[$y>>2]+wy|0)*(+(ty>>>0)+4294967296*+(oy|0)));r:{if(y(By)<0x8000000000000000){oy=~~By>>>0;break r}oy=0}ry=oy+ry|0}oy=q[sy+8>>2];if(!((ry|0)>(oy|0)|(vy|0)>=q[sy+12>>2]?(ry|0)>=(oy|0):0)){q[sy+20>>2]=wy;o[sy+16|0]=yy;q[sy+8>>2]=ry;q[sy+12>>2]=vy;vf(Sy,q[sy+144>>2],q[sy+148>>2]);vf(Ry,bz,az)}if((xy|0)==(sy+140|0)){break o}uy=-1;oy=r[xy|0];ry=oy;while(1){vy=ry&255;ty=uy+ -1|0;yy=ty+Ay|0;ry=r[yy|0];if(ry>>>0<vy>>>0){vy=xy;ty=Ay;if(ry>>>0>=(oy&255)>>>0){while(1){oy=vy;vy=oy+ -1|0;Hy=ty+ -2|0;ty=oy;if(ry>>>0>=r[Hy|0]){continue}break}oy=1}ty=uy+Ay|0;o[yy|0]=oy;o[vy|0]=ry;ry=xy;if((uy|0)==-1){continue p}while(1){oy=r[ty|0];o[ty|0]=r[ry|0];o[ry|0]=oy;ty=ty+1|0;ry=ry+ -1|0;if(ty>>>0<ry>>>0){continue}break}continue p}uy=ty;if((yy|0)!=(sy+140|0)){continue}break}break}if(xy>>>0<=sy+140>>>0){break o}ty=r[sy+140|0];o[sy+140|0]=oy;o[xy|0]=ty;uy=Yy;ry=Fy;if(uy>>>0>=ry>>>0){break o}while(1){oy=r[uy|0];o[uy|0]=r[ry|0];o[ry|0]=oy;uy=uy+1|0;ry=ry+ -1|0;if(uy>>>0<ry>>>0){continue}break}}wy=wy+1|0;if((qy|0)!=(Ly|0)){continue}break}}if(zy){oy=((qy<<3)+sy|0)+88|0;ry=oy;vy=q[sy+20>>2];uy=vy;ty=uy+q[oy>>2]|0;oy=q[oy+4>>2]+(uy>>31)|0;q[ry>>2]=ty;q[ry+4>>2]=ty>>>0<uy>>>0?oy+1|0:oy}s:{if((py|0)<=0){ty=q[My>>2];break s}ty=q[My>>2];ry=0;vy=q[sy+36>>2];while(1){uy=ry<<2;oy=q[uy+vy>>2];q[ty+uy>>2]=oy<<1^oy>>31;ry=ry+1|0;if((ry|0)!=(py|0)){continue}break}}Rh(sy+216|0,Oy,ty,py);t:{if(!zy){break t}oy=w(qy,12)+i|0;xy=oy+56|0;vy=oy+52|0;oy=oy+48|0;uy=0;while(1){u:{wy=q[xy>>2];ty=wy<<5;ry=q[vy>>2];v:{if(!(r[sy+16|0]>>>uy&1)){if((ry|0)==(ty|0)){if((ry+1|0)<=-1){break u}ty=oy;if(ry>>>0<=1073741822){ry=ry+32&-32;wy=wy<<6;ry=wy>>>0<ry>>>0?ry:wy}else{ry=2147483647}Oe(ty,ry);ry=q[vy>>2]}q[vy>>2]=ry+1;ty=q[oy>>2]+(ry>>>3&536870908)|0;q[ty>>2]=q[ty>>2]|1<<(ry&31);break v}if((ry|0)==(ty|0)){if((ry+1|0)<=-1){break u}ty=oy;if(ry>>>0<=1073741822){ry=ry+32&-32;wy=wy<<6;ry=wy>>>0<ry>>>0?ry:wy}else{ry=2147483647}Oe(ty,ry);ry=q[vy>>2]}q[vy>>2]=ry+1;ty=q[oy>>2]+(ry>>>3&536870908)|0;wy=q[ty>>2];cz=ty,dz=Yp(-2,ry)&wy,q[cz>>2]=dz}uy=uy+1|0;if((uy|0)!=(qy|0)){continue}break t}break}To();F()}ty=i+8|0;uy=q[ty>>2];if((uy|0)>=1){wy=ny+Vy|0;qy=q[sy+24>>2];yy=0;while(1){ry=0;w:{if((uy|0)<=0){vy=q[i+32>>2];break w}while(1){oy=ry<<2;uy=q[oy+qy>>2];xy=q[i+16>>2];x:{if((uy|0)>(xy|0)){vy=q[i+32>>2];q[oy+vy>>2]=xy;break x}vy=q[i+32>>2];oy=oy+vy|0;xy=q[i+12>>2];if((uy|0)<(xy|0)){q[oy>>2]=xy;break x}q[oy>>2]=uy}ry=ry+1|0;if((ry|0)<q[ty>>2]){continue}break}}qy=yy<<2;oy=qy+wy|0;qy=q[qy+Gy>>2]-q[qy+vy>>2]|0;q[oy>>2]=qy;y:{if((qy|0)<q[_y>>2]){qy=qy+q[Uy>>2]|0}else{if((qy|0)<=q[i+24>>2]){break y}qy=qy-q[Uy>>2]|0}q[oy>>2]=qy}qy=vy;yy=yy+1|0;uy=q[ty>>2];if((yy|0)<(uy|0)){continue}break}}oy=q[sy+36>>2];if(oy){q[sy+40>>2]=oy;pp(oy)}oy=q[sy+24>>2];if(oy){q[sy+28>>2]=oy;pp(oy)}if((Jy|0)<3){break h}Jy=Ey;oy=q[i+56>>2];uy=q[oy>>2];ty=Ey+ -1|0;if(q[oy+4>>2]-uy>>2>>>0>ty>>>0){continue}break}}Uo();F()}To();F()}ry=0;vy=q[sy+160>>2];if((py|0)>0){while(1){q[(ry<<2)+vy>>2]=0;ry=ry+1|0;if((ry|0)!=(py|0)){continue}break}}ty=i+8|0;uy=q[ty>>2];if((uy|0)>=1){Ey=i+16|0;qy=i+32|0;xy=i+12|0;Ay=i+28|0;wy=i+20|0;Jy=i+24|0;i=0;while(1){ry=0;z:{if((uy|0)<=0){uy=q[qy>>2];break z}while(1){oy=ry<<2;py=q[oy+vy>>2];Dy=q[Ey>>2];A:{if((py|0)>(Dy|0)){uy=q[qy>>2];q[oy+uy>>2]=Dy;break A}uy=q[qy>>2];oy=oy+uy|0;Dy=q[xy>>2];if((py|0)<(Dy|0)){q[oy>>2]=Dy;break A}q[oy>>2]=py}ry=ry+1|0;if((ry|0)<q[ty>>2]){continue}break}}py=i<<2;oy=py+ny|0;py=q[ey+py>>2]-q[py+uy>>2]|0;q[oy>>2]=py;B:{if((py|0)<q[Ay>>2]){py=py+q[wy>>2]|0}else{if((py|0)<=q[Jy>>2]){break B}py=py-q[wy>>2]|0}q[oy>>2]=py}vy=uy;i=i+1|0;uy=q[ty>>2];if((i|0)<(uy|0)){continue}break}}i=q[sy+48>>2];if(i){q[sy+52>>2]=i;pp(i)}i=q[sy+144>>2];if(i){q[sy+148>>2]=i;pp(i)}i=q[sy+196>>2];if(i){q[sy+200>>2]=i;pp(i)}i=q[sy+184>>2];if(i){q[sy+188>>2]=i;pp(i)}i=q[sy+172>>2];if(i){q[sy+176>>2]=i;pp(i)}i=q[sy+160>>2];if(i){q[sy+164>>2]=i;pp(i)}T=sy+240|0;return 1}function vf(i,ey,ny){var oy=0,py=0,qy=0,ez=0,fz=0,gz=0;a:{qy=ny-ey>>2;oy=q[i+8>>2];py=q[i>>2];b:{if(qy>>>0<=oy-py>>2>>>0){ez=q[i+4>>2]-py|0;oy=ez+ey|0;fz=ez>>2;gz=qy>>>0>fz>>>0?oy:ny;ez=gz-ey|0;if(ez){xp(py,ey,ez)}if(qy>>>0>fz>>>0){if((ny|0)==(gz|0)){break b}ey=q[i+4>>2];while(1){q[ey>>2]=q[oy>>2];ey=ey+4|0;oy=oy+4|0;if((oy|0)!=(ny|0)){continue}break}q[i+4>>2]=ey;return}q[i+4>>2]=py+(ez>>2<<2);return}if(py){q[i+4>>2]=py;pp(py);q[i+8>>2]=0;q[i>>2]=0;q[i+4>>2]=0;oy=0}if(qy>>>0>=1073741824){break a}py=oy>>1;oy=oy>>2>>>0<536870911?py>>>0<qy>>>0?qy:py:1073741823;if(oy>>>0>=1073741824){break a}py=oy<<2;oy=zo(py);q[i>>2]=oy;q[i+4>>2]=oy;q[i+8>>2]=oy+py;if((ey|0)==(ny|0)){break b}while(1){q[oy>>2]=q[ey>>2];oy=oy+4|0;ey=ey+4|0;if((ny|0)!=(ey|0)){continue}break}q[i+4>>2]=oy}return}To();F()}function wf(i){i=i|0;var ey=0;q[i>>2]=3668;ey=q[i+76>>2];if(ey){pp(ey)}q[i>>2]=3364;ey=q[i+32>>2];if(ey){q[i+36>>2]=ey;pp(ey)}return i|0}function xf(i){i=i|0;var ny=0;q[i>>2]=3668;ny=q[i+76>>2];if(ny){pp(ny)}q[i>>2]=3364;ny=q[i+32>>2];if(ny){q[i+36>>2]=ny;pp(ny)}pp(i)}function yf(i){i=i|0;return 5}function zf(i){i=i|0;if(!(!q[i+60>>2]|!q[i+44>>2]|(!q[i+48>>2]|!q[i+52>>2]))){return q[i+56>>2]!=0|0}return 0}function Af(i,hz){i=i|0;hz=hz|0;var iz=0;if(!(q[hz+56>>2]|r[hz+24|0]!=3)){q[i+60>>2]=hz;iz=1}return iz|0}function Bf(i,hz){i=i|0;hz=hz|0;var jz=0,kz=0,lz=0,mz=0,nz=0;jz=T-48|0;T=jz;q[jz+40>>2]=q[i+80>>2];mz=q[hz+20>>2];if((mz|0)<0?1:(mz|0)<=0?t[hz+16>>2]>0?0:1:0){Vb(hz,q[hz+4>>2],jz+40|0,jz+44|0)}mz=_g(jz+8|0);bh(mz);if(q[jz+40>>2]>=1){kz=1;while(1){nz=kz;kz=q[q[i+76>>2]+(lz>>>3&536870908)>>2]>>>(lz&31);ch(mz,(nz^kz^-1)&1);kz=kz&1;lz=lz+1|0;if((lz|0)<q[jz+40>>2]){continue}break}}eh(mz,hz);q[jz+44>>2]=q[i+12>>2];kz=q[hz+20>>2];lz=kz;kz=q[hz+16>>2];if((lz|0)<0?1:(lz|0)<=0?kz>>>0>0?0:1:0){Vb(hz,q[hz+4>>2],jz+44|0,jz+48|0);kz=q[hz+16>>2];lz=q[hz+20>>2]}q[jz+44>>2]=q[i+16>>2];if((lz|0)<0?1:(lz|0)<=0?kz>>>0>0?0:1:0){Vb(hz,q[hz+4>>2],jz+44|0,jz+48|0)}$g(mz);T=jz+48|0;return 1}function Cf(i,hz,oz,pz,qz,rz){i=i|0;hz=hz|0;oz=oz|0;pz=pz|0;qz=qz|0;rz=rz|0;var sz=0,tz=0,uz=0,vz=0,wz=0,xz=0,yz=0,zz=0,Az=0,Bz=0,Cz=0,Dz=0,Ez=0,Fz=0,Gz=0,Hz=0,Iz=0;q[i+8>>2]=qz;q[i- -64>>2]=rz;sz=i+32|0;tz=q[sz>>2];rz=q[i+36>>2]-tz>>2;a:{if(rz>>>0<qz>>>0){pf(sz,qz-rz|0);break a}if(rz>>>0<=qz>>>0){break a}q[i+36>>2]=tz+(qz<<2)}b:{if(!pz){break b}tz=1;rz=q[hz>>2];c:{if((pz|0)<=1){sz=rz;break c}sz=rz;while(1){uz=q[(tz<<2)+hz>>2];vz=(uz|0)<(sz|0);sz=vz?uz:sz;rz=vz?rz:(uz|0)>(rz|0)?uz:rz;tz=tz+1|0;if((tz|0)!=(pz|0)){continue}break}}q[i+16>>2]=rz;q[i+12>>2]=sz;pz=(rz>>31)-((sz>>31)+(rz>>>0<sz>>>0)|0)|0;rz=rz-sz|0;if(!pz&rz>>>0>2147483646|pz>>>0>0){break b}pz=rz+1|0;q[i+20>>2]=pz;sz=i+24|0;rz=(pz|0)/2|0;q[sz>>2]=rz;q[i+28>>2]=0-rz;if(pz&1){break b}q[sz>>2]=rz+ -1}rz=q[i+56>>2];pz=q[rz>>2];d:{rz=q[rz+4>>2]-pz|0;if((rz|0)<1){break d}tz=(rz>>>2)+ -1|0;if(rz>>2>>>0>tz>>>0){Bz=i+60|0;sz=i+68|0;uz=i+8|0;Cz=i+16|0;vz=i+32|0;Dz=i+12|0;Ez=i+28|0;Az=i+20|0;Fz=i+24|0;Gz=i+56|0;while(1){Df(Bz,q[(tz<<2)+pz>>2],hz,tz);pz=q[uz>>2];if((pz|0)>=1){i=w(qz,tz)<<2;Hz=i+oz|0;Iz=i+hz|0;i=sz;yz=0;while(1){rz=0;e:{if((pz|0)<=0){pz=q[vz>>2];break e}while(1){wz=rz<<2;zz=q[wz+i>>2];xz=q[Cz>>2];f:{if((zz|0)>(xz|0)){pz=q[vz>>2];q[wz+pz>>2]=xz;break f}pz=q[vz>>2];wz=wz+pz|0;xz=q[Dz>>2];if((zz|0)<(xz|0)){q[wz>>2]=xz;break f}q[wz>>2]=zz}rz=rz+1|0;if((rz|0)<q[uz>>2]){continue}break}}rz=yz<<2;i=rz+Hz|0;rz=q[rz+Iz>>2]-q[pz+rz>>2]|0;q[i>>2]=rz;g:{if((rz|0)<q[Ez>>2]){rz=rz+q[Az>>2]|0}else{if((rz|0)<=q[Fz>>2]){break g}rz=rz-q[Az>>2]|0}q[i>>2]=rz}i=pz;yz=yz+1|0;pz=q[uz>>2];if((yz|0)<(pz|0)){continue}break}}tz=tz+ -1|0;if((tz|0)<0){break d}i=q[Gz>>2];pz=q[i>>2];if(q[i+4>>2]-pz>>2>>>0>tz>>>0){continue}break}}Uo();F()}return 1}
function Ji(a,b,c,d){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,r=0,s=0,u=0,v=0;k=T-32|0;T=k;if((c|0)>0){while(1){p=h;h=(e<<3)+b|0;j=q[h+4>>2];g=q[h>>2];h=!(j|g)?p:e;f=f+j|0;j=g+l|0;if(j>>>0<g>>>0){f=f+1|0}l=j;e=e+1|0;if((e|0)!=(c|0)){continue}break}}j=h+1|0;q[a+12>>2]=j;g=q[a>>2];c=q[a+4>>2]-g>>3;a:{if(j>>>0>c>>>0){Uh(a,j-c|0);break a}if(j>>>0>=c>>>0){break a}q[a+4>>2]=g+(j<<3)}b:{c:{d:{e:{if((h|0)>=0){o=+(l>>>0)+4294967296*+(f>>>0);f=q[a>>2];e=0;while(1){g=e<<3;l=g+b|0;c=q[l+4>>2];l=q[l>>2];r=(l|0)!=0|(c|0)!=0;g=f+g|0;i=(+(l>>>0)+4294967296*+(c>>>0))/o*32768+.5;f:{if(i<4294967296&i>=0){c=~~i>>>0;break f}c=0}c=r?c?c:1:c;q[g>>2]=c;m=c+m|0;c=(e|0)==(h|0);e=e+1|0;if(!c){continue}break}if((m|0)==32768){break e}}q[k+16>>2]=0;q[k+8>>2]=0;q[k+12>>2]=0;g=0;if(j){if(j>>>0>=1073741824){break b}c=j<<2;g=zo(c);q[k+8>>2]=g;n=c+g|0;q[k+16>>2]=n;wp(g,0,c);q[k+12>>2]=n}if((h|0)>-1){e=0;while(1){q[(e<<2)+g>>2]=e;c=(e|0)==(h|0);e=e+1|0;if(!c){continue}break}}q[k+24>>2]=a;dj(g,n,k+24|0);g:{if((m|0)<32768){c=q[a>>2]+(q[q[k+12>>2]+ -4>>2]<<3)|0;q[c>>2]=(q[c>>2]-m|0)+32768;e=0;break g}c=m+ -32768|0;j=q[k+8>>2];l=(h|0)<1;while(1){h:{if(l){break h}i=32768/+(m|0);n=q[a>>2];g=h;while(1){e=n+(q[(g<<2)+j>>2]<<3)|0;f=q[e>>2];if(f>>>0<=1){if((g|0)!=(h|0)){break h}e=1;break g}r=f+ -1|0;p=e;u=f;v=c;e=f;o=C(i*+(f>>>0));i:{if(y(o)<2147483648){s=~~o;break i}s=-2147483648}e=e-s|0;e=e?e:1;f=(e|0)<(f|0)?e:r;f=(f|0)>(c|0)?v:f;q[p>>2]=u-f;c=c-f|0;m=m-f|0;if((m|0)==32768){m=32768;break h}f=(g|0)>1;g=g+ -1|0;if(f){continue}break}}e=0;if((c|0)>0){continue}break}}c=q[k+8>>2];if(c){q[k+12>>2]=c;pp(c)}if(e){break c}if((h|0)>=0){break d}break c}if((h|0)<0){break c}}f=q[a>>2];e=0;c=0;while(1){g=f+(e<<3)|0;q[g+4>>2]=c;c=q[g>>2]+c|0;g=(e|0)==(h|0);e=e+1|0;if(!g){continue}break}if((c|0)!=32768){break c}e=0;i=0;if((h|0)>=0){c=q[a>>2];while(1){f=e<<3;g=q[f+c>>2];if(g){f=b+f|0;i=i+sp(+(g>>>0)*30517578125e-15)*(+t[f>>2]+4294967296*+t[f+4>>2])}f=(e|0)==(h|0);e=e+1|0;if(!f){continue}break}}b=a;c=a;i=D(-i);j:{if(i<0x10000000000000000&i>=0){f=y(i)>=1?i>0?~~A(C(i/4294967296),4294967295)>>>0:~~D((i- +(~~i>>>0>>>0))/4294967296)>>>0:0;h=~~i>>>0;break j}f=0;h=0}q[c+16>>2]=h;q[b+20>>2]=f;ti(a,d)}T=k+32|0;return}To();F()}function Ki(a,b){var c=0,d=0,t=0,w=0,x=0,y=0,z=0,A=0;y=T-32|0;T=y;x=q[b>>2]+q[a+40>>2]|0;c=q[a+32>>2];d=c+ -131072|0;a:{if(d>>>0<=63){c=a+28|0;o[q[a+24>>2]+q[c>>2]|0]=d;d=q[c>>2]+1|0;break a}if(d>>>0<=16383){d=a+28|0;t=q[a+24>>2]+q[d>>2]|0;c=c+ -114688|0;o[t|0]=c;o[t+1|0]=c>>>8;d=q[d>>2]+2|0;break a}if(d>>>0<=4194303){t=a+28|0;d=q[a+24>>2]+q[t>>2]|0;c=c+8257536|0;o[d+2|0]=c>>>16;o[d+1|0]=c>>>8;o[d|0]=c;d=q[t>>2]+3|0;break a}if(d>>>0<=1073741823){t=a+28|0;d=q[a+24>>2]+q[t>>2]|0;c=c+ -1073872896|0;o[d|0]=c;o[d+1|0]=c>>>8;o[d+2|0]=c>>>16;o[d+3|0]=c>>>24;d=q[t>>2]+4|0;break a}d=q[a+28>>2]}w=d>>31;t=w;c=d;w=Dl(y);ui(c,t,w);z=q[w+4>>2]-q[w>>2]|0;xp(z+x|0,x,c);vp(x,q[w>>2],z);d=q[a+44>>2];x=b;A=q[a+40>>2];a=t;b=c+z|0;if(b>>>0<c>>>0){a=a+1|0}c=b;b=A+c|0;El(x,b);a=q[w+12>>2];q[w+12>>2]=0;if(a){pp(a)}a=q[w>>2];if(a){q[w+4>>2]=a;pp(a)}T=y+32|0}function Li(a,b,B,E){var G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,U=0,V=0,W=0;M=T-32|0;T=M;if((B|0)>0){while(1){R=J;J=(G<<3)+b|0;L=q[J+4>>2];I=q[J>>2];J=!(L|I)?R:G;H=H+L|0;L=I+N|0;if(L>>>0<I>>>0){H=H+1|0}N=L;G=G+1|0;if((G|0)!=(B|0)){continue}break}}L=J+1|0;q[a+12>>2]=L;I=q[a>>2];B=q[a+4>>2]-I>>3;a:{if(L>>>0>B>>>0){Uh(a,L-B|0);break a}if(L>>>0>=B>>>0){break a}q[a+4>>2]=I+(L<<3)}b:{c:{d:{e:{if((J|0)>=0){Q=+(N>>>0)+4294967296*+(H>>>0);H=q[a>>2];G=0;while(1){I=G<<3;N=I+b|0;B=q[N+4>>2];N=q[N>>2];S=(N|0)!=0|(B|0)!=0;I=H+I|0;K=(+(N>>>0)+4294967296*+(B>>>0))/Q*65536+.5;f:{if(K<4294967296&K>=0){B=~~K>>>0;break f}B=0}B=S?B?B:1:B;q[I>>2]=B;O=B+O|0;B=(G|0)==(J|0);G=G+1|0;if(!B){continue}break}if((O|0)==65536){break e}}q[M+16>>2]=0;q[M+8>>2]=0;q[M+12>>2]=0;I=0;if(L){if(L>>>0>=1073741824){break b}B=L<<2;I=zo(B);q[M+8>>2]=I;P=B+I|0;q[M+16>>2]=P;wp(I,0,B);q[M+12>>2]=P}if((J|0)>-1){G=0;while(1){q[(G<<2)+I>>2]=G;B=(G|0)==(J|0);G=G+1|0;if(!B){continue}break}}q[M+24>>2]=a;ej(I,P,M+24|0);g:{if((O|0)<65536){B=q[a>>2]+(q[q[M+12>>2]+ -4>>2]<<3)|0;q[B>>2]=(q[B>>2]-O|0)+65536;G=0;break g}B=O+ -65536|0;L=q[M+8>>2];N=(J|0)<1;while(1){h:{if(N){break h}K=65536/+(O|0);P=q[a>>2];I=J;while(1){G=P+(q[(I<<2)+L>>2]<<3)|0;H=q[G>>2];if(H>>>0<=1){if((I|0)!=(J|0)){break h}G=1;break g}S=H+ -1|0;R=G;V=H;W=B;G=H;Q=C(K*+(H>>>0));i:{if(y(Q)<2147483648){U=~~Q;break i}U=-2147483648}G=G-U|0;G=G?G:1;H=(G|0)<(H|0)?G:S;H=(H|0)>(B|0)?W:H;q[R>>2]=V-H;B=B-H|0;O=O-H|0;if((O|0)==65536){O=65536;break h}H=(I|0)>1;I=I+ -1|0;if(H){continue}break}}G=0;if((B|0)>0){continue}break}}B=q[M+8>>2];if(B){q[M+12>>2]=B;pp(B)}if(G){break c}if((J|0)>=0){break d}break c}if((J|0)<0){break c}}H=q[a>>2];G=0;B=0;while(1){I=H+(G<<3)|0;q[I+4>>2]=B;B=q[I>>2]+B|0;I=(G|0)==(J|0);G=G+1|0;if(!I){continue}break}if((B|0)!=65536){break c}G=0;K=0;if((J|0)>=0){B=q[a>>2];while(1){H=G<<3;I=q[H+B>>2];if(I){H=b+H|0;K=K+sp(+(I>>>0)*152587890625e-16)*(+t[H>>2]+4294967296*+t[H+4>>2])}H=(G|0)==(J|0);G=G+1|0;if(!H){continue}break}}b=a;B=a;K=D(-K);j:{if(K<0x10000000000000000&K>=0){H=y(K)>=1?K>0?~~A(C(K/4294967296),4294967295)>>>0:~~D((K- +(~~K>>>0>>>0))/4294967296)>>>0:0;J=~~K>>>0;break j}H=0;J=0}q[B+16>>2]=J;q[b+20>>2]=H;ti(a,E)}T=M+32|0;return}To();F()}function Mi(a,b){var B=0,C=0,D=0,E=0,F=0,X=0,Y=0,Z=0;X=T-32|0;T=X;F=q[b>>2]+q[a+40>>2]|0;B=q[a+32>>2];C=B+ -262144|0;a:{if(C>>>0<=63){B=a+28|0;o[q[a+24>>2]+q[B>>2]|0]=C;C=q[B>>2]+1|0;break a}if(C>>>0<=16383){C=a+28|0;D=q[a+24>>2]+q[C>>2]|0;B=B+ -245760|0;o[D|0]=B;o[D+1|0]=B>>>8;C=q[C>>2]+2|0;break a}if(C>>>0<=4194303){D=a+28|0;C=q[a+24>>2]+q[D>>2]|0;B=B+8126464|0;o[C+2|0]=B>>>16;o[C+1|0]=B>>>8;o[C|0]=B;C=q[D>>2]+3|0;break a}if(C>>>0<=1073741823){D=a+28|0;C=q[a+24>>2]+q[D>>2]|0;B=B+ -1074003968|0;o[C|0]=B;o[C+1|0]=B>>>8;o[C+2|0]=B>>>16;o[C+3|0]=B>>>24;C=q[D>>2]+4|0;break a}C=q[a+28>>2]}E=C>>31;D=E;B=C;E=Dl(X);ui(B,D,E);Y=q[E+4>>2]-q[E>>2]|0;xp(Y+F|0,F,B);vp(F,q[E>>2],Y);C=q[a+44>>2];F=b;Z=q[a+40>>2];a=D;b=B+Y|0;if(b>>>0<B>>>0){a=a+1|0}B=b;b=Z+B|0;El(F,b);a=q[E+12>>2];q[E+12>>2]=0;if(a){pp(a)}a=q[E>>2];if(a){q[E+4>>2]=a;pp(a)}T=X+32|0}function Ni(a,b,_,$){var 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;ga=T-32|0;T=ga;if((_|0)>0){while(1){la=da;da=(aa<<3)+b|0;fa=q[da+4>>2];ca=q[da>>2];da=!(fa|ca)?la:aa;ba=ba+fa|0;fa=ca+ha|0;if(fa>>>0<ca>>>0){ba=ba+1|0}ha=fa;aa=aa+1|0;if((aa|0)!=(_|0)){continue}break}}fa=da+1|0;q[a+12>>2]=fa;ca=q[a>>2];_=q[a+4>>2]-ca>>3;a:{if(fa>>>0>_>>>0){Uh(a,fa-_|0);break a}if(fa>>>0>=_>>>0){break a}q[a+4>>2]=ca+(fa<<3)}b:{c:{d:{e:{if((da|0)>=0){ka=+(ha>>>0)+4294967296*+(ba>>>0);ba=q[a>>2];aa=0;while(1){ca=aa<<3;ha=ca+b|0;_=q[ha+4>>2];ha=q[ha>>2];ma=(ha|0)!=0|(_|0)!=0;ca=ba+ca|0;ea=(+(ha>>>0)+4294967296*+(_>>>0))/ka*262144+.5;f:{if(ea<4294967296&ea>=0){_=~~ea>>>0;break f}_=0}_=ma?_?_:1:_;q[ca>>2]=_;ia=_+ia|0;_=(aa|0)==(da|0);aa=aa+1|0;if(!_){continue}break}if((ia|0)==262144){break e}}q[ga+16>>2]=0;q[ga+8>>2]=0;q[ga+12>>2]=0;ca=0;if(fa){if(fa>>>0>=1073741824){break b}_=fa<<2;ca=zo(_);q[ga+8>>2]=ca;ja=_+ca|0;q[ga+16>>2]=ja;wp(ca,0,_);q[ga+12>>2]=ja}if((da|0)>-1){aa=0;while(1){q[(aa<<2)+ca>>2]=aa;_=(aa|0)==(da|0);aa=aa+1|0;if(!_){continue}break}}q[ga+24>>2]=a;fj(ca,ja,ga+24|0);g:{if((ia|0)<262144){_=q[a>>2]+(q[q[ga+12>>2]+ -4>>2]<<3)|0;q[_>>2]=(q[_>>2]-ia|0)+262144;aa=0;break g}_=ia+ -262144|0;fa=q[ga+8>>2];ha=(da|0)<1;while(1){h:{if(ha){break h}ea=262144/+(ia|0);ja=q[a>>2];ca=da;while(1){aa=ja+(q[(ca<<2)+fa>>2]<<3)|0;ba=q[aa>>2];if(ba>>>0<=1){if((ca|0)!=(da|0)){break h}aa=1;break g}ma=ba+ -1|0;la=aa;oa=ba;pa=_;aa=ba;ka=C(ea*+(ba>>>0));i:{if(y(ka)<2147483648){na=~~ka;break i}na=-2147483648}aa=aa-na|0;aa=aa?aa:1;ba=(aa|0)<(ba|0)?aa:ma;ba=(ba|0)>(_|0)?pa:ba;q[la>>2]=oa-ba;_=_-ba|0;ia=ia-ba|0;if((ia|0)==262144){ia=262144;break h}ba=(ca|0)>1;ca=ca+ -1|0;if(ba){continue}break}}aa=0;if((_|0)>0){continue}break}}_=q[ga+8>>2];if(_){q[ga+12>>2]=_;pp(_)}if(aa){break c}if((da|0)>=0){break d}break c}if((da|0)<0){break c}}ba=q[a>>2];aa=0;_=0;while(1){ca=ba+(aa<<3)|0;q[ca+4>>2]=_;_=q[ca>>2]+_|0;ca=(aa|0)==(da|0);aa=aa+1|0;if(!ca){continue}break}if((_|0)!=262144){break c}aa=0;ea=0;if((da|0)>=0){_=q[a>>2];while(1){ba=aa<<3;ca=q[ba+_>>2];if(ca){ba=b+ba|0;ea=ea+sp(+(ca>>>0)*3814697265625e-18)*(+t[ba>>2]+4294967296*+t[ba+4>>2])}ba=(aa|0)==(da|0);aa=aa+1|0;if(!ba){continue}break}}b=a;_=a;ea=D(-ea);j:{if(ea<0x10000000000000000&ea>=0){ba=y(ea)>=1?ea>0?~~A(C(ea/4294967296),4294967295)>>>0:~~D((ea- +(~~ea>>>0>>>0))/4294967296)>>>0:0;da=~~ea>>>0;break j}ba=0;da=0}q[_+16>>2]=da;q[b+20>>2]=ba;ti(a,$)}T=ga+32|0;return}To();F()}function Oi(a,b){var _=0,$=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0;ta=T-32|0;T=ta;sa=q[b>>2]+q[a+40>>2]|0;_=q[a+32>>2];$=_+ -1048576|0;a:{if($>>>0<=63){_=a+28|0;o[q[a+24>>2]+q[_>>2]|0]=$;$=q[_>>2]+1|0;break a}if($>>>0<=16383){$=a+28|0;qa=q[a+24>>2]+q[$>>2]|0;_=_+ -1032192|0;o[qa|0]=_;o[qa+1|0]=_>>>8;$=q[$>>2]+2|0;break a}if($>>>0<=4194303){qa=a+28|0;$=q[a+24>>2]+q[qa>>2]|0;_=_+7340032|0;o[$+2|0]=_>>>16;o[$+1|0]=_>>>8;o[$|0]=_;$=q[qa>>2]+3|0;break a}if($>>>0<=1073741823){qa=a+28|0;$=q[a+24>>2]+q[qa>>2]|0;_=_+ -1074790400|0;o[$|0]=_;o[$+1|0]=_>>>8;o[$+2|0]=_>>>16;o[$+3|0]=_>>>24;$=q[qa>>2]+4|0;break a}$=q[a+28>>2]}ra=$>>31;qa=ra;_=$;ra=Dl(ta);ui(_,qa,ra);ua=q[ra+4>>2]-q[ra>>2]|0;xp(ua+sa|0,sa,_);vp(sa,q[ra>>2],ua);$=q[a+44>>2];sa=b;va=q[a+40>>2];a=qa;b=_+ua|0;if(b>>>0<_>>>0){a=a+1|0}_=b;b=va+_|0;El(sa,b);a=q[ra+12>>2];q[ra+12>>2]=0;if(a){pp(a)}a=q[ra>>2];if(a){q[ra+4>>2]=a;pp(a)}T=ta+32|0}function Pi(a,b,wa,xa){var ya=0,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;Ea=T-32|0;T=Ea;if((wa|0)>0){while(1){Ja=Ba;Ba=(ya<<3)+b|0;Da=q[Ba+4>>2];Aa=q[Ba>>2];Ba=!(Da|Aa)?Ja:ya;za=za+Da|0;Da=Aa+Fa|0;if(Da>>>0<Aa>>>0){za=za+1|0}Fa=Da;ya=ya+1|0;if((ya|0)!=(wa|0)){continue}break}}Da=Ba+1|0;q[a+12>>2]=Da;Aa=q[a>>2];wa=q[a+4>>2]-Aa>>3;a:{if(Da>>>0>wa>>>0){Uh(a,Da-wa|0);break a}if(Da>>>0>=wa>>>0){break a}q[a+4>>2]=Aa+(Da<<3)}b:{c:{d:{e:{if((Ba|0)>=0){Ia=+(Fa>>>0)+4294967296*+(za>>>0);za=q[a>>2];ya=0;while(1){Aa=ya<<3;Fa=Aa+b|0;wa=q[Fa+4>>2];Fa=q[Fa>>2];Ka=(Fa|0)!=0|(wa|0)!=0;Aa=za+Aa|0;Ca=(+(Fa>>>0)+4294967296*+(wa>>>0))/Ia*524288+.5;f:{if(Ca<4294967296&Ca>=0){wa=~~Ca>>>0;break f}wa=0}wa=Ka?wa?wa:1:wa;q[Aa>>2]=wa;Ga=wa+Ga|0;wa=(ya|0)==(Ba|0);ya=ya+1|0;if(!wa){continue}break}if((Ga|0)==524288){break e}}q[Ea+16>>2]=0;q[Ea+8>>2]=0;q[Ea+12>>2]=0;Aa=0;if(Da){if(Da>>>0>=1073741824){break b}wa=Da<<2;Aa=zo(wa);q[Ea+8>>2]=Aa;Ha=wa+Aa|0;q[Ea+16>>2]=Ha;wp(Aa,0,wa);q[Ea+12>>2]=Ha}if((Ba|0)>-1){ya=0;while(1){q[(ya<<2)+Aa>>2]=ya;wa=(ya|0)==(Ba|0);ya=ya+1|0;if(!wa){continue}break}}q[Ea+24>>2]=a;gj(Aa,Ha,Ea+24|0);g:{if((Ga|0)<524288){wa=q[a>>2]+(q[q[Ea+12>>2]+ -4>>2]<<3)|0;q[wa>>2]=(q[wa>>2]-Ga|0)+524288;ya=0;break g}wa=Ga+ -524288|0;Da=q[Ea+8>>2];Fa=(Ba|0)<1;while(1){h:{if(Fa){break h}Ca=524288/+(Ga|0);Ha=q[a>>2];Aa=Ba;while(1){ya=Ha+(q[(Aa<<2)+Da>>2]<<3)|0;za=q[ya>>2];if(za>>>0<=1){if((Aa|0)!=(Ba|0)){break h}ya=1;break g}Ka=za+ -1|0;Ja=ya;Ma=za;Na=wa;ya=za;Ia=C(Ca*+(za>>>0));i:{if(y(Ia)<2147483648){La=~~Ia;break i}La=-2147483648}ya=ya-La|0;ya=ya?ya:1;za=(ya|0)<(za|0)?ya:Ka;za=(za|0)>(wa|0)?Na:za;q[Ja>>2]=Ma-za;wa=wa-za|0;Ga=Ga-za|0;if((Ga|0)==524288){Ga=524288;break h}za=(Aa|0)>1;Aa=Aa+ -1|0;if(za){continue}break}}ya=0;if((wa|0)>0){continue}break}}wa=q[Ea+8>>2];if(wa){q[Ea+12>>2]=wa;pp(wa)}if(ya){break c}if((Ba|0)>=0){break d}break c}if((Ba|0)<0){break c}}za=q[a>>2];ya=0;wa=0;while(1){Aa=za+(ya<<3)|0;q[Aa+4>>2]=wa;wa=q[Aa>>2]+wa|0;Aa=(ya|0)==(Ba|0);ya=ya+1|0;if(!Aa){continue}break}if((wa|0)!=524288){break c}ya=0;Ca=0;if((Ba|0)>=0){wa=q[a>>2];while(1){za=ya<<3;Aa=q[za+wa>>2];if(Aa){za=b+za|0;Ca=Ca+sp(+(Aa>>>0)*19073486328125e-19)*(+t[za>>2]+4294967296*+t[za+4>>2])}za=(ya|0)==(Ba|0);ya=ya+1|0;if(!za){continue}break}}b=a;wa=a;Ca=D(-Ca);j:{if(Ca<0x10000000000000000&Ca>=0){za=y(Ca)>=1?Ca>0?~~A(C(Ca/4294967296),4294967295)>>>0:~~D((Ca- +(~~Ca>>>0>>>0))/4294967296)>>>0:0;Ba=~~Ca>>>0;break j}za=0;Ba=0}q[wa+16>>2]=Ba;q[b+20>>2]=za;ti(a,xa)}T=Ea+32|0;return}To();F()}function Qi(a,b){var wa=0,xa=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0;Ra=T-32|0;T=Ra;Qa=q[b>>2]+q[a+40>>2]|0;wa=q[a+32>>2];xa=wa+ -2097152|0;a:{if(xa>>>0<=63){wa=a+28|0;o[q[a+24>>2]+q[wa>>2]|0]=xa;xa=q[wa>>2]+1|0;break a}if(xa>>>0<=16383){xa=a+28|0;Oa=q[a+24>>2]+q[xa>>2]|0;wa=wa+ -2080768|0;o[Oa|0]=wa;o[Oa+1|0]=wa>>>8;xa=q[xa>>2]+2|0;break a}if(xa>>>0<=4194303){Oa=a+28|0;xa=q[a+24>>2]+q[Oa>>2]|0;wa=wa+6291456|0;o[xa+2|0]=wa>>>16;o[xa+1|0]=wa>>>8;o[xa|0]=wa;xa=q[Oa>>2]+3|0;break a}if(xa>>>0<=1073741823){Oa=a+28|0;xa=q[a+24>>2]+q[Oa>>2]|0;wa=wa+ -1075838976|0;o[xa|0]=wa;o[xa+1|0]=wa>>>8;o[xa+2|0]=wa>>>16;o[xa+3|0]=wa>>>24;xa=q[Oa>>2]+4|0;break a}xa=q[a+28>>2]}Pa=xa>>31;Oa=Pa;wa=xa;Pa=Dl(Ra);ui(wa,Oa,Pa);Sa=q[Pa+4>>2]-q[Pa>>2]|0;xp(Sa+Qa|0,Qa,wa);vp(Qa,q[Pa>>2],Sa);xa=q[a+44>>2];Qa=b;Ta=q[a+40>>2];a=Oa;b=wa+Sa|0;if(b>>>0<wa>>>0){a=a+1|0}wa=b;b=Ta+wa|0;El(Qa,b);a=q[Pa+12>>2];q[Pa+12>>2]=0;if(a){pp(a)}a=q[Pa>>2];if(a){q[Pa+4>>2]=a;pp(a)}T=Ra+32|0}function Ri(a,b,Ua,Va){var 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;ab=T-32|0;T=ab;if((Ua|0)>0){while(1){fb=Za;Za=(Wa<<3)+b|0;$a=q[Za+4>>2];Ya=q[Za>>2];Za=!($a|Ya)?fb:Wa;Xa=Xa+$a|0;$a=Ya+bb|0;if($a>>>0<Ya>>>0){Xa=Xa+1|0}bb=$a;Wa=Wa+1|0;if((Wa|0)!=(Ua|0)){continue}break}}$a=Za+1|0;q[a+12>>2]=$a;Ya=q[a>>2];Ua=q[a+4>>2]-Ya>>3;a:{if($a>>>0>Ua>>>0){Uh(a,$a-Ua|0);break a}if($a>>>0>=Ua>>>0){break a}q[a+4>>2]=Ya+($a<<3)}b:{c:{d:{e:{if((Za|0)>=0){eb=+(bb>>>0)+4294967296*+(Xa>>>0);Xa=q[a>>2];Wa=0;while(1){Ya=Wa<<3;bb=Ya+b|0;Ua=q[bb+4>>2];bb=q[bb>>2];gb=(bb|0)!=0|(Ua|0)!=0;Ya=Xa+Ya|0;_a=(+(bb>>>0)+4294967296*+(Ua>>>0))/eb*1048576+.5;f:{if(_a<4294967296&_a>=0){Ua=~~_a>>>0;break f}Ua=0}Ua=gb?Ua?Ua:1:Ua;q[Ya>>2]=Ua;cb=Ua+cb|0;Ua=(Wa|0)==(Za|0);Wa=Wa+1|0;if(!Ua){continue}break}if((cb|0)==1048576){break e}}q[ab+16>>2]=0;q[ab+8>>2]=0;q[ab+12>>2]=0;Ya=0;if($a){if($a>>>0>=1073741824){break b}Ua=$a<<2;Ya=zo(Ua);q[ab+8>>2]=Ya;db=Ua+Ya|0;q[ab+16>>2]=db;wp(Ya,0,Ua);q[ab+12>>2]=db}if((Za|0)>-1){Wa=0;while(1){q[(Wa<<2)+Ya>>2]=Wa;Ua=(Wa|0)==(Za|0);Wa=Wa+1|0;if(!Ua){continue}break}}q[ab+24>>2]=a;hj(Ya,db,ab+24|0);g:{if((cb|0)<1048576){Ua=q[a>>2]+(q[q[ab+12>>2]+ -4>>2]<<3)|0;q[Ua>>2]=(q[Ua>>2]-cb|0)- -1048576;Wa=0;break g}Ua=cb+ -1048576|0;$a=q[ab+8>>2];bb=(Za|0)<1;while(1){h:{if(bb){break h}_a=1048576/+(cb|0);db=q[a>>2];Ya=Za;while(1){Wa=db+(q[(Ya<<2)+$a>>2]<<3)|0;Xa=q[Wa>>2];if(Xa>>>0<=1){if((Ya|0)!=(Za|0)){break h}Wa=1;break g}gb=Xa+ -1|0;fb=Wa;ib=Xa;jb=Ua;Wa=Xa;eb=C(_a*+(Xa>>>0));i:{if(y(eb)<2147483648){hb=~~eb;break i}hb=-2147483648}Wa=Wa-hb|0;Wa=Wa?Wa:1;Xa=(Wa|0)<(Xa|0)?Wa:gb;Xa=(Xa|0)>(Ua|0)?jb:Xa;q[fb>>2]=ib-Xa;Ua=Ua-Xa|0;cb=cb-Xa|0;if((cb|0)==1048576){cb=1048576;break h}Xa=(Ya|0)>1;Ya=Ya+ -1|0;if(Xa){continue}break}}Wa=0;if((Ua|0)>0){continue}break}}Ua=q[ab+8>>2];if(Ua){q[ab+12>>2]=Ua;pp(Ua)}if(Wa){break c}if((Za|0)>=0){break d}break c}if((Za|0)<0){break c}}Xa=q[a>>2];Wa=0;Ua=0;while(1){Ya=Xa+(Wa<<3)|0;q[Ya+4>>2]=Ua;Ua=q[Ya>>2]+Ua|0;Ya=(Wa|0)==(Za|0);Wa=Wa+1|0;if(!Ya){continue}break}if((Ua|0)!=1048576){break c}Wa=0;_a=0;if((Za|0)>=0){Ua=q[a>>2];while(1){Xa=Wa<<3;Ya=q[Xa+Ua>>2];if(Ya){Xa=b+Xa|0;_a=_a+sp(+(Ya>>>0)*9.5367431640625e-7)*(+t[Xa>>2]+4294967296*+t[Xa+4>>2])}Xa=(Wa|0)==(Za|0);Wa=Wa+1|0;if(!Xa){continue}break}}b=a;Ua=a;_a=D(-_a);j:{if(_a<0x10000000000000000&_a>=0){Xa=y(_a)>=1?_a>0?~~A(C(_a/4294967296),4294967295)>>>0:~~D((_a- +(~~_a>>>0>>>0))/4294967296)>>>0:0;Za=~~_a>>>0;break j}Xa=0;Za=0}q[Ua+16>>2]=Za;q[b+20>>2]=Xa;ti(a,Va)}T=ab+32|0;return}To();F()}function Si(a,b){var Ua=0,Va=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0;nb=T-32|0;T=nb;mb=q[b>>2]+q[a+40>>2]|0;Ua=q[a+32>>2];Va=Ua+ -4194304|0;a:{if(Va>>>0<=63){Ua=a+28|0;o[q[a+24>>2]+q[Ua>>2]|0]=Va;Va=q[Ua>>2]+1|0;break a}if(Va>>>0<=16383){Va=a+28|0;kb=q[a+24>>2]+q[Va>>2]|0;Ua=Ua+ -4177920|0;o[kb|0]=Ua;o[kb+1|0]=Ua>>>8;Va=q[Va>>2]+2|0;break a}if(Va>>>0<=4194303){kb=a+28|0;Va=q[a+24>>2]+q[kb>>2]|0;Ua=Ua+4194304|0;o[Va+2|0]=Ua>>>16;o[Va+1|0]=Ua>>>8;o[Va|0]=Ua;Va=q[kb>>2]+3|0;break a}if(Va>>>0<=1073741823){kb=a+28|0;Va=q[a+24>>2]+q[kb>>2]|0;Ua=Ua+ -1077936128|0;o[Va|0]=Ua;o[Va+1|0]=Ua>>>8;o[Va+2|0]=Ua>>>16;o[Va+3|0]=Ua>>>24;Va=q[kb>>2]+4|0;break a}Va=q[a+28>>2]}lb=Va>>31;kb=lb;Ua=Va;lb=Dl(nb);ui(Ua,kb,lb);ob=q[lb+4>>2]-q[lb>>2]|0;xp(ob+mb|0,mb,Ua);vp(mb,q[lb>>2],ob);Va=q[a+44>>2];mb=b;pb=q[a+40>>2];a=kb;b=Ua+ob|0;if(b>>>0<Ua>>>0){a=a+1|0}Ua=b;b=pb+Ua|0;El(mb,b);a=q[lb+12>>2];q[lb+12>>2]=0;if(a){pp(a)}a=q[lb>>2];if(a){q[lb+4>>2]=a;pp(a)}T=nb+32|0}function Ti(a,b,qb,rb){var sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0;yb=T-32|0;T=yb;if((qb|0)>0){while(1){Db=vb;vb=(sb<<3)+b|0;xb=q[vb+4>>2];ub=q[vb>>2];vb=!(xb|ub)?Db:sb;tb=tb+xb|0;xb=ub+zb|0;if(xb>>>0<ub>>>0){tb=tb+1|0}zb=xb;sb=sb+1|0;if((sb|0)!=(qb|0)){continue}break}}xb=vb+1|0;q[a+12>>2]=xb;ub=q[a>>2];qb=q[a+4>>2]-ub>>3;a:{if(xb>>>0>qb>>>0){Uh(a,xb-qb|0);break a}if(xb>>>0>=qb>>>0){break a}q[a+4>>2]=ub+(xb<<3)}b:{c:{d:{e:{if((vb|0)>=0){Cb=+(zb>>>0)+4294967296*+(tb>>>0);tb=q[a>>2];sb=0;while(1){ub=sb<<3;zb=ub+b|0;qb=q[zb+4>>2];zb=q[zb>>2];Eb=(zb|0)!=0|(qb|0)!=0;ub=tb+ub|0;wb=(+(zb>>>0)+4294967296*+(qb>>>0))/Cb*1048576+.5;f:{if(wb<4294967296&wb>=0){qb=~~wb>>>0;break f}qb=0}qb=Eb?qb?qb:1:qb;q[ub>>2]=qb;Ab=qb+Ab|0;qb=(sb|0)==(vb|0);sb=sb+1|0;if(!qb){continue}break}if((Ab|0)==1048576){break e}}q[yb+16>>2]=0;q[yb+8>>2]=0;q[yb+12>>2]=0;ub=0;if(xb){if(xb>>>0>=1073741824){break b}qb=xb<<2;ub=zo(qb);q[yb+8>>2]=ub;Bb=qb+ub|0;q[yb+16>>2]=Bb;wp(ub,0,qb);q[yb+12>>2]=Bb}if((vb|0)>-1){sb=0;while(1){q[(sb<<2)+ub>>2]=sb;qb=(sb|0)==(vb|0);sb=sb+1|0;if(!qb){continue}break}}q[yb+24>>2]=a;ij(ub,Bb,yb+24|0);g:{if((Ab|0)<1048576){qb=q[a>>2]+(q[q[yb+12>>2]+ -4>>2]<<3)|0;q[qb>>2]=(q[qb>>2]-Ab|0)- -1048576;sb=0;break g}qb=Ab+ -1048576|0;xb=q[yb+8>>2];zb=(vb|0)<1;while(1){h:{if(zb){break h}wb=1048576/+(Ab|0);Bb=q[a>>2];ub=vb;while(1){sb=Bb+(q[(ub<<2)+xb>>2]<<3)|0;tb=q[sb>>2];if(tb>>>0<=1){if((ub|0)!=(vb|0)){break h}sb=1;break g}Eb=tb+ -1|0;Db=sb;Gb=tb;Hb=qb;sb=tb;Cb=C(wb*+(tb>>>0));i:{if(y(Cb)<2147483648){Fb=~~Cb;break i}Fb=-2147483648}sb=sb-Fb|0;sb=sb?sb:1;tb=(sb|0)<(tb|0)?sb:Eb;tb=(tb|0)>(qb|0)?Hb:tb;q[Db>>2]=Gb-tb;qb=qb-tb|0;Ab=Ab-tb|0;if((Ab|0)==1048576){Ab=1048576;break h}tb=(ub|0)>1;ub=ub+ -1|0;if(tb){continue}break}}sb=0;if((qb|0)>0){continue}break}}qb=q[yb+8>>2];if(qb){q[yb+12>>2]=qb;pp(qb)}if(sb){break c}if((vb|0)>=0){break d}break c}if((vb|0)<0){break c}}tb=q[a>>2];sb=0;qb=0;while(1){ub=tb+(sb<<3)|0;q[ub+4>>2]=qb;qb=q[ub>>2]+qb|0;ub=(sb|0)==(vb|0);sb=sb+1|0;if(!ub){continue}break}if((qb|0)!=1048576){break c}sb=0;wb=0;if((vb|0)>=0){qb=q[a>>2];while(1){tb=sb<<3;ub=q[tb+qb>>2];if(ub){tb=b+tb|0;wb=wb+sp(+(ub>>>0)*9.5367431640625e-7)*(+t[tb>>2]+4294967296*+t[tb+4>>2])}tb=(sb|0)==(vb|0);sb=sb+1|0;if(!tb){continue}break}}b=a;qb=a;wb=D(-wb);j:{if(wb<0x10000000000000000&wb>=0){tb=y(wb)>=1?wb>0?~~A(C(wb/4294967296),4294967295)>>>0:~~D((wb- +(~~wb>>>0>>>0))/4294967296)>>>0:0;vb=~~wb>>>0;break j}tb=0;vb=0}q[qb+16>>2]=vb;q[b+20>>2]=tb;ti(a,rb)}T=yb+32|0;return}To();F()}function Ui(a,b,qb,rb){var Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0;Ob=T-32|0;T=Ob;if((qb|0)>0){while(1){Tb=Lb;Lb=(Ib<<3)+b|0;Nb=q[Lb+4>>2];Kb=q[Lb>>2];Lb=!(Nb|Kb)?Tb:Ib;Jb=Jb+Nb|0;Nb=Kb+Pb|0;if(Nb>>>0<Kb>>>0){Jb=Jb+1|0}Pb=Nb;Ib=Ib+1|0;if((Ib|0)!=(qb|0)){continue}break}}Nb=Lb+1|0;q[a+12>>2]=Nb;Kb=q[a>>2];qb=q[a+4>>2]-Kb>>3;a:{if(Nb>>>0>qb>>>0){Uh(a,Nb-qb|0);break a}if(Nb>>>0>=qb>>>0){break a}q[a+4>>2]=Kb+(Nb<<3)}b:{c:{d:{e:{if((Lb|0)>=0){Sb=+(Pb>>>0)+4294967296*+(Jb>>>0);Jb=q[a>>2];Ib=0;while(1){Kb=Ib<<3;Pb=Kb+b|0;qb=q[Pb+4>>2];Pb=q[Pb>>2];Ub=(Pb|0)!=0|(qb|0)!=0;Kb=Jb+Kb|0;Mb=(+(Pb>>>0)+4294967296*+(qb>>>0))/Sb*1048576+.5;f:{if(Mb<4294967296&Mb>=0){qb=~~Mb>>>0;break f}qb=0}qb=Ub?qb?qb:1:qb;q[Kb>>2]=qb;Qb=qb+Qb|0;qb=(Ib|0)==(Lb|0);Ib=Ib+1|0;if(!qb){continue}break}if((Qb|0)==1048576){break e}}q[Ob+16>>2]=0;q[Ob+8>>2]=0;q[Ob+12>>2]=0;Kb=0;if(Nb){if(Nb>>>0>=1073741824){break b}qb=Nb<<2;Kb=zo(qb);q[Ob+8>>2]=Kb;Rb=qb+Kb|0;q[Ob+16>>2]=Rb;wp(Kb,0,qb);q[Ob+12>>2]=Rb}if((Lb|0)>-1){Ib=0;while(1){q[(Ib<<2)+Kb>>2]=Ib;qb=(Ib|0)==(Lb|0);Ib=Ib+1|0;if(!qb){continue}break}}q[Ob+24>>2]=a;jj(Kb,Rb,Ob+24|0);g:{if((Qb|0)<1048576){qb=q[a>>2]+(q[q[Ob+12>>2]+ -4>>2]<<3)|0;q[qb>>2]=(q[qb>>2]-Qb|0)- -1048576;Ib=0;break g}qb=Qb+ -1048576|0;Nb=q[Ob+8>>2];Pb=(Lb|0)<1;while(1){h:{if(Pb){break h}Mb=1048576/+(Qb|0);Rb=q[a>>2];Kb=Lb;while(1){Ib=Rb+(q[(Kb<<2)+Nb>>2]<<3)|0;Jb=q[Ib>>2];if(Jb>>>0<=1){if((Kb|0)!=(Lb|0)){break h}Ib=1;break g}Ub=Jb+ -1|0;Tb=Ib;Wb=Jb;Xb=qb;Ib=Jb;Sb=C(Mb*+(Jb>>>0));i:{if(y(Sb)<2147483648){Vb=~~Sb;break i}Vb=-2147483648}Ib=Ib-Vb|0;Ib=Ib?Ib:1;Jb=(Ib|0)<(Jb|0)?Ib:Ub;Jb=(Jb|0)>(qb|0)?Xb:Jb;q[Tb>>2]=Wb-Jb;qb=qb-Jb|0;Qb=Qb-Jb|0;if((Qb|0)==1048576){Qb=1048576;break h}Jb=(Kb|0)>1;Kb=Kb+ -1|0;if(Jb){continue}break}}Ib=0;if((qb|0)>0){continue}break}}qb=q[Ob+8>>2];if(qb){q[Ob+12>>2]=qb;pp(qb)}if(Ib){break c}if((Lb|0)>=0){break d}break c}if((Lb|0)<0){break c}}Jb=q[a>>2];Ib=0;qb=0;while(1){Kb=Jb+(Ib<<3)|0;q[Kb+4>>2]=qb;qb=q[Kb>>2]+qb|0;Kb=(Ib|0)==(Lb|0);Ib=Ib+1|0;if(!Kb){continue}break}if((qb|0)!=1048576){break c}Ib=0;Mb=0;if((Lb|0)>=0){qb=q[a>>2];while(1){Jb=Ib<<3;Kb=q[Jb+qb>>2];if(Kb){Jb=b+Jb|0;Mb=Mb+sp(+(Kb>>>0)*9.5367431640625e-7)*(+t[Jb>>2]+4294967296*+t[Jb+4>>2])}Jb=(Ib|0)==(Lb|0);Ib=Ib+1|0;if(!Jb){continue}break}}b=a;qb=a;Mb=D(-Mb);j:{if(Mb<0x10000000000000000&Mb>=0){Jb=y(Mb)>=1?Mb>0?~~A(C(Mb/4294967296),4294967295)>>>0:~~D((Mb- +(~~Mb>>>0>>>0))/4294967296)>>>0:0;Lb=~~Mb>>>0;break j}Jb=0;Lb=0}q[qb+16>>2]=Lb;q[b+20>>2]=Jb;ti(a,rb)}T=Ob+32|0;return}To();F()}function Vi(a,b,qb,rb){var Yb=0,Zb=0,_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;cc=T-32|0;T=cc;if((qb|0)>0){while(1){hc=$b;$b=(Yb<<3)+b|0;bc=q[$b+4>>2];_b=q[$b>>2];$b=!(bc|_b)?hc:Yb;Zb=Zb+bc|0;bc=_b+dc|0;if(bc>>>0<_b>>>0){Zb=Zb+1|0}dc=bc;Yb=Yb+1|0;if((Yb|0)!=(qb|0)){continue}break}}bc=$b+1|0;q[a+12>>2]=bc;_b=q[a>>2];qb=q[a+4>>2]-_b>>3;a:{if(bc>>>0>qb>>>0){Uh(a,bc-qb|0);break a}if(bc>>>0>=qb>>>0){break a}q[a+4>>2]=_b+(bc<<3)}b:{c:{d:{e:{if(($b|0)>=0){gc=+(dc>>>0)+4294967296*+(Zb>>>0);Zb=q[a>>2];Yb=0;while(1){_b=Yb<<3;dc=_b+b|0;qb=q[dc+4>>2];dc=q[dc>>2];ic=(dc|0)!=0|(qb|0)!=0;_b=Zb+_b|0;ac=(+(dc>>>0)+4294967296*+(qb>>>0))/gc*1048576+.5;f:{if(ac<4294967296&ac>=0){qb=~~ac>>>0;break f}qb=0}qb=ic?qb?qb:1:qb;q[_b>>2]=qb;ec=qb+ec|0;qb=(Yb|0)==($b|0);Yb=Yb+1|0;if(!qb){continue}break}if((ec|0)==1048576){break e}}q[cc+16>>2]=0;q[cc+8>>2]=0;q[cc+12>>2]=0;_b=0;if(bc){if(bc>>>0>=1073741824){break b}qb=bc<<2;_b=zo(qb);q[cc+8>>2]=_b;fc=qb+_b|0;q[cc+16>>2]=fc;wp(_b,0,qb);q[cc+12>>2]=fc}if(($b|0)>-1){Yb=0;while(1){q[(Yb<<2)+_b>>2]=Yb;qb=(Yb|0)==($b|0);Yb=Yb+1|0;if(!qb){continue}break}}q[cc+24>>2]=a;kj(_b,fc,cc+24|0);g:{if((ec|0)<1048576){qb=q[a>>2]+(q[q[cc+12>>2]+ -4>>2]<<3)|0;q[qb>>2]=(q[qb>>2]-ec|0)- -1048576;Yb=0;break g}qb=ec+ -1048576|0;bc=q[cc+8>>2];dc=($b|0)<1;while(1){h:{if(dc){break h}ac=1048576/+(ec|0);fc=q[a>>2];_b=$b;while(1){Yb=fc+(q[(_b<<2)+bc>>2]<<3)|0;Zb=q[Yb>>2];if(Zb>>>0<=1){if((_b|0)!=($b|0)){break h}Yb=1;break g}ic=Zb+ -1|0;hc=Yb;kc=Zb;lc=qb;Yb=Zb;gc=C(ac*+(Zb>>>0));i:{if(y(gc)<2147483648){jc=~~gc;break i}jc=-2147483648}Yb=Yb-jc|0;Yb=Yb?Yb:1;Zb=(Yb|0)<(Zb|0)?Yb:ic;Zb=(Zb|0)>(qb|0)?lc:Zb;q[hc>>2]=kc-Zb;qb=qb-Zb|0;ec=ec-Zb|0;if((ec|0)==1048576){ec=1048576;break h}Zb=(_b|0)>1;_b=_b+ -1|0;if(Zb){continue}break}}Yb=0;if((qb|0)>0){continue}break}}qb=q[cc+8>>2];if(qb){q[cc+12>>2]=qb;pp(qb)}if(Yb){break c}if(($b|0)>=0){break d}break c}if(($b|0)<0){break c}}Zb=q[a>>2];Yb=0;qb=0;while(1){_b=Zb+(Yb<<3)|0;q[_b+4>>2]=qb;qb=q[_b>>2]+qb|0;_b=(Yb|0)==($b|0);Yb=Yb+1|0;if(!_b){continue}break}if((qb|0)!=1048576){break c}Yb=0;ac=0;if(($b|0)>=0){qb=q[a>>2];while(1){Zb=Yb<<3;_b=q[Zb+qb>>2];if(_b){Zb=b+Zb|0;ac=ac+sp(+(_b>>>0)*9.5367431640625e-7)*(+t[Zb>>2]+4294967296*+t[Zb+4>>2])}Zb=(Yb|0)==($b|0);Yb=Yb+1|0;if(!Zb){continue}break}}b=a;qb=a;ac=D(-ac);j:{if(ac<0x10000000000000000&ac>=0){Zb=y(ac)>=1?ac>0?~~A(C(ac/4294967296),4294967295)>>>0:~~D((ac- +(~~ac>>>0>>>0))/4294967296)>>>0:0;$b=~~ac>>>0;break j}Zb=0;$b=0}q[qb+16>>2]=$b;q[b+20>>2]=Zb;ti(a,rb)}T=cc+32|0;return}To();F()}function Wi(a,b,qb,rb){var mc=0,nc=0,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;sc=T-32|0;T=sc;if((qb|0)>0){while(1){xc=pc;pc=(mc<<3)+b|0;rc=q[pc+4>>2];oc=q[pc>>2];pc=!(rc|oc)?xc:mc;nc=nc+rc|0;rc=oc+tc|0;if(rc>>>0<oc>>>0){nc=nc+1|0}tc=rc;mc=mc+1|0;if((mc|0)!=(qb|0)){continue}break}}rc=pc+1|0;q[a+12>>2]=rc;oc=q[a>>2];qb=q[a+4>>2]-oc>>3;a:{if(rc>>>0>qb>>>0){Uh(a,rc-qb|0);break a}if(rc>>>0>=qb>>>0){break a}q[a+4>>2]=oc+(rc<<3)}b:{c:{d:{e:{if((pc|0)>=0){wc=+(tc>>>0)+4294967296*+(nc>>>0);nc=q[a>>2];mc=0;while(1){oc=mc<<3;tc=oc+b|0;qb=q[tc+4>>2];tc=q[tc>>2];yc=(tc|0)!=0|(qb|0)!=0;oc=nc+oc|0;qc=(+(tc>>>0)+4294967296*+(qb>>>0))/wc*1048576+.5;f:{if(qc<4294967296&qc>=0){qb=~~qc>>>0;break f}qb=0}qb=yc?qb?qb:1:qb;q[oc>>2]=qb;uc=qb+uc|0;qb=(mc|0)==(pc|0);mc=mc+1|0;if(!qb){continue}break}if((uc|0)==1048576){break e}}q[sc+16>>2]=0;q[sc+8>>2]=0;q[sc+12>>2]=0;oc=0;if(rc){if(rc>>>0>=1073741824){break b}qb=rc<<2;oc=zo(qb);q[sc+8>>2]=oc;vc=qb+oc|0;q[sc+16>>2]=vc;wp(oc,0,qb);q[sc+12>>2]=vc}if((pc|0)>-1){mc=0;while(1){q[(mc<<2)+oc>>2]=mc;qb=(mc|0)==(pc|0);mc=mc+1|0;if(!qb){continue}break}}q[sc+24>>2]=a;lj(oc,vc,sc+24|0);g:{if((uc|0)<1048576){qb=q[a>>2]+(q[q[sc+12>>2]+ -4>>2]<<3)|0;q[qb>>2]=(q[qb>>2]-uc|0)- -1048576;mc=0;break g}qb=uc+ -1048576|0;rc=q[sc+8>>2];tc=(pc|0)<1;while(1){h:{if(tc){break h}qc=1048576/+(uc|0);vc=q[a>>2];oc=pc;while(1){mc=vc+(q[(oc<<2)+rc>>2]<<3)|0;nc=q[mc>>2];if(nc>>>0<=1){if((oc|0)!=(pc|0)){break h}mc=1;break g}yc=nc+ -1|0;xc=mc;Ac=nc;Bc=qb;mc=nc;wc=C(qc*+(nc>>>0));i:{if(y(wc)<2147483648){zc=~~wc;break i}zc=-2147483648}mc=mc-zc|0;mc=mc?mc:1;nc=(mc|0)<(nc|0)?mc:yc;nc=(nc|0)>(qb|0)?Bc:nc;q[xc>>2]=Ac-nc;qb=qb-nc|0;uc=uc-nc|0;if((uc|0)==1048576){uc=1048576;break h}nc=(oc|0)>1;oc=oc+ -1|0;if(nc){continue}break}}mc=0;if((qb|0)>0){continue}break}}qb=q[sc+8>>2];if(qb){q[sc+12>>2]=qb;pp(qb)}if(mc){break c}if((pc|0)>=0){break d}break c}if((pc|0)<0){break c}}nc=q[a>>2];mc=0;qb=0;while(1){oc=nc+(mc<<3)|0;q[oc+4>>2]=qb;qb=q[oc>>2]+qb|0;oc=(mc|0)==(pc|0);mc=mc+1|0;if(!oc){continue}break}if((qb|0)!=1048576){break c}mc=0;qc=0;if((pc|0)>=0){qb=q[a>>2];while(1){nc=mc<<3;oc=q[nc+qb>>2];if(oc){nc=b+nc|0;qc=qc+sp(+(oc>>>0)*9.5367431640625e-7)*(+t[nc>>2]+4294967296*+t[nc+4>>2])}nc=(mc|0)==(pc|0);mc=mc+1|0;if(!nc){continue}break}}b=a;qb=a;qc=D(-qc);j:{if(qc<0x10000000000000000&qc>=0){nc=y(qc)>=1?qc>0?~~A(C(qc/4294967296),4294967295)>>>0:~~D((qc- +(~~qc>>>0>>>0))/4294967296)>>>0:0;pc=~~qc>>>0;break j}nc=0;pc=0}q[qb+16>>2]=pc;q[b+20>>2]=nc;ti(a,rb)}T=sc+32|0;return}To();F()}function Xi(a,b,T){var qb=0,rb=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0;a:{b:while(1){Ic=b+ -4|0;c:while(1){Cc=a;d:while(1){e:{f:{g:{h:{qb=b-Cc|0;a=qb>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;qb=b+ -4|0;b=q[qb>>2];if(T>>>0<=b>>>0){break h}Ic=T;T=q[Cc>>2];if(Ic>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[Cc>>2]=b;q[qb>>2]=T;return;case 2:vi(Cc,Cc+4|0,Cc+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(Cc,Cc+4|0,Cc+8|0,Cc+12|0,b+ -4|0,T);return}if((qb|0)<=123){xi(Cc,b,T);return}Fc=((a|0)/2<<2)+Cc|0;j:{if((qb|0)>=3997){a=(a|0)/4<<2;Hc=wi(Cc,a+Cc|0,Fc,a+Fc|0,Ic,T);break j}Hc=yi(Cc,Fc,Ic,T)}a=q[T>>2];Ec=q[a>>2];Dc=q[a+4>>2]-Ec>>3;a=q[Cc>>2];if(Dc>>>0<=a>>>0){break e}qb=q[Fc>>2];if(Dc>>>0<=qb>>>0){break e}rb=Ic;Gc=q[Ec+(a<<3)>>2];Jc=q[Ec+(qb<<3)>>2];if(Gc>>>0>=Jc>>>0){while(1){rb=rb+ -4|0;if((rb|0)==(Cc|0)){a=q[Ic>>2];if(Dc>>>0<=a>>>0){break e}qb=Cc+4|0;if(Gc>>>0<t[Ec+(a<<3)>>2]){break f}if((qb|0)==(Ic|0)){break a}while(1){rb=q[qb>>2];if(Dc>>>0<=rb>>>0){break e}if(Gc>>>0<t[Ec+(rb<<3)>>2]){q[qb>>2]=a;q[Ic>>2]=rb;qb=qb+4|0;break f}qb=qb+4|0;if((Ic|0)!=(qb|0)){continue}break}break a}qb=q[rb>>2];if(Dc>>>0<=qb>>>0){break e}if(t[Ec+(qb<<3)>>2]>=Jc>>>0){continue}break}q[Cc>>2]=qb;q[rb>>2]=a;Hc=Hc+1|0}k:{qb=Cc+4|0;if(qb>>>0>=rb>>>0){break k}a=q[qb>>2];if(Dc>>>0<=a>>>0){break e}while(1){Gc=q[Fc>>2];Jc=Ec+(Gc<<3)|0;while(1){if(Dc>>>0<=Gc>>>0){break e}Kc=q[Jc>>2];if(t[Ec+(a<<3)>>2]<Kc>>>0){a=q[qb+4>>2];qb=qb+4|0;if(Dc>>>0>a>>>0){continue}break e}break}while(1){rb=rb+ -4|0;Gc=q[rb>>2];if(Dc>>>0<=Gc>>>0){break e}if(t[Ec+(Gc<<3)>>2]>=Kc>>>0){continue}break}if(qb>>>0>rb>>>0){break k}q[qb>>2]=Gc;q[rb>>2]=a;Fc=(qb|0)==(Fc|0)?rb:Fc;Hc=Hc+1|0;a=q[qb+4>>2];qb=qb+4|0;if(Dc>>>0>a>>>0){continue}break}break e}l:{if((qb|0)==(Fc|0)){break l}a=q[Fc>>2];if(Dc>>>0<=a>>>0){break e}rb=q[qb>>2];if(Dc>>>0<=rb>>>0){break e}if(t[Ec+(a<<3)>>2]>=t[Ec+(rb<<3)>>2]){break l}q[qb>>2]=a;q[Fc>>2]=rb;Hc=Hc+1|0}if(!Hc){rb=zi(Cc,qb,T);a=qb+4|0;if(zi(a,b,T)){b=qb;a=Cc;if(!rb){continue b}break a}if(rb){continue c}}if((qb-Cc|0)<(b-qb|0)){Xi(Cc,qb,T);a=qb+4|0;continue c}Xi(qb+4|0,b,T);b=qb;a=Cc;continue b}Uo();F()}yi(Cc,Cc+4|0,b+ -4|0,T);break a}if((qb|0)==(Ic|0)){break a}a=Ic;rb=q[Cc>>2];if(Dc>>>0<=rb>>>0){break e}while(1){Fc=Ec+(rb<<3)|0;while(1){Hc=q[qb>>2];if(Dc>>>0<=Hc>>>0){break e}Gc=q[Fc>>2];if(Gc>>>0>=t[Ec+(Hc<<3)>>2]){qb=qb+4|0;if(Dc>>>0>rb>>>0){continue}break e}break}while(1){a=a+ -4|0;rb=q[a>>2];if(Dc>>>0<=rb>>>0){break e}if(Gc>>>0<t[Ec+(rb<<3)>>2]){continue}break}if(qb>>>0>=a>>>0){Cc=qb;continue d}q[qb>>2]=rb;q[a>>2]=Hc;qb=qb+4|0;rb=q[Cc>>2];if(Dc>>>0>rb>>>0){continue}break}}break}break}break}Uo();F()}}function Yi(a,b,T){var Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=0,Vc=0;a:{b:while(1){Tc=b+ -4|0;c:while(1){Nc=a;d:while(1){e:{f:{g:{h:{Lc=b-Nc|0;a=Lc>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;Lc=b+ -4|0;b=q[Lc>>2];if(T>>>0<=b>>>0){break h}Tc=T;T=q[Nc>>2];if(Tc>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[Nc>>2]=b;q[Lc>>2]=T;return;case 2:vi(Nc,Nc+4|0,Nc+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(Nc,Nc+4|0,Nc+8|0,Nc+12|0,b+ -4|0,T);return}if((Lc|0)<=123){xi(Nc,b,T);return}Qc=((a|0)/2<<2)+Nc|0;j:{if((Lc|0)>=3997){a=(a|0)/4<<2;Sc=wi(Nc,a+Nc|0,Qc,a+Qc|0,Tc,T);break j}Sc=yi(Nc,Qc,Tc,T)}a=q[T>>2];Pc=q[a>>2];Oc=q[a+4>>2]-Pc>>3;a=q[Nc>>2];if(Oc>>>0<=a>>>0){break e}Lc=q[Qc>>2];if(Oc>>>0<=Lc>>>0){break e}Mc=Tc;Rc=q[Pc+(a<<3)>>2];Uc=q[Pc+(Lc<<3)>>2];if(Rc>>>0>=Uc>>>0){while(1){Mc=Mc+ -4|0;if((Mc|0)==(Nc|0)){a=q[Tc>>2];if(Oc>>>0<=a>>>0){break e}Lc=Nc+4|0;if(Rc>>>0<t[Pc+(a<<3)>>2]){break f}if((Lc|0)==(Tc|0)){break a}while(1){Mc=q[Lc>>2];if(Oc>>>0<=Mc>>>0){break e}if(Rc>>>0<t[Pc+(Mc<<3)>>2]){q[Lc>>2]=a;q[Tc>>2]=Mc;Lc=Lc+4|0;break f}Lc=Lc+4|0;if((Tc|0)!=(Lc|0)){continue}break}break a}Lc=q[Mc>>2];if(Oc>>>0<=Lc>>>0){break e}if(t[Pc+(Lc<<3)>>2]>=Uc>>>0){continue}break}q[Nc>>2]=Lc;q[Mc>>2]=a;Sc=Sc+1|0}k:{Lc=Nc+4|0;if(Lc>>>0>=Mc>>>0){break k}a=q[Lc>>2];if(Oc>>>0<=a>>>0){break e}while(1){Rc=q[Qc>>2];Uc=Pc+(Rc<<3)|0;while(1){if(Oc>>>0<=Rc>>>0){break e}Vc=q[Uc>>2];if(t[Pc+(a<<3)>>2]<Vc>>>0){a=q[Lc+4>>2];Lc=Lc+4|0;if(Oc>>>0>a>>>0){continue}break e}break}while(1){Mc=Mc+ -4|0;Rc=q[Mc>>2];if(Oc>>>0<=Rc>>>0){break e}if(t[Pc+(Rc<<3)>>2]>=Vc>>>0){continue}break}if(Lc>>>0>Mc>>>0){break k}q[Lc>>2]=Rc;q[Mc>>2]=a;Qc=(Lc|0)==(Qc|0)?Mc:Qc;Sc=Sc+1|0;a=q[Lc+4>>2];Lc=Lc+4|0;if(Oc>>>0>a>>>0){continue}break}break e}l:{if((Lc|0)==(Qc|0)){break l}a=q[Qc>>2];if(Oc>>>0<=a>>>0){break e}Mc=q[Lc>>2];if(Oc>>>0<=Mc>>>0){break e}if(t[Pc+(a<<3)>>2]>=t[Pc+(Mc<<3)>>2]){break l}q[Lc>>2]=a;q[Qc>>2]=Mc;Sc=Sc+1|0}if(!Sc){Mc=zi(Nc,Lc,T);a=Lc+4|0;if(zi(a,b,T)){b=Lc;a=Nc;if(!Mc){continue b}break a}if(Mc){continue c}}if((Lc-Nc|0)<(b-Lc|0)){Yi(Nc,Lc,T);a=Lc+4|0;continue c}Yi(Lc+4|0,b,T);b=Lc;a=Nc;continue b}Uo();F()}yi(Nc,Nc+4|0,b+ -4|0,T);break a}if((Lc|0)==(Tc|0)){break a}a=Tc;Mc=q[Nc>>2];if(Oc>>>0<=Mc>>>0){break e}while(1){Qc=Pc+(Mc<<3)|0;while(1){Sc=q[Lc>>2];if(Oc>>>0<=Sc>>>0){break e}Rc=q[Qc>>2];if(Rc>>>0>=t[Pc+(Sc<<3)>>2]){Lc=Lc+4|0;if(Oc>>>0>Mc>>>0){continue}break e}break}while(1){a=a+ -4|0;Mc=q[a>>2];if(Oc>>>0<=Mc>>>0){break e}if(Rc>>>0<t[Pc+(Mc<<3)>>2]){continue}break}if(Lc>>>0>=a>>>0){Nc=Lc;continue d}q[Lc>>2]=Mc;q[a>>2]=Sc;Lc=Lc+4|0;Mc=q[Nc>>2];if(Oc>>>0>Mc>>>0){continue}break}}break}break}break}Uo();F()}}function Zi(a,b,T){var Wc=0,Xc=0,Yc=0,Zc=0,_c=0,$c=0,ad=0,bd=0,cd=0,dd=0,ed=0;a:{b:while(1){cd=b+ -4|0;c:while(1){Yc=a;d:while(1){e:{f:{g:{h:{Wc=b-Yc|0;a=Wc>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;Wc=b+ -4|0;b=q[Wc>>2];if(T>>>0<=b>>>0){break h}cd=T;T=q[Yc>>2];if(cd>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[Yc>>2]=b;q[Wc>>2]=T;return;case 2:vi(Yc,Yc+4|0,Yc+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(Yc,Yc+4|0,Yc+8|0,Yc+12|0,b+ -4|0,T);return}if((Wc|0)<=123){xi(Yc,b,T);return}$c=((a|0)/2<<2)+Yc|0;j:{if((Wc|0)>=3997){a=(a|0)/4<<2;bd=wi(Yc,a+Yc|0,$c,a+$c|0,cd,T);break j}bd=yi(Yc,$c,cd,T)}a=q[T>>2];_c=q[a>>2];Zc=q[a+4>>2]-_c>>3;a=q[Yc>>2];if(Zc>>>0<=a>>>0){break e}Wc=q[$c>>2];if(Zc>>>0<=Wc>>>0){break e}Xc=cd;ad=q[_c+(a<<3)>>2];dd=q[_c+(Wc<<3)>>2];if(ad>>>0>=dd>>>0){while(1){Xc=Xc+ -4|0;if((Xc|0)==(Yc|0)){a=q[cd>>2];if(Zc>>>0<=a>>>0){break e}Wc=Yc+4|0;if(ad>>>0<t[_c+(a<<3)>>2]){break f}if((Wc|0)==(cd|0)){break a}while(1){Xc=q[Wc>>2];if(Zc>>>0<=Xc>>>0){break e}if(ad>>>0<t[_c+(Xc<<3)>>2]){q[Wc>>2]=a;q[cd>>2]=Xc;Wc=Wc+4|0;break f}Wc=Wc+4|0;if((cd|0)!=(Wc|0)){continue}break}break a}Wc=q[Xc>>2];if(Zc>>>0<=Wc>>>0){break e}if(t[_c+(Wc<<3)>>2]>=dd>>>0){continue}break}q[Yc>>2]=Wc;q[Xc>>2]=a;bd=bd+1|0}k:{Wc=Yc+4|0;if(Wc>>>0>=Xc>>>0){break k}a=q[Wc>>2];if(Zc>>>0<=a>>>0){break e}while(1){ad=q[$c>>2];dd=_c+(ad<<3)|0;while(1){if(Zc>>>0<=ad>>>0){break e}ed=q[dd>>2];if(t[_c+(a<<3)>>2]<ed>>>0){a=q[Wc+4>>2];Wc=Wc+4|0;if(Zc>>>0>a>>>0){continue}break e}break}while(1){Xc=Xc+ -4|0;ad=q[Xc>>2];if(Zc>>>0<=ad>>>0){break e}if(t[_c+(ad<<3)>>2]>=ed>>>0){continue}break}if(Wc>>>0>Xc>>>0){break k}q[Wc>>2]=ad;q[Xc>>2]=a;$c=(Wc|0)==($c|0)?Xc:$c;bd=bd+1|0;a=q[Wc+4>>2];Wc=Wc+4|0;if(Zc>>>0>a>>>0){continue}break}break e}l:{if((Wc|0)==($c|0)){break l}a=q[$c>>2];if(Zc>>>0<=a>>>0){break e}Xc=q[Wc>>2];if(Zc>>>0<=Xc>>>0){break e}if(t[_c+(a<<3)>>2]>=t[_c+(Xc<<3)>>2]){break l}q[Wc>>2]=a;q[$c>>2]=Xc;bd=bd+1|0}if(!bd){Xc=zi(Yc,Wc,T);a=Wc+4|0;if(zi(a,b,T)){b=Wc;a=Yc;if(!Xc){continue b}break a}if(Xc){continue c}}if((Wc-Yc|0)<(b-Wc|0)){Zi(Yc,Wc,T);a=Wc+4|0;continue c}Zi(Wc+4|0,b,T);b=Wc;a=Yc;continue b}Uo();F()}yi(Yc,Yc+4|0,b+ -4|0,T);break a}if((Wc|0)==(cd|0)){break a}a=cd;Xc=q[Yc>>2];if(Zc>>>0<=Xc>>>0){break e}while(1){$c=_c+(Xc<<3)|0;while(1){bd=q[Wc>>2];if(Zc>>>0<=bd>>>0){break e}ad=q[$c>>2];if(ad>>>0>=t[_c+(bd<<3)>>2]){Wc=Wc+4|0;if(Zc>>>0>Xc>>>0){continue}break e}break}while(1){a=a+ -4|0;Xc=q[a>>2];if(Zc>>>0<=Xc>>>0){break e}if(ad>>>0<t[_c+(Xc<<3)>>2]){continue}break}if(Wc>>>0>=a>>>0){Yc=Wc;continue d}q[Wc>>2]=Xc;q[a>>2]=bd;Wc=Wc+4|0;Xc=q[Yc>>2];if(Zc>>>0>Xc>>>0){continue}break}}break}break}break}Uo();F()}}function _i(a,b,T){var fd=0,gd=0,hd=0,id=0,jd=0,kd=0,ld=0,md=0,nd=0,od=0,pd=0;a:{b:while(1){nd=b+ -4|0;c:while(1){hd=a;d:while(1){e:{f:{g:{h:{fd=b-hd|0;a=fd>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;fd=b+ -4|0;b=q[fd>>2];if(T>>>0<=b>>>0){break h}nd=T;T=q[hd>>2];if(nd>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[hd>>2]=b;q[fd>>2]=T;return;case 2:vi(hd,hd+4|0,hd+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(hd,hd+4|0,hd+8|0,hd+12|0,b+ -4|0,T);return}if((fd|0)<=123){xi(hd,b,T);return}kd=((a|0)/2<<2)+hd|0;j:{if((fd|0)>=3997){a=(a|0)/4<<2;md=wi(hd,a+hd|0,kd,a+kd|0,nd,T);break j}md=yi(hd,kd,nd,T)}a=q[T>>2];jd=q[a>>2];id=q[a+4>>2]-jd>>3;a=q[hd>>2];if(id>>>0<=a>>>0){break e}fd=q[kd>>2];if(id>>>0<=fd>>>0){break e}gd=nd;ld=q[jd+(a<<3)>>2];od=q[jd+(fd<<3)>>2];if(ld>>>0>=od>>>0){while(1){gd=gd+ -4|0;if((gd|0)==(hd|0)){a=q[nd>>2];if(id>>>0<=a>>>0){break e}fd=hd+4|0;if(ld>>>0<t[jd+(a<<3)>>2]){break f}if((fd|0)==(nd|0)){break a}while(1){gd=q[fd>>2];if(id>>>0<=gd>>>0){break e}if(ld>>>0<t[jd+(gd<<3)>>2]){q[fd>>2]=a;q[nd>>2]=gd;fd=fd+4|0;break f}fd=fd+4|0;if((nd|0)!=(fd|0)){continue}break}break a}fd=q[gd>>2];if(id>>>0<=fd>>>0){break e}if(t[jd+(fd<<3)>>2]>=od>>>0){continue}break}q[hd>>2]=fd;q[gd>>2]=a;md=md+1|0}k:{fd=hd+4|0;if(fd>>>0>=gd>>>0){break k}a=q[fd>>2];if(id>>>0<=a>>>0){break e}while(1){ld=q[kd>>2];od=jd+(ld<<3)|0;while(1){if(id>>>0<=ld>>>0){break e}pd=q[od>>2];if(t[jd+(a<<3)>>2]<pd>>>0){a=q[fd+4>>2];fd=fd+4|0;if(id>>>0>a>>>0){continue}break e}break}while(1){gd=gd+ -4|0;ld=q[gd>>2];if(id>>>0<=ld>>>0){break e}if(t[jd+(ld<<3)>>2]>=pd>>>0){continue}break}if(fd>>>0>gd>>>0){break k}q[fd>>2]=ld;q[gd>>2]=a;kd=(fd|0)==(kd|0)?gd:kd;md=md+1|0;a=q[fd+4>>2];fd=fd+4|0;if(id>>>0>a>>>0){continue}break}break e}l:{if((fd|0)==(kd|0)){break l}a=q[kd>>2];if(id>>>0<=a>>>0){break e}gd=q[fd>>2];if(id>>>0<=gd>>>0){break e}if(t[jd+(a<<3)>>2]>=t[jd+(gd<<3)>>2]){break l}q[fd>>2]=a;q[kd>>2]=gd;md=md+1|0}if(!md){gd=zi(hd,fd,T);a=fd+4|0;if(zi(a,b,T)){b=fd;a=hd;if(!gd){continue b}break a}if(gd){continue c}}if((fd-hd|0)<(b-fd|0)){_i(hd,fd,T);a=fd+4|0;continue c}_i(fd+4|0,b,T);b=fd;a=hd;continue b}Uo();F()}yi(hd,hd+4|0,b+ -4|0,T);break a}if((fd|0)==(nd|0)){break a}a=nd;gd=q[hd>>2];if(id>>>0<=gd>>>0){break e}while(1){kd=jd+(gd<<3)|0;while(1){md=q[fd>>2];if(id>>>0<=md>>>0){break e}ld=q[kd>>2];if(ld>>>0>=t[jd+(md<<3)>>2]){fd=fd+4|0;if(id>>>0>gd>>>0){continue}break e}break}while(1){a=a+ -4|0;gd=q[a>>2];if(id>>>0<=gd>>>0){break e}if(ld>>>0<t[jd+(gd<<3)>>2]){continue}break}if(fd>>>0>=a>>>0){hd=fd;continue d}q[fd>>2]=gd;q[a>>2]=md;fd=fd+4|0;gd=q[hd>>2];if(id>>>0>gd>>>0){continue}break}}break}break}break}Uo();F()}}function $i(a,b,T){var qd=0,rd=0,sd=0,td=0,ud=0,vd=0,wd=0,xd=0,yd=0,zd=0,Ad=0;a:{b:while(1){yd=b+ -4|0;c:while(1){sd=a;d:while(1){e:{f:{g:{h:{qd=b-sd|0;a=qd>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;qd=b+ -4|0;b=q[qd>>2];if(T>>>0<=b>>>0){break h}yd=T;T=q[sd>>2];if(yd>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[sd>>2]=b;q[qd>>2]=T;return;case 2:vi(sd,sd+4|0,sd+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(sd,sd+4|0,sd+8|0,sd+12|0,b+ -4|0,T);return}if((qd|0)<=123){xi(sd,b,T);return}vd=((a|0)/2<<2)+sd|0;j:{if((qd|0)>=3997){a=(a|0)/4<<2;xd=wi(sd,a+sd|0,vd,a+vd|0,yd,T);break j}xd=yi(sd,vd,yd,T)}a=q[T>>2];ud=q[a>>2];td=q[a+4>>2]-ud>>3;a=q[sd>>2];if(td>>>0<=a>>>0){break e}qd=q[vd>>2];if(td>>>0<=qd>>>0){break e}rd=yd;wd=q[ud+(a<<3)>>2];zd=q[ud+(qd<<3)>>2];if(wd>>>0>=zd>>>0){while(1){rd=rd+ -4|0;if((rd|0)==(sd|0)){a=q[yd>>2];if(td>>>0<=a>>>0){break e}qd=sd+4|0;if(wd>>>0<t[ud+(a<<3)>>2]){break f}if((qd|0)==(yd|0)){break a}while(1){rd=q[qd>>2];if(td>>>0<=rd>>>0){break e}if(wd>>>0<t[ud+(rd<<3)>>2]){q[qd>>2]=a;q[yd>>2]=rd;qd=qd+4|0;break f}qd=qd+4|0;if((yd|0)!=(qd|0)){continue}break}break a}qd=q[rd>>2];if(td>>>0<=qd>>>0){break e}if(t[ud+(qd<<3)>>2]>=zd>>>0){continue}break}q[sd>>2]=qd;q[rd>>2]=a;xd=xd+1|0}k:{qd=sd+4|0;if(qd>>>0>=rd>>>0){break k}a=q[qd>>2];if(td>>>0<=a>>>0){break e}while(1){wd=q[vd>>2];zd=ud+(wd<<3)|0;while(1){if(td>>>0<=wd>>>0){break e}Ad=q[zd>>2];if(t[ud+(a<<3)>>2]<Ad>>>0){a=q[qd+4>>2];qd=qd+4|0;if(td>>>0>a>>>0){continue}break e}break}while(1){rd=rd+ -4|0;wd=q[rd>>2];if(td>>>0<=wd>>>0){break e}if(t[ud+(wd<<3)>>2]>=Ad>>>0){continue}break}if(qd>>>0>rd>>>0){break k}q[qd>>2]=wd;q[rd>>2]=a;vd=(qd|0)==(vd|0)?rd:vd;xd=xd+1|0;a=q[qd+4>>2];qd=qd+4|0;if(td>>>0>a>>>0){continue}break}break e}l:{if((qd|0)==(vd|0)){break l}a=q[vd>>2];if(td>>>0<=a>>>0){break e}rd=q[qd>>2];if(td>>>0<=rd>>>0){break e}if(t[ud+(a<<3)>>2]>=t[ud+(rd<<3)>>2]){break l}q[qd>>2]=a;q[vd>>2]=rd;xd=xd+1|0}if(!xd){rd=zi(sd,qd,T);a=qd+4|0;if(zi(a,b,T)){b=qd;a=sd;if(!rd){continue b}break a}if(rd){continue c}}if((qd-sd|0)<(b-qd|0)){$i(sd,qd,T);a=qd+4|0;continue c}$i(qd+4|0,b,T);b=qd;a=sd;continue b}Uo();F()}yi(sd,sd+4|0,b+ -4|0,T);break a}if((qd|0)==(yd|0)){break a}a=yd;rd=q[sd>>2];if(td>>>0<=rd>>>0){break e}while(1){vd=ud+(rd<<3)|0;while(1){xd=q[qd>>2];if(td>>>0<=xd>>>0){break e}wd=q[vd>>2];if(wd>>>0>=t[ud+(xd<<3)>>2]){qd=qd+4|0;if(td>>>0>rd>>>0){continue}break e}break}while(1){a=a+ -4|0;rd=q[a>>2];if(td>>>0<=rd>>>0){break e}if(wd>>>0<t[ud+(rd<<3)>>2]){continue}break}if(qd>>>0>=a>>>0){sd=qd;continue d}q[qd>>2]=rd;q[a>>2]=xd;qd=qd+4|0;rd=q[sd>>2];if(td>>>0>rd>>>0){continue}break}}break}break}break}Uo();F()}}function aj(a,b,T){var Bd=0,Cd=0,Dd=0,Ed=0,Fd=0,Gd=0,Hd=0,Id=0,Jd=0,Kd=0,Ld=0;a:{b:while(1){Jd=b+ -4|0;c:while(1){Dd=a;d:while(1){e:{f:{g:{h:{Bd=b-Dd|0;a=Bd>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;Bd=b+ -4|0;b=q[Bd>>2];if(T>>>0<=b>>>0){break h}Jd=T;T=q[Dd>>2];if(Jd>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[Dd>>2]=b;q[Bd>>2]=T;return;case 2:vi(Dd,Dd+4|0,Dd+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(Dd,Dd+4|0,Dd+8|0,Dd+12|0,b+ -4|0,T);return}if((Bd|0)<=123){xi(Dd,b,T);return}Gd=((a|0)/2<<2)+Dd|0;j:{if((Bd|0)>=3997){a=(a|0)/4<<2;Id=wi(Dd,a+Dd|0,Gd,a+Gd|0,Jd,T);break j}Id=yi(Dd,Gd,Jd,T)}a=q[T>>2];Fd=q[a>>2];Ed=q[a+4>>2]-Fd>>3;a=q[Dd>>2];if(Ed>>>0<=a>>>0){break e}Bd=q[Gd>>2];if(Ed>>>0<=Bd>>>0){break e}Cd=Jd;Hd=q[Fd+(a<<3)>>2];Kd=q[Fd+(Bd<<3)>>2];if(Hd>>>0>=Kd>>>0){while(1){Cd=Cd+ -4|0;if((Cd|0)==(Dd|0)){a=q[Jd>>2];if(Ed>>>0<=a>>>0){break e}Bd=Dd+4|0;if(Hd>>>0<t[Fd+(a<<3)>>2]){break f}if((Bd|0)==(Jd|0)){break a}while(1){Cd=q[Bd>>2];if(Ed>>>0<=Cd>>>0){break e}if(Hd>>>0<t[Fd+(Cd<<3)>>2]){q[Bd>>2]=a;q[Jd>>2]=Cd;Bd=Bd+4|0;break f}Bd=Bd+4|0;if((Jd|0)!=(Bd|0)){continue}break}break a}Bd=q[Cd>>2];if(Ed>>>0<=Bd>>>0){break e}if(t[Fd+(Bd<<3)>>2]>=Kd>>>0){continue}break}q[Dd>>2]=Bd;q[Cd>>2]=a;Id=Id+1|0}k:{Bd=Dd+4|0;if(Bd>>>0>=Cd>>>0){break k}a=q[Bd>>2];if(Ed>>>0<=a>>>0){break e}while(1){Hd=q[Gd>>2];Kd=Fd+(Hd<<3)|0;while(1){if(Ed>>>0<=Hd>>>0){break e}Ld=q[Kd>>2];if(t[Fd+(a<<3)>>2]<Ld>>>0){a=q[Bd+4>>2];Bd=Bd+4|0;if(Ed>>>0>a>>>0){continue}break e}break}while(1){Cd=Cd+ -4|0;Hd=q[Cd>>2];if(Ed>>>0<=Hd>>>0){break e}if(t[Fd+(Hd<<3)>>2]>=Ld>>>0){continue}break}if(Bd>>>0>Cd>>>0){break k}q[Bd>>2]=Hd;q[Cd>>2]=a;Gd=(Bd|0)==(Gd|0)?Cd:Gd;Id=Id+1|0;a=q[Bd+4>>2];Bd=Bd+4|0;if(Ed>>>0>a>>>0){continue}break}break e}l:{if((Bd|0)==(Gd|0)){break l}a=q[Gd>>2];if(Ed>>>0<=a>>>0){break e}Cd=q[Bd>>2];if(Ed>>>0<=Cd>>>0){break e}if(t[Fd+(a<<3)>>2]>=t[Fd+(Cd<<3)>>2]){break l}q[Bd>>2]=a;q[Gd>>2]=Cd;Id=Id+1|0}if(!Id){Cd=zi(Dd,Bd,T);a=Bd+4|0;if(zi(a,b,T)){b=Bd;a=Dd;if(!Cd){continue b}break a}if(Cd){continue c}}if((Bd-Dd|0)<(b-Bd|0)){aj(Dd,Bd,T);a=Bd+4|0;continue c}aj(Bd+4|0,b,T);b=Bd;a=Dd;continue b}Uo();F()}yi(Dd,Dd+4|0,b+ -4|0,T);break a}if((Bd|0)==(Jd|0)){break a}a=Jd;Cd=q[Dd>>2];if(Ed>>>0<=Cd>>>0){break e}while(1){Gd=Fd+(Cd<<3)|0;while(1){Id=q[Bd>>2];if(Ed>>>0<=Id>>>0){break e}Hd=q[Gd>>2];if(Hd>>>0>=t[Fd+(Id<<3)>>2]){Bd=Bd+4|0;if(Ed>>>0>Cd>>>0){continue}break e}break}while(1){a=a+ -4|0;Cd=q[a>>2];if(Ed>>>0<=Cd>>>0){break e}if(Hd>>>0<t[Fd+(Cd<<3)>>2]){continue}break}if(Bd>>>0>=a>>>0){Dd=Bd;continue d}q[Bd>>2]=Cd;q[a>>2]=Id;Bd=Bd+4|0;Cd=q[Dd>>2];if(Ed>>>0>Cd>>>0){continue}break}}break}break}break}Uo();F()}}function bj(a,b,T){var Md=0,Nd=0,Od=0,Pd=0,Qd=0,Rd=0,Sd=0,Td=0,Ud=0,Vd=0,Wd=0;a:{b:while(1){Ud=b+ -4|0;c:while(1){Od=a;d:while(1){e:{f:{g:{h:{Md=b-Od|0;a=Md>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;Md=b+ -4|0;b=q[Md>>2];if(T>>>0<=b>>>0){break h}Ud=T;T=q[Od>>2];if(Ud>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[Od>>2]=b;q[Md>>2]=T;return;case 2:vi(Od,Od+4|0,Od+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(Od,Od+4|0,Od+8|0,Od+12|0,b+ -4|0,T);return}if((Md|0)<=123){xi(Od,b,T);return}Rd=((a|0)/2<<2)+Od|0;j:{if((Md|0)>=3997){a=(a|0)/4<<2;Td=wi(Od,a+Od|0,Rd,a+Rd|0,Ud,T);break j}Td=yi(Od,Rd,Ud,T)}a=q[T>>2];Qd=q[a>>2];Pd=q[a+4>>2]-Qd>>3;a=q[Od>>2];if(Pd>>>0<=a>>>0){break e}Md=q[Rd>>2];if(Pd>>>0<=Md>>>0){break e}Nd=Ud;Sd=q[Qd+(a<<3)>>2];Vd=q[Qd+(Md<<3)>>2];if(Sd>>>0>=Vd>>>0){while(1){Nd=Nd+ -4|0;if((Nd|0)==(Od|0)){a=q[Ud>>2];if(Pd>>>0<=a>>>0){break e}Md=Od+4|0;if(Sd>>>0<t[Qd+(a<<3)>>2]){break f}if((Md|0)==(Ud|0)){break a}while(1){Nd=q[Md>>2];if(Pd>>>0<=Nd>>>0){break e}if(Sd>>>0<t[Qd+(Nd<<3)>>2]){q[Md>>2]=a;q[Ud>>2]=Nd;Md=Md+4|0;break f}Md=Md+4|0;if((Ud|0)!=(Md|0)){continue}break}break a}Md=q[Nd>>2];if(Pd>>>0<=Md>>>0){break e}if(t[Qd+(Md<<3)>>2]>=Vd>>>0){continue}break}q[Od>>2]=Md;q[Nd>>2]=a;Td=Td+1|0}k:{Md=Od+4|0;if(Md>>>0>=Nd>>>0){break k}a=q[Md>>2];if(Pd>>>0<=a>>>0){break e}while(1){Sd=q[Rd>>2];Vd=Qd+(Sd<<3)|0;while(1){if(Pd>>>0<=Sd>>>0){break e}Wd=q[Vd>>2];if(t[Qd+(a<<3)>>2]<Wd>>>0){a=q[Md+4>>2];Md=Md+4|0;if(Pd>>>0>a>>>0){continue}break e}break}while(1){Nd=Nd+ -4|0;Sd=q[Nd>>2];if(Pd>>>0<=Sd>>>0){break e}if(t[Qd+(Sd<<3)>>2]>=Wd>>>0){continue}break}if(Md>>>0>Nd>>>0){break k}q[Md>>2]=Sd;q[Nd>>2]=a;Rd=(Md|0)==(Rd|0)?Nd:Rd;Td=Td+1|0;a=q[Md+4>>2];Md=Md+4|0;if(Pd>>>0>a>>>0){continue}break}break e}l:{if((Md|0)==(Rd|0)){break l}a=q[Rd>>2];if(Pd>>>0<=a>>>0){break e}Nd=q[Md>>2];if(Pd>>>0<=Nd>>>0){break e}if(t[Qd+(a<<3)>>2]>=t[Qd+(Nd<<3)>>2]){break l}q[Md>>2]=a;q[Rd>>2]=Nd;Td=Td+1|0}if(!Td){Nd=zi(Od,Md,T);a=Md+4|0;if(zi(a,b,T)){b=Md;a=Od;if(!Nd){continue b}break a}if(Nd){continue c}}if((Md-Od|0)<(b-Md|0)){bj(Od,Md,T);a=Md+4|0;continue c}bj(Md+4|0,b,T);b=Md;a=Od;continue b}Uo();F()}yi(Od,Od+4|0,b+ -4|0,T);break a}if((Md|0)==(Ud|0)){break a}a=Ud;Nd=q[Od>>2];if(Pd>>>0<=Nd>>>0){break e}while(1){Rd=Qd+(Nd<<3)|0;while(1){Td=q[Md>>2];if(Pd>>>0<=Td>>>0){break e}Sd=q[Rd>>2];if(Sd>>>0>=t[Qd+(Td<<3)>>2]){Md=Md+4|0;if(Pd>>>0>Nd>>>0){continue}break e}break}while(1){a=a+ -4|0;Nd=q[a>>2];if(Pd>>>0<=Nd>>>0){break e}if(Sd>>>0<t[Qd+(Nd<<3)>>2]){continue}break}if(Md>>>0>=a>>>0){Od=Md;continue d}q[Md>>2]=Nd;q[a>>2]=Td;Md=Md+4|0;Nd=q[Od>>2];if(Pd>>>0>Nd>>>0){continue}break}}break}break}break}Uo();F()}}function cj(a,b,T){var Xd=0,Yd=0,Zd=0,_d=0,$d=0,ae=0,be=0,ce=0,de=0,ee=0,fe=0;a:{b:while(1){de=b+ -4|0;c:while(1){Zd=a;d:while(1){e:{f:{g:{h:{Xd=b-Zd|0;a=Xd>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;Xd=b+ -4|0;b=q[Xd>>2];if(T>>>0<=b>>>0){break h}de=T;T=q[Zd>>2];if(de>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[Zd>>2]=b;q[Xd>>2]=T;return;case 2:vi(Zd,Zd+4|0,Zd+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(Zd,Zd+4|0,Zd+8|0,Zd+12|0,b+ -4|0,T);return}if((Xd|0)<=123){xi(Zd,b,T);return}ae=((a|0)/2<<2)+Zd|0;j:{if((Xd|0)>=3997){a=(a|0)/4<<2;ce=wi(Zd,a+Zd|0,ae,a+ae|0,de,T);break j}ce=yi(Zd,ae,de,T)}a=q[T>>2];$d=q[a>>2];_d=q[a+4>>2]-$d>>3;a=q[Zd>>2];if(_d>>>0<=a>>>0){break e}Xd=q[ae>>2];if(_d>>>0<=Xd>>>0){break e}Yd=de;be=q[$d+(a<<3)>>2];ee=q[$d+(Xd<<3)>>2];if(be>>>0>=ee>>>0){while(1){Yd=Yd+ -4|0;if((Yd|0)==(Zd|0)){a=q[de>>2];if(_d>>>0<=a>>>0){break e}Xd=Zd+4|0;if(be>>>0<t[$d+(a<<3)>>2]){break f}if((Xd|0)==(de|0)){break a}while(1){Yd=q[Xd>>2];if(_d>>>0<=Yd>>>0){break e}if(be>>>0<t[$d+(Yd<<3)>>2]){q[Xd>>2]=a;q[de>>2]=Yd;Xd=Xd+4|0;break f}Xd=Xd+4|0;if((de|0)!=(Xd|0)){continue}break}break a}Xd=q[Yd>>2];if(_d>>>0<=Xd>>>0){break e}if(t[$d+(Xd<<3)>>2]>=ee>>>0){continue}break}q[Zd>>2]=Xd;q[Yd>>2]=a;ce=ce+1|0}k:{Xd=Zd+4|0;if(Xd>>>0>=Yd>>>0){break k}a=q[Xd>>2];if(_d>>>0<=a>>>0){break e}while(1){be=q[ae>>2];ee=$d+(be<<3)|0;while(1){if(_d>>>0<=be>>>0){break e}fe=q[ee>>2];if(t[$d+(a<<3)>>2]<fe>>>0){a=q[Xd+4>>2];Xd=Xd+4|0;if(_d>>>0>a>>>0){continue}break e}break}while(1){Yd=Yd+ -4|0;be=q[Yd>>2];if(_d>>>0<=be>>>0){break e}if(t[$d+(be<<3)>>2]>=fe>>>0){continue}break}if(Xd>>>0>Yd>>>0){break k}q[Xd>>2]=be;q[Yd>>2]=a;ae=(Xd|0)==(ae|0)?Yd:ae;ce=ce+1|0;a=q[Xd+4>>2];Xd=Xd+4|0;if(_d>>>0>a>>>0){continue}break}break e}l:{if((Xd|0)==(ae|0)){break l}a=q[ae>>2];if(_d>>>0<=a>>>0){break e}Yd=q[Xd>>2];if(_d>>>0<=Yd>>>0){break e}if(t[$d+(a<<3)>>2]>=t[$d+(Yd<<3)>>2]){break l}q[Xd>>2]=a;q[ae>>2]=Yd;ce=ce+1|0}if(!ce){Yd=zi(Zd,Xd,T);a=Xd+4|0;if(zi(a,b,T)){b=Xd;a=Zd;if(!Yd){continue b}break a}if(Yd){continue c}}if((Xd-Zd|0)<(b-Xd|0)){cj(Zd,Xd,T);a=Xd+4|0;continue c}cj(Xd+4|0,b,T);b=Xd;a=Zd;continue b}Uo();F()}yi(Zd,Zd+4|0,b+ -4|0,T);break a}if((Xd|0)==(de|0)){break a}a=de;Yd=q[Zd>>2];if(_d>>>0<=Yd>>>0){break e}while(1){ae=$d+(Yd<<3)|0;while(1){ce=q[Xd>>2];if(_d>>>0<=ce>>>0){break e}be=q[ae>>2];if(be>>>0>=t[$d+(ce<<3)>>2]){Xd=Xd+4|0;if(_d>>>0>Yd>>>0){continue}break e}break}while(1){a=a+ -4|0;Yd=q[a>>2];if(_d>>>0<=Yd>>>0){break e}if(be>>>0<t[$d+(Yd<<3)>>2]){continue}break}if(Xd>>>0>=a>>>0){Zd=Xd;continue d}q[Xd>>2]=Yd;q[a>>2]=ce;Xd=Xd+4|0;Yd=q[Zd>>2];if(_d>>>0>Yd>>>0){continue}break}}break}break}break}Uo();F()}}function dj(a,b,T){var ge=0,he=0,ie=0,je=0,ke=0,le=0,me=0,ne=0,oe=0,pe=0,qe=0;a:{b:while(1){oe=b+ -4|0;c:while(1){ie=a;d:while(1){e:{f:{g:{h:{ge=b-ie|0;a=ge>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;ge=b+ -4|0;b=q[ge>>2];if(T>>>0<=b>>>0){break h}oe=T;T=q[ie>>2];if(oe>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[ie>>2]=b;q[ge>>2]=T;return;case 2:vi(ie,ie+4|0,ie+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(ie,ie+4|0,ie+8|0,ie+12|0,b+ -4|0,T);return}if((ge|0)<=123){xi(ie,b,T);return}le=((a|0)/2<<2)+ie|0;j:{if((ge|0)>=3997){a=(a|0)/4<<2;ne=wi(ie,a+ie|0,le,a+le|0,oe,T);break j}ne=yi(ie,le,oe,T)}a=q[T>>2];ke=q[a>>2];je=q[a+4>>2]-ke>>3;a=q[ie>>2];if(je>>>0<=a>>>0){break e}ge=q[le>>2];if(je>>>0<=ge>>>0){break e}he=oe;me=q[ke+(a<<3)>>2];pe=q[ke+(ge<<3)>>2];if(me>>>0>=pe>>>0){while(1){he=he+ -4|0;if((he|0)==(ie|0)){a=q[oe>>2];if(je>>>0<=a>>>0){break e}ge=ie+4|0;if(me>>>0<t[ke+(a<<3)>>2]){break f}if((ge|0)==(oe|0)){break a}while(1){he=q[ge>>2];if(je>>>0<=he>>>0){break e}if(me>>>0<t[ke+(he<<3)>>2]){q[ge>>2]=a;q[oe>>2]=he;ge=ge+4|0;break f}ge=ge+4|0;if((oe|0)!=(ge|0)){continue}break}break a}ge=q[he>>2];if(je>>>0<=ge>>>0){break e}if(t[ke+(ge<<3)>>2]>=pe>>>0){continue}break}q[ie>>2]=ge;q[he>>2]=a;ne=ne+1|0}k:{ge=ie+4|0;if(ge>>>0>=he>>>0){break k}a=q[ge>>2];if(je>>>0<=a>>>0){break e}while(1){me=q[le>>2];pe=ke+(me<<3)|0;while(1){if(je>>>0<=me>>>0){break e}qe=q[pe>>2];if(t[ke+(a<<3)>>2]<qe>>>0){a=q[ge+4>>2];ge=ge+4|0;if(je>>>0>a>>>0){continue}break e}break}while(1){he=he+ -4|0;me=q[he>>2];if(je>>>0<=me>>>0){break e}if(t[ke+(me<<3)>>2]>=qe>>>0){continue}break}if(ge>>>0>he>>>0){break k}q[ge>>2]=me;q[he>>2]=a;le=(ge|0)==(le|0)?he:le;ne=ne+1|0;a=q[ge+4>>2];ge=ge+4|0;if(je>>>0>a>>>0){continue}break}break e}l:{if((ge|0)==(le|0)){break l}a=q[le>>2];if(je>>>0<=a>>>0){break e}he=q[ge>>2];if(je>>>0<=he>>>0){break e}if(t[ke+(a<<3)>>2]>=t[ke+(he<<3)>>2]){break l}q[ge>>2]=a;q[le>>2]=he;ne=ne+1|0}if(!ne){he=zi(ie,ge,T);a=ge+4|0;if(zi(a,b,T)){b=ge;a=ie;if(!he){continue b}break a}if(he){continue c}}if((ge-ie|0)<(b-ge|0)){dj(ie,ge,T);a=ge+4|0;continue c}dj(ge+4|0,b,T);b=ge;a=ie;continue b}Uo();F()}yi(ie,ie+4|0,b+ -4|0,T);break a}if((ge|0)==(oe|0)){break a}a=oe;he=q[ie>>2];if(je>>>0<=he>>>0){break e}while(1){le=ke+(he<<3)|0;while(1){ne=q[ge>>2];if(je>>>0<=ne>>>0){break e}me=q[le>>2];if(me>>>0>=t[ke+(ne<<3)>>2]){ge=ge+4|0;if(je>>>0>he>>>0){continue}break e}break}while(1){a=a+ -4|0;he=q[a>>2];if(je>>>0<=he>>>0){break e}if(me>>>0<t[ke+(he<<3)>>2]){continue}break}if(ge>>>0>=a>>>0){ie=ge;continue d}q[ge>>2]=he;q[a>>2]=ne;ge=ge+4|0;he=q[ie>>2];if(je>>>0>he>>>0){continue}break}}break}break}break}Uo();F()}}function ej(a,b,T){var re=0,se=0,te=0,ue=0,ve=0,we=0,xe=0,ye=0,ze=0,Ae=0,Be=0;a:{b:while(1){ze=b+ -4|0;c:while(1){te=a;d:while(1){e:{f:{g:{h:{re=b-te|0;a=re>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;re=b+ -4|0;b=q[re>>2];if(T>>>0<=b>>>0){break h}ze=T;T=q[te>>2];if(ze>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[te>>2]=b;q[re>>2]=T;return;case 2:vi(te,te+4|0,te+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(te,te+4|0,te+8|0,te+12|0,b+ -4|0,T);return}if((re|0)<=123){xi(te,b,T);return}we=((a|0)/2<<2)+te|0;j:{if((re|0)>=3997){a=(a|0)/4<<2;ye=wi(te,a+te|0,we,a+we|0,ze,T);break j}ye=yi(te,we,ze,T)}a=q[T>>2];ve=q[a>>2];ue=q[a+4>>2]-ve>>3;a=q[te>>2];if(ue>>>0<=a>>>0){break e}re=q[we>>2];if(ue>>>0<=re>>>0){break e}se=ze;xe=q[ve+(a<<3)>>2];Ae=q[ve+(re<<3)>>2];if(xe>>>0>=Ae>>>0){while(1){se=se+ -4|0;if((se|0)==(te|0)){a=q[ze>>2];if(ue>>>0<=a>>>0){break e}re=te+4|0;if(xe>>>0<t[ve+(a<<3)>>2]){break f}if((re|0)==(ze|0)){break a}while(1){se=q[re>>2];if(ue>>>0<=se>>>0){break e}if(xe>>>0<t[ve+(se<<3)>>2]){q[re>>2]=a;q[ze>>2]=se;re=re+4|0;break f}re=re+4|0;if((ze|0)!=(re|0)){continue}break}break a}re=q[se>>2];if(ue>>>0<=re>>>0){break e}if(t[ve+(re<<3)>>2]>=Ae>>>0){continue}break}q[te>>2]=re;q[se>>2]=a;ye=ye+1|0}k:{re=te+4|0;if(re>>>0>=se>>>0){break k}a=q[re>>2];if(ue>>>0<=a>>>0){break e}while(1){xe=q[we>>2];Ae=ve+(xe<<3)|0;while(1){if(ue>>>0<=xe>>>0){break e}Be=q[Ae>>2];if(t[ve+(a<<3)>>2]<Be>>>0){a=q[re+4>>2];re=re+4|0;if(ue>>>0>a>>>0){continue}break e}break}while(1){se=se+ -4|0;xe=q[se>>2];if(ue>>>0<=xe>>>0){break e}if(t[ve+(xe<<3)>>2]>=Be>>>0){continue}break}if(re>>>0>se>>>0){break k}q[re>>2]=xe;q[se>>2]=a;we=(re|0)==(we|0)?se:we;ye=ye+1|0;a=q[re+4>>2];re=re+4|0;if(ue>>>0>a>>>0){continue}break}break e}l:{if((re|0)==(we|0)){break l}a=q[we>>2];if(ue>>>0<=a>>>0){break e}se=q[re>>2];if(ue>>>0<=se>>>0){break e}if(t[ve+(a<<3)>>2]>=t[ve+(se<<3)>>2]){break l}q[re>>2]=a;q[we>>2]=se;ye=ye+1|0}if(!ye){se=zi(te,re,T);a=re+4|0;if(zi(a,b,T)){b=re;a=te;if(!se){continue b}break a}if(se){continue c}}if((re-te|0)<(b-re|0)){ej(te,re,T);a=re+4|0;continue c}ej(re+4|0,b,T);b=re;a=te;continue b}Uo();F()}yi(te,te+4|0,b+ -4|0,T);break a}if((re|0)==(ze|0)){break a}a=ze;se=q[te>>2];if(ue>>>0<=se>>>0){break e}while(1){we=ve+(se<<3)|0;while(1){ye=q[re>>2];if(ue>>>0<=ye>>>0){break e}xe=q[we>>2];if(xe>>>0>=t[ve+(ye<<3)>>2]){re=re+4|0;if(ue>>>0>se>>>0){continue}break e}break}while(1){a=a+ -4|0;se=q[a>>2];if(ue>>>0<=se>>>0){break e}if(xe>>>0<t[ve+(se<<3)>>2]){continue}break}if(re>>>0>=a>>>0){te=re;continue d}q[re>>2]=se;q[a>>2]=ye;re=re+4|0;se=q[te>>2];if(ue>>>0>se>>>0){continue}break}}break}break}break}Uo();F()}}function fj(a,b,T){var Ce=0,De=0,Ee=0,Fe=0,Ge=0,He=0,Ie=0,Je=0,Ke=0,Le=0,Me=0;a:{b:while(1){Ke=b+ -4|0;c:while(1){Ee=a;d:while(1){e:{f:{g:{h:{Ce=b-Ee|0;a=Ce>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;Ce=b+ -4|0;b=q[Ce>>2];if(T>>>0<=b>>>0){break h}Ke=T;T=q[Ee>>2];if(Ke>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[Ee>>2]=b;q[Ce>>2]=T;return;case 2:vi(Ee,Ee+4|0,Ee+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(Ee,Ee+4|0,Ee+8|0,Ee+12|0,b+ -4|0,T);return}if((Ce|0)<=123){xi(Ee,b,T);return}He=((a|0)/2<<2)+Ee|0;j:{if((Ce|0)>=3997){a=(a|0)/4<<2;Je=wi(Ee,a+Ee|0,He,a+He|0,Ke,T);break j}Je=yi(Ee,He,Ke,T)}a=q[T>>2];Ge=q[a>>2];Fe=q[a+4>>2]-Ge>>3;a=q[Ee>>2];if(Fe>>>0<=a>>>0){break e}Ce=q[He>>2];if(Fe>>>0<=Ce>>>0){break e}De=Ke;Ie=q[Ge+(a<<3)>>2];Le=q[Ge+(Ce<<3)>>2];if(Ie>>>0>=Le>>>0){while(1){De=De+ -4|0;if((De|0)==(Ee|0)){a=q[Ke>>2];if(Fe>>>0<=a>>>0){break e}Ce=Ee+4|0;if(Ie>>>0<t[Ge+(a<<3)>>2]){break f}if((Ce|0)==(Ke|0)){break a}while(1){De=q[Ce>>2];if(Fe>>>0<=De>>>0){break e}if(Ie>>>0<t[Ge+(De<<3)>>2]){q[Ce>>2]=a;q[Ke>>2]=De;Ce=Ce+4|0;break f}Ce=Ce+4|0;if((Ke|0)!=(Ce|0)){continue}break}break a}Ce=q[De>>2];if(Fe>>>0<=Ce>>>0){break e}if(t[Ge+(Ce<<3)>>2]>=Le>>>0){continue}break}q[Ee>>2]=Ce;q[De>>2]=a;Je=Je+1|0}k:{Ce=Ee+4|0;if(Ce>>>0>=De>>>0){break k}a=q[Ce>>2];if(Fe>>>0<=a>>>0){break e}while(1){Ie=q[He>>2];Le=Ge+(Ie<<3)|0;while(1){if(Fe>>>0<=Ie>>>0){break e}Me=q[Le>>2];if(t[Ge+(a<<3)>>2]<Me>>>0){a=q[Ce+4>>2];Ce=Ce+4|0;if(Fe>>>0>a>>>0){continue}break e}break}while(1){De=De+ -4|0;Ie=q[De>>2];if(Fe>>>0<=Ie>>>0){break e}if(t[Ge+(Ie<<3)>>2]>=Me>>>0){continue}break}if(Ce>>>0>De>>>0){break k}q[Ce>>2]=Ie;q[De>>2]=a;He=(Ce|0)==(He|0)?De:He;Je=Je+1|0;a=q[Ce+4>>2];Ce=Ce+4|0;if(Fe>>>0>a>>>0){continue}break}break e}l:{if((Ce|0)==(He|0)){break l}a=q[He>>2];if(Fe>>>0<=a>>>0){break e}De=q[Ce>>2];if(Fe>>>0<=De>>>0){break e}if(t[Ge+(a<<3)>>2]>=t[Ge+(De<<3)>>2]){break l}q[Ce>>2]=a;q[He>>2]=De;Je=Je+1|0}if(!Je){De=zi(Ee,Ce,T);a=Ce+4|0;if(zi(a,b,T)){b=Ce;a=Ee;if(!De){continue b}break a}if(De){continue c}}if((Ce-Ee|0)<(b-Ce|0)){fj(Ee,Ce,T);a=Ce+4|0;continue c}fj(Ce+4|0,b,T);b=Ce;a=Ee;continue b}Uo();F()}yi(Ee,Ee+4|0,b+ -4|0,T);break a}if((Ce|0)==(Ke|0)){break a}a=Ke;De=q[Ee>>2];if(Fe>>>0<=De>>>0){break e}while(1){He=Ge+(De<<3)|0;while(1){Je=q[Ce>>2];if(Fe>>>0<=Je>>>0){break e}Ie=q[He>>2];if(Ie>>>0>=t[Ge+(Je<<3)>>2]){Ce=Ce+4|0;if(Fe>>>0>De>>>0){continue}break e}break}while(1){a=a+ -4|0;De=q[a>>2];if(Fe>>>0<=De>>>0){break e}if(Ie>>>0<t[Ge+(De<<3)>>2]){continue}break}if(Ce>>>0>=a>>>0){Ee=Ce;continue d}q[Ce>>2]=De;q[a>>2]=Je;Ce=Ce+4|0;De=q[Ee>>2];if(Fe>>>0>De>>>0){continue}break}}break}break}break}Uo();F()}}function gj(a,b,T){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:while(1){Ve=b+ -4|0;c:while(1){Pe=a;d:while(1){e:{f:{g:{h:{Ne=b-Pe|0;a=Ne>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;Ne=b+ -4|0;b=q[Ne>>2];if(T>>>0<=b>>>0){break h}Ve=T;T=q[Pe>>2];if(Ve>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[Pe>>2]=b;q[Ne>>2]=T;return;case 2:vi(Pe,Pe+4|0,Pe+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(Pe,Pe+4|0,Pe+8|0,Pe+12|0,b+ -4|0,T);return}if((Ne|0)<=123){xi(Pe,b,T);return}Se=((a|0)/2<<2)+Pe|0;j:{if((Ne|0)>=3997){a=(a|0)/4<<2;Ue=wi(Pe,a+Pe|0,Se,a+Se|0,Ve,T);break j}Ue=yi(Pe,Se,Ve,T)}a=q[T>>2];Re=q[a>>2];Qe=q[a+4>>2]-Re>>3;a=q[Pe>>2];if(Qe>>>0<=a>>>0){break e}Ne=q[Se>>2];if(Qe>>>0<=Ne>>>0){break e}Oe=Ve;Te=q[Re+(a<<3)>>2];We=q[Re+(Ne<<3)>>2];if(Te>>>0>=We>>>0){while(1){Oe=Oe+ -4|0;if((Oe|0)==(Pe|0)){a=q[Ve>>2];if(Qe>>>0<=a>>>0){break e}Ne=Pe+4|0;if(Te>>>0<t[Re+(a<<3)>>2]){break f}if((Ne|0)==(Ve|0)){break a}while(1){Oe=q[Ne>>2];if(Qe>>>0<=Oe>>>0){break e}if(Te>>>0<t[Re+(Oe<<3)>>2]){q[Ne>>2]=a;q[Ve>>2]=Oe;Ne=Ne+4|0;break f}Ne=Ne+4|0;if((Ve|0)!=(Ne|0)){continue}break}break a}Ne=q[Oe>>2];if(Qe>>>0<=Ne>>>0){break e}if(t[Re+(Ne<<3)>>2]>=We>>>0){continue}break}q[Pe>>2]=Ne;q[Oe>>2]=a;Ue=Ue+1|0}k:{Ne=Pe+4|0;if(Ne>>>0>=Oe>>>0){break k}a=q[Ne>>2];if(Qe>>>0<=a>>>0){break e}while(1){Te=q[Se>>2];We=Re+(Te<<3)|0;while(1){if(Qe>>>0<=Te>>>0){break e}Xe=q[We>>2];if(t[Re+(a<<3)>>2]<Xe>>>0){a=q[Ne+4>>2];Ne=Ne+4|0;if(Qe>>>0>a>>>0){continue}break e}break}while(1){Oe=Oe+ -4|0;Te=q[Oe>>2];if(Qe>>>0<=Te>>>0){break e}if(t[Re+(Te<<3)>>2]>=Xe>>>0){continue}break}if(Ne>>>0>Oe>>>0){break k}q[Ne>>2]=Te;q[Oe>>2]=a;Se=(Ne|0)==(Se|0)?Oe:Se;Ue=Ue+1|0;a=q[Ne+4>>2];Ne=Ne+4|0;if(Qe>>>0>a>>>0){continue}break}break e}l:{if((Ne|0)==(Se|0)){break l}a=q[Se>>2];if(Qe>>>0<=a>>>0){break e}Oe=q[Ne>>2];if(Qe>>>0<=Oe>>>0){break e}if(t[Re+(a<<3)>>2]>=t[Re+(Oe<<3)>>2]){break l}q[Ne>>2]=a;q[Se>>2]=Oe;Ue=Ue+1|0}if(!Ue){Oe=zi(Pe,Ne,T);a=Ne+4|0;if(zi(a,b,T)){b=Ne;a=Pe;if(!Oe){continue b}break a}if(Oe){continue c}}if((Ne-Pe|0)<(b-Ne|0)){gj(Pe,Ne,T);a=Ne+4|0;continue c}gj(Ne+4|0,b,T);b=Ne;a=Pe;continue b}Uo();F()}yi(Pe,Pe+4|0,b+ -4|0,T);break a}if((Ne|0)==(Ve|0)){break a}a=Ve;Oe=q[Pe>>2];if(Qe>>>0<=Oe>>>0){break e}while(1){Se=Re+(Oe<<3)|0;while(1){Ue=q[Ne>>2];if(Qe>>>0<=Ue>>>0){break e}Te=q[Se>>2];if(Te>>>0>=t[Re+(Ue<<3)>>2]){Ne=Ne+4|0;if(Qe>>>0>Oe>>>0){continue}break e}break}while(1){a=a+ -4|0;Oe=q[a>>2];if(Qe>>>0<=Oe>>>0){break e}if(Te>>>0<t[Re+(Oe<<3)>>2]){continue}break}if(Ne>>>0>=a>>>0){Pe=Ne;continue d}q[Ne>>2]=Oe;q[a>>2]=Ue;Ne=Ne+4|0;Oe=q[Pe>>2];if(Qe>>>0>Oe>>>0){continue}break}}break}break}break}Uo();F()}}function hj(a,b,T){var Ye=0,Ze=0,_e=0,$e=0,af=0,bf=0,cf=0,df=0,ef=0,ff=0,gf=0;a:{b:while(1){ef=b+ -4|0;c:while(1){_e=a;d:while(1){e:{f:{g:{h:{Ye=b-_e|0;a=Ye>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;Ye=b+ -4|0;b=q[Ye>>2];if(T>>>0<=b>>>0){break h}ef=T;T=q[_e>>2];if(ef>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[_e>>2]=b;q[Ye>>2]=T;return;case 2:vi(_e,_e+4|0,_e+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(_e,_e+4|0,_e+8|0,_e+12|0,b+ -4|0,T);return}if((Ye|0)<=123){xi(_e,b,T);return}bf=((a|0)/2<<2)+_e|0;j:{if((Ye|0)>=3997){a=(a|0)/4<<2;df=wi(_e,a+_e|0,bf,a+bf|0,ef,T);break j}df=yi(_e,bf,ef,T)}a=q[T>>2];af=q[a>>2];$e=q[a+4>>2]-af>>3;a=q[_e>>2];if($e>>>0<=a>>>0){break e}Ye=q[bf>>2];if($e>>>0<=Ye>>>0){break e}Ze=ef;cf=q[af+(a<<3)>>2];ff=q[af+(Ye<<3)>>2];if(cf>>>0>=ff>>>0){while(1){Ze=Ze+ -4|0;if((Ze|0)==(_e|0)){a=q[ef>>2];if($e>>>0<=a>>>0){break e}Ye=_e+4|0;if(cf>>>0<t[af+(a<<3)>>2]){break f}if((Ye|0)==(ef|0)){break a}while(1){Ze=q[Ye>>2];if($e>>>0<=Ze>>>0){break e}if(cf>>>0<t[af+(Ze<<3)>>2]){q[Ye>>2]=a;q[ef>>2]=Ze;Ye=Ye+4|0;break f}Ye=Ye+4|0;if((ef|0)!=(Ye|0)){continue}break}break a}Ye=q[Ze>>2];if($e>>>0<=Ye>>>0){break e}if(t[af+(Ye<<3)>>2]>=ff>>>0){continue}break}q[_e>>2]=Ye;q[Ze>>2]=a;df=df+1|0}k:{Ye=_e+4|0;if(Ye>>>0>=Ze>>>0){break k}a=q[Ye>>2];if($e>>>0<=a>>>0){break e}while(1){cf=q[bf>>2];ff=af+(cf<<3)|0;while(1){if($e>>>0<=cf>>>0){break e}gf=q[ff>>2];if(t[af+(a<<3)>>2]<gf>>>0){a=q[Ye+4>>2];Ye=Ye+4|0;if($e>>>0>a>>>0){continue}break e}break}while(1){Ze=Ze+ -4|0;cf=q[Ze>>2];if($e>>>0<=cf>>>0){break e}if(t[af+(cf<<3)>>2]>=gf>>>0){continue}break}if(Ye>>>0>Ze>>>0){break k}q[Ye>>2]=cf;q[Ze>>2]=a;bf=(Ye|0)==(bf|0)?Ze:bf;df=df+1|0;a=q[Ye+4>>2];Ye=Ye+4|0;if($e>>>0>a>>>0){continue}break}break e}l:{if((Ye|0)==(bf|0)){break l}a=q[bf>>2];if($e>>>0<=a>>>0){break e}Ze=q[Ye>>2];if($e>>>0<=Ze>>>0){break e}if(t[af+(a<<3)>>2]>=t[af+(Ze<<3)>>2]){break l}q[Ye>>2]=a;q[bf>>2]=Ze;df=df+1|0}if(!df){Ze=zi(_e,Ye,T);a=Ye+4|0;if(zi(a,b,T)){b=Ye;a=_e;if(!Ze){continue b}break a}if(Ze){continue c}}if((Ye-_e|0)<(b-Ye|0)){hj(_e,Ye,T);a=Ye+4|0;continue c}hj(Ye+4|0,b,T);b=Ye;a=_e;continue b}Uo();F()}yi(_e,_e+4|0,b+ -4|0,T);break a}if((Ye|0)==(ef|0)){break a}a=ef;Ze=q[_e>>2];if($e>>>0<=Ze>>>0){break e}while(1){bf=af+(Ze<<3)|0;while(1){df=q[Ye>>2];if($e>>>0<=df>>>0){break e}cf=q[bf>>2];if(cf>>>0>=t[af+(df<<3)>>2]){Ye=Ye+4|0;if($e>>>0>Ze>>>0){continue}break e}break}while(1){a=a+ -4|0;Ze=q[a>>2];if($e>>>0<=Ze>>>0){break e}if(cf>>>0<t[af+(Ze<<3)>>2]){continue}break}if(Ye>>>0>=a>>>0){_e=Ye;continue d}q[Ye>>2]=Ze;q[a>>2]=df;Ye=Ye+4|0;Ze=q[_e>>2];if($e>>>0>Ze>>>0){continue}break}}break}break}break}Uo();F()}}function ij(a,b,T){var hf=0,jf=0,kf=0,lf=0,mf=0,nf=0,of=0,pf=0,qf=0,rf=0,sf=0;a:{b:while(1){qf=b+ -4|0;c:while(1){kf=a;d:while(1){e:{f:{g:{h:{hf=b-kf|0;a=hf>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;hf=b+ -4|0;b=q[hf>>2];if(T>>>0<=b>>>0){break h}qf=T;T=q[kf>>2];if(qf>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[kf>>2]=b;q[hf>>2]=T;return;case 2:vi(kf,kf+4|0,kf+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(kf,kf+4|0,kf+8|0,kf+12|0,b+ -4|0,T);return}if((hf|0)<=123){xi(kf,b,T);return}nf=((a|0)/2<<2)+kf|0;j:{if((hf|0)>=3997){a=(a|0)/4<<2;pf=wi(kf,a+kf|0,nf,a+nf|0,qf,T);break j}pf=yi(kf,nf,qf,T)}a=q[T>>2];mf=q[a>>2];lf=q[a+4>>2]-mf>>3;a=q[kf>>2];if(lf>>>0<=a>>>0){break e}hf=q[nf>>2];if(lf>>>0<=hf>>>0){break e}jf=qf;of=q[mf+(a<<3)>>2];rf=q[mf+(hf<<3)>>2];if(of>>>0>=rf>>>0){while(1){jf=jf+ -4|0;if((jf|0)==(kf|0)){a=q[qf>>2];if(lf>>>0<=a>>>0){break e}hf=kf+4|0;if(of>>>0<t[mf+(a<<3)>>2]){break f}if((hf|0)==(qf|0)){break a}while(1){jf=q[hf>>2];if(lf>>>0<=jf>>>0){break e}if(of>>>0<t[mf+(jf<<3)>>2]){q[hf>>2]=a;q[qf>>2]=jf;hf=hf+4|0;break f}hf=hf+4|0;if((qf|0)!=(hf|0)){continue}break}break a}hf=q[jf>>2];if(lf>>>0<=hf>>>0){break e}if(t[mf+(hf<<3)>>2]>=rf>>>0){continue}break}q[kf>>2]=hf;q[jf>>2]=a;pf=pf+1|0}k:{hf=kf+4|0;if(hf>>>0>=jf>>>0){break k}a=q[hf>>2];if(lf>>>0<=a>>>0){break e}while(1){of=q[nf>>2];rf=mf+(of<<3)|0;while(1){if(lf>>>0<=of>>>0){break e}sf=q[rf>>2];if(t[mf+(a<<3)>>2]<sf>>>0){a=q[hf+4>>2];hf=hf+4|0;if(lf>>>0>a>>>0){continue}break e}break}while(1){jf=jf+ -4|0;of=q[jf>>2];if(lf>>>0<=of>>>0){break e}if(t[mf+(of<<3)>>2]>=sf>>>0){continue}break}if(hf>>>0>jf>>>0){break k}q[hf>>2]=of;q[jf>>2]=a;nf=(hf|0)==(nf|0)?jf:nf;pf=pf+1|0;a=q[hf+4>>2];hf=hf+4|0;if(lf>>>0>a>>>0){continue}break}break e}l:{if((hf|0)==(nf|0)){break l}a=q[nf>>2];if(lf>>>0<=a>>>0){break e}jf=q[hf>>2];if(lf>>>0<=jf>>>0){break e}if(t[mf+(a<<3)>>2]>=t[mf+(jf<<3)>>2]){break l}q[hf>>2]=a;q[nf>>2]=jf;pf=pf+1|0}if(!pf){jf=zi(kf,hf,T);a=hf+4|0;if(zi(a,b,T)){b=hf;a=kf;if(!jf){continue b}break a}if(jf){continue c}}if((hf-kf|0)<(b-hf|0)){ij(kf,hf,T);a=hf+4|0;continue c}ij(hf+4|0,b,T);b=hf;a=kf;continue b}Uo();F()}yi(kf,kf+4|0,b+ -4|0,T);break a}if((hf|0)==(qf|0)){break a}a=qf;jf=q[kf>>2];if(lf>>>0<=jf>>>0){break e}while(1){nf=mf+(jf<<3)|0;while(1){pf=q[hf>>2];if(lf>>>0<=pf>>>0){break e}of=q[nf>>2];if(of>>>0>=t[mf+(pf<<3)>>2]){hf=hf+4|0;if(lf>>>0>jf>>>0){continue}break e}break}while(1){a=a+ -4|0;jf=q[a>>2];if(lf>>>0<=jf>>>0){break e}if(of>>>0<t[mf+(jf<<3)>>2]){continue}break}if(hf>>>0>=a>>>0){kf=hf;continue d}q[hf>>2]=jf;q[a>>2]=pf;hf=hf+4|0;jf=q[kf>>2];if(lf>>>0>jf>>>0){continue}break}}break}break}break}Uo();F()}}function jj(a,b,T){var tf=0,uf=0,vf=0,wf=0,xf=0,yf=0,zf=0,Af=0,Bf=0,Cf=0,Df=0;a:{b:while(1){Bf=b+ -4|0;c:while(1){vf=a;d:while(1){e:{f:{g:{h:{tf=b-vf|0;a=tf>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;tf=b+ -4|0;b=q[tf>>2];if(T>>>0<=b>>>0){break h}Bf=T;T=q[vf>>2];if(Bf>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[vf>>2]=b;q[tf>>2]=T;return;case 2:vi(vf,vf+4|0,vf+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(vf,vf+4|0,vf+8|0,vf+12|0,b+ -4|0,T);return}if((tf|0)<=123){xi(vf,b,T);return}yf=((a|0)/2<<2)+vf|0;j:{if((tf|0)>=3997){a=(a|0)/4<<2;Af=wi(vf,a+vf|0,yf,a+yf|0,Bf,T);break j}Af=yi(vf,yf,Bf,T)}a=q[T>>2];xf=q[a>>2];wf=q[a+4>>2]-xf>>3;a=q[vf>>2];if(wf>>>0<=a>>>0){break e}tf=q[yf>>2];if(wf>>>0<=tf>>>0){break e}uf=Bf;zf=q[xf+(a<<3)>>2];Cf=q[xf+(tf<<3)>>2];if(zf>>>0>=Cf>>>0){while(1){uf=uf+ -4|0;if((uf|0)==(vf|0)){a=q[Bf>>2];if(wf>>>0<=a>>>0){break e}tf=vf+4|0;if(zf>>>0<t[xf+(a<<3)>>2]){break f}if((tf|0)==(Bf|0)){break a}while(1){uf=q[tf>>2];if(wf>>>0<=uf>>>0){break e}if(zf>>>0<t[xf+(uf<<3)>>2]){q[tf>>2]=a;q[Bf>>2]=uf;tf=tf+4|0;break f}tf=tf+4|0;if((Bf|0)!=(tf|0)){continue}break}break a}tf=q[uf>>2];if(wf>>>0<=tf>>>0){break e}if(t[xf+(tf<<3)>>2]>=Cf>>>0){continue}break}q[vf>>2]=tf;q[uf>>2]=a;Af=Af+1|0}k:{tf=vf+4|0;if(tf>>>0>=uf>>>0){break k}a=q[tf>>2];if(wf>>>0<=a>>>0){break e}while(1){zf=q[yf>>2];Cf=xf+(zf<<3)|0;while(1){if(wf>>>0<=zf>>>0){break e}Df=q[Cf>>2];if(t[xf+(a<<3)>>2]<Df>>>0){a=q[tf+4>>2];tf=tf+4|0;if(wf>>>0>a>>>0){continue}break e}break}while(1){uf=uf+ -4|0;zf=q[uf>>2];if(wf>>>0<=zf>>>0){break e}if(t[xf+(zf<<3)>>2]>=Df>>>0){continue}break}if(tf>>>0>uf>>>0){break k}q[tf>>2]=zf;q[uf>>2]=a;yf=(tf|0)==(yf|0)?uf:yf;Af=Af+1|0;a=q[tf+4>>2];tf=tf+4|0;if(wf>>>0>a>>>0){continue}break}break e}l:{if((tf|0)==(yf|0)){break l}a=q[yf>>2];if(wf>>>0<=a>>>0){break e}uf=q[tf>>2];if(wf>>>0<=uf>>>0){break e}if(t[xf+(a<<3)>>2]>=t[xf+(uf<<3)>>2]){break l}q[tf>>2]=a;q[yf>>2]=uf;Af=Af+1|0}if(!Af){uf=zi(vf,tf,T);a=tf+4|0;if(zi(a,b,T)){b=tf;a=vf;if(!uf){continue b}break a}if(uf){continue c}}if((tf-vf|0)<(b-tf|0)){jj(vf,tf,T);a=tf+4|0;continue c}jj(tf+4|0,b,T);b=tf;a=vf;continue b}Uo();F()}yi(vf,vf+4|0,b+ -4|0,T);break a}if((tf|0)==(Bf|0)){break a}a=Bf;uf=q[vf>>2];if(wf>>>0<=uf>>>0){break e}while(1){yf=xf+(uf<<3)|0;while(1){Af=q[tf>>2];if(wf>>>0<=Af>>>0){break e}zf=q[yf>>2];if(zf>>>0>=t[xf+(Af<<3)>>2]){tf=tf+4|0;if(wf>>>0>uf>>>0){continue}break e}break}while(1){a=a+ -4|0;uf=q[a>>2];if(wf>>>0<=uf>>>0){break e}if(zf>>>0<t[xf+(uf<<3)>>2]){continue}break}if(tf>>>0>=a>>>0){vf=tf;continue d}q[tf>>2]=uf;q[a>>2]=Af;tf=tf+4|0;uf=q[vf>>2];if(wf>>>0>uf>>>0){continue}break}}break}break}break}Uo();F()}}function kj(a,b,T){var Ef=0,Ff=0,Gf=0,Hf=0,If=0,Jf=0,Kf=0,Lf=0,Mf=0,Nf=0,Of=0;a:{b:while(1){Mf=b+ -4|0;c:while(1){Gf=a;d:while(1){e:{f:{g:{h:{Ef=b-Gf|0;a=Ef>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;Ef=b+ -4|0;b=q[Ef>>2];if(T>>>0<=b>>>0){break h}Mf=T;T=q[Gf>>2];if(Mf>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[Gf>>2]=b;q[Ef>>2]=T;return;case 2:vi(Gf,Gf+4|0,Gf+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(Gf,Gf+4|0,Gf+8|0,Gf+12|0,b+ -4|0,T);return}if((Ef|0)<=123){xi(Gf,b,T);return}Jf=((a|0)/2<<2)+Gf|0;j:{if((Ef|0)>=3997){a=(a|0)/4<<2;Lf=wi(Gf,a+Gf|0,Jf,a+Jf|0,Mf,T);break j}Lf=yi(Gf,Jf,Mf,T)}a=q[T>>2];If=q[a>>2];Hf=q[a+4>>2]-If>>3;a=q[Gf>>2];if(Hf>>>0<=a>>>0){break e}Ef=q[Jf>>2];if(Hf>>>0<=Ef>>>0){break e}Ff=Mf;Kf=q[If+(a<<3)>>2];Nf=q[If+(Ef<<3)>>2];if(Kf>>>0>=Nf>>>0){while(1){Ff=Ff+ -4|0;if((Ff|0)==(Gf|0)){a=q[Mf>>2];if(Hf>>>0<=a>>>0){break e}Ef=Gf+4|0;if(Kf>>>0<t[If+(a<<3)>>2]){break f}if((Ef|0)==(Mf|0)){break a}while(1){Ff=q[Ef>>2];if(Hf>>>0<=Ff>>>0){break e}if(Kf>>>0<t[If+(Ff<<3)>>2]){q[Ef>>2]=a;q[Mf>>2]=Ff;Ef=Ef+4|0;break f}Ef=Ef+4|0;if((Mf|0)!=(Ef|0)){continue}break}break a}Ef=q[Ff>>2];if(Hf>>>0<=Ef>>>0){break e}if(t[If+(Ef<<3)>>2]>=Nf>>>0){continue}break}q[Gf>>2]=Ef;q[Ff>>2]=a;Lf=Lf+1|0}k:{Ef=Gf+4|0;if(Ef>>>0>=Ff>>>0){break k}a=q[Ef>>2];if(Hf>>>0<=a>>>0){break e}while(1){Kf=q[Jf>>2];Nf=If+(Kf<<3)|0;while(1){if(Hf>>>0<=Kf>>>0){break e}Of=q[Nf>>2];if(t[If+(a<<3)>>2]<Of>>>0){a=q[Ef+4>>2];Ef=Ef+4|0;if(Hf>>>0>a>>>0){continue}break e}break}while(1){Ff=Ff+ -4|0;Kf=q[Ff>>2];if(Hf>>>0<=Kf>>>0){break e}if(t[If+(Kf<<3)>>2]>=Of>>>0){continue}break}if(Ef>>>0>Ff>>>0){break k}q[Ef>>2]=Kf;q[Ff>>2]=a;Jf=(Ef|0)==(Jf|0)?Ff:Jf;Lf=Lf+1|0;a=q[Ef+4>>2];Ef=Ef+4|0;if(Hf>>>0>a>>>0){continue}break}break e}l:{if((Ef|0)==(Jf|0)){break l}a=q[Jf>>2];if(Hf>>>0<=a>>>0){break e}Ff=q[Ef>>2];if(Hf>>>0<=Ff>>>0){break e}if(t[If+(a<<3)>>2]>=t[If+(Ff<<3)>>2]){break l}q[Ef>>2]=a;q[Jf>>2]=Ff;Lf=Lf+1|0}if(!Lf){Ff=zi(Gf,Ef,T);a=Ef+4|0;if(zi(a,b,T)){b=Ef;a=Gf;if(!Ff){continue b}break a}if(Ff){continue c}}if((Ef-Gf|0)<(b-Ef|0)){kj(Gf,Ef,T);a=Ef+4|0;continue c}kj(Ef+4|0,b,T);b=Ef;a=Gf;continue b}Uo();F()}yi(Gf,Gf+4|0,b+ -4|0,T);break a}if((Ef|0)==(Mf|0)){break a}a=Mf;Ff=q[Gf>>2];if(Hf>>>0<=Ff>>>0){break e}while(1){Jf=If+(Ff<<3)|0;while(1){Lf=q[Ef>>2];if(Hf>>>0<=Lf>>>0){break e}Kf=q[Jf>>2];if(Kf>>>0>=t[If+(Lf<<3)>>2]){Ef=Ef+4|0;if(Hf>>>0>Ff>>>0){continue}break e}break}while(1){a=a+ -4|0;Ff=q[a>>2];if(Hf>>>0<=Ff>>>0){break e}if(Kf>>>0<t[If+(Ff<<3)>>2]){continue}break}if(Ef>>>0>=a>>>0){Gf=Ef;continue d}q[Ef>>2]=Ff;q[a>>2]=Lf;Ef=Ef+4|0;Ff=q[Gf>>2];if(Hf>>>0>Ff>>>0){continue}break}}break}break}break}Uo();F()}}function lj(a,b,T){var Pf=0,Qf=0,Rf=0,Sf=0,Tf=0,Uf=0,Vf=0,Wf=0,Xf=0,Yf=0,Zf=0;a:{b:while(1){Xf=b+ -4|0;c:while(1){Rf=a;d:while(1){e:{f:{g:{h:{Pf=b-Rf|0;a=Pf>>2;if(a>>>0<=5){i:{switch(a-2|0){case 0:T=q[T>>2];a=q[T>>2];T=q[T+4>>2]-a>>3;Pf=b+ -4|0;b=q[Pf>>2];if(T>>>0<=b>>>0){break h}Xf=T;T=q[Rf>>2];if(Xf>>>0<=T>>>0){break h}if(t[a+(b<<3)>>2]>=t[a+(T<<3)>>2]){break a}q[Rf>>2]=b;q[Pf>>2]=T;return;case 2:vi(Rf,Rf+4|0,Rf+8|0,b+ -4|0,T);return;case 3:break i;case 1:break g;default:break a}}wi(Rf,Rf+4|0,Rf+8|0,Rf+12|0,b+ -4|0,T);return}if((Pf|0)<=123){xi(Rf,b,T);return}Uf=((a|0)/2<<2)+Rf|0;j:{if((Pf|0)>=3997){a=(a|0)/4<<2;Wf=wi(Rf,a+Rf|0,Uf,a+Uf|0,Xf,T);break j}Wf=yi(Rf,Uf,Xf,T)}a=q[T>>2];Tf=q[a>>2];Sf=q[a+4>>2]-Tf>>3;a=q[Rf>>2];if(Sf>>>0<=a>>>0){break e}Pf=q[Uf>>2];if(Sf>>>0<=Pf>>>0){break e}Qf=Xf;Vf=q[Tf+(a<<3)>>2];Yf=q[Tf+(Pf<<3)>>2];if(Vf>>>0>=Yf>>>0){while(1){Qf=Qf+ -4|0;if((Qf|0)==(Rf|0)){a=q[Xf>>2];if(Sf>>>0<=a>>>0){break e}Pf=Rf+4|0;if(Vf>>>0<t[Tf+(a<<3)>>2]){break f}if((Pf|0)==(Xf|0)){break a}while(1){Qf=q[Pf>>2];if(Sf>>>0<=Qf>>>0){break e}if(Vf>>>0<t[Tf+(Qf<<3)>>2]){q[Pf>>2]=a;q[Xf>>2]=Qf;Pf=Pf+4|0;break f}Pf=Pf+4|0;if((Xf|0)!=(Pf|0)){continue}break}break a}Pf=q[Qf>>2];if(Sf>>>0<=Pf>>>0){break e}if(t[Tf+(Pf<<3)>>2]>=Yf>>>0){continue}break}q[Rf>>2]=Pf;q[Qf>>2]=a;Wf=Wf+1|0}k:{Pf=Rf+4|0;if(Pf>>>0>=Qf>>>0){break k}a=q[Pf>>2];if(Sf>>>0<=a>>>0){break e}while(1){Vf=q[Uf>>2];Yf=Tf+(Vf<<3)|0;while(1){if(Sf>>>0<=Vf>>>0){break e}Zf=q[Yf>>2];if(t[Tf+(a<<3)>>2]<Zf>>>0){a=q[Pf+4>>2];Pf=Pf+4|0;if(Sf>>>0>a>>>0){continue}break e}break}while(1){Qf=Qf+ -4|0;Vf=q[Qf>>2];if(Sf>>>0<=Vf>>>0){break e}if(t[Tf+(Vf<<3)>>2]>=Zf>>>0){continue}break}if(Pf>>>0>Qf>>>0){break k}q[Pf>>2]=Vf;q[Qf>>2]=a;Uf=(Pf|0)==(Uf|0)?Qf:Uf;Wf=Wf+1|0;a=q[Pf+4>>2];Pf=Pf+4|0;if(Sf>>>0>a>>>0){continue}break}break e}l:{if((Pf|0)==(Uf|0)){break l}a=q[Uf>>2];if(Sf>>>0<=a>>>0){break e}Qf=q[Pf>>2];if(Sf>>>0<=Qf>>>0){break e}if(t[Tf+(a<<3)>>2]>=t[Tf+(Qf<<3)>>2]){break l}q[Pf>>2]=a;q[Uf>>2]=Qf;Wf=Wf+1|0}if(!Wf){Qf=zi(Rf,Pf,T);a=Pf+4|0;if(zi(a,b,T)){b=Pf;a=Rf;if(!Qf){continue b}break a}if(Qf){continue c}}if((Pf-Rf|0)<(b-Pf|0)){lj(Rf,Pf,T);a=Pf+4|0;continue c}lj(Pf+4|0,b,T);b=Pf;a=Rf;continue b}Uo();F()}yi(Rf,Rf+4|0,b+ -4|0,T);break a}if((Pf|0)==(Xf|0)){break a}a=Xf;Qf=q[Rf>>2];if(Sf>>>0<=Qf>>>0){break e}while(1){Uf=Tf+(Qf<<3)|0;while(1){Wf=q[Pf>>2];if(Sf>>>0<=Wf>>>0){break e}Vf=q[Uf>>2];if(Vf>>>0>=t[Tf+(Wf<<3)>>2]){Pf=Pf+4|0;if(Sf>>>0>Qf>>>0){continue}break e}break}while(1){a=a+ -4|0;Qf=q[a>>2];if(Sf>>>0<=Qf>>>0){break e}if(Vf>>>0<t[Tf+(Qf<<3)>>2]){continue}break}if(Pf>>>0>=a>>>0){Rf=Pf;continue d}q[Pf>>2]=Qf;q[a>>2]=Wf;Pf=Pf+4|0;Qf=q[Rf>>2];if(Sf>>>0>Qf>>>0){continue}break}}break}break}break}Uo();F()}}function mj(a){a=a|0;var b=0,_f=0,$f=0,ag=0,bg=0,cg=0,dg=0,eg=0,fg=0;ag=T-16|0;T=ag;bg=a+48|0;cg=q[bg>>2];b=zo(32);q[ag>>2]=b;q[ag+4>>2]=20;q[ag+8>>2]=-2147483616;o[b+20|0]=0;_f=r[11068]|r[11069]<<8|(r[11070]<<16|r[11071]<<24);o[b+16|0]=_f;o[b+17|0]=_f>>>8;o[b+18|0]=_f>>>16;o[b+19|0]=_f>>>24;_f=r[11064]|r[11065]<<8|(r[11066]<<16|r[11067]<<24);$f=r[11060]|r[11061]<<8|(r[11062]<<16|r[11063]<<24);o[b+8|0]=$f;o[b+9|0]=$f>>>8;o[b+10|0]=$f>>>16;o[b+11|0]=$f>>>24;o[b+12|0]=_f;o[b+13|0]=_f>>>8;o[b+14|0]=_f>>>16;o[b+15|0]=_f>>>24;_f=r[11056]|r[11057]<<8|(r[11058]<<16|r[11059]<<24);$f=r[11052]|r[11053]<<8|(r[11054]<<16|r[11055]<<24);o[b|0]=$f;o[b+1|0]=$f>>>8;o[b+2|0]=$f>>>16;o[b+3|0]=$f>>>24;o[b+4|0]=_f;o[b+5|0]=_f>>>8;o[b+6|0]=_f>>>16;o[b+7|0]=_f>>>24;cg=Nl(cg+24|0,ag);if(o[ag+11|0]<=-1){pp(q[ag>>2])}bg=q[bg>>2];b=zo(32);q[ag>>2]=b;q[ag+4>>2]=22;q[ag+8>>2]=-2147483616;o[b+22|0]=0;_f=r[11091]|r[11092]<<8|(r[11093]<<16|r[11094]<<24);$f=r[11087]|r[11088]<<8|(r[11089]<<16|r[11090]<<24);o[b+14|0]=$f;o[b+15|0]=$f>>>8;o[b+16|0]=$f>>>16;o[b+17|0]=$f>>>24;o[b+18|0]=_f;o[b+19|0]=_f>>>8;o[b+20|0]=_f>>>16;o[b+21|0]=_f>>>24;_f=r[11085]|r[11086]<<8|(r[11087]<<16|r[11088]<<24);$f=r[11081]|r[11082]<<8|(r[11083]<<16|r[11084]<<24);o[b+8|0]=$f;o[b+9|0]=$f>>>8;o[b+10|0]=$f>>>16;o[b+11|0]=$f>>>24;o[b+12|0]=_f;o[b+13|0]=_f>>>8;o[b+14|0]=_f>>>16;o[b+15|0]=_f>>>24;_f=r[11077]|r[11078]<<8|(r[11079]<<16|r[11080]<<24);$f=r[11073]|r[11074]<<8|(r[11075]<<16|r[11076]<<24);o[b|0]=$f;o[b+1|0]=$f>>>8;o[b+2|0]=$f>>>16;o[b+3|0]=$f>>>24;o[b+4|0]=_f;o[b+5|0]=_f>>>8;o[b+6|0]=_f>>>16;o[b+7|0]=_f>>>24;bg=Nl(bg+24|0,ag);if(o[ag+11|0]<=-1){pp(q[ag>>2])}b=q[a+64>>2];q[a+64>>2]=0;if(b){n[q[q[b>>2]+4>>2]](b)}dg=q[a+48>>2];b=q[a+56>>2];eg=q[b+96>>2];fg=q[b+100>>2];b=zo(32);q[ag>>2]=b;q[ag+4>>2]=18;q[ag+8>>2]=-2147483616;o[b+18|0]=0;_f=r[11112]|r[11113]<<8;o[b+16|0]=_f;o[b+17|0]=_f>>>8;_f=r[11108]|r[11109]<<8|(r[11110]<<16|r[11111]<<24);$f=r[11104]|r[11105]<<8|(r[11106]<<16|r[11107]<<24);o[b+8|0]=$f;o[b+9|0]=$f>>>8;o[b+10|0]=$f>>>16;o[b+11|0]=$f>>>24;o[b+12|0]=_f;o[b+13|0]=_f>>>8;o[b+14|0]=_f>>>16;o[b+15|0]=_f>>>24;_f=r[11100]|r[11101]<<8|(r[11102]<<16|r[11103]<<24);$f=r[11096]|r[11097]<<8|(r[11098]<<16|r[11099]<<24);o[b|0]=$f;o[b+1|0]=$f>>>8;o[b+2|0]=$f>>>16;o[b+3|0]=$f>>>24;o[b+4|0]=_f;o[b+5|0]=_f>>>8;o[b+6|0]=_f>>>16;o[b+7|0]=_f>>>24;b=(fg-eg|0)/12|0;_f=Ll(dg,ag,-1);if(o[ag+11|0]<=-1){pp(q[ag>>2])}a:{b:{_f=_f+1|0;c:{if(_f>>>0>3){break c}d:{e:{f:{g:{switch(_f-1|0){case 2:break f;case 1:break c;case 0:break e;default:break g}}if(!cg){break f}if(b>>>0<1e3|(Jd(q[a+48>>2])|0)>4|bg^1){break d}}b=q[a+44>>2];o[ag|0]=2;_f=q[b+20>>2];if((_f|0)<0?1:(_f|0)<=0?t[b+16>>2]>0?0:1:0){Vb(b,q[b+4>>2],ag,ag+1|0)}b=zo(360);fk(b);_f=q[a+64>>2];q[a+64>>2]=b;if(!_f){break b}n[q[q[_f>>2]+4>>2]](_f);break c}if(!cg){break c}}b=q[a+44>>2];o[ag|0]=0;_f=q[b+20>>2];if((_f|0)<0?1:(_f|0)<=0?t[b+16>>2]>0?0:1:0){Vb(b,q[b+4>>2],ag,ag+1|0)}b=zo(296);yj(b);_f=q[a+64>>2];q[a+64>>2]=b;if(!_f){break b}n[q[q[_f>>2]+4>>2]](_f)}b=q[a+64>>2];if(b){break b}a=0;break a}a=n[q[q[b>>2]+8>>2]](b,a)|0}T=ag+16|0;return a|0}function nj(a,T){a=a|0;T=T|0;a=q[a- -64>>2];return n[q[q[a>>2]+20>>2]](a,T)|0}function oj(a,T){a=a|0;T=T|0;a=q[a- -64>>2];return n[q[q[a>>2]+24>>2]](a,T)|0}function pj(a,T){a=a|0;T=T|0;var gg=0;gg=a;a=q[T- -64>>2];n[q[q[a>>2]+28>>2]](gg,a)}function qj(a){a=a|0;var hg=0,ig=0,jg=0,kg=0,lg=0,mg=0,ng=0,og=0,pg=0,qg=0,rg=0,sg=0,tg=0,ug=0,vg=0,wg=0,xg=0;kg=T-32|0;T=kg;ig=q[a- -64>>2];a:{if(!ig){break a}ig=n[q[q[ig>>2]+32>>2]](ig)|0;if(!ig){break a}qg=(q[ig+28>>2]-q[ig+24>>2]>>2)-q[ig+44>>2]|0;mg=a+56|0;hg=q[mg>>2];b:{if((q[hg+12>>2]-q[hg+8>>2]|0)<5){break b}q[kg+24>>2]=0;q[kg+16>>2]=0;q[kg+20>>2]=0;while(1){if(q[q[q[hg+8>>2]+(jg<<2)>>2]+56>>2]){hg=n[q[q[a>>2]+56>>2]](a,jg)|0;q[kg+12>>2]=hg;c:{if(!hg){break c}lg=q[kg+20>>2];if((lg|0)!=q[kg+24>>2]){q[lg>>2]=hg;q[kg+20>>2]=q[kg+20>>2]+4;break c}rj(kg+16|0,kg+12|0)}hg=q[mg>>2]}jg=jg+1|0;if((jg|0)<q[hg+12>>2]-q[hg+8>>2]>>2){continue}break}rg=q[ig+24>>2];mg=q[ig+28>>2];d:{if((rg|0)==(mg|0)){ng=q[kg+16>>2];break d}wg=mg-rg>>2;ug=q[kg+20>>2];ng=q[kg+16>>2];xg=ug-ng>>2;sg=ig+12|0;vg=hg+96|0;while(1){lg=q[(tg<<2)+rg>>2];if((lg|0)!=-1){e:{if((lg|0)<=-1){hg=(lg>>>0)%3|0;ig=-1;break e}ig=(lg>>>0)/3|0;hg=lg-w(ig,3)|0;ig=q[(q[vg>>2]+w(ig,12)|0)+(hg<<2)>>2]}pg=0;hg=lg+(hg?-1:2)|0;f:{if((hg|0)==-1){break f}hg=q[q[sg>>2]+(hg<<2)>>2];if((hg|0)==-1){break f}mg=lg;jg=hg+((hg>>>0)%3|0?-1:2)|0;if((jg|0)==-1){break f}while(1){hg=(jg|0)<0?-1:q[(q[vg>>2]+w((jg>>>0)/3|0,12)|0)+((jg>>>0)%3<<2)>>2];g:{if((ig|0)==(hg|0)){hg=0;if((ng|0)==(ug|0)){hg=ig;break g}h:{while(1){og=q[q[(hg<<2)+ng>>2]+28>>2];if(q[og+(jg<<2)>>2]!=q[og+(mg<<2)>>2]){break h}hg=hg+1|0;if(hg>>>0<xg>>>0){continue}break}hg=ig;break g}hg=ig}pg=pg+1|0}if((jg|0)==(lg|0)|(jg|0)==-1){break f}ig=((jg>>>0)%3|0?-1:2)+jg|0;if((ig|0)==-1){break f}og=q[q[sg>>2]+(ig<<2)>>2];if((og|0)==-1){break f}ig=hg;mg=jg;hg=og+((og>>>0)%3|0?-1:2)|0;jg=hg;if((hg|0)!=-1){continue}break}}mg=qg+pg|0;ig=lg+1|0;ig=(ig>>>0)%3|0?ig:lg+ -2|0;i:{j:{if((ig|0)==-1){break j}ig=q[q[sg>>2]+(ig<<2)>>2];if((ig|0)==-1){break j}jg=ig+1|0;hg=1;if((((jg>>>0)%3|0?jg:ig+ -2|0)|0)!=-1){break i}}hg=0}qg=mg-(hg&(pg|0)!=0)|0}tg=tg+1|0;if(tg>>>0<wg>>>0){continue}break}}if(!ng){break b}q[kg+20>>2]=ng;pp(ng)}q[a+52>>2]=qg}T=kg+32|0}function rj(a,T){var yg=0,zg=0,Ag=0,Bg=0,Cg=0,Dg=0;a:{Ag=q[a>>2];Cg=q[a+4>>2]-Ag|0;yg=Cg>>2;zg=yg+1|0;if(zg>>>0<1073741824){Dg=yg<<2;yg=q[a+8>>2]-Ag|0;Bg=yg>>1;zg=yg>>2>>>0<536870911?Bg>>>0<zg>>>0?zg:Bg:1073741823;yg=0;b:{if(!zg){break b}if(zg>>>0>=1073741824){break a}yg=zo(zg<<2)}Bg=Dg+yg|0;q[Bg>>2]=q[T>>2];T=yg+(zg<<2)|0;zg=Bg+4|0;if((Cg|0)>=1){vp(yg,Ag,Cg)}q[a>>2]=yg;q[a+8>>2]=T;q[a+4>>2]=zg;if(Ag){pp(Ag)}return}To();F()}Qb(11160);F()}function sj(a){a=a|0;var T=0;T=q[a- -64>>2];a:{if(!T){break a}T=n[q[q[T>>2]+32>>2]](T)|0;if(!T){break a}q[a+60>>2]=((q[T+4>>2]-q[T>>2]>>2>>>0)/3|0)-q[T+40>>2]}}function tj(a){a=a|0;var Eg=0,Fg=0,Gg=0,Hg=0,Ig=0;q[a>>2]=10980;Eg=a- -64|0;Fg=q[Eg>>2];q[Eg>>2]=0;if(Fg){n[q[q[Fg>>2]+4>>2]](Fg)}q[a>>2]=13532;Eg=q[a+32>>2];if(Eg){q[a+36>>2]=Eg;pp(Eg)}Eg=q[a+20>>2];if(Eg){q[a+24>>2]=Eg;pp(Eg)}Fg=q[a+8>>2];if(Fg){Eg=Fg;Ig=a+12|0;Gg=q[Ig>>2];Hg=Eg;a:{if((Eg|0)==(Gg|0)){break a}while(1){Gg=Gg+ -4|0;Eg=q[Gg>>2];q[Gg>>2]=0;if(Eg){n[q[q[Eg>>2]+4>>2]](Eg)}if((Fg|0)!=(Gg|0)){continue}break}Hg=q[a+8>>2]}Eg=Hg;q[Ig>>2]=Fg;pp(Eg)}return a|0}function uj(a){a=a|0;var Jg=0,Kg=0,Lg=0,Mg=0,Ng=0;q[a>>2]=10980;Jg=a- -64|0;Kg=q[Jg>>2];q[Jg>>2]=0;if(Kg){n[q[q[Kg>>2]+4>>2]](Kg)}q[a>>2]=13532;Jg=q[a+32>>2];if(Jg){q[a+36>>2]=Jg;pp(Jg)}Jg=q[a+20>>2];if(Jg){q[a+24>>2]=Jg;pp(Jg)}Kg=q[a+8>>2];if(Kg){Jg=Kg;Ng=a+12|0;Lg=q[Ng>>2];Mg=Jg;a:{if((Jg|0)==(Lg|0)){break a}while(1){Lg=Lg+ -4|0;Jg=q[Lg>>2];q[Lg>>2]=0;if(Jg){n[q[q[Jg>>2]+4>>2]](Jg)}if((Kg|0)!=(Lg|0)){continue}break}Mg=q[a+8>>2]}Jg=Mg;q[Ng>>2]=Kg;pp(Jg)}pp(a)}function vj(a){a=a|0;a=q[a- -64>>2];return n[q[q[a>>2]+32>>2]](a)|0}function wj(a,Og){a=a|0;Og=Og|0;a=q[a- -64>>2];return n[q[q[a>>2]+12>>2]](a,Og)|0}function xj(a,Og){a=a|0;Og=Og|0;a=q[a- -64>>2];return n[q[q[a>>2]+16>>2]](a,Og)|0}function yj(a){q[a+4>>2]=0;q[a+8>>2]=0;q[a>>2]=11236;q[a+120>>2]=0;q[a+124>>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;q[a+48>>2]=0;q[a+52>>2]=0;q[a+56>>2]=0;q[a+60>>2]=0;q[a+64>>2]=0;q[a+72>>2]=0;q[a+76>>2]=0;q[a+80>>2]=0;q[a+84>>2]=0;q[a+88>>2]=0;q[a+92>>2]=0;q[a+96>>2]=0;q[a+100>>2]=0;q[a+104>>2]=0;q[a+108>>2]=0;q[a+112>>2]=0;q[a+116>>2]=0;q[a+128>>2]=0;q[a+132>>2]=0;q[a+136>>2]=1065353216;q[a+156>>2]=0;q[a+160>>2]=0;q[a+148>>2]=0;q[a+152>>2]=0;q[a+140>>2]=0;q[a+144>>2]=0;q[a+168>>2]=0;q[a+172>>2]=0;q[a+164>>2]=-1;q[a+176>>2]=0;q[a+180>>2]=0;q[a+184>>2]=0;q[a+188>>2]=0;q[a+192>>2]=0;_g(a+200|0);Dl(a+232|0);o[a+288|0]=0;q[a+280>>2]=0;q[a+284>>2]=0;q[a+272>>2]=0;q[a+276>>2]=0;q[a+264>>2]=0;q[a+268>>2]=0}function zj(a,Og){a=a|0;Og=Og|0;var Pg=0,Qg=0,Rg=0,Sg=0,Tg=0,Ug=0;Rg=T-16|0;T=Rg;q[a+4>>2]=Og;q[a+8>>2]=q[Og+56>>2];q[a+188>>2]=q[a+184>>2];Sg=q[Og+48>>2];Og=zo(32);q[Rg>>2]=Og;q[Rg+4>>2]=19;q[Rg+8>>2]=-2147483616;o[Og+19|0]=0;Pg=r[11295]|r[11296]<<8|(r[11297]<<16|r[11298]<<24);o[Og+15|0]=Pg;o[Og+16|0]=Pg>>>8;o[Og+17|0]=Pg>>>16;o[Og+18|0]=Pg>>>24;Pg=r[11292]|r[11293]<<8|(r[11294]<<16|r[11295]<<24);Qg=r[11288]|r[11289]<<8|(r[11290]<<16|r[11291]<<24);o[Og+8|0]=Qg;o[Og+9|0]=Qg>>>8;o[Og+10|0]=Qg>>>16;o[Og+11|0]=Qg>>>24;o[Og+12|0]=Pg;o[Og+13|0]=Pg>>>8;o[Og+14|0]=Pg>>>16;o[Og+15|0]=Pg>>>24;Pg=r[11284]|r[11285]<<8|(r[11286]<<16|r[11287]<<24);Qg=r[11280]|r[11281]<<8|(r[11282]<<16|r[11283]<<24);o[Og|0]=Qg;o[Og+1|0]=Qg>>>8;o[Og+2|0]=Qg>>>16;o[Og+3|0]=Qg>>>24;o[Og+4|0]=Pg;o[Og+5|0]=Pg>>>8;o[Og+6|0]=Pg>>>16;o[Og+7|0]=Pg>>>24;Og=Cd(Sg,Rg);if(o[Rg+11|0]<=-1){pp(q[Rg>>2])}Sg=q[q[a+4>>2]+48>>2];a:{if(Og){Og=zo(32);q[Rg>>2]=Og;q[Rg+4>>2]=19;q[Rg+8>>2]=-2147483616;o[Og+19|0]=0;Pg=r[11295]|r[11296]<<8|(r[11297]<<16|r[11298]<<24);o[Og+15|0]=Pg;o[Og+16|0]=Pg>>>8;o[Og+17|0]=Pg>>>16;o[Og+18|0]=Pg>>>24;Pg=r[11292]|r[11293]<<8|(r[11294]<<16|r[11295]<<24);Qg=r[11288]|r[11289]<<8|(r[11290]<<16|r[11291]<<24);o[Og+8|0]=Qg;o[Og+9|0]=Qg>>>8;o[Og+10|0]=Qg>>>16;o[Og+11|0]=Qg>>>24;o[Og+12|0]=Pg;o[Og+13|0]=Pg>>>8;o[Og+14|0]=Pg>>>16;o[Og+15|0]=Pg>>>24;Pg=r[11284]|r[11285]<<8|(r[11286]<<16|r[11287]<<24);Qg=r[11280]|r[11281]<<8|(r[11282]<<16|r[11283]<<24);o[Og|0]=Qg;o[Og+1|0]=Qg>>>8;o[Og+2|0]=Qg>>>16;o[Og+3|0]=Qg>>>24;o[Og+4|0]=Pg;o[Og+5|0]=Pg>>>8;o[Og+6|0]=Pg>>>16;o[Og+7|0]=Pg>>>24;Tg=a,Ug=Ol(Sg,Rg,0),o[Tg+288|0]=Ug;if(o[Rg+11|0]>-1){break a}pp(q[Rg>>2]);break a}if((Jd(Sg)|0)>=6){o[a+288|0]=1;break a}o[a+288|0]=0}T=Rg+16|0;return 1}function Aj(a,Og){a=a|0;Og=Og|0;var Vg=0,Wg=0;a:{Vg=q[a+172>>2];a=q[a+176>>2];if((Vg|0)!=(a|0)){Wg=(a-Vg|0)/136|0;a=0;while(1){if(q[w(a,136)+Vg>>2]==(Og|0)){break a}a=a+1|0;if(a>>>0<Wg>>>0){continue}break}}return 0}a=w(a,136)+Vg|0;return(r[a+100|0]?a+4|0:0)|0}function Bj(a,Og){a=a|0;Og=Og|0;var Xg=0,Yg=0,Zg=0;a:{Yg=q[a+172>>2];Xg=q[a+176>>2];if((Yg|0)!=(Xg|0)){Zg=(Xg-Yg|0)/136|0;Xg=0;while(1){if(q[w(Xg,136)+Yg>>2]==(Og|0)){break a}Xg=Xg+1|0;if(Xg>>>0<Zg>>>0){continue}break}}return a+40|0}return(w(Xg,136)+Yg|0)+104|0}function Cj(a,Og){a=a|0;Og=Og|0;var _g=0,$g=0,ah=0,bh=0,ch=0,dh=0,eh=0,fh=0,gh=0,hh=0,ih=0,jh=0,kh=0,lh=0;$g=T-96|0;T=$g;a:{b:{if(!r[a+288|0]){break b}_g=n[q[q[a>>2]+40>>2]](a)|0;if((q[_g+12>>2]-q[_g+8>>2]|0)<1){break b}_g=q[q[(n[q[q[a>>2]+40>>2]](a)|0)+8>>2]>>2];q[$g+24>>2]=Og;a=q[_g+8>>2];c:{if((a|0)!=q[_g+12>>2]){q[a>>2]=Og;q[_g+8>>2]=a+4;break c}pd(_g+4|0,$g+24|0)}a=q[$g+24>>2];Og=q[_g+16>>2];ah=q[_g+20>>2]-Og>>2;d:{if((a|0)<(ah|0)){break d}q[$g+88>>2]=-1;bh=a+1|0;if(bh>>>0>ah>>>0){a=_g+16|0;qd(a,bh-ah|0,$g+88|0);Og=q[a>>2];a=q[$g+24>>2];break d}if(bh>>>0>=ah>>>0){break d}q[_g+20>>2]=(bh<<2)+Og}q[(a<<2)+Og>>2]=(q[_g+8>>2]-q[_g+4>>2]>>2)+ -1;_g=1;break a}_g=Og<<2;bh=q[_g+q[q[(n[q[q[a>>2]+40>>2]](a)|0)+56>>2]+84>>2]>>2];ch=q[_g+q[q[(n[q[q[a>>2]+40>>2]](a)|0)+4>>2]+8>>2]>>2];q[$g+88>>2]=-1;_g=q[a+176>>2];ah=q[a+172>>2];e:{if((_g|0)!=(ah|0)){dh=(_g-ah|0)/136|0;_g=0;while(1){if(q[ah+w(_g,136)>>2]==(Og|0)){q[$g+88>>2]=_g;break e}_g=_g+1|0;if(_g>>>0<dh>>>0){continue}break}}_g=-1}f:{g:{h:{i:{j:{k:{l:{m:{if(!r[a+288|0]){dh=q[ch+56>>2];if(!r[(ah+w(_g,136)|0)+28|0]|(bh|0)!=1?!(!bh|!dh):0){break k}if(dh){break m}}_g=a+40|0;break l}bh=q[a+12>>2];dh=q[bh+24>>2];bh=q[bh+28>>2];q[$g+24>>2]=-1;_g=ah+w(_g,136)|0;Dj(_g+116|0,bh-dh>>2,$g+24|0);o[(q[a+172>>2]+w(q[$g+88>>2],136)|0)+100|0]=0;_g=_g+104|0}if(Jd(q[(n[q[q[a>>2]+40>>2]](a)|0)+48>>2])|q[ch+56>>2]){break j}if(r[a+288|0]){ah=q[a+8>>2];if((q[ah+12>>2]-q[ah+8>>2]|0)>4){break j}}Ej($g+24|0,a,_g);bh=1;_g=q[$g+24>>2];break i}ah=ah+w(_g,136)|0;_g=q[ah+56>>2];bh=q[ah+60>>2];q[$g+24>>2]=-1;Dj(ah+116|0,bh-_g>>2,$g+24|0);_g=zo(80);bh=q[a+8>>2];ch=_g+12|0;q[ch>>2]=0;q[ch+4>>2]=0;q[_g>>2]=12928;q[_g+4>>2]=0;dh=_g+20|0;q[dh>>2]=0;q[dh+4>>2]=0;jh=_g+28|0;eh=jh;q[eh>>2]=0;q[eh+4>>2]=0;q[_g+36>>2]=0;q[_g+40>>2]=0;eh=_g+44|0;q[eh>>2]=0;q[eh+4>>2]=0;q[_g+52>>2]=0;q[_g+76>>2]=0;kh=ah+104|0;q[_g+72>>2]=kh;q[_g+68>>2]=bh;q[_g- -64>>2]=0;lh=_g+56|0;fh=lh;q[fh>>2]=0;q[fh+4>>2]=0;q[_g+8>>2]=11828;fh=$g- -64|0;q[fh>>2]=0;q[fh+4>>2]=0;q[$g+56>>2]=0;q[$g+60>>2]=0;gh=$g+40|0;ih=gh;q[ih>>2]=0;q[ih+4>>2]=0;q[$g+80>>2]=0;q[$g+48>>2]=0;q[$g+52>>2]=0;q[$g+32>>2]=0;q[$g+36>>2]=0;q[$g+72>>2]=0;q[$g+76>>2]=0;q[$g+24>>2]=11828;ih=ah+4|0;q[$g+28>>2]=ih;ah=q[ah+68>>2];hh=q[ah>>2];ah=q[ah+4>>2];o[$g+95|0]=0;Fj($g+48|0,(ah-hh>>2>>>0)/3|0,$g+95|0);ah=q[$g+28>>2];hh=q[ah+56>>2];ah=q[ah+52>>2];o[$g+95|0]=0;Fj($g+60|0,hh-ah>>2,$g+95|0);hh=$g+44|0;q[hh>>2]=_g;q[gh>>2]=bh;ah=$g+36|0;q[ah>>2]=kh;q[$g+32>>2]=ih;q[_g+76>>2]=a+72;q[jh>>2]=q[hh>>2];bh=q[ah+4>>2];q[dh>>2]=q[ah>>2];q[dh+4>>2]=bh;ah=q[$g+32>>2];q[ch>>2]=q[$g+28>>2];q[ch+4>>2]=ah;gh=_g;bh=q[$g+52>>2];if(bh){ch=_g+32|0;n:{if(bh>>>0<=q[_g+40>>2]<<5>>>0){dh=bh+ -1>>>5;bh=q[ch>>2];break n}ch=q[ch>>2];if(ch){pp(ch);q[_g+40>>2]=0;q[_g+32>>2]=0;q[_g+36>>2]=0;bh=q[$g+52>>2]}if((bh|0)<=-1){break h}dh=bh+ -1>>>5;ch=dh+1|0;bh=zo(ch<<2);q[_g+40>>2]=ch;q[_g+36>>2]=0;q[_g+32>>2]=bh}xp(bh,q[$g+48>>2],(dh<<2)+4|0);dh=q[$g+52>>2]}else{dh=0}q[gh+36>>2]=dh;gh=_g;bh=q[fh>>2];if(bh){o:{if(bh>>>0<=q[_g+52>>2]<<5>>>0){ch=bh+ -1>>>5;bh=q[eh>>2];break o}ch=q[eh>>2];if(ch){pp(ch);q[_g+52>>2]=0;q[_g+44>>2]=0;q[_g+48>>2]=0;bh=q[$g+64>>2]}if((bh|0)<=-1){break g}ch=bh+ -1>>>5;dh=ch+1|0;bh=zo(dh<<2);q[_g+52>>2]=dh;q[_g+48>>2]=0;q[_g+44>>2]=bh}xp(bh,q[$g+60>>2],(ch<<2)+4|0);eh=q[$g+64>>2]}else{eh=0}q[gh+48>>2]=eh;Gj(lh,q[$g+72>>2],q[$g+76>>2]);q[$g+24>>2]=11828;ah=q[$g+72>>2];if(ah){q[$g+76>>2]=ah;pp(ah)}q[$g+24>>2]=12080;ah=q[$g+60>>2];if(ah){pp(ah)}ah=q[$g+48>>2];if(ah){pp(ah)}bh=0;break f}Hj($g+24|0,a,_g);bh=0;_g=q[$g+24>>2]}if(_g){break f}_g=0;break a}To();F()}To();F()}ch=q[$g+88>>2];eh=a+68|0;p:{if((ch|0)==-1){break p}eh=(q[a+172>>2]+w(ch,136)|0)+132|0}q[eh>>2]=bh;ah=zo(76);q[$g+16>>2]=_g;xe(ah,$g+16|0,Og);Og=q[$g+16>>2];q[$g+16>>2]=0;if(Og){n[q[q[Og>>2]+4>>2]](Og)}_g=a+188|0;Og=q[_g>>2];q:{if((Og|0)!=q[a+192>>2]){q[Og>>2]=q[$g+88>>2];q[_g>>2]=Og+4;break q}pd(a+184|0,$g+88|0)}a=n[q[q[a>>2]+40>>2]](a)|0;q[$g+8>>2]=ah;Og=a+12|0;_g=q[Og>>2];r:{if(_g>>>0<t[a+16>>2]){q[$g+8>>2]=0;q[_g>>2]=ah;q[Og>>2]=q[Og>>2]+4;break r}Ij(a+8|0,$g+8|0)}a=q[$g+8>>2];q[$g+8>>2]=0;_g=1;if(!a){break a}n[q[q[a>>2]+4>>2]](a)}T=$g+96|0;return _g|0}function Dj(a,Og,mh){var nh=0,oh=0,ph=0,qh=0,rh=0;nh=q[a+8>>2];oh=q[a>>2];if(nh-oh>>2>>>0>=Og>>>0){ph=q[a+4>>2];qh=ph-oh>>2;rh=qh>>>0<Og>>>0?qh:Og;if(rh){nh=oh;while(1){q[nh>>2]=q[mh>>2];nh=nh+4|0;rh=rh+ -1|0;if(rh){continue}break}}if(qh>>>0<Og>>>0){nh=Og-qh|0;while(1){q[ph>>2]=q[mh>>2];ph=ph+4|0;nh=nh+ -1|0;if(nh){continue}break}q[a+4>>2]=ph;return}q[a+4>>2]=(Og<<2)+oh;return}if(oh){q[a+4>>2]=oh;pp(oh);q[a+8>>2]=0;q[a>>2]=0;q[a+4>>2]=0;nh=0}a:{if(Og>>>0>=1073741824){break a}oh=nh>>1;oh=nh>>2>>>0<536870911?oh>>>0<Og>>>0?Og:oh:1073741823;if(oh>>>0>=1073741824){break a}oh=oh<<2;nh=zo(oh);q[a>>2]=nh;q[a+4>>2]=nh;q[a+8>>2]=nh+oh;while(1){q[nh>>2]=q[mh>>2];nh=nh+4|0;Og=Og+ -1|0;if(Og){continue}break}q[a+4>>2]=nh;return}To();F()}function Ej(a,Og,mh){var sh=0,th=0,uh=0,vh=0,wh=0,xh=0,yh=0,zh=0;sh=T-112|0;T=sh;th=zo(120);yh=q[Og+8>>2];q[th+12>>2]=0;q[th+16>>2]=0;q[th>>2]=12168;q[th+4>>2]=0;q[th+20>>2]=0;q[th+24>>2]=0;q[th+28>>2]=0;q[th+32>>2]=0;q[th+36>>2]=0;q[th+40>>2]=0;q[th+44>>2]=0;q[th+48>>2]=0;q[th+52>>2]=0;q[th+56>>2]=0;q[th+60>>2]=0;q[th+8>>2]=12380;vh=th- -64|0;q[vh>>2]=0;q[vh+4>>2]=0;q[th+72>>2]=0;q[th+76>>2]=0;q[th+80>>2]=0;q[th+84>>2]=0;q[th+88>>2]=0;q[th+116>>2]=0;q[th+112>>2]=mh;q[th+108>>2]=yh;q[th+104>>2]=0;q[th+96>>2]=0;q[th+100>>2]=0;vh=q[Og+12>>2];q[sh+48>>2]=0;q[sh+52>>2]=0;q[sh+40>>2]=0;q[sh+44>>2]=0;zh=sh+24|0;uh=zh;q[uh>>2]=0;q[uh+4>>2]=0;uh=sh- -64|0;q[uh>>2]=0;q[uh+4>>2]=0;q[sh+72>>2]=0;q[sh+76>>2]=0;uh=sh+80|0;q[uh>>2]=0;q[uh+4>>2]=0;q[sh+88>>2]=0;q[sh+104>>2]=0;q[sh+32>>2]=0;q[sh+36>>2]=0;q[sh+16>>2]=0;q[sh+20>>2]=0;q[sh+56>>2]=0;q[sh+60>>2]=0;q[sh+8>>2]=12380;q[sh+96>>2]=0;q[sh+100>>2]=0;q[sh+12>>2]=vh;wh=q[vh>>2];xh=q[vh+4>>2];o[sh+111|0]=0;Fj(sh+32|0,(xh-wh>>2>>>0)/3|0,sh+111|0);wh=q[sh+12>>2];xh=q[wh+28>>2];wh=q[wh+24>>2];o[sh+111|0]=0;Fj(sh+44|0,xh-wh>>2,sh+111|0);q[sh+28>>2]=th;q[zh>>2]=yh;q[sh+20>>2]=mh;q[sh+16>>2]=vh;q[th+116>>2]=Og+72;Jj(th,sh+8|0);q[a>>2]=th;q[sh+8>>2]=12380;a=q[sh+96>>2];if(a){q[sh+100>>2]=a;pp(a)}a=q[uh>>2];if(a){q[sh+84>>2]=a;pp(a)}a=q[sh+68>>2];if(a){q[sh+72>>2]=a;pp(a)}a=q[sh+56>>2];if(a){q[sh+60>>2]=a;pp(a)}q[sh+8>>2]=12616;a=q[sh+44>>2];if(a){pp(a)}a=q[sh+32>>2];if(a){pp(a)}T=sh+112|0}function Fj(a,Og,mh){var Ah=0,Bh=0,Ch=0,Dh=0,Eh=0;Bh=T-16|0;T=Bh;q[a+4>>2]=0;a:{b:{if(!Og){break b}Ch=q[a+8>>2];Ah=Ch<<5;c:{if(Ah>>>0>=Og>>>0){q[a+4>>2]=Og;break c}q[Bh+8>>2]=0;q[Bh>>2]=0;q[Bh+4>>2]=0;if((Og|0)<=-1){break a}Eh=Bh;if(Ah>>>0<=1073741822){Dh=Og+31&-32;Ah=Ch<<6;Dh=Ah>>>0<Dh>>>0?Dh:Ah}else{Dh=2147483647}Oe(Eh,Dh);Dh=q[a>>2];q[a>>2]=q[Bh>>2];q[Bh>>2]=Dh;Ch=q[a+4>>2];q[a+4>>2]=Og;q[Bh+4>>2]=Ch;Ah=a+8|0;Ch=q[Ah>>2];q[Ah>>2]=q[Bh+8>>2];q[Bh+8>>2]=Ch;if(!Dh){break c}pp(Dh)}Ah=Og>>>5;Ch=Ah<<2;a=q[a>>2];if(r[mh|0]){a=wp(a,255,Ch);Og=Og&31;if(!Og){break b}a=a+(Ah<<2)|0;q[a>>2]=q[a>>2]|-1>>>32-Og;break b}a=wp(a,0,Ch);Og=Og&31;if(!Og){break b}a=a+(Ah<<2)|0;q[a>>2]=q[a>>2]&(-1>>>32-Og^-1)}T=Bh+16|0;return}To();F()}function Gj(a,Og,mh){var Fh=0,Gh=0,Hh=0,Ih=0,Jh=0,Kh=0,Lh=0;a:{Fh=mh-Og|0;Hh=Fh>>2;Ih=q[a+8>>2];Gh=q[a>>2];b:{if(Hh>>>0<=Ih-Gh>>2>>>0){Jh=q[a+4>>2];Fh=Jh-Gh|0;Ih=Fh>>2;Fh=Hh>>>0>Ih>>>0?Og+Fh|0:mh;if((Fh|0)!=(Og|0)){while(1){q[Gh>>2]=q[Og>>2];Gh=Gh+4|0;Og=Og+4|0;if((Fh|0)!=(Og|0)){continue}break}}if(Hh>>>0>Ih>>>0){Og=mh-Fh|0;if((Og|0)<1){break b}vp(Jh,Fh,Og);a=a+4|0;q[a>>2]=Og+q[a>>2];return}q[a+4>>2]=Gh;return}if(Gh){q[a+4>>2]=Gh;pp(Gh);q[a+8>>2]=0;q[a>>2]=0;q[a+4>>2]=0;Ih=0}if(Hh>>>0>=1073741824){break a}mh=Ih>>1;mh=Ih>>2>>>0<536870911?mh>>>0<Hh>>>0?Hh:mh:1073741823;if(mh>>>0>=1073741824){break a}Gh=mh<<2;mh=zo(Gh);q[a>>2]=mh;Hh=a+4|0;q[Hh>>2]=mh;q[a+8>>2]=mh+Gh;if((Fh|0)<1){break b}Kh=Hh,Lh=vp(mh,Og,Fh)+Fh|0,q[Kh>>2]=Lh}return}To();F()}function Hj(a,Og,mh){var Mh=0,Nh=0,Oh=0,Ph=0,Qh=0,Rh=0,Sh=0,Th=0,Uh=0,Vh=0,Wh=0,Xh=0,Yh=0;Mh=T+ -64|0;T=Mh;Oh=zo(80);Ph=q[Og+8>>2];Sh=Oh+12|0;Nh=Sh;q[Nh>>2]=0;q[Nh+4>>2]=0;q[Oh>>2]=12636;q[Oh+4>>2]=0;Th=Oh+20|0;Nh=Th;q[Nh>>2]=0;q[Nh+4>>2]=0;Wh=Oh+28|0;Nh=Wh;q[Nh>>2]=0;q[Nh+4>>2]=0;q[Oh+36>>2]=0;q[Oh+40>>2]=0;Uh=Oh+44|0;Nh=Uh;q[Nh>>2]=0;q[Nh+4>>2]=0;q[Oh+52>>2]=0;q[Oh+76>>2]=0;q[Oh+72>>2]=mh;q[Oh+68>>2]=Ph;q[Oh- -64>>2]=0;Xh=Oh+56|0;Nh=Xh;q[Nh>>2]=0;q[Nh+4>>2]=0;q[Oh+8>>2]=12800;Nh=q[Og+12>>2];Yh=Mh+40|0;Rh=Yh;q[Rh>>2]=0;q[Rh+4>>2]=0;q[Mh+32>>2]=0;q[Mh+36>>2]=0;Rh=Mh+16|0;Qh=Rh;q[Qh>>2]=0;q[Qh+4>>2]=0;q[Mh+56>>2]=0;q[Mh+24>>2]=0;q[Mh+28>>2]=0;q[Mh+8>>2]=0;q[Mh+12>>2]=0;q[Mh+48>>2]=0;q[Mh+52>>2]=0;q[Mh>>2]=12800;q[Mh+4>>2]=Nh;Qh=q[Nh>>2];Vh=q[Nh+4>>2];o[Mh+63|0]=0;Fj(Mh+24|0,(Vh-Qh>>2>>>0)/3|0,Mh+63|0);Qh=q[Mh+4>>2];Vh=q[Qh+28>>2];Qh=q[Qh+24>>2];o[Mh+63|0]=0;Fj(Mh+36|0,Vh-Qh>>2,Mh+63|0);Qh=Mh+20|0;q[Qh>>2]=Oh;q[Rh>>2]=Ph;Ph=Mh+12|0;q[Ph>>2]=mh;q[Mh+8>>2]=Nh;q[Oh+76>>2]=Og+72;q[Wh>>2]=q[Qh>>2];Og=q[Ph+4>>2];q[Th>>2]=q[Ph>>2];q[Th+4>>2]=Og;Og=q[Mh+8>>2];q[Sh>>2]=q[Mh+4>>2];q[Sh+4>>2]=Og;a:{b:{Og=Oh;Nh=q[Mh+28>>2];if(Nh){Ph=Oh+32|0;c:{if(Nh>>>0<=q[Oh+40>>2]<<5>>>0){mh=Nh+ -1>>>5;Nh=q[Ph>>2];break c}mh=q[Ph>>2];if(mh){pp(mh);q[Oh+40>>2]=0;q[Oh+32>>2]=0;q[Oh+36>>2]=0;Nh=q[Mh+28>>2]}if((Nh|0)<=-1){break b}mh=Nh+ -1>>>5;Ph=mh+1|0;Nh=zo(Ph<<2);q[Oh+40>>2]=Ph;q[Oh+36>>2]=0;q[Oh+32>>2]=Nh}xp(Nh,q[Mh+24>>2],(mh<<2)+4|0);mh=q[Mh+28>>2]}else{mh=0}q[Og+36>>2]=mh;mh=Oh;Nh=q[Yh>>2];if(Nh){d:{if(Nh>>>0<=q[Oh+52>>2]<<5>>>0){Og=Nh+ -1>>>5;Nh=q[Uh>>2];break d}Og=q[Uh>>2];if(Og){pp(Og);q[Oh+52>>2]=0;q[Oh+44>>2]=0;q[Oh+48>>2]=0;Nh=q[Mh+40>>2]}if((Nh|0)<=-1){break a}Og=Nh+ -1>>>5;Ph=Og+1|0;Nh=zo(Ph<<2);q[Oh+52>>2]=Ph;q[Oh+48>>2]=0;q[Oh+44>>2]=Nh}xp(Nh,q[Mh+36>>2],(Og<<2)+4|0);Og=q[Mh+40>>2]}else{Og=0}q[mh+48>>2]=Og;Gj(Xh,q[Mh+48>>2],q[Mh+52>>2]);q[a>>2]=Oh;q[Mh>>2]=12800;a=q[Mh+48>>2];if(a){q[Mh+52>>2]=a;pp(a)}q[Mh>>2]=12616;a=q[Mh+36>>2];if(a){pp(a)}a=q[Mh+24>>2];if(a){pp(a)}T=Mh- -64|0;return}To();F()}To();F()}function Ij(a,Og){var mh=0,Zh=0,_h=0,$h=0,ai=0;a:{b:{c:{_h=q[a>>2];$h=q[a+4>>2]-_h>>2;mh=$h+1|0;if(mh>>>0<1073741824){_h=q[a+8>>2]-_h|0;ai=_h>>1;mh=_h>>2>>>0<536870911?ai>>>0<mh>>>0?mh:ai:1073741823;if(mh){if(mh>>>0>=1073741824){break c}Zh=zo(mh<<2)}_h=q[Og>>2];q[Og>>2]=0;Og=($h<<2)+Zh|0;q[Og>>2]=_h;_h=(mh<<2)+Zh|0;$h=Og+4|0;mh=q[a+4>>2];Zh=q[a>>2];if((mh|0)==(Zh|0)){break b}while(1){mh=mh+ -4|0;ai=q[mh>>2];q[mh>>2]=0;Og=Og+ -4|0;q[Og>>2]=ai;if((mh|0)!=(Zh|0)){continue}break}Zh=q[a+4>>2];mh=q[a>>2];break a}To();F()}Qb(11752);F()}mh=Zh}q[a>>2]=Og;q[a+8>>2]=_h;q[a+4>>2]=$h;if((mh|0)!=(Zh|0)){while(1){Zh=Zh+ -4|0;a=q[Zh>>2];q[Zh>>2]=0;if(a){n[q[q[a>>2]+4>>2]](a)}if((mh|0)!=(Zh|0)){continue}break}}if(mh){pp(mh)}}function Jj(a,Og){var bi=0;bi=q[Og+8>>2];q[a+12>>2]=q[Og+4>>2];q[a+16>>2]=bi;q[a+28>>2]=q[Og+20>>2];bi=q[Og+16>>2];q[a+20>>2]=q[Og+12>>2];q[a+24>>2]=bi;yk(a+32|0,Og+24|0);yk(a+44|0,Og+36|0);if((a+8|0)==(Og|0)){q[a+92>>2]=q[Og+84>>2];return}Gj(a+56|0,q[Og+48>>2],q[Og+52>>2]);Gj(a+68|0,q[Og+60>>2],q[Og- -64>>2]);Gj(a+80|0,q[Og+72>>2],q[Og+76>>2]);q[a+92>>2]=q[Og+84>>2];cc(a+96|0,q[Og+88>>2],q[Og+92>>2])}function Kj(a,Og,ci){a=a|0;Og=Og|0;ci=ci|0;var di=0,ei=0;di=T-16|0;T=di;q[a+4>>2]=Og;Og=q[Og+64>>2];ei=q[Og+4>>2];Og=q[Og>>2];o[di+15|0]=0;Fj(a+24|0,(ei-Og>>2>>>0)/3|0,di+15|0);Og=q[a+4>>2];ei=q[Og+56>>2];Og=q[Og+52>>2];o[di+14|0]=0;Fj(a+36|0,ei-Og>>2,di+14|0);Og=q[ci+12>>2];q[a+16>>2]=q[ci+8>>2];q[a+20>>2]=Og;Og=q[ci+4>>2];q[a+8>>2]=q[ci>>2];q[a+12>>2]=Og;T=di+16|0}function Lj(a){a=a|0;var Og=0;q[a>>2]=11828;Og=q[a+48>>2];if(Og){q[a+52>>2]=Og;pp(Og)}q[a>>2]=12080;Og=q[a+36>>2];if(Og){pp(Og)}Og=q[a+24>>2];if(Og){pp(Og)}return a|0}function Mj(a,ci){a=a|0;ci=ci|0;var fi=0,gi=0,hi=0,ii=0,ji=0;gi=T-16|0;T=gi;ci=q[q[a+184>>2]+(ci<<2)>>2];o[gi+15|0]=ci;a:{b:{fi=q[q[a+4>>2]+44>>2];hi=q[fi+20>>2];if((hi|0)<0?1:(hi|0)<=0?t[fi+16>>2]>0?0:1:0){Vb(fi,q[fi+4>>2],gi+15|0,gi+16|0);ci=r[gi+15|0]}c:{if(ci<<24>>24<=-1){ci=q[a+68>>2];break c}fi=a+172|0;hi=q[q[fi>>2]+w(ci&255,136)>>2];ji=n[q[q[a>>2]+40>>2]](a)|0;fi=q[fi>>2];ii=o[gi+15|0];ci=q[(fi+w(ii,136)|0)+132>>2];hi=q[q[q[ji+56>>2]+84>>2]+(hi<<2)>>2];if(hi>>>0>1){break b}if(hi-1){break c}if(!r[(w(ii,136)+fi|0)+28|0]){break b}}fi=q[q[a+4>>2]+44>>2];o[gi+14|0]=0;hi=q[fi+20>>2];if((hi|0)>0?1:(hi|0)>=0?t[fi+16>>2]<=0?0:1:0){break a}Vb(fi,q[fi+4>>2],gi+14|0,gi+15|0);break a}fi=q[q[a+4>>2]+44>>2];o[gi+13|0]=1;hi=q[fi+20>>2];if((hi|0)>0?1:(hi|0)>=0?t[fi+16>>2]<=0?0:1:0){break a}Vb(fi,q[fi+4>>2],gi+13|0,gi+14|0)}a=q[q[a+4>>2]+44>>2];o[gi+12|0]=ci;ci=q[a+20>>2];if((ci|0)<0?1:(ci|0)<=0?t[a+16>>2]>0?0:1:0){Vb(a,q[a+4>>2],gi+12|0,gi+13|0)}T=gi+16|0;return 1}function Nj(a,ci){a=a|0;ci=ci|0;var ki=0,li=0,mi=0,ni=0,oi=0,pi=0,qi=0,ri=0,si=0,ti=0,ui=0,vi=0,wi=0,xi=0,yi=0,zi=0,Ai=0;mi=T-48|0;T=mi;a:{if(r[ci+288|0]){pm(mi+32|0,q[ci+8>>2]);ki=q[mi+32>>2];q[mi+32>>2]=0;li=q[ci+12>>2];q[ci+12>>2]=ki;if(!li){q[mi+32>>2]=0;break a}Oj(li);li=q[mi+32>>2];q[mi+32>>2]=0;if(!li){break a}Oj(li);break a}nm(mi+32|0,q[ci+8>>2]);ki=q[mi+32>>2];q[mi+32>>2]=0;li=q[ci+12>>2];q[ci+12>>2]=ki;if(!li){q[mi+32>>2]=0;break a}Oj(li);li=q[mi+32>>2];q[mi+32>>2]=0;if(!li){break a}Oj(li)}b:{c:{li=q[ci+12>>2];d:{if(!(q[li+40>>2]!=((q[li+4>>2]-q[li>>2]>>2>>>0)/3|0)?li:0)){ci=zo(32);q[mi+32>>2]=ci;q[mi+36>>2]=29;q[mi+40>>2]=-2147483616;o[ci+29|0]=0;li=r[11325]|r[11326]<<8|(r[11327]<<16|r[11328]<<24);ki=r[11321]|r[11322]<<8|(r[11323]<<16|r[11324]<<24);o[ci+21|0]=ki;o[ci+22|0]=ki>>>8;o[ci+23|0]=ki>>>16;o[ci+24|0]=ki>>>24;o[ci+25|0]=li;o[ci+26|0]=li>>>8;o[ci+27|0]=li>>>16;o[ci+28|0]=li>>>24;li=r[11320]|r[11321]<<8|(r[11322]<<16|r[11323]<<24);ki=r[11316]|r[11317]<<8|(r[11318]<<16|r[11319]<<24);o[ci+16|0]=ki;o[ci+17|0]=ki>>>8;o[ci+18|0]=ki>>>16;o[ci+19|0]=ki>>>24;o[ci+20|0]=li;o[ci+21|0]=li>>>8;o[ci+22|0]=li>>>16;o[ci+23|0]=li>>>24;li=r[11312]|r[11313]<<8|(r[11314]<<16|r[11315]<<24);ki=r[11308]|r[11309]<<8|(r[11310]<<16|r[11311]<<24);o[ci+8|0]=ki;o[ci+9|0]=ki>>>8;o[ci+10|0]=ki>>>16;o[ci+11|0]=ki>>>24;o[ci+12|0]=li;o[ci+13|0]=li>>>8;o[ci+14|0]=li>>>16;o[ci+15|0]=li>>>24;li=r[11304]|r[11305]<<8|(r[11306]<<16|r[11307]<<24);ki=r[11300]|r[11301]<<8|(r[11302]<<16|r[11303]<<24);o[ci|0]=ki;o[ci+1|0]=ki>>>8;o[ci+2|0]=ki>>>16;o[ci+3|0]=ki>>>24;o[ci+4|0]=li;o[ci+5|0]=li>>>8;o[ci+6|0]=li>>>16;o[ci+7|0]=li>>>24;q[a>>2]=-1;Do(a+4|0,mi+32|0);if(o[mi+43|0]>-1){break d}pp(q[mi+32>>2]);break d}q[ci+264>>2]=ci;td((q[li+28>>2]-q[li+24>>2]>>2)-q[li+44>>2]|0,q[q[ci+4>>2]+44>>2]);li=ci+12|0;ki=q[li>>2];td(((q[ki+4>>2]-q[ki>>2]>>2>>>0)/3|0)-q[ki+40>>2]|0,q[q[ci+4>>2]+44>>2]);ki=q[ci+8>>2];ni=q[ki+100>>2];ki=q[ki+96>>2];o[mi+32|0]=0;si=ci+28|0;Fj(si,(ni-ki|0)/12|0,mi+32|0);ki=q[li>>2];ni=q[ki+24>>2];ki=q[ki+28>>2];q[mi+32>>2]=-1;Dj(ci+52|0,ki-ni>>2,mi+32|0);ki=q[ci+40>>2];q[ci+44>>2]=ki;li=q[li>>2];ni=q[li+4>>2]-q[li>>2]>>2;ni=ni-((ni>>>0)%3|0)|0;e:{if(q[ci+48>>2]-ki>>2>>>0>=ni>>>0){break e}if(ni>>>0>=1073741824){break c}oi=ni<<2;ni=zo(oi);q[ci+44>>2]=ni;q[ci+40>>2]=ni;q[ci+48>>2]=ni+oi;if(!ki){break e}pp(ki);li=q[ci+12>>2]}ki=q[li+28>>2];li=q[li+24>>2];o[mi+32|0]=0;Fj(ci+84|0,ki-li>>2,mi+32|0);q[ci+164>>2]=-1;q[ci+168>>2]=0;q[ci+100>>2]=q[ci+96>>2];q[ci+112>>2]=q[ci+108>>2];if(q[ci+132>>2]){ni=ci+128|0;li=q[ni>>2];if(li){while(1){ki=q[li>>2];pp(li);li=ki;if(li){continue}break}}q[ni>>2]=0;ki=q[ci+124>>2];if(ki){ni=ci+120|0;li=0;while(1){q[q[ni>>2]+(li<<2)>>2]=0;li=li+1|0;if((ki|0)!=(li|0)){continue}break}}q[ci+132>>2]=0}q[ci+144>>2]=0;ki=ci+12|0;li=q[ki>>2];ni=q[li+24>>2];li=q[li+28>>2];q[mi+32>>2]=-1;Dj(ci+152|0,li-ni>>2,mi+32|0);li=q[ci+72>>2];q[ci+76>>2]=li;ki=q[ki>>2];ki=q[ki+4>>2]-q[ki>>2]>>2;ni=(ki>>>0)/3|0;f:{if(q[ci+80>>2]-li>>2>>>0>=ni>>>0){break f}if(ki>>>0>=3221225472){break b}ni=ni<<2;ki=zo(ni);q[ci+76>>2]=ki;q[ci+72>>2]=ki;q[ci+80>>2]=ki+ni;if(!li){break f}pp(li)}q[ci- -64>>2]=0;if(!Pj(ci)){ci=zo(32);q[mi+32>>2]=ci;q[mi+36>>2]=29;q[mi+40>>2]=-2147483616;o[ci+29|0]=0;li=r[11355]|r[11356]<<8|(r[11357]<<16|r[11358]<<24);ki=r[11351]|r[11352]<<8|(r[11353]<<16|r[11354]<<24);o[ci+21|0]=ki;o[ci+22|0]=ki>>>8;o[ci+23|0]=ki>>>16;o[ci+24|0]=ki>>>24;o[ci+25|0]=li;o[ci+26|0]=li>>>8;o[ci+27|0]=li>>>16;o[ci+28|0]=li>>>24;li=r[11350]|r[11351]<<8|(r[11352]<<16|r[11353]<<24);ki=r[11346]|r[11347]<<8|(r[11348]<<16|r[11349]<<24);o[ci+16|0]=ki;o[ci+17|0]=ki>>>8;o[ci+18|0]=ki>>>16;o[ci+19|0]=ki>>>24;o[ci+20|0]=li;o[ci+21|0]=li>>>8;o[ci+22|0]=li>>>16;o[ci+23|0]=li>>>24;li=r[11342]|r[11343]<<8|(r[11344]<<16|r[11345]<<24);ki=r[11338]|r[11339]<<8|(r[11340]<<16|r[11341]<<24);o[ci+8|0]=ki;o[ci+9|0]=ki>>>8;o[ci+10|0]=ki>>>16;o[ci+11|0]=ki>>>24;o[ci+12|0]=li;o[ci+13|0]=li>>>8;o[ci+14|0]=li>>>16;o[ci+15|0]=li>>>24;li=r[11334]|r[11335]<<8|(r[11336]<<16|r[11337]<<24);ki=r[11330]|r[11331]<<8|(r[11332]<<16|r[11333]<<24);o[ci|0]=ki;o[ci+1|0]=ki>>>8;o[ci+2|0]=ki>>>16;o[ci+3|0]=ki>>>24;o[ci+4|0]=li;o[ci+5|0]=li>>>8;o[ci+6|0]=li>>>16;o[ci+7|0]=li>>>24;q[a>>2]=-1;Do(a+4|0,mi+32|0);if(o[mi+43|0]>-1){break d}pp(q[mi+32>>2]);break d}if(!Qj(ci)){ci=zo(48);q[mi+32>>2]=ci;q[mi+36>>2]=36;q[mi+40>>2]=-2147483600;o[ci+36|0]=0;li=r[11392]|r[11393]<<8|(r[11394]<<16|r[11395]<<24);o[ci+32|0]=li;o[ci+33|0]=li>>>8;o[ci+34|0]=li>>>16;o[ci+35|0]=li>>>24;li=r[11388]|r[11389]<<8|(r[11390]<<16|r[11391]<<24);ki=r[11384]|r[11385]<<8|(r[11386]<<16|r[11387]<<24);o[ci+24|0]=ki;o[ci+25|0]=ki>>>8;o[ci+26|0]=ki>>>16;o[ci+27|0]=ki>>>24;o[ci+28|0]=li;o[ci+29|0]=li>>>8;o[ci+30|0]=li>>>16;o[ci+31|0]=li>>>24;li=r[11380]|r[11381]<<8|(r[11382]<<16|r[11383]<<24);ki=r[11376]|r[11377]<<8|(r[11378]<<16|r[11379]<<24);o[ci+16|0]=ki;o[ci+17|0]=ki>>>8;o[ci+18|0]=ki>>>16;o[ci+19|0]=ki>>>24;o[ci+20|0]=li;o[ci+21|0]=li>>>8;o[ci+22|0]=li>>>16;o[ci+23|0]=li>>>24;li=r[11372]|r[11373]<<8|(r[11374]<<16|r[11375]<<24);ki=r[11368]|r[11369]<<8|(r[11370]<<16|r[11371]<<24);o[ci+8|0]=ki;o[ci+9|0]=ki>>>8;o[ci+10|0]=ki>>>16;o[ci+11|0]=ki>>>24;o[ci+12|0]=li;o[ci+13|0]=li>>>8;o[ci+14|0]=li>>>16;o[ci+15|0]=li>>>24;li=r[11364]|r[11365]<<8|(r[11366]<<16|r[11367]<<24);ki=r[11360]|r[11361]<<8|(r[11362]<<16|r[11363]<<24);o[ci|0]=ki;o[ci+1|0]=ki>>>8;o[ci+2|0]=ki>>>16;o[ci+3|0]=ki>>>24;o[ci+4|0]=li;o[ci+5|0]=li>>>8;o[ci+6|0]=li>>>16;o[ci+7|0]=li>>>24;q[a>>2]=-1;Do(a+4|0,mi+32|0);if(o[mi+43|0]>-1){break d}pp(q[mi+32>>2]);break d}li=(q[ci+176>>2]-q[ci+172>>2]|0)/136|0;o[mi+31|0]=li;ki=ci;ni=q[q[ci+4>>2]+44>>2];oi=q[ni+20>>2];if((oi|0)<0?1:(oi|0)<=0?t[ni+16>>2]>0?0:1:0){Vb(ni,q[ni+4>>2],mi+31|0,mi+32|0);li=r[mi+31|0]}q[ki+284>>2]=li&255;oi=ci+12|0;li=q[oi>>2];ki=q[li>>2];li=q[li+4>>2];ti=ci+200|0;Rj(ti);q[mi+40>>2]=0;q[mi+32>>2]=0;q[mi+36>>2]=0;li=li-ki|0;g:{if((li|0)>=1){yi=ci+96|0;zi=li>>2;Ai=ci+104|0;vi=ci+100|0;li=0;while(1){h:{ki=(li>>>0)/3|0;wi=ki>>>5<<2;xi=1<<(ki&31);if(q[wi+q[si>>2]>>2]&xi){break h}if(Zl(q[oi>>2],ki)){break h}q[mi+24>>2]=0;ki=Sj(ci,ki,mi+24|0);ch(ti,ki);ni=q[mi+24>>2];if(ki){ki=-1;pi=-1;ui=-1;i:{if((ni|0)==-1){break i}ri=q[q[oi>>2]>>2];ki=q[ri+(ni<<2)>>2];qi=ni+1|0;qi=(qi>>>0)%3|0?qi:ni+ -2|0;if((qi|0)!=-1){pi=q[ri+(qi<<2)>>2]}qi=ni+((ni>>>0)%3|0?-1:2)|0;if((qi|0)==-1){break i}ui=q[ri+(qi<<2)>>2]}ri=q[ci+84>>2];qi=ri+(ki>>>3&536870908)|0;q[qi>>2]=q[qi>>2]|1<<(ki&31);ki=ri+(pi>>>3&536870908)|0;q[ki>>2]=q[ki>>2]|1<<(pi&31);ki=ri+(ui>>>3&536870908)|0;q[ki>>2]=q[ki>>2]|1<<(ui&31);q[mi+8>>2]=1;ki=q[vi>>2];j:{if(ki>>>0<t[Ai>>2]){q[ki>>2]=1;q[vi>>2]=ki+4;break j}Tj(yi,mi+8|0)}ki=wi+q[si>>2]|0;q[ki>>2]=xi|q[ki>>2];ki=-1;if((ni|0)!=-1){ki=ni+1|0;ki=(ki>>>0)%3|0?ki:ni+ -2|0}q[mi+8>>2]=ki;pi=q[mi+36>>2];k:{if(pi>>>0<t[mi+40>>2]){q[pi>>2]=ki;q[mi+36>>2]=pi+4;break k}Tj(mi+32|0,mi+8|0)}if((ni|0)==-1){break h}ki=ni+1|0;ki=(ki>>>0)%3|0?ki:ni+ -2|0;if((ki|0)==-1){break h}ki=q[q[q[oi>>2]+12>>2]+(ki<<2)>>2];if((ki|0)==-1){break h}ni=(ki>>>0)/3|0;if(q[q[si>>2]+(ni>>>3&268435452)>>2]>>>(ni&31)&1){break h}if(Uj(ci,ki)){break h}q[mi+16>>2]=0;q[mi+8>>2]=0;q[mi+12>>2]=0;ci=zo(48);q[mi+8>>2]=ci;q[mi+12>>2]=32;q[mi+16>>2]=-2147483600;o[ci+32|0]=0;li=r[11425]|r[11426]<<8|(r[11427]<<16|r[11428]<<24);ki=r[11421]|r[11422]<<8|(r[11423]<<16|r[11424]<<24);o[ci+24|0]=ki;o[ci+25|0]=ki>>>8;o[ci+26|0]=ki>>>16;o[ci+27|0]=ki>>>24;o[ci+28|0]=li;o[ci+29|0]=li>>>8;o[ci+30|0]=li>>>16;o[ci+31|0]=li>>>24;li=r[11417]|r[11418]<<8|(r[11419]<<16|r[11420]<<24);ki=r[11413]|r[11414]<<8|(r[11415]<<16|r[11416]<<24);o[ci+16|0]=ki;o[ci+17|0]=ki>>>8;o[ci+18|0]=ki>>>16;o[ci+19|0]=ki>>>24;o[ci+20|0]=li;o[ci+21|0]=li>>>8;o[ci+22|0]=li>>>16;o[ci+23|0]=li>>>24;li=r[11409]|r[11410]<<8|(r[11411]<<16|r[11412]<<24);ki=r[11405]|r[11406]<<8|(r[11407]<<16|r[11408]<<24);o[ci+8|0]=ki;o[ci+9|0]=ki>>>8;o[ci+10|0]=ki>>>16;o[ci+11|0]=ki>>>24;o[ci+12|0]=li;o[ci+13|0]=li>>>8;o[ci+14|0]=li>>>16;o[ci+15|0]=li>>>24;li=r[11401]|r[11402]<<8|(r[11403]<<16|r[11404]<<24);ki=r[11397]|r[11398]<<8|(r[11399]<<16|r[11400]<<24);o[ci|0]=ki;o[ci+1|0]=ki>>>8;o[ci+2|0]=ki>>>16;o[ci+3|0]=ki>>>24;o[ci+4|0]=li;o[ci+5|0]=li>>>8;o[ci+6|0]=li>>>16;o[ci+7|0]=li>>>24;q[a>>2]=-1;Do(a+4|0,mi+8|0);if(o[mi+19|0]>-1){break g}pp(q[mi+8>>2]);break g}ki=ci;if((ni|0)!=-1){pi=ni+1|0;ni=(pi>>>0)%3|0?pi:ni+ -2|0}else{ni=-1}Vj(ki,ni,1);if(Uj(ci,q[mi+24>>2])){break h}q[mi+16>>2]=0;q[mi+8>>2]=0;q[mi+12>>2]=0;ci=zo(48);q[mi+8>>2]=ci;q[mi+12>>2]=32;q[mi+16>>2]=-2147483600;o[ci+32|0]=0;li=r[11425]|r[11426]<<8|(r[11427]<<16|r[11428]<<24);ki=r[11421]|r[11422]<<8|(r[11423]<<16|r[11424]<<24);o[ci+24|0]=ki;o[ci+25|0]=ki>>>8;o[ci+26|0]=ki>>>16;o[ci+27|0]=ki>>>24;o[ci+28|0]=li;o[ci+29|0]=li>>>8;o[ci+30|0]=li>>>16;o[ci+31|0]=li>>>24;li=r[11417]|r[11418]<<8|(r[11419]<<16|r[11420]<<24);ki=r[11413]|r[11414]<<8|(r[11415]<<16|r[11416]<<24);o[ci+16|0]=ki;o[ci+17|0]=ki>>>8;o[ci+18|0]=ki>>>16;o[ci+19|0]=ki>>>24;o[ci+20|0]=li;o[ci+21|0]=li>>>8;o[ci+22|0]=li>>>16;o[ci+23|0]=li>>>24;li=r[11409]|r[11410]<<8|(r[11411]<<16|r[11412]<<24);ki=r[11405]|r[11406]<<8|(r[11407]<<16|r[11408]<<24);o[ci+8|0]=ki;o[ci+9|0]=ki>>>8;o[ci+10|0]=ki>>>16;o[ci+11|0]=ki>>>24;o[ci+12|0]=li;o[ci+13|0]=li>>>8;o[ci+14|0]=li>>>16;o[ci+15|0]=li>>>24;li=r[11401]|r[11402]<<8|(r[11403]<<16|r[11404]<<24);ki=r[11397]|r[11398]<<8|(r[11399]<<16|r[11400]<<24);o[ci|0]=ki;o[ci+1|0]=ki>>>8;o[ci+2|0]=ki>>>16;o[ci+3|0]=ki>>>24;o[ci+4|0]=li;o[ci+5|0]=li>>>8;o[ci+6|0]=li>>>16;o[ci+7|0]=li>>>24;q[a>>2]=-1;Do(a+4|0,mi+8|0);if(o[mi+19|0]>-1){break g}pp(q[mi+8>>2]);break g}li=li+1|0;if((li|0)<(zi|0)){continue}break}}oi=ci+72|0;li=q[ci+72>>2];ni=q[ci+76>>2];l:{if((li|0)==(ni|0)){break l}ki=ni+ -4|0;if(ki>>>0<=li>>>0){break l}while(1){pi=q[li>>2];q[li>>2]=q[ki>>2];q[ki>>2]=pi;li=li+4|0;ki=ki+ -4|0;if(li>>>0<ki>>>0){continue}break}}Wj(oi,ni,q[mi+32>>2],q[mi+36>>2]);m:{if(q[ci+176>>2]==q[ci+172>>2]){break m}li=q[ci+8>>2];ki=q[li+100>>2];li=q[li+96>>2];o[mi+8|0]=0;Fj(si,(ki-li|0)/12|0,mi+8|0);li=q[ci+72>>2];ki=q[ci+76>>2];if((li|0)==(ki|0)){break m}while(1){Xj(ci,q[li>>2]);li=li+4|0;if((ki|0)!=(li|0)){continue}break}}Yj(ti);ki=ci+232|0;eh(ti,ki);ni=q[ci+280>>2];n:{if(!ni){break n}li=1;if(q[ci+284>>2]<1){break n}eh(ni,ki);if(q[ci+284>>2]<2){break n}ni=ci+280|0;while(1){eh(q[ni>>2]+(li<<5)|0,ki);li=li+1|0;if((li|0)<q[ci+284>>2]){continue}break}}td(q[ci+272>>2]-q[ci+268>>2]>>2,q[q[ci+4>>2]+44>>2]);td(q[ci+168>>2],q[q[ci+4>>2]+44>>2]);if(!Zj(ci)){q[mi+16>>2]=0;q[mi+8>>2]=0;q[mi+12>>2]=0;ci=zo(32);q[mi+8>>2]=ci;q[mi+12>>2]=28;q[mi+16>>2]=-2147483616;o[ci+28|0]=0;li=r[11454]|r[11455]<<8|(r[11456]<<16|r[11457]<<24);o[ci+24|0]=li;o[ci+25|0]=li>>>8;o[ci+26|0]=li>>>16;o[ci+27|0]=li>>>24;li=r[11450]|r[11451]<<8|(r[11452]<<16|r[11453]<<24);ki=r[11446]|r[11447]<<8|(r[11448]<<16|r[11449]<<24);o[ci+16|0]=ki;o[ci+17|0]=ki>>>8;o[ci+18|0]=ki>>>16;o[ci+19|0]=ki>>>24;o[ci+20|0]=li;o[ci+21|0]=li>>>8;o[ci+22|0]=li>>>16;o[ci+23|0]=li>>>24;li=r[11442]|r[11443]<<8|(r[11444]<<16|r[11445]<<24);ki=r[11438]|r[11439]<<8|(r[11440]<<16|r[11441]<<24);o[ci+8|0]=ki;o[ci+9|0]=ki>>>8;o[ci+10|0]=ki>>>16;o[ci+11|0]=ki>>>24;o[ci+12|0]=li;o[ci+13|0]=li>>>8;o[ci+14|0]=li>>>16;o[ci+15|0]=li>>>24;li=r[11434]|r[11435]<<8|(r[11436]<<16|r[11437]<<24);ki=r[11430]|r[11431]<<8|(r[11432]<<16|r[11433]<<24);o[ci|0]=ki;o[ci+1|0]=ki>>>8;o[ci+2|0]=ki>>>16;o[ci+3|0]=ki>>>24;o[ci+4|0]=li;o[ci+5|0]=li>>>8;o[ci+6|0]=li>>>16;o[ci+7|0]=li>>>24;q[a>>2]=-1;Do(a+4|0,mi+8|0);if(o[mi+19|0]>-1){break g}pp(q[mi+8>>2]);break g}li=q[q[ci+4>>2]+44>>2];ki=q[li+20>>2];if((ki|0)<0?1:(ki|0)<=0?t[li+16>>2]>0?0:1:0){Vb(li,q[li+4>>2],q[ci+232>>2],q[ci+236>>2])}q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0}a=q[mi+32>>2];if(!a){break d}q[mi+36>>2]=a;pp(a)}T=mi+48|0;return}Qb(11752);F()}Qb(11752);F()}function Oj(a){var ci=0;if(a){ci=q[a+76>>2];if(ci){q[a+80>>2]=ci;pp(ci)}ci=q[a- -64>>2];if(ci){q[a+68>>2]=ci;pp(ci)}ci=q[a+48>>2];if(ci){q[a+52>>2]=ci;pp(ci)}ci=q[a+24>>2];if(ci){q[a+28>>2]=ci;pp(ci)}ci=q[a+12>>2];if(ci){q[a+16>>2]=ci;pp(ci)}ci=q[a>>2];if(ci){q[a+4>>2]=ci;pp(ci)}pp(a)}}function Pj(a){var Bi=0,Ci=0,Di=0,Ei=0,Fi=0,Gi=0,Hi=0,Ii=0,Ji=0,Ki=0,Li=0,Mi=0,Ni=0,Oi=0,Pi=0,Qi=0;a:{b:{Ii=a+12|0;Bi=q[Ii>>2];Di=q[Bi+4>>2]-q[Bi>>2]|0;if(!Di){break b}Li=Di>>2;Mi=a+140|0;Ki=a+152|0;Ni=a+148|0;while(1){c:{if(Zl(Bi,(Fi>>>0)/3|0)){break c}Bi=q[Ii>>2];if(q[q[Bi+12>>2]+(Fi<<2)>>2]!=-1){break c}Hi=q[Ki>>2];Gi=Hi;Ci=Fi+1|0;Ci=(Ci>>>0)%3|0?Ci:Fi+ -2|0;if((Ci|0)!=-1){Bi=q[q[Bi>>2]+(Ci<<2)>>2]}else{Bi=-1}Di=Bi<<2;if(q[Gi+Di>>2]!=-1){break c}Ei=-1;Gi=q[a+144>>2];Bi=Gi;Ci=q[Ni>>2];if((Bi|0)==Ci<<5){if((Gi+1|0)<=-1){break a}Bi=Mi;if(Gi>>>0<=1073741822){Ei=Gi+32&-32;Ci=Ci<<6;Ci=Ci>>>0<Ei>>>0?Ei:Ci}else{Ci=2147483647}Oe(Bi,Ci);Hi=q[Ki>>2];Ei=q[Di+Hi>>2];Bi=q[a+144>>2]}q[a+144>>2]=Bi+1;Ci=q[a+140>>2]+(Bi>>>3&536870908)|0;Ji=q[Ci>>2];Pi=Ci,Qi=Yp(-2,Bi)&Ji,q[Pi>>2]=Qi;if((Ei|0)!=-1){break c}Di=Di+Hi|0;Ji=q[Ii>>2];Bi=Fi;while(1){Ci=Bi;q[Di>>2]=Gi;Bi=-1;Ei=-1;d:{if((Ci|0)==-1){break d}Di=Ci+1|0;Di=(Di>>>0)%3|0?Di:Ci+ -2|0;if((Di|0)==-1){break d}Oi=q[Ji+12>>2];while(1){Ci=q[(Di<<2)+Oi>>2];if((Ci|0)!=-1){Di=Ci+1|0;Di=(Di>>>0)%3|0?Di:Ci+ -2|0;if((Di|0)!=-1){continue}break d}break}Bi=Di+1|0;Bi=(Bi>>>0)%3|0?Bi:Di+ -2|0;if((Bi|0)!=-1){Ei=q[q[Ji>>2]+(Bi<<2)>>2]}Bi=Di}Di=(Ei<<2)+Hi|0;if(q[Di>>2]==-1){continue}break}}Fi=Fi+1|0;if(Fi>>>0>=Li>>>0){break b}Bi=q[Ii>>2];continue}}return 1}To();F()}function Qj(a){var Ri=0,Si=0,Ti=0,Ui=0,Vi=0,Wi=0,Xi=0,Yi=0,Zi=0,_i=0,$i=0,aj=0;a:{b:{if(r[a+288|0]){break b}Ri=q[a+8>>2];Vi=q[Ri+12>>2]-q[Ri+8>>2]|0;Zi=Vi>>2;Ti=Zi+ -1|0;Si=q[a+176>>2];Ri=q[a+172>>2];Ui=(Si-Ri|0)/136|0;c:{if(Ti>>>0>Ui>>>0){_j(a+172|0,Ti-Ui|0);break c}if(Ti>>>0>=Ui>>>0){break c}Ti=Ri+w(Ti,136)|0;if((Ti|0)!=(Si|0)){while(1){Ri=q[Si+ -20>>2];if(Ri){q[Si+ -16>>2]=Ri;pp(Ri)}Ri=Si+ -136|0;Ui=q[Si+ -32>>2];if(Ui){q[Si+ -28>>2]=Ui;pp(Ui)}$j(Si+ -132|0);Si=Ri;if((Ri|0)!=(Ti|0)){continue}break}}q[a+176>>2]=Ti}if((Vi|0)==4|(Vi|0)<1){break b}_i=a+12|0;Si=0;while(1){$i=q[q[q[a+8>>2]+8>>2]+(Si<<2)>>2];if(q[$i+56>>2]){Vi=w(aj,136);Wi=Vi+q[a+172>>2]|0;q[Wi>>2]=Si;Ti=Wi+108|0;Xi=q[Wi+104>>2];q[Ti>>2]=Xi;Ui=Wi+112|0;Ri=q[_i>>2];Ri=q[Ri+4>>2]-q[Ri>>2]|0;Yi=Ri>>2;d:{if(q[Ui>>2]-Xi>>2>>>0>=Yi>>>0){break d}if(Yi>>>0>=1073741824){break a}Ri=zo(Ri);q[Wi+104>>2]=Ri;q[Ti>>2]=Ri;q[Ui>>2]=Ri+(Yi<<2);if(!Xi){break d}pp(Xi)}Ri=q[a+172>>2]+Vi|0;q[Ri+128>>2]=0;jm(Ri+4|0,q[a+8>>2],q[_i>>2],$i);aj=aj+1|0}Si=Si+1|0;if((Si|0)<(Zi|0)){continue}break}}return 1}Qb(11752);F()}function Rj(a){var bj=0,cj=0,dj=0,ej=0;bh(a);cj=q[a+84>>2];a:{if((cj|0)<1){break a}bj=cj<<5;dj=zo((cj|0)!=(cj&134217727)?-1:bj|4);q[dj>>2]=cj;dj=dj+4|0;cj=dj+bj|0;bj=dj;while(1){bj=_g(bj)+32|0;if((cj|0)!=(bj|0)){continue}break}ej=q[a+80>>2];q[a+80>>2]=dj;if(ej){cj=ej+ -4|0;dj=q[cj>>2];if(dj){bj=ej+(dj<<5)|0;while(1){bj=$g(bj+ -32|0);if((ej|0)!=(bj|0)){continue}break}}pp(cj)}if(q[a+84>>2]<1){break a}bj=0;while(1){bh(q[a+80>>2]+(bj<<5)|0);bj=bj+1|0;if((bj|0)<q[a+84>>2]){continue}break}}}function Sj(a,fj,gj){var hj=0,ij=0,jj=0;a:{b:{c:{fj=w(fj,3);if((fj|0)==-1){break c}ij=q[a+12>>2];jj=q[ij+12>>2];hj=fj<<2;if(q[jj+hj>>2]==-1){break b}a=q[a+152>>2];ij=q[ij>>2];if(q[a+(q[ij+hj>>2]<<2)>>2]!=-1){break a}hj=fj+1|0;fj=(hj>>>0)%3|0?hj:fj+ -2|0;if((fj|0)==-1){break c}hj=fj<<2;if(q[hj+jj>>2]==-1){break b}if(q[a+(q[hj+ij>>2]<<2)>>2]!=-1){break a}hj=fj+1|0;fj=(hj>>>0)%3|0?hj:fj+ -2|0;if((fj|0)==-1){break c}hj=fj<<2;if(q[hj+jj>>2]==-1){break b}if(q[a+(q[hj+ij>>2]<<2)>>2]!=-1){break a}a=fj+1|0;q[gj>>2]=(a>>>0)%3|0?a:fj+ -2|0;return 1}fj=-1}q[gj>>2]=fj;return 0}while(1){a=fj;fj=((fj>>>0)%3|0?-1:2)+fj|0;d:{if((fj|0)==-1){break d}fj=q[(fj<<2)+jj>>2];if((fj|0)==-1){break d}fj=fj+((fj>>>0)%3|0?-1:2)|0;if((fj|0)!=-1){continue}}break}q[gj>>2]=a+((a>>>0)%3|0?-1:2);return 0}function Tj(a,fj){var gj=0,kj=0,lj=0,mj=0,nj=0,oj=0;a:{lj=q[a>>2];nj=q[a+4>>2]-lj|0;gj=nj>>2;kj=gj+1|0;if(kj>>>0<1073741824){oj=gj<<2;gj=q[a+8>>2]-lj|0;mj=gj>>1;kj=gj>>2>>>0<536870911?mj>>>0<kj>>>0?kj:mj:1073741823;gj=0;b:{if(!kj){break b}if(kj>>>0>=1073741824){break a}gj=zo(kj<<2)}mj=oj+gj|0;q[mj>>2]=q[fj>>2];fj=gj+(kj<<2)|0;kj=mj+4|0;if((nj|0)>=1){vp(gj,lj,nj)}q[a>>2]=gj;q[a+8>>2]=fj;q[a+4>>2]=kj;if(lj){pp(lj)}return}To();F()}Qb(11752);F()}function Uj(a,fj){var pj=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;qj=T-48|0;T=qj;q[qj+16>>2]=fj;sj=a+20|0;pj=q[a+16>>2];q[sj>>2]=pj;yj=a+16|0;a:{if(q[a+24>>2]!=(pj|0)){q[pj>>2]=fj;fj=pj+4|0;q[sj>>2]=fj;break a}Tj(yj,qj+16|0);fj=q[sj>>2];pj=q[a+16>>2]}sj=q[a+8>>2];Jj=(q[sj+100>>2]-q[sj+96>>2]|0)/12|0;if((fj|0)!=(pj|0)){Kj=a+120|0;wj=a+268|0;Lj=a+72|0;vj=a+20|0;Mj=a+80|0;Cj=a+76|0;Dj=a+152|0;xj=a+276|0;sj=a+272|0;Nj=a+24|0;while(1){fj=fj+ -4|0;pj=q[fj>>2];q[qj+16>>2]=pj;b:{c:{d:{if((pj|0)==-1){break d}pj=(pj>>>0)/3|0;if(q[q[a+28>>2]+(pj>>>3&268435452)>>2]>>>(pj&31)&1){break d}zj=0;while(1){if((zj|0)>=(Jj|0)){break c}q[a+164>>2]=q[a+164>>2]+1;fj=q[qj+16>>2];Aj=(fj|0)==-1?-1:(fj>>>0)/3|0;pj=q[a+28>>2]+(Aj>>>3&536870908)|0;q[pj>>2]=q[pj>>2]|1<<(Aj&31);pj=q[Cj>>2];e:{if((pj|0)!=q[Mj>>2]){q[pj>>2]=fj;q[Cj>>2]=pj+4;break e}Tj(Lj,qj+16|0)}pj=-1;fj=q[qj+16>>2];if((fj|0)!=-1){pj=q[q[q[a+12>>2]>>2]+(fj<<2)>>2]}Ej=pj<<2;Fj=q[Ej+q[Dj>>2]>>2];zj=zj+1|0;f:{g:{h:{i:{j:{k:{l:{rj=q[a+84>>2]+(pj>>>3&536870908)|0;tj=q[rj>>2];pj=1<<(pj&31);if(!(tj&pj)){q[rj>>2]=pj|tj;if((Fj|0)==-1){break l}fj=q[qj+16>>2]}if((fj|0)==-1){break i}pj=-1;rj=fj+1|0;uj=(rj>>>0)%3|0?rj:fj+ -2|0;if((uj|0)!=-1){pj=q[q[q[a+12>>2]+12>>2]+(uj<<2)>>2]}q[qj+8>>2]=pj;Bj=((fj>>>0)%3|0?-1:2)+fj|0;Gj=(Bj|0)==-1;if(Gj){break k}tj=q[q[q[a+12>>2]+12>>2]+(Bj<<2)>>2];rj=(tj|0)==-1?-1:(tj>>>0)/3|0;pj=(pj|0)==-1?-1:(pj>>>0)/3|0;break j}q[qj+40>>2]=0;fj=q[sj>>2];m:{if((fj|0)!=q[xj>>2]){q[fj>>2]=0;q[sj>>2]=fj+4;break m}Tj(wj,qj+40|0)}fj=qj;pj=fj;rj=q[fj+16>>2];fj=-1;n:{if((rj|0)==-1){break n}tj=rj+1|0;rj=(tj>>>0)%3|0?tj:rj+ -2|0;fj=-1;if((rj|0)==-1){break n}fj=q[q[q[a+12>>2]+12>>2]+(rj<<2)>>2]}q[pj+16>>2]=fj;fj=4;break f}rj=-1;tj=-1;pj=(pj|0)==-1?-1:(pj>>>0)/3|0}o:{p:{if((uj|0)==-1){break p}Hj=q[q[a+12>>2]+12>>2];uj=q[Hj+(uj<<2)>>2];if((uj|0)==-1){break p}Ij=q[a+28>>2];uj=(uj>>>0)/3|0;if(!(q[Ij+(uj>>>3&268435452)>>2]>>>(uj&31)&1)){break o}}q:{r:{if((pj|0)!=-1){ak(a,q[a+164>>2],1,pj);fj=q[qj+16>>2];if((fj|0)==-1){break r}}fj=((fj>>>0)%3|0?-1:2)+fj|0;if((fj|0)==-1){break r}fj=q[q[q[a+12>>2]+12>>2]+(fj<<2)>>2];if((fj|0)==-1){break r}fj=(fj>>>0)/3|0;if(!(q[q[a+28>>2]+(fj>>>3&268435452)>>2]>>>(fj&31)&1)){break q}}if((rj|0)==-1){break h}ak(a,q[a+164>>2],0,rj);break h}q[qj+40>>2]=5;fj=q[sj>>2];s:{if((fj|0)!=q[xj>>2]){q[fj>>2]=5;q[sj>>2]=fj+4;break s}Tj(wj,qj+40|0)}q[qj+16>>2]=tj;fj=0;break f}t:{u:{if(Gj){break u}fj=q[(Bj<<2)+Hj>>2];if((fj|0)==-1){break u}fj=(fj>>>0)/3|0;if(!(q[(fj>>>3&268435452)+Ij>>2]>>>(fj&31)&1)){break t}}if((rj|0)!=-1){ak(a,q[a+164>>2],0,rj)}q[qj+40>>2]=3;fj=q[sj>>2];v:{if((fj|0)!=q[xj>>2]){q[fj>>2]=3;q[sj>>2]=fj+4;break v}Tj(wj,qj+40|0)}q[qj+16>>2]=q[qj+8>>2];fj=0;break f}q[qj+40>>2]=1;fj=q[sj>>2];w:{if((fj|0)!=q[xj>>2]){q[fj>>2]=1;q[sj>>2]=fj+4;break w}Tj(wj,qj+40|0)}q[a+168>>2]=q[a+168>>2]+1;x:{if((Fj|0)==-1){break x}fj=q[q[Dj>>2]+Ej>>2];if(q[q[a+140>>2]+(fj>>>3&536870908)>>2]>>>(fj&31)&1){break x}Vj(a,q[qj+16>>2],0)}fj=q[a+164>>2];q[qj+4>>2]=Aj;q[qj+32>>2]=qj+4;bk(qj+40|0,Kj,qj+4|0,qj+32|0);q[q[qj+40>>2]+12>>2]=fj;fj=q[vj>>2];q[fj+ -4>>2]=tj;if((fj|0)!=q[Nj>>2]){q[fj>>2]=q[qj+8>>2];q[vj>>2]=fj+4;break g}Tj(yj,qj+8|0);break g}q[qj+8>>2]=-1}q[qj+40>>2]=7;fj=q[sj>>2];y:{if((fj|0)!=q[xj>>2]){q[fj>>2]=7;q[sj>>2]=fj+4;break y}Tj(wj,qj+40|0)}q[vj>>2]=q[vj>>2]+ -4}fj=5}if((fj|0)!=5){continue}break}break c}q[vj>>2]=fj;break b}fj=q[vj>>2]}if(q[yj>>2]!=(fj|0)){continue}break}}T=qj+48|0;return 1}function Vj(a,fj,Oj){var Pj=0,Qj=0,Rj=0,Sj=0,Tj=0,Uj=0,Vj=0;Sj=-1;a:{if((fj|0)==-1){Tj=q[a+12>>2];Qj=1;Rj=-1;break a}Tj=q[a+12>>2];Pj=((fj>>>0)%3|0?-1:2)+fj|0;b:{if((Pj|0)==-1){Qj=1;break b}Uj=q[Tj+12>>2];while(1){Rj=q[Uj+(Pj<<2)>>2];c:{if((Rj|0)==-1){Qj=0;Sj=Pj;break c}Qj=1;Pj=Rj+1|0;Pj=(Pj>>>0)%3|0?Pj:Rj+ -2|0;if((Pj|0)!=-1){continue}}break}Rj=-1;if((fj|0)==-1){break a}}Rj=q[q[Tj>>2]+(fj<<2)>>2]}fj=0;if(Oj){fj=q[a+84>>2]+(Rj>>>3&536870908)|0;q[fj>>2]=q[fj>>2]|1<<(Rj&31);fj=1}Oj=q[q[a+152>>2]+(Rj<<2)>>2];Pj=q[a+140>>2]+(Oj>>>3&536870908)|0;q[Pj>>2]=q[Pj>>2]|1<<(Oj&31);Vj=Rj;Pj=-1;d:{if(Qj){break d}Oj=((Sj>>>0)%3|0?-1:2)+Sj|0;Pj=-1;if((Oj|0)==-1){break d}Pj=q[q[Tj>>2]+(Oj<<2)>>2]}if((Vj|0)!=(Pj|0)){Oj=q[a+84>>2];Uj=Tj+12|0;while(1){a=Sj;Sj=Oj+(Pj>>>3&536870908)|0;q[Sj>>2]=q[Sj>>2]|1<<(Pj&31);Sj=-1;Pj=-1;e:{if((a|0)==-1){break e}Qj=a+1|0;Qj=(Qj>>>0)%3|0?Qj:a+ -2|0;if((Qj|0)==-1){break e}Vj=q[Uj>>2];while(1){a=q[Vj+(Qj<<2)>>2];if((a|0)!=-1){Qj=a+1|0;Qj=(Qj>>>0)%3|0?Qj:a+ -2|0;if((Qj|0)!=-1){continue}break e}break}a=((Qj>>>0)%3|0?-1:2)+Qj|0;if((a|0)!=-1){Pj=q[q[Tj>>2]+(a<<2)>>2]}Sj=Qj}fj=fj+1|0;if((Pj|0)!=(Rj|0)){continue}break}}}function Wj(a,fj,Oj,Wj){var Xj=0,Yj=0,Zj=0,_j=0,$j=0,ak=0,bk=0;Xj=Wj-Oj|0;if((Xj|0)<1){return}a:{_j=Xj>>2;Yj=q[a+8>>2];ak=q[a+4>>2];if((_j|0)<=Yj-ak>>2){$j=ak-fj|0;Yj=$j>>2;if((_j|0)<=(Yj|0)){Xj=ak;Yj=Wj;break a}Xj=ak;Yj=(Yj<<2)+Oj|0;if((Yj|0)!=(Wj|0)){Zj=Yj;while(1){q[Xj>>2]=q[Zj>>2];Xj=Xj+4|0;Zj=Zj+4|0;if((Zj|0)!=(Wj|0)){continue}break}q[a+4>>2]=Xj}if(($j|0)>=1){break a}return}b:{Zj=q[a>>2];_j=_j+(ak-Zj>>2)|0;if(_j>>>0<1073741824){$j=Yj-Zj|0;Yj=$j>>1;bk=$j>>2>>>0<536870911?Yj>>>0<_j>>>0?_j:Yj:1073741823;Xj=0;c:{if(!bk){break c}if(bk>>>0>=1073741824){break b}Xj=zo(bk<<2)}$j=Xj;_j=fj-Zj|0;Yj=Xj+(_j>>2<<2)|0;Xj=Yj;if((Oj|0)!=(Wj|0)){Xj=Yj;while(1){q[Xj>>2]=q[Oj>>2];Xj=Xj+4|0;Oj=Oj+4|0;if((Wj|0)!=(Oj|0)){continue}break}}Oj=bk<<2;if((_j|0)>=1){vp($j,Zj,_j)}Oj=Oj+$j|0;Wj=ak-fj|0;if((Wj|0)>=1){Xj=vp(Xj,fj,Wj)+Wj|0;Zj=q[a>>2]}q[a>>2]=$j;q[a+8>>2]=Oj;q[a+4>>2]=Xj;if(Zj){pp(Zj)}return}To();F()}Qb(11752);F()}Wj=_j<<2;_j=Xj-(Wj+fj|0)|0;Wj=Xj-Wj|0;if(Wj>>>0<ak>>>0){Zj=Xj;$j=Wj;while(1){q[Zj>>2]=q[$j>>2];Zj=Zj+4|0;$j=$j+4|0;if($j>>>0<ak>>>0){continue}break}q[a+4>>2]=Zj}if(_j){while(1){Xj=Xj+ -4|0;Wj=Wj+ -4|0;q[Xj>>2]=q[Wj>>2];if((fj|0)!=(Wj|0)){continue}break}}if((Oj|0)==(Yj|0)){return}Xj=fj;while(1){q[Xj>>2]=q[Oj>>2];Xj=Xj+4|0;Oj=Oj+4|0;if((Yj|0)!=(Oj|0)){continue}break}}function Xj(a,fj){var Oj=0,Wj=0,ck=0,dk=0,ek=0,fk=0,gk=0;Wj=T-16|0;T=Wj;q[Wj>>2]=fj;Oj=-1;a:{if((fj|0)==-1){q[Wj+4>>2]=-1;break a}Oj=fj+1|0;q[Wj+4>>2]=(Oj>>>0)%3|0?Oj:fj+ -2|0;if((fj>>>0)%3){Oj=fj+ -1|0;break a}Oj=fj+2|0}q[Wj+8>>2]=Oj;Oj=(fj|0)==-1?-1:(fj>>>0)/3|0;ck=q[a+28>>2]+(Oj>>>3&536870908)|0;q[ck>>2]=q[ck>>2]|1<<(Oj&31);dk=a+176|0;ek=a+280|0;ck=0;while(1){b:{if((fj|0)==-1){break b}Oj=q[q[q[a+12>>2]+12>>2]+(fj<<2)>>2];if((Oj|0)==-1){break b}Oj=(Oj>>>0)/3|0;if(q[q[a+28>>2]+(Oj>>>3&268435452)>>2]>>>(Oj&31)&1){break b}Oj=q[a+172>>2];if((Oj|0)==q[dk>>2]){break b}fk=fj>>>5;gk=1<<(fj&31);fj=0;while(1){ch(q[ek>>2]+(fj<<5)|0,(q[q[(w(fj,136)+Oj|0)+4>>2]+(fk<<2)>>2]&gk)!=0);fj=fj+1|0;Oj=q[a+172>>2];if(fj>>>0<(q[dk>>2]-Oj|0)/136>>>0){continue}break}}ck=ck+1|0;if((ck|0)!=3){fj=q[(ck<<2)+Wj>>2];continue}break}T=Wj+16|0}function Yj(a){var fj=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;mk=a+32|0;fj=q[a+64>>2];fj=q[(n[q[q[fj>>2]+40>>2]](fj)|0)+56>>2];Fl(mk,w((q[fj+100>>2]-q[fj+96>>2]|0)/12|0,3),0,1);a:{fj=q[a+68>>2];ik=q[a+72>>2]-fj|0;if((ik|0)<1){break a}ik=(ik>>>2)+ -1|0;ok=a+44|0;while(1){hk=q[a+52>>2];b:{if((hk|0)<0?1:(hk|0)<=0?t[a+48>>2]>=1?0:1:0){break b}lk=q[(ik<<2)+fj>>2];if(!(171>>>lk&1)){break b}pk=q[(lk<<2)+12096>>2];fj=q[ok>>2];hk=q[fj+4>>2];kk=0;while(1){jk=hk>>>3;nk=jk+q[fj>>2]|0;qk=r[nk|0];hk=hk&7;rk=nk,sk=Yp(-2,hk)&qk,o[rk|0]=sk;jk=jk+q[fj>>2]|0;o[jk|0]=r[jk|0]|(lk>>>kk&1)<<hk;hk=q[fj+4>>2]+1|0;q[fj+4>>2]=hk;kk=kk+1|0;if((pk|0)!=(kk|0)){continue}break}}ik=ik+ -1|0;if((ik|0)<0){break a}fj=q[a+68>>2];continue}}Gl(mk)}function Zj(a){var tk=0,uk=0,vk=0,wk=0,xk=0,yk=0,zk=0,Ak=0,Bk=0,Ck=0;tk=q[a+112>>2]-q[a+108>>2]|0;xk=(tk|0)/12|0;td(xk,q[q[a+4>>2]+44>>2]);if(tk){while(1){tk=q[a+108>>2]+w(vk,12)|0;td(q[tk+4>>2]-uk|0,q[q[a+4>>2]+44>>2]);td(q[tk+4>>2]-q[tk>>2]|0,q[q[a+4>>2]+44>>2]);uk=q[tk+4>>2];vk=vk+1|0;if(vk>>>0<xk>>>0){continue}break}vk=0;Fl(q[q[a+4>>2]+44>>2],xk,0,0);while(1){tk=q[q[a+4>>2]+44>>2];uk=q[tk+20>>2];if((uk|0)>0?1:(uk|0)>=0?t[tk+16>>2]<1?0:1:0){zk=r[(q[a+108>>2]+w(vk,12)|0)+8|0];tk=q[tk+12>>2];wk=q[tk+4>>2];uk=wk>>>3;yk=uk+q[tk>>2]|0;Ak=r[yk|0];wk=wk&7;Bk=yk,Ck=Yp(-2,wk)&Ak,o[Bk|0]=Ck;uk=uk+q[tk>>2]|0;o[uk|0]=r[uk|0]|(zk&1)<<wk;q[tk+4>>2]=q[tk+4>>2]+1}vk=vk+1|0;if(vk>>>0<xk>>>0){continue}break}Gl(q[q[a+4>>2]+44>>2])}return 1}function _j(a,Dk){var Ek=0,Fk=0,Gk=0,Hk=0,Ik=0;Gk=q[a+8>>2];Fk=a+4|0;Ek=q[Fk>>2];a:{if((Gk-Ek|0)/136>>>0>=Dk>>>0){while(1){q[Ek>>2]=-1;hm(Ek+4|0);q[Ek+104>>2]=0;q[Ek+108>>2]=0;o[Ek+100|0]=1;q[Ek+112>>2]=0;q[Ek+116>>2]=0;q[Ek+120>>2]=0;q[Ek+124>>2]=0;q[Ek+128>>2]=0;Ek=q[Fk>>2]+136|0;q[Fk>>2]=Ek;Dk=Dk+ -1|0;if(Dk){continue}break a}}b:{c:{d:{Hk=q[a>>2];Ik=(Ek-Hk|0)/136|0;Fk=Ik+Dk|0;if(Fk>>>0<31580642){Ek=0;Gk=(Gk-Hk|0)/136|0;Hk=Gk<<1;Fk=Gk>>>0<15790320?Hk>>>0<Fk>>>0?Fk:Hk:31580641;if(Fk){if(Fk>>>0>=31580642){break d}Ek=zo(w(Fk,136))}Hk=w(Fk,136)+Ek|0;Gk=w(Ik,136)+Ek|0;Ek=Gk;while(1){q[Ek>>2]=-1;hm(Ek+4|0);q[Ek+104>>2]=0;q[Ek+108>>2]=0;o[Ek+100|0]=1;q[Ek+112>>2]=0;q[Ek+116>>2]=0;q[Ek+120>>2]=0;q[Ek+124>>2]=0;q[Ek+128>>2]=0;Ek=Ek+136|0;Dk=Dk+ -1|0;if(Dk){continue}break}Dk=q[a>>2];Fk=q[a+4>>2];if((Dk|0)==(Fk|0)){break c}while(1){Fk=Fk+ -136|0;Gk=Uk(Gk+ -136|0,Fk);if((Dk|0)!=(Fk|0)){continue}break}Dk=q[a+4>>2];Fk=q[a>>2];break b}To();F()}Qb(11752);F()}Fk=Dk}q[a>>2]=Gk;q[a+8>>2]=Hk;q[a+4>>2]=Ek;if((Dk|0)!=(Fk|0)){while(1){a=q[Dk+ -20>>2];if(a){q[Dk+ -16>>2]=a;pp(a)}a=Dk+ -136|0;Ek=q[Dk+ -32>>2];if(Ek){q[Dk+ -28>>2]=Ek;pp(Ek)}$j(Dk+ -132|0);Dk=a;if((Dk|0)!=(Fk|0)){continue}break}}if(!Fk){break a}pp(Fk)}}function $j(a){var Dk=0;Dk=q[a+84>>2];if(Dk){q[a+88>>2]=Dk;pp(Dk)}Dk=q[a+72>>2];if(Dk){q[a+76>>2]=Dk;pp(Dk)}Dk=q[a+52>>2];if(Dk){q[a+56>>2]=Dk;pp(Dk)}Dk=q[a+40>>2];if(Dk){q[a+44>>2]=Dk;pp(Dk)}Dk=q[a+28>>2];if(Dk){q[a+32>>2]=Dk;pp(Dk)}Dk=q[a+12>>2];if(Dk){pp(Dk)}a=q[a>>2];if(a){pp(a)}}function ak(a,Jk,Kk,Lk){var Mk=0,Nk=0,Ok=0,Pk=0,Qk=0,Rk=0,Sk=0;Nk=T-16|0;T=Nk;Pk=q[a+124>>2];a:{if(!Pk){break a}Ok=q[a+120>>2];Qk=Xp(Pk);Mk=Pk+ -1&Lk;b:{if(Qk>>>0<=1){break b}Mk=Lk;if(Pk>>>0>Lk>>>0){break b}Mk=(Lk>>>0)%(Pk>>>0)|0}Rk=Mk;Mk=q[Ok+(Mk<<2)>>2];if(!Mk){break a}Ok=q[Mk>>2];if(!Ok){break a}Sk=Pk+ -1|0;Qk=Qk>>>0>1;while(1){c:{Mk=q[Ok+4>>2];d:{if((Mk|0)!=(Lk|0)){e:{if(!Qk){Mk=Mk&Sk;break e}if(Mk>>>0<Pk>>>0){break e}Mk=(Mk>>>0)%(Pk>>>0)|0}if((Mk|0)==(Rk|0)){break d}break a}if(q[Ok+8>>2]==(Lk|0)){break c}}Ok=q[Ok>>2];if(Ok){continue}break a}break}Lk=q[Ok+12>>2];if((Lk|0)==-1){break a}q[Nk+4>>2]=Jk;q[Nk>>2]=Lk;o[Nk+8|0]=Kk&1;Kk=a+112|0;Jk=q[Kk>>2];if((Jk|0)!=q[a+116>>2]){a=q[Nk+4>>2];q[Jk>>2]=q[Nk>>2];q[Jk+4>>2]=a;q[Jk+8>>2]=q[Nk+8>>2];q[Kk>>2]=q[Kk>>2]+12;break a}ek(a+108|0,Nk)}T=Nk+16|0}function bk(a,Jk,Kk,Lk){var Tk=0,Uk=0,Wk=0,Xk=0,Yk=0,Zk=x(0),_k=0,$k=x(0),al=0;Tk=q[Kk>>2];al=a;a:{b:{Uk=q[Jk+4>>2];if(!Uk){break b}_k=q[Jk>>2];Xk=Xp(Uk);Kk=Uk+ -1&Tk;c:{if(Xk>>>0<=1){break c}Kk=Tk;if(Tk>>>0<Uk>>>0){break c}Kk=(Tk>>>0)%(Uk>>>0)|0}Wk=Kk;Kk=q[(Kk<<2)+_k>>2];if(!Kk){break b}_k=Uk+ -1|0;Xk=Xk>>>0>1;while(1){Kk=q[Kk>>2];if(!Kk){break b}Yk=q[Kk+4>>2];if((Yk|0)!=(Tk|0)){d:{if(!Xk){Yk=Yk&_k;break d}if(Yk>>>0<Uk>>>0){break d}Yk=(Yk>>>0)%(Uk>>>0)|0}if((Wk|0)!=(Yk|0)){break b}}if(q[Kk+8>>2]!=(Tk|0)){continue}break}Jk=0;break a}Kk=zo(16);Lk=q[q[Lk>>2]>>2];q[Kk+12>>2]=0;q[Kk+8>>2]=Lk;q[Kk+4>>2]=Tk;q[Kk>>2]=0;$k=u[Jk+16>>2];Zk=x(q[Jk+12>>2]+1>>>0);e:{if(!(!Uk|!!(x($k*x(Uk>>>0))<Zk))){Tk=Wk;break e}Wk=(Uk+ -1&Uk)!=0|Uk>>>0<3|Uk<<1;Lk=Jk;Zk=x(D(x(Zk/$k)));f:{if(Zk<x(4294967296)&Zk>=x(0)){Xk=~~Zk>>>0;break f}Xk=0}Vk(Lk,Wk>>>0<Xk>>>0?Xk:Wk);Uk=q[Jk+4>>2];if(!(Uk&Uk+ -1)){Tk=Uk+ -1&Tk;break e}if(Tk>>>0<Uk>>>0){break e}Tk=(Tk>>>0)%(Uk>>>0)|0}Lk=q[Jk>>2]+(Tk<<2)|0;Tk=q[Lk>>2];g:{h:{if(!Tk){Wk=Jk+8|0;q[Kk>>2]=q[Wk>>2];q[Wk>>2]=Kk;q[Lk>>2]=Wk;Lk=q[Kk>>2];if(!Lk){break g}Tk=q[Lk+4>>2];Lk=Uk+ -1|0;i:{if(!(Lk&Uk)){Tk=Lk&Tk;break i}if(Tk>>>0<Uk>>>0){break i}Tk=(Tk>>>0)%(Uk>>>0)|0}Tk=q[Jk>>2]+(Tk<<2)|0;break h}q[Kk>>2]=q[Tk>>2]}q[Tk>>2]=Kk}Jk=Jk+12|0;q[Jk>>2]=q[Jk>>2]+1;Jk=1}o[al+4|0]=Jk;q[a>>2]=Kk}function ck(a){a=a|0;return q[a+12>>2]}function dk(a,Jk){a=a|0;Jk=Jk|0;return q[q[a+28>>2]+(Jk>>>3&536870908)>>2]>>>(Jk&31)&1}function ek(a,Jk){var Kk=0,Lk=0,Vk=0,bl=0,cl=0,dl=0;a:{bl=q[a>>2];cl=q[a+4>>2]-bl|0;Kk=(cl|0)/12|0;Lk=Kk+1|0;if(Lk>>>0<357913942){dl=w(Kk,12);Vk=(q[a+8>>2]-bl|0)/12|0;Kk=Vk<<1;Vk=Vk>>>0<178956970?Kk>>>0<Lk>>>0?Lk:Kk:357913941;Kk=0;b:{if(!Vk){break b}if(Vk>>>0>=357913942){break a}Kk=zo(w(Vk,12))}Lk=dl+Kk|0;dl=q[Jk+4>>2];q[Lk>>2]=q[Jk>>2];q[Lk+4>>2]=dl;q[Lk+8>>2]=q[Jk+8>>2];Jk=Lk+w((cl|0)/-12|0,12)|0;Kk=Kk+w(Vk,12)|0;Lk=Lk+12|0;if((cl|0)>=1){vp(Jk,bl,cl)}q[a>>2]=Jk;q[a+8>>2]=Kk;q[a+4>>2]=Lk;if(bl){pp(bl)}return}To();F()}Qb(11752);F()}function fk(a){q[a+4>>2]=0;q[a+8>>2]=0;q[a>>2]=11468;q[a+120>>2]=0;q[a+124>>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;q[a+48>>2]=0;q[a+52>>2]=0;q[a+56>>2]=0;q[a+60>>2]=0;q[a+64>>2]=0;q[a+72>>2]=0;q[a+76>>2]=0;q[a+80>>2]=0;q[a+84>>2]=0;q[a+88>>2]=0;q[a+92>>2]=0;q[a+96>>2]=0;q[a+100>>2]=0;q[a+104>>2]=0;q[a+108>>2]=0;q[a+112>>2]=0;q[a+116>>2]=0;q[a+128>>2]=0;q[a+132>>2]=0;q[a+136>>2]=1065353216;q[a+156>>2]=0;q[a+160>>2]=0;q[a+148>>2]=0;q[a+152>>2]=0;q[a+140>>2]=0;q[a+144>>2]=0;q[a+168>>2]=0;q[a+172>>2]=0;q[a+164>>2]=-1;q[a+176>>2]=0;q[a+180>>2]=0;q[a+184>>2]=0;q[a+188>>2]=0;q[a+192>>2]=0;_g(a+200|0);Dl(a+232|0);q[a+304>>2]=0;q[a+308>>2]=0;q[a+296>>2]=0;q[a+300>>2]=0;q[a+288>>2]=0;q[a+292>>2]=0;q[a+280>>2]=0;q[a+284>>2]=0;q[a+272>>2]=0;q[a+276>>2]=0;q[a+264>>2]=0;q[a+268>>2]=0;o[a+352|0]=0;q[a+344>>2]=0;q[a+336>>2]=0;q[a+340>>2]=0;q[a+328>>2]=2;q[a+332>>2]=7;q[a+320>>2]=-1;q[a+324>>2]=0;q[a+312>>2]=0;q[a+316>>2]=-1}function gk(a,Jk){a=a|0;Jk=Jk|0;var el=0,fl=0,gl=0,hl=0,il=0,jl=0;gl=T-16|0;T=gl;q[a+4>>2]=Jk;q[a+8>>2]=q[Jk+56>>2];q[a+188>>2]=q[a+184>>2];hl=q[Jk+48>>2];Jk=zo(32);q[gl>>2]=Jk;q[gl+4>>2]=19;q[gl+8>>2]=-2147483616;o[Jk+19|0]=0;el=r[11295]|r[11296]<<8|(r[11297]<<16|r[11298]<<24);o[Jk+15|0]=el;o[Jk+16|0]=el>>>8;o[Jk+17|0]=el>>>16;o[Jk+18|0]=el>>>24;el=r[11292]|r[11293]<<8|(r[11294]<<16|r[11295]<<24);fl=r[11288]|r[11289]<<8|(r[11290]<<16|r[11291]<<24);o[Jk+8|0]=fl;o[Jk+9|0]=fl>>>8;o[Jk+10|0]=fl>>>16;o[Jk+11|0]=fl>>>24;o[Jk+12|0]=el;o[Jk+13|0]=el>>>8;o[Jk+14|0]=el>>>16;o[Jk+15|0]=el>>>24;el=r[11284]|r[11285]<<8|(r[11286]<<16|r[11287]<<24);fl=r[11280]|r[11281]<<8|(r[11282]<<16|r[11283]<<24);o[Jk|0]=fl;o[Jk+1|0]=fl>>>8;o[Jk+2|0]=fl>>>16;o[Jk+3|0]=fl>>>24;o[Jk+4|0]=el;o[Jk+5|0]=el>>>8;o[Jk+6|0]=el>>>16;o[Jk+7|0]=el>>>24;Jk=Cd(hl,gl);if(o[gl+11|0]<=-1){pp(q[gl>>2])}hl=q[q[a+4>>2]+48>>2];a:{if(Jk){Jk=zo(32);q[gl>>2]=Jk;q[gl+4>>2]=19;q[gl+8>>2]=-2147483616;o[Jk+19|0]=0;el=r[11295]|r[11296]<<8|(r[11297]<<16|r[11298]<<24);o[Jk+15|0]=el;o[Jk+16|0]=el>>>8;o[Jk+17|0]=el>>>16;o[Jk+18|0]=el>>>24;el=r[11292]|r[11293]<<8|(r[11294]<<16|r[11295]<<24);fl=r[11288]|r[11289]<<8|(r[11290]<<16|r[11291]<<24);o[Jk+8|0]=fl;o[Jk+9|0]=fl>>>8;o[Jk+10|0]=fl>>>16;o[Jk+11|0]=fl>>>24;o[Jk+12|0]=el;o[Jk+13|0]=el>>>8;o[Jk+14|0]=el>>>16;o[Jk+15|0]=el>>>24;el=r[11284]|r[11285]<<8|(r[11286]<<16|r[11287]<<24);fl=r[11280]|r[11281]<<8|(r[11282]<<16|r[11283]<<24);o[Jk|0]=fl;o[Jk+1|0]=fl>>>8;o[Jk+2|0]=fl>>>16;o[Jk+3|0]=fl>>>24;o[Jk+4|0]=el;o[Jk+5|0]=el>>>8;o[Jk+6|0]=el>>>16;o[Jk+7|0]=el>>>24;il=a,jl=Ol(hl,gl,0),o[il+352|0]=jl;if(o[gl+11|0]>-1){break a}pp(q[gl>>2]);break a}if((Jd(hl)|0)>=6){o[a+352|0]=1;break a}o[a+352|0]=0}T=gl+16|0;return 1}function hk(a,Jk){a=a|0;Jk=Jk|0;var kl=0,ll=0,ml=0,nl=0,ol=0,pl=0,ql=0,rl=0,sl=0,tl=0,ul=0,vl=0,wl=0,xl=0;ll=T-96|0;T=ll;a:{b:{if(!r[a+352|0]){break b}kl=n[q[q[a>>2]+40>>2]](a)|0;if((q[kl+12>>2]-q[kl+8>>2]|0)<1){break b}kl=q[q[(n[q[q[a>>2]+40>>2]](a)|0)+8>>2]>>2];q[ll+24>>2]=Jk;a=q[kl+8>>2];c:{if((a|0)!=q[kl+12>>2]){q[a>>2]=Jk;q[kl+8>>2]=a+4;break c}pd(kl+4|0,ll+24|0)}a=q[ll+24>>2];Jk=q[kl+16>>2];ml=q[kl+20>>2]-Jk>>2;d:{if((a|0)<(ml|0)){break d}q[ll+88>>2]=-1;nl=a+1|0;if(nl>>>0>ml>>>0){a=kl+16|0;qd(a,nl-ml|0,ll+88|0);Jk=q[a>>2];a=q[ll+24>>2];break d}if(nl>>>0>=ml>>>0){break d}q[kl+20>>2]=(nl<<2)+Jk}q[(a<<2)+Jk>>2]=(q[kl+8>>2]-q[kl+4>>2]>>2)+ -1;kl=1;break a}kl=Jk<<2;nl=q[kl+q[q[(n[q[q[a>>2]+40>>2]](a)|0)+56>>2]+84>>2]>>2];ol=q[kl+q[q[(n[q[q[a>>2]+40>>2]](a)|0)+4>>2]+8>>2]>>2];q[ll+88>>2]=-1;kl=q[a+176>>2];ml=q[a+172>>2];e:{if((kl|0)!=(ml|0)){pl=(kl-ml|0)/136|0;kl=0;while(1){if(q[ml+w(kl,136)>>2]==(Jk|0)){q[ll+88>>2]=kl;break e}kl=kl+1|0;if(kl>>>0<pl>>>0){continue}break}}kl=-1}f:{g:{h:{i:{j:{k:{l:{m:{if(!r[a+352|0]){pl=q[ol+56>>2];if(!r[(ml+w(kl,136)|0)+28|0]|(nl|0)!=1?!(!nl|!pl):0){break k}if(pl){break m}}kl=a+40|0;break l}nl=q[a+12>>2];pl=q[nl+24>>2];nl=q[nl+28>>2];q[ll+24>>2]=-1;kl=ml+w(kl,136)|0;Dj(kl+116|0,nl-pl>>2,ll+24|0);o[(q[a+172>>2]+w(q[ll+88>>2],136)|0)+100|0]=0;kl=kl+104|0}if(Jd(q[(n[q[q[a>>2]+40>>2]](a)|0)+48>>2])|q[ol+56>>2]){break j}if(r[a+352|0]){ml=q[a+8>>2];if((q[ml+12>>2]-q[ml+8>>2]|0)>4){break j}}Ej(ll+24|0,a,kl);nl=1;kl=q[ll+24>>2];break i}ml=ml+w(kl,136)|0;kl=q[ml+56>>2];nl=q[ml+60>>2];q[ll+24>>2]=-1;Dj(ml+116|0,nl-kl>>2,ll+24|0);kl=zo(80);nl=q[a+8>>2];ol=kl+12|0;q[ol>>2]=0;q[ol+4>>2]=0;q[kl>>2]=12928;q[kl+4>>2]=0;pl=kl+20|0;q[pl>>2]=0;q[pl+4>>2]=0;vl=kl+28|0;ql=vl;q[ql>>2]=0;q[ql+4>>2]=0;q[kl+36>>2]=0;q[kl+40>>2]=0;ql=kl+44|0;q[ql>>2]=0;q[ql+4>>2]=0;q[kl+52>>2]=0;q[kl+76>>2]=0;wl=ml+104|0;q[kl+72>>2]=wl;q[kl+68>>2]=nl;q[kl- -64>>2]=0;xl=kl+56|0;rl=xl;q[rl>>2]=0;q[rl+4>>2]=0;q[kl+8>>2]=11828;rl=ll- -64|0;q[rl>>2]=0;q[rl+4>>2]=0;q[ll+56>>2]=0;q[ll+60>>2]=0;sl=ll+40|0;ul=sl;q[ul>>2]=0;q[ul+4>>2]=0;q[ll+80>>2]=0;q[ll+48>>2]=0;q[ll+52>>2]=0;q[ll+32>>2]=0;q[ll+36>>2]=0;q[ll+72>>2]=0;q[ll+76>>2]=0;q[ll+24>>2]=11828;ul=ml+4|0;q[ll+28>>2]=ul;ml=q[ml+68>>2];tl=q[ml>>2];ml=q[ml+4>>2];o[ll+95|0]=0;Fj(ll+48|0,(ml-tl>>2>>>0)/3|0,ll+95|0);ml=q[ll+28>>2];tl=q[ml+56>>2];ml=q[ml+52>>2];o[ll+95|0]=0;Fj(ll+60|0,tl-ml>>2,ll+95|0);tl=ll+44|0;q[tl>>2]=kl;q[sl>>2]=nl;ml=ll+36|0;q[ml>>2]=wl;q[ll+32>>2]=ul;q[kl+76>>2]=a+72;q[vl>>2]=q[tl>>2];nl=q[ml+4>>2];q[pl>>2]=q[ml>>2];q[pl+4>>2]=nl;ml=q[ll+32>>2];q[ol>>2]=q[ll+28>>2];q[ol+4>>2]=ml;sl=kl;nl=q[ll+52>>2];if(nl){ol=kl+32|0;n:{if(nl>>>0<=q[kl+40>>2]<<5>>>0){pl=nl+ -1>>>5;nl=q[ol>>2];break n}ol=q[ol>>2];if(ol){pp(ol);q[kl+40>>2]=0;q[kl+32>>2]=0;q[kl+36>>2]=0;nl=q[ll+52>>2]}if((nl|0)<=-1){break h}pl=nl+ -1>>>5;ol=pl+1|0;nl=zo(ol<<2);q[kl+40>>2]=ol;q[kl+36>>2]=0;q[kl+32>>2]=nl}xp(nl,q[ll+48>>2],(pl<<2)+4|0);pl=q[ll+52>>2]}else{pl=0}q[sl+36>>2]=pl;sl=kl;nl=q[rl>>2];if(nl){o:{if(nl>>>0<=q[kl+52>>2]<<5>>>0){ol=nl+ -1>>>5;nl=q[ql>>2];break o}ol=q[ql>>2];if(ol){pp(ol);q[kl+52>>2]=0;q[kl+44>>2]=0;q[kl+48>>2]=0;nl=q[ll+64>>2]}if((nl|0)<=-1){break g}ol=nl+ -1>>>5;pl=ol+1|0;nl=zo(pl<<2);q[kl+52>>2]=pl;q[kl+48>>2]=0;q[kl+44>>2]=nl}xp(nl,q[ll+60>>2],(ol<<2)+4|0);ql=q[ll+64>>2]}else{ql=0}q[sl+48>>2]=ql;Gj(xl,q[ll+72>>2],q[ll+76>>2]);q[ll+24>>2]=11828;ml=q[ll+72>>2];if(ml){q[ll+76>>2]=ml;pp(ml)}q[ll+24>>2]=12080;ml=q[ll+60>>2];if(ml){pp(ml)}ml=q[ll+48>>2];if(ml){pp(ml)}nl=0;break f}Hj(ll+24|0,a,kl);nl=0;kl=q[ll+24>>2]}if(kl){break f}kl=0;break a}To();F()}To();F()}ol=q[ll+88>>2];ql=a+68|0;p:{if((ol|0)==-1){break p}ql=(q[a+172>>2]+w(ol,136)|0)+132|0}q[ql>>2]=nl;ml=zo(76);q[ll+16>>2]=kl;xe(ml,ll+16|0,Jk);Jk=q[ll+16>>2];q[ll+16>>2]=0;if(Jk){n[q[q[Jk>>2]+4>>2]](Jk)}kl=a+188|0;Jk=q[kl>>2];q:{if((Jk|0)!=q[a+192>>2]){q[Jk>>2]=q[ll+88>>2];q[kl>>2]=Jk+4;break q}pd(a+184|0,ll+88|0)}a=n[q[q[a>>2]+40>>2]](a)|0;q[ll+8>>2]=ml;Jk=a+12|0;kl=q[Jk>>2];r:{if(kl>>>0<t[a+16>>2]){q[ll+8>>2]=0;q[kl>>2]=ml;q[Jk>>2]=q[Jk>>2]+4;break r}Ij(a+8|0,ll+8|0)}a=q[ll+8>>2];q[ll+8>>2]=0;kl=1;if(!a){break a}n[q[q[a>>2]+4>>2]](a)}T=ll+96|0;return kl|0}function ik(a,Jk){a=a|0;Jk=Jk|0;var 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,Nl=0,Ol=0;Al=T-48|0;T=Al;a:{if(r[Jk+352|0]){pm(Al+32|0,q[Jk+8>>2]);yl=q[Al+32>>2];q[Al+32>>2]=0;zl=q[Jk+12>>2];q[Jk+12>>2]=yl;if(!zl){q[Al+32>>2]=0;break a}Oj(zl);zl=q[Al+32>>2];q[Al+32>>2]=0;if(!zl){break a}Oj(zl);break a}nm(Al+32|0,q[Jk+8>>2]);yl=q[Al+32>>2];q[Al+32>>2]=0;zl=q[Jk+12>>2];q[Jk+12>>2]=yl;if(!zl){q[Al+32>>2]=0;break a}Oj(zl);zl=q[Al+32>>2];q[Al+32>>2]=0;if(!zl){break a}Oj(zl)}b:{c:{zl=q[Jk+12>>2];d:{if(!(q[zl+40>>2]!=((q[zl+4>>2]-q[zl>>2]>>2>>>0)/3|0)?zl:0)){Jk=zo(32);q[Al+32>>2]=Jk;q[Al+36>>2]=29;q[Al+40>>2]=-2147483616;o[Jk+29|0]=0;zl=r[11325]|r[11326]<<8|(r[11327]<<16|r[11328]<<24);yl=r[11321]|r[11322]<<8|(r[11323]<<16|r[11324]<<24);o[Jk+21|0]=yl;o[Jk+22|0]=yl>>>8;o[Jk+23|0]=yl>>>16;o[Jk+24|0]=yl>>>24;o[Jk+25|0]=zl;o[Jk+26|0]=zl>>>8;o[Jk+27|0]=zl>>>16;o[Jk+28|0]=zl>>>24;zl=r[11320]|r[11321]<<8|(r[11322]<<16|r[11323]<<24);yl=r[11316]|r[11317]<<8|(r[11318]<<16|r[11319]<<24);o[Jk+16|0]=yl;o[Jk+17|0]=yl>>>8;o[Jk+18|0]=yl>>>16;o[Jk+19|0]=yl>>>24;o[Jk+20|0]=zl;o[Jk+21|0]=zl>>>8;o[Jk+22|0]=zl>>>16;o[Jk+23|0]=zl>>>24;zl=r[11312]|r[11313]<<8|(r[11314]<<16|r[11315]<<24);yl=r[11308]|r[11309]<<8|(r[11310]<<16|r[11311]<<24);o[Jk+8|0]=yl;o[Jk+9|0]=yl>>>8;o[Jk+10|0]=yl>>>16;o[Jk+11|0]=yl>>>24;o[Jk+12|0]=zl;o[Jk+13|0]=zl>>>8;o[Jk+14|0]=zl>>>16;o[Jk+15|0]=zl>>>24;zl=r[11304]|r[11305]<<8|(r[11306]<<16|r[11307]<<24);yl=r[11300]|r[11301]<<8|(r[11302]<<16|r[11303]<<24);o[Jk|0]=yl;o[Jk+1|0]=yl>>>8;o[Jk+2|0]=yl>>>16;o[Jk+3|0]=yl>>>24;o[Jk+4|0]=zl;o[Jk+5|0]=zl>>>8;o[Jk+6|0]=zl>>>16;o[Jk+7|0]=zl>>>24;q[a>>2]=-1;Do(a+4|0,Al+32|0);if(o[Al+43|0]>-1){break d}pp(q[Al+32>>2]);break d}Hl=Jk+200|0;jk(Hl,Jk);zl=Jk+12|0;yl=q[zl>>2];td((q[yl+28>>2]-q[yl+24>>2]>>2)-q[yl+44>>2]|0,q[q[Jk+4>>2]+44>>2]);yl=q[zl>>2];td(((q[yl+4>>2]-q[yl>>2]>>2>>>0)/3|0)-q[yl+40>>2]|0,q[q[Jk+4>>2]+44>>2]);yl=q[Jk+8>>2];Bl=q[yl+100>>2];yl=q[yl+96>>2];o[Al+32|0]=0;Gl=Jk+28|0;Fj(Gl,(Bl-yl|0)/12|0,Al+32|0);yl=q[zl>>2];Bl=q[yl+24>>2];yl=q[yl+28>>2];q[Al+32>>2]=-1;Dj(Jk+52|0,yl-Bl>>2,Al+32|0);yl=q[Jk+40>>2];q[Jk+44>>2]=yl;zl=q[zl>>2];Bl=q[zl+4>>2]-q[zl>>2]>>2;Bl=Bl-((Bl>>>0)%3|0)|0;e:{if(q[Jk+48>>2]-yl>>2>>>0>=Bl>>>0){break e}if(Bl>>>0>=1073741824){break c}Cl=Bl<<2;Bl=zo(Cl);q[Jk+44>>2]=Bl;q[Jk+40>>2]=Bl;q[Jk+48>>2]=Bl+Cl;if(!yl){break e}pp(yl);zl=q[Jk+12>>2]}yl=q[zl+28>>2];zl=q[zl+24>>2];o[Al+32|0]=0;Fj(Jk+84|0,yl-zl>>2,Al+32|0);q[Jk+164>>2]=-1;q[Jk+168>>2]=0;q[Jk+100>>2]=q[Jk+96>>2];q[Jk+112>>2]=q[Jk+108>>2];if(q[Jk+132>>2]){Bl=Jk+128|0;zl=q[Bl>>2];if(zl){while(1){yl=q[zl>>2];pp(zl);zl=yl;if(yl){continue}break}}q[Bl>>2]=0;yl=q[Jk+124>>2];if(yl){Bl=Jk+120|0;zl=0;while(1){q[q[Bl>>2]+(zl<<2)>>2]=0;zl=zl+1|0;if((yl|0)!=(zl|0)){continue}break}}q[Jk+132>>2]=0}q[Jk+144>>2]=0;yl=Jk+12|0;zl=q[yl>>2];Bl=q[zl+24>>2];zl=q[zl+28>>2];q[Al+32>>2]=-1;Dj(Jk+152|0,zl-Bl>>2,Al+32|0);zl=q[Jk+72>>2];q[Jk+76>>2]=zl;yl=q[yl>>2];yl=q[yl+4>>2]-q[yl>>2]>>2;Bl=(yl>>>0)/3|0;f:{if(q[Jk+80>>2]-zl>>2>>>0>=Bl>>>0){break f}if(yl>>>0>=3221225472){break b}Bl=Bl<<2;yl=zo(Bl);q[Jk+76>>2]=yl;q[Jk+72>>2]=yl;q[Jk+80>>2]=yl+Bl;if(!zl){break f}pp(zl)}q[Jk- -64>>2]=0;if(!Pj(Jk)){Jk=zo(32);q[Al+32>>2]=Jk;q[Al+36>>2]=29;q[Al+40>>2]=-2147483616;o[Jk+29|0]=0;zl=r[11355]|r[11356]<<8|(r[11357]<<16|r[11358]<<24);yl=r[11351]|r[11352]<<8|(r[11353]<<16|r[11354]<<24);o[Jk+21|0]=yl;o[Jk+22|0]=yl>>>8;o[Jk+23|0]=yl>>>16;o[Jk+24|0]=yl>>>24;o[Jk+25|0]=zl;o[Jk+26|0]=zl>>>8;o[Jk+27|0]=zl>>>16;o[Jk+28|0]=zl>>>24;zl=r[11350]|r[11351]<<8|(r[11352]<<16|r[11353]<<24);yl=r[11346]|r[11347]<<8|(r[11348]<<16|r[11349]<<24);o[Jk+16|0]=yl;o[Jk+17|0]=yl>>>8;o[Jk+18|0]=yl>>>16;o[Jk+19|0]=yl>>>24;o[Jk+20|0]=zl;o[Jk+21|0]=zl>>>8;o[Jk+22|0]=zl>>>16;o[Jk+23|0]=zl>>>24;zl=r[11342]|r[11343]<<8|(r[11344]<<16|r[11345]<<24);yl=r[11338]|r[11339]<<8|(r[11340]<<16|r[11341]<<24);o[Jk+8|0]=yl;o[Jk+9|0]=yl>>>8;o[Jk+10|0]=yl>>>16;o[Jk+11|0]=yl>>>24;o[Jk+12|0]=zl;o[Jk+13|0]=zl>>>8;o[Jk+14|0]=zl>>>16;o[Jk+15|0]=zl>>>24;zl=r[11334]|r[11335]<<8|(r[11336]<<16|r[11337]<<24);yl=r[11330]|r[11331]<<8|(r[11332]<<16|r[11333]<<24);o[Jk|0]=yl;o[Jk+1|0]=yl>>>8;o[Jk+2|0]=yl>>>16;o[Jk+3|0]=yl>>>24;o[Jk+4|0]=zl;o[Jk+5|0]=zl>>>8;o[Jk+6|0]=zl>>>16;o[Jk+7|0]=zl>>>24;q[a>>2]=-1;Do(a+4|0,Al+32|0);if(o[Al+43|0]>-1){break d}pp(q[Al+32>>2]);break d}if(!kk(Jk)){Jk=zo(48);q[Al+32>>2]=Jk;q[Al+36>>2]=36;q[Al+40>>2]=-2147483600;o[Jk+36|0]=0;zl=r[11392]|r[11393]<<8|(r[11394]<<16|r[11395]<<24);o[Jk+32|0]=zl;o[Jk+33|0]=zl>>>8;o[Jk+34|0]=zl>>>16;o[Jk+35|0]=zl>>>24;zl=r[11388]|r[11389]<<8|(r[11390]<<16|r[11391]<<24);yl=r[11384]|r[11385]<<8|(r[11386]<<16|r[11387]<<24);o[Jk+24|0]=yl;o[Jk+25|0]=yl>>>8;o[Jk+26|0]=yl>>>16;o[Jk+27|0]=yl>>>24;o[Jk+28|0]=zl;o[Jk+29|0]=zl>>>8;o[Jk+30|0]=zl>>>16;o[Jk+31|0]=zl>>>24;zl=r[11380]|r[11381]<<8|(r[11382]<<16|r[11383]<<24);yl=r[11376]|r[11377]<<8|(r[11378]<<16|r[11379]<<24);o[Jk+16|0]=yl;o[Jk+17|0]=yl>>>8;o[Jk+18|0]=yl>>>16;o[Jk+19|0]=yl>>>24;o[Jk+20|0]=zl;o[Jk+21|0]=zl>>>8;o[Jk+22|0]=zl>>>16;o[Jk+23|0]=zl>>>24;zl=r[11372]|r[11373]<<8|(r[11374]<<16|r[11375]<<24);yl=r[11368]|r[11369]<<8|(r[11370]<<16|r[11371]<<24);o[Jk+8|0]=yl;o[Jk+9|0]=yl>>>8;o[Jk+10|0]=yl>>>16;o[Jk+11|0]=yl>>>24;o[Jk+12|0]=zl;o[Jk+13|0]=zl>>>8;o[Jk+14|0]=zl>>>16;o[Jk+15|0]=zl>>>24;zl=r[11364]|r[11365]<<8|(r[11366]<<16|r[11367]<<24);yl=r[11360]|r[11361]<<8|(r[11362]<<16|r[11363]<<24);o[Jk|0]=yl;o[Jk+1|0]=yl>>>8;o[Jk+2|0]=yl>>>16;o[Jk+3|0]=yl>>>24;o[Jk+4|0]=zl;o[Jk+5|0]=zl>>>8;o[Jk+6|0]=zl>>>16;o[Jk+7|0]=zl>>>24;q[a>>2]=-1;Do(a+4|0,Al+32|0);if(o[Al+43|0]>-1){break d}pp(q[Al+32>>2]);break d}zl=(q[Jk+176>>2]-q[Jk+172>>2]|0)/136|0;o[Al+31|0]=zl;yl=Jk;Bl=q[q[Jk+4>>2]+44>>2];Cl=q[Bl+20>>2];if((Cl|0)<0?1:(Cl|0)<=0?t[Bl+16>>2]>0?0:1:0){Vb(Bl,q[Bl+4>>2],Al+31|0,Al+32|0);zl=r[Al+31|0]}q[yl+284>>2]=zl&255;Cl=Jk+12|0;zl=q[Cl>>2];yl=q[zl>>2];zl=q[zl+4>>2];Rj(Hl);q[Al+40>>2]=0;q[Al+32>>2]=0;q[Al+36>>2]=0;zl=zl-yl|0;g:{if((zl|0)>=1){Ml=Jk+96|0;Nl=zl>>2;Ol=Jk+104|0;Jl=Jk+100|0;zl=0;while(1){h:{yl=(zl>>>0)/3|0;Kl=yl>>>5<<2;Ll=1<<(yl&31);if(q[Kl+q[Gl>>2]>>2]&Ll){break h}if(Zl(q[Cl>>2],yl)){break h}q[Al+24>>2]=0;yl=Sj(Jk,yl,Al+24|0);ch(Hl,yl);Bl=q[Al+24>>2];if(yl){yl=-1;Dl=-1;Il=-1;i:{if((Bl|0)==-1){break i}Fl=q[q[Cl>>2]>>2];yl=q[Fl+(Bl<<2)>>2];El=Bl+1|0;El=(El>>>0)%3|0?El:Bl+ -2|0;if((El|0)!=-1){Dl=q[Fl+(El<<2)>>2]}El=Bl+((Bl>>>0)%3|0?-1:2)|0;if((El|0)==-1){break i}Il=q[Fl+(El<<2)>>2]}Fl=q[Jk+84>>2];El=Fl+(yl>>>3&536870908)|0;q[El>>2]=q[El>>2]|1<<(yl&31);yl=Fl+(Dl>>>3&536870908)|0;q[yl>>2]=q[yl>>2]|1<<(Dl&31);yl=Fl+(Il>>>3&536870908)|0;q[yl>>2]=q[yl>>2]|1<<(Il&31);q[Al+8>>2]=1;yl=q[Jl>>2];j:{if(yl>>>0<t[Ol>>2]){q[yl>>2]=1;q[Jl>>2]=yl+4;break j}Tj(Ml,Al+8|0)}yl=Kl+q[Gl>>2]|0;q[yl>>2]=Ll|q[yl>>2];yl=-1;if((Bl|0)!=-1){yl=Bl+1|0;yl=(yl>>>0)%3|0?yl:Bl+ -2|0}q[Al+8>>2]=yl;Dl=q[Al+36>>2];k:{if(Dl>>>0<t[Al+40>>2]){q[Dl>>2]=yl;q[Al+36>>2]=Dl+4;break k}Tj(Al+32|0,Al+8|0)}if((Bl|0)==-1){break h}yl=Bl+1|0;yl=(yl>>>0)%3|0?yl:Bl+ -2|0;if((yl|0)==-1){break h}yl=q[q[q[Cl>>2]+12>>2]+(yl<<2)>>2];if((yl|0)==-1){break h}Bl=(yl>>>0)/3|0;if(q[q[Gl>>2]+(Bl>>>3&268435452)>>2]>>>(Bl&31)&1){break h}if(lk(Jk,yl)){break h}q[Al+16>>2]=0;q[Al+8>>2]=0;q[Al+12>>2]=0;Jk=zo(48);q[Al+8>>2]=Jk;q[Al+12>>2]=32;q[Al+16>>2]=-2147483600;o[Jk+32|0]=0;zl=r[11425]|r[11426]<<8|(r[11427]<<16|r[11428]<<24);yl=r[11421]|r[11422]<<8|(r[11423]<<16|r[11424]<<24);o[Jk+24|0]=yl;o[Jk+25|0]=yl>>>8;o[Jk+26|0]=yl>>>16;o[Jk+27|0]=yl>>>24;o[Jk+28|0]=zl;o[Jk+29|0]=zl>>>8;o[Jk+30|0]=zl>>>16;o[Jk+31|0]=zl>>>24;zl=r[11417]|r[11418]<<8|(r[11419]<<16|r[11420]<<24);yl=r[11413]|r[11414]<<8|(r[11415]<<16|r[11416]<<24);o[Jk+16|0]=yl;o[Jk+17|0]=yl>>>8;o[Jk+18|0]=yl>>>16;o[Jk+19|0]=yl>>>24;o[Jk+20|0]=zl;o[Jk+21|0]=zl>>>8;o[Jk+22|0]=zl>>>16;o[Jk+23|0]=zl>>>24;zl=r[11409]|r[11410]<<8|(r[11411]<<16|r[11412]<<24);yl=r[11405]|r[11406]<<8|(r[11407]<<16|r[11408]<<24);o[Jk+8|0]=yl;o[Jk+9|0]=yl>>>8;o[Jk+10|0]=yl>>>16;o[Jk+11|0]=yl>>>24;o[Jk+12|0]=zl;o[Jk+13|0]=zl>>>8;o[Jk+14|0]=zl>>>16;o[Jk+15|0]=zl>>>24;zl=r[11401]|r[11402]<<8|(r[11403]<<16|r[11404]<<24);yl=r[11397]|r[11398]<<8|(r[11399]<<16|r[11400]<<24);o[Jk|0]=yl;o[Jk+1|0]=yl>>>8;o[Jk+2|0]=yl>>>16;o[Jk+3|0]=yl>>>24;o[Jk+4|0]=zl;o[Jk+5|0]=zl>>>8;o[Jk+6|0]=zl>>>16;o[Jk+7|0]=zl>>>24;q[a>>2]=-1;Do(a+4|0,Al+8|0);if(o[Al+19|0]>-1){break g}pp(q[Al+8>>2]);break g}yl=Jk;if((Bl|0)!=-1){Dl=Bl+1|0;Bl=(Dl>>>0)%3|0?Dl:Bl+ -2|0}else{Bl=-1}Vj(yl,Bl,1);if(lk(Jk,q[Al+24>>2])){break h}q[Al+16>>2]=0;q[Al+8>>2]=0;q[Al+12>>2]=0;Jk=zo(48);q[Al+8>>2]=Jk;q[Al+12>>2]=32;q[Al+16>>2]=-2147483600;o[Jk+32|0]=0;zl=r[11425]|r[11426]<<8|(r[11427]<<16|r[11428]<<24);yl=r[11421]|r[11422]<<8|(r[11423]<<16|r[11424]<<24);o[Jk+24|0]=yl;o[Jk+25|0]=yl>>>8;o[Jk+26|0]=yl>>>16;o[Jk+27|0]=yl>>>24;o[Jk+28|0]=zl;o[Jk+29|0]=zl>>>8;o[Jk+30|0]=zl>>>16;o[Jk+31|0]=zl>>>24;zl=r[11417]|r[11418]<<8|(r[11419]<<16|r[11420]<<24);yl=r[11413]|r[11414]<<8|(r[11415]<<16|r[11416]<<24);o[Jk+16|0]=yl;o[Jk+17|0]=yl>>>8;o[Jk+18|0]=yl>>>16;o[Jk+19|0]=yl>>>24;o[Jk+20|0]=zl;o[Jk+21|0]=zl>>>8;o[Jk+22|0]=zl>>>16;o[Jk+23|0]=zl>>>24;zl=r[11409]|r[11410]<<8|(r[11411]<<16|r[11412]<<24);yl=r[11405]|r[11406]<<8|(r[11407]<<16|r[11408]<<24);o[Jk+8|0]=yl;o[Jk+9|0]=yl>>>8;o[Jk+10|0]=yl>>>16;o[Jk+11|0]=yl>>>24;o[Jk+12|0]=zl;o[Jk+13|0]=zl>>>8;o[Jk+14|0]=zl>>>16;o[Jk+15|0]=zl>>>24;zl=r[11401]|r[11402]<<8|(r[11403]<<16|r[11404]<<24);yl=r[11397]|r[11398]<<8|(r[11399]<<16|r[11400]<<24);o[Jk|0]=yl;o[Jk+1|0]=yl>>>8;o[Jk+2|0]=yl>>>16;o[Jk+3|0]=yl>>>24;o[Jk+4|0]=zl;o[Jk+5|0]=zl>>>8;o[Jk+6|0]=zl>>>16;o[Jk+7|0]=zl>>>24;q[a>>2]=-1;Do(a+4|0,Al+8|0);if(o[Al+19|0]>-1){break g}pp(q[Al+8>>2]);break g}zl=zl+1|0;if((zl|0)<(Nl|0)){continue}break}}Cl=Jk+72|0;zl=q[Jk+72>>2];Bl=q[Jk+76>>2];l:{if((zl|0)==(Bl|0)){break l}yl=Bl+ -4|0;if(yl>>>0<=zl>>>0){break l}while(1){Dl=q[zl>>2];q[zl>>2]=q[yl>>2];q[yl>>2]=Dl;zl=zl+4|0;yl=yl+ -4|0;if(zl>>>0<yl>>>0){continue}break}}Wj(Cl,Bl,q[Al+32>>2],q[Al+36>>2]);m:{if(q[Jk+176>>2]==q[Jk+172>>2]){break m}zl=q[Jk+8>>2];yl=q[zl+100>>2];zl=q[zl+96>>2];o[Al+8|0]=0;Fj(Gl,(yl-zl|0)/12|0,Al+8|0);zl=q[Jk+72>>2];yl=q[Jk+76>>2];if((zl|0)==(yl|0)){break m}while(1){Xj(Jk,q[zl>>2]);zl=zl+4|0;if((yl|0)!=(zl|0)){continue}break}}mk(Hl);td(q[Jk+324>>2],q[q[Jk+4>>2]+44>>2]);td(q[Jk+168>>2],q[q[Jk+4>>2]+44>>2]);if(!Zj(Jk)){q[Al+16>>2]=0;q[Al+8>>2]=0;q[Al+12>>2]=0;Jk=zo(32);q[Al+8>>2]=Jk;q[Al+12>>2]=28;q[Al+16>>2]=-2147483616;o[Jk+28|0]=0;zl=r[11454]|r[11455]<<8|(r[11456]<<16|r[11457]<<24);o[Jk+24|0]=zl;o[Jk+25|0]=zl>>>8;o[Jk+26|0]=zl>>>16;o[Jk+27|0]=zl>>>24;zl=r[11450]|r[11451]<<8|(r[11452]<<16|r[11453]<<24);yl=r[11446]|r[11447]<<8|(r[11448]<<16|r[11449]<<24);o[Jk+16|0]=yl;o[Jk+17|0]=yl>>>8;o[Jk+18|0]=yl>>>16;o[Jk+19|0]=yl>>>24;o[Jk+20|0]=zl;o[Jk+21|0]=zl>>>8;o[Jk+22|0]=zl>>>16;o[Jk+23|0]=zl>>>24;zl=r[11442]|r[11443]<<8|(r[11444]<<16|r[11445]<<24);yl=r[11438]|r[11439]<<8|(r[11440]<<16|r[11441]<<24);o[Jk+8|0]=yl;o[Jk+9|0]=yl>>>8;o[Jk+10|0]=yl>>>16;o[Jk+11|0]=yl>>>24;o[Jk+12|0]=zl;o[Jk+13|0]=zl>>>8;o[Jk+14|0]=zl>>>16;o[Jk+15|0]=zl>>>24;zl=r[11434]|r[11435]<<8|(r[11436]<<16|r[11437]<<24);yl=r[11430]|r[11431]<<8|(r[11432]<<16|r[11433]<<24);o[Jk|0]=yl;o[Jk+1|0]=yl>>>8;o[Jk+2|0]=yl>>>16;o[Jk+3|0]=yl>>>24;o[Jk+4|0]=zl;o[Jk+5|0]=zl>>>8;o[Jk+6|0]=zl>>>16;o[Jk+7|0]=zl>>>24;q[a>>2]=-1;Do(a+4|0,Al+8|0);if(o[Al+19|0]>-1){break g}pp(q[Al+8>>2]);break g}zl=q[q[Jk+4>>2]+44>>2];yl=q[zl+20>>2];if((yl|0)<0?1:(yl|0)<=0?t[zl+16>>2]>0?0:1:0){Vb(zl,q[zl+4>>2],q[Jk+232>>2],q[Jk+236>>2])}q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0}a=q[Al+32>>2];if(!a){break d}q[Al+36>>2]=a;pp(a)}T=Al+48|0;return}Qb(11752);F()}Qb(11752);F()}function jk(a,Jk){var Pl=0,Ql=0,Rl=0,Sl=0,Tl=0;q[a+128>>2]=2;q[a+132>>2]=7;q[a- -64>>2]=Jk;Jk=n[q[q[Jk>>2]+32>>2]](Jk)|0;q[a+88>>2]=Jk;Pl=q[Jk+28>>2]-q[Jk+24>>2]>>2;Sl=a+108|0;Ql=q[Sl>>2];Jk=q[a+104>>2];Rl=Ql-Jk>>2;a:{if(Pl>>>0>Rl>>>0){pf(a+104|0,Pl-Rl|0);Ql=q[Sl>>2];Jk=q[a+104>>2];break a}if(Pl>>>0>=Rl>>>0){break a}Ql=(Pl<<2)+Jk|0;q[a+108>>2]=Ql}if((Jk|0)!=(Ql|0)){Jk=0;Ql=a+108|0;while(1){Pl=_l(q[a+88>>2],Jk);Rl=q[a+104>>2];q[Rl+(Jk<<2)>>2]=Pl;Jk=Jk+1|0;if(Jk>>>0<q[Ql>>2]-Rl>>2>>>0){continue}break}}Rl=a+92|0;Jk=q[a+88>>2];Ql=q[Jk>>2];Pl=q[Jk+4>>2]-Ql>>2;Tl=q[a+92>>2];Sl=q[a+96>>2]-Tl>>2;b:{if(Pl>>>0>Sl>>>0){nk(Rl,Pl-Sl|0);Jk=q[a+88>>2];Ql=q[Jk>>2];break b}if(Pl>>>0>=Sl>>>0){break b}q[a+96>>2]=(Pl<<2)+Tl}Pl=q[Jk+4>>2];if((Pl|0)!=(Ql|0)){Ql=Pl-Ql>>2;Pl=q[Jk>>2];Rl=q[Rl>>2];Jk=0;while(1){Sl=Jk<<2;q[Sl+Rl>>2]=q[Pl+Sl>>2];Jk=Jk+1|0;if(Jk>>>0<Ql>>>0){continue}break}}Jk=(q[a+132>>2]-q[a+128>>2]|0)+1|0;Ql=q[a+140>>2];Rl=q[a+136>>2];Pl=(Ql-Rl|0)/12|0;if(Jk>>>0>Pl>>>0){ok(a+136|0,Jk-Pl|0);return}if(Jk>>>0<Pl>>>0){Pl=Rl+w(Jk,12)|0;if((Pl|0)!=(Ql|0)){while(1){Jk=Ql+ -12|0;Rl=q[Jk>>2];if(Rl){q[Ql+ -8>>2]=Rl;pp(Rl)}Ql=Jk;if((Jk|0)!=(Pl|0)){continue}break}}q[a+140>>2]=Pl}}function kk(a){var Jk=0,Ul=0,Vl=0,Wl=0,Xl=0,Yl=0,Zl=0,_l=0,$l=0,am=0,bm=0,cm=0;a:{b:{if(r[a+352|0]){break b}Jk=q[a+8>>2];Xl=q[Jk+12>>2]-q[Jk+8>>2]|0;$l=Xl>>2;Vl=$l+ -1|0;Ul=q[a+176>>2];Jk=q[a+172>>2];Wl=(Ul-Jk|0)/136|0;c:{if(Vl>>>0>Wl>>>0){_j(a+172|0,Vl-Wl|0);break c}if(Vl>>>0>=Wl>>>0){break c}Vl=Jk+w(Vl,136)|0;if((Vl|0)!=(Ul|0)){while(1){Jk=q[Ul+ -20>>2];if(Jk){q[Ul+ -16>>2]=Jk;pp(Jk)}Jk=Ul+ -136|0;Wl=q[Ul+ -32>>2];if(Wl){q[Ul+ -28>>2]=Wl;pp(Wl)}$j(Ul+ -132|0);Ul=Jk;if((Jk|0)!=(Vl|0)){continue}break}}q[a+176>>2]=Vl}if((Xl|0)==4|(Xl|0)<1){break b}am=a+12|0;Ul=0;while(1){bm=q[q[q[a+8>>2]+8>>2]+(Ul<<2)>>2];if(q[bm+56>>2]){Xl=w(cm,136);Yl=Xl+q[a+172>>2]|0;q[Yl>>2]=Ul;Vl=Yl+108|0;Zl=q[Yl+104>>2];q[Vl>>2]=Zl;Wl=Yl+112|0;Jk=q[am>>2];Jk=q[Jk+4>>2]-q[Jk>>2]|0;_l=Jk>>2;d:{if(q[Wl>>2]-Zl>>2>>>0>=_l>>>0){break d}if(_l>>>0>=1073741824){break a}Jk=zo(Jk);q[Yl+104>>2]=Jk;q[Vl>>2]=Jk;q[Wl>>2]=Jk+(_l<<2);if(!Zl){break d}pp(Zl)}Jk=q[a+172>>2]+Xl|0;q[Jk+128>>2]=0;jm(Jk+4|0,q[a+8>>2],q[am>>2],bm);cm=cm+1|0}Ul=Ul+1|0;if((Ul|0)<($l|0)){continue}break}}return 1}Qb(11752);F()}function lk(a,dm){var 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,sm=0,tm=0,um=0,vm=0,wm=0,xm=0,ym=0,zm=0,Am=0,Bm=0,Cm=0,Dm=0;gm=T-48|0;T=gm;q[gm+16>>2]=dm;im=a+20|0;em=q[a+16>>2];q[im>>2]=em;lm=a+16|0;a:{if(q[a+24>>2]!=(em|0)){q[em>>2]=dm;dm=em+4|0;q[im>>2]=dm;break a}Tj(lm,gm+16|0);dm=q[im>>2];em=q[a+16>>2]}im=q[a+8>>2];wm=(q[im+100>>2]-q[im+96>>2]|0)/12|0;if((dm|0)!=(em|0)){xm=a+120|0;km=a+200|0;ym=a+72|0;im=a+20|0;zm=a+80|0;pm=a+76|0;qm=a+152|0;Am=a+292|0;Bm=a+304|0;Cm=a+336|0;Dm=a+24|0;while(1){dm=dm+ -4|0;em=q[dm>>2];q[gm+16>>2]=em;b:{c:{d:{if((em|0)==-1){break d}em=(em>>>0)/3|0;if(q[q[a+28>>2]+(em>>>3&268435452)>>2]>>>(em&31)&1){break d}mm=0;while(1){if((mm|0)>=(wm|0)){break c}q[a+164>>2]=q[a+164>>2]+1;dm=q[gm+16>>2];nm=(dm|0)==-1?-1:(dm>>>0)/3|0;em=q[a+28>>2]+(nm>>>3&536870908)|0;q[em>>2]=q[em>>2]|1<<(nm&31);em=q[pm>>2];e:{if((em|0)!=q[zm>>2]){q[em>>2]=dm;q[pm>>2]=em+4;break e}Tj(ym,gm+16|0)}dm=q[gm+16>>2];q[a+320>>2]=dm;em=-1;em=(dm|0)!=-1?q[q[q[a+12>>2]>>2]+(dm<<2)>>2]:em;rm=em<<2;sm=q[rm+q[qm>>2]>>2];mm=mm+1|0;f:{g:{h:{i:{j:{k:{l:{fm=q[a+84>>2]+(em>>>3&536870908)|0;hm=q[fm>>2];em=1<<(em&31);if(!(hm&em)){q[fm>>2]=em|hm;if((sm|0)==-1){break l}dm=q[gm+16>>2]}if((dm|0)==-1){break i}em=-1;fm=dm+1|0;jm=(fm>>>0)%3|0?fm:dm+ -2|0;if((jm|0)!=-1){em=q[q[q[a+12>>2]+12>>2]+(jm<<2)>>2]}q[gm+8>>2]=em;om=((dm>>>0)%3|0?-1:2)+dm|0;tm=(om|0)==-1;if(tm){break k}hm=q[q[q[a+12>>2]+12>>2]+(om<<2)>>2];fm=(hm|0)==-1?-1:(hm>>>0)/3|0;em=(em|0)==-1?-1:(em>>>0)/3|0;break j}q[a+324>>2]=q[a+324>>2]+1;em=-1;dm=q[a+320>>2];fm=-1;m:{if((dm|0)==-1){break m}em=dm+1|0;em=(em>>>0)%3|0?em:dm+ -2|0;fm=dm+ -1|0;if((dm>>>0)%3){break m}fm=dm+2|0}hm=q[Bm>>2];dm=em<<2;em=q[Am>>2];jm=hm+(q[dm+em>>2]<<2)|0;dm=q[jm>>2];q[jm>>2]=dm+ -1;em=hm+(q[em+(fm<<2)>>2]<<2)|0;q[em>>2]=q[em>>2]+ -1;hm=q[a+316>>2];n:{if((hm|0)==-1){break n}em=q[a+328>>2];fm=em;if((dm|0)>=(em|0)){fm=q[a+332>>2];fm=(dm|0)>(fm|0)?fm:dm}dm=q[Cm>>2];hm=q[(hm<<2)+12128>>2];q[gm+40>>2]=hm;dm=dm+w(fm-em|0,12)|0;fm=dm+4|0;em=q[fm>>2];if(em>>>0<t[dm+8>>2]){q[em>>2]=hm;q[fm>>2]=em+4;break n}Xh(dm,gm+40|0)}q[a+316>>2]=0;dm=gm;em=dm;fm=q[dm+16>>2];dm=-1;o:{if((fm|0)==-1){break o}hm=fm+1|0;fm=(hm>>>0)%3|0?hm:fm+ -2|0;dm=-1;if((fm|0)==-1){break o}dm=q[q[q[a+12>>2]+12>>2]+(fm<<2)>>2]}q[em+16>>2]=dm;dm=4;break f}fm=-1;hm=-1;em=(em|0)==-1?-1:(em>>>0)/3|0}p:{q:{if((jm|0)==-1){break q}um=q[q[a+12>>2]+12>>2];jm=q[um+(jm<<2)>>2];if((jm|0)==-1){break q}vm=q[a+28>>2];jm=(jm>>>0)/3|0;if(!(q[vm+(jm>>>3&268435452)>>2]>>>(jm&31)&1)){break p}}r:{s:{if((em|0)!=-1){ak(a,q[a+164>>2],1,em);dm=q[gm+16>>2];if((dm|0)==-1){break s}}dm=((dm>>>0)%3|0?-1:2)+dm|0;if((dm|0)==-1){break s}dm=q[q[q[a+12>>2]+12>>2]+(dm<<2)>>2];if((dm|0)==-1){break s}dm=(dm>>>0)/3|0;if(!(q[q[a+28>>2]+(dm>>>3&268435452)>>2]>>>(dm&31)&1)){break r}}if((fm|0)==-1){break h}ak(a,q[a+164>>2],0,fm);break h}pk(km,5);q[gm+16>>2]=hm;dm=0;break f}t:{u:{if(tm){break u}dm=q[(om<<2)+um>>2];if((dm|0)==-1){break u}dm=(dm>>>0)/3|0;if(!(q[(dm>>>3&268435452)+vm>>2]>>>(dm&31)&1)){break t}}if((fm|0)!=-1){ak(a,q[a+164>>2],0,fm)}pk(km,3);q[gm+16>>2]=q[gm+8>>2];dm=0;break f}pk(km,1);q[a+168>>2]=q[a+168>>2]+1;v:{if((sm|0)==-1){break v}dm=q[q[qm>>2]+rm>>2];if(q[q[a+140>>2]+(dm>>>3&536870908)>>2]>>>(dm&31)&1){break v}Vj(a,q[gm+16>>2],0)}dm=q[a+164>>2];q[gm+4>>2]=nm;q[gm+32>>2]=gm+4;bk(gm+40|0,xm,gm+4|0,gm+32|0);q[q[gm+40>>2]+12>>2]=dm;dm=q[im>>2];q[dm+ -4>>2]=hm;if((dm|0)!=q[Dm>>2]){q[dm>>2]=q[gm+8>>2];q[im>>2]=dm+4;break g}Tj(lm,gm+8|0);break g}q[gm+8>>2]=-1}pk(km,7);q[im>>2]=q[im>>2]+ -4}dm=5}if((dm|0)!=5){continue}break}break c}q[im>>2]=dm;break b}dm=q[im>>2]}if(q[lm>>2]!=(dm|0)){continue}break}}T=gm+48|0;return 1}function mk(a){var dm=0,Em=0,Fm=0,Gm=0,Hm=0,Im=0;Gm=a+32|0;eh(a,Gm);Fm=q[a+80>>2];a:{if(!Fm){break a}dm=1;Em=a+84|0;if(q[Em>>2]<1){break a}eh(Fm,Gm);if(q[Em>>2]<2){break a}Fm=a+80|0;Em=a+84|0;while(1){eh(q[Fm>>2]+(dm<<5)|0,Gm);dm=dm+1|0;if((dm|0)<q[Em>>2]){continue}break}}dm=q[a+136>>2];Im=a+140|0;if((dm|0)!=q[Im>>2]){Fm=0;while(1){Em=w(Fm,12);dm=Em+dm|0;td(q[dm+4>>2]-q[dm>>2]>>2,Gm);dm=q[a+136>>2];Hm=Em+dm|0;Em=q[Hm>>2];Hm=q[Hm+4>>2]-Em|0;if(Hm){Wh(Em,Hm>>2,1,0,Gm);dm=q[a+136>>2]}Fm=Fm+1|0;if(Fm>>>0<(q[Im>>2]-dm|0)/12>>>0){continue}break}}}function nk(a,Jm){var Km=0,Lm=0,Mm=0,Nm=0,Om=0,Pm=0,Qm=0,Rm=0,Sm=0;Lm=q[a+8>>2];Mm=a+4|0;Km=q[Mm>>2];if(Lm-Km>>2>>>0>=Jm>>>0){a=Jm<<2;Rm=Mm,Sm=wp(Km,0,a)+a|0,q[Rm>>2]=Sm;return}a:{Mm=q[a>>2];Om=Km-Mm|0;Km=Om>>2;Nm=Km+Jm|0;if(Nm>>>0<1073741824){Qm=Km<<2;Lm=Lm-Mm|0;Km=Lm>>1;Lm=Lm>>2>>>0<536870911?Km>>>0<Nm>>>0?Nm:Km:1073741823;Km=0;b:{if(!Lm){break b}if(Lm>>>0>=1073741824){break a}Pm=zo(Lm<<2);Km=Pm}wp(Qm+Km|0,0,Jm<<2);Jm=Km+(Nm<<2)|0;Nm=Km+(Lm<<2)|0;if((Om|0)>=1){vp(Pm,Mm,Om)}q[a>>2]=Km;q[a+8>>2]=Nm;q[a+4>>2]=Jm;if(Mm){pp(Mm)}return}To();F()}Qb(11752);F()}function ok(a,Jm){var Tm=0,Um=0,Vm=0,Wm=0,Xm=0,Ym=0,Zm=0,_m=0,$m=0;Vm=q[a+8>>2];Wm=a+4|0;Tm=q[Wm>>2];if((Vm-Tm|0)/12>>>0>=Jm>>>0){a=w(Jm,12);_m=Wm,$m=wp(Tm,0,a)+a|0,q[_m>>2]=$m;return}a:{Wm=q[a>>2];Um=(Tm-Wm|0)/12|0;Xm=Um+Jm|0;if(Xm>>>0<357913942){Zm=w(Um,12);Vm=(Vm-Wm|0)/12|0;Um=Vm<<1;Um=Vm>>>0<178956970?Um>>>0<Xm>>>0?Xm:Um:357913941;if(Um){if(Um>>>0>=357913942){break a}Ym=zo(w(Um,12))}Vm=Ym+Zm|0;wp(Vm,0,w(Jm,12));Jm=w(Xm,12)+Ym|0;Xm=w(Um,12)+Ym|0;if((Tm|0)!=(Wm|0)){while(1){Vm=Vm+ -12|0;q[Vm>>2]=0;q[Vm+4>>2]=0;Um=Vm+8|0;q[Um>>2]=0;Tm=Tm+ -12|0;q[Vm>>2]=q[Tm>>2];q[Vm+4>>2]=q[Tm+4>>2];Ym=Um;Um=Tm+8|0;q[Ym>>2]=q[Um>>2];q[Um>>2]=0;q[Tm>>2]=0;q[Tm+4>>2]=0;if((Tm|0)!=(Wm|0)){continue}break}Wm=q[a>>2];Tm=q[a+4>>2]}q[a>>2]=Vm;q[a+8>>2]=Xm;q[a+4>>2]=Jm;if((Tm|0)!=(Wm|0)){while(1){a=Tm+ -12|0;Jm=q[a>>2];if(Jm){q[Tm+ -8>>2]=Jm;pp(Jm)}Tm=a;if((Tm|0)!=(Wm|0)){continue}break}}if(Wm){pp(Wm)}return}To();F()}Qb(11752);F()}function pk(a,Jm){var an=0,bn=0,cn=0,dn=0,en=0,fn=0,gn=0,hn=0,jn=0;gn=T-16|0;T=gn;q[a+124>>2]=q[a+124>>2]+1;fn=-1;bn=q[a+120>>2];an=-1;a:{if((bn|0)==-1){break a}an=bn+1|0;fn=(an>>>0)%3|0?an:bn+ -2|0;an=bn+ -1|0;if((bn>>>0)%3){break a}an=bn+2|0}cn=q[a+104>>2];dn=q[a+92>>2];en=dn+(fn<<2)|0;hn=cn+(q[en>>2]<<2)|0;jn=q[hn>>2];b:{if(Jm>>>0>7){break b}c:{switch(Jm-2|0){default:q[hn>>2]=jn+ -1;bn=(q[(an<<2)+dn>>2]<<2)+cn|0;q[bn>>2]=q[bn>>2]+ -1;bn=1;if((Jm|0)!=1){break b}d:{if((an|0)==-1){break d}an=q[q[q[a+88>>2]+12>>2]+(an<<2)>>2];if((an|0)==-1){break d}dn=a- -64|0;while(1){cn=q[dn>>2];e:{if(n[q[q[cn>>2]+36>>2]](cn,(an>>>0)/3|0)){break e}cn=an+1|0;an=(cn>>>0)%3|0?cn:an+ -2|0;if((an|0)==-1){bn=bn+1|0;break e}bn=bn+1|0;an=q[q[q[a+88>>2]+12>>2]+(an<<2)>>2];if((an|0)!=-1){continue}}break}dn=q[a+92>>2];cn=q[a+104>>2]}q[(q[(q[a+120>>2]<<2)+dn>>2]<<2)+cn>>2]=bn;dn=q[a+108>>2];bn=1;f:{if((fn|0)==-1){break f}an=q[q[q[a+88>>2]+12>>2]+(fn<<2)>>2];if((an|0)==-1){break f}dn=dn-cn>>2;cn=a- -64|0;fn=a+92|0;while(1){en=q[cn>>2];hn=(an>>>0)/3|0;g:{if(n[q[q[en>>2]+36>>2]](en,hn)){break g}en=an+1|0;q[q[fn>>2]+(((en>>>0)%3|0?en:an+ -2|0)<<2)>>2]=dn;an=(an-w(hn,3)|0?-1:2)+an|0;if((an|0)==-1){bn=bn+1|0;break g}bn=bn+1|0;an=q[q[q[a+88>>2]+12>>2]+(an<<2)>>2];if((an|0)!=-1){continue}}break}dn=q[a+108>>2]}q[gn+12>>2]=bn;if(dn>>>0<t[a+112>>2]){q[dn>>2]=bn;q[a+108>>2]=dn+4;break b}Tj(a+104|0,gn+12|0);break b;case 3:bn=(q[(bn<<2)+dn>>2]<<2)+cn|0;q[bn>>2]=q[bn>>2]+ -1;bn=(q[en>>2]<<2)+cn|0;q[bn>>2]=q[bn>>2]+ -1;an=(q[(an<<2)+dn>>2]<<2)+cn|0;q[an>>2]=q[an>>2]+ -2;break b;case 1:bn=(q[(bn<<2)+dn>>2]<<2)+cn|0;q[bn>>2]=q[bn>>2]+ -1;bn=(q[en>>2]<<2)+cn|0;q[bn>>2]=q[bn>>2]+ -2;an=(q[(an<<2)+dn>>2]<<2)+cn|0;q[an>>2]=q[an>>2]+ -1;break b;case 0:case 2:case 4:break b;case 5:break c}}bn=(q[(bn<<2)+dn>>2]<<2)+cn|0;q[bn>>2]=q[bn>>2]+ -2;bn=(q[en>>2]<<2)+cn|0;q[bn>>2]=q[bn>>2]+ -2;an=(q[(an<<2)+dn>>2]<<2)+cn|0;q[an>>2]=q[an>>2]+ -2}dn=q[a+116>>2];h:{if((dn|0)==-1){break h}an=q[a+128>>2];fn=an;if((jn|0)>=(an|0)){cn=q[a+132>>2];fn=(jn|0)>(cn|0)?cn:jn}cn=q[a+136>>2];bn=q[(dn<<2)+12128>>2];q[gn+8>>2]=bn;an=cn+w(fn-an|0,12)|0;cn=an+4|0;dn=q[cn>>2];if(dn>>>0<t[an+8>>2]){q[dn>>2]=bn;q[cn>>2]=dn+4;break h}Xh(an,gn+8|0)}q[a+116>>2]=Jm;T=gn+16|0}function qk(a){a=a|0;var Jm=0,kn=0,ln=0,mn=0,nn=0;q[a>>2]=11236;Jm=a+280|0;kn=q[Jm>>2];q[Jm>>2]=0;if(kn){ln=kn+ -4|0;Jm=q[ln>>2];if(Jm){Jm=kn+(Jm<<5)|0;while(1){Jm=$g(Jm+ -32|0);if((kn|0)!=(Jm|0)){continue}break}}pp(ln)}Jm=q[a+268>>2];if(Jm){q[a+272>>2]=Jm;pp(Jm)}kn=a+244|0;Jm=q[kn>>2];q[kn>>2]=0;if(Jm){pp(Jm)}Jm=q[a+232>>2];if(Jm){q[a+236>>2]=Jm;pp(Jm)}$g(a+200|0);Jm=q[a+184>>2];if(Jm){q[a+188>>2]=Jm;pp(Jm)}kn=q[a+172>>2];if(kn){nn=a+176|0;Jm=q[nn>>2];ln=kn;a:{if((kn|0)==(Jm|0)){break a}while(1){ln=q[Jm+ -20>>2];if(ln){q[Jm+ -16>>2]=ln;pp(ln)}ln=Jm+ -136|0;mn=q[Jm+ -32>>2];if(mn){q[Jm+ -28>>2]=mn;pp(mn)}$j(Jm+ -132|0);Jm=ln;if((kn|0)!=(Jm|0)){continue}break}ln=q[a+172>>2]}q[nn>>2]=kn;pp(ln)}Jm=q[a+152>>2];if(Jm){q[a+156>>2]=Jm;pp(Jm)}Jm=q[a+140>>2];if(Jm){pp(Jm)}Jm=q[a+128>>2];if(Jm){while(1){kn=q[Jm>>2];pp(Jm);Jm=kn;if(Jm){continue}break}}kn=a+120|0;Jm=q[kn>>2];q[kn>>2]=0;if(Jm){pp(Jm)}Jm=q[a+108>>2];if(Jm){q[a+112>>2]=Jm;pp(Jm)}Jm=q[a+96>>2];if(Jm){q[a+100>>2]=Jm;pp(Jm)}Jm=q[a+84>>2];if(Jm){pp(Jm)}Jm=q[a+72>>2];if(Jm){q[a+76>>2]=Jm;pp(Jm)}Jm=q[a+52>>2];if(Jm){q[a+56>>2]=Jm;pp(Jm)}Jm=q[a+40>>2];if(Jm){q[a+44>>2]=Jm;pp(Jm)}Jm=q[a+28>>2];if(Jm){pp(Jm)}Jm=q[a+16>>2];if(Jm){q[a+20>>2]=Jm;pp(Jm)}Jm=q[a+12>>2];q[a+12>>2]=0;if(Jm){Oj(Jm)}return a|0}function rk(a){a=a|0;pp(qk(a))}function sk(a){a=a|0;var on=0,pn=0,qn=0,rn=0,sn=0;q[a>>2]=11468;on=q[a+336>>2];if(on){sn=a+340|0;pn=q[sn>>2];qn=on;a:{if((on|0)==(pn|0)){break a}while(1){qn=pn+ -12|0;rn=q[qn>>2];if(rn){q[pn+ -8>>2]=rn;pp(rn)}pn=qn;if((pn|0)!=(on|0)){continue}break}qn=q[a+336>>2]}q[sn>>2]=on;pp(qn)}on=q[a+304>>2];if(on){q[a+308>>2]=on;pp(on)}on=q[a+292>>2];if(on){q[a+296>>2]=on;pp(on)}on=a+280|0;pn=q[on>>2];q[on>>2]=0;if(pn){qn=pn+ -4|0;on=q[qn>>2];if(on){on=pn+(on<<5)|0;while(1){on=$g(on+ -32|0);if((pn|0)!=(on|0)){continue}break}}pp(qn)}on=q[a+268>>2];if(on){q[a+272>>2]=on;pp(on)}pn=a+244|0;on=q[pn>>2];q[pn>>2]=0;if(on){pp(on)}on=q[a+232>>2];if(on){q[a+236>>2]=on;pp(on)}$g(a+200|0);on=q[a+184>>2];if(on){q[a+188>>2]=on;pp(on)}pn=q[a+172>>2];if(pn){sn=a+176|0;on=q[sn>>2];qn=pn;b:{if((pn|0)==(on|0)){break b}while(1){qn=q[on+ -20>>2];if(qn){q[on+ -16>>2]=qn;pp(qn)}qn=on+ -136|0;rn=q[on+ -32>>2];if(rn){q[on+ -28>>2]=rn;pp(rn)}$j(on+ -132|0);on=qn;if((pn|0)!=(on|0)){continue}break}qn=q[a+172>>2]}q[sn>>2]=pn;pp(qn)}on=q[a+152>>2];if(on){q[a+156>>2]=on;pp(on)}on=q[a+140>>2];if(on){pp(on)}on=q[a+128>>2];if(on){while(1){pn=q[on>>2];pp(on);on=pn;if(on){continue}break}}pn=a+120|0;on=q[pn>>2];q[pn>>2]=0;if(on){pp(on)}on=q[a+108>>2];if(on){q[a+112>>2]=on;pp(on)}on=q[a+96>>2];if(on){q[a+100>>2]=on;pp(on)}on=q[a+84>>2];if(on){pp(on)}on=q[a+72>>2];if(on){q[a+76>>2]=on;pp(on)}on=q[a+52>>2];if(on){q[a+56>>2]=on;pp(on)}on=q[a+40>>2];if(on){q[a+44>>2]=on;pp(on)}on=q[a+28>>2];if(on){pp(on)}on=q[a+16>>2];if(on){q[a+20>>2]=on;pp(on)}on=q[a+12>>2];q[a+12>>2]=0;if(on){Oj(on)}return a|0}function tk(a){a=a|0;pp(sk(a))}function uk(a){a=a|0;var tn=0;q[a>>2]=11828;tn=q[a+48>>2];if(tn){q[a+52>>2]=tn;pp(tn)}q[a>>2]=12080;tn=q[a+36>>2];if(tn){pp(tn)}tn=q[a+24>>2];if(tn){pp(tn)}pp(a)}function vk(a){a=a|0;var un=0;q[a>>2]=12080;un=q[a+36>>2];if(un){pp(un)}un=q[a+24>>2];if(un){pp(un)}return a|0}function wk(a){a=a|0;var vn=0;q[a>>2]=12080;vn=q[a+36>>2];if(vn){pp(vn)}vn=q[a+24>>2];if(vn){pp(vn)}pp(a)}function xk(a,wn,xn){a=a|0;wn=wn|0;xn=xn|0;var yn=0,zn=0;yn=T-16|0;T=yn;q[a+4>>2]=wn;zn=q[wn+4>>2];wn=q[wn>>2];o[yn+15|0]=0;Fj(a+24|0,(zn-wn>>2>>>0)/3|0,yn+15|0);wn=q[a+4>>2];zn=q[wn+28>>2];wn=q[wn+24>>2];o[yn+14|0]=0;Fj(a+36|0,zn-wn>>2,yn+14|0);wn=q[xn+12>>2];q[a+16>>2]=q[xn+8>>2];q[a+20>>2]=wn;wn=q[xn+4>>2];q[a+8>>2]=q[xn>>2];q[a+12>>2]=wn;T=yn+16|0}function yk(a,wn){var xn=0,An=0,Bn=0;a:{if((a|0)!=(wn|0)){Bn=a;xn=q[wn+4>>2];An=0;b:{if(!xn){break b}c:{if(xn>>>0<=q[a+8>>2]<<5>>>0){An=q[a>>2];break c}An=q[a>>2];if(An){pp(An);q[a+8>>2]=0;q[a>>2]=0;q[a+4>>2]=0;xn=q[wn+4>>2]}if((xn|0)<=-1){break a}xn=(xn+ -1>>>5)+1|0;An=zo(xn<<2);q[a+8>>2]=xn;q[a+4>>2]=0;q[a>>2]=An;xn=q[wn+4>>2]}xp(An,q[wn>>2],(xn+ -1>>>3&536870908)+4|0);An=q[wn+4>>2]}q[Bn+4>>2]=An}return}To();F()}function zk(a){a=a|0;var wn=0;q[a>>2]=12380;wn=q[a+88>>2];if(wn){q[a+92>>2]=wn;pp(wn)}wn=q[a+72>>2];if(wn){q[a+76>>2]=wn;pp(wn)}wn=q[a+60>>2];if(wn){q[a- -64>>2]=wn;pp(wn)}wn=q[a+48>>2];if(wn){q[a+52>>2]=wn;pp(wn)}q[a>>2]=12616;wn=q[a+36>>2];if(wn){pp(wn)}wn=q[a+24>>2];if(wn){pp(wn)}return a|0}function Ak(a){a=a|0;var Cn=0;q[a>>2]=12168;q[a+8>>2]=12380;Cn=q[a+96>>2];if(Cn){q[a+100>>2]=Cn;pp(Cn)}Cn=q[a+80>>2];if(Cn){q[a+84>>2]=Cn;pp(Cn)}Cn=q[a+68>>2];if(Cn){q[a+72>>2]=Cn;pp(Cn)}Cn=q[a+56>>2];if(Cn){q[a+60>>2]=Cn;pp(Cn)}q[a+8>>2]=12616;Cn=q[a+44>>2];if(Cn){pp(Cn)}Cn=q[a+32>>2];if(Cn){pp(Cn)}return a|0}function Bk(a){a=a|0;var Dn=0;q[a>>2]=12168;q[a+8>>2]=12380;Dn=q[a+96>>2];if(Dn){q[a+100>>2]=Dn;pp(Dn)}Dn=q[a+80>>2];if(Dn){q[a+84>>2]=Dn;pp(Dn)}Dn=q[a+68>>2];if(Dn){q[a+72>>2]=Dn;pp(Dn)}Dn=q[a+56>>2];if(Dn){q[a+60>>2]=Dn;pp(Dn)}q[a+8>>2]=12616;Dn=q[a+44>>2];if(Dn){pp(Dn)}Dn=q[a+32>>2];if(Dn){pp(Dn)}pp(a)}function Ck(a,En){a=a|0;En=En|0;var Fn=0,Gn=0,Hn=0,In=0,Jn=0,Kn=0,Ln=0,Mn=0,Nn=0,On=0,Pn=0;Nn=q[a+12>>2];Fn=q[a+108>>2];Gn=q[Fn+80>>2];o[En+84|0]=0;Jn=q[En+68>>2];Hn=q[En+72>>2]-Jn>>2;a:{if(Gn>>>0>Hn>>>0){lc(En+68|0,Gn-Hn|0,12368);Fn=q[a+108>>2];Gn=q[Fn+80>>2];break a}if(Gn>>>0>=Hn>>>0){break a}q[En+72>>2]=Jn+(Gn<<2)}Mn=q[Fn+96>>2];Fn=q[Fn+100>>2]-Mn|0;On=(Fn|0)/12|0;if(!Fn){return 1}Pn=En+68|0;En=0;b:{while(1){c:{if((En|0)==1431655765){break c}Fn=q[Nn>>2]+(w(En,3)<<2)|0;Jn=q[Fn>>2];if((Jn|0)==-1){break c}Hn=w(En,12)+Mn|0;Kn=q[Hn>>2];if(Kn>>>0>=Gn>>>0){break c}In=Jn<<2;Jn=q[q[a+112>>2]+12>>2];In=q[In+Jn>>2];if(In>>>0>=Gn>>>0){break c}Ln=Kn<<2;Kn=q[Pn>>2];q[Ln+Kn>>2]=In;In=q[Fn+4>>2];if((In|0)==-1){break c}Ln=q[Hn+4>>2];if(Ln>>>0>=Gn>>>0){break c}In=q[Jn+(In<<2)>>2];if(In>>>0>=Gn>>>0){break c}q[Kn+(Ln<<2)>>2]=In;Fn=q[Fn+8>>2];if((Fn|0)==-1){break c}Hn=q[Hn+8>>2];if(Hn>>>0>=Gn>>>0){break c}Fn=q[Jn+(Fn<<2)>>2];if(Fn>>>0>=Gn>>>0){break c}q[Kn+(Hn<<2)>>2]=Fn;Fn=1;En=En+1|0;if(En>>>0<On>>>0){continue}break b}break}Fn=0}return Fn|0}function Dk(a){a=a|0;var En=0,Qn=0,Rn=0,Sn=0,Tn=0,Un=0,Vn=0,Wn=0,Xn=0;Tn=T-16|0;T=Tn;Qn=q[a+4>>2];En=q[Qn>>2];a:{Wn=a+12|0;Rn=q[Wn>>2];Sn=q[Rn+28>>2]-q[Rn+24>>2]|0;Rn=Sn>>2;b:{if(q[Qn+8>>2]-En>>2>>>0>=Rn>>>0){break b}if(Rn>>>0>=1073741824){break a}Xn=Qn+4|0;Un=q[Xn>>2];Vn=Rn<<2;Rn=zo(Sn);Vn=Vn+Rn|0;Sn=Un-En|0;Un=Sn+Rn|0;if((Sn|0)>=1){vp(Rn,En,Sn)}q[Qn>>2]=Rn;q[Qn+8>>2]=Vn;q[Xn>>2]=Un;if(!En){break b}pp(En)}En=q[Wn>>2];Qn=q[En+24>>2];En=q[En+28>>2];q[Tn+12>>2]=0;En=En-Qn>>2;Rn=a+96|0;Sn=q[Rn>>2];Qn=q[a+100>>2]-Sn>>2;c:{if(En>>>0>Qn>>>0){qd(Rn,En-Qn|0,Tn+12|0);break c}if(En>>>0>=Qn>>>0){break c}q[a+100>>2]=Sn+(En<<2)}Sn=a+8|0;d:{e:{En=q[a+116>>2];if(En){Rn=q[En>>2];Qn=1;if((Rn|0)==q[En+4>>2]){break d}En=0;while(1){if(!Ek(Sn,q[(En<<2)+Rn>>2])){break e}Qn=q[a+116>>2];Rn=q[Qn>>2];En=En+1|0;if(En>>>0<q[Qn+4>>2]-Rn>>2>>>0){continue}break}Qn=1;break d}En=0;a=q[a+12>>2];a=(q[a+4>>2]-q[a>>2]>>2>>>0)/3|0;Qn=1;if((a|0)<=0){break d}while(1){if(!Ek(Sn,w(En,3))){break e}En=En+1|0;if(En>>>0<a>>>0){continue}break}Qn=1;break d}Qn=0}T=Tn+16|0;return Qn|0}Qb(11752);F()}function Ek(a,Yn){var 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;ao=T-32|0;T=ao;q[ao+8>>2]=Yn;a:{if(q[a+92>>2]==q[a+88>>2]){break a}$n=a+52|0;Zn=q[$n>>2];b:{if((Zn|0)!=q[a+56>>2]){q[Zn>>2]=Yn;q[$n>>2]=Zn+4;break b}Tj(a+48|0,ao+8|0)}q[a+84>>2]=0;Yn=-1;$n=-1;Zn=q[ao+8>>2];c:{if((Zn|0)==-1){break c}_n=q[a+4>>2];bo=Zn+1|0;bo=(bo>>>0)%3|0?bo:Zn+ -2|0;if((bo|0)!=-1){Yn=q[q[_n>>2]+(bo<<2)>>2]}Zn=Zn+((Zn>>>0)%3|0?-1:2)|0;if((Zn|0)==-1){break c}$n=q[q[_n>>2]+(Zn<<2)>>2]}Zn=q[a+36>>2];_n=Zn+(Yn>>>3&536870908)|0;bo=q[_n>>2];eo=1<<(Yn&31);if(!(bo&eo)){q[_n>>2]=bo|eo;Zn=-1;_n=q[ao+8>>2];if((_n|0)!=-1){Zn=_n+1|0;Zn=(Zn>>>0)%3|0?Zn:_n+ -2|0}q[ao+16>>2]=Zn;_n=q[a+20>>2];bo=(Zn>>>0)/3|0;bo=q[(q[q[a+16>>2]+96>>2]+w(bo,12)|0)+(Zn-w(bo,3)<<2)>>2];q[ao+24>>2]=bo;_n=q[_n+4>>2];eo=_n+4|0;Zn=q[eo>>2];d:{if((Zn|0)!=q[_n+8>>2]){q[Zn>>2]=bo;q[eo>>2]=Zn+4;break d}Tj(_n,ao+24|0)}bo=a+12|0;Zn=q[bo>>2];eo=Zn+4|0;_n=q[eo>>2];e:{if((_n|0)!=q[Zn+8>>2]){q[_n>>2]=q[ao+16>>2];q[eo>>2]=_n+4;break e}Tj(Zn,ao+16|0);Zn=q[bo>>2]}q[q[Zn+12>>2]+(Yn<<2)>>2]=q[Zn+24>>2];q[Zn+24>>2]=q[Zn+24>>2]+1;Zn=q[a+36>>2]}Yn=Zn+($n>>>3&536870908)|0;Zn=q[Yn>>2];_n=1<<($n&31);if(!(Zn&_n)){q[Yn>>2]=Zn|_n;Yn=ao;fo=Yn;_n=q[Yn+8>>2];Zn=-1;f:{if((_n|0)==-1){break f}Zn=_n+ -1|0;if((_n>>>0)%3){break f}Zn=_n+2|0}q[fo+16>>2]=Zn;Yn=q[a+20>>2];_n=(Zn>>>0)/3|0;_n=q[(q[q[a+16>>2]+96>>2]+w(_n,12)|0)+(Zn-w(_n,3)<<2)>>2];q[ao+24>>2]=_n;Zn=q[Yn+4>>2];bo=Zn+4|0;Yn=q[bo>>2];g:{if((Yn|0)!=q[Zn+8>>2]){q[Yn>>2]=_n;q[bo>>2]=Yn+4;break g}Tj(Zn,ao+24|0)}_n=a+12|0;Yn=q[_n>>2];bo=Yn+4|0;Zn=q[bo>>2];h:{if((Zn|0)!=q[Yn+8>>2]){q[Zn>>2]=q[ao+16>>2];q[bo>>2]=Zn+4;break h}Tj(Yn,ao+16|0);Yn=q[_n>>2]}q[q[Yn+12>>2]+($n<<2)>>2]=q[Yn+24>>2];q[Yn+24>>2]=q[Yn+24>>2]+1}Yn=-1;Zn=q[ao+8>>2];if((Zn|0)!=-1){Yn=q[q[q[a+4>>2]>>2]+(Zn<<2)>>2]}Zn=q[a+36>>2]+(Yn>>>3&536870908)|0;$n=q[Zn>>2];_n=1<<(Yn&31);if(!($n&_n)){q[Zn>>2]=_n|$n;Zn=q[ao+8>>2];q[ao+16>>2]=Zn;$n=q[a+20>>2];_n=(Zn>>>0)/3|0;_n=q[(q[q[a+16>>2]+96>>2]+w(_n,12)|0)+(Zn-w(_n,3)<<2)>>2];q[ao+24>>2]=_n;$n=q[$n+4>>2];bo=$n+4|0;Zn=q[bo>>2];i:{if((Zn|0)!=q[$n+8>>2]){q[Zn>>2]=_n;q[bo>>2]=Zn+4;break i}Tj($n,ao+24|0)}_n=a+12|0;$n=q[_n>>2];bo=$n+4|0;Zn=q[bo>>2];j:{if((Zn|0)!=q[$n+8>>2]){q[Zn>>2]=q[ao+16>>2];q[bo>>2]=Zn+4;break j}Tj($n,ao+16|0);$n=q[_n>>2]}q[q[$n+12>>2]+(Yn<<2)>>2]=q[$n+24>>2];q[$n+24>>2]=q[$n+24>>2]+1}Zn=q[a+84>>2];k:{if((Zn|0)>2){break k}bo=a+24|0;eo=a+36|0;jo=a+16|0;ko=a+20|0;ho=a+88|0;while(1){$n=w(Zn,12)+a|0;_n=$n+52|0;Yn=q[_n>>2];if((Yn|0)==q[$n+48>>2]){Yn=(Zn|0)<2;Zn=Zn+1|0;if(Yn){continue}break k}$n=Yn+ -4|0;Yn=q[$n>>2];q[_n>>2]=$n;q[a+84>>2]=Zn;q[ao+8>>2]=Yn;if((Yn|0)==-1){break a}$n=q[bo>>2];_n=(Yn>>>0)/3|0;l:{if(q[$n+(_n>>>3&268435452)>>2]>>>(_n&31)&1){break l}m:{while(1){Yn=(Yn>>>0)/3|0;Zn=(Yn>>>3&268435452)+$n|0;q[Zn>>2]=q[Zn>>2]|1<<(Yn&31);Yn=-1;$n=q[ao+8>>2];if(($n|0)!=-1){Yn=q[q[q[a+4>>2]>>2]+($n<<2)>>2]}Zn=q[eo>>2]+(Yn>>>3&536870908)|0;_n=q[Zn>>2];co=1<<(Yn&31);if(!(_n&co)){q[Zn>>2]=_n|co;Zn=q[ao+8>>2];q[ao+16>>2]=Zn;$n=q[ko>>2];_n=(Zn>>>0)/3|0;_n=q[(q[q[jo>>2]+96>>2]+w(_n,12)|0)+(Zn-w(_n,3)<<2)>>2];q[ao+24>>2]=_n;$n=q[$n+4>>2];co=$n+4|0;Zn=q[co>>2];n:{if((Zn|0)!=q[$n+8>>2]){q[Zn>>2]=_n;q[co>>2]=Zn+4;break n}Tj($n,ao+24|0)}_n=a+12|0;$n=q[_n>>2];co=$n+4|0;Zn=q[co>>2];o:{if((Zn|0)!=q[$n+8>>2]){q[Zn>>2]=q[ao+16>>2];q[co>>2]=Zn+4;break o}Tj($n,ao+16|0);$n=q[_n>>2]}q[q[$n+12>>2]+(Yn<<2)>>2]=q[$n+24>>2];q[$n+24>>2]=q[$n+24>>2]+1;$n=q[ao+8>>2]}if(($n|0)==-1){break m}io=a+4|0;co=q[io>>2];Yn=-1;Zn=-1;_n=$n+1|0;_n=(_n>>>0)%3|0?_n:$n+ -2|0;if((_n|0)!=-1){Zn=q[q[co+12>>2]+(_n<<2)>>2]}$n=(($n>>>0)%3|0?-1:2)+$n|0;if(($n|0)!=-1){Yn=q[q[co+12>>2]+($n<<2)>>2]}_n=(Yn>>>0)/3|0;go=(Zn>>>0)/3|0;fo=(Zn|0)==-1;$n=1;p:{if(fo){break p}$n=fo?-1:go;$n=q[q[bo>>2]+($n>>>3&536870908)>>2]>>>($n&31)&1}q:{r:{s:{if((Yn|0)==-1){if(!$n){break s}break m}_n=(Yn|0)==-1?-1:_n;t:{if(q[q[bo>>2]+(_n>>>3&536870908)>>2]>>>(_n&31)&1){break t}_n=0;fo=$n;co=q[q[co>>2]+(Yn<<2)>>2];if(!(q[q[eo>>2]+(co>>>3&536870908)>>2]>>>(co&31)&1)){co=q[ho>>2]+(co<<2)|0;_n=q[co>>2];q[co>>2]=_n+1;_n=(_n|0)<1?2:1}if((_n|0)<=q[a+84>>2]?fo:0){break r}q[ao+24>>2]=Yn;go=w(_n,12)+a|0;fo=go+52|0;co=q[fo>>2];u:{if((co|0)!=q[go+56>>2]){q[co>>2]=Yn;q[fo>>2]=co+4;break u}Tj(go+48|0,ao+24|0)}if(q[a+84>>2]<=(_n|0)){break t}q[a+84>>2]=_n}if($n){break m}}Yn=-1;$n=0;Yn=(Zn|0)!=-1?q[q[q[io>>2]>>2]+(Zn<<2)>>2]:Yn;if(!(q[q[eo>>2]+(Yn>>>3&536870908)>>2]>>>(Yn&31)&1)){$n=q[ho>>2]+(Yn<<2)|0;Yn=q[$n>>2];q[$n>>2]=Yn+1;$n=(Yn|0)<1?2:1}if(($n|0)>q[a+84>>2]){break q}Yn=Zn}q[ao+8>>2]=Yn;$n=q[bo>>2];continue}break}q[ao+24>>2]=Zn;_n=w($n,12)+a|0;co=_n+52|0;Yn=q[co>>2];v:{if((Yn|0)!=q[_n+56>>2]){q[Yn>>2]=Zn;q[co>>2]=Yn+4;break v}Tj(_n+48|0,ao+24|0)}Zn=q[a+84>>2];if((Zn|0)<=($n|0)){break l}q[a+84>>2]=$n;Zn=$n;break l}Zn=q[a+84>>2]}if((Zn|0)<3){continue}break}}q[ao+8>>2]=-1}T=ao+32|0;return 1}function Fk(a){a=a|0;var Yn=0;q[a>>2]=12380;Yn=q[a+88>>2];if(Yn){q[a+92>>2]=Yn;pp(Yn)}Yn=q[a+72>>2];if(Yn){q[a+76>>2]=Yn;pp(Yn)}Yn=q[a+60>>2];if(Yn){q[a- -64>>2]=Yn;pp(Yn)}Yn=q[a+48>>2];if(Yn){q[a+52>>2]=Yn;pp(Yn)}q[a>>2]=12616;Yn=q[a+36>>2];if(Yn){pp(Yn)}Yn=q[a+24>>2];if(Yn){pp(Yn)}pp(a)}function Gk(a){a=a|0;var lo=0;q[a>>2]=12616;lo=q[a+36>>2];if(lo){pp(lo)}lo=q[a+24>>2];if(lo){pp(lo)}return a|0}function Hk(a){a=a|0;var mo=0;q[a>>2]=12616;mo=q[a+36>>2];if(mo){pp(mo)}mo=q[a+24>>2];if(mo){pp(mo)}pp(a)}function Ik(a){a=a|0;var no=0;q[a>>2]=12800;no=q[a+48>>2];if(no){q[a+52>>2]=no;pp(no)}q[a>>2]=12616;no=q[a+36>>2];if(no){pp(no)}no=q[a+24>>2];if(no){pp(no)}return a|0}function Jk(a){a=a|0;var oo=0,po=0;q[a>>2]=12636;po=a+8|0;q[po>>2]=12800;oo=q[a+56>>2];if(oo){q[a+60>>2]=oo;pp(oo)}q[po>>2]=12616;oo=q[a+44>>2];if(oo){pp(oo)}oo=q[a+32>>2];if(oo){pp(oo)}return a|0}function Kk(a){a=a|0;var qo=0,ro=0;q[a>>2]=12636;ro=a+8|0;q[ro>>2]=12800;qo=q[a+56>>2];if(qo){q[a+60>>2]=qo;pp(qo)}q[ro>>2]=12616;qo=q[a+44>>2];if(qo){pp(qo)}qo=q[a+32>>2];if(qo){pp(qo)}pp(a)}function Lk(a,so){a=a|0;so=so|0;var to=0,uo=0,vo=0,wo=0,xo=0,yo=0,zo=0,Ao=0,Bo=0,Co=0,Do=0;Bo=q[a+12>>2];to=q[a+68>>2];uo=q[to+80>>2];o[so+84|0]=0;xo=q[so+68>>2];vo=q[so+72>>2]-xo>>2;a:{if(uo>>>0>vo>>>0){lc(so+68|0,uo-vo|0,12368);to=q[a+68>>2];uo=q[to+80>>2];break a}if(uo>>>0>=vo>>>0){break a}q[so+72>>2]=xo+(uo<<2)}Ao=q[to+96>>2];to=q[to+100>>2]-Ao|0;Co=(to|0)/12|0;if(!to){return 1}Do=so+68|0;so=0;b:{while(1){c:{if((so|0)==1431655765){break c}to=q[Bo>>2]+(w(so,3)<<2)|0;xo=q[to>>2];if((xo|0)==-1){break c}vo=w(so,12)+Ao|0;yo=q[vo>>2];if(yo>>>0>=uo>>>0){break c}wo=xo<<2;xo=q[q[a+72>>2]+12>>2];wo=q[wo+xo>>2];if(wo>>>0>=uo>>>0){break c}zo=yo<<2;yo=q[Do>>2];q[zo+yo>>2]=wo;wo=q[to+4>>2];if((wo|0)==-1){break c}zo=q[vo+4>>2];if(zo>>>0>=uo>>>0){break c}wo=q[xo+(wo<<2)>>2];if(wo>>>0>=uo>>>0){break c}q[yo+(zo<<2)>>2]=wo;to=q[to+8>>2];if((to|0)==-1){break c}vo=q[vo+8>>2];if(vo>>>0>=uo>>>0){break c}to=q[xo+(to<<2)>>2];if(to>>>0>=uo>>>0){break c}q[yo+(vo<<2)>>2]=to;to=1;so=so+1|0;if(so>>>0<Co>>>0){continue}break b}break}to=0}return to|0}function Mk(a){a=a|0;var so=0,Eo=0,Fo=0,Go=0,Ho=0,Io=0,Jo=0;Go=q[a+4>>2];so=q[Go>>2];a:{Eo=q[a+12>>2];Fo=q[Eo+28>>2]-q[Eo+24>>2]|0;Eo=Fo>>2;b:{if(q[Go+8>>2]-so>>2>>>0>=Eo>>>0){break b}if(Eo>>>0>=1073741824){break a}Jo=Go+4|0;Ho=q[Jo>>2];Io=Eo<<2;Eo=zo(Fo);Io=Io+Eo|0;Fo=Ho-so|0;Ho=Fo+Eo|0;if((Fo|0)>=1){vp(Eo,so,Fo)}q[Go>>2]=Eo;q[Go+8>>2]=Io;q[Jo>>2]=Ho;if(!so){break b}pp(so)}Eo=a+8|0;c:{d:{so=q[a+76>>2];if(so){Go=q[so>>2];Fo=1;if((Go|0)==q[so+4>>2]){break c}so=0;while(1){if(!Nk(Eo,q[(so<<2)+Go>>2])){break d}Fo=q[a+76>>2];Go=q[Fo>>2];so=so+1|0;if(so>>>0<q[Fo+4>>2]-Go>>2>>>0){continue}break}return 1}so=0;a=q[a+12>>2];a=(q[a+4>>2]-q[a>>2]>>2>>>0)/3|0;if((a|0)<=0){return 1}while(1){if(!Nk(Eo,w(so,3))){break d}so=so+1|0;if(so>>>0<a>>>0){continue}break}return 1}Fo=0}return Fo|0}Qb(11752);F()}function Nk(a,Ko){var Lo=0,Mo=0,No=0,Oo=0,Po=0,Qo=0,Ro=0,So=0,To=0,Uo=0,Vo=0,Wo=0,Xo=0,Yo=0,Zo=0;Po=T-32|0;T=Po;q[Po+8>>2]=Ko;a:{if((Ko|0)==-1){Oo=1;break a}Oo=1;Lo=(Ko>>>0)/3|0;if(q[q[a+24>>2]+(Lo>>>3&268435452)>>2]>>>(Lo&31)&1){break a}Lo=a+52|0;No=q[a+48>>2];q[Lo>>2]=No;Uo=a+48|0;b:{if((No|0)!=q[a+56>>2]){q[No>>2]=Ko;q[Lo>>2]=No+4;break b}Tj(Uo,Po+8|0)}Oo=-1;No=q[Po+8>>2];if((No|0)==-1){Oo=0;break a}Lo=q[a+4>>2];Ko=No+1|0;Ko=(Ko>>>0)%3|0?Ko:No+ -2|0;if((Ko|0)!=-1){Oo=q[q[Lo>>2]+(Ko<<2)>>2]}Ko=No+((No>>>0)%3|0?-1:2)|0;if((Ko|0)==-1){Oo=0;break a}if((Oo|0)==-1){Oo=0;break a}Qo=q[q[Lo>>2]+(Ko<<2)>>2];if((Qo|0)==-1){Oo=0;break a}Ko=q[a+36>>2];Mo=Ko+(Oo>>>3&536870908)|0;No=q[Mo>>2];Lo=1<<(Oo&31);if(!(No&Lo)){q[Mo>>2]=Lo|No;Mo=-1;Lo=q[Po+8>>2];if((Lo|0)!=-1){Ko=Lo+1|0;Mo=(Ko>>>0)%3|0?Ko:Lo+ -2|0}q[Po+16>>2]=Mo;No=q[a+20>>2];Ko=(Mo>>>0)/3|0;Lo=q[(q[q[a+16>>2]+96>>2]+w(Ko,12)|0)+(Mo-w(Ko,3)<<2)>>2];q[Po+24>>2]=Lo;No=q[No+4>>2];Ko=No+4|0;Mo=q[Ko>>2];c:{if((Mo|0)!=q[No+8>>2]){q[Mo>>2]=Lo;q[Ko>>2]=Mo+4;break c}Tj(No,Po+24|0)}Lo=a+12|0;Mo=q[Lo>>2];Ko=Mo+4|0;No=q[Ko>>2];d:{if((No|0)!=q[Mo+8>>2]){q[No>>2]=q[Po+16>>2];q[Ko>>2]=No+4;break d}Tj(Mo,Po+16|0);Mo=q[Lo>>2]}q[q[Mo+12>>2]+(Oo<<2)>>2]=q[Mo+24>>2];q[Mo+24>>2]=q[Mo+24>>2]+1;Ko=q[a+36>>2]}No=(Qo>>>3&536870908)+Ko|0;Lo=q[No>>2];Ko=1<<(Qo&31);if(!(Lo&Ko)){q[No>>2]=Ko|Lo;Ko=Po;No=Ko;Lo=q[Ko+8>>2];Mo=-1;e:{if((Lo|0)==-1){break e}Mo=Lo+ -1|0;if((Lo>>>0)%3){break e}Mo=Lo+2|0}q[No+16>>2]=Mo;No=q[a+20>>2];Ko=(Mo>>>0)/3|0;Lo=q[(q[q[a+16>>2]+96>>2]+w(Ko,12)|0)+(Mo-w(Ko,3)<<2)>>2];q[Po+24>>2]=Lo;No=q[No+4>>2];Ko=No+4|0;Mo=q[Ko>>2];f:{if((Mo|0)!=q[No+8>>2]){q[Mo>>2]=Lo;q[Ko>>2]=Mo+4;break f}Tj(No,Po+24|0)}Lo=a+12|0;Oo=q[Lo>>2];Ko=Oo+4|0;No=q[Ko>>2];g:{if((No|0)!=q[Oo+8>>2]){q[No>>2]=q[Po+16>>2];q[Ko>>2]=No+4;break g}Tj(Oo,Po+16|0);Oo=q[Lo>>2]}q[q[Oo+12>>2]+(Qo<<2)>>2]=q[Oo+24>>2];q[Oo+24>>2]=q[Oo+24>>2]+1}So=a+52|0;Ko=q[So>>2];if((Ko|0)==q[a+48>>2]){Oo=1;break a}To=a+24|0;Vo=a+4|0;Wo=a+36|0;Xo=a+16|0;Yo=a+20|0;Zo=a+56|0;while(1){Mo=Ko+ -4|0;Lo=q[Mo>>2];q[Po+8>>2]=Lo;Ko=(Lo>>>0)/3|0;h:{i:{j:{if((Lo|0)==-1){break j}No=q[To>>2]+(Ko>>>3&268435452)|0;Lo=q[No>>2];Ko=1<<(Ko&31);if(Lo&Ko){break j}q[No>>2]=Ko|Lo;Ko=q[Po+8>>2];if((Ko|0)!=-1){break i}Oo=0;break a}q[So>>2]=Mo;break h}k:{l:{m:{while(1){Ro=q[Vo>>2];Lo=q[q[Ro>>2]+(Ko<<2)>>2];if((Lo|0)==-1){Oo=0;break a}Qo=q[Wo>>2]+(Lo>>>3&536870908)|0;Mo=q[Qo>>2];No=1<<(Lo&31);n:{if(!(Mo&No)){Oo=Lo<<2;Lo=q[Oo+q[Ro+24>>2]>>2];o:{p:{if((Lo|0)==-1){break p}Ko=Lo+1|0;Ko=(Ko>>>0)%3|0?Ko:Lo+ -2|0;if((Ko|0)==-1){break p}Ro=q[q[Ro+12>>2]+(Ko<<2)>>2];if((Ro|0)==-1){break p}Ko=Ro+1|0;Lo=0;if((((Ko>>>0)%3|0?Ko:Ro+ -2|0)|0)!=-1){break o}}Lo=1}q[Qo>>2]=No|Mo;No=q[Po+8>>2];q[Po+16>>2]=No;Mo=q[Yo>>2];Ko=(No>>>0)/3|0;No=q[(q[q[Xo>>2]+96>>2]+w(Ko,12)|0)+(No-w(Ko,3)<<2)>>2];q[Po+24>>2]=No;Mo=q[Mo+4>>2];Ko=Mo+4|0;Qo=q[Ko>>2];q:{if((Qo|0)!=q[Mo+8>>2]){q[Qo>>2]=No;q[Ko>>2]=Qo+4;break q}Tj(Mo,Po+24|0)}Mo=a+12|0;Ko=q[Mo>>2];No=Ko+4|0;Qo=q[No>>2];r:{if((Qo|0)!=q[Ko+8>>2]){q[Qo>>2]=q[Po+16>>2];q[No>>2]=Qo+4;break r}Tj(Ko,Po+16|0);Ko=q[Mo>>2]}q[q[Ko+12>>2]+Oo>>2]=q[Ko+24>>2];q[Ko+24>>2]=q[Ko+24>>2]+1;Ro=q[Vo>>2];Ko=q[Po+8>>2];if(!Lo){Lo=Po;Mo=-1;s:{if((Ko|0)==-1){break s}No=Ko+1|0;Ko=(No>>>0)%3|0?No:Ko+ -2|0;Mo=-1;if((Ko|0)==-1){break s}Mo=q[q[Ro+12>>2]+(Ko<<2)>>2]}q[Lo+8>>2]=Mo;Ko=(Mo>>>0)/3|0;break n}if((Ko|0)==-1){break l}}Mo=-1;Oo=-1;Lo=Ko+1|0;Lo=(Lo>>>0)%3|0?Lo:Ko+ -2|0;if((Lo|0)!=-1){Oo=q[q[Ro+12>>2]+(Lo<<2)>>2]}q[Po+24>>2]=Oo;Ko=((Ko>>>0)%3|0?-1:2)+Ko|0;if((Ko|0)!=-1){Mo=q[q[Ro+12>>2]+(Ko<<2)>>2]}No=(Mo>>>0)/3|0;Ko=(Oo>>>0)/3|0;Lo=(Oo|0)==-1;t:{if(Lo){Ko=-1;Lo=1;break t}Lo=Lo?-1:Ko;Lo=q[q[To>>2]+(Lo>>>3&536870908)>>2]>>>(Lo&31)&1}u:{if((Mo|0)!=-1){Qo=(Mo|0)==-1?-1:No;Qo=q[q[To>>2]+(Qo>>>3&536870908)>>2]&1<<(Qo&31);if(Lo){Oo=Mo;Ko=No;if(!Qo){break u}break k}if(Qo){break u}Ko=q[So>>2];q[Ko+ -4>>2]=Mo;if((Ko|0)==q[Zo>>2]){break m}q[Ko>>2]=q[Po+24>>2];q[So>>2]=Ko+4;break h}if(Lo){break k}}q[Po+8>>2]=Oo}Lo=q[To>>2]+(Ko>>>3&536870908)|0;q[Lo>>2]=q[Lo>>2]|1<<(Ko&31);Ko=q[Po+8>>2];if((Ko|0)!=-1){continue}break}Oo=0;break a}Tj(Uo,Po+24|0);break h}q[Po+24>>2]=-1}q[So>>2]=q[So>>2]+ -4}Oo=1;Ko=q[So>>2];if((Ko|0)!=q[a+48>>2]){continue}break}}T=Po+32|0;return Oo}function Ok(a){a=a|0;var Ko=0;q[a>>2]=12800;Ko=q[a+48>>2];if(Ko){q[a+52>>2]=Ko;pp(Ko)}q[a>>2]=12616;Ko=q[a+36>>2];if(Ko){pp(Ko)}Ko=q[a+24>>2];if(Ko){pp(Ko)}pp(a)}function Pk(a){a=a|0;var _o=0,$o=0;q[a>>2]=12928;$o=a+8|0;q[$o>>2]=11828;_o=q[a+56>>2];if(_o){q[a+60>>2]=_o;pp(_o)}q[$o>>2]=12080;_o=q[a+44>>2];if(_o){pp(_o)}_o=q[a+32>>2];if(_o){pp(_o)}return a|0}function Qk(a){a=a|0;var ap=0,bp=0;q[a>>2]=12928;bp=a+8|0;q[bp>>2]=11828;ap=q[a+56>>2];if(ap){q[a+60>>2]=ap;pp(ap)}q[bp>>2]=12080;ap=q[a+44>>2];if(ap){pp(ap)}ap=q[a+32>>2];if(ap){pp(ap)}pp(a)}function Rk(a,cp){a=a|0;cp=cp|0;var dp=0,ep=0,fp=0,gp=0,hp=0,ip=0,jp=0,kp=0,lp=0,mp=0,np=0;ip=q[a+12>>2];dp=q[a+68>>2];ep=q[dp+80>>2];o[cp+84|0]=0;hp=q[cp+68>>2];fp=q[cp+72>>2]-hp>>2;a:{if(ep>>>0>fp>>>0){lc(cp+68|0,ep-fp|0,12368);dp=q[a+68>>2];ep=q[dp+80>>2];break a}if(ep>>>0>=fp>>>0){break a}q[cp+72>>2]=hp+(ep<<2)}kp=q[dp+96>>2];dp=q[dp+100>>2]-kp|0;lp=(dp|0)/12|0;if(!dp){return 1}mp=q[ip+28>>2];np=cp+68|0;cp=0;b:{while(1){c:{dp=(w(cp,3)<<2)+mp|0;ip=q[dp>>2];if((ip|0)==-1){break c}fp=w(cp,12)+kp|0;hp=q[fp>>2];if(hp>>>0>=ep>>>0){break c}gp=ip<<2;ip=q[q[a+72>>2]+12>>2];gp=q[gp+ip>>2];if(gp>>>0>=ep>>>0){break c}jp=hp<<2;hp=q[np>>2];q[jp+hp>>2]=gp;gp=q[dp+4>>2];if((gp|0)==-1){break c}jp=q[fp+4>>2];if(jp>>>0>=ep>>>0){break c}gp=q[ip+(gp<<2)>>2];if(gp>>>0>=ep>>>0){break c}q[hp+(jp<<2)>>2]=gp;dp=q[dp+8>>2];if((dp|0)==-1){break c}fp=q[fp+8>>2];if(fp>>>0>=ep>>>0){break c}dp=q[ip+(dp<<2)>>2];if(dp>>>0>=ep>>>0){break c}q[hp+(fp<<2)>>2]=dp;dp=1;cp=cp+1|0;if(cp>>>0<lp>>>0){continue}break b}break}dp=0}return dp|0}function Sk(a){a=a|0;var cp=0,op=0,qp=0,rp=0,sp=0,tp=0,up=0;rp=q[a+4>>2];cp=q[rp>>2];a:{op=q[a+12>>2];qp=q[op+56>>2]-q[op+52>>2]|0;op=qp>>2;b:{if(q[rp+8>>2]-cp>>2>>>0>=op>>>0){break b}if(op>>>0>=1073741824){break a}up=rp+4|0;sp=q[up>>2];tp=op<<2;op=zo(qp);tp=tp+op|0;qp=sp-cp|0;sp=qp+op|0;if((qp|0)>=1){vp(op,cp,qp)}q[rp>>2]=op;q[rp+8>>2]=tp;q[up>>2]=sp;if(!cp){break b}pp(cp)}op=a+8|0;c:{d:{cp=q[a+76>>2];if(cp){rp=q[cp>>2];qp=1;if((rp|0)==q[cp+4>>2]){break c}cp=0;while(1){if(!Tk(op,q[(cp<<2)+rp>>2])){break d}qp=q[a+76>>2];rp=q[qp>>2];cp=cp+1|0;if(cp>>>0<q[qp+4>>2]-rp>>2>>>0){continue}break}return 1}cp=0;a=q[q[a+12>>2]+64>>2];a=(q[a+4>>2]-q[a>>2]>>2>>>0)/3|0;if((a|0)<=0){return 1}while(1){if(!Tk(op,w(cp,3))){break d}cp=cp+1|0;if(cp>>>0<a>>>0){continue}break}return 1}qp=0}return qp|0}Qb(11752);F()}function Tk(a,pp){var 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,Ip=0,Jp=0;zp=T-32|0;T=zp;q[zp+8>>2]=pp;a:{if((pp|0)==-1){vp=1;break a}vp=1;yp=(pp>>>0)/3|0;if(q[q[a+24>>2]+(yp>>>3&268435452)>>2]>>>(yp&31)&1){break a}yp=a+52|0;vp=q[a+48>>2];q[yp>>2]=vp;Ep=a+48|0;b:{if((vp|0)!=q[a+56>>2]){q[vp>>2]=pp;q[yp>>2]=vp+4;break b}Tj(Ep,zp+8|0)}wp=-1;vp=q[a+4>>2];pp=q[zp+8>>2];c:{if((pp|0)==-1){yp=q[vp+28>>2];vp=q[yp+ -4>>2];break c}yp=q[vp+28>>2];vp=pp+1|0;vp=q[yp+(((vp>>>0)%3|0?vp:pp+ -2|0)<<2)>>2];if((pp>>>0)%3){wp=pp+ -1|0;break c}wp=pp+2|0}if((vp|0)==-1){vp=0;break a}yp=q[(wp<<2)+yp>>2];if((yp|0)==-1){vp=0;break a}pp=q[a+36>>2];xp=pp+(vp>>>3&536870908)|0;wp=q[xp>>2];Ap=1<<(vp&31);if(!(wp&Ap)){q[xp>>2]=wp|Ap;wp=-1;pp=q[zp+8>>2];if((pp|0)!=-1){xp=pp+1|0;wp=(xp>>>0)%3|0?xp:pp+ -2|0}q[zp+16>>2]=wp;pp=q[a+20>>2];xp=(wp>>>0)/3|0;wp=q[(q[q[a+16>>2]+96>>2]+w(xp,12)|0)+(wp-w(xp,3)<<2)>>2];q[zp+24>>2]=wp;xp=q[pp+4>>2];Ap=xp+4|0;pp=q[Ap>>2];d:{if((pp|0)!=q[xp+8>>2]){q[pp>>2]=wp;q[Ap>>2]=pp+4;break d}Tj(xp,zp+24|0)}xp=a+12|0;wp=q[xp>>2];Ap=wp+4|0;pp=q[Ap>>2];e:{if((pp|0)!=q[wp+8>>2]){q[pp>>2]=q[zp+16>>2];q[Ap>>2]=pp+4;break e}Tj(wp,zp+16|0);wp=q[xp>>2]}q[q[wp+12>>2]+(vp<<2)>>2]=q[wp+24>>2];q[wp+24>>2]=q[wp+24>>2]+1;pp=q[a+36>>2]}pp=(yp>>>3&536870908)+pp|0;vp=q[pp>>2];xp=1<<(yp&31);if(!(vp&xp)){q[pp>>2]=vp|xp;pp=zp;wp=pp;xp=q[pp+8>>2];vp=-1;f:{if((xp|0)==-1){break f}vp=xp+ -1|0;if((xp>>>0)%3){break f}vp=xp+2|0}q[wp+16>>2]=vp;pp=q[a+20>>2];xp=(vp>>>0)/3|0;xp=q[(q[q[a+16>>2]+96>>2]+w(xp,12)|0)+(vp-w(xp,3)<<2)>>2];q[zp+24>>2]=xp;vp=q[pp+4>>2];wp=vp+4|0;pp=q[wp>>2];g:{if((pp|0)!=q[vp+8>>2]){q[pp>>2]=xp;q[wp>>2]=pp+4;break g}Tj(vp,zp+24|0)}xp=a+12|0;vp=q[xp>>2];wp=vp+4|0;pp=q[wp>>2];h:{if((pp|0)!=q[vp+8>>2]){q[pp>>2]=q[zp+16>>2];q[wp>>2]=pp+4;break h}Tj(vp,zp+16|0);vp=q[xp>>2]}q[q[vp+12>>2]+(yp<<2)>>2]=q[vp+24>>2];q[vp+24>>2]=q[vp+24>>2]+1}Ap=a+52|0;pp=q[Ap>>2];if((pp|0)==q[a+48>>2]){vp=1;break a}Cp=a+24|0;Dp=a+4|0;Gp=a+36|0;Hp=a+16|0;Ip=a+20|0;Jp=a+56|0;while(1){yp=pp+ -4|0;pp=q[yp>>2];q[zp+8>>2]=pp;vp=(pp>>>0)/3|0;i:{j:{k:{if((pp|0)==-1){break k}pp=q[Cp>>2]+(vp>>>3&268435452)|0;xp=q[pp>>2];vp=1<<(vp&31);if(xp&vp){break k}q[pp>>2]=vp|xp;wp=q[Dp>>2];pp=q[zp+8>>2];vp=q[q[wp+28>>2]+(pp<<2)>>2];if((vp|0)!=-1){break j}vp=0;break a}q[Ap>>2]=yp;break i}l:{m:{n:{while(1){o:{p:{yp=q[Gp>>2]+(vp>>>3&536870908)|0;xp=q[yp>>2];Bp=1<<(vp&31);if(xp&Bp){break p}Fp=vp<<2;vp=q[Fp+q[wp+40>>2]>>2];pp=1;q:{if((vp|0)==-1){break q}pp=vp+1|0;pp=(pp>>>0)%3|0?pp:vp+ -2|0;r:{if((pp|0)==-1|q[q[wp>>2]+(pp>>>3&536870908)>>2]>>>(pp&31)&1){break r}vp=q[q[q[wp+64>>2]+12>>2]+(pp<<2)>>2];if((vp|0)==-1){break r}wp=vp+1|0;pp=0;if((((wp>>>0)%3|0?wp:vp+ -2|0)|0)!=-1){break q}}pp=1}vp=pp;q[yp>>2]=xp|Bp;pp=q[zp+8>>2];q[zp+16>>2]=pp;yp=q[Ip>>2];xp=(pp>>>0)/3|0;xp=q[(q[q[Hp>>2]+96>>2]+w(xp,12)|0)+(pp-w(xp,3)<<2)>>2];q[zp+24>>2]=xp;yp=q[yp+4>>2];wp=yp+4|0;pp=q[wp>>2];s:{if((pp|0)!=q[yp+8>>2]){q[pp>>2]=xp;q[wp>>2]=pp+4;break s}Tj(yp,zp+24|0)}xp=a+12|0;pp=q[xp>>2];wp=pp+4|0;yp=q[wp>>2];t:{if((yp|0)!=q[pp+8>>2]){q[yp>>2]=q[zp+16>>2];q[wp>>2]=yp+4;break t}Tj(pp,zp+16|0);pp=q[xp>>2]}q[q[pp+12>>2]+Fp>>2]=q[pp+24>>2];q[pp+24>>2]=q[pp+24>>2]+1;wp=q[Dp>>2];pp=q[zp+8>>2];if(vp){break p}vp=-1;u:{if((pp|0)==-1){break u}yp=pp+1|0;pp=(yp>>>0)%3|0?yp:pp+ -2|0;if((pp|0)==-1|q[q[wp>>2]+(pp>>>3&536870908)>>2]>>>(pp&31)&1){break u}vp=q[q[q[wp+64>>2]+12>>2]+(pp<<2)>>2]}q[zp+8>>2]=vp;pp=(vp>>>0)/3|0;break o}if((pp|0)==-1){break m}yp=-1;xp=zp;Bp=pp+1|0;Bp=(Bp>>>0)%3|0?Bp:pp+ -2|0;vp=-1;v:{if((Bp|0)==-1){break v}vp=-1;if(q[q[wp>>2]+(Bp>>>3&536870908)>>2]>>>(Bp&31)&1){break v}vp=q[q[q[wp+64>>2]+12>>2]+(Bp<<2)>>2]}q[xp+24>>2]=vp;pp=((pp>>>0)%3|0?-1:2)+pp|0;if(!((pp|0)==-1|q[q[wp>>2]+(pp>>>3&536870908)>>2]>>>(pp&31)&1)){yp=q[q[q[wp+64>>2]+12>>2]+(pp<<2)>>2]}xp=(yp>>>0)/3|0;pp=(vp>>>0)/3|0;wp=(vp|0)==-1;w:{if(wp){pp=-1;wp=1;break w}wp=wp?-1:pp;wp=q[q[Cp>>2]+(wp>>>3&536870908)>>2]>>>(wp&31)&1}x:{if((yp|0)!=-1){Bp=(yp|0)==-1?-1:xp;Bp=q[q[Cp>>2]+(Bp>>>3&536870908)>>2]&1<<(Bp&31);if(wp){vp=yp;pp=xp;if(!Bp){break x}break l}if(Bp){break x}pp=q[Ap>>2];q[pp+ -4>>2]=yp;if((pp|0)==q[Jp>>2]){break n}q[pp>>2]=q[zp+24>>2];q[Ap>>2]=pp+4;break i}if(wp){break l}}q[zp+8>>2]=vp}vp=q[Cp>>2]+(pp>>>3&536870908)|0;q[vp>>2]=q[vp>>2]|1<<(pp&31);wp=q[Dp>>2];pp=q[zp+8>>2];vp=q[q[wp+28>>2]+(pp<<2)>>2];if((vp|0)!=-1){continue}break}vp=0;break a}Tj(Ep,zp+24|0);break i}q[zp+24>>2]=-1}q[Ap>>2]=q[Ap>>2]+ -4}vp=1;pp=q[Ap>>2];if((pp|0)!=q[a+48>>2]){continue}break}}T=zp+32|0;return vp}function Uk(a,pp){var Kp=0,Lp=0,Mp=0;q[a>>2]=q[pp>>2];q[a+4>>2]=q[pp+4>>2];q[a+8>>2]=q[pp+8>>2];Kp=pp+12|0;q[a+12>>2]=q[Kp>>2];q[Kp>>2]=0;q[pp+4>>2]=0;q[pp+8>>2]=0;Kp=pp+16|0;q[a+16>>2]=q[Kp>>2];q[a+20>>2]=q[pp+20>>2];Lp=pp+24|0;q[a+24>>2]=q[Lp>>2];q[Lp>>2]=0;q[Kp>>2]=0;q[Kp+4>>2]=0;Lp=r[pp+28|0];Mp=a+40|0;q[Mp>>2]=0;Kp=a+32|0;q[Kp>>2]=0;q[Kp+4>>2]=0;o[a+28|0]=Lp;Lp=Kp;Kp=pp+32|0;q[Lp>>2]=q[Kp>>2];q[a+36>>2]=q[pp+36>>2];Lp=pp+40|0;q[Mp>>2]=q[Lp>>2];q[Lp>>2]=0;q[Kp>>2]=0;q[Kp+4>>2]=0;Lp=a+52|0;q[Lp>>2]=0;Kp=a+44|0;q[Kp>>2]=0;q[Kp+4>>2]=0;Mp=Kp;Kp=pp+44|0;q[Mp>>2]=q[Kp>>2];q[a+48>>2]=q[pp+48>>2];Mp=Lp;Lp=pp+52|0;q[Mp>>2]=q[Lp>>2];q[Lp>>2]=0;q[Kp>>2]=0;q[Kp+4>>2]=0;Lp=a- -64|0;q[Lp>>2]=0;Kp=a+56|0;q[Kp>>2]=0;q[Kp+4>>2]=0;Mp=Kp;Kp=pp+56|0;q[Mp>>2]=q[Kp>>2];q[a+60>>2]=q[pp+60>>2];Mp=Lp;Lp=pp- -64|0;q[Mp>>2]=q[Lp>>2];q[Lp>>2]=0;q[Kp>>2]=0;q[Kp+4>>2]=0;q[a+68>>2]=q[pp+68>>2];Lp=q[pp+72>>2];Mp=a+84|0;q[Mp>>2]=0;Kp=a+76|0;q[Kp>>2]=0;q[Kp+4>>2]=0;q[a+72>>2]=Lp;Lp=Kp;Kp=pp+76|0;q[Lp>>2]=q[Kp>>2];q[a+80>>2]=q[pp+80>>2];Lp=pp+84|0;q[Mp>>2]=q[Lp>>2];q[Lp>>2]=0;q[Kp>>2]=0;q[Kp+4>>2]=0;Lp=a+96|0;q[Lp>>2]=0;Kp=a+88|0;q[Kp>>2]=0;q[Kp+4>>2]=0;Mp=Kp;Kp=pp+88|0;q[Mp>>2]=q[Kp>>2];q[a+92>>2]=q[pp+92>>2];Mp=Lp;Lp=pp+96|0;q[Mp>>2]=q[Lp>>2];q[Lp>>2]=0;q[Kp>>2]=0;q[Kp+4>>2]=0;Kp=r[pp+100|0];Lp=a+112|0;q[Lp>>2]=0;q[a+104>>2]=0;q[a+108>>2]=0;o[a+100|0]=Kp;q[a+104>>2]=q[pp+104>>2];q[a+108>>2]=q[pp+108>>2];Kp=pp+112|0;q[Lp>>2]=q[Kp>>2];q[Kp>>2]=0;q[pp+104>>2]=0;q[pp+108>>2]=0;Lp=a+124|0;q[Lp>>2]=0;Kp=a+116|0;q[Kp>>2]=0;q[Kp+4>>2]=0;Mp=Kp;Kp=pp+116|0;q[Mp>>2]=q[Kp>>2];q[a+120>>2]=q[pp+120>>2];Mp=Lp;Lp=pp+124|0;q[Mp>>2]=q[Lp>>2];q[Lp>>2]=0;q[Kp>>2]=0;q[Kp+4>>2]=0;q[a+128>>2]=q[pp+128>>2];q[a+132>>2]=q[pp+132>>2];return a}function Vk(a,pp){var Np=0,Op=0,Pp=x(0);Np=2;a:{if((pp|0)==1){break a}Np=pp;if(!(pp+ -1&pp)){break a}Np=Yn(pp)}Op=q[a+4>>2];if(Np>>>0>Op>>>0){Wk(a,Np);return}b:{if(Np>>>0>=Op>>>0){break b}Pp=x(D(x(x(t[a+12>>2])/u[a+16>>2])));c:{if(Pp<x(4294967296)&Pp>=x(0)){pp=~~Pp>>>0;break c}pp=0}d:{e:{if(Op>>>0<3){break e}if(Xp(Op)>>>0>1){break e}pp=pp>>>0<2?pp:1<<32-z(pp+ -1|0);break d}pp=Yn(pp)}pp=Np>>>0<pp>>>0?pp:Np;if(pp>>>0>=Op>>>0){break b}Wk(a,pp)}}function Wk(a,Qp){var Rp=0,Sp=0,Tp=0,Up=0,Vp=0,Wp=0,Yp=0,Zp=0,_p=0;a:{b:{if(Qp){if(Qp>>>0>=1073741824){break a}Rp=zo(Qp<<2);Sp=q[a>>2];q[a>>2]=Rp;if(Sp){pp(Sp)}q[a+4>>2]=Qp;Rp=0;while(1){q[q[a>>2]+(Rp<<2)>>2]=0;Rp=Rp+1|0;if((Rp|0)!=(Qp|0)){continue}break}Sp=a+8|0;Up=q[Sp>>2];if(!Up){break b}Vp=q[Up+4>>2];Rp=Xp(Qp);c:{if(Rp>>>0<=1){Vp=Qp+ -1&Vp;break c}if(Vp>>>0<Qp>>>0){break c}Vp=(Vp>>>0)%(Qp>>>0)|0}q[q[a>>2]+(Vp<<2)>>2]=Sp;Sp=q[Up>>2];if(!Sp){break b}Zp=Qp+ -1|0;_p=Rp>>>0>1;while(1){Tp=q[Sp+4>>2];d:{if(!_p){Tp=Tp&Zp;break d}if(Tp>>>0<Qp>>>0){break d}Tp=(Tp>>>0)%(Qp>>>0)|0}e:{if((Tp|0)==(Vp|0)){Up=Sp;break e}Rp=Sp;Wp=Tp<<2;Yp=Wp+q[a>>2]|0;if(!q[Yp>>2]){q[Yp>>2]=Up;Up=Sp;Vp=Tp;break e}while(1){Tp=Rp;Rp=q[Rp>>2];if(q[Sp+8>>2]==q[Rp+8>>2]?Rp:0){continue}break}q[Up>>2]=Rp;q[Tp>>2]=q[q[q[a>>2]+Wp>>2]>>2];q[q[q[a>>2]+Wp>>2]>>2]=Sp}Sp=q[Up>>2];if(Sp){continue}break}break b}Qp=q[a>>2];q[a>>2]=0;if(Qp){pp(Qp)}q[a+4>>2]=0}return}Qb(11752);F()}function Xk(a){hl(a);q[a+56>>2]=0;q[a+60>>2]=0;q[a>>2]=13108}function Yk(a,Qp){a=a|0;Qp=Qp|0;var Xp=0,$p=0,aq=0,bq=0,cq=0;bq=T-16|0;T=bq;n[q[q[Qp>>2]+64>>2]](a,Qp);if(!q[a>>2]){if(o[a+15|0]<=-1){pp(q[a+4>>2])}cq=q[Qp+48>>2];Xp=zo(32);q[bq>>2]=Xp;q[bq+4>>2]=29;q[bq+8>>2]=-2147483616;o[Xp+29|0]=0;$p=r[13205]|r[13206]<<8|(r[13207]<<16|r[13208]<<24);aq=r[13201]|r[13202]<<8|(r[13203]<<16|r[13204]<<24);o[Xp+21|0]=aq;o[Xp+22|0]=aq>>>8;o[Xp+23|0]=aq>>>16;o[Xp+24|0]=aq>>>24;o[Xp+25|0]=$p;o[Xp+26|0]=$p>>>8;o[Xp+27|0]=$p>>>16;o[Xp+28|0]=$p>>>24;$p=r[13200]|r[13201]<<8|(r[13202]<<16|r[13203]<<24);aq=r[13196]|r[13197]<<8|(r[13198]<<16|r[13199]<<24);o[Xp+16|0]=aq;o[Xp+17|0]=aq>>>8;o[Xp+18|0]=aq>>>16;o[Xp+19|0]=aq>>>24;o[Xp+20|0]=$p;o[Xp+21|0]=$p>>>8;o[Xp+22|0]=$p>>>16;o[Xp+23|0]=$p>>>24;$p=r[13192]|r[13193]<<8|(r[13194]<<16|r[13195]<<24);aq=r[13188]|r[13189]<<8|(r[13190]<<16|r[13191]<<24);o[Xp+8|0]=aq;o[Xp+9|0]=aq>>>8;o[Xp+10|0]=aq>>>16;o[Xp+11|0]=aq>>>24;o[Xp+12|0]=$p;o[Xp+13|0]=$p>>>8;o[Xp+14|0]=$p>>>16;o[Xp+15|0]=$p>>>24;$p=r[13184]|r[13185]<<8|(r[13186]<<16|r[13187]<<24);aq=r[13180]|r[13181]<<8|(r[13182]<<16|r[13183]<<24);o[Xp|0]=aq;o[Xp+1|0]=aq>>>8;o[Xp+2|0]=aq>>>16;o[Xp+3|0]=aq>>>24;o[Xp+4|0]=$p;o[Xp+5|0]=$p>>>8;o[Xp+6|0]=$p>>>16;o[Xp+7|0]=$p>>>24;Xp=Ol(cq,bq,0);if(o[bq+11|0]<=-1){pp(q[bq>>2])}if(Xp){n[q[q[Qp>>2]+68>>2]](Qp)}q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0}T=bq+16|0}function Zk(a){a=a|0;var Qp=0,dq=0,eq=0,fq=0,gq=0;q[a>>2]=13532;Qp=q[a+32>>2];if(Qp){q[a+36>>2]=Qp;pp(Qp)}Qp=q[a+20>>2];if(Qp){q[a+24>>2]=Qp;pp(Qp)}eq=q[a+8>>2];if(eq){Qp=eq;gq=a+12|0;dq=q[gq>>2];fq=Qp;a:{if((Qp|0)==(dq|0)){break a}while(1){dq=dq+ -4|0;Qp=q[dq>>2];q[dq>>2]=0;if(Qp){n[q[q[Qp>>2]+4>>2]](Qp)}if((dq|0)!=(eq|0)){continue}break}fq=q[a+8>>2]}Qp=fq;q[gq>>2]=eq;pp(Qp)}return a|0}function _k(a,hq){a=a|0;hq=hq|0;var iq=0,jq=0,kq=0,lq=0,mq=0,nq=0,oq=0,pq=0,qq=0;kq=T-16|0;T=kq;iq=hq+56|0;jq=q[iq>>2];lq=q[jq+100>>2]-q[jq+96>>2]|0;pq=(lq|0)/12|0;nq=hq+44|0;td(pq,q[nq>>2]);td(q[q[iq>>2]+80>>2],q[nq>>2]);oq=q[hq+48>>2];iq=zo(32);q[kq>>2]=iq;q[kq+4>>2]=21;q[kq+8>>2]=-2147483616;o[iq+21|0]=0;jq=r[13341]|r[13342]<<8|(r[13343]<<16|r[13344]<<24);mq=r[13337]|r[13338]<<8|(r[13339]<<16|r[13340]<<24);o[iq+13|0]=mq;o[iq+14|0]=mq>>>8;o[iq+15|0]=mq>>>16;o[iq+16|0]=mq>>>24;o[iq+17|0]=jq;o[iq+18|0]=jq>>>8;o[iq+19|0]=jq>>>16;o[iq+20|0]=jq>>>24;jq=r[13336]|r[13337]<<8|(r[13338]<<16|r[13339]<<24);mq=r[13332]|r[13333]<<8|(r[13334]<<16|r[13335]<<24);o[iq+8|0]=mq;o[iq+9|0]=mq>>>8;o[iq+10|0]=mq>>>16;o[iq+11|0]=mq>>>24;o[iq+12|0]=jq;o[iq+13|0]=jq>>>8;o[iq+14|0]=jq>>>16;o[iq+15|0]=jq>>>24;jq=r[13328]|r[13329]<<8|(r[13330]<<16|r[13331]<<24);mq=r[13324]|r[13325]<<8|(r[13326]<<16|r[13327]<<24);o[iq|0]=mq;o[iq+1|0]=mq>>>8;o[iq+2|0]=mq>>>16;o[iq+3|0]=mq>>>24;o[iq+4|0]=jq;o[iq+5|0]=jq>>>8;o[iq+6|0]=jq>>>16;o[iq+7|0]=jq>>>24;jq=Ol(oq,kq,0);if(o[kq+11|0]<=-1){pp(q[kq>>2])}iq=q[nq>>2];a:{if(jq){o[kq|0]=0;jq=q[iq+20>>2];if((jq|0)<0?1:(jq|0)<=0?t[iq+16>>2]>0?0:1:0){Vb(iq,q[iq+4>>2],kq,kq+1|0)}$k(hq);break a}o[kq|0]=1;jq=q[iq+20>>2];if((jq|0)<0?1:(jq|0)<=0?t[iq+16>>2]>0?0:1:0){Vb(iq,q[iq+4>>2],kq,kq+1|0)}jq=q[hq+56>>2];iq=q[jq+80>>2];if(iq>>>0<=255){if(!lq){break a}mq=kq+1|0;iq=0;nq=hq+44|0;qq=hq+56|0;while(1){hq=q[nq>>2];oq=q[jq+96>>2]+w(iq,12)|0;o[kq|0]=q[oq>>2];lq=q[hq+16>>2];jq=q[hq+20>>2];if((jq|0)<0?1:(jq|0)<=0?lq>>>0>0?0:1:0){Vb(hq,q[hq+4>>2],kq,mq);hq=q[nq>>2];lq=q[hq+16>>2];jq=q[hq+20>>2]}o[kq|0]=q[oq+4>>2];if((jq|0)<0?1:(jq|0)<=0?lq>>>0>0?0:1:0){Vb(hq,q[hq+4>>2],kq,mq);hq=q[nq>>2];lq=q[hq+16>>2];jq=q[hq+20>>2]}o[kq|0]=q[oq+8>>2];if((jq|0)<0?1:(jq|0)<=0?lq>>>0>0?0:1:0){Vb(hq,q[hq+4>>2],kq,mq)}iq=iq+1|0;if(iq>>>0>=pq>>>0){break a}jq=q[qq>>2];continue}}if(iq>>>0<=65535){if(!lq){break a}mq=kq+2|0;iq=0;nq=hq+44|0;qq=hq+56|0;while(1){hq=q[nq>>2];oq=q[jq+96>>2]+w(iq,12)|0;p[kq>>1]=q[oq>>2];lq=q[hq+16>>2];jq=q[hq+20>>2];if((jq|0)<0?1:(jq|0)<=0?lq>>>0>0?0:1:0){Vb(hq,q[hq+4>>2],kq,mq);hq=q[nq>>2];lq=q[hq+16>>2];jq=q[hq+20>>2]}p[kq>>1]=q[oq+4>>2];if((jq|0)<0?1:(jq|0)<=0?lq>>>0>0?0:1:0){Vb(hq,q[hq+4>>2],kq,mq);hq=q[nq>>2];lq=q[hq+16>>2];jq=q[hq+20>>2]}p[kq>>1]=q[oq+8>>2];if((jq|0)<0?1:(jq|0)<=0?lq>>>0>0?0:1:0){Vb(hq,q[hq+4>>2],kq,mq)}iq=iq+1|0;if(iq>>>0>=pq>>>0){break a}jq=q[qq>>2];continue}}if(iq>>>0>=2097152){if(!lq){break a}iq=0;mq=hq+44|0;nq=hq+56|0;while(1){hq=q[mq>>2];lq=q[hq+20>>2];if((lq|0)<0?1:(lq|0)<=0?t[hq+16>>2]>0?0:1:0){oq=hq;lq=q[hq+4>>2];hq=q[jq+96>>2]+w(iq,12)|0;Vb(oq,lq,hq,hq+12|0)}iq=iq+1|0;if(iq>>>0>=pq>>>0){break a}jq=q[nq>>2];continue}}if(!lq){break a}iq=0;lq=hq+44|0;mq=hq+56|0;while(1){hq=q[jq+96>>2]+w(iq,12)|0;td(q[hq>>2],q[lq>>2]);td(q[hq+4>>2],q[lq>>2]);td(q[hq+8>>2],q[lq>>2]);iq=iq+1|0;if(iq>>>0>=pq>>>0){break a}jq=q[mq>>2];continue}}q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0;T=kq+16|0}function $k(a){var hq=0,rq=0,sq=0,tq=0,uq=0,vq=0,wq=0,xq=0,yq=0,zq=0,Aq=0;hq=T-32|0;T=hq;q[hq+24>>2]=0;q[hq+16>>2]=0;q[hq+20>>2]=0;xq=a+56|0;tq=q[xq>>2];rq=q[tq+100>>2]-q[tq+96>>2]|0;Aq=(rq|0)/12|0;if(rq){rq=0;while(1){tq=q[tq+96>>2]+w(wq,12)|0;yq=q[tq>>2];sq=yq-uq|0;uq=sq>>31;sq=(uq^sq+uq)<<1|sq>>>31;q[hq+12>>2]=sq;a:{if((rq|0)!=(vq|0)){q[rq>>2]=sq;rq=rq+4|0;q[hq+20>>2]=rq;break a}he(hq+16|0,hq+12|0);vq=q[hq+24>>2];rq=q[hq+20>>2]}zq=q[tq+4>>2];sq=zq-yq|0;uq=sq>>31;sq=(uq^sq+uq)<<1|sq>>>31;q[hq+12>>2]=sq;b:{if((rq|0)!=(vq|0)){q[rq>>2]=sq;rq=rq+4|0;q[hq+20>>2]=rq;break b}he(hq+16|0,hq+12|0);vq=q[hq+24>>2];rq=q[hq+20>>2]}uq=q[tq+8>>2];tq=uq-zq|0;sq=tq>>31;tq=(sq^sq+tq)<<1|tq>>>31;q[hq+12>>2]=tq;c:{if((rq|0)!=(vq|0)){q[rq>>2]=tq;q[hq+20>>2]=rq+4;break c}he(hq+16|0,hq+12|0)}wq=wq+1|0;if(wq>>>0<Aq>>>0){tq=q[xq>>2];vq=q[hq+24>>2];rq=q[hq+20>>2];continue}break}vq=q[hq+16>>2];rq=q[hq+20>>2]}else{rq=0}Wh(vq,rq-vq>>2,1,0,q[a+44>>2]);a=q[hq+16>>2];if(a){q[hq+20>>2]=a;pp(a)}T=hq+32|0}function al(a,pp){a=a|0;pp=pp|0;var Bq=0,Cq=0,Dq=0,Eq=0;Bq=T-32|0;T=Bq;a:{if(!pp){pp=zo(76);Cq=zo(12);q[Cq+8>>2]=q[q[a+4>>2]+80>>2];q[Cq>>2]=13468;q[Cq+4>>2]=0;q[Bq+8>>2]=Cq;xe(pp,Bq+8|0,0);q[Bq+16>>2]=pp;Dq=a+12|0;Cq=q[Dq>>2];b:{if(Cq>>>0<t[a+16>>2]){q[Bq+16>>2]=0;q[Cq>>2]=pp;q[Dq>>2]=Cq+4;break b}Ij(a+8|0,Bq+16|0)}a=q[Bq+16>>2];q[Bq+16>>2]=0;if(a){n[q[q[a>>2]+4>>2]](a)}a=q[Bq+8>>2];q[Bq+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[Bq+28>>2]=pp;Dq=a+8|0;Cq=q[Dq>>2];c:{if((Cq|0)!=q[a+12>>2]){q[Cq>>2]=pp;q[Dq>>2]=Cq+4;break c}pd(a+4|0,Bq+28|0)}pp=q[Bq+28>>2];Cq=q[a+16>>2];Dq=q[a+20>>2]-Cq>>2;d:{if((pp|0)<(Dq|0)){break d}q[Bq+24>>2]=-1;Eq=pp+1|0;if(Eq>>>0>Dq>>>0){pp=a+16|0;qd(pp,Eq-Dq|0,Bq+24|0);Cq=q[pp>>2];pp=q[Bq+28>>2];break d}if(Eq>>>0>=Dq>>>0){break d}q[a+20>>2]=(Eq<<2)+Cq}q[(pp<<2)+Cq>>2]=(q[a+8>>2]-q[a+4>>2]>>2)+ -1}T=Bq+32|0;return 1}function bl(a){a=a|0;q[a+52>>2]=q[q[a+56>>2]+80>>2]}function cl(a){a=a|0;var pp=0;pp=a;a=q[a+56>>2];q[pp+60>>2]=(q[a+100>>2]-q[a+96>>2]|0)/12}function dl(a){a=a|0;var Fq=0,Gq=0,Hq=0,Iq=0,Jq=0;q[a>>2]=13532;Fq=q[a+32>>2];if(Fq){q[a+36>>2]=Fq;pp(Fq)}Fq=q[a+20>>2];if(Fq){q[a+24>>2]=Fq;pp(Fq)}Hq=q[a+8>>2];if(Hq){Fq=Hq;Jq=a+12|0;Gq=q[Jq>>2];Iq=Fq;a:{if((Fq|0)==(Gq|0)){break a}while(1){Gq=Gq+ -4|0;Fq=q[Gq>>2];q[Gq>>2]=0;if(Fq){n[q[q[Fq>>2]+4>>2]](Fq)}if((Gq|0)!=(Hq|0)){continue}break}Iq=q[a+8>>2]}Fq=Iq;q[Jq>>2]=Hq;pp(Fq)}pp(a)}function el(a,Kq){a=a|0;Kq=Kq|0;o[Kq+84|0]=1;q[Kq+72>>2]=q[Kq+68>>2];return 1}function fl(a){a=a|0;var Kq=0,Lq=0,Mq=0,Nq=0;a:{Kq=q[a+8>>2];b:{if((Kq|0)<0){break b}Lq=q[a+4>>2];Nq=q[Lq>>2];Mq=q[Lq+4>>2]-Nq>>2;c:{if(Kq>>>0>Mq>>>0){gl(Lq,Kq-Mq|0);Kq=q[a+8>>2];break c}if(Kq>>>0>=Mq>>>0){break c}q[Lq+4>>2]=Nq+(Kq<<2)}Nq=1;if((Kq|0)<1){break b}a=q[a+4>>2];Lq=q[a>>2];Mq=q[a+4>>2]-Lq>>2;a=0;while(1){if((a|0)==(Mq|0)){break a}q[Lq+(a<<2)>>2]=a;a=a+1|0;if((a|0)<(Kq|0)){continue}break}}return Nq|0}Uo();F()}function gl(a,Oq){var Pq=0,Qq=0,Rq=0,Sq=0,Tq=0,Uq=0,Vq=0,Wq=0,Xq=0;Qq=q[a+8>>2];Rq=a+4|0;Pq=q[Rq>>2];if(Qq-Pq>>2>>>0>=Oq>>>0){a=Oq<<2;Wq=Rq,Xq=wp(Pq,0,a)+a|0,q[Wq>>2]=Xq;return}a:{Rq=q[a>>2];Tq=Pq-Rq|0;Pq=Tq>>2;Sq=Pq+Oq|0;if(Sq>>>0<1073741824){Vq=Pq<<2;Qq=Qq-Rq|0;Pq=Qq>>1;Qq=Qq>>2>>>0<536870911?Pq>>>0<Sq>>>0?Sq:Pq:1073741823;Pq=0;b:{if(!Qq){break b}if(Qq>>>0>=1073741824){break a}Uq=zo(Qq<<2);Pq=Uq}wp(Vq+Pq|0,0,Oq<<2);Oq=Pq+(Sq<<2)|0;Sq=Pq+(Qq<<2)|0;if((Tq|0)>=1){vp(Uq,Rq,Tq)}q[a>>2]=Pq;q[a+8>>2]=Sq;q[a+4>>2]=Oq;if(Rq){pp(Rq)}return}To();F()}Qb(13392);F()}function hl(a){q[a+52>>2]=0;q[a>>2]=13532;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;return a}function il(a,Oq,Yq,Zq){var _q=0,$q=0,ar=0,br=0;$q=T-16|0;T=$q;q[Oq+44>>2]=Zq;q[Oq+48>>2]=Yq;br=Oq+12|0;Zq=q[br>>2];ar=q[Oq+8>>2];if((Zq|0)!=(ar|0)){while(1){Zq=Zq+ -4|0;_q=q[Zq>>2];q[Zq>>2]=0;if(_q){n[q[q[_q>>2]+4>>2]](_q)}if((Zq|0)!=(ar|0)){continue}break}}q[br>>2]=ar;q[Oq+24>>2]=q[Oq+20>>2];q[Oq+36>>2]=q[Oq+32>>2];a:{if(!q[Oq+4>>2]){Oq=zo(32);q[$q>>2]=Oq;q[$q+4>>2]=23;q[$q+8>>2]=-2147483616;o[Oq+23|0]=0;Yq=r[13603]|r[13604]<<8|(r[13605]<<16|r[13606]<<24);Zq=r[13599]|r[13600]<<8|(r[13601]<<16|r[13602]<<24);o[Oq+15|0]=Zq;o[Oq+16|0]=Zq>>>8;o[Oq+17|0]=Zq>>>16;o[Oq+18|0]=Zq>>>24;o[Oq+19|0]=Yq;o[Oq+20|0]=Yq>>>8;o[Oq+21|0]=Yq>>>16;o[Oq+22|0]=Yq>>>24;Yq=r[13596]|r[13597]<<8|(r[13598]<<16|r[13599]<<24);Zq=r[13592]|r[13593]<<8|(r[13594]<<16|r[13595]<<24);o[Oq+8|0]=Zq;o[Oq+9|0]=Zq>>>8;o[Oq+10|0]=Zq>>>16;o[Oq+11|0]=Zq>>>24;o[Oq+12|0]=Yq;o[Oq+13|0]=Yq>>>8;o[Oq+14|0]=Yq>>>16;o[Oq+15|0]=Yq>>>24;Yq=r[13588]|r[13589]<<8|(r[13590]<<16|r[13591]<<24);Zq=r[13584]|r[13585]<<8|(r[13586]<<16|r[13587]<<24);o[Oq|0]=Zq;o[Oq+1|0]=Zq>>>8;o[Oq+2|0]=Zq>>>16;o[Oq+3|0]=Zq>>>24;o[Oq+4|0]=Yq;o[Oq+5|0]=Yq>>>8;o[Oq+6|0]=Yq>>>16;o[Oq+7|0]=Yq>>>24;q[a>>2]=-1;Do(a+4|0,$q);if(o[$q+11|0]>-1){break a}pp(q[$q>>2]);break a}jl(a,Oq);if(q[a>>2]){break a}Zq=a+4|0;if(o[a+15|0]<=-1){pp(q[Zq>>2])}kl(a,Oq);if(q[a>>2]){break a}if(o[Zq+11|0]<=-1){pp(q[Zq>>2])}if(!n[q[q[Oq>>2]+16>>2]](Oq)){Oq=zo(32);q[$q>>2]=Oq;q[$q+4>>2]=29;q[$q+8>>2]=-2147483616;o[Oq+29|0]=0;Yq=r[13633]|r[13634]<<8|(r[13635]<<16|r[13636]<<24);_q=r[13629]|r[13630]<<8|(r[13631]<<16|r[13632]<<24);o[Oq+21|0]=_q;o[Oq+22|0]=_q>>>8;o[Oq+23|0]=_q>>>16;o[Oq+24|0]=_q>>>24;o[Oq+25|0]=Yq;o[Oq+26|0]=Yq>>>8;o[Oq+27|0]=Yq>>>16;o[Oq+28|0]=Yq>>>24;Yq=r[13628]|r[13629]<<8|(r[13630]<<16|r[13631]<<24);_q=r[13624]|r[13625]<<8|(r[13626]<<16|r[13627]<<24);o[Oq+16|0]=_q;o[Oq+17|0]=_q>>>8;o[Oq+18|0]=_q>>>16;o[Oq+19|0]=_q>>>24;o[Oq+20|0]=Yq;o[Oq+21|0]=Yq>>>8;o[Oq+22|0]=Yq>>>16;o[Oq+23|0]=Yq>>>24;Yq=r[13620]|r[13621]<<8|(r[13622]<<16|r[13623]<<24);_q=r[13616]|r[13617]<<8|(r[13618]<<16|r[13619]<<24);o[Oq+8|0]=_q;o[Oq+9|0]=_q>>>8;o[Oq+10|0]=_q>>>16;o[Oq+11|0]=_q>>>24;o[Oq+12|0]=Yq;o[Oq+13|0]=Yq>>>8;o[Oq+14|0]=Yq>>>16;o[Oq+15|0]=Yq>>>24;Yq=r[13612]|r[13613]<<8|(r[13614]<<16|r[13615]<<24);_q=r[13608]|r[13609]<<8|(r[13610]<<16|r[13611]<<24);o[Oq|0]=_q;o[Oq+1|0]=_q>>>8;o[Oq+2|0]=_q>>>16;o[Oq+3|0]=_q>>>24;o[Oq+4|0]=Yq;o[Oq+5|0]=Yq>>>8;o[Oq+6|0]=Yq>>>16;o[Oq+7|0]=Yq>>>24;q[a>>2]=-1;Do(Zq,$q);if(o[$q+11|0]>-1){break a}pp(q[$q>>2]);break a}if(!n[q[q[Oq>>2]+20>>2]](Oq)){Oq=zo(32);q[$q>>2]=Oq;q[$q+4>>2]=31;q[$q+8>>2]=-2147483616;o[Oq+31|0]=0;Yq=r[13665]|r[13666]<<8|(r[13667]<<16|r[13668]<<24);_q=r[13661]|r[13662]<<8|(r[13663]<<16|r[13664]<<24);o[Oq+23|0]=_q;o[Oq+24|0]=_q>>>8;o[Oq+25|0]=_q>>>16;o[Oq+26|0]=_q>>>24;o[Oq+27|0]=Yq;o[Oq+28|0]=Yq>>>8;o[Oq+29|0]=Yq>>>16;o[Oq+30|0]=Yq>>>24;Yq=r[13658]|r[13659]<<8|(r[13660]<<16|r[13661]<<24);_q=r[13654]|r[13655]<<8|(r[13656]<<16|r[13657]<<24);o[Oq+16|0]=_q;o[Oq+17|0]=_q>>>8;o[Oq+18|0]=_q>>>16;o[Oq+19|0]=_q>>>24;o[Oq+20|0]=Yq;o[Oq+21|0]=Yq>>>8;o[Oq+22|0]=Yq>>>16;o[Oq+23|0]=Yq>>>24;Yq=r[13650]|r[13651]<<8|(r[13652]<<16|r[13653]<<24);_q=r[13646]|r[13647]<<8|(r[13648]<<16|r[13649]<<24);o[Oq+8|0]=_q;o[Oq+9|0]=_q>>>8;o[Oq+10|0]=_q>>>16;o[Oq+11|0]=_q>>>24;o[Oq+12|0]=Yq;o[Oq+13|0]=Yq>>>8;o[Oq+14|0]=Yq>>>16;o[Oq+15|0]=Yq>>>24;Yq=r[13642]|r[13643]<<8|(r[13644]<<16|r[13645]<<24);_q=r[13638]|r[13639]<<8|(r[13640]<<16|r[13641]<<24);o[Oq|0]=_q;o[Oq+1|0]=_q>>>8;o[Oq+2|0]=_q>>>16;o[Oq+3|0]=_q>>>24;o[Oq+4|0]=Yq;o[Oq+5|0]=Yq>>>8;o[Oq+6|0]=Yq>>>16;o[Oq+7|0]=Yq>>>24;q[a>>2]=-1;Do(Zq,$q);if(o[$q+11|0]>-1){break a}pp(q[$q>>2]);break a}n[q[q[Oq>>2]+24>>2]](a,Oq);if(q[a>>2]){break a}if(o[Zq+11|0]<=-1){pp(q[Zq>>2])}if(!n[q[q[Oq>>2]+28>>2]](Oq)){Oq=zo(48);q[$q>>2]=Oq;q[$q+4>>2]=34;q[$q+8>>2]=-2147483600;o[Oq+34|0]=0;Yq=r[13702]|r[13703]<<8;o[Oq+32|0]=Yq;o[Oq+33|0]=Yq>>>8;Yq=r[13698]|r[13699]<<8|(r[13700]<<16|r[13701]<<24);_q=r[13694]|r[13695]<<8|(r[13696]<<16|r[13697]<<24);o[Oq+24|0]=_q;o[Oq+25|0]=_q>>>8;o[Oq+26|0]=_q>>>16;o[Oq+27|0]=_q>>>24;o[Oq+28|0]=Yq;o[Oq+29|0]=Yq>>>8;o[Oq+30|0]=Yq>>>16;o[Oq+31|0]=Yq>>>24;Yq=r[13690]|r[13691]<<8|(r[13692]<<16|r[13693]<<24);_q=r[13686]|r[13687]<<8|(r[13688]<<16|r[13689]<<24);o[Oq+16|0]=_q;o[Oq+17|0]=_q>>>8;o[Oq+18|0]=_q>>>16;o[Oq+19|0]=_q>>>24;o[Oq+20|0]=Yq;o[Oq+21|0]=Yq>>>8;o[Oq+22|0]=Yq>>>16;o[Oq+23|0]=Yq>>>24;Yq=r[13682]|r[13683]<<8|(r[13684]<<16|r[13685]<<24);_q=r[13678]|r[13679]<<8|(r[13680]<<16|r[13681]<<24);o[Oq+8|0]=_q;o[Oq+9|0]=_q>>>8;o[Oq+10|0]=_q>>>16;o[Oq+11|0]=_q>>>24;o[Oq+12|0]=Yq;o[Oq+13|0]=Yq>>>8;o[Oq+14|0]=Yq>>>16;o[Oq+15|0]=Yq>>>24;Yq=r[13674]|r[13675]<<8|(r[13676]<<16|r[13677]<<24);_q=r[13670]|r[13671]<<8|(r[13672]<<16|r[13673]<<24);o[Oq|0]=_q;o[Oq+1|0]=_q>>>8;o[Oq+2|0]=_q>>>16;o[Oq+3|0]=_q>>>24;o[Oq+4|0]=Yq;o[Oq+5|0]=Yq>>>8;o[Oq+6|0]=Yq>>>16;o[Oq+7|0]=Yq>>>24;q[a>>2]=-1;Do(Zq,$q);if(o[$q+11|0]>-1){break a}pp(q[$q>>2]);break a}Zq=zo(32);q[$q>>2]=Zq;q[$q+4>>2]=30;q[$q+8>>2]=-2147483616;o[Zq+30|0]=0;_q=r[13731]|r[13732]<<8|(r[13733]<<16|r[13734]<<24);ar=r[13727]|r[13728]<<8|(r[13729]<<16|r[13730]<<24);o[Zq+22|0]=ar;o[Zq+23|0]=ar>>>8;o[Zq+24|0]=ar>>>16;o[Zq+25|0]=ar>>>24;o[Zq+26|0]=_q;o[Zq+27|0]=_q>>>8;o[Zq+28|0]=_q>>>16;o[Zq+29|0]=_q>>>24;_q=r[13725]|r[13726]<<8|(r[13727]<<16|r[13728]<<24);ar=r[13721]|r[13722]<<8|(r[13723]<<16|r[13724]<<24);o[Zq+16|0]=ar;o[Zq+17|0]=ar>>>8;o[Zq+18|0]=ar>>>16;o[Zq+19|0]=ar>>>24;o[Zq+20|0]=_q;o[Zq+21|0]=_q>>>8;o[Zq+22|0]=_q>>>16;o[Zq+23|0]=_q>>>24;_q=r[13717]|r[13718]<<8|(r[13719]<<16|r[13720]<<24);ar=r[13713]|r[13714]<<8|(r[13715]<<16|r[13716]<<24);o[Zq+8|0]=ar;o[Zq+9|0]=ar>>>8;o[Zq+10|0]=ar>>>16;o[Zq+11|0]=ar>>>24;o[Zq+12|0]=_q;o[Zq+13|0]=_q>>>8;o[Zq+14|0]=_q>>>16;o[Zq+15|0]=_q>>>24;_q=r[13709]|r[13710]<<8|(r[13711]<<16|r[13712]<<24);ar=r[13705]|r[13706]<<8|(r[13707]<<16|r[13708]<<24);o[Zq|0]=ar;o[Zq+1|0]=ar>>>8;o[Zq+2|0]=ar>>>16;o[Zq+3|0]=ar>>>24;o[Zq+4|0]=_q;o[Zq+5|0]=_q>>>8;o[Zq+6|0]=_q>>>16;o[Zq+7|0]=_q>>>24;Yq=Ol(Yq,$q,0);if(o[$q+11|0]<=-1){pp(q[$q>>2])}if(Yq){n[q[q[Oq>>2]+48>>2]](Oq)}q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0}T=$q+16|0}function jl(a,Oq){var Yq=0,Zq=0,cr=0,dr=0,er=0;Zq=T-16|0;T=Zq;Yq=q[Oq+44>>2];cr=q[Yq+20>>2];if((cr|0)<0?1:(cr|0)<=0?t[Yq+16>>2]>0?0:1:0){Vb(Yq,q[Yq+4>>2],13736,13741)}Yq=n[q[q[Oq>>2]+8>>2]](Oq)|0;o[Zq+15|0]=Yq;o[Zq+14|0]=2;o[Zq+13|0]=Yq&255?2:3;Yq=q[Oq+44>>2];cr=q[Yq+20>>2];a:{if((cr|0)>0?1:(cr|0)>=0?t[Yq+16>>2]<=0?0:1:0){break a}Vb(Yq,q[Yq+4>>2],Zq+14|0,Zq+15|0);Yq=q[Oq+44>>2];cr=q[Yq+20>>2];if((cr|0)>0?1:(cr|0)>=0?t[Yq+16>>2]<=0?0:1:0){break a}Vb(Yq,q[Yq+4>>2],Zq+13|0,Zq+14|0);Yq=q[Oq+44>>2];cr=q[Yq+20>>2];if((cr|0)>0?1:(cr|0)>=0?t[Yq+16>>2]<=0?0:1:0){break a}Vb(Yq,q[Yq+4>>2],Zq+15|0,Zq+16|0);Yq=q[Oq+44>>2]}dr=Zq,er=n[q[q[Oq>>2]+12>>2]](Oq)|0,o[dr+12|0]=er;cr=q[Yq+20>>2];if((cr|0)<0?1:(cr|0)<=0?t[Yq+16>>2]>0?0:1:0){Vb(Yq,q[Yq+4>>2],Zq+12|0,Zq+13|0)}p[Zq+10>>1]=(q[q[Oq+4>>2]+4>>2]!=0)<<15;Oq=q[Oq+44>>2];Yq=q[Oq+20>>2];if((Yq|0)<0?1:(Yq|0)<=0?t[Oq+16>>2]>0?0:1:0){Vb(Oq,q[Oq+4>>2],Zq+10|0,Zq+12|0)}q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0;T=Zq+16|0}function kl(a,Oq){var fr=0,gr=0,hr=0;hr=T-32|0;T=hr;fr=q[q[Oq+4>>2]+4>>2];a:{if(!fr){q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0;break a}if(!sm(hr+24|0,q[Oq+44>>2],fr)){Oq=zo(32);q[hr+8>>2]=Oq;q[hr+12>>2]=26;q[hr+16>>2]=-2147483616;o[Oq+26|0]=0;fr=r[13766]|r[13767]<<8;o[Oq+24|0]=fr;o[Oq+25|0]=fr>>>8;fr=r[13762]|r[13763]<<8|(r[13764]<<16|r[13765]<<24);gr=r[13758]|r[13759]<<8|(r[13760]<<16|r[13761]<<24);o[Oq+16|0]=gr;o[Oq+17|0]=gr>>>8;o[Oq+18|0]=gr>>>16;o[Oq+19|0]=gr>>>24;o[Oq+20|0]=fr;o[Oq+21|0]=fr>>>8;o[Oq+22|0]=fr>>>16;o[Oq+23|0]=fr>>>24;fr=r[13754]|r[13755]<<8|(r[13756]<<16|r[13757]<<24);gr=r[13750]|r[13751]<<8|(r[13752]<<16|r[13753]<<24);o[Oq+8|0]=gr;o[Oq+9|0]=gr>>>8;o[Oq+10|0]=gr>>>16;o[Oq+11|0]=gr>>>24;o[Oq+12|0]=fr;o[Oq+13|0]=fr>>>8;o[Oq+14|0]=fr>>>16;o[Oq+15|0]=fr>>>24;fr=r[13746]|r[13747]<<8|(r[13748]<<16|r[13749]<<24);gr=r[13742]|r[13743]<<8|(r[13744]<<16|r[13745]<<24);o[Oq|0]=gr;o[Oq+1|0]=gr>>>8;o[Oq+2|0]=gr>>>16;o[Oq+3|0]=gr>>>24;o[Oq+4|0]=fr;o[Oq+5|0]=fr>>>8;o[Oq+6|0]=fr>>>16;o[Oq+7|0]=fr>>>24;q[a>>2]=-1;Do(a+4|0,hr+8|0);if(o[hr+19|0]>-1){break a}pp(q[hr+8>>2]);break a}q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0}T=hr+32|0}function ll(a){a=a|0;var Oq=0,ir=0,jr=0,kr=0,lr=0,mr=0,nr=0;kr=T-16|0;T=kr;a:{if(!n[q[q[a>>2]+32>>2]](a)){break a}ir=q[a+44>>2];lr=a+12|0;jr=q[lr>>2];Oq=q[a+8>>2];o[kr+15|0]=jr-Oq>>>2;mr=q[ir+20>>2];if((mr|0)<0?1:(mr|0)<=0?t[ir+16>>2]>0?0:1:0){Vb(ir,q[ir+4>>2],kr+15|0,kr+16|0);jr=q[lr>>2];Oq=q[a+8>>2]}if((Oq|0)!=(jr|0)){while(1){ir=q[Oq>>2];if(!n[q[q[ir>>2]+8>>2]](ir,a,q[a+4>>2])){break a}Oq=Oq+4|0;if((jr|0)!=(Oq|0)){continue}break}}if(!ml(a)){break a}Oq=q[a+32>>2];ir=q[a+36>>2];b:{if((Oq|0)==(ir|0)){break b}while(1){if(!n[q[q[a>>2]+40>>2]](a,q[Oq>>2])){break a}Oq=Oq+4|0;if((ir|0)!=(Oq|0)){continue}break}Oq=q[a+32>>2];ir=q[a+36>>2];if((Oq|0)==(ir|0)){break b}while(1){jr=q[q[a+8>>2]+(q[Oq>>2]<<2)>>2];if(!n[q[q[jr>>2]+12>>2]](jr,q[a+44>>2])){break a}Oq=Oq+4|0;if((ir|0)!=(Oq|0)){continue}break}}nr=n[q[q[a>>2]+44>>2]](a)|0}T=kr+16|0;return nr|0}function ml(a){var or=0,pr=0,qr=0,rr=0,sr=0,tr=0,ur=0,vr=0,wr=0,xr=0,yr=0,zr=0,Ar=0,Br=0,Cr=0,Dr=0,Er=0,Fr=0;tr=T+ -64|0;T=tr;Dr=a+32|0;vr=a+12|0;or=q[vr>>2]-q[a+8>>2]>>2;rr=q[a+32>>2];pr=q[a+36>>2]-rr>>2;a:{if(or>>>0>pr>>>0){pf(Dr,or-pr|0);or=q[vr>>2]-q[a+8>>2]>>2;break a}if(or>>>0>=pr>>>0){break a}q[a+36>>2]=rr+(or<<2)}o[tr+32|0]=0;Br=nl(tr+48|0,or,tr+32|0);wr=a+12|0;or=q[wr>>2];qr=q[a+8>>2];Cr=a+20|0;b:{while(1){if(xr>>>0<or-qr>>2>>>0){pr=0;sr=0;vr=0;ur=0;if((or|0)!=(qr|0)){while(1){zr=1<<(ur&31);Ar=ur>>>5<<2;c:{if(zr&q[Ar+q[Br>>2]>>2]){break c}sr=1;rr=0;d:{pr=ur<<2;or=q[pr+qr>>2];if(q[or+8>>2]==q[or+4>>2]){break d}e:while(1){yr=q[q[or+4>>2]+(rr<<2)>>2];or=0;while(1){f:{qr=q[pr+qr>>2];if((or|0)<(n[q[q[qr>>2]+24>>2]](qr,yr)|0)){qr=q[pr+q[a+8>>2]>>2];qr=n[q[q[qr>>2]+28>>2]](qr,yr,or)|0;if((qr|0)==(ur|0)){break f}qr=q[q[Cr>>2]+(qr<<2)>>2];if(q[q[Br>>2]+(qr>>>3&536870908)>>2]>>>(qr&31)&1){break f}sr=0}rr=rr+1|0;qr=q[a+8>>2];or=q[pr+qr>>2];if(rr>>>0<q[or+8>>2]-q[or+4>>2]>>2>>>0){continue e}if(!sr){break c}break d}or=or+1|0;qr=q[a+8>>2];continue}}}q[q[Dr>>2]+(xr<<2)>>2]=ur;pr=Ar+q[Br>>2]|0;q[pr>>2]=zr|q[pr>>2];vr=1;xr=xr+1|0}ur=ur+1|0;or=q[wr>>2];sr=or-qr>>2;if(ur>>>0<sr>>>0){continue}break}pr=vr}if(pr&1|xr>>>0>=sr>>>0){continue}break b}break}q[tr+40>>2]=0;q[tr+32>>2]=0;q[tr+36>>2]=0;pr=q[a+4>>2];vr=q[pr+12>>2];pr=q[pr+8>>2];o[tr+15|0]=0;yr=nl(tr+16|0,vr-pr>>2,tr+15|0);Er=1;or=q[a+8>>2];Ar=a+12|0;pr=q[Ar>>2];g:{if((or|0)==(pr|0)){break g}vr=0;while(1){h:{wr=q[q[Dr>>2]+(vr<<2)>>2]<<2;rr=q[wr+or>>2];rr=q[rr+8>>2]-q[rr+4>>2]|0;if((rr|0)<8){break h}qr=rr>>2;or=q[tr+32>>2];pr=q[tr+36>>2]-or>>2;i:{if(qr>>>0>pr>>>0){pf(tr+32|0,qr-pr|0);break i}if(qr>>>0>=pr>>>0){break i}q[tr+36>>2]=or+(qr<<2)}ur=0;while(1){rr=0;xr=0;j:{if((ur|0)<(qr|0)){while(1){pr=1;Fr=1<<(rr&31);zr=rr>>>5<<2;k:{if(Fr&q[zr+q[yr>>2]>>2]){break k}sr=q[wr+q[a+8>>2]>>2];Cr=q[q[sr+4>>2]+(rr<<2)>>2];or=0;while(1){if((or|0)<(n[q[q[sr>>2]+24>>2]](sr,Cr)|0)){sr=q[wr+q[a+8>>2]>>2];sr=n[q[q[sr>>2]+28>>2]](sr,Cr,or)|0;sr=q[q[yr>>2]+(sr>>>3&536870908)>>2]&1<<(sr&31);if(!sr){break k}or=or+1|0;pr=(sr|0)!=0≺sr=q[wr+q[a+8>>2]>>2];continue}break}if(!(pr&1)){break k}q[q[tr+32>>2]+(ur<<2)>>2]=rr;pr=zr+q[yr>>2]|0;q[pr>>2]=Fr|q[pr>>2];xr=1;ur=ur+1|0}rr=rr+1|0;if((rr|0)<(qr|0)){continue}break j}}ol(q[wr+q[a+8>>2]>>2],tr+32|0);pr=q[Ar>>2];or=q[a+8>>2];break h}if(((ur|0)>=(qr|0)|xr)&1){continue}break}Er=0;break g}vr=vr+1|0;if(vr>>>0<pr-or>>2>>>0){continue}break}}a=q[yr>>2];if(a){pp(a)}a=q[tr+32>>2];if(!a){break b}q[tr+36>>2]=a;pp(a)}a=q[Br>>2];if(a){pp(a)}T=tr- -64|0;return Er}function nl(a,Gr,Hr){var Ir=0,Jr=0,Kr=0;q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;a:{b:{if(!Gr){break b}if((Gr|0)<=-1){break a}Jr=Gr+ -1>>>5;Kr=Jr+1|0;Ir=zo(Kr<<2);q[a+8>>2]=Kr;q[a>>2]=Ir;Kr=r[Hr|0];q[a+4>>2]=Gr;q[(Gr>>>0<33?Ir:Ir+(Jr<<2)|0)>>2]=0;Hr=Gr>>>5;Jr=Hr<<2;if(Kr){Ir=wp(Ir,255,Jr);Gr=Gr&31;if(!Gr){break b}Hr=Ir+(Hr<<2)|0;q[Hr>>2]=q[Hr>>2]|-1>>>32-Gr;return a}Ir=wp(Ir,0,Jr);Gr=Gr&31;if(!Gr){break b}Hr=Ir+(Hr<<2)|0;q[Hr>>2]=q[Hr>>2]&(-1>>>32-Gr^-1)}return a}To();F()}function ol(a,Gr){var Hr=0,Lr=0,Mr=0,Nr=0,Or=0,Pr=0,Qr=0,Rr=0,Sr=0,Tr=0,Ur=0;Mr=T-16|0;T=Mr;Qr=a+8|0;Hr=q[a+4>>2];q[Qr>>2]=Hr;Rr=a+20|0;Nr=q[a+16>>2];q[Rr>>2]=Nr;Or=q[Gr>>2];Sr=q[Gr+4>>2];if((Or|0)!=(Sr|0)){Gr=a+16|0;Tr=a+4|0;Ur=a+12|0;while(1){Lr=q[Or>>2];q[Mr+12>>2]=Lr;a:{if(q[Ur>>2]!=(Hr|0)){q[Hr>>2]=Lr;q[Qr>>2]=Hr+4;break a}pd(Tr,Mr+12|0);Nr=q[Gr>>2]}Hr=q[Mr+12>>2];Lr=q[Rr>>2]-Nr>>2;b:{if((Hr|0)<(Lr|0)){break b}q[Mr+8>>2]=-1;Pr=Hr+1|0;if(Pr>>>0>Lr>>>0){qd(Gr,Pr-Lr|0,Mr+8|0);Nr=q[Gr>>2];Hr=q[Mr+12>>2];break b}if(Pr>>>0>=Lr>>>0){break b}q[Rr>>2]=(Pr<<2)+Nr}Lr=(Hr<<2)+Nr|0;Hr=q[Qr>>2];q[Lr>>2]=(Hr-q[a+4>>2]>>2)+ -1;Or=Or+4|0;if((Sr|0)!=(Or|0)){continue}break}}T=Mr+16|0}
function pl(a){a=a|0;var b=0,c=0,d=0,e=0,f=0,g=0,h=0;b=q[a+4>>2];b=q[b+12>>2]-q[b+8>>2]|0;a:{b:{if((b|0)<1){c=b>>2;break b}b=0;while(1){if(!n[q[q[a>>2]+36>>2]](a,b)){break a}b=b+1|0;c=q[a+4>>2];c=q[c+12>>2]-q[c+8>>2]>>2;if((b|0)<(c|0)){continue}break}}f=a+20|0;d=q[a+20>>2];b=q[a+24>>2]-d>>2;c:{if(c>>>0>b>>>0){pf(f,c-b|0);break c}if(c>>>0>=b>>>0){break c}q[a+24>>2]=d+(c<<2)}d=1;c=q[a+8>>2];a=q[a+12>>2];if((c|0)==(a|0)){break a}g=a-c>>2;b=0;while(1){a=q[(b<<2)+c>>2];e=q[a+8>>2];d=q[a+4>>2];if((e|0)!=(d|0)){e=e-d>>2;h=q[f>>2];a=0;while(1){q[(q[d+(a<<2)>>2]<<2)+h>>2]=b;a=a+1|0;if(a>>>0<e>>>0){continue}break}}d=1;b=b+1|0;if(b>>>0<g>>>0){continue}break}}return d|0}function ql(a){a=a|0;var i=0,j=0,k=0,l=0,m=0;j=1;i=q[a+32>>2];k=q[a+36>>2];a:{if((i|0)==(k|0)){break a}m=a+8|0;while(1){l=q[q[m>>2]+(q[i>>2]<<2)>>2];if(n[q[q[l>>2]+20>>2]](l,q[a+44>>2])){i=i+4|0;if((k|0)!=(i|0)){continue}break a}break}j=0}return j|0}function rl(a,o){var p=0;a:{if((o|0)<0){break a}p=q[a+4>>2];if(q[p+12>>2]-q[p+8>>2]>>2<=(o|0)){break a}a=q[q[a+8>>2]+(q[q[a+20>>2]+(o<<2)>>2]<<2)>>2];n[q[q[a>>2]+32>>2]](a,o)|0}}function sl(a,o){var r=0,s=0;a:{if((o|0)<0){break a}r=q[a+4>>2];if(q[r+12>>2]-q[r+8>>2]>>2<=(o|0)){break a}a=q[q[a+8>>2]+(q[q[a+20>>2]+(o<<2)>>2]<<2)>>2];s=n[q[q[a>>2]+36>>2]](a,o)|0}return s}function tl(a,n){a=a|0;n=n|0;q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0}function ul(a,n){a=a|0;n=n|0;var o=0,u=0;o=T-16|0;T=o;q[o+12>>2]=q[q[n+4>>2]+80>>2];n=q[n+44>>2];u=q[n+20>>2];if((u|0)<0?1:(u|0)<=0?t[n+16>>2]>0?0:1:0){Vb(n,q[n+4>>2],o+12|0,o+16|0)}q[a>>2]=0;q[a+4>>2]=0;q[a+8>>2]=0;q[a+12>>2]=0;T=o+16|0}function vl(a,v){a=a|0;v=v|0;var w=0,x=0,y=0,z=0;x=T-16|0;T=x;y=a+8|0;w=q[y>>2];z=a+12|0;a:{if((w|0)==q[z>>2]){w=zo(76);Ad(w,v);q[x>>2]=w;v=q[z>>2];b:{if(v>>>0<t[a+16>>2]){q[x>>2]=0;q[v>>2]=w;q[a+12>>2]=v+4;break b}Ij(y,x)}a=q[x>>2];q[x>>2]=0;if(!a){break a}n[q[q[a>>2]+4>>2]](a);break a}a=q[w>>2];q[x+12>>2]=v;w=q[a+8>>2];c:{if((w|0)!=q[a+12>>2]){q[w>>2]=v;q[a+8>>2]=w+4;break c}pd(a+4|0,x+12|0)}v=q[x+12>>2];w=q[a+16>>2];z=q[a+20>>2]-w>>2;d:{if((v|0)<(z|0)){break d}q[x+8>>2]=-1;y=v+1|0;if(y>>>0>z>>>0){v=a+16|0;qd(v,y-z|0,x+8|0);w=q[v>>2];v=q[x+12>>2];break d}if(y>>>0>=z>>>0){break d}q[a+20>>2]=(y<<2)+w}q[(v<<2)+w>>2]=(q[a+8>>2]-q[a+4>>2]>>2)+ -1}T=x+16|0;return 1}function wl(a){a=a|0;q[a+52>>2]=q[q[a+4>>2]+80>>2]}function xl(a,n,t){var v=0,A=0,B=0;if((n|0)>0){while(1){A=v<<2;B=q[A+a>>2];q[t+A>>2]=B<<1^B>>31;v=v+1|0;if((v|0)!=(n|0)){continue}break}}}function yl(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 zl(a,n,t){var C=0;t=n>>>0<0?t+1|0:t;if((t|0)<0?1:(t|0)<=0?n>>>0>=0?0:1:0){return 0}C=q[a>>2];t=q[a+4>>2]-C|0;a:{if(t>>>0<n>>>0){Al(a,n-t|0);break a}if(t>>>0<=n>>>0){break a}q[a+4>>2]=n+C}n=a+24|0;t=n;C=n;a=q[n+4>>2];n=q[n>>2]+1|0;if(n>>>0<1){a=a+1|0}q[C>>2]=n;q[t+4>>2]=a;return 1}function Al(a,n){var t=0,D=0,E=0,G=0,H=0,I=0;a:{D=q[a+8>>2];E=a+4|0;t=q[E>>2];b:{if(D-t>>>0>=n>>>0){while(1){o[t|0]=0;t=q[E>>2]+1|0;q[E>>2]=t;n=n+ -1|0;if(n){continue}break b}}G=q[a>>2];H=t-G|0;t=H+n|0;if((t|0)<=-1){break a}E=0;D=D-G|0;I=D<<1;D=D>>>0<1073741823?I>>>0<t>>>0?t:I:2147483647;if(D){E=zo(D)}t=E+H|0;wp(t,0,n);D=D+E|0;while(1){t=t+1|0;n=n+ -1|0;if(n){continue}break}if((H|0)>=1){vp(E,G,H)}q[a>>2]=E;q[a+8>>2]=D;q[a+4>>2]=t;if(!G){break b}pp(G)}return}To();F()}function Bl(a,n){var F=0,J=0;J=q[a>>2];F=q[a+4>>2]-J|0;a:{if(F>>>0<n>>>0){Al(a,n-F|0);break a}if(F>>>0<=n>>>0){break a}q[a+4>>2]=n+J}n=a+24|0;F=n;J=n;a=q[n+4>>2];n=q[n>>2]+1|0;if(n>>>0<1){a=a+1|0}q[J>>2]=n;q[F+4>>2]=a}function Cl(a){a=a+ -1|0;if(a>>>0<=10){return q[(a<<2)+16080>>2]}return-1}function Dl(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 El(a,n){var K=0,L=0;L=q[a>>2];K=q[a+4>>2]-L|0;if(K>>>0<n>>>0){Al(a,n-K|0);return}if(K>>>0>n>>>0){q[a+4>>2]=n+L}}function Fl(a,n,M,N){var O=0,P=0,Q=0;a:{if((M|0)<0?1:(M|0)<=0?n>>>0>=1?0:1:0){break a}O=q[a+20>>2];if((O|0)>0?1:(O|0)>=0?t[a+16>>2]<=0?0:1:0){break a}o[a+24|0]=N;O=a;P=a;n=n+7|0;if(n>>>0<7){M=M+1|0}M=Vp(n,M,8,0);q[P+16>>2]=M;q[O+20>>2]=V;O=q[a>>2];n=q[a+4>>2]-O|0;Q=M;M=n;P=M+8|0;N=N?P:M;P=Q+N|0;M=P;b:{if(n>>>0<M>>>0){Al(a,M-n|0);O=q[a>>2];break b}if(n>>>0<=M>>>0){break b}q[a+4>>2]=M+O}n=zo(8);q[n+4>>2]=0;q[n>>2]=N+O;M=q[a+12>>2];q[a+12>>2]=n;if(!M){break a}pp(M)}}function Gl(a){var n=0,M=0,N=0,R=0,S=0,U=0,V=0;S=T-32|0;T=S;M=q[a+16>>2];n=q[a+20>>2];if((n|0)>0?1:(n|0)>=0?M>>>0<1?0:1:0){n=q[q[a+12>>2]+4>>2]+7|0;if(n>>>0<7){R=1}N=n;n=R>>>3;R=R<<29|N>>>3;N=n;if(r[a+24|0]){U=q[a+4>>2];o[S+24|0]=0;n=S;q[n+16>>2]=0;q[n+20>>2]=0;q[n+8>>2]=0;q[n+12>>2]=0;q[n>>2]=0;q[n+4>>2]=0;ui(R,N,n);M=U-M|0;U=M+ -8|0;N=q[n+4>>2]-q[n>>2]|0;xp(U+N|0,M,R);vp(U,q[n>>2],N);n=a;V=n;M=q[n+20>>2];N=8-N|0;U=N+q[n+16>>2]|0;if(U>>>0<N>>>0){M=M+1|0}q[V+16>>2]=U;q[n+20>>2]=M;n=q[S+12>>2];q[S+12>>2]=0;if(n){pp(n)}n=q[S>>2];if(n){q[S+4>>2]=n;pp(n)}M=q[a+16>>2]}N=q[a>>2];n=q[a+4>>2]-N|0;R=R-M|0;M=n+R|0;a:{if(M>>>0>n>>>0){Al(a,R);break a}if(M>>>0>=n>>>0){break a}q[a+4>>2]=M+N}q[a+16>>2]=0;q[a+20>>2]=0}T=S+32|0}function Hl(a){var T=0;T=a+4|0;q[T>>2]=0;q[T+4>>2]=0;q[a>>2]=T;return a}function Il(a,W,X){var Y=0;Y=T-48|0;T=Y;Oo(Y+8|0,X);q[Y+32>>2]=W;yh(Y+40|0,a,W,Y+32|0);a=q[Y+40>>2];W=a+28|0;a:{if(o[a+39|0]>=0){o[W+11|0]=0;o[W|0]=0;break a}o[q[a+28>>2]]=0;q[a+32>>2]=0;if(o[a+39|0]>-1){break a}pp(q[a+28>>2]);q[a+36>>2]=0}a=q[Y+12>>2];q[W>>2]=q[Y+8>>2];q[W+4>>2]=a;q[W+8>>2]=q[Y+16>>2];T=Y+48|0}function Jl(a,W,X){var Z=0;Z=T-48|0;T=Z;Ro(Z+8|0,X);q[Z+32>>2]=W;yh(Z+40|0,a,W,Z+32|0);a=q[Z+40>>2];W=a+28|0;a:{if(o[a+39|0]>=0){o[W+11|0]=0;o[W|0]=0;break a}o[q[a+28>>2]]=0;q[a+32>>2]=0;if(o[a+39|0]>-1){break a}pp(q[a+28>>2]);q[a+36>>2]=0}a=q[Z+12>>2];q[W>>2]=q[Z+8>>2];q[W+4>>2]=a;q[W+8>>2]=q[Z+16>>2];T=Z+48|0}function Kl(a,W){W=de(a,W);if((W|0)==(a+4|0)){return-1}a=W+28|0;if(o[W+39|0]<=-1){a=q[a>>2]}return un(a)}function Ll(a,W,X){W=de(a,W);if((W|0)!=(a+4|0)){a=W+28|0;if(o[W+39|0]<=-1){a=q[a>>2]}X=un(a)}return X}function Ml(a,W){var X=x(0);W=de(a,W);if((W|0)!=(a+4|0)){a=W+28|0;if(o[W+39|0]<=-1){a=q[a>>2]}X=x(sn(a))}else{X=x(1)}return X}function Nl(a,W){a:{W=de(a,W);if((W|0)==(a+4|0)){break a}a=W+28|0;if(o[W+39|0]<=-1){a=q[a>>2]}a=un(a);if((a|0)==-1){break a}return(a|0)!=0}return 0}function Ol(a,W,_){W=de(a,W);a:{if((W|0)==(a+4|0)){break a}a=W+28|0;if(o[W+39|0]<=-1){a=q[a>>2]}a=un(a);if((a|0)==-1){break a}_=(a|0)!=0}return _}function Pl(a){q[a>>2]=1065353216;return a}function Ql(a,q,W){u[a>>2]=x(W|0)/q}function Rl(a,W){var _=0,$=0,aa=0;aa=T-16|0;T=aa;$=zo(88);_=$;q[_>>2]=0;q[_+4>>2]=0;q[_+56>>2]=0;q[_+48>>2]=0;q[_+52>>2]=0;q[_+40>>2]=0;q[_+44>>2]=0;q[_+32>>2]=0;q[_+36>>2]=0;q[_+24>>2]=0;q[_+28>>2]=0;q[_+16>>2]=0;q[_+20>>2]=0;q[_+8>>2]=0;q[_+12>>2]=0;_=_- -64|0;q[_>>2]=0;q[_+4>>2]=0;q[$+72>>2]=0;q[$+76>>2]=0;q[$+80>>2]=0;q[$+84>>2]=0;q[$+60>>2]=$;q[aa+8>>2]=$;a:{if(Sl($,W)){q[a>>2]=q[aa+8>>2];q[aa+8>>2]=0;break a}q[a>>2]=0;a=q[aa+8>>2];q[aa+8>>2]=0;if(!a){break a}Oj(a)}T=aa+16|0}function Sl(a,W){var ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0;ea=T-16|0;T=ea;q[a+80>>2]=0;q[a+84>>2]=0;ba=a+76|0;ca=q[ba>>2];q[ba>>2]=0;if(ca){pp(ca)}q[a+68>>2]=0;q[a+72>>2]=0;ba=a- -64|0;ca=q[ba>>2];q[ba>>2]=0;if(ca){pp(ca)}ga=W+4|0;ba=q[ga>>2];ca=q[W>>2];da=w((ba-ca|0)/12|0,3);ha=q[a>>2];fa=q[a+4>>2]-ha>>2;a:{if(da>>>0>fa>>>0){nk(a,da-fa|0);ba=q[ga>>2];ca=q[W>>2];break a}if(da>>>0>=fa>>>0){break a}q[a+4>>2]=(da<<2)+ha}if((ba|0)!=(ca|0)){fa=(ba-ca|0)/12|0;ga=q[a>>2];W=0;while(1){da=w(W,12);ba=da+ga|0;da=ca+da|0;q[ba>>2]=q[da>>2];q[ba+4>>2]=q[da+4>>2];q[ba+8>>2]=q[da+8>>2];W=W+1|0;if(W>>>0<fa>>>0){continue}break}}q[ea+12>>2]=-1;W=0;if(Tl(a,ea+12|0)){Ul(a);Vl(a,q[ea+12>>2]);W=1}T=ea+16|0;return W}function Tl(a,W){var 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,Aa=0,Ba=0,Ca=0;ka=T-48|0;T=ka;if(W){za=a+12|0;ja=a+4|0;pa=q[ja>>2];qa=q[a>>2];na=pa-qa|0;la=na>>2;ia=q[a+12>>2];ma=q[a+16>>2]-ia>>2;a:{if(la>>>0>ma>>>0){Wl(za,la-ma|0);pa=q[ja>>2];qa=q[a>>2];na=pa-qa|0;la=na>>2;break a}if(la>>>0>=ma>>>0){break a}q[a+16>>2]=ia+(la<<2)}ja=0;q[ka+40>>2]=0;q[ka+32>>2]=0;q[ka+36>>2]=0;b:{c:{d:{if(!la){ia=0;ma=0;break d}if(la>>>0>=1073741824){break c}ia=zo(na);q[ka+36>>2]=ia;q[ka+32>>2]=ia;q[ka+40>>2]=(la<<2)+ia;ma=ia}e:{if(!na){break e}oa=a+4|0;ja=ma;sa=ja;na=0;while(1){ra=q[(na<<2)+qa>>2];sa=sa-ja>>2;if(ra>>>0>=sa>>>0){q[ka+16>>2]=0;ia=ra+1|0;f:{if(ia>>>0>sa>>>0){qd(ka+32|0,ia-sa|0,ka+16|0);pa=q[oa>>2];qa=q[a>>2];break f}if(ia>>>0>=sa>>>0){break f}q[ka+36>>2]=(ia<<2)+ja}ia=q[ka+32>>2];ma=ia}ja=(ra<<2)+ia|0;q[ja>>2]=q[ja>>2]+1;na=na+1|0;ja=pa-qa|0;la=ja>>2;if(na>>>0>=la>>>0){break e}sa=q[ka+36>>2];ja=ia;continue}}q[ka+24>>2]=0;q[ka+16>>2]=0;q[ka+20>>2]=0;na=0;g:{if(ja){if(la>>>0>=536870912){break g}na=zo(ja<<1);q[ka+16>>2]=na;q[ka+20>>2]=na;ja=la<<3;q[ka+24>>2]=ja+na;ja=wp(na,255,ja);while(1){ja=ja+8|0;la=la+ -1|0;if(la){continue}break}q[ka+20>>2]=ja}q[ka+8>>2]=0;q[ka>>2]=0;q[ka+4>>2]=0;ja=q[ka+36>>2]-ma|0;wa=ja>>2;h:{if(ja){if(wa>>>0>=1073741824){break h}ta=zo(ja);q[ka>>2]=ta;q[ka+8>>2]=(wa<<2)+ta;la=0;oa=wp(ta,0,ja);q[ka+4>>2]=oa+ja;ja=0;while(1){ma=ja<<2;q[ma+oa>>2]=la;la=q[ia+ma>>2]+la|0;ja=ja+1|0;if(ja>>>0<wa>>>0){continue}break}}if((pa|0)==(qa|0)){break b}Ca=pa-qa>>2;oa=0;Aa=q[ka+32>>2];while(1){xa=oa<<2;sa=q[xa+qa>>2];pa=-1;ja=oa+1|0;ia=(ja>>>0)%3|0?ja:oa+ -2|0;if((ia|0)!=-1){pa=q[(ia<<2)+qa>>2]}ua=-1;ma=(oa>>>0)%3|0;ia=(ma?-1:2)+oa|0;if((ia|0)!=-1){ua=q[(ia<<2)+qa>>2]}i:{j:{if(ma){break j}k:{if((pa|0)==(ua|0)){break k}ia=q[qa+xa>>2];if((ia|0)==(pa|0)){break k}if((ia|0)!=(ua|0)){break j}}q[a+40>>2]=q[a+40>>2]+1;ja=oa+3|0;break i}ia=ua<<2;ya=q[ia+Aa>>2];l:{m:{if((ya|0)<1){break m}ia=q[ia+ta>>2];la=0;while(1){ra=(ia<<3)+na|0;ma=q[ra>>2];if((ma|0)==-1){break m}n:{if((ma|0)!=(pa|0)){break n}va=q[ra+4>>2];if((va|0)!=-1){ma=q[(va<<2)+qa>>2]}else{ma=-1}if((ma|0)==(sa|0)){break n}while(1){ma=ia;la=la+1|0;o:{if((la|0)>=(ya|0)){break o}Ba=(ma<<3)+na|0;ia=ma+1|0;sa=(ia<<3)+na|0;ra=q[sa>>2];q[Ba>>2]=ra;q[Ba+4>>2]=q[sa+4>>2];if((ra|0)!=-1){continue}}break}q[(ma<<3)+na>>2]=-1;if((va|0)==-1){break m}ia=q[za>>2];q[ia+xa>>2]=va;q[ia+(va<<2)>>2]=oa;break l}ia=ia+1|0;la=la+1|0;if((ya|0)!=(la|0)){continue}break}}ia=pa<<2;ma=q[ia+Aa>>2];if((ma|0)<1){break l}ia=q[ia+ta>>2];la=0;while(1){ra=(ia<<3)+na|0;if(q[ra>>2]==-1){q[ra>>2]=ua;q[ra+4>>2]=oa;break l}ia=ia+1|0;la=la+1|0;if((ma|0)!=(la|0)){continue}break}}}oa=ja;if(oa>>>0<Ca>>>0){continue}break}break b}To();F()}To();F()}Qb(16132);F()}q[W>>2]=wa;if(ta){q[ka+4>>2]=ta;pp(ta)}a=q[ka+16>>2];if(a){q[ka+20>>2]=a;pp(a)}a=q[ka+32>>2];if(a){q[ka+36>>2]=a;pp(a)}a=1}else{a=0}T=ka+48|0;return a}function Ul(a){var W=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;Ea=T-48|0;T=Ea;Ma=a+4|0;W=q[Ma>>2];Ka=q[a>>2];o[Ea+16|0]=0;Na=nl(Ea+32|0,W-Ka>>2,Ea+16|0);q[Ea+24>>2]=0;q[Ea+16>>2]=0;q[Ea+20>>2]=0;W=q[Ma>>2];Ia=q[a>>2];Ja=a+12|0;while(1){Oa=0;Ha=0;a:{if((W|0)==(Ia|0)){break a}while(1){Fa=q[Na>>2];b:{if(q[Fa+(Ha>>>3&536870908)>>2]>>>(Ha&31)&1){break b}Ga=q[Ea+16>>2];q[Ea+20>>2]=Ga;W=Ha;while(1){Da=W+1|0;Ka=W;W=(Da>>>0)%3|0?Da:W+ -2|0;c:{if((W|0)==-1){break c}W=q[q[Ja>>2]+(W<<2)>>2];if((W|0)==-1){break c}Da=W+1|0;W=(Da>>>0)%3|0?Da:W+ -2|0;if((Ha|0)==(W|0)|(W|0)==-1){break c}if(!(q[(W>>>3&536870908)+Fa>>2]>>>(W&31)&1)){continue}}break}W=Ga;Da=Ka;while(1){Fa=(Da>>>3&536870908)+Fa|0;q[Fa>>2]=q[Fa>>2]|1<<(Da&31);Fa=Da+1|0;Pa=(Fa>>>0)%3|0?Fa:Da+ -2|0;Fa=((Da>>>0)%3|0?-1:2)+Da|0;if((W|0)!=(Ga|0)){Qa=q[(Pa<<2)+Ia>>2];while(1){d:{if((Qa|0)!=q[W>>2]){break d}Da=-1;La=q[W+4>>2];Da=(Fa|0)!=-1?q[q[Ja>>2]+(Fa<<2)>>2]:Da;if((La|0)==(Da|0)){break d}Ga=-1;Ga=(La|0)!=-1?q[q[Ja>>2]+(La<<2)>>2]:Ga;if((Da|0)!=-1){q[q[Ja>>2]+(Da<<2)>>2]=-1}W=q[Ja>>2];if((Ga|0)!=-1){q[W+(Ga<<2)>>2]=-1}q[W+(Fa<<2)>>2]=-1;q[W+(La<<2)>>2]=-1;Oa=1;break b}W=W+8|0;if((Ga|0)!=(W|0)){continue}break}}q[Ea+8>>2]=0;W=Fa<<2;Da=q[W+Ia>>2];q[Ea+12>>2]=Pa;q[Ea+8>>2]=Da;e:{if(q[Ea+24>>2]!=(Ga|0)){Da=q[Ea+12>>2];q[Ga>>2]=q[Ea+8>>2];q[Ga+4>>2]=Da;q[Ea+20>>2]=q[Ea+20>>2]+8;break e}Xl(Ea+16|0,Ea+8|0)}f:{if((Fa|0)==-1){break f}W=q[W+q[Ja>>2]>>2];if((W|0)==-1){break f}Da=W+((W>>>0)%3|0?-1:2)|0;if((Ka|0)==(Da|0)|(Da|0)==-1){break f}Ia=q[a>>2];Fa=q[Na>>2];Ga=q[Ea+20>>2];W=q[Ea+16>>2];continue}break}Ia=q[a>>2]}Ha=Ha+1|0;W=q[Ma>>2];if(Ha>>>0<W-Ia>>2>>>0){continue}break}if(Oa){continue}}break}a=q[Ea+16>>2];if(a){q[Ea+20>>2]=a;pp(a)}a=q[Na>>2];if(a){pp(a)}T=Ea+48|0}function Vl(a,Ra){var 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,kb=0,lb=0,mb=0;Xa=T-48|0;T=Xa;q[a+36>>2]=Ra;bb=a+24|0;Ua=q[a+24>>2];Sa=q[a+28>>2]-Ua>>2;a:{if(Sa>>>0<Ra>>>0){Wl(bb,Ra-Sa|0);break a}if(Sa>>>0<=Ra>>>0){break a}q[a+28>>2]=Ua+(Ra<<2)}o[Xa+16|0]=0;Ya=nl(Xa+32|0,Ra,Xa+16|0);cb=a+4|0;Sa=q[cb>>2];Ua=q[a>>2];o[Xa+8|0]=0;_a=nl(Xa+16|0,Sa-Ua>>2,Xa+8|0);b:{Sa=q[a>>2];if(q[cb>>2]-Sa>>2>>>0<3){break b}ib=a+48|0;db=a+12|0;jb=a+32|0;fb=a+28|0;kb=a+56|0;gb=a+52|0;while(1){$a=w(eb,3);Va=q[($a<<2)+Sa>>2];Wa=0;Ta=-1;Ua=$a+1|0;c:{if((Ua|0)!=-1){Ta=q[(Ua<<2)+Sa>>2];Wa=$a+2|0;Ua=-1;if((Wa|0)==-1){break c}}Ua=q[(Wa<<2)+Sa>>2]}d:{if(!((Ua|0)==(Ta|0)|(Ta|0)==(Va|0)|(Ua|0)==(Va|0))){Za=q[_a>>2];ab=0;while(1){Ua=$a+ab|0;e:{if(q[(Ua>>>3&536870908)+Za>>2]>>>(Ua&31)&1){break e}Wa=q[q[a>>2]+(Ua<<2)>>2];q[Xa+8>>2]=Wa;Sa=1<<(Wa&31);Ta=q[Ya>>2];Wa=Wa>>>5;Za=q[Ta+(Wa<<2)>>2];Va=0;f:{if(!(Sa&Za)){break f}Sa=q[fb>>2];g:{if((Sa|0)!=q[jb>>2]){q[Sa>>2]=-1;q[fb>>2]=Sa+4;break g}Tj(bb,16128)}Sa=q[gb>>2];h:{if((Sa|0)!=q[kb>>2]){q[Sa>>2]=q[Xa+8>>2];q[gb>>2]=Sa+4;break h}Yl(ib,Xa+8|0)}Sa=q[Ya+4>>2];Va=q[Ya+8>>2];if((Sa|0)==Va<<5){if((Sa+1|0)<=-1){break d}Ta=Ya;if(Sa>>>0<=1073741822){Sa=Sa+32&-32;Va=Va<<6;Sa=Va>>>0<Sa>>>0?Sa:Va}else{Sa=2147483647}Oe(Ta,Sa);Sa=q[Ya+4>>2]}q[Ya+4>>2]=Sa+1;Ta=q[Ya>>2];Va=Ta+(Sa>>>3&536870908)|0;Wa=q[Va>>2];lb=Va,mb=Yp(-2,Sa)&Wa,q[lb>>2]=mb;q[Xa+8>>2]=Ra;Sa=1<<(Ra&31);Wa=Ra>>>5;Za=q[(Wa<<2)+Ta>>2];Ra=Ra+1|0;Va=1}q[(Wa<<2)+Ta>>2]=Sa|Za;Za=q[_a>>2];Sa=Ua;i:{while(1){if((Sa|0)==-1){break i}Ta=(Sa>>>3&536870908)+Za|0;q[Ta>>2]=q[Ta>>2]|1<<(Sa&31);Ta=q[Xa+8>>2];q[q[bb>>2]+(Ta<<2)>>2]=Sa;if(Va){q[q[a>>2]+(Sa<<2)>>2]=Ta}Wa=Ua;Ta=Sa+1|0;Sa=(Ta>>>0)%3|0?Ta:Sa+ -2|0;Ta=-1;j:{if((Sa|0)==-1){break j}Sa=q[q[db>>2]+(Sa<<2)>>2];Ta=-1;if((Sa|0)==-1){break j}Ta=Sa+1|0;Ta=(Ta>>>0)%3|0?Ta:Sa+ -2|0}Sa=Ta;if((Wa|0)!=(Sa|0)){continue}break}if((Ua|0)!=-1){break e}}Sa=Ua+((Ua>>>0)%3|0?-1:2)|0;if((Sa|0)==-1){break e}Sa=q[q[db>>2]+(Sa<<2)>>2];if((Sa|0)==-1){break e}Sa=Sa+((Sa>>>0)%3|0?-1:2)|0;if((Sa|0)==-1){break e}Za=q[_a>>2];while(1){Ua=(Sa>>>3&536870908)+Za|0;q[Ua>>2]=q[Ua>>2]|1<<(Sa&31);if(Va){q[q[a>>2]+(Sa<<2)>>2]=q[Xa+8>>2]}Sa=((Sa>>>0)%3|0?-1:2)+Sa|0;if((Sa|0)==-1){break e}Sa=q[q[db>>2]+(Sa<<2)>>2];if((Sa|0)==-1){break e}Sa=Sa+((Sa>>>0)%3|0?-1:2)|0;if((Sa|0)!=-1){continue}break}}ab=ab+1|0;if((ab|0)!=3){continue}break}}eb=eb+1|0;Sa=q[a>>2];if(eb>>>0<(q[cb>>2]-Sa>>2>>>0)/3>>>0){continue}break b}break}To();F()}q[a+44>>2]=0;Ra=q[Ya>>2];Sa=q[Ya+4>>2];Ua=Sa>>>5;Va=Sa&31;if(Ua|Va){Ua=(Ua<<2)+Ra|0;Ta=Ra;Sa=0;while(1){if(!(q[Ta>>2]>>>Sa&1)){hb=hb+1|0;q[a+44>>2]=hb}Wa=(Sa|0)==31;Sa=Wa?0:Sa+1|0;Ta=Wa?Ta+4|0:Ta;if((Ua|0)!=(Ta|0)|(Sa|0)!=(Va|0)){continue}break}}a=q[_a>>2];if(a){pp(a);Ra=q[Ya>>2]}if(Ra){pp(Ra)}T=Xa+48|0}function Wl(a,Ra){var nb=0,ob=0,pb=0,qb=0,rb=0,sb=0;pb=q[a+8>>2];nb=q[a+4>>2];if(pb-nb>>2>>>0>=Ra>>>0){while(1){q[nb>>2]=q[4032];nb=nb+4|0;Ra=Ra+ -1|0;if(Ra){continue}break}q[a+4>>2]=nb;return}a:{qb=q[a>>2];rb=nb-qb|0;sb=rb>>2;nb=sb+Ra|0;if(nb>>>0<1073741824){pb=pb-qb|0;ob=pb>>1;nb=pb>>2>>>0<536870911?ob>>>0<nb>>>0?nb:ob:1073741823;ob=0;b:{if(!nb){break b}if(nb>>>0>=1073741824){break a}ob=zo(nb<<2)}pb=ob+(nb<<2)|0;nb=ob+(sb<<2)|0;while(1){q[nb>>2]=q[4032];nb=nb+4|0;Ra=Ra+ -1|0;if(Ra){continue}break}if((rb|0)>=1){vp(ob,qb,rb)}q[a>>2]=ob;q[a+8>>2]=pb;q[a+4>>2]=nb;if(qb){pp(qb)}return}To();F()}Qb(16132);F()}function Xl(a,Ra){var tb=0,ub=0,vb=0,wb=0,xb=0,yb=0;a:{vb=q[a>>2];yb=q[a+4>>2]-vb|0;tb=yb>>3;ub=tb+1|0;if(ub>>>0<536870912){wb=tb<<3;xb=q[a+8>>2]-vb|0;tb=xb>>2;ub=xb>>3>>>0<268435455?tb>>>0<ub>>>0?ub:tb:536870911;tb=0;b:{if(!ub){break b}if(ub>>>0>=536870912){break a}tb=zo(ub<<3)}wb=wb+tb|0;xb=q[Ra+4>>2];q[wb>>2]=q[Ra>>2];q[wb+4>>2]=xb;Ra=tb+(ub<<3)|0;ub=wb+8|0;if((yb|0)>=1){vp(tb,vb,yb)}q[a>>2]=tb;q[a+8>>2]=Ra;q[a+4>>2]=ub;if(vb){pp(vb)}return}To();F()}Qb(16132);F()}function Yl(a,Ra){var zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0;a:{Bb=q[a>>2];Db=q[a+4>>2]-Bb|0;zb=Db>>2;Ab=zb+1|0;if(Ab>>>0<1073741824){Eb=zb<<2;zb=q[a+8>>2]-Bb|0;Cb=zb>>1;Ab=zb>>2>>>0<536870911?Cb>>>0<Ab>>>0?Ab:Cb:1073741823;zb=0;b:{if(!Ab){break b}if(Ab>>>0>=1073741824){break a}zb=zo(Ab<<2)}Cb=Eb+zb|0;q[Cb>>2]=q[Ra>>2];Ra=zb+(Ab<<2)|0;Ab=Cb+4|0;if((Db|0)>=1){vp(zb,Bb,Db)}q[a>>2]=zb;q[a+8>>2]=Ra;q[a+4>>2]=Ab;if(Bb){pp(Bb)}return}To();F()}Qb(16132);F()}function Zl(a,Ra){var Fb=0,Gb=0,Hb=0,Ib=0;a:{if((Ra|0)==-1){break a}Ra=w(Ra,3);if((Ra|0)==-1){break a}Gb=-1;Hb=q[a>>2];Ib=q[Hb+(Ra<<2)>>2];a=-1;Fb=Ra+1|0;Fb=(Fb>>>0)%3|0?Fb:Ra+ -2|0;if((Fb|0)!=-1){a=q[(Fb<<2)+Hb>>2]}Ra=Ra+((Ra>>>0)%3|0?-1:2)|0;if((Ra|0)!=-1){Gb=q[(Ra<<2)+Hb>>2]}return(a|0)==(Ib|0)|(Gb|0)==(Ib|0)|(a|0)==(Gb|0)}return 1}function _l(a,Ra){var Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0;Lb=-1;a:{if((Ra|0)==-1){break a}Kb=q[q[a+24>>2]+(Ra<<2)>>2];if((Kb|0)==-1){return 0}Lb=0;Mb=a+12|0;a=1;Ra=Kb;while(1){Lb=Lb+1|0;Ob=a;b:{if(a&255){a=0;Jb=Ra+1|0;Ra=(Jb>>>0)%3|0?Jb:Ra+ -2|0;if((Ra|0)==-1){Ra=Kb;break b}Jb=q[q[Mb>>2]+(Ra<<2)>>2];if((Jb|0)==-1){Ra=Kb;break b}Ra=Kb;Nb=Jb+1|0;Jb=(Nb>>>0)%3|0?Nb:Jb+ -2|0;if((Jb|0)==-1){break b}a=Ob;Ra=Jb;if((Kb|0)!=(Ra|0)){break b}break a}a=((Ra>>>0)%3|0?-1:2)+Ra|0;if((a|0)==-1){break a}a=q[q[Mb>>2]+(a<<2)>>2];if((a|0)==-1){break a}if((a>>>0)%3){Ra=a+ -1|0}else{Ra=a+2|0}a=0}if((Ra|0)!=-1){continue}break}}return Lb}function $l(a){Hm(a);q[a+84>>2]=0;q[a+88>>2]=0;q[a>>2]=16208;q[a+92>>2]=0;q[a+96>>2]=0;q[a+100>>2]=0;q[a+104>>2]=0;return a}function am(a){a=a|0;var Ra=0,Pb=0,Qb=0,Rb=0,Sb=0;q[a>>2]=16484;Ra=q[a+68>>2];if(Ra){q[a+72>>2]=Ra;pp(Ra)}Ra=q[a+56>>2];if(Ra){q[a+60>>2]=Ra;pp(Ra)}Ra=q[a+44>>2];if(Ra){q[a+48>>2]=Ra;pp(Ra)}Ra=q[a+32>>2];if(Ra){q[a+36>>2]=Ra;pp(Ra)}Ra=q[a+20>>2];if(Ra){q[a+24>>2]=Ra;pp(Ra)}Qb=q[a+8>>2];if(Qb){Ra=Qb;Sb=a+12|0;Pb=q[Sb>>2];Rb=Ra;a:{if((Ra|0)==(Pb|0)){break a}while(1){Pb=Pb+ -4|0;Ra=q[Pb>>2];q[Pb>>2]=0;if(Ra){Ba(Ra)}if((Pb|0)!=(Qb|0)){continue}break}Rb=q[a+8>>2]}Ra=Rb;q[Sb>>2]=Qb;pp(Ra)}Ra=q[a+4>>2];q[a+4>>2]=0;if(Ra){Gb(Ra)}return a|0}function bm(a,Tb,Ub){a=a|0;Tb=Tb|0;Ub=Ub|0;var Vb=0,Wb=0;Rm(a,Tb,Ub);Vb=q[a+96>>2];a=q[a+100>>2];if((Vb|0)!=(a|0)){Wb=(a-Vb|0)/12|0;Tb=q[Tb>>2];Ub=0;while(1){a=w(Ub,12)+Vb|0;q[a>>2]=q[Tb+(q[a>>2]<<2)>>2];q[a+4>>2]=q[Tb+(q[a+4>>2]<<2)>>2];q[a+8>>2]=q[Tb+(q[a+8>>2]<<2)>>2];Ub=Ub+1|0;if(Ub>>>0<Wb>>>0){continue}break}}}function cm(a){a=a|0;var Tb=0;q[a>>2]=16208;Tb=q[a+96>>2];if(Tb){q[a+100>>2]=Tb;pp(Tb)}Tb=q[a+84>>2];if(Tb){q[a+88>>2]=Tb;pp(Tb)}am(a);return a|0}function dm(a){a=a|0;var Ub=0;q[a>>2]=16208;Ub=q[a+96>>2];if(Ub){q[a+100>>2]=Ub;pp(Ub)}Ub=q[a+84>>2];if(Ub){q[a+88>>2]=Ub;pp(Ub)}am(a);pp(a)}function em(a,Xb,Yb){a=a|0;Xb=Xb|0;Yb=Yb|0;var Zb=0,_b=0;Zb=T-16|0;T=Zb;_b=q[Yb>>2];q[Yb>>2]=0;q[Zb+8>>2]=_b;Lm(a,Xb,Zb+8|0);Yb=q[Zb+8>>2];q[Zb+8>>2]=0;if(Yb){Ba(Yb)}_b=q[a+84>>2];Yb=q[a+88>>2]-_b>>2;a:{if((Yb|0)>(Xb|0)){break a}Xb=Xb+1|0;if(Xb>>>0>Yb>>>0){fm(a+84|0,Xb-Yb|0);break a}if(Xb>>>0>=Yb>>>0){break a}q[a+88>>2]=_b+(Xb<<2)}T=Zb+16|0}function fm(a,Xb){var Yb=0,$b=0,ac=0,bc=0,cc=0,dc=0;ac=q[a+8>>2];Yb=q[a+4>>2];if(ac-Yb>>2>>>0>=Xb>>>0){while(1){q[Yb>>2]=1;Yb=Yb+4|0;Xb=Xb+ -1|0;if(Xb){continue}break}q[a+4>>2]=Yb;return}a:{bc=q[a>>2];cc=Yb-bc|0;dc=cc>>2;Yb=dc+Xb|0;if(Yb>>>0<1073741824){ac=ac-bc|0;$b=ac>>1;Yb=ac>>2>>>0<536870911?$b>>>0<Yb>>>0?Yb:$b:1073741823;$b=0;b:{if(!Yb){break b}if(Yb>>>0>=1073741824){break a}$b=zo(Yb<<2)}ac=$b+(Yb<<2)|0;Yb=$b+(dc<<2)|0;while(1){q[Yb>>2]=1;Yb=Yb+4|0;Xb=Xb+ -1|0;if(Xb){continue}break}if((cc|0)>=1){vp($b,bc,cc)}q[a>>2]=$b;q[a+8>>2]=ac;q[a+4>>2]=Yb;if(bc){pp(bc)}return}To();F()}Qb(16264);F()}function gm(a,Xb){a=a|0;Xb=Xb|0;var ec=0,fc=0,gc=0;Nm(a,Xb);a:{if((Xb|0)<0){break a}ec=q[a+88>>2];fc=q[a+84>>2];if(ec-fc>>2<=(Xb|0)){break a}Xb=fc+(Xb<<2)|0;fc=Xb+4|0;ec=ec-fc|0;gc=ec>>2;if(ec){xp(Xb,fc,ec)}q[a+88>>2]=Xb+(gc<<2)}}function hm(a){q[a>>2]=0;q[a+4>>2]=0;o[a+24|0]=1;q[a+16>>2]=0;q[a+20>>2]=0;q[a+8>>2]=0;q[a+12>>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;q[a+48>>2]=0;q[a+52>>2]=0;q[a+56>>2]=0;q[a+60>>2]=0;q[a+64>>2]=0;q[a+72>>2]=0;q[a+76>>2]=0;q[a+80>>2]=0;q[a+84>>2]=0;q[a+88>>2]=0;q[a+92>>2]=0;q[a+68>>2]=a}function im(a,Xb){var hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0;mc=T-16|0;T=mc;a:{b:{if(Xb){q[a+88>>2]=0;q[a+92>>2]=0;hc=a+84|0;ic=q[hc>>2];q[hc>>2]=0;if(ic){pp(ic)}q[a+76>>2]=0;q[a+80>>2]=0;hc=a+72|0;ic=q[hc>>2];q[hc>>2]=0;if(ic){pp(ic)}ic=Xb+4|0;hc=q[ic>>2];jc=q[Xb>>2];o[mc+15|0]=0;Fj(a,hc-jc>>2,mc+15|0);jc=Xb+28|0;hc=q[jc>>2];kc=q[Xb+24>>2];o[mc+14|0]=0;Fj(a+12|0,hc-kc>>2,mc+14|0);Dj(a+28|0,q[ic>>2]-q[Xb>>2]>>2,16332);ic=q[a+52>>2];kc=q[jc>>2]-q[Xb+24>>2]|0;hc=kc>>2;c:{if(q[a+60>>2]-ic>>2>>>0>=hc>>>0){break c}if(hc>>>0>=1073741824){break b}nc=a+56|0;lc=q[nc>>2];oc=hc<<2;hc=zo(kc);oc=oc+hc|0;kc=lc-ic|0;lc=kc+hc|0;if((kc|0)>=1){vp(hc,ic,kc)}q[a+52>>2]=hc;q[a+60>>2]=oc;q[nc>>2]=lc;if(!ic){break c}pp(ic)}ic=q[a+40>>2];jc=q[jc>>2]-q[Xb+24>>2]|0;hc=jc>>2;d:{if(q[a+48>>2]-ic>>2>>>0>=hc>>>0){break d}if(hc>>>0>=1073741824){break a}kc=a+44|0;nc=q[kc>>2];lc=hc<<2;hc=zo(jc);lc=lc+hc|0;jc=nc-ic|0;nc=jc+hc|0;if((jc|0)>=1){vp(hc,ic,jc)}q[a+40>>2]=hc;q[a+48>>2]=lc;q[kc>>2]=nc;if(!ic){break d}pp(ic)}o[a+24|0]=1;q[a+64>>2]=Xb;a=1}else{a=0}T=mc+16|0;return a}Qb(16336);F()}Qb(16336);F()}function jm(a,Xb,pc,qc){var 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;if(im(a,pc)){q[a+88>>2]=0;q[a+92>>2]=0;uc=a+84|0;pc=q[uc>>2];q[uc>>2]=0;if(pc){pp(pc)}q[a+76>>2]=0;q[a+80>>2]=0;uc=a+72|0;pc=q[uc>>2];q[uc>>2]=0;if(pc){pp(pc)}pc=q[a+64>>2];if(q[pc+4>>2]!=q[pc>>2]){zc=qc+68|0;xc=Xb+96|0;uc=0;while(1){Ac=(uc>>>0)/3|0;sc=Zl(pc,Ac);pc=q[a+64>>2];a:{if(sc){break a}wc=q[q[pc+12>>2]+(uc<<2)>>2];if((wc|0)==-1){sc=q[a>>2]+(uc>>>3&536870908)|0;q[sc>>2]=q[sc>>2]|1<<(uc&31);rc=-1;sc=-1;wc=uc+1|0;wc=(wc>>>0)%3|0?wc:uc+ -2|0;if((wc|0)!=-1){sc=q[q[pc>>2]+(wc<<2)>>2]}wc=q[a+12>>2];vc=wc+(sc>>>3&536870908)|0;q[vc>>2]=q[vc>>2]|1<<(sc&31);sc=((uc>>>0)%3|0?-1:2)+uc|0;if((sc|0)!=-1){rc=q[q[pc>>2]+(sc<<2)>>2]}sc=wc+(rc>>>3&536870908)|0;q[sc>>2]=q[sc>>2]|1<<(rc&31);break a}if(wc>>>0<uc>>>0){break a}sc=-1;vc=wc+((wc>>>0)%3|0?-1:2)|0;Bc=r[qc+84|0];rc=-1;yc=uc+1|0;Cc=uc+ -2|0;tc=(yc>>>0)%3|0?yc:Cc;if((tc|0)>=0){rc=(tc>>>0)/3|0;rc=q[(q[xc>>2]+w(rc,12)|0)+(tc-w(rc,3)<<2)>>2]}sc=(vc|0)>=0?q[(q[xc>>2]+w((vc>>>0)/3|0,12)|0)+((vc>>>0)%3<<2)>>2]:sc;if(!Bc){Dc=q[zc>>2];sc=q[Dc+(sc<<2)>>2];rc=q[(rc<<2)+Dc>>2]}if((rc|0)==(sc|0)){sc=-1;rc=-1;if((tc|0)!=-1){rc=tc+1|0;rc=(rc>>>0)%3|0?rc:tc+ -2|0}b:{if((vc|0)==-1){break b}if((vc>>>0)%3){sc=vc+ -1|0;break b}sc=vc+2|0}vc=-1;tc=-1;if((rc|0)>=0){tc=(rc>>>0)/3|0;tc=q[(q[xc>>2]+w(tc,12)|0)+(rc-w(tc,3)<<2)>>2]}if((sc|0)>=0){rc=(sc>>>0)/3|0;vc=q[(q[xc>>2]+w(rc,12)|0)+(sc-w(rc,3)<<2)>>2]}if(!Bc){sc=q[zc>>2];vc=q[sc+(vc<<2)>>2];tc=q[sc+(tc<<2)>>2]}if((tc|0)==(vc|0)){break a}}o[a+24|0]=0;sc=q[a>>2];rc=sc+(uc>>>3&536870908)|0;q[rc>>2]=q[rc>>2]|1<<(uc&31);sc=sc+(wc>>>3&536870908)|0;q[sc>>2]=q[sc>>2]|1<<(wc&31);sc=-1;rc=-1;vc=(yc>>>0)%3|0?yc:Cc;if((vc|0)!=-1){rc=q[q[pc>>2]+(vc<<2)>>2]}vc=q[a+12>>2];tc=vc+(rc>>>3&536870908)|0;q[tc>>2]=q[tc>>2]|1<<(rc&31);rc=(uc-w(Ac,3)|0?-1:2)+uc|0;if((rc|0)!=-1){sc=q[q[pc>>2]+(rc<<2)>>2]}rc=vc+(sc>>>3&536870908)|0;q[rc>>2]=q[rc>>2]|1<<(sc&31);sc=-1;rc=-1;tc=wc+1|0;tc=(tc>>>0)%3|0?tc:wc+ -2|0;if((tc|0)!=-1){rc=q[q[pc>>2]+(tc<<2)>>2]}tc=vc+(rc>>>3&536870908)|0;q[tc>>2]=q[tc>>2]|1<<(rc&31);rc=wc+((wc>>>0)%3|0?-1:2)|0;if((rc|0)!=-1){sc=q[q[pc>>2]+(rc<<2)>>2]}rc=vc+(sc>>>3&536870908)|0;q[rc>>2]=q[rc>>2]|1<<(sc&31)}uc=uc+1|0;if(uc>>>0<q[pc+4>>2]-q[pc>>2]>>2>>>0){continue}break}}c:{if(!(!Xb|!qc)){km(a,Xb,qc);break c}lm(a)}}}function km(a,Xb,pc){var qc=0,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;Fc=T-32|0;T=Fc;Gc=a+56|0;q[Gc>>2]=q[a+52>>2];Hc=a+44|0;q[Hc>>2]=q[a+40>>2];qc=q[a+64>>2];if(q[qc+28>>2]!=q[qc+24>>2]){Lc=a+40|0;Mc=a+52|0;Nc=pc+68|0;Oc=a+60|0;Pc=a+48|0;Qc=Xb+96|0;while(1){Xb=q[q[qc+24>>2]+(Ic<<2)>>2];if((Xb|0)!=-1){if((Xb|0)<0){qc=-1}else{Ec=(Xb>>>0)/3|0;qc=q[(q[Qc>>2]+w(Ec,12)|0)+(Xb-w(Ec,3)<<2)>>2]}qc=r[pc+84|0]?qc:q[q[Nc>>2]+(qc<<2)>>2];q[Fc+24>>2]=qc;Ec=q[Gc>>2];a:{if(Ec>>>0<t[Oc>>2]){q[Ec>>2]=qc;q[Gc>>2]=Ec+4;break a}mm(Mc,Fc+24|0)}q[Fc+24>>2]=Xb;q[Fc+16>>2]=0;b:{if(!(q[q[a+12>>2]+(Ic>>>3&536870908)>>2]>>>(Ic&31)&1)){break b}c:{Ec=Xb+1|0;Ec=(Ec>>>0)%3|0?Ec:Xb+ -2|0;if(!((Ec|0)==-1|q[q[a>>2]+(Ec>>>3&536870908)>>2]>>>(Ec&31)&1)){Ec=q[q[q[a+64>>2]+12>>2]+(Ec<<2)>>2];if((Ec|0)!=-1){break c}}q[Fc+16>>2]=-1;break b}qc=Ec+1|0;qc=(qc>>>0)%3|0?qc:Ec+ -2|0;q[Fc+16>>2]=qc;if((qc|0)==-1){break b}while(1){q[Fc+24>>2]=qc;d:{Ec=qc+1|0;Xb=qc;Ec=(Ec>>>0)%3|0?Ec:Xb+ -2|0;if(!((Ec|0)==-1|q[q[a>>2]+(Ec>>>3&536870908)>>2]>>>(Ec&31)&1)){Ec=q[q[q[a+64>>2]+12>>2]+(Ec<<2)>>2];if((Ec|0)!=-1){break d}}q[Fc+16>>2]=-1;break b}qc=Ec+1|0;qc=(qc>>>0)%3|0?qc:Ec+ -2|0;q[Fc+16>>2]=qc;if((qc|0)!=-1){continue}break}}Rc=a+28|0;q[q[Rc>>2]+(Xb<<2)>>2]=Jc;Xb=q[Hc>>2];e:{if((Xb|0)!=q[Pc>>2]){q[Xb>>2]=q[Fc+24>>2];q[Hc>>2]=Xb+4;break e}Tj(Lc,Fc+24|0)}Ec=Jc+1|0;qc=q[a+64>>2];f:{g:{Kc=q[Fc+24>>2];if((Kc|0)==-1){break g}Xb=((Kc>>>0)%3|0?-1:2)+Kc|0;if((Xb|0)==-1){break g}Xb=q[q[qc+12>>2]+(Xb<<2)>>2];if((Xb|0)==-1){break g}Xb=Xb+((Xb>>>0)%3|0?-1:2)|0;q[Fc+16>>2]=Xb;if((Xb|0)==-1|(Xb|0)==(Kc|0)){break f}while(1){qc=Xb+1|0;qc=(qc>>>0)%3|0?qc:Xb+ -2|0;if(q[q[a>>2]+(qc>>>3&536870908)>>2]>>>(qc&31)&1){if((Xb|0)<0){Xb=-1}else{qc=(Xb>>>0)/3|0;Xb=q[(q[Qc>>2]+w(qc,12)|0)+(Xb-w(qc,3)<<2)>>2]}Xb=r[pc+84|0]?Xb:q[q[Nc>>2]+(Xb<<2)>>2];q[Fc+8>>2]=Xb;qc=q[Gc>>2];h:{if(qc>>>0<t[Oc>>2]){q[qc>>2]=Xb;q[Gc>>2]=qc+4;break h}mm(Mc,Fc+8|0)}Xb=Ec+1|0;qc=q[Hc>>2];i:{if((qc|0)!=q[Pc>>2]){q[qc>>2]=q[Fc+16>>2];q[Hc>>2]=qc+4;break i}Tj(Lc,Fc+16|0)}Jc=Ec;Ec=Xb}q[q[Rc>>2]+(q[Fc+16>>2]<<2)>>2]=Jc;qc=q[a+64>>2];Xb=q[Fc+16>>2];if((Xb|0)==-1){break g}Xb=Xb+((Xb>>>0)%3|0?-1:2)|0;if((Xb|0)==-1){break g}Xb=q[q[qc+12>>2]+(Xb<<2)>>2];if((Xb|0)==-1){break g}Xb=Xb+((Xb>>>0)%3|0?-1:2)|0;q[Fc+16>>2]=Xb;if((Xb|0)==-1){break f}if(q[Fc+24>>2]!=(Xb|0)){continue}break}break f}q[Fc+16>>2]=-1}Jc=Ec}Ic=Ic+1|0;if(Ic>>>0<q[qc+28>>2]-q[qc+24>>2]>>2>>>0){continue}break}}T=Fc+32|0}function lm(a){var Xb=0,pc=0,Sc=0,Tc=0,Uc=0,Vc=0,Wc=0,Xc=0,Yc=0,Zc=0,_c=0,$c=0,ad=0;Sc=T-32|0;T=Sc;Vc=a+56|0;q[Vc>>2]=q[a+52>>2];Wc=a+44|0;q[Wc>>2]=q[a+40>>2];Xb=q[a+64>>2];if(q[Xb+28>>2]!=q[Xb+24>>2]){Yc=a+40|0;Zc=a+52|0;_c=a+60|0;$c=a+48|0;while(1){pc=q[q[Xb+24>>2]+(Xc<<2)>>2];a:{if((pc|0)==-1){break a}q[Sc+24>>2]=Uc;Xb=q[Vc>>2];b:{if((Xb|0)!=q[_c>>2]){q[Xb>>2]=Uc;q[Vc>>2]=Xb+4;break b}mm(Zc,Sc+24|0)}q[Sc+16>>2]=pc;q[Sc+8>>2]=0;c:{if(!(q[q[a+12>>2]+(Xc>>>3&536870908)>>2]>>>(Xc&31)&1)){break c}d:{Xb=pc+1|0;Xb=(Xb>>>0)%3|0?Xb:pc+ -2|0;if(!((Xb|0)==-1|q[q[a>>2]+(Xb>>>3&536870908)>>2]>>>(Xb&31)&1)){Xb=q[q[q[a+64>>2]+12>>2]+(Xb<<2)>>2];if((Xb|0)!=-1){break d}}q[Sc+8>>2]=-1;break c}Tc=Xb+1|0;Xb=(Tc>>>0)%3|0?Tc:Xb+ -2|0;q[Sc+8>>2]=Xb;if((Xb|0)==-1){break c}while(1){q[Sc+16>>2]=Xb;e:{Tc=Xb+1|0;pc=Xb;Xb=(Tc>>>0)%3|0?Tc:Xb+ -2|0;if(!((Xb|0)==-1|q[q[a>>2]+(Xb>>>3&536870908)>>2]>>>(Xb&31)&1)){Xb=q[q[q[a+64>>2]+12>>2]+(Xb<<2)>>2];if((Xb|0)!=-1){break e}}q[Sc+8>>2]=-1;break c}Tc=Xb+1|0;Xb=(Tc>>>0)%3|0?Tc:Xb+ -2|0;q[Sc+8>>2]=Xb;if((Xb|0)!=-1){continue}break}}ad=a+28|0;q[q[ad>>2]+(pc<<2)>>2]=q[Sc+24>>2];Xb=q[Wc>>2];f:{if((Xb|0)!=q[$c>>2]){q[Xb>>2]=q[Sc+16>>2];q[Wc>>2]=Xb+4;break f}Tj(Yc,Sc+16|0)}Uc=Uc+1|0;Xb=q[a+64>>2];g:{Tc=q[Sc+16>>2];if((Tc|0)==-1){break g}pc=Tc+((Tc>>>0)%3|0?-1:2)|0;if((pc|0)==-1){break g}pc=q[q[Xb+12>>2]+(pc<<2)>>2];if((pc|0)==-1){break g}pc=pc+((pc>>>0)%3|0?-1:2)|0;q[Sc+8>>2]=pc;if((pc|0)==-1|(pc|0)==(Tc|0)){break a}while(1){Xb=pc+1|0;Xb=(Xb>>>0)%3|0?Xb:pc+ -2|0;h:{if(!(q[q[a>>2]+(Xb>>>3&536870908)>>2]>>>(Xb&31)&1)){break h}q[Sc+24>>2]=Uc;Xb=q[Vc>>2];i:{if((Xb|0)!=q[_c>>2]){q[Xb>>2]=Uc;q[Vc>>2]=Xb+4;break i}mm(Zc,Sc+24|0)}Uc=Uc+1|0;Xb=q[Wc>>2];if((Xb|0)!=q[$c>>2]){q[Xb>>2]=q[Sc+8>>2];q[Wc>>2]=Xb+4;break h}Tj(Yc,Sc+8|0)}q[q[ad>>2]+(q[Sc+8>>2]<<2)>>2]=q[Sc+24>>2];Xb=q[a+64>>2];pc=q[Sc+8>>2];if((pc|0)==-1){break g}pc=pc+((pc>>>0)%3|0?-1:2)|0;if((pc|0)==-1){break g}pc=q[q[Xb+12>>2]+(pc<<2)>>2];if((pc|0)==-1){break g}pc=pc+((pc>>>0)%3|0?-1:2)|0;q[Sc+8>>2]=pc;if((pc|0)==-1){break a}if(q[Sc+16>>2]!=(pc|0)){continue}break}break a}q[Sc+8>>2]=-1}Xc=Xc+1|0;if(Xc>>>0<q[Xb+28>>2]-q[Xb+24>>2]>>2>>>0){continue}break}}T=Sc+32|0}function mm(a,bd){var cd=0,dd=0,ed=0,fd=0,gd=0,hd=0;a:{ed=q[a>>2];gd=q[a+4>>2]-ed|0;cd=gd>>2;dd=cd+1|0;if(dd>>>0<1073741824){hd=cd<<2;cd=q[a+8>>2]-ed|0;fd=cd>>1;dd=cd>>2>>>0<536870911?fd>>>0<dd>>>0?dd:fd:1073741823;cd=0;b:{if(!dd){break b}if(dd>>>0>=1073741824){break a}cd=zo(dd<<2)}fd=hd+cd|0;q[fd>>2]=q[bd>>2];bd=cd+(dd<<2)|0;dd=fd+4|0;if((gd|0)>=1){vp(cd,ed,gd)}q[a>>2]=cd;q[a+8>>2]=bd;q[a+4>>2]=dd;if(ed){pp(ed)}return}To();F()}Qb(16336);F()}function nm(a,q){om(a,q)}function om(a,bd){var id=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;a:{kd=Jm(bd);if(!kd){q[a>>2]=0;break a}ld=q[bd+100>>2];pd=q[bd+96>>2];q[jd+8>>2]=0;q[jd>>2]=0;q[jd+4>>2]=0;bd=ld-pd|0;od=(bd|0)/12|0;b:{if(bd){if(od>>>0>=357913942){break b}md=zo(bd);q[jd>>2]=md;q[jd+4>>2]=md;q[jd+8>>2]=w(od,12)+md;bd=wp(md,0,bd);id=od;while(1){bd=bd+12|0;id=id+ -1|0;if(id){continue}break}q[jd+4>>2]=bd}if((ld|0)!=(pd|0)){bd=0;rd=r[kd+84|0];sd=kd+68|0;while(1){qd=w(bd,12);id=qd+pd|0;kd=q[id>>2];c:{if(rd){ld=id+8|0;id=id+4|0;break c}nd=q[sd>>2];ld=nd+(q[id+8>>2]<<2)|0;kd=q[nd+(kd<<2)>>2];id=nd+(q[id+4>>2]<<2)|0}nd=q[id>>2];id=md+qd|0;q[id+8>>2]=q[ld>>2];q[id+4>>2]=nd;q[id>>2]=kd;bd=bd+1|0;if(bd>>>0<od>>>0){continue}break}}Rl(a,jd);a=q[jd>>2];if(!a){break a}q[jd+4>>2]=a;pp(a);break a}To();F()}T=jd+16|0}function pm(a,bd){var td=0,ud=0,vd=0,wd=0,xd=0,yd=0,zd=0,Ad=0,Bd=0;td=T-32|0;T=td;ud=q[bd+100>>2];yd=q[bd+96>>2];q[td+24>>2]=0;q[td+16>>2]=0;q[td+20>>2]=0;bd=ud-yd|0;xd=(bd|0)/12|0;a:{if(bd){if(xd>>>0>=357913942){break a}wd=zo(bd);q[td+16>>2]=wd;q[td+20>>2]=wd;q[td+24>>2]=w(xd,12)+wd;bd=wp(wd,0,bd);vd=xd;while(1){bd=bd+12|0;vd=vd+ -1|0;if(vd){continue}break}q[td+20>>2]=bd}vd=td+8|0;q[vd>>2]=0;q[td>>2]=0;q[td+4>>2]=0;if((ud|0)!=(yd|0)){bd=0;while(1){zd=w(bd,12);ud=zd+yd|0;q[vd>>2]=q[ud+8>>2];Bd=q[ud+4>>2];Ad=q[ud>>2];q[td>>2]=Ad;q[td+4>>2]=Bd;ud=wd+zd|0;q[ud>>2]=Ad;q[ud+4>>2]=q[td+4>>2];q[ud+8>>2]=q[vd>>2];bd=bd+1|0;if(bd>>>0<xd>>>0){continue}break}}Rl(a,td+16|0);a=q[td+16>>2];if(a){q[td+20>>2]=a;pp(a)}T=td+32|0;return}To();F()}function qm(a,bd,Cd){var Dd=0,Ed=0,Fd=0,Gd=0;td(q[Cd+8>>2],bd);Dd=q[Cd>>2];Gd=Cd+4|0;if((Dd|0)!=(Gd|0)){while(1){Fd=Dd;if(!rm(bd,Dd+16|0)){return}Dd=q[Fd+32>>2]-q[Fd+28>>2]|0;td(Dd,bd);Ed=q[bd+20>>2];if((Ed|0)<0?1:(Ed|0)<=0?t[bd+16>>2]>0?0:1:0){Ed=q[Fd+28>>2];Vb(bd,q[bd+4>>2],Ed,Ed+Dd|0)}Ed=q[Fd+4>>2];a:{if(!Ed){Dd=q[Fd+8>>2];if((Fd|0)==q[Dd>>2]){break a}Ed=Fd+8|0;while(1){Fd=q[Ed>>2];Ed=Fd+8|0;Dd=q[Fd+8>>2];if((Fd|0)!=q[Dd>>2]){continue}break}break a}while(1){Dd=Ed;Ed=q[Dd>>2];if(Ed){continue}break}}if((Dd|0)!=(Gd|0)){continue}break}}td(q[Cd+20>>2],bd);Dd=q[Cd+12>>2];Fd=Cd+16|0;if((Dd|0)!=(Fd|0)){while(1){Cd=Dd;if(!rm(bd,Dd+16|0)){return}qm(a,bd,q[Cd+28>>2]);Ed=q[Cd+4>>2];b:{if(!Ed){Dd=q[Cd+8>>2];if((Cd|0)==q[Dd>>2]){break b}Ed=Cd+8|0;while(1){Cd=q[Ed>>2];Ed=Cd+8|0;Dd=q[Cd+8>>2];if((Cd|0)!=q[Dd>>2]){continue}break}break b}while(1){Dd=Ed;Ed=q[Dd>>2];if(Ed){continue}break}}if((Dd|0)!=(Fd|0)){continue}break}}}function rm(a,bd){var Cd=0,Hd=0,Id=0,Jd=0,Kd=0,Ld=0;Id=T-16|0;T=Id;Cd=r[bd+11|0];Jd=Cd<<24>>24;a:{b:{if((Jd|0)<=-1){Hd=q[bd+4>>2];if(Hd>>>0<=255){break b}break a}Hd=Cd}if(!Hd){o[Id+15|0]=0;bd=q[a+20>>2];if((bd|0)<0?1:(bd|0)<=0?t[a+16>>2]>0?0:1:0){Vb(a,q[a+4>>2],Id+15|0,Id+16|0)}Kd=1;break a}o[Id+14|0]=(Jd|0)<0?q[bd+4>>2]:Cd;Hd=q[a+20>>2];Cd=Hd;Hd=q[a+16>>2];if((Cd|0)<0?1:(Cd|0)<=0?Hd>>>0>0?0:1:0){Vb(a,q[a+4>>2],Id+14|0,Id+15|0);Hd=q[a+16>>2];Jd=r[bd+11|0];Cd=q[a+20>>2]}Kd=1;if((Cd|0)>0?1:(Cd|0)>=0?Hd>>>0<=0?0:1:0){break a}Hd=a;Ld=q[a+4>>2];a=Jd<<24>>24;Cd=(a|0)<0?q[bd>>2]:bd;Vb(Hd,Ld,Cd,Cd+((a|0)<0?q[bd+4>>2]:Jd&255)|0)}T=Id+16|0;return Kd}function sm(a,bd,Md){var Nd=0,Od=0,Pd=0;if(!Md){return 0}Nd=Md+28|0;td(q[Nd>>2]-q[Md+24>>2]>>2,bd);Od=q[Md+24>>2];Pd=q[Nd>>2];if((Od|0)!=(Pd|0)){while(1){Nd=q[Od>>2];if(Nd){td(q[Nd+24>>2],bd);qm(a,bd,Nd)}Od=Od+4|0;if((Pd|0)!=(Od|0)){continue}break}}qm(a,bd,Md);return 1}function tm(a,bd){var Md=0,Qd=0,Rd=0;Qd=q[bd>>2];if(!Qd){return}Md=a+28|0;Rd=q[Md>>2];if(Rd>>>0<t[a+32>>2]){q[bd>>2]=0;q[Rd>>2]=Qd;q[Md>>2]=q[Md>>2]+4;return}um(a+24|0,bd)}function um(a,bd){var Sd=0,Td=0,Ud=0,Vd=0,Wd=0;a:{b:{c:{Ud=q[a>>2];Vd=q[a+4>>2]-Ud>>2;Sd=Vd+1|0;if(Sd>>>0<1073741824){Ud=q[a+8>>2]-Ud|0;Wd=Ud>>1;Sd=Ud>>2>>>0<536870911?Wd>>>0<Sd>>>0?Sd:Wd:1073741823;if(Sd){if(Sd>>>0>=1073741824){break c}Td=zo(Sd<<2)}Ud=q[bd>>2];q[bd>>2]=0;bd=(Vd<<2)+Td|0;q[bd>>2]=Ud;Ud=(Sd<<2)+Td|0;Vd=bd+4|0;Sd=q[a+4>>2];Td=q[a>>2];if((Sd|0)==(Td|0)){break b}while(1){Sd=Sd+ -4|0;Wd=q[Sd>>2];q[Sd>>2]=0;bd=bd+ -4|0;q[bd>>2]=Wd;if((Sd|0)!=(Td|0)){continue}break}Td=q[a+4>>2];Sd=q[a>>2];break a}To();F()}Qb(16404);F()}Sd=Td}q[a>>2]=bd;q[a+8>>2]=Ud;q[a+4>>2]=Vd;if((Sd|0)!=(Td|0)){while(1){Td=Td+ -4|0;a=q[Td>>2];q[Td>>2]=0;if(a){mb(a+12|0,q[a+16>>2]);nb(a,q[a+4>>2]);pp(a)}if((Sd|0)!=(Td|0)){continue}break}}if(Sd){pp(Sd)}}function vm(a,bd){var Xd=0,Yd=0,Zd=0,_d=0,$d=0,ae=0;_d=T-32|0;T=_d;$d=a+4|0;q[$d>>2]=0;q[$d+4>>2]=0;Xd=a+16|0;q[Xd>>2]=0;q[Xd+4>>2]=0;q[a>>2]=$d;q[a+12>>2]=Xd;Xd=q[bd>>2];ae=bd+4|0;if((Xd|0)!=(ae|0)){while(1){Zd=Xd;Yd=Xd+16|0;wm(a,$d,Yd,Yd);Yd=q[Xd+4>>2];a:{if(!Yd){Xd=q[Zd+8>>2];if((Zd|0)==q[Xd>>2]){break a}Yd=Zd+8|0;while(1){Zd=q[Yd>>2];Yd=Zd+8|0;Xd=q[Zd+8>>2];if((Zd|0)!=q[Xd>>2]){continue}break}break a}while(1){Xd=Yd;Yd=q[Xd>>2];if(Yd){continue}break}}if((Xd|0)!=(ae|0)){continue}break}}Xd=q[bd+12>>2];Zd=bd+16|0;if((Xd|0)!=(Zd|0)){$d=a+12|0;while(1){Yd=zo(24);a=Xd;vm(Yd,q[Xd+28>>2]);bd=Xd+16|0;q[_d+16>>2]=bd;xm(_d+24|0,$d,bd,_d+16|0);Xd=q[_d+24>>2]+28|0;bd=q[Xd>>2];q[Xd>>2]=Yd;if(bd){mb(bd+12|0,q[bd+16>>2]);nb(bd,q[bd+4>>2]);pp(bd)}Yd=q[a+4>>2];b:{if(!Yd){Xd=q[a+8>>2];if((a|0)==q[Xd>>2]){break b}Yd=a+8|0;while(1){a=q[Yd>>2];Yd=a+8|0;Xd=q[a+8>>2];if((a|0)!=q[Xd>>2]){continue}break}break b}while(1){Xd=Yd;Yd=q[Xd>>2];if(Yd){continue}break}}if((Xd|0)!=(Zd|0)){continue}break}}T=_d+32|0}function wm(a,bd,be,ce){var de=0;de=T-16|0;T=de;be=wh(a,bd,de+12|0,de+8|0,be);if(!q[be>>2]){bd=zo(40);Fm(bd+16|0,ce);q[bd+8>>2]=q[de+12>>2];q[bd>>2]=0;q[bd+4>>2]=0;q[be>>2]=bd;ce=bd;bd=q[q[a>>2]>>2];if(bd){q[a>>2]=bd;ce=q[be>>2]}th(q[a+4>>2],ce);a=a+8|0;q[a>>2]=q[a>>2]+1}T=de+16|0}function xm(a,bd,be,ce){var ee=0,fe=0,ge=0,he=0;ee=T-16|0;T=ee;he=a;fe=xh(bd,ee+12|0,be);be=q[fe>>2];if(be){bd=0}else{be=zo(32);Do(be+16|0,q[ce>>2]);q[be+28>>2]=0;q[be+8>>2]=q[ee+12>>2];q[be>>2]=0;q[be+4>>2]=0;q[fe>>2]=be;ce=be;ge=q[q[bd>>2]>>2];if(ge){q[bd>>2]=ge;ce=q[fe>>2]}th(q[bd+4>>2],ce);bd=bd+8|0;q[bd>>2]=q[bd>>2]+1;bd=1}o[he+4|0]=bd;q[a>>2]=be;T=ee+16|0}function ym(a,bd,be){var ce=0;ce=T-16|0;T=ce;q[ce+12>>2]=be;zm(a,bd,ce+12|0);T=ce+16|0}function zm(a,bd,be){var ie=0,je=0,ke=0,le=0;ie=T+ -64|0;T=ie;je=de(a,bd);if((je|0)!=(a+4|0)){Am(a,je)}q[ie+16>>2]=0;q[ie+8>>2]=0;q[ie+12>>2]=0;Al(ie+8|0,4);je=q[ie+8>>2];be=q[be>>2];o[je|0]=be;o[je+1|0]=be>>>8;o[je+2|0]=be>>>16;o[je+3|0]=be>>>24;je=Do(ie+24|0,bd);q[ie+44>>2]=0;q[ie+36>>2]=0;q[ie+40>>2]=0;be=q[ie+12>>2];bd=q[ie+8>>2];ke=be-bd|0;if(ke){Al(ie+36|0,ke);be=q[ie+12>>2];le=q[ie+36>>2];bd=q[ie+8>>2]}vp(le,bd,be-bd|0);be=xh(a,ie+60|0,je);if(!q[be>>2]){Bm(ie+48|0,a,ie+24|0);bd=q[ie+48>>2];q[bd+8>>2]=q[ie+60>>2];q[bd>>2]=0;q[bd+4>>2]=0;q[be>>2]=bd;je=q[q[a>>2]>>2];if(je){q[a>>2]=je;bd=q[be>>2]}th(q[a+4>>2],bd);a=a+8|0;q[a>>2]=q[a>>2]+1}a=q[ie+36>>2];if(a){q[ie+40>>2]=a;pp(a)}if(o[ie+35|0]<=-1){pp(q[ie+24>>2])}a=q[ie+8>>2];if(a){q[ie+12>>2]=a;pp(a)}T=ie- -64|0}function Am(a,bd){var be=0,me=0,ne=0;be=q[bd+4>>2];a:{if(!be){me=q[bd+8>>2];if(q[me>>2]==(bd|0)){break a}ne=bd+8|0;while(1){be=q[ne>>2];ne=be+8|0;me=q[be+8>>2];if((be|0)!=q[me>>2]){continue}break}break a}while(1){me=be;be=q[be>>2];if(be){continue}break}}if(q[a>>2]==(bd|0)){q[a>>2]=me}me=a+8|0;q[me>>2]=q[me>>2]+ -1;Gm(q[a+4>>2],bd);a=q[bd+28>>2];if(a){q[bd+32>>2]=a;pp(a)}if(o[bd+27|0]<=-1){pp(q[bd+16>>2])}pp(bd)}function Bm(a,bd,oe){var pe=0,qe=0,re=0,se=0,te=0;pe=zo(40);o[a+8|0]=0;q[a+4>>2]=bd+4;q[a>>2]=pe;bd=oe+8|0;q[pe+24>>2]=q[bd>>2];qe=q[oe+4>>2];q[pe+16>>2]=q[oe>>2];q[pe+20>>2]=qe;q[oe>>2]=0;q[oe+4>>2]=0;q[bd>>2]=0;q[pe+36>>2]=0;q[pe+28>>2]=0;q[pe+32>>2]=0;re=oe+16|0;qe=q[re>>2];bd=q[oe+12>>2];se=qe-bd|0;if(se){bd=pe+28|0;Al(bd,se);qe=q[re>>2];te=q[bd>>2];bd=q[oe+12>>2]}vp(te,bd,qe-bd|0);o[a+8|0]=1}function Cm(a,q,bd){var oe=0;oe=T-16|0;T=oe;v[oe+8>>3]=bd;Dm(a,q,oe+8|0);T=oe+16|0}function Dm(a,bd,ue){var ve=0,we=0,xe=0,ye=0;ve=T+ -64|0;T=ve;we=de(a,bd);if((we|0)!=(a+4|0)){Am(a,we)}q[ve+16>>2]=0;q[ve+8>>2]=0;q[ve+12>>2]=0;Al(ve+8|0,8);xe=q[ue+4>>2];we=q[ve+8>>2];ue=q[ue>>2];o[we|0]=ue;o[we+1|0]=ue>>>8;o[we+2|0]=ue>>>16;o[we+3|0]=ue>>>24;o[we+4|0]=xe;o[we+5|0]=xe>>>8;o[we+6|0]=xe>>>16;o[we+7|0]=xe>>>24;we=Do(ve+24|0,bd);q[ve+44>>2]=0;q[ve+36>>2]=0;q[ve+40>>2]=0;ue=q[ve+12>>2];bd=q[ve+8>>2];xe=ue-bd|0;if(xe){Al(ve+36|0,xe);ue=q[ve+12>>2];ye=q[ve+36>>2];bd=q[ve+8>>2]}vp(ye,bd,ue-bd|0);ue=xh(a,ve+60|0,we);if(!q[ue>>2]){Bm(ve+48|0,a,ve+24|0);bd=q[ve+48>>2];q[bd+8>>2]=q[ve+60>>2];q[bd>>2]=0;q[bd+4>>2]=0;q[ue>>2]=bd;we=q[q[a>>2]>>2];if(we){q[a>>2]=we;bd=q[ue>>2]}th(q[a+4>>2],bd);a=a+8|0;q[a>>2]=q[a>>2]+1}a=q[ve+36>>2];if(a){q[ve+40>>2]=a;pp(a)}if(o[ve+35|0]<=-1){pp(q[ve+24>>2])}a=q[ve+8>>2];if(a){q[ve+12>>2]=a;pp(a)}T=ve- -64|0}function Em(a,bd,ue){var ze=0,Ae=0,Be=0,Ce=0,De=0,Ee=0,Fe=0,Ge=0;ze=T+ -64|0;T=ze;Ae=de(a,bd);if((Ae|0)!=(a+4|0)){Am(a,Ae)}q[ze+16>>2]=0;q[ze+8>>2]=0;q[ze+12>>2]=0;Be=q[ue+4>>2];Ae=o[ue+11|0];Ce=Ae&255;De=(Ae|0)<0?Be:Ce;if(De){Al(ze+8|0,De);Be=q[ue+4>>2];Ee=q[ze+8>>2];Ce=r[ue+11|0];Ae=Ce}Fe=q[ue>>2];De=ue;ue=Ae<<24>>24<0;vp(Ee,ue?Fe:De,ue?Be:Ce);bd=Do(ze+24|0,bd);q[ze+44>>2]=0;q[ze+36>>2]=0;q[ze+40>>2]=0;Ae=q[ze+12>>2];ue=q[ze+8>>2];Be=Ae-ue|0;if(Be){Al(ze+36|0,Be);Ae=q[ze+12>>2];Ge=q[ze+36>>2];ue=q[ze+8>>2]}vp(Ge,ue,Ae-ue|0);bd=xh(a,ze+60|0,bd);if(!q[bd>>2]){Bm(ze+48|0,a,ze+24|0);ue=q[ze+48>>2];q[ue+8>>2]=q[ze+60>>2];q[ue>>2]=0;q[ue+4>>2]=0;q[bd>>2]=ue;Ae=q[q[a>>2]>>2];if(Ae){q[a>>2]=Ae;ue=q[bd>>2]}th(q[a+4>>2],ue);a=a+8|0;q[a>>2]=q[a>>2]+1}a=q[ze+36>>2];if(a){q[ze+40>>2]=a;pp(a)}if(o[ze+35|0]<=-1){pp(q[ze+24>>2])}a=q[ze+8>>2];if(a){q[ze+12>>2]=a;pp(a)}T=ze- -64|0}function Fm(a,bd){var ue=0,He=0,Ie=0,Je=0;Do(a,bd);q[a+20>>2]=0;q[a+12>>2]=0;q[a+16>>2]=0;Ie=bd+16|0;He=q[Ie>>2];ue=q[bd+12>>2];Je=He-ue|0;if(Je){a=a+12|0;Al(a,Je);He=q[Ie>>2];ue=q[bd+12>>2];a=q[a>>2]}else{a=0}vp(a,ue,He-ue|0)}function Gm(a,bd){var Ke=0,Le=0,Me=0,Ne=0,Oe=0,Pe=0;a:{b:{Le=bd;Me=q[bd>>2];if(Me){Ke=q[bd+4>>2];if(!Ke){break b}while(1){Le=Ke;Ke=q[Ke>>2];if(Ke){continue}break}}Me=q[Le+4>>2];if(Me){break b}Me=0;Oe=0;break a}q[Me+8>>2]=q[Le+8>>2];Oe=1}Ne=q[Le+8>>2];Ke=q[Ne>>2];c:{if((Ke|0)==(Le|0)){q[Ne>>2]=Me;if((a|0)==(Le|0)){Ke=0;a=Me;break c}Ke=q[Ne+4>>2];break c}q[Ne+4>>2]=Me}d:{e:{f:{Pe=!r[Le+12|0];if((bd|0)!=(Le|0)){Ne=q[bd+8>>2];q[Le+8>>2]=Ne;q[Ne+((q[q[bd+8>>2]>>2]!=(bd|0))<<2)>>2]=Le;Ne=q[bd>>2];q[Le>>2]=Ne;q[Ne+8>>2]=Le;Ne=q[bd+4>>2];q[Le+4>>2]=Ne;if(Ne){q[Ne+8>>2]=Le}o[Le+12|0]=r[bd+12|0];a=(a|0)==(bd|0)?Le:a}if(!(Pe|!a)){if(!Oe){while(1){bd=r[Ke+12|0];g:{Me=q[Ke+8>>2];if(q[Me>>2]!=(Ke|0)){if(!bd){o[Ke+12|0]=1;o[Me+12|0]=0;bd=Me+4|0;Oe=q[bd>>2];Le=q[Oe>>2];q[bd>>2]=Le;if(Le){q[Le+8>>2]=Me}q[Oe+8>>2]=q[Me+8>>2];bd=q[Me+8>>2];q[((Me|0)==q[bd>>2]?bd:bd+4|0)>>2]=Oe;q[Oe>>2]=Me;q[Me+8>>2]=Oe;bd=q[Ke>>2];a=(bd|0)==(a|0)?Ke:a;Ke=q[bd+4>>2]}Le=q[Ke>>2];if(!(r[Le+12|0]?0:Le)){bd=q[Ke+4>>2];if(r[bd+12|0]?0:bd){break f}o[Ke+12|0]=0;Ke=q[Ke+8>>2];h:{if((Ke|0)==(a|0)){Ke=a;break h}if(r[Ke+12|0]){break g}}o[Ke+12|0]=1;return}bd=q[Ke+4>>2];if(bd){break f}break e}i:{if(bd){bd=Ke;break i}o[Ke+12|0]=1;o[Me+12|0]=0;bd=q[Ke+4>>2];q[Me>>2]=bd;if(bd){q[bd+8>>2]=Me}q[Ke+8>>2]=q[Me+8>>2];Le=q[Me+8>>2];j:{if((Me|0)==q[Le>>2]){q[Le>>2]=Ke;bd=q[Me>>2];break j}q[Le+4>>2]=Ke}q[Ke+4>>2]=Me;q[Me+8>>2]=Ke;a=(a|0)==(Me|0)?Ke:a}Le=q[bd>>2];k:{if(!(!Le|r[Le+12|0])){Ke=bd;break k}Ke=q[bd+4>>2];if(!(r[Ke+12|0]?0:Ke)){o[bd+12|0]=0;Ke=q[bd+8>>2];if(r[Ke+12|0]?(Ke|0)!=(a|0):0){break g}o[Ke+12|0]=1;return}if(Le){if(!r[Le+12|0]){Ke=bd;break k}Ke=q[bd+4>>2]}o[Ke+12|0]=1;o[bd+12|0]=0;a=q[Ke>>2];q[bd+4>>2]=a;if(a){q[a+8>>2]=bd}q[Ke+8>>2]=q[bd+8>>2];a=q[bd+8>>2];q[(q[a>>2]==(bd|0)?a:a+4|0)>>2]=Ke;q[Ke>>2]=bd;q[bd+8>>2]=Ke;Le=bd}a=Ke;Ke=q[Ke+8>>2];o[a+12|0]=r[Ke+12|0];o[Ke+12|0]=1;o[Le+12|0]=1;bd=q[Ke>>2];a=q[bd+4>>2];q[Ke>>2]=a;if(a){q[a+8>>2]=Ke}q[bd+8>>2]=q[Ke+8>>2];a=q[Ke+8>>2];q[((Ke|0)==q[a>>2]?a:a+4|0)>>2]=bd;q[bd+4>>2]=Ke;q[Ke+8>>2]=bd;return}bd=q[Ke+8>>2];Ke=q[(q[bd>>2]==(Ke|0)?bd+4|0:bd)>>2];continue}}o[Me+12|0]=1}return}if(r[bd+12|0]){break e}Le=Ke;break d}o[Le+12|0]=1;o[Ke+12|0]=0;a=q[Le+4>>2];q[Ke>>2]=a;if(a){q[a+8>>2]=Ke}q[Le+8>>2]=q[Ke+8>>2];a=q[Ke+8>>2];q[(q[a>>2]==(Ke|0)?a:a+4|0)>>2]=Le;q[Le+4>>2]=Ke;q[Ke+8>>2]=Le;bd=Ke}Ke=q[Le+8>>2];o[Le+12|0]=r[Ke+12|0];o[Ke+12|0]=1;o[bd+12|0]=1;bd=q[Ke+4>>2];a=q[bd>>2];q[Ke+4>>2]=a;if(a){q[a+8>>2]=Ke}q[bd+8>>2]=q[Ke+8>>2];a=q[Ke+8>>2];q[((Ke|0)==q[a>>2]?a:a+4|0)>>2]=bd;q[bd>>2]=Ke;q[Ke+8>>2]=bd}function Hm(a){q[a>>2]=16484;wp(a+4|0,0,80);return a}function Im(a,bd){var Qe=0;Qe=-1;a:{if((bd|0)==-1|(bd|0)>4){break a}bd=w(bd,12)+a|0;a=q[bd+20>>2];if((q[bd+24>>2]-a|0)<1){break a}Qe=q[a>>2]}return Qe}function Jm(a){var bd=0,Re=0;bd=q[a+20>>2];a:{if((q[a+24>>2]-bd|0)<1){break a}bd=q[bd>>2];if((bd|0)==-1){break a}Re=q[q[a+8>>2]+(bd<<2)>>2]}return Re}function Km(a,Se){var Te=0,Ue=0,Ve=0,We=0,Xe=0;Te=T-16|0;T=Te;Ue=a+12|0;Ve=q[Ue>>2];We=q[a+8>>2];Xe=q[Se>>2];q[Se>>2]=0;q[Te+8>>2]=Xe;n[q[q[a>>2]+8>>2]](a,Ve-We>>2,Te+8|0);Se=q[Te+8>>2];q[Te+8>>2]=0;if(Se){Ba(Se)}T=Te+16|0;return(q[Ue>>2]-q[a+8>>2]>>2)+ -1|0}function Lm(a,Se,Ye){a=a|0;Se=Se|0;Ye=Ye|0;var Ze=0,_e=0,$e=0,af=0,bf=0,cf=0;af=T-16|0;T=af;q[af+12>>2]=Se;bf=a+8|0;Ze=q[a+12>>2];cf=q[a+8>>2];_e=Ze-cf>>2;a:{if((_e|0)>(Se|0)){break a}$e=Se+1|0;if($e>>>0>_e>>>0){Mm(bf,$e-_e|0);break a}if($e>>>0>=_e>>>0){break a}_e=cf+($e<<2)|0;if((_e|0)!=(Ze|0)){while(1){Ze=Ze+ -4|0;$e=q[Ze>>2];q[Ze>>2]=0;if($e){Ba($e)}if((Ze|0)!=(_e|0)){continue}break}}q[a+12>>2]=_e}Ze=q[q[Ye>>2]+56>>2];b:{if((Ze|0)>4){break b}Ze=w(Ze,12)+a|0;_e=Ze+24|0;a=q[_e>>2];if((a|0)!=q[Ze+28>>2]){q[a>>2]=Se;q[_e>>2]=a+4;break b}pd(Ze+20|0,af+12|0)}Se=q[Ye>>2];a=q[af+12>>2];q[Se+60>>2]=a;Ze=q[bf>>2];q[Ye>>2]=0;Ye=Ze+(a<<2)|0;a=q[Ye>>2];q[Ye>>2]=Se;if(a){Ba(a)}T=af+16|0}function Mm(a,Se){var Ye=0,df=0,ef=0,ff=0,gf=0,hf=0,jf=0,kf=0,lf=0;df=q[a+8>>2];ef=a+4|0;Ye=q[ef>>2];if(df-Ye>>2>>>0>=Se>>>0){a=Se<<2;kf=ef,lf=wp(Ye,0,a)+a|0,q[kf>>2]=lf;return}a:{ef=q[a>>2];ff=Ye-ef>>2;gf=ff+Se|0;if(gf>>>0<1073741824){ff=ff<<2;df=df-ef|0;jf=df>>1;df=df>>2>>>0<536870911?jf>>>0<gf>>>0?gf:jf:1073741823;if(df){if(df>>>0>=1073741824){break a}hf=zo(df<<2)}ff=ff+hf|0;wp(ff,0,Se<<2);Se=(gf<<2)+hf|0;gf=(df<<2)+hf|0;if((Ye|0)!=(ef|0)){while(1){Ye=Ye+ -4|0;df=q[Ye>>2];q[Ye>>2]=0;ff=ff+ -4|0;q[ff>>2]=df;if((Ye|0)!=(ef|0)){continue}break}ef=q[a>>2];Ye=q[a+4>>2]}q[a>>2]=ff;q[a+8>>2]=gf;q[a+4>>2]=Se;if((Ye|0)!=(ef|0)){while(1){Ye=Ye+ -4|0;a=q[Ye>>2];q[Ye>>2]=0;if(a){Ba(a)}if((Ye|0)!=(ef|0)){continue}break}}if(ef){pp(ef)}return}To();F()}Qb(16548);F()}function Nm(a,Se){a=a|0;Se=Se|0;var mf=0,nf=0,of=0,pf=0,qf=0,rf=0,sf=0;a:{if((Se|0)<0){break a}mf=q[a+12>>2];nf=q[a+8>>2];if(mf-nf>>2>>>0<=Se>>>0){break a}nf=nf+(Se<<2)|0;of=q[nf>>2];rf=q[of+60>>2];pf=q[of+56>>2];of=nf+4|0;b:{if((of|0)!=(mf|0)){while(1){sf=q[of>>2];q[of>>2]=0;qf=q[nf>>2];q[nf>>2]=sf;if(qf){Ba(qf)}nf=nf+4|0;of=of+4|0;if((of|0)!=(mf|0)){continue}break}mf=q[a+12>>2];if((nf|0)==(mf|0)){break b}}while(1){mf=mf+ -4|0;of=q[mf>>2];q[mf>>2]=0;if(of){Ba(of)}if((mf|0)!=(nf|0)){continue}break}}q[a+12>>2]=nf;mf=q[a+4>>2];if(mf){Om(mf,rf)}c:{if((pf|0)>4){break c}d:{nf=w(pf,12)+a|0;mf=q[nf+20>>2];of=nf+24|0;nf=q[of>>2];if((mf|0)==(nf|0)){break d}while(1){if(q[mf>>2]==(Se|0)){break d}mf=mf+4|0;if((nf|0)!=(mf|0)){continue}break}break c}if((mf|0)==(nf|0)){break c}pf=mf+4|0;nf=nf-pf|0;qf=nf>>2;if(nf){xp(mf,pf,nf)}q[of>>2]=(qf<<2)+mf}mf=q[a+24>>2];nf=q[a+20>>2];if((mf|0)!=(nf|0)){of=mf-nf>>2;mf=0;while(1){pf=nf+(mf<<2)|0;qf=q[pf>>2];if((qf|0)>(Se|0)){q[pf>>2]=qf+ -1}mf=mf+1|0;if(mf>>>0<of>>>0){continue}break}}mf=q[a+36>>2];nf=q[a+32>>2];if((mf|0)!=(nf|0)){of=mf-nf>>2;mf=0;while(1){pf=nf+(mf<<2)|0;qf=q[pf>>2];if((qf|0)>(Se|0)){q[pf>>2]=qf+ -1}mf=mf+1|0;if(mf>>>0<of>>>0){continue}break}}mf=q[a+48>>2];nf=q[a+44>>2];if((mf|0)!=(nf|0)){of=mf-nf>>2;mf=0;while(1){pf=nf+(mf<<2)|0;qf=q[pf>>2];if((qf|0)>(Se|0)){q[pf>>2]=qf+ -1}mf=mf+1|0;if(mf>>>0<of>>>0){continue}break}}mf=q[a+60>>2];nf=q[a+56>>2];if((mf|0)!=(nf|0)){of=mf-nf>>2;mf=0;while(1){pf=nf+(mf<<2)|0;qf=q[pf>>2];if((qf|0)>(Se|0)){q[pf>>2]=qf+ -1}mf=mf+1|0;if(mf>>>0<of>>>0){continue}break}}mf=q[a+72>>2];a=q[a+68>>2];if((mf|0)==(a|0)){break a}nf=mf-a>>2;mf=0;while(1){of=a+(mf<<2)|0;pf=q[of>>2];if((pf|0)>(Se|0)){q[of>>2]=pf+ -1}mf=mf+1|0;if(mf>>>0<nf>>>0){continue}break}}}function Om(a,Se){var tf=0,uf=0,vf=0,wf=0;a:{if((Se|0)<0){break a}tf=q[a+28>>2];vf=q[a+24>>2];while(1){uf=vf;if((tf|0)==(uf|0)){break a}vf=uf+4|0;if(q[q[uf>>2]+24>>2]!=(Se|0)){continue}break}b:{if((tf|0)!=(vf|0)){while(1){Se=q[vf>>2];q[vf>>2]=0;wf=q[uf>>2];q[uf>>2]=Se;if(wf){mb(wf+12|0,q[wf+16>>2]);nb(wf,q[wf+4>>2]);pp(wf)}uf=uf+4|0;vf=vf+4|0;if((tf|0)!=(vf|0)){continue}break}tf=q[a+28>>2];if((tf|0)==(uf|0)){break b}}while(1){tf=tf+ -4|0;Se=q[tf>>2];q[tf>>2]=0;if(Se){mb(Se+12|0,q[Se+16>>2]);nb(Se,q[Se+4>>2]);pp(Se)}if((uf|0)!=(tf|0)){continue}break}}q[a+28>>2]=uf}}function Pm(a){a=a|0;var Se=0,xf=0,yf=0,zf=0,Af=0,Bf=0,Cf=0,Df=0,Ef=0,Ff=0,Gf=0,Hf=x(0),If=0,Jf=0,Kf=0,Lf=0,Mf=0,Nf=0,Of=0,Pf=0,Qf=x(0),Rf=0,Sf=0;Se=T-80|0;T=Se;xf=q[a+80>>2];q[Se+56>>2]=0;q[Se+60>>2]=0;q[Se+72>>2]=a;q[Se- -64>>2]=a;q[Se+48>>2]=0;q[Se+52>>2]=0;q[Se+68>>2]=1065353216;Qm(Se+48|0,xf);xf=q[a+80>>2];q[Se+40>>2]=0;q[Se+32>>2]=0;q[Se+36>>2]=0;a:{if(xf){if(xf>>>0>=1073741824){break a}zf=xf<<2;yf=zo(zf);q[Se+32>>2]=yf;Cf=yf+zf|0;q[Se+40>>2]=Cf;wp(yf,0,zf);q[Se+36>>2]=Cf}q[Se+24>>2]=0;q[Se+16>>2]=0;q[Se+20>>2]=0;q[Se+8>>2]=0;b:{if(!xf){break b}Rf=Se+56|0;xf=0;while(1){zf=0;yf=q[Se+64>>2];Gf=q[yf+8>>2];If=q[yf+12>>2]-Gf|0;Mf=(If|0)<1;if(!Mf){Cf=If>>>2;Af=0;while(1){yf=xf;Ef=q[Gf+(Af<<2)>>2];if(!r[Ef+84|0]){yf=q[q[Ef+68>>2]+(xf<<2)>>2]}zf=yf<<2^zf<<1;Af=Af+1|0;if(Af>>>0<Cf>>>0){continue}break}}c:{d:{Bf=q[Se+52>>2];if(!Bf){break d}Cf=q[Se+48>>2];Jf=Xp(Bf)>>>0>1;yf=Bf+ -1&zf;e:{if(!Jf){break e}yf=zf;if(zf>>>0<Bf>>>0){break e}yf=(zf>>>0)%(Bf>>>0)|0}Cf=q[Cf+(yf<<2)>>2];if(!Cf){break d}Df=q[Cf>>2];if(!Df){break d}Nf=yf;Sf=Bf+ -1|0;Kf=q[Se+72>>2];f:{while(1){g:{h:{Af=q[Df+4>>2];if((zf|0)!=(Af|0)){i:{if(!Jf){Af=Af&Sf;break i}if(Af>>>0<Bf>>>0){break i}Af=(Af>>>0)%(Bf>>>0)|0}if((Af|0)==(Nf|0)){break h}break d}Of=q[Kf+8>>2];yf=q[Kf+12>>2]-Of|0;if((yf|0)<1){break f}Cf=q[Df+8>>2];Ff=yf>>>2;Af=0;while(1){yf=Cf;Ef=xf;Pf=q[Of+(Af<<2)>>2];if(!r[Pf+84|0]){yf=q[Pf+68>>2];Ef=q[yf+(xf<<2)>>2];yf=q[yf+(Cf<<2)>>2]}if((yf|0)!=(Ef|0)){break h}Af=Af+1|0;if(Af>>>0<Ff>>>0){continue}break}break g}Df=q[Df>>2];if(Df){continue}break d}break}if(!Df){break d}}q[q[Se+32>>2]+(xf<<2)>>2]=q[Df+12>>2];break c}j:{if(Mf){zf=0;break j}Cf=If>>>2;zf=0;Af=0;while(1){yf=xf;Ef=q[Gf+(Af<<2)>>2];if(!r[Ef+84|0]){yf=q[q[Ef+68>>2]+(xf<<2)>>2]}zf=yf<<2^zf<<1;Af=Af+1|0;if(Af>>>0<Cf>>>0){continue}break}}k:{l:{if(!Bf){break l}yf=q[Se+48>>2];Gf=Xp(Bf)>>>0>1;Ff=Bf+ -1&zf;m:{if(!Gf){break m}Ff=zf;if(zf>>>0<Bf>>>0){break m}Ff=(zf>>>0)%(Bf>>>0)|0}yf=q[yf+(Ff<<2)>>2];if(!yf){break l}Df=q[yf>>2];if(!Df){break l}If=Bf+ -1|0;Nf=q[Se+72>>2];while(1){Af=q[Df+4>>2];if((zf|0)!=(Af|0)){n:{if(!Gf){Af=Af&If;break n}if(Af>>>0<Bf>>>0){break n}Af=(Af>>>0)%(Bf>>>0)|0}if((Af|0)!=(Ff|0)){break l}}Kf=q[Nf+8>>2];yf=q[Nf+12>>2]-Kf|0;if((yf|0)<1){break k}Cf=q[Df+8>>2];Mf=yf>>>2;Af=0;while(1){yf=Cf;Ef=xf;Jf=q[Kf+(Af<<2)>>2];if(!r[Jf+84|0]){yf=q[Jf+68>>2];Ef=q[yf+(xf<<2)>>2];yf=q[yf+(Cf<<2)>>2]}if((yf|0)==(Ef|0)){Af=Af+1|0;if(Af>>>0>=Mf>>>0){break k}continue}break}Df=q[Df>>2];if(Df){continue}break}}yf=zo(16);q[yf+4>>2]=zf;q[yf>>2]=0;q[yf+12>>2]=Lf;q[yf+8>>2]=xf;Hf=u[Se+68>>2];Qf=x(q[Se+60>>2]+1>>>0);o:{if(!(!Bf|!!(x(Hf*x(Bf>>>0))<Qf))){zf=Ff;break o}Cf=(Bf+ -1&Bf)!=0|Bf>>>0<3|Bf<<1;Ef=Se+48|0;Hf=x(D(x(Qf/Hf)));p:{if(Hf<x(4294967296)&Hf>=x(0)){xf=~~Hf>>>0;break p}xf=0}Qm(Ef,Cf>>>0<xf>>>0?xf:Cf);Bf=q[Se+52>>2];xf=Bf+ -1|0;if(!(xf&Bf)){zf=xf&zf;break o}if(zf>>>0<Bf>>>0){break o}zf=(zf>>>0)%(Bf>>>0)|0}zf=q[Se+48>>2]+(zf<<2)|0;xf=q[zf>>2];q:{r:{if(!xf){q[yf>>2]=q[Se+56>>2];q[Se+56>>2]=yf;q[zf>>2]=Rf;xf=q[yf>>2];if(!xf){break q}xf=q[xf+4>>2];zf=Bf+ -1|0;s:{if(!(zf&Bf)){xf=xf&zf;break s}if(xf>>>0<Bf>>>0){break s}xf=(xf>>>0)%(Bf>>>0)|0}xf=q[Se+48>>2]+(xf<<2)|0;break r}q[yf>>2]=q[xf>>2]}q[xf>>2]=yf}q[Se+60>>2]=q[Se+60>>2]+1;xf=q[Se+8>>2]}q[q[Se+32>>2]+(xf<<2)>>2]=Lf;Lf=Lf+1|0;xf=q[Se+20>>2];if((xf|0)!=q[Se+24>>2]){q[xf>>2]=q[Se+8>>2];q[Se+20>>2]=xf+4;break c}Tj(Se+16|0,Se+8|0)}xf=q[Se+8>>2]+1|0;q[Se+8>>2]=xf;zf=q[a+80>>2];if(xf>>>0<zf>>>0){continue}break}if((zf|0)==(Lf|0)){break b}n[q[q[a>>2]+24>>2]](a,Se+32|0,Se+16|0);q[a+80>>2]=Lf}a=q[Se+16>>2];if(a){q[Se+20>>2]=a;pp(a)}a=q[Se+32>>2];if(a){q[Se+36>>2]=a;pp(a)}xf=q[Se+56>>2];if(xf){while(1){a=q[xf>>2];pp(xf);xf=a;if(xf){continue}break}}a=q[Se+48>>2];q[Se+48>>2]=0;if(a){pp(a)}T=Se+80|0;return}To();F()}function Qm(a,Tf){var Uf=0,Vf=0,Wf=x(0);Uf=2;a:{if((Tf|0)==1){break a}Uf=Tf;if(!(Tf+ -1&Tf)){break a}Uf=Yn(Tf)}Vf=q[a+4>>2];if(Uf>>>0>Vf>>>0){Um(a,Uf);return}b:{if(Uf>>>0>=Vf>>>0){break b}Wf=x(D(x(x(t[a+12>>2])/u[a+20>>2])));c:{if(Wf<x(4294967296)&Wf>=x(0)){Tf=~~Wf>>>0;break c}Tf=0}d:{e:{if(Vf>>>0<3){break e}if(Xp(Vf)>>>0>1){break e}Tf=Tf>>>0<2?Tf:1<<32-z(Tf+ -1|0);break d}Tf=Yn(Tf)}Tf=Uf>>>0<Tf>>>0?Tf:Uf;if(Tf>>>0>=Vf>>>0){break b}Um(a,Tf)}}function Rm(a,Tf,Xf){a=a|0;Tf=Tf|0;Xf=Xf|0;var Yf=0,Zf=0,_f=0,$f=0,ag=0,bg=0,cg=0,dg=0,eg=0,fg=0,gg=0,hg=0,ig=0;Zf=q[Xf>>2];$f=q[Xf+4>>2];if((Zf|0)!=($f|0)){ag=q[Tf>>2];bg=a+12|0;while(1){Xf=q[Zf>>2];dg=Xf<<2;_f=q[dg+ag>>2];if(_f>>>0>=Yf>>>0){eg=q[a+8>>2];Tf=q[bg>>2]-eg|0;if((Tf|0)>=1){hg=Tf>>>2;Yf=0;while(1){Tf=Xf;fg=q[eg+(Yf<<2)>>2];gg=q[fg+68>>2];ig=gg+(_f<<2)|0;if(!r[fg+84|0]){Tf=q[dg+gg>>2]}q[ig>>2]=Tf;Yf=Yf+1|0;if(Yf>>>0<hg>>>0){continue}break}}Yf=_f+1|0}Zf=Zf+4|0;if(($f|0)!=(Zf|0)){continue}break}}$f=a+12|0;Zf=q[$f>>2];Tf=q[a+8>>2];if((Zf-Tf|0)>0){while(1){Xf=q[(cg<<2)+Tf>>2];o[Xf+84|0]=0;ag=Xf+72|0;bg=q[Xf+68>>2];_f=q[ag>>2]-bg>>2;a:{if(Yf>>>0>_f>>>0){lc(Xf+68|0,Yf-_f|0,16544);Zf=q[$f>>2];Tf=q[a+8>>2];break a}if(Yf>>>0>=_f>>>0){break a}q[ag>>2]=bg+(Yf<<2)}cg=cg+1|0;if((cg|0)<Zf-Tf>>2){continue}break}}}function Sm(a){a=a|0;var Tf=0,Xf=0,jg=0;a:{if(!q[a+80>>2]){break a}jg=a+12|0;Tf=q[a+8>>2];if((q[jg>>2]-Tf|0)<=0){return 1}while(1){Tf=q[(Xf<<2)+Tf>>2];if(!tc(Tf,Tf)){break a}Xf=Xf+1|0;Tf=q[a+8>>2];if((Xf|0)<q[jg>>2]-Tf>>2){continue}break}return 1}return 0}function Tm(a){a=a|0;pp(am(a))}function Um(a,kg){var lg=0,mg=0,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,Ag=0,Bg=0;a:{if(kg){if(kg>>>0<1073741824){mg=zo(kg<<2);ng=q[a>>2];q[a>>2]=mg;if(ng){pp(ng)}q[a+4>>2]=kg;while(1){q[q[a>>2]+(lg<<2)>>2]=0;lg=lg+1|0;if((lg|0)!=(kg|0)){continue}break}ng=a+8|0;og=q[ng>>2];if(!og){break a}pg=q[og+4>>2];mg=Xp(kg);b:{if(mg>>>0<=1){pg=kg+ -1&pg;break b}if(pg>>>0<kg>>>0){break b}pg=(pg>>>0)%(kg>>>0)|0}q[q[a>>2]+(pg<<2)>>2]=ng;ng=q[og>>2];if(!ng){break a}zg=kg+ -1|0;Ag=mg>>>0>1;while(1){lg=q[ng+4>>2];c:{if(!Ag){lg=lg&zg;break c}if(lg>>>0<kg>>>0){break c}lg=(lg>>>0)%(kg>>>0)|0}d:{if((lg|0)==(pg|0)){og=ng;break d}rg=lg<<2;mg=rg+q[a>>2]|0;if(q[mg>>2]){mg=ng;lg=q[ng>>2];e:{if(!lg){break e}mg=q[a+24>>2];sg=q[mg+8>>2];tg=q[mg+12>>2]-sg|0;Bg=tg>>>2;ug=q[ng+8>>2];vg=ng;while(1){mg=lg;lg=0;f:{if((tg|0)<=0){break f}wg=q[mg+8>>2];while(1){qg=ug;xg=wg;yg=q[(lg<<2)+sg>>2];if(!r[yg+84|0]){qg=q[yg+68>>2];xg=q[qg+(wg<<2)>>2];qg=q[qg+(ug<<2)>>2]}if((qg|0)==(xg|0)){lg=lg+1|0;if(lg>>>0>=Bg>>>0){break f}continue}break}mg=vg;break e}vg=mg;lg=q[mg>>2];if(lg){continue}break}}q[og>>2]=q[mg>>2];q[mg>>2]=q[q[q[a>>2]+rg>>2]>>2];q[q[q[a>>2]+rg>>2]>>2]=ng;break d}q[mg>>2]=og;og=ng;pg=lg}ng=q[og>>2];if(ng){continue}break}break a}Qb(16548);F()}kg=q[a>>2];q[a>>2]=0;if(kg){pp(kg)}q[a+4>>2]=0}}function Vm(a){a=a|0}function Wm(a){var kg=0;kg=r[a+74|0];o[a+74|0]=kg+ -1|kg;kg=q[a>>2];if(kg&8){q[a>>2]=kg|32;return-1}q[a+4>>2]=0;q[a+8>>2]=0;kg=q[a+44>>2];q[a+28>>2]=kg;q[a+20>>2]=kg;q[a+16>>2]=kg+q[a+48>>2];return 0}function Xm(a,Cg,Dg){var Eg=0,Fg=0,Gg=0;Eg=q[Dg+16>>2];a:{if(!Eg){if(Wm(Dg)){break a}Eg=q[Dg+16>>2]}Gg=q[Dg+20>>2];if(Eg-Gg>>>0<Cg>>>0){n[q[Dg+36>>2]](Dg,a,Cg)|0;return}b:{if(o[Dg+75|0]<0){break b}Eg=Cg;while(1){Fg=Eg;if(!Fg){break b}Eg=Fg+ -1|0;if(r[Eg+a|0]!=10){continue}break}if(n[q[Dg+36>>2]](Dg,a,Fg)>>>0<Fg>>>0){break a}Cg=Cg-Fg|0;a=a+Fg|0;Gg=q[Dg+20>>2]}vp(Gg,a,Cg);q[Dg+20>>2]=q[Dg+20>>2]+Cg}}function Ym(a,Cg,Dg){var Hg=0,Ig=0,Jg=0,Kg=0;Hg=T-208|0;T=Hg;q[Hg+204>>2]=Dg;Dg=0;wp(Hg+160|0,0,40);q[Hg+200>>2]=q[Hg+204>>2];a:{if((Zm(0,Cg,Hg+200|0,Hg+80|0,Hg+160|0)|0)<0){Cg=-1;break a}Dg=q[a+76>>2]>=0?1:Dg;Ig=q[a>>2];if(o[a+74|0]<=0){q[a>>2]=Ig&-33}Kg=Ig&32;b:{if(q[a+48>>2]){Cg=Zm(a,Cg,Hg+200|0,Hg+80|0,Hg+160|0);break b}q[a+48>>2]=80;q[a+16>>2]=Hg+80;q[a+28>>2]=Hg;q[a+20>>2]=Hg;Ig=q[a+44>>2];q[a+44>>2]=Hg;Jg=Zm(a,Cg,Hg+200|0,Hg+80|0,Hg+160|0);Cg=Jg;if(!Ig){break b}n[q[a+36>>2]](a,0,0)|0;q[a+48>>2]=0;q[a+44>>2]=Ig;q[a+28>>2]=0;q[a+16>>2]=0;Cg=q[a+20>>2];q[a+20>>2]=0;Cg=Cg?Jg:-1}Jg=a;a=q[a>>2];q[Jg>>2]=a|Kg;Cg=a&32?-1:Cg;if(!Dg){break a}}T=Hg+208|0;return Cg}function Zm(a,Cg,Dg,Lg,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;Ng=T-80|0;T=Ng;q[Ng+76>>2]=Cg;$g=Ng+55|0;Yg=Ng+56|0;Cg=0;a:{b:while(1){c:{if((Vg|0)<0){break c}if((Cg|0)>(2147483647-Vg|0)){q[4681]=61;Vg=-1;break c}Vg=Cg+Vg|0}d:{e:{f:{g:{h:{i:{j:{k:{l:{m:{n:{o:{p:{q:{Rg=q[Ng+76>>2];Cg=Rg;Qg=r[Cg|0];if(Qg){while(1){r:{s:{Og=Qg&255;t:{if(!Og){Qg=Cg;break t}if((Og|0)!=37){break s}Qg=Cg;while(1){if(r[Cg+1|0]!=37){break t}Og=Cg+2|0;q[Ng+76>>2]=Og;Qg=Qg+1|0;Pg=r[Cg+2|0];Cg=Og;if((Pg|0)==37){continue}break}}Cg=Qg-Rg|0;if(a){_m(a,Rg,Cg)}if(Cg){continue b}Wg=-1;Qg=1;Og=Ng;Sg=!mn(o[q[Ng+76>>2]+1|0]);Cg=q[Ng+76>>2];if(!(Sg|r[Cg+2|0]!=36)){Wg=o[Cg+1|0]+ -48|0;Zg=1;Qg=3}Cg=Qg+Cg|0;q[Og+76>>2]=Cg;Qg=0;Xg=o[Cg|0];Pg=Xg+ -32|0;u:{if(Pg>>>0>31){Og=Cg;break u}Og=Cg;Pg=1<<Pg;if(!(Pg&75913)){break u}while(1){Og=Cg+1|0;q[Ng+76>>2]=Og;Qg=Pg|Qg;Xg=o[Cg+1|0];Pg=Xg+ -32|0;if(Pg>>>0>31){break u}Cg=Og;Pg=1<<Pg;if(Pg&75913){continue}break}}v:{if((Xg|0)==42){Sg=Ng;w:{x:{if(!mn(o[Og+1|0])){break x}Cg=q[Ng+76>>2];if(r[Cg+2|0]!=36){break x}q[((o[Cg+1|0]<<2)+Mg|0)+ -192>>2]=10;Tg=q[((o[Cg+1|0]<<3)+Lg|0)+ -384>>2];Zg=1;Cg=Cg+3|0;break w}if(Zg){break q}Zg=0;Tg=0;if(a){Cg=q[Dg>>2];q[Dg>>2]=Cg+4;Tg=q[Cg>>2]}Cg=q[Ng+76>>2]+1|0}q[Sg+76>>2]=Cg;if((Tg|0)>-1){break v}Tg=0-Tg|0;Qg=Qg|8192;break v}Tg=$m(Ng+76|0);if((Tg|0)<0){break q}Cg=q[Ng+76>>2]}Pg=-1;y:{if(r[Cg|0]!=46){break y}if(r[Cg+1|0]==42){z:{if(!mn(o[Cg+2|0])){break z}Cg=q[Ng+76>>2];if(r[Cg+3|0]!=36){break z}q[((o[Cg+2|0]<<2)+Mg|0)+ -192>>2]=10;Pg=q[((o[Cg+2|0]<<3)+Lg|0)+ -384>>2];Cg=Cg+4|0;q[Ng+76>>2]=Cg;break y}if(Zg){break q}if(a){Cg=q[Dg>>2];q[Dg>>2]=Cg+4;Pg=q[Cg>>2]}else{Pg=0}Cg=q[Ng+76>>2]+2|0;q[Ng+76>>2]=Cg;break y}q[Ng+76>>2]=Cg+1;Pg=$m(Ng+76|0);Cg=q[Ng+76>>2]}Og=0;while(1){_g=Og;Ug=-1;if(o[Cg|0]+ -65>>>0>57){break a}Xg=Cg+1|0;q[Ng+76>>2]=Xg;Og=o[Cg|0];Cg=Xg;Og=r[(Og+w(_g,58)|0)+16575|0];if(Og+ -1>>>0<8){continue}break}if(!Og){break a}A:{B:{C:{if((Og|0)==19){if((Wg|0)<=-1){break C}break a}if((Wg|0)<0){break B}q[(Wg<<2)+Mg>>2]=Og;Cg=(Wg<<3)+Lg|0;Og=q[Cg+4>>2];q[Ng+64>>2]=q[Cg>>2];q[Ng+68>>2]=Og}Cg=0;if(!a){continue b}break A}if(!a){break d}an(Ng- -64|0,Og,Dg);Xg=q[Ng+76>>2]}Sg=Qg&-65537;Qg=Qg&8192?Sg:Qg;Ug=0;Wg=16616;Og=Yg;Cg=o[Xg+ -1|0];Cg=_g?(Cg&15)==3?Cg&-33:Cg:Cg;Xg=Cg+ -88|0;if(Xg>>>0<=32){break r}D:{E:{F:{G:{Sg=Cg+ -65|0;if(Sg>>>0>6){if((Cg|0)!=83){break e}if(!Pg){break G}Og=q[Ng+64>>2];break E}switch(Sg-1|0){case 1:break F;case 0:case 2:break e;default:break p}}Cg=0;bn(a,32,Tg,0,Qg);break D}q[Ng+12>>2]=0;q[Ng+8>>2]=q[Ng+64>>2];q[Ng+64>>2]=Ng+8;Pg=-1;Og=Ng+8|0}Cg=0;H:{while(1){Rg=q[Og>>2];if(!Rg){break H}Rg=nn(Ng+4|0,Rg);Sg=(Rg|0)<0;if(!(Sg|Rg>>>0>Pg-Cg>>>0)){Og=Og+4|0;Cg=Cg+Rg|0;if(Pg>>>0>Cg>>>0){continue}break H}break}Ug=-1;if(Sg){break a}}bn(a,32,Tg,Cg,Qg);if(!Cg){Cg=0;break D}Pg=0;Og=q[Ng+64>>2];while(1){Rg=q[Og>>2];if(!Rg){break D}Rg=nn(Ng+4|0,Rg);Pg=Rg+Pg|0;if((Pg|0)>(Cg|0)){break D}_m(a,Ng+4|0,Rg);Og=Og+4|0;if(Pg>>>0<Cg>>>0){continue}break}}bn(a,32,Tg,Cg,Qg^8192);Cg=(Tg|0)>(Cg|0)?Tg:Cg;continue b}Og=Cg+1|0;q[Ng+76>>2]=Og;Qg=r[Cg+1|0];Cg=Og;continue}break}switch(Xg-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}}Ug=Vg;if(a){break a}if(!Zg){break d}Cg=1;while(1){a=q[(Cg<<2)+Mg>>2];if(a){an((Cg<<3)+Lg|0,a,Dg);Ug=1;Cg=Cg+1|0;if((Cg|0)!=10){continue}break a}break}Ug=1;if(Cg>>>0>=10){break a}while(1){if(q[(Cg<<2)+Mg>>2]){break q}a=Cg>>>0>8;Cg=Cg+1|0;if(!a){continue}break}break a}Ug=-1;break a}Cg=n[356](a,v[Ng+64>>3],Tg,Pg,Qg,Cg)|0;continue}Cg=q[Ng+64>>2];Rg=Cg?Cg:16626;Cg=xn(Rg,Pg);Og=Cg?Cg:Pg+Rg|0;Qg=Sg;Pg=Cg?Cg-Rg|0:Pg;break e}o[Ng+55|0]=q[Ng+64>>2];Pg=1;Rg=$g;Qg=Sg;break e}Sg=q[Ng+68>>2];Cg=Sg;Rg=q[Ng+64>>2];if((Cg|0)<-1?1:(Cg|0)<=-1?Rg>>>0>4294967295?0:1:0){Cg=0-(Cg+(0<Rg>>>0)|0)|0;Rg=0-Rg|0;q[Ng+64>>2]=Rg;q[Ng+68>>2]=Cg;Ug=1;Wg=16616;break g}if(Qg&2048){Ug=1;Wg=16617;break g}Ug=Qg&1;Wg=Ug?16618:16616;break g}Rg=cn(q[Ng+64>>2],q[Ng+68>>2],Yg);if(!(Qg&8)){break f}Cg=Yg-Rg|0;Pg=(Pg|0)>(Cg|0)?Pg:Cg+1|0;break f}Pg=Pg>>>0>8?Pg:8;Qg=Qg|8;Cg=120}Rg=dn(q[Ng+64>>2],q[Ng+68>>2],Yg,Cg&32);if(!(Qg&8)|!(q[Ng+64>>2]|q[Ng+68>>2])){break f}Wg=(Cg>>>4)+16616|0;Ug=2;break f}Cg=0;Og=_g&255;if(Og>>>0>7){continue}I:{switch(Og-1|0){default:q[q[Ng+64>>2]>>2]=Vg;continue;case 0:q[q[Ng+64>>2]>>2]=Vg;continue;case 1:Og=q[Ng+64>>2];q[Og>>2]=Vg;q[Og+4>>2]=Vg>>31;continue;case 2:p[q[Ng+64>>2]>>1]=Vg;continue;case 3:o[q[Ng+64>>2]]=Vg;continue;case 5:q[q[Ng+64>>2]>>2]=Vg;continue;case 4:continue;case 6:break I}}Og=q[Ng+64>>2];q[Og>>2]=Vg;q[Og+4>>2]=Vg>>31;continue}Rg=q[Ng+64>>2];Cg=q[Ng+68>>2];Wg=16616}Rg=en(Rg,Cg,Yg)}Qg=(Pg|0)>-1?Qg&-65537:Qg;Cg=q[Ng+64>>2];Sg=q[Ng+68>>2];J:{if(!(!!(Cg|Sg)|Pg)){Rg=Yg;Pg=0;break J}Cg=!(Cg|Sg)+(Yg-Rg|0)|0;Pg=(Pg|0)>(Cg|0)?Pg:Cg}}Sg=Og-Rg|0;Pg=(Pg|0)<(Sg|0)?Sg:Pg;Og=Pg+Ug|0;Cg=(Tg|0)<(Og|0)?Og:Tg;bn(a,32,Cg,Og,Qg);_m(a,Wg,Ug);bn(a,48,Cg,Og,Qg^65536);bn(a,48,Pg,Sg,0);_m(a,Rg,Sg);bn(a,32,Cg,Og,Qg^8192);continue}break}Ug=0}T=Ng+80|0;return Ug}function _m(a,q,Cg){if(!(r[a|0]&32)){Xm(q,Cg,a)}}function $m(a){var Cg=0,Dg=0,Lg=0;if(mn(o[q[a>>2]])){while(1){Cg=q[a>>2];Lg=o[Cg|0];q[a>>2]=Cg+1;Dg=(w(Dg,10)+Lg|0)+ -48|0;if(mn(o[Cg+1|0])){continue}break}}return Dg}function an(a,Mg,ah){a:{b:{if(Mg>>>0>20){break b}Mg=Mg+ -9|0;if(Mg>>>0>9){break b}c:{switch(Mg-1|0){default:Mg=q[ah>>2];q[ah>>2]=Mg+4;q[a>>2]=q[Mg>>2];return;case 0:Mg=q[ah>>2];q[ah>>2]=Mg+4;Mg=q[Mg>>2];q[a>>2]=Mg;q[a+4>>2]=Mg>>31;return;case 1:Mg=q[ah>>2];q[ah>>2]=Mg+4;q[a>>2]=q[Mg>>2];q[a+4>>2]=0;return;case 3:Mg=q[ah>>2];q[ah>>2]=Mg+4;Mg=p[Mg>>1];q[a>>2]=Mg;q[a+4>>2]=Mg>>31;return;case 4:Mg=q[ah>>2];q[ah>>2]=Mg+4;q[a>>2]=s[Mg>>1];q[a+4>>2]=0;return;case 5:Mg=q[ah>>2];q[ah>>2]=Mg+4;Mg=o[Mg|0];q[a>>2]=Mg;q[a+4>>2]=Mg>>31;return;case 6:Mg=q[ah>>2];q[ah>>2]=Mg+4;q[a>>2]=r[Mg|0];q[a+4>>2]=0;return;case 2:case 7:break a;case 8:break c}}n[357](a,ah)}return}Mg=q[ah>>2]+7&-8;q[ah>>2]=Mg+8;ah=q[Mg+4>>2];q[a>>2]=q[Mg>>2];q[a+4>>2]=ah}function bn(a,q,Mg,ah,bh){var ch=0,dh=0,eh=0;ch=T-256|0;T=ch;if(!(bh&73728|(Mg|0)<=(ah|0))){bh=Mg-ah|0;dh=bh>>>0<256;wp(ch,q,dh?bh:256);q=a;eh=ch;if(!dh){Mg=Mg-ah|0;while(1){_m(a,ch,256);bh=bh+ -256|0;if(bh>>>0>255){continue}break}bh=Mg&255}_m(q,eh,bh)}T=ch+256|0}function cn(a,q,Mg){if(a|q){while(1){Mg=Mg+ -1|0;o[Mg|0]=a&7|48;a=(q&7)<<29|a>>>3;q=q>>>3;if(a|q){continue}break}}return Mg}function dn(a,q,Mg,ah){if(a|q){while(1){Mg=Mg+ -1|0;o[Mg|0]=r[(a&15)+17104|0]|ah;a=(q&15)<<28|a>>>4;q=q>>>4;if(a|q){continue}break}}return Mg}function en(a,q,Mg){var ah=0,bh=0,fh=0;a:{if((q|0)==1&a>>>0<0|q>>>0<1){ah=a;break a}while(1){ah=Wp(a,q,10,0);bh=V;fh=bh;bh=Up(ah,bh,10,0);Mg=Mg+ -1|0;o[Mg|0]=a-bh|48;bh=(q|0)==9&a>>>0>4294967295|q>>>0>9;a=ah;q=fh;if(bh){continue}break}}if(ah){while(1){Mg=Mg+ -1|0;a=(ah>>>0)/10|0;o[Mg|0]=ah-w(a,10)|48;q=ah>>>0>9;ah=a;if(q){continue}break}}return Mg}function fn(a,q,Mg){return Ym(a,q,Mg)}function gn(a,Mg,gh,hh,ih,jh){a=a|0;Mg=+Mg;gh=gh|0;hh=hh|0;ih=ih|0;jh=jh|0;var 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,xh=0,yh=0,zh=0,Ah=0,Bh=0,Ch=0,Dh=0,Eh=0,Fh=0,Gh=0,Hh=0,Ih=0;oh=T-560|0;T=oh;q[oh+44>>2]=0;h(+Mg);kh=e(1)|0;a:{if(Dh=1,Eh=(Gh=e(0)>>>0>4294967295?0:1,Hh=0,Ih=(kh|0)<=-1,Ih?Gh:Hh),Fh=(kh|0)<-1,Fh?Dh:Eh){Mg=-Mg;h(+Mg);kh=e(1)|0;e(0)|0;yh=1;zh=17120;break a}if(ih&2048){yh=1;zh=17123;break a}yh=ih&1;zh=yh?17126:17121}b:{if((kh&2146435072)==2146435072){qh=yh+3|0;bn(a,32,gh,qh,ih&-65537);_m(a,zh,yh);hh=jh>>>5&1;_m(a,Mg!=Mg?hh?17147:17151:hh?17139:17143,3);break b}Mg=pn(Mg,oh+44|0);Mg=Mg+Mg;if(Mg!=0){q[oh+44>>2]=q[oh+44>>2]+ -1}vh=oh+16|0;Ah=jh|32;if((Ah|0)==97){ph=jh&32;lh=ph?zh+9|0:zh;c:{if(hh>>>0>11){break c}kh=12-hh|0;if(!kh){break c}wh=8;while(1){wh=wh*16;kh=kh+ -1|0;if(kh){continue}break}if(r[lh|0]==45){Mg=-(wh+(-Mg-wh));break c}Mg=Mg+wh-wh}nh=q[oh+44>>2];kh=nh>>31;kh=en(kh^kh+nh,0,vh);if((vh|0)==(kh|0)){o[oh+15|0]=48;kh=oh+15|0}nh=yh|2;mh=q[oh+44>>2];sh=kh+ -2|0;o[sh|0]=jh+15;o[kh+ -1|0]=(mh|0)<0?45:43;zh=ih&8;mh=oh+16|0;while(1){jh=mh;qh=ph;if(y(Mg)<2147483648){kh=~~Mg}else{kh=-2147483648}o[mh|0]=qh|r[kh+17104|0];Mg=(Mg- +(kh|0))*16;mh=jh+1|0;if(!((mh-(oh+16|0)|0)!=1|(Mg==0?!((hh|0)>0|zh):0))){o[jh+1|0]=46;mh=jh+2|0}if(Mg!=0){continue}break}jh=a;kh=gh;if(!hh|((mh-oh|0)+ -18|0)>=(hh|0)){ph=((vh-(oh+16|0)|0)-sh|0)+mh|0}else{ph=((hh+vh|0)-sh|0)+2|0}hh=ph;qh=hh+nh|0;bn(jh,32,kh,qh,ih);_m(a,lh,nh);bn(a,48,gh,qh,ih^65536);jh=mh-(oh+16|0)|0;_m(a,oh+16|0,jh);hh=vh-sh|0;bn(a,48,ph-(hh+jh|0)|0,0,0);_m(a,sh,hh);break b}kh=(hh|0)<0;d:{if(Mg==0){lh=q[oh+44>>2];break d}lh=q[oh+44>>2]+ -28|0;q[oh+44>>2]=lh;Mg=Mg*268435456}ph=kh?6:hh;sh=(lh|0)<0?oh+48|0:oh+336|0;nh=sh;while(1){hh=nh;if(Mg<4294967296&Mg>=0){kh=~~Mg>>>0}else{kh=0}q[hh>>2]=kh;nh=nh+4|0;Mg=(Mg- +(kh>>>0))*1e9;if(Mg!=0){continue}break}e:{if((lh|0)<1){kh=nh;mh=sh;break e}mh=sh;while(1){rh=(lh|0)<29?lh:29;kh=nh+ -4|0;f:{if(kh>>>0<mh>>>0){break f}hh=rh;lh=0;while(1){qh=kh;Bh=lh;uh=q[kh>>2];th=hh&31;if(32<=(hh&63)>>>0){lh=uh<<th;uh=0}else{lh=(1<<th)-1&uh>>>32-th;uh=uh<<th}th=Bh+uh|0;lh=lh+Ch|0;lh=th>>>0<uh>>>0?lh+1|0:lh;lh=Wp(th,lh,1e9,0);uh=qh;qh=Up(lh,V,1e9,0);q[uh>>2]=th-qh;kh=kh+ -4|0;if(kh>>>0>=mh>>>0){continue}break}if(!lh){break f}mh=mh+ -4|0;q[mh>>2]=lh}while(1){kh=nh;if(kh>>>0>mh>>>0){nh=kh+ -4|0;if(!q[nh>>2]){continue}}break}lh=q[oh+44>>2]-rh|0;q[oh+44>>2]=lh;nh=kh;if((lh|0)>0){continue}break}}if((lh|0)<=-1){xh=((ph+25|0)/9|0)+1|0;rh=(Ah|0)==102;while(1){hh=(lh|0)<-9?9:0-lh|0;g:{if(mh>>>0>=kh>>>0){mh=q[mh>>2]?mh:mh+4|0;break g}qh=1e9>>>hh;th=-1<<hh^-1;lh=0;nh=mh;while(1){uh=lh;lh=q[nh>>2];q[nh>>2]=uh+(lh>>>hh);lh=w(qh,lh&th);nh=nh+4|0;if(nh>>>0<kh>>>0){continue}break}mh=q[mh>>2]?mh:mh+4|0;if(!lh){break g}q[kh>>2]=lh;kh=kh+4|0}lh=hh+q[oh+44>>2]|0;q[oh+44>>2]=lh;hh=rh?sh:mh;kh=kh-hh>>2>(xh|0)?hh+(xh<<2)|0:kh;if((lh|0)<0){continue}break}}nh=0;h:{if(mh>>>0>=kh>>>0){break h}nh=w(sh-mh>>2,9);lh=10;hh=q[mh>>2];if(hh>>>0<10){break h}while(1){nh=nh+1|0;lh=w(lh,10);if(hh>>>0>=lh>>>0){continue}break}}hh=(ph-((Ah|0)==102?0:nh)|0)-((Ah|0)==103&(ph|0)!=0)|0;if((hh|0)<(w(kh-sh>>2,9)+ -9|0)){lh=hh+9216|0;qh=(lh|0)/9|0;rh=(sh+(qh<<2)|0)+ -4092|0;hh=10;lh=lh-w(qh,9)|0;if((lh|0)<=7){while(1){hh=w(hh,10);qh=(lh|0)<7;lh=lh+1|0;if(qh){continue}break}}qh=q[rh>>2];th=(qh>>>0)/(hh>>>0)|0;xh=rh+4|0;lh=qh-w(hh,th)|0;i:{if(lh?0:(xh|0)==(kh|0)){break i}uh=hh>>>1;wh=lh>>>0<uh>>>0?.5:(kh|0)==(xh|0)?(uh|0)==(lh|0)?1:1.5:1.5;Mg=th&1?9007199254740994:9007199254740992;if(!(!yh|r[zh|0]!=45)){wh=-wh;Mg=-Mg}lh=qh-lh|0;q[rh>>2]=lh;if(Mg+wh==Mg){break i}hh=hh+lh|0;q[rh>>2]=hh;if(hh>>>0>=1e9){while(1){q[rh>>2]=0;rh=rh+ -4|0;if(rh>>>0<mh>>>0){mh=mh+ -4|0;q[mh>>2]=0}hh=q[rh>>2]+1|0;q[rh>>2]=hh;if(hh>>>0>999999999){continue}break}}nh=w(sh-mh>>2,9);lh=10;hh=q[mh>>2];if(hh>>>0<10){break i}while(1){nh=nh+1|0;lh=w(lh,10);if(hh>>>0>=lh>>>0){continue}break}}hh=rh+4|0;kh=kh>>>0>hh>>>0?hh:kh}j:{while(1){lh=kh;rh=0;if(kh>>>0<=mh>>>0){break j}kh=lh+ -4|0;if(!q[kh>>2]){continue}break}rh=1}k:{if((Ah|0)!=103){th=ih&8;break k}hh=ph?ph:1;kh=(hh|0)>(nh|0)&(nh|0)>-5;ph=(kh?nh^-1:-1)+hh|0;jh=(kh?-1:-2)+jh|0;th=ih&8;if(th){break k}kh=9;l:{if(!rh){break l}qh=q[lh+ -4>>2];if(!qh){break l}hh=10;kh=0;if((qh>>>0)%10){break l}while(1){kh=kh+1|0;hh=w(hh,10);if(!((qh>>>0)%(hh>>>0))){continue}break}}hh=w(lh-sh>>2,9)+ -9|0;if((jh|32)==102){th=0;hh=hh-kh|0;hh=(hh|0)>0?hh:0;ph=(ph|0)<(hh|0)?ph:hh;break k}th=0;hh=(hh+nh|0)-kh|0;hh=(hh|0)>0?hh:0;ph=(ph|0)<(hh|0)?ph:hh}Ah=ph|th;uh=(Ah|0)!=0;hh=a;Bh=gh;Ch=jh|32;kh=(nh|0)>0?nh:0;m:{if((Ch|0)==102){break m}kh=nh>>31;kh=en(kh+nh^kh,0,vh);if((vh-kh|0)<=1){while(1){kh=kh+ -1|0;o[kh|0]=48;if((vh-kh|0)<2){continue}break}}xh=kh+ -2|0;o[xh|0]=jh;o[kh+ -1|0]=(nh|0)<0?45:43;kh=vh-xh|0}qh=(kh+(uh+(ph+yh|0)|0)|0)+1|0;bn(hh,32,Bh,qh,ih);_m(a,zh,yh);bn(a,48,gh,qh,ih^65536);n:{o:{p:{if((Ch|0)==102){hh=oh+16|8;jh=oh+16|9;nh=mh>>>0>sh>>>0?sh:mh;mh=nh;while(1){kh=en(q[mh>>2],0,jh);q:{if((mh|0)!=(nh|0)){if(kh>>>0<=oh+16>>>0){break q}while(1){kh=kh+ -1|0;o[kh|0]=48;if(kh>>>0>oh+16>>>0){continue}break}break q}if((jh|0)!=(kh|0)){break q}o[oh+24|0]=48;kh=hh}_m(a,kh,jh-kh|0);mh=mh+4|0;if(mh>>>0<=sh>>>0){continue}break}if(Ah){_m(a,17155,1)}if((ph|0)<1|mh>>>0>=lh>>>0){break p}while(1){kh=en(q[mh>>2],0,jh);if(kh>>>0>oh+16>>>0){while(1){kh=kh+ -1|0;o[kh|0]=48;if(kh>>>0>oh+16>>>0){continue}break}}_m(a,kh,(ph|0)<9?ph:9);kh=ph+ -9|0;mh=mh+4|0;if(mh>>>0>=lh>>>0){break o}hh=(ph|0)>9;ph=kh;if(hh){continue}break}break o}r:{if((ph|0)<0){break r}sh=rh?lh:mh+4|0;hh=oh+16|8;jh=oh+16|9;nh=mh;while(1){kh=en(q[nh>>2],0,jh);if((jh|0)==(kh|0)){o[oh+24|0]=48;kh=hh}s:{if((mh|0)!=(nh|0)){if(kh>>>0<=oh+16>>>0){break s}while(1){kh=kh+ -1|0;o[kh|0]=48;if(kh>>>0>oh+16>>>0){continue}break}break s}_m(a,kh,1);kh=kh+1|0;if((ph|0)<1?!th:0){break s}_m(a,17155,1)}lh=kh;kh=jh-kh|0;_m(a,lh,(ph|0)>(kh|0)?kh:ph);ph=ph-kh|0;nh=nh+4|0;if(nh>>>0>=sh>>>0){break r}if((ph|0)>-1){continue}break}}bn(a,48,ph+18|0,18,0);_m(a,xh,vh-xh|0);break n}kh=ph}bn(a,48,kh+9|0,9,0)}}bn(a,32,gh,qh,ih^8192);T=oh+560|0;return((qh|0)<(gh|0)?gh:qh)|0}function hn(a,Mg){a=a|0;Mg=Mg|0;var gh=0,hh=0,ih=0;gh=Mg;Mg=q[Mg>>2]+15&-16;q[gh>>2]=Mg+16;hh=a,ih=Wn(q[Mg>>2],q[Mg+4>>2],q[Mg+8>>2],q[Mg+12>>2]),v[hh>>3]=ih}function jn(a,Mg,jh){a=a|0;Mg=Mg|0;jh=jh|0;var Jh=0,Kh=0,Lh=0,Mh=0,Nh=0,Oh=0;Jh=T-32|0;T=Jh;Kh=q[a+28>>2];q[Jh+16>>2]=Kh;Lh=q[a+20>>2];q[Jh+28>>2]=jh;q[Jh+24>>2]=Mg;Mg=Lh-Kh|0;q[Jh+20>>2]=Mg;Lh=Mg+jh|0;Nh=2;Mg=Jh+16|0;while(1){a:{b:{if(In(K(q[a+60>>2],Mg|0,Nh|0,Jh+12|0)|0)){q[Jh+12>>2]=-1;Kh=-1;break b}Kh=q[Jh+12>>2]}c:{if((Kh|0)==(Lh|0)){Mg=q[a+44>>2];q[a+28>>2]=Mg;q[a+20>>2]=Mg;q[a+16>>2]=Mg+q[a+48>>2];a=jh;break c}if((Kh|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((Nh|0)==2){break c}a=jh-q[Mg+4>>2]|0}T=Jh+32|0;return a|0}Mh=q[Mg+4>>2];Oh=Kh>>>0>Mh>>>0;Mg=Oh?Mg+8|0:Mg;Mh=Kh-(Oh?Mh:0)|0;q[Mg>>2]=Mh+q[Mg>>2];q[Mg+4>>2]=q[Mg+4>>2]-Mh;Lh=Lh-Kh|0;Nh=Nh-Oh|0;continue}}function kn(a,Mg,jh,Ph){a=a|0;Mg=Mg|0;jh=jh|0;Ph=Ph|0;var Qh=0;Qh=T-16|0;T=Qh;a:{if(!In(S(q[a+60>>2],Mg|0,jh|0,Ph&255,Qh+8|0)|0)){Mg=q[Qh+12>>2];a=q[Qh+8>>2];break a}q[Qh+8>>2]=-1;q[Qh+12>>2]=-1;Mg=-1;a=-1}T=Qh+16|0;V=Mg;return a|0}function ln(a){a=a|0;return L(q[a+60>>2])|0}function mn(a){return a+ -48>>>0<10}function nn(a,q){if(!a){return 0}return on(a,q)}function on(a,Mg){a:{if(a){if(Mg>>>0<=127){break a}b:{if(!q[q[4665]>>2]){if((Mg&-128)==57216){break a}break b}if(Mg>>>0<=2047){o[a+1|0]=Mg&63|128;o[a|0]=Mg>>>6|192;return 2}if(!((Mg&-8192)!=57344?Mg>>>0>=55296:0)){o[a+2|0]=Mg&63|128;o[a|0]=Mg>>>12|224;o[a+1|0]=Mg>>>6&63|128;return 3}if(Mg+ -65536>>>0<=1048575){o[a+3|0]=Mg&63|128;o[a|0]=Mg>>>18|240;o[a+2|0]=Mg>>>6&63|128;o[a+1|0]=Mg>>>12&63|128;return 4}}q[4681]=25;a=-1}else{a=1}return a}o[a|0]=Mg;return 1}function pn(a,Mg){var jh=0,Ph=0,Rh=0;h(+a);jh=e(1)|0;Ph=e(0)|0;Rh=jh;jh=jh>>>20&2047;if((jh|0)!=2047){if(!jh){jh=Mg;if(a==0){Mg=0}else{a=pn(a*0x10000000000000000,Mg);Mg=q[Mg>>2]+ -64|0}q[jh>>2]=Mg;return a}q[Mg>>2]=jh+ -1022;f(0,Ph|0);f(1,Rh&-2146435073|1071644672);a=+g()}return a}function qn(a,Mg){var Sh=0,Th=x(0);Sh=T-16|0;T=Sh;rn(Sh,a,Mg,0);Th=Xn(q[Sh>>2],q[Sh+4>>2],q[Sh+8>>2],q[Sh+12>>2]);T=Sh+16|0;return Th}function rn(a,Mg,Uh,Vh){var Wh=0,Xh=0,Yh=0,Zh=0,_h=0,$h=0,ai=0;Wh=T-160|0;T=Wh;wp(Wh+16|0,0,144);q[Wh+92>>2]=-1;q[Wh+60>>2]=Mg;q[Wh+24>>2]=-1;q[Wh+20>>2]=Mg;Gn(Wh+16|0);An(Wh,Wh+16|0,Vh);Vh=q[Wh+8>>2];Yh=q[Wh+12>>2];Zh=q[Wh>>2];_h=q[Wh+4>>2];if(Uh){$h=Uh;Xh=Mg;Mg=q[Wh+20>>2]-q[Wh+24>>2]|0;ai=Mg;Uh=Mg+q[Wh+136>>2]|0;Mg=q[Wh+140>>2]+(Mg>>31)|0;Mg=Uh>>>0<ai>>>0?Mg+1|0:Mg;q[$h>>2]=!(Mg|Uh)?Xh:Xh+Uh|0}q[a>>2]=Zh;q[a+4>>2]=_h;q[a+8>>2]=Vh;q[a+12>>2]=Yh;T=Wh+160|0}function sn(a){var Mg=0,Uh=0;Mg=T-16|0;T=Mg;rn(Mg,a,0,1);Uh=Wn(q[Mg>>2],q[Mg+4>>2],q[Mg+8>>2],q[Mg+12>>2]);T=Mg+16|0;return Uh}function tn(a){return(a|0)==32|a+ -9>>>0<5}function un(a){var q=0,Vh=0,bi=0,ci=0,di=0,ei=0;while(1){q=a;a=q+1|0;if(tn(o[q|0])){continue}break}Vh=o[q|0];ci=Vh+ -43|0;a:{if(ci>>>0>2){break a}b:{switch(ci-1|0){case 1:di=1;break;case 0:break a;default:break b}}Vh=o[a|0];q=a;ei=di}if(mn(Vh)){while(1){bi=(w(bi,10)-o[q|0]|0)+48|0;a=o[q+1|0];q=q+1|0;if(mn(a)){continue}break}}return ei?bi:0-bi|0}function vn(a,fi,gi){var hi=0,ii=0,ji=0;a:{if(!gi){break a}while(1){hi=r[a|0];ii=r[fi|0];if((hi|0)==(ii|0)){fi=fi+1|0;a=a+1|0;gi=gi+ -1|0;if(gi){continue}break a}break}ji=hi-ii|0}return ji}function wn(a){var fi=0,gi=0,ki=0;a:{b:{fi=a;if(!(fi&3)){break b}if(!r[a|0]){break a}while(1){fi=fi+1|0;if(!(fi&3)){break b}if(r[fi|0]){continue}break}break a}while(1){gi=fi;fi=fi+4|0;ki=q[gi>>2];if(!((ki^-1)&ki+ -16843009&-2139062144)){continue}break}if(!(ki&255)){fi=gi;break a}while(1){ki=r[gi+1|0];fi=gi+1|0;gi=fi;if(ki){continue}break}}return fi-a|0}function xn(a,li){var mi=0,ni=0,oi=0;mi=(li|0)!=0;a:{b:{c:{d:{if(!li|!(a&3)){break d}while(1){if(!r[a|0]){break c}a=a+1|0;li=li+ -1|0;mi=(li|0)!=0;if(!li){break d}if(a&3){continue}break}}if(!mi){break b}}if(!r[a|0]){break a}e:{if(li>>>0>=4){mi=li+ -4|0;ni=mi&-4;mi=mi-ni|0;ni=(a+ni|0)+4|0;while(1){oi=q[a>>2];if((oi^-1)&oi+ -16843009&-2139062144){break e}a=a+4|0;li=li+ -4|0;if(li>>>0>3){continue}break}li=mi;a=ni}if(!li){break b}}while(1){if(!r[a|0]){break a}a=a+1|0;li=li+ -1|0;if(li){continue}break}}return 0}return a}function yn(a,li,pi,qi,ri,si,ti,ui,vi){q[a>>2]=li;q[a+4>>2]=pi;q[a+8>>2]=qi;q[a+12>>2]=ri&65535|(vi>>>16&32768|ri>>>16&32767)<<16}function zn(a,li,pi,qi,ri,si){var ti=0;ti=T-80|0;T=ti;a:{if((si|0)>=16384){Tn(ti+32|0,li,pi,qi,ri,0,0,0,2147352576);qi=q[ti+40>>2];ri=q[ti+44>>2];li=q[ti+32>>2];pi=q[ti+36>>2];if((si|0)<32767){si=si+ -16383|0;break a}Tn(ti+16|0,li,pi,qi,ri,0,0,0,2147352576);si=((si|0)<49149?si:49149)+ -32766|0;qi=q[ti+24>>2];ri=q[ti+28>>2];li=q[ti+16>>2];pi=q[ti+20>>2];break a}if((si|0)>-16383){break a}Tn(ti- -64|0,li,pi,qi,ri,0,0,0,65536);qi=q[ti+72>>2];ri=q[ti+76>>2];li=q[ti+64>>2];pi=q[ti+68>>2];if((si|0)>-32765){si=si+16382|0;break a}Tn(ti+48|0,li,pi,qi,ri,0,0,0,65536);si=((si|0)>-49146?si:-49146)+32764|0;qi=q[ti+56>>2];ri=q[ti+60>>2];li=q[ti+48>>2];pi=q[ti+52>>2]}Tn(ti,li,pi,qi,ri,0,0,0,si+16383<<16);li=q[ti+12>>2];q[a+8>>2]=q[ti+8>>2];q[a+12>>2]=li;li=q[ti+4>>2];q[a>>2]=q[ti>>2];q[a+4>>2]=li;T=ti+80|0}function An(a,li,pi){var qi=0,ri=0,si=0,ui=0,vi=0,wi=0,xi=0,yi=0,zi=0,Ai=0;si=T-48|0;T=si;if(pi>>>0<=2){ri=li+4|0;pi=pi<<2;zi=q[pi+17244>>2];Ai=q[pi+17232>>2];while(1){pi=q[li+4>>2];a:{if(pi>>>0<t[li+104>>2]){q[ri>>2]=pi+1;pi=r[pi|0];break a}pi=Hn(li)}if(tn(pi)){continue}break}qi=pi+ -43|0;b:{if(qi>>>0>2){ui=1;break b}ui=1;if(!(qi-1)){break b}ui=(pi|0)==45?-1:1;pi=q[li+4>>2];if(pi>>>0<t[li+104>>2]){q[ri>>2]=pi+1;pi=r[pi|0];break b}pi=Hn(li)}qi=0;c:{d:{e:{while(1){if(o[qi+17164|0]==(pi|32)){f:{if(qi>>>0>6){break f}pi=q[li+4>>2];if(pi>>>0<t[li+104>>2]){q[ri>>2]=pi+1;pi=r[pi|0];break f}pi=Hn(li)}qi=qi+1|0;if((qi|0)!=8){continue}break e}break}if((qi|0)!=3){if((qi|0)==8){break e}if(qi>>>0<4){break d}if((qi|0)==8){break e}}li=q[li+104>>2];if(li){q[ri>>2]=q[ri>>2]+ -1}if(qi>>>0<4){break e}while(1){if(li){q[ri>>2]=q[ri>>2]+ -1}qi=qi+ -1|0;if(qi>>>0>3){continue}break}}Pn(si,x(x(ui|0)*x(H)));wi=q[si+8>>2];vi=q[si+12>>2];xi=q[si>>2];yi=q[si+4>>2];break c}g:{h:{i:{if(qi){break i}qi=0;while(1){if(o[qi+17173|0]!=(pi|32)){break i}j:{if(qi>>>0>1){break j}pi=q[li+4>>2];if(pi>>>0<t[li+104>>2]){q[ri>>2]=pi+1;pi=r[pi|0];break j}pi=Hn(li)}qi=qi+1|0;if((qi|0)!=3){continue}break}break h}k:{l:{if(qi>>>0>3){break l}switch(qi-1|0){case 2:break h;case 0:case 1:break l;default:break k}}if(q[li+104>>2]){q[ri>>2]=q[ri>>2]+ -1}q[4681]=28;break g}m:{if((pi|0)!=48){break m}qi=q[li+4>>2];n:{if(qi>>>0<t[li+104>>2]){q[ri>>2]=qi+1;qi=r[qi|0];break n}qi=Hn(li)}if((qi|32)==120){Bn(si+16|0,li,Ai,zi,ui);wi=q[si+24>>2];vi=q[si+28>>2];xi=q[si+16>>2];yi=q[si+20>>2];break c}if(!q[li+104>>2]){break m}q[ri>>2]=q[ri>>2]+ -1}Cn(si+32|0,li,pi,Ai,zi,ui);wi=q[si+40>>2];vi=q[si+44>>2];xi=q[si+32>>2];yi=q[si+36>>2];break c}o:{pi=q[li+4>>2];p:{if(pi>>>0<t[li+104>>2]){q[ri>>2]=pi+1;pi=r[pi|0];break p}pi=Hn(li)}if((pi|0)==40){qi=1;break o}vi=2147450880;if(!q[li+104>>2]){break c}q[ri>>2]=q[ri>>2]+ -1;break c}while(1){q:{pi=q[li+4>>2];r:{if(pi>>>0<t[li+104>>2]){q[ri>>2]=pi+1;pi=r[pi|0];break r}pi=Hn(li)}if(!(pi+ -48>>>0<10|pi+ -65>>>0<26|(pi|0)==95)){if(pi+ -97>>>0>=26){break q}}qi=qi+1|0;continue}break}vi=2147450880;if((pi|0)==41){break c}li=q[li+104>>2];if(li){q[ri>>2]=q[ri>>2]+ -1}if(!qi){break c}while(1){qi=qi+ -1|0;if(li){q[ri>>2]=q[ri>>2]+ -1}if(qi){continue}break}break c}Gn(li)}}q[a>>2]=xi;q[a+4>>2]=yi;q[a+8>>2]=wi;q[a+12>>2]=vi;T=si+48|0}function Bn(a,li,pi,Bi,Ci){var Di=0,Ei=0,Fi=0,Gi=0,Hi=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,Vi=0,Wi=0,Xi=0,Yi=0;Di=T-432|0;T=Di;Ei=q[li+4>>2];a:{if(Ei>>>0<t[li+104>>2]){q[li+4>>2]=Ei+1;Fi=r[Ei|0];break a}Fi=Hn(li)}b:{c:{while(1){d:{if((Fi|0)!=48){if((Fi|0)!=46){break b}Ei=q[li+4>>2];if(Ei>>>0>=t[li+104>>2]){break d}q[li+4>>2]=Ei+1;Fi=r[Ei|0];break c}Ei=q[li+4>>2];if(Ei>>>0<t[li+104>>2]){Ri=1;q[li+4>>2]=Ei+1;Fi=r[Ei|0]}else{Fi=Hn(li);Ri=1}continue}break}Fi=Hn(li)}Qi=1;if((Fi|0)!=48){break b}while(1){Ei=Si+ -1|0;Fi=Ti+ -1|0;if(Fi>>>0<4294967295){Ei=Ei+1|0}Ti=Fi;Si=Ei;Ei=q[li+4>>2];e:{if(Ei>>>0<t[li+104>>2]){q[li+4>>2]=Ei+1;Fi=r[Ei|0];break e}Fi=Hn(li)}if((Fi|0)==48){continue}break}Ri=1}Ei=1073676288;while(1){f:{Ui=Fi|32;g:{h:{Vi=Fi+ -48|0;if(Vi>>>0<10){break h}if(Ui+ -97>>>0>5?(Fi|0)!=46:0){break f}if((Fi|0)!=46){break h}if(Qi){break f}Qi=1;Ti=Li;Si=Gi;break g}Fi=(Fi|0)>57?Ui+ -87|0:Vi;i:{if((Gi|0)<0?1:(Gi|0)<=0?Li>>>0>7?0:1:0){Mi=Fi+(Mi<<4)|0;break i}if((Gi|0)<0?1:(Gi|0)<=0?Li>>>0>28?0:1:0){Tn(Di+32|0,Ii,Ni,Hi,Ei,0,0,0,1073414144);Qn(Di+48|0,Fi);Ii=q[Di+32>>2];Ni=q[Di+36>>2];Hi=q[Di+40>>2];Ei=q[Di+44>>2];Tn(Di+16|0,Ii,Ni,Hi,Ei,q[Di+48>>2],q[Di+52>>2],q[Di+56>>2],q[Di+60>>2]);Jn(Di,Ji,Ki,Oi,Pi,q[Di+16>>2],q[Di+20>>2],q[Di+24>>2],q[Di+28>>2]);Oi=q[Di+8>>2];Pi=q[Di+12>>2];Ji=q[Di>>2];Ki=q[Di+4>>2];break i}if(!Fi|Yi){break i}Tn(Di+80|0,Ii,Ni,Hi,Ei,0,0,0,1073610752);Jn(Di- -64|0,Ji,Ki,Oi,Pi,q[Di+80>>2],q[Di+84>>2],q[Di+88>>2],q[Di+92>>2]);Oi=q[Di+72>>2];Pi=q[Di+76>>2];Yi=1;Ji=q[Di+64>>2];Ki=q[Di+68>>2]}Fi=Li+1|0;if(Fi>>>0<1){Gi=Gi+1|0}Li=Fi;Ri=1}Fi=q[li+4>>2];if(Fi>>>0<t[li+104>>2]){q[li+4>>2]=Fi+1;Fi=r[Fi|0]}else{Fi=Hn(li)}continue}break}j:{if(!Ri){pi=q[li+104>>2];if(pi){q[li+4>>2]=q[li+4>>2]+ -1}k:{if(!pi){break k}q[li+4>>2]=q[li+4>>2]+ -1;if(!Qi|!pi){break k}q[li+4>>2]=q[li+4>>2]+ -1}On(Di+96|0,+(Ci|0)*0);Ji=q[Di+96>>2];Ki=q[Di+100>>2];pi=q[Di+108>>2];li=q[Di+104>>2];break j}if((Gi|0)<0?1:(Gi|0)<=0?Li>>>0>7?0:1:0){Hi=Li;Ei=Gi;while(1){Mi=Mi<<4;Ni=(Ei|0)<0?1:(Ei|0)<=0?Hi>>>0>=7?0:1:0;Ii=Ei;Ei=Hi+1|0;if(Ei>>>0<1){Ii=Ii+1|0}Hi=Ei;Ei=Ii;if(Ni){continue}break}}l:{if((Fi|32)==112){Hi=Dn(li);Fi=V;Ei=Fi;if(Hi|(Ei|0)!=-2147483648){break l}Hi=0;Ei=0;if(!q[li+104>>2]){break l}q[li+4>>2]=q[li+4>>2]+ -1;break l}Hi=0;Ei=0;if(!q[li+104>>2]){break l}q[li+4>>2]=q[li+4>>2]+ -1}if(!Mi){On(Di+112|0,+(Ci|0)*0);Ji=q[Di+112>>2];Ki=q[Di+116>>2];pi=q[Di+124>>2];li=q[Di+120>>2];break j}li=Qi?Ti:Li;Ii=(Qi?Si:Gi)<<2|li>>>30;Gi=Hi+(li<<2)|0;li=Ei+Ii|0;Ei=Gi+ -32|0;Gi=(Gi>>>0<Hi>>>0?li+1|0:li)+ -1|0;Li=Ei;li=0-Bi|0;Fi=Ei>>>0<=li>>>0?0:1;Gi=Ei>>>0<4294967264?Gi+1|0:Gi;li=li>>31;if((Gi|0)>(li|0)?1:(Gi|0)>=(li|0)?Fi:0){Qn(Di+160|0,Ci);Tn(Di+144|0,q[Di+160>>2],q[Di+164>>2],q[Di+168>>2],q[Di+172>>2],-1,-1,-1,2147418111);Tn(Di+128|0,q[Di+144>>2],q[Di+148>>2],q[Di+152>>2],q[Di+156>>2],-1,-1,-1,2147418111);q[4681]=68;Ji=q[Di+128>>2];Ki=q[Di+132>>2];pi=q[Di+140>>2];li=q[Di+136>>2];break j}li=Bi+ -226|0;Ei=Li>>>0<li>>>0?0:1;li=li>>31;if((Gi|0)>(li|0)?1:(Gi|0)>=(li|0)?Ei:0){if((Mi|0)>-1){while(1){Jn(Di+416|0,Ji,Ki,Oi,Pi,0,0,0,-1073807360);li=Mn(Ji,Ki,Oi,Pi);Ei=(li|0)<0;Jn(Di+400|0,Ji,Ki,Oi,Pi,Ei?Ji:q[Di+416>>2],Ei?Ki:q[Di+420>>2],Ei?Oi:q[Di+424>>2],Ei?Pi:q[Di+428>>2]);Ei=Gi+ -1|0;Gi=Li+ -1|0;if(Gi>>>0<4294967295){Ei=Ei+1|0}Li=Gi;Gi=Ei;Oi=q[Di+408>>2];Pi=q[Di+412>>2];Ji=q[Di+400>>2];Ki=q[Di+404>>2];Mi=Mi<<1|(li|0)>-1;if((Mi|0)>-1){continue}break}}Ei=Li;Fi=Bi;Hi=(Ei-Fi|0)+32|0;Ii=Gi-((Fi>>31)+(Ei>>>0<Fi>>>0)|0)|0;Gi=Hi;li=pi;Bi=Gi>>>0>=li>>>0?0:1;Ii=Gi>>>0<32?Ii+1|0:Ii;li=li>>31;li=((Ii|0)<(li|0)?1:(Ii|0)<=(li|0)?Bi:0)?(Gi|0)>0?Gi:0:pi;m:{if((li|0)>=113){Qn(Di+384|0,Ci);Hi=q[Di+392>>2];Ei=q[Di+396>>2];Ii=q[Di+384>>2];Ni=q[Di+388>>2];Bi=0;pi=0;break m}Qn(Di+336|0,Ci);On(Di+352|0,tp(144-li|0));Ii=q[Di+336>>2];Ni=q[Di+340>>2];Hi=q[Di+344>>2];Ei=q[Di+348>>2];yn(Di+368|0,q[Di+352>>2],q[Di+356>>2],q[Di+360>>2],q[Di+364>>2],Ii,Ni,Hi,Ei);Wi=q[Di+376>>2];Xi=q[Di+380>>2];Bi=q[Di+372>>2];pi=q[Di+368>>2]}li=!(Mi&1)&((Ln(Ji,Ki,Oi,Pi,0,0,0,0)|0)!=0&(li|0)<32);Rn(Di+320|0,li+Mi|0);Tn(Di+304|0,Ii,Ni,Hi,Ei,q[Di+320>>2],q[Di+324>>2],q[Di+328>>2],q[Di+332>>2]);Tn(Di+288|0,li?0:Ji,li?0:Ki,li?0:Oi,li?0:Pi,Ii,Ni,Hi,Ei);Jn(Di+272|0,q[Di+304>>2],q[Di+308>>2],q[Di+312>>2],q[Di+316>>2],pi,Bi,Wi,Xi);Jn(Di+256|0,q[Di+288>>2],q[Di+292>>2],q[Di+296>>2],q[Di+300>>2],q[Di+272>>2],q[Di+276>>2],q[Di+280>>2],q[Di+284>>2]);Vn(Di+240|0,q[Di+256>>2],q[Di+260>>2],q[Di+264>>2],q[Di+268>>2],pi,Bi,Wi,Xi);li=q[Di+240>>2];pi=q[Di+244>>2];Bi=q[Di+248>>2];Ci=q[Di+252>>2];if(!Ln(li,pi,Bi,Ci,0,0,0,0)){q[4681]=68}zn(Di+224|0,li,pi,Bi,Ci,Li);Ji=q[Di+224>>2];Ki=q[Di+228>>2];pi=q[Di+236>>2];li=q[Di+232>>2];break j}Qn(Di+208|0,Ci);Tn(Di+192|0,q[Di+208>>2],q[Di+212>>2],q[Di+216>>2],q[Di+220>>2],0,0,0,65536);Tn(Di+176|0,q[Di+192>>2],q[Di+196>>2],q[Di+200>>2],q[Di+204>>2],0,0,0,65536);q[4681]=68;Ji=q[Di+176>>2];Ki=q[Di+180>>2];pi=q[Di+188>>2];li=q[Di+184>>2]}q[a>>2]=Ji;q[a+4>>2]=Ki;q[a+8>>2]=li;q[a+12>>2]=pi;T=Di+432|0}function Cn(a,li,pi,Bi,Ci,Zi){var _i=0,$i=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,qj=0,rj=0,sj=0,tj=0,uj=0;_i=T-8960|0;T=_i;mj=Bi+Ci|0;sj=0-mj|0;a:{b:{while(1){c:{if((pi|0)!=48){if((pi|0)!=46){break a}pi=q[li+4>>2];if(pi>>>0>=t[li+104>>2]){break c}q[li+4>>2]=pi+1;pi=r[pi|0];break b}pi=q[li+4>>2];if(pi>>>0<t[li+104>>2]){gj=1;q[li+4>>2]=pi+1;pi=r[pi|0]}else{pi=Hn(li);gj=1}continue}break}pi=Hn(li)}cj=1;if((pi|0)!=48){break a}while(1){$i=$i+ -1|0;pi=aj+ -1|0;if(pi>>>0<4294967295){$i=$i+1|0}aj=pi;pi=q[li+4>>2];d:{if(pi>>>0<t[li+104>>2]){q[li+4>>2]=pi+1;pi=r[pi|0];break d}pi=Hn(li)}if((pi|0)==48){continue}break}gj=1}q[_i+768>>2]=0;tj=a;uj=a;e:{f:{bj=(pi|0)==46;hj=pi+ -48|0;g:{h:{i:{if(!(bj|hj>>>0<=9)){break i}while(1){j:{if(bj&1){if(!cj){aj=fj;$i=ej;cj=1;break j}gj=(gj|0)!=0;break h}bj=fj+1|0;if(bj>>>0<1){ej=ej+1|0}fj=bj;if((dj|0)<=2044){lj=(pi|0)!=48?fj:lj;bj=(_i+768|0)+(dj<<2)|0;gj=bj;if(ij){hj=(w(q[bj>>2],10)+pi|0)+ -48|0}q[gj>>2]=hj;gj=1;bj=ij+1|0;pi=(bj|0)==9;ij=pi?0:bj;dj=pi+dj|0;break j}if((pi|0)==48){break j}q[_i+8944>>2]=q[_i+8944>>2]|1}pi=q[li+4>>2];k:{if(pi>>>0<t[li+104>>2]){q[li+4>>2]=pi+1;pi=r[pi|0];break k}pi=Hn(li)}bj=(pi|0)==46;hj=pi+ -48|0;if(bj|hj>>>0<10){continue}break}}aj=cj?aj:fj;$i=cj?$i:ej;if(!(!gj|(pi|32)!=101)){pi=Dn(li);bj=V;cj=bj;l:{if(pi|(bj|0)!=-2147483648){break l}pi=0;cj=0;if(!q[li+104>>2]){break l}q[li+4>>2]=q[li+4>>2]+ -1}$i=$i+cj|0;li=pi+aj|0;if(li>>>0<pi>>>0){$i=$i+1|0}aj=li;break f}gj=(gj|0)!=0;if((pi|0)<0){break g}}if(!q[li+104>>2]){break g}q[li+4>>2]=q[li+4>>2]+ -1}if(gj){break f}q[4681]=28;Gn(li);aj=0;$i=0;pi=0;li=0;break e}li=q[_i+768>>2];if(!li){On(_i,+(Zi|0)*0);aj=q[_i+8>>2];$i=q[_i+12>>2];pi=q[_i+4>>2];li=q[_i>>2];break e}if(!((aj|0)!=(fj|0)|($i|0)!=(ej|0)|((ej|0)>0?1:(ej|0)>=0?fj>>>0<=9?0:1:0)|(li>>>Bi?(Bi|0)<=30:0))){Rn(_i+32|0,li);Qn(_i+48|0,Zi);Tn(_i+16|0,q[_i+48>>2],q[_i+52>>2],q[_i+56>>2],q[_i+60>>2],q[_i+32>>2],q[_i+36>>2],q[_i+40>>2],q[_i+44>>2]);aj=q[_i+24>>2];$i=q[_i+28>>2];pi=q[_i+20>>2];li=q[_i+16>>2];break e}li=(Ci|0)/-2|0;pi=aj>>>0<=li>>>0?0:1;li=li>>31;if(($i|0)>(li|0)?1:($i|0)>=(li|0)?pi:0){Qn(_i+96|0,Zi);Tn(_i+80|0,q[_i+96>>2],q[_i+100>>2],q[_i+104>>2],q[_i+108>>2],-1,-1,-1,2147418111);Tn(_i- -64|0,q[_i+80>>2],q[_i+84>>2],q[_i+88>>2],q[_i+92>>2],-1,-1,-1,2147418111);q[4681]=68;aj=q[_i+72>>2];$i=q[_i+76>>2];pi=q[_i+68>>2];li=q[_i+64>>2];break e}li=Ci+ -226|0;pi=aj>>>0>=li>>>0?0:1;li=li>>31;if(($i|0)<(li|0)?1:($i|0)<=(li|0)?pi:0){Qn(_i+144|0,Zi);Tn(_i+128|0,q[_i+144>>2],q[_i+148>>2],q[_i+152>>2],q[_i+156>>2],0,0,0,65536);Tn(_i+112|0,q[_i+128>>2],q[_i+132>>2],q[_i+136>>2],q[_i+140>>2],0,0,0,65536);q[4681]=68;aj=q[_i+120>>2];$i=q[_i+124>>2];pi=q[_i+116>>2];li=q[_i+112>>2];break e}if(ij){if((ij|0)<=8){pi=(_i+768|0)+(dj<<2)|0;li=q[pi>>2];while(1){li=w(li,10);$i=(ij|0)<8;ij=ij+1|0;if($i){continue}break}q[pi>>2]=li}dj=dj+1|0}m:{cj=aj;if((lj|0)>8|(lj|0)>(aj|0)|(aj|0)>17){break m}if((cj|0)==9){Rn(_i+176|0,q[_i+768>>2]);Qn(_i+192|0,Zi);Tn(_i+160|0,q[_i+192>>2],q[_i+196>>2],q[_i+200>>2],q[_i+204>>2],q[_i+176>>2],q[_i+180>>2],q[_i+184>>2],q[_i+188>>2]);aj=q[_i+168>>2];$i=q[_i+172>>2];pi=q[_i+164>>2];li=q[_i+160>>2];break e}if((cj|0)<=8){Rn(_i+256|0,q[_i+768>>2]);Qn(_i+272|0,Zi);Tn(_i+240|0,q[_i+272>>2],q[_i+276>>2],q[_i+280>>2],q[_i+284>>2],q[_i+256>>2],q[_i+260>>2],q[_i+264>>2],q[_i+268>>2]);Qn(_i+224|0,q[(0-cj<<2)+17232>>2]);Nn(_i+208|0,q[_i+240>>2],q[_i+244>>2],q[_i+248>>2],q[_i+252>>2],q[_i+224>>2],q[_i+228>>2],q[_i+232>>2],q[_i+236>>2]);aj=q[_i+216>>2];$i=q[_i+220>>2];pi=q[_i+212>>2];li=q[_i+208>>2];break e}li=(w(cj,-3)+Bi|0)+27|0;pi=q[_i+768>>2];if(pi>>>li?(li|0)<=30:0){break m}Rn(_i+336|0,pi);Qn(_i+352|0,Zi);Tn(_i+320|0,q[_i+352>>2],q[_i+356>>2],q[_i+360>>2],q[_i+364>>2],q[_i+336>>2],q[_i+340>>2],q[_i+344>>2],q[_i+348>>2]);Qn(_i+304|0,q[(cj<<2)+17160>>2]);Tn(_i+288|0,q[_i+320>>2],q[_i+324>>2],q[_i+328>>2],q[_i+332>>2],q[_i+304>>2],q[_i+308>>2],q[_i+312>>2],q[_i+316>>2]);aj=q[_i+296>>2];$i=q[_i+300>>2];pi=q[_i+292>>2];li=q[_i+288>>2];break e}ij=0;li=(cj|0)%9|0;n:{if(!li){pi=0;break n}$i=(cj|0)>-1?li:li+9|0;o:{if(!dj){pi=0;dj=0;break o}aj=q[(0-$i<<2)+17232>>2];ej=1e9/(aj|0)|0;gj=0;li=0;pi=0;while(1){bj=gj;fj=(_i+768|0)+(li<<2)|0;gj=q[fj>>2];hj=(gj>>>0)/(aj>>>0)|0;bj=bj+hj|0;q[fj>>2]=bj;bj=!bj&(li|0)==(pi|0);pi=bj?pi+1&2047:pi;cj=bj?cj+ -9|0:cj;gj=w(ej,gj-w(aj,hj)|0);li=li+1|0;if((dj|0)!=(li|0)){continue}break}if(!gj){break o}q[(_i+768|0)+(dj<<2)>>2]=gj;dj=dj+1|0}cj=(cj-$i|0)+9|0}while(1){fj=(_i+768|0)+(pi<<2)|0;p:{while(1){if((cj|0)!=36|t[fj>>2]>=10384593?(cj|0)>=36:0){break p}hj=dj+2047|0;gj=0;bj=dj;while(1){dj=bj;ej=hj&2047;hj=(_i+768|0)+(ej<<2)|0;li=q[hj>>2];$i=li>>>3;aj=li<<29;li=aj+gj|0;if(li>>>0<aj>>>0){$i=$i+1|0}aj=li;bj=0;q:{if(!$i&li>>>0<1000000001|$i>>>0<0){break q}bj=Wp(li,$i,1e9,0);aj=aj-Up(bj,V,1e9,0)|0}gj=bj;q[hj>>2]=aj;bj=(ej|0)!=(dj+ -1&2047)?dj:(pi|0)==(ej|0)?dj:aj?dj:ej;hj=ej+ -1|0;if((pi|0)!=(ej|0)){continue}break}ij=ij+ -29|0;if(!gj){continue}break}pi=pi+ -1&2047;if((bj|0)==(pi|0)){li=(_i+768|0)+((bj+2046&2047)<<2)|0;dj=bj+ -1&2047;q[li>>2]=q[li>>2]|q[(_i+768|0)+(dj<<2)>>2]}cj=cj+9|0;q[(_i+768|0)+(pi<<2)>>2]=gj;continue}break}r:{s:while(1){$i=dj+1&2047;ej=(_i+768|0)+((dj+ -1&2047)<<2)|0;while(1){aj=(cj|0)>45?9:1;t:{while(1){bj=pi;li=0;u:{while(1){pi=li+bj&2047;v:{if((pi|0)==(dj|0)){break v}pi=q[(_i+768|0)+(pi<<2)>>2];fj=q[(li<<2)+17184>>2];if(pi>>>0<fj>>>0){break v}if(pi>>>0>fj>>>0){break u}li=li+1|0;if((li|0)!=4){continue}}break}if((cj|0)!=36){break u}aj=0;$i=0;li=0;fj=0;ej=0;while(1){pi=li+bj&2047;if((pi|0)==(dj|0)){dj=dj+1&2047;q[((dj<<2)+_i|0)+764>>2]=0}Tn(_i+752|0,aj,$i,fj,ej,0,0,1342177280,1075633366);Rn(_i+736|0,q[(_i+768|0)+(pi<<2)>>2]);Jn(_i+720|0,q[_i+752>>2],q[_i+756>>2],q[_i+760>>2],q[_i+764>>2],q[_i+736>>2],q[_i+740>>2],q[_i+744>>2],q[_i+748>>2]);fj=q[_i+728>>2];ej=q[_i+732>>2];aj=q[_i+720>>2];$i=q[_i+724>>2];li=li+1|0;if((li|0)!=4){continue}break}Qn(_i+704|0,Zi);Tn(_i+688|0,aj,$i,fj,ej,q[_i+704>>2],q[_i+708>>2],q[_i+712>>2],q[_i+716>>2]);fj=q[_i+696>>2];ej=q[_i+700>>2];aj=0;$i=0;pi=q[_i+688>>2];cj=q[_i+692>>2];hj=ij+113|0;Ci=hj-Ci|0;gj=(Ci|0)<(Bi|0);Bi=gj?(Ci|0)>0?Ci:0:Bi;if((Bi|0)<=112){break t}break r}ij=aj+ij|0;pi=dj;if((bj|0)==(pi|0)){continue}break}fj=1e9>>>aj;gj=-1<<aj^-1;li=0;pi=bj;while(1){hj=(_i+768|0)+(bj<<2)|0;lj=q[hj>>2];li=(lj>>>aj)+li|0;q[hj>>2]=li;li=!li&(pi|0)==(bj|0);pi=li?pi+1&2047:pi;cj=li?cj+ -9|0:cj;li=w(fj,gj&lj);bj=bj+1&2047;if((bj|0)!=(dj|0)){continue}break}if(!li){continue}if((pi|0)!=($i|0)){q[(_i+768|0)+(dj<<2)>>2]=li;dj=$i;continue s}q[ej>>2]=q[ej>>2]|1;pi=$i;continue}break}break}On(_i+640|0,tp(225-Bi|0));yn(_i+672|0,q[_i+640>>2],q[_i+644>>2],q[_i+648>>2],q[_i+652>>2],pi,cj,fj,ej);nj=q[_i+680>>2];oj=q[_i+684>>2];pj=q[_i+672>>2];qj=q[_i+676>>2];On(_i+624|0,tp(113-Bi|0));rp(_i+656|0,pi,cj,fj,ej,q[_i+624>>2],q[_i+628>>2],q[_i+632>>2],q[_i+636>>2]);aj=q[_i+656>>2];$i=q[_i+660>>2];jj=q[_i+664>>2];kj=q[_i+668>>2];Vn(_i+608|0,pi,cj,fj,ej,aj,$i,jj,kj);Jn(_i+592|0,pj,qj,nj,oj,q[_i+608>>2],q[_i+612>>2],q[_i+616>>2],q[_i+620>>2]);fj=q[_i+600>>2];ej=q[_i+604>>2];pi=q[_i+592>>2];cj=q[_i+596>>2]}li=bj+4&2047;w:{if((li|0)==(dj|0)){break w}li=q[(_i+768|0)+(li<<2)>>2];x:{if(li>>>0<=499999999){if((bj+5&2047)==(dj|0)?!li:0){break x}On(_i+480|0,+(Zi|0)*.25);Jn(_i+464|0,aj,$i,jj,kj,q[_i+480>>2],q[_i+484>>2],q[_i+488>>2],q[_i+492>>2]);jj=q[_i+472>>2];kj=q[_i+476>>2];aj=q[_i+464>>2];$i=q[_i+468>>2];break x}if((li|0)!=5e8){On(_i+576|0,+(Zi|0)*.75);Jn(_i+560|0,aj,$i,jj,kj,q[_i+576>>2],q[_i+580>>2],q[_i+584>>2],q[_i+588>>2]);jj=q[_i+568>>2];kj=q[_i+572>>2];aj=q[_i+560>>2];$i=q[_i+564>>2];break x}rj=+(Zi|0);if((bj+5&2047)==(dj|0)){On(_i+512|0,rj*.5);Jn(_i+496|0,aj,$i,jj,kj,q[_i+512>>2],q[_i+516>>2],q[_i+520>>2],q[_i+524>>2]);jj=q[_i+504>>2];kj=q[_i+508>>2];aj=q[_i+496>>2];$i=q[_i+500>>2];break x}On(_i+544|0,rj*.75);Jn(_i+528|0,aj,$i,jj,kj,q[_i+544>>2],q[_i+548>>2],q[_i+552>>2],q[_i+556>>2]);jj=q[_i+536>>2];kj=q[_i+540>>2];aj=q[_i+528>>2];$i=q[_i+532>>2]}if((Bi|0)>111){break w}rp(_i+448|0,aj,$i,jj,kj,0,0,0,1073676288);if(Ln(q[_i+448>>2],q[_i+452>>2],q[_i+456>>2],q[_i+460>>2],0,0,0,0)){break w}Jn(_i+432|0,aj,$i,jj,kj,0,0,0,1073676288);jj=q[_i+440>>2];kj=q[_i+444>>2];aj=q[_i+432>>2];$i=q[_i+436>>2]}Jn(_i+416|0,pi,cj,fj,ej,aj,$i,jj,kj);Vn(_i+400|0,q[_i+416>>2],q[_i+420>>2],q[_i+424>>2],q[_i+428>>2],pj,qj,nj,oj);fj=q[_i+408>>2];ej=q[_i+412>>2];pi=q[_i+400>>2];cj=q[_i+404>>2];y:{if((hj&2147483647)<=(-2-mj|0)){break y}Tn(_i+384|0,pi,cj,fj,ej,0,0,0,1073610752);Zi=Ln(aj,$i,jj,kj,0,0,0,0);li=y(Wn(pi,cj,fj,ej))>=1.0384593717069655e+34;fj=li?q[_i+392>>2]:fj;ej=li?q[_i+396>>2]:ej;pi=li?q[_i+384>>2]:pi;cj=li?q[_i+388>>2]:cj;ij=li+ij|0;if((ij+110|0)<=(sj|0)?!(gj&(li^1|(Bi|0)!=(Ci|0))&(Zi|0)!=0):0){break y}q[4681]=68}zn(_i+368|0,pi,cj,fj,ej,ij);aj=q[_i+376>>2];$i=q[_i+380>>2];pi=q[_i+372>>2];li=q[_i+368>>2]}q[uj>>2]=li;q[tj+4>>2]=pi;q[a+8>>2]=aj;q[a+12>>2]=$i;T=_i+8960|0}function Dn(a){var li=0,pi=0,Bi=0,Ci=0,Zi=0;li=q[a+4>>2];a:{if(li>>>0<t[a+104>>2]){q[a+4>>2]=li+1;li=r[li|0];break a}li=Hn(a)}Bi=li+ -43|0;b:{if(!(Bi-1|0?Bi>>>0<=2:0)){pi=li+ -48|0;break b}Zi=(li|0)==45;li=q[a+4>>2];c:{if(li>>>0<t[a+104>>2]){q[a+4>>2]=li+1;li=r[li|0];break c}li=Hn(a)}pi=li+ -48|0;if(!(pi>>>0<10|!q[a+104>>2])){q[a+4>>2]=q[a+4>>2]+ -1}}d:{if(pi>>>0<10){pi=0;while(1){Bi=w(pi,10)+li|0;li=q[a+4>>2];e:{if(li>>>0<t[a+104>>2]){q[a+4>>2]=li+1;li=r[li|0];break e}li=Hn(a)}Ci=li+ -48|0;pi=Bi+ -48|0;if((pi|0)<214748364?Ci>>>0<=9:0){continue}break}Bi=pi;pi=pi>>31;f:{if(Ci>>>0>=10){break f}while(1){pi=Up(Bi,pi,10,0);Bi=pi+li|0;li=V;li=Bi>>>0<pi>>>0?li+1|0:li;Bi=Bi+ -48|0;pi=li+ -1|0;pi=Bi>>>0<4294967248?pi+1|0:pi;li=q[a+4>>2];g:{if(li>>>0<t[a+104>>2]){q[a+4>>2]=li+1;li=r[li|0];break g}li=Hn(a)}Ci=li+ -48|0;if(Ci>>>0>9){break f}if((pi|0)<21474836?1:(pi|0)<=21474836?Bi>>>0>=2061584302?0:1:0){continue}break}}if(Ci>>>0<10){while(1){li=q[a+4>>2];h:{if(li>>>0<t[a+104>>2]){q[a+4>>2]=li+1;li=r[li|0];break h}li=Hn(a)}if(li+ -48>>>0<10){continue}break}}if(q[a+104>>2]){q[a+4>>2]=q[a+4>>2]+ -1}a=Bi;Bi=Zi?0-a|0:a;pi=Zi?0-(pi+(0<a>>>0)|0)|0:pi;break d}Bi=0;pi=-2147483648;if(!q[a+104>>2]){break d}q[a+4>>2]=q[a+4>>2]+ -1;V=-2147483648;return 0}V=pi;return Bi}function En(a){var vj=0,wj=0;vj=r[a+74|0];o[a+74|0]=vj+ -1|vj;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;vj=q[a>>2];if(vj&4){q[a>>2]=vj|32;return-1}wj=q[a+44>>2]+q[a+48>>2]|0;q[a+8>>2]=wj;q[a+4>>2]=wj;return vj<<27>>31}function Fn(a){var xj=0,yj=0;xj=T-16|0;T=xj;yj=-1;a:{if(En(a)){break a}if((n[q[a+32>>2]](a,xj+15|0,1)|0)!=1){break a}yj=r[xj+15|0]}T=xj+16|0;return yj}function Gn(a){var zj=0,Aj=0;q[a+112>>2]=0;q[a+116>>2]=0;zj=q[a+8>>2];Aj=zj-q[a+4>>2]|0;q[a+120>>2]=Aj;q[a+124>>2]=Aj>>31;q[a+104>>2]=zj}function Hn(a){var Bj=0,Cj=0,Dj=0,Ej=0,Fj=0,Gj=0,Hj=0;Bj=q[a+116>>2];Cj=Bj;a:{Fj=q[a+112>>2];b:{if(Bj|Fj){Bj=q[a+124>>2];if((Bj|0)>(Cj|0)?1:(Bj|0)>=(Cj|0)?t[a+120>>2]<Fj>>>0?0:1:0){break b}}Fj=Fn(a);if((Fj|0)>-1){break a}}q[a+104>>2]=0;return-1}Bj=q[a+8>>2];Cj=q[a+116>>2];Ej=Cj;c:{d:{Dj=q[a+112>>2];if(!(Cj|Dj)){break d}Cj=(q[a+124>>2]^-1)+Ej|0;Ej=q[a+120>>2]^-1;Dj=Ej+Dj|0;if(Dj>>>0<Ej>>>0){Cj=Cj+1|0}Ej=Dj;Dj=q[a+4>>2];Gj=Bj-Dj|0;Hj=Ej>>>0<Gj>>>0?0:1;Gj=Gj>>31;if((Cj|0)>(Gj|0)?1:(Cj|0)>=(Gj|0)?Hj:0){break d}q[a+104>>2]=Ej+Dj;break c}q[a+104>>2]=Bj}e:{if(!Bj){Bj=q[a+4>>2];break e}Cj=a;Ej=Bj;Bj=q[a+4>>2];Dj=(Ej-Bj|0)+1|0;Ej=Dj+q[a+120>>2]|0;a=q[a+124>>2]+(Dj>>31)|0;q[Cj+120>>2]=Ej;q[Cj+124>>2]=Ej>>>0<Dj>>>0?a+1|0:a}a=Bj+ -1|0;if(r[a|0]!=(Fj|0)){o[a|0]=Fj}return Fj}function In(a){if(!a){return 0}q[4681]=a;return-1}function Jn(a,Ij,Jj,Kj,Lj,Mj,Nj,Oj,Pj){var Qj=0,Rj=0,Sj=0,Tj=0,Uj=0,Vj=0,Wj=0,Xj=0,Yj=0,Zj=0,_j=0,$j=0;Sj=T-112|0;T=Sj;Tj=Oj;Vj=Pj&2147483647;Rj=Jj+ -1|0;Qj=Ij+ -1|0;if(Qj>>>0<4294967295){Rj=Rj+1|0}Uj=Qj;Xj=(Qj|0)==-1&(Rj|0)==-1;Wj=Lj&2147483647;Qj=Wj;Yj=Kj;Rj=(Jj|0)==(Rj|0)&Uj>>>0<Ij>>>0|Rj>>>0<Jj>>>0;Uj=Kj+Rj|0;if(Uj>>>0<Rj>>>0){Qj=Qj+1|0}Uj=Uj+ -1|0;Rj=Qj+ -1|0;Qj=Uj;a:{b:{Rj=Qj>>>0<4294967295?Rj+1|0:Rj;if(!((Qj|0)==-1&(Rj|0)==2147418111?Xj:(Rj|0)==2147418111&Qj>>>0>4294967295|Rj>>>0>2147418111)){Rj=Nj+ -1|0;Qj=Mj+ -1|0;if(Qj>>>0<4294967295){Rj=Rj+1|0}Uj=Qj;Xj=(Qj|0)!=-1|(Rj|0)!=-1;Qj=Vj;Rj=(Nj|0)==(Rj|0)&Uj>>>0<Mj>>>0|Rj>>>0<Nj>>>0;Uj=Rj+Tj|0;if(Uj>>>0<Rj>>>0){Qj=Qj+1|0}Rj=Uj+ -1|0;Qj=Qj+ -1|0;Qj=Rj>>>0<4294967295?Qj+1|0:Qj;if((Rj|0)==-1&(Qj|0)==2147418111?Xj:(Qj|0)==2147418111&Rj>>>0<4294967295|Qj>>>0<2147418111){break b}}if(!(!Yj&(Wj|0)==2147418112?!(Ij|Jj):(Wj|0)==2147418112&Yj>>>0<0|Wj>>>0<2147418112)){Oj=Kj;Pj=Lj|32768;Mj=Ij;Nj=Jj;break a}if(!(!Tj&(Vj|0)==2147418112?!(Mj|Nj):(Vj|0)==2147418112&Tj>>>0<0|Vj>>>0<2147418112)){Pj=Pj|32768;break a}if(!(Ij|Yj|(Wj^2147418112|Jj))){Qj=Kj;Kj=!(Ij^Mj|Kj^Oj|(Jj^Nj|Lj^Pj^-2147483648));Oj=Kj?0:Qj;Pj=Kj?2147450880:Lj;Mj=Kj?0:Ij;Nj=Kj?0:Jj;break a}if(!(Mj|Tj|(Vj^2147418112|Nj))){break a}if(!(Ij|Yj|(Jj|Wj))){if(Mj|Tj|(Nj|Vj)){break a}Mj=Ij&Mj;Nj=Jj&Nj;Oj=Kj&Oj;Pj=Lj&Pj;break a}if(Mj|Tj|(Nj|Vj)){break b}Mj=Ij;Nj=Jj;Oj=Kj;Pj=Lj;break a}Rj=(Tj|0)==(Yj|0)&(Vj|0)==(Wj|0)?(Jj|0)==(Nj|0)&Mj>>>0>Ij>>>0|Nj>>>0>Jj>>>0:(Vj|0)==(Wj|0)&Tj>>>0>Yj>>>0|Vj>>>0>Wj>>>0;Qj=Rj;Wj=Qj?Mj:Ij;Vj=Qj?Nj:Jj;Tj=Qj?Pj:Lj;Yj=Tj;Zj=Qj?Oj:Kj;Uj=Zj;Qj=Tj&65535;Pj=Rj?Lj:Pj;_j=Pj;Lj=Rj?Kj:Oj;Xj=Pj>>>16&32767;Tj=Tj>>>16&32767;if(!Tj){Kj=!(Qj|Uj);Oj=Kj<<6;Pj=z(Kj?Wj:Uj)+32|0;Kj=z(Kj?Vj:Qj);Kj=Oj+((Kj|0)==32?Pj:Kj)|0;Kn(Sj+96|0,Wj,Vj,Uj,Qj,Kj+ -15|0);Uj=q[Sj+104>>2];Wj=q[Sj+96>>2];Vj=q[Sj+100>>2];Tj=16-Kj|0;Qj=q[Sj+108>>2]}Mj=Rj?Ij:Mj;Nj=Rj?Jj:Nj;Ij=Lj;Jj=_j&65535;if(Xj){Kj=Ij;Ij=Jj}else{Pj=Ij;Kj=!(Ij|Jj);Oj=Kj<<6;Rj=z(Kj?Mj:Ij)+32|0;Ij=z(Kj?Nj:Jj);Ij=Oj+((Ij|0)==32?Rj:Ij)|0;Kn(Sj+80|0,Mj,Nj,Pj,Jj,Ij+ -15|0);Xj=16-Ij|0;Mj=q[Sj+80>>2];Nj=q[Sj+84>>2];Kj=q[Sj+88>>2];Ij=q[Sj+92>>2]}Jj=Kj;Rj=Ij<<3|Jj>>>29;Oj=Jj<<3|Nj>>>29;Pj=Rj|524288;Ij=Uj;Kj=Qj<<3|Ij>>>29;Rj=Ij<<3|Vj>>>29;$j=Kj;Zj=Lj^Zj;Uj=Yj^_j;Ij=Mj;Qj=Nj<<3|Ij>>>29;Ij=Ij<<3;Jj=Qj;Lj=Tj-Xj|0;Kj=Ij;c:{if(!Lj){break c}if(Lj>>>0>127){Oj=0;Pj=0;Qj=0;Kj=1;break c}Kn(Sj- -64|0,Ij,Jj,Oj,Pj,128-Lj|0);Sn(Sj+48|0,Ij,Jj,Oj,Pj,Lj);Oj=q[Sj+56>>2];Pj=q[Sj+60>>2];Qj=q[Sj+52>>2];Kj=q[Sj+48>>2]|((q[Sj+64>>2]|q[Sj+72>>2])!=0|(q[Sj+68>>2]|q[Sj+76>>2])!=0)}Nj=Qj;Lj=Rj;Xj=$j|524288;Ij=Wj;Qj=Vj<<3|Ij>>>29;Jj=Ij<<3;d:{if((Uj|0)<-1?1:(Uj|0)<=-1?Zj>>>0>4294967295?0:1:0){Vj=Kj;Ij=Jj-Kj|0;Wj=Lj-Oj|0;Kj=(Nj|0)==(Qj|0)&Jj>>>0<Kj>>>0|Qj>>>0<Nj>>>0;Mj=Wj-Kj|0;Jj=Qj-((Jj>>>0<Vj>>>0)+Nj|0)|0;Nj=(Xj-((Lj>>>0<Oj>>>0)+Pj|0)|0)-(Wj>>>0<Kj>>>0)|0;if(!(Ij|Mj|(Jj|Nj))){Mj=0;Nj=0;Oj=0;Pj=0;break a}if((Nj|0)==524287&Mj>>>0>4294967295|Nj>>>0>524287){break d}Oj=Ij;Kj=!(Mj|Nj);Lj=Kj<<6;Pj=z(Kj?Ij:Mj)+32|0;Ij=z(Kj?Jj:Nj);Ij=Lj+((Ij|0)==32?Pj:Ij)|0;Ij=Ij+ -12|0;Kn(Sj+32|0,Oj,Jj,Mj,Nj,Ij);Tj=Tj-Ij|0;Mj=q[Sj+40>>2];Nj=q[Sj+44>>2];Ij=q[Sj+32>>2];Jj=q[Sj+36>>2];break d}Rj=Nj+Qj|0;Ij=Kj;Jj=Ij+Jj|0;if(Jj>>>0<Ij>>>0){Rj=Rj+1|0}Ij=Jj;Jj=Rj;Nj=(Nj|0)==(Jj|0)&Ij>>>0<Kj>>>0|Jj>>>0<Nj>>>0;Rj=Pj+Xj|0;Kj=Lj+Oj|0;if(Kj>>>0<Lj>>>0){Rj=Rj+1|0}Mj=Kj;Lj=Nj+Kj|0;Kj=Rj;Kj=Lj>>>0<Mj>>>0?Kj+1|0:Kj;Mj=Lj;Nj=Kj;if(!(Kj&1048576)){break d}Ij=Ij&1|((Jj&1)<<31|Ij>>>1);Jj=Mj<<31|Jj>>>1;Tj=Tj+1|0;Mj=(Nj&1)<<31|Mj>>>1;Nj=Nj>>>1}Oj=0;Qj=Yj&-2147483648;if((Tj|0)>=32767){Pj=Qj|2147418112;Mj=0;Nj=0;break a}Lj=0;e:{if((Tj|0)>0){Lj=Tj;break e}Kn(Sj+16|0,Ij,Jj,Mj,Nj,Tj+127|0);Sn(Sj,Ij,Jj,Mj,Nj,1-Tj|0);Ij=q[Sj>>2]|((q[Sj+16>>2]|q[Sj+24>>2])!=0|(q[Sj+20>>2]|q[Sj+28>>2])!=0);Jj=q[Sj+4>>2];Mj=q[Sj+8>>2];Nj=q[Sj+12>>2]}Oj=Oj|((Nj&7)<<29|Mj>>>3);Lj=Qj|Nj>>>3&65535|Lj<<16;Qj=Mj<<29;Kj=0;Mj=Qj;Nj=(Jj&7)<<29|Ij>>>3|Kj;Qj=Lj;Kj=Jj>>>3|Mj;Rj=Kj;Lj=Ij&7;Ij=Lj>>>0>4;Jj=Ij+Nj|0;if(Jj>>>0<Ij>>>0){Rj=Rj+1|0}Ij=Jj;Jj=Rj;Kj=(Kj|0)==(Jj|0)&Ij>>>0<Nj>>>0|Jj>>>0<Kj>>>0;Mj=Kj+Oj|0;if(Mj>>>0<Kj>>>0){Qj=Qj+1|0}Lj=(Lj|0)==4;Kj=Lj?Ij&1:0;Pj=Qj;Oj=Mj;Lj=0;Qj=Jj+Lj|0;Jj=Ij+Kj|0;if(Jj>>>0<Ij>>>0){Qj=Qj+1|0}Mj=Jj;Ij=Jj;Nj=Qj;Ij=(Lj|0)==(Qj|0)&Ij>>>0<Kj>>>0|Qj>>>0<Lj>>>0;Jj=Oj+Ij|0;if(Jj>>>0<Ij>>>0){Pj=Pj+1|0}Oj=Jj}q[a>>2]=Mj;q[a+4>>2]=Nj;q[a+8>>2]=Oj;q[a+12>>2]=Pj;T=Sj+112|0}function Kn(a,Ij,Jj,Kj,Lj,Mj){var Nj=0,Oj=0,Pj=0,ak=0;a:{if(Mj&64){Kj=Ij;Lj=Mj+ -64|0;Ij=Lj&31;if(32<=(Lj&63)>>>0){Lj=Kj<<Ij;Kj=0}else{Lj=(1<<Ij)-1&Kj>>>32-Ij|Jj<<Ij;Kj=Kj<<Ij}Ij=0;Jj=0;break a}if(!Mj){break a}Nj=Kj;Pj=Mj;Kj=Mj&31;if(32<=(Mj&63)>>>0){Oj=Nj<<Kj;ak=0}else{Oj=(1<<Kj)-1&Nj>>>32-Kj|Lj<<Kj;ak=Nj<<Kj}Kj=Jj;Nj=Ij;Mj=64-Mj|0;Lj=Mj&31;if(32<=(Mj&63)>>>0){Mj=0;Kj=Kj>>>Lj}else{Mj=Kj>>>Lj;Kj=((1<<Lj)-1&Kj)<<32-Lj|Nj>>>Lj}Kj=ak|Kj;Lj=Mj|Oj;Mj=Ij;Ij=Pj&31;if(32<=(Pj&63)>>>0){Oj=Mj<<Ij;Ij=0}else{Oj=(1<<Ij)-1&Mj>>>32-Ij|Jj<<Ij;Ij=Mj<<Ij}Jj=Oj}q[a>>2]=Ij;q[a+4>>2]=Jj;q[a+8>>2]=Kj;q[a+12>>2]=Lj}function Ln(a,Ij,Jj,Kj,Lj,Mj,bk,ck){var dk=0,ek=0,fk=0,gk=0,hk=0,ik=0;ek=1;dk=Kj&2147483647;hk=dk;fk=Jj;a:{if(!Jj&(dk|0)==2147418112?a|Ij:(dk|0)==2147418112&Jj>>>0>0|dk>>>0>2147418112){break a}gk=ck&2147483647;ik=gk;dk=bk;if(!bk&(gk|0)==2147418112?Lj|Mj:(gk|0)==2147418112&bk>>>0>0|gk>>>0>2147418112){break a}if(!(a|Lj|(dk|fk)|(Ij|Mj|(hk|ik)))){return 0}fk=Kj&ck;if((fk|0)>0?1:(fk|0)>=0?(Jj&bk)>>>0<0?0:1:0){ek=-1;if((Jj|0)==(bk|0)&(Kj|0)==(ck|0)?(Ij|0)==(Mj|0)&a>>>0<Lj>>>0|Ij>>>0<Mj>>>0:(Kj|0)<(ck|0)?1:(Kj|0)<=(ck|0)?Jj>>>0>=bk>>>0?0:1:0){break a}return(a^Lj|Jj^bk)!=0|(Ij^Mj|Kj^ck)!=0}ek=-1;if((Jj|0)==(bk|0)&(Kj|0)==(ck|0)?(Ij|0)==(Mj|0)&a>>>0>Lj>>>0|Ij>>>0>Mj>>>0:(Kj|0)>(ck|0)?1:(Kj|0)>=(ck|0)?Jj>>>0<=bk>>>0?0:1:0){break a}ek=(a^Lj|Jj^bk)!=0|(Ij^Mj|Kj^ck)!=0}return ek}function Mn(a,Ij,Jj,Kj){var Lj=0,Mj=0,bk=0,ck=0;bk=-1;Lj=Kj&2147483647;ck=Lj;Mj=Jj;a:{if(!Jj&(Lj|0)==2147418112?a|Ij:(Lj|0)==2147418112&Jj>>>0>0|Lj>>>0>2147418112){break a}if(!(a|Mj|(ck|1073610752|Ij))){return 0}Mj=Kj&1073610752;if((Mj|0)>0?1:(Mj|0)>=0?1:0){if(!Jj&(Kj|0)==1073610752?!Ij&a>>>0<0|Ij>>>0<0:(Kj|0)<1073610752?1:(Kj|0)<=1073610752?Jj>>>0>=0?0:1:0){break a}return(a|Jj)!=0|(Kj^1073610752|Ij)!=0}if(!Jj&(Kj|0)==1073610752?!Ij&a>>>0>0|Ij>>>0>0:(Kj|0)>1073610752?1:(Kj|0)>=1073610752?Jj>>>0<=0?0:1:0){break a}bk=(a|Jj)!=0|(Kj^1073610752|Ij)!=0}return bk}function Nn(a,Ij,Jj,Kj,jk,kk,lk,mk,nk){var 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,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;sk=T-192|0;T=sk;Ik=mk;Kk=nk&65535;vk=Kj;uk=jk&65535;Jk=(jk^nk)&-2147483648;tk=nk>>>16&32767;a:{yk=jk>>>16&32767;b:{c:{if(tk+ -1>>>0<32766?yk+ -1>>>0<=32765:0){break c}rk=jk&2147483647;pk=rk;ok=Kj;if(!(!ok&(pk|0)==2147418112?!(Ij|Jj):(pk|0)==2147418112&ok>>>0<0|pk>>>0<2147418112)){Mk=Kj;Jk=jk|32768;break b}rk=nk&2147483647;jk=rk;Kj=mk;if(!(!Kj&(jk|0)==2147418112?!(kk|lk):(jk|0)==2147418112&Kj>>>0<0|jk>>>0<2147418112)){Mk=mk;Jk=nk|32768;Ij=kk;Jj=lk;break b}if(!(Ij|ok|(pk^2147418112|Jj))){if(!(Kj|kk|(jk^2147418112|lk))){Ij=0;Jj=0;Jk=2147450880;break b}Jk=Jk|2147418112;Ij=0;Jj=0;break b}if(!(Kj|kk|(jk^2147418112|lk))){Ij=0;Jj=0;break b}if(!(Ij|ok|(Jj|pk))){break a}if(!(Kj|kk|(jk|lk))){Jk=Jk|2147418112;Ij=0;Jj=0;break b}if((pk|0)==65535&ok>>>0<=4294967295|pk>>>0<65535){ok=Ij;mk=!(vk|uk);nk=mk<<6;pk=z(mk?Ij:vk)+32|0;Ij=z(mk?Jj:uk);Ij=nk+((Ij|0)==32?pk:Ij)|0;Kn(sk+176|0,ok,Jj,vk,uk,Ij+ -15|0);qk=16-Ij|0;vk=q[sk+184>>2];uk=q[sk+188>>2];Jj=q[sk+180>>2];Ij=q[sk+176>>2]}if((jk|0)==65535&Kj>>>0>4294967295|jk>>>0>65535){break c}Kj=!(Ik|Kk);jk=Kj<<6;mk=z(Kj?kk:Ik)+32|0;Kj=z(Kj?lk:Kk);Kj=jk+((Kj|0)==32?mk:Kj)|0;Kn(sk+160|0,kk,lk,Ik,Kk,Kj+ -15|0);qk=(Kj+qk|0)+ -16|0;Ik=q[sk+168>>2];Kk=q[sk+172>>2];kk=q[sk+160>>2];lk=q[sk+164>>2]}jk=Kk|65536;Nk=jk;Sk=Ik;Kj=Ik;pk=jk<<15|Kj>>>17;Kj=Kj<<15|lk>>>17;mk=-102865788-Kj|0;jk=pk;ok=pk;nk=1963258675-(ok+(4192101508<Kj>>>0)|0)|0;Un(sk+144|0,Kj,ok,mk,nk);ok=q[sk+152>>2];Un(sk+128|0,0-ok|0,0-(q[sk+156>>2]+(0<ok>>>0)|0)|0,mk,nk);mk=q[sk+136>>2];nk=mk<<1|q[sk+132>>2]>>>31;mk=q[sk+140>>2]<<1|mk>>>31;Un(sk+112|0,nk,mk,Kj,pk);ok=mk;mk=q[sk+120>>2];Un(sk+96|0,nk,ok,0-mk|0,0-(q[sk+124>>2]+(0<mk>>>0)|0)|0);mk=q[sk+104>>2];nk=mk<<1|q[sk+100>>2]>>>31;mk=q[sk+108>>2]<<1|mk>>>31;Un(sk+80|0,nk,mk,Kj,pk);ok=mk;mk=q[sk+88>>2];Un(sk- -64|0,nk,ok,0-mk|0,0-(q[sk+92>>2]+(0<mk>>>0)|0)|0);mk=q[sk+72>>2];nk=mk<<1|q[sk+68>>2]>>>31;mk=q[sk+76>>2]<<1|mk>>>31;Un(sk+48|0,nk,mk,Kj,pk);ok=mk;mk=q[sk+56>>2];Un(sk+32|0,nk,ok,0-mk|0,0-(q[sk+60>>2]+(0<mk>>>0)|0)|0);mk=q[sk+40>>2];nk=mk<<1|q[sk+36>>2]>>>31;mk=q[sk+44>>2]<<1|mk>>>31;Un(sk+16|0,nk,mk,Kj,pk);ok=mk;mk=q[sk+24>>2];Un(sk,nk,ok,0-mk|0,0-(q[sk+28>>2]+(0<mk>>>0)|0)|0);Ok=(yk-tk|0)+qk|0;mk=q[sk+8>>2];ok=q[sk+12>>2]<<1|mk>>>31;nk=mk<<1;pk=ok+ -1|0;nk=(q[sk+4>>2]>>>31|nk)+ -1|0;if(nk>>>0<4294967295){pk=pk+1|0}ok=0;zk=ok;mk=nk;Ak=jk;qk=0;wk=Up(mk,ok,jk,qk);jk=V;xk=jk;Ek=pk;nk=0;tk=Kj;yk=0;pk=Up(pk,nk,Kj,yk);Kj=pk+wk|0;ok=V+jk|0;rk=Kj;Kj=Kj>>>0<pk>>>0?ok+1|0:ok;tk=Up(mk,zk,tk,yk);jk=0+tk|0;pk=rk;ok=pk+V|0;ok=jk>>>0<tk>>>0?ok+1|0:ok;yk=jk;tk=jk;jk=ok;ok=(pk|0)==(ok|0)&tk>>>0<Bk>>>0|ok>>>0<pk>>>0;pk=(Kj|0)==(xk|0)&pk>>>0<wk>>>0|Kj>>>0<xk>>>0;rk=Kj;Kj=Up(Ek,nk,Ak,qk)+Kj|0;qk=pk+V|0;qk=Kj>>>0<rk>>>0?qk+1|0:qk;pk=Kj;Kj=ok+pk|0;ok=qk;Fk=Kj;Kj=Kj>>>0<pk>>>0?ok+1|0:ok;ok=lk;Dk=(ok&131071)<<15|kk>>>17;xk=Up(mk,zk,Dk,0);ok=V;Ak=ok;rk=kk;qk=rk<<15&-32768;Ck=Up(Ek,nk,qk,0);rk=Ck+xk|0;pk=V+ok|0;pk=rk>>>0<Ck>>>0?pk+1|0:pk;ok=rk;Ck=0;Gk=Up(mk,zk,qk,Bk);Bk=Ck+Gk|0;qk=ok;ok=ok+V|0;ok=Bk>>>0<Gk>>>0?ok+1|0:ok;wk=(ok|0)==(qk|0)&Bk>>>0<Ck>>>0|ok>>>0<qk>>>0;ok=(pk|0)==(Ak|0)&qk>>>0<xk>>>0|pk>>>0<Ak>>>0;tk=pk;rk=Up(Ek,nk,Dk,Hk)+pk|0;qk=ok+V|0;pk=rk;ok=wk+pk|0;rk=pk>>>0<tk>>>0?qk+1|0:qk;rk=ok>>>0<pk>>>0?rk+1|0:rk;qk=ok;pk=ok+yk|0;ok=rk+jk|0;ok=pk>>>0<qk>>>0?ok+1|0:ok;tk=pk;pk=Kj;wk=ok;Kj=(jk|0)==(ok|0)&tk>>>0<yk>>>0|ok>>>0<jk>>>0;jk=Kj+Fk|0;if(jk>>>0<Kj>>>0){pk=pk+1|0}ok=pk;Kj=(tk|0)!=0|(wk|0)!=0;jk=jk+Kj|0;if(jk>>>0<Kj>>>0){ok=ok+1|0}pk=jk;jk=0-pk|0;xk=0;yk=Up(jk,xk,mk,zk);Kj=V;Ak=Kj;Bk=Up(Ek,nk,jk,xk);jk=V;Fk=jk;Dk=0-((0<pk>>>0)+ok|0)|0;ok=0;xk=Up(mk,zk,Dk,ok);qk=xk+Bk|0;pk=V+jk|0;pk=qk>>>0<xk>>>0?pk+1|0:pk;jk=qk;xk=0+yk|0;qk=Kj+jk|0;qk=xk>>>0<Hk>>>0?qk+1|0:qk;rk=xk;Kj=qk;qk=(Ak|0)==(Kj|0)&rk>>>0<yk>>>0|Kj>>>0<Ak>>>0;rk=(pk|0)==(Fk|0)&jk>>>0<Bk>>>0|pk>>>0<Fk>>>0;jk=Up(Ek,nk,Dk,ok)+pk|0;ok=rk+V|0;ok=jk>>>0<pk>>>0?ok+1|0:ok;pk=jk;jk=qk+pk|0;if(jk>>>0<pk>>>0){ok=ok+1|0}Fk=jk;jk=ok;pk=0-tk|0;Dk=0-((0<tk>>>0)+wk|0)|0;tk=0;Bk=Up(Dk,tk,mk,zk);Ak=V;wk=pk;rk=Up(pk,0,Ek,nk);ok=rk+Bk|0;pk=V+Ak|0;pk=ok>>>0<rk>>>0?pk+1|0:pk;rk=ok;zk=Up(mk,zk,wk,Hk);wk=0+zk|0;mk=ok;ok=ok+V|0;ok=wk>>>0<zk>>>0?ok+1|0:ok;ok=(mk|0)==(ok|0)&wk>>>0<Ck>>>0|ok>>>0<mk>>>0;mk=Up(Dk,tk,Ek,nk);mk=mk+pk|0;rk=V+((pk|0)==(Ak|0)&rk>>>0<Bk>>>0|pk>>>0<Ak>>>0)|0;rk=mk>>>0<pk>>>0?rk+1|0:rk;nk=mk;mk=ok+mk|0;ok=rk;ok=mk>>>0<nk>>>0?ok+1|0:ok;nk=mk;mk=mk+xk|0;ok=ok+Kj|0;ok=mk>>>0<nk>>>0?ok+1|0:ok;nk=mk;pk=jk;jk=ok;Kj=(Kj|0)==(ok|0)&mk>>>0<xk>>>0|ok>>>0<Kj>>>0;mk=Kj+Fk|0;if(mk>>>0<Kj>>>0){pk=pk+1|0}Kj=mk;ok=pk;rk=Kj;qk=jk+ -1|0;Kj=nk+ -2|0;if(Kj>>>0<4294967294){qk=qk+1|0}mk=Kj;pk=Kj;Kj=qk;jk=(jk|0)==(Kj|0)&pk>>>0<nk>>>0|Kj>>>0<jk>>>0;nk=rk+jk|0;if(nk>>>0<jk>>>0){ok=ok+1|0}jk=nk+ -1|0;ok=ok+ -1|0;ok=jk>>>0<4294967295?ok+1|0:ok;nk=0;Ak=nk;tk=jk;pk=vk;Bk=pk<<2|Jj>>>30;Dk=0;rk=Up(jk,nk,Bk,Dk);nk=V;wk=nk;pk=nk;nk=Jj;Hk=(nk&1073741823)<<2|Ij>>>30;yk=0;Ck=ok;nk=0;ok=Up(Hk,yk,ok,nk);jk=ok+rk|0;qk=V+pk|0;qk=jk>>>0<ok>>>0?qk+1|0:qk;pk=jk;xk=qk;zk=(wk|0)==(qk|0)&pk>>>0<rk>>>0|qk>>>0<wk>>>0;rk=qk;qk=0;wk=qk;ok=0;Fk=Kj;Gk=((uk&1073741823)<<2|vk>>>30)&-262145|262144;jk=Up(Kj,qk,Gk,0);Kj=jk+pk|0;rk=V+rk|0;rk=Kj>>>0<jk>>>0?rk+1|0:rk;uk=Kj;jk=rk;Kj=(xk|0)==(jk|0)&Kj>>>0<pk>>>0|jk>>>0<xk>>>0;pk=Kj+zk|0;if(pk>>>0<Kj>>>0){ok=1}Jj=pk;pk=Up(Ck,nk,Gk,Lk);Kj=Jj+pk|0;ok=V+ok|0;pk=Kj>>>0<pk>>>0?ok+1|0:ok;qk=Up(tk,Ak,Gk,Lk);ok=V;Jj=Kj;vk=Up(Bk,Dk,Ck,nk);Kj=vk+qk|0;rk=V+ok|0;rk=Kj>>>0<vk>>>0?rk+1|0:rk;vk=Kj;Kj=rk;rk=(ok|0)==(Kj|0)&vk>>>0<qk>>>0|Kj>>>0<ok>>>0;qk=Jj+Kj|0;pk=pk+rk|0;ok=qk;rk=ok>>>0<Kj>>>0?pk+1|0:pk;Jj=ok;qk=jk+vk|0;pk=0;Kj=pk+uk|0;if(Kj>>>0<pk>>>0){qk=qk+1|0}pk=Kj;ok=pk;Kj=qk;jk=(jk|0)==(Kj|0)&ok>>>0<uk>>>0|Kj>>>0<jk>>>0;ok=Jj+jk|0;if(ok>>>0<jk>>>0){rk=rk+1|0}Pk=ok;uk=Kj;vk=Up(Hk,yk,Fk,wk);qk=V;xk=mk;zk=Up(mk,0,Bk,Dk);mk=zk+vk|0;ok=V+qk|0;ok=mk>>>0<zk>>>0?ok+1|0:ok;Ek=mk;zk=mk;mk=ok;vk=(qk|0)==(ok|0)&zk>>>0<vk>>>0|ok>>>0<qk>>>0;Qk=pk;ok=0;Tk=vk;Jj=Ij<<2&-4;vk=Up(tk,Ak,Jj,0);jk=vk+zk|0;qk=V+mk|0;qk=jk>>>0<vk>>>0?qk+1|0:qk;zk=jk;vk=jk;jk=qk;mk=(mk|0)==(jk|0)&vk>>>0<Ek>>>0|jk>>>0<mk>>>0;qk=Tk+mk|0;if(qk>>>0<mk>>>0){ok=1}mk=Qk+qk|0;ok=ok+uk|0;ok=mk>>>0<qk>>>0?ok+1|0:ok;vk=mk;qk=rk;mk=ok;Kj=(Kj|0)==(ok|0)&vk>>>0<pk>>>0|ok>>>0<Kj>>>0;ok=Kj+Pk|0;if(ok>>>0<Kj>>>0){qk=qk+1|0}Qk=ok;uk=vk;Ek=mk;Pk=Up(Ck,nk,Jj,Uk);Ck=V;nk=Up(Gk,Lk,xk,Rk);Kj=nk+Pk|0;rk=V+Ck|0;rk=Kj>>>0<nk>>>0?rk+1|0:rk;Gk=Kj;pk=Up(Bk,Dk,Fk,wk);Kj=Kj+pk|0;nk=rk;ok=rk+V|0;ok=Kj>>>0<pk>>>0?ok+1|0:ok;Bk=Kj;rk=Up(tk,Ak,Hk,yk);Kj=Kj+rk|0;pk=ok;ok=ok+V|0;tk=Kj;ok=Kj>>>0<rk>>>0?ok+1|0:ok;Ak=0;rk=qk;Kj=ok;ok=(ok|0)==(pk|0)&tk>>>0<Bk>>>0|ok>>>0<pk>>>0;qk=(nk|0)==(Ck|0)&Gk>>>0<Pk>>>0|nk>>>0<Ck>>>0;nk=(nk|0)==(pk|0)&Bk>>>0<Gk>>>0|pk>>>0<nk>>>0;pk=qk+nk|0;pk>>>0<nk>>>0;nk=ok+pk|0;ok=nk;qk=Kj|0;nk=qk+uk|0;pk=(ok|Ak)+Ek|0;pk=nk>>>0<qk>>>0?pk+1|0:pk;Ek=nk;uk=pk;mk=(mk|0)==(pk|0)&nk>>>0<vk>>>0|pk>>>0<mk>>>0;nk=mk+Qk|0;if(nk>>>0<mk>>>0){rk=rk+1|0}Dk=nk;nk=rk;rk=Ek;vk=uk;Fk=Up(Fk,wk,Jj,Uk);wk=V;ok=Up(Hk,yk,xk,Rk);mk=ok+Fk|0;qk=V+wk|0;qk=mk>>>0<ok>>>0?qk+1|0:qk;pk=qk;yk=pk;qk=0;ok=(pk|0)==(wk|0)&mk>>>0<Fk>>>0|pk>>>0<wk>>>0;mk=pk+zk|0;pk=(ok|qk)+jk|0;pk=mk>>>0<yk>>>0?pk+1|0:pk;yk=mk;ok=mk;mk=pk;ok=(jk|0)==(pk|0)&ok>>>0<zk>>>0|pk>>>0<jk>>>0;Jj=rk;jk=ok;ok=pk+tk|0;rk=0;Kj=rk+yk|0;if(Kj>>>0<rk>>>0){ok=ok+1|0}Kj=(mk|0)==(ok|0)&Kj>>>0<yk>>>0|ok>>>0<mk>>>0;jk=jk+Kj|0;if(jk>>>0<Kj>>>0){qk=1}Kj=Jj+jk|0;rk=qk+vk|0;mk=Kj;ok=nk;rk=Kj>>>0<jk>>>0?rk+1|0:rk;nk=rk;Kj=(uk|0)==(rk|0)&Kj>>>0<Ek>>>0|rk>>>0<uk>>>0;jk=Kj+Dk|0;if(jk>>>0<Kj>>>0){ok=ok+1|0}Kj=jk;jk=ok;d:{if((ok|0)==131071&Kj>>>0<=4294967295|ok>>>0<131071){Ak=0;uk=kk;Bk=0;pk=Up(mk,Ak,uk,Bk);qk=V;ok=Ij<<17;Ij=0;Jj=(pk|0)!=0|(qk|0)!=0;tk=Ij-Jj|0;Gk=ok-(Ij>>>0<Jj>>>0)|0;yk=0-pk|0;wk=0-((0<pk>>>0)+qk|0)|0;Jj=0;Dk=Up(nk,Jj,uk,Bk);Ij=V;Hk=Ij;Ck=lk;vk=0;pk=Up(mk,Ak,Ck,vk);ok=pk+Dk|0;qk=V+Ij|0;qk=ok>>>0<pk>>>0?qk+1|0:qk;Ij=ok;pk=ok;xk=0;ok=xk;zk=pk;ok=(pk|0)==(wk|0)&yk>>>0<ok>>>0|wk>>>0<pk>>>0;Ek=tk-ok|0;tk=Gk-(tk>>>0<ok>>>0)|0;ok=Up(Kj,0,uk,Bk);pk=V;uk=Up(mk,Ak,Ik,0);ok=uk+ok|0;rk=V+pk|0;rk=ok>>>0<uk>>>0?rk+1|0:rk;uk=Up(nk,Jj,Ck,vk);ok=uk+ok|0;pk=V+rk|0;pk=ok>>>0<uk>>>0?pk+1|0:pk;rk=pk;pk=(qk|0)==(Hk|0)&Ij>>>0<Dk>>>0|qk>>>0<Hk>>>0;Ij=qk+ok|0;ok=pk+rk|0;rk=Ij;Ij=rk>>>0<qk>>>0?ok+1|0:ok;ok=Up(mk,nk,Nk,0);qk=V;uk=rk;rk=Up(kk,Ck,jk,0);pk=rk+ok|0;ok=V+qk|0;ok=pk>>>0<rk>>>0?ok+1|0:ok;qk=Up(Kj,jk,Ck,vk);rk=qk+pk|0;pk=V+ok|0;ok=rk;rk=Up(nk,Jj,Ik,Kk);Jj=ok+rk|0;ok=Jj;pk=0;Jj=uk+pk|0;ok=Ij+ok|0;Ij=Jj;Ik=Ek-Ij|0;ok=tk-((Ek>>>0<Ij>>>0)+(Ij>>>0<pk>>>0?ok+1|0:ok)|0)|0;Ok=Ok+ -1|0;Jj=wk-((yk>>>0<xk>>>0)+zk|0)|0;pk=yk-xk|0;break d}xk=nk>>>1;qk=0;rk=Ij<<16;Jj=0;pk=Kj<<31;mk=(nk&1)<<31|mk>>>1;nk=nk>>>1|pk;Dk=0;tk=kk;Hk=0;Ij=Up(mk,Dk,tk,Hk);ok=V;pk=ok;ok=(Ij|0)!=0|(ok|0)!=0;uk=Jj-ok|0;Lk=rk-(Jj>>>0<ok>>>0)|0;zk=0-Ij|0;Ek=0-((0<Ij>>>0)+pk|0)|0;rk=Ek;Ck=lk;yk=0;wk=Up(mk,Dk,Ck,yk);Ij=V;Gk=Ij;pk=Kj;xk=pk<<31|xk;Rk=jk<<31|pk>>>1|qk;Jj=xk;Ak=Up(Jj,0,tk,Hk);pk=Ak+wk|0;ok=V+Ij|0;ok=pk>>>0<Ak>>>0?ok+1|0:ok;Ij=ok;ok=pk;Bk=ok;Ak=0;ok=(ok|0)==(rk|0)&zk>>>0<Ak>>>0|rk>>>0<ok>>>0;Fk=uk-ok|0;Lk=Lk-(uk>>>0<ok>>>0)|0;ok=Up(Ck,yk,Jj,qk);qk=V;Jj=jk>>>1;uk=(jk&1)<<31|Kj>>>1;tk=Up(uk,0,tk,Hk);rk=tk+ok|0;ok=V+qk|0;ok=rk>>>0<tk>>>0?ok+1|0:ok;qk=Up(mk,Dk,Ik,0);rk=qk+rk|0;ok=V+ok|0;ok=rk>>>0<qk>>>0?ok+1|0:ok;qk=rk;rk=ok;ok=(Ij|0)==(Gk|0)&pk>>>0<wk>>>0|Ij>>>0<Gk>>>0;vk=Ij;Ij=Ij+qk|0;qk=ok+rk|0;rk=Ij;Ij=rk>>>0<vk>>>0?qk+1|0:qk;ok=Up(mk,nk,Nk,0);pk=V;jk=Up(kk,Ck,jk>>>1,0);Kj=jk+ok|0;ok=V+pk|0;ok=Kj>>>0<jk>>>0?ok+1|0:ok;jk=Up(Ck,yk,uk,Jj);Kj=jk+Kj|0;ok=V+ok|0;jk=Up(xk,Rk,Ik,Kk);Kj=jk+Kj|0;ok=Kj;jk=0;Kj=jk+rk|0;pk=Ij+ok|0;Ik=Fk-Kj|0;ok=Lk-((Fk>>>0<Kj>>>0)+(Kj>>>0<jk>>>0?pk+1|0:pk)|0)|0;Kj=uk;jk=Jj;Jj=Ek-((zk>>>0<Ak>>>0)+Bk|0)|0;pk=zk-Ak|0}Ij=Jj;if((Ok|0)>=16384){Jk=Jk|2147418112;Ij=0;Jj=0;break b}if((Ok|0)<=-16383){Ij=0;Jj=0;break b}qk=nk;jk=jk&65535;rk=Ij<<1|pk>>>31;uk=pk<<1;lk=(lk|0)==(rk|0)&uk>>>0>=kk>>>0|rk>>>0>lk>>>0;kk=Ik;rk=ok<<1|kk>>>31;Jj=kk<<1|Ij>>>31;Ij=(Jj|0)==(Sk|0)&(rk|0)==(Nk|0)?lk:(Nk|0)==(rk|0)&Jj>>>0>=Sk>>>0|rk>>>0>Nk>>>0;Jj=Ij+mk|0;if(Jj>>>0<Ij>>>0){qk=qk+1|0}Ij=Jj;Jj=qk;pk=Ok+16383<<16;kk=Kj;Kj=((nk|0)==(qk|0)&Ij>>>0<mk>>>0|qk>>>0<nk>>>0)+Kj|0;ok=jk|pk;Mk=Kj|Mk;Jk=Jk|(Kj>>>0<kk>>>0?ok+1|0:ok)}q[a>>2]=Ij;q[a+4>>2]=Jj;q[a+8>>2]=Mk;q[a+12>>2]=Jk;T=sk+192|0;return}q[a>>2]=0;q[a+4>>2]=0;Ij=(Kj|kk)!=0|(jk|lk)!=0;q[a+8>>2]=Ij?Mk:0;q[a+12>>2]=Ij?Jk:2147450880;T=sk+192|0}function On(a,Ij){var Jj=0,Kj=0,jk=0,kk=0,lk=0,mk=0,nk=0,Vk=0,Wk=0,Xk=0,Yk=0;kk=T-16|0;T=kk;h(+Ij);Kj=e(1)|0;lk=e(0)|0;Wk=Kj&-2147483648;jk=Kj&2147483647;Jj=jk;mk=Jj+ -1048576|0;jk=lk;nk=jk;if(jk>>>0<0){mk=mk+1|0}a:{if((mk|0)==2145386495&nk>>>0<=4294967295|mk>>>0<2145386495){Vk=jk<<28;Kj=(Jj&15)<<28|jk>>>4;Jj=(Jj>>>4)+1006632960|0;Jj=Kj>>>0<0?Jj+1|0:Jj;break a}if((Jj|0)==2146435072&jk>>>0>=0|Jj>>>0>2146435072){Vk=lk<<28;Jj=Kj>>>4;Kj=(Kj&15)<<28|lk>>>4;Jj=Jj|2147418112;break a}if(!(Jj|jk)){Kj=0;Jj=0;break a}nk=Jj;Jj=(Jj|0)==1&jk>>>0>=0|Jj>>>0>1?z(Jj):z(lk)+32|0;Kn(kk,jk,nk,0,0,Jj+49|0);Xk=q[kk>>2];Vk=q[kk+4>>2];Kj=q[kk+8>>2];Jj=q[kk+12>>2]^65536|15372-Jj<<16}q[a>>2]=Xk;q[a+4>>2]=Vk;q[a+8>>2]=Kj|Yk;q[a+12>>2]=Jj|Wk;T=kk+16|0}function Pn(a,Ij){var Zk=0,_k=0,$k=0,al=0,bl=0,cl=0,dl=0;$k=T-16|0;T=$k;_k=(j(Ij),e(0));bl=_k&-2147483648;Zk=_k&2147483647;a:{if(Zk+ -8388608>>>0<=2130706431){_k=Zk;Zk=Zk>>>7;_k=_k<<25;Zk=Zk+1065353216|0;al=_k;Zk=_k>>>0<0?Zk+1|0:Zk;break a}if(Zk>>>0>=2139095040){al=_k<<25;Zk=_k>>>7|2147418112;break a}if(!Zk){Zk=0;break a}_k=Zk;Zk=z(Zk);Kn($k,_k,0,0,0,Zk+81|0);cl=q[$k>>2];dl=q[$k+4>>2];al=q[$k+8>>2];Zk=q[$k+12>>2]^65536|16265-Zk<<16}q[a>>2]=cl;q[a+4>>2]=dl;q[a+8>>2]=al;q[a+12>>2]=Zk|bl;T=$k+16|0}function Qn(a,Ij){var el=0,fl=0,gl=0,hl=0,il=0,jl=0;fl=T-16|0;T=fl;il=a;jl=a;a:{if(!Ij){Ij=0;break a}el=Ij>>31;gl=el+Ij^el;el=z(gl);Kn(fl,gl,0,0,0,el+81|0);el=(q[fl+12>>2]^65536)+(16414-el<<16)|0;gl=0+q[fl+8>>2]|0;if(gl>>>0<hl>>>0){el=el+1|0}hl=Ij&-2147483648|el;el=q[fl+4>>2];Ij=q[fl>>2]}q[jl>>2]=Ij;q[il+4>>2]=el;q[a+8>>2]=gl;q[a+12>>2]=hl;T=fl+16|0}function Rn(a,Ij){var kl=0,ll=0,ml=0,nl=0,ol=0,pl=0;kl=T-16|0;T=kl;ol=a;pl=a;a:{if(!Ij){Ij=0;ml=0;break a}ll=Ij;Ij=z(Ij);Kn(kl,ll,0,0,0,Ij+81|0);Ij=(q[kl+12>>2]^65536)+(16414-Ij<<16)|0;ll=0+q[kl+8>>2]|0;if(ll>>>0<nl>>>0){Ij=Ij+1|0}nl=ll;ll=Ij;Ij=q[kl+4>>2];ml=q[kl>>2]}q[pl>>2]=ml;q[ol+4>>2]=Ij;q[a+8>>2]=nl;q[a+12>>2]=ll;T=kl+16|0}function Sn(a,Ij,ql,rl,sl,tl){var ul=0,vl=0,wl=0,xl=0;a:{b:{if(tl&64){ql=tl+ -64|0;Ij=ql&31;if(32<=(ql&63)>>>0){ql=0;Ij=sl>>>Ij}else{ql=sl>>>Ij;Ij=((1<<Ij)-1&sl)<<32-Ij|rl>>>Ij}rl=0;sl=0;break b}if(!tl){break a}vl=sl;wl=rl;xl=64-tl|0;ul=xl&31;if(32<=(xl&63)>>>0){vl=wl<<ul;xl=0}else{vl=(1<<ul)-1&wl>>>32-ul|vl<<ul;xl=wl<<ul}wl=Ij;ul=tl;Ij=ul&31;if(32<=(ul&63)>>>0){ul=0;Ij=ql>>>Ij}else{ul=ql>>>Ij;Ij=((1<<Ij)-1&ql)<<32-Ij|wl>>>Ij}Ij=xl|Ij;ql=ul|vl;ul=rl;rl=tl&31;if(32<=(tl&63)>>>0){vl=0;rl=sl>>>rl}else{vl=sl>>>rl;rl=((1<<rl)-1&sl)<<32-rl|ul>>>rl}sl=vl}}q[a>>2]=Ij;q[a+4>>2]=ql;q[a+8>>2]=rl;q[a+12>>2]=sl}function Tn(a,Ij,ql,rl,sl,tl,yl,zl,Al){var Bl=0,Cl=0,Dl=0,El=0,Fl=0,Gl=0,Hl=0,Il=0,Jl=0,Kl=0,Ll=0,Ml=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,im=0,jm=0,km=0,lm=0;Fl=T-96|0;T=Fl;Cl=yl;Kl=(Cl&131071)<<15|tl>>>17;Ll=ql;Bl=Al&65535;El=Bl;Nl=zl;Cl=zl;Rl=Cl<<15|yl>>>17;Hl=(sl^Al)&-2147483648;Cl=Bl;Ul=(Cl&131071)<<15|zl>>>17;Il=sl&65535;Bl=Il;Jl=rl;Sl=Bl;Il=0;bm=Al>>>16&32767;cm=sl>>>16&32767;a:{b:{if(cm+ -1>>>0<=32765){Ml=0;if(bm+ -1>>>0<32766){break b}}Ol=sl&2147483647;Gl=Ol;Cl=rl;if(!(!rl&(Gl|0)==2147418112?!(Ij|ql):(Gl|0)==2147418112&rl>>>0<0|Gl>>>0<2147418112)){Pl=rl;Hl=sl|32768;break a}Ol=Al&2147483647;sl=Ol;rl=zl;if(!(!rl&(sl|0)==2147418112?!(tl|yl):(sl|0)==2147418112&rl>>>0<0|sl>>>0<2147418112)){Pl=zl;Hl=Al|32768;Ij=tl;ql=yl;break a}if(!(Ij|Cl|(Gl^2147418112|ql))){if(!(rl|tl|(sl|yl))){Hl=2147450880;Ij=0;ql=0;break a}Hl=Hl|2147418112;Ij=0;ql=0;break a}if(!(rl|tl|(sl^2147418112|yl))){rl=Ij|Cl;sl=ql|Gl;Ij=0;ql=0;if(!(rl|sl)){Hl=2147450880;break a}Hl=Hl|2147418112;break a}if(!(Ij|Cl|(ql|Gl))){Ij=0;ql=0;break a}if(!(rl|tl|(sl|yl))){Ij=0;ql=0;break a}if((Gl|0)==65535&Cl>>>0<=4294967295|Gl>>>0<65535){Cl=Ij;zl=!(Bl|Jl);Al=zl<<6;Dl=z(zl?Ij:Jl)+32|0;Ij=z(zl?ql:Bl);Ij=Al+((Ij|0)==32?Dl:Ij)|0;Kn(Fl+80|0,Cl,ql,Jl,Bl,Ij+ -15|0);Ll=q[Fl+84>>2];Jl=q[Fl+88>>2];Sl=q[Fl+92>>2];Dl=16-Ij|0;Ij=q[Fl+80>>2]}Ml=Dl;if((sl|0)==65535&rl>>>0>4294967295|sl>>>0>65535){break b}ql=!(El|Nl);rl=ql<<6;sl=z(ql?tl:Nl)+32|0;ql=z(ql?yl:El);ql=rl+((ql|0)==32?sl:ql)|0;zl=ql;Kn(Fl- -64|0,tl,yl,Nl,El,ql+ -15|0);tl=q[Fl+76>>2];ql=tl;Al=q[Fl+68>>2];yl=Al;sl=q[Fl+72>>2];rl=sl;Rl=rl<<15|yl>>>17;rl=yl;tl=q[Fl+64>>2];Kl=(rl&131071)<<15|tl>>>17;Ul=(ql&131071)<<15|sl>>>17;Ml=(Dl-zl|0)+16|0}rl=Kl;Kl=0;Al=Up(rl,0,Ij,Kl);ql=V;Tl=ql;Ql=tl<<15&-32768;Gl=Ll;tl=Up(Ql,0,Gl,0);sl=tl+Al|0;Dl=V+ql|0;Dl=sl>>>0<tl>>>0?Dl+1|0:Dl;ql=sl;tl=0;yl=Up(Ql,Vl,Ij,Kl);sl=tl+yl|0;Bl=V+ql|0;Bl=sl>>>0<yl>>>0?Bl+1|0:Bl;Ll=sl;yl=Bl;lm=(ql|0)==(Bl|0)&sl>>>0<tl>>>0|Bl>>>0<ql>>>0;em=Up(rl,Wl,Gl,dm);Zl=V;Ol=Jl;tl=Up(Ql,Vl,Jl,0);sl=tl+em|0;El=V+Zl|0;El=sl>>>0<tl>>>0?El+1|0:El;fm=sl;zl=Up(Rl,0,Ij,Kl);sl=sl+zl|0;tl=V+El|0;_l=sl;tl=sl>>>0<zl>>>0?tl+1|0:tl;Nl=tl;zl=tl;tl=(Dl|0)==(Tl|0)&ql>>>0<Al>>>0|Dl>>>0<Tl>>>0;sl=Dl;ql=sl+_l|0;Bl=tl+zl|0;Tl=ql;Bl=ql>>>0<sl>>>0?Bl+1|0:Bl;sl=Bl;zl=ql;hm=Up(rl,Wl,Jl,gm);$l=V;ql=Ql;Xl=Sl|65536;Ql=Il;tl=Up(ql,Vl,Xl,Il);ql=tl+hm|0;Bl=V+$l|0;Bl=ql>>>0<tl>>>0?Bl+1|0:Bl;im=ql;Cl=Up(Gl,dm,Rl,jm);ql=ql+Cl|0;Il=Bl;tl=Bl+V|0;tl=ql>>>0<Cl>>>0?tl+1|0:tl;am=ql;Yl=Ul&2147483647|-2147483648;ql=Up(Yl,0,Ij,Kl);Ij=am+ql|0;Kl=tl;Cl=tl+V|0;Vl=Ij;ql=Ij>>>0<ql>>>0?Cl+1|0:Cl;Bl=sl+Ij|0;tl=0;Ij=tl+zl|0;if(Ij>>>0<tl>>>0){Bl=Bl+1|0}Ul=Ij;Sl=Bl;tl=Bl;zl=Ij+lm|0;if(zl>>>0<Ij>>>0){tl=tl+1|0}Al=tl;Jl=(Ml+(bm+cm|0)|0)+ -16383|0;tl=Up(Ol,gm,Rl,jm);Ij=V;Dl=0;Cl=Up(rl,Wl,Xl,Ql);rl=Cl+tl|0;Bl=V+Ij|0;Bl=rl>>>0<Cl>>>0?Bl+1|0:Bl;Ml=rl;Cl=rl;rl=Bl;Bl=(Ij|0)==(rl|0)&Cl>>>0<tl>>>0|rl>>>0<Ij>>>0;tl=Up(Yl,km,Gl,dm);Ij=tl+Cl|0;Cl=V+rl|0;Cl=Ij>>>0<tl>>>0?Cl+1|0:Cl;Gl=Ij;tl=Ij;Ij=Cl;rl=(rl|0)==(Ij|0)&tl>>>0<Ml>>>0|Ij>>>0<rl>>>0;tl=Bl+rl|0;if(tl>>>0<rl>>>0){Dl=1}Cl=tl;rl=Ij;tl=Dl;Wl=Cl;Bl=0;Cl=(El|0)==(Nl|0)&_l>>>0<fm>>>0|Nl>>>0<El>>>0;El=Cl+((El|0)==(Zl|0)&fm>>>0<em>>>0|El>>>0<Zl>>>0)|0;if(El>>>0<Cl>>>0){Bl=1}Dl=El;El=El+Gl|0;Cl=rl+Bl|0;Ml=El;Bl=El;Cl=Bl>>>0<Dl>>>0?Cl+1|0:Cl;rl=Cl;Ij=(Ij|0)==(rl|0)&Bl>>>0<Gl>>>0|rl>>>0<Ij>>>0;Cl=Wl+Ij|0;if(Cl>>>0<Ij>>>0){tl=tl+1|0}Ij=Cl;Cl=Up(Yl,km,Xl,Ql);Ij=Ij+Cl|0;Bl=V+tl|0;Bl=Ij>>>0<Cl>>>0?Bl+1|0:Bl;Dl=Ij;El=Up(Yl,km,Ol,gm);tl=V;Gl=Up(Rl,jm,Xl,Ql);Ij=Gl+El|0;Cl=V+tl|0;Cl=Ij>>>0<Gl>>>0?Cl+1|0:Cl;Gl=Ij;Ij=Cl;Cl=(tl|0)==(Ij|0)&Gl>>>0<El>>>0|Ij>>>0<tl>>>0;tl=Ij+Dl|0;Dl=Bl+Cl|0;Cl=tl>>>0<Ij>>>0?Dl+1|0:Dl;Ol=tl;Bl=rl+Gl|0;Dl=0;Ij=Dl+Ml|0;if(Ij>>>0<Dl>>>0){Bl=Bl+1|0}El=Ij;tl=Ij;Ij=Bl;rl=(rl|0)==(Ij|0)&tl>>>0<Ml>>>0|Ij>>>0<rl>>>0;tl=Ol+rl|0;if(tl>>>0<rl>>>0){Cl=Cl+1|0}Gl=tl;Dl=Ij;Bl=0;tl=(Il|0)==(Kl|0)&am>>>0<im>>>0|Kl>>>0<Il>>>0;Il=tl+((Il|0)==($l|0)&im>>>0<hm>>>0|Il>>>0<$l>>>0)|0;if(Il>>>0<tl>>>0){Bl=1}tl=Il+((ql|0)==(Kl|0)&Vl>>>0<am>>>0|ql>>>0<Kl>>>0)|0;rl=ql;ql=rl+El|0;Dl=tl+Dl|0;Dl=ql>>>0<rl>>>0?Dl+1|0:Dl;Il=ql;rl=ql;ql=Dl;Ij=(Ij|0)==(ql|0)&rl>>>0<El>>>0|ql>>>0<Ij>>>0;rl=Ij+Gl|0;if(rl>>>0<Ij>>>0){Cl=Cl+1|0}Ij=ql;Bl=Cl;Cl=rl;tl=0;rl=(sl|0)==(Sl|0)&Ul>>>0<Tl>>>0|Sl>>>0<sl>>>0;sl=rl+((sl|0)==(Nl|0)&Tl>>>0<_l>>>0|sl>>>0<Nl>>>0)|0;if(sl>>>0<rl>>>0){tl=1}rl=sl+Il|0;Dl=Ij+tl|0;Dl=rl>>>0<sl>>>0?Dl+1|0:Dl;Ij=rl;sl=Dl;Ij=(ql|0)==(sl|0)&Ij>>>0<Il>>>0|sl>>>0<ql>>>0;ql=Cl+Ij|0;if(ql>>>0<Ij>>>0){Bl=Bl+1|0}Ij=ql;ql=Bl;c:{if(ql&65536){Jl=Jl+1|0;break c}El=yl>>>31;Bl=ql<<1|Ij>>>31;Ij=Ij<<1|sl>>>31;ql=Bl;Bl=sl<<1|rl>>>31;rl=rl<<1|Al>>>31;sl=Bl;Cl=Ll;Bl=yl<<1|Cl>>>31;Ll=Cl<<1;yl=Bl;Cl=Al<<1|zl>>>31;zl=zl<<1|El;Al=Cl}if((Jl|0)>=32767){Hl=Hl|2147418112;Ij=0;ql=0;break a}d:{if((Jl|0)<=0){tl=1-Jl|0;if(tl>>>0<=127){Sn(Fl+16|0,Ll,yl,zl,Al,tl);Cl=Jl+127|0;Kn(Fl+32|0,rl,sl,Ij,ql,Cl);Kn(Fl+48|0,Ll,yl,zl,Al,Cl);Sn(Fl,rl,sl,Ij,ql,tl);Ll=(q[Fl+48>>2]|q[Fl+56>>2])!=0|(q[Fl+52>>2]|q[Fl+60>>2])!=0|(q[Fl+32>>2]|q[Fl+16>>2]);yl=q[Fl+36>>2]|q[Fl+20>>2];zl=q[Fl+40>>2]|q[Fl+24>>2];Al=q[Fl+44>>2]|q[Fl+28>>2];rl=q[Fl>>2];sl=q[Fl+4>>2];ql=q[Fl+12>>2];Ij=q[Fl+8>>2];break d}Ij=0;ql=0;break a}ql=ql&65535|Jl<<16}Pl=Ij|Pl;Hl=ql|Hl;if(!(!zl&(Al|0)==-2147483648?!(yl|Ll):(Al|0)>-1?1:(Al|0)>=-1?zl>>>0<=4294967295?0:1:0)){Dl=Hl;El=sl;Ij=rl+1|0;if(Ij>>>0<1){El=El+1|0}ql=El;rl=(sl|0)==(ql|0)&Ij>>>0<rl>>>0|ql>>>0<sl>>>0;sl=rl+Pl|0;if(sl>>>0<rl>>>0){Dl=Dl+1|0}Pl=sl;Hl=Dl;break a}if(zl|Ll|(Al^-2147483648|yl)){Ij=rl;ql=sl;break a}El=Hl;Bl=sl;Ij=rl&1;ql=Ij+rl|0;if(ql>>>0<Ij>>>0){Bl=Bl+1|0}Ij=ql;ql=Bl;rl=(sl|0)==(ql|0)&Ij>>>0<rl>>>0|ql>>>0<sl>>>0;sl=rl+Pl|0;if(sl>>>0<rl>>>0){El=El+1|0}Pl=sl;Hl=El}q[a>>2]=Ij;q[a+4>>2]=ql;q[a+8>>2]=Pl;q[a+12>>2]=Hl;T=Fl+96|0}function Un(a,Ij,ql,rl,sl){var tl=0,yl=0,zl=0,Al=0,mm=0,nm=0,om=0,pm=0;mm=sl;sl=0;nm=sl;zl=ql;ql=0;yl=Up(mm,sl,zl,ql);sl=V;om=yl;yl=yl>>>0<0?sl+1|0:sl;tl=rl;sl=0;Al=Ij;rl=Up(tl,sl,Ij,0);Ij=V;tl=Up(tl,sl,zl,ql);ql=Ij+tl|0;Ij=V;Ij=ql>>>0<tl>>>0?Ij+1|0:Ij;zl=Ij;tl=Ij+om|0;Ij=yl;Ij=tl>>>0<zl>>>0?Ij+1|0:Ij;yl=Ij;Ij=Up(Al,pm,mm,nm)+ql|0;sl=V;sl=Ij>>>0<ql>>>0?sl+1|0:sl;Al=sl;tl=sl+tl|0;sl=yl;q[a+8>>2]=tl;q[a+12>>2]=tl>>>0<Al>>>0?sl+1|0:sl;q[a>>2]=rl;q[a+4>>2]=Ij}function Vn(a,Ij,ql,rl,sl,qm,rm,sm,tm){var um=0;um=T-16|0;T=um;Jn(um,Ij,ql,rl,sl,qm,rm,sm,tm^-2147483648);rl=q[um>>2];ql=q[um+4>>2];Ij=q[um+12>>2];q[a+8>>2]=q[um+8>>2];q[a+12>>2]=Ij;q[a>>2]=rl;q[a+4>>2]=ql;T=um+16|0}function Wn(a,Ij,ql,rl){var sl=0,qm=0,rm=0,sm=0,tm=0,vm=0,wm=0;rm=T-32|0;T=rm;sl=rl&2147483647;tm=sl;sl=sl+ -1006698496|0;sm=ql;qm=ql;if(ql>>>0<0){sl=sl+1|0}vm=qm;qm=sl;sl=tm+ -1140785152|0;wm=sm;if(sm>>>0<0){sl=sl+1|0}a:{if((sl|0)==(qm|0)&vm>>>0<wm>>>0|qm>>>0<sl>>>0){sl=rl<<4|ql>>>28;ql=ql<<4|Ij>>>28;Ij=Ij&268435455;sm=Ij;if((Ij|0)==134217728&a>>>0>=1|Ij>>>0>134217728){sl=sl+1073741824|0;a=ql+1|0;if(a>>>0<1){sl=sl+1|0}qm=a;break a}qm=ql;sl=sl-((ql>>>0<0)+ -1073741824|0)|0;if(a|sm^134217728){break a}a=qm+(qm&1)|0;if(a>>>0<qm>>>0){sl=sl+1|0}qm=a;break a}if(!(!sm&(tm|0)==2147418112?!(a|Ij):(tm|0)==2147418112&sm>>>0<0|tm>>>0<2147418112)){sl=rl<<4|ql>>>28;qm=ql<<4|Ij>>>28;sl=sl&524287|2146959360;break a}qm=0;sl=2146435072;if((tm|0)==1140785151&sm>>>0>4294967295|tm>>>0>1140785151){break a}sl=0;sm=tm>>>16;if(sm>>>0<15249){break a}sl=rl&65535|65536;Sn(rm,a,Ij,ql,sl,15361-sm|0);Kn(rm+16|0,a,Ij,ql,sl,sm+ -15233|0);ql=q[rm+4>>2];a=q[rm+8>>2];sl=q[rm+12>>2]<<4|a>>>28;qm=a<<4|ql>>>28;a=ql&268435455;ql=a;Ij=q[rm>>2]|((q[rm+16>>2]|q[rm+24>>2])!=0|(q[rm+20>>2]|q[rm+28>>2])!=0);if((a|0)==134217728&Ij>>>0>=1|a>>>0>134217728){a=qm+1|0;if(a>>>0<1){sl=sl+1|0}qm=a;break a}if(Ij|ql^134217728){break a}a=qm+(qm&1)|0;if(a>>>0<qm>>>0){sl=sl+1|0}qm=a}T=rm+32|0;f(0,qm|0);f(1,rl&-2147483648|sl);return+g()}function Xn(a,Ij,ql,rl){var xm=0,ym=0,zm=0,Am=0,Bm=0,Cm=0,Dm=0;Am=T-32|0;T=Am;ym=rl&2147483647;zm=ym;xm=ym+ -1065418752|0;ym=ql;Bm=ym;if(ym>>>0<0){xm=xm+1|0}Dm=Bm;Cm=zm+ -1082064896|0;Bm=ym;if(ym>>>0<0){Cm=Cm+1|0}a:{if((xm|0)==(Cm|0)&Dm>>>0<Bm>>>0|xm>>>0<Cm>>>0){zm=(rl&33554431)<<7|ql>>>25;ym=0;Cm=ym;Bm=ql&33554431;if(!(!ym&(Bm|0)==16777216?!(a|Ij):!ym&Bm>>>0<16777216|ym>>>0<0)){xm=zm+1073741825|0;break a}xm=zm+1073741824|0;if(Bm^16777216|a|(Ij|Cm)){break a}xm=(xm&1)+xm|0;break a}if(!(!ym&(zm|0)==2147418112?!(a|Ij):(zm|0)==2147418112&ym>>>0<0|zm>>>0<2147418112)){xm=((rl&33554431)<<7|ql>>>25)&4194303|2143289344;break a}xm=2139095040;if((zm|0)==1082064895&ym>>>0>4294967295|zm>>>0>1082064895){break a}xm=0;zm=zm>>>16;if(zm>>>0<16145){break a}xm=rl&65535|65536;Sn(Am,a,Ij,ql,xm,16257-zm|0);Kn(Am+16|0,a,Ij,ym,xm,zm+ -16129|0);Ij=q[Am+8>>2];xm=(q[Am+12>>2]&33554431)<<7|Ij>>>25;ym=q[Am+4>>2];zm=ym;a=0;Bm=a;Cm=q[Am>>2]|((q[Am+16>>2]|q[Am+24>>2])!=0|(q[Am+20>>2]|q[Am+28>>2])!=0);Ij=Ij&33554431;if(!(!a&(Ij|0)==16777216?!(ym|Cm):!a&Ij>>>0<16777216|a>>>0<0)){xm=xm+1|0;break a}if(Ij^16777216|Cm|(zm|Bm)){break a}xm=(xm&1)+xm|0}T=Am+32|0;return f(0,rl&-2147483648|xm),k()}function Yn(a){var Ij=0,ql=0,rl=0,Em=0,Fm=0,Gm=0,Hm=0,Im=0;Em=T-16|0;T=Em;q[Em+12>>2]=a;a:{if(a>>>0<=211){a=q[Zn(17264,17456,Em+12|0)>>2];break a}Fm=(a>>>0)/210|0;rl=w(Fm,210);q[Em+8>>2]=a-rl;Gm=Zn(17456,17648,Em+8|0)-17456>>2;b:{while(1){a=q[(Gm<<2)+17456>>2]+rl|0;rl=5;c:{d:{e:{while(1){if((rl|0)==47){break e}Ij=q[(rl<<2)+17264>>2];ql=(a>>>0)/(Ij>>>0)|0;Hm=ql>>>0<Ij>>>0;Im=Hm?a:Im;rl=rl+1|0;Ij=Hm?1:(w(Ij,ql)|0)==(a|0)?7:0;if(!Ij){continue}break}rl=Ij+ -4|0;if(rl>>>0>3){break b}switch(rl-1|0){case 0:case 1:break b;case 2:break d;default:break e}}rl=211;while(1){Ij=(a>>>0)/(rl>>>0)|0;if(Ij>>>0<rl>>>0){break c}if((w(Ij,rl)|0)==(a|0)){break d}Ij=rl+10|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+12|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+16|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+18|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+22|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+28|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+30|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+36|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+40|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+42|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+46|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+52|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+58|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+60|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+66|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+70|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+72|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+78|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+82|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+88|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+96|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+100|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+102|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+106|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+108|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+112|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+120|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+126|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+130|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+136|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+138|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+142|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+148|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+150|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+156|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+162|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+166|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+168|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+172|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+178|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+180|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+186|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+190|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+192|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+196|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+198|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}if((w(Ij,ql)|0)==(a|0)){break d}Ij=rl+208|0;ql=(a>>>0)/(Ij>>>0)|0;if(ql>>>0<Ij>>>0){break c}rl=rl+210|0;if((w(Ij,ql)|0)!=(a|0)){continue}break}}rl=Gm+1|0;a=(rl|0)==48;Gm=a?0:rl;Fm=a+Fm|0;rl=w(Fm,210);continue}break}q[Em+12>>2]=a;break a}q[Em+12>>2]=a;a=Im}T=Em+16|0;return a}function Zn(a,Jm,Km){return _n(a,Jm,Km)}function _n(a,Jm,Km){var Lm=0;Lm=T-16|0;T=Lm;a=$n(a,Jm,Km);T=Lm+16|0;return a}function $n(a,Jm,Km){var Mm=0,Nm=0,Om=0,Pm=0;Mm=T-16|0;T=Mm;Jm=Jm-a>>2;while(1){if(Jm){q[Mm+12>>2]=a;Nm=Mm+12|0;Om=Nm;Pm=q[Nm>>2];Nm=Jm>>>1;q[Om>>2]=Pm+(Nm<<2);if(ao(q[Mm+12>>2],Km)){a=q[Mm+12>>2]+4|0;q[Mm+12>>2]=a;Jm=(Nm^-1)+Jm|0}else{Jm=Nm}continue}break}T=Mm+16|0;return a}function ao(a,Jm){return t[a>>2]<t[Jm>>2]}function bo(a,Jm,Km){if(Km){vp(a,Jm,Km)}}function co(a,Jm){return eo(a,Jm)}function eo(a,Jm){var Km=0,Qm=0;Km=T-16|0;T=Km;Qm=ao(a,Jm);T=Km+16|0;return Qm?Jm:a}function fo(a,Jm){var Rm=0,Sm=0;Rm=r[a|0];Sm=r[Jm|0];a:{if(!Rm|(Rm|0)!=(Sm|0)){break a}while(1){Sm=r[Jm+1|0];Rm=r[a+1|0];if(!Rm){break a}Jm=Jm+1|0;a=a+1|0;if((Rm|0)==(Sm|0)){continue}break}}return Rm-Sm|0}function go(){var a=0,Jm=0,Tm=0;a=T-16|0;T=a;a:{if(M(a+12|0,a+8|0)){break a}Jm=op((q[a+12>>2]<<2)+4|0);q[4698]=Jm;if(!Jm){break a}b:{Jm=op(q[a+8>>2]);if(Jm){Tm=q[4698];if(Tm){break b}}q[4698]=0;break a}q[(q[a+12>>2]<<2)+Tm>>2]=0;if(!N(q[4698],Jm|0)){break a}q[4698]=0}T=a+16|0}function ho(Um,Vm,Wm,Xm){var Ym=0,Zm=0;Ym=T-160|0;T=Ym;vp(Ym+8|0,17648,144);a:{b:{if(Vm+ -1>>>0>=2147483647){if(Vm){break b}Vm=1;Um=Ym+159|0}q[Ym+52>>2]=Um;q[Ym+28>>2]=Um;Zm=-2-Um|0;Vm=Vm>>>0>Zm>>>0?Zm:Vm;q[Ym+56>>2]=Vm;Um=Um+Vm|0;q[Ym+36>>2]=Um;q[Ym+24>>2]=Um;Um=fn(Ym+8|0,Wm,Xm);if(!Vm){break a}Vm=q[Ym+28>>2];o[Vm-((Vm|0)==q[Ym+24>>2])|0]=0;break a}q[4681]=61;Um=-1}T=Ym+160|0;return Um}function io(Um,Vm,Wm){Um=Um|0;Vm=Vm|0;Wm=Wm|0;var Xm=0,_m=0;_m=q[Um+20>>2];Xm=q[Um+16>>2]-_m|0;Xm=Xm>>>0>Wm>>>0?Wm:Xm;vp(_m,Vm,Xm);q[Um+20>>2]=Xm+q[Um+20>>2];return Wm|0}function jo(Um,Vm,Wm,$m){var an=0;an=T-16|0;T=an;q[an+12>>2]=$m;Um=ho(Um,Vm,Wm,$m);T=an+16|0;return Um}function ko(Um){if(oo(Um)){return q[Um+4>>2]}return r[Um+11|0]}function lo(Um){if(oo(Um)){Um=po(Um)+ -1|0}else{Um=10}return Um}function mo(Um,Vm){Jo(Um,Vm)}function no(Um){var Vm=0;Vm=Um;Um=0;while(1){if((Um|0)!=3){q[(Um<<2)+Vm>>2]=0;Um=Um+1|0;continue}break}}function oo(Um){return o[Um+11|0]<0}function po(Um){return q[Um+8>>2]&2147483647}function qo(Um){if(oo(Um)){return q[Um>>2]}return Um}function ro(Um,Wm){o[Um|0]=r[Wm|0]}function so(Um,Wm){o[Um+11|0]=Wm}function to(Um,Wm){var $m=0;$m=q[Wm+4>>2];q[Um>>2]=q[Wm>>2];q[Um+4>>2]=$m;q[Um+8>>2]=q[Wm+8>>2];no(Wm)}function uo(Um){var Wm=0;if(Um>>>0>=11){Wm=Um+16&-16;Um=Wm+ -1|0;Um=(Um|0)==11?Wm:Um}else{Um=10}return Um}function vo(Um){if(4294967295<Um>>>0){Qb(17792);F()}return zo(Um)}function wo(Um,bn){q[Um>>2]=bn}function xo(Um,bn){q[Um+8>>2]=bn|-2147483648}function yo(Um,bn){if(oo(Um)){Tb(Um,bn);return}so(Um,bn)}function zo(Um){var bn=0,cn=0;Um=Um?Um:1;while(1){a:{bn=op(Um);if(bn){break a}cn=q[4699];if(!cn){break a}n[cn]();continue}break}return bn}function Ao(Um,dn){var en=0,fn=0,gn=0,hn=0;en=wn(dn);fn=zo(en+13|0);q[fn+8>>2]=0;q[fn+4>>2]=en;q[fn>>2]=en;gn=Um,hn=vp(fn+12|0,dn,en+1|0),q[gn>>2]=hn}function Bo(Um){var dn=0,jn=0,kn=0;dn=T-16|0;T=dn;o[dn+15|0]=10;jn=q[Um+16>>2];a:{if(!jn){if(Wm(Um)){break a}jn=q[Um+16>>2]}kn=q[Um+20>>2];if(!(o[Um+75|0]==10|kn>>>0>=jn>>>0)){q[Um+20>>2]=kn+1;o[kn|0]=10;break a}if((n[q[Um+36>>2]](Um,dn+15|0,1)|0)!=1){break a}}T=dn+16|0}function Co(){Qb(17860);F()}function Do(Um,ln){var mn=0,nn=0,on=0;nn=T-16|0;T=nn;wb(Um);mn=Um;a:{if(!oo(ln)){q[mn+8>>2]=q[ln+8>>2];on=q[ln+4>>2];q[mn>>2]=q[ln>>2];q[mn+4>>2]=on;break a}Eo(Um,q[ln>>2],q[ln+4>>2])}T=nn+16|0;return Um}function Eo(Um,ln,pn){var qn=0,rn=0,sn=0;qn=T-16|0;T=qn;if(4294967279>=pn>>>0){a:{if(pn>>>0<=10){so(Um,pn);rn=Um;break a}sn=uo(pn)+1|0;rn=vo(sn);wo(Um,rn);xo(Um,sn);Tb(Um,pn)}bo(rn,ln,pn);o[qn+15|0]=0;ro(pn+rn|0,qn+15|0);T=qn+16|0;return}Co();F()}function Fo(Um){var ln=0;if(oo(Um)){ln=q[Um>>2];po(Um);pp(ln)}}function Go(Um,pn){if((Um|0)!=(pn|0)){Ho(Um,qo(pn),ko(pn))}}function Ho(Um,pn,tn){var un=0,vn=0,wn=0,xn=0;vn=T-16|0;T=vn;un=lo(Um);a:{if(un>>>0>=tn>>>0){wn=qo(Um);xn=wn;un=tn;if(tn){xp(xn,pn,un)}o[vn+15|0]=0;ro(tn+wn|0,vn+15|0);yo(Um,tn);break a}wn=Um;Um=ko(Um);Io(wn,un,tn-un|0,Um,0,Um,tn,pn)}T=vn+16|0}function Io(Um,pn,tn,yn,zn,An,Bn,Cn){var Dn=0,En=0,Fn=0;Dn=T-16|0;T=Dn;if((pn^-1)+ -17>>>0>=tn>>>0){En=qo(Um);a:{if(2147483623>pn>>>0){q[Dn+8>>2]=pn<<1;q[Dn+12>>2]=pn+tn;tn=uo(q[co(Dn+12|0,Dn+8|0)>>2]);break a}tn=-18}Fn=tn+1|0;tn=vo(Fn);if(zn){bo(tn,En,zn)}if(Bn){bo(tn+zn|0,Cn,Bn)}yn=yn-An|0;Cn=yn-zn|0;if(Cn){bo((tn+zn|0)+Bn|0,(zn+En|0)+An|0,Cn)}if((pn|0)!=10){pp(En)}wo(Um,tn);xo(Um,Fn);pn=Um;Um=yn+Bn|0;Tb(pn,Um);o[Dn+7|0]=0;ro(Um+tn|0,Dn+7|0);T=Dn+16|0;return}Co();F()}function Jo(Um,pn){var tn=0;tn=ko(Um);if(tn>>>0<pn>>>0){Ko(Um,pn-tn|0);return}Lo(Um,pn)}function Ko(Um,pn){var yn=0,zn=0,An=0,Bn=0;An=T-16|0;T=An;if(pn){zn=lo(Um);yn=ko(Um);Bn=yn+pn|0;if(zn-yn>>>0<pn>>>0){Mo(Um,zn,Bn-zn|0,yn,yn)}zn=yn;yn=qo(Um);zn=zn+yn|0;if(pn){wp(zn,0,pn)}yo(Um,Bn);o[An+15|0]=0;ro(yn+Bn|0,An+15|0)}T=An+16|0}function Lo(Um,pn){var Cn=0,Gn=0;Cn=T-16|0;T=Cn;a:{if(oo(Um)){Gn=q[Um>>2];o[Cn+15|0]=0;ro(pn+Gn|0,Cn+15|0);Tb(Um,pn);break a}o[Cn+14|0]=0;ro(Um+pn|0,Cn+14|0);so(Um,pn)}T=Cn+16|0}function Mo(Um,pn,Hn,In,Jn){var Kn=0,Ln=0,Mn=0;Kn=T-16|0;T=Kn;if(-17-pn>>>0>=Hn>>>0){Ln=qo(Um);a:{if(2147483623>pn>>>0){q[Kn+8>>2]=pn<<1;q[Kn+12>>2]=pn+Hn;Hn=uo(q[co(Kn+12|0,Kn+8|0)>>2]);break a}Hn=-18}Mn=Hn+1|0;Hn=vo(Mn);if(Jn){bo(Hn,Ln,Jn)}In=In-Jn|0;if(In){bo(Hn+Jn|0,Jn+Ln|0,In)}if((pn|0)!=10){pp(Ln)}wo(Um,Hn);xo(Um,Mn);T=Kn+16|0;return}Co();F()}function No(Um,pn,Hn){var In=0,Jn=0,Nn=0;Nn=T-16|0;T=Nn;In=lo(Um);Jn=ko(Um);a:{if(In-Jn>>>0>=Hn>>>0){if(!Hn){break a}In=qo(Um);bo(In+Jn|0,pn,Hn);pn=Um;Um=Hn+Jn|0;yo(pn,Um);o[Nn+15|0]=0;ro(Um+In|0,Nn+15|0);break a}Io(Um,In,(Hn+Jn|0)-In|0,Jn,Jn,0,Hn,pn)}T=Nn+16|0}function Oo(Um,pn){var Hn=0;Hn=T-16|0;T=Hn;Po(Hn);Qo(Um,Hn,pn);Fo(Hn);T=Hn+16|0}function Po(Um){wb(Um);no(Um);mo(Um,lo(Um))}function Qo(Um,pn,On){var Pn=0,Qn=0,Rn=0,Sn=0;Rn=T-16|0;T=Rn;Pn=ko(pn);while(1){a:{Qn=qo(pn);q[Rn>>2]=On;Sn=pn;Qn=jo(Qn,Pn+1|0,17873,Rn);b:{if((Qn|0)>=0){if(Qn>>>0<=Pn>>>0){break a}Pn=Qn;break b}Pn=Pn<<1|1}mo(Sn,Pn);continue}break}mo(pn,Qn);to(Um,pn);T=Rn+16|0}function Ro(Um,pn){var On=0;On=T-16|0;T=On;Po(On);So(Um,On,pn);Fo(On);T=On+16|0}function So(Um,pn,Tn){var Un=0,Vn=0,Wn=0,Xn=0,Yn=0;Wn=T-16|0;T=Wn;Xn=+Tn;Un=ko(pn);while(1){a:{Vn=qo(pn);v[Wn>>3]=Xn;Yn=pn;Vn=jo(Vn,Un+1|0,17876,Wn);b:{if((Vn|0)>=0){if(Vn>>>0<=Un>>>0){break a}Un=Vn;break b}Un=Un<<1|1}mo(Yn,Un);continue}break}mo(pn,Vn);to(Um,pn);T=Wn+16|0}function To(){Qb(17879);F()}function Uo(){O();F()}function Vo(Um){var pn=0;if(q[Um+76>>2]<0){a:{if(o[Um+75|0]==10){break a}pn=q[Um+20>>2];if(pn>>>0>=t[Um+16>>2]){break a}q[Um+20>>2]=pn+1;o[pn|0]=10;return}Bo(Um);return}b:{c:{if(o[Um+75|0]==10){break c}pn=q[Um+20>>2];if(pn>>>0>=t[Um+16>>2]){break c}q[Um+20>>2]=pn+1;o[pn|0]=10;break b}Bo(Um)}}function Wo(){var Um=0;Um=T-16|0;T=Um;q[Um+12>>2]=0;Um=q[4290];fn(Um,17886,0);Vo(Um);O();F()}function Xo(){Wo();F()}function Yo(Tn){Tn=Tn|0;return 17916}function Zo(Tn){Tn=Tn|0;q[Tn>>2]=17984;_o(Tn+4|0);return Tn|0}function _o(Tn){var Zn=0,_n=0;Zn=q[Tn>>2]+ -12|0;_n=Zn+8|0;Tn=q[_n>>2]+ -1|0;q[_n>>2]=Tn;a:{if((Tn|0)>-1){break a}pp(Zn)}}function $o(Tn){Tn=Tn|0;pp(Zo(Tn))}function ap(Tn){Tn=Tn|0;return q[Tn+4>>2]}function bp(Tn){Tn=Tn|0;Zo(Tn);pp(Tn)}function cp(Tn,$n,ao){if(!ao){return(Tn|0)==($n|0)}return!fo(q[Tn+4>>2],q[$n+4>>2])}function dp(Tn,$n,ao){Tn=Tn|0;$n=$n|0;ao=ao|0;var bo=0,co=0;bo=T+ -64|0;T=bo;co=1;a:{if(cp(Tn,$n,0)){break a}co=0;if(!$n){break a}$n=ep($n,18136,18184);co=0;if(!$n){break a}q[bo+20>>2]=-1;q[bo+16>>2]=Tn;q[bo+12>>2]=0;q[bo+8>>2]=$n;wp(bo+24|0,0,39);q[bo+56>>2]=1;n[q[q[$n>>2]+28>>2]]($n,bo+8|0,q[ao>>2],1);co=0;if(q[bo+32>>2]!=1){break a}q[ao>>2]=q[bo+24>>2];co=1}T=bo- -64|0;return co|0}function ep(Tn,$n,ao){var eo=0,fo=0,go=0;eo=T+ -64|0;T=eo;fo=q[Tn>>2];go=q[fo+ -8>>2];fo=q[fo+ -4>>2];q[eo+20>>2]=0;q[eo+16>>2]=$n;q[eo+12>>2]=Tn;q[eo+8>>2]=ao;$n=0;wp(eo+24|0,0,39);Tn=Tn+go|0;a:{if(cp(fo,ao,0)){q[eo+56>>2]=1;n[q[q[fo>>2]+20>>2]](fo,eo+8|0,Tn,Tn,1,0);$n=q[eo+32>>2]==1?Tn:0;break a}n[q[q[fo>>2]+24>>2]](fo,eo+8|0,Tn,1,0);Tn=q[eo+44>>2];if(Tn>>>0>1){break a}if(Tn-1){$n=q[eo+48>>2]==1?q[eo+36>>2]==1?q[eo+40>>2]==1?q[eo+28>>2]:0:0:0;break a}if(q[eo+32>>2]!=1){if(q[eo+48>>2]|q[eo+36>>2]!=1|q[eo+40>>2]!=1){break a}}$n=q[eo+24>>2]}T=eo- -64|0;return $n}function fp(Tn,$n,ao){var ho=0;ho=q[Tn+16>>2];if(!ho){q[Tn+36>>2]=1;q[Tn+24>>2]=ao;q[Tn+16>>2]=$n;return}a:{if(($n|0)==(ho|0)){if(q[Tn+24>>2]!=2){break a}q[Tn+24>>2]=ao;return}o[Tn+54|0]=1;q[Tn+24>>2]=2;q[Tn+36>>2]=q[Tn+36>>2]+1}}function gp(Tn,$n,ao,io){Tn=Tn|0;$n=$n|0;ao=ao|0;io=io|0;if(cp(Tn,q[$n+8>>2],0)){fp($n,ao,io)}}function hp(Tn,$n,ao,io){Tn=Tn|0;$n=$n|0;ao=ao|0;io=io|0;if(cp(Tn,q[$n+8>>2],0)){fp($n,ao,io);return}Tn=q[Tn+8>>2];n[q[q[Tn>>2]+28>>2]](Tn,$n,ao,io)}function ip(Tn,$n,ao,io){o[Tn+53|0]=1;a:{if(q[Tn+4>>2]!=(ao|0)){break a}o[Tn+52|0]=1;ao=q[Tn+16>>2];if(!ao){q[Tn+36>>2]=1;q[Tn+24>>2]=io;q[Tn+16>>2]=$n;if((io|0)!=1|q[Tn+48>>2]!=1){break a}o[Tn+54|0]=1;return}if(($n|0)==(ao|0)){ao=q[Tn+24>>2];if((ao|0)==2){q[Tn+24>>2]=io;ao=io}if(q[Tn+48>>2]!=1|(ao|0)!=1){break a}o[Tn+54|0]=1;return}o[Tn+54|0]=1;q[Tn+36>>2]=q[Tn+36>>2]+1}}function jp(Tn,$n,ao){if(!(q[Tn+28>>2]==1|q[Tn+4>>2]!=($n|0))){q[Tn+28>>2]=ao}}function kp(Tn,$n,ao,io,jo){Tn=Tn|0;$n=$n|0;ao=ao|0;io=io|0;jo=jo|0;if(cp(Tn,q[$n+8>>2],jo)){jp($n,ao,io);return}a:{if(cp(Tn,q[$n>>2],jo)){if(!(q[$n+20>>2]!=(ao|0)?q[$n+16>>2]!=(ao|0):0)){if((io|0)!=1){break a}q[$n+32>>2]=1;return}q[$n+32>>2]=io;b:{if(q[$n+44>>2]==4){break b}p[$n+52>>1]=0;Tn=q[Tn+8>>2];n[q[q[Tn>>2]+20>>2]](Tn,$n,ao,ao,1,jo);if(r[$n+53|0]){q[$n+44>>2]=3;if(!r[$n+52|0]){break b}break a}q[$n+44>>2]=4}q[$n+20>>2]=ao;q[$n+40>>2]=q[$n+40>>2]+1;if(q[$n+36>>2]!=1|q[$n+24>>2]!=2){break a}o[$n+54|0]=1;return}Tn=q[Tn+8>>2];n[q[q[Tn>>2]+24>>2]](Tn,$n,ao,io,jo)}}function lp(Tn,$n,ao,io,jo){Tn=Tn|0;$n=$n|0;ao=ao|0;io=io|0;jo=jo|0;if(cp(Tn,q[$n+8>>2],jo)){jp($n,ao,io);return}a:{if(!cp(Tn,q[$n>>2],jo)){break a}if(!(q[$n+20>>2]!=(ao|0)?q[$n+16>>2]!=(ao|0):0)){if((io|0)!=1){break a}q[$n+32>>2]=1;return}q[$n+20>>2]=ao;q[$n+32>>2]=io;q[$n+40>>2]=q[$n+40>>2]+1;if(!(q[$n+36>>2]!=1|q[$n+24>>2]!=2)){o[$n+54|0]=1}q[$n+44>>2]=4}}function mp(Tn,$n,ao,io,jo,ko){Tn=Tn|0;$n=$n|0;ao=ao|0;io=io|0;jo=jo|0;ko=ko|0;if(cp(Tn,q[$n+8>>2],ko)){ip($n,ao,io,jo);return}Tn=q[Tn+8>>2];n[q[q[Tn>>2]+20>>2]](Tn,$n,ao,io,jo,ko)}function np(Tn,$n,ao,io,jo,ko){Tn=Tn|0;$n=$n|0;ao=ao|0;io=io|0;jo=jo|0;ko=ko|0;if(cp(Tn,q[$n+8>>2],ko)){ip($n,ao,io,jo)}}function op(Tn){Tn=Tn|0;var $n=0,ao=0,io=0,jo=0,ko=0,lo=0,mo=0,no=0,oo=0,po=0,qo=0,ro=0,so=0;qo=T-16|0;T=qo;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{k:{if(Tn>>>0<=244){ko=q[4700];mo=Tn>>>0<11?16:Tn+11&-8;$n=mo>>>3;Tn=ko>>>$n;if(Tn&3){io=$n+((Tn^-1)&1)|0;$n=io<<3;jo=q[$n+18848>>2];Tn=jo+8|0;ao=q[jo+8>>2];$n=$n+18840|0;l:{if((ao|0)==($n|0)){ro=18800,so=Yp(-2,io)&ko,q[ro>>2]=so;break l}q[ao+12>>2]=$n;q[$n+8>>2]=ao}$n=io<<3;q[jo+4>>2]=$n|3;$n=$n+jo|0;q[$n+4>>2]=q[$n+4>>2]|1;break a}po=q[4702];if(mo>>>0<=po>>>0){break k}if(Tn){ao=Tn<<$n;Tn=2<<$n;Tn=ao&(0-Tn|Tn);$n=(0-Tn&Tn)+ -1|0;Tn=$n>>>12&16;ao=Tn;$n=$n>>>Tn;Tn=$n>>>5&8;ao=ao|Tn;$n=$n>>>Tn;Tn=$n>>>2&4;ao=ao|Tn;$n=$n>>>Tn;Tn=$n>>>1&2;ao=ao|Tn;$n=$n>>>Tn;Tn=$n>>>1&1;ao=(ao|Tn)+($n>>>Tn)|0;Tn=ao<<3;lo=q[Tn+18848>>2];$n=q[lo+8>>2];Tn=Tn+18840|0;m:{if(($n|0)==(Tn|0)){ko=Yp(-2,ao)&ko;q[4700]=ko;break m}q[$n+12>>2]=Tn;q[Tn+8>>2]=$n}Tn=lo+8|0;q[lo+4>>2]=mo|3;io=lo+mo|0;$n=ao<<3;jo=$n-mo|0;q[io+4>>2]=jo|1;q[$n+lo>>2]=jo;if(po){$n=po>>>3;ao=($n<<3)+18840|0;mo=q[4705];$n=1<<$n;n:{if(!($n&ko)){q[4700]=$n|ko;$n=ao;break n}$n=q[ao+8>>2]}q[ao+8>>2]=mo;q[$n+12>>2]=mo;q[mo+12>>2]=ao;q[mo+8>>2]=$n}q[4705]=io;q[4702]=jo;break a}no=q[4701];if(!no){break k}$n=(no&0-no)+ -1|0;Tn=$n>>>12&16;ao=Tn;$n=$n>>>Tn;Tn=$n>>>5&8;ao=ao|Tn;$n=$n>>>Tn;Tn=$n>>>2&4;ao=ao|Tn;$n=$n>>>Tn;Tn=$n>>>1&2;ao=ao|Tn;$n=$n>>>Tn;Tn=$n>>>1&1;$n=q[((ao|Tn)+($n>>>Tn)<<2)+19104>>2];io=(q[$n+4>>2]&-8)-mo|0;ao=$n;while(1){o:{Tn=q[ao+16>>2];if(!Tn){Tn=q[ao+20>>2];if(!Tn){break o}}ao=(q[Tn+4>>2]&-8)-mo|0;jo=ao>>>0<io>>>0;io=jo?ao:io;$n=jo?Tn:$n;ao=Tn;continue}break}oo=q[$n+24>>2];jo=q[$n+12>>2];if((jo|0)!=($n|0)){Tn=q[$n+8>>2];q[Tn+12>>2]=jo;q[jo+8>>2]=Tn;break b}ao=$n+20|0;Tn=q[ao>>2];if(!Tn){Tn=q[$n+16>>2];if(!Tn){break j}ao=$n+16|0}while(1){lo=ao;jo=Tn;ao=Tn+20|0;Tn=q[ao>>2];if(Tn){continue}ao=jo+16|0;Tn=q[jo+16>>2];if(Tn){continue}break}q[lo>>2]=0;break b}mo=-1;if(Tn>>>0>4294967231){break k}Tn=Tn+11|0;mo=Tn&-8;no=q[4701];if(!no){break k}Tn=Tn>>>8;lo=0;p:{if(!Tn){break p}lo=31;if(mo>>>0>16777215){break p}$n=Tn+1048320>>>16&8;Tn=Tn<<$n;io=Tn+520192>>>16&4;Tn=Tn<<io;ao=Tn+245760>>>16&2;Tn=(Tn<<ao>>>15)-(ao|($n|io))|0;lo=(Tn<<1|mo>>>Tn+21&1)+28|0}ao=0-mo|0;io=q[(lo<<2)+19104>>2];q:{r:{s:{if(!io){Tn=0;break s}$n=mo<<((lo|0)==31?0:25-(lo>>>1)|0);Tn=0;while(1){t:{ko=(q[io+4>>2]&-8)-mo|0;if(ko>>>0>=ao>>>0){break t}jo=io;ao=ko;if(ao){break t}ao=0;Tn=io;break r}ko=q[io+20>>2];io=q[(($n>>>29&4)+io|0)+16>>2];Tn=ko?(ko|0)==(io|0)?Tn:ko:Tn;$n=$n<<((io|0)!=0);if(io){continue}break}}if(!(Tn|jo)){Tn=2<<lo;Tn=(0-Tn|Tn)&no;if(!Tn){break k}$n=(Tn&0-Tn)+ -1|0;Tn=$n>>>12&16;io=Tn;$n=$n>>>Tn;Tn=$n>>>5&8;io=io|Tn;$n=$n>>>Tn;Tn=$n>>>2&4;io=io|Tn;$n=$n>>>Tn;Tn=$n>>>1&2;io=io|Tn;$n=$n>>>Tn;Tn=$n>>>1&1;Tn=q[((io|Tn)+($n>>>Tn)<<2)+19104>>2]}if(!Tn){break q}}while(1){$n=(q[Tn+4>>2]&-8)-mo|0;io=$n>>>0<ao>>>0;ao=io?$n:ao;jo=io?Tn:jo;$n=q[Tn+16>>2];if($n){Tn=$n}else{Tn=q[Tn+20>>2]}if(Tn){continue}break}}if(!jo|ao>>>0>=q[4702]-mo>>>0){break k}lo=q[jo+24>>2];$n=q[jo+12>>2];if((jo|0)!=($n|0)){Tn=q[jo+8>>2];q[Tn+12>>2]=$n;q[$n+8>>2]=Tn;break c}io=jo+20|0;Tn=q[io>>2];if(!Tn){Tn=q[jo+16>>2];if(!Tn){break i}io=jo+16|0}while(1){ko=io;$n=Tn;io=Tn+20|0;Tn=q[io>>2];if(Tn){continue}io=$n+16|0;Tn=q[$n+16>>2];if(Tn){continue}break}q[ko>>2]=0;break c}ao=q[4702];if(ao>>>0>=mo>>>0){io=q[4705];$n=ao-mo|0;u:{if($n>>>0>=16){q[4702]=$n;Tn=io+mo|0;q[4705]=Tn;q[Tn+4>>2]=$n|1;q[ao+io>>2]=$n;q[io+4>>2]=mo|3;break u}q[4705]=0;q[4702]=0;q[io+4>>2]=ao|3;Tn=ao+io|0;q[Tn+4>>2]=q[Tn+4>>2]|1}Tn=io+8|0;break a}oo=q[4703];if(oo>>>0>mo>>>0){$n=oo-mo|0;q[4703]=$n;ao=q[4706];Tn=ao+mo|0;q[4706]=Tn;q[Tn+4>>2]=$n|1;q[ao+4>>2]=mo|3;Tn=ao+8|0;break a}Tn=0;no=mo+47|0;$n=no;if(q[4818]){ao=q[4820]}else{q[4821]=-1;q[4822]=-1;q[4819]=4096;q[4820]=4096;q[4818]=qo+12&-16^1431655768;q[4823]=0;q[4811]=0;ao=4096}lo=$n+ao|0;ko=0-ao|0;ao=lo&ko;if(ao>>>0<=mo>>>0){break a}jo=q[4810];if(jo){io=q[4808];$n=io+ao|0;if($n>>>0<=io>>>0|$n>>>0>jo>>>0){break a}}if(r[19244]&4){break f}v:{w:{io=q[4706];if(io){Tn=19248;while(1){$n=q[Tn>>2];if($n+q[Tn+4>>2]>>>0>io>>>0?$n>>>0<=io>>>0:0){break w}Tn=q[Tn+8>>2];if(Tn){continue}break}}$n=qp(0);if(($n|0)==-1){break g}ko=ao;io=q[4819];Tn=io+ -1|0;if(Tn&$n){ko=(ao-$n|0)+(Tn+$n&0-io)|0}if(ko>>>0<=mo>>>0|ko>>>0>2147483646){break g}jo=q[4810];if(jo){io=q[4808];Tn=io+ko|0;if(Tn>>>0<=io>>>0|Tn>>>0>jo>>>0){break g}}Tn=qp(ko);if(($n|0)!=(Tn|0)){break v}break e}ko=ko&lo-oo;if(ko>>>0>2147483646){break g}$n=qp(ko);if(($n|0)==(q[Tn>>2]+q[Tn+4>>2]|0)){break h}Tn=$n}$n=Tn;if(!(mo+48>>>0<=ko>>>0|ko>>>0>2147483646|(Tn|0)==-1)){Tn=q[4820];Tn=Tn+(no-ko|0)&0-Tn;if(Tn>>>0>2147483646){break e}if((qp(Tn)|0)!=-1){ko=Tn+ko|0;break e}qp(0-ko|0);break g}if(($n|0)!=-1){break e}break g}jo=0;break b}$n=0;break c}if(($n|0)!=-1){break e}}q[4811]=q[4811]|4}if(ao>>>0>2147483646){break d}$n=qp(ao);Tn=qp(0);if($n>>>0>=Tn>>>0|($n|0)==-1|(Tn|0)==-1){break d}ko=Tn-$n|0;if(ko>>>0<=mo+40>>>0){break d}}Tn=q[4808]+ko|0;q[4808]=Tn;if(Tn>>>0>t[4809]){q[4809]=Tn}x:{y:{z:{io=q[4706];if(io){Tn=19248;while(1){jo=q[Tn>>2];ao=q[Tn+4>>2];if((jo+ao|0)==($n|0)){break z}Tn=q[Tn+8>>2];if(Tn){continue}break}break y}Tn=q[4704];if(!($n>>>0>=Tn>>>0?Tn:0)){q[4704]=$n}Tn=0;q[4813]=ko;q[4812]=$n;q[4708]=-1;q[4709]=q[4818];q[4815]=0;while(1){io=Tn<<3;ao=io+18840|0;q[io+18848>>2]=ao;q[io+18852>>2]=ao;Tn=Tn+1|0;if((Tn|0)!=32){continue}break}io=ko+ -40|0;Tn=$n+8&7?-8-$n&7:0;ao=io-Tn|0;q[4703]=ao;Tn=Tn+$n|0;q[4706]=Tn;q[Tn+4>>2]=ao|1;q[($n+io|0)+4>>2]=40;q[4707]=q[4822];break x}if(r[Tn+12|0]&8|$n>>>0<=io>>>0|jo>>>0>io>>>0){break y}q[Tn+4>>2]=ao+ko;Tn=io+8&7?-8-io&7:0;ao=Tn+io|0;q[4706]=ao;$n=q[4703]+ko|0;Tn=$n-Tn|0;q[4703]=Tn;q[ao+4>>2]=Tn|1;q[($n+io|0)+4>>2]=40;q[4707]=q[4822];break x}jo=q[4704];if($n>>>0<jo>>>0){q[4704]=$n;jo=0}ao=$n+ko|0;Tn=19248;A:{B:{C:{D:{E:{F:{while(1){if((ao|0)!=q[Tn>>2]){Tn=q[Tn+8>>2];if(Tn){continue}break F}break}if(!(r[Tn+12|0]&8)){break E}}Tn=19248;while(1){ao=q[Tn>>2];if(ao>>>0<=io>>>0){lo=ao+q[Tn+4>>2]|0;if(lo>>>0>io>>>0){break D}}Tn=q[Tn+8>>2];continue}}q[Tn>>2]=$n;q[Tn+4>>2]=q[Tn+4>>2]+ko;oo=($n+8&7?-8-$n&7:0)+$n|0;q[oo+4>>2]=mo|3;$n=ao+(ao+8&7?-8-ao&7:0)|0;Tn=($n-oo|0)-mo|0;lo=mo+oo|0;if(($n|0)==(io|0)){q[4706]=lo;Tn=q[4703]+Tn|0;q[4703]=Tn;q[lo+4>>2]=Tn|1;break B}if(q[4705]==($n|0)){q[4705]=lo;Tn=q[4702]+Tn|0;q[4702]=Tn;q[lo+4>>2]=Tn|1;q[Tn+lo>>2]=Tn;break B}ao=q[$n+4>>2];if((ao&3)==1){no=ao&-8;G:{if(ao>>>0<=255){jo=q[$n+8>>2];ao=ao>>>3;io=q[$n+12>>2];if((io|0)==(jo|0)){ro=18800,so=q[4700]&Yp(-2,ao),q[ro>>2]=so;break G}q[jo+12>>2]=io;q[io+8>>2]=jo;break G}po=q[$n+24>>2];ko=q[$n+12>>2];H:{if((ko|0)!=($n|0)){ao=q[$n+8>>2];q[ao+12>>2]=ko;q[ko+8>>2]=ao;break H}I:{io=$n+20|0;mo=q[io>>2];if(mo){break I}io=$n+16|0;mo=q[io>>2];if(mo){break I}ko=0;break H}while(1){ao=io;ko=mo;io=ko+20|0;mo=q[io>>2];if(mo){continue}io=ko+16|0;mo=q[ko+16>>2];if(mo){continue}break}q[ao>>2]=0}if(!po){break G}io=q[$n+28>>2];ao=(io<<2)+19104|0;J:{if(q[ao>>2]==($n|0)){q[ao>>2]=ko;if(ko){break J}ro=18804,so=q[4701]&Yp(-2,io),q[ro>>2]=so;break G}q[po+(q[po+16>>2]==($n|0)?16:20)>>2]=ko;if(!ko){break G}}q[ko+24>>2]=po;ao=q[$n+16>>2];if(ao){q[ko+16>>2]=ao;q[ao+24>>2]=ko}ao=q[$n+20>>2];if(!ao){break G}q[ko+20>>2]=ao;q[ao+24>>2]=ko}$n=$n+no|0;Tn=Tn+no|0}q[$n+4>>2]=q[$n+4>>2]&-2;q[lo+4>>2]=Tn|1;q[Tn+lo>>2]=Tn;if(Tn>>>0<=255){Tn=Tn>>>3;$n=(Tn<<3)+18840|0;ao=q[4700];Tn=1<<Tn;K:{if(!(ao&Tn)){q[4700]=Tn|ao;Tn=$n;break K}Tn=q[$n+8>>2]}q[$n+8>>2]=lo;q[Tn+12>>2]=lo;q[lo+12>>2]=$n;q[lo+8>>2]=Tn;break B}$n=lo;io=Tn>>>8;ao=0;L:{if(!io){break L}ao=31;if(Tn>>>0>16777215){break L}ao=io;io=io+1048320>>>16&8;ao=ao<<io;ko=ao+520192>>>16&4;ao=ao<<ko;jo=ao+245760>>>16&2;ao=(ao<<jo>>>15)-(jo|(io|ko))|0;ao=(ao<<1|Tn>>>ao+21&1)+28|0}q[$n+28>>2]=ao;q[lo+16>>2]=0;q[lo+20>>2]=0;jo=(ao<<2)+19104|0;io=q[4701];$n=1<<ao;M:{if(!(io&$n)){q[4701]=$n|io;q[jo>>2]=lo;q[lo+24>>2]=jo;break M}io=Tn<<((ao|0)==31?0:25-(ao>>>1)|0);$n=q[jo>>2];while(1){ao=$n;if((q[$n+4>>2]&-8)==(Tn|0)){break C}$n=io>>>29;io=io<<1;jo=(ao+($n&4)|0)+16|0;$n=q[jo>>2];if($n){continue}break}q[jo>>2]=lo;q[lo+24>>2]=ao}q[lo+12>>2]=lo;q[lo+8>>2]=lo;break B}jo=ko+ -40|0;Tn=$n+8&7?-8-$n&7:0;ao=jo-Tn|0;q[4703]=ao;Tn=Tn+$n|0;q[4706]=Tn;q[Tn+4>>2]=ao|1;q[($n+jo|0)+4>>2]=40;q[4707]=q[4822];Tn=(lo+(lo+ -39&7?39-lo&7:0)|0)+ -47|0;ao=Tn>>>0<io+16>>>0?io:Tn;q[ao+4>>2]=27;Tn=q[4815];q[ao+16>>2]=q[4814];q[ao+20>>2]=Tn;Tn=q[4813];q[ao+8>>2]=q[4812];q[ao+12>>2]=Tn;q[4814]=ao+8;q[4813]=ko;q[4812]=$n;q[4815]=0;Tn=ao+24|0;while(1){q[Tn+4>>2]=7;$n=Tn+8|0;Tn=Tn+4|0;if($n>>>0<lo>>>0){continue}break}if((ao|0)==(io|0)){break x}q[ao+4>>2]=q[ao+4>>2]&-2;lo=ao-io|0;q[io+4>>2]=lo|1;q[ao>>2]=lo;if(lo>>>0<=255){Tn=lo>>>3;$n=(Tn<<3)+18840|0;ao=q[4700];Tn=1<<Tn;N:{if(!(ao&Tn)){q[4700]=Tn|ao;Tn=$n;break N}Tn=q[$n+8>>2]}q[$n+8>>2]=io;q[Tn+12>>2]=io;q[io+12>>2]=$n;q[io+8>>2]=Tn;break x}q[io+16>>2]=0;q[io+20>>2]=0;Tn=io;ao=lo>>>8;$n=0;O:{if(!ao){break O}$n=31;if(lo>>>0>16777215){break O}$n=ao;ao=ao+1048320>>>16&8;$n=$n<<ao;ko=$n+520192>>>16&4;$n=$n<<ko;jo=$n+245760>>>16&2;$n=($n<<jo>>>15)-(jo|(ao|ko))|0;$n=($n<<1|lo>>>$n+21&1)+28|0}q[Tn+28>>2]=$n;jo=($n<<2)+19104|0;ao=q[4701];Tn=1<<$n;P:{if(!(ao&Tn)){q[4701]=Tn|ao;q[jo>>2]=io;q[io+24>>2]=jo;break P}Tn=lo<<(($n|0)==31?0:25-($n>>>1)|0);$n=q[jo>>2];while(1){ao=$n;if((lo|0)==(q[$n+4>>2]&-8)){break A}$n=Tn>>>29;Tn=Tn<<1;jo=(ao+($n&4)|0)+16|0;$n=q[jo>>2];if($n){continue}break}q[jo>>2]=io;q[io+24>>2]=ao}q[io+12>>2]=io;q[io+8>>2]=io;break x}Tn=q[ao+8>>2];q[Tn+12>>2]=lo;q[ao+8>>2]=lo;q[lo+24>>2]=0;q[lo+12>>2]=ao;q[lo+8>>2]=Tn}Tn=oo+8|0;break a}Tn=q[ao+8>>2];q[Tn+12>>2]=io;q[ao+8>>2]=io;q[io+24>>2]=0;q[io+12>>2]=ao;q[io+8>>2]=Tn}Tn=q[4703];if(Tn>>>0<=mo>>>0){break d}$n=Tn-mo|0;q[4703]=$n;ao=q[4706];Tn=ao+mo|0;q[4706]=Tn;q[Tn+4>>2]=$n|1;q[ao+4>>2]=mo|3;Tn=ao+8|0;break a}q[4681]=48;Tn=0;break a}Q:{if(!lo){break Q}io=q[jo+28>>2];Tn=(io<<2)+19104|0;R:{if(q[Tn>>2]==(jo|0)){q[Tn>>2]=$n;if($n){break R}no=Yp(-2,io)&no;q[4701]=no;break Q}q[lo+(q[lo+16>>2]==(jo|0)?16:20)>>2]=$n;if(!$n){break Q}}q[$n+24>>2]=lo;Tn=q[jo+16>>2];if(Tn){q[$n+16>>2]=Tn;q[Tn+24>>2]=$n}Tn=q[jo+20>>2];if(!Tn){break Q}q[$n+20>>2]=Tn;q[Tn+24>>2]=$n}S:{if(ao>>>0<=15){Tn=ao+mo|0;q[jo+4>>2]=Tn|3;Tn=Tn+jo|0;q[Tn+4>>2]=q[Tn+4>>2]|1;break S}q[jo+4>>2]=mo|3;io=jo+mo|0;q[io+4>>2]=ao|1;q[ao+io>>2]=ao;if(ao>>>0<=255){Tn=ao>>>3;$n=(Tn<<3)+18840|0;ao=q[4700];Tn=1<<Tn;T:{if(!(ao&Tn)){q[4700]=Tn|ao;Tn=$n;break T}Tn=q[$n+8>>2]}q[$n+8>>2]=io;q[Tn+12>>2]=io;q[io+12>>2]=$n;q[io+8>>2]=Tn;break S}Tn=io;ko=ao>>>8;$n=0;U:{if(!ko){break U}$n=31;if(ao>>>0>16777215){break U}$n=ko;ko=ko+1048320>>>16&8;$n=$n<<ko;lo=$n+520192>>>16&4;$n=$n<<lo;mo=$n+245760>>>16&2;$n=($n<<mo>>>15)-(mo|(ko|lo))|0;$n=($n<<1|ao>>>$n+21&1)+28|0}q[Tn+28>>2]=$n;q[io+16>>2]=0;q[io+20>>2]=0;ko=($n<<2)+19104|0;V:{Tn=1<<$n;W:{if(!(Tn&no)){q[4701]=Tn|no;q[ko>>2]=io;q[io+24>>2]=ko;break W}Tn=ao<<(($n|0)==31?0:25-($n>>>1)|0);mo=q[ko>>2];while(1){$n=mo;if((q[$n+4>>2]&-8)==(ao|0)){break V}ko=Tn>>>29;Tn=Tn<<1;ko=($n+(ko&4)|0)+16|0;mo=q[ko>>2];if(mo){continue}break}q[ko>>2]=io;q[io+24>>2]=$n}q[io+12>>2]=io;q[io+8>>2]=io;break S}Tn=q[$n+8>>2];q[Tn+12>>2]=io;q[$n+8>>2]=io;q[io+24>>2]=0;q[io+12>>2]=$n;q[io+8>>2]=Tn}Tn=jo+8|0;break a}X:{if(!oo){break X}ao=q[$n+28>>2];Tn=(ao<<2)+19104|0;Y:{if(q[Tn>>2]==($n|0)){q[Tn>>2]=jo;if(jo){break Y}ro=18804,so=Yp(-2,ao)&no,q[ro>>2]=so;break X}q[(q[oo+16>>2]==($n|0)?16:20)+oo>>2]=jo;if(!jo){break X}}q[jo+24>>2]=oo;Tn=q[$n+16>>2];if(Tn){q[jo+16>>2]=Tn;q[Tn+24>>2]=jo}Tn=q[$n+20>>2];if(!Tn){break X}q[jo+20>>2]=Tn;q[Tn+24>>2]=jo}Z:{if(io>>>0<=15){Tn=io+mo|0;q[$n+4>>2]=Tn|3;Tn=Tn+$n|0;q[Tn+4>>2]=q[Tn+4>>2]|1;break Z}q[$n+4>>2]=mo|3;jo=$n+mo|0;q[jo+4>>2]=io|1;q[io+jo>>2]=io;if(po){Tn=po>>>3;ao=(Tn<<3)+18840|0;mo=q[4705];Tn=1<<Tn;_:{if(!(Tn&ko)){q[4700]=Tn|ko;Tn=ao;break _}Tn=q[ao+8>>2]}q[ao+8>>2]=mo;q[Tn+12>>2]=mo;q[mo+12>>2]=ao;q[mo+8>>2]=Tn}q[4705]=jo;q[4702]=io}Tn=$n+8|0}T=qo+16|0;return Tn|0}function pp(Tn){Tn=Tn|0;var to=0,uo=0,vo=0,wo=0,xo=0,yo=0,zo=0,Ao=0,Bo=0;a:{if(!Tn){break a}vo=Tn+ -8|0;uo=q[Tn+ -4>>2];Tn=uo&-8;xo=vo+Tn|0;b:{if(uo&1){break b}if(!(uo&3)){break a}uo=q[vo>>2];vo=vo-uo|0;if(vo>>>0<t[4704]){break a}Tn=Tn+uo|0;if(q[4705]!=(vo|0)){if(uo>>>0<=255){wo=q[vo+8>>2];uo=uo>>>3;to=q[vo+12>>2];if((to|0)==(wo|0)){Ao=18800,Bo=q[4700]&Yp(-2,uo),q[Ao>>2]=Bo;break b}q[wo+12>>2]=to;q[to+8>>2]=wo;break b}zo=q[vo+24>>2];uo=q[vo+12>>2];c:{if((uo|0)!=(vo|0)){to=q[vo+8>>2];q[to+12>>2]=uo;q[uo+8>>2]=to;break c}d:{wo=vo+20|0;to=q[wo>>2];if(to){break d}wo=vo+16|0;to=q[wo>>2];if(to){break d}uo=0;break c}while(1){yo=wo;uo=to;wo=uo+20|0;to=q[wo>>2];if(to){continue}wo=uo+16|0;to=q[uo+16>>2];if(to){continue}break}q[yo>>2]=0}if(!zo){break b}wo=q[vo+28>>2];to=(wo<<2)+19104|0;e:{if(q[to>>2]==(vo|0)){q[to>>2]=uo;if(uo){break e}Ao=18804,Bo=q[4701]&Yp(-2,wo),q[Ao>>2]=Bo;break b}q[zo+(q[zo+16>>2]==(vo|0)?16:20)>>2]=uo;if(!uo){break b}}q[uo+24>>2]=zo;to=q[vo+16>>2];if(to){q[uo+16>>2]=to;q[to+24>>2]=uo}to=q[vo+20>>2];if(!to){break b}q[uo+20>>2]=to;q[to+24>>2]=uo;break b}uo=q[xo+4>>2];if((uo&3)!=3){break b}q[4702]=Tn;q[xo+4>>2]=uo&-2;q[vo+4>>2]=Tn|1;q[Tn+vo>>2]=Tn;return}if(xo>>>0<=vo>>>0){break a}uo=q[xo+4>>2];if(!(uo&1)){break a}f:{if(!(uo&2)){if((xo|0)==q[4706]){q[4706]=vo;Tn=q[4703]+Tn|0;q[4703]=Tn;q[vo+4>>2]=Tn|1;if(q[4705]!=(vo|0)){break a}q[4702]=0;q[4705]=0;return}if((xo|0)==q[4705]){q[4705]=vo;Tn=q[4702]+Tn|0;q[4702]=Tn;q[vo+4>>2]=Tn|1;q[Tn+vo>>2]=Tn;return}Tn=(uo&-8)+Tn|0;g:{if(uo>>>0<=255){to=q[xo+8>>2];uo=uo>>>3;wo=q[xo+12>>2];if((to|0)==(wo|0)){Ao=18800,Bo=q[4700]&Yp(-2,uo),q[Ao>>2]=Bo;break g}q[to+12>>2]=wo;q[wo+8>>2]=to;break g}zo=q[xo+24>>2];uo=q[xo+12>>2];h:{if((xo|0)!=(uo|0)){to=q[xo+8>>2];q[to+12>>2]=uo;q[uo+8>>2]=to;break h}i:{wo=xo+20|0;to=q[wo>>2];if(to){break i}wo=xo+16|0;to=q[wo>>2];if(to){break i}uo=0;break h}while(1){yo=wo;uo=to;wo=uo+20|0;to=q[wo>>2];if(to){continue}wo=uo+16|0;to=q[uo+16>>2];if(to){continue}break}q[yo>>2]=0}if(!zo){break g}wo=q[xo+28>>2];to=(wo<<2)+19104|0;j:{if((xo|0)==q[to>>2]){q[to>>2]=uo;if(uo){break j}Ao=18804,Bo=q[4701]&Yp(-2,wo),q[Ao>>2]=Bo;break g}q[zo+((xo|0)==q[zo+16>>2]?16:20)>>2]=uo;if(!uo){break g}}q[uo+24>>2]=zo;to=q[xo+16>>2];if(to){q[uo+16>>2]=to;q[to+24>>2]=uo}to=q[xo+20>>2];if(!to){break g}q[uo+20>>2]=to;q[to+24>>2]=uo}q[vo+4>>2]=Tn|1;q[Tn+vo>>2]=Tn;if(q[4705]!=(vo|0)){break f}q[4702]=Tn;return}q[xo+4>>2]=uo&-2;q[vo+4>>2]=Tn|1;q[Tn+vo>>2]=Tn}if(Tn>>>0<=255){Tn=Tn>>>3;uo=(Tn<<3)+18840|0;to=q[4700];Tn=1<<Tn;k:{if(!(to&Tn)){q[4700]=Tn|to;Tn=uo;break k}Tn=q[uo+8>>2]}q[uo+8>>2]=vo;q[Tn+12>>2]=vo;q[vo+12>>2]=uo;q[vo+8>>2]=Tn;return}q[vo+16>>2]=0;q[vo+20>>2]=0;uo=vo;wo=Tn>>>8;to=0;l:{if(!wo){break l}to=31;if(Tn>>>0>16777215){break l}to=wo;wo=wo+1048320>>>16&8;to=to<<wo;zo=to+520192>>>16&4;to=to<<zo;yo=to+245760>>>16&2;to=(to<<yo>>>15)-(yo|(wo|zo))|0;to=(to<<1|Tn>>>to+21&1)+28|0}q[uo+28>>2]=to;yo=(to<<2)+19104|0;wo=q[4701];uo=1<<to;m:{if(!(wo&uo)){q[4701]=uo|wo;q[yo>>2]=vo;q[vo+12>>2]=vo;q[vo+24>>2]=yo;q[vo+8>>2]=vo;break m}wo=Tn<<((to|0)==31?0:25-(to>>>1)|0);uo=q[yo>>2];n:{while(1){to=uo;if((q[uo+4>>2]&-8)==(Tn|0)){break n}uo=wo>>>29;wo=wo<<1;yo=(to+(uo&4)|0)+16|0;uo=q[yo>>2];if(uo){continue}break}q[yo>>2]=vo;q[vo+12>>2]=vo;q[vo+24>>2]=to;q[vo+8>>2]=vo;break m}Tn=q[to+8>>2];q[Tn+12>>2]=vo;q[to+8>>2]=vo;q[vo+24>>2]=0;q[vo+12>>2]=to;q[vo+8>>2]=Tn}Tn=q[4708]+ -1|0;q[4708]=Tn;if(Tn){break a}vo=19256;while(1){Tn=q[vo>>2];vo=Tn+8|0;if(Tn){continue}break}q[4708]=-1}}function qp(Tn){var Co=0;Co=q[4828];Tn=Co+Tn|0;if((Tn|0)<=-1){q[4681]=48;return-1}a:{if(Tn>>>0<=W()<<16>>>0){break a}if(P(Tn|0)){break a}q[4681]=48;return-1}q[4828]=Tn;return Co}function rp(Do,Eo,Fo,Go,Ho,Io,Jo,Ko,Lo){var Mo=0,No=0,Oo=0,Po=0,Qo=0,Ro=0,So=0,To=0,Uo=0,Vo=0,Wo=0,Xo=0,Yo=0;Mo=T-128|0;T=Mo;a:{b:{c:{if(!Ln(Io,Jo,Ko,Lo,0,0,0,0)){break c}Oo=up(Io,Jo,Ko,Lo);Wo=Ho>>>16;Ro=Wo&32767;if((Ro|0)==32767){break c}if(Oo){break b}}Tn(Mo+16|0,Eo,Fo,Go,Ho,Io,Jo,Ko,Lo);Ho=q[Mo+16>>2];Go=q[Mo+20>>2];Fo=q[Mo+24>>2];Eo=q[Mo+28>>2];Nn(Mo,Ho,Go,Fo,Eo,Ho,Go,Fo,Eo);Go=q[Mo+8>>2];Ho=q[Mo+12>>2];Ko=q[Mo>>2];Lo=q[Mo+4>>2];break a}No=Ho&65535|Ro<<16;Qo=No;Po=Go;So=Ko;Vo=Lo>>>16&32767;Oo=Lo&65535|Vo<<16;if((Ln(Eo,Fo,Po,No,Io,Jo,Ko,Oo)|0)<=0){if(Ln(Eo,Fo,Po,Qo,Io,Jo,So,Oo)){Ko=Eo;Lo=Fo;break a}Tn(Mo+112|0,Eo,Fo,Go,Ho,0,0,0,0);Go=q[Mo+120>>2];Ho=q[Mo+124>>2];Ko=q[Mo+112>>2];Lo=q[Mo+116>>2];break a}if(Ro){Lo=Fo;Ko=Eo}else{Tn(Mo+96|0,Eo,Fo,Po,Qo,0,0,0,1081540608);Ko=q[Mo+108>>2];Qo=Ko;Po=q[Mo+104>>2];Ro=(Ko>>>16)+ -120|0;Lo=q[Mo+100>>2];Ko=q[Mo+96>>2]}if(!Vo){Tn(Mo+80|0,Io,Jo,So,Oo,0,0,0,1081540608);Io=q[Mo+92>>2];Oo=Io;So=q[Mo+88>>2];Vo=(Oo>>>16)+ -120|0;Jo=q[Mo+84>>2];Io=q[Mo+80>>2]}Yo=So;No=So;So=Po-No|0;Qo=Qo&65535|65536;Xo=Oo&65535|65536;Oo=(Jo|0)==(Lo|0)&Ko>>>0<Io>>>0|Lo>>>0<Jo>>>0;No=(Qo-(Xo+(Po>>>0<No>>>0)|0)|0)-(So>>>0<Oo>>>0)|0;To=So-Oo|0;Uo=(No|0)>-1?1:(No|0)>=-1?To>>>0<=4294967295?0:1:0;So=Ko-Io|0;Oo=Lo-((Ko>>>0<Io>>>0)+Jo|0)|0;if((Ro|0)>(Vo|0)){while(1){d:{if(Uo&1){if(!(So|To|(No|Oo))){Tn(Mo+32|0,Eo,Fo,Go,Ho,0,0,0,0);Go=q[Mo+40>>2];Ho=q[Mo+44>>2];Ko=q[Mo+32>>2];Lo=q[Mo+36>>2];break a}Ko=To;Uo=No<<1|Ko>>>31;To=Ko<<1;No=Uo;Uo=0;Ko=Oo>>>31;break d}No=0;Oo=Lo;To=Lo>>>31;So=Ko;Ko=Po;Uo=Qo<<1|Ko>>>31;Ko=Ko<<1}Po=Ko|To;Lo=Po;Ko=Yo;To=Lo-Ko|0;Qo=No|Uo;No=Qo-((Lo>>>0<Ko>>>0)+Xo|0)|0;Ko=So;Uo=Oo<<1|Ko>>>31;Ko=Ko<<1;Lo=Uo;Oo=(Jo|0)==(Lo|0)&Ko>>>0<Io>>>0|Lo>>>0<Jo>>>0;No=No-(To>>>0<Oo>>>0)|0;To=To-Oo|0;Uo=(No|0)>-1?1:(No|0)>=-1?To>>>0<=4294967295?0:1:0;So=Ko-Io|0;Oo=Lo-((Ko>>>0<Io>>>0)+Jo|0)|0;Ro=Ro+ -1|0;if((Ro|0)>(Vo|0)){continue}break}Ro=Vo}e:{if(!Uo){break e}Ko=So;Po=To;Lo=Oo;Qo=No;if(Ko|Po|(Lo|No)){break e}Tn(Mo+48|0,Eo,Fo,Go,Ho,0,0,0,0);Go=q[Mo+56>>2];Ho=q[Mo+60>>2];Ko=q[Mo+48>>2];Lo=q[Mo+52>>2];break a}if((Qo|0)==65535&Po>>>0<=4294967295|Qo>>>0<65535){while(1){Go=Lo>>>31;Eo=0;Ro=Ro+ -1|0;No=Lo<<1|Ko>>>31;Ko=Ko<<1;Lo=No;Uo=Qo<<1|Po>>>31;Po=Po<<1|Go;Eo=Eo|Uo;Qo=Eo;if((Eo|0)==65536&Po>>>0<0|Eo>>>0<65536){continue}break}}Eo=Wo&32768;if((Ro|0)<=0){Tn(Mo- -64|0,Ko,Lo,Po,Qo&65535|(Eo|Ro+120)<<16,0,0,0,1065811968);Go=q[Mo+72>>2];Ho=q[Mo+76>>2];Ko=q[Mo+64>>2];Lo=q[Mo+68>>2];break a}Go=Po;Ho=Qo&65535|(Eo|Ro)<<16}q[Do>>2]=Ko;q[Do+4>>2]=Lo;q[Do+8>>2]=Go;q[Do+12>>2]=Ho;T=Mo+128|0}function sp(Tn){var Do=0,Eo=0,Fo=0,Go=0,Ho=0,Io=0,Jo=0,Ko=0,Lo=0,Zo=0,_o=0,$o=0;a:{b:{c:{d:{h(+Tn);Do=e(1)|0;Eo=e(0)|0;if((Do|0)>0?1:(Do|0)>=0?Eo>>>0<0?0:1:0){Go=Do;if(Do>>>0>1048575){break d}}if(!(Do&2147483647|Eo)){return-1/(Tn*Tn)}if((Do|0)>-1?1:(Do|0)>=-1?Eo>>>0<=4294967295?0:1:0){break c}return(Tn-Tn)/0}if(Go>>>0>2146435071){break a}Do=1072693248;Lo=-1023;if((Go|0)!=1072693248){Do=Go;break b}if(Eo){break b}return 0}h(+(Tn*0x40000000000000));Do=e(1)|0;Eo=e(0)|0;Lo=-1077}f(0,Eo|0);Eo=Do+614242|0;f(1,(Eo&1048575)+1072079006|0);Fo=+g()+ -1;Ho=Fo*(Fo*.5);Io=Fo/(Fo+2);Jo=Io*Io;Tn=Jo*Jo;h(+(Fo-Ho));Do=e(1)|0;e(0)|0;f(0,0);f(1,Do|0);Ko=+g();Zo=Ko*1.4426950407214463;_o=+((Eo>>>20)+Lo|0);$o=Zo+_o;Tn=Fo-Ko-Ho+Io*(Ho+(Tn*(Tn*(Tn*.15313837699209373+.22222198432149784)+.3999999999940942)+Jo*(Tn*(Tn*(Tn*.14798198605116586+.1818357216161805)+.2857142874366239)+.6666666666666735)));Tn=$o+(Zo+(_o-$o)+(Tn*1.4426950407214463+(Tn+Ko)*1.6751713164886512e-10))}return Tn}function tp(Tn){var ap=0;ap=1;a:{if((Tn|0)>=1024){ap=8.98846567431158e+307;if((Tn|0)<2047){Tn=Tn+ -1023|0;break a}ap=H;Tn=((Tn|0)<3069?Tn:3069)+ -2046|0;break a}if((Tn|0)>-1023){break a}ap=2.2250738585072014e-308;if((Tn|0)>-2045){Tn=Tn+1022|0;break a}ap=0;Tn=((Tn|0)>-3066?Tn:-3066)+2044|0}f(0,0);f(1,Tn+1023<<20);return ap*+g()}function up(Tn,bp,cp,dp){var ep=0,fp=0;fp=dp&65535;dp=dp>>>16&32767;a:{if((dp|0)!=32767){ep=4;if(dp){break a}return Tn|cp|(bp|fp)?3:2}ep=!(Tn|cp|(bp|fp))}return ep}function vp(Tn,bp,cp){var dp=0,gp=0,hp=0;if(cp>>>0>=8192){Q(Tn|0,bp|0,cp|0)|0;return Tn}gp=Tn+cp|0;a:{if(!((Tn^bp)&3)){b:{if((cp|0)<1){cp=Tn;break b}if(!(Tn&3)){cp=Tn;break b}cp=Tn;while(1){o[cp|0]=r[bp|0];bp=bp+1|0;cp=cp+1|0;if(cp>>>0>=gp>>>0){break b}if(cp&3){continue}break}}dp=gp&-4;c:{if(dp>>>0<64){break c}hp=dp+ -64|0;if(cp>>>0>hp>>>0){break c}while(1){q[cp>>2]=q[bp>>2];q[cp+4>>2]=q[bp+4>>2];q[cp+8>>2]=q[bp+8>>2];q[cp+12>>2]=q[bp+12>>2];q[cp+16>>2]=q[bp+16>>2];q[cp+20>>2]=q[bp+20>>2];q[cp+24>>2]=q[bp+24>>2];q[cp+28>>2]=q[bp+28>>2];q[cp+32>>2]=q[bp+32>>2];q[cp+36>>2]=q[bp+36>>2];q[cp+40>>2]=q[bp+40>>2];q[cp+44>>2]=q[bp+44>>2];q[cp+48>>2]=q[bp+48>>2];q[cp+52>>2]=q[bp+52>>2];q[cp+56>>2]=q[bp+56>>2];q[cp+60>>2]=q[bp+60>>2];bp=bp- -64|0;cp=cp- -64|0;if(cp>>>0<=hp>>>0){continue}break}}if(cp>>>0>=dp>>>0){break a}while(1){q[cp>>2]=q[bp>>2];bp=bp+4|0;cp=cp+4|0;if(cp>>>0<dp>>>0){continue}break}break a}if(gp>>>0<4){cp=Tn;break a}dp=gp+ -4|0;if(dp>>>0<Tn>>>0){cp=Tn;break a}cp=Tn;while(1){o[cp|0]=r[bp|0];o[cp+1|0]=r[bp+1|0];o[cp+2|0]=r[bp+2|0];o[cp+3|0]=r[bp+3|0];bp=bp+4|0;cp=cp+4|0;if(cp>>>0<=dp>>>0){continue}break}}if(cp>>>0<gp>>>0){while(1){o[cp|0]=r[bp|0];bp=bp+1|0;cp=cp+1|0;if((gp|0)!=(cp|0)){continue}break}}return Tn}function wp(Tn,bp,cp){var ip=0,jp=0,kp=0,lp=0;a:{if(!cp){break a}ip=Tn+cp|0;o[ip+ -1|0]=bp;o[Tn|0]=bp;if(cp>>>0<3){break a}o[ip+ -2|0]=bp;o[Tn+1|0]=bp;o[ip+ -3|0]=bp;o[Tn+2|0]=bp;if(cp>>>0<7){break a}o[ip+ -4|0]=bp;o[Tn+3|0]=bp;if(cp>>>0<9){break a}ip=0-Tn&3;jp=ip+Tn|0;bp=w(bp&255,16843009);q[jp>>2]=bp;cp=cp-ip&-4;ip=cp+jp|0;q[ip+ -4>>2]=bp;if(cp>>>0<9){break a}q[jp+8>>2]=bp;q[jp+4>>2]=bp;q[ip+ -8>>2]=bp;q[ip+ -12>>2]=bp;if(cp>>>0<25){break a}q[jp+24>>2]=bp;q[jp+20>>2]=bp;q[jp+16>>2]=bp;q[jp+12>>2]=bp;q[ip+ -16>>2]=bp;q[ip+ -20>>2]=bp;q[ip+ -24>>2]=bp;q[ip+ -28>>2]=bp;lp=jp&4|24;cp=cp-lp|0;if(cp>>>0<32){break a}ip=bp;kp=bp;bp=jp+lp|0;while(1){q[bp+24>>2]=kp;q[bp+28>>2]=ip;q[bp+16>>2]=kp;q[bp+20>>2]=ip;q[bp+8>>2]=kp;q[bp+12>>2]=ip;q[bp>>2]=kp;q[bp+4>>2]=ip;bp=bp+32|0;cp=cp+ -32|0;if(cp>>>0>31){continue}break}}return Tn}function xp(Tn,bp,cp){var mp=0,np=0;a:{if((Tn|0)==(bp|0)){break a}b:{if(bp+cp>>>0>Tn>>>0){np=Tn+cp|0;if(np>>>0>bp>>>0){break b}}return vp(Tn,bp,cp)}mp=(Tn^bp)&3;c:{d:{if(Tn>>>0<bp>>>0){if(mp){mp=Tn;break c}if(!(Tn&3)){mp=Tn;break d}mp=Tn;while(1){if(!cp){break a}o[mp|0]=r[bp|0];bp=bp+1|0;cp=cp+ -1|0;mp=mp+1|0;if(mp&3){continue}break}break d}e:{if(mp){break e}if(np&3){while(1){if(!cp){break a}cp=cp+ -1|0;mp=cp+Tn|0;o[mp|0]=r[bp+cp|0];if(mp&3){continue}break}}if(cp>>>0<=3){break e}while(1){cp=cp+ -4|0;q[cp+Tn>>2]=q[bp+cp>>2];if(cp>>>0>3){continue}break}}if(!cp){break a}while(1){cp=cp+ -1|0;o[cp+Tn|0]=r[bp+cp|0];if(cp){continue}break}break a}if(cp>>>0<=3){break c}np=cp;while(1){q[mp>>2]=q[bp>>2];bp=bp+4|0;mp=mp+4|0;np=np+ -4|0;if(np>>>0>3){continue}break}cp=cp&3}if(!cp){break a}while(1){o[mp|0]=r[bp|0];mp=mp+1|0;bp=bp+1|0;cp=cp+ -1|0;if(cp){continue}break}}return Tn}function yp(Tn,bp){Tn=Tn|0;bp=bp|0;if(!q[4824]){q[4825]=bp;q[4824]=Tn}}function zp(){return T|0}function Ap(Tn){Tn=Tn|0;Tn=T-Tn&-16;T=Tn;return Tn|0}function Bp(Tn){Tn=Tn|0;T=Tn}function Cp(Tn){Tn=Tn|0;return X(Tn|0)|0}function Dp(Tn,bp){Tn=Tn|0;bp=bp|0;return n[Tn](bp)|0}function Ep(Tn,bp){Tn=Tn|0;bp=bp|0;n[Tn](bp)}function Fp(Tn,bp,cp){Tn=Tn|0;bp=bp|0;cp=cp|0;return n[Tn](bp,cp)|0}function Gp(Tn,bp,cp){Tn=Tn|0;bp=bp|0;cp=cp|0;n[Tn](bp,cp)}function Hp(Tn,bp,cp,op){Tn=Tn|0;bp=bp|0;cp=cp|0;op=op|0;return n[Tn](bp,cp,op)|0}function Ip(Tn){Tn=Tn|0;n[Tn]()}function Jp(Tn,bp,cp,op){Tn=Tn|0;bp=bp|0;cp=cp|0;op=op|0;n[Tn](bp,cp,op)}function Kp(Tn,bp,cp,op,pp,qp,rp){Tn=Tn|0;bp=bp|0;cp=cp|0;op=op|0;pp=pp|0;qp=qp|0;rp=rp|0;return n[Tn](bp,cp,op,pp,qp,rp)|0}function Lp(Tn,bp,cp,op,pp){Tn=Tn|0;bp=bp|0;cp=cp|0;op=op|0;pp=pp|0;n[Tn](bp,cp,op,pp)}function Mp(Tn,bp,cp,op,pp,qp,rp){Tn=Tn|0;bp=bp|0;cp=+cp;op=op|0;pp=pp|0;qp=qp|0;rp=rp|0;return n[Tn](bp,cp,op,pp,qp,rp)|0}function Np(Tn,bp,cp,op,pp,qp,rp){Tn=Tn|0;bp=bp|0;cp=cp|0;op=op|0;pp=pp|0;qp=qp|0;rp=rp|0;n[Tn](bp,cp,op,pp,qp,rp)}function Op(Tn,bp,cp,op,pp,qp){Tn=Tn|0;bp=bp|0;cp=cp|0;op=op|0;pp=pp|0;qp=qp|0;n[Tn](bp,cp,op,pp,qp)}function Pp(Tn,bp,cp,op,pp){Tn=Tn|0;bp=bp|0;cp=cp|0;op=op|0;pp=pp|0;Tn=n[Tn](bp,cp,op,pp)|0;R(V|0);return Tn|0}function Qp(Tn,bp){i(Tn|0,bp|0)}function Rp(Tn,bp,cp,op){var pp=0,qp=0,rp=0,sp=0,tp=0,up=0;pp=cp>>>16;qp=Tn>>>16;up=w(pp,qp);rp=cp&65535;sp=Tn&65535;tp=w(rp,sp);qp=(tp>>>16)+w(qp,rp)|0;pp=(qp&65535)+w(pp,sp)|0;Tn=(((w(bp,cp)+up|0)+w(Tn,op)|0)+(qp>>>16)|0)+(pp>>>16)|0;bp=tp&65535|pp<<16;V=Tn;return bp}function Sp(Tn,bp,cp,op){var vp=0,wp=0,xp=0,yp=0;vp=bp;wp=vp>>31;vp=vp>>31;Tn=Tn^vp;xp=Tn-vp|0;yp=(bp^wp)-((Tn>>>0<vp>>>0)+wp|0)|0;vp=op;wp=vp>>31;vp=vp>>31;Tn=cp^vp;vp=Wp(xp,yp,Tn-vp|0,(op^wp)-((Tn>>>0<vp>>>0)+wp|0)|0);bp=bp^op;cp=bp>>31;Tn=bp>>31;bp=vp^Tn;op=bp-Tn|0;V=(cp^V)-((bp>>>0<Tn>>>0)+cp|0)|0;return op}function Tp(Tn,bp,cp,op){var zp=0,Ap=0,Bp=0,Cp=0,Dp=0,Ep=0,Fp=0,Gp=0,Hp=0,Ip=0,Jp=0;a:{b:{c:{d:{e:{f:{g:{h:{i:{j:{Bp=bp;if(Bp){zp=cp;if(!zp){break j}Ap=op;if(!Ap){break i}Ap=z(Ap)-z(Bp)|0;if(Ap>>>0<=31){break h}break b}if((op|0)==1&cp>>>0>=0|op>>>0>1){break b}bp=(Tn>>>0)/(cp>>>0)|0;Qp(Tn-w(bp,cp)|0,0);V=0;return bp}zp=op;if(!Tn){break g}if(!zp){break f}Ap=zp+ -1|0;if(Ap&zp){break f}Qp(Tn,Ap&Bp);Tn=Bp>>>(Zp(zp)&31);V=0;return Tn}Ap=zp+ -1|0;if(!(Ap&zp)){break e}Ep=(z(zp)+33|0)-z(Bp)|0;Cp=0-Ep|0;break c}Ep=Ap+1|0;Cp=63-Ap|0;break c}Tn=(Bp>>>0)/(zp>>>0)|0;Qp(0,Bp-w(Tn,zp)|0);V=0;return Tn}Ap=z(zp)-z(Bp)|0;if(Ap>>>0<31){break d}break b}Qp(Tn&Ap,0);if((zp|0)==1){break a}cp=Tn;Tn=Zp(zp);op=Tn&31;if(32<=(Tn&63)>>>0){Ap=0;Tn=bp>>>op}else{Ap=bp>>>op;Tn=((1<<op)-1&bp)<<32-op|cp>>>op}V=Ap;return Tn}Ep=Ap+1|0;Cp=63-Ap|0}zp=bp;Bp=Tn;Ap=Ep&63;Dp=Ap&31;if(32<=(Ap&63)>>>0){Ap=0;Gp=zp>>>Dp}else{Ap=zp>>>Dp;Gp=((1<<Dp)-1&zp)<<32-Dp|Bp>>>Dp}Tn=Cp&63;Cp=Tn&31;if(32<=(Tn&63)>>>0){zp=Bp<<Cp;Tn=0}else{zp=(1<<Cp)-1&Bp>>>32-Cp|bp<<Cp;Tn=Bp<<Cp}bp=zp;if(Ep){Bp=op+ -1|0;zp=cp+ -1|0;if(zp>>>0<4294967295){Bp=Bp+1|0}Cp=zp;while(1){zp=Gp;Ap=Ap<<1|zp>>>31;zp=zp<<1;Fp=Ap;Ap=bp>>>31|zp;Hp=Fp;zp=Fp;Fp=Ap;Dp=Bp-((Cp>>>0<Ap>>>0)+zp|0)|0;zp=Dp>>31;Dp=Dp>>31;Ap=cp&Dp;Gp=Fp-Ap|0;Ap=Hp-((op&zp)+(Fp>>>0<Ap>>>0)|0)|0;zp=bp<<1|Tn>>>31;Tn=Ip|Tn<<1;bp=zp|Jp;zp=0;Hp=zp;Fp=Dp&1;Ip=Fp;Ep=Ep+ -1|0;if(Ep){continue}break}}Qp(Gp,Ap);zp=bp<<1|Tn>>>31;Tn=Fp|Tn<<1;V=zp|Hp;return Tn}Qp(Tn,bp);Tn=0;bp=0}V=bp;return Tn}function Up(Tn,bp,cp,op){Tn=Rp(Tn,bp,cp,op);return Tn}function Vp(Tn,bp,cp,op){Tn=Sp(Tn,bp,cp,op);return Tn}function Wp(Tn,bp,cp,op){Tn=Tp(Tn,bp,cp,op);return Tn}function Xp(Tn){var bp=0,cp=0;while(1){cp=bp;if(Tn){Tn=Tn-1&Tn;bp=bp+1|0;continue}break}return cp}function Yp(Tn,op){var Kp=0,Lp=0;Kp=op&31;Lp=(-1>>>Kp&Tn)<<Kp;Kp=Tn;Tn=0-op&31;return Lp|(Kp&-1<<Tn)>>>Tn}function Zp(Tn){if(Tn){return 31-z(Tn+ -1^Tn)|0}return 32}
// EMSCRIPTEN_END_FUNCS
n[1]=ub;n[2]=vb;n[3]=Zo;n[4]=yb;n[5]=Yb;n[6]=Zb;n[7]=Rb;n[8]=Sb;n[9]=hc;n[10]=ic;n[11]=jc;n[12]=_b;n[13]=ac;n[14]=ud;n[15]=vd;n[16]=rd;n[17]=sd;n[18]=Xo;n[19]=wd;n[20]=xd;n[21]=yd;n[22]=xd;n[23]=xd;n[24]=jc;n[25]=zd;n[26]=be;n[27]=ce;n[28]=Zb;n[29]=Bd;n[30]=Id;n[31]=Hd;n[32]=ue;n[33]=ve;n[34]=ne;n[35]=oe;n[36]=zd;n[37]=pe;n[38]=zd;n[39]=we;n[40]=we;n[41]=se;n[42]=te;n[43]=qe;n[44]=He;n[45]=Ie;n[46]=ye;n[47]=ze;n[48]=we;n[49]=Ae;n[50]=Je;n[51]=Ke;n[52]=Le;n[53]=Ne;n[54]=Be;n[55]=Ce;n[56]=De;n[57]=Ee;n[58]=Ge;n[59]=Ze;n[60]=_e;n[61]=Se;n[62]=Te;n[63]=jc;n[64]=We;n[65]=Ue;n[66]=Xe;n[67]=hf;n[68]=jf;n[69]=jc;n[70]=kf;n[71]=lf;n[72]=we;n[73]=mf;n[74]=xd;n[75]=we;n[76]=jc;n[77]=nf;n[78]=of;n[79]=vd;n[80]=vd;n[81]=qf;n[82]=rf;n[83]=sf;n[84]=lf;n[85]=tf;n[86]=uf;n[87]=wf;n[88]=xf;n[89]=yf;n[90]=zf;n[91]=jc;n[92]=xd;n[93]=Af;n[94]=Bf;n[95]=Cf;n[96]=Ff;n[97]=Gf;n[98]=Hf;n[99]=If;n[100]=jc;n[101]=xd;n[102]=Jf;n[103]=Kf;n[104]=Lf;n[105]=yb;n[106]=Yb;n[107]=Nf;n[108]=va;n[109]=Mf;n[110]=jf;n[111]=jc;n[112]=lf;n[113]=Pf;n[114]=vd;n[115]=Qf;n[116]=Rf;n[117]=sf;n[118]=lf;n[119]=tf;n[120]=Sf;n[121]=Tf;n[122]=Uf;n[123]=yf;n[124]=zf;n[125]=jc;n[126]=xd;n[127]=Af;n[128]=Bf;n[129]=Vf;n[130]=Xf;n[131]=Yf;n[132]=Hf;n[133]=If;n[134]=jc;n[135]=xd;n[136]=Jf;n[137]=Kf;n[138]=Zf;n[139]=yb;n[140]=Yb;n[141]=Nf;n[142]=va;n[143]=_f;n[144]=jf;n[145]=we;n[146]=jc;n[147]=ag;n[148]=Ze;n[149]=_e;n[150]=bg;n[151]=cg;n[152]=jc;n[153]=eg;n[154]=fg;n[155]=dg;n[156]=yb;n[157]=Yb;n[158]=jc;n[159]=kf;n[160]=jg;n[161]=we;n[162]=mf;n[163]=xd;n[164]=jc;n[165]=eg;n[166]=kg;n[167]=lg;n[168]=vd;n[169]=vd;n[170]=ng;n[171]=og;n[172]=sf;n[173]=jg;n[174]=pg;n[175]=qg;n[176]=rg;n[177]=sg;n[178]=yf;n[179]=tg;n[180]=jc;n[181]=xd;n[182]=ug;n[183]=vg;n[184]=wg;n[185]=xg;n[186]=yg;n[187]=Hf;n[188]=zg;n[189]=jc;n[190]=xd;n[191]=Ag;n[192]=Bg;n[193]=Cg;n[194]=yb;n[195]=Yb;n[196]=Nf;n[197]=va;n[198]=Mf;n[199]=Yb;n[200]=jc;n[201]=jg;n[202]=Dg;n[203]=vd;n[204]=Eg;n[205]=Fg;n[206]=sf;n[207]=jg;n[208]=pg;n[209]=Gg;n[210]=Hg;n[211]=Ig;n[212]=yf;n[213]=tg;n[214]=jc;n[215]=xd;n[216]=ug;n[217]=vg;n[218]=Jg;n[219]=Kg;n[220]=Lg;n[221]=Hf;n[222]=zg;n[223]=jc;n[224]=xd;n[225]=Ag;n[226]=Bg;n[227]=Mg;n[228]=yb;n[229]=Yb;n[230]=Nf;n[231]=va;n[232]=_f;n[233]=Yb;n[234]=we;n[235]=jc;n[236]=Ng;n[237]=Sg;n[238]=Tg;n[239]=Pg;n[240]=Qg;n[241]=jc;n[242]=Zb;n[243]=Rg;n[244]=vb;n[245]=gh;n[246]=mh;n[247]=lh;n[248]=sh;n[249]=sh;n[250]=tj;n[251]=uj;n[252]=jc;n[253]=jc;n[254]=mj;n[255]=jc;n[256]=Yk;n[257]=ll;n[258]=pl;n[259]=nj;n[260]=oj;n[261]=ql;n[262]=qj;n[263]=vj;n[264]=wj;n[265]=xj;n[266]=pj;n[267]=sj;n[268]=qk;n[269]=rk;n[270]=zj;n[271]=Aj;n[272]=Bj;n[273]=Cj;n[274]=Mj;n[275]=Nj;n[276]=ck;n[277]=dk;n[278]=kf;n[279]=sk;n[280]=tk;n[281]=gk;n[282]=Aj;n[283]=Bj;n[284]=hk;n[285]=Mj;n[286]=ik;n[287]=ck;n[288]=dk;n[289]=kf;n[290]=Lj;n[291]=uk;n[292]=Kj;n[293]=vk;n[294]=wk;n[295]=Ak;n[296]=Bk;n[297]=Ck;n[298]=Dk;n[299]=zk;n[300]=Fk;n[301]=xk;n[302]=Gk;n[303]=Hk;n[304]=Jk;n[305]=Kk;n[306]=Lk;n[307]=Mk;n[308]=Ik;n[309]=Ok;n[310]=Pk;n[311]=Qk;n[312]=Rk;n[313]=Sk;n[314]=Zk;n[315]=vd;n[316]=jc;n[317]=zd;n[318]=we;n[319]=xd;n[320]=xd;n[321]=dl;n[322]=we;n[323]=al;n[324]=bl;n[325]=_k;n[326]=cl;n[327]=yb;n[328]=Yb;n[329]=el;n[330]=fl;n[331]=vd;n[332]=we;n[333]=tl;n[334]=dl;n[335]=jc;n[336]=ul;n[337]=vl;n[338]=wl;n[339]=dl;n[340]=we;n[341]=ul;n[342]=al;n[343]=wl;n[344]=cm;n[345]=dm;n[346]=em;n[347]=gm;n[348]=Sm;n[349]=Pm;n[350]=bm;n[351]=am;n[352]=Tm;n[353]=Lm;n[354]=Nm;n[355]=Rm;n[356]=gn;n[357]=hn;n[358]=ln;n[359]=jn;n[360]=kn;n[361]=io;n[362]=yb;n[363]=Yb;n[364]=Yo;n[365]=$o;n[366]=ap;n[367]=bp;n[368]=yb;n[369]=Yb;n[370]=Vm;n[371]=Vm;n[372]=dp;n[373]=np;n[374]=lp;n[375]=gp;n[376]=Yb;n[377]=mp;n[378]=kp;n[379]=hp;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_PointCloud_PointCloud_0":fa,"emscripten_bind_PointCloud_num_attributes_0":ga,"emscripten_bind_PointCloud_num_points_0":ha,"emscripten_bind_PointCloud___destroy___0":ia,"emscripten_bind_ExpertEncoder_ExpertEncoder_1":ja,"emscripten_bind_ExpertEncoder_SetEncodingMethod_1":ka,"emscripten_bind_ExpertEncoder_SetAttributeQuantization_2":la,"emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5":ma,"emscripten_bind_ExpertEncoder_SetSpeedOptions_2":na,"emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1":oa,"emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2":pa,"emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0":qa,"emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0":ra,"emscripten_bind_ExpertEncoder___destroy___0":sa,"emscripten_bind_PointAttribute_PointAttribute_0":ta,"emscripten_bind_PointAttribute_size_0":ha,"emscripten_bind_PointAttribute_attribute_type_0":ua,"emscripten_bind_PointAttribute_data_type_0":va,"emscripten_bind_PointAttribute_num_components_0":wa,"emscripten_bind_PointAttribute_normalized_0":xa,"emscripten_bind_PointAttribute_byte_stride_0":ya,"emscripten_bind_PointAttribute_byte_offset_0":za,"emscripten_bind_PointAttribute_unique_id_0":Aa,"emscripten_bind_PointAttribute___destroy___0":Ba,"emscripten_bind_Encoder_Encoder_0":Ca,"emscripten_bind_Encoder_SetEncodingMethod_1":Da,"emscripten_bind_Encoder_SetAttributeQuantization_2":Ea,"emscripten_bind_Encoder_SetAttributeExplicitQuantization_5":Fa,"emscripten_bind_Encoder_SetSpeedOptions_2":Ga,"emscripten_bind_Encoder_SetTrackEncodedProperties_1":Ha,"emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2":Ia,"emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3":Ja,"emscripten_bind_Encoder_GetNumberOfEncodedPoints_0":ya,"emscripten_bind_Encoder_GetNumberOfEncodedFaces_0":Ka,"emscripten_bind_Encoder___destroy___0":La,"emscripten_bind_MeshBuilder_MeshBuilder_0":Oa,"emscripten_bind_MeshBuilder_AddFacesToMesh_3":Pa,"emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5":Qa,"emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5":Ra,"emscripten_bind_MeshBuilder_AddMetadataToMesh_2":Sa,"emscripten_bind_MeshBuilder_AddFloatAttribute_5":Qa,"emscripten_bind_MeshBuilder_AddInt8Attribute_5":Ta,"emscripten_bind_MeshBuilder_AddUInt8Attribute_5":Ua,"emscripten_bind_MeshBuilder_AddInt16Attribute_5":Va,"emscripten_bind_MeshBuilder_AddUInt16Attribute_5":Wa,"emscripten_bind_MeshBuilder_AddInt32Attribute_5":Ra,"emscripten_bind_MeshBuilder_AddUInt32Attribute_5":Xa,"emscripten_bind_MeshBuilder_AddMetadata_2":Ya,"emscripten_bind_MeshBuilder_SetMetadataForAttribute_3":Za,"emscripten_bind_MeshBuilder___destroy___0":_a,"emscripten_bind_DracoInt8Array_DracoInt8Array_0":$a,"emscripten_bind_DracoInt8Array_GetValue_1":ab,"emscripten_bind_DracoInt8Array_size_0":bb,"emscripten_bind_DracoInt8Array___destroy___0":cb,"emscripten_bind_MetadataBuilder_MetadataBuilder_0":Oa,"emscripten_bind_MetadataBuilder_AddStringEntry_3":db,"emscripten_bind_MetadataBuilder_AddIntEntry_3":eb,"emscripten_bind_MetadataBuilder_AddDoubleEntry_3":fb,"emscripten_bind_MetadataBuilder___destroy___0":_a,"emscripten_bind_GeometryAttribute_GeometryAttribute_0":gb,"emscripten_bind_GeometryAttribute___destroy___0":_a,"emscripten_bind_Mesh_Mesh_0":hb,"emscripten_bind_Mesh_num_faces_0":ib,"emscripten_bind_Mesh_num_attributes_0":ga,"emscripten_bind_Mesh_num_points_0":ha,"emscripten_bind_Mesh_set_num_points_1":jb,"emscripten_bind_Mesh___destroy___0":ia,"emscripten_bind_PointCloudBuilder_PointCloudBuilder_0":Oa,"emscripten_bind_PointCloudBuilder_AddFloatAttribute_5":Qa,"emscripten_bind_PointCloudBuilder_AddInt8Attribute_5":Ta,"emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5":Ua,"emscripten_bind_PointCloudBuilder_AddInt16Attribute_5":Va,"emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5":Wa,"emscripten_bind_PointCloudBuilder_AddInt32Attribute_5":Ra,"emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5":Xa,"emscripten_bind_PointCloudBuilder_AddMetadata_2":Ya,"emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3":Za,"emscripten_bind_PointCloudBuilder___destroy___0":_a,"emscripten_bind_VoidPtr___destroy___0":_a,"emscripten_bind_Metadata_Metadata_0":kb,"emscripten_bind_Metadata___destroy___0":lb,"emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING":ob,"emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING":pb,"emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE":qb,"emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD":ob,"emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH":pb,"emscripten_enum_draco_GeometryAttribute_Type_INVALID":qb,"emscripten_enum_draco_GeometryAttribute_Type_POSITION":ob,"emscripten_enum_draco_GeometryAttribute_Type_NORMAL":pb,"emscripten_enum_draco_GeometryAttribute_Type_COLOR":rb,"emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD":sb,"emscripten_enum_draco_GeometryAttribute_Type_GENERIC":tb,"setThrew":yp,"_ZSt18uncaught_exceptionv":ob,"free":pp,"malloc":op,"stackSave":zp,"stackAlloc":Ap,"stackRestore":Bp,"__growWasmMemory":Cp,"dynCall_ii":Dp,"dynCall_vi":Ep,"dynCall_iii":Fp,"dynCall_vii":Gp,"dynCall_iiii":Hp,"dynCall_v":Ip,"dynCall_viii":Jp,"dynCall_iiiiiii":Kp,"dynCall_viiii":Lp,"dynCall_iidiiii":Mp,"dynCall_jiji":Pp,"dynCall_viiiiii":Np,"dynCall_viiiii":Op}}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,"YAQAAAEAAAACAAAATjVkcmFjbzExRW5jb2RlckJhc2VJTlNfMThFbmNvZGVyT3B0aW9uc0Jhc2VJTlNfMTdHZW9tZXRyeUF0dHJpYnV0ZTRUeXBlRUVFRUUAAAAcRwAAEAQAAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUAc3RvcmVfbnVtYmVyX29mX2VuY29kZWRfcG9pbnRzAHN0b3JlX251bWJlcl9vZl9lbmNvZGVkX2ZhY2Vz");aa(1264,"VAUAAAQAAAAFAAAABgAAAAcAAAAIAAAATjVkcmFjbzI4QXR0cmlidXRlT2N0YWhlZHJvblRyYW5zZm9ybUUATjVkcmFjbzE4QXR0cmlidXRlVHJhbnNmb3JtRQAcRwAALwUAAERHAAAIBQAATAUAAAAAAACoBQAACQAAAAoAAAALAAAADAAAAA0AAABONWRyYWNvMzBBdHRyaWJ1dGVRdWFudGl6YXRpb25UcmFuc2Zvcm1FAAAAAERHAAB8BQAATAUAAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUA/////2FsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQD/////AAAAAOAGAAAOAAAADwAAABAAAAARAAAAEgAAABMAAAAUAAAAFQAAABYAAAAXAAAAGAAAABIAAAAZAAAATjVkcmFjbzE3QXR0cmlidXRlc0VuY29kZXJFABxHAADEBgAAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQAAAAAAxAcAABoAAAAbAAAAEAAAABEAAAAcAAAAEwAAABQAAAAVAAAAFgAAABcAAAAdAAAAHgAAAB8AAABxdWFudGl6YXRpb25fYml0cwBxdWFudGl6YXRpb25fb3JpZ2luAHF1YW50aXphdGlvbl9yYW5nZQBONWRyYWNvMjNLZFRyZWVBdHRyaWJ1dGVzRW5jb2RlckUAAERHAAChBwAA4AYAAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUAZW5jb2Rpbmdfc3BlZWQAZGVjb2Rpbmdfc3BlZWQAAAAAAAAAlAgAACAAAAAhAAAAIgAAACMAAAAkAAAAJQAAACYAAAAnAAAAKAAAACkAAAAqAAAAKwAAAE41ZHJhY28yNlNlcXVlbnRpYWxBdHRyaWJ1dGVFbmNvZGVyRQAAAAAcRwAAbAgAAAAAAAAkCQAALAAAAC0AAAAuAAAALwAAADAAAAAxAAAAMgAAADMAAAA0AAAANQAAADYAAAA3AAAAOAAAADkAAAA6AAAAcXVhbnRpemF0aW9uX2JpdHMATjVkcmFjbzM3U2VxdWVudGlhbEF0dHJpYnV0ZUVuY29kZXJzQ29udHJvbGxlckUAAABERwAA8ggAAOAGAABhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAAAAAAAECgAAOwAAADwAAAA9AAAAIwAAAD4AAAAlAAAAJgAAACcAAAA/AAAAKQAAACoAAABAAAAAQQAAAEIAAAB1c2VfYnVpbHRfaW5fYXR0cmlidXRlX2NvbXByZXNzaW9uAE41ZHJhY28zM1NlcXVlbnRpYWxJbnRlZ2VyQXR0cmlidXRlRW5jb2RlckUAAERHAADXCQAAlAgAAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUA/////wAAAADYDAAAQwAAAEQAAABFAAAARgAAAEcAAABIAAAASQAAAEoAAABLAAAATAAAAE0AAABOAAAATjVkcmFjbzQwTWVzaFByZWRpY3Rpb25TY2hlbWVQYXJhbGxlbG9ncmFtRW5jb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRW5jb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yM1ByZWRpY3Rpb25TY2hlbWVFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRUVFAE41ZHJhY28zN1ByZWRpY3Rpb25TY2hlbWVUeXBlZEVuY29kZXJJbnRlcmZhY2VJaWlFRQBONWRyYWNvMzJQcmVkaWN0aW9uU2NoZW1lRW5jb2RlckludGVyZmFjZUUATjVkcmFjbzI1UHJlZGljdGlvblNjaGVtZUludGVyZmFjZUUAHEcAAHwMAABERwAAUQwAAKAMAABERwAAHQwAAKgMAABERwAAyQsAALQMAABERwAAMwsAAMAMAABERwAAkAoAAMwMAAAAAAAAzAwAAEMAAABPAAAAEgAAAEYAAAASAAAASAAAAEkAAABKAAAASwAAAEwAAABNAAAAEgAAAAAAAADADAAAQwAAAFAAAAASAAAARgAAABIAAABIAAAASQAAAEoAAABLAAAATAAAAE0AAAASAAAAAAAAAEAOAABRAAAAUgAAAFMAAABGAAAAVAAAAEgAAABJAAAASgAAAEsAAABMAAAAVQAAAFYAAABONWRyYWNvNTZNZXNoUHJlZGljdGlvblNjaGVtZUNvbnN0cmFpbmVkTXVsdGlQYXJhbGxlbG9ncmFtRW5jb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAABERwAAjA0AAMwMAAAAAAAALA8AAFcAAABYAAAAWQAAAEYAAABaAAAAWwAAAFwAAABdAAAASwAAAEwAAABeAAAAXwAAAE41ZHJhY280NE1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzUG9ydGFibGVFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAERHAACEDgAAzAwAAAAAAAAYEAAAYAAAAGEAAABiAAAARgAAAGMAAABkAAAAZQAAAGYAAABLAAAATAAAAGcAAABoAAAATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAAAAREcAAHAPAADMDAAAAAAAAKARAABpAAAAagAAAGsAAABsAAAAbQAAAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAAAHEcAAOsQAABERwAAQBAAAJgRAAAAAAAAEBMAAEMAAABuAAAAbwAAAEYAAABwAAAASAAAAEkAAABKAAAASwAAAEwAAABNAAAAcQAAAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbUVuY29kZXJJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRW5jb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAAERHAAB6EgAAwAwAAERHAADkEQAABBMAAAAAAAAEEwAAQwAAAHIAAAASAAAARgAAABIAAABIAAAASQAAAEoAAABLAAAATAAAAE0AAAASAAAAAAAAADQUAABzAAAAdAAAAHUAAABGAAAAdgAAAEgAAABJAAAASgAAAEsAAABMAAAAdwAAAHgAAABONWRyYWNvNTZNZXNoUHJlZGljdGlvblNjaGVtZUNvbnN0cmFpbmVkTXVsdGlQYXJhbGxlbG9ncmFtRW5jb2RlcklpTlNfMzdQcmVkaWN0aW9uU2NoZW1lV3JhcEVuY29kaW5nVHJhbnNmb3JtSWlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAAABERwAAjBMAAAQTAAAAAAAAFBUAAHkAAAB6AAAAewAAAEYAAAB8AAAAfQAAAH4AAAB/AAAASwAAAEwAAACAAAAAgQAAAE41ZHJhY280NE1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzUG9ydGFibGVFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAERHAAB4FAAABBMAAAAAAADwFQAAggAAAIMAAACEAAAARgAAAIUAAACGAAAAhwAAAIgAAABLAAAATAAAAIkAAACKAAAATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBERwAAWBUAAAQTAAAAAAAAXBcAAIsAAACMAAAAjQAAAI4AAACPAAAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzM3UHJlZGljdGlvblNjaGVtZVdyYXBFbmNvZGluZ1RyYW5zZm9ybUlpaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFABxHAAC2FgAAREcAABgWAABUFwAAAAAAAPwXAABDAAAAkAAAAJEAAABGAAAAkgAAAEgAAABJAAAASgAAAEsAAABMAAAATQAAAJMAAABONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFFbmNvZGVySWlOU18zN1ByZWRpY3Rpb25TY2hlbWVXcmFwRW5jb2RpbmdUcmFuc2Zvcm1JaWlFRUVFAAAAAERHAACgFwAAwAwAAHF1YW50aXphdGlvbl9iaXRzAAAAAAAAAIgYAACUAAAAlQAAAJYAAAAjAAAAPgAAACUAAACXAAAAmAAAAJkAAAApAAAAKgAAAEAAAACaAAAAmwAAAE41ZHJhY28zMlNlcXVlbnRpYWxOb3JtYWxBdHRyaWJ1dGVFbmNvZGVyRQAAREcAAFwYAAAECgAAcHJlZGljdGlvbl9zY2hlbWUAAAAAAAAA0BoAAJwAAACdAAAAngAAAJ8AAACgAAAAoQAAAKIAAACjAAAApAAAAKUAAACmAAAApwAAAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbUVuY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjdNZXNoUHJlZGljdGlvblNjaGVtZUVuY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvMjNQcmVkaWN0aW9uU2NoZW1lRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVFRQAAAABERwAASRoAALQMAABERwAAmxkAALgaAABERwAA4BgAAMQaAAAAAAAAxBoAAJwAAACoAAAAEgAAAJ8AAAASAAAAoQAAAKIAAACjAAAApAAAAKUAAACmAAAAEgAAAAAAAAC4GgAAnAAAAKkAAAASAAAAnwAAABIAAAChAAAAogAAAKMAAACkAAAApQAAAKYAAAASAAAAAAAAAFAcAACqAAAAqwAAAKwAAACfAAAArQAAAKEAAACiAAAAowAAAKQAAAClAAAArgAAAK8AAABONWRyYWNvNTZNZXNoUHJlZGljdGlvblNjaGVtZUNvbnN0cmFpbmVkTXVsdGlQYXJhbGxlbG9ncmFtRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAABERwAAhBsAAMQaAAAAAAAAVB0AALAAAACxAAAAsgAAAJ8AAACzAAAAtAAAALUAAAC2AAAApAAAAKUAAAC3AAAAuAAAAE41ZHJhY280NE1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzUG9ydGFibGVFbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAERHAACUHAAAxBoAAAAAAABYHgAAuQAAALoAAAC7AAAAnwAAALwAAAC9AAAAvgAAAL8AAACkAAAApQAAAMAAAADBAAAATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxFbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzI0TWVzaEF0dHJpYnV0ZUNvcm5lclRhYmxlRUVFRUUAAAAAREcAAJgdAADEGgAAAAAAABAgAADCAAAAwwAAAMQAAADFAAAAxgAAAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQXJlYUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY280OE1lc2hQcmVkaWN0aW9uU2NoZW1lR2VvbWV0cmljTm9ybWFsUHJlZGljdG9yQmFzZUlpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVFRUVFAAAAHEcAAEMfAABERwAAgB4AAAggAAAAAAAAsCEAAJwAAADHAAAAyAAAAJ8AAADJAAAAoQAAAKIAAACjAAAApAAAAKUAAACmAAAAygAAAE41ZHJhY280ME1lc2hQcmVkaWN0aW9uU2NoZW1lUGFyYWxsZWxvZ3JhbUVuY29kZXJJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFAE41ZHJhY28yN01lc2hQcmVkaWN0aW9uU2NoZW1lRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAAERHAAACIQAAuBoAAERHAABUIAAApCEAAAAAAACkIQAAnAAAAMsAAAASAAAAnwAAABIAAAChAAAAogAAAKMAAACkAAAApQAAAKYAAAASAAAAAAAAAOwiAADMAAAAzQAAAM4AAACfAAAAzwAAAKEAAACiAAAAowAAAKQAAAClAAAA0AAAANEAAABONWRyYWNvNTZNZXNoUHJlZGljdGlvblNjaGVtZUNvbnN0cmFpbmVkTXVsdGlQYXJhbGxlbG9ncmFtRW5jb2RlcklpTlNfNjJQcmVkaWN0aW9uU2NoZW1lTm9ybWFsT2N0YWhlZHJvbkNhbm9uaWNhbGl6ZWRFbmNvZGluZ1RyYW5zZm9ybUlpRUVOU18yNE1lc2hQcmVkaWN0aW9uU2NoZW1lRGF0YUlOU18xMUNvcm5lclRhYmxlRUVFRUUAAABERwAALCIAAKQhAAAAAAAA5CMAANIAAADTAAAA1AAAAJ8AAADVAAAA1gAAANcAAADYAAAApAAAAKUAAADZAAAA2gAAAE41ZHJhY280NE1lc2hQcmVkaWN0aW9uU2NoZW1lVGV4Q29vcmRzUG9ydGFibGVFbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQAAAERHAAAwIwAApCEAAAAAAADYJAAA2wAAANwAAADdAAAAnwAAAN4AAADfAAAA4AAAAOEAAACkAAAApQAAAOIAAADjAAAATjVkcmFjbzQyTWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxFbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBERwAAKCQAAKQhAAAAAAAAdCYAAOQAAADlAAAA5gAAAOcAAADoAAAATjVkcmFjbzQ4TWVzaFByZWRpY3Rpb25TY2hlbWVHZW9tZXRyaWNOb3JtYWxQcmVkaWN0b3JBcmVhSWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRU5TXzI0TWVzaFByZWRpY3Rpb25TY2hlbWVEYXRhSU5TXzExQ29ybmVyVGFibGVFRUVFRQBONWRyYWNvNDhNZXNoUHJlZGljdGlvblNjaGVtZUdlb21ldHJpY05vcm1hbFByZWRpY3RvckJhc2VJaU5TXzYyUHJlZGljdGlvblNjaGVtZU5vcm1hbE9jdGFoZWRyb25DYW5vbmljYWxpemVkRW5jb2RpbmdUcmFuc2Zvcm1JaUVFTlNfMjRNZXNoUHJlZGljdGlvblNjaGVtZURhdGFJTlNfMTFDb3JuZXJUYWJsZUVFRUVFABxHAAC2JQAAREcAAAAlAABsJgAAAAAAACwnAACcAAAA6QAAAOoAAACfAAAA6wAAAKEAAACiAAAAowAAAKQAAAClAAAApgAAAOwAAABONWRyYWNvMjhQcmVkaWN0aW9uU2NoZW1lRGVsdGFFbmNvZGVySWlOU182MlByZWRpY3Rpb25TY2hlbWVOb3JtYWxPY3RhaGVkcm9uQ2Fub25pY2FsaXplZEVuY29kaW5nVHJhbnNmb3JtSWlFRUVFAAAAAERHAAC4JgAAuBoAAAAAAADkJwAA7QAAAO4AAADvAAAAIwAAAD4AAAAlAAAA8AAAAPEAAADyAAAAKQAAACoAAABAAAAAQQAAAPMAAABxdWFudGl6YXRpb25fYml0cwBxdWFudGl6YXRpb25fb3JpZ2luAHF1YW50aXphdGlvbl9yYW5nZQBONWRyYWNvMzhTZXF1ZW50aWFsUXVhbnRpemF0aW9uQXR0cmlidXRlRW5jb2RlckUAAABERwAAsScAAAQKAABwcmVkaWN0aW9uX3NjaGVtZQAAAAAAAABoKAAAAQAAAPQAAAD1AAAA9gAAAHF1YW50aXphdGlvbl9iaXRzAHF1YW50aXphdGlvbl9vcmlnaW4AcXVhbnRpemF0aW9uX3JhbmdlAE41ZHJhY283RW5jb2RlckUAAABERwAAVSgAAGAEAAAAAAAAuCgAAPcAAAD4AAAATjVkcmFjbzExRW5jb2RlckJhc2VJTlNfMThFbmNvZGVyT3B0aW9uc0Jhc2VJaUVFRUUAABxHAACEKAAAc3RhbmRhcmRfZWRnZWJyZWFrZXIAcHJlZGljdGl2ZV9lZGdlYnJlYWtlcgBlbmNvZGluZ19zcGVlZABkZWNvZGluZ19zcGVlZAAgAABlbmNvZGluZ19tZXRob2Q=");aa(10532,"xCkAAPcAAAD5AAAASW52YWxpZCBpbnB1dCBnZW9tZXRyeS4AZW5jb2RpbmdfbWV0aG9kAHF1YW50aXphdGlvbl9iaXRzAEludmFsaWQgZW5jb2RpbmcgbWV0aG9kLgBxdWFudGl6YXRpb25fb3JpZ2luAHF1YW50aXphdGlvbl9yYW5nZQBONWRyYWNvMTNFeHBlcnRFbmNvZGVyRQAAAERHAACqKQAAuCgAAHN0YW5kYXJkX2VkZ2VicmVha2VyAHByZWRpY3RpdmVfZWRnZWJyZWFrZXIAZW5jb2Rpbmdfc3BlZWQAZGVjb2Rpbmdfc3BlZWQAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQBzeW1ib2xfZW5jb2RpbmdfbWV0aG9kAHN5bWJvbF9lbmNvZGluZ19jb21wcmVzc2lvbl9sZXZlbABhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAAAAAAAAjCsAAPoAAAD7AAAA/AAAAP0AAAD+AAAA/wAAAAABAAABAQAAAgEAAAMBAAAEAQAABQEAAAYBAAAHAQAACAEAAAkBAAAKAQAACwEAAHN0YW5kYXJkX2VkZ2VicmVha2VyAHByZWRpY3RpdmVfZWRnZWJyZWFrZXIAZWRnZWJyZWFrZXJfbWV0aG9kAE41ZHJhY28yMk1lc2hFZGdlYnJlYWtlckVuY29kZXJFAERHAABrKwAAsDMAAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUAAAAAAHwtAAAMAQAADQEAAA4BAAAPAQAAEAEAABEBAAASAQAAEwEAABQBAAAVAQAAFgEAAHNwbGl0X21lc2hfb25fc2VhbXMAQWxsIHRyaWFuZ2xlcyBhcmUgZGVnZW5lcmF0ZS4ARmFpbGVkIHRvIHByb2Nlc3MgbWVzaCBob2xlcy4ARmFpbGVkIHRvIGluaXRpYWxpemUgYXR0cmlidXRlIGRhdGEuAEZhaWxlZCB0byBlbmNvZGUgbWVzaCBjb21wb25lbnQuAEZhaWxlZCB0byBlbmNvZGUgc3BsaXQgZGF0YS4AAAAAAADcLQAAFwEAABgBAAAZAQAAGgEAABsBAAAcAQAAHQEAAB4BAAAfAQAAIAEAACEBAABONWRyYWNvMjZNZXNoRWRnZWJyZWFrZXJFbmNvZGVySW1wbElOU18zMU1lc2hFZGdlYnJlYWtlclRyYXZlcnNhbEVuY29kZXJFRUUATjVkcmFjbzM1TWVzaEVkZ2VicmVha2VyRW5jb2RlckltcGxJbnRlcmZhY2VFAAAAHEcAAEQtAABERwAA+CwAAHQtAABONWRyYWNvMjZNZXNoRWRnZWJyZWFrZXJFbmNvZGVySW1wbElOU18zOE1lc2hFZGdlYnJlYWtlclRyYXZlcnNhbFZhbGVuY2VFbmNvZGVyRUVFAABERwAAiC0AAHQtAABhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAAAAAAAcLwAAIgEAACMBAAAkAQAATjVkcmFjbzE5RGVwdGhGaXJzdFRyYXZlcnNlcklOU18yNE1lc2hBdHRyaWJ1dGVDb3JuZXJUYWJsZUVOU18zNk1lc2hBdHRyaWJ1dGVJbmRpY2VzRW5jb2RpbmdPYnNlcnZlcklTMV9FRUVFAE41ZHJhY28xM1RyYXZlcnNlckJhc2VJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzFfRUVFRQAcRwAArS4AAERHAABALgAAFC8AAAAAAAAULwAAJQEAACYBAAAkAQAAAAAAAAEAAAADAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAEAAAAFAAAAAgAAAAUAAAADAAAABQAAAAQAAAAAAAAARDAAACcBAAAoAQAAKQEAACoBAABONWRyYWNvMjJNZXNoVHJhdmVyc2FsU2VxdWVuY2VySU5TXzI4TWF4UHJlZGljdGlvbkRlZ3JlZVRyYXZlcnNlcklOU18xMUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMyX0VFRUVFRQBONWRyYWNvMTVQb2ludHNTZXF1ZW5jZXJFAAAAABxHAAAfMAAAREcAAJgvAAA8MAAA/////wAAAAA0MQAAKwEAACwBAAAtAQAATjVkcmFjbzI4TWF4UHJlZGljdGlvbkRlZ3JlZVRyYXZlcnNlcklOU18xMUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMxX0VFRUUATjVkcmFjbzEzVHJhdmVyc2VyQmFzZUlOU18xMUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMxX0VFRUUAABxHAADRMAAAREcAAGgwAAAsMQAAAAAAACwxAAAuAQAALwEAAC0BAAAAAAAA7DEAADABAAAxAQAAMgEAADMBAABONWRyYWNvMjJNZXNoVHJhdmVyc2FsU2VxdWVuY2VySU5TXzE5RGVwdGhGaXJzdFRyYXZlcnNlcklOU18xMUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMyX0VFRUVFRQAAAERHAABsMQAAPDAAAAAAAABsMgAANAEAADUBAAAtAQAATjVkcmFjbzE5RGVwdGhGaXJzdFRyYXZlcnNlcklOU18xMUNvcm5lclRhYmxlRU5TXzM2TWVzaEF0dHJpYnV0ZUluZGljZXNFbmNvZGluZ09ic2VydmVySVMxX0VFRUUAREcAAAwyAAAsMQAAAAAAABwzAAA2AQAANwEAADgBAAA5AQAATjVkcmFjbzIyTWVzaFRyYXZlcnNhbFNlcXVlbmNlcklOU18xOURlcHRoRmlyc3RUcmF2ZXJzZXJJTlNfMjRNZXNoQXR0cmlidXRlQ29ybmVyVGFibGVFTlNfMzZNZXNoQXR0cmlidXRlSW5kaWNlc0VuY29kaW5nT2JzZXJ2ZXJJUzJfRUVFRUVFAABERwAAkDIAADww");aa(13104,"sDMAADoBAAA7AQAA/AAAABIAAAA8AQAA/wAAAAABAAABAQAAAgEAABIAAAA9AQAABQEAABIAAAA+AQAAPwEAAEABAAASAAAAEgAAAHN0b3JlX251bWJlcl9vZl9lbmNvZGVkX2ZhY2VzAE41ZHJhY28xMU1lc2hFbmNvZGVyRQBERwAAmjMAAOg1AAAAAAAARDQAADoBAABBAQAA/AAAAEIBAAA8AQAA/wAAAAABAAABAQAAAgEAAEMBAAA9AQAABQEAAEQBAAA+AQAAPwEAAEABAABFAQAARgEAAGNvbXByZXNzX2Nvbm5lY3Rpdml0eQBONWRyYWNvMjFNZXNoU2VxdWVudGlhbEVuY29kZXJFAAAAREcAACI0AACwMwAAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQAAAAAAyDQAAEcBAABIAQAASQEAAEoBAABONWRyYWNvMTVMaW5lYXJTZXF1ZW5jZXJFAAAAREcAAKw0AAA8MAAAAAAAAOg1AAA6AQAASwEAAEwBAAASAAAAPAEAAP8AAABNAQAAAQEAAAIBAAASAAAAPQEAAAUBAAASAAAASW52YWxpZCBpbnB1dCBnZW9tZXRyeS4ARmFpbGVkIHRvIGluaXRpYWxpemUgZW5jb2Rlci4ARmFpbGVkIHRvIGVuY29kZSBpbnRlcm5hbCBkYXRhLgBGYWlsZWQgdG8gZW5jb2RlIHBvaW50IGF0dHJpYnV0ZXMuAHN0b3JlX251bWJlcl9vZl9lbmNvZGVkX3BvaW50cwBEUkFDTwBGYWlsZWQgdG8gZW5jb2RlIG1ldGFkYXRhLgBONWRyYWNvMTdQb2ludENsb3VkRW5jb2RlckUAAAAAHEcAAMk1AAAAAAAAUDYAADoBAABOAQAATAEAAE8BAAA8AQAA/wAAAFABAAABAQAAAgEAAFEBAAA9AQAABQEAAFIBAABONWRyYWNvMjNQb2ludENsb3VkS2RUcmVlRW5jb2RlckUAAABERwAALDYAAOg1AAAAAAAAwDYAADoBAABTAQAATAEAAFQBAAA8AQAA/wAAAFUBAAABAQAAAgEAAFYBAAA9AQAABQEAAFcBAABONWRyYWNvMjdQb2ludENsb3VkU2VxdWVudGlhbEVuY29kZXJFAAAAREcAAJg2AADoNQ==");aa(14052,"AQAAAFZVVVUCAAAAAAAAAAIAAACamZmZAwAAAFZVVVUDAAAAJUmSJAMAAAAAAAAAAwAAAMhxHMcEAAAAmpmZmQQAAABGF110BAAAAFZVVVUEAAAAPLETOwQAAAAlSZIkBAAAABIREREEAAAAAAAAAAQAAADi4eHhBQAAAMhxHMcFAAAAy2sorwUAAACamZmZBQAAAIdhGIYFAAAARhdddAUAAACRhSxkBQAAAFZVVVUFAAAAexSuRwUAAAA8sRM7BQAAANtLaC8FAAAAJUmSJAUAAAASlnsaBQAAABIREREFAAAAhRBCCAUAAAAAAAAABQAAAAgffPAGAAAA4uHh4QYAAADVQR3UBgAAAMhxHMcGAAAATZHPugYAAADLayivBgAAAKVBGqQGAAAAmpmZmQYAAAD6GJyPBgAAAIdhGIYGAAAAGPQFfQYAAABGF110BgAAAG3BFmwGAAAAkYUsZAYAAAC6gphcBgAAAFZVVVUGAAAAcwpeTgYAAAB7FK5HBgAAAEJBQUEGAAAAPLETOwYAAACzzyE1BgAAANtLaC8GAAAAnxLkKQYAAAAlSZIkBgAAAN1HcB8GAAAAEpZ7GgYAAAD45bEVBgAAABIREREGAAAA/BSXDAYAAACFEEIIBgAAAAVBEAQGAAAAAAAAAAYAAAD5gR/4BwAAAAgffPAHAAAAwBoT6QcAAADi4eHhBwAAAGwH5toHAAAA1UEd1AcAAACRaIXNBwAAAMhxHMcHAAAAOXDgwAcAAABNkc+6BwAAAE8b6LQHAAAAy2sorwcAAAAH9o6pBwAAAKVBGqQHAAAAUunIngcAAACamZmZBwAAAM4Pi5QHAAAA+hicjwcAAAD3kMuKBwAAAIdhGIYHAAAAgoGBgQcAAAAY9AV9BwAAABjIpHgHAAAARhdddAcAAADBBS5wBwAAAG3BFmwHAAAAaYEWaAcAAACRhSxkBwAAAAYWWGAHAAAAuoKYXAcAAAAJI+1YBwAAAFZVVVUHAAAAr37QUQcAAABzCl5OBwAAAAZq/UoHAAAAexSuRwcAAABXhm9EBwAAAEJBQUEHAAAAz8siPgcAAAA8sRM7BwAAADmBEzgHAAAAs88hNQcAAACjND4yBwAAANtLaC8HAAAA2bSfLAcAAACfEuQpBwAAAIkLNScHAAAAJUmSJAcAAAATePshBwAAAN1HcB8HAAAA22rwHAcAAAASlnsaBwAAABmBERgHAAAA+OWxFQcAAAAUgVwTBwAAABIREREHAAAAv1bPDgcAAAD8FJcMBwAAAKcQaAoHAAAAhRBCCAcAAAAw3SQGBwAAAAVBEAQHAAAAEQgEAgcAAAAAAAAABwAAACDwB/wIAAAA+YEf+AgAAADlWUb0CAAAAAgffPAIAAAAMXvA7AgAAADAGhPpCAAAAJGsc+UIAAAA4uHh4QgAAABAbl3eCAAAAGwH5toIAAAATGV71wgAAADVQR3UCAAAAPdYy9AIAAAAkWiFzQgAAABWMEvKCAAAAMhxHMcIAAAAHfD4wwgAAAA5cODACAAAAJq40r0IAAAATZHPuggAAADew9a3CAAAAE8b6LQIAAAAB2QDsggAAADLayivCAAAAK0BV6wIAAAAB/aOqQgAAABuGtCmCAAAAKVBGqQIAAAAmD9toQgAAABS6cieCAAAAO8ULZwIAAAAmpmZmQgAAACBTw6XCAAAAM4Pi5QIAAAAnrQPkggAAAD6GJyPCAAAANQYMI0IAAAA95DLiggAAAALX26ICAAAAIdhGIYIAAAArHfJgwgAAACCgYGBCAAAANFfQH8IAAAAGPQFfQgAAACPINJ6CAAAABjIpHgIAAAARM59dggAAABGF110CAAAAPWHQnIIAAAAwQUucAgAAAC1dh9uCAAAAG3BFmwIAAAAFs0TaggAAABpgRZoCAAAAKbGHmYIAAAAkYUsZAgAAABxpz9iCAAAAAYWWGAIAAAAjrt1XggAAAC6gphcCAAAALFWwFoIAAAACSPtWAgAAADG0x5XCAAAAFZVVVUIAAAAkJSQUwgAAACvftBRCAAAAFEBFVAIAAAAcwpeTggAAABziKtMCAAAAAZq/UoIAAAAPJ5TSQgAAAB7FK5HCAAAAIC8DEYIAAAAV4ZvRAgAAABeYtZCCAAAAEJBQUEIAAAA/BOwPwgAAADPyyI+CAAAAEhamTwIAAAAPLETOwgAAADCwpE5CAAAADmBEzgIAAAAPt+YNggAAACzzyE1CAAAALZFrjMIAAAAozQ+MggAAAAUkNEwCAAAANtLaC8IAAAABVwCLggAAADZtJ8sCAAAANFKQCsIAAAAnxLkKQgAAAApAYsoCAAAAIkLNScIAAAACSfiJQgAAAAlSZIkCAAAAIpnRSMIAAAAE3j7IQgAAADHcLQgCAAAAN1HcB8IAAAAtPMuHggAAADbavAcCAAAAAWktBsIAAAAEpZ7GggAAAAJOEUZCAAAABmBERgIAAAAlWjgFggAAAD45bEVCAAAAOHwhRQIAAAAFIFcEwgAAAB2jjUSCAAAABIREREIAAAAEAHvDwgAAAC/Vs8OCAAAAIkKsg0IAAAA/BSXDAgAAADDbn4LCAAAAKcQaAoIAAAAkfNTCQgAAACFEEIICAAAAKVgMgcIAAAAMN0kBggAAAB+fxkFCAAAAAVBEAQIAAAAUhsJAwgAAAARCAQCCAAAAAIBAQEIAAAAAQAAAAEAAAACAAAAAgAAAAQAAAAEAAAACAAAAAgAAAAEAAAACAAAAAEAAAAAAAAA/////2FsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUAAAAAAHw/AABYAQAAWQEAAFoBAABbAQAAXAEAAF0BAABeAQAATjVkcmFjbzRNZXNoRQAAAERHAABsPwAAmEAAAGFsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUA/////2FsbG9jYXRvcjxUPjo6YWxsb2NhdGUoc2l6ZV90IG4pICduJyBleGNlZWRzIG1heGltdW0gc3VwcG9ydGVkIHNpemUAYWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQ==");aa(16480,"mEAAAF8BAABgAQAAYQEAAGIBAABcAQAAXQEAAGMBAABONWRyYWNvMTBQb2ludENsb3VkRQAAAAAcRwAAgEAAAP////9hbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAC0rICAgMFgweAAobnVsbCk=");aa(16640,"EQAKABEREQAAAAAFAAAAAAAACQAAAAAL");aa(16672,"EQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERER");aa(16721,"Cw==");aa(16730,"EQAKChEREQAKAAACAAkLAAAACQALAAAL");aa(16779,"DA==");aa(16791,"DAAAAAAMAAAAAAkMAAAAAAAMAAAM");aa(16837,"Dg==");aa(16849,"DQAAAAQNAAAAAAkOAAAAAAAOAAAO");aa(16895,"EA==");aa(16907,"DwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhIS");aa(16962,"EgAAABISEgAAAAAAAAk=");aa(17011,"Cw==");aa(17023,"CgAAAAAKAAAAAAkLAAAAAAALAAAL");aa(17069,"DA==");aa(17081,"DAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVGLTBYKzBYIDBYLTB4KzB4IDB4AGluZgBJTkYAbmFuAE5BTgAuAAAAAJhHAABpbmZpbml0eQBuYW4=");aa(17184,"0XSeAFedvSqAcFIP//8+JwoAAABkAAAA6AMAABAnAACghgEAQEIPAICWmAAA4fUFGAAAADUAAABxAAAAa////877//+Sv///");aa(17268,"AgAAAAMAAAAFAAAABwAAAAsAAAANAAAAEQAAABMAAAAXAAAAHQAAAB8AAAAlAAAAKQAAACsAAAAvAAAANQAAADsAAAA9AAAAQwAAAEcAAABJAAAATwAAAFMAAABZAAAAYQAAAGUAAABnAAAAawAAAG0AAABxAAAAfwAAAIMAAACJAAAAiwAAAJUAAACXAAAAnQAAAKMAAACnAAAArQAAALMAAAC1AAAAvwAAAMEAAADFAAAAxwAAANMAAAABAAAACwAAAA0AAAARAAAAEwAAABcAAAAdAAAAHwAAACUAAAApAAAAKwAAAC8AAAA1AAAAOwAAAD0AAABDAAAARwAAAEkAAABPAAAAUwAAAFkAAABhAAAAZQAAAGcAAABrAAAAbQAAAHEAAAB5AAAAfwAAAIMAAACJAAAAiwAAAI8AAACVAAAAlwAAAJ0AAACjAAAApwAAAKkAAACtAAAAswAAALUAAAC7AAAAvwAAAMEAAADFAAAAxwAAANE=");aa(17684,"aQE=");aa(17723,"//////8=");aa(17792,"YWxsb2NhdG9yPFQ+OjphbGxvY2F0ZShzaXplX3QgbikgJ24nIGV4Y2VlZHMgbWF4aW11bSBzdXBwb3J0ZWQgc2l6ZQBiYXNpY19zdHJpbmcAJWQAJWYAdmVjdG9yAFB1cmUgdmlydHVhbCBmdW5jdGlvbiBjYWxsZWQhAHN0ZDo6ZXhjZXB0aW9uAAAAAAAAMEYAAGoBAABrAQAAbAEAAFN0OWV4Y2VwdGlvbgAAAAAcRwAAIEYAAAAAAABcRgAAAwAAAG0BAABuAQAAU3QxMWxvZ2ljX2Vycm9yAERHAABMRgAAMEYAAAAAAACQRgAAAwAAAG8BAABuAQAAU3QxMmxlbmd0aF9lcnJvcgAAAABERwAAfEYAAFxGAABTdDl0eXBlX2luZm8AAAAAHEcAAJxGAABOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQAAAABERwAAtEYAAKxGAABOMTBfX2N4eGFiaXYxMTdfX2NsYXNzX3R5cGVfaW5mb0UAAABERwAA5EYAANhGAAAAAAAACEcAAHABAABxAQAAcgEAAHMBAAB0AQAAdQEAAHYBAAB3AQAAAAAAAIxHAABwAQAAeAEAAHIBAABzAQAAdAEAAHkBAAB6AQAAewEAAE4xMF9fY3h4YWJpdjEyMF9fc2lfY2xhc3NfdHlwZV9pbmZvRQAAAABERwAAZEcAAAhH");aa(18328,"BQ==");aa(18340,"ZgE=");aa(18364,"ZwEAAGgBAAAkSQ==");aa(18388,"Ag==");aa(18403,"//////8=");aa(18660,"UEk=");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":380,"maximum":380+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=5262352,DYNAMIC_BASE=5262352,DYNAMICTOP_PTR=19312;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_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 19312}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_PointCloud_PointCloud_0=Module["_emscripten_bind_PointCloud_PointCloud_0"]=function(){return Module["asm"]["emscripten_bind_PointCloud_PointCloud_0"].apply(null,arguments)};var _emscripten_bind_PointCloud_num_attributes_0=Module["_emscripten_bind_PointCloud_num_attributes_0"]=function(){return Module["asm"]["emscripten_bind_PointCloud_num_attributes_0"].apply(null,arguments)};var _emscripten_bind_PointCloud_num_points_0=Module["_emscripten_bind_PointCloud_num_points_0"]=function(){return Module["asm"]["emscripten_bind_PointCloud_num_points_0"].apply(null,arguments)};var _emscripten_bind_PointCloud___destroy___0=Module["_emscripten_bind_PointCloud___destroy___0"]=function(){return Module["asm"]["emscripten_bind_PointCloud___destroy___0"].apply(null,arguments)};var _emscripten_bind_ExpertEncoder_ExpertEncoder_1=Module["_emscripten_bind_ExpertEncoder_ExpertEncoder_1"]=function(){return Module["asm"]["emscripten_bind_ExpertEncoder_ExpertEncoder_1"].apply(null,arguments)};var _emscripten_bind_ExpertEncoder_SetEncodingMethod_1=Module["_emscripten_bind_ExpertEncoder_SetEncodingMethod_1"]=function(){return Module["asm"]["emscripten_bind_ExpertEncoder_SetEncodingMethod_1"].apply(null,arguments)};var _emscripten_bind_ExpertEncoder_SetAttributeQuantization_2=Module["_emscripten_bind_ExpertEncoder_SetAttributeQuantization_2"]=function(){return Module["asm"]["emscripten_bind_ExpertEncoder_SetAttributeQuantization_2"].apply(null,arguments)};var _emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5=Module["_emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5"]=function(){return Module["asm"]["emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5"].apply(null,arguments)};var _emscripten_bind_ExpertEncoder_SetSpeedOptions_2=Module["_emscripten_bind_ExpertEncoder_SetSpeedOptions_2"]=function(){return Module["asm"]["emscripten_bind_ExpertEncoder_SetSpeedOptions_2"].apply(null,arguments)};var _emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1=Module["_emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1"]=function(){return Module["asm"]["emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1"].apply(null,arguments)};var _emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2=Module["_emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2"]=function(){return Module["asm"]["emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2"].apply(null,arguments)};var _emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0=Module["_emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0"]=function(){return Module["asm"]["emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0"].apply(null,arguments)};var _emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0=Module["_emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0"]=function(){return Module["asm"]["emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0"].apply(null,arguments)};var _emscripten_bind_ExpertEncoder___destroy___0=Module["_emscripten_bind_ExpertEncoder___destroy___0"]=function(){return Module["asm"]["emscripten_bind_ExpertEncoder___destroy___0"].apply(null,arguments)};var _emscripten_bind_PointAttribute_PointAttribute_0=Module["_emscripten_bind_PointAttribute_PointAttribute_0"]=function(){return Module["asm"]["emscripten_bind_PointAttribute_PointAttribute_0"].apply(null,arguments)};var _emscripten_bind_PointAttribute_size_0=Module["_emscripten_bind_PointAttribute_size_0"]=function(){return Module["asm"]["emscripten_bind_PointAttribute_size_0"].apply(null,arguments)};var _emscripten_bind_PointAttribute_attribute_type_0=Module["_emscripten_bind_PointAttribute_attribute_type_0"]=function(){return Module["asm"]["emscripten_bind_PointAttribute_attribute_type_0"].apply(null,arguments)};var _emscripten_bind_PointAttribute_data_type_0=Module["_emscripten_bind_PointAttribute_data_type_0"]=function(){return Module["asm"]["emscripten_bind_PointAttribute_data_type_0"].apply(null,arguments)};var _emscripten_bind_PointAttribute_num_components_0=Module["_emscripten_bind_PointAttribute_num_components_0"]=function(){return Module["asm"]["emscripten_bind_PointAttribute_num_components_0"].apply(null,arguments)};var _emscripten_bind_PointAttribute_normalized_0=Module["_emscripten_bind_PointAttribute_normalized_0"]=function(){return Module["asm"]["emscripten_bind_PointAttribute_normalized_0"].apply(null,arguments)};var _emscripten_bind_PointAttribute_byte_stride_0=Module["_emscripten_bind_PointAttribute_byte_stride_0"]=function(){return Module["asm"]["emscripten_bind_PointAttribute_byte_stride_0"].apply(null,arguments)};var _emscripten_bind_PointAttribute_byte_offset_0=Module["_emscripten_bind_PointAttribute_byte_offset_0"]=function(){return Module["asm"]["emscripten_bind_PointAttribute_byte_offset_0"].apply(null,arguments)};var _emscripten_bind_PointAttribute_unique_id_0=Module["_emscripten_bind_PointAttribute_unique_id_0"]=function(){return Module["asm"]["emscripten_bind_PointAttribute_unique_id_0"].apply(null,arguments)};var _emscripten_bind_PointAttribute___destroy___0=Module["_emscripten_bind_PointAttribute___destroy___0"]=function(){return Module["asm"]["emscripten_bind_PointAttribute___destroy___0"].apply(null,arguments)};var _emscripten_bind_Encoder_Encoder_0=Module["_emscripten_bind_Encoder_Encoder_0"]=function(){return Module["asm"]["emscripten_bind_Encoder_Encoder_0"].apply(null,arguments)};var _emscripten_bind_Encoder_SetEncodingMethod_1=Module["_emscripten_bind_Encoder_SetEncodingMethod_1"]=function(){return Module["asm"]["emscripten_bind_Encoder_SetEncodingMethod_1"].apply(null,arguments)};var _emscripten_bind_Encoder_SetAttributeQuantization_2=Module["_emscripten_bind_Encoder_SetAttributeQuantization_2"]=function(){return Module["asm"]["emscripten_bind_Encoder_SetAttributeQuantization_2"].apply(null,arguments)};var _emscripten_bind_Encoder_SetAttributeExplicitQuantization_5=Module["_emscripten_bind_Encoder_SetAttributeExplicitQuantization_5"]=function(){return Module["asm"]["emscripten_bind_Encoder_SetAttributeExplicitQuantization_5"].apply(null,arguments)};var _emscripten_bind_Encoder_SetSpeedOptions_2=Module["_emscripten_bind_Encoder_SetSpeedOptions_2"]=function(){return Module["asm"]["emscripten_bind_Encoder_SetSpeedOptions_2"].apply(null,arguments)};var _emscripten_bind_Encoder_SetTrackEncodedProperties_1=Module["_emscripten_bind_Encoder_SetTrackEncodedProperties_1"]=function(){return Module["asm"]["emscripten_bind_Encoder_SetTrackEncodedProperties_1"].apply(null,arguments)};var _emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2=Module["_emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2"]=function(){return Module["asm"]["emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2"].apply(null,arguments)};var _emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3=Module["_emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3"]=function(){return Module["asm"]["emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3"].apply(null,arguments)};var _emscripten_bind_Encoder_GetNumberOfEncodedPoints_0=Module["_emscripten_bind_Encoder_GetNumberOfEncodedPoints_0"]=function(){return Module["asm"]["emscripten_bind_Encoder_GetNumberOfEncodedPoints_0"].apply(null,arguments)};var _emscripten_bind_Encoder_GetNumberOfEncodedFaces_0=Module["_emscripten_bind_Encoder_GetNumberOfEncodedFaces_0"]=function(){return Module["asm"]["emscripten_bind_Encoder_GetNumberOfEncodedFaces_0"].apply(null,arguments)};var _emscripten_bind_Encoder___destroy___0=Module["_emscripten_bind_Encoder___destroy___0"]=function(){return Module["asm"]["emscripten_bind_Encoder___destroy___0"].apply(null,arguments)};var _emscripten_bind_MeshBuilder_MeshBuilder_0=Module["_emscripten_bind_MeshBuilder_MeshBuilder_0"]=function(){return Module["asm"]["emscripten_bind_MeshBuilder_MeshBuilder_0"].apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddFacesToMesh_3=Module["_emscripten_bind_MeshBuilder_AddFacesToMesh_3"]=function(){return Module["asm"]["emscripten_bind_MeshBuilder_AddFacesToMesh_3"].apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5=Module["_emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5"]=function(){return Module["asm"]["emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5"].apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5=Module["_emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5"]=function(){return Module["asm"]["emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5"].apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddMetadataToMesh_2=Module["_emscripten_bind_MeshBuilder_AddMetadataToMesh_2"]=function(){return Module["asm"]["emscripten_bind_MeshBuilder_AddMetadataToMesh_2"].apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddFloatAttribute_5=Module["_emscripten_bind_MeshBuilder_AddFloatAttribute_5"]=function(){return Module["asm"]["emscripten_bind_MeshBuilder_AddFloatAttribute_5"].apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddInt8Attribute_5=Module["_emscripten_bind_MeshBuilder_AddInt8Attribute_5"]=function(){return Module["asm"]["emscripten_bind_MeshBuilder_AddInt8Attribute_5"].apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddUInt8Attribute_5=Module["_emscripten_bind_MeshBuilder_AddUInt8Attribute_5"]=function(){return Module["asm"]["emscripten_bind_MeshBuilder_AddUInt8Attribute_5"].apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddInt16Attribute_5=Module["_emscripten_bind_MeshBuilder_AddInt16Attribute_5"]=function(){return Module["asm"]["emscripten_bind_MeshBuilder_AddInt16Attribute_5"].apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddUInt16Attribute_5=Module["_emscripten_bind_MeshBuilder_AddUInt16Attribute_5"]=function(){return Module["asm"]["emscripten_bind_MeshBuilder_AddUInt16Attribute_5"].apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddInt32Attribute_5=Module["_emscripten_bind_MeshBuilder_AddInt32Attribute_5"]=function(){return Module["asm"]["emscripten_bind_MeshBuilder_AddInt32Attribute_5"].apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddUInt32Attribute_5=Module["_emscripten_bind_MeshBuilder_AddUInt32Attribute_5"]=function(){return Module["asm"]["emscripten_bind_MeshBuilder_AddUInt32Attribute_5"].apply(null,arguments)};var _emscripten_bind_MeshBuilder_AddMetadata_2=Module["_emscripten_bind_MeshBuilder_AddMetadata_2"]=function(){return Module["asm"]["emscripten_bind_MeshBuilder_AddMetadata_2"].apply(null,arguments)};var _emscripten_bind_MeshBuilder_SetMetadataForAttribute_3=Module["_emscripten_bind_MeshBuilder_SetMetadataForAttribute_3"]=function(){return Module["asm"]["emscripten_bind_MeshBuilder_SetMetadataForAttribute_3"].apply(null,arguments)};var _emscripten_bind_MeshBuilder___destroy___0=Module["_emscripten_bind_MeshBuilder___destroy___0"]=function(){return Module["asm"]["emscripten_bind_MeshBuilder___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_MetadataBuilder_MetadataBuilder_0=Module["_emscripten_bind_MetadataBuilder_MetadataBuilder_0"]=function(){return Module["asm"]["emscripten_bind_MetadataBuilder_MetadataBuilder_0"].apply(null,arguments)};var _emscripten_bind_MetadataBuilder_AddStringEntry_3=Module["_emscripten_bind_MetadataBuilder_AddStringEntry_3"]=function(){return Module["asm"]["emscripten_bind_MetadataBuilder_AddStringEntry_3"].apply(null,arguments)};var _emscripten_bind_MetadataBuilder_AddIntEntry_3=Module["_emscripten_bind_MetadataBuilder_AddIntEntry_3"]=function(){return Module["asm"]["emscripten_bind_MetadataBuilder_AddIntEntry_3"].apply(null,arguments)};var _emscripten_bind_MetadataBuilder_AddDoubleEntry_3=Module["_emscripten_bind_MetadataBuilder_AddDoubleEntry_3"]=function(){return Module["asm"]["emscripten_bind_MetadataBuilder_AddDoubleEntry_3"].apply(null,arguments)};var _emscripten_bind_MetadataBuilder___destroy___0=Module["_emscripten_bind_MetadataBuilder___destroy___0"]=function(){return Module["asm"]["emscripten_bind_MetadataBuilder___destroy___0"].apply(null,arguments)};var _emscripten_bind_GeometryAttribute_GeometryAttribute_0=Module["_emscripten_bind_GeometryAttribute_GeometryAttribute_0"]=function(){return Module["asm"]["emscripten_bind_GeometryAttribute_GeometryAttribute_0"].apply(null,arguments)};var _emscripten_bind_GeometryAttribute___destroy___0=Module["_emscripten_bind_GeometryAttribute___destroy___0"]=function(){return Module["asm"]["emscripten_bind_GeometryAttribute___destroy___0"].apply(null,arguments)};var _emscripten_bind_Mesh_Mesh_0=Module["_emscripten_bind_Mesh_Mesh_0"]=function(){return Module["asm"]["emscripten_bind_Mesh_Mesh_0"].apply(null,arguments)};var _emscripten_bind_Mesh_num_faces_0=Module["_emscripten_bind_Mesh_num_faces_0"]=function(){return Module["asm"]["emscripten_bind_Mesh_num_faces_0"].apply(null,arguments)};var _emscripten_bind_Mesh_num_attributes_0=Module["_emscripten_bind_Mesh_num_attributes_0"]=function(){return Module["asm"]["emscripten_bind_Mesh_num_attributes_0"].apply(null,arguments)};var _emscripten_bind_Mesh_num_points_0=Module["_emscripten_bind_Mesh_num_points_0"]=function(){return Module["asm"]["emscripten_bind_Mesh_num_points_0"].apply(null,arguments)};var _emscripten_bind_Mesh_set_num_points_1=Module["_emscripten_bind_Mesh_set_num_points_1"]=function(){return Module["asm"]["emscripten_bind_Mesh_set_num_points_1"].apply(null,arguments)};var _emscripten_bind_Mesh___destroy___0=Module["_emscripten_bind_Mesh___destroy___0"]=function(){return Module["asm"]["emscripten_bind_Mesh___destroy___0"].apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_PointCloudBuilder_0=Module["_emscripten_bind_PointCloudBuilder_PointCloudBuilder_0"]=function(){return Module["asm"]["emscripten_bind_PointCloudBuilder_PointCloudBuilder_0"].apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_AddFloatAttribute_5=Module["_emscripten_bind_PointCloudBuilder_AddFloatAttribute_5"]=function(){return Module["asm"]["emscripten_bind_PointCloudBuilder_AddFloatAttribute_5"].apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_AddInt8Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddInt8Attribute_5"]=function(){return Module["asm"]["emscripten_bind_PointCloudBuilder_AddInt8Attribute_5"].apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5"]=function(){return Module["asm"]["emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5"].apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_AddInt16Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddInt16Attribute_5"]=function(){return Module["asm"]["emscripten_bind_PointCloudBuilder_AddInt16Attribute_5"].apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5"]=function(){return Module["asm"]["emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5"].apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_AddInt32Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddInt32Attribute_5"]=function(){return Module["asm"]["emscripten_bind_PointCloudBuilder_AddInt32Attribute_5"].apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5=Module["_emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5"]=function(){return Module["asm"]["emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5"].apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_AddMetadata_2=Module["_emscripten_bind_PointCloudBuilder_AddMetadata_2"]=function(){return Module["asm"]["emscripten_bind_PointCloudBuilder_AddMetadata_2"].apply(null,arguments)};var _emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3=Module["_emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3"]=function(){return Module["asm"]["emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3"].apply(null,arguments)};var _emscripten_bind_PointCloudBuilder___destroy___0=Module["_emscripten_bind_PointCloudBuilder___destroy___0"]=function(){return Module["asm"]["emscripten_bind_PointCloudBuilder___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_Metadata_Metadata_0=Module["_emscripten_bind_Metadata_Metadata_0"]=function(){return Module["asm"]["emscripten_bind_Metadata_Metadata_0"].apply(null,arguments)};var _emscripten_bind_Metadata___destroy___0=Module["_emscripten_bind_Metadata___destroy___0"]=function(){return Module["asm"]["emscripten_bind_Metadata___destroy___0"].apply(null,arguments)};var _emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING=Module["_emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING"]=function(){return Module["asm"]["emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING"].apply(null,arguments)};var _emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING=Module["_emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING"]=function(){return Module["asm"]["emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING"].apply(null,arguments)};var _emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE=Module["_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE"]=function(){return Module["asm"]["emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE"].apply(null,arguments)};var _emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD=Module["_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD"]=function(){return Module["asm"]["emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD"].apply(null,arguments)};var _emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH=Module["_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH"]=function(){return Module["asm"]["emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH"].apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_INVALID=Module["_emscripten_enum_draco_GeometryAttribute_Type_INVALID"]=function(){return Module["asm"]["emscripten_enum_draco_GeometryAttribute_Type_INVALID"].apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_POSITION=Module["_emscripten_enum_draco_GeometryAttribute_Type_POSITION"]=function(){return Module["asm"]["emscripten_enum_draco_GeometryAttribute_Type_POSITION"].apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_NORMAL=Module["_emscripten_enum_draco_GeometryAttribute_Type_NORMAL"]=function(){return Module["asm"]["emscripten_enum_draco_GeometryAttribute_Type_NORMAL"].apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_COLOR=Module["_emscripten_enum_draco_GeometryAttribute_Type_COLOR"]=function(){return Module["asm"]["emscripten_enum_draco_GeometryAttribute_Type_COLOR"].apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD=Module["_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD"]=function(){return Module["asm"]["emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD"].apply(null,arguments)};var _emscripten_enum_draco_GeometryAttribute_Type_GENERIC=Module["_emscripten_enum_draco_GeometryAttribute_Type_GENERIC"]=function(){return Module["asm"]["emscripten_enum_draco_GeometryAttribute_Type_GENERIC"].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_iii=Module["dynCall_iii"]=function(){return Module["asm"]["dynCall_iii"].apply(null,arguments)};var dynCall_vii=Module["dynCall_vii"]=function(){return Module["asm"]["dynCall_vii"].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_viii=Module["dynCall_viii"]=function(){return Module["asm"]["dynCall_viii"].apply(null,arguments)};var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=function(){return Module["asm"]["dynCall_iiiiiii"].apply(null,arguments)};var dynCall_viiii=Module["dynCall_viiii"]=function(){return Module["asm"]["dynCall_viiii"].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)};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 ensureString(value){if(typeof value==="string"){var intArray=intArrayFromString(value);var offset=ensureCache.alloc(intArray,HEAP8);ensureCache.copy(intArray,HEAP8,offset);return offset}return value}function ensureInt8(value){if(typeof value==="object"){var offset=ensureCache.alloc(value,HEAP8);ensureCache.copy(value,HEAP8,offset);return offset}return value}function ensureInt16(value){if(typeof value==="object"){var offset=ensureCache.alloc(value,HEAP16);ensureCache.copy(value,HEAP16,offset);return offset}return value}function ensureInt32(value){if(typeof value==="object"){var offset=ensureCache.alloc(value,HEAP32);ensureCache.copy(value,HEAP32,offset);return offset}return value}function ensureFloat32(value){if(typeof value==="object"){var offset=ensureCache.alloc(value,HEAPF32);ensureCache.copy(value,HEAPF32,offset);return offset}return value}function PointCloud(){this.ptr=_emscripten_bind_PointCloud_PointCloud_0();getCache(PointCloud)[this.ptr]=this}PointCloud.prototype=Object.create(WrapperObject.prototype);PointCloud.prototype.constructor=PointCloud;PointCloud.prototype.__class__=PointCloud;PointCloud.__cache__={};Module["PointCloud"]=PointCloud;PointCloud.prototype["num_attributes"]=PointCloud.prototype.num_attributes=function(){var self=this.ptr;return _emscripten_bind_PointCloud_num_attributes_0(self)};PointCloud.prototype["num_points"]=PointCloud.prototype.num_points=function(){var self=this.ptr;return _emscripten_bind_PointCloud_num_points_0(self)};PointCloud.prototype["__destroy__"]=PointCloud.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_PointCloud___destroy___0(self)};function ExpertEncoder(pc){if(pc&&typeof pc==="object")pc=pc.ptr;this.ptr=_emscripten_bind_ExpertEncoder_ExpertEncoder_1(pc);getCache(ExpertEncoder)[this.ptr]=this}ExpertEncoder.prototype=Object.create(WrapperObject.prototype);ExpertEncoder.prototype.constructor=ExpertEncoder;ExpertEncoder.prototype.__class__=ExpertEncoder;ExpertEncoder.__cache__={};Module["ExpertEncoder"]=ExpertEncoder;ExpertEncoder.prototype["SetEncodingMethod"]=ExpertEncoder.prototype.SetEncodingMethod=function(method){var self=this.ptr;if(method&&typeof method==="object")method=method.ptr;_emscripten_bind_ExpertEncoder_SetEncodingMethod_1(self,method)};ExpertEncoder.prototype["SetAttributeQuantization"]=ExpertEncoder.prototype.SetAttributeQuantization=function(att_id,quantization_bits){var self=this.ptr;if(att_id&&typeof att_id==="object")att_id=att_id.ptr;if(quantization_bits&&typeof quantization_bits==="object")quantization_bits=quantization_bits.ptr;_emscripten_bind_ExpertEncoder_SetAttributeQuantization_2(self,att_id,quantization_bits)};ExpertEncoder.prototype["SetAttributeExplicitQuantization"]=ExpertEncoder.prototype.SetAttributeExplicitQuantization=function(att_id,quantization_bits,num_components,origin,range){var self=this.ptr;ensureCache.prepare();if(att_id&&typeof att_id==="object")att_id=att_id.ptr;if(quantization_bits&&typeof quantization_bits==="object")quantization_bits=quantization_bits.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof origin=="object"){origin=ensureFloat32(origin)}if(range&&typeof range==="object")range=range.ptr;_emscripten_bind_ExpertEncoder_SetAttributeExplicitQuantization_5(self,att_id,quantization_bits,num_components,origin,range)};ExpertEncoder.prototype["SetSpeedOptions"]=ExpertEncoder.prototype.SetSpeedOptions=function(encoding_speed,decoding_speed){var self=this.ptr;if(encoding_speed&&typeof encoding_speed==="object")encoding_speed=encoding_speed.ptr;if(decoding_speed&&typeof decoding_speed==="object")decoding_speed=decoding_speed.ptr;_emscripten_bind_ExpertEncoder_SetSpeedOptions_2(self,encoding_speed,decoding_speed)};ExpertEncoder.prototype["SetTrackEncodedProperties"]=ExpertEncoder.prototype.SetTrackEncodedProperties=function(flag){var self=this.ptr;if(flag&&typeof flag==="object")flag=flag.ptr;_emscripten_bind_ExpertEncoder_SetTrackEncodedProperties_1(self,flag)};ExpertEncoder.prototype["EncodeToDracoBuffer"]=ExpertEncoder.prototype.EncodeToDracoBuffer=function(deduplicate_values,encoded_data){var self=this.ptr;if(deduplicate_values&&typeof deduplicate_values==="object")deduplicate_values=deduplicate_values.ptr;if(encoded_data&&typeof encoded_data==="object")encoded_data=encoded_data.ptr;return _emscripten_bind_ExpertEncoder_EncodeToDracoBuffer_2(self,deduplicate_values,encoded_data)};ExpertEncoder.prototype["GetNumberOfEncodedPoints"]=ExpertEncoder.prototype.GetNumberOfEncodedPoints=function(){var self=this.ptr;return _emscripten_bind_ExpertEncoder_GetNumberOfEncodedPoints_0(self)};ExpertEncoder.prototype["GetNumberOfEncodedFaces"]=ExpertEncoder.prototype.GetNumberOfEncodedFaces=function(){var self=this.ptr;return _emscripten_bind_ExpertEncoder_GetNumberOfEncodedFaces_0(self)};ExpertEncoder.prototype["__destroy__"]=ExpertEncoder.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_ExpertEncoder___destroy___0(self)};function PointAttribute(){this.ptr=_emscripten_bind_PointAttribute_PointAttribute_0();getCache(PointAttribute)[this.ptr]=this}PointAttribute.prototype=Object.create(WrapperObject.prototype);PointAttribute.prototype.constructor=PointAttribute;PointAttribute.prototype.__class__=PointAttribute;PointAttribute.__cache__={};Module["PointAttribute"]=PointAttribute;PointAttribute.prototype["size"]=PointAttribute.prototype.size=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_size_0(self)};PointAttribute.prototype["attribute_type"]=PointAttribute.prototype.attribute_type=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_attribute_type_0(self)};PointAttribute.prototype["data_type"]=PointAttribute.prototype.data_type=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_data_type_0(self)};PointAttribute.prototype["num_components"]=PointAttribute.prototype.num_components=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_num_components_0(self)};PointAttribute.prototype["normalized"]=PointAttribute.prototype.normalized=function(){var self=this.ptr;return!!_emscripten_bind_PointAttribute_normalized_0(self)};PointAttribute.prototype["byte_stride"]=PointAttribute.prototype.byte_stride=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_byte_stride_0(self)};PointAttribute.prototype["byte_offset"]=PointAttribute.prototype.byte_offset=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_byte_offset_0(self)};PointAttribute.prototype["unique_id"]=PointAttribute.prototype.unique_id=function(){var self=this.ptr;return _emscripten_bind_PointAttribute_unique_id_0(self)};PointAttribute.prototype["__destroy__"]=PointAttribute.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_PointAttribute___destroy___0(self)};function Encoder(){this.ptr=_emscripten_bind_Encoder_Encoder_0();getCache(Encoder)[this.ptr]=this}Encoder.prototype=Object.create(WrapperObject.prototype);Encoder.prototype.constructor=Encoder;Encoder.prototype.__class__=Encoder;Encoder.__cache__={};Module["Encoder"]=Encoder;Encoder.prototype["SetEncodingMethod"]=Encoder.prototype.SetEncodingMethod=function(method){var self=this.ptr;if(method&&typeof method==="object")method=method.ptr;_emscripten_bind_Encoder_SetEncodingMethod_1(self,method)};Encoder.prototype["SetAttributeQuantization"]=Encoder.prototype.SetAttributeQuantization=function(type,quantization_bits){var self=this.ptr;if(type&&typeof type==="object")type=type.ptr;if(quantization_bits&&typeof quantization_bits==="object")quantization_bits=quantization_bits.ptr;_emscripten_bind_Encoder_SetAttributeQuantization_2(self,type,quantization_bits)};Encoder.prototype["SetAttributeExplicitQuantization"]=Encoder.prototype.SetAttributeExplicitQuantization=function(type,quantization_bits,num_components,origin,range){var self=this.ptr;ensureCache.prepare();if(type&&typeof type==="object")type=type.ptr;if(quantization_bits&&typeof quantization_bits==="object")quantization_bits=quantization_bits.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof origin=="object"){origin=ensureFloat32(origin)}if(range&&typeof range==="object")range=range.ptr;_emscripten_bind_Encoder_SetAttributeExplicitQuantization_5(self,type,quantization_bits,num_components,origin,range)};Encoder.prototype["SetSpeedOptions"]=Encoder.prototype.SetSpeedOptions=function(encoding_speed,decoding_speed){var self=this.ptr;if(encoding_speed&&typeof encoding_speed==="object")encoding_speed=encoding_speed.ptr;if(decoding_speed&&typeof decoding_speed==="object")decoding_speed=decoding_speed.ptr;_emscripten_bind_Encoder_SetSpeedOptions_2(self,encoding_speed,decoding_speed)};Encoder.prototype["SetTrackEncodedProperties"]=Encoder.prototype.SetTrackEncodedProperties=function(flag){var self=this.ptr;if(flag&&typeof flag==="object")flag=flag.ptr;_emscripten_bind_Encoder_SetTrackEncodedProperties_1(self,flag)};Encoder.prototype["EncodeMeshToDracoBuffer"]=Encoder.prototype.EncodeMeshToDracoBuffer=function(mesh,encoded_data){var self=this.ptr;if(mesh&&typeof mesh==="object")mesh=mesh.ptr;if(encoded_data&&typeof encoded_data==="object")encoded_data=encoded_data.ptr;return _emscripten_bind_Encoder_EncodeMeshToDracoBuffer_2(self,mesh,encoded_data)};Encoder.prototype["EncodePointCloudToDracoBuffer"]=Encoder.prototype.EncodePointCloudToDracoBuffer=function(pc,deduplicate_values,encoded_data){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(deduplicate_values&&typeof deduplicate_values==="object")deduplicate_values=deduplicate_values.ptr;if(encoded_data&&typeof encoded_data==="object")encoded_data=encoded_data.ptr;return _emscripten_bind_Encoder_EncodePointCloudToDracoBuffer_3(self,pc,deduplicate_values,encoded_data)};Encoder.prototype["GetNumberOfEncodedPoints"]=Encoder.prototype.GetNumberOfEncodedPoints=function(){var self=this.ptr;return _emscripten_bind_Encoder_GetNumberOfEncodedPoints_0(self)};Encoder.prototype["GetNumberOfEncodedFaces"]=Encoder.prototype.GetNumberOfEncodedFaces=function(){var self=this.ptr;return _emscripten_bind_Encoder_GetNumberOfEncodedFaces_0(self)};Encoder.prototype["__destroy__"]=Encoder.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_Encoder___destroy___0(self)};function MeshBuilder(){this.ptr=_emscripten_bind_MeshBuilder_MeshBuilder_0();getCache(MeshBuilder)[this.ptr]=this}MeshBuilder.prototype=Object.create(WrapperObject.prototype);MeshBuilder.prototype.constructor=MeshBuilder;MeshBuilder.prototype.__class__=MeshBuilder;MeshBuilder.__cache__={};Module["MeshBuilder"]=MeshBuilder;MeshBuilder.prototype["AddFacesToMesh"]=MeshBuilder.prototype.AddFacesToMesh=function(mesh,num_faces,faces){var self=this.ptr;ensureCache.prepare();if(mesh&&typeof mesh==="object")mesh=mesh.ptr;if(num_faces&&typeof num_faces==="object")num_faces=num_faces.ptr;if(typeof faces=="object"){faces=ensureInt32(faces)}return!!_emscripten_bind_MeshBuilder_AddFacesToMesh_3(self,mesh,num_faces,faces)};MeshBuilder.prototype["AddFloatAttributeToMesh"]=MeshBuilder.prototype.AddFloatAttributeToMesh=function(mesh,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(mesh&&typeof mesh==="object")mesh=mesh.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureFloat32(att_values)}return _emscripten_bind_MeshBuilder_AddFloatAttributeToMesh_5(self,mesh,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddInt32AttributeToMesh"]=MeshBuilder.prototype.AddInt32AttributeToMesh=function(mesh,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(mesh&&typeof mesh==="object")mesh=mesh.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt32(att_values)}return _emscripten_bind_MeshBuilder_AddInt32AttributeToMesh_5(self,mesh,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddMetadataToMesh"]=MeshBuilder.prototype.AddMetadataToMesh=function(mesh,metadata){var self=this.ptr;if(mesh&&typeof mesh==="object")mesh=mesh.ptr;if(metadata&&typeof metadata==="object")metadata=metadata.ptr;return!!_emscripten_bind_MeshBuilder_AddMetadataToMesh_2(self,mesh,metadata)};MeshBuilder.prototype["AddFloatAttribute"]=MeshBuilder.prototype.AddFloatAttribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureFloat32(att_values)}return _emscripten_bind_MeshBuilder_AddFloatAttribute_5(self,pc,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddInt8Attribute"]=MeshBuilder.prototype.AddInt8Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt8(att_values)}return _emscripten_bind_MeshBuilder_AddInt8Attribute_5(self,pc,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddUInt8Attribute"]=MeshBuilder.prototype.AddUInt8Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt8(att_values)}return _emscripten_bind_MeshBuilder_AddUInt8Attribute_5(self,pc,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddInt16Attribute"]=MeshBuilder.prototype.AddInt16Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt16(att_values)}return _emscripten_bind_MeshBuilder_AddInt16Attribute_5(self,pc,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddUInt16Attribute"]=MeshBuilder.prototype.AddUInt16Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt16(att_values)}return _emscripten_bind_MeshBuilder_AddUInt16Attribute_5(self,pc,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddInt32Attribute"]=MeshBuilder.prototype.AddInt32Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt32(att_values)}return _emscripten_bind_MeshBuilder_AddInt32Attribute_5(self,pc,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddUInt32Attribute"]=MeshBuilder.prototype.AddUInt32Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt32(att_values)}return _emscripten_bind_MeshBuilder_AddUInt32Attribute_5(self,pc,type,num_vertices,num_components,att_values)};MeshBuilder.prototype["AddMetadata"]=MeshBuilder.prototype.AddMetadata=function(pc,metadata){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(metadata&&typeof metadata==="object")metadata=metadata.ptr;return!!_emscripten_bind_MeshBuilder_AddMetadata_2(self,pc,metadata)};MeshBuilder.prototype["SetMetadataForAttribute"]=MeshBuilder.prototype.SetMetadataForAttribute=function(pc,attribute_id,metadata){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(attribute_id&&typeof attribute_id==="object")attribute_id=attribute_id.ptr;if(metadata&&typeof metadata==="object")metadata=metadata.ptr;return!!_emscripten_bind_MeshBuilder_SetMetadataForAttribute_3(self,pc,attribute_id,metadata)};MeshBuilder.prototype["__destroy__"]=MeshBuilder.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_MeshBuilder___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 MetadataBuilder(){this.ptr=_emscripten_bind_MetadataBuilder_MetadataBuilder_0();getCache(MetadataBuilder)[this.ptr]=this}MetadataBuilder.prototype=Object.create(WrapperObject.prototype);MetadataBuilder.prototype.constructor=MetadataBuilder;MetadataBuilder.prototype.__class__=MetadataBuilder;MetadataBuilder.__cache__={};Module["MetadataBuilder"]=MetadataBuilder;MetadataBuilder.prototype["AddStringEntry"]=MetadataBuilder.prototype.AddStringEntry=function(metadata,entry_name,entry_value){var self=this.ptr;ensureCache.prepare();if(metadata&&typeof metadata==="object")metadata=metadata.ptr;if(entry_name&&typeof entry_name==="object")entry_name=entry_name.ptr;else entry_name=ensureString(entry_name);if(entry_value&&typeof entry_value==="object")entry_value=entry_value.ptr;else entry_value=ensureString(entry_value);return!!_emscripten_bind_MetadataBuilder_AddStringEntry_3(self,metadata,entry_name,entry_value)};MetadataBuilder.prototype["AddIntEntry"]=MetadataBuilder.prototype.AddIntEntry=function(metadata,entry_name,entry_value){var self=this.ptr;ensureCache.prepare();if(metadata&&typeof metadata==="object")metadata=metadata.ptr;if(entry_name&&typeof entry_name==="object")entry_name=entry_name.ptr;else entry_name=ensureString(entry_name);if(entry_value&&typeof entry_value==="object")entry_value=entry_value.ptr;return!!_emscripten_bind_MetadataBuilder_AddIntEntry_3(self,metadata,entry_name,entry_value)};MetadataBuilder.prototype["AddDoubleEntry"]=MetadataBuilder.prototype.AddDoubleEntry=function(metadata,entry_name,entry_value){var self=this.ptr;ensureCache.prepare();if(metadata&&typeof metadata==="object")metadata=metadata.ptr;if(entry_name&&typeof entry_name==="object")entry_name=entry_name.ptr;else entry_name=ensureString(entry_name);if(entry_value&&typeof entry_value==="object")entry_value=entry_value.ptr;return!!_emscripten_bind_MetadataBuilder_AddDoubleEntry_3(self,metadata,entry_name,entry_value)};MetadataBuilder.prototype["__destroy__"]=MetadataBuilder.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_MetadataBuilder___destroy___0(self)};function GeometryAttribute(){this.ptr=_emscripten_bind_GeometryAttribute_GeometryAttribute_0();getCache(GeometryAttribute)[this.ptr]=this}GeometryAttribute.prototype=Object.create(WrapperObject.prototype);GeometryAttribute.prototype.constructor=GeometryAttribute;GeometryAttribute.prototype.__class__=GeometryAttribute;GeometryAttribute.__cache__={};Module["GeometryAttribute"]=GeometryAttribute;GeometryAttribute.prototype["__destroy__"]=GeometryAttribute.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_GeometryAttribute___destroy___0(self)};function Mesh(){this.ptr=_emscripten_bind_Mesh_Mesh_0();getCache(Mesh)[this.ptr]=this}Mesh.prototype=Object.create(WrapperObject.prototype);Mesh.prototype.constructor=Mesh;Mesh.prototype.__class__=Mesh;Mesh.__cache__={};Module["Mesh"]=Mesh;Mesh.prototype["num_faces"]=Mesh.prototype.num_faces=function(){var self=this.ptr;return _emscripten_bind_Mesh_num_faces_0(self)};Mesh.prototype["num_attributes"]=Mesh.prototype.num_attributes=function(){var self=this.ptr;return _emscripten_bind_Mesh_num_attributes_0(self)};Mesh.prototype["num_points"]=Mesh.prototype.num_points=function(){var self=this.ptr;return _emscripten_bind_Mesh_num_points_0(self)};Mesh.prototype["set_num_points"]=Mesh.prototype.set_num_points=function(num_points){var self=this.ptr;if(num_points&&typeof num_points==="object")num_points=num_points.ptr;_emscripten_bind_Mesh_set_num_points_1(self,num_points)};Mesh.prototype["__destroy__"]=Mesh.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_Mesh___destroy___0(self)};function PointCloudBuilder(){this.ptr=_emscripten_bind_PointCloudBuilder_PointCloudBuilder_0();getCache(PointCloudBuilder)[this.ptr]=this}PointCloudBuilder.prototype=Object.create(WrapperObject.prototype);PointCloudBuilder.prototype.constructor=PointCloudBuilder;PointCloudBuilder.prototype.__class__=PointCloudBuilder;PointCloudBuilder.__cache__={};Module["PointCloudBuilder"]=PointCloudBuilder;PointCloudBuilder.prototype["AddFloatAttribute"]=PointCloudBuilder.prototype.AddFloatAttribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureFloat32(att_values)}return _emscripten_bind_PointCloudBuilder_AddFloatAttribute_5(self,pc,type,num_vertices,num_components,att_values)};PointCloudBuilder.prototype["AddInt8Attribute"]=PointCloudBuilder.prototype.AddInt8Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt8(att_values)}return _emscripten_bind_PointCloudBuilder_AddInt8Attribute_5(self,pc,type,num_vertices,num_components,att_values)};PointCloudBuilder.prototype["AddUInt8Attribute"]=PointCloudBuilder.prototype.AddUInt8Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt8(att_values)}return _emscripten_bind_PointCloudBuilder_AddUInt8Attribute_5(self,pc,type,num_vertices,num_components,att_values)};PointCloudBuilder.prototype["AddInt16Attribute"]=PointCloudBuilder.prototype.AddInt16Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt16(att_values)}return _emscripten_bind_PointCloudBuilder_AddInt16Attribute_5(self,pc,type,num_vertices,num_components,att_values)};PointCloudBuilder.prototype["AddUInt16Attribute"]=PointCloudBuilder.prototype.AddUInt16Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt16(att_values)}return _emscripten_bind_PointCloudBuilder_AddUInt16Attribute_5(self,pc,type,num_vertices,num_components,att_values)};PointCloudBuilder.prototype["AddInt32Attribute"]=PointCloudBuilder.prototype.AddInt32Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt32(att_values)}return _emscripten_bind_PointCloudBuilder_AddInt32Attribute_5(self,pc,type,num_vertices,num_components,att_values)};PointCloudBuilder.prototype["AddUInt32Attribute"]=PointCloudBuilder.prototype.AddUInt32Attribute=function(pc,type,num_vertices,num_components,att_values){var self=this.ptr;ensureCache.prepare();if(pc&&typeof pc==="object")pc=pc.ptr;if(type&&typeof type==="object")type=type.ptr;if(num_vertices&&typeof num_vertices==="object")num_vertices=num_vertices.ptr;if(num_components&&typeof num_components==="object")num_components=num_components.ptr;if(typeof att_values=="object"){att_values=ensureInt32(att_values)}return _emscripten_bind_PointCloudBuilder_AddUInt32Attribute_5(self,pc,type,num_vertices,num_components,att_values)};PointCloudBuilder.prototype["AddMetadata"]=PointCloudBuilder.prototype.AddMetadata=function(pc,metadata){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(metadata&&typeof metadata==="object")metadata=metadata.ptr;return!!_emscripten_bind_PointCloudBuilder_AddMetadata_2(self,pc,metadata)};PointCloudBuilder.prototype["SetMetadataForAttribute"]=PointCloudBuilder.prototype.SetMetadataForAttribute=function(pc,attribute_id,metadata){var self=this.ptr;if(pc&&typeof pc==="object")pc=pc.ptr;if(attribute_id&&typeof attribute_id==="object")attribute_id=attribute_id.ptr;if(metadata&&typeof metadata==="object")metadata=metadata.ptr;return!!_emscripten_bind_PointCloudBuilder_SetMetadataForAttribute_3(self,pc,attribute_id,metadata)};PointCloudBuilder.prototype["__destroy__"]=PointCloudBuilder.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_PointCloudBuilder___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 Metadata(){this.ptr=_emscripten_bind_Metadata_Metadata_0();getCache(Metadata)[this.ptr]=this}Metadata.prototype=Object.create(WrapperObject.prototype);Metadata.prototype.constructor=Metadata;Metadata.prototype.__class__=Metadata;Metadata.__cache__={};Module["Metadata"]=Metadata;Metadata.prototype["__destroy__"]=Metadata.prototype.__destroy__=function(){var self=this.ptr;_emscripten_bind_Metadata___destroy___0(self)};(function(){function setupEnums(){Module["MESH_SEQUENTIAL_ENCODING"]=_emscripten_enum_draco_MeshEncoderMethod_MESH_SEQUENTIAL_ENCODING();Module["MESH_EDGEBREAKER_ENCODING"]=_emscripten_enum_draco_MeshEncoderMethod_MESH_EDGEBREAKER_ENCODING();Module["INVALID_GEOMETRY_TYPE"]=_emscripten_enum_draco_EncodedGeometryType_INVALID_GEOMETRY_TYPE();Module["POINT_CLOUD"]=_emscripten_enum_draco_EncodedGeometryType_POINT_CLOUD();Module["TRIANGULAR_MESH"]=_emscripten_enum_draco_EncodedGeometryType_TRIANGULAR_MESH();Module["INVALID"]=_emscripten_enum_draco_GeometryAttribute_Type_INVALID();Module["POSITION"]=_emscripten_enum_draco_GeometryAttribute_Type_POSITION();Module["NORMAL"]=_emscripten_enum_draco_GeometryAttribute_Type_NORMAL();Module["COLOR"]=_emscripten_enum_draco_GeometryAttribute_Type_COLOR();Module["TEX_COORD"]=_emscripten_enum_draco_GeometryAttribute_Type_TEX_COORD();Module["GENERIC"]=_emscripten_enum_draco_GeometryAttribute_Type_GENERIC()}if(runtimeInitialized)setupEnums();else addOnPreMain(setupEnums)})();if(typeof Module["onModuleParsed"]==="function"){Module["onModuleParsed"]()}
return DracoEncoderModule
}
);
})();
if (typeof exports === 'object' && typeof module === 'object')
module.exports = DracoEncoderModule;
else if (typeof define === 'function' && define['amd'])
define([], function() { return DracoEncoderModule; });
else if (typeof exports === 'object')
exports["DracoEncoderModule"] = DracoEncoderModule;
globalThis.DracoEncoderModule = DracoEncoderModule;