Mercurial > hg > ugly-duckling
view src/assets/extractors/NNLSChroma.umd.js @ 509:041468f553e1 tip master
Merge pull request #57 from LucasThompson/fix/session-stack-max-call-stack
Fix accidental recursion in PersistentStack
author | Lucas Thompson <LucasThompson@users.noreply.github.com> |
---|---|
date | Mon, 27 Nov 2017 11:04:30 +0000 |
parents | 5fbecd666002 |
children |
line wrap: on
line source
(function(root,factory){if(typeof define==='function'&&define.amd){define([],factory);}else if(typeof module==='object'&&module.exports){module.exports=factory();}else{root['NNLSChromaModule']=factory();}}(this,function(){ var NNLSChromaModule = function(NNLSChromaModule) { NNLSChromaModule = NNLSChromaModule || {}; var Module = NNLSChromaModule; var Module;if(!Module)Module=(typeof NNLSChromaModule!=="undefined"?NNLSChromaModule:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function shell_read(){throw"no read() available"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function shell_read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){Module["readBinary"]=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}Module["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)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function shell_print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function shell_printErr(x){console.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}if(!Module["quit"]){Module["quit"]=(function(status,toThrow){throw toThrow})}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value;return value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(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 Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i<Runtime.functionPointers.length;i++){if(!Runtime.functionPointers[i]){Runtime.functionPointers[i]=func;return 2*(1+i)}}throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."}),removeFunction:(function(index){Runtime.functionPointers[(index-2)/2]=null}),warnOnce:(function(text){if(!Runtime.warnOnce.shown)Runtime.warnOnce.shown={};if(!Runtime.warnOnce.shown[text]){Runtime.warnOnce.shown[text]=1;Module.printErr(text)}}),funcWrappers:{},getFuncWrapper:(function(func,sig){assert(sig);if(!Runtime.funcWrappers[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){if(sig.length===1){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func)}}else if(sig.length===2){sigCache[func]=function dynCall_wrapper(arg){return Runtime.dynCall(sig,func,[arg])}}else{sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,Array.prototype.slice.call(arguments))}}}return sigCache[func]}),getCompilerSetting:(function(name){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"}),stackAlloc:(function(size){var ret=STACKTOP;STACKTOP=STACKTOP+size|0;STACKTOP=STACKTOP+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=(ret+size+15|0)&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"arrayToC":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=Runtime.stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){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=Runtime.stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);if(returnType==="string")ret=Pointer_stringify(ret);if(stack!==0){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(jsfunc){var parsed=jsfunc.toString().match(sourceRegex).slice(1);return{arguments:parsed[0],body:parsed[1],returnValue:parsed[2]}}var JSsource=null;function ensureJSsource(){if(!JSsource){JSsource={};for(var fun in JSfuncs){if(JSfuncs.hasOwnProperty(fun)){JSsource[fun]=parseJSFunc(JSfuncs[fun])}}}}cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident);var numericArgs=argTypes.every((function(type){return type==="number"}));var numericRet=returnType!=="string";if(numericRet&&numericArgs){return cfunc}var argNames=argTypes.map((function(x,i){return"$"+i}));var funcstr="(function("+argNames.join(",")+") {";var nargs=argTypes.length;if(!numericArgs){ensureJSsource();funcstr+="var stack = "+JSsource["stackSave"].body+";";for(var i=0;i<nargs;i++){var arg=argNames[i],type=argTypes[i];if(type==="number")continue;var convertCode=JSsource[type+"ToC"];funcstr+="var "+convertCode.arguments+" = "+arg+";";funcstr+=convertCode.body+";";funcstr+=arg+"=("+convertCode.returnValue+");"}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");";if(!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}if(!numericArgs){ensureJSsource();funcstr+=JSsource["stackRestore"].body.replace("()","(stack)")+";"}funcstr+="return ret})";return eval(funcstr)}}))();Module["ccall"]=ccall;Module["cwrap"]=cwrap;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)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":return HEAP8[ptr>>0];case"i8":return HEAP8[ptr>>0];case"i16":return HEAP16[ptr>>1];case"i32":return HEAP32[ptr>>2];case"i64":return HEAP32[ptr>>2];case"float":return HEAPF32[ptr>>2];case"double":return HEAPF64[ptr>>3];default:abort("invalid type for setValue: "+type)}return null}Module["getValue"]=getValue;var ALLOC_NORMAL=0;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;Module["ALLOC_NORMAL"]=ALLOC_NORMAL;Module["ALLOC_STACK"]=ALLOC_STACK;Module["ALLOC_STATIC"]=ALLOC_STATIC;Module["ALLOC_DYNAMIC"]=ALLOC_DYNAMIC;Module["ALLOC_NONE"]=ALLOC_NONE;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var ptr=ret,stop;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr<stop;ptr+=4){HEAP32[ptr>>2]=0}stop=ret+size;while(ptr<stop){HEAP8[ptr++>>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i<size){var curr=slab[i];if(typeof curr==="function"){curr=Runtime.getFunctionIndex(curr)}type=singleType||types[i];if(type===0){i++;continue}if(type=="i64")type="i32";setValue(ret+i,curr,type);if(previousType!==type){typeSize=Runtime.getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}Module["allocate"]=allocate;function getMemory(size){if(!staticSealed)return Runtime.staticAlloc(size);if(!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;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)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&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(u<=2097151){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}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;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 if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){var __cxa_demangle_func=Module["___cxa_demangle"]||Module["__cxa_demangle"];if(__cxa_demangle_func){try{var s=func.substr(1);var len=lengthBytesUTF8(s)+1;var buf=_malloc(len);stringToUTF8(s,buf,len);var status=_malloc(4);var ret=__cxa_demangle_func(buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}return func}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}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 stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}Module["stackTrace"]=stackTrace;var HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||134217728;if(TOTAL_MEMORY<TOTAL_STACK)Module.printErr("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+TOTAL_MEMORY+"! (TOTAL_STACK="+TOTAL_STACK+")");if(Module["buffer"]){buffer=Module["buffer"]}else{{buffer=new ArrayBuffer(TOTAL_MEMORY)}}updateGlobalBufferViews();function getTotalMemory(){return TOTAL_MEMORY}HEAP32[0]=1668509029;HEAP16[1]=25459;if(HEAPU8[2]!==115||HEAPU8[3]!==99)throw"Runtime error: expected the system to be little-endian!";Module["HEAP"]=HEAP;Module["buffer"]=buffer;Module["HEAP8"]=HEAP8;Module["HEAP16"]=HEAP16;Module["HEAP32"]=HEAP32;Module["HEAPU8"]=HEAPU8;Module["HEAPU16"]=HEAPU16;Module["HEAPU32"]=HEAPU32;Module["HEAPF32"]=HEAPF32;Module["HEAPF64"]=HEAPF64;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 __ATEXIT__=[];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 ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);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)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;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}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;function writeStringToMemory(string,buffer,dontAddNull){Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var lastChar,end;if(dontAddNull){end=buffer+lengthBytesUTF8(string);lastChar=HEAP8[end]}stringToUTF8(string,buffer,Infinity);if(dontAddNull)HEAP8[end]=lastChar}Module["writeStringToMemory"]=writeStringToMemory;function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}Module["writeArrayToMemory"]=writeArrayToMemory;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}Module["writeAsciiToMemory"]=writeAsciiToMemory;if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];if(!Math["trunc"])Math["trunc"]=(function(x){return x<0?Math.ceil(x):Math.floor(x)});Math.trunc=Math["trunc"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}Module["addRunDependency"]=addRunDependency;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["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var ASM_CONSTS=[];STATIC_BASE=Runtime.GLOBAL_BASE;STATICTOP=STATIC_BASE+44928;__ATINIT__.push({func:(function(){__GLOBAL__I_000101()})},{func:(function(){__GLOBAL__sub_I_nnls_chroma_cpp()})},{func:(function(){__GLOBAL__sub_I_PluginLoader_cpp()})},{func:(function(){__GLOBAL__sub_I_PluginSummarisingAdapter_cpp()})},{func:(function(){__GLOBAL__sub_I_iostream_cpp()})});allocate([0,0,0,0,0,0,0,0,76,0,0,0,0,0,0,0,48,2,0,0,57,0,0,0,58,0,0,0,180,255,255,255,180,255,255,255,48,2,0,0,59,0,0,0,60,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,0,72,6,0,0,23,0,0,0,24,0,0,0,252,255,255,255,252,255,255,255,72,6,0,0,25,0,0,0,26,0,0,0,0,0,0,0,0,0,0,0,192,66,0,0,225,71,0,0,232,66,0,0,175,71,0,0,112,0,0,0,0,0,0,0,232,66,0,0,12,72,0,0,112,0,0,0,0,0,0,0,232,66,0,0,59,72,0,0,112,0,0,0,0,0,0,0,192,66,0,0,147,72,0,0,232,66,0,0,104,72,0,0,168,0,0,0,0,0,0,0,232,66,0,0,182,72,0,0,168,0,0,0,0,0,0,0,232,66,0,0,225,72,0,0,120,0,0,0,0,0,0,0,232,66,0,0,15,73,0,0,136,0,0,0,0,0,0,0,232,66,0,0,58,73,0,0,152,0,0,0,0,0,0,0,232,66,0,0,17,81,0,0,16,1,0,0,0,0,0,0,192,66,0,0,61,81,0,0,232,66,0,0,98,81,0,0,136,11,0,0,0,0,0,0,112,0,0,0,0,0,0,0,24,6,0,0,17,0,0,0,18,0,0,0,144,255,255,255,144,255,255,255,24,6,0,0,19,0,0,0,20,0,0,0,144,67,0,0,145,91,0,0,0,0,0,0,1,0,0,0,0,3,0,0,0,0,0,0,56,0,0,0,0,0,0,0,72,6,0,0,23,0,0,0,24,0,0,0,200,255,255,255,200,255,255,255,72,6,0,0,25,0,0,0,26,0,0,0,232,66,0,0,24,87,0,0,16,2,0,0,0,0,0,0,144,67,0,0,92,85,0,0,0,0,0,0,1,0,0,0,184,1,0,0,0,0,0,0,192,66,0,0,133,85,0,0,144,67,0,0,202,85,0,0,0,0,0,0,2,0,0,0,232,1,0,0,2,0,0,0,8,2,0,0,3,244,255,255,192,66,0,0,183,85,0,0,144,67,0,0,79,86,0,0,0,0,0,0,2,0,0,0,208,6,0,0,2,0,0,0,224,1,0,0,2,16,0,0,192,66,0,0,40,86,0,0,232,66,0,0,162,87,0,0,8,6,0,0,0,0,0,0,232,66,0,0,233,87,0,0,144,1,0,0,0,0,0,0,144,67,0,0,103,88,0,0,0,0,0,0,2,0,0,0,120,2,0,0,0,8,0,0,24,6,0,0,2,0,0,0,76,0,0,0,0,0,0,0,24,6,0,0,17,0,0,0,18,0,0,0,180,255,255,255,180,255,255,255,24,6,0,0,19,0,0,0,20,0,0,0,192,66,0,0,239,88,0,0,232,66,0,0,137,89,0,0,48,2,0,0,0,0,0,0,232,66,0,0,234,89,0,0,8,6,0,0,0,0,0,0,232,66,0,0,44,90,0,0,72,6,0,0,0,0,0,0,144,67,0,0,140,90,0,0,0,0,0,0,2,0,0,0,208,2,0,0,2,0,0,0,8,2,0,0,3,244,255,255,144,67,0,0,231,90,0,0,0,0,0,0,2,0,0,0,240,2,0,0,2,0,0,0,224,1,0,0,2,12,0,0,232,66,0,0,47,91,0,0,72,12,0,0,0,0,0,0,192,66,0,0,208,91,0,0,232,66,0,0,246,91,0,0,24,3,0,0,0,0,0,0,232,66,0,0,77,92,0,0,8,6,0,0,0,0,0,0,232,66,0,0,200,92,0,0,56,3,0,0,0,0,0,0,192,66,0,0,15,93,0,0,232,66,0,0,48,93,0,0,8,6,0,0,0,0,0,0,112,0,0,0,0,0,0,0,120,6,0,0,81,0,0,0,82,0,0,0,104,0,0,0,248,255,255,255,120,6,0,0,83,0,0,0,84,0,0,0,144,255,255,255,144,255,255,255,120,6,0,0,85,0,0,0,86,0,0,0,0,0,0,0,104,0,0,0,0,0,0,0,72,6,0,0,23,0,0,0,24,0,0,0,152,255,255,255,152,255,255,255,72,6,0,0,25,0,0,0,26,0,0,0,232,66,0,0,95,93,0,0,120,6,0,0,0,0,0,0,232,66,0,0,26,94,0,0,216,3,0,0,0,0,0,0,232,66,0,0,36,94,0,0,232,3,0,0,0,0,0,0,192,66,0,0,64,94,0,0,232,66,0,0,158,99,0,0,200,3,0,0,0,0,0,0,232,66,0,0,167,106,0,0,200,3,0,0,0,0,0,0,232,66,0,0,125,109,0,0,200,3,0,0,0,0,0,0,232,66,0,0,17,112,0,0,120,4,0,0,0,0,0,0,232,66,0,0,167,109,0,0,64,4,0,0,0,0,0,0,192,66,0,0,192,109,0,0,192,66,0,0,180,111,0,0,232,66,0,0,67,112,0,0,120,4,0,0,0,0,0,0,232,66,0,0,18,114,0,0,120,4,0,0,0,0,0,0,192,66,0,0,251,113,0,0,232,66,0,0,70,114,0,0,48,4,0,0,0,0,0,0,192,66,0,0,186,115,0,0,232,66,0,0,164,114,0,0,160,4,0,0,0,0,0,0,232,66,0,0,187,114,0,0,136,4,0,0,0,0,0,0,232,66,0,0,223,114,0,0,136,11,0,0,0,0,0,0,232,66,0,0,46,115,0,0,208,4,0,0,0,0,0,0,232,66,0,0,65,115,0,0,136,4,0,0,0,0,0,0,232,66,0,0,116,115,0,0,136,11,0,0,0,0,0,0,232,66,0,0,32,116,0,0,0,5,0,0,0,0,0,0,232,66,0,0,206,115,0,0,136,4,0,0,0,0,0,0,232,66,0,0,252,116,0,0,32,5,0,0,0,0,0,0,232,66,0,0,52,116,0,0,136,4,0,0,0,0,0,0,232,66,0,0,24,117,0,0,64,5,0,0,0,0,0,0,232,66,0,0,46,117,0,0,136,4,0,0,0,0,0,0,232,66,0,0,82,117,0,0,136,11,0,0,0,0,0,0,232,66,0,0,158,117,0,0,112,5,0,0,0,0,0,0,232,66,0,0,176,117,0,0,136,4,0,0,0,0,0,0,232,66,0,0,212,117,0,0,136,11,0,0,0,0,0,0,232,66,0,0,25,118,0,0,160,5,0,0,0,0,0,0,232,66,0,0,47,118,0,0,136,4,0,0,0,0,0,0,232,66,0,0,146,118,0,0,136,11,0,0,0,0,0,0,232,66,0,0,219,118,0,0,136,11,0,0,0,0,0,0,232,66,0,0,34,119,0,0,136,11,0,0,0,0,0,0,232,66,0,0,115,133,0,0,240,5,0,0,0,0,0,0,192,66,0,0,97,133,0,0,232,66,0,0,157,133,0,0,240,5,0,0,0,0,0,0,192,66,0,0,199,133,0,0,192,66,0,0,248,133,0,0,144,67,0,0,41,134,0,0,0,0,0,0,1,0,0,0,224,5,0,0,3,244,255,255,144,67,0,0,88,134,0,0,0,0,0,0,1,0,0,0,248,5,0,0,3,244,255,255,144,67,0,0,135,134,0,0,0,0,0,0,1,0,0,0,224,5,0,0,3,244,255,255,144,67,0,0,182,134,0,0,0,0,0,0,1,0,0,0,248,5,0,0,3,244,255,255,144,67,0,0,229,134,0,0,3,0,0,0,2,0,0,0,24,6,0,0,2,0,0,0,72,6,0,0,2,8,0,0,12,0,0,0,0,0,0,0,24,6,0,0,17,0,0,0,18,0,0,0,244,255,255,255,244,255,255,255,24,6,0,0,19,0,0,0,20,0,0,0,232,66,0,0,66,135,0,0,184,11,0,0,0,0,0,0,232,66,0,0,96,135,0,0,168,11,0,0,0,0,0,0,232,66,0,0,122,135,0,0,16,6,0,0,0,0,0,0,232,66,0,0,147,135,0,0,8,6,0,0,0,0,0,0,232,66,0,0,210,135,0,0,16,6,0,0,0,0,0,0,232,66,0,0,234,135,0,0,8,6,0,0,0,0,0,0,232,66,0,0,2,136,0,0,48,7,0,0,0,0,0,0,232,66,0,0,22,136,0,0,128,11,0,0,0,0,0,0,232,66,0,0,44,136,0,0,48,7,0,0,0,0,0,0,144,67,0,0,102,136,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,112,7,0,0,0,0,0,0,144,67,0,0,170,136,0,0,0,0,0,0,1,0,0,0,136,7,0,0,0,0,0,0,192,66,0,0,192,136,0,0,144,67,0,0,217,136,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,176,7,0,0,0,0,0,0,144,67,0,0,29,137,0,0,0,0,0,0,1,0,0,0,136,7,0,0,0,0,0,0,144,67,0,0,70,137,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,232,7,0,0,0,0,0,0,144,67,0,0,138,137,0,0,0,0,0,0,1,0,0,0,0,8,0,0,0,0,0,0,192,66,0,0,160,137,0,0,144,67,0,0,185,137,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,40,8,0,0,0,0,0,0,144,67,0,0,253,137,0,0,0,0,0,0,1,0,0,0,0,8,0,0,0,0,0,0,144,67,0,0,83,139,0,0,0,0,0,0,3,0,0,0,48,7,0,0,2,0,0,0,104,8,0,0,2,0,0,0,112,8,0,0,0,8,0,0,192,66,0,0,186,139,0,0,192,66,0,0,152,139,0,0,144,67,0,0,205,139,0,0,0,0,0,0,3,0,0,0,48,7,0,0,2,0,0,0,104,8,0,0,2,0,0,0,160,8,0,0,0,8,0,0,192,66,0,0,18,140,0,0,144,67,0,0,52,140,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,200,8,0,0,0,8,0,0,192,66,0,0,121,140,0,0,144,67,0,0,142,140,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,200,8,0,0,0,8,0,0,144,67,0,0,211,140,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,16,9,0,0,2,0,0,0,192,66,0,0,239,140,0,0,144,67,0,0,4,141,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,16,9,0,0,2,0,0,0,144,67,0,0,32,141,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,16,9,0,0,2,0,0,0,144,67,0,0,60,141,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,16,9,0,0,2,0,0,0,144,67,0,0,103,141,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,152,9,0,0,0,0,0,0,192,66,0,0,173,141,0,0,144,67,0,0,209,141,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,192,9,0,0,0,0,0,0,192,66,0,0,23,142,0,0,144,67,0,0,54,142,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,232,9,0,0,0,0,0,0,192,66,0,0,124,142,0,0,144,67,0,0,149,142,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,16,10,0,0,0,0,0,0,192,66,0,0,219,142,0,0,144,67,0,0,244,142,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,56,10,0,0,2,0,0,0,192,66,0,0,9,143,0,0,144,67,0,0,160,143,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,56,10,0,0,2,0,0,0,232,66,0,0,33,143,0,0,112,10,0,0,0,0,0,0,144,67,0,0,68,143,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,144,10,0,0,2,0,0,0,192,66,0,0,103,143,0,0,232,66,0,0,126,143,0,0,112,10,0,0,0,0,0,0,144,67,0,0,181,143,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,144,10,0,0,2,0,0,0,144,67,0,0,215,143,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,144,10,0,0,2,0,0,0,144,67,0,0,249,143,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,144,10,0,0,2,0,0,0,232,66,0,0,28,144,0,0,48,7,0,0,0,0,0,0,144,67,0,0,50,144,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,56,11,0,0,2,0,0,0,192,66,0,0,68,144,0,0,144,67,0,0,89,144,0,0,0,0,0,0,2,0,0,0,48,7,0,0,2,0,0,0,56,11,0,0,2,0,0,0,232,66,0,0,118,144,0,0,48,7,0,0,0,0,0,0,232,66,0,0,139,144,0,0,48,7,0,0,0,0,0,0,192,66,0,0,232,144,0,0,144,67,0,0,1,145,0,0,0,0,0,0,1,0,0,0,128,11,0,0,0,0,0,0,192,66,0,0,19,146,0,0,232,66,0,0,44,146,0,0,40,12,0,0,0,0,0,0,232,66,0,0,67,146,0,0,160,11,0,0,0,0,0,0,192,66,0,0,238,146,0,0,232,66,0,0,78,147,0,0,224,11,0,0,0,0,0,0,232,66,0,0,251,146,0,0,240,11,0,0,0,0,0,0,192,66,0,0,28,147,0,0,232,66,0,0,41,147,0,0,208,11,0,0,0,0,0,0,232,66,0,0,63,148,0,0,200,11,0,0,0,0,0,0,232,66,0,0,76,148,0,0,200,11,0,0,0,0,0,0,232,66,0,0,92,148,0,0,200,11,0,0,0,0,0,0,232,66,0,0,110,148,0,0,24,12,0,0,0,0,0,0,232,66,0,0,141,148,0,0,200,11,0,0,0,0,0,0,232,66,0,0,189,148,0,0,224,11,0,0,0,0,0,0,232,66,0,0,153,148,0,0,88,12,0,0,0,0,0,0,232,66,0,0,223,148,0,0,224,11,0,0,0,0,0,0,116,67,0,0,7,149,0,0,232,66,0,0,9,149,0,0,208,11,0,0,0,0,0,0,0,0,0,0,120,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,136,0,0,0,3,0,0,0,4,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,152,0,0,0,5,0,0,0,6,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,176,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,2,0,0,0,4,0,0,0,5,0,0,0,0,0,0,0,192,0,0,0,3,0,0,0,4,0,0,0,3,0,0,0,4,0,0,0,6,0,0,0,7,0,0,0,0,0,0,0,208,0,0,0,1,0,0,0,2,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,224,0,0,0,3,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,0,0,0,0,240,0,0,0,5,0,0,0,6,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,24,1,0,0,5,0,0,0,6,0,0,0,7,0,0,0,5,0,0,0,8,0,0,0,0,0,0,0,0,1,0,0,9,0,0,0,10,0,0,0,6,0,0,0,8,0,0,0,112,0,0,0,0,0,0,0,184,3,0,0,11,0,0,0,12,0,0,0,104,0,0,0,248,255,255,255,184,3,0,0,13,0,0,0,14,0,0,0,144,255,255,255,144,255,255,255,184,3,0,0,15,0,0,0,16,0,0,0,176,13,0,0,92,3,0,0,52,1,0,0,72,1,0,0,156,3,0,0,176,3,0,0,132,3,0,0,112,3,0,0,216,13,0,0,196,13,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,0,0,128,63,0,0,0,0,0,0,0,0,240,2,0,0,21,0,0,0,22,0,0,0,1,0,0,0,58,98,0,0,118,175,0,0,63,98,0,0,100,136,0,0,65,98,0,0,68,98,0,0,118,175,0,0,73,98,0,0,118,175,0,0,77,98,0,0,80,98,0,0,114,90,0,0,60,98,0,0,118,175,0,0,100,136,0,0,117,90,0,0,68,98,0,0,70,98,0,0,118,175,0,0,75,98,0,0,118,175,0,0,80,98,0,0,82,98,0,0,58,98,0,0,63,98,0,0,118,175,0,0,65,98,0,0,68,98,0,0,120,90,0,0,73,98,0,0,118,175,0,0,77,98,0,0,118,175,0,0,114,90,0,0,58,98,0,0,123,90,0,0,100,136,0,0,118,175,0,0,68,98,0,0,70,98,0,0,73,98,0,0,75,98,0,0,118,175,0,0,80,98,0,0,118,175,0,0,58,98,0,0,60,98,0,0,63,98,0,0,65,98,0,0,118,175,0,0,120,90,0,0,73,98,0,0,126,90,0,0,77,98,0,0,118,175,0,0,114,90,0,0,118,175,0,0,123,90,0,0,63,98,0,0,129,90,0,0,68,98,0,0,118,175,0,0,73,98,0,0,75,98,0,0,77,98,0,0,80,98,0,0,118,175,0,0,58,98,0,0,118,175,0,0,63,98,0,0,100,136,0,0,65,98,0,0,70,98,0,0,118,175,0,0,75,98,0,0,132,90,0,0,80,98,0,0,82,98,0,0,118,175,0,0,60,98,0,0,118,175,0,0,100,136,0,0,117,90,0,0,68,98,0,0,73,98,0,0,118,175,0,0,77,98,0,0,80,98,0,0,114,90,0,0,58,98,0,0,118,175,0,0,63,98,0,0,118,175,0,0,65,98,0,0,68,98,0,0,120,90,0,0,75,98,0,0,118,175,0,0,80,98,0,0,82,98,0,0,58,98,0,0,60,98,0,0,118,175,0,0,100,136,0,0,118,175,0,0,68,98,0,0,70,98,0,0,73,98,0,0,77,98,0,0,118,175,0,0,114,90,0,0,58,98,0,0,123,90,0,0,63,98,0,0,118,175,0,0,65,98,0,0,118,175,0,0,120,90,0,0,73,98,0,0,126,90,0,0,80,98,0,0,118,175,0,0,58,98,0,0,60,98,0,0,63,98,0,0,100,136,0,0,118,175,0,0,68,98,0,0,118,175,0,0,73,98,0,0,75,98,0,0,77,98,0,0,82,98,0,0,118,175,0,0,60,98,0,0,135,90,0,0,100,136,0,0,117,90,0,0,118,175,0,0,70,98,0,0,118,175,0,0,75,98,0,0,132,90,0,0,80,98,0,0,138,90,0,0,118,175,0,0,219,84,0,0,221,84,0,0,224,84,0,0,226,84,0,0,118,175,0,0,228,84,0,0,118,175,0,0,6,84,0,0,230,84,0,0,8,84,0,0,56,0,0,0,0,0,0,0,160,2,0,0,27,0,0,0,28,0,0,0,200,255,255,255,200,255,255,255,160,2,0,0,29,0,0,0,30,0,0,0,0,0,0,0,144,2,0,0,31,0,0,0,32,0,0,0,7,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,5,0,0,0,7,0,0,0,3,0,0,0,8,0,0,0,88,23,0,0,116,1,0,0,136,1,0,0,108,23,0,0,80,25,0,0,28,0,0,0,92,2,0,0,112,2,0,0,48,0,0,0,100,25,0,0,0,0,0,0,32,2,0,0,33,0,0,0,34,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,3,0,0,0,2,0,0,0,7,0,0,0,5,0,0,0,9,0,0,0,3,0,0,0,10,0,0,0,9,0,0,0,10,0,0,0,8,0,0,0,11,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,35,0,0,0,36,0,0,0,0,0,0,0,144,1,0,0,37,0,0,0,38,0,0,0,8,0,0,0,1,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,3,0,0,0,2,0,0,0,7,0,0,0,5,0,0,0,9,0,0,0,3,0,0,0,10,0,0,0,9,0,0,0,10,0,0,0,8,0,0,0,11,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,35,0,0,0,36,0,0,0,0,0,0,0,232,1,0,0,39,0,0,0,40,0,0,0,12,0,0,0,240,255,255,255,232,1,0,0,41,0,0,0,42,0,0,0,0,0,0,0,224,1,0,0,1,0,0,0,1,0,0,0,0,0,0,0,8,2,0,0,1,0,0,0,1,0,0,0,43,0,0,0,44,0,0,0,36,0,0,0,0,0,0,0,192,1,0,0,45,0,0,0,46,0,0,0,12,0,0,0,13,0,0,0,47,0,0,0,240,255,255,255,192,1,0,0,48,0,0,0,49,0,0,0,220,255,255,255,220,255,255,255,220,255,255,255,220,255,255,255,192,1,0,0,14,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,76,0,0,0,0,0,0,0,128,2,0,0,53,0,0,0,54,0,0,0,180,255,255,255,180,255,255,255,128,2,0,0,55,0,0,0,56,0,0,0,28,0,0,0,92,2,0,0,112,2,0,0,48,0,0,0,0,0,0,0,208,2,0,0,61,0,0,0,62,0,0,0,1,0,0,0,244,255,255,255,208,2,0,0,63,0,0,0,64,0,0,0,32,0,0,0,0,0,0,0,176,2,0,0,65,0,0,0,66,0,0,0,1,0,0,0,15,0,0,0,67,0,0,0,244,255,255,255,176,2,0,0,68,0,0,0,69,0,0,0,224,255,255,255,224,255,255,255,224,255,255,255,224,255,255,255,176,2,0,0,16,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,0,0,0,0,8,3,0,0,73,0,0,0,74,0,0,0,7,0,0,0,4,0,0,0,3,0,0,0,3,0,0,0,2,0,0,0,3,0,0,0,2,0,0,0,17,0,0,0,5,0,0,0,11,0,0,0,3,0,0,0,12,0,0,0,0,0,0,0,40,3,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,13,0,0,0,18,0,0,0,0,0,0,0,64,3,0,0,79,0,0,0,80,0,0,0,12,0,0,0,5,0,0,0,4,0,0,0,4,0,0,0,19,0,0,0,3,0,0,0,2,0,0,0,20,0,0,0,5,0,0,0,14,0,0,0,3,0,0,0,15,0,0,0,0,0,0,0,200,3,0,0,87,0,0,0,88,0,0,0,21,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,13,0,0,0,14,0,0,0,22,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,1,0,0,0,89,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,240,3,0,0,90,0,0,0,91,0,0,0,21,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,13,0,0,0,14,0,0,0,22,0,0,0,15,0,0,0,1,0,0,0,1,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,2,0,0,0,92,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,23,0,0,0,5,0,0,0,24,0,0,0,194,97,0,0,204,97,0,0,214,97,0,0,224,97,0,0,234,97,0,0,244,97,0,0,254,97,0,0,8,98,0,0,18,98,0,0,28,98,0,0,38,98,0,0,48,98,0,0,58,98,0,0,60,98,0,0,63,98,0,0,100,136,0,0,65,98,0,0,68,98,0,0,70,98,0,0,73,98,0,0,75,98,0,0,77,98,0,0,80,98,0,0,82,98,0,0,0,0,0,0,0,4,0,0,93,0,0,0,94,0,0,0,21,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,13,0,0,0,14,0,0,0,22,0,0,0,28,0,0,0,1,0,0,0,1,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,3,0,0,0,95,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,29,0,0,0,6,0,0,0,30,0,0,0,52,128,183,57,145,11,78,59,191,209,14,60,46,145,139,60,228,217,229,60,139,225,42,61,151,84,109,61,98,244,156,61,118,23,200,61,48,214,247,61,52,246,21,62,79,7,50,62,211,246,79,62,128,153,111,62,32,97,136,62,174,160,153,62,197,114,171,62,249,189,189,62,18,104,208,62,84,86,227,62,122,109,246,62,67,201,4,63,214,84,14,63,247,203,23,63,4,33,33,63,157,70,42,63,169,47,51,63,112,207,59,63,160,25,68,63,75,2,76,63,44,126,83,63,115,130,90,63,58,5,97,63,17,253,102,63,116,97,108,63,183,42,113,63,231,81,117,63,49,209,120,63,119,163,123,63,185,196,125,63,244,49,127,63,16,233,127,63,16,233,127,63,244,49,127,63,185,196,125,63,119,163,123,63,49,209,120,63,231,81,117,63,183,42,113,63,116,97,108,63,17,253,102,63,58,5,97,63,115,130,90,63,44,126,83,63,75,2,76,63,160,25,68,63,112,207,59,63,169,47,51,63,157,70,42,63,4,33,33,63,247,203,23,63,214,84,14,63,67,201,4,63,122,109,246,62,84,86,227,62,18,104,208,62,249,189,189,62,197,114,171,62,174,160,153,62,32,97,136,62,128,153,111,62,211,246,79,62,79,7,50,62,52,246,21,62,48,214,247,61,118,23,200,61,98,244,156,61,151,84,109,61,139,225,42,61,228,217,229,60,46,145,139,60,191,209,14,60,145,11,78,59,52,128,183,57,202,221,231,58,170,211,129,60,77,158,50,61,33,147,172,61,56,243,11,62,12,32,76,62,40,128,138,62,74,66,178,62,185,54,220,62,3,151,3,63,182,248,24,63,202,165,45,63,162,8,65,63,255,148,82,63,255,203,97,63,121,63,110,63,112,149,119,63,101,138,125,63,23,243,127,63,73,190,126,63,144,244,121,63,153,184,113,63,246,69,102,63,124,239,87,63,235,28,71,63,229,71,52,63,169,248,31,63,39,194,10,63,179,123,234,62,174,14,192,62,55,112,151,62,84,140,99,62,15,66,32,62,83,208,205,61,108,118,100,61,244,109,193,60,173,219,160,59,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,4,0,0,96,0,0,0,97,0,0,0,21,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,13,0,0,0,14,0,0,0,22,0,0,0,34,0,0,0,1,0,0,0,1,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,4,0,0,0,98,0,0,0,23,0,0,0,24,0,0,0,28,0,0,0,26,0,0,0,27,0,0,0,35,0,0,0,7,0,0,0,36,0,0,0,0,0,0,0,32,4,0,0,99,0,0,0,100,0,0,0,29,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,30,0,0,0,42,0,0,0,2,0,0,0,2,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,5,0,0,0,101,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,47,0,0,0,8,0,0,0,48,0,0,0,0,0,0,0,72,4,0,0,102,0,0,0,103,0,0,0,0,0,0,0,80,4,0,0,104,0,0,0,105,0,0,0,29,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,30,0,0,0,42,0,0,0,2,0,0,0,3,0,0,0,43,0,0,0,44,0,0,0,49,0,0,0,46,0,0,0,6,0,0,0,106,0,0,0,31,0,0,0,36,0,0,0,37,0,0,0,34,0,0,0,35,0,0,0,50,0,0,0,9,0,0,0,51,0,0,0,0,0,0,0,96,4,0,0,107,0,0,0,108,0,0,0,29,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,30,0,0,0,42,0,0,0,2,0,0,0,3,0,0,0,43,0,0,0,44,0,0,0,49,0,0,0,46,0,0,0,7,0,0,0,109,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,34,0,0,0,35,0,0,0,50,0,0,0,10,0,0,0,51,0,0,0,0,0,0,0,112,4,0,0,110,0,0,0,111,0,0,0,0,0,0,0,120,4,0,0,112,0,0,0,113,0,0,0,29,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,30,0,0,0,42,0,0,0,2,0,0,0,3,0,0,0,43,0,0,0,44,0,0,0,49,0,0,0,46,0,0,0,8,0,0,0,106,0,0,0,31,0,0,0,36,0,0,0,37,0,0,0,34,0,0,0,35,0,0,0,50,0,0,0,11,0,0,0,51,0,0,0,0,0,0,0,224,4,0,0,114,0,0,0,115,0,0,0,116,0,0,0,5,0,0,0,117,0,0,0,0,0,0,0,192,4,0,0,41,0,0,0,16,0,0,0,17,0,0,0,52,0,0,0,1,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,18,0,0,0,46,0,0,0,19,0,0,0,118,0,0,0,119,0,0,0,0,0,0,0,176,4,0,0,120,0,0,0,121,0,0,0,122,0,0,0,5,0,0,0,123,0,0,0,0,0,0,0,144,4,0,0,47,0,0,0,20,0,0,0,21,0,0,0,53,0,0,0,1,0,0,0,42,0,0,0,48,0,0,0,44,0,0,0,45,0,0,0,18,0,0,0,46,0,0,0,19,0,0,0,118,0,0,0,124,0,0,0,0,0,0,0,240,4,0,0,49,0,0,0,22,0,0,0,23,0,0,0,54,0,0,0,1,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,50,0,0,0,24,0,0,0,46,0,0,0,19,0,0,0,125,0,0,0,126,0,0,0,0,0,0,0,0,5,0,0,49,0,0,0,22,0,0,0,23,0,0,0,54,0,0,0,1,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,18,0,0,0,46,0,0,0,19,0,0,0,125,0,0,0,127,0,0,0,0,0,0,0,16,5,0,0,51,0,0,0,25,0,0,0,26,0,0,0,55,0,0,0,1,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,18,0,0,0,52,0,0,0,27,0,0,0,128,0,0,0,129,0,0,0,0,0,0,0,32,5,0,0,51,0,0,0,25,0,0,0,26,0,0,0,55,0,0,0,1,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,18,0,0,0,46,0,0,0,19,0,0,0,128,0,0,0,130,0,0,0,0,0,0,0,80,5,0,0,131,0,0,0,132,0,0,0,133,0,0,0,5,0,0,0,134,0,0,0,0,0,0,0,48,5,0,0,53,0,0,0,28,0,0,0,29,0,0,0,56,0,0,0,2,0,0,0,54,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,18,0,0,0,46,0,0,0,19,0,0,0,118,0,0,0,135,0,0,0,0,0,0,0,128,5,0,0,136,0,0,0,137,0,0,0,138,0,0,0,5,0,0,0,139,0,0,0,0,0,0,0,96,5,0,0,55,0,0,0,30,0,0,0,31,0,0,0,57,0,0,0,3,0,0,0,56,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,18,0,0,0,46,0,0,0,19,0,0,0,118,0,0,0,140,0,0,0,0,0,0,0,176,5,0,0,141,0,0,0,142,0,0,0,143,0,0,0,5,0,0,0,144,0,0,0,0,0,0,0,160,5,0,0,57,0,0,0,32,0,0,0,33,0,0,0,58,0,0,0,1,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,18,0,0,0,46,0,0,0,19,0,0,0,145,0,0,0,146,0,0,0,0,0,0,0,144,5,0,0,57,0,0,0,32,0,0,0,33,0,0,0,58,0,0,0,1,0,0,0,42,0,0,0,43,0,0,0,58,0,0,0,45,0,0,0,18,0,0,0,46,0,0,0,19,0,0,0,145,0,0,0,147,0,0,0,0,0,0,0,192,5,0,0,148,0,0,0,149,0,0,0,150,0,0,0,5,0,0,0,151,0,0,0,0,0,0,0,208,5,0,0,152,0,0,0,153,0,0,0,154,0,0,0,5,0,0,0,155,0,0,0,1,0,0,0,2,0,0,0,2,0,0,192,3,0,0,192,4,0,0,192,5,0,0,192,6,0,0,192,7,0,0,192,8,0,0,192,9,0,0,192,10,0,0,192,11,0,0,192,12,0,0,192,13,0,0,192,14,0,0,192,15,0,0,192,16,0,0,192,17,0,0,192,18,0,0,192,19,0,0,192,20,0,0,192,21,0,0,192,22,0,0,192,23,0,0,192,24,0,0,192,25,0,0,192,26,0,0,192,27,0,0,192,28,0,0,192,29,0,0,192,30,0,0,192,31,0,0,192,0,0,0,179,1,0,0,195,2,0,0,195,3,0,0,195,4,0,0,195,5,0,0,195,6,0,0,195,7,0,0,195,8,0,0,195,9,0,0,195,10,0,0,195,11,0,0,195,12,0,0,195,13,0,0,211,14,0,0,195,15,0,0,195,0,0,12,187,1,0,12,195,2,0,12,195,3,0,12,195,4,0,12,211,104,37,0,0,20,0,0,0,67,46,85,84,70,45,56,0,0,0,0,0,0,0,0,0,0,0,0,0,222,18,4,149,0,0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,76,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,152,37,0,0,5,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,7,0,0,0,101,167,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,124,153,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,39,0,0,5,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,7,0,0,0,109,167,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,39,0,0,144,39,0,0,9,0,0,0,0,0,0,0,0,0,0,0,59,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,7,0,0,0,117,171,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,95,112,137,0,255,9,47,15,180,42,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,87,0,0,0,88,0,0,0,89,0,0,0,90,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,176,68,0,0,188,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,26,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,37,0,0,0,38,0,0,0,39,0,0,0,40,0,0,0,41,0,0,0,42,0,0,0,43,0,0,0,44,0,0,0,45,0,0,0,46,0,0,0,47,0,0,0,48,0,0,0,49,0,0,0,50,0,0,0,51,0,0,0,52,0,0,0,53,0,0,0,54,0,0,0,55,0,0,0,56,0,0,0,57,0,0,0,58,0,0,0,59,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,91,0,0,0,92,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,96,0,0,0,97,0,0,0,98,0,0,0,99,0,0,0,100,0,0,0,101,0,0,0,102,0,0,0,103,0,0,0,104,0,0,0,105,0,0,0,106,0,0,0,107,0,0,0,108,0,0,0,109,0,0,0,110,0,0,0,111,0,0,0,112,0,0,0,113,0,0,0,114,0,0,0,115,0,0,0,116,0,0,0,117,0,0,0,118,0,0,0,119,0,0,0,120,0,0,0,121,0,0,0,122,0,0,0,123,0,0,0,124,0,0,0,125,0,0,0,126,0,0,0,127,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,5,0,0,156,0,0,0,157,0,0,0,0,0,0,0,240,5,0,0,158,0,0,0,159,0,0,0,0,0,0,0,8,6,0,0,160,0,0,0,161,0,0,0,7,0,0,0,1,0,0,0,5,0,0,0,12,0,0,0,2,0,0,0,3,0,0,0,2,0,0,0,17,0,0,0,5,0,0,0,11,0,0,0,3,0,0,0,12,0,0,0,0,0,0,0,16,6,0,0,162,0,0,0,163,0,0,0,59,0,0,0,11,0,0,0,6,0,0,0,13,0,0,0,60,0,0,0,61,0,0,0,12,0,0,0,62,0,0,0,63,0,0,0,34,0,0,0,13,0,0,0,35,0,0,0,8,0,0,0,0,0,0,0,24,6,0,0,17,0,0,0,18,0,0,0,248,255,255,255,248,255,255,255,24,6,0,0,19,0,0,0,20,0,0,0,104,53,0,0,124,53,0,0,8,0,0,0,0,0,0,0,48,6,0,0,164,0,0,0,165,0,0,0,248,255,255,255,248,255,255,255,48,6,0,0,166,0,0,0,167,0,0,0,152,53,0,0,172,53,0,0,76,0,0,0,96,0,0,0,4,0,0,0,0,0,0,0,96,6,0,0,168,0,0,0,169,0,0,0,252,255,255,255,252,255,255,255,96,6,0,0,170,0,0,0,171,0,0,0,208,53,0,0,228,53,0,0,12,0,0,0,0,0,0,0,120,6,0,0,81,0,0,0,82,0,0,0,4,0,0,0,248,255,255,255,120,6,0,0,83,0,0,0,84,0,0,0,244,255,255,255,244,255,255,255,120,6,0,0,85,0,0,0,86,0,0,0,0,54,0,0,164,6,0,0,184,6,0,0,76,0,0,0,96,0,0,0,40,54,0,0,20,54,0,0,0,0,0,0,192,6,0,0,172,0,0,0,173,0,0,0,64,0,0,0,9,0,0,0,14,0,0,0,15,0,0,0,10,0,0,0,0,0,0,0,208,6,0,0,174,0,0,0,175,0,0,0,12,0,0,0,84,54,0,0,0,0,0,0,224,6,0,0,176,0,0,0,177,0,0,0,60,0,0,0,11,0,0,0,6,0,0,0,13,0,0,0,65,0,0,0,61,0,0,0,12,0,0,0,62,0,0,0,63,0,0,0,34,0,0,0,16,0,0,0,36,0,0,0,0,0,0,0,240,6,0,0,178,0,0,0,179,0,0,0,61,0,0,0,1,0,0,0,5,0,0,0,12,0,0,0,66,0,0,0,3,0,0,0,2,0,0,0,17,0,0,0,5,0,0,0,11,0,0,0,17,0,0,0,37,0,0,0,0,0,0,0,0,7,0,0,180,0,0,0,181,0,0,0,62,0,0,0,11,0,0,0,6,0,0,0,13,0,0,0,60,0,0,0,61,0,0,0,12,0,0,0,67,0,0,0,68,0,0,0,38,0,0,0,13,0,0,0,35,0,0,0,0,0,0,0,16,7,0,0,182,0,0,0,183,0,0,0,63,0,0,0,1,0,0,0,5,0,0,0,12,0,0,0,2,0,0,0,3,0,0,0,2,0,0,0,69,0,0,0,70,0,0,0,39,0,0,0,3,0,0,0,12,0,0,0,0,0,0,0,32,7,0,0,184,0,0,0,185,0,0,0,186,0,0,0,1,0,0,0,14,0,0,0,18,0,0,0,0,0,0,0,64,7,0,0,187,0,0,0,188,0,0,0,186,0,0,0,2,0,0,0,15,0,0,0,19,0,0,0,0,0,0,0,80,7,0,0,189,0,0,0,190,0,0,0,186,0,0,0,1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5,0,0,0,6,0,0,0,7,0,0,0,8,0,0,0,9,0,0,0,10,0,0,0,11,0,0,0,0,0,0,0,144,7,0,0,191,0,0,0,192,0,0,0,186,0,0,0,12,0,0,0,13,0,0,0,14,0,0,0,15,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,200,7,0,0,193,0,0,0,194,0,0,0,186,0,0,0,3,0,0,0,4,0,0,0,23,0,0,0,5,0,0,0,24,0,0,0,1,0,0,0,2,0,0,0,6,0,0,0,0,0,0,0,8,8,0,0,195,0,0,0,196,0,0,0,186,0,0,0,7,0,0,0,8,0,0,0,25,0,0,0,9,0,0,0,26,0,0,0,3,0,0,0,4,0,0,0,10,0,0,0,0,0,0,0,64,8,0,0,197,0,0,0,198,0,0,0,186,0,0,0,71,0,0,0,27,0,0,0,28,0,0,0,29,0,0,0,30,0,0,0,31,0,0,0,1,0,0,0,248,255,255,255,64,8,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,0,0,0,0,120,8,0,0,199,0,0,0,200,0,0,0,186,0,0,0,79,0,0,0,32,0,0,0,33,0,0,0,34,0,0,0,35,0,0,0,36,0,0,0,2,0,0,0,248,255,255,255,120,8,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,0,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,0,0,0,0,37,0,0,0,97,0,0,0,32,0,0,0,37,0,0,0,98,0,0,0,32,0,0,0,37,0,0,0,100,0,0,0,32,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,89,0,0,0,0,0,0,0,65,0,0,0,77,0,0,0,0,0,0,0,80,0,0,0,77,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,114,0,0,0,117,0,0,0,97,0,0,0,114,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,99,0,0,0,104,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,105,0,0,0,108,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,101,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,121,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,117,0,0,0,115,0,0,0,116,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,116,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,111,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,101,0,0,0,109,0,0,0,98,0,0,0,101,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,97,0,0,0,110,0,0,0,0,0,0,0,70,0,0,0,101,0,0,0,98,0,0,0,0,0,0,0,77,0,0,0,97,0,0,0,114,0,0,0,0,0,0,0,65,0,0,0,112,0,0,0,114,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,74,0,0,0,117,0,0,0,108,0,0,0,0,0,0,0,65,0,0,0,117,0,0,0,103,0,0,0,0,0,0,0,83,0,0,0,101,0,0,0,112,0,0,0,0,0,0,0,79,0,0,0,99,0,0,0,116,0,0,0,0,0,0,0,78,0,0,0,111,0,0,0,118,0,0,0,0,0,0,0,68,0,0,0,101,0,0,0,99,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,110,0,0,0,101,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,114,0,0,0,115,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,117,0,0,0,114,0,0,0,100,0,0,0,97,0,0,0,121,0,0,0,0,0,0,0,83,0,0,0,117,0,0,0,110,0,0,0,0,0,0,0,77,0,0,0,111,0,0,0,110,0,0,0,0,0,0,0,84,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,87,0,0,0,101,0,0,0,100,0,0,0,0,0,0,0,84,0,0,0,104,0,0,0,117,0,0,0,0,0,0,0,70,0,0,0,114,0,0,0,105,0,0,0,0,0,0,0,83,0,0,0,97,0,0,0,116,0,0,0,0,0,0,0,37,0,0,0,109,0,0,0,47,0,0,0,37,0,0,0,100,0,0,0,47,0,0,0,37,0,0,0,121,0,0,0,37,0,0,0,89,0,0,0,45,0,0,0,37,0,0,0,109,0,0,0,45,0,0,0,37,0,0,0,100,0,0,0,37,0,0,0,73,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,32,0,0,0,37,0,0,0,112,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,37,0,0,0,72,0,0,0,58,0,0,0,37,0,0,0,77,0,0,0,58,0,0,0,37,0,0,0,83,0,0,0,0,0,0,0,168,8,0,0,201,0,0,0,202,0,0,0,186,0,0,0,1,0,0,0,0,0,0,0,208,8,0,0,203,0,0,0,204,0,0,0,186,0,0,0,2,0,0,0,0,0,0,0,240,8,0,0,205,0,0,0,206,0,0,0,186,0,0,0,87,0,0,0,88,0,0,0,64,0,0,0,65,0,0,0,66,0,0,0,67,0,0,0,89,0,0,0,68,0,0,0,69,0,0,0,0,0,0,0,24,9,0,0,207,0,0,0,208,0,0,0,186,0,0,0,90,0,0,0,91,0,0,0,70,0,0,0,71,0,0,0,72,0,0,0,73,0,0,0,92,0,0,0,74,0,0,0,75,0,0,0,0,0,0,0,56,9,0,0,209,0,0,0,210,0,0,0,186,0,0,0,93,0,0,0,94,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,79,0,0,0,95,0,0,0,80,0,0,0,81,0,0,0,0,0,0,0,88,9,0,0,211,0,0,0,212,0,0,0,186,0,0,0,96,0,0,0,97,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,98,0,0,0,86,0,0,0,87,0,0,0,0,0,0,0,120,9,0,0,213,0,0,0,214,0,0,0,186,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,160,9,0,0,215,0,0,0,216,0,0,0,186,0,0,0,5,0,0,0,6,0,0,0,0,0,0,0,200,9,0,0,217,0,0,0,218,0,0,0,186,0,0,0,1,0,0,0,37,0,0,0,0,0,0,0,240,9,0,0,219,0,0,0,220,0,0,0,186,0,0,0,2,0,0,0,38,0,0,0,0,0,0,0,24,10,0,0,221,0,0,0,222,0,0,0,186,0,0,0,20,0,0,0,7,0,0,0,88,0,0,0,0,0,0,0,64,10,0,0,223,0,0,0,224,0,0,0,186,0,0,0,21,0,0,0,8,0,0,0,89,0,0,0,0,0,0,0,152,10,0,0,225,0,0,0,226,0,0,0,186,0,0,0,3,0,0,0,4,0,0,0,11,0,0,0,99,0,0,0,100,0,0,0,12,0,0,0,101,0,0,0,0,0,0,0,96,10,0,0,225,0,0,0,227,0,0,0,186,0,0,0,3,0,0,0,4,0,0,0,11,0,0,0,99,0,0,0,100,0,0,0,12,0,0,0,101,0,0,0,0,0,0,0,200,10,0,0,228,0,0,0,229,0,0,0,186,0,0,0,5,0,0,0,6,0,0,0,13,0,0,0,102,0,0,0,103,0,0,0,14,0,0,0,104,0,0,0,0,0,0,0,8,11,0,0,230,0,0,0,231,0,0,0,186,0,0,0,0,0,0,0,24,11,0,0,232,0,0,0,233,0,0,0,186,0,0,0,40,0,0,0,22,0,0,0,41,0,0,0,23,0,0,0,42,0,0,0,9,0,0,0,24,0,0,0,15,0,0,0,0,0,0,0,96,11,0,0,234,0,0,0,235,0,0,0,186,0,0,0,105,0,0,0,106,0,0,0,90,0,0,0,91,0,0,0,92,0,0,0,0,0,0,0,112,11,0,0,236,0,0,0,237,0,0,0,186,0,0,0,107,0,0,0,108,0,0,0,93,0,0,0,94,0,0,0,95,0,0,0,102,0,0,0,97,0,0,0,108,0,0,0,115,0,0,0,101,0,0,0,0,0,0,0,116,0,0,0,114,0,0,0,117,0,0,0,101,0,0,0,0,0,0,0,0,0,0,0,48,7,0,0,225,0,0,0,238,0,0,0,186,0,0,0,0,0,0,0,64,11,0,0,225,0,0,0,239,0,0,0,186,0,0,0,25,0,0,0,10,0,0,0,11,0,0,0,12,0,0,0,43,0,0,0,26,0,0,0,44,0,0,0,27,0,0,0,45,0,0,0,13,0,0,0,28,0,0,0,16,0,0,0,0,0,0,0,168,10,0,0,225,0,0,0,240,0,0,0,186,0,0,0,7,0,0,0,8,0,0,0,17,0,0,0,109,0,0,0,110,0,0,0,18,0,0,0,111,0,0,0,0,0,0,0,232,10,0,0,225,0,0,0,241,0,0,0,186,0,0,0,9,0,0,0,10,0,0,0,19,0,0,0,112,0,0,0,113,0,0,0,20,0,0,0,114,0,0,0,0,0,0,0,112,10,0,0,225,0,0,0,242,0,0,0,186,0,0,0,3,0,0,0,4,0,0,0,11,0,0,0,99,0,0,0,100,0,0,0,12,0,0,0,101,0,0,0,0,0,0,0,112,8,0,0,72,0,0,0,73,0,0,0,74,0,0,0,75,0,0,0,76,0,0,0,77,0,0,0,78,0,0,0,0,0,0,0,160,8,0,0,80,0,0,0,81,0,0,0,82,0,0,0,83,0,0,0,84,0,0,0,85,0,0,0,86,0,0,0,0,0,0,0,168,11,0,0,243,0,0,0,244,0,0,0,12,0,0,0,2,0,0,0,229,146,0,0,0,0,0,0,208,11,0,0,245,0,0,0,246,0,0,0,247,0,0,0,248,0,0,0,29,0,0,0,9,0,0,0,1,0,0,0,16,0,0,0,0,0,0,0,248,11,0,0,245,0,0,0,249,0,0,0,247,0,0,0,248,0,0,0,29,0,0,0,10,0,0,0,2,0,0,0,17,0,0,0,0,0,0,0,8,12,0,0,250,0,0,0,251,0,0,0,115,0,0,0,0,0,0,0,24,12,0,0,252,0,0,0,253,0,0,0,116,0,0,0,0,0,0,0,40,12,0,0,254,0,0,0,255,0,0,0,12,0,0,0,0,0,0,0,56,12,0,0,252,0,0,0,0,1,0,0,116,0,0,0,0,0,0,0,72,12,0,0,21,0,0,0,1,1,0,0,117,0,0,0,0,0,0,0,120,12,0,0,245,0,0,0,2,1,0,0,247,0,0,0,248,0,0,0,30,0,0,0,0,0,0,0,144,12,0,0,245,0,0,0,3,1,0,0,247,0,0,0,248,0,0,0,29,0,0,0,11,0,0,0,3,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,3,32,2,32,2,32,2,32,2,32,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,1,96,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,8,216,4,192,4,192,4,192,4,192,4,192,4,192,4,192,8,213,8,213,8,213,8,213,8,213,8,213,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,8,197,4,192,4,192,4,192,4,192,4,192,4,192,8,214,8,214,8,214,8,214,8,214,8,214,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,8,198,4,192,4,192,4,192,4,192,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,86,105,115,117,97,108,105,115,97,116,105,111,110,0,104,116,116,112,58,47,47,112,117,114,108,46,111,114,103,47,111,110,116,111,108,111,103,121,47,97,102,47,83,112,101,99,116,114,111,103,114,97,109,0,104,116,116,112,58,47,47,112,117,114,108,46,111,114,103,47,111,110,116,111,108,111,103,121,47,97,102,47,67,104,114,111,109,97,103,114,97,109,0,78,111,116,101,115,0,104,116,116,112,58,47,47,112,117,114,108,46,111,114,103,47,111,110,116,111,108,111,103,121,47,97,102,47,67,104,111,114,100,83,101,103,109,101,110,116,0,104,116,116,112,58,47,47,112,117,114,108,46,111,114,103,47,111,110,116,111,108,111,103,121,47,97,102,47,84,111,110,97,108,67,104,97,110,103,101,68,101,116,101,99,116,105,111,110,70,117,110,99,116,105,111,110,0,75,101,121,32,97,110,100,32,84,111,110,97,108,105,116,121,0,104,116,116,112,58,47,47,112,117,114,108,46,111,114,103,47,111,110,116,111,108,111,103,121,47,97,102,47,77,117,115,105,99,83,101,103,109,101,110,116,0,78,49,51,112,105,112,101,114,95,118,97,109,112,95,106,115,49,54,80,105,112,101,114,65,100,97,112,116,101,114,66,97,115,101,73,49,48,78,78,76,83,67,104,114,111,109,97,69,69,0,78,49,51,112,105,112,101,114,95,118,97,109,112,95,106,115,50,49,80,105,112,101,114,65,100,97,112,116,101,114,73,110,116,101,114,102,97,99,101,69,0,58,0,78,49,51,112,105,112,101,114,95,118,97,109,112,95,106,115,49,54,80,105,112,101,114,65,100,97,112,116,101,114,66,97,115,101,73,56,67,104,111,114,100,105,110,111,69,69,0,78,49,51,112,105,112,101,114,95,118,97,109,112,95,106,115,49,54,80,105,112,101,114,65,100,97,112,116,101,114,66,97,115,101,73,54,84,117,110,105,110,103,69,69,0,78,49,48,112,105,112,101,114,95,118,97,109,112,50,54,67,111,117,110,116,105,110,103,80,108,117,103,105,110,72,97,110,100,108,101,77,97,112,112,101,114,69,0,78,49,48,112,105,112,101,114,95,118,97,109,112,49,56,80,108,117,103,105,110,72,97,110,100,108,101,77,97,112,112,101,114,69,0,78,49,48,112,105,112,101,114,95,118,97,109,112,50,54,65,115,115,105,103,110,101,100,80,108,117,103,105,110,72,97,110,100,108,101,77,97,112,112,101,114,69,0,78,49,51,112,105,112,101,114,95,118,97,109,112,95,106,115,49,50,80,105,112,101,114,65,100,97,112,116,101,114,73,49,48,78,78,76,83,67,104,114,111,109,97,69,69,0,78,49,51,112,105,112,101,114,95,118,97,109,112,95,106,115,49,50,80,105,112,101,114,65,100,97,112,116,101,114,73,56,67,104,111,114,100,105,110,111,69,69,0,78,49,51,112,105,112,101,114,95,118,97,109,112,95,106,115,49,50,80,105,112,101,114,65,100,97,112,116,101,114,73,54,84,117,110,105,110,103,69,69,0,105,110,118,97,108,105,100,32,106,115,111,110,58,32,0,111,98,106,101,99,116,32,101,120,112,101,99,116,101,100,32,97,116,32,116,111,112,32,108,101,118,101,108,0,109,97,112,58,58,97,116,58,32,32,107,101,121,32,110,111,116,32,102,111,117,110,100,0,102,97,105,108,101,100,32,116,111,32,99,111,110,115,116,114,117,99,116,32,112,108,117,103,105,110,32,119,105,116,104,32,107,101,121,32,0,110,111,32,97,100,97,112,116,101,114,32,102,111,114,32,112,108,117,103,105,110,32,107,101,121,32,0,99,111,110,102,105,103,117,114,97,116,105,111,110,32,102,97,105,108,101,100,32,40,119,114,111,110,103,32,99,104,97,110,110,101,108,32,99,111,117,110,116,44,32,115,116,101,112,32,115,105,122,101,44,32,98,108,111,99,107,32,115,105,122,101,63,41,0,117,110,107,110,111,119,110,32,112,108,117,103,105,110,32,104,97,110,100,108,101,0,112,108,117,103,105,110,32,104,97,115,32,110,111,116,32,98,101,101,110,32,99,111,110,102,105,103,117,114,101,100,0,104,97,110,100,108,101,0,102,101,97,116,117,114,101,115,0,112,114,111,99,101,115,115,0,109,101,116,104,111,100,0,114,101,115,117,108,116,0,105,100,0,102,101,97,116,117,114,101,86,97,108,117,101,115,0,108,97,98,101,108,0,116,105,109,101,115,116,97,109,112,0,100,117,114,97,116,105,111,110,0,110,0,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,48,49,50,51,52,53,54,55,56,57,43,47,0,115,116,97,114,116,95,98,105,116,32,43,32,98,105,116,115,95,99,111,117,110,116,32,60,32,49,54,0,47,104,111,109,101,47,99,97,110,110,97,109,47,99,111,100,101,47,102,108,97,114,112,47,112,105,112,101,114,45,118,97,109,112,45,106,115,45,98,117,105,108,100,115,47,101,120,116,47,112,105,112,101,114,45,118,97,109,112,45,106,115,47,46,46,47,112,105,112,101,114,45,118,97,109,112,45,99,112,112,47,101,120,116,47,98,97,115,101,45,110,47,105,110,99,108,117,100,101,47,98,97,115,101,110,46,104,112,112,0,101,120,116,114,97,99,116,95,111,118,101,114,108,97,112,112,105,110,103,95,98,105,116,115,0,50,46,48,0,106,115,111,110,114,112,99,0,108,105,115,116,0,108,111,97,100,0,99,111,110,102,105,103,117,114,101,0,102,105,110,105,115,104,0,105,110,118,97,108,105,100,0,99,111,100,101,0,109,101,115,115,97,103,101,0,101,114,114,111,114,32,105,110,32,0,32,114,101,113,117,101,115,116,58,32,0,101,114,114,111,114,0,117,110,107,110,111,119,110,32,111,114,32,105,110,118,97,108,105,100,32,112,108,117,103,105,110,32,104,97,110,100,108,101,0,112,108,117,103,105,110,32,104,97,115,32,97,108,114,101,97,100,121,32,98,101,101,110,32,99,111,110,102,105,103,117,114,101,100,0,119,114,111,110,103,32,110,117,109,98,101,114,32,111,102,32,99,104,97,110,110,101,108,115,32,115,117,112,112,108,105,101,100,0,119,114,111,110,103,32,98,108,111,99,107,32,115,105,122,101,32,115,117,112,112,108,105,101,100,0,105,110,118,97,108,105,100,32,114,101,113,117,101,115,116,0,112,97,114,97,109,115,0,115,116,114,105,110,103,32,101,120,112,101,99,116,101,100,32,102,111,114,32,109,101,116,104,111,100,0,101,120,112,101,99,116,101,100,32,118,97,108,117,101,32,34,0,34,32,102,111,114,32,116,121,112,101,0,111,98,106,101,99,116,32,101,120,112,101,99,116,101,100,32,102,111,114,32,112,97,114,97,109,115,0,110,117,109,98,101,114,32,111,114,32,115,116,114,105,110,103,32,101,120,112,101,99,116,101,100,32,102,111,114,32,105,100,0,115,116,114,105,110,103,32,101,120,112,101,99,116,101,100,32,102,111,114,32,106,115,111,110,114,112,99,0,117,110,101,120,112,101,99,116,101,100,32,102,105,101,108,100,32,34,0,34,32,105,110,32,114,112,99,32,114,101,113,117,101,115,116,32,111,98,106,101,99,116,0,112,114,111,99,101,115,115,73,110,112,117,116,0,109,97,108,102,111,114,109,101,100,32,112,114,111,99,101,115,115,32,114,101,113,117,101,115,116,58,32,0,105,110,112,117,116,66,117,102,102,101,114,115,0,101,120,112,101,99,116,101,100,32,97,114,114,97,121,115,32,111,114,32,115,116,114,105,110,103,115,32,105,110,32,105,110,112,117,116,66,117,102,102,101,114,115,32,97,114,114,97,121,0,105,110,118,97,108,105,100,32,86,97,109,112,58,58,82,101,97,108,84,105,109,101,32,111,98,106,101,99,116,32,0,70,97,105,108,101,100,32,116,111,32,99,111,110,102,105,103,117,114,101,32,112,108,117,103,105,110,0,111,117,116,112,117,116,76,105,115,116,0,115,116,101,112,83,105,122,101,0,98,108,111,99,107,83,105,122,101,0,102,114,97,109,105,110,103,0,98,97,115,105,99,0,115,116,97,116,105,99,0,99,111,110,102,105,103,117,114,101,100,0,117,110,105,116,0,79,110,101,83,97,109,112,108,101,80,101,114,83,116,101,112,0,70,105,120,101,100,83,97,109,112,108,101,82,97,116,101,0,86,97,114,105,97,98,108,101,83,97,109,112,108,101,82,97,116,101,0,115,97,109,112,108,101,84,121,112,101,0,115,97,109,112,108,101,82,97,116,101,0,104,97,115,68,117,114,97,116,105,111,110,0,98,105,110,67,111,117,110,116,0,98,105,110,78,97,109,101,115,0,101,120,116,101,110,116,115,0,113,117,97,110,116,105,122,101,83,116,101,112,0,109,105,110,0,109,97,120,0,116,121,112,101,85,82,73,0,105,100,101,110,116,105,102,105,101,114,0,110,97,109,101,0,100,101,115,99,114,105,112,116,105,111,110,0,99,111,110,102,105,103,117,114,97,116,105,111,110,0,109,97,108,102,111,114,109,101,100,32,99,111,110,102,105,103,117,114,97,116,105,111,110,32,114,101,113,117,101,115,116,58,32,0,99,104,97,110,110,101,108,67,111,117,110,116,0,109,97,108,102,111,114,109,101,100,32,112,108,117,103,105,110,32,99,111,110,102,105,103,117,114,97,116,105,111,110,58,32,0,109,97,108,102,111,114,109,101,100,32,102,114,97,109,105,110,103,58,32,0,112,97,114,97,109,101,116,101,114,86,97,108,117,101,115,0,111,98,106,101,99,116,32,101,120,112,101,99,116,101,100,32,102,111,114,32,112,97,114,97,109,101,116,101,114,32,118,97,108,117,101,115,0,110,117,109,98,101,114,32,101,120,112,101,99,116,101,100,32,102,111,114,32,112,97,114,97,109,101,116,101,114,32,118,97,108,117,101,0,99,117,114,114,101,110,116,80,114,111,103,114,97,109,0,115,116,114,105,110,103,32,101,120,112,101,99,116,101,100,32,102,111,114,32,112,114,111,103,114,97,109,32,110,97,109,101,0,70,97,105,108,101,100,32,116,111,32,108,111,97,100,32,112,108,117,103,105,110,0,115,116,97,116,105,99,68,97,116,97,0,100,101,102,97,117,108,116,67,111,110,102,105,103,117,114,97,116,105,111,110,0,107,101,121,0,109,97,107,101,114,0,114,105,103,104,116,115,0,118,101,114,115,105,111,110,0,99,97,116,101,103,111,114,121,0,109,105,110,67,104,97,110,110,101,108,67,111,117,110,116,0,109,97,120],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10280);allocate([67,104,97,110,110,101,108,67,111,117,110,116,0,112,97,114,97,109,101,116,101,114,115,0,112,114,111,103,114,97,109,115,0,84,105,109,101,68,111,109,97,105,110,0,70,114,101,113,117,101,110,99,121,68,111,109,97,105,110,0,105,110,112,117,116,68,111,109,97,105,110,0,98,97,115,105,99,79,117,116,112,117,116,73,110,102,111,0,115,116,97,116,105,99,79,117,116,112,117,116,73,110,102,111,0,100,101,102,97,117,108,116,86,97,108,117,101,0,118,97,108,117,101,78,97,109,101,115,0,69,82,82,79,82,58,32,68,117,112,108,105,99,97,116,101,32,112,108,117,103,105,110,32,104,97,110,100,108,101,32,0,32,102,111,114,32,112,108,117,103,105,110,32,0,32,40,97,108,114,101,97,100,121,32,117,115,101,100,32,102,111,114,32,112,108,117,103,105,110,32,0,68,117,112,108,105,99,97,116,101,32,112,108,117,103,105,110,32,104,97,110,100,108,101,0,78,49,48,112,105,112,101,114,95,118,97,109,112,50,55,68,101,102,97,117,108,116,80,108,117,103,105,110,79,117,116,112,117,116,73,100,77,97,112,112,101,114,69,0,78,49,48,112,105,112,101,114,95,118,97,109,112,50,48,80,108,117,103,105,110,79,117,116,112,117,116,73,100,77,97,112,112,101,114,69,0,78,83,116,51,95,95,50,50,48,95,95,115,104,97,114,101,100,95,112,116,114,95,101,109,112,108,97,99,101,73,78,49,48,112,105,112,101,114,95,118,97,109,112,50,55,68,101,102,97,117,108,116,80,108,117,103,105,110,79,117,116,112,117,116,73,100,77,97,112,112,101,114,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,50,95,69,69,69,69,0,105,110,112,117,116,83,97,109,112,108,101,82,97,116,101,0,109,97,108,102,111,114,109,101,100,32,108,111,97,100,32,114,101,113,117,101,115,116,58,32,0,97,100,97,112,116,101,114,70,108,97,103,115,0,97,114,114,97,121,32,101,120,112,101,99,116,101,100,32,102,111,114,32,97,100,97,112,116,101,114,32,102,108,97,103,115,0,115,116,114,105,110,103,32,101,120,112,101,99,116,101,100,32,102,111,114,32,97,100,97,112,116,101,114,32,102,108,97,103,0,65,100,97,112,116,73,110,112,117,116,68,111,109,97,105,110,0,65,100,97,112,116,67,104,97,110,110,101,108,67,111,117,110,116,0,65,100,97,112,116,66,117,102,102,101,114,83,105,122,101,0,65,100,97,112,116,65,108,108,83,97,102,101,0,65,100,97,112,116,65,108,108,0,105,110,118,97,108,105,100,32,97,100,97,112,116,101,114,32,102,108,97,103,32,115,116,114,105,110,103,58,32,0,97,118,97,105,108,97,98,108,101,0,102,114,111,109,0,97,114,114,97,121,32,101,120,112,101,99,116,101,100,32,102,111,114,32,102,114,111,109,32,102,105,101,108,100,0,115,116,114,105,110,103,32,101,120,112,101,99,116,101,100,32,102,111,114,32,101,108,101,109,101,110,116,32,105,110,32,102,114,111,109,32,97,114,114,97,121,0,117,110,107,110,111,119,110,32,111,114,32,117,110,101,120,112,101,99,116,101,100,32,114,101,113,117,101,115,116,47,114,101,115,112,111,110,115,101,32,116,121,112,101,32,34,0,34,0,108,101,110,75,101,114,110,101,108,32,37,32,50,32,33,61,32,48,0,47,104,111,109,101,47,99,97,110,110,97,109,47,99,111,100,101,47,102,108,97,114,112,47,112,105,112,101,114,45,118,97,109,112,45,106,115,45,98,117,105,108,100,115,47,101,120,116,47,110,110,108,115,45,99,104,114,111,109,97,47,99,104,114,111,109,97,109,101,116,104,111,100,115,46,99,112,112,0,83,112,101,99,105,97,108,67,111,110,118,111,108,117,116,105,111,110,0,44,59,32,0,61,0,99,104,111,114,100,46,100,105,99,116,0,86,65,77,80,95,80,65,84,72,0,36,72,79,77,69,47,118,97,109,112,58,36,72,79,77,69,47,46,118,97,109,112,58,47,117,115,114,47,108,111,99,97,108,47,108,105,98,47,118,97,109,112,58,47,117,115,114,47,108,105,98,47,118,97,109,112,0,72,79,77,69,0,36,72,79,77,69,0,47,0,114,0,109,0,109,55,98,53,0,54,0,55,0,109,97,106,55,0,109,55,0,109,54,0,100,105,109,0,97,117,103,0,58,109,105,110,0,58,104,100,105,109,55,0,58,109,97,106,54,0,58,55,0,58,109,97,106,55,0,58,109,105,110,55,0,58,109,105,110,54,0,58,100,105,109,0,58,97,117,103,0,35,0,118,97,108,105,100,95,0,46,46,47,101,120,116,47,118,97,109,112,45,98,117,105,108,100,45,97,110,100,45,116,101,115,116,47,68,69,80,69,78,68,69,78,67,73,69,83,47,103,101,110,101,114,105,99,47,105,110,99,108,117,100,101,47,98,111,111,115,116,47,116,111,107,101,110,95,105,116,101,114,97,116,111,114,46,104,112,112,0,100,101,114,101,102,101,114,101,110,99,101,0,73,78,70,73,78,73,84,89,0,105,110,99,114,101,109,101,110,116,0,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,62,32,0,50,0,98,51,0,51,0,52,0,53,0,98,55,0,105,110,105,116,105,97,108,105,122,101,100,95,0,46,46,47,101,120,116,47,118,97,109,112,45,98,117,105,108,100,45,97,110,100,45,116,101,115,116,47,68,69,80,69,78,68,69,78,67,73,69,83,47,103,101,110,101,114,105,99,47,105,110,99,108,117,100,101,47,98,111,111,115,116,47,105,111,115,116,114,101,97,109,115,47,100,101,116,97,105,108,47,111,112,116,105,111,110,97,108,46,104,112,112,0,111,112,101,114,97,116,111,114,42,0,78,53,98,111,111,115,116,57,105,111,115,116,114,101,97,109,115,49,55,98,97,115,105,99,95,102,105,108,101,95,115,111,117,114,99,101,73,99,69,69,0,78,53,98,111,111,115,116,57,105,111,115,116,114,101,97,109,115,49,48,98,97,115,105,99,95,102,105,108,101,73,99,69,69,0,110,111,32,119,114,105,116,101,32,97,99,99,101,115,115,0,78,53,98,111,111,115,116,57,101,120,99,101,112,116,105,111,110,69,0,78,53,98,111,111,115,116,49,54,101,120,99,101,112,116,105,111,110,95,100,101,116,97,105,108,49,48,99,108,111,110,101,95,105,109,112,108,73,78,83,48,95,49,57,101,114,114,111,114,95,105,110,102,111,95,105,110,106,101,99,116,111,114,73,78,83,116,51,95,95,50,56,105,111,115,95,98,97,115,101,55,102,97,105,108,117,114,101,69,69,69,69,69,0,78,53,98,111,111,115,116,49,54,101,120,99,101,112,116,105,111,110,95,100,101,116,97,105,108,49,48,99,108,111,110,101,95,98,97,115,101,69,0,78,53,98,111,111,115,116,49,54,101,120,99,101,112,116,105,111,110,95,100,101,116,97,105,108,49,57,101,114,114,111,114,95,105,110,102,111,95,105,110,106,101,99,116,111,114,73,78,83,116,51,95,95,50,56,105,111,115,95,98,97,115,101,55,102,97,105,108,117,114,101,69,69,69,0,112,120,32,33,61,32,48,0,46,46,47,101,120,116,47,118,97,109,112,45,98,117,105,108,100,45,97,110,100,45,116,101,115,116,47,68,69,80,69,78,68,69,78,67,73,69,83,47,103,101,110,101,114,105,99,47,105,110,99,108,117,100,101,47,98,111,111,115,116,47,115,109,97,114,116,95,112,116,114,47,115,104,97,114,101,100,95,112,116,114,46,104,112,112,0,111,112,101,114,97,116,111,114,45,62,0,112,117,116,98,97,99,107,32,98,117,102,102,101,114,32,102,117,108,108,0,78,53,98,111,111,115,116,57,105,111,115,116,114,101,97,109,115,54,100,101,116,97,105,108,49,56,105,110,100,105,114,101,99,116,95,115,116,114,101,97,109,98,117,102,73,78,83,48,95,49,55,98,97,115,105,99,95,102,105,108,101,95,115,111,117,114,99,101,73,99,69,69,78,83,116,51,95,95,50,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,53,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,78,83,48,95,49,52,105,110,112,117,116,95,115,101,101,107,97,98,108,101,69,69,69,0,78,53,98,111,111,115,116,57,105,111,115,116,114,101,97,109,115,54,100,101,116,97,105,108,49,54,108,105,110,107,101,100,95,115,116,114,101,97,109,98,117,102,73,99,78,83,116,51,95,95,50,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,53,98,111,111,115,116,57,105,111,115,116,114,101,97,109,115,49,51,115,116,114,101,97,109,95,98,117,102,102,101,114,73,78,83,48,95,49,55,98,97,115,105,99,95,102,105,108,101,95,115,111,117,114,99,101,73,99,69,69,78,83,116,51,95,95,50,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,52,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,78,83,48,95,49,52,105,110,112,117,116,95,115,101,101,107,97,98,108,101,69,69,69,0,78,53,98,111,111,115,116,57,105,111,115,116,114,101,97,109,115,54,100,101,116,97,105,108,49,49,115,116,114,101,97,109,95,98,97,115,101,73,78,83,48,95,49,55,98,97,115,105,99,95,102,105,108,101,95,115,111,117,114,99,101,73,99,69,69,78,83,116,51,95,95,50,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,53,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,78,83,53,95,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,99,83,55,95,69,69,69,69,0,78,53,98,111,111,115,116,49,54,98,97,115,101,95,102,114,111,109,95,109,101,109,98,101,114,73,78,83,95,57,105,111,115,116,114,101,97,109,115,49,51,115,116,114,101,97,109,95,98,117,102,102,101,114,73,78,83,49,95,49,55,98,97,115,105,99,95,102,105,108,101,95,115,111,117,114,99,101,73,99,69,69,78,83,116,51,95,95,50,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,53,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,78,83,49,95,49,52,105,110,112,117,116,95,115,101,101,107,97,98,108,101,69,69,69,76,105,48,69,69,69,0,78,53,98,111,111,115,116,57,105,111,115,116,114,101,97,109,115,54,115,116,114,101,97,109,73,78,83,48,95,49,55,98,97,115,105,99,95,102,105,108,101,95,115,111,117,114,99,101,73,99,69,69,78,83,116,51,95,95,50,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,52,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,78,83,116,51,95,95,50,49,53,98,97,115,105,99,95,115,116,114,105,110,103,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,78,83,116,51,95,95,50,49,57,98,97,115,105,99,95,111,115,116,114,105,110,103,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,71,35,0,68,98,0,68,35,0,65,35,0,69,35,0,66,35,0,71,98,0,67,98,0,49,0,78,53,98,111,111,115,116,49,54,101,120,99,101,112,116,105,111,110,95,100,101,116,97,105,108,49,48,99,108,111,110,101,95,105,109,112,108,73,78,83,48,95,49,57,101,114,114,111,114,95,105,110,102,111,95,105,110,106,101,99,116,111,114,73,78,83,95,49,54,98,97,100,95,108,101,120,105,99,97,108,95,99,97,115,116,69,69,69,69,69,0,78,53,98,111,111,115,116,49,54,101,120,99,101,112,116,105,111,110,95,100,101,116,97,105,108,49,57,101,114,114,111,114,95,105,110,102,111,95,105,110,106,101,99,116,111,114,73,78,83,95,49,54,98,97,100,95,108,101,120,105,99,97,108,95,99,97,115,116,69,69,69,0,78,53,98,111,111,115,116,49,54,98,97,100,95,108,101,120,105,99,97,108,95,99,97,115,116,69,0,98,97,100,32,108,101,120,105,99,97,108,32,99,97,115,116,58,32,115,111,117,114,99,101,32,116,121,112,101,32,118,97,108,117,101,32,99,111,117,108,100,32,110,111,116,32,98,101,32,105,110,116,101,114,112,114,101,116,101,100,32,97,115,32,116,97,114,103,101,116,0,78,83,116,51,95,95,50,49,50,98,97,115,105,99,95,115,116,114,105,110,103,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,0,78,83,116,51,95,95,50,50,49,95,95,98,97,115,105,99,95,115,116,114,105,110,103,95,99,111,109,109,111,110,73,76,98,49,69,69,69,0,78,53,98,111,111,115,116,54,100,101,116,97,105,108,49,55,98,97,115,105,99,95,117,110,108,111,99,107,101,100,98,117,102,73,78,83,116,51,95,95,50,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,50,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,99,69,69,0,78,53,98,111,111,115,116,54,100,101,116,97,105,108,49,54,98,97,115,105,99,95,112,111,105,110,116,101,114,98,117,102,73,99,78,83,116,51,95,95,50,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,50,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,97,108,114,101,97,100,121,32,111,112,101,110,0,112,32,61,61,32,48,32,124,124,32,112,32,33,61,32,112,120,0,114,101,115,101,116,0,78,53,98,111,111,115,116,54,100,101,116,97,105,108,49,55,115,112,95,99,111,117,110,116,101,100,95,105,109,112,108,95,112,73,78,83,95,57,105,111,115,116,114,101,97,109,115,49,48,98,97,115,105,99,95,102,105,108,101,73,99,69,52,105,109,112,108,69,69,69,0,78,53,98,111,111,115,116,54,100,101,116,97,105,108,49,53,115,112,95,99,111,117,110,116,101,100,95,98,97,115,101,69,0,78,83,116,51,95,95,50,49,51,98,97,115,105,99,95,102,105,108,101,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,50,49,51,98,97,115,105,99,95,102,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,99,104,114,111,109,97,110,111,114,109,97,108,105,122,101,0,112,114,101,115,101,116,0,99,104,114,111,109,97,32,110,111,114,109,97,108,105,122,97,116,105,111,110,0,72,111,119,32,115,104,97,108,108,32,116,104,101,32,99,104,114,111,109,97,32,118,101,99,116,111,114,32,98,101,32,110,111,114,109,97,108,105,122,101,100,63,0,110,111,110,101,0,109,97,120,105,109,117,109,32,110,111,114,109,0,76,49,32,110,111,114,109,0,76,50,32,110,111,114,109,0,71,80,76,0,77,97,116,116,104,105,97,115,32,77,97,117,99,104,0,56,78,78,76,83,66,97,115,101,0,78,49,49,95,86,97,109,112,80,108,117,103,105,110,52,86,97,109,112,54,80,108,117,103,105,110,69,0,78,49,49,95,86,97,109,112,80,108,117,103,105,110,52,86,97,109,112,49,48,80,108,117,103,105,110,66,97,115,101,69,0,108,111,103,102,114,101,113,115,112,101,99,0,76,111,103,45,70,114,101,113,117,101,110,99,121,32,83,112,101,99,116,114,117,109,0,65,32,76,111,103,45,70,114,101,113,117,101,110,99,121,32,83,112,101,99,116,114,117,109,32,40,99,111,110,115,116,97,110,116,32,81,41,32,116,104,97,116,32,105,115,32,111,98,116,97,105,110,101,100,32,98,121,32,99,111,115,105,110,101,32,102,105,108,116,101,114,32,109,97,112,112,105,110,103,46,0,116,117,110,101,100,108,111,103,102,114,101,113,115,112,101,99,0,84,117,110,101,100,32,76,111,103,45,70,114,101,113,117,101,110,99,121,32,83,112,101,99,116,114,117,109,0,65,32,76,111,103,45,70,114,101,113,117,101,110,99,121,32,83,112,101,99,116,114,117,109,32,40,99,111,110,115,116,97,110,116,32,81,41,32,116,104,97,116,32,105,115,32,111,98,116,97,105,110,101,100,32,98,121,32,99,111,115,105,110,101,32,102,105,108,116,101,114,32,109,97,112,112,105,110,103,44,32,116,104,101,110,32,105,116,115,32,116,117,110,101,100,32,117,115,105,110,103,32,116,104,101,32,101,115,116,105,109,97,116,101,100,32,116,117,110,105,110,103,32,102,114,101,113,117,101,110,99,121,46,0,115,101,109,105,116,111,110,101,115,112,101,99,116,114,117,109,0,83,101,109,105,116,111,110,101,32,83,112,101,99,116,114,117,109,0,65,32,115,101,109,105,116,111,110,101,45,115,112,97,99,101,100,32,108,111,103,45,102,114,101,113,117,101,110,99,121,32,115,112,101,99,116,114,117,109,32,100,101,114,105,118,101,100,32,102,114,111,109,32,116,104,101,32,116,104,105,114,100,45,111,102,45,97,45,115,101,109,105,116,111,110,101,45,115,112,97,99,101,100,32,116,117,110,101,100,32,108,111,103,45,102,114,101,113,117,101,110,99,121,32,115,112,101,99,116,114,117,109,46,0,99,104,114,111,109,97,0,67,104,114,111,109,97,103,114,97,109,0,84,117,110,105,110,103,45,97,100,106,117,115,116,101,100,32,99,104,114,111,109,97,103,114,97,109,32,102,114,111,109,32,78,78,76,83,32,97,112,112,114,111,120,105,109,97,116,101,32,116,114,97,110,115,99,114,105,112,116,105,111,110,44,32,119,105,116,104,32,97,110,32,101,109,112,104,97,115,105,115,32,111,110,32,116,104,101,32,109,101,100,105,117,109,32,110,111,116,101,32,114,97,110,103,101,46,0,98,97,115,115,99,104,114,111,109,97,0,66,97,115,115,32,67,104,114,111,109,97,103,114,97,109,0,84,117,110,105,110,103,45,97,100,106,117,115,116,101,100,32,98,97,115,115,32,99,104,114,111,109,97,103,114,97,109,32,102,114,111,109,32,78,78,76,83,32,97,112,112,114,111,120,105,109,97,116,101,32,116,114,97,110,115,99,114,105,112,116,105,111,110,44,32,119,105,116,104,32,97,110,32,101,109,112,104,97,115,105,115,32,111,110,32,116,104,101,32,98,97,115,115,32,110,111,116,101,32,114,97,110,103,101,46,0,98,111,116,104,99,104,114,111,109,97,0,67,104,114,111,109,97,103,114,97,109,32,97,110,100,32,66,97,115,115,32,67,104,114,111,109,97,103,114,97,109,0,84,117,110,105,110,103,45,97,100,106,117,115,116,101,100,32,99,104,114,111,109,97,103,114,97,109,32,97,110,100,32,98,97,115,115,32,99,104,114,111,109,97,103,114,97,109,32,40,115,116,97,99,107,101,100,32,111,110,32,116,111,112,32,111,102,32,101,97,99,104,32,111,116,104,101,114,41,32,102,114,111,109,32,78,78,76,83,32,97,112,112,114,111,120,105,109,97,116,101,32,116,114,97,110,115,99,114,105,112,116,105,111,110,46,0,65,32,32,40,98,97,115,115,41,0,66,98,32,40,98,97,115,115,41,0,66,32,32,40,98,97,115,115,41,0,67,32,32,40,98,97,115,115,41,0,67,35,32,40,98,97,115,115,41,0,68,32,32,40,98,97,115,115,41,0,69,98,32,40,98,97,115,115,41,0,69,32,32,40,98,97,115,115,41,0,70,32,32,40,98,97,115,115,41,0,70,35,32,40,98,97,115,115,41,0,71,32,32,40,98,97,115,115,41,0,65,98,32,40,98,97,115,115,41,0,65,0,66,98,0,66,0,67,35,0,68,0,69,98,0,69,0,70,0,70,35,0,71,0,65,98,0,84,104,105,115,32,112,108,117,103,105,110,32,112,114,111,118,105,100,101,115,32,97,32,110,117,109,98,101,114,32,111,102,32,102,101,97,116,117,114,101,115,32,100,101,114,105,118,101,100,32,102,114,111,109,32,97,32,68,70,84,45,98,97,115,101,100,32,108,111,103,45,102,114,101,113,117,101,110,99,121,32,97,109,112,108,105,116,117,100,101,32,115,112,101,99,116,114,117,109,58,32,115,111,109,101,32,118,97,114,105,97,110,116,115,32,111,102,32,116,104,101,32,108,111,103,45,102,114,101,113,117,101,110,99,121,32,115,112,101,99,116,114,117,109,44,32,105,110,99,108,117,100,105,110,103,32,97,32,115,101,109,105,116,111,110,101,32,115,112,101,99,116,114,117,109,32,100,101,114,105,118,101,100,32,102,114,111,109,32,97,112,112,114,111,120,105,109,97,116,101,32,116,114,97,110,115,99,114,105,112,116,105,111,110,32,117,115,105,110,103,32,116,104,101,32,78,78,76,83,32,97,108,103,111,114,105,116,104,109,59,32,97,110,100,32,98,97,115,101,100,32,111,110,32,116,104,105,115,32,115,101,109,105,116,111,110,101,32,115,112,101,99,116,114,117,109,44,32,100,105,102,102,101,114,101,110,116,32,99,104,114,111,109,97,32,102,101,97,116,117,114,101,115,46,0,78,78,76,83,32,67,104,114,111,109,97,0,110,110,108,115,45,99,104,114,111,109,97,0,49,48,78,78,76,83,67,104,114,111,109,97,0,101,115,116,105,109,97,116,101,100,32,116,117,110,105,110,103,58,32,37,48,46,49,102,32,72,122,0,69,82,82,79,82,58,32,110,101,103,97,116,105,118,101,32,118,97,108,117,101,32,105,110,32,108,111,103,102,114,101,113,32,115,112,101,99,116,114,117,109,0,87,65,82,78,73,78,71,58,32,105,110,116,101,114,105,109,32,99,104,114,111,109,97,32,99,111,110,116,97,105,110,115,32,101,120,116,114,101,109,101,32,99,104,111,114,100,32,118,97,108,117,101,32,0,44,32,99,108,105,112,112,105,110,103,32,116,104,105,115,32,97,110,100,32,97,110,121,32,111,116,104,101,114,115,32,116,104,97,116,32,97,112,112,101,97,114,0,78,0,115,105,109,112,108,101,99,104,111,114,100,0,67,104,111,114,100,32,69,115,116,105,109,97,116,101,0,69,115,116,105,109,97,116,101,100,32,99,104,111,114,100,32,116,105,109,101,115,32,97,110,100,32,108,97,98,101,108,115,46,0,99,104,111,114,100,110,111,116,101,115,0,78,111,116,101,32,82,101,112,114,101,115,101,110,116,97,116,105,111,110,32,111,102,32,67,104,111,114,100,32,69,115,116,105,109,97,116,101,0,65,32,115,105,109,112,108,101,32,114,101,112,114,101,115,101,110,116,97,116,105,111,110,32,111,102,32,116,104,101,32,101,115,116,105,109,97,116,101,100,32,99,104,111,114,100,32,119,105,116,104,32,98,97,115,115,32,110,111,116,101,32,40,105,102,32,97,112,112,108,105,99,97,98,108,101,41,32,97,110,100,32,99,104,111,114,100,32,110,111,116,101,115,46,0,77,73,68,73,32,117,110,105,116,115,0,104,97,114,109,111,110,105,99,99,104,97,110,103,101,0,72,97,114,109,111,110,105,99,32,67,104,97,110,103,101,32,86,97,108,117,101,0,65,110,32,105,110,100,105,99,97,116,105,111,110,32,111,102,32,116,104,101,32,108,105,107,101,108,105,104,111,111,100,32,111,102,32,104,97,114,109,111,110,105,99,32,99,104,97,110,103,101,46,32,68,101,112,101,110,100,115,32,111,110,32,116,104,101,32,99,104,111,114,100,32,100,105,99,116,105,111,110,97,114,121,46,32,67,97,108,99,117,108,97,116,105,111,110,32,105,115,32,100,105,102,102,101,114,101,110,116,32,100,101,112,101,110,100,105,110,103,32,111,110,32,119,104,101,116,104,101,114,32,116,104,101,32,86,105,116,101,114,98,105,32,97,108,103,111,114,105,116,104,109,32,105,115,32,117,115,101,100,32,102,111,114,32,99,104,111,114,100,32,101,115,116,105,109,97,116,105,111,110,44,32,111,114,32,116,104,101,32,115,105,109,112,108,101,32,99,104,111,114,100,32,101,115,116,105,109,97,116,101,46,0,108,111,103,108,105,107,101,108,105,104,111,111,100,0,76,111,103,45,76,105,107,101,108,105,104,111,111,100,32,111,102,32,67,104,111,114,100,32,69,115,116,105,109,97,116,101,0,76,111,103,97,114,105,116,104,109,32,111,102,32,116,104,101,32,108,105,107,101,108,105,104,111,111,100,32,118,97,108,117,101,32,111,102,32,116,104,101,32,115,105,109,112,108,101,32,99,104,111,114,100,32,101,115,116,105,109,97,116,101,46,0,117,115,101,78,78,76,83,0,117,115,101,32,97,112,112,114,111,120,105,109,97,116,101,32,116,114,97,110,115,99,114,105,112,116,105,111,110,32,40,78,78,76,83,41,0,84,111,103,103,108,101,115,32,97,112,112,114,111,120,105,109,97,116,101,32,116,114,97,110,115,99,114,105,112,116,105,111,110,32,40,78,78,76,83,41,46,0,116,117,110,105,110,103,109,111,100,101,0,116,117,110,105,110,103,32,109,111,100,101,0,84,117,110,105,110,103,32,99,97,110,32,98,101,32,112,101,114,102,111,114,109,101,100,32,108,111,99,97,108,108,121,32,111,114,32,111,110,32,116,104,101,32,119,104,111,108,101,32,101,120,116,114,97,99,116,105,111,110,32,115,101,103,109,101,110,116,46,32,76,111,99,97,108,32,116,117,110,105,110,103,32,105,115,32,111,110,108,121,32,97,100,118,105,115,97,98,108,101,32,119,104,101,110,32,116,104,101,32,116,117,110,105,110,103,32,105,115,32,108,105,107,101,108,121,32,116,111,32,99,104,97,110,103,101,32,111,118,101,114,32,116,104,101,32,97,117,100,105,111,44,32,102,111,114,32,101,120,97,109,112,108,101,32,105,110,32,112,111,100,99,97,115,116,115,44,32,111,114,32,105,110,32,97,32,99,97,112,112,101,108,108,97,32,115,105,110,103,105,110,103,46,0,103,108,111,98,97,108,32,116,117,110,105,110,103,0,108,111,99,97,108,32,116,117,110,105,110,103,0,119,104,105,116,101,110,105,110,103,0,115,112,101,99,116,114,97,108,32,119,104,105,116,101,110,105,110,103,0,83,112,101,99,116,114,97,108,32,119,104,105,116,101,110,105,110,103,58,32,110,111,32,119,104,105,116,101,110,105,110,103,32,45,32,48,59,32,119,104,105,116,101,110,105,110,103,32,45,32,49,46,0,115,0,115,112,101,99,116,114,97,108,32,115,104,97,112,101,0,68,101,116,101,114,109,105,110,101,115,32,104,111,119,32,105,110,100,105,118,105,100,117,97,108,32,110,111,116,101,115,32,105,110,32,116,104,101,32,110,111,116,101,32,100,105,99,116,105,111,110,97,114,121,32,108,111,111,107,58,32,104,105,103,104,101,114,32,118,97,108,117,101,115,32,109,101,97,110,32,109,111,114,101,32,100,111,109,105,110,97,110,116,32,104,105,103,104,101,114,32,104,97,114,109,111,110,105,99,115,46,0,98,111,111,115,116,110,0,98,111,111,115,116,32,78,0,66,111,111,115,116,32,108,105,107,101,108,105,104,111,111,100,32,111,102,32,116,104,101,32,78,32,40,110,111,32,99,104,111,114,100,41,32,108,97,98,101,108,46,0,117,115,101,104,97,114,116,101,115,121,110,116,97,120,0,117,115,101,32,72,97,114,116,101,32,115,121,110,116,97,120,0,85,115,101,32,116,104,101,32,99,104,111,114,100,32,115,121,110,116,97,120,32,112,114,111,112,111,115,101,100,32,98,121,32,72,97,114,116,101,0,110,111,0,121,101,115,0,67,104,111,114,100,105,110,111,32,112,114,111,118,105,100,101,115,32,97,32,115,105,109,112,108,101,32,99,104,111,114,100,32,116,114,97,110,115,99,114,105,112,116,105,111,110,32,98,97,115,101,100,32,111,110,32,78,78,76,83,32,67,104,114,111,109,97,32,40,97,115,32,105,110,32,116,104,101,32,78,78,76,83,32,67,104,114,111,109,97,32,112,108,117,103,105,110,41,46,32,67,104,111,114,100,32,112,114,111,102,105,108,101,115,32,103,105,118,101,110,32,98,121,32,116,104,101,32,117,115,101,114,32,105,110,32,116,104,101,32,102,105,108,101,32,99,104,111,114,100,46,100,105,99,116,32,97,114,101,32,117,115,101,100,32,116,111,32,99,97,108,99,117,108,97,116,101,32,102,114,97,109,101,45,119,105,115,101,32,99,104,111,114,100,32,115,105,109,105,108,97,114,105,116,105,101,115,46,32,65,32,115,105,109,112,108,101,32,40,110,111,110,45,115,116,97,116,101,45,111,102,45,116,104,101,45,97,114,116,33,41,32,97,108,103,111,114,105,116,104,109,32,115,109,111,111,116,104,115,32,116,104,101,115,101,32,116,111,32,112,114,111,118,105,100,101,32,97,32,99,104,111,114,100,32,116,114,97,110,115,99,114,105,112,116,105,111,110,32,117,115,105,110,103,32,97,32,115,116,97,110,100,97,114,100,32,72,77,77,47,86,105,116,101,114,98,105,32,97,112,112,114,111,97,99,104,46,0,67,104,111,114,100,105,110,111,0,99,104,111,114,100,105,110,111,0,56,67,104,111,114,100,105,110,111,0,37,48,46,49,102,32,72,122,0,116,117,110,105,110,103,0,84,117,110,105,110,103,0,82,101,116,117,114,110,115,32,97,32,115,105,110,103,108,101,32,108,97,98,101,108,32,40,97,116,32,116,105,109,101,32,48,32,115,101,99,111,110,100,115,41,32,99,111,110,116,97,105,110,105,110,103,32,97,110,32,101,115,116,105,109,97,116,101,32,111,102,32,116,104,101,32,99,111,110,99,101,114,116,32,112,105,116,99,104,32,105,110,32,72,122,46,0,72,122,0,108,111,99,97,108,116,117,110,105,110,103,0,76,111,99,97,108,32,84,117,110,105,110,103,0,82,101,116,117,114,110,115,32,97,32,116,117,110,105,110,103,32,101,115,116,105,109,97,116,101,32,97,116,32,101,118,101,114,121,32,97,110,97,108,121,115,105,115,32,102,114,97,109,101,44,32,97,110,32,97,118,101,114,97,103,101,32,111,102,32,116,104,101,32,40,114,101,99,101,110,116,41,32,112,114,101,118,105,111,117,115,32,102,114,97,109,101,45,119,105,115,101,32,101,115,116,105,109,97,116,101,115,32,111,102,32,116,104,101,32,99,111,110,99,101,114,116,32,112,105,116,99,104,32,105,110,32,72,122,46,0,114,111,108,108,111,110,0,98,97,115,115,32,110,111,105,115,101,32,116,104,114,101,115,104,111,108,100,0,67,111,110,115,105,100,101,114,32,116,104,101,32,99,117,109,117,108,97,116,105,118,101,32,101,110,101,114,103,121,32,115,112,101,99,116,114,117,109,32,40,102,114,111,109,32,108,111,119,32,116,111,32,104,105,103,104,32,102,114,101,113,117,101,110,99,105,101,115,41,46,32,65,108,108,32,98,105,110,115,32,98,101,108,111,119,32,116,104,101,32,102,105,114,115,116,32,98,105,110,32,119,104,111,115,101,32,99,117,109,117,108,97,116,105,118,101,32,101,110,101,114,103,121,32,101,120,99,101,101,100,115,32,116,104,101,32,113,117,97,110,116,105,108,101,32,91,98,97,115,115,32,110,111,105,115,101,32,116,104,114,101,115,104,111,108,100,93,32,120,32,91,116,111,116,97,108,32,101,110,101,114,103,121,93,32,119,105,108,108,32,98,101,32,115,101,116,32,116,111,32,48,46,32,65,32,116,104,114,101,115,104,111,108,100,32,118,97,108,117,101,32,111,102,32,48,32,109,101,97,110,115,32,116,104,97,116,32,110,111,32,98,105,110,115,32,119,105,108,108,32,98,101,32,99,104,97,110,103,101,100,46,0,37,0,84,104,101,32,116,117,110,105,110,103,32,112,108,117,103,105,110,32,99,97,110,32,101,115,116,105,109,97,116,101,32,116,104,101,32,108,111,99,97,108,32,97,110,100,32,103,108,111,98,97,108,32,116,117,110,105,110,103,32,111,102,32,112,105,101,99,101,46,32,84,104,101,32,115,97,109,101,32,116,117,110,105,110,103,32,109,101,116,104,111,100,32,105,115,32,117,115,101,100,32,102,111,114,32,116,104,101,32,78,78,76,83,32,67,104,114,111,109,97,32,97,110,100,32,67,104,111,114,100,105,110,111,32,112,108,117,103,105,110,115,46,0,54,84,117,110,105,110,103,0,69,82,82,79,82,58,32,109,97,116,114,105,120,32,115,105,122,101,115,32,105,110,99,111,110,115,105,115,116,101,110,116,46,0,78,57,95,86,97,109,112,72,111,115,116,52,86,97,109,112,54,80,108,117,103,105,110,69,0,78,57,95,86,97,109,112,72,111,115,116,52,86,97,109,112,49,48,80,108,117,103,105,110,66,97,115,101,69,0,80,108,117,103,105,110,66,117,102,102,101,114,105,110,103,65,100,97,112,116,101,114,58,58,112,114,111,99,101,115,115,58,32,69,82,82,79,82,58,32,80,108,117,103,105,110,32,104,97,115,32,110,111,116,32,98,101,101,110,32,105,110,105,116,105,97,108,105,115,101,100,0,87,65,82,78,73,78,71,58,32,80,108,117,103,105,110,66,117,102,102,101,114,105,110,103,65,100,97,112,116,101,114,58,58,73,109,112,108,58,58,112,114,111,99,101,115,115,58,32,0,66,117,102,102,101,114,32,111,118,101,114,102,108,111,119,58,32,119,114,111,116,101,32,0,32,111,102,32,0,32,105,110,112,117,116,32,115,97,109,112,108,101,115,32,40,102,111,114,32,112,108,117,103,105,110,32,115,116,101,112,32,115,105,122,101,32,0,44,32,98,108,111,99,107,32,115,105,122,101,32,0,41,0,80,108,117,103,105,110,66,117,102,102,101,114,105,110,103,65,100,97,112,116,101,114,58,58,105,110,105,116,105,97,108,105,115,101,58,32,105,110,112,117,116,32,115,116,101,112,83,105,122,101,32,109,117,115,116,32,98,101,32,101,113,117,97,108,32,116,111,32,98,108,111,99,107,83,105,122,101,32,102,111,114,32,116,104,105,115,32,97,100,97,112,116,101,114,32,40,115,116,101,112,83,105,122,101,32,61,32,0,44,32,98,108,111,99,107,83,105,122,101,32,61,32,0,80,108,117,103,105,110,66,117,102,102,101,114,105,110,103,65,100,97,112,116,101,114,58,58,105,110,105,116,105,97,108,105,115,101,58,32,87,65,82,78,73,78,71,58,32,115,116,101,112,32,115,105,122,101,32,0,32,105,115,32,103,114,101,97,116,101,114,32,116,104,97,110,32,98,108,111,99,107,32,115,105,122,101,32,0,58,32,99,97,110,110,111,116,32,104,97,110,100,108,101,32,116,104,105,115,32,105,110,32,97,100,97,112,116,101,114,59,32,97,100,106,117,115,116,105,110,103,32,98,108,111,99,107,32,115,105,122,101,32,116,111,32,0,78,57,95,86,97,109,112,72,111,115,116,52,86,97,109,112,55,72,111,115,116,69,120,116,50,50,80,108,117,103,105,110,66,117,102,102,101,114,105,110,103,65,100,97,112,116,101,114,52,73,109,112,108,49,48,82,105,110,103,66,117,102,102,101,114,69,0,70,101,97,116,117,114,101,32,69,120,116,114,97,99,116,105,111,110,32,80,108,117,103,105,110,0,78,57,95,86,97,109,112,72,111,115,116,52,86,97,109,112,55,72,111,115,116,69,120,116,50,50,80,108,117,103,105,110,66,117,102,102,101,114,105,110,103,65,100,97,112,116,101,114,69,0,78,57,95,86,97,109,112,72,111,115,116,52,86,97,109,112,55,72,111,115,116,69,120,116,50,48,80,108,117,103,105,110,67,104,97,110,110,101,108,65,100,97,112,116,101,114,69,0,107,105,115,115,32,102,102,116,32,117,115,97,103,101,32,101,114,114,111,114,58,32,105,109,112,114,111,112,101,114,32,97,108,108,111,99,10,0,87,65,82,78,73,78,71,58,32,80,108,117,103,105,110,73,110,112,117,116,68,111,109,97,105,110,65,100,97,112,116,101,114,58,58,105,110,105,116,105,97,108,105,115,101,58,32,98,108,111,99,107,115,105,122,101,32,60,32,50,32,110,111,116,0,115,117,112,112,111,114,116,101,100,44,32,105,110,99,114,101,97,115,105,110,103,32,102,114,111,109,32,0,32,116,111,32,50,0,87,65,82,78,73,78,71,58,32,80,108,117,103,105,110,73,110,112,117,116,68,111,109,97,105,110,65,100,97,112,116,101,114,58,58,105,110,105,116,105,97,108,105,115,101,58,32,111,100,100,32,98,108,111,99,107,115,105,122,101,32,110,111,116,0,32,116,111,32,0,69,82,82,79,82,58,32,80,108,117,103,105,110,73,110,112,117,116,68,111,109,97,105,110,65,100,97,112,116,101,114,58,58,105,110,105,116,105,97,108,105,115,101,58,32,98,108,111,99,107,115,105,122,101,32,60,32,50,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,69,82,82,79,82,58,32,80,108,117,103,105,110,73,110,112,117,116,68,111,109,97,105,110,65,100,97,112,116,101,114,58,58,105,110,105,116,105,97,108,105,115,101,58,32,111,100,100,32,98,108,111,99,107,115,105,122,101,32,0,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,82,101,97,108,32,70,70,84,32,111,112,116,105,109,105,122,97,116,105,111,110,32,109,117,115,116,32,98,101,32,101,118,101,110,46,10,0,78,57,95,86,97,109,112,72,111,115,116,54,87,105,110,100,111,119,73,100,69,69,0,78,57,95,86,97,109,112,72,111,115,116,52,86,97,109,112,55,72,111,115,116,69,120,116,50,52,80,108,117,103,105,110,73,110,112,117,116,68,111,109,97,105,110,65,100,97,112,116,101,114,69,0,78,57,95,86,97,109,112,72,111,115,116,52,86,97,109,112,55,72,111,115,116,69,120,116,49,51,80,108,117,103,105,110,87,114,97,112,112,101,114,69,0,69,82,82,79,82,58,32,78,97,78,47,73,110,102,32,112,97,115,115,101,100,32,116,111,32,86,97,109,112,58,58,82,101,97,108,84,105,109,101,58,58,102,114,111,109,83,101,99,111,110,100,115,0,78,54,106,115,111,110,49,49,49,49,74,115,111,110,66,111,111,108,101,97,110,69,0,78,54,106,115,111,110,49,49,53,86,97,108,117,101,73,76,78,83,95,52,74,115,111,110,52,84,121,112,101,69,50,69,98,69,69,0,78,83,116,51,95,95,50,50,48,95,95,115,104,97,114,101,100,95,112,116,114,95,101,109,112,108,97,99,101,73,78,54,106,115,111,110,49,49,49,49,74,115,111,110,66,111,111,108,101,97,110,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,50,95,69,69,69,69,0,110,117,108,108,0,78,54,106,115,111,110,49,49,56,74,115,111,110,78,117,108,108,69,0,78,54,106,115,111,110,49,49,53,86,97,108,117,101,73,76,78,83,95,52,74,115,111,110,52,84,121,112,101,69,48,69,78,83,95,49,48,78,117,108,108,83,116,114,117,99,116,69,69,69,0,78,83,116,51,95,95,50,50,48,95,95,115,104,97,114,101,100,95,112,116,114,95,101,109,112,108,97,99,101,73,78,54,106,115,111,110,49,49,56,74,115,111,110,78,117,108,108,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,50,95,69,69,69,69,0,78,54,106,115,111,110,49,49,57,74,115,111,110,86,97,108,117,101,69,0,78,54,106,115,111,110,49,49,53,86,97,108,117,101,73,76,78,83,95,52,74,115,111,110,52,84,121,112,101,69,52,69,78,83,116,51,95,95,50,54,118,101,99,116,111,114,73,83,49,95,78,83,51,95,57,97,108,108,111,99,97,116,111,114,73,83,49,95,69,69,69,69,69,69,0,91,0,44,32,0,93,0,78,54,106,115,111,110,49,49,57,74,115,111,110,65,114,114,97,121,69,0,78,54,106,115,111,110,49,49,53,86,97,108,117,101,73,76,78,83,95,52,74,115,111,110,52,84,121,112,101,69,53,69,78,83,116,51,95,95,50,51,109,97,112,73,78,83,51,95,49,50,98,97,115,105,99,95,115,116,114,105,110,103,73,99,78,83,51,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,51,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,83,49,95,78,83,51,95,52,108,101,115,115,73,83,65,95,69,69,78,83,56,95,73,78,83,51,95,52,112,97,105,114,73,75,83,65,95,83,49,95,69,69,69,69,69,69,69,69,0,123,0,125,0,92,92,0,92,34,0,92,98,0,92,102,0,92,110,0,92,114,0,92,116,0,92,117,37,48,52,120,0,92,117,50,48,50,56,0,92,117,50,48,50,57,0,78,54,106,115,111,110,49,49,49,48,74,115,111,110,79,98,106,101,99,116,69,0,37,46,49,55,103,0,78,54,106,115,111,110,49,49,49,48,74,115,111,110,68,111,117,98,108,101,69,0,78,54,106,115,111,110,49,49,53,86,97,108,117,101,73,76,78,83,95,52,74,115,111,110,52,84,121,112,101,69,49,69,100,69,69,0,78,83,116,51,95,95,50,50,48,95,95,115,104,97,114,101,100,95,112,116,114,95,101,109,112,108,97,99,101,73,78,54,106,115,111,110,49,49,49,48,74,115,111,110,68,111,117,98,108,101,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,50,95,69,69,69,69,0,37,100,0,78,54,106,115,111,110,49,49,55,74,115,111,110,73,110,116,69,0,78,54,106,115,111,110,49,49,53,86,97,108,117,101,73,76,78,83,95,52,74,115,111,110,52,84,121,112,101,69,49,69,105,69,69,0,78,83,116,51,95,95,50,50,48,95,95,115,104,97,114,101,100,95,112,116,114,95,101,109,112,108,97,99,101,73,78,54,106,115,111,110,49,49,55,74,115,111,110,73,110,116,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,50,95,69,69,69,69,0,78,54,106,115,111,110,49,49,49,48,74,115,111,110,83,116,114,105,110,103,69,0,78,54,106,115,111,110,49,49,53,86,97,108,117,101,73,76,78,83,95,52,74,115,111,110,52,84,121,112,101,69,51,69,78,83,116,51,95,95,50,49,50,98,97,115,105,99,95,115,116,114,105,110,103,73,99,78,83,51,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,78,83,51,95,57,97,108,108,111,99,97,116,111,114,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,50,48,95,95,115,104,97,114,101,100,95,112,116,114,95,101,109,112,108,97,99,101,73,78,54,106,115,111,110,49,49,49,48,74,115,111,110,83,116,114,105,110,103,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,50,95,69,69,69,69,0,78,83,116,51,95,95,50,50,48,95,95,115,104,97,114,101,100,95,112,116,114,95,101,109,112,108,97,99,101,73,78,54,106,115,111,110,49,49,57,74,115,111,110,65,114,114,97,121,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,50,95,69,69,69,69,0,78,83,116,51,95,95,50,50,48,95,95,115,104,97,114,101,100,95,112,116,114,95,101,109,112,108,97,99,101,73,78,54,106,115,111,110,49,49,49,48,74,115,111,110,79,98,106,101,99,116,69,78,83,95,57,97,108,108,111,99,97,116,111,114,73,83,50,95,69,69,69,69,0,39,37,99,39,32,40,37,100,41,0,40,37,100,41,0,117,110,101,120,112,101,99,116,101,100,32,116,114,97,105,108,105,110,103,32,0,117,110,101,120,112,101,99,116,101,100,32,101,110,100,32,111,102,32,105,110,112,117,116,32,97,102,116,101,114,32,115,116,97,114,116,32,111,102,32,99,111,109,109,101,110,116,0,117,110,101,120,112,101,99,116,101,100,32,101,110,100,32,111,102,32,105,110,112,117,116,32,105,110,115,105,100,101,32,109,117,108,116,105,45,108,105,110,101,32,99,111,109,109,101,110,116,0,109,97,108,102,111,114,109,101,100,32,99,111,109,109,101,110,116,0,101,120,99,101,101,100,101,100,32,109,97,120,105,109,117,109,32,110,101,115,116,105,110,103,32,100,101,112,116,104,0,108,101,97,100,105,110,103,32,48,115,32,110,111,116,32],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20520);allocate([112,101,114,109,105,116,116,101,100,32,105,110,32,110,117,109,98,101,114,115,0,105,110,118,97,108,105,100,32,0,32,105,110,32,110,117,109,98,101,114,0,97,116,32,108,101,97,115,116,32,111,110,101,32,100,105,103,105,116,32,114,101,113,117,105,114,101,100,32,105,110,32,102,114,97,99,116,105,111,110,97,108,32,112,97,114,116,0,97,116,32,108,101,97,115,116,32,111,110,101,32,100,105,103,105,116,32,114,101,113,117,105,114,101,100,32,105,110,32,101,120,112,111,110,101,110,116,0,101,120,112,101,99,116,101,100,32,39,34,39,32,105,110,32,111,98,106,101,99,116,44,32,103,111,116,32,0,101,120,112,101,99,116,101,100,32,39,58,39,32,105,110,32,111,98,106,101,99,116,44,32,103,111,116,32,0,101,120,112,101,99,116,101,100,32,39,44,39,32,105,110,32,111,98,106,101,99,116,44,32,103,111,116,32,0,101,120,112,101,99,116,101,100,32,39,44,39,32,105,110,32,108,105,115,116,44,32,103,111,116,32,0,101,120,112,101,99,116,101,100,32,118,97,108,117,101,44,32,103,111,116,32,0,117,110,101,120,112,101,99,116,101,100,32,101,110,100,32,111,102,32,105,110,112,117,116,32,105,110,32,115,116,114,105,110,103,0,117,110,101,115,99,97,112,101,100,32,0,32,105,110,32,115,116,114,105,110,103,0,98,97,100,32,92,117,32,101,115,99,97,112,101,58,32,0,105,110,118,97,108,105,100,32,101,115,99,97,112,101,32,99,104,97,114,97,99,116,101,114,32,0,105,32,33,61,32,48,0,47,104,111,109,101,47,99,97,110,110,97,109,47,99,111,100,101,47,102,108,97,114,112,47,112,105,112,101,114,45,118,97,109,112,45,106,115,45,98,117,105,108,100,115,47,101,120,116,47,112,105,112,101,114,45,118,97,109,112,45,99,112,112,47,101,120,116,47,106,115,111,110,49,49,47,106,115,111,110,49,49,46,99,112,112,0,101,120,112,101,99,116,0,112,97,114,115,101,32,101,114,114,111,114,58,32,101,120,112,101,99,116,101,100,32,0,44,32,103,111,116,32,0,117,110,101,120,112,101,99,116,101,100,32,101,110,100,32,111,102,32,105,110,112,117,116,0,101,120,112,101,99,116,101,100,32,74,83,79,78,32,111,98,106,101,99,116,44,32,103,111,116,32,0,98,97,100,32,116,121,112,101,32,102,111,114,32,0,32,105,110,32,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,0,0,0,18,18,18,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,45,43,32,32,32,48,88,48,120,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,78,65,78,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,46,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,105,110,102,105,110,105,116,121,0,110,97,110,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,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,255,255,255,255,255,255,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,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,4,7,3,6,5,0,114,119,97,0,76,67,95,65,76,76,0,76,67,95,67,84,89,80,69,0,0,0,0,76,67,95,78,85,77,69,82,73,67,0,0,76,67,95,84,73,77,69,0,0,0,0,0,76,67,95,67,79,76,76,65,84,69,0,0,76,67,95,77,79,78,69,84,65,82,89,0,76,67,95,77,69,83,83,65,71,69,83,0,76,65,78,71,0,67,46,85,84,70,45,56,0,80,79,83,73,88,0,77,85,83,76,95,76,79,67,80,65,84,72,0,78,83,116,51,95,95,50,56,105,111,115,95,98,97,115,101,69,0,78,83,116,51,95,95,50,57,98,97,115,105,99,95,105,111,115,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,50,57,98,97,115,105,99,95,105,111,115,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,50,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,50,49,53,98,97,115,105,99,95,115,116,114,101,97,109,98,117,102,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,50,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,50,49,51,98,97,115,105,99,95,105,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,50,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,78,83,116,51,95,95,50,49,51,98,97,115,105,99,95,111,115,116,114,101,97,109,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,0,78,83,116,51,95,95,50,49,52,98,97,115,105,99,95,105,111,115,116,114,101,97,109,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,0,117,110,115,112,101,99,105,102,105,101,100,32,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,32,101,114,114,111,114,0,105,111,115,116,114,101,97,109,0,78,83,116,51,95,95,50,49,57,95,95,105,111,115,116,114,101,97,109,95,99,97,116,101,103,111,114,121,69,0,78,83,116,51,95,95,50,56,105,111,115,95,98,97,115,101,55,102,97,105,108,117,114,101,69,0,78,83,116,51,95,95,50,49,49,95,95,115,116,100,111,117,116,98,117,102,73,119,69,69,0,78,83,116,51,95,95,50,49,49,95,95,115,116,100,111,117,116,98,117,102,73,99,69,69,0,117,110,115,117,112,112,111,114,116,101,100,32,108,111,99,97,108,101,32,102,111,114,32,115,116,97,110,100,97,114,100,32,105,110,112,117,116,0,78,83,116,51,95,95,50,49,48,95,95,115,116,100,105,110,98,117,102,73,119,69,69,0,78,83,116,51,95,95,50,49,48,95,95,115,116,100,105,110,98,117,102,73,99,69,69,0,78,83,116,51,95,95,50,55,99,111,108,108,97,116,101,73,99,69,69,0,78,83,116,51,95,95,50,54,108,111,99,97,108,101,53,102,97,99,101,116,69,0,78,83,116,51,95,95,50,55,99,111,108,108,97,116,101,73,119,69,69,0,48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102,65,66,67,68,69,70,120,88,43,45,112,80,105,73,110,78,0,37,112,0,67,0,78,83,116,51,95,95,50,55,110,117,109,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,57,95,95,110,117,109,95,103,101,116,73,99,69,69,0,78,83,116,51,95,95,50,49,52,95,95,110,117,109,95,103,101,116,95,98,97,115,101,69,0,78,83,116,51,95,95,50,55,110,117,109,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,57,95,95,110,117,109,95,103,101,116,73,119,69,69,0,37,112,0,0,0,0,76,0,108,108,0,37,0,0,0,0,0,108,0,78,83,116,51,95,95,50,55,110,117,109,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,57,95,95,110,117,109,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,50,49,52,95,95,110,117,109,95,112,117,116,95,98,97,115,101,69,0,78,83,116,51,95,95,50,55,110,117,109,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,57,95,95,110,117,109,95,112,117,116,73,119,69,69,0,37,72,58,37,77,58,37,83,0,37,109,47,37,100,47,37,121,0,37,73,58,37,77,58,37,83,32,37,112,0,37,97,32,37,98,32,37,100,32,37,72,58,37,77,58,37,83,32,37,89,0,65,77,0,80,77,0,74,97,110,117,97,114,121,0,70,101,98,114,117,97,114,121,0,77,97,114,99,104,0,65,112,114,105,108,0,77,97,121,0,74,117,110,101,0,74,117,108,121,0,65,117,103,117,115,116,0,83,101,112,116,101,109,98,101,114,0,79,99,116,111,98,101,114,0,78,111,118,101,109,98,101,114,0,68,101,99,101,109,98,101,114,0,74,97,110,0,70,101,98,0,77,97,114,0,65,112,114,0,74,117,110,0,74,117,108,0,65,117,103,0,83,101,112,0,79,99,116,0,78,111,118,0,68,101,99,0,83,117,110,100,97,121,0,77,111,110,100,97,121,0,84,117,101,115,100,97,121,0,87,101,100,110,101,115,100,97,121,0,84,104,117,114,115,100,97,121,0,70,114,105,100,97,121,0,83,97,116,117,114,100,97,121,0,83,117,110,0,77,111,110,0,84,117,101,0,87,101,100,0,84,104,117,0,70,114,105,0,83,97,116,0,37,109,47,37,100,47,37,121,37,89,45,37,109,45,37,100,37,73,58,37,77,58,37,83,32,37,112,37,72,58,37,77,37,72,58,37,77,58,37,83,37,72,58,37,77,58,37,83,78,83,116,51,95,95,50,56,116,105,109,101,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,99,69,69,0,78,83,116,51,95,95,50,57,116,105,109,101,95,98,97,115,101,69,0,78,83,116,51,95,95,50,56,116,105,109,101,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,50,48,95,95,116,105,109,101,95,103,101,116,95,99,95,115,116,111,114,97,103,101,73,119,69,69,0,78,83,116,51,95,95,50,56,116,105,109,101,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,49,48,95,95,116,105,109,101,95,112,117,116,69,0,78,83,116,51,95,95,50,56,116,105,109,101,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,48,69,69,69,0,78,83,116,51,95,95,50,49,48,109,111,110,101,121,95,98,97,115,101,69,0,78,83,116,51,95,95,50,49,48,109,111,110,101,121,112,117,110,99,116,73,99,76,98,49,69,69,69,0,78,83,116,51,95,95,50,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,48,69,69,69,0,78,83,116,51,95,95,50,49,48,109,111,110,101,121,112,117,110,99,116,73,119,76,98,49,69,69,69,0,48,49,50,51,52,53,54,55,56,57,0,37,76,102,0,78,83,116,51,95,95,50,57,109,111,110,101,121,95,103,101,116,73,99,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,49,49,95,95,109,111,110,101,121,95,103,101,116,73,99,69,69,0,48,49,50,51,52,53,54,55,56,57,0,78,83,116,51,95,95,50,57,109,111,110,101,121,95,103,101,116,73,119,78,83,95,49,57,105,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,49,49,95,95,109,111,110,101,121,95,103,101,116,73,119,69,69,0,37,46,48,76,102,0,78,83,116,51,95,95,50,57,109,111,110,101,121,95,112,117,116,73,99,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,99,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,99,69,69,69,69,69,69,0,78,83,116,51,95,95,50,49,49,95,95,109,111,110,101,121,95,112,117,116,73,99,69,69,0,78,83,116,51,95,95,50,57,109,111,110,101,121,95,112,117,116,73,119,78,83,95,49,57,111,115,116,114,101,97,109,98,117,102,95,105,116,101,114,97,116,111,114,73,119,78,83,95,49,49,99,104,97,114,95,116,114,97,105,116,115,73,119,69,69,69,69,69,69,0,78,83,116,51,95,95,50,49,49,95,95,109,111,110,101,121,95,112,117,116,73,119,69,69,0,78,83,116,51,95,95,50,56,109,101,115,115,97,103,101,115,73,99,69,69,0,78,83,116,51,95,95,50,49,51,109,101,115,115,97,103,101,115,95,98,97,115,101,69,0,78,83,116,51,95,95,50,49,55,95,95,119,105,100,101,110,95,102,114,111,109,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,50,55,99,111,100,101,99,118,116,73,68,105,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,50,49,50,99,111,100,101,99,118,116,95,98,97,115,101,69,0,78,83,116,51,95,95,50,49,54,95,95,110,97,114,114,111,119,95,116,111,95,117,116,102,56,73,76,106,51,50,69,69,69,0,78,83,116,51,95,95,50,56,109,101,115,115,97,103,101,115,73,119,69,69,0,78,83,116,51,95,95,50,55,99,111,100,101,99,118,116,73,99,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,50,55,99,111,100,101,99,118,116,73,119,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,50,55,99,111,100,101,99,118,116,73,68,115,99,49,49,95,95,109,98,115,116,97,116,101,95,116,69,69,0,78,83,116,51,95,95,50,54,108,111,99,97,108,101,53,95,95,105,109,112,69,0,78,83,116,51,95,95,50,53,99,116,121,112,101,73,99,69,69,0,78,83,116,51,95,95,50,49,48,99,116,121,112,101,95,98,97,115,101,69,0,78,83,116,51,95,95,50,53,99,116,121,112,101,73,119,69,69,0,102,97,108,115,101,0,116,114,117,101,0,78,83,116,51,95,95,50,56,110,117,109,112,117,110,99,116,73,99,69,69,0,78,83,116,51,95,95,50,56,110,117,109,112,117,110,99,116,73,119,69,69,0,33,34,118,101,99,116,111,114,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,117,115,114,47,108,105,98,47,101,109,115,99,114,105,112,116,101,110,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,118,101,99,116,111,114,0,78,83,116,51,95,95,50,49,52,95,95,115,104,97,114,101,100,95,99,111,117,110,116,69,0,78,83,116,51,95,95,50,49,57,95,95,115,104,97,114,101,100,95,119,101,97,107,95,99,111,117,110,116,69,0,33,34,98,97,115,105,99,95,115,116,114,105,110,103,32,108,101,110,103,116,104,95,101,114,114,111,114,34,0,47,117,115,114,47,108,105,98,47,101,109,115,99,114,105,112,116,101,110,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,115,116,114,105,110,103,0,95,95,116,104,114,111,119,95,108,101,110,103,116,104,95,101,114,114,111,114,0,33,34,98,97,115,105,99,95,115,116,114,105,110,103,32,111,117,116,95,111,102,95,114,97,110,103,101,34,0,95,95,116,104,114,111,119,95,111,117,116,95,111,102,95,114,97,110,103,101,0,33,34,97,108,108,111,99,97,116,111,114,60,84,62,58,58,97,108,108,111,99,97,116,101,58,58,98,97,100,95,97,108,108,111,99,34,0,47,117,115,114,47,108,105,98,47,101,109,115,99,114,105,112,116,101,110,47,115,121,115,116,101,109,47,105,110,99,108,117,100,101,47,108,105,98,99,120,120,47,109,101,109,111,114,121,0,97,108,108,111,99,97,116,101,0,78,83,116,51,95,95,50,49,52,101,114,114,111,114,95,99,97,116,101,103,111,114,121,69,0,78,83,116,51,95,95,50,49,50,115,121,115,116,101,109,95,101,114,114,111,114,69,0,78,83,116,51,95,95,50,49,50,95,95,100,111,95,109,101,115,115,97,103,101,69,0,58,32,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,58,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,101,120,99,101,112,116,105,111,110,32,111,102,32,116,121,112,101,32,37,115,0,116,101,114,109,105,110,97,116,105,110,103,32,119,105,116,104,32,37,115,32,102,111,114,101,105,103,110,32,101,120,99,101,112,116,105,111,110,0,116,101,114,109,105,110,97,116,105,110,103,0,117,110,99,97,117,103,104,116,0,83,116,57,101,120,99,101,112,116,105,111,110,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,54,95,95,115,104,105,109,95,116,121,112,101,95,105,110,102,111,69,0,83,116,57,116,121,112,101,95,105,110,102,111,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,48,95,95,115,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0,112,116,104,114,101,97,100,95,111,110,99,101,32,102,97,105,108,117,114,101,32,105,110,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,95,102,97,115,116,40,41,0,99,97,110,110,111,116,32,99,114,101,97,116,101,32,112,116,104,114,101,97,100,32,107,101,121,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,99,97,110,110,111,116,32,122,101,114,111,32,111,117,116,32,116,104,114,101,97,100,32,118,97,108,117,101,32,102,111,114,32,95,95,99,120,97,95,103,101,116,95,103,108,111,98,97,108,115,40,41,0,116,101,114,109,105,110,97,116,101,95,104,97,110,100,108,101,114,32,117,110,101,120,112,101,99,116,101,100,108,121,32,114,101,116,117,114,110,101,100,0,115,116,100,58,58,98,97,100,95,97,108,108,111,99,0,83,116,57,98,97,100,95,97,108,108,111,99,0,83,116,49,49,108,111,103,105,99,95,101,114,114,111,114,0,83,116,49,51,114,117,110,116,105,109,101,95,101,114,114,111,114,0,83,116,49,50,111,117,116,95,111,102,95,114,97,110,103,101,0,115,116,100,58,58,98,97,100,95,99,97,115,116,0,83,116,56,98,97,100,95,99,97,115,116,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,57,95,95,112,111,105,110,116,101,114,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,49,55,95,95,112,98,97,115,101,95,116,121,112,101,95,105,110,102,111,69,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,51,95,95,102,117,110,100,97,109,101,110,116,97,108,95,116,121,112,101,95,105,110,102,111,69,0,102,0,78,49,48,95,95,99,120,120,97,98,105,118,49,50,49,95,95,118,109,105,95,99,108,97,115,115,95,116,121,112,101,95,105,110,102,111,69,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+30760);var tempDoublePtr=STATICTOP;STATICTOP+=16;function _atexit(func,arg){__ATEXIT__.unshift({func:func,arg:arg})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}Module["_i64Subtract"]=_i64Subtract;function ___assert_fail(condition,filename,line,func){ABORT=true;throw"Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"]+" at "+stackTrace()}Module["_roundf"]=_roundf;function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0&&!info.rethrown){if(info.destructor){Module["dynCall_vi"](info.destructor,ptr)}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(Runtime.setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(Runtime.setTempRet0(0),thrown)|0}var typeArray=Array.prototype.slice.call(arguments);var pointer=Module["___cxa_is_pointer_type"](throwntype);if(!___cxa_find_matching_catch.buffer)___cxa_find_matching_catch.buffer=_malloc(4);HEAP32[___cxa_find_matching_catch.buffer>>2]=thrown;thrown=___cxa_find_matching_catch.buffer;for(var i=0;i<typeArray.length;i++){if(typeArray[i]&&Module["___cxa_can_catch"](typeArray[i],throwntype,thrown)){thrown=HEAP32[thrown>>2];info.adjusted=thrown;return(Runtime.setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(Runtime.setTempRet0(throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){EXCEPTIONS.infos[ptr]={ptr:ptr,adjusted:ptr,type:type,destructor:destructor,refcount:0,caught:false,rethrown:false};EXCEPTIONS.last=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}Module["_memset"]=_memset;Module["_pthread_mutex_lock"]=_pthread_mutex_lock;function __isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function __arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]);return sum}var __MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var __MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function __addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=__isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?Pointer_stringify(tm_zone):""};var pattern=Pointer_stringify(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value==="number"?value.toString():value||"";while(str.length<digits){str=character[0]+str}return str}function leadingNulls(value,digits){return leadingSomething(value,digits,"0")}function compareByDay(date1,date2){function sgn(value){return value<0?-1:value>0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}else{return thisDate.getFullYear()}}else{return thisDate.getFullYear()-1}}var EXPANSION_RULES_2={"%a":(function(date){return WEEKDAYS[date.tm_wday].substring(0,3)}),"%A":(function(date){return WEEKDAYS[date.tm_wday]}),"%b":(function(date){return MONTHS[date.tm_mon].substring(0,3)}),"%B":(function(date){return MONTHS[date.tm_mon]}),"%C":(function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)}),"%d":(function(date){return leadingNulls(date.tm_mday,2)}),"%e":(function(date){return leadingSomething(date.tm_mday,2," ")}),"%g":(function(date){return getWeekBasedYear(date).toString().substring(2)}),"%G":(function(date){return getWeekBasedYear(date)}),"%H":(function(date){return leadingNulls(date.tm_hour,2)}),"%I":(function(date){var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)}),"%j":(function(date){return leadingNulls(date.tm_mday+__arraySum(__isLeapYear(date.tm_year+1900)?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,date.tm_mon-1),3)}),"%m":(function(date){return leadingNulls(date.tm_mon+1,2)}),"%M":(function(date){return leadingNulls(date.tm_min,2)}),"%n":(function(){return"\n"}),"%p":(function(date){if(date.tm_hour>=0&&date.tm_hour<12){return"AM"}else{return"PM"}}),"%S":(function(date){return leadingNulls(date.tm_sec,2)}),"%t":(function(){return"\t"}),"%u":(function(date){var day=new Date(date.tm_year+1900,date.tm_mon+1,date.tm_mday,0,0,0,0);return day.getDay()||7}),"%U":(function(date){var janFirst=new Date(date.tm_year+1900,0,1);var firstSunday=janFirst.getDay()===0?janFirst:__addDays(janFirst,7-janFirst.getDay());var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstSunday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstSundayUntilEndJanuary=31-firstSunday.getDate();var days=firstSundayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstSunday,janFirst)===0?"01":"00"}),"%V":(function(date){var janFourthThisYear=new Date(date.tm_year+1900,0,4);var janFourthNextYear=new Date(date.tm_year+1901,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);var endDate=__addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);if(compareByDay(endDate,firstWeekStartThisYear)<0){return"53"}if(compareByDay(firstWeekStartNextYear,endDate)<=0){return"01"}var daysDifference;if(firstWeekStartThisYear.getFullYear()<date.tm_year+1900){daysDifference=date.tm_yday+32-firstWeekStartThisYear.getDate()}else{daysDifference=date.tm_yday+1-firstWeekStartThisYear.getDate()}return leadingNulls(Math.ceil(daysDifference/7),2)}),"%w":(function(date){var day=new Date(date.tm_year+1900,date.tm_mon+1,date.tm_mday,0,0,0,0);return day.getDay()}),"%W":(function(date){var janFirst=new Date(date.tm_year,0,1);var firstMonday=janFirst.getDay()===1?janFirst:__addDays(janFirst,janFirst.getDay()===0?1:7-janFirst.getDay()+1);var endDate=new Date(date.tm_year+1900,date.tm_mon,date.tm_mday);if(compareByDay(firstMonday,endDate)<0){var februaryFirstUntilEndMonth=__arraySum(__isLeapYear(endDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,endDate.getMonth()-1)-31;var firstMondayUntilEndJanuary=31-firstMonday.getDate();var days=firstMondayUntilEndJanuary+februaryFirstUntilEndMonth+endDate.getDate();return leadingNulls(Math.ceil(days/7),2)}return compareByDay(firstMonday,janFirst)===0?"01":"00"}),"%y":(function(date){return(date.tm_year+1900).toString().substring(2)}),"%Y":(function(date){return date.tm_year+1900}),"%z":(function(date){var off=date.tm_gmtoff;var ahead=off>=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)}),"%Z":(function(date){return date.tm_zone}),"%%":(function(){return"%"})};for(var rule in EXPANSION_RULES_2){if(pattern.indexOf(rule)>=0){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _strftime_l(s,maxsize,format,tm){return _strftime(s,maxsize,format,tm)}function _abort(){Module["abort"]()}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Module["dynCall_v"](func);_pthread_once.seen[ptr]=1}function ___lock(){}function ___unlock(){}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}Module["_i64Add"]=_i64Add;var PTHREAD_SPECIFIC_NEXT_KEY=1;var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};function _pthread_key_create(key,destructor){if(key==0){return ERRNO_CODES.EINVAL}HEAP32[key>>2]=PTHREAD_SPECIFIC_NEXT_KEY;PTHREAD_SPECIFIC[PTHREAD_SPECIFIC_NEXT_KEY]=0;PTHREAD_SPECIFIC_NEXT_KEY++;return 0}var _llvm_pow_f32=Math_pow;function __exit(status){Module["exit"](status)}function _exit(status){__exit(status)}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}var ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}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)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start<arr.length;start++){if(arr[start]!=="")break}var end=arr.length-1;for(;end>=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i<length;i++){if(fromParts[i]!==toParts[i]){samePartsLength=i;break}}var outputParts=[];for(var i=samePartsLength;i<fromParts.length;i++){outputParts.push("..")}outputParts=outputParts.concat(toParts.slice(samePartsLength));return outputParts.join("/")})};var TTY={ttys:[],init:(function(){}),shutdown:(function(){}),register:(function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)}),stream_ops:{open:(function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}stream.tty=tty;stream.seekable=false}),close:(function(stream){stream.tty.ops.flush(stream.tty)}),flush:(function(stream){stream.tty.ops.flush(stream.tty)}),read:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(ERRNO_CODES.ENXIO)}var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=stream.tty.ops.get_char(stream.tty)}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(ERRNO_CODES.EAGAIN)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead}),write:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.put_char){throw new FS.ErrnoError(ERRNO_CODES.ENXIO)}for(var i=0;i<length;i++){try{stream.tty.ops.put_char(stream.tty,buffer[offset+i])}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}}if(length){stream.node.timestamp=Date.now()}return i})},default_tty_ops:{get_char:(function(tty){if(!tty.input.length){var result=null;if(ENVIRONMENT_IS_NODE){var BUFSIZE=256;var buf=new Buffer(BUFSIZE);var bytesRead=0;var isPosixPlatform=process.platform!="win32";var fd=process.stdin.fd;if(isPosixPlatform){var usingDevice=false;try{fd=fs.openSync("/dev/stdin","r");usingDevice=true}catch(e){}}try{bytesRead=fs.readSync(fd,buf,0,BUFSIZE,null)}catch(e){if(e.toString().indexOf("EOF")!=-1)bytesRead=0;else throw e}if(usingDevice){fs.closeSync(fd)}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i<node.usedBytes;++i)arr.push(node.contents[i]);return arr}return node.contents}),getFileDataAsTypedArray:(function(node){if(!node.contents)return new Uint8Array;if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)}),expandFileStorage:(function(node,newCapacity){if(node.contents&&node.contents.subarray&&newCapacity>node.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)|0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.length<newCapacity)node.contents.push(0)}),resizeFileStorage:(function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}if(!node.contents)node.contents=[];if(node.contents.length>newSize)node.contents.length=newSize;else while(node.contents.length<newSize)node.contents.push(0);node.usedBytes=newSize}),node_ops:{getattr:(function(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}}),lookup:(function(parent,name){throw FS.genericErrors[ERRNO_CODES.ENOENT]}),mknod:(function(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)}),rename:(function(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}}}delete old_node.parent.contents[old_node.name];old_node.name=new_name;new_dir.contents[new_name]=old_node;old_node.parent=new_dir}),unlink:(function(parent,name){delete parent.contents[name]}),rmdir:(function(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}delete parent.contents[name]}),readdir:(function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries}),symlink:(function(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node}),readlink:(function(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return node.link})},stream_ops:{read:(function(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size}),write:(function(stream,buffer,offset,length,position,canOwn){if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=new Uint8Array(buffer.subarray(offset,offset+length));node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray)node.contents.set(buffer.subarray(offset,offset+length),position);else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position}),allocate:(function(stream,offset,length){MEMFS.expandFileStorage(stream.node,offset+length);stream.node.usedBytes=Math.max(stream.node.usedBytes,offset+length)}),mmap:(function(stream,buffer,offset,length,position,prot,flags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}var ptr;var allocated;var contents=stream.node.contents;if(!(flags&2)&&(contents.buffer===buffer||contents.buffer===buffer.buffer)){allocated=false;ptr=contents.byteOffset}else{if(position>0||position+length<stream.node.usedBytes){if(contents.subarray){contents=contents.subarray(position,position+length)}else{contents=Array.prototype.slice.call(contents,position,position+length)}}allocated=true;ptr=_malloc(length);if(!ptr){throw new FS.ErrnoError(ERRNO_CODES.ENOMEM)}buffer.set(contents,ptr)}return{ptr:ptr,allocated:allocated}}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(mmapFlags&2){return 0}var bytesWritten=MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0})}};var IDBFS={dbs:{},indexedDB:(function(){if(typeof indexedDB!=="undefined")return indexedDB;var ret=null;if(typeof window==="object")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;assert(ret,"IDBFS used, but indexedDB not supported");return ret}),DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:(function(mount){return MEMFS.mount.apply(null,arguments)}),syncfs:(function(mount,populate,callback){IDBFS.getLocalSet(mount,(function(err,local){if(err)return callback(err);IDBFS.getRemoteSet(mount,(function(err,remote){if(err)return callback(err);var src=populate?remote:local;var dst=populate?local:remote;IDBFS.reconcile(src,dst,callback)}))}))}),getDB:(function(name,callback){var db=IDBFS.dbs[name];if(db){return callback(null,db)}var req;try{req=IDBFS.indexedDB().open(name,IDBFS.DB_VERSION)}catch(e){return callback(e)}if(!req){return callback("Unable to connect to IndexedDB")}req.onupgradeneeded=(function(e){var db=e.target.result;var transaction=e.target.transaction;var fileStore;if(db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)){fileStore=transaction.objectStore(IDBFS.DB_STORE_NAME)}else{fileStore=db.createObjectStore(IDBFS.DB_STORE_NAME)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}});req.onsuccess=(function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),getLocalSet:(function(mount,callback){var entries={};function isRealDir(p){return p!=="."&&p!==".."}function toAbsolute(root){return(function(p){return PATH.join2(root,p)})}var check=FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint));while(check.length){var path=check.pop();var stat;try{stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){check.push.apply(check,FS.readdir(path).filter(isRealDir).map(toAbsolute(path)))}entries[path]={timestamp:stat.mtime}}return callback(null,{type:"local",entries:entries})}),getRemoteSet:(function(mount,callback){var entries={};IDBFS.getDB(mount.mountpoint,(function(err,db){if(err)return callback(err);var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readonly");transaction.onerror=(function(e){callback(this.error);e.preventDefault()});var store=transaction.objectStore(IDBFS.DB_STORE_NAME);var index=store.index("timestamp");index.openKeyCursor().onsuccess=(function(event){var cursor=event.target.result;if(!cursor){return callback(null,{type:"remote",db:db,entries:entries})}entries[cursor.primaryKey]={timestamp:cursor.key};cursor.continue()})}))}),loadLocalEntry:(function(path,callback){var stat,node;try{var lookup=FS.lookupPath(path);node=lookup.node;stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){return callback(null,{timestamp:stat.mtime,mode:stat.mode})}else if(FS.isFile(stat.mode)){node.contents=MEMFS.getFileDataAsTypedArray(node);return callback(null,{timestamp:stat.mtime,mode:stat.mode,contents:node.contents})}else{return callback(new Error("node type not supported"))}}),storeLocalEntry:(function(path,entry,callback){try{if(FS.isDir(entry.mode)){FS.mkdir(path,entry.mode)}else if(FS.isFile(entry.mode)){FS.writeFile(path,entry.contents,{encoding:"binary",canOwn:true})}else{return callback(new Error("node type not supported"))}FS.chmod(path,entry.mode);FS.utime(path,entry.timestamp,entry.timestamp)}catch(e){return callback(e)}callback(null)}),removeLocalEntry:(function(path,callback){try{var lookup=FS.lookupPath(path);var stat=FS.stat(path);if(FS.isDir(stat.mode)){FS.rmdir(path)}else if(FS.isFile(stat.mode)){FS.unlink(path)}}catch(e){return callback(e)}callback(null)}),loadRemoteEntry:(function(store,path,callback){var req=store.get(path);req.onsuccess=(function(event){callback(null,event.target.result)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),storeRemoteEntry:(function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),removeRemoteEntry:(function(store,path,callback){var req=store.delete(path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),reconcile:(function(src,dst,callback){var total=0;var create=[];Object.keys(src.entries).forEach((function(key){var e=src.entries[key];var e2=dst.entries[key];if(!e2||e.timestamp>e2.timestamp){create.push(key);total++}}));var remove=[];Object.keys(dst.entries).forEach((function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}}));if(!total){return callback(null)}var completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&146)>>1}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsToPermissionStringMap:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},flagsToPermissionString:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;if(flags in NODEFS.flagsToPermissionStringMap){return NODEFS.flagsToPermissionStringMap[flags]}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsToPermissionString(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;var nbuffer=new Buffer(length);var res;try{res=fs.readSync(stream.nfd,nbuffer,0,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(res>0){for(var i=0;i<res;i++){buffer[offset+i]=nbuffer[i]}}return res}),write:(function(stream,buffer,offset,length,position){var nbuffer=new Buffer(buffer.subarray(offset,offset+length));var res;try{res=fs.writeSync(stream.nfd,nbuffer,0,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}return res}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i<parts.length-1;i++){var curr=parts.slice(0,i+1).join("/");if(!createdParents[curr]){createdParents[curr]=WORKERFS.createNode(parent,parts[i],WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],(function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)}));(mount.opts["blobs"]||[]).forEach((function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])}));(mount.opts["packages"]||[]).forEach((function(pack){pack["metadata"].files.forEach((function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))}))}));return root}),createNode:(function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node}),node_ops:{getattr:(function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}}),lookup:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}),mknod:(function(parent,name,mode,dev){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rename:(function(oldNode,newDir,newName){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),unlink:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rmdir:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readdir:(function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries}),symlink:(function(parent,newName,oldPath){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readlink:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)})},stream_ops:{read:(function(stream,buffer,offset,length,position){if(position>=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count});current=lookup.node;if(count++>40){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i<name.length;i++){hash=(hash<<5)-hash+name.charCodeAt(i)|0}return(parentid+hash>>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdirTree:(function(path,mode){var dirs=path.split("/");var d="";for(var i=0;i<dirs.length;++i){if(!dirs[i])continue;d+="/"+dirs[i];try{FS.mkdir(d,mode)}catch(e){if(e.errno!=ERRNO_CODES.EEXIST)throw e}}}),mkdev:(function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)}),symlink:(function(oldpath,newpath){if(!PATH.resolve(oldpath)){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var newname=PATH.basename(newpath);var err=FS.mayCreate(parent,newname);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.symlink(parent,newname,oldpath)}),rename:(function(old_path,new_path){var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;try{lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!old_dir||!new_dir)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(ERRNO_CODES.EXDEV)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}relative=PATH.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}err=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(err){throw new FS.ErrnoError(err)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(new_dir!==old_dir){err=FS.nodePermissions(old_dir,"w");if(err){throw new FS.ErrnoError(err)}}try{if(FS.trackingDelegate["willMovePath"]){FS.trackingDelegate["willMovePath"](old_path,new_path)}}catch(e){console.log("FS.trackingDelegate['willMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}try{if(FS.trackingDelegate["onMovePath"])FS.trackingDelegate["onMovePath"](old_path,new_path)}catch(e){console.log("FS.trackingDelegate['onMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}}),rmdir:(function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,true);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}}),readdir:(function(path){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}return node.node_ops.readdir(node)}),unlink:(function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,false);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.unlink(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}}),readlink:(function(path){var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!link.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))}),stat:(function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!node.node_ops.getattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return node.node_ops.getattr(node)}),lstat:(function(path){return FS.stat(path,true)}),chmod:(function(path,mode,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})}),lchmod:(function(path,mode){FS.chmod(path,mode,true)}),fchmod:(function(fd,mode){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}FS.chmod(stream.node,mode)}),chown:(function(path,uid,gid,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}node.node_ops.setattr(node,{timestamp:Date.now()})}),lchown:(function(path,uid,gid){FS.chown(path,uid,gid,true)}),fchown:(function(fd,uid,gid){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}FS.chown(stream.node,uid,gid)}),truncate:(function(path,len){if(len<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.nodePermissions(node,"w");if(err){throw new FS.ErrnoError(err)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})}),ftruncate:(function(fd,len){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}FS.truncate(stream.node,len)}),utime:(function(path,atime,mtime){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})}),open:(function(path,flags,mode,fd_start,fd_end){if(path===""){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}flags=typeof flags==="string"?FS.modeStringToFlags(flags):flags;mode=typeof mode==="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;Module["printErr"]("read file: "+path)}}try{if(FS.trackingDelegate["onOpenFile"]){var trackingFlags=0;if((flags&2097155)!==1){trackingFlags|=FS.tracking.openFlags.READ}if((flags&2097155)!==0){trackingFlags|=FS.tracking.openFlags.WRITE}FS.trackingDelegate["onOpenFile"](path,trackingFlags)}}catch(e){console.log("FS.trackingDelegate['onOpenFile']('"+path+"', flags) threw an exception: "+e.message)}return stream}),close:(function(stream){if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}}),llseek:(function(stream,offset,whence){if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position}),read:(function(stream,buffer,offset,length,position){if(length<0||position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!stream.stream_ops.read){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var seeking=true;if(typeof position==="undefined"){position=stream.position;seeking=false}else if(!stream.seekable){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead}),write:(function(stream,buffer,offset,length,position,canOwn){if(length<0||position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!stream.stream_ops.write){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if(stream.flags&1024){FS.llseek(stream,0,2)}var seeking=true;if(typeof position==="undefined"){position=stream.position;seeking=false}else if(!stream.seekable){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;try{if(stream.path&&FS.trackingDelegate["onWriteToFile"])FS.trackingDelegate["onWriteToFile"](stream.path)}catch(e){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+e.message)}return bytesWritten}),allocate:(function(stream,offset,length){if(offset<0||length<=0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}stream.stream_ops.allocate(stream,offset,length)}),mmap:(function(stream,buffer,offset,length,position,prot,flags){if((stream.flags&2097155)===1){throw new FS.ErrnoError(ERRNO_CODES.EACCES)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}return stream.stream_ops.mmap(stream,buffer,offset,length,position,prot,flags)}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)}),munmap:(function(stream){return 0}),ioctl:(function(stream,cmd,arg){if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(ERRNO_CODES.ENOTTY)}return stream.stream_ops.ioctl(stream,cmd,arg)}),readFile:(function(path,opts){opts=opts||{};opts.flags=opts.flags||"r";opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret}),writeFile:(function(path,data,opts){opts=opts||{};opts.flags=opts.flags||"w";opts.encoding=opts.encoding||"utf8";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var stream=FS.open(path,opts.flags,opts.mode);if(opts.encoding==="utf8"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,0,opts.canOwn)}else if(opts.encoding==="binary"){FS.write(stream,data,0,data.length,0,opts.canOwn)}FS.close(stream)}),cwd:(function(){return FS.currentPath}),chdir:(function(path){var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}var err=FS.nodePermissions(lookup.node,"x");if(err){throw new FS.ErrnoError(err)}FS.currentPath=lookup.path}),createDefaultDirectories:(function(){FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")}),createDefaultDevices:(function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:(function(){return 0}),write:(function(stream,buffer,offset,length,pos){return length})});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto!=="undefined"){var randomBuffer=new Uint8Array(1);random_device=(function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]})}else if(ENVIRONMENT_IS_NODE){random_device=(function(){return require("crypto").randomBytes(1)[0]})}else{random_device=(function(){return Math.random()*256|0})}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")}),createSpecialDirectories:(function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:(function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:(function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:(function(){return stream.path})}};ret.parent=ret;return ret})};return node})},{},"/proc/self/fd")}),createStandardStreams:(function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");var stderr=FS.open("/dev/stderr","w");assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")}),ensureErrnoError:(function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=(function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}});this.setErrno(errno);this.message=ERRNO_MESSAGES[errno]};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[ERRNO_CODES.ENOENT].forEach((function(code){FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS,"IDBFS":IDBFS,"NODEFS":NODEFS,"WORKERFS":WORKERFS}}),init:(function(input,output,error){assert(!FS.init.initialized,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");FS.init.initialized=true;FS.ensureErrnoError();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module["_fflush"];if(fflush)fflush(0);for(var i=0;i<FS.streams.length;i++){var stream=FS.streams[i];if(!stream){continue}FS.close(stream)}}),getMode:(function(canRead,canWrite){var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode}),joinPath:(function(parts,forceRelative){var path=PATH.join.apply(null,parts);if(forceRelative&&path[0]=="/")path=path.substr(1);return path}),absolutePath:(function(relative,base){return PATH.resolve(base,relative)}),standardizePath:(function(path){return PATH.normalize(path)}),findObject:(function(path,dontResolveLastLink){var ret=FS.analyzePath(path,dontResolveLastLink);if(ret.exists){return ret.object}else{___setErrNo(ret.error);return null}}),analyzePath:(function(path,dontResolveLastLink){try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path==="/"}catch(e){ret.error=e.errno}return ret}),createFolder:(function(parent,name,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.mkdir(path,mode)}),createPath:(function(parent,path,canRead,canWrite){parent=typeof parent==="string"?parent:FS.getPath(parent);var parts=path.split("/").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){}parent=current}return current}),createFile:(function(parent,name,properties,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.create(path,mode)}),createDataFile:(function(parent,name,data,canRead,canWrite,canOwn){var path=name?PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name):parent;var mode=FS.getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data==="string"){var arr=new Array(data.length);for(var i=0,len=data.length;i<len;++i)arr[i]=data.charCodeAt(i);data=arr}FS.chmod(node,mode|146);var stream=FS.open(node,"w");FS.write(stream,data,0,data.length,0,canOwn);FS.close(stream);FS.chmod(node,mode)}return node}),createDevice:(function(parent,name,input,output){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(!!input,!!output);if(!FS.createDevice.major)FS.createDevice.major=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open:(function(stream){stream.seekable=false}),close:(function(stream){if(output&&output.buffer&&output.buffer.length){output(10)}}),read:(function(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(ERRNO_CODES.EAGAIN)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead}),write:(function(stream,buffer,offset,length,pos){for(var i=0;i<length;i++){try{output(buffer[offset+i])}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}}if(length){stream.node.timestamp=Date.now()}return i})});return FS.mkdev(path,mode,dev)}),createLink:(function(parent,name,target,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);return FS.symlink(target,path)}),forceLoadFile:(function(obj){if(obj.isDevice||obj.isFolder||obj.link||obj.contents)return true;var success=true;if(typeof XMLHttpRequest!=="undefined"){throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.")}else if(Module["read"]){try{obj.contents=intArrayFromString(Module["read"](obj.url),true);obj.usedBytes=obj.contents.length}catch(e){success=false}}else{throw new Error("Cannot load without read() or XMLHttpRequest.")}if(!success)___setErrNo(ERRNO_CODES.EIO);return success}),createLazyFile:(function(parent,name,url,canRead,canWrite){function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size};node.stream_ops=stream_ops;return node}),createPreloadedFile:(function(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){Browser.init();var fullname=name?PATH.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}var handled=false;Module["preloadPlugins"].forEach((function(plugin){if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,(function(){if(onerror)onerror();removeRunDependency(dep)}));handled=true}}));if(!handled)finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){Browser.asyncLoad(url,(function(byteArray){processData(byteArray)}),onerror)}else{processData(url)}}),indexedDB:(function(){return window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB}),DB_NAME:(function(){return"EM_FS_"+window.location.pathname}),DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:(function(paths,onload,onerror){onload=onload||(function(){});onerror=onerror||(function(){});var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=function openRequest_onupgradeneeded(){console.log("creating db");var db=openRequest.result;db.createObjectStore(FS.DB_STORE_NAME)};openRequest.onsuccess=function openRequest_onsuccess(){var db=openRequest.result;var transaction=db.transaction([FS.DB_STORE_NAME],"readwrite");var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach((function(path){var putRequest=files.put(FS.analyzePath(path).object.contents,path);putRequest.onsuccess=function putRequest_onsuccess(){ok++;if(ok+fail==total)finish()};putRequest.onerror=function putRequest_onerror(){fail++;if(ok+fail==total)finish()}}));transaction.onerror=onerror};openRequest.onerror=onerror}),loadFilesFromDB:(function(paths,onload,onerror){onload=onload||(function(){});onerror=onerror||(function(){});var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=onerror;openRequest.onsuccess=function openRequest_onsuccess(){var db=openRequest.result;try{var transaction=db.transaction([FS.DB_STORE_NAME],"readonly")}catch(e){onerror(e);return}var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach((function(path){var getRequest=files.get(path);getRequest.onsuccess=function getRequest_onsuccess(){if(FS.analyzePath(path).exists){FS.unlink(path)}FS.createDataFile(PATH.dirname(path),PATH.basename(path),getRequest.result,true,true,true);ok++;if(ok+fail==total)finish()};getRequest.onerror=function getRequest_onerror(){fail++;if(ok+fail==total)finish()}}));transaction.onerror=onerror};openRequest.onerror=onerror})};var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:(function(dirfd,path){if(path[0]!=="/"){var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);dir=dirstream.path}path=PATH.join2(dir,path)}return path}),doStat:(function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-ERRNO_CODES.ENOTDIR}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break}return ret}),doWritev:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall91(which,varargs){SYSCALLS.varargs=varargs;try{var addr=SYSCALLS.get(),len=SYSCALLS.get();var info=SYSCALLS.mappings[addr];if(!info)return 0;if(len===info.len){var stream=FS.getStream(info.fd);SYSCALLS.doMsync(addr,stream,len,info.flags);FS.munmap(stream);SYSCALLS.mappings[addr]=null;if(info.allocated){_free(info.malloc)}}return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___cxa_allocate_exception(size){return _malloc(size)}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21506:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}Module["_bitshift64Lshr"]=_bitshift64Lshr;function ___cxa_pure_virtual(){ABORT=true;throw"Pure virtual function called!"}function _llvm_exp2_f32(x){return Math.pow(2,x)}function _llvm_exp2_f64(){return _llvm_exp2_f32.apply(null,arguments)}Module["_pthread_cond_broadcast"]=_pthread_cond_broadcast;var _environ=STATICTOP;STATICTOP+=16;function ___buildEnvironment(env){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]=ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]="C";ENV["_"]=Module["thisProgram"];poolPtr=allocate(TOTAL_ENV_SIZE,"i8",ALLOC_STATIC);envPtr=allocate(MAX_ENV_VALUES*4,"i8*",ALLOC_STATIC);HEAP32[envPtr>>2]=poolPtr;HEAP32[_environ>>2]=envPtr}else{envPtr=HEAP32[_environ>>2];poolPtr=HEAP32[envPtr>>2]}var strings=[];var totalSize=0;for(var key in env){if(typeof env[key]==="string"){var line=key+"="+env[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i<strings.length;i++){var line=strings[i];writeAsciiToMemory(line,poolPtr);HEAP32[envPtr+i*ptrSize>>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}var ENV={};function _getenv(name){if(name===0)return 0;name=Pointer_stringify(name);if(!ENV.hasOwnProperty(name))return 0;if(_getenv.ret)_free(_getenv.ret);_getenv.ret=allocate(intArrayFromString(ENV[name]),"i8",ALLOC_NORMAL);return _getenv.ret}function ___map_file(pathname,size){___setErrNo(ERRNO_CODES.EPERM);return-1}function ___cxa_begin_catch(ptr){var info=EXCEPTIONS.infos[ptr];if(info&&!info.caught){info.caught=true;__ZSt18uncaught_exceptionv.uncaught_exception--}if(info)info.rethrown=false;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_STATIC);Module["_llvm_cttz_i32"]=_llvm_cttz_i32;Module["___udivmoddi4"]=___udivmoddi4;Module["___udivdi3"]=___udivdi3;Module["___muldsi3"]=___muldsi3;Module["___muldi3"]=___muldi3;var _llvm_pow_f64=Math_pow;Module["_sbrk"]=_sbrk;Module["_bitshift64Shl"]=_bitshift64Shl;Module["_memmove"]=_memmove;function ___gxx_personality_v0(){}Module["___uremdi3"]=___uremdi3;function _pthread_cond_wait(){return 0}Module["_pthread_mutex_unlock"]=_pthread_mutex_unlock;Module["_llvm_bswap_i32"]=_llvm_bswap_i32;function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}Module["_round"]=_round;function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var ___dso_handle=STATICTOP;STATICTOP+=16;FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));Module["FS_createFolder"]=FS.createFolder;Module["FS_createPath"]=FS.createPath;Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;Module["FS_createLazyFile"]=FS.createLazyFile;Module["FS_createLink"]=FS.createLink;Module["FS_createDevice"]=FS.createDevice;Module["FS_unlink"]=FS.unlink;__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}___buildEnvironment(ENV);DYNAMICTOP_PTR=allocate(1,"i32",ALLOC_STATIC);STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=Runtime.alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{return Module["dynCall_iiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiii(index,a1,a2,a3){try{return Module["dynCall_iiii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viid(index,a1,a2,a3){try{Module["dynCall_viid"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){try{Module["dynCall_viiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_dii(index,a1,a2){try{return Module["dynCall_dii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_di(index,a1){try{return Module["dynCall_di"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vi(index,a1){try{Module["dynCall_vi"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vii(index,a1,a2){try{Module["dynCall_vii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6){try{return Module["dynCall_iiiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_ii(index,a1){try{return Module["dynCall_ii"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iid(index,a1,a2){try{return Module["dynCall_iid"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiiid(index,a1,a2,a3,a4,a5,a6){try{return Module["dynCall_iiiiiid"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viii(index,a1,a2,a3){try{Module["dynCall_viii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_v(index){try{Module["dynCall_v"](index)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8){try{return Module["dynCall_iiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){try{return Module["dynCall_iiiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiii(index,a1,a2,a3,a4){try{Module["dynCall_viiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iii(index,a1,a2){try{return Module["dynCall_iii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiid(index,a1,a2,a3,a4,a5){try{return Module["dynCall_iiiiid"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){try{return Module["dynCall_iiiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity};Module.asmLibraryArg={"abort":abort,"assert":assert,"enlargeMemory":enlargeMemory,"getTotalMemory":getTotalMemory,"abortOnCannotGrowMemory":abortOnCannotGrowMemory,"invoke_iiiiiiii":invoke_iiiiiiii,"invoke_iiii":invoke_iiii,"invoke_viid":invoke_viid,"invoke_viiiiii":invoke_viiiiii,"invoke_viiiii":invoke_viiiii,"invoke_dii":invoke_dii,"invoke_di":invoke_di,"invoke_vi":invoke_vi,"invoke_vii":invoke_vii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_ii":invoke_ii,"invoke_iid":invoke_iid,"invoke_iiiiiid":invoke_iiiiiid,"invoke_viii":invoke_viii,"invoke_v":invoke_v,"invoke_iiiiiiiii":invoke_iiiiiiiii,"invoke_iiiii":invoke_iiiii,"invoke_viiii":invoke_viiii,"invoke_iii":invoke_iii,"invoke_iiiiid":invoke_iiiiid,"invoke_iiiiii":invoke_iiiiii,"___syscall221":___syscall221,"_strftime":_strftime,"_pthread_cond_wait":_pthread_cond_wait,"_llvm_pow_f64":_llvm_pow_f64,"_pthread_key_create":_pthread_key_create,"_abort":_abort,"___gxx_personality_v0":___gxx_personality_v0,"___assert_fail":___assert_fail,"___cxa_allocate_exception":___cxa_allocate_exception,"__ZSt18uncaught_exceptionv":__ZSt18uncaught_exceptionv,"___buildEnvironment":___buildEnvironment,"_llvm_exp2_f64":_llvm_exp2_f64,"__addDays":__addDays,"_strftime_l":_strftime_l,"___setErrNo":___setErrNo,"_llvm_pow_f32":_llvm_pow_f32,"___cxa_begin_catch":___cxa_begin_catch,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___resumeException":___resumeException,"___cxa_find_matching_catch":___cxa_find_matching_catch,"__exit":__exit,"_pthread_getspecific":_pthread_getspecific,"__arraySum":__arraySum,"___syscall91":___syscall91,"_pthread_once":_pthread_once,"_getenv":_getenv,"___map_file":___map_file,"___syscall54":___syscall54,"___unlock":___unlock,"__isLeapYear":__isLeapYear,"_pthread_setspecific":_pthread_setspecific,"___cxa_atexit":___cxa_atexit,"___cxa_throw":___cxa_throw,"___lock":___lock,"_llvm_exp2_f32":_llvm_exp2_f32,"___syscall6":___syscall6,"___syscall5":___syscall5,"___cxa_pure_virtual":___cxa_pure_virtual,"_atexit":_atexit,"___syscall140":___syscall140,"_exit":_exit,"___syscall145":___syscall145,"___syscall146":___syscall146,"DYNAMICTOP_PTR":DYNAMICTOP_PTR,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"cttz_i8":cttz_i8,"___dso_handle":___dso_handle};// EMSCRIPTEN_START_ASM var asm=(function(global,env,buffer) { "use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array(buffer);var h=new global.Float64Array(buffer);var i=env.DYNAMICTOP_PTR|0;var j=env.tempDoublePtr|0;var k=env.ABORT|0;var l=env.STACKTOP|0;var m=env.STACK_MAX|0;var n=env.cttz_i8|0;var o=env.___dso_handle|0;var p=0;var q=0;var r=0;var s=0;var t=global.NaN,u=global.Infinity;var v=0,w=0,x=0,y=0,z=0.0;var A=0;var B=global.Math.floor;var C=global.Math.abs;var D=global.Math.sqrt;var E=global.Math.pow;var F=global.Math.cos;var G=global.Math.sin;var H=global.Math.tan;var I=global.Math.acos;var J=global.Math.asin;var K=global.Math.atan;var L=global.Math.atan2;var M=global.Math.exp;var N=global.Math.log;var O=global.Math.ceil;var P=global.Math.imul;var Q=global.Math.min;var R=global.Math.max;var S=global.Math.clz32;var T=env.abort;var U=env.assert;var V=env.enlargeMemory;var W=env.getTotalMemory;var X=env.abortOnCannotGrowMemory;var Y=env.invoke_iiiiiiii;var Z=env.invoke_iiii;var _=env.invoke_viid;var $=env.invoke_viiiiii;var aa=env.invoke_viiiii;var ba=env.invoke_dii;var ca=env.invoke_di;var da=env.invoke_vi;var ea=env.invoke_vii;var fa=env.invoke_iiiiiii;var ga=env.invoke_ii;var ha=env.invoke_iid;var ia=env.invoke_iiiiiid;var ja=env.invoke_viii;var ka=env.invoke_v;var la=env.invoke_iiiiiiiii;var ma=env.invoke_iiiii;var na=env.invoke_viiii;var oa=env.invoke_iii;var pa=env.invoke_iiiiid;var qa=env.invoke_iiiiii;var ra=env.___syscall221;var sa=env._strftime;var ta=env._pthread_cond_wait;var ua=env._llvm_pow_f64;var va=env._pthread_key_create;var wa=env._abort;var xa=env.___gxx_personality_v0;var ya=env.___assert_fail;var za=env.___cxa_allocate_exception;var Aa=env.__ZSt18uncaught_exceptionv;var Ba=env.___buildEnvironment;var Ca=env._llvm_exp2_f64;var Da=env.__addDays;var Ea=env._strftime_l;var Fa=env.___setErrNo;var Ga=env._llvm_pow_f32;var Ha=env.___cxa_begin_catch;var Ia=env._emscripten_memcpy_big;var Ja=env.___resumeException;var Ka=env.___cxa_find_matching_catch;var La=env.__exit;var Ma=env._pthread_getspecific;var Na=env.__arraySum;var Oa=env.___syscall91;var Pa=env._pthread_once;var Qa=env._getenv;var Ra=env.___map_file;var Sa=env.___syscall54;var Ta=env.___unlock;var Ua=env.__isLeapYear;var Va=env._pthread_setspecific;var Wa=env.___cxa_atexit;var Xa=env.___cxa_throw;var Ya=env.___lock;var Za=env._llvm_exp2_f32;var _a=env.___syscall6;var $a=env.___syscall5;var ab=env.___cxa_pure_virtual;var bb=env._atexit;var cb=env.___syscall140;var db=env._exit;var eb=env.___syscall145;var fb=env.___syscall146;var gb=0.0; // EMSCRIPTEN_START_FUNCS function Qm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=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.0;f=l;l=l+192|0;g=f+88|0;i=f+80|0;j=f+72|0;k=f+64|0;m=f+56|0;n=f+48|0;p=f+40|0;q=f+32|0;r=f+24|0;s=f+16|0;t=f+8|0;u=f;v=f+172|0;w=f+160|0;x=f+136|0;y=f+112|0;z=f+152|0;A=f+128|0;B=f+104|0;C=f+92|0;if((e|0)>200){c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;HB(v,30722,30);Sm(b,d,v);LB(v);l=f;return}D=Tm(d)|0;E=d+12|0;if(a[E>>0]|0){Qk(b);l=f;return}if(!(D<<24>>24==45|(D+-48&255)<10))switch(D<<24>>24){case 116:{c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;HB(v,36977,4);if((a[38200]|0)==0?xD(38200)|0:0){Sk(39188);Wa(266,39188,o|0)|0}c[z>>2]=c[9799];F=z+4|0;G=c[9800]|0;c[F>>2]=G;if(G|0)nB(G);Um(b,d,v,z);z=c[F>>2]|0;if(z|0)oB(z);LB(v);l=f;return}case 102:{c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;HB(v,36971,5);if((a[38200]|0)==0?xD(38200)|0:0){Sk(39188);Wa(266,39188,o|0)|0}c[A>>2]=c[9801];z=A+4|0;F=c[9802]|0;c[z>>2]=F;if(F|0)nB(F);Um(b,d,v,A);A=c[z>>2]|0;if(A|0)oB(A);LB(v);l=f;return}case 110:{c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;HB(v,29481,4);Qk(B);Um(b,d,v,B);A=c[B+4>>2]|0;if(A|0)oB(A);LB(v);l=f;return}case 34:{Vm(v,d);A=rB(28)|0;c[A+4>>2]=0;c[A+8>>2]=0;c[A>>2]=9132;B=A+12|0;z=A+16|0;c[z>>2]=c[v>>2];c[z+4>>2]=c[v+4>>2];c[z+8>>2]=c[v+8>>2];c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[B>>2]=9224;c[b>>2]=B;c[b+4>>2]=A;LB(v);l=f;return}case 123:{A=w+4|0;c[A>>2]=0;B=w+8|0;c[B>>2]=0;z=w+4|0;c[w>>2]=z;F=Tm(d)|0;a:do switch(F<<24>>24){case 125:{G=rB(28)|0;c[G+4>>2]=0;c[G+8>>2]=0;c[G>>2]=9316;H=G+12|0;c[H>>2]=8884;I=G+16|0;c[I>>2]=c[w>>2];J=G+20|0;K=c[w+4>>2]|0;c[J>>2]=K;L=c[B>>2]|0;c[G+24>>2]=L;if(!L)c[I>>2]=J;else{c[K+8>>2]=J;c[w>>2]=z;c[z>>2]=0;c[B>>2]=0}c[H>>2]=8820;c[b>>2]=H;c[b+4>>2]=G;break}case 34:{G=e+1|0;H=y+4|0;b:while(1){Vm(x,d);if(a[E>>0]|0){M=128;break}N=Tm(d)|0;if(N<<24>>24!=58){M=130;break}Qm(y,d,G);J=md(w,v,x)|0;K=c[J>>2]|0;if(!K){I=rB(36)|0;L=I+16|0;c[L>>2]=c[x>>2];c[L+4>>2]=c[x+4>>2];c[L+8>>2]=c[x+8>>2];c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;Qk(I+28|0);L=c[v>>2]|0;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=L;c[J>>2]=I;L=c[c[w>>2]>>2]|0;if(!L)O=I;else{c[w>>2]=L;O=c[J>>2]|0}gc(c[A>>2]|0,O);c[B>>2]=(c[B>>2]|0)+1;P=I}else P=K;K=c[y>>2]|0;I=c[H>>2]|0;c[y>>2]=0;c[H>>2]=0;c[P+28>>2]=K;K=P+32|0;J=c[K>>2]|0;c[K>>2]=I;if(J|0?(oB(J),J=c[H>>2]|0,J|0):0)oB(J);if(a[E>>0]|0){M=142;break}Q=Tm(d)|0;switch(Q<<24>>24){case 125:{M=150;break b;break}case 44:break;default:{M=144;break b}}J=Tm(d)|0;LB(x);if(J<<24>>24!=34){R=J;M=123;break a}}if((M|0)==128)Qk(b);else if((M|0)==130){H=N<<24>>24;if((N&255)>31&N<<24>>24>-1){c[q>>2]=H;c[q+4>>2]=H;Ao(v,12,30571,q)|0}else{c[p>>2]=H;Ao(v,12,30581,p)|0};c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;HB(C,v,yn(v)|0);H=ZB(C,0,30925)|0;c[y>>2]=c[H>>2];c[y+4>>2]=c[H+4>>2];c[y+8>>2]=c[H+8>>2];c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;Sm(b,d,y);LB(y);LB(C)}else if((M|0)==142)Qk(b);else if((M|0)==144){H=Q<<24>>24;if((Q&255)>31&Q<<24>>24>-1){c[n>>2]=H;c[n+4>>2]=H;Ao(v,12,30571,n)|0}else{c[m>>2]=H;Ao(v,12,30581,m)|0};c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;HB(C,v,yn(v)|0);H=ZB(C,0,30954)|0;c[y>>2]=c[H>>2];c[y+4>>2]=c[H+4>>2];c[y+8>>2]=c[H+8>>2];c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;Sm(b,d,y);LB(y);LB(C)}else if((M|0)==150){LB(x);H=rB(28)|0;c[H+4>>2]=0;c[H+8>>2]=0;c[H>>2]=9316;G=H+12|0;c[G>>2]=8884;J=H+16|0;c[J>>2]=c[w>>2];I=H+20|0;K=c[w+4>>2]|0;c[I>>2]=K;L=c[B>>2]|0;c[H+24>>2]=L;if(!L)c[J>>2]=I;else{c[K+8>>2]=I;c[w>>2]=z;c[z>>2]=0;c[B>>2]=0}c[G>>2]=8820;c[b>>2]=G;c[b+4>>2]=H;break a}LB(x);break}default:{R=F;M=123}}while(0);if((M|0)==123){F=R<<24>>24;if((R&255)>31&R<<24>>24>-1){c[s>>2]=F;c[s+4>>2]=F;Ao(v,12,30571,s)|0}else{c[r>>2]=F;Ao(v,12,30581,r)|0};c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;HB(y,v,yn(v)|0);r=ZB(y,0,30896)|0;c[x>>2]=c[r>>2];c[x+4>>2]=c[r+4>>2];c[x+8>>2]=c[r+8>>2];c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;Sm(b,d,x);LB(x);LB(y)}pd(w,c[z>>2]|0);l=f;return}case 91:{c[w>>2]=0;z=w+4|0;c[z>>2]=0;c[w+8>>2]=0;do if((Tm(d)|0)<<24>>24!=93){r=d+4|0;F=e+1|0;s=w+8|0;R=v+4|0;c:while(1){c[r>>2]=(c[r>>2]|0)+-1;Qm(v,d,F);B=c[z>>2]|0;if(B>>>0>=(c[s>>2]|0)>>>0){rd(w,v);C=c[R>>2]|0;if(C|0)oB(C)}else{c[B>>2]=c[v>>2];c[B+4>>2]=c[R>>2];c[v>>2]=0;c[R>>2]=0;c[z>>2]=B+8}if(a[E>>0]|0){M=163;break}S=Tm(d)|0;switch(S<<24>>24){case 93:{M=170;break c;break}case 44:break;default:{M=165;break c}}Tm(d)|0}if((M|0)==163){Qk(b);break}else if((M|0)==165){R=S<<24>>24;if((S&255)>31&S<<24>>24>-1){c[k>>2]=R;c[k+4>>2]=R;Ao(v,12,30571,k)|0}else{c[j>>2]=R;Ao(v,12,30581,j)|0};c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;HB(y,v,yn(v)|0);R=ZB(y,0,30983)|0;c[x>>2]=c[R>>2];c[x+4>>2]=c[R+4>>2];c[x+8>>2]=c[R+8>>2];c[R>>2]=0;c[R+4>>2]=0;c[R+8>>2]=0;Sm(b,d,x);LB(x);LB(y);break}else if((M|0)==170){R=rB(28)|0;c[R+4>>2]=0;c[R+8>>2]=0;c[R>>2]=9288;F=R+12|0;c[R+16>>2]=c[w>>2];c[R+20>>2]=c[z>>2];c[R+24>>2]=c[s>>2];c[s>>2]=0;c[z>>2]=0;c[w>>2]=0;c[F>>2]=8692;c[b>>2]=F;c[b+4>>2]=R;break}}else{R=rB(28)|0;c[R+4>>2]=0;c[R+8>>2]=0;c[R>>2]=9288;F=R+12|0;c[R+16>>2]=c[w>>2];c[R+20>>2]=c[z>>2];r=w+8|0;c[R+24>>2]=c[r>>2];c[r>>2]=0;c[z>>2]=0;c[w>>2]=0;c[F>>2]=8692;c[b>>2]=F;c[b+4>>2]=R}while(0);j=c[w>>2]|0;if(j|0){k=c[z>>2]|0;if((k|0)==(j|0))T=j;else{S=k;while(1){k=S+-8|0;c[z>>2]=k;E=c[S+-4>>2]|0;if(!E)U=k;else{oB(E);U=c[z>>2]|0}if((U|0)==(j|0))break;else S=U}T=c[w>>2]|0}tB(T)}l=f;return}default:{T=D<<24>>24;if((D&255)>31&D<<24>>24>-1){c[i>>2]=T;c[i+4>>2]=T;Ao(v,12,30571,i)|0}else{c[g>>2]=T;Ao(v,12,30581,g)|0};c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;HB(x,v,yn(v)|0);g=ZB(x,0,31010)|0;c[w>>2]=c[g>>2];c[w+4>>2]=c[g+4>>2];c[w+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Sm(b,d,w);LB(w);LB(x);l=f;return}}g=d+4|0;T=c[g>>2]|0;i=T+-1|0;c[g>>2]=i;D=c[d>>2]|0;U=(a[D+11>>0]|0)<0;if(U)V=c[D>>2]|0;else V=D;if((a[V+i>>0]|0)==45){c[g>>2]=T;W=T}else W=i;if(U)X=c[D>>2]|0;else X=D;d:do if((a[X+W>>0]|0)==48){T=W+1|0;c[g>>2]=T;if(U)Y=c[D>>2]|0;else Y=D;if(((a[Y+T>>0]|0)+-48&255)<10){c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;HB(v,30753,35);Sm(b,d,v);LB(v);l=f;return}else Z=T}else{if(U)_=c[D>>2]|0;else _=D;if(((a[_+W>>0]|0)+-49&255)<9){if(!U){T=W;while(1){V=T+1|0;c[g>>2]=V;if(((a[D+V>>0]|0)+-48&255)<10)T=V;else{Z=V;break d}}}T=c[D>>2]|0;s=W;while(1){V=s+1|0;c[g>>2]=V;if(((a[T+V>>0]|0)+-48&255)<10)s=V;else{Z=V;break d}}}if(U)$=c[D>>2]|0;else $=D;s=a[$+W>>0]|0;T=s<<24>>24;if((s&255)>31&s<<24>>24>-1){c[u>>2]=T;c[u+4>>2]=T;Ao(v,12,30571,u)|0}else{c[t>>2]=T;Ao(v,12,30581,t)|0};c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;HB(y,v,yn(v)|0);T=ZB(y,0,30789)|0;c[x>>2]=c[T>>2];c[x+4>>2]=c[T+4>>2];c[x+8>>2]=c[T+8>>2];c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;T=WB(x,30798)|0;c[w>>2]=c[T>>2];c[w+4>>2]=c[T+4>>2];c[w+8>>2]=c[T+8>>2];c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;Sm(b,d,w);LB(w);LB(x);LB(y);l=f;return}while(0);if(U)aa=c[D>>2]|0;else aa=D;if((a[aa+Z>>0]|0)!=46){if(U)ba=c[D>>2]|0;else ba=D;if((a[ba+Z>>0]|0)!=101){if(U)ca=c[D>>2]|0;else ca=D;if((Z-i|0)>>>0<10?(a[ca+Z>>0]|0)!=69:0){if(U)da=c[D>>2]|0;else da=D;ca=An(da+i|0)|0;da=rB(20)|0;c[da+4>>2]=0;c[da+8>>2]=0;c[da>>2]=9040;ba=da+12|0;c[da+16>>2]=ca;c[ba>>2]=9068;c[b>>2]=ba;c[b+4>>2]=da;l=f;return}}}if(U)ea=c[D>>2]|0;else ea=D;do if((a[ea+Z>>0]|0)==46){da=Z+1|0;c[g>>2]=da;if(U)fa=c[D>>2]|0;else fa=D;if(((a[fa+da>>0]|0)+-48&255)>=10){c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;HB(v,30809,46);Sm(b,d,v);LB(v);l=f;return}if(U){ba=c[D>>2]|0;if(((a[ba+da>>0]|0)+-48&255)<10)ga=da;else{ha=da;break}while(1){ca=ga+1|0;c[g>>2]=ca;if(((a[ba+ca>>0]|0)+-48&255)<10)ga=ca;else{ha=ca;break}}}else{if(((a[D+da>>0]|0)+-48&255)<10)ia=da;else{ha=da;break}while(1){ba=ia+1|0;c[g>>2]=ba;if(((a[D+ba>>0]|0)+-48&255)<10)ia=ba;else{ha=ba;break}}}}else ha=Z;while(0);if(U)ja=c[D>>2]|0;else ja=D;if((a[ja+ha>>0]|0)!=101){if(U)ka=c[D>>2]|0;else ka=D;if((a[ka+ha>>0]|0)==69)M=73}else M=73;do if((M|0)==73){ka=ha+1|0;c[g>>2]=ka;if(U)la=c[D>>2]|0;else la=D;if((a[la+ka>>0]|0)!=43){if(U)ma=c[D>>2]|0;else ma=D;if((a[ma+ka>>0]|0)!=45)na=ka;else M=81}else M=81;if((M|0)==81){ka=ha+2|0;c[g>>2]=ka;na=ka}if(U)oa=c[D>>2]|0;else oa=D;if(((a[oa+na>>0]|0)+-48&255)>=10){c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;HB(v,30856,39);Sm(b,d,v);LB(v);l=f;return}if(U){ka=c[D>>2]|0;if(((a[ka+na>>0]|0)+-48&255)<10)pa=na;else break;do{pa=pa+1|0;c[g>>2]=pa}while(((a[ka+pa>>0]|0)+-48&255)<10)}else{if(((a[D+na>>0]|0)+-48&255)<10)qa=na;else break;do{qa=qa+1|0;c[g>>2]=qa}while(((a[D+qa>>0]|0)+-48&255)<10)}}while(0);if(U)ra=c[D>>2]|0;else ra=D;sa=+fo(ra+i|0,0);i=rB(32)|0;c[i+4>>2]=0;c[i+8>>2]=0;c[i>>2]=8948;ra=i+16|0;h[i+24>>3]=sa;c[ra>>2]=8976;c[b>>2]=ra;c[b+4>>2]=i;l=f;return}function Rm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;d=l;l=l+16|0;e=d;f=b+4|0;g=c[b>>2]|0;h=c[f>>2]|0;i=a[g+11>>0]|0;a:do if(i<<24>>24<0){j=c[g>>2]|0;k=h;while(1){switch(a[j+k>>0]|0){case 9:case 10:case 13:case 32:break;default:{m=k;break a}}n=k+1|0;c[f>>2]=n;k=n}}else{k=h;while(1){switch(a[g+k>>0]|0){case 9:case 10:case 13:case 32:break;default:{m=k;break a}}j=k+1|0;c[f>>2]=j;k=j}}while(0);if((c[b+16>>2]|0)!=1){l=d;return}h=b+12|0;k=b+8|0;j=i;i=g;g=m;while(1){m=j<<24>>24<0;if(m)o=c[i>>2]|0;else o=i;b:do if((a[o+g>>0]|0)==47){n=g+1|0;c[f>>2]=n;if(m)p=c[i+4>>2]|0;else p=j&255;if((n|0)==(p|0)){c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;HB(e,30607,46);if(!(a[h>>0]|0)){q=c[k>>2]|0;r=q+11|0;if((a[r>>0]|0)<0){a[c[q>>2]>>0]=0;c[q+4>>2]=0}else{a[q>>0]=0;a[r>>0]=0}QB(q,0);c[q>>2]=c[e>>2];c[q+4>>2]=c[e+4>>2];c[q+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0}a[h>>0]=1;LB(e);s=0;break}if(m)t=c[i>>2]|0;else t=i;if((a[t+n>>0]|0)==47){q=j&255;if(!m){r=n;while(1){r=r+1|0;c[f>>2]=r;if(r>>>0>=q>>>0){s=1;break b}if((a[i+r>>0]|0)==10){s=1;break b}}}r=c[i+4>>2]|0;q=n;while(1){q=q+1|0;c[f>>2]=q;if(q>>>0>=r>>>0){s=1;break b}if((a[(c[i>>2]|0)+q>>0]|0)==10){s=1;break b}}}if(m)u=c[i>>2]|0;else u=i;if((a[u+n>>0]|0)!=42){c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;HB(e,30704,17);if(!(a[h>>0]|0)){q=c[k>>2]|0;r=q+11|0;if((a[r>>0]|0)<0){a[c[q>>2]>>0]=0;c[q+4>>2]=0}else{a[q>>0]=0;a[r>>0]=0}QB(q,0);c[q>>2]=c[e>>2];c[q+4>>2]=c[e+4>>2];c[q+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0}a[h>>0]=1;LB(e);s=0;break}q=g+2|0;c[f>>2]=q;if(m)v=c[i+4>>2]|0;else v=j&255;if(q>>>0>(v+-2|0)>>>0){c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;HB(e,30654,49);if(!(a[h>>0]|0)){r=c[k>>2]|0;w=r+11|0;if((a[w>>0]|0)<0){a[c[r>>2]>>0]=0;c[r+4>>2]=0}else{a[r>>0]=0;a[w>>0]=0}QB(r,0);c[r>>2]=c[e>>2];c[r+4>>2]=c[e+4>>2];c[r+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0}a[h>>0]=1;LB(e);s=0;break}r=i+4|0;c:do if(m){w=c[i>>2]|0;x=q;do{y=x;x=x+1|0;if((a[w+y>>0]|0)==42?(a[w+x>>0]|0)==47:0){z=y;A=62;break c}c[f>>2]=x}while(x>>>0<=((c[r>>2]|0)+-2|0)>>>0)}else{x=(j&255)+-2|0;w=q;do{y=w;w=w+1|0;if((a[i+y>>0]|0)==42?(a[i+w>>0]|0)==47:0){z=y;A=62;break c}c[f>>2]=w}while(w>>>0<=x>>>0)}while(0);if((A|0)==62){A=0;c[f>>2]=z+2;s=1;break};c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;HB(e,30654,49);if(!(a[h>>0]|0)){q=c[k>>2]|0;r=q+11|0;if((a[r>>0]|0)<0){a[c[q>>2]>>0]=0;c[q+4>>2]=0}else{a[q>>0]=0;a[r>>0]=0}QB(q,0);c[q>>2]=c[e>>2];c[q+4>>2]=c[e+4>>2];c[q+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0}a[h>>0]=1;LB(e);s=0}else s=0;while(0);if(a[h>>0]|0){A=77;break}i=c[b>>2]|0;m=c[f>>2]|0;j=a[i+11>>0]|0;d:do if(j<<24>>24<0){q=c[i>>2]|0;r=m;while(1){switch(a[q+r>>0]|0){case 9:case 10:case 13:case 32:break;default:{B=r;break d}}n=r+1|0;c[f>>2]=n;r=n}}else{r=m;while(1){switch(a[i+r>>0]|0){case 9:case 10:case 13:case 32:break;default:{B=r;break d}}q=r+1|0;c[f>>2]=q;r=q}}while(0);if(!s){A=77;break}else g=B}if((A|0)==77){l=d;return}}function Sm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;g=f;Qk(g);h=d+12|0;if(!(a[h>>0]|0)){i=c[d+8>>2]|0;d=i+11|0;if((a[d>>0]|0)<0){a[c[i>>2]>>0]=0;c[i+4>>2]=0}else{a[i>>0]=0;a[d>>0]=0}QB(i,0);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];c[i+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0}a[h>>0]=1;c[b>>2]=c[g>>2];h=c[g+4>>2]|0;c[b+4>>2]=h;if(!h){l=f;return}nB(h);oB(h);l=f;return}function Tm(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;d=l;l=l+16|0;e=d;Rm(b);f=b+12|0;if(a[f>>0]|0){g=0;l=d;return g|0}h=b+4|0;i=c[h>>2]|0;j=c[b>>2]|0;k=a[j+11>>0]|0;m=k<<24>>24<0;if(m)n=c[j+4>>2]|0;else n=k&255;if((i|0)!=(n|0)){c[h>>2]=i+1;if(m)o=c[j>>2]|0;else o=j;g=a[o+i>>0]|0;l=d;return g|0};c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;HB(e,31259,23);if(!(a[f>>0]|0)){i=c[b+8>>2]|0;b=i+11|0;if((a[b>>0]|0)<0){a[c[i>>2]>>0]=0;c[i+4>>2]=0}else{a[i>>0]=0;a[b>>0]=0}QB(i,0);c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];c[i+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0}a[f>>0]=1;LB(e);g=0;l=d;return g|0}function Um(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;g=l;l=l+48|0;h=g+36|0;i=g+24|0;j=g+12|0;k=g;m=d+4|0;n=c[m>>2]|0;if(!n)ya(31129,31136,630,31222);o=n+-1|0;c[m>>2]=o;n=e+11|0;p=a[n>>0]|0;q=p<<24>>24<0;r=e+4|0;s=q?c[r>>2]|0:p&255;if(!(bC(c[d>>2]|0,o,s,q?c[e>>2]|0:e,s)|0)){s=a[n>>0]|0;c[m>>2]=(c[m>>2]|0)+(s<<24>>24<0?c[r>>2]|0:s&255);c[b>>2]=c[f>>2];s=f+4|0;c[b+4>>2]=c[s>>2];c[f>>2]=0;c[s>>2]=0;l=g;return}else{c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;s=a[n>>0]|0;f=s<<24>>24<0?c[r>>2]|0:s&255;cC(j,31229,22,f+22|0);VB(j,(a[n>>0]|0)<0?c[e>>2]|0:e,f)|0;f=WB(j,31252)|0;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;f=c[d>>2]|0;e=a[n>>0]|0;KB(k,f,c[m>>2]|0,e<<24>>24<0?c[r>>2]|0:e&255,f);f=a[k+11>>0]|0;e=f<<24>>24<0;r=VB(i,e?c[k>>2]|0:k,e?c[k+4>>2]|0:f&255)|0;c[h>>2]=c[r>>2];c[h+4>>2]=c[r+4>>2];c[h+8>>2]=c[r+8>>2];c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;Sm(b,d,h);LB(h);LB(k);LB(i);LB(j);l=g;return}}function Vm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0;e=l;l=l+80|0;f=e+16|0;g=e+8|0;h=e;i=e+68|0;j=e+56|0;k=e+44|0;m=e+32|0;n=e+20|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;o=d+4|0;p=i+11|0;q=i+4|0;r=-1;a:while(1){s=c[o>>2]|0;t=c[d>>2]|0;u=a[t+11>>0]|0;v=u<<24>>24<0;if(v)w=c[t+4>>2]|0;else w=u&255;if((s|0)==(w|0)){x=6;break}y=s+1|0;c[o>>2]=y;if(v)z=c[t>>2]|0;else z=t;A=a[z+s>>0]|0;if(A<<24>>24==34){x=16;break}if((A&255)<32){x=18;break}if(A<<24>>24!=92){Wm(r,j);XB(j,A);r=-1;continue}if(v)B=c[t+4>>2]|0;else B=u&255;if((y|0)==(B|0)){x=30;break}u=s+2|0;c[o>>2]=u;if(v)C=c[t>>2]|0;else C=t;D=a[C+y>>0]|0;if(D<<24>>24!=117){Wm(r,j);switch(D<<24>>24){case 98:{XB(j,8);r=-1;continue a;break}case 102:{XB(j,12);r=-1;continue a;break}case 110:{XB(j,10);r=-1;continue a;break}case 114:{XB(j,13);r=-1;continue a;break}case 116:{XB(j,9);r=-1;continue a;break}case 47:case 92:case 34:{XB(j,D);r=-1;continue a;break}default:{x=66;break a}}}KB(i,t,u,4,t);t=a[p>>0]|0;u=t<<24>>24<0;E=u?c[q>>2]|0:t&255;if(E>>>0<4){x=43;break}t=u?c[i>>2]|0:i;u=a[t>>0]|0;if((u+-48&255)>=10)switch(u<<24>>24){case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:break;default:{x=49;break a}}u=a[t+1>>0]|0;if((u+-48&255)>=10)switch(u<<24>>24){case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:break;default:{x=49;break a}}u=a[t+2>>0]|0;if((u+-48&255)>=10)switch(u<<24>>24){case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:break;default:{x=49;break a}}u=a[t+3>>0]|0;if((u+-48&255)>=10)switch(u<<24>>24){case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:break;default:{x=49;break a}}u=xo(t,0,16)|0;if((r&-1024|0)==55296&(u&-1024|0)==56320){Wm((u+-56320|(r<<10)+-56623104)+65536|0,j);F=-1}else{Wm(r,j);F=u}c[o>>2]=(c[o>>2]|0)+4;LB(i);r=F}if((x|0)==6){c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,31031,33);F=d+12|0;if(!(a[F>>0]|0)){o=c[d+8>>2]|0;q=o+11|0;if((a[q>>0]|0)<0){a[c[o>>2]>>0]=0;c[o+4>>2]=0}else{a[o>>0]=0;a[q>>0]=0}QB(o,0);c[o>>2]=c[i>>2];c[o+4>>2]=c[i+4>>2];c[o+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0}a[F>>0]=1;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;HB(b,44918,0);LB(i);LB(j);l=e;return}else if((x|0)==16){Wm(r,j);c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];c[b+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;LB(j);l=e;return}else if((x|0)==18){c[h>>2]=A<<24>>24;Ao(i,12,30581,h)|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;HB(n,i,yn(i)|0);h=ZB(n,0,31065)|0;c[m>>2]=c[h>>2];c[m+4>>2]=c[h+4>>2];c[m+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;h=WB(m,31076)|0;c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;h=d+12|0;if(!(a[h>>0]|0)){A=c[d+8>>2]|0;r=A+11|0;if((a[r>>0]|0)<0){a[c[A>>2]>>0]=0;c[A+4>>2]=0}else{a[A>>0]=0;a[r>>0]=0}QB(A,0);c[A>>2]=c[k>>2];c[A+4>>2]=c[k+4>>2];c[A+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0}a[h>>0]=1;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;HB(b,44918,0);LB(k);LB(m);LB(n);LB(j);l=e;return}else if((x|0)==30){c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,31031,33);n=d+12|0;if(!(a[n>>0]|0)){h=c[d+8>>2]|0;A=h+11|0;if((a[A>>0]|0)<0){a[c[h>>2]>>0]=0;c[h+4>>2]=0}else{a[h>>0]=0;a[A>>0]=0}QB(h,0);c[h>>2]=c[i>>2];c[h+4>>2]=c[i+4>>2];c[h+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0}a[n>>0]=1;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;HB(b,44918,0);LB(i);LB(j);l=e;return}else if((x|0)==43){c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;cC(k,31087,15,E+15|0);VB(k,(a[p>>0]|0)<0?c[i>>2]|0:i,E)|0;n=d+12|0;if(!(a[n>>0]|0)){h=c[d+8>>2]|0;A=h+11|0;if((a[A>>0]|0)<0){a[c[h>>2]>>0]=0;c[h+4>>2]=0}else{a[h>>0]=0;a[A>>0]=0}QB(h,0);c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0}a[n>>0]=1;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;HB(b,44918,0);LB(k)}else if((x|0)==49){c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;cC(k,31087,15,E+15|0);VB(k,(a[p>>0]|0)<0?c[i>>2]|0:i,E)|0;E=d+12|0;if(!(a[E>>0]|0)){p=c[d+8>>2]|0;n=p+11|0;if((a[n>>0]|0)<0){a[c[p>>2]>>0]=0;c[p+4>>2]=0}else{a[p>>0]=0;a[n>>0]=0}QB(p,0);c[p>>2]=c[k>>2];c[p+4>>2]=c[k+4>>2];c[p+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0}a[E>>0]=1;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;HB(b,44918,0);LB(k)}else if((x|0)==66){x=D<<24>>24;if((D&255)>31&D<<24>>24>-1){c[g>>2]=x;c[g+4>>2]=x;Ao(i,12,30571,g)|0}else{c[f>>2]=x;Ao(i,12,30581,f)|0};c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,i,yn(i)|0);f=ZB(m,0,31103)|0;c[k>>2]=c[f>>2];c[k+4>>2]=c[f+4>>2];c[k+8>>2]=c[f+8>>2];c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;f=d+12|0;if(!(a[f>>0]|0)){x=c[d+8>>2]|0;d=x+11|0;if((a[d>>0]|0)<0){a[c[x>>2]>>0]=0;c[x+4>>2]=0}else{a[x>>0]=0;a[d>>0]=0}QB(x,0);c[x>>2]=c[k>>2];c[x+4>>2]=c[k+4>>2];c[x+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0}a[f>>0]=1;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;HB(b,44918,0);LB(k);LB(m);LB(j);l=e;return}LB(i);LB(j);l=e;return}function Wm(a,b){a=a|0;b=b|0;if((a|0)<0)return;if((a|0)<128){XB(b,a&255);return}if((a|0)<2048){XB(b,(a>>>6|192)&255);XB(b,(a&63|128)&255);return}if((a|0)<65536){XB(b,(a>>>12|224)&255);XB(b,(a>>>6&63|128)&255);XB(b,(a&63|128)&255);return}else{XB(b,(a>>>18|240)&255);XB(b,(a>>>12&63|128)&255);XB(b,(a>>>6&63|128)&255);XB(b,(a&63|128)&255);return}}function Xm(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;f=l;l=l+48|0;g=f+36|0;h=f+24|0;i=f+12|0;j=f;k=c[b>>2]|0;if((rb[c[c[k>>2]>>2]&127](k)|0)!=5){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;k=c[b>>2]|0;pb[c[(c[k>>2]|0)+12>>2]&127](k,h);k=ZB(h,0,31283)|0;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;k=e+11|0;if((a[k>>0]|0)<0){a[c[e>>2]>>0]=0;c[e+4>>2]=0;QB(e,0);c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;LB(g);LB(h);l=f;return 0}else{a[e>>0]=0;a[k>>0]=0;QB(e,0);c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;LB(g);LB(h);l=f;return 0}}k=c[d>>2]|0;m=c[d+4>>2]|0;d=k+(m<<4)|0;if(!m){n=1;l=f;return n|0}else o=k;while(1){k=c[b>>2]|0;m=c[(zb[c[(c[k>>2]|0)+44>>2]&63](k,o)|0)>>2]|0;k=rb[c[c[m>>2]>>2]&127](m)|0;if((k|0)!=(c[o+12>>2]|0))break;k=o+16|0;if((k|0)==(d|0)){n=1;p=13;break}else o=k}if((p|0)==13){l=f;return n|0};c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;p=o+11|0;d=a[p>>0]|0;k=d<<24>>24<0?c[o+4>>2]|0:d&255;cC(i,31310,13,k+13|0);VB(i,(a[p>>0]|0)<0?c[o>>2]|0:o,k)|0;k=WB(i,31324)|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;k=c[b>>2]|0;pb[c[(c[k>>2]|0)+12>>2]&127](k,j);k=a[j+11>>0]|0;b=k<<24>>24<0;o=VB(h,b?c[j>>2]|0:j,b?c[j+4>>2]|0:k&255)|0;c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;o=e+11|0;if((a[o>>0]|0)<0){a[c[e>>2]>>0]=0;c[e+4>>2]=0}else{a[e>>0]=0;a[o>>0]=0}QB(e,0);c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;LB(g);LB(j);LB(h);LB(i);n=0;l=f;return n|0}function Ym(a,b,d,e,f,h,i,j,k,l,m){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0;n=c[h>>2]|0;h=f+(~n<<2)|0;f=j+-4|0;j=c[b>>2]|0;if((j|0)<1)return 0;b=c[d>>2]|0;if((b|0)<=(j|0)|(b|0)>(e|0))return 0;d=h+((P(j,n)|0)+1<<2)|0;o=+g[d>>2];p=o>=0.0?o:-o;if((a|0)==2)if(!(p<=0.0))q=o;else return 0;else{r=p;a=b;while(1){p=+g[h+((P(a,n)|0)+1<<2)>>2];s=p>=0.0?p:-p;r=s>=r?s:r;if((a|0)>=(e|0))break;else a=a+1|0}s=r;if(r<=0.0)return 0;p=1.0/r;r=p*o;t=r*r;a=b;while(1){r=p*+g[h+((P(a,n)|0)+1<<2)>>2];t=t+r*r;if((a|0)>=(e|0))break;else a=a+1|0}p=s*+D(+t);t=!(o<=0.0)?-p:p;g[i>>2]=o-t;g[d>>2]=t;q=t}d=c[m>>2]|0;if((d|0)<1)return 0;t=+g[i>>2];o=t*q;if(o>=0.0)return 0;q=1.0/o;m=c[l>>2]|0;l=c[k>>2]|0;k=P(b-j|0,l)|0;a=1-m+(P(l,j+-1|0)|0)|0;j=1;o=t;while(1){u=m+a|0;v=u+k|0;w=f+(u<<2)|0;t=+g[w>>2];x=v;y=b;p=t*o;while(1){p=p+ +g[f+(x<<2)>>2]*+g[h+((P(y,n)|0)+1<<2)>>2];if((y|0)>=(e|0))break;else{x=l+x|0;y=y+1|0}}if(p!=0.0){s=q*p;g[w>>2]=t+o*s;y=v;x=b;while(1){r=s*+g[h+((P(x,n)|0)+1<<2)>>2];z=f+(y<<2)|0;g[z>>2]=+g[z>>2]+r;if((x|0)<(e|0)){y=l+y|0;x=x+1|0}else break}}if((j|0)==(d|0))break;a=u;j=j+1|0;o=+g[i>>2]}return 0}function Zm(a,b,d,e,f,h,i,j,k,m,n){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0,L=0,M=0,N=0,O=0,Q=0,R=0.0,S=0,T=0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0.0,aa=0.0,ba=0.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.0,ta=0,ua=0.0,va=0,wa=0.0,xa=0.0,ya=0.0,za=0.0,Aa=0.0,Ba=0.0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0.0;o=l;l=l+32|0;p=o+20|0;q=o+24|0;r=o+16|0;s=o+8|0;t=o+4|0;u=o;c[p>>2]=b;v=a+(~b<<2)|0;a=f+-4|0;f=h+-4|0;h=j+-4|0;w=k+-4|0;x=m+-4|0;c[n>>2]=1;if((d|0)<1|(e|0)<1){c[n>>2]=2;l=o;return 0}m=e*3|0;c[q>>2]=e;y=1;while(1){g[f+(y<<2)>>2]=0.0;c[x+(y<<2)>>2]=y;if((y|0)<(e|0))y=y+1|0;else break}c[r>>2]=0;c[u>>2]=1;a:do if((e|0)>0&(d|0)>0){y=d+1|0;z=1;A=0;B=0;C=0;E=1;F=0;b:while(1){c[q>>2]=e;G=(z|0)>(e|0);c:do if(!G){if((E|0)>(d|0)){H=z;while(1){g[h+(c[x+(H<<2)>>2]<<2)>>2]=0.0;if((H|0)<(e|0))H=H+1|0;else break c}}else I=z;while(1){H=c[x+(I<<2)>>2]|0;J=P(H,b)|0;K=0.0;L=E;while(1){K=K+ +g[v+(L+J<<2)>>2]*+g[a+(L<<2)>>2];if((L|0)>=(d|0))break;else L=L+1|0}g[h+(H<<2)>>2]=K;if((I|0)<(e|0))I=I+1|0;else break}}while(0);L=(F|0)==0;J=E+1|0;M=w+(E<<2)|0;N=(F|0)<1;c[q>>2]=e;if(G){O=E;break a}else Q=B;while(1){R=0.0;S=z;T=Q;while(1){U=+g[h+(c[x+(S<<2)>>2]<<2)>>2];V=U>R;R=V?U:R;T=V?S:T;if((S|0)>=(e|0))break;else S=S+1|0}if(R<=0.0){O=E;break a}W=x+(T<<2)|0;X=c[W>>2]|0;Y=P(X,b)|0;S=v+(E+Y<<2)|0;V=c[S>>2]|0;c[q>>2]=J;Z=v+(Y+1<<2)|0;Ym(c[2334]|0,u,q,d,Z,9336,t,s,9336,9336,39248)|0;if(!L?(c[q>>2]=F,!N):0){U=0.0;_=1;while(1){$=+g[v+(_+Y<<2)>>2];aa=U+$*$;if((_|0)<(F|0)){U=aa;_=_+1|0}else{ba=aa;break}}}else ba=0.0;U=+D(+ba);R=+g[S>>2];if(U+(R>=0.0?R:-R)*.01-U>0.0){c[q>>2]=d;_=1;while(1){c[w+(_<<2)>>2]=c[a+(_<<2)>>2];if((_|0)<(d|0))_=_+1|0;else break}c[q>>2]=J;Ym(c[2335]|0,u,q,d,Z,9336,t,k,9336,9336,9336)|0;if(+g[M>>2]/+g[S>>2]>0.0)break}c[S>>2]=V;g[h+(X<<2)>>2]=0.0;c[q>>2]=e;if(G){O=E;break a}else Q=T}c[q>>2]=d;G=1;while(1){c[a+(G<<2)>>2]=c[w+(G<<2)>>2];if((G|0)<(d|0))G=G+1|0;else break}G=x+(z<<2)|0;c[W>>2]=c[G>>2];c[G>>2]=X;G=z+1|0;c[r>>2]=E;c[u>>2]=J;if((z|0)<(e|0)){c[q>>2]=e;M=G;while(1){N=c[x+(M<<2)>>2]|0;Ym(c[2335]|0,r,u,d,Z,9336,t,v+((P(N,b)|0)+1<<2)|0,9336,p,9336)|0;if((M|0)<(e|0))M=M+1|0;else{ca=N;break}}}else ca=A;if((E|0)!=(d|0)?(c[q>>2]=d,(E|0)<(d|0)):0)HD(v+(Y+J<<2)|0,0,y-J<<2|0)|0;g[h+(X<<2)>>2]=0.0;M=C;N=G;L=ca;da=J;ea=E;d:while(1){fa=(ea|0)<1;if(fa)ga=L;else{_=ea+1|0;ha=1;ia=L;ja=_;while(1){ka=1-ha+ea|0;if(!((ha|0)==1|(ka|0)<1)){la=P(ia,b)|0;ma=w+(ka+1<<2)|0;na=1;do{oa=w+(na<<2)|0;g[oa>>2]=+g[oa>>2]-+g[v+(na+la<<2)>>2]*+g[ma>>2];na=na+1|0}while((na|0)!=(ja|0))}na=c[x+(ka<<2)>>2]|0;K=+g[v+((P(na,b)|0)+ka<<2)>>2];ma=w+(ka<<2)|0;g[ma>>2]=+g[ma>>2]/K;ha=ha+1|0;if((ha|0)==(_|0)){ga=na;break}else{ia=na;ja=ja+-1|0}}}pa=M+1|0;if((M|0)>=(m|0))break b;if(fa){qa=37;break}else{ra=1;sa=2.0;ta=ga}while(1){K=+g[w+(ra<<2)>>2];if(K<=0.0?(U=+g[f+(c[x+(ra<<2)>>2]<<2)>>2],R=-U/(K-U),sa>R):0){ua=R;va=ra}else{ua=sa;va=ta}if((ra|0)==(ea|0))break;else{ra=ra+1|0;sa=ua;ta=va}}if(ua==2.0){qa=43;break}if(!fa){ja=1;while(1){ia=f+(c[x+(ja<<2)>>2]<<2)|0;R=+g[ia>>2];g[ia>>2]=R+ua*(+g[w+(ja<<2)>>2]-R);if((ja|0)==(ea|0))break;else ja=ja+1|0}}ja=N;ia=c[x+(va<<2)>>2]|0;_=va;ha=ea;e:while(1){g[f+(ia<<2)>>2]=0.0;if((_|0)<(ha|0)){V=_;do{S=V;V=V+1|0;na=c[x+(V<<2)>>2]|0;c[x+(S<<2)>>2]=na;ma=P(na,b)|0;la=v+(ma+S<<2)|0;H=v+(ma+V<<2)|0;R=+g[la>>2];ma=R>=0.0;U=ma?R:-R;K=+g[H>>2];oa=K>=0.0;aa=oa?K:-K;do if(U>aa){$=K/R;wa=+D(+($*$+1.0));xa=1.0/wa;ya=xa>=0.0?xa:-xa;xa=ma?ya:-ya;za=$*xa;Aa=xa;Ba=U*wa}else{if(!(K!=0.0)){za=1.0;Aa=0.0;Ba=0.0;break}wa=R/K;xa=+D(+(wa*wa+1.0));$=1.0/xa;ya=$>=0.0?$:-$;$=oa?ya:-ya;za=$;Aa=wa*$;Ba=aa*xa}while(0);g[la>>2]=Ba;g[H>>2]=0.0;oa=1;while(1){if((oa|0)!=(na|0)){ma=P(oa,b)|0;Ca=v+(ma+S<<2)|0;aa=+g[Ca>>2];Da=v+(ma+V<<2)|0;g[Ca>>2]=Aa*aa+za*+g[Da>>2];g[Da>>2]=Aa*+g[Da>>2]-za*aa}if((oa|0)==(e|0))break;else oa=oa+1|0}oa=a+(S<<2)|0;aa=+g[oa>>2];na=a+(V<<2)|0;K=+g[na>>2];g[oa>>2]=Aa*aa+za*K;g[na>>2]=Aa*K-za*aa}while((V|0)!=(ha|0))}Ea=ha+-1|0;Fa=ja+-1|0;c[x+(Fa<<2)>>2]=ia;if((ha|0)<2){Ga=1;break}else Ha=1;while(1){V=c[x+(Ha<<2)>>2]|0;if(+g[f+(V<<2)>>2]<=0.0){ja=Fa;ia=V;_=Ha;ha=Ea;continue e}V=Ha+1|0;if((Ha|0)<(Ea|0))Ha=V;else{Ga=V;break e}}}_=1;while(1){c[w+(_<<2)>>2]=c[a+(_<<2)>>2];ia=_+1|0;if((ia|0)==(y|0)){M=pa;N=Fa;L=Ga;da=ha;ea=Ea;continue d}else _=ia}}if((qa|0)==37){qa=0;c[r>>2]=ea;c[q>>2]=ea;c[u>>2]=da;Ia=ga}else if((qa|0)==43){qa=0;c[r>>2]=ea;c[q>>2]=ea;c[u>>2]=da;if(fa)Ia=va;else{L=1;while(1){c[f+(c[x+(L<<2)>>2]<<2)>>2]=c[w+(L<<2)>>2];if((L|0)==(ea|0)){Ia=va;break}else L=L+1|0}}}if((N|0)<=(e|0)&(ea|0)<(d|0)){z=N;A=Ia;B=T;C=pa;E=da;F=ea}else{O=da;break a}}c[r>>2]=ea;c[q>>2]=ea;c[u>>2]=da;c[n>>2]=3;O=da}else O=1;while(0);if((O|0)>(d|0)){c[q>>2]=e;HD(j|0,0,((e|0)>1?e:1)<<2|0)|0;Ja=0.0}else{c[q>>2]=d;za=0.0;q=O;while(1){Aa=+g[a+(q<<2)>>2];Ba=za+Aa*Aa;if((q|0)<(d|0)){za=Ba;q=q+1|0}else{Ja=Ba;break}}}g[i>>2]=+D(+Ja);l=o;return 0}function _m(){return 39252}function $m(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=gn(c[a+60>>2]|0)|0;a=cn(_a(6,d|0)|0)|0;l=b;return a|0}function an(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=l;l=l+48|0;f=e+16|0;g=e;h=e+32|0;i=a+28|0;j=c[i>>2]|0;c[h>>2]=j;k=a+20|0;m=(c[k>>2]|0)-j|0;c[h+4>>2]=m;c[h+8>>2]=b;c[h+12>>2]=d;b=m+d|0;m=a+60|0;c[g>>2]=c[m>>2];c[g+4>>2]=h;c[g+8>>2]=2;j=cn(fb(146,g|0)|0)|0;a:do if((b|0)!=(j|0)){g=2;n=b;o=h;p=j;while(1){if((p|0)<0)break;n=n-p|0;q=c[o+4>>2]|0;r=p>>>0>q>>>0;s=r?o+8|0:o;t=(r<<31>>31)+g|0;u=p-(r?q:0)|0;c[s>>2]=(c[s>>2]|0)+u;q=s+4|0;c[q>>2]=(c[q>>2]|0)-u;c[f>>2]=c[m>>2];c[f+4>>2]=s;c[f+8>>2]=t;p=cn(fb(146,f|0)|0)|0;if((n|0)==(p|0)){v=3;break a}else{g=t;o=s}}c[a+16>>2]=0;c[i>>2]=0;c[k>>2]=0;c[a>>2]=c[a>>2]|32;if((g|0)==2)w=0;else w=d-(c[o+4>>2]|0)|0}else v=3;while(0);if((v|0)==3){v=c[a+44>>2]|0;c[a+16>>2]=v+(c[a+48>>2]|0);c[i>>2]=v;c[k>>2]=v;w=d}l=e;return w|0}function bn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+32|0;f=e;g=e+20|0;c[f>>2]=c[a+60>>2];c[f+4>>2]=0;c[f+8>>2]=b;c[f+12>>2]=g;c[f+16>>2]=d;if((cn(cb(140,f|0)|0)|0)<0){c[g>>2]=-1;h=-1}else h=c[g>>2]|0;l=e;return h|0}function cn(a){a=a|0;var b=0;if(a>>>0>4294963200){c[(dn()|0)>>2]=0-a;b=-1}else b=a;return b|0}function dn(){return (en()|0)+64|0}function en(){return fn()|0}function fn(){return 9748}function gn(a){a=a|0;return a|0}function hn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+32|0;g=f;c[b+36>>2]=6;if((c[b>>2]&64|0)==0?(c[g>>2]=c[b+60>>2],c[g+4>>2]=21523,c[g+8>>2]=f+16,Sa(54,g|0)|0):0)a[b+75>>0]=-1;g=an(b,d,e)|0;l=f;return g|0}function jn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;f=l;l=l+32|0;g=f;h=f+16|0;c[h>>2]=d;i=h+4|0;j=b+48|0;k=c[j>>2]|0;c[i>>2]=e-((k|0)!=0&1);m=b+44|0;c[h+8>>2]=c[m>>2];c[h+12>>2]=k;c[g>>2]=c[b+60>>2];c[g+4>>2]=h;c[g+8>>2]=2;h=cn(eb(145,g|0)|0)|0;if((h|0)>=1){g=c[i>>2]|0;if(h>>>0>g>>>0){i=c[m>>2]|0;m=b+4|0;c[m>>2]=i;c[b+8>>2]=i+(h-g);if(!(c[j>>2]|0))n=e;else{c[m>>2]=i+1;a[d+(e+-1)>>0]=a[i>>0]|0;n=e}}else n=h}else{c[b>>2]=c[b>>2]|h&48^16;n=h}l=f;return n|0}function kn(a,b){a=+a;b=b|0;var d=0.0,e=0,f=0,g=0,i=0.0,k=0;if((b|0)<=1023)if((b|0)<-1022){d=a*2.2250738585072014e-308;e=b+1022|0;f=(e|0)<-1022;g=b+2044|0;i=f?d*2.2250738585072014e-308:d;k=f?((g|0)>-1022?g:-1022):e}else{i=a;k=b}else{d=a*8988465674311579538646525.0e283;e=b+-1023|0;g=(e|0)>1023;f=b+-2046|0;i=g?d*8988465674311579538646525.0e283:d;k=g?((f|0)<1023?f:1023):e}e=TD(k+1023|0,0,52)|0;k=A;c[j>>2]=e;c[j+4>>2]=k;return +(i*+h[j>>3])}function ln(a){a=+a;var b=0,d=0,e=0.0,f=0.0;b=(g[j>>2]=a,c[j>>2]|0);if((b&2130706432)>>>0<=1249902592){d=(b|0)<0;e=(d?8388608.0:-8388608.0)+((d?-8388608.0:8388608.0)+a);if(e==0.0)f=d?-0.0:0.0;else f=e}else f=a;return +f}function mn(a){a=+a;var b=0,d=0,e=0,f=0.0,g=0,i=0,k=0,l=0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0;h[j>>3]=a;b=c[j>>2]|0;d=c[j+4>>2]|0;e=(d|0)<0;do if(e|d>>>0<1048576){if((b|0)==0&(d&2147483647|0)==0){f=-1.0/(a*a);break}if(e){f=(a-a)/0.0;break}else{h[j>>3]=a*18014398509481984.0;g=c[j+4>>2]|0;i=-1077;k=g;l=c[j>>2]|0;m=g;n=9;break}}else if(d>>>0<=2146435071)if((b|0)==0&0==0&(d|0)==1072693248)f=0.0;else{i=-1023;k=d;l=b;m=d;n=9}else f=a;while(0);if((n|0)==9){n=k+614242|0;c[j>>2]=l;c[j+4>>2]=(n&1048575)+1072079006;a=+h[j>>3]+-1.0;o=a*(a*.5);p=a/(a+2.0);q=p*p;r=q*q;h[j>>3]=a-o;l=c[j+4>>2]|0;c[j>>2]=0;c[j+4>>2]=l;s=+h[j>>3];t=a-s-o+p*(o+(r*(r*(r*.15313837699209373+.22222198432149784)+.3999999999940942)+q*(r*(r*(r*.14798198605116586+.1818357216161805)+.2857142874366239)+.6666666666666735)));r=s*1.4426950407214463;q=+(i+(n>>>20)|0);o=q+r;f=o+(r+(q-o)+(t*1.4426950407214463+(s+t)*1.6751713164886512e-10))}return +f}function nn(a,b){a=+a;b=b|0;var d=0,e=0,f=0,g=0.0,i=0.0,k=0,l=0.0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=KD(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){g=+nn(a*18446744073709551616.0,b);i=g;k=(c[b>>2]|0)+-64|0}else{i=a;k=0}c[b>>2]=k;l=i;break}case 2047:{l=a;break}default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;l=+h[j>>3]}}return +l}function on(a,b){a=+a;b=+b;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;h[j>>3]=b;f=c[j+4>>2]&-2147483648|e&2147483647;c[j>>2]=d;c[j+4>>2]=f;return +(+h[j>>3])}function pn(a,b){a=+a;b=b|0;return +(+kn(a,b))}function qn(a,b){a=+a;b=b|0;return +(+nn(a,b))}function rn(a,b){a=+a;b=+b;return +(+sn(a,b))}function sn(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0.0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;h[j>>3]=b;f=c[j>>2]|0;g=c[j+4>>2]|0;i=KD(d|0,e|0,52)|0;k=i&2047;i=KD(f|0,g|0,52)|0;l=i&2047;i=e&-2147483648;m=TD(f|0,g|0,1)|0;n=A;a:do if(!((m|0)==0&(n|0)==0)?(o=tn(b)|0,p=A&2147483647,!((k|0)==2047|(p>>>0>2146435072|(p|0)==2146435072&o>>>0>0))):0){o=TD(d|0,e|0,1)|0;p=A;if(!(p>>>0>n>>>0|(p|0)==(n|0)&o>>>0>m>>>0))return +((o|0)==(m|0)&(p|0)==(n|0)?a*0.0:a);if(!k){p=TD(d|0,e|0,12)|0;o=A;if((o|0)>-1|(o|0)==-1&p>>>0>4294967295){q=0;r=p;p=o;while(1){o=q+-1|0;r=TD(r|0,p|0,1)|0;p=A;if(!((p|0)>-1|(p|0)==-1&r>>>0>4294967295)){s=o;break}else q=o}}else s=0;q=TD(d|0,e|0,1-s|0)|0;t=s;u=q;v=A}else{t=k;u=d;v=e&1048575|1048576}if(!l){q=TD(f|0,g|0,12)|0;r=A;if((r|0)>-1|(r|0)==-1&q>>>0>4294967295){p=0;o=q;q=r;while(1){r=p+-1|0;o=TD(o|0,q|0,1)|0;q=A;if(!((q|0)>-1|(q|0)==-1&o>>>0>4294967295)){w=r;break}else p=r}}else w=0;p=TD(f|0,g|0,1-w|0)|0;x=w;y=p;z=A}else{x=l;y=f;z=g&1048575|1048576}p=FD(u|0,v|0,y|0,z|0)|0;o=A;q=(o|0)>-1|(o|0)==-1&p>>>0>4294967295;b:do if((t|0)>(x|0)){r=t;B=o;C=q;D=u;E=v;F=p;while(1){if(C)if((F|0)==0&(B|0)==0)break;else{G=F;H=B}else{G=D;H=E}I=TD(G|0,H|0,1)|0;J=A;K=r+-1|0;L=FD(I|0,J|0,y|0,z|0)|0;M=A;N=(M|0)>-1|(M|0)==-1&L>>>0>4294967295;if((K|0)>(x|0)){r=K;B=M;C=N;D=I;E=J;F=L}else{O=K;P=N;Q=L;R=M;S=I;T=J;break b}}U=a*0.0;break a}else{O=t;P=q;Q=p;R=o;S=u;T=v}while(0);if(P)if((Q|0)==0&(R|0)==0){U=a*0.0;break}else{V=R;W=Q}else{V=T;W=S}if(V>>>0<1048576|(V|0)==1048576&W>>>0<0){o=O;p=W;q=V;while(1){F=TD(p|0,q|0,1)|0;E=A;D=o+-1|0;if(E>>>0<1048576|(E|0)==1048576&F>>>0<0){o=D;p=F;q=E}else{X=D;Y=F;Z=E;break}}}else{X=O;Y=W;Z=V}if((X|0)>0){q=JD(Y|0,Z|0,0,-1048576)|0;p=A;o=TD(X|0,0,52)|0;_=p|A;$=q|o}else{o=KD(Y|0,Z|0,1-X|0)|0;_=A;$=o}c[j>>2]=$;c[j+4>>2]=_|i;U=+h[j>>3]}else aa=3;while(0);if((aa|0)==3){ba=a*b;U=ba/ba}return +U}function tn(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;A=c[j+4>>2]|0;return b|0}function un(a){a=+a;return ~~+ln(a)|0}function vn(a,b){a=+a;b=+b;return +(+on(a,b))}function wn(a){a=+a;var b=0,d=0,e=0.0,f=0,h=0,i=0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0;b=(g[j>>2]=a,c[j>>2]|0);d=(b|0)<0;do if(b>>>0<8388608|d){if(!(b&2147483647)){e=-1.0/(a*a);break}if(d){e=(a-a)/0.0;break}else{f=-152;h=(g[j>>2]=a*33554432.0,c[j>>2]|0);i=9;break}}else if(b>>>0<=2139095039)if((b|0)==1065353216)e=0.0;else{f=-127;h=b;i=9}else e=a;while(0);if((i|0)==9){i=h+4913933|0;a=(c[j>>2]=(i&8388607)+1060439283,+g[j>>2])+-1.0;k=a/(a+2.0);l=k*k;m=l*l;n=a*(a*.5);o=(c[j>>2]=(g[j>>2]=a-n,c[j>>2]|0)&-4096,+g[j>>2]);p=a-o-n+k*(n+(l*(m*.2849878668785095+.6666666269302368)+m*(m*.24279078841209412+.40000972151756287)));e=+(f+(i>>>23)|0)+(o*1.44287109375+(p*1.44287109375-(o+p)*1.7605285393074155e-04))}return +e}function xn(a){a=a|0;var b=0,c=0,d=0;b=(yn(a)|0)+1|0;c=Pp(b)|0;if(!c)d=0;else{MD(c|0,a|0,b|0)|0;d=c}return d|0}function yn(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=b;a:do if(!(d&3)){e=b;f=4}else{g=b;h=d;while(1){if(!(a[g>>0]|0)){i=h;break a}j=g+1|0;h=j;if(!(h&3)){e=j;f=4;break}else g=j}}while(0);if((f|0)==4){f=e;while(1){k=c[f>>2]|0;if(!((k&-2139062144^-2139062144)&k+-16843009))f=f+4|0;else break}if(!((k&255)<<24>>24))l=f;else{k=f;while(1){f=k+1|0;if(!(a[f>>0]|0)){l=f;break}else k=f}}i=l}return i-d|0}function zn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Cn(a,b,f)|0;l=e;return d|0}function An(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;c=b;while(1){d=a[c>>0]|0;e=d<<24>>24;f=c+1|0;if(!(Bn(e)|0))break;else c=f}switch(e|0){case 45:{g=1;h=5;break}case 43:{g=0;h=5;break}default:{i=0;j=c;k=d}}if((h|0)==5){i=g;j=f;k=a[f>>0]|0}f=(k<<24>>24)+-48|0;if(f>>>0<10){k=0;g=j;j=f;while(1){g=g+1|0;f=(k*10|0)-j|0;j=(a[g>>0]|0)+-48|0;if(j>>>0>=10){l=f;break}else k=f}}else l=0;return (i|0?l:0-l|0)|0}function Bn(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function Cn(a,b,c){a=a|0;b=b|0;c=c|0;return Dn(a,2147483647,b,c)|0}function Dn(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;g=l;l=l+128|0;h=g+124|0;i=g;j=i;k=10252;m=j+124|0;do{c[j>>2]=c[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(m|0));if((d+-1|0)>>>0>2147483646)if(!d){n=h;o=1;p=4}else{c[(dn()|0)>>2]=75;q=-1}else{n=b;o=d;p=4}if((p|0)==4){p=-2-n|0;d=o>>>0>p>>>0?p:o;c[i+48>>2]=d;o=i+20|0;c[o>>2]=n;c[i+44>>2]=n;p=n+d|0;n=i+16|0;c[n>>2]=p;c[i+28>>2]=p;p=En(i,e,f)|0;if(!d)q=p;else{d=c[o>>2]|0;a[d+(((d|0)==(c[n>>2]|0))<<31>>31)>>0]=0;q=p}}l=g;return q|0}function En(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;f=l;l=l+224|0;g=f+120|0;h=f+80|0;i=f;j=f+136|0;k=h;m=k+40|0;do{c[k>>2]=0;k=k+4|0}while((k|0)<(m|0));c[g>>2]=c[e>>2];if((Fn(0,d,g,i,h)|0)<0)n=-1;else{if((c[b+76>>2]|0)>-1)o=Gn(b)|0;else o=0;e=c[b>>2]|0;k=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>>2]|0)){m=b+44|0;p=c[m>>2]|0;c[m>>2]=j;q=b+28|0;c[q>>2]=j;r=b+20|0;c[r>>2]=j;c[e>>2]=80;s=b+16|0;c[s>>2]=j+80;j=Fn(b,d,g,i,h)|0;if(!p)t=j;else{ib[c[b+36>>2]&31](b,0,0)|0;u=(c[r>>2]|0)==0?-1:j;c[m>>2]=p;c[e>>2]=0;c[s>>2]=0;c[q>>2]=0;c[r>>2]=0;t=u}}else t=Fn(b,d,g,i,h)|0;h=c[b>>2]|0;c[b>>2]=h|k;if(o|0)Hn(b);n=(h&32|0)==0?t:-1}l=f;return n|0}function Fn(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0;j=l;l=l+64|0;k=j+16|0;m=j;n=j+24|0;o=j+8|0;p=j+20|0;c[k>>2]=e;q=(d|0)!=0;r=n+40|0;s=r;t=n+39|0;n=o+4|0;u=0;v=0;w=0;x=e;a:while(1){do if((v|0)>-1)if((u|0)>(2147483647-v|0)){c[(dn()|0)>>2]=75;y=-1;break}else{y=u+v|0;break}else y=v;while(0);e=a[x>>0]|0;if(!(e<<24>>24)){z=87;break}else{B=e;C=x}b:while(1){switch(B<<24>>24){case 37:{D=C;E=C;z=9;break b;break}case 0:{F=C;G=C;break b;break}default:{}}e=C+1|0;c[k>>2]=e;B=a[e>>0]|0;C=e}c:do if((z|0)==9)while(1){z=0;if((a[E+1>>0]|0)!=37){F=D;G=E;break c}e=D+1|0;H=E+2|0;c[k>>2]=H;if((a[H>>0]|0)==37){D=e;E=H;z=9}else{F=e;G=H;break}}while(0);H=F-x|0;if(q)In(d,x,H);if(H|0){u=H;v=y;x=G;continue}H=G+1|0;e=(a[H>>0]|0)+-48|0;if(e>>>0<10){I=(a[G+2>>0]|0)==36;J=I?e:-1;K=I?1:w;L=I?G+3|0:H}else{J=-1;K=w;L=H}c[k>>2]=L;H=a[L>>0]|0;I=(H<<24>>24)+-32|0;d:do if(I>>>0<32){e=0;M=H;N=I;O=L;while(1){P=1<<N;if(!(P&75913)){Q=e;R=M;S=O;break d}T=P|e;P=O+1|0;c[k>>2]=P;U=a[P>>0]|0;N=(U<<24>>24)+-32|0;if(N>>>0>=32){Q=T;R=U;S=P;break}else{e=T;M=U;O=P}}}else{Q=0;R=H;S=L}while(0);if(R<<24>>24==42){H=S+1|0;I=(a[H>>0]|0)+-48|0;if(I>>>0<10?(a[S+2>>0]|0)==36:0){c[i+(I<<2)>>2]=10;V=c[g+((a[H>>0]|0)+-48<<3)>>2]|0;W=1;X=S+3|0}else{if(K|0){Y=-1;break}if(q){I=(c[f>>2]|0)+(4-1)&~(4-1);O=c[I>>2]|0;c[f>>2]=I+4;V=O;W=0;X=H}else{V=0;W=0;X=H}}c[k>>2]=X;H=(V|0)<0;Z=H?0-V|0:V;_=H?Q|8192:Q;$=W;aa=X}else{H=Jn(k)|0;if((H|0)<0){Y=-1;break}Z=H;_=Q;$=K;aa=c[k>>2]|0}do if((a[aa>>0]|0)==46){if((a[aa+1>>0]|0)!=42){c[k>>2]=aa+1;H=Jn(k)|0;ba=H;ca=c[k>>2]|0;break}H=aa+2|0;O=(a[H>>0]|0)+-48|0;if(O>>>0<10?(a[aa+3>>0]|0)==36:0){c[i+(O<<2)>>2]=10;O=c[g+((a[H>>0]|0)+-48<<3)>>2]|0;I=aa+4|0;c[k>>2]=I;ba=O;ca=I;break}if($|0){Y=-1;break a}if(q){I=(c[f>>2]|0)+(4-1)&~(4-1);O=c[I>>2]|0;c[f>>2]=I+4;da=O}else da=0;c[k>>2]=H;ba=da;ca=H}else{ba=-1;ca=aa}while(0);H=0;O=ca;while(1){if(((a[O>>0]|0)+-65|0)>>>0>57){Y=-1;break a}ea=O+1|0;c[k>>2]=ea;fa=a[(a[O>>0]|0)+-65+(31329+(H*58|0))>>0]|0;ga=fa&255;if((ga+-1|0)>>>0<8){H=ga;O=ea}else break}if(!(fa<<24>>24)){Y=-1;break}I=(J|0)>-1;do if(fa<<24>>24==19)if(I){Y=-1;break a}else z=49;else{if(I){c[i+(J<<2)>>2]=ga;M=g+(J<<3)|0;e=c[M+4>>2]|0;N=m;c[N>>2]=c[M>>2];c[N+4>>2]=e;z=49;break}if(!q){Y=0;break a}Kn(m,ga,f)}while(0);if((z|0)==49?(z=0,!q):0){u=0;v=y;w=$;x=ea;continue}I=a[O>>0]|0;e=(H|0)!=0&(I&15|0)==3?I&-33:I;I=_&-65537;N=(_&8192|0)==0?_:I;e:do switch(e|0){case 110:{switch((H&255)<<24>>24){case 0:{c[c[m>>2]>>2]=y;u=0;v=y;w=$;x=ea;continue a;break}case 1:{c[c[m>>2]>>2]=y;u=0;v=y;w=$;x=ea;continue a;break}case 2:{M=c[m>>2]|0;c[M>>2]=y;c[M+4>>2]=((y|0)<0)<<31>>31;u=0;v=y;w=$;x=ea;continue a;break}case 3:{b[c[m>>2]>>1]=y;u=0;v=y;w=$;x=ea;continue a;break}case 4:{a[c[m>>2]>>0]=y;u=0;v=y;w=$;x=ea;continue a;break}case 6:{c[c[m>>2]>>2]=y;u=0;v=y;w=$;x=ea;continue a;break}case 7:{M=c[m>>2]|0;c[M>>2]=y;c[M+4>>2]=((y|0)<0)<<31>>31;u=0;v=y;w=$;x=ea;continue a;break}default:{u=0;v=y;w=$;x=ea;continue a}}break}case 112:{ha=120;ia=ba>>>0>8?ba:8;ja=N|8;z=61;break}case 88:case 120:{ha=e;ia=ba;ja=N;z=61;break}case 111:{M=m;P=c[M>>2]|0;U=c[M+4>>2]|0;M=Mn(P,U,r)|0;T=s-M|0;ka=M;la=0;ma=31793;na=(N&8|0)==0|(ba|0)>(T|0)?ba:T+1|0;oa=N;pa=P;qa=U;z=67;break}case 105:case 100:{U=m;P=c[U>>2]|0;T=c[U+4>>2]|0;if((T|0)<0){U=FD(0,0,P|0,T|0)|0;M=A;ra=m;c[ra>>2]=U;c[ra+4>>2]=M;sa=1;ta=31793;ua=U;va=M;z=66;break e}else{sa=(N&2049|0)!=0&1;ta=(N&2048|0)==0?((N&1|0)==0?31793:31795):31794;ua=P;va=T;z=66;break e}break}case 117:{T=m;sa=0;ta=31793;ua=c[T>>2]|0;va=c[T+4>>2]|0;z=66;break}case 99:{a[t>>0]=c[m>>2];wa=t;xa=0;ya=31793;za=r;Aa=1;Ba=I;break}case 109:{Ca=On(c[(dn()|0)>>2]|0)|0;z=71;break}case 115:{T=c[m>>2]|0;Ca=T|0?T:31803;z=71;break}case 67:{c[o>>2]=c[m>>2];c[n>>2]=0;c[m>>2]=o;Da=-1;Ea=o;z=75;break}case 83:{T=c[m>>2]|0;if(!ba){Qn(d,32,Z,0,N);Fa=0;z=84}else{Da=ba;Ea=T;z=75}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{u=Sn(d,+h[m>>3],Z,ba,N,e)|0;v=y;w=$;x=ea;continue a;break}default:{wa=x;xa=0;ya=31793;za=r;Aa=ba;Ba=N}}while(0);f:do if((z|0)==61){z=0;e=m;H=c[e>>2]|0;O=c[e+4>>2]|0;e=Ln(H,O,r,ha&32)|0;T=(ja&8|0)==0|(H|0)==0&(O|0)==0;ka=e;la=T?0:2;ma=T?31793:31793+(ha>>4)|0;na=ia;oa=ja;pa=H;qa=O;z=67}else if((z|0)==66){z=0;ka=Nn(ua,va,r)|0;la=sa;ma=ta;na=ba;oa=N;pa=ua;qa=va;z=67}else if((z|0)==71){z=0;O=Pn(Ca,0,ba)|0;H=(O|0)==0;wa=Ca;xa=0;ya=31793;za=H?Ca+ba|0:O;Aa=H?ba:O-Ca|0;Ba=I}else if((z|0)==75){z=0;O=Ea;H=0;T=0;while(1){e=c[O>>2]|0;if(!e){Ga=H;Ha=T;break}P=Rn(p,e)|0;if((P|0)<0|P>>>0>(Da-H|0)>>>0){Ga=H;Ha=P;break}e=P+H|0;if(Da>>>0>e>>>0){O=O+4|0;H=e;T=P}else{Ga=e;Ha=P;break}}if((Ha|0)<0){Y=-1;break a}Qn(d,32,Z,Ga,N);if(!Ga){Fa=0;z=84}else{T=Ea;H=0;while(1){O=c[T>>2]|0;if(!O){Fa=Ga;z=84;break f}P=Rn(p,O)|0;H=P+H|0;if((H|0)>(Ga|0)){Fa=Ga;z=84;break f}In(d,p,P);if(H>>>0>=Ga>>>0){Fa=Ga;z=84;break}else T=T+4|0}}}while(0);if((z|0)==67){z=0;I=(pa|0)!=0|(qa|0)!=0;T=(na|0)!=0|I;H=((I^1)&1)+(s-ka)|0;wa=T?ka:r;xa=la;ya=ma;za=r;Aa=T?((na|0)>(H|0)?na:H):na;Ba=(na|0)>-1?oa&-65537:oa}else if((z|0)==84){z=0;Qn(d,32,Z,Fa,N^8192);u=(Z|0)>(Fa|0)?Z:Fa;v=y;w=$;x=ea;continue}H=za-wa|0;T=(Aa|0)<(H|0)?H:Aa;I=T+xa|0;P=(Z|0)<(I|0)?I:Z;Qn(d,32,P,I,Ba);In(d,ya,xa);Qn(d,48,P,I,Ba^65536);Qn(d,48,T,H,0);In(d,wa,H);Qn(d,32,P,I,Ba^8192);u=P;v=y;w=$;x=ea}g:do if((z|0)==87)if(!d)if(!w)Y=0;else{ea=1;while(1){x=c[i+(ea<<2)>>2]|0;if(!x){Ia=ea;break}Kn(g+(ea<<3)|0,x,f);ea=ea+1|0;if((ea|0)>=10){Y=1;break g}}while(1){if(c[i+(Ia<<2)>>2]|0){Y=-1;break g}Ia=Ia+1|0;if((Ia|0)>=10){Y=1;break}}}else Y=y;while(0);l=j;return Y|0}function Gn(a){a=a|0;return 0}function Hn(a){a=a|0;return}function In(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))bo(b,d,a)|0;return}function Jn(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=c[b>>2]|0;e=(a[d>>0]|0)+-48|0;if(e>>>0<10){f=0;g=d;d=e;while(1){e=d+(f*10|0)|0;g=g+1|0;c[b>>2]=g;d=(a[g>>0]|0)+-48|0;if(d>>>0>=10){h=e;break}else f=e}}else h=0;return h|0}function Kn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);f=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=f;break a;break}case 10:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a;break}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);f=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=f;c[e+4>>2]=0;break a;break}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);f=e;g=c[f>>2]|0;i=c[f+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=g;c[e+4>>2]=i;break a;break}case 13:{i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;i=(e&65535)<<16>>16;e=a;c[e>>2]=i;c[e+4>>2]=((i|0)<0)<<31>>31;break a;break}case 14:{i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;i=a;c[i>>2]=e&65535;c[i+4>>2]=0;break a;break}case 15:{i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;i=(e&255)<<24>>24;e=a;c[e>>2]=i;c[e+4>>2]=((i|0)<0)<<31>>31;break a;break}case 16:{i=(c[d>>2]|0)+(4-1)&~(4-1);e=c[i>>2]|0;c[d>>2]=i+4;i=a;c[i>>2]=e&255;c[i+4>>2]=0;break a;break}case 17:{i=(c[d>>2]|0)+(8-1)&~(8-1);j=+h[i>>3];c[d>>2]=i+8;h[a>>3]=j;break a;break}case 18:{i=(c[d>>2]|0)+(8-1)&~(8-1);j=+h[i>>3];c[d>>2]=i+8;h[a>>3]=j;break a;break}default:break a}while(0);while(0);return}function Ln(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0,h=0;if((b|0)==0&(c|0)==0)g=e;else{h=e;e=c;c=b;while(1){b=h+-1|0;a[b>>0]=d[31841+(c&15)>>0]|0|f;c=KD(c|0,e|0,4)|0;e=A;if((c|0)==0&(e|0)==0){g=b;break}else h=b}}return g|0}function Mn(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;if((b|0)==0&(c|0)==0)e=d;else{f=d;d=c;c=b;while(1){b=f+-1|0;a[b>>0]=c&7|48;c=KD(c|0,d|0,3)|0;d=A;if((c|0)==0&(d|0)==0){e=b;break}else f=b}}return e|0}function Nn(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){e=d;f=b;g=c;while(1){c=VD(f|0,g|0,10,0)|0;e=e+-1|0;a[e>>0]=c&255|48;c=f;f=PD(f|0,g|0,10,0)|0;if(!(g>>>0>9|(g|0)==9&c>>>0>4294967295))break;else g=A}h=f;i=e}else{h=b;i=d}if(!h)j=i;else{d=h;h=i;while(1){i=h+-1|0;a[i>>0]=(d>>>0)%10|0|48;if(d>>>0<10){j=i;break}else{d=(d>>>0)/10|0;h=i}}}return j|0}function On(a){a=a|0;return Xn(a,c[(Wn()|0)+188>>2]|0)|0}function Pn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;f=d&255;g=(e|0)!=0;a:do if(g&(b&3|0)!=0){h=d&255;i=b;j=e;while(1){if((a[i>>0]|0)==h<<24>>24){k=i;l=j;m=6;break a}n=i+1|0;o=j+-1|0;p=(o|0)!=0;if(p&(n&3|0)!=0){i=n;j=o}else{q=n;r=o;s=p;m=5;break}}}else{q=b;r=e;s=g;m=5}while(0);if((m|0)==5)if(s){k=q;l=r;m=6}else{t=q;u=0}b:do if((m|0)==6){q=d&255;if((a[k>>0]|0)==q<<24>>24){t=k;u=l}else{r=P(f,16843009)|0;c:do if(l>>>0>3){s=k;g=l;while(1){e=c[s>>2]^r;if((e&-2139062144^-2139062144)&e+-16843009|0)break;e=s+4|0;b=g+-4|0;if(b>>>0>3){s=e;g=b}else{v=e;w=b;m=11;break c}}x=s;y=g}else{v=k;w=l;m=11}while(0);if((m|0)==11)if(!w){t=v;u=0;break}else{x=v;y=w}while(1){if((a[x>>0]|0)==q<<24>>24){t=x;u=y;break b}r=x+1|0;y=y+-1|0;if(!y){t=r;u=0;break}else x=r}}}while(0);return (u|0?t:0)|0}function Qn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+256|0;g=f;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;HD(g|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;d=e;do{In(a,g,256);d=d+-256|0}while(d>>>0>255);h=b&255}else h=e;In(a,g,h)}l=f;return}function Rn(a,b){a=a|0;b=b|0;var c=0;if(!a)c=0;else c=Un(a,b,0)|0;return c|0}function Sn(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,B=0,C=0.0,D=0,E=0.0,F=0,G=0,H=0,I=0.0,J=0,K=0,L=0,M=0,N=0.0,O=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0.0,fa=0.0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0;j=l;l=l+560|0;k=j+8|0;m=j;n=j+524|0;o=n;p=j+512|0;c[m>>2]=0;q=p+12|0;Tn(e)|0;if((A|0)<0){r=-e;s=1;t=31810}else{r=e;s=(h&2049|0)!=0&1;t=(h&2048|0)==0?((h&1|0)==0?31811:31816):31813}Tn(r)|0;u=A&2146435072;do if(u>>>0<2146435072|(u|0)==2146435072&0<0){e=+qn(r,m)*2.0;v=e!=0.0;if(v)c[m>>2]=(c[m>>2]|0)+-1;w=i|32;if((w|0)==97){x=i&32;y=(x|0)==0?t:t+9|0;z=s|2;B=12-g|0;do if(!(g>>>0>11|(B|0)==0)){C=8.0;D=B;do{D=D+-1|0;C=C*16.0}while((D|0)!=0);if((a[y>>0]|0)==45){E=-(C+(-e-C));break}else{E=e+C-C;break}}else E=e;while(0);B=c[m>>2]|0;D=(B|0)<0?0-B|0:B;F=Nn(D,((D|0)<0)<<31>>31,q)|0;if((F|0)==(q|0)){D=p+11|0;a[D>>0]=48;G=D}else G=F;a[G+-1>>0]=(B>>31&2)+43;B=G+-2|0;a[B>>0]=i+15;F=(g|0)<1;D=(h&8|0)==0;H=n;I=E;while(1){J=~~I;K=H+1|0;a[H>>0]=d[31841+J>>0]|x;I=(I-+(J|0))*16.0;if((K-o|0)==1?!(D&(F&I==0.0)):0){a[K>>0]=46;L=H+2|0}else L=K;if(!(I!=0.0))break;else H=L}H=L-o|0;F=q-B|0;D=(g|0)!=0&(H+-2|0)<(g|0)?g+2|0:H;x=F+z+D|0;Qn(b,32,f,x,h);In(b,y,z);Qn(b,48,f,x,h^65536);In(b,n,H);Qn(b,48,D-H|0,0,0);In(b,B,F);Qn(b,32,f,x,h^8192);M=x;break}x=(g|0)<0?6:g;if(v){F=(c[m>>2]|0)+-28|0;c[m>>2]=F;N=e*268435456.0;O=F}else{N=e;O=c[m>>2]|0}F=(O|0)<0?k:k+288|0;H=F;I=N;do{D=~~I>>>0;c[H>>2]=D;H=H+4|0;I=(I-+(D>>>0))*1.0e9}while(I!=0.0);if((O|0)>0){v=F;B=H;z=O;while(1){y=(z|0)<29?z:29;D=B+-4|0;if(D>>>0>=v>>>0){K=D;D=0;do{J=TD(c[K>>2]|0,0,y|0)|0;Q=JD(J|0,A|0,D|0,0)|0;J=A;R=VD(Q|0,J|0,1e9,0)|0;c[K>>2]=R;D=PD(Q|0,J|0,1e9,0)|0;K=K+-4|0}while(K>>>0>=v>>>0);if(D){K=v+-4|0;c[K>>2]=D;S=K}else S=v}else S=v;K=B;while(1){if(K>>>0<=S>>>0)break;J=K+-4|0;if(!(c[J>>2]|0))K=J;else break}D=(c[m>>2]|0)-y|0;c[m>>2]=D;if((D|0)>0){v=S;B=K;z=D}else{T=S;U=K;V=D;break}}}else{T=F;U=H;V=O}if((V|0)<0){z=((x+25|0)/9|0)+1|0;B=(w|0)==102;v=T;D=U;J=V;while(1){Q=0-J|0;R=(Q|0)<9?Q:9;if(v>>>0<D>>>0){Q=(1<<R)+-1|0;W=1e9>>>R;X=0;Y=v;do{Z=c[Y>>2]|0;c[Y>>2]=(Z>>>R)+X;X=P(Z&Q,W)|0;Y=Y+4|0}while(Y>>>0<D>>>0);Y=(c[v>>2]|0)==0?v+4|0:v;if(!X){_=Y;$=D}else{c[D>>2]=X;_=Y;$=D+4|0}}else{_=(c[v>>2]|0)==0?v+4|0:v;$=D}Y=B?F:_;W=($-Y>>2|0)>(z|0)?Y+(z<<2)|0:$;J=(c[m>>2]|0)+R|0;c[m>>2]=J;if((J|0)>=0){aa=_;ba=W;break}else{v=_;D=W}}}else{aa=T;ba=U}D=F;if(aa>>>0<ba>>>0){v=(D-aa>>2)*9|0;J=c[aa>>2]|0;if(J>>>0<10)ca=v;else{z=v;v=10;while(1){v=v*10|0;B=z+1|0;if(J>>>0<v>>>0){ca=B;break}else z=B}}}else ca=0;z=(w|0)==103;v=(x|0)!=0;J=x-((w|0)!=102?ca:0)+((v&z)<<31>>31)|0;if((J|0)<(((ba-D>>2)*9|0)+-9|0)){B=J+9216|0;J=F+4+(((B|0)/9|0)+-1024<<2)|0;H=((B|0)%9|0)+1|0;if((H|0)<9){B=H;H=10;while(1){W=H*10|0;B=B+1|0;if((B|0)==9){da=W;break}else H=W}}else da=10;H=c[J>>2]|0;B=(H>>>0)%(da>>>0)|0;w=(J+4|0)==(ba|0);if(!(w&(B|0)==0)){C=(((H>>>0)/(da>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;W=(da|0)/2|0;I=B>>>0<W>>>0?.5:w&(B|0)==(W|0)?1.0:1.5;if(!s){ea=I;fa=C}else{W=(a[t>>0]|0)==45;ea=W?-I:I;fa=W?-C:C}W=H-B|0;c[J>>2]=W;if(fa+ea!=fa){B=W+da|0;c[J>>2]=B;if(B>>>0>999999999){B=aa;W=J;while(1){H=W+-4|0;c[W>>2]=0;if(H>>>0<B>>>0){w=B+-4|0;c[w>>2]=0;ga=w}else ga=B;w=(c[H>>2]|0)+1|0;c[H>>2]=w;if(w>>>0>999999999){B=ga;W=H}else{ha=ga;ia=H;break}}}else{ha=aa;ia=J}W=(D-ha>>2)*9|0;B=c[ha>>2]|0;if(B>>>0<10){ja=ia;ka=W;la=ha}else{H=W;W=10;while(1){W=W*10|0;w=H+1|0;if(B>>>0<W>>>0){ja=ia;ka=w;la=ha;break}else H=w}}}else{ja=J;ka=ca;la=aa}}else{ja=J;ka=ca;la=aa}H=ja+4|0;ma=ka;na=ba>>>0>H>>>0?H:ba;oa=la}else{ma=ca;na=ba;oa=aa}H=na;while(1){if(H>>>0<=oa>>>0){pa=0;break}W=H+-4|0;if(!(c[W>>2]|0))H=W;else{pa=1;break}}J=0-ma|0;do if(z){W=((v^1)&1)+x|0;if((W|0)>(ma|0)&(ma|0)>-5){qa=i+-1|0;ra=W+-1-ma|0}else{qa=i+-2|0;ra=W+-1|0}W=h&8;if(!W){if(pa?(B=c[H+-4>>2]|0,(B|0)!=0):0)if(!((B>>>0)%10|0)){w=0;Y=10;while(1){Y=Y*10|0;Q=w+1|0;if((B>>>0)%(Y>>>0)|0|0){sa=Q;break}else w=Q}}else sa=0;else sa=9;w=((H-D>>2)*9|0)+-9|0;if((qa|32|0)==102){Y=w-sa|0;B=(Y|0)>0?Y:0;ta=qa;ua=(ra|0)<(B|0)?ra:B;va=0;break}else{B=w+ma-sa|0;w=(B|0)>0?B:0;ta=qa;ua=(ra|0)<(w|0)?ra:w;va=0;break}}else{ta=qa;ua=ra;va=W}}else{ta=i;ua=x;va=h&8}while(0);x=ua|va;D=(x|0)!=0&1;v=(ta|32|0)==102;if(v){wa=0;xa=(ma|0)>0?ma:0}else{z=(ma|0)<0?J:ma;w=Nn(z,((z|0)<0)<<31>>31,q)|0;z=q;if((z-w|0)<2){B=w;while(1){Y=B+-1|0;a[Y>>0]=48;if((z-Y|0)<2)B=Y;else{ya=Y;break}}}else ya=w;a[ya+-1>>0]=(ma>>31&2)+43;B=ya+-2|0;a[B>>0]=ta;wa=B;xa=z-B|0}B=s+1+ua+D+xa|0;Qn(b,32,f,B,h);In(b,t,s);Qn(b,48,f,B,h^65536);if(v){J=oa>>>0>F>>>0?F:oa;Y=n+9|0;R=Y;X=n+8|0;Q=J;do{K=Nn(c[Q>>2]|0,0,Y)|0;if((Q|0)==(J|0))if((K|0)==(Y|0)){a[X>>0]=48;za=X}else za=K;else if(K>>>0>n>>>0){HD(n|0,48,K-o|0)|0;y=K;while(1){Z=y+-1|0;if(Z>>>0>n>>>0)y=Z;else{za=Z;break}}}else za=K;In(b,za,R-za|0);Q=Q+4|0}while(Q>>>0<=F>>>0);if(x|0)In(b,31857,1);if(Q>>>0<H>>>0&(ua|0)>0){F=ua;R=Q;while(1){X=Nn(c[R>>2]|0,0,Y)|0;if(X>>>0>n>>>0){HD(n|0,48,X-o|0)|0;J=X;while(1){v=J+-1|0;if(v>>>0>n>>>0)J=v;else{Aa=v;break}}}else Aa=X;In(b,Aa,(F|0)<9?F:9);R=R+4|0;J=F+-9|0;if(!(R>>>0<H>>>0&(F|0)>9)){Ba=J;break}else F=J}}else Ba=ua;Qn(b,48,Ba+9|0,9,0)}else{F=pa?H:oa+4|0;if((ua|0)>-1){R=n+9|0;Y=(va|0)==0;Q=R;x=0-o|0;J=n+8|0;K=ua;v=oa;while(1){D=Nn(c[v>>2]|0,0,R)|0;if((D|0)==(R|0)){a[J>>0]=48;Ca=J}else Ca=D;do if((v|0)==(oa|0)){D=Ca+1|0;In(b,Ca,1);if(Y&(K|0)<1){Da=D;break}In(b,31857,1);Da=D}else{if(Ca>>>0<=n>>>0){Da=Ca;break}HD(n|0,48,Ca+x|0)|0;D=Ca;while(1){z=D+-1|0;if(z>>>0>n>>>0)D=z;else{Da=z;break}}}while(0);X=Q-Da|0;In(b,Da,(K|0)>(X|0)?X:K);D=K-X|0;v=v+4|0;if(!(v>>>0<F>>>0&(D|0)>-1)){Ea=D;break}else K=D}}else Ea=ua;Qn(b,48,Ea+18|0,18,0);In(b,wa,q-wa|0)}Qn(b,32,f,B,h^8192);M=B}else{K=(i&32|0)!=0;F=s+3|0;Qn(b,32,f,F,h&-65537);In(b,t,s);In(b,r!=r|0.0!=0.0?(K?33760:31837):K?31829:31833,3);Qn(b,32,f,F,h^8192);M=F}while(0);l=j;return ((M|0)<(f|0)?f:M)|0}function Tn(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;A=c[j+4>>2]|0;return b|0}function Un(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;do if(b){if(d>>>0<128){a[b>>0]=d;f=1;break}if(!(c[c[(Vn()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;f=1;break}else{c[(dn()|0)>>2]=84;f=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;f=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;f=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;f=4;break}else{c[(dn()|0)>>2]=84;f=-1;break}}else f=1;while(0);return f|0}function Vn(){return fn()|0}function Wn(){return fn()|0}function Xn(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=0;while(1){if((d[31859+f>>0]|0)==(b|0)){g=2;break}h=f+1|0;if((h|0)==87){i=31947;j=87;g=5;break}else f=h}if((g|0)==2)if(!f)k=31947;else{i=31947;j=f;g=5}if((g|0)==5)while(1){g=0;f=i;do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);j=j+-1|0;if(!j){k=f;break}else{i=f;g=5}}return Yn(k,c[e+20>>2]|0)|0}function Yn(a,b){a=a|0;b=b|0;return Zn(a,b)|0}function Zn(a,b){a=a|0;b=b|0;var d=0;if(!b)d=0;else d=_n(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (d|0?d:a)|0}function _n(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=(c[b>>2]|0)+1794895138|0;g=$n(c[b+8>>2]|0,f)|0;h=$n(c[b+12>>2]|0,f)|0;i=$n(c[b+16>>2]|0,f)|0;a:do if((g>>>0<d>>>2>>>0?(j=d-(g<<2)|0,h>>>0<j>>>0&i>>>0<j>>>0):0)?((i|h)&3|0)==0:0){j=h>>>2;k=i>>>2;l=0;m=g;while(1){n=m>>>1;o=l+n|0;p=o<<1;q=p+j|0;r=$n(c[b+(q<<2)>>2]|0,f)|0;s=$n(c[b+(q+1<<2)>>2]|0,f)|0;if(!(s>>>0<d>>>0&r>>>0<(d-s|0)>>>0)){t=0;break a}if(a[b+(s+r)>>0]|0){t=0;break a}r=ao(e,b+s|0)|0;if(!r)break;s=(r|0)<0;if((m|0)==1){t=0;break a}else{l=s?l:o;m=s?n:m-n|0}}m=p+k|0;l=$n(c[b+(m<<2)>>2]|0,f)|0;j=$n(c[b+(m+1<<2)>>2]|0,f)|0;if(j>>>0<d>>>0&l>>>0<(d-j|0)>>>0)t=(a[b+(j+l)>>0]|0)==0?b+j|0:0;else t=0}else t=0;while(0);return t|0}function $n(a,b){a=a|0;b=b|0;var c=0;c=XD(a|0)|0;return ((b|0)==0?a:c)|0}function ao(b,c){b=b|0;c=c|0;var d=0,e=0,f=0,g=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24){f=e;g=d}else{d=c;c=b;do{c=c+1|0;d=d+1|0;b=a[c>>0]|0;e=a[d>>0]|0}while(!(b<<24>>24==0?1:b<<24>>24!=e<<24>>24));f=e;g=b}return (g&255)-(f&255)|0}function bo(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(co(e)|0)){h=c[f>>2]|0;i=5}else j=0;else{h=g;i=5}a:do if((i|0)==5){g=e+20|0;f=c[g>>2]|0;k=f;if((h-f|0)>>>0<d>>>0){j=ib[c[e+36>>2]&31](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){l=0;m=b;n=d;o=k;break b}p=f+-1|0;if((a[b+p>>0]|0)==10)break;else f=p}p=ib[c[e+36>>2]&31](e,b,f)|0;if(p>>>0<f>>>0){j=p;break a}l=f;m=b+f|0;n=d-f|0;o=c[g>>2]|0}else{l=0;m=b;n=d;o=k}while(0);MD(o|0,m|0,n|0)|0;c[g>>2]=(c[g>>2]|0)+n;j=l+n|0}while(0);return j|0}function co(b){b=b|0;var d=0,e=0,f=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;e=c[b>>2]|0;if(!(e&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d;c[b+16>>2]=d+(c[b+48>>2]|0);f=0}else{c[b>>2]=e|32;f=-1}return f|0}function eo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=a+20|0;f=c[e>>2]|0;g=(c[a+16>>2]|0)-f|0;a=g>>>0>d>>>0?d:g;MD(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function fo(a,b){a=a|0;b=b|0;return +(+go(a,b,1))}function go(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0.0;e=l;l=l+128|0;f=e;g=f;h=g+124|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));g=f+4|0;c[g>>2]=a;h=f+8|0;c[h>>2]=-1;c[f+44>>2]=a;c[f+76>>2]=-1;ho(f,0);i=+io(f,d,1);d=(c[g>>2]|0)-(c[h>>2]|0)+(c[f+108>>2]|0)|0;if(b|0)c[b>>2]=d|0?a+d|0:a;l=e;return +i}function ho(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function io(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;switch(e|0){case 0:{g=-149;h=24;i=4;break}case 1:{g=-1074;h=53;i=4;break}case 2:{g=-1074;h=53;i=4;break}default:j=0.0}a:do if((i|0)==4){e=b+4|0;k=b+100|0;do{l=c[e>>2]|0;if(l>>>0<(c[k>>2]|0)>>>0){c[e>>2]=l+1;m=d[l>>0]|0}else m=jo(b)|0}while((Bn(m)|0)!=0);b:do switch(m|0){case 43:case 45:{l=1-(((m|0)==45&1)<<1)|0;n=c[e>>2]|0;if(n>>>0<(c[k>>2]|0)>>>0){c[e>>2]=n+1;o=d[n>>0]|0;p=l;break b}else{o=jo(b)|0;p=l;break b}break}default:{o=m;p=1}}while(0);l=0;n=o;while(1){if((n|32|0)!=(a[33751+l>>0]|0)){q=l;r=n;break}do if(l>>>0<7){s=c[e>>2]|0;if(s>>>0<(c[k>>2]|0)>>>0){c[e>>2]=s+1;v=d[s>>0]|0;break}else{v=jo(b)|0;break}}else v=n;while(0);s=l+1|0;if(s>>>0<8){l=s;n=v}else{q=s;r=v;break}}c:do switch(q|0){case 8:break;case 3:{i=23;break}default:{n=(f|0)!=0;if(n&q>>>0>3)if((q|0)==8)break c;else{i=23;break c}d:do if(!q){l=0;s=r;while(1){if((s|32|0)!=(a[33760+l>>0]|0)){w=l;x=s;break d}do if(l>>>0<2){y=c[e>>2]|0;if(y>>>0<(c[k>>2]|0)>>>0){c[e>>2]=y+1;z=d[y>>0]|0;break}else{z=jo(b)|0;break}}else z=s;while(0);y=l+1|0;if(y>>>0<3){l=y;s=z}else{w=y;x=z;break}}}else{w=q;x=r}while(0);switch(w|0){case 3:{s=c[e>>2]|0;if(s>>>0<(c[k>>2]|0)>>>0){c[e>>2]=s+1;A=d[s>>0]|0}else A=jo(b)|0;if((A|0)==40)B=1;else{if(!(c[k>>2]|0)){j=t;break a}c[e>>2]=(c[e>>2]|0)+-1;j=t;break a}while(1){s=c[e>>2]|0;if(s>>>0<(c[k>>2]|0)>>>0){c[e>>2]=s+1;C=d[s>>0]|0}else C=jo(b)|0;if(!((C+-48|0)>>>0<10|(C+-65|0)>>>0<26)?!((C|0)==95|(C+-97|0)>>>0<26):0)break;B=B+1|0}if((C|0)==41){j=t;break a}s=(c[k>>2]|0)==0;if(!s)c[e>>2]=(c[e>>2]|0)+-1;if(!n){c[(dn()|0)>>2]=22;ho(b,0);j=0.0;break a}if(!B){j=t;break a}else D=B;while(1){D=D+-1|0;if(!s)c[e>>2]=(c[e>>2]|0)+-1;if(!D){j=t;break a}}break}case 0:{if((x|0)==48){s=c[e>>2]|0;if(s>>>0<(c[k>>2]|0)>>>0){c[e>>2]=s+1;E=d[s>>0]|0}else E=jo(b)|0;if((E|32|0)==120){j=+ko(b,h,g,p,f);break a}if(!(c[k>>2]|0))F=48;else{c[e>>2]=(c[e>>2]|0)+-1;F=48}}else F=x;j=+lo(b,F,h,g,p,f);break a;break}default:{if(c[k>>2]|0)c[e>>2]=(c[e>>2]|0)+-1;c[(dn()|0)>>2]=22;ho(b,0);j=0.0;break a}}}}while(0);if((i|0)==23){s=(c[k>>2]|0)==0;if(!s)c[e>>2]=(c[e>>2]|0)+-1;if((f|0)!=0&q>>>0>3){n=q;do{if(!s)c[e>>2]=(c[e>>2]|0)+-1;n=n+-1|0}while(n>>>0>3)}}j=+(p|0)*u}while(0);return +j}function jo(b){b=b|0;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,q=0;e=b+104|0;f=c[e>>2]|0;if((f|0)!=0?(c[b+108>>2]|0)>=(f|0):0)g=4;else{f=no(b)|0;if((f|0)>=0){h=c[e>>2]|0;e=b+8|0;if(h){i=c[e>>2]|0;j=c[b+4>>2]|0;k=b+108|0;l=h-(c[k>>2]|0)|0;h=i;if((i-j|0)<(l|0)){m=k;n=h;o=h;p=j}else{m=k;n=j+(l+-1)|0;o=h;p=j}}else{j=c[e>>2]|0;m=b+108|0;n=j;o=j;p=c[b+4>>2]|0}c[b+100>>2]=n;if(o|0)c[m>>2]=o+1-p+(c[m>>2]|0);m=p+-1|0;if((d[m>>0]|0|0)==(f|0))q=f;else{a[m>>0]=f;q=f}}else g=4}if((g|0)==4){c[b+100>>2]=0;q=-1}return q|0}function ko(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0.0,I=0,J=0,K=0,L=0,M=0,N=0,O=0.0,P=0,Q=0.0,R=0.0,S=0,T=0.0,U=0,V=0,W=0,X=0.0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0.0,da=0,ea=0.0;h=a+4|0;i=c[h>>2]|0;j=a+100|0;if(i>>>0<(c[j>>2]|0)>>>0){c[h>>2]=i+1;k=d[i>>0]|0;l=0}else{k=jo(a)|0;l=0}a:while(1){switch(k|0){case 46:{m=8;break a;break}case 48:break;default:{n=0;o=0;p=1.0;q=0.0;r=0;s=k;t=l;u=0;v=0;w=0;x=0;break a}}i=c[h>>2]|0;if(i>>>0<(c[j>>2]|0)>>>0){c[h>>2]=i+1;k=d[i>>0]|0;l=1;continue}else{k=jo(a)|0;l=1;continue}}if((m|0)==8){k=c[h>>2]|0;if(k>>>0<(c[j>>2]|0)>>>0){c[h>>2]=k+1;y=d[k>>0]|0}else y=jo(a)|0;if((y|0)==48){k=0;i=0;while(1){z=c[h>>2]|0;if(z>>>0<(c[j>>2]|0)>>>0){c[h>>2]=z+1;B=d[z>>0]|0}else B=jo(a)|0;z=JD(k|0,i|0,-1,-1)|0;C=A;if((B|0)==48){k=z;i=C}else{n=1;o=0;p=1.0;q=0.0;r=0;s=B;t=1;u=C;v=0;w=0;x=z;break}}}else{n=1;o=0;p=1.0;q=0.0;r=0;s=y;t=l;u=0;v=0;w=0;x=0}}while(1){l=s+-48|0;y=(s|0)==46;if(l>>>0>=10?!(y|((s|32)+-97|0)>>>0<6):0){D=s;break}if(y)if(!n){E=1;F=o;G=p;H=q;I=r;J=t;K=w;L=v;M=w;N=v}else{D=46;break}else{y=(s|0)>57?(s|32)+-87|0:l;do if(!((v|0)<0|(v|0)==0&w>>>0<8))if((v|0)<0|(v|0)==0&w>>>0<14){O=p*.0625;P=o;Q=O;R=q+O*+(y|0);S=r;break}else{l=(o|0)!=0|(y|0)==0;P=l?o:1;Q=p;R=l?q:q+p*.5;S=r;break}else{P=o;Q=p;R=q;S=y+(r<<4)|0}while(0);y=JD(w|0,v|0,1,0)|0;E=n;F=P;G=Q;H=R;I=S;J=1;K=x;L=u;M=y;N=A}y=c[h>>2]|0;if(y>>>0<(c[j>>2]|0)>>>0){c[h>>2]=y+1;n=E;o=F;p=G;q=H;r=I;s=d[y>>0]|0;t=J;u=L;v=N;w=M;x=K;continue}else{n=E;o=F;p=G;q=H;r=I;s=jo(a)|0;t=J;u=L;v=N;w=M;x=K;continue}}do if(!t){K=c[j>>2]|0;M=(K|0)!=0;if(M)c[h>>2]=(c[h>>2]|0)+-1;if(g){if(M)c[h>>2]=(c[h>>2]|0)+-1;if(!((n|0)==0|(K|0)==0))c[h>>2]=(c[h>>2]|0)+-1}else ho(a,0);T=+(f|0)*0.0}else{K=(n|0)==0;M=K?w:x;N=K?v:u;if((v|0)<0|(v|0)==0&w>>>0<8){K=r;L=w;J=v;while(1){s=K<<4;L=JD(L|0,J|0,1,0)|0;J=A;if(!((J|0)<0|(J|0)==0&L>>>0<8)){U=s;break}else K=s}}else U=r;if((D|32|0)==112){K=mo(a,g)|0;L=A;if((K|0)==0&(L|0)==-2147483648){if(!g){ho(a,0);T=0.0;break}if(!(c[j>>2]|0)){V=0;W=0}else{c[h>>2]=(c[h>>2]|0)+-1;V=0;W=0}}else{V=K;W=L}}else if(!(c[j>>2]|0)){V=0;W=0}else{c[h>>2]=(c[h>>2]|0)+-1;V=0;W=0}L=TD(M|0,N|0,2)|0;K=JD(L|0,A|0,-32,-1)|0;L=JD(K|0,A|0,V|0,W|0)|0;K=A;if(!U){T=+(f|0)*0.0;break}J=0-e|0;s=((J|0)<0)<<31>>31;if((K|0)>(s|0)|(K|0)==(s|0)&L>>>0>J>>>0){c[(dn()|0)>>2]=34;T=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}J=e+-106|0;s=((J|0)<0)<<31>>31;if((K|0)<(s|0)|(K|0)==(s|0)&L>>>0<J>>>0){c[(dn()|0)>>2]=34;T=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((U|0)>-1){H=q;J=U;s=L;I=K;while(1){F=!(H>=.5);o=J<<1|(F^1)&1;G=H+(F?H:H+-1.0);F=JD(s|0,I|0,-1,-1)|0;E=A;if((o|0)>-1){H=G;J=o;s=F;I=E}else{X=G;Y=o;Z=F;_=E;break}}}else{X=q;Y=U;Z=L;_=K}I=((b|0)<0)<<31>>31;s=FD(32,0,e|0,((e|0)<0)<<31>>31|0)|0;J=JD(s|0,A|0,Z|0,_|0)|0;s=A;if((I|0)>(s|0)|(I|0)==(s|0)&b>>>0>J>>>0)if((J|0)>0){$=J;m=59}else{aa=0;ba=84;m=61}else{$=b;m=59}if((m|0)==59)if(($|0)<53){aa=$;ba=84-$|0;m=61}else{ca=0.0;da=$;ea=+(f|0)}if((m|0)==61){H=+(f|0);ca=+vn(+kn(1.0,ba),H);da=aa;ea=H}J=(Y&1|0)==0&(X!=0.0&(da|0)<32);H=ea*(J?0.0:X)+(ca+ea*+(((J&1)+Y|0)>>>0))-ca;if(!(H!=0.0))c[(dn()|0)>>2]=34;T=+pn(H,Z)}while(0);return +T}function lo(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0.0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0.0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0.0,kb=0.0,lb=0.0,mb=0.0,nb=0.0,ob=0.0,pb=0.0,qb=0.0,rb=0.0,sb=0.0,tb=0;i=l;l=l+512|0;j=i;k=f+e|0;m=0-k|0;n=a+4|0;o=a+100|0;p=b;b=0;a:while(1){switch(p|0){case 46:{q=6;break a;break}case 48:break;default:{r=0;s=p;t=b;u=0;v=0;break a}}w=c[n>>2]|0;if(w>>>0<(c[o>>2]|0)>>>0){c[n>>2]=w+1;p=d[w>>0]|0;b=1;continue}else{p=jo(a)|0;b=1;continue}}if((q|0)==6){p=c[n>>2]|0;if(p>>>0<(c[o>>2]|0)>>>0){c[n>>2]=p+1;x=d[p>>0]|0}else x=jo(a)|0;if((x|0)==48){p=0;w=0;while(1){y=JD(p|0,w|0,-1,-1)|0;z=A;B=c[n>>2]|0;if(B>>>0<(c[o>>2]|0)>>>0){c[n>>2]=B+1;D=d[B>>0]|0}else D=jo(a)|0;if((D|0)==48){p=y;w=z}else{r=1;s=D;t=1;u=y;v=z;break}}}else{r=1;s=x;t=b;u=0;v=0}}c[j>>2]=0;b=s+-48|0;x=(s|0)==46;b:do if(x|b>>>0<10){D=j+496|0;w=0;p=0;z=0;y=r;B=t;E=s;F=x;G=b;H=u;I=v;J=0;K=0;c:while(1){do if(F)if(!y){L=w;M=p;N=1;O=z;Q=B;R=J;S=K;T=J;U=K}else break c;else{V=JD(J|0,K|0,1,0)|0;W=A;X=(E|0)!=48;if((p|0)>=125){if(!X){L=w;M=p;N=y;O=z;Q=B;R=H;S=I;T=V;U=W;break}c[D>>2]=c[D>>2]|1;L=w;M=p;N=y;O=z;Q=B;R=H;S=I;T=V;U=W;break}Y=j+(p<<2)|0;if(!w)Z=G;else Z=E+-48+((c[Y>>2]|0)*10|0)|0;c[Y>>2]=Z;Y=w+1|0;_=(Y|0)==9;L=_?0:Y;M=(_&1)+p|0;N=y;O=X?V:z;Q=1;R=H;S=I;T=V;U=W}while(0);W=c[n>>2]|0;if(W>>>0<(c[o>>2]|0)>>>0){c[n>>2]=W+1;$=d[W>>0]|0}else $=jo(a)|0;G=$+-48|0;F=($|0)==46;if(!(F|G>>>0<10)){aa=L;ba=M;ca=O;da=N;ea=$;fa=Q;ga=T;ha=R;ia=U;ja=S;q=29;break b}else{w=L;p=M;z=O;y=N;B=Q;E=$;H=R;I=S;J=T;K=U}}ka=w;la=p;ma=z;na=J;oa=K;pa=H;qa=I;ra=(B|0)!=0;q=37}else{aa=0;ba=0;ca=0;da=r;ea=s;fa=t;ga=0;ha=u;ia=0;ja=v;q=29}while(0);do if((q|0)==29){v=(da|0)==0;u=v?ga:ha;t=v?ia:ja;v=(fa|0)!=0;if(!(v&(ea|32|0)==101))if((ea|0)>-1){ka=aa;la=ba;ma=ca;na=ga;oa=ia;pa=u;qa=t;ra=v;q=37;break}else{sa=aa;ta=ba;ua=ca;va=ga;wa=ia;xa=v;ya=u;za=t;q=39;break}v=mo(a,h)|0;s=A;if((v|0)==0&(s|0)==-2147483648){if(!h){ho(a,0);Aa=0.0;break}if(!(c[o>>2]|0)){Ba=0;Ca=0}else{c[n>>2]=(c[n>>2]|0)+-1;Ba=0;Ca=0}}else{Ba=v;Ca=s}s=JD(Ba|0,Ca|0,u|0,t|0)|0;Da=aa;Ea=ba;Fa=ca;Ga=s;Ha=ga;Ia=A;Ja=ia;q=41}while(0);if((q|0)==37)if(c[o>>2]|0){c[n>>2]=(c[n>>2]|0)+-1;if(ra){Da=ka;Ea=la;Fa=ma;Ga=pa;Ha=na;Ia=qa;Ja=oa;q=41}else q=40}else{sa=ka;ta=la;ua=ma;va=na;wa=oa;xa=ra;ya=pa;za=qa;q=39}if((q|0)==39)if(xa){Da=sa;Ea=ta;Fa=ua;Ga=ya;Ha=va;Ia=za;Ja=wa;q=41}else q=40;do if((q|0)==40){c[(dn()|0)>>2]=22;ho(a,0);Aa=0.0}else if((q|0)==41){wa=c[j>>2]|0;if(!wa){Aa=+(g|0)*0.0;break}if(((Ja|0)<0|(Ja|0)==0&Ha>>>0<10)&((Ga|0)==(Ha|0)&(Ia|0)==(Ja|0))?(e|0)>30|(wa>>>e|0)==0:0){Aa=+(g|0)*+(wa>>>0);break}wa=(f|0)/-2|0;za=((wa|0)<0)<<31>>31;if((Ia|0)>(za|0)|(Ia|0)==(za|0)&Ga>>>0>wa>>>0){c[(dn()|0)>>2]=34;Aa=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}wa=f+-106|0;za=((wa|0)<0)<<31>>31;if((Ia|0)<(za|0)|(Ia|0)==(za|0)&Ga>>>0<wa>>>0){c[(dn()|0)>>2]=34;Aa=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(!Da)Ka=Ea;else{if((Da|0)<9){wa=j+(Ea<<2)|0;za=Da;va=c[wa>>2]|0;do{va=va*10|0;za=za+1|0}while((za|0)!=9);c[wa>>2]=va}Ka=Ea+1|0}if((Fa|0)<9?(Fa|0)<=(Ga|0)&(Ga|0)<18:0){za=c[j>>2]|0;if((Ga|0)==9){Aa=+(g|0)*+(za>>>0);break}if((Ga|0)<9){Aa=+(g|0)*+(za>>>0)/+(c[10376+(8-Ga<<2)>>2]|0);break}B=e+27+(P(Ga,-3)|0)|0;if((B|0)>30|(za>>>B|0)==0){Aa=+(g|0)*+(za>>>0)*+(c[10376+(Ga+-10<<2)>>2]|0);break}}za=(Ga|0)%9|0;if(!za){La=0;Ma=Ka;Na=0;Oa=Ga}else{B=(Ga|0)>-1?za:za+9|0;za=c[10376+(8-B<<2)>>2]|0;if(Ka){I=1e9/(za|0)|0;H=0;K=0;J=Ga;z=0;do{p=j+(z<<2)|0;w=c[p>>2]|0;ya=((w>>>0)/(za>>>0)|0)+H|0;c[p>>2]=ya;H=P(I,(w>>>0)%(za>>>0)|0)|0;w=(z|0)==(K|0)&(ya|0)==0;J=w?J+-9|0:J;K=w?K+1&127:K;z=z+1|0}while((z|0)!=(Ka|0));if(!H){Pa=K;Qa=Ka;Ra=J}else{c[j+(Ka<<2)>>2]=H;Pa=K;Qa=Ka+1|0;Ra=J}}else{Pa=0;Qa=0;Ra=Ga}La=0;Ma=Qa;Na=Pa;Oa=9-B+Ra|0}d:while(1){z=(Oa|0)<18;za=(Oa|0)==18;I=j+(Na<<2)|0;va=La;wa=Ma;while(1){if(!z){if(!za){Sa=va;Ta=Na;Ua=Oa;Va=wa;break d}if((c[I>>2]|0)>>>0>=9007199){Sa=va;Ta=Na;Ua=18;Va=wa;break d}}w=0;Wa=wa;ya=wa+127|0;while(1){p=ya&127;ua=j+(p<<2)|0;ta=TD(c[ua>>2]|0,0,29)|0;sa=JD(ta|0,A|0,w|0,0)|0;ta=A;if(ta>>>0>0|(ta|0)==0&sa>>>0>1e9){xa=PD(sa|0,ta|0,1e9,0)|0;qa=VD(sa|0,ta|0,1e9,0)|0;Xa=xa;Ya=qa}else{Xa=0;Ya=sa}c[ua>>2]=Ya;ua=(p|0)==(Na|0);Wa=(Ya|0)==0&(((p|0)!=(Wa+127&127|0)|ua)^1)?p:Wa;if(ua)break;else{w=Xa;ya=p+-1|0}}va=va+-29|0;if(Xa|0)break;else wa=Wa}wa=Na+127&127;I=Wa+127&127;za=j+((Wa+126&127)<<2)|0;if((wa|0)==(Wa|0)){c[za>>2]=c[za>>2]|c[j+(I<<2)>>2];Za=I}else Za=Wa;c[j+(wa<<2)>>2]=Xa;La=va;Ma=Za;Na=wa;Oa=Oa+9|0}e:while(1){B=Va+1&127;J=j+((Va+127&127)<<2)|0;K=Sa;H=Ta;wa=Ua;while(1){I=(wa|0)==18;za=(wa|0)>27?9:1;_a=K;$a=H;while(1){z=0;while(1){ya=z+$a&127;if((ya|0)==(Va|0)){ab=2;q=88;break}w=c[j+(ya<<2)>>2]|0;ya=c[10408+(z<<2)>>2]|0;if(w>>>0<ya>>>0){ab=2;q=88;break}if(w>>>0>ya>>>0)break;ya=z+1|0;if((ya|0)<2)z=ya;else{ab=ya;q=88;break}}if((q|0)==88?(q=0,I&(ab|0)==2):0){bb=0.0;cb=0;db=Va;break e}eb=za+_a|0;if(($a|0)==(Va|0)){_a=eb;$a=Va}else break}I=(1<<za)+-1|0;z=1e9>>>za;fb=0;gb=$a;hb=wa;ya=$a;do{w=j+(ya<<2)|0;p=c[w>>2]|0;ua=(p>>>za)+fb|0;c[w>>2]=ua;fb=P(p&I,z)|0;p=(ya|0)==(gb|0)&(ua|0)==0;hb=p?hb+-9|0:hb;gb=p?gb+1&127:gb;ya=ya+1&127}while((ya|0)!=(Va|0));if(!fb){K=eb;H=gb;wa=hb;continue}if((B|0)!=(gb|0))break;c[J>>2]=c[J>>2]|1;K=eb;H=gb;wa=hb}c[j+(Va<<2)>>2]=fb;Sa=eb;Ta=gb;Ua=hb;Va=B}while(1){wa=cb+$a&127;H=db+1&127;if((wa|0)==(db|0)){c[j+(H+-1<<2)>>2]=0;ib=H}else ib=db;bb=bb*1.0e9+ +((c[j+(wa<<2)>>2]|0)>>>0);cb=cb+1|0;if((cb|0)==2)break;else db=ib}jb=+(g|0);kb=jb*bb;wa=_a+53|0;H=wa-f|0;K=(H|0)<(e|0);J=K?((H|0)>0?H:0):e;if((J|0)<53){lb=+vn(+kn(1.0,105-J|0),kb);mb=+rn(kb,+kn(1.0,53-J|0));nb=lb;ob=mb;pb=lb+(kb-mb)}else{nb=0.0;ob=0.0;pb=kb}va=$a+2&127;if((va|0)!=(ib|0)){ya=c[j+(va<<2)>>2]|0;do if(ya>>>0>=5e8){if((ya|0)!=5e8){qb=jb*.75+ob;break}if(($a+3&127|0)==(ib|0)){qb=jb*.5+ob;break}else{qb=jb*.75+ob;break}}else{if((ya|0)==0?($a+3&127|0)==(ib|0):0){qb=ob;break}qb=jb*.25+ob}while(0);if((53-J|0)>1?!(+rn(qb,1.0)!=0.0):0)rb=qb+1.0;else rb=qb}else rb=ob;jb=pb+rb-nb;do if((wa&2147483647|0)>(-2-k|0)){ya=!(+C(+jb)>=9007199254740992.0);va=((ya^1)&1)+_a|0;kb=ya?jb:jb*.5;if((va+50|0)<=(m|0)?!(rb!=0.0&(K&((J|0)!=(H|0)|ya))):0){sb=kb;tb=va;break}c[(dn()|0)>>2]=34;sb=kb;tb=va}else{sb=jb;tb=_a}while(0);Aa=+pn(sb,tb)}while(0);l=i;return +Aa}function mo(a,b){a=a|0;b=b|0;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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;e=a+4|0;f=c[e>>2]|0;g=a+100|0;if(f>>>0<(c[g>>2]|0)>>>0){c[e>>2]=f+1;h=d[f>>0]|0}else h=jo(a)|0;switch(h|0){case 43:case 45:{f=(h|0)==45&1;i=c[e>>2]|0;if(i>>>0<(c[g>>2]|0)>>>0){c[e>>2]=i+1;j=d[i>>0]|0}else j=jo(a)|0;if((b|0)!=0&(j+-48|0)>>>0>9?(c[g>>2]|0)!=0:0){c[e>>2]=(c[e>>2]|0)+-1;k=f;l=j}else{k=f;l=j}break}default:{k=0;l=h}}if((l+-48|0)>>>0>9)if(!(c[g>>2]|0)){m=-2147483648;n=0}else{c[e>>2]=(c[e>>2]|0)+-1;m=-2147483648;n=0}else{h=0;j=l;while(1){h=j+-48+(h*10|0)|0;l=c[e>>2]|0;if(l>>>0<(c[g>>2]|0)>>>0){c[e>>2]=l+1;o=d[l>>0]|0}else o=jo(a)|0;if(!((o+-48|0)>>>0<10&(h|0)<214748364))break;else j=o}j=((h|0)<0)<<31>>31;if((o+-48|0)>>>0<10){l=o;f=h;b=j;while(1){i=RD(f|0,b|0,10,0)|0;p=A;q=JD(l|0,((l|0)<0)<<31>>31|0,-48,-1)|0;r=JD(q|0,A|0,i|0,p|0)|0;p=A;i=c[e>>2]|0;if(i>>>0<(c[g>>2]|0)>>>0){c[e>>2]=i+1;s=d[i>>0]|0}else s=jo(a)|0;if((s+-48|0)>>>0<10&((p|0)<21474836|(p|0)==21474836&r>>>0<2061584302)){l=s;f=r;b=p}else{t=s;u=r;v=p;break}}}else{t=o;u=h;v=j}j=c[g>>2]|0;if((t+-48|0)>>>0<10){t=j;while(1){h=c[e>>2]|0;if(h>>>0<t>>>0){c[e>>2]=h+1;w=d[h>>0]|0;x=t}else{h=jo(a)|0;w=h;x=c[g>>2]|0}if((w+-48|0)>>>0<10)t=x;else{y=x;break}}}else y=j;if(y|0)c[e>>2]=(c[e>>2]|0)+-1;e=(k|0)!=0;k=FD(0,0,u|0,v|0)|0;m=e?A:v;n=e?k:u}A=m;return n|0}function no(a){a=a|0;var b=0,e=0,f=0;b=l;l=l+16|0;e=b;if((oo(a)|0)==0?(ib[c[a+32>>2]&31](a,e,1)|0)==1:0)f=d[e>>0]|0;else f=-1;l=b;return f|0}function oo(b){b=b|0;var d=0,e=0,f=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;e=b+20|0;d=b+28|0;if((c[e>>2]|0)>>>0>(c[d>>2]|0)>>>0)ib[c[b+36>>2]&31](b,0,0)|0;c[b+16>>2]=0;c[d>>2]=0;c[e>>2]=0;e=c[b>>2]|0;if(!(e&4)){d=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=d;c[b+4>>2]=d;f=e<<27>>31}else{c[b>>2]=e|32;f=-1}return f|0}function po(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=d&255;a:do if(!e)f=b+(yn(b)|0)|0;else{if(!(b&3))g=b;else{h=d&255;i=b;while(1){j=a[i>>0]|0;if(j<<24>>24==0?1:j<<24>>24==h<<24>>24){f=i;break a}j=i+1|0;if(!(j&3)){g=j;break}else i=j}}i=P(e,16843009)|0;h=c[g>>2]|0;b:do if(!((h&-2139062144^-2139062144)&h+-16843009)){j=g;k=h;while(1){l=k^i;if((l&-2139062144^-2139062144)&l+-16843009|0){m=j;break b}l=j+4|0;k=c[l>>2]|0;if((k&-2139062144^-2139062144)&k+-16843009|0){m=l;break}else j=l}}else m=g;while(0);i=d&255;h=m;while(1){j=a[h>>0]|0;if(j<<24>>24==0?1:j<<24>>24==i<<24>>24){f=h;break}else h=h+1|0}}while(0);return f|0}function qo(a,b){a=a|0;b=b|0;return +(+go(a,b,2))}function ro(a,b,c){a=a|0;b=b|0;c=c|0;return +(+qo(a,b))}function so(a){a=a|0;var b=0;b=a;while(1)if(!(c[b>>2]|0))break;else b=b+4|0;return b-a>>2|0}function to(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=uo(a,b,c,-1,-1)|0;return d|0}function uo(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;g=l;l=l+128|0;h=g;c[h>>2]=0;i=h+4|0;c[i>>2]=a;c[h+44>>2]=a;j=h+8|0;c[j>>2]=(a|0)<0?-1:a+2147483647|0;c[h+76>>2]=-1;ho(h,0);k=vo(h,d,1,e,f)|0;if(b|0)c[b>>2]=a+((c[i>>2]|0)+(c[h+108>>2]|0)-(c[j>>2]|0));l=g;return k|0}function vo(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=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;a:do if(e>>>0>36){c[(dn()|0)>>2]=22;i=0;j=0}else{k=b+4|0;l=b+100|0;do{m=c[k>>2]|0;if(m>>>0<(c[l>>2]|0)>>>0){c[k>>2]=m+1;n=d[m>>0]|0}else n=jo(b)|0}while((Bn(n)|0)!=0);b:do switch(n|0){case 43:case 45:{m=((n|0)==45)<<31>>31;o=c[k>>2]|0;if(o>>>0<(c[l>>2]|0)>>>0){c[k>>2]=o+1;p=m;q=d[o>>0]|0;break b}else{p=m;q=jo(b)|0;break b}break}default:{p=0;q=n}}while(0);m=(e|0)==0;do if((e|16|0)==16&(q|0)==48){o=c[k>>2]|0;if(o>>>0<(c[l>>2]|0)>>>0){c[k>>2]=o+1;r=d[o>>0]|0}else r=jo(b)|0;if((r|32|0)!=120)if(m){s=r;t=8;u=46;break}else{v=r;w=e;u=32;break}o=c[k>>2]|0;if(o>>>0<(c[l>>2]|0)>>>0){c[k>>2]=o+1;x=d[o>>0]|0}else x=jo(b)|0;if((d[33765+x>>0]|0)>15){o=(c[l>>2]|0)!=0;if(o)c[k>>2]=(c[k>>2]|0)+-1;if(!f){ho(b,0);i=0;j=0;break a}if(!o){i=0;j=0;break a}c[k>>2]=(c[k>>2]|0)+-1;i=0;j=0;break a}else{s=x;t=16;u=46}}else{o=m?10:e;if((d[33765+q>>0]|0)>>>0<o>>>0){v=q;w=o;u=32}else{if(c[l>>2]|0)c[k>>2]=(c[k>>2]|0)+-1;ho(b,0);c[(dn()|0)>>2]=22;i=0;j=0;break a}}while(0);c:do if((u|0)==32)if((w|0)==10){m=v+-48|0;if(m>>>0<10){o=0;y=m;do{o=(o*10|0)+y|0;m=c[k>>2]|0;if(m>>>0<(c[l>>2]|0)>>>0){c[k>>2]=m+1;z=d[m>>0]|0}else z=jo(b)|0;y=z+-48|0}while(y>>>0<10&o>>>0<429496729);B=z;C=o;D=0}else{B=v;C=0;D=0}y=B+-48|0;if(y>>>0<10){m=B;E=C;F=D;G=y;while(1){y=RD(E|0,F|0,10,0)|0;H=A;I=((G|0)<0)<<31>>31;J=~I;if(H>>>0>J>>>0|(H|0)==(J|0)&y>>>0>~G>>>0){K=10;L=m;M=E;N=F;u=72;break c}E=JD(y|0,H|0,G|0,I|0)|0;F=A;I=c[k>>2]|0;if(I>>>0<(c[l>>2]|0)>>>0){c[k>>2]=I+1;O=d[I>>0]|0}else O=jo(b)|0;G=O+-48|0;if(!(G>>>0<10&(F>>>0<429496729|(F|0)==429496729&E>>>0<2576980378)))break;else m=O}if(G>>>0>9){Q=p;R=F;S=E}else{K=10;L=O;M=E;N=F;u=72}}else{Q=p;R=D;S=C}}else{s=v;t=w;u=46}while(0);d:do if((u|0)==46){if(!(t+-1&t)){m=a[34021+((t*23|0)>>>5&7)>>0]|0;o=a[33765+s>>0]|0;I=o&255;if(I>>>0<t>>>0){H=0;y=I;do{H=y|H<<m;I=c[k>>2]|0;if(I>>>0<(c[l>>2]|0)>>>0){c[k>>2]=I+1;T=d[I>>0]|0}else T=jo(b)|0;U=a[33765+T>>0]|0;y=U&255}while(H>>>0<134217728&y>>>0<t>>>0);V=T;W=U;X=0;Y=H}else{V=s;W=o;X=0;Y=0}y=KD(-1,-1,m|0)|0;F=A;if((W&255)>>>0>=t>>>0|(X>>>0>F>>>0|(X|0)==(F|0)&Y>>>0>y>>>0)){K=t;L=V;M=Y;N=X;u=72;break}else{Z=Y;_=X;$=W}while(1){E=TD(Z|0,_|0,m|0)|0;G=A;I=$&255|E;E=c[k>>2]|0;if(E>>>0<(c[l>>2]|0)>>>0){c[k>>2]=E+1;aa=d[E>>0]|0}else aa=jo(b)|0;$=a[33765+aa>>0]|0;if(($&255)>>>0>=t>>>0|(G>>>0>F>>>0|(G|0)==(F|0)&I>>>0>y>>>0)){K=t;L=aa;M=I;N=G;u=72;break d}else{Z=I;_=G}}}y=a[33765+s>>0]|0;F=y&255;if(F>>>0<t>>>0){m=0;o=F;do{m=o+(P(m,t)|0)|0;F=c[k>>2]|0;if(F>>>0<(c[l>>2]|0)>>>0){c[k>>2]=F+1;ba=d[F>>0]|0}else ba=jo(b)|0;ca=a[33765+ba>>0]|0;o=ca&255}while(m>>>0<119304647&o>>>0<t>>>0);da=ba;ea=ca;fa=m;ga=0}else{da=s;ea=y;fa=0;ga=0}if((ea&255)>>>0<t>>>0){o=PD(-1,-1,t|0,0)|0;F=A;H=da;G=ga;I=fa;E=ea;while(1){if(G>>>0>F>>>0|(G|0)==(F|0)&I>>>0>o>>>0){K=t;L=H;M=I;N=G;u=72;break d}J=RD(I|0,G|0,t|0,0)|0;ha=A;ia=E&255;if(ha>>>0>4294967295|(ha|0)==-1&J>>>0>~ia>>>0){K=t;L=H;M=I;N=G;u=72;break d}ja=JD(ia|0,0,J|0,ha|0)|0;ha=A;J=c[k>>2]|0;if(J>>>0<(c[l>>2]|0)>>>0){c[k>>2]=J+1;ka=d[J>>0]|0}else ka=jo(b)|0;E=a[33765+ka>>0]|0;if((E&255)>>>0>=t>>>0){K=t;L=ka;M=ja;N=ha;u=72;break}else{H=ka;G=ha;I=ja}}}else{K=t;L=da;M=fa;N=ga;u=72}}while(0);if((u|0)==72)if((d[33765+L>>0]|0)>>>0<K>>>0){do{I=c[k>>2]|0;if(I>>>0<(c[l>>2]|0)>>>0){c[k>>2]=I+1;la=d[I>>0]|0}else la=jo(b)|0}while((d[33765+la>>0]|0)>>>0<K>>>0);c[(dn()|0)>>2]=34;Q=(g&1|0)==0&0==0?p:0;R=h;S=g}else{Q=p;R=N;S=M}if(c[l>>2]|0)c[k>>2]=(c[k>>2]|0)+-1;if(!(R>>>0<h>>>0|(R|0)==(h|0)&S>>>0<g>>>0)){if(!((g&1|0)!=0|0!=0|(Q|0)!=0)){c[(dn()|0)>>2]=34;I=JD(g|0,h|0,-1,-1)|0;i=A;j=I;break}if(R>>>0>h>>>0|(R|0)==(h|0)&S>>>0>g>>>0){c[(dn()|0)>>2]=34;i=h;j=g;break}}I=((Q|0)<0)<<31>>31;G=FD(S^Q|0,R^I|0,Q|0,I|0)|0;i=A;j=G}while(0);A=i;return j|0}function wo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=uo(a,b,c,0,-2147483648)|0;return d|0}function xo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=uo(a,b,c,-2147483648,0)|0;return d|0}function yo(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+16|0;h=g;a:do if(!e)i=0;else{do if(f|0){j=(b|0)==0?h:b;k=a[e>>0]|0;if(k<<24>>24>-1){c[j>>2]=k&255;i=k<<24>>24!=0&1;break a}k=(c[c[(zo()|0)+188>>2]>>2]|0)==0;m=a[e>>0]|0;if(k){c[j>>2]=m<<24>>24&57343;i=1;break a}k=(m&255)+-194|0;if(k>>>0<=50){m=e+1|0;n=c[9344+(k<<2)>>2]|0;if(f>>>0<4?n&-2147483648>>>((f*6|0)+-6|0)|0:0)break;k=d[m>>0]|0;m=k>>>3;if((m+-16|m+(n>>26))>>>0<=7){m=k+-128|n<<6;if((m|0)>=0){c[j>>2]=m;i=2;break a}n=(d[e+2>>0]|0)+-128|0;if(n>>>0<=63){k=n|m<<6;if((k|0)>=0){c[j>>2]=k;i=3;break a}m=(d[e+3>>0]|0)+-128|0;if(m>>>0<=63){c[j>>2]=m|k<<6;i=4;break a}}}}}while(0);c[(dn()|0)>>2]=84;i=-1}while(0);l=g;return i|0}function zo(){return fn()|0}function Ao(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=Dn(a,b,d,g)|0;l=f;return e|0}function Bo(b,c){b=b|0;c=c|0;var d=0;d=po(b,c)|0;return ((a[d>>0]|0)==(c&255)<<24>>24?d:0)|0}function Co(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;Do();c[e>>2]=a;c[e+4>>2]=b;b=cn(Oa(91,e|0)|0)|0;l=d;return b|0}function Do(){return}function Eo(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;a:do if(!d)e=0;else{f=b;g=d;h=c;while(1){i=a[f>>0]|0;j=a[h>>0]|0;if(i<<24>>24!=j<<24>>24)break;g=g+-1|0;if(!g){e=0;break a}else{f=f+1|0;h=h+1|0}}e=(i&255)-(j&255)|0}while(0);return e|0}function Fo(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;if((c[a+76>>2]|0)>=0?(Gn(a)|0)!=0:0){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;f=d[e>>0]|0}else f=no(a)|0;g=f}else h=3;do if((h|0)==3){f=a+4|0;e=c[f>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[f>>2]=e+1;g=d[e>>0]|0;break}else{g=no(a)|0;break}}while(0);return g|0}function Go(a){a=a|0;return ((a+-48|0)>>>0<10|(Ho(a)|0)!=0)&1|0}function Ho(a){a=a|0;return ((a|32)+-97|0)>>>0<26|0}function Io(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0;h=c[e>>2]|0;if((g|0)!=0?(i=c[g>>2]|0,(i|0)!=0):0)if(!b){j=i;k=h;l=f;m=25}else{c[g>>2]=0;n=i;o=b;p=f;q=h;m=43}else m=5;a:do if((m|0)==5){i=(b|0)!=0;if(c[c[(Jo()|0)+188>>2]>>2]|0)if(i){r=b;s=f;t=h;m=15;break}else{u=h;v=f;m=14;break}if(!i){w=yn(h)|0;m=59;break}b:do if(!f)x=h;else{i=h;g=b;y=f;while(1){z=a[i>>0]|0;if(!(z<<24>>24))break;A=i+1|0;c[g>>2]=z<<24>>24&57343;z=y+-1|0;if(!z){x=A;break b}else{i=A;g=g+4|0;y=z}}c[g>>2]=0;c[e>>2]=0;w=f-y|0;m=59;break a}while(0);c[e>>2]=x;w=f;m=59}while(0);c:while(1){d:do if((m|0)==14){m=0;x=u;h=v;while(1){i=a[x>>0]|0;if(((i&255)+-1|0)>>>0<127?(x&3|0)==0:0){z=c[x>>2]|0;A=z&255;if(!((z+-16843009|z)&-2139062144)){z=x;B=h;do{z=z+4|0;B=B+-4|0;C=c[z>>2]|0}while(!((C+-16843009|C)&-2139062144|0));D=z;E=B;F=C&255}else{D=x;E=h;F=A}}else{D=x;E=h;F=i}G=F&255;if((G+-1|0)>>>0>=127)break;x=D+1|0;h=E+-1|0}h=G+-194|0;if(h>>>0>50){H=D;I=b;J=E;m=53}else{j=c[9344+(h<<2)>>2]|0;k=D+1|0;l=E;m=25;continue c}}else if((m|0)==15){m=0;e:do if(!s)K=t;else{h=r;x=s;y=t;while(1){g=a[y>>0]|0;do if(((g&255)+-1|0)>>>0<127?x>>>0>4&(y&3|0)==0:0){L=h;M=x;N=y;while(1){O=c[N>>2]|0;if((O+-16843009|O)&-2139062144|0){m=38;break}c[L>>2]=O&255;c[L+4>>2]=d[N+1>>0];c[L+8>>2]=d[N+2>>0];P=N+4|0;Q=L+16|0;c[L+12>>2]=d[N+3>>0];R=M+-4|0;if(R>>>0>4){L=Q;M=R;N=P}else{m=37;break}}if((m|0)==37){m=0;S=Q;T=R;U=P;V=a[P>>0]|0;break}else if((m|0)==38){m=0;S=L;T=M;U=N;V=O&255;break}}else{S=h;T=x;U=y;V=g}while(0);W=V&255;if((W+-1|0)>>>0>=127)break;g=U+1|0;c[S>>2]=W;x=T+-1|0;if(!x){K=g;break e}else{h=S+4|0;y=g}}y=W+-194|0;if(y>>>0>50){H=U;I=S;J=T;m=53;break d}n=c[9344+(y<<2)>>2]|0;o=S;p=T;q=U+1|0;m=43;continue c}while(0);c[e>>2]=K;w=f;m=59;continue c}else if((m|0)==25){m=0;y=(d[k>>0]|0)>>>3;if((y+-16|y+(j>>26))>>>0>7){X=b;Y=j;Z=k;_=l;m=52}else{y=k+1|0;if(j&33554432){if((a[y>>0]&-64)<<24>>24!=-128){X=b;Y=j;Z=k;_=l;m=52;break}h=k+2|0;if(!(j&524288))$=h;else{if((a[h>>0]&-64)<<24>>24!=-128){X=b;Y=j;Z=k;_=l;m=52;break}$=k+3|0}}else $=y;u=$;v=l+-1|0;m=14;continue c}}else if((m|0)==43){m=0;y=d[q>>0]|0;h=y>>>3;if((h+-16|h+(n>>26))>>>0>7){X=o;Y=n;Z=q;_=p;m=52}else{h=q+1|0;x=y+-128|n<<6;do if((x|0)<0){y=(d[h>>0]|0)+-128|0;if(y>>>0>63){aa=q+-1|0;ba=o;break d}i=q+2|0;A=y|x<<6;if((A|0)<0){y=(d[i>>0]|0)+-128|0;if(y>>>0>63){aa=q+-1|0;ba=o;break d}else{ca=q+3|0;da=y|A<<6;break}}else{ca=i;da=A}}else{ca=h;da=x}while(0);c[o>>2]=da;r=o+4|0;s=p+-1|0;t=ca;m=15;continue c}}else if((m|0)==59){m=0;return w|0}while(0);if((m|0)==52){m=0;x=Z+-1|0;if(!Y){H=x;I=X;J=_;m=53}else{aa=x;ba=X}}if((m|0)==53){m=0;if(!(a[H>>0]|0)){if(I|0){c[I>>2]=0;c[e>>2]=0}w=f-J|0;m=59;continue}else{aa=H;ba=I}}c[(dn()|0)>>2]=84;if(!ba){w=-1;m=59;continue}c[e>>2]=aa;w=-1;m=59}return 0}function Jo(){return fn()|0}function Ko(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=l;l=l+48|0;f=e+32|0;g=e+16|0;h=e;if(Pn(34030,a[d>>0]|0,4)|0){i=Lo(d)|0;c[h>>2]=b;c[h+4>>2]=i|32768;c[h+8>>2]=438;b=cn($a(5,h|0)|0)|0;if((b|0)>=0){if(i&524288|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;ra(221,g|0)|0}g=Mo(b,d)|0;if(!g){c[f>>2]=b;_a(6,f|0)|0;j=0}else j=g}else j=0}else{c[(dn()|0)>>2]=22;j=0}l=e;return j|0}function Lo(b){b=b|0;var c=0,d=0,e=0,f=0;c=(Bo(b,43)|0)==0;d=a[b>>0]|0;e=c?d<<24>>24!=114&1:2;c=(Bo(b,120)|0)==0;f=c?e:e|128;e=(Bo(b,101)|0)==0;b=e?f:f|524288;f=d<<24>>24==114?b:b|64;b=d<<24>>24==119?f|512:f;return (d<<24>>24==97?b|1024:b)|0}function Mo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;e=l;l=l+64|0;f=e+40|0;g=e+24|0;h=e+16|0;i=e;j=e+56|0;k=a[d>>0]|0;if(Pn(34030,k<<24>>24,4)|0){m=Pp(1156)|0;if(!m)n=0;else{o=m;p=o+124|0;do{c[o>>2]=0;o=o+4|0}while((o|0)<(p|0));if(!(Bo(d,43)|0))c[m>>2]=k<<24>>24==114?8:4;if(!(Bo(d,101)|0))q=k;else{c[i>>2]=b;c[i+4>>2]=2;c[i+8>>2]=1;ra(221,i|0)|0;q=a[d>>0]|0}if(q<<24>>24==97){c[h>>2]=b;c[h+4>>2]=3;q=ra(221,h|0)|0;if(!(q&1024)){c[g>>2]=b;c[g+4>>2]=4;c[g+8>>2]=q|1024;ra(221,g|0)|0}g=c[m>>2]|128;c[m>>2]=g;r=g}else r=c[m>>2]|0;c[m+60>>2]=b;c[m+44>>2]=m+132;c[m+48>>2]=1024;g=m+75|0;a[g>>0]=-1;if((r&8|0)==0?(c[f>>2]=b,c[f+4>>2]=21523,c[f+8>>2]=j,(Sa(54,f|0)|0)==0):0)a[g>>0]=10;c[m+32>>2]=9;c[m+36>>2]=6;c[m+40>>2]=7;c[m+12>>2]=59;if(!(c[9814]|0))c[m+76>>2]=-1;No(m)|0;n=m}}else{c[(dn()|0)>>2]=22;n=0}l=e;return n|0}function No(a){a=a|0;var b=0,d=0;b=Oo()|0;c[a+56>>2]=c[b>>2];d=c[b>>2]|0;if(d|0)c[d+52>>2]=a;c[b>>2]=a;Po();return a|0}function Oo(){Ya(39340);return 39348}function Po(){Ta(39340);return}function Qo(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if((c[a+76>>2]|0)>-1)b=Gn(a)|0;else b=0;Ro(a);d=(c[a>>2]&1|0)!=0;if(!d){e=Oo()|0;f=c[a+52>>2]|0;g=a+56|0;if(f|0)c[f+56>>2]=c[g>>2];h=c[g>>2]|0;if(h|0)c[h+52>>2]=f;if((c[e>>2]|0)==(a|0))c[e>>2]=h;Po()}h=So(a)|0;e=rb[c[a+12>>2]&127](a)|0|h;h=c[a+92>>2]|0;if(h|0)Qp(h);if(d){if(b|0)Hn(a)}else Qp(a);return e|0}function Ro(a){a=a|0;var b=0,d=0,e=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;d=a+112|0;if(b|0)c[b+112>>2]=c[d>>2];a=c[d>>2]|0;if(!a)e=(Uo()|0)+232|0;else e=a+116|0;c[e>>2]=b}return}function So(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;do if(a){if((c[a+76>>2]|0)<=-1){b=To(a)|0;break}d=(Gn(a)|0)==0;e=To(a)|0;if(d)b=e;else{Hn(a);b=e}}else{if(!(c[2530]|0))f=0;else f=So(c[2530]|0)|0;e=c[(Oo()|0)>>2]|0;if(!e)g=f;else{d=e;e=f;while(1){if((c[d+76>>2]|0)>-1)h=Gn(d)|0;else h=0;if((c[d+20>>2]|0)>>>0>(c[d+28>>2]|0)>>>0)i=To(d)|0|e;else i=e;if(h|0)Hn(d);d=c[d+56>>2]|0;if(!d){g=i;break}else e=i}}Po();b=g}while(0);return b|0}function To(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;b=a+20|0;d=a+28|0;if((c[b>>2]|0)>>>0>(c[d>>2]|0)>>>0?(ib[c[a+36>>2]&31](a,0,0)|0,(c[b>>2]|0)==0):0)e=-1;else{f=a+4|0;g=c[f>>2]|0;h=a+8|0;i=c[h>>2]|0;if(g>>>0<i>>>0)ib[c[a+40>>2]&31](a,g-i|0,1)|0;c[a+16>>2]=0;c[d>>2]=0;c[b>>2]=0;c[h>>2]=0;c[f>>2]=0;e=0}return e|0}function Uo(){return fn()|0}function Vo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Wo(a,b,f)|0;l=e;return d|0}function Wo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+128|0;f=e;g=f;h=g+124|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));c[f+32>>2]=31;c[f+44>>2]=a;c[f+76>>2]=-1;c[f+84>>2]=a;a=Yo(f,b,d)|0;l=e;return a|0}function Xo(a,b,c){a=a|0;b=b|0;c=c|0;return cp(a,b,c)|0}function Yo(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0.0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0;i=l;l=l+288|0;j=i+8|0;k=i+17|0;m=i;n=i+16|0;if((c[b+76>>2]|0)>-1)o=Gn(b)|0;else o=0;p=a[e>>0]|0;a:do if(p<<24>>24){q=b+4|0;r=b+100|0;s=b+108|0;t=b+8|0;u=k+10|0;v=k+33|0;w=j+4|0;x=k+46|0;y=k+94|0;z=k+1|0;B=k+1|0;C=e;D=0;E=0;F=0;G=0;H=p;b:while(1){c:do if(!(Bn(H&255)|0)){I=H<<24>>24==37;d:do if(I){J=C+1|0;K=a[J>>0]|0;e:do switch(K<<24>>24){case 37:{break d;break}case 42:{L=0;M=C+2|0;break}default:{N=(K&255)+-48|0;if(N>>>0<10?(a[C+2>>0]|0)==36:0){L=Zo(f,N)|0;M=C+3|0;break e}N=(c[f>>2]|0)+(4-1)&~(4-1);O=c[N>>2]|0;c[f>>2]=N+4;L=O;M=J}}while(0);J=a[M>>0]|0;K=J&255;if((K+-48|0)>>>0<10){O=0;N=M;P=K;while(1){K=(O*10|0)+-48+P|0;Q=N+1|0;R=a[Q>>0]|0;P=R&255;if((P+-48|0)>>>0>=10){S=K;T=Q;U=R;break}else{O=K;N=Q}}}else{S=0;T=M;U=J}N=U<<24>>24==109;O=(L|0)!=0;P=N?0:F;Q=N?0:G;K=N?T+1|0:T;V=O&N;N=K+1|0;switch(a[K>>0]|0){case 104:{R=(a[N>>0]|0)==104;W=R?-2:-1;X=R?K+2|0:N;break}case 108:{R=(a[N>>0]|0)==108;W=R?3:1;X=R?K+2|0:N;break}case 106:{W=3;X=N;break}case 116:case 122:{W=1;X=N;break}case 76:{W=2;X=N;break}case 110:case 112:case 67:case 83:case 91:case 99:case 115:case 88:case 71:case 70:case 69:case 65:case 103:case 102:case 101:case 97:case 120:case 117:case 111:case 105:case 100:{W=0;X=K;break}default:{Y=P;Z=Q;_=V;$=137;break b}}K=d[X>>0]|0;N=(K&47|0)==3;R=N?K|32:K;K=N?1:W;N=R&255;switch(N<<24>>24){case 99:{aa=(S|0)>1?S:1;ba=D;break}case 91:{aa=S;ba=D;break}case 110:{_o(L,K,D,((D|0)<0)<<31>>31);ca=X;da=E;ea=D;fa=P;ga=Q;break c;break}default:{ho(b,0);do{ha=c[q>>2]|0;if(ha>>>0<(c[r>>2]|0)>>>0){c[q>>2]=ha+1;ia=d[ha>>0]|0}else ia=jo(b)|0}while((Bn(ia)|0)!=0);if(!(c[r>>2]|0))ja=c[q>>2]|0;else{J=(c[q>>2]|0)+-1|0;c[q>>2]=J;ja=J}aa=S;ba=(c[s>>2]|0)+D+ja-(c[t>>2]|0)|0}}ho(b,aa);J=c[q>>2]|0;ha=c[r>>2]|0;if(J>>>0<ha>>>0){c[q>>2]=J+1;ka=ha}else{if((jo(b)|0)<0){Y=P;Z=Q;_=V;$=137;break b}ka=c[r>>2]|0}if(ka|0)c[q>>2]=(c[q>>2]|0)+-1;f:do switch(N<<24>>24){case 91:case 99:case 115:{ha=(R|0)==99;g:do if((R|16|0)==115){HD(z|0,-1,256)|0;a[k>>0]=0;if((R|0)==115){a[v>>0]=0;a[u>>0]=0;a[u+1>>0]=0;a[u+2>>0]=0;a[u+3>>0]=0;a[u+4>>0]=0;la=X}else la=X}else{J=X+1|0;ma=(a[J>>0]|0)==94;na=ma&1;oa=ma?X+2|0:J;HD(B|0,ma&1|0,256)|0;a[k>>0]=0;switch(a[oa>>0]|0){case 45:{pa=x;$=64;break}case 93:{pa=y;$=64;break}default:{qa=oa;ra=(na^1)&255}}if(($|0)==64){$=0;ma=(na^1)&255;a[pa>>0]=ma;qa=oa+1|0;ra=ma}ma=qa;while(1){oa=a[ma>>0]|0;h:do switch(oa<<24>>24){case 0:{Y=P;Z=Q;_=V;$=137;break b;break}case 93:{la=ma;break g;break}case 45:{na=ma+1|0;J=a[na>>0]|0;switch(J<<24>>24){case 93:case 0:{sa=ma;ta=45;break h;break}default:{}}ua=a[ma+-1>>0]|0;if((ua&255)<(J&255)){va=ua&255;do{va=va+1|0;a[k+va>>0]=ra;ua=a[na>>0]|0}while((va|0)<(ua&255|0));sa=na;ta=ua}else{sa=na;ta=J}break}default:{sa=ma;ta=oa}}while(0);a[k+((ta&255)+1)>>0]=ra;ma=sa+1|0}}while(0);ma=ha?aa+1|0:31;oa=(K|0)==1;i:do if(oa){if(V){va=Pp(ma<<2)|0;if(!va){Y=0;Z=0;_=1;$=137;break b}else wa=va}else wa=L;c[j>>2]=0;c[w>>2]=0;va=ma;ua=0;xa=wa;j:while(1){ya=(xa|0)==0;za=ua;while(1){k:while(1){Aa=c[q>>2]|0;if(Aa>>>0<(c[r>>2]|0)>>>0){c[q>>2]=Aa+1;Ba=d[Aa>>0]|0}else Ba=jo(b)|0;if(!(a[k+(Ba+1)>>0]|0))break j;a[n>>0]=Ba;switch($o(m,n,1,j)|0){case -1:{Y=0;Z=xa;_=V;$=137;break b;break}case -2:break;default:break k}}if(ya)Ca=za;else{c[xa+(za<<2)>>2]=c[m>>2];Ca=za+1|0}if(V&(Ca|0)==(va|0))break;else za=Ca}ya=va<<1|1;J=Rp(xa,ya<<2)|0;if(!J){Y=0;Z=xa;_=1;$=137;break b}else{na=va;va=ya;xa=J;ua=na}}if(!(ap(j)|0)){Y=0;Z=xa;_=V;$=137;break b}else{Da=za;Ea=0;Fa=xa;Ga=xa}}else{if(V){ua=Pp(ma)|0;if(!ua){Y=0;Z=0;_=1;$=137;break b}else{Ha=ma;Ia=0;Ja=ua}while(1){ua=Ia;do{va=c[q>>2]|0;if(va>>>0<(c[r>>2]|0)>>>0){c[q>>2]=va+1;Ka=d[va>>0]|0}else Ka=jo(b)|0;if(!(a[k+(Ka+1)>>0]|0)){Da=ua;Ea=Ja;Fa=0;Ga=0;break i}a[Ja+ua>>0]=Ka;ua=ua+1|0}while((ua|0)!=(Ha|0));ua=Ha<<1|1;va=Rp(Ja,ua)|0;if(!va){Y=Ja;Z=0;_=1;$=137;break b}else{na=Ha;Ha=ua;Ja=va;Ia=na}}}if(!L){xa=ka;while(1){na=c[q>>2]|0;if(na>>>0<xa>>>0){c[q>>2]=na+1;La=d[na>>0]|0}else La=jo(b)|0;if(!(a[k+(La+1)>>0]|0)){Da=0;Ea=0;Fa=0;Ga=0;break i}xa=c[r>>2]|0}}else{xa=0;na=ka;while(1){va=c[q>>2]|0;if(va>>>0<na>>>0){c[q>>2]=va+1;Ma=d[va>>0]|0}else Ma=jo(b)|0;if(!(a[k+(Ma+1)>>0]|0)){Da=xa;Ea=L;Fa=0;Ga=0;break i}a[L+xa>>0]=Ma;xa=xa+1|0;na=c[r>>2]|0}}}while(0);if(!(c[r>>2]|0))Na=c[q>>2]|0;else{ma=(c[q>>2]|0)+-1|0;c[q>>2]=ma;Na=ma}ma=Na-(c[t>>2]|0)+(c[s>>2]|0)|0;if(!ma){Oa=Ea;Pa=Ga;$=139;break b}if(!((ma|0)==(aa|0)|ha^1)){Oa=Ea;Pa=Ga;$=139;break b}do if(V)if(oa){c[L>>2]=Fa;break}else{c[L>>2]=Ea;break}while(0);if(ha){Qa=la;Ra=Ea;Sa=Ga}else{if(Fa|0)c[Fa+(Da<<2)>>2]=0;if(!Ea){Qa=la;Ra=0;Sa=Ga;break f}a[Ea+Da>>0]=0;Qa=la;Ra=Ea;Sa=Ga}break}case 120:case 88:case 112:{Ta=16;$=125;break}case 111:{Ta=8;$=125;break}case 117:case 100:{Ta=10;$=125;break}case 105:{Ta=0;$=125;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{Ua=+io(b,K,0);if((c[s>>2]|0)==((c[t>>2]|0)-(c[q>>2]|0)|0)){Oa=P;Pa=Q;$=139;break b}if(!L){Qa=X;Ra=P;Sa=Q}else switch(K|0){case 0:{g[L>>2]=Ua;Qa=X;Ra=P;Sa=Q;break f;break}case 1:{h[L>>3]=Ua;Qa=X;Ra=P;Sa=Q;break f;break}case 2:{h[L>>3]=Ua;Qa=X;Ra=P;Sa=Q;break f;break}default:{Qa=X;Ra=P;Sa=Q;break f}}break}default:{Qa=X;Ra=P;Sa=Q}}while(0);do if(($|0)==125){$=0;N=vo(b,Ta,0,-1,-1)|0;if((c[s>>2]|0)==((c[t>>2]|0)-(c[q>>2]|0)|0)){Oa=P;Pa=Q;$=139;break b}if(O&(R|0)==112){c[L>>2]=N;Qa=X;Ra=P;Sa=Q;break}else{_o(L,K,N,A);Qa=X;Ra=P;Sa=Q;break}}while(0);ca=Qa;da=(O&1)+E|0;ea=(c[s>>2]|0)+ba+(c[q>>2]|0)-(c[t>>2]|0)|0;fa=Ra;ga=Sa;break c}while(0);Q=C+(I&1)|0;ho(b,0);P=c[q>>2]|0;if(P>>>0<(c[r>>2]|0)>>>0){c[q>>2]=P+1;Va=d[P>>0]|0}else Va=jo(b)|0;if((Va|0)!=(d[Q>>0]|0)){$=22;break b}ca=Q;da=E;ea=D+1|0;fa=F;ga=G}else{Q=C;while(1){P=Q+1|0;if(!(Bn(d[P>>0]|0)|0))break;else Q=P}ho(b,0);do{I=c[q>>2]|0;if(I>>>0<(c[r>>2]|0)>>>0){c[q>>2]=I+1;Wa=d[I>>0]|0}else Wa=jo(b)|0}while((Bn(Wa)|0)!=0);if(!(c[r>>2]|0))Xa=c[q>>2]|0;else{I=(c[q>>2]|0)+-1|0;c[q>>2]=I;Xa=I}ca=Q;da=E;ea=(c[s>>2]|0)+D+Xa-(c[t>>2]|0)|0;fa=F;ga=G}while(0);C=ca+1|0;H=a[C>>0]|0;if(!(H<<24>>24)){Ya=da;break a}else{D=ea;E=da;F=fa;G=ga}}if(($|0)==22){if(c[r>>2]|0)c[q>>2]=(c[q>>2]|0)+-1;if((E|0)!=0|(Va|0)>-1){Ya=E;break}else{Za=0;_a=F;$a=G;$=138}}else if(($|0)==137){D=_&1;if(!E){Za=D;_a=Y;$a=Z;$=138}else{ab=D;bb=E;cb=Y;db=Z}}else if(($|0)==139){ab=V&1;bb=E;cb=Oa;db=Pa}if(($|0)==138){ab=Za;bb=-1;cb=_a;db=$a}if(!ab)Ya=bb;else{Qp(cb);Qp(db);Ya=bb}}else Ya=0;while(0);if(o|0)Hn(b);l=i;return Ya|0}function Zo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;c[e>>2]=c[a>>2];a=b;while(1){b=(c[e>>2]|0)+(4-1)&~(4-1);f=c[b>>2]|0;c[e>>2]=b+4;if(a>>>0>1)a=a+-1|0;else break}l=d;return f|0}function _o(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a;break}case -1:{b[d>>1]=f;break a;break}case 0:{c[d>>2]=f;break a;break}case 1:{c[d>>2]=f;break a;break}case 3:{h=d;c[h>>2]=f;c[h+4>>2]=g;break a;break}default:break a}while(0);return}function $o(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=l;l=l+16|0;h=g;i=(f|0)==0?39352:f;f=c[i>>2]|0;a:do if(!d)if(!f)j=0;else k=17;else{m=(b|0)==0?h:b;if(!e)j=-2;else{if(!f){n=a[d>>0]|0;if(n<<24>>24>-1){c[m>>2]=n&255;j=n<<24>>24!=0&1;break}n=(c[c[(bp()|0)+188>>2]>>2]|0)==0;o=a[d>>0]|0;if(n){c[m>>2]=o<<24>>24&57343;j=1;break}n=(o&255)+-194|0;if(n>>>0>50){k=17;break}o=c[9344+(n<<2)>>2]|0;n=e+-1|0;if(!n)p=o;else{q=d+1|0;r=o;s=n;k=11}}else{q=d;r=f;s=e;k=11}b:do if((k|0)==11){n=a[q>>0]|0;o=(n&255)>>>3;if((o+-16|o+(r>>26))>>>0>7){k=17;break a}else{t=q;u=r;v=s;w=n}while(1){t=t+1|0;u=(w&255)+-128|u<<6;v=v+-1|0;if((u|0)>=0)break;if(!v){p=u;break b}w=a[t>>0]|0;if((w&-64)<<24>>24!=-128){k=17;break a}}c[i>>2]=0;c[m>>2]=u;j=e-v|0;break a}while(0);c[i>>2]=p;j=-2}}while(0);if((k|0)==17){c[i>>2]=0;c[(dn()|0)>>2]=84;j=-1}l=g;return j|0}function ap(a){a=a|0;var b=0;if(!a)b=1;else b=(c[a>>2]|0)==0;return b&1|0}function bp(){return fn()|0}function cp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=a+84|0;f=c[e>>2]|0;g=d+256|0;h=Pn(f,0,g)|0;i=(h|0)==0?g:h-f|0;h=i>>>0<d>>>0?i:d;MD(b|0,f|0,h|0)|0;c[a+4>>2]=f+h;b=f+i|0;c[a+8>>2]=b;c[e>>2]=b;return h|0}function dp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if((c[a+76>>2]|0)>-1){e=(Gn(a)|0)==0;f=ep(a,b,d)|0;if(e)g=f;else{Hn(a);g=f}}else g=ep(a,b,d)|0;return g|0}function ep(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if((d|0)==1)e=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;else e=b;b=a+20|0;f=a+28|0;if((c[b>>2]|0)>>>0>(c[f>>2]|0)>>>0?(ib[c[a+36>>2]&31](a,0,0)|0,(c[b>>2]|0)==0):0)g=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[b>>2]=0;if((ib[c[a+40>>2]&31](a,e,d)|0)<0)g=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;g=0}}return g|0}function fp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=P(d,b)|0;g=(b|0)==0?0:d;if((c[e+76>>2]|0)>-1){d=(Gn(e)|0)==0;h=bo(a,f,e)|0;if(d)i=h;else{Hn(e);i=h}}else i=bo(a,f,e)|0;if((i|0)==(f|0))j=g;else j=(i>>>0)/(b>>>0)|0;return j|0}function gp(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;f=l;l=l+16|0;g=f;h=e&255;a[g>>0]=h;i=b+16|0;j=c[i>>2]|0;if(!j)if(!(co(b)|0)){k=c[i>>2]|0;m=4}else n=-1;else{k=j;m=4}do if((m|0)==4){j=b+20|0;i=c[j>>2]|0;if(i>>>0<k>>>0?(o=e&255,(o|0)!=(a[b+75>>0]|0)):0){c[j>>2]=i+1;a[i>>0]=h;n=o;break}if((ib[c[b+36>>2]&31](b,g,1)|0)==1)n=d[g>>0]|0;else n=-1}while(0);l=f;return n|0}function hp(){return 10416}function ip(a){a=a|0;var b=0;if(!(jp(a)|0))b=0;else b=(Go(a)|0)==0;return b&1|0}function jp(a){a=a|0;return (a+-33|0)>>>0<94|0}function kp(a){a=a|0;return ((a+-48|0)>>>0<10|((a|32)+-97|0)>>>0<6)&1|0}function lp(){return 11956}function mp(){var a=0;a=(c[c[(np()|0)+188>>2]>>2]|0)!=0;return (a?4:1)|0}function np(){return fn()|0}function op(){return 11960}function pp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;f=l;l=l+16|0;g=f;a:do if(!b){h=c[d>>2]|0;i=c[h>>2]|0;if(!i)j=0;else{k=h;h=0;m=i;while(1){if(m>>>0>127){i=Un(g,m,0)|0;if((i|0)==-1){j=-1;break a}else n=i}else n=1;i=n+h|0;k=k+4|0;m=c[k>>2]|0;if(!m){j=i;break}else h=i}}}else{b:do if(e>>>0>3){h=b;m=e;k=c[d>>2]|0;while(1){i=c[k>>2]|0;if((i+-1|0)>>>0>126){if(!i)break;o=Un(h,i,0)|0;if((o|0)==-1){j=-1;break a}p=h+o|0;q=m-o|0;r=k}else{a[h>>0]=i;p=h+1|0;q=m+-1|0;r=c[d>>2]|0}k=r+4|0;c[d>>2]=k;if(q>>>0<=3){s=p;t=q;break b}else{h=p;m=q}}a[h>>0]=0;c[d>>2]=0;j=e-m|0;break a}else{s=b;t=e}while(0);if(t){k=s;i=t;o=c[d>>2]|0;while(1){u=c[o>>2]|0;if((u+-1|0)>>>0>126){if(!u){v=19;break}w=Un(g,u,0)|0;if((w|0)==-1){j=-1;break a}if(i>>>0<w>>>0){v=22;break}Un(k,c[o>>2]|0,0)|0;x=k+w|0;y=i-w|0;z=o}else{a[k>>0]=u;x=k+1|0;y=i+-1|0;z=c[d>>2]|0}o=z+4|0;c[d>>2]=o;if(!y){j=e;break a}else{k=x;i=y}}if((v|0)==19){a[k>>0]=0;c[d>>2]=0;j=e-i|0;break}else if((v|0)==22){j=e-i|0;break}}else j=e}while(0);l=f;return j|0}function qp(a,b,c){a=a|0;b=b|0;c=c|0;return $o(0,a,b,c|0?c:39356)|0}function rp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;f=l;l=l+272|0;g=f+8|0;h=f;i=c[b>>2]|0;c[h>>2]=i;j=(a|0)!=0;k=j?e:256;e=j?a:g;a=i;a:do if((k|0)!=0&(i|0)!=0){m=0;n=d;o=k;p=e;q=a;while(1){r=n>>>0>=o>>>0;if(!(r|n>>>0>32)){s=p;t=m;u=n;v=o;w=q;break a}x=r?o:n;y=n-x|0;r=pp(p,h,x,0)|0;if((r|0)==-1)break;x=(p|0)==(g|0);z=o-(x?0:r)|0;A=x?p:p+r|0;x=r+m|0;r=c[h>>2]|0;if((z|0)!=0&(r|0)!=0){m=x;n=y;o=z;p=A;q=r}else{s=A;t=x;u=y;v=z;w=r;break a}}s=p;t=-1;u=y;v=0;w=c[h>>2]|0}else{s=e;t=0;u=d;v=k;w=a}while(0);b:do if((w|0)!=0?(v|0)!=0&(u|0)!=0:0){a=t;k=u;d=s;e=v;y=w;while(1){B=Un(d,c[y>>2]|0,0)|0;if((B+1|0)>>>0<2)break;y=(c[h>>2]|0)+4|0;c[h>>2]=y;k=k+-1|0;e=e-B|0;g=B+a|0;if(!((e|0)!=0&(k|0)!=0)){C=g;break b}else{a=g;d=d+B|0}}if(!B){c[h>>2]=0;C=a}else C=-1}else C=t;while(0);if(j)c[b>>2]=c[h>>2];l=f;return C|0}function sp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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;g=l;l=l+1040|0;h=g+8|0;i=g;j=c[b>>2]|0;c[i>>2]=j;k=(a|0)!=0;m=k?e:256;e=k?a:h;a=j;a:do if((m|0)!=0&(j|0)!=0){n=0;o=d;p=m;q=e;r=a;while(1){s=o>>>2;t=s>>>0>=p>>>0;if(!(o>>>0>131|t)){u=q;v=n;w=o;x=p;y=r;break a}z=t?p:s;A=o-z|0;s=Io(q,i,z,f)|0;if((s|0)==-1)break;z=(q|0)==(h|0);t=p-(z?0:s)|0;B=z?q:q+(s<<2)|0;z=s+n|0;s=c[i>>2]|0;if((t|0)!=0&(s|0)!=0){n=z;o=A;p=t;q=B;r=s}else{u=B;v=z;w=A;x=t;y=s;break a}}u=q;v=-1;w=A;x=0;y=c[i>>2]|0}else{u=e;v=0;w=d;x=m;y=a}while(0);b:do if((y|0)!=0?(x|0)!=0&(w|0)!=0:0){a=v;m=w;d=u;e=x;A=y;while(1){C=$o(d,A,m,f)|0;if((C+2|0)>>>0<3)break;A=(c[i>>2]|0)+C|0;c[i>>2]=A;m=m-C|0;e=e+-1|0;h=a+1|0;if(!((e|0)!=0&(m|0)!=0)){D=h;break b}else{a=h;d=d+4|0}}switch(C|0){case -1:{D=-1;break b;break}case 0:{c[i>>2]=0;D=a;break b;break}default:{c[f>>2]=0;D=a;break b}}}else D=v;while(0);if(k)c[b>>2]=c[i>>2];l=g;return D|0}function tp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(d|0){e=d;d=b;b=a;while(1){e=e+-1|0;c[b>>2]=c[d>>2];if(!e)break;else{d=d+4|0;b=b+4|0}}}return a|0}function up(a){a=a|0;var b=0,d=0;b=(vp()|0)+188|0;d=c[b>>2]|0;if(a|0)c[b>>2]=(a|0)==(-1|0)?39292:a;return ((d|0)==39292?-1:d)|0}function vp(){return fn()|0}function wp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=l;l=l+272|0;f=e+8|0;g=e;do if(!(a[d>>0]|0)){h=Qa(34034)|0;if(h|0?a[h>>0]|0:0){i=h;break}h=Qa(34041+(b*12|0)|0)|0;if(h|0?a[h>>0]|0:0){i=h;break}h=Qa(34113)|0;if(h|0?a[h>>0]|0:0){i=h;break}i=34118}else i=d;while(0);d=0;a:while(1){switch(a[i+d>>0]|0){case 47:case 0:{j=d;break a;break}default:{}}h=d+1|0;if(h>>>0<15)d=h;else{j=h;break}}d=a[i>>0]|0;if(d<<24>>24!=46?(a[i+j>>0]|0)==0:0)if(d<<24>>24==67){k=i;m=15}else{n=i;m=16}else{k=34118;m=15}if((m|0)==15)if(!(a[k+1>>0]|0)){o=k;m=18}else{n=k;m=16}b:do if((m|0)==16)if((ao(n,34118)|0)!=0?(ao(n,34126)|0)!=0:0){k=c[9840]|0;if(k|0){i=k;do{if(!(ao(n,i+8|0)|0)){p=i;break b}i=c[i+24>>2]|0}while((i|0)!=0)}Ya(39364);i=c[9840]|0;c:do if(i|0){k=i;while(1){if(!(ao(n,k+8|0)|0))break;d=c[k+24>>2]|0;if(!d)break c;else k=d}Ta(39364);p=k;break b}while(0);d:do if(((c[9815]|0)==0?(i=Qa(34132)|0,(i|0)!=0):0)?(a[i>>0]|0)!=0:0){d=254-j|0;h=j+1|0;q=i;while(1){i=po(q,58)|0;r=a[i>>0]|0;s=((r<<24>>24!=0)<<31>>31)+(i-q)|0;if(s>>>0<d>>>0){MD(f|0,q|0,s|0)|0;t=f+s|0;a[t>>0]=47;MD(t+1|0,n|0,j|0)|0;a[f+(h+s)>>0]=0;u=Ra(f|0,g|0)|0;if(u|0)break;v=a[i>>0]|0}else v=r;q=i+(v<<24>>24!=0&1)|0;if(!(a[q>>0]|0)){m=41;break d}}q=Pp(28)|0;h=c[g>>2]|0;if(!q){Co(u,h)|0;m=41;break}else{c[q>>2]=u;c[q+4>>2]=h;h=q+8|0;MD(h|0,n|0,j|0)|0;a[h+j>>0]=0;c[q+24>>2]=c[9840];c[9840]=q;w=q;break}}else m=41;while(0);if((m|0)==41){q=Pp(28)|0;if(!q)w=q;else{c[q>>2]=c[2387];c[q+4>>2]=c[2388];h=q+8|0;MD(h|0,n|0,j|0)|0;a[h+j>>0]=0;c[q+24>>2]=c[9840];c[9840]=q;w=q}}Ta(39364);p=(b|0)==0&(w|0)==0?9548:w}else{o=n;m=18}while(0);do if((m|0)==18){if((b|0)==0?(a[o+1>>0]|0)==46:0){p=9548;break}p=0}while(0);l=e;return p|0}function xp(a,b){a=a|0;b=b|0;return (a+-48|0)>>>0<10|0}function yp(a,b){a=a|0;b=b|0;return -1|0}function zp(a){a=a|0;if(Ap(a)|0)Qp(a);return}function Ap(a){a=a|0;return (a|0)!=9596&((a|0)!=0&(a|0)!=39316)&1|0}function Bp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return d|0}function Cp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+32|0;f=e;a:do if(!(Ap(d)|0)){g=(d|0)==0;h=0;i=0;do{j=(1<<i&a|0)!=0;if(g|j)k=wp(i,j?b:44918)|0;else k=c[d+(i<<2)>>2]|0;h=((k|0)!=0&1)+h|0;c[f+(i<<2)>>2]=k;i=i+1|0}while((i|0)!=6);switch(h|0){case 0:{m=39316;break a;break}case 1:{if((c[f>>2]|0)==9548){m=9596;break a}break}default:{}}m=d}else{i=0;do{if(1<<i&a|0)c[d+(i<<2)>>2]=wp(i,b)|0;i=i+1|0}while((i|0)!=6);m=d}while(0);l=e;return m|0}function Dp(a,b){a=a|0;b=b|0;return kp(a)|0}function Ep(a){a=a|0;return 0}function Fp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=to(a,b,c)|0;return d|0}function Gp(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=wo(a,b,c)|0;return d|0}function Hp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if(d|0){e=d;d=a;while(1){e=e+-1|0;c[d>>2]=b;if(!e)break;else d=d+4|0}}return a|0}function Ip(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;if(a-b>>2>>>0>=d>>>0){if(d|0){e=b;f=a;g=d;while(1){g=g+-1|0;c[f>>2]=c[e>>2];if(!g)break;else{e=e+4|0;f=f+4|0}}}}else{f=d;do{f=f+-1|0;c[a+(f<<2)>>2]=c[b+(f<<2)>>2]}while((f|0)!=0)}return a|0}function Jp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;do if((b|0)!=-1){if((c[d+76>>2]|0)>-1)e=Gn(d)|0;else e=0;f=d+4|0;g=c[f>>2]|0;if(!g){oo(d)|0;h=c[f>>2]|0;i=(e|0)!=0;if(!h)j=i;else{k=h;l=i;m=7}}else{k=g;l=(e|0)!=0;m=7}if((m|0)==7)if(k>>>0>((c[d+44>>2]|0)+-8|0)>>>0){g=k+-1|0;c[f>>2]=g;a[g>>0]=b;c[d>>2]=c[d>>2]&-17;if(!l){n=b;break}Hn(d);n=b;break}else j=l;if(j){Hn(d);n=-1}else n=-1}else n=-1;while(0);return n|0}function Kp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;f=e;c[f>>2]=c[d>>2];g=Dn(0,0,b,f)|0;if((g|0)>=0?(f=g+1|0,g=Pp(f)|0,c[a>>2]=g,(g|0)!=0):0)h=Dn(g,f,b,d)|0;else h=-1;l=e;return h|0}function Lp(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=P(e,d)|0;h=(d|0)==0?0:e;if((c[f+76>>2]|0)>-1)i=Gn(f)|0;else i=0;e=f+74|0;j=a[e>>0]|0;a[e>>0]=j+255|j;j=f+4|0;e=c[j>>2]|0;k=(c[f+8>>2]|0)-e|0;l=k>>>0<g>>>0?k:g;if((k|0)>0){MD(b|0,e|0,l|0)|0;c[j>>2]=e+l;m=g-l|0;n=b+l|0}else{m=g;n=b}a:do if(!m)o=13;else{b=f+32|0;l=m;e=n;while(1){if(oo(f)|0)break;j=ib[c[b>>2]&31](f,e,l)|0;if((j+1|0)>>>0<2)break;k=l-j|0;if(!k){o=13;break a}else{l=k;e=e+j|0}}if(i|0)Hn(f);p=((g-l|0)>>>0)/(d>>>0)|0}while(0);if((o|0)==13)if(!i)p=h;else{Hn(f);p=h}return p|0}function Mp(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=b&255;f=b&255;if((c[d+76>>2]|0)>=0?(Gn(d)|0)!=0:0){if((f|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=e;i=f}else i=gp(d,b)|0;Hn(d);j=i}else k=3;do if((k|0)==3){if((f|0)!=(a[d+75>>0]|0)?(i=d+20|0,h=c[i>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[i>>2]=h+1;a[h>>0]=e;j=f;break}j=gp(d,b)|0}while(0);return j|0}function Np(a){a=a|0;var b=0,d=0,e=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;d=ib[c[a+40>>2]&31](a,0,b)|0;if((d|0)<0)e=d;else e=d-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return e|0}function Op(a){a=a|0;var b=0,d=0,e=0;if((c[a+76>>2]|0)>-1){b=(Gn(a)|0)==0;d=Np(a)|0;if(b)e=d;else e=d}else e=Np(a)|0;return e|0}function Pp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,xa=0,ya=0,za=0,Aa=0,Ba=0;b=l;l=l+16|0;d=b;do if(a>>>0<245){e=a>>>0<11?16:a+11&-8;f=e>>>3;g=c[9843]|0;h=g>>>f;if(h&3|0){i=(h&1^1)+f|0;j=39412+(i<<1<<2)|0;k=j+8|0;m=c[k>>2]|0;n=m+8|0;o=c[n>>2]|0;do if((j|0)!=(o|0)){if(o>>>0<(c[9847]|0)>>>0)wa();p=o+12|0;if((c[p>>2]|0)==(m|0)){c[p>>2]=j;c[k>>2]=o;break}else wa()}else c[9843]=g&~(1<<i);while(0);o=i<<3;c[m+4>>2]=o|3;k=m+o+4|0;c[k>>2]=c[k>>2]|1;q=n;l=b;return q|0}k=c[9845]|0;if(e>>>0>k>>>0){if(h|0){o=2<<f;j=h<<f&(o|0-o);o=(j&0-j)+-1|0;j=o>>>12&16;p=o>>>j;o=p>>>5&8;r=p>>>o;p=r>>>2&4;s=r>>>p;r=s>>>1&2;t=s>>>r;s=t>>>1&1;u=(o|j|p|r|s)+(t>>>s)|0;s=39412+(u<<1<<2)|0;t=s+8|0;r=c[t>>2]|0;p=r+8|0;j=c[p>>2]|0;do if((s|0)!=(j|0)){if(j>>>0<(c[9847]|0)>>>0)wa();o=j+12|0;if((c[o>>2]|0)==(r|0)){c[o>>2]=s;c[t>>2]=j;v=g;break}else wa()}else{o=g&~(1<<u);c[9843]=o;v=o}while(0);j=(u<<3)-e|0;c[r+4>>2]=e|3;t=r+e|0;c[t+4>>2]=j|1;c[t+j>>2]=j;if(k|0){s=c[9848]|0;f=k>>>3;h=39412+(f<<1<<2)|0;n=1<<f;if(v&n){f=h+8|0;m=c[f>>2]|0;if(m>>>0<(c[9847]|0)>>>0)wa();else{w=m;x=f}}else{c[9843]=v|n;w=h;x=h+8|0}c[x>>2]=s;c[w+12>>2]=s;c[s+8>>2]=w;c[s+12>>2]=h}c[9845]=j;c[9848]=t;q=p;l=b;return q|0}t=c[9844]|0;if(t){j=(t&0-t)+-1|0;h=j>>>12&16;s=j>>>h;j=s>>>5&8;n=s>>>j;s=n>>>2&4;f=n>>>s;n=f>>>1&2;m=f>>>n;f=m>>>1&1;i=c[39676+((j|h|s|n|f)+(m>>>f)<<2)>>2]|0;f=(c[i+4>>2]&-8)-e|0;m=c[i+16+(((c[i+16>>2]|0)==0&1)<<2)>>2]|0;if(!m){y=i;z=f}else{n=i;i=f;f=m;while(1){m=(c[f+4>>2]&-8)-e|0;s=m>>>0<i>>>0;h=s?m:i;m=s?f:n;f=c[f+16+(((c[f+16>>2]|0)==0&1)<<2)>>2]|0;if(!f){y=m;z=h;break}else{n=m;i=h}}}i=c[9847]|0;if(y>>>0<i>>>0)wa();n=y+e|0;if(y>>>0>=n>>>0)wa();f=c[y+24>>2]|0;p=c[y+12>>2]|0;do if((p|0)==(y|0)){r=y+20|0;u=c[r>>2]|0;if(!u){h=y+16|0;m=c[h>>2]|0;if(!m){A=0;break}else{B=m;C=h}}else{B=u;C=r}while(1){r=B+20|0;u=c[r>>2]|0;if(u|0){B=u;C=r;continue}r=B+16|0;u=c[r>>2]|0;if(!u)break;else{B=u;C=r}}if(C>>>0<i>>>0)wa();else{c[C>>2]=0;A=B;break}}else{r=c[y+8>>2]|0;if(r>>>0<i>>>0)wa();u=r+12|0;if((c[u>>2]|0)!=(y|0))wa();h=p+8|0;if((c[h>>2]|0)==(y|0)){c[u>>2]=p;c[h>>2]=r;A=p;break}else wa()}while(0);a:do if(f|0){p=c[y+28>>2]|0;i=39676+(p<<2)|0;do if((y|0)==(c[i>>2]|0)){c[i>>2]=A;if(!A){c[9844]=t&~(1<<p);break a}}else if(f>>>0>=(c[9847]|0)>>>0){c[f+16+(((c[f+16>>2]|0)!=(y|0)&1)<<2)>>2]=A;if(!A)break a;else break}else wa();while(0);p=c[9847]|0;if(A>>>0<p>>>0)wa();c[A+24>>2]=f;i=c[y+16>>2]|0;do if(i|0)if(i>>>0<p>>>0)wa();else{c[A+16>>2]=i;c[i+24>>2]=A;break}while(0);i=c[y+20>>2]|0;if(i|0)if(i>>>0<(c[9847]|0)>>>0)wa();else{c[A+20>>2]=i;c[i+24>>2]=A;break}}while(0);if(z>>>0<16){f=z+e|0;c[y+4>>2]=f|3;t=y+f+4|0;c[t>>2]=c[t>>2]|1}else{c[y+4>>2]=e|3;c[n+4>>2]=z|1;c[n+z>>2]=z;if(k|0){t=c[9848]|0;f=k>>>3;i=39412+(f<<1<<2)|0;p=1<<f;if(g&p){f=i+8|0;r=c[f>>2]|0;if(r>>>0<(c[9847]|0)>>>0)wa();else{D=r;E=f}}else{c[9843]=g|p;D=i;E=i+8|0}c[E>>2]=t;c[D+12>>2]=t;c[t+8>>2]=D;c[t+12>>2]=i}c[9845]=z;c[9848]=n}q=y+8|0;l=b;return q|0}else F=e}else F=e}else if(a>>>0<=4294967231){i=a+11|0;t=i&-8;p=c[9844]|0;if(p){f=0-t|0;r=i>>>8;if(r)if(t>>>0>16777215)G=31;else{i=(r+1048320|0)>>>16&8;h=r<<i;r=(h+520192|0)>>>16&4;u=h<<r;h=(u+245760|0)>>>16&2;m=14-(r|i|h)+(u<<h>>>15)|0;G=t>>>(m+7|0)&1|m<<1}else G=0;m=c[39676+(G<<2)>>2]|0;b:do if(!m){H=0;I=0;J=f;K=81}else{h=0;u=f;i=m;r=t<<((G|0)==31?0:25-(G>>>1)|0);s=0;while(1){j=(c[i+4>>2]&-8)-t|0;if(j>>>0<u>>>0)if(!j){L=i;M=0;N=i;K=85;break b}else{O=i;P=j}else{O=h;P=u}j=c[i+20>>2]|0;i=c[i+16+(r>>>31<<2)>>2]|0;o=(j|0)==0|(j|0)==(i|0)?s:j;j=(i|0)==0;if(j){H=o;I=O;J=P;K=81;break}else{h=O;u=P;r=r<<((j^1)&1);s=o}}}while(0);if((K|0)==81){if((H|0)==0&(I|0)==0){m=2<<G;f=p&(m|0-m);if(!f){F=t;break}m=(f&0-f)+-1|0;f=m>>>12&16;e=m>>>f;m=e>>>5&8;n=e>>>m;e=n>>>2&4;g=n>>>e;n=g>>>1&2;k=g>>>n;g=k>>>1&1;Q=0;R=c[39676+((m|f|e|n|g)+(k>>>g)<<2)>>2]|0}else{Q=I;R=H}if(!R){S=Q;T=J}else{L=Q;M=J;N=R;K=85}}if((K|0)==85)while(1){K=0;g=(c[N+4>>2]&-8)-t|0;k=g>>>0<M>>>0;n=k?g:M;g=k?N:L;N=c[N+16+(((c[N+16>>2]|0)==0&1)<<2)>>2]|0;if(!N){S=g;T=n;break}else{L=g;M=n;K=85}}if((S|0)!=0?T>>>0<((c[9845]|0)-t|0)>>>0:0){n=c[9847]|0;if(S>>>0<n>>>0)wa();g=S+t|0;if(S>>>0>=g>>>0)wa();k=c[S+24>>2]|0;e=c[S+12>>2]|0;do if((e|0)==(S|0)){f=S+20|0;m=c[f>>2]|0;if(!m){s=S+16|0;r=c[s>>2]|0;if(!r){U=0;break}else{V=r;W=s}}else{V=m;W=f}while(1){f=V+20|0;m=c[f>>2]|0;if(m|0){V=m;W=f;continue}f=V+16|0;m=c[f>>2]|0;if(!m)break;else{V=m;W=f}}if(W>>>0<n>>>0)wa();else{c[W>>2]=0;U=V;break}}else{f=c[S+8>>2]|0;if(f>>>0<n>>>0)wa();m=f+12|0;if((c[m>>2]|0)!=(S|0))wa();s=e+8|0;if((c[s>>2]|0)==(S|0)){c[m>>2]=e;c[s>>2]=f;U=e;break}else wa()}while(0);c:do if(k){e=c[S+28>>2]|0;n=39676+(e<<2)|0;do if((S|0)==(c[n>>2]|0)){c[n>>2]=U;if(!U){f=p&~(1<<e);c[9844]=f;X=f;break c}}else if(k>>>0>=(c[9847]|0)>>>0){c[k+16+(((c[k+16>>2]|0)!=(S|0)&1)<<2)>>2]=U;if(!U){X=p;break c}else break}else wa();while(0);e=c[9847]|0;if(U>>>0<e>>>0)wa();c[U+24>>2]=k;n=c[S+16>>2]|0;do if(n|0)if(n>>>0<e>>>0)wa();else{c[U+16>>2]=n;c[n+24>>2]=U;break}while(0);n=c[S+20>>2]|0;if(n)if(n>>>0<(c[9847]|0)>>>0)wa();else{c[U+20>>2]=n;c[n+24>>2]=U;X=p;break}else X=p}else X=p;while(0);do if(T>>>0>=16){c[S+4>>2]=t|3;c[g+4>>2]=T|1;c[g+T>>2]=T;p=T>>>3;if(T>>>0<256){k=39412+(p<<1<<2)|0;n=c[9843]|0;e=1<<p;if(n&e){p=k+8|0;f=c[p>>2]|0;if(f>>>0<(c[9847]|0)>>>0)wa();else{Y=f;Z=p}}else{c[9843]=n|e;Y=k;Z=k+8|0}c[Z>>2]=g;c[Y+12>>2]=g;c[g+8>>2]=Y;c[g+12>>2]=k;break}k=T>>>8;if(k)if(T>>>0>16777215)_=31;else{e=(k+1048320|0)>>>16&8;n=k<<e;k=(n+520192|0)>>>16&4;p=n<<k;n=(p+245760|0)>>>16&2;f=14-(k|e|n)+(p<<n>>>15)|0;_=T>>>(f+7|0)&1|f<<1}else _=0;f=39676+(_<<2)|0;c[g+28>>2]=_;n=g+16|0;c[n+4>>2]=0;c[n>>2]=0;n=1<<_;if(!(X&n)){c[9844]=X|n;c[f>>2]=g;c[g+24>>2]=f;c[g+12>>2]=g;c[g+8>>2]=g;break}n=T<<((_|0)==31?0:25-(_>>>1)|0);p=c[f>>2]|0;while(1){if((c[p+4>>2]&-8|0)==(T|0)){K=139;break}$=p+16+(n>>>31<<2)|0;f=c[$>>2]|0;if(!f){K=136;break}else{n=n<<1;p=f}}if((K|0)==136)if($>>>0<(c[9847]|0)>>>0)wa();else{c[$>>2]=g;c[g+24>>2]=p;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((K|0)==139){n=p+8|0;f=c[n>>2]|0;e=c[9847]|0;if(f>>>0>=e>>>0&p>>>0>=e>>>0){c[f+12>>2]=g;c[n>>2]=g;c[g+8>>2]=f;c[g+12>>2]=p;c[g+24>>2]=0;break}else wa()}}else{f=T+t|0;c[S+4>>2]=f|3;n=S+f+4|0;c[n>>2]=c[n>>2]|1}while(0);q=S+8|0;l=b;return q|0}else F=t}else F=t}else F=-1;while(0);S=c[9845]|0;if(S>>>0>=F>>>0){T=S-F|0;$=c[9848]|0;if(T>>>0>15){_=$+F|0;c[9848]=_;c[9845]=T;c[_+4>>2]=T|1;c[_+T>>2]=T;c[$+4>>2]=F|3}else{c[9845]=0;c[9848]=0;c[$+4>>2]=S|3;T=$+S+4|0;c[T>>2]=c[T>>2]|1}q=$+8|0;l=b;return q|0}$=c[9846]|0;if($>>>0>F>>>0){T=$-F|0;c[9846]=T;S=c[9849]|0;_=S+F|0;c[9849]=_;c[_+4>>2]=T|1;c[S+4>>2]=F|3;q=S+8|0;l=b;return q|0}if(!(c[9961]|0)){c[9963]=4096;c[9962]=4096;c[9964]=-1;c[9965]=-1;c[9966]=0;c[9954]=0;S=d&-16^1431655768;c[d>>2]=S;c[9961]=S;aa=4096}else aa=c[9963]|0;S=F+48|0;d=F+47|0;T=aa+d|0;_=0-aa|0;aa=T&_;if(aa>>>0<=F>>>0){q=0;l=b;return q|0}X=c[9953]|0;if(X|0?(Y=c[9951]|0,Z=Y+aa|0,Z>>>0<=Y>>>0|Z>>>0>X>>>0):0){q=0;l=b;return q|0}d:do if(!(c[9954]&4)){X=c[9849]|0;e:do if(X){Z=39820;while(1){Y=c[Z>>2]|0;if(Y>>>0<=X>>>0?(ba=Z+4|0,(Y+(c[ba>>2]|0)|0)>>>0>X>>>0):0)break;Y=c[Z+8>>2]|0;if(!Y){K=163;break e}else Z=Y}p=T-$&_;if(p>>>0<2147483647){Y=SD(p|0)|0;if((Y|0)==((c[Z>>2]|0)+(c[ba>>2]|0)|0))if((Y|0)==(-1|0))ca=p;else{da=p;ea=Y;K=180;break d}else{fa=Y;ga=p;K=171}}else ca=0}else K=163;while(0);do if((K|0)==163){X=SD(0)|0;if((X|0)!=(-1|0)?(t=X,p=c[9962]|0,Y=p+-1|0,U=((Y&t|0)==0?0:(Y+t&0-p)-t|0)+aa|0,t=c[9951]|0,p=U+t|0,U>>>0>F>>>0&U>>>0<2147483647):0){Y=c[9953]|0;if(Y|0?p>>>0<=t>>>0|p>>>0>Y>>>0:0){ca=0;break}Y=SD(U|0)|0;if((Y|0)==(X|0)){da=U;ea=X;K=180;break d}else{fa=Y;ga=U;K=171}}else ca=0}while(0);do if((K|0)==171){U=0-ga|0;if(!(S>>>0>ga>>>0&(ga>>>0<2147483647&(fa|0)!=(-1|0))))if((fa|0)==(-1|0)){ca=0;break}else{da=ga;ea=fa;K=180;break d}Y=c[9963]|0;X=d-ga+Y&0-Y;if(X>>>0>=2147483647){da=ga;ea=fa;K=180;break d}if((SD(X|0)|0)==(-1|0)){SD(U|0)|0;ca=0;break}else{da=X+ga|0;ea=fa;K=180;break d}}while(0);c[9954]=c[9954]|4;ha=ca;K=178}else{ha=0;K=178}while(0);if(((K|0)==178?aa>>>0<2147483647:0)?(ca=SD(aa|0)|0,aa=SD(0)|0,fa=aa-ca|0,ga=fa>>>0>(F+40|0)>>>0,!((ca|0)==(-1|0)|ga^1|ca>>>0<aa>>>0&((ca|0)!=(-1|0)&(aa|0)!=(-1|0))^1)):0){da=ga?fa:ha;ea=ca;K=180}if((K|0)==180){ca=(c[9951]|0)+da|0;c[9951]=ca;if(ca>>>0>(c[9952]|0)>>>0)c[9952]=ca;ca=c[9849]|0;do if(ca){ha=39820;while(1){ia=c[ha>>2]|0;ja=ha+4|0;ka=c[ja>>2]|0;if((ea|0)==(ia+ka|0)){K=190;break}fa=c[ha+8>>2]|0;if(!fa)break;else ha=fa}if(((K|0)==190?(c[ha+12>>2]&8|0)==0:0)?ca>>>0<ea>>>0&ca>>>0>=ia>>>0:0){c[ja>>2]=ka+da;fa=ca+8|0;ga=(fa&7|0)==0?0:0-fa&7;fa=ca+ga|0;aa=(c[9846]|0)+(da-ga)|0;c[9849]=fa;c[9846]=aa;c[fa+4>>2]=aa|1;c[fa+aa+4>>2]=40;c[9850]=c[9965];break}aa=c[9847]|0;if(ea>>>0<aa>>>0){c[9847]=ea;la=ea}else la=aa;aa=ea+da|0;fa=39820;while(1){if((c[fa>>2]|0)==(aa|0)){K=198;break}ga=c[fa+8>>2]|0;if(!ga)break;else fa=ga}if((K|0)==198?(c[fa+12>>2]&8|0)==0:0){c[fa>>2]=ea;ha=fa+4|0;c[ha>>2]=(c[ha>>2]|0)+da;ha=ea+8|0;ga=ea+((ha&7|0)==0?0:0-ha&7)|0;ha=aa+8|0;d=aa+((ha&7|0)==0?0:0-ha&7)|0;ha=ga+F|0;S=d-ga-F|0;c[ga+4>>2]=F|3;do if((d|0)!=(ca|0)){if((d|0)==(c[9848]|0)){ba=(c[9845]|0)+S|0;c[9845]=ba;c[9848]=ha;c[ha+4>>2]=ba|1;c[ha+ba>>2]=ba;break}ba=c[d+4>>2]|0;if((ba&3|0)==1){_=ba&-8;$=ba>>>3;f:do if(ba>>>0>=256){T=c[d+24>>2]|0;X=c[d+12>>2]|0;do if((X|0)==(d|0)){U=d+16|0;Y=U+4|0;p=c[Y>>2]|0;if(!p){t=c[U>>2]|0;if(!t){ma=0;break}else{na=t;oa=U}}else{na=p;oa=Y}while(1){Y=na+20|0;p=c[Y>>2]|0;if(p|0){na=p;oa=Y;continue}Y=na+16|0;p=c[Y>>2]|0;if(!p)break;else{na=p;oa=Y}}if(oa>>>0<la>>>0)wa();else{c[oa>>2]=0;ma=na;break}}else{Y=c[d+8>>2]|0;if(Y>>>0<la>>>0)wa();p=Y+12|0;if((c[p>>2]|0)!=(d|0))wa();U=X+8|0;if((c[U>>2]|0)==(d|0)){c[p>>2]=X;c[U>>2]=Y;ma=X;break}else wa()}while(0);if(!T)break;X=c[d+28>>2]|0;Y=39676+(X<<2)|0;do if((d|0)!=(c[Y>>2]|0))if(T>>>0>=(c[9847]|0)>>>0){c[T+16+(((c[T+16>>2]|0)!=(d|0)&1)<<2)>>2]=ma;if(!ma)break f;else break}else wa();else{c[Y>>2]=ma;if(ma|0)break;c[9844]=c[9844]&~(1<<X);break f}while(0);X=c[9847]|0;if(ma>>>0<X>>>0)wa();c[ma+24>>2]=T;Y=d+16|0;U=c[Y>>2]|0;do if(U|0)if(U>>>0<X>>>0)wa();else{c[ma+16>>2]=U;c[U+24>>2]=ma;break}while(0);U=c[Y+4>>2]|0;if(!U)break;if(U>>>0<(c[9847]|0)>>>0)wa();else{c[ma+20>>2]=U;c[U+24>>2]=ma;break}}else{U=c[d+8>>2]|0;X=c[d+12>>2]|0;T=39412+($<<1<<2)|0;do if((U|0)!=(T|0)){if(U>>>0<la>>>0)wa();if((c[U+12>>2]|0)==(d|0))break;wa()}while(0);if((X|0)==(U|0)){c[9843]=c[9843]&~(1<<$);break}do if((X|0)==(T|0))pa=X+8|0;else{if(X>>>0<la>>>0)wa();Y=X+8|0;if((c[Y>>2]|0)==(d|0)){pa=Y;break}wa()}while(0);c[U+12>>2]=X;c[pa>>2]=U}while(0);qa=d+_|0;ra=_+S|0}else{qa=d;ra=S}$=qa+4|0;c[$>>2]=c[$>>2]&-2;c[ha+4>>2]=ra|1;c[ha+ra>>2]=ra;$=ra>>>3;if(ra>>>0<256){ba=39412+($<<1<<2)|0;Z=c[9843]|0;T=1<<$;do if(!(Z&T)){c[9843]=Z|T;sa=ba;ta=ba+8|0}else{$=ba+8|0;Y=c[$>>2]|0;if(Y>>>0>=(c[9847]|0)>>>0){sa=Y;ta=$;break}wa()}while(0);c[ta>>2]=ha;c[sa+12>>2]=ha;c[ha+8>>2]=sa;c[ha+12>>2]=ba;break}T=ra>>>8;do if(!T)ua=0;else{if(ra>>>0>16777215){ua=31;break}Z=(T+1048320|0)>>>16&8;_=T<<Z;$=(_+520192|0)>>>16&4;Y=_<<$;_=(Y+245760|0)>>>16&2;p=14-($|Z|_)+(Y<<_>>>15)|0;ua=ra>>>(p+7|0)&1|p<<1}while(0);T=39676+(ua<<2)|0;c[ha+28>>2]=ua;ba=ha+16|0;c[ba+4>>2]=0;c[ba>>2]=0;ba=c[9844]|0;p=1<<ua;if(!(ba&p)){c[9844]=ba|p;c[T>>2]=ha;c[ha+24>>2]=T;c[ha+12>>2]=ha;c[ha+8>>2]=ha;break}p=ra<<((ua|0)==31?0:25-(ua>>>1)|0);ba=c[T>>2]|0;while(1){if((c[ba+4>>2]&-8|0)==(ra|0)){K=265;break}va=ba+16+(p>>>31<<2)|0;T=c[va>>2]|0;if(!T){K=262;break}else{p=p<<1;ba=T}}if((K|0)==262)if(va>>>0<(c[9847]|0)>>>0)wa();else{c[va>>2]=ha;c[ha+24>>2]=ba;c[ha+12>>2]=ha;c[ha+8>>2]=ha;break}else if((K|0)==265){p=ba+8|0;T=c[p>>2]|0;_=c[9847]|0;if(T>>>0>=_>>>0&ba>>>0>=_>>>0){c[T+12>>2]=ha;c[p>>2]=ha;c[ha+8>>2]=T;c[ha+12>>2]=ba;c[ha+24>>2]=0;break}else wa()}}else{T=(c[9846]|0)+S|0;c[9846]=T;c[9849]=ha;c[ha+4>>2]=T|1}while(0);q=ga+8|0;l=b;return q|0}ha=39820;while(1){S=c[ha>>2]|0;if(S>>>0<=ca>>>0?(xa=S+(c[ha+4>>2]|0)|0,xa>>>0>ca>>>0):0)break;ha=c[ha+8>>2]|0}ha=xa+-47|0;ga=ha+8|0;S=ha+((ga&7|0)==0?0:0-ga&7)|0;ga=ca+16|0;ha=S>>>0<ga>>>0?ca:S;S=ha+8|0;d=ea+8|0;aa=(d&7|0)==0?0:0-d&7;d=ea+aa|0;fa=da+-40-aa|0;c[9849]=d;c[9846]=fa;c[d+4>>2]=fa|1;c[d+fa+4>>2]=40;c[9850]=c[9965];fa=ha+4|0;c[fa>>2]=27;c[S>>2]=c[9955];c[S+4>>2]=c[9956];c[S+8>>2]=c[9957];c[S+12>>2]=c[9958];c[9955]=ea;c[9956]=da;c[9958]=0;c[9957]=S;S=ha+24|0;do{d=S;S=S+4|0;c[S>>2]=7}while((d+8|0)>>>0<xa>>>0);if((ha|0)!=(ca|0)){S=ha-ca|0;c[fa>>2]=c[fa>>2]&-2;c[ca+4>>2]=S|1;c[ha>>2]=S;d=S>>>3;if(S>>>0<256){aa=39412+(d<<1<<2)|0;T=c[9843]|0;p=1<<d;if(T&p){d=aa+8|0;_=c[d>>2]|0;if(_>>>0<(c[9847]|0)>>>0)wa();else{ya=_;za=d}}else{c[9843]=T|p;ya=aa;za=aa+8|0}c[za>>2]=ca;c[ya+12>>2]=ca;c[ca+8>>2]=ya;c[ca+12>>2]=aa;break}aa=S>>>8;if(aa)if(S>>>0>16777215)Aa=31;else{p=(aa+1048320|0)>>>16&8;T=aa<<p;aa=(T+520192|0)>>>16&4;d=T<<aa;T=(d+245760|0)>>>16&2;_=14-(aa|p|T)+(d<<T>>>15)|0;Aa=S>>>(_+7|0)&1|_<<1}else Aa=0;_=39676+(Aa<<2)|0;c[ca+28>>2]=Aa;c[ca+20>>2]=0;c[ga>>2]=0;T=c[9844]|0;d=1<<Aa;if(!(T&d)){c[9844]=T|d;c[_>>2]=ca;c[ca+24>>2]=_;c[ca+12>>2]=ca;c[ca+8>>2]=ca;break}d=S<<((Aa|0)==31?0:25-(Aa>>>1)|0);T=c[_>>2]|0;while(1){if((c[T+4>>2]&-8|0)==(S|0)){K=292;break}Ba=T+16+(d>>>31<<2)|0;_=c[Ba>>2]|0;if(!_){K=289;break}else{d=d<<1;T=_}}if((K|0)==289)if(Ba>>>0<(c[9847]|0)>>>0)wa();else{c[Ba>>2]=ca;c[ca+24>>2]=T;c[ca+12>>2]=ca;c[ca+8>>2]=ca;break}else if((K|0)==292){d=T+8|0;S=c[d>>2]|0;ga=c[9847]|0;if(S>>>0>=ga>>>0&T>>>0>=ga>>>0){c[S+12>>2]=ca;c[d>>2]=ca;c[ca+8>>2]=S;c[ca+12>>2]=T;c[ca+24>>2]=0;break}else wa()}}}else{S=c[9847]|0;if((S|0)==0|ea>>>0<S>>>0)c[9847]=ea;c[9955]=ea;c[9956]=da;c[9958]=0;c[9852]=c[9961];c[9851]=-1;S=0;do{d=39412+(S<<1<<2)|0;c[d+12>>2]=d;c[d+8>>2]=d;S=S+1|0}while((S|0)!=32);S=ea+8|0;T=(S&7|0)==0?0:0-S&7;S=ea+T|0;d=da+-40-T|0;c[9849]=S;c[9846]=d;c[S+4>>2]=d|1;c[S+d+4>>2]=40;c[9850]=c[9965]}while(0);da=c[9846]|0;if(da>>>0>F>>>0){ea=da-F|0;c[9846]=ea;da=c[9849]|0;ca=da+F|0;c[9849]=ca;c[ca+4>>2]=ea|1;c[da+4>>2]=F|3;q=da+8|0;l=b;return q|0}}c[(dn()|0)>>2]=12;q=0;l=b;return q|0}function Qp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,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,F=0,G=0;if(!a)return;b=a+-8|0;d=c[9847]|0;if(b>>>0<d>>>0)wa();e=c[a+-4>>2]|0;a=e&3;if((a|0)==1)wa();f=e&-8;g=b+f|0;a:do if(!(e&1)){h=c[b>>2]|0;if(!a)return;i=b+(0-h)|0;j=h+f|0;if(i>>>0<d>>>0)wa();if((i|0)==(c[9848]|0)){k=g+4|0;l=c[k>>2]|0;if((l&3|0)!=3){m=i;n=j;o=i;break}c[9845]=j;c[k>>2]=l&-2;c[i+4>>2]=j|1;c[i+j>>2]=j;return}l=h>>>3;if(h>>>0<256){h=c[i+8>>2]|0;k=c[i+12>>2]|0;p=39412+(l<<1<<2)|0;if((h|0)!=(p|0)){if(h>>>0<d>>>0)wa();if((c[h+12>>2]|0)!=(i|0))wa()}if((k|0)==(h|0)){c[9843]=c[9843]&~(1<<l);m=i;n=j;o=i;break}if((k|0)!=(p|0)){if(k>>>0<d>>>0)wa();p=k+8|0;if((c[p>>2]|0)==(i|0))q=p;else wa()}else q=k+8|0;c[h+12>>2]=k;c[q>>2]=h;m=i;n=j;o=i;break}h=c[i+24>>2]|0;k=c[i+12>>2]|0;do if((k|0)==(i|0)){p=i+16|0;l=p+4|0;r=c[l>>2]|0;if(!r){s=c[p>>2]|0;if(!s){t=0;break}else{u=s;v=p}}else{u=r;v=l}while(1){l=u+20|0;r=c[l>>2]|0;if(r|0){u=r;v=l;continue}l=u+16|0;r=c[l>>2]|0;if(!r)break;else{u=r;v=l}}if(v>>>0<d>>>0)wa();else{c[v>>2]=0;t=u;break}}else{l=c[i+8>>2]|0;if(l>>>0<d>>>0)wa();r=l+12|0;if((c[r>>2]|0)!=(i|0))wa();p=k+8|0;if((c[p>>2]|0)==(i|0)){c[r>>2]=k;c[p>>2]=l;t=k;break}else wa()}while(0);if(h){k=c[i+28>>2]|0;l=39676+(k<<2)|0;do if((i|0)==(c[l>>2]|0)){c[l>>2]=t;if(!t){c[9844]=c[9844]&~(1<<k);m=i;n=j;o=i;break a}}else if(h>>>0>=(c[9847]|0)>>>0){c[h+16+(((c[h+16>>2]|0)!=(i|0)&1)<<2)>>2]=t;if(!t){m=i;n=j;o=i;break a}else break}else wa();while(0);k=c[9847]|0;if(t>>>0<k>>>0)wa();c[t+24>>2]=h;l=i+16|0;p=c[l>>2]|0;do if(p|0)if(p>>>0<k>>>0)wa();else{c[t+16>>2]=p;c[p+24>>2]=t;break}while(0);p=c[l+4>>2]|0;if(p)if(p>>>0<(c[9847]|0)>>>0)wa();else{c[t+20>>2]=p;c[p+24>>2]=t;m=i;n=j;o=i;break}else{m=i;n=j;o=i}}else{m=i;n=j;o=i}}else{m=b;n=f;o=b}while(0);if(o>>>0>=g>>>0)wa();b=g+4|0;f=c[b>>2]|0;if(!(f&1))wa();if(!(f&2)){t=c[9848]|0;if((g|0)==(c[9849]|0)){d=(c[9846]|0)+n|0;c[9846]=d;c[9849]=m;c[m+4>>2]=d|1;if((m|0)!=(t|0))return;c[9848]=0;c[9845]=0;return}if((g|0)==(t|0)){t=(c[9845]|0)+n|0;c[9845]=t;c[9848]=o;c[m+4>>2]=t|1;c[o+t>>2]=t;return}t=(f&-8)+n|0;d=f>>>3;b:do if(f>>>0>=256){u=c[g+24>>2]|0;v=c[g+12>>2]|0;do if((v|0)==(g|0)){q=g+16|0;a=q+4|0;e=c[a>>2]|0;if(!e){p=c[q>>2]|0;if(!p){w=0;break}else{x=p;y=q}}else{x=e;y=a}while(1){a=x+20|0;e=c[a>>2]|0;if(e|0){x=e;y=a;continue}a=x+16|0;e=c[a>>2]|0;if(!e)break;else{x=e;y=a}}if(y>>>0<(c[9847]|0)>>>0)wa();else{c[y>>2]=0;w=x;break}}else{a=c[g+8>>2]|0;if(a>>>0<(c[9847]|0)>>>0)wa();e=a+12|0;if((c[e>>2]|0)!=(g|0))wa();q=v+8|0;if((c[q>>2]|0)==(g|0)){c[e>>2]=v;c[q>>2]=a;w=v;break}else wa()}while(0);if(u|0){v=c[g+28>>2]|0;i=39676+(v<<2)|0;do if((g|0)==(c[i>>2]|0)){c[i>>2]=w;if(!w){c[9844]=c[9844]&~(1<<v);break b}}else if(u>>>0>=(c[9847]|0)>>>0){c[u+16+(((c[u+16>>2]|0)!=(g|0)&1)<<2)>>2]=w;if(!w)break b;else break}else wa();while(0);v=c[9847]|0;if(w>>>0<v>>>0)wa();c[w+24>>2]=u;i=g+16|0;j=c[i>>2]|0;do if(j|0)if(j>>>0<v>>>0)wa();else{c[w+16>>2]=j;c[j+24>>2]=w;break}while(0);j=c[i+4>>2]|0;if(j|0)if(j>>>0<(c[9847]|0)>>>0)wa();else{c[w+20>>2]=j;c[j+24>>2]=w;break}}}else{j=c[g+8>>2]|0;v=c[g+12>>2]|0;u=39412+(d<<1<<2)|0;if((j|0)!=(u|0)){if(j>>>0<(c[9847]|0)>>>0)wa();if((c[j+12>>2]|0)!=(g|0))wa()}if((v|0)==(j|0)){c[9843]=c[9843]&~(1<<d);break}if((v|0)!=(u|0)){if(v>>>0<(c[9847]|0)>>>0)wa();u=v+8|0;if((c[u>>2]|0)==(g|0))z=u;else wa()}else z=v+8|0;c[j+12>>2]=v;c[z>>2]=j}while(0);c[m+4>>2]=t|1;c[o+t>>2]=t;if((m|0)==(c[9848]|0)){c[9845]=t;return}else A=t}else{c[b>>2]=f&-2;c[m+4>>2]=n|1;c[o+n>>2]=n;A=n}n=A>>>3;if(A>>>0<256){o=39412+(n<<1<<2)|0;f=c[9843]|0;b=1<<n;if(f&b){n=o+8|0;t=c[n>>2]|0;if(t>>>0<(c[9847]|0)>>>0)wa();else{B=t;C=n}}else{c[9843]=f|b;B=o;C=o+8|0}c[C>>2]=m;c[B+12>>2]=m;c[m+8>>2]=B;c[m+12>>2]=o;return}o=A>>>8;if(o)if(A>>>0>16777215)D=31;else{B=(o+1048320|0)>>>16&8;C=o<<B;o=(C+520192|0)>>>16&4;b=C<<o;C=(b+245760|0)>>>16&2;f=14-(o|B|C)+(b<<C>>>15)|0;D=A>>>(f+7|0)&1|f<<1}else D=0;f=39676+(D<<2)|0;c[m+28>>2]=D;c[m+20>>2]=0;c[m+16>>2]=0;C=c[9844]|0;b=1<<D;do if(C&b){B=A<<((D|0)==31?0:25-(D>>>1)|0);o=c[f>>2]|0;while(1){if((c[o+4>>2]&-8|0)==(A|0)){E=124;break}F=o+16+(B>>>31<<2)|0;n=c[F>>2]|0;if(!n){E=121;break}else{B=B<<1;o=n}}if((E|0)==121)if(F>>>0<(c[9847]|0)>>>0)wa();else{c[F>>2]=m;c[m+24>>2]=o;c[m+12>>2]=m;c[m+8>>2]=m;break}else if((E|0)==124){B=o+8|0;i=c[B>>2]|0;n=c[9847]|0;if(i>>>0>=n>>>0&o>>>0>=n>>>0){c[i+12>>2]=m;c[B>>2]=m;c[m+8>>2]=i;c[m+12>>2]=o;c[m+24>>2]=0;break}else wa()}}else{c[9844]=C|b;c[f>>2]=m;c[m+24>>2]=f;c[m+12>>2]=m;c[m+8>>2]=m}while(0);m=(c[9851]|0)+-1|0;c[9851]=m;if(!m)G=39828;else return;while(1){m=c[G>>2]|0;if(!m)break;else G=m+8|0}c[9851]=-1;return}function Rp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!a){d=Pp(b)|0;return d|0}if(b>>>0>4294967231){c[(dn()|0)>>2]=12;d=0;return d|0}e=Sp(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(e|0){d=e+8|0;return d|0}e=Pp(b)|0;if(!e){d=0;return d|0}f=c[a+-4>>2]|0;g=(f&-8)-((f&3|0)==0?8:4)|0;MD(e|0,a|0,(g>>>0<b>>>0?g:b)|0)|0;Qp(a);d=e;return d|0}function Sp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;d=a+4|0;e=c[d>>2]|0;f=e&-8;g=a+f|0;h=c[9847]|0;i=e&3;if(!((i|0)!=1&a>>>0>=h>>>0&a>>>0<g>>>0))wa();j=c[g+4>>2]|0;if(!(j&1))wa();if(!i){if(b>>>0<256){k=0;return k|0}if(f>>>0>=(b+4|0)>>>0?(f-b|0)>>>0<=c[9963]<<1>>>0:0){k=a;return k|0}k=0;return k|0}if(f>>>0>=b>>>0){i=f-b|0;if(i>>>0<=15){k=a;return k|0}l=a+b|0;c[d>>2]=e&1|b|2;c[l+4>>2]=i|3;m=l+i+4|0;c[m>>2]=c[m>>2]|1;Tp(l,i);k=a;return k|0}if((g|0)==(c[9849]|0)){i=(c[9846]|0)+f|0;l=i-b|0;m=a+b|0;if(i>>>0<=b>>>0){k=0;return k|0}c[d>>2]=e&1|b|2;c[m+4>>2]=l|1;c[9849]=m;c[9846]=l;k=a;return k|0}if((g|0)==(c[9848]|0)){l=(c[9845]|0)+f|0;if(l>>>0<b>>>0){k=0;return k|0}m=l-b|0;i=e&1;if(m>>>0>15){n=a+b|0;o=n+m|0;c[d>>2]=i|b|2;c[n+4>>2]=m|1;c[o>>2]=m;p=o+4|0;c[p>>2]=c[p>>2]&-2;q=n;r=m}else{c[d>>2]=i|l|2;i=a+l+4|0;c[i>>2]=c[i>>2]|1;q=0;r=0}c[9845]=r;c[9848]=q;k=a;return k|0}if(j&2|0){k=0;return k|0}q=(j&-8)+f|0;if(q>>>0<b>>>0){k=0;return k|0}f=q-b|0;r=j>>>3;a:do if(j>>>0>=256){i=c[g+24>>2]|0;l=c[g+12>>2]|0;do if((l|0)==(g|0)){m=g+16|0;n=m+4|0;p=c[n>>2]|0;if(!p){o=c[m>>2]|0;if(!o){s=0;break}else{t=o;u=m}}else{t=p;u=n}while(1){n=t+20|0;p=c[n>>2]|0;if(p|0){t=p;u=n;continue}n=t+16|0;p=c[n>>2]|0;if(!p)break;else{t=p;u=n}}if(u>>>0<h>>>0)wa();else{c[u>>2]=0;s=t;break}}else{n=c[g+8>>2]|0;if(n>>>0<h>>>0)wa();p=n+12|0;if((c[p>>2]|0)!=(g|0))wa();m=l+8|0;if((c[m>>2]|0)==(g|0)){c[p>>2]=l;c[m>>2]=n;s=l;break}else wa()}while(0);if(i|0){l=c[g+28>>2]|0;n=39676+(l<<2)|0;do if((g|0)==(c[n>>2]|0)){c[n>>2]=s;if(!s){c[9844]=c[9844]&~(1<<l);break a}}else if(i>>>0>=(c[9847]|0)>>>0){c[i+16+(((c[i+16>>2]|0)!=(g|0)&1)<<2)>>2]=s;if(!s)break a;else break}else wa();while(0);l=c[9847]|0;if(s>>>0<l>>>0)wa();c[s+24>>2]=i;n=g+16|0;m=c[n>>2]|0;do if(m|0)if(m>>>0<l>>>0)wa();else{c[s+16>>2]=m;c[m+24>>2]=s;break}while(0);m=c[n+4>>2]|0;if(m|0)if(m>>>0<(c[9847]|0)>>>0)wa();else{c[s+20>>2]=m;c[m+24>>2]=s;break}}}else{m=c[g+8>>2]|0;l=c[g+12>>2]|0;i=39412+(r<<1<<2)|0;if((m|0)!=(i|0)){if(m>>>0<h>>>0)wa();if((c[m+12>>2]|0)!=(g|0))wa()}if((l|0)==(m|0)){c[9843]=c[9843]&~(1<<r);break}if((l|0)!=(i|0)){if(l>>>0<h>>>0)wa();i=l+8|0;if((c[i>>2]|0)==(g|0))v=i;else wa()}else v=l+8|0;c[m+12>>2]=l;c[v>>2]=m}while(0);v=e&1;if(f>>>0<16){c[d>>2]=q|v|2;e=a+q+4|0;c[e>>2]=c[e>>2]|1;k=a;return k|0}else{e=a+b|0;c[d>>2]=v|b|2;c[e+4>>2]=f|3;b=e+f+4|0;c[b>>2]=c[b>>2]|1;Tp(e,f);k=a;return k|0}return 0} function Tp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;d=a+b|0;e=c[a+4>>2]|0;a:do if(!(e&1)){f=c[a>>2]|0;if(!(e&3))return;g=a+(0-f)|0;h=f+b|0;i=c[9847]|0;if(g>>>0<i>>>0)wa();if((g|0)==(c[9848]|0)){j=d+4|0;k=c[j>>2]|0;if((k&3|0)!=3){l=g;m=h;break}c[9845]=h;c[j>>2]=k&-2;c[g+4>>2]=h|1;c[g+h>>2]=h;return}k=f>>>3;if(f>>>0<256){f=c[g+8>>2]|0;j=c[g+12>>2]|0;n=39412+(k<<1<<2)|0;if((f|0)!=(n|0)){if(f>>>0<i>>>0)wa();if((c[f+12>>2]|0)!=(g|0))wa()}if((j|0)==(f|0)){c[9843]=c[9843]&~(1<<k);l=g;m=h;break}if((j|0)!=(n|0)){if(j>>>0<i>>>0)wa();n=j+8|0;if((c[n>>2]|0)==(g|0))o=n;else wa()}else o=j+8|0;c[f+12>>2]=j;c[o>>2]=f;l=g;m=h;break}f=c[g+24>>2]|0;j=c[g+12>>2]|0;do if((j|0)==(g|0)){n=g+16|0;k=n+4|0;p=c[k>>2]|0;if(!p){q=c[n>>2]|0;if(!q){r=0;break}else{s=q;t=n}}else{s=p;t=k}while(1){k=s+20|0;p=c[k>>2]|0;if(p|0){s=p;t=k;continue}k=s+16|0;p=c[k>>2]|0;if(!p)break;else{s=p;t=k}}if(t>>>0<i>>>0)wa();else{c[t>>2]=0;r=s;break}}else{k=c[g+8>>2]|0;if(k>>>0<i>>>0)wa();p=k+12|0;if((c[p>>2]|0)!=(g|0))wa();n=j+8|0;if((c[n>>2]|0)==(g|0)){c[p>>2]=j;c[n>>2]=k;r=j;break}else wa()}while(0);if(f){j=c[g+28>>2]|0;i=39676+(j<<2)|0;do if((g|0)==(c[i>>2]|0)){c[i>>2]=r;if(!r){c[9844]=c[9844]&~(1<<j);l=g;m=h;break a}}else if(f>>>0>=(c[9847]|0)>>>0){c[f+16+(((c[f+16>>2]|0)!=(g|0)&1)<<2)>>2]=r;if(!r){l=g;m=h;break a}else break}else wa();while(0);j=c[9847]|0;if(r>>>0<j>>>0)wa();c[r+24>>2]=f;i=g+16|0;k=c[i>>2]|0;do if(k|0)if(k>>>0<j>>>0)wa();else{c[r+16>>2]=k;c[k+24>>2]=r;break}while(0);k=c[i+4>>2]|0;if(k)if(k>>>0<(c[9847]|0)>>>0)wa();else{c[r+20>>2]=k;c[k+24>>2]=r;l=g;m=h;break}else{l=g;m=h}}else{l=g;m=h}}else{l=a;m=b}while(0);b=c[9847]|0;if(d>>>0<b>>>0)wa();a=d+4|0;r=c[a>>2]|0;if(!(r&2)){s=c[9848]|0;if((d|0)==(c[9849]|0)){t=(c[9846]|0)+m|0;c[9846]=t;c[9849]=l;c[l+4>>2]=t|1;if((l|0)!=(s|0))return;c[9848]=0;c[9845]=0;return}if((d|0)==(s|0)){s=(c[9845]|0)+m|0;c[9845]=s;c[9848]=l;c[l+4>>2]=s|1;c[l+s>>2]=s;return}s=(r&-8)+m|0;t=r>>>3;b:do if(r>>>0>=256){o=c[d+24>>2]|0;e=c[d+12>>2]|0;do if((e|0)==(d|0)){k=d+16|0;j=k+4|0;f=c[j>>2]|0;if(!f){n=c[k>>2]|0;if(!n){u=0;break}else{v=n;w=k}}else{v=f;w=j}while(1){j=v+20|0;f=c[j>>2]|0;if(f|0){v=f;w=j;continue}j=v+16|0;f=c[j>>2]|0;if(!f)break;else{v=f;w=j}}if(w>>>0<b>>>0)wa();else{c[w>>2]=0;u=v;break}}else{j=c[d+8>>2]|0;if(j>>>0<b>>>0)wa();f=j+12|0;if((c[f>>2]|0)!=(d|0))wa();k=e+8|0;if((c[k>>2]|0)==(d|0)){c[f>>2]=e;c[k>>2]=j;u=e;break}else wa()}while(0);if(o|0){e=c[d+28>>2]|0;h=39676+(e<<2)|0;do if((d|0)==(c[h>>2]|0)){c[h>>2]=u;if(!u){c[9844]=c[9844]&~(1<<e);break b}}else if(o>>>0>=(c[9847]|0)>>>0){c[o+16+(((c[o+16>>2]|0)!=(d|0)&1)<<2)>>2]=u;if(!u)break b;else break}else wa();while(0);e=c[9847]|0;if(u>>>0<e>>>0)wa();c[u+24>>2]=o;h=d+16|0;g=c[h>>2]|0;do if(g|0)if(g>>>0<e>>>0)wa();else{c[u+16>>2]=g;c[g+24>>2]=u;break}while(0);g=c[h+4>>2]|0;if(g|0)if(g>>>0<(c[9847]|0)>>>0)wa();else{c[u+20>>2]=g;c[g+24>>2]=u;break}}}else{g=c[d+8>>2]|0;e=c[d+12>>2]|0;o=39412+(t<<1<<2)|0;if((g|0)!=(o|0)){if(g>>>0<b>>>0)wa();if((c[g+12>>2]|0)!=(d|0))wa()}if((e|0)==(g|0)){c[9843]=c[9843]&~(1<<t);break}if((e|0)!=(o|0)){if(e>>>0<b>>>0)wa();o=e+8|0;if((c[o>>2]|0)==(d|0))x=o;else wa()}else x=e+8|0;c[g+12>>2]=e;c[x>>2]=g}while(0);c[l+4>>2]=s|1;c[l+s>>2]=s;if((l|0)==(c[9848]|0)){c[9845]=s;return}else y=s}else{c[a>>2]=r&-2;c[l+4>>2]=m|1;c[l+m>>2]=m;y=m}m=y>>>3;if(y>>>0<256){r=39412+(m<<1<<2)|0;a=c[9843]|0;s=1<<m;if(a&s){m=r+8|0;x=c[m>>2]|0;if(x>>>0<(c[9847]|0)>>>0)wa();else{z=x;A=m}}else{c[9843]=a|s;z=r;A=r+8|0}c[A>>2]=l;c[z+12>>2]=l;c[l+8>>2]=z;c[l+12>>2]=r;return}r=y>>>8;if(r)if(y>>>0>16777215)B=31;else{z=(r+1048320|0)>>>16&8;A=r<<z;r=(A+520192|0)>>>16&4;s=A<<r;A=(s+245760|0)>>>16&2;a=14-(r|z|A)+(s<<A>>>15)|0;B=y>>>(a+7|0)&1|a<<1}else B=0;a=39676+(B<<2)|0;c[l+28>>2]=B;c[l+20>>2]=0;c[l+16>>2]=0;A=c[9844]|0;s=1<<B;if(!(A&s)){c[9844]=A|s;c[a>>2]=l;c[l+24>>2]=a;c[l+12>>2]=l;c[l+8>>2]=l;return}s=y<<((B|0)==31?0:25-(B>>>1)|0);B=c[a>>2]|0;while(1){if((c[B+4>>2]&-8|0)==(y|0)){C=121;break}D=B+16+(s>>>31<<2)|0;a=c[D>>2]|0;if(!a){C=118;break}else{s=s<<1;B=a}}if((C|0)==118){if(D>>>0<(c[9847]|0)>>>0)wa();c[D>>2]=l;c[l+24>>2]=B;c[l+12>>2]=l;c[l+8>>2]=l;return}else if((C|0)==121){C=B+8|0;D=c[C>>2]|0;s=c[9847]|0;if(!(D>>>0>=s>>>0&B>>>0>=s>>>0))wa();c[D+12>>2]=l;c[C>>2]=l;c[l+8>>2]=D;c[l+12>>2]=B;c[l+24>>2]=0;return}}function Up(a){a=a|0;Wp(a);return}function Vp(a){a=a|0;Up(a);tB(a);return}function Wp(a){a=a|0;c[a>>2]=13524;Xp(a,0);Ys(a+28|0);Qp(c[a+32>>2]|0);Qp(c[a+36>>2]|0);Qp(c[a+48>>2]|0);Qp(c[a+60>>2]|0);return}function Xp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+32|0;e=a+36|0;f=c[a+40>>2]|0;while(1){if(!f)break;g=f+-1|0;ub[c[(c[d>>2]|0)+(g<<2)>>2]&15](b,a,c[(c[e>>2]|0)+(g<<2)>>2]|0);f=g}return}function Yp(a){a=a|0;Wp(a);tB(a);return}function Zp(a){a=a|0;Wp(a);return}function _p(a){a=a|0;c[a>>2]=13540;Ys(a+4|0);return}function $p(a){a=a|0;_p(a);tB(a);return}function aq(a,b){a=a|0;b=b|0;return}function bq(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function cq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;g=a;c[g>>2]=0;c[g+4>>2]=0;g=a+8|0;c[g>>2]=-1;c[g+4>>2]=-1;return}function dq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=a;c[e>>2]=0;c[e+4>>2]=0;e=a+8|0;c[e>>2]=-1;c[e+4>>2]=-1;return}function eq(a){a=a|0;return 0}function fq(a){a=a|0;return 0}function gq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;mq()|0;f=b+12|0;g=b+16|0;h=0;i=d;while(1){if((h|0)>=(e|0))break;d=c[f>>2]|0;if(d>>>0<(c[g>>2]|0)>>>0){c[f>>2]=d+1;j=a[d>>0]|0}else{d=rb[c[(c[b>>2]|0)+40>>2]&127](b)|0;if((d|0)==-1)break;j=pq(d)|0}a[i>>0]=j;h=h+1|0;i=i+1|0}return h|0}function hq(a){a=a|0;return mq()|0}function iq(b){b=b|0;var d=0,e=0;d=rb[c[(c[b>>2]|0)+36>>2]&127](b)|0;if((d|0)==(mq()|0))e=mq()|0;else{d=b+12|0;b=c[d>>2]|0;c[d>>2]=b+1;e=nq(a[b>>0]|0)|0}return e|0}function jq(a,b){a=a|0;b=b|0;return mq()|0}function kq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=mq()|0;g=b+24|0;h=b+28|0;i=d;d=0;while(1){if((d|0)>=(e|0))break;j=c[g>>2]|0;k=c[h>>2]|0;if(j>>>0<k>>>0){l=k-j|0;k=e-d|0;m=(k|0)<(l|0)?k:l;oq(j,i,m)|0;c[g>>2]=(c[g>>2]|0)+m;i=i+m|0;d=m+d|0;continue}m=c[(c[b>>2]|0)+52>>2]|0;j=nq(a[i>>0]|0)|0;if((zb[m&63](b,j)|0)==(f|0))break;i=i+1|0;d=d+1|0}return d|0}function lq(a,b){a=a|0;b=b|0;return mq()|0}function mq(){return -1}function nq(a){a=a|0;return a&255|0}function oq(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)MD(a|0,b|0,c|0)|0;return a|0}function pq(a){a=a|0;return a&255|0}function qq(a){a=a|0;c[a>>2]=13604;Ys(a+4|0);return}function rq(a){a=a|0;qq(a);tB(a);return}function sq(a,b){a=a|0;b=b|0;return}function tq(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function uq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;g=a;c[g>>2]=0;c[g+4>>2]=0;g=a+8|0;c[g>>2]=-1;c[g+4>>2]=-1;return}function vq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;e=a;c[e>>2]=0;c[e+4>>2]=0;e=a+8|0;c[e>>2]=-1;c[e+4>>2]=-1;return}function wq(a){a=a|0;return 0}function xq(a){a=a|0;return 0}function yq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;Eq()|0;e=a+12|0;f=a+16|0;g=0;h=b;while(1){if((g|0)>=(d|0))break;b=c[e>>2]|0;if(b>>>0<(c[f>>2]|0)>>>0){c[e>>2]=b+4;i=c[b>>2]|0}else{b=rb[c[(c[a>>2]|0)+40>>2]&127](a)|0;if((b|0)==-1)break;i=Hq(b)|0}c[h>>2]=i;g=g+1|0;h=h+4|0}return g|0}function zq(a){a=a|0;return Eq()|0}function Aq(a){a=a|0;var b=0,d=0;b=rb[c[(c[a>>2]|0)+36>>2]&127](a)|0;if((b|0)==(Eq()|0))d=Eq()|0;else{b=a+12|0;a=c[b>>2]|0;c[b>>2]=a+4;d=Fq(c[a>>2]|0)|0}return d|0}function Bq(a,b){a=a|0;b=b|0;return Eq()|0}function Cq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=Eq()|0;f=a+24|0;g=a+28|0;h=b;b=0;while(1){if((b|0)>=(d|0))break;i=c[f>>2]|0;j=c[g>>2]|0;if(i>>>0<j>>>0){k=j-i>>2;j=d-b|0;l=(j|0)<(k|0)?j:k;Gq(i,h,l)|0;c[f>>2]=(c[f>>2]|0)+(l<<2);h=h+(l<<2)|0;b=l+b|0;continue}l=c[(c[a>>2]|0)+52>>2]|0;i=Fq(c[h>>2]|0)|0;if((zb[l&63](a,i)|0)==(e|0))break;h=h+4|0;b=b+1|0}return b|0}function Dq(a,b){a=a|0;b=b|0;return Eq()|0}function Eq(){return -1}function Fq(a){a=a|0;return a|0}function Gq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)d=a;else{tp(a,b,c)|0;d=a}return d|0}function Hq(a){a=a|0;return a|0}function Iq(a){a=a|0;Mq(a,13700);Up(a+8|0);return}function Jq(a){a=a|0;Iq(a);tB(a);return}function Kq(a){a=a|0;Iq(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Lq(a){a=a|0;Jq(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Mq(a,b){a=a|0;b=b|0;return}function Nq(a){a=a|0;Rq(a,13748);Zp(a+8|0);return}function Oq(a){a=a|0;Nq(a);tB(a);return}function Pq(a){a=a|0;Nq(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Qq(a){a=a|0;Oq(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Rq(a,b){a=a|0;b=b|0;return}function Sq(a){a=a|0;Wq(a,13756);Up(a+4|0);return}function Tq(a){a=a|0;Sq(a);tB(a);return}function Uq(a){a=a|0;Sq(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Vq(a){a=a|0;Tq(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function Wq(a,b){a=a|0;b=b|0;return}function Xq(a){a=a|0;$q(a,13804);Zp(a+4|0);return}function Yq(a){a=a|0;Xq(a);tB(a);return}function Zq(a){a=a|0;Xq(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function _q(a){a=a|0;Yq(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function $q(a,b){a=a|0;b=b|0;return}function ar(a){a=a|0;gr(a,13872);Up(a+12|0);return}function br(a){a=a|0;ar(a);tB(a);return}function cr(a){a=a|0;ar(a+-8|0);return}function dr(a){a=a|0;br(a+-8|0);return}function er(a){a=a|0;ar(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function fr(a){a=a|0;br(a+(c[(c[a>>2]|0)+-12>>2]|0)|0);return}function gr(a,b){a=a|0;b=b|0;Wq(a+8|0,b+12|0);Mq(a,b+4|0);return}function hr(a){a=a|0;tB(a);return}function ir(a){a=a|0;return 34617}function jr(a,b,d){a=a|0;b=b|0;d=d|0;if((d|0)!=1&(d|0)<257)uC(a,b,d);else{c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,34581,kr(34581)|0)}return}function kr(a){a=a|0;return yn(a)|0}function lr(a){a=a|0;sC(a);return}function mr(a){a=a|0;lr(a);tB(a);return}function nr(a,b){a=a|0;b=b|0;c[a+16>>2]=(c[a+24>>2]|0)==0|b;return}function or(a,b){a=a|0;b=b|0;var d=0;c[a+24>>2]=b;c[a+16>>2]=(b|0)==0&1;c[a+20>>2]=0;c[a+4>>2]=4098;c[a+12>>2]=0;c[a+8>>2]=6;b=a+28|0;d=a+32|0;a=d+40|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));cB(b);return}function pr(a,b){a=a|0;b=b|0;return (a|0)==(b|0)|0}function qr(a,b){a=a|0;b=b|0;aB(a,b+28|0);return}function rr(a,b){a=a|0;b=b|0;return (a|0)==(b|0)|0}function sr(a){a=a|0;var b=0;c[a>>2]=13540;cB(a+4|0);b=a+8|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;return}function tr(a){a=a|0;var b=0;c[a>>2]=13604;cB(a+4|0);b=a+8|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;return}function ur(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;g=l;l=l+16|0;h=g;a[d>>0]=0;i=e+(c[(c[e>>2]|0)+-12>>2]|0)|0;j=c[i+16>>2]|0;if(!j){k=c[i+72>>2]|0;if(k|0)vr(k)|0;do if(!f?(k=e+(c[(c[e>>2]|0)+-12>>2]|0)|0,c[k+4>>2]&4096|0):0){qr(h,k);k=Xs(h,40916)|0;Ys(h);m=c[e+(c[(c[e>>2]|0)+-12>>2]|0)+24>>2]|0;n=k+8|0;k=m;o=(m|0)==0;p=k+12|0;q=k+16|0;r=m;while(1){if(o){s=0;t=0;break}u=c[p>>2]|0;if((u|0)==(c[q>>2]|0))v=rb[c[(c[r>>2]|0)+36>>2]&127](k)|0;else v=nq(a[u>>0]|0)|0;u=pr(v,mq()|0)|0;w=u?0:m;if(u){s=0;t=0;break}u=w;x=u+12|0;y=c[x>>2]|0;z=u+16|0;if((y|0)==(c[z>>2]|0))A=rb[c[(c[w>>2]|0)+36>>2]&127](u)|0;else A=nq(a[y>>0]|0)|0;if((A&255)<<24>>24<=-1){s=u;t=m;break}if(!(b[(c[n>>2]|0)+(A<<24>>24<<1)>>1]&8192)){s=u;t=m;break}y=c[x>>2]|0;if((y|0)==(c[z>>2]|0)){rb[c[(c[w>>2]|0)+40>>2]&127](u)|0;continue}else{c[x>>2]=y+1;nq(a[y>>0]|0)|0;continue}}if(t|0){m=c[s+12>>2]|0;if((m|0)==(c[s+16>>2]|0))B=rb[c[(c[t>>2]|0)+36>>2]&127](s)|0;else B=nq(a[m>>0]|0)|0;if(!(pr(B,mq()|0)|0))break}m=e+(c[(c[e>>2]|0)+-12>>2]|0)|0;nr(m,c[m+16>>2]|6)}while(0);a[d>>0]=(c[e+(c[(c[e>>2]|0)+-12>>2]|0)+16>>2]|0)==0&1}else nr(i,j|4);l=g;return}function vr(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;if(c[b+(c[(c[b>>2]|0)+-12>>2]|0)+24>>2]|0){wr(e,b);if(a[e>>0]|0?(f=c[b+(c[(c[b>>2]|0)+-12>>2]|0)+24>>2]|0,(rb[c[(c[f>>2]|0)+24>>2]&127](f)|0)==-1):0){f=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;nr(f,c[f+16>>2]|1)}xr(e)}l=d;return b|0}function wr(b,d){b=b|0;d=d|0;var e=0;a[b>>0]=0;c[b+4>>2]=d;e=d+(c[(c[d>>2]|0)+-12>>2]|0)|0;if(!(c[e+16>>2]|0)){d=c[e+72>>2]|0;if(d|0)vr(d)|0;a[b>>0]=1}return}function xr(a){a=a|0;var b=0,d=0;b=a+4|0;a=c[b>>2]|0;d=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;if((((c[d+24>>2]|0?(c[d+16>>2]|0)==0:0)?c[d+4>>2]&8192|0:0)?!(Aa()|0):0)?(d=c[b>>2]|0,a=c[d+(c[(c[d>>2]|0)+-12>>2]|0)+24>>2]|0,(rb[c[(c[a>>2]|0)+24>>2]&127](a)|0)==-1):0){a=c[b>>2]|0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;nr(b,c[b+16>>2]|1)}return}function yr(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+32|0;f=e+20|0;g=e+16|0;h=e+12|0;i=e+8|0;j=e+24|0;k=e+4|0;m=e;ur(j,b,0);if(a[j>>0]|0){c[k>>2]=0;qr(m,b+(c[(c[b>>2]|0)+-12>>2]|0)|0);j=Xs(m,40940)|0;n=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;o=c[(c[j>>2]|0)+40>>2]|0;c[h>>2]=c[n+24>>2];c[i>>2]=0;c[g>>2]=c[h>>2];c[f>>2]=c[i>>2];qb[o&63](j,g,f,n,k,d)|0;Ys(m);m=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;nr(m,c[m+16>>2]|c[k>>2])}l=e;return b|0}function zr(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;d=l;l=l+16|0;e=d;f=b+4|0;c[f>>2]=0;g=mq()|0;ur(e,b,1);do if(a[e>>0]|0){h=c[b+(c[(c[b>>2]|0)+-12>>2]|0)+24>>2]|0;i=h+12|0;j=c[i>>2]|0;if((j|0)==(c[h+16>>2]|0))k=rb[c[(c[h>>2]|0)+40>>2]&127](h)|0;else{c[i>>2]=j+1;k=nq(a[j>>0]|0)|0}if(pr(k,mq()|0)|0){j=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;nr(j,c[j+16>>2]|6);m=k;break}else{c[f>>2]=1;m=k;break}}else m=g;while(0);l=d;return m|0}function Ar(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;if(c[b+(c[(c[b>>2]|0)+-12>>2]|0)+24>>2]|0){Br(e,b);if(a[e>>0]|0?(f=c[b+(c[(c[b>>2]|0)+-12>>2]|0)+24>>2]|0,(rb[c[(c[f>>2]|0)+24>>2]&127](f)|0)==-1):0){f=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;nr(f,c[f+16>>2]|1)}Cr(e)}l=d;return b|0}function Br(b,d){b=b|0;d=d|0;var e=0;a[b>>0]=0;c[b+4>>2]=d;e=d+(c[(c[d>>2]|0)+-12>>2]|0)|0;if(!(c[e+16>>2]|0)){d=c[e+72>>2]|0;if(d|0)Ar(d)|0;a[b>>0]=1}return}function Cr(a){a=a|0;var b=0,d=0;b=a+4|0;a=c[b>>2]|0;d=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;if((((c[d+24>>2]|0?(c[d+16>>2]|0)==0:0)?c[d+4>>2]&8192|0:0)?!(Aa()|0):0)?(d=c[b>>2]|0,a=c[d+(c[(c[d>>2]|0)+-12>>2]|0)+24>>2]|0,(rb[c[(c[a>>2]|0)+24>>2]&127](a)|0)==-1):0){a=c[b>>2]|0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;nr(b,c[b+16>>2]|1)}return}function Dr(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;e=l;l=l+16|0;f=e+12|0;g=e+8|0;h=e;wr(h,b);if(a[h>>0]|0){qr(f,b+(c[(c[b>>2]|0)+-12>>2]|0)|0);i=Xs(f,40972)|0;Ys(f);j=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;k=c[j+24>>2]|0;m=mq()|0;n=j+76|0;if(pr(m,c[n>>2]|0)|0){qr(f,j);m=Xs(f,40916)|0;o=zb[c[(c[m>>2]|0)+28>>2]&63](m,32)|0;Ys(f);m=o<<24>>24;c[n>>2]=m;p=m}else p=c[n>>2]|0;n=c[(c[i>>2]|0)+16>>2]|0;c[g>>2]=k;c[f>>2]=c[g>>2];if(!(Bb[n&31](i,f,j,p&255,d)|0)){d=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;nr(d,c[d+16>>2]|5)}}xr(h);l=e;return b|0}function Er(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;e=l;l=l+16|0;f=e+12|0;g=e+8|0;h=e;wr(h,b);if(a[h>>0]|0){qr(f,b+(c[(c[b>>2]|0)+-12>>2]|0)|0);i=Xs(f,40972)|0;Ys(f);j=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;k=c[j+24>>2]|0;m=mq()|0;n=j+76|0;if(pr(m,c[n>>2]|0)|0){qr(f,j);m=Xs(f,40916)|0;o=zb[c[(c[m>>2]|0)+28>>2]&63](m,32)|0;Ys(f);m=o<<24>>24;c[n>>2]=m;p=m}else p=c[n>>2]|0;n=c[(c[i>>2]|0)+24>>2]|0;c[g>>2]=k;c[f>>2]=c[g>>2];if(!(Bb[n&31](i,f,j,p&255,d)|0)){d=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;nr(d,c[d+16>>2]|5)}}xr(h);l=e;return b|0}function Fr(b,d){b=b|0;d=+d;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;e=l;l=l+16|0;f=e+12|0;g=e+8|0;h=e;wr(h,b);if(a[h>>0]|0){qr(f,b+(c[(c[b>>2]|0)+-12>>2]|0)|0);i=Xs(f,40972)|0;Ys(f);j=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;k=c[j+24>>2]|0;m=mq()|0;n=j+76|0;if(pr(m,c[n>>2]|0)|0){qr(f,j);m=Xs(f,40916)|0;o=zb[c[(c[m>>2]|0)+28>>2]&63](m,32)|0;Ys(f);m=o<<24>>24;c[n>>2]=m;p=m}else p=c[n>>2]|0;n=c[(c[i>>2]|0)+32>>2]|0;c[g>>2]=k;c[f>>2]=c[g>>2];if(!(Ab[n&7](i,f,j,p&255,d)|0)){p=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;nr(p,c[p+16>>2]|5)}}xr(h);l=e;return b|0}function Gr(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;e=l;l=l+16|0;f=e+12|0;g=e+8|0;h=e;wr(h,b);if(a[h>>0]|0){qr(f,b+(c[(c[b>>2]|0)+-12>>2]|0)|0);i=Xs(f,40972)|0;Ys(f);j=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;k=c[j+24>>2]|0;m=mq()|0;n=j+76|0;if(pr(m,c[n>>2]|0)|0){qr(f,j);m=Xs(f,40916)|0;o=zb[c[(c[m>>2]|0)+28>>2]&63](m,32)|0;Ys(f);m=o<<24>>24;c[n>>2]=m;p=m}else p=c[n>>2]|0;n=c[(c[i>>2]|0)+40>>2]|0;c[g>>2]=k;c[f>>2]=c[g>>2];if(!(Bb[n&31](i,f,j,p&255,d)|0)){d=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;nr(d,c[d+16>>2]|5)}}xr(h);l=e;return b|0}function Hr(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+16|0;f=e;wr(f,b);do if(a[f>>0]|0){g=c[b+(c[(c[b>>2]|0)+-12>>2]|0)+24>>2]|0;h=g;if(g|0){i=h+24|0;j=c[i>>2]|0;if((j|0)==(c[h+28>>2]|0)){k=c[(c[g>>2]|0)+52>>2]|0;g=nq(d)|0;m=zb[k&63](h,g)|0}else{c[i>>2]=j+1;a[j>>0]=d;m=nq(d)|0}if(!(pr(m,mq()|0)|0))break}j=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;nr(j,c[j+16>>2]|1)}while(0);xr(f);l=e;return b|0}function Ir(){if((a[38208]|0)==0?xD(38208)|0:0)Wa(172,13956,o|0)|0;return 13956}function Jr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=l;l=l+16|0;f=e+8|0;g=e;h=d;d=c[h+4>>2]|0;i=g;c[i>>2]=c[h>>2];c[i+4>>2]=d;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];xC(a,f,b);c[a>>2]=13944;l=e;return}function Kr(a){a=a|0;var b=0;b=a+16|0;c[b>>2]=c[b>>2]|1;return}function Lr(){Nr();return}function Mr(){return}function Nr(){Or(0);Wa(268,44917,o|0)|0;return}function Or(a){a=a|0;var b=0;a=c[2531]|0;Qr(40548,a,40604);c[9967]=13672;c[9969]=13692;c[9968]=0;or(39876,40548);c[9987]=0;c[9988]=mq()|0;Rr(40612,a,40668);c[9989]=13720;c[9991]=13740;c[9990]=0;or(39964,40612);c[10009]=0;c[10010]=Eq()|0;a=c[2498]|0;Sr(40676,a,40724);c[10011]=76;c[10012]=96;or(40048,40676);c[10030]=0;c[10031]=mq()|0;Tr(40732,a,40780);c[10032]=13776;c[10033]=13796;or(40132,40732);c[10051]=0;c[10052]=Eq()|0;a=c[2405]|0;Sr(40788,a,40836);c[10053]=76;c[10054]=96;or(40216,40788);c[10072]=0;c[10073]=mq()|0;b=c[40212+(c[(c[10053]|0)+-12>>2]|0)+24>>2]|0;c[10095]=76;c[10096]=96;or(40384,b);c[10114]=0;c[10115]=mq()|0;Tr(40844,a,40892);c[10074]=13776;c[10075]=13796;or(40300,40844);c[10093]=0;c[10094]=Eq()|0;a=c[40296+(c[(c[10074]|0)+-12>>2]|0)+24>>2]|0;c[10116]=13776;c[10117]=13796;or(40468,a);c[10135]=0;c[10136]=Eq()|0;c[39868+(c[(c[9967]|0)+-12>>2]|0)+72>>2]=40044;c[39956+(c[(c[9989]|0)+-12>>2]|0)+72>>2]=40128;a=40212+(c[(c[10053]|0)+-12>>2]|0)+4|0;c[a>>2]=c[a>>2]|8192;a=40296+(c[(c[10074]|0)+-12>>2]|0)+4|0;c[a>>2]=c[a>>2]|8192;c[40212+(c[(c[10053]|0)+-12>>2]|0)+72>>2]=40044;c[40296+(c[(c[10074]|0)+-12>>2]|0)+72>>2]=40128;return}function Pr(a){a=a|0;vr(40044)|0;Ar(40128)|0;vr(40380)|0;Ar(40464)|0;return}function Qr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;sr(b);c[b>>2]=14160;c[b+32>>2]=d;c[b+40>>2]=e;c[b+48>>2]=mq()|0;a[b+52>>0]=0;e=c[(c[b>>2]|0)+8>>2]|0;aB(g,b+4|0);pb[e&127](b,g);Ys(g);l=f;return}function Rr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;tr(b);c[b>>2]=14096;c[b+32>>2]=d;c[b+40>>2]=e;c[b+48>>2]=Eq()|0;a[b+52>>0]=0;e=c[(c[b>>2]|0)+8>>2]|0;aB(g,b+4|0);pb[e&127](b,g);Ys(g);l=f;return}function Sr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;sr(b);c[b>>2]=14032;c[b+32>>2]=d;aB(g,b+4|0);d=Xs(g,42708)|0;Ys(g);c[b+36>>2]=d;c[b+40>>2]=e;a[b+44>>0]=(rb[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;l=f;return}function Tr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;tr(b);c[b>>2]=13968;c[b+32>>2]=d;aB(g,b+4|0);d=Xs(g,42716)|0;Ys(g);c[b+36>>2]=d;c[b+40>>2]=e;a[b+44>>0]=(rb[c[(c[d>>2]|0)+28>>2]&127](d)|0)&1;l=f;return}function Ur(a){a=a|0;qq(a);return}function Vr(a){a=a|0;Ur(a);tB(a);return}function Wr(b,d){b=b|0;d=d|0;var e=0;rb[c[(c[b>>2]|0)+24>>2]&127](b)|0;e=Xs(d,42716)|0;c[b+36>>2]=e;a[b+44>>0]=(rb[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;return}function Xr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;b=l;l=l+16|0;d=b+8|0;e=b;f=a+36|0;g=a+40|0;h=d+8|0;i=d;j=a+32|0;a:while(1){a=c[f>>2]|0;k=Bb[c[(c[a>>2]|0)+20>>2]&31](a,c[g>>2]|0,d,h,e)|0;a=(c[e>>2]|0)-i|0;if((fp(d,1,a,c[j>>2]|0)|0)!=(a|0)){m=-1;break}switch(k|0){case 1:break;case 2:{m=-1;break a;break}default:{n=4;break a}}}if((n|0)==4)m=((So(c[j>>2]|0)|0)!=0)<<31>>31;l=b;return m|0}function Yr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;a:do if(!(a[b+44>>0]|0)){f=0;g=d;while(1){if((f|0)>=(e|0)){h=f;break a}i=c[(c[b>>2]|0)+52>>2]|0;j=Fq(c[g>>2]|0)|0;k=zb[i&63](b,j)|0;if((k|0)==(Eq()|0)){h=f;break a}f=f+1|0;g=g+4|0}}else h=fp(d,4,e,c[b+32>>2]|0)|0;while(0);return h|0}function Zr(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=l;l=l+32|0;f=e+16|0;g=e+8|0;h=e+4|0;i=e;do if(!(rr(d,Eq()|0)|0)){c[g>>2]=Hq(d)|0;j=b+32|0;if(a[b+44>>0]|0){if((fp(g,4,1,c[j>>2]|0)|0)==1){k=15;break}m=Eq()|0;break}c[h>>2]=f;n=g+4|0;o=b+36|0;p=b+40|0;q=f+8|0;r=f;s=g;while(1){t=c[o>>2]|0;u=wb[c[(c[t>>2]|0)+12>>2]&15](t,c[p>>2]|0,s,n,i,f,q,h)|0;t=(u|0)==1;if((c[i>>2]|0)==(s|0)){k=14;break}if((u|0)==3)if((fp(s,1,1,c[j>>2]|0)|0)==1)v=s;else{k=14;break}else{if((u|1|0)!=1){k=14;break}u=(c[h>>2]|0)-r|0;if((fp(f,1,u,c[j>>2]|0)|0)!=(u|0)){k=14;break}v=t?c[i>>2]|0:s}if(t)s=v;else{k=13;break}}if((k|0)==13){k=15;break}else if((k|0)==14){m=Eq()|0;break}}else k=15;while(0);if((k|0)==15)m=_r(d)|0;l=e;return m|0}function _r(a){a=a|0;var b=0;if(rr(a,Eq()|0)|0)b=~(Eq()|0);else b=a;return b|0}function $r(a){a=a|0;_p(a);return}function as(a){a=a|0;$r(a);tB(a);return}function bs(b,d){b=b|0;d=d|0;var e=0;rb[c[(c[b>>2]|0)+24>>2]&127](b)|0;e=Xs(d,42708)|0;c[b+36>>2]=e;a[b+44>>0]=(rb[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;return}function cs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;b=l;l=l+16|0;d=b+8|0;e=b;f=a+36|0;g=a+40|0;h=d+8|0;i=d;j=a+32|0;a:while(1){a=c[f>>2]|0;k=Bb[c[(c[a>>2]|0)+20>>2]&31](a,c[g>>2]|0,d,h,e)|0;a=(c[e>>2]|0)-i|0;if((fp(d,1,a,c[j>>2]|0)|0)!=(a|0)){m=-1;break}switch(k|0){case 1:break;case 2:{m=-1;break a;break}default:{n=4;break a}}}if((n|0)==4)m=((So(c[j>>2]|0)|0)!=0)<<31>>31;l=b;return m|0}function ds(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;a:do if(!(a[b+44>>0]|0)){f=0;g=d;while(1){if((f|0)>=(e|0)){h=f;break a}i=c[(c[b>>2]|0)+52>>2]|0;j=nq(a[g>>0]|0)|0;k=zb[i&63](b,j)|0;if((k|0)==(mq()|0)){h=f;break a}f=f+1|0;g=g+1|0}}else h=fp(d,1,e,c[b+32>>2]|0)|0;while(0);return h|0}function es(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=l;l=l+32|0;f=e+16|0;g=e+8|0;h=e+4|0;i=e;do if(!(pr(d,mq()|0)|0)){a[g>>0]=pq(d)|0;j=b+32|0;if(a[b+44>>0]|0){if((fp(g,1,1,c[j>>2]|0)|0)==1){k=15;break}m=mq()|0;break}c[h>>2]=f;n=g+1|0;o=b+36|0;p=b+40|0;q=f+8|0;r=f;s=g;while(1){t=c[o>>2]|0;u=wb[c[(c[t>>2]|0)+12>>2]&15](t,c[p>>2]|0,s,n,i,f,q,h)|0;t=(u|0)==1;if((c[i>>2]|0)==(s|0)){k=14;break}if((u|0)==3)if((fp(s,1,1,c[j>>2]|0)|0)==1)v=s;else{k=14;break}else{if((u|1|0)!=1){k=14;break}u=(c[h>>2]|0)-r|0;if((fp(f,1,u,c[j>>2]|0)|0)!=(u|0)){k=14;break}v=t?c[i>>2]|0:s}if(t)s=v;else{k=13;break}}if((k|0)==13){k=15;break}else if((k|0)==14){m=mq()|0;break}}else k=15;while(0);if((k|0)==15)m=fs(d)|0;l=e;return m|0}function fs(a){a=a|0;var b=0;if(pr(a,mq()|0)|0)b=~(mq()|0);else b=a;return b|0}function gs(a){a=a|0;qq(a);return}function hs(a){a=a|0;gs(a);tB(a);return}function is(b,d){b=b|0;d=d|0;var e=0,f=0;e=Xs(d,42716)|0;d=b+36|0;c[d>>2]=e;f=b+44|0;c[f>>2]=rb[c[(c[e>>2]|0)+24>>2]&127](e)|0;e=c[d>>2]|0;a[b+53>>0]=(rb[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;return}function js(a){a=a|0;return ms(a,0)|0}function ks(a){a=a|0;return ms(a,1)|0}function ls(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;e=l;l=l+32|0;f=e+16|0;g=e+8|0;h=e+4|0;i=e;j=rr(d,Eq()|0)|0;k=b+52|0;m=(a[k>>0]|0)!=0;n=b+48|0;do if(j)if(m)o=d;else{p=c[n>>2]|0;a[k>>0]=((rr(p,Eq()|0)|0)^1)&1;o=p}else{if(m){c[h>>2]=Hq(c[n>>2]|0)|0;p=c[b+36>>2]|0;switch(wb[c[(c[p>>2]|0)+12>>2]&15](p,c[b+40>>2]|0,h,h+4|0,i,f,f+8|0,g)|0){case 1:case 2:{q=10;break}case 3:{a[f>>0]=c[n>>2];c[g>>2]=f+1;q=7;break}default:q=7}a:do if((q|0)==7){p=b+32|0;while(1){r=c[g>>2]|0;if(r>>>0<=f>>>0){s=1;t=0;break a}u=r+-1|0;c[g>>2]=u;if((Jp(a[u>>0]|0,c[p>>2]|0)|0)==-1){q=10;break}}}while(0);if((q|0)==10){s=0;t=Eq()|0}if(!s){o=t;break}}c[n>>2]=d;a[k>>0]=1;o=d}while(0);l=e;return o|0}function ms(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;e=l;l=l+32|0;f=e+16|0;g=e+8|0;h=e+4|0;i=e;j=b+52|0;k=b+48|0;if(a[j>>0]|0){m=c[k>>2]|0;if(d){c[k>>2]=Eq()|0;a[j>>0]=0;n=m}else n=m}else{m=c[b+44>>2]|0;j=(m|0)>1?m:1;m=b+32|0;o=0;while(1){if((o|0)>=(j|0)){p=9;break}q=Fo(c[m>>2]|0)|0;if((q|0)==-1){p=8;break}a[f+o>>0]=q;o=o+1|0}if((p|0)==8)r=Eq()|0;else if((p|0)==9){do if(!(a[b+53>>0]|0)){o=b+40|0;q=b+36|0;s=g+4|0;t=j;a:while(1){u=c[o>>2]|0;v=u;w=c[v>>2]|0;x=c[v+4>>2]|0;v=c[q>>2]|0;y=f+t|0;switch(wb[c[(c[v>>2]|0)+16>>2]&15](v,u,f,y,h,g,s,i)|0){case 3:{p=16;break a;break}case 2:{p=18;break a;break}case 1:break;default:break a}u=c[o>>2]|0;c[u>>2]=w;c[u+4>>2]=x;if((t|0)==8){p=18;break}x=Fo(c[m>>2]|0)|0;if((x|0)==-1){p=18;break}a[y>>0]=x;t=t+1|0}if((p|0)==16)c[g>>2]=a[f>>0];else if((p|0)==18){z=Eq()|0;break}A=t;p=19}else{c[g>>2]=a[f>>0];A=j;p=19}while(0);b:do if((p|0)==19){c:do if(d)c[k>>2]=Fq(c[g>>2]|0)|0;else{j=A;do{if((j|0)<=0)break c;j=j+-1|0;i=Fq(a[f+j>>0]|0)|0}while((Jp(i,c[m>>2]|0)|0)!=-1);z=Eq()|0;break b}while(0);z=Fq(c[g>>2]|0)|0}while(0);r=z}n=r}l=e;return n|0}function ns(a){a=a|0;_p(a);return}function os(a){a=a|0;ns(a);tB(a);return}function ps(b,d){b=b|0;d=d|0;var e=0,f=0;e=Xs(d,42708)|0;d=b+36|0;c[d>>2]=e;f=b+44|0;c[f>>2]=rb[c[(c[e>>2]|0)+24>>2]&127](e)|0;e=c[d>>2]|0;a[b+53>>0]=(rb[c[(c[e>>2]|0)+28>>2]&127](e)|0)&1;return}function qs(a){a=a|0;return ts(a,0)|0}function rs(a){a=a|0;return ts(a,1)|0}function ss(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;e=l;l=l+32|0;f=e+16|0;g=e+4|0;h=e+8|0;i=e;j=pr(d,mq()|0)|0;k=b+52|0;m=(a[k>>0]|0)!=0;n=b+48|0;do if(j)if(m)o=d;else{p=c[n>>2]|0;a[k>>0]=((pr(p,mq()|0)|0)^1)&1;o=p}else{if(m){a[h>>0]=pq(c[n>>2]|0)|0;p=c[b+36>>2]|0;switch(wb[c[(c[p>>2]|0)+12>>2]&15](p,c[b+40>>2]|0,h,h+1|0,i,f,f+8|0,g)|0){case 1:case 2:{q=10;break}case 3:{a[f>>0]=c[n>>2];c[g>>2]=f+1;q=7;break}default:q=7}a:do if((q|0)==7){p=b+32|0;while(1){r=c[g>>2]|0;if(r>>>0<=f>>>0){s=1;t=0;break a}u=r+-1|0;c[g>>2]=u;if((Jp(a[u>>0]|0,c[p>>2]|0)|0)==-1){q=10;break}}}while(0);if((q|0)==10){s=0;t=mq()|0}if(!s){o=t;break}}c[n>>2]=d;a[k>>0]=1;o=d}while(0);l=e;return o|0}function ts(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;e=l;l=l+32|0;f=e+16|0;g=e+8|0;h=e+4|0;i=e;j=b+52|0;k=b+48|0;if(a[j>>0]|0){m=c[k>>2]|0;if(d){c[k>>2]=mq()|0;a[j>>0]=0;n=m}else n=m}else{m=c[b+44>>2]|0;j=(m|0)>1?m:1;m=b+32|0;o=0;while(1){if((o|0)>=(j|0)){p=9;break}q=Fo(c[m>>2]|0)|0;if((q|0)==-1){p=8;break}a[f+o>>0]=q;o=o+1|0}if((p|0)==8)r=mq()|0;else if((p|0)==9){do if(!(a[b+53>>0]|0)){o=b+40|0;q=b+36|0;s=g+1|0;t=j;a:while(1){u=c[o>>2]|0;v=u;w=c[v>>2]|0;x=c[v+4>>2]|0;v=c[q>>2]|0;y=f+t|0;switch(wb[c[(c[v>>2]|0)+16>>2]&15](v,u,f,y,h,g,s,i)|0){case 3:{p=16;break a;break}case 2:{p=18;break a;break}case 1:break;default:break a}u=c[o>>2]|0;c[u>>2]=w;c[u+4>>2]=x;if((t|0)==8){p=18;break}x=Fo(c[m>>2]|0)|0;if((x|0)==-1){p=18;break}a[y>>0]=x;t=t+1|0}if((p|0)==16)a[g>>0]=a[f>>0]|0;else if((p|0)==18){z=mq()|0;break}A=t;p=19}else{a[g>>0]=a[f>>0]|0;A=j;p=19}while(0);b:do if((p|0)==19){c:do if(d)c[k>>2]=nq(a[g>>0]|0)|0;else{j=A;do{if((j|0)<=0)break c;j=j+-1|0;i=nq(a[f+j>>0]|0)|0}while((Jp(i,c[m>>2]|0)|0)!=-1);z=mq()|0;break b}while(0);z=nq(a[g>>0]|0)|0}while(0);r=z}n=r}l=e;return n|0}function us(a){a=a|0;Cs(a);return}function vs(a){a=a|0;us(a);tB(a);return}function ws(a){a=a|0;if(a|0)ob[c[(c[a>>2]|0)+4>>2]&511](a);return}function xs(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;b=e;e=c;while(1){if((b|0)==(f|0)){g=7;break}if((e|0)==(d|0)){h=-1;break}c=a[e>>0]|0;i=a[b>>0]|0;if(c<<24>>24<i<<24>>24){h=-1;break}if(i<<24>>24<c<<24>>24){h=1;break}b=b+1|0;e=e+1|0}if((g|0)==7)h=(e|0)!=(d|0)&1;return h|0}function ys(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;As(a,d,e);return}function zs(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;b=0;e=c;while(1){if((e|0)==(d|0))break;c=(a[e>>0]|0)+(b<<4)|0;f=c&-268435456;b=(f>>>24|f)^c;e=e+1|0}return b|0}function As(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;f=l;l=l+16|0;g=d;h=f;i=e-g|0;if(i>>>0<=4294967279)if(i>>>0<11){a[b+11>>0]=i;j=b}else k=5;else{EB(b);k=5}if((k|0)==5){k=i+16&-16;m=rB(k)|0;c[b>>2]=m;c[b+8>>2]=k|-2147483648;c[b+4>>2]=i;j=m}m=e-g|0;g=d;d=j;while(1){if((g|0)==(e|0))break;Bs(d,g);g=g+1|0;d=d+1|0}a[h>>0]=0;Bs(j+m|0,h);l=f;return}function Bs(b,c){b=b|0;c=c|0;a[b>>0]=a[c>>0]|0;return}function Cs(a){a=a|0;return}function Ds(a){a=a|0;Cs(a);return}function Es(a){a=a|0;Ds(a);tB(a);return}function Fs(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;a=e;e=b;while(1){if((a|0)==(f|0)){g=7;break}if((e|0)==(d|0)){h=-1;break}b=c[e>>2]|0;i=c[a>>2]|0;if((b|0)<(i|0)){h=-1;break}if((i|0)<(b|0)){h=1;break}a=a+4|0;e=e+4|0}if((g|0)==7)h=(e|0)!=(d|0)&1;return h|0}function Gs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;Is(a,d,e);return}function Hs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;a=0;e=b;while(1){if((e|0)==(d|0))break;b=(c[e>>2]|0)+(a<<4)|0;f=b&-268435456;a=(f>>>24|f)^b;e=e+4|0}return a|0}function Is(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;f=l;l=l+16|0;g=f;h=e-d>>2;if(h>>>0<=1073741807)if(h>>>0<2){a[b+8+3>>0]=h;i=d;j=b}else k=5;else{EB(b);k=5}do if((k|0)==5){m=h+4&-4;if(m>>>0>1073741823)ya(37300,37337,1734,37386);else{n=rB(m<<2)|0;c[b>>2]=n;c[b+8>>2]=m|-2147483648;c[b+4>>2]=h;i=d;j=n;break}}while(0);while(1){if((i|0)==(e|0))break;Js(j,i);i=i+4|0;j=j+4|0}c[g>>2]=0;Js(j,g);l=f;return}function Js(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];return}function Ks(a){a=a|0;Cs(a);return}function Ls(a){a=a|0;Cs(a);tB(a);return}function Ms(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;i=l;l=l+48|0;j=i+40|0;k=i+16|0;m=i+8|0;n=i+12|0;o=i+4|0;p=i;if(!(c[f+4>>2]&1)){c[m>>2]=-1;q=c[(c[b>>2]|0)+16>>2]|0;c[n>>2]=c[d>>2];c[o>>2]=c[e>>2];c[k>>2]=c[n>>2];c[j>>2]=c[o>>2];c[d>>2]=qb[q&63](b,k,j,f,g,m)|0;switch(c[m>>2]|0){case 0:{a[h>>0]=0;break}case 1:{a[h>>0]=1;break}default:{a[h>>0]=1;c[g>>2]=4}}r=c[d>>2]|0}else{qr(j,f);m=Xs(j,40916)|0;Ys(j);qr(j,f);f=Xs(j,40932)|0;Ys(j);pb[c[(c[f>>2]|0)+24>>2]&127](k,f);pb[c[(c[f>>2]|0)+28>>2]&127](k+12|0,f);c[p>>2]=c[e>>2];e=k+24|0;c[j>>2]=c[p>>2];a[h>>0]=(Dt(d,j,k,e,m,g,1)|0)==(k|0)&1;g=c[d>>2]|0;d=e;do{d=d+-12|0;LB(d)}while((d|0)!=(k|0));r=g}l=i;return r|0}function Ns(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Bt(a,j,i,e,f,g)|0;l=h;return m|0}function Os(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=zt(a,j,i,e,f,g)|0;l=h;return m|0}function Ps(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=xt(a,j,i,e,f,g)|0;l=h;return m|0}function Qs(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=vt(a,j,i,e,f,g)|0;l=h;return m|0}function Rs(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=tt(a,j,i,e,f,g)|0;l=h;return m|0}function Ss(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=pt(a,j,i,e,f,g)|0;l=h;return m|0}function Ts(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=nt(a,j,i,e,f,g)|0;l=h;return m|0}function Us(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=lt(a,j,i,e,f,g)|0;l=h;return m|0}function Vs(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=gt(a,j,i,e,f,g)|0;l=h;return m|0}function Ws(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;b=l;l=l+240|0;i=b;j=b+204|0;k=b+192|0;m=b+180|0;n=b+176|0;o=b+16|0;p=b+8|0;q=b+4|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;r=0;while(1){if((r|0)==3)break;c[k+(r<<2)>>2]=0;r=r+1|0}qr(m,f);f=Xs(m,40916)|0;xb[c[(c[f>>2]|0)+32>>2]&15](f,34880,34906,j)|0;Ys(m);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;r=m+8|0;if((a[f>>0]|0)<0)s=(c[r>>2]&2147483647)+-1|0;else s=10;SB(m,s,0);s=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=s;c[p>>2]=o;c[q>>2]=0;t=m+4|0;u=c[d>>2]|0;v=s;s=u;w=u;a:while(1){if(s){u=c[s+12>>2]|0;if((u|0)==(c[s+16>>2]|0))x=rb[c[(c[s>>2]|0)+36>>2]&127](s)|0;else x=nq(a[u>>0]|0)|0;if(pr(x,mq()|0)|0){c[d>>2]=0;y=0;z=0;A=1}else{y=s;z=w;A=0}}else{y=0;z=0;A=1}u=c[e>>2]|0;do if(u){B=c[u+12>>2]|0;if((B|0)==(c[u+16>>2]|0))C=rb[c[(c[u>>2]|0)+36>>2]&127](u)|0;else C=nq(a[B>>0]|0)|0;if(!(pr(C,mq()|0)|0))if(A){D=u;break}else{E=v;F=u;break a}else{c[e>>2]=0;G=22;break}}else G=22;while(0);if((G|0)==22){G=0;if(A){E=v;F=0;break}else D=0}u=a[f>>0]|0;B=u<<24>>24<0?c[t>>2]|0:u&255;if((c[n>>2]|0)==(v+B|0)){SB(m,B<<1,0);if((a[f>>0]|0)<0)H=(c[r>>2]&2147483647)+-1|0;else H=10;SB(m,H,0);u=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=u+B;I=u}else I=v;u=y+12|0;B=c[u>>2]|0;J=y+16|0;if((B|0)==(c[J>>2]|0))K=rb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else K=nq(a[B>>0]|0)|0;if(Zs(K&255,16,I,n,q,0,k,o,p,j)|0){E=I;F=D;break}B=c[u>>2]|0;if((B|0)==(c[J>>2]|0)){rb[c[(c[y>>2]|0)+40>>2]&127](y)|0;v=I;s=y;w=z;continue}else{c[u>>2]=B+1;nq(a[B>>0]|0)|0;v=I;s=y;w=z;continue}}SB(m,(c[n>>2]|0)-E|0,0);E=(a[f>>0]|0)<0?c[m>>2]|0:m;f=_s()|0;c[i>>2]=h;if(($s(E,f,34913,i)|0)!=1)c[g>>2]=4;if(y){i=c[y+12>>2]|0;if((i|0)==(c[y+16>>2]|0))L=rb[c[(c[z>>2]|0)+36>>2]&127](y)|0;else L=nq(a[i>>0]|0)|0;if(pr(L,mq()|0)|0){c[d>>2]=0;M=1}else M=0}else M=1;do if(F){L=c[F+12>>2]|0;if((L|0)==(c[F+16>>2]|0))N=rb[c[(c[F>>2]|0)+36>>2]&127](F)|0;else N=nq(a[L>>0]|0)|0;if(!(pr(N,mq()|0)|0))if(M)break;else{G=51;break}else{c[e>>2]=0;G=49;break}}else G=49;while(0);if((G|0)==49?M:0)G=51;if((G|0)==51)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;LB(m);LB(k);l=b;return g|0}function Xs(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;return bt(d,at(b)|0)|0}function Ys(a){a=a|0;lB(c[a>>2]|0)|0;return}function Zs(b,d,e,f,g,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=c[f>>2]|0;n=(m|0)==(e|0);do if(n){o=(a[l+24>>0]|0)==b<<24>>24;if(!o?(a[l+25>>0]|0)!=b<<24>>24:0){p=5;break}c[f>>2]=e+1;a[e>>0]=o?43:45;c[g>>2]=0;q=0}else p=5;while(0);a:do if((p|0)==5){o=a[i+11>>0]|0;if(b<<24>>24==h<<24>>24?((o<<24>>24<0?c[i+4>>2]|0:o&255)|0)!=0:0){o=c[k>>2]|0;if((o-j|0)>=160){q=0;break}r=c[g>>2]|0;c[k>>2]=o+4;c[o>>2]=r;c[g>>2]=0;q=0;break}r=l+26|0;o=0;while(1){s=l+o|0;if((o|0)==26){t=r;break}if((a[s>>0]|0)==b<<24>>24){t=s;break}else o=o+1|0}o=t-l|0;if((o|0)>23)q=-1;else{r=34880+o|0;switch(d|0){case 10:case 8:{if((o|0)>=(d|0)){q=-1;break a}break}case 16:{if((o|0)>=22){if(n){q=-1;break a}if((m-e|0)>=3){q=-1;break a}if((a[m+-1>>0]|0)!=48){q=-1;break a}c[g>>2]=0;o=a[r>>0]|0;c[f>>2]=m+1;a[m>>0]=o;q=0;break a}break}default:{}}o=a[r>>0]|0;c[f>>2]=m+1;a[m>>0]=o;c[g>>2]=(c[g>>2]|0)+1;q=0}}while(0);return q|0}function _s(){if((a[38216]|0)==0?xD(38216)|0:0)c[10231]=Cp(2147483647,34916,0)|0;return c[10231]|0}function $s(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=up(b)|0;b=Wo(a,d,g)|0;if(e|0)up(e)|0;l=f;return b|0}function at(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=l;l=l+48|0;d=b+32|0;e=b+24|0;f=b;g=b+16|0;c[g>>2]=269;c[g+4>>2]=0;c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];dt(f,d,a);if((c[a>>2]|0)!=-1){c[d>>2]=f;c[e>>2]=d;qB(a,e,270)}l=b;return (c[a+4>>2]|0)+-1|0}function bt(a,b){a=a|0;b=b|0;return c[(c[a+8>>2]|0)+(b<<2)>>2]|0}function ct(a){a=a|0;var b=0;b=c[10232]|0;c[10232]=b+1;c[a+4>>2]=b+1;return}function dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=c[b>>2]|0;f=c[b+4>>2]|0;c[a>>2]=d;c[a+4>>2]=e;c[a+8>>2]=f;return}function et(a){a=a|0;ft(c[c[a>>2]>>2]|0);return}function ft(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a+4>>2]|0;d=c[a+8>>2]|0;e=(c[a>>2]|0)+(d>>1)|0;if(!(d&1))f=b;else f=c[(c[e>>2]|0)+b>>2]|0;ob[f&511](e);return}function gt(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;b=l;l=l+240|0;j=b+200|0;k=b+199|0;m=b+198|0;n=b+184|0;o=b+172|0;p=b+168|0;q=b+8|0;r=b+4|0;s=b;t=b+197|0;u=b+196|0;ht(n,f,j,k,m);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[o+(f<<2)>>2]=0;f=f+1|0}f=o+11|0;v=o+8|0;if((a[f>>0]|0)<0)w=(c[v>>2]&2147483647)+-1|0;else w=10;SB(o,w,0);w=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=w;c[r>>2]=q;c[s>>2]=0;a[t>>0]=1;a[u>>0]=69;x=o+4|0;y=c[d>>2]|0;z=w;w=y;A=y;a:while(1){if(w){y=c[w+12>>2]|0;if((y|0)==(c[w+16>>2]|0))B=rb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else B=nq(a[y>>0]|0)|0;if(pr(B,mq()|0)|0){c[d>>2]=0;C=0;D=0;E=1}else{C=w;D=A;E=0}}else{C=0;D=0;E=1}y=c[e>>2]|0;do if(y){F=c[y+12>>2]|0;if((F|0)==(c[y+16>>2]|0))G=rb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else G=nq(a[F>>0]|0)|0;if(!(pr(G,mq()|0)|0))if(E){H=y;break}else{I=z;J=y;break a}else{c[e>>2]=0;K=19;break}}else K=19;while(0);if((K|0)==19){K=0;if(E){I=z;J=0;break}else H=0}y=a[f>>0]|0;F=y<<24>>24<0?c[x>>2]|0:y&255;if((c[p>>2]|0)==(z+F|0)){SB(o,F<<1,0);if((a[f>>0]|0)<0)L=(c[v>>2]&2147483647)+-1|0;else L=10;SB(o,L,0);y=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=y+F;M=y}else M=z;y=C+12|0;F=c[y>>2]|0;N=C+16|0;if((F|0)==(c[N>>2]|0))O=rb[c[(c[C>>2]|0)+36>>2]&127](C)|0;else O=nq(a[F>>0]|0)|0;if(it(O&255,t,u,M,p,a[k>>0]|0,a[m>>0]|0,n,q,r,s,j)|0){I=M;J=H;break}F=c[y>>2]|0;if((F|0)==(c[N>>2]|0)){rb[c[(c[C>>2]|0)+40>>2]&127](C)|0;z=M;w=C;A=D;continue}else{c[y>>2]=F+1;nq(a[F>>0]|0)|0;z=M;w=C;A=D;continue}}A=a[n+11>>0]|0;if(!((a[t>>0]|0)==0?1:((A<<24>>24<0?c[n+4>>2]|0:A&255)|0)==0)?(A=c[r>>2]|0,(A-q|0)<160):0){t=c[s>>2]|0;c[r>>2]=A+4;c[A>>2]=t}h[i>>3]=+jt(I,c[p>>2]|0,g);kt(n,q,c[r>>2]|0,g);if(C){r=c[C+12>>2]|0;if((r|0)==(c[C+16>>2]|0))P=rb[c[(c[D>>2]|0)+36>>2]&127](C)|0;else P=nq(a[r>>0]|0)|0;if(pr(P,mq()|0)|0){c[d>>2]=0;Q=1}else Q=0}else Q=1;do if(J){P=c[J+12>>2]|0;if((P|0)==(c[J+16>>2]|0))R=rb[c[(c[J>>2]|0)+36>>2]&127](J)|0;else R=nq(a[P>>0]|0)|0;if(!(pr(R,mq()|0)|0))if(Q)break;else{K=49;break}else{c[e>>2]=0;K=47;break}}else K=47;while(0);if((K|0)==47?Q:0)K=49;if((K|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;LB(o);LB(n);l=b;return g|0}function ht(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;qr(i,d);d=Xs(i,40916)|0;xb[c[(c[d>>2]|0)+32>>2]&15](d,34880,34912,e)|0;e=Xs(i,40932)|0;a[f>>0]=rb[c[(c[e>>2]|0)+12>>2]&127](e)|0;a[g>>0]=rb[c[(c[e>>2]|0)+16>>2]&127](e)|0;pb[c[(c[e>>2]|0)+20>>2]&127](b,e);Ys(i);l=h;return}function it(b,d,e,f,g,h,i,j,k,l,m,n){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0;o=k;a:do if(b<<24>>24==h<<24>>24)if(a[d>>0]|0){a[d>>0]=0;k=c[g>>2]|0;c[g>>2]=k+1;a[k>>0]=46;k=a[j+11>>0]|0;if(((k<<24>>24<0?c[j+4>>2]|0:k&255)|0)!=0?(k=c[l>>2]|0,(k-o|0)<160):0){p=c[m>>2]|0;c[l>>2]=k+4;c[k>>2]=p;q=0}else q=0}else q=-1;else{if(b<<24>>24==i<<24>>24?(p=a[j+11>>0]|0,(p<<24>>24<0?c[j+4>>2]|0:p&255)|0):0){if(!(a[d>>0]|0)){q=-1;break}p=c[l>>2]|0;if((p-o|0)>=160){q=0;break}k=c[m>>2]|0;c[l>>2]=p+4;c[p>>2]=k;c[m>>2]=0;q=0;break}k=n+32|0;p=0;while(1){r=n+p|0;if((p|0)==32){s=k;break}if((a[r>>0]|0)==b<<24>>24){s=r;break}else p=p+1|0}p=s-n|0;if((p|0)>31)q=-1;else{k=a[34880+p>>0]|0;switch(p|0){case 24:case 25:{r=c[g>>2]|0;if((r|0)!=(f|0)?(a[r+-1>>0]&95)!=(a[e>>0]&127):0){q=-1;break a}c[g>>2]=r+1;a[r>>0]=k;q=0;break a;break}case 23:case 22:{a[e>>0]=80;r=c[g>>2]|0;c[g>>2]=r+1;a[r>>0]=k;q=0;break a;break}default:{r=k&95;if((((r|0)==(a[e>>0]|0)?(a[e>>0]=r|128,a[d>>0]|0):0)?(a[d>>0]=0,r=a[j+11>>0]|0,(r<<24>>24<0?c[j+4>>2]|0:r&255)|0):0)?(r=c[l>>2]|0,(r-o|0)<160):0){t=c[m>>2]|0;c[l>>2]=r+4;c[r>>2]=t}t=c[g>>2]|0;c[g>>2]=t+1;a[t>>0]=k;if((p|0)>21){q=0;break a}c[m>>2]=(c[m>>2]|0)+1;q=0;break a}}}}while(0);return q|0}function jt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,h=0,i=0.0,j=0.0,k=0,m=0.0;e=l;l=l+16|0;f=e;if((a|0)==(b|0)){c[d>>2]=4;g=0.0}else{h=c[(dn()|0)>>2]|0;c[(dn()|0)>>2]=0;i=+ro(a,f,_s()|0);a=c[(dn()|0)>>2]|0;if(!a)c[(dn()|0)>>2]=h;if((c[f>>2]|0)==(b|0))if((a|0)==34){j=i;k=6}else m=i;else{j=0.0;k=6}if((k|0)==6){c[d>>2]=4;m=j}g=m}l=e;return +g}function kt(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;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;g=a[b+11>>0]|0;h=g<<24>>24<0;i=b+4|0;j=c[i>>2]|0;k=g&255;do if((h?j:k)|0){if((d|0)==(e|0))l=j;else{g=e;m=d;while(1){n=g+-4|0;if(m>>>0>=n>>>0)break;o=c[m>>2]|0;c[m>>2]=c[n>>2];c[n>>2]=o;g=n;m=m+4|0}l=c[i>>2]|0}m=h?c[b>>2]|0:b;g=e+-4|0;n=m+(h?l:k)|0;o=d;p=m;while(1){q=a[p>>0]|0;r=q<<24>>24>0&q<<24>>24!=127;if(o>>>0>=g>>>0)break;if(r?(q<<24>>24|0)!=(c[o>>2]|0):0){s=10;break}o=o+4|0;p=(n-p|0)>1?p+1|0:p}if((s|0)==10){c[f>>2]=4;break}if(r?((c[g>>2]|0)+-1|0)>>>0>=q<<24>>24>>>0:0)c[f>>2]=4}while(0);return}function lt(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;b=l;l=l+240|0;j=b+200|0;k=b+199|0;m=b+198|0;n=b+184|0;o=b+172|0;p=b+168|0;q=b+8|0;r=b+4|0;s=b;t=b+197|0;u=b+196|0;ht(n,f,j,k,m);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[o+(f<<2)>>2]=0;f=f+1|0}f=o+11|0;v=o+8|0;if((a[f>>0]|0)<0)w=(c[v>>2]&2147483647)+-1|0;else w=10;SB(o,w,0);w=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=w;c[r>>2]=q;c[s>>2]=0;a[t>>0]=1;a[u>>0]=69;x=o+4|0;y=c[d>>2]|0;z=w;w=y;A=y;a:while(1){if(w){y=c[w+12>>2]|0;if((y|0)==(c[w+16>>2]|0))B=rb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else B=nq(a[y>>0]|0)|0;if(pr(B,mq()|0)|0){c[d>>2]=0;C=0;D=0;E=1}else{C=w;D=A;E=0}}else{C=0;D=0;E=1}y=c[e>>2]|0;do if(y){F=c[y+12>>2]|0;if((F|0)==(c[y+16>>2]|0))G=rb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else G=nq(a[F>>0]|0)|0;if(!(pr(G,mq()|0)|0))if(E){H=y;break}else{I=z;J=y;break a}else{c[e>>2]=0;K=19;break}}else K=19;while(0);if((K|0)==19){K=0;if(E){I=z;J=0;break}else H=0}y=a[f>>0]|0;F=y<<24>>24<0?c[x>>2]|0:y&255;if((c[p>>2]|0)==(z+F|0)){SB(o,F<<1,0);if((a[f>>0]|0)<0)L=(c[v>>2]&2147483647)+-1|0;else L=10;SB(o,L,0);y=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=y+F;M=y}else M=z;y=C+12|0;F=c[y>>2]|0;N=C+16|0;if((F|0)==(c[N>>2]|0))O=rb[c[(c[C>>2]|0)+36>>2]&127](C)|0;else O=nq(a[F>>0]|0)|0;if(it(O&255,t,u,M,p,a[k>>0]|0,a[m>>0]|0,n,q,r,s,j)|0){I=M;J=H;break}F=c[y>>2]|0;if((F|0)==(c[N>>2]|0)){rb[c[(c[C>>2]|0)+40>>2]&127](C)|0;z=M;w=C;A=D;continue}else{c[y>>2]=F+1;nq(a[F>>0]|0)|0;z=M;w=C;A=D;continue}}A=a[n+11>>0]|0;if(!((a[t>>0]|0)==0?1:((A<<24>>24<0?c[n+4>>2]|0:A&255)|0)==0)?(A=c[r>>2]|0,(A-q|0)<160):0){t=c[s>>2]|0;c[r>>2]=A+4;c[A>>2]=t}h[i>>3]=+mt(I,c[p>>2]|0,g);kt(n,q,c[r>>2]|0,g);if(C){r=c[C+12>>2]|0;if((r|0)==(c[C+16>>2]|0))P=rb[c[(c[D>>2]|0)+36>>2]&127](C)|0;else P=nq(a[r>>0]|0)|0;if(pr(P,mq()|0)|0){c[d>>2]=0;Q=1}else Q=0}else Q=1;do if(J){P=c[J+12>>2]|0;if((P|0)==(c[J+16>>2]|0))R=rb[c[(c[J>>2]|0)+36>>2]&127](J)|0;else R=nq(a[P>>0]|0)|0;if(!(pr(R,mq()|0)|0))if(Q)break;else{K=49;break}else{c[e>>2]=0;K=47;break}}else K=47;while(0);if((K|0)==47?Q:0)K=49;if((K|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;LB(o);LB(n);l=b;return g|0}function mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,h=0,i=0.0,j=0.0,k=0,m=0.0;e=l;l=l+16|0;f=e;if((a|0)==(b|0)){c[d>>2]=4;g=0.0}else{h=c[(dn()|0)>>2]|0;c[(dn()|0)>>2]=0;i=+ro(a,f,_s()|0);a=c[(dn()|0)>>2]|0;if(!a)c[(dn()|0)>>2]=h;if((c[f>>2]|0)==(b|0))if((a|0)==34){j=i;k=6}else m=i;else{j=0.0;k=6}if((k|0)==6){c[d>>2]=4;m=j}g=m}l=e;return +g}function nt(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;b=l;l=l+240|0;j=b+200|0;k=b+199|0;m=b+198|0;n=b+184|0;o=b+172|0;p=b+168|0;q=b+8|0;r=b+4|0;s=b;t=b+197|0;u=b+196|0;ht(n,f,j,k,m);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[o+(f<<2)>>2]=0;f=f+1|0}f=o+11|0;v=o+8|0;if((a[f>>0]|0)<0)w=(c[v>>2]&2147483647)+-1|0;else w=10;SB(o,w,0);w=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=w;c[r>>2]=q;c[s>>2]=0;a[t>>0]=1;a[u>>0]=69;x=o+4|0;y=c[d>>2]|0;z=w;w=y;A=y;a:while(1){if(w){y=c[w+12>>2]|0;if((y|0)==(c[w+16>>2]|0))B=rb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else B=nq(a[y>>0]|0)|0;if(pr(B,mq()|0)|0){c[d>>2]=0;C=0;D=0;E=1}else{C=w;D=A;E=0}}else{C=0;D=0;E=1}y=c[e>>2]|0;do if(y){F=c[y+12>>2]|0;if((F|0)==(c[y+16>>2]|0))G=rb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else G=nq(a[F>>0]|0)|0;if(!(pr(G,mq()|0)|0))if(E){H=y;break}else{I=z;J=y;break a}else{c[e>>2]=0;K=19;break}}else K=19;while(0);if((K|0)==19){K=0;if(E){I=z;J=0;break}else H=0}y=a[f>>0]|0;F=y<<24>>24<0?c[x>>2]|0:y&255;if((c[p>>2]|0)==(z+F|0)){SB(o,F<<1,0);if((a[f>>0]|0)<0)L=(c[v>>2]&2147483647)+-1|0;else L=10;SB(o,L,0);y=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=y+F;M=y}else M=z;y=C+12|0;F=c[y>>2]|0;N=C+16|0;if((F|0)==(c[N>>2]|0))O=rb[c[(c[C>>2]|0)+36>>2]&127](C)|0;else O=nq(a[F>>0]|0)|0;if(it(O&255,t,u,M,p,a[k>>0]|0,a[m>>0]|0,n,q,r,s,j)|0){I=M;J=H;break}F=c[y>>2]|0;if((F|0)==(c[N>>2]|0)){rb[c[(c[C>>2]|0)+40>>2]&127](C)|0;z=M;w=C;A=D;continue}else{c[y>>2]=F+1;nq(a[F>>0]|0)|0;z=M;w=C;A=D;continue}}A=a[n+11>>0]|0;if(!((a[t>>0]|0)==0?1:((A<<24>>24<0?c[n+4>>2]|0:A&255)|0)==0)?(A=c[r>>2]|0,(A-q|0)<160):0){t=c[s>>2]|0;c[r>>2]=A+4;c[A>>2]=t}g[i>>2]=+ot(I,c[p>>2]|0,h);kt(n,q,c[r>>2]|0,h);if(C){r=c[C+12>>2]|0;if((r|0)==(c[C+16>>2]|0))P=rb[c[(c[D>>2]|0)+36>>2]&127](C)|0;else P=nq(a[r>>0]|0)|0;if(pr(P,mq()|0)|0){c[d>>2]=0;Q=1}else Q=0}else Q=1;do if(J){P=c[J+12>>2]|0;if((P|0)==(c[J+16>>2]|0))R=rb[c[(c[J>>2]|0)+36>>2]&127](J)|0;else R=nq(a[P>>0]|0)|0;if(!(pr(R,mq()|0)|0))if(Q)break;else{K=49;break}else{c[e>>2]=0;K=47;break}}else K=47;while(0);if((K|0)==47?Q:0)K=49;if((K|0)==49)c[h>>2]=c[h>>2]|2;h=c[d>>2]|0;LB(o);LB(n);l=b;return h|0}function ot(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0,h=0,i=0.0,j=0.0;e=l;l=l+16|0;f=e;if((a|0)==(b|0)){c[d>>2]=4;g=0.0}else{h=c[(dn()|0)>>2]|0;c[(dn()|0)>>2]=0;i=+ro(a,f,_s()|0);a=c[(dn()|0)>>2]|0;if(!a)c[(dn()|0)>>2]=h;if((c[f>>2]|0)==(b|0)){if((a|0)==34)c[d>>2]=4;j=i}else{c[d>>2]=4;j=0.0}g=j}l=e;return +g}function pt(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;b=l;l=l+224|0;i=b+198|0;j=b+196|0;k=b+184|0;m=b+172|0;n=b+168|0;o=b+8|0;p=b+4|0;q=b;r=qt(f)|0;rt(k,f,i,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;s=m+8|0;if((a[f>>0]|0)<0)t=(c[s>>2]&2147483647)+-1|0;else t=10;SB(m,t,0);t=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=t;c[p>>2]=o;c[q>>2]=0;u=m+4|0;v=c[d>>2]|0;w=t;t=v;x=v;a:while(1){if(t){v=c[t+12>>2]|0;if((v|0)==(c[t+16>>2]|0))y=rb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else y=nq(a[v>>0]|0)|0;if(pr(y,mq()|0)|0){c[d>>2]=0;z=0;B=0;C=1}else{z=t;B=x;C=0}}else{z=0;B=0;C=1}v=c[e>>2]|0;do if(v){D=c[v+12>>2]|0;if((D|0)==(c[v+16>>2]|0))E=rb[c[(c[v>>2]|0)+36>>2]&127](v)|0;else E=nq(a[D>>0]|0)|0;if(!(pr(E,mq()|0)|0))if(C){F=v;break}else{G=w;H=v;break a}else{c[e>>2]=0;I=19;break}}else I=19;while(0);if((I|0)==19){I=0;if(C){G=w;H=0;break}else F=0}v=a[f>>0]|0;D=v<<24>>24<0?c[u>>2]|0:v&255;if((c[n>>2]|0)==(w+D|0)){SB(m,D<<1,0);if((a[f>>0]|0)<0)J=(c[s>>2]&2147483647)+-1|0;else J=10;SB(m,J,0);v=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=v+D;K=v}else K=w;v=z+12|0;D=c[v>>2]|0;L=z+16|0;if((D|0)==(c[L>>2]|0))M=rb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else M=nq(a[D>>0]|0)|0;if(Zs(M&255,r,K,n,q,a[j>>0]|0,k,o,p,i)|0){G=K;H=F;break}D=c[v>>2]|0;if((D|0)==(c[L>>2]|0)){rb[c[(c[z>>2]|0)+40>>2]&127](z)|0;w=K;t=z;x=B;continue}else{c[v>>2]=D+1;nq(a[D>>0]|0)|0;w=K;t=z;x=B;continue}}x=a[k+11>>0]|0;if((x<<24>>24<0?c[k+4>>2]|0:x&255)|0?(x=c[p>>2]|0,(x-o|0)<160):0){t=c[q>>2]|0;c[p>>2]=x+4;c[x>>2]=t}t=st(G,c[n>>2]|0,g,r)|0;r=h;c[r>>2]=t;c[r+4>>2]=A;kt(k,o,c[p>>2]|0,g);if(z){p=c[z+12>>2]|0;if((p|0)==(c[z+16>>2]|0))N=rb[c[(c[B>>2]|0)+36>>2]&127](z)|0;else N=nq(a[p>>0]|0)|0;if(pr(N,mq()|0)|0){c[d>>2]=0;O=1}else O=0}else O=1;do if(H){N=c[H+12>>2]|0;if((N|0)==(c[H+16>>2]|0))P=rb[c[(c[H>>2]|0)+36>>2]&127](H)|0;else P=nq(a[N>>0]|0)|0;if(!(pr(P,mq()|0)|0))if(O)break;else{I=49;break}else{c[e>>2]=0;I=47;break}}else I=47;while(0);if((I|0)==47?O:0)I=49;if((I|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;LB(m);LB(k);l=b;return g|0}function qt(a){a=a|0;var b=0;switch(c[a+4>>2]&74){case 64:{b=8;break}case 8:{b=16;break}case 0:{b=0;break}default:b=10}return b|0}function rt(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;qr(h,d);d=Xs(h,40916)|0;xb[c[(c[d>>2]|0)+32>>2]&15](d,34880,34906,e)|0;e=Xs(h,40932)|0;a[f>>0]=rb[c[(c[e>>2]|0)+16>>2]&127](e)|0;pb[c[(c[e>>2]|0)+20>>2]&127](b,e);Ys(h);l=g;return}function st(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=l;l=l+16|0;h=g;do if((b|0)==(d|0)){c[e>>2]=4;i=0;j=0}else{if((a[b>>0]|0)==45){c[e>>2]=4;i=0;j=0;break}k=c[(dn()|0)>>2]|0;c[(dn()|0)>>2]=0;m=Fp(b,h,f,_s()|0)|0;n=A;o=c[(dn()|0)>>2]|0;if(!o)c[(dn()|0)>>2]=k;if((c[h>>2]|0)==(d|0))if((o|0)==34){p=-1;q=-1;r=8}else{s=m;t=n}else{p=0;q=0;r=8}if((r|0)==8){c[e>>2]=4;s=p;t=q}i=t;j=s}while(0);A=i;l=g;return j|0}function tt(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;b=l;l=l+224|0;i=b+198|0;j=b+196|0;k=b+184|0;m=b+172|0;n=b+168|0;o=b+8|0;p=b+4|0;q=b;r=qt(f)|0;rt(k,f,i,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;s=m+8|0;if((a[f>>0]|0)<0)t=(c[s>>2]&2147483647)+-1|0;else t=10;SB(m,t,0);t=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=t;c[p>>2]=o;c[q>>2]=0;u=m+4|0;v=c[d>>2]|0;w=t;t=v;x=v;a:while(1){if(t){v=c[t+12>>2]|0;if((v|0)==(c[t+16>>2]|0))y=rb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else y=nq(a[v>>0]|0)|0;if(pr(y,mq()|0)|0){c[d>>2]=0;z=0;A=0;B=1}else{z=t;A=x;B=0}}else{z=0;A=0;B=1}v=c[e>>2]|0;do if(v){C=c[v+12>>2]|0;if((C|0)==(c[v+16>>2]|0))D=rb[c[(c[v>>2]|0)+36>>2]&127](v)|0;else D=nq(a[C>>0]|0)|0;if(!(pr(D,mq()|0)|0))if(B){E=v;break}else{F=w;G=v;break a}else{c[e>>2]=0;H=19;break}}else H=19;while(0);if((H|0)==19){H=0;if(B){F=w;G=0;break}else E=0}v=a[f>>0]|0;C=v<<24>>24<0?c[u>>2]|0:v&255;if((c[n>>2]|0)==(w+C|0)){SB(m,C<<1,0);if((a[f>>0]|0)<0)I=(c[s>>2]&2147483647)+-1|0;else I=10;SB(m,I,0);v=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=v+C;J=v}else J=w;v=z+12|0;C=c[v>>2]|0;K=z+16|0;if((C|0)==(c[K>>2]|0))L=rb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else L=nq(a[C>>0]|0)|0;if(Zs(L&255,r,J,n,q,a[j>>0]|0,k,o,p,i)|0){F=J;G=E;break}C=c[v>>2]|0;if((C|0)==(c[K>>2]|0)){rb[c[(c[z>>2]|0)+40>>2]&127](z)|0;w=J;t=z;x=A;continue}else{c[v>>2]=C+1;nq(a[C>>0]|0)|0;w=J;t=z;x=A;continue}}x=a[k+11>>0]|0;if((x<<24>>24<0?c[k+4>>2]|0:x&255)|0?(x=c[p>>2]|0,(x-o|0)<160):0){t=c[q>>2]|0;c[p>>2]=x+4;c[x>>2]=t}c[h>>2]=ut(F,c[n>>2]|0,g,r)|0;kt(k,o,c[p>>2]|0,g);if(z){p=c[z+12>>2]|0;if((p|0)==(c[z+16>>2]|0))M=rb[c[(c[A>>2]|0)+36>>2]&127](z)|0;else M=nq(a[p>>0]|0)|0;if(pr(M,mq()|0)|0){c[d>>2]=0;N=1}else N=0}else N=1;do if(G){M=c[G+12>>2]|0;if((M|0)==(c[G+16>>2]|0))O=rb[c[(c[G>>2]|0)+36>>2]&127](G)|0;else O=nq(a[M>>0]|0)|0;if(!(pr(O,mq()|0)|0))if(N)break;else{H=49;break}else{c[e>>2]=0;H=47;break}}else H=47;while(0);if((H|0)==47?N:0)H=49;if((H|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;LB(m);LB(k);l=b;return g|0}function ut(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;g=l;l=l+16|0;h=g;do if((b|0)==(d|0)){c[e>>2]=4;i=0}else{if((a[b>>0]|0)==45){c[e>>2]=4;i=0;break}j=c[(dn()|0)>>2]|0;c[(dn()|0)>>2]=0;k=Fp(b,h,f,_s()|0)|0;m=A;n=c[(dn()|0)>>2]|0;if(!n)c[(dn()|0)>>2]=j;do if((c[h>>2]|0)==(d|0))if(m>>>0>0|(m|0)==0&k>>>0>4294967295|(n|0)==34){c[e>>2]=4;o=-1;break}else{o=k;break}else{c[e>>2]=4;o=0}while(0);i=o}while(0);l=g;return i|0}function vt(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;b=l;l=l+224|0;i=b+198|0;j=b+196|0;k=b+184|0;m=b+172|0;n=b+168|0;o=b+8|0;p=b+4|0;q=b;r=qt(f)|0;rt(k,f,i,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;s=m+8|0;if((a[f>>0]|0)<0)t=(c[s>>2]&2147483647)+-1|0;else t=10;SB(m,t,0);t=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=t;c[p>>2]=o;c[q>>2]=0;u=m+4|0;v=c[d>>2]|0;w=t;t=v;x=v;a:while(1){if(t){v=c[t+12>>2]|0;if((v|0)==(c[t+16>>2]|0))y=rb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else y=nq(a[v>>0]|0)|0;if(pr(y,mq()|0)|0){c[d>>2]=0;z=0;A=0;B=1}else{z=t;A=x;B=0}}else{z=0;A=0;B=1}v=c[e>>2]|0;do if(v){C=c[v+12>>2]|0;if((C|0)==(c[v+16>>2]|0))D=rb[c[(c[v>>2]|0)+36>>2]&127](v)|0;else D=nq(a[C>>0]|0)|0;if(!(pr(D,mq()|0)|0))if(B){E=v;break}else{F=w;G=v;break a}else{c[e>>2]=0;H=19;break}}else H=19;while(0);if((H|0)==19){H=0;if(B){F=w;G=0;break}else E=0}v=a[f>>0]|0;C=v<<24>>24<0?c[u>>2]|0:v&255;if((c[n>>2]|0)==(w+C|0)){SB(m,C<<1,0);if((a[f>>0]|0)<0)I=(c[s>>2]&2147483647)+-1|0;else I=10;SB(m,I,0);v=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=v+C;J=v}else J=w;v=z+12|0;C=c[v>>2]|0;K=z+16|0;if((C|0)==(c[K>>2]|0))L=rb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else L=nq(a[C>>0]|0)|0;if(Zs(L&255,r,J,n,q,a[j>>0]|0,k,o,p,i)|0){F=J;G=E;break}C=c[v>>2]|0;if((C|0)==(c[K>>2]|0)){rb[c[(c[z>>2]|0)+40>>2]&127](z)|0;w=J;t=z;x=A;continue}else{c[v>>2]=C+1;nq(a[C>>0]|0)|0;w=J;t=z;x=A;continue}}x=a[k+11>>0]|0;if((x<<24>>24<0?c[k+4>>2]|0:x&255)|0?(x=c[p>>2]|0,(x-o|0)<160):0){t=c[q>>2]|0;c[p>>2]=x+4;c[x>>2]=t}c[h>>2]=wt(F,c[n>>2]|0,g,r)|0;kt(k,o,c[p>>2]|0,g);if(z){p=c[z+12>>2]|0;if((p|0)==(c[z+16>>2]|0))M=rb[c[(c[A>>2]|0)+36>>2]&127](z)|0;else M=nq(a[p>>0]|0)|0;if(pr(M,mq()|0)|0){c[d>>2]=0;N=1}else N=0}else N=1;do if(G){M=c[G+12>>2]|0;if((M|0)==(c[G+16>>2]|0))O=rb[c[(c[G>>2]|0)+36>>2]&127](G)|0;else O=nq(a[M>>0]|0)|0;if(!(pr(O,mq()|0)|0))if(N)break;else{H=49;break}else{c[e>>2]=0;H=47;break}}else H=47;while(0);if((H|0)==47?N:0)H=49;if((H|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;LB(m);LB(k);l=b;return g|0}function wt(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;g=l;l=l+16|0;h=g;do if((b|0)==(d|0)){c[e>>2]=4;i=0}else{if((a[b>>0]|0)==45){c[e>>2]=4;i=0;break}j=c[(dn()|0)>>2]|0;c[(dn()|0)>>2]=0;k=Fp(b,h,f,_s()|0)|0;m=A;n=c[(dn()|0)>>2]|0;if(!n)c[(dn()|0)>>2]=j;do if((c[h>>2]|0)==(d|0))if(m>>>0>0|(m|0)==0&k>>>0>4294967295|(n|0)==34){c[e>>2]=4;o=-1;break}else{o=k;break}else{c[e>>2]=4;o=0}while(0);i=o}while(0);l=g;return i|0}function xt(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;d=l;l=l+224|0;j=d+198|0;k=d+196|0;m=d+184|0;n=d+172|0;o=d+168|0;p=d+8|0;q=d+4|0;r=d;s=qt(g)|0;rt(m,g,j,k);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;g=0;while(1){if((g|0)==3)break;c[n+(g<<2)>>2]=0;g=g+1|0}g=n+11|0;t=n+8|0;if((a[g>>0]|0)<0)u=(c[t>>2]&2147483647)+-1|0;else u=10;SB(n,u,0);u=(a[g>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=u;c[q>>2]=p;c[r>>2]=0;v=n+4|0;w=c[e>>2]|0;x=u;u=w;y=w;a:while(1){if(u){w=c[u+12>>2]|0;if((w|0)==(c[u+16>>2]|0))z=rb[c[(c[u>>2]|0)+36>>2]&127](u)|0;else z=nq(a[w>>0]|0)|0;if(pr(z,mq()|0)|0){c[e>>2]=0;A=0;B=0;C=1}else{A=u;B=y;C=0}}else{A=0;B=0;C=1}w=c[f>>2]|0;do if(w){D=c[w+12>>2]|0;if((D|0)==(c[w+16>>2]|0))E=rb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else E=nq(a[D>>0]|0)|0;if(!(pr(E,mq()|0)|0))if(C){F=w;break}else{G=x;H=w;break a}else{c[f>>2]=0;I=19;break}}else I=19;while(0);if((I|0)==19){I=0;if(C){G=x;H=0;break}else F=0}w=a[g>>0]|0;D=w<<24>>24<0?c[v>>2]|0:w&255;if((c[o>>2]|0)==(x+D|0)){SB(n,D<<1,0);if((a[g>>0]|0)<0)J=(c[t>>2]&2147483647)+-1|0;else J=10;SB(n,J,0);w=(a[g>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=w+D;K=w}else K=x;w=A+12|0;D=c[w>>2]|0;L=A+16|0;if((D|0)==(c[L>>2]|0))M=rb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else M=nq(a[D>>0]|0)|0;if(Zs(M&255,s,K,o,r,a[k>>0]|0,m,p,q,j)|0){G=K;H=F;break}D=c[w>>2]|0;if((D|0)==(c[L>>2]|0)){rb[c[(c[A>>2]|0)+40>>2]&127](A)|0;x=K;u=A;y=B;continue}else{c[w>>2]=D+1;nq(a[D>>0]|0)|0;x=K;u=A;y=B;continue}}y=a[m+11>>0]|0;if((y<<24>>24<0?c[m+4>>2]|0:y&255)|0?(y=c[q>>2]|0,(y-p|0)<160):0){u=c[r>>2]|0;c[q>>2]=y+4;c[y>>2]=u}b[i>>1]=yt(G,c[o>>2]|0,h,s)|0;kt(m,p,c[q>>2]|0,h);if(A){q=c[A+12>>2]|0;if((q|0)==(c[A+16>>2]|0))N=rb[c[(c[B>>2]|0)+36>>2]&127](A)|0;else N=nq(a[q>>0]|0)|0;if(pr(N,mq()|0)|0){c[e>>2]=0;O=1}else O=0}else O=1;do if(H){N=c[H+12>>2]|0;if((N|0)==(c[H+16>>2]|0))P=rb[c[(c[H>>2]|0)+36>>2]&127](H)|0;else P=nq(a[N>>0]|0)|0;if(!(pr(P,mq()|0)|0))if(O)break;else{I=49;break}else{c[f>>2]=0;I=47;break}}else I=47;while(0);if((I|0)==47?O:0)I=49;if((I|0)==49)c[h>>2]=c[h>>2]|2;h=c[e>>2]|0;LB(n);LB(m);l=d;return h|0}function yt(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;g=l;l=l+16|0;h=g;do if((b|0)==(d|0)){c[e>>2]=4;i=0}else{if((a[b>>0]|0)==45){c[e>>2]=4;i=0;break}j=c[(dn()|0)>>2]|0;c[(dn()|0)>>2]=0;k=Fp(b,h,f,_s()|0)|0;m=A;n=c[(dn()|0)>>2]|0;if(!n)c[(dn()|0)>>2]=j;do if((c[h>>2]|0)==(d|0))if(m>>>0>0|(m|0)==0&k>>>0>65535|(n|0)==34){c[e>>2]=4;o=-1;break}else{o=k&65535;break}else{c[e>>2]=4;o=0}while(0);i=o}while(0);l=g;return i|0}function zt(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;b=l;l=l+224|0;i=b+198|0;j=b+196|0;k=b+184|0;m=b+172|0;n=b+168|0;o=b+8|0;p=b+4|0;q=b;r=qt(f)|0;rt(k,f,i,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;s=m+8|0;if((a[f>>0]|0)<0)t=(c[s>>2]&2147483647)+-1|0;else t=10;SB(m,t,0);t=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=t;c[p>>2]=o;c[q>>2]=0;u=m+4|0;v=c[d>>2]|0;w=t;t=v;x=v;a:while(1){if(t){v=c[t+12>>2]|0;if((v|0)==(c[t+16>>2]|0))y=rb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else y=nq(a[v>>0]|0)|0;if(pr(y,mq()|0)|0){c[d>>2]=0;z=0;B=0;C=1}else{z=t;B=x;C=0}}else{z=0;B=0;C=1}v=c[e>>2]|0;do if(v){D=c[v+12>>2]|0;if((D|0)==(c[v+16>>2]|0))E=rb[c[(c[v>>2]|0)+36>>2]&127](v)|0;else E=nq(a[D>>0]|0)|0;if(!(pr(E,mq()|0)|0))if(C){F=v;break}else{G=w;H=v;break a}else{c[e>>2]=0;I=19;break}}else I=19;while(0);if((I|0)==19){I=0;if(C){G=w;H=0;break}else F=0}v=a[f>>0]|0;D=v<<24>>24<0?c[u>>2]|0:v&255;if((c[n>>2]|0)==(w+D|0)){SB(m,D<<1,0);if((a[f>>0]|0)<0)J=(c[s>>2]&2147483647)+-1|0;else J=10;SB(m,J,0);v=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=v+D;K=v}else K=w;v=z+12|0;D=c[v>>2]|0;L=z+16|0;if((D|0)==(c[L>>2]|0))M=rb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else M=nq(a[D>>0]|0)|0;if(Zs(M&255,r,K,n,q,a[j>>0]|0,k,o,p,i)|0){G=K;H=F;break}D=c[v>>2]|0;if((D|0)==(c[L>>2]|0)){rb[c[(c[z>>2]|0)+40>>2]&127](z)|0;w=K;t=z;x=B;continue}else{c[v>>2]=D+1;nq(a[D>>0]|0)|0;w=K;t=z;x=B;continue}}x=a[k+11>>0]|0;if((x<<24>>24<0?c[k+4>>2]|0:x&255)|0?(x=c[p>>2]|0,(x-o|0)<160):0){t=c[q>>2]|0;c[p>>2]=x+4;c[x>>2]=t}t=At(G,c[n>>2]|0,g,r)|0;r=h;c[r>>2]=t;c[r+4>>2]=A;kt(k,o,c[p>>2]|0,g);if(z){p=c[z+12>>2]|0;if((p|0)==(c[z+16>>2]|0))N=rb[c[(c[B>>2]|0)+36>>2]&127](z)|0;else N=nq(a[p>>0]|0)|0;if(pr(N,mq()|0)|0){c[d>>2]=0;O=1}else O=0}else O=1;do if(H){N=c[H+12>>2]|0;if((N|0)==(c[H+16>>2]|0))P=rb[c[(c[H>>2]|0)+36>>2]&127](H)|0;else P=nq(a[N>>0]|0)|0;if(!(pr(P,mq()|0)|0))if(O)break;else{I=49;break}else{c[e>>2]=0;I=47;break}}else I=47;while(0);if((I|0)==47?O:0)I=49;if((I|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;LB(m);LB(k);l=b;return g|0}function At(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;f=l;l=l+16|0;g=f;if((a|0)==(b|0)){c[d>>2]=4;h=0;i=0}else{j=c[(dn()|0)>>2]|0;c[(dn()|0)>>2]=0;k=Gp(a,g,e,_s()|0)|0;e=A;a=c[(dn()|0)>>2]|0;if(!a)c[(dn()|0)>>2]=j;if((c[g>>2]|0)==(b|0))if((a|0)==34){c[d>>2]=4;a=(e|0)>0|(e|0)==0&k>>>0>0;m=a?-1:0;n=a?2147483647:-2147483648}else{m=k;n=e}else{c[d>>2]=4;m=0;n=0}h=n;i=m}A=h;l=f;return i|0}function Bt(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;b=l;l=l+224|0;i=b+198|0;j=b+196|0;k=b+184|0;m=b+172|0;n=b+168|0;o=b+8|0;p=b+4|0;q=b;r=qt(f)|0;rt(k,f,i,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;s=m+8|0;if((a[f>>0]|0)<0)t=(c[s>>2]&2147483647)+-1|0;else t=10;SB(m,t,0);t=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=t;c[p>>2]=o;c[q>>2]=0;u=m+4|0;v=c[d>>2]|0;w=t;t=v;x=v;a:while(1){if(t){v=c[t+12>>2]|0;if((v|0)==(c[t+16>>2]|0))y=rb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else y=nq(a[v>>0]|0)|0;if(pr(y,mq()|0)|0){c[d>>2]=0;z=0;A=0;B=1}else{z=t;A=x;B=0}}else{z=0;A=0;B=1}v=c[e>>2]|0;do if(v){C=c[v+12>>2]|0;if((C|0)==(c[v+16>>2]|0))D=rb[c[(c[v>>2]|0)+36>>2]&127](v)|0;else D=nq(a[C>>0]|0)|0;if(!(pr(D,mq()|0)|0))if(B){E=v;break}else{F=w;G=v;break a}else{c[e>>2]=0;H=19;break}}else H=19;while(0);if((H|0)==19){H=0;if(B){F=w;G=0;break}else E=0}v=a[f>>0]|0;C=v<<24>>24<0?c[u>>2]|0:v&255;if((c[n>>2]|0)==(w+C|0)){SB(m,C<<1,0);if((a[f>>0]|0)<0)I=(c[s>>2]&2147483647)+-1|0;else I=10;SB(m,I,0);v=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=v+C;J=v}else J=w;v=z+12|0;C=c[v>>2]|0;K=z+16|0;if((C|0)==(c[K>>2]|0))L=rb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else L=nq(a[C>>0]|0)|0;if(Zs(L&255,r,J,n,q,a[j>>0]|0,k,o,p,i)|0){F=J;G=E;break}C=c[v>>2]|0;if((C|0)==(c[K>>2]|0)){rb[c[(c[z>>2]|0)+40>>2]&127](z)|0;w=J;t=z;x=A;continue}else{c[v>>2]=C+1;nq(a[C>>0]|0)|0;w=J;t=z;x=A;continue}}x=a[k+11>>0]|0;if((x<<24>>24<0?c[k+4>>2]|0:x&255)|0?(x=c[p>>2]|0,(x-o|0)<160):0){t=c[q>>2]|0;c[p>>2]=x+4;c[x>>2]=t}c[h>>2]=Ct(F,c[n>>2]|0,g,r)|0;kt(k,o,c[p>>2]|0,g);if(z){p=c[z+12>>2]|0;if((p|0)==(c[z+16>>2]|0))M=rb[c[(c[A>>2]|0)+36>>2]&127](z)|0;else M=nq(a[p>>0]|0)|0;if(pr(M,mq()|0)|0){c[d>>2]=0;N=1}else N=0}else N=1;do if(G){M=c[G+12>>2]|0;if((M|0)==(c[G+16>>2]|0))O=rb[c[(c[G>>2]|0)+36>>2]&127](G)|0;else O=nq(a[M>>0]|0)|0;if(!(pr(O,mq()|0)|0))if(N)break;else{H=49;break}else{c[e>>2]=0;H=47;break}}else H=47;while(0);if((H|0)==47?N:0)H=49;if((H|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;LB(m);LB(k);l=b;return g|0}function Ct(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;g=f;if((a|0)==(b|0)){c[d>>2]=4;h=0}else{i=c[(dn()|0)>>2]|0;c[(dn()|0)>>2]=0;j=Gp(a,g,e,_s()|0)|0;e=A;a=c[(dn()|0)>>2]|0;if(!a)c[(dn()|0)>>2]=i;a:do if((c[g>>2]|0)==(b|0)){do if((a|0)==34){c[d>>2]=4;if((e|0)>0|(e|0)==0&j>>>0>0){k=2147483647;break a}}else{if((e|0)<-1|(e|0)==-1&j>>>0<2147483648){c[d>>2]=4;break}if((e|0)>0|(e|0)==0&j>>>0>2147483647){c[d>>2]=4;k=2147483647;break a}else{k=j;break a}}while(0);k=-2147483648}else{c[d>>2]=4;k=0}while(0);h=k}l=f;return h|0}function Dt(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;j=l;l=l+112|0;k=j;m=(f-e|0)/12|0;if(m>>>0>100){n=Pp(m)|0;if(!n){o=0;p=0}else{o=n;p=n}}else{o=k;p=0}k=m;m=e;n=o;q=0;while(1){if((m|0)==(f|0))break;r=a[m+11>>0]|0;if(r<<24>>24<0)s=c[m+4>>2]|0;else s=r&255;if(!s){a[n>>0]=2;t=k+-1|0;u=q+1|0}else{a[n>>0]=1;t=k;u=q}k=t;m=m+12|0;n=n+1|0;q=u}u=0;n=k;k=q;a:while(1){q=c[b>>2]|0;do if(q){m=c[q+12>>2]|0;if((m|0)==(c[q+16>>2]|0))v=rb[c[(c[q>>2]|0)+36>>2]&127](q)|0;else v=nq(a[m>>0]|0)|0;if(pr(v,mq()|0)|0){c[b>>2]=0;w=1;break}else{w=(c[b>>2]|0)==0;break}}else w=1;while(0);q=c[d>>2]|0;if(q){m=c[q+12>>2]|0;if((m|0)==(c[q+16>>2]|0))x=rb[c[(c[q>>2]|0)+36>>2]&127](q)|0;else x=nq(a[m>>0]|0)|0;if(pr(x,mq()|0)|0){c[d>>2]=0;y=0;z=1}else{y=q;z=0}}else{y=0;z=1}A=c[b>>2]|0;if(!((n|0)!=0&(w^z)))break;q=c[A+12>>2]|0;if((q|0)==(c[A+16>>2]|0))B=rb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else B=nq(a[q>>0]|0)|0;q=B&255;if(i)C=q;else C=zb[c[(c[g>>2]|0)+12>>2]&63](g,q)|0;q=u+1|0;m=e;t=0;s=o;r=k;D=n;while(1){if((m|0)==(f|0))break;do if((a[s>>0]|0)==1){E=m+11|0;if((a[E>>0]|0)<0)F=c[m>>2]|0;else F=m;G=a[F+u>>0]|0;if(i)H=G;else H=zb[c[(c[g>>2]|0)+12>>2]&63](g,G)|0;G=D+-1|0;if(C<<24>>24!=H<<24>>24){a[s>>0]=0;I=t;J=r;K=G;break}L=a[E>>0]|0;if(L<<24>>24<0)M=c[m+4>>2]|0;else M=L&255;if((M|0)==(q|0)){a[s>>0]=2;I=1;J=r+1|0;K=G}else{I=1;J=r;K=D}}else{I=t;J=r;K=D}while(0);m=m+12|0;t=I;s=s+1|0;r=J;D=K}if(!t){u=q;n=D;k=r;continue}s=c[b>>2]|0;m=s+12|0;G=c[m>>2]|0;if((G|0)==(c[s+16>>2]|0))rb[c[(c[s>>2]|0)+40>>2]&127](s)|0;else{c[m>>2]=G+1;nq(a[G>>0]|0)|0}if((r+D|0)>>>0>1){N=e;O=o;P=r}else{u=q;n=D;k=r;continue}while(1){if((N|0)==(f|0)){u=q;n=D;k=P;continue a}if((a[O>>0]|0)==2){G=a[N+11>>0]|0;if(G<<24>>24<0)Q=c[N+4>>2]|0;else Q=G&255;if((Q|0)!=(q|0)){a[O>>0]=0;R=P+-1|0}else R=P}else R=P;N=N+12|0;O=O+1|0;P=R}}do if(A){R=c[A+12>>2]|0;if((R|0)==(c[A+16>>2]|0))S=rb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else S=nq(a[R>>0]|0)|0;if(pr(S,mq()|0)|0){c[b>>2]=0;T=1;break}else{T=(c[b>>2]|0)==0;break}}else T=1;while(0);do if(y){b=c[y+12>>2]|0;if((b|0)==(c[y+16>>2]|0))U=rb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else U=nq(a[b>>0]|0)|0;if(!(pr(U,mq()|0)|0))if(T){V=e;W=o;break}else{X=77;break}else{c[d>>2]=0;X=41;break}}else X=41;while(0);if((X|0)==41)if(T)X=77;else{V=e;W=o}if((X|0)==77){c[h>>2]=c[h>>2]|2;V=e;W=o}while(1){if((V|0)==(f|0)){X=81;break}if((a[W>>0]|0)==2){Y=V;break}V=V+12|0;W=W+1|0}if((X|0)==81){c[h>>2]=c[h>>2]|4;Y=f}Qp(p);l=j;return Y|0}function Et(a){a=a|0;Cs(a);return}function Ft(a){a=a|0;Cs(a);tB(a);return}function Gt(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;i=l;l=l+48|0;j=i+40|0;k=i+16|0;m=i+8|0;n=i+12|0;o=i+4|0;p=i;if(!(c[f+4>>2]&1)){c[m>>2]=-1;q=c[(c[b>>2]|0)+16>>2]|0;c[n>>2]=c[d>>2];c[o>>2]=c[e>>2];c[k>>2]=c[n>>2];c[j>>2]=c[o>>2];c[d>>2]=qb[q&63](b,k,j,f,g,m)|0;switch(c[m>>2]|0){case 0:{a[h>>0]=0;break}case 1:{a[h>>0]=1;break}default:{a[h>>0]=1;c[g>>2]=4}}r=c[d>>2]|0}else{qr(j,f);m=Xs(j,40948)|0;Ys(j);qr(j,f);f=Xs(j,40956)|0;Ys(j);pb[c[(c[f>>2]|0)+24>>2]&127](k,f);pb[c[(c[f>>2]|0)+28>>2]&127](k+12|0,f);c[p>>2]=c[e>>2];e=k+24|0;c[j>>2]=c[p>>2];a[h>>0]=(cu(d,j,k,e,m,g,1)|0)==(k|0)&1;g=c[d>>2]|0;d=e;do{d=d+-12|0;gC(d)}while((d|0)!=(k|0));r=g}l=i;return r|0}function Ht(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=bu(a,j,i,e,f,g)|0;l=h;return m|0}function It(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=au(a,j,i,e,f,g)|0;l=h;return m|0}function Jt(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=$t(a,j,i,e,f,g)|0;l=h;return m|0}function Kt(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=_t(a,j,i,e,f,g)|0;l=h;return m|0}function Lt(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Zt(a,j,i,e,f,g)|0;l=h;return m|0}function Mt(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Xt(a,j,i,e,f,g)|0;l=h;return m|0}function Nt(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Wt(a,j,i,e,f,g)|0;l=h;return m|0}function Ot(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Vt(a,j,i,e,f,g)|0;l=h;return m|0}function Pt(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=St(a,j,i,e,f,g)|0;l=h;return m|0}function Qt(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;b=l;l=l+320|0;i=b;j=b+208|0;k=b+192|0;m=b+180|0;n=b+176|0;o=b+16|0;p=b+8|0;q=b+4|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;r=0;while(1){if((r|0)==3)break;c[k+(r<<2)>>2]=0;r=r+1|0}qr(m,f);f=Xs(m,40948)|0;xb[c[(c[f>>2]|0)+48>>2]&15](f,34880,34906,j)|0;Ys(m);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;r=m+8|0;if((a[f>>0]|0)<0)s=(c[r>>2]&2147483647)+-1|0;else s=10;SB(m,s,0);s=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=s;c[p>>2]=o;c[q>>2]=0;t=m+4|0;u=c[d>>2]|0;v=s;s=u;w=u;a:while(1){if(s){u=c[s+12>>2]|0;if((u|0)==(c[s+16>>2]|0))x=rb[c[(c[s>>2]|0)+36>>2]&127](s)|0;else x=Fq(c[u>>2]|0)|0;if(rr(x,Eq()|0)|0){c[d>>2]=0;y=0;z=0;A=1}else{y=s;z=w;A=0}}else{y=0;z=0;A=1}u=c[e>>2]|0;do if(u){B=c[u+12>>2]|0;if((B|0)==(c[u+16>>2]|0))C=rb[c[(c[u>>2]|0)+36>>2]&127](u)|0;else C=Fq(c[B>>2]|0)|0;if(!(rr(C,Eq()|0)|0))if(A){D=u;break}else{E=v;F=u;break a}else{c[e>>2]=0;G=22;break}}else G=22;while(0);if((G|0)==22){G=0;if(A){E=v;F=0;break}else D=0}u=a[f>>0]|0;B=u<<24>>24<0?c[t>>2]|0:u&255;if((c[n>>2]|0)==(v+B|0)){SB(m,B<<1,0);if((a[f>>0]|0)<0)H=(c[r>>2]&2147483647)+-1|0;else H=10;SB(m,H,0);u=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=u+B;I=u}else I=v;u=y+12|0;B=c[u>>2]|0;J=y+16|0;if((B|0)==(c[J>>2]|0))K=rb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else K=Fq(c[B>>2]|0)|0;if(Rt(K,16,I,n,q,0,k,o,p,j)|0){E=I;F=D;break}B=c[u>>2]|0;if((B|0)==(c[J>>2]|0)){rb[c[(c[y>>2]|0)+40>>2]&127](y)|0;v=I;s=y;w=z;continue}else{c[u>>2]=B+4;Fq(c[B>>2]|0)|0;v=I;s=y;w=z;continue}}SB(m,(c[n>>2]|0)-E|0,0);E=(a[f>>0]|0)<0?c[m>>2]|0:m;f=_s()|0;c[i>>2]=h;if(($s(E,f,34913,i)|0)!=1)c[g>>2]=4;if(y){i=c[y+12>>2]|0;if((i|0)==(c[y+16>>2]|0))L=rb[c[(c[z>>2]|0)+36>>2]&127](y)|0;else L=Fq(c[i>>2]|0)|0;if(rr(L,Eq()|0)|0){c[d>>2]=0;M=1}else M=0}else M=1;do if(F){L=c[F+12>>2]|0;if((L|0)==(c[F+16>>2]|0))N=rb[c[(c[F>>2]|0)+36>>2]&127](F)|0;else N=Fq(c[L>>2]|0)|0;if(!(rr(N,Eq()|0)|0))if(M)break;else{G=51;break}else{c[e>>2]=0;G=49;break}}else G=49;while(0);if((G|0)==49?M:0)G=51;if((G|0)==51)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;LB(m);LB(k);l=b;return g|0}function Rt(b,d,e,f,g,h,i,j,k,l){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;m=c[f>>2]|0;n=(m|0)==(e|0);do if(n){o=(c[l+96>>2]|0)==(b|0);if(!o?(c[l+100>>2]|0)!=(b|0):0){p=5;break}c[f>>2]=e+1;a[e>>0]=o?43:45;c[g>>2]=0;q=0}else p=5;while(0);a:do if((p|0)==5){o=a[i+11>>0]|0;if((b|0)==(h|0)?((o<<24>>24<0?c[i+4>>2]|0:o&255)|0)!=0:0){o=c[k>>2]|0;if((o-j|0)>=160){q=0;break}r=c[g>>2]|0;c[k>>2]=o+4;c[o>>2]=r;c[g>>2]=0;q=0;break}r=l+104|0;o=0;while(1){s=l+(o<<2)|0;if((o|0)==26){t=r;break}if((c[s>>2]|0)==(b|0)){t=s;break}else o=o+1|0}o=t-l|0;r=o>>2;if((o|0)>92)q=-1;else{s=34880+r|0;switch(d|0){case 10:case 8:{if((r|0)>=(d|0)){q=-1;break a}break}case 16:{if((o|0)>=88){if(n){q=-1;break a}if((m-e|0)>=3){q=-1;break a}if((a[m+-1>>0]|0)!=48){q=-1;break a}c[g>>2]=0;o=a[s>>0]|0;c[f>>2]=m+1;a[m>>0]=o;q=0;break a}break}default:{}}o=a[s>>0]|0;c[f>>2]=m+1;a[m>>0]=o;c[g>>2]=(c[g>>2]|0)+1;q=0}}while(0);return q|0}function St(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;b=l;l=l+352|0;j=b+208|0;k=b+200|0;m=b+196|0;n=b+184|0;o=b+172|0;p=b+168|0;q=b+8|0;r=b+4|0;s=b;t=b+337|0;u=b+336|0;Tt(n,f,j,k,m);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[o+(f<<2)>>2]=0;f=f+1|0}f=o+11|0;v=o+8|0;if((a[f>>0]|0)<0)w=(c[v>>2]&2147483647)+-1|0;else w=10;SB(o,w,0);w=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=w;c[r>>2]=q;c[s>>2]=0;a[t>>0]=1;a[u>>0]=69;x=o+4|0;y=c[d>>2]|0;z=w;w=y;A=y;a:while(1){if(w){y=c[w+12>>2]|0;if((y|0)==(c[w+16>>2]|0))B=rb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else B=Fq(c[y>>2]|0)|0;if(rr(B,Eq()|0)|0){c[d>>2]=0;C=0;D=0;E=1}else{C=w;D=A;E=0}}else{C=0;D=0;E=1}y=c[e>>2]|0;do if(y){F=c[y+12>>2]|0;if((F|0)==(c[y+16>>2]|0))G=rb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else G=Fq(c[F>>2]|0)|0;if(!(rr(G,Eq()|0)|0))if(E){H=y;break}else{I=z;J=y;break a}else{c[e>>2]=0;K=19;break}}else K=19;while(0);if((K|0)==19){K=0;if(E){I=z;J=0;break}else H=0}y=a[f>>0]|0;F=y<<24>>24<0?c[x>>2]|0:y&255;if((c[p>>2]|0)==(z+F|0)){SB(o,F<<1,0);if((a[f>>0]|0)<0)L=(c[v>>2]&2147483647)+-1|0;else L=10;SB(o,L,0);y=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=y+F;M=y}else M=z;y=C+12|0;F=c[y>>2]|0;N=C+16|0;if((F|0)==(c[N>>2]|0))O=rb[c[(c[C>>2]|0)+36>>2]&127](C)|0;else O=Fq(c[F>>2]|0)|0;if(Ut(O,t,u,M,p,c[k>>2]|0,c[m>>2]|0,n,q,r,s,j)|0){I=M;J=H;break}F=c[y>>2]|0;if((F|0)==(c[N>>2]|0)){rb[c[(c[C>>2]|0)+40>>2]&127](C)|0;z=M;w=C;A=D;continue}else{c[y>>2]=F+4;Fq(c[F>>2]|0)|0;z=M;w=C;A=D;continue}}A=a[n+11>>0]|0;if(!((a[t>>0]|0)==0?1:((A<<24>>24<0?c[n+4>>2]|0:A&255)|0)==0)?(A=c[r>>2]|0,(A-q|0)<160):0){t=c[s>>2]|0;c[r>>2]=A+4;c[A>>2]=t}h[i>>3]=+jt(I,c[p>>2]|0,g);kt(n,q,c[r>>2]|0,g);if(C){r=c[C+12>>2]|0;if((r|0)==(c[C+16>>2]|0))P=rb[c[(c[D>>2]|0)+36>>2]&127](C)|0;else P=Fq(c[r>>2]|0)|0;if(rr(P,Eq()|0)|0){c[d>>2]=0;Q=1}else Q=0}else Q=1;do if(J){P=c[J+12>>2]|0;if((P|0)==(c[J+16>>2]|0))R=rb[c[(c[J>>2]|0)+36>>2]&127](J)|0;else R=Fq(c[P>>2]|0)|0;if(!(rr(R,Eq()|0)|0))if(Q)break;else{K=49;break}else{c[e>>2]=0;K=47;break}}else K=47;while(0);if((K|0)==47?Q:0)K=49;if((K|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;LB(o);LB(n);l=b;return g|0}function Tt(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;qr(h,b);b=Xs(h,40948)|0;xb[c[(c[b>>2]|0)+48>>2]&15](b,34880,34912,d)|0;d=Xs(h,40956)|0;c[e>>2]=rb[c[(c[d>>2]|0)+12>>2]&127](d)|0;c[f>>2]=rb[c[(c[d>>2]|0)+16>>2]&127](d)|0;pb[c[(c[d>>2]|0)+20>>2]&127](a,d);Ys(h);l=g;return}function Ut(b,d,e,f,g,h,i,j,k,l,m,n){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0;o=k;a:do if((b|0)==(h|0))if(a[d>>0]|0){a[d>>0]=0;k=c[g>>2]|0;c[g>>2]=k+1;a[k>>0]=46;k=a[j+11>>0]|0;if(((k<<24>>24<0?c[j+4>>2]|0:k&255)|0)!=0?(k=c[l>>2]|0,(k-o|0)<160):0){p=c[m>>2]|0;c[l>>2]=k+4;c[k>>2]=p;q=0}else q=0}else q=-1;else{if((b|0)==(i|0)?(p=a[j+11>>0]|0,(p<<24>>24<0?c[j+4>>2]|0:p&255)|0):0){if(!(a[d>>0]|0)){q=-1;break}p=c[l>>2]|0;if((p-o|0)>=160){q=0;break}k=c[m>>2]|0;c[l>>2]=p+4;c[p>>2]=k;c[m>>2]=0;q=0;break}k=n+128|0;p=0;while(1){r=n+(p<<2)|0;if((p|0)==32){s=k;break}if((c[r>>2]|0)==(b|0)){s=r;break}else p=p+1|0}p=s-n|0;k=p>>2;if((p|0)<=124){r=a[34880+k>>0]|0;switch(k|0){case 24:case 25:{k=c[g>>2]|0;if((k|0)!=(f|0)?(a[k+-1>>0]&95)!=(a[e>>0]&127):0){q=-1;break a}c[g>>2]=k+1;a[k>>0]=r;q=0;break a;break}case 23:case 22:{a[e>>0]=80;break}default:{k=r&95;if((((k|0)==(a[e>>0]|0)?(a[e>>0]=k|128,a[d>>0]|0):0)?(a[d>>0]=0,k=a[j+11>>0]|0,(k<<24>>24<0?c[j+4>>2]|0:k&255)|0):0)?(k=c[l>>2]|0,(k-o|0)<160):0){t=c[m>>2]|0;c[l>>2]=k+4;c[k>>2]=t}}}t=c[g>>2]|0;c[g>>2]=t+1;a[t>>0]=r;if((p|0)>84)q=0;else{c[m>>2]=(c[m>>2]|0)+1;q=0}}else q=-1}while(0);return q|0}function Vt(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;b=l;l=l+352|0;j=b+208|0;k=b+200|0;m=b+196|0;n=b+184|0;o=b+172|0;p=b+168|0;q=b+8|0;r=b+4|0;s=b;t=b+337|0;u=b+336|0;Tt(n,f,j,k,m);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[o+(f<<2)>>2]=0;f=f+1|0}f=o+11|0;v=o+8|0;if((a[f>>0]|0)<0)w=(c[v>>2]&2147483647)+-1|0;else w=10;SB(o,w,0);w=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=w;c[r>>2]=q;c[s>>2]=0;a[t>>0]=1;a[u>>0]=69;x=o+4|0;y=c[d>>2]|0;z=w;w=y;A=y;a:while(1){if(w){y=c[w+12>>2]|0;if((y|0)==(c[w+16>>2]|0))B=rb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else B=Fq(c[y>>2]|0)|0;if(rr(B,Eq()|0)|0){c[d>>2]=0;C=0;D=0;E=1}else{C=w;D=A;E=0}}else{C=0;D=0;E=1}y=c[e>>2]|0;do if(y){F=c[y+12>>2]|0;if((F|0)==(c[y+16>>2]|0))G=rb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else G=Fq(c[F>>2]|0)|0;if(!(rr(G,Eq()|0)|0))if(E){H=y;break}else{I=z;J=y;break a}else{c[e>>2]=0;K=19;break}}else K=19;while(0);if((K|0)==19){K=0;if(E){I=z;J=0;break}else H=0}y=a[f>>0]|0;F=y<<24>>24<0?c[x>>2]|0:y&255;if((c[p>>2]|0)==(z+F|0)){SB(o,F<<1,0);if((a[f>>0]|0)<0)L=(c[v>>2]&2147483647)+-1|0;else L=10;SB(o,L,0);y=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=y+F;M=y}else M=z;y=C+12|0;F=c[y>>2]|0;N=C+16|0;if((F|0)==(c[N>>2]|0))O=rb[c[(c[C>>2]|0)+36>>2]&127](C)|0;else O=Fq(c[F>>2]|0)|0;if(Ut(O,t,u,M,p,c[k>>2]|0,c[m>>2]|0,n,q,r,s,j)|0){I=M;J=H;break}F=c[y>>2]|0;if((F|0)==(c[N>>2]|0)){rb[c[(c[C>>2]|0)+40>>2]&127](C)|0;z=M;w=C;A=D;continue}else{c[y>>2]=F+4;Fq(c[F>>2]|0)|0;z=M;w=C;A=D;continue}}A=a[n+11>>0]|0;if(!((a[t>>0]|0)==0?1:((A<<24>>24<0?c[n+4>>2]|0:A&255)|0)==0)?(A=c[r>>2]|0,(A-q|0)<160):0){t=c[s>>2]|0;c[r>>2]=A+4;c[A>>2]=t}h[i>>3]=+mt(I,c[p>>2]|0,g);kt(n,q,c[r>>2]|0,g);if(C){r=c[C+12>>2]|0;if((r|0)==(c[C+16>>2]|0))P=rb[c[(c[D>>2]|0)+36>>2]&127](C)|0;else P=Fq(c[r>>2]|0)|0;if(rr(P,Eq()|0)|0){c[d>>2]=0;Q=1}else Q=0}else Q=1;do if(J){P=c[J+12>>2]|0;if((P|0)==(c[J+16>>2]|0))R=rb[c[(c[J>>2]|0)+36>>2]&127](J)|0;else R=Fq(c[P>>2]|0)|0;if(!(rr(R,Eq()|0)|0))if(Q)break;else{K=49;break}else{c[e>>2]=0;K=47;break}}else K=47;while(0);if((K|0)==47?Q:0)K=49;if((K|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;LB(o);LB(n);l=b;return g|0}function Wt(b,d,e,f,h,i){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0;b=l;l=l+352|0;j=b+208|0;k=b+200|0;m=b+196|0;n=b+184|0;o=b+172|0;p=b+168|0;q=b+8|0;r=b+4|0;s=b;t=b+337|0;u=b+336|0;Tt(n,f,j,k,m);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[o+(f<<2)>>2]=0;f=f+1|0}f=o+11|0;v=o+8|0;if((a[f>>0]|0)<0)w=(c[v>>2]&2147483647)+-1|0;else w=10;SB(o,w,0);w=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=w;c[r>>2]=q;c[s>>2]=0;a[t>>0]=1;a[u>>0]=69;x=o+4|0;y=c[d>>2]|0;z=w;w=y;A=y;a:while(1){if(w){y=c[w+12>>2]|0;if((y|0)==(c[w+16>>2]|0))B=rb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else B=Fq(c[y>>2]|0)|0;if(rr(B,Eq()|0)|0){c[d>>2]=0;C=0;D=0;E=1}else{C=w;D=A;E=0}}else{C=0;D=0;E=1}y=c[e>>2]|0;do if(y){F=c[y+12>>2]|0;if((F|0)==(c[y+16>>2]|0))G=rb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else G=Fq(c[F>>2]|0)|0;if(!(rr(G,Eq()|0)|0))if(E){H=y;break}else{I=z;J=y;break a}else{c[e>>2]=0;K=19;break}}else K=19;while(0);if((K|0)==19){K=0;if(E){I=z;J=0;break}else H=0}y=a[f>>0]|0;F=y<<24>>24<0?c[x>>2]|0:y&255;if((c[p>>2]|0)==(z+F|0)){SB(o,F<<1,0);if((a[f>>0]|0)<0)L=(c[v>>2]&2147483647)+-1|0;else L=10;SB(o,L,0);y=(a[f>>0]|0)<0?c[o>>2]|0:o;c[p>>2]=y+F;M=y}else M=z;y=C+12|0;F=c[y>>2]|0;N=C+16|0;if((F|0)==(c[N>>2]|0))O=rb[c[(c[C>>2]|0)+36>>2]&127](C)|0;else O=Fq(c[F>>2]|0)|0;if(Ut(O,t,u,M,p,c[k>>2]|0,c[m>>2]|0,n,q,r,s,j)|0){I=M;J=H;break}F=c[y>>2]|0;if((F|0)==(c[N>>2]|0)){rb[c[(c[C>>2]|0)+40>>2]&127](C)|0;z=M;w=C;A=D;continue}else{c[y>>2]=F+4;Fq(c[F>>2]|0)|0;z=M;w=C;A=D;continue}}A=a[n+11>>0]|0;if(!((a[t>>0]|0)==0?1:((A<<24>>24<0?c[n+4>>2]|0:A&255)|0)==0)?(A=c[r>>2]|0,(A-q|0)<160):0){t=c[s>>2]|0;c[r>>2]=A+4;c[A>>2]=t}g[i>>2]=+ot(I,c[p>>2]|0,h);kt(n,q,c[r>>2]|0,h);if(C){r=c[C+12>>2]|0;if((r|0)==(c[C+16>>2]|0))P=rb[c[(c[D>>2]|0)+36>>2]&127](C)|0;else P=Fq(c[r>>2]|0)|0;if(rr(P,Eq()|0)|0){c[d>>2]=0;Q=1}else Q=0}else Q=1;do if(J){P=c[J+12>>2]|0;if((P|0)==(c[J+16>>2]|0))R=rb[c[(c[J>>2]|0)+36>>2]&127](J)|0;else R=Fq(c[P>>2]|0)|0;if(!(rr(R,Eq()|0)|0))if(Q)break;else{K=49;break}else{c[e>>2]=0;K=47;break}}else K=47;while(0);if((K|0)==47?Q:0)K=49;if((K|0)==49)c[h>>2]=c[h>>2]|2;h=c[d>>2]|0;LB(o);LB(n);l=b;return h|0}function Xt(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;b=l;l=l+304|0;i=b+200|0;j=b+196|0;k=b+184|0;m=b+172|0;n=b+168|0;o=b+8|0;p=b+4|0;q=b;r=qt(f)|0;Yt(k,f,i,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;s=m+8|0;if((a[f>>0]|0)<0)t=(c[s>>2]&2147483647)+-1|0;else t=10;SB(m,t,0);t=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=t;c[p>>2]=o;c[q>>2]=0;u=m+4|0;v=c[d>>2]|0;w=t;t=v;x=v;a:while(1){if(t){v=c[t+12>>2]|0;if((v|0)==(c[t+16>>2]|0))y=rb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else y=Fq(c[v>>2]|0)|0;if(rr(y,Eq()|0)|0){c[d>>2]=0;z=0;B=0;C=1}else{z=t;B=x;C=0}}else{z=0;B=0;C=1}v=c[e>>2]|0;do if(v){D=c[v+12>>2]|0;if((D|0)==(c[v+16>>2]|0))E=rb[c[(c[v>>2]|0)+36>>2]&127](v)|0;else E=Fq(c[D>>2]|0)|0;if(!(rr(E,Eq()|0)|0))if(C){F=v;break}else{G=w;H=v;break a}else{c[e>>2]=0;I=19;break}}else I=19;while(0);if((I|0)==19){I=0;if(C){G=w;H=0;break}else F=0}v=a[f>>0]|0;D=v<<24>>24<0?c[u>>2]|0:v&255;if((c[n>>2]|0)==(w+D|0)){SB(m,D<<1,0);if((a[f>>0]|0)<0)J=(c[s>>2]&2147483647)+-1|0;else J=10;SB(m,J,0);v=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=v+D;K=v}else K=w;v=z+12|0;D=c[v>>2]|0;L=z+16|0;if((D|0)==(c[L>>2]|0))M=rb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else M=Fq(c[D>>2]|0)|0;if(Rt(M,r,K,n,q,c[j>>2]|0,k,o,p,i)|0){G=K;H=F;break}D=c[v>>2]|0;if((D|0)==(c[L>>2]|0)){rb[c[(c[z>>2]|0)+40>>2]&127](z)|0;w=K;t=z;x=B;continue}else{c[v>>2]=D+4;Fq(c[D>>2]|0)|0;w=K;t=z;x=B;continue}}x=a[k+11>>0]|0;if((x<<24>>24<0?c[k+4>>2]|0:x&255)|0?(x=c[p>>2]|0,(x-o|0)<160):0){t=c[q>>2]|0;c[p>>2]=x+4;c[x>>2]=t}t=st(G,c[n>>2]|0,g,r)|0;r=h;c[r>>2]=t;c[r+4>>2]=A;kt(k,o,c[p>>2]|0,g);if(z){p=c[z+12>>2]|0;if((p|0)==(c[z+16>>2]|0))N=rb[c[(c[B>>2]|0)+36>>2]&127](z)|0;else N=Fq(c[p>>2]|0)|0;if(rr(N,Eq()|0)|0){c[d>>2]=0;O=1}else O=0}else O=1;do if(H){N=c[H+12>>2]|0;if((N|0)==(c[H+16>>2]|0))P=rb[c[(c[H>>2]|0)+36>>2]&127](H)|0;else P=Fq(c[N>>2]|0)|0;if(!(rr(P,Eq()|0)|0))if(O)break;else{I=49;break}else{c[e>>2]=0;I=47;break}}else I=47;while(0);if((I|0)==47?O:0)I=49;if((I|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;LB(m);LB(k);l=b;return g|0}function Yt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;qr(g,b);b=Xs(g,40948)|0;xb[c[(c[b>>2]|0)+48>>2]&15](b,34880,34906,d)|0;d=Xs(g,40956)|0;c[e>>2]=rb[c[(c[d>>2]|0)+16>>2]&127](d)|0;pb[c[(c[d>>2]|0)+20>>2]&127](a,d);Ys(g);l=f;return}function Zt(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;b=l;l=l+304|0;i=b+200|0;j=b+196|0;k=b+184|0;m=b+172|0;n=b+168|0;o=b+8|0;p=b+4|0;q=b;r=qt(f)|0;Yt(k,f,i,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;s=m+8|0;if((a[f>>0]|0)<0)t=(c[s>>2]&2147483647)+-1|0;else t=10;SB(m,t,0);t=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=t;c[p>>2]=o;c[q>>2]=0;u=m+4|0;v=c[d>>2]|0;w=t;t=v;x=v;a:while(1){if(t){v=c[t+12>>2]|0;if((v|0)==(c[t+16>>2]|0))y=rb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else y=Fq(c[v>>2]|0)|0;if(rr(y,Eq()|0)|0){c[d>>2]=0;z=0;A=0;B=1}else{z=t;A=x;B=0}}else{z=0;A=0;B=1}v=c[e>>2]|0;do if(v){C=c[v+12>>2]|0;if((C|0)==(c[v+16>>2]|0))D=rb[c[(c[v>>2]|0)+36>>2]&127](v)|0;else D=Fq(c[C>>2]|0)|0;if(!(rr(D,Eq()|0)|0))if(B){E=v;break}else{F=w;G=v;break a}else{c[e>>2]=0;H=19;break}}else H=19;while(0);if((H|0)==19){H=0;if(B){F=w;G=0;break}else E=0}v=a[f>>0]|0;C=v<<24>>24<0?c[u>>2]|0:v&255;if((c[n>>2]|0)==(w+C|0)){SB(m,C<<1,0);if((a[f>>0]|0)<0)I=(c[s>>2]&2147483647)+-1|0;else I=10;SB(m,I,0);v=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=v+C;J=v}else J=w;v=z+12|0;C=c[v>>2]|0;K=z+16|0;if((C|0)==(c[K>>2]|0))L=rb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else L=Fq(c[C>>2]|0)|0;if(Rt(L,r,J,n,q,c[j>>2]|0,k,o,p,i)|0){F=J;G=E;break}C=c[v>>2]|0;if((C|0)==(c[K>>2]|0)){rb[c[(c[z>>2]|0)+40>>2]&127](z)|0;w=J;t=z;x=A;continue}else{c[v>>2]=C+4;Fq(c[C>>2]|0)|0;w=J;t=z;x=A;continue}}x=a[k+11>>0]|0;if((x<<24>>24<0?c[k+4>>2]|0:x&255)|0?(x=c[p>>2]|0,(x-o|0)<160):0){t=c[q>>2]|0;c[p>>2]=x+4;c[x>>2]=t}c[h>>2]=ut(F,c[n>>2]|0,g,r)|0;kt(k,o,c[p>>2]|0,g);if(z){p=c[z+12>>2]|0;if((p|0)==(c[z+16>>2]|0))M=rb[c[(c[A>>2]|0)+36>>2]&127](z)|0;else M=Fq(c[p>>2]|0)|0;if(rr(M,Eq()|0)|0){c[d>>2]=0;N=1}else N=0}else N=1;do if(G){M=c[G+12>>2]|0;if((M|0)==(c[G+16>>2]|0))O=rb[c[(c[G>>2]|0)+36>>2]&127](G)|0;else O=Fq(c[M>>2]|0)|0;if(!(rr(O,Eq()|0)|0))if(N)break;else{H=49;break}else{c[e>>2]=0;H=47;break}}else H=47;while(0);if((H|0)==47?N:0)H=49;if((H|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;LB(m);LB(k);l=b;return g|0}function _t(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;b=l;l=l+304|0;i=b+200|0;j=b+196|0;k=b+184|0;m=b+172|0;n=b+168|0;o=b+8|0;p=b+4|0;q=b;r=qt(f)|0;Yt(k,f,i,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;s=m+8|0;if((a[f>>0]|0)<0)t=(c[s>>2]&2147483647)+-1|0;else t=10;SB(m,t,0);t=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=t;c[p>>2]=o;c[q>>2]=0;u=m+4|0;v=c[d>>2]|0;w=t;t=v;x=v;a:while(1){if(t){v=c[t+12>>2]|0;if((v|0)==(c[t+16>>2]|0))y=rb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else y=Fq(c[v>>2]|0)|0;if(rr(y,Eq()|0)|0){c[d>>2]=0;z=0;A=0;B=1}else{z=t;A=x;B=0}}else{z=0;A=0;B=1}v=c[e>>2]|0;do if(v){C=c[v+12>>2]|0;if((C|0)==(c[v+16>>2]|0))D=rb[c[(c[v>>2]|0)+36>>2]&127](v)|0;else D=Fq(c[C>>2]|0)|0;if(!(rr(D,Eq()|0)|0))if(B){E=v;break}else{F=w;G=v;break a}else{c[e>>2]=0;H=19;break}}else H=19;while(0);if((H|0)==19){H=0;if(B){F=w;G=0;break}else E=0}v=a[f>>0]|0;C=v<<24>>24<0?c[u>>2]|0:v&255;if((c[n>>2]|0)==(w+C|0)){SB(m,C<<1,0);if((a[f>>0]|0)<0)I=(c[s>>2]&2147483647)+-1|0;else I=10;SB(m,I,0);v=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=v+C;J=v}else J=w;v=z+12|0;C=c[v>>2]|0;K=z+16|0;if((C|0)==(c[K>>2]|0))L=rb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else L=Fq(c[C>>2]|0)|0;if(Rt(L,r,J,n,q,c[j>>2]|0,k,o,p,i)|0){F=J;G=E;break}C=c[v>>2]|0;if((C|0)==(c[K>>2]|0)){rb[c[(c[z>>2]|0)+40>>2]&127](z)|0;w=J;t=z;x=A;continue}else{c[v>>2]=C+4;Fq(c[C>>2]|0)|0;w=J;t=z;x=A;continue}}x=a[k+11>>0]|0;if((x<<24>>24<0?c[k+4>>2]|0:x&255)|0?(x=c[p>>2]|0,(x-o|0)<160):0){t=c[q>>2]|0;c[p>>2]=x+4;c[x>>2]=t}c[h>>2]=wt(F,c[n>>2]|0,g,r)|0;kt(k,o,c[p>>2]|0,g);if(z){p=c[z+12>>2]|0;if((p|0)==(c[z+16>>2]|0))M=rb[c[(c[A>>2]|0)+36>>2]&127](z)|0;else M=Fq(c[p>>2]|0)|0;if(rr(M,Eq()|0)|0){c[d>>2]=0;N=1}else N=0}else N=1;do if(G){M=c[G+12>>2]|0;if((M|0)==(c[G+16>>2]|0))O=rb[c[(c[G>>2]|0)+36>>2]&127](G)|0;else O=Fq(c[M>>2]|0)|0;if(!(rr(O,Eq()|0)|0))if(N)break;else{H=49;break}else{c[e>>2]=0;H=47;break}}else H=47;while(0);if((H|0)==47?N:0)H=49;if((H|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;LB(m);LB(k);l=b;return g|0}function $t(d,e,f,g,h,i){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;d=l;l=l+304|0;j=d+200|0;k=d+196|0;m=d+184|0;n=d+172|0;o=d+168|0;p=d+8|0;q=d+4|0;r=d;s=qt(g)|0;Yt(m,g,j,k);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;g=0;while(1){if((g|0)==3)break;c[n+(g<<2)>>2]=0;g=g+1|0}g=n+11|0;t=n+8|0;if((a[g>>0]|0)<0)u=(c[t>>2]&2147483647)+-1|0;else u=10;SB(n,u,0);u=(a[g>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=u;c[q>>2]=p;c[r>>2]=0;v=n+4|0;w=c[e>>2]|0;x=u;u=w;y=w;a:while(1){if(u){w=c[u+12>>2]|0;if((w|0)==(c[u+16>>2]|0))z=rb[c[(c[u>>2]|0)+36>>2]&127](u)|0;else z=Fq(c[w>>2]|0)|0;if(rr(z,Eq()|0)|0){c[e>>2]=0;A=0;B=0;C=1}else{A=u;B=y;C=0}}else{A=0;B=0;C=1}w=c[f>>2]|0;do if(w){D=c[w+12>>2]|0;if((D|0)==(c[w+16>>2]|0))E=rb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else E=Fq(c[D>>2]|0)|0;if(!(rr(E,Eq()|0)|0))if(C){F=w;break}else{G=x;H=w;break a}else{c[f>>2]=0;I=19;break}}else I=19;while(0);if((I|0)==19){I=0;if(C){G=x;H=0;break}else F=0}w=a[g>>0]|0;D=w<<24>>24<0?c[v>>2]|0:w&255;if((c[o>>2]|0)==(x+D|0)){SB(n,D<<1,0);if((a[g>>0]|0)<0)J=(c[t>>2]&2147483647)+-1|0;else J=10;SB(n,J,0);w=(a[g>>0]|0)<0?c[n>>2]|0:n;c[o>>2]=w+D;K=w}else K=x;w=A+12|0;D=c[w>>2]|0;L=A+16|0;if((D|0)==(c[L>>2]|0))M=rb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else M=Fq(c[D>>2]|0)|0;if(Rt(M,s,K,o,r,c[k>>2]|0,m,p,q,j)|0){G=K;H=F;break}D=c[w>>2]|0;if((D|0)==(c[L>>2]|0)){rb[c[(c[A>>2]|0)+40>>2]&127](A)|0;x=K;u=A;y=B;continue}else{c[w>>2]=D+4;Fq(c[D>>2]|0)|0;x=K;u=A;y=B;continue}}y=a[m+11>>0]|0;if((y<<24>>24<0?c[m+4>>2]|0:y&255)|0?(y=c[q>>2]|0,(y-p|0)<160):0){u=c[r>>2]|0;c[q>>2]=y+4;c[y>>2]=u}b[i>>1]=yt(G,c[o>>2]|0,h,s)|0;kt(m,p,c[q>>2]|0,h);if(A){q=c[A+12>>2]|0;if((q|0)==(c[A+16>>2]|0))N=rb[c[(c[B>>2]|0)+36>>2]&127](A)|0;else N=Fq(c[q>>2]|0)|0;if(rr(N,Eq()|0)|0){c[e>>2]=0;O=1}else O=0}else O=1;do if(H){N=c[H+12>>2]|0;if((N|0)==(c[H+16>>2]|0))P=rb[c[(c[H>>2]|0)+36>>2]&127](H)|0;else P=Fq(c[N>>2]|0)|0;if(!(rr(P,Eq()|0)|0))if(O)break;else{I=49;break}else{c[f>>2]=0;I=47;break}}else I=47;while(0);if((I|0)==47?O:0)I=49;if((I|0)==49)c[h>>2]=c[h>>2]|2;h=c[e>>2]|0;LB(n);LB(m);l=d;return h|0}function au(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;b=l;l=l+304|0;i=b+200|0;j=b+196|0;k=b+184|0;m=b+172|0;n=b+168|0;o=b+8|0;p=b+4|0;q=b;r=qt(f)|0;Yt(k,f,i,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;s=m+8|0;if((a[f>>0]|0)<0)t=(c[s>>2]&2147483647)+-1|0;else t=10;SB(m,t,0);t=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=t;c[p>>2]=o;c[q>>2]=0;u=m+4|0;v=c[d>>2]|0;w=t;t=v;x=v;a:while(1){if(t){v=c[t+12>>2]|0;if((v|0)==(c[t+16>>2]|0))y=rb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else y=Fq(c[v>>2]|0)|0;if(rr(y,Eq()|0)|0){c[d>>2]=0;z=0;B=0;C=1}else{z=t;B=x;C=0}}else{z=0;B=0;C=1}v=c[e>>2]|0;do if(v){D=c[v+12>>2]|0;if((D|0)==(c[v+16>>2]|0))E=rb[c[(c[v>>2]|0)+36>>2]&127](v)|0;else E=Fq(c[D>>2]|0)|0;if(!(rr(E,Eq()|0)|0))if(C){F=v;break}else{G=w;H=v;break a}else{c[e>>2]=0;I=19;break}}else I=19;while(0);if((I|0)==19){I=0;if(C){G=w;H=0;break}else F=0}v=a[f>>0]|0;D=v<<24>>24<0?c[u>>2]|0:v&255;if((c[n>>2]|0)==(w+D|0)){SB(m,D<<1,0);if((a[f>>0]|0)<0)J=(c[s>>2]&2147483647)+-1|0;else J=10;SB(m,J,0);v=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=v+D;K=v}else K=w;v=z+12|0;D=c[v>>2]|0;L=z+16|0;if((D|0)==(c[L>>2]|0))M=rb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else M=Fq(c[D>>2]|0)|0;if(Rt(M,r,K,n,q,c[j>>2]|0,k,o,p,i)|0){G=K;H=F;break}D=c[v>>2]|0;if((D|0)==(c[L>>2]|0)){rb[c[(c[z>>2]|0)+40>>2]&127](z)|0;w=K;t=z;x=B;continue}else{c[v>>2]=D+4;Fq(c[D>>2]|0)|0;w=K;t=z;x=B;continue}}x=a[k+11>>0]|0;if((x<<24>>24<0?c[k+4>>2]|0:x&255)|0?(x=c[p>>2]|0,(x-o|0)<160):0){t=c[q>>2]|0;c[p>>2]=x+4;c[x>>2]=t}t=At(G,c[n>>2]|0,g,r)|0;r=h;c[r>>2]=t;c[r+4>>2]=A;kt(k,o,c[p>>2]|0,g);if(z){p=c[z+12>>2]|0;if((p|0)==(c[z+16>>2]|0))N=rb[c[(c[B>>2]|0)+36>>2]&127](z)|0;else N=Fq(c[p>>2]|0)|0;if(rr(N,Eq()|0)|0){c[d>>2]=0;O=1}else O=0}else O=1;do if(H){N=c[H+12>>2]|0;if((N|0)==(c[H+16>>2]|0))P=rb[c[(c[H>>2]|0)+36>>2]&127](H)|0;else P=Fq(c[N>>2]|0)|0;if(!(rr(P,Eq()|0)|0))if(O)break;else{I=49;break}else{c[e>>2]=0;I=47;break}}else I=47;while(0);if((I|0)==47?O:0)I=49;if((I|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;LB(m);LB(k);l=b;return g|0}function bu(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;b=l;l=l+304|0;i=b+200|0;j=b+196|0;k=b+184|0;m=b+172|0;n=b+168|0;o=b+8|0;p=b+4|0;q=b;r=qt(f)|0;Yt(k,f,i,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;f=0;while(1){if((f|0)==3)break;c[m+(f<<2)>>2]=0;f=f+1|0}f=m+11|0;s=m+8|0;if((a[f>>0]|0)<0)t=(c[s>>2]&2147483647)+-1|0;else t=10;SB(m,t,0);t=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=t;c[p>>2]=o;c[q>>2]=0;u=m+4|0;v=c[d>>2]|0;w=t;t=v;x=v;a:while(1){if(t){v=c[t+12>>2]|0;if((v|0)==(c[t+16>>2]|0))y=rb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else y=Fq(c[v>>2]|0)|0;if(rr(y,Eq()|0)|0){c[d>>2]=0;z=0;A=0;B=1}else{z=t;A=x;B=0}}else{z=0;A=0;B=1}v=c[e>>2]|0;do if(v){C=c[v+12>>2]|0;if((C|0)==(c[v+16>>2]|0))D=rb[c[(c[v>>2]|0)+36>>2]&127](v)|0;else D=Fq(c[C>>2]|0)|0;if(!(rr(D,Eq()|0)|0))if(B){E=v;break}else{F=w;G=v;break a}else{c[e>>2]=0;H=19;break}}else H=19;while(0);if((H|0)==19){H=0;if(B){F=w;G=0;break}else E=0}v=a[f>>0]|0;C=v<<24>>24<0?c[u>>2]|0:v&255;if((c[n>>2]|0)==(w+C|0)){SB(m,C<<1,0);if((a[f>>0]|0)<0)I=(c[s>>2]&2147483647)+-1|0;else I=10;SB(m,I,0);v=(a[f>>0]|0)<0?c[m>>2]|0:m;c[n>>2]=v+C;J=v}else J=w;v=z+12|0;C=c[v>>2]|0;K=z+16|0;if((C|0)==(c[K>>2]|0))L=rb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else L=Fq(c[C>>2]|0)|0;if(Rt(L,r,J,n,q,c[j>>2]|0,k,o,p,i)|0){F=J;G=E;break}C=c[v>>2]|0;if((C|0)==(c[K>>2]|0)){rb[c[(c[z>>2]|0)+40>>2]&127](z)|0;w=J;t=z;x=A;continue}else{c[v>>2]=C+4;Fq(c[C>>2]|0)|0;w=J;t=z;x=A;continue}}x=a[k+11>>0]|0;if((x<<24>>24<0?c[k+4>>2]|0:x&255)|0?(x=c[p>>2]|0,(x-o|0)<160):0){t=c[q>>2]|0;c[p>>2]=x+4;c[x>>2]=t}c[h>>2]=Ct(F,c[n>>2]|0,g,r)|0;kt(k,o,c[p>>2]|0,g);if(z){p=c[z+12>>2]|0;if((p|0)==(c[z+16>>2]|0))M=rb[c[(c[A>>2]|0)+36>>2]&127](z)|0;else M=Fq(c[p>>2]|0)|0;if(rr(M,Eq()|0)|0){c[d>>2]=0;N=1}else N=0}else N=1;do if(G){M=c[G+12>>2]|0;if((M|0)==(c[G+16>>2]|0))O=rb[c[(c[G>>2]|0)+36>>2]&127](G)|0;else O=Fq(c[M>>2]|0)|0;if(!(rr(O,Eq()|0)|0))if(N)break;else{H=49;break}else{c[e>>2]=0;H=47;break}}else H=47;while(0);if((H|0)==47?N:0)H=49;if((H|0)==49)c[g>>2]=c[g>>2]|2;g=c[d>>2]|0;LB(m);LB(k);l=b;return g|0}function cu(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;j=l;l=l+112|0;k=j;m=(f-e|0)/12|0;if(m>>>0>100){n=Pp(m)|0;if(!n){o=0;p=0}else{o=n;p=n}}else{o=k;p=0}k=0;n=m;m=e;q=o;while(1){if((m|0)==(f|0))break;r=a[m+8+3>>0]|0;if(r<<24>>24<0)s=c[m+4>>2]|0;else s=r&255;if(!s){a[q>>0]=2;t=k+1|0;u=n+-1|0}else{a[q>>0]=1;t=k;u=n}k=t;n=u;m=m+12|0;q=q+1|0}q=0;m=k;k=n;a:while(1){n=c[b>>2]|0;do if(n){u=c[n+12>>2]|0;if((u|0)==(c[n+16>>2]|0))v=rb[c[(c[n>>2]|0)+36>>2]&127](n)|0;else v=Fq(c[u>>2]|0)|0;if(rr(v,Eq()|0)|0){c[b>>2]=0;w=1;break}else{w=(c[b>>2]|0)==0;break}}else w=1;while(0);n=c[d>>2]|0;if(n){u=c[n+12>>2]|0;if((u|0)==(c[n+16>>2]|0))x=rb[c[(c[n>>2]|0)+36>>2]&127](n)|0;else x=Fq(c[u>>2]|0)|0;if(rr(x,Eq()|0)|0){c[d>>2]=0;y=0;z=1}else{y=n;z=0}}else{y=0;z=1}A=c[b>>2]|0;if(!((k|0)!=0&(w^z)))break;n=c[A+12>>2]|0;if((n|0)==(c[A+16>>2]|0))B=rb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else B=Fq(c[n>>2]|0)|0;if(i)C=B;else C=zb[c[(c[g>>2]|0)+28>>2]&63](g,B)|0;n=q+1|0;u=e;t=0;s=o;r=m;D=k;while(1){if((u|0)==(f|0))break;do if((a[s>>0]|0)==1){E=u+8+3|0;if((a[E>>0]|0)<0)F=c[u>>2]|0;else F=u;G=c[F+(q<<2)>>2]|0;if(i)H=G;else H=zb[c[(c[g>>2]|0)+28>>2]&63](g,G)|0;G=D+-1|0;if((C|0)!=(H|0)){a[s>>0]=0;I=t;J=r;K=G;break}L=a[E>>0]|0;if(L<<24>>24<0)M=c[u+4>>2]|0;else M=L&255;if((M|0)==(n|0)){a[s>>0]=2;I=1;J=r+1|0;K=G}else{I=1;J=r;K=D}}else{I=t;J=r;K=D}while(0);u=u+12|0;t=I;s=s+1|0;r=J;D=K}if(!t){q=n;m=r;k=D;continue}s=c[b>>2]|0;u=s+12|0;G=c[u>>2]|0;if((G|0)==(c[s+16>>2]|0))rb[c[(c[s>>2]|0)+40>>2]&127](s)|0;else{c[u>>2]=G+4;Fq(c[G>>2]|0)|0}if((r+D|0)>>>0>1){N=e;O=o;P=r}else{q=n;m=r;k=D;continue}while(1){if((N|0)==(f|0)){q=n;m=P;k=D;continue a}if((a[O>>0]|0)==2){G=a[N+8+3>>0]|0;if(G<<24>>24<0)Q=c[N+4>>2]|0;else Q=G&255;if((Q|0)!=(n|0)){a[O>>0]=0;R=P+-1|0}else R=P}else R=P;N=N+12|0;O=O+1|0;P=R}}do if(A){R=c[A+12>>2]|0;if((R|0)==(c[A+16>>2]|0))S=rb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else S=Fq(c[R>>2]|0)|0;if(rr(S,Eq()|0)|0){c[b>>2]=0;T=1;break}else{T=(c[b>>2]|0)==0;break}}else T=1;while(0);do if(y){b=c[y+12>>2]|0;if((b|0)==(c[y+16>>2]|0))U=rb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else U=Fq(c[b>>2]|0)|0;if(!(rr(U,Eq()|0)|0))if(T){V=e;W=o;break}else{X=77;break}else{c[d>>2]=0;X=41;break}}else X=41;while(0);if((X|0)==41)if(T)X=77;else{V=e;W=o}if((X|0)==77){c[h>>2]=c[h>>2]|2;V=e;W=o}while(1){if((V|0)==(f|0)){X=81;break}if((a[W>>0]|0)==2){Y=V;break}V=V+12|0;W=W+1|0}if((X|0)==81){c[h>>2]=c[h>>2]|4;Y=f}Qp(p);l=j;return Y|0}function du(a){a=a|0;Cs(a);return}function eu(a){a=a|0;Cs(a);tB(a);return}function fu(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=l;l=l+16|0;i=h+4|0;j=h;if(!(c[e+4>>2]&1)){k=c[(c[b>>2]|0)+24>>2]|0;c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];m=Bb[k&31](b,i,e,f,g&1)|0}else{qr(i,e);e=Xs(i,40932)|0;Ys(i);f=c[e>>2]|0;if(g)pb[c[f+24>>2]&127](i,e);else pb[c[f+28>>2]&127](i,e);e=i+11|0;f=a[e>>0]|0;if(f<<24>>24<0){n=f;o=c[i>>2]|0;p=8}else{q=i;r=f}while(1){if((p|0)==8){p=0;q=o;r=n}f=r<<24>>24<0;if((q|0)==((f?c[i>>2]|0:i)+(f?c[i+4>>2]|0:r&255)|0))break;f=a[q>>0]|0;g=c[d>>2]|0;if(g|0){b=g+24|0;k=c[b>>2]|0;if((k|0)==(c[g+28>>2]|0)){j=c[(c[g>>2]|0)+52>>2]|0;s=nq(f)|0;t=zb[j&63](g,s)|0}else{c[b>>2]=k+1;a[k>>0]=f;t=nq(f)|0}if(pr(t,mq()|0)|0)c[d>>2]=0}n=a[e>>0]|0;o=q+1|0;p=8}p=c[d>>2]|0;LB(i);m=p}l=h;return m|0}function gu(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;b=l;l=l+64|0;h=b;i=b+52|0;j=b+39|0;k=b+16|0;m=b+12|0;n=b+4|0;o=b+8|0;a[i>>0]=a[35134]|0;a[i+1>>0]=a[35135]|0;a[i+2>>0]=a[35136]|0;a[i+3>>0]=a[35137]|0;a[i+4>>0]=a[35138]|0;a[i+5>>0]=a[35139]|0;su(i+1|0,35140,1,c[e+4>>2]|0);p=_s()|0;c[h>>2]=g;g=j+(nu(j,13,p,i,h)|0)|0;i=ou(j,g,e)|0;qr(h,e);tu(j,i,g,k,m,n,h);Ys(h);c[o>>2]=c[d>>2];d=c[m>>2]|0;m=c[n>>2]|0;c[h>>2]=c[o>>2];o=Ie(h,k,d,m,e,f)|0;l=b;return o|0}function hu(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;a=l;l=l+96|0;h=a+8|0;i=a;j=a+71|0;k=a+28|0;m=a+24|0;n=a+16|0;o=a+20|0;p=i;c[p>>2]=37;c[p+4>>2]=0;su(i+1|0,35131,1,c[d+4>>2]|0);p=_s()|0;q=h;c[q>>2]=f;c[q+4>>2]=g;g=j+(nu(j,23,p,i,h)|0)|0;i=ou(j,g,d)|0;qr(h,d);tu(j,i,g,k,m,n,h);Ys(h);c[o>>2]=c[b>>2];b=c[m>>2]|0;m=c[n>>2]|0;c[h>>2]=c[o>>2];o=Ie(h,k,b,m,d,e)|0;l=a;return o|0}function iu(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;b=l;l=l+64|0;h=b;i=b+52|0;j=b+40|0;k=b+16|0;m=b+12|0;n=b+4|0;o=b+8|0;a[i>>0]=a[35134]|0;a[i+1>>0]=a[35135]|0;a[i+2>>0]=a[35136]|0;a[i+3>>0]=a[35137]|0;a[i+4>>0]=a[35138]|0;a[i+5>>0]=a[35139]|0;su(i+1|0,35140,0,c[e+4>>2]|0);p=_s()|0;c[h>>2]=g;g=j+(nu(j,12,p,i,h)|0)|0;i=ou(j,g,e)|0;qr(h,e);tu(j,i,g,k,m,n,h);Ys(h);c[o>>2]=c[d>>2];d=c[m>>2]|0;m=c[n>>2]|0;c[h>>2]=c[o>>2];o=Ie(h,k,d,m,e,f)|0;l=b;return o|0}function ju(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;a=l;l=l+96|0;h=a+8|0;i=a;j=a+71|0;k=a+28|0;m=a+24|0;n=a+16|0;o=a+20|0;p=i;c[p>>2]=37;c[p+4>>2]=0;su(i+1|0,35131,0,c[d+4>>2]|0);p=_s()|0;q=h;c[q>>2]=f;c[q+4>>2]=g;g=j+(nu(j,23,p,i,h)|0)|0;i=ou(j,g,d)|0;qr(h,d);tu(j,i,g,k,m,n,h);Ys(h);c[o>>2]=c[b>>2];b=c[m>>2]|0;m=c[n>>2]|0;c[h>>2]=c[o>>2];o=Ie(h,k,b,m,d,e)|0;l=a;return o|0}function ku(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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;a=l;l=l+176|0;g=a+72|0;i=a+48|0;j=a+32|0;k=a+24|0;m=a+8|0;n=a;o=a+134|0;p=a+68|0;q=a+76|0;r=a+64|0;s=a+60|0;t=a+56|0;u=n;c[u>>2]=37;c[u+4>>2]=0;u=pu(n+1|0,44918,c[d+4>>2]|0)|0;c[p>>2]=o;v=_s()|0;if(u){c[m>>2]=c[d+8>>2];h[m+8>>3]=f;w=nu(o,30,v,n,m)|0}else{h[k>>3]=f;w=nu(o,30,v,n,k)|0}if((w|0)>29){k=_s()|0;if(u){c[j>>2]=c[d+8>>2];h[j+8>>3]=f;x=qu(p,k,n,j)|0}else{h[i>>3]=f;x=qu(p,k,n,i)|0}i=c[p>>2]|0;if(!i){n=c[p>>2]|0;y=x;z=n;A=n}else{y=x;z=i;A=i}}else{y=w;z=0;A=c[p>>2]|0}w=A+y|0;i=ou(A,w,d)|0;if((A|0)!=(o|0)){x=Pp(y<<1)|0;if(!x){B=0;C=0;D=c[p>>2]|0}else{B=x;C=x;D=A}}else{B=q;C=0;D=o}qr(g,d);ru(D,i,w,B,r,s,g);Ys(g);c[t>>2]=c[b>>2];b=c[r>>2]|0;r=c[s>>2]|0;c[g>>2]=c[t>>2];t=Ie(g,B,b,r,d,e)|0;Qp(C);Qp(z);l=a;return t|0}function lu(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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;a=l;l=l+176|0;g=a+72|0;i=a+48|0;j=a+32|0;k=a+24|0;m=a+8|0;n=a;o=a+134|0;p=a+68|0;q=a+76|0;r=a+64|0;s=a+60|0;t=a+56|0;u=n;c[u>>2]=37;c[u+4>>2]=0;u=pu(n+1|0,35129,c[d+4>>2]|0)|0;c[p>>2]=o;v=_s()|0;if(u){c[m>>2]=c[d+8>>2];h[m+8>>3]=f;w=nu(o,30,v,n,m)|0}else{h[k>>3]=f;w=nu(o,30,v,n,k)|0}if((w|0)>29){k=_s()|0;if(u){c[j>>2]=c[d+8>>2];h[j+8>>3]=f;x=qu(p,k,n,j)|0}else{h[i>>3]=f;x=qu(p,k,n,i)|0}i=c[p>>2]|0;if(!i){n=c[p>>2]|0;y=x;z=n;A=n}else{y=x;z=i;A=i}}else{y=w;z=0;A=c[p>>2]|0}w=A+y|0;i=ou(A,w,d)|0;if((A|0)!=(o|0)){x=Pp(y<<1)|0;if(!x){B=0;C=0;D=c[p>>2]|0}else{B=x;C=x;D=A}}else{B=q;C=0;D=o}qr(g,d);ru(D,i,w,B,r,s,g);Ys(g);c[t>>2]=c[b>>2];b=c[r>>2]|0;r=c[s>>2]|0;c[g>>2]=c[t>>2];t=Ie(g,B,b,r,d,e)|0;Qp(C);Qp(z);l=a;return t|0}function mu(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;b=l;l=l+80|0;h=b;i=b+68|0;j=b+48|0;k=b+8|0;m=b+4|0;a[i>>0]=a[35123]|0;a[i+1>>0]=a[35124]|0;a[i+2>>0]=a[35125]|0;a[i+3>>0]=a[35126]|0;a[i+4>>0]=a[35127]|0;a[i+5>>0]=a[35128]|0;n=_s()|0;c[h>>2]=g;g=nu(j,20,n,i,h)|0;i=j+g|0;n=ou(j,i,e)|0;qr(h,e);o=Xs(h,40916)|0;Ys(h);xb[c[(c[o>>2]|0)+32>>2]&15](o,j,i,k)|0;o=k+g|0;c[m>>2]=c[d>>2];c[h>>2]=c[m>>2];m=Ie(h,k,(n|0)==(i|0)?o:k+(n-j)|0,o,e,f)|0;l=b;return m|0}function nu(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;c[h>>2]=f;f=up(d)|0;d=Dn(a,b,e,h)|0;if(f|0)up(f)|0;l=g;return d|0}function ou(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;a:do switch((c[e+4>>2]&176)<<24>>24){case 16:{f=a[b>>0]|0;g=b+1|0;switch(f<<24>>24){case 43:case 45:{h=g;break a;break}default:{}}if((d-b|0)>1&f<<24>>24==48){switch(a[g>>0]|0){case 88:case 120:break;default:{i=6;break a}}h=b+2|0}else i=6;break}case 32:{h=d;break}default:i=6}while(0);if((i|0)==6)h=b;return h|0}function pu(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&2048))e=b;else{a[b>>0]=43;e=b+1|0}if(!(d&1024))f=e;else{a[e>>0]=35;f=e+1|0}e=d&260;b=(d&16384|0)!=0;d=(e|0)==260;if(d){g=0;h=f}else{a[f>>0]=46;a[f+1>>0]=42;g=1;h=f+2|0}f=c;c=h;while(1){h=a[f>>0]|0;if(!(h<<24>>24))break;a[c>>0]=h;f=f+1|0;c=c+1|0}a:do switch(e&511){case 4:{i=b?70:102;break}case 256:{i=b?69:101;break}default:if(d){i=b?65:97;break a}else{i=b?71:103;break a}}while(0);a[c>>0]=i;return g|0}function qu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=up(b)|0;b=Kp(a,d,g)|0;if(e|0)up(e)|0;l=f;return b|0}function ru(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0;j=l;l=l+16|0;k=j;m=Xs(i,40916)|0;n=Xs(i,40932)|0;pb[c[(c[n>>2]|0)+20>>2]&127](k,n);c[h>>2]=f;i=a[b>>0]|0;switch(i<<24>>24){case 43:case 45:{o=zb[c[(c[m>>2]|0)+28>>2]&63](m,i)|0;i=c[h>>2]|0;c[h>>2]=i+1;a[i>>0]=o;p=b+1|0;break}default:p=b}o=e;a:do if((o-p|0)>1?(a[p>>0]|0)==48:0){i=p+1|0;switch(a[i>>0]|0){case 88:case 120:break;default:{q=p;r=10;break a}}s=zb[c[(c[m>>2]|0)+28>>2]&63](m,48)|0;t=c[h>>2]|0;c[h>>2]=t+1;a[t>>0]=s;s=p+2|0;t=zb[c[(c[m>>2]|0)+28>>2]&63](m,a[i>>0]|0)|0;i=c[h>>2]|0;c[h>>2]=i+1;a[i>>0]=t;t=s;while(1){if(t>>>0>=e>>>0){u=s;v=t;break a}i=a[t>>0]|0;if(!(Dp(i,_s()|0)|0)){u=s;v=t;break a}t=t+1|0}}else{q=p;r=10}while(0);b:do if((r|0)==10)while(1){r=0;if(q>>>0>=e>>>0){u=p;v=q;break b}t=a[q>>0]|0;if(!(xp(t,_s()|0)|0)){u=p;v=q;break b}q=q+1|0;r=10}while(0);q=k+11|0;p=a[q>>0]|0;t=k+4|0;s=u;i=b;c:do if((p<<24>>24<0?c[t>>2]|0:p&255)|0){d:do if((u|0)!=(v|0)){b=v;w=u;while(1){x=b+-1|0;if(w>>>0>=x>>>0)break d;y=a[w>>0]|0;a[w>>0]=a[x>>0]|0;a[x>>0]=y;b=x;w=w+1|0}}while(0);w=rb[c[(c[n>>2]|0)+16>>2]&127](n)|0;b=u;x=0;y=0;while(1){if(b>>>0>=v>>>0)break;z=a[((a[q>>0]|0)<0?c[k>>2]|0:k)+y>>0]|0;if(z<<24>>24>0&(x|0)==(z<<24>>24|0)){z=c[h>>2]|0;c[h>>2]=z+1;a[z>>0]=w;z=a[q>>0]|0;A=(y>>>0<((z<<24>>24<0?c[t>>2]|0:z&255)+-1|0)>>>0&1)+y|0;B=0}else{A=y;B=x}z=zb[c[(c[m>>2]|0)+28>>2]&63](m,a[b>>0]|0)|0;C=c[h>>2]|0;c[h>>2]=C+1;a[C>>0]=z;b=b+1|0;x=B+1|0;y=A}y=f+(s-i)|0;x=c[h>>2]|0;if((y|0)==(x|0))D=m;else{b=x;x=y;while(1){y=b+-1|0;if(x>>>0>=y>>>0){D=m;break c}w=a[x>>0]|0;a[x>>0]=a[y>>0]|0;a[y>>0]=w;b=y;x=x+1|0}}}else{xb[c[(c[m>>2]|0)+32>>2]&15](m,u,v,c[h>>2]|0)|0;c[h>>2]=(c[h>>2]|0)+(v-s);D=m}while(0);s=v;while(1){if(s>>>0>=e>>>0){E=s;break}v=a[s>>0]|0;F=s+1|0;if(v<<24>>24==46){r=29;break}u=zb[c[(c[D>>2]|0)+28>>2]&63](m,v)|0;v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=u;s=F}if((r|0)==29){r=rb[c[(c[n>>2]|0)+12>>2]&127](n)|0;n=c[h>>2]|0;c[h>>2]=n+1;a[n>>0]=r;E=F}xb[c[(c[m>>2]|0)+32>>2]&15](m,E,e,c[h>>2]|0)|0;m=(c[h>>2]|0)+(o-E)|0;c[h>>2]=m;c[g>>2]=(d|0)==(e|0)?m:f+(d-i)|0;LB(k);l=j;return}function su(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;if(!(e&2048))f=b;else{a[b>>0]=43;f=b+1|0}if(!(e&512)){g=c;h=f}else{a[f>>0]=35;g=c;h=f+1|0}while(1){f=a[g>>0]|0;if(!(f<<24>>24))break;a[h>>0]=f;g=g+1|0;h=h+1|0}switch(e&74){case 64:{i=111;break}case 8:{i=e&16384|0?88:120;break}default:i=d?100:117}a[h>>0]=i;return}function tu(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;j=l;l=l+16|0;k=j;m=Xs(i,40916)|0;n=Xs(i,40932)|0;pb[c[(c[n>>2]|0)+20>>2]&127](k,n);i=k+11|0;o=a[i>>0]|0;p=k+4|0;q=b;r=e;if((o<<24>>24<0?c[p>>2]|0:o&255)|0){c[h>>2]=f;o=a[b>>0]|0;switch(o<<24>>24){case 43:case 45:{s=zb[c[(c[m>>2]|0)+28>>2]&63](m,o)|0;o=c[h>>2]|0;c[h>>2]=o+1;a[o>>0]=s;t=b+1|0;break}default:t=b}a:do if((r-t|0)>1?(a[t>>0]|0)==48:0){s=t+1|0;switch(a[s>>0]|0){case 88:case 120:break;default:{u=t;break a}}o=zb[c[(c[m>>2]|0)+28>>2]&63](m,48)|0;v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=o;o=zb[c[(c[m>>2]|0)+28>>2]&63](m,a[s>>0]|0)|0;s=c[h>>2]|0;c[h>>2]=s+1;a[s>>0]=o;u=t+2|0}else u=t;while(0);b:do if((u|0)!=(e|0)){t=e;o=u;while(1){s=t+-1|0;if(o>>>0>=s>>>0)break b;v=a[o>>0]|0;a[o>>0]=a[s>>0]|0;a[s>>0]=v;t=s;o=o+1|0}}while(0);o=rb[c[(c[n>>2]|0)+16>>2]&127](n)|0;n=u;t=0;s=0;while(1){if(n>>>0>=e>>>0)break;v=a[((a[i>>0]|0)<0?c[k>>2]|0:k)+t>>0]|0;if(v<<24>>24!=0&(s|0)==(v<<24>>24|0)){v=c[h>>2]|0;c[h>>2]=v+1;a[v>>0]=o;v=a[i>>0]|0;w=(t>>>0<((v<<24>>24<0?c[p>>2]|0:v&255)+-1|0)>>>0&1)+t|0;x=0}else{w=t;x=s}v=zb[c[(c[m>>2]|0)+28>>2]&63](m,a[n>>0]|0)|0;y=c[h>>2]|0;c[h>>2]=y+1;a[y>>0]=v;n=n+1|0;t=w;s=x+1|0}x=f+(u-q)|0;u=c[h>>2]|0;if((x|0)==(u|0))z=x;else{s=u;u=x;while(1){x=s+-1|0;if(u>>>0>=x>>>0)break;w=a[u>>0]|0;a[u>>0]=a[x>>0]|0;a[x>>0]=w;s=x;u=u+1|0}z=c[h>>2]|0}}else{xb[c[(c[m>>2]|0)+32>>2]&15](m,b,e,f)|0;b=f+(r-q)|0;c[h>>2]=b;z=b}c[g>>2]=(d|0)==(e|0)?z:f+(d-q)|0;LB(k);l=j;return}function uu(a){a=a|0;Cs(a);return}function vu(a){a=a|0;Cs(a);tB(a);return}function wu(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=l;l=l+16|0;i=h+4|0;j=h;if(!(c[e+4>>2]&1)){k=c[(c[b>>2]|0)+24>>2]|0;c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];m=Bb[k&31](b,i,e,f,g&1)|0}else{qr(i,e);e=Xs(i,40956)|0;Ys(i);f=c[e>>2]|0;if(g)pb[c[f+24>>2]&127](i,e);else pb[c[f+28>>2]&127](i,e);e=i+8+3|0;f=a[e>>0]|0;g=c[i>>2]|0;b=i+4|0;k=f<<24>>24<0?g:i;j=f;f=g;while(1){g=j<<24>>24<0;if((k|0)==((g?f:i)+((g?c[b>>2]|0:j&255)<<2)|0))break;g=c[k>>2]|0;n=c[d>>2]|0;if(n|0){o=n+24|0;p=c[o>>2]|0;if((p|0)==(c[n+28>>2]|0)){q=c[(c[n>>2]|0)+52>>2]|0;r=Fq(g)|0;s=zb[q&63](n,r)|0}else{c[o>>2]=p+4;c[p>>2]=g;s=Fq(g)|0}if(rr(s,Eq()|0)|0)c[d>>2]=0}k=k+4|0;j=a[e>>0]|0;f=c[i>>2]|0}f=c[d>>2]|0;gC(i);m=f}l=h;return m|0}function xu(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;b=l;l=l+128|0;h=b;i=b+122|0;j=b+108|0;k=b+16|0;m=b+12|0;n=b+4|0;o=b+8|0;a[i>>0]=a[35134]|0;a[i+1>>0]=a[35135]|0;a[i+2>>0]=a[35136]|0;a[i+3>>0]=a[35137]|0;a[i+4>>0]=a[35138]|0;a[i+5>>0]=a[35139]|0;su(i+1|0,35140,1,c[e+4>>2]|0);p=_s()|0;c[h>>2]=g;g=j+(nu(j,13,p,i,h)|0)|0;i=ou(j,g,e)|0;qr(h,e);Gu(j,i,g,k,m,n,h);Ys(h);c[o>>2]=c[d>>2];d=c[m>>2]|0;m=c[n>>2]|0;c[h>>2]=c[o>>2];o=Eu(h,k,d,m,e,f)|0;l=b;return o|0}function yu(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;a=l;l=l+224|0;h=a+8|0;i=a;j=a+200|0;k=a+28|0;m=a+24|0;n=a+16|0;o=a+20|0;p=i;c[p>>2]=37;c[p+4>>2]=0;su(i+1|0,35131,1,c[d+4>>2]|0);p=_s()|0;q=h;c[q>>2]=f;c[q+4>>2]=g;g=j+(nu(j,23,p,i,h)|0)|0;i=ou(j,g,d)|0;qr(h,d);Gu(j,i,g,k,m,n,h);Ys(h);c[o>>2]=c[b>>2];b=c[m>>2]|0;m=c[n>>2]|0;c[h>>2]=c[o>>2];o=Eu(h,k,b,m,d,e)|0;l=a;return o|0}function zu(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;b=l;l=l+128|0;h=b;i=b+112|0;j=b+100|0;k=b+16|0;m=b+12|0;n=b+4|0;o=b+8|0;a[i>>0]=a[35134]|0;a[i+1>>0]=a[35135]|0;a[i+2>>0]=a[35136]|0;a[i+3>>0]=a[35137]|0;a[i+4>>0]=a[35138]|0;a[i+5>>0]=a[35139]|0;su(i+1|0,35140,0,c[e+4>>2]|0);p=_s()|0;c[h>>2]=g;g=j+(nu(j,12,p,i,h)|0)|0;i=ou(j,g,e)|0;qr(h,e);Gu(j,i,g,k,m,n,h);Ys(h);c[o>>2]=c[d>>2];d=c[m>>2]|0;m=c[n>>2]|0;c[h>>2]=c[o>>2];o=Eu(h,k,d,m,e,f)|0;l=b;return o|0}function Au(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;a=l;l=l+224|0;h=a+8|0;i=a;j=a+200|0;k=a+28|0;m=a+24|0;n=a+16|0;o=a+20|0;p=i;c[p>>2]=37;c[p+4>>2]=0;su(i+1|0,35131,0,c[d+4>>2]|0);p=_s()|0;q=h;c[q>>2]=f;c[q+4>>2]=g;g=j+(nu(j,23,p,i,h)|0)|0;i=ou(j,g,d)|0;qr(h,d);Gu(j,i,g,k,m,n,h);Ys(h);c[o>>2]=c[b>>2];b=c[m>>2]|0;m=c[n>>2]|0;c[h>>2]=c[o>>2];o=Eu(h,k,b,m,d,e)|0;l=a;return o|0}function Bu(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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;a=l;l=l+336|0;g=a+300|0;i=a+48|0;j=a+32|0;k=a+24|0;m=a+8|0;n=a;o=a+304|0;p=a+296|0;q=a+68|0;r=a+64|0;s=a+60|0;t=a+56|0;u=n;c[u>>2]=37;c[u+4>>2]=0;u=pu(n+1|0,44918,c[d+4>>2]|0)|0;c[p>>2]=o;v=_s()|0;if(u){c[m>>2]=c[d+8>>2];h[m+8>>3]=f;w=nu(o,30,v,n,m)|0}else{h[k>>3]=f;w=nu(o,30,v,n,k)|0}if((w|0)>29){k=_s()|0;if(u){c[j>>2]=c[d+8>>2];h[j+8>>3]=f;x=qu(p,k,n,j)|0}else{h[i>>3]=f;x=qu(p,k,n,i)|0}i=c[p>>2]|0;if(!i){n=c[p>>2]|0;y=x;z=n;A=n}else{y=x;z=i;A=i}}else{y=w;z=0;A=c[p>>2]|0}w=A+y|0;i=ou(A,w,d)|0;if((A|0)!=(o|0)){x=Pp(y<<3)|0;if(!x){B=x;C=1;D=c[p>>2]|0;E=0}else{B=x;C=0;D=A;E=x}}else{B=q;C=1;D=o;E=0}qr(g,d);Fu(D,i,w,B,r,s,g);Ys(g);c[t>>2]=c[b>>2];w=c[r>>2]|0;r=c[s>>2]|0;c[g>>2]=c[t>>2];t=Eu(g,B,w,r,d,e)|0;c[b>>2]=t;if(!C)Qp(E);Qp(z);l=a;return t|0}function Cu(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=+f;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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;a=l;l=l+336|0;g=a+300|0;i=a+48|0;j=a+32|0;k=a+24|0;m=a+8|0;n=a;o=a+304|0;p=a+296|0;q=a+68|0;r=a+64|0;s=a+60|0;t=a+56|0;u=n;c[u>>2]=37;c[u+4>>2]=0;u=pu(n+1|0,35129,c[d+4>>2]|0)|0;c[p>>2]=o;v=_s()|0;if(u){c[m>>2]=c[d+8>>2];h[m+8>>3]=f;w=nu(o,30,v,n,m)|0}else{h[k>>3]=f;w=nu(o,30,v,n,k)|0}if((w|0)>29){k=_s()|0;if(u){c[j>>2]=c[d+8>>2];h[j+8>>3]=f;x=qu(p,k,n,j)|0}else{h[i>>3]=f;x=qu(p,k,n,i)|0}i=c[p>>2]|0;if(!i){n=c[p>>2]|0;y=x;z=n;A=n}else{y=x;z=i;A=i}}else{y=w;z=0;A=c[p>>2]|0}w=A+y|0;i=ou(A,w,d)|0;if((A|0)!=(o|0)){x=Pp(y<<3)|0;if(!x){B=x;C=1;D=c[p>>2]|0;E=0}else{B=x;C=0;D=A;E=x}}else{B=q;C=1;D=o;E=0}qr(g,d);Fu(D,i,w,B,r,s,g);Ys(g);c[t>>2]=c[b>>2];w=c[r>>2]|0;r=c[s>>2]|0;c[g>>2]=c[t>>2];t=Eu(g,B,w,r,d,e)|0;c[b>>2]=t;if(!C)Qp(E);Qp(z);l=a;return t|0}function Du(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;b=l;l=l+192|0;h=b;i=b+176|0;j=b+156|0;k=b+4|0;m=b+152|0;a[i>>0]=a[35123]|0;a[i+1>>0]=a[35124]|0;a[i+2>>0]=a[35125]|0;a[i+3>>0]=a[35126]|0;a[i+4>>0]=a[35127]|0;a[i+5>>0]=a[35128]|0;n=_s()|0;c[h>>2]=g;g=nu(j,20,n,i,h)|0;i=j+g|0;n=ou(j,i,e)|0;qr(h,e);o=Xs(h,40948)|0;Ys(h);xb[c[(c[o>>2]|0)+48>>2]&15](o,j,i,k)|0;o=k+(g<<2)|0;c[m>>2]=c[d>>2];c[h>>2]=c[m>>2];m=Eu(h,k,(n|0)==(i|0)?o:k+(n-j<<2)|0,o,e,f)|0;l=b;return m|0}function Eu(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;i=l;l=l+16|0;j=i;k=c[b>>2]|0;a:do if(!k)m=0;else{n=f;o=d;p=n-o>>2;q=g+12|0;r=c[q>>2]|0;s=(r|0)>(p|0)?r-p|0:0;p=e;r=p-o|0;o=r>>2;if((r|0)>0?(ib[c[(c[k>>2]|0)+48>>2]&31](k,d,o)|0)!=(o|0):0){c[b>>2]=0;m=0;break}do if((s|0)>0){c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;eC(j,s,h);if((ib[c[(c[k>>2]|0)+48>>2]&31](k,(a[j+8+3>>0]|0)<0?c[j>>2]|0:j,s)|0)==(s|0)){gC(j);break}else{c[b>>2]=0;gC(j);m=0;break a}}while(0);s=n-p|0;o=s>>2;if((s|0)>0?(ib[c[(c[k>>2]|0)+48>>2]&31](k,e,o)|0)!=(o|0):0){c[b>>2]=0;m=0;break}c[q>>2]=0;m=k}while(0);l=i;return m|0}function Fu(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0;j=l;l=l+16|0;k=j;m=Xs(i,40948)|0;n=Xs(i,40956)|0;pb[c[(c[n>>2]|0)+20>>2]&127](k,n);c[h>>2]=f;i=a[b>>0]|0;switch(i<<24>>24){case 43:case 45:{o=zb[c[(c[m>>2]|0)+44>>2]&63](m,i)|0;i=c[h>>2]|0;c[h>>2]=i+4;c[i>>2]=o;p=b+1|0;break}default:p=b}o=e;a:do if((o-p|0)>1?(a[p>>0]|0)==48:0){i=p+1|0;switch(a[i>>0]|0){case 88:case 120:break;default:{q=p;r=10;break a}}s=zb[c[(c[m>>2]|0)+44>>2]&63](m,48)|0;t=c[h>>2]|0;c[h>>2]=t+4;c[t>>2]=s;s=p+2|0;t=zb[c[(c[m>>2]|0)+44>>2]&63](m,a[i>>0]|0)|0;i=c[h>>2]|0;c[h>>2]=i+4;c[i>>2]=t;t=s;while(1){if(t>>>0>=e>>>0){u=s;v=t;break a}i=a[t>>0]|0;if(!(Dp(i,_s()|0)|0)){u=s;v=t;break a}t=t+1|0}}else{q=p;r=10}while(0);b:do if((r|0)==10)while(1){r=0;if(q>>>0>=e>>>0){u=p;v=q;break b}t=a[q>>0]|0;if(!(xp(t,_s()|0)|0)){u=p;v=q;break b}q=q+1|0;r=10}while(0);q=k+11|0;p=a[q>>0]|0;t=k+4|0;s=u;i=b;c:do if((p<<24>>24<0?c[t>>2]|0:p&255)|0){d:do if((u|0)!=(v|0)){b=v;w=u;while(1){x=b+-1|0;if(w>>>0>=x>>>0)break d;y=a[w>>0]|0;a[w>>0]=a[x>>0]|0;a[x>>0]=y;b=x;w=w+1|0}}while(0);w=rb[c[(c[n>>2]|0)+16>>2]&127](n)|0;b=u;x=0;y=0;while(1){if(b>>>0>=v>>>0)break;z=a[q>>0]|0;A=z<<24>>24<0;B=a[(A?c[k>>2]|0:k)+x>>0]|0;if(B<<24>>24>0&(y|0)==(B<<24>>24|0)){B=c[h>>2]|0;c[h>>2]=B+4;c[B>>2]=w;C=(x>>>0<((A?c[t>>2]|0:z&255)+-1|0)>>>0&1)+x|0;D=0}else{C=x;D=y}z=zb[c[(c[m>>2]|0)+44>>2]&63](m,a[b>>0]|0)|0;A=c[h>>2]|0;c[h>>2]=A+4;c[A>>2]=z;b=b+1|0;x=C;y=D+1|0}y=f+(s-i<<2)|0;x=c[h>>2]|0;if((y|0)==(x|0)){E=m;F=y}else{b=x;w=y;while(1){y=b+-4|0;if(w>>>0>=y>>>0){E=m;F=x;break c}z=c[w>>2]|0;c[w>>2]=c[y>>2];c[y>>2]=z;b=y;w=w+4|0}}}else{xb[c[(c[m>>2]|0)+48>>2]&15](m,u,v,c[h>>2]|0)|0;w=(c[h>>2]|0)+(v-s<<2)|0;c[h>>2]=w;E=m;F=w}while(0);s=v;v=F;while(1){if(s>>>0>=e>>>0){G=s;H=v;break}F=a[s>>0]|0;I=s+1|0;if(F<<24>>24==46){r=29;break}u=zb[c[(c[E>>2]|0)+44>>2]&63](m,F)|0;F=c[h>>2]|0;D=F+4|0;c[h>>2]=D;c[F>>2]=u;s=I;v=D}if((r|0)==29){r=rb[c[(c[n>>2]|0)+12>>2]&127](n)|0;n=c[h>>2]|0;v=n+4|0;c[h>>2]=v;c[n>>2]=r;G=I;H=v}xb[c[(c[m>>2]|0)+48>>2]&15](m,G,e,H)|0;H=(c[h>>2]|0)+(o-G<<2)|0;c[h>>2]=H;c[g>>2]=(d|0)==(e|0)?H:f+(d-i<<2)|0;LB(k);l=j;return}function Gu(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;j=l;l=l+16|0;k=j;m=Xs(i,40948)|0;n=Xs(i,40956)|0;pb[c[(c[n>>2]|0)+20>>2]&127](k,n);i=k+11|0;o=a[i>>0]|0;p=k+4|0;q=b;r=e;if((o<<24>>24<0?c[p>>2]|0:o&255)|0){c[h>>2]=f;o=a[b>>0]|0;switch(o<<24>>24){case 43:case 45:{s=zb[c[(c[m>>2]|0)+44>>2]&63](m,o)|0;o=c[h>>2]|0;c[h>>2]=o+4;c[o>>2]=s;t=b+1|0;break}default:t=b}a:do if((r-t|0)>1?(a[t>>0]|0)==48:0){s=t+1|0;switch(a[s>>0]|0){case 88:case 120:break;default:{u=t;break a}}o=zb[c[(c[m>>2]|0)+44>>2]&63](m,48)|0;v=c[h>>2]|0;c[h>>2]=v+4;c[v>>2]=o;o=zb[c[(c[m>>2]|0)+44>>2]&63](m,a[s>>0]|0)|0;s=c[h>>2]|0;c[h>>2]=s+4;c[s>>2]=o;u=t+2|0}else u=t;while(0);b:do if((u|0)!=(e|0)){t=e;o=u;while(1){s=t+-1|0;if(o>>>0>=s>>>0)break b;v=a[o>>0]|0;a[o>>0]=a[s>>0]|0;a[s>>0]=v;t=s;o=o+1|0}}while(0);o=rb[c[(c[n>>2]|0)+16>>2]&127](n)|0;n=u;t=0;s=0;while(1){if(n>>>0>=e>>>0)break;v=a[i>>0]|0;w=v<<24>>24<0;x=a[(w?c[k>>2]|0:k)+t>>0]|0;if(x<<24>>24!=0&(s|0)==(x<<24>>24|0)){x=c[h>>2]|0;c[h>>2]=x+4;c[x>>2]=o;y=(t>>>0<((w?c[p>>2]|0:v&255)+-1|0)>>>0&1)+t|0;z=0}else{y=t;z=s}v=zb[c[(c[m>>2]|0)+44>>2]&63](m,a[n>>0]|0)|0;w=c[h>>2]|0;c[h>>2]=w+4;c[w>>2]=v;n=n+1|0;t=y;s=z+1|0}z=f+(u-q<<2)|0;u=c[h>>2]|0;if((z|0)==(u|0))A=z;else{s=u;u=z;while(1){z=s+-4|0;if(u>>>0>=z>>>0)break;y=c[u>>2]|0;c[u>>2]=c[z>>2];c[z>>2]=y;s=z;u=u+4|0}A=c[h>>2]|0}}else{xb[c[(c[m>>2]|0)+48>>2]&15](m,b,e,f)|0;b=f+(r-q<<2)|0;c[h>>2]=b;A=b}c[g>>2]=(d|0)==(e|0)?A:f+(d-q<<2)|0;LB(k);l=j;return}function Hu(a){a=a|0;Cs(a);return}function Iu(a){a=a|0;Cs(a);tB(a);return}function Ju(a){a=a|0;return 2}function Ku(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=dv(a,j,i,e,f,g,35659,35667)|0;l=h;return m|0}function Lu(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;o=b+8|0;p=rb[c[(c[o>>2]|0)+20>>2]&127](o)|0;c[m>>2]=c[d>>2];c[n>>2]=c[e>>2];e=a[p+11>>0]|0;d=e<<24>>24<0;o=d?c[p>>2]|0:p;q=o+(d?c[p+4>>2]|0:e&255)|0;c[k>>2]=c[m>>2];c[j>>2]=c[n>>2];n=dv(b,k,j,f,g,h,o,q)|0;l=i;return n|0}function Mu(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;qr(i,e);e=Xs(i,40916)|0;Ys(i);c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];bv(a,g+24|0,b,i,f,e);l=h;return c[b>>2]|0}function Nu(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;qr(i,e);e=Xs(i,40916)|0;Ys(i);c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];cv(a,g+16|0,b,i,f,e);l=h;return c[b>>2]|0}function Ou(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;qr(i,e);e=Xs(i,40916)|0;Ys(i);c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];ov(a,g+20|0,b,i,f,e);l=h;return c[b>>2]|0}function Pu(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;j=l;l=l+144|0;k=j+128|0;m=j+112|0;n=j+124|0;o=j+120|0;p=j+116|0;q=j+108|0;r=j+104|0;s=j+100|0;t=j+96|0;u=j+92|0;v=j+88|0;w=j+84|0;x=j+80|0;y=j+76|0;z=j+72|0;A=j+68|0;B=j+64|0;C=j+60|0;D=j+56|0;E=j+52|0;F=j+48|0;G=j+44|0;H=j+40|0;I=j+36|0;J=j+32|0;K=j+28|0;L=j+24|0;M=j+20|0;N=j+16|0;O=j+12|0;P=j+8|0;Q=j+4|0;R=j;c[g>>2]=0;qr(k,f);S=Xs(k,40916)|0;Ys(k);T=h+8|0;U=h+20|0;V=h+16|0;W=h+24|0;X=b+8|0;do switch(i<<24>>24|0){case 65:case 97:{c[n>>2]=c[e>>2];c[k>>2]=c[n>>2];bv(b,W,d,k,g,S);Y=26;break}case 104:case 66:case 98:{c[o>>2]=c[e>>2];c[k>>2]=c[o>>2];cv(b,V,d,k,g,S);Y=26;break}case 99:{Z=rb[c[(c[X>>2]|0)+12>>2]&127](X)|0;c[p>>2]=c[d>>2];c[q>>2]=c[e>>2];_=a[Z+11>>0]|0;$=_<<24>>24<0;aa=$?c[Z>>2]|0:Z;ba=aa+($?c[Z+4>>2]|0:_&255)|0;c[m>>2]=c[p>>2];c[k>>2]=c[q>>2];c[d>>2]=dv(b,m,k,f,g,h,aa,ba)|0;Y=26;break}case 101:case 100:{c[r>>2]=c[e>>2];c[k>>2]=c[r>>2];ev(b,h+12|0,d,k,g,S);Y=26;break}case 68:{c[s>>2]=c[d>>2];c[t>>2]=c[e>>2];c[m>>2]=c[s>>2];c[k>>2]=c[t>>2];c[d>>2]=dv(b,m,k,f,g,h,35619,35627)|0;Y=26;break}case 70:{c[u>>2]=c[d>>2];c[v>>2]=c[e>>2];c[m>>2]=c[u>>2];c[k>>2]=c[v>>2];c[d>>2]=dv(b,m,k,f,g,h,35627,35635)|0;Y=26;break}case 72:{c[w>>2]=c[e>>2];c[k>>2]=c[w>>2];fv(b,T,d,k,g,S);Y=26;break}case 73:{c[x>>2]=c[e>>2];c[k>>2]=c[x>>2];gv(b,T,d,k,g,S);Y=26;break}case 106:{c[y>>2]=c[e>>2];c[k>>2]=c[y>>2];hv(b,h+28|0,d,k,g,S);Y=26;break}case 109:{c[z>>2]=c[e>>2];c[k>>2]=c[z>>2];iv(b,V,d,k,g,S);Y=26;break}case 77:{c[A>>2]=c[e>>2];c[k>>2]=c[A>>2];jv(b,h+4|0,d,k,g,S);Y=26;break}case 116:case 110:{c[B>>2]=c[e>>2];c[k>>2]=c[B>>2];kv(b,d,k,g,S);Y=26;break}case 112:{c[C>>2]=c[e>>2];c[k>>2]=c[C>>2];lv(b,T,d,k,g,S);Y=26;break}case 114:{c[D>>2]=c[d>>2];c[E>>2]=c[e>>2];c[m>>2]=c[D>>2];c[k>>2]=c[E>>2];c[d>>2]=dv(b,m,k,f,g,h,35635,35646)|0;Y=26;break}case 82:{c[F>>2]=c[d>>2];c[G>>2]=c[e>>2];c[m>>2]=c[F>>2];c[k>>2]=c[G>>2];c[d>>2]=dv(b,m,k,f,g,h,35646,35651)|0;Y=26;break}case 83:{c[H>>2]=c[e>>2];c[k>>2]=c[H>>2];mv(b,h,d,k,g,S);Y=26;break}case 84:{c[I>>2]=c[d>>2];c[J>>2]=c[e>>2];c[m>>2]=c[I>>2];c[k>>2]=c[J>>2];c[d>>2]=dv(b,m,k,f,g,h,35651,35659)|0;Y=26;break}case 119:{c[K>>2]=c[e>>2];c[k>>2]=c[K>>2];nv(b,W,d,k,g,S);Y=26;break}case 120:{ba=c[(c[b>>2]|0)+20>>2]|0;c[L>>2]=c[d>>2];c[M>>2]=c[e>>2];c[m>>2]=c[L>>2];c[k>>2]=c[M>>2];ca=qb[ba&63](b,m,k,f,g,h)|0;break}case 88:{ba=rb[c[(c[X>>2]|0)+24>>2]&127](X)|0;c[N>>2]=c[d>>2];c[O>>2]=c[e>>2];aa=a[ba+11>>0]|0;_=aa<<24>>24<0;Z=_?c[ba>>2]|0:ba;$=Z+(_?c[ba+4>>2]|0:aa&255)|0;c[m>>2]=c[N>>2];c[k>>2]=c[O>>2];c[d>>2]=dv(b,m,k,f,g,h,Z,$)|0;Y=26;break}case 121:{c[P>>2]=c[e>>2];c[k>>2]=c[P>>2];ov(b,U,d,k,g,S);Y=26;break}case 89:{c[Q>>2]=c[e>>2];c[k>>2]=c[Q>>2];pv(b,U,d,k,g,S);Y=26;break}case 37:{c[R>>2]=c[e>>2];c[k>>2]=c[R>>2];qv(b,d,k,g,S);Y=26;break}default:{c[g>>2]=c[g>>2]|4;Y=26}}while(0);if((Y|0)==26)ca=c[d>>2]|0;l=j;return ca|0}function Qu(b){b=b|0;if((a[38288]|0)==0?xD(38288)|0:0){$u();c[10447]=41620}return c[10447]|0}function Ru(b){b=b|0;if((a[38272]|0)==0?xD(38272)|0:0){Zu();c[10404]=41328}return c[10404]|0}function Su(b){b=b|0;if((a[38256]|0)==0?xD(38256)|0:0){Xu();c[10331]=41036}return c[10331]|0}function Tu(b){b=b|0;if((a[38248]|0)==0?xD(38248)|0:0){c[10256]=0;c[10257]=0;c[10258]=0;HB(41024,35377,kr(35377)|0);Wa(260,41024,o|0)|0}return 41024}function Uu(b){b=b|0;if((a[38240]|0)==0?xD(38240)|0:0){c[10253]=0;c[10254]=0;c[10255]=0;HB(41012,35365,kr(35365)|0);Wa(260,41012,o|0)|0}return 41012}function Vu(b){b=b|0;if((a[38232]|0)==0?xD(38232)|0:0){c[10250]=0;c[10251]=0;c[10252]=0;HB(41e3,35356,kr(35356)|0);Wa(260,41e3,o|0)|0}return 41e3}function Wu(b){b=b|0;if((a[38224]|0)==0?xD(38224)|0:0){c[10247]=0;c[10248]=0;c[10249]=0;HB(40988,35347,kr(35347)|0);Wa(260,40988,o|0)|0}return 40988}function Xu(){var b=0,d=0;if((a[38264]|0)==0?xD(38264)|0:0){b=41036;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[b+(d<<2)>>2]=0;d=d+1|0}b=b+12|0}while((b|0)!=41324);Wa(271,0,o|0)|0}RB(41036,35398)|0;RB(41048,35401)|0;return}function Yu(a){a=a|0;a=41324;do{a=a+-12|0;LB(a)}while((a|0)!=41036);return}function Zu(){var b=0,d=0;if((a[38280]|0)==0?xD(38280)|0:0){b=41328;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[b+(d<<2)>>2]=0;d=d+1|0}b=b+12|0}while((b|0)!=41616);Wa(272,0,o|0)|0}RB(41328,35404)|0;RB(41340,35412)|0;RB(41352,35421)|0;RB(41364,35427)|0;RB(41376,35433)|0;RB(41388,35437)|0;RB(41400,35442)|0;RB(41412,35447)|0;RB(41424,35454)|0;RB(41436,35464)|0;RB(41448,35472)|0;RB(41460,35481)|0;RB(41472,35490)|0;RB(41484,35494)|0;RB(41496,35498)|0;RB(41508,35502)|0;RB(41520,35433)|0;RB(41532,35506)|0;RB(41544,35510)|0;RB(41556,35514)|0;RB(41568,35518)|0;RB(41580,35522)|0;RB(41592,35526)|0;RB(41604,35530)|0;return}function _u(a){a=a|0;a=41616;do{a=a+-12|0;LB(a)}while((a|0)!=41328);return}function $u(){var b=0,d=0;if((a[38296]|0)==0?xD(38296)|0:0){b=41620;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[b+(d<<2)>>2]=0;d=d+1|0}b=b+12|0}while((b|0)!=41788);Wa(273,0,o|0)|0}RB(41620,35534)|0;RB(41632,35541)|0;RB(41644,35548)|0;RB(41656,35556)|0;RB(41668,35566)|0;RB(41680,35575)|0;RB(41692,35582)|0;RB(41704,35591)|0;RB(41716,35595)|0;RB(41728,35599)|0;RB(41740,35603)|0;RB(41752,35607)|0;RB(41764,35611)|0;RB(41776,35615)|0;return}function av(a){a=a|0;a=41788;do{a=a+-12|0;LB(a)}while((a|0)!=41620);return}function bv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+4|0;j=h;k=a+8|0;a=rb[c[c[k>>2]>>2]&127](k)|0;c[j>>2]=c[e>>2];c[i>>2]=c[j>>2];j=(Dt(d,i,a,a+168|0,g,f,0)|0)-a|0;if((j|0)<168)c[b>>2]=((j|0)/12|0|0)%7|0;l=h;return}function cv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+4|0;j=h;k=a+8|0;a=rb[c[(c[k>>2]|0)+4>>2]&127](k)|0;c[j>>2]=c[e>>2];c[i>>2]=c[j>>2];j=(Dt(d,i,a,a+288|0,g,f,0)|0)-a|0;if((j|0)<288)c[b>>2]=((j|0)/12|0|0)%12|0;l=h;return} function dv(d,e,f,g,h,i,j,k){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0;m=l;l=l+16|0;n=m+12|0;o=m+8|0;p=m+4|0;q=m;qr(n,g);r=Xs(n,40916)|0;Ys(n);c[h>>2]=0;s=r+8|0;t=j;j=0;a:while(1){u=(t|0)!=(k|0);v=j;while(1){w=c[e>>2]|0;if(!(u&(v|0)==0)){x=w;break a}y=w;if(w){z=c[w+12>>2]|0;if((z|0)==(c[w+16>>2]|0))A=rb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else A=nq(a[z>>0]|0)|0;if(pr(A,mq()|0)|0){c[e>>2]=0;B=0;C=1;D=0}else{B=w;C=0;D=y}}else{B=0;C=1;D=y}y=c[f>>2]|0;w=y;do if(y){z=c[y+12>>2]|0;if((z|0)==(c[y+16>>2]|0))E=rb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else E=nq(a[z>>0]|0)|0;if(!(pr(E,mq()|0)|0))if(C){F=y;G=w;break}else{H=61;break a}else{c[f>>2]=0;I=0;H=16;break}}else{I=w;H=16}while(0);if((H|0)==16){H=0;if(C){H=61;break a}else{F=0;G=I}}if((ib[c[(c[r>>2]|0)+36>>2]&31](r,a[t>>0]|0,0)|0)<<24>>24==37){H=19;break}w=a[t>>0]|0;if(w<<24>>24>-1?(J=c[s>>2]|0,b[J+(w<<24>>24<<1)>>1]&8192):0){K=t;H=27;break}L=B+12|0;w=c[L>>2]|0;M=B+16|0;if((w|0)==(c[M>>2]|0))N=rb[c[(c[B>>2]|0)+36>>2]&127](B)|0;else N=nq(a[w>>0]|0)|0;w=zb[c[(c[r>>2]|0)+12>>2]&63](r,N&255)|0;if(w<<24>>24==(zb[c[(c[r>>2]|0)+12>>2]&63](r,a[t>>0]|0)|0)<<24>>24){H=57;break}c[h>>2]=4;v=4}b:do if((H|0)==19){H=0;v=t+1|0;if((v|0)==(k|0)){H=61;break a}u=ib[c[(c[r>>2]|0)+36>>2]&31](r,a[v>>0]|0,0)|0;switch(u<<24>>24){case 48:case 69:{w=t+2|0;if((w|0)==(k|0)){H=61;break a}O=u;P=ib[c[(c[r>>2]|0)+36>>2]&31](r,a[w>>0]|0,0)|0;Q=v;break}default:{O=0;P=u;Q=t}}u=c[(c[d>>2]|0)+36>>2]|0;c[p>>2]=D;c[q>>2]=G;c[o>>2]=c[p>>2];c[n>>2]=c[q>>2];c[e>>2]=wb[u&15](d,o,n,g,h,i,P,O)|0;R=Q+2|0}else if((H|0)==27){while(1){H=0;u=K+1|0;if((u|0)==(k|0)){S=k;break}v=a[u>>0]|0;if(v<<24>>24<=-1){S=u;break}if(!(b[J+(v<<24>>24<<1)>>1]&8192)){S=u;break}else{K=u;H=27}}u=B;v=F;w=F;while(1){if(u){y=c[u+12>>2]|0;if((y|0)==(c[u+16>>2]|0))T=rb[c[(c[u>>2]|0)+36>>2]&127](u)|0;else T=nq(a[y>>0]|0)|0;if(pr(T,mq()|0)|0){c[e>>2]=0;U=1;V=0}else{U=0;V=u}}else{U=1;V=0}do if(w){y=c[w+12>>2]|0;if((y|0)==(c[w+16>>2]|0))W=rb[c[(c[w>>2]|0)+36>>2]&127](w)|0;else W=nq(a[y>>0]|0)|0;if(!(pr(W,mq()|0)|0))if(U^(v|0)==0){X=v;Y=v;break}else{R=S;break b}else{c[f>>2]=0;Z=0;H=43;break}}else{Z=v;H=43}while(0);if((H|0)==43){H=0;if(U){R=S;break b}else{X=Z;Y=0}}y=V+12|0;z=c[y>>2]|0;_=V+16|0;if((z|0)==(c[_>>2]|0))$=rb[c[(c[V>>2]|0)+36>>2]&127](V)|0;else $=nq(a[z>>0]|0)|0;if(($&255)<<24>>24<=-1){R=S;break b}if(!(b[(c[s>>2]|0)+($<<24>>24<<1)>>1]&8192)){R=S;break b}z=c[y>>2]|0;if((z|0)==(c[_>>2]|0)){rb[c[(c[V>>2]|0)+40>>2]&127](V)|0;u=V;v=X;w=Y;continue}else{c[y>>2]=z+1;nq(a[z>>0]|0)|0;u=V;v=X;w=Y;continue}}}else if((H|0)==57){H=0;w=t+1|0;v=c[L>>2]|0;if((v|0)==(c[M>>2]|0)){rb[c[(c[B>>2]|0)+40>>2]&127](B)|0;R=w;break}else{c[L>>2]=v+1;nq(a[v>>0]|0)|0;R=w;break}}while(0);t=R;j=c[h>>2]|0}if((H|0)==61){c[h>>2]=4;x=B}if(x){B=c[x+12>>2]|0;if((B|0)==(c[x+16>>2]|0))aa=rb[c[(c[x>>2]|0)+36>>2]&127](x)|0;else aa=nq(a[B>>0]|0)|0;if(pr(aa,mq()|0)|0){c[e>>2]=0;ba=0;ca=1}else{ba=x;ca=0}}else{ba=0;ca=1}x=c[f>>2]|0;do if(x){e=c[x+12>>2]|0;if((e|0)==(c[x+16>>2]|0))da=rb[c[(c[x>>2]|0)+36>>2]&127](x)|0;else da=nq(a[e>>0]|0)|0;if(!(pr(da,mq()|0)|0))if(ca)break;else{H=76;break}else{c[f>>2]=0;H=74;break}}else H=74;while(0);if((H|0)==74?ca:0)H=76;if((H|0)==76)c[h>>2]=c[h>>2]|2;l=m;return ba|0}function ev(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=rv(d,h,f,g,2)|0;g=c[f>>2]|0;if((i+-1|0)>>>0<31&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function fv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=rv(d,h,f,g,2)|0;g=c[f>>2]|0;if((i|0)<24&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function gv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=rv(d,h,f,g,2)|0;g=c[f>>2]|0;if((i+-1|0)>>>0<12&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function hv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=rv(d,h,f,g,3)|0;g=c[f>>2]|0;if((i|0)<366&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function iv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=rv(d,h,f,g,2)|0;g=c[f>>2]|0;if((i|0)<13&(g&4|0)==0)c[b>>2]=i+-1;else c[f>>2]=g|4;l=a;return}function jv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=rv(d,h,f,g,2)|0;g=c[f>>2]|0;if((i|0)<60&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function kv(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;d=h+8|0;a:while(1){h=c[e>>2]|0;do if(h){i=c[h+12>>2]|0;if((i|0)==(c[h+16>>2]|0))j=rb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else j=nq(a[i>>0]|0)|0;if(pr(j,mq()|0)|0){c[e>>2]=0;k=1;break}else{k=(c[e>>2]|0)==0;break}}else k=1;while(0);h=c[f>>2]|0;do if(h){i=c[h+12>>2]|0;if((i|0)==(c[h+16>>2]|0))l=rb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else l=nq(a[i>>0]|0)|0;if(!(pr(l,mq()|0)|0))if(k){m=h;break}else{n=h;break a}else{c[f>>2]=0;o=15;break}}else o=15;while(0);if((o|0)==15){o=0;if(k){n=0;break}else m=0}h=c[e>>2]|0;i=c[h+12>>2]|0;if((i|0)==(c[h+16>>2]|0))p=rb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else p=nq(a[i>>0]|0)|0;if((p&255)<<24>>24<=-1){n=m;break}if(!(b[(c[d>>2]|0)+(p<<24>>24<<1)>>1]&8192)){n=m;break}i=c[e>>2]|0;h=i+12|0;q=c[h>>2]|0;if((q|0)==(c[i+16>>2]|0)){rb[c[(c[i>>2]|0)+40>>2]&127](i)|0;continue}else{c[h>>2]=q+1;nq(a[q>>0]|0)|0;continue}}m=c[e>>2]|0;do if(m){p=c[m+12>>2]|0;if((p|0)==(c[m+16>>2]|0))r=rb[c[(c[m>>2]|0)+36>>2]&127](m)|0;else r=nq(a[p>>0]|0)|0;if(pr(r,mq()|0)|0){c[e>>2]=0;s=1;break}else{s=(c[e>>2]|0)==0;break}}else s=1;while(0);do if(n){e=c[n+12>>2]|0;if((e|0)==(c[n+16>>2]|0))t=rb[c[(c[n>>2]|0)+36>>2]&127](n)|0;else t=nq(a[e>>0]|0)|0;if(!(pr(t,mq()|0)|0))if(s)break;else{o=40;break}else{c[f>>2]=0;o=38;break}}else o=38;while(0);if((o|0)==38?s:0)o=40;if((o|0)==40)c[g>>2]=c[g>>2]|2;return}function lv(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+16|0;j=i+4|0;k=i;m=b+8|0;b=rb[c[(c[m>>2]|0)+8>>2]&127](m)|0;m=a[b+11>>0]|0;if(m<<24>>24<0)n=c[b+4>>2]|0;else n=m&255;m=a[b+12+11>>0]|0;if(m<<24>>24<0)o=c[b+16>>2]|0;else o=m&255;do if((n|0)!=(0-o|0)){c[k>>2]=c[f>>2];c[j>>2]=c[k>>2];m=(Dt(e,j,b,b+24|0,h,g,0)|0)-b|0;p=c[d>>2]|0;if((p|0)==12&(m|0)==0){c[d>>2]=0;break}if((p|0)<12&(m|0)==12)c[d>>2]=p+12}else c[g>>2]=c[g>>2]|4;while(0);l=i;return}function mv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=rv(d,h,f,g,2)|0;g=c[f>>2]|0;if((i|0)<61&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function nv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=rv(d,h,f,g,1)|0;g=c[f>>2]|0;if((i|0)<7&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function ov(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=rv(d,h,f,g,4)|0;if(!(c[f>>2]&4)){if((i|0)<69)j=i+2e3|0;else j=(i|0)<100?i+1900|0:i;c[b>>2]=j+-1900}l=a;return}function pv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=rv(d,h,f,g,4)|0;if(!(c[f>>2]&4))c[b>>2]=i+-1900;l=a;return}function qv(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;b=c[d>>2]|0;do if(b){h=c[b+12>>2]|0;if((h|0)==(c[b+16>>2]|0))i=rb[c[(c[b>>2]|0)+36>>2]&127](b)|0;else i=nq(a[h>>0]|0)|0;if(pr(i,mq()|0)|0){c[d>>2]=0;j=1;break}else{j=(c[d>>2]|0)==0;break}}else j=1;while(0);i=c[e>>2]|0;do if(i){b=c[i+12>>2]|0;if((b|0)==(c[i+16>>2]|0))k=rb[c[(c[i>>2]|0)+36>>2]&127](i)|0;else k=nq(a[b>>0]|0)|0;if(!(pr(k,mq()|0)|0))if(j){l=i;m=16;break}else{n=6;m=38;break}else{c[e>>2]=0;m=14;break}}else m=14;while(0);if((m|0)==14)if(j){n=6;m=38}else{l=0;m=16}a:do if((m|0)==16){j=c[d>>2]|0;i=c[j+12>>2]|0;if((i|0)==(c[j+16>>2]|0))o=rb[c[(c[j>>2]|0)+36>>2]&127](j)|0;else o=nq(a[i>>0]|0)|0;if((ib[c[(c[g>>2]|0)+36>>2]&31](g,o&255,0)|0)<<24>>24==37){i=c[d>>2]|0;j=i+12|0;k=c[j>>2]|0;if((k|0)==(c[i+16>>2]|0))rb[c[(c[i>>2]|0)+40>>2]&127](i)|0;else{c[j>>2]=k+1;nq(a[k>>0]|0)|0}k=c[d>>2]|0;do if(k){j=c[k+12>>2]|0;if((j|0)==(c[k+16>>2]|0))p=rb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else p=nq(a[j>>0]|0)|0;if(pr(p,mq()|0)|0){c[d>>2]=0;q=1;break}else{q=(c[d>>2]|0)==0;break}}else q=1;while(0);do if(l|0){k=c[l+12>>2]|0;if((k|0)==(c[l+16>>2]|0))r=rb[c[(c[l>>2]|0)+36>>2]&127](l)|0;else r=nq(a[k>>0]|0)|0;if(!(pr(r,mq()|0)|0))if(q)break a;else{n=2;m=38;break a}else{c[e>>2]=0;break}}while(0);if(q){n=2;m=38}}else{n=4;m=38}}while(0);if((m|0)==38)c[f>>2]=c[f>>2]|n;return}function rv(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;i=c[d>>2]|0;do if(i){j=c[i+12>>2]|0;if((j|0)==(c[i+16>>2]|0))k=rb[c[(c[i>>2]|0)+36>>2]&127](i)|0;else k=nq(a[j>>0]|0)|0;if(pr(k,mq()|0)|0){c[d>>2]=0;l=1;break}else{l=(c[d>>2]|0)==0;break}}else l=1;while(0);k=c[e>>2]|0;do if(k){i=c[k+12>>2]|0;if((i|0)==(c[k+16>>2]|0))m=rb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else m=nq(a[i>>0]|0)|0;if(!(pr(m,mq()|0)|0))if(l){n=k;o=17;break}else{o=16;break}else{c[e>>2]=0;o=14;break}}else o=14;while(0);if((o|0)==14)if(l)o=16;else{n=0;o=17}a:do if((o|0)==16){c[f>>2]=c[f>>2]|6;p=0}else if((o|0)==17){l=c[d>>2]|0;k=c[l+12>>2]|0;if((k|0)==(c[l+16>>2]|0))q=rb[c[(c[l>>2]|0)+36>>2]&127](l)|0;else q=nq(a[k>>0]|0)|0;k=q&255;if(k<<24>>24>-1?(l=g+8|0,b[(c[l>>2]|0)+(q<<24>>24<<1)>>1]&2048):0){m=(ib[c[(c[g>>2]|0)+36>>2]&31](g,k,0)|0)<<24>>24;k=c[d>>2]|0;i=k+12|0;j=c[i>>2]|0;if((j|0)==(c[k+16>>2]|0)){rb[c[(c[k>>2]|0)+40>>2]&127](k)|0;r=m;s=h;t=n;u=n}else{c[i>>2]=j+1;nq(a[j>>0]|0)|0;r=m;s=h;t=n;u=n}while(1){v=r+-48|0;m=s+-1|0;j=c[d>>2]|0;do if(j){i=c[j+12>>2]|0;if((i|0)==(c[j+16>>2]|0))w=rb[c[(c[j>>2]|0)+36>>2]&127](j)|0;else w=nq(a[i>>0]|0)|0;if(pr(w,mq()|0)|0){c[d>>2]=0;x=1;break}else{x=(c[d>>2]|0)==0;break}}else x=1;while(0);do if(u){j=c[u+12>>2]|0;if((j|0)==(c[u+16>>2]|0))y=rb[c[(c[u>>2]|0)+36>>2]&127](u)|0;else y=nq(a[j>>0]|0)|0;if(pr(y,mq()|0)|0){c[e>>2]=0;z=0;A=1;B=0;break}else{z=t;A=(t|0)==0;B=t;break}}else{z=t;A=1;B=0}while(0);C=c[d>>2]|0;if(!((s|0)>1&(x^A)))break;j=c[C+12>>2]|0;if((j|0)==(c[C+16>>2]|0))D=rb[c[(c[C>>2]|0)+36>>2]&127](C)|0;else D=nq(a[j>>0]|0)|0;j=D&255;if(j<<24>>24<=-1){p=v;break a}if(!(b[(c[l>>2]|0)+(D<<24>>24<<1)>>1]&2048)){p=v;break a}i=((ib[c[(c[g>>2]|0)+36>>2]&31](g,j,0)|0)<<24>>24)+(v*10|0)|0;j=c[d>>2]|0;k=j+12|0;E=c[k>>2]|0;if((E|0)==(c[j+16>>2]|0)){rb[c[(c[j>>2]|0)+40>>2]&127](j)|0;r=i;s=m;t=z;u=B;continue}else{c[k>>2]=E+1;nq(a[E>>0]|0)|0;r=i;s=m;t=z;u=B;continue}}do if(C){l=c[C+12>>2]|0;if((l|0)==(c[C+16>>2]|0))F=rb[c[(c[C>>2]|0)+36>>2]&127](C)|0;else F=nq(a[l>>0]|0)|0;if(pr(F,mq()|0)|0){c[d>>2]=0;G=1;break}else{G=(c[d>>2]|0)==0;break}}else G=1;while(0);do if(z){l=c[z+12>>2]|0;if((l|0)==(c[z+16>>2]|0))H=rb[c[(c[z>>2]|0)+36>>2]&127](z)|0;else H=nq(a[l>>0]|0)|0;if(!(pr(H,mq()|0)|0))if(G){p=v;break a}else break;else{c[e>>2]=0;o=62;break}}else o=62;while(0);if((o|0)==62?!G:0){p=v;break}c[f>>2]=c[f>>2]|2;p=v;break}c[f>>2]=c[f>>2]|4;p=0}while(0);return p|0}function sv(a){a=a|0;Cs(a);return}function tv(a){a=a|0;Cs(a);tB(a);return}function uv(a){a=a|0;return 2}function vv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h+12|0;j=h+8|0;k=h+4|0;m=h;c[k>>2]=c[b>>2];c[m>>2]=c[d>>2];c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];m=Rv(a,j,i,e,f,g,15928,15960)|0;l=h;return m|0}function wv(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;i=l;l=l+16|0;j=i+12|0;k=i+8|0;m=i+4|0;n=i;o=b+8|0;p=rb[c[(c[o>>2]|0)+20>>2]&127](o)|0;c[m>>2]=c[d>>2];c[n>>2]=c[e>>2];e=a[p+8+3>>0]|0;d=e<<24>>24<0;o=d?c[p>>2]|0:p;q=o+((d?c[p+4>>2]|0:e&255)<<2)|0;c[k>>2]=c[m>>2];c[j>>2]=c[n>>2];n=Rv(b,k,j,f,g,h,o,q)|0;l=i;return n|0}function xv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;qr(i,e);e=Xs(i,40948)|0;Ys(i);c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];Pv(a,g+24|0,b,i,f,e);l=h;return c[b>>2]|0}function yv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;qr(i,e);e=Xs(i,40948)|0;Ys(i);c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];Qv(a,g+16|0,b,i,f,e);l=h;return c[b>>2]|0}function zv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=l;l=l+16|0;i=h+4|0;j=h;qr(i,e);e=Xs(i,40948)|0;Ys(i);c[j>>2]=c[d>>2];c[i>>2]=c[j>>2];aw(a,g+20|0,b,i,f,e);l=h;return c[b>>2]|0}function Av(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;j=l;l=l+144|0;k=j+128|0;m=j+112|0;n=j+124|0;o=j+120|0;p=j+116|0;q=j+108|0;r=j+104|0;s=j+100|0;t=j+96|0;u=j+92|0;v=j+88|0;w=j+84|0;x=j+80|0;y=j+76|0;z=j+72|0;A=j+68|0;B=j+64|0;C=j+60|0;D=j+56|0;E=j+52|0;F=j+48|0;G=j+44|0;H=j+40|0;I=j+36|0;J=j+32|0;K=j+28|0;L=j+24|0;M=j+20|0;N=j+16|0;O=j+12|0;P=j+8|0;Q=j+4|0;R=j;c[g>>2]=0;qr(k,f);S=Xs(k,40948)|0;Ys(k);T=h+8|0;U=h+20|0;V=h+16|0;W=h+24|0;X=b+8|0;do switch(i<<24>>24|0){case 65:case 97:{c[n>>2]=c[e>>2];c[k>>2]=c[n>>2];Pv(b,W,d,k,g,S);Y=26;break}case 104:case 66:case 98:{c[o>>2]=c[e>>2];c[k>>2]=c[o>>2];Qv(b,V,d,k,g,S);Y=26;break}case 99:{Z=rb[c[(c[X>>2]|0)+12>>2]&127](X)|0;c[p>>2]=c[d>>2];c[q>>2]=c[e>>2];_=a[Z+8+3>>0]|0;$=_<<24>>24<0;aa=$?c[Z>>2]|0:Z;ba=aa+(($?c[Z+4>>2]|0:_&255)<<2)|0;c[m>>2]=c[p>>2];c[k>>2]=c[q>>2];c[d>>2]=Rv(b,m,k,f,g,h,aa,ba)|0;Y=26;break}case 101:case 100:{c[r>>2]=c[e>>2];c[k>>2]=c[r>>2];Sv(b,h+12|0,d,k,g,S);Y=26;break}case 68:{c[s>>2]=c[d>>2];c[t>>2]=c[e>>2];c[m>>2]=c[s>>2];c[k>>2]=c[t>>2];c[d>>2]=Rv(b,m,k,f,g,h,15768,15800)|0;Y=26;break}case 70:{c[u>>2]=c[d>>2];c[v>>2]=c[e>>2];c[m>>2]=c[u>>2];c[k>>2]=c[v>>2];c[d>>2]=Rv(b,m,k,f,g,h,15800,15832)|0;Y=26;break}case 72:{c[w>>2]=c[e>>2];c[k>>2]=c[w>>2];Tv(b,T,d,k,g,S);Y=26;break}case 73:{c[x>>2]=c[e>>2];c[k>>2]=c[x>>2];Uv(b,T,d,k,g,S);Y=26;break}case 106:{c[y>>2]=c[e>>2];c[k>>2]=c[y>>2];Vv(b,h+28|0,d,k,g,S);Y=26;break}case 109:{c[z>>2]=c[e>>2];c[k>>2]=c[z>>2];Wv(b,V,d,k,g,S);Y=26;break}case 77:{c[A>>2]=c[e>>2];c[k>>2]=c[A>>2];Xv(b,h+4|0,d,k,g,S);Y=26;break}case 116:case 110:{c[B>>2]=c[e>>2];c[k>>2]=c[B>>2];Yv(b,d,k,g,S);Y=26;break}case 112:{c[C>>2]=c[e>>2];c[k>>2]=c[C>>2];Zv(b,T,d,k,g,S);Y=26;break}case 114:{c[D>>2]=c[d>>2];c[E>>2]=c[e>>2];c[m>>2]=c[D>>2];c[k>>2]=c[E>>2];c[d>>2]=Rv(b,m,k,f,g,h,15832,15876)|0;Y=26;break}case 82:{c[F>>2]=c[d>>2];c[G>>2]=c[e>>2];c[m>>2]=c[F>>2];c[k>>2]=c[G>>2];c[d>>2]=Rv(b,m,k,f,g,h,15876,15896)|0;Y=26;break}case 83:{c[H>>2]=c[e>>2];c[k>>2]=c[H>>2];_v(b,h,d,k,g,S);Y=26;break}case 84:{c[I>>2]=c[d>>2];c[J>>2]=c[e>>2];c[m>>2]=c[I>>2];c[k>>2]=c[J>>2];c[d>>2]=Rv(b,m,k,f,g,h,15896,15928)|0;Y=26;break}case 119:{c[K>>2]=c[e>>2];c[k>>2]=c[K>>2];$v(b,W,d,k,g,S);Y=26;break}case 120:{ba=c[(c[b>>2]|0)+20>>2]|0;c[L>>2]=c[d>>2];c[M>>2]=c[e>>2];c[m>>2]=c[L>>2];c[k>>2]=c[M>>2];ca=qb[ba&63](b,m,k,f,g,h)|0;break}case 88:{ba=rb[c[(c[X>>2]|0)+24>>2]&127](X)|0;c[N>>2]=c[d>>2];c[O>>2]=c[e>>2];aa=a[ba+8+3>>0]|0;_=aa<<24>>24<0;Z=_?c[ba>>2]|0:ba;$=Z+((_?c[ba+4>>2]|0:aa&255)<<2)|0;c[m>>2]=c[N>>2];c[k>>2]=c[O>>2];c[d>>2]=Rv(b,m,k,f,g,h,Z,$)|0;Y=26;break}case 121:{c[P>>2]=c[e>>2];c[k>>2]=c[P>>2];aw(b,U,d,k,g,S);Y=26;break}case 89:{c[Q>>2]=c[e>>2];c[k>>2]=c[Q>>2];bw(b,U,d,k,g,S);Y=26;break}case 37:{c[R>>2]=c[e>>2];c[k>>2]=c[R>>2];cw(b,d,k,g,S);Y=26;break}default:{c[g>>2]=c[g>>2]|4;Y=26}}while(0);if((Y|0)==26)ca=c[d>>2]|0;l=j;return ca|0}function Bv(b){b=b|0;if((a[38368]|0)==0?xD(38368)|0:0){Nv();c[10650]=42432}return c[10650]|0}function Cv(b){b=b|0;if((a[38352]|0)==0?xD(38352)|0:0){Lv();c[10607]=42140}return c[10607]|0}function Dv(b){b=b|0;if((a[38336]|0)==0?xD(38336)|0:0){Jv();c[10534]=41848}return c[10534]|0}function Ev(b){b=b|0;if((a[38328]|0)==0?xD(38328)|0:0){c[10459]=0;c[10460]=0;c[10461]=0;dC(41836,14800,Iv(14800)|0);Wa(274,41836,o|0)|0}return 41836}function Fv(b){b=b|0;if((a[38320]|0)==0?xD(38320)|0:0){c[10456]=0;c[10457]=0;c[10458]=0;dC(41824,14752,Iv(14752)|0);Wa(274,41824,o|0)|0}return 41824}function Gv(b){b=b|0;if((a[38312]|0)==0?xD(38312)|0:0){c[10453]=0;c[10454]=0;c[10455]=0;dC(41812,14716,Iv(14716)|0);Wa(274,41812,o|0)|0}return 41812}function Hv(b){b=b|0;if((a[38304]|0)==0?xD(38304)|0:0){c[10450]=0;c[10451]=0;c[10452]=0;dC(41800,14680,Iv(14680)|0);Wa(274,41800,o|0)|0}return 41800}function Iv(a){a=a|0;return so(a)|0}function Jv(){var b=0,d=0;if((a[38344]|0)==0?xD(38344)|0:0){b=41848;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[b+(d<<2)>>2]=0;d=d+1|0}b=b+12|0}while((b|0)!=42136);Wa(275,0,o|0)|0}lC(41848,14884)|0;lC(41860,14896)|0;return}function Kv(a){a=a|0;a=42136;do{a=a+-12|0;gC(a)}while((a|0)!=41848);return}function Lv(){var b=0,d=0;if((a[38360]|0)==0?xD(38360)|0:0){b=42140;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[b+(d<<2)>>2]=0;d=d+1|0}b=b+12|0}while((b|0)!=42428);Wa(276,0,o|0)|0}lC(42140,14908)|0;lC(42152,14940)|0;lC(42164,14976)|0;lC(42176,15e3)|0;lC(42188,15024)|0;lC(42200,15040)|0;lC(42212,15060)|0;lC(42224,15080)|0;lC(42236,15108)|0;lC(42248,15148)|0;lC(42260,15180)|0;lC(42272,15216)|0;lC(42284,15252)|0;lC(42296,15268)|0;lC(42308,15284)|0;lC(42320,15300)|0;lC(42332,15024)|0;lC(42344,15316)|0;lC(42356,15332)|0;lC(42368,15348)|0;lC(42380,15364)|0;lC(42392,15380)|0;lC(42404,15396)|0;lC(42416,15412)|0;return}function Mv(a){a=a|0;a=42428;do{a=a+-12|0;gC(a)}while((a|0)!=42140);return}function Nv(){var b=0,d=0;if((a[38376]|0)==0?xD(38376)|0:0){b=42432;do{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=0;while(1){if((d|0)==3)break;c[b+(d<<2)>>2]=0;d=d+1|0}b=b+12|0}while((b|0)!=42600);Wa(277,0,o|0)|0}lC(42432,15428)|0;lC(42444,15456)|0;lC(42456,15484)|0;lC(42468,15516)|0;lC(42480,15556)|0;lC(42492,15592)|0;lC(42504,15620)|0;lC(42516,15656)|0;lC(42528,15672)|0;lC(42540,15688)|0;lC(42552,15704)|0;lC(42564,15720)|0;lC(42576,15736)|0;lC(42588,15752)|0;return}function Ov(a){a=a|0;a=42600;do{a=a+-12|0;gC(a)}while((a|0)!=42432);return}function Pv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+4|0;j=h;k=a+8|0;a=rb[c[c[k>>2]>>2]&127](k)|0;c[j>>2]=c[e>>2];c[i>>2]=c[j>>2];j=(cu(d,i,a,a+168|0,g,f,0)|0)-a|0;if((j|0)<168)c[b>>2]=((j|0)/12|0|0)%7|0;l=h;return}function Qv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;h=l;l=l+16|0;i=h+4|0;j=h;k=a+8|0;a=rb[c[(c[k>>2]|0)+4>>2]&127](k)|0;c[j>>2]=c[e>>2];c[i>>2]=c[j>>2];j=(cu(d,i,a,a+288|0,g,f,0)|0)-a|0;if((j|0)<288)c[b>>2]=((j|0)/12|0|0)%12|0;l=h;return}function Rv(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0;j=l;l=l+16|0;k=j+12|0;m=j+8|0;n=j+4|0;o=j;qr(k,e);p=Xs(k,40948)|0;Ys(k);c[f>>2]=0;q=h;h=0;a:while(1){r=(q|0)!=(i|0);s=h;while(1){t=c[b>>2]|0;if(!(r&(s|0)==0)){u=t;break a}v=t;if(t){w=c[t+12>>2]|0;if((w|0)==(c[t+16>>2]|0))x=rb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else x=Fq(c[w>>2]|0)|0;if(rr(x,Eq()|0)|0){c[b>>2]=0;y=0;z=1;A=0}else{y=t;z=0;A=v}}else{y=0;z=1;A=v}v=c[d>>2]|0;t=v;do if(v){w=c[v+12>>2]|0;if((w|0)==(c[v+16>>2]|0))B=rb[c[(c[v>>2]|0)+36>>2]&127](v)|0;else B=Fq(c[w>>2]|0)|0;if(!(rr(B,Eq()|0)|0))if(z){C=v;D=t;break}else{E=58;break a}else{c[d>>2]=0;F=0;E=16;break}}else{F=t;E=16}while(0);if((E|0)==16){E=0;if(z){E=58;break a}else{C=0;D=F}}if((ib[c[(c[p>>2]|0)+52>>2]&31](p,c[q>>2]|0,0)|0)<<24>>24==37){E=19;break}if(ib[c[(c[p>>2]|0)+12>>2]&31](p,8192,c[q>>2]|0)|0){G=q;E=26;break}H=y+12|0;t=c[H>>2]|0;I=y+16|0;if((t|0)==(c[I>>2]|0))J=rb[c[(c[y>>2]|0)+36>>2]&127](y)|0;else J=Fq(c[t>>2]|0)|0;t=zb[c[(c[p>>2]|0)+28>>2]&63](p,J)|0;if((t|0)==(zb[c[(c[p>>2]|0)+28>>2]&63](p,c[q>>2]|0)|0)){E=54;break}c[f>>2]=4;s=4}b:do if((E|0)==19){E=0;s=q+4|0;if((s|0)==(i|0)){E=58;break a}r=ib[c[(c[p>>2]|0)+52>>2]&31](p,c[s>>2]|0,0)|0;switch(r<<24>>24){case 48:case 69:{t=q+8|0;if((t|0)==(i|0)){E=58;break a}K=r;L=ib[c[(c[p>>2]|0)+52>>2]&31](p,c[t>>2]|0,0)|0;M=s;break}default:{K=0;L=r;M=q}}r=c[(c[a>>2]|0)+36>>2]|0;c[n>>2]=A;c[o>>2]=D;c[m>>2]=c[n>>2];c[k>>2]=c[o>>2];c[b>>2]=wb[r&15](a,m,k,e,f,g,L,K)|0;N=M+8|0}else if((E|0)==26){while(1){E=0;r=G+4|0;if((r|0)==(i|0)){O=i;break}if(ib[c[(c[p>>2]|0)+12>>2]&31](p,8192,c[r>>2]|0)|0){G=r;E=26}else{O=r;break}}r=y;s=C;t=C;while(1){if(r){v=c[r+12>>2]|0;if((v|0)==(c[r+16>>2]|0))P=rb[c[(c[r>>2]|0)+36>>2]&127](r)|0;else P=Fq(c[v>>2]|0)|0;if(rr(P,Eq()|0)|0){c[b>>2]=0;Q=1;R=0}else{Q=0;R=r}}else{Q=1;R=0}do if(t){v=c[t+12>>2]|0;if((v|0)==(c[t+16>>2]|0))S=rb[c[(c[t>>2]|0)+36>>2]&127](t)|0;else S=Fq(c[v>>2]|0)|0;if(!(rr(S,Eq()|0)|0))if(Q^(s|0)==0){T=s;U=s;break}else{N=O;break b}else{c[d>>2]=0;V=0;E=41;break}}else{V=s;E=41}while(0);if((E|0)==41){E=0;if(Q){N=O;break b}else{T=V;U=0}}v=R+12|0;w=c[v>>2]|0;W=R+16|0;if((w|0)==(c[W>>2]|0))X=rb[c[(c[R>>2]|0)+36>>2]&127](R)|0;else X=Fq(c[w>>2]|0)|0;if(!(ib[c[(c[p>>2]|0)+12>>2]&31](p,8192,X)|0)){N=O;break b}w=c[v>>2]|0;if((w|0)==(c[W>>2]|0)){rb[c[(c[R>>2]|0)+40>>2]&127](R)|0;r=R;s=T;t=U;continue}else{c[v>>2]=w+4;Fq(c[w>>2]|0)|0;r=R;s=T;t=U;continue}}}else if((E|0)==54){E=0;t=q+4|0;s=c[H>>2]|0;if((s|0)==(c[I>>2]|0)){rb[c[(c[y>>2]|0)+40>>2]&127](y)|0;N=t;break}else{c[H>>2]=s+4;Fq(c[s>>2]|0)|0;N=t;break}}while(0);q=N;h=c[f>>2]|0}if((E|0)==58){c[f>>2]=4;u=y}if(u){y=c[u+12>>2]|0;if((y|0)==(c[u+16>>2]|0))Y=rb[c[(c[u>>2]|0)+36>>2]&127](u)|0;else Y=Fq(c[y>>2]|0)|0;if(rr(Y,Eq()|0)|0){c[b>>2]=0;Z=0;_=1}else{Z=u;_=0}}else{Z=0;_=1}u=c[d>>2]|0;do if(u){b=c[u+12>>2]|0;if((b|0)==(c[u+16>>2]|0))$=rb[c[(c[u>>2]|0)+36>>2]&127](u)|0;else $=Fq(c[b>>2]|0)|0;if(!(rr($,Eq()|0)|0))if(_)break;else{E=73;break}else{c[d>>2]=0;E=71;break}}else E=71;while(0);if((E|0)==71?_:0)E=73;if((E|0)==73)c[f>>2]=c[f>>2]|2;l=j;return Z|0}function Sv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=dw(d,h,f,g,2)|0;g=c[f>>2]|0;if((i+-1|0)>>>0<31&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function Tv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=dw(d,h,f,g,2)|0;g=c[f>>2]|0;if((i|0)<24&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function Uv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=dw(d,h,f,g,2)|0;g=c[f>>2]|0;if((i+-1|0)>>>0<12&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function Vv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=dw(d,h,f,g,3)|0;g=c[f>>2]|0;if((i|0)<366&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function Wv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=dw(d,h,f,g,2)|0;g=c[f>>2]|0;if((i|0)<13&(g&4|0)==0)c[b>>2]=i+-1;else c[f>>2]=g|4;l=a;return}function Xv(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=dw(d,h,f,g,2)|0;g=c[f>>2]|0;if((i|0)<60&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function Yv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;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;a:while(1){a=c[b>>2]|0;do if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))h=rb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else h=Fq(c[g>>2]|0)|0;if(rr(h,Eq()|0)|0){c[b>>2]=0;i=1;break}else{i=(c[b>>2]|0)==0;break}}else i=1;while(0);a=c[d>>2]|0;do if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))j=rb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else j=Fq(c[g>>2]|0)|0;if(!(rr(j,Eq()|0)|0))if(i){k=a;break}else{l=a;break a}else{c[d>>2]=0;m=15;break}}else m=15;while(0);if((m|0)==15){m=0;if(i){l=0;break}else k=0}a=c[b>>2]|0;g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))n=rb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else n=Fq(c[g>>2]|0)|0;if(!(ib[c[(c[f>>2]|0)+12>>2]&31](f,8192,n)|0)){l=k;break}g=c[b>>2]|0;a=g+12|0;o=c[a>>2]|0;if((o|0)==(c[g+16>>2]|0)){rb[c[(c[g>>2]|0)+40>>2]&127](g)|0;continue}else{c[a>>2]=o+4;Fq(c[o>>2]|0)|0;continue}}k=c[b>>2]|0;do if(k){n=c[k+12>>2]|0;if((n|0)==(c[k+16>>2]|0))p=rb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else p=Fq(c[n>>2]|0)|0;if(rr(p,Eq()|0)|0){c[b>>2]=0;q=1;break}else{q=(c[b>>2]|0)==0;break}}else q=1;while(0);do if(l){b=c[l+12>>2]|0;if((b|0)==(c[l+16>>2]|0))r=rb[c[(c[l>>2]|0)+36>>2]&127](l)|0;else r=Fq(c[b>>2]|0)|0;if(!(rr(r,Eq()|0)|0))if(q)break;else{m=39;break}else{c[d>>2]=0;m=37;break}}else m=37;while(0);if((m|0)==37?q:0)m=39;if((m|0)==39)c[e>>2]=c[e>>2]|2;return}function Zv(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0;i=l;l=l+16|0;j=i+4|0;k=i;m=b+8|0;b=rb[c[(c[m>>2]|0)+8>>2]&127](m)|0;m=a[b+8+3>>0]|0;if(m<<24>>24<0)n=c[b+4>>2]|0;else n=m&255;m=a[b+20+3>>0]|0;if(m<<24>>24<0)o=c[b+16>>2]|0;else o=m&255;do if((n|0)!=(0-o|0)){c[k>>2]=c[f>>2];c[j>>2]=c[k>>2];m=(cu(e,j,b,b+24|0,h,g,0)|0)-b|0;p=c[d>>2]|0;if((p|0)==12&(m|0)==0){c[d>>2]=0;break}if((p|0)<12&(m|0)==12)c[d>>2]=p+12}else c[g>>2]=c[g>>2]|4;while(0);l=i;return}function _v(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=dw(d,h,f,g,2)|0;g=c[f>>2]|0;if((i|0)<61&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function $v(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=dw(d,h,f,g,1)|0;g=c[f>>2]|0;if((i|0)<7&(g&4|0)==0)c[b>>2]=i;else c[f>>2]=g|4;l=a;return}function aw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=dw(d,h,f,g,4)|0;if(!(c[f>>2]&4)){if((i|0)<69)j=i+2e3|0;else j=(i|0)<100?i+1900|0:i;c[b>>2]=j+-1900}l=a;return}function bw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;a=l;l=l+16|0;h=a+4|0;i=a;c[i>>2]=c[e>>2];c[h>>2]=c[i>>2];i=dw(d,h,f,g,4)|0;if(!(c[f>>2]&4))c[b>>2]=i+-1900;l=a;return}function cw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;a=c[b>>2]|0;do if(a){g=c[a+12>>2]|0;if((g|0)==(c[a+16>>2]|0))h=rb[c[(c[a>>2]|0)+36>>2]&127](a)|0;else h=Fq(c[g>>2]|0)|0;if(rr(h,Eq()|0)|0){c[b>>2]=0;i=1;break}else{i=(c[b>>2]|0)==0;break}}else i=1;while(0);h=c[d>>2]|0;do if(h){a=c[h+12>>2]|0;if((a|0)==(c[h+16>>2]|0))j=rb[c[(c[h>>2]|0)+36>>2]&127](h)|0;else j=Fq(c[a>>2]|0)|0;if(!(rr(j,Eq()|0)|0))if(i){k=h;l=16;break}else{m=6;l=38;break}else{c[d>>2]=0;l=14;break}}else l=14;while(0);if((l|0)==14)if(i){m=6;l=38}else{k=0;l=16}a:do if((l|0)==16){i=c[b>>2]|0;h=c[i+12>>2]|0;if((h|0)==(c[i+16>>2]|0))n=rb[c[(c[i>>2]|0)+36>>2]&127](i)|0;else n=Fq(c[h>>2]|0)|0;if((ib[c[(c[f>>2]|0)+52>>2]&31](f,n,0)|0)<<24>>24==37){h=c[b>>2]|0;i=h+12|0;j=c[i>>2]|0;if((j|0)==(c[h+16>>2]|0))rb[c[(c[h>>2]|0)+40>>2]&127](h)|0;else{c[i>>2]=j+4;Fq(c[j>>2]|0)|0}j=c[b>>2]|0;do if(j){i=c[j+12>>2]|0;if((i|0)==(c[j+16>>2]|0))o=rb[c[(c[j>>2]|0)+36>>2]&127](j)|0;else o=Fq(c[i>>2]|0)|0;if(rr(o,Eq()|0)|0){c[b>>2]=0;p=1;break}else{p=(c[b>>2]|0)==0;break}}else p=1;while(0);do if(k|0){j=c[k+12>>2]|0;if((j|0)==(c[k+16>>2]|0))q=rb[c[(c[k>>2]|0)+36>>2]&127](k)|0;else q=Fq(c[j>>2]|0)|0;if(!(rr(q,Eq()|0)|0))if(p)break a;else{m=2;l=38;break a}else{c[d>>2]=0;break}}while(0);if(p){m=2;l=38}}else{m=4;l=38}}while(0);if((l|0)==38)c[e>>2]=c[e>>2]|m;return}function dw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;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,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=c[a>>2]|0;do if(g){h=c[g+12>>2]|0;if((h|0)==(c[g+16>>2]|0))i=rb[c[(c[g>>2]|0)+36>>2]&127](g)|0;else i=Fq(c[h>>2]|0)|0;if(rr(i,Eq()|0)|0){c[a>>2]=0;j=1;break}else{j=(c[a>>2]|0)==0;break}}else j=1;while(0);i=c[b>>2]|0;do if(i){g=c[i+12>>2]|0;if((g|0)==(c[i+16>>2]|0))k=rb[c[(c[i>>2]|0)+36>>2]&127](i)|0;else k=Fq(c[g>>2]|0)|0;if(!(rr(k,Eq()|0)|0))if(j){l=i;m=17;break}else{m=16;break}else{c[b>>2]=0;m=14;break}}else m=14;while(0);if((m|0)==14)if(j)m=16;else{l=0;m=17}a:do if((m|0)==16){c[d>>2]=c[d>>2]|6;n=0}else if((m|0)==17){j=c[a>>2]|0;i=c[j+12>>2]|0;if((i|0)==(c[j+16>>2]|0))o=rb[c[(c[j>>2]|0)+36>>2]&127](j)|0;else o=Fq(c[i>>2]|0)|0;if(!(ib[c[(c[e>>2]|0)+12>>2]&31](e,2048,o)|0)){c[d>>2]=c[d>>2]|4;n=0;break}i=(ib[c[(c[e>>2]|0)+52>>2]&31](e,o,0)|0)<<24>>24;j=c[a>>2]|0;k=j+12|0;g=c[k>>2]|0;if((g|0)==(c[j+16>>2]|0)){rb[c[(c[j>>2]|0)+40>>2]&127](j)|0;p=i;q=f;r=l;s=l}else{c[k>>2]=g+4;Fq(c[g>>2]|0)|0;p=i;q=f;r=l;s=l}while(1){t=p+-48|0;i=q+-1|0;g=c[a>>2]|0;do if(g){k=c[g+12>>2]|0;if((k|0)==(c[g+16>>2]|0))u=rb[c[(c[g>>2]|0)+36>>2]&127](g)|0;else u=Fq(c[k>>2]|0)|0;if(rr(u,Eq()|0)|0){c[a>>2]=0;v=1;break}else{v=(c[a>>2]|0)==0;break}}else v=1;while(0);do if(s){g=c[s+12>>2]|0;if((g|0)==(c[s+16>>2]|0))w=rb[c[(c[s>>2]|0)+36>>2]&127](s)|0;else w=Fq(c[g>>2]|0)|0;if(rr(w,Eq()|0)|0){c[b>>2]=0;x=0;y=1;z=0;break}else{x=r;y=(r|0)==0;z=r;break}}else{x=r;y=1;z=0}while(0);A=c[a>>2]|0;if(!((q|0)>1&(v^y)))break;g=c[A+12>>2]|0;if((g|0)==(c[A+16>>2]|0))B=rb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else B=Fq(c[g>>2]|0)|0;if(!(ib[c[(c[e>>2]|0)+12>>2]&31](e,2048,B)|0)){n=t;break a}g=((ib[c[(c[e>>2]|0)+52>>2]&31](e,B,0)|0)<<24>>24)+(t*10|0)|0;k=c[a>>2]|0;j=k+12|0;h=c[j>>2]|0;if((h|0)==(c[k+16>>2]|0)){rb[c[(c[k>>2]|0)+40>>2]&127](k)|0;p=g;q=i;r=x;s=z;continue}else{c[j>>2]=h+4;Fq(c[h>>2]|0)|0;p=g;q=i;r=x;s=z;continue}}do if(A){g=c[A+12>>2]|0;if((g|0)==(c[A+16>>2]|0))C=rb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else C=Fq(c[g>>2]|0)|0;if(rr(C,Eq()|0)|0){c[a>>2]=0;D=1;break}else{D=(c[a>>2]|0)==0;break}}else D=1;while(0);do if(x){g=c[x+12>>2]|0;if((g|0)==(c[x+16>>2]|0))E=rb[c[(c[x>>2]|0)+36>>2]&127](x)|0;else E=Fq(c[g>>2]|0)|0;if(!(rr(E,Eq()|0)|0))if(D){n=t;break a}else break;else{c[b>>2]=0;m=60;break}}else m=60;while(0);if((m|0)==60?!D:0){n=t;break}c[d>>2]=c[d>>2]|2;n=t}while(0);return n|0}function ew(a){a=a|0;jw(a+8|0);Cs(a);return}function fw(a){a=a|0;jw(a+8|0);Cs(a);tB(a);return}function gw(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0;f=l;l=l+112|0;e=f+4|0;j=f;c[j>>2]=e+100;hw(b+8|0,e,j,g,h,i);i=c[j>>2]|0;j=e;e=c[d>>2]|0;while(1){if((j|0)==(i|0))break;d=a[j>>0]|0;if(!e)k=0;else{h=e+24|0;g=c[h>>2]|0;if((g|0)==(c[e+28>>2]|0)){b=c[(c[e>>2]|0)+52>>2]|0;m=nq(d)|0;n=zb[b&63](e,m)|0}else{c[h>>2]=g+1;a[g>>0]=d;n=nq(d)|0}d=pr(n,mq()|0)|0;k=d?0:e}j=j+1|0;e=k}l=f;return e|0}function hw(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;i=l;l=l+16|0;j=i;a[j>>0]=37;k=j+1|0;a[k>>0]=g;m=j+2|0;a[m>>0]=h;a[j+3>>0]=0;if(h<<24>>24){a[k>>0]=h;a[m>>0]=g}g=iw(d,c[e>>2]|0)|0;c[e>>2]=d+(Ea(d|0,g|0,j|0,f|0,c[b>>2]|0)|0);l=i;return}function iw(a,b){a=a|0;b=b|0;return b-a|0}function jw(a){a=a|0;var b=0;b=c[a>>2]|0;if((b|0)!=(_s()|0))zp(c[a>>2]|0);return}function kw(a){a=a|0;jw(a+8|0);Cs(a);return}function lw(a){a=a|0;jw(a+8|0);Cs(a);tB(a);return}function mw(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0;e=l;l=l+416|0;d=e+8|0;i=e;c[i>>2]=d+400;nw(a+8|0,d,i,f,g,h);h=c[i>>2]|0;i=d;d=c[b>>2]|0;while(1){if((i|0)==(h|0))break;b=c[i>>2]|0;if(!d)j=0;else{g=d+24|0;f=c[g>>2]|0;if((f|0)==(c[d+28>>2]|0)){a=c[(c[d>>2]|0)+52>>2]|0;k=Fq(b)|0;m=zb[a&63](d,k)|0}else{c[g>>2]=f+4;c[f>>2]=b;m=Fq(b)|0}b=rr(m,Eq()|0)|0;j=b?0:d}i=i+4|0;d=j}l=e;return d|0}function nw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+128|0;i=h+16|0;j=h+12|0;k=h;m=h+8|0;c[j>>2]=i+100;hw(a,i,j,e,f,g);g=k;c[g>>2]=0;c[g+4>>2]=0;c[m>>2]=i;i=ow(b,c[d>>2]|0)|0;g=up(c[a>>2]|0)|0;a=Io(b,m,i,k)|0;if(g|0)up(g)|0;c[d>>2]=b+(a<<2);l=h;return}function ow(a,b){a=a|0;b=b|0;return b-a>>2|0}function pw(a){a=a|0;Cs(a);return}function qw(a){a=a|0;Cs(a);tB(a);return}function rw(a){a=a|0;return 127}function sw(a){a=a|0;return 127}function tw(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function uw(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function vw(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function ww(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;IB(a,1,45);return}function xw(a){a=a|0;return 0}function yw(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function zw(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Aw(a){a=a|0;Cs(a);return}function Bw(a){a=a|0;Cs(a);tB(a);return}function Cw(a){a=a|0;return 127}function Dw(a){a=a|0;return 127}function Ew(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Fw(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Gw(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Hw(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;IB(a,1,45);return}function Iw(a){a=a|0;return 0}function Jw(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Kw(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Lw(a){a=a|0;Cs(a);return}function Mw(a){a=a|0;Cs(a);tB(a);return}function Nw(a){a=a|0;return 2147483647}function Ow(a){a=a|0;return 2147483647}function Pw(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Qw(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Rw(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function Sw(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;eC(a,1,45);return}function Tw(a){a=a|0;return 0}function Uw(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Vw(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function Ww(a){a=a|0;Cs(a);return}function Xw(a){a=a|0;Cs(a);tB(a);return}function Yw(a){a=a|0;return 2147483647}function Zw(a){a=a|0;return 2147483647}function _w(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function $w(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function ax(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[a+(b<<2)>>2]=0;b=b+1|0}return}function bx(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;eC(a,1,45);return}function cx(a){a=a|0;return 0}function dx(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function ex(b,c){b=b|0;c=c|0;a[b>>0]=2;a[b+1>>0]=3;a[b+2>>0]=0;a[b+3>>0]=4;return}function fx(a){a=a|0;Cs(a);return}function gx(a){a=a|0;Cs(a);tB(a);return}function hx(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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;b=l;l=l+240|0;j=b+24|0;k=b;m=b+140|0;n=b+16|0;o=b+12|0;p=b+8|0;q=b+136|0;r=b+4|0;s=b+36|0;c[n>>2]=m;t=n+4|0;c[t>>2]=278;qr(p,g);u=Xs(p,40916)|0;a[q>>0]=0;c[r>>2]=c[e>>2];v=c[g+4>>2]|0;c[j>>2]=c[r>>2];if(kx(d,j,f,p,v,h,q,u,n,o,m+100|0)|0){xb[c[(c[u>>2]|0)+32>>2]&15](u,36184,36194,j)|0;u=(c[o>>2]|0)-(c[n>>2]|0)|0;if((u|0)>98){m=Pp(u+2|0)|0;u=m;if(!m){w=0;x=u}else{w=m;x=u}}else{w=s;x=0}if(!(a[q>>0]|0))y=w;else{a[w>>0]=45;y=w+1|0}w=j+10|0;q=j;u=c[n>>2]|0;m=y;while(1){if(u>>>0>=(c[o>>2]|0)>>>0)break;y=a[u>>0]|0;v=j;while(1){if((v|0)==(w|0)){z=w;break}if((a[v>>0]|0)==y<<24>>24){z=v;break}v=v+1|0}a[m>>0]=a[36184+(z-q)>>0]|0;u=u+1|0;m=m+1|0}a[m>>0]=0;c[k>>2]=i;Vo(s,36195,k)|0;if(x|0)Qp(x)}x=c[d>>2]|0;do if(x){k=c[x+12>>2]|0;if((k|0)==(c[x+16>>2]|0))A=rb[c[(c[x>>2]|0)+36>>2]&127](x)|0;else A=nq(a[k>>0]|0)|0;if(pr(A,mq()|0)|0){c[d>>2]=0;B=1;break}else{B=(c[d>>2]|0)==0;break}}else B=1;while(0);A=c[e>>2]|0;do if(A){x=c[A+12>>2]|0;if((x|0)==(c[A+16>>2]|0))C=rb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else C=nq(a[x>>0]|0)|0;if(!(pr(C,mq()|0)|0))if(B)break;else{D=32;break}else{c[e>>2]=0;D=30;break}}else D=30;while(0);if((D|0)==30?B:0)D=32;if((D|0)==32)c[h>>2]=c[h>>2]|2;h=c[d>>2]|0;Ys(p);p=c[n>>2]|0;c[n>>2]=0;if(p|0)ob[c[t>>2]&511](p);l=b;return h|0}function ix(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;b=l;l=l+144|0;j=b+24|0;k=b+32|0;m=b+16|0;n=b+8|0;o=b;p=b+28|0;q=b+4|0;c[m>>2]=k;r=m+4|0;c[r>>2]=278;qr(o,g);s=Xs(o,40916)|0;a[p>>0]=0;t=c[e>>2]|0;c[q>>2]=t;u=c[g+4>>2]|0;c[j>>2]=c[q>>2];q=t;if(kx(d,j,f,o,u,h,p,s,m,n,k+100|0)|0){k=i+11|0;if((a[k>>0]|0)<0){u=c[i>>2]|0;a[j>>0]=0;Bs(u,j);c[i+4>>2]=0}else{a[j>>0]=0;Bs(i,j);a[k>>0]=0}if(a[p>>0]|0)XB(i,zb[c[(c[s>>2]|0)+28>>2]&63](s,45)|0);p=zb[c[(c[s>>2]|0)+28>>2]&63](s,48)|0;s=c[n>>2]|0;n=s+-1|0;k=c[m>>2]|0;while(1){if(k>>>0>=n>>>0)break;if((a[k>>0]|0)!=p<<24>>24)break;k=k+1|0}lx(i,k,s)|0}s=c[d>>2]|0;do if(s){k=c[s+12>>2]|0;if((k|0)==(c[s+16>>2]|0))v=rb[c[(c[s>>2]|0)+36>>2]&127](s)|0;else v=nq(a[k>>0]|0)|0;if(pr(v,mq()|0)|0){c[d>>2]=0;w=1;break}else{w=(c[d>>2]|0)==0;break}}else w=1;while(0);do if(t){v=c[q+12>>2]|0;if((v|0)==(c[q+16>>2]|0))x=rb[c[(c[t>>2]|0)+36>>2]&127](q)|0;else x=nq(a[v>>0]|0)|0;if(!(pr(x,mq()|0)|0))if(w)break;else{y=27;break}else{c[e>>2]=0;y=25;break}}else y=25;while(0);if((y|0)==25?w:0)y=27;if((y|0)==27)c[h>>2]=c[h>>2]|2;h=c[d>>2]|0;Ys(o);o=c[m>>2]|0;c[m>>2]=0;if(o|0)ob[c[r>>2]&511](o);l=b;return h|0}function jx(a){a=a|0;return}function kx(e,f,g,h,i,j,k,m,n,o,p){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=n|0;o=o|0;p=p|0;var q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0;q=l;l=l+512|0;r=q+88|0;s=q+96|0;t=q+80|0;u=q+72|0;v=q+68|0;w=q+500|0;x=q+497|0;y=q+496|0;z=q+56|0;A=q+44|0;B=q+32|0;C=q+20|0;D=q+8|0;E=q+4|0;F=q;c[r>>2]=p;c[t>>2]=s;p=t+4|0;c[p>>2]=278;c[u>>2]=s;c[v>>2]=s+400;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;s=0;while(1){if((s|0)==3)break;c[z+(s<<2)>>2]=0;s=s+1|0}c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;s=0;while(1){if((s|0)==3)break;c[A+(s<<2)>>2]=0;s=s+1|0}c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;s=0;while(1){if((s|0)==3)break;c[B+(s<<2)>>2]=0;s=s+1|0}c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;s=0;while(1){if((s|0)==3)break;c[C+(s<<2)>>2]=0;s=s+1|0}c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;s=0;while(1){if((s|0)==3)break;c[D+(s<<2)>>2]=0;s=s+1|0}mx(g,h,w,x,y,z,A,B,C,E);c[o>>2]=c[n>>2];h=m+8|0;m=B+11|0;g=B+4|0;s=C+11|0;G=C+4|0;H=(i&512|0)!=0;i=A+11|0;I=A+4|0;J=D+11|0;K=D+4|0;L=w+3|0;M=z+11|0;N=z+4|0;O=0;P=0;a:while(1){Q=(O|0)!=0;if(P>>>0>=4){R=234;break}S=c[e>>2]|0;do if(S){T=c[S+12>>2]|0;if((T|0)==(c[S+16>>2]|0))U=rb[c[(c[S>>2]|0)+36>>2]&127](S)|0;else U=nq(a[T>>0]|0)|0;if(pr(U,mq()|0)|0){c[e>>2]=0;V=1;break}else{V=(c[e>>2]|0)==0;break}}else V=1;while(0);S=c[f>>2]|0;do if(S){T=c[S+12>>2]|0;if((T|0)==(c[S+16>>2]|0))W=rb[c[(c[S>>2]|0)+36>>2]&127](S)|0;else W=nq(a[T>>0]|0)|0;if(!(pr(W,mq()|0)|0))if(V){X=S;break}else{R=234;break a}else{c[f>>2]=0;R=31;break}}else R=31;while(0);if((R|0)==31){R=0;if(V){R=234;break}else X=0}S=(P|0)!=3;b:do switch(a[w+P>>0]|0){case 1:{if(S){T=c[e>>2]|0;Y=c[T+12>>2]|0;if((Y|0)==(c[T+16>>2]|0))Z=rb[c[(c[T>>2]|0)+36>>2]&127](T)|0;else Z=nq(a[Y>>0]|0)|0;if((Z&255)<<24>>24<=-1){R=44;break a}if(!(b[(c[h>>2]|0)+(Z<<24>>24<<1)>>1]&8192)){R=44;break a}Y=c[e>>2]|0;T=Y+12|0;_=c[T>>2]|0;if((_|0)==(c[Y+16>>2]|0))$=rb[c[(c[Y>>2]|0)+40>>2]&127](Y)|0;else{c[T>>2]=_+1;$=nq(a[_>>0]|0)|0}XB(D,$&255);aa=X;ba=X;R=46}else ca=O;break}case 0:{if(S){aa=X;ba=X;R=46}else ca=O;break}case 3:{_=a[m>>0]|0;T=_<<24>>24<0?c[g>>2]|0:_&255;_=a[s>>0]|0;Y=_<<24>>24<0?c[G>>2]|0:_&255;if((T|0)==(0-Y|0))ca=O;else{_=(T|0)==0;T=c[e>>2]|0;da=c[T+12>>2]|0;ea=(da|0)==(c[T+16>>2]|0);if(_|(Y|0)==0){if(ea)fa=rb[c[(c[T>>2]|0)+36>>2]&127](T)|0;else fa=nq(a[da>>0]|0)|0;Y=fa&255;if(_){if(Y<<24>>24!=(a[((a[s>>0]|0)<0?c[C>>2]|0:C)>>0]|0)){ca=O;break b}_=c[e>>2]|0;ga=_+12|0;ha=c[ga>>2]|0;if((ha|0)==(c[_+16>>2]|0))rb[c[(c[_>>2]|0)+40>>2]&127](_)|0;else{c[ga>>2]=ha+1;nq(a[ha>>0]|0)|0}a[k>>0]=1;ha=a[s>>0]|0;ca=(ha<<24>>24<0?c[G>>2]|0:ha&255)>>>0>1?C:O;break b}if(Y<<24>>24!=(a[((a[m>>0]|0)<0?c[B>>2]|0:B)>>0]|0)){a[k>>0]=1;ca=O;break b}Y=c[e>>2]|0;ha=Y+12|0;ga=c[ha>>2]|0;if((ga|0)==(c[Y+16>>2]|0))rb[c[(c[Y>>2]|0)+40>>2]&127](Y)|0;else{c[ha>>2]=ga+1;nq(a[ga>>0]|0)|0}ga=a[m>>0]|0;ca=(ga<<24>>24<0?c[g>>2]|0:ga&255)>>>0>1?B:O;break b}if(ea)ia=rb[c[(c[T>>2]|0)+36>>2]&127](T)|0;else ia=nq(a[da>>0]|0)|0;da=c[e>>2]|0;T=da+12|0;ea=c[T>>2]|0;ga=(ea|0)==(c[da+16>>2]|0);if((ia&255)<<24>>24==(a[((a[m>>0]|0)<0?c[B>>2]|0:B)>>0]|0)){if(ga)rb[c[(c[da>>2]|0)+40>>2]&127](da)|0;else{c[T>>2]=ea+1;nq(a[ea>>0]|0)|0}T=a[m>>0]|0;ca=(T<<24>>24<0?c[g>>2]|0:T&255)>>>0>1?B:O;break b}if(ga)ja=rb[c[(c[da>>2]|0)+36>>2]&127](da)|0;else ja=nq(a[ea>>0]|0)|0;if((ja&255)<<24>>24!=(a[((a[s>>0]|0)<0?c[C>>2]|0:C)>>0]|0)){R=103;break a}ea=c[e>>2]|0;da=ea+12|0;ga=c[da>>2]|0;if((ga|0)==(c[ea+16>>2]|0))rb[c[(c[ea>>2]|0)+40>>2]&127](ea)|0;else{c[da>>2]=ga+1;nq(a[ga>>0]|0)|0}a[k>>0]=1;ga=a[s>>0]|0;ca=(ga<<24>>24<0?c[G>>2]|0:ga&255)>>>0>1?C:O}break}case 2:{if(!(P>>>0<2|Q)?!(H|(P|0)==2&(a[L>>0]|0)!=0):0){ca=0;break b}ga=a[i>>0]|0;da=ga<<24>>24<0;ea=c[A>>2]|0;T=da?ea:A;ha=T;c:do if((P|0)!=0?(d[w+(P+-1)>>0]|0)<2:0){Y=T+(da?c[I>>2]|0:ga&255)|0;_=ha;while(1){ka=_;if((ka|0)==(Y|0))break;la=a[ka>>0]|0;if(la<<24>>24<=-1)break;if(!(b[(c[h>>2]|0)+(la<<24>>24<<1)>>1]&8192))break;_=ka+1|0}Y=_-ha|0;ka=a[J>>0]|0;la=ka<<24>>24<0;ma=la?c[K>>2]|0:ka&255;if(Y>>>0<=ma>>>0){ka=(la?c[D>>2]|0:D)+ma|0;ma=T;la=ka+(0-Y)|0;while(1){if((la|0)==(ka|0)){na=X;oa=_;pa=ga;qa=ea;ra=X;break c}if((a[la>>0]|0)!=(a[ma>>0]|0)){na=X;oa=ha;pa=ga;qa=ea;ra=X;break c}ma=ma+1|0;la=la+1|0}}else{na=X;oa=ha;pa=ga;qa=ea;ra=X}}else{na=X;oa=ha;pa=ga;qa=ea;ra=X}while(0);d:while(1){ea=pa<<24>>24<0;ga=(ea?qa:A)+(ea?c[I>>2]|0:pa&255)|0;ea=oa;if((ea|0)==(ga|0)){sa=ga;break}ga=c[e>>2]|0;do if(ga){ha=c[ga+12>>2]|0;if((ha|0)==(c[ga+16>>2]|0))ta=rb[c[(c[ga>>2]|0)+36>>2]&127](ga)|0;else ta=nq(a[ha>>0]|0)|0;if(pr(ta,mq()|0)|0){c[e>>2]=0;ua=1;break}else{ua=(c[e>>2]|0)==0;break}}else ua=1;while(0);do if(ra){ga=c[ra+12>>2]|0;if((ga|0)==(c[ra+16>>2]|0))va=rb[c[(c[ra>>2]|0)+36>>2]&127](ra)|0;else va=nq(a[ga>>0]|0)|0;if(!(pr(va,mq()|0)|0))if(ua^(na|0)==0){wa=na;xa=na;break}else{sa=ea;break d}else{c[f>>2]=0;ya=0;R=132;break}}else{ya=na;R=132}while(0);if((R|0)==132){R=0;if(ua){sa=ea;break}else{wa=ya;xa=0}}ga=c[e>>2]|0;ha=c[ga+12>>2]|0;if((ha|0)==(c[ga+16>>2]|0))za=rb[c[(c[ga>>2]|0)+36>>2]&127](ga)|0;else za=nq(a[ha>>0]|0)|0;if((za&255)<<24>>24!=(a[ea>>0]|0)){sa=ea;break}ha=c[e>>2]|0;ga=ha+12|0;T=c[ga>>2]|0;if((T|0)==(c[ha+16>>2]|0))rb[c[(c[ha>>2]|0)+40>>2]&127](ha)|0;else{c[ga>>2]=T+1;nq(a[T>>0]|0)|0}na=wa;oa=ea+1|0;pa=a[i>>0]|0;qa=c[A>>2]|0;ra=xa}if(H?(T=a[i>>0]|0,ga=T<<24>>24<0,(sa|0)!=((ga?c[A>>2]|0:A)+(ga?c[I>>2]|0:T&255)|0)):0){R=144;break a}else ca=O;break}case 4:{T=0;ga=X;ha=X;e:while(1){da=c[e>>2]|0;do if(da){la=c[da+12>>2]|0;if((la|0)==(c[da+16>>2]|0))Aa=rb[c[(c[da>>2]|0)+36>>2]&127](da)|0;else Aa=nq(a[la>>0]|0)|0;if(pr(Aa,mq()|0)|0){c[e>>2]=0;Ba=1;break}else{Ba=(c[e>>2]|0)==0;break}}else Ba=1;while(0);do if(ha){da=c[ha+12>>2]|0;if((da|0)==(c[ha+16>>2]|0))Ca=rb[c[(c[ha>>2]|0)+36>>2]&127](ha)|0;else Ca=nq(a[da>>0]|0)|0;if(!(pr(Ca,mq()|0)|0))if(Ba^(ga|0)==0){Da=ga;Ea=ga;break}else{Fa=ga;break e}else{c[f>>2]=0;Ga=0;R=158;break}}else{Ga=ga;R=158}while(0);if((R|0)==158){R=0;if(Ba){Fa=Ga;break}else{Da=Ga;Ea=0}}da=c[e>>2]|0;ea=c[da+12>>2]|0;if((ea|0)==(c[da+16>>2]|0))Ha=rb[c[(c[da>>2]|0)+36>>2]&127](da)|0;else Ha=nq(a[ea>>0]|0)|0;ea=Ha&255;if(ea<<24>>24>-1?(b[(c[h>>2]|0)+(Ha<<24>>24<<1)>>1]&2048)!=0:0){da=c[o>>2]|0;if((da|0)==(c[r>>2]|0)){nx(n,o,r);Ia=c[o>>2]|0}else Ia=da;c[o>>2]=Ia+1;a[Ia>>0]=ea;Ja=T+1|0}else{da=a[M>>0]|0;if(!(ea<<24>>24==(a[y>>0]|0)&(T|0?((da<<24>>24<0?c[N>>2]|0:da&255)|0)!=0:0))){Fa=Da;break}da=c[u>>2]|0;if((da|0)==(c[v>>2]|0)){ox(t,u,v);Ka=c[u>>2]|0}else Ka=da;c[u>>2]=Ka+4;c[Ka>>2]=T;Ja=0}da=c[e>>2]|0;ea=da+12|0;la=c[ea>>2]|0;if((la|0)==(c[da+16>>2]|0)){rb[c[(c[da>>2]|0)+40>>2]&127](da)|0;T=Ja;ga=Da;ha=Ea;continue}else{c[ea>>2]=la+1;nq(a[la>>0]|0)|0;T=Ja;ga=Da;ha=Ea;continue}}ha=c[u>>2]|0;if(T|0?(c[t>>2]|0)!=(ha|0):0){if((ha|0)==(c[v>>2]|0)){ox(t,u,v);La=c[u>>2]|0}else La=ha;c[u>>2]=La+4;c[La>>2]=T}f:do if((c[E>>2]|0)>0){ha=c[e>>2]|0;do if(ha){ga=c[ha+12>>2]|0;if((ga|0)==(c[ha+16>>2]|0))Ma=rb[c[(c[ha>>2]|0)+36>>2]&127](ha)|0;else Ma=nq(a[ga>>0]|0)|0;if(pr(Ma,mq()|0)|0){c[e>>2]=0;Na=1;break}else{Na=(c[e>>2]|0)==0;break}}else Na=1;while(0);do if(Fa){ha=c[Fa+12>>2]|0;if((ha|0)==(c[Fa+16>>2]|0))Oa=rb[c[(c[Fa>>2]|0)+36>>2]&127](Fa)|0;else Oa=nq(a[ha>>0]|0)|0;if(!(pr(Oa,mq()|0)|0))if(Na){Pa=Fa;break}else{R=232;break a}else{c[f>>2]=0;R=193;break}}else R=193;while(0);if((R|0)==193){R=0;if(Na){R=232;break a}else Pa=0}ha=c[e>>2]|0;ga=c[ha+12>>2]|0;if((ga|0)==(c[ha+16>>2]|0))Qa=rb[c[(c[ha>>2]|0)+36>>2]&127](ha)|0;else Qa=nq(a[ga>>0]|0)|0;if((Qa&255)<<24>>24!=(a[x>>0]|0)){R=232;break a}ga=c[e>>2]|0;ha=ga+12|0;la=c[ha>>2]|0;if((la|0)==(c[ga+16>>2]|0)){rb[c[(c[ga>>2]|0)+40>>2]&127](ga)|0;Ra=Pa;Sa=Pa}else{c[ha>>2]=la+1;nq(a[la>>0]|0)|0;Ra=Pa;Sa=Pa}while(1){if((c[E>>2]|0)<=0)break f;la=c[e>>2]|0;do if(la){ha=c[la+12>>2]|0;if((ha|0)==(c[la+16>>2]|0))Ta=rb[c[(c[la>>2]|0)+36>>2]&127](la)|0;else Ta=nq(a[ha>>0]|0)|0;if(pr(Ta,mq()|0)|0){c[e>>2]=0;Ua=1;break}else{Ua=(c[e>>2]|0)==0;break}}else Ua=1;while(0);do if(Sa){la=c[Sa+12>>2]|0;if((la|0)==(c[Sa+16>>2]|0))Va=rb[c[(c[Sa>>2]|0)+36>>2]&127](Sa)|0;else Va=nq(a[la>>0]|0)|0;if(!(pr(Va,mq()|0)|0))if(Ua^(Ra|0)==0){Wa=Ra;Xa=Ra;break}else{R=232;break a}else{c[f>>2]=0;Ya=0;R=216;break}}else{Ya=Ra;R=216}while(0);if((R|0)==216){R=0;if(Ua){R=232;break a}else{Wa=Ya;Xa=0}}la=c[e>>2]|0;ha=c[la+12>>2]|0;if((ha|0)==(c[la+16>>2]|0))Za=rb[c[(c[la>>2]|0)+36>>2]&127](la)|0;else Za=nq(a[ha>>0]|0)|0;if((Za&255)<<24>>24<=-1){R=232;break a}if(!(b[(c[h>>2]|0)+(Za<<24>>24<<1)>>1]&2048)){R=232;break a}if((c[o>>2]|0)==(c[r>>2]|0))nx(n,o,r);ha=c[e>>2]|0;la=c[ha+12>>2]|0;if((la|0)==(c[ha+16>>2]|0))_a=rb[c[(c[ha>>2]|0)+36>>2]&127](ha)|0;else _a=nq(a[la>>0]|0)|0;la=c[o>>2]|0;c[o>>2]=la+1;a[la>>0]=_a;c[E>>2]=(c[E>>2]|0)+-1;la=c[e>>2]|0;ha=la+12|0;ga=c[ha>>2]|0;if((ga|0)==(c[la+16>>2]|0)){rb[c[(c[la>>2]|0)+40>>2]&127](la)|0;Ra=Wa;Sa=Xa;continue}else{c[ha>>2]=ga+1;nq(a[ga>>0]|0)|0;Ra=Wa;Sa=Xa;continue}}}while(0);if((c[o>>2]|0)==(c[n>>2]|0)){R=232;break a}else ca=O;break}default:ca=O}while(0);g:do if((R|0)==46)while(1){R=0;S=c[e>>2]|0;do if(S){T=c[S+12>>2]|0;if((T|0)==(c[S+16>>2]|0))$a=rb[c[(c[S>>2]|0)+36>>2]&127](S)|0;else $a=nq(a[T>>0]|0)|0;if(pr($a,mq()|0)|0){c[e>>2]=0;ab=1;break}else{ab=(c[e>>2]|0)==0;break}}else ab=1;while(0);do if(ba){S=c[ba+12>>2]|0;if((S|0)==(c[ba+16>>2]|0))bb=rb[c[(c[ba>>2]|0)+36>>2]&127](ba)|0;else bb=nq(a[S>>0]|0)|0;if(!(pr(bb,mq()|0)|0))if(ab^(aa|0)==0){cb=aa;db=aa;break}else{ca=O;break g}else{c[f>>2]=0;eb=0;R=59;break}}else{eb=aa;R=59}while(0);if((R|0)==59){R=0;if(ab){ca=O;break g}else{cb=eb;db=0}}S=c[e>>2]|0;T=c[S+12>>2]|0;if((T|0)==(c[S+16>>2]|0))fb=rb[c[(c[S>>2]|0)+36>>2]&127](S)|0;else fb=nq(a[T>>0]|0)|0;if((fb&255)<<24>>24<=-1){ca=O;break g}if(!(b[(c[h>>2]|0)+(fb<<24>>24<<1)>>1]&8192)){ca=O;break g}T=c[e>>2]|0;S=T+12|0;ga=c[S>>2]|0;if((ga|0)==(c[T+16>>2]|0))gb=rb[c[(c[T>>2]|0)+40>>2]&127](T)|0;else{c[S>>2]=ga+1;gb=nq(a[ga>>0]|0)|0}XB(D,gb&255);aa=cb;ba=db;R=46}while(0);O=ca;P=P+1|0}h:do if((R|0)==44){c[j>>2]=c[j>>2]|4;hb=0}else if((R|0)==103){c[j>>2]=c[j>>2]|4;hb=0}else if((R|0)==144){c[j>>2]=c[j>>2]|4;hb=0}else if((R|0)==232){c[j>>2]=c[j>>2]|4;hb=0}else if((R|0)==234){i:do if(Q){P=O+11|0;ca=O+4|0;db=1;j:while(1){ba=a[P>>0]|0;if(ba<<24>>24<0)ib=c[ca>>2]|0;else ib=ba&255;if(db>>>0>=ib>>>0)break i;ba=c[e>>2]|0;do if(ba){cb=c[ba+12>>2]|0;if((cb|0)==(c[ba+16>>2]|0))jb=rb[c[(c[ba>>2]|0)+36>>2]&127](ba)|0;else jb=nq(a[cb>>0]|0)|0;if(pr(jb,mq()|0)|0){c[e>>2]=0;kb=1;break}else{kb=(c[e>>2]|0)==0;break}}else kb=1;while(0);ba=c[f>>2]|0;do if(ba){cb=c[ba+12>>2]|0;if((cb|0)==(c[ba+16>>2]|0))lb=rb[c[(c[ba>>2]|0)+36>>2]&127](ba)|0;else lb=nq(a[cb>>0]|0)|0;if(!(pr(lb,mq()|0)|0))if(kb)break;else break j;else{c[f>>2]=0;R=253;break}}else R=253;while(0);if((R|0)==253?(R=0,kb):0)break;ba=c[e>>2]|0;cb=c[ba+12>>2]|0;if((cb|0)==(c[ba+16>>2]|0))mb=rb[c[(c[ba>>2]|0)+36>>2]&127](ba)|0;else mb=nq(a[cb>>0]|0)|0;if((a[P>>0]|0)<0)nb=c[O>>2]|0;else nb=O;if((mb&255)<<24>>24!=(a[nb+db>>0]|0))break;cb=db+1|0;ba=c[e>>2]|0;aa=ba+12|0;gb=c[aa>>2]|0;if((gb|0)==(c[ba+16>>2]|0)){rb[c[(c[ba>>2]|0)+40>>2]&127](ba)|0;db=cb;continue}else{c[aa>>2]=gb+1;nq(a[gb>>0]|0)|0;db=cb;continue}}c[j>>2]=c[j>>2]|4;hb=0;break h}while(0);db=c[t>>2]|0;P=c[u>>2]|0;if((db|0)!=(P|0)){c[F>>2]=0;kt(z,db,P,F);if(!(c[F>>2]|0)){hb=1;break}else{c[j>>2]=c[j>>2]|4;hb=0;break}}else hb=1}while(0);LB(D);LB(C);LB(B);LB(A);LB(z);z=c[t>>2]|0;c[t>>2]=0;if(z|0)ob[c[p>>2]&511](z);l=q;return hb|0}function lx(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=l;l=l+16|0;g=d;h=f;i=b+11|0;j=a[i>>0]|0;if(j<<24>>24<0){k=c[b+4>>2]|0;m=(c[b+8>>2]&2147483647)+-1|0}else{k=j&255;m=10}n=e-g|0;do if(n|0){o=k+n|0;if((m-k|0)>>>0<n>>>0){UB(b,m,o-m|0,k,k,0,0);p=a[i>>0]|0}else p=j;if(p<<24>>24<0)q=c[b>>2]|0;else q=b;r=e+(k-g)|0;s=q+k|0;t=d;while(1){if((t|0)==(e|0))break;Bs(s,t);s=s+1|0;t=t+1|0}a[h>>0]=0;Bs(q+r|0,h);if((a[i>>0]|0)<0){c[b+4>>2]=o;break}else{a[i>>0]=o;break}}while(0);l=f;return b|0}function mx(b,d,e,f,g,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;n=l;l=l+16|0;o=n+12|0;p=n;if(b){b=Xs(d,42636)|0;pb[c[(c[b>>2]|0)+44>>2]&127](o,b);q=c[o>>2]|0;a[e>>0]=q;a[e+1>>0]=q>>8;a[e+2>>0]=q>>16;a[e+3>>0]=q>>24;pb[c[(c[b>>2]|0)+32>>2]&127](p,b);q=k+11|0;if((a[q>>0]|0)<0){r=c[k>>2]|0;a[o>>0]=0;Bs(r,o);c[k+4>>2]=0;s=k}else{a[o>>0]=0;Bs(k,o);a[q>>0]=0;s=k}QB(k,0);c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];s=0;while(1){if((s|0)==3)break;c[p+(s<<2)>>2]=0;s=s+1|0}LB(p);pb[c[(c[b>>2]|0)+28>>2]&127](p,b);s=j+11|0;if((a[s>>0]|0)<0){q=c[j>>2]|0;a[o>>0]=0;Bs(q,o);c[j+4>>2]=0;t=j}else{a[o>>0]=0;Bs(j,o);a[s>>0]=0;t=j}QB(j,0);c[t>>2]=c[p>>2];c[t+4>>2]=c[p+4>>2];c[t+8>>2]=c[p+8>>2];t=0;while(1){if((t|0)==3)break;c[p+(t<<2)>>2]=0;t=t+1|0}LB(p);a[f>>0]=rb[c[(c[b>>2]|0)+12>>2]&127](b)|0;a[g>>0]=rb[c[(c[b>>2]|0)+16>>2]&127](b)|0;pb[c[(c[b>>2]|0)+20>>2]&127](p,b);t=h+11|0;if((a[t>>0]|0)<0){s=c[h>>2]|0;a[o>>0]=0;Bs(s,o);c[h+4>>2]=0;u=h}else{a[o>>0]=0;Bs(h,o);a[t>>0]=0;u=h}QB(h,0);c[u>>2]=c[p>>2];c[u+4>>2]=c[p+4>>2];c[u+8>>2]=c[p+8>>2];u=0;while(1){if((u|0)==3)break;c[p+(u<<2)>>2]=0;u=u+1|0}LB(p);pb[c[(c[b>>2]|0)+24>>2]&127](p,b);u=i+11|0;if((a[u>>0]|0)<0){t=c[i>>2]|0;a[o>>0]=0;Bs(t,o);c[i+4>>2]=0;v=i}else{a[o>>0]=0;Bs(i,o);a[u>>0]=0;v=i}QB(i,0);c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];c[v+8>>2]=c[p+8>>2];v=0;while(1){if((v|0)==3)break;c[p+(v<<2)>>2]=0;v=v+1|0}LB(p);w=rb[c[(c[b>>2]|0)+36>>2]&127](b)|0}else{b=Xs(d,42628)|0;pb[c[(c[b>>2]|0)+44>>2]&127](o,b);d=c[o>>2]|0;a[e>>0]=d;a[e+1>>0]=d>>8;a[e+2>>0]=d>>16;a[e+3>>0]=d>>24;pb[c[(c[b>>2]|0)+32>>2]&127](p,b);d=k+11|0;if((a[d>>0]|0)<0){e=c[k>>2]|0;a[o>>0]=0;Bs(e,o);c[k+4>>2]=0;x=k}else{a[o>>0]=0;Bs(k,o);a[d>>0]=0;x=k}QB(k,0);c[x>>2]=c[p>>2];c[x+4>>2]=c[p+4>>2];c[x+8>>2]=c[p+8>>2];x=0;while(1){if((x|0)==3)break;c[p+(x<<2)>>2]=0;x=x+1|0}LB(p);pb[c[(c[b>>2]|0)+28>>2]&127](p,b);x=j+11|0;if((a[x>>0]|0)<0){k=c[j>>2]|0;a[o>>0]=0;Bs(k,o);c[j+4>>2]=0;y=j}else{a[o>>0]=0;Bs(j,o);a[x>>0]=0;y=j}QB(j,0);c[y>>2]=c[p>>2];c[y+4>>2]=c[p+4>>2];c[y+8>>2]=c[p+8>>2];y=0;while(1){if((y|0)==3)break;c[p+(y<<2)>>2]=0;y=y+1|0}LB(p);a[f>>0]=rb[c[(c[b>>2]|0)+12>>2]&127](b)|0;a[g>>0]=rb[c[(c[b>>2]|0)+16>>2]&127](b)|0;pb[c[(c[b>>2]|0)+20>>2]&127](p,b);g=h+11|0;if((a[g>>0]|0)<0){f=c[h>>2]|0;a[o>>0]=0;Bs(f,o);c[h+4>>2]=0;z=h}else{a[o>>0]=0;Bs(h,o);a[g>>0]=0;z=h}QB(h,0);c[z>>2]=c[p>>2];c[z+4>>2]=c[p+4>>2];c[z+8>>2]=c[p+8>>2];z=0;while(1){if((z|0)==3)break;c[p+(z<<2)>>2]=0;z=z+1|0}LB(p);pb[c[(c[b>>2]|0)+24>>2]&127](p,b);z=i+11|0;if((a[z>>0]|0)<0){h=c[i>>2]|0;a[o>>0]=0;Bs(h,o);c[i+4>>2]=0;A=i}else{a[o>>0]=0;Bs(i,o);a[z>>0]=0;A=i}QB(i,0);c[A>>2]=c[p>>2];c[A+4>>2]=c[p+4>>2];c[A+8>>2]=c[p+8>>2];A=0;while(1){if((A|0)==3)break;c[p+(A<<2)>>2]=0;A=A+1|0}LB(p);w=rb[c[(c[b>>2]|0)+36>>2]&127](b)|0}c[m>>2]=w;l=n;return}function nx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=a+4|0;f=(c[e>>2]|0)!=278;g=c[a>>2]|0;h=(c[d>>2]|0)-g|0;i=h>>>0<2147483647?h<<1:-1;h=(i|0)==0?1:i;i=(c[b>>2]|0)-g|0;j=Rp(f?g:0,h)|0;if(!f){f=c[a>>2]|0;c[a>>2]=j;if(!f)k=j;else{ob[c[e>>2]&511](f);k=c[a>>2]|0}}else{c[a>>2]=j;k=j}c[e>>2]=279;c[b>>2]=k+i;c[d>>2]=(c[a>>2]|0)+h;return}function ox(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=a+4|0;f=(c[e>>2]|0)!=278;g=c[a>>2]|0;h=(c[d>>2]|0)-g|0;i=h>>>0<2147483647?h<<1:-1;h=(i|0)==0?4:i;i=(c[b>>2]|0)-g>>2;j=Rp(f?g:0,h)|0;if(!f){f=c[a>>2]|0;c[a>>2]=j;if(!f)k=j;else{ob[c[e>>2]&511](f);k=c[a>>2]|0}}else{c[a>>2]=j;k=j}c[e>>2]=279;c[b>>2]=k+(i<<2);c[d>>2]=(c[a>>2]|0)+(h>>>2<<2);return}function px(a){a=a|0;Cs(a);return}function qx(a){a=a|0;Cs(a);tB(a);return}function rx(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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;b=l;l=l+576|0;j=b+424|0;k=b;m=b+24|0;n=b+16|0;o=b+12|0;p=b+8|0;q=b+564|0;r=b+4|0;s=b+464|0;c[n>>2]=m;t=n+4|0;c[t>>2]=278;qr(p,g);u=Xs(p,40948)|0;a[q>>0]=0;c[r>>2]=c[e>>2];v=c[g+4>>2]|0;c[j>>2]=c[r>>2];if(tx(d,j,f,p,v,h,q,u,n,o,m+400|0)|0){xb[c[(c[u>>2]|0)+48>>2]&15](u,36294,36304,j)|0;u=(c[o>>2]|0)-(c[n>>2]|0)|0;if((u|0)>392){m=Pp((u>>>2)+2|0)|0;u=m;if(!m){w=0;x=u}else{w=m;x=u}}else{w=s;x=0}if(!(a[q>>0]|0))y=w;else{a[w>>0]=45;y=w+1|0}w=j+40|0;q=j;u=c[n>>2]|0;m=y;while(1){if(u>>>0>=(c[o>>2]|0)>>>0)break;y=c[u>>2]|0;v=j;while(1){if((v|0)==(w|0)){z=w;break}if((c[v>>2]|0)==(y|0)){z=v;break}v=v+4|0}a[m>>0]=a[36294+(z-q>>2)>>0]|0;u=u+4|0;m=m+1|0}a[m>>0]=0;c[k>>2]=i;Vo(s,36195,k)|0;if(x|0)Qp(x)}x=c[d>>2]|0;do if(x){k=c[x+12>>2]|0;if((k|0)==(c[x+16>>2]|0))A=rb[c[(c[x>>2]|0)+36>>2]&127](x)|0;else A=Fq(c[k>>2]|0)|0;if(rr(A,Eq()|0)|0){c[d>>2]=0;B=1;break}else{B=(c[d>>2]|0)==0;break}}else B=1;while(0);A=c[e>>2]|0;do if(A){x=c[A+12>>2]|0;if((x|0)==(c[A+16>>2]|0))C=rb[c[(c[A>>2]|0)+36>>2]&127](A)|0;else C=Fq(c[x>>2]|0)|0;if(!(rr(C,Eq()|0)|0))if(B)break;else{D=32;break}else{c[e>>2]=0;D=30;break}}else D=30;while(0);if((D|0)==30?B:0)D=32;if((D|0)==32)c[h>>2]=c[h>>2]|2;h=c[d>>2]|0;Ys(p);p=c[n>>2]|0;c[n>>2]=0;if(p|0)ob[c[t>>2]&511](p);l=b;return h|0}function sx(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;b=l;l=l+432|0;j=b+424|0;k=b+24|0;m=b+16|0;n=b+8|0;o=b;p=b+428|0;q=b+4|0;c[m>>2]=k;r=m+4|0;c[r>>2]=278;qr(o,g);s=Xs(o,40948)|0;a[p>>0]=0;t=c[e>>2]|0;c[q>>2]=t;u=c[g+4>>2]|0;c[j>>2]=c[q>>2];q=t;if(tx(d,j,f,o,u,h,p,s,m,n,k+400|0)|0){k=i+8+3|0;if((a[k>>0]|0)<0){u=c[i>>2]|0;c[j>>2]=0;Js(u,j);c[i+4>>2]=0}else{c[j>>2]=0;Js(i,j);a[k>>0]=0}if(a[p>>0]|0)nC(i,zb[c[(c[s>>2]|0)+44>>2]&63](s,45)|0);p=zb[c[(c[s>>2]|0)+44>>2]&63](s,48)|0;s=c[n>>2]|0;n=s+-4|0;k=c[m>>2]|0;while(1){if(k>>>0>=n>>>0)break;if((c[k>>2]|0)!=(p|0))break;k=k+4|0}ux(i,k,s)|0}s=c[d>>2]|0;do if(s){k=c[s+12>>2]|0;if((k|0)==(c[s+16>>2]|0))v=rb[c[(c[s>>2]|0)+36>>2]&127](s)|0;else v=Fq(c[k>>2]|0)|0;if(rr(v,Eq()|0)|0){c[d>>2]=0;w=1;break}else{w=(c[d>>2]|0)==0;break}}else w=1;while(0);do if(t){v=c[q+12>>2]|0;if((v|0)==(c[q+16>>2]|0))x=rb[c[(c[t>>2]|0)+36>>2]&127](q)|0;else x=Fq(c[v>>2]|0)|0;if(!(rr(x,Eq()|0)|0))if(w)break;else{y=27;break}else{c[e>>2]=0;y=25;break}}else y=25;while(0);if((y|0)==25?w:0)y=27;if((y|0)==27)c[h>>2]=c[h>>2]|2;h=c[d>>2]|0;Ys(o);o=c[m>>2]|0;c[m>>2]=0;if(o|0)ob[c[r>>2]&511](o);l=b;return h|0}function tx(b,e,f,g,h,i,j,k,m,n,o){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,jb=0,kb=0,lb=0,mb=0,nb=0,pb=0,qb=0;p=l;l=l+512|0;q=p+96|0;r=p+104|0;s=p+88|0;t=p+80|0;u=p+76|0;v=p+504|0;w=p+72|0;x=p+68|0;y=p+56|0;z=p+44|0;A=p+32|0;B=p+20|0;C=p+8|0;D=p+4|0;E=p;c[q>>2]=o;c[s>>2]=r;o=s+4|0;c[o>>2]=278;c[t>>2]=r;c[u>>2]=r+400;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;r=0;while(1){if((r|0)==3)break;c[y+(r<<2)>>2]=0;r=r+1|0}c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;r=0;while(1){if((r|0)==3)break;c[z+(r<<2)>>2]=0;r=r+1|0}c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;r=0;while(1){if((r|0)==3)break;c[A+(r<<2)>>2]=0;r=r+1|0}c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;r=0;while(1){if((r|0)==3)break;c[B+(r<<2)>>2]=0;r=r+1|0}c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;r=0;while(1){if((r|0)==3)break;c[C+(r<<2)>>2]=0;r=r+1|0}vx(f,g,v,w,x,y,z,A,B,D);c[n>>2]=c[m>>2];g=A+8+3|0;f=A+4|0;r=B+8+3|0;F=B+4|0;G=(h&512|0)!=0;h=z+8+3|0;H=z+4|0;I=C+8+3|0;J=C+4|0;K=v+3|0;L=y+11|0;M=y+4|0;N=0;O=0;a:while(1){P=(N|0)!=0;if(O>>>0>=4){Q=229;break}R=c[b>>2]|0;do if(R){S=c[R+12>>2]|0;if((S|0)==(c[R+16>>2]|0))T=rb[c[(c[R>>2]|0)+36>>2]&127](R)|0;else T=Fq(c[S>>2]|0)|0;if(rr(T,Eq()|0)|0){c[b>>2]=0;U=1;break}else{U=(c[b>>2]|0)==0;break}}else U=1;while(0);R=c[e>>2]|0;do if(R){S=c[R+12>>2]|0;if((S|0)==(c[R+16>>2]|0))V=rb[c[(c[R>>2]|0)+36>>2]&127](R)|0;else V=Fq(c[S>>2]|0)|0;if(!(rr(V,Eq()|0)|0))if(U){W=R;break}else{Q=229;break a}else{c[e>>2]=0;Q=31;break}}else Q=31;while(0);if((Q|0)==31){Q=0;if(U){Q=229;break}else W=0}R=(O|0)!=3;b:do switch(a[v+O>>0]|0){case 1:{if(R){S=c[b>>2]|0;X=c[S+12>>2]|0;if((X|0)==(c[S+16>>2]|0))Y=rb[c[(c[S>>2]|0)+36>>2]&127](S)|0;else Y=Fq(c[X>>2]|0)|0;if(!(ib[c[(c[k>>2]|0)+12>>2]&31](k,8192,Y)|0)){Q=43;break a}X=c[b>>2]|0;S=X+12|0;Z=c[S>>2]|0;if((Z|0)==(c[X+16>>2]|0))_=rb[c[(c[X>>2]|0)+40>>2]&127](X)|0;else{c[S>>2]=Z+4;_=Fq(c[Z>>2]|0)|0}nC(C,_);$=W;aa=W;Q=45}else ba=N;break}case 0:{if(R){$=W;aa=W;Q=45}else ba=N;break}case 3:{Z=a[g>>0]|0;S=Z<<24>>24<0?c[f>>2]|0:Z&255;Z=a[r>>0]|0;X=Z<<24>>24<0?c[F>>2]|0:Z&255;if((S|0)==(0-X|0))ba=N;else{Z=(S|0)==0;S=c[b>>2]|0;ca=c[S+12>>2]|0;da=(ca|0)==(c[S+16>>2]|0);if(Z|(X|0)==0){if(da)ea=rb[c[(c[S>>2]|0)+36>>2]&127](S)|0;else ea=Fq(c[ca>>2]|0)|0;if(Z){if((ea|0)!=(c[((a[r>>0]|0)<0?c[B>>2]|0:B)>>2]|0)){ba=N;break b}Z=c[b>>2]|0;X=Z+12|0;fa=c[X>>2]|0;if((fa|0)==(c[Z+16>>2]|0))rb[c[(c[Z>>2]|0)+40>>2]&127](Z)|0;else{c[X>>2]=fa+4;Fq(c[fa>>2]|0)|0}a[j>>0]=1;fa=a[r>>0]|0;ba=(fa<<24>>24<0?c[F>>2]|0:fa&255)>>>0>1?B:N;break b}if((ea|0)!=(c[((a[g>>0]|0)<0?c[A>>2]|0:A)>>2]|0)){a[j>>0]=1;ba=N;break b}fa=c[b>>2]|0;X=fa+12|0;Z=c[X>>2]|0;if((Z|0)==(c[fa+16>>2]|0))rb[c[(c[fa>>2]|0)+40>>2]&127](fa)|0;else{c[X>>2]=Z+4;Fq(c[Z>>2]|0)|0}Z=a[g>>0]|0;ba=(Z<<24>>24<0?c[f>>2]|0:Z&255)>>>0>1?A:N;break b}if(da)ga=rb[c[(c[S>>2]|0)+36>>2]&127](S)|0;else ga=Fq(c[ca>>2]|0)|0;ca=c[b>>2]|0;S=ca+12|0;da=c[S>>2]|0;Z=(da|0)==(c[ca+16>>2]|0);if((ga|0)==(c[((a[g>>0]|0)<0?c[A>>2]|0:A)>>2]|0)){if(Z)rb[c[(c[ca>>2]|0)+40>>2]&127](ca)|0;else{c[S>>2]=da+4;Fq(c[da>>2]|0)|0}S=a[g>>0]|0;ba=(S<<24>>24<0?c[f>>2]|0:S&255)>>>0>1?A:N;break b}if(Z)ha=rb[c[(c[ca>>2]|0)+36>>2]&127](ca)|0;else ha=Fq(c[da>>2]|0)|0;if((ha|0)!=(c[((a[r>>0]|0)<0?c[B>>2]|0:B)>>2]|0)){Q=101;break a}da=c[b>>2]|0;ca=da+12|0;Z=c[ca>>2]|0;if((Z|0)==(c[da+16>>2]|0))rb[c[(c[da>>2]|0)+40>>2]&127](da)|0;else{c[ca>>2]=Z+4;Fq(c[Z>>2]|0)|0}a[j>>0]=1;Z=a[r>>0]|0;ba=(Z<<24>>24<0?c[F>>2]|0:Z&255)>>>0>1?B:N}break}case 2:{if(!(O>>>0<2|P)?!(G|(O|0)==2&(a[K>>0]|0)!=0):0){ba=0;break b}Z=a[h>>0]|0;ca=c[z>>2]|0;da=Z<<24>>24<0?ca:z;c:do if((O|0)!=0?(d[v+(O+-1)>>0]|0)<2:0){S=da;X=Z;fa=ca;while(1){ia=X<<24>>24<0;ja=S;if((ja|0)==((ia?fa:z)+((ia?c[H>>2]|0:X&255)<<2)|0)){ka=X;la=fa;break}if(!(ib[c[(c[k>>2]|0)+12>>2]&31](k,8192,c[ja>>2]|0)|0)){Q=108;break}S=ja+4|0;X=a[h>>0]|0;fa=c[z>>2]|0}if((Q|0)==108){Q=0;ka=a[h>>0]|0;la=c[z>>2]|0}fa=ka<<24>>24<0?la:z;X=fa;ja=S-X>>2;ia=a[I>>0]|0;ma=ia<<24>>24<0;na=ma?c[J>>2]|0:ia&255;if(ja>>>0>na>>>0){oa=W;pa=X;qa=ka;ra=la;sa=W}else{ia=(ma?c[C>>2]|0:C)+(na<<2)|0;na=fa;fa=ia+(0-ja<<2)|0;while(1){if((fa|0)==(ia|0)){oa=W;pa=S;qa=ka;ra=la;sa=W;break c}if((c[fa>>2]|0)!=(c[na>>2]|0)){oa=W;pa=X;qa=ka;ra=la;sa=W;break c}na=na+4|0;fa=fa+4|0}}}else{oa=W;pa=da;qa=Z;ra=ca;sa=W}while(0);d:while(1){ca=qa<<24>>24<0;Z=(ca?ra:z)+((ca?c[H>>2]|0:qa&255)<<2)|0;ca=pa;if((ca|0)==(Z|0)){ta=Z;break}Z=c[b>>2]|0;do if(Z){da=c[Z+12>>2]|0;if((da|0)==(c[Z+16>>2]|0))ua=rb[c[(c[Z>>2]|0)+36>>2]&127](Z)|0;else ua=Fq(c[da>>2]|0)|0;if(rr(ua,Eq()|0)|0){c[b>>2]=0;va=1;break}else{va=(c[b>>2]|0)==0;break}}else va=1;while(0);do if(sa){Z=c[sa+12>>2]|0;if((Z|0)==(c[sa+16>>2]|0))wa=rb[c[(c[sa>>2]|0)+36>>2]&127](sa)|0;else wa=Fq(c[Z>>2]|0)|0;if(!(rr(wa,Eq()|0)|0))if(va^(oa|0)==0){xa=oa;ya=oa;break}else{ta=ca;break d}else{c[e>>2]=0;za=0;Q=129;break}}else{za=oa;Q=129}while(0);if((Q|0)==129){Q=0;if(va){ta=ca;break}else{xa=za;ya=0}}Z=c[b>>2]|0;da=c[Z+12>>2]|0;if((da|0)==(c[Z+16>>2]|0))Aa=rb[c[(c[Z>>2]|0)+36>>2]&127](Z)|0;else Aa=Fq(c[da>>2]|0)|0;if((Aa|0)!=(c[ca>>2]|0)){ta=ca;break}da=c[b>>2]|0;Z=da+12|0;fa=c[Z>>2]|0;if((fa|0)==(c[da+16>>2]|0))rb[c[(c[da>>2]|0)+40>>2]&127](da)|0;else{c[Z>>2]=fa+4;Fq(c[fa>>2]|0)|0}oa=xa;pa=ca+4|0;qa=a[h>>0]|0;ra=c[z>>2]|0;sa=ya}if(G?(fa=a[h>>0]|0,Z=fa<<24>>24<0,(ta|0)!=((Z?c[z>>2]|0:z)+((Z?c[H>>2]|0:fa&255)<<2)|0)):0){Q=141;break a}else ba=N;break}case 4:{fa=0;Z=W;da=W;e:while(1){na=c[b>>2]|0;do if(na){X=c[na+12>>2]|0;if((X|0)==(c[na+16>>2]|0))Ba=rb[c[(c[na>>2]|0)+36>>2]&127](na)|0;else Ba=Fq(c[X>>2]|0)|0;if(rr(Ba,Eq()|0)|0){c[b>>2]=0;Ca=1;break}else{Ca=(c[b>>2]|0)==0;break}}else Ca=1;while(0);do if(da){na=c[da+12>>2]|0;if((na|0)==(c[da+16>>2]|0))Da=rb[c[(c[da>>2]|0)+36>>2]&127](da)|0;else Da=Fq(c[na>>2]|0)|0;if(!(rr(Da,Eq()|0)|0))if(Ca^(Z|0)==0){Ea=Z;Fa=Z;break}else{Ga=Z;break e}else{c[e>>2]=0;Ha=0;Q=155;break}}else{Ha=Z;Q=155}while(0);if((Q|0)==155){Q=0;if(Ca){Ga=Ha;break}else{Ea=Ha;Fa=0}}na=c[b>>2]|0;ca=c[na+12>>2]|0;if((ca|0)==(c[na+16>>2]|0))Ia=rb[c[(c[na>>2]|0)+36>>2]&127](na)|0;else Ia=Fq(c[ca>>2]|0)|0;if(ib[c[(c[k>>2]|0)+12>>2]&31](k,2048,Ia)|0){ca=c[n>>2]|0;if((ca|0)==(c[q>>2]|0)){wx(m,n,q);Ja=c[n>>2]|0}else Ja=ca;c[n>>2]=Ja+4;c[Ja>>2]=Ia;Ka=fa+1|0}else{ca=a[L>>0]|0;if(!((Ia|0)==(c[x>>2]|0)&(fa|0?((ca<<24>>24<0?c[M>>2]|0:ca&255)|0)!=0:0))){Ga=Ea;break}ca=c[t>>2]|0;if((ca|0)==(c[u>>2]|0)){ox(s,t,u);La=c[t>>2]|0}else La=ca;c[t>>2]=La+4;c[La>>2]=fa;Ka=0}ca=c[b>>2]|0;na=ca+12|0;X=c[na>>2]|0;if((X|0)==(c[ca+16>>2]|0)){rb[c[(c[ca>>2]|0)+40>>2]&127](ca)|0;fa=Ka;Z=Ea;da=Fa;continue}else{c[na>>2]=X+4;Fq(c[X>>2]|0)|0;fa=Ka;Z=Ea;da=Fa;continue}}da=c[t>>2]|0;if(fa|0?(c[s>>2]|0)!=(da|0):0){if((da|0)==(c[u>>2]|0)){ox(s,t,u);Ma=c[t>>2]|0}else Ma=da;c[t>>2]=Ma+4;c[Ma>>2]=fa}f:do if((c[D>>2]|0)>0){da=c[b>>2]|0;do if(da){Z=c[da+12>>2]|0;if((Z|0)==(c[da+16>>2]|0))Na=rb[c[(c[da>>2]|0)+36>>2]&127](da)|0;else Na=Fq(c[Z>>2]|0)|0;if(rr(Na,Eq()|0)|0){c[b>>2]=0;Oa=1;break}else{Oa=(c[b>>2]|0)==0;break}}else Oa=1;while(0);do if(Ga){da=c[Ga+12>>2]|0;if((da|0)==(c[Ga+16>>2]|0))Pa=rb[c[(c[Ga>>2]|0)+36>>2]&127](Ga)|0;else Pa=Fq(c[da>>2]|0)|0;if(!(rr(Pa,Eq()|0)|0))if(Oa){Qa=Ga;break}else{Q=227;break a}else{c[e>>2]=0;Q=189;break}}else Q=189;while(0);if((Q|0)==189){Q=0;if(Oa){Q=227;break a}else Qa=0}da=c[b>>2]|0;Z=c[da+12>>2]|0;if((Z|0)==(c[da+16>>2]|0))Ra=rb[c[(c[da>>2]|0)+36>>2]&127](da)|0;else Ra=Fq(c[Z>>2]|0)|0;if((Ra|0)!=(c[w>>2]|0)){Q=227;break a}Z=c[b>>2]|0;da=Z+12|0;X=c[da>>2]|0;if((X|0)==(c[Z+16>>2]|0)){rb[c[(c[Z>>2]|0)+40>>2]&127](Z)|0;Sa=Qa;Ta=Qa}else{c[da>>2]=X+4;Fq(c[X>>2]|0)|0;Sa=Qa;Ta=Qa}while(1){if((c[D>>2]|0)<=0)break f;X=c[b>>2]|0;do if(X){da=c[X+12>>2]|0;if((da|0)==(c[X+16>>2]|0))Ua=rb[c[(c[X>>2]|0)+36>>2]&127](X)|0;else Ua=Fq(c[da>>2]|0)|0;if(rr(Ua,Eq()|0)|0){c[b>>2]=0;Va=1;break}else{Va=(c[b>>2]|0)==0;break}}else Va=1;while(0);do if(Ta){X=c[Ta+12>>2]|0;if((X|0)==(c[Ta+16>>2]|0))Wa=rb[c[(c[Ta>>2]|0)+36>>2]&127](Ta)|0;else Wa=Fq(c[X>>2]|0)|0;if(!(rr(Wa,Eq()|0)|0))if(Va^(Sa|0)==0){Xa=Sa;Ya=Sa;break}else{Q=227;break a}else{c[e>>2]=0;Za=0;Q=212;break}}else{Za=Sa;Q=212}while(0);if((Q|0)==212){Q=0;if(Va){Q=227;break a}else{Xa=Za;Ya=0}}X=c[b>>2]|0;da=c[X+12>>2]|0;if((da|0)==(c[X+16>>2]|0))_a=rb[c[(c[X>>2]|0)+36>>2]&127](X)|0;else _a=Fq(c[da>>2]|0)|0;if(!(ib[c[(c[k>>2]|0)+12>>2]&31](k,2048,_a)|0)){Q=227;break a}if((c[n>>2]|0)==(c[q>>2]|0))wx(m,n,q);da=c[b>>2]|0;X=c[da+12>>2]|0;if((X|0)==(c[da+16>>2]|0))$a=rb[c[(c[da>>2]|0)+36>>2]&127](da)|0;else $a=Fq(c[X>>2]|0)|0;X=c[n>>2]|0;c[n>>2]=X+4;c[X>>2]=$a;c[D>>2]=(c[D>>2]|0)+-1;X=c[b>>2]|0;da=X+12|0;Z=c[da>>2]|0;if((Z|0)==(c[X+16>>2]|0)){rb[c[(c[X>>2]|0)+40>>2]&127](X)|0;Sa=Xa;Ta=Ya;continue}else{c[da>>2]=Z+4;Fq(c[Z>>2]|0)|0;Sa=Xa;Ta=Ya;continue}}}while(0);if((c[n>>2]|0)==(c[m>>2]|0)){Q=227;break a}else ba=N;break}default:ba=N}while(0);g:do if((Q|0)==45)while(1){Q=0;R=c[b>>2]|0;do if(R){fa=c[R+12>>2]|0;if((fa|0)==(c[R+16>>2]|0))ab=rb[c[(c[R>>2]|0)+36>>2]&127](R)|0;else ab=Fq(c[fa>>2]|0)|0;if(rr(ab,Eq()|0)|0){c[b>>2]=0;bb=1;break}else{bb=(c[b>>2]|0)==0;break}}else bb=1;while(0);do if(aa){R=c[aa+12>>2]|0;if((R|0)==(c[aa+16>>2]|0))cb=rb[c[(c[aa>>2]|0)+36>>2]&127](aa)|0;else cb=Fq(c[R>>2]|0)|0;if(!(rr(cb,Eq()|0)|0))if(bb^($|0)==0){db=$;eb=$;break}else{ba=N;break g}else{c[e>>2]=0;fb=0;Q=58;break}}else{fb=$;Q=58}while(0);if((Q|0)==58){Q=0;if(bb){ba=N;break g}else{db=fb;eb=0}}R=c[b>>2]|0;fa=c[R+12>>2]|0;if((fa|0)==(c[R+16>>2]|0))gb=rb[c[(c[R>>2]|0)+36>>2]&127](R)|0;else gb=Fq(c[fa>>2]|0)|0;if(!(ib[c[(c[k>>2]|0)+12>>2]&31](k,8192,gb)|0)){ba=N;break g}fa=c[b>>2]|0;R=fa+12|0;Z=c[R>>2]|0;if((Z|0)==(c[fa+16>>2]|0))hb=rb[c[(c[fa>>2]|0)+40>>2]&127](fa)|0;else{c[R>>2]=Z+4;hb=Fq(c[Z>>2]|0)|0}nC(C,hb);$=db;aa=eb;Q=45}while(0);N=ba;O=O+1|0}h:do if((Q|0)==43){c[i>>2]=c[i>>2]|4;jb=0}else if((Q|0)==101){c[i>>2]=c[i>>2]|4;jb=0}else if((Q|0)==141){c[i>>2]=c[i>>2]|4;jb=0}else if((Q|0)==227){c[i>>2]=c[i>>2]|4;jb=0}else if((Q|0)==229){i:do if(P){O=N+8+3|0;ba=N+4|0;eb=1;j:while(1){aa=a[O>>0]|0;if(aa<<24>>24<0)kb=c[ba>>2]|0;else kb=aa&255;if(eb>>>0>=kb>>>0)break i;aa=c[b>>2]|0;do if(aa){db=c[aa+12>>2]|0;if((db|0)==(c[aa+16>>2]|0))lb=rb[c[(c[aa>>2]|0)+36>>2]&127](aa)|0;else lb=Fq(c[db>>2]|0)|0;if(rr(lb,Eq()|0)|0){c[b>>2]=0;mb=1;break}else{mb=(c[b>>2]|0)==0;break}}else mb=1;while(0);aa=c[e>>2]|0;do if(aa){db=c[aa+12>>2]|0;if((db|0)==(c[aa+16>>2]|0))nb=rb[c[(c[aa>>2]|0)+36>>2]&127](aa)|0;else nb=Fq(c[db>>2]|0)|0;if(!(rr(nb,Eq()|0)|0))if(mb)break;else break j;else{c[e>>2]=0;Q=248;break}}else Q=248;while(0);if((Q|0)==248?(Q=0,mb):0)break;aa=c[b>>2]|0;db=c[aa+12>>2]|0;if((db|0)==(c[aa+16>>2]|0))pb=rb[c[(c[aa>>2]|0)+36>>2]&127](aa)|0;else pb=Fq(c[db>>2]|0)|0;if((a[O>>0]|0)<0)qb=c[N>>2]|0;else qb=N;if((pb|0)!=(c[qb+(eb<<2)>>2]|0))break;db=eb+1|0;aa=c[b>>2]|0;$=aa+12|0;hb=c[$>>2]|0;if((hb|0)==(c[aa+16>>2]|0)){rb[c[(c[aa>>2]|0)+40>>2]&127](aa)|0;eb=db;continue}else{c[$>>2]=hb+4;Fq(c[hb>>2]|0)|0;eb=db;continue}}c[i>>2]=c[i>>2]|4;jb=0;break h}while(0);eb=c[s>>2]|0;O=c[t>>2]|0;if((eb|0)!=(O|0)){c[E>>2]=0;kt(y,eb,O,E);if(!(c[E>>2]|0)){jb=1;break}else{c[i>>2]=c[i>>2]|4;jb=0;break}}else jb=1}while(0);gC(C);gC(B);gC(A);gC(z);LB(y);y=c[s>>2]|0;c[s>>2]=0;if(y|0)ob[c[o>>2]&511](y);l=p;return jb|0}function ux(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;f=l;l=l+16|0;g=f;h=b+8|0;i=h+3|0;j=a[i>>0]|0;if(j<<24>>24<0){k=c[b+4>>2]|0;m=(c[h>>2]&2147483647)+-1|0}else{k=j&255;m=1}h=e-d>>2;do if(h|0){n=k+h|0;if((m-k|0)>>>0<h>>>0){mC(b,m,n-m|0,k,k,0,0);o=a[i>>0]|0}else o=j;if(o<<24>>24<0)p=c[b>>2]|0;else p=b;q=p+(k<<2)|0;r=d;while(1){if((r|0)==(e|0))break;Js(q,r);q=q+4|0;r=r+4|0}c[g>>2]=0;Js(q,g);if((a[i>>0]|0)<0){c[b+4>>2]=n;break}else{a[i>>0]=n;break}}while(0);l=f;return b|0}function vx(b,d,e,f,g,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;n=l;l=l+16|0;o=n+12|0;p=n;if(b){b=Xs(d,42652)|0;pb[c[(c[b>>2]|0)+44>>2]&127](o,b);q=c[o>>2]|0;a[e>>0]=q;a[e+1>>0]=q>>8;a[e+2>>0]=q>>16;a[e+3>>0]=q>>24;pb[c[(c[b>>2]|0)+32>>2]&127](p,b);q=k+8+3|0;if((a[q>>0]|0)<0){r=c[k>>2]|0;c[o>>2]=0;Js(r,o);c[k+4>>2]=0}else{c[o>>2]=0;Js(k,o);a[q>>0]=0}kC(k,0);c[k>>2]=c[p>>2];c[k+4>>2]=c[p+4>>2];c[k+8>>2]=c[p+8>>2];q=0;while(1){if((q|0)==3)break;c[p+(q<<2)>>2]=0;q=q+1|0}gC(p);pb[c[(c[b>>2]|0)+28>>2]&127](p,b);q=j+8+3|0;if((a[q>>0]|0)<0){r=c[j>>2]|0;c[o>>2]=0;Js(r,o);c[j+4>>2]=0}else{c[o>>2]=0;Js(j,o);a[q>>0]=0}kC(j,0);c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];q=0;while(1){if((q|0)==3)break;c[p+(q<<2)>>2]=0;q=q+1|0}gC(p);c[f>>2]=rb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[g>>2]=rb[c[(c[b>>2]|0)+16>>2]&127](b)|0;pb[c[(c[b>>2]|0)+20>>2]&127](p,b);q=h+11|0;if((a[q>>0]|0)<0){r=c[h>>2]|0;a[o>>0]=0;Bs(r,o);c[h+4>>2]=0;s=h}else{a[o>>0]=0;Bs(h,o);a[q>>0]=0;s=h}QB(h,0);c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];s=0;while(1){if((s|0)==3)break;c[p+(s<<2)>>2]=0;s=s+1|0}LB(p);pb[c[(c[b>>2]|0)+24>>2]&127](p,b);s=i+8+3|0;if((a[s>>0]|0)<0){q=c[i>>2]|0;c[o>>2]=0;Js(q,o);c[i+4>>2]=0}else{c[o>>2]=0;Js(i,o);a[s>>0]=0}kC(i,0);c[i>>2]=c[p>>2];c[i+4>>2]=c[p+4>>2];c[i+8>>2]=c[p+8>>2];s=0;while(1){if((s|0)==3)break;c[p+(s<<2)>>2]=0;s=s+1|0}gC(p);t=rb[c[(c[b>>2]|0)+36>>2]&127](b)|0}else{b=Xs(d,42644)|0;pb[c[(c[b>>2]|0)+44>>2]&127](o,b);d=c[o>>2]|0;a[e>>0]=d;a[e+1>>0]=d>>8;a[e+2>>0]=d>>16;a[e+3>>0]=d>>24;pb[c[(c[b>>2]|0)+32>>2]&127](p,b);d=k+8+3|0;if((a[d>>0]|0)<0){e=c[k>>2]|0;c[o>>2]=0;Js(e,o);c[k+4>>2]=0}else{c[o>>2]=0;Js(k,o);a[d>>0]=0}kC(k,0);c[k>>2]=c[p>>2];c[k+4>>2]=c[p+4>>2];c[k+8>>2]=c[p+8>>2];k=0;while(1){if((k|0)==3)break;c[p+(k<<2)>>2]=0;k=k+1|0}gC(p);pb[c[(c[b>>2]|0)+28>>2]&127](p,b);k=j+8+3|0;if((a[k>>0]|0)<0){d=c[j>>2]|0;c[o>>2]=0;Js(d,o);c[j+4>>2]=0}else{c[o>>2]=0;Js(j,o);a[k>>0]=0}kC(j,0);c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];j=0;while(1){if((j|0)==3)break;c[p+(j<<2)>>2]=0;j=j+1|0}gC(p);c[f>>2]=rb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[g>>2]=rb[c[(c[b>>2]|0)+16>>2]&127](b)|0;pb[c[(c[b>>2]|0)+20>>2]&127](p,b);g=h+11|0;if((a[g>>0]|0)<0){f=c[h>>2]|0;a[o>>0]=0;Bs(f,o);c[h+4>>2]=0;u=h}else{a[o>>0]=0;Bs(h,o);a[g>>0]=0;u=h}QB(h,0);c[u>>2]=c[p>>2];c[u+4>>2]=c[p+4>>2];c[u+8>>2]=c[p+8>>2];u=0;while(1){if((u|0)==3)break;c[p+(u<<2)>>2]=0;u=u+1|0}LB(p);pb[c[(c[b>>2]|0)+24>>2]&127](p,b);u=i+8+3|0;if((a[u>>0]|0)<0){h=c[i>>2]|0;c[o>>2]=0;Js(h,o);c[i+4>>2]=0}else{c[o>>2]=0;Js(i,o);a[u>>0]=0}kC(i,0);c[i>>2]=c[p>>2];c[i+4>>2]=c[p+4>>2];c[i+8>>2]=c[p+8>>2];i=0;while(1){if((i|0)==3)break;c[p+(i<<2)>>2]=0;i=i+1|0}gC(p);t=rb[c[(c[b>>2]|0)+36>>2]&127](b)|0}c[m>>2]=t;l=n;return}function wx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=a+4|0;f=(c[e>>2]|0)!=278;g=c[a>>2]|0;h=(c[d>>2]|0)-g|0;i=h>>>0<2147483647?h<<1:-1;h=(i|0)==0?4:i;i=(c[b>>2]|0)-g>>2;j=Rp(f?g:0,h)|0;if(!f){f=c[a>>2]|0;c[a>>2]=j;if(!f)k=j;else{ob[c[e>>2]&511](f);k=c[a>>2]|0}}else{c[a>>2]=j;k=j}c[e>>2]=279;c[b>>2]=k+(i<<2);c[d>>2]=(c[a>>2]|0)+(h>>>2<<2);return}function xx(a){a=a|0;Cs(a);return}function yx(a){a=a|0;Cs(a);tB(a);return}function zx(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;b=l;l=l+384|0;j=b+8|0;k=b;m=b+284|0;n=b+72|0;o=b+184|0;p=b+68|0;q=b+180|0;r=b+177|0;s=b+176|0;t=b+56|0;u=b+44|0;v=b+32|0;w=b+28|0;x=b+76|0;y=b+24|0;z=b+16|0;A=b+20|0;c[n>>2]=m;h[j>>3]=i;B=Ao(m,100,36400,j)|0;if(B>>>0>99){m=_s()|0;h[k>>3]=i;C=qu(n,m,36400,k)|0;k=c[n>>2]|0;if(!k)D=c[n>>2]|0;else D=k;k=Pp(C)|0;m=k;if(!k){E=0;F=C;G=m;H=D}else{E=k;F=C;G=m;H=D}}else{E=o;F=B;G=0;H=0}qr(p,f);B=Xs(p,40916)|0;o=c[n>>2]|0;xb[c[(c[B>>2]|0)+32>>2]&15](B,o,o+F|0,E)|0;if(!F)I=0;else I=(a[c[n>>2]>>0]|0)==45;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[t+(n<<2)>>2]=0;n=n+1|0}c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[u+(n<<2)>>2]=0;n=n+1|0}c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[v+(n<<2)>>2]=0;n=n+1|0}Bx(e,I,p,q,r,s,t,u,v,w);e=c[w>>2]|0;if((F|0)>(e|0)){n=a[v+11>>0]|0;o=a[u+11>>0]|0;J=1;K=(n<<24>>24<0?c[v+4>>2]|0:n&255)+(F-e<<1)|0;L=o<<24>>24<0?c[u+4>>2]|0:o&255}else{o=a[v+11>>0]|0;n=a[u+11>>0]|0;J=2;K=n<<24>>24<0?c[u+4>>2]|0:n&255;L=o<<24>>24<0?c[v+4>>2]|0:o&255}o=L+e+K+J|0;if(o>>>0>100){J=Pp(o)|0;o=J;if(!J){M=0;N=o;O=c[w>>2]|0}else{M=J;N=o;O=e}}else{M=x;N=0;O=e}Cx(M,y,z,c[f+4>>2]|0,E,E+F|0,B,I,q,a[r>>0]|0,a[s>>0]|0,t,u,v,O);c[A>>2]=c[d>>2];d=c[y>>2]|0;y=c[z>>2]|0;c[j>>2]=c[A>>2];A=Ie(j,M,d,y,f,g)|0;if(N|0)Qp(N);LB(v);LB(u);LB(t);Ys(p);if(G|0)Qp(G);if(H|0)Qp(H);l=b;return A|0}function Ax(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;b=l;l=l+176|0;i=b+56|0;j=b+52|0;k=b+164|0;m=b+161|0;n=b+160|0;o=b+40|0;p=b+28|0;q=b+16|0;r=b+12|0;s=b+60|0;t=b+8|0;u=b+4|0;v=b;qr(j,f);w=Xs(j,40916)|0;x=h+11|0;y=a[x>>0]|0;z=y<<24>>24<0;A=h+4|0;if(!((z?c[A>>2]|0:y&255)|0))B=0;else{y=a[(z?c[h>>2]|0:h)>>0]|0;B=y<<24>>24==(zb[c[(c[w>>2]|0)+28>>2]&63](w,45)|0)<<24>>24};c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;y=0;while(1){if((y|0)==3)break;c[o+(y<<2)>>2]=0;y=y+1|0}c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;y=0;while(1){if((y|0)==3)break;c[p+(y<<2)>>2]=0;y=y+1|0}c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;y=0;while(1){if((y|0)==3)break;c[q+(y<<2)>>2]=0;y=y+1|0}Bx(e,B,j,k,m,n,o,p,q,r);e=a[x>>0]|0;y=c[A>>2]|0;z=e<<24>>24<0?y:e&255;C=c[r>>2]|0;if((z|0)>(C|0)){D=a[q+11>>0]|0;E=a[p+11>>0]|0;F=1;G=(D<<24>>24<0?c[q+4>>2]|0:D&255)+(z-C<<1)|0;H=E<<24>>24<0?c[p+4>>2]|0:E&255}else{E=a[q+11>>0]|0;z=a[p+11>>0]|0;F=2;G=z<<24>>24<0?c[p+4>>2]|0:z&255;H=E<<24>>24<0?c[q+4>>2]|0:E&255}E=H+C+G+F|0;if(E>>>0>100){F=Pp(E)|0;E=F;if(!F){I=0;J=E;K=a[x>>0]|0;L=c[A>>2]|0;M=c[r>>2]|0}else{I=F;J=E;K=e;L=y;M=C}}else{I=s;J=0;K=e;L=y;M=C}C=K<<24>>24<0;y=C?c[h>>2]|0:h;Cx(I,t,u,c[f+4>>2]|0,y,y+(C?L:K&255)|0,w,B,k,a[m>>0]|0,a[n>>0]|0,o,p,q,M);c[v>>2]=c[d>>2];d=c[t>>2]|0;t=c[u>>2]|0;c[i>>2]=c[v>>2];v=Ie(i,I,d,t,f,g)|0;if(J|0)Qp(J);LB(q);LB(p);LB(o);Ys(j);l=b;return v|0}function Bx(b,d,e,f,g,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;n=l;l=l+16|0;o=n+12|0;p=n;if(b){b=Xs(e,42636)|0;if(d){pb[c[(c[b>>2]|0)+44>>2]&127](o,b);q=c[o>>2]|0;a[f>>0]=q;a[f+1>>0]=q>>8;a[f+2>>0]=q>>16;a[f+3>>0]=q>>24;pb[c[(c[b>>2]|0)+32>>2]&127](p,b);q=k+11|0;if((a[q>>0]|0)<0){r=c[k>>2]|0;a[o>>0]=0;Bs(r,o);c[k+4>>2]=0;s=k}else{a[o>>0]=0;Bs(k,o);a[q>>0]=0;s=k}QB(k,0);c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];s=0;while(1){if((s|0)==3)break;c[p+(s<<2)>>2]=0;s=s+1|0}LB(p);t=b}else{pb[c[(c[b>>2]|0)+40>>2]&127](o,b);s=c[o>>2]|0;a[f>>0]=s;a[f+1>>0]=s>>8;a[f+2>>0]=s>>16;a[f+3>>0]=s>>24;pb[c[(c[b>>2]|0)+28>>2]&127](p,b);s=k+11|0;if((a[s>>0]|0)<0){q=c[k>>2]|0;a[o>>0]=0;Bs(q,o);c[k+4>>2]=0;u=k}else{a[o>>0]=0;Bs(k,o);a[s>>0]=0;u=k}QB(k,0);c[u>>2]=c[p>>2];c[u+4>>2]=c[p+4>>2];c[u+8>>2]=c[p+8>>2];u=0;while(1){if((u|0)==3)break;c[p+(u<<2)>>2]=0;u=u+1|0}LB(p);t=b}a[g>>0]=rb[c[(c[b>>2]|0)+12>>2]&127](b)|0;a[h>>0]=rb[c[(c[b>>2]|0)+16>>2]&127](b)|0;pb[c[(c[t>>2]|0)+20>>2]&127](p,b);u=i+11|0;if((a[u>>0]|0)<0){s=c[i>>2]|0;a[o>>0]=0;Bs(s,o);c[i+4>>2]=0;v=i}else{a[o>>0]=0;Bs(i,o);a[u>>0]=0;v=i}QB(i,0);c[v>>2]=c[p>>2];c[v+4>>2]=c[p+4>>2];c[v+8>>2]=c[p+8>>2];v=0;while(1){if((v|0)==3)break;c[p+(v<<2)>>2]=0;v=v+1|0}LB(p);pb[c[(c[t>>2]|0)+24>>2]&127](p,b);t=j+11|0;if((a[t>>0]|0)<0){v=c[j>>2]|0;a[o>>0]=0;Bs(v,o);c[j+4>>2]=0;w=j}else{a[o>>0]=0;Bs(j,o);a[t>>0]=0;w=j}QB(j,0);c[w>>2]=c[p>>2];c[w+4>>2]=c[p+4>>2];c[w+8>>2]=c[p+8>>2];w=0;while(1){if((w|0)==3)break;c[p+(w<<2)>>2]=0;w=w+1|0}LB(p);x=rb[c[(c[b>>2]|0)+36>>2]&127](b)|0}else{b=Xs(e,42628)|0;if(d){pb[c[(c[b>>2]|0)+44>>2]&127](o,b);d=c[o>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;pb[c[(c[b>>2]|0)+32>>2]&127](p,b);d=k+11|0;if((a[d>>0]|0)<0){e=c[k>>2]|0;a[o>>0]=0;Bs(e,o);c[k+4>>2]=0;y=k}else{a[o>>0]=0;Bs(k,o);a[d>>0]=0;y=k}QB(k,0);c[y>>2]=c[p>>2];c[y+4>>2]=c[p+4>>2];c[y+8>>2]=c[p+8>>2];y=0;while(1){if((y|0)==3)break;c[p+(y<<2)>>2]=0;y=y+1|0}LB(p);z=b}else{pb[c[(c[b>>2]|0)+40>>2]&127](o,b);y=c[o>>2]|0;a[f>>0]=y;a[f+1>>0]=y>>8;a[f+2>>0]=y>>16;a[f+3>>0]=y>>24;pb[c[(c[b>>2]|0)+28>>2]&127](p,b);y=k+11|0;if((a[y>>0]|0)<0){f=c[k>>2]|0;a[o>>0]=0;Bs(f,o);c[k+4>>2]=0;A=k}else{a[o>>0]=0;Bs(k,o);a[y>>0]=0;A=k}QB(k,0);c[A>>2]=c[p>>2];c[A+4>>2]=c[p+4>>2];c[A+8>>2]=c[p+8>>2];A=0;while(1){if((A|0)==3)break;c[p+(A<<2)>>2]=0;A=A+1|0}LB(p);z=b}a[g>>0]=rb[c[(c[b>>2]|0)+12>>2]&127](b)|0;a[h>>0]=rb[c[(c[b>>2]|0)+16>>2]&127](b)|0;pb[c[(c[z>>2]|0)+20>>2]&127](p,b);h=i+11|0;if((a[h>>0]|0)<0){g=c[i>>2]|0;a[o>>0]=0;Bs(g,o);c[i+4>>2]=0;B=i}else{a[o>>0]=0;Bs(i,o);a[h>>0]=0;B=i}QB(i,0);c[B>>2]=c[p>>2];c[B+4>>2]=c[p+4>>2];c[B+8>>2]=c[p+8>>2];B=0;while(1){if((B|0)==3)break;c[p+(B<<2)>>2]=0;B=B+1|0}LB(p);pb[c[(c[z>>2]|0)+24>>2]&127](p,b);z=j+11|0;if((a[z>>0]|0)<0){B=c[j>>2]|0;a[o>>0]=0;Bs(B,o);c[j+4>>2]=0;C=j}else{a[o>>0]=0;Bs(j,o);a[z>>0]=0;C=j}QB(j,0);c[C>>2]=c[p>>2];c[C+4>>2]=c[p+4>>2];c[C+8>>2]=c[p+8>>2];C=0;while(1){if((C|0)==3)break;c[p+(C<<2)>>2]=0;C=C+1|0}LB(p);x=rb[c[(c[b>>2]|0)+36>>2]&127](b)|0}c[m>>2]=x;l=n;return}function Cx(d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;r=r|0;var 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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;c[f>>2]=d;s=q+11|0;t=q+4|0;u=p+11|0;v=p+4|0;w=(g&512|0)==0;x=j+8|0;y=(r|0)>0;z=o+11|0;A=o+4|0;B=0;C=h;while(1){if((B|0)==4)break;a:do switch(a[l+B>>0]|0){case 0:{c[e>>2]=c[f>>2];D=C;break}case 1:{c[e>>2]=c[f>>2];h=zb[c[(c[j>>2]|0)+28>>2]&63](j,32)|0;E=c[f>>2]|0;c[f>>2]=E+1;a[E>>0]=h;D=C;break}case 3:{h=a[s>>0]|0;E=h<<24>>24<0;if(!((E?c[t>>2]|0:h&255)|0))D=C;else{h=a[(E?c[q>>2]|0:q)>>0]|0;E=c[f>>2]|0;c[f>>2]=E+1;a[E>>0]=h;D=C}break}case 2:{h=a[u>>0]|0;E=h<<24>>24<0;F=E?c[v>>2]|0:h&255;if(w|(F|0)==0)D=C;else{h=E?c[p>>2]|0:p;E=h+F|0;F=c[f>>2]|0;G=h;while(1){if((G|0)==(E|0))break;a[F>>0]=a[G>>0]|0;F=F+1|0;G=G+1|0}c[f>>2]=F;D=C}break}case 4:{G=c[f>>2]|0;E=k?C+1|0:C;h=E;while(1){if(h>>>0>=i>>>0)break;H=a[h>>0]|0;if(H<<24>>24<=-1)break;if(!(b[(c[x>>2]|0)+(H<<24>>24<<1)>>1]&2048))break;h=h+1|0}if(y){F=r;H=h;while(1){I=(F|0)>0;if(!(H>>>0>E>>>0&I))break;J=H+-1|0;K=a[J>>0]|0;L=c[f>>2]|0;c[f>>2]=L+1;a[L>>0]=K;F=F+-1|0;H=J}if(I)M=zb[c[(c[j>>2]|0)+28>>2]&63](j,48)|0;else M=0;J=F;while(1){N=c[f>>2]|0;c[f>>2]=N+1;if((J|0)<=0)break;a[N>>0]=M;J=J+-1|0}a[N>>0]=m;O=H}else O=h;b:do if((O|0)==(E|0)){J=zb[c[(c[j>>2]|0)+28>>2]&63](j,48)|0;F=c[f>>2]|0;c[f>>2]=F+1;a[F>>0]=J}else{J=a[z>>0]|0;F=J<<24>>24<0;if(!((F?c[A>>2]|0:J&255)|0)){P=-1;Q=0;R=0;S=O}else{P=a[(F?c[o>>2]|0:o)>>0]|0;Q=0;R=0;S=O}while(1){if((S|0)==(E|0))break b;if((R|0)==(P|0)){F=c[f>>2]|0;c[f>>2]=F+1;a[F>>0]=n;F=Q+1|0;J=a[z>>0]|0;K=J<<24>>24<0;if(F>>>0<(K?c[A>>2]|0:J&255)>>>0){J=a[(K?c[o>>2]|0:o)+F>>0]|0;T=J<<24>>24==127?-1:J<<24>>24;U=F;V=0}else{T=R;U=F;V=0}}else{T=P;U=Q;V=R}F=S+-1|0;J=a[F>>0]|0;K=c[f>>2]|0;c[f>>2]=K+1;a[K>>0]=J;P=T;Q=U;R=V+1|0;S=F}}while(0);h=c[f>>2]|0;if((G|0)==(h|0))D=E;else{H=h;h=G;while(1){F=H+-1|0;if(h>>>0>=F>>>0){D=E;break a}J=a[h>>0]|0;a[h>>0]=a[F>>0]|0;a[F>>0]=J;H=F;h=h+1|0}}break}default:D=C}while(0);B=B+1|0;C=D}D=a[s>>0]|0;s=D<<24>>24<0;C=s?c[t>>2]|0:D&255;if(C>>>0>1){D=s?c[q>>2]|0:q;q=D+C|0;C=c[f>>2]|0;s=D;while(1){D=s+1|0;if((D|0)==(q|0))break;a[C>>0]=a[D>>0]|0;C=C+1|0;s=D}c[f>>2]=C}switch((g&176)<<24>>24){case 32:{c[e>>2]=c[f>>2];break}case 16:break;default:c[e>>2]=d}return}function Dx(a){a=a|0;Cs(a);return}function Ex(a){a=a|0;Cs(a);tB(a);return}function Fx(b,d,e,f,g,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=+i;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;b=l;l=l+1008|0;j=b+8|0;k=b;m=b+896|0;n=b+888|0;o=b+488|0;p=b+480|0;q=b+892|0;r=b+476|0;s=b+472|0;t=b+460|0;u=b+448|0;v=b+436|0;w=b+432|0;x=b+32|0;y=b+24|0;z=b+16|0;A=b+20|0;c[n>>2]=m;h[j>>3]=i;B=Ao(m,100,36400,j)|0;if(B>>>0>99){m=_s()|0;h[k>>3]=i;C=qu(n,m,36400,k)|0;k=c[n>>2]|0;if(!k)D=c[n>>2]|0;else D=k;k=Pp(C<<2)|0;m=k;if(!k){E=0;F=C;G=m;H=D}else{E=k;F=C;G=m;H=D}}else{E=o;F=B;G=0;H=0}qr(p,f);B=Xs(p,40948)|0;o=c[n>>2]|0;xb[c[(c[B>>2]|0)+48>>2]&15](B,o,o+F|0,E)|0;if(!F)I=0;else I=(a[c[n>>2]>>0]|0)==45;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[t+(n<<2)>>2]=0;n=n+1|0}c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[u+(n<<2)>>2]=0;n=n+1|0}c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;n=0;while(1){if((n|0)==3)break;c[v+(n<<2)>>2]=0;n=n+1|0}Hx(e,I,p,q,r,s,t,u,v,w);e=c[w>>2]|0;if((F|0)>(e|0)){n=a[v+8+3>>0]|0;o=a[u+8+3>>0]|0;J=1;K=(n<<24>>24<0?c[v+4>>2]|0:n&255)+(F-e<<1)|0;L=o<<24>>24<0?c[u+4>>2]|0:o&255}else{o=a[v+8+3>>0]|0;n=a[u+8+3>>0]|0;J=2;K=n<<24>>24<0?c[u+4>>2]|0:n&255;L=o<<24>>24<0?c[v+4>>2]|0:o&255}o=L+e+K+J|0;if(o>>>0>100){J=Pp(o<<2)|0;o=J;if(!J){M=0;N=o;O=c[w>>2]|0}else{M=J;N=o;O=e}}else{M=x;N=0;O=e}Ix(M,y,z,c[f+4>>2]|0,E,E+(F<<2)|0,B,I,q,c[r>>2]|0,c[s>>2]|0,t,u,v,O);c[A>>2]=c[d>>2];d=c[y>>2]|0;y=c[z>>2]|0;c[j>>2]=c[A>>2];A=Eu(j,M,d,y,f,g)|0;if(N|0)Qp(N);gC(v);gC(u);LB(t);Ys(p);if(G|0)Qp(G);if(H|0)Qp(H);l=b;return A|0}function Gx(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;b=l;l=l+480|0;i=b+468|0;j=b+464|0;k=b+472|0;m=b+460|0;n=b+456|0;o=b+444|0;p=b+432|0;q=b+420|0;r=b+416|0;s=b+16|0;t=b+8|0;u=b+4|0;v=b;qr(j,f);w=Xs(j,40948)|0;x=h+8+3|0;y=a[x>>0]|0;z=y<<24>>24<0;A=h+4|0;if(!((z?c[A>>2]|0:y&255)|0))B=0;else{y=c[(z?c[h>>2]|0:h)>>2]|0;B=(y|0)==(zb[c[(c[w>>2]|0)+44>>2]&63](w,45)|0)};c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;y=0;while(1){if((y|0)==3)break;c[o+(y<<2)>>2]=0;y=y+1|0}c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;y=0;while(1){if((y|0)==3)break;c[p+(y<<2)>>2]=0;y=y+1|0}c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;y=0;while(1){if((y|0)==3)break;c[q+(y<<2)>>2]=0;y=y+1|0}Hx(e,B,j,k,m,n,o,p,q,r);e=a[x>>0]|0;y=c[A>>2]|0;z=e<<24>>24<0?y:e&255;C=c[r>>2]|0;if((z|0)>(C|0)){D=a[q+8+3>>0]|0;E=a[p+8+3>>0]|0;F=1;G=(D<<24>>24<0?c[q+4>>2]|0:D&255)+(z-C<<1)|0;H=E<<24>>24<0?c[p+4>>2]|0:E&255}else{E=a[q+8+3>>0]|0;z=a[p+8+3>>0]|0;F=2;G=z<<24>>24<0?c[p+4>>2]|0:z&255;H=E<<24>>24<0?c[q+4>>2]|0:E&255}E=H+C+G+F|0;if(E>>>0>100){F=Pp(E<<2)|0;E=F;if(!F){I=0;J=E;K=c[A>>2]|0;L=c[r>>2]|0;M=a[x>>0]|0}else{I=F;J=E;K=y;L=C;M=e}}else{I=s;J=0;K=y;L=C;M=e}e=M<<24>>24<0;C=e?c[h>>2]|0:h;Ix(I,t,u,c[f+4>>2]|0,C,C+((e?K:M&255)<<2)|0,w,B,k,c[m>>2]|0,c[n>>2]|0,o,p,q,L);c[v>>2]=c[d>>2];d=c[t>>2]|0;t=c[u>>2]|0;c[i>>2]=c[v>>2];v=Eu(i,I,d,t,f,g)|0;if(J|0)Qp(J);gC(q);gC(p);LB(o);Ys(j);l=b;return v|0}function Hx(b,d,e,f,g,h,i,j,k,m){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;n=l;l=l+16|0;o=n+12|0;p=n;if(b){b=Xs(e,42652)|0;if(d){pb[c[(c[b>>2]|0)+44>>2]&127](o,b);q=c[o>>2]|0;a[f>>0]=q;a[f+1>>0]=q>>8;a[f+2>>0]=q>>16;a[f+3>>0]=q>>24;pb[c[(c[b>>2]|0)+32>>2]&127](p,b);q=k+8+3|0;if((a[q>>0]|0)<0){r=c[k>>2]|0;c[o>>2]=0;Js(r,o);c[k+4>>2]=0}else{c[o>>2]=0;Js(k,o);a[q>>0]=0}kC(k,0);c[k>>2]=c[p>>2];c[k+4>>2]=c[p+4>>2];c[k+8>>2]=c[p+8>>2];q=0;while(1){if((q|0)==3)break;c[p+(q<<2)>>2]=0;q=q+1|0}gC(p)}else{pb[c[(c[b>>2]|0)+40>>2]&127](o,b);q=c[o>>2]|0;a[f>>0]=q;a[f+1>>0]=q>>8;a[f+2>>0]=q>>16;a[f+3>>0]=q>>24;pb[c[(c[b>>2]|0)+28>>2]&127](p,b);q=k+8+3|0;if((a[q>>0]|0)<0){r=c[k>>2]|0;c[o>>2]=0;Js(r,o);c[k+4>>2]=0}else{c[o>>2]=0;Js(k,o);a[q>>0]=0}kC(k,0);c[k>>2]=c[p>>2];c[k+4>>2]=c[p+4>>2];c[k+8>>2]=c[p+8>>2];q=0;while(1){if((q|0)==3)break;c[p+(q<<2)>>2]=0;q=q+1|0}gC(p)}c[g>>2]=rb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[h>>2]=rb[c[(c[b>>2]|0)+16>>2]&127](b)|0;pb[c[(c[b>>2]|0)+20>>2]&127](p,b);q=i+11|0;if((a[q>>0]|0)<0){r=c[i>>2]|0;a[o>>0]=0;Bs(r,o);c[i+4>>2]=0;s=i}else{a[o>>0]=0;Bs(i,o);a[q>>0]=0;s=i}QB(i,0);c[s>>2]=c[p>>2];c[s+4>>2]=c[p+4>>2];c[s+8>>2]=c[p+8>>2];s=0;while(1){if((s|0)==3)break;c[p+(s<<2)>>2]=0;s=s+1|0}LB(p);pb[c[(c[b>>2]|0)+24>>2]&127](p,b);s=j+8+3|0;if((a[s>>0]|0)<0){q=c[j>>2]|0;c[o>>2]=0;Js(q,o);c[j+4>>2]=0}else{c[o>>2]=0;Js(j,o);a[s>>0]=0}kC(j,0);c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];s=0;while(1){if((s|0)==3)break;c[p+(s<<2)>>2]=0;s=s+1|0}gC(p);t=rb[c[(c[b>>2]|0)+36>>2]&127](b)|0}else{b=Xs(e,42644)|0;if(d){pb[c[(c[b>>2]|0)+44>>2]&127](o,b);d=c[o>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;pb[c[(c[b>>2]|0)+32>>2]&127](p,b);d=k+8+3|0;if((a[d>>0]|0)<0){e=c[k>>2]|0;c[o>>2]=0;Js(e,o);c[k+4>>2]=0}else{c[o>>2]=0;Js(k,o);a[d>>0]=0}kC(k,0);c[k>>2]=c[p>>2];c[k+4>>2]=c[p+4>>2];c[k+8>>2]=c[p+8>>2];d=0;while(1){if((d|0)==3)break;c[p+(d<<2)>>2]=0;d=d+1|0}gC(p)}else{pb[c[(c[b>>2]|0)+40>>2]&127](o,b);d=c[o>>2]|0;a[f>>0]=d;a[f+1>>0]=d>>8;a[f+2>>0]=d>>16;a[f+3>>0]=d>>24;pb[c[(c[b>>2]|0)+28>>2]&127](p,b);d=k+8+3|0;if((a[d>>0]|0)<0){f=c[k>>2]|0;c[o>>2]=0;Js(f,o);c[k+4>>2]=0}else{c[o>>2]=0;Js(k,o);a[d>>0]=0}kC(k,0);c[k>>2]=c[p>>2];c[k+4>>2]=c[p+4>>2];c[k+8>>2]=c[p+8>>2];k=0;while(1){if((k|0)==3)break;c[p+(k<<2)>>2]=0;k=k+1|0}gC(p)}c[g>>2]=rb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[h>>2]=rb[c[(c[b>>2]|0)+16>>2]&127](b)|0;pb[c[(c[b>>2]|0)+20>>2]&127](p,b);h=i+11|0;if((a[h>>0]|0)<0){g=c[i>>2]|0;a[o>>0]=0;Bs(g,o);c[i+4>>2]=0;u=i}else{a[o>>0]=0;Bs(i,o);a[h>>0]=0;u=i}QB(i,0);c[u>>2]=c[p>>2];c[u+4>>2]=c[p+4>>2];c[u+8>>2]=c[p+8>>2];u=0;while(1){if((u|0)==3)break;c[p+(u<<2)>>2]=0;u=u+1|0}LB(p);pb[c[(c[b>>2]|0)+24>>2]&127](p,b);u=j+8+3|0;if((a[u>>0]|0)<0){i=c[j>>2]|0;c[o>>2]=0;Js(i,o);c[j+4>>2]=0}else{c[o>>2]=0;Js(j,o);a[u>>0]=0}kC(j,0);c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];j=0;while(1){if((j|0)==3)break;c[p+(j<<2)>>2]=0;j=j+1|0}gC(p);t=rb[c[(c[b>>2]|0)+36>>2]&127](b)|0}c[m>>2]=t;l=n;return}function Ix(b,d,e,f,g,h,i,j,k,l,m,n,o,p,q){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;c[e>>2]=b;r=p+8+3|0;s=p+4|0;t=o+8+3|0;u=o+4|0;v=(f&512|0)==0;w=(q|0)>0;x=n+11|0;y=n+4|0;z=0;A=g;while(1){if((z|0)==4)break;a:do switch(a[k+z>>0]|0){case 0:{c[d>>2]=c[e>>2];B=A;break}case 1:{c[d>>2]=c[e>>2];g=zb[c[(c[i>>2]|0)+44>>2]&63](i,32)|0;C=c[e>>2]|0;c[e>>2]=C+4;c[C>>2]=g;B=A;break}case 3:{g=a[r>>0]|0;C=g<<24>>24<0;if(!((C?c[s>>2]|0:g&255)|0))B=A;else{g=c[(C?c[p>>2]|0:p)>>2]|0;C=c[e>>2]|0;c[e>>2]=C+4;c[C>>2]=g;B=A}break}case 2:{g=a[t>>0]|0;C=g<<24>>24<0;D=C?c[u>>2]|0:g&255;if(v|(D|0)==0)B=A;else{g=C?c[o>>2]|0:o;C=g+(D<<2)|0;E=c[e>>2]|0;F=E;G=g;while(1){if((G|0)==(C|0))break;c[F>>2]=c[G>>2];F=F+4|0;G=G+4|0}c[e>>2]=E+(D<<2);B=A}break}case 4:{G=c[e>>2]|0;F=j?A+4|0:A;C=F;while(1){if(C>>>0>=h>>>0)break;if(!(ib[c[(c[i>>2]|0)+12>>2]&31](i,2048,c[C>>2]|0)|0))break;C=C+4|0}if(w){D=q;E=C;while(1){H=(D|0)>0;if(!(E>>>0>F>>>0&H))break;g=E+-4|0;I=c[g>>2]|0;J=c[e>>2]|0;c[e>>2]=J+4;c[J>>2]=I;D=D+-1|0;E=g}if(H)K=zb[c[(c[i>>2]|0)+44>>2]&63](i,48)|0;else K=0;g=D;I=c[e>>2]|0;while(1){L=I+4|0;if((g|0)<=0)break;c[I>>2]=K;g=g+-1|0;I=L}c[e>>2]=L;c[I>>2]=l;M=E}else M=C;if((M|0)==(F|0)){g=zb[c[(c[i>>2]|0)+44>>2]&63](i,48)|0;D=c[e>>2]|0;J=D+4|0;c[e>>2]=J;c[D>>2]=g;N=J}else{J=a[x>>0]|0;g=J<<24>>24<0;D=J&255;if(!((g?c[y>>2]|0:D)|0)){O=-1;P=0;Q=0;R=M}else{O=a[(g?c[n>>2]|0:n)>>0]|0;P=0;Q=0;R=M}while(1){if((R|0)==(F|0))break;J=c[e>>2]|0;if((Q|0)==(O|0)){S=J+4|0;c[e>>2]=S;c[J>>2]=m;T=P+1|0;if(T>>>0<(g?c[y>>2]|0:D)>>>0){U=a[(g?c[n>>2]|0:n)+T>>0]|0;V=U<<24>>24==127?-1:U<<24>>24;W=T;X=0;Y=S}else{V=Q;W=T;X=0;Y=S}}else{V=O;W=P;X=Q;Y=J}J=R+-4|0;S=c[J>>2]|0;c[e>>2]=Y+4;c[Y>>2]=S;O=V;P=W;Q=X+1|0;R=J}N=c[e>>2]|0}if((G|0)==(N|0))B=F;else{g=N;D=G;while(1){C=g+-4|0;if(D>>>0>=C>>>0){B=F;break a}E=c[D>>2]|0;c[D>>2]=c[C>>2];c[C>>2]=E;g=C;D=D+4|0}}break}default:B=A}while(0);z=z+1|0;A=B}B=a[r>>0]|0;r=B<<24>>24<0;A=r?c[s>>2]|0:B&255;if(A>>>0>1){B=r?c[p>>2]|0:p;p=B+4|0;r=B+(A<<2)|0;A=c[e>>2]|0;B=r-p|0;s=A;z=p;while(1){if((z|0)==(r|0))break;c[s>>2]=c[z>>2];s=s+4|0;z=z+4|0}c[e>>2]=A+(B>>>2<<2)}switch((f&176)<<24>>24){case 32:{c[d>>2]=c[e>>2];break}case 16:break;default:c[d>>2]=b}return}function Jx(a){a=a|0;Cs(a);return}function Kx(a){a=a|0;Cs(a);tB(a);return}function Lx(b,d,e){b=b|0;d=d|0;e=e|0;e=yp((a[d+11>>0]|0)<0?c[d>>2]|0:d,1)|0;return e>>>((e|0)!=(-1|0)&1)|0}function Mx(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0;d=l;l=l+16|0;i=d;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;j=0;while(1){if((j|0)==3)break;c[i+(j<<2)>>2]=0;j=j+1|0}j=a[h+11>>0]|0;k=j<<24>>24<0;m=k?c[h>>2]|0:h;n=m+(k?c[h+4>>2]|0:j&255)|0;j=m;while(1){if(j>>>0>=n>>>0)break;XB(i,a[j>>0]|0);j=j+1|0}j=(a[i+11>>0]|0)<0?c[i>>2]|0:i;n=Bp((e|0)==-1?-1:e<<1,f,g,j)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;g=0;while(1){if((g|0)==3)break;c[b+(g<<2)>>2]=0;g=g+1|0}g=j+(yn(n)|0)|0;n=j;while(1){if(n>>>0>=g>>>0)break;XB(b,a[n>>0]|0);n=n+1|0}LB(i);l=d;return}function Nx(a,b){a=a|0;b=b|0;return}function Ox(a){a=a|0;Cs(a);return}function Px(a){a=a|0;Cs(a);tB(a);return}function Qx(b,d,e){b=b|0;d=d|0;e=e|0;e=yp((a[d+11>>0]|0)<0?c[d>>2]|0:d,1)|0;return e>>>((e|0)!=(-1|0)&1)|0}function Rx(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=l;l=l+176|0;i=d+168|0;j=d+40|0;k=d+36|0;m=d+32|0;n=d;o=d+24|0;p=d+16|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;q=0;while(1){if((q|0)==3)break;c[n+(q<<2)>>2]=0;q=q+1|0}c[o+4>>2]=0;c[o>>2]=16416;q=a[h+8+3>>0]|0;r=q<<24>>24<0;s=r?c[h>>2]|0:h;t=s+((r?c[h+4>>2]|0:q&255)<<2)|0;q=j+32|0;h=s;s=0;while(1){if(!((s|0)!=2&h>>>0<t>>>0))break;c[m>>2]=h;r=wb[c[(c[o>>2]|0)+12>>2]&15](o,i,h,t,m,j,q,k)|0;u=j;while(1){if(u>>>0>=(c[k>>2]|0)>>>0)break;XB(n,a[u>>0]|0);u=u+1|0}h=c[m>>2]|0;s=r}Cs(o);o=(a[n+11>>0]|0)<0?c[n>>2]|0:n;s=Bp((e|0)==-1?-1:e<<1,f,g,o)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;g=0;while(1){if((g|0)==3)break;c[b+(g<<2)>>2]=0;g=g+1|0}c[p+4>>2]=0;c[p>>2]=16464;g=o+(yn(s)|0)|0;s=g;f=j+128|0;e=o;o=0;while(1){if(!((o|0)!=2&e>>>0<g>>>0))break;c[m>>2]=e;h=wb[c[(c[p>>2]|0)+16>>2]&15](p,i,e,(s-e|0)>32?e+32|0:g,m,j,f,k)|0;q=j;while(1){if(q>>>0>=(c[k>>2]|0)>>>0)break;nC(b,c[q>>2]|0);q=q+4|0}e=c[m>>2]|0;o=h}Cs(p);LB(n);l=d;return}function Sx(a,b){a=a|0;b=b|0;return}function Tx(a){a=a|0;Cs(a);tB(a);return}function Ux(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;b=l;l=l+16|0;a=b+4|0;j=b;c[a>>2]=d;c[j>>2]=g;k=by(d,e,a,g,h,j,1114111,0)|0;c[f>>2]=c[a>>2];c[i>>2]=c[j>>2];l=b;return k|0}function Vx(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;b=l;l=l+16|0;a=b+4|0;j=b;c[a>>2]=d;c[j>>2]=g;k=ay(d,e,a,g,h,j,1114111,0)|0;c[f>>2]=c[a>>2];c[i>>2]=c[j>>2];l=b;return k|0}function Wx(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function Xx(a){a=a|0;return 0}function Yx(a){a=a|0;return 0}function Zx(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return $x(c,d,e,1114111,0)|0}function _x(a){a=a|0;return 4}function $x(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;h=c;i=b;if(((h-i|0)>2&(g&4|0)!=0?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0){j=0;k=(a[b+2>>0]|0)==-65?b+3|0:b}else{j=0;k=b}a:while(1){if(!(j>>>0<e>>>0&k>>>0<c>>>0)){l=30;break}b=a[k>>0]|0;g=b&255;m=k+1|0;do if(b<<24>>24>-1)if(g>>>0>f>>>0){l=30;break a}else n=m;else{if((b&255)<194){l=30;break a}o=k+2|0;p=k;q=h-p|0;if((b&255)<224){if((q|0)<2){l=30;break a}r=d[m>>0]|0;if((r&192|0)!=128){l=30;break a}if((r&63|g<<6&1984)>>>0>f>>>0){l=30;break a}else{n=o;break}}r=k+3|0;if((b&255)<240){if((q|0)<3){l=30;break a}s=a[o>>0]|0;t=d[m>>0]|0;u=t&224;switch(b<<24>>24){case -32:{if((u|0)!=160){v=p;break a}break}case -19:{if((u|0)!=128){v=p;break a}break}default:if((t&192|0)!=128){v=p;break a}}u=s&255;if((u&192|0)!=128){l=30;break a}if((t<<6&4032|g<<12&61440|u&63)>>>0>f>>>0){l=30;break a}else{n=r;break}}if((q|0)<4|(b&255)>244){l=30;break a}q=a[m>>0]|0;u=a[o>>0]|0;o=a[r>>0]|0;r=q&255;switch(b<<24>>24){case -16:{if((q+112&255)>=48){v=p;break a}break}case -12:{if((r&240|0)!=128){v=p;break a}break}default:if((r&192|0)!=128){v=p;break a}}p=u&255;if((p&192|0)!=128){l=30;break a}u=o&255;if((u&192|0)!=128){l=30;break a}if((r<<12&258048|g<<18&1835008|p<<6&4032|u&63)>>>0>f>>>0){l=30;break a}else n=k+4|0}while(0);j=j+1|0;k=n}if((l|0)==30)v=k;return v-i|0}function ay(b,e,f,g,h,i,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;c[f>>2]=b;c[i>>2]=g;g=e;if((((k&4|0?(k=c[f>>2]|0,(g-k|0)>2):0)?(a[k>>0]|0)==-17:0)?(a[k+1>>0]|0)==-69:0)?(a[k+2>>0]|0)==-65:0)c[f>>2]=k+3;a:while(1){k=c[f>>2]|0;if(k>>>0>=e>>>0){l=0;break}b=c[i>>2]|0;if(b>>>0>=h>>>0){l=1;break}m=a[k>>0]|0;n=m&255;o=k+1|0;do if(m<<24>>24>-1){if(n>>>0>j>>>0){l=2;break a}c[b>>2]=n;p=o}else{if((m&255)<194){l=2;break a}q=k+2|0;r=g-k|0;if((m&255)<224){if((r|0)<2){l=1;break a}s=d[o>>0]|0;if((s&192|0)!=128){l=2;break a}t=s&63|n<<6&1984;if(t>>>0>j>>>0){l=2;break a}c[b>>2]=t;p=q;break}t=k+3|0;if((m&255)<240){if((r|0)<3){l=1;break a}s=a[q>>0]|0;u=d[o>>0]|0;v=u&224;switch(m<<24>>24){case -32:{if((v|0)!=160){l=2;break a}break}case -19:{if((v|0)!=128){l=2;break a}break}default:if((u&192|0)!=128){l=2;break a}}v=s&255;if((v&192|0)!=128){l=2;break a}s=u<<6&4032|n<<12&61440|v&63;if(s>>>0>j>>>0){l=2;break a}c[b>>2]=s;p=t;break}if((m&255)>=245){l=2;break a}if((r|0)<4){l=1;break a}r=a[o>>0]|0;s=a[q>>0]|0;q=a[t>>0]|0;t=r&255;switch(m<<24>>24){case -16:{if((r+112&255)>=48){l=2;break a}break}case -12:{if((t&240|0)!=128){l=2;break a}break}default:if((t&192|0)!=128){l=2;break a}}r=s&255;if((r&192|0)!=128){l=2;break a}s=q&255;if((s&192|0)!=128){l=2;break a}q=t<<12&258048|n<<18&1835008|r<<6&4032|s&63;if(q>>>0>j>>>0){l=2;break a}c[b>>2]=q;p=k+4|0}while(0);c[f>>2]=p;c[i>>2]=(c[i>>2]|0)+4}return l|0}function by(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0;c[e>>2]=b;c[h>>2]=f;b=g;if(j&2)if((b-f|0)<3)k=1;else{c[h>>2]=f+1;a[f>>0]=-17;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=-69;f=c[h>>2]|0;c[h>>2]=f+1;a[f>>0]=-65;l=4}else l=4;a:do if((l|0)==4){f=c[e>>2]|0;while(1){if(f>>>0>=d>>>0){k=0;break a}j=c[f>>2]|0;if(j>>>0>i>>>0|(j&-2048|0)==55296){k=2;break a}do if(j>>>0>=128){g=(j&63|128)&255;if(j>>>0<2048){m=c[h>>2]|0;if((b-m|0)<2){k=1;break a}c[h>>2]=m+1;a[m>>0]=j>>>6|192;m=c[h>>2]|0;c[h>>2]=m+1;a[m>>0]=g;break}m=c[h>>2]|0;n=b-m|0;o=m+1|0;p=(j>>>6&63|128)&255;if(j>>>0<65536){if((n|0)<3){k=1;break a}c[h>>2]=o;a[m>>0]=j>>>12|224;q=c[h>>2]|0;c[h>>2]=q+1;a[q>>0]=p;q=c[h>>2]|0;c[h>>2]=q+1;a[q>>0]=g;break}else{if((n|0)<4){k=1;break a}c[h>>2]=o;a[m>>0]=j>>>18|240;m=c[h>>2]|0;c[h>>2]=m+1;a[m>>0]=j>>>12&63|128;m=c[h>>2]|0;c[h>>2]=m+1;a[m>>0]=p;p=c[h>>2]|0;c[h>>2]=p+1;a[p>>0]=g;break}}else{g=c[h>>2]|0;if((b-g|0)<1){k=1;break a}c[h>>2]=g+1;a[g>>0]=j}while(0);j=(c[e>>2]|0)+4|0;c[e>>2]=j;f=j}}while(0);return k|0}function cy(a){a=a|0;Cs(a);tB(a);return}function dy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;c[f>>2]=d;c[i>>2]=g;return 3}function ey(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;c[f>>2]=d;c[i>>2]=g;return 3}function fy(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function gy(a){a=a|0;return 1}function hy(a){a=a|0;return 1}function iy(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;b=d-c|0;return (b>>>0<e>>>0?b:e)|0}function jy(a){a=a|0;return 1}function ky(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=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;k=l;l=l+16|0;m=k;n=k+8|0;o=e;while(1){if((o|0)==(f|0)){p=f;break}if(!(c[o>>2]|0)){p=o;break}o=o+4|0}c[j>>2]=h;c[g>>2]=e;o=i;q=b+8|0;b=e;e=h;h=p;a:while(1){if((e|0)==(i|0)|(b|0)==(f|0)){r=b;s=35;break}p=d;t=c[p+4>>2]|0;u=m;c[u>>2]=c[p>>2];c[u+4>>2]=t;t=up(c[q>>2]|0)|0;u=rp(e,g,h-b>>2,o-e|0,d)|0;if(t|0)up(t)|0;switch(u|0){case -1:{s=10;break a;break}case 0:{v=1;s=32;break a;break}default:{}}t=(c[j>>2]|0)+u|0;c[j>>2]=t;if((t|0)==(i|0)){s=33;break}if((h|0)==(f|0)){w=f;x=t;y=c[g>>2]|0}else{t=up(c[q>>2]|0)|0;u=Un(n,0,d)|0;if(t|0)up(t)|0;if((u|0)==-1){z=2;s=31;break}if(u>>>0>(o-(c[j>>2]|0)|0)>>>0){z=1;s=31;break}else{A=n;B=u}while(1){if(!B)break;u=a[A>>0]|0;t=c[j>>2]|0;c[j>>2]=t+1;a[t>>0]=u;A=A+1|0;B=B+-1|0}u=(c[g>>2]|0)+4|0;c[g>>2]=u;t=u;while(1){if((t|0)==(f|0)){C=f;break}if(!(c[t>>2]|0)){C=t;break}t=t+4|0}w=C;x=c[j>>2]|0;y=u}b=y;e=x;h=w}if((s|0)==10){c[j>>2]=e;w=b;b=e;while(1){if((w|0)==(c[g>>2]|0))break;e=c[w>>2]|0;h=up(c[q>>2]|0)|0;x=Un(b,e,m)|0;if(h|0)up(h)|0;if((x|0)==-1)break;h=(c[j>>2]|0)+x|0;c[j>>2]=h;w=w+4|0;b=h}c[g>>2]=w;v=2;s=32}else if((s|0)==31){v=z;s=32}else if((s|0)==33){r=c[g>>2]|0;s=35}if((s|0)==32)D=v;else if((s|0)==35)D=(r|0)!=(f|0)&1;l=k;return D|0}function ly(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=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;k=l;l=l+16|0;m=k;n=e;while(1){if((n|0)==(f|0)){o=f;break}if(!(a[n>>0]|0)){o=n;break}n=n+1|0}c[j>>2]=h;c[g>>2]=e;n=i;p=b+8|0;b=e;e=h;h=o;while(1){if((e|0)==(i|0)|(b|0)==(f|0)){q=b;r=32;break}o=d;s=c[o+4>>2]|0;t=m;c[t>>2]=c[o>>2];c[t+4>>2]=s;u=h;s=up(c[p>>2]|0)|0;t=sp(e,g,u-b|0,n-e>>2,d)|0;if(s|0)up(s)|0;if((t|0)==-1){v=b;w=e;r=10;break}s=(c[j>>2]|0)+(t<<2)|0;c[j>>2]=s;if((s|0)==(i|0)){r=29;break}t=c[g>>2]|0;if((h|0)==(f|0)){x=f;y=s;z=t}else{o=up(c[p>>2]|0)|0;A=$o(s,t,1,d)|0;if(o|0)up(o)|0;if(A|0){B=2;r=28;break}c[j>>2]=(c[j>>2]|0)+4;A=(c[g>>2]|0)+1|0;c[g>>2]=A;o=A;while(1){if((o|0)==(f|0)){C=f;break}if(!(a[o>>0]|0)){C=o;break}o=o+1|0}x=C;y=c[j>>2]|0;z=A}b=z;e=y;h=x}do if((r|0)==10){a:while(1){r=0;c[j>>2]=w;if((v|0)==(c[g>>2]|0)){r=18;break}x=up(c[p>>2]|0)|0;h=$o(w,v,u-v|0,m)|0;if(x|0)up(x)|0;switch(h|0){case -1:{r=15;break a;break}case -2:{r=16;break a;break}case 0:{D=1;break}default:D=h}v=v+D|0;w=(c[j>>2]|0)+4|0;r=10}if((r|0)==15){c[g>>2]=v;B=2;r=28;break}else if((r|0)==16){c[g>>2]=v;B=1;r=28;break}else if((r|0)==18){c[g>>2]=v;B=(v|0)!=(f|0)&1;r=28;break}}else if((r|0)==29){q=c[g>>2]|0;r=32}while(0);if((r|0)==28)E=B;else if((r|0)==32)E=(q|0)!=(f|0)&1;l=k;return E|0}function my(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;h=l;l=l+16|0;i=h;c[g>>2]=e;e=up(c[b+8>>2]|0)|0;b=Un(i,0,d)|0;if(e|0)up(e)|0;a:do switch(b|0){case 0:case -1:{j=2;break}default:{e=b+-1|0;if(e>>>0>(f-(c[g>>2]|0)|0)>>>0)j=1;else{d=i;k=e;while(1){if(!k){j=0;break a}e=a[d>>0]|0;m=c[g>>2]|0;c[g>>2]=m+1;a[m>>0]=e;d=d+1|0;k=k+-1|0}}}}while(0);l=h;return j|0}function ny(a){a=a|0;var b=0,d=0,e=0;b=a+8|0;a=up(c[b>>2]|0)|0;d=yo(0,0,4)|0;if(a|0)up(a)|0;if(!d){d=c[b>>2]|0;if(!d)e=1;else{b=up(d)|0;d=mp()|0;if(b|0)up(b)|0;return (d|0)==1|0}}else e=-1;return e|0}function oy(a){a=a|0;return 0}function py(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;g=e;h=a+8|0;a=0;i=0;j=d;a:while(1){if((j|0)==(e|0)|a>>>0>=f>>>0)break;d=up(c[h>>2]|0)|0;k=qp(j,g-j|0,b)|0;if(d|0)up(d)|0;switch(k|0){case -2:case -1:{break a;break}case 0:{l=1;break}default:l=k}a=a+1|0;i=l+i|0;j=j+l|0}return i|0}function qy(a){a=a|0;var b=0,d=0;b=c[a+8>>2]|0;if(b){a=up(b)|0;b=mp()|0;if(!a)d=b;else{up(a)|0;d=b}}else d=1;return d|0}function ry(a){a=a|0;var b=0,d=0;c[a>>2]=16512;b=a+8|0;d=c[b>>2]|0;if((d|0)!=(_s()|0))zp(c[b>>2]|0);Cs(a);return}function sy(a){a=a|0;ry(a);tB(a);return}function ty(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;b=l;l=l+16|0;a=b+4|0;j=b;c[a>>2]=d;c[j>>2]=g;k=Cy(d,e,a,g,h,j,1114111,0)|0;c[f>>2]=c[a>>2];c[i>>2]=c[j>>2];l=b;return k|0}function uy(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;b=l;l=l+16|0;a=b+4|0;j=b;c[a>>2]=d;c[j>>2]=g;k=By(d,e,a,g,h,j,1114111,0)|0;c[f>>2]=c[a>>2];c[i>>2]=c[j>>2];l=b;return k|0}function vy(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;c[f>>2]=d;return 3}function wy(a){a=a|0;return 0}function xy(a){a=a|0;return 0}function yy(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Ay(c,d,e,1114111,0)|0}function zy(a){a=a|0;return 4}function Ay(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;h=c;i=b;if(((h-i|0)>2&(g&4|0)!=0?(a[b>>0]|0)==-17:0)?(a[b+1>>0]|0)==-69:0){j=0;k=(a[b+2>>0]|0)==-65?b+3|0:b}else{j=0;k=b}a:while(1){if(!(j>>>0<e>>>0&k>>>0<c>>>0)){l=31;break}b=a[k>>0]|0;g=b&255;if(g>>>0>f>>>0){l=31;break}m=k+1|0;do if(b<<24>>24<=-1){if((b&255)<194){l=31;break a}n=k+2|0;o=k;p=h-o|0;if((b&255)<224){if((p|0)<2){l=31;break a}q=d[m>>0]|0;if((q&192|0)!=128){l=31;break a}if((q&63|g<<6&1984)>>>0>f>>>0){l=31;break a}else{r=j;s=n;break}}q=k+3|0;if((b&255)<240){if((p|0)<3){l=31;break a}t=a[n>>0]|0;u=d[m>>0]|0;v=u&224;switch(b<<24>>24){case -32:{if((v|0)!=160){w=o;break a}break}case -19:{if((v|0)!=128){w=o;break a}break}default:if((u&192|0)!=128){w=o;break a}}v=t&255;if((v&192|0)!=128){l=31;break a}if((u<<6&4032|g<<12&61440|v&63)>>>0>f>>>0){l=31;break a}else{r=j;s=q;break}}if((b&255)>=245){l=31;break a}if((e-j|0)>>>0<2|(p|0)<4){l=31;break a}p=a[m>>0]|0;v=a[n>>0]|0;n=a[q>>0]|0;q=p&255;switch(b<<24>>24){case -16:{if((p+112&255)>=48){w=o;break a}break}case -12:{if((q&240|0)!=128){w=o;break a}break}default:if((q&192|0)!=128){w=o;break a}}o=v&255;if((o&192|0)!=128){l=31;break a}v=n&255;if((v&192|0)!=128){l=31;break a}if((q<<12&258048|g<<18&1835008|o<<6&4032|v&63)>>>0>f>>>0){l=31;break a}else{r=j+1|0;s=k+4|0}}else{r=j;s=m}while(0);j=r+1|0;k=s}if((l|0)==31)w=k;return w-i|0}function By(e,f,g,h,i,j,k,l){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;c[g>>2]=e;c[j>>2]=h;h=f;if((((l&4|0?(l=c[g>>2]|0,(h-l|0)>2):0)?(a[l>>0]|0)==-17:0)?(a[l+1>>0]|0)==-69:0)?(a[l+2>>0]|0)==-65:0)c[g>>2]=l+3;l=i;a:while(1){e=c[g>>2]|0;m=e>>>0<f>>>0;if(!m){n=40;break}o=c[j>>2]|0;if(o>>>0>=i>>>0){n=40;break}p=a[e>>0]|0;q=p&255;if(q>>>0>k>>>0){r=2;break}s=e+1|0;do if(p<<24>>24>-1){b[o>>1]=p&255;t=s}else{if((p&255)<194){r=2;break a}u=h-e|0;v=e+2|0;if((p&255)<224){if((u|0)<2){r=1;break a}w=d[s>>0]|0;if((w&192|0)!=128){r=2;break a}x=w&63|q<<6&1984;if(x>>>0>k>>>0){r=2;break a}b[o>>1]=x;t=v;break}x=e+3|0;if((p&255)<240){if((u|0)<3){r=1;break a}w=a[v>>0]|0;y=d[s>>0]|0;z=y&224;switch(p<<24>>24){case -32:{if((z|0)!=160){r=2;break a}break}case -19:{if((z|0)!=128){r=2;break a}break}default:if((y&192|0)!=128){r=2;break a}}z=w&255;if((z&192|0)!=128){r=2;break a}w=y<<6&4032|q<<12|z&63;if((w&65535)>>>0>k>>>0){r=2;break a}b[o>>1]=w;t=x;break}if((p&255)>=245){r=2;break a}if((u|0)<4){r=1;break a}u=a[s>>0]|0;w=a[v>>0]|0;v=a[x>>0]|0;x=u&255;switch(p<<24>>24){case -16:{if((u+112&255)>=48){r=2;break a}break}case -12:{if((x&240|0)!=128){r=2;break a}break}default:if((x&192|0)!=128){r=2;break a}}u=w&255;if((u&192|0)!=128){r=2;break a}w=v&255;if((w&192|0)!=128){r=2;break a}if((l-o|0)<4){r=1;break a}v=q&7;z=u<<6;y=w&63;if((x<<12&258048|v<<18|z&4032|y)>>>0>k>>>0){r=2;break a}b[o>>1]=x<<2&60|u>>>4&3|((x>>>4&3|v<<2)<<6)+16320|55296;v=o+2|0;c[j>>2]=v;b[v>>1]=y|z&960|56320;t=(c[g>>2]|0)+4|0}while(0);c[g>>2]=t;c[j>>2]=(c[j>>2]|0)+2}if((n|0)==40)r=m&1;return r|0}function Cy(d,f,g,h,i,j,k,l){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;c[g>>2]=d;c[j>>2]=h;d=i;if(l&2)if((d-h|0)<3)m=1;else{c[j>>2]=h+1;a[h>>0]=-17;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=-69;h=c[j>>2]|0;c[j>>2]=h+1;a[h>>0]=-65;n=4}else n=4;a:do if((n|0)==4){h=f;l=c[g>>2]|0;while(1){if(l>>>0>=f>>>0){m=0;break a}i=b[l>>1]|0;o=i&65535;if(o>>>0>k>>>0){m=2;break a}do if((i&65535)<128){p=c[j>>2]|0;if((d-p|0)<1){m=1;break a}c[j>>2]=p+1;a[p>>0]=i}else{p=o&63;q=(p|128)&255;if((i&65535)<2048){r=c[j>>2]|0;if((d-r|0)<2){m=1;break a}c[j>>2]=r+1;a[r>>0]=o>>>6|192;r=c[j>>2]|0;c[j>>2]=r+1;a[r>>0]=q;break}r=(o>>>12|224)&255;s=(o>>>6&63|128)&255;if((i&65535)<55296){t=c[j>>2]|0;if((d-t|0)<3){m=1;break a}c[j>>2]=t+1;a[t>>0]=r;t=c[j>>2]|0;c[j>>2]=t+1;a[t>>0]=s;t=c[j>>2]|0;c[j>>2]=t+1;a[t>>0]=q;break}if((i&65535)>=56320){if((i&65535)<57344){m=2;break a}t=c[j>>2]|0;if((d-t|0)<3){m=1;break a}c[j>>2]=t+1;a[t>>0]=r;r=c[j>>2]|0;c[j>>2]=r+1;a[r>>0]=s;s=c[j>>2]|0;c[j>>2]=s+1;a[s>>0]=q;break}if((h-l|0)<4){m=1;break a}q=l+2|0;s=e[q>>1]|0;if((s&64512|0)!=56320){m=2;break a}if((d-(c[j>>2]|0)|0)<4){m=1;break a}r=o&960;if(((r<<10)+65536|p<<10|s&1023)>>>0>k>>>0){m=2;break a}c[g>>2]=q;q=(r>>>6)+1|0;r=c[j>>2]|0;c[j>>2]=r+1;a[r>>0]=q>>>2|240;r=c[j>>2]|0;c[j>>2]=r+1;a[r>>0]=o>>>2&15|q<<4&48|128;q=c[j>>2]|0;c[j>>2]=q+1;a[q>>0]=o<<4&48|s>>>6&15|128;q=c[j>>2]|0;c[j>>2]=q+1;a[q>>0]=s&63|128}while(0);o=(c[g>>2]|0)+2|0;c[g>>2]=o;l=o}}while(0);return m|0}function Dy(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;c[a>>2]=16560;b=a+8|0;d=a+12|0;e=0;while(1){f=c[b>>2]|0;if(e>>>0>=(c[d>>2]|0)-f>>2>>>0)break;g=c[f+(e<<2)>>2]|0;if(g|0)lB(g)|0;e=e+1|0}LB(a+144|0);Fy(b);Cs(a);return}function Ey(a){a=a|0;Dy(a);tB(a);return}function Fy(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[b>>2]|0;do if(d|0){e=b+4|0;f=c[e>>2]|0;while(1){if((f|0)==(d|0))break;g=f+-4|0;c[e>>2]=g;f=g}if((b+16|0)==(d|0)){a[b+128>>0]=0;break}else{tB(d);break}}while(0);return}function Gy(b){b=b|0;var d=0;c[b>>2]=16580;d=c[b+8>>2]|0;if(d|0?a[b+12>>0]|0:0)uB(d);Cs(b);return}function Hy(a){a=a|0;Gy(a);tB(a);return}function Iy(a,b){a=a|0;b=b|0;var d=0;if(b<<24>>24>-1)d=c[(Ry()|0)+((b&255)<<2)>>2]&255;else d=b;return d|0}function Jy(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;b=d;while(1){if((b|0)==(e|0))break;d=a[b>>0]|0;if(d<<24>>24>-1){f=Ry()|0;g=c[f+(a[b>>0]<<2)>>2]&255}else g=d;a[b>>0]=g;b=b+1|0}return e|0}function Ky(a,b){a=a|0;b=b|0;var d=0;if(b<<24>>24>-1)d=c[(Qy()|0)+(b<<24>>24<<2)>>2]&255;else d=b;return d|0}function Ly(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;b=d;while(1){if((b|0)==(e|0))break;d=a[b>>0]|0;if(d<<24>>24>-1){f=Qy()|0;g=c[f+(a[b>>0]<<2)>>2]&255}else g=d;a[b>>0]=g;b=b+1|0}return e|0}function My(a,b){a=a|0;b=b|0;return b|0}function Ny(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;b=e;e=c;while(1){if((e|0)==(d|0))break;a[b>>0]=a[e>>0]|0;b=b+1|0;e=e+1|0}return d|0}function Oy(a,b,c){a=a|0;b=b|0;c=c|0;return (b<<24>>24>-1?b:c)|0}function Py(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;b=f;f=c;while(1){if((f|0)==(d|0))break;c=a[f>>0]|0;a[b>>0]=c<<24>>24>-1?c:e;b=b+1|0;f=f+1|0}return d|0}function Qy(){return c[(op()|0)>>2]|0}function Ry(){return c[(hp()|0)>>2]|0}function Sy(){return c[(lp()|0)>>2]|0}function Ty(a){a=a|0;c[a>>2]=16632;LB(a+12|0);Cs(a);return}function Uy(a){a=a|0;Ty(a);tB(a);return}function Vy(b){b=b|0;return a[b+8>>0]|0}function Wy(b){b=b|0;return a[b+9>>0]|0}function Xy(a,b){a=a|0;b=b|0;GB(a,b+12|0);return}function Yy(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,36977,kr(36977)|0);return}function Zy(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,36971,kr(36971)|0);return}function _y(a){a=a|0;c[a>>2]=16672;LB(a+16|0);Cs(a);return}function $y(a){a=a|0;_y(a);tB(a);return}function az(a){a=a|0;return c[a+8>>2]|0}function bz(a){a=a|0;return c[a+12>>2]|0}function cz(a,b){a=a|0;b=b|0;GB(a,b+16|0);return}function dz(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;dC(a,16728,Iv(16728)|0);return}function ez(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;dC(a,16704,Iv(16704)|0);return}function fz(a){a=a|0;Cs(a);tB(a);return}function gz(a){a=a|0;Cs(a);tB(a);return}function hz(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if(d>>>0<128)e=(b[(Sy()|0)+(d<<1)>>1]&c)<<16>>16!=0;else e=0;return e|0}function iz(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0;a=g;g=d;while(1){if((g|0)==(f|0))break;if((c[g>>2]|0)>>>0<128){d=Sy()|0;h=e[d+(c[g>>2]<<1)>>1]|0}else h=0;b[a>>1]=h;a=a+2|0;g=g+4|0}return f|0}function jz(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;a=e;while(1){if((a|0)==(f|0)){g=f;break}if((c[a>>2]|0)>>>0<128?(e=Sy()|0,(b[e+(c[a>>2]<<1)>>1]&d)<<16>>16):0){g=a;break}a=a+4|0}return g|0}function kz(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0;a=e;while(1){if((a|0)==(f|0)){g=f;break}if((c[a>>2]|0)>>>0>=128){g=a;break}e=Sy()|0;if(!((b[e+(c[a>>2]<<1)>>1]&d)<<16>>16)){g=a;break}a=a+4|0}return g|0}function lz(a,b){a=a|0;b=b|0;var d=0;if(b>>>0<128)d=c[(Ry()|0)+(b<<2)>>2]|0;else d=b;return d|0}function mz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;a=b;while(1){if((a|0)==(d|0))break;b=c[a>>2]|0;if(b>>>0<128){e=Ry()|0;f=c[e+(c[a>>2]<<2)>>2]|0}else f=b;c[a>>2]=f;a=a+4|0}return d|0}function nz(a,b){a=a|0;b=b|0;var d=0;if(b>>>0<128)d=c[(Qy()|0)+(b<<2)>>2]|0;else d=b;return d|0}function oz(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;a=b;while(1){if((a|0)==(d|0))break;b=c[a>>2]|0;if(b>>>0<128){e=Qy()|0;f=c[e+(c[a>>2]<<2)>>2]|0}else f=b;c[a>>2]=f;a=a+4|0}return d|0}function pz(a,b){a=a|0;b=b|0;return b<<24>>24|0}function qz(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;b=f;f=d;while(1){if((f|0)==(e|0))break;c[b>>2]=a[f>>0];b=b+4|0;f=f+1|0}return e|0}function rz(a,b,c){a=a|0;b=b|0;c=c|0;return (b>>>0<128?b&255:c)|0}function sz(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;b=(e-d|0)>>>2;h=g;g=d;while(1){if((g|0)==(e|0))break;i=c[g>>2]|0;a[h>>0]=i>>>0<128?i&255:f;h=h+1|0;g=g+4|0}return d+(b<<2)|0}function tz(a){a=a|0;Cs(a);tB(a);return}function uz(a){a=a|0;Cs(a);tB(a);return}function vz(a){a=a|0;Cs(a);tB(a);return}function wz(a){a=a|0;c[a>>2]=16988;return}function xz(a){a=a|0;c[a>>2]=17024;return}function yz(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;c[b+4>>2]=f+-1;c[b>>2]=16580;f=b+8|0;c[f>>2]=d;a[b+12>>0]=e&1;if(!d)c[f>>2]=Sy()|0;return}function zz(a){a=a|0;return}function Az(a){a=a|0;ya(37024,37047,304,37229)}function Bz(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;c[a+4>>2]=b+-1;c[a>>2]=16560;b=a+8|0;Cz(b,28);d=a+144|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;HB(d,34916,kr(34916)|0);d=a+12|0;e=c[d>>2]|0;f=c[b>>2]|0;g=f;h=e;while(1){if((h|0)==(g|0))break;i=h+-4|0;c[d>>2]=i;h=i}Dz(b,e-f>>2);Ez();Fz(a,38384);Gz();Hz(a,38392);Iz();Jz(a,38400);Kz();Lz(a,38416);Mz();Nz(a,38424);Oz();Pz(a,38432);Qz();Rz(a,38448);Sz();Tz(a,38456);Uz();Vz(a,38464);Wz();Xz(a,38488);Yz();Zz(a,38520);_z();$z(a,38528);aA();bA(a,38536);cA();dA(a,38544);eA();fA(a,38552);gA();hA(a,38560);iA();jA(a,38568);kA();lA(a,38576);mA();nA(a,38584);oA();pA(a,38592);qA();rA(a,38600);sA();tA(a,38608);uA();vA(a,38616);wA();xA(a,38632);yA();zA(a,38648);AA();BA(a,38664);CA();DA(a,38680);EA();FA(a,38688);return}function Cz(b,d){b=b|0;d=d|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;a[b+128>>0]=0;if(d|0){XA(b,d);JA(b,d)}return}function Dz(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;e=d;RA(a,d,d+((c[a+8>>2]|0)-e>>2<<2)|0,d+(b<<2)|0,d+((c[a+4>>2]|0)-e>>2<<2)|0);return}function Ez(){c[9597]=0;c[9596]=14224;return}function Fz(a,b){a=a|0;b=b|0;GA(a,b,at(40900)|0);return}function Gz(){c[9599]=0;c[9598]=14256;return}function Hz(a,b){a=a|0;b=b|0;GA(a,b,at(40908)|0);return}function Iz(){yz(38400,0,0,1);return}function Jz(a,b){a=a|0;b=b|0;GA(a,b,at(40916)|0);return}function Kz(){c[9605]=0;c[9604]=16776;return}function Lz(a,b){a=a|0;b=b|0;GA(a,b,at(40948)|0);return}function Mz(){c[9607]=0;c[9606]=16844;return}function Nz(a,b){a=a|0;b=b|0;GA(a,b,at(42708)|0);return}function Oz(){WA(38432,1);return}function Pz(a,b){a=a|0;b=b|0;GA(a,b,at(42716)|0);return}function Qz(){c[9613]=0;c[9612]=16892;return}function Rz(a,b){a=a|0;b=b|0;GA(a,b,at(42724)|0);return}function Sz(){c[9615]=0;c[9614]=16940;return}function Tz(a,b){a=a|0;b=b|0;GA(a,b,at(42732)|0);return}function Uz(){VA(38464,1);return}function Vz(a,b){a=a|0;b=b|0;GA(a,b,at(40932)|0);return}function Wz(){UA(38488,1);return}function Xz(a,b){a=a|0;b=b|0;GA(a,b,at(40956)|0);return}function Yz(){c[9631]=0;c[9630]=14288;return}function Zz(a,b){a=a|0;b=b|0;GA(a,b,at(40940)|0);return}function _z(){c[9633]=0;c[9632]=14352;return}function $z(a,b){a=a|0;b=b|0;GA(a,b,at(40964)|0);return}function aA(){c[9635]=0;c[9634]=14416;return}function bA(a,b){a=a|0;b=b|0;GA(a,b,at(40972)|0);return}function cA(){c[9637]=0;c[9636]=14468;return}function dA(a,b){a=a|0;b=b|0;GA(a,b,at(40980)|0);return}function eA(){c[9639]=0;c[9638]=16016;return}function fA(a,b){a=a|0;b=b|0;GA(a,b,at(42628)|0);return}function gA(){c[9641]=0;c[9640]=16072;return}function hA(a,b){a=a|0;b=b|0;GA(a,b,at(42636)|0);return}function iA(){c[9643]=0;c[9642]=16128;return}function jA(a,b){a=a|0;b=b|0;GA(a,b,at(42644)|0);return}function kA(){c[9645]=0;c[9644]=16184;return}function lA(a,b){a=a|0;b=b|0;GA(a,b,at(42652)|0);return}function mA(){c[9647]=0;c[9646]=16240;return}function nA(a,b){a=a|0;b=b|0;GA(a,b,at(42660)|0);return}function oA(){c[9649]=0;c[9648]=16268;return}function pA(a,b){a=a|0;b=b|0;GA(a,b,at(42668)|0);return}function qA(){c[9651]=0;c[9650]=16296;return}function rA(a,b){a=a|0;b=b|0;GA(a,b,at(42676)|0);return}function sA(){c[9653]=0;c[9652]=16324;return}function tA(a,b){a=a|0;b=b|0;GA(a,b,at(42684)|0);return}function uA(){c[9655]=0;c[9654]=16756;wz(38624);c[9654]=14520;c[9656]=14568;return}function vA(a,b){a=a|0;b=b|0;GA(a,b,at(41792)|0);return}function wA(){c[9659]=0;c[9658]=16756;xz(38640);c[9658]=14604;c[9660]=14652;return}function xA(a,b){a=a|0;b=b|0;GA(a,b,at(42604)|0);return}function yA(){c[9663]=0;c[9662]=16756;c[9664]=_s()|0;c[9662]=15968;return}function zA(a,b){a=a|0;b=b|0;GA(a,b,at(42612)|0);return}function AA(){c[9667]=0;c[9666]=16756;c[9668]=_s()|0;c[9666]=15992;return}function BA(a,b){a=a|0;b=b|0;GA(a,b,at(42620)|0);return}function CA(){c[9671]=0;c[9670]=16352;return}function DA(a,b){a=a|0;b=b|0;GA(a,b,at(42692)|0);return}function EA(){c[9673]=0;c[9672]=16384;return}function FA(a,b){a=a|0;b=b|0;GA(a,b,at(42700)|0);return}function GA(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;jB(b);e=a+8|0;f=c[e>>2]|0;if((c[a+12>>2]|0)-f>>2>>>0>d>>>0){g=e;h=f}else{HA(e,d+1|0);g=e;h=c[e>>2]|0}e=c[h+(d<<2)>>2]|0;if(e|0)lB(e)|0;c[(c[g>>2]|0)+(d<<2)>>2]=b;return}function HA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=e-f>>2;h=f;if(g>>>0>=b>>>0){if(g>>>0>b>>>0){f=h+(b<<2)|0;h=e;while(1){if((h|0)==(f|0))break;e=h+-4|0;c[d>>2]=e;h=e}Dz(a,g)}}else IA(a,b-g|0);return}function IA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=l;l=l+32|0;e=d;f=a+8|0;g=a+4|0;h=c[g>>2]|0;if((c[f>>2]|0)-h>>2>>>0<b>>>0){i=(h-(c[a>>2]|0)>>2)+b|0;h=KA(a)|0;if(h>>>0<i>>>0)Az(a);j=c[a>>2]|0;k=(c[f>>2]|0)-j|0;f=k>>1;LA(e,k>>2>>>0<h>>>1>>>0?(f>>>0<i>>>0?i:f):h,(c[g>>2]|0)-j>>2,a+16|0);MA(e,b);NA(a,e);OA(e)}else JA(a,b);l=d;return}function JA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+16|0;e=d;f=a+4|0;g=b;do{SA(e,a,1);c[c[f>>2]>>2]=0;c[f>>2]=(c[f>>2]|0)+4;g=g+-1|0;TA(e)}while((g|0)!=0);l=d;return}function KA(a){a=a|0;return 1073741823}function LA(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;c[b+12>>2]=0;c[b+16>>2]=f;do if(d){g=f+112|0;if(d>>>0<29&(a[g>>0]|0)==0){a[g>>0]=1;h=f;break}else{h=rB(d<<2)|0;break}}else h=0;while(0);c[b>>2]=h;f=h+(e<<2)|0;c[b+8>>2]=f;c[b+4>>2]=f;c[b+12>>2]=h+(d<<2);return}function MA(a,b){a=a|0;b=b|0;var d=0;d=a+8|0;a=b;b=c[d>>2]|0;do{c[b>>2]=0;b=(c[d>>2]|0)+4|0;c[d>>2]=b;a=a+-1|0}while((a|0)!=0);return}function NA(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;PA(a);d=c[a>>2]|0;e=a+4|0;f=b+4|0;g=(c[e>>2]|0)-d|0;h=(c[f>>2]|0)+(0-(g>>2)<<2)|0;c[f>>2]=h;if((g|0)>0){MD(h|0,d|0,g|0)|0;i=f;j=c[f>>2]|0}else{i=f;j=h}h=c[a>>2]|0;c[a>>2]=j;c[i>>2]=h;h=b+8|0;j=c[e>>2]|0;c[e>>2]=c[h>>2];c[h>>2]=j;j=a+8|0;h=b+12|0;f=c[j>>2]|0;c[j>>2]=c[h>>2];c[h>>2]=f;c[b>>2]=c[i>>2];QA(a,(c[e>>2]|0)-(c[a>>2]|0)>>2);return}function OA(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[b+4>>2]|0;e=b+8|0;f=c[e>>2]|0;while(1){if((f|0)==(d|0))break;g=f+-4|0;c[e>>2]=g;f=g}f=c[b>>2]|0;do if(f|0){e=c[b+16>>2]|0;if((e|0)==(f|0)){a[e+112>>0]=0;break}else{tB(f);break}}while(0);return}function PA(a){a=a|0;var b=0,d=0,e=0;b=c[a>>2]|0;d=b;e=b+((c[a+8>>2]|0)-d>>2<<2)|0;RA(a,b,e,b+((c[a+4>>2]|0)-d>>2<<2)|0,e);return}function QA(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a>>2]|0;e=d+((c[a+8>>2]|0)-d>>2<<2)|0;RA(a,d,e,e,d+(b<<2)|0);return}function RA(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return}function SA(a,b,c){a=a|0;b=b|0;c=c|0;return}function TA(a){a=a|0;return}function UA(a,b){a=a|0;b=b|0;c[a+4>>2]=b+-1;c[a>>2]=16672;c[a+8>>2]=46;c[a+12>>2]=44;b=a+16|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;c[b+(a<<2)>>2]=0;a=a+1|0}return}function VA(b,d){b=b|0;d=d|0;c[b+4>>2]=d+-1;c[b>>2]=16632;a[b+8>>0]=46;a[b+9>>0]=44;d=b+12|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;b=0;while(1){if((b|0)==3)break;c[d+(b<<2)>>2]=0;b=b+1|0}return}function WA(a,b){a=a|0;b=b|0;c[a+4>>2]=b+-1;c[a>>2]=16512;c[a+8>>2]=_s()|0;return}function XA(b,d){b=b|0;d=d|0;var e=0,f=0;if((KA(b)|0)>>>0<d>>>0)Az(b);e=b+128|0;if(d>>>0<29&(a[e>>0]|0)==0){a[e>>0]=1;f=b+16|0}else f=rB(d<<2)|0;c[b+4>>2]=f;c[b>>2]=f;c[b+8>>2]=f+(d<<2);QA(b,0);return}function YA(){if((a[38696]|0)==0?xD(38696)|0:0){ZA()|0;c[10686]=42740}return c[10686]|0}function ZA(){_A();c[10685]=38704;return 42740}function _A(){Bz(38704,1);return}function $A(){aB(42748,YA()|0);return 42748}function aB(a,b){a=a|0;b=b|0;var d=0;d=c[b>>2]|0;c[a>>2]=d;jB(d);return}function bB(){if((a[38864]|0)==0?xD(38864)|0:0){$A()|0;c[10688]=42748}return c[10688]|0}function cB(a){a=a|0;var b=0;b=c[(bB()|0)>>2]|0;c[a>>2]=b;jB(b);return}function dB(a,b){a=a|0;b=b|0;jB(c[b>>2]|0);lB(c[a>>2]|0)|0;c[a>>2]=c[b>>2];return a|0}function eB(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;return fB(d,at(b)|0)|0}function fB(a,b){a=a|0;b=b|0;var d=0,e=0;d=c[a+8>>2]|0;if((c[a+12>>2]|0)-d>>2>>>0>b>>>0)e=(c[d+(b<<2)>>2]|0)!=0;else e=0;return e|0}function gB(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)d=0;else d=Eo(a,b,c)|0;return d|0}function hB(a){a=a|0;return}function iB(a,b){a=a|0;b=b|0;return 0}function jB(a){a=a|0;kB(a+4|0);return}function kB(a){a=a|0;c[a>>2]=(c[a>>2]|0)+1;return}function lB(a){a=a|0;var b=0;if((mB(a+4|0)|0)==-1){ob[c[(c[a>>2]|0)+8>>2]&511](a);b=1}else b=0;return b|0}function mB(a){a=a|0;var b=0;b=c[a>>2]|0;c[a>>2]=b+-1;return b+-1|0}function nB(a){a=a|0;jB(a);return}function oB(a){a=a|0;if(lB(a)|0)pB(a);return}function pB(a){a=a|0;if((mB(a+8|0)|0)==-1)ob[c[(c[a>>2]|0)+16>>2]&511](a);return}function qB(a,b,d){a=a|0;b=b|0;d=d|0;ID(42756)|0;while(1){if((c[a>>2]|0)!=1)break;ta(42784,42756)|0}if(!(c[a>>2]|0)){c[a>>2]=1;WD(42756)|0;ob[d&511](b);ID(42756)|0;c[a>>2]=-1;WD(42756)|0;LD(42784)|0}else WD(42756)|0;return}function rB(a){a=a|0;var b=0,c=0;b=(a|0)==0?1:a;while(1){a=Pp(b)|0;if(a|0){c=a;break}a=BD()|0;if(!a){c=0;break}vb[a&3]()}return c|0}function sB(a){a=a|0;return rB(a)|0}function tB(a){a=a|0;Qp(a);return}function uB(a){a=a|0;tB(a);return}function vB(){return}function wB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=yn(b)|0;e=rB(d+13|0)|0;c[e>>2]=d;c[e+4>>2]=d;c[e+8>>2]=0;f=xB(e)|0;MD(f|0,b|0,d+1|0)|0;c[a>>2]=f;return}function xB(a){a=a|0;return a+12|0}function yB(a,b){a=a|0;b=b|0;c[a>>2]=17188;wB(a+4|0,b);return}function zB(a,b){a=a|0;b=b|0;c[a>>2]=c[b>>2];if(AB(a)|0){b=(BB(c[a>>2]|0)|0)+8|0;c[b>>2]=(c[b>>2]|0)+1}return}function AB(a){a=a|0;return 1}function BB(a){a=a|0;return a+-12|0}function CB(b,d){b=b|0;d=d|0;c[b>>2]=17208;wB(b+4|0,(a[d+11>>0]|0)<0?c[d>>2]|0:d);return}function DB(a,b){a=a|0;b=b|0;c[a>>2]=17208;zB(a+4|0,b+4|0);return}function EB(a){a=a|0;ya(37151,37180,1183,37229)}function FB(a){a=a|0;ya(37250,37180,1194,37279)}function GB(b,d){b=b|0;d=d|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;if((a[d+11>>0]|0)<0)HB(b,c[d>>2]|0,c[d+4>>2]|0);else{c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2]}return}function HB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;g=f;if(e>>>0<=4294967279)if(e>>>0<11){a[b+11>>0]=e;h=b}else i=5;else{EB(b);i=5}if((i|0)==5){i=e+16&-16;j=rB(i)|0;c[b>>2]=j;c[b+8>>2]=i|-2147483648;c[b+4>>2]=e;h=j}oq(h,d,e)|0;a[g>>0]=0;Bs(h+e|0,g);l=f;return}function IB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=l;l=l+16|0;g=f;if(d>>>0<=4294967279)if(d>>>0<11){a[b+11>>0]=d;h=b}else i=5;else{EB(b);i=5}if((i|0)==5){i=d+16&-16;j=rB(i)|0;c[b>>2]=j;c[b+8>>2]=i|-2147483648;c[b+4>>2]=d;h=j}JB(h,d,e)|0;a[g>>0]=0;Bs(h+d|0,g);l=f;return}function JB(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)HD(a|0,(nq(c)|0)&255|0,b|0)|0;return a|0}function KB(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;g=d+11|0;h=a[g>>0]|0;i=h<<24>>24<0?c[d+4>>2]|0:h&255;if(i>>>0<e>>>0){FB(b);j=a[g>>0]|0}else j=h;h=i-e|0;HB(b,(j<<24>>24<0?c[d>>2]|0:d)+e|0,h>>>0<f>>>0?h:f);return}function LB(b){b=b|0;if((a[b+11>>0]|0)<0)tB(c[b>>2]|0);return}function MB(b,d){b=b|0;d=d|0;var e=0,f=0;if((b|0)!=(d|0)){e=a[d+11>>0]|0;f=e<<24>>24<0;NB(b,f?c[d>>2]|0:d,f?c[d+4>>2]|0:e&255)|0}return b|0}function NB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;f=l;l=l+16|0;g=f;h=b+11|0;i=a[h>>0]|0;j=i<<24>>24<0;if(j)k=(c[b+8>>2]&2147483647)+-1|0;else k=10;do if(k>>>0>=e>>>0){if(j)m=c[b>>2]|0;else m=b;OB(m,d,e)|0;a[g>>0]=0;Bs(m+e|0,g);if((a[h>>0]|0)<0){c[b+4>>2]=e;break}else{a[h>>0]=e;break}}else{if(j)n=c[b+4>>2]|0;else n=i&255;PB(b,k,e-k|0,n,0,n,e,d)}while(0);l=f;return b|0}function OB(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)UD(a|0,b|0,c|0)|0;return a|0}function PB(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0;k=l;l=l+16|0;m=k;if((-18-d|0)>>>0<e>>>0)EB(b);if((a[b+11>>0]|0)<0)n=c[b>>2]|0;else n=b;if(d>>>0<2147483623){o=e+d|0;e=d<<1;p=o>>>0<e>>>0?e:o;q=p>>>0<11?11:p+16&-16}else q=-17;p=rB(q)|0;if(g|0)oq(p,n,g)|0;if(i|0)oq(p+g|0,j,i)|0;j=f-h|0;f=j-g|0;if(f|0)oq(p+g+i|0,n+g+h|0,f)|0;if((d|0)!=10)tB(n);c[b>>2]=p;c[b+8>>2]=q|-2147483648;q=j+i|0;c[b+4>>2]=q;a[m>>0]=0;Bs(p+q|0,m);l=k;return} function si(b,d){b=b|0;d=d|0;var e=0,f=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0,O=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0.0,$=0.0,aa=0.0,ba=0.0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0.0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0.0,jb=0.0,kb=0,lb=0.0,mb=0.0,nb=0,ob=0,pb=0,qb=0,rb=0.0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=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,cc=0,dc=0,ec=0,fc=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,yc=0,zc=0;e=l;l=l+18880|0;f=e+144|0;i=e+96|0;k=e+48|0;m=e+18760|0;n=e+18748|0;o=e+18688|0;p=e+18808|0;q=e+18796|0;r=e+18676|0;s=e+18784|0;t=e+18772|0;u=e+18664|0;v=e+18616|0;w=e;x=e+17592|0;y=e+17544|0;z=e+17496|0;A=e+13160|0;C=e+8824|0;F=e+4488|0;G=e+4480|0;H=e+18744|0;I=e+18740|0;J=e+18736|0;K=e+18724|0;M=e+18712|0;O=e+18700|0;Q=b+4|0;c[Q>>2]=0;R=b+8|0;c[R>>2]=0;S=b+4|0;c[b>>2]=S;T=d+12|0;U=d+16|0;if((c[U>>2]|0)==(c[T>>2]|0)){l=e;return}V=d+224|0;W=(c[d+228>>2]|0)-(c[V>>2]|0)|0;X=c[d+36>>2]|0;Y=c[d+172>>2]|0;Z=c[d+160>>2]|0;_=+g[X>>2];$=+g[X+4>>2];aa=+g[X+8>>2];X=(W|0)/12|0;ba=+L(+(_*+g[Z>>2]+0.0+$*+g[Z+4>>2]+aa*+g[Z+8>>2]),+(_*+g[Y>>2]+0.0+$*+g[Y+4>>2]+aa*+g[Y+8>>2]));aa=ba/6.283185307179586*3.0;Y=~~+B(+aa);h[f>>3]=+Ca(+(ba/75.39822368615503))*440.0;zn(e+18820|0,25515,f)|0;c[m>>2]=0;Z=m+4|0;c[Z>>2]=0;c[m+8>>2]=0;ca=c[U>>2]|0;da=c[T>>2]|0;T=ca-da|0;ea=(T|0)/48|0;c[n>>2]=0;fa=n+4|0;c[fa>>2]=0;c[n+8>>2]=0;ga=da;if((ga|0)==(ca|0)){ha=0;ia=0}else{ca=i+4|0;da=i+8|0;ja=i+12|0;ka=i+16|0;la=i+20|0;ma=i+24|0;na=i+36|0;oa=k+4|0;pa=k+8|0;qa=k+12|0;ra=k+16|0;sa=i+4|0;ta=n+8|0;ua=k+24|0;va=k+28|0;wa=k+32|0;xa=d+124|0;ya=i+28|0;za=d+148|0;Aa=r+4|0;Ba=r+8|0;Da=r+8|0;Ea=f+4|0;Fa=f+8|0;Ga=d+60|0;Ha=m+8|0;Ia=k+36|0;Ja=k+24|0;Ka=i+24|0;La=o+4|0;Ma=k+20|0;Na=s+4|0;Oa=t+4|0;Pa=p+4|0;Qa=q+4|0;Ra=d+72|0;Sa=Y;Ta=0;ba=aa-+(Y|0);Y=ga;while(1){a[i>>0]=a[Y>>0]|0;c[ca>>2]=c[Y+4>>2];c[da>>2]=c[Y+8>>2];a[ja>>0]=a[Y+12>>0]|0;c[ka>>2]=c[Y+16>>2];c[la>>2]=c[Y+20>>2];Xd(ma,Y+24|0);GB(na,Y+36|0);a[qa>>0]=0;c[ra>>2]=0;c[ra+4>>2]=0;c[ra+8>>2]=0;c[ra+12>>2]=0;c[ra+16>>2]=0;c[ra+20>>2]=0;c[ra+24>>2]=0;c[ra+28>>2]=0;a[k>>0]=1;ga=c[sa>>2]|0;c[oa>>2]=ga;Ua=c[da>>2]|0;c[pa>>2]=Ua;Va=c[fa>>2]|0;if((Va|0)==(c[ta>>2]|0)){ui(n,sa);Wa=c[va>>2]|0;Xa=c[wa>>2]|0;g[f>>2]=0.0;if(Wa>>>0<Xa>>>0){c[Wa>>2]=0;Ya=Wa+4|0;c[va>>2]=Ya;Za=Ya;_a=Xa}else $a=10}else{c[Va>>2]=ga;c[Va+4>>2]=Ua;c[fa>>2]=Va+8;g[f>>2]=0.0;$a=10}if(($a|0)==10){$a=0;Zd(ua,f);Za=c[va>>2]|0;_a=c[wa>>2]|0}g[f>>2]=0.0;if(Za>>>0<_a>>>0){c[Za>>2]=0;c[va>>2]=Za+4}else Zd(ua,f);if(!(a[xa>>0]|0)){ab=Sa;bb=ba}else{aa=+g[(c[Ra>>2]|0)+(Ta<<2)>>2]*3.0;Va=~~+B(+aa);ab=Va;bb=aa-+(Va|0)}Va=c[ya>>2]|0;Ua=c[ma>>2]|0;if(((Va-Ua>>2)+-3|0)>2){aa=1.0-bb;ga=2;Xa=Va;Va=Ua;while(1){Ua=Va;Ya=ga+ab|0;$=aa*+g[Ua+(Ya<<2)>>2]+bb*+g[Ua+(Ya+1<<2)>>2];g[f>>2]=$;Ya=c[va>>2]|0;if((Ya|0)==(c[wa>>2]|0)){Pe(ua,f);cb=c[ma>>2]|0;db=c[ya>>2]|0}else{g[Ya>>2]=$;c[va>>2]=Ya+4;cb=Va;db=Xa}ga=ga+1|0;if((ga|0)>=((db-cb>>2)+-3|0))break;else{Xa=db;Va=cb}}}g[f>>2]=0.0;Va=c[va>>2]|0;Xa=c[wa>>2]|0;if(Va>>>0<Xa>>>0){c[Va>>2]=0;ga=Va+4|0;c[va>>2]=ga;eb=ga;fb=Xa}else{Zd(ua,f);eb=c[va>>2]|0;fb=c[wa>>2]|0}g[f>>2]=0.0;if(eb>>>0<fb>>>0){c[eb>>2]=0;Xa=eb+4|0;c[va>>2]=Xa;gb=Xa;hb=fb}else{Zd(ua,f);gb=c[va>>2]|0;hb=c[wa>>2]|0}g[f>>2]=0.0;if(gb>>>0<hb>>>0){c[gb>>2]=0;c[va>>2]=gb+4}else Zd(ua,f);Xd(p,ua);Xd(q,za);Ne(o,p,q);Xa=c[q>>2]|0;if(Xa|0){ga=c[Qa>>2]|0;if((ga|0)!=(Xa|0))c[Qa>>2]=ga+(~((ga+-4-Xa|0)>>>2)<<2);tB(Xa)}Xa=c[p>>2]|0;if(Xa|0){ga=c[Pa>>2]|0;if((ga|0)!=(Xa|0))c[Pa>>2]=ga+(~((ga+-4-Xa|0)>>>2)<<2);tB(Xa)}c[r>>2]=0;c[Aa>>2]=0;c[Ba>>2]=0;Xa=0;ga=0;Va=0;Ya=0;while(1){aa=+g[(c[ua>>2]|0)+(Xa<<2)>>2]-+g[(c[o>>2]|0)+(Xa<<2)>>2];$=aa*aa;g[f>>2]=$;if(ga>>>0<Va>>>0){g[Ya>>2]=$;c[Aa>>2]=ga+4}else Zd(r,f);Ua=Xa+1|0;if((Ua|0)>=256)break;Wa=c[Aa>>2]|0;Xa=Ua;ga=Wa;Va=c[Da>>2]|0;Ya=Wa}Xd(s,r);Xd(t,za);Ne(f,s,t);Ya=c[r>>2]|0;if(Ya|0){Va=c[Aa>>2]|0;if((Va|0)!=(Ya|0))c[Aa>>2]=Va+(~((Va+-4-Ya|0)>>>2)<<2);tB(Ya);c[Da>>2]=0;c[Aa>>2]=0;c[r>>2]=0}c[r>>2]=c[f>>2];c[Aa>>2]=c[Ea>>2];c[Da>>2]=c[Fa>>2];c[Fa>>2]=0;c[Ea>>2]=0;c[f>>2]=0;Ya=c[t>>2]|0;if(Ya|0){Va=c[Oa>>2]|0;if((Va|0)!=(Ya|0))c[Oa>>2]=Va+(~((Va+-4-Ya|0)>>>2)<<2);tB(Ya)}Ya=c[s>>2]|0;if(Ya|0){Va=c[Na>>2]|0;if((Va|0)!=(Ya|0))c[Na>>2]=Va+(~((Va+-4-Ya|0)>>>2)<<2);tB(Ya)}Ya=0;do{Va=(c[r>>2]|0)+(Ya<<2)|0;$=+D(+(+g[Va>>2]));g[Va>>2]=$;Va=(c[ua>>2]|0)+(Ya<<2)|0;aa=+g[Va>>2];if($>0.0){_=aa-+g[(c[o>>2]|0)+(Ya<<2)>>2];if(_>0.0)ib=_/+E(+$,+(+g[Ga>>2]));else ib=0.0;g[Va>>2]=ib;jb=ib}else jb=aa;if(jb<0.0){Va=xe(40212,25542,41)|0;qr(f,Va+(c[(c[Va>>2]|0)+-12>>2]|0)|0);ga=Xs(f,40916)|0;Xa=zb[c[(c[ga>>2]|0)+28>>2]&63](ga,10)|0;Ys(f);Hr(Va,Xa)|0;vr(Va)|0}Ya=Ya+1|0}while((Ya|0)<256);Ya=c[Z>>2]|0;if((Ya|0)==(c[Ha>>2]|0))Qh(m,k);else{a[Ya>>0]=a[k>>0]|0;c[Ya+4>>2]=c[oa>>2];c[Ya+8>>2]=c[pa>>2];a[Ya+12>>0]=a[qa>>0]|0;c[Ya+16>>2]=c[ra>>2];c[Ya+20>>2]=c[Ma>>2];Xd(Ya+24|0,ua);GB(Ya+36|0,Ia);c[Z>>2]=(c[Z>>2]|0)+48}Ta=Ta+1|0;Ya=c[r>>2]|0;if(Ya|0){Va=c[Aa>>2]|0;if((Va|0)!=(Ya|0))c[Aa>>2]=Va+(~((Va+-4-Ya|0)>>>2)<<2);tB(Ya)}Ya=c[o>>2]|0;if(Ya|0){Va=c[La>>2]|0;if((Va|0)!=(Ya|0))c[La>>2]=Va+(~((Va+-4-Ya|0)>>>2)<<2);tB(Ya)}LB(Ia);Ya=c[Ja>>2]|0;if(Ya|0){Va=c[va>>2]|0;if((Va|0)!=(Ya|0))c[va>>2]=Va+(~((Va+-4-Ya|0)>>>2)<<2);tB(Ya)}LB(na);Ya=c[Ka>>2]|0;if(Ya|0){Va=c[ya>>2]|0;if((Va|0)!=(Ya|0))c[ya>>2]=Va+(~((Va+-4-Ya|0)>>>2)<<2);tB(Ya)}Y=Y+48|0;if((Y|0)==(c[U>>2]|0))break;else{Sa=ab;ba=bb}}ha=c[m>>2]|0;ia=c[Z>>2]|0}ab=d+68|0;c[o>>2]=0;Sa=o+4|0;c[Sa>>2]=0;c[o+8>>2]=0;g[f>>2]=0.0;ti(r,(ia-ha|0)/48|0,f);c[u>>2]=0;ha=u+4|0;c[ha>>2]=0;c[u+8>>2]=0;ia=c[m>>2]|0;if((ia|0)==(c[Z>>2]|0))kb=X+-1|0;else{U=v+4|0;Y=v+8|0;ya=v+12|0;Ka=v+16|0;na=v+20|0;va=v+24|0;Ja=v+36|0;Ia=w+4|0;La=w+8|0;Aa=w+12|0;Ta=w+16|0;ua=y+4|0;Ma=y+8|0;ra=y+8|0;qa=i+4|0;pa=i+8|0;oa=i+8|0;Ha=d+120|0;Ga=w+24|0;Na=d+128|0;s=z+4|0;Oa=u+8|0;t=i+4|0;Ea=i+8|0;Fa=(W|0)>0;Da=o+8|0;za=w+36|0;Ba=w+24|0;Pa=v+24|0;p=v+28|0;Qa=w+28|0;q=X+-1|0;gb=d+200|0;hb=i+8|0;wa=w+20|0;fb=0;eb=ia;while(1){a[v>>0]=a[eb>>0]|0;c[U>>2]=c[eb+4>>2];c[Y>>2]=c[eb+8>>2];a[ya>>0]=a[eb+12>>0]|0;c[Ka>>2]=c[eb+16>>2];c[na>>2]=c[eb+20>>2];Xd(va,eb+24|0);GB(Ja,eb+36|0);a[Aa>>0]=0;c[Ta>>2]=0;c[Ta+4>>2]=0;c[Ta+8>>2]=0;c[Ta+12>>2]=0;c[Ta+16>>2]=0;c[Ta+20>>2]=0;c[Ta+24>>2]=0;c[Ta+28>>2]=0;a[w>>0]=1;c[Ia>>2]=c[U>>2];c[La>>2]=c[Y>>2];ia=c[va>>2]|0;cb=0;db=0;do{bb=+g[ia+(cb<<2)>>2];g[x+(cb<<2)>>2]=bb;db=db|bb>0.0;cb=cb+1|0}while((cb|0)!=256);c[y>>2]=0;c[ua>>2]=0;c[Ma>>2]=0;cb=rB(48)|0;c[y>>2]=cb;ia=cb+48|0;c[ra>>2]=ia;ma=cb;Ra=ma+48|0;do{c[ma>>2]=0;ma=ma+4|0}while((ma|0)<(Ra|0));c[ua>>2]=ia;xa=rB(48)|0;ma=xa;Ra=ma+48|0;do{c[ma>>2]=0;ma=ma+4|0}while((ma|0)<(Ra|0));ma=xa+48|0;a:do if(db){if(+g[ab>>2]==0.0){Ra=3;ia=0;while(1){bb=+g[x+(Ra+-1<<2)>>2]*.5+0.0+ +g[x+(Ra<<2)>>2]+ +g[x+(Ra+1<<2)>>2]*.5;Za=(ia|0)%12|0;_a=cb+(Za<<2)|0;g[_a>>2]=bb*+g[7236+(ia<<2)>>2]+ +g[_a>>2];_a=xa+(Za<<2)|0;g[_a>>2]=+g[_a>>2]+bb*+g[7572+(ia<<2)>>2];ia=ia+1|0;if((ia|0)==84)break a;else Ra=Ra+3|0}}Ra=1;do{g[f+(Ra<<2)>>2]=1.0;Ra=Ra+1|0}while((Ra|0)!=1084);c[i>>2]=0;c[qa>>2]=0;c[pa>>2]=0;c[k>>2]=0;Ra=3;ia=0;do{do if(+g[x+(Ra+-1<<2)>>2]+0.0+ +g[x+(Ra<<2)>>2]+ +g[x+(Ra+1<<2)>>2]>0.0){_a=c[qa>>2]|0;if((_a|0)==(c[oa>>2]|0)){Jh(i,k);break}else{c[_a>>2]=ia;c[qa>>2]=_a+4;break}}while(0);ia=(c[k>>2]|0)+1|0;c[k>>2]=ia;Ra=Ra+3|0}while((Ra|0)<255);Ra=c[i>>2]|0;ia=(c[qa>>2]|0)-Ra|0;_a=ia<<6;Za=Ra;Ra=sB(_a>>>0>1073741823?-1:_a<<2)|0;_a=ia>>2;if((ia|0)>0){ia=c[Ha>>2]|0;sa=0;do{ta=c[Za+(sa<<2)>>2]<<8;da=sa<<8;la=0;do{c[Ra+(la+da<<2)>>2]=c[ia+(ta+la<<2)>>2];la=la+1|0}while((la|0)!=256);sa=sa+1|0}while((sa|0)<(_a|0))}Zm(Ra,256,256,_a,x,f,z,A,C,F,G)|0;uB(Ra);sa=c[qa>>2]|0;ia=c[i>>2]|0;Za=sa-ia|0;la=ia;ta=sa;if((Za|0)>0){sa=c[y>>2]|0;da=Za>>>2;Za=0;do{ka=f+(Za<<2)|0;ja=c[la+(Za<<2)>>2]|0;ca=(ja|0)%12|0;Ya=sa+(ca<<2)|0;g[Ya>>2]=+g[ka>>2]*+g[7236+(ja<<2)>>2]+ +g[Ya>>2];Ya=xa+(ca<<2)|0;g[Ya>>2]=+g[Ya>>2]+ +g[ka>>2]*+g[7572+(ja<<2)>>2];Za=Za+1|0}while((Za|0)<(da|0))}da=ia;if(ia|0){if((ta|0)!=(la|0))c[qa>>2]=ta+(~((ta+-4-ia|0)>>>2)<<2);tB(da)}}while(0);Xd(z,y);c[H>>2]=c[y>>2];c[I>>2]=xa;c[J>>2]=ma;c[k>>2]=c[H>>2];c[i>>2]=c[I>>2];c[f>>2]=c[J>>2];bi(y,k,i,f)|0;ai(Ga,c[y>>2]|0,c[ua>>2]|0);bb=+g[Na>>2];if(bb>0.0){cb=rB(12)|0;c[cb>>2]=0;c[cb+4>>2]=0;c[cb+8>>2]=0;switch(~~bb|0){case 3:{db=c[y>>2]|0;da=c[ua>>2]|0;Za=cb+8|0;if((db|0)==(da|0))lb=0.0;else{sa=db;bb=0.0;while(1){ba=+g[sa>>2];jb=bb+ba*ba;g[Za>>2]=jb;sa=sa+4|0;if((sa|0)==(da|0)){lb=jb;break}else bb=jb}}bb=+D(+lb);g[Za>>2]=bb;mb=bb;$a=135;break}case 1:{da=c[z>>2]|0;sa=c[s>>2]|0;c[i>>2]=da;if((da|0)==(sa|0))nb=da;else{da=i;db=f;b:while(1){c[db>>2]=c[da>>2];ob=c[i>>2]|0;Ra=c[f>>2]|0;do{Ra=Ra+4|0;if((Ra|0)==(sa|0))break b}while(!(+g[ob>>2]<+g[Ra>>2]));c[f>>2]=Ra;da=f;db=i}nb=ob}db=c[nb>>2]|0;c[cb>>2]=db;c[i>>2]=xa;bb=(c[j>>2]=db,+g[j>>2]);db=i;da=f;c:while(1){c[da>>2]=c[db>>2];pb=c[i>>2]|0;sa=c[f>>2]|0;do{sa=sa+4|0;if((sa|0)==(ma|0))break c}while(!(+g[pb>>2]<+g[sa>>2]));c[f>>2]=sa;db=f;da=i}da=c[pb>>2]|0;db=cb+4|0;c[db>>2]=da;ma=c[(bb<(c[j>>2]=da,+g[j>>2])?db:cb)>>2]|0;c[cb+8>>2]=ma;mb=(c[j>>2]=ma,+g[j>>2]);$a=135;break}case 2:{ma=c[y>>2]|0;db=c[ua>>2]|0;if((ma|0)!=(db|0)){da=cb+8|0;Ra=ma;jb=0.0;while(1){ba=+g[Ra>>2]+jb;g[da>>2]=ba;Ra=Ra+4|0;if((Ra|0)==(db|0)){mb=ba;$a=135;break}else jb=ba}}break}default:{}}if(((($a|0)==135?($a=0,db=cb+8|0,mb>0.0):0)?(Ra=(c[ua>>2]|0)-(c[y>>2]|0)|0,(Ra|0)>0):0)?(da=c[Ga>>2]|0,ma=Ra>>>2,g[da>>2]=+g[da>>2]/mb,Ra>>>0>4):0){Ra=1;do{Za=da+(Ra<<2)|0;g[Za>>2]=+g[Za>>2]/+g[db>>2];Ra=Ra+1|0}while((Ra|0)<(ma|0))}tB(cb)}ma=c[ha>>2]|0;if((ma|0)==(c[Oa>>2]|0))Qh(u,w);else{a[ma>>0]=a[w>>0]|0;c[ma+4>>2]=c[Ia>>2];c[ma+8>>2]=c[La>>2];a[ma+12>>0]=a[Aa>>0]|0;c[ma+16>>2]=c[Ta>>2];c[ma+20>>2]=c[wa>>2];Xd(ma+24|0,Ga);GB(ma+36|0,za);c[ha>>2]=(c[ha>>2]|0)+48}c[i>>2]=0;c[t>>2]=0;c[Ea>>2]=0;h[k>>3]=0.0;if(Fa){ma=0;jb=0.0;Ra=fb;while(1){db=ma*24|0;da=c[gb>>2]|0;Za=c[y>>2]|0;bb=+g[da+(db<<2)>>2]*+g[Za>>2]+0.0+ +g[da+((db|1)<<2)>>2]*+g[Za+4>>2]+ +g[da+((db|2)<<2)>>2]*+g[Za+8>>2]+ +g[da+((db|3)<<2)>>2]*+g[Za+12>>2]+ +g[da+((db|4)<<2)>>2]*+g[Za+16>>2]+ +g[da+((db|5)<<2)>>2]*+g[Za+20>>2]+ +g[da+((db|6)<<2)>>2]*+g[Za+24>>2]+ +g[da+((db|7)<<2)>>2]*+g[Za+28>>2]+ +g[da+(db+8<<2)>>2]*+g[Za+32>>2]+ +g[da+(db+9<<2)>>2]*+g[Za+36>>2]+ +g[da+(db+10<<2)>>2]*+g[Za+40>>2]+ +g[da+(db+11<<2)>>2]*+g[Za+44>>2];h[k>>3]=bb;ba=bb+ +g[da+(db+12<<2)>>2]*+g[Za+48>>2]+ +g[da+(db+13<<2)>>2]*+g[Za+52>>2]+ +g[da+(db+14<<2)>>2]*+g[Za+56>>2]+ +g[da+(db+15<<2)>>2]*+g[Za+60>>2]+ +g[da+(db+16<<2)>>2]*+g[Za+64>>2]+ +g[da+(db+17<<2)>>2]*+g[Za+68>>2]+ +g[da+(db+18<<2)>>2]*+g[Za+72>>2]+ +g[da+(db+19<<2)>>2]*+g[Za+76>>2]+ +g[da+(db+20<<2)>>2]*+g[Za+80>>2]+ +g[da+(db+21<<2)>>2]*+g[Za+84>>2]+ +g[da+(db+22<<2)>>2]*+g[Za+88>>2]+ +g[da+(db+23<<2)>>2]*+g[Za+92>>2];Za=(ma|0)==(q|0);bb=ba*.7;ib=Za?bb:ba;h[k>>3]=ib;if(!((Za?bb:ba)<0.0))if(ib>200.0){if(!Ra){Za=xe(40212,25584,53)|0;db=xe(Fr(Za,+h[k>>3])|0,25638,42)|0;qr(f,db+(c[(c[db>>2]|0)+-12>>2]|0)|0);Za=Xs(f,40916)|0;da=zb[c[(c[Za>>2]|0)+28>>2]&63](Za,10)|0;Ys(f);Hr(db,da)|0;vr(db)|0}h[k>>3]=200.0;qb=1;rb=200.0}else{qb=Ra;rb=ib}else{h[k>>3]=0.0;qb=Ra;rb=0.0}ib=+E(1.3,+rb);h[k>>3]=ib;db=c[t>>2]|0;if((db|0)==(c[hb>>2]|0))wi(i,k);else{h[db>>3]=ib;c[t>>2]=db+8}jb=jb+ib;ma=ma+1|0;if((ma|0)>=(X|0))break;else Ra=qb}if(jb>0.0)if(Fa){Ra=c[i>>2]|0;ma=0;do{cb=Ra+(ma<<3)|0;h[cb>>3]=+h[cb>>3]/jb;ma=ma+1|0}while((ma|0)<(X|0));sb=qb}else sb=qb;else{tb=qb;$a=158}}else{tb=fb;$a=158}if(($a|0)==158){$a=0;h[(c[i>>2]|0)+(q<<3)>>3]=1.0;sb=tb}ma=c[Sa>>2]|0;if((ma|0)==(c[Da>>2]|0))yi(o,i);else{xi(ma,i);c[Sa>>2]=(c[Sa>>2]|0)+12}ma=c[i>>2]|0;if(ma|0){Ra=c[t>>2]|0;if((Ra|0)!=(ma|0))c[t>>2]=Ra+(~((Ra+-8-ma|0)>>>3)<<3);tB(ma)}ma=c[z>>2]|0;if(ma|0){Ra=c[s>>2]|0;if((Ra|0)!=(ma|0))c[s>>2]=Ra+(~((Ra+-4-ma|0)>>>2)<<2);tB(ma)}tB(xa);ma=c[y>>2]|0;if(ma|0){Ra=c[ua>>2]|0;if((Ra|0)!=(ma|0))c[ua>>2]=Ra+(~((Ra+-4-ma|0)>>>2)<<2);tB(ma)}LB(za);ma=c[Ba>>2]|0;if(ma|0){Ra=c[Qa>>2]|0;if((Ra|0)!=(ma|0))c[Qa>>2]=Ra+(~((Ra+-4-ma|0)>>>2)<<2);tB(ma)}LB(Ja);ma=c[Pa>>2]|0;if(ma|0){Ra=c[p>>2]|0;if((Ra|0)!=(ma|0))c[p>>2]=Ra+(~((Ra+-4-ma|0)>>>2)<<2);tB(ma)}eb=eb+48|0;if((eb|0)==(c[Z>>2]|0)){kb=q;break}else fb=sb}}c[i>>2]=0;sb=i+4|0;c[sb>>2]=0;c[i+8>>2]=0;h[f>>3]=0.0;vi(k,X,f);h[(c[k>>2]|0)+(kb<<3)>>3]=1.0;fb=Pp(P(X<<3,ea)|0)|0;c[v>>2]=0;q=v+4|0;c[q>>2]=0;c[v+8>>2]=0;eb=(W|0)>0;if(eb){rb=.010000000000000009/+(kb|0);W=v+8|0;p=f+4|0;Pa=0;do{h[w>>3]=rb;vi(f,X,w);h[(c[f>>2]|0)+(Pa<<3)>>3]=.99;Ja=c[q>>2]|0;if((Ja|0)==(c[W>>2]|0))yi(v,f);else{xi(Ja,f);c[q>>2]=(c[q>>2]|0)+12}Ja=c[f>>2]|0;if(Ja|0){Qa=c[p>>2]|0;if((Qa|0)!=(Ja|0))c[p>>2]=Qa+(~((Qa+-8-Ja|0)>>>3)<<3);tB(Ja)}Pa=Pa+1|0}while((Pa|0)<(X|0))}c[w>>2]=0;Pa=w+4|0;c[Pa>>2]=0;c[w+8>>2]=0;xi(K,k);zi(M,v);zi(O,o);Oi(x,K,M,O,fb,w);p=c[O>>2]|0;if(p|0){W=O+4|0;Ja=c[W>>2]|0;if((Ja|0)==(p|0))ub=p;else{Qa=Ja;while(1){Ja=Qa+-12|0;c[W>>2]=Ja;Ba=c[Ja>>2]|0;if(!Ba)vb=Ja;else{Ja=Qa+-8|0;za=c[Ja>>2]|0;if((za|0)!=(Ba|0))c[Ja>>2]=za+(~((za+-8-Ba|0)>>>3)<<3);tB(Ba);vb=c[W>>2]|0}if((vb|0)==(p|0))break;else Qa=vb}ub=c[O>>2]|0}tB(ub)}ub=c[M>>2]|0;if(ub|0){O=M+4|0;vb=c[O>>2]|0;if((vb|0)==(ub|0))wb=ub;else{Qa=vb;while(1){vb=Qa+-12|0;c[O>>2]=vb;p=c[vb>>2]|0;if(!p)xb=vb;else{vb=Qa+-8|0;W=c[vb>>2]|0;if((W|0)!=(p|0))c[vb>>2]=W+(~((W+-8-p|0)>>>3)<<3);tB(p);xb=c[O>>2]|0}if((xb|0)==(ub|0))break;else Qa=xb}wb=c[M>>2]|0}tB(wb)}wb=c[K>>2]|0;if(wb|0){M=K+4|0;K=c[M>>2]|0;if((K|0)!=(wb|0))c[M>>2]=K+(~((K+-8-wb|0)>>>3)<<3);tB(wb)}wb=y+4|0;c[wb>>2]=0;K=y+8|0;c[K>>2]=0;M=y+12|0;a[M>>0]=0;xb=y+16|0;c[xb>>2]=0;c[xb+4>>2]=0;c[xb+8>>2]=0;c[xb+12>>2]=0;c[xb+16>>2]=0;c[xb+20>>2]=0;c[xb+24>>2]=0;c[xb+28>>2]=0;a[y>>0]=1;Qa=c[n>>2]|0;c[wb>>2]=c[Qa>>2];c[K>>2]=c[Qa+4>>2];Qa=y+36|0;MB(Qa,(c[V>>2]|0)+((c[c[x>>2]>>2]|0)*12|0)|0)|0;ub=d+184|0;O=c[S>>2]|0;do if(O){p=c[ub>>2]|0;W=O;while(1){vb=c[W+16>>2]|0;if((p|0)<(vb|0)){Ba=c[W>>2]|0;if(!Ba){$a=218;break}else yb=Ba}else{if((vb|0)>=(p|0)){$a=223;break}Ab=W+4|0;vb=c[Ab>>2]|0;if(!vb){$a=222;break}else yb=vb}W=yb}if(($a|0)==218){c[f>>2]=W;Bb=W;Cb=W;break}else if(($a|0)==222){c[f>>2]=W;Bb=W;Cb=Ab;break}else if(($a|0)==223){c[f>>2]=W;Bb=W;Cb=f;break}}else{c[f>>2]=S;Bb=S;Cb=S}while(0);Ab=c[Cb>>2]|0;if(!Ab){yb=rB(32)|0;c[yb+16>>2]=c[ub>>2];c[yb+20>>2]=0;c[yb+24>>2]=0;c[yb+28>>2]=0;c[yb>>2]=0;c[yb+4>>2]=0;c[yb+8>>2]=Bb;c[Cb>>2]=yb;Bb=c[c[b>>2]>>2]|0;if(!Bb)Db=yb;else{c[b>>2]=Bb;Db=c[Cb>>2]|0}gc(c[Q>>2]|0,Db);c[R>>2]=(c[R>>2]|0)+1;Eb=yb}else Eb=Ab;Ab=Eb+24|0;yb=c[Ab>>2]|0;if((yb|0)==(c[Eb+28>>2]|0))Qh(Eb+20|0,y);else{a[yb>>0]=a[y>>0]|0;c[yb+4>>2]=c[wb>>2];c[yb+8>>2]=c[K>>2];a[yb+12>>0]=a[M>>0]|0;c[yb+16>>2]=c[xb>>2];c[yb+20>>2]=c[y+20>>2];Xd(yb+24|0,y+24|0);GB(yb+36|0,Qa);c[Ab>>2]=(c[Ab>>2]|0)+48}g[c[r>>2]>>2]=0.0;Ab=x+4|0;yb=c[x>>2]|0;if(((c[Ab>>2]|0)-yb|0)>4){Eb=z+4|0;Db=z+8|0;Cb=z+12|0;Bb=z+16|0;O=z+36|0;p=S;xa=d+212|0;vb=z+24|0;Ba=z+28|0;za=f+4|0;Ja=f+8|0;ua=f+12|0;s=f+16|0;t=f+24|0;Da=f+28|0;tb=A+4|0;qb=f+20|0;Fa=i+8|0;hb=f+36|0;gb=f+24|0;Ea=f+4|0;Ga=d+188|0;wa=z+20|0;Ta=z+24|0;Aa=1;La=kb;kb=yb;while(1){yb=kb;if((c[yb+(Aa<<2)>>2]|0)==(La|0))Fb=La;else{c[Eb>>2]=0;c[Db>>2]=0;a[Cb>>0]=0;c[Bb>>2]=0;c[Bb+4>>2]=0;c[Bb+8>>2]=0;c[Bb+12>>2]=0;c[Bb+16>>2]=0;c[Bb+20>>2]=0;c[Bb+24>>2]=0;c[Bb+28>>2]=0;a[z>>0]=1;Ia=c[n>>2]|0;c[Eb>>2]=c[Ia+(Aa<<3)>>2];c[Db>>2]=c[Ia+(Aa<<3)+4>>2];MB(O,(c[V>>2]|0)+((c[yb+(Aa<<2)>>2]|0)*12|0)|0)|0;yb=c[S>>2]|0;do if(yb){Ia=c[ub>>2]|0;Oa=yb;while(1){pb=c[Oa+16>>2]|0;if((Ia|0)<(pb|0)){nb=c[Oa>>2]|0;if(!nb){$a=241;break}else Gb=nb}else{if((pb|0)>=(Ia|0)){$a=246;break}Hb=Oa+4|0;pb=c[Hb>>2]|0;if(!pb){$a=245;break}else Gb=pb}Oa=Gb}if(($a|0)==241){$a=0;c[f>>2]=Oa;Ib=Oa;Jb=Oa;break}else if(($a|0)==245){$a=0;c[f>>2]=Oa;Ib=Oa;Jb=Hb;break}else if(($a|0)==246){$a=0;c[f>>2]=Oa;Ib=Oa;Jb=f;break}}else{c[f>>2]=S;Ib=p;Jb=S}while(0);yb=c[Jb>>2]|0;if(!yb){W=rB(32)|0;c[W+16>>2]=c[ub>>2];c[W+20>>2]=0;c[W+24>>2]=0;c[W+28>>2]=0;c[W>>2]=0;c[W+4>>2]=0;c[W+8>>2]=Ib;c[Jb>>2]=W;Ia=c[c[b>>2]>>2]|0;if(!Ia)Kb=W;else{c[b>>2]=Ia;Kb=c[Jb>>2]|0}gc(c[Q>>2]|0,Kb);c[R>>2]=(c[R>>2]|0)+1;Lb=W}else Lb=yb;yb=Lb+24|0;W=c[yb>>2]|0;if((W|0)==(c[Lb+28>>2]|0))Qh(Lb+20|0,z);else{a[W>>0]=a[z>>0]|0;c[W+4>>2]=c[Eb>>2];c[W+8>>2]=c[Db>>2];a[W+12>>0]=a[Cb>>0]|0;c[W+16>>2]=c[Bb>>2];c[W+20>>2]=c[wa>>2];Xd(W+24|0,Ta);GB(W+36|0,O);c[yb>>2]=(c[yb>>2]|0)+48}yb=c[(c[x>>2]|0)+(Aa<<2)>>2]|0;W=c[sb>>2]|0;Ia=c[i>>2]|0;sa=Ia;if((W-Ia|0)>0){Ia=0;pb=sa;while(1){nb=c[n>>2]|0;Fk(f,(c[nb+(Aa<<3)>>2]|0)+(c[pb+(Ia*48|0)+16>>2]|0)|0,(c[nb+(Aa<<3)+4>>2]|0)+(c[pb+(Ia*48|0)+20>>2]|0)|0);nb=c[i>>2]|0;c[nb+(Ia*48|0)+16>>2]=c[f>>2];c[nb+(Ia*48|0)+20>>2]=c[Ea>>2];ob=c[S>>2]|0;do if(ob){Na=c[Ga>>2]|0;J=ob;while(1){I=c[J+16>>2]|0;if((Na|0)<(I|0)){H=c[J>>2]|0;if(!H){$a=267;break}else Mb=H}else{if((I|0)>=(Na|0)){$a=272;break}Nb=J+4|0;I=c[Nb>>2]|0;if(!I){$a=271;break}else Mb=I}J=Mb}if(($a|0)==267){$a=0;c[f>>2]=J;Ob=J;Pb=J;break}else if(($a|0)==271){$a=0;c[f>>2]=J;Ob=J;Pb=Nb;break}else if(($a|0)==272){$a=0;c[f>>2]=J;Ob=J;Pb=f;break}}else{c[f>>2]=S;Ob=p;Pb=S}while(0);ob=c[Pb>>2]|0;if(!ob){Oa=rB(32)|0;c[Oa+16>>2]=c[Ga>>2];c[Oa+20>>2]=0;c[Oa+24>>2]=0;c[Oa+28>>2]=0;c[Oa>>2]=0;c[Oa+4>>2]=0;c[Oa+8>>2]=Ob;c[Pb>>2]=Oa;Na=c[c[b>>2]>>2]|0;if(!Na)Qb=Oa;else{c[b>>2]=Na;Qb=c[Pb>>2]|0}gc(c[Q>>2]|0,Qb);c[R>>2]=(c[R>>2]|0)+1;Rb=Oa;Sb=c[i>>2]|0}else{Rb=ob;Sb=nb}ob=Sb+(Ia*48|0)|0;Oa=Rb+24|0;Na=c[Oa>>2]|0;if((Na|0)==(c[Rb+28>>2]|0))Qh(Rb+20|0,ob);else{a[Na>>0]=a[ob>>0]|0;c[Na+4>>2]=c[Sb+(Ia*48|0)+4>>2];c[Na+8>>2]=c[Sb+(Ia*48|0)+8>>2];a[Na+12>>0]=a[Sb+(Ia*48|0)+12>>0]|0;c[Na+16>>2]=c[Sb+(Ia*48|0)+16>>2];c[Na+20>>2]=c[Sb+(Ia*48|0)+20>>2];Xd(Na+24|0,Sb+(Ia*48|0)+24|0);GB(Na+36|0,Sb+(Ia*48|0)+36|0);c[Oa>>2]=(c[Oa>>2]|0)+48}Ia=Ia+1|0;Oa=c[sb>>2]|0;Na=c[i>>2]|0;ob=Na;if((Ia|0)>=((Oa-Na|0)/48|0|0)){Tb=Oa;Ub=ob;break}else pb=ob}}else{Tb=W;Ub=sa}pb=Tb;if((pb|0)!=(Ub|0)){Ia=pb;do{c[sb>>2]=Ia+-48;LB(Ia+-12|0);pb=c[Ia+-24>>2]|0;if(pb|0){ob=Ia+-20|0;Oa=c[ob>>2]|0;if((Oa|0)!=(pb|0))c[ob>>2]=Oa+(~((Oa+-4-pb|0)>>>2)<<2);tB(pb)}Ia=c[sb>>2]|0}while((Ia|0)!=(Ub|0))}Ia=c[x>>2]|0;sa=c[Ia+(Aa<<2)>>2]|0;W=c[xa>>2]|0;if(((c[W+(sa*12|0)+4>>2]|0)-(c[W+(sa*12|0)>>2]|0)|0)>0){sa=0;pb=Ia;Ia=W;do{c[za>>2]=0;c[Ja>>2]=0;a[ua>>0]=0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;c[s+24>>2]=0;c[s+28>>2]=0;a[f>>0]=1;W=c[n>>2]|0;c[za>>2]=c[W+(Aa<<3)>>2];c[Ja>>2]=c[W+(Aa<<3)+4>>2];g[A>>2]=+(c[(c[Ia+((c[pb+(Aa<<2)>>2]|0)*12|0)>>2]|0)+(sa<<2)>>2]|0);Zd(t,A);W=c[n>>2]|0;a[ua>>0]=1;Fk(A,0-(c[W+(Aa<<3)>>2]|0)|0,0-(c[W+(Aa<<3)+4>>2]|0)|0);c[s>>2]=c[A>>2];c[qb>>2]=c[tb>>2];W=c[sb>>2]|0;if((W|0)==(c[Fa>>2]|0))Qh(i,f);else{a[W>>0]=a[f>>0]|0;c[W+4>>2]=c[za>>2];c[W+8>>2]=c[Ja>>2];a[W+12>>0]=a[ua>>0]|0;c[W+16>>2]=c[s>>2];c[W+20>>2]=c[qb>>2];Xd(W+24|0,t);GB(W+36|0,hb);c[sb>>2]=(c[sb>>2]|0)+48}LB(hb);W=c[gb>>2]|0;if(W|0){Oa=c[Da>>2]|0;if((Oa|0)!=(W|0))c[Da>>2]=Oa+(~((Oa+-4-W|0)>>>2)<<2);tB(W)}sa=sa+1|0;pb=c[x>>2]|0;W=c[pb+(Aa<<2)>>2]|0;Ia=c[xa>>2]|0}while((sa|0)<((c[Ia+(W*12|0)+4>>2]|0)-(c[Ia+(W*12|0)>>2]|0)>>2|0))}LB(O);Ia=c[vb>>2]|0;if(Ia|0){sa=c[Ba>>2]|0;if((sa|0)!=(Ia|0))c[Ba>>2]=sa+(~((sa+-4-Ia|0)>>>2)<<2);tB(Ia)}Fb=yb}if(eb){Ia=Aa+-1|0;sa=P(Ia,X)|0;pb=P(Aa,X)|0;W=(c[r>>2]|0)+(Ia<<2)|0;Ia=0;rb=+g[W>>2];do{mb=+h[fb+(Ia+sa<<3)>>3];lb=+h[fb+(Ia+pb<<3)>>3];rb=mb*+N(+(mb/(lb<1.0e-07?1.0e-07:lb)+1.0e-07))+rb;Ia=Ia+1|0}while((Ia|0)<(X|0));g[W>>2]=rb}Aa=Aa+1|0;kb=c[x>>2]|0;if((Aa|0)>=((c[Ab>>2]|0)-kb>>2|0))break;else La=Fb}}Fb=(T|0)>0;if(Fb){T=z+4|0;La=z+8|0;kb=z+12|0;Aa=z+16|0;X=z+24|0;eb=z+28|0;Ba=d+196|0;vb=S;O=z+36|0;xa=z+24|0;Da=z+20|0;gb=0;do{c[T>>2]=0;c[La>>2]=0;a[kb>>0]=0;c[Aa>>2]=0;c[Aa+4>>2]=0;c[Aa+8>>2]=0;c[Aa+12>>2]=0;c[Aa+16>>2]=0;c[Aa+20>>2]=0;c[Aa+24>>2]=0;c[Aa+28>>2]=0;a[z>>0]=1;hb=c[n>>2]|0;c[T>>2]=c[hb+(gb<<3)>>2];c[La>>2]=c[hb+(gb<<3)+4>>2];g[f>>2]=-+N(+(+h[(c[w>>2]|0)+(gb<<3)>>3]));Zd(X,f);hb=c[S>>2]|0;do if(hb){t=c[Ba>>2]|0;qb=hb;while(1){s=c[qb+16>>2]|0;if((t|0)<(s|0)){ua=c[qb>>2]|0;if(!ua){$a=305;break}else Vb=ua}else{if((s|0)>=(t|0)){$a=310;break}Wb=qb+4|0;s=c[Wb>>2]|0;if(!s){$a=309;break}else Vb=s}qb=Vb}if(($a|0)==305){$a=0;c[f>>2]=qb;Xb=qb;Yb=qb;break}else if(($a|0)==309){$a=0;c[f>>2]=qb;Xb=qb;Yb=Wb;break}else if(($a|0)==310){$a=0;c[f>>2]=qb;Xb=qb;Yb=f;break}}else{c[f>>2]=S;Xb=vb;Yb=S}while(0);hb=c[Yb>>2]|0;if(!hb){W=rB(32)|0;c[W+16>>2]=c[Ba>>2];c[W+20>>2]=0;c[W+24>>2]=0;c[W+28>>2]=0;c[W>>2]=0;c[W+4>>2]=0;c[W+8>>2]=Xb;c[Yb>>2]=W;t=c[c[b>>2]>>2]|0;if(!t)Zb=W;else{c[b>>2]=t;Zb=c[Yb>>2]|0}gc(c[Q>>2]|0,Zb);c[R>>2]=(c[R>>2]|0)+1;_b=W}else _b=hb;hb=_b+24|0;W=c[hb>>2]|0;if((W|0)==(c[_b+28>>2]|0))Qh(_b+20|0,z);else{a[W>>0]=a[z>>0]|0;c[W+4>>2]=c[T>>2];c[W+8>>2]=c[La>>2];a[W+12>>0]=a[kb>>0]|0;c[W+16>>2]=c[Aa>>2];c[W+20>>2]=c[Da>>2];Xd(W+24|0,X);GB(W+36|0,O);c[hb>>2]=(c[hb>>2]|0)+48}LB(O);hb=c[xa>>2]|0;if(hb|0){W=c[eb>>2]|0;if((W|0)!=(hb|0))c[eb>>2]=W+(~((W+-4-hb|0)>>>2)<<2);tB(hb)}gb=gb+1|0}while((gb|0)<(ea|0))}a[y>>0]=1;gb=c[n>>2]|0;eb=((c[fa>>2]|0)-gb>>3)+-1|0;xa=gb;c[wb>>2]=c[xa+(eb<<3)>>2];c[K>>2]=c[xa+(eb<<3)+4>>2];RB(Qa,25681)|0;eb=c[S>>2]|0;do if(eb){xa=c[ub>>2]|0;gb=eb;while(1){O=c[gb+16>>2]|0;if((xa|0)<(O|0)){X=c[gb>>2]|0;if(!X){$a=327;break}else $b=X}else{if((O|0)>=(xa|0)){$a=332;break}ac=gb+4|0;O=c[ac>>2]|0;if(!O){$a=331;break}else $b=O}gb=$b}if(($a|0)==327){c[f>>2]=gb;bc=gb;cc=gb;break}else if(($a|0)==331){c[f>>2]=gb;bc=gb;cc=ac;break}else if(($a|0)==332){c[f>>2]=gb;bc=gb;cc=f;break}}else{c[f>>2]=S;bc=S;cc=S}while(0);ac=c[cc>>2]|0;if(!ac){$b=rB(32)|0;c[$b+16>>2]=c[ub>>2];c[$b+20>>2]=0;c[$b+24>>2]=0;c[$b+28>>2]=0;c[$b>>2]=0;c[$b+4>>2]=0;c[$b+8>>2]=bc;c[cc>>2]=$b;bc=c[c[b>>2]>>2]|0;if(!bc)dc=$b;else{c[b>>2]=bc;dc=c[cc>>2]|0}gc(c[Q>>2]|0,dc);c[R>>2]=(c[R>>2]|0)+1;ec=$b}else ec=ac;ac=ec+24|0;$b=c[ac>>2]|0;if(($b|0)==(c[ec+28>>2]|0))Qh(ec+20|0,y);else{a[$b>>0]=a[y>>0]|0;c[$b+4>>2]=c[wb>>2];c[$b+8>>2]=c[K>>2];a[$b+12>>0]=a[M>>0]|0;c[$b+16>>2]=c[xb>>2];c[$b+20>>2]=c[y+20>>2];Xd($b+24|0,y+24|0);GB($b+36|0,Qa);c[ac>>2]=(c[ac>>2]|0)+48}ac=c[i>>2]|0;if(((c[sb>>2]|0)-ac|0)>0){$b=f+4|0;xb=d+188|0;M=S;K=0;wb=ac;do{ac=wb;ec=c[n>>2]|0;dc=((c[fa>>2]|0)-ec>>3)+-1|0;cc=ec;Fk(f,(c[cc+(dc<<3)>>2]|0)+(c[ac+(K*48|0)+16>>2]|0)|0,(c[cc+(dc<<3)+4>>2]|0)+(c[ac+(K*48|0)+20>>2]|0)|0);ac=c[i>>2]|0;c[ac+(K*48|0)+16>>2]=c[f>>2];c[ac+(K*48|0)+20>>2]=c[$b>>2];dc=c[S>>2]|0;do if(dc){cc=c[xb>>2]|0;ec=dc;while(1){bc=c[ec+16>>2]|0;if((cc|0)<(bc|0)){ub=c[ec>>2]|0;if(!ub){$a=349;break}else fc=ub}else{if((bc|0)>=(cc|0)){$a=354;break}hc=ec+4|0;bc=c[hc>>2]|0;if(!bc){$a=353;break}else fc=bc}ec=fc}if(($a|0)==349){$a=0;c[f>>2]=ec;ic=ec;jc=ec;break}else if(($a|0)==353){$a=0;c[f>>2]=ec;ic=ec;jc=hc;break}else if(($a|0)==354){$a=0;c[f>>2]=ec;ic=ec;jc=f;break}}else{c[f>>2]=S;ic=M;jc=S}while(0);dc=c[jc>>2]|0;if(!dc){gb=rB(32)|0;c[gb+16>>2]=c[xb>>2];c[gb+20>>2]=0;c[gb+24>>2]=0;c[gb+28>>2]=0;c[gb>>2]=0;c[gb+4>>2]=0;c[gb+8>>2]=ic;c[jc>>2]=gb;cc=c[c[b>>2]>>2]|0;if(!cc)kc=gb;else{c[b>>2]=cc;kc=c[jc>>2]|0}gc(c[Q>>2]|0,kc);c[R>>2]=(c[R>>2]|0)+1;lc=gb;mc=c[i>>2]|0}else{lc=dc;mc=ac}dc=mc+(K*48|0)|0;gb=lc+24|0;cc=c[gb>>2]|0;if((cc|0)==(c[lc+28>>2]|0))Qh(lc+20|0,dc);else{a[cc>>0]=a[dc>>0]|0;c[cc+4>>2]=c[mc+(K*48|0)+4>>2];c[cc+8>>2]=c[mc+(K*48|0)+8>>2];a[cc+12>>0]=a[mc+(K*48|0)+12>>0]|0;c[cc+16>>2]=c[mc+(K*48|0)+16>>2];c[cc+20>>2]=c[mc+(K*48|0)+20>>2];Xd(cc+24|0,mc+(K*48|0)+24|0);GB(cc+36|0,mc+(K*48|0)+36|0);c[gb>>2]=(c[gb>>2]|0)+48}K=K+1|0;wb=c[i>>2]|0}while((K|0)<(((c[sb>>2]|0)-wb|0)/48|0|0))}if(Fb){Fb=z+4|0;wb=z+8|0;K=z+12|0;mc=z+16|0;lc=z+24|0;kc=z+28|0;jc=d+192|0;d=S;ic=z+36|0;xb=z+24|0;M=z+20|0;hc=0;do{c[Fb>>2]=0;c[wb>>2]=0;a[K>>0]=0;c[mc>>2]=0;c[mc+4>>2]=0;c[mc+8>>2]=0;c[mc+12>>2]=0;c[mc+16>>2]=0;c[mc+20>>2]=0;c[mc+24>>2]=0;c[mc+28>>2]=0;a[z>>0]=1;fc=c[n>>2]|0;c[Fb>>2]=c[fc+(hc<<3)>>2];c[wb>>2]=c[fc+(hc<<3)+4>>2];Pe(lc,(c[r>>2]|0)+(hc<<2)|0);fc=c[S>>2]|0;do if(fc){$b=c[jc>>2]|0;gb=fc;while(1){cc=c[gb+16>>2]|0;if(($b|0)<(cc|0)){dc=c[gb>>2]|0;if(!dc){$a=438;break}else nc=dc}else{if((cc|0)>=($b|0)){$a=443;break}oc=gb+4|0;cc=c[oc>>2]|0;if(!cc){$a=442;break}else nc=cc}gb=nc}if(($a|0)==438){$a=0;c[f>>2]=gb;pc=gb;qc=gb;break}else if(($a|0)==442){$a=0;c[f>>2]=gb;pc=gb;qc=oc;break}else if(($a|0)==443){$a=0;c[f>>2]=gb;pc=gb;qc=f;break}}else{c[f>>2]=S;pc=d;qc=S}while(0);fc=c[qc>>2]|0;if(!fc){ac=rB(32)|0;c[ac+16>>2]=c[jc>>2];c[ac+20>>2]=0;c[ac+24>>2]=0;c[ac+28>>2]=0;c[ac>>2]=0;c[ac+4>>2]=0;c[ac+8>>2]=pc;c[qc>>2]=ac;$b=c[c[b>>2]>>2]|0;if(!$b)rc=ac;else{c[b>>2]=$b;rc=c[qc>>2]|0}gc(c[Q>>2]|0,rc);c[R>>2]=(c[R>>2]|0)+1;sc=ac}else sc=fc;fc=sc+24|0;ac=c[fc>>2]|0;if((ac|0)==(c[sc+28>>2]|0))Qh(sc+20|0,z);else{a[ac>>0]=a[z>>0]|0;c[ac+4>>2]=c[Fb>>2];c[ac+8>>2]=c[wb>>2];a[ac+12>>0]=a[K>>0]|0;c[ac+16>>2]=c[mc>>2];c[ac+20>>2]=c[M>>2];Xd(ac+24|0,lc);GB(ac+36|0,ic);c[fc>>2]=(c[fc>>2]|0)+48}LB(ic);fc=c[xb>>2]|0;if(fc|0){ac=c[kc>>2]|0;if((ac|0)!=(fc|0))c[kc>>2]=ac+(~((ac+-4-fc|0)>>>2)<<2);tB(fc)}hc=hc+1|0}while((hc|0)<(ea|0))}Qp(fb);LB(Qa);Qa=c[y+24>>2]|0;if(Qa|0){fb=y+28|0;y=c[fb>>2]|0;if((y|0)!=(Qa|0))c[fb>>2]=y+(~((y+-4-Qa|0)>>>2)<<2);tB(Qa)}Qa=c[x>>2]|0;if(Qa|0){x=c[Ab>>2]|0;if((x|0)!=(Qa|0))c[Ab>>2]=x+(~((x+-4-Qa|0)>>>2)<<2);tB(Qa)}Qa=c[w>>2]|0;if(Qa|0){w=c[Pa>>2]|0;if((w|0)!=(Qa|0))c[Pa>>2]=w+(~((w+-8-Qa|0)>>>3)<<3);tB(Qa)}Qa=c[v>>2]|0;if(Qa|0){w=c[q>>2]|0;if((w|0)==(Qa|0))tc=Qa;else{Pa=w;while(1){w=Pa+-12|0;c[q>>2]=w;x=c[w>>2]|0;if(!x)uc=w;else{w=Pa+-8|0;Ab=c[w>>2]|0;if((Ab|0)!=(x|0))c[w>>2]=Ab+(~((Ab+-8-x|0)>>>3)<<3);tB(x);uc=c[q>>2]|0}if((uc|0)==(Qa|0))break;else Pa=uc}tc=c[v>>2]|0}tB(tc)}tc=c[k>>2]|0;if(tc|0){v=k+4|0;k=c[v>>2]|0;if((k|0)!=(tc|0))c[v>>2]=k+(~((k+-8-tc|0)>>>3)<<3);tB(tc)}tc=c[i>>2]|0;if(tc|0){k=c[sb>>2]|0;if((k|0)==(tc|0))vc=tc;else{v=k;do{c[sb>>2]=v+-48;LB(v+-12|0);k=c[v+-24>>2]|0;if(k|0){uc=v+-20|0;Pa=c[uc>>2]|0;if((Pa|0)!=(k|0))c[uc>>2]=Pa+(~((Pa+-4-k|0)>>>2)<<2);tB(k)}v=c[sb>>2]|0}while((v|0)!=(tc|0));vc=c[i>>2]|0}tB(vc)}vc=c[u>>2]|0;if(vc|0){i=c[ha>>2]|0;if((i|0)==(vc|0))wc=vc;else{tc=i;do{c[ha>>2]=tc+-48;LB(tc+-12|0);i=c[tc+-24>>2]|0;if(i|0){v=tc+-20|0;sb=c[v>>2]|0;if((sb|0)!=(i|0))c[v>>2]=sb+(~((sb+-4-i|0)>>>2)<<2);tB(i)}tc=c[ha>>2]|0}while((tc|0)!=(vc|0));wc=c[u>>2]|0}tB(wc)}wc=c[r>>2]|0;if(wc|0){u=r+4|0;r=c[u>>2]|0;if((r|0)!=(wc|0))c[u>>2]=r+(~((r+-4-wc|0)>>>2)<<2);tB(wc)}wc=c[o>>2]|0;if(wc|0){r=c[Sa>>2]|0;if((r|0)==(wc|0))xc=wc;else{u=r;while(1){r=u+-12|0;c[Sa>>2]=r;vc=c[r>>2]|0;if(!vc)yc=r;else{r=u+-8|0;tc=c[r>>2]|0;if((tc|0)!=(vc|0))c[r>>2]=tc+(~((tc+-8-vc|0)>>>3)<<3);tB(vc);yc=c[Sa>>2]|0}if((yc|0)==(wc|0))break;else u=yc}xc=c[o>>2]|0}tB(xc)}xc=c[n>>2]|0;if(xc|0){n=c[fa>>2]|0;if((n|0)!=(xc|0))c[fa>>2]=n+(~((n+-8-xc|0)>>>3)<<3);tB(xc)}xc=c[m>>2]|0;if(xc|0){n=c[Z>>2]|0;if((n|0)==(xc|0))zc=xc;else{fa=n;do{c[Z>>2]=fa+-48;LB(fa+-12|0);n=c[fa+-24>>2]|0;if(n|0){o=fa+-20|0;yc=c[o>>2]|0;if((yc|0)!=(n|0))c[o>>2]=yc+(~((yc+-4-n|0)>>>2)<<2);tB(n)}fa=c[Z>>2]|0}while((fa|0)!=(xc|0));zc=c[m>>2]|0}tB(zc)}l=e;return}function ti(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;c[a>>2]=0;e=a+4|0;c[e>>2]=0;c[a+8>>2]=0;if(!b)return;if(b>>>0>1073741823){Az(a);f=za(4)|0;AD(f);Xa(f|0,3080,250)}f=rB(b<<2)|0;c[e>>2]=f;c[a>>2]=f;c[a+8>>2]=f+(b<<2);a=f+(b<<2)|0;g=b;b=f;while(1){c[b>>2]=c[d>>2];g=g+-1|0;if(!g)break;else b=b+4|0}c[e>>2]=a;return}function ui(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>3)+1|0;if(g>>>0>536870911){Az(a);h=c[d>>2]|0;i=c[a>>2]|0}else{h=e;i=f}f=i;e=h;j=a+8|0;k=(c[j>>2]|0)-i|0;l=k>>2;m=k>>3>>>0<268435455?(l>>>0<g>>>0?g:l):536870911;l=h-i>>3;do if(m)if(m>>>0>536870911){h=za(4)|0;AD(h);Xa(h|0,3080,250)}else{n=rB(m<<3)|0;break}else n=0;while(0);h=n+(l<<3)|0;g=n+(m<<3)|0;c[h>>2]=c[b>>2];c[n+(l<<3)+4>>2]=c[b+4>>2];b=h+8|0;if((e|0)==(f|0))o=h;else{l=e+-8-i|0;n=e;e=h;while(1){m=n;n=n+-8|0;c[e+-8>>2]=c[n>>2];c[e+-4>>2]=c[m+-4>>2];if((n|0)==(f|0))break;else e=e+-8|0}o=h+(~(l>>>3)<<3)|0}c[a>>2]=o;c[d>>2]=b;c[j>>2]=g;if(!i)return;tB(i);return}function vi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;c[a>>2]=0;e=a+4|0;c[e>>2]=0;c[a+8>>2]=0;if(!b)return;if(b>>>0>536870911){Az(a);f=za(4)|0;AD(f);Xa(f|0,3080,250)}f=rB(b<<3)|0;c[e>>2]=f;c[a>>2]=f;g=f+(b<<3)|0;c[a+8>>2]=g;a=b;b=f;while(1){h[b>>3]=+h[d>>3];a=a+-1|0;if(!a)break;else b=b+8|0}c[e>>2]=g;return}function wi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>3)+1|0;if(g>>>0>536870911){Az(a);i=c[a>>2]|0;j=c[d>>2]|0}else{i=f;j=e}e=a+8|0;f=(c[e>>2]|0)-i|0;k=f>>2;l=f>>3>>>0<268435455?(k>>>0<g>>>0?g:k):536870911;k=j-i>>3;do if(l)if(l>>>0>536870911){g=za(4)|0;AD(g);Xa(g|0,3080,250)}else{m=rB(l<<3)|0;break}else m=0;while(0);g=m+(k<<3)|0;h[g>>3]=+h[b>>3];b=j-i|0;j=g+(0-(b>>3)<<3)|0;if((b|0)>0)MD(j|0,i|0,b|0)|0;c[a>>2]=j;c[d>>2]=g+8;c[e>>2]=m+(l<<3);if(!i)return;tB(i);return}function xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=f>>3;if(!g)return;if(g>>>0>536870911){Az(a);h=za(4)|0;AD(h);Xa(h|0,3080,250)}h=rB(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g<<3);g=c[b>>2]|0;b=(c[e>>2]|0)-g|0;if((b|0)<=0)return;MD(h|0,g|0,b|0)|0;c[d>>2]=h+(b>>>3<<3);return}function yi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=((e-f|0)/12|0)+1|0;if(g>>>0>357913941){Az(a);h=c[a>>2]|0;i=c[d>>2]|0}else{h=f;i=e}e=a+8|0;f=((c[e>>2]|0)-h|0)/12|0;j=f<<1;k=f>>>0<178956970?(j>>>0<g>>>0?g:j):357913941;j=(i-h|0)/12|0;do if(k)if(k>>>0>357913941){h=za(4)|0;AD(h);Xa(h|0,3080,250)}else{l=rB(k*12|0)|0;break}else l=0;while(0);h=l+(j*12|0)|0;j=h;i=l+(k*12|0)|0;xi(h,b);b=h+12|0;k=c[a>>2]|0;l=c[d>>2]|0;if((l|0)==(k|0)){m=j;n=k;o=k}else{g=l;l=j;j=h;do{h=j+-12|0;f=g;g=g+-12|0;c[h>>2]=0;p=j+-8|0;c[p>>2]=0;c[j+-4>>2]=0;c[h>>2]=c[g>>2];h=f+-8|0;c[p>>2]=c[h>>2];p=f+-4|0;c[j+-4>>2]=c[p>>2];c[p>>2]=0;c[h>>2]=0;c[g>>2]=0;j=l+-12|0;l=j}while((g|0)!=(k|0));m=l;n=c[a>>2]|0;o=c[d>>2]|0}c[a>>2]=m;c[d>>2]=b;c[e>>2]=i;i=n;if((o|0)!=(i|0)){e=o;do{o=e;e=e+-12|0;b=c[e>>2]|0;if(b|0){d=o+-8|0;o=c[d>>2]|0;if((o|0)!=(b|0))c[d>>2]=o+(~((o+-8-b|0)>>>3)<<3);tB(b)}}while((e|0)!=(i|0))}if(!n)return;tB(n);return}function zi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=(f|0)/12|0;if(!f)return;if(g>>>0>357913941){Az(a);h=za(4)|0;AD(h);Xa(h|0,3080,250)}h=rB(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g*12|0);g=c[b>>2]|0;b=c[e>>2]|0;if((g|0)==(b|0))return;e=g;g=h;do{xi(g,e);e=e+12|0;g=(c[d>>2]|0)+12|0;c[d>>2]=g}while((e|0)!=(b|0));return}function Ai(a,b){a=a|0;b=+b;var d=0;Oh(a,b);c[a>>2]=7132;d=a+200|0;a=d+36|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));return}function Bi(a){a=a|0;c[a>>2]=7916;ph(a);return}function Ci(a){a=a|0;c[a>>2]=7916;ph(a);tB(a);return}function Di(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,27322,6);return}function Ei(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,27329,6);return}function Fi(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,27887,141);return}function Gi(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;d=l;l=l+80|0;e=d;c[b>>2]=0;f=b+4|0;c[f>>2]=0;c[b+8>>2]=0;h=e+64|0;i=e;j=i+60|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));a[e+60>>0]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;RB(e,27594)|0;i=e+12|0;RB(i,27601)|0;j=e+24|0;RB(j,27622)|0;k=e+36|0;RB(k,27885)|0;g[e+48>>2]=0.0;g[e+52>>2]=5.0;g[e+56>>2]=0.0;a[e+60>>0]=1;g[h>>2]=.5;h=c[f>>2]|0;if((h|0)==(c[b+8>>2]|0))Lh(b,e);else{Kh(h,e);c[f>>2]=(c[f>>2]|0)+80}f=e+68|0;h=c[f>>2]|0;if(!h){LB(k);LB(j);LB(i);LB(e);l=d;return}b=e+72|0;m=c[b>>2]|0;if((m|0)==(h|0))n=h;else{o=m;do{m=o+-12|0;c[b>>2]=m;LB(m);o=c[b>>2]|0}while((o|0)!=(h|0));n=c[f>>2]|0}tB(n);LB(k);LB(j);LB(i);LB(e);l=d;return}function Hi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ch(a,b,c,d)|0}function Ii(a){a=a|0;Dh(a);return}function Ji(a){a=a|0;return 8192}function Ki(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=l;l=l+208|0;f=e+100|0;h=e;c[b>>2]=0;i=b+4|0;c[i>>2]=0;c[b+8>>2]=0;j=f+52|0;k=f+72|0;g[k>>2]=0.0;m=f+76|0;g[m>>2]=0.0;n=f+80|0;a[n>>0]=0;o=f+84|0;p=f;q=p+48|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));a[f+48>>0]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;a[j+16>>0]=0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;a[o+12>>0]=0;RB(f,27322)|0;o=f+12|0;RB(o,27329)|0;r=f+24|0;RB(r,27336)|0;s=f+36|0;RB(s,27430)|0;a[f+48>>0]=1;c[j>>2]=1;a[f+68>>0]=1;g[k>>2]=427.4700012207031;g[m>>2]=452.8900146484375;a[n>>0]=0;c[f+88>>2]=2;a[f+96>>0]=1;n=c[i>>2]|0;m=b+8|0;if((n|0)==(c[m>>2]|0))ei(b,f);else{di(n,f);c[i>>2]=(c[i>>2]|0)+100}c[d+184>>2]=0;n=h+52|0;k=h+72|0;g[k>>2]=0.0;j=h+76|0;g[j>>2]=0.0;t=h+80|0;a[t>>0]=0;u=h+84|0;p=h;q=p+48|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));a[h+48>>0]=0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;a[n+16>>0]=0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;a[u+12>>0]=0;RB(h,27433)|0;u=h+12|0;RB(u,27445)|0;p=h+24|0;RB(p,27458)|0;q=h+36|0;RB(q,27430)|0;a[h+48>>0]=1;c[n>>2]=1;a[h+68>>0]=1;g[k>>2]=427.4700012207031;g[j>>2]=452.8900146484375;a[t>>0]=0;c[h+88>>2]=1;t=c[d+28>>2]|0;g[h+92>>2]=+g[d+4>>2]/((t|0)==0?2048.0:+(t>>>0));a[h+96>>0]=0;t=c[i>>2]|0;if((t|0)==(c[m>>2]|0))ei(b,h);else{di(t,h);c[i>>2]=(c[i>>2]|0)+100}c[d+188>>2]=1;d=h+56|0;i=c[d>>2]|0;if(i|0){t=h+60|0;b=c[t>>2]|0;if((b|0)==(i|0))v=i;else{m=b;do{b=m+-12|0;c[t>>2]=b;LB(b);m=c[t>>2]|0}while((m|0)!=(i|0));v=c[d>>2]|0}tB(v)}LB(q);LB(p);LB(u);LB(h);h=f+56|0;u=c[h>>2]|0;if(!u){LB(s);LB(r);LB(o);LB(f);l=e;return}p=f+60|0;q=c[p>>2]|0;if((q|0)==(u|0))w=u;else{v=q;do{q=v+-12|0;c[p>>2]=q;LB(q);v=c[p>>2]|0}while((v|0)!=(u|0));w=c[h>>2]|0}tB(w);LB(s);LB(r);LB(o);LB(f);l=e;return}function Li(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=l;l=l+64|0;i=h+8|0;j=h+16|0;k=h;c[i>>2]=c[f>>2];m=f+4|0;c[i+4>>2]=c[m>>2];Ph(d,e,i);i=j+4|0;e=j+8|0;n=j+12|0;a[n>>0]=0;o=j+16|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[o+20>>2]=0;c[o+24>>2]=0;c[o+28>>2]=0;a[j>>0]=1;c[i>>2]=c[f>>2];c[e>>2]=c[m>>2];m=c[d+72>>2]|0;g[k>>2]=+Ca(+(+g[m+(((c[d+76>>2]|0)-m>>2)+-1<<2)>>2]/12.0))*440.0;m=j+24|0;f=j+28|0;Pe(m,k);c[b+4>>2]=0;k=b+8|0;c[k>>2]=0;p=b+4|0;c[b>>2]=p;q=c[p>>2]|0;if(!q){r=rB(32)|0;c[r+16>>2]=c[d+188>>2];c[r+20>>2]=0;c[r+24>>2]=0;c[r+28>>2]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=p;c[p>>2]=r;c[b>>2]=r;gc(r,r);c[k>>2]=(c[k>>2]|0)+1;s=r}else s=q;q=s+24|0;r=c[q>>2]|0;if((r|0)==(c[s+28>>2]|0)){Qh(s+20|0,j);t=j+36|0}else{a[r>>0]=a[j>>0]|0;c[r+4>>2]=c[i>>2];c[r+8>>2]=c[e>>2];a[r+12>>0]=a[n>>0]|0;c[r+16>>2]=c[o>>2];c[r+20>>2]=c[j+20>>2];Xd(r+24|0,m);m=j+36|0;GB(r+36|0,m);c[q>>2]=(c[q>>2]|0)+48;t=m}LB(t);t=c[j+24>>2]|0;if(!t){l=h;return}j=c[f>>2]|0;if((j|0)!=(t|0))c[f>>2]=j+(~((j+-4-t|0)>>>2)<<2);tB(t);l=h;return}function Mi(b,d){b=b|0;d=d|0;var e=0,f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0,v=0.0,w=0.0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;e=l;l=l+112|0;f=e;i=e+56|0;j=e+60|0;k=e+8|0;m=b+4|0;c[m>>2]=0;n=b+8|0;c[n>>2]=0;o=b+4|0;c[b>>2]=o;p=d+12|0;q=d+16|0;if((c[q>>2]|0)==(c[p>>2]|0)){l=e;return}r=c[d+36>>2]|0;s=c[d+172>>2]|0;t=c[d+160>>2]|0;u=+g[r>>2];v=+g[r+4>>2];w=+g[r+8>>2];x=+Ca(+(+L(+(u*+g[t>>2]+0.0+v*+g[t+4>>2]+w*+g[t+8>>2]),+(u*+g[s>>2]+0.0+v*+g[s+4>>2]+w*+g[s+8>>2]))/75.39822368615503))*440.0;g[i>>2]=x;h[f>>3]=x;zn(j,27313,f)|0;s=k+4|0;c[s>>2]=0;t=k+8|0;c[t>>2]=0;r=k+12|0;a[r>>0]=0;y=k+16|0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;c[y+12>>2]=0;c[y+16>>2]=0;c[y+20>>2]=0;c[y+24>>2]=0;c[y+28>>2]=0;a[k>>0]=1;Gk(f,0,un(+g[d+4>>2])|0);c[s>>2]=c[f>>2];c[t>>2]=c[f+4>>2];z=k+24|0;A=k+28|0;B=c[A>>2]|0;if((B|0)==(c[k+32>>2]|0))Pe(z,i);else{c[B>>2]=c[i>>2];c[A>>2]=B+4}B=k+36|0;RB(B,j)|0;a[r>>0]=1;j=c[p>>2]|0;p=(((c[q>>2]|0)-j|0)/48|0)+-1|0;q=j;c[y>>2]=c[q+(p*48|0)+4>>2];j=k+20|0;c[j>>2]=c[q+(p*48|0)+8>>2];p=d+184|0;d=c[o>>2]|0;do if(d){q=c[p>>2]|0;i=d;while(1){C=c[i+16>>2]|0;if((q|0)<(C|0)){D=c[i>>2]|0;if(!D){E=9;break}else F=D}else{if((C|0)>=(q|0)){E=14;break}G=i+4|0;C=c[G>>2]|0;if(!C){E=13;break}else F=C}i=F}if((E|0)==9){c[f>>2]=i;H=i;I=i;break}else if((E|0)==13){c[f>>2]=i;H=i;I=G;break}else if((E|0)==14){c[f>>2]=i;H=i;I=f;break}}else{c[f>>2]=o;H=o;I=o}while(0);o=c[I>>2]|0;if(!o){f=rB(32)|0;c[f+16>>2]=c[p>>2];c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=H;c[I>>2]=f;H=c[c[b>>2]>>2]|0;if(!H)J=f;else{c[b>>2]=H;J=c[I>>2]|0}gc(c[m>>2]|0,J);c[n>>2]=(c[n>>2]|0)+1;K=f}else K=o;o=K+24|0;f=c[o>>2]|0;if((f|0)==(c[K+28>>2]|0))Qh(K+20|0,k);else{a[f>>0]=a[k>>0]|0;c[f+4>>2]=c[s>>2];c[f+8>>2]=c[t>>2];a[f+12>>0]=a[r>>0]|0;c[f+16>>2]=c[y>>2];c[f+20>>2]=c[j>>2];Xd(f+24|0,z);GB(f+36|0,B);c[o>>2]=(c[o>>2]|0)+48}LB(B);B=c[k+24>>2]|0;if(B|0){k=c[A>>2]|0;if((k|0)!=(B|0))c[A>>2]=k+(~((k+-4-B|0)>>>2)<<2);tB(B)}l=e;return}function Ni(a,b){a=a|0;b=+b;Oh(a,b);c[a>>2]=7916;return}function Oi(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0,I=0,J=0.0,K=0,L=0,M=0.0,N=0.0,O=0,Q=0,R=0.0,S=0,T=0;i=l;l=l+32|0;j=i+16|0;k=i;m=i+12|0;n=(c[b+4>>2]|0)-(c[b>>2]|0)|0;o=n>>3;p=c[e>>2]|0;q=(c[e+4>>2]|0)-p|0;r=(q|0)/12|0;s=c[d>>2]|0;t=p;if(!((((c[s+4>>2]|0)-(c[s>>2]|0)>>3|0)==(o|0)?(((c[d+4>>2]|0)-s|0)/12|0|0)==(o|0):0)?((c[t+4>>2]|0)-(c[p>>2]|0)>>3|0)==(o|0):0)){p=xe(40212,28037,33)|0;qr(j,p+(c[(c[p>>2]|0)+-12>>2]|0)|0);t=Xs(j,40916)|0;s=zb[c[(c[t>>2]|0)+28>>2]&63](t,10)|0;Ys(j);Hr(p,s)|0;vr(p)|0}c[j>>2]=0;p=j+4|0;c[p>>2]=0;c[j+8>>2]=0;s=o+-1|0;c[k>>2]=s;Pi(a,r,k);t=(n|0)>0;if(t){n=c[b>>2]|0;b=c[c[e>>2]>>2]|0;u=0;v=0.0;do{w=+h[n+(u<<3)>>3]*+h[b+(u<<3)>>3];h[f+(u<<3)>>3]=w;v=v+w;u=u+1|0}while((u|0)<(o|0));if(t){u=0;do{b=f+(u<<3)|0;h[b>>3]=+h[b>>3]/v;u=u+1|0}while((u|0)<(o|0));x=v}else x=v}else x=0.0;v=1.0/x;h[k>>3]=v;u=g+4|0;b=c[u>>2]|0;n=g+8|0;if(b>>>0<(c[n>>2]|0)>>>0){h[b>>3]=v;c[u>>2]=b+8}else Qi(g,k);c[m>>2]=0;Pi(k,o,m);b=c[p>>2]|0;y=j+8|0;if(b>>>0>=(c[y>>2]|0)>>>0){Ri(j,k);z=c[k>>2]|0;if(z|0){A=k+4|0;B=c[A>>2]|0;if((B|0)!=(z|0))c[A>>2]=B+(~((B+-4-z|0)>>>2)<<2);tB(z)}}else{c[b>>2]=0;z=b+4|0;c[z>>2]=0;c[b+8>>2]=0;c[b>>2]=c[k>>2];B=k+4|0;c[z>>2]=c[B>>2];z=k+8|0;c[b+8>>2]=c[z>>2];c[z>>2]=0;c[B>>2]=0;c[k>>2]=0;c[p>>2]=b+12}if((q|0)>12){q=k+4|0;b=k+8|0;v=1.0/+(o|0);B=1;do{c[m>>2]=0;Pi(k,o,m);z=c[p>>2]|0;if(z>>>0>=(c[y>>2]|0)>>>0){Ri(j,k);A=c[k>>2]|0;if(A|0){C=c[q>>2]|0;if((C|0)!=(A|0))c[q>>2]=C+(~((C+-4-A|0)>>>2)<<2);tB(A)}}else{c[z>>2]=0;A=z+4|0;c[A>>2]=0;c[z+8>>2]=0;c[z>>2]=c[k>>2];c[A>>2]=c[q>>2];c[z+8>>2]=c[b>>2];c[b>>2]=0;c[q>>2]=0;c[k>>2]=0;c[p>>2]=z+12}a:do if(t){z=c[(c[e>>2]|0)+(B*12|0)>>2]|0;A=P(B,o)|0;C=c[(c[j>>2]|0)+(B*12|0)>>2]|0;D=P(B+-1|0,o)|0;E=0;x=0.0;do{w=+h[z+(E<<3)>>3];if(w>0.0){F=c[d>>2]|0;G=0;H=0.0;I=s;while(1){J=+h[f+(G+D<<3)>>3]*+h[(c[F+(G*12|0)>>2]|0)+(E<<3)>>3];K=J>H;L=K?G:I;M=K?J:H;G=G+1|0;if((G|0)>=(o|0)){N=M;O=L;break}else{H=M;I=L}}}else{N=0.0;O=s}H=N*w;h[f+(E+A<<3)>>3]=H;x=x+H;c[C+(E<<2)>>2]=O;E=E+1|0}while((E|0)<(o|0));if(!(x>0.0)){if(!t){Q=45;break}E=P(B,o)|0;C=0;while(1){h[f+(C+E<<3)>>3]=v;C=C+1|0;if((C|0)>=(o|0)){Q=45;break a}}}if(t){C=P(B,o)|0;E=0;do{A=f+(E+C<<3)|0;h[A>>3]=+h[A>>3]/x;E=E+1|0}while((E|0)<(o|0))}H=1.0/x;h[k>>3]=H;E=c[u>>2]|0;if(E>>>0<(c[n>>2]|0)>>>0){h[E>>3]=H;c[u>>2]=E+8}else Qi(g,k)}else Q=45;while(0);if((Q|0)==45){Q=0;h[k>>3]=1.0;E=c[u>>2]|0;if(E>>>0<(c[n>>2]|0)>>>0){h[E>>3]=1.0;c[u>>2]=E+8}else Qi(g,k)}B=B+1|0}while((B|0)<(r|0))}if(t){t=r+-1|0;B=P(t,o)|0;k=0;v=0.0;while(1){N=+h[f+(k+B<<3)>>3];if(N>v){c[(c[a>>2]|0)+(t<<2)>>2]=k;R=N}else R=v;k=k+1|0;if((k|0)>=(o|0))break;else v=R}}o=r+-2|0;r=c[j>>2]|0;if((o|0)<=-1){if(!r){l=i;return}}else{k=c[a>>2]|0;a=o;while(1){o=a+1|0;c[k+(a<<2)>>2]=c[(c[r+(o*12|0)>>2]|0)+(c[k+(o<<2)>>2]<<2)>>2];if((a|0)>0)a=a+-1|0;else break}}a=c[p>>2]|0;if((a|0)==(r|0))S=r;else{k=a;while(1){a=k+-12|0;c[p>>2]=a;o=c[a>>2]|0;if(!o)T=a;else{a=k+-8|0;t=c[a>>2]|0;if((t|0)!=(o|0))c[a>>2]=t+(~((t+-4-o|0)>>>2)<<2);tB(o);T=c[p>>2]|0}if((T|0)==(r|0))break;else k=T}S=c[j>>2]|0}tB(S);l=i;return}function Pi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;c[a>>2]=0;e=a+4|0;c[e>>2]=0;c[a+8>>2]=0;if(!b)return;if(b>>>0>1073741823){Az(a);f=za(4)|0;AD(f);Xa(f|0,3080,250)}f=rB(b<<2)|0;c[e>>2]=f;c[a>>2]=f;g=f+(b<<2)|0;c[a+8>>2]=g;a=b;b=f;while(1){c[b>>2]=c[d>>2];a=a+-1|0;if(!a)break;else b=b+4|0}c[e>>2]=g;return}function Qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>3)+1|0;if(g>>>0>536870911){Az(a);i=c[a>>2]|0;j=c[d>>2]|0}else{i=f;j=e}e=a+8|0;f=(c[e>>2]|0)-i|0;k=f>>2;l=f>>3>>>0<268435455?(k>>>0<g>>>0?g:k):536870911;k=j-i>>3;do if(l)if(l>>>0>536870911){g=za(4)|0;AD(g);Xa(g|0,3080,250)}else{m=rB(l<<3)|0;break}else m=0;while(0);g=m+(k<<3)|0;h[g>>3]=+h[b>>3];b=j-i|0;j=g+(0-(b>>3)<<3)|0;if((b|0)>0)MD(j|0,i|0,b|0)|0;c[a>>2]=j;c[d>>2]=g+8;c[e>>2]=m+(l<<3);if(!i)return;tB(i);return}function Ri(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=((e-f|0)/12|0)+1|0;if(g>>>0>357913941){Az(a);h=c[a>>2]|0;i=c[d>>2]|0}else{h=f;i=e}e=a+8|0;f=((c[e>>2]|0)-h|0)/12|0;j=f<<1;k=f>>>0<178956970?(j>>>0<g>>>0?g:j):357913941;j=(i-h|0)/12|0;do if(k)if(k>>>0>357913941){h=za(4)|0;AD(h);Xa(h|0,3080,250)}else{l=rB(k*12|0)|0;break}else l=0;while(0);h=l+(j*12|0)|0;i=h;g=l+(k*12|0)|0;c[l+(j*12|0)+8>>2]=0;c[h>>2]=c[b>>2];k=b+4|0;c[l+(j*12|0)+4>>2]=c[k>>2];f=b+8|0;c[l+(j*12|0)+8>>2]=c[f>>2];c[f>>2]=0;c[k>>2]=0;c[b>>2]=0;b=h+12|0;k=c[a>>2]|0;f=c[d>>2]|0;if((f|0)==(k|0)){m=i;n=k;o=k}else{j=f;f=i;i=h;do{h=i+-12|0;l=j;j=j+-12|0;c[h>>2]=0;p=i+-8|0;c[p>>2]=0;c[i+-4>>2]=0;c[h>>2]=c[j>>2];h=l+-8|0;c[p>>2]=c[h>>2];p=l+-4|0;c[i+-4>>2]=c[p>>2];c[p>>2]=0;c[h>>2]=0;c[j>>2]=0;i=f+-12|0;f=i}while((j|0)!=(k|0));m=f;n=c[a>>2]|0;o=c[d>>2]|0}c[a>>2]=m;c[d>>2]=b;c[e>>2]=g;g=n;if((o|0)!=(g|0)){e=o;do{o=e;e=e+-12|0;b=c[e>>2]|0;if(b|0){d=o+-8|0;o=c[d>>2]|0;if((o|0)!=(b|0))c[d>>2]=o+(~((o+-4-b|0)>>>2)<<2);tB(b)}}while((e|0)!=(g|0))}if(!n)return;tB(n);return}function Si(a){a=a|0;var b=0;c[a>>2]=8028;b=c[a+12>>2]|0;if(b|0){tj(b);tB(b)}bk(a);return}function Ti(a){a=a|0;var b=0;c[a>>2]=8028;b=c[a+12>>2]|0;if(b|0){tj(b);tB(b)}bk(a);tB(a);return}function Ui(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0;e=l;l=l+16|0;f=e;g=c[a+12>>2]|0;GB(f,b);sj(g,f,d);LB(f);l=e;return}function Vi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a+12>>2]|0;GB(e,b);rj(f,e);LB(e);l=d;return}function Wi(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,28663,25);return}function Xi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;return nj(c[a+12>>2]|0,b,d,e)|0}function Yi(b){b=b|0;var d=0,e=0,f=0,g=0;d=c[b+12>>2]|0;c[d+52>>2]=0;a[d+56>>0]=1;b=c[d+36>>2]|0;e=c[d+32>>2]|0;f=e;if((b|0)!=(e|0)){g=b-e>>2;e=0;do{b=c[f+(e<<2)>>2]|0;c[b+8>>2]=0;c[b+12>>2]=0;e=e+1|0}while(e>>>0<g>>>0)}g=d+84|0;e=d+88|0;mj(g,c[e>>2]|0);c[d+92>>2]=0;c[g>>2]=e;c[e>>2]=0;e=c[d>>2]|0;ob[c[(c[e>>2]|0)+68>>2]&511](e);return}function Zi(a){a=a|0;return tk(a)|0}function _i(a){a=a|0;return rb[c[(c[a>>2]|0)+76>>2]&127](a)|0}function $i(a,b){a=a|0;b=b|0;jj(a,c[b+12>>2]|0);return}function aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f;h=c[b+12>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];ij(a,h,d,g);l=f;return}function bj(a,b){a=a|0;b=b|0;cj(a,c[b+12>>2]|0);return}function cj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;e=l;l=l+32|0;f=e+24|0;g=e+12|0;h=e;i=b+4|0;c[i>>2]=0;j=b+8|0;c[j>>2]=0;k=b+4|0;c[b>>2]=k;m=d+32|0;n=d+24|0;while(1){o=c[c[m>>2]>>2]|0;p=c[o+8>>2]|0;q=c[o+12>>2]|0;r=(p|0)>(q|0);if(!r)if((p|0)<(q|0))s=p-q+(c[o+16>>2]|0)|0;else s=0;else s=p-q|0;t=c[n>>2]|0;if((s|0)<(t|0))break;dj(d,b)}if(!r){if((p|0)<(q|0)){u=p-q+(c[o+16>>2]|0)|0;v=12}}else{u=p-q|0;v=12}if((v|0)==12?(u|0)>0:0){u=d+28|0;r=c[u>>2]|0;a:do if(r|0){s=0;w=r;x=o;y=p;z=q;A=t;while(1){B=x+8|0;if((y|0)<=(z|0))if((y|0)<(z|0))C=y-z+(c[x+16>>2]|0)|0;else C=0;else C=y-z|0;D=A-C|0;E=x+16|0;F=c[E>>2]|0;G=z-y+F|0;H=(G|0)>(F|0)?0-F|0:0;I=G+-1+H|0;G=(I|0)<(D|0)?I:D;if(!G)J=w;else{I=F-y|0;K=x+4|0;L=(c[K>>2]|0)+(y<<2)|0;if((G|0)>(I|0)){if((I|0)>0)HD(L|0,0,I<<2|0)|0;M=G-I|0;if((M|0)>0)HD(c[K>>2]|0,0,M<<2|0)|0}else if((G|0)>0){M=y-z-F-H|0;H=~D;HD(L|0,0,-4-(((M|0)>(H|0)?M:H)<<2)|0)|0}H=c[E>>2]|0;E=G+y|0;while(1)if((E|0)<(H|0))break;else E=E-H|0;c[B>>2]=E;J=c[u>>2]|0}H=s+1|0;if(H>>>0>=J>>>0)break a;G=c[(c[m>>2]|0)+(H<<2)>>2]|0;s=H;w=J;x=G;y=c[G+8>>2]|0;z=c[G+12>>2]|0;A=c[n>>2]|0}}while(0);dj(d,b)}n=c[d>>2]|0;pb[c[(c[n>>2]|0)+100>>2]&127](g,n);n=c[g>>2]|0;J=g+4|0;if((n|0)==(J|0)){N=c[J>>2]|0;jd(g,N);l=e;return}m=h+4|0;u=d+60|0;C=k;t=n;q=n;while(1){n=c[t+16>>2]|0;ej(h,t+20|0);p=c[m>>2]|0;o=c[h>>2]|0;r=o;if((p|0)==(o|0)){O=p;P=r}else{p=0;o=r;while(1){if((c[(c[u>>2]|0)+(n*100|0)+88>>2]|0)==1)fj(d,n,o+(p*48|0)|0);r=c[k>>2]|0;do if(r){A=r;while(1){z=c[A+16>>2]|0;if((n|0)<(z|0)){y=c[A>>2]|0;if(!y){v=54;break}else Q=y}else{if((z|0)>=(n|0)){v=59;break}R=A+4|0;z=c[R>>2]|0;if(!z){v=58;break}else Q=z}A=Q}if((v|0)==54){v=0;c[f>>2]=A;S=A;T=A;break}else if((v|0)==58){v=0;c[f>>2]=A;S=A;T=R;break}else if((v|0)==59){v=0;c[f>>2]=A;S=A;T=f;break}}else{c[f>>2]=k;S=C;T=k}while(0);r=c[T>>2]|0;if(!r){E=rB(32)|0;c[E+16>>2]=n;c[E+20>>2]=0;c[E+24>>2]=0;c[E+28>>2]=0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=S;c[T>>2]=E;B=c[c[b>>2]>>2]|0;if(!B)U=E;else{c[b>>2]=B;U=c[T>>2]|0}gc(c[i>>2]|0,U);c[j>>2]=(c[j>>2]|0)+1;V=E}else V=r;r=c[h>>2]|0;E=r+(p*48|0)|0;B=V+24|0;z=c[B>>2]|0;if((z|0)==(c[V+28>>2]|0))gj(V+20|0,E);else{a[z>>0]=a[E>>0]|0;c[z+4>>2]=c[r+(p*48|0)+4>>2];c[z+8>>2]=c[r+(p*48|0)+8>>2];a[z+12>>0]=a[r+(p*48|0)+12>>0]|0;c[z+16>>2]=c[r+(p*48|0)+16>>2];c[z+20>>2]=c[r+(p*48|0)+20>>2];Xd(z+24|0,r+(p*48|0)+24|0);GB(z+36|0,r+(p*48|0)+36|0);c[B>>2]=(c[B>>2]|0)+48}p=p+1|0;B=c[m>>2]|0;r=c[h>>2]|0;z=r;if(p>>>0>=((B-r|0)/48|0)>>>0){O=B;P=z;break}else o=z}}o=O;if(P|0){if((o|0)==(P|0))W=o;else{p=o;do{c[m>>2]=p+-48;LB(p+-12|0);o=c[p+-24>>2]|0;if(o|0){n=p+-20|0;z=c[n>>2]|0;if((z|0)!=(o|0))c[n>>2]=z+(~((z+-4-o|0)>>>2)<<2);tB(o)}p=c[m>>2]|0}while((p|0)!=(P|0));W=c[h>>2]|0}tB(W)}p=c[q+4>>2]|0;if(!p){o=q;while(1){z=c[o+8>>2]|0;if((c[z>>2]|0)==(o|0)){X=z;break}else o=z}}else{o=p;while(1){z=c[o>>2]|0;if(!z){X=o;break}else o=z}}if((X|0)==(J|0))break;else{t=X;q=X}}N=c[J>>2]|0;jd(g,N);l=e;return}function dj(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=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;e=l;l=l+48|0;f=e+40|0;h=e+24|0;i=e+12|0;j=e+32|0;k=e;m=b+28|0;if(!(c[m>>2]|0))n=b+44|0;else{o=b+32|0;p=b+44|0;q=b+24|0;r=0;while(1){s=c[(c[o>>2]|0)+(r<<2)>>2]|0;t=c[(c[p>>2]|0)+(r<<2)>>2]|0;u=c[q>>2]|0;v=c[s+8>>2]|0;w=s+12|0;x=c[w>>2]|0;if((v|0)<=(x|0))if((v|0)<(x|0))y=v-x+(c[s+16>>2]|0)|0;else y=0;else y=v-x|0;if((u|0)>(y|0)){HD(t+(y<<2)|0,0,u-y<<2|0)|0;z=y}else z=u;a:do if(z|0){u=c[w>>2]|0;x=(c[s+16>>2]|0)-u|0;v=c[s+4>>2]|0;A=v+(u<<2)|0;if((z|0)<=(x|0)){if((z|0)>0)B=0;else break;while(1){c[t+(B<<2)>>2]=c[A+(B<<2)>>2];B=B+1|0;if((B|0)>=(z|0))break a}}if((x|0)>0){u=0;do{c[t+(u<<2)>>2]=c[A+(u<<2)>>2];u=u+1|0}while((u|0)!=(x|0))}u=t+(x<<2)|0;A=z-x|0;if((A|0)>0){C=0;do{c[u+(C<<2)>>2]=c[v+(C<<2)>>2];C=C+1|0}while((C|0)<(A|0))}}while(0);r=r+1|0;if(r>>>0>=(c[m>>2]|0)>>>0){n=p;break}}}p=b+52|0;Ek(h,c[p>>2]|0,~~(+g[b+48>>2]+.5));r=c[b>>2]|0;z=c[(c[r>>2]|0)+96>>2]|0;B=c[n>>2]|0;c[j>>2]=c[h>>2];n=h+4|0;c[j+4>>2]=c[n>>2];yb[z&31](i,r,B,j);j=c[b>>2]|0;b:do if((j|0)!=0?(B=NC(j,1072,1144,0)|0,(B|0)!=0):0){r=B;while(1){D=NC(r,1144,1120,0)|0;if(D|0)break;B=c[r+8>>2]|0;if(!B){E=0;F=0;break b}r=NC(B,1072,1144,0)|0;if(!r){E=0;F=0;break b}}Zj(f,D);E=c[f>>2]|0;F=c[f+4>>2]|0}else{E=0;F=0}while(0);D=c[i>>2]|0;j=i+4|0;if((D|0)!=(j|0)){r=b+72|0;B=b+76|0;z=B;y=b+76|0;q=b+80|0;o=k+4|0;t=b+60|0;s=d+4|0;w=s;A=d+4|0;C=d+8|0;v=f+4|0;u=D;x=D;while(1){D=c[u+16>>2]|0;G=c[B>>2]|0;do if(G){H=G;while(1){I=c[H+16>>2]|0;if((D|0)<(I|0)){J=c[H>>2]|0;if(!J){K=33;break}else L=J}else{if((I|0)>=(D|0)){K=38;break}M=H+4|0;I=c[M>>2]|0;if(!I){K=37;break}else L=I}H=L}if((K|0)==33){K=0;c[f>>2]=H;N=H;O=H;break}else if((K|0)==37){K=0;c[f>>2]=H;N=H;O=M;break}else if((K|0)==38){K=0;c[f>>2]=H;N=H;O=f;break}}else{c[f>>2]=B;N=z;O=B}while(0);G=c[O>>2]|0;if(!G){I=rB(24)|0;c[I+16>>2]=D;a[I+20>>0]=0;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=N;c[O>>2]=I;J=c[c[r>>2]>>2]|0;if(!J)P=I;else{c[r>>2]=J;P=c[O>>2]|0}gc(c[y>>2]|0,P);c[q>>2]=(c[q>>2]|0)+1;Q=I}else Q=G;if(!(a[Q+20>>0]|0)){G=u+20|0;I=u+24|0;J=c[G>>2]|0;if((c[I>>2]|0)!=(J|0)){R=0;S=J;do{J=S;T=c[s>>2]|0;do if(T){U=T;while(1){V=c[U+16>>2]|0;if((D|0)<(V|0)){W=c[U>>2]|0;if(!W){K=82;break}else X=W}else{if((V|0)>=(D|0)){K=87;break}Y=U+4|0;V=c[Y>>2]|0;if(!V){K=86;break}else X=V}U=X}if((K|0)==82){K=0;c[f>>2]=U;Z=U;_=U;break}else if((K|0)==86){K=0;c[f>>2]=U;Z=U;_=Y;break}else if((K|0)==87){K=0;c[f>>2]=U;Z=U;_=f;break}}else{c[f>>2]=s;Z=w;_=s}while(0);T=c[_>>2]|0;if(!T){H=rB(32)|0;c[H+16>>2]=D;c[H+20>>2]=0;c[H+24>>2]=0;c[H+28>>2]=0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=Z;c[_>>2]=H;V=c[c[d>>2]>>2]|0;if(!V)$=H;else{c[d>>2]=V;$=c[_>>2]|0}gc(c[A>>2]|0,$);c[C>>2]=(c[C>>2]|0)+1;aa=H;ba=c[G>>2]|0}else{aa=T;ba=J}T=ba+(R*48|0)|0;H=aa+24|0;V=c[H>>2]|0;if((V|0)==(c[aa+28>>2]|0))gj(aa+20|0,T);else{a[V>>0]=a[T>>0]|0;c[V+4>>2]=c[ba+(R*48|0)+4>>2];c[V+8>>2]=c[ba+(R*48|0)+8>>2];a[V+12>>0]=a[ba+(R*48|0)+12>>0]|0;c[V+16>>2]=c[ba+(R*48|0)+16>>2];c[V+20>>2]=c[ba+(R*48|0)+20>>2];Xd(V+24|0,ba+(R*48|0)+24|0);GB(V+36|0,ba+(R*48|0)+36|0);c[H>>2]=(c[H>>2]|0)+48}R=R+1|0;S=c[G>>2]|0}while(R>>>0<(((c[I>>2]|0)-S|0)/48|0)>>>0)}}else{ej(k,u+20|0);S=c[o>>2]|0;I=c[k>>2]|0;R=I;c:do if((S|0)==(I|0)){ca=S;da=R}else{G=0;H=R;while(1){switch(c[(c[t>>2]|0)+(D*100|0)+88>>2]|0){case 0:{Bk(f,(c[h>>2]|0)+E|0,(c[n>>2]|0)+F|0);V=c[k>>2]|0;c[V+(G*48|0)+4>>2]=c[f>>2];c[V+(G*48|0)+8>>2]=c[v>>2];a[V+(G*48|0)>>0]=1;break}case 1:{fj(b,D,H+(G*48|0)|0);break}default:{}}V=c[s>>2]|0;do if(V){T=V;while(1){W=c[T+16>>2]|0;if((D|0)<(W|0)){ea=c[T>>2]|0;if(!ea){K=64;break}else fa=ea}else{if((W|0)>=(D|0)){K=69;break}ga=T+4|0;W=c[ga>>2]|0;if(!W){K=68;break}else fa=W}T=fa}if((K|0)==64){K=0;c[f>>2]=T;ha=T;ia=T;break}else if((K|0)==68){K=0;c[f>>2]=T;ha=T;ia=ga;break}else if((K|0)==69){K=0;c[f>>2]=T;ha=T;ia=f;break}}else{c[f>>2]=s;ha=w;ia=s}while(0);V=c[ia>>2]|0;if(!V){U=rB(32)|0;c[U+16>>2]=D;c[U+20>>2]=0;c[U+24>>2]=0;c[U+28>>2]=0;c[U>>2]=0;c[U+4>>2]=0;c[U+8>>2]=ha;c[ia>>2]=U;W=c[c[d>>2]>>2]|0;if(!W)ja=U;else{c[d>>2]=W;ja=c[ia>>2]|0}gc(c[A>>2]|0,ja);c[C>>2]=(c[C>>2]|0)+1;ka=U}else ka=V;V=c[k>>2]|0;U=V+(G*48|0)|0;W=ka+24|0;ea=c[W>>2]|0;if((ea|0)==(c[ka+28>>2]|0))gj(ka+20|0,U);else{a[ea>>0]=a[U>>0]|0;c[ea+4>>2]=c[V+(G*48|0)+4>>2];c[ea+8>>2]=c[V+(G*48|0)+8>>2];a[ea+12>>0]=a[V+(G*48|0)+12>>0]|0;c[ea+16>>2]=c[V+(G*48|0)+16>>2];c[ea+20>>2]=c[V+(G*48|0)+20>>2];Xd(ea+24|0,V+(G*48|0)+24|0);GB(ea+36|0,V+(G*48|0)+36|0);c[W>>2]=(c[W>>2]|0)+48}G=G+1|0;W=c[o>>2]|0;V=c[k>>2]|0;ea=V;if(G>>>0>=((W-V|0)/48|0)>>>0){ca=W;da=ea;break c}else H=ea}}while(0);D=ca;if(da|0){if((D|0)==(da|0))la=D;else{R=D;do{c[o>>2]=R+-48;LB(R+-12|0);D=c[R+-24>>2]|0;if(D|0){S=R+-20|0;I=c[S>>2]|0;if((I|0)!=(D|0))c[S>>2]=I+(~((I+-4-D|0)>>>2)<<2);tB(D)}R=c[o>>2]|0}while((R|0)!=(da|0));la=c[k>>2]|0}tB(la)}}R=c[x+4>>2]|0;if(!R){D=x;while(1){I=c[D+8>>2]|0;if((c[I>>2]|0)==(D|0)){ma=I;break}else D=I}}else{D=R;while(1){I=c[D>>2]|0;if(!I){ma=D;break}else D=I}}if((ma|0)==(j|0))break;else{u=ma;x=ma}}}ma=c[m>>2]|0;if(!ma){na=c[b+20>>2]|0;oa=c[p>>2]|0;pa=oa+na|0;c[p>>2]=pa;qa=c[j>>2]|0;jd(i,qa);l=e;return}m=c[b+32>>2]|0;x=c[b+20>>2]|0;b=0;do{u=c[m+(b<<2)>>2]|0;la=c[u+8>>2]|0;k=u+12|0;da=c[k>>2]|0;if((la|0)<=(da|0))if((la|0)<(da|0))ra=la-da+(c[u+16>>2]|0)|0;else ra=0;else ra=la-da|0;la=(ra|0)<(x|0)?ra:x;if(la|0){o=c[u+16>>2]|0;u=la+da|0;while(1)if((u|0)<(o|0))break;else u=u-o|0;c[k>>2]=u}b=b+1|0}while(b>>>0<ma>>>0);na=x;oa=c[p>>2]|0;pa=oa+na|0;c[p>>2]=pa;qa=c[j>>2]|0;jd(i,qa);l=e;return}function ej(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;c[b>>2]=0;e=b+4|0;c[e>>2]=0;c[b+8>>2]=0;f=d+4|0;g=(c[f>>2]|0)-(c[d>>2]|0)|0;h=(g|0)/48|0;if(!g)return;if(h>>>0>89478485){Az(b);i=za(4)|0;AD(i);Xa(i|0,3080,250)}i=rB(g)|0;c[e>>2]=i;c[b>>2]=i;c[b+8>>2]=i+(h*48|0);h=c[d>>2]|0;d=c[f>>2]|0;if((h|0)==(d|0))return;f=h;h=i;do{a[h>>0]=a[f>>0]|0;c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];a[h+12>>0]=a[f+12>>0]|0;c[h+16>>2]=c[f+16>>2];c[h+20>>2]=c[f+20>>2];Xd(h+24|0,f+24|0);GB(h+36|0,f+36|0);f=f+48|0;h=(c[e>>2]|0)+48|0;c[e>>2]=h}while((f|0)!=(d|0));return}function fj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;f=l;l=l+16|0;h=f+8|0;i=f;j=+g[(c[b+60>>2]|0)+(d*100|0)+92>>2];if(j==0.0)k=+g[b+48>>2]/+((c[b+20>>2]|0)>>>0);else k=j;j=k;if(!(a[e>>0]|0)){m=b+88|0;n=m;o=m;p=b+84|0}else{m=~~(j*(+(c[e+4>>2]|0)+ +(c[e+8>>2]|0)/1.0e9)+.5);q=b+84|0;r=b+88|0;s=c[r>>2]|0;do if(s){t=s;while(1){u=c[t+16>>2]|0;if((u|0)>(d|0)){v=c[t>>2]|0;if(!v){w=8;break}else x=v}else{if((u|0)>=(d|0)){w=13;break}y=t+4|0;u=c[y>>2]|0;if(!u){w=12;break}else x=u}t=x}if((w|0)==8){c[h>>2]=t;z=t;A=t;break}else if((w|0)==12){c[h>>2]=t;z=t;A=y;break}else if((w|0)==13){c[h>>2]=t;z=t;A=h;break}}else{c[h>>2]=r;z=r;A=r}while(0);y=c[A>>2]|0;if(!y){x=rB(24)|0;c[x+16>>2]=d;c[x+20>>2]=0;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=z;c[A>>2]=x;z=c[c[q>>2]>>2]|0;if(!z)B=x;else{c[q>>2]=z;B=c[A>>2]|0}gc(c[b+88>>2]|0,B);B=b+92|0;c[B>>2]=(c[B>>2]|0)+1;C=x}else C=y;c[C+20>>2]=m;n=r;o=r;p=q}q=c[o>>2]|0;do if(q){r=q;while(1){m=c[r+16>>2]|0;if((m|0)>(d|0)){C=c[r>>2]|0;if(!C){w=23;break}else D=C}else{if((m|0)>=(d|0)){w=28;break}E=r+4|0;m=c[E>>2]|0;if(!m){w=27;break}else D=m}r=D}if((w|0)==23){c[h>>2]=r;F=r;G=r;break}else if((w|0)==27){c[h>>2]=r;F=r;G=E;break}else if((w|0)==28){c[h>>2]=r;F=r;G=h;break}}else{c[h>>2]=n;F=n;G=b+88|0}while(0);E=c[G>>2]|0;if(!E){D=rB(24)|0;c[D+16>>2]=d;c[D+20>>2]=0;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=F;c[G>>2]=D;F=c[c[p>>2]>>2]|0;if(!F)H=D;else{c[p>>2]=F;H=c[G>>2]|0}gc(c[b+88>>2]|0,H);H=b+92|0;c[H>>2]=(c[H>>2]|0)+1;I=D}else I=E;Ck(i,+(c[I+20>>2]|0)/j);c[e+4>>2]=c[i>>2];c[e+8>>2]=c[i+4>>2];a[e>>0]=1;e=c[o>>2]|0;do if(e){i=e;while(1){I=c[i+16>>2]|0;if((I|0)>(d|0)){E=c[i>>2]|0;if(!E){w=37;break}else J=E}else{if((I|0)>=(d|0)){w=42;break}K=i+4|0;I=c[K>>2]|0;if(!I){w=41;break}else J=I}i=J}if((w|0)==37){c[h>>2]=i;L=i;M=i;break}else if((w|0)==41){c[h>>2]=i;L=i;M=K;break}else if((w|0)==42){c[h>>2]=i;L=i;M=h;break}}else{c[h>>2]=n;L=n;M=b+88|0}while(0);K=c[M>>2]|0;if(!K){J=rB(24)|0;c[J+16>>2]=d;c[J+20>>2]=0;c[J>>2]=0;c[J+4>>2]=0;c[J+8>>2]=L;c[M>>2]=J;L=c[c[p>>2]>>2]|0;if(!L)N=J;else{c[p>>2]=L;N=c[M>>2]|0}gc(c[b+88>>2]|0,N);N=b+92|0;c[N>>2]=(c[N>>2]|0)+1;O=J;P=c[o>>2]|0}else{O=K;P=e}e=(c[O+20>>2]|0)+1|0;do if(P){O=P;while(1){K=c[O+16>>2]|0;if((K|0)>(d|0)){o=c[O>>2]|0;if(!o){w=51;break}else Q=o}else{if((K|0)>=(d|0)){w=56;break}R=O+4|0;K=c[R>>2]|0;if(!K){w=55;break}else Q=K}O=Q}if((w|0)==51){c[h>>2]=O;S=O;T=O;break}else if((w|0)==55){c[h>>2]=O;S=O;T=R;break}else if((w|0)==56){c[h>>2]=O;S=O;T=h;break}}else{c[h>>2]=n;S=n;T=b+88|0}while(0);n=c[T>>2]|0;if(n|0){U=n;V=U+20|0;c[V>>2]=e;l=f;return}n=rB(24)|0;c[n+16>>2]=d;c[n+20>>2]=0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=S;c[T>>2]=n;S=c[c[p>>2]>>2]|0;if(!S)W=n;else{c[p>>2]=S;W=c[T>>2]|0}gc(c[b+88>>2]|0,W);W=b+92|0;c[W>>2]=(c[W>>2]|0)+1;U=n;V=U+20|0;c[V>>2]=e;l=f;return}function gj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+32|0;f=e;g=b+4|0;h=c[g>>2]|0;i=c[b>>2]|0;j=((h-i|0)/48|0)+1|0;if(j>>>0>89478485){Az(b);k=c[b>>2]|0;m=c[g>>2]|0}else{k=i;m=h}h=((c[b+8>>2]|0)-k|0)/48|0;i=h<<1;g=h>>>0<44739242?(i>>>0<j>>>0?j:i):89478485;i=(m-k|0)/48|0;c[f+12>>2]=0;c[f+16>>2]=b+8;do if(g)if(g>>>0>89478485){k=za(4)|0;AD(k);Xa(k|0,3080,250)}else{n=rB(g*48|0)|0;break}else n=0;while(0);c[f>>2]=n;k=n+(i*48|0)|0;m=f+8|0;c[m>>2]=k;j=f+4|0;c[j>>2]=k;c[f+12>>2]=n+(g*48|0);a[k>>0]=a[d>>0]|0;c[n+(i*48|0)+4>>2]=c[d+4>>2];c[n+(i*48|0)+8>>2]=c[d+8>>2];a[n+(i*48|0)+12>>0]=a[d+12>>0]|0;c[n+(i*48|0)+16>>2]=c[d+16>>2];c[n+(i*48|0)+20>>2]=c[d+20>>2];Xd(n+(i*48|0)+24|0,d+24|0);GB(n+(i*48|0)+36|0,d+36|0);c[m>>2]=k+48;hj(b,f);b=c[j>>2]|0;j=c[m>>2]|0;if((j|0)!=(b|0)){k=j;do{c[m>>2]=k+-48;LB(k+-12|0);j=c[k+-24>>2]|0;if(j|0){d=k+-20|0;i=c[d>>2]|0;if((i|0)!=(j|0))c[d>>2]=i+(~((i+-4-j|0)>>>2)<<2);tB(j)}k=c[m>>2]|0}while((k|0)!=(b|0))}b=c[f>>2]|0;if(!b){l=e;return}tB(b);l=e;return}function hj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=c[b>>2]|0;f=b+4|0;g=c[f>>2]|0;h=d+4|0;if((g|0)==(e|0)){i=h;j=b;k=c[h>>2]|0;l=e}else{m=g;g=c[h>>2]|0;do{n=m;m=m+-48|0;a[g+-48>>0]=a[m>>0]|0;c[g+-44>>2]=c[n+-44>>2];c[g+-40>>2]=c[n+-40>>2];a[g+-36>>0]=a[n+-36>>0]|0;c[g+-32>>2]=c[n+-32>>2];c[g+-28>>2]=c[n+-28>>2];Xd(g+-24|0,n+-24|0);GB(g+-12|0,n+-12|0);g=(c[h>>2]|0)+-48|0;c[h>>2]=g}while((m|0)!=(e|0));i=h;j=b;k=g;l=c[b>>2]|0}c[j>>2]=k;c[i>>2]=l;l=d+8|0;k=c[f>>2]|0;c[f>>2]=c[l>>2];c[l>>2]=k;k=b+8|0;b=d+12|0;l=c[k>>2]|0;c[k>>2]=c[b>>2];c[b>>2]=l;c[d>>2]=c[i>>2];return}function ij(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0;h=l;l=l+16|0;i=h+12|0;j=h;if(!(c[d+4>>2]|0)){k=xe(40212,28126,71)|0;qr(i,k+(c[(c[k>>2]|0)+-12>>2]|0)|0);m=Xs(i,40916)|0;n=zb[c[(c[m>>2]|0)+28>>2]&63](m,10)|0;Ys(i);Hr(k,n)|0;vr(k)|0;c[b+4>>2]=0;c[b+8>>2]=0;c[b>>2]=b+4;l=h;return}c[j+4>>2]=0;k=j+8|0;c[k>>2]=0;n=j+4|0;c[j>>2]=n;m=d+56|0;if(a[m>>0]|0){c[d+52>>2]=Dk(f,~~(+g[d+48>>2]+.5))|0;a[m>>0]=0}m=d+28|0;f=c[m>>2]|0;o=d+32|0;if(!f)p=d+24|0;else{q=d+8|0;r=d+20|0;s=d+24|0;t=0;u=f;while(1){f=c[(c[o>>2]|0)+(t<<2)>>2]|0;v=c[e+(t<<2)>>2]|0;w=c[q>>2]|0;x=f+8|0;y=c[x>>2]|0;z=c[f+16>>2]|0;A=(c[f+12>>2]|0)-y+z|0;B=A+-1+((A|0)>(z|0)?0-z|0:0)|0;A=(B|0)<(w|0);C=A?B:w;if(C|0){w=z-y|0;B=c[f+4>>2]|0;f=B+(y<<2)|0;if((C|0)>(w|0)){if((w|0)>0){D=0;do{c[f+(D<<2)>>2]=c[v+(D<<2)>>2];D=D+1|0}while((D|0)!=(w|0))}D=C-w|0;E=v+(w<<2)|0;if((D|0)>0){F=0;do{c[B+(F<<2)>>2]=c[E+(F<<2)>>2];F=F+1|0}while((F|0)<(D|0))}}else if((C|0)>0){D=0;do{c[f+(D<<2)>>2]=c[v+(D<<2)>>2];D=D+1|0}while((D|0)<(C|0))}D=C+y|0;while(1)if((D|0)<(z|0))break;else D=D-z|0;c[x>>2]=D}if((t|0)==0&A){z=xe(Dr(xe(xe(40212,28198,48)|0,28247,23)|0,C)|0,28271,4)|0;y=xe(Er(z,c[q>>2]|0)|0,28276,37)|0;z=xe(Er(y,c[r>>2]|0)|0,28314,13)|0;y=xe(Er(z,c[s>>2]|0)|0,28328,1)|0;qr(i,y+(c[(c[y>>2]|0)+-12>>2]|0)|0);z=Xs(i,40916)|0;v=zb[c[(c[z>>2]|0)+28>>2]&63](z,10)|0;Ys(i);Hr(y,v)|0;vr(y)|0;G=c[m>>2]|0}else G=u;t=t+1|0;if(t>>>0>=G>>>0){p=s;break}else u=G}}while(1){G=c[c[o>>2]>>2]|0;u=c[G+8>>2]|0;s=c[G+12>>2]|0;if((u|0)<=(s|0))if((u|0)<(s|0))H=u-s+(c[G+16>>2]|0)|0;else H=0;else H=u-s|0;if((H|0)<(c[p>>2]|0))break;dj(d,j)}c[b>>2]=c[j>>2];d=c[j+4>>2]|0;c[b+4>>2]=d;p=c[k>>2]|0;c[b+8>>2]=p;H=b+4|0;if(!p){c[b>>2]=H;I=d}else{c[d+8>>2]=H;c[j>>2]=n;c[n>>2]=0;c[k>>2]=0;I=0}jd(j,I);l=h;return}function jj(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0;e=l;l=l+16|0;f=e;h=d+60|0;i=d+64|0;if((c[h>>2]|0)==(c[i>>2]|0)){j=c[d>>2]|0;pb[c[(c[j>>2]|0)+92>>2]&127](f,j);gd(h);c[h>>2]=c[f>>2];j=f+4|0;c[i>>2]=c[j>>2];i=f+8|0;c[d+68>>2]=c[i>>2];c[i>>2]=0;c[j>>2]=0;c[f>>2]=0;bc(f)}kj(b,h);h=b+4|0;j=c[h>>2]|0;i=c[b>>2]|0;if((j-i|0)<=0){l=e;return}k=d+48|0;m=d+20|0;n=d+72|0;o=d+76|0;p=o;q=d+76|0;r=d+80|0;d=j;j=i;i=0;while(1){s=j;t=s+(i*100|0)+88|0;switch(c[t>>2]|0){case 0:{c[t>>2]=1;g[s+(i*100|0)+92>>2]=+g[k>>2]/+((c[m>>2]|0)>>>0);t=c[o>>2]|0;do if(t){u=t;while(1){v=c[u+16>>2]|0;if((i|0)<(v|0)){w=c[u>>2]|0;if(!w){x=10;break}else y=w}else{if((v|0)>=(i|0)){x=15;break}z=u+4|0;v=c[z>>2]|0;if(!v){x=14;break}else y=v}u=y}if((x|0)==10){x=0;c[f>>2]=u;A=u;B=u;break}else if((x|0)==14){x=0;c[f>>2]=u;A=u;B=z;break}else if((x|0)==15){x=0;c[f>>2]=u;A=u;B=f;break}}else{c[f>>2]=o;A=p;B=o}while(0);t=c[B>>2]|0;if(!t){v=rB(24)|0;c[v+16>>2]=i;a[v+20>>0]=0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=A;c[B>>2]=v;w=c[c[n>>2]>>2]|0;if(!w)C=v;else{c[n>>2]=w;C=c[B>>2]|0}gc(c[q>>2]|0,C);c[r>>2]=(c[r>>2]|0)+1;D=v}else D=t;E=D;F=1;x=54;break}case 1:{t=s+(i*100|0)+92|0;if(+g[t>>2]==0.0)g[t>>2]=+g[k>>2]/+((c[m>>2]|0)>>>0);t=c[o>>2]|0;do if(t){v=t;while(1){w=c[v+16>>2]|0;if((i|0)<(w|0)){G=c[v>>2]|0;if(!G){x=27;break}else H=G}else{if((w|0)>=(i|0)){x=32;break}I=v+4|0;w=c[I>>2]|0;if(!w){x=31;break}else H=w}v=H}if((x|0)==27){x=0;c[f>>2]=v;J=v;K=v;break}else if((x|0)==31){x=0;c[f>>2]=v;J=v;K=I;break}else if((x|0)==32){x=0;c[f>>2]=v;J=v;K=f;break}}else{c[f>>2]=o;J=p;K=o}while(0);t=c[K>>2]|0;if(!t){s=rB(24)|0;c[s+16>>2]=i;a[s+20>>0]=0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=J;c[K>>2]=s;u=c[c[n>>2]>>2]|0;if(!u)L=s;else{c[n>>2]=u;L=c[K>>2]|0}gc(c[q>>2]|0,L);c[r>>2]=(c[r>>2]|0)+1;M=s}else M=t;E=M;F=1;x=54;break}case 2:{t=c[o>>2]|0;do if(t){s=t;while(1){u=c[s+16>>2]|0;if((i|0)<(u|0)){w=c[s>>2]|0;if(!w){x=42;break}else N=w}else{if((u|0)>=(i|0)){x=47;break}O=s+4|0;u=c[O>>2]|0;if(!u){x=46;break}else N=u}s=N}if((x|0)==42){x=0;c[f>>2]=s;P=s;Q=s;break}else if((x|0)==46){x=0;c[f>>2]=s;P=s;Q=O;break}else if((x|0)==47){x=0;c[f>>2]=s;P=s;Q=f;break}}else{c[f>>2]=o;P=p;Q=o}while(0);t=c[Q>>2]|0;if(!t){v=rB(24)|0;c[v+16>>2]=i;a[v+20>>0]=0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=P;c[Q>>2]=v;u=c[c[n>>2]>>2]|0;if(!u)R=v;else{c[n>>2]=u;R=c[Q>>2]|0}gc(c[q>>2]|0,R);c[r>>2]=(c[r>>2]|0)+1;S=v}else S=t;E=S;F=0;x=54;break}default:{T=j;U=d}}if((x|0)==54){x=0;a[E+20>>0]=F;T=c[b>>2]|0;U=c[h>>2]|0}i=i+1|0;if((i|0)>=((U-T|0)/100|0|0))break;else{d=U;j=T}}l=e;return}function kj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=(f|0)/100|0;if(!f)return;if(g>>>0>42949672){Az(a);h=za(4)|0;AD(h);Xa(h|0,3080,250)}h=rB(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g*100|0);g=c[b>>2]|0;b=c[e>>2]|0;if((g|0)==(b|0))return;e=g;g=h;do{lj(g,e);e=e+100|0;g=(c[d>>2]|0)+100|0;c[d>>2]=g}while((e|0)!=(b|0));return}function lj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;GB(b,d);GB(b+12|0,d+12|0);GB(b+24|0,d+24|0);GB(b+36|0,d+36|0);e=d+48|0;f=c[e+4>>2]|0;g=b+48|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;_b(b+56|0,d+56|0);f=b+68|0;b=d+68|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];a[f+28>>0]=a[b+28>>0]|0;return}function mj(a,b){a=a|0;b=b|0;if(!b)return;else{mj(a,c[b>>2]|0);mj(a,c[b+4>>2]|0);tB(b);return}}function nj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;f=l;l=l+16|0;g=f+12|0;h=f;if((d|0)!=(e|0)){i=xe(Er(xe(Er(xe(40212,28330,107)|0,d)|0,28438,14)|0,e)|0,28328,1)|0;qr(g,i+(c[(c[i>>2]|0)+-12>>2]|0)|0);e=Xs(g,40916)|0;j=zb[c[(c[e>>2]|0)+28>>2]&63](e,10)|0;Ys(g);Hr(i,j)|0;vr(i)|0;k=0;l=f;return k|0}i=a+28|0;c[i>>2]=b;c[a+4>>2]=d;b=a+8|0;c[b>>2]=d;d=a+20|0;c[d>>2]=0;j=a+24|0;c[j>>2]=0;e=c[a+12>>2]|0;if(!e)m=0;else{c[d>>2]=e;m=e}e=c[a+16>>2]|0;if(!e)n=1;else{c[j>>2]=e;n=0}if((m|0)==0&n){n=c[a>>2]|0;c[d>>2]=rb[c[(c[n>>2]|0)+80>>2]&127](n)|0;n=c[a>>2]|0;c[j>>2]=rb[c[(c[n>>2]|0)+76>>2]&127](n)|0}n=c[a>>2]|0;m=(rb[c[(c[n>>2]|0)+72>>2]&127](n)|0)==1;n=c[j>>2]|0;e=c[d>>2]|0;o=(e|0)==0;do if(!n)if(o){c[j>>2]=1024;c[d>>2]=m?512:1024;p=1024;break}else{q=e<<(m&1);c[j>>2]=q;r=q;s=15;break}else if(o){c[d>>2]=n>>>(m&1);p=n}else{r=n;s=15}while(0);if((s|0)==15)if(e>>>0>r>>>0){s=e<<(m&1);m=xe(40212,28453,55)|0;e=xe(Er(m,c[d>>2]|0)|0,28509,28)|0;m=Er(xe(Er(e,c[j>>2]|0)|0,28538,57)|0,s)|0;qr(g,m+(c[(c[m>>2]|0)+-12>>2]|0)|0);e=Xs(g,40916)|0;n=zb[c[(c[e>>2]|0)+28>>2]&63](e,10)|0;Ys(g);Hr(m,n)|0;vr(m)|0;c[j>>2]=s;p=s}else p=r;r=c[i>>2]|0;s=a+44|0;c[s>>2]=sB(r>>>0>1073741823?-1:r<<2)|0;if(!r){t=0;u=p}else{m=a+36|0;n=a+40|0;e=a+32|0;o=0;q=r;r=p;while(1){p=rB(20)|0;v=c[b>>2]|0;c[p>>2]=8140;w=r+1+v|0;c[p+4>>2]=sB(w>>>0>1073741823?-1:w<<2)|0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16>>2]=w;c[g>>2]=p;w=c[m>>2]|0;if(w>>>0<(c[n>>2]|0)>>>0){c[w>>2]=p;c[m>>2]=(c[m>>2]|0)+4;x=r;y=q}else{oj(e,g);x=c[j>>2]|0;y=c[i>>2]|0}p=sB(x>>>0>1073741823?-1:x<<2)|0;c[(c[s>>2]|0)+(o<<2)>>2]=p;o=o+1|0;if(o>>>0>=y>>>0){t=y;u=x;break}else{q=y;r=x}}}x=c[a>>2]|0;if(!(xb[c[(c[x>>2]|0)+64>>2]&15](x,t,c[d>>2]|0,u)|0)){k=0;l=f;return k|0}u=c[a+60>>2]|0;d=a+64|0;t=c[d>>2]|0;if((t|0)!=(u|0)){x=t;do{t=x+-100|0;c[d>>2]=t;r=x+-44|0;y=c[r>>2]|0;if(y|0){q=x+-40|0;o=c[q>>2]|0;if((o|0)==(y|0))z=y;else{s=o;do{o=s+-12|0;c[q>>2]=o;LB(o);s=c[q>>2]|0}while((s|0)!=(y|0));z=c[r>>2]|0}tB(z)}LB(x+-64|0);LB(x+-76|0);LB(x+-88|0);LB(t);x=c[d>>2]|0}while((x|0)!=(u|0))}jj(h,a);bc(h);k=1;l=f;return k|0}function oj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>2)+1|0;if(g>>>0>1073741823){Az(a);h=c[a>>2]|0;i=c[d>>2]|0}else{h=f;i=e}e=a+8|0;f=(c[e>>2]|0)-h|0;j=f>>1;k=f>>2>>>0<536870911?(j>>>0<g>>>0?g:j):1073741823;j=i-h>>2;do if(k)if(k>>>0>1073741823){g=za(4)|0;AD(g);Xa(g|0,3080,250)}else{l=rB(k<<2)|0;break}else l=0;while(0);g=l+(j<<2)|0;c[g>>2]=c[b>>2];b=i-h|0;i=g+(0-(b>>2)<<2)|0;if((b|0)>0)MD(i|0,h|0,b|0)|0;c[a>>2]=i;c[d>>2]=g+4;c[e>>2]=l+(k<<2);if(!h)return;tB(h);return}function pj(a){a=a|0;var b=0;c[a>>2]=8140;b=c[a+4>>2]|0;if(!b)return;uB(b);return}function qj(a){a=a|0;var b=0;c[a>>2]=8140;b=c[a+4>>2]|0;if(!b){tB(a);return}uB(b);tB(a);return}function rj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;d=l;l=l+32|0;e=d+12|0;f=d;g=c[a>>2]|0;h=c[(c[g>>2]|0)+56>>2]|0;GB(e,b);pb[h&127](g,e);LB(e);e=c[a+60>>2]|0;g=a+64|0;h=c[g>>2]|0;if((h|0)==(e|0)){jj(f,a);bc(f);l=d;return}else i=h;do{h=i+-100|0;c[g>>2]=h;b=i+-44|0;j=c[b>>2]|0;if(j|0){k=i+-40|0;m=c[k>>2]|0;if((m|0)==(j|0))n=j;else{o=m;do{m=o+-12|0;c[k>>2]=m;LB(m);o=c[k>>2]|0}while((o|0)!=(j|0));n=c[b>>2]|0}tB(n)}LB(i+-64|0);LB(i+-76|0);LB(i+-88|0);LB(h);i=c[g>>2]|0}while((i|0)!=(e|0));jj(f,a);bc(f);l=d;return}function sj(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;e=l;l=l+32|0;f=e+12|0;g=e;h=c[a>>2]|0;i=c[(c[h>>2]|0)+44>>2]|0;GB(f,b);jb[i&3](h,f,d);LB(f);f=c[a+60>>2]|0;h=a+64|0;i=c[h>>2]|0;if((i|0)==(f|0)){jj(g,a);bc(g);l=e;return}else j=i;do{i=j+-100|0;c[h>>2]=i;b=j+-44|0;k=c[b>>2]|0;if(k|0){m=j+-40|0;n=c[m>>2]|0;if((n|0)==(k|0))o=k;else{p=n;do{n=p+-12|0;c[m>>2]=n;LB(n);p=c[m>>2]|0}while((p|0)!=(k|0));o=c[b>>2]|0}tB(o)}LB(j+-64|0);LB(j+-76|0);LB(j+-88|0);LB(i);j=c[h>>2]|0}while((j|0)!=(f|0));jj(g,a);bc(g);l=e;return}function tj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+28|0;if(!(c[b>>2]|0))d=a+44|0;else{e=a+32|0;f=a+44|0;g=0;do{h=c[(c[e>>2]|0)+(g<<2)>>2]|0;if(h|0)ob[c[(c[h>>2]|0)+4>>2]&511](h);h=c[(c[f>>2]|0)+(g<<2)>>2]|0;if(h|0)uB(h);g=g+1|0}while(g>>>0<(c[b>>2]|0)>>>0);d=f}f=c[d>>2]|0;if(f|0)uB(f);mj(a+84|0,c[a+88>>2]|0);uj(a+72|0,c[a+76>>2]|0);bc(a+60|0);f=c[a+32>>2]|0;if(!f)return;d=a+36|0;a=c[d>>2]|0;if((a|0)!=(f|0))c[d>>2]=a+(~((a+-4-f|0)>>>2)<<2);tB(f);return}function uj(a,b){a=a|0;b=b|0;if(!b)return;else{uj(a,c[b>>2]|0);uj(a,c[b+4>>2]|0);tB(b);return}}function vj(a,b){a=a|0;b=b|0;var d=0;Ak(a,b);c[a>>2]=8028;d=rB(96)|0;wj(d,b,+g[a+4>>2]);c[a+12>>2]=d;return}function wj(b,d,e){b=b|0;d=d|0;e=+e;var f=0,h=0,i=0,j=0;f=l;l=l+16|0;h=f;c[b>>2]=d;d=b+48|0;i=b+4|0;j=i+44|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));g[d>>2]=e;c[b+52>>2]=0;a[b+56>>0]=1;c[b+60>>2]=0;c[b+64>>2]=0;c[b+68>>2]=0;c[b+76>>2]=0;c[b+80>>2]=0;c[b+72>>2]=b+76;c[b+88>>2]=0;c[b+92>>2]=0;c[b+84>>2]=b+88;jj(h,b);bc(h);l=f;return}function xj(a){a=a|0;var b=0;c[a>>2]=8156;b=c[a+12>>2]|0;if(b|0){Dj(b);tB(b)}bk(a);return}function yj(a){a=a|0;var b=0;c[a>>2]=8156;b=c[a+12>>2]|0;if(b|0){Dj(b);tB(b)}bk(a);tB(a);return}function zj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;return Cj(c[a+12>>2]|0,b,d,e)|0}function Aj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f;h=c[b+12>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Bj(a,h,d,g);l=f;return}function Bj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;f=l;l=l+32|0;h=f+24|0;i=f+16|0;j=f+8|0;k=f;m=c[b+8>>2]|0;n=c[b+12>>2]|0;if(m>>>0<n>>>0){switch(m|0){case 1:{o=b+24|0;p=0;do{c[(c[o>>2]|0)+(p<<2)>>2]=c[d>>2];p=p+1|0}while((p|0)!=(n|0));break}case 0:{q=6;break}default:{p=b+24|0;o=0;do{c[(c[p>>2]|0)+(o<<2)>>2]=c[d+(o<<2)>>2];o=o+1|0}while((o|0)!=(m|0));q=6}}if((q|0)==6){o=b+16|0;p=b+24|0;r=m;do{c[(c[p>>2]|0)+(r<<2)>>2]=c[(c[o>>2]|0)+(r-m<<2)>>2];r=r+1|0}while(r>>>0<n>>>0)}r=c[b>>2]|0;o=c[(c[r>>2]|0)+96>>2]|0;p=c[b+24>>2]|0;c[h>>2]=c[e>>2];c[h+4>>2]=c[e+4>>2];yb[o&31](a,r,p,h);l=f;return}if(m>>>0<=n>>>0){h=c[b>>2]|0;p=c[(c[h>>2]|0)+96>>2]|0;c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];yb[p&31](a,h,d,k);l=f;return}if((n|0)!=1){n=c[b>>2]|0;k=c[(c[n>>2]|0)+96>>2]|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];yb[k&31](a,n,d,j);l=f;return}j=c[b+4>>2]|0;n=(j|0)==0;if(!n){k=c[d>>2]|0;h=c[c[b+16>>2]>>2]|0;p=0;do{c[h+(p<<2)>>2]=c[k+(p<<2)>>2];p=p+1|0}while(p>>>0<j>>>0)}p=b+16|0;if(m>>>0>1){k=c[p>>2]|0;if(n)s=k;else{h=c[k>>2]|0;k=1;do{r=c[d+(k<<2)>>2]|0;o=0;do{t=h+(o<<2)|0;g[t>>2]=+g[r+(o<<2)>>2]+ +g[t>>2];o=o+1|0}while(o>>>0<j>>>0);k=k+1|0}while(k>>>0<m>>>0);q=21}}else q=21;if((q|0)==21){q=c[p>>2]|0;if(n)s=q;else{u=+(m>>>0);m=c[q>>2]|0;n=0;do{p=m+(n<<2)|0;g[p>>2]=+g[p>>2]/u;n=n+1|0}while(n>>>0<j>>>0);s=q}}q=c[b>>2]|0;b=c[(c[q>>2]|0)+96>>2]|0;c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];yb[b&31](a,q,s,i);l=f;return}function Cj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;c[a+4>>2]=e;f=c[a>>2]|0;g=rb[c[(c[f>>2]|0)+84>>2]&127](f)|0;f=c[a>>2]|0;h=rb[c[(c[f>>2]|0)+88>>2]&127](f)|0;c[a+8>>2]=b;do if(g>>>0>b>>>0){c[a+24>>2]=sB(g>>>0>1073741823?-1:g<<2)|0;if(b>>>0>1){f=g-b|0;i=sB(f>>>0>1073741823?-1:f<<2)|0;f=a+16|0;c[f>>2]=i;j=e>>>0>1073741823?-1:e<<2;if(!e){c[i>>2]=sB(j)|0;if((g|0)==1){k=g;break}else l=1;do{m=c[f>>2]|0;c[m+(l<<2)>>2]=sB(j)|0;l=l+1|0}while((l|0)!=(g|0));k=g}else{m=e<<2;c[i>>2]=sB(j)|0;HD(c[c[f>>2]>>2]|0,0,m|0)|0;if((g|0)==1){k=g;break}else n=1;do{o=c[f>>2]|0;c[o+(n<<2)>>2]=sB(j)|0;HD(c[(c[f>>2]|0)+(n<<2)>>2]|0,0,m|0)|0;n=n+1|0}while((n|0)!=(g|0));k=g}}else k=g}else if(h>>>0<b>>>0)if((h|0)==1){m=sB(4)|0;c[a+16>>2]=m;c[m>>2]=sB(e>>>0>1073741823?-1:e<<2)|0;k=1}else k=h;else k=b;while(0);c[a+12>>2]=k;b=c[a>>2]|0;return xb[c[(c[b>>2]|0)+64>>2]&15](b,k,d,e)|0}function Dj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;b=a+16|0;d=c[b>>2]|0;if(d|0){e=a+8|0;f=c[e>>2]|0;g=a+12|0;h=c[g>>2]|0;a:do if(f>>>0>h>>>0){i=c[d>>2]|0;if(i|0)uB(i)}else if((h|0)!=(f|0)){i=0;j=d;k=f;l=h;while(1){m=c[j+(i<<2)>>2]|0;if(!m){n=k;o=l}else{uB(m);n=c[e>>2]|0;o=c[g>>2]|0}m=i+1|0;if(m>>>0>=(o-n|0)>>>0)break a;i=m;j=c[b>>2]|0;k=n;l=o}}while(0);o=c[b>>2]|0;if(o|0)uB(o);c[b>>2]=0}b=a+20|0;o=c[b>>2]|0;if(o|0){n=a+8|0;g=c[n>>2]|0;if(g){e=0;h=o;f=g;while(1){g=c[h+(e<<2)>>2]|0;if(!g){p=h;q=f}else{uB(g);p=c[b>>2]|0;q=c[n>>2]|0}e=e+1|0;if(e>>>0>=q>>>0)break;else{h=p;f=q}}if(p|0){r=p;s=19}}else{r=o;s=19}if((s|0)==19)uB(r);c[b>>2]=0}b=a+24|0;a=c[b>>2]|0;if(!a)return;uB(a);c[b>>2]=0;return}function Ej(a,b){a=a|0;b=b|0;var d=0;Ak(a,b);c[a>>2]=8156;d=rB(28)|0;c[d>>2]=b;b=d+4|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[a+12>>2]=d;return}function Fj(a){a=a|0;var b=0;c[a>>2]=8268;b=c[a+12>>2]|0;if(b|0){Xj(b);tB(b)}bk(a);return}function Gj(a){a=a|0;var b=0;c[a>>2]=8268;b=c[a+12>>2]|0;if(b|0){Xj(b);tB(b)}bk(a);tB(a);return}function Hj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;return Sj(c[a+12>>2]|0,b,d,e)|0}function Ij(a){a=a|0;var b=0;b=c[a+12>>2]|0;c[b+40>>2]=0;a=c[b>>2]|0;ob[c[(c[a>>2]|0)+68>>2]&511](a);return}function Jj(a){a=a|0;return 0}function Kj(a){a=a|0;var b=0,d=0,e=0;b=c[a+12>>2]|0;a=c[b>>2]|0;d=rb[c[(c[a>>2]|0)+76>>2]&127](a)|0;a=c[b>>2]|0;if((rb[c[(c[a>>2]|0)+72>>2]&127](a)|0)!=1){e=d;return e|0}if(!d){e=1024;return e|0}e=Rj(0,d)|0;return e|0}function Lj(a){a=a|0;var b=0,d=0,e=0,f=0;b=c[a+12>>2]|0;a=c[b>>2]|0;d=rb[c[(c[a>>2]|0)+80>>2]&127](a)|0;if(d|0){e=d;return e|0}d=c[b>>2]|0;if((rb[c[(c[d>>2]|0)+72>>2]&127](d)|0)!=1){e=0;return e|0}d=c[b>>2]|0;a=rb[c[(c[d>>2]|0)+76>>2]&127](d)|0;d=c[b>>2]|0;if((rb[c[(c[d>>2]|0)+72>>2]&127](d)|0)==1)if(!a)f=1024;else f=Rj(0,a)|0;else f=a;e=f>>>1;return e|0}function Mj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;f=l;l=l+32|0;g=f+16|0;h=f+8|0;i=f;j=c[b+12>>2]|0;b=c[e>>2]|0;k=c[e+4>>2]|0;e=c[j>>2]|0;if(!(rb[c[(c[e>>2]|0)+72>>2]&127](e)|0)){e=c[j>>2]|0;m=c[(c[e>>2]|0)+96>>2]|0;c[g>>2]=b;c[g+4>>2]=k;yb[m&31](a,e,d,g);l=f;return}switch(c[j+36>>2]|0){case 2:case 0:{c[h>>2]=b;c[h+4>>2]=k;Nj(a,j,d,h);l=f;return}default:{c[i>>2]=b;c[i+4>>2]=k;Oj(a,j,d,i);l=f;return}}}function Nj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0;f=l;l=l+32|0;i=f+16|0;j=f+8|0;k=f;m=b+4|0;n=+g[m>>2];if(n>0.0)o=~~+GD(+n)>>>0;else o=1;p=b+36|0;if(!(c[p>>2]|0)){q=c[b>>2]|0;do if(rb[c[(c[q>>2]|0)+72>>2]&127](q)|0)if(((c[p>>2]|0)+-1|0)>>>0<2){r=c[9793]|0;c[j>>2]=r;s=c[9794]|0;c[j+4>>2]=s;t=r;u=s;break}else{Ek(j,(c[b+16>>2]|0)/2|0,~~(+g[m>>2]+.5));t=c[j>>2]|0;u=c[j+4>>2]|0;break}else{s=c[9793]|0;c[j>>2]=s;r=c[9794]|0;c[j+4>>2]=r;t=s;u=r}while(0);m=e+4|0;Bk(i,t+(c[e>>2]|0)|0,u+(c[m>>2]|0)|0);c[e>>2]=c[i>>2];c[m>>2]=c[i+4>>2];Bk(i,0,1);u=Dk(e,o)|0;t=i+4|0;Bk(j,(c[i>>2]|0)+(c[e>>2]|0)|0,(c[t>>2]|0)+(c[m>>2]|0)|0);if((u|0)<(Dk(j,o)|0)){Bk(j,(c[i>>2]|0)+(c[e>>2]|0)|0,(c[t>>2]|0)+(c[m>>2]|0)|0);c[e>>2]=c[j>>2];c[m>>2]=c[j+4>>2]}}j=b+8|0;if((c[j>>2]|0)<=0){v=b+20|0;w=c[b>>2]|0;x=c[w>>2]|0;y=x+96|0;z=c[y>>2]|0;A=c[v>>2]|0;B=c[e>>2]|0;c[k>>2]=B;C=k+4|0;D=e+4|0;E=c[D>>2]|0;c[C>>2]=E;yb[z&31](a,w,A,k);l=f;return}m=b+32|0;t=b+24|0;i=b+16|0;o=b+48|0;u=b+52|0;p=b+20|0;q=0;do{r=c[m>>2]|0;s=c[d+(q<<2)>>2]|0;F=c[t>>2]|0;G=c[r+8>>2]|0;if(G|0){H=c[r+12>>2]|0;r=0;do{h[F+(r<<3)>>3]=+g[s+(r<<2)>>2]*+h[H+(r<<3)>>3];r=r+1|0}while((r|0)!=(G|0))}G=c[i>>2]|0;if((G|0)>1){r=G>>>1;G=0;do{H=F+(G<<3)|0;n=+h[H>>3];s=F+(r+G<<3)|0;h[H>>3]=+h[s>>3];h[s>>3]=n;G=G+1|0}while((G|0)<(r|0))}Pj(c[o>>2]|0,F,c[u>>2]|0);r=c[i>>2]|0;if((r|0)>=-1){G=c[u>>2]|0;s=c[(c[p>>2]|0)+(q<<2)>>2]|0;H=(r|0)/2|0;r=0;while(1){I=r<<1;g[s+(I<<2)>>2]=+h[G+(r<<4)>>3];g[s+((I|1)<<2)>>2]=+h[G+(r<<4)+8>>3];if((r|0)<(H|0))r=r+1|0;else break}}q=q+1|0}while((q|0)<(c[j>>2]|0));v=p;w=c[b>>2]|0;x=c[w>>2]|0;y=x+96|0;z=c[y>>2]|0;A=c[v>>2]|0;B=c[e>>2]|0;c[k>>2]=B;C=k+4|0;D=e+4|0;E=c[D>>2]|0;c[C>>2]=E;yb[z&31](a,w,A,k);l=f;return}function Oj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0.0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;f=l;l=l+16|0;i=f;j=b+40|0;do if(!(c[j>>2]|0)){k=b+44|0;m=b+8|0;n=c[m>>2]|0;if(!(c[k>>2]|0)){o=sB(n>>>0>1073741823?-1:n<<2)|0;c[k>>2]=o;if((n|0)<=0){p=m;break}q=c[b+16>>2]|0;r=((q|0)/2|0)+q|0;q=r>>>0>1073741823?-1:r<<2;c[o>>2]=sB(q)|0;if((n|0)!=1){o=1;do{r=c[k>>2]|0;c[r+(o<<2)>>2]=sB(q)|0;o=o+1|0}while((o|0)!=(n|0))}}if(((n|0)>0?(o=b+16|0,q=c[o>>2]|0,(((q|0)/2|0)+q|0)>0):0)?(r=((q|0)/2|0)+q|0,HD(c[c[k>>2]>>2]|0,0,((r|0)>1?r:1)<<2|0)|0,(n|0)>1):0){r=1;do{q=c[o>>2]|0;s=((q|0)/2|0)+q|0;HD(c[(c[k>>2]|0)+(r<<2)>>2]|0,0,((s|0)>1?s:1)<<2|0)|0;r=r+1|0}while((r|0)<(n|0));p=m}else p=m}else p=b+8|0;while(0);n=c[p>>2]|0;r=(n|0)>0;if(r){k=c[b+12>>2]|0;o=c[b+16>>2]|0;s=(o|0)/2|0;q=s+o|0;t=b+44|0;if((k|0)<(q|0)){u=c[t>>2]|0;v=(o|0)>0;w=0;do{x=c[u+(w<<2)>>2]|0;y=k;do{c[x+(y-k<<2)>>2]=c[x+(y<<2)>>2];y=y+1|0}while((y|0)<(q|0));if(v){y=c[d+(w<<2)>>2]|0;m=0;do{c[x+(m+s<<2)>>2]=c[y+(m<<2)>>2];m=m+1|0}while((m|0)!=(o|0))}w=w+1|0}while((w|0)<(n|0))}else{w=(o|0)>0;v=0;do{if(w){q=c[d+(v<<2)>>2]|0;k=c[(c[t>>2]|0)+(v<<2)>>2]|0;u=0;do{c[k+(u+s<<2)>>2]=c[q+(u<<2)>>2];u=u+1|0}while((u|0)!=(o|0))}v=v+1|0}while((v|0)<(n|0))}if(r){r=b+32|0;n=b+44|0;v=b+24|0;o=b+16|0;s=b+48|0;t=b+52|0;d=b+20|0;w=0;do{u=c[r>>2]|0;q=c[(c[n>>2]|0)+(w<<2)>>2]|0;k=c[v>>2]|0;m=c[u+8>>2]|0;if(m|0){y=c[u+12>>2]|0;u=0;do{h[k+(u<<3)>>3]=+g[q+(u<<2)>>2]*+h[y+(u<<3)>>3];u=u+1|0}while((u|0)!=(m|0))}m=c[o>>2]|0;if((m|0)>1){u=m>>>1;m=0;do{y=k+(m<<3)|0;z=+h[y>>3];q=k+(u+m<<3)|0;h[y>>3]=+h[q>>3];h[q>>3]=z;m=m+1|0}while((m|0)<(u|0))}Pj(c[s>>2]|0,k,c[t>>2]|0);u=c[o>>2]|0;if((u|0)>=-1){m=c[t>>2]|0;q=c[(c[d>>2]|0)+(w<<2)>>2]|0;y=(u|0)/2|0;u=0;while(1){x=u<<1;g[q+(x<<2)>>2]=+h[m+(u<<4)>>3];g[q+((x|1)<<2)>>2]=+h[m+(u<<4)+8>>3];if((u|0)<(y|0))u=u+1|0;else break}}w=w+1|0}while((w|0)<(c[p>>2]|0));A=d;B=c[j>>2]|0;C=B+1|0;c[j>>2]=C;D=c[b>>2]|0;E=c[D>>2]|0;F=E+96|0;G=c[F>>2]|0;H=c[A>>2]|0;I=c[e>>2]|0;c[i>>2]=I;J=i+4|0;K=e+4|0;L=c[K>>2]|0;c[J>>2]=L;yb[G&31](a,D,H,i);l=f;return}}A=b+20|0;B=c[j>>2]|0;C=B+1|0;c[j>>2]=C;D=c[b>>2]|0;E=c[D>>2]|0;F=E+96|0;G=c[F>>2]|0;H=c[A>>2]|0;I=c[e>>2]|0;c[i>>2]=I;J=i+4|0;K=e+4|0;L=c[K>>2]|0;c[J>>2]=L;yb[G&31](a,D,H,i);l=f;return}function Pj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0;e=c[a>>2]|0;if(c[e+4>>2]|0){fp(28787,37,1,c[2405]|0)|0;db(1)}f=c[e>>2]|0;g=a+4|0;i=c[g>>2]|0;if((b|0)==(i|0)){j=Pp(f<<4)|0;Qj(j,b,1,1,e+8|0,e);MD(b|0,j|0,c[e>>2]<<4|0)|0;Qp(j)}else Qj(i,b,1,1,e+8|0,e);e=c[g>>2]|0;k=+h[e>>3];l=+h[e+8>>3];h[d>>3]=k+l;h[d+(f<<4)>>3]=k-l;h[d+8>>3]=0.0;h[d+(f<<4)+8>>3]=0.0;g=(f|0)/2|0;if((f|0)<2)return;b=c[a+8>>2]|0;a=1;while(1){l=+h[e+(a<<4)>>3];k=+h[e+(a<<4)+8>>3];i=f-a|0;m=+h[e+(i<<4)>>3];n=+h[e+(i<<4)+8>>3];o=l+m;p=k-n;q=l-m;m=k+n;j=a+-1|0;n=+h[b+(j<<4)>>3];k=+h[b+(j<<4)+8>>3];l=q*n-m*k;r=m*n+q*k;h[d+(a<<4)>>3]=(o+l)*.5;h[d+(a<<4)+8>>3]=(p+r)*.5;h[d+(i<<4)>>3]=(o-l)*.5;h[d+(i<<4)+8>>3]=(r-p)*.5;if((a|0)<(g|0))a=a+1|0;else break}return}function Qj(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0.0,w=0,x=0,y=0.0,z=0.0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0,H=0,I=0.0,J=0.0,K=0.0,L=0.0,M=0.0,N=0.0,O=0.0,Q=0.0,R=0,S=0,T=0;i=c[f>>2]|0;j=f+8|0;k=c[f+4>>2]|0;f=a+((P(k,i)|0)<<4)|0;if((k|0)==1){l=P(e,d)|0;m=a;n=b;while(1){h[m>>3]=+h[n>>3];h[m+8>>3]=+h[n+8>>3];m=m+16|0;if((m|0)==(f|0))break;else n=n+(l<<4)|0}}else{l=P(i,d)|0;n=P(e,d)|0;m=a;o=b;while(1){Qj(m,o,l,e,j,g);m=m+(k<<4)|0;if((m|0)==(f|0))break;else o=o+(n<<4)|0}}switch(i|0){case 2:{n=a;o=k;f=g+264|0;m=a+(k<<4)|0;while(1){p=+h[m>>3];q=+h[f>>3];j=m+8|0;r=+h[j>>3];s=+h[f+8>>3];t=p*q-r*s;u=q*r+p*s;h[m>>3]=+h[n>>3]-t;e=n+8|0;h[j>>3]=+h[e>>3]-u;h[n>>3]=t+ +h[n>>3];h[e>>3]=u+ +h[e>>3];o=o+-1|0;if(!o)break;else{n=n+16|0;f=f+(d<<4)|0;m=m+16|0}}return}case 3:{m=k<<1;u=+h[g+264+((P(k,d)|0)<<4)+8>>3];f=g+264|0;n=d<<1;o=a;e=k;j=f;l=f;while(1){f=o+(k<<4)|0;t=+h[f>>3];s=+h[j>>3];b=o+(k<<4)+8|0;p=+h[b>>3];r=+h[j+8>>3];q=t*s-p*r;v=s*p+t*r;w=o+(m<<4)|0;r=+h[w>>3];t=+h[l>>3];x=o+(m<<4)+8|0;p=+h[x>>3];s=+h[l+8>>3];y=r*t-p*s;z=t*p+r*s;s=q+y;r=v+z;h[f>>3]=+h[o>>3]-s*.5;A=o+8|0;h[b>>3]=+h[A>>3]-r*.5;p=u*(q-y);y=u*(v-z);h[o>>3]=s+ +h[o>>3];h[A>>3]=r+ +h[A>>3];h[w>>3]=y+ +h[f>>3];h[x>>3]=+h[b>>3]-p;h[f>>3]=+h[f>>3]-y;h[b>>3]=p+ +h[b>>3];e=e+-1|0;if(!e)break;else{o=o+16|0;j=j+(d<<4)|0;l=l+(n<<4)|0}}return}case 4:{n=k<<1;l=k*3|0;j=g+264|0;o=d<<1;e=d*3|0;if(!(c[g+4>>2]|0)){m=a;b=j;f=k;x=j;w=j;while(1){A=m+(k<<4)|0;u=+h[A>>3];p=+h[b>>3];B=m+(k<<4)+8|0;y=+h[B>>3];r=+h[b+8>>3];s=u*p-y*r;z=p*y+u*r;C=m+(n<<4)|0;r=+h[C>>3];u=+h[x>>3];D=m+(n<<4)+8|0;y=+h[D>>3];p=+h[x+8>>3];v=r*u-y*p;q=u*y+r*p;E=m+(l<<4)|0;p=+h[E>>3];r=+h[w>>3];F=m+(l<<4)+8|0;y=+h[F>>3];u=+h[w+8>>3];t=p*r-y*u;G=r*y+p*u;u=+h[m>>3];p=u-v;H=m+8|0;y=+h[H>>3];r=y-q;I=v+u;h[m>>3]=I;u=q+y;h[H>>3]=u;y=s+t;q=z+G;v=s-t;t=z-G;h[C>>3]=I-y;h[D>>3]=u-q;h[m>>3]=y+ +h[m>>3];h[H>>3]=q+ +h[H>>3];h[A>>3]=p+t;h[B>>3]=r-v;h[E>>3]=p-t;h[F>>3]=r+v;f=f+-1|0;if(!f)break;else{m=m+16|0;b=b+(d<<4)|0;x=x+(o<<4)|0;w=w+(e<<4)|0}}return}else{w=a;x=j;b=k;m=j;f=j;while(1){j=w+(k<<4)|0;v=+h[j>>3];r=+h[x>>3];F=w+(k<<4)+8|0;t=+h[F>>3];p=+h[x+8>>3];q=v*r-t*p;y=r*t+v*p;E=w+(n<<4)|0;p=+h[E>>3];v=+h[m>>3];B=w+(n<<4)+8|0;t=+h[B>>3];r=+h[m+8>>3];u=p*v-t*r;I=v*t+p*r;A=w+(l<<4)|0;r=+h[A>>3];p=+h[f>>3];H=w+(l<<4)+8|0;t=+h[H>>3];v=+h[f+8>>3];G=r*p-t*v;z=p*t+r*v;v=+h[w>>3];r=v-u;D=w+8|0;t=+h[D>>3];p=t-I;s=u+v;h[w>>3]=s;v=I+t;h[D>>3]=v;t=q+G;I=y+z;u=q-G;G=y-z;h[E>>3]=s-t;h[B>>3]=v-I;h[w>>3]=t+ +h[w>>3];h[D>>3]=I+ +h[D>>3];h[j>>3]=r-G;h[F>>3]=p+u;h[A>>3]=r+G;h[H>>3]=p-u;b=b+-1|0;if(!b)break;else{w=w+16|0;x=x+(d<<4)|0;m=m+(o<<4)|0;f=f+(e<<4)|0}}return}break}case 5:{e=P(k,d)|0;u=+h[g+264+(e<<4)>>3];p=+h[g+264+(e<<4)+8>>3];e=P(k,d<<1)|0;G=+h[g+264+(e<<4)>>3];r=+h[g+264+(e<<4)+8>>3];if((k|0)<=0)return;e=d*3|0;f=a+(k<<4)|0;o=a+(k<<1<<4)|0;m=a+(k*3<<4)|0;x=a+(k<<2<<4)|0;w=0;b=a;while(1){I=+h[b>>3];l=b+8|0;t=+h[l>>3];v=+h[f>>3];n=P(w,d)|0;s=+h[g+264+(n<<4)>>3];H=f+8|0;z=+h[H>>3];y=+h[g+264+(n<<4)+8>>3];q=v*s-z*y;J=s*z+v*y;y=+h[o>>3];n=P(w<<1,d)|0;v=+h[g+264+(n<<4)>>3];A=o+8|0;z=+h[A>>3];s=+h[g+264+(n<<4)+8>>3];K=y*v-z*s;L=v*z+y*s;s=+h[m>>3];n=P(e,w)|0;y=+h[g+264+(n<<4)>>3];F=m+8|0;z=+h[F>>3];v=+h[g+264+(n<<4)+8>>3];M=s*y-z*v;N=y*z+s*v;v=+h[x>>3];n=P(w<<2,d)|0;s=+h[g+264+(n<<4)>>3];j=x+8|0;z=+h[j>>3];y=+h[g+264+(n<<4)+8>>3];O=v*s-z*y;Q=s*z+v*y;y=q+O;v=J+Q;z=q-O;O=J-Q;Q=K+M;J=L+N;q=K-M;M=L-N;h[b>>3]=I+(Q+y);h[l>>3]=t+(J+v);N=G*Q+(I+u*y);L=G*J+(t+u*v);K=r*M+p*O;s=-(p*z)-r*q;h[f>>3]=N-K;h[H>>3]=L-s;h[x>>3]=K+N;h[j>>3]=s+L;L=u*Q+(I+G*y);y=u*J+(t+G*v);v=p*M-r*O;O=r*z-p*q;h[o>>3]=v+L;h[A>>3]=O+y;h[m>>3]=L-v;h[F>>3]=y-O;w=w+1|0;if((w|0)==(k|0))break;else{f=f+16|0;o=o+16|0;m=m+16|0;x=x+16|0;b=b+16|0}}return}default:{b=c[g>>2]|0;x=Pp(i<<4)|0;a:do if((k|0)>0&(i|0)>0){if((i|0)==1){m=0;while(1){o=a+(m<<4)|0;c[x>>2]=c[o>>2];c[x+4>>2]=c[o+4>>2];c[x+8>>2]=c[o+8>>2];c[x+12>>2]=c[o+12>>2];o=a+(m<<4)|0;c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];c[o+8>>2]=c[x+8>>2];c[o+12>>2]=c[x+12>>2];m=m+1|0;if((m|0)==(k|0))break a}}else R=0;do{m=R;o=0;while(1){f=a+(m<<4)|0;w=x+(o<<4)|0;c[w>>2]=c[f>>2];c[w+4>>2]=c[f+4>>2];c[w+8>>2]=c[f+8>>2];c[w+12>>2]=c[f+12>>2];o=o+1|0;if((o|0)==(i|0)){S=R;T=0;break}else m=m+k|0}while(1){m=a+(S<<4)|0;c[m>>2]=c[x>>2];c[m+4>>2]=c[x+4>>2];c[m+8>>2]=c[x+8>>2];c[m+12>>2]=c[x+12>>2];o=P(S,d)|0;f=a+(S<<4)+8|0;w=1;e=0;p=+h[m>>3];r=+h[f>>3];do{F=e+o|0;e=F-((F|0)<(b|0)?0:b)|0;G=+h[x+(w<<4)>>3];u=+h[g+264+(e<<4)>>3];O=+h[x+(w<<4)+8>>3];y=+h[g+264+(e<<4)+8>>3];p=p+(G*u-O*y);h[m>>3]=p;r=r+(u*O+G*y);h[f>>3]=r;w=w+1|0}while((w|0)!=(i|0));T=T+1|0;if((T|0)==(i|0))break;else S=S+k|0}R=R+1|0}while((R|0)!=(k|0))}while(0);Qp(x);return}}}function Rj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;a=l;l=l+16|0;d=a;if(b>>>0<2){e=xe(40212,28825,64)|0;qr(d,e+(c[(c[e>>2]|0)+-12>>2]|0)|0);f=Xs(d,40916)|0;g=zb[c[(c[f>>2]|0)+28>>2]&63](f,10)|0;Ys(d);Hr(e,g)|0;vr(e)|0;g=xe(Er(xe(e,28890,27)|0,b)|0,28918,5)|0;qr(d,g+(c[(c[g>>2]|0)+-12>>2]|0)|0);e=Xs(d,40916)|0;f=zb[c[(c[e>>2]|0)+28>>2]&63](e,10)|0;Ys(d);Hr(g,f)|0;vr(g)|0;h=2;l=a;return h|0}if(!(b&1)){h=b;l=a;return h|0}g=xe(40212,28924,64)|0;qr(d,g+(c[(c[g>>2]|0)+-12>>2]|0)|0);f=Xs(d,40916)|0;e=zb[c[(c[f>>2]|0)+28>>2]&63](f,10)|0;Ys(d);Hr(g,e)|0;vr(g)|0;e=b+1|0;f=Er(xe(Er(xe(g,28890,27)|0,b)|0,28989,4)|0,e)|0;qr(d,f+(c[(c[f>>2]|0)+-12>>2]|0)|0);b=Xs(d,40916)|0;g=zb[c[(c[b>>2]|0)+28>>2]&63](b,10)|0;Ys(d);Hr(f,g)|0;vr(f)|0;h=e;l=a;return h|0}function Sj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=l;l=l+16|0;g=f;h=c[a>>2]|0;if(!(rb[c[(c[h>>2]|0)+72>>2]&127](h)|0)){c[a+12>>2]=d;c[a+16>>2]=e;c[a+8>>2]=b;h=c[a>>2]|0;i=xb[c[(c[h>>2]|0)+64>>2]&15](h,b,d,e)|0;l=f;return i|0}if(e>>>0<2){h=xe(40212,28994,72)|0;qr(g,h+(c[(c[h>>2]|0)+-12>>2]|0)|0);j=Xs(g,40916)|0;k=zb[c[(c[j>>2]|0)+28>>2]&63](j,10)|0;Ys(g);Hr(h,k)|0;vr(h)|0;i=0;l=f;return i|0}if(e&1|0){h=xe(Er(xe(40212,29067,59)|0,e)|0,29127,14)|0;qr(g,h+(c[(c[h>>2]|0)+-12>>2]|0)|0);k=Xs(g,40916)|0;j=zb[c[(c[k>>2]|0)+28>>2]&63](k,10)|0;Ys(g);Hr(h,j)|0;vr(h)|0;i=0;l=f;return i|0}h=a+8|0;j=c[h>>2]|0;g=a+20|0;if((j|0)>0){k=c[g>>2]|0;m=0;n=j;j=k;o=k;while(1){k=c[o+(m<<2)>>2]|0;if(!k){p=o;q=n;r=j}else{uB(k);k=c[g>>2]|0;p=k;q=c[h>>2]|0;r=k}m=m+1|0;if((m|0)>=(q|0))break;else{n=q;j=r;o=p}}if(p|0)uB(r);r=c[a+24>>2]|0;if(r|0)uB(r);r=a+48|0;p=c[r>>2]|0;if(p|0){Qp(p);c[r>>2]=0;r=a+52|0;p=c[r>>2]|0;if(p|0)uB(p);c[r>>2]=0}r=c[a+32>>2]|0;if(r|0)ob[c[(c[r>>2]|0)+4>>2]&511](r)}c[a+12>>2]=d;r=a+16|0;c[r>>2]=e;c[h>>2]=b;h=sB(b>>>0>1073741823?-1:b<<2)|0;c[g>>2]=h;if((b|0)>0?(p=e+2|0,o=p>>>0>1073741823?-1:p<<2,c[h>>2]=sB(o)|0,(b|0)!=1):0){h=1;do{p=c[g>>2]|0;c[p+(h<<2)>>2]=sB(o)|0;h=h+1|0}while((h|0)<(b|0))}c[a+24>>2]=sB(e>>>0>536870911?-1:e<<3)|0;h=rB(24)|0;o=c[a+28>>2]|0;switch(o|0){case 4:case 3:case 2:case 1:case 0:{s=o;break}case 7:{s=5;break}case 8:{s=6;break}default:s=3}c[h>>2]=8380;c[h+4>>2]=s;c[h+8>>2]=e;Tj(h);c[a+32>>2]=h;c[a+48>>2]=Uj(c[r>>2]|0,0,0,0)|0;h=c[r>>2]|0;r=((h|0)/2|0)+1|0;c[a+52>>2]=sB(r>>>0>268435455?-1:r<<4)|0;c[a+40>>2]=0;r=c[a>>2]|0;i=xb[c[(c[r>>2]|0)+64>>2]&15](r,b,d,h)|0;l=f;return i|0}function Tj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0.0,k=0.0,l=0,m=0.0,n=0.0,o=0,p=0.0,q=0.0,r=0,s=0.0;b=c[a+8>>2]|0;d=sB(b>>>0>536870911?-1:b<<3)|0;e=(b|0)>0;if(e){f=0;do{h[d+(f<<3)>>3]=1.0;f=f+1|0}while((f|0)!=(b|0))}switch(c[a+4>>2]|0){case 0:{if(e){f=0;do{g=d+(f<<3)|0;h[g>>3]=+h[g>>3]*.5;f=f+1|0}while((f|0)!=(b|0))}else i=24;break}case 1:{f=(b|0)/2|0;if((b|0)>1){j=+(f|0);g=0;do{k=+(g|0)/j;l=d+(g<<3)|0;h[l>>3]=k*+h[l>>3];l=d+(g+f<<3)|0;h[l>>3]=(1.0-k)*+h[l>>3];g=g+1|0}while((g|0)<(f|0))}break}case 2:{if(e){j=+(b|0);f=0;do{k=+(f|0);m=.54-+F(+(k*6.283185307179586/j))*.46+ +F(+(k*12.566370614359172/j))*0.0-+F(+(k*18.84955592153876/j))*0.0;g=d+(f<<3)|0;h[g>>3]=+h[g>>3]*m;f=f+1|0}while((f|0)!=(b|0))}else i=24;break}case 3:{if(e){j=+(b|0);f=0;do{m=+(f|0);k=.5-+F(+(m*6.283185307179586/j))*.5+ +F(+(m*12.566370614359172/j))*0.0-+F(+(m*18.84955592153876/j))*0.0;g=d+(f<<3)|0;h[g>>3]=+h[g>>3]*k;f=f+1|0}while((f|0)!=(b|0))}else i=24;break}case 4:{if(e){j=+(b|0);f=0;do{k=+(f|0);m=.42-+F(+(k*6.283185307179586/j))*.5+ +F(+(k*12.566370614359172/j))*.08-+F(+(k*18.84955592153876/j))*0.0;g=d+(f<<3)|0;h[g>>3]=+h[g>>3]*m;f=f+1|0}while((f|0)!=(b|0))}else i=24;break}case 5:{if(e){j=+(b|0);f=0;do{m=+(f|0);k=.3635819-+F(+(m*6.283185307179586/j))*.4891775+ +F(+(m*12.566370614359172/j))*.1365995-+F(+(m*18.84955592153876/j))*.0106411;g=d+(f<<3)|0;h[g>>3]=+h[g>>3]*k;f=f+1|0}while((f|0)!=(b|0))}else i=24;break}case 6:{if(e){j=+(b|0);f=0;do{k=+(f|0);m=.35875-+F(+(k*6.283185307179586/j))*.48829+ +F(+(k*12.566370614359172/j))*.14128-+F(+(k*18.84955592153876/j))*.01168;g=d+(f<<3)|0;h[g>>3]=+h[g>>3]*m;f=f+1|0}while((f|0)!=(b|0))}else i=24;break}default:{}}if((i|0)==24){c[a+12>>2]=d;i=a+16|0;h[i>>3]=0.0;n=0.0;o=i;p=+(b|0);q=n/p;h[o>>3]=q;return}c[a+12>>2]=d;i=a+16|0;h[i>>3]=0.0;if(e){r=0;s=0.0}else{n=0.0;o=i;p=+(b|0);q=n/p;h[o>>3]=q;return}do{s=s+ +h[d+(r<<3)>>3];r=r+1|0}while((r|0)!=(b|0));h[i>>3]=s;n=s;o=i;p=+(b|0);q=n/p;h[o>>3]=q;return}function Uj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,l=0.0,m=0.0,n=0.0,o=0,p=0,q=0;if(a&1|0){fp(29142,36,1,c[2405]|0)|0;f=0;return f|0}g=a>>1;a=g<<4;i=a+264|0;j=a+276+(((g*3|0)/2|0)<<4)|0;if(e){a=(c[e>>2]|0)>>>0<j>>>0;c[e>>2]=j;if(a){f=0;return f|0}else k=d}else k=Pp(j)|0;if(!k){f=0;return f|0}j=k+12|0;c[k>>2]=j;d=j+i|0;c[k+4>>2]=d;i=k+8|0;c[i>>2]=d+(g<<4);c[j>>2]=g;d=k+16|0;c[d>>2]=b;l=+(g|0);a:do if((g|0)>0){a=0;e=b;while(1){m=+(a|0)*-6.283185307179586/l;n=(e|0)==0?m:-m;h[j+264+(a<<4)>>3]=+F(+n);h[j+264+(a<<4)+8>>3]=+G(+n);o=a+1|0;if((o|0)==(g|0))break a;a=o;e=c[d>>2]|0}}while(0);n=+B(+(+D(+l)));d=g;j=4;e=k+20|0;while(1){b:do if(!((d|0)%(j|0)|0))p=j;else{a=j;while(1){switch(a|0){case 4:{q=2;break}case 2:{q=3;break}default:q=a+2|0}o=+(q|0)>n?d:q;if(!((d|0)%(o|0)|0)){p=o;break b}else a=o}}while(0);d=(d|0)/(p|0)|0;c[e>>2]=p;c[e+4>>2]=d;if((d|0)<=1)break;else{j=p;e=e+8|0}}e=(g|0)/2|0;if((g|0)<=1){f=k;return f|0}n=+(g|0);g=c[i>>2]|0;if(!b){b=0;do{i=b;b=b+1|0;l=(+(b|0)/n+.5)*-3.141592653589793;h[g+(i<<4)>>3]=+F(+l);h[g+(i<<4)+8>>3]=+G(+l)}while((b|0)<(e|0));f=k;return f|0}else{b=0;do{i=b;b=b+1|0;l=(+(b|0)/n+.5)*-3.141592653589793;h[g+(i<<4)>>3]=+F(+l);h[g+(i<<4)+8>>3]=+G(+-l)}while((b|0)<(e|0));f=k;return f|0}return 0}function Vj(a){a=a|0;var b=0;c[a>>2]=8380;b=c[a+12>>2]|0;if(!b)return;uB(b);return}function Wj(a){a=a|0;var b=0;c[a>>2]=8380;b=c[a+12>>2]|0;if(!b){tB(a);return}uB(b);tB(a);return}function Xj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;b=a+44|0;d=c[b>>2]|0;e=a+8|0;do if(d|0){f=c[e>>2]|0;if((f|0)>0){g=0;h=f;f=d;while(1){i=c[f+(g<<2)>>2]|0;if(!i){j=f;k=h}else{uB(i);j=c[b>>2]|0;k=c[e>>2]|0}g=g+1|0;if((g|0)>=(k|0))break;else{h=k;f=j}}if(!j)break;else l=j}else l=d;uB(l)}while(0);l=c[e>>2]|0;if((l|0)<=0)return;d=a+20|0;j=c[d>>2]|0;k=0;b=j;f=l;l=j;while(1){j=c[b+(k<<2)>>2]|0;if(!j){m=b;n=f;o=l}else{uB(j);j=c[d>>2]|0;m=j;n=c[e>>2]|0;o=j}k=k+1|0;if((k|0)>=(n|0))break;else{b=m;f=n;l=o}}if(m|0)uB(o);o=c[a+24>>2]|0;if(o|0)uB(o);o=a+48|0;m=c[o>>2]|0;if(m|0){Qp(m);c[o>>2]=0;o=a+52|0;m=c[o>>2]|0;if(m|0)uB(m);c[o>>2]=0}o=c[a+32>>2]|0;if(!o)return;ob[c[(c[o>>2]|0)+4>>2]&511](o);return}function Yj(a,b){a=a|0;b=b|0;var d=0,e=0;Ak(a,b);c[a>>2]=8268;d=rB(56)|0;e=c[a+4>>2]|0;c[d>>2]=b;c[d+4>>2]=e;e=d+8|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[d+28>>2]=3;e=d+32|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[a+12>>2]=d;return}function Zj(a,b){a=a|0;b=b|0;var d=0;d=c[b+12>>2]|0;b=c[d>>2]|0;if(!(rb[c[(c[b>>2]|0)+72>>2]&127](b)|0)){c[a>>2]=c[9793];c[a+4>>2]=c[9794];return}if(((c[d+36>>2]|0)+-1|0)>>>0<2){c[a>>2]=c[9793];c[a+4>>2]=c[9794];return}else{Ek(a,(c[d+16>>2]|0)/2|0,~~(+g[d+4>>2]+.5));return}}function _j(){c[9790]=0;Wa(265,39160,o|0)|0;return}function $j(a){a=a|0;var b=0;b=c[a>>2]|0;if(!b)return;ob[c[(c[b>>2]|0)+4>>2]&511](b);return}function ak(){Bk(39164,-2147483648,-2147483648);return}function bk(a){a=a|0;var b=0;c[a>>2]=8396;b=c[a+8>>2]|0;if(!b)return;ob[c[(c[b>>2]|0)+4>>2]&511](b);return}function ck(a){a=a|0;var b=0;c[a>>2]=8396;b=c[a+8>>2]|0;if(!b){tB(a);return}ob[c[(c[b>>2]|0)+4>>2]&511](b);tB(a);return}function dk(a){a=a|0;var b=0;b=c[a+8>>2]|0;return rb[c[(c[b>>2]|0)+8>>2]&127](b)|0}function ek(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;pb[c[(c[d>>2]|0)+12>>2]&127](a,d);return}function fk(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;pb[c[(c[d>>2]|0)+16>>2]&127](a,d);return}function gk(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;pb[c[(c[d>>2]|0)+20>>2]&127](a,d);return}function hk(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;pb[c[(c[d>>2]|0)+24>>2]&127](a,d);return}function ik(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;pb[c[(c[d>>2]|0)+28>>2]&127](a,d);return}function jk(a){a=a|0;var b=0;b=c[a+8>>2]|0;return rb[c[(c[b>>2]|0)+32>>2]&127](b)|0}function kk(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;pb[c[(c[d>>2]|0)+36>>2]&127](a,d);return}function lk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0;d=l;l=l+16|0;e=d;f=c[a+8>>2]|0;a=c[(c[f>>2]|0)+40>>2]|0;GB(e,b);g=+mb[a&3](f,e);LB(e);l=d;return +g}function mk(a,b,d){a=a|0;b=b|0;d=+d;var e=0,f=0,g=0;e=l;l=l+16|0;f=e;g=c[a+8>>2]|0;a=c[(c[g>>2]|0)+44>>2]|0;GB(f,b);jb[a&3](g,f,d);LB(f);l=e;return}function nk(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;pb[c[(c[d>>2]|0)+48>>2]&127](a,d);return}function ok(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;pb[c[(c[d>>2]|0)+52>>2]&127](a,d);return}function pk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;f=c[a+8>>2]|0;a=c[(c[f>>2]|0)+56>>2]|0;GB(e,b);pb[a&127](f,e);LB(e);l=d;return}function qk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[a+8>>2]|0;return xb[c[(c[f>>2]|0)+64>>2]&15](f,b,d,e)|0}function rk(a){a=a|0;var b=0;b=c[a+8>>2]|0;ob[c[(c[b>>2]|0)+68>>2]&511](b);return}function sk(a){a=a|0;var b=0;b=c[a+8>>2]|0;return rb[c[(c[b>>2]|0)+72>>2]&127](b)|0}function tk(a){a=a|0;var b=0;b=c[a+8>>2]|0;return rb[c[(c[b>>2]|0)+76>>2]&127](b)|0}function uk(a){a=a|0;var b=0;b=c[a+8>>2]|0;return rb[c[(c[b>>2]|0)+80>>2]&127](b)|0}function vk(a){a=a|0;var b=0;b=c[a+8>>2]|0;return rb[c[(c[b>>2]|0)+84>>2]&127](b)|0}function wk(a){a=a|0;var b=0;b=c[a+8>>2]|0;return rb[c[(c[b>>2]|0)+88>>2]&127](b)|0}function xk(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;pb[c[(c[d>>2]|0)+92>>2]&127](a,d);return}function yk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=l;l=l+16|0;g=f;h=c[b+8>>2]|0;b=c[(c[h>>2]|0)+96>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];yb[b&31](a,h,d,g);l=f;return}function zk(a,b){a=a|0;b=b|0;var d=0;d=c[b+8>>2]|0;pb[c[(c[d>>2]|0)+100>>2]&127](a,d);return}function Ak(a,b){a=a|0;b=b|0;c[a+4>>2]=c[b+4>>2];c[a>>2]=8396;c[a+8>>2]=b;return}function Bk(a,b,d){a=a|0;b=b|0;d=d|0;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,q=0,r=0,s=0;c[a>>2]=b;e=a+4|0;c[e>>2]=d;if(!b){if((d|0)<-999999999){f=((-1e9-d|0)>>>0)/1e9|0;g=(P(f,1e9)|0)+d+1e9|0;h=~f;c[e>>2]=g;c[a>>2]=h;i=h;j=g}else{i=0;j=d}if((j|0)<=999999999)return;g=j+-1e9|0;j=(g>>>0)/1e9|0;c[e>>2]=g+(P(j,-1e9)|0);c[a>>2]=i+j+1;return}if((b|0)<0){if((d|0)<-999999999){j=((-1e9-d|0)>>>0)/1e9|0;i=(P(j,1e9)|0)+d+1e9|0;g=b+-1-j|0;c[e>>2]=i;c[a>>2]=g;k=i;l=g}else{k=d;l=b}if((k|0)>0){m=l;n=k}else return;while(1){if((m|0)>=0){o=17;break}k=n;n=n+-1e9|0;c[e>>2]=n;m=m+1|0;c[a>>2]=m;if((k|0)<=1e9){o=17;break}}if((o|0)==17)return}else{if((d|0)>999999999){m=d+-1e9|0;n=(m>>>0)/1e9|0;k=m+(P(n,-1e9)|0)|0;m=n+b+1|0;c[e>>2]=k;c[a>>2]=m;p=k;q=m}else{p=d;q=b}if((p|0)<0){r=q;s=p}else return;while(1){if((r|0)<=0){o=17;break}p=s;s=s+1e9|0;c[e>>2]=s;r=r+-1|0;c[a>>2]=r;if((p|0)>=-1e9){o=17;break}}if((o|0)==17)return}}function Ck(a,b){a=a|0;b=+b;var d=0,e=0,f=0,g=0,h=0,i=0;d=l;l=l+16|0;e=d+8|0;f=d;if(b!=b|0.0!=0.0){g=xe(40212,29295,52)|0;qr(e,g+(c[(c[g>>2]|0)+-12>>2]|0)|0);h=Xs(e,40916)|0;i=zb[c[(c[h>>2]|0)+28>>2]&63](h,10)|0;Ys(e);Hr(g,i)|0;vr(g)|0;c[a>>2]=0;c[a+4>>2]=0;l=d;return}if(!(b>=0.0)){Ck(f,-b);Bk(a,0-(c[f>>2]|0)|0,0-(c[f+4>>2]|0)|0);l=d;return}else{f=~~b;Bk(a,f,~~((b-+(f|0))*1.0e9+.5));l=d;return}}function Dk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;d=l;l=l+16|0;e=d;f=c[a>>2]|0;g=(f|0)==0;if(g){h=c[a+4>>2]|0;if((h|0)<0)i=h;else{j=h;k=16}}else{h=c[a+4>>2]|0;if((f|0)<0)i=h;else{j=h;k=16}}if((k|0)==16){m=~~(+(b>>>0)*(+(f|0)+ +(j|0)/1.0e9)+.5);l=d;return m|0}j=0-f|0;k=0-i|0;c[e>>2]=j;h=e+4|0;c[h>>2]=k;if(g){if((i|0)>999999999){g=((i+-1e9|0)>>>0)/1e9|0;a=(P(g,1e9)|0)-i+1e9|0;c[h>>2]=a;c[e>>2]=~g;n=0-g|0;o=a}else{n=1;o=k}if((o|0)>999999999){a=o+-1e9|0;o=(a>>>0)/1e9|0;c[h>>2]=(P(o,-1e9)|0)+a;c[e>>2]=n+o}}else{if((i|0)<-999999999){o=-1e9-i|0;i=(o>>>0)/1e9|0;n=(P(i,-1e9)|0)+o|0;o=i-f+1|0;c[h>>2]=n;c[e>>2]=o;p=n;q=o}else{p=k;q=j}if((p|0)<0){j=q;q=p;while(1){if((j|0)<=0){r=q;s=j;break}p=q+1e9|0;k=j+-1|0;if((q|0)<-1e9){j=k;q=p}else{r=p;s=k;break}}c[h>>2]=r;c[e>>2]=s}}m=0-(Dk(e,b)|0)|0;l=d;return m|0}function Ek(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;if((b|0)<0){Ek(f,0-b|0,d);Bk(a,0-(c[f>>2]|0)|0,0-(c[f+4>>2]|0)|0);l=e;return}else{f=(b|0)/(d|0)|0;Bk(a,f,~~(+(b-(P(f,d)|0)|0)/+(d>>>0)*1.0e9+.5));l=e;return}}function Fk(a,b,d){a=a|0;b=b|0;d=d|0;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,q=0,r=0,s=0;c[a>>2]=b;e=a+4|0;c[e>>2]=d;if(!b){if((d|0)<-999999999){f=((-1e9-d|0)>>>0)/1e9|0;g=(P(f,1e9)|0)+d+1e9|0;h=~f;c[e>>2]=g;c[a>>2]=h;i=h;j=g}else{i=0;j=d}if((j|0)<=999999999)return;g=j+-1e9|0;j=(g>>>0)/1e9|0;c[e>>2]=g+(P(j,-1e9)|0);c[a>>2]=i+j+1;return}if((b|0)<0){if((d|0)<-999999999){j=((-1e9-d|0)>>>0)/1e9|0;i=(P(j,1e9)|0)+d+1e9|0;g=b+-1-j|0;c[e>>2]=i;c[a>>2]=g;k=i;l=g}else{k=d;l=b}if((k|0)>0){m=l;n=k}else return;while(1){if((m|0)>=0){o=17;break}k=n;n=n+-1e9|0;c[e>>2]=n;m=m+1|0;c[a>>2]=m;if((k|0)<=1e9){o=17;break}}if((o|0)==17)return}else{if((d|0)>999999999){m=d+-1e9|0;n=(m>>>0)/1e9|0;k=m+(P(n,-1e9)|0)|0;m=n+b+1|0;c[e>>2]=k;c[a>>2]=m;p=k;q=m}else{p=d;q=b}if((p|0)<0){r=q;s=p}else return;while(1){if((r|0)<=0){o=17;break}p=s;s=s+1e9|0;c[e>>2]=s;r=r+-1|0;c[a>>2]=r;if((p|0)>=-1e9){o=17;break}}if((o|0)==17)return}}function Gk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;if((b|0)<0){Gk(f,0-b|0,d);Fk(a,0-(c[f>>2]|0)|0,0-(c[f+4>>2]|0)|0);l=e;return}else{f=(b|0)/(d|0)|0;Fk(a,f,~~(+(b-(P(f,d)|0)|0)/+(d>>>0)*1.0e9+.5));l=e;return}}function Hk(a){a=a|0;return 0.0}function Ik(a){a=a|0;return 0}function Jk(a){a=a|0;return 0}function Kk(b){b=b|0;if(a[38200]|0)return 39212;if(!(xD(38200)|0))return 39212;Sk(39188);Wa(266,39188,o|0)|0;return 39212}function Lk(b){b=b|0;if(a[38200]|0)return 39224;if(!(xD(38200)|0))return 39224;Sk(39188);Wa(266,39188,o|0)|0;return 39224}function Mk(b,c){b=b|0;c=c|0;if(a[38192]|0)return 39180;if(!(xD(38192)|0))return 39180;Qk(39180);Wa(267,39180,o|0)|0;return 39180}function Nk(b){b=b|0;if(a[38200]|0)return 39236;if(!(xD(38200)|0))return 39236;Sk(39188);Wa(266,39188,o|0)|0;return 39236}function Ok(b,c){b=b|0;c=c|0;if(a[38192]|0)return 39180;if(!(xD(38192)|0))return 39180;Qk(39180);Wa(267,39180,o|0)|0;return 39180}function Pk(a){a=a|0;return}function Qk(b){b=b|0;var d=0;if((a[38200]|0)==0?xD(38200)|0:0){Sk(39188);Wa(266,39188,o|0)|0}c[b>>2]=c[9797];d=c[9798]|0;c[b+4>>2]=d;if(!d)return;nB(d);return}function Rk(a){a=a|0;var b=0;b=c[a+4>>2]|0;if(!b)return;oB(b);return}function Sk(b){b=b|0;var d=0,e=0;d=rB(20)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=8508;e=d+12|0;c[e>>2]=8536;c[b>>2]=e;c[b+4>>2]=d;d=rB(20)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=8600;e=d+12|0;a[d+16>>0]=1;c[e>>2]=8628;c[b+8>>2]=e;c[b+12>>2]=d;d=rB(20)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=8600;e=d+12|0;a[d+16>>0]=0;c[e>>2]=8628;c[b+16>>2]=e;c[b+20>>2]=d;d=b+24|0;c[b+52>>2]=0;c[b+56>>2]=0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[b+48>>2]=b+52;return}function Tk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;pd(a+48|0,c[a+52>>2]|0);b=a+36|0;d=c[b>>2]|0;if(d|0){e=a+40|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;while(1){f=h+-8|0;c[e>>2]=f;i=c[h+-4>>2]|0;if(!i)j=f;else{oB(i);j=c[e>>2]|0}if((j|0)==(d|0))break;else h=j}g=c[b>>2]|0}tB(g)}LB(a+24|0);g=c[a+20>>2]|0;if(g|0)oB(g);g=c[a+12>>2]|0;if(g|0)oB(g);g=c[a+4>>2]|0;if(!g)return;oB(g);return}function Uk(a){a=a|0;return 2}function Vk(b,c){b=b|0;c=c|0;return (a[b+4>>0]|0)==(a[c+4>>0]|0)|0}function Wk(a,b){a=a|0;b=b|0;return (d[a+4>>0]|0)<(d[b+4>>0]|0)|0}function Xk(b,c){b=b|0;c=c|0;WB(c,a[b+4>>0]|0?36977:36971)|0;return}function Yk(b){b=b|0;return (a[b+4>>0]|0)!=0|0}function Zk(a){a=a|0;tB(a);return}function _k(a){a=a|0;hB(a);return}function $k(a){a=a|0;hB(a);tB(a);return}function al(a){a=a|0;return}function bl(a){a=a|0;tB(a);return}function cl(a){a=a|0;return 0}function dl(a,b){a=a|0;b=b|0;return 1}function el(a,b){a=a|0;b=b|0;return 0}function fl(a,b){a=a|0;b=b|0;WB(b,29481)|0;return}function gl(a){a=a|0;tB(a);return}function hl(a){a=a|0;hB(a);return}function il(a){a=a|0;hB(a);tB(a);return}function jl(a){a=a|0;return}function kl(a){a=a|0;tB(a);return}function ll(a){a=a|0;return 4}function ml(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=c[a+8>>2]|0;e=c[a+4>>2]|0;a=c[b+4>>2]|0;f=e;g=d;if((d-e|0)!=((c[b+8>>2]|0)-a|0)){h=0;return h|0}if((f|0)==(g|0)){h=1;return h|0}b=f;f=a;while(1){a=c[b>>2]|0;if((a|0)!=(c[f>>2]|0)){e=rb[c[c[a>>2]>>2]&127](a)|0;a=c[f>>2]|0;if((e|0)!=(rb[c[c[a>>2]>>2]&127](a)|0)){h=0;i=8;break}a=c[b>>2]|0;if(!(zb[c[(c[a>>2]|0)+4>>2]&63](a,c[f>>2]|0)|0)){h=0;i=8;break}}b=b+8|0;if((b|0)==(g|0)){h=1;i=8;break}else f=f+8|0}if((i|0)==8)return h|0;return 0}function nl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;d=l;l=l+48|0;e=d+32|0;f=d+28|0;g=d+24|0;h=d+20|0;i=d+16|0;j=d+12|0;k=d+8|0;m=d+4|0;n=c[a+8>>2]|0;o=c[b+4>>2]|0;p=c[b+8>>2]|0;c[i>>2]=c[a+4>>2];c[j>>2]=n;c[k>>2]=o;c[m>>2]=p;c[h>>2]=c[i>>2];c[g>>2]=c[j>>2];c[f>>2]=c[k>>2];c[e>>2]=c[m>>2];m=ul(h,g,f,e,d)|0;l=d;return m|0}function ol(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;WB(b,29721)|0;d=c[a+4>>2]|0;e=c[a+8>>2]|0;if((d|0)==(e|0)){WB(b,29726)|0;return}else{f=1;g=d}while(1){if(!f)WB(b,29723)|0;d=c[g>>2]|0;pb[c[(c[d>>2]|0)+12>>2]&127](d,b);g=g+8|0;if((g|0)==(e|0))break;else f=0}WB(b,29726)|0;return}function pl(a){a=a|0;return a+4|0}function ql(b,d){b=b|0;d=d|0;var e=0,f=0;e=c[b+4>>2]|0;if((c[b+8>>2]|0)-e>>3>>>0>d>>>0){f=e+(d<<3)|0;return f|0}if(a[38192]|0){f=39180;return f|0}if(!(xD(38192)|0)){f=39180;return f|0}Qk(39180);Wa(267,39180,o|0)|0;f=39180;return f|0}function rl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;c[a>>2]=8756;b=a+4|0;d=c[b>>2]|0;if(!d)return;e=a+8|0;a=c[e>>2]|0;if((a|0)==(d|0))f=d;else{g=a;while(1){a=g+-8|0;c[e>>2]=a;h=c[g+-4>>2]|0;if(!h)i=a;else{oB(h);i=c[e>>2]|0}if((i|0)==(d|0))break;else g=i}f=c[b>>2]|0}tB(f);return}function sl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c[a>>2]=8756;b=a+4|0;d=c[b>>2]|0;if(!d){tB(a);return}e=a+8|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;while(1){f=h+-8|0;c[e>>2]=f;i=c[h+-4>>2]|0;if(!i)j=f;else{oB(i);j=c[e>>2]|0}if((j|0)==(d|0))break;else h=j}g=c[b>>2]|0}tB(g);tB(a);return}function tl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c[a>>2]=8756;b=a+4|0;d=c[b>>2]|0;if(!d){tB(a);return}e=a+8|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;while(1){f=h+-8|0;c[e>>2]=f;i=c[h+-4>>2]|0;if(!i)j=f;else{oB(i);j=c[e>>2]|0}if((j|0)==(d|0))break;else h=j}g=c[b>>2]|0}tB(g);tB(a);return}function ul(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=c[d>>2]|0;g=c[e>>2]|0;if((f|0)==(g|0)){h=0;return h|0}e=c[b>>2]|0;b=c[a>>2]|0;i=f;a:while(1){if((b|0)==(e|0)){h=1;j=13;break}f=c[b>>2]|0;do if((f|0)!=(c[i>>2]|0)){k=rb[c[c[f>>2]>>2]&127](f)|0;l=c[i>>2]|0;m=(k|0)==(rb[c[c[l>>2]>>2]&127](l)|0);l=c[b>>2]|0;if(m)if(zb[c[(c[l>>2]|0)+8>>2]&63](l,c[i>>2]|0)|0){h=1;j=13;break a}else break;else{m=rb[c[c[l>>2]>>2]&127](l)|0;l=c[i>>2]|0;if((m|0)<(rb[c[c[l>>2]>>2]&127](l)|0)){h=1;j=13;break a}else break}}while(0);f=c[i>>2]|0;do if((f|0)!=(c[b>>2]|0)){l=rb[c[c[f>>2]>>2]&127](f)|0;m=c[b>>2]|0;k=(l|0)==(rb[c[c[m>>2]>>2]&127](m)|0);m=c[i>>2]|0;if(k)if(zb[c[(c[m>>2]|0)+8>>2]&63](m,c[b>>2]|0)|0){h=0;j=13;break a}else break;else{k=rb[c[c[m>>2]>>2]&127](m)|0;m=c[b>>2]|0;if((k|0)<(rb[c[c[m>>2]>>2]&127](m)|0)){h=0;j=13;break a}else break}}while(0);b=b+8|0;c[a>>2]=b;i=i+8|0;c[d>>2]=i;if((i|0)==(g|0)){h=0;j=13;break}}if((j|0)==13)return h|0;return 0}function vl(a){a=a|0;return 5}function wl(b,d){b=b|0;d=d|0;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,q=0,r=0,s=0,t=0,u=0,v=0,w=0;if((c[b+12>>2]|0)!=(c[d+12>>2]|0)){e=0;return e|0}f=c[b+4>>2]|0;g=b+8|0;b=c[d+4>>2]|0;if((f|0)==(g|0)){e=1;return e|0}d=f;h=b;i=f;f=b;a:while(1){b=d+16|0;j=h+16|0;k=a[b+11>>0]|0;l=k<<24>>24<0;m=k&255;k=l?c[d+20>>2]|0:m;n=a[j+11>>0]|0;o=n<<24>>24<0;if((k|0)!=((o?c[h+20>>2]|0:n&255)|0)){e=0;p=22;break}n=c[b>>2]|0;q=l?n:b;r=o?c[j>>2]|0:j;j=(k|0)==0;b:do if(l){if(!j?Eo(q,r,k)|0:0){e=0;p=22;break a}}else if(!j){if((n&255)<<24>>24==(a[r>>0]|0)){s=m;t=r;u=b}else{e=0;p=22;break a}while(1){s=s+-1|0;u=u+1|0;if(!s)break b;t=t+1|0;if((a[u>>0]|0)!=(a[t>>0]|0)){e=0;p=22;break a}}}while(0);b=d+28|0;r=c[b>>2]|0;m=h+28|0;if((r|0)!=(c[m>>2]|0)){n=rb[c[c[r>>2]>>2]&127](r)|0;r=c[m>>2]|0;if((n|0)!=(rb[c[c[r>>2]>>2]&127](r)|0)){e=0;p=22;break}r=c[b>>2]|0;if(!(zb[c[(c[r>>2]|0)+4>>2]&63](r,c[m>>2]|0)|0)){e=0;p=22;break}}m=c[i+4>>2]|0;if(!m){r=i;while(1){b=c[r+8>>2]|0;if((c[b>>2]|0)==(r|0)){v=b;break}else r=b}}else{r=m;while(1){b=c[r>>2]|0;if(!b){v=r;break}else r=b}}r=c[f+4>>2]|0;if(!r){m=f;while(1){b=c[m+8>>2]|0;if((c[b>>2]|0)==(m|0)){w=b;break}else m=b}}else{m=r;while(1){b=c[m>>2]|0;if(!b){w=m;break}else m=b}}if((v|0)==(g|0)){e=1;p=22;break}else{d=v;h=w;i=v;f=w}}if((p|0)==22)return e|0;return 0}function xl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;d=l;l=l+48|0;e=d+32|0;f=d+28|0;g=d+24|0;h=d+20|0;i=d+16|0;j=d+12|0;k=d+8|0;m=d+4|0;n=c[b+4>>2]|0;c[i>>2]=c[a+4>>2];c[j>>2]=a+8;c[k>>2]=n;c[m>>2]=b+8;c[h>>2]=c[i>>2];c[g>>2]=c[j>>2];c[f>>2]=c[k>>2];c[e>>2]=c[m>>2];m=Gl(h,g,f,e,d)|0;l=d;return m|0}function yl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;WB(b,29902)|0;d=c[a+4>>2]|0;e=a+8|0;if((d|0)==(e|0)){WB(b,29904)|0;return}a=1;f=d;g=d;while(1){if(!a)WB(b,29723)|0;Fl(f+16|0,b);WB(b,37466)|0;d=c[f+28>>2]|0;pb[c[(c[d>>2]|0)+12>>2]&127](d,b);d=c[g+4>>2]|0;if(!d){h=g;while(1){i=c[h+8>>2]|0;if((c[i>>2]|0)==(h|0)){j=i;break}else h=i}}else{h=d;while(1){i=c[h>>2]|0;if(!i){j=h;break}else h=i}}if((j|0)==(e|0))break;else{a=0;f=j;g=j}}WB(b,29904)|0;return}function zl(a){a=a|0;return a+4|0}function Al(b,c){b=b|0;c=c|0;var d=0,e=0;d=El(b+4|0,c)|0;if((d|0)!=(b+8|0)){e=d+28|0;return e|0}if(a[38192]|0){e=39180;return e|0}if(!(xD(38192)|0)){e=39180;return e|0}Qk(39180);Wa(267,39180,o|0)|0;e=39180;return e|0}function Bl(a){a=a|0;c[a>>2]=8884;pd(a+4|0,c[a+8>>2]|0);return}function Cl(a){a=a|0;c[a>>2]=8884;pd(a+4|0,c[a+8>>2]|0);tB(a);return}function Dl(a){a=a|0;c[a>>2]=8884;pd(a+4|0,c[a+8>>2]|0);tB(a);return}function El(b,d){b=b|0;d=d|0;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,q=0,r=0;e=b+4|0;b=c[e>>2]|0;do if(b|0){f=a[d+11>>0]|0;g=f<<24>>24<0;h=g?c[d+4>>2]|0:f&255;f=g?c[d>>2]|0:d;g=e;i=b;a:while(1){j=i;while(1){k=j+16|0;l=a[k+11>>0]|0;m=l<<24>>24<0;n=m?c[j+20>>2]|0:l&255;l=h>>>0<n>>>0?h:n;if((l|0)!=0?(o=Eo(m?c[k>>2]|0:k,f,l)|0,(o|0)!=0):0){if((o|0)>=0)break}else p=6;if((p|0)==6?(p=0,n>>>0>=h>>>0):0)break;n=c[j+4>>2]|0;if(!n){q=g;break a}else j=n}i=c[j>>2]|0;if(!i){q=j;break}else g=j}if((q|0)!=(e|0)){g=q+16|0;i=a[g+11>>0]|0;n=i<<24>>24<0;o=n?c[q+20>>2]|0:i&255;i=o>>>0<h>>>0?o:h;if(i|0?(l=Eo(f,n?c[g>>2]|0:g,i)|0,l|0):0){if((l|0)<0)break;else r=q;return r|0}if(h>>>0>=o>>>0){r=q;return r|0}}}while(0);r=e;return r|0}function Fl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;e=l;l=l+16|0;f=e;g=e+8|0;XB(d,34);h=b+11|0;i=a[h>>0]|0;j=b+4|0;if(!((i<<24>>24<0?c[j>>2]|0:i&255)|0)){XB(d,34);l=e;return}k=0;m=i;do{i=m<<24>>24<0?c[b>>2]|0:b;n=a[i+k>>0]|0;a:do switch(n<<24>>24){case 92:{WB(d,29906)|0;o=k;break}case 34:{WB(d,29909)|0;o=k;break}case 8:{WB(d,29912)|0;o=k;break}case 12:{WB(d,29915)|0;o=k;break}case 10:{WB(d,29918)|0;o=k;break}case 13:{WB(d,29921)|0;o=k;break}case 9:{WB(d,29924)|0;o=k;break}default:{if((n&255)<32){c[f>>2]=n<<24>>24;Ao(g,8,29927,f)|0;WB(d,g)|0;o=k;break a}if(n<<24>>24==-30?(a[i+(k+1)>>0]|0)==-128:0){p=k+2|0;if((a[i+p>>0]|0)==-88){WB(d,29934)|0;o=p;break a}p=k+2|0;if((a[i+p>>0]|0)==-87){WB(d,29941)|0;o=p;break a}}XB(d,n);o=k}}while(0);k=o+1|0;m=a[h>>0]|0}while(k>>>0<(m<<24>>24<0?c[j>>2]|0:m&255)>>>0);XB(d,34);l=e;return}function Gl(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;g=c[e>>2]|0;h=c[f>>2]|0;if((g|0)==(h|0)){i=0;return i|0}f=c[b>>2]|0;j=c[d>>2]|0;d=g;k=f;l=g;m=g;g=f;a:while(1){if((g|0)==(j|0)){i=1;n=35;break}f=g+16|0;o=d+16|0;p=a[f+11>>0]|0;q=p<<24>>24<0;r=q?c[g+20>>2]|0:p&255;p=a[o+11>>0]|0;s=p<<24>>24<0;t=s?c[d+20>>2]|0:p&255;p=t>>>0<r>>>0;u=p?t:r;if((u|0)!=0?(v=Eo(q?c[f>>2]|0:f,s?c[o>>2]|0:o,u)|0,(v|0)!=0):0){if((v|0)<0){i=1;n=35;break}}else n=6;if((n|0)==6?(n=0,r>>>0<t>>>0):0){i=1;n=35;break}v=r>>>0<t>>>0?r:t;if((v|0)!=0?(t=Eo(s?c[o>>2]|0:o,q?c[f>>2]|0:f,v)|0,(t|0)!=0):0){if((t|0)>=0)n=12}else n=10;if((n|0)==10?(n=0,!p):0)n=12;do if((n|0)==12?(n=0,p=g+28|0,t=c[p>>2]|0,v=d+28|0,(t|0)!=(c[v>>2]|0)):0){f=rb[c[c[t>>2]>>2]&127](t)|0;t=c[v>>2]|0;q=(f|0)==(rb[c[c[t>>2]>>2]&127](t)|0);t=c[p>>2]|0;if(q)if(zb[c[(c[t>>2]|0)+8>>2]&63](t,c[v>>2]|0)|0){i=1;n=35;break a}else break;else{q=rb[c[c[t>>2]>>2]&127](t)|0;t=c[v>>2]|0;if((q|0)<(rb[c[c[t>>2]>>2]&127](t)|0)){i=1;n=35;break a}else break}}while(0);t=m+16|0;q=g+16|0;v=a[t+11>>0]|0;p=v<<24>>24<0;f=p?c[m+20>>2]|0:v&255;v=a[q+11>>0]|0;o=v<<24>>24<0;s=o?c[g+20>>2]|0:v&255;v=s>>>0<f>>>0;r=v?s:f;if((r|0)!=0?(u=Eo(p?c[t>>2]|0:t,o?c[q>>2]|0:q,r)|0,(u|0)!=0):0){if((u|0)<0){i=0;n=35;break}}else n=18;if((n|0)==18?(n=0,f>>>0<s>>>0):0){i=0;n=35;break}u=f>>>0<s>>>0?f:s;if((u|0)!=0?(s=Eo(o?c[q>>2]|0:q,p?c[t>>2]|0:t,u)|0,(s|0)!=0):0){if((s|0)>=0)n=24}else n=22;if((n|0)==22?(n=0,!v):0)n=24;do if((n|0)==24?(n=0,v=m+28|0,s=c[v>>2]|0,u=g+28|0,(s|0)!=(c[u>>2]|0)):0){t=rb[c[c[s>>2]>>2]&127](s)|0;s=c[u>>2]|0;p=(t|0)==(rb[c[c[s>>2]>>2]&127](s)|0);s=c[v>>2]|0;if(p)if(zb[c[(c[s>>2]|0)+8>>2]&63](s,c[u>>2]|0)|0){i=0;n=35;break a}else break;else{p=rb[c[c[s>>2]>>2]&127](s)|0;s=c[u>>2]|0;if((p|0)<(rb[c[c[s>>2]>>2]&127](s)|0)){i=0;n=35;break a}else break}}while(0);s=c[k+4>>2]|0;if(!s){p=k;while(1){u=c[p+8>>2]|0;if((c[u>>2]|0)==(p|0)){w=u;break}else p=u}}else{p=s;while(1){u=c[p>>2]|0;if(!u){w=p;break}else p=u}}c[b>>2]=w;p=c[l+4>>2]|0;if(!p){s=l;while(1){u=c[s+8>>2]|0;if((c[u>>2]|0)==(s|0)){x=u;break}else s=u}}else{s=p;while(1){u=c[s>>2]|0;if(!u){x=s;break}else s=u}}c[e>>2]=x;if((x|0)==(h|0)){i=0;n=35;break}else{d=x;k=w;l=x;m=x;g=w}}if((n|0)==35)return i|0;return 0}function Hl(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;pb[c[(c[d>>2]|0)+12>>2]&127](d,b);return}function Il(a,b){a=a|0;b=+b;var d=0,e=0;d=rB(32)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=8948;e=d+16|0;h[d+24>>3]=b;c[e>>2]=8976;c[a>>2]=e;c[a+4>>2]=d;return}function Jl(a){a=a|0;return 1}function Kl(a,b){a=a|0;b=b|0;var d=0.0;d=+h[a+8>>3];return d==+nb[c[(c[b>>2]|0)+16>>2]&3](b)|0}function Ll(a,b){a=a|0;b=b|0;var d=0.0;d=+h[a+8>>3];return d<+nb[c[(c[b>>2]|0)+16>>2]&3](b)|0}function Ml(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0;d=l;l=l+48|0;e=d;f=d+8|0;g=+h[a+8>>3];h[j>>3]=g;a=c[j+4>>2]&2146435072;if(a>>>0<2146435072|(a|0)==2146435072&0<0){h[e>>3]=g;Ao(f,32,29970,e)|0;WB(b,f)|0;l=d;return}else{WB(b,29481)|0;l=d;return}}function Nl(a){a=a|0;return +(+h[a+8>>3])}function Ol(a){a=a|0;return ~~+h[a+8>>3]|0}function Pl(a){a=a|0;tB(a);return}function Ql(a){a=a|0;hB(a);return}function Rl(a){a=a|0;hB(a);tB(a);return}function Sl(a){a=a|0;return}function Tl(a){a=a|0;tB(a);return}function Ul(a,b){a=a|0;b=b|0;var d=0,e=0;d=rB(20)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=9040;e=d+12|0;c[d+16>>2]=b;c[e>>2]=9068;c[a>>2]=e;c[a+4>>2]=d;return}function Vl(a){a=a|0;return 1}function Wl(a,b){a=a|0;b=b|0;var d=0.0;d=+(c[a+4>>2]|0);return d==+nb[c[(c[b>>2]|0)+16>>2]&3](b)|0}function Xl(a,b){a=a|0;b=b|0;var d=0.0;d=+(c[a+4>>2]|0);return d<+nb[c[(c[b>>2]|0)+16>>2]&3](b)|0}function Yl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+48|0;e=d;f=d+8|0;c[e>>2]=c[a+4>>2];Ao(f,32,30107,e)|0;WB(b,f)|0;l=d;return}function Zl(a){a=a|0;return +(+(c[a+4>>2]|0))}function _l(a){a=a|0;return c[a+4>>2]|0}function $l(a){a=a|0;tB(a);return}function am(a){a=a|0;hB(a);return}function bm(a){a=a|0;hB(a);tB(a);return}function cm(a){a=a|0;return}function dm(a){a=a|0;tB(a);return}function em(b,d){b=b|0;d=d|0;var e=0;if((a[38200]|0)==0?xD(38200)|0:0){Sk(39188);Wa(266,39188,o|0)|0}e=d?39196:39204;c[b>>2]=c[e>>2];d=c[e+4>>2]|0;c[b+4>>2]=d;if(!d)return;nB(d);return}function fm(a,b){a=a|0;b=b|0;var d=0,e=0;d=rB(28)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=9132;e=d+12|0;c[e>>2]=9160;GB(d+16|0,b);c[e>>2]=9224;c[a>>2]=e;c[a+4>>2]=d;return}function gm(a){a=a|0;return 3}function hm(b,d){b=b|0;d=d|0;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;e=b+4|0;f=d+4|0;g=a[e+11>>0]|0;h=g<<24>>24<0;i=g&255;g=h?c[b+8>>2]|0:i;b=a[f+11>>0]|0;j=b<<24>>24<0;if((g|0)!=((j?c[d+8>>2]|0:b&255)|0)){k=0;return k|0}b=c[e>>2]|0;d=h?b:e;l=j?c[f>>2]|0:f;f=(g|0)==0;if(h){if(f){k=1;return k|0}k=(Eo(d,l,g)|0)==0;return k|0}if(f){k=1;return k|0}if((b&255)<<24>>24==(a[l>>0]|0)){m=i;n=l;o=e}else{k=0;return k|0}while(1){m=m+-1|0;o=o+1|0;if(!m){k=1;p=9;break}n=n+1|0;if((a[o>>0]|0)!=(a[n>>0]|0)){k=0;p=9;break}}if((p|0)==9)return k|0;return 0}function im(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=b+4|0;f=d+4|0;g=a[e+11>>0]|0;h=g<<24>>24<0;i=h?c[b+8>>2]|0:g&255;g=a[f+11>>0]|0;b=g<<24>>24<0;j=b?c[d+8>>2]|0:g&255;g=j>>>0<i>>>0;d=g?j:i;if(d|0?(k=Eo(h?c[e>>2]|0:e,b?c[f>>2]|0:f,d)|0,k|0):0){l=k;m=(l|0)<0;return m|0}l=i>>>0<j>>>0?-1:g&1;m=(l|0)<0;return m|0}function jm(a,b){a=a|0;b=b|0;Fl(a+4|0,b);return}function km(a){a=a|0;return a+4|0}function lm(a){a=a|0;c[a>>2]=9160;LB(a+4|0);return}function mm(a){a=a|0;c[a>>2]=9160;LB(a+4|0);tB(a);return}function nm(a){a=a|0;c[a>>2]=9160;LB(a+4|0);tB(a);return}function om(a){a=a|0;c[a>>2]=9132;c[a+12>>2]=9160;LB(a+16|0);hB(a);return}function pm(a){a=a|0;c[a>>2]=9132;c[a+12>>2]=9160;LB(a+16|0);hB(a);tB(a);return}function qm(a){a=a|0;c[a+12>>2]=9160;LB(a+16|0);return}function rm(a){a=a|0;tB(a);return}function sm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=rB(28)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=9132;e=d+12|0;f=d+16|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[e>>2]=9224;c[a>>2]=e;c[a+4>>2]=d;return}function tm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=l;l=l+16|0;e=d;f=rB(28)|0;c[f+4>>2]=0;c[f+8>>2]=0;c[f>>2]=9132;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;HB(e,b,yn(b)|0);b=f+12|0;g=f+16|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[b>>2]=9224;LB(e);c[a>>2]=b;c[a+4>>2]=f;l=d;return}function um(a,b){a=a|0;b=b|0;var d=0,e=0;d=rB(28)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=9288;e=d+12|0;c[e>>2]=8756;vm(d+16|0,b);c[e>>2]=8692;c[a>>2]=e;c[a+4>>2]=d;return}function vm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=f>>3;if(!g)return;if(g>>>0>536870911){Az(a);h=za(4)|0;AD(h);Xa(h|0,3080,250)}h=rB(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g<<3);g=c[b>>2]|0;b=c[e>>2]|0;if((g|0)==(b|0))return;e=g;g=h;do{c[g>>2]=c[e>>2];h=c[e+4>>2]|0;c[g+4>>2]=h;if(h|0)nB(h);e=e+8|0;g=(c[d>>2]|0)+8|0;c[d>>2]=g}while((e|0)!=(b|0));return}function wm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c[a>>2]=9288;c[a+12>>2]=8756;b=a+16|0;d=c[b>>2]|0;if(!d){hB(a);return}e=a+20|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;while(1){f=h+-8|0;c[e>>2]=f;i=c[h+-4>>2]|0;if(!i)j=f;else{oB(i);j=c[e>>2]|0}if((j|0)==(d|0))break;else h=j}g=c[b>>2]|0}tB(g);hB(a);return}function xm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;c[a>>2]=9288;c[a+12>>2]=8756;b=a+16|0;d=c[b>>2]|0;if(!d){hB(a);tB(a);return}e=a+20|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;while(1){f=h+-8|0;c[e>>2]=f;i=c[h+-4>>2]|0;if(!i)j=f;else{oB(i);j=c[e>>2]|0}if((j|0)==(d|0))break;else h=j}g=c[b>>2]|0}tB(g);hB(a);tB(a);return}function ym(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;c[a+12>>2]=8756;b=a+16|0;d=c[b>>2]|0;if(!d)return;e=a+20|0;a=c[e>>2]|0;if((a|0)==(d|0))f=d;else{g=a;while(1){a=g+-8|0;c[e>>2]=a;h=c[g+-4>>2]|0;if(!h)i=a;else{oB(h);i=c[e>>2]|0}if((i|0)==(d|0))break;else g=i}f=c[b>>2]|0}tB(f);return}function zm(a){a=a|0;tB(a);return}function Am(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=rB(28)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=9288;e=d+12|0;c[d+16>>2]=c[b>>2];f=b+4|0;c[d+20>>2]=c[f>>2];g=b+8|0;c[d+24>>2]=c[g>>2];c[g>>2]=0;c[f>>2]=0;c[b>>2]=0;c[e>>2]=8692;c[a>>2]=e;c[a+4>>2]=d;return}function Bm(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;Cm(e,b);c[a>>2]=c[e>>2];c[a+4>>2]=c[e+4>>2];l=d;return}function Cm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;d=l;l=l+16|0;e=d+4|0;f=d;g=rB(28)|0;c[g+4>>2]=0;c[g+8>>2]=0;c[g>>2]=9316;h=g+12|0;c[h>>2]=8884;i=g+16|0;j=g+20|0;c[j>>2]=0;c[g+24>>2]=0;c[i>>2]=j;k=c[b>>2]|0;m=b+4|0;if((k|0)==(m|0)){c[h>>2]=8820;n=a+4|0;c[a>>2]=h;c[n>>2]=g;l=d;return}b=j;j=k;o=k;while(1){k=j+16|0;c[f>>2]=b;c[e>>2]=c[f>>2];vd(i,e,k,k)|0;k=c[o+4>>2]|0;if(!k){p=o;while(1){q=c[p+8>>2]|0;if((c[q>>2]|0)==(p|0)){r=q;break}else p=q}}else{p=k;while(1){q=c[p>>2]|0;if(!q){r=p;break}else p=q}}if((r|0)==(m|0))break;else{j=r;o=r}}c[h>>2]=8820;n=a+4|0;c[a>>2]=h;c[n>>2]=g;l=d;return}function Dm(a){a=a|0;c[a>>2]=9316;c[a+12>>2]=8884;pd(a+16|0,c[a+20>>2]|0);hB(a);return}function Em(a){a=a|0;c[a>>2]=9316;c[a+12>>2]=8884;pd(a+16|0,c[a+20>>2]|0);hB(a);tB(a);return}function Fm(a){a=a|0;c[a+12>>2]=8884;pd(a+16|0,c[a+20>>2]|0);return}function Gm(a){a=a|0;tB(a);return}function Hm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=rB(28)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=9316;e=d+12|0;c[e>>2]=8884;f=d+16|0;c[f>>2]=c[b>>2];g=d+20|0;h=c[b+4>>2]|0;c[g>>2]=h;i=b+8|0;j=c[i>>2]|0;c[d+24>>2]=j;if(!j){c[f>>2]=g;c[e>>2]=8820;k=e;l=d;c[a>>2]=k;m=a+4|0;c[m>>2]=l;return}else{c[h+8>>2]=g;g=b+4|0;c[b>>2]=g;c[g>>2]=0;c[i>>2]=0;c[e>>2]=8820;k=e;l=d;c[a>>2]=k;m=a+4|0;c[m>>2]=l;return}}function Im(a){a=a|0;var b=0;b=c[a>>2]|0;return rb[c[c[b>>2]>>2]&127](b)|0}function Jm(a){a=a|0;var b=0;b=c[a>>2]|0;return +(+nb[c[(c[b>>2]|0)+16>>2]&3](b))}function Km(a){a=a|0;var b=0;b=c[a>>2]|0;return rb[c[(c[b>>2]|0)+20>>2]&127](b)|0}function Lm(a){a=a|0;var b=0;b=c[a>>2]|0;return rb[c[(c[b>>2]|0)+28>>2]&127](b)|0}function Mm(a){a=a|0;var b=0;b=c[a>>2]|0;return rb[c[(c[b>>2]|0)+32>>2]&127](b)|0}function Nm(a){a=a|0;var b=0;b=c[a>>2]|0;return rb[c[(c[b>>2]|0)+40>>2]&127](b)|0}function Om(a,b){a=a|0;b=b|0;var d=0;d=c[a>>2]|0;return zb[c[(c[d>>2]|0)+44>>2]&63](d,b)|0}function Pm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;g=l;l=l+80|0;h=g+8|0;i=g;j=g+68|0;k=g+48|0;m=g+40|0;n=g+24|0;o=g+12|0;c[k>>2]=d;p=k+4|0;c[p>>2]=0;q=k+8|0;c[q>>2]=e;e=k+12|0;a[e>>0]=0;c[k+16>>2]=f;Qm(m,k,0);Rm(k);do if(!(a[e>>0]|0)){k=c[p>>2]|0;f=a[d+11>>0]|0;r=f<<24>>24<0;if((k|0)==((r?c[d+4>>2]|0:f&255)|0)){c[b>>2]=c[m>>2];f=m+4|0;c[b+4>>2]=c[f>>2];c[m>>2]=0;c[f>>2]=0;break}f=a[(r?c[d>>2]|0:d)+k>>0]|0;k=f<<24>>24;if((f&255)>31&f<<24>>24>-1){c[i>>2]=k;c[i+4>>2]=k;Ao(j,12,30571,i)|0}else{c[h>>2]=k;Ao(j,12,30581,h)|0};c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;HB(o,j,yn(j)|0);k=ZB(o,0,30586)|0;c[n>>2]=c[k>>2];c[n+4>>2]=c[k+4>>2];c[n+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;Qk(j);if(!(a[e>>0]|0)){k=c[q>>2]|0;f=k+11|0;if((a[f>>0]|0)<0){a[c[k>>2]>>0]=0;c[k+4>>2]=0}else{a[k>>0]=0;a[f>>0]=0}QB(k,0);c[k>>2]=c[n>>2];c[k+4>>2]=c[n+4>>2];c[k+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0}a[e>>0]=1;c[b>>2]=c[j>>2];k=c[j+4>>2]|0;c[b+4>>2]=k;if(k|0){nB(k);oB(k)}LB(n);LB(o)}else Qk(b);while(0);b=c[m+4>>2]|0;if(!b){l=g;return}oB(b);l=g;return} function Pd(b,d){b=b|0;d=d|0;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,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0;e=c[d>>2]|0;if(e){f=c[d+4>>2]|0;if(!f){g=e;h=d}else{e=f;while(1){f=c[e>>2]|0;if(!f){g=0;h=e;break}else e=f}}}else{g=0;h=d}e=h+4|0;f=c[(g|0?h:e)>>2]|0;g=(f|0)!=0;i=h+8|0;if(g)c[f+8>>2]=c[i>>2];j=c[i>>2]|0;k=c[j>>2]|0;if((k|0)==(h|0)){c[j>>2]=f;if((h|0)==(b|0)){l=f;m=0}else{l=b;m=c[j+4>>2]|0}}else{c[j+4>>2]=f;l=b;m=k}k=h+12|0;b=(a[k>>0]|0)!=0;if((h|0)==(d|0))n=l;else{j=d+8|0;o=c[j>>2]|0;c[i>>2]=o;i=o;c[((c[c[j>>2]>>2]|0)==(d|0)?i:i+4|0)>>2]=h;i=c[d>>2]|0;c[h>>2]=i;c[i+8>>2]=h;i=c[d+4>>2]|0;c[e>>2]=i;if(i|0)c[i+8>>2]=h;a[k>>0]=a[d+12>>0]|0;n=(l|0)==(d|0)?h:l}if(!(b&(n|0)!=0))return;if(g){a[f+12>>0]=1;return}else{p=m;q=n}while(1){n=c[p+8>>2]|0;m=p+12|0;f=(a[m>>0]|0)!=0;if((c[n>>2]|0)==(p|0)){if(f){r=p;s=q}else{a[m>>0]=1;a[n+12>>0]=0;g=c[n>>2]|0;b=g+4|0;l=c[b>>2]|0;c[n>>2]=l;if(l|0)c[l+8>>2]=n;l=n+8|0;c[g+8>>2]=c[l>>2];h=c[l>>2]|0;c[((c[h>>2]|0)==(n|0)?h:h+4|0)>>2]=g;c[b>>2]=n;c[l>>2]=g;g=c[p+4>>2]|0;r=c[g>>2]|0;s=(q|0)==(g|0)?p:q}t=c[r>>2]|0;u=(t|0)==0;if(!u?(a[t+12>>0]|0)==0:0){v=r;w=t;x=54;break}y=r+4|0;z=c[y>>2]|0;if(z|0?(a[z+12>>0]|0)==0:0){x=48;break}a[r+12>>0]=0;g=c[r+8>>2]|0;A=g+12|0;if((g|0)==(s|0)|(a[A>>0]|0)==0){x=47;break}else{B=s;C=g}}else{if(f){D=p;E=q}else{a[m>>0]=1;a[n+12>>0]=0;m=n+4|0;f=c[m>>2]|0;g=c[f>>2]|0;c[m>>2]=g;if(g|0)c[g+8>>2]=n;g=n+8|0;c[f+8>>2]=c[g>>2];m=c[g>>2]|0;c[((c[m>>2]|0)==(n|0)?m:m+4|0)>>2]=f;c[f>>2]=n;c[g>>2]=f;f=c[p>>2]|0;D=c[f+4>>2]|0;E=(q|0)==(f|0)?p:q}F=c[D>>2]|0;if(F|0?(a[F+12>>0]|0)==0:0){x=30;break}f=c[D+4>>2]|0;if(f|0?(a[f+12>>0]|0)==0:0){G=f;x=31;break}a[D+12>>0]=0;f=c[D+8>>2]|0;if((f|0)==(E|0)){H=E;x=29;break}if(!(a[f+12>>0]|0)){H=f;x=29;break}else{B=E;C=f}}f=c[C+8>>2]|0;p=c[((c[f>>2]|0)==(C|0)?f+4|0:f)>>2]|0;q=B}do if((x|0)==29){a[H+12>>0]=1;return}else if((x|0)==30){B=c[D+4>>2]|0;if(!B)x=32;else{G=B;x=31}}else if((x|0)==47){a[A>>0]=1;return}else if((x|0)==48){if(u){I=y;J=z}else{if(!(a[t+12>>0]|0)){v=r;w=t;x=54;break}B=r+4|0;I=B;J=c[B>>2]|0}a[J+12>>0]=1;a[r+12>>0]=0;B=c[J>>2]|0;c[I>>2]=B;if(B|0)c[B+8>>2]=r;B=r+8|0;c[J+8>>2]=c[B>>2];q=c[B>>2]|0;c[((c[q>>2]|0)==(r|0)?q:q+4|0)>>2]=J;c[J>>2]=r;c[B>>2]=J;v=J;w=r;x=54}while(0);if((x|0)==31)if(!(a[G+12>>0]|0)){K=D;L=G}else x=32;else if((x|0)==54){G=c[v+8>>2]|0;r=G+12|0;a[v+12>>0]=a[r>>0]|0;a[r>>0]=1;a[w+12>>0]=1;w=c[G>>2]|0;r=w+4|0;v=c[r>>2]|0;c[G>>2]=v;if(v|0)c[v+8>>2]=G;v=G+8|0;c[w+8>>2]=c[v>>2];J=c[v>>2]|0;c[((c[J>>2]|0)==(G|0)?J:J+4|0)>>2]=w;c[r>>2]=G;c[v>>2]=w;return}if((x|0)==32){a[F+12>>0]=1;a[D+12>>0]=0;x=F+4|0;w=c[x>>2]|0;c[D>>2]=w;if(w|0)c[w+8>>2]=D;w=D+8|0;c[F+8>>2]=c[w>>2];v=c[w>>2]|0;c[((c[v>>2]|0)==(D|0)?v:v+4|0)>>2]=F;c[x>>2]=D;c[w>>2]=F;K=F;L=D}D=c[K+8>>2]|0;F=D+12|0;a[K+12>>0]=a[F>>0]|0;a[F>>0]=1;a[L+12>>0]=1;L=D+4|0;F=c[L>>2]|0;K=c[F>>2]|0;c[L>>2]=K;if(K|0)c[K+8>>2]=D;K=D+8|0;c[F+8>>2]=c[K>>2];L=c[K>>2]|0;c[((c[L>>2]|0)==(D|0)?L:L+4|0)>>2]=F;c[F>>2]=D;c[K>>2]=F;return}function Qd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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;d=l;l=l+16|0;e=d+4|0;f=d;c[f>>2]=b;g=a+8|0;h=a+12|0;i=c[h>>2]|0;if(!i){l=d;return}else{j=h;k=i}a:while(1){m=k;while(1){if((c[m+16>>2]|0)>>>0>=b>>>0)break;n=c[m+4>>2]|0;if(!n){o=j;break a}else m=n}k=c[m>>2]|0;if(!k){o=m;break}else j=m}if((o|0)==(h|0)){l=d;return}if((c[o+16>>2]|0)>>>0>b>>>0){l=d;return}o=i;while(1){i=c[o+16>>2]|0;if(i>>>0>b>>>0){j=c[o>>2]|0;if(!j){p=o;break}else q=j}else{if(i>>>0>=b>>>0){p=e;break}i=o+4|0;j=c[i>>2]|0;if(!j){p=i;break}else q=j}o=q}c[e>>2]=o;e=c[p>>2]|0;if(!e){q=rB(24)|0;c[q+16>>2]=b;c[q+20>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=o;c[p>>2]=q;o=c[c[g>>2]>>2]|0;if(!o)r=q;else{c[g>>2]=o;r=c[p>>2]|0}gc(c[a+12>>2]|0,r);r=a+16|0;c[r>>2]=(c[r>>2]|0)+1;s=q}else s=e;e=c[s+20>>2]|0;Rd(a+68|0,f)|0;s=c[h>>2]|0;if(s|0){q=c[f>>2]|0;r=h;p=s;b:while(1){o=p;while(1){if((c[o+16>>2]|0)>>>0>=q>>>0)break;b=c[o+4>>2]|0;if(!b){t=r;break b}else o=b}p=c[o>>2]|0;if(!p){t=o;break}else r=o}if((t|0)!=(h|0)?q>>>0>=(c[t+16>>2]|0)>>>0:0){q=c[t+4>>2]|0;if(!q){h=t;while(1){r=c[h+8>>2]|0;if((c[r>>2]|0)==(h|0)){u=r;break}else h=r}}else{h=q;while(1){q=c[h>>2]|0;if(!q){u=h;break}else h=q}}if((c[g>>2]|0)==(t|0))c[g>>2]=u;u=a+16|0;c[u>>2]=(c[u>>2]|0)+-1;Pd(s,t);tB(t)}}t=c[f>>2]|0;if((c[a+4>>2]|0)!=(t|0)?(s=a+36|0,u=c[s>>2]|0,u|0):0){g=s;h=u;c:while(1){q=h;while(1){if((c[q+16>>2]|0)>>>0>=t>>>0)break;r=c[q+4>>2]|0;if(!r){v=g;break c}else q=r}h=c[q>>2]|0;if(!h){v=q;break}else g=q}if((v|0)!=(s|0)?(c[v+16>>2]|0)>>>0<=t>>>0:0){v=a+32|0;g=s;h=u;d:while(1){o=h;while(1){if((c[o+16>>2]|0)>>>0>=t>>>0)break;r=c[o+4>>2]|0;if(!r){w=g;break d}else o=r}h=c[o>>2]|0;if(!h){w=o;break}else g=o}if((w|0)!=(s|0)?t>>>0>=(c[w+16>>2]|0)>>>0:0){t=c[w+4>>2]|0;if(!t){s=w;while(1){g=c[s+8>>2]|0;if((c[g>>2]|0)==(s|0)){x=g;break}else s=g}}else{s=t;while(1){t=c[s>>2]|0;if(!t){x=s;break}else s=t}}if((c[v>>2]|0)==(w|0))c[v>>2]=x;x=a+40|0;c[x>>2]=(c[x>>2]|0)+-1;Pd(u,w);tB(w)}w=a+44|0;u=a+48|0;x=c[u>>2]|0;if(x|0){v=c[f>>2]|0;f=u;s=x;e:while(1){t=s;while(1){if((c[t+16>>2]|0)>>>0>=v>>>0)break;g=c[t+4>>2]|0;if(!g){y=f;break e}else t=g}s=c[t>>2]|0;if(!s){y=t;break}else f=t}if((y|0)!=(u|0)?v>>>0>=(c[y+16>>2]|0)>>>0:0){v=c[y+4>>2]|0;if(!v){u=y;while(1){f=c[u+8>>2]|0;if((c[f>>2]|0)==(u|0)){z=f;break}else u=f}}else{u=v;while(1){v=c[u>>2]|0;if(!v){z=u;break}else u=v}}if((c[w>>2]|0)==(y|0))c[w>>2]=z;z=a+52|0;c[z>>2]=(c[z>>2]|0)+-1;Pd(x,y);tB(y)}}}}y=a+20|0;x=a+24|0;z=c[x>>2]|0;if(!z){l=d;return}else{A=x;B=z}f:while(1){w=B;while(1){if((c[w+16>>2]|0)>>>0>=e>>>0)break;u=c[w+4>>2]|0;if(!u){C=A;break f}else w=u}B=c[w>>2]|0;if(!B){C=w;break}else A=w}if((C|0)==(x|0)){l=d;return}if(e>>>0<(c[C+16>>2]|0)>>>0){l=d;return}e=c[C+4>>2]|0;if(!e){x=C;while(1){A=c[x+8>>2]|0;if((c[A>>2]|0)==(x|0)){D=A;break}else x=A}}else{x=e;while(1){e=c[x>>2]|0;if(!e){D=x;break}else x=e}}if((c[y>>2]|0)==(C|0))c[y>>2]=D;D=a+28|0;c[D>>2]=(c[D>>2]|0)+-1;Pd(z,C);tB(C);l=d;return}function Rd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=a+4|0;e=c[d>>2]|0;if(!e){f=0;return f|0}g=c[b>>2]|0;b=d;h=e;a:while(1){i=h;while(1){if((c[i+16>>2]|0)>>>0>=g>>>0)break;j=c[i+4>>2]|0;if(!j){k=b;break a}else i=j}h=c[i>>2]|0;if(!h){k=i;break}else b=i}if((k|0)==(d|0)){f=0;return f|0}if(g>>>0<(c[k+16>>2]|0)>>>0){f=0;return f|0}g=c[k+4>>2]|0;if(!g){d=k;while(1){b=c[d+8>>2]|0;if((c[b>>2]|0)==(d|0)){l=b;break}else d=b}}else{d=g;while(1){g=c[d>>2]|0;if(!g){l=d;break}else d=g}}if((c[a>>2]|0)==(k|0))c[a>>2]=l;l=a+8|0;c[l>>2]=(c[l>>2]|0)+-1;Pd(e,k);e=c[k+24>>2]|0;if(e|0)oB(e);tB(k);f=1;return f|0}function Sd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;f=l;l=l+48|0;g=f+24|0;h=f+12|0;i=f;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,19063,6);j=(Im(Om(b,g)|0)|0)==3;LB(g);if(!j){RB(e,19587)|0;l=f;return};c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,19063,6);j=Lm(Om(b,g)|0)|0;k=a[j+11>>0]|0;m=k<<24>>24<0;n=k&255;k=m?c[j+4>>2]|0:n;o=d+11|0;p=a[o>>0]|0;q=p<<24>>24<0;r=d+4|0;a:do if((k|0)==((q?c[r>>2]|0:p&255)|0)){s=c[j>>2]|0;t=m?s:j;u=q?c[d>>2]|0:d;v=(k|0)==0;b:do if(m)if(!v){w=(Eo(t,u,k)|0)==0;LB(g);if(!w)break a}else x=10;else if(v)x=10;else{if((s&255)<<24>>24==(a[u>>0]|0)){y=n;z=u;A=j}else{x=11;break a}while(1){y=y+-1|0;A=A+1|0;if(!y){x=10;break b}z=z+1|0;if((a[A>>0]|0)!=(a[z>>0]|0)){x=11;break a}}}while(0);if((x|0)==10)LB(g);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,19580,6);if(Im(Om(b,g)|0)|0){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,19580,6);u=(Im(Om(b,h)|0)|0)==5;LB(h);LB(g);if(!u){RB(e,19642)|0;l=f;return}}else LB(g);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,19077,2);do if(Im(Om(b,g)|0)|0){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,19077,2);if((Im(Om(b,h)|0)|0)==1){LB(h);LB(g);break};c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,19077,2);u=(Im(Om(b,i)|0)|0)==3;LB(i);LB(h);LB(g);if(!u){RB(e,19669)|0;l=f;return}}else LB(g);while(0);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,19353,7);if(Im(Om(b,g)|0)|0){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,19353,7);u=(Im(Om(b,h)|0)|0)==3;LB(h);LB(g);if(!u){RB(e,19702)|0;l=f;return}}else LB(g);u=Nm(b)|0;s=c[u>>2]|0;v=u+4|0;if((s|0)==(v|0)){l=f;return}u=s;t=s;c:while(1){B=u+16|0;C=B+11|0;s=a[C>>0]|0;D=u+20|0;w=c[D>>2]|0;if(((s<<24>>24<0?w:s&255)|0)==6){if(bC(B,0,-1,19063,6)|0){E=a[C>>0]|0;F=c[D>>2]|0;x=36}}else{E=s;F=w;x=36}do if((x|0)==36){x=0;if(((E<<24>>24<0?F:E&255)|0)==6){if(!(bC(B,0,-1,19580,6)|0))break;G=a[C>>0]|0;H=c[D>>2]|0}else{G=E;H=F}if(((G<<24>>24<0?H:G&255)|0)==2){if(!(bC(B,0,-1,19077,2)|0))break;I=a[C>>0]|0;J=c[D>>2]|0}else{I=G;J=H}if(((I<<24>>24<0?J:I&255)|0)!=7){K=I;L=J;break c}if(bC(B,0,-1,19353,7)|0){x=44;break c}}while(0);w=c[t+4>>2]|0;if(!w){s=t;while(1){M=c[s+8>>2]|0;if((c[M>>2]|0)==(s|0)){N=M;break}else s=M}}else{s=w;while(1){M=c[s>>2]|0;if(!M){N=s;break}else s=M}}if((N|0)==(v|0)){x=53;break}else{u=N;t=N}}if((x|0)==44){K=a[C>>0]|0;L=c[D>>2]|0}else if((x|0)==53){l=f;return};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;t=K<<24>>24<0?L:K&255;cC(h,19730,18,t+18|0);VB(h,(a[C>>0]|0)<0?c[B>>2]|0:B,t)|0;t=WB(h,19749)|0;c[g>>2]=c[t>>2];c[g+4>>2]=c[t+4>>2];c[g+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;t=e+11|0;if((a[t>>0]|0)<0){a[c[e>>2]>>0]=0;c[e+4>>2]=0}else{a[e>>0]=0;a[t>>0]=0}QB(e,0);c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;LB(g);LB(h);l=f;return}else x=11;while(0);if((x|0)==11)LB(g);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;x=a[o>>0]|0;B=x<<24>>24<0?c[r>>2]|0:x&255;cC(h,19614,16,B+16|0);VB(h,(a[o>>0]|0)<0?c[d>>2]|0:d,B)|0;B=WB(h,19631)|0;c[g>>2]=c[B>>2];c[g+4>>2]=c[B+4>>2];c[g+8>>2]=c[B+8>>2];c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;B=e+11|0;if((a[B>>0]|0)<0){a[c[e>>2]>>0]=0;c[e+4>>2]=0}else{a[e>>0]=0;a[B>>0]=0}QB(e,0);c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;LB(g);LB(h);l=f;return}function Td(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0.0,Y=0,Z=0,_=0;i=l;l=l+160|0;j=i+136|0;k=i+104|0;m=i+96|0;n=i+92|0;o=i+88|0;p=i+84|0;q=i+72|0;r=i+56|0;s=i+16|0;t=i+64|0;u=i;v=i+40|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,19039,6);c[k+12>>2]=1;w=k+16|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;HB(w,19773,12);c[k+28>>2]=5;c[j>>2]=k;c[j+4>>2]=2;w=Xm(d,j,h)|0;LB(k+16|0);LB(k);if(!w){c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;w=h+11|0;x=a[w>>0]|0;y=h+4|0;z=x<<24>>24<0?c[y>>2]|0:x&255;cC(j,19786,27,z+27|0);VB(j,(a[w>>0]|0)<0?c[h>>2]|0:h,z)|0;if((a[w>>0]|0)<0){a[c[h>>2]>>0]=0;c[y>>2]=0}else{a[h>>0]=0;a[w>>0]=0}QB(h,0);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;LB(j);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;l=i;return};c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19773,12);w=Om(d,j)|0;c[r>>2]=c[w>>2];y=r+4|0;z=c[w+4>>2]|0;c[y>>2]=z;if(z|0)nB(z);LB(j);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,19100,9);c[k+12>>2]=5;z=k+16|0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;HB(z,19814,12);c[k+28>>2]=4;c[j>>2]=k;c[j+4>>2]=2;z=Xm(r,j,h)|0;LB(k+16|0);LB(k);if(z){c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;c[s+16>>2]=0;c[s+20>>2]=0;z=c[(c[e>>2]|0)+12>>2]|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19039,6);w=Km(Om(d,j)|0)|0;c[s>>2]=zb[z&63](e,w)|0;LB(j);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,19100,9);w=Om(r,k)|0;c[t>>2]=c[w>>2];e=t+4|0;z=c[w+4>>2]|0;c[e>>2]=z;if(z|0)nB(z);Ud(j,t,h);t=s+16|0;c[t>>2]=c[j>>2];z=s+20|0;c[z>>2]=c[j+4>>2];w=c[e>>2]|0;if(w|0)oB(w);LB(k);w=h+11|0;e=a[w>>0]|0;d=h+4|0;a:do if(((e<<24>>24<0?c[d>>2]|0:e&255)|0)==0?(bC(h,0,-1,44918,0)|0)==0:0){c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19814,12);x=Mm(Om(r,j)|0)|0;LB(j);A=c[x>>2]|0;B=c[x+4>>2]|0;b:do if((A|0)==(B|0)){C=s+8|0;D=s+12|0;E=s+4|0}else{x=v+11|0;F=v+4|0;G=q;H=q+11|0;I=q+4|0;J=s+8|0;K=s+12|0;L=s+4|0;M=u+4|0;N=j+4|0;O=j+8|0;P=k+4|0;Q=j+8|0;R=A;while(1){if((Im(R)|0)==3){GB(v,Lm(R)|0);c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;S=a[x>>0]|0;T=S<<24>>24<0;U=T?c[v>>2]|0:v;V=U+(T?c[F>>2]|0:S&255)|0;c[n>>2]=U;c[o>>2]=V;c[p>>2]=G;c[m>>2]=c[n>>2];c[k>>2]=c[o>>2];c[j>>2]=c[p>>2];Vd(m,k,j);V=a[H>>0]|0;U=V<<24>>24<0;S=U?c[q>>2]|0:q;Wd(u,S,S+((U?c[I>>2]|0:V&255)>>>2<<2)|0);LB(q);LB(v);V=a[w>>0]|0;if(((V<<24>>24<0?c[d>>2]|0:V&255)|0)==0?(bC(h,0,-1,44918,0)|0)==0:0){V=c[J>>2]|0;if((V|0)==(c[K>>2]|0))Yd(L,u);else{Xd(V,u);c[J>>2]=(c[J>>2]|0)+12}c[f>>2]=1;W=0}else{c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;W=1}V=c[u>>2]|0;if(V|0){U=c[M>>2]|0;if((U|0)!=(V|0))c[M>>2]=U+(~((U+-4-V|0)>>>2)<<2);tB(V)}if(W|0)break a}else{if((Im(R)|0)!=4)break;c[j>>2]=0;c[N>>2]=0;c[O>>2]=0;V=Mm(R)|0;U=c[V>>2]|0;S=c[V+4>>2]|0;if((U|0)!=(S|0)){V=U;do{c[k>>2]=c[V>>2];U=c[V+4>>2]|0;c[P>>2]=U;if(U|0)nB(U);X=+Jm(k);g[m>>2]=X;U=c[N>>2]|0;if(U>>>0<(c[Q>>2]|0)>>>0){g[U>>2]=X;c[N>>2]=U+4}else Zd(j,m);U=c[P>>2]|0;if(U|0)oB(U);V=V+8|0}while((V|0)!=(S|0))}S=c[J>>2]|0;if((S|0)==(c[K>>2]|0))Yd(L,j);else{Xd(S,j);c[J>>2]=(c[J>>2]|0)+12}c[f>>2]=0;S=c[j>>2]|0;if(S|0){V=c[N>>2]|0;if((V|0)!=(S|0))c[N>>2]=V+(~((V+-4-S|0)>>>2)<<2);tB(S)}}R=R+8|0;if((R|0)==(B|0)){C=J;D=K;E=L;break b}}RB(h,19827)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;break a}while(0);c[b>>2]=c[s>>2];c[b+4>>2]=c[E>>2];c[b+8>>2]=c[C>>2];c[b+12>>2]=c[D>>2];c[D>>2]=0;c[C>>2]=0;c[s+4>>2]=0;c[b+16>>2]=c[t>>2];c[b+20>>2]=c[z>>2]}else Y=19;while(0);if((Y|0)==19){c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0}Y=s+4|0;z=c[Y>>2]|0;if(z|0){t=s+8|0;s=c[t>>2]|0;if((s|0)==(z|0))Z=z;else{C=s;while(1){s=C+-12|0;c[t>>2]=s;D=c[s>>2]|0;if(!D)_=s;else{s=C+-8|0;E=c[s>>2]|0;if((E|0)!=(D|0))c[s>>2]=E+(~((E+-4-D|0)>>>2)<<2);tB(D);_=c[t>>2]|0}if((_|0)==(z|0))break;else C=_}Z=c[Y>>2]|0}tB(Z)}}else{c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Z=h+11|0;Y=a[Z>>0]|0;_=h+4|0;C=Y<<24>>24<0?c[_>>2]|0:Y&255;cC(j,19786,27,C+27|0);VB(j,(a[Z>>0]|0)<0?c[h>>2]|0:h,C)|0;if((a[Z>>0]|0)<0){a[c[h>>2]>>0]=0;c[_>>2]=0}else{a[h>>0]=0;a[Z>>0]=0}QB(h,0);c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;LB(j);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0}b=c[y>>2]|0;if(b|0)oB(b);l=i;return}function Ud(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;f=l;l=l+48|0;g=f+40|0;h=f+24|0;i=f+12|0;j=f;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,26681,1);k=Om(d,h)|0;c[g>>2]=c[k>>2];m=g+4|0;n=c[k+4>>2]|0;c[m>>2]=n;if(n|0)nB(n);LB(h);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,19119,1);n=Om(d,i)|0;c[h>>2]=c[n>>2];k=h+4|0;o=c[n+4>>2]|0;c[k>>2]=o;if(o|0)nB(o);LB(i);if((Im(g)|0)==1?(Im(h)|0)==1:0){o=Km(g)|0;Bk(b,o,Km(h)|0)}else{c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Hl(d,j);d=ZB(j,0,19876)|0;c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;d=e+11|0;if((a[d>>0]|0)<0){a[c[e>>2]>>0]=0;c[e+4>>2]=0}else{a[e>>0]=0;a[d>>0]=0}QB(e,0);c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;LB(i);LB(j);c[b>>2]=0;c[b+4>>2]=0}b=c[k>>2]|0;if(b|0)oB(b);b=c[m>>2]|0;if(!b){l=f;return}oB(b);l=f;return}function Vd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f=c[b>>2]|0;b=c[d>>2]|0;if((f|0)==(b|0))return;d=0;g=0;h=f;a:while(1){f=h;b:while(1){i=a[f>>0]|0;j=i<<24>>24;c:do if(!(Bn(j)|0)){d:do if((i+-65&255)>=26)if((i+-97&255)>=26)if((i+-48&255)<10)k=4;else{switch(i<<24>>24){case 43:{k=19;break d;break}case 47:break;default:break c}k=16}else k=185;else k=191;while(0);l=k+j|0;if((l&255)<<24>>24!=-1)break b}while(0);j=f+1|0;if((j|0)==(b|0)){m=17;break a}else f=j}j=l<<24>>24;i=d+6|0;n=((i|0)<8?i:8)-d|0;if((n|0)==6){o=(j<<2-d|g&255)&255;if((i|0)==8){XB(c[e>>2]|0,o);p=0;q=0}else{p=i;q=o}}else{o=6-n|0;XB(c[e>>2]|0,(j>>o|g&255)&255);p=o;q=j<<8-o&255}h=f+1|0;if((h|0)==(b|0)){m=17;break}else{d=p;g=q}}if((m|0)==17)return}function Wd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;c[a>>2]=0;e=a+4|0;c[e>>2]=0;c[a+8>>2]=0;f=b;g=d-f|0;h=g>>2;if(!h)return;if(h>>>0>1073741823){Az(a);i=za(4)|0;AD(i);Xa(i|0,3080,250)}i=rB(g)|0;c[e>>2]=i;c[a>>2]=i;c[a+8>>2]=i+(h<<2);if((b|0)==(d|0))return;h=((d+-4-f|0)>>>2)+1|0;f=b;b=i;while(1){c[b>>2]=c[f>>2];f=f+4|0;if((f|0)==(d|0))break;else b=b+4|0}c[e>>2]=i+(h<<2);return}function Xd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=f>>2;if(!g)return;if(g>>>0>1073741823){Az(a);h=za(4)|0;AD(h);Xa(h|0,3080,250)}h=rB(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g<<2);g=c[b>>2]|0;b=(c[e>>2]|0)-g|0;if((b|0)<=0)return;MD(h|0,g|0,b|0)|0;c[d>>2]=h+(b>>>2<<2);return}function Yd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=((e-f|0)/12|0)+1|0;if(g>>>0>357913941){Az(a);h=c[a>>2]|0;i=c[d>>2]|0}else{h=f;i=e}e=a+8|0;f=((c[e>>2]|0)-h|0)/12|0;j=f<<1;k=f>>>0<178956970?(j>>>0<g>>>0?g:j):357913941;j=(i-h|0)/12|0;do if(k)if(k>>>0>357913941){h=za(4)|0;AD(h);Xa(h|0,3080,250)}else{l=rB(k*12|0)|0;break}else l=0;while(0);h=l+(j*12|0)|0;j=h;i=l+(k*12|0)|0;Xd(h,b);b=h+12|0;k=c[a>>2]|0;l=c[d>>2]|0;if((l|0)==(k|0)){m=j;n=k;o=k}else{g=l;l=j;j=h;do{h=j+-12|0;f=g;g=g+-12|0;c[h>>2]=0;p=j+-8|0;c[p>>2]=0;c[j+-4>>2]=0;c[h>>2]=c[g>>2];h=f+-8|0;c[p>>2]=c[h>>2];p=f+-4|0;c[j+-4>>2]=c[p>>2];c[p>>2]=0;c[h>>2]=0;c[g>>2]=0;j=l+-12|0;l=j}while((g|0)!=(k|0));m=l;n=c[a>>2]|0;o=c[d>>2]|0}c[a>>2]=m;c[d>>2]=b;c[e>>2]=i;i=n;if((o|0)!=(i|0)){e=o;do{o=e;e=e+-12|0;b=c[e>>2]|0;if(b|0){d=o+-8|0;o=c[d>>2]|0;if((o|0)!=(b|0))c[d>>2]=o+(~((o+-4-b|0)>>>2)<<2);tB(b)}}while((e|0)!=(i|0))}if(!n)return;tB(n);return}function Zd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>2)+1|0;if(g>>>0>1073741823){Az(a);h=c[a>>2]|0;i=c[d>>2]|0}else{h=f;i=e}e=a+8|0;f=(c[e>>2]|0)-h|0;j=f>>1;k=f>>2>>>0<536870911?(j>>>0<g>>>0?g:j):1073741823;j=i-h>>2;do if(k)if(k>>>0>1073741823){g=za(4)|0;AD(g);Xa(g|0,3080,250)}else{l=rB(k<<2)|0;break}else l=0;while(0);g=l+(j<<2)|0;c[g>>2]=c[b>>2];b=i-h|0;i=g+(0-(b>>2)<<2)|0;if((b|0)>0)MD(i|0,h|0,b|0)|0;c[a>>2]=i;c[d>>2]=g+4;c[e>>2]=l+(k<<2);if(!h)return;tB(h);return}function _d(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0;e=l;l=l+80|0;f=e+64|0;g=e+48|0;h=e+36|0;i=e+24|0;j=e+12|0;k=e;m=g+4|0;c[m>>2]=0;n=g+8|0;c[n>>2]=0;o=g+4|0;c[g>>2]=o;Il(h,+((zb[c[(c[d>>2]|0)+8>>2]&63](d,c[b>>2]|0)|0)>>>0));c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,19039,6);d=md(g,f,i)|0;p=c[d>>2]|0;if(!p){q=rB(36)|0;r=q+16|0;c[r>>2]=c[i>>2];c[r+4>>2]=c[i+4>>2];c[r+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Qk(q+28|0);r=c[f>>2]|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=r;c[d>>2]=q;r=c[c[g>>2]>>2]|0;if(!r)s=q;else{c[g>>2]=r;s=c[d>>2]|0}gc(c[m>>2]|0,s);c[n>>2]=(c[n>>2]|0)+1;t=q}else t=p;p=c[h>>2]|0;q=h+4|0;s=c[q>>2]|0;c[h>>2]=0;c[q>>2]=0;c[t+28>>2]=p;p=t+32|0;t=c[p>>2]|0;c[p>>2]=s;if(t|0)oB(t);LB(i);t=c[q>>2]|0;if(t|0)oB(t);c[h>>2]=0;t=h+4|0;c[t>>2]=0;c[h+8>>2]=0;q=c[b+4>>2]|0;s=c[b+8>>2]|0;a:do if((q|0)!=(s|0)){p=b+16|0;d=b+20|0;r=h+8|0;u=f+4|0;v=q;while(1){GB(i,v);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;if(($d(p,i)|0)!=(d|0)){w=c[(ae(p,f,i)|0)>>2]|0;if(!w)break;MB(j,w+28|0)|0}be(f,v,j);w=c[t>>2]|0;if(w>>>0>=(c[r>>2]|0)>>>0){rd(h,f);x=c[u>>2]|0;if(x|0)oB(x)}else{c[w>>2]=c[f>>2];c[w+4>>2]=c[u>>2];c[f>>2]=0;c[u>>2]=0;c[t>>2]=w+8}LB(j);LB(i);v=v+100|0;if((v|0)==(s|0))break a}v=za(8)|0;yB(v,18831);c[v>>2]=17228;Xa(v|0,3128,252)}while(0);um(i,h);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19934,10);s=md(g,f,j)|0;q=c[s>>2]|0;if(!q){v=rB(36)|0;u=v+16|0;c[u>>2]=c[j>>2];c[u+4>>2]=c[j+4>>2];c[u+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Qk(v+28|0);u=c[f>>2]|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=u;c[s>>2]=v;u=c[c[g>>2]>>2]|0;if(!u)y=v;else{c[g>>2]=u;y=c[s>>2]|0}gc(c[m>>2]|0,y);c[n>>2]=(c[n>>2]|0)+1;z=v}else z=q;q=c[i>>2]|0;v=i+4|0;y=c[v>>2]|0;c[i>>2]=0;c[v>>2]=0;c[z+28>>2]=q;q=z+32|0;z=c[q>>2]|0;c[q>>2]=y;if(z|0)oB(z);LB(j);z=c[v>>2]|0;if(z|0)oB(z);z=i+4|0;c[z>>2]=0;v=i+8|0;c[v>>2]=0;y=i+4|0;c[i>>2]=y;Ul(j,c[b+28>>2]|0);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,19945,8);q=md(i,f,k)|0;s=c[q>>2]|0;if(!s){u=rB(36)|0;r=u+16|0;c[r>>2]=c[k>>2];c[r+4>>2]=c[k+4>>2];c[r+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;Qk(u+28|0);r=c[f>>2]|0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=r;c[q>>2]=u;r=c[c[i>>2]>>2]|0;if(!r)A=u;else{c[i>>2]=r;A=c[q>>2]|0}gc(c[z>>2]|0,A);c[v>>2]=(c[v>>2]|0)+1;B=u}else B=s;s=c[j>>2]|0;u=j+4|0;A=c[u>>2]|0;c[j>>2]=0;c[u>>2]=0;c[B+28>>2]=s;s=B+32|0;B=c[s>>2]|0;c[s>>2]=A;if(B|0)oB(B);LB(k);B=c[u>>2]|0;if(B|0)oB(B);Ul(j,c[b+32>>2]|0);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,19954,9);b=md(i,f,k)|0;B=c[b>>2]|0;if(!B){u=rB(36)|0;A=u+16|0;c[A>>2]=c[k>>2];c[A+4>>2]=c[k+4>>2];c[A+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;Qk(u+28|0);A=c[f>>2]|0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=A;c[b>>2]=u;A=c[c[i>>2]>>2]|0;if(!A)C=u;else{c[i>>2]=A;C=c[b>>2]|0}gc(c[z>>2]|0,C);c[v>>2]=(c[v>>2]|0)+1;D=u}else D=B;B=c[j>>2]|0;u=j+4|0;v=c[u>>2]|0;c[j>>2]=0;c[u>>2]=0;c[D+28>>2]=B;B=D+32|0;D=c[B>>2]|0;c[B>>2]=v;if(D|0)oB(D);LB(k);D=c[u>>2]|0;if(D|0)oB(D);Bm(j,i);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,19964,7);D=md(g,f,k)|0;u=c[D>>2]|0;if(!u){v=rB(36)|0;B=v+16|0;c[B>>2]=c[k>>2];c[B+4>>2]=c[k+4>>2];c[B+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;Qk(v+28|0);B=c[f>>2]|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=B;c[D>>2]=v;B=c[c[g>>2]>>2]|0;if(!B)E=v;else{c[g>>2]=B;E=c[D>>2]|0}gc(c[m>>2]|0,E);c[n>>2]=(c[n>>2]|0)+1;F=v}else F=u;u=c[j>>2]|0;v=j+4|0;n=c[v>>2]|0;c[j>>2]=0;c[v>>2]=0;c[F+28>>2]=u;u=F+32|0;F=c[u>>2]|0;c[u>>2]=n;if(F|0)oB(F);LB(k);k=c[v>>2]|0;if(k|0)oB(k);Bm(a,g);pd(i,c[y>>2]|0);y=c[h>>2]|0;if(!y){G=c[o>>2]|0;pd(g,G);l=e;return}i=c[t>>2]|0;if((i|0)==(y|0))H=y;else{a=i;while(1){i=a+-8|0;c[t>>2]=i;k=c[a+-4>>2]|0;if(!k)I=i;else{oB(k);I=c[t>>2]|0}if((I|0)==(y|0))break;else a=I}H=c[h>>2]|0}tB(H);G=c[o>>2]|0;pd(g,G);l=e;return}function $d(b,d){b=b|0;d=d|0;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,q=0,r=0;e=b+4|0;b=c[e>>2]|0;do if(b|0){f=a[d+11>>0]|0;g=f<<24>>24<0;h=g?c[d+4>>2]|0:f&255;f=g?c[d>>2]|0:d;g=e;i=b;a:while(1){j=i;while(1){k=j+16|0;l=a[k+11>>0]|0;m=l<<24>>24<0;n=m?c[j+20>>2]|0:l&255;l=h>>>0<n>>>0?h:n;if((l|0)!=0?(o=Eo(m?c[k>>2]|0:k,f,l)|0,(o|0)!=0):0){if((o|0)>=0)break}else p=6;if((p|0)==6?(p=0,n>>>0>=h>>>0):0)break;n=c[j+4>>2]|0;if(!n){q=g;break a}else j=n}i=c[j>>2]|0;if(!i){q=j;break}else g=j}if((q|0)!=(e|0)){g=q+16|0;i=a[g+11>>0]|0;n=i<<24>>24<0;o=n?c[q+20>>2]|0:i&255;i=o>>>0<h>>>0?o:h;if(i|0?(l=Eo(f,n?c[g>>2]|0:g,i)|0,l|0):0){if((l|0)<0)break;else r=q;return r|0}if(h>>>0>=o>>>0){r=q;return r|0}}}while(0);r=e;return r|0}function ae(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=b+4|0;b=c[f>>2]|0;if(!b){c[d>>2]=f;g=f;return g|0}f=a[e+11>>0]|0;h=f<<24>>24<0;i=h?c[e+4>>2]|0:f&255;f=h?c[e>>2]|0:e;e=b;while(1){b=e+16|0;h=a[b+11>>0]|0;j=h<<24>>24<0;k=j?c[e+20>>2]|0:h&255;h=k>>>0<i>>>0;l=h?k:i;if((l|0)!=0?(m=Eo(f,j?c[b>>2]|0:b,l)|0,(m|0)!=0):0)if((m|0)<0)n=7;else n=9;else if(i>>>0<k>>>0)n=7;else n=9;if((n|0)==7){n=0;m=c[e>>2]|0;if(!m){n=8;break}else o=m}else if((n|0)==9){n=0;m=i>>>0<k>>>0?i:k;if((m|0)!=0?(k=Eo(j?c[b>>2]|0:b,f,m)|0,(k|0)!=0):0){if((k|0)>=0){n=16;break}}else n=11;if((n|0)==11?(n=0,!h):0){n=16;break}p=e+4|0;h=c[p>>2]|0;if(!h){n=15;break}else o=h}e=o}if((n|0)==8){c[d>>2]=e;g=e;return g|0}else if((n|0)==15){c[d>>2]=e;g=p;return g|0}else if((n|0)==16){c[d>>2]=e;g=d;return g|0}return 0}function be(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+112|0;f=e+100|0;g=e+96|0;h=e+84|0;i=e+24|0;j=e+16|0;k=e+8|0;m=e;ce(j,b);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,19972,5);c[i+12>>2]=c[j>>2];n=j+4|0;c[i+16>>2]=c[n>>2];c[j>>2]=0;c[n>>2]=0;de(k,d);d=i+20|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;HB(d,19978,6);c[i+32>>2]=c[k>>2];d=k+4|0;c[i+36>>2]=c[d>>2];c[k>>2]=0;c[d>>2]=0;ee(m,b);b=i+40|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;HB(b,19985,10);c[i+52>>2]=c[m>>2];b=m+4|0;c[i+56>>2]=c[b>>2];c[m>>2]=0;c[b>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;m=h+4|0;c[h>>2]=m;k=m;c[g>>2]=k;c[f>>2]=c[g>>2];vd(h,f,i,i)|0;j=i+20|0;c[g>>2]=k;c[f>>2]=c[g>>2];vd(h,f,j,j)|0;j=i+40|0;c[g>>2]=k;c[f>>2]=c[g>>2];vd(h,f,j,j)|0;j=c[i+56>>2]|0;if(j|0)oB(j);LB(i+40|0);j=c[i+36>>2]|0;if(j|0)oB(j);LB(i+20|0);j=c[i+16>>2]|0;if(j|0)oB(j);LB(i);i=c[b>>2]|0;if(i|0)oB(i);i=c[d>>2]|0;if(i|0)oB(i);i=c[n>>2]|0;if(!i){Bm(a,h);o=c[m>>2]|0;pd(h,o);l=e;return}oB(i);Bm(a,h);o=c[m>>2]|0;pd(h,o);l=e;return}function ce(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=l;l=l+80|0;e=d+76|0;f=d+72|0;g=d+60|0;h=d;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,20142,10);fm(h+12|0,b);i=h+20|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20153,4);fm(h+32|0,b+12|0);i=h+40|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20158,11);fm(h+52|0,b+24|0);c[g+4>>2]=0;c[g+8>>2]=0;b=g+4|0;c[g>>2]=b;i=b;c[f>>2]=i;c[e>>2]=c[f>>2];vd(g,e,h,h)|0;j=h+20|0;c[f>>2]=i;c[e>>2]=c[f>>2];vd(g,e,j,j)|0;j=h+40|0;c[f>>2]=i;c[e>>2]=c[f>>2];vd(g,e,j,j)|0;Hm(a,g);pd(g,c[b>>2]|0);b=c[h+56>>2]|0;if(b|0)oB(b);LB(h+40|0);b=c[h+36>>2]|0;if(b|0)oB(b);LB(h+20|0);b=c[h+16>>2]|0;if(!b){LB(h);l=d;return}oB(b);LB(h);l=d;return}function de(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=l;l=l+48|0;f=e+36|0;g=e+24|0;h=e+16|0;i=e;j=g+4|0;c[j>>2]=0;k=g+8|0;c[k>>2]=0;m=g+4|0;c[g>>2]=m;n=a[d+11>>0]|0;if(((n<<24>>24<0?c[d+4>>2]|0:n&255)|0)==0?(bC(d,0,-1,44918,0)|0)==0:0){Bm(b,g);o=c[m>>2]|0;pd(g,o);l=e;return}fm(h,d);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20134,7);d=md(g,f,i)|0;n=c[d>>2]|0;if(!n){p=rB(36)|0;q=p+16|0;c[q>>2]=c[i>>2];c[q+4>>2]=c[i+4>>2];c[q+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Qk(p+28|0);q=c[f>>2]|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=q;c[d>>2]=p;q=c[c[g>>2]>>2]|0;if(!q)r=p;else{c[g>>2]=q;r=c[d>>2]|0}gc(c[j>>2]|0,r);c[k>>2]=(c[k>>2]|0)+1;s=p}else s=n;n=c[h>>2]|0;p=h+4|0;k=c[p>>2]|0;c[h>>2]=0;c[p>>2]=0;c[s+28>>2]=n;n=s+32|0;s=c[n>>2]|0;c[n>>2]=k;if(s|0)oB(s);LB(i);i=c[p>>2]|0;if(i|0)oB(i);Bm(b,g);o=c[m>>2]|0;pd(g,o);l=e;return}function ee(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0;e=l;l=l+144|0;f=e+128|0;h=e+116|0;i=e+96|0;j=e+16|0;k=e;m=e+112|0;n=e+108|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19996,4);fm(j+12|0,d+36|0);switch(c[d+88>>2]|0){case 0:{c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,20001,16);break}case 1:{c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,20018,15);break}case 2:{c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,20034,18);break}default:{c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,44918,0)}}o=j+20|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;HB(o,20053,10);sm(j+32|0,k);o=j+40|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;HB(o,20064,10);Il(j+52|0,+g[d+92>>2]);o=j+60|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;HB(o,20075,11);em(j+72|0,(a[d+96>>0]|0)!=0);o=i+4|0;c[o>>2]=0;p=i+8|0;c[p>>2]=0;q=i+4|0;c[i>>2]=q;r=q;c[h>>2]=r;c[f>>2]=c[h>>2];vd(i,f,j,j)|0;s=j+20|0;c[h>>2]=r;c[f>>2]=c[h>>2];vd(i,f,s,s)|0;s=j+40|0;c[h>>2]=r;c[f>>2]=c[h>>2];vd(i,f,s,s)|0;s=j+60|0;c[h>>2]=r;c[f>>2]=c[h>>2];vd(i,f,s,s)|0;s=c[j+76>>2]|0;if(s|0)oB(s);LB(j+60|0);s=c[j+56>>2]|0;if(s|0)oB(s);LB(j+40|0);s=c[j+36>>2]|0;if(s|0)oB(s);LB(j+20|0);s=c[j+16>>2]|0;if(s|0)oB(s);LB(j);LB(k);if(a[d+48>>0]|0){Ul(h,c[d+52>>2]|0);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,20087,8);s=md(i,f,j)|0;r=c[s>>2]|0;if(!r){t=rB(36)|0;u=t+16|0;c[u>>2]=c[j>>2];c[u+4>>2]=c[j+4>>2];c[u+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Qk(t+28|0);u=c[f>>2]|0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=u;c[s>>2]=t;u=c[c[i>>2]>>2]|0;if(!u)v=t;else{c[i>>2]=u;v=c[s>>2]|0}gc(c[o>>2]|0,v);c[p>>2]=(c[p>>2]|0)+1;w=t}else w=r;r=c[h>>2]|0;t=h+4|0;v=c[t>>2]|0;c[h>>2]=0;c[t>>2]=0;c[w+28>>2]=r;r=w+32|0;w=c[r>>2]|0;c[r>>2]=v;if(w|0)oB(w);LB(j);w=c[t>>2]|0;if(w|0)oB(w);c[m>>2]=c[d+56>>2];c[n>>2]=c[d+60>>2];c[h>>2]=c[m>>2];c[f>>2]=c[n>>2];fe(k,h,f);Am(j,k);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,20096,8);n=md(i,f,h)|0;m=c[n>>2]|0;if(!m){w=rB(36)|0;t=w+16|0;c[t>>2]=c[h>>2];c[t+4>>2]=c[h+4>>2];c[t+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Qk(w+28|0);t=c[f>>2]|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=t;c[n>>2]=w;t=c[c[i>>2]>>2]|0;if(!t)x=w;else{c[i>>2]=t;x=c[n>>2]|0}gc(c[o>>2]|0,x);c[p>>2]=(c[p>>2]|0)+1;y=w}else y=m;m=c[j>>2]|0;w=j+4|0;x=c[w>>2]|0;c[j>>2]=0;c[w>>2]=0;c[y+28>>2]=m;m=y+32|0;y=c[m>>2]|0;c[m>>2]=x;if(y|0)oB(y);LB(h);y=c[w>>2]|0;if(y|0)oB(y);y=c[k>>2]|0;if(y|0){w=k+4|0;x=c[w>>2]|0;if((x|0)==(y|0))z=y;else{m=x;while(1){x=m+-8|0;c[w>>2]=x;n=c[m+-4>>2]|0;if(!n)A=x;else{oB(n);A=c[w>>2]|0}if((A|0)==(y|0))break;else m=A}z=c[k>>2]|0}tB(z)}}if(a[d+68>>0]|0){ge(h,d);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,20105,7);z=md(i,f,j)|0;k=c[z>>2]|0;if(!k){A=rB(36)|0;m=A+16|0;c[m>>2]=c[j>>2];c[m+4>>2]=c[j+4>>2];c[m+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Qk(A+28|0);m=c[f>>2]|0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=m;c[z>>2]=A;m=c[c[i>>2]>>2]|0;if(!m)B=A;else{c[i>>2]=m;B=c[z>>2]|0}gc(c[o>>2]|0,B);c[p>>2]=(c[p>>2]|0)+1;C=A}else C=k;k=c[h>>2]|0;A=h+4|0;B=c[A>>2]|0;c[h>>2]=0;c[A>>2]=0;c[C+28>>2]=k;k=C+32|0;C=c[k>>2]|0;c[k>>2]=B;if(C|0)oB(C);LB(j);C=c[A>>2]|0;if(C|0)oB(C)}if(!(a[d+80>>0]|0)){Bm(b,i);D=c[q>>2]|0;pd(i,D);l=e;return}Il(h,+g[d+84>>2]);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,20113,12);d=md(i,f,j)|0;C=c[d>>2]|0;if(!C){A=rB(36)|0;B=A+16|0;c[B>>2]=c[j>>2];c[B+4>>2]=c[j+4>>2];c[B+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Qk(A+28|0);B=c[f>>2]|0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=B;c[d>>2]=A;B=c[c[i>>2]>>2]|0;if(!B)E=A;else{c[i>>2]=B;E=c[d>>2]|0}gc(c[o>>2]|0,E);c[p>>2]=(c[p>>2]|0)+1;F=A}else F=C;C=c[h>>2]|0;A=h+4|0;p=c[A>>2]|0;c[h>>2]=0;c[A>>2]=0;c[F+28>>2]=C;C=F+32|0;F=c[C>>2]|0;c[C>>2]=p;if(F|0)oB(F);LB(j);j=c[A>>2]|0;if(j|0)oB(j);Bm(b,i);D=c[q>>2]|0;pd(i,D);l=e;return}function fe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;c[a>>2]=0;e=a+4|0;c[e>>2]=0;c[a+8>>2]=0;f=c[b>>2]|0;b=c[d>>2]|0;d=b-f|0;g=(d|0)/12|0;h=f;f=b;if(!d)return;if(g>>>0>536870911){Az(a);d=za(4)|0;AD(d);Xa(d|0,3080,250)}d=rB(g<<3)|0;c[e>>2]=d;c[a>>2]=d;c[a+8>>2]=d+(g<<3);if((h|0)==(f|0))return;g=d;d=h;do{fm(g,d);d=d+12|0;g=(c[e>>2]|0)+8|0;c[e>>2]=g}while((d|0)!=(f|0));return}function ge(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0;d=l;l=l+64|0;e=d+56|0;f=d+52|0;h=d+40|0;i=d;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20126,3);Il(i+12|0,+g[b+72>>2]);j=i+20|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,20130,3);Il(i+32|0,+g[b+76>>2]);c[h+4>>2]=0;c[h+8>>2]=0;b=h+4|0;c[h>>2]=b;j=b;c[f>>2]=j;c[e>>2]=c[f>>2];vd(h,e,i,i)|0;k=i+20|0;c[f>>2]=j;c[e>>2]=c[f>>2];vd(h,e,k,k)|0;Hm(a,h);pd(h,c[b>>2]|0);b=c[i+36>>2]|0;if(b|0)oB(b);LB(i+20|0);b=c[i+16>>2]|0;if(!b){LB(i);l=d;return}oB(b);LB(i);l=d;return}function he(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;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,t=0,u=0,v=0;g=b+4|0;h=c[d>>2]|0;d=h;do if((h|0)!=(g|0)){i=h+16|0;j=a[f+11>>0]|0;k=j<<24>>24<0;l=k?c[f+4>>2]|0:j&255;j=a[i+11>>0]|0;m=j<<24>>24<0;n=m?c[h+20>>2]|0:j&255;j=n>>>0<l>>>0;o=j?n:l;if((o|0)!=0?(p=Eo(k?c[f>>2]|0:f,m?c[i>>2]|0:i,o)|0,(p|0)!=0):0){if((p|0)<0)break}else q=4;if((q|0)==4?l>>>0<n>>>0:0)break;p=l>>>0<n>>>0?l:n;if((p|0)!=0?(n=Eo(m?c[i>>2]|0:i,k?c[f>>2]|0:f,p)|0,(n|0)!=0):0){if((n|0)>=0)q=34}else q=20;if((q|0)==20?!j:0)q=34;if((q|0)==34){c[e>>2]=d;r=e;return r|0}j=h+4|0;n=c[j>>2]|0;p=(n|0)==0;if(p){i=h;while(1){m=c[i+8>>2]|0;if((c[m>>2]|0)==(i|0)){s=m;break}else i=m}}else{i=n;while(1){m=c[i>>2]|0;if(!m){s=i;break}else i=m}}do if((s|0)!=(g|0)){i=s+16|0;n=a[i+11>>0]|0;m=n<<24>>24<0;o=m?c[s+20>>2]|0:n&255;n=o>>>0<l>>>0?o:l;if((n|0)!=0?(t=Eo(k?c[f>>2]|0:f,m?c[i>>2]|0:i,n)|0,(t|0)!=0):0){if((t|0)<0)break}else q=28;if((q|0)==28?l>>>0<o>>>0:0)break;r=mc(b,e,f)|0;return r|0}while(0);if(p){c[e>>2]=h;r=j;return r|0}else{c[e>>2]=s;r=s;return r|0}}while(0);do if((h|0)==(c[b>>2]|0))u=d;else{s=c[h>>2]|0;if(!s){g=h;while(1){l=c[g+8>>2]|0;if((c[l>>2]|0)==(g|0))g=l;else{v=l;break}}}else{g=s;while(1){j=c[g+4>>2]|0;if(!j){v=g;break}else g=j}}g=v;s=v+16|0;j=a[s+11>>0]|0;p=j<<24>>24<0;l=p?c[v+20>>2]|0:j&255;j=a[f+11>>0]|0;k=j<<24>>24<0;o=k?c[f+4>>2]|0:j&255;j=o>>>0<l>>>0?o:l;if((j|0)!=0?(t=Eo(p?c[s>>2]|0:s,k?c[f>>2]|0:f,j)|0,(t|0)!=0):0){if((t|0)<0){u=g;break}}else q=12;if((q|0)==12?l>>>0<o>>>0:0){u=g;break}r=mc(b,e,f)|0;return r|0}while(0);if(!(c[h>>2]|0)){c[e>>2]=h;r=h;return r|0}else{h=u;c[e>>2]=h;r=h+4|0;return r|0}return 0}function ie(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=(f|0)/80|0;if(!f)return;if(g>>>0>53687091){Az(a);h=za(4)|0;AD(h);Xa(h|0,3080,250)}h=rB(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g*80|0);g=c[b>>2]|0;b=c[e>>2]|0;if((g|0)==(b|0))return;e=g;g=h;do{ke(g,e);e=e+80|0;g=(c[d>>2]|0)+80|0;c[d>>2]=g}while((e|0)!=(b|0));return}function je(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=(f|0)/36|0;if(!f)return;if(g>>>0>119304647){Az(a);h=za(4)|0;AD(h);Xa(h|0,3080,250)}h=rB(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g*36|0);g=c[b>>2]|0;b=c[e>>2]|0;if((g|0)==(b|0))return;e=g;g=h;do{GB(g,e);GB(g+12|0,e+12|0);GB(g+24|0,e+24|0);e=e+36|0;g=(c[d>>2]|0)+36|0;c[d>>2]=g}while((e|0)!=(b|0));return}function ke(a,b){a=a|0;b=b|0;var d=0,e=0;GB(a,b);GB(a+12|0,b+12|0);GB(a+24|0,b+24|0);GB(a+36|0,b+36|0);d=a+48|0;e=b+48|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];c[d+16>>2]=c[e+16>>2];_b(a+68|0,b+68|0);return}function le(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;g=l;l=l+112|0;h=g+64|0;i=g+24|0;j=g+16|0;k=g;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,19039,6);c[i+12>>2]=1;m=i+16|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,20170,13);c[i+28>>2]=5;c[h>>2]=i;c[h+4>>2]=2;m=Xm(d,h,f)|0;LB(i+16|0);LB(i);if(!m){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;m=f+11|0;n=a[m>>0]|0;o=f+4|0;p=n<<24>>24<0?c[o>>2]|0:n&255;cC(h,20184,33,p+33|0);VB(h,(a[m>>0]|0)<0?c[f>>2]|0:f,p)|0;if((a[m>>0]|0)<0){a[c[f>>2]>>0]=0;c[o>>2]=0}else{a[f>>0]=0;a[m>>0]=0}QB(f,0);c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;LB(h);c[b+20>>2]=0;c[b+24>>2]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=b+20;m=b+28|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;l=g;return}m=h+16|0;c[h+20>>2]=0;o=h+24|0;c[o>>2]=0;p=h+20|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[m>>2]=p;n=h+28|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;q=c[(c[e>>2]|0)+12>>2]|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,19039,6);r=Km(Om(d,i)|0)|0;c[h>>2]=zb[q&63](e,r)|0;LB(i);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,20170,13);r=Om(d,k)|0;c[j>>2]=c[r>>2];d=j+4|0;e=c[r+4>>2]|0;c[d>>2]=e;if(e|0)nB(e);me(i,j,f);j=h+4|0;c[j>>2]=c[i>>2];c[j+4>>2]=c[i+4>>2];c[j+8>>2]=c[i+8>>2];e=i+12|0;nc(m,c[p>>2]|0);c[m>>2]=c[e>>2];r=i+16|0;q=c[r>>2]|0;c[p>>2]=q;s=i+20|0;t=c[s>>2]|0;c[o>>2]=t;if(!t)c[m>>2]=p;else{c[q+8>>2]=p;c[e>>2]=r;c[r>>2]=0;c[s>>2]=0}s=i+24|0;e=n+11|0;if((a[e>>0]|0)<0){a[c[n>>2]>>0]=0;c[h+32>>2]=0}else{a[n>>0]=0;a[e>>0]=0}QB(n,0);c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];c[n+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;LB(s);nc(i+12|0,c[r>>2]|0);r=c[d>>2]|0;if(r|0)oB(r);LB(k);k=a[f+11>>0]|0;if(((k<<24>>24<0?c[f+4>>2]|0:k&255)|0)==0?(bC(f,0,-1,44918,0)|0)==0:0){c[b>>2]=c[h>>2];f=b+4|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];j=b+16|0;c[j>>2]=c[m>>2];f=c[h+20>>2]|0;c[b+20>>2]=f;k=c[o>>2]|0;c[b+24>>2]=k;r=b+20|0;if(!k)c[j>>2]=r;else{c[f+8>>2]=r;c[m>>2]=p;c[p>>2]=0;c[o>>2]=0}o=b+28|0;c[o>>2]=c[n>>2];c[o+4>>2]=c[n+4>>2];c[o+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0}else{c[b+20>>2]=0;c[b+24>>2]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=b+20;o=b+28|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0}LB(n);nc(h+16|0,c[p>>2]|0);l=g;return}function me(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0;f=l;l=l+96|0;h=f+48|0;i=f+32|0;j=f;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20218,12);c[i+12>>2]=1;c[h>>2]=i;c[h+4>>2]=1;k=Xm(d,h,e)|0;LB(i);if(!k){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;k=e+11|0;m=a[k>>0]|0;n=e+4|0;o=m<<24>>24<0?c[n>>2]|0:m&255;cC(h,20231,32,o+32|0);VB(h,(a[k>>0]|0)<0?c[e>>2]|0:e,o)|0;if((a[k>>0]|0)<0){a[c[e>>2]>>0]=0;c[n>>2]=0}else{a[e>>0]=0;a[k>>0]=0}QB(e,0);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[e+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;LB(h);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+12>>2]=b+16;k=b+24|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;l=f;return};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,19964,7);k=Om(d,h)|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19945,8);c[j+12>>2]=1;n=j+16|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;HB(n,19954,9);c[j+28>>2]=1;c[i>>2]=j;c[i+4>>2]=2;n=Xm(k,i,e)|0;LB(j+16|0);LB(j);LB(h);if(!n){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;n=e+11|0;k=a[n>>0]|0;o=e+4|0;m=k<<24>>24<0?c[o>>2]|0:k&255;cC(h,20264,19,m+19|0);VB(h,(a[n>>0]|0)<0?c[e>>2]|0:e,m)|0;if((a[n>>0]|0)<0){a[c[e>>2]>>0]=0;c[o>>2]=0}else{a[e>>0]=0;a[n>>0]=0}QB(e,0);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[e+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;LB(h);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+12>>2]=b+16;n=b+24|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;l=f;return};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,20284,15);if(Im(Om(d,h)|0)|0){c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20284,15);n=(Im(Om(d,i)|0)|0)==5;LB(i);LB(h);if(!n){RB(e,20300)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+12>>2]=b+16;n=b+24|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;l=f;return}}else LB(h);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,20284,15);n=Nm(Om(d,h)|0)|0;LB(h);o=c[n>>2]|0;m=n+4|0;a:do if((o|0)!=(m|0)){n=o;k=o;while(1){if((Im(n+28|0)|0)!=1)break;p=c[k+4>>2]|0;if(!p){q=k;while(1){r=c[q+8>>2]|0;if((c[r>>2]|0)==(q|0)){s=r;break}else q=r}}else{q=p;while(1){r=c[q>>2]|0;if(!r){s=q;break}else q=r}}if((s|0)==(m|0))break a;else{n=s;k=s}}RB(e,20337)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+12>>2]=b+16;k=b+24|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;l=f;return}while(0);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,20373,14);if(Im(Om(d,h)|0)|0){c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20373,14);s=(Im(Om(d,i)|0)|0)==3;LB(i);LB(h);if(!s){RB(e,20388)|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;c[b+12>>2]=b+16;e=b+24|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;l=f;return}}else LB(h);c[h>>2]=0;e=h+4|0;c[e>>2]=0;s=h+8|0;c[s>>2]=0;m=h+12|0;c[h+16>>2]=0;o=h+20|0;c[o>>2]=0;k=h+16|0;c[m>>2]=k;n=h+24|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20218,12);c[h>>2]=~~+YD(+(+Jm(Om(d,i)|0)));LB(i);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,19964,7);q=Om(d,i)|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19945,8);c[e>>2]=~~+YD(+(+Jm(Om(q,j)|0)));LB(j);LB(i);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,19964,7);q=Om(d,i)|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19954,9);c[s>>2]=~~+YD(+(+Jm(Om(q,j)|0)));LB(j);LB(i);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20284,15);j=Nm(Om(d,i)|0)|0;LB(i);q=c[j>>2]|0;s=j+4|0;if((q|0)!=(s|0)){j=q;e=q;while(1){t=+Jm(j+28|0);g[(lc(m,j+16|0)|0)>>2]=t;q=c[e+4>>2]|0;if(!q){p=e;while(1){r=c[p+8>>2]|0;if((c[r>>2]|0)==(p|0)){u=r;break}else p=r}}else{p=q;while(1){r=c[p>>2]|0;if(!r){u=p;break}else p=r}}if((u|0)==(s|0))break;else{j=u;e=u}}};c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20373,14);u=(Im(Om(d,i)|0)|0)==3;LB(i);if(u){c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20373,14);MB(n,Lm(Om(d,i)|0)|0)|0;LB(i)};c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];i=b+12|0;c[i>>2]=c[m>>2];d=c[h+16>>2]|0;c[b+16>>2]=d;u=c[o>>2]|0;c[b+20>>2]=u;e=b+16|0;if(!u)c[i>>2]=e;else{c[d+8>>2]=e;c[m>>2]=k;c[k>>2]=0;c[o>>2]=0}o=b+24|0;c[o>>2]=c[n>>2];c[o+4>>2]=c[n+4>>2];c[o+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;LB(n);nc(h+12|0,c[k>>2]|0);l=f;return}function ne(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;e=l;l=l+48|0;f=e+36|0;g=e+24|0;h=e+16|0;i=e;j=g+4|0;c[j>>2]=0;k=g+8|0;c[k>>2]=0;m=g+4|0;c[g>>2]=m;Il(h,+((zb[c[(c[d>>2]|0)+8>>2]&63](d,c[b>>2]|0)|0)>>>0));c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,19039,6);d=md(g,f,i)|0;n=c[d>>2]|0;if(!n){o=rB(36)|0;p=o+16|0;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[p+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Qk(o+28|0);p=c[f>>2]|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=p;c[d>>2]=o;p=c[c[g>>2]>>2]|0;if(!p)q=o;else{c[g>>2]=p;q=c[d>>2]|0}gc(c[j>>2]|0,q);c[k>>2]=(c[k>>2]|0)+1;r=o}else r=n;n=c[h>>2]|0;o=h+4|0;q=c[o>>2]|0;c[h>>2]=0;c[o>>2]=0;c[r+28>>2]=n;n=r+32|0;r=c[n>>2]|0;c[n>>2]=q;if(r|0)oB(r);LB(i);r=c[o>>2]|0;if(r|0)oB(r);oe(h,b+4|0);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20443,10);r=md(g,f,i)|0;o=c[r>>2]|0;if(!o){q=rB(36)|0;n=q+16|0;c[n>>2]=c[i>>2];c[n+4>>2]=c[i+4>>2];c[n+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Qk(q+28|0);n=c[f>>2]|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=n;c[r>>2]=q;n=c[c[g>>2]>>2]|0;if(!n)s=q;else{c[g>>2]=n;s=c[r>>2]|0}gc(c[j>>2]|0,s);c[k>>2]=(c[k>>2]|0)+1;t=q}else t=o;o=c[h>>2]|0;q=h+4|0;s=c[q>>2]|0;c[h>>2]=0;c[q>>2]=0;c[t+28>>2]=o;o=t+32|0;t=c[o>>2]|0;c[o>>2]=s;if(t|0)oB(t);LB(i);t=c[q>>2]|0;if(t|0)oB(t);pe(h,b+152|0);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20454,20);b=md(g,f,i)|0;t=c[b>>2]|0;if(!t){q=rB(36)|0;s=q+16|0;c[s>>2]=c[i>>2];c[s+4>>2]=c[i+4>>2];c[s+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Qk(q+28|0);s=c[f>>2]|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=s;c[b>>2]=q;s=c[c[g>>2]>>2]|0;if(!s)u=q;else{c[g>>2]=s;u=c[b>>2]|0}gc(c[j>>2]|0,u);c[k>>2]=(c[k>>2]|0)+1;v=q}else v=t;t=c[h>>2]|0;q=h+4|0;k=c[q>>2]|0;c[h>>2]=0;c[q>>2]=0;c[v+28>>2]=t;t=v+32|0;v=c[t>>2]|0;c[t>>2]=k;if(v|0)oB(v);LB(i);i=c[q>>2]|0;if(!i){Bm(a,g);w=c[m>>2]|0;pd(g,w);l=e;return}oB(i);Bm(a,g);w=c[m>>2]|0;pd(g,w);l=e;return}function oe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0;d=l;l=l+160|0;e=d+152|0;f=d+144|0;g=d+128|0;h=d+116|0;i=d+104|0;j=d+92|0;k=d+80|0;m=d+68|0;n=d+56|0;o=d+44|0;p=d+32|0;q=d+20|0;r=d+8|0;s=d;t=h+4|0;c[t>>2]=0;u=h+8|0;c[u>>2]=0;v=h+4|0;c[h>>2]=v;fm(f,b);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,20475,3);w=md(h,e,g)|0;x=c[w>>2]|0;if(!x){y=rB(36)|0;z=y+16|0;c[z>>2]=c[g>>2];c[z+4>>2]=c[g+4>>2];c[z+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Qk(y+28|0);z=c[e>>2]|0;c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=z;c[w>>2]=y;z=c[c[h>>2]>>2]|0;if(!z)A=y;else{c[h>>2]=z;A=c[w>>2]|0}gc(c[t>>2]|0,A);c[u>>2]=(c[u>>2]|0)+1;B=y}else B=x;x=c[f>>2]|0;y=f+4|0;A=c[y>>2]|0;c[f>>2]=0;c[y>>2]=0;c[B+28>>2]=x;x=B+32|0;B=c[x>>2]|0;c[x>>2]=A;if(B|0)oB(B);LB(g);B=c[y>>2]|0;if(B|0)oB(B);re(f,b+12|0);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,19972,5);B=md(h,e,g)|0;y=c[B>>2]|0;if(!y){A=rB(36)|0;x=A+16|0;c[x>>2]=c[g>>2];c[x+4>>2]=c[g+4>>2];c[x+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Qk(A+28|0);x=c[e>>2]|0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=x;c[B>>2]=A;x=c[c[h>>2]>>2]|0;if(!x)C=A;else{c[h>>2]=x;C=c[B>>2]|0}gc(c[t>>2]|0,C);c[u>>2]=(c[u>>2]|0)+1;D=A}else D=y;y=c[f>>2]|0;A=f+4|0;C=c[A>>2]|0;c[f>>2]=0;c[A>>2]=0;c[D+28>>2]=y;y=D+32|0;D=c[y>>2]|0;c[y>>2]=C;if(D|0)oB(D);LB(g);D=c[A>>2]|0;if(D|0)oB(D);fm(f,b+48|0);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,20479,5);D=md(h,e,g)|0;A=c[D>>2]|0;if(!A){C=rB(36)|0;y=C+16|0;c[y>>2]=c[g>>2];c[y+4>>2]=c[g+4>>2];c[y+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Qk(C+28|0);y=c[e>>2]|0;c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=y;c[D>>2]=C;y=c[c[h>>2]>>2]|0;if(!y)E=C;else{c[h>>2]=y;E=c[D>>2]|0}gc(c[t>>2]|0,E);c[u>>2]=(c[u>>2]|0)+1;F=C}else F=A;A=c[f>>2]|0;C=f+4|0;E=c[C>>2]|0;c[f>>2]=0;c[C>>2]=0;c[F+28>>2]=A;A=F+32|0;F=c[A>>2]|0;c[A>>2]=E;if(F|0)oB(F);LB(g);F=c[C>>2]|0;if(F|0)oB(F);fm(f,b+60|0);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,20485,6);F=md(h,e,g)|0;C=c[F>>2]|0;if(!C){E=rB(36)|0;A=E+16|0;c[A>>2]=c[g>>2];c[A+4>>2]=c[g+4>>2];c[A+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Qk(E+28|0);A=c[e>>2]|0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=A;c[F>>2]=E;A=c[c[h>>2]>>2]|0;if(!A)G=E;else{c[h>>2]=A;G=c[F>>2]|0}gc(c[t>>2]|0,G);c[u>>2]=(c[u>>2]|0)+1;H=E}else H=C;C=c[f>>2]|0;E=f+4|0;G=c[E>>2]|0;c[f>>2]=0;c[E>>2]=0;c[H+28>>2]=C;C=H+32|0;H=c[C>>2]|0;c[C>>2]=G;if(H|0)oB(H);LB(g);H=c[E>>2]|0;if(H|0)oB(H);Ul(f,c[b+72>>2]|0);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,20492,7);H=md(h,e,g)|0;E=c[H>>2]|0;if(!E){G=rB(36)|0;C=G+16|0;c[C>>2]=c[g>>2];c[C+4>>2]=c[g+4>>2];c[C+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Qk(G+28|0);C=c[e>>2]|0;c[G>>2]=0;c[G+4>>2]=0;c[G+8>>2]=C;c[H>>2]=G;C=c[c[h>>2]>>2]|0;if(!C)I=G;else{c[h>>2]=C;I=c[H>>2]|0}gc(c[t>>2]|0,I);c[u>>2]=(c[u>>2]|0)+1;J=G}else J=E;E=c[f>>2]|0;G=f+4|0;I=c[G>>2]|0;c[f>>2]=0;c[G>>2]=0;c[J+28>>2]=E;E=J+32|0;J=c[E>>2]|0;c[E>>2]=I;if(J|0)oB(J);LB(g);J=c[G>>2]|0;if(J|0)oB(J);c[i>>2]=0;J=i+4|0;c[J>>2]=0;c[i+8>>2]=0;G=c[b+76>>2]|0;I=c[b+80>>2]|0;if((G|0)!=(I|0)){E=i+8|0;H=e+4|0;C=G;do{fm(e,C);G=c[J>>2]|0;do if(G>>>0<(c[E>>2]|0)>>>0){c[G>>2]=c[e>>2];c[G+4>>2]=c[H>>2];c[e>>2]=0;c[H>>2]=0;c[J>>2]=G+8}else{rd(i,e);F=c[H>>2]|0;if(!F)break;oB(F)}while(0);C=C+12|0}while((C|0)!=(I|0))}um(f,i);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,20500,8);I=md(h,e,g)|0;C=c[I>>2]|0;if(!C){H=rB(36)|0;E=H+16|0;c[E>>2]=c[g>>2];c[E+4>>2]=c[g+4>>2];c[E+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Qk(H+28|0);E=c[e>>2]|0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=E;c[I>>2]=H;E=c[c[h>>2]>>2]|0;if(!E)K=H;else{c[h>>2]=E;K=c[I>>2]|0}gc(c[t>>2]|0,K);c[u>>2]=(c[u>>2]|0)+1;L=H}else L=C;C=c[f>>2]|0;H=f+4|0;K=c[H>>2]|0;c[f>>2]=0;c[H>>2]=0;c[L+28>>2]=C;C=L+32|0;L=c[C>>2]|0;c[C>>2]=K;if(L|0)oB(L);LB(g);L=c[H>>2]|0;if(L|0)oB(L);Ul(f,c[b+88>>2]|0);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,20509,15);L=md(h,e,g)|0;H=c[L>>2]|0;if(!H){K=rB(36)|0;C=K+16|0;c[C>>2]=c[g>>2];c[C+4>>2]=c[g+4>>2];c[C+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Qk(K+28|0);C=c[e>>2]|0;c[K>>2]=0;c[K+4>>2]=0;c[K+8>>2]=C;c[L>>2]=K;C=c[c[h>>2]>>2]|0;if(!C)M=K;else{c[h>>2]=C;M=c[L>>2]|0}gc(c[t>>2]|0,M);c[u>>2]=(c[u>>2]|0)+1;N=K}else N=H;H=c[f>>2]|0;K=f+4|0;M=c[K>>2]|0;c[f>>2]=0;c[K>>2]=0;c[N+28>>2]=H;H=N+32|0;N=c[H>>2]|0;c[H>>2]=M;if(N|0)oB(N);LB(g);N=c[K>>2]|0;if(N|0)oB(N);Ul(f,c[b+92>>2]|0);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,20525,15);N=md(h,e,g)|0;K=c[N>>2]|0;if(!K){M=rB(36)|0;H=M+16|0;c[H>>2]=c[g>>2];c[H+4>>2]=c[g+4>>2];c[H+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Qk(M+28|0);H=c[e>>2]|0;c[M>>2]=0;c[M+4>>2]=0;c[M+8>>2]=H;c[N>>2]=M;H=c[c[h>>2]>>2]|0;if(!H)O=M;else{c[h>>2]=H;O=c[N>>2]|0}gc(c[t>>2]|0,O);c[u>>2]=(c[u>>2]|0)+1;P=M}else P=K;K=c[f>>2]|0;M=f+4|0;O=c[M>>2]|0;c[f>>2]=0;c[M>>2]=0;c[P+28>>2]=K;K=P+32|0;P=c[K>>2]|0;c[K>>2]=O;if(P|0)oB(P);LB(g);P=c[M>>2]|0;if(P|0)oB(P);c[j>>2]=0;P=j+4|0;c[P>>2]=0;c[j+8>>2]=0;ie(k,b+96|0);M=c[k>>2]|0;O=c[k+4>>2]|0;if((M|0)!=(O|0)){K=j+8|0;N=e+4|0;H=M;do{se(e,H);M=c[P>>2]|0;do if(M>>>0<(c[K>>2]|0)>>>0){c[M>>2]=c[e>>2];c[M+4>>2]=c[N>>2];c[e>>2]=0;c[N>>2]=0;c[P>>2]=M+8}else{rd(j,e);L=c[N>>2]|0;if(!L)break;oB(L)}while(0);H=H+80|0}while((H|0)!=(O|0))}um(f,j);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,20541,10);O=md(h,e,g)|0;H=c[O>>2]|0;if(!H){N=rB(36)|0;K=N+16|0;c[K>>2]=c[g>>2];c[K+4>>2]=c[g+4>>2];c[K+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Qk(N+28|0);K=c[e>>2]|0;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=K;c[O>>2]=N;K=c[c[h>>2]>>2]|0;if(!K)Q=N;else{c[h>>2]=K;Q=c[O>>2]|0}gc(c[t>>2]|0,Q);c[u>>2]=(c[u>>2]|0)+1;R=N}else R=H;H=c[f>>2]|0;N=f+4|0;Q=c[N>>2]|0;c[f>>2]=0;c[N>>2]=0;c[R+28>>2]=H;H=R+32|0;R=c[H>>2]|0;c[H>>2]=Q;if(R|0)oB(R);LB(g);R=c[N>>2]|0;if(R|0)oB(R);c[m>>2]=0;R=m+4|0;c[R>>2]=0;c[m+8>>2]=0;_b(n,b+108|0);N=c[n>>2]|0;Q=n+4|0;H=c[Q>>2]|0;if((N|0)!=(H|0)){O=m+8|0;K=e+4|0;M=N;do{fm(e,M);N=c[R>>2]|0;do if(N>>>0<(c[O>>2]|0)>>>0){c[N>>2]=c[e>>2];c[N+4>>2]=c[K>>2];c[e>>2]=0;c[K>>2]=0;c[R>>2]=N+8}else{rd(m,e);L=c[K>>2]|0;if(!L)break;oB(L)}while(0);M=M+12|0}while((M|0)!=(H|0))}um(f,m);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,20552,8);H=md(h,e,g)|0;M=c[H>>2]|0;if(!M){K=rB(36)|0;O=K+16|0;c[O>>2]=c[g>>2];c[O+4>>2]=c[g+4>>2];c[O+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Qk(K+28|0);O=c[e>>2]|0;c[K>>2]=0;c[K+4>>2]=0;c[K+8>>2]=O;c[H>>2]=K;O=c[c[h>>2]>>2]|0;if(!O)S=K;else{c[h>>2]=O;S=c[H>>2]|0}gc(c[t>>2]|0,S);c[u>>2]=(c[u>>2]|0)+1;T=K}else T=M;M=c[f>>2]|0;K=f+4|0;S=c[K>>2]|0;c[f>>2]=0;c[K>>2]=0;c[T+28>>2]=M;M=T+32|0;T=c[M>>2]|0;c[M>>2]=S;if(T|0)oB(T);LB(g);T=c[K>>2]|0;if(T|0)oB(T);switch(c[b+120>>2]|0){case 0:{c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,20561,10);break}case 1:{c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,20572,15);break}default:{c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,44918,0)}}sm(f,g);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;HB(o,20588,11);T=md(h,e,o)|0;K=c[T>>2]|0;if(!K){S=rB(36)|0;M=S+16|0;c[M>>2]=c[o>>2];c[M+4>>2]=c[o+4>>2];c[M+8>>2]=c[o+8>>2];c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;Qk(S+28|0);M=c[e>>2]|0;c[S>>2]=0;c[S+4>>2]=0;c[S+8>>2]=M;c[T>>2]=S;M=c[c[h>>2]>>2]|0;if(!M)U=S;else{c[h>>2]=M;U=c[T>>2]|0}gc(c[t>>2]|0,U);c[u>>2]=(c[u>>2]|0)+1;V=S}else V=K;K=c[f>>2]|0;S=f+4|0;U=c[S>>2]|0;c[f>>2]=0;c[S>>2]=0;c[V+28>>2]=K;K=V+32|0;V=c[K>>2]|0;c[K>>2]=U;if(V|0)oB(V);LB(o);V=c[S>>2]|0;if(V|0)oB(V);LB(g);c[o>>2]=0;V=o+4|0;c[V>>2]=0;c[o+8>>2]=0;je(p,b+124|0);S=c[p>>2]|0;U=p+4|0;K=c[U>>2]|0;if((S|0)!=(K|0)){T=o+8|0;M=e+4|0;H=S;do{re(e,H);S=c[V>>2]|0;do if(S>>>0<(c[T>>2]|0)>>>0){c[S>>2]=c[e>>2];c[S+4>>2]=c[M>>2];c[e>>2]=0;c[M>>2]=0;c[V>>2]=S+8}else{rd(o,e);O=c[M>>2]|0;if(!O)break;oB(O)}while(0);H=H+36|0}while((H|0)!=(K|0))}um(f,o);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,20600,15);K=md(h,e,g)|0;H=c[K>>2]|0;if(!H){M=rB(36)|0;T=M+16|0;c[T>>2]=c[g>>2];c[T+4>>2]=c[g+4>>2];c[T+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Qk(M+28|0);T=c[e>>2]|0;c[M>>2]=0;c[M+4>>2]=0;c[M+8>>2]=T;c[K>>2]=M;T=c[c[h>>2]>>2]|0;if(!T)W=M;else{c[h>>2]=T;W=c[K>>2]|0}gc(c[t>>2]|0,W);c[u>>2]=(c[u>>2]|0)+1;X=M}else X=H;H=c[f>>2]|0;M=f+4|0;W=c[M>>2]|0;c[f>>2]=0;c[M>>2]=0;c[X+28>>2]=H;H=X+32|0;X=c[H>>2]|0;c[H>>2]=W;if(X|0)oB(X);LB(g);X=c[M>>2]|0;if(X|0)oB(X);c[q+4>>2]=0;c[q+8>>2]=0;X=q+4|0;c[q>>2]=X;c[r+4>>2]=0;c[r+8>>2]=0;M=r+4|0;c[r>>2]=M;W=c[b+136>>2]|0;H=b+140|0;b=M;do if((W|0)!=(H|0)){K=W;T=W;while(1){S=K+16|0;c[f>>2]=b;c[e>>2]=c[f>>2];Nc(r,e,S,S)|0;S=c[T+4>>2]|0;if(!S){O=T;while(1){N=c[O+8>>2]|0;if((c[N>>2]|0)==(O|0)){Y=N;break}else O=N}}else{O=S;while(1){N=c[O>>2]|0;if(!N){Y=O;break}else O=N}}if((Y|0)==(H|0))break;else{K=Y;T=Y}}T=c[r>>2]|0;if((T|0)==(M|0))break;K=s+4|0;O=T;S=T;while(1){de(s,O+28|0);T=O+16|0;c[f>>2]=T;qe(e,q,T,42844,f,g);T=c[e>>2]|0;N=c[s>>2]|0;L=c[K>>2]|0;c[s>>2]=0;c[K>>2]=0;c[T+28>>2]=N;N=T+32|0;T=c[N>>2]|0;c[N>>2]=L;do if(T|0){oB(T);L=c[K>>2]|0;if(!L)break;oB(L)}while(0);T=c[S+4>>2]|0;if(!T){L=S;while(1){N=c[L+8>>2]|0;if((c[N>>2]|0)==(L|0)){Z=N;break}else L=N}}else{L=T;while(1){N=c[L>>2]|0;if(!N){Z=L;break}else L=N}}if((Z|0)==(M|0))break;else{O=Z;S=Z}}}while(0);Bm(f,q);c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,20616,16);Z=md(h,e,g)|0;s=c[Z>>2]|0;if(!s){Y=rB(36)|0;H=Y+16|0;c[H>>2]=c[g>>2];c[H+4>>2]=c[g+4>>2];c[H+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;Qk(Y+28|0);H=c[e>>2]|0;c[Y>>2]=0;c[Y+4>>2]=0;c[Y+8>>2]=H;c[Z>>2]=Y;H=c[c[h>>2]>>2]|0;if(!H)_=Y;else{c[h>>2]=H;_=c[Z>>2]|0}gc(c[t>>2]|0,_);c[u>>2]=(c[u>>2]|0)+1;$=Y}else $=s;s=c[f>>2]|0;Y=f+4|0;u=c[Y>>2]|0;c[f>>2]=0;c[Y>>2]=0;c[$+28>>2]=s;s=$+32|0;$=c[s>>2]|0;c[s>>2]=u;if($|0)oB($);LB(g);g=c[Y>>2]|0;if(g|0)oB(g);Bm(a,h);Ub(r,c[M>>2]|0);pd(q,c[X>>2]|0);X=c[p>>2]|0;if(X|0){q=c[U>>2]|0;if((q|0)==(X|0))aa=X;else{M=q;do{q=M+-36|0;c[U>>2]=q;LB(M+-12|0);LB(M+-24|0);LB(q);M=c[U>>2]|0}while((M|0)!=(X|0));aa=c[p>>2]|0}tB(aa)}aa=c[o>>2]|0;if(aa|0){p=c[V>>2]|0;if((p|0)==(aa|0))ba=aa;else{X=p;while(1){p=X+-8|0;c[V>>2]=p;M=c[X+-4>>2]|0;if(!M)ca=p;else{oB(M);ca=c[V>>2]|0}if((ca|0)==(aa|0))break;else X=ca}ba=c[o>>2]|0}tB(ba)}ba=c[n>>2]|0;if(ba|0){o=c[Q>>2]|0;if((o|0)==(ba|0))da=ba;else{ca=o;do{o=ca+-12|0;c[Q>>2]=o;LB(o);ca=c[Q>>2]|0}while((ca|0)!=(ba|0));da=c[n>>2]|0}tB(da)}da=c[m>>2]|0;if(da|0){n=c[R>>2]|0;if((n|0)==(da|0))ea=da;else{ba=n;while(1){n=ba+-8|0;c[R>>2]=n;ca=c[ba+-4>>2]|0;if(!ca)fa=n;else{oB(ca);fa=c[R>>2]|0}if((fa|0)==(da|0))break;else ba=fa}ea=c[m>>2]|0}tB(ea)}ac(k);k=c[j>>2]|0;if(k|0){ea=c[P>>2]|0;if((ea|0)==(k|0))ga=k;else{m=ea;while(1){ea=m+-8|0;c[P>>2]=ea;fa=c[m+-4>>2]|0;if(!fa)ha=ea;else{oB(fa);ha=c[P>>2]|0}if((ha|0)==(k|0))break;else m=ha}ga=c[j>>2]|0}tB(ga)}ga=c[i>>2]|0;if(!ga){ia=c[v>>2]|0;pd(h,ia);l=d;return}j=c[J>>2]|0;if((j|0)==(ga|0))ja=ga;else{ha=j;while(1){j=ha+-8|0;c[J>>2]=j;m=c[ha+-4>>2]|0;if(!m)ka=j;else{oB(m);ka=c[J>>2]|0}if((ka|0)==(ga|0))break;else ha=ka}ja=c[i>>2]|0}tB(ja);ia=c[v>>2]|0;pd(h,ia);l=d;return}function pe(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;e=l;l=l+80|0;f=e+64|0;h=e+48|0;i=e+36|0;j=e+24|0;k=e+12|0;m=e;n=j+4|0;c[n>>2]=0;o=j+8|0;c[o>>2]=0;p=j+4|0;c[j>>2]=p;c[k+4>>2]=0;c[k+8>>2]=0;q=k+4|0;c[k>>2]=q;r=c[d+12>>2]|0;s=d+16|0;if((r|0)!=(s|0)){t=m+4|0;u=r;v=r;while(1){Il(m,+g[u+28>>2]);r=u+16|0;c[h>>2]=r;qe(f,k,r,42844,h,i);r=c[f>>2]|0;w=c[m>>2]|0;x=c[t>>2]|0;c[m>>2]=0;c[t>>2]=0;c[r+28>>2]=w;w=r+32|0;r=c[w>>2]|0;c[w>>2]=x;if(r|0?(oB(r),r=c[t>>2]|0,r|0):0)oB(r);r=c[v+4>>2]|0;if(!r){x=v;while(1){w=c[x+8>>2]|0;if((c[w>>2]|0)==(x|0)){y=w;break}else x=w}}else{x=r;while(1){w=c[x>>2]|0;if(!w){y=x;break}else x=w}}if((y|0)==(s|0))break;else{u=y;v=y}}}Bm(h,k);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20284,15);y=md(j,f,i)|0;v=c[y>>2]|0;if(!v){u=rB(36)|0;s=u+16|0;c[s>>2]=c[i>>2];c[s+4>>2]=c[i+4>>2];c[s+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Qk(u+28|0);s=c[f>>2]|0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=s;c[y>>2]=u;s=c[c[j>>2]>>2]|0;if(!s)z=u;else{c[j>>2]=s;z=c[y>>2]|0}gc(c[n>>2]|0,z);c[o>>2]=(c[o>>2]|0)+1;A=u}else A=v;v=c[h>>2]|0;u=h+4|0;z=c[u>>2]|0;c[h>>2]=0;c[u>>2]=0;c[A+28>>2]=v;v=A+32|0;A=c[v>>2]|0;c[v>>2]=z;if(A|0)oB(A);LB(i);A=c[u>>2]|0;if(A|0)oB(A);A=d+24|0;u=a[A+11>>0]|0;if(!(((u<<24>>24<0?c[d+28>>2]|0:u&255)|0)==0?!(bC(A,0,-1,44918,0)|0):0)){fm(h,A);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20373,14);A=md(j,f,i)|0;u=c[A>>2]|0;if(!u){z=rB(36)|0;v=z+16|0;c[v>>2]=c[i>>2];c[v+4>>2]=c[i+4>>2];c[v+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Qk(z+28|0);v=c[f>>2]|0;c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=v;c[A>>2]=z;v=c[c[j>>2]>>2]|0;if(!v)B=z;else{c[j>>2]=v;B=c[A>>2]|0}gc(c[n>>2]|0,B);c[o>>2]=(c[o>>2]|0)+1;C=z}else C=u;u=c[h>>2]|0;z=h+4|0;B=c[z>>2]|0;c[h>>2]=0;c[z>>2]=0;c[C+28>>2]=u;u=C+32|0;C=c[u>>2]|0;c[u>>2]=B;if(C|0)oB(C);LB(i);C=c[z>>2]|0;if(C|0)oB(C)}Ul(h,c[d>>2]|0);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20218,12);C=md(j,f,i)|0;z=c[C>>2]|0;if(!z){B=rB(36)|0;u=B+16|0;c[u>>2]=c[i>>2];c[u+4>>2]=c[i+4>>2];c[u+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Qk(B+28|0);u=c[f>>2]|0;c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=u;c[C>>2]=B;u=c[c[j>>2]>>2]|0;if(!u)D=B;else{c[j>>2]=u;D=c[C>>2]|0}gc(c[n>>2]|0,D);c[o>>2]=(c[o>>2]|0)+1;E=B}else E=z;z=c[h>>2]|0;B=h+4|0;D=c[B>>2]|0;c[h>>2]=0;c[B>>2]=0;c[E+28>>2]=z;z=E+32|0;E=c[z>>2]|0;c[z>>2]=D;if(E|0)oB(E);LB(i);E=c[B>>2]|0;if(E|0)oB(E);E=h+4|0;c[E>>2]=0;B=h+8|0;c[B>>2]=0;D=h+4|0;c[h>>2]=D;Ul(i,c[d+4>>2]|0);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,19945,8);z=md(h,f,m)|0;C=c[z>>2]|0;if(!C){u=rB(36)|0;A=u+16|0;c[A>>2]=c[m>>2];c[A+4>>2]=c[m+4>>2];c[A+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;Qk(u+28|0);A=c[f>>2]|0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=A;c[z>>2]=u;A=c[c[h>>2]>>2]|0;if(!A)F=u;else{c[h>>2]=A;F=c[z>>2]|0}gc(c[E>>2]|0,F);c[B>>2]=(c[B>>2]|0)+1;G=u}else G=C;C=c[i>>2]|0;u=i+4|0;F=c[u>>2]|0;c[i>>2]=0;c[u>>2]=0;c[G+28>>2]=C;C=G+32|0;G=c[C>>2]|0;c[C>>2]=F;if(G|0)oB(G);LB(m);G=c[u>>2]|0;if(G|0)oB(G);Ul(i,c[d+8>>2]|0);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,19954,9);d=md(h,f,m)|0;G=c[d>>2]|0;if(!G){u=rB(36)|0;F=u+16|0;c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];c[F+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;Qk(u+28|0);F=c[f>>2]|0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=F;c[d>>2]=u;F=c[c[h>>2]>>2]|0;if(!F)H=u;else{c[h>>2]=F;H=c[d>>2]|0}gc(c[E>>2]|0,H);c[B>>2]=(c[B>>2]|0)+1;I=u}else I=G;G=c[i>>2]|0;u=i+4|0;B=c[u>>2]|0;c[i>>2]=0;c[u>>2]=0;c[I+28>>2]=G;G=I+32|0;I=c[G>>2]|0;c[G>>2]=B;if(I|0)oB(I);LB(m);I=c[u>>2]|0;if(I|0)oB(I);Bm(i,h);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,19964,7);I=md(j,f,m)|0;u=c[I>>2]|0;if(!u){B=rB(36)|0;G=B+16|0;c[G>>2]=c[m>>2];c[G+4>>2]=c[m+4>>2];c[G+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;Qk(B+28|0);G=c[f>>2]|0;c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=G;c[I>>2]=B;G=c[c[j>>2]>>2]|0;if(!G)J=B;else{c[j>>2]=G;J=c[I>>2]|0}gc(c[n>>2]|0,J);c[o>>2]=(c[o>>2]|0)+1;K=B}else K=u;u=c[i>>2]|0;B=i+4|0;o=c[B>>2]|0;c[i>>2]=0;c[B>>2]=0;c[K+28>>2]=u;u=K+32|0;K=c[u>>2]|0;c[u>>2]=o;if(K|0)oB(K);LB(m);m=c[B>>2]|0;if(!m){Bm(b,j);L=c[D>>2]|0;pd(h,L);M=c[q>>2]|0;pd(k,M);N=c[p>>2]|0;pd(j,N);l=e;return}oB(m);Bm(b,j);L=c[D>>2]|0;pd(h,L);M=c[q>>2]|0;pd(k,M);N=c[p>>2]|0;pd(j,N);l=e;return}function qe(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+16|0;f=h;i=md(d,f,e)|0;e=c[i>>2]|0;if(e|0){j=e;k=0;m=j;c[b>>2]=m;n=b+4|0;a[n>>0]=k;l=h;return}e=rB(36)|0;GB(e+16|0,c[g>>2]|0);Qk(e+28|0);g=c[f>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=g;c[i>>2]=e;g=c[c[d>>2]>>2]|0;if(!g)o=e;else{c[d>>2]=g;o=c[i>>2]|0}gc(c[d+4>>2]|0,o);o=d+8|0;c[o>>2]=(c[o>>2]|0)+1;j=e;k=1;m=j;c[b>>2]=m;n=b+4|0;a[n>>0]=k;l=h;return}function re(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=l;l=l+80|0;e=d+76|0;f=d+72|0;g=d+60|0;h=d;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,20142,10);fm(h+12|0,b);i=h+20|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20153,4);fm(h+32|0,b+12|0);i=h+40|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20158,11);fm(h+52|0,b+24|0);c[g+4>>2]=0;c[g+8>>2]=0;b=g+4|0;c[g>>2]=b;i=b;c[f>>2]=i;c[e>>2]=c[f>>2];vd(g,e,h,h)|0;j=h+20|0;c[f>>2]=i;c[e>>2]=c[f>>2];vd(g,e,j,j)|0;j=h+40|0;c[f>>2]=i;c[e>>2]=c[f>>2];vd(g,e,j,j)|0;Hm(a,g);pd(g,c[b>>2]|0);b=c[h+56>>2]|0;if(b|0)oB(b);LB(h+40|0);b=c[h+36>>2]|0;if(b|0)oB(b);LB(h+20|0);b=c[h+16>>2]|0;if(!b){LB(h);l=d;return}oB(b);LB(h);l=d;return}function se(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;e=l;l=l+176|0;f=e+160|0;h=e+152|0;i=e+132|0;j=e+32|0;k=e+24|0;m=e+16|0;n=e;o=e+148|0;p=e+144|0;te(k,d);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19972,5);c[j+12>>2]=c[k>>2];q=k+4|0;c[j+16>>2]=c[q>>2];c[k>>2]=0;c[q>>2]=0;k=j+20|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,19996,4);fm(j+32|0,d+36|0);ue(m,d);k=j+40|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,20105,7);c[j+52>>2]=c[m>>2];k=m+4|0;c[j+56>>2]=c[k>>2];c[m>>2]=0;c[k>>2]=0;m=j+60|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,20633,12);Il(j+72|0,+g[d+56>>2]);c[o>>2]=c[d+68>>2];c[p>>2]=c[d+72>>2];c[h>>2]=c[o>>2];c[f>>2]=c[p>>2];fe(n,h,f);p=j+80|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;HB(p,20646,10);Am(j+92|0,n);p=i+4|0;c[p>>2]=0;o=i+8|0;c[o>>2]=0;m=i+4|0;c[i>>2]=m;r=m;c[h>>2]=r;c[f>>2]=c[h>>2];vd(i,f,j,j)|0;s=j+20|0;c[h>>2]=r;c[f>>2]=c[h>>2];vd(i,f,s,s)|0;s=j+40|0;c[h>>2]=r;c[f>>2]=c[h>>2];vd(i,f,s,s)|0;s=j+60|0;c[h>>2]=r;c[f>>2]=c[h>>2];vd(i,f,s,s)|0;s=j+80|0;c[h>>2]=r;c[f>>2]=c[h>>2];vd(i,f,s,s)|0;s=c[j+96>>2]|0;if(s|0)oB(s);LB(j+80|0);s=c[j+76>>2]|0;if(s|0)oB(s);LB(j+60|0);s=c[j+56>>2]|0;if(s|0)oB(s);LB(j+40|0);s=c[j+36>>2]|0;if(s|0)oB(s);LB(j+20|0);s=c[j+16>>2]|0;if(s|0)oB(s);LB(j);s=c[n>>2]|0;if(s|0){r=n+4|0;t=c[r>>2]|0;if((t|0)==(s|0))u=s;else{v=t;while(1){t=v+-8|0;c[r>>2]=t;w=c[v+-4>>2]|0;if(!w)x=t;else{oB(w);x=c[r>>2]|0}if((x|0)==(s|0))break;else v=x}u=c[n>>2]|0}tB(u)}u=c[k>>2]|0;if(u|0)oB(u);u=c[q>>2]|0;if(u|0)oB(u);if(!(a[d+60>>0]|0)){Bm(b,i);y=c[m>>2]|0;pd(i,y);l=e;return}Il(h,+g[d+64>>2]);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,20113,12);d=md(i,f,j)|0;u=c[d>>2]|0;if(!u){q=rB(36)|0;k=q+16|0;c[k>>2]=c[j>>2];c[k+4>>2]=c[j+4>>2];c[k+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Qk(q+28|0);k=c[f>>2]|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=k;c[d>>2]=q;k=c[c[i>>2]>>2]|0;if(!k)z=q;else{c[i>>2]=k;z=c[d>>2]|0}gc(c[p>>2]|0,z);c[o>>2]=(c[o>>2]|0)+1;A=q}else A=u;u=c[h>>2]|0;q=h+4|0;o=c[q>>2]|0;c[h>>2]=0;c[q>>2]=0;c[A+28>>2]=u;u=A+32|0;A=c[u>>2]|0;c[u>>2]=o;if(A|0)oB(A);LB(j);j=c[q>>2]|0;if(j|0)oB(j);Bm(b,i);y=c[m>>2]|0;pd(i,y);l=e;return}function te(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=l;l=l+80|0;e=d+76|0;f=d+72|0;g=d+60|0;h=d;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,20142,10);fm(h+12|0,b);i=h+20|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20153,4);fm(h+32|0,b+12|0);i=h+40|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20158,11);fm(h+52|0,b+24|0);c[g+4>>2]=0;c[g+8>>2]=0;b=g+4|0;c[g>>2]=b;i=b;c[f>>2]=i;c[e>>2]=c[f>>2];vd(g,e,h,h)|0;j=h+20|0;c[f>>2]=i;c[e>>2]=c[f>>2];vd(g,e,j,j)|0;j=h+40|0;c[f>>2]=i;c[e>>2]=c[f>>2];vd(g,e,j,j)|0;Hm(a,g);pd(g,c[b>>2]|0);b=c[h+56>>2]|0;if(b|0)oB(b);LB(h+40|0);b=c[h+36>>2]|0;if(b|0)oB(b);LB(h+20|0);b=c[h+16>>2]|0;if(!b){LB(h);l=d;return}oB(b);LB(h);l=d;return}function ue(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0;d=l;l=l+64|0;e=d+56|0;f=d+52|0;h=d+40|0;i=d;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20126,3);Il(i+12|0,+g[b+48>>2]);j=i+20|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,20130,3);Il(i+32|0,+g[b+52>>2]);c[h+4>>2]=0;c[h+8>>2]=0;b=h+4|0;c[h>>2]=b;j=b;c[f>>2]=j;c[e>>2]=c[f>>2];vd(h,e,i,i)|0;k=i+20|0;c[f>>2]=j;c[e>>2]=c[f>>2];vd(h,e,k,k)|0;Hm(a,h);pd(h,c[b>>2]|0);b=c[i+36>>2]|0;if(b|0)oB(b);LB(i+20|0);b=c[i+16>>2]|0;if(!b){LB(i);l=d;return}oB(b);LB(i);l=d;return}function ve(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=(d-b|0)/80|0;f=a+8|0;g=c[a>>2]|0;h=g;if(e>>>0>(((c[f>>2]|0)-g|0)/80|0)>>>0){dc(a);if(e>>>0>53687091)Az(a);i=((c[f>>2]|0)-(c[a>>2]|0)|0)/80|0;j=i<<1;k=i>>>0<26843545?(j>>>0<e>>>0?e:j):53687091;if(k>>>0>53687091){Az(a);j=za(4)|0;AD(j);Xa(j|0,3080,250)}j=rB(k*80|0)|0;i=a+4|0;c[i>>2]=j;c[a>>2]=j;c[f>>2]=j+(k*80|0);if((b|0)==(d|0))return;k=b;f=j;do{ke(f,k);k=k+80|0;f=(c[i>>2]|0)+80|0;c[i>>2]=f}while((k|0)!=(d|0));return}k=a+4|0;a=((c[k>>2]|0)-g|0)/80|0;g=e>>>0>a>>>0;e=b+(a*80|0)|0;a=g?e:d;if((a|0)==(b|0))l=h;else{f=b;b=h;while(1){MB(b,f)|0;MB(b+12|0,f+12|0)|0;MB(b+24|0,f+24|0)|0;MB(b+36|0,f+36|0)|0;h=b+48|0;i=f+48|0;c[h>>2]=c[i>>2];c[h+4>>2]=c[i+4>>2];c[h+8>>2]=c[i+8>>2];c[h+12>>2]=c[i+12>>2];c[h+16>>2]=c[i+16>>2];if((b|0)!=(f|0))cc(b+68|0,c[f+68>>2]|0,c[f+72>>2]|0);f=f+80|0;i=b+80|0;if((f|0)==(a|0)){l=i;break}else b=i}}if(g){if((a|0)==(d|0))return;a=e;e=c[k>>2]|0;do{ke(e,a);a=a+80|0;e=(c[k>>2]|0)+80|0;c[k>>2]=e}while((a|0)!=(d|0));return}d=c[k>>2]|0;if((d|0)==(l|0))return;else m=d;do{d=m+-80|0;c[k>>2]=d;a=m+-12|0;e=c[a>>2]|0;if(e|0){g=m+-8|0;b=c[g>>2]|0;if((b|0)==(e|0))n=e;else{f=b;do{b=f+-12|0;c[g>>2]=b;LB(b);f=c[g>>2]|0}while((f|0)!=(e|0));n=c[a>>2]|0}tB(n)}LB(m+-44|0);LB(m+-56|0);LB(m+-68|0);LB(d);m=c[k>>2]|0}while((m|0)!=(l|0));return}function we(a,b,d){a=a|0;b=b|0;d=d|0;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,q=0,r=0,s=0,t=0,u=0,v=0;e=(d-b|0)/36|0;f=a+8|0;g=c[f>>2]|0;h=c[a>>2]|0;i=h;if(e>>>0<=((g-h|0)/36|0)>>>0){j=a+4|0;k=((c[j>>2]|0)-h|0)/36|0;l=e>>>0>k>>>0;m=b+(k*36|0)|0;k=l?m:d;if((k|0)==(b|0))n=i;else{o=b;p=i;while(1){MB(p,o)|0;MB(p+12|0,o+12|0)|0;MB(p+24|0,o+24|0)|0;o=o+36|0;q=p+36|0;if((o|0)==(k|0)){n=q;break}else p=q}}if(!l){l=c[j>>2]|0;if((l|0)==(n|0))return;else r=l;do{l=r+-36|0;c[j>>2]=l;LB(r+-12|0);LB(r+-24|0);LB(l);r=c[j>>2]|0}while((r|0)!=(n|0));return}if((k|0)==(d|0))return;k=m;m=c[j>>2]|0;do{GB(m,k);GB(m+12|0,k+12|0);GB(m+24|0,k+24|0);k=k+36|0;m=(c[j>>2]|0)+36|0;c[j>>2]=m}while((k|0)!=(d|0));return}if(!h)s=g;else{g=a+4|0;k=c[g>>2]|0;if((k|0)==(i|0))t=h;else{h=k;do{k=h+-36|0;c[g>>2]=k;LB(h+-12|0);LB(h+-24|0);LB(k);h=c[g>>2]|0}while((h|0)!=(i|0));t=c[a>>2]|0}tB(t);c[f>>2]=0;c[g>>2]=0;c[a>>2]=0;s=0}if(e>>>0>119304647){Az(a);u=c[a>>2]|0;v=c[f>>2]|0}else{u=0;v=s}s=(v-u|0)/36|0;u=s<<1;v=s>>>0<59652323?(u>>>0<e>>>0?e:u):119304647;if(v>>>0>119304647){Az(a);u=za(4)|0;AD(u);Xa(u|0,3080,250)}u=rB(v*36|0)|0;e=a+4|0;c[e>>2]=u;c[a>>2]=u;c[f>>2]=u+(v*36|0);if((b|0)==(d|0))return;v=b;b=u;do{GB(b,v);GB(b+12|0,v+12|0);GB(b+24|0,v+24|0);v=v+36|0;b=(c[e>>2]|0)+36|0;c[e>>2]=b}while((v|0)!=(d|0));return}function xe(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;f=l;l=l+16|0;g=f+12|0;h=f;i=f+8|0;wr(h,b);if(!(a[h>>0]|0)){xr(h);l=f;return b|0}j=(c[b>>2]|0)+-12|0;c[i>>2]=c[b+(c[j>>2]|0)+24>>2];k=b+(c[j>>2]|0)|0;j=c[k+4>>2]|0;m=d+e|0;e=k+76|0;n=c[e>>2]|0;if((n|0)==-1){qr(g,k);o=Xs(g,40916)|0;p=zb[c[(c[o>>2]|0)+28>>2]&63](o,32)|0;Ys(g);o=p<<24>>24;c[e>>2]=o;q=o}else q=n;c[g>>2]=c[i>>2];if(Ie(g,d,(j&176|0)==32?m:d,m,k,q&255)|0){xr(h);l=f;return b|0}q=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;nr(q,c[q+16>>2]|5);xr(h);l=f;return b|0}function ye(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=l;l=l+16|0;e=d;c[a>>2]=3476;f=a+4|0;c[f>>2]=0;g=a+8|0;c[g>>2]=0;c[a+12>>2]=0;pb[c[(c[b>>2]|0)+92>>2]&127](e,b);b=c[e>>2]|0;h=c[e+4>>2]|0;if((b|0)==(h|0)){bc(e);l=d;return}i=a+12|0;a=b;do{b=c[g>>2]|0;if((b|0)==(c[i>>2]|0))ze(f,a);else{GB(b,a);c[g>>2]=(c[g>>2]|0)+12}a=a+100|0}while((a|0)!=(h|0));bc(e);l=d;return}function ze(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=((e-f|0)/12|0)+1|0;if(g>>>0>357913941){Az(a);h=c[a>>2]|0;i=c[d>>2]|0}else{h=f;i=e}e=a+8|0;f=((c[e>>2]|0)-h|0)/12|0;j=f<<1;k=f>>>0<178956970?(j>>>0<g>>>0?g:j):357913941;j=(i-h|0)/12|0;do if(k)if(k>>>0>357913941){h=za(4)|0;AD(h);Xa(h|0,3080,250)}else{l=rB(k*12|0)|0;break}else l=0;while(0);h=l+(j*12|0)|0;j=h;i=l+(k*12|0)|0;GB(h,b);b=h+12|0;k=c[a>>2]|0;l=c[d>>2]|0;if((l|0)==(k|0)){m=j;n=k;o=k}else{g=l;l=j;j=h;do{h=j+-12|0;g=g+-12|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;j=l+-12|0;l=j}while((g|0)!=(k|0));m=l;n=c[a>>2]|0;o=c[d>>2]|0}c[a>>2]=m;c[d>>2]=b;c[e>>2]=i;i=n;if((o|0)!=(i|0)){e=o;do{e=e+-12|0;LB(e)}while((e|0)!=(i|0))}if(!n)return;tB(n);return}function Ae(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;c[a>>2]=3476;b=a+4|0;d=c[b>>2]|0;if(!d)return;e=a+8|0;a=c[e>>2]|0;if((a|0)==(d|0))f=d;else{g=a;do{a=g+-12|0;c[e>>2]=a;LB(a);g=c[e>>2]|0}while((g|0)!=(d|0));f=c[b>>2]|0}tB(f);return}function Be(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;c[a>>2]=3476;b=a+4|0;d=c[b>>2]|0;if(!d){tB(a);return}e=a+8|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;do{f=h+-12|0;c[e>>2]=f;LB(f);h=c[e>>2]|0}while((h|0)!=(d|0));g=c[b>>2]|0}tB(g);tB(a);return}function Ce(b,d){b=b|0;d=d|0;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;e=c[b+4>>2]|0;f=(c[b+8>>2]|0)-e|0;b=(f|0)/12|0;g=e;if((f|0)<=0){h=-1;return h|0}f=a[d+11>>0]|0;e=f<<24>>24<0;i=f&255;f=e?c[d+4>>2]|0:i;j=(f|0)==0;if(e){e=0;while(1){k=g+(e*12|0)|0;l=a[k+11>>0]|0;m=l<<24>>24<0;if((f|0)==((m?c[g+(e*12|0)+4>>2]|0:l&255)|0)){if(j){h=e;n=15;break}if(!(Eo(c[d>>2]|0,m?c[k>>2]|0:k,f)|0)){h=e;n=15;break}}e=e+1|0;if((e|0)>=(b|0)){h=-1;n=15;break}}if((n|0)==15)return h|0}if(j){j=0;while(1){e=a[g+(j*12|0)+11>>0]|0;if(!((e<<24>>24<0?c[g+(j*12|0)+4>>2]|0:e&255)|0)){h=j;n=15;break}j=j+1|0;if((j|0)>=(b|0)){h=-1;n=15;break}}if((n|0)==15)return h|0}else o=0;a:while(1){j=g+(o*12|0)|0;e=a[j+11>>0]|0;k=e<<24>>24<0;b:do if((f|0)==((k?c[g+(o*12|0)+4>>2]|0:e&255)|0)){m=i;l=k?c[j>>2]|0:j;p=d;while(1){if((a[p>>0]|0)!=(a[l>>0]|0))break b;m=m+-1|0;if(!m){h=o;n=15;break a}else{l=l+1|0;p=p+1|0}}}while(0);o=o+1|0;if((o|0)>=(b|0)){h=-1;n=15;break}}if((n|0)==15)return h|0;return 0}function De(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((d|0)>=0?(e=c[b+4>>2]|0,(((c[b+8>>2]|0)-e|0)/12|0)>>>0>d>>>0):0){GB(a,e+(d*12|0)|0);return};c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,44918,0);return}function Ee(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;c[a>>2]=3448;c[a+12>>2]=3476;b=a+16|0;d=c[b>>2]|0;if(!d){hB(a);return}e=a+20|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;do{f=h+-12|0;c[e>>2]=f;LB(f);h=c[e>>2]|0}while((h|0)!=(d|0));g=c[b>>2]|0}tB(g);hB(a);return}function Fe(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;c[a>>2]=3448;c[a+12>>2]=3476;b=a+16|0;d=c[b>>2]|0;if(!d){hB(a);tB(a);return}e=a+20|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;do{f=h+-12|0;c[e>>2]=f;LB(f);h=c[e>>2]|0}while((h|0)!=(d|0));g=c[b>>2]|0}tB(g);hB(a);tB(a);return}function Ge(a){a=a|0;var b=0;b=a+12|0;ob[c[c[b>>2]>>2]&511](b);return}function He(a){a=a|0;tB(a);return}function Ie(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;i=l;l=l+16|0;j=i;k=c[b>>2]|0;if(!k){m=0;l=i;return m|0}n=f;f=d;o=n-f|0;p=g+12|0;g=c[p>>2]|0;q=(g|0)>(o|0)?g-o|0:0;o=e;g=o-f|0;if((g|0)>0?(ib[c[(c[k>>2]|0)+48>>2]&31](k,d,g)|0)!=(g|0):0){c[b>>2]=0;m=0;l=i;return m|0}do if((q|0)>0){c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;IB(j,q,h);if((ib[c[(c[k>>2]|0)+48>>2]&31](k,(a[j+11>>0]|0)<0?c[j>>2]|0:j,q)|0)==(q|0)){LB(j);break}c[b>>2]=0;LB(j);m=0;l=i;return m|0}while(0);j=n-o|0;if((j|0)>0?(ib[c[(c[k>>2]|0)+48>>2]&31](k,e,j)|0)!=(j|0):0){c[b>>2]=0;m=0;l=i;return m|0}c[p>>2]=0;m=k;l=i;return m|0}function Je(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;f=l;l=l+64|0;h=f+40|0;i=f+8|0;j=f;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20475,3);c[i+12>>2]=3;k=i+16|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,20929,15);c[i+28>>2]=1;c[h>>2]=i;c[h+4>>2]=2;k=Xm(d,h,e)|0;LB(i+16|0);LB(i);if(!k){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;k=e+11|0;m=a[k>>0]|0;n=e+4|0;o=m<<24>>24<0?c[n>>2]|0:m&255;cC(h,20945,24,o+24|0);VB(h,(a[k>>0]|0)<0?c[e>>2]|0:e,o)|0;if((a[k>>0]|0)<0){a[c[e>>2]>>0]=0;c[n>>2]=0}else{a[e>>0]=0;a[k>>0]=0}QB(e,0);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[e+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;LB(h);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;l=f;return};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20475,3);MB(h,Lm(Om(d,i)|0)|0)|0;LB(i);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20929,15);k=h+12|0;g[k>>2]=+Jm(Om(d,i)|0);LB(i);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20970,12);n=(Im(Om(d,i)|0)|0)==0;LB(i);do if(n)p=14;else{c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,20970,12);o=Om(d,i)|0;c[j>>2]=c[o>>2];m=j+4|0;q=c[o+4>>2]|0;c[m>>2]=q;if(q|0)nB(q);c[h+16>>2]=Ke(j,e)|0;q=c[m>>2]|0;if(q|0)oB(q);LB(i);q=a[e+11>>0]|0;if(((q<<24>>24<0?c[e+4>>2]|0:q&255)|0)==0?(bC(e,0,-1,44918,0)|0)==0:0){p=14;break};c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0}while(0);if((p|0)==14){c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;p=k;k=c[p+4>>2]|0;e=b+12|0;c[e>>2]=c[p>>2];c[e+4>>2]=k}LB(h);l=f;return}function Ke(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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;e=l;l=l+32|0;f=e+12|0;g=e;if((Im(b)|0)!=4){RB(d,20983)|0;h=0;l=e;return h|0}i=Mm(b)|0;b=c[i>>2]|0;j=c[i+4>>2]|0;if((b|0)==(j|0)){h=0;l=e;return h|0}i=f+11|0;k=f+4|0;m=d+11|0;n=d+4|0;o=0;p=b;while(1){if((Im(p)|0)!=3)break;GB(f,Lm(p)|0);b=a[i>>0]|0;q=c[k>>2]|0;if(((b<<24>>24<0?q:b&255)|0)==16)if(!(bC(f,0,-1,21049,16)|0)){r=1;s=26}else{t=a[i>>0]|0;u=c[k>>2]|0;s=10}else{t=b;u=q;s=10}do if((s|0)==10){s=0;if(((t<<24>>24<0?u:t&255)|0)==17){if(!(bC(f,0,-1,21066,17)|0)){r=2;s=26;break}v=a[i>>0]|0;w=c[k>>2]|0}else{v=t;w=u}if(((v<<24>>24<0?w:v&255)|0)==15){if(!(bC(f,0,-1,21084,15)|0)){r=4;s=26;break}x=a[i>>0]|0;y=c[k>>2]|0}else{x=v;y=w}if(((x<<24>>24<0?y:x&255)|0)==12){if(!(bC(f,0,-1,21100,12)|0)){r=3;s=26;break}z=a[i>>0]|0;A=c[k>>2]|0}else{z=x;A=y}if(((z<<24>>24<0?A:z&255)|0)==8){if(!(bC(f,0,-1,21113,8)|0)){r=255;s=26;break}B=a[i>>0]|0;C=c[k>>2]|0}else{B=z;C=A};c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;q=B<<24>>24<0?C:B&255;cC(g,21122,29,q+29|0);VB(g,(a[i>>0]|0)<0?c[f>>2]|0:f,q)|0;if((a[m>>0]|0)<0){a[c[d>>2]>>0]=0;c[n>>2]=0}else{a[d>>0]=0;a[m>>0]=0}QB(d,0);c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;LB(g);D=1;E=o}while(0);if((s|0)==26){s=0;D=0;E=r|o}LB(f);p=p+8|0;if(D|(p|0)==(j|0)){h=E;s=28;break}else o=E}if((s|0)==28){l=e;return h|0}RB(d,21016)|0;h=o;l=e;return h|0}function Le(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;d=l;l=l+64|0;e=d+48|0;f=d+36|0;g=d+24|0;h=d+16|0;i=d;c[f>>2]=0;j=f+4|0;c[j>>2]=0;c[f+8>>2]=0;k=c[b>>2]|0;m=c[b+4>>2]|0;if((k|0)!=(m|0)){b=f+8|0;n=e+4|0;o=k;do{oe(e,o);k=c[j>>2]|0;if(k>>>0>=(c[b>>2]|0)>>>0){rd(f,e);p=c[n>>2]|0;if(p|0)oB(p)}else{c[k>>2]=c[e>>2];c[k+4>>2]=c[n>>2];c[e>>2]=0;c[n>>2]=0;c[j>>2]=k+8}o=o+148|0}while((o|0)!=(m|0))}m=g+4|0;c[m>>2]=0;o=g+8|0;c[o>>2]=0;n=g+4|0;c[g>>2]=n;um(h,f);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,21152,9);b=md(g,e,i)|0;k=c[b>>2]|0;if(!k){p=rB(36)|0;q=p+16|0;c[q>>2]=c[i>>2];c[q+4>>2]=c[i+4>>2];c[q+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Qk(p+28|0);q=c[e>>2]|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=q;c[b>>2]=p;q=c[c[g>>2]>>2]|0;if(!q)r=p;else{c[g>>2]=q;r=c[b>>2]|0}gc(c[m>>2]|0,r);c[o>>2]=(c[o>>2]|0)+1;s=p}else s=k;k=c[h>>2]|0;p=h+4|0;o=c[p>>2]|0;c[h>>2]=0;c[p>>2]=0;c[s+28>>2]=k;k=s+32|0;s=c[k>>2]|0;c[k>>2]=o;if(s|0)oB(s);LB(i);i=c[p>>2]|0;if(i|0)oB(i);Bm(a,g);pd(g,c[n>>2]|0);n=c[f>>2]|0;if(!n){l=d;return}g=c[j>>2]|0;if((g|0)==(n|0))t=n;else{a=g;while(1){g=a+-8|0;c[j>>2]=g;i=c[a+-4>>2]|0;if(!i)u=g;else{oB(i);u=c[j>>2]|0}if((u|0)==(n|0))break;else a=u}t=c[f>>2]|0}tB(t);l=d;return}function Me(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;e=l;l=l+48|0;f=e+24|0;g=e+12|0;h=e;c[f>>2]=0;i=f+4|0;c[i>>2]=0;c[f+8>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,21162,4);if(Im(Om(b,g)|0)|0){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,21162,4);j=(Im(Om(b,h)|0)|0)==4;LB(h);LB(g);if(j)k=5;else RB(d,21167)|0}else{LB(g);k=5}a:do if((k|0)==5){c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,21162,4);j=Mm(Om(b,g)|0)|0;LB(g);h=c[j>>2]|0;m=c[j+4>>2]|0;j=f+8|0;b:do if((h|0)!=(m|0)){n=h;while(1){if((Im(n)|0)!=3)break;o=Lm(n)|0;p=c[i>>2]|0;if((p|0)==(c[j>>2]|0))ze(f,o);else{GB(p,o);c[i>>2]=(c[i>>2]|0)+12}n=n+8|0;if((n|0)==(m|0))break b}RB(d,21197)|0;break a}while(0);c[a>>2]=c[f>>2];c[a+4>>2]=c[i>>2];c[a+8>>2]=c[j>>2];c[j>>2]=0;c[i>>2]=0;c[f>>2]=0;l=e;return}while(0);c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;a=c[f>>2]|0;if(!a){l=e;return}d=c[i>>2]|0;if((d|0)==(a|0))q=a;else{g=d;do{d=g+-12|0;c[i>>2]=d;LB(d);g=c[i>>2]|0}while((g|0)!=(a|0));q=c[f>>2]|0}tB(q);l=e;return}function Ne(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0.0;e=(c[b+4>>2]|0)-(c[b>>2]|0)>>2;f=(c[d+4>>2]|0)-(c[d>>2]|0)|0;h=f>>2;c[a>>2]=0;i=a+4|0;c[i>>2]=0;c[a+8>>2]=0;j=rB(1024)|0;c[a>>2]=j;c[a+8>>2]=j+1024;HD(j|0,0,1024)|0;c[i>>2]=j+1024;if(!(h&1))ya(21287,21306,54,21385);j=h+-1|0;if((h|0)>(e|0))k=(h|0)/2|0;else{i=(h|0)/2|0;l=c[a>>2]|0;if((f|0)<=0){HD(l+(j-i<<2)|0,0,e+1-h<<2|0)|0;return}m=c[b>>2]|0;b=c[d>>2]|0;d=j;do{j=0;n=0.0;do{n=n+ +g[m+(d-j<<2)>>2]*+g[b+(j<<2)>>2];j=j+1|0}while((j|0)<(h|0));g[l+(d-i<<2)>>2]=n;d=d+1|0}while((d|0)<(e|0));k=i}i=(f|0)>4;if(!i)return;f=c[a>>2]|0;d=f+(k<<2)|0;l=0;do{c[f+(l<<2)>>2]=c[d>>2];l=l+1|0}while((l|0)<(k|0));l=k+e|0;if(!i)return;i=c[a>>2]|0;a=i+(e+-1-k<<2)|0;d=e;do{c[i+(d-k<<2)>>2]=c[a>>2];d=d+1|0}while((d|0)<(l|0));return}function Oe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0,y=0.0,z=0.0,A=0,B=0,D=0,E=0,G=0,H=0.0,I=0,J=0,K=0.0,L=0.0,M=0.0,N=0,O=0;e=l;l=l+64|0;f=e+40|0;h=e+28|0;i=e+16|0;j=e+4|0;k=e;c[f>>2]=0;m=f+4|0;c[m>>2]=0;c[f+8>>2]=0;n=(b|0)/2|0;a:do if((b|0)>1){o=+(a|0);p=+(b|0);q=o/p;r=f+8|0;s=0;t=0;u=0;v=0;while(1){w=q*+(s|0);g[h>>2]=w;if(t>>>0<u>>>0){g[v>>2]=w;c[m>>2]=t+4}else Zd(f,h);x=s+1|0;if((x|0)>=(n|0)){y=p;z=o;break a}A=c[m>>2]|0;s=x;t=A;u=c[r>>2]|0;v=A}}else{y=+(b|0);z=+(a|0)}while(0);o=z*2.0/y;c[h>>2]=0;a=h+4|0;c[a>>2]=0;c[h+8>>2]=0;n=b*40|0;b:do if((b|0)>0){p=z/y/80.0;v=h+8|0;r=0;u=0;t=0;s=0;while(1){q=p*+(r|0);g[i>>2]=q;if(u>>>0<t>>>0){g[s>>2]=q;c[a>>2]=u+4}else Zd(h,i);A=r+1|0;if((A|0)>=(n|0))break b;x=c[a>>2]|0;r=A;u=x;t=c[v>>2]|0;s=x}}while(0);c[i>>2]=0;n=i+4|0;c[n>>2]=0;c[i+8>>2]=0;b=i+8|0;s=20;v=0;t=0;u=0;while(1){y=+(s|0);z=+Ca(+((y+-69.0)*.083333333333))*440.0;g[j>>2]=z;if(v>>>0<t>>>0){g[u>>2]=z;r=v+4|0;c[n>>2]=r;B=r;D=t}else{Zd(i,j);B=c[n>>2]|0;D=c[b>>2]|0}z=+Ca(+((y+.3333333432674408+-69.0)*.083333333333))*440.0;g[j>>2]=z;if(B>>>0<D>>>0){g[B>>2]=z;r=B+4|0;c[n>>2]=r;E=r;G=D}else{Zd(i,j);E=c[n>>2]|0;G=c[b>>2]|0}z=+Ca(+((y+.6666666865348816+-69.0)*.083333333333))*440.0;g[j>>2]=z;if(E>>>0<G>>>0){g[E>>2]=z;c[n>>2]=E+4}else Zd(i,j);r=s+1|0;if((r|0)>=105)break;x=c[n>>2]|0;s=r;v=x;t=c[b>>2]|0;u=x}g[j>>2]=3519.970703125;u=c[n>>2]|0;if(u>>>0<(c[b>>2]|0)>>>0){c[u>>2]=1163657096;c[n>>2]=u+4}else Zd(i,j);u=c[f>>2]|0;b=(c[m>>2]|0)-u|0;t=b>>2;c[j>>2]=0;v=j+4|0;c[v>>2]=0;c[j+8>>2]=0;z=o;y=z*.5;s=j+8|0;p=1.0/o;E=0;G=u;while(1){o=+g[(c[h>>2]|0)+(E<<2)>>2]-+g[G+4>>2];if(!(+C(+o)<=y))H=0.0;else H=+F(+(p*(o*2.0*3.141592653589793)))*.5+.5;g[k>>2]=H;u=c[v>>2]|0;if((u|0)==(c[s>>2]|0))Pe(j,k);else{g[u>>2]=H;c[v>>2]=u+4}u=E+1|0;if((u|0)>=160)break;E=u;G=c[f>>2]|0}G=c[i>>2]|0;E=(c[n>>2]|0)-G|0;k=E>>2;s=P(k,t)|0;u=G;if((s|0)>0)HD(d|0,0,s<<2|0)|0;if((b|0)>4){b=c[f>>2]|0;s=c[h>>2]|0;G=c[j>>2]|0;if((E|0)>0){E=1;while(1){D=E*80|0;B=D+-80|0;x=b+(E<<2)|0;r=D+79|0;D=0;do{A=u+(D<<2)|0;H=+g[A>>2];p=H;y=+g[x>>2];c:do if(z+p*1.0599527833972817>y?p*.8900757332524964-z<y:0){I=d+((P(D,t)|0)+E<<2)|0;J=B;o=H;while(1){q=+g[s+(J<<2)>>2];w=+wn(o);K=(w-+wn(q))*-36.0;if(!(+C(+K)<=1.0))L=0.0;else L=+F(+(K*2.0*3.141592653589793*.5))*.5+.5;if(q>0.0)M=L/(q*.019254088401794434);else M=0.0;g[I>>2]=+g[I>>2]+M*+g[G+(J-B<<2)>>2];if((J|0)>=(r|0))break c;J=J+1|0;o=+g[A>>2]}}while(0);D=D+1|0}while((D|0)<(k|0));E=E+1|0;if((E|0)>=(t|0)){N=G;break}}}else N=G}else N=c[j>>2]|0;if(!N)O=u;else{u=c[v>>2]|0;if((u|0)!=(N|0))c[v>>2]=u+(~((u+-4-N|0)>>>2)<<2);tB(N);O=c[i>>2]|0}if(O|0){i=c[n>>2]|0;if((i|0)!=(O|0))c[n>>2]=i+(~((i+-4-O|0)>>>2)<<2);tB(O)}O=c[h>>2]|0;if(O|0){h=c[a>>2]|0;if((h|0)!=(O|0))c[a>>2]=h+(~((h+-4-O|0)>>>2)<<2);tB(O)}O=c[f>>2]|0;if(!O){l=e;return 1}f=c[m>>2]|0;if((f|0)!=(O|0))c[m>>2]=f+(~((f+-4-O|0)>>>2)<<2);tB(O);l=e;return 1}function Pe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>2)+1|0;if(g>>>0>1073741823){Az(a);h=c[a>>2]|0;i=c[d>>2]|0}else{h=f;i=e}e=a+8|0;f=(c[e>>2]|0)-h|0;j=f>>1;k=f>>2>>>0<536870911?(j>>>0<g>>>0?g:j):1073741823;j=i-h>>2;do if(k)if(k>>>0>1073741823){g=za(4)|0;AD(g);Xa(g|0,3080,250)}else{l=rB(k<<2)|0;break}else l=0;while(0);g=l+(j<<2)|0;c[g>>2]=c[b>>2];b=i-h|0;i=g+(0-(b>>2)<<2)|0;if((b|0)>0)MD(i|0,h|0,b|0)|0;c[a>>2]=i;c[d>>2]=g+4;c[e>>2]=l+(k<<2);if(!h)return;tB(h);return}function Qe(a,b){a=a|0;b=+b;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0;d=l;l=l+16|0;e=d+4|0;f=d;c[e>>2]=0;h=e+4|0;c[h>>2]=0;c[e+8>>2]=0;i=e+8|0;j=20;k=0;m=0;n=0;while(1){o=+(j|0);p=+Ca(+((o+-69.0)*.083333333333))*440.0;g[f>>2]=p;if(k>>>0<m>>>0){g[n>>2]=p;q=k+4|0;c[h>>2]=q;r=q;s=m}else{Zd(e,f);r=c[h>>2]|0;s=c[i>>2]|0}p=+Ca(+((o+.3333333432674408+-69.0)*.083333333333))*440.0;g[f>>2]=p;if(r>>>0<s>>>0){g[r>>2]=p;q=r+4|0;c[h>>2]=q;t=q;u=s}else{Zd(e,f);t=c[h>>2]|0;u=c[i>>2]|0}p=+Ca(+((o+.6666666865348816+-69.0)*.083333333333))*440.0;g[f>>2]=p;if(t>>>0<u>>>0){g[t>>2]=p;c[h>>2]=t+4}else Zd(e,f);q=j+1|0;if((q|0)>=105)break;v=c[h>>2]|0;j=q;k=v;m=c[i>>2]|0;n=v}g[f>>2]=3519.970703125;n=c[h>>2]|0;if(n>>>0<(c[i>>2]|0)>>>0){c[n>>2]=1163657096;c[h>>2]=n+4}else Zd(e,f);f=0;do{n=f;f=f+1|0;p=+((f*3|0)+1|0);i=n<<8;n=1;do{o=p+ +mn(+(n|0))*36.0;w=+E(+b,+(+(n+-1|0)));x=o;m=0;do{y=+(m|0)+1.0;if(+C(+(y-x))<2.0){z=y-o;if(!(+C(+z)<=1.5))A=0.0;else A=+F(+(z*2.0*3.141592653589793*.3333333432674408))*.5+.5;k=a+(m+i<<2)|0;g[k>>2]=+g[k>>2]+w*A}m=m+1|0}while((m|0)!=256);n=n+1|0}while((n|0)!=21)}while((f|0)!=84);f=c[e>>2]|0;if(!f){l=d;return}e=c[h>>2]|0;if((e|0)!=(f|0))c[h>>2]=e+(~((e+-4-f|0)>>>2)<<2);tB(f);l=d;return}function Re(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=+f;h=+h;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,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,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0.0,db=0.0,eb=0,fb=0,gb=0;i=l;l=l+2320|0;j=i+584|0;k=i+572|0;m=i+560|0;n=i+64|0;o=i;p=i+548|0;q=i+452|0;r=i+440|0;s=i+428|0;t=i+416|0;v=i+260|0;w=i+248|0;x=i+236|0;y=i+224|0;z=i+212|0;A=i+488|0;B=i+200|0;E=q+12|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q+16>>2]=0;c[q+20>>2]=0;HB(E,21404,3);F=q+24|0;a[F>>0]=0;a[q+25>>0]=0;c[q+28>>2]=0;a[q+32>>0]=0;RB(q,21408)|0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;HB(r,21410,10);c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[t>>2]=0;G=t+4|0;c[G>>2]=0;c[t+8>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;H=Qa(21421)|0;if(!H){I=j+11|0;J=j+4|0;K=0;L=0}else{RB(j,H)|0;H=j+11|0;M=j+4|0;I=H;J=M;K=a[H>>0]|0;L=c[M>>2]|0}if((((K<<24>>24<0?L:K&255)|0)==0?(bC(j,0,-1,44918,0)|0)==0:0)?(RB(j,21431)|0,K=Qa(21488)|0,K|0):0){c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,K,yn(K)|0);K=k+11|0;L=k+4|0;while(1){M=a[I>>0]|0;H=M<<24>>24<0;N=H?c[j>>2]|0:j;O=H?c[J>>2]|0:M&255;if(O>>>0<5)break;M=N+O|0;H=N;P=M;a:do if((O|0)>=5?(Q=M+-4|0,(Q|0)!=(N|0)):0){R=H;S=N;while(1){T=R;U=S;while(1){if((a[U>>0]|0)==36){V=21493;W=U;break}X=U+1|0;if((X|0)==(Q|0)){Y=P;break a}else{T=X;U=X}}do{V=V+1|0;if((V|0)==21498){Y=T;break a}W=W+1|0}while((a[W>>0]|0)==(a[V>>0]|0));T=U+1|0;if((T|0)==(Q|0)){Y=P;break}else{R=T;S=T}}}else Y=P;while(0);P=Y-H|0;if(!(P>>>0<O>>>0&((P|0)!=-1&(Y|0)!=(M|0))))break;N=a[K>>0]|0;S=N<<24>>24<0;_B(j,P,5,S?c[k>>2]|0:k,S?c[L>>2]|0:N&255)|0}LB(k)}L=$B(j,58,0)|0;K=a[I>>0]|0;if(L>>>0<(K<<24>>24<0?c[J>>2]|0:K&255)>>>0){K=t+8|0;Y=0;V=L;while(1){KB(k,j,Y,V-Y|0,j);L=c[G>>2]|0;if(L>>>0<(c[K>>2]|0)>>>0){c[L>>2]=c[k>>2];c[L+4>>2]=c[k+4>>2];c[L+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[G>>2]=(c[G>>2]|0)+12}else Se(t,k);LB(k);L=V+1|0;V=$B(j,58,L)|0;W=a[I>>0]|0;if(V>>>0>=(W<<24>>24<0?c[J>>2]|0:W&255)>>>0){Z=L;_=j;break}else Y=L}}else{Z=0;_=j}KB(k,j,Z,-1,_);_=c[G>>2]|0;if(_>>>0<(c[t+8>>2]|0)>>>0){c[_>>2]=c[k>>2];c[_+4>>2]=c[k+4>>2];c[_+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[G>>2]=(c[G>>2]|0)+12}else Se(t,k);LB(k);LB(j);_=c[t>>2]|0;Z=(c[G>>2]|0)-_|0;Y=(Z|0)/12|0;b:do if((Z|0)>0){J=r+11|0;V=r+4|0;I=s+11|0;K=s+4|0;L=j+112|0;W=j+8|0;N=j+12|0;S=j+4|0;P=j+112|0;R=j+184|0;Q=j+188|0;T=j+76|0;X=j+100|0;$=j+8|0;aa=1;ba=0;ca=_;while(1){da=ca+(ba*12|0)|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;ea=a[da+11>>0]|0;fa=ea<<24>>24<0;ga=fa?c[ca+(ba*12|0)+4>>2]|0:ea&255;cC(k,fa?c[da>>2]|0:da,ga,ga+1|0);VB(k,21499,1)|0;ga=a[J>>0]|0;da=ga<<24>>24<0;fa=VB(k,da?c[r>>2]|0:r,da?c[V>>2]|0:ga&255)|0;c[j>>2]=c[fa>>2];c[j+4>>2]=c[fa+4>>2];c[j+8>>2]=c[fa+8>>2];c[fa>>2]=0;c[fa+4>>2]=0;c[fa+8>>2]=0;if((a[I>>0]|0)<0){a[c[s>>2]>>0]=0;c[K>>2]=0}else{a[s>>0]=0;a[I>>0]=0}QB(s,0);c[s>>2]=c[j>>2];c[s+4>>2]=c[j+4>>2];c[s+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;LB(j);LB(k);c[W>>2]=3524;c[j>>2]=308;c[L>>2]=328;c[S>>2]=0;or(P,N);c[R>>2]=0;c[Q>>2]=-1;c[j>>2]=3504;c[L>>2]=3544;c[W>>2]=3524;Te(N);if((c[T>>2]|0)==0?(fa=Ko((a[I>>0]|0)<0?c[s>>2]|0:s,21501)|0,c[T>>2]=fa,(fa|0)!=0):0){c[X>>2]=8;nr(j+(c[(c[j>>2]|0)+-12>>2]|0)|0,0)}else{fa=j+(c[(c[j>>2]|0)+-12>>2]|0)|0;nr(fa,c[fa+16>>2]|4)}fa=c[T>>2]|0;do if(!fa){ha=1;ia=aa&(ba+1|0)<(Y|0)}else{ga=rb[c[(c[N>>2]|0)+24>>2]&127](N)|0;if((Qo(fa)|0)==0?(c[T>>2]=0,(ga|0)==0):0){ha=0;ia=aa;break}ga=j+(c[(c[j>>2]|0)+-12>>2]|0)|0;nr(ga,c[ga+16>>2]|4);ha=0;ia=aa}while(0);c[j>>2]=3504;c[L>>2]=3544;c[$>>2]=3524;Ue(N);gr(j,3556);Up(L);fa=ba+1|0;if(!(ha&(fa|0)<(Y|0))){ja=ia;break b}aa=ia;ba=fa;ca=c[t>>2]|0}}else ja=1;while(0);Ve(v,s,0);c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[x>>2]=0;ia=x+4|0;c[ia>>2]=0;c[x+8>>2]=0;MD(j|0,3592,1728)|0;Y=x+8|0;ha=0;do{_=ha*24|0;Z=0;do{ca=j+(Z+_<<2)|0;ba=c[ia>>2]|0;if((ba|0)==(c[Y>>2]|0))Pe(x,ca);else{c[ba>>2]=c[ca>>2];c[ia>>2]=ba+4}Z=Z+1|0}while((Z|0)<24);ha=ha+1|0}while((ha|0)<18);c[y>>2]=0;ha=y+4|0;c[ha>>2]=0;c[y+8>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,44918,0);Z=c[ha>>2]|0;_=y+8|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,44918,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21503,1);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21503,1);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21505,4);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21505,4);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21510,1);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21512,1);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21514,4);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21519,2);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21522,2);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,44918,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,44918,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21525,3);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21529,3);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,44918,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,44918,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21512,1);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,44918,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,44918,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21533,4);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21533,4);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21538,6);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21538,6);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21545,5);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21551,2);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21554,5);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21560,5);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21566,5);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,44918,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,44918,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21572,4);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21577,4);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,44918,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,44918,0);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,21551,2);Z=c[ha>>2]|0;if(Z>>>0<(c[_>>2]|0)>>>0){c[Z>>2]=c[j>>2];c[Z+4>>2]=c[j+4>>2];c[Z+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[ha>>2]=(c[ha>>2]|0)+12}else Se(y,j);LB(j);Z=c[y>>2]|0;ba=c[ha>>2]|0;ca=(ba-Z|0)/12|0;aa=ca>>>1;L=Z+(aa*12|0)|0;N=ba;do if(h==1.0){if(!aa){ka=ba;la=N;break}if((L|0)==(N|0)){ma=Z;na=ba;oa=L}else{$=Z;T=L;do{X=$+11|0;if((a[X>>0]|0)<0){a[c[$>>2]>>0]=0;c[$+4>>2]=0}else{a[$>>0]=0;a[X>>0]=0}QB($,0);c[$>>2]=c[T>>2];c[$+4>>2]=c[T+4>>2];c[$+8>>2]=c[T+8>>2];c[T>>2]=0;c[T+4>>2]=0;c[T+8>>2]=0;T=T+12|0;$=$+12|0}while((T|0)!=(N|0));T=c[ha>>2]|0;ma=$;na=T;oa=T}if((oa|0)==(ma|0)){ka=na;la=oa;break}else pa=oa;do{T=pa+-12|0;c[ha>>2]=T;LB(T);pa=c[ha>>2]|0}while((pa|0)!=(ma|0));ka=pa;la=ma}else{$=Z+(ca*12|0)|0;if((aa|0)==(ca|0)){ka=ba;la=N;break}if(($|0)==(N|0)){qa=L;ra=ba;sa=N}else{T=L;X=$;do{$=T+11|0;if((a[$>>0]|0)<0){a[c[T>>2]>>0]=0;c[T+4>>2]=0}else{a[T>>0]=0;a[$>>0]=0}QB(T,0);c[T>>2]=c[X>>2];c[T+4>>2]=c[X+4>>2];c[T+8>>2]=c[X+8>>2];c[X>>2]=0;c[X+4>>2]=0;c[X+8>>2]=0;X=X+12|0;T=T+12|0}while((X|0)!=(N|0));X=c[ha>>2]|0;qa=T;ra=X;sa=X}if((sa|0)==(qa|0)){ka=ra;la=sa;break}else ta=sa;do{X=ta+-12|0;c[ha>>2]=X;LB(X);ta=c[ha>>2]|0}while((ta|0)!=(qa|0));ka=ta;la=qa}while(0);c[b>>2]=0;qa=b+4|0;c[qa>>2]=0;c[b+8>>2]=0;c[z>>2]=0;ta=z+4|0;c[ta>>2]=0;c[z+8>>2]=0;do if(ja){if(!(c[v+72>>2]&1)){ua=ka;break}sa=c[x>>2]|0;ra=c[ia>>2]|0;if((ra|0)!=(sa|0))c[ia>>2]=ra+(~((ra+-4-sa|0)>>>2)<<2);sa=c[y>>2]|0;if((la|0)!=(sa|0)){ra=la;do{N=ra+-12|0;c[ha>>2]=N;LB(N);ra=c[ha>>2]|0}while((ra|0)!=(sa|0))}sa=w+11|0;ra=w+4|0;N=j+11|0;L=j+4|0;ba=n+4|0;ca=n+8|0;aa=n+20|0;Z=n+32|0;ma=j+44|0;pa=o+44|0;oa=j+48|0;na=j+12|0;T=o+48|0;X=j+44|0;$=j+48|0;I=j+12|0;W=p+11|0;Q=p+4|0;R=A+48|0;P=A+12|0;S=o+36|0;K=o+40|0;V=T+11|0;J=o+52|0;M=j+4|0;O=j+36|0;H=o+36|0;fa=j+40|0;ga=o+40|0;da=j+36|0;ea=j+40|0;va=o+12|0;c:while(1){qr(j,v+(c[(c[v>>2]|0)+-12>>2]|0)|0);wa=Xs(j,40916)|0;xa=zb[c[(c[wa>>2]|0)+28>>2]&63](wa,10)|0;Ys(j);wa=We(v,w,xa)|0;if(c[wa+(c[(c[wa>>2]|0)+-12>>2]|0)+16>>2]&5|0){za=231;break};c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;wa=a[sa>>0]|0;do if((wa<<24>>24<0?c[ra>>2]|0:wa&255)|0){KB(j,w,0,1,w);xa=a[N>>0]|0;if(((xa<<24>>24<0?c[L>>2]|0:xa&255)|0)==1){xa=(bC(j,0,-1,21582,1)|0)==0;LB(j);if(xa)break}else LB(j);xa=a[sa>>0]|0;Aa=xa<<24>>24<0;Ba=Aa?c[w>>2]|0:w;c[n>>2]=Ba;c[ba>>2]=Ba+(Aa?c[ra>>2]|0:xa&255);GB(ca,q);GB(aa,E);c[Z>>2]=c[F>>2];c[Z+4>>2]=c[F+4>>2];a[Z+8>>0]=a[F+8>>0]|0;Xe(o,n);while(1){Ye(j,n);xa=a[ma>>0]|0;Aa=a[pa>>0]|0;do if(!(xa<<24>>24==0|Aa<<24>>24==0))if((c[da>>2]|0)==(c[H>>2]|0)){Ca=(c[ea>>2]|0)==(c[ga>>2]|0);za=199;break}else{LB(oa);LB(na);LB(j);break}else{Ca=xa<<24>>24==Aa<<24>>24;za=199}while(0);if((za|0)==199?(za=0,LB(oa),LB(na),LB(j),Ca):0)break;if(!(a[pa>>0]|0)){za=205;break c}GB(p,T);Xe(j,n);Aa=a[X>>0]|0;xa=a[pa>>0]|0;do if(!(Aa<<24>>24==0|xa<<24>>24==0))if((c[O>>2]|0)==(c[H>>2]|0)){Da=(c[fa>>2]|0)==(c[ga>>2]|0);za=210;break}else{LB($);LB(I);LB(j);za=216;break}else{Da=Aa<<24>>24==xa<<24>>24;za=210}while(0);d:do if((za|0)==210){za=0;LB($);LB(I);LB(j);if(!Da){za=216;break}xa=a[W>>0]|0;do if(((xa<<24>>24<0?c[Q>>2]|0:xa&255)|0)==1){if(bC(p,0,-1,21408,1)|0)break;RB(m,44918)|0;break d}while(0);MB(m,p)|0;Ze(A,o,0);LB(R);LB(P);LB(A)}while(0);if((za|0)==216){za=0;if(!(a[pa>>0]|0)){za=217;break c}xa=a[V>>0]|0;Aa=xa<<24>>24<0;Ba=Aa?c[T>>2]|0:T;Ea=Ba+(Aa?c[J>>2]|0:xa&255)|0;c[j>>2]=Ba;c[M>>2]=Ea;if(!(_e(Ba,Ea,k,31837,33760,21684,33751,40,41)|0)){if(!($e(j,k)|0)){za=221;break c}switch(a[(c[M>>2]|0)+-1>>0]|0){case 43:case 45:case 69:case 101:{za=221;break c;break}default:{}}}Ea=c[k>>2]|0;c[B>>2]=Ea;Ba=c[ia>>2]|0;if(Ba>>>0<(c[Y>>2]|0)>>>0){c[Ba>>2]=Ea;c[ia>>2]=Ba+4}else Zd(x,B)}LB(p);if(!(a[pa>>0]|0)){za=227;break c}c[k>>2]=c[K>>2];c[j>>2]=c[k>>2];a[pa>>0]=(bf(o,S,j,T)|0)&1}LB(T);LB(va);LB(o);U=c[ha>>2]|0;if((U|0)==(c[_>>2]|0))ze(y,m);else{GB(U,m);c[ha>>2]=(c[ha>>2]|0)+12}LB(aa);LB(ca)}while(0);LB(m)}if((za|0)==205)ya(21584,21591,56,21672);else if((za|0)==217)ya(21584,21591,56,21672);else if((za|0)==221){wD(j);c[j>>2]=5328;c[j+4>>2]=336;c[j+8>>2]=3208;af(j)}else if((za|0)==227)ya(21584,21591,51,21693);else if((za|0)==231){ca=xe(40212,21703,19)|0;aa=Er(ca,((c[ha>>2]|0)-(c[y>>2]|0)|0)/12|0)|0;qr(j,aa+(c[(c[aa>>2]|0)+-12>>2]|0)|0);ca=Xs(j,40916)|0;va=zb[c[(c[ca>>2]|0)+28>>2]&63](ca,10)|0;Ys(j);Hr(aa,va)|0;vr(aa)|0;ua=c[ha>>2]|0;break}}else ua=ka;while(0);if((ua-(c[y>>2]|0)|0)>0){ua=k+4|0;ka=k+8|0;za=h==0.0;_=m+11|0;Y=m+4|0;A=k+8|0;Da=z+8|0;Ca=n+56|0;F=n+4|0;la=n+56|0;ja=n+128|0;aa=n+132|0;va=n+36|0;ca=n+52|0;T=b+8|0;S=e+4|0;pa=e+8|0;K=0;do{M=K*24|0;J=M+12|0;V=M|1;P=M|2;R=M|3;Q=M|4;W=M|5;I=M|6;$=M|7;ga=M+8|0;fa=M+9|0;H=M+10|0;O=M+11|0;X=M|1;na=M|2;oa=M|3;ea=M|4;da=M|5;ma=M|6;Z=M|7;ra=M+8|0;ba=M+9|0;sa=M+10|0;L=M+11|0;N=0;wa=0;while(1){c[k>>2]=0;c[ua>>2]=0;c[ka>>2]=0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,44918,0);U=c[x>>2]|0;do if(za){if(+g[U+(V<<2)>>2]>.99){RB(m,c[5340+(wa*48|0)+4>>2]|0)|0;Fa=c[x>>2]|0}else Fa=U;if(+g[Fa+(P<<2)>>2]>.99){RB(m,c[5340+(wa*48|0)+8>>2]|0)|0;Ga=c[x>>2]|0}else Ga=Fa;if(+g[Ga+(R<<2)>>2]>.99){RB(m,c[5340+(wa*48|0)+12>>2]|0)|0;Ha=c[x>>2]|0}else Ha=Ga;if(+g[Ha+(Q<<2)>>2]>.99){RB(m,c[5340+(wa*48|0)+16>>2]|0)|0;Ia=c[x>>2]|0}else Ia=Ha;if(+g[Ia+(W<<2)>>2]>.99){RB(m,c[5340+(wa*48|0)+20>>2]|0)|0;Ja=c[x>>2]|0}else Ja=Ia;if(+g[Ja+(I<<2)>>2]>.99){RB(m,c[5340+(wa*48|0)+24>>2]|0)|0;Ka=c[x>>2]|0}else Ka=Ja;if(+g[Ka+($<<2)>>2]>.99){RB(m,c[5340+(wa*48|0)+28>>2]|0)|0;La=c[x>>2]|0}else La=Ka;if(+g[La+(ga<<2)>>2]>.99){RB(m,c[5340+(wa*48|0)+32>>2]|0)|0;Ma=c[x>>2]|0}else Ma=La;if(+g[Ma+(fa<<2)>>2]>.99){RB(m,c[5340+(wa*48|0)+36>>2]|0)|0;Na=c[x>>2]|0}else Na=Ma;if(+g[Na+(H<<2)>>2]>.99){RB(m,c[5340+(wa*48|0)+40>>2]|0)|0;Oa=c[x>>2]|0}else Oa=Na;if(!(+g[Oa+(O<<2)>>2]>.99))break;RB(m,c[5340+(wa*48|0)+44>>2]|0)|0}else{if(+g[U+(X<<2)>>2]>.99){RB(m,44918)|0;Pa=c[x>>2]|0}else Pa=U;if(+g[Pa+(na<<2)>>2]>.99){RB(m,21723)|0;Ra=c[x>>2]|0}else Ra=Pa;if(+g[Ra+(oa<<2)>>2]>.99){RB(m,21725)|0;Sa=c[x>>2]|0}else Sa=Ra;if(+g[Sa+(ea<<2)>>2]>.99){RB(m,21728)|0;Ta=c[x>>2]|0}else Ta=Sa;if(+g[Ta+(da<<2)>>2]>.99){RB(m,21730)|0;Ua=c[x>>2]|0}else Ua=Ta;if(+g[Ua+(ma<<2)>>2]>.99){RB(m,44918)|0;Va=c[x>>2]|0}else Va=Ua;if(+g[Va+(Z<<2)>>2]>.99){RB(m,21732)|0;Wa=c[x>>2]|0}else Wa=Va;if(+g[Wa+(ra<<2)>>2]>.99){RB(m,44918)|0;Xa=c[x>>2]|0}else Xa=Wa;if(+g[Xa+(ba<<2)>>2]>.99){RB(m,21510)|0;Ya=c[x>>2]|0}else Ya=Xa;if(+g[Ya+(sa<<2)>>2]>.99){RB(m,21734)|0;Za=c[x>>2]|0}else Za=Ya;if(!(+g[Za+(L<<2)>>2]>.99))break;RB(m,21512)|0}while(0);U=a[_>>0]|0;do if(!((U<<24>>24<0?c[Y>>2]|0:U&255)|0)){if(bC(m,0,-1,44918,0)|0)break;Ba=((wa+12|0)%12|0)+45|0;c[j>>2]=Ba;Ea=c[ua>>2]|0;if(Ea>>>0<(c[A>>2]|0)>>>0){c[Ea>>2]=Ba;c[ua>>2]=Ea+4}else cf(k,j)}while(0);U=N+12|0;Ea=0;do{g[j>>2]=0.0;Ba=((U+Ea|0)%12|0)+M|0;xa=c[x>>2]|0;do if(+g[xa+(Ba<<2)>>2]==1.0){g[j>>2]=1.0;Aa=((Ea+12|0)%12|0)+45|0;c[n>>2]=Aa;_a=c[ua>>2]|0;if(_a>>>0<(c[A>>2]|0)>>>0){c[_a>>2]=Aa;c[ua>>2]=_a+4}else cf(k,n)}else{if(!(+g[xa+(Ba+12<<2)>>2]==1.0))break;g[j>>2]=.5}while(0);Ba=c[ta>>2]|0;if((Ba|0)==(c[Da>>2]|0))Pe(z,j);else{c[Ba>>2]=c[j>>2];c[ta>>2]=Ba+4}Ea=Ea+1|0}while((Ea|0)<12);$a=0;do{Ea=J+((U+$a|0)%12|0)|0;Ba=c[x>>2]|0;xa=Ba+(Ea<<2)|0;_a=c[ta>>2]|0;if((_a|0)==(c[Da>>2]|0)){Pe(z,xa);ab=c[x>>2]|0}else{c[_a>>2]=c[xa>>2];c[ta>>2]=_a+4;ab=Ba}if(+g[ab+(Ea<<2)>>2]>0.0){Ea=(($a+18|0)%12|0)+63|0;c[j>>2]=Ea;Ba=c[ua>>2]|0;if(Ba>>>0<(c[A>>2]|0)>>>0){c[Ba>>2]=Ea;c[ua>>2]=Ba+4}else cf(k,j)}$a=$a+1|0}while(($a|0)<12);c[n>>2]=372;c[Ca>>2]=392;or(la,F);c[ja>>2]=0;c[aa>>2]=-1;c[n>>2]=5976;c[Ca>>2]=5996;sr(F);c[F>>2]=6012;c[va>>2]=0;c[va+4>>2]=0;c[va+8>>2]=0;c[va+12>>2]=0;c[ca>>2]=16;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;df(F,j);LB(j);U=a[_>>0]|0;Ba=((U<<24>>24<0?c[Y>>2]|0:U&255)|0)==0;U=c[7028+(wa+12<<2)>>2]|0;Ea=xe(n,U,yn(U)|0)|0;U=c[y>>2]|0;_a=U+(K*12|0)|0;xa=a[_a+11>>0]|0;Aa=xa<<24>>24<0;bb=xe(Ea,Aa?c[_a>>2]|0:_a,Aa?c[U+(K*12|0)+4>>2]|0:xa&255)|0;if(!Ba){Ba=xe(bb,21499,1)|0;bb=a[_>>0]|0;xa=bb<<24>>24<0;xe(Ba,xa?c[m>>2]|0:m,xa?c[Y>>2]|0:bb&255)|0}ef(j,F);bb=c[qa>>2]|0;if(bb>>>0<(c[T>>2]|0)>>>0){c[bb>>2]=c[j>>2];c[bb+4>>2]=c[j+4>>2];c[bb+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[qa>>2]=(c[qa>>2]|0)+12}else Se(b,j);LB(j);bb=c[S>>2]|0;if((bb|0)==(c[pa>>2]|0))gf(e,k);else{ff(bb,k);c[S>>2]=(c[S>>2]|0)+12}c[n>>2]=5976;c[Ca>>2]=5996;c[F>>2]=6012;LB(va);_p(F);Wq(n,6072);Up(Ca);LB(m);bb=c[k>>2]|0;if(bb|0){xa=c[ua>>2]|0;if((xa|0)!=(bb|0))c[ua>>2]=xa+(~((xa+-4-bb|0)>>>2)<<2);tB(bb)}bb=wa+1|0;if((bb|0)<12){N=~wa;wa=bb}else break}K=K+1|0}while((K|0)<(((c[ha>>2]|0)-(c[y>>2]|0)|0)/12|0|0))};c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,25681,1);K=c[qa>>2]|0;if(K>>>0<(c[b+8>>2]|0)>>>0){c[K>>2]=c[j>>2];c[K+4>>2]=c[j+4>>2];c[K+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[qa>>2]=(c[qa>>2]|0)+12}else Se(b,j);LB(j);K=z+8|0;g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=.5;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1056964608;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Zd(z,j);g[j>>2]=1.0;ua=c[ta>>2]|0;if(ua>>>0<(c[K>>2]|0)>>>0){c[ua>>2]=1065353216;c[ta>>2]=ua+4}else Zd(z,j);c[B>>2]=0;ua=B+4|0;c[ua>>2]=0;c[B+8>>2]=0;K=e+4|0;Ca=c[K>>2]|0;if((Ca|0)==(c[e+8>>2]|0))gf(e,B);else{ff(Ca,B);c[K>>2]=(c[K>>2]|0)+12}K=c[z>>2]|0;Ca=(c[ta>>2]|0)-K|0;e=K;if((Ca|0)>92){K=(Ca>>>0)/96|0;Ca=K+-1|0;h=f+1.0;F=0;do{va=F*24|0;S=0;f=0.0;do{cb=+C(+(+g[e+(S+va<<2)>>2]));f=f+cb*cb/24.0;S=S+1|0}while((S|0)!=24);cb=+C(+(+D(+f)));db=f==-u?u:cb;cb=(F|0)<(Ca|0)?db:db/h;S=0;do{pa=e+(S+va<<2)|0;g[pa>>2]=+g[pa>>2]/cb;S=S+1|0}while((S|0)!=24);F=F+1|0}while((F|0)<(K|0))}K=(c[qa>>2]|0)-(c[b>>2]|0)|0;if((K|0)>0){b=(K>>>0)/12|0;eb=b>>>0>1?b:1}else eb=0;b=v+8|0;c[n>>2]=b;c[n+4>>2]=8;c[o>>2]=b;c[o+4>>2]=16;c[p>>2]=v+44;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[j>>2]=c[p>>2];hf(m,k,j)|0;c[v+72>>2]=0;j=eb*24|0;if(eb|0){eb=d+4|0;k=d+8|0;m=0;do{p=(c[z>>2]|0)+(m<<2)|0;o=c[eb>>2]|0;if((o|0)==(c[k>>2]|0))Pe(d,p);else{c[o>>2]=c[p>>2];c[eb>>2]=o+4}m=m+1|0}while((m|0)<(j|0))}j=c[B>>2]|0;if(j|0){B=c[ua>>2]|0;if((B|0)!=(j|0))c[ua>>2]=B+(~((B+-4-j|0)>>>2)<<2);tB(j)}j=c[z>>2]|0;if(j|0){z=c[ta>>2]|0;if((z|0)!=(j|0))c[ta>>2]=z+(~((z+-4-j|0)>>>2)<<2);tB(j)}j=c[y>>2]|0;if(j|0){z=c[ha>>2]|0;if((z|0)==(j|0))fb=j;else{ta=z;do{z=ta+-12|0;c[ha>>2]=z;LB(z);ta=c[ha>>2]|0}while((ta|0)!=(j|0));fb=c[y>>2]|0}tB(fb)}fb=c[x>>2]|0;if(fb|0){x=c[ia>>2]|0;if((x|0)!=(fb|0))c[ia>>2]=x+(~((x+-4-fb|0)>>>2)<<2);tB(fb)}LB(w);Mq(v,6092);jf(v+8|0);Up(v+76|0);v=c[t>>2]|0;if(!v){LB(s);LB(r);LB(E);LB(q);l=i;return}w=c[G>>2]|0;if((w|0)==(v|0))gb=v;else{fb=w;do{w=fb+-12|0;c[G>>2]=w;LB(w);fb=c[G>>2]|0}while((fb|0)!=(v|0));gb=c[t>>2]|0}tB(gb);LB(s);LB(r);LB(E);LB(q);l=i;return}function Se(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=((e-f|0)/12|0)+1|0;if(g>>>0>357913941){Az(a);h=c[a>>2]|0;i=c[d>>2]|0}else{h=f;i=e}e=a+8|0;f=((c[e>>2]|0)-h|0)/12|0;j=f<<1;k=f>>>0<178956970?(j>>>0<g>>>0?g:j):357913941;j=(i-h|0)/12|0;do if(k)if(k>>>0>357913941){h=za(4)|0;AD(h);Xa(h|0,3080,250)}else{l=rB(k*12|0)|0;break}else l=0;while(0);h=l+(j*12|0)|0;j=h;i=l+(k*12|0)|0;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;b=h+12|0;k=c[a>>2]|0;l=c[d>>2]|0;if((l|0)==(k|0)){m=j;n=k;o=k}else{g=l;l=j;j=h;do{h=j+-12|0;g=g+-12|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;j=l+-12|0;l=j}while((g|0)!=(k|0));m=l;n=c[a>>2]|0;o=c[d>>2]|0}c[a>>2]=m;c[d>>2]=b;c[e>>2]=i;i=n;if((o|0)!=(i|0)){e=o;do{e=e+-12|0;LB(e)}while((e|0)!=(i|0))}if(!n)return;tB(n);return}function Te(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;e=l;l=l+16|0;f=e;sr(d);c[d>>2]=6748;c[d+32>>2]=0;c[d+36>>2]=0;c[d+40>>2]=0;g=d+52|0;h=d+68|0;i=d+98|0;j=g;k=j+44|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(k|0));b[g+44>>1]=0;a[g+46>>0]=0;g=d+4|0;aB(f,g);j=eB(f,42708)|0;Ys(f);if(!j){m=c[d>>2]|0;n=m+12|0;o=c[n>>2]|0;ib[o&31](d,0,4096)|0;l=e;return}aB(f,g);c[h>>2]=Xs(f,42708)|0;Ys(f);f=c[h>>2]|0;a[i>>0]=(rb[c[(c[f>>2]|0)+28>>2]&127](f)|0)&1;m=c[d>>2]|0;n=m+12|0;o=c[n>>2]|0;ib[o&31](d,0,4096)|0;l=e;return}function Ue(b){b=b|0;var d=0,e=0;c[b>>2]=6748;d=b+64|0;e=c[d>>2]|0;if(e|0?(ah(b)|0,(Qo(e)|0)==0):0)c[d>>2]=0;if(a[b+96>>0]|0?(d=c[b+32>>2]|0,d|0):0)uB(d);if(a[b+97>>0]|0?(d=c[b+56>>2]|0,d|0):0)uB(d);_p(b);return}function Ve(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;e=l;l=l+16|0;f=e;g=b+76|0;c[g>>2]=13508;h=b+8|0;sr(h);c[b+40>>2]=0;a[b+52>>0]=0;i=b+56|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[b+72>>2]=4;c[h>>2]=6116;c[b>>2]=604;c[g>>2]=624;c[b+4>>2]=0;or(b+76|0,h);c[b+148>>2]=0;c[b+152>>2]=-1;c[b>>2]=6480;c[g>>2]=6500;c[f>>2]=0;g=f+4|0;c[g>>2]=0;h=rB(100)|0;Te(h);i=h+64|0;if((c[i>>2]|0)==0?(j=Ko((a[d+11>>0]|0)<0?c[d>>2]|0:d,21501)|0,c[i>>2]=j,j|0):0)c[h+88>>2]=8;Rg(f,h);nr(b+(c[(c[b>>2]|0)+-12>>2]|0)|0,0);Sg(b+8|0,f,-1,-1);f=c[g>>2]|0;if(!f){l=e;return}g=f+4|0;b=c[g>>2]|0;c[g>>2]=b-1;if((b|0)!=1){l=e;return}ob[c[(c[f>>2]|0)+8>>2]&511](f);b=f+8|0;g=c[b>>2]|0;c[b>>2]=g-1;if((g|0)!=1){l=e;return}ob[c[(c[f>>2]|0)+12>>2]&511](f);l=e;return}function We(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;g=l;l=l+16|0;h=g;ur(h,b,1);if(!(a[h>>0]|0)){l=g;return b|0}h=e+11|0;if((a[h>>0]|0)<0){a[c[e>>2]>>0]=0;i=e+4|0;c[i>>2]=0;j=i}else{a[e>>0]=0;a[h>>0]=0;j=e+4|0}i=0;while(1){k=c[b+(c[(c[b>>2]|0)+-12>>2]|0)+24>>2]|0;m=k+12|0;n=c[m>>2]|0;if((n|0)==(c[k+16>>2]|0)){o=rb[c[(c[k>>2]|0)+40>>2]&127](k)|0;if((o|0)==-1){p=i;q=2;break}else r=o}else{c[m>>2]=n+1;r=d[n>>0]|0}n=i+1|0;m=r&255;if(m<<24>>24==f<<24>>24){p=n;q=0;break}XB(e,m);if((a[h>>0]|0)<0&(c[j>>2]|0)==-17){p=n;q=4;break}else i=n}i=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;nr(i,c[i+16>>2]|((p|0)==0?q|4:q));l=g;return b|0}function Xe(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+64|0;f=e+48|0;g=e+44|0;h=e+8|0;i=e+4|0;j=e;GB(h,d+8|0);k=h+12|0;GB(k,d+20|0);m=h+24|0;n=d+32|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];a[m+8>>0]=a[n+8>>0]|0;c[i>>2]=c[d>>2];c[j>>2]=c[d+4>>2];c[g>>2]=c[i>>2];c[f>>2]=c[j>>2];Qg(b,h,g,f);LB(k);LB(h);l=e;return}function Ye(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+64|0;f=e+48|0;g=e+44|0;h=e+8|0;i=e+4|0;j=e;GB(h,d+8|0);k=h+12|0;GB(k,d+20|0);m=h+24|0;n=d+32|0;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];a[m+8>>0]=a[n+8>>0]|0;n=c[d+4>>2]|0;c[i>>2]=n;c[j>>2]=n;c[g>>2]=c[i>>2];c[f>>2]=c[j>>2];Qg(b,h,g,f);LB(k);LB(h);l=e;return}function Ze(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;e=l;l=l+16|0;f=e+4|0;g=e;GB(b,d);GB(b+12|0,d+12|0);h=b+24|0;i=d+24|0;c[h>>2]=c[i>>2];c[h+4>>2]=c[i+4>>2];a[h+8>>0]=a[i+8>>0]|0;i=b+36|0;h=d+36|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];a[i+8>>0]=a[h+8>>0]|0;h=d+48|0;GB(b+48|0,h);b=d+44|0;if(!(a[b>>0]|0))ya(21584,21591,51,21693);else{c[g>>2]=c[d+40>>2];c[f>>2]=c[g>>2];a[b>>0]=(bf(d,d+36|0,f,h)|0)&1;l=e;return}}function _e(b,c,d,e,f,h,i,j,k){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0;if((b|0)==(c|0)){l=0;return l|0}m=a[b>>0]|0;n=m<<24>>24==45;o=n|m<<24>>24==43?b+1|0:b;b=c;m=b-o|0;if((m|0)<3){l=0;return l|0}p=a[o>>0]|0;if(!(p<<24>>24!=(a[f>>0]|0)?p<<24>>24!=(a[e>>0]|0):0))q=5;do if((q|0)==5){r=a[o+1>>0]|0;if(r<<24>>24!=(a[f+1>>0]|0)?r<<24>>24!=(a[e+1>>0]|0):0)break;r=a[o+2>>0]|0;if(r<<24>>24!=(a[f+2>>0]|0)?r<<24>>24!=(a[e+2>>0]|0):0)break;r=o+3|0;if((r|0)!=(c|0)){if((b-r|0)<2){l=0;return l|0}if((a[r>>0]|0)!=j<<24>>24){l=0;return l|0}if((a[c+-1>>0]|0)!=k<<24>>24){l=0;return l|0}}if(n){g[d>>2]=t;l=1;return l|0}else{g[d>>2]=t;l=1;return l|0}}while(0);switch(m|0){case 3:{if(p<<24>>24!=(a[i>>0]|0)?p<<24>>24!=(a[h>>0]|0):0){l=0;return l|0}m=a[o+1>>0]|0;if(m<<24>>24!=(a[i+1>>0]|0)?m<<24>>24!=(a[h+1>>0]|0):0){l=0;return l|0}m=a[o+2>>0]|0;if(m<<24>>24!=(a[i+2>>0]|0)?m<<24>>24!=(a[h+2>>0]|0):0){l=0;return l|0}break}case 8:{if(p<<24>>24!=(a[i>>0]|0)?p<<24>>24!=(a[h>>0]|0):0){l=0;return l|0}p=a[o+1>>0]|0;if(p<<24>>24!=(a[i+1>>0]|0)?p<<24>>24!=(a[h+1>>0]|0):0){l=0;return l|0}p=a[o+2>>0]|0;if(p<<24>>24!=(a[i+2>>0]|0)?p<<24>>24!=(a[h+2>>0]|0):0){l=0;return l|0}p=a[o+3>>0]|0;if(p<<24>>24!=(a[i+3>>0]|0)?p<<24>>24!=(a[h+3>>0]|0):0){l=0;return l|0}p=a[o+4>>0]|0;if(p<<24>>24!=(a[i+4>>0]|0)?p<<24>>24!=(a[h+4>>0]|0):0){l=0;return l|0}p=a[o+5>>0]|0;if(p<<24>>24!=(a[i+5>>0]|0)?p<<24>>24!=(a[h+5>>0]|0):0){l=0;return l|0}p=a[o+6>>0]|0;if(p<<24>>24!=(a[i+6>>0]|0)?p<<24>>24!=(a[h+6>>0]|0):0){l=0;return l|0}p=a[o+7>>0]|0;if(p<<24>>24!=(a[i+7>>0]|0)?p<<24>>24!=(a[h+7>>0]|0):0){l=0;return l|0}break}default:{l=0;return l|0}}if(n){g[d>>2]=-u;l=1;return l|0}else{g[d>>2]=u;l=1;return l|0}return 0}function $e(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=l;l=l+128|0;e=d+88|0;f=d;sr(e);c[e>>2]=6652;g=c[a>>2]|0;h=g+((c[a+4>>2]|0)-g)|0;c[e+8>>2]=g;c[e+12>>2]=g;c[e+16>>2]=h;h=f+8|0;c[f>>2]=13672;c[h>>2]=13692;c[f+4>>2]=0;or(h,e);c[f+80>>2]=0;c[f+84>>2]=-1;h=f+(c[(c[f>>2]|0)+-12>>2]|0)|0;c[h+20>>2]=1;nr(h,c[h+16>>2]|0);h=f+(c[(c[f>>2]|0)+-12>>2]|0)+4|0;c[h>>2]=c[h>>2]&-4097;c[f+(c[(c[f>>2]|0)+-12>>2]|0)+8>>2]=9;h=yr(f,b)|0;if(c[h+(c[(c[h>>2]|0)+-12>>2]|0)+16>>2]&5|0){i=0;Iq(f);_p(e);l=d;return i|0}i=(zr(f)|0)==-1;Iq(f);_p(e);l=d;return i|0}function af(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+32|0;d=b;b=za(36)|0;e=a+4|0;a=c[e+4>>2]|0;f=d+4|0;c[f>>2]=c[e>>2];c[f+4>>2]=a;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;c[d+28>>2]=-1;c[d>>2]=6532;c[d+12>>2]=6552;sg(b,d);Xa(b|0,688,65)}function bf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;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,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0;g=b+28|0;a:do if(!(c[g>>2]|0)){h=b+25|0;i=c[d>>2]|0;j=c[e>>2]|0;if((i|0)==(j|0)){k=0;return k|0}l=b+12|0;m=l+11|0;n=b+16|0;o=i;while(1){i=a[o>>0]|0;p=a[m>>0]|0;if(p<<24>>24<0)q=c[n>>2]|0;else q=p&255;if(!q){if(!(a[h>>0]|0)){r=o;break}if(!(Bn(i<<24>>24)|0)){r=o;break}else s=o}else{p=($B(l,i,0)|0)==-1;i=c[d>>2]|0;if(p){r=i;break}else s=i}o=s+1|0;c[d>>2]=o;if((o|0)==(j|0)){r=j;break}}o=(r|0)==(j|0);if(c[g>>2]|0)if(o){t=r;u=j;v=43;break}else{w=d;x=r;y=e;v=53;break}if(o){k=0;return k|0}o=a[r>>0]|0;l=b+11|0;n=a[l>>0]|0;if(n<<24>>24<0)z=c[b+4>>2]|0;else z=n&255;if(!z)if((a[b+24>>0]|0)!=0?(ip(o<<24>>24)|0)!=0:0){A=r;v=24}else B=r;else{n=($B(b,o,0)|0)==-1;o=c[d>>2]|0;if(n)B=o;else{A=o;v=24}}if((v|0)==24){c[d>>2]=A+1;C=r;break}if((B|0)==(j|0))C=r;else{o=b+12|0;n=o+11|0;m=b+16|0;i=b+4|0;p=b+24|0;D=B;while(1){E=a[D>>0]|0;F=a[n>>0]|0;if(F<<24>>24<0)G=c[m>>2]|0;else G=F&255;if(!G)if((a[h>>0]|0)!=0?(Bn(E<<24>>24)|0)!=0:0){C=r;break a}else{H=D;I=E}else{if(($B(o,E,0)|0)!=-1){C=r;break a}E=c[d>>2]|0;H=E;I=a[E>>0]|0}E=a[l>>0]|0;if(E<<24>>24<0)J=c[i>>2]|0;else J=E&255;if(!J)if((a[p>>0]|0)!=0?(ip(I<<24>>24)|0)!=0:0){C=r;break a}else K=H;else{if(($B(b,I,0)|0)!=-1){C=r;break a}K=c[d>>2]|0}D=K+1|0;c[d>>2]=D;if((D|0)==(j|0)){C=r;break}}}}else{j=c[d>>2]|0;if((j|0)==(c[e>>2]|0)){t=j;u=j;v=43}else{w=d;x=j;y=e;v=53}}while(0);if((v|0)==43){e=b+32|0;if(a[e>>0]|0){k=0;return k|0}a[e>>0]=1;e=u;r=t-e|0;K=f+11|0;I=a[K>>0]|0;H=I<<24>>24<0;if(H)L=(c[f+8>>2]&2147483647)+-1|0;else L=10;if(r>>>0>L>>>0){J=H?c[f+4>>2]|0:I&255;UB(f,L,r-L|0,J,0,J,0);M=a[K>>0]|0}else M=I;I=M<<24>>24<0?c[f>>2]|0:f;if((u|0)==(t|0))N=I;else{M=I;I=e;e=u;while(1){a[M>>0]=a[e>>0]|0;u=I+1|0;J=M+1|0;if((u|0)==(t|0)){N=J;break}else{M=J;I=u;e=u}}}a[N>>0]=0;if((a[K>>0]|0)<0){c[f+4>>2]=r;k=1;return k|0}else{a[K>>0]=r;k=1;return k|0}}if((v|0)==53){r=a[x>>0]|0;K=b+11|0;N=a[K>>0]|0;if(N<<24>>24<0)O=c[b+4>>2]|0;else O=N&255;do if(!O)if(!(a[b+24>>0]|0)){N=b+32|0;if(!(a[N>>0]|0)){P=r;Q=N;v=65;break}else{R=N;v=72;break}}else{N=(ip(r<<24>>24)|0)==0;e=b+32|0;I=(a[e>>0]|0)==0;if(N){S=I;T=e;v=63;break}else{U=I;V=e;v=61;break}}else{e=($B(b,r,0)|0)==-1;I=b+32|0;N=(a[I>>0]|0)==0;if(e){S=N;T=I;v=63}else{U=N;V=I;v=61}}while(0);if((v|0)==61)if(U){W=1;X=x;Y=V}else{c[w>>2]=(c[w>>2]|0)+1;W=0;X=x;Y=V}else if((v|0)==63)if(S){P=a[c[w>>2]>>0]|0;Q=T;v=65}else{R=T;v=72}do if((v|0)==65){T=b+12|0;S=a[T+11>>0]|0;if(S<<24>>24<0)Z=c[b+16>>2]|0;else Z=S&255;if(Z|0)if(($B(T,P,0)|0)==-1){R=Q;v=72;break}else{W=1;X=x;Y=Q;break}if((a[b+25>>0]|0)!=0?(Bn(P<<24>>24)|0)!=0:0){W=1;X=x;Y=Q}else{R=Q;v=72}}while(0);b:do if((v|0)==72){Q=c[w>>2]|0;P=a[Q>>0]|0;Z=b+12|0;T=Z+11|0;S=a[T>>0]|0;if(S<<24>>24<0)_=c[b+16>>2]|0;else _=S&255;if(!_)if((a[b+25>>0]|0)!=0?(Bn(P<<24>>24)|0)!=0:0){$=Q;v=79}else{aa=x;ba=Q}else{Q=($B(Z,P,0)|0)==-1;P=c[w>>2]|0;if(Q){aa=x;ba=P}else{$=P;v=79}}if((v|0)==79){P=$+1|0;c[w>>2]=P;aa=P;ba=P}if((ba|0)==(c[y>>2]|0)){W=1;X=aa;Y=R}else{P=b+16|0;Q=b+25|0;S=b+4|0;V=b+24|0;U=ba;while(1){r=a[U>>0]|0;O=a[T>>0]|0;if(O<<24>>24<0)ca=c[P>>2]|0;else ca=O&255;if(!ca)if((a[Q>>0]|0)!=0?(Bn(r<<24>>24)|0)!=0:0){W=1;X=aa;Y=R;break b}else{da=r;ea=U}else{if(($B(Z,r,0)|0)!=-1){W=1;X=aa;Y=R;break b}r=c[w>>2]|0;da=a[r>>0]|0;ea=r}r=a[K>>0]|0;if(r<<24>>24<0)fa=c[S>>2]|0;else fa=r&255;if(!fa)if((a[V>>0]|0)!=0?(ip(da<<24>>24)|0)!=0:0){W=1;X=aa;Y=R;break b}else ga=ea;else{if(($B(b,da,0)|0)!=-1){W=1;X=aa;Y=R;break b}ga=c[w>>2]|0}U=ga+1|0;c[w>>2]=U;if((U|0)==(c[y>>2]|0)){W=1;X=aa;Y=R;break}}}}while(0);a[Y>>0]=W;C=X}X=c[d>>2]|0;d=C;W=X-d|0;Y=f+11|0;R=a[Y>>0]|0;aa=R<<24>>24<0;y=X;if(aa)ha=(c[f+8>>2]&2147483647)+-1|0;else ha=10;if(W>>>0>ha>>>0){X=aa?c[f+4>>2]|0:R&255;UB(f,ha,W-ha|0,X,0,X,0);ia=a[Y>>0]|0}else ia=R;R=ia<<24>>24<0?c[f>>2]|0:f;if((C|0)==(y|0))ja=R;else{ia=R;R=d;d=C;while(1){a[ia>>0]=a[d>>0]|0;C=R+1|0;X=ia+1|0;if((C|0)==(y|0)){ja=X;break}else{ia=X;R=C;d=C}}}a[ja>>0]=0;if((a[Y>>0]|0)<0){c[f+4>>2]=W;k=1;return k|0}else{a[Y>>0]=W;k=1;return k|0}return 0} function Cb(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Db(){return l|0}function Eb(a){a=a|0;l=a}function Fb(a,b){a=a|0;b=b|0;l=a;m=b}function Gb(a,b){a=a|0;b=b|0;if(!p){p=a;q=b}}function Hb(a){a=a|0;A=a}function Ib(){return A|0}function Jb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=l;l=l+48|0;g=f+40|0;h=f+36|0;i=f+24|0;j=f+12|0;k=f;GB(i,b);_b(j,d);c[k+4>>2]=0;c[k+8>>2]=0;d=k+4|0;c[k>>2]=d;b=c[e>>2]|0;m=e+4|0;if((b|0)!=(m|0)){e=d;n=b;o=b;while(1){b=n+16|0;c[h>>2]=e;c[g>>2]=c[h>>2];Nc(k,g,b,b)|0;b=c[o+4>>2]|0;if(!b){p=o;while(1){q=c[p+8>>2]|0;if((c[q>>2]|0)==(p|0)){r=q;break}else p=q}}else{p=b;while(1){q=c[p>>2]|0;if(!q){r=p;break}else p=q}}if((r|0)==(m|0))break;else{n=r;o=r}}}Qc(a,i,j,k);Ub(k,c[d>>2]|0);d=c[j>>2]|0;if(!d){LB(i);c[a>>2]=3376;l=f;return}k=j+4|0;r=c[k>>2]|0;if((r|0)==(d|0))s=d;else{o=r;do{r=o+-12|0;c[k>>2]=r;LB(r);o=c[k>>2]|0}while((o|0)!=(d|0));s=c[j>>2]|0}tB(s);LB(i);c[a>>2]=3376;l=f;return}function Kb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;c[a>>2]=3240;Ub(a+40|0,c[a+44>>2]|0);b=a+28|0;d=c[b>>2]|0;if(!d){e=a+16|0;LB(e);return}f=a+32|0;g=c[f>>2]|0;if((g|0)==(d|0))h=d;else{i=g;do{g=i+-12|0;c[f>>2]=g;LB(g);i=c[f>>2]|0}while((i|0)!=(d|0));h=c[b>>2]|0}tB(h);e=a+16|0;LB(e);return}function Lb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=l;l=l+48|0;g=f+40|0;h=f+36|0;i=f+24|0;j=f+12|0;k=f;GB(i,b);_b(j,d);c[k+4>>2]=0;c[k+8>>2]=0;d=k+4|0;c[k>>2]=d;b=c[e>>2]|0;m=e+4|0;if((b|0)!=(m|0)){e=d;n=b;o=b;while(1){b=n+16|0;c[h>>2]=e;c[g>>2]=c[h>>2];Nc(k,g,b,b)|0;b=c[o+4>>2]|0;if(!b){p=o;while(1){q=c[p+8>>2]|0;if((c[q>>2]|0)==(p|0)){r=q;break}else p=q}}else{p=b;while(1){q=c[p>>2]|0;if(!q){r=p;break}else p=q}}if((r|0)==(m|0))break;else{n=r;o=r}}}Sc(a,i,j,k);Ub(k,c[d>>2]|0);d=c[j>>2]|0;if(!d){LB(i);c[a>>2]=3400;l=f;return}k=j+4|0;r=c[k>>2]|0;if((r|0)==(d|0))s=d;else{o=r;do{r=o+-12|0;c[k>>2]=r;LB(r);o=c[k>>2]|0}while((o|0)!=(d|0));s=c[j>>2]|0}tB(s);LB(i);c[a>>2]=3400;l=f;return}function Mb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;c[a>>2]=3264;Ub(a+40|0,c[a+44>>2]|0);b=a+28|0;d=c[b>>2]|0;if(!d){e=a+16|0;LB(e);return}f=a+32|0;g=c[f>>2]|0;if((g|0)==(d|0))h=d;else{i=g;do{g=i+-12|0;c[f>>2]=g;LB(g);i=c[f>>2]|0}while((i|0)!=(d|0));h=c[b>>2]|0}tB(h);e=a+16|0;LB(e);return}function Nb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=l;l=l+48|0;g=f+40|0;h=f+36|0;i=f+24|0;j=f+12|0;k=f;GB(i,b);_b(j,d);c[k+4>>2]=0;c[k+8>>2]=0;d=k+4|0;c[k>>2]=d;b=c[e>>2]|0;m=e+4|0;if((b|0)!=(m|0)){e=d;n=b;o=b;while(1){b=n+16|0;c[h>>2]=e;c[g>>2]=c[h>>2];Nc(k,g,b,b)|0;b=c[o+4>>2]|0;if(!b){p=o;while(1){q=c[p+8>>2]|0;if((c[q>>2]|0)==(p|0)){r=q;break}else p=q}}else{p=b;while(1){q=c[p>>2]|0;if(!q){r=p;break}else p=q}}if((r|0)==(m|0))break;else{n=r;o=r}}}Uc(a,i,j,k);Ub(k,c[d>>2]|0);d=c[j>>2]|0;if(!d){LB(i);c[a>>2]=3424;l=f;return}k=j+4|0;r=c[k>>2]|0;if((r|0)==(d|0))s=d;else{o=r;do{r=o+-12|0;c[k>>2]=r;LB(r);o=c[k>>2]|0}while((o|0)!=(d|0));s=c[j>>2]|0}tB(s);LB(i);c[a>>2]=3424;l=f;return}function Ob(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;c[a>>2]=3288;Ub(a+40|0,c[a+44>>2]|0);b=a+28|0;d=c[b>>2]|0;if(!d){e=a+16|0;LB(e);return}f=a+32|0;g=c[f>>2]|0;if((g|0)==(d|0))h=d;else{i=g;do{g=i+-12|0;c[f>>2]=g;LB(g);i=c[f>>2]|0}while((i|0)!=(d|0));h=c[b>>2]|0}tB(h);e=a+16|0;LB(e);return}function Pb(a){a=a|0;c[a+24>>2]=3312;c[a+36>>2]=3344;Gc(a+104|0,c[a+108>>2]|0);Hc(a+92|0,c[a+96>>2]|0);Hc(a+80|0,c[a+84>>2]|0);Ic(a+68|0,c[a+72>>2]|0);Jc(a+56|0,c[a+60>>2]|0);Kc(a+44|0,c[a+48>>2]|0);Lc(a+12|0,c[a+16>>2]|0);Mc(a,c[a+4>>2]|0);return}function Qb(a){a=a|0;return Rb(39040,a)|0}function Rb(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+32|0;f=e+12|0;g=e;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,d,yn(d)|0);xd(f,b,g);b=xn((a[f+11>>0]|0)<0?c[f>>2]|0:f)|0;LB(f);LB(g);l=e;return b|0}function Sb(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;g=l;l=l+16|0;h=g;hd(h,39040,b,d,e,f);f=xn((a[h+11>>0]|0)<0?c[h>>2]|0:h)|0;LB(h);l=g;return f|0}function Tb(a){a=a|0;Qp(a);return}function Ub(a,b){a=a|0;b=b|0;if(!b)return;else{Ub(a,c[b>>2]|0);Ub(a,c[b+4>>2]|0);LB(b+28|0);LB(b+16|0);tB(b);return}}function Vb(a){a=a|0;Ha(a|0)|0;VC()}function Wb(a,b){a=a|0;b=b|0;GB(a,b+16|0);return}function Xb(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;e=l;l=l+64|0;f=e+44|0;g=e+32|0;h=e+28|0;i=e+24|0;j=e+12|0;k=e;m=sb[c[(c[d>>2]|0)+12>>2]&3](d,44100.0)|0;n=d+16|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;o=a[n+11>>0]|0;p=o<<24>>24<0;q=p?c[d+20>>2]|0:o&255;cC(f,p?c[n>>2]|0:n,q,q+1|0);VB(f,18442,1)|0;pb[c[(c[m>>2]|0)+12>>2]&127](g,m);q=a[g+11>>0]|0;n=q<<24>>24<0;p=VB(f,n?c[g>>2]|0:g,n?c[g+4>>2]|0:q&255)|0;c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;_b(k,d+28|0);Zb(b,j,k,m);p=c[k>>2]|0;if(p|0){q=k+4|0;n=c[q>>2]|0;if((n|0)==(p|0))r=p;else{o=n;do{n=o+-12|0;c[q>>2]=n;LB(n);o=c[q>>2]|0}while((o|0)!=(p|0));r=c[k>>2]|0}tB(r)}LB(j);LB(g);LB(f);j=d+40|0;r=b+136|0;if((r|0)!=(j|0)){c[h>>2]=c[j>>2];c[i>>2]=d+44;c[g>>2]=c[h>>2];c[f>>2]=c[i>>2];fc(r,g,f)}if(!m){l=e;return}ob[c[(c[m>>2]|0)+4>>2]&511](m);l=e;return}function Yb(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;f=l;l=l+208|0;h=f+52|0;i=f+40|0;j=f+28|0;k=f+24|0;m=f+12|0;n=f;o=sb[c[(c[d>>2]|0)+12>>2]&3](d,+g[e+12>>2])|0;p=e+16|0;if((c[d+4>>2]&c[p>>2]|0)!=0?(rb[c[(c[o>>2]|0)+72>>2]&127](o)|0)==1:0){e=rB(16)|0;Yj(e,o);q=e}else q=o;o=c[p>>2]|0;if(!(c[d+12>>2]&o)){r=q;s=o}else{o=rB(16)|0;vj(o,q);r=o;s=c[p>>2]|0}if(!(c[d+8>>2]&s))t=r;else{s=rB(16)|0;Ej(s,r);t=s}s=b+140|0;c[b+144>>2]=0;c[b+148>>2]=0;HD(b+4|0,0,136)|0;c[s>>2]=b+144;c[b+152>>2]=0;c[b+156>>2]=0;c[b+160>>2]=0;r=b+164|0;c[b+168>>2]=0;p=b+172|0;c[p>>2]=0;o=b+168|0;c[r>>2]=o;q=b+176|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[b>>2]=t;e=d+16|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;u=a[e+11>>0]|0;v=u<<24>>24<0;w=v?c[d+20>>2]|0:u&255;cC(i,v?c[e>>2]|0:e,w,w+1|0);VB(i,18442,1)|0;pb[c[(c[t>>2]|0)+12>>2]&127](j,t);w=a[j+11>>0]|0;e=w<<24>>24<0;v=VB(i,e?c[j>>2]|0:j,e?c[j+4>>2]|0:w&255)|0;c[m>>2]=c[v>>2];c[m+4>>2]=c[v+4>>2];c[m+8>>2]=c[v+8>>2];c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;_b(n,d+28|0);Zb(h,m,n,t);ic(b+4|0,h)|0;$b(h);v=c[n>>2]|0;if(v|0){w=n+4|0;e=c[w>>2]|0;if((e|0)==(v|0))x=v;else{u=e;do{e=u+-12|0;c[w>>2]=e;LB(e);u=c[w>>2]|0}while((u|0)!=(v|0));x=c[n>>2]|0}tB(x)}LB(m);LB(j);LB(i);m=d+40|0;if((s|0)!=(m|0)){c[j>>2]=c[m>>2];c[k>>2]=d+44;c[i>>2]=c[j>>2];c[h>>2]=c[k>>2];fc(s,i,h)}i=rb[c[(c[t>>2]|0)+84>>2]&127](t)|0;if((i|0)==(rb[c[(c[t>>2]|0)+88>>2]&127](t)|0))y=rb[c[(c[t>>2]|0)+84>>2]&127](t)|0;else y=0;i=rb[c[(c[t>>2]|0)+76>>2]&127](t)|0;s=rb[c[(c[t>>2]|0)+80>>2]&127](t)|0;k=(i|0)==0?1024:i;if(!s)if((rb[c[(c[t>>2]|0)+72>>2]&127](t)|0)==1)z=(k|0)/2|0;else z=k;else z=s;jc(h,t,y,z,k);k=b+152|0;c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];k=h+12|0;nc(r,c[o>>2]|0);c[r>>2]=c[k>>2];z=h+16|0;y=c[z>>2]|0;c[o>>2]=y;t=h+20|0;s=c[t>>2]|0;c[p>>2]=s;if(!s)c[r>>2]=o;else{c[y+8>>2]=o;c[k>>2]=z;c[z>>2]=0;c[t>>2]=0}t=h+24|0;k=q+11|0;if((a[k>>0]|0)<0){a[c[q>>2]>>0]=0;c[b+180>>2]=0;QB(q,0);c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;LB(t);A=h+12|0;B=c[z>>2]|0;nc(A,B);l=f;return}else{a[q>>0]=0;a[k>>0]=0;QB(q,0);c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;LB(t);A=h+12|0;B=c[z>>2]|0;nc(A,B);l=f;return}}function Zb(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;g=l;l=l+48|0;h=g+36|0;i=g;c[b+140>>2]=0;c[b+144>>2]=0;HD(b|0,0,136)|0;c[b+136>>2]=b+140;MB(b,d)|0;pb[c[(c[f>>2]|0)+12>>2]&127](h,f);d=b+12|0;j=d+11|0;if((a[j>>0]|0)<0){a[c[d>>2]>>0]=0;c[b+16>>2]=0}else{a[d>>0]=0;a[j>>0]=0}QB(d,0);c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;LB(h);pb[c[(c[f>>2]|0)+16>>2]&127](h,f);d=b+24|0;j=d+11|0;if((a[j>>0]|0)<0){a[c[d>>2]>>0]=0;c[b+28>>2]=0}else{a[d>>0]=0;a[j>>0]=0}QB(d,0);c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;LB(h);pb[c[(c[f>>2]|0)+20>>2]&127](h,f);d=b+36|0;j=d+11|0;if((a[j>>0]|0)<0){a[c[d>>2]>>0]=0;c[b+40>>2]=0}else{a[d>>0]=0;a[j>>0]=0}QB(d,0);c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;LB(h);pb[c[(c[f>>2]|0)+24>>2]&127](h,f);d=b+48|0;j=d+11|0;if((a[j>>0]|0)<0){a[c[d>>2]>>0]=0;c[b+52>>2]=0}else{a[d>>0]=0;a[j>>0]=0}QB(d,0);c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;LB(h);pb[c[(c[f>>2]|0)+28>>2]&127](h,f);d=b+60|0;j=d+11|0;if((a[j>>0]|0)<0){a[c[d>>2]>>0]=0;c[b+64>>2]=0}else{a[d>>0]=0;a[j>>0]=0}QB(d,0);c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;LB(h);c[b+72>>2]=rb[c[(c[f>>2]|0)+32>>2]&127](f)|0;d=b+76|0;if((d|0)!=(e|0))cc(d,c[e>>2]|0,c[e+4>>2]|0);c[b+88>>2]=rb[c[(c[f>>2]|0)+84>>2]&127](f)|0;c[b+92>>2]=rb[c[(c[f>>2]|0)+88>>2]&127](f)|0;pb[c[(c[f>>2]|0)+36>>2]&127](h,f);e=b+96|0;dc(e);c[e>>2]=c[h>>2];e=h+4|0;c[b+100>>2]=c[e>>2];d=h+8|0;c[b+104>>2]=c[d>>2];c[d>>2]=0;c[e>>2]=0;c[h>>2]=0;ac(h);pb[c[(c[f>>2]|0)+48>>2]&127](h,f);e=b+108|0;d=c[e>>2]|0;if(!d){k=b+112|0;m=b+116|0}else{j=b+112|0;n=c[j>>2]|0;if((n|0)==(d|0))o=d;else{p=n;do{n=p+-12|0;c[j>>2]=n;LB(n);p=c[j>>2]|0}while((p|0)!=(d|0));o=c[e>>2]|0}tB(o);o=b+116|0;c[o>>2]=0;c[j>>2]=0;c[e>>2]=0;k=j;m=o}c[e>>2]=c[h>>2];c[k>>2]=c[h+4>>2];c[m>>2]=c[h+8>>2];c[b+120>>2]=rb[c[(c[f>>2]|0)+72>>2]&127](f)|0;pb[c[(c[f>>2]|0)+92>>2]&127](h,f);f=c[h>>2]|0;m=h+4|0;if((f|0)==(c[m>>2]|0)){bc(h);l=g;return}k=i+12|0;e=i+24|0;o=b+128|0;j=b+132|0;d=b+124|0;b=f;do{f=i;p=f+36|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(p|0));MB(i,b)|0;MB(k,b+12|0)|0;MB(e,b+24|0)|0;f=c[o>>2]|0;if((f|0)==(c[j>>2]|0))ec(d,i);else{GB(f,i);GB(f+12|0,k);GB(f+24|0,e);c[o>>2]=(c[o>>2]|0)+36}LB(e);LB(k);LB(i);b=b+100|0}while((b|0)!=(c[m>>2]|0));bc(h);l=g;return}function _b(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=(f|0)/12|0;if(!f)return;if(g>>>0>357913941){Az(a);h=za(4)|0;AD(h);Xa(h|0,3080,250)}h=rB(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g*12|0);g=c[b>>2]|0;b=c[e>>2]|0;if((g|0)==(b|0))return;e=g;g=h;do{GB(g,e);e=e+12|0;g=(c[d>>2]|0)+12|0;c[d>>2]=g}while((e|0)!=(b|0));return}function $b(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;Ub(a+136|0,c[a+140>>2]|0);b=a+124|0;d=c[b>>2]|0;if(d|0){e=a+128|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;do{f=h+-36|0;c[e>>2]=f;LB(h+-12|0);LB(h+-24|0);LB(f);h=c[e>>2]|0}while((h|0)!=(d|0));g=c[b>>2]|0}tB(g)}g=a+108|0;b=c[g>>2]|0;if(b|0){d=a+112|0;h=c[d>>2]|0;if((h|0)==(b|0))i=b;else{e=h;do{h=e+-12|0;c[d>>2]=h;LB(h);e=c[d>>2]|0}while((e|0)!=(b|0));i=c[g>>2]|0}tB(i)}ac(a+96|0);i=a+76|0;g=c[i>>2]|0;if(g|0){b=a+80|0;e=c[b>>2]|0;if((e|0)==(g|0))j=g;else{d=e;do{e=d+-12|0;c[b>>2]=e;LB(e);d=c[b>>2]|0}while((d|0)!=(g|0));j=c[i>>2]|0}tB(j)}LB(a+60|0);LB(a+48|0);LB(a+36|0);LB(a+24|0);LB(a+12|0);LB(a);return}function ac(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;b=c[a>>2]|0;if(!b)return;d=a+4|0;e=c[d>>2]|0;if((e|0)==(b|0))f=b;else{g=e;do{e=g+-80|0;c[d>>2]=e;h=g+-12|0;i=c[h>>2]|0;if(i|0){j=g+-8|0;k=c[j>>2]|0;if((k|0)==(i|0))l=i;else{m=k;do{k=m+-12|0;c[j>>2]=k;LB(k);m=c[j>>2]|0}while((m|0)!=(i|0));l=c[h>>2]|0}tB(l)}LB(g+-44|0);LB(g+-56|0);LB(g+-68|0);LB(e);g=c[d>>2]|0}while((g|0)!=(b|0));f=c[a>>2]|0}tB(f);return}function bc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;b=c[a>>2]|0;if(!b)return;d=a+4|0;e=c[d>>2]|0;if((e|0)==(b|0))f=b;else{g=e;do{e=g+-100|0;c[d>>2]=e;h=g+-44|0;i=c[h>>2]|0;if(i|0){j=g+-40|0;k=c[j>>2]|0;if((k|0)==(i|0))l=i;else{m=k;do{k=m+-12|0;c[j>>2]=k;LB(k);m=c[j>>2]|0}while((m|0)!=(i|0));l=c[h>>2]|0}tB(l)}LB(g+-64|0);LB(g+-76|0);LB(g+-88|0);LB(e);g=c[d>>2]|0}while((g|0)!=(b|0));f=c[a>>2]|0}tB(f);return}function cc(a,b,d){a=a|0;b=b|0;d=d|0;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,q=0,r=0,s=0,t=0,u=0,v=0;e=(d-b|0)/12|0;f=a+8|0;g=c[f>>2]|0;h=c[a>>2]|0;i=h;if(e>>>0<=((g-h|0)/12|0)>>>0){j=a+4|0;k=((c[j>>2]|0)-h|0)/12|0;l=e>>>0>k>>>0;m=b+(k*12|0)|0;k=l?m:d;if((k|0)==(b|0))n=i;else{o=b;p=i;while(1){MB(p,o)|0;o=o+12|0;q=p+12|0;if((o|0)==(k|0)){n=q;break}else p=q}}if(!l){l=c[j>>2]|0;if((l|0)==(n|0))return;else r=l;do{l=r+-12|0;c[j>>2]=l;LB(l);r=c[j>>2]|0}while((r|0)!=(n|0));return}if((k|0)==(d|0))return;k=m;m=c[j>>2]|0;do{GB(m,k);k=k+12|0;m=(c[j>>2]|0)+12|0;c[j>>2]=m}while((k|0)!=(d|0));return}if(!h)s=g;else{g=a+4|0;k=c[g>>2]|0;if((k|0)==(i|0))t=h;else{h=k;do{k=h+-12|0;c[g>>2]=k;LB(k);h=c[g>>2]|0}while((h|0)!=(i|0));t=c[a>>2]|0}tB(t);c[f>>2]=0;c[g>>2]=0;c[a>>2]=0;s=0}if(e>>>0>357913941){Az(a);u=c[a>>2]|0;v=c[f>>2]|0}else{u=0;v=s}s=(v-u|0)/12|0;u=s<<1;v=s>>>0<178956970?(u>>>0<e>>>0?e:u):357913941;if(v>>>0>357913941){Az(a);u=za(4)|0;AD(u);Xa(u|0,3080,250)}u=rB(v*12|0)|0;e=a+4|0;c[e>>2]=u;c[a>>2]=u;c[f>>2]=u+(v*12|0);if((b|0)==(d|0))return;v=b;b=u;do{GB(b,v);v=v+12|0;b=(c[e>>2]|0)+12|0;c[e>>2]=b}while((v|0)!=(d|0));return}function dc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;b=c[a>>2]|0;if(!b)return;d=a+4|0;e=c[d>>2]|0;if((e|0)==(b|0))f=b;else{g=e;do{e=g+-80|0;c[d>>2]=e;h=g+-12|0;i=c[h>>2]|0;if(i|0){j=g+-8|0;k=c[j>>2]|0;if((k|0)==(i|0))l=i;else{m=k;do{k=m+-12|0;c[j>>2]=k;LB(k);m=c[j>>2]|0}while((m|0)!=(i|0));l=c[h>>2]|0}tB(l)}LB(g+-44|0);LB(g+-56|0);LB(g+-68|0);LB(e);g=c[d>>2]|0}while((g|0)!=(b|0));f=c[a>>2]|0}tB(f);c[a+8>>2]=0;c[d>>2]=0;c[a>>2]=0;return}function ec(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=((e-f|0)/36|0)+1|0;if(g>>>0>119304647){Az(a);h=c[a>>2]|0;i=c[d>>2]|0}else{h=f;i=e}e=a+8|0;f=((c[e>>2]|0)-h|0)/36|0;j=f<<1;k=f>>>0<59652323?(j>>>0<g>>>0?g:j):119304647;j=(i-h|0)/36|0;do if(k)if(k>>>0>119304647){h=za(4)|0;AD(h);Xa(h|0,3080,250)}else{l=rB(k*36|0)|0;break}else l=0;while(0);h=l+(j*36|0)|0;i=h;g=l+(k*36|0)|0;GB(h,b);GB(l+(j*36|0)+12|0,b+12|0);GB(l+(j*36|0)+24|0,b+24|0);b=h+36|0;j=c[a>>2]|0;l=c[d>>2]|0;if((l|0)==(j|0)){m=i;n=j;o=j}else{k=l;l=i;i=h;do{h=i+-36|0;f=k;k=k+-36|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;h=i+-24|0;p=f+-24|0;c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];c[h+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;p=i+-12|0;h=f+-12|0;c[p>>2]=c[h>>2];c[p+4>>2]=c[h+4>>2];c[p+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;i=l+-36|0;l=i}while((k|0)!=(j|0));m=l;n=c[a>>2]|0;o=c[d>>2]|0}c[a>>2]=m;c[d>>2]=b;c[e>>2]=g;g=n;if((o|0)!=(g|0)){e=o;do{LB(e+-12|0);LB(e+-24|0);e=e+-36|0;LB(e)}while((e|0)!=(g|0))}if(!n)return;tB(n);return}function fc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,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,F=0,G=0,H=0,I=0;f=b+8|0;a:do if(c[f>>2]|0?(g=c[b>>2]|0,h=b+4|0,c[b>>2]=h,c[(c[h>>2]|0)+8>>2]=0,c[h>>2]=0,c[f>>2]=0,i=c[g+4>>2]|0,j=(i|0)==0?g:i,j|0):0){i=h;g=b+4|0;k=c[d>>2]|0;l=j;j=k;m=k;while(1){if((j|0)==(c[e>>2]|0))break;k=l+16|0;MB(k,j+16|0)|0;MB(l+28|0,j+28|0)|0;n=l+8|0;o=c[n>>2]|0;do if(o){p=c[o>>2]|0;if((p|0)==(l|0)){c[o>>2]=0;q=c[o+4>>2]|0;if(!q){r=o;break}else s=q;while(1){q=c[s>>2]|0;if(q|0){s=q;continue}q=c[s+4>>2]|0;if(!q)break;else s=q}r=s;break}else{c[o+4>>2]=0;if(!p){r=o;break}else t=p;while(1){q=c[t>>2]|0;if(q|0){t=q;continue}q=c[t+4>>2]|0;if(!q)break;else t=q}r=t;break}}else r=0;while(0);o=c[h>>2]|0;do if(o){p=a[k+11>>0]|0;q=p<<24>>24<0;u=q?c[l+20>>2]|0:p&255;p=q?c[k>>2]|0:k;q=o;while(1){v=q+16|0;w=a[v+11>>0]|0;x=w<<24>>24<0;y=x?c[q+20>>2]|0:w&255;w=y>>>0<u>>>0?y:u;if((w|0)!=0?(z=Eo(p,x?c[v>>2]|0:v,w)|0,(z|0)!=0):0)if((z|0)<0)A=22;else A=24;else if(u>>>0<y>>>0)A=22;else A=24;if((A|0)==22){A=0;y=c[q>>2]|0;if(!y){A=23;break}else B=y}else if((A|0)==24){A=0;C=q+4|0;y=c[C>>2]|0;if(!y){A=26;break}else B=y}q=B}if((A|0)==23){A=0;D=q;E=q;break}else if((A|0)==26){A=0;D=C;E=q;break}}else{D=h;E=i}while(0);c[l>>2]=0;c[l+4>>2]=0;c[n>>2]=E;c[D>>2]=l;o=c[c[b>>2]>>2]|0;if(!o)F=l;else{c[b>>2]=o;F=c[D>>2]|0}gc(c[g>>2]|0,F);c[f>>2]=(c[f>>2]|0)+1;o=c[m+4>>2]|0;if(!o){k=m;while(1){u=c[k+8>>2]|0;if((c[u>>2]|0)==(k|0)){G=u;break}else k=u}}else{k=o;while(1){n=c[k>>2]|0;if(!n){G=k;break}else k=n}}c[d>>2]=G;if(!r)break a;else{l=r;j=G;m=G}}m=c[l+8>>2]|0;if(!m)H=l;else{j=m;while(1){m=c[j+8>>2]|0;if(!m)break;else j=m}H=j}Ub(b,H)}while(0);H=c[d>>2]|0;G=c[e>>2]|0;if((H|0)==(G|0))return;e=H;r=H;while(1){hc(b,e+16|0)|0;H=c[r+4>>2]|0;if(!H){f=r;while(1){F=c[f+8>>2]|0;if((c[F>>2]|0)==(f|0)){I=F;break}else f=F}}else{f=H;while(1){j=c[f>>2]|0;if(!j){I=f;break}else f=j}}c[d>>2]=I;if((I|0)==(G|0))break;else{e=I;r=I}}return}function gc(b,d){b=b|0;d=d|0;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,q=0,r=0,s=0;e=(d|0)==(b|0);a[d+12>>0]=e&1;if(e)return;else f=d;while(1){g=c[f+8>>2]|0;d=g+12|0;if(a[d>>0]|0){h=23;break}i=g+8|0;j=c[i>>2]|0;e=c[j>>2]|0;if((e|0)==(g|0)){k=c[j+4>>2]|0;if(!k){h=7;break}l=k+12|0;if(!(a[l>>0]|0))m=l;else{h=7;break}}else{if(!e){h=16;break}l=e+12|0;if(!(a[l>>0]|0))m=l;else{h=16;break}}a[d>>0]=1;d=(j|0)==(b|0);a[j+12>>0]=d&1;a[m>>0]=1;if(d){h=23;break}else f=j}if((h|0)==7){if((c[g>>2]|0)==(f|0)){n=g;o=j}else{m=g+4|0;b=c[m>>2]|0;d=c[b>>2]|0;c[m>>2]=d;if(!d)p=j;else{c[d+8>>2]=g;p=c[i>>2]|0}d=b+8|0;c[d>>2]=p;p=c[i>>2]|0;c[((c[p>>2]|0)==(g|0)?p:p+4|0)>>2]=b;c[b>>2]=g;c[i>>2]=b;n=b;o=c[d>>2]|0}a[n+12>>0]=1;a[o+12>>0]=0;n=c[o>>2]|0;d=n+4|0;b=c[d>>2]|0;c[o>>2]=b;if(b|0)c[b+8>>2]=o;b=o+8|0;c[n+8>>2]=c[b>>2];p=c[b>>2]|0;c[((c[p>>2]|0)==(o|0)?p:p+4|0)>>2]=n;c[d>>2]=o;c[b>>2]=n;return}else if((h|0)==16){if((c[g>>2]|0)==(f|0)){f=c[g>>2]|0;n=f+4|0;b=c[n>>2]|0;c[g>>2]=b;if(!b)q=j;else{c[b+8>>2]=g;q=c[i>>2]|0}b=f+8|0;c[b>>2]=q;q=c[i>>2]|0;c[((c[q>>2]|0)==(g|0)?q:q+4|0)>>2]=f;c[n>>2]=g;c[i>>2]=f;r=f;s=c[b>>2]|0}else{r=g;s=j}a[r+12>>0]=1;a[s+12>>0]=0;r=s+4|0;j=c[r>>2]|0;g=c[j>>2]|0;c[r>>2]=g;if(g|0)c[g+8>>2]=s;g=s+8|0;c[j+8>>2]=c[g>>2];r=c[g>>2]|0;c[((c[r>>2]|0)==(s|0)?r:r+4|0)>>2]=j;c[j>>2]=s;c[g>>2]=j;return}else if((h|0)==23)return}function hc(b,d){b=b|0;d=d|0;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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;e=rB(40)|0;f=e+16|0;GB(f,d);GB(e+28|0,d+12|0);d=b+4|0;g=c[d>>2]|0;do if(g){h=a[e+27>>0]|0;i=h<<24>>24<0;j=i?c[e+20>>2]|0:h&255;h=i?c[f>>2]|0:f;i=g;while(1){k=i+16|0;l=a[k+11>>0]|0;m=l<<24>>24<0;n=m?c[i+20>>2]|0:l&255;l=n>>>0<j>>>0?n:j;if((l|0)!=0?(o=Eo(h,m?c[k>>2]|0:k,l)|0,(o|0)!=0):0)if((o|0)<0)p=7;else p=9;else if(j>>>0<n>>>0)p=7;else p=9;if((p|0)==7){p=0;n=c[i>>2]|0;if(!n){p=8;break}else q=n}else if((p|0)==9){p=0;r=i+4|0;n=c[r>>2]|0;if(!n){p=11;break}else q=n}i=q}if((p|0)==8){s=i;t=i;break}else if((p|0)==11){s=i;t=r;break}}else{s=d;t=d}while(0);c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=s;c[t>>2]=e;s=c[c[b>>2]>>2]|0;if(!s){u=e;v=b+4|0;w=c[v>>2]|0;gc(w,u);x=b+8|0;y=c[x>>2]|0;z=y+1|0;c[x>>2]=z;return e|0}c[b>>2]=s;u=c[t>>2]|0;v=b+4|0;w=c[v>>2]|0;gc(w,u);x=b+8|0;y=c[x>>2]|0;z=y+1|0;c[x>>2]=z;return e|0}function ic(b,d){b=b|0;d=d|0;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,q=0,r=0,s=0;e=b+11|0;if((a[e>>0]|0)<0){a[c[b>>2]>>0]=0;c[b+4>>2]=0}else{a[b>>0]=0;a[e>>0]=0}QB(b,0);c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;kc(b+12|0,d+12|0)|0;e=b+48|0;f=d+48|0;g=e+11|0;if((a[g>>0]|0)<0){a[c[e>>2]>>0]=0;c[b+52>>2]=0}else{a[e>>0]=0;a[g>>0]=0}QB(e,0);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;f=b+60|0;e=d+60|0;g=f+11|0;if((a[g>>0]|0)<0){a[c[f>>2]>>0]=0;c[b+64>>2]=0}else{a[f>>0]=0;a[g>>0]=0}QB(f,0);c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[b+72>>2]=c[d+72>>2];e=b+76|0;f=d+76|0;g=c[e>>2]|0;if(!g){h=b+80|0;i=b+84|0}else{j=b+80|0;k=c[j>>2]|0;if((k|0)==(g|0))l=g;else{m=k;do{k=m+-12|0;c[j>>2]=k;LB(k);m=c[j>>2]|0}while((m|0)!=(g|0));l=c[e>>2]|0}tB(l);l=b+84|0;c[l>>2]=0;c[j>>2]=0;c[e>>2]=0;h=j;i=l}c[e>>2]=c[f>>2];e=d+80|0;c[h>>2]=c[e>>2];h=d+84|0;c[i>>2]=c[h>>2];c[h>>2]=0;c[e>>2]=0;c[f>>2]=0;f=d+88|0;e=c[f+4>>2]|0;h=b+88|0;c[h>>2]=c[f>>2];c[h+4>>2]=e;e=b+96|0;h=d+96|0;dc(e);c[e>>2]=c[h>>2];e=d+100|0;c[b+100>>2]=c[e>>2];f=d+104|0;c[b+104>>2]=c[f>>2];c[f>>2]=0;c[e>>2]=0;c[h>>2]=0;h=b+108|0;e=d+108|0;f=c[h>>2]|0;if(!f){n=b+112|0;o=b+116|0}else{i=b+112|0;l=c[i>>2]|0;if((l|0)==(f|0))p=f;else{j=l;do{l=j+-12|0;c[i>>2]=l;LB(l);j=c[i>>2]|0}while((j|0)!=(f|0));p=c[h>>2]|0}tB(p);p=b+116|0;c[p>>2]=0;c[i>>2]=0;c[h>>2]=0;n=i;o=p}c[h>>2]=c[e>>2];h=d+112|0;c[n>>2]=c[h>>2];n=d+116|0;c[o>>2]=c[n>>2];c[n>>2]=0;c[h>>2]=0;c[e>>2]=0;c[b+120>>2]=c[d+120>>2];e=b+124|0;h=d+124|0;n=c[e>>2]|0;if(!n){q=b+128|0;r=b+132|0}else{o=b+128|0;p=c[o>>2]|0;if((p|0)==(n|0))s=n;else{i=p;do{p=i+-36|0;c[o>>2]=p;LB(i+-12|0);LB(i+-24|0);LB(p);i=c[o>>2]|0}while((i|0)!=(n|0));s=c[e>>2]|0}tB(s);s=b+132|0;c[s>>2]=0;c[o>>2]=0;c[e>>2]=0;q=o;r=s}c[e>>2]=c[h>>2];e=d+128|0;c[q>>2]=c[e>>2];q=d+132|0;c[r>>2]=c[q>>2];c[q>>2]=0;c[e>>2]=0;c[h>>2]=0;h=b+136|0;e=d+136|0;q=b+140|0;Ub(h,c[q>>2]|0);c[h>>2]=c[e>>2];r=d+140|0;s=c[r>>2]|0;c[q>>2]=s;o=d+144|0;d=c[o>>2]|0;c[b+144>>2]=d;if(!d){c[h>>2]=q;return b|0}else{c[s+8>>2]=q;c[e>>2]=r;c[r>>2]=0;c[o>>2]=0;return b|0}return 0}function jc(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0;i=l;l=l+48|0;j=i+24|0;k=i+12|0;m=i;n=b+12|0;c[b+16>>2]=0;c[b+20>>2]=0;c[n>>2]=b+16;o=b+24|0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[b>>2]=e;c[b+4>>2]=f;c[b+8>>2]=h;pb[c[(c[d>>2]|0)+36>>2]&127](j,d);h=c[j>>2]|0;f=j+4|0;if((h|0)!=(c[f>>2]|0)){e=h;do{GB(k,e);h=c[(c[d>>2]|0)+40>>2]|0;GB(m,k);p=+mb[h&3](d,m);g[(lc(n,k)|0)>>2]=p;LB(m);LB(k);e=e+80|0}while((e|0)!=(c[f>>2]|0))}pb[c[(c[d>>2]|0)+48>>2]&127](k,d);f=c[k>>2]|0;e=k+4|0;m=c[e>>2]|0;n=(f|0)==(m|0);if(f|0){if(n)q=f;else{h=m;do{m=h+-12|0;c[e>>2]=m;LB(m);h=c[e>>2]|0}while((h|0)!=(f|0));q=c[k>>2]|0}tB(q)}if(n){ac(j);l=i;return}pb[c[(c[d>>2]|0)+52>>2]&127](k,d);d=o+11|0;if((a[d>>0]|0)<0){a[c[o>>2]>>0]=0;c[b+28>>2]=0}else{a[o>>0]=0;a[d>>0]=0}QB(o,0);c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];c[o+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;LB(k);ac(j);l=i;return}function kc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=b+11|0;if((a[e>>0]|0)<0){a[c[b>>2]>>0]=0;c[b+4>>2]=0}else{a[b>>0]=0;a[e>>0]=0}QB(b,0);c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;e=b+12|0;f=d+12|0;g=e+11|0;if((a[g>>0]|0)<0){a[c[e>>2]>>0]=0;c[b+16>>2]=0}else{a[e>>0]=0;a[g>>0]=0}QB(e,0);c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;f=b+24|0;e=d+24|0;d=f+11|0;if((a[d>>0]|0)<0){a[c[f>>2]>>0]=0;c[b+28>>2]=0;QB(f,0);c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;return b|0}else{a[f>>0]=0;a[d>>0]=0;QB(f,0);c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;return b|0}return 0}function lc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0;d=l;l=l+16|0;e=d;f=mc(a,e,b)|0;h=c[f>>2]|0;if(h|0){i=h;j=i+28|0;l=d;return j|0}h=rB(32)|0;GB(h+16|0,b);g[h+28>>2]=0.0;b=c[e>>2]|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=b;c[f>>2]=h;b=c[c[a>>2]>>2]|0;if(!b)k=h;else{c[a>>2]=b;k=c[f>>2]|0}gc(c[a+4>>2]|0,k);k=a+8|0;c[k>>2]=(c[k>>2]|0)+1;i=h;j=i+28|0;l=d;return j|0}function mc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=b+4|0;b=c[f>>2]|0;if(!b){c[d>>2]=f;g=f;return g|0}f=a[e+11>>0]|0;h=f<<24>>24<0;i=h?c[e+4>>2]|0:f&255;f=h?c[e>>2]|0:e;e=b;while(1){b=e+16|0;h=a[b+11>>0]|0;j=h<<24>>24<0;k=j?c[e+20>>2]|0:h&255;h=k>>>0<i>>>0;l=h?k:i;if((l|0)!=0?(m=Eo(f,j?c[b>>2]|0:b,l)|0,(m|0)!=0):0)if((m|0)<0)n=7;else n=9;else if(i>>>0<k>>>0)n=7;else n=9;if((n|0)==7){n=0;m=c[e>>2]|0;if(!m){n=8;break}else o=m}else if((n|0)==9){n=0;m=i>>>0<k>>>0?i:k;if((m|0)!=0?(k=Eo(j?c[b>>2]|0:b,f,m)|0,(k|0)!=0):0){if((k|0)>=0){n=16;break}}else n=11;if((n|0)==11?(n=0,!h):0){n=16;break}p=e+4|0;h=c[p>>2]|0;if(!h){n=15;break}else o=h}e=o}if((n|0)==8){c[d>>2]=e;g=e;return g|0}else if((n|0)==15){c[d>>2]=e;g=p;return g|0}else if((n|0)==16){c[d>>2]=e;g=d;return g|0}return 0}function nc(a,b){a=a|0;b=b|0;if(!b)return;else{nc(a,c[b>>2]|0);nc(a,c[b+4>>2]|0);LB(b+16|0);tB(b);return}}function oc(a,b){a=a|0;b=b|0;GB(a,b+16|0);return}function pc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;e=l;l=l+64|0;f=e+44|0;g=e+32|0;h=e+28|0;i=e+24|0;j=e+12|0;k=e;m=sb[c[(c[d>>2]|0)+12>>2]&3](d,44100.0)|0;n=d+16|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;o=a[n+11>>0]|0;p=o<<24>>24<0;q=p?c[d+20>>2]|0:o&255;cC(f,p?c[n>>2]|0:n,q,q+1|0);VB(f,18442,1)|0;pb[c[(c[m>>2]|0)+12>>2]&127](g,m);q=a[g+11>>0]|0;n=q<<24>>24<0;p=VB(f,n?c[g>>2]|0:g,n?c[g+4>>2]|0:q&255)|0;c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;_b(k,d+28|0);Zb(b,j,k,m);p=c[k>>2]|0;if(p|0){q=k+4|0;n=c[q>>2]|0;if((n|0)==(p|0))r=p;else{o=n;do{n=o+-12|0;c[q>>2]=n;LB(n);o=c[q>>2]|0}while((o|0)!=(p|0));r=c[k>>2]|0}tB(r)}LB(j);LB(g);LB(f);j=d+40|0;r=b+136|0;if((r|0)!=(j|0)){c[h>>2]=c[j>>2];c[i>>2]=d+44;c[g>>2]=c[h>>2];c[f>>2]=c[i>>2];fc(r,g,f)}if(!m){l=e;return}ob[c[(c[m>>2]|0)+4>>2]&511](m);l=e;return}function qc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;f=l;l=l+208|0;h=f+52|0;i=f+40|0;j=f+28|0;k=f+24|0;m=f+12|0;n=f;o=sb[c[(c[d>>2]|0)+12>>2]&3](d,+g[e+12>>2])|0;p=e+16|0;if((c[d+4>>2]&c[p>>2]|0)!=0?(rb[c[(c[o>>2]|0)+72>>2]&127](o)|0)==1:0){e=rB(16)|0;Yj(e,o);q=e}else q=o;o=c[p>>2]|0;if(!(c[d+12>>2]&o)){r=q;s=o}else{o=rB(16)|0;vj(o,q);r=o;s=c[p>>2]|0}if(!(c[d+8>>2]&s))t=r;else{s=rB(16)|0;Ej(s,r);t=s}s=b+140|0;c[b+144>>2]=0;c[b+148>>2]=0;HD(b+4|0,0,136)|0;c[s>>2]=b+144;c[b+152>>2]=0;c[b+156>>2]=0;c[b+160>>2]=0;r=b+164|0;c[b+168>>2]=0;p=b+172|0;c[p>>2]=0;o=b+168|0;c[r>>2]=o;q=b+176|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[b>>2]=t;e=d+16|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;u=a[e+11>>0]|0;v=u<<24>>24<0;w=v?c[d+20>>2]|0:u&255;cC(i,v?c[e>>2]|0:e,w,w+1|0);VB(i,18442,1)|0;pb[c[(c[t>>2]|0)+12>>2]&127](j,t);w=a[j+11>>0]|0;e=w<<24>>24<0;v=VB(i,e?c[j>>2]|0:j,e?c[j+4>>2]|0:w&255)|0;c[m>>2]=c[v>>2];c[m+4>>2]=c[v+4>>2];c[m+8>>2]=c[v+8>>2];c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;_b(n,d+28|0);Zb(h,m,n,t);ic(b+4|0,h)|0;$b(h);v=c[n>>2]|0;if(v|0){w=n+4|0;e=c[w>>2]|0;if((e|0)==(v|0))x=v;else{u=e;do{e=u+-12|0;c[w>>2]=e;LB(e);u=c[w>>2]|0}while((u|0)!=(v|0));x=c[n>>2]|0}tB(x)}LB(m);LB(j);LB(i);m=d+40|0;if((s|0)!=(m|0)){c[j>>2]=c[m>>2];c[k>>2]=d+44;c[i>>2]=c[j>>2];c[h>>2]=c[k>>2];fc(s,i,h)}i=rb[c[(c[t>>2]|0)+84>>2]&127](t)|0;if((i|0)==(rb[c[(c[t>>2]|0)+88>>2]&127](t)|0))y=rb[c[(c[t>>2]|0)+84>>2]&127](t)|0;else y=0;i=rb[c[(c[t>>2]|0)+76>>2]&127](t)|0;s=rb[c[(c[t>>2]|0)+80>>2]&127](t)|0;k=(i|0)==0?1024:i;if(!s)if((rb[c[(c[t>>2]|0)+72>>2]&127](t)|0)==1)z=(k|0)/2|0;else z=k;else z=s;jc(h,t,y,z,k);k=b+152|0;c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];k=h+12|0;nc(r,c[o>>2]|0);c[r>>2]=c[k>>2];z=h+16|0;y=c[z>>2]|0;c[o>>2]=y;t=h+20|0;s=c[t>>2]|0;c[p>>2]=s;if(!s)c[r>>2]=o;else{c[y+8>>2]=o;c[k>>2]=z;c[z>>2]=0;c[t>>2]=0}t=h+24|0;k=q+11|0;if((a[k>>0]|0)<0){a[c[q>>2]>>0]=0;c[b+180>>2]=0;QB(q,0);c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;LB(t);A=h+12|0;B=c[z>>2]|0;nc(A,B);l=f;return}else{a[q>>0]=0;a[k>>0]=0;QB(q,0);c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;LB(t);A=h+12|0;B=c[z>>2]|0;nc(A,B);l=f;return}}function rc(a,b){a=a|0;b=b|0;GB(a,b+16|0);return}function sc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;e=l;l=l+64|0;f=e+44|0;g=e+32|0;h=e+28|0;i=e+24|0;j=e+12|0;k=e;m=sb[c[(c[d>>2]|0)+12>>2]&3](d,44100.0)|0;n=d+16|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;o=a[n+11>>0]|0;p=o<<24>>24<0;q=p?c[d+20>>2]|0:o&255;cC(f,p?c[n>>2]|0:n,q,q+1|0);VB(f,18442,1)|0;pb[c[(c[m>>2]|0)+12>>2]&127](g,m);q=a[g+11>>0]|0;n=q<<24>>24<0;p=VB(f,n?c[g>>2]|0:g,n?c[g+4>>2]|0:q&255)|0;c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;_b(k,d+28|0);Zb(b,j,k,m);p=c[k>>2]|0;if(p|0){q=k+4|0;n=c[q>>2]|0;if((n|0)==(p|0))r=p;else{o=n;do{n=o+-12|0;c[q>>2]=n;LB(n);o=c[q>>2]|0}while((o|0)!=(p|0));r=c[k>>2]|0}tB(r)}LB(j);LB(g);LB(f);j=d+40|0;r=b+136|0;if((r|0)!=(j|0)){c[h>>2]=c[j>>2];c[i>>2]=d+44;c[g>>2]=c[h>>2];c[f>>2]=c[i>>2];fc(r,g,f)}if(!m){l=e;return}ob[c[(c[m>>2]|0)+4>>2]&511](m);l=e;return}function tc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;f=l;l=l+208|0;h=f+52|0;i=f+40|0;j=f+28|0;k=f+24|0;m=f+12|0;n=f;o=sb[c[(c[d>>2]|0)+12>>2]&3](d,+g[e+12>>2])|0;p=e+16|0;if((c[d+4>>2]&c[p>>2]|0)!=0?(rb[c[(c[o>>2]|0)+72>>2]&127](o)|0)==1:0){e=rB(16)|0;Yj(e,o);q=e}else q=o;o=c[p>>2]|0;if(!(c[d+12>>2]&o)){r=q;s=o}else{o=rB(16)|0;vj(o,q);r=o;s=c[p>>2]|0}if(!(c[d+8>>2]&s))t=r;else{s=rB(16)|0;Ej(s,r);t=s}s=b+140|0;c[b+144>>2]=0;c[b+148>>2]=0;HD(b+4|0,0,136)|0;c[s>>2]=b+144;c[b+152>>2]=0;c[b+156>>2]=0;c[b+160>>2]=0;r=b+164|0;c[b+168>>2]=0;p=b+172|0;c[p>>2]=0;o=b+168|0;c[r>>2]=o;q=b+176|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[b>>2]=t;e=d+16|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;u=a[e+11>>0]|0;v=u<<24>>24<0;w=v?c[d+20>>2]|0:u&255;cC(i,v?c[e>>2]|0:e,w,w+1|0);VB(i,18442,1)|0;pb[c[(c[t>>2]|0)+12>>2]&127](j,t);w=a[j+11>>0]|0;e=w<<24>>24<0;v=VB(i,e?c[j>>2]|0:j,e?c[j+4>>2]|0:w&255)|0;c[m>>2]=c[v>>2];c[m+4>>2]=c[v+4>>2];c[m+8>>2]=c[v+8>>2];c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;_b(n,d+28|0);Zb(h,m,n,t);ic(b+4|0,h)|0;$b(h);v=c[n>>2]|0;if(v|0){w=n+4|0;e=c[w>>2]|0;if((e|0)==(v|0))x=v;else{u=e;do{e=u+-12|0;c[w>>2]=e;LB(e);u=c[w>>2]|0}while((u|0)!=(v|0));x=c[n>>2]|0}tB(x)}LB(m);LB(j);LB(i);m=d+40|0;if((s|0)!=(m|0)){c[j>>2]=c[m>>2];c[k>>2]=d+44;c[i>>2]=c[j>>2];c[h>>2]=c[k>>2];fc(s,i,h)}i=rb[c[(c[t>>2]|0)+84>>2]&127](t)|0;if((i|0)==(rb[c[(c[t>>2]|0)+88>>2]&127](t)|0))y=rb[c[(c[t>>2]|0)+84>>2]&127](t)|0;else y=0;i=rb[c[(c[t>>2]|0)+76>>2]&127](t)|0;s=rb[c[(c[t>>2]|0)+80>>2]&127](t)|0;k=(i|0)==0?1024:i;if(!s)if((rb[c[(c[t>>2]|0)+72>>2]&127](t)|0)==1)z=(k|0)/2|0;else z=k;else z=s;jc(h,t,y,z,k);k=b+152|0;c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];k=h+12|0;nc(r,c[o>>2]|0);c[r>>2]=c[k>>2];z=h+16|0;y=c[z>>2]|0;c[o>>2]=y;t=h+20|0;s=c[t>>2]|0;c[p>>2]=s;if(!s)c[r>>2]=o;else{c[y+8>>2]=o;c[k>>2]=z;c[z>>2]=0;c[t>>2]=0}t=h+24|0;k=q+11|0;if((a[k>>0]|0)<0){a[c[q>>2]>>0]=0;c[b+180>>2]=0;QB(q,0);c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;LB(t);A=h+12|0;B=c[z>>2]|0;nc(A,B);l=f;return}else{a[q>>0]=0;a[k>>0]=0;QB(q,0);c[q>>2]=c[t>>2];c[q+4>>2]=c[t+4>>2];c[q+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;LB(t);A=h+12|0;B=c[z>>2]|0;nc(A,B);l=f;return}}function uc(a){a=a|0;c[a>>2]=3312;c[a+12>>2]=3344;Gc(a+80|0,c[a+84>>2]|0);Hc(a+68|0,c[a+72>>2]|0);Hc(a+56|0,c[a+60>>2]|0);Ic(a+44|0,c[a+48>>2]|0);Jc(a+32|0,c[a+36>>2]|0);Kc(a+20|0,c[a+24>>2]|0);return}function vc(a){a=a|0;c[a>>2]=3344;Gc(a+68|0,c[a+72>>2]|0);Hc(a+56|0,c[a+60>>2]|0);Hc(a+44|0,c[a+48>>2]|0);Ic(a+32|0,c[a+36>>2]|0);Jc(a+20|0,c[a+24>>2]|0);Kc(a+8|0,c[a+12>>2]|0);return}function wc(a){a=a|0;c[a>>2]=3312;c[a+12>>2]=3344;Gc(a+80|0,c[a+84>>2]|0);Hc(a+68|0,c[a+72>>2]|0);Hc(a+56|0,c[a+60>>2]|0);Ic(a+44|0,c[a+48>>2]|0);Jc(a+32|0,c[a+36>>2]|0);Kc(a+20|0,c[a+24>>2]|0);tB(a);return}function xc(a,b){a=a|0;b=b|0;return Cc(a+12|0,b)|0}function yc(a,b){a=a|0;b=b|0;return Dc(a+12|0,b)|0}function zc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=b+12|0;b=c[e>>2]|0;f=c[b+20>>2]|0;g=zb[c[b+8>>2]&63](e,d)|0;ub[f&15](a,e,g);return}function Ac(a,b,c){a=a|0;b=b|0;c=c|0;Fc(a,b+12|0,c);return}function Bc(a){a=a|0;c[a>>2]=3344;Gc(a+68|0,c[a+72>>2]|0);Hc(a+56|0,c[a+60>>2]|0);Hc(a+44|0,c[a+48>>2]|0);Ic(a+32|0,c[a+36>>2]|0);Jc(a+20|0,c[a+24>>2]|0);Kc(a+8|0,c[a+12>>2]|0);tB(a);return}function Cc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;d=a+24|0;e=c[d>>2]|0;if(e|0){f=d;g=e;a:while(1){h=g;while(1){if((c[h+16>>2]|0)>>>0>=b>>>0)break;i=c[h+4>>2]|0;if(!i){j=f;break a}else h=i}g=c[h>>2]|0;if(!g){j=h;break}else f=h}if((j|0)!=(d|0)?(c[j+16>>2]|0)>>>0<=b>>>0:0){j=e;while(1){e=c[j+16>>2]|0;if(e>>>0>b>>>0){d=c[j>>2]|0;if(!d)break;else k=d}else{if(e>>>0>=b>>>0){l=14;break}e=c[j+4>>2]|0;if(!e)break;else k=e}j=k}if((l|0)==14?j|0:0){m=j+20|0;n=c[m>>2]|0;return n|0}j=za(8)|0;yB(j,18831);c[j>>2]=17228;Xa(j|0,3128,252)}}m=a+4|0;n=c[m>>2]|0;return n|0}function Dc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+12|0;a=c[d>>2]|0;if(!a){e=0;return e|0}else{f=d;g=a}a:while(1){h=g;while(1){if((c[h+16>>2]|0)>>>0>=b>>>0)break;i=c[h+4>>2]|0;if(!i){j=f;break a}else h=i}g=c[h>>2]|0;if(!g){j=h;break}else f=h}if((j|0)==(d|0)){e=0;return e|0}if((c[j+16>>2]|0)>>>0>b>>>0){e=0;return e|0}else k=a;while(1){a=c[k+16>>2]|0;if(a>>>0>b>>>0){j=c[k>>2]|0;if(!j)break;else l=j}else{if(a>>>0>=b>>>0){m=13;break}a=c[k+4>>2]|0;if(!a)break;else l=a}k=l}if((m|0)==13?k|0:0){e=c[k+20>>2]|0;return e|0}e=za(8)|0;yB(e,18831);c[e>>2]=17228;Xa(e|0,3128,252);return 0}function Ec(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=c[b>>2]|0;f=c[e+20>>2]|0;g=zb[c[e+8>>2]&63](b,d)|0;ub[f&15](a,b,g);return}function Fc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if((c[b+4>>2]|0)!=(d|0)?(e=b+72|0,b=c[e>>2]|0,b|0):0){f=e;g=b;a:while(1){h=g;while(1){if((c[h+16>>2]|0)>>>0>=d>>>0)break;i=c[h+4>>2]|0;if(!i){j=f;break a}else h=i}g=c[h>>2]|0;if(!g){j=h;break}else f=h}if((j|0)!=(e|0)?(c[j+16>>2]|0)>>>0<=d>>>0:0){j=b;while(1){b=c[j+16>>2]|0;if(b>>>0>d>>>0){e=c[j>>2]|0;if(!e)break;else k=e}else{if(b>>>0>=d>>>0){l=14;break}b=c[j+4>>2]|0;if(!b)break;else k=b}j=k}if((l|0)==14?j|0:0){c[a>>2]=c[j+20>>2];l=c[j+24>>2]|0;c[a+4>>2]=l;if(!l)return;nB(l);return}l=za(8)|0;yB(l,18831);c[l>>2]=17228;Xa(l|0,3128,252)}}c[a>>2]=0;c[a+4>>2]=0;return}function Gc(a,b){a=a|0;b=b|0;if(!b)return;Gc(a,c[b>>2]|0);Gc(a,c[b+4>>2]|0);a=c[b+24>>2]|0;if(a|0)oB(a);tB(b);return}function Hc(a,b){a=a|0;b=b|0;if(!b)return;else{Hc(a,c[b>>2]|0);Hc(a,c[b+4>>2]|0);tB(b);return}}function Ic(a,b){a=a|0;b=b|0;if(!b)return;else{Ic(a,c[b>>2]|0);Ic(a,c[b+4>>2]|0);tB(b);return}}function Jc(a,b){a=a|0;b=b|0;if(!b)return;else{Jc(a,c[b>>2]|0);Jc(a,c[b+4>>2]|0);tB(b);return}}function Kc(a,b){a=a|0;b=b|0;if(!b)return;else{Kc(a,c[b>>2]|0);Kc(a,c[b+4>>2]|0);tB(b);return}}function Lc(a,b){a=a|0;b=b|0;if(!b)return;else{Lc(a,c[b>>2]|0);Lc(a,c[b+4>>2]|0);$b(b+20|0);tB(b);return}}function Mc(a,b){a=a|0;b=b|0;if(!b)return;else{Mc(a,c[b>>2]|0);Mc(a,c[b+4>>2]|0);LB(b+16|0);tB(b);return}}function Nc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;g=f+8|0;h=f+4|0;i=f;c[i>>2]=c[b>>2];c[g>>2]=c[i>>2];i=Oc(a,g,h,d)|0;d=c[i>>2]|0;if(d|0){j=d;l=f;return j|0}d=rB(40)|0;GB(d+16|0,e);GB(d+28|0,e+12|0);e=c[h>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=e;c[i>>2]=d;e=c[c[a>>2]>>2]|0;if(!e)k=d;else{c[a>>2]=e;k=c[i>>2]|0}gc(c[a+4>>2]|0,k);k=a+8|0;c[k>>2]=(c[k>>2]|0)+1;j=d;l=f;return j|0}function Oc(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;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,t=0,u=0,v=0;g=b+4|0;h=c[d>>2]|0;d=h;do if((h|0)!=(g|0)){i=h+16|0;j=a[f+11>>0]|0;k=j<<24>>24<0;l=k?c[f+4>>2]|0:j&255;j=a[i+11>>0]|0;m=j<<24>>24<0;n=m?c[h+20>>2]|0:j&255;j=n>>>0<l>>>0;o=j?n:l;if((o|0)!=0?(p=Eo(k?c[f>>2]|0:f,m?c[i>>2]|0:i,o)|0,(p|0)!=0):0){if((p|0)<0)break}else q=4;if((q|0)==4?l>>>0<n>>>0:0)break;p=l>>>0<n>>>0?l:n;if((p|0)!=0?(n=Eo(m?c[i>>2]|0:i,k?c[f>>2]|0:f,p)|0,(n|0)!=0):0){if((n|0)>=0)q=34}else q=20;if((q|0)==20?!j:0)q=34;if((q|0)==34){c[e>>2]=d;r=e;return r|0}j=h+4|0;n=c[j>>2]|0;p=(n|0)==0;if(p){i=h;while(1){m=c[i+8>>2]|0;if((c[m>>2]|0)==(i|0)){s=m;break}else i=m}}else{i=n;while(1){m=c[i>>2]|0;if(!m){s=i;break}else i=m}}do if((s|0)!=(g|0)){i=s+16|0;n=a[i+11>>0]|0;m=n<<24>>24<0;o=m?c[s+20>>2]|0:n&255;n=o>>>0<l>>>0?o:l;if((n|0)!=0?(t=Eo(k?c[f>>2]|0:f,m?c[i>>2]|0:i,n)|0,(t|0)!=0):0){if((t|0)<0)break}else q=28;if((q|0)==28?l>>>0<o>>>0:0)break;r=Pc(b,e,f)|0;return r|0}while(0);if(p){c[e>>2]=h;r=j;return r|0}else{c[e>>2]=s;r=s;return r|0}}while(0);do if((h|0)==(c[b>>2]|0))u=d;else{s=c[h>>2]|0;if(!s){g=h;while(1){l=c[g+8>>2]|0;if((c[l>>2]|0)==(g|0))g=l;else{v=l;break}}}else{g=s;while(1){j=c[g+4>>2]|0;if(!j){v=g;break}else g=j}}g=v;s=v+16|0;j=a[s+11>>0]|0;p=j<<24>>24<0;l=p?c[v+20>>2]|0:j&255;j=a[f+11>>0]|0;k=j<<24>>24<0;o=k?c[f+4>>2]|0:j&255;j=o>>>0<l>>>0?o:l;if((j|0)!=0?(t=Eo(p?c[s>>2]|0:s,k?c[f>>2]|0:f,j)|0,(t|0)!=0):0){if((t|0)<0){u=g;break}}else q=12;if((q|0)==12?l>>>0<o>>>0:0){u=g;break}r=Pc(b,e,f)|0;return r|0}while(0);if(!(c[h>>2]|0)){c[e>>2]=h;r=h;return r|0}else{h=u;c[e>>2]=h;r=h+4|0;return r|0}return 0}function Pc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=b+4|0;b=c[f>>2]|0;if(!b){c[d>>2]=f;g=f;return g|0}f=a[e+11>>0]|0;h=f<<24>>24<0;i=h?c[e+4>>2]|0:f&255;f=h?c[e>>2]|0:e;e=b;while(1){b=e+16|0;h=a[b+11>>0]|0;j=h<<24>>24<0;k=j?c[e+20>>2]|0:h&255;h=k>>>0<i>>>0;l=h?k:i;if((l|0)!=0?(m=Eo(f,j?c[b>>2]|0:b,l)|0,(m|0)!=0):0)if((m|0)<0)n=7;else n=9;else if(i>>>0<k>>>0)n=7;else n=9;if((n|0)==7){n=0;m=c[e>>2]|0;if(!m){n=8;break}else o=m}else if((n|0)==9){n=0;m=i>>>0<k>>>0?i:k;if((m|0)!=0?(k=Eo(j?c[b>>2]|0:b,f,m)|0,(k|0)!=0):0){if((k|0)>=0){n=16;break}}else n=11;if((n|0)==11?(n=0,!h):0){n=16;break}p=e+4|0;h=c[p>>2]|0;if(!h){n=15;break}else o=h}e=o}if((n|0)==8){c[d>>2]=e;g=e;return g|0}else if((n|0)==15){c[d>>2]=e;g=p;return g|0}else if((n|0)==16){c[d>>2]=e;g=d;return g|0}return 0}function Qc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;f=l;l=l+16|0;g=f+4|0;h=f;c[a>>2]=3240;c[a+4>>2]=1;c[a+8>>2]=2;c[a+12>>2]=4;GB(a+16|0,b);_b(a+28|0,d);d=a+40|0;c[a+44>>2]=0;c[a+48>>2]=0;b=a+44|0;c[d>>2]=b;a=c[e>>2]|0;i=e+4|0;if((a|0)==(i|0)){l=f;return}e=b;b=a;j=a;while(1){a=b+16|0;c[h>>2]=e;c[g>>2]=c[h>>2];Nc(d,g,a,a)|0;a=c[j+4>>2]|0;if(!a){k=j;while(1){m=c[k+8>>2]|0;if((c[m>>2]|0)==(k|0)){n=m;break}else k=m}}else{k=a;while(1){m=c[k>>2]|0;if(!m){n=k;break}else k=m}}if((n|0)==(i|0))break;else{b=n;j=n}}l=f;return}function Rc(a,b){a=a|0;b=+b;a=rB(208)|0;hi(a,b);return a|0}function Sc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;f=l;l=l+16|0;g=f+4|0;h=f;c[a>>2]=3264;c[a+4>>2]=1;c[a+8>>2]=2;c[a+12>>2]=4;GB(a+16|0,b);_b(a+28|0,d);d=a+40|0;c[a+44>>2]=0;c[a+48>>2]=0;b=a+44|0;c[d>>2]=b;a=c[e>>2]|0;i=e+4|0;if((a|0)==(i|0)){l=f;return}e=b;b=a;j=a;while(1){a=b+16|0;c[h>>2]=e;c[g>>2]=c[h>>2];Nc(d,g,a,a)|0;a=c[j+4>>2]|0;if(!a){k=j;while(1){m=c[k+8>>2]|0;if((c[m>>2]|0)==(k|0)){n=m;break}else k=m}}else{k=a;while(1){m=c[k>>2]|0;if(!m){n=k;break}else k=m}}if((n|0)==(i|0))break;else{b=n;j=n}}l=f;return}function Tc(a,b){a=a|0;b=+b;a=rB(236)|0;Ai(a,b);return a|0}function Uc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;f=l;l=l+16|0;g=f+4|0;h=f;c[a>>2]=3288;c[a+4>>2]=1;c[a+8>>2]=2;c[a+12>>2]=4;GB(a+16|0,b);_b(a+28|0,d);d=a+40|0;c[a+44>>2]=0;c[a+48>>2]=0;b=a+44|0;c[d>>2]=b;a=c[e>>2]|0;i=e+4|0;if((a|0)==(i|0)){l=f;return}e=b;b=a;j=a;while(1){a=b+16|0;c[h>>2]=e;c[g>>2]=c[h>>2];Nc(d,g,a,a)|0;a=c[j+4>>2]|0;if(!a){k=j;while(1){m=c[k+8>>2]|0;if((c[m>>2]|0)==(k|0)){n=m;break}else k=m}}else{k=a;while(1){m=c[k>>2]|0;if(!m){n=k;break}else k=m}}if((n|0)==(i|0))break;else{b=n;j=n}}l=f;return}function Vc(a,b){a=a|0;b=+b;a=rB(192)|0;Ni(a,b);return a|0}function Wc(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;a=l;l=l+368|0;b=a+344|0;d=a+340|0;e=a+328|0;f=a+316|0;g=a+304|0;h=a+160|0;i=a+144|0;j=a+132|0;k=a+120|0;m=a+108|0;n=a+96|0;p=a+84|0;q=a+72|0;r=a+60|0;s=a+48|0;t=a+36|0;u=a+24|0;v=a+12|0;w=a;c[9718]=0;c[9719]=0;c[9720]=0;HB(38872,25490,11);Wa(260,38872,o|0)|0;GB(e,38872);c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;HB(s,18096,13);c[f>>2]=0;x=f+4|0;c[x>>2]=0;c[f+8>>2]=0;y=rB(12)|0;c[x>>2]=y;c[f>>2]=y;c[f+8>>2]=y+12;GB(y,s);c[x>>2]=(c[x>>2]|0)+12;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,24161,11);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,18110,39);GB(h,i);y=h+12|0;GB(y,j);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,24277,16);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,18110,39);z=h+24|0;GB(z,k);A=h+36|0;GB(A,m);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;HB(n,24457,16);c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;HB(p,18110,39);B=h+48|0;GB(B,n);C=h+60|0;GB(C,p);c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;HB(q,24607,6);c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;HB(r,18150,38);D=h+72|0;GB(D,q);E=h+84|0;GB(E,r);c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;HB(t,24732,10);c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;HB(u,18150,38);F=h+96|0;GB(F,t);G=h+108|0;GB(G,u);c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;HB(v,24869,10);c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;HB(w,18150,38);H=h+120|0;GB(H,v);I=h+132|0;GB(I,w);c[g+4>>2]=0;c[g+8>>2]=0;J=g+4|0;c[g>>2]=J;K=J;c[d>>2]=K;c[b>>2]=c[d>>2];Nc(g,b,h,h)|0;L=h+24|0;c[d>>2]=K;c[b>>2]=c[d>>2];Nc(g,b,L,L)|0;L=h+48|0;c[d>>2]=K;c[b>>2]=c[d>>2];Nc(g,b,L,L)|0;L=h+72|0;c[d>>2]=K;c[b>>2]=c[d>>2];Nc(g,b,L,L)|0;L=h+96|0;c[d>>2]=K;c[b>>2]=c[d>>2];Nc(g,b,L,L)|0;L=h+120|0;c[d>>2]=K;c[b>>2]=c[d>>2];Nc(g,b,L,L)|0;Jb(38884,e,f,g);Ub(g,c[J>>2]|0);LB(I);LB(H);LB(G);LB(F);LB(E);LB(D);LB(C);LB(B);LB(A);LB(z);LB(y);LB(h);LB(w);LB(v);LB(u);LB(t);LB(r);LB(q);LB(p);LB(n);LB(m);LB(k);LB(j);LB(i);t=c[f>>2]|0;if(t|0){u=c[x>>2]|0;if((u|0)==(t|0))M=t;else{v=u;do{u=v+-12|0;c[x>>2]=u;LB(u);v=c[x>>2]|0}while((v|0)!=(t|0));M=c[f>>2]|0}tB(M)}LB(s);LB(e);Wa(261,38884,o|0)|0;GB(e,38872);c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;HB(s,18189,5);c[f>>2]=0;M=f+4|0;c[M>>2]=0;c[f+8>>2]=0;t=rB(12)|0;c[M>>2]=t;c[f>>2]=t;c[f+8>>2]=t+12;GB(t,s);c[M>>2]=(c[M>>2]|0)+12;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,25683,11);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,18195,40);GB(h,i);t=h+12|0;GB(t,j);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,25744,10);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,44918,0);v=h+24|0;GB(v,k);x=h+36|0;GB(x,m);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;HB(n,25899,14);c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;HB(p,18236,56);u=h+48|0;GB(u,n);w=h+60|0;GB(w,p);c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;HB(q,26149,13);c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;HB(r,44918,0);y=h+72|0;GB(y,q);z=h+84|0;GB(z,r);c[g+4>>2]=0;c[g+8>>2]=0;A=g+4|0;c[g>>2]=A;B=A;c[d>>2]=B;c[b>>2]=c[d>>2];Nc(g,b,h,h)|0;C=h+24|0;c[d>>2]=B;c[b>>2]=c[d>>2];Nc(g,b,C,C)|0;C=h+48|0;c[d>>2]=B;c[b>>2]=c[d>>2];Nc(g,b,C,C)|0;C=h+72|0;c[d>>2]=B;c[b>>2]=c[d>>2];Nc(g,b,C,C)|0;Lb(38936,e,f,g);Ub(g,c[A>>2]|0);LB(z);LB(y);LB(w);LB(u);LB(x);LB(v);LB(t);LB(h);LB(r);LB(q);LB(p);LB(n);LB(m);LB(k);LB(j);LB(i);n=c[f>>2]|0;if(n|0){p=c[M>>2]|0;if((p|0)==(n|0))N=n;else{q=p;do{p=q+-12|0;c[M>>2]=p;LB(p);q=c[M>>2]|0}while((q|0)!=(n|0));N=c[f>>2]|0}tB(N)}LB(s);LB(e);Wa(262,38936,o|0)|0;GB(e,38872);c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;HB(s,18293,16);c[f>>2]=0;N=f+4|0;c[N>>2]=0;c[f+8>>2]=0;n=rB(12)|0;c[N>>2]=n;c[f>>2]=n;q=n+12|0;c[f+8>>2]=q;GB(n,s);c[N>>2]=q;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,27322,6);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,18310,40);GB(h,i);q=h+12|0;GB(q,j);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,27433,11);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,44918,0);n=h+24|0;GB(n,k);M=h+36|0;GB(M,m);c[g+4>>2]=0;c[g+8>>2]=0;p=g+4|0;c[g>>2]=p;r=p;c[d>>2]=r;c[b>>2]=c[d>>2];Nc(g,b,h,h)|0;t=h+24|0;c[d>>2]=r;c[b>>2]=c[d>>2];Nc(g,b,t,t)|0;Nb(38988,e,f,g);Ub(g,c[p>>2]|0);LB(M);LB(n);LB(q);LB(h);LB(m);LB(k);LB(j);LB(i);i=c[f>>2]|0;if(i|0){j=c[N>>2]|0;if((j|0)==(i|0))O=i;else{k=j;do{j=k+-12|0;c[N>>2]=j;LB(j);k=c[N>>2]|0}while((k|0)!=(i|0));O=c[f>>2]|0}tB(O)}LB(s);LB(e);Wa(263,38988,o|0)|0;e=b+4|0;s=rB(12)|0;c[b>>2]=s;O=s+12|0;c[b+8>>2]=O;c[s>>2]=38884;c[s+4>>2]=38936;c[s+8>>2]=38988;c[e>>2]=O;Yc(39040,b);O=c[b>>2]|0;if(!O){Wa(264,39040,o|0)|0;l=a;return}b=c[e>>2]|0;if((b|0)!=(O|0))c[e>>2]=b+(~((b+-4-O|0)>>>2)<<2);tB(O);Wa(264,39040,o|0)|0;l=a;return}function Xc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;f=l;l=l+32|0;g=f+16|0;h=f;Pm(g,d,e,0);d=e+11|0;i=a[d>>0]|0;j=e+4|0;k=c[j>>2]|0;do if(!((i<<24>>24<0?k:i&255)|0)){if(bC(e,0,-1,44918,0)|0){m=a[d>>0]|0;n=c[j>>2]|0;break}if((Im(g)|0)!=5)RB(e,18802)|0;c[b>>2]=c[g>>2];o=g+4|0;c[b+4>>2]=c[o>>2];c[g>>2]=0;c[o>>2]=0;l=f;return}else{m=i;n=k}while(0);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;k=m<<24>>24<0?n:m&255;cC(h,18787,14,k+14|0);VB(h,(a[d>>0]|0)<0?c[e>>2]|0:e,k)|0;if((a[d>>0]|0)<0){a[c[e>>2]>>0]=0;c[j>>2]=0}else{a[e>>0]=0;a[d>>0]=0}QB(e,0);c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[e+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;LB(h);Qk(b);b=c[g+4>>2]|0;if(!b){l=f;return}oB(b);l=f;return}function Yc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=l;l=l+160|0;f=e+148|0;g=e;c[b+4>>2]=0;c[b+8>>2]=0;c[b>>2]=b+4;c[b+16>>2]=0;c[b+20>>2]=0;c[b+12>>2]=b+16;c[b+28>>2]=0;c[b+24>>2]=3312;c[b+32>>2]=1;c[b+40>>2]=0;c[b+36>>2]=3344;c[b+48>>2]=0;c[b+52>>2]=0;c[b+44>>2]=b+48;c[b+60>>2]=0;c[b+64>>2]=0;c[b+56>>2]=b+60;c[b+72>>2]=0;c[b+76>>2]=0;c[b+68>>2]=b+72;c[b+84>>2]=0;c[b+88>>2]=0;c[b+80>>2]=b+84;c[b+96>>2]=0;c[b+100>>2]=0;c[b+92>>2]=b+96;c[b+108>>2]=0;c[b+112>>2]=0;c[b+104>>2]=b+108;a[b+116>>0]=0;h=c[d>>2]|0;i=c[d+4>>2]|0;if((h|0)==(i|0)){l=e;return}d=h;do{h=c[d>>2]|0;pb[c[(c[h>>2]|0)+4>>2]&127](g,h);c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;$b(g);c[(Zc(b,f)|0)>>2]=h;LB(f);d=d+4|0}while((d|0)!=(i|0));l=e;return}function Zc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=l;l=l+16|0;e=d;f=_c(a,e,b)|0;g=c[f>>2]|0;if(g|0){h=g;i=h+28|0;l=d;return i|0}g=rB(32)|0;GB(g+16|0,b);c[g+28>>2]=0;b=c[e>>2]|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=b;c[f>>2]=g;b=c[c[a>>2]>>2]|0;if(!b)j=g;else{c[a>>2]=b;j=c[f>>2]|0}gc(c[a+4>>2]|0,j);j=a+8|0;c[j>>2]=(c[j>>2]|0)+1;h=g;i=h+28|0;l=d;return i|0}function _c(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=b+4|0;b=c[f>>2]|0;if(!b){c[d>>2]=f;g=f;return g|0}f=a[e+11>>0]|0;h=f<<24>>24<0;i=h?c[e+4>>2]|0:f&255;f=h?c[e>>2]|0:e;e=b;while(1){b=e+16|0;h=a[b+11>>0]|0;j=h<<24>>24<0;k=j?c[e+20>>2]|0:h&255;h=k>>>0<i>>>0;l=h?k:i;if((l|0)!=0?(m=Eo(f,j?c[b>>2]|0:b,l)|0,(m|0)!=0):0)if((m|0)<0)n=7;else n=9;else if(i>>>0<k>>>0)n=7;else n=9;if((n|0)==7){n=0;m=c[e>>2]|0;if(!m){n=8;break}else o=m}else if((n|0)==9){n=0;m=i>>>0<k>>>0?i:k;if((m|0)!=0?(k=Eo(j?c[b>>2]|0:b,f,m)|0,(k|0)!=0):0){if((k|0)>=0){n=16;break}}else n=11;if((n|0)==11?(n=0,!h):0){n=16;break}p=e+4|0;h=c[p>>2]|0;if(!h){n=15;break}else o=h}e=o}if((n|0)==8){c[d>>2]=e;g=e;return g|0}else if((n|0)==15){c[d>>2]=e;g=p;return g|0}else if((n|0)==16){c[d>>2]=e;g=d;return g|0}return 0}function $c(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0;f=l;l=l+176|0;g=f+152|0;h=f;i=e+4|0;j=(c[e>>2]|0)==(c[i>>2]|0);c[b>>2]=0;k=b+4|0;c[k>>2]=0;c[b+8>>2]=0;m=c[d>>2]|0;n=d+4|0;if((m|0)==(n|0)){l=f;return}d=g+12|0;o=b+8|0;p=h+12|0;q=h+24|0;r=h+36|0;s=h+48|0;t=h+60|0;u=h+72|0;v=h+76|0;w=h+80|0;x=h+84|0;y=h+88|0;z=h+96|0;A=h+100|0;B=h+104|0;C=h+108|0;D=h+112|0;E=h+116|0;F=h+120|0;G=h+124|0;H=h+128|0;I=h+132|0;J=h+136|0;K=h+140|0;L=h+144|0;M=h+140|0;N=h+11|0;O=h+4|0;P=m;Q=m;while(1){GB(g,P+16|0);m=c[P+28>>2]|0;c[d>>2]=m;R=m;a:do if(j){S=R;T=19}else{pb[c[c[m>>2]>>2]&127](h,R);U=c[e>>2]|0;V=c[i>>2]|0;do if((U|0)!=(V|0)){W=a[N>>0]|0;X=W<<24>>24<0;Y=X?c[O>>2]|0:W&255;W=X?c[h>>2]|0:h;X=(Y|0)==0;Z=0;_=U;b:while(1){$=a[_+11>>0]|0;aa=$<<24>>24<0;ba=$&255;do if(((aa?c[_+4>>2]|0:ba)|0)==(Y|0)){$=c[_>>2]|0;ca=aa?$:_;if(aa){if(X)break b;da=(Eo(ca,W,Y)|0)==0;ca=Z|da;if(da){ea=ca;T=16;break b}else{fa=ca;break}}if(X)break b;if(($&255)<<24>>24==(a[W>>0]|0)){$=ba;ca=W;da=_;while(1){$=$+-1|0;da=da+1|0;if(!$)break b;ca=ca+1|0;if((a[da>>0]|0)!=(a[ca>>0]|0)){fa=Z;break}}}else fa=Z}else fa=Z;while(0);_=_+12|0;if((_|0)==(V|0)){ea=fa;T=16;break}else Z=fa}if((T|0)==16?(T=0,!ea):0)break;LB(h);S=c[d>>2]|0;T=19;break a}while(0);LB(h)}while(0);if((T|0)==19){T=0;pb[c[(c[S>>2]|0)+4>>2]&127](h,S);R=c[k>>2]|0;if(R>>>0<(c[o>>2]|0)>>>0){c[R>>2]=c[h>>2];c[R+4>>2]=c[h+4>>2];c[R+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;m=R+12|0;c[m>>2]=c[p>>2];c[m+4>>2]=c[p+4>>2];c[m+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;m=R+24|0;c[m>>2]=c[q>>2];c[m+4>>2]=c[q+4>>2];c[m+8>>2]=c[q+8>>2];c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;m=R+36|0;c[m>>2]=c[r>>2];c[m+4>>2]=c[r+4>>2];c[m+8>>2]=c[r+8>>2];c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;m=R+48|0;c[m>>2]=c[s>>2];c[m+4>>2]=c[s+4>>2];c[m+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;m=R+60|0;c[m>>2]=c[t>>2];c[m+4>>2]=c[t+4>>2];c[m+8>>2]=c[t+8>>2];c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[R+72>>2]=c[u>>2];m=R+76|0;c[m>>2]=0;V=R+80|0;c[V>>2]=0;c[R+84>>2]=0;c[m>>2]=c[v>>2];c[V>>2]=c[w>>2];c[R+84>>2]=c[x>>2];c[x>>2]=0;c[w>>2]=0;c[v>>2]=0;V=y;m=c[V+4>>2]|0;U=R+88|0;c[U>>2]=c[V>>2];c[U+4>>2]=m;m=R+96|0;c[m>>2]=0;U=R+100|0;c[U>>2]=0;c[R+104>>2]=0;c[m>>2]=c[z>>2];c[U>>2]=c[A>>2];c[R+104>>2]=c[B>>2];c[B>>2]=0;c[A>>2]=0;c[z>>2]=0;U=R+108|0;c[U>>2]=0;m=R+112|0;c[m>>2]=0;c[R+116>>2]=0;c[U>>2]=c[C>>2];c[m>>2]=c[D>>2];c[R+116>>2]=c[E>>2];c[E>>2]=0;c[D>>2]=0;c[C>>2]=0;c[R+120>>2]=c[F>>2];m=R+124|0;c[m>>2]=0;U=R+128|0;c[U>>2]=0;c[R+132>>2]=0;c[m>>2]=c[G>>2];c[U>>2]=c[H>>2];c[R+132>>2]=c[I>>2];c[I>>2]=0;c[H>>2]=0;c[G>>2]=0;U=R+136|0;c[U>>2]=c[J>>2];m=c[K>>2]|0;c[R+140>>2]=m;V=c[L>>2]|0;c[R+144>>2]=V;Z=R+140|0;if(!V)c[U>>2]=Z;else{c[m+8>>2]=Z;c[J>>2]=M;c[M>>2]=0;c[L>>2]=0}c[k>>2]=(c[k>>2]|0)+148}else ad(b,h);$b(h)}LB(g);Z=c[Q+4>>2]|0;if(!Z){m=Q;while(1){U=c[m+8>>2]|0;if((c[U>>2]|0)==(m|0)){ga=U;break}else m=U}}else{m=Z;while(1){U=c[m>>2]|0;if(!U){ga=m;break}else m=U}}if((ga|0)==(n|0))break;else{P=ga;Q=ga}}l=f;return}function ad(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=((e-f|0)/148|0)+1|0;if(g>>>0>29020049){Az(a);h=c[a>>2]|0;i=c[d>>2]|0}else{h=f;i=e}e=a+8|0;f=((c[e>>2]|0)-h|0)/148|0;j=f<<1;k=f>>>0<14510024?(j>>>0<g>>>0?g:j):29020049;j=(i-h|0)/148|0;do if(k)if(k>>>0>29020049){h=za(4)|0;AD(h);Xa(h|0,3080,250)}else{l=rB(k*148|0)|0;break}else l=0;while(0);h=l+(j*148|0)|0;j=h;i=l+(k*148|0)|0;bd(h,b);b=h+148|0;k=c[a>>2]|0;l=c[d>>2]|0;if((l|0)==(k|0)){m=j;n=k;o=k}else{g=l;l=j;j=h;do{g=g+-148|0;bd(j+-148|0,g);j=l+-148|0;l=j}while((g|0)!=(k|0));m=l;n=c[a>>2]|0;o=c[d>>2]|0}c[a>>2]=m;c[d>>2]=b;c[e>>2]=i;i=n;if((o|0)!=(i|0)){e=o;do{e=e+-148|0;$b(e)}while((e|0)!=(i|0))}if(!n)return;tB(n);return}function bd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=a+12|0;e=b+12|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;e=a+24|0;d=b+24|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;d=a+36|0;e=b+36|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;e=a+48|0;d=b+48|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;d=a+60|0;e=b+60|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[a+72>>2]=c[b+72>>2];e=a+76|0;d=b+76|0;c[e>>2]=0;f=a+80|0;c[f>>2]=0;c[a+84>>2]=0;c[e>>2]=c[d>>2];e=b+80|0;c[f>>2]=c[e>>2];f=b+84|0;c[a+84>>2]=c[f>>2];c[f>>2]=0;c[e>>2]=0;c[d>>2]=0;d=b+88|0;e=c[d+4>>2]|0;f=a+88|0;c[f>>2]=c[d>>2];c[f+4>>2]=e;e=a+96|0;f=b+96|0;c[e>>2]=0;d=a+100|0;c[d>>2]=0;c[a+104>>2]=0;c[e>>2]=c[f>>2];e=b+100|0;c[d>>2]=c[e>>2];d=b+104|0;c[a+104>>2]=c[d>>2];c[d>>2]=0;c[e>>2]=0;c[f>>2]=0;f=a+108|0;e=b+108|0;c[f>>2]=0;d=a+112|0;c[d>>2]=0;c[a+116>>2]=0;c[f>>2]=c[e>>2];f=b+112|0;c[d>>2]=c[f>>2];d=b+116|0;c[a+116>>2]=c[d>>2];c[d>>2]=0;c[f>>2]=0;c[e>>2]=0;c[a+120>>2]=c[b+120>>2];e=a+124|0;f=b+124|0;c[e>>2]=0;d=a+128|0;c[d>>2]=0;c[a+132>>2]=0;c[e>>2]=c[f>>2];e=b+128|0;c[d>>2]=c[e>>2];d=b+132|0;c[a+132>>2]=c[d>>2];c[d>>2]=0;c[e>>2]=0;c[f>>2]=0;f=a+136|0;e=b+136|0;c[f>>2]=c[e>>2];d=c[b+140>>2]|0;c[a+140>>2]=d;g=b+144|0;h=c[g>>2]|0;c[a+144>>2]=h;i=a+140|0;if(!h){c[f>>2]=i;return}else{c[d+8>>2]=i;i=b+140|0;c[e>>2]=i;c[i>>2]=0;c[g>>2]=0;return}}function cd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+48|0;h=g+32|0;i=g+20|0;j=g;GB(i,e);if((dd(d,i)|0)==(d+4|0)){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;k=i+11|0;m=a[k>>0]|0;n=m<<24>>24<0?c[i+4>>2]|0:m&255;cC(h,18892,26,n+26|0);VB(h,(a[k>>0]|0)<0?c[i>>2]|0:i,n)|0;n=f+11|0;if((a[n>>0]|0)<0){a[c[f>>2]>>0]=0;c[f+4>>2]=0}else{a[f>>0]=0;a[n>>0]=0}QB(f,0);c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;LB(h);c[b+144>>2]=0;c[b+148>>2]=0;HD(b|0,0,140)|0;c[b+140>>2]=b+144;c[b+152>>2]=0;c[b+156>>2]=0;c[b+160>>2]=0;c[b+168>>2]=0;c[b+172>>2]=0;c[b+164>>2]=b+168;n=b+176|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;LB(i);l=g;return}n=c[(ed(d,h,i)|0)>>2]|0;if(!n){d=za(8)|0;yB(d,18831);c[d>>2]=17228;Xa(d|0,3128,252)}d=c[n+28>>2]|0;n=c[(c[d>>2]|0)+8>>2]|0;GB(j,e);k=e+12|0;e=c[k+4>>2]|0;m=j+12|0;c[m>>2]=c[k>>2];c[m+4>>2]=e;ub[n&15](b,d,j);LB(j);if(c[b>>2]|0){LB(i);l=g;return};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;b=i+11|0;j=a[b>>0]|0;d=j<<24>>24<0?c[i+4>>2]|0:j&255;cC(h,18855,36,d+36|0);VB(h,(a[b>>0]|0)<0?c[i>>2]|0:i,d)|0;d=f+11|0;if((a[d>>0]|0)<0){a[c[f>>2]>>0]=0;c[f+4>>2]=0}else{a[f>>0]=0;a[d>>0]=0}QB(f,0);c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;LB(h);LB(i);l=g;return}function dd(b,d){b=b|0;d=d|0;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,q=0,r=0;e=b+4|0;b=c[e>>2]|0;do if(b|0){f=a[d+11>>0]|0;g=f<<24>>24<0;h=g?c[d+4>>2]|0:f&255;f=g?c[d>>2]|0:d;g=e;i=b;a:while(1){j=i;while(1){k=j+16|0;l=a[k+11>>0]|0;m=l<<24>>24<0;n=m?c[j+20>>2]|0:l&255;l=h>>>0<n>>>0?h:n;if((l|0)!=0?(o=Eo(m?c[k>>2]|0:k,f,l)|0,(o|0)!=0):0){if((o|0)>=0)break}else p=6;if((p|0)==6?(p=0,n>>>0>=h>>>0):0)break;n=c[j+4>>2]|0;if(!n){q=g;break a}else j=n}i=c[j>>2]|0;if(!i){q=j;break}else g=j}if((q|0)!=(e|0)){g=q+16|0;i=a[g+11>>0]|0;n=i<<24>>24<0;o=n?c[q+20>>2]|0:i&255;i=o>>>0<h>>>0?o:h;if(i|0?(l=Eo(f,n?c[g>>2]|0:g,i)|0,l|0):0){if((l|0)<0)break;else r=q;return r|0}if(h>>>0>=o>>>0){r=q;return r|0}}}while(0);r=e;return r|0}function ed(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=b+4|0;b=c[f>>2]|0;if(!b){c[d>>2]=f;g=f;return g|0}f=a[e+11>>0]|0;h=f<<24>>24<0;i=h?c[e+4>>2]|0:f&255;f=h?c[e>>2]|0:e;e=b;while(1){b=e+16|0;h=a[b+11>>0]|0;j=h<<24>>24<0;k=j?c[e+20>>2]|0:h&255;h=k>>>0<i>>>0;l=h?k:i;if((l|0)!=0?(m=Eo(f,j?c[b>>2]|0:b,l)|0,(m|0)!=0):0)if((m|0)<0)n=7;else n=9;else if(i>>>0<k>>>0)n=7;else n=9;if((n|0)==7){n=0;m=c[e>>2]|0;if(!m){n=8;break}else o=m}else if((n|0)==9){n=0;m=i>>>0<k>>>0?i:k;if((m|0)!=0?(k=Eo(j?c[b>>2]|0:b,f,m)|0,(k|0)!=0):0){if((k|0)>=0){n=16;break}}else n=11;if((n|0)==11?(n=0,!h):0){n=16;break}p=e+4|0;h=c[p>>2]|0;if(!h){n=15;break}else o=h}e=o}if((n|0)==8){c[d>>2]=e;g=e;return g|0}else if((n|0)==15){c[d>>2]=e;g=p;return g|0}else if((n|0)==16){c[d>>2]=e;g=d;return g|0}return 0}function fd(b,d,e,f,h){b=b|0;d=d|0;e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;d=l;l=l+48|0;i=d+36|0;j=d+32|0;k=d+28|0;m=d+24|0;n=d+12|0;o=d;p=c[e+16>>2]|0;q=e+20|0;r=p;if((r|0)!=(q|0)){s=p;p=r;while(1){r=c[e>>2]|0;t=c[(c[r>>2]|0)+44>>2]|0;GB(n,p+16|0);jb[t&3](r,n,+g[p+28>>2]);LB(n);r=s;t=c[r+4>>2]|0;if(!t){u=r;while(1){r=c[u+8>>2]|0;if((c[r>>2]|0)==(u|0)){v=r;break}else u=r}}else{u=t;while(1){r=c[u>>2]|0;if(!r){v=u;break}else u=r}}if((v|0)==(q|0))break;else{s=v;p=v}}}v=e+28|0;p=a[v+11>>0]|0;if(!(((p<<24>>24<0?c[e+32>>2]|0:p&255)|0)==0?!(bC(v,0,-1,44918,0)|0):0)){p=c[e>>2]|0;s=c[(c[p>>2]|0)+56>>2]|0;GB(o,v);pb[s&127](p,o);LB(o)}o=b+16|0;c[b+20>>2]=0;c[b+24>>2]=0;p=b+4|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[o>>2]=b+20;c[b+28>>2]=0;c[b+32>>2]=0;p=c[e>>2]|0;c[b>>2]=p;s=f+136|0;if((o|0)==(s|0))w=p;else{c[k>>2]=c[s>>2];c[m>>2]=f+140;c[j>>2]=c[k>>2];c[i>>2]=c[m>>2];fc(o,j,i);w=c[e>>2]|0}j=rb[c[(c[w>>2]|0)+80>>2]&127](w)|0;w=c[e>>2]|0;o=rb[c[(c[w>>2]|0)+76>>2]&127](w)|0;w=c[e>>2]|0;m=e+4|0;k=e+8|0;if(xb[c[(c[w>>2]|0)+64>>2]&15](w,c[m>>2]|0,c[k>>2]|0,c[e+12>>2]|0)|0){w=c[e>>2]|0;pb[c[(c[w>>2]|0)+92>>2]&127](i,w);w=b+4|0;gd(w);c[w>>2]=c[i>>2];w=i+4|0;c[b+8>>2]=c[w>>2];f=i+8|0;c[b+12>>2]=c[f>>2];c[f>>2]=0;c[w>>2]=0;c[i>>2]=0;bc(i);w=k;k=c[w+4>>2]|0;f=b+28|0;c[f>>2]=c[w>>2];c[f+4>>2]=k;l=d;return}k=c[e>>2]|0;if(xb[c[(c[k>>2]|0)+64>>2]&15](k,c[m>>2]|0,j,o)|0){m=c[e>>2]|0;pb[c[(c[m>>2]|0)+92>>2]&127](i,m);m=b+4|0;gd(m);c[m>>2]=c[i>>2];m=i+4|0;c[b+8>>2]=c[m>>2];e=i+8|0;c[b+12>>2]=c[e>>2];c[e>>2]=0;c[m>>2]=0;c[i>>2]=0;bc(i);i=b+28|0;c[i>>2]=j;c[i+4>>2]=o;l=d;return}else{RB(h,18919)|0;l=d;return}}function gd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;b=c[a>>2]|0;if(!b)return;d=a+4|0;e=c[d>>2]|0;if((e|0)==(b|0))f=b;else{g=e;do{e=g+-100|0;c[d>>2]=e;h=g+-44|0;i=c[h>>2]|0;if(i|0){j=g+-40|0;k=c[j>>2]|0;if((k|0)==(i|0))l=i;else{m=k;do{k=m+-12|0;c[j>>2]=k;LB(k);m=c[j>>2]|0}while((m|0)!=(i|0));l=c[h>>2]|0}tB(l)}LB(g+-64|0);LB(g+-76|0);LB(g+-88|0);LB(e);g=c[d>>2]|0}while((g|0)!=(b|0));f=c[a>>2]|0}tB(f);c[a+8>>2]=0;c[d>>2]=0;c[a>>2]=0;return}function hd(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;i=l;l=l+80|0;j=i+72|0;k=i+44|0;m=i+56|0;n=i+32|0;o=i+8|0;p=i+24|0;q=i;r=Dc(d+36|0,e)|0;if(!r){c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,18986,21);Qk(m);id(j,k,3,m,0);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;Hl(j,b);s=c[j+4>>2]|0;if(s|0)oB(s);s=c[m+4>>2]|0;if(s|0)oB(s);LB(k);l=i;return}if((c[d+40>>2]|0)!=(e|0)?(k=d+72|0,s=c[k>>2]|0,s|0):0){t=k;u=s;a:while(1){s=u;while(1){if((c[s+16>>2]|0)>>>0>=e>>>0)break;v=c[s+4>>2]|0;if(!v){w=t;break a}else s=v}u=c[s>>2]|0;if(!u){w=s;break}else t=s}if((w|0)!=(k|0)?(c[w+16>>2]|0)>>>0<=e>>>0:0){Bk(j,g,h);h=m+4|0;c[m+8>>2]=0;g=m+12|0;c[g>>2]=0;e=m+8|0;c[h>>2]=e;c[m>>2]=r;w=c[(c[r>>2]|0)+96>>2]|0;c[p>>2]=c[j>>2];c[p+4>>2]=c[j+4>>2];yb[w&31](o,r,f,p);jd(h,c[e>>2]|0);c[h>>2]=c[o>>2];p=o+4|0;f=c[p>>2]|0;c[e>>2]=f;r=o+8|0;w=c[r>>2]|0;c[g>>2]=w;if(!w){c[h>>2]=e;x=f}else{c[f+8>>2]=e;c[o>>2]=p;c[p>>2]=0;c[r>>2]=0;x=0}jd(o,x);a[d+116>>0]=1;Qk(q);kd(o,m,d+24|0,1,q);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;Hl(o,b);d=c[o+4>>2]|0;if(d|0)oB(d);d=c[q+4>>2]|0;if(d|0)oB(d);jd(m+4|0,c[e>>2]|0);l=i;return}};c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;HB(n,19008,30);Qk(m);id(j,n,3,m,0);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;Hl(j,b);b=c[j+4>>2]|0;if(b|0)oB(b);b=c[m+4>>2]|0;if(b|0)oB(b);LB(n);l=i;return}function id(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;h=l;l=l+112|0;i=h+108|0;j=h+96|0;k=h+84|0;m=h+72|0;n=h+64|0;o=h+48|0;p=h+36|0;q=h+24|0;r=h+12|0;s=h;t=j+4|0;c[t>>2]=0;u=j+8|0;c[u>>2]=0;v=j+4|0;c[j>>2]=v;ld(j);c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;switch(e|0){case 0:{RB(k,19361)|0;break}case 1:{RB(k,19366)|0;break}case 2:{RB(k,19371)|0;break}case 3:{RB(k,19055)|0;break}case 4:{RB(k,19381)|0;break}default:RB(k,19388)|0}w=m+4|0;c[w>>2]=0;x=m+8|0;c[x>>2]=0;y=m+4|0;c[m>>2]=y;Ul(n,0);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;HB(o,19396,4);z=md(m,i,o)|0;A=c[z>>2]|0;if(!A){B=rB(36)|0;C=B+16|0;c[C>>2]=c[o>>2];c[C+4>>2]=c[o+4>>2];c[C+8>>2]=c[o+8>>2];c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;Qk(B+28|0);C=c[i>>2]|0;c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=C;c[z>>2]=B;C=c[c[m>>2]>>2]|0;if(!C)D=B;else{c[m>>2]=C;D=c[z>>2]|0}gc(c[w>>2]|0,D);c[x>>2]=(c[x>>2]|0)+1;E=B}else E=A;A=c[n>>2]|0;B=n+4|0;D=c[B>>2]|0;c[n>>2]=0;c[B>>2]=0;c[E+28>>2]=A;A=E+32|0;E=c[A>>2]|0;c[A>>2]=D;if(E|0)oB(E);LB(o);E=c[B>>2]|0;if(E|0)oB(E);if((e|0)==5|g){fm(n,d);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;HB(o,19401,7);g=md(m,i,o)|0;e=c[g>>2]|0;if(!e){E=rB(36)|0;B=E+16|0;c[B>>2]=c[o>>2];c[B+4>>2]=c[o+4>>2];c[B+8>>2]=c[o+8>>2];c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;Qk(E+28|0);B=c[i>>2]|0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=B;c[g>>2]=E;B=c[c[m>>2]>>2]|0;if(!B)F=E;else{c[m>>2]=B;F=c[g>>2]|0}gc(c[w>>2]|0,F);c[x>>2]=(c[x>>2]|0)+1;G=E}else G=e;e=c[n>>2]|0;E=n+4|0;F=c[E>>2]|0;c[n>>2]=0;c[E>>2]=0;c[G+28>>2]=e;e=G+32|0;G=c[e>>2]|0;c[e>>2]=F;if(G|0)oB(G);LB(o);G=c[E>>2]|0;if(G|0)oB(G)}else{c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;HB(r,19409,9);G=a[k+11>>0]|0;E=G<<24>>24<0;F=VB(r,E?c[k>>2]|0:k,E?c[k+4>>2]|0:G&255)|0;c[q>>2]=c[F>>2];c[q+4>>2]=c[F+4>>2];c[q+8>>2]=c[F+8>>2];c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;F=WB(q,19419)|0;c[p>>2]=c[F>>2];c[p+4>>2]=c[F+4>>2];c[p+8>>2]=c[F+8>>2];c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;F=a[d+11>>0]|0;G=F<<24>>24<0;E=VB(p,G?c[d>>2]|0:d,G?c[d+4>>2]|0:F&255)|0;c[o>>2]=c[E>>2];c[o+4>>2]=c[E+4>>2];c[o+8>>2]=c[E+8>>2];c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;sm(n,o);c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;HB(s,19401,7);E=md(m,i,s)|0;F=c[E>>2]|0;if(!F){d=rB(36)|0;G=d+16|0;c[G>>2]=c[s>>2];c[G+4>>2]=c[s+4>>2];c[G+8>>2]=c[s+8>>2];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;Qk(d+28|0);G=c[i>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=G;c[E>>2]=d;G=c[c[m>>2]>>2]|0;if(!G)H=d;else{c[m>>2]=G;H=c[E>>2]|0}gc(c[w>>2]|0,H);c[x>>2]=(c[x>>2]|0)+1;I=d}else I=F;F=c[n>>2]|0;d=n+4|0;x=c[d>>2]|0;c[n>>2]=0;c[d>>2]=0;c[I+28>>2]=F;F=I+32|0;I=c[F>>2]|0;c[F>>2]=x;if(I|0)oB(I);LB(s);s=c[d>>2]|0;if(s|0)oB(s);LB(o);LB(p);LB(q);LB(r)}fm(n,k);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;HB(o,19063,6);r=md(j,i,o)|0;q=c[r>>2]|0;if(!q){p=rB(36)|0;s=p+16|0;c[s>>2]=c[o>>2];c[s+4>>2]=c[o+4>>2];c[s+8>>2]=c[o+8>>2];c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;Qk(p+28|0);s=c[i>>2]|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=s;c[r>>2]=p;s=c[c[j>>2]>>2]|0;if(!s)J=p;else{c[j>>2]=s;J=c[r>>2]|0}gc(c[t>>2]|0,J);c[u>>2]=(c[u>>2]|0)+1;K=p}else K=q;q=c[n>>2]|0;p=n+4|0;J=c[p>>2]|0;c[n>>2]=0;c[p>>2]=0;c[K+28>>2]=q;q=K+32|0;K=c[q>>2]|0;c[q>>2]=J;if(K|0)oB(K);LB(o);K=c[p>>2]|0;if(K|0)oB(K);Bm(n,m);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;HB(o,19430,5);K=md(j,i,o)|0;p=c[K>>2]|0;if(!p){J=rB(36)|0;q=J+16|0;c[q>>2]=c[o>>2];c[q+4>>2]=c[o+4>>2];c[q+8>>2]=c[o+8>>2];c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;Qk(J+28|0);q=c[i>>2]|0;c[J>>2]=0;c[J+4>>2]=0;c[J+8>>2]=q;c[K>>2]=J;q=c[c[j>>2]>>2]|0;if(!q)L=J;else{c[j>>2]=q;L=c[K>>2]|0}gc(c[t>>2]|0,L);c[u>>2]=(c[u>>2]|0)+1;M=J}else M=p;p=c[n>>2]|0;J=n+4|0;u=c[J>>2]|0;c[n>>2]=0;c[J>>2]=0;c[M+28>>2]=p;p=M+32|0;M=c[p>>2]|0;c[p>>2]=u;if(M|0)oB(M);LB(o);o=c[J>>2]|0;if(!o){od(j,f);Bm(b,j);N=c[y>>2]|0;pd(m,N);LB(k);O=c[v>>2]|0;pd(j,O);l=h;return}oB(o);od(j,f);Bm(b,j);N=c[y>>2]|0;pd(m,N);LB(k);O=c[v>>2]|0;pd(j,O);l=h;return}function jd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!b)return;jd(a,c[b>>2]|0);jd(a,c[b+4>>2]|0);a=b+20|0;d=c[a>>2]|0;if(d|0){e=b+24|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;do{c[e>>2]=h+-48;LB(h+-12|0);f=c[h+-24>>2]|0;if(f|0){i=h+-20|0;j=c[i>>2]|0;if((j|0)!=(f|0))c[i>>2]=j+(~((j+-4-f|0)>>>2)<<2);tB(f)}h=c[e>>2]|0}while((h|0)!=(d|0));g=c[a>>2]|0}tB(g)}tB(b);return}function kd(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0;g=l;l=l+64|0;h=g+60|0;i=g+48|0;j=g+24|0;k=g+16|0;m=g;n=g+40|0;o=i+4|0;c[o>>2]=0;p=i+8|0;c[p>>2]=0;q=i+4|0;c[i>>2]=q;ld(i);r=j+4|0;c[r>>2]=0;s=j+8|0;c[s>>2]=0;t=j+4|0;c[j>>2]=t;Il(k,+((zb[c[(c[d>>2]|0)+8>>2]&63](d,c[b>>2]|0)|0)>>>0));c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,19039,6);u=md(j,h,m)|0;v=c[u>>2]|0;if(!v){w=rB(36)|0;x=w+16|0;c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];c[x+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;Qk(w+28|0);x=c[h>>2]|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=x;c[u>>2]=w;x=c[c[j>>2]>>2]|0;if(!x)y=w;else{c[j>>2]=x;y=c[u>>2]|0}gc(c[r>>2]|0,y);c[s>>2]=(c[s>>2]|0)+1;z=w}else z=v;v=c[k>>2]|0;w=k+4|0;y=c[w>>2]|0;c[k>>2]=0;c[w>>2]=0;c[z+28>>2]=v;v=z+32|0;z=c[v>>2]|0;c[v>>2]=y;if(z|0)oB(z);LB(m);z=c[w>>2]|0;if(z|0)oB(z);ub[c[(c[d>>2]|0)+16>>2]&15](n,d,c[b>>2]|0);nd(k,b+4|0,c[n>>2]|0,e);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,19046,8);e=md(j,h,m)|0;b=c[e>>2]|0;if(!b){d=rB(36)|0;z=d+16|0;c[z>>2]=c[m>>2];c[z+4>>2]=c[m+4>>2];c[z+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;Qk(d+28|0);z=c[h>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=z;c[e>>2]=d;z=c[c[j>>2]>>2]|0;if(!z)A=d;else{c[j>>2]=z;A=c[e>>2]|0}gc(c[r>>2]|0,A);c[s>>2]=(c[s>>2]|0)+1;B=d}else B=b;b=c[k>>2]|0;d=k+4|0;s=c[d>>2]|0;c[k>>2]=0;c[d>>2]=0;c[B+28>>2]=b;b=B+32|0;B=c[b>>2]|0;c[b>>2]=s;if(B|0)oB(B);LB(m);B=c[d>>2]|0;if(B|0)oB(B);B=c[n+4>>2]|0;if(B|0)oB(B);tm(k,19055);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,19063,6);B=md(i,h,m)|0;n=c[B>>2]|0;if(!n){d=rB(36)|0;s=d+16|0;c[s>>2]=c[m>>2];c[s+4>>2]=c[m+4>>2];c[s+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;Qk(d+28|0);s=c[h>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=s;c[B>>2]=d;s=c[c[i>>2]>>2]|0;if(!s)C=d;else{c[i>>2]=s;C=c[B>>2]|0}gc(c[o>>2]|0,C);c[p>>2]=(c[p>>2]|0)+1;D=d}else D=n;n=c[k>>2]|0;d=k+4|0;C=c[d>>2]|0;c[k>>2]=0;c[d>>2]=0;c[D+28>>2]=n;n=D+32|0;D=c[n>>2]|0;c[n>>2]=C;if(D|0)oB(D);LB(m);D=c[d>>2]|0;if(D|0)oB(D);Bm(k,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,19070,6);D=md(i,h,m)|0;d=c[D>>2]|0;if(!d){C=rB(36)|0;n=C+16|0;c[n>>2]=c[m>>2];c[n+4>>2]=c[m+4>>2];c[n+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;Qk(C+28|0);n=c[h>>2]|0;c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=n;c[D>>2]=C;n=c[c[i>>2]>>2]|0;if(!n)E=C;else{c[i>>2]=n;E=c[D>>2]|0}gc(c[o>>2]|0,E);c[p>>2]=(c[p>>2]|0)+1;F=C}else F=d;d=c[k>>2]|0;C=k+4|0;p=c[C>>2]|0;c[k>>2]=0;c[C>>2]=0;c[F+28>>2]=d;d=F+32|0;F=c[d>>2]|0;c[d>>2]=p;if(F|0)oB(F);LB(m);m=c[C>>2]|0;if(!m){od(i,f);Bm(a,i);G=c[t>>2]|0;pd(j,G);H=c[q>>2]|0;pd(i,H);l=g;return}oB(m);od(i,f);Bm(a,i);G=c[t>>2]|0;pd(j,G);H=c[q>>2]|0;pd(i,H);l=g;return}function ld(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;b=l;l=l+32|0;d=b+24|0;e=b+16|0;f=b;tm(e,19349);c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;HB(f,19353,7);g=md(a,d,f)|0;h=c[g>>2]|0;if(!h){i=rB(36)|0;j=i+16|0;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;Qk(i+28|0);j=c[d>>2]|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=j;c[g>>2]=i;j=c[c[a>>2]>>2]|0;if(!j)k=i;else{c[a>>2]=j;k=c[g>>2]|0}gc(c[a+4>>2]|0,k);k=a+8|0;c[k>>2]=(c[k>>2]|0)+1;m=i}else m=h;h=c[e>>2]|0;i=e+4|0;k=c[i>>2]|0;c[e>>2]=0;c[i>>2]=0;c[m+28>>2]=h;h=m+32|0;m=c[h>>2]|0;c[h>>2]=k;if(m|0)oB(m);LB(f);f=c[i>>2]|0;if(!f){l=b;return}oB(f);l=b;return}function md(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=b+4|0;b=c[f>>2]|0;if(!b){c[d>>2]=f;g=f;return g|0}f=a[e+11>>0]|0;h=f<<24>>24<0;i=h?c[e+4>>2]|0:f&255;f=h?c[e>>2]|0:e;e=b;while(1){b=e+16|0;h=a[b+11>>0]|0;j=h<<24>>24<0;k=j?c[e+20>>2]|0:h&255;h=k>>>0<i>>>0;l=h?k:i;if((l|0)!=0?(m=Eo(f,j?c[b>>2]|0:b,l)|0,(m|0)!=0):0)if((m|0)<0)n=7;else n=9;else if(i>>>0<k>>>0)n=7;else n=9;if((n|0)==7){n=0;m=c[e>>2]|0;if(!m){n=8;break}else o=m}else if((n|0)==9){n=0;m=i>>>0<k>>>0?i:k;if((m|0)!=0?(k=Eo(j?c[b>>2]|0:b,f,m)|0,(k|0)!=0):0){if((k|0)>=0){n=16;break}}else n=11;if((n|0)==11?(n=0,!h):0){n=16;break}p=e+4|0;h=c[p>>2]|0;if(!h){n=15;break}else o=h}e=o}if((n|0)==8){c[d>>2]=e;g=e;return g|0}else if((n|0)==15){c[d>>2]=e;g=p;return g|0}else if((n|0)==16){c[d>>2]=e;g=d;return g|0}return 0}function nd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0;f=l;l=l+64|0;g=f+48|0;h=f+36|0;i=f+24|0;j=f+16|0;k=f;m=h+4|0;c[m>>2]=0;n=h+8|0;c[n>>2]=0;o=h+4|0;c[h>>2]=o;p=c[b>>2]|0;q=b+4|0;if((p|0)==(q|0)){Bm(a,h);r=c[o>>2]|0;pd(h,r);l=f;return}b=i+4|0;s=i+8|0;t=j+4|0;u=i+8|0;v=g+4|0;w=p;x=p;while(1){c[i>>2]=0;c[b>>2]=0;c[s>>2]=0;p=c[w+20>>2]|0;y=c[w+24>>2]|0;if((p|0)!=(y|0)){z=p;do{qd(g,z,e);p=c[b>>2]|0;if(p>>>0>=(c[u>>2]|0)>>>0){rd(i,g);A=c[v>>2]|0;if(A|0)oB(A)}else{c[p>>2]=c[g>>2];c[p+4>>2]=c[v>>2];c[g>>2]=0;c[v>>2]=0;c[b>>2]=p+8}z=z+48|0}while((z|0)!=(y|0))}um(j,i);ub[c[(c[d>>2]|0)+12>>2]&15](k,d,c[w+16>>2]|0);y=md(h,g,k)|0;z=c[y>>2]|0;if(!z){p=rB(36)|0;A=p+16|0;c[A>>2]=c[k>>2];c[A+4>>2]=c[k+4>>2];c[A+8>>2]=c[k+8>>2];c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;Qk(p+28|0);A=c[g>>2]|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=A;c[y>>2]=p;A=c[c[h>>2]>>2]|0;if(!A)B=p;else{c[h>>2]=A;B=c[y>>2]|0}gc(c[m>>2]|0,B);c[n>>2]=(c[n>>2]|0)+1;C=p}else C=z;z=c[j>>2]|0;p=c[t>>2]|0;c[j>>2]=0;c[t>>2]=0;c[C+28>>2]=z;z=C+32|0;y=c[z>>2]|0;c[z>>2]=p;if(y|0)oB(y);LB(k);y=c[t>>2]|0;if(y|0)oB(y);y=c[i>>2]|0;if(y|0){p=c[b>>2]|0;if((p|0)==(y|0))D=y;else{z=p;while(1){p=z+-8|0;c[b>>2]=p;A=c[z+-4>>2]|0;if(!A)E=p;else{oB(A);E=c[b>>2]|0}if((E|0)==(y|0))break;else z=E}D=c[i>>2]|0}tB(D)}z=c[x+4>>2]|0;if(!z){y=x;while(1){A=c[y+8>>2]|0;if((c[A>>2]|0)==(y|0)){F=A;break}else y=A}}else{y=z;while(1){A=c[y>>2]|0;if(!A){F=y;break}else y=A}}if((F|0)==(q|0))break;else{w=F;x=F}}Bm(a,h);r=c[o>>2]|0;pd(h,r);l=f;return}function od(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;d=l;l=l+16|0;e=d+12|0;f=d;if(!(Im(b)|0)){l=d;return};c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;HB(f,19077,2);g=md(a,e,f)|0;h=c[g>>2]|0;if(!h){i=rB(36)|0;j=i+16|0;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;Qk(i+28|0);j=c[e>>2]|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=j;c[g>>2]=i;j=c[c[a>>2]>>2]|0;if(!j)k=i;else{c[a>>2]=j;k=c[g>>2]|0}gc(c[a+4>>2]|0,k);k=a+8|0;c[k>>2]=(c[k>>2]|0)+1;m=i}else m=h;h=c[b>>2]|0;i=c[b+4>>2]|0;if(i|0)nB(i);c[m+28>>2]=h;h=m+32|0;m=c[h>>2]|0;c[h>>2]=i;if(m|0)oB(m);LB(f);l=d;return}function pd(a,b){a=a|0;b=b|0;if(!b)return;pd(a,c[b>>2]|0);pd(a,c[b+4>>2]|0);a=c[b+32>>2]|0;if(a|0)oB(a);LB(b+16|0);tB(b);return}function qd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0;f=l;l=l+64|0;g=f+56|0;h=f+44|0;i=f+24|0;j=f+12|0;k=f;m=f+40|0;n=f+36|0;o=i+4|0;c[o>>2]=0;p=i+8|0;c[p>>2]=0;q=i+4|0;c[i>>2]=q;r=c[d+28>>2]|0;s=c[d+24>>2]|0;t=s;do if((r|0)!=(s|0)){if(e|0){c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[h>>2]=k;c[g>>2]=c[h>>2];td(s,t+(r-s>>2<<2)|0,g);sm(j,k);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,19080,13);u=md(i,g,h)|0;v=c[u>>2]|0;if(!v){w=rB(36)|0;x=w+16|0;c[x>>2]=c[h>>2];c[x+4>>2]=c[h+4>>2];c[x+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Qk(w+28|0);x=c[g>>2]|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=x;c[u>>2]=w;x=c[c[i>>2]>>2]|0;if(!x)y=w;else{c[i>>2]=x;y=c[u>>2]|0}gc(c[o>>2]|0,y);c[p>>2]=(c[p>>2]|0)+1;z=w}else z=v;v=c[j>>2]|0;w=j+4|0;u=c[w>>2]|0;c[j>>2]=0;c[w>>2]=0;c[z+28>>2]=v;v=z+32|0;x=c[v>>2]|0;c[v>>2]=u;if(x|0)oB(x);LB(h);x=c[w>>2]|0;if(x|0)oB(x);LB(k);break}c[m>>2]=s;c[n>>2]=r;c[h>>2]=c[m>>2];c[g>>2]=c[n>>2];sd(k,h,g);Am(j,k);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,19080,13);x=md(i,g,h)|0;w=c[x>>2]|0;if(!w){u=rB(36)|0;v=u+16|0;c[v>>2]=c[h>>2];c[v+4>>2]=c[h+4>>2];c[v+8>>2]=c[h+8>>2];c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;Qk(u+28|0);v=c[g>>2]|0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=v;c[x>>2]=u;v=c[c[i>>2]>>2]|0;if(!v)A=u;else{c[i>>2]=v;A=c[x>>2]|0}gc(c[o>>2]|0,A);c[p>>2]=(c[p>>2]|0)+1;B=u}else B=w;w=c[j>>2]|0;u=j+4|0;x=c[u>>2]|0;c[j>>2]=0;c[u>>2]=0;c[B+28>>2]=w;w=B+32|0;v=c[w>>2]|0;c[w>>2]=x;if(v|0)oB(v);LB(h);v=c[u>>2]|0;if(v|0)oB(v);v=c[k>>2]|0;if(v|0){u=k+4|0;x=c[u>>2]|0;if((x|0)==(v|0))C=v;else{w=x;while(1){x=w+-8|0;c[u>>2]=x;D=c[w+-4>>2]|0;if(!D)E=x;else{oB(D);E=c[u>>2]|0}if((E|0)==(v|0))break;else w=E}C=c[k>>2]|0}tB(C)}}while(0);C=d+36|0;k=a[C+11>>0]|0;if(!(((k<<24>>24<0?c[d+40>>2]|0:k&255)|0)==0?!(bC(C,0,-1,44918,0)|0):0)){fm(h,C);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19094,5);C=md(i,g,j)|0;k=c[C>>2]|0;if(!k){E=rB(36)|0;B=E+16|0;c[B>>2]=c[j>>2];c[B+4>>2]=c[j+4>>2];c[B+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Qk(E+28|0);B=c[g>>2]|0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=B;c[C>>2]=E;B=c[c[i>>2]>>2]|0;if(!B)F=E;else{c[i>>2]=B;F=c[C>>2]|0}gc(c[o>>2]|0,F);c[p>>2]=(c[p>>2]|0)+1;G=E}else G=k;k=c[h>>2]|0;E=h+4|0;F=c[E>>2]|0;c[h>>2]=0;c[E>>2]=0;c[G+28>>2]=k;k=G+32|0;G=c[k>>2]|0;c[k>>2]=F;if(G|0)oB(G);LB(j);G=c[E>>2]|0;if(G|0)oB(G)}if(a[d>>0]|0){ud(h,d+4|0);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19100,9);G=md(i,g,j)|0;E=c[G>>2]|0;if(!E){F=rB(36)|0;k=F+16|0;c[k>>2]=c[j>>2];c[k+4>>2]=c[j+4>>2];c[k+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Qk(F+28|0);k=c[g>>2]|0;c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=k;c[G>>2]=F;k=c[c[i>>2]>>2]|0;if(!k)H=F;else{c[i>>2]=k;H=c[G>>2]|0}gc(c[o>>2]|0,H);c[p>>2]=(c[p>>2]|0)+1;I=F}else I=E;E=c[h>>2]|0;F=h+4|0;H=c[F>>2]|0;c[h>>2]=0;c[F>>2]=0;c[I+28>>2]=E;E=I+32|0;I=c[E>>2]|0;c[E>>2]=H;if(I|0)oB(I);LB(j);I=c[F>>2]|0;if(I|0)oB(I)}if(!(a[d+12>>0]|0)){Bm(b,i);J=c[q>>2]|0;pd(i,J);l=f;return}ud(h,d+16|0);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19110,8);d=md(i,g,j)|0;I=c[d>>2]|0;if(!I){F=rB(36)|0;H=F+16|0;c[H>>2]=c[j>>2];c[H+4>>2]=c[j+4>>2];c[H+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Qk(F+28|0);H=c[g>>2]|0;c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=H;c[d>>2]=F;H=c[c[i>>2]>>2]|0;if(!H)K=F;else{c[i>>2]=H;K=c[d>>2]|0}gc(c[o>>2]|0,K);c[p>>2]=(c[p>>2]|0)+1;L=F}else L=I;I=c[h>>2]|0;F=h+4|0;p=c[F>>2]|0;c[h>>2]=0;c[F>>2]=0;c[L+28>>2]=I;I=L+32|0;L=c[I>>2]|0;c[I>>2]=p;if(L|0)oB(L);LB(j);j=c[F>>2]|0;if(j|0)oB(j);Bm(b,i);J=c[q>>2]|0;pd(i,J);l=f;return}function rd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>3)+1|0;if(g>>>0>536870911){Az(a);h=c[d>>2]|0;i=c[a>>2]|0}else{h=e;i=f}f=i;e=h;j=a+8|0;k=(c[j>>2]|0)-i|0;l=k>>2;m=k>>3>>>0<268435455?(l>>>0<g>>>0?g:l):536870911;l=h-i>>3;do if(m)if(m>>>0>536870911){h=za(4)|0;AD(h);Xa(h|0,3080,250)}else{n=rB(m<<3)|0;break}else n=0;while(0);h=n+(l<<3)|0;g=h;k=n+(m<<3)|0;c[h>>2]=c[b>>2];m=b+4|0;c[n+(l<<3)+4>>2]=c[m>>2];c[b>>2]=0;c[m>>2]=0;m=h+8|0;if((e|0)==(f|0)){o=g;p=i}else{i=e;e=g;g=h;do{h=i;i=i+-8|0;c[g+-8>>2]=c[i>>2];b=h+-4|0;c[g+-4>>2]=c[b>>2];c[i>>2]=0;c[b>>2]=0;g=e+-8|0;e=g}while((i|0)!=(f|0));o=e;p=c[a>>2]|0}c[a>>2]=o;o=c[d>>2]|0;c[d>>2]=m;c[j>>2]=k;k=p;if((o|0)!=(k|0)){j=o;do{o=c[j+-4>>2]|0;j=j+-8|0;if(o|0)oB(o)}while((j|0)!=(k|0))}if(!p)return;tB(p);return}function sd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0;c[a>>2]=0;e=a+4|0;c[e>>2]=0;c[a+8>>2]=0;f=c[b>>2]|0;b=c[d>>2]|0;d=b-f|0;h=d>>2;i=f;f=b;if(!h)return;if(h>>>0>536870911){Az(a);b=za(4)|0;AD(b);Xa(b|0,3080,250)}b=rB(d<<1)|0;c[e>>2]=b;c[a>>2]=b;c[a+8>>2]=b+(h<<3);if((i|0)==(f|0))return;h=i;i=b;do{Il(i,+g[h>>2]);h=h+4|0;i=(c[e>>2]|0)+8|0;c[e>>2]=i}while((h|0)!=(f|0));return}function td(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if((b|0)==(d|0))return;f=b;b=0;while(1){g=b+6|0;h=a[f>>0]|0;if(g>>>0<8){XB(c[e>>2]|0,a[19121+(h<<24>>24>>2-b&63)>>0]|0);i=f;j=g}else{k=f+1|0;if((k|0)==(d|0))l=0;else l=a[k>>0]|0;if(g>>>0>=16){m=8;break}n=b+-2|0;XB(c[e>>2]|0,a[19121+((l<<24>>24>>10-b&(-1<<n^63)|h<<24>>24<<n)&63)>>0]|0);i=k;j=g&7}if((i|0)==(d|0)){m=11;break}else{f=i;b=j}}if((m|0)==8)ya(19186,19214,71,19324);else if((m|0)==11)return}function ud(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=l;l=l+64|0;e=d+56|0;f=d+52|0;g=d+40|0;h=d;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,26681,1);Ul(h+12|0,c[b>>2]|0);i=h+20|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,19119,1);Ul(h+32|0,c[b+4>>2]|0);c[g+4>>2]=0;c[g+8>>2]=0;b=g+4|0;c[g>>2]=b;i=b;c[f>>2]=i;c[e>>2]=c[f>>2];vd(g,e,h,h)|0;j=h+20|0;c[f>>2]=i;c[e>>2]=c[f>>2];vd(g,e,j,j)|0;Hm(a,g);pd(g,c[b>>2]|0);b=c[h+36>>2]|0;if(b|0)oB(b);LB(h+20|0);b=c[h+16>>2]|0;if(!b){LB(h);l=d;return}oB(b);LB(h);l=d;return}function vd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;g=f+8|0;h=f+4|0;i=f;c[i>>2]=c[b>>2];c[g>>2]=c[i>>2];i=wd(a,g,h,d)|0;d=c[i>>2]|0;if(d|0){j=d;l=f;return j|0}d=rB(36)|0;GB(d+16|0,e);c[d+28>>2]=c[e+12>>2];g=c[e+16>>2]|0;c[d+32>>2]=g;if(g|0)nB(g);g=c[h>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=g;c[i>>2]=d;g=c[c[a>>2]>>2]|0;if(!g)k=d;else{c[a>>2]=g;k=c[i>>2]|0}gc(c[a+4>>2]|0,k);k=a+8|0;c[k>>2]=(c[k>>2]|0)+1;j=d;l=f;return j|0}function wd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;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,t=0,u=0,v=0;g=b+4|0;h=c[d>>2]|0;d=h;do if((h|0)!=(g|0)){i=h+16|0;j=a[f+11>>0]|0;k=j<<24>>24<0;l=k?c[f+4>>2]|0:j&255;j=a[i+11>>0]|0;m=j<<24>>24<0;n=m?c[h+20>>2]|0:j&255;j=n>>>0<l>>>0;o=j?n:l;if((o|0)!=0?(p=Eo(k?c[f>>2]|0:f,m?c[i>>2]|0:i,o)|0,(p|0)!=0):0){if((p|0)<0)break}else q=4;if((q|0)==4?l>>>0<n>>>0:0)break;p=l>>>0<n>>>0?l:n;if((p|0)!=0?(n=Eo(m?c[i>>2]|0:i,k?c[f>>2]|0:f,p)|0,(n|0)!=0):0){if((n|0)>=0)q=34}else q=20;if((q|0)==20?!j:0)q=34;if((q|0)==34){c[e>>2]=d;r=e;return r|0}j=h+4|0;n=c[j>>2]|0;p=(n|0)==0;if(p){i=h;while(1){m=c[i+8>>2]|0;if((c[m>>2]|0)==(i|0)){s=m;break}else i=m}}else{i=n;while(1){m=c[i>>2]|0;if(!m){s=i;break}else i=m}}do if((s|0)!=(g|0)){i=s+16|0;n=a[i+11>>0]|0;m=n<<24>>24<0;o=m?c[s+20>>2]|0:n&255;n=o>>>0<l>>>0?o:l;if((n|0)!=0?(t=Eo(k?c[f>>2]|0:f,m?c[i>>2]|0:i,n)|0,(t|0)!=0):0){if((t|0)<0)break}else q=28;if((q|0)==28?l>>>0<o>>>0:0)break;r=md(b,e,f)|0;return r|0}while(0);if(p){c[e>>2]=h;r=j;return r|0}else{c[e>>2]=s;r=s;return r|0}}while(0);do if((h|0)==(c[b>>2]|0))u=d;else{s=c[h>>2]|0;if(!s){g=h;while(1){l=c[g+8>>2]|0;if((c[l>>2]|0)==(g|0))g=l;else{v=l;break}}}else{g=s;while(1){j=c[g+4>>2]|0;if(!j){v=g;break}else g=j}}g=v;s=v+16|0;j=a[s+11>>0]|0;p=j<<24>>24<0;l=p?c[v+20>>2]|0:j&255;j=a[f+11>>0]|0;k=j<<24>>24<0;o=k?c[f+4>>2]|0:j&255;j=o>>>0<l>>>0?o:l;if((j|0)!=0?(t=Eo(p?c[s>>2]|0:s,k?c[f>>2]|0:f,j)|0,(t|0)!=0):0){if((t|0)<0){u=g;break}}else q=12;if((q|0)==12?l>>>0<o>>>0:0){u=g;break}r=md(b,e,f)|0;return r|0}while(0);if(!(c[h>>2]|0)){c[e>>2]=h;r=h;return r|0}else{h=u;c[e>>2]=h;r=h+4|0;return r|0}return 0}function xd(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,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;g=l;l=l+816|0;h=g+800|0;i=g+776|0;j=g+752|0;k=g+744|0;m=g+764|0;n=g+736|0;o=g+704|0;p=g+720|0;q=g+712|0;r=g+688|0;s=g+680|0;t=g+668|0;u=g+460|0;v=g+656|0;w=g+648|0;x=g+448|0;y=g+428|0;z=g+416|0;A=g+408|0;B=g+392|0;C=g+380|0;D=g+368|0;E=g+176|0;F=g+128|0;G=g+328|0;H=g+164|0;I=g+120|0;J=g+104|0;K=g+92|0;L=g+80|0;M=g+68|0;N=g+56|0;O=g+48|0;P=g+40|0;Q=g+24|0;R=g+12|0;S=g;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;GB(m,f);Xc(k,m,j);LB(m);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,19077,2);m=Om(k,h)|0;c[n>>2]=c[m>>2];f=n+4|0;T=c[m+4>>2]|0;c[f>>2]=T;if(T|0)nB(T);LB(h);Qk(o);T=j+11|0;m=a[T>>0]|0;U=j+4|0;do if(((m<<24>>24<0?c[U>>2]|0:m&255)|0)==0?(bC(j,0,-1,44918,0)|0)==0:0){c[q>>2]=c[k>>2];V=q+4|0;W=k+4|0;X=c[W>>2]|0;c[V>>2]=X;if(X|0)nB(X);X=yd(q,j)|0;Y=c[V>>2]|0;if(Y|0)oB(Y);Y=a[T>>0]|0;if(((Y<<24>>24<0?c[U>>2]|0:Y&255)|0)==0?(bC(j,0,-1,44918,0)|0)==0:0){Y=e+116|0;V=d[Y>>0]|0;a:do switch(X|0){case 0:{c[s>>2]=c[k>>2];Z=s+4|0;_=c[W>>2]|0;c[Z>>2]=_;if(_|0)nB(_);zd(h,s,j);_=c[Z>>2]|0;if(_|0)oB(_);_=a[T>>0]|0;if(((_<<24>>24<0?c[U>>2]|0:_&255)|0)==0?(bC(j,0,-1,44918,0)|0)==0:0){_b(v,h);$c(u,e,v);Ad(i,u,n);_=c[i>>2]|0;Z=i+4|0;$=c[Z>>2]|0;c[i>>2]=0;c[Z>>2]=0;c[o>>2]=_;_=o+4|0;aa=c[_>>2]|0;c[_>>2]=$;if(aa|0?(oB(aa),aa=c[Z>>2]|0,aa|0):0)oB(aa);aa=c[u>>2]|0;if(aa|0){Z=u+4|0;$=c[Z>>2]|0;if(($|0)==(aa|0))ba=aa;else{_=$;do{$=_+-148|0;c[Z>>2]=$;$b($);_=c[Z>>2]|0}while((_|0)!=(aa|0));ba=c[u>>2]|0}tB(ba)}aa=c[v>>2]|0;if(aa|0){_=v+4|0;Z=c[_>>2]|0;if((Z|0)==(aa|0))ca=aa;else{$=Z;do{Z=$+-12|0;c[_>>2]=Z;LB(Z);$=c[_>>2]|0}while(($|0)!=(aa|0));ca=c[v>>2]|0}tB(ca)}}else{GB(t,j);id(i,t,0,n,0);aa=c[i>>2]|0;$=i+4|0;_=c[$>>2]|0;c[i>>2]=0;c[$>>2]=0;c[o>>2]=aa;aa=o+4|0;Z=c[aa>>2]|0;c[aa>>2]=_;if(Z|0?(oB(Z),Z=c[$>>2]|0,Z|0):0)oB(Z);LB(t)}Z=c[h>>2]|0;if(Z|0){$=h+4|0;_=c[$>>2]|0;if((_|0)==(Z|0))da=Z;else{aa=_;do{_=aa+-12|0;c[$>>2]=_;LB(_);aa=c[$>>2]|0}while((aa|0)!=(Z|0));da=c[h>>2]|0}tB(da)}break}case 1:{c[w>>2]=c[k>>2];Z=w+4|0;aa=c[W>>2]|0;c[Z>>2]=aa;if(aa|0)nB(aa);Bd(i,w,j);aa=c[Z>>2]|0;if(aa|0)oB(aa);aa=a[T>>0]|0;if(((aa<<24>>24<0?c[U>>2]|0:aa&255)|0)==0?(bC(j,0,-1,44918,0)|0)==0:0){GB(y,i);aa=i+12|0;Z=c[aa+4>>2]|0;$=y+12|0;c[$>>2]=c[aa>>2];c[$+4>>2]=Z;cd(u,e,y,j);LB(y);Z=a[T>>0]|0;if(((Z<<24>>24<0?c[U>>2]|0:Z&255)|0)==0?(bC(j,0,-1,44918,0)|0)==0:0){Z=c[u>>2]|0;$=e+32|0;aa=c[$>>2]|0;c[$>>2]=aa+1;$=e+36|0;Cd($,aa,Z);Z=e+12|0;aa=Cc($,c[u>>2]|0)|0;$=e+16|0;_=c[$>>2]|0;do if(_){ea=_;while(1){fa=c[ea+16>>2]|0;if(aa>>>0<fa>>>0){ga=c[ea>>2]|0;if(!ga){ha=67;break}else ia=ga}else{if(fa>>>0>=aa>>>0){ha=72;break}ja=ea+4|0;fa=c[ja>>2]|0;if(!fa){ha=71;break}else ia=fa}ea=ia}if((ha|0)==67){c[h>>2]=ea;ka=ea;la=ea;break}else if((ha|0)==71){c[h>>2]=ea;ka=ea;la=ja;break}else if((ha|0)==72){c[h>>2]=ea;ka=ea;la=h;break}}else{c[h>>2]=$;ka=$;la=$}while(0);$=c[la>>2]|0;if(!$){_=rB(168)|0;c[_+16>>2]=aa;fa=_+160|0;c[fa>>2]=0;c[_+164>>2]=0;HD(_+20|0,0,136)|0;c[_+156>>2]=fa;c[_>>2]=0;c[_+4>>2]=0;c[_+8>>2]=ka;c[la>>2]=_;fa=c[c[Z>>2]>>2]|0;if(!fa)ma=_;else{c[Z>>2]=fa;ma=c[la>>2]|0}gc(c[e+16>>2]|0,ma);fa=e+20|0;c[fa>>2]=(c[fa>>2]|0)+1;na=_}else na=$;$=u+4|0;Dd(na+20|0,$)|0;Ed(h,u,e+24|0,n);_=c[h>>2]|0;fa=h+4|0;ga=c[fa>>2]|0;c[h>>2]=0;c[fa>>2]=0;c[o>>2]=_;_=o+4|0;oa=c[_>>2]|0;c[_>>2]=ga;do if(oa|0){oB(oa);ga=c[fa>>2]|0;if(!ga)break;oB(ga)}while(0);pa=$}else{GB(z,j);id(h,z,1,n,0);fa=c[h>>2]|0;oa=h+4|0;Z=c[oa>>2]|0;c[h>>2]=0;c[oa>>2]=0;c[o>>2]=fa;fa=o+4|0;aa=c[fa>>2]|0;c[fa>>2]=Z;if(aa|0?(oB(aa),aa=c[oa>>2]|0,aa|0):0)oB(aa);LB(z);pa=u+4|0}LB(u+176|0);nc(u+164|0,c[u+168>>2]|0);$b(pa);qa=i}else{GB(x,j);id(h,x,1,n,0);aa=c[h>>2]|0;oa=h+4|0;Z=c[oa>>2]|0;c[h>>2]=0;c[oa>>2]=0;c[o>>2]=aa;aa=o+4|0;fa=c[aa>>2]|0;c[aa>>2]=Z;if(fa|0?(oB(fa),fa=c[oa>>2]|0,fa|0):0)oB(fa);LB(x);qa=i}LB(qa);break}case 2:{c[A>>2]=c[k>>2];fa=A+4|0;oa=c[W>>2]|0;c[fa>>2]=oa;if(oa|0)nB(oa);oa=e+24|0;Fd(u,A,oa,j);Z=c[fa>>2]|0;if(Z|0)oB(Z);Z=a[T>>0]|0;b:do if(((Z<<24>>24<0?c[U>>2]|0:Z&255)|0)==0?(bC(j,0,-1,44918,0)|0)==0:0){fa=e+36|0;aa=Cc(fa,c[u>>2]|0)|0;if((aa|0)==(c[e+28>>2]|0)){c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=0;HB(C,19436,32);id(h,C,2,n,0);ga=c[h>>2]|0;_=h+4|0;ra=c[_>>2]|0;c[h>>2]=0;c[_>>2]=0;c[o>>2]=ga;ga=o+4|0;sa=c[ga>>2]|0;c[ga>>2]=ra;if(sa|0?(oB(sa),sa=c[_>>2]|0,sa|0):0)oB(sa);LB(C);break}do if((c[e+40>>2]|0)!=(aa|0)?(sa=e+72|0,_=c[sa>>2]|0,_|0):0){ra=sa;ga=_;c:while(1){_=ga;while(1){if((c[_+16>>2]|0)>>>0>=aa>>>0)break;ta=c[_+4>>2]|0;if(!ta){ua=ra;break c}else _=ta}ga=c[_>>2]|0;if(!ga){ua=_;break}else ra=_}if((ua|0)!=(sa|0)){if((c[ua+16>>2]|0)>>>0>aa>>>0)break;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;HB(D,19469,34);id(h,D,2,n,0);ra=c[h>>2]|0;ga=h+4|0;ta=c[ga>>2]|0;c[h>>2]=0;c[ga>>2]=0;c[o>>2]=ra;ra=o+4|0;va=c[ra>>2]|0;c[ra>>2]=ta;do if(va|0){oB(va);ta=c[ga>>2]|0;if(!ta)break;oB(ta)}while(0);LB(D);break b}}while(0);ea=e+12|0;ga=e+16|0;va=c[ga>>2]|0;do if(va){sa=va;while(1){ta=c[sa+16>>2]|0;if(aa>>>0<ta>>>0){ra=c[sa>>2]|0;if(!ra){ha=114;break}else wa=ra}else{if(ta>>>0>=aa>>>0){ha=119;break}xa=sa+4|0;ta=c[xa>>2]|0;if(!ta){ha=118;break}else wa=ta}sa=wa}if((ha|0)==114){c[h>>2]=sa;ya=sa;za=sa;break}else if((ha|0)==118){c[h>>2]=sa;ya=sa;za=xa;break}else if((ha|0)==119){c[h>>2]=sa;ya=sa;za=h;break}}else{c[h>>2]=ga;ya=ga;za=ga}while(0);ga=c[za>>2]|0;if(!ga){va=rB(168)|0;c[va+16>>2]=aa;ta=va+160|0;c[ta>>2]=0;c[va+164>>2]=0;HD(va+20|0,0,136)|0;c[va+156>>2]=ta;c[va>>2]=0;c[va+4>>2]=0;c[va+8>>2]=ya;c[za>>2]=va;ta=c[c[ea>>2]>>2]|0;if(!ta)Aa=va;else{c[ea>>2]=ta;Aa=c[za>>2]|0}gc(c[e+16>>2]|0,Aa);ta=e+20|0;c[ta>>2]=(c[ta>>2]|0)+1;Ba=va}else Ba=ga;Gd(E,Ba+20|0);c[G>>2]=c[u>>2];ga=G+4|0;va=u+4|0;c[ga>>2]=c[va>>2];c[ga+4>>2]=c[va+4>>2];c[ga+8>>2]=c[va+8>>2];va=G+16|0;c[G+20>>2]=0;c[G+24>>2]=0;ga=G+20|0;c[va>>2]=ga;ta=c[u+16>>2]|0;ra=u+20|0;if((ta|0)!=(ra|0)){Ca=ga;Da=ta;Ea=ta;while(1){ta=Da+16|0;c[i>>2]=Ca;c[h>>2]=c[i>>2];Hd(va,h,ta,ta)|0;ta=c[Ea+4>>2]|0;if(!ta){Fa=Ea;while(1){Ga=c[Fa+8>>2]|0;if((c[Ga>>2]|0)==(Fa|0)){Ha=Ga;break}else Fa=Ga}}else{Fa=ta;while(1){sa=c[Fa>>2]|0;if(!sa){Ha=Fa;break}else Fa=sa}}if((Ha|0)==(ra|0))break;else{Da=Ha;Ea=Ha}}}Ea=G+28|0;GB(Ea,u+28|0);fd(F,0,G,E,j);LB(Ea);nc(G+16|0,c[ga>>2]|0);Ea=a[T>>0]|0;do if(!((Ea<<24>>24<0?c[U>>2]|0:Ea&255)|0)){if(bC(j,0,-1,44918,0)|0){ha=133;break}Id(fa,aa,c[u+4>>2]|0,c[u+12>>2]|0);Jd(h,F,oa,n);Da=c[h>>2]|0;ra=h+4|0;va=c[ra>>2]|0;c[h>>2]=0;c[ra>>2]=0;c[o>>2]=Da;Da=o+4|0;Ca=c[Da>>2]|0;c[Da>>2]=va;do if(Ca|0){oB(Ca);va=c[ra>>2]|0;if(!va)break;oB(va)}while(0)}else ha=133;while(0);if((ha|0)==133){GB(H,j);id(h,H,2,n,0);aa=c[h>>2]|0;fa=h+4|0;Ea=c[fa>>2]|0;c[h>>2]=0;c[fa>>2]=0;c[o>>2]=aa;aa=o+4|0;ga=c[aa>>2]|0;c[aa>>2]=Ea;do if(ga|0){oB(ga);Ea=c[fa>>2]|0;if(!Ea)break;oB(Ea)}while(0);LB(H)}Ub(F+16|0,c[F+20>>2]|0);bc(F+4|0);$b(E)}else ha=90;while(0);if((ha|0)==90){GB(B,j);id(h,B,2,n,0);oa=c[h>>2]|0;Z=h+4|0;$=c[Z>>2]|0;c[h>>2]=0;c[Z>>2]=0;c[o>>2]=oa;oa=o+4|0;fa=c[oa>>2]|0;c[oa>>2]=$;if(fa|0?(oB(fa),fa=c[Z>>2]|0,fa|0):0)oB(fa);LB(B)}LB(u+28|0);nc(u+16|0,c[u+20>>2]|0);break}case 3:{c[I>>2]=c[k>>2];fa=I+4|0;Z=c[W>>2]|0;c[fa>>2]=Z;if(Z|0)nB(Z);Z=e+24|0;Kd(i,I,Z,h,j);$=c[fa>>2]|0;if($|0)oB($);$=a[T>>0]|0;d:do if((($<<24>>24<0?c[U>>2]|0:$&255)|0)==0?(bC(j,0,-1,44918,0)|0)==0:0){fa=e+36|0;oa=Cc(fa,c[i>>2]|0)|0;ga=i+4|0;Ea=(c[i+8>>2]|0)-(c[ga>>2]|0)|0;aa=(Ea|0)/12|0;if((oa|0)==(c[e+28>>2]|0)){c[K>>2]=0;c[K+4>>2]=0;c[K+8>>2]=0;HB(K,19436,32);id(u,K,3,n,0);ra=c[u>>2]|0;Ca=u+4|0;va=c[Ca>>2]|0;c[u>>2]=0;c[Ca>>2]=0;c[o>>2]=ra;ra=o+4|0;Da=c[ra>>2]|0;c[ra>>2]=va;if(Da|0?(oB(Da),Da=c[Ca>>2]|0,Da|0):0)oB(Da);LB(K);break}do if((c[e+40>>2]|0)!=(oa|0)?(Da=e+72|0,Ca=c[Da>>2]|0,Ca|0):0){va=Da;ra=Ca;e:while(1){Ca=ra;while(1){if((c[Ca+16>>2]|0)>>>0>=oa>>>0)break;ea=c[Ca+4>>2]|0;if(!ea){Ia=va;break e}else Ca=ea}ra=c[Ca>>2]|0;if(!ra){Ia=Ca;break}else va=Ca}if((Ia|0)!=(Da|0)){if((c[Ia+16>>2]|0)>>>0>oa>>>0)break;if((aa|0)!=(Ld(fa,oa)|0)){c[M>>2]=0;c[M+4>>2]=0;c[M+8>>2]=0;HB(M,19504,33);id(u,M,3,n,0);va=c[u>>2]|0;ra=u+4|0;_=c[ra>>2]|0;c[u>>2]=0;c[ra>>2]=0;c[o>>2]=va;va=o+4|0;ea=c[va>>2]|0;c[va>>2]=_;do if(ea|0){oB(ea);_=c[ra>>2]|0;if(!_)break;oB(_)}while(0);LB(M);break d}if((c[h>>2]|0)==1)a[Y>>0]=1;ra=Md(fa,oa)|0;ea=sB(aa>>>0>1073741823?-1:aa<<2)|0;f:do if((Ea|0)>0){Da=c[ga>>2]|0;_=0;while(1){va=c[Da+(_*12|0)>>2]|0;if(((c[Da+(_*12|0)+4>>2]|0)-va>>2|0)!=(ra|0))break;c[ea+(_<<2)>>2]=va;_=_+1|0;if((_|0)>=(aa|0))break f}uB(ea);c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;HB(N,19538,25);id(u,N,3,n,0);_=c[u>>2]|0;Da=u+4|0;Ca=c[Da>>2]|0;c[u>>2]=0;c[Da>>2]=0;c[o>>2]=_;_=o+4|0;va=c[_>>2]|0;c[_>>2]=Ca;do if(va|0){oB(va);Ca=c[Da>>2]|0;if(!Ca)break;oB(Ca)}while(0);LB(N);break d}while(0);ra=u+4|0;c[u+8>>2]=0;Da=u+12|0;c[Da>>2]=0;va=u+8|0;c[ra>>2]=va;Ca=c[i>>2]|0;c[u>>2]=Ca;_=c[(c[Ca>>2]|0)+96>>2]|0;c[O>>2]=c[i+16>>2];c[O+4>>2]=c[i+20>>2];yb[_&31](E,Ca,ea,O);jd(ra,c[va>>2]|0);c[ra>>2]=c[E>>2];Ca=E+4|0;_=c[Ca>>2]|0;c[va>>2]=_;Fa=E+8|0;ta=c[Fa>>2]|0;c[Da>>2]=ta;if(!ta){c[ra>>2]=va;Ja=_}else{c[_+8>>2]=va;c[E>>2]=Ca;c[Ca>>2]=0;c[Fa>>2]=0;Ja=0}jd(E,Ja);uB(ea);kd(E,u,Z,c[h>>2]|0,n);Fa=c[E>>2]|0;Ca=E+4|0;_=c[Ca>>2]|0;c[E>>2]=0;c[Ca>>2]=0;c[o>>2]=Fa;Fa=o+4|0;ra=c[Fa>>2]|0;c[Fa>>2]=_;do if(ra|0){oB(ra);_=c[Ca>>2]|0;if(!_)break;oB(_)}while(0);jd(u+4|0,c[va>>2]|0);break d}}while(0);c[L>>2]=0;c[L+4>>2]=0;c[L+8>>2]=0;HB(L,19008,30);id(u,L,3,n,0);aa=c[u>>2]|0;ga=u+4|0;Ea=c[ga>>2]|0;c[u>>2]=0;c[ga>>2]=0;c[o>>2]=aa;aa=o+4|0;oa=c[aa>>2]|0;c[aa>>2]=Ea;if(oa|0?(oB(oa),oa=c[ga>>2]|0,oa|0):0)oB(oa);LB(L)}else ha=149;while(0);if((ha|0)==149){GB(J,j);id(u,J,3,n,0);Z=c[u>>2]|0;$=u+4|0;oa=c[$>>2]|0;c[u>>2]=0;c[$>>2]=0;c[o>>2]=Z;Z=o+4|0;ga=c[Z>>2]|0;c[Z>>2]=oa;if(ga|0?(oB(ga),ga=c[$>>2]|0,ga|0):0)oB(ga);LB(J)}ga=i+4|0;$=c[ga>>2]|0;if($|0){oa=i+8|0;Z=c[oa>>2]|0;if((Z|0)==($|0))Ka=$;else{Ea=Z;while(1){Z=Ea+-12|0;c[oa>>2]=Z;aa=c[Z>>2]|0;if(!aa)La=Z;else{Z=Ea+-8|0;fa=c[Z>>2]|0;if((fa|0)!=(aa|0))c[Z>>2]=fa+(~((fa+-4-aa|0)>>>2)<<2);tB(aa);La=c[oa>>2]|0}if((La|0)==($|0))break;else Ea=La}Ka=c[ga>>2]|0}tB(Ka)}break}case 4:{c[P>>2]=c[k>>2];Ea=P+4|0;$=c[W>>2]|0;c[Ea>>2]=$;if($|0)nB($);$=e+24|0;oa=Nd(P,$,j)|0;aa=c[Ea>>2]|0;if(aa|0)oB(aa);aa=a[T>>0]|0;if(((aa<<24>>24<0?c[U>>2]|0:aa&255)|0)==0?(bC(j,0,-1,44918,0)|0)==0:0){aa=e+36|0;Ea=Cc(aa,oa)|0;if((Ea|0)==(c[e+28>>2]|0)){c[R>>2]=0;c[R+4>>2]=0;c[R+8>>2]=0;HB(R,19436,32);id(h,R,4,n,0);fa=c[h>>2]|0;Z=h+4|0;Ca=c[Z>>2]|0;c[h>>2]=0;c[Z>>2]=0;c[o>>2]=fa;fa=o+4|0;ra=c[fa>>2]|0;c[fa>>2]=Ca;if(ra|0?(oB(ra),ra=c[Z>>2]|0,ra|0):0)oB(ra);LB(R);break a}ra=h+4|0;c[h+8>>2]=0;Z=h+12|0;c[Z>>2]=0;Ca=h+8|0;c[ra>>2]=Ca;c[h>>2]=oa;do if((c[e+40>>2]|0)!=(Ea|0)?(fa=e+72|0,ea=c[fa>>2]|0,ea|0):0){_=fa;Fa=ea;g:while(1){ea=Fa;while(1){if((c[ea+16>>2]|0)>>>0>=Ea>>>0)break;ta=c[ea+4>>2]|0;if(!ta){Ma=_;break g}else ea=ta}Fa=c[ea>>2]|0;if(!Fa){Ma=ea;break}else _=ea}if((Ma|0)!=(fa|0)){if((c[Ma+16>>2]|0)>>>0>Ea>>>0)break;pb[c[(c[oa>>2]|0)+100>>2]&127](i,oa);jd(ra,c[Ca>>2]|0);c[ra>>2]=c[i>>2];_=i+4|0;Fa=c[_>>2]|0;c[Ca>>2]=Fa;va=i+8|0;ta=c[va>>2]|0;c[Z>>2]=ta;if(!ta){c[ra>>2]=Ca;Na=Fa}else{c[Fa+8>>2]=Ca;c[i>>2]=_;c[_>>2]=0;c[va>>2]=0;Na=0}jd(i,Na)}}while(0);Od(i,h,$,V,n);ra=c[i>>2]|0;Z=i+4|0;ga=c[Z>>2]|0;c[i>>2]=0;c[Z>>2]=0;c[o>>2]=ra;ra=o+4|0;va=c[ra>>2]|0;c[ra>>2]=ga;if(va|0?(oB(va),va=c[Z>>2]|0,va|0):0)oB(va);va=e+12|0;Z=e+16|0;ga=c[Z>>2]|0;do if(ga|0){ra=Z;_=ga;h:while(1){Fa=_;while(1){if((c[Fa+16>>2]|0)>>>0>=Ea>>>0)break;ta=c[Fa+4>>2]|0;if(!ta){Oa=ra;break h}else Fa=ta}_=c[Fa>>2]|0;if(!_){Oa=Fa;break}else ra=Fa}if((Oa|0)==(Z|0))break;if(Ea>>>0<(c[Oa+16>>2]|0)>>>0)break;ra=c[Oa+4>>2]|0;if(!ra){_=Oa;while(1){fa=c[_+8>>2]|0;if((c[fa>>2]|0)==(_|0)){Pa=fa;break}else _=fa}}else{_=ra;while(1){fa=c[_>>2]|0;if(!fa){Pa=_;break}else _=fa}}if((c[va>>2]|0)==(Oa|0))c[va>>2]=Pa;_=e+20|0;c[_>>2]=(c[_>>2]|0)+-1;Pd(ga,Oa);$b(Oa+20|0);tB(Oa)}while(0);Qd(aa,Ea);if(oa|0)ob[c[(c[oa>>2]|0)+4>>2]&511](oa);jd(h+4|0,c[Ca>>2]|0);break a}GB(Q,j);id(h,Q,4,n,0);ga=c[h>>2]|0;va=h+4|0;Z=c[va>>2]|0;c[h>>2]=0;c[va>>2]=0;c[o>>2]=ga;ga=o+4|0;$=c[ga>>2]|0;c[ga>>2]=Z;if($|0?(oB($),$=c[va>>2]|0,$|0):0)oB($);LB(Q);break}case 5:{c[S>>2]=0;c[S+4>>2]=0;c[S+8>>2]=0;HB(S,19564,15);id(h,S,5,n,0);$=c[h>>2]|0;va=h+4|0;Z=c[va>>2]|0;c[h>>2]=0;c[va>>2]=0;c[o>>2]=$;$=o+4|0;ga=c[$>>2]|0;c[$>>2]=Z;if(ga|0?(oB(ga),ga=c[va>>2]|0,ga|0):0)oB(ga);LB(S);break}default:{}}while(0);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;Hl(o,b);break}GB(r,j);id(h,r,5,n,0);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;Hl(h,b);V=c[h+4>>2]|0;if(V|0)oB(V);LB(r)}else ha=5;while(0);if((ha|0)==5){GB(p,j);id(h,p,5,n,0);c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;Hl(h,b);b=c[h+4>>2]|0;if(b|0)oB(b);LB(p)}p=c[o+4>>2]|0;if(p|0)oB(p);p=c[f>>2]|0;if(p|0)oB(p);p=c[k+4>>2]|0;if(!p){LB(j);l=g;return}oB(p);LB(j);l=g;return}function yd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;e=l;l=l+48|0;f=e+24|0;g=e+12|0;h=e;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;HB(f,19063,6);i=(Im(Om(b,f)|0)|0)==3;LB(f);if(!i){RB(d,19587)|0;j=5;l=e;return j|0};c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,19063,6);GB(f,Lm(Om(b,g)|0)|0);LB(g);b=f+11|0;i=a[b>>0]|0;k=f+4|0;m=c[k>>2]|0;if(((i<<24>>24<0?m:i&255)|0)==4)if(!(bC(f,0,-1,19361,4)|0))n=0;else{o=a[b>>0]|0;p=c[k>>2]|0;q=6}else{o=i;p=m;q=6}do if((q|0)==6){if(((o<<24>>24<0?p:o&255)|0)==4){if(!(bC(f,0,-1,19366,4)|0)){n=1;break}r=a[b>>0]|0;s=c[k>>2]|0}else{r=o;s=p}if(((r<<24>>24<0?s:r&255)|0)==9){if(!(bC(f,0,-1,19371,9)|0)){n=2;break}t=a[b>>0]|0;u=c[k>>2]|0}else{t=r;u=s}if(((t<<24>>24<0?u:t&255)|0)==7){if(!(bC(f,0,-1,19055,7)|0)){n=3;break}v=a[b>>0]|0;w=c[k>>2]|0}else{v=t;w=u}if(((v<<24>>24<0?w:v&255)|0)==6){if(!(bC(f,0,-1,19381,6)|0)){n=4;break}x=a[b>>0]|0;y=c[k>>2]|0}else{x=v;y=w}if(((x<<24>>24<0?y:x&255)|0)==7){if(!(bC(f,0,-1,19388,7)|0)){n=5;break}z=a[b>>0]|0;A=c[k>>2]|0}else{z=x;A=y};c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;m=z<<24>>24<0?A:z&255;cC(h,21239,45,m+45|0);VB(h,(a[b>>0]|0)<0?c[f>>2]|0:f,m)|0;m=WB(h,21285)|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;m=d+11|0;if((a[m>>0]|0)<0){a[c[d>>2]>>0]=0;c[d+4>>2]=0}else{a[d>>0]=0;a[m>>0]=0}QB(d,0);c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;LB(g);LB(h);n=5}while(0);LB(f);j=n;l=e;return j|0}function zd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;f=l;l=l+48|0;g=f+24|0;h=f+8|0;i=f;j=f+32|0;c[g>>2]=c[d>>2];k=g+4|0;m=c[d+4>>2]|0;c[k>>2]=m;if(m|0)nB(m);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,19361,4);Sd(g,h,e);LB(h);h=c[k>>2]|0;if(h|0)oB(h);h=a[e+11>>0]|0;if(((h<<24>>24<0?c[e+4>>2]|0:h&255)|0)==0?(bC(e,0,-1,44918,0)|0)==0:0){c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19580,6);h=Om(d,j)|0;c[i>>2]=c[h>>2];d=i+4|0;k=c[h+4>>2]|0;c[d>>2]=k;if(k|0)nB(k);Me(b,i,e);e=c[d>>2]|0;if(e|0)oB(e);LB(j);l=f;return}c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;l=f;return}function Ad(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;e=l;l=l+48|0;f=e+36|0;g=e+24|0;h=e+16|0;i=e;j=g+4|0;c[j>>2]=0;k=g+8|0;c[k>>2]=0;m=g+4|0;c[g>>2]=m;ld(g);tm(h,19361);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,19063,6);n=md(g,f,i)|0;o=c[n>>2]|0;if(!o){p=rB(36)|0;q=p+16|0;c[q>>2]=c[i>>2];c[q+4>>2]=c[i+4>>2];c[q+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Qk(p+28|0);q=c[f>>2]|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=q;c[n>>2]=p;q=c[c[g>>2]>>2]|0;if(!q)r=p;else{c[g>>2]=q;r=c[n>>2]|0}gc(c[j>>2]|0,r);c[k>>2]=(c[k>>2]|0)+1;s=p}else s=o;o=c[h>>2]|0;p=h+4|0;r=c[p>>2]|0;c[h>>2]=0;c[p>>2]=0;c[s+28>>2]=o;o=s+32|0;s=c[o>>2]|0;c[o>>2]=r;if(s|0)oB(s);LB(i);s=c[p>>2]|0;if(s|0)oB(s);Le(h,b);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,19070,6);b=md(g,f,i)|0;s=c[b>>2]|0;if(!s){p=rB(36)|0;r=p+16|0;c[r>>2]=c[i>>2];c[r+4>>2]=c[i+4>>2];c[r+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;Qk(p+28|0);r=c[f>>2]|0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=r;c[b>>2]=p;r=c[c[g>>2]>>2]|0;if(!r)t=p;else{c[g>>2]=r;t=c[b>>2]|0}gc(c[j>>2]|0,t);c[k>>2]=(c[k>>2]|0)+1;u=p}else u=s;s=c[h>>2]|0;p=h+4|0;k=c[p>>2]|0;c[h>>2]=0;c[p>>2]=0;c[u+28>>2]=s;s=u+32|0;u=c[s>>2]|0;c[s>>2]=k;if(u|0)oB(u);LB(i);i=c[p>>2]|0;if(!i){od(g,d);Bm(a,g);v=c[m>>2]|0;pd(g,v);l=e;return}oB(i);od(g,d);Bm(a,g);v=c[m>>2]|0;pd(g,v);l=e;return}function Bd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;f=l;l=l+48|0;g=f+24|0;h=f+8|0;i=f;j=f+32|0;c[g>>2]=c[d>>2];k=g+4|0;m=c[d+4>>2]|0;c[k>>2]=m;if(m|0)nB(m);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,19366,4);Sd(g,h,e);LB(h);h=c[k>>2]|0;if(h|0)oB(h);h=a[e+11>>0]|0;if(((h<<24>>24<0?c[e+4>>2]|0:h&255)|0)==0?(bC(e,0,-1,44918,0)|0)==0:0){c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19580,6);h=Om(d,j)|0;c[i>>2]=c[h>>2];d=i+4|0;k=c[h+4>>2]|0;c[d>>2]=k;if(k|0)nB(k);Je(b,i,e);e=c[d>>2]|0;if(e|0)oB(e);LB(j);l=f;return};c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;l=f;return}function Cd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0;e=l;l=l+16|0;f=e;g=d;if(!d){l=e;return}h=a+20|0;i=a+24|0;j=c[i>>2]|0;if(j|0){k=i;m=j;a:while(1){j=m;while(1){if((c[j+16>>2]|0)>>>0>=d>>>0)break;n=c[j+4>>2]|0;if(!n){o=k;break a}else j=n}m=c[j>>2]|0;if(!m){o=j;break}else k=j}if((o|0)!=(i|0)?(c[o+16>>2]|0)>>>0<=d>>>0:0){l=e;return}}o=a+8|0;k=a+12|0;m=c[k>>2]|0;n=(m|0)==0;do if(!n){p=k;q=m;b:while(1){r=q;while(1){if((c[r+16>>2]|0)>>>0>=b>>>0)break;s=c[r+4>>2]|0;if(!s){t=p;break b}else r=s}q=c[r>>2]|0;if(!q){t=r;break}else p=r}if((t|0)!=(k|0)?(c[t+16>>2]|0)>>>0<=b>>>0:0){p=xe(Gr(xe(Er(xe(40212,20657,31)|0,b)|0,20689,12)|0,d)|0,20702,26)|0;q=c[k>>2]|0;do if(q){j=q;while(1){s=c[j+16>>2]|0;if(s>>>0>b>>>0){u=c[j>>2]|0;if(!u){v=20;break}else w=u}else{if(s>>>0>=b>>>0){v=25;break}x=j+4|0;s=c[x>>2]|0;if(!s){v=24;break}else w=s}j=w}if((v|0)==20){c[f>>2]=j;y=j;z=j;break}else if((v|0)==24){c[f>>2]=j;y=j;z=x;break}else if((v|0)==25){c[f>>2]=j;y=j;z=f;break}}else{c[f>>2]=k;y=k;z=k}while(0);q=c[z>>2]|0;if(q|0){A=q;B=A+20|0;C=c[B>>2]|0;D=Gr(p,C)|0;E=xe(D,28328,1)|0;F=c[E>>2]|0;G=F+-12|0;H=c[G>>2]|0;I=E+H|0;qr(f,I);J=Xs(f,40916)|0;K=c[J>>2]|0;L=K+28|0;M=c[L>>2]|0;N=zb[M&63](J,10)|0;Ys(f);Hr(E,N)|0;vr(E)|0;O=za(8)|0;yB(O,20729);Xa(O|0,3096,252)}q=rB(24)|0;c[q+16>>2]=b;c[q+20>>2]=0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=y;c[z>>2]=q;r=c[c[o>>2]>>2]|0;if(!r)P=q;else{c[o>>2]=r;P=c[z>>2]|0}gc(c[a+12>>2]|0,P);r=a+16|0;c[r>>2]=(c[r>>2]|0)+1;A=q;B=A+20|0;C=c[B>>2]|0;D=Gr(p,C)|0;E=xe(D,28328,1)|0;F=c[E>>2]|0;G=F+-12|0;H=c[G>>2]|0;I=E+H|0;qr(f,I);J=Xs(f,40916)|0;K=c[J>>2]|0;L=K+28|0;M=c[L>>2]|0;N=zb[M&63](J,10)|0;Ys(f);Hr(E,N)|0;vr(E)|0;O=za(8)|0;yB(O,20729);Xa(O|0,3096,252)}if(!n){q=m;while(1){r=c[q+16>>2]|0;if(r>>>0>b>>>0){s=c[q>>2]|0;if(!s){v=35;break}else Q=s}else{if(r>>>0>=b>>>0){v=40;break}R=q+4|0;r=c[R>>2]|0;if(!r){v=39;break}else Q=r}q=Q}if((v|0)==35){c[f>>2]=q;S=q;T=f;U=q;break}else if((v|0)==39){c[f>>2]=q;S=q;T=f;U=R;break}else if((v|0)==40){c[f>>2]=q;S=q;T=f;U=f;break}}else{V=f;v=41}}else{V=f;v=41}while(0);if((v|0)==41){c[f>>2]=k;S=k;T=V;U=k}k=c[U>>2]|0;if(!k){V=rB(24)|0;c[V+16>>2]=b;c[V+20>>2]=0;c[V>>2]=0;c[V+4>>2]=0;c[V+8>>2]=S;c[U>>2]=V;S=c[c[o>>2]>>2]|0;if(!S)W=V;else{c[o>>2]=S;W=c[U>>2]|0}gc(c[a+12>>2]|0,W);W=a+16|0;c[W>>2]=(c[W>>2]|0)+1;X=V}else X=k;c[X+20>>2]=g;X=c[i>>2]|0;do if(X){k=X;while(1){V=c[k+16>>2]|0;if(V>>>0>d>>>0){W=c[k>>2]|0;if(!W){v=49;break}else Y=W}else{if(V>>>0>=d>>>0){v=54;break}Z=k+4|0;V=c[Z>>2]|0;if(!V){v=53;break}else Y=V}k=Y}if((v|0)==49){c[f>>2]=k;_=k;$=k;break}else if((v|0)==53){c[f>>2]=k;_=k;$=Z;break}else if((v|0)==54){c[f>>2]=k;_=k;$=f;break}}else{c[f>>2]=i;_=i;$=i}while(0);i=c[$>>2]|0;if(!i){Z=rB(24)|0;c[Z+16>>2]=g;c[Z+20>>2]=0;c[Z>>2]=0;c[Z+4>>2]=0;c[Z+8>>2]=_;c[$>>2]=Z;_=c[c[h>>2]>>2]|0;if(!_)aa=Z;else{c[h>>2]=_;aa=c[$>>2]|0}gc(c[a+24>>2]|0,aa);aa=a+28|0;c[aa>>2]=(c[aa>>2]|0)+1;ba=Z}else ba=i;c[ba+20>>2]=b;ba=rB(28)|0;c[ba+4>>2]=0;c[ba+8>>2]=0;c[ba>>2]=3448;i=ba+12|0;ye(i,d);d=i;i=ba;ba=a+68|0;Z=a+72|0;aa=c[Z>>2]|0;do if(aa){$=aa;while(1){_=c[$+16>>2]|0;if(_>>>0>b>>>0){h=c[$>>2]|0;if(!h){v=63;break}else ca=h}else{if(_>>>0>=b>>>0){v=68;break}da=$+4|0;_=c[da>>2]|0;if(!_){v=67;break}else ca=_}$=ca}if((v|0)==63){c[f>>2]=$;ea=$;fa=$;break}else if((v|0)==67){c[f>>2]=$;ea=$;fa=da;break}else if((v|0)==68){c[f>>2]=$;ea=$;fa=f;break}}else{c[f>>2]=Z;ea=Z;fa=Z}while(0);Z=c[fa>>2]|0;if(!Z){f=rB(28)|0;c[f+16>>2]=b;c[f+20>>2]=0;c[f+24>>2]=0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=ea;c[fa>>2]=f;ea=c[c[ba>>2]>>2]|0;if(!ea)ga=f;else{c[ba>>2]=ea;ga=c[fa>>2]|0}gc(c[a+72>>2]|0,ga);ga=a+76|0;c[ga>>2]=(c[ga>>2]|0)+1;ha=f}else ha=Z;c[ha+20>>2]=d;d=ha+24|0;ha=c[d>>2]|0;c[d>>2]=i;if(!ha){l=e;return}oB(ha);l=e;return}function Dd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;d=l;l=l+16|0;e=d+12|0;f=d+8|0;g=d+4|0;h=d;MB(a,b)|0;MB(a+12|0,b+12|0)|0;MB(a+24|0,b+24|0)|0;MB(a+36|0,b+36|0)|0;MB(a+48|0,b+48|0)|0;MB(a+60|0,b+60|0)|0;c[a+72>>2]=c[b+72>>2];if((a|0)==(b|0)){i=b+88|0;j=c[i+4>>2]|0;k=a+88|0;c[k>>2]=c[i>>2];c[k+4>>2]=j;c[a+120>>2]=c[b+120>>2];m=h;n=g;l=d;return a|0}else{cc(a+76|0,c[b+76>>2]|0,c[b+80>>2]|0);j=b+88|0;k=c[j+4>>2]|0;i=a+88|0;c[i>>2]=c[j>>2];c[i+4>>2]=k;ve(a+96|0,c[b+96>>2]|0,c[b+100>>2]|0);cc(a+108|0,c[b+108>>2]|0,c[b+112>>2]|0);c[a+120>>2]=c[b+120>>2];we(a+124|0,c[b+124>>2]|0,c[b+128>>2]|0);c[g>>2]=c[b+136>>2];c[h>>2]=b+140;c[f>>2]=c[g>>2];c[e>>2]=c[h>>2];fc(a+136|0,f,e);m=h;n=g;l=d;return a|0}return 0}function Ed(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=l;l=l+48|0;g=f+44|0;h=f+32|0;i=f+24|0;j=f;k=f+12|0;if(!(c[b>>2]|0)){c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,20421,21);id(a,k,1,e,0);LB(k);l=f;return}k=h+4|0;c[k>>2]=0;m=h+8|0;c[m>>2]=0;n=h+4|0;c[h>>2]=n;ld(h);tm(i,19366);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19063,6);o=md(h,g,j)|0;p=c[o>>2]|0;if(!p){q=rB(36)|0;r=q+16|0;c[r>>2]=c[j>>2];c[r+4>>2]=c[j+4>>2];c[r+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Qk(q+28|0);r=c[g>>2]|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=r;c[o>>2]=q;r=c[c[h>>2]>>2]|0;if(!r)s=q;else{c[h>>2]=r;s=c[o>>2]|0}gc(c[k>>2]|0,s);c[m>>2]=(c[m>>2]|0)+1;t=q}else t=p;p=c[i>>2]|0;q=i+4|0;s=c[q>>2]|0;c[i>>2]=0;c[q>>2]=0;c[t+28>>2]=p;p=t+32|0;t=c[p>>2]|0;c[p>>2]=s;if(t|0)oB(t);LB(j);t=c[q>>2]|0;if(t|0)oB(t);ne(i,b,d);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19070,6);d=md(h,g,j)|0;b=c[d>>2]|0;if(!b){t=rB(36)|0;q=t+16|0;c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];c[q+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Qk(t+28|0);q=c[g>>2]|0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=q;c[d>>2]=t;q=c[c[h>>2]>>2]|0;if(!q)u=t;else{c[h>>2]=q;u=c[d>>2]|0}gc(c[k>>2]|0,u);c[m>>2]=(c[m>>2]|0)+1;v=t}else v=b;b=c[i>>2]|0;t=i+4|0;m=c[t>>2]|0;c[i>>2]=0;c[t>>2]=0;c[v+28>>2]=b;b=v+32|0;v=c[b>>2]|0;c[b>>2]=m;if(v|0)oB(v);LB(j);j=c[t>>2]|0;if(j|0)oB(j);od(h,e);Bm(a,h);pd(h,c[n>>2]|0);l=f;return}function Fd(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;g=l;l=l+48|0;h=g+24|0;i=g+8|0;j=g;k=g+32|0;c[h>>2]=c[d>>2];m=h+4|0;n=c[d+4>>2]|0;c[m>>2]=n;if(n|0)nB(n);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,19371,9);Sd(h,i,f);LB(i);i=c[m>>2]|0;if(i|0)oB(i);i=a[f+11>>0]|0;if(((i<<24>>24<0?c[f+4>>2]|0:i&255)|0)==0?(bC(f,0,-1,44918,0)|0)==0:0){c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,19580,6);i=Om(d,k)|0;c[j>>2]=c[i>>2];d=j+4|0;m=c[i+4>>2]|0;c[d>>2]=m;if(m|0)nB(m);le(b,j,e,f);f=c[d>>2]|0;if(f|0)oB(f);LB(k);l=g;return}c[b+20>>2]=0;c[b+24>>2]=0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=b+20;k=b+28|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;l=g;return}function Gd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;d=l;l=l+16|0;e=d+4|0;f=d;GB(a,b);GB(a+12|0,b+12|0);GB(a+24|0,b+24|0);GB(a+36|0,b+36|0);GB(a+48|0,b+48|0);GB(a+60|0,b+60|0);c[a+72>>2]=c[b+72>>2];_b(a+76|0,b+76|0);g=b+88|0;h=c[g+4>>2]|0;i=a+88|0;c[i>>2]=c[g>>2];c[i+4>>2]=h;ie(a+96|0,b+96|0);_b(a+108|0,b+108|0);c[a+120>>2]=c[b+120>>2];je(a+124|0,b+124|0);h=a+136|0;c[a+140>>2]=0;c[a+144>>2]=0;i=a+140|0;c[h>>2]=i;a=c[b+136>>2]|0;g=b+140|0;if((a|0)==(g|0)){l=d;return}b=i;i=a;j=a;while(1){a=i+16|0;c[f>>2]=b;c[e>>2]=c[f>>2];Nc(h,e,a,a)|0;a=c[j+4>>2]|0;if(!a){k=j;while(1){m=c[k+8>>2]|0;if((c[m>>2]|0)==(k|0)){n=m;break}else k=m}}else{k=a;while(1){m=c[k>>2]|0;if(!m){n=k;break}else k=m}}if((n|0)==(g|0))break;else{i=n;j=n}}l=d;return}function Hd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;g=f+8|0;h=f+4|0;i=f;c[i>>2]=c[b>>2];c[g>>2]=c[i>>2];i=he(a,g,h,d)|0;d=c[i>>2]|0;if(d|0){j=d;l=f;return j|0}d=rB(32)|0;GB(d+16|0,e);c[d+28>>2]=c[e+12>>2];e=c[h>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=e;c[i>>2]=d;e=c[c[a>>2]>>2]|0;if(!e)k=d;else{c[a>>2]=e;k=c[i>>2]|0}gc(c[a+4>>2]|0,k);k=a+8|0;c[k>>2]=(c[k>>2]|0)+1;j=d;l=f;return j|0}function Id(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0;f=l;l=l+16|0;g=f;if((c[a+4>>2]|0)==(b|0)){l=f;return}h=a+32|0;i=a+36|0;j=c[i>>2]|0;do if(j){k=j;while(1){m=c[k+16>>2]|0;if(m>>>0>b>>>0){n=c[k>>2]|0;if(!n){o=5;break}else p=n}else{if(m>>>0>=b>>>0){o=10;break}q=k+4|0;m=c[q>>2]|0;if(!m){o=9;break}else p=m}k=p}if((o|0)==5){c[g>>2]=k;r=k;s=k;break}else if((o|0)==9){c[g>>2]=k;r=k;s=q;break}else if((o|0)==10){c[g>>2]=k;r=k;s=g;break}}else{c[g>>2]=i;r=i;s=i}while(0);if(!(c[s>>2]|0)){i=rB(20)|0;c[i+16>>2]=b;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=r;c[s>>2]=i;r=c[c[h>>2]>>2]|0;if(!r)t=i;else{c[h>>2]=r;t=c[s>>2]|0}gc(c[a+36>>2]|0,t);t=a+40|0;c[t>>2]=(c[t>>2]|0)+1}t=a+44|0;s=a+48|0;r=c[s>>2]|0;do if(r){h=r;while(1){i=c[h+16>>2]|0;if(i>>>0>b>>>0){q=c[h>>2]|0;if(!q){o=19;break}else u=q}else{if(i>>>0>=b>>>0){o=24;break}v=h+4|0;i=c[v>>2]|0;if(!i){o=23;break}else u=i}h=u}if((o|0)==19){c[g>>2]=h;w=h;x=h;break}else if((o|0)==23){c[g>>2]=h;w=h;x=v;break}else if((o|0)==24){c[g>>2]=h;w=h;x=g;break}}else{c[g>>2]=s;w=s;x=s}while(0);s=c[x>>2]|0;if(!s){v=rB(24)|0;c[v+16>>2]=b;c[v+20>>2]=0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=w;c[x>>2]=v;w=c[c[t>>2]>>2]|0;if(!w)y=v;else{c[t>>2]=w;y=c[x>>2]|0}gc(c[a+48>>2]|0,y);y=a+52|0;c[y>>2]=(c[y>>2]|0)+1;z=v}else z=s;c[z+20>>2]=d;d=a+56|0;z=a+60|0;s=c[z>>2]|0;do if(s){v=s;while(1){y=c[v+16>>2]|0;if(y>>>0>b>>>0){x=c[v>>2]|0;if(!x){o=33;break}else A=x}else{if(y>>>0>=b>>>0){o=38;break}B=v+4|0;y=c[B>>2]|0;if(!y){o=37;break}else A=y}v=A}if((o|0)==33){c[g>>2]=v;C=v;D=v;break}else if((o|0)==37){c[g>>2]=v;C=v;D=B;break}else if((o|0)==38){c[g>>2]=v;C=v;D=g;break}}else{c[g>>2]=z;C=z;D=z}while(0);z=c[D>>2]|0;if(!z){g=rB(24)|0;c[g+16>>2]=b;c[g+20>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=C;c[D>>2]=g;C=c[c[d>>2]>>2]|0;if(!C)E=g;else{c[d>>2]=C;E=c[D>>2]|0}gc(c[a+60>>2]|0,E);E=a+64|0;c[E>>2]=(c[E>>2]|0)+1;F=g}else F=z;c[F+20>>2]=e;l=f;return}function Jd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;f=l;l=l+48|0;g=f+44|0;h=f+32|0;i=f+24|0;j=f;k=f+12|0;if((c[b+4>>2]|0)==(c[b+8>>2]|0)){c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;HB(k,19907,26);id(a,k,2,e,0);LB(k);l=f;return}k=h+4|0;c[k>>2]=0;m=h+8|0;c[m>>2]=0;n=h+4|0;c[h>>2]=n;ld(h);tm(i,19371);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19063,6);o=md(h,g,j)|0;p=c[o>>2]|0;if(!p){q=rB(36)|0;r=q+16|0;c[r>>2]=c[j>>2];c[r+4>>2]=c[j+4>>2];c[r+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Qk(q+28|0);r=c[g>>2]|0;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=r;c[o>>2]=q;r=c[c[h>>2]>>2]|0;if(!r)s=q;else{c[h>>2]=r;s=c[o>>2]|0}gc(c[k>>2]|0,s);c[m>>2]=(c[m>>2]|0)+1;t=q}else t=p;p=c[i>>2]|0;q=i+4|0;s=c[q>>2]|0;c[i>>2]=0;c[q>>2]=0;c[t+28>>2]=p;p=t+32|0;t=c[p>>2]|0;c[p>>2]=s;if(t|0)oB(t);LB(j);t=c[q>>2]|0;if(t|0)oB(t);_d(i,b,d);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19070,6);d=md(h,g,j)|0;b=c[d>>2]|0;if(!b){t=rB(36)|0;q=t+16|0;c[q>>2]=c[j>>2];c[q+4>>2]=c[j+4>>2];c[q+8>>2]=c[j+8>>2];c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;Qk(t+28|0);q=c[g>>2]|0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=q;c[d>>2]=t;q=c[c[h>>2]>>2]|0;if(!q)u=t;else{c[h>>2]=q;u=c[d>>2]|0}gc(c[k>>2]|0,u);c[m>>2]=(c[m>>2]|0)+1;v=t}else v=b;b=c[i>>2]|0;t=i+4|0;m=c[t>>2]|0;c[i>>2]=0;c[t>>2]=0;c[v+28>>2]=b;b=v+32|0;v=c[b>>2]|0;c[b>>2]=m;if(v|0)oB(v);LB(j);j=c[t>>2]|0;if(j|0)oB(j);od(h,e);Bm(a,h);pd(h,c[n>>2]|0);l=f;return}function Kd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0;h=l;l=l+48|0;i=h+24|0;j=h+8|0;k=h;m=h+32|0;c[i>>2]=c[d>>2];n=i+4|0;o=c[d+4>>2]|0;c[n>>2]=o;if(o|0)nB(o);c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19055,7);Sd(i,j,g);LB(j);j=c[n>>2]|0;if(j|0)oB(j);j=a[g+11>>0]|0;if(((j<<24>>24<0?c[g+4>>2]|0:j&255)|0)==0?(bC(g,0,-1,44918,0)|0)==0:0){c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,19580,6);j=Om(d,m)|0;c[k>>2]=c[j>>2];d=k+4|0;n=c[j+4>>2]|0;c[d>>2]=n;if(n|0)nB(n);Td(b,k,e,f,g);g=c[d>>2]|0;if(g|0)oB(g);LB(m);l=h;return};c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[b+20>>2]=0;l=h;return}function Ld(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+48|0;a=c[d>>2]|0;if(!a){e=0;return e|0}else{f=d;g=a}a:while(1){h=g;while(1){if((c[h+16>>2]|0)>>>0>=b>>>0)break;i=c[h+4>>2]|0;if(!i){j=f;break a}else h=i}g=c[h>>2]|0;if(!g){j=h;break}else f=h}if((j|0)==(d|0)){e=0;return e|0}if((c[j+16>>2]|0)>>>0>b>>>0){e=0;return e|0}else k=a;while(1){a=c[k+16>>2]|0;if(a>>>0>b>>>0){j=c[k>>2]|0;if(!j)break;else l=j}else{if(a>>>0>=b>>>0){m=13;break}a=c[k+4>>2]|0;if(!a)break;else l=a}k=l}if((m|0)==13?k|0:0){e=c[k+20>>2]|0;return e|0}e=za(8)|0;yB(e,18831);c[e>>2]=17228;Xa(e|0,3128,252);return 0}function Md(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+60|0;a=c[d>>2]|0;if(!a){e=0;return e|0}else{f=d;g=a}a:while(1){h=g;while(1){if((c[h+16>>2]|0)>>>0>=b>>>0)break;i=c[h+4>>2]|0;if(!i){j=f;break a}else h=i}g=c[h>>2]|0;if(!g){j=h;break}else f=h}if((j|0)==(d|0)){e=0;return e|0}if((c[j+16>>2]|0)>>>0>b>>>0){e=0;return e|0}else k=a;while(1){a=c[k+16>>2]|0;if(a>>>0>b>>>0){j=c[k>>2]|0;if(!j)break;else l=j}else{if(a>>>0>=b>>>0){m=13;break}a=c[k+4>>2]|0;if(!a)break;else l=a}k=l}if((m|0)==13?k|0:0){e=c[k+20>>2]|0;return e|0}e=za(8)|0;yB(e,18831);c[e>>2]=17228;Xa(e|0,3128,252);return 0}function Nd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;f=l;l=l+48|0;g=f+24|0;h=f;i=f+32|0;j=f+12|0;c[g>>2]=c[b>>2];k=g+4|0;m=c[b+4>>2]|0;c[k>>2]=m;if(m|0)nB(m);c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;HB(h,19381,6);Sd(g,h,e);LB(h);h=c[k>>2]|0;if(h|0)oB(h);h=a[e+11>>0]|0;if((h<<24>>24<0?c[e+4>>2]|0:h&255)|0){n=0;l=f;return n|0}if(bC(e,0,-1,44918,0)|0){n=0;l=f;return n|0}e=c[(c[d>>2]|0)+12>>2]|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,19580,6);h=Om(b,i)|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;HB(j,19039,6);b=Km(Om(h,j)|0)|0;h=zb[e&63](d,b)|0;LB(j);LB(i);n=h;l=f;return n|0}function Od(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0;g=l;l=l+64|0;h=g+60|0;i=g+48|0;j=g+24|0;k=g+16|0;m=g;n=g+40|0;o=i+4|0;c[o>>2]=0;p=i+8|0;c[p>>2]=0;q=i+4|0;c[i>>2]=q;ld(i);r=j+4|0;c[r>>2]=0;s=j+8|0;c[s>>2]=0;t=j+4|0;c[j>>2]=t;Il(k,+((zb[c[(c[d>>2]|0)+8>>2]&63](d,c[b>>2]|0)|0)>>>0));c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,19039,6);u=md(j,h,m)|0;v=c[u>>2]|0;if(!v){w=rB(36)|0;x=w+16|0;c[x>>2]=c[m>>2];c[x+4>>2]=c[m+4>>2];c[x+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;Qk(w+28|0);x=c[h>>2]|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=x;c[u>>2]=w;x=c[c[j>>2]>>2]|0;if(!x)y=w;else{c[j>>2]=x;y=c[u>>2]|0}gc(c[r>>2]|0,y);c[s>>2]=(c[s>>2]|0)+1;z=w}else z=v;v=c[k>>2]|0;w=k+4|0;y=c[w>>2]|0;c[k>>2]=0;c[w>>2]=0;c[z+28>>2]=v;v=z+32|0;z=c[v>>2]|0;c[v>>2]=y;if(z|0)oB(z);LB(m);z=c[w>>2]|0;if(z|0)oB(z);ub[c[(c[d>>2]|0)+16>>2]&15](n,d,c[b>>2]|0);nd(k,b+4|0,c[n>>2]|0,e);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,19046,8);e=md(j,h,m)|0;b=c[e>>2]|0;if(!b){d=rB(36)|0;z=d+16|0;c[z>>2]=c[m>>2];c[z+4>>2]=c[m+4>>2];c[z+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;Qk(d+28|0);z=c[h>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=z;c[e>>2]=d;z=c[c[j>>2]>>2]|0;if(!z)A=d;else{c[j>>2]=z;A=c[e>>2]|0}gc(c[r>>2]|0,A);c[s>>2]=(c[s>>2]|0)+1;B=d}else B=b;b=c[k>>2]|0;d=k+4|0;s=c[d>>2]|0;c[k>>2]=0;c[d>>2]=0;c[B+28>>2]=b;b=B+32|0;B=c[b>>2]|0;c[b>>2]=s;if(B|0)oB(B);LB(m);B=c[d>>2]|0;if(B|0)oB(B);B=c[n+4>>2]|0;if(B|0)oB(B);tm(k,19381);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,19063,6);B=md(i,h,m)|0;n=c[B>>2]|0;if(!n){d=rB(36)|0;s=d+16|0;c[s>>2]=c[m>>2];c[s+4>>2]=c[m+4>>2];c[s+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;Qk(d+28|0);s=c[h>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=s;c[B>>2]=d;s=c[c[i>>2]>>2]|0;if(!s)C=d;else{c[i>>2]=s;C=c[B>>2]|0}gc(c[o>>2]|0,C);c[p>>2]=(c[p>>2]|0)+1;D=d}else D=n;n=c[k>>2]|0;d=k+4|0;C=c[d>>2]|0;c[k>>2]=0;c[d>>2]=0;c[D+28>>2]=n;n=D+32|0;D=c[n>>2]|0;c[n>>2]=C;if(D|0)oB(D);LB(m);D=c[d>>2]|0;if(D|0)oB(D);Bm(k,j);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,19070,6);D=md(i,h,m)|0;d=c[D>>2]|0;if(!d){C=rB(36)|0;n=C+16|0;c[n>>2]=c[m>>2];c[n+4>>2]=c[m+4>>2];c[n+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;Qk(C+28|0);n=c[h>>2]|0;c[C>>2]=0;c[C+4>>2]=0;c[C+8>>2]=n;c[D>>2]=C;n=c[c[i>>2]>>2]|0;if(!n)E=C;else{c[i>>2]=n;E=c[D>>2]|0}gc(c[o>>2]|0,E);c[p>>2]=(c[p>>2]|0)+1;F=C}else F=d;d=c[k>>2]|0;C=k+4|0;p=c[C>>2]|0;c[k>>2]=0;c[C>>2]=0;c[F+28>>2]=d;d=F+32|0;F=c[d>>2]|0;c[d>>2]=p;if(F|0)oB(F);LB(m);m=c[C>>2]|0;if(!m){od(i,f);Bm(a,i);G=c[t>>2]|0;pd(j,G);H=c[q>>2]|0;pd(i,H);l=g;return}oB(m);od(i,f);Bm(a,i);G=c[t>>2]|0;pd(j,G);H=c[q>>2]|0;pd(i,H);l=g;return} function cf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>2)+1|0;if(g>>>0>1073741823){Az(a);h=c[a>>2]|0;i=c[d>>2]|0}else{h=f;i=e}e=a+8|0;f=(c[e>>2]|0)-h|0;j=f>>1;k=f>>2>>>0<536870911?(j>>>0<g>>>0?g:j):1073741823;j=i-h>>2;do if(k)if(k>>>0>1073741823){g=za(4)|0;AD(g);Xa(g|0,3080,250)}else{l=rB(k<<2)|0;break}else l=0;while(0);g=l+(j<<2)|0;c[g>>2]=c[b>>2];b=i-h|0;i=g+(0-(b>>2)<<2)|0;if((b|0)>0)MD(i|0,h|0,b|0)|0;c[a>>2]=i;c[d>>2]=g+4;c[e>>2]=l+(k<<2);if(!h)return;tB(h);return}function df(b,d){b=b|0;d=d|0;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,q=0;e=b+32|0;MB(e,d)|0;d=b+44|0;c[d>>2]=0;f=b+48|0;g=c[f>>2]|0;if(g&8|0){h=a[e+11>>0]|0;if(h<<24>>24<0){i=c[e>>2]|0;j=i;k=i;l=i+(c[b+36>>2]|0)|0}else{j=e;k=e;l=e+(h&255)|0}c[d>>2]=l;c[b+8>>2]=j;c[b+12>>2]=k;c[b+16>>2]=l}if(!(g&16))return;g=e+11|0;l=a[g>>0]|0;if(l<<24>>24<0){k=c[b+36>>2]|0;c[d>>2]=(c[e>>2]|0)+k;m=(c[b+40>>2]&2147483647)+-1|0;n=k}else{k=l&255;c[d>>2]=e+k;m=10;n=k}SB(e,m,0);m=a[g>>0]|0;if(m<<24>>24<0){g=c[e>>2]|0;o=g;p=c[b+36>>2]|0;q=g}else{o=e;p=m&255;q=e}e=b+24|0;c[e>>2]=q;c[b+20>>2]=q;c[b+28>>2]=o+p;if(!(c[f>>2]&3))return;c[e>>2]=q+n;return}function ef(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=c[d+48>>2]|0;if(e&16|0){f=d+44|0;g=c[f>>2]|0;h=c[d+24>>2]|0;if(g>>>0<h>>>0){c[f>>2]=h;i=h}else i=g;g=c[d+20>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;h=i-g|0;if(h>>>0<=4294967279)if(h>>>0<11){a[b+11>>0]=h;j=b}else k=8;else{EB(b);k=8}if((k|0)==8){f=h+16&-16;l=rB(f)|0;c[b>>2]=l;c[b+8>>2]=f|-2147483648;c[b+4>>2]=h;j=l}if((g|0)==(i|0))m=j;else{l=j;f=g;while(1){a[l>>0]=a[f>>0]|0;f=f+1|0;if((f|0)==(i|0))break;else l=l+1|0}m=j+h|0}a[m>>0]=0;return}if(!(e&8)){c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;return}e=c[d+8>>2]|0;m=c[d+16>>2]|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;d=m-e|0;if(d>>>0<=4294967279)if(d>>>0<11){a[b+11>>0]=d;n=b}else k=18;else{EB(b);k=18}if((k|0)==18){k=d+16&-16;h=rB(k)|0;c[b>>2]=h;c[b+8>>2]=k|-2147483648;c[b+4>>2]=d;n=h}if((e|0)==(m|0))o=n;else{h=n;b=e;while(1){a[h>>0]=a[b>>0]|0;b=b+1|0;if((b|0)==(m|0))break;else h=h+1|0}o=n+d|0}a[o>>0]=0;return}function ff(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[a>>2]=0;d=a+4|0;c[d>>2]=0;c[a+8>>2]=0;e=b+4|0;f=(c[e>>2]|0)-(c[b>>2]|0)|0;g=f>>2;if(!g)return;if(g>>>0>1073741823){Az(a);h=za(4)|0;AD(h);Xa(h|0,3080,250)}h=rB(f)|0;c[d>>2]=h;c[a>>2]=h;c[a+8>>2]=h+(g<<2);g=c[b>>2]|0;b=(c[e>>2]|0)-g|0;if((b|0)<=0)return;MD(h|0,g|0,b|0)|0;c[d>>2]=h+(b>>>2<<2);return}function gf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=((e-f|0)/12|0)+1|0;if(g>>>0>357913941){Az(a);h=c[a>>2]|0;i=c[d>>2]|0}else{h=f;i=e}e=a+8|0;f=((c[e>>2]|0)-h|0)/12|0;j=f<<1;k=f>>>0<178956970?(j>>>0<g>>>0?g:j):357913941;j=(i-h|0)/12|0;do if(k)if(k>>>0>357913941){h=za(4)|0;AD(h);Xa(h|0,3080,250)}else{l=rB(k*12|0)|0;break}else l=0;while(0);h=l+(j*12|0)|0;j=h;i=l+(k*12|0)|0;ff(h,b);b=h+12|0;k=c[a>>2]|0;l=c[d>>2]|0;if((l|0)==(k|0)){m=j;n=k;o=k}else{g=l;l=j;j=h;do{h=j+-12|0;f=g;g=g+-12|0;c[h>>2]=0;p=j+-8|0;c[p>>2]=0;c[j+-4>>2]=0;c[h>>2]=c[g>>2];h=f+-8|0;c[p>>2]=c[h>>2];p=f+-4|0;c[j+-4>>2]=c[p>>2];c[p>>2]=0;c[h>>2]=0;c[g>>2]=0;j=l+-12|0;l=j}while((g|0)!=(k|0));m=l;n=c[a>>2]|0;o=c[d>>2]|0}c[a>>2]=m;c[d>>2]=b;c[e>>2]=i;i=n;if((o|0)!=(i|0)){e=o;do{o=e;e=e+-12|0;b=c[e>>2]|0;if(b|0){d=o+-8|0;o=c[d>>2]|0;if((o|0)!=(b|0))c[d>>2]=o+(~((o+-4-b|0)>>>2)<<2);tB(b)}}while((e|0)!=(i|0))}if(!n)return;tB(n);return}function hf(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;f=l;l=l+32|0;g=f+24|0;h=f+16|0;i=f+8|0;j=f;k=b;b=c[k+4>>2]|0;m=i;c[m>>2]=c[k>>2];c[m+4>>2]=b;b=d;d=c[b+4>>2]|0;m=j;c[m>>2]=c[b>>2];c[m+4>>2]=d;c[h>>2]=c[i>>2];c[h+4>>2]=c[i+4>>2];c[g>>2]=c[j>>2];c[g+4>>2]=c[j+4>>2];j=gg(h,g)|0;g=c[e>>2]|0;e=g+8|0;if(!(a[e>>0]|0)){l=f;return j|0}h=c[g+4>>2]|0;if((h|0?(g=h+4|0,i=c[g>>2]|0,c[g>>2]=i-1,(i|0)==1):0)?(ob[c[(c[h>>2]|0)+8>>2]&511](h),i=h+8|0,g=c[i>>2]|0,c[i>>2]=g-1,(g|0)==1):0)ob[c[(c[h>>2]|0)+12>>2]&511](h);a[e>>0]=0;l=f;return j|0}function jf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;d=l;l=l+48|0;e=d+40|0;f=d+32|0;g=d+24|0;h=d+8|0;i=d;j=d+16|0;c[b>>2]=6116;k=b+64|0;if((c[k>>2]&5|0)==5){m=b;c[h>>2]=m;c[h+4>>2]=8;c[i>>2]=m;c[i+4>>2]=16;c[j>>2]=b+36;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[e>>2]=c[j>>2];hf(g,f,e)|0;c[k>>2]=0}c[b>>2]=6216;k=c[b+52>>2]|0;if(k|0)tB(k);k=b+44|0;if(!(a[k>>0]|0)){_p(b);l=d;return}e=c[b+40>>2]|0;if((e|0?(f=e+4|0,g=c[f>>2]|0,c[f>>2]=g-1,(g|0)==1):0)?(ob[c[(c[e>>2]|0)+8>>2]&511](e),g=e+8|0,f=c[g>>2]|0,c[g>>2]=f-1,(f|0)==1):0)ob[c[(c[e>>2]|0)+12>>2]&511](e);a[k>>0]=0;_p(b);l=d;return}function kf(b){b=b|0;var d=0,e=0,f=0,g=0;c[b>>2]=6216;d=c[b+52>>2]|0;if(d|0)tB(d);d=b+44|0;if(!(a[d>>0]|0)){_p(b);return}e=c[b+40>>2]|0;if((e|0?(f=e+4|0,g=c[f>>2]|0,c[f>>2]=g-1,(g|0)==1):0)?(ob[c[(c[e>>2]|0)+8>>2]&511](e),g=e+8|0,f=c[g>>2]|0,c[g>>2]=f-1,(f|0)==1):0)ob[c[(c[e>>2]|0)+12>>2]&511](e);a[d>>0]=0;_p(b);return}function lf(b){b=b|0;var d=0,e=0,f=0,g=0;c[b>>2]=6216;d=c[b+52>>2]|0;if(d|0)tB(d);d=b+44|0;if(!(a[d>>0]|0)){_p(b);tB(b);return}e=c[b+40>>2]|0;if((e|0?(f=e+4|0,g=c[f>>2]|0,c[f>>2]=g-1,(g|0)==1):0)?(ob[c[(c[e>>2]|0)+8>>2]&511](e),g=e+8|0,f=c[g>>2]|0,c[g>>2]=f-1,(f|0)==1):0)ob[c[(c[e>>2]|0)+12>>2]&511](e);a[d>>0]=0;_p(b);tB(b);return}function mf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e;if(!(c[b+64>>2]&1)){l=e;return}if(!(a[b+44>>0]|0))ya(21737,21750,55,21842);g=c[b+48>>2]|0;if(!g){l=e;return}pb[c[(c[g>>2]|0)+8>>2]&127](g,d);b=g+4|0;aB(f,b);dB(b,d)|0;Ys(f);l=e;return}function nf(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Yf(a,b,c,d,e,f);return}function of(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;f=e+8|0;e=c[f>>2]|0;g=c[f+4>>2]|0;if(c[d+24>>2]|0)rb[c[(c[d>>2]|0)+24>>2]&127](d)|0;f=d+8|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;if(!(a[d+44>>0]|0))ya(21737,21750,55,21842);f=c[d+36>>2]|0;if(!f)ya(22170,22178,648,22265);else{kb[c[(c[f>>2]|0)+16>>2]&15](b,f,e,g,0,24);return}}function pf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+32|0;e=d+16|0;f=d;g=(a[b+44>>0]|0)==0;if(((c[b+24>>2]|0)-(c[b+20>>2]|0)|0)>0)if(g)ya(21737,21750,55,21842);else{h=Ir()|0;c[e>>2]=1;c[e+4>>2]=h;Jr(f,21927,e);Cf(f)}if(g)ya(21737,21750,55,21842);g=c[b+48>>2]|0;if(!g){l=d;return 0}rb[c[(c[g>>2]|0)+24>>2]&127](g)|0;l=d;return 0}function qf(b){b=b|0;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,q=0;e=b+12|0;f=c[e>>2]|0;if(!f){ob[c[(c[b>>2]|0)+84>>2]&511](b);g=c[e>>2]|0}else g=f;f=b+16|0;a:do if(g>>>0<(c[f>>2]|0)>>>0)h=g;else{i=b+8|0;j=g-(c[i>>2]|0)|0;k=b+60|0;l=c[k>>2]|0;m=(l|0)<(j|0)?l:j;j=b+52|0;if(!m){n=0-m|0;o=l}else{p=0-m|0;UD((c[j>>2]|0)+(l-m)|0,g+p|0,m|0)|0;n=p;o=c[k>>2]|0}p=(c[j>>2]|0)+o|0;c[i>>2]=p+n;c[e>>2]=p;c[f>>2]=p;if(!(a[b+44>>0]|0))ya(21737,21750,55,21842);i=c[b+36>>2]|0;if(!i)ya(22170,22178,648,22265);m=ib[c[(c[i>>2]|0)+32>>2]&31](i,p,(c[b+56>>2]|0)-o|0)|0;switch(m|0){case 0:case -1:break;default:{c[f>>2]=(c[j>>2]|0)+(c[k>>2]|0)+m;h=c[e>>2]|0;break a}}m=b+32|0;c[m>>2]=c[m>>2]|1;c[f>>2]=(c[j>>2]|0)+(c[k>>2]|0);q=-1;return q|0}while(0);q=d[h>>0]|0;return q|0}function rf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=l;l=l+32|0;f=e+16|0;g=e;h=b+12|0;i=c[h>>2]|0;if((i|0)==(c[b+8>>2]|0)){b=Ir()|0;c[f>>2]=1;c[f+4>>2]=b;Jr(g,22276,f);Cf(g)}g=i+-1|0;c[h>>2]=g;h=(d|0)==-1;if(h){j=h?0:d;l=e;return j|0}a[g>>0]=d;j=h?0:d;l=e;return j|0}function sf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;e=l;l=l+32|0;f=e+16|0;g=e;h=b+64|0;if(c[h>>2]&2|0?(c[b+24>>2]|0)==0:0)ob[c[(c[b>>2]|0)+88>>2]&511](b);i=(d|0)==-1;do if(!i){if(!(c[h>>2]&2))if(!(a[b+44>>0]|0))ya(21737,21750,55,21842);else{j=Ir()|0;c[f>>2]=1;c[f+4>>2]=j;Jr(g,21927,f);Cf(g)}j=b+24|0;k=c[j>>2]|0;if((k|0)!=(c[b+28>>2]|0)){a[k>>0]=d;c[j>>2]=(c[j>>2]|0)+1;break}if((k-(c[b+20>>2]|0)|0)<=0){m=-1;l=e;return m|0}if(!(a[b+44>>0]|0))ya(21737,21750,55,21842);else{k=Ir()|0;c[f>>2]=1;c[f+4>>2]=k;Jr(g,21927,f);Cf(g)}}while(0);m=i?0:d;l=e;return m|0}function tf(a,b){a=a|0;b=b|0;c[a+48>>2]=b;return}function uf(b,d){b=b|0;d=d|0;var e=0;if((d|0)==8){c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0}if(!(a[b+44>>0]|0))ya(21737,21750,55,21842);e=b+36|0;switch(d|0){case 24:{Xf(e);return}case 8:{d=c[e>>2]|0;if(!d)ya(22170,22178,648,22265);e=d+64|0;b=c[e>>2]|0;if(!b)return;rb[c[(c[d>>2]|0)+24>>2]&127](d)|0;if(Qo(b)|0)return;c[e>>2]=0;return}default:return}}function vf(a){a=a|0;return (c[a+64>>2]&4|0)!=0|0}function wf(a,b){a=a|0;b=b|0;var d=0;d=a+64|0;c[d>>2]=c[d>>2]&-5|(b?4:0);return}function xf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=l;l=l+32|0;e=d+16|0;f=d;g=(a[b+44>>0]|0)==0;if(((c[b+24>>2]|0)-(c[b+20>>2]|0)|0)>0)if(g)ya(21737,21750,55,21842);else{h=Ir()|0;c[e>>2]=1;c[e+4>>2]=h;Jr(f,21927,e);Cf(f)}if(g)ya(21737,21750,55,21842);g=c[b+48>>2]|0;if(!g){i=1;l=d;return i|0}i=(rb[c[(c[g>>2]|0)+24>>2]&127](g)|0)!=-1;l=d;return i|0}function yf(a){a=a|0;return 416}function zf(b){b=b|0;if(!(a[b+44>>0]|0))ya(21737,21750,55,21842);else return b+36|0;return 0}function Af(a){a=a|0;var b=0;b=c[a+52>>2]|0;c[a+8>>2]=b;c[a+12>>2]=b;c[a+16>>2]=b;return}function Bf(a){a=a|0;var b=0,d=0,e=0;if(!(c[a+64>>2]&2)){b=0;d=0}else{e=c[a+52>>2]|0;b=e+(c[a+56>>2]|0)|0;d=e}c[a+24>>2]=d;c[a+20>>2]=d;c[a+28>>2]=b;return}function Cf(a){a=a|0;var b=0,d=0,e=0,f=0;b=l;l=l+48|0;d=b;b=za(40)|0;DB(d,a);e=a+8|0;a=c[e+4>>2]|0;f=d+8|0;c[f>>2]=c[e>>2];c[f+4>>2]=a;c[d+20>>2]=0;c[d+24>>2]=0;c[d+28>>2]=0;c[d+32>>2]=-1;c[d>>2]=6316;c[d+16>>2]=6336;Df(b,d);Xa(b|0,448,45)}function Df(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+36|0;c[d>>2]=6368;DB(a,b);c[a>>2]=17060;e=b+8|0;f=c[e+4>>2]|0;g=a+8|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a>>2]=13944;c[a+16>>2]=6352;f=c[b+20>>2]|0;c[a+20>>2]=f;if(f|0)ob[c[(c[f>>2]|0)+12>>2]&511](f);f=a+24|0;g=b+24|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[a>>2]=6396;g=a+16|0;c[g>>2]=6424;c[d>>2]=6452;Ff(g,b+16|0);return}function Ef(a){a=a|0;var b=0,d=0;c[a+16>>2]=6352;b=a+20|0;d=c[b>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[b>>2]=0;lr(a);return}function Ff(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+16|0;e=d;f=c[b+4>>2]|0;if(!f)g=0;else{pb[c[(c[f>>2]|0)+20>>2]&127](e,f);f=c[e>>2]|0;if((f|0?(ob[c[(c[f>>2]|0)+12>>2]&511](f),h=c[e>>2]|0,h|0):0)?rb[c[(c[h>>2]|0)+16>>2]&127](h)|0:0)c[e>>2]=0;g=f}c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+8>>2]=c[b+8>>2];b=a+4|0;a=c[b>>2]|0;if(a|0?rb[c[(c[a>>2]|0)+16>>2]&127](a)|0:0)c[b>>2]=0;c[b>>2]=g;if(!g){l=d;return}ob[c[(c[g>>2]|0)+12>>2]&511](g);rb[c[(c[g>>2]|0)+16>>2]&127](g)|0;l=d;return}function Gf(a){a=a|0;var b=0,d=0;c[a+16>>2]=6352;b=a+20|0;d=c[b>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[b>>2]=0;lr(a);tB(a);return}function Hf(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+1|0;f=rB(40)|0;a[e>>0]=a[d>>0]|0;Qf(f,b,e);l=d;return f+(c[(c[f>>2]|0)+-12>>2]|0)|0}function If(a){a=a|0;var b=0;b=za(40)|0;Pf(b,a);Xa(b|0,448,45)}function Jf(a){a=a|0;var b=0,d=0;b=a+-16|0;c[b+16>>2]=6352;a=b+20|0;d=c[a>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;lr(b);return}function Kf(a){a=a|0;var b=0,d=0;b=a+-16|0;c[b+16>>2]=6352;a=b+20|0;d=c[a>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;lr(b);tB(b);return}function Lf(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+1|0;f=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;b=rB(40)|0;a[e>>0]=a[d>>0]|0;Qf(b,f,e);l=d;return b+(c[(c[b>>2]|0)+-12>>2]|0)|0}function Mf(a){a=a|0;var b=0;b=a+(c[(c[a>>2]|0)+-16>>2]|0)|0;a=za(40)|0;Pf(a,b);Xa(a|0,448,45)}function Nf(a){a=a|0;var b=0,d=0;b=a+(c[(c[a>>2]|0)+-20>>2]|0)|0;c[b+16>>2]=6352;a=b+20|0;d=c[a>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;lr(b);return}function Of(a){a=a|0;var b=0,d=0;b=a+(c[(c[a>>2]|0)+-20>>2]|0)|0;c[b+16>>2]=6352;a=b+20|0;d=c[a>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;lr(b);tB(b);return}function Pf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+36|0;c[d>>2]=6368;DB(a,b);c[a>>2]=17060;e=b+8|0;f=c[e+4>>2]|0;g=a+8|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a>>2]=13944;f=a+16|0;c[f>>2]=6352;g=c[b+20>>2]|0;c[a+20>>2]=g;if(g|0)ob[c[(c[g>>2]|0)+12>>2]&511](g);g=a+24|0;e=b+24|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[a>>2]=6396;c[f>>2]=6424;c[d>>2]=6452;return}function Qf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;d=a+36|0;c[d>>2]=6368;DB(a,b);c[a>>2]=17060;e=b+8|0;f=c[e+4>>2]|0;g=a+8|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a>>2]=13944;c[a+16>>2]=6352;f=c[b+20>>2]|0;c[a+20>>2]=f;if(f|0)ob[c[(c[f>>2]|0)+12>>2]&511](f);f=a+24|0;g=b+24|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[a>>2]=6396;g=a+16|0;c[g>>2]=6424;c[d>>2]=6452;Ff(g,b+16|0);return}function Rf(a){a=a|0;return}function Sf(a){a=a|0;tB(a);return}function Tf(a){a=a|0;var b=0,d=0;c[a+16>>2]=6352;b=a+20|0;d=c[b>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[b>>2]=0;lr(a);return}function Uf(a){a=a|0;var b=0,d=0;c[a+16>>2]=6352;b=a+20|0;d=c[b>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[b>>2]=0;lr(a);tB(a);return}function Vf(a){a=a|0;var b=0,d=0;b=a+-16|0;c[b+16>>2]=6352;a=b+20|0;d=c[a>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;lr(b);return}function Wf(a){a=a|0;var b=0,d=0;b=a+-16|0;c[b+16>>2]=6352;a=b+20|0;d=c[a>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;lr(b);tB(b);return}function Xf(a){a=a|0;var b=0,d=0;b=c[a>>2]|0;if(!b)ya(22170,22178,648,22265);a=b+64|0;d=c[a>>2]|0;if(!d)return;rb[c[(c[b>>2]|0)+24>>2]&127](b)|0;if(Qo(d)|0)return;c[a>>2]=0;return}function Yf(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;i=l;l=l+16|0;j=i;k=d+12|0;m=c[k>>2]|0;n=(g|0)==1;if(((h|0)==8&(n&(m|0)!=0)?(h=m,o=(c[d+8>>2]|0)-h|0,p=((o|0)<0)<<31>>31,!((p|0)>(f|0)|(p|0)==(f|0)&o>>>0>e>>>0)):0)?(o=d+16|0,p=(c[o>>2]|0)-h|0,h=((p|0)<0)<<31>>31,!((h|0)<(f|0)|(h|0)==(f|0)&p>>>0<e>>>0)):0){c[k>>2]=m+e;if(!(a[d+44>>0]|0))ya(21737,21750,55,21842);m=c[d+36>>2]|0;if(!m)ya(22170,22178,648,22265);kb[c[(c[m>>2]|0)+16>>2]&15](j,m,0,0,1,24);m=(c[o>>2]|0)-(c[k>>2]|0)|0;c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];c[b+8>>2]=c[j+8>>2];c[b+12>>2]=c[j+12>>2];j=b+8|0;o=j;p=FD(c[o>>2]|0,c[o+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;m=j;c[m>>2]=p;c[m+4>>2]=A;l=i;return}if(c[d+24>>2]|0)rb[c[(c[d>>2]|0)+24>>2]&127](d)|0;if(n?(n=c[k>>2]|0,(n|0)!=0):0){k=(c[d+16>>2]|0)-n|0;n=FD(e|0,f|0,k|0,((k|0)<0)<<31>>31|0)|0;q=n;r=A}else{q=e;r=f}f=d+8|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;if(!(a[d+44>>0]|0))ya(21737,21750,55,21842);f=c[d+36>>2]|0;if(!f)ya(22170,22178,648,22265);kb[c[(c[f>>2]|0)+16>>2]&15](b,f,q,r,g,24);l=i;return}function Zf(a){a=a|0;jf(a);tB(a);return}function _f(a){a=a|0;Mq(a,6512);jf(a+8|0);Up(a+76|0);return}function $f(a){a=a|0;Mq(a,6512);jf(a+8|0);Up(a+76|0);tB(a);return}function ag(a){a=a|0;var b=0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;Mq(b,6512);jf(b+8|0);Up(b+76|0);return}function bg(a){a=a|0;var b=0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;Mq(b,6512);jf(b+8|0);Up(b+76|0);tB(b);return}function cg(a){a=a|0;Mq(a,6092);jf(a+8|0);Up(a+76|0);return}function dg(a){a=a|0;Mq(a,6092);jf(a+8|0);Up(a+76|0);tB(a);return}function eg(a){a=a|0;var b=0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;Mq(b,6092);jf(b+8|0);Up(b+76|0);return}function fg(a){a=a|0;var b=0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;Mq(b,6092);jf(b+8|0);Up(b+76|0);tB(b);return}function gg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=a;a=c[d>>2]|0;e=a;switch(c[d+4>>2]|0){case 8:{d=e+32|0;f=c[d>>2]|0;if(!(f&2)){c[d>>2]=f|2;pb[c[(c[a>>2]|0)+60>>2]&127](e,8)}break}case 16:{f=e+32|0;d=c[f>>2]|0;if(!(d&4)){c[f>>2]=d|4;pb[c[(c[a>>2]|0)+60>>2]&127](e,16)}break}default:{}}e=c[b>>2]|0;switch(c[b+4>>2]|0){case 8:{b=e+32|0;a=c[b>>2]|0;if(a&2|0)return 0;c[b>>2]=a|2;pb[c[(c[e>>2]|0)+60>>2]&127](e,8);return 0}case 16:{a=e+32|0;b=c[a>>2]|0;if(b&4|0)return 0;c[a>>2]=b|4;pb[c[(c[e>>2]|0)+60>>2]&127](e,16);return 0}default:return 0}return 0}function hg(a){a=a|0;c[a>>2]=6012;LB(a+32|0);_p(a);return}function ig(a){a=a|0;c[a>>2]=6012;LB(a+32|0);_p(a);tB(a);return}function jg(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;i=d+44|0;j=c[i>>2]|0;k=d+24|0;l=c[k>>2]|0;m=l;if(j>>>0<l>>>0){c[i>>2]=l;n=m}else n=j;j=h&24;a:do if((j|0)!=0?!((g|0)==1&(j|0)==24):0){b:do switch(g|0){case 0:{o=0;p=0;break}case 1:{if(!(h&8)){i=m-(c[d+20>>2]|0)|0;o=i;p=((i|0)<0)<<31>>31;break b}else{i=(c[d+12>>2]|0)-(c[d+8>>2]|0)|0;o=i;p=((i|0)<0)<<31>>31;break b}break}case 2:{i=d+32|0;if((a[i+11>>0]|0)<0)q=c[i>>2]|0;else q=i;i=n-q|0;o=i;p=((i|0)<0)<<31>>31;break}default:{r=-1;s=-1;break a}}while(0);i=JD(o|0,p|0,e|0,f|0)|0;t=A;if((t|0)>=0){u=d+32|0;if((a[u+11>>0]|0)<0)v=c[u>>2]|0;else v=u;u=n-v|0;w=((u|0)<0)<<31>>31;if(!((w|0)<(t|0)|(w|0)==(t|0)&u>>>0<i>>>0)){u=h&8;if(!((i|0)==0&(t|0)==0)){if(u|0?(c[d+12>>2]|0)==0:0){r=-1;s=-1;break}if((h&16|0)!=0&(l|0)==0){r=-1;s=-1;break}}if(u|0){c[d+12>>2]=(c[d+8>>2]|0)+i;c[d+16>>2]=n}if(!(h&16)){r=i;s=t}else{c[k>>2]=(c[d+20>>2]|0)+i;r=i;s=t}}else{r=-1;s=-1}}else{r=-1;s=-1}}else{r=-1;s=-1}while(0);d=b;c[d>>2]=0;c[d+4>>2]=0;d=b+8|0;c[d>>2]=r;c[d+4>>2]=s;return}function kg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=d+8|0;kb[c[(c[b>>2]|0)+16>>2]&15](a,b,c[f>>2]|0,c[f+4>>2]|0,0,e);return}function lg(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0;b=a+44|0;e=c[b>>2]|0;f=c[a+24>>2]|0;if(e>>>0<f>>>0){c[b>>2]=f;g=f}else g=e;if(!(c[a+48>>2]&8)){h=-1;return h|0}e=a+16|0;f=c[e>>2]|0;if(f>>>0<g>>>0){c[e>>2]=g;i=g}else i=f;f=c[a+12>>2]|0;if(f>>>0>=i>>>0){h=-1;return h|0}h=d[f>>0]|0;return h|0}function mg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=b+44|0;f=c[e>>2]|0;g=c[b+24>>2]|0;if(f>>>0<g>>>0){c[e>>2]=g;h=g}else h=f;f=h;h=b+12|0;g=c[h>>2]|0;if((c[b+8>>2]|0)>>>0>=g>>>0){i=-1;return i|0}if((d|0)==-1){c[h>>2]=g+-1;c[b+16>>2]=f;i=0;return i|0}if(!(c[b+48>>2]&16)){e=d&255;j=g+-1|0;if(e<<24>>24==(a[j>>0]|0)){k=e;l=j}else{i=-1;return i|0}}else{k=d&255;l=g+-1|0}c[h>>2]=l;c[b+16>>2]=f;a[l>>0]=k;i=d;return i|0}function ng(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0;e=l;l=l+16|0;f=e;if((d|0)==-1){g=0;l=e;return g|0}h=b+12|0;i=b+8|0;j=(c[h>>2]|0)-(c[i>>2]|0)|0;k=b+24|0;m=c[k>>2]|0;n=b+28|0;o=c[n>>2]|0;if((m|0)==(o|0)){p=b+48|0;if(!(c[p>>2]&16)){g=-1;l=e;return g|0}q=b+20|0;r=c[q>>2]|0;s=b+44|0;t=(c[s>>2]|0)-r|0;u=b+32|0;XB(u,0);v=u+11|0;if((a[v>>0]|0)<0)w=(c[b+40>>2]&2147483647)+-1|0;else w=10;SB(u,w,0);w=a[v>>0]|0;if(w<<24>>24<0){x=c[u>>2]|0;y=c[b+36>>2]|0}else{x=u;y=w&255}w=x+y|0;c[q>>2]=x;c[n>>2]=w;n=x+(m-r)|0;c[k>>2]=n;r=x+t|0;c[s>>2]=r;z=s;A=p;B=s;C=n;D=r;E=w}else{w=b+44|0;z=w;A=b+48|0;B=w;C=m;D=c[w>>2]|0;E=o}o=C+1|0;c[f>>2]=o;w=c[(o>>>0<D>>>0?B:f)>>2]|0;c[z>>2]=w;if(c[A>>2]&8|0){A=b+32|0;if((a[A+11>>0]|0)<0)F=c[A>>2]|0;else F=A;c[i>>2]=F;c[h>>2]=F+j;c[b+16>>2]=w}if((C|0)==(E|0)){g=zb[c[(c[b>>2]|0)+52>>2]&63](b,d&255)|0;l=e;return g|0}else{c[k>>2]=o;a[C>>0]=d;g=d&255;l=e;return g|0}return 0}function og(a){a=a|0;var b=0,d=0;c[a>>2]=5976;b=a+56|0;c[b>>2]=5996;d=a+4|0;c[d>>2]=6012;LB(a+36|0);_p(d);Wq(a,6072);Up(b);return}function pg(a){a=a|0;var b=0,d=0;c[a>>2]=5976;b=a+56|0;c[b>>2]=5996;d=a+4|0;c[d>>2]=6012;LB(a+36|0);_p(d);Wq(a,6072);Up(b);tB(a);return}function qg(a){a=a|0;var b=0,d=0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;c[b>>2]=5976;a=b+56|0;c[a>>2]=5996;d=b+4|0;c[d>>2]=6012;LB(b+36|0);_p(d);Wq(b,6072);Up(a);return}function rg(a){a=a|0;var b=0,d=0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;c[b>>2]=5976;a=b+56|0;c[a>>2]=5996;d=b+4|0;c[d>>2]=6012;LB(b+36|0);_p(d);Wq(b,6072);Up(a);tB(b);return}function sg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+32|0;c[d>>2]=6368;c[a>>2]=5328;e=b+4|0;f=c[e+4>>2]|0;g=a+4|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+12>>2]=6352;f=c[b+16>>2]|0;c[a+16>>2]=f;if(f|0)ob[c[(c[f>>2]|0)+12>>2]&511](f);f=a+20|0;g=b+20|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[a>>2]=6572;g=a+12|0;c[g>>2]=6600;c[d>>2]=6628;Ff(g,b+12|0);return}function tg(a){a=a|0;var b=0,d=0;c[a+12>>2]=6352;b=a+16|0;d=c[b>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[b>>2]=0;kD(a);return}function ug(a){a=a|0;var b=0,d=0;c[a+12>>2]=6352;b=a+16|0;d=c[b>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[b>>2]=0;kD(a);tB(a);return}function vg(a){a=a|0;return 23370}function wg(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+1|0;f=rB(36)|0;a[e>>0]=a[d>>0]|0;Fg(f,b,e);l=d;return f+(c[(c[f>>2]|0)+-12>>2]|0)|0}function xg(a){a=a|0;var b=0;b=za(36)|0;Eg(b,a);Xa(b|0,688,65)}function yg(a){a=a|0;var b=0,d=0;b=a+-12|0;c[b+12>>2]=6352;a=b+16|0;d=c[a>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;kD(b);return}function zg(a){a=a|0;var b=0,d=0;b=a+-12|0;c[b+12>>2]=6352;a=b+16|0;d=c[a>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;kD(b);tB(b);return}function Ag(b){b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d+1|0;f=b+(c[(c[b>>2]|0)+-12>>2]|0)|0;b=rB(36)|0;a[e>>0]=a[d>>0]|0;Fg(b,f,e);l=d;return b+(c[(c[b>>2]|0)+-12>>2]|0)|0}function Bg(a){a=a|0;var b=0;b=a+(c[(c[a>>2]|0)+-16>>2]|0)|0;a=za(36)|0;Eg(a,b);Xa(a|0,688,65)}function Cg(a){a=a|0;var b=0,d=0;b=a+(c[(c[a>>2]|0)+-20>>2]|0)|0;c[b+12>>2]=6352;a=b+16|0;d=c[a>>2]|0;if(!d){kD(b);return}if(!(rb[c[(c[d>>2]|0)+16>>2]&127](d)|0)){kD(b);return}c[a>>2]=0;kD(b);return}function Dg(a){a=a|0;var b=0,d=0;b=a+(c[(c[a>>2]|0)+-20>>2]|0)|0;c[b+12>>2]=6352;a=b+16|0;d=c[a>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;kD(b);tB(b);return}function Eg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=a+32|0;c[d>>2]=6368;c[a>>2]=5328;e=b+4|0;f=c[e+4>>2]|0;g=a+4|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;f=a+12|0;c[f>>2]=6352;g=c[b+16>>2]|0;c[a+16>>2]=g;if(g|0)ob[c[(c[g>>2]|0)+12>>2]&511](g);g=a+20|0;e=b+20|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[a>>2]=6572;c[f>>2]=6600;c[d>>2]=6628;return}function Fg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;d=a+32|0;c[d>>2]=6368;c[a>>2]=5328;e=b+4|0;f=c[e+4>>2]|0;g=a+4|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a+12>>2]=6352;f=c[b+16>>2]|0;c[a+16>>2]=f;if(f|0)ob[c[(c[f>>2]|0)+12>>2]&511](f);f=a+20|0;g=b+20|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[a>>2]=6572;g=a+12|0;c[g>>2]=6600;c[d>>2]=6628;Ff(g,b+12|0);return}function Gg(a){a=a|0;var b=0,d=0;c[a+12>>2]=6352;b=a+16|0;d=c[b>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[b>>2]=0;kD(a);return}function Hg(a){a=a|0;var b=0,d=0;c[a+12>>2]=6352;b=a+16|0;d=c[b>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[b>>2]=0;kD(a);tB(a);return}function Ig(a){a=a|0;var b=0,d=0;b=a+-12|0;c[b+12>>2]=6352;a=b+16|0;d=c[a>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;kD(b);return}function Jg(a){a=a|0;var b=0,d=0;b=a+-12|0;c[b+12>>2]=6352;a=b+16|0;d=c[a>>2]|0;if(d|0?rb[c[(c[d>>2]|0)+16>>2]&127](d)|0:0)c[a>>2]=0;kD(b);tB(b);return}function Kg(a){a=a|0;kD(a);tB(a);return}function Lg(a){a=a|0;_p(a);return}function Mg(a){a=a|0;_p(a);tB(a);return}function Ng(a,b,d){a=a|0;b=b|0;d=d|0;c[a+8>>2]=b;c[a+12>>2]=b;c[a+16>>2]=b+d;return a|0}function Og(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(!(g&16)){h=c[b+16>>2]|0;i=c[b+8>>2]|0;j=i;k=h-j|0;l=b+12|0;switch(f|0){case 0:{m=((k|0)<0)<<31>>31;if((e|0)<0|((m|0)<(e|0)|(m|0)==(e|0)&k>>>0<d>>>0)){n=-1;o=-1;break a}p=i+d|0;q=10;break}case 2:{m=((k|0)<0)<<31>>31;if((e|0)<0|((m|0)<(e|0)|(m|0)==(e|0)&k>>>0<d>>>0)){n=-1;o=-1;break a}p=h+(0-d)|0;q=10;break}case 1:{h=JD((c[l>>2]|0)-j|0,0,d|0,e|0)|0;if((h|0)<0|(h|0)>(k|0)){n=-1;o=-1;break a}p=i+h|0;q=10;break}default:r=c[l>>2]|0}if((q|0)==10){c[l>>2]=p;r=p}l=r-j|0;n=l;o=((l|0)<0)<<31>>31}else{n=-1;o=-1}while(0);r=a;c[r>>2]=0;c[r+4>>2]=0;r=a+8|0;c[r>>2]=n;c[r+4>>2]=o;return}function Pg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;if((e&16|0)==0?(e=c[b+8>>2]|0,f=(c[b+16>>2]|0)-e|0,g=((f|0)<0)<<31>>31,h=d+8|0,d=c[h>>2]|0,i=c[h+4>>2]|0,!((i|0)>(g|0)|(i|0)==(g|0)&d>>>0>f>>>0)):0)c[b+12>>2]=e+d;d=a;c[d>>2]=0;c[d+4>>2]=0;d=a+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}function Qg(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;g=l;l=l+16|0;h=g+4|0;i=g;GB(b,d);GB(b+12|0,d+12|0);j=b+24|0;k=d+24|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];a[j+8>>0]=a[k+8>>0]|0;k=b+36|0;j=c[e>>2]|0;c[k>>2]=j;e=c[f>>2]|0;c[b+40>>2]=e;f=b+44|0;a[f>>0]=0;d=b+48|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;if((j|0)==(e|0)){m=0;a[f>>0]=m;l=g;return}c[i>>2]=e;c[h>>2]=c[i>>2];m=(bf(b,k,h,d)|0)&1;a[f>>0]=m;l=g;return}function Rg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;e=d;if(b|0?(c[a>>2]|0)==(b|0):0)ya(23728,22178,619,23746);c[e>>2]=b;f=e+4|0;c[f>>2]=0;Ug(e,b,f);b=c[e>>2]|0;c[e>>2]=c[a>>2];c[a>>2]=b;b=a+4|0;a=c[b>>2]|0;c[b>>2]=c[f>>2];c[f>>2]=a;f=a;if(!a){l=d;return}b=f+4|0;e=c[b>>2]|0;c[b>>2]=e-1;if((e|0)!=1){l=d;return}e=a;ob[c[(c[e>>2]|0)+8>>2]&511](f);a=f+8|0;b=c[a>>2]|0;c[a>>2]=b-1;if((b|0)!=1){l=d;return}ob[c[(c[e>>2]|0)+12>>2]&511](f);l=d;return}function Sg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+32|0;g=f+16|0;h=f+8|0;i=f;c[i>>2]=c[b>>2];j=i+4|0;k=c[b+4>>2]|0;c[j>>2]=k;if(k|0){b=k+4|0;c[b>>2]=(c[b>>2]|0)+1}if(c[a+64>>2]&1|0){b=Ir()|0;c[h>>2]=1;c[h+4>>2]=b;Jr(g,23715,h);Cf(g)}Tg(a,i,d,e);e=c[j>>2]|0;if(!e){l=f;return}j=e+4|0;d=c[j>>2]|0;c[j>>2]=d-1;if((d|0)!=1){l=f;return}ob[c[(c[e>>2]|0)+8>>2]&511](e);d=e+8|0;j=c[d>>2]|0;c[d>>2]=j-1;if((j|0)!=1){l=f;return}ob[c[(c[e>>2]|0)+12>>2]&511](e);l=f;return}function Tg(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;g=(e|0)==-1?4096:e;e=(f|0)!=-1?f:4;f=(e|0)>2?e:2;c[b+60>>2]=f;e=f+(g|0?g:1)|0;g=b+52|0;f=b+56|0;if((c[f>>2]|0)!=(e|0)?(h=rB(e)|0,c[f>>2]=e,e=c[g>>2]|0,c[g>>2]=h,e|0):0)tB(e);ob[c[(c[b>>2]|0)+84>>2]&511](b);e=b+36|0;h=c[d>>2]|0;g=c[d+4>>2]|0;d=(g|0)==0;if(!d){f=g+4|0;c[f>>2]=(c[f>>2]|0)+1}f=b+44|0;i=b+40|0;if(a[f>>0]|0){j=c[i>>2]|0;if((j|0?(k=j+4|0,l=c[k>>2]|0,c[k>>2]=l-1,(l|0)==1):0)?(ob[c[(c[j>>2]|0)+8>>2]&511](j),l=j+8|0,k=c[l>>2]|0,c[l>>2]=k-1,(k|0)==1):0)ob[c[(c[j>>2]|0)+12>>2]&511](j);a[f>>0]=0}c[e>>2]=h;c[i>>2]=g;if(!d){d=g+4|0;c[d>>2]=(c[d>>2]|0)+1;a[f>>0]=1;i=c[d>>2]|0;c[d>>2]=i-1;if((i|0)==1?(ob[c[(c[g>>2]|0)+8>>2]&511](g),i=g+8|0,d=c[i>>2]|0,c[i>>2]=d-1,(d|0)==1):0)ob[c[(c[g>>2]|0)+12>>2]&511](g)}else a[f>>0]=1;f=b+64|0;c[f>>2]=c[f>>2]|1;f=b+32|0;c[f>>2]=c[f>>2]&-8;return}function Ug(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=l;l=l+16|0;f=e;g=rB(16)|0;c[g+4>>2]=1;c[g+8>>2]=1;c[g>>2]=6716;c[g+12>>2]=b;h=c[d>>2]|0;c[d>>2]=g;if((h|0?(g=h+4|0,d=c[g>>2]|0,c[g>>2]=d-1,(d|0)==1):0)?(ob[c[(c[h>>2]|0)+8>>2]&511](h),d=h+8|0,g=c[d>>2]|0,c[d>>2]=g-1,(g|0)==1):0)ob[c[(c[h>>2]|0)+12>>2]&511](h);c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=b;Vg(f);l=e;return}function Vg(a){a=a|0;return}function Wg(a){a=a|0;return}function Xg(a){a=a|0;tB(a);return}function Yg(a){a=a|0;var b=0,d=0;b=c[a+12>>2]|0;if(!b)return;a=b+64|0;d=c[a>>2]|0;if(d|0?(rb[c[(c[b>>2]|0)+24>>2]&127](b)|0,(Qo(d)|0)==0):0)c[a>>2]=0;Ue(b);tB(b);return}function Zg(a){a=a|0;if(!a)return;ob[c[(c[a>>2]|0)+4>>2]&511](a);return}function _g(a,b){a=a|0;b=b|0;return 0}function $g(a){a=a|0;return 0}function ah(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;d=l;l=l+16|0;e=d;f=b+64|0;if(!(c[f>>2]|0)){g=0;l=d;return g|0}h=b+68|0;i=c[h>>2]|0;if(!i){j=za(4)|0;wD(j);Xa(j|0,3144,21)}j=b+92|0;k=c[j>>2]|0;do if(!(k&16)){if(k&8|0){m=b+80|0;n=c[m+4>>2]|0;o=e;c[o>>2]=c[m>>2];c[o+4>>2]=n;do if(!(a[b+98>>0]|0)){n=rb[c[(c[i>>2]|0)+24>>2]&127](i)|0;o=b+36|0;m=c[o>>2]|0;p=(c[b+40>>2]|0)-m|0;if((n|0)>0){q=0;r=(P((c[b+16>>2]|0)-(c[b+12>>2]|0)|0,n)|0)+p|0;break}n=c[b+12>>2]|0;if((n|0)==(c[b+16>>2]|0)){q=0;r=p}else{s=c[h>>2]|0;t=b+32|0;u=Bb[c[(c[s>>2]|0)+32>>2]&31](s,e,c[t>>2]|0,m,n-(c[b+8>>2]|0)|0)|0;q=1;r=p-u+(c[o>>2]|0)-(c[t>>2]|0)|0}}else{q=0;r=(c[b+16>>2]|0)-(c[b+12>>2]|0)|0}while(0);if(dp(c[f>>2]|0,0-r|0,1)|0){g=-1;l=d;return g|0}if(q){t=e;o=c[t+4>>2]|0;u=b+72|0;c[u>>2]=c[t>>2];c[u+4>>2]=o}o=c[b+32>>2]|0;c[b+40>>2]=o;c[b+36>>2]=o;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[j>>2]=0}}else{if((c[b+24>>2]|0)!=(c[b+20>>2]|0)?(zb[c[(c[b>>2]|0)+52>>2]&63](b,-1)|0)==-1:0){g=-1;l=d;return g|0}o=b+72|0;u=b+32|0;t=b+52|0;a:while(1){p=c[h>>2]|0;n=c[u>>2]|0;m=Bb[c[(c[p>>2]|0)+20>>2]&31](p,o,n,n+(c[t>>2]|0)|0,e)|0;n=c[u>>2]|0;p=(c[e>>2]|0)-n|0;if((fp(n,1,p,c[f>>2]|0)|0)!=(p|0)){g=-1;v=24;break}switch(m|0){case 1:break;case 2:{g=-1;v=24;break a;break}default:{v=10;break a}}}if((v|0)==10){if(!(So(c[f>>2]|0)|0))break;else g=-1;l=d;return g|0}else if((v|0)==24){l=d;return g|0}}while(0);g=0;l=d;return g|0}function bh(a){a=a|0;Ue(a);tB(a);return}function ch(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;rb[c[(c[b>>2]|0)+24>>2]&127](b)|0;e=Xs(d,42708)|0;c[b+68>>2]=e;d=b+98|0;f=a[d>>0]|0;g=rb[c[(c[e>>2]|0)+28>>2]&127](e)|0;a[d>>0]=g&1;if((f&255|0)==(g&1|0))return;f=b+8|0;d=b+96|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;f=(a[d>>0]|0)!=0;if(g){g=b+32|0;if(f?(e=c[g>>2]|0,e|0):0)uB(e);e=b+97|0;a[d>>0]=a[e>>0]|0;h=b+60|0;c[b+52>>2]=c[h>>2];i=b+56|0;c[g>>2]=c[i>>2];c[h>>2]=0;c[i>>2]=0;a[e>>0]=0;return}e=c[b+52>>2]|0;c[b+60>>2]=e;if(!f?(f=b+32|0,i=c[f>>2]|0,(i|0)!=(b+44|0)):0){c[b+56>>2]=i;a[b+97>>0]=0;c[f>>2]=sB(e)|0;a[d>>0]=1;return}c[b+56>>2]=sB(e)|0;a[b+97>>0]=1;return}function dh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=b+8|0;g=b+96|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;if(a[g>>0]|0?(f=c[b+32>>2]|0,f|0):0)uB(f);f=b+97|0;if(a[f>>0]|0?(h=c[b+56>>2]|0,h|0):0)uB(h);h=b+52|0;c[h>>2]=e;if(e>>>0>8){i=a[b+98>>0]|0;if((d|0)!=0&i<<24>>24!=0){j=0;k=d}else{j=1;k=sB(e)|0}c[b+32>>2]=k;l=j;m=i}else{c[b+32>>2]=b+44;c[h>>2]=8;l=0;m=a[b+98>>0]|0}a[g>>0]=l;if(m<<24>>24){c[b+60>>2]=0;n=0;o=0;p=b+56|0;c[p>>2]=o;a[f>>0]=n;return b|0}m=(e|0)>8?e:8;c[b+60>>2]=m;if((d|0)!=0&m>>>0>7){n=0;o=d;p=b+56|0;c[p>>2]=o;a[f>>0]=n;return b|0}n=1;o=sB(m)|0;p=b+56|0;c[p>>2]=o;a[f>>0]=n;return b|0}function eh(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0;g=c[b+68>>2]|0;if(!g){h=za(4)|0;wD(h);Xa(h|0,3144,21)}h=rb[c[(c[g>>2]|0)+24>>2]&127](g)|0;g=b+64|0;if((((c[g>>2]|0)!=0?!(((d|0)!=0|(e|0)!=0)&(h|0)<1):0)?f>>>0<3&(rb[c[(c[b>>2]|0)+24>>2]&127](b)|0)==0:0)?(i=c[g>>2]|0,j=RD(h|0,((h|0)<0)<<31>>31|0,d|0,e|0)|0,(dp(i,(h|0)>0?j:0,f)|0)==0):0){f=Op(c[g>>2]|0)|0;g=b+72|0;k=c[g>>2]|0;l=c[g+4>>2]|0;m=f;n=((f|0)<0)<<31>>31}else{k=0;l=0;m=-1;n=-1}f=a;c[f>>2]=k;c[f+4>>2]=l;l=a+8|0;c[l>>2]=m;c[l+4>>2]=n;return}function fh(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;e=b+64|0;if(c[e>>2]|0?(rb[c[(c[b>>2]|0)+24>>2]&127](b)|0)==0:0)if(!(dp(c[e>>2]|0,c[d+8>>2]|0,0)|0)){e=d;f=c[e+4>>2]|0;g=b+72|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];return}else{d=a;c[d>>2]=0;c[d+4>>2]=0;d=a+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}d=a;c[d>>2]=0;c[d+4>>2]=0;d=a+8|0;c[d>>2]=-1;c[d+4>>2]=-1;return}function gh(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0;e=l;l=l+16|0;f=e+4|0;g=e;h=b+64|0;if(!(c[h>>2]|0)){i=-1;l=e;return i|0}j=b+92|0;if(!(c[j>>2]&8)){c[b+24>>2]=0;c[b+20>>2]=0;c[b+28>>2]=0;k=(a[b+98>>0]|0)==0;m=c[(k?b+56|0:b+32|0)>>2]|0;n=m+(c[(k?b+60|0:b+52|0)>>2]|0)|0;c[b+8>>2]=m;m=b+12|0;c[m>>2]=n;c[b+16>>2]=n;c[j>>2]=8;o=1;p=m;q=n}else{n=b+12|0;o=0;p=n;q=c[n>>2]|0}if(!q){n=f+1|0;c[b+8>>2]=f;c[p>>2]=n;c[b+16>>2]=n;r=n}else r=q;q=b+16|0;if(o){s=c[q>>2]|0;t=0}else{o=c[q>>2]|0;n=(o-(c[b+8>>2]|0)|0)/2|0;s=o;t=n>>>0<4?n:4}do if((r|0)==(s|0)){n=b+8|0;UD(c[n>>2]|0,r+(0-t)|0,t|0)|0;if(a[b+98>>0]|0){o=c[n>>2]|0;m=Lp(o+t|0,1,(c[q>>2]|0)-t-o|0,c[h>>2]|0)|0;if(!m){u=-1;v=n;break}o=(c[n>>2]|0)+t|0;c[p>>2]=o;c[q>>2]=o+m;u=d[o>>0]|0;v=n;break}o=b+32|0;m=b+36|0;j=c[m>>2]|0;k=b+40|0;UD(c[o>>2]|0,j|0,(c[k>>2]|0)-j|0)|0;j=c[o>>2]|0;w=j+((c[k>>2]|0)-(c[m>>2]|0))|0;c[m>>2]=w;if((j|0)==(b+44|0))x=8;else x=c[b+52>>2]|0;y=j+x|0;c[k>>2]=y;j=b+60|0;z=(c[j>>2]|0)-t|0;A=y-w|0;y=b+72|0;B=y;C=c[B+4>>2]|0;D=b+80|0;c[D>>2]=c[B>>2];c[D+4>>2]=C;C=Lp(w,1,A>>>0<z>>>0?A:z,c[h>>2]|0)|0;if(!C){u=-1;v=n}else{z=c[b+68>>2]|0;if(!z){A=za(4)|0;wD(A);Xa(A|0,3144,21)}A=(c[m>>2]|0)+C|0;c[k>>2]=A;C=c[n>>2]|0;if((wb[c[(c[z>>2]|0)+16>>2]&15](z,y,c[o>>2]|0,A,m,C+t|0,C+(c[j>>2]|0)|0,g)|0)!=3){j=c[g>>2]|0;C=(c[n>>2]|0)+t|0;if((j|0)==(C|0))E=-1;else{F=j;G=C;H=22}}else{C=c[o>>2]|0;o=c[k>>2]|0;c[n>>2]=C;F=o;G=C;H=22}if((H|0)==22){c[p>>2]=G;c[q>>2]=F;E=d[G>>0]|0}u=E;v=n}}else{u=d[r>>0]|0;v=b+8|0}while(0);if((c[v>>2]|0)==(f|0)){c[v>>2]=0;c[p>>2]=0;c[q>>2]=0}i=u;l=e;return i|0}function hh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;if(!(c[b+64>>2]|0)){e=-1;return e|0}f=b+12|0;g=c[f>>2]|0;if((c[b+8>>2]|0)>>>0>=g>>>0){e=-1;return e|0}if((d|0)==-1){c[f>>2]=g+-1;e=0;return e|0}if(!(c[b+88>>2]&16)){b=d&255;h=g+-1|0;if(b<<24>>24==(a[h>>0]|0)){i=b;j=h}else{e=-1;return e|0}}else{i=d&255;j=g+-1|0}c[f>>2]=j;a[j>>0]=i;e=d;return e|0}function ih(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0;e=l;l=l+16|0;f=e+8|0;g=e+4|0;h=e;i=b+64|0;if(!(c[i>>2]|0)){j=-1;l=e;return j|0}k=b+92|0;if(!(c[k>>2]&16)){c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;m=c[b+52>>2]|0;do if(m>>>0>8)if(!(a[b+98>>0]|0)){n=c[b+56>>2]|0;o=n+((c[b+60>>2]|0)+-1)|0;p=n;break}else{n=c[b+32>>2]|0;o=n+(m+-1)|0;p=n;break}else{o=0;p=0}while(0);c[b+24>>2]=p;m=b+20|0;c[m>>2]=p;n=b+28|0;c[n>>2]=o;c[k>>2]=16;q=m;r=n;s=n;t=m;u=p;v=o;w=p}else{p=b+20|0;o=c[p>>2]|0;m=b+28|0;q=p;r=m;s=m;t=p;u=o;v=c[m>>2]|0;w=o}o=(d|0)==-1;m=b+24|0;p=c[m>>2]|0;if(o){x=p;y=w}else{if(!p){c[m>>2]=f;c[t>>2]=f;c[r>>2]=f+1;z=f}else z=p;a[z>>0]=d;z=(c[m>>2]|0)+1|0;c[m>>2]=z;x=z;y=c[t>>2]|0}a:do if((x|0)==(y|0))A=32;else{b:do if(!(a[b+98>>0]|0)){z=b+32|0;p=c[z>>2]|0;c[g>>2]=p;f=b+68|0;w=c[f>>2]|0;if(!w){B=za(4)|0;wD(B);Xa(B|0,3144,21)}n=p;p=b+72|0;k=b+52|0;C=wb[c[(c[w>>2]|0)+12>>2]&15](w,p,y,x,h,n,n+(c[k>>2]|0)|0,g)|0;n=c[t>>2]|0;c:do if((c[h>>2]|0)!=(n|0)){w=C;D=n;while(1){if((w|0)==3){A=21;break}if((w|1|0)!=1)break c;E=c[z>>2]|0;F=(c[g>>2]|0)-E|0;if((fp(E,1,F,c[i>>2]|0)|0)!=(F|0))break c;if((w|0)!=1){A=28;break}F=c[h>>2]|0;E=c[m>>2]|0;c[q>>2]=F;c[r>>2]=E;G=F;H=G+(E-F)|0;c[m>>2]=H;F=c[f>>2]|0;if(!F){A=19;break}E=c[z>>2]|0;w=wb[c[(c[F>>2]|0)+12>>2]&15](F,p,G,H,h,E,E+(c[k>>2]|0)|0,g)|0;E=c[t>>2]|0;if((c[h>>2]|0)==(E|0))break c;else D=E}if((A|0)==19){B=za(4)|0;wD(B);Xa(B|0,3144,21)}else if((A|0)==21){w=(c[m>>2]|0)-D|0;if((fp(D,1,w,c[i>>2]|0)|0)!=(w|0))break}I=m;break b}while(0);J=-1;break a}else{k=x-y|0;if((fp(y,1,k,c[i>>2]|0)|0)!=(k|0)){J=-1;break a}I=m}while(0);c[I>>2]=u;c[q>>2]=u;c[s>>2]=v;A=32}while(0);if((A|0)==32)J=o?0:d;j=J;l=e;return j|0}function jh(a){a=a|0;var b=0;c[a>>2]=3504;b=a+112|0;c[b>>2]=3544;c[a+8>>2]=3524;Ue(a+12|0);gr(a,3556);Up(b);return}function kh(a){a=a|0;var b=0;c[a>>2]=3504;b=a+112|0;c[b>>2]=3544;c[a+8>>2]=3524;Ue(a+12|0);gr(a,3556);Up(b);tB(a);return}function lh(a){a=a|0;var b=0;b=a+-8|0;c[b>>2]=3504;a=b+112|0;c[a>>2]=3544;c[b+8>>2]=3524;Ue(b+12|0);gr(b,3556);Up(a);return}function mh(a){a=a|0;var b=0;b=a+-8|0;c[b>>2]=3504;a=b+112|0;c[a>>2]=3544;c[b+8>>2]=3524;Ue(b+12|0);gr(b,3556);Up(a);tB(b);return}function nh(a){a=a|0;var b=0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;c[b>>2]=3504;a=b+112|0;c[a>>2]=3544;c[b+8>>2]=3524;Ue(b+12|0);gr(b,3556);Up(a);return}function oh(a){a=a|0;var b=0;b=a+(c[(c[a>>2]|0)+-12>>2]|0)|0;c[b>>2]=3504;a=b+112|0;c[a>>2]=3544;c[b+8>>2]=3524;Ue(b+12|0);gr(b,3556);Up(a);tB(b);return}function ph(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;c[a>>2]=6812;b=c[a+120>>2]|0;if(b|0)uB(b);b=c[a+172>>2]|0;if(b|0){d=a+176|0;e=c[d>>2]|0;if((e|0)!=(b|0))c[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);tB(b)}b=c[a+160>>2]|0;if(b|0){e=a+164|0;d=c[e>>2]|0;if((d|0)!=(b|0))c[e>>2]=d+(~((d+-4-b|0)>>>2)<<2);tB(b)}b=c[a+148>>2]|0;if(b|0){d=a+152|0;e=c[d>>2]|0;if((e|0)!=(b|0))c[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);tB(b)}b=c[a+108>>2]|0;if(b|0){e=a+112|0;d=c[e>>2]|0;if((d|0)!=(b|0))c[e>>2]=d+(~((d+-4-b|0)>>>2)<<2);tB(b)}b=c[a+96>>2]|0;if(b|0){d=a+100|0;e=c[d>>2]|0;if((e|0)!=(b|0))c[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);tB(b)}b=c[a+84>>2]|0;if(b|0){e=a+88|0;d=c[e>>2]|0;if((d|0)!=(b|0))c[e>>2]=d+(~((d+-4-b|0)>>>2)<<2);tB(b)}b=c[a+72>>2]|0;if(b|0){d=a+76|0;e=c[d>>2]|0;if((e|0)!=(b|0))c[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);tB(b)}b=c[a+48>>2]|0;if(b|0){e=a+52|0;d=c[e>>2]|0;if((d|0)!=(b|0))c[e>>2]=d+(~((d+-4-b|0)>>>2)<<2);tB(b)}b=c[a+36>>2]|0;if(b|0){d=a+40|0;e=c[d>>2]|0;if((e|0)!=(b|0))c[d>>2]=e+(~((e+-4-b|0)>>>2)<<2);tB(b)}b=a+12|0;e=c[b>>2]|0;if(!e)return;d=a+16|0;a=c[d>>2]|0;if((a|0)==(e|0))f=e;else{g=a;do{c[d>>2]=g+-48;LB(g+-12|0);a=c[g+-24>>2]|0;if(a|0){h=g+-20|0;i=c[h>>2]|0;if((i|0)!=(a|0))c[h>>2]=i+(~((i+-4-a|0)>>>2)<<2);tB(a)}g=c[d>>2]|0}while((g|0)!=(e|0));f=c[b>>2]|0}tB(f);return}function qh(a){a=a|0;ph(a);tB(a);return}function rh(a){a=a|0;return 2}function sh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,24075,14);return}function th(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,24071,3);return}function uh(a){a=a|0;return 5}function vh(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0;d=l;l=l+496|0;e=d+416|0;f=d+336|0;h=d+256|0;i=d+176|0;j=d+96|0;k=d+16|0;m=d;c[b>>2]=0;n=b+4|0;c[n>>2]=0;c[b+8>>2]=0;o=e+64|0;p=e;q=p+60|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));a[e+60>>0]=0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;RB(e,26260)|0;r=e+12|0;RB(r,26268)|0;s=e+24|0;RB(s,26305)|0;t=e+36|0;RB(t,44918)|0;g[e+48>>2]=0.0;g[e+52>>2]=1.0;g[e+56>>2]=1.0;a[e+60>>0]=1;g[o>>2]=1.0;o=c[n>>2]|0;u=b+8|0;if((o|0)==(c[u>>2]|0))Lh(b,e);else{Kh(o,e);c[n>>2]=(c[n>>2]|0)+80}o=f+64|0;p=f;q=p+60|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));a[f+60>>0]=0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;RB(f,27594)|0;v=f+12|0;RB(v,27601)|0;w=f+24|0;RB(w,27622)|0;x=f+36|0;RB(x,27885)|0;g[f+48>>2]=0.0;g[f+52>>2]=5.0;g[f+56>>2]=0.0;a[f+60>>0]=1;g[o>>2]=.5;o=c[n>>2]|0;if((o|0)==(c[u>>2]|0))Lh(b,f);else{Kh(o,f);c[n>>2]=(c[n>>2]|0)+80}o=h+64|0;p=h;q=p+60|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));a[h+60>>0]=0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;RB(h,26347)|0;y=h+12|0;RB(y,26358)|0;z=h+24|0;RB(z,26370)|0;A=h+36|0;RB(A,44918)|0;g[h+48>>2]=0.0;g[h+52>>2]=1.0;g[h+56>>2]=0.0;a[h+60>>0]=1;B=h+68|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,26572,13);C=h+72|0;D=c[C>>2]|0;E=h+76|0;if(D>>>0<(c[E>>2]|0)>>>0){c[D>>2]=c[i>>2];c[D+4>>2]=c[i+4>>2];c[D+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[C>>2]=(c[C>>2]|0)+12}else Se(B,i);LB(i);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,26586,12);D=c[C>>2]|0;if(D>>>0<(c[E>>2]|0)>>>0){c[D>>2]=c[i>>2];c[D+4>>2]=c[i+4>>2];c[D+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[C>>2]=(c[C>>2]|0)+12}else Se(B,i);LB(i);g[o>>2]=1.0;o=c[n>>2]|0;if((o|0)==(c[u>>2]|0))Lh(b,h);else{Kh(o,h);c[n>>2]=(c[n>>2]|0)+80}o=i+64|0;p=i;q=p+60|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));a[i+60>>0]=0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;RB(i,26599)|0;o=i+12|0;RB(o,26609)|0;B=i+24|0;RB(B,26628)|0;D=i+36|0;RB(D,44918)|0;g[i+48>>2]=0.0;g[i+52>>2]=1.0;g[i+56>>2]=1.0;a[i+60>>0]=0;E=c[n>>2]|0;if((E|0)==(c[u>>2]|0))Lh(b,i);else{Kh(E,i);c[n>>2]=(c[n>>2]|0)+80}E=j+64|0;p=j;q=p+60|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));a[j+60>>0]=0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;c[E+12>>2]=0;RB(j,26681)|0;E=j+12|0;RB(E,26683)|0;F=j+24|0;RB(F,26698)|0;G=j+36|0;RB(G,44918)|0;g[j+48>>2]=.5;g[j+52>>2]=.8999999761581421;g[j+56>>2]=.699999988079071;a[j+60>>0]=0;H=c[n>>2]|0;if((H|0)==(c[u>>2]|0))Lh(b,j);else{Kh(H,j);c[n>>2]=(c[n>>2]|0)+80}H=k+64|0;p=k;q=p+60|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));a[k+60>>0]=0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;c[H+12>>2]=0;RB(k,23950)|0;p=k+12|0;RB(p,23973)|0;q=k+24|0;RB(q,23994)|0;I=k+36|0;RB(I,44918)|0;g[k+48>>2]=0.0;g[k+52>>2]=3.0;g[k+56>>2]=0.0;a[k+60>>0]=1;J=k+68|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,24037,4);K=k+72|0;L=c[K>>2]|0;M=k+76|0;if(L>>>0<(c[M>>2]|0)>>>0){c[L>>2]=c[m>>2];c[L+4>>2]=c[m+4>>2];c[L+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[K>>2]=(c[K>>2]|0)+12}else Se(J,m);LB(m);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,24042,12);L=c[K>>2]|0;if(L>>>0<(c[M>>2]|0)>>>0){c[L>>2]=c[m>>2];c[L+4>>2]=c[m+4>>2];c[L+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[K>>2]=(c[K>>2]|0)+12}else Se(J,m);LB(m);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,24055,7);L=c[K>>2]|0;if(L>>>0<(c[M>>2]|0)>>>0){c[L>>2]=c[m>>2];c[L+4>>2]=c[m+4>>2];c[L+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[K>>2]=(c[K>>2]|0)+12}else Se(J,m);LB(m);c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;HB(m,24063,7);L=c[K>>2]|0;if(L>>>0<(c[M>>2]|0)>>>0){c[L>>2]=c[m>>2];c[L+4>>2]=c[m+4>>2];c[L+8>>2]=c[m+8>>2];c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[K>>2]=(c[K>>2]|0)+12}else Se(J,m);LB(m);g[H>>2]=1.0;H=c[n>>2]|0;if((H|0)==(c[u>>2]|0))Lh(b,k);else{Kh(H,k);c[n>>2]=(c[n>>2]|0)+80}n=k+68|0;H=c[n>>2]|0;if(H|0){b=c[K>>2]|0;if((b|0)==(H|0))N=H;else{u=b;do{b=u+-12|0;c[K>>2]=b;LB(b);u=c[K>>2]|0}while((u|0)!=(H|0));N=c[n>>2]|0}tB(N)}LB(I);LB(q);LB(p);LB(k);k=j+68|0;p=c[k>>2]|0;if(p|0){q=j+72|0;I=c[q>>2]|0;if((I|0)==(p|0))O=p;else{N=I;do{I=N+-12|0;c[q>>2]=I;LB(I);N=c[q>>2]|0}while((N|0)!=(p|0));O=c[k>>2]|0}tB(O)}LB(G);LB(F);LB(E);LB(j);j=i+68|0;E=c[j>>2]|0;if(E|0){F=i+72|0;G=c[F>>2]|0;if((G|0)==(E|0))P=E;else{O=G;do{G=O+-12|0;c[F>>2]=G;LB(G);O=c[F>>2]|0}while((O|0)!=(E|0));P=c[j>>2]|0}tB(P)}LB(D);LB(B);LB(o);LB(i);i=h+68|0;o=c[i>>2]|0;if(o|0){B=c[C>>2]|0;if((B|0)==(o|0))Q=o;else{D=B;do{B=D+-12|0;c[C>>2]=B;LB(B);D=c[C>>2]|0}while((D|0)!=(o|0));Q=c[i>>2]|0}tB(Q)}LB(A);LB(z);LB(y);LB(h);h=f+68|0;y=c[h>>2]|0;if(y|0){z=f+72|0;A=c[z>>2]|0;if((A|0)==(y|0))R=y;else{Q=A;do{A=Q+-12|0;c[z>>2]=A;LB(A);Q=c[z>>2]|0}while((Q|0)!=(y|0));R=c[h>>2]|0}tB(R)}LB(x);LB(w);LB(v);LB(f);f=e+68|0;v=c[f>>2]|0;if(!v){LB(t);LB(s);LB(r);LB(e);l=d;return}w=e+72|0;x=c[w>>2]|0;if((x|0)==(v|0))S=v;else{R=x;do{x=R+-12|0;c[w>>2]=x;LB(x);R=c[w>>2]|0}while((R|0)!=(v|0));S=c[f>>2]|0}tB(S);LB(t);LB(s);LB(r);LB(e);l=d;return}function wh(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;e=d+11|0;f=a[e>>0]|0;h=d+4|0;i=c[h>>2]|0;do if(((f<<24>>24<0?i:f&255)|0)==7){if(bC(d,0,-1,26260,7)|0){j=a[e>>0]|0;k=c[h>>2]|0;break}l=+g[b+68>>2];return +l}else{j=f;k=i}while(0);do if(((j<<24>>24<0?k:j&255)|0)==9){if(bC(d,0,-1,26599,9)|0){m=a[e>>0]|0;n=c[h>>2]|0;break}l=+g[b+60>>2];return +l}else{m=j;n=k}while(0);do if(((m<<24>>24<0?n:m&255)|0)==1){if(bC(d,0,-1,26681,1)|0){o=a[e>>0]|0;p=c[h>>2]|0;break}l=+g[b+140>>2];return +l}else{o=m;p=n}while(0);do if(((o<<24>>24<0?p:o&255)|0)==6){if(bC(d,0,-1,27594,6)|0){q=a[e>>0]|0;r=c[h>>2]|0;break}l=+g[b+132>>2];return +l}else{q=o;r=p}while(0);do if(((q<<24>>24<0?r:q&255)|0)==6){if(bC(d,0,-1,26810,6)|0){s=a[e>>0]|0;t=c[h>>2]|0;break}l=+g[b+136>>2];return +l}else{s=q;t=r}while(0);do if(((s<<24>>24<0?t:s&255)|0)==10){if(bC(d,0,-1,26347,10)|0){u=a[e>>0]|0;v=c[h>>2]|0;break}l=(a[b+124>>0]|0)==0?0.0:1.0;return +l}else{u=s;v=t}while(0);do if(((u<<24>>24<0?v:u&255)|0)==6){if(bC(d,0,-1,23966,6)|0){w=a[e>>0]|0;x=c[h>>2]|0;break}l=+g[b+64>>2];return +l}else{w=u;x=v}while(0);do if(((w<<24>>24<0?x:w&255)|0)==15){if(bC(d,0,-1,23950,15)|0){y=a[e>>0]|0;z=c[h>>2]|0;break}l=+g[b+128>>2];return +l}else{y=w;z=x}while(0);if(((y<<24>>24<0?z:y&255)|0)!=14){l=0.0;return +l}if(bC(d,0,-1,26869,14)|0){l=0.0;return +l}l=+g[b+144>>2];return +l}function xh(b,d,e){b=b|0;d=d|0;e=+e;var f=0,h=0,i=0;f=d+11|0;h=a[f>>0]|0;i=d+4|0;if(((h<<24>>24<0?c[i>>2]|0:h&255)|0)==7?(bC(d,0,-1,26260,7)|0)==0:0)g[b+68>>2]=+(~~e|0);h=a[f>>0]|0;if(((h<<24>>24<0?c[i>>2]|0:h&255)|0)==9?(bC(d,0,-1,26599,9)|0)==0:0)g[b+60>>2]=e;h=a[f>>0]|0;if(((h<<24>>24<0?c[i>>2]|0:h&255)|0)==1?(bC(d,0,-1,26681,1)|0)==0:0)g[b+140>>2]=e;h=a[f>>0]|0;if(((h<<24>>24<0?c[i>>2]|0:h&255)|0)==6?(bC(d,0,-1,26810,6)|0)==0:0)g[b+136>>2]=e;h=a[f>>0]|0;if(((h<<24>>24<0?c[i>>2]|0:h&255)|0)==10?(bC(d,0,-1,26347,10)|0)==0:0)a[b+124>>0]=e!=0.0&1;h=a[f>>0]|0;if(((h<<24>>24<0?c[i>>2]|0:h&255)|0)==15?(bC(d,0,-1,23950,15)|0)==0:0)g[b+128>>2]=e;h=a[f>>0]|0;if(((h<<24>>24<0?c[i>>2]|0:h&255)|0)==6?(bC(d,0,-1,27594,6)|0)==0:0)g[b+132>>2]=e;h=a[f>>0]|0;if(((h<<24>>24<0?c[i>>2]|0:h&255)|0)!=14)return;if(bC(d,0,-1,26869,14)|0)return;g[b+144>>2]=e;return}function yh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;return}function zh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,44918,0);return}function Ah(a,b){a=a|0;b=b|0;return}function Bh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,28663,25);return}function Ch(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;f=l;l=l+16|0;h=f+4|0;i=f;Qe(c[a+120>>2]|0,+g[a+140>>2]);j=a+164|0;k=a+168|0;m=a+176|0;n=a+180|0;o=a+172|0;p=a+160|0;g[h>>2]=0.0;q=c[j>>2]|0;if(q>>>0<(c[k>>2]|0)>>>0){c[q>>2]=0;c[j>>2]=q+4}else Zd(p,h);g[h>>2]=1.0;q=c[m>>2]|0;if(q>>>0<(c[n>>2]|0)>>>0){c[q>>2]=1065353216;c[m>>2]=q+4}else Zd(o,h);g[h>>2]=.8660253882408142;q=c[j>>2]|0;if(q>>>0<(c[k>>2]|0)>>>0){c[q>>2]=1063105495;c[j>>2]=q+4}else Zd(p,h);g[h>>2]=-.5;q=c[m>>2]|0;if(q>>>0<(c[n>>2]|0)>>>0){c[q>>2]=-1090519040;c[m>>2]=q+4}else Zd(o,h);g[h>>2]=-.8660253882408142;q=c[j>>2]|0;if(q>>>0<(c[k>>2]|0)>>>0){c[q>>2]=-1084378153;c[j>>2]=q+4}else Zd(p,h);g[h>>2]=-.5;p=c[m>>2]|0;if(p>>>0<(c[n>>2]|0)>>>0){c[p>>2]=-1090519040;c[m>>2]=p+4}else Zd(o,h);o=a+152|0;p=a+156|0;m=a+148|0;n=0;r=0.0;do{s=.54-+F(+(+(n|0)*6.283185307179586/18.0))*.46;t=s;g[h>>2]=t;q=c[o>>2]|0;if(q>>>0<(c[p>>2]|0)>>>0){g[q>>2]=t;c[o>>2]=q+4}else Zd(m,h);r=r+s;n=n+1|0}while((n|0)!=19);n=c[a+148>>2]|0;m=0;do{o=n+(m<<2)|0;g[o>>2]=+g[o>>2]/r;m=m+1|0}while((m|0)!=19);m=a+40|0;n=a+44|0;o=a+52|0;p=a+56|0;q=a+48|0;j=a+36|0;g[h>>2]=0.0;k=c[m>>2]|0;if(k>>>0<(c[n>>2]|0)>>>0){c[k>>2]=0;c[m>>2]=k+4}else Zd(j,h);g[h>>2]=0.0;k=c[o>>2]|0;if(k>>>0<(c[p>>2]|0)>>>0){c[k>>2]=0;c[o>>2]=k+4}else Zd(q,h);g[h>>2]=0.0;k=c[m>>2]|0;if(k>>>0<(c[n>>2]|0)>>>0){c[k>>2]=0;c[m>>2]=k+4}else Zd(j,h);g[h>>2]=0.0;k=c[o>>2]|0;if(k>>>0<(c[p>>2]|0)>>>0){c[k>>2]=0;c[o>>2]=k+4}else Zd(q,h);g[h>>2]=0.0;k=c[m>>2]|0;if(k>>>0<(c[n>>2]|0)>>>0){c[k>>2]=0;c[m>>2]=k+4}else Zd(j,h);g[h>>2]=0.0;j=c[o>>2]|0;if(j>>>0<(c[p>>2]|0)>>>0){c[j>>2]=0;c[o>>2]=j+4}else Zd(q,h);if((rb[c[(c[a>>2]|0)+84>>2]&127](a)|0)>>>0>b>>>0){u=0;l=f;return u|0}if((rb[c[(c[a>>2]|0)+88>>2]&127](a)|0)>>>0<b>>>0){u=0;l=f;return u|0}c[a+24>>2]=e;c[a+28>>2]=d;c[a+8>>2]=0;d=e<<7&2147483520;b=sB(d>>>0>1073741823?-1:d<<2)|0;Oe(~~+g[a+4>>2],e,b)|0;d=a+84|0;q=c[d>>2]|0;j=a+88|0;o=c[j>>2]|0;if((o|0)!=(q|0))c[j>>2]=o+(~((o+-4-q|0)>>>2)<<2);q=a+96|0;o=c[q>>2]|0;p=a+100|0;k=c[p>>2]|0;if((k|0)!=(o|0))c[p>>2]=k+(~((k+-4-o|0)>>>2)<<2);o=a+108|0;k=c[o>>2]|0;m=a+112|0;n=c[m>>2]|0;if((n|0)!=(k|0))c[m>>2]=n+(~((n+-4-k|0)>>>2)<<2);c[h>>2]=0;k=e>>>1;e=a+92|0;n=a+104|0;v=a+116|0;if(!k){a=0;do a=a+1|0;while((a|0)<256);c[h>>2]=a}else{a=0;do{c[i>>2]=0;w=a;x=0;while(1){y=b+((P(w,k)|0)+x<<2)|0;r=+g[y>>2];do if(r>0.0){z=c[j>>2]|0;if((z|0)==(c[e>>2]|0)){Pe(d,y);A=c[i>>2]|0}else{g[z>>2]=r;c[j>>2]=z+4;A=x}z=c[p>>2]|0;if((z|0)==(c[n>>2]|0))Jh(q,i);else{c[z>>2]=A;c[p>>2]=z+4}z=c[m>>2]|0;if((z|0)==(c[v>>2]|0)){Jh(o,h);break}else{c[z>>2]=c[h>>2];c[m>>2]=z+4;break}}while(0);y=(c[i>>2]|0)+1|0;c[i>>2]=y;if((y|0)>=(k|0))break;w=c[h>>2]|0;x=y}a=(c[h>>2]|0)+1|0;c[h>>2]=a}while((a|0)<256)}uB(b);u=1;l=f;return u|0}function Dh(a){a=a|0;var b=0,d=0,e=0,f=0,h=0,i=0;c[a+8>>2]=0;b=c[a+12>>2]|0;d=a+16|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=e;do{c[d>>2]=f+-48;LB(f+-12|0);e=c[f+-24>>2]|0;if(e|0){h=f+-20|0;i=c[h>>2]|0;if((i|0)!=(e|0))c[h>>2]=i+(~((i+-4-e|0)>>>2)<<2);tB(e)}f=c[d>>2]|0}while((f|0)!=(b|0))}b=c[a+36>>2]|0;f=c[a+48>>2]|0;g[b>>2]=0.0;g[f>>2]=0.0;g[b+4>>2]=0.0;g[f+4>>2]=0.0;g[b+8>>2]=0.0;g[f+8>>2]=0.0;f=c[a+72>>2]|0;b=a+76|0;a=c[b>>2]|0;if((a|0)==(f|0))return;c[b>>2]=a+(~((a+-4-f|0)>>>2)<<2);return}function Eh(a){a=a|0;return 1}function Fh(a){a=a|0;return 16384}function Gh(a){a=a|0;return 2048}function Hh(a){a=a|0;return 1}function Ih(a){a=a|0;return 1}function Jh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=a+4|0;e=c[d>>2]|0;f=c[a>>2]|0;g=(e-f>>2)+1|0;if(g>>>0>1073741823){Az(a);h=c[a>>2]|0;i=c[d>>2]|0}else{h=f;i=e}e=a+8|0;f=(c[e>>2]|0)-h|0;j=f>>1;k=f>>2>>>0<536870911?(j>>>0<g>>>0?g:j):1073741823;j=i-h>>2;do if(k)if(k>>>0>1073741823){g=za(4)|0;AD(g);Xa(g|0,3080,250)}else{l=rB(k<<2)|0;break}else l=0;while(0);g=l+(j<<2)|0;c[g>>2]=c[b>>2];b=i-h|0;i=g+(0-(b>>2)<<2)|0;if((b|0)>0)MD(i|0,h|0,b|0)|0;c[a>>2]=i;c[d>>2]=g+4;c[e>>2]=l+(k<<2);if(!h)return;tB(h);return}function Kh(a,b){a=a|0;b=b|0;var d=0,e=0;GB(a,b);GB(a+12|0,b+12|0);GB(a+24|0,b+24|0);GB(a+36|0,b+36|0);d=a+48|0;e=b+48|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];c[d+16>>2]=c[e+16>>2];_b(a+68|0,b+68|0);return}function Lh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;d=l;l=l+32|0;e=d;f=a+4|0;g=c[f>>2]|0;h=c[a>>2]|0;i=((g-h|0)/80|0)+1|0;if(i>>>0>53687091){Az(a);j=c[a>>2]|0;k=c[f>>2]|0}else{j=h;k=g}g=a+8|0;h=((c[g>>2]|0)-j|0)/80|0;m=h<<1;n=h>>>0<26843545?(m>>>0<i>>>0?i:m):53687091;m=(k-j|0)/80|0;c[e+12>>2]=0;c[e+16>>2]=a+8;do if(n)if(n>>>0>53687091){j=za(4)|0;AD(j);Xa(j|0,3080,250)}else{o=rB(n*80|0)|0;break}else o=0;while(0);c[e>>2]=o;j=o+(m*80|0)|0;m=e+8|0;c[m>>2]=j;k=e+4|0;c[k>>2]=j;i=e+12|0;c[i>>2]=o+(n*80|0);Kh(j,b);c[m>>2]=(c[m>>2]|0)+80;b=c[a>>2]|0;j=c[f>>2]|0;if((j|0)==(b|0)){p=k;q=c[k>>2]|0;r=b;s=j;c[a>>2]=q;c[p>>2]=r;t=c[m>>2]|0;c[f>>2]=t;c[m>>2]=s;u=c[g>>2]|0;v=c[i>>2]|0;c[g>>2]=v;c[i>>2]=u;w=c[p>>2]|0;c[e>>2]=w;Nh(e);l=d;return}n=j;j=c[k>>2]|0;do{o=j+-80|0;h=n;n=n+-80|0;c[o>>2]=c[n>>2];c[o+4>>2]=c[n+4>>2];c[o+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;o=j+-68|0;x=h+-68|0;c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];c[o+8>>2]=c[x+8>>2];c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;x=j+-56|0;o=h+-56|0;c[x>>2]=c[o>>2];c[x+4>>2]=c[o+4>>2];c[x+8>>2]=c[o+8>>2];c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;o=j+-44|0;x=h+-44|0;c[o>>2]=c[x>>2];c[o+4>>2]=c[x+4>>2];c[o+8>>2]=c[x+8>>2];c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;x=j+-32|0;o=h+-32|0;c[x>>2]=c[o>>2];c[x+4>>2]=c[o+4>>2];c[x+8>>2]=c[o+8>>2];c[x+12>>2]=c[o+12>>2];c[x+16>>2]=c[o+16>>2];o=j+-12|0;x=h+-12|0;c[o>>2]=0;y=j+-8|0;c[y>>2]=0;c[j+-4>>2]=0;c[o>>2]=c[x>>2];o=h+-8|0;c[y>>2]=c[o>>2];y=h+-4|0;c[j+-4>>2]=c[y>>2];c[y>>2]=0;c[o>>2]=0;c[x>>2]=0;j=(c[k>>2]|0)+-80|0;c[k>>2]=j}while((n|0)!=(b|0));p=k;q=j;r=c[a>>2]|0;s=c[f>>2]|0;c[a>>2]=q;c[p>>2]=r;t=c[m>>2]|0;c[f>>2]=t;c[m>>2]=s;u=c[g>>2]|0;v=c[i>>2]|0;c[g>>2]=v;c[i>>2]=u;w=c[p>>2]|0;c[e>>2]=w;Nh(e);l=d;return}function Mh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;b=c[a>>2]|0;if(!b)return;d=a+4|0;e=c[d>>2]|0;if((e|0)==(b|0))f=b;else{g=e;do{e=g+-80|0;c[d>>2]=e;h=g+-12|0;i=c[h>>2]|0;if(i|0){j=g+-8|0;k=c[j>>2]|0;if((k|0)==(i|0))l=i;else{m=k;do{k=m+-12|0;c[j>>2]=k;LB(k);m=c[j>>2]|0}while((m|0)!=(i|0));l=c[h>>2]|0}tB(l)}LB(g+-44|0);LB(g+-56|0);LB(g+-68|0);LB(e);g=c[d>>2]|0}while((g|0)!=(b|0));f=c[a>>2]|0}tB(f);return}function Nh(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;b=c[a+4>>2]|0;d=a+8|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=e;do{e=f+-80|0;c[d>>2]=e;g=f+-12|0;h=c[g>>2]|0;if(h|0){i=f+-8|0;j=c[i>>2]|0;if((j|0)==(h|0))k=h;else{l=j;do{j=l+-12|0;c[i>>2]=j;LB(j);l=c[i>>2]|0}while((l|0)!=(h|0));k=c[g>>2]|0}tB(k)}LB(f+-44|0);LB(f+-56|0);LB(f+-68|0);LB(e);f=c[d>>2]|0}while((f|0)!=(b|0))}b=c[a>>2]|0;if(!b)return;tB(b);return}function Oh(b,d){b=b|0;d=+d;var e=0,f=0,h=0,i=0;g[b+4>>2]=d;c[b>>2]=6812;e=b+60|0;f=b+8|0;h=f+52|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));g[e>>2]=1.0;g[b+64>>2]=0.0;g[b+68>>2]=1.0;e=b+72|0;g[b+128>>2]=0.0;g[b+132>>2]=0.0;i=b+136|0;f=e;h=f+52|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));a[e+52>>0]=0;g[i>>2]=.10000000149011612;g[b+140>>2]=.699999988079071;f=b+144|0;h=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));f=sB(86016)|0;c[b+120>>2]=f;HD(f|0,0,86016)|0;return}function Ph(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0.0,x=0.0,y=0.0,z=0.0,A=0.0,B=0.0,C=0.0,E=0.0,F=0,G=0,H=0,I=0.0,J=0.0,K=0.0,M=0;f=l;l=l+64|0;h=f+48|0;i=f;j=b+8|0;k=c[j>>2]|0;m=k+1|0;c[j>>2]=m;j=c[b+24>>2]|0;n=j>>>1;o=sB(n>>>0>1073741823?-1:n<<2)|0;p=c[d>>2]|0;if(j>>>0>1){q=+(j>>>0);r=+(j>>>0);d=b+132|0;s=0.0;t=-1.0e4;u=0;while(1){v=u<<1;w=+g[p+(v<<2)>>2];x=+g[p+((v|1)<<2)>>2];y=+D(+(w*w+x*x));x=y>q?r:y;g[o+(u<<2)>>2]=x;y=t<x?x:t;w=+g[d>>2];if(w>0.0){z=x;A=s+z*z}else A=s;u=u+1|0;if((u|0)>=(n|0)){B=A;C=y;E=w;break}else{s=A;t=y}}}else{B=0.0;C=-1.0e4;E=+g[b+132>>2]}a:do if(E>0.0&j>>>0>5){t=B*E/100.0;u=2;A=0.0;do{s=+g[o+(u<<2)>>2];A=A+s*s;if(!(A<t))break a;g[o+(u+-2<<2)>>2]=0.0;u=u+1|0}while((u|0)<(n|0))}while(0);if(!(!(C<+(j>>>0)*2.0*.00006103515625)|(n|0)==0))HD(o|0,0,n<<2|0)|0;n=sB(1024)|0;HD(n|0,0,1024)|0;j=c[b+84>>2]|0;u=c[b+88>>2]|0;if((j|0)!=(u|0)){d=c[b+96>>2]|0;p=c[b+108>>2]|0;v=0;F=j;while(1){G=n+(c[p+(v<<2)>>2]<<2)|0;g[G>>2]=+g[o+(c[d+(v<<2)>>2]<<2)>>2]*+g[j+(v<<2)>>2]+ +g[G>>2];F=F+4|0;if((F|0)==(u|0))break;else v=v+1|0}}C=1.0/+(m|0);E=C*+(k|0);k=c[b+36>>2]|0;B=+g[k>>2]*E;g[k>>2]=B;m=k+4|0;t=+g[m>>2]*E;g[m>>2]=t;v=k+8|0;A=+g[v>>2]*E;g[v>>2]=A;u=c[b+48>>2]|0;F=u+4|0;j=u+8|0;d=0;E=B;B=t;t=A;while(1){p=n+(d<<2)|0;g[k>>2]=C*+g[p>>2]+E;G=n+(d+1<<2)|0;g[m>>2]=C*+g[G>>2]+B;H=n+(d+2<<2)|0;g[v>>2]=C*+g[H>>2]+t;A=+g[u>>2]*.996999979019165;g[u>>2]=A;I=+g[p>>2]*.003000020980834961+A;g[u>>2]=I;A=+g[F>>2]*.996999979019165;g[F>>2]=A;J=+g[G>>2]*.003000020980834961+A;g[F>>2]=J;A=+g[j>>2]*.996999979019165;g[j>>2]=A;K=+g[H>>2]*.003000020980834961+A;g[j>>2]=K;H=d+3|0;if((H|0)>=160)break;d=H;E=+g[k>>2];B=+g[m>>2];t=+g[v>>2]}v=c[b+172>>2]|0;m=c[b+160>>2]|0;t=+L(+(I*+g[m>>2]+0.0+J*+g[m+4>>2]+K*+g[m+8>>2]),+(I*+g[v>>2]+0.0+J*+g[v+4>>2]+K*+g[v+8>>2]))/6.283185307179586;g[h>>2]=t;v=b+76|0;m=c[v>>2]|0;if((m|0)==(c[b+80>>2]|0))Pe(b+72|0,h);else{g[m>>2]=t;c[v>>2]=m+4}m=i+4|0;v=i+8|0;h=i+12|0;a[h>>0]=0;k=i+16|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[k+20>>2]=0;c[k+24>>2]=0;c[k+28>>2]=0;a[i>>0]=1;c[m>>2]=c[e>>2];c[v>>2]=c[e+4>>2];e=i+28|0;d=i+32|0;j=i+24|0;F=0;u=0;H=0;while(1){G=n+(F<<2)|0;if((u|0)==(H|0))Pe(j,G);else{c[u>>2]=c[G>>2];c[e>>2]=u+4}G=F+1|0;if((G|0)>=256)break;F=G;u=c[e>>2]|0;H=c[d>>2]|0}uB(o);uB(n);n=b+16|0;o=c[n>>2]|0;if((o|0)==(c[b+20>>2]|0)){Qh(b+12|0,i);M=i+36|0}else{a[o>>0]=a[i>>0]|0;c[o+4>>2]=c[m>>2];c[o+8>>2]=c[v>>2];a[o+12>>0]=a[h>>0]|0;c[o+16>>2]=c[k>>2];c[o+20>>2]=c[i+20>>2];Xd(o+24|0,j);j=i+36|0;GB(o+36|0,j);c[n>>2]=(c[n>>2]|0)+48;M=j}LB(M);M=c[i+24>>2]|0;if(!M){l=f;return}i=c[e>>2]|0;if((i|0)!=(M|0))c[e>>2]=i+(~((i+-4-M|0)>>>2)<<2);tB(M);l=f;return}function Qh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;e=l;l=l+32|0;f=e;g=b+4|0;h=c[g>>2]|0;i=c[b>>2]|0;j=((h-i|0)/48|0)+1|0;if(j>>>0>89478485){Az(b);k=c[b>>2]|0;m=c[g>>2]|0}else{k=i;m=h}h=((c[b+8>>2]|0)-k|0)/48|0;i=h<<1;g=h>>>0<44739242?(i>>>0<j>>>0?j:i):89478485;i=(m-k|0)/48|0;c[f+12>>2]=0;c[f+16>>2]=b+8;do if(g)if(g>>>0>89478485){k=za(4)|0;AD(k);Xa(k|0,3080,250)}else{n=rB(g*48|0)|0;break}else n=0;while(0);c[f>>2]=n;k=n+(i*48|0)|0;m=f+8|0;c[m>>2]=k;j=f+4|0;c[j>>2]=k;c[f+12>>2]=n+(g*48|0);a[k>>0]=a[d>>0]|0;c[n+(i*48|0)+4>>2]=c[d+4>>2];c[n+(i*48|0)+8>>2]=c[d+8>>2];a[n+(i*48|0)+12>>0]=a[d+12>>0]|0;c[n+(i*48|0)+16>>2]=c[d+16>>2];c[n+(i*48|0)+20>>2]=c[d+20>>2];Xd(n+(i*48|0)+24|0,d+24|0);GB(n+(i*48|0)+36|0,d+36|0);c[m>>2]=k+48;Rh(b,f);b=c[j>>2]|0;j=c[m>>2]|0;if((j|0)!=(b|0)){k=j;do{c[m>>2]=k+-48;LB(k+-12|0);j=c[k+-24>>2]|0;if(j|0){d=k+-20|0;i=c[d>>2]|0;if((i|0)!=(j|0))c[d>>2]=i+(~((i+-4-j|0)>>>2)<<2);tB(j)}k=c[m>>2]|0}while((k|0)!=(b|0))}b=c[f>>2]|0;if(!b){l=e;return}tB(b);l=e;return}function Rh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=c[b>>2]|0;f=b+4|0;g=c[f>>2]|0;h=d+4|0;if((g|0)==(e|0)){i=h;j=b;k=c[h>>2]|0;l=e}else{m=g;g=c[h>>2]|0;do{n=m;m=m+-48|0;a[g+-48>>0]=a[m>>0]|0;c[g+-44>>2]=c[n+-44>>2];c[g+-40>>2]=c[n+-40>>2];a[g+-36>>0]=a[n+-36>>0]|0;c[g+-32>>2]=c[n+-32>>2];c[g+-28>>2]=c[n+-28>>2];Xd(g+-24|0,n+-24|0);GB(g+-12|0,n+-12|0);g=(c[h>>2]|0)+-48|0;c[h>>2]=g}while((m|0)!=(e|0));i=h;j=b;k=g;l=c[b>>2]|0}c[j>>2]=k;c[i>>2]=l;l=d+8|0;k=c[f>>2]|0;c[f>>2]=c[l>>2];c[l>>2]=k;k=b+8|0;b=d+12|0;l=c[k>>2]|0;c[k>>2]=c[b>>2];c[b>>2]=l;c[d>>2]=c[i>>2];return}function Sh(a){a=a|0;c[a>>2]=6924;ph(a);return}function Th(a){a=a|0;c[a>>2]=6924;ph(a);tB(a);return}function Uh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,25490,11);return}function Vh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,25478,11);return}function Wh(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,25173,304);return}function Xh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ch(a,b,c,d)|0}function Yh(a){a=a|0;Dh(a);return}function Zh(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;e=l;l=l+624|0;f=e+612|0;h=e+600|0;i=e+500|0;j=e+400|0;k=e+300|0;m=e+200|0;n=e+100|0;o=e;c[b>>2]=0;p=b+4|0;c[p>>2]=0;c[b+8>>2]=0;c[f>>2]=0;q=f+4|0;c[q>>2]=0;c[f+8>>2]=0;c[h>>2]=0;r=h+4|0;c[r>>2]=0;c[h+8>>2]=0;s=h+8|0;t=f+8|0;u=0;do{v=c[7028+(u<<2)>>2]|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,v,yn(v)|0);v=c[r>>2]|0;if(v>>>0<(c[s>>2]|0)>>>0){c[v>>2]=c[i>>2];c[v+4>>2]=c[i+4>>2];c[v+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[r>>2]=(c[r>>2]|0)+12}else Se(h,i);LB(i);if((u|0)<12){v=c[7028+(u+12<<2)>>2]|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,v,yn(v)|0);v=c[q>>2]|0;if(v>>>0<(c[t>>2]|0)>>>0){c[v>>2]=c[i>>2];c[v+4>>2]=c[i+4>>2];c[v+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[q>>2]=(c[q>>2]|0)+12}else Se(f,i);LB(i)}u=u+1|0}while((u|0)<24);u=c[d+28>>2]|0;w=+g[d+4>>2]/((u|0)==0?2048.0:+(u>>>0));u=i+52|0;g[i+72>>2]=0.0;g[i+76>>2]=0.0;t=i+80|0;a[t>>0]=0;s=i+84|0;v=i;x=v+48|0;do{c[v>>2]=0;v=v+4|0}while((v|0)<(x|0));a[i+48>>0]=0;c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;a[u+16>>0]=0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;a[s+12>>0]=0;RB(i,24161)|0;s=i+12|0;RB(s,24173)|0;y=i+24|0;RB(y,24196)|0;z=i+36|0;RB(z,44918)|0;a[i+48>>0]=1;c[u>>2]=256;a[i+68>>0]=0;a[t>>0]=0;c[i+88>>2]=1;a[i+96>>0]=0;g[i+92>>2]=w;t=c[p>>2]|0;u=b+8|0;if((t|0)==(c[u>>2]|0))ei(b,i);else{di(t,i);c[p>>2]=(c[p>>2]|0)+100}c[d+184>>2]=0;t=j+52|0;g[j+72>>2]=0.0;g[j+76>>2]=0.0;A=j+80|0;a[A>>0]=0;B=j+84|0;v=j;x=v+48|0;do{c[v>>2]=0;v=v+4|0}while((v|0)<(x|0));a[j+48>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;a[t+16>>0]=0;c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;a[B+12>>0]=0;RB(j,24277)|0;B=j+12|0;RB(B,24294)|0;C=j+24|0;RB(C,24323)|0;D=j+36|0;RB(D,44918)|0;a[j+48>>0]=1;c[t>>2]=256;a[j+68>>0]=0;a[A>>0]=0;c[j+88>>2]=1;a[j+96>>0]=0;g[j+92>>2]=w;A=c[p>>2]|0;if((A|0)==(c[u>>2]|0))ei(b,j);else{di(A,j);c[p>>2]=(c[p>>2]|0)+100}c[d+188>>2]=1;A=k+52|0;g[k+72>>2]=0.0;g[k+76>>2]=0.0;t=k+80|0;a[t>>0]=0;E=k+84|0;v=k;x=v+48|0;do{c[v>>2]=0;v=v+4|0}while((v|0)<(x|0));a[k+48>>0]=0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;a[A+16>>0]=0;c[E>>2]=0;c[E+4>>2]=0;c[E+8>>2]=0;a[E+12>>0]=0;RB(k,24457)|0;E=k+12|0;RB(E,24474)|0;F=k+24|0;RB(F,24492)|0;G=k+36|0;RB(G,44918)|0;a[k+48>>0]=1;c[A>>2]=84;a[k+68>>0]=0;a[t>>0]=0;c[k+88>>2]=1;a[k+96>>0]=0;g[k+92>>2]=w;t=c[p>>2]|0;if((t|0)==(c[u>>2]|0))ei(b,k);else{di(t,k);c[p>>2]=(c[p>>2]|0)+100}c[d+192>>2]=2;t=m+52|0;g[m+72>>2]=0.0;g[m+76>>2]=0.0;A=m+80|0;a[A>>0]=0;H=m+84|0;v=m;x=v+48|0;do{c[v>>2]=0;v=v+4|0}while((v|0)<(x|0));a[m+48>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;a[t+16>>0]=0;c[H>>2]=0;c[H+4>>2]=0;c[H+8>>2]=0;a[H+12>>0]=0;RB(m,24607)|0;H=m+12|0;RB(H,24614)|0;I=m+24|0;RB(I,24625)|0;J=m+36|0;RB(J,44918)|0;a[m+48>>0]=1;c[t>>2]=12;cc(m+56|0,c[f>>2]|0,c[q>>2]|0);a[m+68>>0]=0;a[A>>0]=0;c[m+88>>2]=1;a[m+96>>0]=0;g[m+92>>2]=w;A=c[p>>2]|0;if((A|0)==(c[u>>2]|0))ei(b,m);else{di(A,m);c[p>>2]=(c[p>>2]|0)+100}c[d+196>>2]=3;A=n+52|0;g[n+72>>2]=0.0;g[n+76>>2]=0.0;t=n+80|0;a[t>>0]=0;K=n+84|0;v=n;x=v+48|0;do{c[v>>2]=0;v=v+4|0}while((v|0)<(x|0));a[n+48>>0]=0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;a[A+16>>0]=0;c[K>>2]=0;c[K+4>>2]=0;c[K+8>>2]=0;a[K+12>>0]=0;RB(n,24732)|0;K=n+12|0;RB(K,24743)|0;L=n+24|0;RB(L,24759)|0;M=n+36|0;RB(M,44918)|0;a[n+48>>0]=1;c[A>>2]=12;cc(n+56|0,c[f>>2]|0,c[q>>2]|0);a[n+68>>0]=0;a[t>>0]=0;c[n+88>>2]=1;a[n+96>>0]=0;g[n+92>>2]=w;t=c[p>>2]|0;if((t|0)==(c[u>>2]|0))ei(b,n);else{di(t,n);c[p>>2]=(c[p>>2]|0)+100}c[d+200>>2]=4;t=o+52|0;g[o+72>>2]=0.0;g[o+76>>2]=0.0;A=o+80|0;a[A>>0]=0;N=o+84|0;v=o;x=v+48|0;do{c[v>>2]=0;v=v+4|0}while((v|0)<(x|0));a[o+48>>0]=0;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;a[t+16>>0]=0;c[N>>2]=0;c[N+4>>2]=0;c[N+8>>2]=0;a[N+12>>0]=0;RB(o,24869)|0;N=o+12|0;RB(N,24880)|0;v=o+24|0;RB(v,24911)|0;x=o+36|0;RB(x,44918)|0;a[o+48>>0]=1;c[t>>2]=24;cc(o+56|0,c[h>>2]|0,c[r>>2]|0);a[o+68>>0]=0;a[A>>0]=0;c[o+88>>2]=1;a[o+96>>0]=0;g[o+92>>2]=w;A=c[p>>2]|0;if((A|0)==(c[u>>2]|0))ei(b,o);else{di(A,o);c[p>>2]=(c[p>>2]|0)+100}c[d+204>>2]=5;d=o+56|0;p=c[d>>2]|0;if(p|0){A=o+60|0;b=c[A>>2]|0;if((b|0)==(p|0))O=p;else{u=b;do{b=u+-12|0;c[A>>2]=b;LB(b);u=c[A>>2]|0}while((u|0)!=(p|0));O=c[d>>2]|0}tB(O)}LB(x);LB(v);LB(N);LB(o);o=n+56|0;N=c[o>>2]|0;if(N|0){v=n+60|0;x=c[v>>2]|0;if((x|0)==(N|0))P=N;else{O=x;do{x=O+-12|0;c[v>>2]=x;LB(x);O=c[v>>2]|0}while((O|0)!=(N|0));P=c[o>>2]|0}tB(P)}LB(M);LB(L);LB(K);LB(n);n=m+56|0;K=c[n>>2]|0;if(K|0){L=m+60|0;M=c[L>>2]|0;if((M|0)==(K|0))Q=K;else{P=M;do{M=P+-12|0;c[L>>2]=M;LB(M);P=c[L>>2]|0}while((P|0)!=(K|0));Q=c[n>>2]|0}tB(Q)}LB(J);LB(I);LB(H);LB(m);m=k+56|0;H=c[m>>2]|0;if(H|0){I=k+60|0;J=c[I>>2]|0;if((J|0)==(H|0))R=H;else{Q=J;do{J=Q+-12|0;c[I>>2]=J;LB(J);Q=c[I>>2]|0}while((Q|0)!=(H|0));R=c[m>>2]|0}tB(R)}LB(G);LB(F);LB(E);LB(k);k=j+56|0;E=c[k>>2]|0;if(E|0){F=j+60|0;G=c[F>>2]|0;if((G|0)==(E|0))S=E;else{R=G;do{G=R+-12|0;c[F>>2]=G;LB(G);R=c[F>>2]|0}while((R|0)!=(E|0));S=c[k>>2]|0}tB(S)}LB(D);LB(C);LB(B);LB(j);j=i+56|0;B=c[j>>2]|0;if(B|0){C=i+60|0;D=c[C>>2]|0;if((D|0)==(B|0))T=B;else{S=D;do{D=S+-12|0;c[C>>2]=D;LB(D);S=c[C>>2]|0}while((S|0)!=(B|0));T=c[j>>2]|0}tB(T)}LB(z);LB(y);LB(s);LB(i);i=c[h>>2]|0;if(i|0){s=c[r>>2]|0;if((s|0)==(i|0))U=i;else{y=s;do{s=y+-12|0;c[r>>2]=s;LB(s);y=c[r>>2]|0}while((y|0)!=(i|0));U=c[h>>2]|0}tB(U)}U=c[f>>2]|0;if(!U){l=e;return}h=c[q>>2]|0;if((h|0)==(U|0))V=U;else{i=h;do{h=i+-12|0;c[q>>2]=h;LB(h);i=c[q>>2]|0}while((i|0)!=(U|0));V=c[f>>2]|0}tB(V);l=e;return}function _h(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+16|0;h=g;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];Ph(d,e,h);c[b+4>>2]=0;h=b+8|0;c[h>>2]=0;e=b+4|0;c[b>>2]=e;f=c[e>>2]|0;if(!f){i=rB(32)|0;c[i+16>>2]=c[d+184>>2];c[i+20>>2]=0;c[i+24>>2]=0;c[i+28>>2]=0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=e;c[e>>2]=i;c[b>>2]=i;gc(i,i);c[h>>2]=(c[h>>2]|0)+1;j=i}else j=f;f=c[d+12>>2]|0;i=(((c[d+16>>2]|0)-f|0)/48|0)+-1|0;d=f;f=d+(i*48|0)|0;h=j+24|0;b=c[h>>2]|0;if((b|0)==(c[j+28>>2]|0)){Qh(j+20|0,f);l=g;return}else{a[b>>0]=a[f>>0]|0;c[b+4>>2]=c[d+(i*48|0)+4>>2];c[b+8>>2]=c[d+(i*48|0)+8>>2];a[b+12>>0]=a[d+(i*48|0)+12>>0]|0;c[b+16>>2]=c[d+(i*48|0)+16>>2];c[b+20>>2]=c[d+(i*48|0)+20>>2];Xd(b+24|0,d+(i*48|0)+24|0);GB(b+36|0,d+(i*48|0)+36|0);c[h>>2]=(c[h>>2]|0)+48;l=g;return}}function $h(b,d){b=b|0;d=d|0;var e=0,f=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,C=0,F=0,G=0,H=0,I=0,J=0,K=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0.0,U=0.0,V=0.0,W=0.0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Da=0,Ea=0,Fa=0,Ga=0.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.0,Ta=0.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,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0.0,wb=0.0,xb=0.0,yb=0.0,Ab=0.0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0.0,Gb=0.0,Hb=0.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,cc=0,dc=0;e=l;l=l+18864|0;f=e+48|0;i=e;k=e+18752|0;m=e+18700|0;n=e+18640|0;o=e+18740|0;p=e+18728|0;q=e+18592|0;r=e+18716|0;s=e+18704|0;t=e+18544|0;u=e+18496|0;v=e+18448|0;w=e+17424|0;x=e+17408|0;y=e+17404|0;z=e+17400|0;A=e+13064|0;C=e+8728|0;F=e+4392|0;G=e+4384|0;H=e+18696|0;I=e+18692|0;J=e+18688|0;K=b+4|0;c[K>>2]=0;M=b+8|0;c[M>>2]=0;N=b+4|0;c[b>>2]=N;O=d+12|0;P=d+16|0;if((c[P>>2]|0)==(c[O>>2]|0)){l=e;return}Q=c[d+36>>2]|0;R=c[d+172>>2]|0;S=c[d+160>>2]|0;T=+g[Q>>2];U=+g[Q+4>>2];V=+g[Q+8>>2];W=+L(+(T*+g[S>>2]+0.0+U*+g[S+4>>2]+V*+g[S+8>>2]),+(T*+g[R>>2]+0.0+U*+g[R+4>>2]+V*+g[R+8>>2]));V=W/6.283185307179586*3.0;R=~~+B(+V);h[f>>3]=+Ca(+(W/75.39822368615503))*440.0;zn(e+18800|0,25515,f)|0;g[m>>2]=0.0;S=c[O>>2]|0;if((S|0)!=(c[P>>2]|0)){O=i+4|0;Q=i+8|0;X=i+12|0;Y=i+16|0;Z=i+20|0;_=i+24|0;$=i+36|0;aa=k+4|0;ba=k+8|0;ca=k+12|0;da=k+16|0;ea=k+24|0;fa=k+28|0;ga=k+32|0;ha=d+124|0;ia=i+28|0;ja=d+148|0;ka=q+4|0;la=q+8|0;ma=q+8|0;na=f+4|0;oa=f+8|0;pa=d+60|0;qa=d+188|0;ra=N;sa=k+36|0;ta=k+24|0;ua=i+24|0;va=n+4|0;wa=k+20|0;xa=r+4|0;ya=s+4|0;za=o+4|0;Aa=p+4|0;Ba=d+72|0;Da=0;W=V-+(R|0);Ea=R;R=S;while(1){a[i>>0]=a[R>>0]|0;c[O>>2]=c[R+4>>2];c[Q>>2]=c[R+8>>2];a[X>>0]=a[R+12>>0]|0;c[Y>>2]=c[R+16>>2];c[Z>>2]=c[R+20>>2];Xd(_,R+24|0);GB($,R+36|0);a[ca>>0]=0;c[da>>2]=0;c[da+4>>2]=0;c[da+8>>2]=0;c[da+12>>2]=0;c[da+16>>2]=0;c[da+20>>2]=0;c[da+24>>2]=0;c[da+28>>2]=0;a[k>>0]=1;c[aa>>2]=c[O>>2];c[ba>>2]=c[Q>>2];g[f>>2]=0.0;Zd(ea,f);S=c[fa>>2]|0;Fa=c[ga>>2]|0;g[f>>2]=0.0;if(S>>>0<Fa>>>0){c[S>>2]=0;c[fa>>2]=S+4}else Zd(ea,f);if(!(a[ha>>0]|0)){Ga=W;Ha=Ea}else{V=+g[(c[Ba>>2]|0)+(Da<<2)>>2]*3.0;S=~~+B(+V);Ga=V-+(S|0);Ha=S}S=c[ia>>2]|0;Fa=c[_>>2]|0;if(((S-Fa>>2)+-3|0)>2){V=1.0-Ga;Ia=2;Ja=S;S=Fa;while(1){Fa=S;Ka=Ia+Ha|0;U=V*+g[Fa+(Ka<<2)>>2]+Ga*+g[Fa+(Ka+1<<2)>>2];g[m>>2]=U;Ka=c[fa>>2]|0;if((Ka|0)==(c[ga>>2]|0)){Pe(ea,m);La=c[_>>2]|0;Ma=c[ia>>2]|0}else{g[Ka>>2]=U;c[fa>>2]=Ka+4;La=S;Ma=Ja}Ia=Ia+1|0;if((Ia|0)>=((Ma-La>>2)+-3|0))break;else{Ja=Ma;S=La}}}g[f>>2]=0.0;S=c[fa>>2]|0;Ja=c[ga>>2]|0;if(S>>>0<Ja>>>0){c[S>>2]=0;Ia=S+4|0;c[fa>>2]=Ia;Na=Ia;Oa=Ja}else{Zd(ea,f);Na=c[fa>>2]|0;Oa=c[ga>>2]|0}g[f>>2]=0.0;if(Na>>>0<Oa>>>0){c[Na>>2]=0;Ja=Na+4|0;c[fa>>2]=Ja;Pa=Ja;Qa=Oa}else{Zd(ea,f);Pa=c[fa>>2]|0;Qa=c[ga>>2]|0}g[f>>2]=0.0;if(Pa>>>0<Qa>>>0){c[Pa>>2]=0;c[fa>>2]=Pa+4}else Zd(ea,f);Xd(o,ea);Xd(p,ja);Ne(n,o,p);Ja=c[p>>2]|0;if(Ja|0){Ia=c[Aa>>2]|0;if((Ia|0)!=(Ja|0))c[Aa>>2]=Ia+(~((Ia+-4-Ja|0)>>>2)<<2);tB(Ja)}Ja=c[o>>2]|0;if(Ja|0){Ia=c[za>>2]|0;if((Ia|0)!=(Ja|0))c[za>>2]=Ia+(~((Ia+-4-Ja|0)>>>2)<<2);tB(Ja)}c[q>>2]=0;c[ka>>2]=0;c[la>>2]=0;Ja=0;Ia=0;S=0;Ka=0;while(1){V=+g[(c[ea>>2]|0)+(Ja<<2)>>2]-+g[(c[n>>2]|0)+(Ja<<2)>>2];U=V*V;g[f>>2]=U;if(Ia>>>0<S>>>0){g[Ka>>2]=U;c[ka>>2]=Ia+4}else Zd(q,f);Fa=Ja+1|0;if((Fa|0)>=256)break;Ra=c[ka>>2]|0;Ja=Fa;Ia=Ra;S=c[ma>>2]|0;Ka=Ra}Xd(r,q);Xd(s,ja);Ne(f,r,s);Ka=c[q>>2]|0;if(Ka|0){S=c[ka>>2]|0;if((S|0)!=(Ka|0))c[ka>>2]=S+(~((S+-4-Ka|0)>>>2)<<2);tB(Ka);c[ma>>2]=0;c[ka>>2]=0;c[q>>2]=0}c[q>>2]=c[f>>2];c[ka>>2]=c[na>>2];c[ma>>2]=c[oa>>2];c[oa>>2]=0;c[na>>2]=0;c[f>>2]=0;Ka=c[s>>2]|0;if(Ka|0){S=c[ya>>2]|0;if((S|0)!=(Ka|0))c[ya>>2]=S+(~((S+-4-Ka|0)>>>2)<<2);tB(Ka)}Ka=c[r>>2]|0;if(Ka|0){S=c[xa>>2]|0;if((S|0)!=(Ka|0))c[xa>>2]=S+(~((S+-4-Ka|0)>>>2)<<2);tB(Ka)}Ka=0;do{S=(c[q>>2]|0)+(Ka<<2)|0;U=+D(+(+g[S>>2]));g[S>>2]=U;S=(c[ea>>2]|0)+(Ka<<2)|0;V=+g[S>>2];if(U>0.0){T=V-+g[(c[n>>2]|0)+(Ka<<2)>>2];if(T>0.0)Sa=T/+E(+U,+(+g[pa>>2]));else Sa=0.0;g[S>>2]=Sa;Ta=Sa}else Ta=V;if(Ta<0.0){S=xe(40212,25542,41)|0;qr(f,S+(c[(c[S>>2]|0)+-12>>2]|0)|0);Ia=Xs(f,40916)|0;Ja=zb[c[(c[Ia>>2]|0)+28>>2]&63](Ia,10)|0;Ys(f);Hr(S,Ja)|0;vr(S)|0}Ka=Ka+1|0}while((Ka|0)<256);Ka=c[N>>2]|0;do if(Ka){S=c[qa>>2]|0;Ja=Ka;while(1){Ia=c[Ja+16>>2]|0;if((S|0)<(Ia|0)){Ra=c[Ja>>2]|0;if(!Ra){Ua=55;break}else Va=Ra}else{if((Ia|0)>=(S|0)){Ua=60;break}Wa=Ja+4|0;Ia=c[Wa>>2]|0;if(!Ia){Ua=59;break}else Va=Ia}Ja=Va}if((Ua|0)==55){Ua=0;c[f>>2]=Ja;Xa=Ja;Ya=Ja;break}else if((Ua|0)==59){Ua=0;c[f>>2]=Ja;Xa=Ja;Ya=Wa;break}else if((Ua|0)==60){Ua=0;c[f>>2]=Ja;Xa=Ja;Ya=f;break}}else{c[f>>2]=N;Xa=ra;Ya=N}while(0);Ka=c[Ya>>2]|0;if(!Ka){S=rB(32)|0;c[S+16>>2]=c[qa>>2];c[S+20>>2]=0;c[S+24>>2]=0;c[S+28>>2]=0;c[S>>2]=0;c[S+4>>2]=0;c[S+8>>2]=Xa;c[Ya>>2]=S;Ia=c[c[b>>2]>>2]|0;if(!Ia)Za=S;else{c[b>>2]=Ia;Za=c[Ya>>2]|0}gc(c[K>>2]|0,Za);c[M>>2]=(c[M>>2]|0)+1;_a=S}else _a=Ka;Ka=_a+24|0;S=c[Ka>>2]|0;if((S|0)==(c[_a+28>>2]|0))Qh(_a+20|0,k);else{a[S>>0]=a[k>>0]|0;c[S+4>>2]=c[aa>>2];c[S+8>>2]=c[ba>>2];a[S+12>>0]=a[ca>>0]|0;c[S+16>>2]=c[da>>2];c[S+20>>2]=c[wa>>2];Xd(S+24|0,ea);GB(S+36|0,sa);c[Ka>>2]=(c[Ka>>2]|0)+48}Da=Da+1|0;Ka=c[q>>2]|0;if(Ka|0){S=c[ka>>2]|0;if((S|0)!=(Ka|0))c[ka>>2]=S+(~((S+-4-Ka|0)>>>2)<<2);tB(Ka)}Ka=c[n>>2]|0;if(Ka|0){S=c[va>>2]|0;if((S|0)!=(Ka|0))c[va>>2]=S+(~((S+-4-Ka|0)>>>2)<<2);tB(Ka)}LB(sa);Ka=c[ta>>2]|0;if(Ka|0){S=c[fa>>2]|0;if((S|0)!=(Ka|0))c[fa>>2]=S+(~((S+-4-Ka|0)>>>2)<<2);tB(Ka)}LB($);Ka=c[ua>>2]|0;if(Ka|0){S=c[ia>>2]|0;if((S|0)!=(Ka|0))c[ia>>2]=S+(~((S+-4-Ka|0)>>>2)<<2);tB(Ka)}R=R+48|0;if((R|0)==(c[P>>2]|0))break;else{W=Ga;Ea=Ha}}}Ha=d+68|0;Ea=d+188|0;P=c[N>>2]|0;do if(P){R=c[Ea>>2]|0;ia=P;while(1){ua=c[ia+16>>2]|0;if((R|0)<(ua|0)){$=c[ia>>2]|0;if(!$){Ua=97;break}else $a=$}else{if((ua|0)>=(R|0)){Ua=102;break}ab=ia+4|0;ua=c[ab>>2]|0;if(!ua){Ua=101;break}else $a=ua}ia=$a}if((Ua|0)==97){c[f>>2]=ia;bb=ia;cb=ia;break}else if((Ua|0)==101){c[f>>2]=ia;bb=ia;cb=ab;break}else if((Ua|0)==102){c[f>>2]=ia;bb=ia;cb=f;break}}else{c[f>>2]=N;bb=N;cb=N}while(0);ab=c[cb>>2]|0;if(!ab){$a=rB(32)|0;c[$a+16>>2]=c[Ea>>2];c[$a+20>>2]=0;c[$a+24>>2]=0;c[$a+28>>2]=0;c[$a>>2]=0;c[$a+4>>2]=0;c[$a+8>>2]=bb;c[cb>>2]=$a;bb=c[c[b>>2]>>2]|0;if(!bb)db=$a;else{c[b>>2]=bb;db=c[cb>>2]|0}gc(c[K>>2]|0,db);c[M>>2]=(c[M>>2]|0)+1;eb=$a}else eb=ab;ab=N;$a=n+4|0;db=n+8|0;cb=n+12|0;bb=n+16|0;P=n+20|0;R=n+24|0;ua=n+36|0;$=q+4|0;fa=q+8|0;ta=q+12|0;sa=q+16|0;va=t+4|0;ka=t+8|0;Da=t+12|0;ea=t+16|0;wa=u+4|0;da=u+8|0;ca=u+12|0;ba=u+16|0;aa=v+4|0;_a=v+8|0;Za=v+12|0;Ya=v+16|0;Xa=x+4|0;qa=x+8|0;ra=x+8|0;Wa=i+4|0;Va=i+8|0;pa=i+8|0;xa=q+28|0;r=q+32|0;ya=q+24|0;s=q+24|0;na=d+120|0;oa=t+24|0;ma=u+24|0;ja=v+24|0;la=d+128|0;za=v+28|0;o=u+28|0;Aa=t+28|0;p=d+192|0;Pa=d+196|0;Qa=d+200|0;ga=d+204|0;d=v+36|0;Oa=v+24|0;Na=u+36|0;La=u+24|0;Ma=t+36|0;_=t+24|0;m=q+36|0;Ba=n+24|0;ha=n+28|0;Q=v+20|0;O=u+20|0;Z=t+20|0;Y=q+20|0;X=c[eb+20>>2]|0;while(1){eb=c[N>>2]|0;do if(eb){Ka=c[Ea>>2]|0;S=eb;while(1){Ia=c[S+16>>2]|0;if((Ka|0)<(Ia|0)){Ra=c[S>>2]|0;if(!Ra){Ua=113;break}else fb=Ra}else{if((Ia|0)>=(Ka|0)){Ua=118;break}gb=S+4|0;Ia=c[gb>>2]|0;if(!Ia){Ua=117;break}else fb=Ia}S=fb}if((Ua|0)==113){Ua=0;c[f>>2]=S;hb=S;ib=S;break}else if((Ua|0)==117){Ua=0;c[f>>2]=S;hb=S;ib=gb;break}else if((Ua|0)==118){Ua=0;c[f>>2]=S;hb=S;ib=f;break}}else{c[f>>2]=N;hb=ab;ib=N}while(0);eb=c[ib>>2]|0;if(!eb){ia=rB(32)|0;c[ia+16>>2]=c[Ea>>2];c[ia+20>>2]=0;c[ia+24>>2]=0;c[ia+28>>2]=0;c[ia>>2]=0;c[ia+4>>2]=0;c[ia+8>>2]=hb;c[ib>>2]=ia;Ka=c[c[b>>2]>>2]|0;if(!Ka)jb=ia;else{c[b>>2]=Ka;jb=c[ib>>2]|0}gc(c[K>>2]|0,jb);c[M>>2]=(c[M>>2]|0)+1;kb=ia}else kb=eb;if((X|0)==(c[kb+24>>2]|0))break;a[n>>0]=a[X>>0]|0;c[$a>>2]=c[X+4>>2];c[db>>2]=c[X+8>>2];a[cb>>0]=a[X+12>>0]|0;c[bb>>2]=c[X+16>>2];c[P>>2]=c[X+20>>2];Xd(R,X+24|0);GB(ua,X+36|0);a[ta>>0]=0;c[sa>>2]=0;c[sa+4>>2]=0;c[sa+8>>2]=0;c[sa+12>>2]=0;c[sa+16>>2]=0;c[sa+20>>2]=0;c[sa+24>>2]=0;c[sa+28>>2]=0;a[Da>>0]=0;c[ea>>2]=0;c[ea+4>>2]=0;c[ea+8>>2]=0;c[ea+12>>2]=0;c[ea+16>>2]=0;c[ea+20>>2]=0;c[ea+24>>2]=0;c[ea+28>>2]=0;a[ca>>0]=0;c[ba>>2]=0;c[ba+4>>2]=0;c[ba+8>>2]=0;c[ba+12>>2]=0;c[ba+16>>2]=0;c[ba+20>>2]=0;c[ba+24>>2]=0;c[ba+28>>2]=0;a[Za>>0]=0;c[Ya>>2]=0;c[Ya+4>>2]=0;c[Ya+8>>2]=0;c[Ya+12>>2]=0;c[Ya+16>>2]=0;c[Ya+20>>2]=0;c[Ya+24>>2]=0;c[Ya+28>>2]=0;a[q>>0]=1;eb=c[$a>>2]|0;c[$>>2]=eb;ia=c[db>>2]|0;c[fa>>2]=ia;a[t>>0]=1;c[va>>2]=eb;c[ka>>2]=ia;a[u>>0]=1;c[wa>>2]=eb;c[da>>2]=ia;a[v>>0]=1;c[aa>>2]=eb;c[_a>>2]=ia;ia=c[R>>2]|0;eb=0;Ka=0;do{Ga=+g[ia+(eb<<2)>>2];g[w+(eb<<2)>>2]=Ga;Ka=Ka|Ga>0.0;eb=eb+1|0}while((eb|0)!=256);c[x>>2]=0;c[Xa>>2]=0;c[qa>>2]=0;eb=rB(48)|0;c[x>>2]=eb;ia=eb+48|0;c[ra>>2]=ia;Ja=eb;Ia=Ja+48|0;do{c[Ja>>2]=0;Ja=Ja+4|0}while((Ja|0)<(Ia|0));c[Xa>>2]=ia;Ra=rB(48)|0;Ja=Ra;Ia=Ja+48|0;do{c[Ja>>2]=0;Ja=Ja+4|0}while((Ja|0)<(Ia|0));Ja=Ra+48|0;a:do if(Ka){if(+g[Ha>>2]==0.0){Ia=3;ia=0;Fa=eb;lb=0;mb=0;nb=0;while(1){Ga=+g[w+(Ia+-1<<2)>>2]*.5+0.0+ +g[w+(Ia<<2)>>2]+ +g[w+(Ia+1<<2)>>2]*.5;g[y>>2]=Ga;if((lb|0)==(mb|0)){Pe(ya,y);ob=c[x>>2]|0}else{g[nb>>2]=Ga;c[xa>>2]=lb+4;ob=Fa}pb=(ia|0)%12|0;qb=ob+(pb<<2)|0;g[qb>>2]=+g[y>>2]*+g[7236+(ia<<2)>>2]+ +g[qb>>2];qb=Ra+(pb<<2)|0;g[qb>>2]=+g[qb>>2]+ +g[y>>2]*+g[7572+(ia<<2)>>2];qb=Ia+3|0;if((qb|0)>=255)break a;pb=c[xa>>2]|0;Ia=qb;ia=ia+1|0;Fa=ob;lb=pb;mb=c[r>>2]|0;nb=pb}}nb=1;do{g[f+(nb<<2)>>2]=1.0;nb=nb+1|0}while((nb|0)!=1084);c[i>>2]=0;c[Wa>>2]=0;c[Va>>2]=0;c[k>>2]=0;nb=3;mb=0;do{do if(+g[w+(nb+-1<<2)>>2]+0.0+ +g[w+(nb<<2)>>2]+ +g[w+(nb+1<<2)>>2]>0.0){lb=c[Wa>>2]|0;if((lb|0)==(c[pa>>2]|0)){Jh(i,k);break}else{c[lb>>2]=mb;c[Wa>>2]=lb+4;break}}while(0);g[z>>2]=0.0;lb=c[xa>>2]|0;if(lb>>>0<(c[r>>2]|0)>>>0){c[lb>>2]=0;c[xa>>2]=lb+4}else Zd(ya,z);mb=(c[k>>2]|0)+1|0;c[k>>2]=mb;nb=nb+3|0}while((nb|0)<255);nb=c[i>>2]|0;mb=(c[Wa>>2]|0)-nb|0;lb=mb<<6;Fa=nb;nb=sB(lb>>>0>1073741823?-1:lb<<2)|0;lb=mb>>2;if((mb|0)>0){mb=c[na>>2]|0;ia=0;do{Ia=c[Fa+(ia<<2)>>2]<<8;S=ia<<8;pb=0;do{c[nb+(pb+S<<2)>>2]=c[mb+(Ia+pb<<2)>>2];pb=pb+1|0}while((pb|0)!=256);ia=ia+1|0}while((ia|0)<(lb|0))}Zm(nb,256,256,lb,w,f,z,A,C,F,G)|0;uB(nb);ia=c[Wa>>2]|0;mb=c[i>>2]|0;Fa=ia-mb|0;pb=mb;Ia=ia;if((Fa|0)>0){ia=c[s>>2]|0;S=c[x>>2]|0;qb=Fa>>>2;Fa=0;do{rb=f+(Fa<<2)|0;sb=c[pb+(Fa<<2)>>2]|0;c[ia+(sb<<2)>>2]=c[rb>>2];tb=(sb|0)%12|0;ub=S+(tb<<2)|0;g[ub>>2]=+g[rb>>2]*+g[7236+(sb<<2)>>2]+ +g[ub>>2];ub=Ra+(tb<<2)|0;g[ub>>2]=+g[ub>>2]+ +g[rb>>2]*+g[7572+(sb<<2)>>2];Fa=Fa+1|0}while((Fa|0)<(qb|0))}qb=mb;if(mb|0){if((Ia|0)!=(pb|0))c[Wa>>2]=Ia+(~((Ia+-4-mb|0)>>>2)<<2);tB(qb)}}else{qb=0;Fa=0;S=0;while(1){g[f>>2]=0.0;if(Fa>>>0<S>>>0){c[Fa>>2]=0;c[xa>>2]=Fa+4}else Zd(ya,f);ia=qb+1|0;if((ia|0)>=84)break a;qb=ia;Fa=c[xa>>2]|0;S=c[r>>2]|0}}while(0);ai(oa,c[x>>2]|0,c[Xa>>2]|0);ai(ma,Ra,Ja);c[H>>2]=c[x>>2];c[I>>2]=Ra;c[J>>2]=Ja;c[k>>2]=c[H>>2];c[i>>2]=c[I>>2];c[f>>2]=c[J>>2];bi(x,k,i,f)|0;ai(ja,c[x>>2]|0,c[Xa>>2]|0);Ga=+g[la>>2];if(Ga>0.0){eb=rB(12)|0;c[eb>>2]=0;c[eb+4>>2]=0;c[eb+8>>2]=0;switch(~~Ga|0){case 3:{Ka=c[oa>>2]|0;S=c[Aa>>2]|0;if((Ka|0)==(S|0))vb=0.0;else{Fa=Ka;Ga=0.0;while(1){W=+g[Fa>>2];Ta=Ga+W*W;g[eb>>2]=Ta;Fa=Fa+4|0;if((Fa|0)==(S|0)){vb=Ta;break}else Ga=Ta}}Ga=+D(+vb);g[eb>>2]=Ga;S=c[ma>>2]|0;Fa=c[o>>2]|0;Ja=eb+4|0;if((S|0)==(Fa|0))wb=0.0;else{Ka=S;Ta=0.0;while(1){W=+g[Ka>>2];Sa=Ta+W*W;g[Ja>>2]=Sa;Ka=Ka+4|0;if((Ka|0)==(Fa|0)){wb=Sa;break}else Ta=Sa}}Ta=+D(+wb);g[Ja>>2]=Ta;Fa=c[ja>>2]|0;Ka=c[za>>2]|0;S=eb+8|0;if((Fa|0)==(Ka|0))xb=0.0;else{qb=Fa;Sa=0.0;while(1){W=+g[qb>>2];V=Sa+W*W;g[S>>2]=V;qb=qb+4|0;if((qb|0)==(Ka|0)){xb=V;break}else Sa=V}}g[S>>2]=+D(+xb);yb=Ta;Ab=Ga;Ua=196;break}case 1:{Ka=c[oa>>2]|0;qb=c[Aa>>2]|0;c[i>>2]=Ka;if((Ka|0)==(qb|0))Bb=Ka;else{Ka=i;Ja=f;b:while(1){c[Ja>>2]=c[Ka>>2];Cb=c[i>>2]|0;Fa=c[f>>2]|0;do{Fa=Fa+4|0;if((Fa|0)==(qb|0))break b}while(!(+g[Cb>>2]<+g[Fa>>2]));c[f>>2]=Fa;Ka=f;Ja=i}Bb=Cb}Ja=c[Bb>>2]|0;c[eb>>2]=Ja;Ka=c[ma>>2]|0;qb=c[o>>2]|0;c[i>>2]=Ka;Ga=(c[j>>2]=Ja,+g[j>>2]);if((Ka|0)==(qb|0))Db=Ka;else{Ka=i;Ja=f;c:while(1){c[Ja>>2]=c[Ka>>2];Eb=c[i>>2]|0;S=c[f>>2]|0;do{S=S+4|0;if((S|0)==(qb|0))break c}while(!(+g[Eb>>2]<+g[S>>2]));c[f>>2]=S;Ka=f;Ja=i}Db=Eb}Ja=c[Db>>2]|0;Ka=eb+4|0;c[Ka>>2]=Ja;Ta=(c[j>>2]=Ja,+g[j>>2]);c[eb+8>>2]=c[(Ga<Ta?Ka:eb)>>2];yb=Ta;Ab=Ga;Ua=196;break}case 2:{Ka=c[oa>>2]|0;Ja=c[Aa>>2]|0;if((Ka|0)==(Ja|0))Fb=0.0;else{qb=Ka;Ta=0.0;while(1){Sa=+g[qb>>2]+Ta;g[eb>>2]=Sa;qb=qb+4|0;if((qb|0)==(Ja|0)){Fb=Sa;break}else Ta=Sa}}Ja=c[ma>>2]|0;qb=c[o>>2]|0;if((Ja|0)==(qb|0))Gb=0.0;else{Ka=eb+4|0;Fa=Ja;Ta=0.0;while(1){Ga=+g[Fa>>2]+Ta;g[Ka>>2]=Ga;Fa=Fa+4|0;if((Fa|0)==(qb|0)){Gb=Ga;break}else Ta=Ga}}qb=c[ja>>2]|0;Fa=c[za>>2]|0;if((qb|0)==(Fa|0)){yb=Gb;Ab=Fb;Ua=196}else{Ka=eb+8|0;Ja=qb;Ta=0.0;do{Ta=+g[Ja>>2]+Ta;g[Ka>>2]=Ta;Ja=Ja+4|0}while((Ja|0)!=(Fa|0));yb=Gb;Ab=Fb;Ua=196}break}default:{}}if((Ua|0)==196){Ua=0;if(Ab>0.0?(Fa=c[oa>>2]|0,Ja=(c[Aa>>2]|0)-Fa|0,Ka=Fa,(Ja|0)>0):0){Fa=Ja>>>2;g[Ka>>2]=+g[Ka>>2]/Ab;if(Ja>>>0>4){Ja=1;do{qb=Ka+(Ja<<2)|0;g[qb>>2]=+g[qb>>2]/+g[eb>>2];Ja=Ja+1|0}while((Ja|0)<(Fa|0))}Hb=+g[eb+4>>2]}else Hb=yb;Fa=eb+4|0;if(Hb>0.0?(Ja=c[ma>>2]|0,Ka=(c[o>>2]|0)-Ja|0,qb=Ja,(Ka|0)>0):0){Ja=Ka>>>2;Ka=0;do{mb=qb+(Ka<<2)|0;g[mb>>2]=+g[mb>>2]/+g[Fa>>2];Ka=Ka+1|0}while((Ka|0)<(Ja|0))}}Ja=eb+8|0;Ta=+g[Ja>>2];if((Ta>0.0?(Ka=c[ja>>2]|0,Fa=(c[za>>2]|0)-Ka|0,qb=Ka,(Fa|0)>0):0)?(Ka=Fa>>>2,g[qb>>2]=+g[qb>>2]/Ta,Fa>>>0>4):0){Fa=1;do{mb=qb+(Fa<<2)|0;g[mb>>2]=+g[mb>>2]/+g[Ja>>2];Fa=Fa+1|0}while((Fa|0)<(Ka|0))}tB(eb)}Ka=c[N>>2]|0;do if(Ka){Fa=c[p>>2]|0;Ja=Ka;while(1){qb=c[Ja+16>>2]|0;if((Fa|0)<(qb|0)){mb=c[Ja>>2]|0;if(!mb){Ua=214;break}else Ib=mb}else{if((qb|0)>=(Fa|0)){Ua=219;break}Jb=Ja+4|0;qb=c[Jb>>2]|0;if(!qb){Ua=218;break}else Ib=qb}Ja=Ib}if((Ua|0)==214){Ua=0;c[f>>2]=Ja;Kb=Ja;Lb=Ja;break}else if((Ua|0)==218){Ua=0;c[f>>2]=Ja;Kb=Ja;Lb=Jb;break}else if((Ua|0)==219){Ua=0;c[f>>2]=Ja;Kb=Ja;Lb=f;break}}else{c[f>>2]=N;Kb=ab;Lb=N}while(0);Ka=c[Lb>>2]|0;if(!Ka){eb=rB(32)|0;c[eb+16>>2]=c[p>>2];c[eb+20>>2]=0;c[eb+24>>2]=0;c[eb+28>>2]=0;c[eb>>2]=0;c[eb+4>>2]=0;c[eb+8>>2]=Kb;c[Lb>>2]=eb;Fa=c[c[b>>2]>>2]|0;if(!Fa)Mb=eb;else{c[b>>2]=Fa;Mb=c[Lb>>2]|0}gc(c[K>>2]|0,Mb);c[M>>2]=(c[M>>2]|0)+1;Nb=eb}else Nb=Ka;Ka=Nb+24|0;eb=c[Ka>>2]|0;if((eb|0)==(c[Nb+28>>2]|0))Qh(Nb+20|0,q);else{a[eb>>0]=a[q>>0]|0;c[eb+4>>2]=c[$>>2];c[eb+8>>2]=c[fa>>2];a[eb+12>>0]=a[ta>>0]|0;c[eb+16>>2]=c[sa>>2];c[eb+20>>2]=c[Y>>2];Xd(eb+24|0,ya);GB(eb+36|0,m);c[Ka>>2]=(c[Ka>>2]|0)+48}Ka=c[N>>2]|0;do if(Ka){eb=c[Pa>>2]|0;Fa=Ka;while(1){S=c[Fa+16>>2]|0;if((eb|0)<(S|0)){qb=c[Fa>>2]|0;if(!qb){Ua=232;break}else Ob=qb}else{if((S|0)>=(eb|0)){Ua=237;break}Pb=Fa+4|0;S=c[Pb>>2]|0;if(!S){Ua=236;break}else Ob=S}Fa=Ob}if((Ua|0)==232){Ua=0;c[f>>2]=Fa;Qb=Fa;Rb=Fa;break}else if((Ua|0)==236){Ua=0;c[f>>2]=Fa;Qb=Fa;Rb=Pb;break}else if((Ua|0)==237){Ua=0;c[f>>2]=Fa;Qb=Fa;Rb=f;break}}else{c[f>>2]=N;Qb=ab;Rb=N}while(0);Ka=c[Rb>>2]|0;if(!Ka){eb=rB(32)|0;c[eb+16>>2]=c[Pa>>2];c[eb+20>>2]=0;c[eb+24>>2]=0;c[eb+28>>2]=0;c[eb>>2]=0;c[eb+4>>2]=0;c[eb+8>>2]=Qb;c[Rb>>2]=eb;Ja=c[c[b>>2]>>2]|0;if(!Ja)Sb=eb;else{c[b>>2]=Ja;Sb=c[Rb>>2]|0}gc(c[K>>2]|0,Sb);c[M>>2]=(c[M>>2]|0)+1;Tb=eb}else Tb=Ka;Ka=Tb+24|0;eb=c[Ka>>2]|0;if((eb|0)==(c[Tb+28>>2]|0))Qh(Tb+20|0,t);else{a[eb>>0]=a[t>>0]|0;c[eb+4>>2]=c[va>>2];c[eb+8>>2]=c[ka>>2];a[eb+12>>0]=a[Da>>0]|0;c[eb+16>>2]=c[ea>>2];c[eb+20>>2]=c[Z>>2];Xd(eb+24|0,oa);GB(eb+36|0,Ma);c[Ka>>2]=(c[Ka>>2]|0)+48}Ka=c[N>>2]|0;do if(Ka){eb=c[Qa>>2]|0;Ja=Ka;while(1){S=c[Ja+16>>2]|0;if((eb|0)<(S|0)){qb=c[Ja>>2]|0;if(!qb){Ua=250;break}else Ub=qb}else{if((S|0)>=(eb|0)){Ua=255;break}Vb=Ja+4|0;S=c[Vb>>2]|0;if(!S){Ua=254;break}else Ub=S}Ja=Ub}if((Ua|0)==250){Ua=0;c[f>>2]=Ja;Wb=Ja;Xb=Ja;break}else if((Ua|0)==254){Ua=0;c[f>>2]=Ja;Wb=Ja;Xb=Vb;break}else if((Ua|0)==255){Ua=0;c[f>>2]=Ja;Wb=Ja;Xb=f;break}}else{c[f>>2]=N;Wb=ab;Xb=N}while(0);Ka=c[Xb>>2]|0;if(!Ka){eb=rB(32)|0;c[eb+16>>2]=c[Qa>>2];c[eb+20>>2]=0;c[eb+24>>2]=0;c[eb+28>>2]=0;c[eb>>2]=0;c[eb+4>>2]=0;c[eb+8>>2]=Wb;c[Xb>>2]=eb;Fa=c[c[b>>2]>>2]|0;if(!Fa)Yb=eb;else{c[b>>2]=Fa;Yb=c[Xb>>2]|0}gc(c[K>>2]|0,Yb);c[M>>2]=(c[M>>2]|0)+1;Zb=eb}else Zb=Ka;Ka=Zb+24|0;eb=c[Ka>>2]|0;if((eb|0)==(c[Zb+28>>2]|0))Qh(Zb+20|0,u);else{a[eb>>0]=a[u>>0]|0;c[eb+4>>2]=c[wa>>2];c[eb+8>>2]=c[da>>2];a[eb+12>>0]=a[ca>>0]|0;c[eb+16>>2]=c[ba>>2];c[eb+20>>2]=c[O>>2];Xd(eb+24|0,ma);GB(eb+36|0,Na);c[Ka>>2]=(c[Ka>>2]|0)+48}Ka=c[N>>2]|0;do if(Ka){eb=c[ga>>2]|0;Fa=Ka;while(1){S=c[Fa+16>>2]|0;if((eb|0)<(S|0)){qb=c[Fa>>2]|0;if(!qb){Ua=268;break}else _b=qb}else{if((S|0)>=(eb|0)){Ua=273;break}$b=Fa+4|0;S=c[$b>>2]|0;if(!S){Ua=272;break}else _b=S}Fa=_b}if((Ua|0)==268){Ua=0;c[f>>2]=Fa;ac=Fa;bc=Fa;break}else if((Ua|0)==272){Ua=0;c[f>>2]=Fa;ac=Fa;bc=$b;break}else if((Ua|0)==273){Ua=0;c[f>>2]=Fa;ac=Fa;bc=f;break}}else{c[f>>2]=N;ac=ab;bc=N}while(0);Ka=c[bc>>2]|0;if(!Ka){eb=rB(32)|0;c[eb+16>>2]=c[ga>>2];c[eb+20>>2]=0;c[eb+24>>2]=0;c[eb+28>>2]=0;c[eb>>2]=0;c[eb+4>>2]=0;c[eb+8>>2]=ac;c[bc>>2]=eb;Ja=c[c[b>>2]>>2]|0;if(!Ja)cc=eb;else{c[b>>2]=Ja;cc=c[bc>>2]|0}gc(c[K>>2]|0,cc);c[M>>2]=(c[M>>2]|0)+1;dc=eb}else dc=Ka;Ka=dc+24|0;eb=c[Ka>>2]|0;if((eb|0)==(c[dc+28>>2]|0))Qh(dc+20|0,v);else{a[eb>>0]=a[v>>0]|0;c[eb+4>>2]=c[aa>>2];c[eb+8>>2]=c[_a>>2];a[eb+12>>0]=a[Za>>0]|0;c[eb+16>>2]=c[Ya>>2];c[eb+20>>2]=c[Q>>2];Xd(eb+24|0,ja);GB(eb+36|0,d);c[Ka>>2]=(c[Ka>>2]|0)+48}tB(Ra);Ka=c[x>>2]|0;if(Ka|0){eb=c[Xa>>2]|0;if((eb|0)!=(Ka|0))c[Xa>>2]=eb+(~((eb+-4-Ka|0)>>>2)<<2);tB(Ka)}LB(d);Ka=c[Oa>>2]|0;if(Ka|0){eb=c[za>>2]|0;if((eb|0)!=(Ka|0))c[za>>2]=eb+(~((eb+-4-Ka|0)>>>2)<<2);tB(Ka)}LB(Na);Ka=c[La>>2]|0;if(Ka|0){eb=c[o>>2]|0;if((eb|0)!=(Ka|0))c[o>>2]=eb+(~((eb+-4-Ka|0)>>>2)<<2);tB(Ka)}LB(Ma);Ka=c[_>>2]|0;if(Ka|0){eb=c[Aa>>2]|0;if((eb|0)!=(Ka|0))c[Aa>>2]=eb+(~((eb+-4-Ka|0)>>>2)<<2);tB(Ka)}LB(m);Ka=c[s>>2]|0;if(Ka|0){eb=c[xa>>2]|0;if((eb|0)!=(Ka|0))c[xa>>2]=eb+(~((eb+-4-Ka|0)>>>2)<<2);tB(Ka)}LB(ua);Ka=c[Ba>>2]|0;if(Ka|0){eb=c[ha>>2]|0;if((eb|0)!=(Ka|0))c[ha>>2]=eb+(~((eb+-4-Ka|0)>>>2)<<2);tB(Ka)}X=X+48|0}l=e;return}function ai(a,b,d){a=a|0;b=b|0;d=d|0;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,q=0,r=0,s=0;e=d;f=b;g=e-f|0;h=g>>2;i=a+8|0;j=c[i>>2]|0;k=c[a>>2]|0;l=k;if(h>>>0<=j-k>>2>>>0){m=a+4|0;n=(c[m>>2]|0)-k>>2;o=h>>>0>n>>>0;p=o?b+(n<<2)|0:d;d=p;n=d-f|0;f=n>>2;if(f|0)UD(k|0,b|0,n|0)|0;n=l+(f<<2)|0;if(o){o=e-d|0;if((o|0)<=0)return;MD(c[m>>2]|0,p|0,o|0)|0;c[m>>2]=(c[m>>2]|0)+(o>>>2<<2);return}else{o=c[m>>2]|0;if((o|0)==(n|0))return;c[m>>2]=o+(~((o+-4-n|0)>>>2)<<2);return}}n=k;if(!k)q=j;else{j=a+4|0;o=c[j>>2]|0;if((o|0)!=(l|0))c[j>>2]=o+(~((o+-4-k|0)>>>2)<<2);tB(n);c[i>>2]=0;c[j>>2]=0;c[a>>2]=0;q=0}if(h>>>0>1073741823){Az(a);r=c[a>>2]|0;s=c[i>>2]|0}else{r=0;s=q}q=s-r|0;r=q>>1;s=q>>2>>>0<536870911?(r>>>0<h>>>0?h:r):1073741823;if(s>>>0>1073741823){Az(a);r=za(4)|0;AD(r);Xa(r|0,3080,250)}r=rB(s<<2)|0;h=a+4|0;c[h>>2]=r;c[a>>2]=r;c[i>>2]=r+(s<<2);if((g|0)<=0)return;MD(r|0,b|0,g|0)|0;c[h>>2]=r+(g>>>2<<2);return}function bi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,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,F=0,G=0;f=c[a>>2]|0;g=f;h=(c[b>>2]|0)-g>>2;b=f+(h<<2)|0;i=c[d>>2]|0;j=c[e>>2]|0;e=j-i|0;k=e>>2;l=i;m=j;if((e|0)<=0){n=b;return n|0}e=a+8|0;o=c[e>>2]|0;p=a+4|0;q=c[p>>2]|0;r=q;if((k|0)<=(o-r>>2|0)){s=r-b|0;t=s>>2;if((k|0)>(t|0)){u=l+(t<<2)|0;t=u;if((u|0)==(m|0))v=q;else{w=((m+-4-t|0)>>>2)+1|0;x=u;u=q;while(1){c[u>>2]=c[x>>2];x=x+4|0;if((x|0)==(m|0))break;else u=u+4|0}u=q+(w<<2)|0;c[p>>2]=u;v=u}if((s|0)>0){y=t;z=v}else{n=b;return n|0}}else{y=j;z=q}j=z-(b+(k<<2))|0;v=j>>2;t=b+(v<<2)|0;if(t>>>0<q>>>0){s=((q+(0-v-h<<2)+~g|0)>>>2)+1|0;h=t;t=z;while(1){c[t>>2]=c[h>>2];h=h+4|0;if(h>>>0>=q>>>0)break;else t=t+4|0}c[p>>2]=z+(s<<2)}if(!v)A=i;else{UD(z+(0-v<<2)|0,b|0,j|0)|0;A=c[d>>2]|0}d=y-A|0;if(!d){n=b;return n|0}UD(b|0,A|0,d|0)|0;n=b;return n|0}d=(r-g>>2)+k|0;if(d>>>0>1073741823){Az(a);k=c[a>>2]|0;B=k;C=k;D=c[e>>2]|0}else{B=f;C=g;D=o}o=D-C|0;D=o>>1;g=o>>2>>>0<536870911?(D>>>0<d>>>0?d:D):1073741823;D=b;d=D-C>>2;do if(g)if(g>>>0>1073741823){C=za(4)|0;AD(C);Xa(C|0,3080,250)}else{E=rB(g<<2)|0;break}else E=0;while(0);C=E+(d<<2)|0;o=E+(g<<2)|0;if((l|0)==(m|0))F=C;else{g=d+((m+-4+(0-i)|0)>>>2)+1|0;i=l;l=C;while(1){c[l>>2]=c[i>>2];i=i+4|0;if((i|0)==(m|0))break;else l=l+4|0}F=E+(g<<2)|0}g=D-B|0;E=C+(0-(g>>2)<<2)|0;if((g|0)>0)MD(E|0,B|0,g|0)|0;g=(c[p>>2]|0)-D|0;if((g|0)>0){MD(F|0,b|0,g|0)|0;G=F+(g>>>2<<2)|0}else G=F;c[a>>2]=E;c[p>>2]=G;c[e>>2]=o;if(!B){n=C;return n|0}tB(B);n=C;return n|0}function ci(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!b)return;ci(a,c[b>>2]|0);ci(a,c[b+4>>2]|0);a=b+20|0;d=c[a>>2]|0;if(d|0){e=b+24|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;do{c[e>>2]=h+-48;LB(h+-12|0);f=c[h+-24>>2]|0;if(f|0){i=h+-20|0;j=c[i>>2]|0;if((j|0)!=(f|0))c[i>>2]=j+(~((j+-4-f|0)>>>2)<<2);tB(f)}h=c[e>>2]|0}while((h|0)!=(d|0));g=c[a>>2]|0}tB(g)}tB(b);return}function di(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;GB(b,d);GB(b+12|0,d+12|0);GB(b+24|0,d+24|0);GB(b+36|0,d+36|0);e=d+48|0;f=c[e+4>>2]|0;g=b+48|0;c[g>>2]=c[e>>2];c[g+4>>2]=f;_b(b+56|0,d+56|0);f=b+68|0;b=d+68|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];a[f+28>>0]=a[b+28>>0]|0;return}function ei(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;e=l;l=l+32|0;f=e;g=b+4|0;h=c[g>>2]|0;i=c[b>>2]|0;j=((h-i|0)/100|0)+1|0;if(j>>>0>42949672){Az(b);k=c[b>>2]|0;m=c[g>>2]|0}else{k=i;m=h}h=b+8|0;i=((c[h>>2]|0)-k|0)/100|0;n=i<<1;o=i>>>0<21474836?(n>>>0<j>>>0?j:n):42949672;n=(m-k|0)/100|0;c[f+12>>2]=0;c[f+16>>2]=b+8;do if(o)if(o>>>0>42949672){k=za(4)|0;AD(k);Xa(k|0,3080,250)}else{p=rB(o*100|0)|0;break}else p=0;while(0);c[f>>2]=p;k=p+(n*100|0)|0;n=f+8|0;c[n>>2]=k;m=f+4|0;c[m>>2]=k;j=f+12|0;c[j>>2]=p+(o*100|0);di(k,d);c[n>>2]=(c[n>>2]|0)+100;d=c[b>>2]|0;k=c[g>>2]|0;if((k|0)==(d|0)){q=m;r=c[m>>2]|0;s=d;t=k;c[b>>2]=r;c[q>>2]=s;u=c[n>>2]|0;c[g>>2]=u;c[n>>2]=t;v=c[h>>2]|0;w=c[j>>2]|0;c[h>>2]=w;c[j>>2]=v;x=c[q>>2]|0;c[f>>2]=x;gi(f);l=e;return}o=k;k=c[m>>2]|0;do{p=k+-100|0;i=o;o=o+-100|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];c[p+8>>2]=c[o+8>>2];c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;p=k+-88|0;y=i+-88|0;c[p>>2]=c[y>>2];c[p+4>>2]=c[y+4>>2];c[p+8>>2]=c[y+8>>2];c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;y=k+-76|0;p=i+-76|0;c[y>>2]=c[p>>2];c[y+4>>2]=c[p+4>>2];c[y+8>>2]=c[p+8>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;p=k+-64|0;y=i+-64|0;c[p>>2]=c[y>>2];c[p+4>>2]=c[y+4>>2];c[p+8>>2]=c[y+8>>2];c[y>>2]=0;c[y+4>>2]=0;c[y+8>>2]=0;y=i+-52|0;p=c[y+4>>2]|0;z=k+-52|0;c[z>>2]=c[y>>2];c[z+4>>2]=p;p=k+-44|0;z=i+-44|0;c[p>>2]=0;y=k+-40|0;c[y>>2]=0;c[k+-36>>2]=0;c[p>>2]=c[z>>2];p=i+-40|0;c[y>>2]=c[p>>2];y=i+-36|0;c[k+-36>>2]=c[y>>2];c[y>>2]=0;c[p>>2]=0;c[z>>2]=0;z=k+-32|0;p=i+-32|0;c[z>>2]=c[p>>2];c[z+4>>2]=c[p+4>>2];c[z+8>>2]=c[p+8>>2];c[z+12>>2]=c[p+12>>2];c[z+16>>2]=c[p+16>>2];c[z+20>>2]=c[p+20>>2];c[z+24>>2]=c[p+24>>2];a[z+28>>0]=a[p+28>>0]|0;k=(c[m>>2]|0)+-100|0;c[m>>2]=k}while((o|0)!=(d|0));q=m;r=k;s=c[b>>2]|0;t=c[g>>2]|0;c[b>>2]=r;c[q>>2]=s;u=c[n>>2]|0;c[g>>2]=u;c[n>>2]=t;v=c[h>>2]|0;w=c[j>>2]|0;c[h>>2]=w;c[j>>2]=v;x=c[q>>2]|0;c[f>>2]=x;gi(f);l=e;return}function fi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;b=c[a>>2]|0;if(!b)return;d=a+4|0;e=c[d>>2]|0;if((e|0)==(b|0))f=b;else{g=e;do{e=g+-100|0;c[d>>2]=e;h=g+-44|0;i=c[h>>2]|0;if(i|0){j=g+-40|0;k=c[j>>2]|0;if((k|0)==(i|0))l=i;else{m=k;do{k=m+-12|0;c[j>>2]=k;LB(k);m=c[j>>2]|0}while((m|0)!=(i|0));l=c[h>>2]|0}tB(l)}LB(g+-64|0);LB(g+-76|0);LB(g+-88|0);LB(e);g=c[d>>2]|0}while((g|0)!=(b|0));f=c[a>>2]|0}tB(f);return}function gi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;b=c[a+4>>2]|0;d=a+8|0;e=c[d>>2]|0;if((e|0)!=(b|0)){f=e;do{e=f+-100|0;c[d>>2]=e;g=f+-44|0;h=c[g>>2]|0;if(h|0){i=f+-40|0;j=c[i>>2]|0;if((j|0)==(h|0))k=h;else{l=j;do{j=l+-12|0;c[i>>2]=j;LB(j);l=c[i>>2]|0}while((l|0)!=(h|0));k=c[g>>2]|0}tB(k)}LB(f+-64|0);LB(f+-76|0);LB(f+-88|0);LB(e);f=c[d>>2]|0}while((f|0)!=(b|0))}b=c[a>>2]|0;if(!b)return;tB(b);return}function hi(a,b){a=a|0;b=+b;Oh(a,b);c[a>>2]=6924;return}function ii(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;c[a>>2]=7132;b=a+224|0;d=c[b>>2]|0;if(d|0){e=a+228|0;f=c[e>>2]|0;if((f|0)==(d|0))g=d;else{h=f;do{f=h+-12|0;c[e>>2]=f;LB(f);h=c[e>>2]|0}while((h|0)!=(d|0));g=c[b>>2]|0}tB(g)}g=a+212|0;b=c[g>>2]|0;if(b|0){d=a+216|0;h=c[d>>2]|0;if((h|0)==(b|0))i=b;else{e=h;while(1){h=e+-12|0;c[d>>2]=h;f=c[h>>2]|0;if(!f)j=h;else{h=e+-8|0;k=c[h>>2]|0;if((k|0)!=(f|0))c[h>>2]=k+(~((k+-4-f|0)>>>2)<<2);tB(f);j=c[d>>2]|0}if((j|0)==(b|0))break;else e=j}i=c[g>>2]|0}tB(i)}i=c[a+200>>2]|0;if(!i){ph(a);return}g=a+204|0;j=c[g>>2]|0;if((j|0)!=(i|0))c[g>>2]=j+(~((j+-4-i|0)>>>2)<<2);tB(i);ph(a);return}function ji(a){a=a|0;ii(a);tB(a);return}function ki(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,27294,8);return}function li(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,27285,8);return}function mi(a,b){a=a|0;b=b|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,26947,337);return}function ni(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=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,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;d=l;l=l+576|0;e=d+496|0;f=d+416|0;h=d+336|0;i=d+256|0;j=d+176|0;k=d+96|0;m=d+16|0;n=d;c[b>>2]=0;o=b+4|0;c[o>>2]=0;c[b+8>>2]=0;p=e+64|0;q=e;r=q+60|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[e+60>>0]=0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;RB(e,26260)|0;s=e+12|0;RB(s,26268)|0;t=e+24|0;RB(t,26305)|0;u=e+36|0;RB(u,44918)|0;g[e+48>>2]=0.0;g[e+52>>2]=1.0;g[e+56>>2]=1.0;a[e+60>>0]=1;g[p>>2]=1.0;p=c[o>>2]|0;v=b+8|0;if((p|0)==(c[v>>2]|0))Lh(b,e);else{Kh(p,e);c[o>>2]=(c[o>>2]|0)+80}p=f+64|0;q=f;r=q+60|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[f+60>>0]=0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;RB(f,27594)|0;w=f+12|0;RB(w,27601)|0;x=f+24|0;RB(x,27622)|0;y=f+36|0;RB(y,27885)|0;g[f+48>>2]=0.0;g[f+52>>2]=5.0;g[f+56>>2]=0.0;a[f+60>>0]=1;g[p>>2]=.5;p=c[o>>2]|0;if((p|0)==(c[v>>2]|0))Lh(b,f);else{Kh(p,f);c[o>>2]=(c[o>>2]|0)+80}p=h+64|0;q=h;r=q+60|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[h+60>>0]=0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;RB(h,26347)|0;z=h+12|0;RB(z,26358)|0;A=h+24|0;RB(A,26370)|0;B=h+36|0;RB(B,44918)|0;g[h+48>>2]=0.0;g[h+52>>2]=1.0;g[h+56>>2]=0.0;a[h+60>>0]=1;C=h+68|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,26572,13);D=h+72|0;E=c[D>>2]|0;F=h+76|0;if(E>>>0<(c[F>>2]|0)>>>0){c[E>>2]=c[i>>2];c[E+4>>2]=c[i+4>>2];c[E+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[D>>2]=(c[D>>2]|0)+12}else Se(C,i);LB(i);c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;HB(i,26586,12);E=c[D>>2]|0;if(E>>>0<(c[F>>2]|0)>>>0){c[E>>2]=c[i>>2];c[E+4>>2]=c[i+4>>2];c[E+8>>2]=c[i+8>>2];c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[D>>2]=(c[D>>2]|0)+12}else Se(C,i);LB(i);g[p>>2]=1.0;p=c[o>>2]|0;if((p|0)==(c[v>>2]|0))Lh(b,h);else{Kh(p,h);c[o>>2]=(c[o>>2]|0)+80}p=i+64|0;q=i;r=q+60|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[i+60>>0]=0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;RB(i,26599)|0;p=i+12|0;RB(p,26609)|0;C=i+24|0;RB(C,26628)|0;E=i+36|0;RB(E,44918)|0;g[i+48>>2]=0.0;g[i+52>>2]=1.0;g[i+56>>2]=1.0;a[i+60>>0]=0;F=c[o>>2]|0;if((F|0)==(c[v>>2]|0))Lh(b,i);else{Kh(F,i);c[o>>2]=(c[o>>2]|0)+80}F=j+64|0;q=j;r=q+60|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[j+60>>0]=0;c[F>>2]=0;c[F+4>>2]=0;c[F+8>>2]=0;c[F+12>>2]=0;RB(j,26681)|0;F=j+12|0;RB(F,26683)|0;G=j+24|0;RB(G,26698)|0;H=j+36|0;RB(H,44918)|0;g[j+48>>2]=.5;g[j+52>>2]=.8999999761581421;g[j+56>>2]=.699999988079071;a[j+60>>0]=0;I=c[o>>2]|0;if((I|0)==(c[v>>2]|0))Lh(b,j);else{Kh(I,j);c[o>>2]=(c[o>>2]|0)+80}I=k+64|0;q=k;r=q+60|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[k+60>>0]=0;c[I>>2]=0;c[I+4>>2]=0;c[I+8>>2]=0;c[I+12>>2]=0;RB(k,26810)|0;I=k+12|0;RB(I,26817)|0;J=k+24|0;RB(J,26825)|0;K=k+36|0;RB(K,44918)|0;g[k+48>>2]=0.0;g[k+52>>2]=1.0;g[k+56>>2]=.10000000149011612;a[k+60>>0]=0;L=c[o>>2]|0;if((L|0)==(c[v>>2]|0))Lh(b,k);else{Kh(L,k);c[o>>2]=(c[o>>2]|0)+80}L=m+64|0;q=m;r=q+60|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[m+60>>0]=0;c[L>>2]=0;c[L+4>>2]=0;c[L+8>>2]=0;c[L+12>>2]=0;RB(m,26869)|0;q=m+12|0;RB(q,26884)|0;r=m+24|0;RB(r,26901)|0;M=m+36|0;RB(M,44918)|0;g[m+48>>2]=0.0;g[m+52>>2]=1.0;g[m+56>>2]=0.0;a[m+60>>0]=1;g[L>>2]=1.0;L=m+68|0;c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;HB(n,26940,2);N=m+72|0;O=c[N>>2]|0;P=m+76|0;if(O>>>0<(c[P>>2]|0)>>>0){c[O>>2]=c[n>>2];c[O+4>>2]=c[n+4>>2];c[O+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[N>>2]=(c[N>>2]|0)+12}else Se(L,n);LB(n);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;HB(n,26943,3);O=c[N>>2]|0;if(O>>>0<(c[P>>2]|0)>>>0){c[O>>2]=c[n>>2];c[O+4>>2]=c[n+4>>2];c[O+8>>2]=c[n+8>>2];c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[N>>2]=(c[N>>2]|0)+12}else Se(L,n);LB(n);n=c[o>>2]|0;if((n|0)==(c[v>>2]|0))Lh(b,m);else{Kh(n,m);c[o>>2]=(c[o>>2]|0)+80}o=m+68|0;n=c[o>>2]|0;if(n|0){b=c[N>>2]|0;if((b|0)==(n|0))Q=n;else{v=b;do{b=v+-12|0;c[N>>2]=b;LB(b);v=c[N>>2]|0}while((v|0)!=(n|0));Q=c[o>>2]|0}tB(Q)}LB(M);LB(r);LB(q);LB(m);m=k+68|0;q=c[m>>2]|0;if(q|0){r=k+72|0;M=c[r>>2]|0;if((M|0)==(q|0))R=q;else{Q=M;do{M=Q+-12|0;c[r>>2]=M;LB(M);Q=c[r>>2]|0}while((Q|0)!=(q|0));R=c[m>>2]|0}tB(R)}LB(K);LB(J);LB(I);LB(k);k=j+68|0;I=c[k>>2]|0;if(I|0){J=j+72|0;K=c[J>>2]|0;if((K|0)==(I|0))S=I;else{R=K;do{K=R+-12|0;c[J>>2]=K;LB(K);R=c[J>>2]|0}while((R|0)!=(I|0));S=c[k>>2]|0}tB(S)}LB(H);LB(G);LB(F);LB(j);j=i+68|0;F=c[j>>2]|0;if(F|0){G=i+72|0;H=c[G>>2]|0;if((H|0)==(F|0))T=F;else{S=H;do{H=S+-12|0;c[G>>2]=H;LB(H);S=c[G>>2]|0}while((S|0)!=(F|0));T=c[j>>2]|0}tB(T)}LB(E);LB(C);LB(p);LB(i);i=h+68|0;p=c[i>>2]|0;if(p|0){C=c[D>>2]|0;if((C|0)==(p|0))U=p;else{E=C;do{C=E+-12|0;c[D>>2]=C;LB(C);E=c[D>>2]|0}while((E|0)!=(p|0));U=c[i>>2]|0}tB(U)}LB(B);LB(A);LB(z);LB(h);h=f+68|0;z=c[h>>2]|0;if(z|0){A=f+72|0;B=c[A>>2]|0;if((B|0)==(z|0))V=z;else{U=B;do{B=U+-12|0;c[A>>2]=B;LB(B);U=c[A>>2]|0}while((U|0)!=(z|0));V=c[h>>2]|0}tB(V)}LB(y);LB(x);LB(w);LB(f);f=e+68|0;w=c[f>>2]|0;if(!w){LB(u);LB(t);LB(s);LB(e);l=d;return}x=e+72|0;y=c[x>>2]|0;if((y|0)==(w|0))W=w;else{V=y;do{y=V+-12|0;c[x>>2]=y;LB(y);V=c[x>>2]|0}while((V|0)!=(w|0));W=c[f>>2]|0}tB(W);LB(u);LB(t);LB(s);LB(e);l=d;return}function oi(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;f=l;l=l+16|0;h=f;if(!(Ch(a,b,d,e)|0)){i=0;l=f;return i|0}Re(h,a+200|0,a+212|0,+g[a+136>>2],+g[a+144>>2]);e=a+224|0;d=c[e>>2]|0;if(!d){j=a+228|0;k=a+232|0}else{b=a+228|0;m=c[b>>2]|0;if((m|0)==(d|0))n=d;else{o=m;do{m=o+-12|0;c[b>>2]=m;LB(m);o=c[b>>2]|0}while((o|0)!=(d|0));n=c[e>>2]|0}tB(n);n=a+232|0;c[n>>2]=0;c[b>>2]=0;c[e>>2]=0;j=b;k=n}c[e>>2]=c[h>>2];c[j>>2]=c[h+4>>2];c[k>>2]=c[h+8>>2];i=1;l=f;return i|0}function pi(a){a=a|0;Dh(a);return}function qi(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=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,F=0;e=l;l=l+400|0;f=e+300|0;h=e+200|0;i=e+100|0;j=e;c[b>>2]=0;k=b+4|0;c[k>>2]=0;c[b+8>>2]=0;m=c[d+28>>2]|0;n=+g[d+4>>2]/((m|0)==0?2048.0:+(m>>>0));m=f+52|0;g[f+72>>2]=0.0;g[f+76>>2]=0.0;o=f+80|0;a[o>>0]=0;p=f+84|0;q=f;r=q+48|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[f+48>>0]=0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;a[m+16>>0]=0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;a[p+12>>0]=0;RB(f,25683)|0;p=f+12|0;RB(p,25695)|0;s=f+24|0;RB(s,25710)|0;t=f+36|0;RB(t,44918)|0;a[f+48>>0]=1;c[m>>2]=0;a[f+68>>0]=0;a[o>>0]=0;c[f+88>>2]=2;a[f+96>>0]=0;g[f+92>>2]=n;o=c[k>>2]|0;m=b+8|0;if((o|0)==(c[m>>2]|0))ei(b,f);else{di(o,f);c[k>>2]=(c[k>>2]|0)+100}c[d+184>>2]=0;o=h+52|0;u=h+72|0;g[u>>2]=0.0;v=h+76|0;g[v>>2]=0.0;w=h+80|0;a[w>>0]=0;x=h+84|0;q=h;r=q+48|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[h+48>>0]=0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;a[o+16>>0]=0;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;a[x+12>>0]=0;RB(h,25744)|0;y=h+12|0;RB(y,25755)|0;z=h+24|0;RB(z,25793)|0;A=h+36|0;RB(A,25888)|0;a[h+48>>0]=1;c[o>>2]=1;a[h+68>>0]=1;g[u>>2]=0.0;g[v>>2]=127.0;a[w>>0]=1;g[x>>2]=1.0;c[h+88>>2]=2;a[h+96>>0]=1;g[h+92>>2]=n;x=c[k>>2]|0;if((x|0)==(c[m>>2]|0))ei(b,h);else{di(x,h);c[k>>2]=(c[k>>2]|0)+100}c[d+188>>2]=1;x=i+52|0;g[i+72>>2]=0.0;g[i+76>>2]=0.0;w=i+80|0;a[w>>0]=0;v=i+84|0;q=i;r=q+48|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[i+48>>0]=0;c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;c[x+12>>2]=0;a[x+16>>0]=0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;a[v+12>>0]=0;RB(i,25899)|0;v=i+12|0;RB(v,25914)|0;u=i+24|0;RB(u,25936)|0;o=i+36|0;RB(o,44918)|0;a[i+48>>0]=1;c[x>>2]=1;a[i+68>>0]=0;a[w>>0]=0;c[i+88>>2]=1;g[i+92>>2]=n;a[i+96>>0]=0;w=c[k>>2]|0;if((w|0)==(c[m>>2]|0))ei(b,i);else{di(w,i);c[k>>2]=(c[k>>2]|0)+100}c[d+192>>2]=2;w=j+52|0;g[j+72>>2]=0.0;g[j+76>>2]=0.0;x=j+80|0;a[x>>0]=0;B=j+84|0;q=j;r=q+48|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(r|0));a[j+48>>0]=0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[w+12>>2]=0;a[w+16>>0]=0;c[B>>2]=0;c[B+4>>2]=0;c[B+8>>2]=0;a[B+12>>0]=0;RB(j,26149)|0;B=j+12|0;RB(B,26163)|0;q=j+24|0;RB(q,26196)|0;r=j+36|0;RB(r,44918)|0;a[j+48>>0]=1;c[w>>2]=1;a[j+68>>0]=0;a[x>>0]=0;c[j+88>>2]=1;g[j+92>>2]=n;a[j+96>>0]=0;x=c[k>>2]|0;if((x|0)==(c[m>>2]|0))ei(b,j);else{di(x,j);c[k>>2]=(c[k>>2]|0)+100}c[d+196>>2]=3;d=j+56|0;k=c[d>>2]|0;if(k|0){x=j+60|0;b=c[x>>2]|0;if((b|0)==(k|0))C=k;else{m=b;do{b=m+-12|0;c[x>>2]=b;LB(b);m=c[x>>2]|0}while((m|0)!=(k|0));C=c[d>>2]|0}tB(C)}LB(r);LB(q);LB(B);LB(j);j=i+56|0;B=c[j>>2]|0;if(B|0){q=i+60|0;r=c[q>>2]|0;if((r|0)==(B|0))D=B;else{C=r;do{r=C+-12|0;c[q>>2]=r;LB(r);C=c[q>>2]|0}while((C|0)!=(B|0));D=c[j>>2]|0}tB(D)}LB(o);LB(u);LB(v);LB(i);i=h+56|0;v=c[i>>2]|0;if(v|0){u=h+60|0;o=c[u>>2]|0;if((o|0)==(v|0))E=v;else{D=o;do{o=D+-12|0;c[u>>2]=o;LB(o);D=c[u>>2]|0}while((D|0)!=(v|0));E=c[i>>2]|0}tB(E)}LB(A);LB(z);LB(y);LB(h);h=f+56|0;y=c[h>>2]|0;if(!y){LB(t);LB(s);LB(p);LB(f);l=e;return}z=f+60|0;A=c[z>>2]|0;if((A|0)==(y|0))F=y;else{E=A;do{A=E+-12|0;c[z>>2]=A;LB(A);E=c[z>>2]|0}while((E|0)!=(y|0));F=c[h>>2]|0}tB(F);LB(t);LB(s);LB(p);LB(f);l=e;return}function ri(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];Ph(b,d,g);c[a+4>>2]=0;c[a+8>>2]=0;c[a>>2]=a+4;l=f;return} function QB(b,d){b=b|0;d=d|0;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;if(d>>>0>4294967279)EB(b);e=b+11|0;f=a[e>>0]|0;g=f<<24>>24<0;if(g){h=c[b+4>>2]|0;i=(c[b+8>>2]&2147483647)+-1|0}else{h=f&255;i=10}j=h>>>0>d>>>0?h:d;d=j>>>0<11;k=d?10:(j+16&-16)+-1|0;do if((k|0)!=(i|0)){do if(d){j=c[b>>2]|0;if(g){l=0;m=j;n=b;o=13}else{oq(b,j,(f&255)+1|0)|0;tB(j);o=15}}else{j=rB(k+1|0)|0;if(g){l=1;m=c[b>>2]|0;n=j;o=13;break}else{oq(j,b,(f&255)+1|0)|0;p=j;o=14;break}}while(0);if((o|0)==13){oq(n,m,(c[b+4>>2]|0)+1|0)|0;tB(m);if(l){p=n;o=14}else o=15}if((o|0)==14){c[b+8>>2]=k+1|-2147483648;c[b+4>>2]=h;c[b>>2]=p;break}else if((o|0)==15){a[e>>0]=h;break}}while(0);return}function RB(a,b){a=a|0;b=b|0;return NB(a,b,kr(b)|0)|0}function SB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;g=f;h=b+11|0;i=a[h>>0]|0;j=i<<24>>24<0;if(j)k=c[b+4>>2]|0;else k=i&255;do if(k>>>0>=d>>>0)if(j){i=(c[b>>2]|0)+d|0;a[g>>0]=0;Bs(i,g);c[b+4>>2]=d;break}else{a[g>>0]=0;Bs(b+d|0,g);a[h>>0]=d;break}else TB(b,d-k|0,e)|0;while(0);l=f;return}function TB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;f=l;l=l+16|0;g=f;if(d|0){h=b+11|0;i=a[h>>0]|0;if(i<<24>>24<0){j=c[b+4>>2]|0;k=(c[b+8>>2]&2147483647)+-1|0}else{j=i&255;k=10}m=j+d|0;if((k-j|0)>>>0<d>>>0){UB(b,k,m-k|0,j,j,0,0);n=a[h>>0]|0}else n=i;if(n<<24>>24<0)o=c[b>>2]|0;else o=b;JB(o+j|0,d,e)|0;if((a[h>>0]|0)<0)c[b+4>>2]=m;else a[h>>0]=m;a[g>>0]=0;Bs(o+m|0,g)}l=f;return b|0}function UB(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0;if((-17-d|0)>>>0<e>>>0)EB(b);if((a[b+11>>0]|0)<0)j=c[b>>2]|0;else j=b;if(d>>>0<2147483623){k=e+d|0;e=d<<1;l=k>>>0<e>>>0?e:k;m=l>>>0<11?11:l+16&-16}else m=-17;l=rB(m)|0;if(g|0)oq(l,j,g)|0;k=f-h-g|0;if(k|0)oq(l+g+i|0,j+g+h|0,k)|0;if((d|0)!=10)tB(j);c[b>>2]=l;c[b+8>>2]=m|-2147483648;return}function VB(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;f=l;l=l+16|0;g=f;h=b+11|0;i=a[h>>0]|0;j=i<<24>>24<0;if(j){k=c[b+4>>2]|0;m=(c[b+8>>2]&2147483647)+-1|0}else{k=i&255;m=10}i=k+e|0;if((m-k|0)>>>0>=e>>>0){if(e|0){if(j)n=c[b>>2]|0;else n=b;oq(n+k|0,d,e)|0;if((a[h>>0]|0)<0)c[b+4>>2]=i;else a[h>>0]=i;a[g>>0]=0;Bs(n+i|0,g)}}else PB(b,m,i-m|0,k,k,0,e,d);l=f;return b|0}function WB(a,b){a=a|0;b=b|0;return VB(a,b,kr(b)|0)|0}function XB(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;e=l;l=l+16|0;f=e;g=e+1|0;a[f>>0]=d;d=b+11|0;h=a[d>>0]|0;i=h<<24>>24<0;if(i){j=c[b+4>>2]|0;k=(c[b+8>>2]&2147483647)+-1|0}else{j=h&255;k=10}if((j|0)==(k|0)){UB(b,k,1,k,k,0,0);h=k+1|0;if((a[d>>0]|0)<0){m=h;n=8}else{o=h;n=7}}else{h=j+1|0;if(i){m=h;n=8}else{o=h;n=7}}if((n|0)==7){a[d>>0]=o;p=b}else if((n|0)==8){n=c[b>>2]|0;c[b+4>>2]=m;p=n}n=p+j|0;Bs(n,f);a[g>>0]=0;Bs(n+1|0,g);l=e;return}function YB(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;g=l;l=l+16|0;h=g;i=b+11|0;j=a[i>>0]|0;if(j<<24>>24<0)k=c[b+4>>2]|0;else k=j&255;if(k>>>0<d>>>0){FB(b);m=a[i>>0]|0}else m=j;j=m<<24>>24<0;if(j)n=(c[b+8>>2]&2147483647)+-1|0;else n=10;m=k+f|0;if((n-k|0)>>>0>=f>>>0){if(f|0){if(j)o=c[b>>2]|0;else o=b;j=k-d|0;p=o+d|0;if(!j)q=e;else{OB(p+f|0,p,j)|0;q=p>>>0<=e>>>0&(o+k|0)>>>0>e>>>0?e+f|0:e}OB(p,q,f)|0;if((a[i>>0]|0)<0)c[b+4>>2]=m;else a[i>>0]=m;a[h>>0]=0;Bs(o+m|0,h)}}else PB(b,n,m-n|0,k,d,0,f,e);l=g;return b|0}function ZB(a,b,c){a=a|0;b=b|0;c=c|0;return YB(a,b,c,kr(c)|0)|0}function _B(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;h=l;l=l+16|0;i=h;j=b+11|0;k=a[j>>0]|0;if(k<<24>>24<0)m=c[b+4>>2]|0;else m=k&255;if(m>>>0<d>>>0){FB(b);n=a[j>>0]|0}else n=k;k=m-d|0;o=k>>>0<e>>>0?k:e;e=n<<24>>24<0;if(e)p=(c[b+8>>2]&2147483647)+-1|0;else p=10;if((o-m+p|0)>>>0<g>>>0)PB(b,p,m+g-o-p|0,m,d,o,g,f);else{if(e)q=c[b>>2]|0;else q=b;do if((o|0)!=(g|0)){e=k-o|0;if(!e){r=o;s=d;t=f;u=g;v=21}else{p=q+d|0;if(o>>>0>g>>>0){OB(p,f,g)|0;OB(p+g|0,p+o|0,e)|0;w=o;x=g;break}do if(p>>>0<f>>>0&(q+m|0)>>>0>f>>>0)if((p+o|0)>>>0>f>>>0){OB(p,f,o)|0;y=o+d|0;z=f+g|0;A=g-o|0;B=0;break}else{y=d;z=f+(g-o)|0;A=g;B=o;break}else{y=d;z=f;A=g;B=o}while(0);p=q+y|0;OB(p+A|0,p+B|0,e)|0;r=B;s=y;t=z;u=A;v=21}}else{r=g;s=d;t=f;u=g;v=21}while(0);if((v|0)==21){OB(q+s|0,t,u)|0;w=r;x=u}u=x-w+m|0;if((a[j>>0]|0)<0)c[b+4>>2]=u;else a[j>>0]=u;a[i>>0]=0;Bs(q+u|0,i)}l=h;return b|0}function $B(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;g=f;h=a[b+11>>0]|0;if(h<<24>>24<0){i=c[b+4>>2]|0;j=c[b>>2]|0}else{i=h&255;j=b}a[g>>0]=d;if(i>>>0>e>>>0){d=aC(j+e|0,i-e|0,g)|0;k=(d|0)==0?-1:d-j|0}else k=-1;l=f;return k|0}function aC(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(!c)e=0;else e=Pn(b,nq(a[d>>0]|0)|0,c)|0;return e|0}function bC(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=b+11|0;i=a[h>>0]|0;if(i<<24>>24<0)j=c[b+4>>2]|0;else j=i&255;if((g|0)==-1|j>>>0<d>>>0){FB(b);k=a[h>>0]|0}else k=i;i=j-d|0;j=i>>>0<e>>>0?i:e;if(k<<24>>24<0)l=c[b>>2]|0;else l=b;b=j>>>0>g>>>0;k=gB(l+d|0,f,b?g:j)|0;if(!k)return (j>>>0<g>>>0?-1:b&1)|0;else return k|0;return 0}function cC(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=l;l=l+16|0;h=g;if(f>>>0<=4294967279)if(f>>>0<11){a[b+11>>0]=e;i=b}else j=5;else{EB(b);j=5}if((j|0)==5){j=f+16&-16;f=rB(j)|0;c[b>>2]=f;c[b+8>>2]=j|-2147483648;c[b+4>>2]=e;i=f}oq(i,d,e)|0;a[h>>0]=0;Bs(i+e|0,h);l=g;return}function dC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;g=f;if(e>>>0<=1073741807)if(e>>>0<2){a[b+8+3>>0]=e;h=b}else i=5;else{EB(b);i=5}do if((i|0)==5){j=e+4&-4;if(j>>>0>1073741823)ya(37300,37337,1734,37386);else{k=rB(j<<2)|0;c[b>>2]=k;c[b+8>>2]=j|-2147483648;c[b+4>>2]=e;h=k;break}}while(0);Gq(h,d,e)|0;c[g>>2]=0;Js(h+(e<<2)|0,g);l=f;return}function eC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;g=f;if(d>>>0<=1073741807)if(d>>>0<2){a[b+8+3>>0]=d;h=b}else i=5;else{EB(b);i=5}do if((i|0)==5){j=d+4&-4;if(j>>>0>1073741823)ya(37300,37337,1734,37386);else{k=rB(j<<2)|0;c[b>>2]=k;c[b+8>>2]=j|-2147483648;c[b+4>>2]=d;h=k;break}}while(0);fC(h,d,e)|0;c[g>>2]=0;Js(h+(d<<2)|0,g);l=f;return}function fC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!b)d=a;else{Hp(a,c,b)|0;d=a}return d|0}function gC(b){b=b|0;if((a[b+8+3>>0]|0)<0)tB(c[b>>2]|0);return}function hC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;f=l;l=l+16|0;g=f;h=b+8|0;i=h+3|0;j=a[i>>0]|0;k=j<<24>>24<0;if(k)m=(c[h>>2]&2147483647)+-1|0;else m=1;do if(m>>>0>=e>>>0){if(k)n=c[b>>2]|0;else n=b;iC(n,d,e)|0;c[g>>2]=0;Js(n+(e<<2)|0,g);if((a[i>>0]|0)<0){c[b+4>>2]=e;break}else{a[i>>0]=e;break}}else{if(k)o=c[b+4>>2]|0;else o=j&255;jC(b,m,e-m|0,o,0,o,e,d)}while(0);l=f;return b|0}function iC(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)d=a;else{Ip(a,b,c)|0;d=a}return d|0}function jC(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;k=l;l=l+16|0;m=k;if((1073741806-d|0)>>>0<e>>>0)EB(b);n=b+8|0;if((a[n+3>>0]|0)<0)o=c[b>>2]|0;else o=b;if(d>>>0<536870887){p=e+d|0;e=d<<1;q=p>>>0<e>>>0?e:p;p=q>>>0<2?2:q+4&-4;if(p>>>0>1073741823)ya(37300,37337,1734,37386);else r=p}else r=1073741807;p=rB(r<<2)|0;if(g|0)Gq(p,o,g)|0;if(i|0)Gq(p+(g<<2)|0,j,i)|0;j=f-h|0;f=j-g|0;if(f|0)Gq(p+(g<<2)+(i<<2)|0,o+(g<<2)+(h<<2)|0,f)|0;if((d|0)!=1)tB(o);c[b>>2]=p;c[n>>2]=r|-2147483648;r=j+i|0;c[b+4>>2]=r;c[m>>2]=0;Js(p+(r<<2)|0,m);l=k;return}function kC(b,d){b=b|0;d=d|0;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,q=0,r=0;if(d>>>0>1073741807)EB(b);e=b+8|0;f=e+3|0;g=a[f>>0]|0;h=g<<24>>24<0;if(h){i=c[b+4>>2]|0;j=(c[e>>2]&2147483647)+-1|0}else{i=g&255;j=1}k=i>>>0>d>>>0?i:d;d=k>>>0<2;l=d?1:(k+4&-4)+-1|0;do if((l|0)!=(j|0)){do if(d){k=c[b>>2]|0;if(h){m=0;n=k;o=b;p=15}else{Gq(b,k,(g&255)+1|0)|0;tB(k);p=17}}else{k=l+1|0;if(k>>>0>1073741823)ya(37300,37337,1734,37386);q=rB(k<<2)|0;if(h){m=1;n=c[b>>2]|0;o=q;p=15;break}else{Gq(q,b,(g&255)+1|0)|0;r=q;p=16;break}}while(0);if((p|0)==15){Gq(o,n,(c[b+4>>2]|0)+1|0)|0;tB(n);if(m){r=o;p=16}else p=17}if((p|0)==16){c[e>>2]=l+1|-2147483648;c[b+4>>2]=i;c[b>>2]=r;break}else if((p|0)==17){a[f>>0]=i;break}}while(0);return}function lC(a,b){a=a|0;b=b|0;return hC(a,b,Iv(b)|0)|0}function mC(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;if((1073741807-d|0)>>>0<e>>>0)EB(b);j=b+8|0;if((a[j+3>>0]|0)<0)k=c[b>>2]|0;else k=b;if(d>>>0<536870887){l=e+d|0;e=d<<1;m=l>>>0<e>>>0?e:l;l=m>>>0<2?2:m+4&-4;if(l>>>0>1073741823)ya(37300,37337,1734,37386);else n=l}else n=1073741807;l=rB(n<<2)|0;if(g|0)Gq(l,k,g)|0;m=f-h-g|0;if(m|0)Gq(l+(g<<2)+(i<<2)|0,k+(g<<2)+(h<<2)|0,m)|0;if((d|0)!=1)tB(k);c[b>>2]=l;c[j>>2]=n|-2147483648;return}function nC(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;e=l;l=l+16|0;f=e;g=e+4|0;c[f>>2]=d;d=b+8|0;h=d+3|0;i=a[h>>0]|0;j=i<<24>>24<0;if(j){k=c[b+4>>2]|0;m=(c[d>>2]&2147483647)+-1|0}else{k=i&255;m=1}if((k|0)==(m|0)){mC(b,m,1,m,m,0,0);i=m+1|0;if((a[h>>0]|0)<0){n=i;o=8}else{p=i;o=7}}else{i=k+1|0;if(j){n=i;o=8}else{p=i;o=7}}if((o|0)==7){a[h>>0]=p;q=b}else if((o|0)==8){o=c[b>>2]|0;c[b+4>>2]=n;q=o}o=q+(k<<2)|0;Js(o,f);c[g>>2]=0;Js(o+4|0,g);l=e;return}function oC(a){a=a|0;return}function pC(a,b,d){a=a|0;b=b|0;d=d|0;c[a>>2]=d;c[a+4>>2]=b;return}function qC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e;ub[c[(c[a>>2]|0)+12>>2]&15](f,a,b);if((c[f+4>>2]|0)==(c[d+4>>2]|0))g=(c[f>>2]|0)==(c[d>>2]|0);else g=0;l=e;return g|0}function rC(a,b,d){a=a|0;b=b|0;d=d|0;return ((c[b>>2]|0)==(d|0)?(c[b+4>>2]|0)==(a|0):0)|0}function sC(a){a=a|0;gD(a);return}function tC(a){a=a|0;sC(a);tB(a);return}function uC(a,b,d){a=a|0;b=b|0;d=d|0;b=On(d)|0;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;HB(a,b,kr(b)|0);return}function vC(a,b){a=a|0;b=b|0;var d=0;d=c[b+4>>2]|0;ub[c[(c[d>>2]|0)+24>>2]&15](a,d,c[b>>2]|0);return}function wC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;g=f;if(c[d>>2]|0){h=a[e+11>>0]|0;if(h<<24>>24<0)i=c[e+4>>2]|0;else i=h&255;if(i|0)WB(e,37466)|0;vC(g,d);d=a[g+11>>0]|0;i=d<<24>>24<0;VB(e,i?c[g>>2]|0:g,i?c[g+4>>2]|0:d&255)|0;LB(g)};c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];b=0;while(1){if((b|0)==3)break;c[e+(b<<2)>>2]=0;b=b+1|0}l=f;return}function xC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+32|0;f=e+12|0;g=e;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;HB(g,d,kr(d)|0);wC(f,b,g);CB(a,f);LB(f);LB(g);c[a>>2]=17060;g=b;b=c[g+4>>2]|0;f=a+8|0;c[f>>2]=c[g>>2];c[f+4>>2]=b;l=e;return}function yC(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;a=l;l=l+48|0;b=a+32|0;d=a+24|0;e=a+16|0;f=a;g=a+36|0;a=zC()|0;if(a|0?(h=c[a>>2]|0,h|0):0){a=h+48|0;i=c[a>>2]|0;j=c[a+4>>2]|0;if(!((i&-256|0)==1126902528&(j|0)==1129074247)){c[d>>2]=c[4269];AC(37555,d)}if((i|0)==1126902529&(j|0)==1129074247)k=c[h+44>>2]|0;else k=h+80|0;c[g>>2]=k;k=c[h>>2]|0;h=c[k+4>>2]|0;j=ib[c[(c[754]|0)+16>>2]&31](3016,k,g)|0;k=c[4269]|0;if(j){j=c[g>>2]|0;g=rb[c[(c[j>>2]|0)+8>>2]&127](j)|0;c[f>>2]=k;c[f+4>>2]=h;c[f+8>>2]=g;AC(37469,f)}else{c[e>>2]=k;c[e+4>>2]=h;AC(37514,e)}}AC(37593,b)}function zC(){var a=0,b=0;a=l;l=l+16|0;if(!(Pa(42832,3)|0)){b=Ma(c[10709]|0)|0;l=a;return b|0}else AC(37744,a);return 0}function AC(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=c[2405]|0;En(b,a,e)|0;Mp(10,b)|0;wa()}function BC(a){a=a|0;return}function CC(a){a=a|0;BC(a);tB(a);return}function DC(a){a=a|0;return}function EC(a){a=a|0;return}function FC(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=l;l=l+64|0;f=e;if(!(JC(a,b,0)|0))if((b|0)!=0?(g=NC(b,3040,3024,0)|0,(g|0)!=0):0){b=f+4|0;h=b+52|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(h|0));c[f>>2]=g;c[f+8>>2]=a;c[f+12>>2]=-1;c[f+48>>2]=1;yb[c[(c[g>>2]|0)+28>>2]&31](g,f,c[d>>2]|0,1);if((c[f+24>>2]|0)==1){c[d>>2]=c[f+16>>2];i=1}else i=0;j=i}else j=0;else j=1;l=e;return j|0}function GC(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(JC(a,c[b+8>>2]|0,g)|0)MC(0,b,d,e,f);return}function HC(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;do if(!(JC(b,c[d+8>>2]|0,g)|0)){if(JC(b,c[d>>2]|0,g)|0){h=d+32|0;if((c[d+16>>2]|0)!=(e|0)?(i=d+20|0,(c[i>>2]|0)!=(e|0)):0){c[h>>2]=f;c[i>>2]=e;i=d+40|0;c[i>>2]=(c[i>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[h>>2]=1}}else LC(0,d,e,f);while(0);return}function IC(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if(JC(a,c[b+8>>2]|0,0)|0)KC(0,b,d,e);return}function JC(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function KC(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;b=d+16|0;g=c[b>>2]|0;h=d+36|0;i=d+24|0;do if(g){if((g|0)!=(e|0)){c[h>>2]=(c[h>>2]|0)+1;c[i>>2]=2;a[d+54>>0]=1;break}if((c[i>>2]|0)==2)c[i>>2]=f}else{c[b>>2]=e;c[i>>2]=f;c[h>>2]=1}while(0);return}function LC(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if((c[b+4>>2]|0)==(d|0)?(d=b+28|0,(c[d>>2]|0)!=1):0)c[d>>2]=e;return}function MC(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;b=d+16|0;h=c[b>>2]|0;i=d+54|0;j=d+48|0;k=d+24|0;l=d+36|0;if(!h){c[b>>2]=e;c[k>>2]=g;c[l>>2]=1;if(!((c[j>>2]|0)==1&(g|0)==1))break;a[i>>0]=1;break}if((h|0)!=(e|0)){c[l>>2]=(c[l>>2]|0)+1;a[i>>0]=1;break}l=c[k>>2]|0;if((l|0)==2){c[k>>2]=g;m=g}else m=l;if((c[j>>2]|0)==1&(m|0)==1)a[i>>0]=1}while(0);return}function NC(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;h=l;l=l+64|0;i=h;j=c[d>>2]|0;k=d+(c[j+-8>>2]|0)|0;m=c[j+-4>>2]|0;c[i>>2]=f;c[i+4>>2]=d;c[i+8>>2]=e;c[i+12>>2]=g;g=i+16|0;e=i+20|0;d=i+24|0;j=i+28|0;n=i+32|0;o=i+40|0;p=g;q=p+36|0;do{c[p>>2]=0;p=p+4|0}while((p|0)<(q|0));b[g+36>>1]=0;a[g+38>>0]=0;a:do if(JC(m,f,0)|0){c[i+48>>2]=1;kb[c[(c[m>>2]|0)+20>>2]&15](m,i,k,k,1,0);r=(c[d>>2]|0)==1?k:0}else{lb[c[(c[m>>2]|0)+24>>2]&3](m,i,k,1,0);switch(c[i+36>>2]|0){case 0:{r=(c[o>>2]|0)==1&(c[j>>2]|0)==1&(c[n>>2]|0)==1?c[e>>2]|0:0;break a;break}case 1:break;default:{r=0;break a}}if((c[d>>2]|0)!=1?!((c[o>>2]|0)==0&(c[j>>2]|0)==1&(c[n>>2]|0)==1):0){r=0;break}r=c[g>>2]|0}while(0);l=h;return r|0}function OC(a){a=a|0;BC(a);tB(a);return}function PC(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;if(JC(a,c[b+8>>2]|0,g)|0)MC(0,b,d,e,f);else{h=c[a+8>>2]|0;kb[c[(c[h>>2]|0)+20>>2]&15](h,b,d,e,f,g)}return}function QC(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;do if(!(JC(b,c[d+8>>2]|0,g)|0)){h=b+8|0;if(!(JC(b,c[d>>2]|0,g)|0)){i=c[h>>2]|0;lb[c[(c[i>>2]|0)+24>>2]&3](i,d,e,f,g);break}i=d+32|0;if((c[d+16>>2]|0)!=(e|0)?(j=d+20|0,(c[j>>2]|0)!=(e|0)):0){c[i>>2]=f;k=d+44|0;if((c[k>>2]|0)==4)break;l=d+52|0;a[l>>0]=0;m=d+53|0;a[m>>0]=0;n=c[h>>2]|0;kb[c[(c[n>>2]|0)+20>>2]&15](n,d,e,e,1,g);if(a[m>>0]|0)if(!(a[l>>0]|0)){o=3;p=11}else q=3;else{o=4;p=11}if((p|0)==11){c[j>>2]=e;j=d+40|0;c[j>>2]=(c[j>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0){a[d+54>>0]=1;q=o}else q=o}c[k>>2]=q;break}if((f|0)==1)c[i>>2]=1}else LC(0,d,e,f);while(0);return}function RC(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;if(JC(a,c[b+8>>2]|0,0)|0)KC(0,b,d,e);else{f=c[a+8>>2]|0;yb[c[(c[f>>2]|0)+28>>2]&31](f,b,d,e)}return}function SC(a){a=a|0;return}function TC(){var a=0;a=l;l=l+16|0;if(!(va(42836,280)|0)){l=a;return}else AC(37793,a)}function UC(a){a=a|0;var b=0;b=l;l=l+16|0;Qp(a);if(!(Va(c[10709]|0,0)|0)){l=b;return}else AC(37843,b)}function VC(){var a=0,b=0;a=zC()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0)WC(c[b+12>>2]|0);WC(XC()|0)}function WC(a){a=a|0;var b=0;b=l;l=l+16|0;vb[a&3]();AC(37896,b)}function XC(){var a=0;a=c[4268]|0;c[4268]=a+0;return a|0}function YC(a){a=a|0;return}function ZC(a){a=a|0;YC(a);tB(a);return}function _C(a){a=a|0;return 37936}function $C(a){a=a|0;return}function aD(a){a=a|0;c[a>>2]=17188;eD(a+4|0);return}function bD(a){a=a|0;aD(a);tB(a);return}function cD(a){a=a|0;return dD(a+4|0)|0}function dD(a){a=a|0;return c[a>>2]|0}function eD(a){a=a|0;var b=0,d=0;b=fD(a)|0;d=c[b>>2]|0;c[b>>2]=d+-1;if((d+-1|0)<0)tB((c[a>>2]|0)+-12|0);return}function fD(a){a=a|0;return (c[a>>2]|0)+-4|0}function gD(a){a=a|0;c[a>>2]=17208;eD(a+4|0);return}function hD(a){a=a|0;gD(a);tB(a);return}function iD(a){a=a|0;return dD(a+4|0)|0}function jD(a){a=a|0;aD(a);tB(a);return}function kD(a){a=a|0;return}function lD(a){a=a|0;kD(a);tB(a);return}function mD(a){a=a|0;return 38015}function nD(a){a=a|0;BC(a);tB(a);return}function oD(a,b,c){a=a|0;b=b|0;c=c|0;return JC(a,b,0)|0}function pD(a){a=a|0;BC(a);tB(a);return}function qD(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;if(JC(b,c[d+8>>2]|0,h)|0)MC(0,d,e,f,g);else{i=d+52|0;j=a[i>>0]|0;k=d+53|0;l=a[k>>0]|0;m=c[b+12>>2]|0;n=b+16+(m<<3)|0;a[i>>0]=0;a[k>>0]=0;uD(b+16|0,d,e,f,g,h);a:do if((m|0)>1){o=d+24|0;p=d+54|0;q=b+8|0;r=b+24|0;do{if(a[p>>0]|0)break a;if(!(a[i>>0]|0)){if(a[k>>0]|0?(c[q>>2]&1|0)==0:0)break a}else{if((c[o>>2]|0)==1)break a;if(!(c[q>>2]&2))break a}a[i>>0]=0;a[k>>0]=0;uD(r,d,e,f,g,h);r=r+8|0}while(r>>>0<n>>>0)}while(0);a[i>>0]=j;a[k>>0]=l}return}function rD(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;a:do if(!(JC(b,c[d+8>>2]|0,g)|0)){h=b+12|0;i=d+24|0;j=d+36|0;k=d+54|0;l=b+8|0;m=b+16|0;if(!(JC(b,c[d>>2]|0,g)|0)){n=c[h>>2]|0;o=b+16+(n<<3)|0;vD(m,d,e,f,g);p=b+24|0;if((n|0)<=1)break;n=c[l>>2]|0;if((n&2|0)==0?(c[j>>2]|0)!=1:0){if(!(n&1)){n=p;while(1){if(a[k>>0]|0)break a;if((c[j>>2]|0)==1)break a;vD(n,d,e,f,g);n=n+8|0;if(n>>>0>=o>>>0)break a}}else q=p;while(1){if(a[k>>0]|0)break a;if((c[j>>2]|0)==1?(c[i>>2]|0)==1:0)break a;vD(q,d,e,f,g);q=q+8|0;if(q>>>0>=o>>>0)break a}}else r=p;while(1){if(a[k>>0]|0)break a;vD(r,d,e,f,g);r=r+8|0;if(r>>>0>=o>>>0)break a}}o=d+32|0;if((c[d+16>>2]|0)!=(e|0)?(p=d+20|0,(c[p>>2]|0)!=(e|0)):0){c[o>>2]=f;n=d+44|0;if((c[n>>2]|0)==4)break;s=b+16+(c[h>>2]<<3)|0;t=d+52|0;u=d+53|0;v=0;w=m;x=0;b:while(1){if(w>>>0>=s>>>0){y=v;z=18;break}a[t>>0]=0;a[u>>0]=0;uD(w,d,e,e,1,g);if(a[k>>0]|0){y=v;z=18;break}do if(a[u>>0]|0){if(!(a[t>>0]|0))if(!(c[l>>2]&1)){y=1;z=18;break b}else{A=1;B=x;break}if((c[i>>2]|0)==1){z=23;break b}if(!(c[l>>2]&2)){z=23;break b}else{A=1;B=1}}else{A=v;B=x}while(0);v=A;w=w+8|0;x=B}do if((z|0)==18){if((!x?(c[p>>2]=e,w=d+40|0,c[w>>2]=(c[w>>2]|0)+1,(c[j>>2]|0)==1):0)?(c[i>>2]|0)==2:0){a[k>>0]=1;if(y){z=23;break}else{C=4;break}}if(y)z=23;else C=4}while(0);if((z|0)==23)C=3;c[n>>2]=C;break}if((f|0)==1)c[o>>2]=1}else LC(0,d,e,f);while(0);return}function sD(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;a:do if(!(JC(b,c[d+8>>2]|0,0)|0)){g=c[b+12>>2]|0;h=b+16+(g<<3)|0;tD(b+16|0,d,e,f);if((g|0)>1){g=d+54|0;i=b+24|0;do{tD(i,d,e,f);if(a[g>>0]|0)break a;i=i+8|0}while(i>>>0<h>>>0)}}else KC(0,d,e,f);while(0);return}function tD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=c[a+4>>2]|0;g=f>>8;if(!(f&1))h=g;else h=c[(c[d>>2]|0)+g>>2]|0;g=c[a>>2]|0;yb[c[(c[g>>2]|0)+28>>2]&31](g,b,d+h|0,f&2|0?e:2);return}function uD(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;h=c[a+4>>2]|0;i=h>>8;if(!(h&1))j=i;else j=c[(c[e>>2]|0)+i>>2]|0;i=c[a>>2]|0;kb[c[(c[i>>2]|0)+20>>2]&15](i,b,d,e+j|0,h&2|0?f:2,g);return}function vD(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=c[a+4>>2]|0;h=g>>8;if(!(g&1))i=h;else i=c[(c[d>>2]|0)+h>>2]|0;h=c[a>>2]|0;lb[c[(c[h>>2]|0)+24>>2]&3](h,b,d+i|0,g&2|0?e:2,f);return}function wD(a){a=a|0;c[a>>2]=17248;return}function xD(b){b=b|0;var c=0;if((a[b>>0]|0)==1)c=0;else{a[b>>0]=1;c=1}return c|0}function yD(a){a=a|0;return}function zD(a){a=a|0;return}function AD(a){a=a|0;c[a>>2]=17168;return}function BD(){var a=0;a=c[10710]|0;c[10710]=a+0;return a|0}function CD(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=l;l=l+16|0;f=e;c[f>>2]=c[d>>2];g=ib[c[(c[a>>2]|0)+16>>2]&31](a,b,f)|0;if(g)c[d>>2]=c[f>>2];l=e;return g&1|0}function DD(a){a=a|0;var b=0;if(!a)b=0;else b=(NC(a,3040,3176,0)|0)!=0;return b&1|0}function ED(){}function FD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=b-d>>>0;e=b-d-(c>>>0>a>>>0|0)>>>0;return (A=e,a-c>>>0|0)|0}function GD(a){a=+a;return a>=0.0?+B(a+.5):+O(a-.5)}function HD(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}g=f&-4|0;h=g-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(h|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return f-e|0}function ID(a){a=a|0;return 0}function JD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+c>>>0;return (A=b+d+(e>>>0<a>>>0|0)>>>0,e|0)|0}function KD(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){A=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}A=0;return b>>>c-32|0}function LD(a){a=a|0;return 0}function MD(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return Ia(b|0,d|0,e|0)|0;f=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return f|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}h=g&-4|0;e=h-64|0;while((b|0)<=(e|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(h|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{h=g-4|0;while((b|0)<(h|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return f|0}function ND(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function OD(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;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,t=0,u=0,v=0,w=0,x=0,y=0,z=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;g=a;h=b;i=h;j=d;k=e;l=k;if(!i){m=(f|0)!=0;if(!l){if(m){c[f>>2]=(g>>>0)%(j>>>0);c[f+4>>2]=0}n=0;o=(g>>>0)/(j>>>0)>>>0;return (A=n,o)|0}else{if(!m){n=0;o=0;return (A=n,o)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;o=0;return (A=n,o)|0}}m=(l|0)==0;do if(j){if(!m){p=(S(l|0)|0)-(S(i|0)|0)|0;if(p>>>0<=31){q=p+1|0;r=31-p|0;s=p-31>>31;t=q;u=g>>>(q>>>0)&s|i<<r;v=i>>>(q>>>0)&s;w=0;x=g<<r;break}if(!f){n=0;o=0;return (A=n,o)|0}c[f>>2]=a|0;c[f+4>>2]=h|b&0;n=0;o=0;return (A=n,o)|0}r=j-1|0;if(r&j|0){s=(S(j|0)|0)+33-(S(i|0)|0)|0;q=64-s|0;p=32-s|0;y=p>>31;z=s-32|0;B=z>>31;t=s;u=p-1>>31&i>>>(z>>>0)|(i<<p|g>>>(s>>>0))&B;v=B&i>>>(s>>>0);w=g<<q&y;x=(i<<q|g>>>(z>>>0))&y|g<<p&s-33>>31;break}if(f|0){c[f>>2]=r&g;c[f+4>>2]=0}if((j|0)==1){n=h|b&0;o=a|0|0;return (A=n,o)|0}else{r=ND(j|0)|0;n=i>>>(r>>>0)|0;o=i<<32-r|g>>>(r>>>0)|0;return (A=n,o)|0}}else{if(m){if(f|0){c[f>>2]=(i>>>0)%(j>>>0);c[f+4>>2]=0}n=0;o=(i>>>0)/(j>>>0)>>>0;return (A=n,o)|0}if(!g){if(f|0){c[f>>2]=0;c[f+4>>2]=(i>>>0)%(l>>>0)}n=0;o=(i>>>0)/(l>>>0)>>>0;return (A=n,o)|0}r=l-1|0;if(!(r&l)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=r&i|b&0}n=0;o=i>>>((ND(l|0)|0)>>>0);return (A=n,o)|0}r=(S(l|0)|0)-(S(i|0)|0)|0;if(r>>>0<=30){s=r+1|0;p=31-r|0;t=s;u=i<<p|g>>>(s>>>0);v=i>>>(s>>>0);w=0;x=g<<p;break}if(!f){n=0;o=0;return (A=n,o)|0}c[f>>2]=a|0;c[f+4>>2]=h|b&0;n=0;o=0;return (A=n,o)|0}while(0);if(!t){C=x;D=w;E=v;F=u;G=0;H=0}else{b=d|0|0;d=k|e&0;e=JD(b|0,d|0,-1,-1)|0;k=A;h=x;x=w;w=v;v=u;u=t;t=0;do{a=h;h=x>>>31|h<<1;x=t|x<<1;g=v<<1|a>>>31|0;a=v>>>31|w<<1|0;FD(e|0,k|0,g|0,a|0)|0;i=A;l=i>>31|((i|0)<0?-1:0)<<1;t=l&1;v=FD(g|0,a|0,l&b|0,(((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1)&d|0)|0;w=A;u=u-1|0}while((u|0)!=0);C=h;D=x;E=w;F=v;G=0;H=t}t=D;D=0;if(f|0){c[f>>2]=F;c[f+4>>2]=E}n=(t|0)>>>31|(C|D)<<1|(D<<1|t>>>31)&0|G;o=(t<<1|0>>>31)&-2|H;return (A=n,o)|0}function PD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return OD(a,b,c,d,0)|0}function QD(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=a&65535;d=b&65535;e=P(d,c)|0;f=a>>>16;a=(e>>>16)+(P(d,f)|0)|0;d=b>>>16;b=P(d,c)|0;return (A=(a>>>16)+(P(d,f)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|e&65535|0)|0}function RD(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;a=c;c=QD(e,a)|0;f=A;return (A=(P(b,a)|0)+(P(d,e)|0)+f|f&0,c|0|0)|0}function SD(a){a=a|0;var b=0,d=0;a=a+15&-16|0;b=c[i>>2]|0;d=b+a|0;if((a|0)>0&(d|0)<(b|0)|(d|0)<0){X()|0;Fa(12);return -1}c[i>>2]=d;if((d|0)>(W()|0)?(V()|0)==0:0){c[i>>2]=b;Fa(12);return -1}return b|0}function TD(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){A=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}A=a<<c-32;return 0}function UD(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else MD(b,c,d)|0;return b|0}function VD(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f|0;OD(a,b,d,e,g)|0;l=f;return (A=c[g+4>>2]|0,c[g>>2]|0)|0}function WD(a){a=a|0;return 0}function XD(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function YD(a){a=+a;return a>=0.0?+B(a+.5):+O(a-.5)}function ZD(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return hb[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function _D(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ib[a&31](b|0,c|0,d|0)|0}function $D(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;jb[a&3](b|0,c|0,+d)}function aE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;kb[a&15](b|0,c|0,d|0,e|0,f|0,g|0)}function bE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;lb[a&3](b|0,c|0,d|0,e|0,f|0)}function cE(a,b,c){a=a|0;b=b|0;c=c|0;return +mb[a&3](b|0,c|0)}function dE(a,b){a=a|0;b=b|0;return +nb[a&3](b|0)}function eE(a,b){a=a|0;b=b|0;ob[a&511](b|0)}function fE(a,b,c){a=a|0;b=b|0;c=c|0;pb[a&127](b|0,c|0)}function gE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;return qb[a&63](b|0,c|0,d|0,e|0,f|0,g|0)|0}function hE(a,b){a=a|0;b=b|0;return rb[a&127](b|0)|0}function iE(a,b,c){a=a|0;b=b|0;c=+c;return sb[a&3](b|0,+c)|0}function jE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=+g;return tb[a&3](b|0,c|0,d|0,e|0,f|0,+g)|0}function kE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ub[a&15](b|0,c|0,d|0)}function lE(a){a=a|0;vb[a&3]()}function mE(a,b,c,d,e,f,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;return wb[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function nE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return xb[a&15](b|0,c|0,d|0,e|0)|0}function oE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;yb[a&31](b|0,c|0,d|0,e|0)}function pE(a,b,c){a=a|0;b=b|0;c=c|0;return zb[a&63](b|0,c|0)|0}function qE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;return Ab[a&7](b|0,c|0,d|0,e|0,+f)|0}function rE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;return Bb[a&31](b|0,c|0,d|0,e|0,f|0)|0}function sE(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;T(0);return 0}function tE(a,b,c){a=a|0;b=b|0;c=c|0;T(1);return 0}function uE(a,b,c){a=a|0;b=b|0;c=+c;T(2)}function vE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;T(3)}function wE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;T(4)}function xE(a,b){a=a|0;b=b|0;T(5);return 0.0}function yE(a){a=a|0;T(6);return 0.0}function zE(a){a=a|0;T(7)}function AE(a,b){a=a|0;b=b|0;T(8)}function BE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;T(9);return 0}function CE(a){a=a|0;T(10);return 0}function DE(a,b){a=a|0;b=+b;T(11);return 0}function EE(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;T(12);return 0}function FE(a,b,c){a=a|0;b=b|0;c=c|0;T(13)}function GE(){T(14)}function HE(){ab()}function IE(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;T(15);return 0}function JE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;T(16);return 0}function KE(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;T(17)}function LE(a,b){a=a|0;b=b|0;T(18);return 0}function ME(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;T(19);return 0}function NE(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;T(20);return 0} // EMSCRIPTEN_END_FUNCS var hb=[sE,gw,mw,hx,ix,rx,sx,sE];var ib=[tE,bq,gq,kq,Ng,dh,an,bn,hn,jn,eo,tq,yq,Cq,qC,rC,Yr,ds,zs,Hs,Lx,Qx,Jy,Ly,Oy,hz,mz,oz,rz,FC,oD,Xo];var jb=[uE,xh,Ui,mk];var kb=[vE,jg,nf,Og,eh,cq,uq,Mx,Rx,GC,PC,qD,vE,vE,vE,vE];var lb=[wE,HC,QC,rD];var mb=[xE,wh,lk,xE];var nb=[yE,Hk,Nl,Zl];var ob=[zE,uc,wc,vc,Bc,Ee,Fe,Ge,He,Ae,Be,jh,kh,lh,mh,nh,oh,Iq,Jq,Kq,Lq,kD,Kg,Sq,Tq,Uq,Vq,og,pg,qg,rg,hg,ig,jf,Zf,Af,Bf,kf,lf,Tf,Uf,Vf,Wf,Rf,Sf,Ef,Gf,If,Jf,Kf,Mf,Nf,Of,cg,dg,eg,fg,_f,$f,ag,bg,Gg,Hg,Ig,Jg,tg,ug,xg,yg,zg,Bg,Cg,Dg,Lg,Mg,Wg,Xg,Yg,Zg,Ue,bh,ar,br,cr,dr,er,fr,ph,qh,Dh,Sh,Th,Yh,ii,ji,pi,Bi,Ci,Ii,Si,Ti,Yi,pj,qj,xj,yj,rk,Fj,Gj,Ij,Vj,Wj,bk,ck,hl,il,jl,kl,Pk,gl,_k,$k,al,bl,Zk,rl,sl,tl,Bl,Cl,Dl,Ql,Rl,Sl,Tl,Pl,am,bm,cm,dm,$l,om,pm,qm,rm,lm,nm,mm,wm,xm,ym,zm,Dm,Em,Fm,Gm,Up,Vp,Wp,Yp,_p,$p,qq,rq,Nq,Oq,Pq,Qq,Xq,Yq,Zq,_q,oC,hr,lr,mr,Ur,Vr,$r,as,gs,hs,ns,os,us,vs,ws,Ds,Es,Ks,Ls,Et,Ft,du,eu,uu,vu,Hu,Iu,sv,tv,ew,fw,kw,lw,pw,qw,Aw,Bw,Lw,Mw,Ww,Xw,fx,gx,px,qx,xx,yx,Dx,Ex,Jx,Kx,Ox,Px,Cs,cy,Tx,ry,sy,Dy,Ey,Gy,Hy,Ty,Uy,_y,$y,fz,gz,tz,uz,vz,sC,tC,BC,CC,DC,EC,OC,YC,ZC,aD,bD,gD,hD,jD,lD,nD,pD,LB,Kb,Mb,Ob,Pb,$j,Tk,Rk,Pr,ct,et,Yu,_u,av,gC,Kv,Mv,Ov,jx,Qp,UC,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE,zE];var pb=[AE,Wb,Xb,oc,pc,rc,sc,aq,mf,tf,uf,wf,ch,sh,th,vh,yh,zh,Ah,Bh,Uh,Vh,Wh,Zh,$h,ki,li,mi,ni,qi,si,Di,Ei,Fi,Gi,Ki,Mi,ek,fk,gk,hk,ik,kk,nk,ok,Vi,Wi,$i,bj,pk,xk,zk,fl,Xk,ol,yl,Ml,Yl,jm,sq,Wr,bs,is,ps,tw,uw,vw,ww,yw,zw,Ew,Fw,Gw,Hw,Jw,Kw,Pw,Qw,Rw,Sw,Uw,Vw,_w,$w,ax,bx,dx,ex,Nx,Sx,Xy,Yy,Zy,cz,dz,ez,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE,AE];var qb=[BE,Ms,Ns,Os,Ps,Qs,Rs,Ss,Ts,Us,Vs,Ws,Gt,Ht,It,Jt,Kt,Lt,Mt,Nt,Ot,Pt,Qt,hu,ju,yu,Au,Ku,Lu,Mu,Nu,Ou,vv,wv,xv,yv,zv,Ax,Gx,BE,BE,BE,BE,BE,BE,BE,BE,BE,BE,BE,BE,BE,BE,BE,BE,BE,BE,BE,BE,BE,BE,BE,BE,BE];var rb=[CE,vg,eq,fq,lg,iq,pf,qf,vf,xf,yf,zf,iD,Hf,Lf,wg,Ag,hq,$g,ah,gh,rh,uh,Eh,Fh,Gh,Hh,Ih,Ji,dk,jk,sk,Zi,_i,vk,wk,tk,uk,Jj,Kj,Lj,cl,Ik,Jk,Kk,Lk,Nk,Uk,Yk,ll,pl,vl,zl,Jl,Ol,Vl,_l,gm,km,$m,wq,xq,zq,Aq,ir,Xr,cs,js,ks,qs,rs,Ju,Qu,Ru,Su,Tu,Uu,Vu,Wu,uv,Bv,Cv,Dv,Ev,Fv,Gv,Hv,rw,sw,xw,Cw,Dw,Iw,Nw,Ow,Tw,Yw,Zw,cx,Xx,Yx,_x,ny,oy,qy,Vy,Wy,az,bz,gy,hy,jy,wy,xy,zy,_C,cD,mD,CE,CE,CE,CE,CE,CE,CE,CE,CE,CE];var sb=[DE,Rc,Tc,Vc];var tb=[EE,zx,Fx,EE];var ub=[FE,Yb,qc,tc,zc,Ac,Ec,Fc,De,pC,jr,FE,FE,FE,FE,FE];var vb=[GE,HE,yC,TC];var wb=[IE,Pu,Av,Ux,Vx,ky,ly,dy,ey,ty,uy,IE,IE,IE,IE,IE];var xb=[JE,Ch,Xh,oi,Hi,Xi,zj,Hj,qk,Ny,iz,jz,kz,qz,JE,JE];var yb=[KE,kg,of,Pg,fh,_h,ri,Li,aj,Aj,Mj,yk,dq,vq,ys,Gs,IC,RC,sD,KE,KE,KE,KE,KE,KE,KE,KE,KE,KE,KE,KE,KE];var zb=[LE,xc,yc,Cc,Dc,iB,Ce,mg,ng,rf,sf,jq,lq,_g,hh,ih,dl,el,Mk,Ok,Vk,Wk,ml,nl,ql,wl,xl,Al,Kl,Ll,Wl,Xl,hm,im,Bq,Dq,Zr,es,ls,ss,Iy,Ky,My,lz,nz,pz,LE,LE,LE,LE,LE,LE,LE,LE,LE,LE,LE,LE,LE,LE,LE,LE,LE,LE];var Ab=[ME,ku,lu,Bu,Cu,ME,ME,ME];var Bb=[NE,xs,Fs,fu,gu,iu,mu,wu,xu,zu,Du,Wx,Zx,my,py,Py,sz,fy,iy,vy,yy,NE,NE,NE,NE,NE,NE,NE,NE,NE,NE,NE];return{_roundf:GD,_piperRequestJson:Qb,stackSave:Db,getTempRet0:Ib,___udivdi3:PD,setThrew:Gb,_bitshift64Lshr:KD,_bitshift64Shl:TD,_malloc:Pp,_fflush:So,___cxa_is_pointer_type:DD,_llvm_cttz_i32:ND,_sbrk:SD,_memcpy:MD,_llvm_bswap_i32:XD,___muldi3:RD,___uremdi3:VD,stackAlloc:Cb,_i64Subtract:FD,___udivmoddi4:OD,setTempRet0:Hb,_i64Add:JD,_piperFreeJson:Tb,_pthread_mutex_unlock:WD,__GLOBAL__I_000101:Lr,_emscripten_get_global_libc:_m,__GLOBAL__sub_I_nnls_chroma_cpp:Wc,__GLOBAL__sub_I_iostream_cpp:Mr,_pthread_cond_broadcast:LD,___errno_location:dn,___muldsi3:QD,___cxa_can_catch:CD,_free:Qp,runPostSets:ED,__GLOBAL__sub_I_PluginLoader_cpp:_j,_round:YD,establishStackSpace:Fb,_memmove:UD,stackRestore:Eb,_piperProcessRaw:Sb,__GLOBAL__sub_I_PluginSummarisingAdapter_cpp:ak,_pthread_mutex_lock:ID,_memset:HD,stackAlloc:Cb,stackSave:Db,stackRestore:Eb,establishStackSpace:Fb,setThrew:Gb,setTempRet0:Hb,getTempRet0:Ib,dynCall_iiiiiiii:ZD,dynCall_iiii:_D,dynCall_viid:$D,dynCall_viiiiii:aE,dynCall_viiiii:bE,dynCall_dii:cE,dynCall_di:dE,dynCall_vi:eE,dynCall_vii:fE,dynCall_iiiiiii:gE,dynCall_ii:hE,dynCall_iid:iE,dynCall_iiiiiid:jE,dynCall_viii:kE,dynCall_v:lE,dynCall_iiiiiiiii:mE,dynCall_iiiii:nE,dynCall_viiii:oE,dynCall_iii:pE,dynCall_iiiiid:qE,dynCall_iiiiii:rE}}) // EMSCRIPTEN_END_ASM (Module.asmGlobalArg,Module.asmLibraryArg,buffer);var _roundf=Module["_roundf"]=asm["_roundf"];var _piperRequestJson=Module["_piperRequestJson"]=asm["_piperRequestJson"];var stackSave=Module["stackSave"]=asm["stackSave"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var setThrew=Module["setThrew"]=asm["setThrew"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _malloc=Module["_malloc"]=asm["_malloc"];var _fflush=Module["_fflush"]=asm["_fflush"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var _llvm_cttz_i32=Module["_llvm_cttz_i32"]=asm["_llvm_cttz_i32"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var ___udivmoddi4=Module["___udivmoddi4"]=asm["___udivmoddi4"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _piperFreeJson=Module["_piperFreeJson"]=asm["_piperFreeJson"];var _pthread_mutex_unlock=Module["_pthread_mutex_unlock"]=asm["_pthread_mutex_unlock"];var __GLOBAL__I_000101=Module["__GLOBAL__I_000101"]=asm["__GLOBAL__I_000101"];var _emscripten_get_global_libc=Module["_emscripten_get_global_libc"]=asm["_emscripten_get_global_libc"];var __GLOBAL__sub_I_nnls_chroma_cpp=Module["__GLOBAL__sub_I_nnls_chroma_cpp"]=asm["__GLOBAL__sub_I_nnls_chroma_cpp"];var __GLOBAL__sub_I_iostream_cpp=Module["__GLOBAL__sub_I_iostream_cpp"]=asm["__GLOBAL__sub_I_iostream_cpp"];var _pthread_cond_broadcast=Module["_pthread_cond_broadcast"]=asm["_pthread_cond_broadcast"];var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var ___muldsi3=Module["___muldsi3"]=asm["___muldsi3"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var _free=Module["_free"]=asm["_free"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var __GLOBAL__sub_I_PluginLoader_cpp=Module["__GLOBAL__sub_I_PluginLoader_cpp"]=asm["__GLOBAL__sub_I_PluginLoader_cpp"];var _round=Module["_round"]=asm["_round"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var _memmove=Module["_memmove"]=asm["_memmove"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var _piperProcessRaw=Module["_piperProcessRaw"]=asm["_piperProcessRaw"];var __GLOBAL__sub_I_PluginSummarisingAdapter_cpp=Module["__GLOBAL__sub_I_PluginSummarisingAdapter_cpp"]=asm["__GLOBAL__sub_I_PluginSummarisingAdapter_cpp"];var _pthread_mutex_lock=Module["_pthread_mutex_lock"]=asm["_pthread_mutex_lock"];var _memset=Module["_memset"]=asm["_memset"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_dii=Module["dynCall_dii"]=asm["dynCall_dii"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iid=Module["dynCall_iid"]=asm["dynCall_iid"];var dynCall_iiiiiid=Module["dynCall_iiiiiid"]=asm["dynCall_iiiiiid"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiiiid=Module["dynCall_iiiiid"]=asm["dynCall_iiiiid"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];Runtime.stackAlloc=Module["stackAlloc"];Runtime.stackSave=Module["stackSave"];Runtime.stackRestore=Module["stackRestore"];Runtime.establishStackSpace=Module["establishStackSpace"];Runtime.setTempRet0=Module["setTempRet0"];Runtime.getTempRet0=Module["getTempRet0"];Module["asm"]=asm;Module["then"]=(function(func){if(Module["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}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain"]=Module.callMain=function callMain(args){args=args||[];ensureInitRuntime();var argc=args.length+1;function pad(){for(var i=0;i<4-1;i++){argv.push(0)}}var argv=[allocate(intArrayFromString(Module["thisProgram"]),"i8",ALLOC_NORMAL)];pad();for(var i=0;i<argc-1;i=i+1){argv.push(allocate(intArrayFromString(args[i]),"i8",ALLOC_NORMAL));pad()}argv.push(0);argv=allocate(argv,"i32",ALLOC_NORMAL);try{var ret=Module["_main"](argc,argv,0);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="SimulateInfiniteLoop"){Module["noExitRuntime"]=true;return}else{var toLog=e;if(e&&typeof e==="object"&&e.stack){toLog=[e,e.stack]}Module.printErr("exception thrown: "+toLog);Module["quit"](1,e)}}finally{calledMain=true}};function run(args){args=args||Module["arguments"];if(preloadStartTime===null)preloadStartTime=Date.now();if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(Module["_main"]&&shouldRunNow)Module["callMain"](args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=Module.run=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=Module.abort=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"]){shouldRunNow=false}run() return NNLSChromaModule; }; if (typeof module === "object" && module.exports) { module['exports'] = NNLSChromaModule; }; return NNLSChromaModule;}));