text: (function(window) { var Module = typeof window === 'undefined' ? undefined : window.OpenCCWasm_.EmbindModule_; var Module=typeof Module!=="undefined"?Module:{};var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}Module["arguments"]=[];Module["thisProgram"]="./this.program";Module["quit"]=(function(status,toThrow){throw toThrow});Module["preRun"]=[];Module["postRun"]=[];var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}else{return scriptDirectory+path}}if(ENVIRONMENT_IS_NODE){scriptDirectory=__dirname+"/";var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);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};if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["quit"]=(function(status){process["exit"](status)});Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(typeof read!="undefined"){Module["read"]=function shell_read(f){return read(f)}}Module["readBinary"]=function readBinary(f){var data;if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}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){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WEB){if(document.currentScript){scriptDirectory=document.currentScript.src}}else{scriptDirectory=self.location.href}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}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);return}onerror()};xhr.onerror=onerror;xhr.send(null)};Module["setWindowTitle"]=(function(title){document.title=title})}else{}var out=Module["print"]||(typeof console!=="undefined"?console.log.bind(console):typeof print!=="undefined"?print:null);var err=Module["printErr"]||(typeof printErr!=="undefined"?printErr:typeof console!=="undefined"&&console.warn.bind(console)||out);for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var STACK_ALIGN=16;function staticAlloc(size){var ret=STATICTOP;STATICTOP=STATICTOP+size+15&-16;return ret}function dynamicAlloc(size){var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=ret+size+15&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}function alignMemory(size,factor){if(!factor)factor=STACK_ALIGN;var ret=size=Math.ceil(size/factor)*factor;return ret}function getNativeTypeSize(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return 4}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}function warnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}var jsCallStartIndex=1;var functionPointers=new Array(0);var funcWrappers={};function dynCall(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}var GLOBAL_BASE=8;var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){stackSave()}),"stackRestore":(function(){stackRestore()}),"arrayToC":(function(arr){var ret=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=stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){function convertReturnValue(ret){if(returnType==="string")return Pointer_stringify(ret);if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);ret=convertReturnValue(ret);if(stack!==0)stackRestore(stack);return ret}function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":HEAP8[ptr>>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}var ALLOC_STATIC=2;var ALLOC_NONE=4;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 UTF8ToString(ptr)}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)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(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}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function allocateUTF8(str){var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8Array(str,HEAP8,ret,size);return ret}function demangle(func){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)}var WASM_PAGE_SIZE=65536;var ASMJS_PAGE_SIZE=16777216;var MIN_TOTAL_MEMORY=16777216;function alignUp(x,multiple){if(x%multiple>0){x+=multiple-x%multiple}return x}var buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBuffer(buf){Module["buffer"]=buffer=buf}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 ")}if(!Module["reallocBuffer"])Module["reallocBuffer"]=(function(size){var ret;try{var oldHEAP8=HEAP8;ret=new ArrayBuffer(size);var temp=new Int8Array(ret);temp.set(oldHEAP8)}catch(e){return false}var success=_emscripten_replace_memory(ret);if(!success)return false;return ret});function enlargeMemory(){var PAGE_MULTIPLE=Module["usingWasm"]?WASM_PAGE_SIZE:ASMJS_PAGE_SIZE;var LIMIT=2147483648-PAGE_MULTIPLE;if(HEAP32[DYNAMICTOP_PTR>>2]>LIMIT){return false}var OLD_TOTAL_MEMORY=TOTAL_MEMORY;TOTAL_MEMORY=Math.max(TOTAL_MEMORY,MIN_TOTAL_MEMORY);while(TOTAL_MEMORY<HEAP32[DYNAMICTOP_PTR>>2]){if(TOTAL_MEMORY<=536870912){TOTAL_MEMORY=alignUp(2*TOTAL_MEMORY,PAGE_MULTIPLE)}else{TOTAL_MEMORY=Math.min(alignUp((3*TOTAL_MEMORY+2147483648)/4,PAGE_MULTIPLE),LIMIT)}}var replacement=Module["reallocBuffer"](TOTAL_MEMORY);if(!replacement||replacement.byteLength!=TOTAL_MEMORY){TOTAL_MEMORY=OLD_TOTAL_MEMORY;return false}updateGlobalBuffer(replacement);updateGlobalBufferViews();return true}var byteLength;try{byteLength=Function.prototype.call.bind(Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get);byteLength(new ArrayBuffer(4))}catch(e){byteLength=(function(buffer){return buffer.byteLength})}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;if(TOTAL_MEMORY<TOTAL_STACK)err("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)}Module["buffer"]=buffer}updateGlobalBufferViews();function getTotalMemory(){return TOTAL_MEMORY}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)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}var Math_abs=Math.abs;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_min=Math.min;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0}STATIC_BASE=GLOBAL_BASE;STATICTOP=STATIC_BASE+25792;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_Wasm_cpp()})},{func:(function(){__GLOBAL__sub_I_BinaryDict_cpp()})},{func:(function(){__GLOBAL__sub_I_Config_cpp()})},{func:(function(){__GLOBAL__sub_I_Conversion_cpp()})},{func:(function(){__GLOBAL__sub_I_ConversionChain_cpp()})},{func:(function(){__GLOBAL__sub_I_Converter_cpp()})},{func:(function(){__GLOBAL__sub_I_DartsDict_cpp()})},{func:(function(){__GLOBAL__sub_I_Dict_cpp()})},{func:(function(){__GLOBAL__sub_I_DictConverter_cpp()})},{func:(function(){__GLOBAL__sub_I_DictEntry_cpp()})},{func:(function(){__GLOBAL__sub_I_DictGroup_cpp()})},{func:(function(){__GLOBAL__sub_I_MaxMatchSegmentation_cpp()})},{func:(function(){__GLOBAL__sub_I_PhraseExtract_cpp()})},{func:(function(){__GLOBAL__sub_I_SimpleConverter_cpp()})},{func:(function(){__GLOBAL__sub_I_TextDict_cpp()})},{func:(function(){__GLOBAL__sub_I_UTF8StringSlice_cpp()})},{func:(function(){__GLOBAL__sub_I_UTF8Util_cpp()})},{func:(function(){__GLOBAL__sub_I_bind_cpp()})});memoryInitializer="opencc-asm.js.mem";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___cxa_allocate_exception(size){return _malloc(size)}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var key in EXCEPTIONS.infos){var ptr=+key;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 ___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 ___cxa_free_exception(ptr){try{return _free(ptr)}catch(e){}}function ___cxa_end_catch(){Module["setThrew"](0);var ptr=EXCEPTIONS.caught.pop();if(ptr){EXCEPTIONS.decRef(EXCEPTIONS.deAdjust(ptr));EXCEPTIONS.last=0}}function ___cxa_find_matching_catch_2(){return ___cxa_find_matching_catch.apply(null,arguments)}function ___cxa_find_matching_catch_3(){return ___cxa_find_matching_catch.apply(null,arguments)}function ___cxa_rethrow(){var ptr=EXCEPTIONS.caught.pop();ptr=EXCEPTIONS.deAdjust(ptr);if(!EXCEPTIONS.infos[ptr].rethrown){EXCEPTIONS.caught.push(ptr);EXCEPTIONS.infos[ptr].rethrown=true}EXCEPTIONS.last=ptr;throw ptr}function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}throw ptr}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(setTempRet0(0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(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(setTempRet0(typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(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}function ___cxa_uncaught_exception(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}function ___gxx_personality_v0(){}function ___lock(){}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 ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}function ___map_file(pathname,size){___setErrNo(ERRNO_CODES.EPERM);return-1}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"};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){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){err(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);try{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()})}catch(e){return callback(e)}}))}),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,{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/);var flags=process["binding"]("constants");if(flags["fs"]){flags=flags["fs"]}NODEFS.flagsForNodeMap={"1024":flags["O_APPEND"],"64":flags["O_CREAT"],"128":flags["O_EXCL"],"0":flags["O_RDONLY"],"2":flags["O_RDWR"],"4096":flags["O_SYNC"],"512":flags["O_TRUNC"],"1":flags["O_WRONLY"]}}),bufferFrom:(function(arrayBuffer){return Buffer.alloc?Buffer.from(arrayBuffer):new Buffer(arrayBuffer)}),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&292)>>2}}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)}),flagsForNode:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;var newFlags=0;for(var k in NODEFS.flagsForNodeMap){if(flags&k){newFlags|=NODEFS.flagsForNodeMap[k];flags^=k}}if(!flags){return newFlags}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.flagsForNode(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;try{return fs.readSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),write:(function(stream,buffer,offset,length,position){try{return fs.writeSync(stream.nfd,NODEFS.bufferFrom(buffer.buffer),offset,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),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:{},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;err("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(FS.isClosed(stream)){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}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)}stream.fd=null}),isClosed:(function(stream){return stream.fd===null}),llseek:(function(stream,offset,whence){if(FS.isClosed(stream)){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}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(FS.isClosed(stream)){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}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=typeof position!=="undefined";if(!seeking){position=stream.position}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(FS.isClosed(stream)){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}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=typeof position!=="undefined";if(!seeking){position=stream.position}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(FS.isClosed(stream)){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}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(stream.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";var stream=FS.open(path,opts.flags,opts.mode);if(typeof data==="string"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,undefined,opts.canOwn)}else if(ArrayBuffer.isView(data)){FS.write(stream,data,0,data.byteLength,undefined,opts.canOwn)}else{throw new Error("Unsupported data type")}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];if(this.stack)Object.defineProperty(this,"stack",{value:(new Error).stack,writable:true})};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 ___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 ___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}}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}}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 ___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 ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21509:case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{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};case 21524:{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}}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}}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 ___unlock(){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}else{return name}}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return(new Function("body","return function "+name+"() {\n"+'    "use strict";'+"    return body.apply(this, arguments);\n"+"};\n"))(body)}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,(function(message){this.name=errorName;this.message=message;var stack=(new Error(message)).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}}));errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=(function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}});return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach((function(type){typeDependencies[type]=dependentTypes}));function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i<myTypes.length;++i){registerType(myTypes[i],myTypeConverters[i])}}var typeConverters=new Array(dependentTypes.length);var unregisteredTypes=[];var registered=0;dependentTypes.forEach((function(dt,i){if(registeredTypes.hasOwnProperty(dt)){typeConverters[i]=registeredTypes[dt]}else{unregisteredTypes.push(dt);if(!awaitingDependencies.hasOwnProperty(dt)){awaitingDependencies[dt]=[]}awaitingDependencies[dt].push((function(){typeConverters[i]=registeredTypes[dt];++registered;if(registered===unregisteredTypes.length){onComplete(typeConverters)}}))}}));if(0===unregisteredTypes.length){onComplete(typeConverters)}}function registerType(rawType,registeredInstance,options){options=options||{};if(!("argPackAdvance"in registeredInstance)){throw new TypeError("registerType registeredInstance requires argPackAdvance")}var name=registeredInstance.name;if(!rawType){throwBindingError('type "'+name+'" must have a positive integer typeid pointer')}if(registeredTypes.hasOwnProperty(rawType)){if(options.ignoreDuplicateRegistrations){return}else{throwBindingError("Cannot register type '"+name+"' twice")}}registeredTypes[rawType]=registeredInstance;delete typeDependencies[rawType];if(awaitingDependencies.hasOwnProperty(rawType)){var callbacks=awaitingDependencies[rawType];delete awaitingDependencies[rawType];callbacks.forEach((function(cb){cb()}))}}function __embind_register_bool(rawType,name,size,trueValue,falseValue){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(wt){return!!wt}),"toWireType":(function(destructors,o){return o?trueValue:falseValue}),"argPackAdvance":8,"readValueFromPointer":(function(pointer){var heap;if(size===1){heap=HEAP8}else if(size===2){heap=HEAP16}else if(size===4){heap=HEAP32}else{throw new TypeError("Unknown boolean type size: "+name)}return this["fromWireType"](heap[pointer>>shift])}),destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}});clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function runDestructor(handle){var $$=handle.$$;if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}this.$$.count.value-=1;var toDelete=0===this.$$.count.value;if(toDelete){runDestructor(this)}if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}var delayFunction=undefined;var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}var registeredPointers={};function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=(function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError("Function '"+humanName+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+proto[methodName].overloadTable+")!")}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)});proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError("Cannot register public name '"+name+"' twice")}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError("Cannot register multiple overloads of a function with the same number of arguments ("+numArguments+")!")}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError("Expected null or instance of "+desiredClass.name+", got an instance of "+ptrClass.name)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError("Cannot convert argument of type "+(handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name)+" to parameter type "+this.name)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,__emval_register((function(){clonedHandle["delete"]()})));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError('Cannot pass "'+_embind_repr(handle)+'" as a '+this.name)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}if(handle.$$.ptrType.isConst){throwBindingError("Cannot convert argument of type "+handle.$$.ptrType.name+" to parameter type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAPU32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return Object.create(prototype,{$$:{value:record}})}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&&registeredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(dynCall){var args=[];for(var i=1;i<signature.length;++i){args.push("a"+i)}var name="dynCall_"+signature+"_"+rawFunction;var body="return function "+name+"("+args.join(", ")+") {\n";body+="    return dynCall(rawFunction"+(args.length?", ":"")+args.join(", ")+");\n";body+="};\n";return(new Function("dynCall","rawFunction",body))(dynCall,rawFunction)}var fp;if(Module["FUNCTION_TABLE_"+signature]!==undefined){fp=Module["FUNCTION_TABLE_"+signature][rawFunction]}else if(typeof FUNCTION_TABLE!=="undefined"){fp=FUNCTION_TABLE[rawFunction]}else{var dc=Module["asm"]["dynCall_"+signature];if(dc===undefined){dc=Module["asm"]["dynCall_"+signature.replace(/f/g,"d")];if(dc===undefined){throwBindingError("No dynCall invoker for signature: "+signature)}}fp=makeDynCaller(dc)}if(typeof fp!=="function"){throwBindingError("unknown function pointer with signature "+signature+": "+rawFunction)}return fp}var UnboundTypeError=undefined;function getTypeName(type){var ptr=___getTypeName(type);var rv=readLatin1String(ptr);_free(ptr);return rv}function throwUnboundTypeError(message,types){var unboundTypes=[];var seen={};function visit(type){if(seen[type]){return}if(registeredTypes[type]){return}if(typeDependencies[type]){typeDependencies[type].forEach(visit);return}unboundTypes.push(type);seen[type]=true}types.forEach(visit);throw new UnboundTypeError(message+": "+unboundTypes.map(getTypeName).join([", "]))}function __embind_register_class(rawType,rawPointerType,rawConstPointerType,baseClassRawType,getActualTypeSignature,getActualType,upcastSignature,upcast,downcastSignature,downcast,name,destructorSignature,rawDestructor){name=readLatin1String(name);getActualType=embind__requireFunction(getActualTypeSignature,getActualType);if(upcast){upcast=embind__requireFunction(upcastSignature,upcast)}if(downcast){downcast=embind__requireFunction(downcastSignature,downcast)}rawDestructor=embind__requireFunction(destructorSignature,rawDestructor);var legalFunctionName=makeLegalFunctionName(name);exposePublicSymbol(legalFunctionName,(function(){throwUnboundTypeError("Cannot construct "+name+" due to unbound types",[baseClassRawType])}));whenDependentTypesAreResolved([rawType,rawPointerType,rawConstPointerType],baseClassRawType?[baseClassRawType]:[],(function(base){base=base[0];var baseClass;var basePrototype;if(baseClassRawType){baseClass=base.registeredClass;basePrototype=baseClass.instancePrototype}else{basePrototype=ClassHandle.prototype}var constructor=createNamedFunction(legalFunctionName,(function(){if(Object.getPrototypeOf(this)!==instancePrototype){throw new BindingError("Use 'new' to construct "+name)}if(undefined===registeredClass.constructor_body){throw new BindingError(name+" has no accessible constructor")}var body=registeredClass.constructor_body[arguments.length];if(undefined===body){throw new BindingError("Tried to invoke ctor of "+name+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(registeredClass.constructor_body).toString()+") parameters instead!")}return body.apply(this,arguments)}));var instancePrototype=Object.create(basePrototype,{constructor:{value:constructor}});constructor.prototype=instancePrototype;var registeredClass=new RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast);var referenceConverter=new RegisteredPointer(name,registeredClass,true,false,false);var pointerConverter=new RegisteredPointer(name+"*",registeredClass,false,false,false);var constPointerConverter=new RegisteredPointer(name+" const*",registeredClass,false,true,false);registeredPointers[rawType]={pointerType:pointerConverter,constPointerType:constPointerConverter};replacePublicSymbol(legalFunctionName,constructor);return[referenceConverter,pointerConverter,constPointerConverter]}))}function heap32VectorToArray(count,firstElement){var array=[];for(var i=0;i<count;i++){array.push(HEAP32[(firstElement>>2)+i])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError("Cannot register multiple constructors with identical number of parameters ("+(argCount-1)+") for class '"+classType.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!")}classType.registeredClass.constructor_body[argCount-1]=function unboundTypeHandler(){throwUnboundTypeError("Cannot construct "+classType.name+" due to unbound types",rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){classType.registeredClass.constructor_body[argCount-1]=function constructor_body(){if(arguments.length!==argCount-1){throwBindingError(humanName+" called with "+arguments.length+" arguments, expected "+(argCount-1))}var destructors=[];var args=new Array(argCount);args[0]=rawConstructor;for(var i=1;i<argCount;++i){args[i]=argTypes[i]["toWireType"](destructors,arguments[i-1])}var ptr=invoker.apply(null,args);runDestructors(destructors);return argTypes[0]["fromWireType"](ptr)};return[]}));return[]}))}function new_(constructor,argumentList){if(!(constructor instanceof Function)){throw new TypeError("new_ called with constructor type "+typeof constructor+" which is not a function")}var dummy=createNamedFunction(constructor.name||"unknownFunctionName",(function(){}));dummy.prototype=constructor.prototype;var obj=new dummy;var r=constructor.apply(obj,argumentList);return r instanceof Object?r:obj}function craftInvokerFunction(humanName,argTypes,classType,cppInvokerFunc,cppTargetFunc){var argCount=argTypes.length;if(argCount<2){throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!")}var isClassMethodFunc=argTypes[1]!==null&&classType!==null;var needsDestructorStack=false;for(var i=1;i<argTypes.length;++i){if(argTypes[i]!==null&&argTypes[i].destructorFunction===undefined){needsDestructorStack=true;break}}var returns=argTypes[0].name!=="void";var argsList="";var argsListWired="";for(var i=0;i<argCount-2;++i){argsList+=(i!==0?", ":"")+"arg"+i;argsListWired+=(i!==0?", ":"")+"arg"+i+"Wired"}var invokerFnBody="return function "+makeLegalFunctionName(humanName)+"("+argsList+") {\n"+"if (arguments.length !== "+(argCount-2)+") {\n"+"throwBindingError('function "+humanName+" called with ' + arguments.length + ' arguments, expected "+(argCount-2)+" args!');\n"+"}\n";if(needsDestructorStack){invokerFnBody+="var destructors = [];\n"}var dtorStack=needsDestructorStack?"destructors":"null";var args1=["throwBindingError","invoker","fn","runDestructors","retType","classParam"];var args2=[throwBindingError,cppInvokerFunc,cppTargetFunc,runDestructors,argTypes[0],argTypes[1]];if(isClassMethodFunc){invokerFnBody+="var thisWired = classParam.toWireType("+dtorStack+", this);\n"}for(var i=0;i<argCount-2;++i){invokerFnBody+="var arg"+i+"Wired = argType"+i+".toWireType("+dtorStack+", arg"+i+"); // "+argTypes[i+2].name+"\n";args1.push("argType"+i);args2.push(argTypes[i+2])}if(isClassMethodFunc){argsListWired="thisWired"+(argsListWired.length>0?", ":"")+argsListWired}invokerFnBody+=(returns?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i<argTypes.length;++i){var paramName=i===1?"thisWired":"arg"+(i-2)+"Wired";if(argTypes[i].destructorFunction!==null){invokerFnBody+=paramName+"_dtor("+paramName+"); // "+argTypes[i].name+"\n";args1.push(paramName+"_dtor");args2.push(argTypes[i].destructorFunction)}}}if(returns){invokerFnBody+="var ret = retType.fromWireType(rv);\n"+"return ret;\n"}else{}invokerFnBody+="}\n";args1.push(invokerFnBody);var invokerFunction=new_(Function,args1).apply(null,args2);return invokerFunction}function __embind_register_class_function(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,context,isPureVirtual){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);methodName=readLatin1String(methodName);rawInvoker=embind__requireFunction(invokerSignature,rawInvoker);whenDependentTypesAreResolved([],[rawClassType],(function(classType){classType=classType[0];var humanName=classType.name+"."+methodName;if(isPureVirtual){classType.registeredClass.pureVirtualFunctions.push(methodName)}function unboundTypesHandler(){throwUnboundTypeError("Cannot call "+humanName+" due to unbound types",rawArgTypes)}var proto=classType.registeredClass.instancePrototype;var method=proto[methodName];if(undefined===method||undefined===method.overloadTable&&method.className!==classType.name&&method.argCount===argCount-2){unboundTypesHandler.argCount=argCount-2;unboundTypesHandler.className=classType.name;proto[methodName]=unboundTypesHandler}else{ensureOverloadTable(proto,methodName,humanName);proto[methodName].overloadTable[argCount-2]=unboundTypesHandler}whenDependentTypesAreResolved([],rawArgTypes,(function(argTypes){var memberFunction=craftInvokerFunction(humanName,argTypes,classType,rawInvoker,context);if(undefined===proto[methodName].overloadTable){memberFunction.argCount=argCount-2;proto[methodName]=memberFunction}else{proto[methodName].overloadTable[argCount-2]=memberFunction}return[]}));return[]}))}var emval_free_list=[];var emval_handle_array=[{},{value:undefined},{value:null},{value:true},{value:false}];function __emval_decref(handle){if(handle>4&&0===--emval_handle_array[handle].refcount){emval_handle_array[handle]=undefined;emval_free_list.push(handle)}}function count_emval_handles(){var count=0;for(var i=5;i<emval_handle_array.length;++i){if(emval_handle_array[i]!==undefined){++count}}return count}function get_first_emval(){for(var i=5;i<emval_handle_array.length;++i){if(emval_handle_array[i]!==undefined){return emval_handle_array[i]}}return null}function init_emval(){Module["count_emval_handles"]=count_emval_handles;Module["get_first_emval"]=get_first_emval}function __emval_register(value){switch(value){case undefined:{return 1};case null:{return 2};case true:{return 3};case false:{return 4};default:{var handle=emval_free_list.length?emval_free_list.pop():emval_handle_array.length;emval_handle_array[handle]={refcount:1,value:value};return handle}}}function __embind_register_emval(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(handle){var rv=emval_handle_array[handle].value;__emval_decref(handle);return rv}),"toWireType":(function(destructors,value){return __emval_register(value)}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:null})}function _embind_repr(v){if(v===null){return"null"}var t=typeof v;if(t==="object"||t==="array"||t==="function"){return v.toString()}else{return""+v}}function floatReadValueFromPointer(name,shift){switch(shift){case 2:return(function(pointer){return this["fromWireType"](HEAPF32[pointer>>2])});case 3:return(function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])});default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":(function(value){return value}),"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}return value}),"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=(function(value){return value});if(minRange===0){var bitshift=32-8*size;fromWireType=(function(value){return value<<bitshift>>>bitshift})}var isUnsignedType=name.indexOf("unsigned")!=-1;registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":(function(destructors,value){if(typeof value!=="number"&&typeof value!=="boolean"){throw new TypeError('Cannot convert "'+_embind_repr(value)+'" to '+this.name)}if(value<minRange||value>maxRange){throw new TypeError('Passing a number "'+_embind_repr(value)+'" from JS side to C/C++ side to an argument of type "'+name+'", which is outside the valid range ['+minRange+", "+maxRange+"]!")}return isUnsignedType?value>>>0:value|0}),"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap["buffer"],data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function __embind_register_std_string(rawType,name){name=readLatin1String(name);var stdStringIsUTF8=name==="std::string";registerType(rawType,{name:name,"fromWireType":(function(value){var length=HEAPU32[value>>2];var str;if(stdStringIsUTF8){var endChar=HEAPU8[value+4+length];var endCharSwap=0;if(endChar!=0){endCharSwap=endChar;HEAPU8[value+4+length]=0}var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i;if(HEAPU8[currentBytePtr]==0){var stringSegment=UTF8ToString(decodeStartPtr);if(str===undefined)str=stringSegment;else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+1}}if(endCharSwap!=0)HEAPU8[value+4+length]=endCharSwap}else{var a=new Array(length);for(var i=0;i<length;++i){a[i]=String.fromCharCode(HEAPU8[value+4+i])}str=a.join("")}_free(value);return str}),"toWireType":(function(destructors,value){if(value instanceof ArrayBuffer){value=new Uint8Array(value)}var getLength;var valueIsOfTypeString=typeof value==="string";if(!(valueIsOfTypeString||value instanceof Uint8Array||value instanceof Uint8ClampedArray||value instanceof Int8Array)){throwBindingError("Cannot pass non-string to std::string")}if(stdStringIsUTF8&&valueIsOfTypeString){getLength=(function(){return lengthBytesUTF8(value)})}else{getLength=(function(){return value.length})}var length=getLength();var ptr=_malloc(4+length+1);HEAPU32[ptr>>2]=length;if(stdStringIsUTF8&&valueIsOfTypeString){stringToUTF8(value,ptr+4,length+1)}else{if(valueIsOfTypeString){for(var i=0;i<length;++i){var charCode=value.charCodeAt(i);if(charCode>255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+4+i]=charCode}}else{for(var i=0;i<length;++i){HEAPU8[ptr+4+i]=value[i]}}}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var getHeap,shift;if(charSize===2){getHeap=(function(){return HEAPU16});shift=1}else if(charSize===4){getHeap=(function(){return HEAPU32});shift=2}registerType(rawType,{name:name,"fromWireType":(function(value){var HEAP=getHeap();var length=HEAPU32[value>>2];var a=new Array(length);var start=value+4>>shift;for(var i=0;i<length;++i){a[i]=String.fromCharCode(HEAP[start+i])}_free(value);return a.join("")}),"toWireType":(function(destructors,value){var HEAP=getHeap();var length=value.length;var ptr=_malloc(4+length*charSize);HEAPU32[ptr>>2]=length;var start=ptr+4>>shift;for(var i=0;i<length;++i){HEAP[start+i]=value.charCodeAt(i)}if(destructors!==null){destructors.push(_free,ptr)}return ptr}),"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:(function(ptr){_free(ptr)})})}function __embind_register_void(rawType,name){name=readLatin1String(name);registerType(rawType,{isVoid:true,name:name,"argPackAdvance":0,"fromWireType":(function(){return undefined}),"toWireType":(function(destructors,o){return undefined})})}function _abort(){Module["abort"]()}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=allocateUTF8(ENV[name]);return _getenv.ret}function _llvm_stackrestore(p){var self=_llvm_stacksave;var ret=self.LLVM_SAVEDSTACKS[p];self.LLVM_SAVEDSTACKS.splice(p,1);stackRestore(ret)}function _llvm_stacksave(){var self=_llvm_stacksave;if(!self.LLVM_SAVEDSTACKS){self.LLVM_SAVEDSTACKS=[]}self.LLVM_SAVEDSTACKS.push(stackSave());return self.LLVM_SAVEDSTACKS.length-1}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}function _pthread_cond_wait(){return 0}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}var PTHREAD_SPECIFIC_NEXT_KEY=1;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}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 _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}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)}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));__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()}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_RegisteredPointer();init_embind();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();DYNAMICTOP_PTR=staticAlloc(4);STACK_BASE=STACKTOP=alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function invoke_diii(index,a1,a2,a3){var sp=stackSave();try{return Module["dynCall_diii"](index,a1,a2,a3)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_i(index){var sp=stackSave();try{return Module["dynCall_i"](index)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_ii(index,a1){var sp=stackSave();try{return Module["dynCall_ii"](index,a1)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iii(index,a1,a2){var sp=stackSave();try{return Module["dynCall_iii"](index,a1,a2)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiii(index,a1,a2,a3){var sp=stackSave();try{return Module["dynCall_iiii"](index,a1,a2,a3)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return Module["dynCall_iiiii"](index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiid(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return Module["dynCall_iiiiid"](index,a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return Module["dynCall_iiiiii"](index,a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiiid(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{return Module["dynCall_iiiiiid"](index,a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{return Module["dynCall_iiiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{return Module["dynCall_iiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8){var sp=stackSave();try{return Module["dynCall_iiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){var sp=stackSave();try{return Module["dynCall_iiiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){var sp=stackSave();try{return Module["dynCall_iiiiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_iiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12){var sp=stackSave();try{return Module["dynCall_iiiiiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_v(index){var sp=stackSave();try{Module["dynCall_v"](index)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vi(index,a1){var sp=stackSave();try{Module["dynCall_vi"](index,a1)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vii(index,a1,a2){var sp=stackSave();try{Module["dynCall_vii"](index,a1,a2)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viii(index,a1,a2,a3){var sp=stackSave();try{Module["dynCall_viii"](index,a1,a2,a3)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiii(index,a1,a2,a3,a4){var sp=stackSave();try{Module["dynCall_viiii"](index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{Module["dynCall_viiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{Module["dynCall_viiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){var sp=stackSave();try{Module["dynCall_viiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}catch(e){stackRestore(sp);if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiiiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15){var sp=stackSave();try{Module["dynCall_viiiiiiiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15)}catch(e){stackRestore(sp);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,"byteLength":byteLength};Module.asmLibraryArg={"abort":abort,"assert":assert,"enlargeMemory":enlargeMemory,"getTotalMemory":getTotalMemory,"abortOnCannotGrowMemory":abortOnCannotGrowMemory,"invoke_diii":invoke_diii,"invoke_i":invoke_i,"invoke_ii":invoke_ii,"invoke_iii":invoke_iii,"invoke_iiii":invoke_iiii,"invoke_iiiii":invoke_iiiii,"invoke_iiiiid":invoke_iiiiid,"invoke_iiiiii":invoke_iiiiii,"invoke_iiiiiid":invoke_iiiiiid,"invoke_iiiiiii":invoke_iiiiiii,"invoke_iiiiiiii":invoke_iiiiiiii,"invoke_iiiiiiiii":invoke_iiiiiiiii,"invoke_iiiiiiiiiii":invoke_iiiiiiiiiii,"invoke_iiiiiiiiiiii":invoke_iiiiiiiiiiii,"invoke_iiiiiiiiiiiii":invoke_iiiiiiiiiiiii,"invoke_v":invoke_v,"invoke_vi":invoke_vi,"invoke_vii":invoke_vii,"invoke_viii":invoke_viii,"invoke_viiii":invoke_viiii,"invoke_viiiii":invoke_viiiii,"invoke_viiiiii":invoke_viiiiii,"invoke_viiiiiii":invoke_viiiiiii,"invoke_viiiiiiiiii":invoke_viiiiiiiiii,"invoke_viiiiiiiiiiiiiii":invoke_viiiiiiiiiiiiiii,"ClassHandle":ClassHandle,"ClassHandle_clone":ClassHandle_clone,"ClassHandle_delete":ClassHandle_delete,"ClassHandle_deleteLater":ClassHandle_deleteLater,"ClassHandle_isAliasOf":ClassHandle_isAliasOf,"ClassHandle_isDeleted":ClassHandle_isDeleted,"RegisteredClass":RegisteredClass,"RegisteredPointer":RegisteredPointer,"RegisteredPointer_deleteObject":RegisteredPointer_deleteObject,"RegisteredPointer_destructor":RegisteredPointer_destructor,"RegisteredPointer_fromWireType":RegisteredPointer_fromWireType,"RegisteredPointer_getPointee":RegisteredPointer_getPointee,"___cxa_allocate_exception":___cxa_allocate_exception,"___cxa_begin_catch":___cxa_begin_catch,"___cxa_end_catch":___cxa_end_catch,"___cxa_find_matching_catch":___cxa_find_matching_catch,"___cxa_find_matching_catch_2":___cxa_find_matching_catch_2,"___cxa_find_matching_catch_3":___cxa_find_matching_catch_3,"___cxa_free_exception":___cxa_free_exception,"___cxa_rethrow":___cxa_rethrow,"___cxa_throw":___cxa_throw,"___cxa_uncaught_exception":___cxa_uncaught_exception,"___gxx_personality_v0":___gxx_personality_v0,"___lock":___lock,"___map_file":___map_file,"___resumeException":___resumeException,"___setErrNo":___setErrNo,"___syscall140":___syscall140,"___syscall145":___syscall145,"___syscall146":___syscall146,"___syscall221":___syscall221,"___syscall5":___syscall5,"___syscall54":___syscall54,"___syscall6":___syscall6,"___syscall91":___syscall91,"___unlock":___unlock,"__addDays":__addDays,"__arraySum":__arraySum,"__embind_register_bool":__embind_register_bool,"__embind_register_class":__embind_register_class,"__embind_register_class_constructor":__embind_register_class_constructor,"__embind_register_class_function":__embind_register_class_function,"__embind_register_emval":__embind_register_emval,"__embind_register_float":__embind_register_float,"__embind_register_integer":__embind_register_integer,"__embind_register_memory_view":__embind_register_memory_view,"__embind_register_std_string":__embind_register_std_string,"__embind_register_std_wstring":__embind_register_std_wstring,"__embind_register_void":__embind_register_void,"__emval_decref":__emval_decref,"__emval_register":__emval_register,"__isLeapYear":__isLeapYear,"_abort":_abort,"_embind_repr":_embind_repr,"_emscripten_memcpy_big":_emscripten_memcpy_big,"_getenv":_getenv,"_llvm_stackrestore":_llvm_stackrestore,"_llvm_stacksave":_llvm_stacksave,"_pthread_cond_wait":_pthread_cond_wait,"_pthread_getspecific":_pthread_getspecific,"_pthread_key_create":_pthread_key_create,"_pthread_once":_pthread_once,"_pthread_setspecific":_pthread_setspecific,"_strftime":_strftime,"_strftime_l":_strftime_l,"constNoSmartPtrRawPointerToWireType":constNoSmartPtrRawPointerToWireType,"count_emval_handles":count_emval_handles,"craftInvokerFunction":craftInvokerFunction,"createNamedFunction":createNamedFunction,"downcastPointer":downcastPointer,"embind__requireFunction":embind__requireFunction,"embind_init_charCodes":embind_init_charCodes,"ensureOverloadTable":ensureOverloadTable,"exposePublicSymbol":exposePublicSymbol,"extendError":extendError,"floatReadValueFromPointer":floatReadValueFromPointer,"flushPendingDeletes":flushPendingDeletes,"genericPointerToWireType":genericPointerToWireType,"getBasestPointer":getBasestPointer,"getInheritedInstance":getInheritedInstance,"getInheritedInstanceCount":getInheritedInstanceCount,"getLiveInheritedInstances":getLiveInheritedInstances,"getShiftFromSize":getShiftFromSize,"getTypeName":getTypeName,"get_first_emval":get_first_emval,"heap32VectorToArray":heap32VectorToArray,"init_ClassHandle":init_ClassHandle,"init_RegisteredPointer":init_RegisteredPointer,"init_embind":init_embind,"init_emval":init_emval,"integerReadValueFromPointer":integerReadValueFromPointer,"makeClassHandle":makeClassHandle,"makeLegalFunctionName":makeLegalFunctionName,"new_":new_,"nonConstNoSmartPtrRawPointerToWireType":nonConstNoSmartPtrRawPointerToWireType,"readLatin1String":readLatin1String,"registerType":registerType,"replacePublicSymbol":replacePublicSymbol,"runDestructor":runDestructor,"runDestructors":runDestructors,"setDelayFunction":setDelayFunction,"shallowCopyInternalPointer":shallowCopyInternalPointer,"simpleReadValueFromPointer":simpleReadValueFromPointer,"throwBindingError":throwBindingError,"throwInstanceAlreadyDeleted":throwInstanceAlreadyDeleted,"throwInternalError":throwInternalError,"throwUnboundTypeError":throwUnboundTypeError,"upcastPointer":upcastPointer,"whenDependentTypesAreResolved":whenDependentTypesAreResolved,"DYNAMICTOP_PTR":DYNAMICTOP_PTR,"tempDoublePtr":tempDoublePtr,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX};// EMSCRIPTEN_START_ASM
  var asm=(/** @suppress {uselessCode} */ function(global,env,buffer) {
  "almost asm";var a=global.Int8Array;var b=new a(buffer);var c=global.Int16Array;var d=new c(buffer);var e=global.Int32Array;var f=new e(buffer);var g=global.Uint8Array;var h=new g(buffer);var i=global.Uint16Array;var j=new i(buffer);var k=global.Uint32Array;var l=new k(buffer);var m=global.Float32Array;var n=new m(buffer);var o=global.Float64Array;var p=new o(buffer);var q=global.byteLength;var r=env.DYNAMICTOP_PTR|0;var s=env.tempDoublePtr|0;var t=env.STACKTOP|0;var u=env.STACK_MAX|0;var v=0;var w=0;var x=0;var y=0;var z=global.NaN,A=global.Infinity;var B=0,C=0,D=0,E=0,F=0.0;var G=0;var H=global.Math.floor;var I=global.Math.abs;var J=global.Math.sqrt;var K=global.Math.pow;var L=global.Math.cos;var M=global.Math.sin;var N=global.Math.tan;var O=global.Math.acos;var P=global.Math.asin;var Q=global.Math.atan;var R=global.Math.atan2;var S=global.Math.exp;var T=global.Math.log;var U=global.Math.ceil;var V=global.Math.imul;var W=global.Math.min;var X=global.Math.max;var Y=global.Math.clz32;var Z=env.abort;var _=env.assert;var $=env.enlargeMemory;var aa=env.getTotalMemory;var ba=env.abortOnCannotGrowMemory;var ca=env.invoke_diii;var da=env.invoke_i;var ea=env.invoke_ii;var fa=env.invoke_iii;var ga=env.invoke_iiii;var ha=env.invoke_iiiii;var ia=env.invoke_iiiiid;var ja=env.invoke_iiiiii;var ka=env.invoke_iiiiiid;var la=env.invoke_iiiiiii;var ma=env.invoke_iiiiiiii;var na=env.invoke_iiiiiiiii;var oa=env.invoke_iiiiiiiiiii;var pa=env.invoke_iiiiiiiiiiii;var qa=env.invoke_iiiiiiiiiiiii;var ra=env.invoke_v;var sa=env.invoke_vi;var ta=env.invoke_vii;var ua=env.invoke_viii;var va=env.invoke_viiii;var wa=env.invoke_viiiii;var xa=env.invoke_viiiiii;var ya=env.invoke_viiiiiii;var za=env.invoke_viiiiiiiiii;var Aa=env.invoke_viiiiiiiiiiiiiii;var Ba=env.ClassHandle;var Ca=env.ClassHandle_clone;var Da=env.ClassHandle_delete;var Ea=env.ClassHandle_deleteLater;var Fa=env.ClassHandle_isAliasOf;var Ga=env.ClassHandle_isDeleted;var Ha=env.RegisteredClass;var Ia=env.RegisteredPointer;var Ja=env.RegisteredPointer_deleteObject;var Ka=env.RegisteredPointer_destructor;var La=env.RegisteredPointer_fromWireType;var Ma=env.RegisteredPointer_getPointee;var Na=env.___cxa_allocate_exception;var Oa=env.___cxa_begin_catch;var Pa=env.___cxa_end_catch;var Qa=env.___cxa_find_matching_catch;var Ra=env.___cxa_find_matching_catch_2;var Sa=env.___cxa_find_matching_catch_3;var Ta=env.___cxa_free_exception;var Ua=env.___cxa_rethrow;var Va=env.___cxa_throw;var Wa=env.___cxa_uncaught_exception;var Xa=env.___gxx_personality_v0;var Ya=env.___lock;var Za=env.___map_file;var _a=env.___resumeException;var $a=env.___setErrNo;var ab=env.___syscall140;var bb=env.___syscall145;var cb=env.___syscall146;var db=env.___syscall221;var eb=env.___syscall5;var fb=env.___syscall54;var gb=env.___syscall6;var hb=env.___syscall91;var ib=env.___unlock;var jb=env.__addDays;var kb=env.__arraySum;var lb=env.__embind_register_bool;var mb=env.__embind_register_class;var nb=env.__embind_register_class_constructor;var ob=env.__embind_register_class_function;var pb=env.__embind_register_emval;var qb=env.__embind_register_float;var rb=env.__embind_register_integer;var sb=env.__embind_register_memory_view;var tb=env.__embind_register_std_string;var ub=env.__embind_register_std_wstring;var vb=env.__embind_register_void;var wb=env.__emval_decref;var xb=env.__emval_register;var yb=env.__isLeapYear;var zb=env._abort;var Ab=env._embind_repr;var Bb=env._emscripten_memcpy_big;var Cb=env._getenv;var Db=env._llvm_stackrestore;var Eb=env._llvm_stacksave;var Fb=env._pthread_cond_wait;var Gb=env._pthread_getspecific;var Hb=env._pthread_key_create;var Ib=env._pthread_once;var Jb=env._pthread_setspecific;var Kb=env._strftime;var Lb=env._strftime_l;var Mb=env.constNoSmartPtrRawPointerToWireType;var Nb=env.count_emval_handles;var Ob=env.craftInvokerFunction;var Pb=env.createNamedFunction;var Qb=env.downcastPointer;var Rb=env.embind__requireFunction;var Sb=env.embind_init_charCodes;var Tb=env.ensureOverloadTable;var Ub=env.exposePublicSymbol;var Vb=env.extendError;var Wb=env.floatReadValueFromPointer;var Xb=env.flushPendingDeletes;var Yb=env.genericPointerToWireType;var Zb=env.getBasestPointer;var _b=env.getInheritedInstance;var $b=env.getInheritedInstanceCount;var ac=env.getLiveInheritedInstances;var bc=env.getShiftFromSize;var cc=env.getTypeName;var dc=env.get_first_emval;var ec=env.heap32VectorToArray;var fc=env.init_ClassHandle;var gc=env.init_RegisteredPointer;var hc=env.init_embind;var ic=env.init_emval;var jc=env.integerReadValueFromPointer;var kc=env.makeClassHandle;var lc=env.makeLegalFunctionName;var mc=env.new_;var nc=env.nonConstNoSmartPtrRawPointerToWireType;var oc=env.readLatin1String;var pc=env.registerType;var qc=env.replacePublicSymbol;var rc=env.runDestructor;var sc=env.runDestructors;var tc=env.setDelayFunction;var uc=env.shallowCopyInternalPointer;var vc=env.simpleReadValueFromPointer;var wc=env.throwBindingError;var xc=env.throwInstanceAlreadyDeleted;var yc=env.throwInternalError;var zc=env.throwUnboundTypeError;var Ac=env.upcastPointer;var Bc=env.whenDependentTypesAreResolved;var Cc=0.0;function Dc(newBuffer){if(q(newBuffer)&16777215||q(newBuffer)<=16777215||q(newBuffer)>2147483648)return false;b=new a(newBuffer);d=new c(newBuffer);f=new e(newBuffer);h=new g(newBuffer);j=new i(newBuffer);l=new k(newBuffer);n=new m(newBuffer);p=new o(newBuffer);buffer=newBuffer;return true}
  // EMSCRIPTEN_START_FUNCS
  function xh(a,c,e){a=a|0;c=c|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,o=0,q=0,r=0,s=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,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.0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0;g=t;t=t+288|0;i=g+264|0;j=g;k=g+260|0;l=g+272|0;if((f[a+76>>2]|0)>-1)m=ch(a)|0;else m=0;o=b[c>>0]|0;a:do if(o<<24>>24){q=a+4|0;r=a+100|0;s=a+108|0;u=a+8|0;v=j+10|0;w=j+33|0;x=j+46|0;y=j+94|0;z=i+4|0;A=c;B=0;C=0;D=0;E=o;F=0;b:while(1){c:do if(!(Wg(E&255)|0)){H=(b[A>>0]|0)==37;d:do if(H){I=A+1|0;J=b[I>>0]|0;e:do switch(J<<24>>24){case 37:{break d;break}case 42:{K=0;L=A+2|0;break}default:{if(Og(J&255)|0?(b[A+2>>0]|0)==36:0){K=Ah(e,(h[I>>0]|0)+-48|0)|0;L=A+3|0;break e}M=(f[e>>2]|0)+(4-1)&~(4-1);N=f[M>>2]|0;f[e>>2]=M+4;K=N;L=I}}while(0);if(!(Og(h[L>>0]|0)|0)){O=0;P=L}else{I=0;J=L;while(1){N=(I*10|0)+-48+(h[J>>0]|0)|0;M=J+1|0;if(!(Og(h[M>>0]|0)|0)){O=N;P=M;break}else{I=N;J=M}}}J=b[P>>0]|0;I=P+1|0;if(J<<24>>24==109){Q=(K|0)!=0&1;R=0;S=I;T=P+2|0;U=b[I>>0]|0;V=0}else{Q=0;R=D;S=P;T=I;U=J;V=F}switch(U<<24>>24){case 104:{J=(b[T>>0]|0)==104;W=J?-2:-1;X=J?S+2|0:T;break}case 108:{J=(b[T>>0]|0)==108;W=J?3:1;X=J?S+2|0:T;break}case 106:{W=3;X=T;break}case 116:case 122:{W=1;X=T;break}case 76:{W=2;X=T;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=S;break}default:{Y=R;Z=V;_=143;break b}}J=h[X>>0]|0;I=(J&47|0)==3;M=I?J|32:J;J=I?1:W;I=M&255;switch(I<<24>>24){case 99:{$=(O|0)>1?O:1;aa=B;break}case 91:{$=O;aa=B;break}case 110:{Bh(K,J,B,((B|0)<0)<<31>>31);ba=X;ca=C;da=B;ea=R;fa=V;break c;break}default:{yh(a,0);do{N=f[q>>2]|0;if(N>>>0<(f[r>>2]|0)>>>0){f[q>>2]=N+1;ga=h[N>>0]|0}else ga=zh(a)|0}while((Wg(ga)|0)!=0);if(!(f[r>>2]|0))ha=f[q>>2]|0;else{N=(f[q>>2]|0)+-1|0;f[q>>2]=N;ha=N}$=O;aa=(f[s>>2]|0)+B+ha-(f[u>>2]|0)|0}}yh(a,$);N=f[q>>2]|0;ia=f[r>>2]|0;if(N>>>0<ia>>>0){f[q>>2]=N+1;ja=ia}else{if((zh(a)|0)<0){Y=R;Z=V;_=143;break b}ja=f[r>>2]|0}if(ja|0)f[q>>2]=(f[q>>2]|0)+-1;f:do switch(I<<24>>24){case 91:case 99:case 115:{ia=(M|0)==99;g:do if((M|16|0)==115){ov(j|0,-1,257)|0;b[j>>0]=0;if((M|0)==115){b[w>>0]=0;d[v>>1]=0;d[v+2>>1]=0;b[v+4>>0]=0;ka=X}else ka=X}else{N=X+1|0;la=(b[N>>0]|0)==94;ma=la&1;na=la?X+2|0:N;ov(j|0,ma|0,257)|0;b[j>>0]=0;switch(b[na>>0]|0){case 45:{N=(ma^1)&255;b[x>>0]=N;oa=na+1|0;pa=N;break}case 93:{N=(ma^1)&255;b[y>>0]=N;oa=na+1|0;pa=N;break}default:{oa=na;pa=(ma^1)&255}}ma=oa;while(1){na=b[ma>>0]|0;h:do switch(na<<24>>24){case 0:{Y=R;Z=V;_=143;break b;break}case 93:{ka=ma;break g;break}case 45:{N=ma+1|0;la=b[N>>0]|0;switch(la<<24>>24){case 93:case 0:{qa=ma;ra=45;break h;break}default:{}}sa=b[ma+-1>>0]|0;if((sa&255)<(la&255)){ta=sa&255;do{ta=ta+1|0;b[j+ta>>0]=pa;sa=b[N>>0]|0}while(ta>>>0<(sa&255)>>>0);qa=N;ra=sa}else{qa=N;ra=la}break}default:{qa=ma;ra=na}}while(0);b[j+((ra&255)+1)>>0]=pa;ma=qa+1|0}}while(0);ma=ia?$+1|0:31;na=(J|0)==1;ta=(Q|0)!=0;i:do if(na){if(ta){sa=Ag(ma<<2)|0;if(!sa){Y=0;Z=0;_=143;break b}else ua=sa}else ua=K;f[i>>2]=0;f[z>>2]=0;sa=ma;va=0;wa=ua;j:while(1){xa=(wa|0)==0;ya=va;while(1){k:while(1){za=f[q>>2]|0;if(za>>>0<(f[r>>2]|0)>>>0){f[q>>2]=za+1;Aa=h[za>>0]|0}else Aa=zh(a)|0;if(!(b[j+(Aa+1)>>0]|0))break j;b[l>>0]=Aa;switch(Ch(k,l,1,i)|0){case -1:{Y=0;Z=wa;_=143;break b;break}case -2:break;default:break k}}if(xa)Ba=ya;else{f[wa+(ya<<2)>>2]=f[k>>2];Ba=ya+1|0}if(ta&(Ba|0)==(sa|0))break;else ya=Ba}sa=sa<<1|1;xa=Cg(wa,sa<<2)|0;if(!xa){Y=0;Z=wa;_=143;break b}else{va=Ba;wa=xa}}if(!(Dh(i)|0)){Y=0;Z=wa;_=143;break b}else{Ca=ya;Da=0;Ea=wa;Fa=wa}}else{if(ta){va=Ag(ma)|0;if(!va){Y=0;Z=0;_=143;break b}sa=ma;xa=0;la=va;while(1){va=xa;do{N=f[q>>2]|0;if(N>>>0<(f[r>>2]|0)>>>0){f[q>>2]=N+1;Ga=h[N>>0]|0}else Ga=zh(a)|0;if(!(b[j+(Ga+1)>>0]|0)){Ca=va;Da=la;Ea=0;Fa=0;break i}N=va;va=va+1|0;b[la+N>>0]=Ga}while((va|0)!=(sa|0));sa=sa<<1|1;N=Cg(la,sa)|0;if(!N){Y=la;Z=0;_=143;break b}else{xa=va;la=N}}}if(!K)while(1){la=f[q>>2]|0;if(la>>>0<(f[r>>2]|0)>>>0){f[q>>2]=la+1;Ha=h[la>>0]|0}else Ha=zh(a)|0;if(!(b[j+(Ha+1)>>0]|0)){Ca=0;Da=0;Ea=0;Fa=0;break i}}la=0;while(1){xa=f[q>>2]|0;if(xa>>>0<(f[r>>2]|0)>>>0){f[q>>2]=xa+1;Ia=h[xa>>0]|0}else Ia=zh(a)|0;if(!(b[j+(Ia+1)>>0]|0)){Ca=la;Da=K;Ea=0;Fa=0;break i}b[K+la>>0]=Ia;la=la+1|0}}while(0);if(!(f[r>>2]|0))Ja=f[q>>2]|0;else{ma=(f[q>>2]|0)+-1|0;f[q>>2]=ma;Ja=ma}ma=Ja-(f[u>>2]|0)+(f[s>>2]|0)|0;if(!ma){Ka=Da;La=Q;Ma=C;Na=Fa;break b}if(!((ma|0)==($|0)|ia^1)){Ka=Da;La=Q;Ma=C;Na=Fa;break b}do if(ta)if(na){f[K>>2]=Ea;break}else{f[K>>2]=Da;break}while(0);if(ia){Oa=ka;Pa=Da;Qa=Fa}else{if(Ea|0)f[Ea+(Ca<<2)>>2]=0;if(!Da){Oa=ka;Pa=0;Qa=Fa;break f}b[Da+Ca>>0]=0;Oa=ka;Pa=Da;Qa=Fa}break}case 120:case 88:case 112:{Ra=16;_=131;break}case 111:{Ra=8;_=131;break}case 117:case 100:{Ra=10;_=131;break}case 105:{Ra=0;_=131;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{Sa=+Fh(a,J,0);if((f[s>>2]|0)==((f[u>>2]|0)-(f[q>>2]|0)|0)){Ka=R;La=Q;Ma=C;Na=V;break b}if(!K){Oa=X;Pa=R;Qa=V}else switch(J|0){case 0:{n[K>>2]=Sa;Oa=X;Pa=R;Qa=V;break f;break}case 1:{p[K>>3]=Sa;Oa=X;Pa=R;Qa=V;break f;break}case 2:{p[K>>3]=Sa;Oa=X;Pa=R;Qa=V;break f;break}default:{Oa=X;Pa=R;Qa=V;break f}}break}default:{Oa=X;Pa=R;Qa=V}}while(0);do if((_|0)==131){_=0;I=Eh(a,Ra,0,-1,-1)|0;if((f[s>>2]|0)==((f[u>>2]|0)-(f[q>>2]|0)|0)){Ka=R;La=Q;Ma=C;Na=V;break b}if((K|0)!=0&(M|0)==112){f[K>>2]=I;Oa=X;Pa=R;Qa=V;break}else{Bh(K,J,I,G);Oa=X;Pa=R;Qa=V;break}}while(0);ba=Oa;ca=C+((K|0)!=0&1)|0;da=(f[s>>2]|0)+aa+(f[q>>2]|0)-(f[u>>2]|0)|0;ea=Pa;fa=Qa;break c}while(0);J=A+(H&1)|0;yh(a,0);M=f[q>>2]|0;if(M>>>0<(f[r>>2]|0)>>>0){f[q>>2]=M+1;Ta=h[M>>0]|0}else Ta=zh(a)|0;if((Ta|0)!=(h[J>>0]|0)){_=23;break b}ba=J;ca=C;da=B+1|0;ea=D;fa=F}else{J=A;while(1){M=J+1|0;if(!(Wg(h[M>>0]|0)|0))break;else J=M}yh(a,0);do{H=f[q>>2]|0;if(H>>>0<(f[r>>2]|0)>>>0){f[q>>2]=H+1;Ua=h[H>>0]|0}else Ua=zh(a)|0}while((Wg(Ua)|0)!=0);if(!(f[r>>2]|0))Va=f[q>>2]|0;else{H=(f[q>>2]|0)+-1|0;f[q>>2]=H;Va=H}ba=J;ca=C;da=(f[s>>2]|0)+B+Va-(f[u>>2]|0)|0;ea=D;fa=F}while(0);A=ba+1|0;E=b[A>>0]|0;if(!(E<<24>>24)){Wa=ca;break a}else{B=da;C=ca;D=ea;F=fa}}if((_|0)==23){if(f[r>>2]|0)f[q>>2]=(f[q>>2]|0)+-1;if((C|0)!=0|(Ta|0)>-1){Wa=C;break}else{Xa=0;Ya=D;Za=F;_=144}}else if((_|0)==143)if(!C){Xa=Q;Ya=Y;Za=Z;_=144}else{Ka=Y;La=Q;Ma=C;Na=Z}if((_|0)==144){Ka=Ya;La=Xa;Ma=-1;Na=Za}if(!La)Wa=Ma;else{Bg(Ka);Bg(Na);Wa=Ma}}else Wa=0;while(0);if(m|0)ah(a);t=g;return Wa|0}function yh(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;f[a+104>>2]=b;c=f[a+8>>2]|0;d=f[a+4>>2]|0;e=c-d|0;f[a+108>>2]=e;if((b|0)!=0&(e|0)>(b|0))f[a+100>>2]=d+b;else f[a+100>>2]=c;return}function zh(a){a=a|0;var c=0,d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;c=a+104|0;d=f[c>>2]|0;if((d|0)!=0?(f[a+108>>2]|0)>=(d|0):0)e=4;else{d=Rh(a)|0;if((d|0)>=0){g=f[c>>2]|0;c=f[a+8>>2]|0;if(g){i=f[a+4>>2]|0;j=g-(f[a+108>>2]|0)|0;g=c;if((c-i|0)<(j|0)){k=g;e=9}else{f[a+100>>2]=i+(j+-1);l=g}}else{k=c;e=9}if((e|0)==9){f[a+100>>2]=c;l=k}k=a+4|0;if(!l)m=f[k>>2]|0;else{c=f[k>>2]|0;k=a+108|0;f[k>>2]=l+1-c+(f[k>>2]|0);m=c}c=m+-1|0;if((d|0)==(h[c>>0]|0|0))n=d;else{b[c>>0]=d;n=d}}else e=4}if((e|0)==4){f[a+100>>2]=0;n=-1}return n|0}function Ah(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=t;t=t+16|0;d=c;f[d>>2]=f[a>>2];a=b;while(1){b=(f[d>>2]|0)+(4-1)&~(4-1);e=f[b>>2]|0;f[d>>2]=b+4;if(a>>>0>1)a=a+-1|0;else break}t=c;return e|0}function Bh(a,c,e,g){a=a|0;c=c|0;e=e|0;g=g|0;var h=0;a:do if(a|0)switch(c|0){case -2:{b[a>>0]=e;break a;break}case -1:{d[a>>1]=e;break a;break}case 0:{f[a>>2]=e;break a;break}case 1:{f[a>>2]=e;break a;break}case 3:{h=a;f[h>>2]=e;f[h+4>>2]=g;break a;break}default:break a}while(0);return}function Ch(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;g=t;t=t+16|0;i=g;j=(e|0)==0?25304:e;e=f[j>>2]|0;a:do if(!c)if(!e)k=0;else l=19;else{m=(a|0)==0?i:a;if(!d)k=-2;else{if(!e){n=b[c>>0]|0;if(n<<24>>24>-1){f[m>>2]=n&255;k=n<<24>>24!=0&1;break}n=(Qh()|0)+188|0;o=b[c>>0]|0;if(!(f[f[n>>2]>>2]|0)){f[m>>2]=o<<24>>24&57343;k=1;break}n=(o&255)+-194|0;if(n>>>0>50){l=19;break}o=f[48+(n<<2)>>2]|0;n=d+-1|0;if(!n)p=o;else{q=c+1|0;r=o;s=n;l=11}}else{q=c;r=e;s=d;l=11}b:do if((l|0)==11){n=h[q>>0]|0;o=n>>>3;if((o+-16|o+(r>>26))>>>0>7){l=19;break a}o=n+-128|r<<6;n=s+-1|0;if((o|0)<0){u=q;v=o;w=n;while(1){u=u+1|0;if(!w){p=v;break b}x=b[u>>0]|0;if((x&-64)<<24>>24!=-128){l=19;break a}y=(x&255)+-128|v<<6;x=w+-1|0;if((y|0)>=0){z=x;A=y;break}else{v=y;w=x}}}else{z=n;A=o}f[j>>2]=0;f[m>>2]=A;k=d-z|0;break a}while(0);f[j>>2]=p;k=-2}}while(0);if((l|0)==19){f[j>>2]=0;j=Jg()|0;f[j>>2]=84;k=-1}t=g;return k|0}function Dh(a){a=a|0;var b=0;if(!a)b=1;else b=(f[a>>2]|0)==0&1;return b|0}function Eh(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|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,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,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;a:do if(c>>>0>36){i=Jg()|0;f[i>>2]=22;j=0;k=0}else{i=a+4|0;l=a+100|0;do{m=f[i>>2]|0;if(m>>>0<(f[l>>2]|0)>>>0){f[i>>2]=m+1;n=h[m>>0]|0}else n=zh(a)|0}while((Wg(n)|0)!=0);b:do switch(n|0){case 43:case 45:{m=((n|0)==45)<<31>>31;o=f[i>>2]|0;if(o>>>0<(f[l>>2]|0)>>>0){f[i>>2]=o+1;p=m;q=h[o>>0]|0;break b}else{p=m;q=zh(a)|0;break b}break}default:{p=0;q=n}}while(0);m=(c|0)==0;do if((c|16|0)==16&(q|0)==48){o=f[i>>2]|0;if(o>>>0<(f[l>>2]|0)>>>0){f[i>>2]=o+1;r=h[o>>0]|0}else r=zh(a)|0;if((r|32|0)!=120)if(m){s=r;t=8;u=47;break}else{v=r;w=c;u=32;break}o=f[i>>2]|0;if(o>>>0<(f[l>>2]|0)>>>0){f[i>>2]=o+1;x=h[o>>0]|0}else x=zh(a)|0;if((h[4129+x>>0]|0)>15){o=(f[l>>2]|0)==0;if(!o)f[i>>2]=(f[i>>2]|0)+-1;if(!d){yh(a,0);j=0;k=0;break a}if(o){j=0;k=0;break a}f[i>>2]=(f[i>>2]|0)+-1;j=0;k=0;break a}else{s=x;t=16;u=47}}else{o=m?10:c;if(o>>>0>(h[4129+q>>0]|0)>>>0){v=q;w=o;u=32}else{if(f[l>>2]|0)f[i>>2]=(f[i>>2]|0)+-1;yh(a,0);o=Jg()|0;f[o>>2]=22;j=0;k=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=f[i>>2]|0;if(m>>>0<(f[l>>2]|0)>>>0){f[i>>2]=m+1;z=h[m>>0]|0}else z=zh(a)|0;y=z+-48|0}while(y>>>0<10&o>>>0<429496729);if(y>>>0<10){m=z;A=o;B=0;C=y;while(1){D=dv(A|0,B|0,10,0)|0;E=G;F=((C|0)<0)<<31>>31;H=~F;if(E>>>0>H>>>0|(E|0)==(H|0)&D>>>0>~C>>>0){I=10;J=m;K=A;L=B;u=76;break c}A=ev(D|0,E|0,C|0,F|0)|0;B=G;F=f[i>>2]|0;if(F>>>0<(f[l>>2]|0)>>>0){f[i>>2]=F+1;M=h[F>>0]|0}else M=zh(a)|0;C=M+-48|0;if(!(C>>>0<10&(B>>>0<429496729|(B|0)==429496729&A>>>0<2576980378)))break;else m=M}if(C>>>0>9){N=p;O=B;P=A}else{I=10;J=M;K=A;L=B;u=76}}else{N=p;O=0;P=o}}else{N=p;O=0;P=0}}else{s=v;t=w;u=47}while(0);d:do if((u|0)==47){if(!(t+-1&t)){m=b[17633+((t*23|0)>>>5&7)>>0]|0;y=b[4129+s>>0]|0;F=y&255;if(t>>>0>F>>>0){E=0;D=F;do{E=D|E<<m;H=f[i>>2]|0;if(H>>>0<(f[l>>2]|0)>>>0){f[i>>2]=H+1;Q=h[H>>0]|0}else Q=zh(a)|0;R=b[4129+Q>>0]|0;D=R&255}while(E>>>0<134217728&t>>>0>D>>>0);S=Q;T=D;U=0;W=E;X=R}else{S=s;T=F;U=0;W=0;X=y}o=jv(-1,-1,m|0)|0;B=G;if(t>>>0<=T>>>0|(B>>>0<U>>>0|(B|0)==(U|0)&o>>>0<W>>>0)){I=t;J=S;K=W;L=U;u=76;break}A=W;C=U;H=X;while(1){Y=kv(A|0,C|0,m|0)|0;Z=G;_=Y|H&255;Y=f[i>>2]|0;if(Y>>>0<(f[l>>2]|0)>>>0){f[i>>2]=Y+1;$=h[Y>>0]|0}else $=zh(a)|0;H=b[4129+$>>0]|0;if(t>>>0<=(H&255)>>>0|(Z>>>0>B>>>0|(Z|0)==(B|0)&_>>>0>o>>>0)){I=t;J=$;K=_;L=Z;u=76;break d}else{A=_;C=Z}}}C=b[4129+s>>0]|0;A=C&255;if(t>>>0>A>>>0){o=0;B=A;do{o=B+(V(o,t)|0)|0;H=f[i>>2]|0;if(H>>>0<(f[l>>2]|0)>>>0){f[i>>2]=H+1;aa=h[H>>0]|0}else aa=zh(a)|0;ba=b[4129+aa>>0]|0;B=ba&255}while(o>>>0<119304647&t>>>0>B>>>0);ca=aa;da=B;ea=ba;fa=o;ga=0}else{ca=s;da=A;ea=C;fa=0;ga=0}if(t>>>0>da>>>0){H=iv(-1,-1,t|0,0)|0;m=G;y=ca;F=ga;E=fa;D=ea;while(1){if(F>>>0>m>>>0|(F|0)==(m|0)&E>>>0>H>>>0){I=t;J=y;K=E;L=F;u=76;break d}Z=dv(E|0,F|0,t|0,0)|0;_=G;Y=D&255;if(_>>>0>4294967295|(_|0)==-1&Z>>>0>~Y>>>0){I=t;J=y;K=E;L=F;u=76;break d}ha=ev(Z|0,_|0,Y|0,0)|0;Y=G;_=f[i>>2]|0;if(_>>>0<(f[l>>2]|0)>>>0){f[i>>2]=_+1;ia=h[_>>0]|0}else ia=zh(a)|0;D=b[4129+ia>>0]|0;if(t>>>0<=(D&255)>>>0){I=t;J=ia;K=ha;L=Y;u=76;break}else{y=ia;F=Y;E=ha}}}else{I=t;J=ca;K=fa;L=ga;u=76}}while(0);if((u|0)==76)if(I>>>0>(h[4129+J>>0]|0)>>>0){do{E=f[i>>2]|0;if(E>>>0<(f[l>>2]|0)>>>0){f[i>>2]=E+1;ja=h[E>>0]|0}else ja=zh(a)|0}while(I>>>0>(h[4129+ja>>0]|0)>>>0);E=Jg()|0;f[E>>2]=34;N=(e&1|0)==0&0==0?p:0;O=g;P=e}else{N=p;O=L;P=K}if(f[l>>2]|0)f[i>>2]=(f[i>>2]|0)+-1;if(!(O>>>0<g>>>0|(O|0)==(g|0)&P>>>0<e>>>0)){if(!((e&1|0)!=0|0!=0|(N|0)!=0)){E=Jg()|0;f[E>>2]=34;E=ev(e|0,g|0,-1,-1)|0;j=G;k=E;break}if(O>>>0>g>>>0|(O|0)==(g|0)&P>>>0>e>>>0){E=Jg()|0;f[E>>2]=34;j=g;k=e;break}}E=((N|0)<0)<<31>>31;F=fv(P^N|0,O^E|0,N|0,E|0)|0;j=G;k=F}while(0);G=j;return k|0}function Fh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0.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,B=0,C=0,D=0;switch(c|0){case 0:{e=-149;g=24;i=4;break}case 1:{e=-1074;g=53;i=4;break}case 2:{e=-1074;g=53;i=4;break}default:j=0.0}a:do if((i|0)==4){c=a+4|0;k=a+100|0;do{l=f[c>>2]|0;if(l>>>0<(f[k>>2]|0)>>>0){f[c>>2]=l+1;m=h[l>>0]|0}else m=zh(a)|0}while((Wg(m)|0)!=0);b:do switch(m|0){case 43:case 45:{l=1-(((m|0)==45&1)<<1)|0;n=f[c>>2]|0;if(n>>>0<(f[k>>2]|0)>>>0){f[c>>2]=n+1;o=h[n>>0]|0;p=l;break b}else{o=zh(a)|0;p=l;break b}break}default:{o=m;p=1}}while(0);l=0;n=o;while(1){if((n|32|0)!=(b[17624+l>>0]|0)){q=n;r=l;break}do if(l>>>0<7){s=f[c>>2]|0;if(s>>>0<(f[k>>2]|0)>>>0){f[c>>2]=s+1;t=h[s>>0]|0;break}else{t=zh(a)|0;break}}else t=n;while(0);l=l+1|0;if(l>>>0>=8){q=t;r=8;break}else n=t}c:do switch(r&2147483647|0){case 8:break;case 3:{i=23;break}default:{n=(d|0)!=0;if(n&r>>>0>3)if((r|0)==8)break c;else{i=23;break c}d:do if(!r){l=0;s=q;while(1){if((s|32|0)!=(b[17686+l>>0]|0)){u=l;v=s;break d}do if(l>>>0<2){w=f[c>>2]|0;if(w>>>0<(f[k>>2]|0)>>>0){f[c>>2]=w+1;x=h[w>>0]|0;break}else{x=zh(a)|0;break}}else x=s;while(0);l=l+1|0;if(l>>>0>=3){u=3;v=x;break}else s=x}}else{u=r;v=q}while(0);switch(u|0){case 3:{s=f[c>>2]|0;if(s>>>0<(f[k>>2]|0)>>>0){f[c>>2]=s+1;y=h[s>>0]|0}else y=zh(a)|0;if((y|0)!=40){if(!(f[k>>2]|0)){j=z;break a}f[c>>2]=(f[c>>2]|0)+-1;j=z;break a}s=1;while(1){l=f[c>>2]|0;if(l>>>0<(f[k>>2]|0)>>>0){f[c>>2]=l+1;B=h[l>>0]|0}else B=zh(a)|0;if(!((B+-48|0)>>>0<10|(B+-65|0)>>>0<26)?!((B|0)==95|(B+-97|0)>>>0<26):0)break;s=s+1|0}if((B|0)==41){j=z;break a}l=(f[k>>2]|0)==0;if(!l)f[c>>2]=(f[c>>2]|0)+-1;if(!n){w=Jg()|0;f[w>>2]=22;yh(a,0);j=0.0;break a}if(!s){j=z;break a}w=s;while(1){w=w+-1|0;if(!l)f[c>>2]=(f[c>>2]|0)+-1;if(!w){j=z;break a}}break}case 0:{if((v|0)==48){w=f[c>>2]|0;if(w>>>0<(f[k>>2]|0)>>>0){f[c>>2]=w+1;C=h[w>>0]|0}else C=zh(a)|0;if((C|32|0)==120){j=+Gh(a,g,e,p,d);break a}if(!(f[k>>2]|0))D=48;else{f[c>>2]=(f[c>>2]|0)+-1;D=48}}else D=v;j=+Hh(a,D,g,e,p,d);break a;break}default:{if(f[k>>2]|0)f[c>>2]=(f[c>>2]|0)+-1;w=Jg()|0;f[w>>2]=22;yh(a,0);j=0.0;break a}}}}while(0);if((i|0)==23){w=(f[k>>2]|0)==0;if(!w)f[c>>2]=(f[c>>2]|0)+-1;if((d|0)!=0&r>>>0>3){l=r;do{if(!w)f[c>>2]=(f[c>>2]|0)+-1;l=l+-1|0}while(l>>>0>3)}}j=+(p|0)*A}while(0);return +j}function Gh(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=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.0,x=0.0,y=0,z=0,A=0,B=0.0,C=0.0,D=0,E=0,F=0,H=0,I=0,J=0,K=0.0,L=0,M=0.0,N=0.0,O=0,P=0,Q=0.0,R=0,S=0,T=0,U=0.0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0.0,aa=0,ba=0.0;g=a+4|0;i=f[g>>2]|0;j=a+100|0;if(i>>>0<(f[j>>2]|0)>>>0){f[g>>2]=i+1;k=h[i>>0]|0}else k=zh(a)|0;i=k;k=0;a:while(1){switch(i|0){case 46:{l=10;break a;break}case 48:break;default:{m=0;n=i;o=k;p=0;q=0;break a}}r=f[g>>2]|0;if(r>>>0<(f[j>>2]|0)>>>0){f[g>>2]=r+1;s=h[r>>0]|0}else s=zh(a)|0;i=s;k=1}if((l|0)==10){s=f[g>>2]|0;if(s>>>0<(f[j>>2]|0)>>>0){f[g>>2]=s+1;t=h[s>>0]|0}else t=zh(a)|0;if((t|0)==48){s=0;i=0;while(1){r=f[g>>2]|0;if(r>>>0<(f[j>>2]|0)>>>0){f[g>>2]=r+1;u=h[r>>0]|0}else u=zh(a)|0;r=ev(s|0,i|0,-1,-1)|0;v=G;if((u|0)==48){s=r;i=v}else{m=1;n=u;o=1;p=r;q=v;break}}}else{m=1;n=t;o=k;p=0;q=0}}k=0;w=1.0;x=0.0;t=0;u=m;m=n;n=o;o=0;i=0;s=p;p=q;while(1){q=m+-48|0;v=m|32;if(q>>>0>=10){r=(m|0)==46;if(!(r|(v+-97|0)>>>0<6)){y=m;break}if(r)if(!u){z=1;A=k;B=w;C=x;D=t;E=n;F=i;H=o;I=i;J=o}else{y=46;break}else l=24}else l=24;if((l|0)==24){l=0;r=(m|0)>57?v+-87|0:q;do if(!((o|0)<0|(o|0)==0&i>>>0<8))if((o|0)<0|(o|0)==0&i>>>0<14){K=w*.0625;L=k;M=K;N=x+K*+(r|0);O=t;break}else{q=(k|0)!=0|(r|0)==0;L=q?k:1;M=w;N=q?x:x+w*.5;O=t;break}else{L=k;M=w;N=x;O=r+(t<<4)|0}while(0);r=ev(i|0,o|0,1,0)|0;z=u;A=L;B=M;C=N;D=O;E=1;F=s;H=p;I=r;J=G}r=f[g>>2]|0;if(r>>>0<(f[j>>2]|0)>>>0){f[g>>2]=r+1;P=h[r>>0]|0}else P=zh(a)|0;k=A;w=B;x=C;t=D;u=z;m=P;n=E;o=J;i=I;s=F;p=H}do if(!n){H=(f[j>>2]|0)==0;if(!H)f[g>>2]=(f[g>>2]|0)+-1;if(e){if(!H?(f[g>>2]=(f[g>>2]|0)+-1,!((u|0)==0|H)):0)f[g>>2]=(f[g>>2]|0)+-1}else yh(a,0);Q=+(d|0)*0.0}else{H=(u|0)==0;F=H?i:s;I=H?o:p;if((o|0)<0|(o|0)==0&i>>>0<8){H=t;J=i;E=o;while(1){P=H<<4;m=J;J=ev(J|0,E|0,1,0)|0;if(!((E|0)<0|(E|0)==0&m>>>0<7)){R=P;break}else{H=P;E=G}}}else R=t;if((y|32|0)==112){E=Ih(a,e)|0;H=G;if((E|0)==0&(H|0)==-2147483648){if(!e){yh(a,0);Q=0.0;break}if(!(f[j>>2]|0)){S=0;T=0}else{f[g>>2]=(f[g>>2]|0)+-1;S=0;T=0}}else{S=E;T=H}}else if(!(f[j>>2]|0)){S=0;T=0}else{f[g>>2]=(f[g>>2]|0)+-1;S=0;T=0}H=kv(F|0,I|0,2)|0;E=ev(H|0,G|0,-32,-1)|0;H=ev(E|0,G|0,S|0,T|0)|0;E=G;if(!R){Q=+(d|0)*0.0;break}J=0-c|0;P=((J|0)<0)<<31>>31;if((E|0)>(P|0)|(E|0)==(P|0)&H>>>0>J>>>0){J=Jg()|0;f[J>>2]=34;Q=+(d|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}J=c+-106|0;P=((J|0)<0)<<31>>31;if((E|0)<(P|0)|(E|0)==(P|0)&H>>>0<J>>>0){J=Jg()|0;f[J>>2]=34;Q=+(d|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((R|0)>-1){C=x;J=R;P=H;m=E;while(1){z=!(C>=.5);D=J<<1|(z^1)&1;B=C+(z?C:C+-1.0);z=ev(P|0,m|0,-1,-1)|0;A=G;if((D|0)>-1){C=B;J=D;P=z;m=A}else{U=B;V=D;W=z;X=A;break}}}else{U=x;V=R;W=H;X=E}m=((b|0)<0)<<31>>31;P=fv(32,0,c|0,((c|0)<0)<<31>>31|0)|0;J=ev(P|0,G|0,W|0,X|0)|0;P=G;if((P|0)<(m|0)|(P|0)==(m|0)&J>>>0<b>>>0)if((J|0)>0){Y=J;l=65}else{Z=0;_=84;l=67}else{Y=b;l=65}if((l|0)==65)if((Y|0)<53){Z=Y;_=84-Y|0;l=67}else{$=0.0;aa=Y;ba=+(d|0)}if((l|0)==67){C=+(d|0);$=+Kh(+Jh(1.0,_),C);aa=Z;ba=C}J=(V&1|0)==0&(U!=0.0&(aa|0)<32);C=(J?0.0:U)*ba+($+ba*+((V+(J&1)|0)>>>0))-$;if(!(C!=0.0)){J=Jg()|0;f[J>>2]=34}Q=+Mh(C,W)}while(0);return +Q}function Hh(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,H=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=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,cb=0,db=0,eb=0.0,fb=0,gb=0.0,hb=0.0,ib=0.0,jb=0.0,kb=0.0,lb=0.0,mb=0.0,nb=0.0,ob=0.0,pb=0.0,qb=0;i=t;t=t+512|0;j=i;k=d+c|0;l=0-k|0;m=a+4|0;n=a+100|0;o=b;b=0;a:while(1){switch(o|0){case 46:{p=7;break a;break}case 48:break;default:{q=0;r=o;s=b;u=0;v=0;break a}}w=f[m>>2]|0;if(w>>>0<(f[n>>2]|0)>>>0){f[m>>2]=w+1;x=h[w>>0]|0}else x=zh(a)|0;o=x;b=1}if((p|0)==7){x=f[m>>2]|0;if(x>>>0<(f[n>>2]|0)>>>0){f[m>>2]=x+1;y=h[x>>0]|0}else y=zh(a)|0;if((y|0)==48){x=0;o=0;while(1){w=ev(x|0,o|0,-1,-1)|0;z=G;A=f[m>>2]|0;if(A>>>0<(f[n>>2]|0)>>>0){f[m>>2]=A+1;B=h[A>>0]|0}else B=zh(a)|0;if((B|0)==48){x=w;o=z}else{q=1;r=B;s=1;u=w;v=z;break}}}else{q=1;r=y;s=b;u=0;v=0}}f[j>>2]=0;b=r+-48|0;y=(r|0)==46;b:do if(y|b>>>0<10){B=j+496|0;o=0;x=0;z=0;w=q;A=s;C=r;D=y;E=b;F=u;H=v;J=0;K=0;c:while(1){do if(D)if(!w){L=o;M=x;N=1;O=z;P=A;Q=J;R=K;S=J;T=K}else break c;else{U=ev(J|0,K|0,1,0)|0;W=G;X=(C|0)!=48;if((x|0)>=125){if(!X){L=o;M=x;N=w;O=z;P=A;Q=F;R=H;S=U;T=W;break}f[B>>2]=f[B>>2]|1;L=o;M=x;N=w;O=z;P=A;Q=F;R=H;S=U;T=W;break}Y=j+(x<<2)|0;if(!o)Z=E;else Z=C+-48+((f[Y>>2]|0)*10|0)|0;f[Y>>2]=Z;Y=o+1|0;_=(Y|0)==9;L=_?0:Y;M=x+(_&1)|0;N=w;O=X?U:z;P=1;Q=F;R=H;S=U;T=W}while(0);W=f[m>>2]|0;if(W>>>0<(f[n>>2]|0)>>>0){f[m>>2]=W+1;$=h[W>>0]|0}else $=zh(a)|0;E=$+-48|0;D=($|0)==46;if(!(D|E>>>0<10)){aa=L;ba=M;ca=O;da=N;ea=$;fa=P;ga=S;ha=Q;ia=T;ja=R;p=31;break b}else{o=L;x=M;z=O;w=N;A=P;C=$;F=Q;H=R;J=S;K=T}}ka=o;la=x;ma=z;na=J;oa=K;pa=F;qa=H;ra=(A|0)!=0;p=39}else{aa=0;ba=0;ca=0;da=q;ea=r;fa=s;ga=0;ha=u;ia=0;ja=v;p=31}while(0);do if((p|0)==31){v=(da|0)==0;u=v?ga:ha;s=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=s;ra=v;p=39;break}else{sa=aa;ta=ba;ua=ca;va=ga;wa=ia;xa=v;ya=u;za=s;p=41;break}v=Ih(a,g)|0;r=G;if((v|0)==0&(r|0)==-2147483648){if(!g){yh(a,0);Aa=0.0;break}if(!(f[n>>2]|0)){Ba=0;Ca=0}else{f[m>>2]=(f[m>>2]|0)+-1;Ba=0;Ca=0}}else{Ba=v;Ca=r}r=ev(Ba|0,Ca|0,u|0,s|0)|0;Da=aa;Ea=ba;Fa=ca;Ga=r;Ha=ga;Ia=G;Ja=ia;p=43}while(0);if((p|0)==39)if(f[n>>2]|0){f[m>>2]=(f[m>>2]|0)+-1;if(ra){Da=ka;Ea=la;Fa=ma;Ga=pa;Ha=na;Ia=qa;Ja=oa;p=43}else p=42}else{sa=ka;ta=la;ua=ma;va=na;wa=oa;xa=ra;ya=pa;za=qa;p=41}if((p|0)==41)if(xa){Da=sa;Ea=ta;Fa=ua;Ga=ya;Ha=va;Ia=za;Ja=wa;p=43}else p=42;do if((p|0)==42){wa=Jg()|0;f[wa>>2]=22;yh(a,0);Aa=0.0}else if((p|0)==43){wa=f[j>>2]|0;if(!wa){Aa=+(e|0)*0.0;break}if(((Ja|0)<0|(Ja|0)==0&Ha>>>0<10)&((Ga|0)==(Ha|0)&(Ia|0)==(Ja|0))?(c|0)>30|(wa>>>c|0)==0:0){Aa=+(e|0)*+(wa>>>0);break}wa=(d|0)/-2|0;za=((wa|0)<0)<<31>>31;if((Ia|0)>(za|0)|(Ia|0)==(za|0)&Ga>>>0>wa>>>0){wa=Jg()|0;f[wa>>2]=34;Aa=+(e|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}wa=d+-106|0;za=((wa|0)<0)<<31>>31;if((Ia|0)<(za|0)|(Ia|0)==(za|0)&Ga>>>0<wa>>>0){wa=Jg()|0;f[wa>>2]=34;Aa=+(e|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=f[wa>>2]|0;while(1){va=va*10|0;if((za|0)>=8)break;else za=za+1|0}f[wa>>2]=va}Ka=Ea+1|0}if((Fa|0)<9?(Fa|0)<=(Ga|0)&(Ga|0)<18:0){if((Ga|0)==9){Aa=+(e|0)*+((f[j>>2]|0)>>>0);break}if((Ga|0)<9){Aa=+(e|0)*+((f[j>>2]|0)>>>0)/+(f[4096+(8-Ga<<2)>>2]|0);break}za=c+27+(V(Ga,-3)|0)|0;A=f[j>>2]|0;if((za|0)>30|(A>>>za|0)==0){Aa=+(e|0)*+(A>>>0)*+(f[4096+(Ga+-10<<2)>>2]|0);break}}A=(Ga|0)%9|0;if(!A){La=Ka;Ma=0;Na=Ga}else{za=(Ga|0)>-1?A:A+9|0;A=f[4096+(8-za<<2)>>2]|0;if(Ka){H=1e9/(A|0)|0;F=0;K=0;J=Ga;z=0;do{x=j+(z<<2)|0;o=f[x>>2]|0;ya=(o>>>0)/(A>>>0)|0;ua=o-(V(ya,A)|0)|0;o=ya+F|0;f[x>>2]=o;F=V(H,ua)|0;ua=(z|0)==(K|0)&(o|0)==0;J=ua?J+-9|0:J;K=ua?K+1&127:K;z=z+1|0}while((z|0)!=(Ka|0));if(!F){Oa=K;Pa=Ka;Qa=J}else{f[j+(Ka<<2)>>2]=F;Oa=K;Pa=Ka+1|0;Qa=J}}else{Oa=0;Pa=0;Qa=Ga}La=Pa;Ma=Oa;Na=9-za+Qa|0}z=0;H=La;A=Ma;va=Na;d:while(1){wa=(va|0)<18;ua=(va|0)==18;o=j+(A<<2)|0;Ra=z;Sa=H;while(1){if(!wa){if(!ua){Ta=va;break d}if((f[o>>2]|0)>>>0>=9007199){Ta=18;break d}}x=0;Ua=Sa;ya=Sa+127|0;while(1){ta=ya&127;sa=j+(ta<<2)|0;xa=kv(f[sa>>2]|0,0,29)|0;qa=ev(xa|0,G|0,x|0,0)|0;xa=G;if(xa>>>0>0|(xa|0)==0&qa>>>0>1e9){pa=iv(qa|0,xa|0,1e9,0)|0;ra=dv(pa|0,G|0,1e9,0)|0;oa=fv(qa|0,xa|0,ra|0,G|0)|0;Va=pa;Wa=oa}else{Va=0;Wa=qa}f[sa>>2]=Wa;sa=(ta|0)==(A|0);Xa=(ta|0)!=(Ua+127&127|0)|sa?Ua:(Wa|0)==0?ta:Ua;if(sa)break;else{x=Va;Ua=Xa;ya=ta+-1|0}}Ya=Ra+-29|0;if(!Va){Ra=Ya;Sa=Ua}else break}o=A+127&127;ua=Xa+127&127;wa=j+((Xa+126&127)<<2)|0;if((o|0)==(Xa|0)){f[wa>>2]=f[wa>>2]|f[j+(ua<<2)>>2];Za=ua}else Za=Ua;f[j+(o<<2)>>2]=Va;z=Ya;H=Za;A=o;va=va+9|0}va=Ra;H=A;z=Ta;za=Sa;e:while(1){J=za+1&127;K=j+((za+127&127)<<2)|0;F=va;o=H;ua=z;while(1){wa=(ua|0)==18;ya=(ua|0)>27?9:1;_a=F;$a=o;while(1){x=0;while(1){ta=x+$a&127;if((ta|0)==(za|0)){p=92;break}sa=f[j+(ta<<2)>>2]|0;ta=f[10676+(x<<2)>>2]|0;if(sa>>>0<ta>>>0){p=92;break}if(sa>>>0>ta>>>0)break;if((x+1|0)>>>0<2)x=1;else{p=92;break}}if((p|0)==92?(p=0,wa):0)break e;ab=ya+_a|0;if(($a|0)==(za|0)){_a=ab;$a=za}else break}wa=(1<<ya)+-1|0;x=1e9>>>ya;bb=0;cb=$a;db=ua;ta=$a;do{sa=j+(ta<<2)|0;qa=f[sa>>2]|0;oa=(qa>>>ya)+bb|0;f[sa>>2]=oa;bb=V(qa&wa,x)|0;qa=(ta|0)==(cb|0)&(oa|0)==0;db=qa?db+-9|0:db;cb=qa?cb+1&127:cb;ta=ta+1&127}while((ta|0)!=(za|0));if(bb|0){if((J|0)!=(cb|0))break;f[K>>2]=f[K>>2]|1}F=ab;o=cb;ua=db}f[j+(za<<2)>>2]=bb;va=ab;H=cb;z=db;za=J}eb=0.0;z=za;H=0;while(1){va=H+$a&127;A=z+1&127;if((va|0)==(z|0)){f[j+(A+-1<<2)>>2]=0;fb=A}else fb=z;eb=eb*1.0e9+ +((f[j+(va<<2)>>2]|0)>>>0);H=H+1|0;if((H|0)==2)break;else z=fb}gb=+(e|0);hb=eb*gb;z=_a+53|0;H=z-d|0;za=(H|0)<(c|0);va=za?((H|0)>0?H:0):c;if((va|0)<53){ib=+Kh(+Jh(1.0,105-va|0),hb);jb=+Lh(hb,+Jh(1.0,53-va|0));kb=ib;lb=jb;mb=ib+(hb-jb)}else{kb=0.0;lb=0.0;mb=hb}A=$a+2&127;if((A|0)!=(fb|0)){ua=f[j+(A<<2)>>2]|0;do if(ua>>>0>=5e8){if((ua|0)!=5e8){nb=gb*.75+lb;break}if(($a+3&127|0)==(fb|0)){nb=gb*.5+lb;break}else{nb=gb*.75+lb;break}}else{if((ua|0)==0?($a+3&127|0)==(fb|0):0){nb=lb;break}nb=gb*.25+lb}while(0);if((53-va|0)>1?!(+Lh(nb,1.0)!=0.0):0)ob=nb+1.0;else ob=nb}else ob=lb;gb=mb+ob-kb;do if((z&2147483647|0)>(-2-k|0)){ua=!(+I(+gb)>=9007199254740992.0);A=_a+((ua^1)&1)|0;eb=ua?gb:gb*.5;if((A+50|0)<=(l|0)?!(ob!=0.0&(za&((va|0)!=(H|0)|ua))):0){pb=eb;qb=A;break}ua=Jg()|0;f[ua>>2]=34;pb=eb;qb=A}else{pb=gb;qb=_a}while(0);Aa=+Mh(pb,qb)}while(0);t=i;return +Aa}function Ih(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=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;c=a+4|0;d=f[c>>2]|0;e=a+100|0;if(d>>>0<(f[e>>2]|0)>>>0){f[c>>2]=d+1;g=h[d>>0]|0}else g=zh(a)|0;switch(g|0){case 43:case 45:{d=(g|0)==45&1;i=f[c>>2]|0;if(i>>>0<(f[e>>2]|0)>>>0){f[c>>2]=i+1;j=h[i>>0]|0}else j=zh(a)|0;i=j+-48|0;if((b|0)!=0&i>>>0>9)if(!(f[e>>2]|0)){k=0;l=-2147483648}else{f[c>>2]=(f[c>>2]|0)+-1;m=14}else{n=d;o=j;p=i;m=12}break}default:{n=0;o=g;p=g+-48|0;m=12}}if((m|0)==12)if(p>>>0>9)m=14;else{p=0;g=o;while(1){p=g+-48+(p*10|0)|0;o=f[c>>2]|0;if(o>>>0<(f[e>>2]|0)>>>0){f[c>>2]=o+1;q=h[o>>0]|0}else q=zh(a)|0;r=q+-48|0;if(!(r>>>0<10&(p|0)<214748364))break;else g=q}g=((p|0)<0)<<31>>31;if(r>>>0<10){r=q;q=p;o=g;while(1){i=dv(q|0,o|0,10,0)|0;j=G;d=ev(r|0,((r|0)<0)<<31>>31|0,-48,-1)|0;q=ev(d|0,G|0,i|0,j|0)|0;o=G;j=f[c>>2]|0;if(j>>>0<(f[e>>2]|0)>>>0){f[c>>2]=j+1;s=h[j>>0]|0}else s=zh(a)|0;t=s+-48|0;if(!(t>>>0<10&((o|0)<21474836|(o|0)==21474836&q>>>0<2061584302)))break;else r=s}if(t>>>0<10){do{t=f[c>>2]|0;if(t>>>0<(f[e>>2]|0)>>>0){f[c>>2]=t+1;u=h[t>>0]|0}else u=zh(a)|0}while((u+-48|0)>>>0<10);v=q;w=o}else{v=q;w=o}}else{v=p;w=g}if(f[e>>2]|0)f[c>>2]=(f[c>>2]|0)+-1;g=(n|0)==0;n=fv(0,0,v|0,w|0)|0;k=g?v:n;l=g?w:G}if((m|0)==14)if(!(f[e>>2]|0)){k=0;l=-2147483648}else{f[c>>2]=(f[c>>2]|0)+-1;k=0;l=-2147483648}G=l;return k|0}function Jh(a,b){a=+a;b=b|0;var c=0.0,d=0,e=0,g=0.0,h=0;if((b|0)<=1023)if((b|0)<-1022){c=a*2.2250738585072014e-308;d=(b|0)<-2044;e=b+2044|0;g=d?c*2.2250738585072014e-308:c;h=d?((e|0)>-1022?e:-1022):b+1022|0}else{g=a;h=b}else{c=a*8988465674311579538646525.0e283;e=(b|0)>2046;d=b+-2046|0;g=e?c*8988465674311579538646525.0e283:c;h=e?((d|0)<1023?d:1023):b+-1023|0}b=kv(h+1023|0,0,52)|0;h=G;f[s>>2]=b;f[s+4>>2]=h;return +(g*+p[s>>3])}function Kh(a,b){a=+a;b=+b;return +(+Ph(a,b))}function Lh(a,b){a=+a;b=+b;return +(+Nh(a,b))}function Mh(a,b){a=+a;b=b|0;return +(+Jh(a,b))}function Nh(a,b){a=+a;b=+b;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=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,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;p[s>>3]=a;c=f[s>>2]|0;d=f[s+4>>2]|0;p[s>>3]=b;e=f[s>>2]|0;g=f[s+4>>2]|0;h=jv(c|0,d|0,52)|0;i=h&2047;h=jv(e|0,g|0,52)|0;j=h&2047;h=d&-2147483648;k=kv(e|0,g|0,1)|0;l=G;a:do if(!((k|0)==0&(l|0)==0)?(m=Oh(b)|0,n=G&2147483647,!((i|0)==2047|(n>>>0>2146435072|(n|0)==2146435072&m>>>0>0))):0){m=kv(c|0,d|0,1)|0;n=G;if(!(n>>>0>l>>>0|(n|0)==(l|0)&m>>>0>k>>>0))return +((m|0)==(k|0)&(n|0)==(l|0)?a*0.0:a);if(!i){n=kv(c|0,d|0,12)|0;m=G;if((m|0)>-1|(m|0)==-1&n>>>0>4294967295){o=0;q=n;n=m;while(1){m=o+-1|0;q=kv(q|0,n|0,1)|0;n=G;if(!((n|0)>-1|(n|0)==-1&q>>>0>4294967295)){r=m;break}else o=m}}else r=0;o=kv(c|0,d|0,1-r|0)|0;t=r;u=o;v=G}else{t=i;u=c;v=d&1048575|1048576}if(!j){o=kv(e|0,g|0,12)|0;q=G;if((q|0)>-1|(q|0)==-1&o>>>0>4294967295){n=0;m=o;o=q;while(1){q=n+-1|0;m=kv(m|0,o|0,1)|0;o=G;if(!((o|0)>-1|(o|0)==-1&m>>>0>4294967295)){w=q;break}else n=q}}else w=0;n=kv(e|0,g|0,1-w|0)|0;x=w;y=n;z=G}else{x=j;y=e;z=g&1048575|1048576}n=fv(u|0,v|0,y|0,z|0)|0;m=G;o=(m|0)>-1|(m|0)==-1&n>>>0>4294967295;b:do if((t|0)>(x|0)){q=t;A=m;B=o;C=u;D=v;E=n;while(1){if(B)if((E|0)==0&(A|0)==0)break;else{F=E;H=A}else{F=C;H=D}I=kv(F|0,H|0,1)|0;J=G;K=q+-1|0;L=fv(I|0,J|0,y|0,z|0)|0;M=G;N=(M|0)>-1|(M|0)==-1&L>>>0>4294967295;if((K|0)>(x|0)){q=K;A=M;B=N;C=I;D=J;E=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=o;Q=n;R=m;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){m=O;n=W;o=V;while(1){E=kv(n|0,o|0,1)|0;D=G;C=m+-1|0;if(D>>>0<1048576|(D|0)==1048576&E>>>0<0){m=C;n=E;o=D}else{X=C;Y=E;Z=D;break}}}else{X=O;Y=W;Z=V}if((X|0)>0){o=ev(Y|0,Z|0,0,-1048576)|0;n=G;m=kv(X|0,0,52)|0;_=n|G;$=o|m}else{m=jv(Y|0,Z|0,1-X|0)|0;_=G;$=m}f[s>>2]=$;f[s+4>>2]=_|h;U=+p[s>>3]}else aa=3;while(0);if((aa|0)==3){ba=a*b;U=ba/ba}return +U}function Oh(a){a=+a;var b=0;p[s>>3]=a;b=f[s>>2]|0;G=f[s+4>>2]|0;return b|0}function Ph(a,b){a=+a;b=+b;var c=0,d=0,e=0;p[s>>3]=a;c=f[s>>2]|0;d=f[s+4>>2]|0;p[s>>3]=b;e=f[s+4>>2]&-2147483648|d&2147483647;f[s>>2]=c;f[s+4>>2]=e;return +(+p[s>>3])}function Qh(){return Sg()|0}function Rh(a){a=a|0;var b=0,c=0,d=0;b=t;t=t+16|0;c=b;if((Sh(a)|0)==0?(Ic[f[a+32>>2]&63](a,c,1)|0)==1:0)d=h[c>>0]|0;else d=-1;t=b;return d|0}function Sh(a){a=a|0;var c=0,d=0,e=0;c=a+74|0;d=b[c>>0]|0;b[c>>0]=d+255|d;d=a+20|0;c=a+28|0;if((f[d>>2]|0)>>>0>(f[c>>2]|0)>>>0)Ic[f[a+36>>2]&63](a,0,0)|0;f[a+16>>2]=0;f[c>>2]=0;f[d>>2]=0;d=f[a>>2]|0;if(!(d&4)){c=(f[a+44>>2]|0)+(f[a+48>>2]|0)|0;f[a+8>>2]=c;f[a+4>>2]=c;e=d<<27>>31}else{f[a>>2]=d|32;e=-1}return e|0}function Th(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;d=a+84|0;e=f[d>>2]|0;g=c+256|0;h=Uh(e,0,g)|0;i=(h|0)==0?g:h-e|0;h=i>>>0<c>>>0?i:c;mv(b|0,e|0,h|0)|0;f[a+4>>2]=e+h;b=e+i|0;f[a+8>>2]=b;f[d>>2]=b;return h|0}function Uh(a,c,d){a=a|0;c=c|0;d=d|0;var e=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=c&255;g=(d|0)!=0;a:do if(g&(a&3|0)!=0){h=c&255;i=a;j=d;while(1){if((b[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=a;r=d;s=g;m=5}while(0);if((m|0)==5)if(s){k=q;l=r;m=6}else m=16;b:do if((m|0)==6){r=c&255;if((b[k>>0]|0)==r<<24>>24)if(!l){m=16;break}else{t=k;break}q=V(e,16843009)|0;c:do if(l>>>0>3){s=k;g=l;while(1){d=f[s>>2]^q;if((d&-2139062144^-2139062144)&d+-16843009|0){u=g;v=s;break c}d=s+4|0;a=g+-4|0;if(a>>>0>3){s=d;g=a}else{w=d;x=a;m=11;break}}}else{w=k;x=l;m=11}while(0);if((m|0)==11)if(!x){m=16;break}else{u=x;v=w}q=v;g=u;while(1){if((b[q>>0]|0)==r<<24>>24){t=q;break b}g=g+-1|0;if(!g){m=16;break}else q=q+1|0}}while(0);if((m|0)==16)t=0;return t|0}function Vh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=t;t=t+16|0;e=d;f[e>>2]=c;c=Wh(a,b,e)|0;t=d;return c|0}function Wh(a,c,d){a=a|0;c=c|0;d=d|0;var e=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,u=0;e=t;t=t+224|0;g=e+208|0;h=e+160|0;i=e+80|0;j=e;k=h;l=k+40|0;do{f[k>>2]=0;k=k+4|0}while((k|0)<(l|0));f[g>>2]=f[d>>2];if((Xh(0,c,g,i,h)|0)<0)m=-1;else{if((f[a+76>>2]|0)>-1)n=ch(a)|0;else n=0;d=f[a>>2]|0;k=d&32;if((b[a+74>>0]|0)<1)f[a>>2]=d&-33;d=a+48|0;if(!(f[d>>2]|0)){l=a+44|0;o=f[l>>2]|0;f[l>>2]=j;p=a+28|0;f[p>>2]=j;q=a+20|0;f[q>>2]=j;f[d>>2]=80;r=a+16|0;f[r>>2]=j+80;j=Xh(a,c,g,i,h)|0;if(!o)s=j;else{Ic[f[a+36>>2]&63](a,0,0)|0;u=(f[q>>2]|0)==0?-1:j;f[l>>2]=o;f[d>>2]=0;f[r>>2]=0;f[p>>2]=0;f[q>>2]=0;s=u}}else s=Xh(a,c,g,i,h)|0;h=f[a>>2]|0;f[a>>2]=h|k;if(n|0)ah(a);m=(h&32|0)==0?s:-1}t=e;return m|0}function Xh(a,c,e,g,h){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=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,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;i=t;t=t+64|0;j=i+56|0;k=i+40|0;l=i;m=i+48|0;n=i+60|0;f[j>>2]=c;c=(a|0)!=0;o=l+40|0;q=o;r=l+39|0;l=m+4|0;s=0;u=0;v=0;a:while(1){w=s;x=u;while(1){do if((x|0)>-1)if((w|0)>(2147483647-x|0)){y=Jg()|0;f[y>>2]=75;z=-1;break}else{z=w+x|0;break}else z=x;while(0);A=f[j>>2]|0;y=b[A>>0]|0;if(!(y<<24>>24)){B=94;break a}C=y;y=A;b:while(1){switch(C<<24>>24){case 37:{B=10;break b;break}case 0:{D=y;break b;break}default:{}}E=y+1|0;f[j>>2]=E;C=b[E>>0]|0;y=E}c:do if((B|0)==10){B=0;C=y;E=y;while(1){if((b[E+1>>0]|0)!=37){D=C;break c}F=C+1|0;E=E+2|0;f[j>>2]=E;if((b[E>>0]|0)!=37){D=F;break}else C=F}}while(0);w=D-A|0;if(c)Yh(a,A,w);if(!w)break;else x=z}x=(Og(b[(f[j>>2]|0)+1>>0]|0)|0)==0;w=f[j>>2]|0;if(!x?(b[w+2>>0]|0)==36:0){H=(b[w+1>>0]|0)+-48|0;I=1;J=3}else{H=-1;I=v;J=1}x=w+J|0;f[j>>2]=x;w=b[x>>0]|0;y=(w<<24>>24)+-32|0;if(y>>>0>31|(1<<y&75913|0)==0){K=0;L=w;M=x}else{w=0;C=y;y=x;while(1){x=1<<C|w;E=y+1|0;f[j>>2]=E;F=b[E>>0]|0;C=(F<<24>>24)+-32|0;if(C>>>0>31|(1<<C&75913|0)==0){K=x;L=F;M=E;break}else{w=x;y=E}}}if(L<<24>>24==42){if((Og(b[M+1>>0]|0)|0)!=0?(y=f[j>>2]|0,(b[y+2>>0]|0)==36):0){w=y+1|0;f[h+((b[w>>0]|0)+-48<<2)>>2]=10;N=f[g+((b[w>>0]|0)+-48<<3)>>2]|0;O=1;P=y+3|0}else{if(I|0){Q=-1;break}if(c){y=(f[e>>2]|0)+(4-1)&~(4-1);w=f[y>>2]|0;f[e>>2]=y+4;R=w}else R=0;N=R;O=0;P=(f[j>>2]|0)+1|0}f[j>>2]=P;w=(N|0)<0;S=w?0-N|0:N;T=w?K|8192:K;U=O;V=P}else{w=Zh(j)|0;if((w|0)<0){Q=-1;break}S=w;T=K;U=I;V=f[j>>2]|0}do if((b[V>>0]|0)==46){w=V+1|0;if((b[w>>0]|0)!=42){f[j>>2]=w;w=Zh(j)|0;W=w;X=f[j>>2]|0;break}if(Og(b[V+2>>0]|0)|0?(w=f[j>>2]|0,(b[w+3>>0]|0)==36):0){y=w+2|0;f[h+((b[y>>0]|0)+-48<<2)>>2]=10;C=f[g+((b[y>>0]|0)+-48<<3)>>2]|0;y=w+4|0;f[j>>2]=y;W=C;X=y;break}if(U|0){Q=-1;break a}if(c){y=(f[e>>2]|0)+(4-1)&~(4-1);C=f[y>>2]|0;f[e>>2]=y+4;Y=C}else Y=0;C=(f[j>>2]|0)+2|0;f[j>>2]=C;W=Y;X=C}else{W=-1;X=V}while(0);C=0;y=X;while(1){if(((b[y>>0]|0)+-65|0)>>>0>57){Q=-1;break a}w=y;y=y+1|0;f[j>>2]=y;Z=b[(b[w>>0]|0)+-65+(4400+(C*58|0))>>0]|0;_=Z&255;if((_+-1|0)>>>0>=8)break;else C=_}if(!(Z<<24>>24)){Q=-1;break}w=(H|0)>-1;do if(Z<<24>>24==19)if(w){Q=-1;break a}else B=54;else{if(w){f[h+(H<<2)>>2]=_;E=g+(H<<3)|0;x=f[E+4>>2]|0;F=k;f[F>>2]=f[E>>2];f[F+4>>2]=x;B=54;break}if(!c){Q=0;break a}_h(k,_,e);$=f[j>>2]|0;B=55}while(0);if((B|0)==54){B=0;if(c){$=y;B=55}else aa=0}d:do if((B|0)==55){B=0;w=b[$+-1>>0]|0;x=(C|0)!=0&(w&15|0)==3?w&-33:w;w=T&-65537;F=(T&8192|0)==0?T:w;e:do switch(x|0){case 110:{switch((C&255)<<24>>24){case 0:{f[f[k>>2]>>2]=z;aa=0;break d;break}case 1:{f[f[k>>2]>>2]=z;aa=0;break d;break}case 2:{E=f[k>>2]|0;f[E>>2]=z;f[E+4>>2]=((z|0)<0)<<31>>31;aa=0;break d;break}case 3:{d[f[k>>2]>>1]=z;aa=0;break d;break}case 4:{b[f[k>>2]>>0]=z;aa=0;break d;break}case 6:{f[f[k>>2]>>2]=z;aa=0;break d;break}case 7:{E=f[k>>2]|0;f[E>>2]=z;f[E+4>>2]=((z|0)<0)<<31>>31;aa=0;break d;break}default:{aa=0;break d}}break}case 112:{ba=120;ca=W>>>0>8?W:8;da=F|8;B=67;break}case 88:case 120:{ba=x;ca=W;da=F;B=67;break}case 111:{E=k;ea=f[E>>2]|0;fa=f[E+4>>2]|0;E=ai(ea,fa,o)|0;ga=q-E|0;ha=E;ia=0;ja=17642;ka=(F&8|0)==0|(W|0)>(ga|0)?W:ga+1|0;la=F;ma=ea;na=fa;B=73;break}case 105:case 100:{fa=k;ea=f[fa>>2]|0;ga=f[fa+4>>2]|0;if((ga|0)<0){fa=fv(0,0,ea|0,ga|0)|0;E=G;oa=k;f[oa>>2]=fa;f[oa+4>>2]=E;pa=1;qa=17642;ra=fa;sa=E;B=72;break e}else{pa=(F&2049|0)!=0&1;qa=(F&2048|0)==0?((F&1|0)==0?17642:17644):17643;ra=ea;sa=ga;B=72;break e}break}case 117:{ga=k;pa=0;qa=17642;ra=f[ga>>2]|0;sa=f[ga+4>>2]|0;B=72;break}case 99:{b[r>>0]=f[k>>2];ta=r;ua=0;va=17642;wa=1;xa=w;ya=q;break}case 109:{ga=Jg()|0;za=ci(f[ga>>2]|0)|0;B=77;break}case 115:{ga=f[k>>2]|0;za=(ga|0)==0?17652:ga;B=77;break}case 67:{f[m>>2]=f[k>>2];f[l>>2]=0;f[k>>2]=m;Aa=-1;B=81;break}case 83:{if(!W){di(a,32,S,0,F);Ba=0;B=91}else{Aa=W;B=81}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{aa=fi(a,+p[k>>3],S,W,F,x)|0;break d;break}default:{ta=A;ua=0;va=17642;wa=W;xa=F;ya=q}}while(0);f:do if((B|0)==67){B=0;x=k;ga=f[x>>2]|0;ea=f[x+4>>2]|0;x=$h(ga,ea,o,ba&32)|0;E=(da&8|0)==0|(ga|0)==0&(ea|0)==0;ha=x;ia=E?0:2;ja=E?17642:17642+(ba>>>4)|0;ka=ca;la=da;ma=ga;na=ea;B=73}else if((B|0)==72){B=0;ha=bi(ra,sa,o)|0;ia=pa;ja=qa;ka=W;la=F;ma=ra;na=sa;B=73}else if((B|0)==77){B=0;ea=Uh(za,0,W)|0;ga=(ea|0)==0;ta=za;ua=0;va=17642;wa=ga?W:ea-za|0;xa=w;ya=ga?za+W|0:ea}else if((B|0)==81){B=0;ea=f[k>>2]|0;ga=0;while(1){E=f[ea>>2]|0;if(!E){Ca=ga;break}x=ei(n,E)|0;Da=(x|0)<0;if(Da|x>>>0>(Aa-ga|0)>>>0){B=85;break}E=x+ga|0;if(Aa>>>0>E>>>0){ea=ea+4|0;ga=E}else{Ca=E;break}}if((B|0)==85){B=0;if(Da){Q=-1;break a}else Ca=ga}di(a,32,S,Ca,F);if(!Ca){Ba=0;B=91}else{ea=f[k>>2]|0;E=0;while(1){x=f[ea>>2]|0;if(!x){Ba=Ca;B=91;break f}fa=ei(n,x)|0;E=fa+E|0;if((E|0)>(Ca|0)){Ba=Ca;B=91;break f}Yh(a,n,fa);if(E>>>0>=Ca>>>0){Ba=Ca;B=91;break}else ea=ea+4|0}}}while(0);if((B|0)==73){B=0;w=(ma|0)!=0|(na|0)!=0;ea=(ka|0)!=0|w;E=q-ha+((w^1)&1)|0;ta=ea?ha:o;ua=ia;va=ja;wa=ea?((ka|0)>(E|0)?ka:E):0;xa=(ka|0)>-1?la&-65537:la;ya=q}else if((B|0)==91){B=0;di(a,32,S,Ba,F^8192);aa=(S|0)>(Ba|0)?S:Ba;break}E=ya-ta|0;ea=(wa|0)<(E|0)?E:wa;w=ea+ua|0;ga=(S|0)<(w|0)?w:S;di(a,32,ga,w,xa);Yh(a,va,ua);di(a,48,ga,w,xa^65536);di(a,48,ea,E,0);Yh(a,ta,E);di(a,32,ga,w,xa^8192);aa=ga}while(0);s=aa;u=z;v=U}g:do if((B|0)==94)if(!a)if(!v)Q=0;else{U=1;while(1){u=f[h+(U<<2)>>2]|0;if(!u)break;_h(g+(U<<3)|0,u,e);u=U+1|0;if(u>>>0<10)U=u;else{Q=1;break g}}u=U;while(1){if(f[h+(u<<2)>>2]|0){Q=-1;break g}u=u+1|0;if(u>>>0>=10){Q=1;break}}}else Q=z;while(0);t=i;return Q|0}function Yh(a,b,c){a=a|0;b=b|0;c=c|0;if(!(f[a>>2]&32))fh(b,c,a)|0;return}function Zh(a){a=a|0;var c=0,d=0,e=0,g=0,h=0;if(!(Og(b[f[a>>2]>>0]|0)|0))c=0;else{d=0;while(1){e=f[a>>2]|0;g=(d*10|0)+-48+(b[e>>0]|0)|0;h=e+1|0;f[a>>2]=h;if(!(Og(b[h>>0]|0)|0)){c=g;break}else d=g}}return c|0}function _h(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{d=(f[c>>2]|0)+(4-1)&~(4-1);e=f[d>>2]|0;f[c>>2]=d+4;f[a>>2]=e;break a;break}case 10:{e=(f[c>>2]|0)+(4-1)&~(4-1);d=f[e>>2]|0;f[c>>2]=e+4;e=a;f[e>>2]=d;f[e+4>>2]=((d|0)<0)<<31>>31;break a;break}case 11:{d=(f[c>>2]|0)+(4-1)&~(4-1);e=f[d>>2]|0;f[c>>2]=d+4;d=a;f[d>>2]=e;f[d+4>>2]=0;break a;break}case 12:{d=(f[c>>2]|0)+(8-1)&~(8-1);e=d;g=f[e>>2]|0;h=f[e+4>>2]|0;f[c>>2]=d+8;d=a;f[d>>2]=g;f[d+4>>2]=h;break a;break}case 13:{h=(f[c>>2]|0)+(4-1)&~(4-1);d=f[h>>2]|0;f[c>>2]=h+4;h=(d&65535)<<16>>16;d=a;f[d>>2]=h;f[d+4>>2]=((h|0)<0)<<31>>31;break a;break}case 14:{h=(f[c>>2]|0)+(4-1)&~(4-1);d=f[h>>2]|0;f[c>>2]=h+4;h=a;f[h>>2]=d&65535;f[h+4>>2]=0;break a;break}case 15:{h=(f[c>>2]|0)+(4-1)&~(4-1);d=f[h>>2]|0;f[c>>2]=h+4;h=(d&255)<<24>>24;d=a;f[d>>2]=h;f[d+4>>2]=((h|0)<0)<<31>>31;break a;break}case 16:{h=(f[c>>2]|0)+(4-1)&~(4-1);d=f[h>>2]|0;f[c>>2]=h+4;h=a;f[h>>2]=d&255;f[h+4>>2]=0;break a;break}case 17:{h=(f[c>>2]|0)+(8-1)&~(8-1);i=+p[h>>3];f[c>>2]=h+8;p[a>>3]=i;break a;break}case 18:{h=(f[c>>2]|0)+(8-1)&~(8-1);i=+p[h>>3];f[c>>2]=h+8;p[a>>3]=i;break a;break}default:break a}while(0);while(0);return}function $h(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;if((a|0)==0&(c|0)==0)f=d;else{g=d;d=c;c=a;while(1){a=g+-1|0;b[a>>0]=h[4864+(c&15)>>0]|0|e;c=jv(c|0,d|0,4)|0;d=G;if((c|0)==0&(d|0)==0){f=a;break}else g=a}}return f|0}function ai(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;if((a|0)==0&(c|0)==0)e=d;else{f=d;d=c;c=a;while(1){a=f+-1|0;b[a>>0]=c&7|48;c=jv(c|0,d|0,3)|0;d=G;if((c|0)==0&(d|0)==0){e=a;break}else f=a}}return e|0}function bi(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(c>>>0>0|(c|0)==0&a>>>0>4294967295){e=d;f=a;g=c;do{c=f;f=iv(f|0,g|0,10,0)|0;h=g;g=G;i=dv(f|0,g|0,10,0)|0;j=fv(c|0,h|0,i|0,G|0)|0;e=e+-1|0;b[e>>0]=j&255|48}while(h>>>0>9|(h|0)==9&c>>>0>4294967295);k=f;l=e}else{k=a;l=d}if(!k)m=l;else{d=k;k=l;while(1){l=d;d=(d>>>0)/10|0;a=k+-1|0;b[a>>0]=l-(d*10|0)|48;if(l>>>0<10){m=a;break}else k=a}}return m|0}function ci(a){a=a|0;var b=0;b=(li()|0)+188|0;return mi(a,f[b>>2]|0)|0}function di(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=t;t=t+256|0;g=f;if((c|0)>(d|0)&(e&73728|0)==0){e=c-d|0;ov(g|0,b<<24>>24|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;d=e;do{Yh(a,g,256);d=d+-256|0}while(d>>>0>255);h=b&255}else h=e;Yh(a,g,h)}t=f;return}function ei(a,b){a=a|0;b=b|0;var c=0;if(!a)c=0;else c=ji(a,b,0)|0;return c|0}function fi(a,c,d,e,g,i){a=a|0;c=+c;d=d|0;e=e|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,u=0,v=0.0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0,H=0,I=0,J=0.0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0.0,R=0,S=0,T=0,U=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.0,ja=0.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=t;t=t+560|0;k=j+32|0;l=j+536|0;m=j;n=m;o=j+540|0;f[l>>2]=0;p=o+12|0;q=gi(c)|0;r=G;if((r|0)<0){s=-c;u=gi(s)|0;v=s;w=1;x=17659;y=G;z=u}else{v=c;w=(g&2049|0)!=0&1;x=(g&2048|0)==0?((g&1|0)==0?17660:17665):17662;y=r;z=q}do if(0==0&(y&2146435072|0)==2146435072){q=(i&32|0)!=0;z=w+3|0;di(a,32,d,z,g&-65537);Yh(a,x,w);Yh(a,v!=v|0.0!=0.0?(q?17686:17690):q?17678:17682,3);di(a,32,d,z,g^8192);A=z}else{c=+hi(v,l)*2.0;z=c!=0.0;if(z)f[l>>2]=(f[l>>2]|0)+-1;q=i|32;if((q|0)==97){r=i&32;u=(r|0)==0?x:x+9|0;B=w|2;C=12-e|0;do if(!(e>>>0>11|(C|0)==0)){s=8.0;D=C;do{D=D+-1|0;s=s*16.0}while((D|0)!=0);if((b[u>>0]|0)==45){E=-(s+(-c-s));break}else{E=c+s-s;break}}else E=c;while(0);C=f[l>>2]|0;D=(C|0)<0?0-C|0:C;F=bi(D,((D|0)<0)<<31>>31,p)|0;if((F|0)==(p|0)){D=o+11|0;b[D>>0]=48;H=D}else H=F;b[H+-1>>0]=(C>>31&2)+43;C=H+-2|0;b[C>>0]=i+15;F=(e|0)<1;D=(g&8|0)==0;I=m;J=E;while(1){K=~~J;L=I+1|0;b[I>>0]=r|h[4864+K>>0];J=(J-+(K|0))*16.0;if((L-n|0)==1?!(D&(F&J==0.0)):0){b[L>>0]=46;M=I+2|0}else M=L;if(!(J!=0.0))break;else I=M}I=M;if((e|0)!=0?(-2-n+I|0)<(e|0):0){F=p;D=C;N=e+2+F-D|0;O=F;P=D}else{D=p;F=C;N=D-n-F+I|0;O=D;P=F}F=N+B|0;di(a,32,d,F,g);Yh(a,u,B);di(a,48,d,F,g^65536);D=I-n|0;Yh(a,m,D);I=O-P|0;di(a,48,N-(D+I)|0,0,0);Yh(a,C,I);di(a,32,d,F,g^8192);A=F;break}F=(e|0)<0?6:e;if(z){I=(f[l>>2]|0)+-28|0;f[l>>2]=I;Q=c*268435456.0;R=I}else{Q=c;R=f[l>>2]|0}I=(R|0)<0?k:k+288|0;D=I;J=Q;do{r=~~J>>>0;f[D>>2]=r;D=D+4|0;J=(J-+(r>>>0))*1.0e9}while(J!=0.0);z=I;if((R|0)>0){C=I;B=D;u=R;while(1){r=(u|0)<29?u:29;L=B+-4|0;if(L>>>0>=C>>>0){K=L;L=0;do{S=kv(f[K>>2]|0,0,r|0)|0;T=ev(S|0,G|0,L|0,0)|0;S=G;L=iv(T|0,S|0,1e9,0)|0;U=dv(L|0,G|0,1e9,0)|0;W=fv(T|0,S|0,U|0,G|0)|0;f[K>>2]=W;K=K+-4|0}while(K>>>0>=C>>>0);if(L){K=C+-4|0;f[K>>2]=L;X=K}else X=C}else X=C;a:do if(B>>>0>X>>>0){K=B;while(1){W=K+-4|0;if(f[W>>2]|0){Y=K;break a}if(W>>>0>X>>>0)K=W;else{Y=W;break}}}else Y=B;while(0);L=(f[l>>2]|0)-r|0;f[l>>2]=L;if((L|0)>0){C=X;B=Y;u=L}else{Z=X;_=Y;$=L;break}}}else{Z=I;_=D;$=R}if(($|0)<0){u=((F+25|0)/9|0)+1|0;B=(q|0)==102;C=Z;L=_;K=$;while(1){W=0-K|0;U=(W|0)<9?W:9;if(C>>>0<L>>>0){W=(1<<U)+-1|0;S=1e9>>>U;T=0;aa=C;do{ba=f[aa>>2]|0;f[aa>>2]=(ba>>>U)+T;T=V(ba&W,S)|0;aa=aa+4|0}while(aa>>>0<L>>>0);aa=(f[C>>2]|0)==0?C+4|0:C;if(!T){ca=L;da=aa}else{f[L>>2]=T;ca=L+4|0;da=aa}}else{ca=L;da=(f[C>>2]|0)==0?C+4|0:C}aa=B?I:da;S=(ca-aa>>2|0)>(u|0)?aa+(u<<2)|0:ca;K=(f[l>>2]|0)+U|0;f[l>>2]=K;if((K|0)>=0){ea=da;fa=S;break}else{C=da;L=S}}}else{ea=Z;fa=_}if(ea>>>0<fa>>>0){L=(z-ea>>2)*9|0;C=f[ea>>2]|0;if(C>>>0<10)ga=L;else{K=L;L=10;while(1){L=L*10|0;u=K+1|0;if(C>>>0<L>>>0){ga=u;break}else K=u}}}else ga=0;K=(q|0)==103;L=(F|0)!=0;C=F-((q|0)==102?0:ga)+((L&K)<<31>>31)|0;if((C|0)<(((fa-z>>2)*9|0)+-9|0)){u=C+9216|0;C=(u|0)/9|0;B=I+4+(C+-1024<<2)|0;D=u-(C*9|0)|0;if((D|0)<8){C=D;D=10;while(1){u=D*10|0;if((C|0)<7){C=C+1|0;D=u}else{ha=u;break}}}else ha=10;D=f[B>>2]|0;C=(D>>>0)/(ha>>>0)|0;q=D-(V(C,ha)|0)|0;u=(B+4|0)==(fa|0);if(!(u&(q|0)==0)){s=(C&1|0)==0?9007199254740992.0:9007199254740994.0;C=ha>>>1;J=q>>>0<C>>>0?.5:u&(q|0)==(C|0)?1.0:1.5;if(!w){ia=J;ja=s}else{C=(b[x>>0]|0)==45;ia=C?-J:J;ja=C?-s:s}C=D-q|0;f[B>>2]=C;if(ja+ia!=ja){q=C+ha|0;f[B>>2]=q;if(q>>>0>999999999){q=B;C=ea;while(1){D=q+-4|0;f[q>>2]=0;if(D>>>0<C>>>0){u=C+-4|0;f[u>>2]=0;ka=u}else ka=C;u=(f[D>>2]|0)+1|0;f[D>>2]=u;if(u>>>0>999999999){q=D;C=ka}else{la=D;ma=ka;break}}}else{la=B;ma=ea}C=(z-ma>>2)*9|0;q=f[ma>>2]|0;if(q>>>0<10){na=la;oa=C;pa=ma}else{D=C;C=10;while(1){C=C*10|0;u=D+1|0;if(q>>>0<C>>>0){na=la;oa=u;pa=ma;break}else D=u}}}else{na=B;oa=ga;pa=ea}}else{na=B;oa=ga;pa=ea}D=na+4|0;qa=oa;ra=fa>>>0>D>>>0?D:fa;sa=pa}else{qa=ga;ra=fa;sa=ea}D=0-qa|0;b:do if(ra>>>0>sa>>>0){C=ra;while(1){q=C+-4|0;if(f[q>>2]|0){ta=C;ua=1;break b}if(q>>>0>sa>>>0)C=q;else{ta=q;ua=0;break}}}else{ta=ra;ua=0}while(0);do if(K){B=F+((L^1)&1)|0;if((B|0)>(qa|0)&(qa|0)>-5){va=i+-1|0;wa=B+-1-qa|0}else{va=i+-2|0;wa=B+-1|0}if(!(g&8)){if(ua?(B=f[ta+-4>>2]|0,(B|0)!=0):0)if(!((B>>>0)%10|0)){C=0;U=10;while(1){U=U*10|0;T=C+1|0;if((B>>>0)%(U>>>0)|0|0){xa=T;break}else C=T}}else xa=0;else xa=9;C=((ta-z>>2)*9|0)+-9|0;if((va|32|0)==102){U=C-xa|0;B=(U|0)>0?U:0;ya=va;za=(wa|0)<(B|0)?wa:B;break}else{B=C+qa-xa|0;C=(B|0)>0?B:0;ya=va;za=(wa|0)<(C|0)?wa:C;break}}else{ya=va;za=wa}}else{ya=i;za=F}while(0);F=(za|0)!=0;z=F?1:g>>>3&1;L=(ya|32|0)==102;if(L){Aa=0;Ba=(qa|0)>0?qa:0}else{K=(qa|0)<0?D:qa;C=bi(K,((K|0)<0)<<31>>31,p)|0;K=p;if((K-C|0)<2){B=C;while(1){U=B+-1|0;b[U>>0]=48;if((K-U|0)<2)B=U;else{Ca=U;break}}}else Ca=C;b[Ca+-1>>0]=(qa>>31&2)+43;B=Ca+-2|0;b[B>>0]=ya;Aa=B;Ba=K-B|0}B=w+1+za+z+Ba|0;di(a,32,d,B,g);Yh(a,x,w);di(a,48,d,B,g^65536);if(L){D=sa>>>0>I>>>0?I:sa;U=m+9|0;T=U;q=m+8|0;u=D;do{S=bi(f[u>>2]|0,0,U)|0;if((u|0)==(D|0))if((S|0)==(U|0)){b[q>>0]=48;Da=q}else Da=S;else if(S>>>0>m>>>0){ov(m|0,48,S-n|0)|0;aa=S;while(1){W=aa+-1|0;if(W>>>0>m>>>0)aa=W;else{Da=W;break}}}else Da=S;Yh(a,Da,T-Da|0);u=u+4|0}while(u>>>0<=I>>>0);if(!((g&8|0)==0&(F^1)))Yh(a,17694,1);if(u>>>0<ta>>>0&(za|0)>0){I=za;T=u;while(1){q=bi(f[T>>2]|0,0,U)|0;if(q>>>0>m>>>0){ov(m|0,48,q-n|0)|0;D=q;while(1){L=D+-1|0;if(L>>>0>m>>>0)D=L;else{Ea=L;break}}}else Ea=q;Yh(a,Ea,(I|0)<9?I:9);T=T+4|0;D=I+-9|0;if(!(T>>>0<ta>>>0&(I|0)>9)){Fa=D;break}else I=D}}else Fa=za;di(a,48,Fa+9|0,9,0)}else{I=ua?ta:sa+4|0;if(sa>>>0<I>>>0&(za|0)>-1){T=m+9|0;U=(g&8|0)==0;u=T;F=0-n|0;D=m+8|0;S=za;L=sa;while(1){z=bi(f[L>>2]|0,0,T)|0;if((z|0)==(T|0)){b[D>>0]=48;Ga=D}else Ga=z;do if((L|0)==(sa|0)){z=Ga+1|0;Yh(a,Ga,1);if(U&(S|0)<1){Ha=z;break}Yh(a,17694,1);Ha=z}else{if(Ga>>>0<=m>>>0){Ha=Ga;break}ov(m|0,48,Ga+F|0)|0;z=Ga;while(1){K=z+-1|0;if(K>>>0>m>>>0)z=K;else{Ha=K;break}}}while(0);q=u-Ha|0;Yh(a,Ha,(S|0)>(q|0)?q:S);z=S-q|0;L=L+4|0;if(!(L>>>0<I>>>0&(z|0)>-1)){Ia=z;break}else S=z}}else Ia=za;di(a,48,Ia+18|0,18,0);Yh(a,Aa,p-Aa|0)}di(a,32,d,B,g^8192);A=B}while(0);t=j;return ((A|0)<(d|0)?d:A)|0}function gi(a){a=+a;var b=0;p[s>>3]=a;b=f[s>>2]|0;G=f[s+4>>2]|0;return b|0}function hi(a,b){a=+a;b=b|0;return +(+ii(a,b))}function ii(a,b){a=+a;b=b|0;var c=0,d=0,e=0,g=0.0,h=0.0,i=0,j=0.0;p[s>>3]=a;c=f[s>>2]|0;d=f[s+4>>2]|0;e=jv(c|0,d|0,52)|0;switch(e&2047){case 0:{if(a!=0.0){g=+ii(a*18446744073709551616.0,b);h=g;i=(f[b>>2]|0)+-64|0}else{h=a;i=0}f[b>>2]=i;j=h;break}case 2047:{j=a;break}default:{f[b>>2]=(e&2047)+-1022;f[s>>2]=c;f[s+4>>2]=d&-2146435073|1071644672;j=+p[s>>3]}}return +j}function ji(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;do if(a){if(c>>>0<128){b[a>>0]=c;e=1;break}d=(ki()|0)+188|0;if(!(f[f[d>>2]>>2]|0))if((c&-128|0)==57216){b[a>>0]=c;e=1;break}else{d=Jg()|0;f[d>>2]=84;e=-1;break}if(c>>>0<2048){b[a>>0]=c>>>6|192;b[a+1>>0]=c&63|128;e=2;break}if(c>>>0<55296|(c&-8192|0)==57344){b[a>>0]=c>>>12|224;b[a+1>>0]=c>>>6&63|128;b[a+2>>0]=c&63|128;e=3;break}if((c+-65536|0)>>>0<1048576){b[a>>0]=c>>>18|240;b[a+1>>0]=c>>>12&63|128;b[a+2>>0]=c>>>6&63|128;b[a+3>>0]=c&63|128;e=4;break}else{d=Jg()|0;f[d>>2]=84;e=-1;break}}else e=1;while(0);return e|0}function ki(){return Sg()|0}function li(){return Sg()|0}function mi(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0;d=0;while(1){if((h[4880+d>>0]|0)==(a|0)){e=4;break}g=d+1|0;if((g|0)==87){i=87;e=5;break}else d=g}if((e|0)==4)if(!d)j=4976;else{i=d;e=5}if((e|0)==5){e=4976;d=i;while(1){i=e;do{a=i;i=i+1|0}while((b[a>>0]|0)!=0);d=d+-1|0;if(!d){j=i;break}else e=i}}return ni(j,f[c+20>>2]|0)|0}function ni(a,b){a=a|0;b=b|0;return gh(a,b)|0}function oi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=t;t=t+16|0;g=e;f[g>>2]=d;d=pi(a,b,c,g)|0;t=e;return d|0}function pi(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=t;t=t+128|0;h=g+124|0;i=g;j=i;k=10684;l=j+124|0;do{f[j>>2]=f[k>>2];j=j+4|0;k=k+4|0}while((j|0)<(l|0));if((c+-1|0)>>>0>2147483646)if(!c){m=h;n=1;o=4}else{h=Jg()|0;f[h>>2]=75;p=-1}else{m=a;n=c;o=4}if((o|0)==4){o=-2-m|0;c=n>>>0>o>>>0?o:n;f[i+48>>2]=c;n=i+20|0;f[n>>2]=m;f[i+44>>2]=m;o=m+c|0;m=i+16|0;f[m>>2]=o;f[i+28>>2]=o;o=Wh(i,d,e)|0;if(!c)p=o;else{c=f[n>>2]|0;b[c+(((c|0)==(f[m>>2]|0))<<31>>31)>>0]=0;p=o}}t=g;return p|0}function qi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=a+20|0;e=f[d>>2]|0;g=(f[a+16>>2]|0)-e|0;a=g>>>0>c>>>0?c:g;mv(e|0,b|0,a|0)|0;f[d>>2]=(f[d>>2]|0)+a;return c|0}function ri(a){a=a|0;var b=0,c=0,d=0;b=(Yg(a)|0)+1|0;c=Ag(b)|0;if(!c)d=0;else d=mv(c|0,a|0,b|0)|0;return d|0}function si(a){a=a|0;if(ti(a)|0)Bg(a);return}function ti(a){a=a|0;return (a|0)!=10140&((a|0)!=0&(a|0)!=25200)&1|0}function ui(a,b){a=a|0;b=b|0;return Og(a)|0}function vi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;d=t;t=t+32|0;e=d;a:do if(!(ti(c)|0)){g=(c|0)!=0;h=0;i=0;do{j=1<<i&a;if(g&(j|0)==0)k=f[c+(i<<2)>>2]|0;else k=wi(i,(j|0)==0?25788:b)|0;h=h+((k|0)!=0&1)|0;f[e+(i<<2)>>2]=k;i=i+1|0}while((i|0)!=6);switch(h&2147483647|0){case 0:{l=25200;break a;break}case 1:{if((f[e>>2]|0)==10112){l=10140;break a}break}default:{}}l=c}else{i=0;do{if(1<<i&a|0){g=wi(i,b)|0;f[c+(i<<2)>>2]=g}i=i+1|0}while((i|0)!=6);l=c}while(0);t=d;return l|0}function wi(a,c){a=a|0;c=c|0;var d=0,e=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,u=0,v=0,w=0;d=t;t=t+272|0;e=d;g=d+256|0;do if(!(b[c>>0]|0)){h=Cb(17696)|0;if(h|0?b[h>>0]|0:0){i=h;break}h=Cb(6784+(a*12|0)|0)|0;if(h|0?b[h>>0]|0:0){i=h;break}h=Cb(17703)|0;if(h|0?b[h>>0]|0:0){i=h;break}i=17708}else i=c;while(0);c=0;a:while(1){switch(b[i+c>>0]|0){case 47:case 0:{j=c;break a;break}default:{}}c=c+1|0;if(c>>>0>=15){j=15;break}}c=b[i>>0]|0;if(c<<24>>24!=46?(b[i+j>>0]|0)==0:0)if(c<<24>>24==67){k=i;l=15}else{m=i;l=16}else{k=17708;l=15}if((l|0)==15)if(!(b[k+1>>0]|0)){n=k;l=18}else{m=k;l=16}b:do if((l|0)==16)if((Vg(m,17708)|0)!=0?(Vg(m,17716)|0)!=0:0){k=f[6327]|0;if(k|0){i=k;do{if(!(Vg(m,i+8|0)|0)){o=i;break b}i=f[i+24>>2]|0}while((i|0)!=0)}Ya(25312);i=f[6327]|0;c:do if(i|0){k=i;while(1){if(!(Vg(m,k+8|0)|0))break;c=f[k+24>>2]|0;if(!c)break c;else k=c}ib(25312);o=k;break b}while(0);d:do if(((f[6308]|0)==0?(i=Cb(17722)|0,(i|0)!=0):0)?(b[i>>0]|0)!=0:0){c=254-j|0;h=j+1|0;p=i;while(1){i=qh(p,58)|0;q=b[i>>0]|0;r=i-p+((q<<24>>24!=0)<<31>>31)|0;if(r>>>0<c>>>0){mv(e|0,p|0,r|0)|0;s=e+r|0;b[s>>0]=47;mv(s+1|0,m|0,j|0)|0;b[e+(h+r)>>0]=0;u=Za(e|0,g|0)|0;if(u|0)break;v=b[i>>0]|0}else v=q;p=i+(v<<24>>24!=0&1)|0;if(!(b[p>>0]|0)){l=41;break d}}p=Ag(28)|0;if(!p){xi(u,f[g>>2]|0)|0;l=41;break}else{f[p>>2]=u;f[p+4>>2]=f[g>>2];h=p+8|0;mv(h|0,m|0,j|0)|0;b[h+j>>0]=0;f[p+24>>2]=f[6327];f[6327]=p;w=p;break}}else l=41;while(0);if((l|0)==41){p=Ag(28)|0;if(!p)w=p;else{f[p>>2]=f[2528];f[p+4>>2]=f[2529];h=p+8|0;mv(h|0,m|0,j|0)|0;b[h+j>>0]=0;f[p+24>>2]=f[6327];f[6327]=p;w=p}}ib(25312);o=(a|0)==0&(w|0)==0?10112:w}else{n=m;l=18}while(0);do if((l|0)==18){if((a|0)==0?(b[n+1>>0]|0)==46:0){o=10112;break}o=0}while(0);t=d;return o|0}function xi(a,b){a=a|0;b=b|0;var c=0,d=0;c=t;t=t+16|0;d=c;f[d>>2]=a;f[d+4>>2]=b;b=Ig(hb(91,d|0)|0)|0;t=c;return b|0}function yi(){return}function zi(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;g=t;t=t+128|0;h=g;f[h>>2]=0;i=h+4|0;f[i>>2]=a;f[h+44>>2]=a;j=h+8|0;f[j>>2]=(a|0)<0?-1:a+2147483647|0;f[h+76>>2]=-1;yh(h,0);k=Eh(h,c,1,d,e)|0;if(b|0)f[b>>2]=a+((f[i>>2]|0)+(f[h+108>>2]|0)-(f[j>>2]|0));t=g;return k|0}function Ai(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return d|0}function Bi(a){a=a|0;return 0}function Ci(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(c|0){d=c;c=b;b=a;while(1){d=d+-1|0;f[b>>2]=f[c>>2];if(!d)break;else{c=c+4|0;b=b+4|0}}}return a|0}function Di(a,b){a=a|0;b=b|0;return Tg(a)|0}function Ei(a,b){a=a|0;b=b|0;return -1|0}function Fi(a){a=a|0;var b=0,c=0;b=(Gi()|0)+188|0;c=f[b>>2]|0;if(a|0)f[b>>2]=(a|0)==(-1|0)?25264:a;return ((c|0)==25264?-1:c)|0}function Gi(){return Sg()|0}function Hi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=zi(a,b,c,-1,-1)|0;return d|0}function Ii(a,b,c){a=a|0;b=b|0;c=c|0;Ji(a,b,c)|0;return a|0}function Ji(a,c,d){a=a|0;c=c|0;d=d|0;var e=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;e=c;a:do if(!((e^a)&3)){g=(d|0)!=0;if(g&(e&3|0)!=0){h=d;i=c;j=a;while(1){k=b[i>>0]|0;b[j>>0]=k;if(!(k<<24>>24)){l=j;m=h;break a}k=h+-1|0;n=i+1|0;o=j+1|0;p=(k|0)!=0;if(p&(n&3|0)!=0){h=k;i=n;j=o}else{q=k;r=n;s=o;t=p;break}}}else{q=d;r=c;s=a;t=g}if(t)if(!(b[r>>0]|0)){l=s;m=q}else{b:do if(q>>>0>3){j=s;i=r;h=q;while(1){p=f[i>>2]|0;if((p&-2139062144^-2139062144)&p+-16843009|0){u=i;v=j;w=h;break b}f[j>>2]=p;p=h+-4|0;o=i+4|0;n=j+4|0;if(p>>>0>3){j=n;i=o;h=p}else{u=o;v=n;w=p;break}}}else{u=r;v=s;w=q}while(0);x=u;y=v;z=w;A=13}else{l=s;m=0}}else{x=c;y=a;z=d;A=13}while(0);c:do if((A|0)==13)if(!z){l=y;m=0}else{d=x;a=y;c=z;while(1){s=b[d>>0]|0;b[a>>0]=s;if(!(s<<24>>24)){l=a;m=c;break c}c=c+-1|0;s=a+1|0;if(!c){l=s;m=0;break}else{d=d+1|0;a=s}}}while(0);ov(l|0,0,m|0)|0;return l|0}function Ki(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=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,ka=0,la=0,ma=0,na=0,oa=0;g=f[c>>2]|0;if((e|0)!=0?(i=f[e>>2]|0,(i|0)!=0):0)if(!a){j=i;k=g;l=d;m=26}else{f[e>>2]=0;n=i;o=a;p=d;q=g;m=48}else m=5;a:do if((m|0)==5){i=(Li()|0)+188|0;e=(a|0)!=0;if(f[f[i>>2]>>2]|0)if(e){r=a;s=d;t=g;m=33;break}else{u=d;v=g;m=15;break}if(!e){w=Yg(g)|0;m=63;break}b:do if(!d)x=g;else{e=a;i=d;y=g;while(1){z=b[y>>0]|0;if(!(z<<24>>24))break;A=y+1|0;f[e>>2]=z<<24>>24&57343;z=i+-1|0;if(!z){x=A;break b}else{e=e+4|0;i=z;y=A}}f[e>>2]=0;f[c>>2]=0;w=d-i|0;m=63;break a}while(0);f[c>>2]=x;w=d;m=63}while(0);c:while(1){d:do if((m|0)==15){m=0;x=u;g=v;while(1){y=b[g>>0]|0;if(((y&255)+-1|0)>>>0<127?(g&3|0)==0:0){A=f[g>>2]|0;z=A&255;if(!((A+-16843009|A)&-2139062144)){A=g;B=x;do{A=A+4|0;B=B+-4|0;C=f[A>>2]|0}while(!((C+-16843009|C)&-2139062144|0));D=A;E=B;F=C&255}else{D=g;E=x;F=z}}else{D=g;E=x;F=y}G=F&255;if((G+-1|0)>>>0>=127)break;x=E+-1|0;g=D+1|0}g=G+-194|0;if(g>>>0>50){H=D;I=a;J=E;m=57}else{j=f[48+(g<<2)>>2]|0;k=D+1|0;l=E;m=26;continue c}}else if((m|0)==26){m=0;g=(h[k>>0]|0)>>>3;if((g+-16|g+(j>>26))>>>0>7){K=a;L=j;M=k;N=l;m=56}else{g=k+1|0;if(j&33554432){if((b[g>>0]&-64)<<24>>24!=-128){K=a;L=j;M=k;N=l;m=56;break}x=k+2|0;if(!(j&524288))O=x;else{if((b[x>>0]&-64)<<24>>24!=-128){K=a;L=j;M=k;N=l;m=56;break}O=k+3|0}}else O=g;u=l+-1|0;v=O;m=15;continue c}}else if((m|0)==33){m=0;e:do if(!s)P=t;else{g=r;x=s;i=t;while(1){e=h[i>>0]|0;Q=e+-1|0;if(Q>>>0<127)if((i&3|0)==0&x>>>0>4){R=g;S=x;T=i;while(1){U=f[T>>2]|0;if((U+-16843009|U)&-2139062144|0){m=42;break}f[R>>2]=U&255;f[R+4>>2]=h[T+1>>0];f[R+8>>2]=h[T+2>>0];V=T+4|0;W=R+16|0;f[R+12>>2]=h[T+3>>0];X=S+-4|0;if(X>>>0>4){R=W;S=X;T=V}else{m=41;break}}if((m|0)==41){m=0;Y=W;Z=X;_=V;$=b[V>>0]|0}else if((m|0)==42){m=0;Y=R;Z=S;_=T;$=U&255}aa=$&255;ba=Y;ca=Z;da=_;ea=aa+-1|0;fa=aa;m=44}else{ga=g;ha=x;ia=i;ja=e}else{ba=g;ca=x;da=i;ea=Q;fa=e;m=44}if((m|0)==44){m=0;if(ea>>>0<127){ga=ba;ha=ca;ia=da;ja=fa}else break}aa=ia+1|0;f[ga>>2]=ja;x=ha+-1|0;if(!x){P=aa;break e}else{g=ga+4|0;i=aa}}i=fa+-194|0;if(i>>>0>50){H=da;I=ba;J=ca;m=57;break d}n=f[48+(i<<2)>>2]|0;o=ba;p=ca;q=da+1|0;m=48;continue c}while(0);f[c>>2]=P;w=d;m=63;continue c}else if((m|0)==48){m=0;i=h[q>>0]|0;g=i>>>3;if((g+-16|g+(n>>26))>>>0>7){K=o;L=n;M=q;N=p;m=56}else{g=q+1|0;x=i+-128|n<<6;do if((x|0)<0){i=(h[g>>0]|0)+-128|0;if(i>>>0<=63){y=q+2|0;z=i|x<<6;if((z|0)>=0){ka=y;la=z;break}i=(h[y>>0]|0)+-128|0;if(i>>>0<=63){ka=q+3|0;la=i|z<<6;break}}z=Jg()|0;f[z>>2]=84;ma=q+-1|0;break d}else{ka=g;la=x}while(0);f[o>>2]=la;r=o+4|0;s=p+-1|0;t=ka;m=33;continue c}}else if((m|0)==63){m=0;return w|0}while(0);if((m|0)==56){m=0;x=M+-1|0;if(!L){H=x;I=K;J=N;m=57}else{na=x;oa=K;m=61}}if((m|0)==57){m=0;if(!(b[H>>0]|0)){if(I|0){f[I>>2]=0;f[c>>2]=0}w=d-J|0;m=63;continue}else{na=H;oa=I;m=61}}if((m|0)==61){m=0;x=Jg()|0;f[x>>2]=84;if(!oa){w=-1;m=63;continue}else ma=na}f[c>>2]=ma;w=-1;m=63}return 0}function Li(){return Sg()|0}function Mi(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=Hi(a,b,c)|0;return d|0}function Ni(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=Oi(a,b,c)|0;return d|0}function Oi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=zi(a,b,c,0,-2147483648)|0;return d|0}function Pi(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=t;t=t+16|0;e=d;f[e>>2]=f[c>>2];g=pi(0,0,b,e)|0;if((g|0)>=0?(e=g+1|0,g=Ag(e)|0,f[a>>2]=g,(g|0)!=0):0)h=pi(g,e,b,c)|0;else h=-1;t=d;return h|0}function Qi(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|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,u=0,v=0,w=0,x=0,y=0,z=0;e=t;t=t+16|0;g=e;a:do if(!a){h=f[c>>2]|0;i=f[h>>2]|0;if(!i)j=0;else{k=h;h=0;l=i;while(1){if(l>>>0>127){i=ji(g,l,0)|0;if((i|0)==-1){j=-1;break a}else m=i}else m=1;i=m+h|0;k=k+4|0;l=f[k>>2]|0;if(!l){j=i;break}else h=i}}}else{b:do if(d>>>0>3){h=a;l=d;k=f[c>>2]|0;while(1){i=f[k>>2]|0;if((i+-1|0)>>>0>126){if(!i)break;n=ji(h,i,0)|0;if((n|0)==-1){j=-1;break a}o=h+n|0;p=l-n|0;q=k}else{b[h>>0]=i;o=h+1|0;p=l+-1|0;q=f[c>>2]|0}k=q+4|0;f[c>>2]=k;if(p>>>0<=3){r=o;s=p;break b}else{h=o;l=p}}b[h>>0]=0;f[c>>2]=0;j=d-l|0;break a}else{r=a;s=d}while(0);if(s){k=r;i=s;n=f[c>>2]|0;while(1){u=f[n>>2]|0;if((u+-1|0)>>>0>126){if(!u){v=20;break}w=ji(g,u,0)|0;if((w|0)==-1){j=-1;break a}if(i>>>0<w>>>0){v=23;break}ji(k,f[n>>2]|0,0)|0;x=k+w|0;y=i-w|0;z=n}else{b[k>>0]=u;x=k+1|0;y=i+-1|0;z=f[c>>2]|0}n=z+4|0;f[c>>2]=n;if(!y){j=d;break a}else{k=x;i=y}}if((v|0)==20){b[k>>0]=0;f[c>>2]=0;j=d-i|0;break}else if((v|0)==23){j=d-i|0;break}}else j=d}while(0);t=e;return j|0}function Ri(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0;if((f[c+76>>2]|0)>=0?(ch(c)|0)!=0:0){d=a&255;e=a&255;if((e|0)!=(b[c+75>>0]|0)?(g=c+20|0,h=f[g>>2]|0,h>>>0<(f[c+16>>2]|0)>>>0):0){f[g>>2]=h+1;b[h>>0]=d;i=e}else i=dh(c,a)|0;ah(c);j=i}else k=3;do if((k|0)==3){i=a&255;e=a&255;if((e|0)!=(b[c+75>>0]|0)?(d=c+20|0,h=f[d>>2]|0,h>>>0<(f[c+16>>2]|0)>>>0):0){f[d>>2]=h+1;b[h>>0]=i;j=e;break}j=dh(c,a)|0}while(0);return j|0}function Si(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;g=t;t=t+1040|0;h=g;i=g+1024|0;j=f[b>>2]|0;f[i>>2]=j;k=(a|0)!=0;l=k?d:256;d=k?a:h;a=j;a:do if((l|0)!=0&(j|0)!=0){m=0;n=c;o=l;p=d;q=a;while(1){r=n>>>2;s=r>>>0>=o>>>0;if(!(n>>>0>131|s)){u=m;v=n;w=p;x=o;y=q;break a}z=s?o:r;A=n-z|0;r=Ki(p,i,z,e)|0;if((r|0)==-1)break;z=(p|0)==(h|0);s=o-(z?0:r)|0;B=z?p:p+(r<<2)|0;z=r+m|0;r=f[i>>2]|0;if((s|0)!=0&(r|0)!=0){m=z;n=A;o=s;p=B;q=r}else{u=z;v=A;w=B;x=s;y=r;break a}}u=-1;v=A;w=p;x=0;y=f[i>>2]|0}else{u=0;v=c;w=d;x=l;y=a}while(0);b:do if((y|0)!=0?(x|0)!=0&(v|0)!=0:0){a=u;l=v;d=w;c=x;A=y;while(1){C=Ch(d,A,l,e)|0;if((C+2|0)>>>0<3)break;A=(f[i>>2]|0)+C|0;f[i>>2]=A;l=l-C|0;c=c+-1|0;h=a+1|0;if(!((c|0)!=0&(l|0)!=0)){D=h;break b}else{a=h;d=d+4|0}}switch(C|0){case -1:{D=C;break b;break}case 0:{f[i>>2]=0;D=a;break b;break}default:{f[e>>2]=0;D=a;break b}}}else D=u;while(0);if(k)f[b>>2]=f[i>>2];t=g;return D|0}function Ti(a,b){a=a|0;b=b|0;return +(+Ui(a,b,0))}function Ui(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0.0;d=t;t=t+128|0;e=d;g=e;h=g+124|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));g=e+4|0;f[g>>2]=a;h=e+8|0;f[h>>2]=-1;f[e+44>>2]=a;f[e+76>>2]=-1;yh(e,0);i=+Fh(e,c,1);c=(f[g>>2]|0)-(f[h>>2]|0)+(f[e+108>>2]|0)|0;if(b|0)f[b>>2]=(c|0)==0?a:a+c|0;t=d;return +i}function Vi(a,b){a=a|0;b=b|0;return +(+Ui(a,b,1))}function Wi(a,b){a=a|0;b=b|0;return +(+Ui(a,b,2))}function Xi(a,b,c){a=a|0;b=b|0;c=c|0;return +(+Ti(a,b))}function Yi(a,b,c){a=a|0;b=b|0;c=c|0;return +(+Vi(a,b))}function Zi(a,b,c){a=a|0;b=b|0;c=c|0;return +(+Wi(a,b))}function _i(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(c|0){d=c;c=a;while(1){d=d+-1|0;f[c>>2]=b;if(!d)break;else c=c+4|0}}return a|0}function $i(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0;e=ci(a)|0;a=Yg(e)|0;if(a>>>0>=d>>>0){f=d+-1|0;if(!d)g=34;else{mv(c|0,e|0,f|0)|0;b[c+f>>0]=0;g=34}}else{mv(c|0,e|0,a+1|0)|0;g=0}return g|0}function aj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;if(a-b>>2>>>0>=c>>>0){if(c|0){d=b;e=a;g=c;while(1){g=g+-1|0;f[e>>2]=f[d>>2];if(!g)break;else{d=d+4|0;e=e+4|0}}}}else{e=c;do{e=e+-1|0;f[a+(e<<2)>>2]=f[b+(e<<2)>>2]}while((e|0)!=0)}return a|0}function bj(a,b,c){a=a|0;b=b|0;c=c|0;return Ch(0,a,b,(c|0)==0?25320:c)|0}function cj(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;e=t;t=t+272|0;g=e;h=e+256|0;i=f[b>>2]|0;f[h>>2]=i;j=(a|0)!=0;k=j?d:256;d=j?a:g;a=i;a:do if((k|0)!=0&(i|0)!=0){l=0;m=c;n=k;o=d;p=a;while(1){q=m>>>0>=n>>>0;if(!(q|m>>>0>32)){r=l;s=m;u=o;v=n;w=p;break a}x=q?n:m;y=m-x|0;q=Qi(o,h,x,0)|0;if((q|0)==-1)break;x=(o|0)==(g|0);z=n-(x?0:q)|0;A=x?o:o+q|0;x=q+l|0;q=f[h>>2]|0;if((z|0)!=0&(q|0)!=0){l=x;m=y;n=z;o=A;p=q}else{r=x;s=y;u=A;v=z;w=q;break a}}r=-1;s=y;u=o;v=0;w=f[h>>2]|0}else{r=0;s=c;u=d;v=k;w=a}while(0);b:do if((w|0)!=0?(v|0)!=0&(s|0)!=0:0){a=r;k=s;d=u;c=v;y=w;while(1){B=ji(d,f[y>>2]|0,0)|0;if((B+1|0)>>>0<2)break;y=(f[h>>2]|0)+4|0;f[h>>2]=y;k=k+-1|0;c=c-B|0;g=B+a|0;if(!((c|0)!=0&(k|0)!=0)){C=g;break b}else{a=g;d=d+B|0}}if(!B){f[h>>2]=0;C=a}else C=-1}else C=r;while(0);if(j)f[b>>2]=f[h>>2];t=e;return C|0}function dj(a){a=a|0;ej(a);return}function ej(a){a=a|0;var b=0;f[a>>2]=10816;v=0;ta(71,a|0,0);b=v;v=0;if(b&1){b=Sa(0)|0;pd(b)}else{Ck(a+28|0);Bg(f[a+32>>2]|0);Bg(f[a+36>>2]|0);Bg(f[a+48>>2]|0);Bg(f[a+60>>2]|0);return}}function fj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=a+32|0;d=a+36|0;e=f[a+40>>2]|0;while(1){if(!e)break;g=e+-1|0;Wc[f[(f[c>>2]|0)+(g<<2)>>2]&31](b,a,f[(f[d>>2]|0)+(g<<2)>>2]|0);e=g}return}function gj(a){a=a|0;ej(a);Ns(a);return}function hj(a){a=a|0;f[a>>2]=10832;Ck(a+4|0);return}function ij(a){a=a|0;hj(a);Ns(a);return}function jj(a,b){a=a|0;b=b|0;return}function kj(a,b,c){a=a|0;b=b|0;c=c|0;return a|0}function lj(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;g=a;f[g>>2]=0;f[g+4>>2]=0;g=a+8|0;f[g>>2]=-1;f[g+4>>2]=-1;return}function mj(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=a;f[d>>2]=0;f[d+4>>2]=0;d=a+8|0;f[d>>2]=-1;f[d+4>>2]=-1;return}function nj(a){a=a|0;return 0}function oj(a){a=a|0;return 0}function pj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;vj()|0;e=a+12|0;g=a+16|0;h=c;c=0;while(1){if((c|0)>=(d|0))break;i=f[e>>2]|0;j=f[g>>2]|0;if(i>>>0<j>>>0){k=j-i|0;j=d-c|0;l=(j|0)<(k|0)?j:k;xj(h,i,l)|0;f[e>>2]=(f[e>>2]|0)+l;m=h+l|0;n=l}else{l=Gc[f[(f[a>>2]|0)+40>>2]&127](a)|0;if((l|0)==-1)break;i=yj(l)|0;b[h>>0]=i;m=h+1|0;n=1}h=m;c=n+c|0}return c|0}function qj(a){a=a|0;return vj()|0}function rj(a){a=a|0;var c=0,d=0;c=Gc[f[(f[a>>2]|0)+36>>2]&127](a)|0;if((c|0)==(vj()|0))d=vj()|0;else{c=a+12|0;a=f[c>>2]|0;f[c>>2]=a+1;d=wj(b[a>>0]|0)|0}return d|0}function sj(a,b){a=a|0;b=b|0;return vj()|0}function tj(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=vj()|0;g=a+24|0;h=a+28|0;i=c;c=0;while(1){if((c|0)>=(d|0))break;j=f[g>>2]|0;k=f[h>>2]|0;if(j>>>0<k>>>0){l=k-j|0;k=d-c|0;m=(k|0)<(l|0)?k:l;xj(j,i,m)|0;f[g>>2]=(f[g>>2]|0)+m;n=i+m|0;o=m+c|0}else{m=f[(f[a>>2]|0)+52>>2]|0;j=wj(b[i>>0]|0)|0;if((Hc[m&31](a,j)|0)==(e|0))break;n=i+1|0;o=c+1|0}i=n;c=o}return c|0}function uj(a,b){a=a|0;b=b|0;return vj()|0}function vj(){return -1}function wj(a){a=a|0;return a&255|0}function xj(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)mv(a|0,b|0,c|0)|0;return a|0}function yj(a){a=a|0;return a&255|0}function zj(){return -1}function Aj(a){a=a|0;return a|0}function Bj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)d=a;else{Ci(a,b,c)|0;d=a}return d|0}function Cj(a){a=a|0;Gj(a,10928);dj(a+4|0);return}function Dj(a){a=a|0;Cj(a);Ns(a);return}function Ej(a){a=a|0;Cj(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function Fj(a){a=a|0;Dj(a+(f[(f[a>>2]|0)+-12>>2]|0)|0);return}function Gj(a,b){a=a|0;b=b|0;return}function Hj(a){a=a|0;Ns(a);return}function Ij(a){a=a|0;return 17927}function Jj(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)!=1&(c|0)<257)Ht(a,b,c);else{f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;Ys(a,17891,Kj(17891)|0)}return}function Kj(a){a=a|0;return Yg(a)|0}function Lj(a){a=a|0;Kt(a);return}function Mj(a){a=a|0;Lj(a);Ns(a);return}function Nj(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0;c=t;t=t+16|0;d=c;e=(f[a+24>>2]|0)==0;f[a+16>>2]=e&1|b;if(!(f[a+20>>2]&(e&1|b))){t=c;return}c=Na(16)|0;Oj()|0;f[d>>2]=1;f[d+4>>2]=10992;v=0;ua(20,c|0,17992,d|0);d=v;v=0;if(d&1){d=Ra()|0;b=G;Ta(c|0);g=d;h=b}else{v=0;ua(11,c|0,7864,60);v=0;c=Ra()|0;g=c;h=G}_a(g|0)}function Oj(){(b[23824]|0)==0?Wu(23824)|0:0;return 10992}function Pj(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;d=t;t=t+16|0;e=d+8|0;g=d;h=c;c=f[h+4>>2]|0;i=g;f[i>>2]=f[h>>2];f[i+4>>2]=c;f[e>>2]=f[g>>2];f[e+4>>2]=f[g+4>>2];Ot(a,e,b);f[a>>2]=10980;t=d;return}function Qj(a,b){a=a|0;b=b|0;var c=0;f[a+24>>2]=b;f[a+16>>2]=(b|0)==0&1;f[a+20>>2]=0;f[a+4>>2]=4098;f[a+12>>2]=0;f[a+8>>2]=6;b=a+28|0;c=a+32|0;a=c+40|0;do{f[c>>2]=0;c=c+4|0}while((c|0)<(a|0));Hs(b);return}function Rj(a,b){a=a|0;b=b|0;return (a|0)==(b|0)|0}function Sj(a,b){a=a|0;b=b|0;Fs(a,b+28|0);return}function Tj(a,b){a=a|0;b=b|0;return (a|0)==(b|0)|0}function Uj(a){a=a|0;var b=0;f[a>>2]=10832;Hs(a+4|0);b=a+8|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;f[b+12>>2]=0;f[b+16>>2]=0;f[b+20>>2]=0;return}function Vj(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=t;t=t+16|0;d=c;a:do if(f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0){v=0;ta(61,d|0,a|0);e=v;v=0;b:do if(e&1){g=Sa(0)|0;h=g}else{do if(b[d>>0]|0){g=f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0;v=0;i=ea(f[(f[g>>2]|0)+24>>2]|0,g|0)|0;g=v;v=0;if(!(g&1)){if((i|0)!=-1)break;i=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;v=0;ta(62,i|0,f[i+16>>2]|1|0);i=v;v=0;if(!(i&1))break}i=Sa(0)|0;Xj(d);h=i;break b}while(0);Xj(d);break a}while(0);Oa(h|0)|0;v=0;sa(145,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);e=v;v=0;if(!(e&1)){Pa();break}e=Ra()|0;v=0;ra(2);i=v;v=0;if(i&1){i=Sa(0)|0;pd(i)}else _a(e|0)}while(0);t=c;return a|0}function Wj(a,c){a=a|0;c=c|0;var d=0;b[a>>0]=0;f[a+4>>2]=c;d=c+(f[(f[c>>2]|0)+-12>>2]|0)|0;if(!(f[d+16>>2]|0)){c=f[d+72>>2]|0;if(c|0)Vj(c)|0;b[a>>0]=1}return}function Xj(a){a=a|0;var b=0,c=0,d=0;b=a+4|0;a=f[b>>2]|0;c=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;do if(((f[c+24>>2]|0?(f[c+16>>2]|0)==0:0)?f[c+4>>2]&8192|0:0)?!(Rt()|0):0){a=f[b>>2]|0;d=f[a+(f[(f[a>>2]|0)+-12>>2]|0)+24>>2]|0;v=0;a=ea(f[(f[d>>2]|0)+24>>2]|0,d|0)|0;d=v;v=0;if(!(d&1)){if((a|0)!=-1)break;a=f[b>>2]|0;d=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;v=0;ta(62,d|0,f[d+16>>2]|1|0);d=v;v=0;if(!(d&1))break}d=Sa(0)|0;Oa(d|0)|0;v=0;ra(2);d=v;v=0;if(d&1){d=Sa(0)|0;pd(d)}}while(0);return}function Yj(a){a=a|0;var b=0;b=a+16|0;f[b>>2]=f[b>>2]|1;if(!(f[a+20>>2]&1))return;else Ua()}function Zj(a,c){a=a|0;c=c|0;var d=0,e=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,u=0,w=0,x=0,y=0,z=0,A=0;d=t;t=t+16|0;e=d+12|0;g=d+8|0;h=d;v=0;ta(61,h|0,a|0);i=v;v=0;a:do if(i&1){j=Sa(0)|0;k=j;l=a;m=a;n=20}else{b:do if(b[h>>0]|0){Sj(e,a+(f[(f[a>>2]|0)+-12>>2]|0)|0);v=0;j=fa(24,e|0,25396)|0;o=v;v=0;c:do if(o&1){p=Sa(0)|0;Ck(e);q=p}else{Ck(e);p=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;r=f[p+24>>2]|0;s=vj()|0;u=p+76|0;do if(Rj(s,f[u>>2]|0)|0){Sj(e,p);v=0;w=fa(24,e|0,25340)|0;x=v;v=0;if(!(x&1)?(v=0,x=fa(f[(f[w>>2]|0)+28>>2]|0,w|0,32)|0,w=v,v=0,!(w&1)):0){Ck(e);w=x<<24>>24;f[u>>2]=w;y=p;z=w;n=10;break}w=Sa(0)|0;Ck(e);A=w}else{y=p;z=f[u>>2]|0;n=10}while(0);do if((n|0)==10){u=f[(f[j>>2]|0)+24>>2]|0;f[g>>2]=r;v=0;f[e>>2]=f[g>>2];p=ja(u|0,j|0,e|0,y|0,z&255|0,c|0)|0;u=v;v=0;if(u&1){u=Sa(0)|0;A=u;break}if(p|0)break b;p=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;v=0;ta(62,p|0,f[p+16>>2]|5|0);p=v;v=0;if(!(p&1))break b;p=Sa(0)|0;q=p;break c}while(0);q=A}while(0);Xj(h);k=q;l=a;m=a;n=20;break a}while(0);Xj(h)}while(0);do if((n|0)==20){Oa(k|0)|0;v=0;sa(145,m+(f[(f[l>>2]|0)+-12>>2]|0)|0);h=v;v=0;if(!(h&1)){Pa();break}h=Ra()|0;v=0;ra(2);q=v;v=0;if(q&1){q=Sa(0)|0;pd(q)}else _a(h|0)}while(0);t=d;return a|0}function _j(a){a=a|0;gk(a);return}function $j(a){a=a|0;_j(a);Ns(a);return}function ak(a){a=a|0;if(a|0)Uc[f[(f[a>>2]|0)+4>>2]&255](a);return}function bk(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;a=e;e=c;while(1){if((a|0)==(f|0)){g=7;break}if((e|0)==(d|0)){h=-1;break}c=b[e>>0]|0;i=b[a>>0]|0;if(c<<24>>24<i<<24>>24){h=-1;break}if(i<<24>>24<c<<24>>24){h=1;break}a=a+1|0;e=e+1|0}if((g|0)==7)h=(e|0)!=(d|0)&1;return h|0}function ck(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;ek(a,c,d);return}function dk(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0;a=0;e=c;while(1){if((e|0)==(d|0))break;c=(a<<4)+(b[e>>0]|0)|0;f=c&-268435456;a=(f>>>24|f)^c;e=e+1|0}return a|0}function ek(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;e=t;t=t+16|0;g=c;h=e;i=d-g|0;if(i>>>0>4294967279)Vs(a);if(i>>>0<11){b[a+11>>0]=i;j=a}else{k=i+16&-16;l=Ms(k)|0;f[a>>2]=l;f[a+8>>2]=k|-2147483648;f[a+4>>2]=i;j=l}l=d-g|0;g=c;c=j;while(1){if((g|0)==(d|0))break;fk(c,g);g=g+1|0;c=c+1|0}b[h>>0]=0;fk(j+l|0,h);t=e;return}function fk(a,c){a=a|0;c=c|0;b[a>>0]=b[c>>0]|0;return}function gk(a){a=a|0;return}function hk(a){a=a|0;gk(a);return}function ik(a){a=a|0;hk(a);Ns(a);return}function jk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;a=d;d=b;while(1){if((a|0)==(e|0)){g=7;break}if((d|0)==(c|0)){h=-1;break}b=f[d>>2]|0;i=f[a>>2]|0;if((b|0)<(i|0)){h=-1;break}if((i|0)<(b|0)){h=1;break}a=a+4|0;d=d+4|0}if((g|0)==7)h=(d|0)!=(c|0)&1;return h|0}function kk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;mk(a,c,d);return}function lk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=0;d=b;while(1){if((d|0)==(c|0))break;b=(f[d>>2]|0)+(a<<4)|0;e=b&-268435456;a=(e>>>24|e)^b;d=d+4|0}return a|0}function mk(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;e=t;t=t+16|0;g=e;h=d-c>>2;if(h>>>0>1073741807)Vs(a);do if(h>>>0>=2){i=h+4&-4;if(i>>>0<=1073741823){j=Ms(i<<2)|0;f[a>>2]=j;f[a+8>>2]=i|-2147483648;f[a+4>>2]=h;k=j;break}j=Na(8)|0;v=0;ta(57,j|0,20286);i=v;v=0;if(i&1){i=Ra()|0;Ta(j|0);_a(i|0)}else{f[j>>2]=13812;Va(j|0,9184,130)}}else{b[a+8+3>>0]=h;k=a}while(0);a=c;c=k;while(1){if((a|0)==(d|0))break;nk(c,a);a=a+4|0;c=c+4|0}f[g>>2]=0;nk(c,g);t=e;return}function nk(a,b){a=a|0;b=b|0;f[a>>2]=f[b>>2];return}function ok(a){a=a|0;gk(a);return}function pk(a){a=a|0;gk(a);Ns(a);return}function qk(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;i=t;t=t+48|0;j=i+40|0;k=i;l=i+32|0;m=i+36|0;n=i+28|0;o=i+24|0;a:do if(!(f[e+4>>2]&1)){f[l>>2]=-1;p=f[(f[a>>2]|0)+16>>2]|0;f[m>>2]=f[c>>2];f[n>>2]=f[d>>2];f[k>>2]=f[m>>2];f[j>>2]=f[n>>2];q=Nc[p&63](a,k,j,e,g,l)|0;f[c>>2]=q;switch(f[l>>2]|0){case 0:{b[h>>0]=0;break}case 1:{b[h>>0]=1;break}default:{b[h>>0]=1;f[g>>2]=4}}r=f[c>>2]|0}else{Sj(j,e);v=0;q=fa(24,j|0,25340)|0;p=v;v=0;do if(p&1){s=Ra()|0;u=G;Ck(j);w=s;x=u}else{Ck(j);Sj(j,e);v=0;u=fa(24,j|0,25356)|0;s=v;v=0;if(s&1){s=Ra()|0;y=G;Ck(j);w=s;x=y;break}Ck(j);v=0;ta(f[(f[u>>2]|0)+24>>2]|0,k|0,u|0);y=v;v=0;b:do if(y&1){s=Ra()|0;z=s;A=G}else{v=0;ta(f[(f[u>>2]|0)+28>>2]|0,k+12|0,u|0);s=v;v=0;if(s&1){s=Ra()|0;B=G;$s(k);z=s;A=B;break}f[o>>2]=f[d>>2];B=k+24|0;v=0;f[j>>2]=f[o>>2];s=ma(7,c|0,j|0,k|0,B|0,q|0,g|0,1)|0;C=v;v=0;if(C&1){C=Ra()|0;D=G;E=B;while(1){E=E+-12|0;$s(E);if((E|0)==(k|0)){z=C;A=D;break b}}}b[h>>0]=(s|0)==(k|0)&1;D=f[c>>2]|0;C=B;do{C=C+-12|0;$s(C)}while((C|0)!=(k|0));r=D;break a}while(0);w=z;x=A}while(0);_a(w|0)}while(0);t=i;return r|0}function rk(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=il(a,j,i,d,e,g)|0;t=h;return l|0}function sk(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=gl(a,j,i,d,e,g)|0;t=h;return l|0}function tk(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=el(a,j,i,d,e,g)|0;t=h;return l|0}function uk(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=cl(a,j,i,d,e,g)|0;t=h;return l|0}function vk(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=al(a,j,i,d,e,g)|0;t=h;return l|0}function wk(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=Wk(a,j,i,d,e,g)|0;t=h;return l|0}function xk(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=Uk(a,j,i,d,e,g)|0;t=h;return l|0}function yk(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=Sk(a,j,i,d,e,g)|0;t=h;return l|0}function zk(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=Nk(a,j,i,d,e,g)|0;t=h;return l|0}function Ak(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;a=t;t=t+240|0;i=a+192|0;j=a+160|0;k=a+220|0;l=a+208|0;m=a+204|0;n=a;o=a+200|0;p=a+196|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;q=0;while(1){if((q|0)==3)break;f[k+(q<<2)>>2]=0;q=q+1|0}Sj(l,e);v=0;e=fa(24,l|0,25340)|0;q=v;v=0;if(!(q&1)?(v=0,ha(f[(f[e>>2]|0)+32>>2]|0,e|0,6864,6890,j|0)|0,e=v,v=0,!(e&1)):0){Ck(l);f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[l+(e<<2)>>2]=0;e=e+1|0}e=l+11|0;if((b[e>>0]|0)<0)r=(f[l+8>>2]&2147483647)+-1|0;else r=10;v=0;ua(12,l|0,r|0,0);r=v;v=0;if(r&1){r=Ra()|0;s=r;u=G}else{r=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=r;f[o>>2]=n;f[p>>2]=0;q=l+4|0;w=l+8|0;x=f[c>>2]|0;y=r;r=x;z=x;a:while(1){if(z){x=f[z+12>>2]|0;if((x|0)==(f[z+16>>2]|0)){v=0;A=ea(f[(f[z>>2]|0)+36>>2]|0,z|0)|0;B=v;v=0;if(B&1){C=35;break}else D=A}else D=wj(b[x>>0]|0)|0;if(Rj(D,vj()|0)|0){f[c>>2]=0;E=0;F=0;H=1}else{E=z;F=r;H=0}}else{E=0;F=0;H=1}x=f[d>>2]|0;do if(x){A=f[x+12>>2]|0;if((A|0)==(f[x+16>>2]|0)){v=0;B=ea(f[(f[x>>2]|0)+36>>2]|0,x|0)|0;I=v;v=0;if(I&1){C=35;break a}else J=B}else J=wj(b[A>>0]|0)|0;if(!(Rj(J,vj()|0)|0))if(H){K=x;break}else{L=y;M=x;C=47;break a}else{f[d>>2]=0;C=25;break}}else C=25;while(0);if((C|0)==25){C=0;if(H){L=y;M=0;C=47;break}else K=0}x=b[e>>0]|0;A=x<<24>>24<0?f[q>>2]|0:x&255;if((f[m>>2]|0)==(y+A|0)){v=0;ua(12,l|0,A<<1|0,0);x=v;v=0;if(x&1){C=37;break}if((b[e>>0]|0)<0)N=(f[w>>2]&2147483647)+-1|0;else N=10;v=0;ua(12,l|0,N|0,0);x=v;v=0;if(x&1){C=37;break}x=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=x+A;O=x}else O=y;x=E+12|0;A=f[x>>2]|0;B=E+16|0;if((A|0)==(f[B>>2]|0)){v=0;I=ea(f[(f[E>>2]|0)+36>>2]|0,E|0)|0;P=v;v=0;if(P&1){C=35;break}else Q=I}else Q=wj(b[A>>0]|0)|0;v=0;A=oa(1,Q&255|0,16,O|0,m|0,p|0,0,k|0,n|0,o|0,j|0)|0;I=v;v=0;if(I&1){C=35;break}if(A|0){L=O;M=K;C=47;break}A=f[x>>2]|0;if((A|0)==(f[B>>2]|0)){v=0;ea(f[(f[E>>2]|0)+40>>2]|0,E|0)|0;B=v;v=0;if(B&1){C=35;break}}else{f[x>>2]=A+1;wj(b[A>>0]|0)|0}y=O;r=F;z=E}if((C|0)==35){z=Ra()|0;R=z;S=G}else if((C|0)==37){z=Ra()|0;R=z;S=G}else if((C|0)==47){v=0;ua(12,l|0,(f[m>>2]|0)-L|0,0);L=v;v=0;b:do if((!(L&1)?(m=b[e>>0]|0,z=f[l>>2]|0,v=0,r=da(2)|0,O=v,v=0,!(O&1)):0)?(v=0,f[i>>2]=h,O=ha(6,(m<<24>>24<0?z:l)|0,r|0,18070,i|0)|0,r=v,v=0,!(r&1)):0){if((O|0)!=1)f[g>>2]=4;if(E){O=f[E+12>>2]|0;if((O|0)==(f[E+16>>2]|0)){v=0;r=ea(f[(f[F>>2]|0)+36>>2]|0,E|0)|0;z=v;v=0;if(z&1)break;else T=r}else T=wj(b[O>>0]|0)|0;if(Rj(T,vj()|0)|0){f[c>>2]=0;U=1}else U=0}else U=1;do if(M){O=f[M+12>>2]|0;if((O|0)==(f[M+16>>2]|0)){v=0;r=ea(f[(f[M>>2]|0)+36>>2]|0,M|0)|0;z=v;v=0;if(z&1)break b;else V=r}else V=wj(b[O>>0]|0)|0;if(!(Rj(V,vj()|0)|0))if(U)break;else{C=66;break}else{f[d>>2]=0;C=64;break}}else C=64;while(0);if((C|0)==64?U:0)C=66;if((C|0)==66)f[g>>2]=f[g>>2]|2;O=f[c>>2]|0;$s(l);$s(k);t=a;return O|0}while(0);a=Ra()|0;R=a;S=G}s=R;u=S}$s(l);W=s;X=u}else{u=Ra()|0;s=G;Ck(l);W=u;X=s}$s(k);_a(W|0);return 0}function Bk(a,b){a=a|0;b=b|0;var c=0;c=f[a>>2]|0;return Hk(c,Gk(b)|0)|0}function Ck(a){a=a|0;var b=0,c=0;b=f[a>>2]|0;a=b+4|0;c=f[a>>2]|0;f[a>>2]=c+-1;if(!c)Uc[f[(f[b>>2]|0)+8>>2]&255](b);return}function Dk(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|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=f[e>>2]|0;n=(m|0)==(d|0);do if(n){o=(b[l+24>>0]|0)==a<<24>>24;if(!o?(b[l+25>>0]|0)!=a<<24>>24:0){p=5;break}f[e>>2]=d+1;b[d>>0]=o?43:45;f[g>>2]=0;q=0}else p=5;while(0);a:do if((p|0)==5){o=b[i+11>>0]|0;if(a<<24>>24==h<<24>>24?((o<<24>>24<0?f[i+4>>2]|0:o&255)|0)!=0:0){o=f[k>>2]|0;if((o-j|0)>=160){q=0;break}r=f[g>>2]|0;f[k>>2]=o+4;f[o>>2]=r;f[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((b[s>>0]|0)==a<<24>>24){t=s;break}else o=o+1|0}o=t-l|0;if((o|0)>23)q=-1;else{switch(c|0){case 10:case 8:{if((o|0)>=(c|0)){q=-1;break a}break}case 16:{if((o|0)>=22){if(n){q=-1;break a}if((m-d|0)>=3){q=-1;break a}if((b[m+-1>>0]|0)!=48){q=-1;break a}f[g>>2]=0;r=b[6864+o>>0]|0;f[e>>2]=m+1;b[m>>0]=r;q=0;break a}break}default:{}}r=b[6864+o>>0]|0;f[e>>2]=m+1;b[m>>0]=r;f[g>>2]=(f[g>>2]|0)+1;q=0}}while(0);return q|0}function Ek(){var a=0;if((b[23832]|0)==0?Wu(23832)|0:0){a=vi(2147483647,18073,0)|0;f[6337]=a}return f[6337]|0}function Fk(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=t;t=t+16|0;g=e;f[g>>2]=d;d=Fi(b)|0;b=vh(a,c,g)|0;if(d|0)Fi(d)|0;t=e;return b|0}function Gk(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;b=t;t=t+48|0;c=b+32|0;d=b+24|0;e=b;g=b+16|0;f[g>>2]=149;f[g+4>>2]=0;f[c>>2]=f[g>>2];f[c+4>>2]=f[g+4>>2];Kk(e,c,a);if((f[a>>2]|0)!=-1){f[c>>2]=e;f[d>>2]=c;Ks(a,d,150)}t=b;return (f[a+4>>2]|0)+-1|0}function Hk(a,b){a=a|0;b=b|0;if(Ik(a,b)|0)return f[(f[a+8>>2]|0)+(b<<2)>>2]|0;else{b=Na(4)|0;Vu(b);Va(b|0,9216,136)}return 0}function Ik(a,b){a=a|0;b=b|0;var c=0,d=0;c=f[a+8>>2]|0;if((f[a+12>>2]|0)-c>>2>>>0>b>>>0)d=(f[c+(b<<2)>>2]|0)!=0;else d=0;return d|0}function Jk(a){a=a|0;var b=0;b=f[6338]|0;f[6338]=b+1;f[a+4>>2]=b+1;return}function Kk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=f[b>>2]|0;e=f[b+4>>2]|0;f[a>>2]=c;f[a+4>>2]=d;f[a+8>>2]=e;return}function Lk(a){a=a|0;Mk(f[f[a>>2]>>2]|0);return}function Mk(a){a=a|0;var b=0,c=0,d=0,e=0;b=f[a+4>>2]|0;c=f[a+8>>2]|0;d=(f[a>>2]|0)+(c>>1)|0;if(!(c&1))e=b;else e=f[(f[d>>2]|0)+b>>2]|0;Uc[e&255](d);return}function Nk(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;a=t;t=t+240|0;i=a+160|0;j=a+231|0;k=a+230|0;l=a+216|0;m=a+204|0;n=a+200|0;o=a;q=a+196|0;r=a+192|0;s=a+229|0;u=a+228|0;Ok(l,e,i,j,k);f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[m+(e<<2)>>2]=0;e=e+1|0}e=m+11|0;if((b[e>>0]|0)<0)w=(f[m+8>>2]&2147483647)+-1|0;else w=10;v=0;ua(12,m|0,w|0,0);w=v;v=0;if(w&1){w=Ra()|0;x=w;y=G}else{w=(b[e>>0]|0)<0?f[m>>2]|0:m;f[n>>2]=w;f[q>>2]=o;f[r>>2]=0;b[s>>0]=1;b[u>>0]=69;z=m+4|0;A=m+8|0;B=f[c>>2]|0;C=w;w=B;D=B;a:while(1){if(D){B=f[D+12>>2]|0;if((B|0)==(f[D+16>>2]|0)){v=0;E=ea(f[(f[D>>2]|0)+36>>2]|0,D|0)|0;F=v;v=0;if(F&1){H=29;break}else I=E}else I=wj(b[B>>0]|0)|0;if(Rj(I,vj()|0)|0){f[c>>2]=0;J=0;K=0;L=1}else{J=D;K=w;L=0}}else{J=0;K=0;L=1}B=f[d>>2]|0;do if(B){E=f[B+12>>2]|0;if((E|0)==(f[B+16>>2]|0)){v=0;F=ea(f[(f[B>>2]|0)+36>>2]|0,B|0)|0;M=v;v=0;if(M&1){H=29;break a}else N=F}else N=wj(b[E>>0]|0)|0;if(!(Rj(N,vj()|0)|0))if(L){O=B;break}else{P=C;Q=B;H=41;break a}else{f[d>>2]=0;H=20;break}}else H=20;while(0);if((H|0)==20){H=0;if(L){P=C;Q=0;H=41;break}else O=0}B=b[e>>0]|0;E=B<<24>>24<0?f[z>>2]|0:B&255;if((f[n>>2]|0)==(C+E|0)){v=0;ua(12,m|0,E<<1|0,0);B=v;v=0;if(B&1){H=31;break}if((b[e>>0]|0)<0)R=(f[A>>2]&2147483647)+-1|0;else R=10;v=0;ua(12,m|0,R|0,0);B=v;v=0;if(B&1){H=31;break}B=(b[e>>0]|0)<0?f[m>>2]|0:m;f[n>>2]=B+E;S=B}else S=C;B=J+12|0;E=f[B>>2]|0;F=J+16|0;if((E|0)==(f[F>>2]|0)){v=0;M=ea(f[(f[J>>2]|0)+36>>2]|0,J|0)|0;T=v;v=0;if(T&1){H=29;break}else U=M}else U=wj(b[E>>0]|0)|0;v=0;E=qa(1,U&255|0,s|0,u|0,S|0,n|0,b[j>>0]|0,b[k>>0]|0,l|0,o|0,q|0,r|0,i|0)|0;M=v;v=0;if(M&1){H=29;break}if(E|0){P=S;Q=O;H=41;break}E=f[B>>2]|0;if((E|0)==(f[F>>2]|0)){v=0;ea(f[(f[J>>2]|0)+40>>2]|0,J|0)|0;F=v;v=0;if(F&1){H=29;break}}else{f[B>>2]=E+1;wj(b[E>>0]|0)|0}C=S;w=K;D=J}if((H|0)==29){D=Ra()|0;V=D;W=G}else if((H|0)==31){D=Ra()|0;V=D;W=G}else if((H|0)==41){D=b[l+11>>0]|0;if(!((b[s>>0]|0)==0?1:((D<<24>>24<0?f[l+4>>2]|0:D&255)|0)==0)?(D=f[q>>2]|0,(D-o|0)<160):0){s=f[r>>2]|0;f[q>>2]=D+4;f[D>>2]=s}v=0;X=+ca(1,P|0,f[n>>2]|0,g|0);n=v;v=0;b:do if(!(n&1)?(p[h>>3]=X,v=0,va(8,l|0,o|0,f[q>>2]|0,g|0),P=v,v=0,!(P&1)):0){if(J){P=f[J+12>>2]|0;if((P|0)==(f[J+16>>2]|0)){v=0;s=ea(f[(f[K>>2]|0)+36>>2]|0,J|0)|0;D=v;v=0;if(D&1)break;else Y=s}else Y=wj(b[P>>0]|0)|0;if(Rj(Y,vj()|0)|0){f[c>>2]=0;Z=1}else Z=0}else Z=1;do if(Q){P=f[Q+12>>2]|0;if((P|0)==(f[Q+16>>2]|0)){v=0;s=ea(f[(f[Q>>2]|0)+36>>2]|0,Q|0)|0;D=v;v=0;if(D&1)break b;else _=s}else _=wj(b[P>>0]|0)|0;if(!(Rj(_,vj()|0)|0))if(Z)break;else{H=60;break}else{f[d>>2]=0;H=58;break}}else H=58;while(0);if((H|0)==58?Z:0)H=60;if((H|0)==60)f[g>>2]=f[g>>2]|2;P=f[c>>2]|0;$s(m);$s(l);t=a;return P|0}while(0);a=Ra()|0;V=a;W=G}x=V;y=W}$s(m);$s(l);_a(x|0);return 0}function Ok(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h;Sj(i,c);v=0;c=fa(24,i|0,25340)|0;j=v;v=0;if(!(j&1)?(v=0,ha(f[(f[c>>2]|0)+32>>2]|0,c|0,6864,6896,d|0)|0,d=v,v=0,!(d&1)):0){v=0;d=fa(24,i|0,25356)|0;c=v;v=0;if(((!(c&1)?(v=0,c=ea(f[(f[d>>2]|0)+12>>2]|0,d|0)|0,j=v,v=0,!(j&1)):0)?(b[e>>0]=c,v=0,c=ea(f[(f[d>>2]|0)+16>>2]|0,d|0)|0,e=v,v=0,!(e&1)):0)?(b[g>>0]=c,v=0,ta(f[(f[d>>2]|0)+20>>2]|0,a|0,d|0),d=v,v=0,!(d&1)):0){Ck(i);t=h;return}h=Ra()|0;k=h;l=G}else{h=Ra()|0;k=h;l=G}Ck(i);_a(k|0)}function Pk(a,c,d,e,g,h,i,j,k,l,m,n){a=a|0;c=c|0;d=d|0;e=e|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;a:do if(a<<24>>24==h<<24>>24)if(b[c>>0]|0){b[c>>0]=0;o=f[g>>2]|0;f[g>>2]=o+1;b[o>>0]=46;o=b[j+11>>0]|0;if(((o<<24>>24<0?f[j+4>>2]|0:o&255)|0)!=0?(o=f[l>>2]|0,(o-k|0)<160):0){p=f[m>>2]|0;f[l>>2]=o+4;f[o>>2]=p;q=0}else q=0}else q=-1;else{if(a<<24>>24==i<<24>>24?(p=b[j+11>>0]|0,(p<<24>>24<0?f[j+4>>2]|0:p&255)|0):0){if(!(b[c>>0]|0)){q=-1;break}p=f[l>>2]|0;if((p-k|0)>=160){q=0;break}o=f[m>>2]|0;f[l>>2]=p+4;f[p>>2]=o;f[m>>2]=0;q=0;break}o=n+32|0;p=0;while(1){r=n+p|0;if((p|0)==32){s=o;break}if((b[r>>0]|0)==a<<24>>24){s=r;break}else p=p+1|0}p=s-n|0;if((p|0)>31)q=-1;else{o=b[6864+p>>0]|0;switch(p|0){case 24:case 25:{r=f[g>>2]|0;if((r|0)!=(e|0)?(b[r+-1>>0]&95)!=(b[d>>0]&127):0){q=-1;break a}f[g>>2]=r+1;b[r>>0]=o;q=0;break a;break}case 23:case 22:{b[d>>0]=80;r=f[g>>2]|0;f[g>>2]=r+1;b[r>>0]=o;q=0;break a;break}default:{r=o&95;if((((r|0)==(b[d>>0]|0)?(b[d>>0]=r|128,b[c>>0]|0):0)?(b[c>>0]=0,r=b[j+11>>0]|0,(r<<24>>24<0?f[j+4>>2]|0:r&255)|0):0)?(r=f[l>>2]|0,(r-k|0)<160):0){t=f[m>>2]|0;f[l>>2]=r+4;f[r>>2]=t}t=f[g>>2]|0;f[g>>2]=t+1;b[t>>0]=o;if((p|0)>21){q=0;break a}f[m>>2]=(f[m>>2]|0)+1;q=0;break a}}}}while(0);return q|0}function Qk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0,h=0,i=0,j=0.0,k=0.0,l=0,m=0.0;d=t;t=t+16|0;e=d;if((a|0)==(b|0)){f[c>>2]=4;g=0.0}else{h=Jg()|0;i=f[h>>2]|0;h=Jg()|0;f[h>>2]=0;j=+Zi(a,e,Ek()|0);a=Jg()|0;h=f[a>>2]|0;if(!h){a=Jg()|0;f[a>>2]=i}if((f[e>>2]|0)==(b|0))if((h|0)==34){k=j;l=6}else m=j;else{k=0.0;l=6}if((l|0)==6){f[c>>2]=4;m=k}g=m}t=d;return +g}function Rk(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|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=a+11|0;h=b[g>>0]|0;i=a+4|0;j=f[i>>2]|0;k=h&255;do if((h<<24>>24<0?j:k)|0){if((c|0)==(d|0)){l=k;m=h;n=j}else{o=d;p=c;while(1){q=o+-4|0;if(p>>>0>=q>>>0)break;r=f[p>>2]|0;f[p>>2]=f[q>>2];f[q>>2]=r;o=q;p=p+4|0}p=b[g>>0]|0;l=p&255;m=p;n=f[i>>2]|0}p=m<<24>>24<0;o=p?f[a>>2]|0:a;q=d+-4|0;r=o+(p?n:l)|0;p=c;s=o;while(1){t=b[s>>0]|0;u=t<<24>>24>0&t<<24>>24!=127;if(p>>>0>=q>>>0)break;if(u?(f[p>>2]|0)!=(t<<24>>24|0):0){v=11;break}p=p+4|0;s=(r-s|0)>1?s+1|0:s}if((v|0)==11){f[e>>2]=4;break}if(u?((f[q>>2]|0)+-1|0)>>>0>=t<<24>>24>>>0:0)f[e>>2]=4}while(0);return}function Sk(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;a=t;t=t+240|0;i=a+160|0;j=a+231|0;k=a+230|0;l=a+216|0;m=a+204|0;n=a+200|0;o=a;q=a+196|0;r=a+192|0;s=a+229|0;u=a+228|0;Ok(l,e,i,j,k);f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[m+(e<<2)>>2]=0;e=e+1|0}e=m+11|0;if((b[e>>0]|0)<0)w=(f[m+8>>2]&2147483647)+-1|0;else w=10;v=0;ua(12,m|0,w|0,0);w=v;v=0;if(w&1){w=Ra()|0;x=w;y=G}else{w=(b[e>>0]|0)<0?f[m>>2]|0:m;f[n>>2]=w;f[q>>2]=o;f[r>>2]=0;b[s>>0]=1;b[u>>0]=69;z=m+4|0;A=m+8|0;B=f[c>>2]|0;C=w;w=B;D=B;a:while(1){if(D){B=f[D+12>>2]|0;if((B|0)==(f[D+16>>2]|0)){v=0;E=ea(f[(f[D>>2]|0)+36>>2]|0,D|0)|0;F=v;v=0;if(F&1){H=29;break}else I=E}else I=wj(b[B>>0]|0)|0;if(Rj(I,vj()|0)|0){f[c>>2]=0;J=0;K=0;L=1}else{J=D;K=w;L=0}}else{J=0;K=0;L=1}B=f[d>>2]|0;do if(B){E=f[B+12>>2]|0;if((E|0)==(f[B+16>>2]|0)){v=0;F=ea(f[(f[B>>2]|0)+36>>2]|0,B|0)|0;M=v;v=0;if(M&1){H=29;break a}else N=F}else N=wj(b[E>>0]|0)|0;if(!(Rj(N,vj()|0)|0))if(L){O=B;break}else{P=C;Q=B;H=41;break a}else{f[d>>2]=0;H=20;break}}else H=20;while(0);if((H|0)==20){H=0;if(L){P=C;Q=0;H=41;break}else O=0}B=b[e>>0]|0;E=B<<24>>24<0?f[z>>2]|0:B&255;if((f[n>>2]|0)==(C+E|0)){v=0;ua(12,m|0,E<<1|0,0);B=v;v=0;if(B&1){H=31;break}if((b[e>>0]|0)<0)R=(f[A>>2]&2147483647)+-1|0;else R=10;v=0;ua(12,m|0,R|0,0);B=v;v=0;if(B&1){H=31;break}B=(b[e>>0]|0)<0?f[m>>2]|0:m;f[n>>2]=B+E;S=B}else S=C;B=J+12|0;E=f[B>>2]|0;F=J+16|0;if((E|0)==(f[F>>2]|0)){v=0;M=ea(f[(f[J>>2]|0)+36>>2]|0,J|0)|0;T=v;v=0;if(T&1){H=29;break}else U=M}else U=wj(b[E>>0]|0)|0;v=0;E=qa(1,U&255|0,s|0,u|0,S|0,n|0,b[j>>0]|0,b[k>>0]|0,l|0,o|0,q|0,r|0,i|0)|0;M=v;v=0;if(M&1){H=29;break}if(E|0){P=S;Q=O;H=41;break}E=f[B>>2]|0;if((E|0)==(f[F>>2]|0)){v=0;ea(f[(f[J>>2]|0)+40>>2]|0,J|0)|0;F=v;v=0;if(F&1){H=29;break}}else{f[B>>2]=E+1;wj(b[E>>0]|0)|0}C=S;w=K;D=J}if((H|0)==29){D=Ra()|0;V=D;W=G}else if((H|0)==31){D=Ra()|0;V=D;W=G}else if((H|0)==41){D=b[l+11>>0]|0;if(!((b[s>>0]|0)==0?1:((D<<24>>24<0?f[l+4>>2]|0:D&255)|0)==0)?(D=f[q>>2]|0,(D-o|0)<160):0){s=f[r>>2]|0;f[q>>2]=D+4;f[D>>2]=s}v=0;X=+ca(2,P|0,f[n>>2]|0,g|0);n=v;v=0;b:do if(!(n&1)?(p[h>>3]=X,v=0,va(8,l|0,o|0,f[q>>2]|0,g|0),P=v,v=0,!(P&1)):0){if(J){P=f[J+12>>2]|0;if((P|0)==(f[J+16>>2]|0)){v=0;s=ea(f[(f[K>>2]|0)+36>>2]|0,J|0)|0;D=v;v=0;if(D&1)break;else Y=s}else Y=wj(b[P>>0]|0)|0;if(Rj(Y,vj()|0)|0){f[c>>2]=0;Z=1}else Z=0}else Z=1;do if(Q){P=f[Q+12>>2]|0;if((P|0)==(f[Q+16>>2]|0)){v=0;s=ea(f[(f[Q>>2]|0)+36>>2]|0,Q|0)|0;D=v;v=0;if(D&1)break b;else _=s}else _=wj(b[P>>0]|0)|0;if(!(Rj(_,vj()|0)|0))if(Z)break;else{H=60;break}else{f[d>>2]=0;H=58;break}}else H=58;while(0);if((H|0)==58?Z:0)H=60;if((H|0)==60)f[g>>2]=f[g>>2]|2;P=f[c>>2]|0;$s(m);$s(l);t=a;return P|0}while(0);a=Ra()|0;V=a;W=G}x=V;y=W}$s(m);$s(l);_a(x|0);return 0}function Tk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0,h=0,i=0,j=0.0,k=0.0,l=0,m=0.0;d=t;t=t+16|0;e=d;if((a|0)==(b|0)){f[c>>2]=4;g=0.0}else{h=Jg()|0;i=f[h>>2]|0;h=Jg()|0;f[h>>2]=0;j=+Yi(a,e,Ek()|0);a=Jg()|0;h=f[a>>2]|0;if(!h){a=Jg()|0;f[a>>2]=i}if((f[e>>2]|0)==(b|0))if((h|0)==34){k=j;l=6}else m=j;else{k=0.0;l=6}if((l|0)==6){f[c>>2]=4;m=k}g=m}t=d;return +g}function Uk(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;a=t;t=t+240|0;i=a+160|0;j=a+231|0;k=a+230|0;l=a+216|0;m=a+204|0;o=a+200|0;p=a;q=a+196|0;r=a+192|0;s=a+229|0;u=a+228|0;Ok(l,e,i,j,k);f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[m+(e<<2)>>2]=0;e=e+1|0}e=m+11|0;if((b[e>>0]|0)<0)w=(f[m+8>>2]&2147483647)+-1|0;else w=10;v=0;ua(12,m|0,w|0,0);w=v;v=0;if(w&1){w=Ra()|0;x=w;y=G}else{w=(b[e>>0]|0)<0?f[m>>2]|0:m;f[o>>2]=w;f[q>>2]=p;f[r>>2]=0;b[s>>0]=1;b[u>>0]=69;z=m+4|0;A=m+8|0;B=f[c>>2]|0;C=w;w=B;D=B;a:while(1){if(D){B=f[D+12>>2]|0;if((B|0)==(f[D+16>>2]|0)){v=0;E=ea(f[(f[D>>2]|0)+36>>2]|0,D|0)|0;F=v;v=0;if(F&1){H=29;break}else I=E}else I=wj(b[B>>0]|0)|0;if(Rj(I,vj()|0)|0){f[c>>2]=0;J=0;K=0;L=1}else{J=D;K=w;L=0}}else{J=0;K=0;L=1}B=f[d>>2]|0;do if(B){E=f[B+12>>2]|0;if((E|0)==(f[B+16>>2]|0)){v=0;F=ea(f[(f[B>>2]|0)+36>>2]|0,B|0)|0;M=v;v=0;if(M&1){H=29;break a}else N=F}else N=wj(b[E>>0]|0)|0;if(!(Rj(N,vj()|0)|0))if(L){O=B;break}else{P=C;Q=B;H=41;break a}else{f[d>>2]=0;H=20;break}}else H=20;while(0);if((H|0)==20){H=0;if(L){P=C;Q=0;H=41;break}else O=0}B=b[e>>0]|0;E=B<<24>>24<0?f[z>>2]|0:B&255;if((f[o>>2]|0)==(C+E|0)){v=0;ua(12,m|0,E<<1|0,0);B=v;v=0;if(B&1){H=31;break}if((b[e>>0]|0)<0)R=(f[A>>2]&2147483647)+-1|0;else R=10;v=0;ua(12,m|0,R|0,0);B=v;v=0;if(B&1){H=31;break}B=(b[e>>0]|0)<0?f[m>>2]|0:m;f[o>>2]=B+E;S=B}else S=C;B=J+12|0;E=f[B>>2]|0;F=J+16|0;if((E|0)==(f[F>>2]|0)){v=0;M=ea(f[(f[J>>2]|0)+36>>2]|0,J|0)|0;T=v;v=0;if(T&1){H=29;break}else U=M}else U=wj(b[E>>0]|0)|0;v=0;E=qa(1,U&255|0,s|0,u|0,S|0,o|0,b[j>>0]|0,b[k>>0]|0,l|0,p|0,q|0,r|0,i|0)|0;M=v;v=0;if(M&1){H=29;break}if(E|0){P=S;Q=O;H=41;break}E=f[B>>2]|0;if((E|0)==(f[F>>2]|0)){v=0;ea(f[(f[J>>2]|0)+40>>2]|0,J|0)|0;F=v;v=0;if(F&1){H=29;break}}else{f[B>>2]=E+1;wj(b[E>>0]|0)|0}C=S;w=K;D=J}if((H|0)==29){D=Ra()|0;V=D;W=G}else if((H|0)==31){D=Ra()|0;V=D;W=G}else if((H|0)==41){D=b[l+11>>0]|0;if(!((b[s>>0]|0)==0?1:((D<<24>>24<0?f[l+4>>2]|0:D&255)|0)==0)?(D=f[q>>2]|0,(D-p|0)<160):0){s=f[r>>2]|0;f[q>>2]=D+4;f[D>>2]=s}v=0;X=+ca(3,P|0,f[o>>2]|0,g|0);o=v;v=0;b:do if(!(o&1)?(n[h>>2]=X,v=0,va(8,l|0,p|0,f[q>>2]|0,g|0),P=v,v=0,!(P&1)):0){if(J){P=f[J+12>>2]|0;if((P|0)==(f[J+16>>2]|0)){v=0;s=ea(f[(f[K>>2]|0)+36>>2]|0,J|0)|0;D=v;v=0;if(D&1)break;else Y=s}else Y=wj(b[P>>0]|0)|0;if(Rj(Y,vj()|0)|0){f[c>>2]=0;Z=1}else Z=0}else Z=1;do if(Q){P=f[Q+12>>2]|0;if((P|0)==(f[Q+16>>2]|0)){v=0;s=ea(f[(f[Q>>2]|0)+36>>2]|0,Q|0)|0;D=v;v=0;if(D&1)break b;else _=s}else _=wj(b[P>>0]|0)|0;if(!(Rj(_,vj()|0)|0))if(Z)break;else{H=60;break}else{f[d>>2]=0;H=58;break}}else H=58;while(0);if((H|0)==58?Z:0)H=60;if((H|0)==60)f[g>>2]=f[g>>2]|2;P=f[c>>2]|0;$s(m);$s(l);t=a;return P|0}while(0);a=Ra()|0;V=a;W=G}x=V;y=W}$s(m);$s(l);_a(x|0);return 0}function Vk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0.0,h=0,i=0,j=0.0,k=0.0,l=0,m=0.0;d=t;t=t+16|0;e=d;if((a|0)==(b|0)){f[c>>2]=4;g=0.0}else{h=Jg()|0;i=f[h>>2]|0;h=Jg()|0;f[h>>2]=0;j=+Xi(a,e,Ek()|0);a=Jg()|0;h=f[a>>2]|0;if(!h){a=Jg()|0;f[a>>2]=i}if((f[e>>2]|0)==(b|0))if((h|0)==34){k=j;l=6}else m=j;else{k=0.0;l=6}if((l|0)==6){f[c>>2]=4;m=k}g=m}t=d;return +g}function Wk(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;i=t;t=t+240|0;j=i+224|0;k=i+212|0;l=i+200|0;m=i+196|0;n=i;o=i+192|0;p=i+188|0;q=Xk(e)|0;r=Yk(a,e,i+160|0)|0;Zk(k,e,j);f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[l+(e<<2)>>2]=0;e=e+1|0}e=l+11|0;if((b[e>>0]|0)<0)s=(f[l+8>>2]&2147483647)+-1|0;else s=10;v=0;ua(12,l|0,s|0,0);s=v;v=0;if(s&1){s=Ra()|0;u=s;w=G}else{s=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=s;f[o>>2]=n;f[p>>2]=0;a=l+4|0;x=l+8|0;y=f[c>>2]|0;z=s;s=y;A=y;a:while(1){if(A){y=f[A+12>>2]|0;if((y|0)==(f[A+16>>2]|0)){v=0;B=ea(f[(f[A>>2]|0)+36>>2]|0,A|0)|0;C=v;v=0;if(C&1){D=29;break}else E=B}else E=wj(b[y>>0]|0)|0;if(Rj(E,vj()|0)|0){f[c>>2]=0;F=0;H=1;I=0}else{F=s;H=0;I=A}}else{F=0;H=1;I=0}y=f[d>>2]|0;do if(y){B=f[y+12>>2]|0;if((B|0)==(f[y+16>>2]|0)){v=0;C=ea(f[(f[y>>2]|0)+36>>2]|0,y|0)|0;J=v;v=0;if(J&1){D=29;break a}else K=C}else K=wj(b[B>>0]|0)|0;if(!(Rj(K,vj()|0)|0))if(H){L=y;break}else{M=z;N=y;D=41;break a}else{f[d>>2]=0;D=20;break}}else D=20;while(0);if((D|0)==20){D=0;if(H){M=z;N=0;D=41;break}else L=0}y=b[e>>0]|0;B=y<<24>>24<0?f[a>>2]|0:y&255;if((f[m>>2]|0)==(z+B|0)){v=0;ua(12,l|0,B<<1|0,0);y=v;v=0;if(y&1){D=31;break}if((b[e>>0]|0)<0)O=(f[x>>2]&2147483647)+-1|0;else O=10;v=0;ua(12,l|0,O|0,0);y=v;v=0;if(y&1){D=31;break}y=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=y+B;P=y}else P=z;y=I+12|0;B=f[y>>2]|0;C=I+16|0;if((B|0)==(f[C>>2]|0)){v=0;J=ea(f[(f[I>>2]|0)+36>>2]|0,I|0)|0;Q=v;v=0;if(Q&1){D=29;break}else R=J}else R=wj(b[B>>0]|0)|0;v=0;B=oa(1,R&255|0,q|0,P|0,m|0,p|0,b[j>>0]|0,k|0,n|0,o|0,r|0)|0;J=v;v=0;if(J&1){D=29;break}if(B|0){M=P;N=L;D=41;break}B=f[y>>2]|0;if((B|0)==(f[C>>2]|0)){v=0;ea(f[(f[I>>2]|0)+40>>2]|0,I|0)|0;C=v;v=0;if(C&1){D=29;break}}else{f[y>>2]=B+1;wj(b[B>>0]|0)|0}z=P;s=F;A=I}if((D|0)==29){A=Ra()|0;S=A;T=G}else if((D|0)==31){A=Ra()|0;S=A;T=G}else if((D|0)==41){A=b[k+11>>0]|0;if((A<<24>>24<0?f[k+4>>2]|0:A&255)|0?(A=f[o>>2]|0,(A-n|0)<160):0){s=f[p>>2]|0;f[o>>2]=A+4;f[A>>2]=s}v=0;s=ha(7,M|0,f[m>>2]|0,g|0,q|0)|0;q=G;m=v;v=0;b:do if(!(m&1)?(M=h,f[M>>2]=s,f[M+4>>2]=q,v=0,va(8,k|0,n|0,f[o>>2]|0,g|0),M=v,v=0,!(M&1)):0){if(I){M=f[I+12>>2]|0;if((M|0)==(f[I+16>>2]|0)){v=0;A=ea(f[(f[F>>2]|0)+36>>2]|0,I|0)|0;p=v;v=0;if(p&1)break;else U=A}else U=wj(b[M>>0]|0)|0;if(Rj(U,vj()|0)|0){f[c>>2]=0;V=1}else V=0}else V=1;do if(N){M=f[N+12>>2]|0;if((M|0)==(f[N+16>>2]|0)){v=0;A=ea(f[(f[N>>2]|0)+36>>2]|0,N|0)|0;p=v;v=0;if(p&1)break b;else W=A}else W=wj(b[M>>0]|0)|0;if(!(Rj(W,vj()|0)|0))if(V)break;else{D=60;break}else{f[d>>2]=0;D=58;break}}else D=58;while(0);if((D|0)==58?V:0)D=60;if((D|0)==60)f[g>>2]=f[g>>2]|2;M=f[c>>2]|0;$s(l);$s(k);t=i;return M|0}while(0);i=Ra()|0;S=i;T=G}u=S;w=T}$s(l);$s(k);_a(u|0);return 0}function Xk(a){a=a|0;var b=0;switch(f[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 Yk(a,b,c){a=a|0;b=b|0;c=c|0;return $k(a,b,c)|0}function Zk(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=t;t=t+16|0;g=e;Sj(g,c);v=0;c=fa(24,g|0,25356)|0;h=v;v=0;if((!(h&1)?(v=0,h=ea(f[(f[c>>2]|0)+16>>2]|0,c|0)|0,i=v,v=0,!(i&1)):0)?(b[d>>0]=h,v=0,ta(f[(f[c>>2]|0)+20>>2]|0,a|0,c|0),c=v,v=0,!(c&1)):0){Ck(g);t=e;return}e=Ra()|0;Ck(g);_a(e|0)}function _k(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|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,u=0;g=t;t=t+16|0;h=g;do if((a|0)==(c|0)){f[d>>2]=4;i=0;j=0}else{if((b[a>>0]|0)==45){f[d>>2]=4;i=0;j=0;break}k=Jg()|0;l=f[k>>2]|0;k=Jg()|0;f[k>>2]=0;k=Mi(a,h,e,Ek()|0)|0;m=G;n=Jg()|0;o=f[n>>2]|0;if(!o){n=Jg()|0;f[n>>2]=l}if((f[h>>2]|0)==(c|0))if((o|0)==34){p=-1;q=-1;r=8}else{s=k;u=m}else{p=0;q=0;r=8}if((r|0)==8){f[d>>2]=4;s=p;u=q}i=u;j=s}while(0);G=i;t=g;return j|0}function $k(a,b,c){a=a|0;b=b|0;c=c|0;return 6864}function al(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;i=t;t=t+240|0;j=i+224|0;k=i+212|0;l=i+200|0;m=i+196|0;n=i;o=i+192|0;p=i+188|0;q=Xk(e)|0;r=Yk(a,e,i+160|0)|0;Zk(k,e,j);f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[l+(e<<2)>>2]=0;e=e+1|0}e=l+11|0;if((b[e>>0]|0)<0)s=(f[l+8>>2]&2147483647)+-1|0;else s=10;v=0;ua(12,l|0,s|0,0);s=v;v=0;if(s&1){s=Ra()|0;u=s;w=G}else{s=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=s;f[o>>2]=n;f[p>>2]=0;a=l+4|0;x=l+8|0;y=f[c>>2]|0;z=s;s=y;A=y;a:while(1){if(A){y=f[A+12>>2]|0;if((y|0)==(f[A+16>>2]|0)){v=0;B=ea(f[(f[A>>2]|0)+36>>2]|0,A|0)|0;C=v;v=0;if(C&1){D=29;break}else E=B}else E=wj(b[y>>0]|0)|0;if(Rj(E,vj()|0)|0){f[c>>2]=0;F=0;H=1;I=0}else{F=s;H=0;I=A}}else{F=0;H=1;I=0}y=f[d>>2]|0;do if(y){B=f[y+12>>2]|0;if((B|0)==(f[y+16>>2]|0)){v=0;C=ea(f[(f[y>>2]|0)+36>>2]|0,y|0)|0;J=v;v=0;if(J&1){D=29;break a}else K=C}else K=wj(b[B>>0]|0)|0;if(!(Rj(K,vj()|0)|0))if(H){L=y;break}else{M=z;N=y;D=41;break a}else{f[d>>2]=0;D=20;break}}else D=20;while(0);if((D|0)==20){D=0;if(H){M=z;N=0;D=41;break}else L=0}y=b[e>>0]|0;B=y<<24>>24<0?f[a>>2]|0:y&255;if((f[m>>2]|0)==(z+B|0)){v=0;ua(12,l|0,B<<1|0,0);y=v;v=0;if(y&1){D=31;break}if((b[e>>0]|0)<0)O=(f[x>>2]&2147483647)+-1|0;else O=10;v=0;ua(12,l|0,O|0,0);y=v;v=0;if(y&1){D=31;break}y=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=y+B;P=y}else P=z;y=I+12|0;B=f[y>>2]|0;C=I+16|0;if((B|0)==(f[C>>2]|0)){v=0;J=ea(f[(f[I>>2]|0)+36>>2]|0,I|0)|0;Q=v;v=0;if(Q&1){D=29;break}else R=J}else R=wj(b[B>>0]|0)|0;v=0;B=oa(1,R&255|0,q|0,P|0,m|0,p|0,b[j>>0]|0,k|0,n|0,o|0,r|0)|0;J=v;v=0;if(J&1){D=29;break}if(B|0){M=P;N=L;D=41;break}B=f[y>>2]|0;if((B|0)==(f[C>>2]|0)){v=0;ea(f[(f[I>>2]|0)+40>>2]|0,I|0)|0;C=v;v=0;if(C&1){D=29;break}}else{f[y>>2]=B+1;wj(b[B>>0]|0)|0}z=P;s=F;A=I}if((D|0)==29){A=Ra()|0;S=A;T=G}else if((D|0)==31){A=Ra()|0;S=A;T=G}else if((D|0)==41){A=b[k+11>>0]|0;if((A<<24>>24<0?f[k+4>>2]|0:A&255)|0?(A=f[o>>2]|0,(A-n|0)<160):0){s=f[p>>2]|0;f[o>>2]=A+4;f[A>>2]=s}v=0;s=ha(8,M|0,f[m>>2]|0,g|0,q|0)|0;q=v;v=0;b:do if(!(q&1)?(f[h>>2]=s,v=0,va(8,k|0,n|0,f[o>>2]|0,g|0),m=v,v=0,!(m&1)):0){if(I){m=f[I+12>>2]|0;if((m|0)==(f[I+16>>2]|0)){v=0;M=ea(f[(f[F>>2]|0)+36>>2]|0,I|0)|0;A=v;v=0;if(A&1)break;else U=M}else U=wj(b[m>>0]|0)|0;if(Rj(U,vj()|0)|0){f[c>>2]=0;V=1}else V=0}else V=1;do if(N){m=f[N+12>>2]|0;if((m|0)==(f[N+16>>2]|0)){v=0;M=ea(f[(f[N>>2]|0)+36>>2]|0,N|0)|0;A=v;v=0;if(A&1)break b;else W=M}else W=wj(b[m>>0]|0)|0;if(!(Rj(W,vj()|0)|0))if(V)break;else{D=60;break}else{f[d>>2]=0;D=58;break}}else D=58;while(0);if((D|0)==58?V:0)D=60;if((D|0)==60)f[g>>2]=f[g>>2]|2;m=f[c>>2]|0;$s(l);$s(k);t=i;return m|0}while(0);i=Ra()|0;S=i;T=G}u=S;w=T}$s(l);$s(k);_a(u|0);return 0}function bl(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=t;t=t+16|0;h=g;do if((a|0)==(c|0)){f[d>>2]=4;i=0}else{if((b[a>>0]|0)==45){f[d>>2]=4;i=0;break}j=Jg()|0;k=f[j>>2]|0;j=Jg()|0;f[j>>2]=0;j=Mi(a,h,e,Ek()|0)|0;l=G;m=Jg()|0;n=f[m>>2]|0;if(!n){m=Jg()|0;f[m>>2]=k}do if((f[h>>2]|0)==(c|0))if(l>>>0>0|(l|0)==0&j>>>0>4294967295|(n|0)==34){f[d>>2]=4;o=-1;break}else{o=j;break}else{f[d>>2]=4;o=0}while(0);i=o}while(0);t=g;return i|0}function cl(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;i=t;t=t+240|0;j=i+224|0;k=i+212|0;l=i+200|0;m=i+196|0;n=i;o=i+192|0;p=i+188|0;q=Xk(e)|0;r=Yk(a,e,i+160|0)|0;Zk(k,e,j);f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[l+(e<<2)>>2]=0;e=e+1|0}e=l+11|0;if((b[e>>0]|0)<0)s=(f[l+8>>2]&2147483647)+-1|0;else s=10;v=0;ua(12,l|0,s|0,0);s=v;v=0;if(s&1){s=Ra()|0;u=s;w=G}else{s=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=s;f[o>>2]=n;f[p>>2]=0;a=l+4|0;x=l+8|0;y=f[c>>2]|0;z=s;s=y;A=y;a:while(1){if(A){y=f[A+12>>2]|0;if((y|0)==(f[A+16>>2]|0)){v=0;B=ea(f[(f[A>>2]|0)+36>>2]|0,A|0)|0;C=v;v=0;if(C&1){D=29;break}else E=B}else E=wj(b[y>>0]|0)|0;if(Rj(E,vj()|0)|0){f[c>>2]=0;F=0;H=1;I=0}else{F=s;H=0;I=A}}else{F=0;H=1;I=0}y=f[d>>2]|0;do if(y){B=f[y+12>>2]|0;if((B|0)==(f[y+16>>2]|0)){v=0;C=ea(f[(f[y>>2]|0)+36>>2]|0,y|0)|0;J=v;v=0;if(J&1){D=29;break a}else K=C}else K=wj(b[B>>0]|0)|0;if(!(Rj(K,vj()|0)|0))if(H){L=y;break}else{M=z;N=y;D=41;break a}else{f[d>>2]=0;D=20;break}}else D=20;while(0);if((D|0)==20){D=0;if(H){M=z;N=0;D=41;break}else L=0}y=b[e>>0]|0;B=y<<24>>24<0?f[a>>2]|0:y&255;if((f[m>>2]|0)==(z+B|0)){v=0;ua(12,l|0,B<<1|0,0);y=v;v=0;if(y&1){D=31;break}if((b[e>>0]|0)<0)O=(f[x>>2]&2147483647)+-1|0;else O=10;v=0;ua(12,l|0,O|0,0);y=v;v=0;if(y&1){D=31;break}y=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=y+B;P=y}else P=z;y=I+12|0;B=f[y>>2]|0;C=I+16|0;if((B|0)==(f[C>>2]|0)){v=0;J=ea(f[(f[I>>2]|0)+36>>2]|0,I|0)|0;Q=v;v=0;if(Q&1){D=29;break}else R=J}else R=wj(b[B>>0]|0)|0;v=0;B=oa(1,R&255|0,q|0,P|0,m|0,p|0,b[j>>0]|0,k|0,n|0,o|0,r|0)|0;J=v;v=0;if(J&1){D=29;break}if(B|0){M=P;N=L;D=41;break}B=f[y>>2]|0;if((B|0)==(f[C>>2]|0)){v=0;ea(f[(f[I>>2]|0)+40>>2]|0,I|0)|0;C=v;v=0;if(C&1){D=29;break}}else{f[y>>2]=B+1;wj(b[B>>0]|0)|0}z=P;s=F;A=I}if((D|0)==29){A=Ra()|0;S=A;T=G}else if((D|0)==31){A=Ra()|0;S=A;T=G}else if((D|0)==41){A=b[k+11>>0]|0;if((A<<24>>24<0?f[k+4>>2]|0:A&255)|0?(A=f[o>>2]|0,(A-n|0)<160):0){s=f[p>>2]|0;f[o>>2]=A+4;f[A>>2]=s}v=0;s=ha(9,M|0,f[m>>2]|0,g|0,q|0)|0;q=v;v=0;b:do if(!(q&1)?(f[h>>2]=s,v=0,va(8,k|0,n|0,f[o>>2]|0,g|0),m=v,v=0,!(m&1)):0){if(I){m=f[I+12>>2]|0;if((m|0)==(f[I+16>>2]|0)){v=0;M=ea(f[(f[F>>2]|0)+36>>2]|0,I|0)|0;A=v;v=0;if(A&1)break;else U=M}else U=wj(b[m>>0]|0)|0;if(Rj(U,vj()|0)|0){f[c>>2]=0;V=1}else V=0}else V=1;do if(N){m=f[N+12>>2]|0;if((m|0)==(f[N+16>>2]|0)){v=0;M=ea(f[(f[N>>2]|0)+36>>2]|0,N|0)|0;A=v;v=0;if(A&1)break b;else W=M}else W=wj(b[m>>0]|0)|0;if(!(Rj(W,vj()|0)|0))if(V)break;else{D=60;break}else{f[d>>2]=0;D=58;break}}else D=58;while(0);if((D|0)==58?V:0)D=60;if((D|0)==60)f[g>>2]=f[g>>2]|2;m=f[c>>2]|0;$s(l);$s(k);t=i;return m|0}while(0);i=Ra()|0;S=i;T=G}u=S;w=T}$s(l);$s(k);_a(u|0);return 0}function dl(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=t;t=t+16|0;h=g;do if((a|0)==(c|0)){f[d>>2]=4;i=0}else{if((b[a>>0]|0)==45){f[d>>2]=4;i=0;break}j=Jg()|0;k=f[j>>2]|0;j=Jg()|0;f[j>>2]=0;j=Mi(a,h,e,Ek()|0)|0;l=G;m=Jg()|0;n=f[m>>2]|0;if(!n){m=Jg()|0;f[m>>2]=k}do if((f[h>>2]|0)==(c|0))if(l>>>0>0|(l|0)==0&j>>>0>4294967295|(n|0)==34){f[d>>2]=4;o=-1;break}else{o=j;break}else{f[d>>2]=4;o=0}while(0);i=o}while(0);t=g;return i|0}function el(a,c,e,g,h,i){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;j=t;t=t+240|0;k=j+224|0;l=j+212|0;m=j+200|0;n=j+196|0;o=j;p=j+192|0;q=j+188|0;r=Xk(g)|0;s=Yk(a,g,j+160|0)|0;Zk(l,g,k);f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[m+(g<<2)>>2]=0;g=g+1|0}g=m+11|0;if((b[g>>0]|0)<0)u=(f[m+8>>2]&2147483647)+-1|0;else u=10;v=0;ua(12,m|0,u|0,0);u=v;v=0;if(u&1){u=Ra()|0;w=u;x=G}else{u=(b[g>>0]|0)<0?f[m>>2]|0:m;f[n>>2]=u;f[p>>2]=o;f[q>>2]=0;a=m+4|0;y=m+8|0;z=f[c>>2]|0;A=u;u=z;B=z;a:while(1){if(B){z=f[B+12>>2]|0;if((z|0)==(f[B+16>>2]|0)){v=0;C=ea(f[(f[B>>2]|0)+36>>2]|0,B|0)|0;D=v;v=0;if(D&1){E=29;break}else F=C}else F=wj(b[z>>0]|0)|0;if(Rj(F,vj()|0)|0){f[c>>2]=0;H=0;I=1;J=0}else{H=u;I=0;J=B}}else{H=0;I=1;J=0}z=f[e>>2]|0;do if(z){C=f[z+12>>2]|0;if((C|0)==(f[z+16>>2]|0)){v=0;D=ea(f[(f[z>>2]|0)+36>>2]|0,z|0)|0;K=v;v=0;if(K&1){E=29;break a}else L=D}else L=wj(b[C>>0]|0)|0;if(!(Rj(L,vj()|0)|0))if(I){M=z;break}else{N=A;O=z;E=41;break a}else{f[e>>2]=0;E=20;break}}else E=20;while(0);if((E|0)==20){E=0;if(I){N=A;O=0;E=41;break}else M=0}z=b[g>>0]|0;C=z<<24>>24<0?f[a>>2]|0:z&255;if((f[n>>2]|0)==(A+C|0)){v=0;ua(12,m|0,C<<1|0,0);z=v;v=0;if(z&1){E=31;break}if((b[g>>0]|0)<0)P=(f[y>>2]&2147483647)+-1|0;else P=10;v=0;ua(12,m|0,P|0,0);z=v;v=0;if(z&1){E=31;break}z=(b[g>>0]|0)<0?f[m>>2]|0:m;f[n>>2]=z+C;Q=z}else Q=A;z=J+12|0;C=f[z>>2]|0;D=J+16|0;if((C|0)==(f[D>>2]|0)){v=0;K=ea(f[(f[J>>2]|0)+36>>2]|0,J|0)|0;R=v;v=0;if(R&1){E=29;break}else S=K}else S=wj(b[C>>0]|0)|0;v=0;C=oa(1,S&255|0,r|0,Q|0,n|0,q|0,b[k>>0]|0,l|0,o|0,p|0,s|0)|0;K=v;v=0;if(K&1){E=29;break}if(C|0){N=Q;O=M;E=41;break}C=f[z>>2]|0;if((C|0)==(f[D>>2]|0)){v=0;ea(f[(f[J>>2]|0)+40>>2]|0,J|0)|0;D=v;v=0;if(D&1){E=29;break}}else{f[z>>2]=C+1;wj(b[C>>0]|0)|0}A=Q;u=H;B=J}if((E|0)==29){B=Ra()|0;T=B;U=G}else if((E|0)==31){B=Ra()|0;T=B;U=G}else if((E|0)==41){B=b[l+11>>0]|0;if((B<<24>>24<0?f[l+4>>2]|0:B&255)|0?(B=f[p>>2]|0,(B-o|0)<160):0){u=f[q>>2]|0;f[p>>2]=B+4;f[B>>2]=u}v=0;u=ha(10,N|0,f[n>>2]|0,h|0,r|0)|0;r=v;v=0;b:do if(!(r&1)?(d[i>>1]=u,v=0,va(8,l|0,o|0,f[p>>2]|0,h|0),n=v,v=0,!(n&1)):0){if(J){n=f[J+12>>2]|0;if((n|0)==(f[J+16>>2]|0)){v=0;N=ea(f[(f[H>>2]|0)+36>>2]|0,J|0)|0;B=v;v=0;if(B&1)break;else V=N}else V=wj(b[n>>0]|0)|0;if(Rj(V,vj()|0)|0){f[c>>2]=0;W=1}else W=0}else W=1;do if(O){n=f[O+12>>2]|0;if((n|0)==(f[O+16>>2]|0)){v=0;N=ea(f[(f[O>>2]|0)+36>>2]|0,O|0)|0;B=v;v=0;if(B&1)break b;else X=N}else X=wj(b[n>>0]|0)|0;if(!(Rj(X,vj()|0)|0))if(W)break;else{E=60;break}else{f[e>>2]=0;E=58;break}}else E=58;while(0);if((E|0)==58?W:0)E=60;if((E|0)==60)f[h>>2]=f[h>>2]|2;n=f[c>>2]|0;$s(m);$s(l);t=j;return n|0}while(0);j=Ra()|0;T=j;U=G}w=T;x=U}$s(m);$s(l);_a(w|0);return 0}function fl(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=t;t=t+16|0;h=g;do if((a|0)==(c|0)){f[d>>2]=4;i=0}else{if((b[a>>0]|0)==45){f[d>>2]=4;i=0;break}j=Jg()|0;k=f[j>>2]|0;j=Jg()|0;f[j>>2]=0;j=Mi(a,h,e,Ek()|0)|0;l=G;m=Jg()|0;n=f[m>>2]|0;if(!n){m=Jg()|0;f[m>>2]=k}do if((f[h>>2]|0)==(c|0))if(l>>>0>0|(l|0)==0&j>>>0>65535|(n|0)==34){f[d>>2]=4;o=-1;break}else{o=j&65535;break}else{f[d>>2]=4;o=0}while(0);i=o}while(0);t=g;return i|0}function gl(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;i=t;t=t+240|0;j=i+224|0;k=i+212|0;l=i+200|0;m=i+196|0;n=i;o=i+192|0;p=i+188|0;q=Xk(e)|0;r=Yk(a,e,i+160|0)|0;Zk(k,e,j);f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[l+(e<<2)>>2]=0;e=e+1|0}e=l+11|0;if((b[e>>0]|0)<0)s=(f[l+8>>2]&2147483647)+-1|0;else s=10;v=0;ua(12,l|0,s|0,0);s=v;v=0;if(s&1){s=Ra()|0;u=s;w=G}else{s=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=s;f[o>>2]=n;f[p>>2]=0;a=l+4|0;x=l+8|0;y=f[c>>2]|0;z=s;s=y;A=y;a:while(1){if(A){y=f[A+12>>2]|0;if((y|0)==(f[A+16>>2]|0)){v=0;B=ea(f[(f[A>>2]|0)+36>>2]|0,A|0)|0;C=v;v=0;if(C&1){D=29;break}else E=B}else E=wj(b[y>>0]|0)|0;if(Rj(E,vj()|0)|0){f[c>>2]=0;F=0;H=1;I=0}else{F=s;H=0;I=A}}else{F=0;H=1;I=0}y=f[d>>2]|0;do if(y){B=f[y+12>>2]|0;if((B|0)==(f[y+16>>2]|0)){v=0;C=ea(f[(f[y>>2]|0)+36>>2]|0,y|0)|0;J=v;v=0;if(J&1){D=29;break a}else K=C}else K=wj(b[B>>0]|0)|0;if(!(Rj(K,vj()|0)|0))if(H){L=y;break}else{M=z;N=y;D=41;break a}else{f[d>>2]=0;D=20;break}}else D=20;while(0);if((D|0)==20){D=0;if(H){M=z;N=0;D=41;break}else L=0}y=b[e>>0]|0;B=y<<24>>24<0?f[a>>2]|0:y&255;if((f[m>>2]|0)==(z+B|0)){v=0;ua(12,l|0,B<<1|0,0);y=v;v=0;if(y&1){D=31;break}if((b[e>>0]|0)<0)O=(f[x>>2]&2147483647)+-1|0;else O=10;v=0;ua(12,l|0,O|0,0);y=v;v=0;if(y&1){D=31;break}y=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=y+B;P=y}else P=z;y=I+12|0;B=f[y>>2]|0;C=I+16|0;if((B|0)==(f[C>>2]|0)){v=0;J=ea(f[(f[I>>2]|0)+36>>2]|0,I|0)|0;Q=v;v=0;if(Q&1){D=29;break}else R=J}else R=wj(b[B>>0]|0)|0;v=0;B=oa(1,R&255|0,q|0,P|0,m|0,p|0,b[j>>0]|0,k|0,n|0,o|0,r|0)|0;J=v;v=0;if(J&1){D=29;break}if(B|0){M=P;N=L;D=41;break}B=f[y>>2]|0;if((B|0)==(f[C>>2]|0)){v=0;ea(f[(f[I>>2]|0)+40>>2]|0,I|0)|0;C=v;v=0;if(C&1){D=29;break}}else{f[y>>2]=B+1;wj(b[B>>0]|0)|0}z=P;s=F;A=I}if((D|0)==29){A=Ra()|0;S=A;T=G}else if((D|0)==31){A=Ra()|0;S=A;T=G}else if((D|0)==41){A=b[k+11>>0]|0;if((A<<24>>24<0?f[k+4>>2]|0:A&255)|0?(A=f[o>>2]|0,(A-n|0)<160):0){s=f[p>>2]|0;f[o>>2]=A+4;f[A>>2]=s}v=0;s=ha(11,M|0,f[m>>2]|0,g|0,q|0)|0;q=G;m=v;v=0;b:do if(!(m&1)?(M=h,f[M>>2]=s,f[M+4>>2]=q,v=0,va(8,k|0,n|0,f[o>>2]|0,g|0),M=v,v=0,!(M&1)):0){if(I){M=f[I+12>>2]|0;if((M|0)==(f[I+16>>2]|0)){v=0;A=ea(f[(f[F>>2]|0)+36>>2]|0,I|0)|0;p=v;v=0;if(p&1)break;else U=A}else U=wj(b[M>>0]|0)|0;if(Rj(U,vj()|0)|0){f[c>>2]=0;V=1}else V=0}else V=1;do if(N){M=f[N+12>>2]|0;if((M|0)==(f[N+16>>2]|0)){v=0;A=ea(f[(f[N>>2]|0)+36>>2]|0,N|0)|0;p=v;v=0;if(p&1)break b;else W=A}else W=wj(b[M>>0]|0)|0;if(!(Rj(W,vj()|0)|0))if(V)break;else{D=60;break}else{f[d>>2]=0;D=58;break}}else D=58;while(0);if((D|0)==58?V:0)D=60;if((D|0)==60)f[g>>2]=f[g>>2]|2;M=f[c>>2]|0;$s(l);$s(k);t=i;return M|0}while(0);i=Ra()|0;S=i;T=G}u=S;w=T}$s(l);$s(k);_a(u|0);return 0}function hl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=t;t=t+16|0;g=e;if((a|0)==(b|0)){f[c>>2]=4;h=0;i=0}else{j=Jg()|0;k=f[j>>2]|0;j=Jg()|0;f[j>>2]=0;j=Ni(a,g,d,Ek()|0)|0;d=G;a=Jg()|0;l=f[a>>2]|0;if(!l){a=Jg()|0;f[a>>2]=k}if((f[g>>2]|0)==(b|0))if((l|0)==34){f[c>>2]=4;l=(d|0)>0|(d|0)==0&j>>>0>0;m=l?-1:0;n=l?2147483647:-2147483648}else{m=j;n=d}else{f[c>>2]=4;m=0;n=0}h=n;i=m}G=h;t=e;return i|0}function il(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;i=t;t=t+240|0;j=i+224|0;k=i+212|0;l=i+200|0;m=i+196|0;n=i;o=i+192|0;p=i+188|0;q=Xk(e)|0;r=Yk(a,e,i+160|0)|0;Zk(k,e,j);f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[l+(e<<2)>>2]=0;e=e+1|0}e=l+11|0;if((b[e>>0]|0)<0)s=(f[l+8>>2]&2147483647)+-1|0;else s=10;v=0;ua(12,l|0,s|0,0);s=v;v=0;if(s&1){s=Ra()|0;u=s;w=G}else{s=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=s;f[o>>2]=n;f[p>>2]=0;a=l+4|0;x=l+8|0;y=f[c>>2]|0;z=s;s=y;A=y;a:while(1){if(A){y=f[A+12>>2]|0;if((y|0)==(f[A+16>>2]|0)){v=0;B=ea(f[(f[A>>2]|0)+36>>2]|0,A|0)|0;C=v;v=0;if(C&1){D=29;break}else E=B}else E=wj(b[y>>0]|0)|0;if(Rj(E,vj()|0)|0){f[c>>2]=0;F=0;H=1;I=0}else{F=s;H=0;I=A}}else{F=0;H=1;I=0}y=f[d>>2]|0;do if(y){B=f[y+12>>2]|0;if((B|0)==(f[y+16>>2]|0)){v=0;C=ea(f[(f[y>>2]|0)+36>>2]|0,y|0)|0;J=v;v=0;if(J&1){D=29;break a}else K=C}else K=wj(b[B>>0]|0)|0;if(!(Rj(K,vj()|0)|0))if(H){L=y;break}else{M=z;N=y;D=41;break a}else{f[d>>2]=0;D=20;break}}else D=20;while(0);if((D|0)==20){D=0;if(H){M=z;N=0;D=41;break}else L=0}y=b[e>>0]|0;B=y<<24>>24<0?f[a>>2]|0:y&255;if((f[m>>2]|0)==(z+B|0)){v=0;ua(12,l|0,B<<1|0,0);y=v;v=0;if(y&1){D=31;break}if((b[e>>0]|0)<0)O=(f[x>>2]&2147483647)+-1|0;else O=10;v=0;ua(12,l|0,O|0,0);y=v;v=0;if(y&1){D=31;break}y=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=y+B;P=y}else P=z;y=I+12|0;B=f[y>>2]|0;C=I+16|0;if((B|0)==(f[C>>2]|0)){v=0;J=ea(f[(f[I>>2]|0)+36>>2]|0,I|0)|0;Q=v;v=0;if(Q&1){D=29;break}else R=J}else R=wj(b[B>>0]|0)|0;v=0;B=oa(1,R&255|0,q|0,P|0,m|0,p|0,b[j>>0]|0,k|0,n|0,o|0,r|0)|0;J=v;v=0;if(J&1){D=29;break}if(B|0){M=P;N=L;D=41;break}B=f[y>>2]|0;if((B|0)==(f[C>>2]|0)){v=0;ea(f[(f[I>>2]|0)+40>>2]|0,I|0)|0;C=v;v=0;if(C&1){D=29;break}}else{f[y>>2]=B+1;wj(b[B>>0]|0)|0}z=P;s=F;A=I}if((D|0)==29){A=Ra()|0;S=A;T=G}else if((D|0)==31){A=Ra()|0;S=A;T=G}else if((D|0)==41){A=b[k+11>>0]|0;if((A<<24>>24<0?f[k+4>>2]|0:A&255)|0?(A=f[o>>2]|0,(A-n|0)<160):0){s=f[p>>2]|0;f[o>>2]=A+4;f[A>>2]=s}v=0;s=ha(12,M|0,f[m>>2]|0,g|0,q|0)|0;q=v;v=0;b:do if(!(q&1)?(f[h>>2]=s,v=0,va(8,k|0,n|0,f[o>>2]|0,g|0),m=v,v=0,!(m&1)):0){if(I){m=f[I+12>>2]|0;if((m|0)==(f[I+16>>2]|0)){v=0;M=ea(f[(f[F>>2]|0)+36>>2]|0,I|0)|0;A=v;v=0;if(A&1)break;else U=M}else U=wj(b[m>>0]|0)|0;if(Rj(U,vj()|0)|0){f[c>>2]=0;V=1}else V=0}else V=1;do if(N){m=f[N+12>>2]|0;if((m|0)==(f[N+16>>2]|0)){v=0;M=ea(f[(f[N>>2]|0)+36>>2]|0,N|0)|0;A=v;v=0;if(A&1)break b;else W=M}else W=wj(b[m>>0]|0)|0;if(!(Rj(W,vj()|0)|0))if(V)break;else{D=60;break}else{f[d>>2]=0;D=58;break}}else D=58;while(0);if((D|0)==58?V:0)D=60;if((D|0)==60)f[g>>2]=f[g>>2]|2;m=f[c>>2]|0;$s(l);$s(k);t=i;return m|0}while(0);i=Ra()|0;S=i;T=G}u=S;w=T}$s(l);$s(k);_a(u|0);return 0}function jl(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;e=t;t=t+16|0;g=e;if((a|0)==(b|0)){f[c>>2]=4;h=0}else{i=Jg()|0;j=f[i>>2]|0;i=Jg()|0;f[i>>2]=0;i=Ni(a,g,d,Ek()|0)|0;d=G;a=Jg()|0;k=f[a>>2]|0;if(!k){a=Jg()|0;f[a>>2]=j}a:do if((f[g>>2]|0)==(b|0)){do if((k|0)==34){f[c>>2]=4;if((d|0)>0|(d|0)==0&i>>>0>0){l=2147483647;break a}}else{if((d|0)<-1|(d|0)==-1&i>>>0<2147483648){f[c>>2]=4;break}if((d|0)>0|(d|0)==0&i>>>0>2147483647){f[c>>2]=4;l=2147483647;break a}else{l=i;break a}}while(0);l=-2147483648}else{f[c>>2]=4;l=0}while(0);h=l}t=e;return h|0}function kl(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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=t;t=t+112|0;k=j;l=(e-d|0)/12|0;do if(l>>>0>100){m=Ag(l)|0;if(!m){v=0;ra(3);v=0;n=Ra()|0;o=G;p=n;break}else{q=m;r=m;s=5;break}}else{q=k;r=0;s=5}while(0);if((s|0)==5){k=d;m=q;n=0;u=l;while(1){if((k|0)==(e|0))break;l=b[k+11>>0]|0;if(l<<24>>24<0)w=f[k+4>>2]|0;else w=l&255;if(!w){b[m>>0]=2;x=n+1|0;y=u+-1|0}else{b[m>>0]=1;x=n;y=u}k=k+12|0;m=m+1|0;n=x;u=y}y=0;x=n;n=u;a:while(1){u=f[a>>2]|0;do if(u){m=f[u+12>>2]|0;if((m|0)==(f[u+16>>2]|0)){v=0;k=ea(f[(f[u>>2]|0)+36>>2]|0,u|0)|0;w=v;v=0;if(w&1){s=42;break a}else z=k}else z=wj(b[m>>0]|0)|0;if(Rj(z,vj()|0)|0){f[a>>2]=0;A=1;break}else{A=(f[a>>2]|0)==0;break}}else A=1;while(0);u=f[c>>2]|0;if(u){m=f[u+12>>2]|0;if((m|0)==(f[u+16>>2]|0)){v=0;k=ea(f[(f[u>>2]|0)+36>>2]|0,u|0)|0;w=v;v=0;if(w&1){s=42;break}else B=k}else B=wj(b[m>>0]|0)|0;if(Rj(B,vj()|0)|0){f[c>>2]=0;C=1;D=0}else{C=0;D=u}}else{C=1;D=0}E=f[a>>2]|0;if(!((n|0)!=0&(A^C))){s=29;break}u=f[E+12>>2]|0;if((u|0)==(f[E+16>>2]|0)){v=0;m=ea(f[(f[E>>2]|0)+36>>2]|0,E|0)|0;k=v;v=0;if(k&1){s=48;break}else F=m}else F=wj(b[u>>0]|0)|0;u=F&255;if(!i){v=0;m=fa(f[(f[g>>2]|0)+12>>2]|0,g|0,u|0)|0;k=v;v=0;if(k&1){s=48;break}else H=m}else H=u;u=y+1|0;m=d;k=0;w=q;l=x;I=n;while(1){if((m|0)==(e|0))break;do if((b[w>>0]|0)==1){J=m+11|0;if((b[J>>0]|0)<0)K=f[m>>2]|0;else K=m;L=b[K+y>>0]|0;if(!i){v=0;M=fa(f[(f[g>>2]|0)+12>>2]|0,g|0,L|0)|0;N=v;v=0;if(N&1){s=58;break a}else O=M}else O=L;if(H<<24>>24!=O<<24>>24){b[w>>0]=0;P=k;Q=l;R=I+-1|0;break}L=b[J>>0]|0;if(L<<24>>24<0)S=f[m+4>>2]|0;else S=L&255;if((S|0)==(u|0)){b[w>>0]=2;P=1;Q=l+1|0;R=I+-1|0}else{P=1;Q=l;R=I}}else{P=k;Q=l;R=I}while(0);m=m+12|0;k=P;w=w+1|0;l=Q;I=R}b:do if(k){w=f[a>>2]|0;m=w+12|0;L=f[m>>2]|0;if((L|0)==(f[w+16>>2]|0)){v=0;ea(f[(f[w>>2]|0)+40>>2]|0,w|0)|0;w=v;v=0;if(w&1){s=74;break a}}else{f[m>>2]=L+1;wj(b[L>>0]|0)|0}if((l+I|0)>>>0>1){L=d;m=q;w=l;while(1){if((L|0)==(e|0)){T=w;break b}if((b[m>>0]|0)==2){J=b[L+11>>0]|0;if(J<<24>>24<0)U=f[L+4>>2]|0;else U=J&255;if((U|0)!=(u|0)){b[m>>0]=0;V=w+-1|0}else V=w}else V=w;L=L+12|0;m=m+1|0;w=V}}else T=l}else T=l;while(0);y=u;x=T;n=I}if((s|0)==29){do if(E){n=f[E+12>>2]|0;if((n|0)==(f[E+16>>2]|0)){v=0;T=ea(f[(f[E>>2]|0)+36>>2]|0,E|0)|0;x=v;v=0;if(x&1)break;else W=T}else W=wj(b[n>>0]|0)|0;if(Rj(W,vj()|0)|0){f[a>>2]=0;X=1;s=36;break}else{X=(f[a>>2]|0)==0;s=36;break}}else{X=1;s=36}while(0);c:do if((s|0)==36){do if(D){a=f[D+12>>2]|0;if((a|0)==(f[D+16>>2]|0)){v=0;W=ea(f[(f[D>>2]|0)+36>>2]|0,D|0)|0;E=v;v=0;if(E&1)break c;else Y=W}else Y=wj(b[a>>0]|0)|0;if(!(Rj(Y,vj()|0)|0))if(X)break;else{s=84;break}else{f[c>>2]=0;s=82;break}}else s=82;while(0);if((s|0)==82?X:0)s=84;if((s|0)==84)f[h>>2]=f[h>>2]|2;I=d;u=q;while(1){if((I|0)==(e|0)){s=90;break}if((b[u>>0]|0)==2){Z=I;break}I=I+12|0;u=u+1|0}if((s|0)==90){f[h>>2]=f[h>>2]|4;Z=e}if(r|0)Bg(r);t=j;return Z|0}while(0);Z=Ra()|0;_=Z;$=G}else if((s|0)==42){Z=Ra()|0;_=Z;$=G}else if((s|0)==48){Z=Ra()|0;_=Z;$=G}else if((s|0)==58){Z=Ra()|0;_=Z;$=G}else if((s|0)==74){s=Ra()|0;_=s;$=G}if(!r){o=$;p=_}else{Bg(r);o=$;p=_}}_a(p|0);return 0}function ll(a){a=a|0;gk(a);return}function ml(a){a=a|0;gk(a);Ns(a);return}function nl(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;i=t;t=t+48|0;j=i+40|0;k=i;l=i+32|0;m=i+36|0;n=i+28|0;o=i+24|0;a:do if(!(f[e+4>>2]&1)){f[l>>2]=-1;p=f[(f[a>>2]|0)+16>>2]|0;f[m>>2]=f[c>>2];f[n>>2]=f[d>>2];f[k>>2]=f[m>>2];f[j>>2]=f[n>>2];q=Nc[p&63](a,k,j,e,g,l)|0;f[c>>2]=q;switch(f[l>>2]|0){case 0:{b[h>>0]=0;break}case 1:{b[h>>0]=1;break}default:{b[h>>0]=1;f[g>>2]=4}}r=f[c>>2]|0}else{Sj(j,e);v=0;q=fa(24,j|0,25372)|0;p=v;v=0;do if(p&1){s=Ra()|0;u=G;Ck(j);w=s;x=u}else{Ck(j);Sj(j,e);v=0;u=fa(24,j|0,25380)|0;s=v;v=0;if(s&1){s=Ra()|0;y=G;Ck(j);w=s;x=y;break}Ck(j);v=0;ta(f[(f[u>>2]|0)+24>>2]|0,k|0,u|0);y=v;v=0;b:do if(y&1){s=Ra()|0;z=s;A=G}else{v=0;ta(f[(f[u>>2]|0)+28>>2]|0,k+12|0,u|0);s=v;v=0;if(s&1){s=Ra()|0;B=G;tt(k);z=s;A=B;break}f[o>>2]=f[d>>2];B=k+24|0;v=0;f[j>>2]=f[o>>2];s=ma(8,c|0,j|0,k|0,B|0,q|0,g|0,1)|0;C=v;v=0;if(C&1){C=Ra()|0;D=G;E=B;while(1){E=E+-12|0;tt(E);if((E|0)==(k|0)){z=C;A=D;break b}}}b[h>>0]=(s|0)==(k|0)&1;D=f[c>>2]|0;C=B;do{C=C+-12|0;tt(C)}while((C|0)!=(k|0));r=D;break a}while(0);w=z;x=A}while(0);_a(w|0)}while(0);t=i;return r|0}function ol(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=Ml(a,j,i,d,e,g)|0;t=h;return l|0}function pl(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=Ll(a,j,i,d,e,g)|0;t=h;return l|0}function ql(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=Kl(a,j,i,d,e,g)|0;t=h;return l|0}function rl(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=Jl(a,j,i,d,e,g)|0;t=h;return l|0}function sl(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=Il(a,j,i,d,e,g)|0;t=h;return l|0}function tl(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=El(a,j,i,d,e,g)|0;t=h;return l|0}function ul(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=Dl(a,j,i,d,e,g)|0;t=h;return l|0}function vl(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=Cl(a,j,i,d,e,g)|0;t=h;return l|0}function wl(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=zl(a,j,i,d,e,g)|0;t=h;return l|0}function xl(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;a=t;t=t+304|0;i=a+264|0;j=a+160|0;k=a+292|0;l=a+280|0;m=a+276|0;n=a;o=a+272|0;p=a+268|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;q=0;while(1){if((q|0)==3)break;f[k+(q<<2)>>2]=0;q=q+1|0}Sj(l,e);v=0;e=fa(24,l|0,25372)|0;q=v;v=0;if(!(q&1)?(v=0,ha(f[(f[e>>2]|0)+48>>2]|0,e|0,6864,6890,j|0)|0,e=v,v=0,!(e&1)):0){Ck(l);f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[l+(e<<2)>>2]=0;e=e+1|0}e=l+11|0;if((b[e>>0]|0)<0)r=(f[l+8>>2]&2147483647)+-1|0;else r=10;v=0;ua(12,l|0,r|0,0);r=v;v=0;if(r&1){r=Ra()|0;s=r;u=G}else{r=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=r;f[o>>2]=n;f[p>>2]=0;q=l+4|0;w=l+8|0;x=f[c>>2]|0;y=r;r=x;z=x;a:while(1){if(z){x=f[z+12>>2]|0;if((x|0)==(f[z+16>>2]|0)){v=0;A=ea(f[(f[z>>2]|0)+36>>2]|0,z|0)|0;B=v;v=0;if(B&1){C=35;break}else D=A}else D=Aj(f[x>>2]|0)|0;if(Tj(D,zj()|0)|0){f[c>>2]=0;E=0;F=0;H=1}else{E=z;F=r;H=0}}else{E=0;F=0;H=1}x=f[d>>2]|0;do if(x){A=f[x+12>>2]|0;if((A|0)==(f[x+16>>2]|0)){v=0;B=ea(f[(f[x>>2]|0)+36>>2]|0,x|0)|0;I=v;v=0;if(I&1){C=35;break a}else J=B}else J=Aj(f[A>>2]|0)|0;if(!(Tj(J,zj()|0)|0))if(H){K=x;break}else{L=y;M=x;C=47;break a}else{f[d>>2]=0;C=25;break}}else C=25;while(0);if((C|0)==25){C=0;if(H){L=y;M=0;C=47;break}else K=0}x=b[e>>0]|0;A=x<<24>>24<0?f[q>>2]|0:x&255;if((f[m>>2]|0)==(y+A|0)){v=0;ua(12,l|0,A<<1|0,0);x=v;v=0;if(x&1){C=37;break}if((b[e>>0]|0)<0)N=(f[w>>2]&2147483647)+-1|0;else N=10;v=0;ua(12,l|0,N|0,0);x=v;v=0;if(x&1){C=37;break}x=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=x+A;O=x}else O=y;x=E+12|0;A=f[x>>2]|0;B=E+16|0;if((A|0)==(f[B>>2]|0)){v=0;I=ea(f[(f[E>>2]|0)+36>>2]|0,E|0)|0;P=v;v=0;if(P&1){C=35;break}else Q=I}else Q=Aj(f[A>>2]|0)|0;v=0;A=oa(2,Q|0,16,O|0,m|0,p|0,0,k|0,n|0,o|0,j|0)|0;I=v;v=0;if(I&1){C=35;break}if(A|0){L=O;M=K;C=47;break}A=f[x>>2]|0;if((A|0)==(f[B>>2]|0)){v=0;ea(f[(f[E>>2]|0)+40>>2]|0,E|0)|0;B=v;v=0;if(B&1){C=35;break}}else{f[x>>2]=A+4;Aj(f[A>>2]|0)|0}y=O;r=F;z=E}if((C|0)==35){z=Ra()|0;R=z;S=G}else if((C|0)==37){z=Ra()|0;R=z;S=G}else if((C|0)==47){v=0;ua(12,l|0,(f[m>>2]|0)-L|0,0);L=v;v=0;b:do if((!(L&1)?(m=b[e>>0]|0,z=f[l>>2]|0,v=0,r=da(2)|0,O=v,v=0,!(O&1)):0)?(v=0,f[i>>2]=h,O=ha(6,(m<<24>>24<0?z:l)|0,r|0,18070,i|0)|0,r=v,v=0,!(r&1)):0){if((O|0)!=1)f[g>>2]=4;if(E){O=f[E+12>>2]|0;if((O|0)==(f[E+16>>2]|0)){v=0;r=ea(f[(f[F>>2]|0)+36>>2]|0,E|0)|0;z=v;v=0;if(z&1)break;else T=r}else T=Aj(f[O>>2]|0)|0;if(Tj(T,zj()|0)|0){f[c>>2]=0;U=1}else U=0}else U=1;do if(M){O=f[M+12>>2]|0;if((O|0)==(f[M+16>>2]|0)){v=0;r=ea(f[(f[M>>2]|0)+36>>2]|0,M|0)|0;z=v;v=0;if(z&1)break b;else V=r}else V=Aj(f[O>>2]|0)|0;if(!(Tj(V,zj()|0)|0))if(U)break;else{C=66;break}else{f[d>>2]=0;C=64;break}}else C=64;while(0);if((C|0)==64?U:0)C=66;if((C|0)==66)f[g>>2]=f[g>>2]|2;O=f[c>>2]|0;$s(l);$s(k);t=a;return O|0}while(0);a=Ra()|0;R=a;S=G}s=R;u=S}$s(l);W=s;X=u}else{u=Ra()|0;s=G;Ck(l);W=u;X=s}$s(k);_a(W|0);return 0}function yl(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|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=f[e>>2]|0;n=(m|0)==(d|0);do if(n){o=(f[l+96>>2]|0)==(a|0);if(!o?(f[l+100>>2]|0)!=(a|0):0){p=5;break}f[e>>2]=d+1;b[d>>0]=o?43:45;f[g>>2]=0;q=0}else p=5;while(0);a:do if((p|0)==5){o=b[i+11>>0]|0;if((a|0)==(h|0)?((o<<24>>24<0?f[i+4>>2]|0:o&255)|0)!=0:0){o=f[k>>2]|0;if((o-j|0)>=160){q=0;break}r=f[g>>2]|0;f[k>>2]=o+4;f[o>>2]=r;f[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((f[s>>2]|0)==(a|0)){t=s;break}else o=o+1|0}o=t-l|0;r=o>>2;if((o|0)>92)q=-1;else{switch(c|0){case 10:case 8:{if((r|0)>=(c|0)){q=-1;break a}break}case 16:{if((o|0)>=88){if(n){q=-1;break a}if((m-d|0)>=3){q=-1;break a}if((b[m+-1>>0]|0)!=48){q=-1;break a}f[g>>2]=0;o=b[6864+r>>0]|0;f[e>>2]=m+1;b[m>>0]=o;q=0;break a}break}default:{}}o=b[6864+r>>0]|0;f[e>>2]=m+1;b[m>>0]=o;f[g>>2]=(f[g>>2]|0)+1;q=0}}while(0);return q|0}
  function zl(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;a=t;t=t+336|0;i=a+160|0;j=a+328|0;k=a+324|0;l=a+312|0;m=a+300|0;n=a+296|0;o=a;q=a+292|0;r=a+288|0;s=a+333|0;u=a+332|0;Al(l,e,i,j,k);f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[m+(e<<2)>>2]=0;e=e+1|0}e=m+11|0;if((b[e>>0]|0)<0)w=(f[m+8>>2]&2147483647)+-1|0;else w=10;v=0;ua(12,m|0,w|0,0);w=v;v=0;if(w&1){w=Ra()|0;x=w;y=G}else{w=(b[e>>0]|0)<0?f[m>>2]|0:m;f[n>>2]=w;f[q>>2]=o;f[r>>2]=0;b[s>>0]=1;b[u>>0]=69;z=m+4|0;A=m+8|0;B=f[c>>2]|0;C=w;w=B;D=B;a:while(1){if(D){B=f[D+12>>2]|0;if((B|0)==(f[D+16>>2]|0)){v=0;E=ea(f[(f[D>>2]|0)+36>>2]|0,D|0)|0;F=v;v=0;if(F&1){H=29;break}else I=E}else I=Aj(f[B>>2]|0)|0;if(Tj(I,zj()|0)|0){f[c>>2]=0;J=0;K=0;L=1}else{J=D;K=w;L=0}}else{J=0;K=0;L=1}B=f[d>>2]|0;do if(B){E=f[B+12>>2]|0;if((E|0)==(f[B+16>>2]|0)){v=0;F=ea(f[(f[B>>2]|0)+36>>2]|0,B|0)|0;M=v;v=0;if(M&1){H=29;break a}else N=F}else N=Aj(f[E>>2]|0)|0;if(!(Tj(N,zj()|0)|0))if(L){O=B;break}else{P=C;Q=B;H=41;break a}else{f[d>>2]=0;H=20;break}}else H=20;while(0);if((H|0)==20){H=0;if(L){P=C;Q=0;H=41;break}else O=0}B=b[e>>0]|0;E=B<<24>>24<0?f[z>>2]|0:B&255;if((f[n>>2]|0)==(C+E|0)){v=0;ua(12,m|0,E<<1|0,0);B=v;v=0;if(B&1){H=31;break}if((b[e>>0]|0)<0)R=(f[A>>2]&2147483647)+-1|0;else R=10;v=0;ua(12,m|0,R|0,0);B=v;v=0;if(B&1){H=31;break}B=(b[e>>0]|0)<0?f[m>>2]|0:m;f[n>>2]=B+E;S=B}else S=C;B=J+12|0;E=f[B>>2]|0;F=J+16|0;if((E|0)==(f[F>>2]|0)){v=0;M=ea(f[(f[J>>2]|0)+36>>2]|0,J|0)|0;T=v;v=0;if(T&1){H=29;break}else U=M}else U=Aj(f[E>>2]|0)|0;v=0;E=qa(2,U|0,s|0,u|0,S|0,n|0,f[j>>2]|0,f[k>>2]|0,l|0,o|0,q|0,r|0,i|0)|0;M=v;v=0;if(M&1){H=29;break}if(E|0){P=S;Q=O;H=41;break}E=f[B>>2]|0;if((E|0)==(f[F>>2]|0)){v=0;ea(f[(f[J>>2]|0)+40>>2]|0,J|0)|0;F=v;v=0;if(F&1){H=29;break}}else{f[B>>2]=E+4;Aj(f[E>>2]|0)|0}C=S;w=K;D=J}if((H|0)==29){D=Ra()|0;V=D;W=G}else if((H|0)==31){D=Ra()|0;V=D;W=G}else if((H|0)==41){D=b[l+11>>0]|0;if(!((b[s>>0]|0)==0?1:((D<<24>>24<0?f[l+4>>2]|0:D&255)|0)==0)?(D=f[q>>2]|0,(D-o|0)<160):0){s=f[r>>2]|0;f[q>>2]=D+4;f[D>>2]=s}v=0;X=+ca(1,P|0,f[n>>2]|0,g|0);n=v;v=0;b:do if(!(n&1)?(p[h>>3]=X,v=0,va(8,l|0,o|0,f[q>>2]|0,g|0),P=v,v=0,!(P&1)):0){if(J){P=f[J+12>>2]|0;if((P|0)==(f[J+16>>2]|0)){v=0;s=ea(f[(f[K>>2]|0)+36>>2]|0,J|0)|0;D=v;v=0;if(D&1)break;else Y=s}else Y=Aj(f[P>>2]|0)|0;if(Tj(Y,zj()|0)|0){f[c>>2]=0;Z=1}else Z=0}else Z=1;do if(Q){P=f[Q+12>>2]|0;if((P|0)==(f[Q+16>>2]|0)){v=0;s=ea(f[(f[Q>>2]|0)+36>>2]|0,Q|0)|0;D=v;v=0;if(D&1)break b;else _=s}else _=Aj(f[P>>2]|0)|0;if(!(Tj(_,zj()|0)|0))if(Z)break;else{H=60;break}else{f[d>>2]=0;H=58;break}}else H=58;while(0);if((H|0)==58?Z:0)H=60;if((H|0)==60)f[g>>2]=f[g>>2]|2;P=f[c>>2]|0;$s(m);$s(l);t=a;return P|0}while(0);a=Ra()|0;V=a;W=G}x=V;y=W}$s(m);$s(l);_a(x|0);return 0}function Al(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;g=t;t=t+16|0;h=g;Sj(h,b);v=0;b=fa(24,h|0,25372)|0;i=v;v=0;if(!(i&1)?(v=0,ha(f[(f[b>>2]|0)+48>>2]|0,b|0,6864,6896,c|0)|0,c=v,v=0,!(c&1)):0){v=0;c=fa(24,h|0,25380)|0;b=v;v=0;if(((!(b&1)?(v=0,b=ea(f[(f[c>>2]|0)+12>>2]|0,c|0)|0,i=v,v=0,!(i&1)):0)?(f[d>>2]=b,v=0,b=ea(f[(f[c>>2]|0)+16>>2]|0,c|0)|0,d=v,v=0,!(d&1)):0)?(f[e>>2]=b,v=0,ta(f[(f[c>>2]|0)+20>>2]|0,a|0,c|0),c=v,v=0,!(c&1)):0){Ck(h);t=g;return}g=Ra()|0;j=g;k=G}else{g=Ra()|0;j=g;k=G}Ck(h);_a(j|0)}function Bl(a,c,d,e,g,h,i,j,k,l,m,n){a=a|0;c=c|0;d=d|0;e=e|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;a:do if((a|0)==(h|0))if(b[c>>0]|0){b[c>>0]=0;o=f[g>>2]|0;f[g>>2]=o+1;b[o>>0]=46;o=b[j+11>>0]|0;if(((o<<24>>24<0?f[j+4>>2]|0:o&255)|0)!=0?(o=f[l>>2]|0,(o-k|0)<160):0){p=f[m>>2]|0;f[l>>2]=o+4;f[o>>2]=p;q=0}else q=0}else q=-1;else{if((a|0)==(i|0)?(p=b[j+11>>0]|0,(p<<24>>24<0?f[j+4>>2]|0:p&255)|0):0){if(!(b[c>>0]|0)){q=-1;break}p=f[l>>2]|0;if((p-k|0)>=160){q=0;break}o=f[m>>2]|0;f[l>>2]=p+4;f[p>>2]=o;f[m>>2]=0;q=0;break}o=n+128|0;p=0;while(1){r=n+(p<<2)|0;if((p|0)==32){s=o;break}if((f[r>>2]|0)==(a|0)){s=r;break}else p=p+1|0}p=s-n|0;if((p|0)<=124){o=b[6864+(p>>2)>>0]|0;r=p+-88|0;switch(r>>>2|r<<30|0){case 2:case 3:{r=f[g>>2]|0;if((r|0)!=(e|0)?(b[r+-1>>0]&95)!=(b[d>>0]&127):0){q=-1;break a}f[g>>2]=r+1;b[r>>0]=o;q=0;break a;break}case 1:case 0:{b[d>>0]=80;break}default:{r=o&95;if((((r|0)==(b[d>>0]|0)?(b[d>>0]=r|128,b[c>>0]|0):0)?(b[c>>0]=0,r=b[j+11>>0]|0,(r<<24>>24<0?f[j+4>>2]|0:r&255)|0):0)?(r=f[l>>2]|0,(r-k|0)<160):0){t=f[m>>2]|0;f[l>>2]=r+4;f[r>>2]=t}}}t=f[g>>2]|0;f[g>>2]=t+1;b[t>>0]=o;if((p|0)>84)q=0;else{f[m>>2]=(f[m>>2]|0)+1;q=0}}else q=-1}while(0);return q|0}function Cl(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;a=t;t=t+336|0;i=a+160|0;j=a+328|0;k=a+324|0;l=a+312|0;m=a+300|0;n=a+296|0;o=a;q=a+292|0;r=a+288|0;s=a+333|0;u=a+332|0;Al(l,e,i,j,k);f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[m+(e<<2)>>2]=0;e=e+1|0}e=m+11|0;if((b[e>>0]|0)<0)w=(f[m+8>>2]&2147483647)+-1|0;else w=10;v=0;ua(12,m|0,w|0,0);w=v;v=0;if(w&1){w=Ra()|0;x=w;y=G}else{w=(b[e>>0]|0)<0?f[m>>2]|0:m;f[n>>2]=w;f[q>>2]=o;f[r>>2]=0;b[s>>0]=1;b[u>>0]=69;z=m+4|0;A=m+8|0;B=f[c>>2]|0;C=w;w=B;D=B;a:while(1){if(D){B=f[D+12>>2]|0;if((B|0)==(f[D+16>>2]|0)){v=0;E=ea(f[(f[D>>2]|0)+36>>2]|0,D|0)|0;F=v;v=0;if(F&1){H=29;break}else I=E}else I=Aj(f[B>>2]|0)|0;if(Tj(I,zj()|0)|0){f[c>>2]=0;J=0;K=0;L=1}else{J=D;K=w;L=0}}else{J=0;K=0;L=1}B=f[d>>2]|0;do if(B){E=f[B+12>>2]|0;if((E|0)==(f[B+16>>2]|0)){v=0;F=ea(f[(f[B>>2]|0)+36>>2]|0,B|0)|0;M=v;v=0;if(M&1){H=29;break a}else N=F}else N=Aj(f[E>>2]|0)|0;if(!(Tj(N,zj()|0)|0))if(L){O=B;break}else{P=C;Q=B;H=41;break a}else{f[d>>2]=0;H=20;break}}else H=20;while(0);if((H|0)==20){H=0;if(L){P=C;Q=0;H=41;break}else O=0}B=b[e>>0]|0;E=B<<24>>24<0?f[z>>2]|0:B&255;if((f[n>>2]|0)==(C+E|0)){v=0;ua(12,m|0,E<<1|0,0);B=v;v=0;if(B&1){H=31;break}if((b[e>>0]|0)<0)R=(f[A>>2]&2147483647)+-1|0;else R=10;v=0;ua(12,m|0,R|0,0);B=v;v=0;if(B&1){H=31;break}B=(b[e>>0]|0)<0?f[m>>2]|0:m;f[n>>2]=B+E;S=B}else S=C;B=J+12|0;E=f[B>>2]|0;F=J+16|0;if((E|0)==(f[F>>2]|0)){v=0;M=ea(f[(f[J>>2]|0)+36>>2]|0,J|0)|0;T=v;v=0;if(T&1){H=29;break}else U=M}else U=Aj(f[E>>2]|0)|0;v=0;E=qa(2,U|0,s|0,u|0,S|0,n|0,f[j>>2]|0,f[k>>2]|0,l|0,o|0,q|0,r|0,i|0)|0;M=v;v=0;if(M&1){H=29;break}if(E|0){P=S;Q=O;H=41;break}E=f[B>>2]|0;if((E|0)==(f[F>>2]|0)){v=0;ea(f[(f[J>>2]|0)+40>>2]|0,J|0)|0;F=v;v=0;if(F&1){H=29;break}}else{f[B>>2]=E+4;Aj(f[E>>2]|0)|0}C=S;w=K;D=J}if((H|0)==29){D=Ra()|0;V=D;W=G}else if((H|0)==31){D=Ra()|0;V=D;W=G}else if((H|0)==41){D=b[l+11>>0]|0;if(!((b[s>>0]|0)==0?1:((D<<24>>24<0?f[l+4>>2]|0:D&255)|0)==0)?(D=f[q>>2]|0,(D-o|0)<160):0){s=f[r>>2]|0;f[q>>2]=D+4;f[D>>2]=s}v=0;X=+ca(2,P|0,f[n>>2]|0,g|0);n=v;v=0;b:do if(!(n&1)?(p[h>>3]=X,v=0,va(8,l|0,o|0,f[q>>2]|0,g|0),P=v,v=0,!(P&1)):0){if(J){P=f[J+12>>2]|0;if((P|0)==(f[J+16>>2]|0)){v=0;s=ea(f[(f[K>>2]|0)+36>>2]|0,J|0)|0;D=v;v=0;if(D&1)break;else Y=s}else Y=Aj(f[P>>2]|0)|0;if(Tj(Y,zj()|0)|0){f[c>>2]=0;Z=1}else Z=0}else Z=1;do if(Q){P=f[Q+12>>2]|0;if((P|0)==(f[Q+16>>2]|0)){v=0;s=ea(f[(f[Q>>2]|0)+36>>2]|0,Q|0)|0;D=v;v=0;if(D&1)break b;else _=s}else _=Aj(f[P>>2]|0)|0;if(!(Tj(_,zj()|0)|0))if(Z)break;else{H=60;break}else{f[d>>2]=0;H=58;break}}else H=58;while(0);if((H|0)==58?Z:0)H=60;if((H|0)==60)f[g>>2]=f[g>>2]|2;P=f[c>>2]|0;$s(m);$s(l);t=a;return P|0}while(0);a=Ra()|0;V=a;W=G}x=V;y=W}$s(m);$s(l);_a(x|0);return 0}function Dl(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,o=0,p=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;a=t;t=t+336|0;i=a+160|0;j=a+328|0;k=a+324|0;l=a+312|0;m=a+300|0;o=a+296|0;p=a;q=a+292|0;r=a+288|0;s=a+333|0;u=a+332|0;Al(l,e,i,j,k);f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[m+(e<<2)>>2]=0;e=e+1|0}e=m+11|0;if((b[e>>0]|0)<0)w=(f[m+8>>2]&2147483647)+-1|0;else w=10;v=0;ua(12,m|0,w|0,0);w=v;v=0;if(w&1){w=Ra()|0;x=w;y=G}else{w=(b[e>>0]|0)<0?f[m>>2]|0:m;f[o>>2]=w;f[q>>2]=p;f[r>>2]=0;b[s>>0]=1;b[u>>0]=69;z=m+4|0;A=m+8|0;B=f[c>>2]|0;C=w;w=B;D=B;a:while(1){if(D){B=f[D+12>>2]|0;if((B|0)==(f[D+16>>2]|0)){v=0;E=ea(f[(f[D>>2]|0)+36>>2]|0,D|0)|0;F=v;v=0;if(F&1){H=29;break}else I=E}else I=Aj(f[B>>2]|0)|0;if(Tj(I,zj()|0)|0){f[c>>2]=0;J=0;K=0;L=1}else{J=D;K=w;L=0}}else{J=0;K=0;L=1}B=f[d>>2]|0;do if(B){E=f[B+12>>2]|0;if((E|0)==(f[B+16>>2]|0)){v=0;F=ea(f[(f[B>>2]|0)+36>>2]|0,B|0)|0;M=v;v=0;if(M&1){H=29;break a}else N=F}else N=Aj(f[E>>2]|0)|0;if(!(Tj(N,zj()|0)|0))if(L){O=B;break}else{P=C;Q=B;H=41;break a}else{f[d>>2]=0;H=20;break}}else H=20;while(0);if((H|0)==20){H=0;if(L){P=C;Q=0;H=41;break}else O=0}B=b[e>>0]|0;E=B<<24>>24<0?f[z>>2]|0:B&255;if((f[o>>2]|0)==(C+E|0)){v=0;ua(12,m|0,E<<1|0,0);B=v;v=0;if(B&1){H=31;break}if((b[e>>0]|0)<0)R=(f[A>>2]&2147483647)+-1|0;else R=10;v=0;ua(12,m|0,R|0,0);B=v;v=0;if(B&1){H=31;break}B=(b[e>>0]|0)<0?f[m>>2]|0:m;f[o>>2]=B+E;S=B}else S=C;B=J+12|0;E=f[B>>2]|0;F=J+16|0;if((E|0)==(f[F>>2]|0)){v=0;M=ea(f[(f[J>>2]|0)+36>>2]|0,J|0)|0;T=v;v=0;if(T&1){H=29;break}else U=M}else U=Aj(f[E>>2]|0)|0;v=0;E=qa(2,U|0,s|0,u|0,S|0,o|0,f[j>>2]|0,f[k>>2]|0,l|0,p|0,q|0,r|0,i|0)|0;M=v;v=0;if(M&1){H=29;break}if(E|0){P=S;Q=O;H=41;break}E=f[B>>2]|0;if((E|0)==(f[F>>2]|0)){v=0;ea(f[(f[J>>2]|0)+40>>2]|0,J|0)|0;F=v;v=0;if(F&1){H=29;break}}else{f[B>>2]=E+4;Aj(f[E>>2]|0)|0}C=S;w=K;D=J}if((H|0)==29){D=Ra()|0;V=D;W=G}else if((H|0)==31){D=Ra()|0;V=D;W=G}else if((H|0)==41){D=b[l+11>>0]|0;if(!((b[s>>0]|0)==0?1:((D<<24>>24<0?f[l+4>>2]|0:D&255)|0)==0)?(D=f[q>>2]|0,(D-p|0)<160):0){s=f[r>>2]|0;f[q>>2]=D+4;f[D>>2]=s}v=0;X=+ca(3,P|0,f[o>>2]|0,g|0);o=v;v=0;b:do if(!(o&1)?(n[h>>2]=X,v=0,va(8,l|0,p|0,f[q>>2]|0,g|0),P=v,v=0,!(P&1)):0){if(J){P=f[J+12>>2]|0;if((P|0)==(f[J+16>>2]|0)){v=0;s=ea(f[(f[K>>2]|0)+36>>2]|0,J|0)|0;D=v;v=0;if(D&1)break;else Y=s}else Y=Aj(f[P>>2]|0)|0;if(Tj(Y,zj()|0)|0){f[c>>2]=0;Z=1}else Z=0}else Z=1;do if(Q){P=f[Q+12>>2]|0;if((P|0)==(f[Q+16>>2]|0)){v=0;s=ea(f[(f[Q>>2]|0)+36>>2]|0,Q|0)|0;D=v;v=0;if(D&1)break b;else _=s}else _=Aj(f[P>>2]|0)|0;if(!(Tj(_,zj()|0)|0))if(Z)break;else{H=60;break}else{f[d>>2]=0;H=58;break}}else H=58;while(0);if((H|0)==58?Z:0)H=60;if((H|0)==60)f[g>>2]=f[g>>2]|2;P=f[c>>2]|0;$s(m);$s(l);t=a;return P|0}while(0);a=Ra()|0;V=a;W=G}x=V;y=W}$s(m);$s(l);_a(x|0);return 0}function El(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;i=t;t=t+304|0;j=i+300|0;k=i+288|0;l=i+276|0;m=i+272|0;n=i;o=i+268|0;p=i+264|0;q=Xk(e)|0;r=Fl(a,e,i+160|0)|0;Gl(k,e,j);f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[l+(e<<2)>>2]=0;e=e+1|0}e=l+11|0;if((b[e>>0]|0)<0)s=(f[l+8>>2]&2147483647)+-1|0;else s=10;v=0;ua(12,l|0,s|0,0);s=v;v=0;if(s&1){s=Ra()|0;u=s;w=G}else{s=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=s;f[o>>2]=n;f[p>>2]=0;a=l+4|0;x=l+8|0;y=f[c>>2]|0;z=s;s=y;A=y;a:while(1){if(A){y=f[A+12>>2]|0;if((y|0)==(f[A+16>>2]|0)){v=0;B=ea(f[(f[A>>2]|0)+36>>2]|0,A|0)|0;C=v;v=0;if(C&1){D=29;break}else E=B}else E=Aj(f[y>>2]|0)|0;if(Tj(E,zj()|0)|0){f[c>>2]=0;F=0;H=1;I=0}else{F=s;H=0;I=A}}else{F=0;H=1;I=0}y=f[d>>2]|0;do if(y){B=f[y+12>>2]|0;if((B|0)==(f[y+16>>2]|0)){v=0;C=ea(f[(f[y>>2]|0)+36>>2]|0,y|0)|0;J=v;v=0;if(J&1){D=29;break a}else K=C}else K=Aj(f[B>>2]|0)|0;if(!(Tj(K,zj()|0)|0))if(H){L=y;break}else{M=z;N=y;D=41;break a}else{f[d>>2]=0;D=20;break}}else D=20;while(0);if((D|0)==20){D=0;if(H){M=z;N=0;D=41;break}else L=0}y=b[e>>0]|0;B=y<<24>>24<0?f[a>>2]|0:y&255;if((f[m>>2]|0)==(z+B|0)){v=0;ua(12,l|0,B<<1|0,0);y=v;v=0;if(y&1){D=31;break}if((b[e>>0]|0)<0)O=(f[x>>2]&2147483647)+-1|0;else O=10;v=0;ua(12,l|0,O|0,0);y=v;v=0;if(y&1){D=31;break}y=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=y+B;P=y}else P=z;y=I+12|0;B=f[y>>2]|0;C=I+16|0;if((B|0)==(f[C>>2]|0)){v=0;J=ea(f[(f[I>>2]|0)+36>>2]|0,I|0)|0;Q=v;v=0;if(Q&1){D=29;break}else R=J}else R=Aj(f[B>>2]|0)|0;v=0;B=oa(2,R|0,q|0,P|0,m|0,p|0,f[j>>2]|0,k|0,n|0,o|0,r|0)|0;J=v;v=0;if(J&1){D=29;break}if(B|0){M=P;N=L;D=41;break}B=f[y>>2]|0;if((B|0)==(f[C>>2]|0)){v=0;ea(f[(f[I>>2]|0)+40>>2]|0,I|0)|0;C=v;v=0;if(C&1){D=29;break}}else{f[y>>2]=B+4;Aj(f[B>>2]|0)|0}z=P;s=F;A=I}if((D|0)==29){A=Ra()|0;S=A;T=G}else if((D|0)==31){A=Ra()|0;S=A;T=G}else if((D|0)==41){A=b[k+11>>0]|0;if((A<<24>>24<0?f[k+4>>2]|0:A&255)|0?(A=f[o>>2]|0,(A-n|0)<160):0){s=f[p>>2]|0;f[o>>2]=A+4;f[A>>2]=s}v=0;s=ha(7,M|0,f[m>>2]|0,g|0,q|0)|0;q=G;m=v;v=0;b:do if(!(m&1)?(M=h,f[M>>2]=s,f[M+4>>2]=q,v=0,va(8,k|0,n|0,f[o>>2]|0,g|0),M=v,v=0,!(M&1)):0){if(I){M=f[I+12>>2]|0;if((M|0)==(f[I+16>>2]|0)){v=0;A=ea(f[(f[F>>2]|0)+36>>2]|0,I|0)|0;p=v;v=0;if(p&1)break;else U=A}else U=Aj(f[M>>2]|0)|0;if(Tj(U,zj()|0)|0){f[c>>2]=0;V=1}else V=0}else V=1;do if(N){M=f[N+12>>2]|0;if((M|0)==(f[N+16>>2]|0)){v=0;A=ea(f[(f[N>>2]|0)+36>>2]|0,N|0)|0;p=v;v=0;if(p&1)break b;else W=A}else W=Aj(f[M>>2]|0)|0;if(!(Tj(W,zj()|0)|0))if(V)break;else{D=60;break}else{f[d>>2]=0;D=58;break}}else D=58;while(0);if((D|0)==58?V:0)D=60;if((D|0)==60)f[g>>2]=f[g>>2]|2;M=f[c>>2]|0;$s(l);$s(k);t=i;return M|0}while(0);i=Ra()|0;S=i;T=G}u=S;w=T}$s(l);$s(k);_a(u|0);return 0}function Fl(a,b,c){a=a|0;b=b|0;c=c|0;return Hl(a,b,c)|0}function Gl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=t;t=t+16|0;e=d;Sj(e,b);v=0;b=fa(24,e|0,25380)|0;g=v;v=0;if((!(g&1)?(v=0,g=ea(f[(f[b>>2]|0)+16>>2]|0,b|0)|0,h=v,v=0,!(h&1)):0)?(f[c>>2]=g,v=0,ta(f[(f[b>>2]|0)+20>>2]|0,a|0,b|0),b=v,v=0,!(b&1)):0){Ck(e);t=d;return}d=Ra()|0;Ck(e);_a(d|0)}function Hl(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=t;t=t+16|0;d=a;Sj(d,b);v=0;b=fa(24,d|0,25372)|0;e=v;v=0;if(!(e&1)?(v=0,ha(f[(f[b>>2]|0)+48>>2]|0,b|0,6864,6890,c|0)|0,b=v,v=0,!(b&1)):0){Ck(d);t=a;return c|0}c=Ra()|0;Ck(d);_a(c|0);return 0}function Il(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;i=t;t=t+304|0;j=i+300|0;k=i+288|0;l=i+276|0;m=i+272|0;n=i;o=i+268|0;p=i+264|0;q=Xk(e)|0;r=Fl(a,e,i+160|0)|0;Gl(k,e,j);f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[l+(e<<2)>>2]=0;e=e+1|0}e=l+11|0;if((b[e>>0]|0)<0)s=(f[l+8>>2]&2147483647)+-1|0;else s=10;v=0;ua(12,l|0,s|0,0);s=v;v=0;if(s&1){s=Ra()|0;u=s;w=G}else{s=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=s;f[o>>2]=n;f[p>>2]=0;a=l+4|0;x=l+8|0;y=f[c>>2]|0;z=s;s=y;A=y;a:while(1){if(A){y=f[A+12>>2]|0;if((y|0)==(f[A+16>>2]|0)){v=0;B=ea(f[(f[A>>2]|0)+36>>2]|0,A|0)|0;C=v;v=0;if(C&1){D=29;break}else E=B}else E=Aj(f[y>>2]|0)|0;if(Tj(E,zj()|0)|0){f[c>>2]=0;F=0;H=1;I=0}else{F=s;H=0;I=A}}else{F=0;H=1;I=0}y=f[d>>2]|0;do if(y){B=f[y+12>>2]|0;if((B|0)==(f[y+16>>2]|0)){v=0;C=ea(f[(f[y>>2]|0)+36>>2]|0,y|0)|0;J=v;v=0;if(J&1){D=29;break a}else K=C}else K=Aj(f[B>>2]|0)|0;if(!(Tj(K,zj()|0)|0))if(H){L=y;break}else{M=z;N=y;D=41;break a}else{f[d>>2]=0;D=20;break}}else D=20;while(0);if((D|0)==20){D=0;if(H){M=z;N=0;D=41;break}else L=0}y=b[e>>0]|0;B=y<<24>>24<0?f[a>>2]|0:y&255;if((f[m>>2]|0)==(z+B|0)){v=0;ua(12,l|0,B<<1|0,0);y=v;v=0;if(y&1){D=31;break}if((b[e>>0]|0)<0)O=(f[x>>2]&2147483647)+-1|0;else O=10;v=0;ua(12,l|0,O|0,0);y=v;v=0;if(y&1){D=31;break}y=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=y+B;P=y}else P=z;y=I+12|0;B=f[y>>2]|0;C=I+16|0;if((B|0)==(f[C>>2]|0)){v=0;J=ea(f[(f[I>>2]|0)+36>>2]|0,I|0)|0;Q=v;v=0;if(Q&1){D=29;break}else R=J}else R=Aj(f[B>>2]|0)|0;v=0;B=oa(2,R|0,q|0,P|0,m|0,p|0,f[j>>2]|0,k|0,n|0,o|0,r|0)|0;J=v;v=0;if(J&1){D=29;break}if(B|0){M=P;N=L;D=41;break}B=f[y>>2]|0;if((B|0)==(f[C>>2]|0)){v=0;ea(f[(f[I>>2]|0)+40>>2]|0,I|0)|0;C=v;v=0;if(C&1){D=29;break}}else{f[y>>2]=B+4;Aj(f[B>>2]|0)|0}z=P;s=F;A=I}if((D|0)==29){A=Ra()|0;S=A;T=G}else if((D|0)==31){A=Ra()|0;S=A;T=G}else if((D|0)==41){A=b[k+11>>0]|0;if((A<<24>>24<0?f[k+4>>2]|0:A&255)|0?(A=f[o>>2]|0,(A-n|0)<160):0){s=f[p>>2]|0;f[o>>2]=A+4;f[A>>2]=s}v=0;s=ha(8,M|0,f[m>>2]|0,g|0,q|0)|0;q=v;v=0;b:do if(!(q&1)?(f[h>>2]=s,v=0,va(8,k|0,n|0,f[o>>2]|0,g|0),m=v,v=0,!(m&1)):0){if(I){m=f[I+12>>2]|0;if((m|0)==(f[I+16>>2]|0)){v=0;M=ea(f[(f[F>>2]|0)+36>>2]|0,I|0)|0;A=v;v=0;if(A&1)break;else U=M}else U=Aj(f[m>>2]|0)|0;if(Tj(U,zj()|0)|0){f[c>>2]=0;V=1}else V=0}else V=1;do if(N){m=f[N+12>>2]|0;if((m|0)==(f[N+16>>2]|0)){v=0;M=ea(f[(f[N>>2]|0)+36>>2]|0,N|0)|0;A=v;v=0;if(A&1)break b;else W=M}else W=Aj(f[m>>2]|0)|0;if(!(Tj(W,zj()|0)|0))if(V)break;else{D=60;break}else{f[d>>2]=0;D=58;break}}else D=58;while(0);if((D|0)==58?V:0)D=60;if((D|0)==60)f[g>>2]=f[g>>2]|2;m=f[c>>2]|0;$s(l);$s(k);t=i;return m|0}while(0);i=Ra()|0;S=i;T=G}u=S;w=T}$s(l);$s(k);_a(u|0);return 0}function Jl(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;i=t;t=t+304|0;j=i+300|0;k=i+288|0;l=i+276|0;m=i+272|0;n=i;o=i+268|0;p=i+264|0;q=Xk(e)|0;r=Fl(a,e,i+160|0)|0;Gl(k,e,j);f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[l+(e<<2)>>2]=0;e=e+1|0}e=l+11|0;if((b[e>>0]|0)<0)s=(f[l+8>>2]&2147483647)+-1|0;else s=10;v=0;ua(12,l|0,s|0,0);s=v;v=0;if(s&1){s=Ra()|0;u=s;w=G}else{s=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=s;f[o>>2]=n;f[p>>2]=0;a=l+4|0;x=l+8|0;y=f[c>>2]|0;z=s;s=y;A=y;a:while(1){if(A){y=f[A+12>>2]|0;if((y|0)==(f[A+16>>2]|0)){v=0;B=ea(f[(f[A>>2]|0)+36>>2]|0,A|0)|0;C=v;v=0;if(C&1){D=29;break}else E=B}else E=Aj(f[y>>2]|0)|0;if(Tj(E,zj()|0)|0){f[c>>2]=0;F=0;H=1;I=0}else{F=s;H=0;I=A}}else{F=0;H=1;I=0}y=f[d>>2]|0;do if(y){B=f[y+12>>2]|0;if((B|0)==(f[y+16>>2]|0)){v=0;C=ea(f[(f[y>>2]|0)+36>>2]|0,y|0)|0;J=v;v=0;if(J&1){D=29;break a}else K=C}else K=Aj(f[B>>2]|0)|0;if(!(Tj(K,zj()|0)|0))if(H){L=y;break}else{M=z;N=y;D=41;break a}else{f[d>>2]=0;D=20;break}}else D=20;while(0);if((D|0)==20){D=0;if(H){M=z;N=0;D=41;break}else L=0}y=b[e>>0]|0;B=y<<24>>24<0?f[a>>2]|0:y&255;if((f[m>>2]|0)==(z+B|0)){v=0;ua(12,l|0,B<<1|0,0);y=v;v=0;if(y&1){D=31;break}if((b[e>>0]|0)<0)O=(f[x>>2]&2147483647)+-1|0;else O=10;v=0;ua(12,l|0,O|0,0);y=v;v=0;if(y&1){D=31;break}y=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=y+B;P=y}else P=z;y=I+12|0;B=f[y>>2]|0;C=I+16|0;if((B|0)==(f[C>>2]|0)){v=0;J=ea(f[(f[I>>2]|0)+36>>2]|0,I|0)|0;Q=v;v=0;if(Q&1){D=29;break}else R=J}else R=Aj(f[B>>2]|0)|0;v=0;B=oa(2,R|0,q|0,P|0,m|0,p|0,f[j>>2]|0,k|0,n|0,o|0,r|0)|0;J=v;v=0;if(J&1){D=29;break}if(B|0){M=P;N=L;D=41;break}B=f[y>>2]|0;if((B|0)==(f[C>>2]|0)){v=0;ea(f[(f[I>>2]|0)+40>>2]|0,I|0)|0;C=v;v=0;if(C&1){D=29;break}}else{f[y>>2]=B+4;Aj(f[B>>2]|0)|0}z=P;s=F;A=I}if((D|0)==29){A=Ra()|0;S=A;T=G}else if((D|0)==31){A=Ra()|0;S=A;T=G}else if((D|0)==41){A=b[k+11>>0]|0;if((A<<24>>24<0?f[k+4>>2]|0:A&255)|0?(A=f[o>>2]|0,(A-n|0)<160):0){s=f[p>>2]|0;f[o>>2]=A+4;f[A>>2]=s}v=0;s=ha(9,M|0,f[m>>2]|0,g|0,q|0)|0;q=v;v=0;b:do if(!(q&1)?(f[h>>2]=s,v=0,va(8,k|0,n|0,f[o>>2]|0,g|0),m=v,v=0,!(m&1)):0){if(I){m=f[I+12>>2]|0;if((m|0)==(f[I+16>>2]|0)){v=0;M=ea(f[(f[F>>2]|0)+36>>2]|0,I|0)|0;A=v;v=0;if(A&1)break;else U=M}else U=Aj(f[m>>2]|0)|0;if(Tj(U,zj()|0)|0){f[c>>2]=0;V=1}else V=0}else V=1;do if(N){m=f[N+12>>2]|0;if((m|0)==(f[N+16>>2]|0)){v=0;M=ea(f[(f[N>>2]|0)+36>>2]|0,N|0)|0;A=v;v=0;if(A&1)break b;else W=M}else W=Aj(f[m>>2]|0)|0;if(!(Tj(W,zj()|0)|0))if(V)break;else{D=60;break}else{f[d>>2]=0;D=58;break}}else D=58;while(0);if((D|0)==58?V:0)D=60;if((D|0)==60)f[g>>2]=f[g>>2]|2;m=f[c>>2]|0;$s(l);$s(k);t=i;return m|0}while(0);i=Ra()|0;S=i;T=G}u=S;w=T}$s(l);$s(k);_a(u|0);return 0}function Kl(a,c,e,g,h,i){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;j=t;t=t+304|0;k=j+300|0;l=j+288|0;m=j+276|0;n=j+272|0;o=j;p=j+268|0;q=j+264|0;r=Xk(g)|0;s=Fl(a,g,j+160|0)|0;Gl(l,g,k);f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[m+(g<<2)>>2]=0;g=g+1|0}g=m+11|0;if((b[g>>0]|0)<0)u=(f[m+8>>2]&2147483647)+-1|0;else u=10;v=0;ua(12,m|0,u|0,0);u=v;v=0;if(u&1){u=Ra()|0;w=u;x=G}else{u=(b[g>>0]|0)<0?f[m>>2]|0:m;f[n>>2]=u;f[p>>2]=o;f[q>>2]=0;a=m+4|0;y=m+8|0;z=f[c>>2]|0;A=u;u=z;B=z;a:while(1){if(B){z=f[B+12>>2]|0;if((z|0)==(f[B+16>>2]|0)){v=0;C=ea(f[(f[B>>2]|0)+36>>2]|0,B|0)|0;D=v;v=0;if(D&1){E=29;break}else F=C}else F=Aj(f[z>>2]|0)|0;if(Tj(F,zj()|0)|0){f[c>>2]=0;H=0;I=1;J=0}else{H=u;I=0;J=B}}else{H=0;I=1;J=0}z=f[e>>2]|0;do if(z){C=f[z+12>>2]|0;if((C|0)==(f[z+16>>2]|0)){v=0;D=ea(f[(f[z>>2]|0)+36>>2]|0,z|0)|0;K=v;v=0;if(K&1){E=29;break a}else L=D}else L=Aj(f[C>>2]|0)|0;if(!(Tj(L,zj()|0)|0))if(I){M=z;break}else{N=A;O=z;E=41;break a}else{f[e>>2]=0;E=20;break}}else E=20;while(0);if((E|0)==20){E=0;if(I){N=A;O=0;E=41;break}else M=0}z=b[g>>0]|0;C=z<<24>>24<0?f[a>>2]|0:z&255;if((f[n>>2]|0)==(A+C|0)){v=0;ua(12,m|0,C<<1|0,0);z=v;v=0;if(z&1){E=31;break}if((b[g>>0]|0)<0)P=(f[y>>2]&2147483647)+-1|0;else P=10;v=0;ua(12,m|0,P|0,0);z=v;v=0;if(z&1){E=31;break}z=(b[g>>0]|0)<0?f[m>>2]|0:m;f[n>>2]=z+C;Q=z}else Q=A;z=J+12|0;C=f[z>>2]|0;D=J+16|0;if((C|0)==(f[D>>2]|0)){v=0;K=ea(f[(f[J>>2]|0)+36>>2]|0,J|0)|0;R=v;v=0;if(R&1){E=29;break}else S=K}else S=Aj(f[C>>2]|0)|0;v=0;C=oa(2,S|0,r|0,Q|0,n|0,q|0,f[k>>2]|0,l|0,o|0,p|0,s|0)|0;K=v;v=0;if(K&1){E=29;break}if(C|0){N=Q;O=M;E=41;break}C=f[z>>2]|0;if((C|0)==(f[D>>2]|0)){v=0;ea(f[(f[J>>2]|0)+40>>2]|0,J|0)|0;D=v;v=0;if(D&1){E=29;break}}else{f[z>>2]=C+4;Aj(f[C>>2]|0)|0}A=Q;u=H;B=J}if((E|0)==29){B=Ra()|0;T=B;U=G}else if((E|0)==31){B=Ra()|0;T=B;U=G}else if((E|0)==41){B=b[l+11>>0]|0;if((B<<24>>24<0?f[l+4>>2]|0:B&255)|0?(B=f[p>>2]|0,(B-o|0)<160):0){u=f[q>>2]|0;f[p>>2]=B+4;f[B>>2]=u}v=0;u=ha(10,N|0,f[n>>2]|0,h|0,r|0)|0;r=v;v=0;b:do if(!(r&1)?(d[i>>1]=u,v=0,va(8,l|0,o|0,f[p>>2]|0,h|0),n=v,v=0,!(n&1)):0){if(J){n=f[J+12>>2]|0;if((n|0)==(f[J+16>>2]|0)){v=0;N=ea(f[(f[H>>2]|0)+36>>2]|0,J|0)|0;B=v;v=0;if(B&1)break;else V=N}else V=Aj(f[n>>2]|0)|0;if(Tj(V,zj()|0)|0){f[c>>2]=0;W=1}else W=0}else W=1;do if(O){n=f[O+12>>2]|0;if((n|0)==(f[O+16>>2]|0)){v=0;N=ea(f[(f[O>>2]|0)+36>>2]|0,O|0)|0;B=v;v=0;if(B&1)break b;else X=N}else X=Aj(f[n>>2]|0)|0;if(!(Tj(X,zj()|0)|0))if(W)break;else{E=60;break}else{f[e>>2]=0;E=58;break}}else E=58;while(0);if((E|0)==58?W:0)E=60;if((E|0)==60)f[h>>2]=f[h>>2]|2;n=f[c>>2]|0;$s(m);$s(l);t=j;return n|0}while(0);j=Ra()|0;T=j;U=G}w=T;x=U}$s(m);$s(l);_a(w|0);return 0}function Ll(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;i=t;t=t+304|0;j=i+300|0;k=i+288|0;l=i+276|0;m=i+272|0;n=i;o=i+268|0;p=i+264|0;q=Xk(e)|0;r=Fl(a,e,i+160|0)|0;Gl(k,e,j);f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[l+(e<<2)>>2]=0;e=e+1|0}e=l+11|0;if((b[e>>0]|0)<0)s=(f[l+8>>2]&2147483647)+-1|0;else s=10;v=0;ua(12,l|0,s|0,0);s=v;v=0;if(s&1){s=Ra()|0;u=s;w=G}else{s=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=s;f[o>>2]=n;f[p>>2]=0;a=l+4|0;x=l+8|0;y=f[c>>2]|0;z=s;s=y;A=y;a:while(1){if(A){y=f[A+12>>2]|0;if((y|0)==(f[A+16>>2]|0)){v=0;B=ea(f[(f[A>>2]|0)+36>>2]|0,A|0)|0;C=v;v=0;if(C&1){D=29;break}else E=B}else E=Aj(f[y>>2]|0)|0;if(Tj(E,zj()|0)|0){f[c>>2]=0;F=0;H=1;I=0}else{F=s;H=0;I=A}}else{F=0;H=1;I=0}y=f[d>>2]|0;do if(y){B=f[y+12>>2]|0;if((B|0)==(f[y+16>>2]|0)){v=0;C=ea(f[(f[y>>2]|0)+36>>2]|0,y|0)|0;J=v;v=0;if(J&1){D=29;break a}else K=C}else K=Aj(f[B>>2]|0)|0;if(!(Tj(K,zj()|0)|0))if(H){L=y;break}else{M=z;N=y;D=41;break a}else{f[d>>2]=0;D=20;break}}else D=20;while(0);if((D|0)==20){D=0;if(H){M=z;N=0;D=41;break}else L=0}y=b[e>>0]|0;B=y<<24>>24<0?f[a>>2]|0:y&255;if((f[m>>2]|0)==(z+B|0)){v=0;ua(12,l|0,B<<1|0,0);y=v;v=0;if(y&1){D=31;break}if((b[e>>0]|0)<0)O=(f[x>>2]&2147483647)+-1|0;else O=10;v=0;ua(12,l|0,O|0,0);y=v;v=0;if(y&1){D=31;break}y=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=y+B;P=y}else P=z;y=I+12|0;B=f[y>>2]|0;C=I+16|0;if((B|0)==(f[C>>2]|0)){v=0;J=ea(f[(f[I>>2]|0)+36>>2]|0,I|0)|0;Q=v;v=0;if(Q&1){D=29;break}else R=J}else R=Aj(f[B>>2]|0)|0;v=0;B=oa(2,R|0,q|0,P|0,m|0,p|0,f[j>>2]|0,k|0,n|0,o|0,r|0)|0;J=v;v=0;if(J&1){D=29;break}if(B|0){M=P;N=L;D=41;break}B=f[y>>2]|0;if((B|0)==(f[C>>2]|0)){v=0;ea(f[(f[I>>2]|0)+40>>2]|0,I|0)|0;C=v;v=0;if(C&1){D=29;break}}else{f[y>>2]=B+4;Aj(f[B>>2]|0)|0}z=P;s=F;A=I}if((D|0)==29){A=Ra()|0;S=A;T=G}else if((D|0)==31){A=Ra()|0;S=A;T=G}else if((D|0)==41){A=b[k+11>>0]|0;if((A<<24>>24<0?f[k+4>>2]|0:A&255)|0?(A=f[o>>2]|0,(A-n|0)<160):0){s=f[p>>2]|0;f[o>>2]=A+4;f[A>>2]=s}v=0;s=ha(11,M|0,f[m>>2]|0,g|0,q|0)|0;q=G;m=v;v=0;b:do if(!(m&1)?(M=h,f[M>>2]=s,f[M+4>>2]=q,v=0,va(8,k|0,n|0,f[o>>2]|0,g|0),M=v,v=0,!(M&1)):0){if(I){M=f[I+12>>2]|0;if((M|0)==(f[I+16>>2]|0)){v=0;A=ea(f[(f[F>>2]|0)+36>>2]|0,I|0)|0;p=v;v=0;if(p&1)break;else U=A}else U=Aj(f[M>>2]|0)|0;if(Tj(U,zj()|0)|0){f[c>>2]=0;V=1}else V=0}else V=1;do if(N){M=f[N+12>>2]|0;if((M|0)==(f[N+16>>2]|0)){v=0;A=ea(f[(f[N>>2]|0)+36>>2]|0,N|0)|0;p=v;v=0;if(p&1)break b;else W=A}else W=Aj(f[M>>2]|0)|0;if(!(Tj(W,zj()|0)|0))if(V)break;else{D=60;break}else{f[d>>2]=0;D=58;break}}else D=58;while(0);if((D|0)==58?V:0)D=60;if((D|0)==60)f[g>>2]=f[g>>2]|2;M=f[c>>2]|0;$s(l);$s(k);t=i;return M|0}while(0);i=Ra()|0;S=i;T=G}u=S;w=T}$s(l);$s(k);_a(u|0);return 0}function Ml(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;i=t;t=t+304|0;j=i+300|0;k=i+288|0;l=i+276|0;m=i+272|0;n=i;o=i+268|0;p=i+264|0;q=Xk(e)|0;r=Fl(a,e,i+160|0)|0;Gl(k,e,j);f[l>>2]=0;f[l+4>>2]=0;f[l+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[l+(e<<2)>>2]=0;e=e+1|0}e=l+11|0;if((b[e>>0]|0)<0)s=(f[l+8>>2]&2147483647)+-1|0;else s=10;v=0;ua(12,l|0,s|0,0);s=v;v=0;if(s&1){s=Ra()|0;u=s;w=G}else{s=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=s;f[o>>2]=n;f[p>>2]=0;a=l+4|0;x=l+8|0;y=f[c>>2]|0;z=s;s=y;A=y;a:while(1){if(A){y=f[A+12>>2]|0;if((y|0)==(f[A+16>>2]|0)){v=0;B=ea(f[(f[A>>2]|0)+36>>2]|0,A|0)|0;C=v;v=0;if(C&1){D=29;break}else E=B}else E=Aj(f[y>>2]|0)|0;if(Tj(E,zj()|0)|0){f[c>>2]=0;F=0;H=1;I=0}else{F=s;H=0;I=A}}else{F=0;H=1;I=0}y=f[d>>2]|0;do if(y){B=f[y+12>>2]|0;if((B|0)==(f[y+16>>2]|0)){v=0;C=ea(f[(f[y>>2]|0)+36>>2]|0,y|0)|0;J=v;v=0;if(J&1){D=29;break a}else K=C}else K=Aj(f[B>>2]|0)|0;if(!(Tj(K,zj()|0)|0))if(H){L=y;break}else{M=z;N=y;D=41;break a}else{f[d>>2]=0;D=20;break}}else D=20;while(0);if((D|0)==20){D=0;if(H){M=z;N=0;D=41;break}else L=0}y=b[e>>0]|0;B=y<<24>>24<0?f[a>>2]|0:y&255;if((f[m>>2]|0)==(z+B|0)){v=0;ua(12,l|0,B<<1|0,0);y=v;v=0;if(y&1){D=31;break}if((b[e>>0]|0)<0)O=(f[x>>2]&2147483647)+-1|0;else O=10;v=0;ua(12,l|0,O|0,0);y=v;v=0;if(y&1){D=31;break}y=(b[e>>0]|0)<0?f[l>>2]|0:l;f[m>>2]=y+B;P=y}else P=z;y=I+12|0;B=f[y>>2]|0;C=I+16|0;if((B|0)==(f[C>>2]|0)){v=0;J=ea(f[(f[I>>2]|0)+36>>2]|0,I|0)|0;Q=v;v=0;if(Q&1){D=29;break}else R=J}else R=Aj(f[B>>2]|0)|0;v=0;B=oa(2,R|0,q|0,P|0,m|0,p|0,f[j>>2]|0,k|0,n|0,o|0,r|0)|0;J=v;v=0;if(J&1){D=29;break}if(B|0){M=P;N=L;D=41;break}B=f[y>>2]|0;if((B|0)==(f[C>>2]|0)){v=0;ea(f[(f[I>>2]|0)+40>>2]|0,I|0)|0;C=v;v=0;if(C&1){D=29;break}}else{f[y>>2]=B+4;Aj(f[B>>2]|0)|0}z=P;s=F;A=I}if((D|0)==29){A=Ra()|0;S=A;T=G}else if((D|0)==31){A=Ra()|0;S=A;T=G}else if((D|0)==41){A=b[k+11>>0]|0;if((A<<24>>24<0?f[k+4>>2]|0:A&255)|0?(A=f[o>>2]|0,(A-n|0)<160):0){s=f[p>>2]|0;f[o>>2]=A+4;f[A>>2]=s}v=0;s=ha(12,M|0,f[m>>2]|0,g|0,q|0)|0;q=v;v=0;b:do if(!(q&1)?(f[h>>2]=s,v=0,va(8,k|0,n|0,f[o>>2]|0,g|0),m=v,v=0,!(m&1)):0){if(I){m=f[I+12>>2]|0;if((m|0)==(f[I+16>>2]|0)){v=0;M=ea(f[(f[F>>2]|0)+36>>2]|0,I|0)|0;A=v;v=0;if(A&1)break;else U=M}else U=Aj(f[m>>2]|0)|0;if(Tj(U,zj()|0)|0){f[c>>2]=0;V=1}else V=0}else V=1;do if(N){m=f[N+12>>2]|0;if((m|0)==(f[N+16>>2]|0)){v=0;M=ea(f[(f[N>>2]|0)+36>>2]|0,N|0)|0;A=v;v=0;if(A&1)break b;else W=M}else W=Aj(f[m>>2]|0)|0;if(!(Tj(W,zj()|0)|0))if(V)break;else{D=60;break}else{f[d>>2]=0;D=58;break}}else D=58;while(0);if((D|0)==58?V:0)D=60;if((D|0)==60)f[g>>2]=f[g>>2]|2;m=f[c>>2]|0;$s(l);$s(k);t=i;return m|0}while(0);i=Ra()|0;S=i;T=G}u=S;w=T}$s(l);$s(k);_a(u|0);return 0}function Nl(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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=t;t=t+112|0;k=j;l=(e-d|0)/12|0;do if(l>>>0>100){m=Ag(l)|0;if(!m){v=0;ra(3);v=0;n=Ra()|0;o=G;p=n;break}else{q=m;r=m;s=5;break}}else{q=k;r=0;s=5}while(0);if((s|0)==5){k=d;m=q;n=0;u=l;while(1){if((k|0)==(e|0))break;l=b[k+8+3>>0]|0;if(l<<24>>24<0)w=f[k+4>>2]|0;else w=l&255;if(!w){b[m>>0]=2;x=n+1|0;y=u+-1|0}else{b[m>>0]=1;x=n;y=u}k=k+12|0;m=m+1|0;n=x;u=y}y=0;x=n;n=u;a:while(1){u=f[a>>2]|0;do if(u){m=f[u+12>>2]|0;if((m|0)==(f[u+16>>2]|0)){v=0;k=ea(f[(f[u>>2]|0)+36>>2]|0,u|0)|0;w=v;v=0;if(w&1){s=42;break a}else z=k}else z=Aj(f[m>>2]|0)|0;if(Tj(z,zj()|0)|0){f[a>>2]=0;A=1;break}else{A=(f[a>>2]|0)==0;break}}else A=1;while(0);u=f[c>>2]|0;if(u){m=f[u+12>>2]|0;if((m|0)==(f[u+16>>2]|0)){v=0;k=ea(f[(f[u>>2]|0)+36>>2]|0,u|0)|0;w=v;v=0;if(w&1){s=42;break}else B=k}else B=Aj(f[m>>2]|0)|0;if(Tj(B,zj()|0)|0){f[c>>2]=0;C=1;D=0}else{C=0;D=u}}else{C=1;D=0}E=f[a>>2]|0;if(!((n|0)!=0&(A^C))){s=29;break}u=f[E+12>>2]|0;if((u|0)==(f[E+16>>2]|0)){v=0;m=ea(f[(f[E>>2]|0)+36>>2]|0,E|0)|0;k=v;v=0;if(k&1){s=48;break}else F=m}else F=Aj(f[u>>2]|0)|0;if(!i){v=0;u=fa(f[(f[g>>2]|0)+28>>2]|0,g|0,F|0)|0;m=v;v=0;if(m&1){s=48;break}else H=u}else H=F;u=y+1|0;m=d;k=0;w=q;l=x;I=n;while(1){if((m|0)==(e|0))break;do if((b[w>>0]|0)==1){J=m+8+3|0;if((b[J>>0]|0)<0)K=f[m>>2]|0;else K=m;L=f[K+(y<<2)>>2]|0;if(!i){v=0;M=fa(f[(f[g>>2]|0)+28>>2]|0,g|0,L|0)|0;N=v;v=0;if(N&1){s=58;break a}else O=M}else O=L;if((H|0)!=(O|0)){b[w>>0]=0;P=k;Q=l;R=I+-1|0;break}L=b[J>>0]|0;if(L<<24>>24<0)S=f[m+4>>2]|0;else S=L&255;if((S|0)==(u|0)){b[w>>0]=2;P=1;Q=l+1|0;R=I+-1|0}else{P=1;Q=l;R=I}}else{P=k;Q=l;R=I}while(0);m=m+12|0;k=P;w=w+1|0;l=Q;I=R}b:do if(k){w=f[a>>2]|0;m=w+12|0;L=f[m>>2]|0;if((L|0)==(f[w+16>>2]|0)){v=0;ea(f[(f[w>>2]|0)+40>>2]|0,w|0)|0;w=v;v=0;if(w&1){s=74;break a}}else{f[m>>2]=L+4;Aj(f[L>>2]|0)|0}if((l+I|0)>>>0>1){L=d;m=q;w=l;while(1){if((L|0)==(e|0)){T=w;break b}if((b[m>>0]|0)==2){J=b[L+8+3>>0]|0;if(J<<24>>24<0)U=f[L+4>>2]|0;else U=J&255;if((U|0)!=(u|0)){b[m>>0]=0;V=w+-1|0}else V=w}else V=w;L=L+12|0;m=m+1|0;w=V}}else T=l}else T=l;while(0);y=u;x=T;n=I}if((s|0)==29){do if(E){n=f[E+12>>2]|0;if((n|0)==(f[E+16>>2]|0)){v=0;T=ea(f[(f[E>>2]|0)+36>>2]|0,E|0)|0;x=v;v=0;if(x&1)break;else W=T}else W=Aj(f[n>>2]|0)|0;if(Tj(W,zj()|0)|0){f[a>>2]=0;X=1;s=36;break}else{X=(f[a>>2]|0)==0;s=36;break}}else{X=1;s=36}while(0);c:do if((s|0)==36){do if(D){a=f[D+12>>2]|0;if((a|0)==(f[D+16>>2]|0)){v=0;W=ea(f[(f[D>>2]|0)+36>>2]|0,D|0)|0;E=v;v=0;if(E&1)break c;else Y=W}else Y=Aj(f[a>>2]|0)|0;if(!(Tj(Y,zj()|0)|0))if(X)break;else{s=84;break}else{f[c>>2]=0;s=82;break}}else s=82;while(0);if((s|0)==82?X:0)s=84;if((s|0)==84)f[h>>2]=f[h>>2]|2;I=d;u=q;while(1){if((I|0)==(e|0)){s=90;break}if((b[u>>0]|0)==2){Z=I;break}I=I+12|0;u=u+1|0}if((s|0)==90){f[h>>2]=f[h>>2]|4;Z=e}if(r|0)Bg(r);t=j;return Z|0}while(0);Z=Ra()|0;_=Z;$=G}else if((s|0)==42){Z=Ra()|0;_=Z;$=G}else if((s|0)==48){Z=Ra()|0;_=Z;$=G}else if((s|0)==58){Z=Ra()|0;_=Z;$=G}else if((s|0)==74){s=Ra()|0;_=s;$=G}if(!r){o=$;p=_}else{Bg(r);o=$;p=_}}_a(p|0);return 0}function Ol(a){a=a|0;gk(a);return}function Pl(a){a=a|0;gk(a);Ns(a);return}function Ql(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;h=t;t=t+16|0;i=h+4|0;j=h;a:do if(!(f[d+4>>2]&1)){k=f[(f[a>>2]|0)+24>>2]|0;f[j>>2]=f[c>>2];f[i>>2]=f[j>>2];l=Lc[k&31](a,i,d,e,g&1)|0}else{Sj(i,d);v=0;k=fa(24,i|0,25356)|0;m=v;v=0;do if(!(m&1)){Ck(i);n=f[k>>2]|0;if(g)Vc[f[n+24>>2]&127](i,k);else Vc[f[n+28>>2]&127](i,k);n=i+11|0;o=b[n>>0]|0;p=f[i>>2]|0;q=i+4|0;r=o<<24>>24<0?p:i;s=o;o=p;while(1){p=s<<24>>24<0;if((r|0)==((p?o:i)+(p?f[q>>2]|0:s&255)|0)){u=9;break}p=b[r>>0]|0;w=f[c>>2]|0;if(w|0){x=w+24|0;y=f[x>>2]|0;if((y|0)==(f[w+28>>2]|0)){z=f[(f[w>>2]|0)+52>>2]|0;A=wj(p)|0;v=0;B=fa(z|0,w|0,A|0)|0;A=v;v=0;if(A&1){u=18;break}else C=B}else{f[x>>2]=y+1;b[y>>0]=p;C=wj(p)|0}if(Rj(C,vj()|0)|0)f[c>>2]=0}r=r+1|0;s=b[n>>0]|0;o=f[i>>2]|0}if((u|0)==9){o=f[c>>2]|0;$s(i);l=o;break a}else if((u|0)==18){o=Ra()|0;n=G;$s(i);D=n;E=o;break}}else{o=Ra()|0;n=G;Ck(i);D=n;E=o}while(0);_a(E|0)}while(0);t=h;return l|0}function Rl(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|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;a=t;t=t+32|0;h=a;i=a+16|0;j=a+12|0;k=a+4|0;l=a+8|0;b[i>>0]=b[18291]|0;b[i+1>>0]=b[18292]|0;b[i+2>>0]=b[18293]|0;b[i+3>>0]=b[18294]|0;b[i+4>>0]=b[18295]|0;b[i+5>>0]=b[18296]|0;m=d+4|0;bm(i+1|0,18297,1,f[m>>2]|0);n=(f[m>>2]|0)>>>9&1;m=n+13|0;o=Eb()|0;p=t;t=t+((1*m|0)+15&-16)|0;q=Ek()|0;f[h>>2]=g;g=p+(Yl(p,m,q,i,h)|0)|0;i=Zl(p,g,d)|0;q=t;t=t+((1*((n<<1|24)+-1|0)|0)+15&-16)|0;Sj(h,d);v=0;ya(1,p|0,i|0,g|0,q|0,j|0,k|0,h|0);g=v;v=0;if(g&1){g=Ra()|0;Ck(h);_a(g|0)}else{Ck(h);f[l>>2]=f[c>>2];c=f[j>>2]|0;j=f[k>>2]|0;f[h>>2]=f[l>>2];l=Qd(h,q,c,j,d,e)|0;Db(o|0);t=a;return l|0}return 0}function Sl(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|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=t;t=t+32|0;h=a+8|0;i=a;j=a+24|0;k=a+16|0;l=a+20|0;m=i;f[m>>2]=37;f[m+4>>2]=0;m=c+4|0;bm(i+1|0,18288,1,f[m>>2]|0);n=(f[m>>2]|0)>>>9&1;m=n+23|0;o=Eb()|0;p=t;t=t+((1*m|0)+15&-16)|0;q=Ek()|0;r=h;f[r>>2]=e;f[r+4>>2]=g;g=p+(Yl(p,m,q,i,h)|0)|0;i=Zl(p,g,c)|0;q=t;t=t+((1*((n<<1|44)+-1|0)|0)+15&-16)|0;Sj(h,c);v=0;ya(1,p|0,i|0,g|0,q|0,j|0,k|0,h|0);g=v;v=0;if(g&1){g=Ra()|0;Ck(h);_a(g|0)}else{Ck(h);f[l>>2]=f[b>>2];b=f[j>>2]|0;j=f[k>>2]|0;f[h>>2]=f[l>>2];l=Qd(h,q,b,j,c,d)|0;Db(o|0);t=a;return l|0}return 0}function Tl(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|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;a=t;t=t+32|0;h=a;i=a+16|0;j=a+12|0;k=a+4|0;l=a+8|0;b[i>>0]=b[18291]|0;b[i+1>>0]=b[18292]|0;b[i+2>>0]=b[18293]|0;b[i+3>>0]=b[18294]|0;b[i+4>>0]=b[18295]|0;b[i+5>>0]=b[18296]|0;m=d+4|0;bm(i+1|0,18297,0,f[m>>2]|0);n=(f[m>>2]|0)>>>9&1;m=n|12;o=Eb()|0;p=t;t=t+((1*m|0)+15&-16)|0;q=Ek()|0;f[h>>2]=g;g=p+(Yl(p,m,q,i,h)|0)|0;i=Zl(p,g,d)|0;q=t;t=t+((1*(n<<1|21)|0)+15&-16)|0;Sj(h,d);v=0;ya(1,p|0,i|0,g|0,q|0,j|0,k|0,h|0);g=v;v=0;if(g&1){g=Ra()|0;Ck(h);_a(g|0)}else{Ck(h);f[l>>2]=f[c>>2];c=f[j>>2]|0;j=f[k>>2]|0;f[h>>2]=f[l>>2];l=Qd(h,q,c,j,d,e)|0;Db(o|0);t=a;return l|0}return 0}function Ul(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|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=t;t=t+32|0;h=a+8|0;i=a;j=a+24|0;k=a+16|0;l=a+20|0;m=i;f[m>>2]=37;f[m+4>>2]=0;m=c+4|0;bm(i+1|0,18288,0,f[m>>2]|0);n=(f[m>>2]|0)>>>9&1|22;m=n+1|0;o=Eb()|0;p=t;t=t+((1*m|0)+15&-16)|0;q=Ek()|0;r=h;f[r>>2]=e;f[r+4>>2]=g;g=p+(Yl(p,m,q,i,h)|0)|0;i=Zl(p,g,c)|0;q=t;t=t+((1*((n<<1)+-1|0)|0)+15&-16)|0;Sj(h,c);v=0;ya(1,p|0,i|0,g|0,q|0,j|0,k|0,h|0);g=v;v=0;if(g&1){g=Ra()|0;Ck(h);_a(g|0)}else{Ck(h);f[l>>2]=f[b>>2];b=f[j>>2]|0;j=f[k>>2]|0;f[h>>2]=f[l>>2];l=Qd(h,q,b,j,c,d)|0;Db(o|0);t=a;return l|0}return 0}function Vl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,H=0,I=0,J=0,K=0,L=0;a=t;t=t+176|0;g=a+168|0;h=a+144|0;i=a+128|0;j=a+120|0;k=a+104|0;l=a+96|0;m=a+64|0;n=a+164|0;o=a;q=a+160|0;r=a+156|0;s=a+152|0;u=l;f[u>>2]=37;f[u+4>>2]=0;u=_l(l+1|0,25788,f[c+4>>2]|0)|0;f[n>>2]=m;w=Ek()|0;if(u){f[k>>2]=f[c+8>>2];p[k+8>>3]=e;x=Yl(m,30,w,l,k)|0}else{p[j>>3]=e;x=Yl(m,30,w,l,j)|0}a:do if((x|0)>29){if(u){v=0;j=da(2)|0;w=v;v=0;if(!(w&1)?(v=0,f[i>>2]=f[c+8>>2],p[i+8>>3]=e,w=ha(13,n|0,j|0,l|0,i|0)|0,j=v,v=0,!(j&1)):0){y=w;z=12}}else{v=0;w=da(2)|0;j=v;v=0;if(!(j&1)?(v=0,p[h>>3]=e,j=ha(13,n|0,w|0,l|0,h|0)|0,w=v,v=0,!(w&1)):0){y=j;z=12}}do if((z|0)==12){j=f[n>>2]|0;if(!j){v=0;ra(3);v=0;break}else{A=y;B=j;C=j;z=15;break a}}while(0);j=Ra()|0;D=G;E=j}else{A=x;B=0;C=f[n>>2]|0;z=15}while(0);if((z|0)==15){n=C+A|0;x=Zl(C,n,c)|0;do if((C|0)!=(m|0)){y=Ag(A<<1)|0;if(!y){v=0;ra(3);v=0;h=Ra()|0;F=h;H=G;break}else{I=y;J=y;z=19;break}}else{I=o;J=0;z=19}while(0);if((z|0)==19){Sj(g,c);v=0;ya(2,C|0,x|0,n|0,I|0,q|0,r|0,g|0);n=v;v=0;do if(n&1){x=Ra()|0;C=G;Ck(g);K=x;L=C}else{Ck(g);f[s>>2]=f[b>>2];C=f[q>>2]|0;x=f[r>>2]|0;v=0;f[g>>2]=f[s>>2];z=la(39,g|0,I|0,C|0,x|0,c|0,d|0)|0;x=v;v=0;if(x&1){x=Ra()|0;K=x;L=G;break}f[b>>2]=z;if(J|0)Bg(J);if(B|0)Bg(B);t=a;return z|0}while(0);if(!J){F=K;H=L}else{Bg(J);F=K;H=L}}if(!B){D=H;E=F}else{Bg(B);D=H;E=F}}_a(E|0);return 0}function Wl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,H=0,I=0,J=0,K=0,L=0;a=t;t=t+176|0;g=a+168|0;h=a+144|0;i=a+128|0;j=a+120|0;k=a+104|0;l=a+96|0;m=a+64|0;n=a+164|0;o=a;q=a+160|0;r=a+156|0;s=a+152|0;u=l;f[u>>2]=37;f[u+4>>2]=0;u=_l(l+1|0,18286,f[c+4>>2]|0)|0;f[n>>2]=m;w=Ek()|0;if(u){f[k>>2]=f[c+8>>2];p[k+8>>3]=e;x=Yl(m,30,w,l,k)|0}else{p[j>>3]=e;x=Yl(m,30,w,l,j)|0}a:do if((x|0)>29){if(u){v=0;j=da(2)|0;w=v;v=0;if(!(w&1)?(v=0,f[i>>2]=f[c+8>>2],p[i+8>>3]=e,w=ha(13,n|0,j|0,l|0,i|0)|0,j=v,v=0,!(j&1)):0){y=w;z=12}}else{v=0;w=da(2)|0;j=v;v=0;if(!(j&1)?(v=0,p[h>>3]=e,j=ha(13,n|0,w|0,l|0,h|0)|0,w=v,v=0,!(w&1)):0){y=j;z=12}}do if((z|0)==12){j=f[n>>2]|0;if(!j){v=0;ra(3);v=0;break}else{A=y;B=j;C=j;z=15;break a}}while(0);j=Ra()|0;D=G;E=j}else{A=x;B=0;C=f[n>>2]|0;z=15}while(0);if((z|0)==15){n=C+A|0;x=Zl(C,n,c)|0;do if((C|0)!=(m|0)){y=Ag(A<<1)|0;if(!y){v=0;ra(3);v=0;h=Ra()|0;F=h;H=G;break}else{I=y;J=y;z=19;break}}else{I=o;J=0;z=19}while(0);if((z|0)==19){Sj(g,c);v=0;ya(2,C|0,x|0,n|0,I|0,q|0,r|0,g|0);n=v;v=0;do if(n&1){x=Ra()|0;C=G;Ck(g);K=x;L=C}else{Ck(g);f[s>>2]=f[b>>2];C=f[q>>2]|0;x=f[r>>2]|0;v=0;f[g>>2]=f[s>>2];z=la(39,g|0,I|0,C|0,x|0,c|0,d|0)|0;x=v;v=0;if(x&1){x=Ra()|0;K=x;L=G;break}f[b>>2]=z;if(J|0)Bg(J);if(B|0)Bg(B);t=a;return z|0}while(0);if(!J){F=K;H=L}else{Bg(J);F=K;H=L}}if(!B){D=H;E=F}else{Bg(B);D=H;E=F}}_a(E|0);return 0}function Xl(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;a=t;t=t+96|0;h=a+72|0;i=a+80|0;j=a+48|0;k=a;l=a+76|0;b[i>>0]=b[18280]|0;b[i+1>>0]=b[18281]|0;b[i+2>>0]=b[18282]|0;b[i+3>>0]=b[18283]|0;b[i+4>>0]=b[18284]|0;b[i+5>>0]=b[18285]|0;m=Ek()|0;f[h>>2]=g;g=Yl(j,20,m,i,h)|0;i=j+g|0;m=Zl(j,i,d)|0;Sj(h,d);v=0;n=fa(24,h|0,25340)|0;o=v;v=0;if(o&1){o=Ra()|0;Ck(h);_a(o|0)}else{Ck(h);Jc[f[(f[n>>2]|0)+32>>2]&15](n,j,i,k)|0;n=k+g|0;f[l>>2]=f[c>>2];f[h>>2]=f[l>>2];l=Qd(h,k,(m|0)==(i|0)?n:k+(m-j)|0,n,d,e)|0;t=a;return l|0}return 0}function Yl(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;g=t;t=t+16|0;h=g;f[h>>2]=e;e=Fi(c)|0;c=pi(a,b,d,h)|0;if(e|0)Fi(e)|0;t=g;return c|0}function Zl(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;a:do switch((f[d+4>>2]&176)<<24>>24){case 16:{e=b[a>>0]|0;switch(e<<24>>24){case 43:case 45:{g=a+1|0;break a;break}default:{}}if((c-a|0)>1&e<<24>>24==48){switch(b[a+1>>0]|0){case 88:case 120:break;default:{h=7;break a}}g=a+2|0}else h=7;break}case 32:{g=c;break}default:h=7}while(0);if((h|0)==7)g=a;return g|0}function _l(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!(d&2048))e=a;else{b[a>>0]=43;e=a+1|0}if(!(d&1024))f=e;else{b[e>>0]=35;f=e+1|0}e=d&260;a=d&16384;d=(e|0)==260;if(d){g=0;h=f}else{b[f>>0]=46;b[f+1>>0]=42;g=1;h=f+2|0}f=c;c=h;while(1){h=b[f>>0]|0;if(!(h<<24>>24))break;b[c>>0]=h;f=f+1|0;c=c+1|0}a:do switch(e&511){case 4:{i=a>>>9&255^102;break}case 256:{i=a>>>9&255^101;break}default:{f=a>>>9&255;if(d){i=f^97;break a}else{i=f^103;break a}}}while(0);b[c>>0]=i;return g|0}function $l(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0;e=t;t=t+16|0;g=e;f[g>>2]=d;d=Fi(b)|0;b=Pi(a,c,g)|0;if(d|0)Fi(d)|0;t=e;return b|0}function am(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,H=0,I=0;j=t;t=t+16|0;k=j;l=Bk(i,25340)|0;m=Bk(i,25356)|0;Vc[f[(f[m>>2]|0)+20>>2]&127](k,m);f[h>>2]=e;i=b[a>>0]|0;a:do switch(i<<24>>24){case 43:case 45:{v=0;n=fa(f[(f[l>>2]|0)+28>>2]|0,l|0,i|0)|0;o=v;v=0;if(o&1){o=Ra()|0;p=o;q=G;break a}else{o=f[h>>2]|0;f[h>>2]=o+1;b[o>>0]=n;r=a+1|0;s=5;break a}break}default:{r=a;s=5}}while(0);b:do if((s|0)==5){i=d;c:do if((i-r|0)>1?(b[r>>0]|0)==48:0){n=r+1|0;switch(b[n>>0]|0){case 88:case 120:break;default:{s=6;break c}}v=0;o=fa(f[(f[l>>2]|0)+28>>2]|0,l|0,48)|0;u=v;v=0;if(!(u&1)?(u=f[h>>2]|0,f[h>>2]=u+1,b[u>>0]=o,o=r+2|0,v=0,u=fa(f[(f[l>>2]|0)+28>>2]|0,l|0,b[n>>0]|0)|0,n=v,v=0,!(n&1)):0){n=f[h>>2]|0;f[h>>2]=n+1;b[n>>0]=u;u=o;while(1){if(u>>>0>=d>>>0){w=o;x=u;s=24;break c}n=b[u>>0]|0;v=0;y=da(2)|0;z=v;v=0;if(z&1)break;if(!(Di(n<<24>>24,y)|0)){w=o;x=u;s=24;break c}u=u+1|0}u=Ra()|0;p=u;q=G;break b}}else s=6;while(0);d:do if((s|0)==6){u=r;while(1){if(u>>>0>=d>>>0){w=r;x=u;s=24;break d}o=b[u>>0]|0;v=0;y=da(2)|0;n=v;v=0;if(n&1)break;if(!(ui(o<<24>>24,y)|0)){w=r;x=u;s=24;break d}u=u+1|0}u=Ra()|0;p=u;q=G;break b}while(0);e:do if((s|0)==24){u=k+11|0;y=b[u>>0]|0;o=k+4|0;f:do if((y<<24>>24<0?f[o>>2]|0:y&255)|0){g:do if((w|0)!=(x|0)){n=x;z=w;while(1){A=n+-1|0;if(z>>>0>=A>>>0)break g;B=b[z>>0]|0;b[z>>0]=b[A>>0]|0;b[A>>0]=B;n=A;z=z+1|0}}while(0);v=0;z=ea(f[(f[m>>2]|0)+16>>2]|0,m|0)|0;n=v;v=0;if(n&1){n=Ra()|0;p=n;q=G;break b}n=w;A=0;B=0;while(1){if(n>>>0>=x>>>0)break;C=b[((b[u>>0]|0)<0?f[k>>2]|0:k)+A>>0]|0;if(C<<24>>24>0&(B|0)==(C<<24>>24|0)){C=f[h>>2]|0;f[h>>2]=C+1;b[C>>0]=z;C=b[u>>0]|0;D=A+(A>>>0<((C<<24>>24<0?f[o>>2]|0:C&255)+-1|0)>>>0&1)|0;E=0}else{D=A;E=B}v=0;C=fa(f[(f[l>>2]|0)+28>>2]|0,l|0,b[n>>0]|0)|0;F=v;v=0;if(F&1){s=43;break}F=f[h>>2]|0;f[h>>2]=F+1;b[F>>0]=C;n=n+1|0;A=D;B=E+1|0}if((s|0)==43){B=Ra()|0;p=B;q=G;break b}B=e+(w-a)|0;A=f[h>>2]|0;if((B|0)==(A|0))H=l;else{n=A;A=B;while(1){B=n+-1|0;if(A>>>0>=B>>>0){H=l;break f}z=b[A>>0]|0;b[A>>0]=b[B>>0]|0;b[B>>0]=z;n=B;A=A+1|0}}}else{v=0;ha(f[(f[l>>2]|0)+32>>2]|0,l|0,w|0,x|0,f[h>>2]|0)|0;A=v;v=0;if(A&1)break e;f[h>>2]=(f[h>>2]|0)+(x-w);H=l}while(0);o=x;while(1){if(o>>>0>=d>>>0){I=o;break}u=b[o>>0]|0;if(u<<24>>24==46){s=47;break}v=0;y=fa(f[(f[H>>2]|0)+28>>2]|0,l|0,u|0)|0;u=v;v=0;if(u&1){s=15;break}u=f[h>>2]|0;f[h>>2]=u+1;b[u>>0]=y;o=o+1|0}if((s|0)==15){y=Ra()|0;p=y;q=G;break b}if((s|0)==47){v=0;y=ea(f[(f[m>>2]|0)+12>>2]|0,m|0)|0;u=v;v=0;if(u&1)break;u=f[h>>2]|0;f[h>>2]=u+1;b[u>>0]=y;I=o+1|0}v=0;ha(f[(f[l>>2]|0)+32>>2]|0,l|0,I|0,d|0,f[h>>2]|0)|0;y=v;v=0;if(!(y&1)){y=(f[h>>2]|0)+(i-I)|0;f[h>>2]=y;f[g>>2]=(c|0)==(d|0)?y:e+(c-a)|0;$s(k);t=j;return}}while(0);i=Ra()|0;p=i;q=G}while(0);$s(k);_a(p|0)}function bm(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0;if(!(e&2048))f=a;else{b[a>>0]=43;f=a+1|0}if(!(e&512))g=f;else{b[f>>0]=35;g=f+1|0}f=c;c=g;while(1){g=b[f>>0]|0;if(!(g<<24>>24))break;b[c>>0]=g;f=f+1|0;c=c+1|0}switch(e&74){case 64:{h=111;break}case 8:{h=e>>>9&32^120;break}default:h=d?100:117}b[c>>0]=h;return}function cm(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;j=t;t=t+16|0;k=j;l=Bk(i,25340)|0;m=Bk(i,25356)|0;Vc[f[(f[m>>2]|0)+20>>2]&127](k,m);i=k+11|0;n=b[i>>0]|0;o=k+4|0;a:do if(!((n<<24>>24<0?f[o>>2]|0:n&255)|0)){v=0;ha(f[(f[l>>2]|0)+32>>2]|0,l|0,a|0,d|0,e|0)|0;p=v;v=0;if(p&1){p=Ra()|0;q=p;r=G;s=34;break}else{p=a;u=e+(d-p)|0;f[h>>2]=u;w=p;x=u;s=33;break}}else{f[h>>2]=e;u=b[a>>0]|0;switch(u<<24>>24){case 43:case 45:{v=0;p=fa(f[(f[l>>2]|0)+28>>2]|0,l|0,u|0)|0;u=v;v=0;if(!(u&1)){u=f[h>>2]|0;f[h>>2]=u+1;b[u>>0]=p;y=a+1|0;s=9}break}default:{y=a;s=9}}b:do if((s|0)==9){c:do if((d-y|0)>1?(b[y>>0]|0)==48:0){p=y+1|0;switch(b[p>>0]|0){case 88:case 120:break;default:{z=y;break c}}v=0;u=fa(f[(f[l>>2]|0)+28>>2]|0,l|0,48)|0;A=v;v=0;if(A&1)break b;A=f[h>>2]|0;f[h>>2]=A+1;b[A>>0]=u;v=0;u=fa(f[(f[l>>2]|0)+28>>2]|0,l|0,b[p>>0]|0)|0;p=v;v=0;if(p&1)break b;p=f[h>>2]|0;f[h>>2]=p+1;b[p>>0]=u;z=y+2|0}else z=y;while(0);d:do if((z|0)!=(d|0)){u=d;p=z;while(1){A=u+-1|0;if(p>>>0>=A>>>0)break d;B=b[p>>0]|0;b[p>>0]=b[A>>0]|0;b[A>>0]=B;u=A;p=p+1|0}}while(0);v=0;p=ea(f[(f[m>>2]|0)+16>>2]|0,m|0)|0;u=v;v=0;if(u&1){u=Ra()|0;q=u;r=G;s=34;break a}u=z;A=0;B=0;while(1){if(u>>>0>=d>>>0)break;C=b[((b[i>>0]|0)<0?f[k>>2]|0:k)+A>>0]|0;if(C<<24>>24!=0&(B|0)==(C<<24>>24|0)){C=f[h>>2]|0;f[h>>2]=C+1;b[C>>0]=p;C=b[i>>0]|0;D=A+(A>>>0<((C<<24>>24<0?f[o>>2]|0:C&255)+-1|0)>>>0&1)|0;E=0}else{D=A;E=B}v=0;C=fa(f[(f[l>>2]|0)+28>>2]|0,l|0,b[u>>0]|0)|0;F=v;v=0;if(F&1){s=31;break}F=f[h>>2]|0;f[h>>2]=F+1;b[F>>0]=C;u=u+1|0;A=D;B=E+1|0}if((s|0)==31){B=Ra()|0;q=B;r=G;s=34;break a}B=a;A=e+(z-B)|0;u=f[h>>2]|0;if((A|0)==(u|0)){w=B;x=A;s=33;break a}p=u;u=A;while(1){A=p+-1|0;if(u>>>0>=A>>>0)break;C=b[u>>0]|0;b[u>>0]=b[A>>0]|0;b[A>>0]=C;p=A;u=u+1|0}w=B;x=f[h>>2]|0;s=33;break a}while(0);u=Ra()|0;q=u;r=G;s=34}while(0);if((s|0)==33){f[g>>2]=(c|0)==(d|0)?x:e+(c-w)|0;$s(k);t=j;return}else if((s|0)==34){$s(k);_a(q|0)}}function dm(a){a=a|0;gk(a);return}function em(a){a=a|0;gk(a);Ns(a);return}function fm(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;h=t;t=t+16|0;i=h+4|0;j=h;a:do if(!(f[d+4>>2]&1)){k=f[(f[a>>2]|0)+24>>2]|0;f[j>>2]=f[c>>2];f[i>>2]=f[j>>2];l=Lc[k&31](a,i,d,e,g&1)|0}else{Sj(i,d);v=0;k=fa(24,i|0,25380)|0;m=v;v=0;do if(!(m&1)){Ck(i);n=f[k>>2]|0;if(g)Vc[f[n+24>>2]&127](i,k);else Vc[f[n+28>>2]&127](i,k);n=i+8+3|0;o=b[n>>0]|0;p=f[i>>2]|0;q=i+4|0;r=o<<24>>24<0?p:i;s=o;o=p;while(1){p=s<<24>>24<0;if((r|0)==((p?o:i)+((p?f[q>>2]|0:s&255)<<2)|0)){u=9;break}p=f[r>>2]|0;w=f[c>>2]|0;if(w|0){x=w+24|0;y=f[x>>2]|0;if((y|0)==(f[w+28>>2]|0)){z=f[(f[w>>2]|0)+52>>2]|0;A=Aj(p)|0;v=0;B=fa(z|0,w|0,A|0)|0;A=v;v=0;if(A&1){u=18;break}else C=B}else{f[x>>2]=y+4;f[y>>2]=p;C=Aj(p)|0}if(Tj(C,zj()|0)|0)f[c>>2]=0}r=r+4|0;s=b[n>>0]|0;o=f[i>>2]|0}if((u|0)==9){o=f[c>>2]|0;tt(i);l=o;break a}else if((u|0)==18){o=Ra()|0;n=G;tt(i);D=n;E=o;break}}else{o=Ra()|0;n=G;Ck(i);D=n;E=o}while(0);_a(E|0)}while(0);t=h;return l|0}function gm(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|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;a=t;t=t+32|0;h=a;i=a+16|0;j=a+12|0;k=a+4|0;l=a+8|0;b[i>>0]=b[18291]|0;b[i+1>>0]=b[18292]|0;b[i+2>>0]=b[18293]|0;b[i+3>>0]=b[18294]|0;b[i+4>>0]=b[18295]|0;b[i+5>>0]=b[18296]|0;m=d+4|0;bm(i+1|0,18297,1,f[m>>2]|0);n=(f[m>>2]|0)>>>9&1;m=n+13|0;o=Eb()|0;p=t;t=t+((1*m|0)+15&-16)|0;q=Ek()|0;f[h>>2]=g;g=p+(Yl(p,m,q,i,h)|0)|0;i=Zl(p,g,d)|0;q=t;t=t+((1*((n<<1|24)+-1<<2)|0)+15&-16)|0;Sj(h,d);v=0;ya(3,p|0,i|0,g|0,q|0,j|0,k|0,h|0);g=v;v=0;if(g&1){g=Ra()|0;Ck(h);_a(g|0)}else{Ck(h);f[l>>2]=f[c>>2];c=f[j>>2]|0;j=f[k>>2]|0;f[h>>2]=f[l>>2];l=nm(h,q,c,j,d,e)|0;Db(o|0);t=a;return l|0}return 0}function hm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|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=t;t=t+32|0;h=a+8|0;i=a;j=a+24|0;k=a+16|0;l=a+20|0;m=i;f[m>>2]=37;f[m+4>>2]=0;m=c+4|0;bm(i+1|0,18288,1,f[m>>2]|0);n=(f[m>>2]|0)>>>9&1;m=n+23|0;o=Eb()|0;p=t;t=t+((1*m|0)+15&-16)|0;q=Ek()|0;r=h;f[r>>2]=e;f[r+4>>2]=g;g=p+(Yl(p,m,q,i,h)|0)|0;i=Zl(p,g,c)|0;q=t;t=t+((1*((n<<1|44)+-1<<2)|0)+15&-16)|0;Sj(h,c);v=0;ya(3,p|0,i|0,g|0,q|0,j|0,k|0,h|0);g=v;v=0;if(g&1){g=Ra()|0;Ck(h);_a(g|0)}else{Ck(h);f[l>>2]=f[b>>2];b=f[j>>2]|0;j=f[k>>2]|0;f[h>>2]=f[l>>2];l=nm(h,q,b,j,c,d)|0;Db(o|0);t=a;return l|0}return 0}function im(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|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;a=t;t=t+32|0;h=a;i=a+16|0;j=a+12|0;k=a+4|0;l=a+8|0;b[i>>0]=b[18291]|0;b[i+1>>0]=b[18292]|0;b[i+2>>0]=b[18293]|0;b[i+3>>0]=b[18294]|0;b[i+4>>0]=b[18295]|0;b[i+5>>0]=b[18296]|0;m=d+4|0;bm(i+1|0,18297,0,f[m>>2]|0);n=(f[m>>2]|0)>>>9&1;m=n|12;o=Eb()|0;p=t;t=t+((1*m|0)+15&-16)|0;q=Ek()|0;f[h>>2]=g;g=p+(Yl(p,m,q,i,h)|0)|0;i=Zl(p,g,d)|0;q=t;t=t+((1*((n<<1|21)<<2)|0)+15&-16)|0;Sj(h,d);v=0;ya(3,p|0,i|0,g|0,q|0,j|0,k|0,h|0);g=v;v=0;if(g&1){g=Ra()|0;Ck(h);_a(g|0)}else{Ck(h);f[l>>2]=f[c>>2];c=f[j>>2]|0;j=f[k>>2]|0;f[h>>2]=f[l>>2];l=nm(h,q,c,j,d,e)|0;Db(o|0);t=a;return l|0}return 0}function jm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|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=t;t=t+32|0;h=a+8|0;i=a;j=a+24|0;k=a+16|0;l=a+20|0;m=i;f[m>>2]=37;f[m+4>>2]=0;m=c+4|0;bm(i+1|0,18288,0,f[m>>2]|0);n=(f[m>>2]|0)>>>9&1|22;m=n+1|0;o=Eb()|0;p=t;t=t+((1*m|0)+15&-16)|0;q=Ek()|0;r=h;f[r>>2]=e;f[r+4>>2]=g;g=p+(Yl(p,m,q,i,h)|0)|0;i=Zl(p,g,c)|0;q=t;t=t+((1*((n<<1)+-1<<2)|0)+15&-16)|0;Sj(h,c);v=0;ya(3,p|0,i|0,g|0,q|0,j|0,k|0,h|0);g=v;v=0;if(g&1){g=Ra()|0;Ck(h);_a(g|0)}else{Ck(h);f[l>>2]=f[b>>2];b=f[j>>2]|0;j=f[k>>2]|0;f[h>>2]=f[l>>2];l=nm(h,q,b,j,c,d)|0;Db(o|0);t=a;return l|0}return 0}function km(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,H=0,I=0,J=0,K=0,L=0;a=t;t=t+352|0;g=a+344|0;h=a+320|0;i=a+304|0;j=a+296|0;k=a+280|0;l=a+272|0;m=a+240|0;n=a+340|0;o=a;q=a+336|0;r=a+332|0;s=a+328|0;u=l;f[u>>2]=37;f[u+4>>2]=0;u=_l(l+1|0,25788,f[c+4>>2]|0)|0;f[n>>2]=m;w=Ek()|0;if(u){f[k>>2]=f[c+8>>2];p[k+8>>3]=e;x=Yl(m,30,w,l,k)|0}else{p[j>>3]=e;x=Yl(m,30,w,l,j)|0}a:do if((x|0)>29){if(u){v=0;j=da(2)|0;w=v;v=0;if(!(w&1)?(v=0,f[i>>2]=f[c+8>>2],p[i+8>>3]=e,w=ha(13,n|0,j|0,l|0,i|0)|0,j=v,v=0,!(j&1)):0){y=w;z=12}}else{v=0;w=da(2)|0;j=v;v=0;if(!(j&1)?(v=0,p[h>>3]=e,j=ha(13,n|0,w|0,l|0,h|0)|0,w=v,v=0,!(w&1)):0){y=j;z=12}}do if((z|0)==12){j=f[n>>2]|0;if(!j){v=0;ra(3);v=0;break}else{A=y;B=j;C=j;z=15;break a}}while(0);j=Ra()|0;D=G;E=j}else{A=x;B=0;C=f[n>>2]|0;z=15}while(0);if((z|0)==15){n=C+A|0;x=Zl(C,n,c)|0;do if((C|0)!=(m|0)){y=Ag(A<<3)|0;if(!y){v=0;ra(3);v=0;h=Ra()|0;F=h;H=G;break}else{I=y;J=y;z=19;break}}else{I=o;J=0;z=19}while(0);if((z|0)==19){Sj(g,c);v=0;ya(4,C|0,x|0,n|0,I|0,q|0,r|0,g|0);n=v;v=0;do if(n&1){x=Ra()|0;C=G;Ck(g);K=x;L=C}else{Ck(g);f[s>>2]=f[b>>2];C=f[q>>2]|0;x=f[r>>2]|0;v=0;f[g>>2]=f[s>>2];z=la(40,g|0,I|0,C|0,x|0,c|0,d|0)|0;x=v;v=0;if(x&1){x=Ra()|0;K=x;L=G;break}f[b>>2]=z;if(J|0)Bg(J);if(B|0)Bg(B);t=a;return z|0}while(0);if(!J){F=K;H=L}else{Bg(J);F=K;H=L}}if(!B){D=H;E=F}else{Bg(B);D=H;E=F}}_a(E|0);return 0}function lm(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,H=0,I=0,J=0,K=0,L=0;a=t;t=t+352|0;g=a+344|0;h=a+320|0;i=a+304|0;j=a+296|0;k=a+280|0;l=a+272|0;m=a+240|0;n=a+340|0;o=a;q=a+336|0;r=a+332|0;s=a+328|0;u=l;f[u>>2]=37;f[u+4>>2]=0;u=_l(l+1|0,18286,f[c+4>>2]|0)|0;f[n>>2]=m;w=Ek()|0;if(u){f[k>>2]=f[c+8>>2];p[k+8>>3]=e;x=Yl(m,30,w,l,k)|0}else{p[j>>3]=e;x=Yl(m,30,w,l,j)|0}a:do if((x|0)>29){if(u){v=0;j=da(2)|0;w=v;v=0;if(!(w&1)?(v=0,f[i>>2]=f[c+8>>2],p[i+8>>3]=e,w=ha(13,n|0,j|0,l|0,i|0)|0,j=v,v=0,!(j&1)):0){y=w;z=12}}else{v=0;w=da(2)|0;j=v;v=0;if(!(j&1)?(v=0,p[h>>3]=e,j=ha(13,n|0,w|0,l|0,h|0)|0,w=v,v=0,!(w&1)):0){y=j;z=12}}do if((z|0)==12){j=f[n>>2]|0;if(!j){v=0;ra(3);v=0;break}else{A=y;B=j;C=j;z=15;break a}}while(0);j=Ra()|0;D=G;E=j}else{A=x;B=0;C=f[n>>2]|0;z=15}while(0);if((z|0)==15){n=C+A|0;x=Zl(C,n,c)|0;do if((C|0)!=(m|0)){y=Ag(A<<3)|0;if(!y){v=0;ra(3);v=0;h=Ra()|0;F=h;H=G;break}else{I=y;J=y;z=19;break}}else{I=o;J=0;z=19}while(0);if((z|0)==19){Sj(g,c);v=0;ya(4,C|0,x|0,n|0,I|0,q|0,r|0,g|0);n=v;v=0;do if(n&1){x=Ra()|0;C=G;Ck(g);K=x;L=C}else{Ck(g);f[s>>2]=f[b>>2];C=f[q>>2]|0;x=f[r>>2]|0;v=0;f[g>>2]=f[s>>2];z=la(40,g|0,I|0,C|0,x|0,c|0,d|0)|0;x=v;v=0;if(x&1){x=Ra()|0;K=x;L=G;break}f[b>>2]=z;if(J|0)Bg(J);if(B|0)Bg(B);t=a;return z|0}while(0);if(!J){F=K;H=L}else{Bg(J);F=K;H=L}}if(!B){D=H;E=F}else{Bg(B);D=H;E=F}}_a(E|0);return 0}function mm(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;a=t;t=t+208|0;h=a+184|0;i=a+192|0;j=a+160|0;k=a;l=a+188|0;b[i>>0]=b[18280]|0;b[i+1>>0]=b[18281]|0;b[i+2>>0]=b[18282]|0;b[i+3>>0]=b[18283]|0;b[i+4>>0]=b[18284]|0;b[i+5>>0]=b[18285]|0;m=Ek()|0;f[h>>2]=g;g=Yl(j,20,m,i,h)|0;i=j+g|0;m=Zl(j,i,d)|0;Sj(h,d);v=0;n=fa(24,h|0,25372)|0;o=v;v=0;if(o&1){o=Ra()|0;Ck(h);_a(o|0)}else{Ck(h);Jc[f[(f[n>>2]|0)+48>>2]&15](n,j,i,k)|0;n=k+(g<<2)|0;f[l>>2]=f[c>>2];f[h>>2]=f[l>>2];l=nm(h,k,(m|0)==(i|0)?n:k+(m-j<<2)|0,n,d,e)|0;t=a;return l|0}return 0}function nm(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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;i=t;t=t+16|0;j=i;k=f[a>>2]|0;a:do if(!k)l=0;else{m=e;n=c;o=m-n>>2;p=g+12|0;q=f[p>>2]|0;r=(q|0)>(o|0)?q-o|0:0;o=d;q=o-n|0;n=q>>2;if((q|0)>0?(Ic[f[(f[k>>2]|0)+48>>2]&63](k,c,n)|0)!=(n|0):0){f[a>>2]=0;l=0;break}do if((r|0)>0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;rt(j,r,h);v=0;n=ga(f[(f[k>>2]|0)+48>>2]|0,k|0,((b[j+8+3>>0]|0)<0?f[j>>2]|0:j)|0,r|0)|0;q=v;v=0;if(q&1){q=Ra()|0;tt(j);_a(q|0)}if((n|0)==(r|0)){tt(j);break}else{f[a>>2]=0;tt(j);l=0;break a}}while(0);r=m-o|0;n=r>>2;if((r|0)>0?(Ic[f[(f[k>>2]|0)+48>>2]&63](k,d,n)|0)!=(n|0):0){f[a>>2]=0;l=0;break}f[p>>2]=0;l=k}while(0);t=i;return l|0}function om(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,H=0,I=0,J=0,K=0;j=t;t=t+16|0;k=j;l=Bk(i,25372)|0;m=Bk(i,25380)|0;Vc[f[(f[m>>2]|0)+20>>2]&127](k,m);f[h>>2]=e;i=b[a>>0]|0;a:do switch(i<<24>>24){case 43:case 45:{v=0;n=fa(f[(f[l>>2]|0)+44>>2]|0,l|0,i|0)|0;o=v;v=0;if(o&1){o=Ra()|0;p=o;q=G;break a}else{o=f[h>>2]|0;f[h>>2]=o+4;f[o>>2]=n;r=a+1|0;s=5;break a}break}default:{r=a;s=5}}while(0);b:do if((s|0)==5){i=d;c:do if((i-r|0)>1?(b[r>>0]|0)==48:0){n=r+1|0;switch(b[n>>0]|0){case 88:case 120:break;default:{s=6;break c}}v=0;o=fa(f[(f[l>>2]|0)+44>>2]|0,l|0,48)|0;u=v;v=0;if(!(u&1)?(u=f[h>>2]|0,f[h>>2]=u+4,f[u>>2]=o,o=r+2|0,v=0,u=fa(f[(f[l>>2]|0)+44>>2]|0,l|0,b[n>>0]|0)|0,n=v,v=0,!(n&1)):0){n=f[h>>2]|0;f[h>>2]=n+4;f[n>>2]=u;u=o;while(1){if(u>>>0>=d>>>0){w=o;x=u;s=24;break c}n=b[u>>0]|0;v=0;y=da(2)|0;z=v;v=0;if(z&1)break;if(!(Di(n<<24>>24,y)|0)){w=o;x=u;s=24;break c}u=u+1|0}u=Ra()|0;p=u;q=G;break b}}else s=6;while(0);d:do if((s|0)==6){u=r;while(1){if(u>>>0>=d>>>0){w=r;x=u;s=24;break d}o=b[u>>0]|0;v=0;y=da(2)|0;n=v;v=0;if(n&1)break;if(!(ui(o<<24>>24,y)|0)){w=r;x=u;s=24;break d}u=u+1|0}u=Ra()|0;p=u;q=G;break b}while(0);e:do if((s|0)==24){u=k+11|0;y=b[u>>0]|0;o=k+4|0;f:do if((y<<24>>24<0?f[o>>2]|0:y&255)|0){g:do if((w|0)!=(x|0)){n=x;z=w;while(1){A=n+-1|0;if(z>>>0>=A>>>0)break g;B=b[z>>0]|0;b[z>>0]=b[A>>0]|0;b[A>>0]=B;n=A;z=z+1|0}}while(0);v=0;z=ea(f[(f[m>>2]|0)+16>>2]|0,m|0)|0;n=v;v=0;if(n&1){n=Ra()|0;p=n;q=G;break b}n=w;A=0;B=0;while(1){if(n>>>0>=x>>>0)break;C=b[((b[u>>0]|0)<0?f[k>>2]|0:k)+A>>0]|0;if(C<<24>>24>0&(B|0)==(C<<24>>24|0)){C=f[h>>2]|0;f[h>>2]=C+4;f[C>>2]=z;C=b[u>>0]|0;D=A+(A>>>0<((C<<24>>24<0?f[o>>2]|0:C&255)+-1|0)>>>0&1)|0;E=0}else{D=A;E=B}v=0;C=fa(f[(f[l>>2]|0)+44>>2]|0,l|0,b[n>>0]|0)|0;F=v;v=0;if(F&1){s=43;break}F=f[h>>2]|0;f[h>>2]=F+4;f[F>>2]=C;n=n+1|0;A=D;B=E+1|0}if((s|0)==43){B=Ra()|0;p=B;q=G;break b}B=e+(w-a<<2)|0;A=f[h>>2]|0;if((B|0)==(A|0)){H=l;I=B}else{n=A;z=B;while(1){B=n+-4|0;if(z>>>0>=B>>>0){H=l;I=A;break f}C=f[z>>2]|0;f[z>>2]=f[B>>2];f[B>>2]=C;n=B;z=z+4|0}}}else{v=0;ha(f[(f[l>>2]|0)+48>>2]|0,l|0,w|0,x|0,f[h>>2]|0)|0;z=v;v=0;if(z&1)break e;z=(f[h>>2]|0)+(x-w<<2)|0;f[h>>2]=z;H=l;I=z}while(0);o=x;u=I;while(1){if(o>>>0>=d>>>0){J=o;K=u;break}y=b[o>>0]|0;if(y<<24>>24==46){s=47;break}v=0;z=fa(f[(f[H>>2]|0)+44>>2]|0,l|0,y|0)|0;y=v;v=0;if(y&1){s=15;break}y=f[h>>2]|0;n=y+4|0;f[h>>2]=n;f[y>>2]=z;o=o+1|0;u=n}if((s|0)==15){u=Ra()|0;p=u;q=G;break b}if((s|0)==47){v=0;u=ea(f[(f[m>>2]|0)+12>>2]|0,m|0)|0;n=v;v=0;if(n&1)break;n=f[h>>2]|0;z=n+4|0;f[h>>2]=z;f[n>>2]=u;J=o+1|0;K=z}v=0;ha(f[(f[l>>2]|0)+48>>2]|0,l|0,J|0,d|0,K|0)|0;z=v;v=0;if(!(z&1)){z=(f[h>>2]|0)+(i-J<<2)|0;f[h>>2]=z;f[g>>2]=(c|0)==(d|0)?z:e+(c-a<<2)|0;$s(k);t=j;return}}while(0);i=Ra()|0;p=i;q=G}while(0);$s(k);_a(p|0)}function pm(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;j=t;t=t+16|0;k=j;l=Bk(i,25372)|0;m=Bk(i,25380)|0;Vc[f[(f[m>>2]|0)+20>>2]&127](k,m);i=k+11|0;n=b[i>>0]|0;o=k+4|0;a:do if(!((n<<24>>24<0?f[o>>2]|0:n&255)|0)){v=0;ha(f[(f[l>>2]|0)+48>>2]|0,l|0,a|0,d|0,e|0)|0;p=v;v=0;if(p&1){p=Ra()|0;q=p;r=G;s=34;break}else{p=a;u=e+(d-p<<2)|0;f[h>>2]=u;w=p;x=u;s=33;break}}else{f[h>>2]=e;u=b[a>>0]|0;switch(u<<24>>24){case 43:case 45:{v=0;p=fa(f[(f[l>>2]|0)+44>>2]|0,l|0,u|0)|0;u=v;v=0;if(!(u&1)){u=f[h>>2]|0;f[h>>2]=u+4;f[u>>2]=p;y=a+1|0;s=9}break}default:{y=a;s=9}}b:do if((s|0)==9){c:do if((d-y|0)>1?(b[y>>0]|0)==48:0){p=y+1|0;switch(b[p>>0]|0){case 88:case 120:break;default:{z=y;break c}}v=0;u=fa(f[(f[l>>2]|0)+44>>2]|0,l|0,48)|0;A=v;v=0;if(A&1)break b;A=f[h>>2]|0;f[h>>2]=A+4;f[A>>2]=u;v=0;u=fa(f[(f[l>>2]|0)+44>>2]|0,l|0,b[p>>0]|0)|0;p=v;v=0;if(p&1)break b;p=f[h>>2]|0;f[h>>2]=p+4;f[p>>2]=u;z=y+2|0}else z=y;while(0);d:do if((z|0)!=(d|0)){u=d;p=z;while(1){A=u+-1|0;if(p>>>0>=A>>>0)break d;B=b[p>>0]|0;b[p>>0]=b[A>>0]|0;b[A>>0]=B;u=A;p=p+1|0}}while(0);v=0;p=ea(f[(f[m>>2]|0)+16>>2]|0,m|0)|0;u=v;v=0;if(u&1){u=Ra()|0;q=u;r=G;s=34;break a}u=z;A=0;B=0;while(1){if(u>>>0>=d>>>0)break;C=b[((b[i>>0]|0)<0?f[k>>2]|0:k)+A>>0]|0;if(C<<24>>24!=0&(B|0)==(C<<24>>24|0)){C=f[h>>2]|0;f[h>>2]=C+4;f[C>>2]=p;C=b[i>>0]|0;D=A+(A>>>0<((C<<24>>24<0?f[o>>2]|0:C&255)+-1|0)>>>0&1)|0;E=0}else{D=A;E=B}v=0;C=fa(f[(f[l>>2]|0)+44>>2]|0,l|0,b[u>>0]|0)|0;F=v;v=0;if(F&1){s=31;break}F=f[h>>2]|0;f[h>>2]=F+4;f[F>>2]=C;u=u+1|0;A=D;B=E+1|0}if((s|0)==31){B=Ra()|0;q=B;r=G;s=34;break a}B=a;A=e+(z-B<<2)|0;u=f[h>>2]|0;if((A|0)==(u|0)){w=B;x=A;s=33;break a}p=u;u=A;while(1){A=p+-4|0;if(u>>>0>=A>>>0)break;C=f[u>>2]|0;f[u>>2]=f[A>>2];f[A>>2]=C;p=A;u=u+4|0}w=B;x=f[h>>2]|0;s=33;break a}while(0);u=Ra()|0;q=u;r=G;s=34}while(0);if((s|0)==33){f[g>>2]=(c|0)==(d|0)?x:e+(c-w<<2)|0;$s(k);t=j;return}else if((s|0)==34){$s(k);_a(q|0)}}function qm(a){a=a|0;gk(a);return}function rm(a){a=a|0;gk(a);Ns(a);return}function sm(a){a=a|0;return 2}function tm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=Lm(a,j,i,d,e,g,18816,18824)|0;t=h;return l|0}function um(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;i=t;t=t+16|0;j=i+12|0;k=i+8|0;l=i+4|0;m=i;n=a+8|0;o=Gc[f[(f[n>>2]|0)+20>>2]&127](n)|0;f[l>>2]=f[c>>2];f[m>>2]=f[d>>2];d=b[o+11>>0]|0;c=d<<24>>24<0;n=c?f[o>>2]|0:o;p=n+(c?f[o+4>>2]|0:d&255)|0;f[k>>2]=f[l>>2];f[j>>2]=f[m>>2];m=Lm(a,k,j,e,g,h,n,p)|0;t=i;return m|0}function vm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;h=t;t=t+16|0;i=h+4|0;j=h;Sj(i,d);v=0;d=fa(24,i|0,25340)|0;k=v;v=0;if(k&1){k=Ra()|0;Ck(i);_a(k|0)}else{Ck(i);f[j>>2]=f[c>>2];f[i>>2]=f[j>>2];Jm(a,g+24|0,b,i,e,d);t=h;return f[b>>2]|0}return 0}function wm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;h=t;t=t+16|0;i=h+4|0;j=h;Sj(i,d);v=0;d=fa(24,i|0,25340)|0;k=v;v=0;if(k&1){k=Ra()|0;Ck(i);_a(k|0)}else{Ck(i);f[j>>2]=f[c>>2];f[i>>2]=f[j>>2];Km(a,g+16|0,b,i,e,d);t=h;return f[b>>2]|0}return 0}function xm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;h=t;t=t+16|0;i=h+4|0;j=h;Sj(i,d);v=0;d=fa(24,i|0,25340)|0;k=v;v=0;if(k&1){k=Ra()|0;Ck(i);_a(k|0)}else{Ck(i);f[j>>2]=f[c>>2];f[i>>2]=f[j>>2];Wm(a,g+20|0,b,i,e,d);t=h;return f[b>>2]|0}return 0}function ym(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|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,r=0,s=0,u=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;j=t;t=t+144|0;k=j+128|0;l=j+112|0;m=j+124|0;n=j+120|0;o=j+116|0;p=j+108|0;q=j+104|0;r=j+100|0;s=j+96|0;u=j+92|0;w=j+88|0;x=j+84|0;y=j+80|0;z=j+76|0;A=j+72|0;B=j+68|0;C=j+64|0;D=j+60|0;E=j+56|0;F=j+52|0;G=j+48|0;H=j+44|0;I=j+40|0;J=j+36|0;K=j+32|0;L=j+28|0;M=j+24|0;N=j+20|0;O=j+16|0;P=j+12|0;Q=j+8|0;R=j+4|0;S=j;f[g>>2]=0;Sj(k,e);v=0;T=fa(24,k|0,25340)|0;U=v;v=0;if(U&1){U=Ra()|0;Ck(k);_a(U|0)}Ck(k);do switch(i<<24>>24|0){case 65:case 97:{f[m>>2]=f[d>>2];f[k>>2]=f[m>>2];Jm(a,h+24|0,c,k,g,T);V=28;break}case 104:case 66:case 98:{f[n>>2]=f[d>>2];f[k>>2]=f[n>>2];Km(a,h+16|0,c,k,g,T);V=28;break}case 99:{U=a+8|0;W=Gc[f[(f[U>>2]|0)+12>>2]&127](U)|0;f[o>>2]=f[c>>2];f[p>>2]=f[d>>2];U=b[W+11>>0]|0;X=U<<24>>24<0;Y=X?f[W>>2]|0:W;Z=Y+(X?f[W+4>>2]|0:U&255)|0;f[l>>2]=f[o>>2];f[k>>2]=f[p>>2];U=Lm(a,l,k,e,g,h,Y,Z)|0;f[c>>2]=U;V=28;break}case 101:case 100:{f[q>>2]=f[d>>2];f[k>>2]=f[q>>2];Mm(a,h+12|0,c,k,g,T);V=28;break}case 68:{f[r>>2]=f[c>>2];f[s>>2]=f[d>>2];f[l>>2]=f[r>>2];f[k>>2]=f[s>>2];U=Lm(a,l,k,e,g,h,18776,18784)|0;f[c>>2]=U;V=28;break}case 70:{f[u>>2]=f[c>>2];f[w>>2]=f[d>>2];f[l>>2]=f[u>>2];f[k>>2]=f[w>>2];U=Lm(a,l,k,e,g,h,18784,18792)|0;f[c>>2]=U;V=28;break}case 72:{f[x>>2]=f[d>>2];f[k>>2]=f[x>>2];Nm(a,h+8|0,c,k,g,T);V=28;break}case 73:{f[y>>2]=f[d>>2];f[k>>2]=f[y>>2];Om(a,h+8|0,c,k,g,T);V=28;break}case 106:{f[z>>2]=f[d>>2];f[k>>2]=f[z>>2];Pm(a,h+28|0,c,k,g,T);V=28;break}case 109:{f[A>>2]=f[d>>2];f[k>>2]=f[A>>2];Qm(a,h+16|0,c,k,g,T);V=28;break}case 77:{f[B>>2]=f[d>>2];f[k>>2]=f[B>>2];Rm(a,h+4|0,c,k,g,T);V=28;break}case 116:case 110:{f[C>>2]=f[d>>2];f[k>>2]=f[C>>2];Sm(a,c,k,g,T);V=28;break}case 112:{f[D>>2]=f[d>>2];f[k>>2]=f[D>>2];Tm(a,h+8|0,c,k,g,T);V=28;break}case 114:{f[E>>2]=f[c>>2];f[F>>2]=f[d>>2];f[l>>2]=f[E>>2];f[k>>2]=f[F>>2];U=Lm(a,l,k,e,g,h,18792,18803)|0;f[c>>2]=U;V=28;break}case 82:{f[G>>2]=f[c>>2];f[H>>2]=f[d>>2];f[l>>2]=f[G>>2];f[k>>2]=f[H>>2];U=Lm(a,l,k,e,g,h,18803,18808)|0;f[c>>2]=U;V=28;break}case 83:{f[I>>2]=f[d>>2];f[k>>2]=f[I>>2];Um(a,h,c,k,g,T);V=28;break}case 84:{f[J>>2]=f[c>>2];f[K>>2]=f[d>>2];f[l>>2]=f[J>>2];f[k>>2]=f[K>>2];U=Lm(a,l,k,e,g,h,18808,18816)|0;f[c>>2]=U;V=28;break}case 119:{f[L>>2]=f[d>>2];f[k>>2]=f[L>>2];Vm(a,h+24|0,c,k,g,T);V=28;break}case 120:{U=f[(f[a>>2]|0)+20>>2]|0;f[M>>2]=f[c>>2];f[N>>2]=f[d>>2];f[l>>2]=f[M>>2];f[k>>2]=f[N>>2];_=Nc[U&63](a,l,k,e,g,h)|0;break}case 88:{U=a+8|0;Z=Gc[f[(f[U>>2]|0)+24>>2]&127](U)|0;f[O>>2]=f[c>>2];f[P>>2]=f[d>>2];U=b[Z+11>>0]|0;Y=U<<24>>24<0;W=Y?f[Z>>2]|0:Z;X=W+(Y?f[Z+4>>2]|0:U&255)|0;f[l>>2]=f[O>>2];f[k>>2]=f[P>>2];U=Lm(a,l,k,e,g,h,W,X)|0;f[c>>2]=U;V=28;break}case 121:{f[Q>>2]=f[d>>2];f[k>>2]=f[Q>>2];Wm(a,h+20|0,c,k,g,T);V=28;break}case 89:{f[R>>2]=f[d>>2];f[k>>2]=f[R>>2];Xm(a,h+20|0,c,k,g,T);V=28;break}case 37:{f[S>>2]=f[d>>2];f[k>>2]=f[S>>2];Ym(a,c,k,g,T);V=28;break}default:{f[g>>2]=f[g>>2]|4;V=28}}while(0);if((V|0)==28)_=f[c>>2]|0;t=j;return _|0}function zm(a){a=a|0;do if((b[23904]|0)==0?Wu(23904)|0:0){v=0;ra(4);a=v;v=0;if(a&1){a=Ra()|0;_a(a|0)}else{f[6367]=22896;break}}while(0);return f[6367]|0}function Am(a){a=a|0;do if((b[23888]|0)==0?Wu(23888)|0:0){v=0;ra(5);a=v;v=0;if(a&1){a=Ra()|0;_a(a|0)}else{f[6366]=22608;break}}while(0);return f[6366]|0}function Bm(a){a=a|0;do if((b[23872]|0)==0?Wu(23872)|0:0){v=0;ra(6);a=v;v=0;if(a&1){a=Ra()|0;_a(a|0)}else{f[6365]=22320;break}}while(0);return f[6365]|0}function Cm(a){a=a|0;do if((b[23864]|0)==0?Wu(23864)|0:0){f[6362]=0;f[6363]=0;f[6364]=0;a=Kj(18534)|0;v=0;ua(21,25448,18534,a|0);a=v;v=0;if(a&1){a=Ra()|0;_a(a|0)}else break}while(0);return 25448}function Dm(a){a=a|0;do if((b[23856]|0)==0?Wu(23856)|0:0){f[6359]=0;f[6360]=0;f[6361]=0;a=Kj(18522)|0;v=0;ua(21,25436,18522,a|0);a=v;v=0;if(a&1){a=Ra()|0;_a(a|0)}else break}while(0);return 25436}function Em(a){a=a|0;do if((b[23848]|0)==0?Wu(23848)|0:0){f[6356]=0;f[6357]=0;f[6358]=0;a=Kj(18513)|0;v=0;ua(21,25424,18513,a|0);a=v;v=0;if(a&1){a=Ra()|0;_a(a|0)}else break}while(0);return 25424}function Fm(a){a=a|0;do if((b[23840]|0)==0?Wu(23840)|0:0){f[6353]=0;f[6354]=0;f[6355]=0;a=Kj(18504)|0;v=0;ua(21,25412,18504,a|0);a=v;v=0;if(a&1){a=Ra()|0;_a(a|0)}else break}while(0);return 25412}function Gm(){var a=0,c=0;if((b[23880]|0)==0?Wu(23880)|0:0){a=22320;do{f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}a=a+12|0}while((a|0)!=22608)}et(22320,18555)|0;et(22332,18558)|0;return}function Hm(){var a=0,c=0;if((b[23896]|0)==0?Wu(23896)|0:0){a=22608;do{f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}a=a+12|0}while((a|0)!=22896)}et(22608,18561)|0;et(22620,18569)|0;et(22632,18578)|0;et(22644,18584)|0;et(22656,18590)|0;et(22668,18594)|0;et(22680,18599)|0;et(22692,18604)|0;et(22704,18611)|0;et(22716,18621)|0;et(22728,18629)|0;et(22740,18638)|0;et(22752,18647)|0;et(22764,18651)|0;et(22776,18655)|0;et(22788,18659)|0;et(22800,18590)|0;et(22812,18663)|0;et(22824,18667)|0;et(22836,18671)|0;et(22848,18675)|0;et(22860,18679)|0;et(22872,18683)|0;et(22884,18687)|0;return}function Im(){var a=0,c=0;if((b[23912]|0)==0?Wu(23912)|0:0){a=22896;do{f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}a=a+12|0}while((a|0)!=23064)}et(22896,18691)|0;et(22908,18698)|0;et(22920,18705)|0;et(22932,18713)|0;et(22944,18723)|0;et(22956,18732)|0;et(22968,18739)|0;et(22980,18748)|0;et(22992,18752)|0;et(23004,18756)|0;et(23016,18760)|0;et(23028,18764)|0;et(23040,18768)|0;et(23052,18772)|0;return}function Jm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;h=t;t=t+16|0;i=h+4|0;j=h;k=a+8|0;a=Gc[f[f[k>>2]>>2]&127](k)|0;f[j>>2]=f[d>>2];f[i>>2]=f[j>>2];j=(kl(c,i,a,a+168|0,g,e,0)|0)-a|0;if((j|0)<168)f[b>>2]=((j|0)/12|0|0)%7|0;t=h;return}function Km(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;h=t;t=t+16|0;i=h+4|0;j=h;k=a+8|0;a=Gc[f[(f[k>>2]|0)+4>>2]&127](k)|0;f[j>>2]=f[d>>2];f[i>>2]=f[j>>2];j=(kl(c,i,a,a+288|0,g,e,0)|0)-a|0;if((j|0)<288)f[b>>2]=((j|0)/12|0|0)%12|0;t=h;return}function Lm(a,c,e,g,h,i,j,k){a=a|0;c=c|0;e=e|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,u=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;l=t;t=t+16|0;m=l+12|0;n=l+8|0;o=l+4|0;p=l;Sj(m,g);v=0;q=fa(24,m|0,25340)|0;r=v;v=0;if(r&1){r=Ra()|0;Ck(m);_a(r|0)}Ck(m);f[h>>2]=0;r=q+8|0;s=j;j=0;a:while(1){u=f[c>>2]|0;if(!((s|0)!=(k|0)&(j|0)==0)){w=u;break}x=u;if(u){y=f[u+12>>2]|0;if((y|0)==(f[u+16>>2]|0))z=Gc[f[(f[u>>2]|0)+36>>2]&127](u)|0;else z=wj(b[y>>0]|0)|0;if(Rj(z,vj()|0)|0){f[c>>2]=0;A=0;B=1;C=0}else{A=u;B=0;C=x}}else{A=0;B=1;C=x}x=f[e>>2]|0;u=x;do if(x){y=f[x+12>>2]|0;if((y|0)==(f[x+16>>2]|0))D=Gc[f[(f[x>>2]|0)+36>>2]&127](x)|0;else D=wj(b[y>>0]|0)|0;if(!(Rj(D,vj()|0)|0))if(B){E=x;F=u;break}else{G=65;break a}else{f[e>>2]=0;H=0;G=16;break}}else{H=u;G=16}while(0);if((G|0)==16){G=0;if(B){G=65;break}else{E=0;F=H}}b:do if((Ic[f[(f[q>>2]|0)+36>>2]&63](q,b[s>>0]|0,0)|0)<<24>>24==37){u=s+1|0;if((u|0)==(k|0)){G=65;break a}x=Ic[f[(f[q>>2]|0)+36>>2]&63](q,b[u>>0]|0,0)|0;switch(x<<24>>24){case 48:case 69:{y=s+2|0;if((y|0)==(k|0)){G=65;break a}I=x;J=Ic[f[(f[q>>2]|0)+36>>2]&63](q,b[y>>0]|0,0)|0;K=u;break}default:{I=0;J=x;K=s}}x=f[(f[a>>2]|0)+36>>2]|0;f[o>>2]=C;f[p>>2]=F;f[n>>2]=f[o>>2];f[m>>2]=f[p>>2];u=Pc[x&15](a,n,m,g,h,i,J,I)|0;f[c>>2]=u;L=K+2|0}else{u=b[s>>0]|0;if(u<<24>>24>-1?(x=f[r>>2]|0,d[x+(u<<24>>24<<1)>>1]&8192):0){u=s;while(1){y=u+1|0;if((y|0)==(k|0)){M=k;break}N=b[y>>0]|0;if(N<<24>>24<=-1){M=y;break}if(!(d[x+(N<<24>>24<<1)>>1]&8192)){M=y;break}else u=y}u=E;x=A;while(1){if(x){y=f[x+12>>2]|0;if((y|0)==(f[x+16>>2]|0))O=Gc[f[(f[x>>2]|0)+36>>2]&127](x)|0;else O=wj(b[y>>0]|0)|0;if(Rj(O,vj()|0)|0){f[c>>2]=0;P=0;Q=1}else{P=x;Q=0}}else{P=0;Q=1}do if(u){y=f[u+12>>2]|0;if((y|0)==(f[u+16>>2]|0))R=Gc[f[(f[u>>2]|0)+36>>2]&127](u)|0;else R=wj(b[y>>0]|0)|0;if(!(Rj(R,vj()|0)|0))if(Q){S=u;break}else{L=M;break b}else{f[e>>2]=0;G=44;break}}else G=44;while(0);if((G|0)==44){G=0;if(Q){L=M;break b}else S=0}y=P+12|0;N=f[y>>2]|0;T=P+16|0;if((N|0)==(f[T>>2]|0))U=Gc[f[(f[P>>2]|0)+36>>2]&127](P)|0;else U=wj(b[N>>0]|0)|0;if((U&255)<<24>>24<=-1){L=M;break b}if(!(d[(f[r>>2]|0)+(U<<24>>24<<1)>>1]&8192)){L=M;break b}N=f[y>>2]|0;if((N|0)==(f[T>>2]|0))Gc[f[(f[P>>2]|0)+40>>2]&127](P)|0;else{f[y>>2]=N+1;wj(b[N>>0]|0)|0}u=S;x=P}}x=A+12|0;u=f[x>>2]|0;N=A+16|0;if((u|0)==(f[N>>2]|0))V=Gc[f[(f[A>>2]|0)+36>>2]&127](A)|0;else V=wj(b[u>>0]|0)|0;u=Hc[f[(f[q>>2]|0)+12>>2]&31](q,V&255)|0;if(u<<24>>24!=(Hc[f[(f[q>>2]|0)+12>>2]&31](q,b[s>>0]|0)|0)<<24>>24){f[h>>2]=4;L=s;break}u=f[x>>2]|0;if((u|0)==(f[N>>2]|0))Gc[f[(f[A>>2]|0)+40>>2]&127](A)|0;else{f[x>>2]=u+1;wj(b[u>>0]|0)|0}L=s+1|0}while(0);s=L;j=f[h>>2]|0}if((G|0)==65){f[h>>2]=4;w=A}if(w){A=f[w+12>>2]|0;if((A|0)==(f[w+16>>2]|0))W=Gc[f[(f[w>>2]|0)+36>>2]&127](w)|0;else W=wj(b[A>>0]|0)|0;if(Rj(W,vj()|0)|0){f[c>>2]=0;X=0;Y=1}else{X=w;Y=0}}else{X=0;Y=1}w=f[e>>2]|0;do if(w){c=f[w+12>>2]|0;if((c|0)==(f[w+16>>2]|0))Z=Gc[f[(f[w>>2]|0)+36>>2]&127](w)|0;else Z=wj(b[c>>0]|0)|0;if(!(Rj(Z,vj()|0)|0))if(Y)break;else{G=80;break}else{f[e>>2]=0;G=78;break}}else G=78;while(0);if((G|0)==78?Y:0)G=80;if((G|0)==80)f[h>>2]=f[h>>2]|2;t=l;return X|0}function Mm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Zm(c,h,e,g,2)|0;g=f[e>>2]|0;if((i+-1|0)>>>0<31&(g&4|0)==0)f[b>>2]=i;else f[e>>2]=g|4;t=a;return}function Nm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Zm(c,h,e,g,2)|0;g=f[e>>2]|0;if((i|0)<24&(g&4|0)==0)f[b>>2]=i;else f[e>>2]=g|4;t=a;return}function Om(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Zm(c,h,e,g,2)|0;g=f[e>>2]|0;if((i+-1|0)>>>0<12&(g&4|0)==0)f[b>>2]=i;else f[e>>2]=g|4;t=a;return}function Pm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Zm(c,h,e,g,3)|0;g=f[e>>2]|0;if((i|0)<366&(g&4|0)==0)f[b>>2]=i;else f[e>>2]=g|4;t=a;return}function Qm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Zm(c,h,e,g,2)|0;g=f[e>>2]|0;if((i|0)<13&(g&4|0)==0)f[b>>2]=i+-1;else f[e>>2]=g|4;t=a;return}function Rm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Zm(c,h,e,g,2)|0;g=f[e>>2]|0;if((i|0)<60&(g&4|0)==0)f[b>>2]=i;else f[e>>2]=g|4;t=a;return}function Sm(a,c,e,g,h){a=a|0;c=c|0;e=e|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;a=h+8|0;a:while(1){h=f[c>>2]|0;do if(h){i=f[h+12>>2]|0;if((i|0)==(f[h+16>>2]|0))j=Gc[f[(f[h>>2]|0)+36>>2]&127](h)|0;else j=wj(b[i>>0]|0)|0;if(Rj(j,vj()|0)|0){f[c>>2]=0;k=1;break}else{k=(f[c>>2]|0)==0;break}}else k=1;while(0);h=f[e>>2]|0;do if(h){i=f[h+12>>2]|0;if((i|0)==(f[h+16>>2]|0))l=Gc[f[(f[h>>2]|0)+36>>2]&127](h)|0;else l=wj(b[i>>0]|0)|0;if(!(Rj(l,vj()|0)|0))if(k){m=h;break}else{n=h;break a}else{f[e>>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=f[c>>2]|0;i=f[h+12>>2]|0;if((i|0)==(f[h+16>>2]|0))p=Gc[f[(f[h>>2]|0)+36>>2]&127](h)|0;else p=wj(b[i>>0]|0)|0;if((p&255)<<24>>24<=-1){n=m;break}if(!(d[(f[a>>2]|0)+(p<<24>>24<<1)>>1]&8192)){n=m;break}i=f[c>>2]|0;h=i+12|0;q=f[h>>2]|0;if((q|0)==(f[i+16>>2]|0))Gc[f[(f[i>>2]|0)+40>>2]&127](i)|0;else{f[h>>2]=q+1;wj(b[q>>0]|0)|0}}m=f[c>>2]|0;do if(m){p=f[m+12>>2]|0;if((p|0)==(f[m+16>>2]|0))r=Gc[f[(f[m>>2]|0)+36>>2]&127](m)|0;else r=wj(b[p>>0]|0)|0;if(Rj(r,vj()|0)|0){f[c>>2]=0;s=1;break}else{s=(f[c>>2]|0)==0;break}}else s=1;while(0);do if(n){c=f[n+12>>2]|0;if((c|0)==(f[n+16>>2]|0))t=Gc[f[(f[n>>2]|0)+36>>2]&127](n)|0;else t=wj(b[c>>0]|0)|0;if(!(Rj(t,vj()|0)|0))if(s)break;else{o=41;break}else{f[e>>2]=0;o=39;break}}else o=39;while(0);if((o|0)==39?s:0)o=41;if((o|0)==41)f[g>>2]=f[g>>2]|2;return}function Tm(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=t;t=t+16|0;j=i+4|0;k=i;l=a+8|0;a=Gc[f[(f[l>>2]|0)+8>>2]&127](l)|0;l=b[a+11>>0]|0;if(l<<24>>24<0)m=f[a+4>>2]|0;else m=l&255;l=b[a+12+11>>0]|0;if(l<<24>>24<0)n=f[a+16>>2]|0;else n=l&255;do if((m|0)!=(0-n|0)){f[k>>2]=f[e>>2];f[j>>2]=f[k>>2];l=(kl(d,j,a,a+24|0,h,g,0)|0)-a|0;o=f[c>>2]|0;if((o|0)==12&(l|0)==0){f[c>>2]=0;break}if((o|0)<12&(l|0)==12)f[c>>2]=o+12}else f[g>>2]=f[g>>2]|4;while(0);t=i;return}function Um(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Zm(c,h,e,g,2)|0;g=f[e>>2]|0;if((i|0)<61&(g&4|0)==0)f[b>>2]=i;else f[e>>2]=g|4;t=a;return}function Vm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Zm(c,h,e,g,1)|0;g=f[e>>2]|0;if((i|0)<7&(g&4|0)==0)f[b>>2]=i;else f[e>>2]=g|4;t=a;return}function Wm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Zm(c,h,e,g,4)|0;if(!(f[e>>2]&4)){if((i|0)<69)j=i+2e3|0;else j=(i|0)<100?i+1900|0:i;f[b>>2]=j+-1900}t=a;return}function Xm(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Zm(c,h,e,g,4)|0;if(!(f[e>>2]&4))f[b>>2]=i+-1900;t=a;return}function Ym(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|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;a=f[c>>2]|0;do if(a){h=f[a+12>>2]|0;if((h|0)==(f[a+16>>2]|0))i=Gc[f[(f[a>>2]|0)+36>>2]&127](a)|0;else i=wj(b[h>>0]|0)|0;if(Rj(i,vj()|0)|0){f[c>>2]=0;j=1;break}else{j=(f[c>>2]|0)==0;break}}else j=1;while(0);i=f[d>>2]|0;do if(i){a=f[i+12>>2]|0;if((a|0)==(f[i+16>>2]|0))k=Gc[f[(f[i>>2]|0)+36>>2]&127](i)|0;else k=wj(b[a>>0]|0)|0;if(!(Rj(k,vj()|0)|0))if(j){l=i;m=17;break}else{m=16;break}else{f[d>>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)f[e>>2]=f[e>>2]|6;else if((m|0)==17){j=f[c>>2]|0;i=f[j+12>>2]|0;if((i|0)==(f[j+16>>2]|0))n=Gc[f[(f[j>>2]|0)+36>>2]&127](j)|0;else n=wj(b[i>>0]|0)|0;if((Ic[f[(f[g>>2]|0)+36>>2]&63](g,n&255,0)|0)<<24>>24!=37){f[e>>2]=f[e>>2]|4;break}i=f[c>>2]|0;j=i+12|0;k=f[j>>2]|0;if((k|0)==(f[i+16>>2]|0))Gc[f[(f[i>>2]|0)+40>>2]&127](i)|0;else{f[j>>2]=k+1;wj(b[k>>0]|0)|0}k=f[c>>2]|0;do if(k){j=f[k+12>>2]|0;if((j|0)==(f[k+16>>2]|0))o=Gc[f[(f[k>>2]|0)+36>>2]&127](k)|0;else o=wj(b[j>>0]|0)|0;if(Rj(o,vj()|0)|0){f[c>>2]=0;p=1;break}else{p=(f[c>>2]|0)==0;break}}else p=1;while(0);do if(l){k=f[l+12>>2]|0;if((k|0)==(f[l+16>>2]|0))q=Gc[f[(f[l>>2]|0)+36>>2]&127](l)|0;else q=wj(b[k>>0]|0)|0;if(!(Rj(q,vj()|0)|0))if(p)break a;else break;else{f[d>>2]=0;m=38;break}}else m=38;while(0);if((m|0)==38?!p:0)break;f[e>>2]=f[e>>2]|2}while(0);return}function Zm(a,c,e,g,h){a=a|0;c=c|0;e=e|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=f[a>>2]|0;do if(i){j=f[i+12>>2]|0;if((j|0)==(f[i+16>>2]|0))k=Gc[f[(f[i>>2]|0)+36>>2]&127](i)|0;else k=wj(b[j>>0]|0)|0;if(Rj(k,vj()|0)|0){f[a>>2]=0;l=1;break}else{l=(f[a>>2]|0)==0;break}}else l=1;while(0);k=f[c>>2]|0;do if(k){i=f[k+12>>2]|0;if((i|0)==(f[k+16>>2]|0))m=Gc[f[(f[k>>2]|0)+36>>2]&127](k)|0;else m=wj(b[i>>0]|0)|0;if(!(Rj(m,vj()|0)|0))if(l){n=k;o=17;break}else{o=16;break}else{f[c>>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){f[e>>2]=f[e>>2]|6;p=0}else if((o|0)==17){l=f[a>>2]|0;k=f[l+12>>2]|0;if((k|0)==(f[l+16>>2]|0))q=Gc[f[(f[l>>2]|0)+36>>2]&127](l)|0;else q=wj(b[k>>0]|0)|0;k=q&255;if(k<<24>>24>-1?(l=g+8|0,d[(f[l>>2]|0)+(q<<24>>24<<1)>>1]&2048):0){m=(Ic[f[(f[g>>2]|0)+36>>2]&63](g,k,0)|0)<<24>>24;k=f[a>>2]|0;i=k+12|0;j=f[i>>2]|0;if((j|0)==(f[k+16>>2]|0))Gc[f[(f[k>>2]|0)+40>>2]&127](k)|0;else{f[i>>2]=j+1;wj(b[j>>0]|0)|0}j=m;m=h;i=n;k=n;while(1){r=j+-48|0;s=m+-1|0;t=f[a>>2]|0;do if(t){u=f[t+12>>2]|0;if((u|0)==(f[t+16>>2]|0))v=Gc[f[(f[t>>2]|0)+36>>2]&127](t)|0;else v=wj(b[u>>0]|0)|0;if(Rj(v,vj()|0)|0){f[a>>2]=0;w=1;break}else{w=(f[a>>2]|0)==0;break}}else w=1;while(0);if(k){t=f[k+12>>2]|0;if((t|0)==(f[k+16>>2]|0))x=Gc[f[(f[k>>2]|0)+36>>2]&127](k)|0;else x=wj(b[t>>0]|0)|0;if(Rj(x,vj()|0)|0){f[c>>2]=0;y=1;z=0;A=0}else{y=0;z=i;A=k}}else{y=1;z=i;A=0}B=f[a>>2]|0;if(!((m|0)>1&(w^y)))break;t=f[B+12>>2]|0;if((t|0)==(f[B+16>>2]|0))C=Gc[f[(f[B>>2]|0)+36>>2]&127](B)|0;else C=wj(b[t>>0]|0)|0;t=C&255;if(t<<24>>24<=-1){p=r;break a}if(!(d[(f[l>>2]|0)+(C<<24>>24<<1)>>1]&2048)){p=r;break a}u=(r*10|0)+((Ic[f[(f[g>>2]|0)+36>>2]&63](g,t,0)|0)<<24>>24)|0;t=f[a>>2]|0;D=t+12|0;E=f[D>>2]|0;if((E|0)==(f[t+16>>2]|0))Gc[f[(f[t>>2]|0)+40>>2]&127](t)|0;else{f[D>>2]=E+1;wj(b[E>>0]|0)|0}j=u;m=s;i=z;k=A}do if(B){k=f[B+12>>2]|0;if((k|0)==(f[B+16>>2]|0))F=Gc[f[(f[B>>2]|0)+36>>2]&127](B)|0;else F=wj(b[k>>0]|0)|0;if(Rj(F,vj()|0)|0){f[a>>2]=0;G=1;break}else{G=(f[a>>2]|0)==0;break}}else G=1;while(0);do if(z){k=f[z+12>>2]|0;if((k|0)==(f[z+16>>2]|0))H=Gc[f[(f[z>>2]|0)+36>>2]&127](z)|0;else H=wj(b[k>>0]|0)|0;if(!(Rj(H,vj()|0)|0))if(G){p=r;break a}else break;else{f[c>>2]=0;o=63;break}}else o=63;while(0);if((o|0)==63?!G:0){p=r;break}f[e>>2]=f[e>>2]|2;p=r;break}f[e>>2]=f[e>>2]|4;p=0}while(0);return p|0}function _m(a){a=a|0;gk(a);return}function $m(a){a=a|0;gk(a);Ns(a);return}function an(a){a=a|0;return 2}function bn(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h+12|0;j=h+8|0;k=h+4|0;l=h;f[k>>2]=f[b>>2];f[l>>2]=f[c>>2];f[j>>2]=f[k>>2];f[i>>2]=f[l>>2];l=vn(a,j,i,d,e,g,7088,7120)|0;t=h;return l|0}function cn(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;i=t;t=t+16|0;j=i+12|0;k=i+8|0;l=i+4|0;m=i;n=a+8|0;o=Gc[f[(f[n>>2]|0)+20>>2]&127](n)|0;f[l>>2]=f[c>>2];f[m>>2]=f[d>>2];d=b[o+8+3>>0]|0;c=d<<24>>24<0;n=c?f[o>>2]|0:o;p=n+((c?f[o+4>>2]|0:d&255)<<2)|0;f[k>>2]=f[l>>2];f[j>>2]=f[m>>2];m=vn(a,k,j,e,g,h,n,p)|0;t=i;return m|0}function dn(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;h=t;t=t+16|0;i=h+4|0;j=h;Sj(i,d);v=0;d=fa(24,i|0,25372)|0;k=v;v=0;if(k&1){k=Ra()|0;Ck(i);_a(k|0)}else{Ck(i);f[j>>2]=f[c>>2];f[i>>2]=f[j>>2];tn(a,g+24|0,b,i,e,d);t=h;return f[b>>2]|0}return 0}function en(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;h=t;t=t+16|0;i=h+4|0;j=h;Sj(i,d);v=0;d=fa(24,i|0,25372)|0;k=v;v=0;if(k&1){k=Ra()|0;Ck(i);_a(k|0)}else{Ck(i);f[j>>2]=f[c>>2];f[i>>2]=f[j>>2];un(a,g+16|0,b,i,e,d);t=h;return f[b>>2]|0}return 0}function fn(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;h=t;t=t+16|0;i=h+4|0;j=h;Sj(i,d);v=0;d=fa(24,i|0,25372)|0;k=v;v=0;if(k&1){k=Ra()|0;Ck(i);_a(k|0)}else{Ck(i);f[j>>2]=f[c>>2];f[i>>2]=f[j>>2];Gn(a,g+20|0,b,i,e,d);t=h;return f[b>>2]|0}return 0}function gn(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|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,r=0,s=0,u=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;j=t;t=t+144|0;k=j+128|0;l=j+112|0;m=j+124|0;n=j+120|0;o=j+116|0;p=j+108|0;q=j+104|0;r=j+100|0;s=j+96|0;u=j+92|0;w=j+88|0;x=j+84|0;y=j+80|0;z=j+76|0;A=j+72|0;B=j+68|0;C=j+64|0;D=j+60|0;E=j+56|0;F=j+52|0;G=j+48|0;H=j+44|0;I=j+40|0;J=j+36|0;K=j+32|0;L=j+28|0;M=j+24|0;N=j+20|0;O=j+16|0;P=j+12|0;Q=j+8|0;R=j+4|0;S=j;f[g>>2]=0;Sj(k,e);v=0;T=fa(24,k|0,25372)|0;U=v;v=0;if(U&1){U=Ra()|0;Ck(k);_a(U|0)}Ck(k);do switch(i<<24>>24|0){case 65:case 97:{f[m>>2]=f[d>>2];f[k>>2]=f[m>>2];tn(a,h+24|0,c,k,g,T);V=28;break}case 104:case 66:case 98:{f[n>>2]=f[d>>2];f[k>>2]=f[n>>2];un(a,h+16|0,c,k,g,T);V=28;break}case 99:{U=a+8|0;W=Gc[f[(f[U>>2]|0)+12>>2]&127](U)|0;f[o>>2]=f[c>>2];f[p>>2]=f[d>>2];U=b[W+8+3>>0]|0;X=U<<24>>24<0;Y=X?f[W>>2]|0:W;Z=Y+((X?f[W+4>>2]|0:U&255)<<2)|0;f[l>>2]=f[o>>2];f[k>>2]=f[p>>2];U=vn(a,l,k,e,g,h,Y,Z)|0;f[c>>2]=U;V=28;break}case 101:case 100:{f[q>>2]=f[d>>2];f[k>>2]=f[q>>2];wn(a,h+12|0,c,k,g,T);V=28;break}case 68:{f[r>>2]=f[c>>2];f[s>>2]=f[d>>2];f[l>>2]=f[r>>2];f[k>>2]=f[s>>2];U=vn(a,l,k,e,g,h,6912,6944)|0;f[c>>2]=U;V=28;break}case 70:{f[u>>2]=f[c>>2];f[w>>2]=f[d>>2];f[l>>2]=f[u>>2];f[k>>2]=f[w>>2];U=vn(a,l,k,e,g,h,6944,6976)|0;f[c>>2]=U;V=28;break}case 72:{f[x>>2]=f[d>>2];f[k>>2]=f[x>>2];xn(a,h+8|0,c,k,g,T);V=28;break}case 73:{f[y>>2]=f[d>>2];f[k>>2]=f[y>>2];yn(a,h+8|0,c,k,g,T);V=28;break}case 106:{f[z>>2]=f[d>>2];f[k>>2]=f[z>>2];zn(a,h+28|0,c,k,g,T);V=28;break}case 109:{f[A>>2]=f[d>>2];f[k>>2]=f[A>>2];An(a,h+16|0,c,k,g,T);V=28;break}case 77:{f[B>>2]=f[d>>2];f[k>>2]=f[B>>2];Bn(a,h+4|0,c,k,g,T);V=28;break}case 116:case 110:{f[C>>2]=f[d>>2];f[k>>2]=f[C>>2];Cn(a,c,k,g,T);V=28;break}case 112:{f[D>>2]=f[d>>2];f[k>>2]=f[D>>2];Dn(a,h+8|0,c,k,g,T);V=28;break}case 114:{f[E>>2]=f[c>>2];f[F>>2]=f[d>>2];f[l>>2]=f[E>>2];f[k>>2]=f[F>>2];U=vn(a,l,k,e,g,h,6976,7020)|0;f[c>>2]=U;V=28;break}case 82:{f[G>>2]=f[c>>2];f[H>>2]=f[d>>2];f[l>>2]=f[G>>2];f[k>>2]=f[H>>2];U=vn(a,l,k,e,g,h,7024,7044)|0;f[c>>2]=U;V=28;break}case 83:{f[I>>2]=f[d>>2];f[k>>2]=f[I>>2];En(a,h,c,k,g,T);V=28;break}case 84:{f[J>>2]=f[c>>2];f[K>>2]=f[d>>2];f[l>>2]=f[J>>2];f[k>>2]=f[K>>2];U=vn(a,l,k,e,g,h,7056,7088)|0;f[c>>2]=U;V=28;break}case 119:{f[L>>2]=f[d>>2];f[k>>2]=f[L>>2];Fn(a,h+24|0,c,k,g,T);V=28;break}case 120:{U=f[(f[a>>2]|0)+20>>2]|0;f[M>>2]=f[c>>2];f[N>>2]=f[d>>2];f[l>>2]=f[M>>2];f[k>>2]=f[N>>2];_=Nc[U&63](a,l,k,e,g,h)|0;break}case 88:{U=a+8|0;Z=Gc[f[(f[U>>2]|0)+24>>2]&127](U)|0;f[O>>2]=f[c>>2];f[P>>2]=f[d>>2];U=b[Z+8+3>>0]|0;Y=U<<24>>24<0;W=Y?f[Z>>2]|0:Z;X=W+((Y?f[Z+4>>2]|0:U&255)<<2)|0;f[l>>2]=f[O>>2];f[k>>2]=f[P>>2];U=vn(a,l,k,e,g,h,W,X)|0;f[c>>2]=U;V=28;break}case 121:{f[Q>>2]=f[d>>2];f[k>>2]=f[Q>>2];Gn(a,h+20|0,c,k,g,T);V=28;break}case 89:{f[R>>2]=f[d>>2];f[k>>2]=f[R>>2];Hn(a,h+20|0,c,k,g,T);V=28;break}case 37:{f[S>>2]=f[d>>2];f[k>>2]=f[S>>2];In(a,c,k,g,T);V=28;break}default:{f[g>>2]=f[g>>2]|4;V=28}}while(0);if((V|0)==28)_=f[c>>2]|0;t=j;return _|0}function hn(a){a=a|0;do if((b[23984]|0)==0?Wu(23984)|0:0){v=0;ra(7);a=v;v=0;if(a&1){a=Ra()|0;_a(a|0)}else{f[6384]=23648;break}}while(0);return f[6384]|0}function jn(a){a=a|0;do if((b[23968]|0)==0?Wu(23968)|0:0){v=0;ra(8);a=v;v=0;if(a&1){a=Ra()|0;_a(a|0)}else{f[6383]=23360;break}}while(0);return f[6383]|0}function kn(a){a=a|0;do if((b[23952]|0)==0?Wu(23952)|0:0){v=0;ra(9);a=v;v=0;if(a&1){a=Ra()|0;_a(a|0)}else{f[6382]=23072;break}}while(0);return f[6382]|0}function ln(a){a=a|0;do if((b[23944]|0)==0?Wu(23944)|0:0){f[6379]=0;f[6380]=0;f[6381]=0;a=pn(11580)|0;v=0;ua(22,25516,11580,a|0);a=v;v=0;if(a&1){a=Ra()|0;_a(a|0)}else break}while(0);return 25516}function mn(a){a=a|0;do if((b[23936]|0)==0?Wu(23936)|0:0){f[6376]=0;f[6377]=0;f[6378]=0;a=pn(11532)|0;v=0;ua(22,25504,11532,a|0);a=v;v=0;if(a&1){a=Ra()|0;_a(a|0)}else break}while(0);return 25504}function nn(a){a=a|0;do if((b[23928]|0)==0?Wu(23928)|0:0){f[6373]=0;f[6374]=0;f[6375]=0;a=pn(11496)|0;v=0;ua(22,25492,11496,a|0);a=v;v=0;if(a&1){a=Ra()|0;_a(a|0)}else break}while(0);return 25492}function on(a){a=a|0;do if((b[23920]|0)==0?Wu(23920)|0:0){f[6370]=0;f[6371]=0;f[6372]=0;a=pn(11460)|0;v=0;ua(22,25480,11460,a|0);a=v;v=0;if(a&1){a=Ra()|0;_a(a|0)}else break}while(0);return 25480}function pn(a){a=a|0;return Pg(a)|0}function qn(){var a=0,c=0;if((b[23960]|0)==0?Wu(23960)|0:0){a=23072;do{f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}a=a+12|0}while((a|0)!=23360)}yt(23072,11664)|0;yt(23084,11676)|0;return}function rn(){var a=0,c=0;if((b[23976]|0)==0?Wu(23976)|0:0){a=23360;do{f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}a=a+12|0}while((a|0)!=23648)}yt(23360,11688)|0;yt(23372,11720)|0;yt(23384,11756)|0;yt(23396,11780)|0;yt(23408,11804)|0;yt(23420,11820)|0;yt(23432,11840)|0;yt(23444,11860)|0;yt(23456,11888)|0;yt(23468,11928)|0;yt(23480,11960)|0;yt(23492,11996)|0;yt(23504,12032)|0;yt(23516,12048)|0;yt(23528,12064)|0;yt(23540,12080)|0;yt(23552,11804)|0;yt(23564,12096)|0;yt(23576,12112)|0;yt(23588,12128)|0;yt(23600,12144)|0;yt(23612,12160)|0;yt(23624,12176)|0;yt(23636,12192)|0;return}function sn(){var a=0,c=0;if((b[23992]|0)==0?Wu(23992)|0:0){a=23648;do{f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=0;while(1){if((c|0)==3)break;f[a+(c<<2)>>2]=0;c=c+1|0}a=a+12|0}while((a|0)!=23816)}yt(23648,12208)|0;yt(23660,12236)|0;yt(23672,12264)|0;yt(23684,12296)|0;yt(23696,12336)|0;yt(23708,12372)|0;yt(23720,12400)|0;yt(23732,12436)|0;yt(23744,12452)|0;yt(23756,12468)|0;yt(23768,12484)|0;yt(23780,12500)|0;yt(23792,12516)|0;yt(23804,12532)|0;return}function tn(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;h=t;t=t+16|0;i=h+4|0;j=h;k=a+8|0;a=Gc[f[f[k>>2]>>2]&127](k)|0;f[j>>2]=f[d>>2];f[i>>2]=f[j>>2];j=(Nl(c,i,a,a+168|0,g,e,0)|0)-a|0;if((j|0)<168)f[b>>2]=((j|0)/12|0|0)%7|0;t=h;return}function un(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0;h=t;t=t+16|0;i=h+4|0;j=h;k=a+8|0;a=Gc[f[(f[k>>2]|0)+4>>2]&127](k)|0;f[j>>2]=f[d>>2];f[i>>2]=f[j>>2];j=(Nl(c,i,a,a+288|0,g,e,0)|0)-a|0;if((j|0)<288)f[b>>2]=((j|0)/12|0|0)%12|0;t=h;return}function vn(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=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;j=t;t=t+16|0;k=j+12|0;l=j+8|0;m=j+4|0;n=j;Sj(k,d);v=0;o=fa(24,k|0,25372)|0;p=v;v=0;if(p&1){p=Ra()|0;Ck(k);_a(p|0)}Ck(k);f[e>>2]=0;p=h;h=0;a:while(1){q=f[b>>2]|0;if(!((p|0)!=(i|0)&(h|0)==0)){r=q;break}s=q;if(q){u=f[q+12>>2]|0;if((u|0)==(f[q+16>>2]|0))w=Gc[f[(f[q>>2]|0)+36>>2]&127](q)|0;else w=Aj(f[u>>2]|0)|0;if(Tj(w,zj()|0)|0){f[b>>2]=0;x=0;y=1;z=0}else{x=q;y=0;z=s}}else{x=0;y=1;z=s}s=f[c>>2]|0;q=s;do if(s){u=f[s+12>>2]|0;if((u|0)==(f[s+16>>2]|0))A=Gc[f[(f[s>>2]|0)+36>>2]&127](s)|0;else A=Aj(f[u>>2]|0)|0;if(!(Tj(A,zj()|0)|0))if(y){B=s;C=q;break}else{D=62;break a}else{f[c>>2]=0;E=0;D=16;break}}else{E=q;D=16}while(0);if((D|0)==16){D=0;if(y){D=62;break}else{B=0;C=E}}b:do if((Ic[f[(f[o>>2]|0)+52>>2]&63](o,f[p>>2]|0,0)|0)<<24>>24==37){q=p+4|0;if((q|0)==(i|0)){D=62;break a}s=Ic[f[(f[o>>2]|0)+52>>2]&63](o,f[q>>2]|0,0)|0;switch(s<<24>>24){case 48:case 69:{u=p+8|0;if((u|0)==(i|0)){D=62;break a}F=s;G=Ic[f[(f[o>>2]|0)+52>>2]&63](o,f[u>>2]|0,0)|0;H=q;break}default:{F=0;G=s;H=p}}s=f[(f[a>>2]|0)+36>>2]|0;f[m>>2]=z;f[n>>2]=C;f[l>>2]=f[m>>2];f[k>>2]=f[n>>2];q=Pc[s&15](a,l,k,d,e,g,G,F)|0;f[b>>2]=q;I=H+8|0}else{if(!(Ic[f[(f[o>>2]|0)+12>>2]&63](o,8192,f[p>>2]|0)|0)){q=x+12|0;s=f[q>>2]|0;u=x+16|0;if((s|0)==(f[u>>2]|0))J=Gc[f[(f[x>>2]|0)+36>>2]&127](x)|0;else J=Aj(f[s>>2]|0)|0;s=Hc[f[(f[o>>2]|0)+28>>2]&31](o,J)|0;if((s|0)!=(Hc[f[(f[o>>2]|0)+28>>2]&31](o,f[p>>2]|0)|0)){f[e>>2]=4;I=p;break}s=f[q>>2]|0;if((s|0)==(f[u>>2]|0))Gc[f[(f[x>>2]|0)+40>>2]&127](x)|0;else{f[q>>2]=s+4;Aj(f[s>>2]|0)|0}I=p+4|0;break}s=p;while(1){q=s+4|0;if((q|0)==(i|0)){K=i;break}if(Ic[f[(f[o>>2]|0)+12>>2]&63](o,8192,f[q>>2]|0)|0)s=q;else{K=q;break}}s=B;q=x;while(1){if(q){u=f[q+12>>2]|0;if((u|0)==(f[q+16>>2]|0))L=Gc[f[(f[q>>2]|0)+36>>2]&127](q)|0;else L=Aj(f[u>>2]|0)|0;if(Tj(L,zj()|0)|0){f[b>>2]=0;M=0;N=1}else{M=q;N=0}}else{M=0;N=1}do if(s){u=f[s+12>>2]|0;if((u|0)==(f[s+16>>2]|0))O=Gc[f[(f[s>>2]|0)+36>>2]&127](s)|0;else O=Aj(f[u>>2]|0)|0;if(!(Tj(O,zj()|0)|0))if(N){P=s;break}else{I=K;break b}else{f[c>>2]=0;D=42;break}}else D=42;while(0);if((D|0)==42){D=0;if(N){I=K;break b}else P=0}u=M+12|0;Q=f[u>>2]|0;R=M+16|0;if((Q|0)==(f[R>>2]|0))S=Gc[f[(f[M>>2]|0)+36>>2]&127](M)|0;else S=Aj(f[Q>>2]|0)|0;if(!(Ic[f[(f[o>>2]|0)+12>>2]&63](o,8192,S)|0)){I=K;break b}Q=f[u>>2]|0;if((Q|0)==(f[R>>2]|0))Gc[f[(f[M>>2]|0)+40>>2]&127](M)|0;else{f[u>>2]=Q+4;Aj(f[Q>>2]|0)|0}s=P;q=M}}while(0);p=I;h=f[e>>2]|0}if((D|0)==62){f[e>>2]=4;r=x}if(r){x=f[r+12>>2]|0;if((x|0)==(f[r+16>>2]|0))T=Gc[f[(f[r>>2]|0)+36>>2]&127](r)|0;else T=Aj(f[x>>2]|0)|0;if(Tj(T,zj()|0)|0){f[b>>2]=0;U=0;V=1}else{U=r;V=0}}else{U=0;V=1}r=f[c>>2]|0;do if(r){b=f[r+12>>2]|0;if((b|0)==(f[r+16>>2]|0))W=Gc[f[(f[r>>2]|0)+36>>2]&127](r)|0;else W=Aj(f[b>>2]|0)|0;if(!(Tj(W,zj()|0)|0))if(V)break;else{D=77;break}else{f[c>>2]=0;D=75;break}}else D=75;while(0);if((D|0)==75?V:0)D=77;if((D|0)==77)f[e>>2]=f[e>>2]|2;t=j;return U|0}function wn(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Jn(c,h,e,g,2)|0;g=f[e>>2]|0;if((i+-1|0)>>>0<31&(g&4|0)==0)f[b>>2]=i;else f[e>>2]=g|4;t=a;return}function xn(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Jn(c,h,e,g,2)|0;g=f[e>>2]|0;if((i|0)<24&(g&4|0)==0)f[b>>2]=i;else f[e>>2]=g|4;t=a;return}function yn(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Jn(c,h,e,g,2)|0;g=f[e>>2]|0;if((i+-1|0)>>>0<12&(g&4|0)==0)f[b>>2]=i;else f[e>>2]=g|4;t=a;return}function zn(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Jn(c,h,e,g,3)|0;g=f[e>>2]|0;if((i|0)<366&(g&4|0)==0)f[b>>2]=i;else f[e>>2]=g|4;t=a;return}function An(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Jn(c,h,e,g,2)|0;g=f[e>>2]|0;if((i|0)<13&(g&4|0)==0)f[b>>2]=i+-1;else f[e>>2]=g|4;t=a;return}function Bn(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Jn(c,h,e,g,2)|0;g=f[e>>2]|0;if((i|0)<60&(g&4|0)==0)f[b>>2]=i;else f[e>>2]=g|4;t=a;return}function Cn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|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=f[b>>2]|0;do if(a){g=f[a+12>>2]|0;if((g|0)==(f[a+16>>2]|0))h=Gc[f[(f[a>>2]|0)+36>>2]&127](a)|0;else h=Aj(f[g>>2]|0)|0;if(Tj(h,zj()|0)|0){f[b>>2]=0;i=1;break}else{i=(f[b>>2]|0)==0;break}}else i=1;while(0);a=f[c>>2]|0;do if(a){g=f[a+12>>2]|0;if((g|0)==(f[a+16>>2]|0))j=Gc[f[(f[a>>2]|0)+36>>2]&127](a)|0;else j=Aj(f[g>>2]|0)|0;if(!(Tj(j,zj()|0)|0))if(i){k=a;break}else{l=a;break a}else{f[c>>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=f[b>>2]|0;g=f[a+12>>2]|0;if((g|0)==(f[a+16>>2]|0))n=Gc[f[(f[a>>2]|0)+36>>2]&127](a)|0;else n=Aj(f[g>>2]|0)|0;if(!(Ic[f[(f[e>>2]|0)+12>>2]&63](e,8192,n)|0)){l=k;break}g=f[b>>2]|0;a=g+12|0;o=f[a>>2]|0;if((o|0)==(f[g+16>>2]|0))Gc[f[(f[g>>2]|0)+40>>2]&127](g)|0;else{f[a>>2]=o+4;Aj(f[o>>2]|0)|0}}k=f[b>>2]|0;do if(k){n=f[k+12>>2]|0;if((n|0)==(f[k+16>>2]|0))p=Gc[f[(f[k>>2]|0)+36>>2]&127](k)|0;else p=Aj(f[n>>2]|0)|0;if(Tj(p,zj()|0)|0){f[b>>2]=0;q=1;break}else{q=(f[b>>2]|0)==0;break}}else q=1;while(0);do if(l){b=f[l+12>>2]|0;if((b|0)==(f[l+16>>2]|0))r=Gc[f[(f[l>>2]|0)+36>>2]&127](l)|0;else r=Aj(f[b>>2]|0)|0;if(!(Tj(r,zj()|0)|0))if(q)break;else{m=40;break}else{f[c>>2]=0;m=38;break}}else m=38;while(0);if((m|0)==38?q:0)m=40;if((m|0)==40)f[d>>2]=f[d>>2]|2;return}function Dn(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=t;t=t+16|0;j=i+4|0;k=i;l=a+8|0;a=Gc[f[(f[l>>2]|0)+8>>2]&127](l)|0;l=b[a+8+3>>0]|0;if(l<<24>>24<0)m=f[a+4>>2]|0;else m=l&255;l=b[a+20+3>>0]|0;if(l<<24>>24<0)n=f[a+16>>2]|0;else n=l&255;do if((m|0)!=(0-n|0)){f[k>>2]=f[e>>2];f[j>>2]=f[k>>2];l=(Nl(d,j,a,a+24|0,h,g,0)|0)-a|0;o=f[c>>2]|0;if((o|0)==12&(l|0)==0){f[c>>2]=0;break}if((o|0)<12&(l|0)==12)f[c>>2]=o+12}else f[g>>2]=f[g>>2]|4;while(0);t=i;return}function En(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Jn(c,h,e,g,2)|0;g=f[e>>2]|0;if((i|0)<61&(g&4|0)==0)f[b>>2]=i;else f[e>>2]=g|4;t=a;return}function Fn(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Jn(c,h,e,g,1)|0;g=f[e>>2]|0;if((i|0)<7&(g&4|0)==0)f[b>>2]=i;else f[e>>2]=g|4;t=a;return}function Gn(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Jn(c,h,e,g,4)|0;if(!(f[e>>2]&4)){if((i|0)<69)j=i+2e3|0;else j=(i|0)<100?i+1900|0:i;f[b>>2]=j+-1900}t=a;return}function Hn(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=t;t=t+16|0;h=a+4|0;i=a;f[i>>2]=f[d>>2];f[h>>2]=f[i>>2];i=Jn(c,h,e,g,4)|0;if(!(f[e>>2]&4))f[b>>2]=i+-1900;t=a;return}function In(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;a=f[b>>2]|0;do if(a){g=f[a+12>>2]|0;if((g|0)==(f[a+16>>2]|0))h=Gc[f[(f[a>>2]|0)+36>>2]&127](a)|0;else h=Aj(f[g>>2]|0)|0;if(Tj(h,zj()|0)|0){f[b>>2]=0;i=1;break}else{i=(f[b>>2]|0)==0;break}}else i=1;while(0);h=f[c>>2]|0;do if(h){a=f[h+12>>2]|0;if((a|0)==(f[h+16>>2]|0))j=Gc[f[(f[h>>2]|0)+36>>2]&127](h)|0;else j=Aj(f[a>>2]|0)|0;if(!(Tj(j,zj()|0)|0))if(i){k=h;l=17;break}else{l=16;break}else{f[c>>2]=0;l=14;break}}else l=14;while(0);if((l|0)==14)if(i)l=16;else{k=0;l=17}a:do if((l|0)==16)f[d>>2]=f[d>>2]|6;else if((l|0)==17){i=f[b>>2]|0;h=f[i+12>>2]|0;if((h|0)==(f[i+16>>2]|0))m=Gc[f[(f[i>>2]|0)+36>>2]&127](i)|0;else m=Aj(f[h>>2]|0)|0;if((Ic[f[(f[e>>2]|0)+52>>2]&63](e,m,0)|0)<<24>>24!=37){f[d>>2]=f[d>>2]|4;break}h=f[b>>2]|0;i=h+12|0;j=f[i>>2]|0;if((j|0)==(f[h+16>>2]|0))Gc[f[(f[h>>2]|0)+40>>2]&127](h)|0;else{f[i>>2]=j+4;Aj(f[j>>2]|0)|0}j=f[b>>2]|0;do if(j){i=f[j+12>>2]|0;if((i|0)==(f[j+16>>2]|0))n=Gc[f[(f[j>>2]|0)+36>>2]&127](j)|0;else n=Aj(f[i>>2]|0)|0;if(Tj(n,zj()|0)|0){f[b>>2]=0;o=1;break}else{o=(f[b>>2]|0)==0;break}}else o=1;while(0);do if(k){j=f[k+12>>2]|0;if((j|0)==(f[k+16>>2]|0))p=Gc[f[(f[k>>2]|0)+36>>2]&127](k)|0;else p=Aj(f[j>>2]|0)|0;if(!(Tj(p,zj()|0)|0))if(o)break a;else break;else{f[c>>2]=0;l=38;break}}else l=38;while(0);if((l|0)==38?!o:0)break;f[d>>2]=f[d>>2]|2}while(0);return}function Jn(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|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=f[a>>2]|0;do if(g){h=f[g+12>>2]|0;if((h|0)==(f[g+16>>2]|0))i=Gc[f[(f[g>>2]|0)+36>>2]&127](g)|0;else i=Aj(f[h>>2]|0)|0;if(Tj(i,zj()|0)|0){f[a>>2]=0;j=1;break}else{j=(f[a>>2]|0)==0;break}}else j=1;while(0);i=f[b>>2]|0;do if(i){g=f[i+12>>2]|0;if((g|0)==(f[i+16>>2]|0))k=Gc[f[(f[i>>2]|0)+36>>2]&127](i)|0;else k=Aj(f[g>>2]|0)|0;if(!(Tj(k,zj()|0)|0))if(j){l=i;m=17;break}else{m=16;break}else{f[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){f[c>>2]=f[c>>2]|6;n=0}else if((m|0)==17){j=f[a>>2]|0;i=f[j+12>>2]|0;if((i|0)==(f[j+16>>2]|0))o=Gc[f[(f[j>>2]|0)+36>>2]&127](j)|0;else o=Aj(f[i>>2]|0)|0;if(!(Ic[f[(f[d>>2]|0)+12>>2]&63](d,2048,o)|0)){f[c>>2]=f[c>>2]|4;n=0;break}i=(Ic[f[(f[d>>2]|0)+52>>2]&63](d,o,0)|0)<<24>>24;j=f[a>>2]|0;k=j+12|0;g=f[k>>2]|0;if((g|0)==(f[j+16>>2]|0))Gc[f[(f[j>>2]|0)+40>>2]&127](j)|0;else{f[k>>2]=g+4;Aj(f[g>>2]|0)|0}g=i;i=e;k=l;j=l;while(1){p=g+-48|0;h=i+-1|0;q=f[a>>2]|0;do if(q){r=f[q+12>>2]|0;if((r|0)==(f[q+16>>2]|0))s=Gc[f[(f[q>>2]|0)+36>>2]&127](q)|0;else s=Aj(f[r>>2]|0)|0;if(Tj(s,zj()|0)|0){f[a>>2]=0;t=1;break}else{t=(f[a>>2]|0)==0;break}}else t=1;while(0);if(j){q=f[j+12>>2]|0;if((q|0)==(f[j+16>>2]|0))u=Gc[f[(f[j>>2]|0)+36>>2]&127](j)|0;else u=Aj(f[q>>2]|0)|0;if(Tj(u,zj()|0)|0){f[b>>2]=0;v=1;w=0;x=0}else{v=0;w=k;x=j}}else{v=1;w=k;x=0}y=f[a>>2]|0;if(!((i|0)>1&(t^v)))break;q=f[y+12>>2]|0;if((q|0)==(f[y+16>>2]|0))z=Gc[f[(f[y>>2]|0)+36>>2]&127](y)|0;else z=Aj(f[q>>2]|0)|0;if(!(Ic[f[(f[d>>2]|0)+12>>2]&63](d,2048,z)|0)){n=p;break a}q=(p*10|0)+((Ic[f[(f[d>>2]|0)+52>>2]&63](d,z,0)|0)<<24>>24)|0;r=f[a>>2]|0;A=r+12|0;B=f[A>>2]|0;if((B|0)==(f[r+16>>2]|0))Gc[f[(f[r>>2]|0)+40>>2]&127](r)|0;else{f[A>>2]=B+4;Aj(f[B>>2]|0)|0}g=q;i=h;k=w;j=x}do if(y){j=f[y+12>>2]|0;if((j|0)==(f[y+16>>2]|0))C=Gc[f[(f[y>>2]|0)+36>>2]&127](y)|0;else C=Aj(f[j>>2]|0)|0;if(Tj(C,zj()|0)|0){f[a>>2]=0;D=1;break}else{D=(f[a>>2]|0)==0;break}}else D=1;while(0);do if(w){j=f[w+12>>2]|0;if((j|0)==(f[w+16>>2]|0))E=Gc[f[(f[w>>2]|0)+36>>2]&127](w)|0;else E=Aj(f[j>>2]|0)|0;if(!(Tj(E,zj()|0)|0))if(D){n=p;break a}else break;else{f[b>>2]=0;m=61;break}}else m=61;while(0);if((m|0)==61?!D:0){n=p;break}f[c>>2]=f[c>>2]|2;n=p}while(0);return n|0}function Kn(a){a=a|0;Pn(a+8|0);gk(a);return}function Ln(a){a=a|0;Pn(a+8|0);gk(a);Ns(a);return}function Mn(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0;e=t;t=t+112|0;d=e;j=e+100|0;f[j>>2]=d+100;Nn(a+8|0,d,j,g,h,i);i=f[j>>2]|0;j=d;d=f[c>>2]|0;while(1){if((j|0)==(i|0))break;c=b[j>>0]|0;if(!d)k=0;else{h=d+24|0;g=f[h>>2]|0;if((g|0)==(f[d+28>>2]|0)){a=f[(f[d>>2]|0)+52>>2]|0;l=wj(c)|0;m=Hc[a&31](d,l)|0}else{f[h>>2]=g+1;b[g>>0]=c;m=wj(c)|0}c=Rj(m,vj()|0)|0;k=c?0:d}j=j+1|0;d=k}t=e;return d|0}function Nn(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=t;t=t+16|0;j=i;b[j>>0]=37;k=j+1|0;b[k>>0]=g;l=j+2|0;b[l>>0]=h;b[j+3>>0]=0;if(h<<24>>24){b[k>>0]=h;b[l>>0]=g}g=On(c,f[d>>2]|0)|0;l=c+(Lb(c|0,g|0,j|0,e|0,f[a>>2]|0)|0)|0;f[d>>2]=l;t=i;return}function On(a,b){a=a|0;b=b|0;return b-a|0}function Pn(a){a=a|0;var b=0,c=0,d=0;b=f[a>>2]|0;v=0;c=da(2)|0;d=v;v=0;if(d&1){d=Sa(0)|0;pd(d)}if((b|0)!=(c|0))si(f[a>>2]|0);return}function Qn(a){a=a|0;Pn(a+8|0);gk(a);return}function Rn(a){a=a|0;Pn(a+8|0);gk(a);Ns(a);return}function Sn(a,b,c,d,e,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;d=t;t=t+416|0;c=d;i=d+400|0;f[i>>2]=c+400;Tn(a+8|0,c,i,e,g,h);h=f[i>>2]|0;i=c;c=f[b>>2]|0;while(1){if((i|0)==(h|0))break;b=f[i>>2]|0;if(!c)j=0;else{g=c+24|0;e=f[g>>2]|0;if((e|0)==(f[c+28>>2]|0)){a=f[(f[c>>2]|0)+52>>2]|0;k=Aj(b)|0;l=Hc[a&31](c,k)|0}else{f[g>>2]=e+4;f[e>>2]=b;l=Aj(b)|0}b=Tj(l,zj()|0)|0;j=b?0:c}i=i+4|0;c=j}t=d;return c|0}function Tn(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+128|0;i=h;j=h+116|0;k=h+104|0;l=h+112|0;f[j>>2]=i+100;Nn(a,i,j,d,e,g);g=k;f[g>>2]=0;f[g+4>>2]=0;f[l>>2]=i;i=Un(b,f[c>>2]|0)|0;g=Fi(f[a>>2]|0)|0;a=Ki(b,l,i,k)|0;if(g|0)Fi(g)|0;if((a|0)==-1)Vn(19139);else{f[c>>2]=b+(a<<2);t=h;return}}function Un(a,b){a=a|0;b=b|0;return b-a>>2|0}function Vn(a){a=a|0;var b=0;b=Na(8)|0;v=0;ta(48,b|0,a|0);a=v;v=0;if(a&1){a=Ra()|0;Ta(b|0);_a(a|0)}else Va(b|0,9168,132)}function Wn(a){a=a|0;gk(a);return}function Xn(a){a=a|0;gk(a);Ns(a);return}function Yn(a){a=a|0;return 127}function Zn(a){a=a|0;return 127}function _n(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function $n(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function ao(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function bo(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;Zs(a,1,45);return}function co(a){a=a|0;return 0}function eo(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function fo(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function go(a){a=a|0;gk(a);return}function ho(a){a=a|0;gk(a);Ns(a);return}function io(a){a=a|0;return 127}function jo(a){a=a|0;return 127}function ko(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function lo(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function mo(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function no(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;Zs(a,1,45);return}function oo(a){a=a|0;return 0}function po(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function qo(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function ro(a){a=a|0;gk(a);return}function so(a){a=a|0;gk(a);Ns(a);return}function to(a){a=a|0;return 2147483647}function uo(a){a=a|0;return 2147483647}function vo(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function wo(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function xo(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function yo(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;rt(a,1,45);return}function zo(a){a=a|0;return 0}function Ao(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function Bo(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function Co(a){a=a|0;gk(a);return}function Do(a){a=a|0;gk(a);Ns(a);return}function Eo(a){a=a|0;return 2147483647}function Fo(a){a=a|0;return 2147483647}function Go(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function Ho(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function Io(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b=0;while(1){if((b|0)==3)break;f[a+(b<<2)>>2]=0;b=b+1|0}return}function Jo(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;rt(a,1,45);return}function Ko(a){a=a|0;return 0}function Lo(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function Mo(a,c){a=a|0;c=c|0;b[a>>0]=2;b[a+1>>0]=3;b[a+2>>0]=0;b[a+3>>0]=4;return}function No(a){a=a|0;gk(a);return}function Oo(a){a=a|0;gk(a);Ns(a);return}function Po(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;a=t;t=t+256|0;j=a+240|0;k=a+216|0;l=a+112|0;m=a+232|0;n=a+228|0;o=a+224|0;p=a+250|0;q=a+220|0;r=a;f[m>>2]=l;f[m+4>>2]=151;Sj(o,g);v=0;s=fa(24,o|0,25340)|0;u=v;v=0;if(u&1){u=Ra()|0;w=u;x=G}else{b[p>>0]=0;f[q>>2]=f[d>>2];u=f[g+4>>2]|0;v=0;f[j>>2]=f[q>>2];q=pa(1,c|0,j|0,e|0,o|0,u|0,h|0,p|0,s|0,m|0,n|0,l+100|0)|0;l=v;v=0;a:do if(l&1)y=9;else{b:do if(q){v=0;ha(f[(f[s>>2]|0)+32>>2]|0,s|0,19362,19372,j|0)|0;u=v;v=0;if(u&1){u=Ra()|0;z=u;A=G}else{u=f[n>>2]|0;e=f[m>>2]|0;g=u-e|0;B=e;e=u;if((g|0)>98){u=Ag(g+2|0)|0;g=u;if(!u){v=0;ra(3);v=0;C=g}else{D=u;E=g;y=14}}else{D=r;E=0;y=14}do if((y|0)==14){if(!(b[p>>0]|0))F=D;else{b[D>>0]=45;F=D+1|0}g=j+10|0;u=j;H=B;I=F;J=e;while(1){if(H>>>0>=J>>>0)break;K=b[H>>0]|0;L=j;while(1){if((L|0)==(g|0)){M=g;break}if((b[L>>0]|0)==K<<24>>24){M=L;break}L=L+1|0}b[I>>0]=b[19362+(M-u)>>0]|0;H=H+1|0;I=I+1|0;J=f[n>>2]|0}b[I>>0]=0;f[k>>2]=i;if((uh(r,19373,k)|0)!=1){v=0;sa(152,19377);v=0;C=E;break}if(E|0)Bg(E);break b}while(0);e=Ra()|0;B=G;if(C|0)Bg(C);z=e;A=B}N=z;O=A;break a}while(0);B=f[c>>2]|0;do if(B){e=f[B+12>>2]|0;if((e|0)==(f[B+16>>2]|0)){v=0;J=ea(f[(f[B>>2]|0)+36>>2]|0,B|0)|0;H=v;v=0;if(H&1){y=9;break a}else P=J}else P=wj(b[e>>0]|0)|0;if(Rj(P,vj()|0)|0){f[c>>2]=0;Q=1;break}else{Q=(f[c>>2]|0)==0;break}}else Q=1;while(0);B=f[d>>2]|0;do if(B){e=f[B+12>>2]|0;if((e|0)==(f[B+16>>2]|0)){v=0;J=ea(f[(f[B>>2]|0)+36>>2]|0,B|0)|0;H=v;v=0;if(H&1){y=9;break a}else R=J}else R=wj(b[e>>0]|0)|0;if(!(Rj(R,vj()|0)|0))if(Q)break;else{y=44;break}else{f[d>>2]=0;y=42;break}}else y=42;while(0);if((y|0)==42?Q:0)y=44;if((y|0)==44)f[h>>2]=f[h>>2]|2;B=f[c>>2]|0;Ck(o);e=f[m>>2]|0;f[m>>2]=0;if(e|0?(v=0,sa(f[m+4>>2]|0,e|0),e=v,v=0,e&1):0){e=Sa(0)|0;pd(e)}t=a;return B|0}while(0);if((y|0)==9){y=Ra()|0;N=y;O=G}w=N;x=O}Ck(o);o=f[m>>2]|0;f[m>>2]=0;if((o|0)!=0?(v=0,sa(f[m+4>>2]|0,o|0),o=v,v=0,o&1):0){o=Sa(0)|0;pd(o)}else{o=x;S=w}_a(S|0);return 0}function Qo(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,H=0,I=0;a=t;t=t+128|0;j=a+120|0;k=a;l=a+112|0;m=a+108|0;n=a+100|0;o=a+124|0;p=a+104|0;f[l>>2]=k;f[l+4>>2]=151;Sj(n,g);v=0;q=fa(24,n|0,25340)|0;r=v;v=0;if(r&1){r=Ra()|0;s=r;u=G}else{b[o>>0]=0;r=f[d>>2]|0;f[p>>2]=r;w=f[g+4>>2]|0;g=r;v=0;f[j>>2]=f[p>>2];p=pa(1,c|0,j|0,e|0,n|0,w|0,h|0,o|0,q|0,l|0,m|0,k+100|0)|0;k=v;v=0;a:do if(k&1)x=11;else{if(p){w=i+11|0;if((b[w>>0]|0)<0){e=f[i>>2]|0;b[j>>0]=0;fk(e,j);f[i+4>>2]=0}else{b[j>>0]=0;fk(i,j);b[w>>0]=0}if(b[o>>0]|0){v=0;w=fa(f[(f[q>>2]|0)+28>>2]|0,q|0,45)|0;e=v;v=0;if(e&1){x=11;break}v=0;ta(60,i|0,w|0);w=v;v=0;if(w&1){x=11;break}}v=0;w=fa(f[(f[q>>2]|0)+28>>2]|0,q|0,48)|0;e=v;v=0;if(e&1){e=Ra()|0;y=e;z=G;break}e=f[m>>2]|0;A=e+-1|0;B=f[l>>2]|0;while(1){if(B>>>0>=A>>>0)break;if((b[B>>0]|0)!=w<<24>>24)break;B=B+1|0}v=0;ga(31,i|0,B|0,e|0)|0;w=v;v=0;if(w&1){w=Ra()|0;y=w;z=G;break}}w=f[c>>2]|0;do if(w){A=f[w+12>>2]|0;if((A|0)==(f[w+16>>2]|0)){v=0;C=ea(f[(f[w>>2]|0)+36>>2]|0,w|0)|0;D=v;v=0;if(D&1){x=11;break a}else E=C}else E=wj(b[A>>0]|0)|0;if(Rj(E,vj()|0)|0){f[c>>2]=0;F=1;break}else{F=(f[c>>2]|0)==0;break}}else F=1;while(0);do if(r){w=f[g+12>>2]|0;if((w|0)==(f[g+16>>2]|0)){v=0;e=ea(f[(f[r>>2]|0)+36>>2]|0,g|0)|0;B=v;v=0;if(B&1){x=11;break a}else H=e}else H=wj(b[w>>0]|0)|0;if(!(Rj(H,vj()|0)|0))if(F)break;else{x=35;break}else{f[d>>2]=0;x=33;break}}else x=33;while(0);if((x|0)==33?F:0)x=35;if((x|0)==35)f[h>>2]=f[h>>2]|2;w=f[c>>2]|0;Ck(n);e=f[l>>2]|0;f[l>>2]=0;if(e|0?(v=0,sa(f[l+4>>2]|0,e|0),e=v,v=0,e&1):0){e=Sa(0)|0;pd(e)}t=a;return w|0}while(0);if((x|0)==11){x=Ra()|0;y=x;z=G}s=y;u=z}Ck(n);n=f[l>>2]|0;f[l>>2]=0;if((n|0)!=0?(v=0,sa(f[l+4>>2]|0,n|0),n=v,v=0,n&1):0){n=Sa(0)|0;pd(n)}else{n=u;I=s}_a(I|0);return 0}function Ro(a){a=a|0;return}function So(a,c,e,g,i,j,k,l,m,n,o){a=a|0;c=c|0;e=e|0;g=g|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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,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,wa=0,xa=0,ya=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,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=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;p=t;t=t+512|0;q=p+488|0;r=p;s=p+480|0;u=p+472|0;w=p+468|0;x=p+496|0;y=p+493|0;z=p+492|0;A=p+456|0;B=p+444|0;C=p+432|0;D=p+420|0;E=p+408|0;F=p+404|0;H=p+400|0;f[q>>2]=o;f[s>>2]=r;f[s+4>>2]=151;f[u>>2]=r;f[w>>2]=r+400;f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;r=0;while(1){if((r|0)==3)break;f[A+(r<<2)>>2]=0;r=r+1|0}f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;r=0;while(1){if((r|0)==3)break;f[B+(r<<2)>>2]=0;r=r+1|0}f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;r=0;while(1){if((r|0)==3)break;f[C+(r<<2)>>2]=0;r=r+1|0}f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;r=0;while(1){if((r|0)==3)break;f[D+(r<<2)>>2]=0;r=r+1|0}f[E>>2]=0;f[E+4>>2]=0;f[E+8>>2]=0;r=0;while(1){if((r|0)==3)break;f[E+(r<<2)>>2]=0;r=r+1|0}v=0;za(1,e|0,g|0,x|0,y|0,z|0,A|0,B|0,C|0,D|0,F|0);g=v;v=0;a:do if(!(g&1)){f[n>>2]=f[m>>2];e=l+8|0;r=C+11|0;o=C+4|0;I=D+11|0;J=D+4|0;K=A+11|0;L=A+4|0;M=(i&512|0)!=0;N=B+11|0;O=x+3|0;P=B+4|0;Q=E+11|0;R=E+4|0;S=0;T=0;b:while(1){if(T>>>0>=4){U=261;break}V=f[a>>2]|0;do if(V){W=f[V+12>>2]|0;if((W|0)==(f[V+16>>2]|0)){v=0;X=ea(f[(f[V>>2]|0)+36>>2]|0,V|0)|0;Y=v;v=0;if(Y&1){U=36;break b}else Z=X}else Z=wj(b[W>>0]|0)|0;if(Rj(Z,vj()|0)|0){f[a>>2]=0;_=1;break}else{_=(f[a>>2]|0)==0;break}}else _=1;while(0);V=f[c>>2]|0;do if(V){W=f[V+12>>2]|0;if((W|0)==(f[V+16>>2]|0)){v=0;X=ea(f[(f[V>>2]|0)+36>>2]|0,V|0)|0;Y=v;v=0;if(Y&1){U=36;break b}else $=X}else $=wj(b[W>>0]|0)|0;if(!(Rj($,vj()|0)|0))if(_){aa=V;break}else{U=261;break b}else{f[c>>2]=0;U=32;break}}else U=32;while(0);if((U|0)==32){U=0;if(_){U=261;break}else aa=0}c:do switch(b[x+T>>0]|0){case 1:{if((T|0)!=3){V=f[a>>2]|0;W=f[V+12>>2]|0;if((W|0)==(f[V+16>>2]|0)){v=0;X=ea(f[(f[V>>2]|0)+36>>2]|0,V|0)|0;V=v;v=0;if(V&1){U=36;break b}else ba=X}else ba=wj(b[W>>0]|0)|0;if((ba&255)<<24>>24<=-1){U=50;break b}if(!(d[(f[e>>2]|0)+(ba<<24>>24<<1)>>1]&8192)){U=50;break b}W=f[a>>2]|0;X=W+12|0;V=f[X>>2]|0;if((V|0)==(f[W+16>>2]|0)){v=0;Y=ea(f[(f[W>>2]|0)+40>>2]|0,W|0)|0;W=v;v=0;if(W&1){U=36;break b}else ca=Y}else{f[X>>2]=V+1;ca=wj(b[V>>0]|0)|0}v=0;ta(60,E|0,ca&255|0);V=v;v=0;if(V&1){U=36;break b}else U=52}else da=S;break}case 0:{if((T|0)==3)da=S;else U=52;break}case 3:{V=b[r>>0]|0;X=V<<24>>24<0?f[o>>2]|0:V&255;V=b[I>>0]|0;Y=V<<24>>24<0?f[J>>2]|0:V&255;if((X|0)==(0-Y|0))da=S;else{if(!X){X=f[a>>2]|0;V=f[X+12>>2]|0;if((V|0)==(f[X+16>>2]|0)){v=0;W=ea(f[(f[X>>2]|0)+36>>2]|0,X|0)|0;X=v;v=0;if(X&1){U=36;break b}else fa=W}else fa=wj(b[V>>0]|0)|0;if((b[((b[I>>0]|0)<0?f[D>>2]|0:D)>>0]|0)!=(fa&255)<<24>>24){da=S;break c}V=f[a>>2]|0;W=V+12|0;X=f[W>>2]|0;if((X|0)==(f[V+16>>2]|0)){v=0;ea(f[(f[V>>2]|0)+40>>2]|0,V|0)|0;V=v;v=0;if(V&1){U=36;break b}}else{f[W>>2]=X+1;wj(b[X>>0]|0)|0}b[k>>0]=1;X=b[I>>0]|0;da=(X<<24>>24<0?f[J>>2]|0:X&255)>>>0>1?D:S;break c}X=f[a>>2]|0;W=f[X+12>>2]|0;V=(W|0)==(f[X+16>>2]|0);if(!Y){if(V){v=0;Y=ea(f[(f[X>>2]|0)+36>>2]|0,X|0)|0;ga=v;v=0;if(ga&1){U=36;break b}else ha=Y}else ha=wj(b[W>>0]|0)|0;if((b[((b[r>>0]|0)<0?f[C>>2]|0:C)>>0]|0)!=(ha&255)<<24>>24){b[k>>0]=1;da=S;break c}Y=f[a>>2]|0;ga=Y+12|0;ia=f[ga>>2]|0;if((ia|0)==(f[Y+16>>2]|0)){v=0;ea(f[(f[Y>>2]|0)+40>>2]|0,Y|0)|0;Y=v;v=0;if(Y&1){U=36;break b}}else{f[ga>>2]=ia+1;wj(b[ia>>0]|0)|0}ia=b[r>>0]|0;da=(ia<<24>>24<0?f[o>>2]|0:ia&255)>>>0>1?C:S;break c}if(V){v=0;V=ea(f[(f[X>>2]|0)+36>>2]|0,X|0)|0;X=v;v=0;if(X&1){U=36;break b}else ja=V}else ja=wj(b[W>>0]|0)|0;W=f[a>>2]|0;V=W+12|0;X=f[V>>2]|0;ia=(X|0)==(f[W+16>>2]|0);if((b[((b[r>>0]|0)<0?f[C>>2]|0:C)>>0]|0)==(ja&255)<<24>>24){if(ia){v=0;ea(f[(f[W>>2]|0)+40>>2]|0,W|0)|0;ga=v;v=0;if(ga&1){U=36;break b}}else{f[V>>2]=X+1;wj(b[X>>0]|0)|0}V=b[r>>0]|0;da=(V<<24>>24<0?f[o>>2]|0:V&255)>>>0>1?C:S;break c}if(ia){v=0;ia=ea(f[(f[W>>2]|0)+36>>2]|0,W|0)|0;W=v;v=0;if(W&1){U=36;break b}else ka=ia}else ka=wj(b[X>>0]|0)|0;if((b[((b[I>>0]|0)<0?f[D>>2]|0:D)>>0]|0)!=(ka&255)<<24>>24){U=113;break b}X=f[a>>2]|0;ia=X+12|0;W=f[ia>>2]|0;if((W|0)==(f[X+16>>2]|0)){v=0;ea(f[(f[X>>2]|0)+40>>2]|0,X|0)|0;X=v;v=0;if(X&1){U=36;break b}}else{f[ia>>2]=W+1;wj(b[W>>0]|0)|0}b[k>>0]=1;W=b[I>>0]|0;da=(W<<24>>24<0?f[J>>2]|0:W&255)>>>0>1?D:S}break}case 2:{if(T>>>0<2|(S|0)!=0){W=b[N>>0]|0;ia=W<<24>>24<0;X=f[B>>2]|0;V=ia?X:B;ga=V;if(!T){la=ga;ma=X;na=W}else{oa=W;pa=ia;qa=V;ra=ga;wa=X;U=118}}else{if(!(M|(T|0)==2&(b[O>>0]|0)!=0)){da=0;break c}X=b[N>>0]|0;ga=X<<24>>24<0;V=f[B>>2]|0;ia=ga?V:B;oa=X;pa=ga;qa=ia;ra=ia;wa=V;U=118}d:do if((U|0)==118){U=0;if((h[x+(T+-1)>>0]|0)<2){V=qa+(pa?f[P>>2]|0:oa&255)|0;ia=ra;while(1){ga=ia;if((V|0)==(ga|0))break;X=b[ga>>0]|0;if(X<<24>>24<=-1)break;if(!(d[(f[e>>2]|0)+(X<<24>>24<<1)>>1]&8192))break;ia=ga+1|0}V=ia-ra|0;ga=b[Q>>0]|0;X=ga<<24>>24<0;W=f[R>>2]|0;Y=ga&255;if(V>>>0<=(X?W:Y)>>>0){ga=(f[E>>2]|0)+W|0;W=E+Y|0;Y=X?ga:W;xa=qa;ya=X?ga+(0-V)|0:W+(0-V)|0;while(1){if((ya|0)==(Y|0)){la=ia;ma=wa;na=oa;break d}if((b[ya>>0]|0)!=(b[xa>>0]|0)){la=ra;ma=wa;na=oa;break d}xa=xa+1|0;ya=ya+1|0}}else{la=ra;ma=wa;na=oa}}else{la=ra;ma=wa;na=oa}}while(0);ya=la;xa=na;ia=ma;Y=aa;e:while(1){V=xa<<24>>24<0;if((ya|0)==((V?ia:B)+(V?f[P>>2]|0:xa&255)|0))break;V=f[a>>2]|0;do if(V){W=f[V+12>>2]|0;if((W|0)==(f[V+16>>2]|0)){v=0;ga=ea(f[(f[V>>2]|0)+36>>2]|0,V|0)|0;X=v;v=0;if(X&1){U=154;break b}else Aa=ga}else Aa=wj(b[W>>0]|0)|0;if(Rj(Aa,vj()|0)|0){f[a>>2]=0;Ba=1;break}else{Ba=(f[a>>2]|0)==0;break}}else Ba=1;while(0);do if(Y){V=f[Y+12>>2]|0;if((V|0)==(f[Y+16>>2]|0)){v=0;W=ea(f[(f[Y>>2]|0)+36>>2]|0,Y|0)|0;ga=v;v=0;if(ga&1){U=154;break b}else Ca=W}else Ca=wj(b[V>>0]|0)|0;if(!(Rj(Ca,vj()|0)|0))if(Ba){Da=Y;break}else break e;else{f[c>>2]=0;U=144;break}}else U=144;while(0);if((U|0)==144){U=0;if(Ba)break;else Da=0}V=f[a>>2]|0;W=f[V+12>>2]|0;if((W|0)==(f[V+16>>2]|0)){v=0;ga=ea(f[(f[V>>2]|0)+36>>2]|0,V|0)|0;V=v;v=0;if(V&1){U=154;break b}else Ea=ga}else Ea=wj(b[W>>0]|0)|0;if((b[ya>>0]|0)!=(Ea&255)<<24>>24)break;W=f[a>>2]|0;ga=W+12|0;V=f[ga>>2]|0;if((V|0)==(f[W+16>>2]|0)){v=0;ea(f[(f[W>>2]|0)+40>>2]|0,W|0)|0;W=v;v=0;if(W&1){U=155;break b}}else{f[ga>>2]=V+1;wj(b[V>>0]|0)|0}ya=ya+1|0;xa=b[N>>0]|0;ia=f[B>>2]|0;Y=Da}if(M?(Y=b[N>>0]|0,ia=Y<<24>>24<0,(ya|0)!=((ia?f[B>>2]|0:B)+(ia?f[P>>2]|0:Y&255)|0)):0){U=158;break b}else da=S;break}case 4:{Y=0;ia=aa;xa=aa;f:while(1){V=f[a>>2]|0;do if(V){ga=f[V+12>>2]|0;if((ga|0)==(f[V+16>>2]|0)){v=0;W=ea(f[(f[V>>2]|0)+36>>2]|0,V|0)|0;X=v;v=0;if(X&1){U=183;break b}else Fa=W}else Fa=wj(b[ga>>0]|0)|0;if(Rj(Fa,vj()|0)|0){f[a>>2]=0;Ga=1;break}else{Ga=(f[a>>2]|0)==0;break}}else Ga=1;while(0);do if(ia){V=f[ia+12>>2]|0;if((V|0)==(f[ia+16>>2]|0)){v=0;ga=ea(f[(f[ia>>2]|0)+36>>2]|0,ia|0)|0;W=v;v=0;if(W&1){U=183;break b}else Ha=ga}else Ha=wj(b[V>>0]|0)|0;if(!(Rj(Ha,vj()|0)|0))if(Ga){Ia=xa;Ja=ia;break}else{Ka=xa;break f}else{f[c>>2]=0;La=0;U=172;break}}else{La=xa;U=172}while(0);if((U|0)==172){U=0;if(Ga){Ka=La;break}else{Ia=La;Ja=0}}V=f[a>>2]|0;ga=f[V+12>>2]|0;if((ga|0)==(f[V+16>>2]|0)){v=0;W=ea(f[(f[V>>2]|0)+36>>2]|0,V|0)|0;V=v;v=0;if(V&1){U=186;break b}else Ma=W}else Ma=wj(b[ga>>0]|0)|0;ga=Ma&255;if(ga<<24>>24>-1?(d[(f[e>>2]|0)+(Ma<<24>>24<<1)>>1]&2048)!=0:0){W=f[n>>2]|0;if((W|0)==(f[q>>2]|0)){v=0;ua(23,m|0,n|0,q|0);V=v;v=0;if(V&1){U=186;break b}Na=f[n>>2]|0}else Na=W;f[n>>2]=Na+1;b[Na>>0]=ga;Oa=Y+1|0}else{W=b[K>>0]|0;if(!((b[z>>0]|0)==ga<<24>>24&(Y|0?((W<<24>>24<0?f[L>>2]|0:W&255)|0)!=0:0))){Ka=Ia;break}W=f[u>>2]|0;if((W|0)==(f[w>>2]|0)){v=0;ua(24,s|0,u|0,w|0);ga=v;v=0;if(ga&1){U=186;break b}Pa=f[u>>2]|0}else Pa=W;f[u>>2]=Pa+4;f[Pa>>2]=Y;Oa=0}W=f[a>>2]|0;ga=W+12|0;V=f[ga>>2]|0;if((V|0)==(f[W+16>>2]|0)){v=0;ea(f[(f[W>>2]|0)+40>>2]|0,W|0)|0;W=v;v=0;if(W&1){U=183;break b}}else{f[ga>>2]=V+1;wj(b[V>>0]|0)|0}Y=Oa;ia=Ja;xa=Ia}xa=f[u>>2]|0;if(Y|0?(f[s>>2]|0)!=(xa|0):0){if((xa|0)==(f[w>>2]|0)){v=0;ua(24,s|0,u|0,w|0);ia=v;v=0;if(ia&1){U=184;break b}Qa=f[u>>2]|0}else Qa=xa;f[u>>2]=Qa+4;f[Qa>>2]=Y}g:do if((f[F>>2]|0)>0){xa=f[a>>2]|0;do if(xa){ia=f[xa+12>>2]|0;if((ia|0)==(f[xa+16>>2]|0)){v=0;ya=ea(f[(f[xa>>2]|0)+36>>2]|0,xa|0)|0;V=v;v=0;if(V&1){U=184;break b}else Ta=ya}else Ta=wj(b[ia>>0]|0)|0;if(Rj(Ta,vj()|0)|0){f[a>>2]=0;Ua=1;break}else{Ua=(f[a>>2]|0)==0;break}}else Ua=1;while(0);do if(Ka){xa=f[Ka+12>>2]|0;if((xa|0)==(f[Ka+16>>2]|0)){v=0;ia=ea(f[(f[Ka>>2]|0)+36>>2]|0,Ka|0)|0;ya=v;v=0;if(ya&1){U=184;break b}else Va=ia}else Va=wj(b[xa>>0]|0)|0;if(!(Rj(Va,vj()|0)|0))if(Ua){Wa=Ka;break}else{U=222;break b}else{f[c>>2]=0;U=216;break}}else U=216;while(0);if((U|0)==216){U=0;if(Ua){U=222;break b}else Wa=0}xa=f[a>>2]|0;ia=f[xa+12>>2]|0;if((ia|0)==(f[xa+16>>2]|0)){v=0;ya=ea(f[(f[xa>>2]|0)+36>>2]|0,xa|0)|0;xa=v;v=0;if(xa&1){U=184;break b}else Xa=ya}else Xa=wj(b[ia>>0]|0)|0;if((b[y>>0]|0)!=(Xa&255)<<24>>24){U=222;break b}ia=f[a>>2]|0;ya=ia+12|0;xa=f[ya>>2]|0;if((xa|0)==(f[ia+16>>2]|0)){v=0;ea(f[(f[ia>>2]|0)+40>>2]|0,ia|0)|0;ia=v;v=0;if(ia&1){U=184;break b}}else{f[ya>>2]=xa+1;wj(b[xa>>0]|0)|0}xa=Wa;while(1){if((f[F>>2]|0)<=0)break g;ya=f[a>>2]|0;do if(ya){ia=f[ya+12>>2]|0;if((ia|0)==(f[ya+16>>2]|0)){v=0;V=ea(f[(f[ya>>2]|0)+36>>2]|0,ya|0)|0;ga=v;v=0;if(ga&1){U=182;break b}else Ya=V}else Ya=wj(b[ia>>0]|0)|0;if(Rj(Ya,vj()|0)|0){f[a>>2]=0;Za=1;break}else{Za=(f[a>>2]|0)==0;break}}else Za=1;while(0);do if(xa){ya=f[xa+12>>2]|0;if((ya|0)==(f[xa+16>>2]|0)){v=0;ia=ea(f[(f[xa>>2]|0)+36>>2]|0,xa|0)|0;V=v;v=0;if(V&1){U=182;break b}else $a=ia}else $a=wj(b[ya>>0]|0)|0;if(!(Rj($a,vj()|0)|0))if(Za){ab=xa;break}else{U=248;break b}else{f[c>>2]=0;U=241;break}}else U=241;while(0);if((U|0)==241){U=0;if(Za){U=248;break b}else ab=0}ya=f[a>>2]|0;ia=f[ya+12>>2]|0;if((ia|0)==(f[ya+16>>2]|0)){v=0;V=ea(f[(f[ya>>2]|0)+36>>2]|0,ya|0)|0;ya=v;v=0;if(ya&1){U=182;break b}else bb=V}else bb=wj(b[ia>>0]|0)|0;if((bb&255)<<24>>24<=-1){U=248;break b}if(!(d[(f[e>>2]|0)+(bb<<24>>24<<1)>>1]&2048)){U=248;break b}if((f[n>>2]|0)==(f[q>>2]|0)?(v=0,ua(23,m|0,n|0,q|0),ia=v,v=0,ia&1):0){U=182;break b}ia=f[a>>2]|0;V=f[ia+12>>2]|0;if((V|0)==(f[ia+16>>2]|0)){v=0;ya=ea(f[(f[ia>>2]|0)+36>>2]|0,ia|0)|0;ia=v;v=0;if(ia&1){U=182;break b}else cb=ya}else cb=wj(b[V>>0]|0)|0;V=f[n>>2]|0;f[n>>2]=V+1;b[V>>0]=cb;f[F>>2]=(f[F>>2]|0)+-1;V=f[a>>2]|0;ya=V+12|0;ia=f[ya>>2]|0;if((ia|0)==(f[V+16>>2]|0)){v=0;ea(f[(f[V>>2]|0)+40>>2]|0,V|0)|0;V=v;v=0;if(V&1){U=182;break b}}else{f[ya>>2]=ia+1;wj(b[ia>>0]|0)|0}xa=ab}}while(0);if((f[n>>2]|0)==(f[m>>2]|0)){U=259;break b}else da=S;break}default:da=S}while(0);h:do if((U|0)==52){U=0;Y=aa;while(1){xa=f[a>>2]|0;do if(xa){ia=f[xa+12>>2]|0;if((ia|0)==(f[xa+16>>2]|0)){v=0;ya=ea(f[(f[xa>>2]|0)+36>>2]|0,xa|0)|0;V=v;v=0;if(V&1){U=35;break b}else db=ya}else db=wj(b[ia>>0]|0)|0;if(Rj(db,vj()|0)|0){f[a>>2]=0;eb=1;break}else{eb=(f[a>>2]|0)==0;break}}else eb=1;while(0);do if(Y){xa=f[Y+12>>2]|0;if((xa|0)==(f[Y+16>>2]|0)){v=0;ia=ea(f[(f[Y>>2]|0)+36>>2]|0,Y|0)|0;ya=v;v=0;if(ya&1){U=35;break b}else fb=ia}else fb=wj(b[xa>>0]|0)|0;if(!(Rj(fb,vj()|0)|0))if(eb){gb=Y;break}else{da=S;break h}else{f[c>>2]=0;U=66;break}}else U=66;while(0);if((U|0)==66){U=0;if(eb){da=S;break h}else gb=0}xa=f[a>>2]|0;ia=f[xa+12>>2]|0;if((ia|0)==(f[xa+16>>2]|0)){v=0;ya=ea(f[(f[xa>>2]|0)+36>>2]|0,xa|0)|0;xa=v;v=0;if(xa&1){U=35;break b}else hb=ya}else hb=wj(b[ia>>0]|0)|0;if((hb&255)<<24>>24<=-1){da=S;break h}if(!(d[(f[e>>2]|0)+(hb<<24>>24<<1)>>1]&8192)){da=S;break h}ia=f[a>>2]|0;ya=ia+12|0;xa=f[ya>>2]|0;if((xa|0)==(f[ia+16>>2]|0)){v=0;V=ea(f[(f[ia>>2]|0)+40>>2]|0,ia|0)|0;ia=v;v=0;if(ia&1){U=35;break b}else ib=V}else{f[ya>>2]=xa+1;ib=wj(b[xa>>0]|0)|0}v=0;ta(60,E|0,ib&255|0);xa=v;v=0;if(xa&1){U=35;break b}else Y=gb}}while(0);S=da;T=T+1|0}i:switch(U|0){case 35:{jb=Ra()|0;kb=G;U=37;break}case 36:{jb=Ra()|0;kb=G;U=37;break}case 50:{f[j>>2]=f[j>>2]|4;lb=0;U=300;break}case 113:{f[j>>2]=f[j>>2]|4;lb=0;U=300;break}case 154:{mb=Ra()|0;nb=G;break a;break}case 155:{mb=Ra()|0;nb=G;break a;break}case 158:{f[j>>2]=f[j>>2]|4;lb=0;U=300;break}case 182:{ob=Ra()|0;pb=G;U=185;break}case 183:{ob=Ra()|0;pb=G;U=185;break}case 184:{ob=Ra()|0;pb=G;U=185;break}case 186:{mb=Ra()|0;nb=G;break a;break}case 222:{f[j>>2]=f[j>>2]|4;lb=0;U=300;break}case 248:{f[j>>2]=f[j>>2]|4;lb=0;U=300;break}case 259:{f[j>>2]=f[j>>2]|4;lb=0;U=300;break}case 261:{j:do if(S|0){T=S+11|0;e=S+4|0;L=1;k:while(1){K=b[T>>0]|0;if(K<<24>>24<0)qb=f[e>>2]|0;else qb=K&255;if(L>>>0>=qb>>>0)break j;K=f[a>>2]|0;do if(K){P=f[K+12>>2]|0;if((P|0)==(f[K+16>>2]|0)){v=0;N=ea(f[(f[K>>2]|0)+36>>2]|0,K|0)|0;M=v;v=0;if(M&1){U=289;break k}else rb=N}else rb=wj(b[P>>0]|0)|0;if(Rj(rb,vj()|0)|0){f[a>>2]=0;sb=1;break}else{sb=(f[a>>2]|0)==0;break}}else sb=1;while(0);K=f[c>>2]|0;do if(K){P=f[K+12>>2]|0;if((P|0)==(f[K+16>>2]|0)){v=0;N=ea(f[(f[K>>2]|0)+36>>2]|0,K|0)|0;M=v;v=0;if(M&1){U=289;break k}else tb=N}else tb=wj(b[P>>0]|0)|0;if(!(Rj(tb,vj()|0)|0))if(sb)break;else{U=288;break k}else{f[c>>2]=0;U=280;break}}else U=280;while(0);if((U|0)==280?(U=0,sb):0){U=288;break}K=f[a>>2]|0;P=f[K+12>>2]|0;if((P|0)==(f[K+16>>2]|0)){v=0;N=ea(f[(f[K>>2]|0)+36>>2]|0,K|0)|0;K=v;v=0;if(K&1){U=289;break}else ub=N}else ub=wj(b[P>>0]|0)|0;if((b[T>>0]|0)<0)vb=f[S>>2]|0;else vb=S;if((b[vb+L>>0]|0)!=(ub&255)<<24>>24){U=288;break}P=f[a>>2]|0;N=P+12|0;K=f[N>>2]|0;if((K|0)==(f[P+16>>2]|0)){v=0;ea(f[(f[P>>2]|0)+40>>2]|0,P|0)|0;P=v;v=0;if(P&1){U=289;break}}else{f[N>>2]=K+1;wj(b[K>>0]|0)|0}L=L+1|0}if((U|0)==288){f[j>>2]=f[j>>2]|4;lb=0;U=300;break i}else if((U|0)==289){L=Ra()|0;mb=L;nb=G;break a}}while(0);S=f[s>>2]|0;L=f[u>>2]|0;if((S|0)!=(L|0)){f[H>>2]=0;v=0;va(8,A|0,S|0,L|0,H|0);L=v;v=0;if(L&1){L=Ra()|0;mb=L;nb=G;break a}if(!(f[H>>2]|0)){lb=1;U=300;break}else{f[j>>2]=f[j>>2]|4;lb=0;U=300;break}}else{lb=1;U=300}break}}if((U|0)==37){mb=jb;nb=kb;break}else if((U|0)==185){mb=ob;nb=pb;break}else if((U|0)==300){$s(E);$s(D);$s(C);$s(B);$s(A);L=f[s>>2]|0;f[s>>2]=0;if(L|0?(v=0,sa(f[s+4>>2]|0,L|0),L=v,v=0,L&1):0){L=Sa(0)|0;pd(L)}t=p;return lb|0}}else{L=Ra()|0;mb=L;nb=G}while(0);$s(E);$s(D);$s(C);$s(B);$s(A);A=f[s>>2]|0;f[s>>2]=0;if(A|0?(v=0,sa(f[s+4>>2]|0,A|0),A=v,v=0,A&1):0){A=Sa(0)|0;pd(A)}_a(mb|0);return 0}function To(a,c,d){a=a|0;c=c|0;d=d|0;var e=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,u=0;e=t;t=t+16|0;g=c;h=e;i=a+11|0;j=b[i>>0]|0;k=j<<24>>24<0;if(k){l=(f[a+8>>2]&2147483647)+-1|0;m=f[a+4>>2]|0}else{l=10;m=j&255}n=d-g|0;do if(n|0){if(k){o=f[a>>2]|0;p=f[a+4>>2]|0}else{o=a;p=j&255}if(Uo(c,o,o+p|0)|0){f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;Vo(h,c,d);q=b[h+11>>0]|0;r=q<<24>>24<0;v=0;ga(28,a|0,(r?f[h>>2]|0:h)|0,(r?f[h+4>>2]|0:q&255)|0)|0;q=v;v=0;if(q&1){q=Ra()|0;$s(h);_a(q|0)}else{$s(h);break}}if((l-m|0)>>>0<n>>>0)ht(a,l,m+n-l|0,m,m,0,0);if((b[i>>0]|0)<0)s=f[a>>2]|0;else s=a;q=d+(m-g)|0;r=s+m|0;u=c;while(1){if((u|0)==(d|0))break;fk(r,u);r=r+1|0;u=u+1|0}b[h>>0]=0;fk(s+q|0,h);u=m+n|0;if((b[i>>0]|0)<0){f[a+4>>2]=u;break}else{b[i>>0]=u;break}}while(0);t=e;return a|0}
  function bd(a){a=a|0;var b=0;b=t;t=t+a|0;t=t+15&-16;return b|0}function cd(){return t|0}function dd(a){a=a|0;t=a}function ed(a,b){a=a|0;b=b|0;t=a;u=b}function fd(a,b){a=a|0;b=b|0;if(!v){v=a;w=b}}function gd(a){a=a|0;G=a}function hd(){return G|0}function id(a){a=a|0;mb(7416,7424,7440,0,15781,69,15784,0,15784,0,13960,15786,141);nb(7416,1,9880,15781,70,1);a=Ms(8)|0;f[a>>2]=45;f[a+4>>2]=0;ob(7416,13965,3,9884,15890,6,a|0,0);a=Ms(8)|0;f[a>>2]=46;f[a+4>>2]=0;ob(7416,13982,3,9884,15890,6,a|0,0);a=Ms(8)|0;f[a>>2]=142;f[a+4>>2]=0;ob(7416,13997,2,9896,15895,47,a|0,0);a=Ms(8)|0;f[a>>2]=143;f[a+4>>2]=0;ob(7416,14019,2,9896,15895,47,a|0,0);a=Ms(8)|0;f[a>>2]=7;f[a+4>>2]=0;ob(7416,14035,3,9904,15899,24,a|0,0);return}function jd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=t;t=t+16|0;d=c;od(d,a,b);v=0;b=ea(71,16)|0;e=v;v=0;if(!(e&1)){f[b+8>>2]=f[d>>2];f[b+12>>2]=f[d+4>>2];f[b+4>>2]=a;e=f[a>>2]|0;f[b>>2]=e;f[e+4>>2]=b;f[a>>2]=b;b=a+8|0;f[b>>2]=(f[b>>2]|0)+1;t=c;return}c=Ra()|0;b=f[d+4>>2]|0;if(!b)_a(c|0);d=b+4|0;a=f[d>>2]|0;f[d>>2]=a+-1;if(a|0)_a(c|0);Uc[f[(f[b>>2]|0)+8>>2]&255](b);Js(b);_a(c|0)}function kd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=t;t=t+16|0;d=c;e=a+12|0;od(d,a,b);v=0;b=ea(71,16)|0;g=v;v=0;if(!(g&1)){f[b+8>>2]=f[d>>2];f[b+12>>2]=f[d+4>>2];f[b+4>>2]=e;g=f[e>>2]|0;f[b>>2]=g;f[g+4>>2]=b;f[e>>2]=b;b=a+20|0;f[b>>2]=(f[b>>2]|0)+1;t=c;return}c=Ra()|0;b=f[d+4>>2]|0;if(!b)_a(c|0);d=b+4|0;a=f[d>>2]|0;f[d>>2]=a+-1;if(a|0)_a(c|0);Uc[f[(f[b>>2]|0)+8>>2]&255](b);Js(b);_a(c|0)}function ld(a){a=a|0;var b=0,c=0,d=0,e=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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;b=t;t=t+32|0;c=b+8|0;d=b;e=b+16|0;g=a+12|0;h=a+20|0;a:do switch(f[h>>2]|0){case 0:{i=Na(8)|0;v=0;ta(48,i|0,14772);j=v;v=0;if(!(j&1))Va(i|0,9168,132);j=Ra()|0;k=G;Ta(i|0);l=k;m=j;_a(m|0);break}case 1:{j=f[a+16>>2]|0;k=f[j+8>>2]|0;i=f[j+12>>2]|0;j=i;if(!i){n=k;o=j}else{p=i+4|0;f[p>>2]=(f[p>>2]|0)+1;n=k;o=j}break}default:{v=0;j=ea(71,20)|0;k=v;v=0;do if(!(k&1)){v=0;ta(49,j|0,g|0);p=v;v=0;if(p&1){p=Ra()|0;i=G;Ns(j);q=i;r=p;break}f[e>>2]=j;v=0;p=ea(71,16)|0;i=v;v=0;if(i&1){i=Ra()|0;s=G;Uc[f[(f[j>>2]|0)+24>>2]&255](j);u=s;w=i;x=13;break}else{f[p+4>>2]=0;f[p+8>>2]=0;f[p>>2]=9748;f[p+12>>2]=j;i=e+4|0;f[i>>2]=p;f[d>>2]=j;f[d+4>>2]=j;oe(e,d);n=f[e>>2]|0;o=f[i>>2]|0;break a}}else{i=Ra()|0;u=G;w=i;x=13}while(0);if((x|0)==13){q=u;r=w}l=q;m=r;_a(m|0)}}while(0);v=0;r=ea(71,8)|0;q=v;v=0;do if(q&1){w=Ra()|0;y=G;z=w;x=53}else{w=o;u=(o|0)==0;if(u){f[r>>2]=n;d=r+4|0;f[d>>2]=w;A=d}else{d=w+4|0;f[d>>2]=(f[d>>2]|0)+1;f[r>>2]=n;j=r+4|0;f[j>>2]=w;f[d>>2]=(f[d>>2]|0)+1;A=j}f[e>>2]=r;v=0;j=ea(71,16)|0;d=v;v=0;if(d&1){d=Ra()|0;k=G;i=f[A>>2]|0;if(i|0?(p=i+4|0,s=f[p>>2]|0,f[p>>2]=s+-1,(s|0)==0):0){Uc[f[(f[i>>2]|0)+8>>2]&255](i);Js(i)}Ns(r);if(u){l=k;m=d;_a(m|0)}i=w+4|0;s=f[i>>2]|0;f[i>>2]=s+-1;if(!s){Uc[f[(f[o>>2]|0)+8>>2]&255](w);Js(w)}B=k;C=d;break}f[j+4>>2]=0;f[j+8>>2]=0;f[j>>2]=9776;f[j+12>>2]=r;d=e+4|0;f[d>>2]=j;f[c>>2]=r;f[c+4>>2]=r;te(e,c);if(!u?(j=w+4|0,k=f[j>>2]|0,f[j>>2]=k+-1,(k|0)==0):0){Uc[f[(f[o>>2]|0)+8>>2]&255](w);Js(w)}k=a+24|0;v=0;j=ea(71,16)|0;s=v;v=0;if(s&1){s=Ra()|0;i=G;p=f[d>>2]|0;if(!p){y=i;z=s;x=53;break}D=p+4|0;E=f[D>>2]|0;f[D>>2]=E+-1;if(E|0){y=i;z=s;x=53;break}Uc[f[(f[p>>2]|0)+8>>2]&255](p);Js(p);y=i;z=s;x=53;break}f[j>>2]=0;f[j+8>>2]=f[e>>2];s=f[d>>2]|0;f[j+12>>2]=s;if(s|0){i=s+4|0;f[i>>2]=(f[i>>2]|0)+1}f[j+4>>2]=k;i=f[k>>2]|0;f[j>>2]=i;f[i+4>>2]=j;f[k>>2]=j;j=a+32|0;f[j>>2]=(f[j>>2]|0)+1;if(f[h>>2]|0?(j=f[a+16>>2]|0,k=(f[g>>2]|0)+4|0,i=f[j>>2]|0,f[i+4>>2]=f[k>>2],f[f[k>>2]>>2]=i,f[h>>2]=0,(j|0)!=(g|0)):0){i=j;do{j=i;i=f[i+4>>2]|0;k=f[j+12>>2]|0;if(k|0?(s=k+4|0,p=f[s>>2]|0,f[s>>2]=p+-1,(p|0)==0):0){Uc[f[(f[k>>2]|0)+8>>2]&255](k);Js(k)}Ns(j)}while((i|0)!=(g|0))}i=f[d>>2]|0;if(i|0?(j=i+4|0,k=f[j>>2]|0,f[j>>2]=k+-1,(k|0)==0):0){Uc[f[(f[i>>2]|0)+8>>2]&255](i);Js(i)}if(u){t=b;return}i=w+4|0;k=f[i>>2]|0;f[i>>2]=k+-1;if(k|0){t=b;return}Uc[f[(f[o>>2]|0)+8>>2]&255](w);Js(w);t=b;return}while(0);if((x|0)==53)if(!o){l=y;m=z;_a(m|0)}else{B=y;C=z}z=o;y=z+4|0;x=f[y>>2]|0;f[y>>2]=x+-1;if(x|0){l=B;m=C;_a(m|0)}Uc[f[(f[o>>2]|0)+8>>2]&255](z);Js(z);l=B;m=C;_a(m|0)}function md(a){a=a|0;var c=0,d=0,e=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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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,fa=0,ga=0;c=t;t=t+64|0;d=c+8|0;e=c;g=c+40|0;h=c+52|0;i=c+48|0;j=c+28|0;k=c+16|0;l=c+24|0;if(!(f[a+8>>2]|0)){m=Na(8)|0;v=0;ta(48,m|0,15114);n=v;v=0;if(!(n&1))Va(m|0,9168,132);n=Ra()|0;o=G;Ta(m|0);p=o;q=n;_a(q|0)}n=a+24|0;if(!(f[a+32>>2]|0)){o=Na(8)|0;v=0;ta(48,o|0,15167);m=v;v=0;if(!(m&1))Va(o|0,9168,132);m=Ra()|0;r=G;Ta(o|0);p=r;q=m;_a(q|0)}m=Ms(20)|0;v=0;ta(49,m|0,a|0);r=v;v=0;if(r&1){r=Ra()|0;o=G;Ns(m);p=o;q=r;_a(q|0)}f[g>>2]=m;v=0;r=ea(71,16)|0;o=v;v=0;if(o&1){o=Ra()|0;Uc[f[(f[m>>2]|0)+24>>2]&255](m);_a(o|0)}f[r+4>>2]=0;f[r+8>>2]=0;f[r>>2]=9748;f[r+12>>2]=m;o=g+4|0;f[o>>2]=r;f[e>>2]=m;f[e+4>>2]=m;oe(g,e);m=f[g>>2]|0;r=f[o>>2]|0;v=0;o=ea(71,12)|0;s=v;v=0;do if(!(s&1)){u=r;w=(r|0)==0;if(w){f[o>>2]=10016;f[o+4>>2]=m;f[o+8>>2]=u}else{x=u+4|0;f[x>>2]=(f[x>>2]|0)+1;f[o>>2]=10016;f[o+4>>2]=m;f[o+8>>2]=u;f[x>>2]=(f[x>>2]|0)+1}f[e>>2]=o;v=0;x=ea(71,16)|0;y=v;v=0;if(y&1){y=Ra()|0;z=G;Uc[f[(f[o>>2]|0)+8>>2]&255](o);if(w){p=z;q=y;_a(q|0)}A=u+4|0;B=f[A>>2]|0;f[A>>2]=B+-1;if(!B){Uc[f[(f[r>>2]|0)+8>>2]&255](u);Js(u)}C=y;D=z;E=u;break}f[x+4>>2]=0;f[x+8>>2]=0;f[x>>2]=9804;f[x+12>>2]=o;z=e+4|0;f[z>>2]=x;f[d>>2]=o;f[d+4>>2]=o;Be(e,d);if(!w?(x=u+4|0,y=f[x>>2]|0,f[x>>2]=y+-1,(y|0)==0):0){Uc[f[(f[r>>2]|0)+8>>2]&255](u);Js(u)}v=0;y=ea(71,12)|0;x=v;v=0;do if(x&1){B=Ra()|0;F=G;H=B}else{v=0;ta(50,h|0,n|0);B=v;v=0;if(!(B&1)){v=0;ta(51,y|0,h|0);B=v;v=0;if(!(B&1)){f[i>>2]=0;v=0;f[d>>2]=f[i>>2];ua(8,g|0,y|0,d|0);B=v;v=0;if(B&1)I=0;else{B=h+8|0;if(f[B>>2]|0?(A=f[h+4>>2]|0,J=(f[h>>2]|0)+4|0,K=f[A>>2]|0,f[K+4>>2]=f[J>>2],f[f[J>>2]>>2]=K,f[B>>2]=0,(A|0)!=(h|0)):0){B=A;do{A=B;B=f[B+4>>2]|0;K=f[A+12>>2]|0;do if(K|0){J=K+4|0;L=f[J>>2]|0;f[J>>2]=L+-1;if(L|0)break;Uc[f[(f[K>>2]|0)+8>>2]&255](K);Js(K)}while(0);Ns(A)}while((B|0)!=(h|0))};f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;v=0;B=ea(71,32)|0;K=v;v=0;do if(K&1){L=Ra()|0;M=G;N=L}else{f[j>>2]=B;f[j+8>>2]=-2147483616;f[j+4>>2]=16;L=B;J=15221;O=L+16|0;do{b[L>>0]=b[J>>0]|0;L=L+1|0;J=J+1|0}while((L|0)<(O|0));b[B+16>>0]=0;v=0;J=ea(71,28)|0;L=v;v=0;do if(L&1){O=Ra()|0;P=G;Q=O}else{O=f[e>>2]|0;A=f[z>>2]|0;R=(A|0)==0;if(!R){S=A+4|0;f[S>>2]=(f[S>>2]|0)+1}S=f[g>>2]|0;T=g+4|0;U=f[T>>2]|0;V=(U|0)==0;if(!V){W=U+4|0;f[W>>2]=(f[W>>2]|0)+1}v=0;ta(52,J|0,j|0);W=v;v=0;do if(W&1)X=1;else{f[J+12>>2]=O;f[J+16>>2]=A;if(!R){Y=A+4|0;f[Y>>2]=(f[Y>>2]|0)+1}f[J+20>>2]=S;f[J+24>>2]=U;if(!V){Y=U+4|0;f[Y>>2]=(f[Y>>2]|0)+1}f[l>>2]=0;v=0;f[d>>2]=f[l>>2];ua(9,k|0,J|0,d|0);Y=v;v=0;if(Y&1){X=0;break}Y=f[k>>2]|0;Z=k+4|0;_=f[Z>>2]|0;f[k>>2]=0;f[Z>>2]=0;f[a+36>>2]=Y;Y=a+40|0;$=f[Y>>2]|0;f[Y>>2]=_;do if($|0){_=$+4|0;Y=f[_>>2]|0;f[_>>2]=Y+-1;if(Y|0)break;Uc[f[(f[$>>2]|0)+8>>2]&255]($);Js($)}while(0);$=f[Z>>2]|0;do if($|0){Y=$+4|0;_=f[Y>>2]|0;f[Y>>2]=_+-1;if(_|0)break;Uc[f[(f[$>>2]|0)+8>>2]&255]($);Js($)}while(0);do if(!V){$=U+4|0;Z=f[$>>2]|0;f[$>>2]=Z+-1;if(Z|0)break;Uc[f[(f[U>>2]|0)+8>>2]&255](U);Js(U)}while(0);do if(!R){Z=A+4|0;$=f[Z>>2]|0;f[Z>>2]=$+-1;if($|0)break;Uc[f[(f[A>>2]|0)+8>>2]&255](A);Js(A)}while(0);if((b[j+11>>0]|0)<0)Ns(f[j>>2]|0);$=f[T>>2]|0;do if($|0){Z=$+4|0;_=f[Z>>2]|0;f[Z>>2]=_+-1;if(_|0)break;Uc[f[(f[$>>2]|0)+8>>2]&255]($);Js($)}while(0);$=f[z>>2]|0;do if($|0){_=$+4|0;Z=f[_>>2]|0;f[_>>2]=Z+-1;if(Z|0)break;Uc[f[(f[$>>2]|0)+8>>2]&255]($);Js($)}while(0);if(w){t=c;return}$=u+4|0;Z=f[$>>2]|0;f[$>>2]=Z+-1;if(Z|0){t=c;return}Uc[f[(f[r>>2]|0)+8>>2]&255](u);Js(u);t=c;return}while(0);T=Ra()|0;S=G;do if(!V){O=U+4|0;W=f[O>>2]|0;f[O>>2]=W+-1;if(W|0)break;Uc[f[(f[U>>2]|0)+8>>2]&255](U);Js(U)}while(0);do if(!R){U=A+4|0;V=f[U>>2]|0;f[U>>2]=V+-1;if(V|0)break;Uc[f[(f[A>>2]|0)+8>>2]&255](A);Js(A)}while(0);if(!X){P=S;Q=T;break}Ns(J);P=S;Q=T}while(0);if((b[j+11>>0]|0)>=0){M=P;N=Q;break}Ns(f[j>>2]|0);M=P;N=Q}while(0);B=f[g+4>>2]|0;if(!B){F=M;H=N;break}K=B+4|0;J=f[K>>2]|0;f[K>>2]=J+-1;if(J|0){F=M;H=N;break}Uc[f[(f[B>>2]|0)+8>>2]&255](B);Js(B);F=M;H=N;break}}else I=1;B=Ra()|0;J=G;K=h+8|0;if(f[K>>2]|0?(L=f[h+4>>2]|0,A=(f[h>>2]|0)+4|0,R=f[L>>2]|0,f[R+4>>2]=f[A>>2],f[f[A>>2]>>2]=R,f[K>>2]=0,(L|0)!=(h|0)):0){K=L;do{L=K;K=f[K+4>>2]|0;R=f[L+12>>2]|0;do if(R|0){A=R+4|0;V=f[A>>2]|0;f[A>>2]=V+-1;if(V|0)break;Uc[f[(f[R>>2]|0)+8>>2]&255](R);Js(R)}while(0);Ns(L)}while((K|0)!=(h|0))}if(I){aa=J;ba=B}else{F=J;H=B;break}}else{K=Ra()|0;aa=G;ba=K}Ns(y);F=aa;H=ba}while(0);y=f[z>>2]|0;if((y|0)!=0?(w=y+4|0,x=f[w>>2]|0,f[w>>2]=x+-1,(x|0)==0):0){Uc[f[(f[y>>2]|0)+8>>2]&255](y);Js(y);ca=F;da=H;fa=u;ga=103}else{ca=F;da=H;fa=u;ga=103}}else{y=Ra()|0;ca=G;da=y;fa=r;ga=103}while(0);if((ga|0)==103)if(!r){p=ca;q=da;_a(q|0)}else{C=da;D=ca;E=fa}fa=E+4|0;ca=f[fa>>2]|0;f[fa>>2]=ca+-1;if(ca|0){p=D;q=C;_a(q|0)}Uc[f[(f[r>>2]|0)+8>>2]&255](E);Js(E);p=D;q=C;_a(q|0)}function nd(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=f[b+36>>2]|0;if(d|0){ug(a,d,c);return}c=Na(8)|0;v=0;ta(48,c|0,15705);d=v;v=0;if(d&1){d=Ra()|0;Ta(c|0);_a(d|0)}else Va(c|0,9168,132)}function od(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=t;t=t+32|0;e=d;g=d+16|0;h=d+8|0;qd(g,b,c);v=0;c=ea(71,20)|0;b=v;v=0;do if(b&1){i=Ra()|0;j=G;k=i}else{v=0;ta(53,c|0,g|0);i=v;v=0;if(i&1){i=Ra()|0;l=G;Ns(c);j=l;k=i;break}f[h>>2]=c;v=0;i=ea(71,16)|0;l=v;v=0;if(l&1){l=Ra()|0;m=G;Uc[f[(f[c>>2]|0)+24>>2]&255](c);j=m;k=l;break}f[i+4>>2]=0;f[i+8>>2]=0;f[i>>2]=9720;f[i+12>>2]=c;l=h+4|0;f[l>>2]=i;f[e>>2]=c;f[e+4>>2]=c;je(h,e);f[a>>2]=f[h>>2];f[a+4>>2]=f[l>>2];l=f[g+4>>2]|0;if(!l){t=d;return}i=l+4|0;m=f[i>>2]|0;f[i>>2]=m+-1;if(m|0){t=d;return}Uc[f[(f[l>>2]|0)+8>>2]&255](l);Js(l);t=d;return}while(0);d=f[g+4>>2]|0;if(!d)_a(k|0);g=d+4|0;a=f[g>>2]|0;f[g>>2]=a+-1;if(a|0)_a(k|0);Uc[f[(f[d>>2]|0)+8>>2]&255](d);Js(d);_a(k|0)}function pd(a){a=a|0;Oa(a|0)|0;ou()}function qd(a,c,d){a=a|0;c=c|0;d=d|0;var e=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=t;t=t+4112|0;g=e+4096|0;h=e;i=Ms(12)|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[a>>2]=i;v=0;j=ea(71,16)|0;k=v;v=0;if(k&1){k=Ra()|0;Ns(i);_a(k|0)}f[j+4>>2]=0;f[j+8>>2]=0;f[j>>2]=9416;f[j+12>>2]=i;k=a+4|0;f[k>>2]=j;f[g>>2]=i;f[g+4>>2]=i;sd(a,g);i=ot(d,10,0)|0;if((i|0)==-1){t=e;return}j=d+11|0;l=i;i=0;m=1;while(1){mv(h|0,((b[j>>0]|0)<0?f[d>>2]|0:d)+i|0,1-i+l|0)|0;n=f[a>>2]|0;v=0;o=ga(25,c|0,h|0,m|0)|0;p=v;v=0;if(p&1)break;f[g>>2]=o;p=n+4|0;q=f[p>>2]|0;if((q|0)==(f[n+8>>2]|0)){v=0;ta(54,n|0,g|0);n=v;v=0;if(n&1)break}else{f[q>>2]=o;f[p>>2]=(f[p>>2]|0)+4}i=l+1|0;l=ot(d,10,i)|0;if((l|0)==-1){r=14;break}else m=m+1|0}if((r|0)==14){t=e;return}e=Ra()|0;r=f[k>>2]|0;if(!r)_a(e|0);k=r+4|0;m=f[k>>2]|0;f[k>>2]=m+-1;if(m|0)_a(e|0);Uc[f[(f[r>>2]|0)+8>>2]&255](r);Js(r);_a(e|0)}function rd(a,c,d){a=a|0;c=c|0;d=d|0;var e=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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0;a=t;t=t+48|0;e=a+24|0;g=a+12|0;h=a;i=c;a:while(1){switch(b[i>>0]|0){case 9:{break a;break}case 13:case 10:case 0:{j=4;break a;break}default:{}}i=i+(Sd(i)|0)|0}if((j|0)==4){k=Na(16)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;l=Yg(c)|0;do if(l>>>0<=4294967279){if(l>>>0<11){b[g+11>>0]=l;if(!l)m=g;else{n=g;j=10}}else{o=l+16&-16;v=0;p=ea(71,o|0)|0;q=v;v=0;if(q&1){j=14;break}f[g>>2]=p;f[g+8>>2]=o|-2147483648;f[g+4>>2]=l;n=p;j=10}if((j|0)==10){mv(n|0,c|0,l|0)|0;m=n}b[m+l>>0]=0;v=0;p=ga(26,g|0,0,14182)|0;o=v;v=0;if(!(o&1)){f[e>>2]=f[p>>2];f[e+4>>2]=f[p+4>>2];f[e+8>>2]=f[p+8>>2];f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;v=0;ua(10,k|0,e|0,d|0);p=v;v=0;if(p&1)r=1;else{v=0;ua(11,k|0,7160,5);v=0;r=0}p=Ra()|0;o=G;if((b[e+11>>0]|0)<0){Ns(f[e>>2]|0);s=o;u=p;w=r}else{s=o;u=p;w=r}}else{p=Ra()|0;s=G;u=p;w=1}if((b[g+11>>0]|0)<0){Ns(f[g>>2]|0);if(w){x=s;y=u;break}else{z=s;A=u}_a(A|0)}else{if(w){x=s;y=u;break}else{z=s;A=u}_a(A|0)}}else{v=0;sa(144,g|0);v=0;j=14}while(0);if((j|0)==14){u=Ra()|0;x=G;y=u}Ta(k|0);z=x;A=y;_a(A|0)}y=i-c|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;v=0;ua(12,e|0,y|0,0);x=v;v=0;if(x&1){x=Ra()|0;if((b[e+11>>0]|0)>=0)_a(x|0);Ns(f[e>>2]|0);_a(x|0)}x=e+11|0;Ii((b[x>>0]|0)<0?f[e>>2]|0:e,c,y)|0;f[g>>2]=0;y=g+4|0;f[y>>2]=0;c=g+8|0;f[c>>2]=0;k=h+11|0;u=i;b:while(1){switch(b[u>>0]|0){case 13:case 10:case 0:{j=51;break b;break}default:{}}v=0;i=ea(72,u|0)|0;s=v;v=0;if(s&1){j=44;break}s=u+i|0;i=s;c:while(1){switch(b[i>>0]|0){case 32:case 13:case 10:case 0:{break c;break}default:{}}v=0;w=ea(72,i|0)|0;r=v;v=0;if(r&1){j=43;break b}i=i+w|0}w=i-s|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;v=0;ua(12,h|0,w|0,0);r=v;v=0;if(r&1){j=34;break}Ii((b[k>>0]|0)<0?f[h>>2]|0:h,s,w)|0;w=f[y>>2]|0;if((w|0)==(f[c>>2]|0)){v=0;ta(55,g|0,h|0);r=v;v=0;if(r&1){j=48;break}}else{v=0;ta(52,w|0,h|0);w=v;v=0;if(w&1){j=48;break}f[y>>2]=(f[y>>2]|0)+12}if((b[k>>0]|0)<0)Ns(f[h>>2]|0);u=i}d:do if((j|0)==34){u=Ra()|0;c=G;if((b[k>>0]|0)<0)Ns(f[h>>2]|0);B=c;C=u}else if((j|0)==43){u=Ra()|0;D=G;E=u;j=46}else if((j|0)==44){u=Ra()|0;D=G;E=u;j=46}else if((j|0)==48){u=Ra()|0;c=G;if((b[k>>0]|0)<0)Ns(f[h>>2]|0);B=c;C=u}else if((j|0)==51){u=f[g>>2]|0;e:do switch(((f[y>>2]|0)-u|0)/12|0|0){case 0:{c=Na(16)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;v=0;w=ea(71,32)|0;r=v;v=0;do if(!(r&1)){f[h>>2]=w;f[h+8>>2]=-2147483616;f[h+4>>2]=19;l=w;m=14279;n=l+19|0;do{b[l>>0]=b[m>>0]|0;l=l+1|0;m=m+1|0}while((l|0)<(n|0));b[w+19>>0]=0;v=0;ua(10,c|0,h|0,d|0);m=v;v=0;if(m&1)F=1;else{v=0;ua(11,c|0,7160,5);v=0;F=0}m=Ra()|0;l=G;if((b[h+11>>0]|0)<0){Ns(f[h>>2]|0);if(F){H=m;I=l;break}else{B=l;C=m;break d}}else if(F){H=m;I=l;break}else{B=l;C=m;break d}}else{m=Ra()|0;H=m;I=G}while(0);Ta(c|0);B=I;C=H;break d;break}case 1:{w=u;v=0;r=ea(71,28)|0;m=v;v=0;if(m&1)j=45;else{f[r>>2]=9644;m=r+4|0;v=0;ta(52,m|0,e|0);l=v;v=0;if(!(l&1)){v=0;ta(52,r+16|0,w|0);w=v;v=0;if(!(w&1)){J=r;break e}w=Ra()|0;l=G;if((b[r+15>>0]|0)<0){Ns(f[m>>2]|0);K=l;L=w}else{K=l;L=w}}else{w=Ra()|0;K=G;L=w}Ns(r);D=K;E=L;j=46;break d}break}default:{v=0;r=ea(71,28)|0;w=v;v=0;if(w&1)j=45;else{f[r>>2]=9684;w=r+4|0;v=0;ta(52,w|0,e|0);l=v;v=0;if(!(l&1)){v=0;ta(56,r+16|0,g|0);l=v;v=0;if(!(l&1)){J=r;break e}l=Ra()|0;m=G;if((b[r+15>>0]|0)<0){Ns(f[w>>2]|0);M=m;N=l}else{M=m;N=l}}else{l=Ra()|0;M=G;N=l}Ns(r);D=M;E=N;j=46;break d}}}while(0);if((j|0)==45){u=Ra()|0;D=G;E=u;j=46;break}u=f[g>>2]|0;if(u|0){i=f[y>>2]|0;if((i|0)==(u|0))O=u;else{s=i;do{s=s+-12|0;if((b[s+11>>0]|0)<0)Ns(f[s>>2]|0)}while((s|0)!=(u|0));O=f[g>>2]|0}f[y>>2]=u;Ns(O)}if((b[x>>0]|0)>=0){t=a;return J|0}Ns(f[e>>2]|0);t=a;return J|0}while(0);if((j|0)==46){B=D;C=E}E=f[g>>2]|0;if(E|0){D=f[y>>2]|0;if((D|0)==(E|0))P=E;else{j=D;do{j=j+-12|0;if((b[j+11>>0]|0)<0)Ns(f[j>>2]|0)}while((j|0)!=(E|0));P=f[g>>2]|0}f[y>>2]=E;Ns(P)}if((b[x>>0]|0)<0)Ns(f[e>>2]|0);z=B;A=C;_a(A|0);return 0}function sd(a,b){a=a|0;b=b|0;return}function td(a){a=a|0;Is(a);Ns(a);return}function ud(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;b=f[a+12>>2]|0;if(!b)return;a=f[b>>2]|0;c=b+4|0;d=f[c>>2]|0;if((a|0)==(d|0))e=a;else{g=a;do{a=f[g>>2]|0;if(a|0)Uc[f[(f[a>>2]|0)+4>>2]&255](a);g=g+4|0}while((g|0)!=(d|0));e=f[b>>2]|0}if(e|0){f[c>>2]=e;Ns(e)}Ns(b);return}function vd(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==14138?a+12|0:0)|0}function wd(a){a=a|0;Ns(a);return}function xd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c=a+4|0;d=f[a>>2]|0;e=(f[c>>2]|0)-d|0;g=e>>2;h=g+1|0;if(h>>>0>1073741823)Pt(a);i=a+8|0;j=(f[i>>2]|0)-d|0;k=j>>1;l=j>>2>>>0<536870911?(k>>>0<h>>>0?h:k):1073741823;do if(l){if(l>>>0<=1073741823){k=Ms(l<<2)|0;m=k;n=k;break}k=Na(8)|0;v=0;ta(57,k|0,20286);h=v;v=0;if(h&1){h=Ra()|0;Ta(k|0);_a(h|0)}else{f[k>>2]=13812;Va(k|0,9184,130)}}else{m=0;n=0}while(0);k=m+(g<<2)|0;f[k>>2]=f[b>>2];if((e|0)>0)mv(n|0,d|0,e|0)|0;f[a>>2]=m;f[c>>2]=k+4;f[i>>2]=m+(l<<2);if(!d)return;Ns(d);return}function yd(a,c,d){a=a|0;c=c|0;d=d|0;var e=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,u=0,w=0,x=0,y=0,z=0,A=0,B=0;e=t;t=t+160|0;g=e+16|0;h=e;i=h+11|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;v=0;ua(13,g|0,14332,h|0);j=v;v=0;do if(j&1){k=Ra()|0;l=G;m=k}else{f[a>>2]=9484;k=a+4|0;v=0;ta(52,k|0,g|0);n=v;v=0;if(n&1){n=Ra()|0;o=G;if((b[g+11>>0]|0)<0)Ns(f[g>>2]|0);l=o;m=n;break}if((b[g+11>>0]|0)<0)Ns(f[g>>2]|0);f[a>>2]=9464;if((b[i>>0]|0)<0)Ns(f[h>>2]|0);f[a>>2]=9444;n=g+56|0;o=g+4|0;f[g>>2]=7188;f[n>>2]=7208;Qj(g+56|0,o);f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=9508;f[n>>2]=9528;Uj(o);f[o>>2]=9560;p=g+36|0;f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;f[p+12>>2]=0;f[g+52>>2]=16;v=0;q=ga(27,g|0,14299,32)|0;r=v;v=0;do if(((!(r&1)?(v=0,s=fa(23,q|0,d|0)|0,u=v,v=0,!(u&1)):0)?(v=0,u=ga(27,s|0,20442,2)|0,s=v,v=0,!(s&1)):0)?(s=b[c+11>>0]|0,w=s<<24>>24<0,v=0,ga(27,u|0,(w?f[c>>2]|0:c)|0,(w?f[c+4>>2]|0:s&255)|0)|0,s=v,v=0,!(s&1)):0){v=0;ta(58,h|0,o|0);s=v;v=0;if(s&1){s=Ra()|0;x=G;y=s;break}s=k+11|0;if((b[s>>0]|0)<0){b[f[k>>2]>>0]=0;f[a+8>>2]=0}else{b[k>>0]=0;b[s>>0]=0}v=0;ta(59,k|0,0);s=v;v=0;if(s&1){s=Sa(0)|0;pd(s)};f[k>>2]=f[h>>2];f[k+4>>2]=f[h+4>>2];f[k+8>>2]=f[h+8>>2];s=(b[p+11>>0]|0)<0;f[g>>2]=9508;f[n>>2]=9528;f[o>>2]=9560;if(!s){hj(o);Gj(g,9540);dj(n);t=e;return}Ns(f[p>>2]|0);hj(o);Gj(g,9540);dj(n);t=e;return}else z=27;while(0);if((z|0)==27){q=Ra()|0;x=G;y=q}f[g>>2]=9508;f[n>>2]=9528;f[o>>2]=9560;if((b[p+11>>0]|0)<0)Ns(f[p>>2]|0);hj(o);Gj(g,9540);dj(n);f[a>>2]=9484;if((b[k+11>>0]|0)>=0){A=x;B=y;_a(B|0)}Ns(f[k>>2]|0);A=x;B=y;_a(B|0)}while(0);if((b[i>>0]|0)<0)Ns(f[h>>2]|0);A=l;B=m;_a(B|0)}function zd(a){a=a|0;var c=0;f[a>>2]=9484;c=a+4|0;if((b[c+11>>0]|0)>=0)return;Ns(f[c>>2]|0);return}function Ad(a){a=a|0;var c=0,d=0,e=0;f[a>>2]=9508;c=a+56|0;f[c>>2]=9528;d=a+4|0;f[d>>2]=9560;e=a+36|0;if((b[e+11>>0]|0)<0)Ns(f[e>>2]|0);hj(d);Gj(a,9540);dj(c);return}function Bd(a){a=a|0;var c=0;f[a>>2]=9484;c=a+4|0;if((b[c+11>>0]|0)>=0){Ns(a);return}Ns(f[c>>2]|0);Ns(a);return}function Cd(a){a=a|0;var c=0,d=0;c=a+4|0;if((b[c+11>>0]|0)<0){d=f[c>>2]|0;return d|0}else{d=c;return d|0}return 0}function Dd(a){a=a|0;var c=0;f[a>>2]=9484;c=a+4|0;if((b[c+11>>0]|0)>=0){Ns(a);return}Ns(f[c>>2]|0);Ns(a);return}function Ed(a){a=a|0;var c=0;f[a>>2]=9484;c=a+4|0;if((b[c+11>>0]|0)>=0){Ns(a);return}Ns(f[c>>2]|0);Ns(a);return}function Fd(a){a=a|0;var c=0,d=0,e=0;f[a>>2]=9508;c=a+56|0;f[c>>2]=9528;d=a+4|0;f[d>>2]=9560;e=a+36|0;if((b[e+11>>0]|0)<0)Ns(f[e>>2]|0);hj(d);Gj(a,9540);dj(c);Ns(a);return}function Gd(a){a=a|0;var c=0,d=0,e=0;c=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;f[c>>2]=9508;a=c+56|0;f[a>>2]=9528;d=c+4|0;f[d>>2]=9560;e=c+36|0;if((b[e+11>>0]|0)<0)Ns(f[e>>2]|0);hj(d);Gj(c,9540);dj(a);return}function Hd(a){a=a|0;var c=0,d=0,e=0;c=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;f[c>>2]=9508;a=c+56|0;f[a>>2]=9528;d=c+4|0;f[d>>2]=9560;e=c+36|0;if((b[e+11>>0]|0)<0)Ns(f[e>>2]|0);hj(d);Gj(c,9540);dj(a);Ns(c);return}function Id(a){a=a|0;var c=0;f[a>>2]=9560;c=a+32|0;if((b[c+11>>0]|0)<0)Ns(f[c>>2]|0);hj(a);return}function Jd(a){a=a|0;var c=0;f[a>>2]=9560;c=a+32|0;if((b[c+11>>0]|0)<0)Ns(f[c>>2]|0);hj(a);Ns(a);return}function Kd(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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;i=c+44|0;j=f[i>>2]|0;k=c+24|0;l=f[k>>2]|0;if(j>>>0<l>>>0){f[i>>2]=l;m=l}else m=j;j=h&24;a:do if((j|0)!=0?!((g|0)==1&(j|0)==24):0){if(!m){n=0;o=0}else{i=c+32|0;if((b[i+11>>0]|0)<0)p=f[i>>2]|0;else p=i;i=m-p|0;n=((i|0)<0)<<31>>31;o=i}b:do switch(g|0){case 0:{q=0;r=0;break}case 1:{if(!(h&8)){i=l-(f[c+20>>2]|0)|0;q=i;r=((i|0)<0)<<31>>31;break b}else{i=(f[c+12>>2]|0)-(f[c+8>>2]|0)|0;q=i;r=((i|0)<0)<<31>>31;break b}break}case 2:{q=o;r=n;break}default:{s=-1;t=-1;break a}}while(0);i=ev(q|0,r|0,d|0,e|0)|0;u=G;if(!((u|0)<0|((n|0)<(u|0)|(n|0)==(u|0)&o>>>0<i>>>0))){v=h&8;if(!((i|0)==0&(u|0)==0)){if(v|0?(f[c+12>>2]|0)==0:0){s=-1;t=-1;break}if((h&16|0)!=0&(l|0)==0){s=-1;t=-1;break}}if(v|0){f[c+12>>2]=(f[c+8>>2]|0)+i;f[c+16>>2]=m}if(!(h&16)){s=i;t=u}else{f[k>>2]=(f[c+20>>2]|0)+i;s=i;t=u}}else{s=-1;t=-1}}else{s=-1;t=-1}while(0);c=a;f[c>>2]=0;f[c+4>>2]=0;c=a+8|0;f[c>>2]=s;f[c+4>>2]=t;return}function Ld(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=c+8|0;Zc[f[(f[b>>2]|0)+16>>2]&7](a,b,f[e>>2]|0,f[e+4>>2]|0,0,d);return}function Md(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,i=0;b=a+44|0;c=f[b>>2]|0;d=f[a+24>>2]|0;if(c>>>0<d>>>0){f[b>>2]=d;e=d}else e=c;if(!(f[a+48>>2]&8)){g=-1;return g|0}c=a+16|0;d=f[c>>2]|0;if(d>>>0<e>>>0){f[c>>2]=e;i=e}else i=d;d=f[a+12>>2]|0;if(d>>>0>=i>>>0){g=-1;return g|0}g=h[d>>0]|0;return g|0}function Nd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;d=a+44|0;e=f[d>>2]|0;g=f[a+24>>2]|0;if(e>>>0<g>>>0){f[d>>2]=g;h=g}else h=e;e=h;h=a+12|0;g=f[h>>2]|0;if((f[a+8>>2]|0)>>>0>=g>>>0){i=-1;return i|0}if((c|0)==-1){f[h>>2]=g+-1;f[a+16>>2]=e;i=0;return i|0}if(!(f[a+48>>2]&16)){d=c&255;j=g+-1|0;if((b[j>>0]|0)==d<<24>>24){k=d;l=j}else{i=-1;return i|0}}else{k=c&255;l=g+-1|0}f[h>>2]=l;f[a+16>>2]=e;b[l>>0]=k;i=c;return i|0}function Od(a,c){a=a|0;c=c|0;var d=0,e=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,u=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;d=t;t=t+16|0;e=d;if((c|0)==-1){g=0;t=d;return g|0}h=a+12|0;i=a+8|0;j=(f[h>>2]|0)-(f[i>>2]|0)|0;k=a+24|0;l=f[k>>2]|0;m=a+28|0;n=f[m>>2]|0;do if((l|0)==(n|0)){o=a+48|0;if(!(f[o>>2]&16)){g=-1;t=d;return g|0}p=a+20|0;q=f[p>>2]|0;r=l-q|0;s=a+44|0;u=(f[s>>2]|0)-q|0;q=a+32|0;v=0;ta(60,q|0,0);w=v;v=0;if(!(w&1)){w=q+11|0;if((b[w>>0]|0)<0)x=(f[a+40>>2]&2147483647)+-1|0;else x=10;v=0;ua(12,q|0,x|0,0);y=v;v=0;if(!(y&1)){y=b[w>>0]|0;if(y<<24>>24<0){z=f[q>>2]|0;A=f[a+36>>2]|0}else{z=q;A=y&255}y=z+A|0;f[p>>2]=z;f[m>>2]=y;p=z+r|0;f[k>>2]=p;r=z+u|0;f[s>>2]=r;B=s;C=o;D=s;E=p;F=r;G=y;break}}y=Sa(0)|0;Oa(y|0)|0;Pa();g=-1;t=d;return g|0}else{y=a+44|0;B=y;C=a+48|0;D=y;E=l;F=f[y>>2]|0;G=n}while(0);n=E+1|0;f[e>>2]=n;l=f[(n>>>0<F>>>0?D:e)>>2]|0;f[B>>2]=l;if(f[C>>2]&8|0){C=a+32|0;if((b[C+11>>0]|0)<0)H=f[C>>2]|0;else H=C;f[i>>2]=H;f[h>>2]=H+j;f[a+16>>2]=l}if((E|0)==(G|0)){g=Hc[f[(f[a>>2]|0)+52>>2]&31](a,c&255)|0;t=d;return g|0}else{f[k>>2]=n;b[E>>0]=c;g=c&255;t=d;return g|0}return 0}function Pd(a,c,d){a=a|0;c=c|0;d=d|0;var e=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,u=0,w=0,x=0,y=0;e=t;t=t+16|0;g=e+12|0;h=e;i=e+8|0;v=0;ta(61,h|0,a|0);j=v;v=0;a:do if(j&1){k=Sa(0)|0;l=k;m=a;n=a}else{b:do if(b[h>>0]|0){k=(f[a>>2]|0)+-12|0;f[i>>2]=f[a+(f[k>>2]|0)+24>>2];o=a+(f[k>>2]|0)|0;k=f[o+4>>2]|0;p=c+d|0;q=o+76|0;r=f[q>>2]|0;do if((r|0)==-1){Sj(g,o);v=0;s=fa(24,g|0,25340)|0;u=v;v=0;if(!(u&1)?(v=0,u=fa(f[(f[s>>2]|0)+28>>2]|0,s|0,32)|0,s=v,v=0,!(s&1)):0){Ck(g);s=u<<24>>24;f[q>>2]=s;w=s;x=8;break}s=Sa(0)|0;Ck(g);y=s}else{w=r;x=8}while(0);do if((x|0)==8){v=0;f[g>>2]=f[i>>2];r=la(39,g|0,c|0,((k&176|0)==32?p:c)|0,p|0,o|0,w&255|0)|0;q=v;v=0;if(q&1){q=Sa(0)|0;y=q;break}if(r|0)break b;r=a+(f[(f[a>>2]|0)+-12>>2]|0)|0;v=0;ta(62,r|0,f[r+16>>2]|5|0);r=v;v=0;if(!(r&1))break b;r=Sa(0)|0;y=r}while(0);Xj(h);l=y;m=a;n=a;break a}while(0);Xj(h);t=e;return a|0}while(0);Oa(l|0)|0;v=0;sa(145,m+(f[(f[n>>2]|0)+-12>>2]|0)|0);n=v;v=0;if(!(n&1)){Pa();t=e;return a|0}a=Ra()|0;v=0;ra(2);e=v;v=0;if(e&1){e=Sa(0)|0;pd(e)}else _a(a|0);return 0}function Qd(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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;i=t;t=t+16|0;j=i;k=f[a>>2]|0;if(!k){l=0;t=i;return l|0}m=e;e=c;n=m-e|0;o=g+12|0;g=f[o>>2]|0;p=(g|0)>(n|0)?g-n|0:0;n=d;g=n-e|0;if((g|0)>0?(Ic[f[(f[k>>2]|0)+48>>2]&63](k,c,g)|0)!=(g|0):0){f[a>>2]=0;l=0;t=i;return l|0}do if((p|0)>0){f[j>>2]=0;f[j+4>>2]=0;f[j+8>>2]=0;if(p>>>0<11){g=j+11|0;b[g>>0]=p;q=j;r=g;s=j}else{g=p+16&-16;c=Ms(g)|0;f[j>>2]=c;f[j+8>>2]=g|-2147483648;f[j+4>>2]=p;q=c;r=j+11|0;s=j}ov(q|0,h|0,p|0)|0;b[q+p>>0]=0;v=0;c=ga(f[(f[k>>2]|0)+48>>2]|0,k|0,((b[r>>0]|0)<0?f[s>>2]|0:j)|0,p|0)|0;g=v;v=0;if(g&1){g=Ra()|0;if((b[r>>0]|0)>=0)_a(g|0);Ns(f[s>>2]|0);_a(g|0)}if((c|0)==(p|0)){if((b[r>>0]|0)<0)Ns(f[s>>2]|0);break}f[a>>2]=0;if((b[r>>0]|0)<0)Ns(f[s>>2]|0);l=0;t=i;return l|0}while(0);s=m-n|0;if((s|0)>0?(Ic[f[(f[k>>2]|0)+48>>2]&63](k,d,s)|0)!=(s|0):0){f[a>>2]=0;l=0;t=i;return l|0}f[o>>2]=0;l=k;t=i;return l|0}function Rd(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;d=f[c+48>>2]|0;if(d&16|0){e=c+44|0;g=f[e>>2]|0;h=f[c+24>>2]|0;if(g>>>0<h>>>0){f[e>>2]=h;i=h}else i=g;g=f[c+20>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;h=i-g|0;if(h>>>0>4294967279)Vs(a);if(h>>>0<11){b[a+11>>0]=h;j=a}else{e=h+16&-16;k=Ms(e)|0;f[a>>2]=k;f[a+8>>2]=e|-2147483648;f[a+4>>2]=h;j=k}if((g|0)==(i|0))l=j;else{k=g;g=j;while(1){b[g>>0]=b[k>>0]|0;k=k+1|0;if((k|0)==(i|0))break;else g=g+1|0}l=j+h|0}b[l>>0]=0;return}if(!(d&8)){f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;return}d=f[c+8>>2]|0;l=f[c+16>>2]|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;c=l-d|0;if(c>>>0>4294967279)Vs(a);if(c>>>0<11){b[a+11>>0]=c;m=a}else{h=c+16&-16;j=Ms(h)|0;f[a>>2]=j;f[a+8>>2]=h|-2147483648;f[a+4>>2]=c;m=j}if((d|0)==(l|0))n=m;else{j=d;d=m;while(1){b[d>>0]=b[j>>0]|0;j=j+1|0;if((j|0)==(l|0))break;else d=d+1|0}n=m+c|0}b[n>>0]=0;return}function Sd(a){a=a|0;var c=0,d=0,e=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,u=0,w=0;c=t;t=t+32|0;d=c+12|0;e=c;g=b[a>>0]|0;if((g&240|0)==224){h=3;t=c;return h|0}if(!(g&128)){h=1;t=c;return h|0}if((g&224|0)==192){h=2;t=c;return h|0}if((g&248|0)==240){h=4;t=c;return h|0}i=(g&252|0)==248;if(i|(g&254|0)==252){h=i?5:6;t=c;return h|0}h=Na(16)|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;c=Yg(a)|0;do if(c>>>0<=4294967279){if(c>>>0<11){b[e+11>>0]=c;if(!c)j=e;else{k=e;l=12}}else{i=c+16&-16;v=0;g=ea(71,i|0)|0;m=v;v=0;if(m&1){l=21;break}f[e>>2]=g;f[e+8>>2]=i|-2147483648;f[e+4>>2]=c;k=g;l=12}if((l|0)==12){mv(k|0,a|0,c|0)|0;j=k}b[j+c>>0]=0;v=0;ua(13,d|0,15977,e|0);g=v;v=0;do if(!(g&1)){f[h>>2]=9484;v=0;ta(52,h+4|0,d|0);i=v;v=0;if(i&1){i=Ra()|0;m=G;if((b[d+11>>0]|0)<0)Ns(f[d>>2]|0);n=1;o=m;p=i;break}else{if((b[d+11>>0]|0)<0)Ns(f[d>>2]|0);f[h>>2]=9624;v=0;ua(11,h|0,7248,5);v=0;q=0;l=22;break}}else{q=1;l=22}while(0);if((l|0)==22){g=Ra()|0;n=q;o=G;p=g}if((b[e+11>>0]|0)<0){Ns(f[e>>2]|0);if(n){r=o;s=p;break}else{u=o;w=p}_a(w|0)}else{if(n){r=o;s=p;break}else{u=o;w=p}_a(w|0)}}else{v=0;sa(144,e|0);v=0;l=21}while(0);if((l|0)==21){l=Ra()|0;r=G;s=l}Ta(h|0);u=r;w=s;_a(w|0);return 0}function Td(a){a=a|0;var c=0;f[a>>2]=9484;c=a+4|0;if((b[c+11>>0]|0)>=0){Ns(a);return}Ns(f[c>>2]|0);Ns(a);return}function Ud(a,c){a=a|0;c=c|0;var d=0,e=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=f[a>>2]|0;g=((f[d>>2]|0)-e|0)/12|0;h=g+1|0;if(h>>>0>357913941)Pt(a);i=a+8|0;j=((f[i>>2]|0)-e|0)/12|0;e=j<<1;k=j>>>0<178956970?(e>>>0<h>>>0?h:e):357913941;do if(k){if(k>>>0<=357913941){e=Ms(k*12|0)|0;l=e;m=e;break}e=Na(8)|0;v=0;ta(57,e|0,20286);h=v;v=0;if(h&1){h=Ra()|0;Ta(e|0);_a(h|0)}else{f[e>>2]=13812;Va(e|0,9184,130)}}else{l=0;m=0}while(0);e=l+(g*12|0)|0;g=l+(k*12|0)|0;v=0;ta(52,e|0,c|0);c=v;v=0;if(c&1){c=Ra()|0;if(!l)_a(c|0);Ns(m);_a(c|0)}c=e+12|0;m=f[a>>2]|0;l=f[d>>2]|0;if((l|0)==(m|0)){n=e;o=m;p=m}else{k=l;l=e;do{l=l+-12|0;k=k+-12|0;f[l>>2]=f[k>>2];f[l+4>>2]=f[k+4>>2];f[l+8>>2]=f[k+8>>2];f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0}while((k|0)!=(m|0));n=l;o=f[a>>2]|0;p=f[d>>2]|0}f[a>>2]=n;f[d>>2]=c;f[i>>2]=g;g=o;if((p|0)!=(g|0)){i=p;do{i=i+-12|0;if((b[i+11>>0]|0)<0)Ns(f[i>>2]|0)}while((i|0)!=(g|0))}if(!o)return;Ns(o);return}function Vd(a){a=a|0;var c=0;f[a>>2]=9644;c=a+16|0;if((b[c+11>>0]|0)<0)Ns(f[c>>2]|0);c=a+4|0;if((b[c+11>>0]|0)>=0)return;Ns(f[c>>2]|0);return}function Wd(a){a=a|0;var c=0;f[a>>2]=9644;c=a+16|0;if((b[c+11>>0]|0)<0)Ns(f[c>>2]|0);c=a+4|0;if((b[c+11>>0]|0)>=0){Ns(a);return}Ns(f[c>>2]|0);Ns(a);return}function Xd(a){a=a|0;var c=0,d=0;c=a+4|0;if((b[c+11>>0]|0)<0){d=f[c>>2]|0;return d|0}else{d=c;return d|0}return 0}function Yd(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=Gc[f[(f[b>>2]|0)+28>>2]&127](b)|0;f[a>>2]=0;b=a+4|0;f[b>>2]=0;d=a+8|0;f[d>>2]=0;e=Ms(4)|0;f[a>>2]=e;f[d>>2]=e+4;f[e>>2]=c;f[b>>2]=e+4;return}function Zd(a){a=a|0;return Gc[f[(f[a>>2]|0)+28>>2]&127](a)|0}function _d(a){a=a|0;return 1}function $d(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=t;t=t+32|0;e=d+12|0;g=d;h=Gc[f[(f[c>>2]|0)+8>>2]&127](c)|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;i=Yg(h)|0;if(i>>>0>4294967279)Vs(g);if(i>>>0<11){b[g+11>>0]=i;if(!i)j=g;else{k=g;l=6}}else{m=i+16&-16;n=Ms(m)|0;f[g>>2]=n;f[g+8>>2]=m|-2147483648;f[g+4>>2]=i;k=n;l=6}if((l|0)==6){mv(k|0,h|0,i|0)|0;j=k}b[j+i>>0]=0;v=0;i=fa(25,g|0,14595)|0;j=v;v=0;if(!(j&1)){f[e>>2]=f[i>>2];f[e+4>>2]=f[i+4>>2];f[e+8>>2]=f[i+8>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;v=0;i=ea(f[(f[c>>2]|0)+28>>2]|0,c|0)|0;c=v;v=0;if(!(c&1)?(v=0,c=fa(25,e|0,i|0)|0,i=v,v=0,!(i&1)):0){f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;if((b[e+11>>0]|0)<0)Ns(f[e>>2]|0);if((b[g+11>>0]|0)>=0){t=d;return}Ns(f[g>>2]|0);t=d;return}d=Ra()|0;c=G;if((b[e+11>>0]|0)<0){Ns(f[e>>2]|0);o=c;p=d}else{o=c;p=d}}else{d=Ra()|0;o=G;p=d}if((b[g+11>>0]|0)>=0)_a(p|0);Ns(f[g>>2]|0);_a(p|0)}function ae(a){a=a|0;var c=0,d=0;c=a+16|0;if((b[c+11>>0]|0)<0){d=f[c>>2]|0;return d|0}else{d=c;return d|0}return 0}function be(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;f[a>>2]=0;d=a+4|0;f[d>>2]=0;e=a+8|0;f[e>>2]=0;g=c+4|0;h=(f[g>>2]|0)-(f[c>>2]|0)|0;i=(h|0)/12|0;if(!h)return;do if(i>>>0<=357913941){v=0;j=ea(71,h|0)|0;k=v;v=0;if(!(k&1)){f[d>>2]=j;f[a>>2]=j;f[e>>2]=j+(i*12|0);k=f[c>>2]|0;l=f[g>>2]|0;if((k|0)==(l|0))return;m=k;k=j;while(1){v=0;ta(52,k|0,m|0);j=v;v=0;if(j&1){n=9;break}m=m+12|0;k=(f[d>>2]|0)+12|0;f[d>>2]=k;if((m|0)==(l|0)){n=20;break}}if((n|0)==9){l=Ra()|0;o=l;p=G;break}else if((n|0)==20)return}else n=10}else{v=0;sa(146,a|0);v=0;n=10}while(0);if((n|0)==10){n=Ra()|0;o=n;p=G}p=f[a>>2]|0;if(!p)_a(o|0);n=f[d>>2]|0;if((n|0)==(p|0))q=p;else{g=n;do{g=g+-12|0;if((b[g+11>>0]|0)<0)Ns(f[g>>2]|0)}while((g|0)!=(p|0));q=f[a>>2]|0}f[d>>2]=p;Ns(q);_a(o|0)}function ce(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;f[a>>2]=9684;c=a+16|0;d=f[c>>2]|0;if(d|0){e=a+20|0;g=f[e>>2]|0;if((g|0)==(d|0))h=d;else{i=g;do{i=i+-12|0;if((b[i+11>>0]|0)<0)Ns(f[i>>2]|0)}while((i|0)!=(d|0));h=f[c>>2]|0}f[e>>2]=d;Ns(h)}h=a+4|0;if((b[h+11>>0]|0)>=0)return;Ns(f[h>>2]|0);return}function de(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;f[a>>2]=9684;c=a+16|0;d=f[c>>2]|0;if(d|0){e=a+20|0;g=f[e>>2]|0;if((g|0)==(d|0))h=d;else{i=g;do{i=i+-12|0;if((b[i+11>>0]|0)<0)Ns(f[i>>2]|0)}while((i|0)!=(d|0));h=f[c>>2]|0}f[e>>2]=d;Ns(h)}h=a+4|0;if((b[h+11>>0]|0)>=0){Ns(a);return}Ns(f[h>>2]|0);Ns(a);return}function ee(a){a=a|0;var c=0,d=0;c=a+4|0;if((b[c+11>>0]|0)<0){d=f[c>>2]|0;return d|0}else{d=c;return d|0}return 0}function fe(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=t;t=t+16|0;e=d;f[a>>2]=0;g=a+4|0;f[g>>2]=0;h=a+8|0;f[h>>2]=0;i=f[c+16>>2]|0;j=f[c+20>>2]|0;if((i|0)==(j|0)){t=d;return}c=i;while(1){if((b[c+11>>0]|0)<0)k=f[c>>2]|0;else k=c;f[e>>2]=k;i=f[g>>2]|0;if(i>>>0>=(f[h>>2]|0)>>>0){v=0;ta(63,a|0,e|0);l=v;v=0;if(l&1)break}else{f[i>>2]=k;f[g>>2]=(f[g>>2]|0)+4}c=c+12|0;if((c|0)==(j|0)){m=3;break}}if((m|0)==3){t=d;return}d=Ra()|0;m=f[a>>2]|0;if(!m)_a(d|0);f[g>>2]=m;Ns(m);_a(d|0)}function ge(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;b=t;t=t+16|0;c=b;if(!(Gc[f[(f[a>>2]|0)+20>>2]&127](a)|0)){d=Gc[f[(f[a>>2]|0)+8>>2]&127](a)|0;t=b;return d|0}Vc[f[(f[a>>2]|0)+12>>2]&127](c,a);a=c+4|0;e=f[c>>2]|0;if((f[a>>2]|0)==(e|0)){v=0;sa(147,c|0);v=0;g=Ra()|0;h=f[c>>2]|0;if(!h)_a(g|0);f[a>>2]=h;Ns(h);_a(g|0)}else{g=f[e>>2]|0;if(e|0){f[a>>2]=e;Ns(e)}d=g;t=b;return d|0}return 0}function he(a){a=a|0;return ((f[a+20>>2]|0)-(f[a+16>>2]|0)|0)/12|0|0}function ie(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c=a+4|0;d=f[a>>2]|0;e=(f[c>>2]|0)-d|0;g=e>>2;h=g+1|0;if(h>>>0>1073741823)Pt(a);i=a+8|0;j=(f[i>>2]|0)-d|0;k=j>>1;l=j>>2>>>0<536870911?(k>>>0<h>>>0?h:k):1073741823;do if(l){if(l>>>0<=1073741823){k=Ms(l<<2)|0;m=k;n=k;break}k=Na(8)|0;v=0;ta(57,k|0,20286);h=v;v=0;if(h&1){h=Ra()|0;Ta(k|0);_a(h|0)}else{f[k>>2]=13812;Va(k|0,9184,130)}}else{m=0;n=0}while(0);k=m+(g<<2)|0;f[k>>2]=f[b>>2];if((e|0)>0)mv(n|0,d|0,e|0)|0;f[a>>2]=m;f[c>>2]=k+4;f[i>>2]=m+(l<<2);if(!d)return;Ns(d);return}function je(a,b){a=a|0;b=b|0;return}function ke(a){a=a|0;Is(a);Ns(a);return}function le(a){a=a|0;var b=0;b=f[a+12>>2]|0;if(!b)return;Uc[f[(f[b>>2]|0)+24>>2]&255](b);return}function me(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==14727?a+12|0:0)|0}function ne(a){a=a|0;Ns(a);return}function oe(a,b){a=a|0;b=b|0;return}function pe(a){a=a|0;Is(a);Ns(a);return}function qe(a){a=a|0;var b=0;b=f[a+12>>2]|0;if(!b)return;Uc[f[(f[b>>2]|0)+24>>2]&255](b);return}function re(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==14921?a+12|0:0)|0}function se(a){a=a|0;Ns(a);return}function te(a,b){a=a|0;b=b|0;return}function ue(a){a=a|0;Is(a);Ns(a);return}function ve(a){a=a|0;var b=0,c=0,d=0;b=f[a+12>>2]|0;if(!b)return;a=f[b+4>>2]|0;if(a|0?(c=a+4|0,d=f[c>>2]|0,f[c>>2]=d+-1,(d|0)==0):0){Uc[f[(f[a>>2]|0)+8>>2]&255](a);Js(a)}Ns(b);return}function we(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==15066?a+12|0:0)|0}function xe(a){a=a|0;Ns(a);return}function ye(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;f[a>>2]=a;c=a+4|0;f[c>>2]=a;d=a+8|0;f[d>>2]=0;e=f[b+4>>2]|0;g=e;if((b|0)==(g|0))return;h=e;e=0;i=a;j=g;while(1){g=h;v=0;k=ea(71,16)|0;l=v;v=0;if(l&1)break;f[k>>2]=0;f[k+8>>2]=f[g+8>>2];l=f[g+12>>2]|0;f[k+12>>2]=l;if(!l){m=i;n=e}else{g=l+4|0;f[g>>2]=(f[g>>2]|0)+1;m=f[a>>2]|0;n=f[d>>2]|0}f[k+4>>2]=a;f[k>>2]=m;f[m+4>>2]=k;f[a>>2]=k;g=n+1|0;f[d>>2]=g;h=f[j+4>>2]|0;j=h;if((b|0)==(j|0)){o=3;break}else{e=g;i=k}}if((o|0)==3)return;o=Ra()|0;if(!e)_a(o|0);e=f[c>>2]|0;c=i+4|0;i=f[e>>2]|0;f[i+4>>2]=f[c>>2];f[f[c>>2]>>2]=i;f[d>>2]=0;if((e|0)==(a|0))_a(o|0);d=e;do{e=d;d=f[d+4>>2]|0;i=f[e+12>>2]|0;if(i|0?(c=i+4|0,j=f[c>>2]|0,f[c>>2]=j+-1,(j|0)==0):0){Uc[f[(f[i>>2]|0)+8>>2]&255](i);Js(i)}Ns(e)}while((d|0)!=(a|0));_a(o|0)}function ze(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;c=t;t=t+16|0;d=c;f[a>>2]=b;v=0;e=ea(71,16)|0;g=v;v=0;if(!(g&1)){f[e+4>>2]=0;f[e+8>>2]=0;f[e>>2]=9832;f[e+12>>2]=b;f[a+4>>2]=e;f[d>>2]=b;f[d+4>>2]=b;Ge(a,d);t=c;return}c=Ra()|0;if(!b)_a(c|0);d=b+8|0;if(f[d>>2]|0?(a=f[b+4>>2]|0,e=(f[b>>2]|0)+4|0,g=f[a>>2]|0,f[g+4>>2]=f[e>>2],f[f[e>>2]>>2]=g,f[d>>2]=0,(a|0)!=(b|0)):0){d=a;do{a=d;d=f[d+4>>2]|0;g=f[a+12>>2]|0;if(g|0?(e=g+4|0,h=f[e>>2]|0,f[e>>2]=h+-1,(h|0)==0):0){Uc[f[(f[g>>2]|0)+8>>2]&255](g);Js(g)}Ns(a)}while((d|0)!=(b|0))}Ns(b);_a(c|0)}function Ae(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;d=t;t=t+16|0;e=d;f[a>>2]=c;v=0;g=ea(71,16)|0;h=v;v=0;if(!(h&1)){f[g+4>>2]=0;f[g+8>>2]=0;f[g>>2]=9860;f[g+12>>2]=c;f[a+4>>2]=g;f[e>>2]=c;f[e+4>>2]=c;Le(a,e);t=d;return}d=Ra()|0;if(!c)_a(d|0);e=f[c+24>>2]|0;if(e|0?(a=e+4|0,g=f[a>>2]|0,f[a>>2]=g+-1,(g|0)==0):0){Uc[f[(f[e>>2]|0)+8>>2]&255](e);Js(e)}e=f[c+16>>2]|0;if(e|0?(g=e+4|0,a=f[g>>2]|0,f[g>>2]=a+-1,(a|0)==0):0){Uc[f[(f[e>>2]|0)+8>>2]&255](e);Js(e)}if((b[c+11>>0]|0)<0)Ns(f[c>>2]|0);Ns(c);_a(d|0)}function Be(a,b){a=a|0;b=b|0;return}function Ce(a){a=a|0;Is(a);Ns(a);return}function De(a){a=a|0;var b=0;b=f[a+12>>2]|0;if(!b)return;Uc[f[(f[b>>2]|0)+8>>2]&255](b);return}function Ee(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==15347?a+12|0:0)|0}function Fe(a){a=a|0;Ns(a);return}function Ge(a,b){a=a|0;b=b|0;return}function He(a){a=a|0;Is(a);Ns(a);return}function Ie(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;b=f[a+12>>2]|0;if(!b)return;a=b+8|0;if(f[a>>2]|0?(c=f[b+4>>2]|0,d=(f[b>>2]|0)+4|0,e=f[c>>2]|0,f[e+4>>2]=f[d>>2],f[f[d>>2]>>2]=e,f[a>>2]=0,(c|0)!=(b|0)):0){a=c;do{c=a;a=f[a+4>>2]|0;e=f[c+12>>2]|0;if(e|0?(d=e+4|0,g=f[d>>2]|0,f[d>>2]=g+-1,(g|0)==0):0){Uc[f[(f[e>>2]|0)+8>>2]&255](e);Js(e)}Ns(c)}while((a|0)!=(b|0))}Ns(b);return}function Je(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==15509?a+12|0:0)|0}function Ke(a){a=a|0;Ns(a);return}function Le(a,b){a=a|0;b=b|0;return}function Me(a){a=a|0;Is(a);Ns(a);return}function Ne(a){a=a|0;var c=0,d=0,e=0;c=f[a+12>>2]|0;if(!c)return;a=f[c+24>>2]|0;if(a|0?(d=a+4|0,e=f[d>>2]|0,f[d>>2]=e+-1,(e|0)==0):0){Uc[f[(f[a>>2]|0)+8>>2]&255](a);Js(a)}a=f[c+16>>2]|0;if(a|0?(e=a+4|0,d=f[e>>2]|0,f[e>>2]=d+-1,(d|0)==0):0){Uc[f[(f[a>>2]|0)+8>>2]&255](a);Js(a)}if((b[c+11>>0]|0)<0)Ns(f[c>>2]|0);Ns(c);return}function Oe(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==15659?a+12|0:0)|0}function Pe(a){a=a|0;Ns(a);return}function Qe(a){a=a|0;return 7416}function Re(a){a=a|0;if(!a)return;Se(a);Ns(a);return}function Se(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;b=a+8|0;if(f[b>>2]|0?(c=f[a+4>>2]|0,d=(f[a>>2]|0)+4|0,e=f[c>>2]|0,f[e+4>>2]=f[d>>2],f[f[d>>2]>>2]=e,f[b>>2]=0,(c|0)!=(a|0)):0){e=c;do{c=e;e=f[e+4>>2]|0;d=f[c+12>>2]|0;if(d|0?(g=d+4|0,h=f[g>>2]|0,f[g>>2]=h+-1,(h|0)==0):0){Uc[f[(f[d>>2]|0)+8>>2]&255](d);Js(d)}Ns(c)}while((e|0)!=(a|0))}e=a+12|0;c=a+20|0;if(f[c>>2]|0?(d=f[a+16>>2]|0,h=(f[e>>2]|0)+4|0,g=f[d>>2]|0,f[g+4>>2]=f[h>>2],f[f[h>>2]>>2]=g,f[c>>2]=0,(d|0)!=(e|0)):0){g=d;do{d=g;g=f[g+4>>2]|0;h=f[d+12>>2]|0;if(h|0?(i=h+4|0,j=f[i>>2]|0,f[i>>2]=j+-1,(j|0)==0):0){Uc[f[(f[h>>2]|0)+8>>2]&255](h);Js(h)}Ns(d)}while((g|0)!=(e|0))}g=a+24|0;d=a+32|0;if(f[d>>2]|0?(h=f[a+28>>2]|0,j=(f[g>>2]|0)+4|0,i=f[h>>2]|0,f[i+4>>2]=f[j>>2],f[f[j>>2]>>2]=i,f[d>>2]=0,(h|0)!=(g|0)):0){i=h;do{h=i;i=f[i+4>>2]|0;j=f[h+12>>2]|0;if(j|0?(k=j+4|0,l=f[k>>2]|0,f[k>>2]=l+-1,(l|0)==0):0){Uc[f[(f[j>>2]|0)+8>>2]&255](j);Js(j)}Ns(h)}while((i|0)!=(g|0))}f[a+36>>2]=0;i=a+40|0;h=f[i>>2]|0;f[i>>2]=0;if(h|0){j=h+4|0;l=f[j>>2]|0;f[j>>2]=l+-1;if(!l){Uc[f[(f[h>>2]|0)+8>>2]&255](h);Js(h)}h=f[i>>2]|0;if(h|0?(i=h+4|0,l=f[i>>2]|0,f[i>>2]=l+-1,(l|0)==0):0){Uc[f[(f[h>>2]|0)+8>>2]&255](h);Js(h)}}if(f[d>>2]|0?(h=f[a+28>>2]|0,l=(f[g>>2]|0)+4|0,i=f[h>>2]|0,f[i+4>>2]=f[l>>2],f[f[l>>2]>>2]=i,f[d>>2]=0,(h|0)!=(g|0)):0){d=h;do{h=d;d=f[d+4>>2]|0;i=f[h+12>>2]|0;if(i|0?(l=i+4|0,j=f[l>>2]|0,f[l>>2]=j+-1,(j|0)==0):0){Uc[f[(f[i>>2]|0)+8>>2]&255](i);Js(i)}Ns(h)}while((d|0)!=(g|0))}if(f[c>>2]|0?(g=f[a+16>>2]|0,d=(f[e>>2]|0)+4|0,h=f[g>>2]|0,f[h+4>>2]=f[d>>2],f[f[d>>2]>>2]=h,f[c>>2]=0,(g|0)!=(e|0)):0){c=g;do{g=c;c=f[c+4>>2]|0;h=f[g+12>>2]|0;if(h|0?(d=h+4|0,i=f[d>>2]|0,f[d>>2]=i+-1,(i|0)==0):0){Uc[f[(f[h>>2]|0)+8>>2]&255](h);Js(h)}Ns(g)}while((c|0)!=(e|0))}if(!(f[b>>2]|0))return;e=f[a+4>>2]|0;c=(f[a>>2]|0)+4|0;g=f[e>>2]|0;f[g+4>>2]=f[c>>2];f[f[c>>2]>>2]=g;f[b>>2]=0;if((e|0)==(a|0))return;b=e;do{e=b;b=f[b+4>>2]|0;g=f[e+12>>2]|0;if(g|0?(c=g+4|0,h=f[c>>2]|0,f[c>>2]=h+-1,(h|0)==0):0){Uc[f[(f[g>>2]|0)+8>>2]&255](g);Js(g)}Ns(e)}while((b|0)!=(a|0));return}function Te(){var a=0,b=0;a=Ms(44)|0;f[a>>2]=a;f[a+4>>2]=a;f[a+8>>2]=0;b=a+12|0;f[b>>2]=b;f[a+16>>2]=b;f[a+20>>2]=0;b=a+24|0;f[b>>2]=b;f[a+28>>2]=b;f[a+32>>2]=0;f[a+36>>2]=0;f[a+40>>2]=0;return a|0}function Ue(a){a=a|0;return Fc[a&7]()|0}function Ve(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=t;t=t+16|0;g=e;h=f[a>>2]|0;i=f[a+4>>2]|0;a=c+(i>>1)|0;if(!(i&1))j=h;else j=f[(f[a>>2]|0)+h>>2]|0;h=d+4|0;i=f[d>>2]|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;if(i>>>0>4294967279)Vs(g);if(i>>>0<11){b[g+11>>0]=i;if(!i)k=g;else{l=g;m=9}}else{d=i+16&-16;c=Ms(d)|0;f[g>>2]=c;f[g+8>>2]=d|-2147483648;f[g+4>>2]=i;l=c;m=9}if((m|0)==9){mv(l|0,h|0,i|0)|0;k=l}b[k+i>>0]=0;v=0;ta(j|0,a|0,g|0);a=v;v=0;if(a&1){a=Ra()|0;if((b[g+11>>0]|0)>=0)_a(a|0);Ns(f[g>>2]|0);_a(a|0)}else{if((b[g+11>>0]|0)>=0){t=e;return}Ns(f[g>>2]|0);t=e;return}}function We(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=f[a>>2]|0;d=f[a+4>>2]|0;a=b+(d>>1)|0;if(!(d&1)){e=c;Uc[e&255](a);return}else{e=f[(f[a>>2]|0)+c>>2]|0;Uc[e&255](a);return}}function Xe(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=t;t=t+32|0;g=e+12|0;h=e;i=f[a>>2]|0;j=f[a+4>>2]|0;a=c+(j>>1)|0;if(!(j&1))k=i;else k=f[(f[a>>2]|0)+i>>2]|0;i=d+4|0;j=f[d>>2]|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;if(j>>>0>4294967279)Vs(h);if(j>>>0<11){b[h+11>>0]=j;if(!j)l=h;else{m=h;n=9}}else{d=j+16&-16;c=Ms(d)|0;f[h>>2]=c;f[h+8>>2]=d|-2147483648;f[h+4>>2]=j;m=c;n=9}if((n|0)==9){mv(m|0,i|0,j|0)|0;l=m}b[l+j>>0]=0;v=0;ua(k|0,g|0,a|0,h|0);a=v;v=0;if(a&1){a=Ra()|0;if((b[h+11>>0]|0)>=0)_a(a|0);Ns(f[h>>2]|0);_a(a|0)}a=b[g+11>>0]|0;if(a<<24>>24<0){k=f[g+4>>2]|0;j=Ag(k+4|0)|0;f[j>>2]=k;l=f[g>>2]|0;mv(j+4|0,l|0,k|0)|0;Ns(l);o=j}else{j=a&255;a=Ag(j+4|0)|0;f[a>>2]=j;mv(a+4|0,g|0,j|0)|0;o=a}if((b[h+11>>0]|0)>=0){t=e;return o|0}Ns(f[h>>2]|0);t=e;return o|0}function Ye(){f[6122]=0;f[6123]=0;f[6124]=0;b[24499]=1;b[24488]=47;b[24489]=0;id(0);return}function Ze(a,c){a=a|0;c=c|0;var d=0;d=jh((b[c+11>>0]|0)<0?f[c>>2]|0:c,15904)|0;if(d|0){Vc[f[f[a>>2]>>2]&127](a,d);rh(d)|0;return}d=Na(16)|0;v=0;ta(64,d|0,c|0);c=v;v=0;if(c&1){c=Ra()|0;Ta(d|0);_a(c|0)}else Va(d|0,7488,5)}function _e(a,c){a=a|0;c=c|0;var d=0,e=0;d=t;t=t+16|0;e=d;$e(e,c,15934);f[a>>2]=9484;v=0;ta(52,a+4|0,e|0);c=v;v=0;if(c&1){c=Ra()|0;if((b[e+11>>0]|0)>=0)_a(c|0);Ns(f[e>>2]|0);_a(c|0)}else{if((b[e+11>>0]|0)>=0){f[a>>2]=9924;t=d;return}Ns(f[e>>2]|0);f[a>>2]=9924;t=d;return}}function $e(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=b[c+11>>0]|0;if(e<<24>>24<0){g=f[c+4>>2]|0;h=Yg(d)|0;i=g;j=h;k=f[c>>2]|0}else{i=e&255;j=Yg(d)|0;k=c}c=i+j|0;do if(c>>>0<=4294967279){if(c>>>0<11){b[a+11>>0]=i;l=a}else{e=c+16&-16;v=0;h=ea(71,e|0)|0;g=v;v=0;if(g&1)break;f[a>>2]=h;f[a+8>>2]=e|-2147483648;f[a+4>>2]=i;l=h}if(i|0)mv(l|0,k|0,i|0)|0;b[l+i>>0]=0;v=0;ga(28,a|0,d|0,j|0)|0;h=v;v=0;if(!(h&1))return}else{v=0;sa(144,a|0);v=0}while(0);j=Ra()|0;if((b[a+11>>0]|0)>=0)_a(j|0);Ns(f[a>>2]|0);_a(j|0)}function af(a){a=a|0;var c=0;f[a>>2]=9484;c=a+4|0;if((b[c+11>>0]|0)>=0){Ns(a);return}Ns(f[c>>2]|0);Ns(a);return}function bf(){f[6173]=0;f[6174]=0;f[6175]=0;b[24703]=1;b[24692]=47;b[24693]=0;return}function cf(){f[6170]=0;f[6171]=0;f[6172]=0;b[24691]=1;b[24680]=47;b[24681]=0;return}function df(){f[6167]=0;f[6168]=0;f[6169]=0;b[24679]=1;b[24668]=47;b[24669]=0;return}function ef(){f[6164]=0;f[6165]=0;f[6166]=0;b[24667]=1;b[24656]=47;b[24657]=0;return}function ff(){f[6161]=0;f[6162]=0;f[6163]=0;b[24655]=1;b[24644]=47;b[24645]=0;return}function gf(){f[6158]=0;f[6159]=0;f[6160]=0;b[24643]=1;b[24632]=47;b[24633]=0;return}function hf(){f[6155]=0;f[6156]=0;f[6157]=0;b[24631]=1;b[24620]=47;b[24621]=0;return}function jf(){f[6152]=0;f[6153]=0;f[6154]=0;b[24619]=1;b[24608]=47;b[24609]=0;return}function kf(){f[6149]=0;f[6150]=0;f[6151]=0;b[24607]=1;b[24596]=47;b[24597]=0;return}function lf(){f[6146]=0;f[6147]=0;f[6148]=0;b[24595]=1;b[24584]=47;b[24585]=0;return}function mf(){f[6143]=0;f[6144]=0;f[6145]=0;b[24583]=1;b[24572]=47;b[24573]=0;return}function nf(){f[6140]=0;f[6141]=0;f[6142]=0;b[24571]=1;b[24560]=47;b[24561]=0;return}function of(){f[6134]=0;f[6135]=0;f[6136]=0;b[24547]=1;b[24536]=47;b[24537]=0;f[6137]=0;f[6138]=0;f[6139]=0;return}function pf(){f[6131]=0;f[6132]=0;f[6133]=0;b[24535]=1;b[24524]=47;b[24525]=0;return}function qf(){f[6128]=0;f[6129]=0;f[6130]=0;b[24523]=1;b[24512]=47;b[24513]=0;return}function rf(){f[6125]=0;f[6126]=0;f[6127]=0;b[24511]=1;b[24500]=47;b[24501]=0;return}function sf(a,c,d){a=a|0;c=c|0;d=d|0;var e=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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;e=t;t=t+16|0;g=e+4|0;h=e;f[a>>2]=0;i=a+4|0;f[i>>2]=0;j=a+8|0;f[j>>2]=0;v=0;k=ea(f[(f[c>>2]|0)+12>>2]|0,c|0)|0;l=v;v=0;a:do if(!(l&1)?(v=0,ua(14,g|0,d|0,k|0),m=v,v=0,!(m&1)):0){m=g+11|0;n=b[m>>0]|0;o=n<<24>>24<0?f[g+4>>2]|0:n&255;do if((o|0)>0){p=o;b:while(1){v=0;ua(12,g|0,p|0,0);q=v;v=0;if(q&1){r=19;break}if((b[m>>0]|0)<0)s=f[g>>2]|0;else s=g;q=s+p|0;v=0;u=fa(f[f[c>>2]>>2]|0,c|0,s|0)|0;w=v;v=0;if(w&1){r=20;break}f[h>>2]=u;w=u;do if(u|0){x=f[i>>2]|0;if((x|0)==(f[j>>2]|0)){v=0;ta(65,a|0,h|0);y=v;v=0;if(y&1){r=21;break b}else break}else{f[x>>2]=w;f[i>>2]=(f[i>>2]|0)+4;break}}while(0);v=0;w=ea(73,q|0)|0;u=v;v=0;if(u&1){r=19;break}p=p-w|0;if((p|0)<=0){r=5;break}}if((r|0)==5){z=b[m>>0]|0;break}else if((r|0)==19){p=Ra()|0;A=G;B=p}else if((r|0)==20){p=Ra()|0;A=G;B=p}else if((r|0)==21){p=Ra()|0;A=G;B=p}if((b[m>>0]|0)>=0){C=A;D=B;break a}Ns(f[g>>2]|0);C=A;D=B;break a}else z=n;while(0);if(z<<24>>24>=0){t=e;return}Ns(f[g>>2]|0);t=e;return}else r=9;while(0);if((r|0)==9){r=Ra()|0;C=G;D=r}r=f[a>>2]|0;if(!r)_a(D|0);f[i>>2]=r;Ns(r);_a(D|0)}function tf(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=t;t=t+16|0;g=e;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;a:do if(d){h=c;i=d;while(1){if(!(b[h>>0]|0))break;i=i+-1|0;if(!i){j=5;break a}else h=h+1|0}v=0;fa(26,a|0,c|0)|0;h=v;v=0;if(h&1){h=Ra()|0;k=G;l=h;break}else{t=e;return}}else j=5;while(0);do if((j|0)==5){h=c;i=0;while(1){v=0;m=ea(72,h|0)|0;n=v;v=0;if(n&1){j=9;break}n=m+i|0;if(n>>>0>d>>>0)break;h=h+m|0;i=n}if((j|0)==9){h=Ra()|0;k=G;l=h;break};f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;v=0;ua(12,g|0,i|0,0);h=v;v=0;if(h&1){h=Ra()|0;n=G;if((b[g+11>>0]|0)<0)Ns(f[g>>2]|0);k=n;l=h;break}Ii((b[g+11>>0]|0)<0?f[g>>2]|0:g,c,i)|0;h=a+11|0;if((b[h>>0]|0)<0){b[f[a>>2]>>0]=0;f[a+4>>2]=0}else{b[a>>0]=0;b[h>>0]=0}v=0;ta(59,a|0,0);h=v;v=0;if(h&1){h=Sa(0)|0;pd(h)};f[a>>2]=f[g>>2];f[a+4>>2]=f[g+4>>2];f[a+8>>2]=f[g+8>>2];t=e;return}while(0);if((b[a+11>>0]|0)>=0)_a(l|0);Ns(f[a>>2]|0);_a(l|0)}function uf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c=a+4|0;d=f[a>>2]|0;e=(f[c>>2]|0)-d|0;g=e>>2;h=g+1|0;if(h>>>0>1073741823)Pt(a);i=a+8|0;j=(f[i>>2]|0)-d|0;k=j>>1;l=j>>2>>>0<536870911?(k>>>0<h>>>0?h:k):1073741823;do if(l){if(l>>>0<=1073741823){k=Ms(l<<2)|0;m=k;n=k;break}k=Na(8)|0;v=0;ta(57,k|0,20286);h=v;v=0;if(h&1){h=Ra()|0;Ta(k|0);_a(h|0)}else{f[k>>2]=13812;Va(k|0,9184,130)}}else{m=0;n=0}while(0);k=m+(g<<2)|0;f[k>>2]=f[b>>2];if((e|0)>0)mv(n|0,d|0,e|0)|0;f[a>>2]=m;f[c>>2]=k+4;f[i>>2]=m+(l<<2);if(!d)return;Ns(d);return}function vf(a){a=a|0;var c=0,d=0,e=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,u=0,w=0;c=t;t=t+32|0;d=c+12|0;e=c;if((b[a+-3>>0]&-16)<<24>>24==-32){g=3;t=c;return g|0}h=b[a+-1>>0]|0;if((h&240|0)!=224&(h&128|0)==0){g=1;t=c;return g|0}h=b[a+-2>>0]|0;if((h&224|0)==192&(h&240|0)!=224){g=2;t=c;return g|0}h=b[a+-4>>0]|0;if((h&248|0)==240&(((h&240|0)==224|(h&128|0)==0|(h&224|0)==192)^1)){g=4;t=c;return g|0}h=b[a+-5>>0]|0;if((h&252|0)==248&(((h&240|0)==224|(h&128|0)==0|(h&224|0)==192|(h&248|0)==240)^1)){g=5;t=c;return g|0}h=b[a+-6>>0]|0;if(!((h&240|0)==224|(h&128|0)==0|(h&224|0)==192|(h&248|0)==240)?(h&254|0)==252&(h&252|0)!=248:0){g=6;t=c;return g|0}g=Na(16)|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;c=Yg(a)|0;do if(c>>>0<=4294967279){if(c>>>0<11){b[e+11>>0]=c;if(!c)i=e;else{j=e;k=11}}else{h=c+16&-16;v=0;l=ea(71,h|0)|0;m=v;v=0;if(m&1){k=20;break}f[e>>2]=l;f[e+8>>2]=h|-2147483648;f[e+4>>2]=c;j=l;k=11}if((k|0)==11){mv(j|0,a|0,c|0)|0;i=j}b[i+c>>0]=0;v=0;ua(13,d|0,15977,e|0);l=v;v=0;do if(!(l&1)){f[g>>2]=9484;v=0;ta(52,g+4|0,d|0);h=v;v=0;if(h&1){h=Ra()|0;m=G;if((b[d+11>>0]|0)<0)Ns(f[d>>2]|0);n=1;o=m;p=h;break}else{if((b[d+11>>0]|0)<0)Ns(f[d>>2]|0);f[g>>2]=9624;v=0;ua(11,g|0,7248,5);v=0;q=0;k=21;break}}else{q=1;k=21}while(0);if((k|0)==21){l=Ra()|0;n=q;o=G;p=l}if((b[e+11>>0]|0)<0){Ns(f[e>>2]|0);if(n){r=o;s=p;break}else{u=o;w=p}_a(w|0)}else{if(n){r=o;s=p;break}else{u=o;w=p}_a(w|0)}}else{v=0;sa(144,e|0);v=0;k=20}while(0);if((k|0)==20){k=Ra()|0;r=G;s=k}Ta(g|0);u=r;w=s;_a(w|0);return 0}function wf(a,c){a=a|0;c=c|0;var d=0,e=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;d=t;t=t+16|0;e=d;tf(e,c,Gc[f[(f[a>>2]|0)+12>>2]&127](a)|0);c=e+11|0;g=b[c>>0]|0;h=g<<24>>24<0?f[e+4>>2]|0:g&255;do if((h|0)>0){i=h;while(1){v=0;ua(12,e|0,i|0,0);j=v;v=0;if(j&1){k=6;break}j=(b[c>>0]|0)<0?f[e>>2]|0:e;v=0;l=fa(f[f[a>>2]>>2]|0,a|0,j|0)|0;m=v;v=0;if(m&1){k=7;break}if(l|0){n=l;k=11;break}v=0;l=ea(73,j+i|0)|0;j=v;v=0;if(j&1){k=8;break}i=i-l|0;if((i|0)<=0){n=0;k=11;break}}if((k|0)==6){i=Ra()|0;o=i;p=G}else if((k|0)==7){i=Ra()|0;o=i;p=G}else if((k|0)==8){i=Ra()|0;o=i;p=G}else if((k|0)==11){q=n;r=b[c>>0]|0;break}if((b[c>>0]|0)>=0)_a(o|0);Ns(f[e>>2]|0);_a(o|0)}else{q=0;r=g}while(0);if(r<<24>>24>=0){t=d;return q|0}Ns(f[e>>2]|0);t=d;return q|0}function xf(a,c){a=a|0;c=c|0;var d=0,e=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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;d=t;t=t+176|0;e=d+152|0;g=d+164|0;h=d+16|0;i=d;Vc[f[(f[c>>2]|0)+12>>2]&127](e,c);j=e+4|0;k=f[e>>2]|0;l=(f[j>>2]|0)-k>>2;if(k|0){f[j>>2]=k;Ns(k)}k=h+56|0;j=h+4|0;f[h>>2]=7188;f[k>>2]=7208;Qj(h+56|0,j);f[h+128>>2]=0;f[h+132>>2]=-1;f[h>>2]=9508;f[k>>2]=9528;Uj(j);f[j>>2]=9560;m=h+36|0;f[m>>2]=0;f[m+4>>2]=0;f[m+8>>2]=0;f[m+12>>2]=0;f[h+52>>2]=16;v=0;n=ea(f[(f[c>>2]|0)+8>>2]|0,c|0)|0;o=v;v=0;a:do if((!(o&1)?(p=Yg(n)|0,v=0,q=ga(27,h|0,n|0,p|0)|0,p=v,v=0,!(p&1)):0)?(b[g>>0]=9,v=0,ga(27,q|0,g|0,1)|0,q=v,v=0,!(q&1)):0){v=0;ta(f[(f[c>>2]|0)+12>>2]|0,i|0,c|0);q=v;v=0;if(q&1){q=Ra()|0;r=q;s=G;break}q=f[i>>2]|0;p=i+4|0;u=f[p>>2]|0;do if((q|0)==(u|0))w=q;else{x=l+-1|0;y=0;z=q;while(1){A=f[z>>2]|0;B=Yg(A)|0;v=0;ga(27,h|0,A|0,B|0)|0;B=v;v=0;if(B&1)break;if(y>>>0<x>>>0?(b[e>>0]=32,v=0,ga(27,h|0,e|0,1)|0,B=v,v=0,B&1):0)break;z=z+4|0;if((z|0)==(u|0)){C=9;break}else y=y+1|0}if((C|0)==9){w=f[i>>2]|0;break}y=Ra()|0;z=G;x=f[i>>2]|0;if(x|0){f[p>>2]=x;Ns(x)}r=y;s=z;break a}while(0);if(w|0){f[p>>2]=w;Ns(w)}v=0;ta(58,a|0,j|0);u=v;v=0;if(!(u&1)){f[h>>2]=9508;f[k>>2]=9528;f[j>>2]=9560;if((b[m+11>>0]|0)>=0){hj(j);Gj(h,9540);dj(k);t=d;return}Ns(f[m>>2]|0);hj(j);Gj(h,9540);dj(k);t=d;return}else C=13}else C=13;while(0);if((C|0)==13){C=Ra()|0;r=C;s=G}f[h>>2]=9508;f[k>>2]=9528;f[j>>2]=9560;if((b[m+11>>0]|0)>=0){hj(j);Gj(h,9540);dj(k);_a(r|0)}Ns(f[m>>2]|0);hj(j);Gj(h,9540);dj(k);_a(r|0)}function yf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=a+8|0;d=f[a+12>>2]|0;a=d;if((c|0)==(a|0)){e=0;return e|0}g=d;d=a;while(1){a=f[g+8>>2]|0;h=Hc[f[f[a>>2]>>2]&31](a,b)|0;if(h|0){e=h;i=5;break}g=f[d+4>>2]|0;d=g;if((c|0)==(d|0)){e=0;i=5;break}}if((i|0)==5)return e|0;return 0}function zf(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=a+8|0;d=f[a+12>>2]|0;a=d;if((c|0)==(a|0)){e=0;return e|0}g=d;d=a;while(1){a=f[g+8>>2]|0;h=Hc[f[(f[a>>2]|0)+4>>2]&31](a,b)|0;if(h|0){e=h;i=5;break}g=f[d+4>>2]|0;d=g;if((c|0)==(d|0)){e=0;i=5;break}}if((i|0)==5)return e|0;return 0}function Af(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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=t;t=t+32|0;e=d+12|0;g=d;h=e+4|0;f[h>>2]=0;i=e+8|0;f[i>>2]=0;j=e+4|0;f[e>>2]=j;k=b+8|0;l=f[b+12>>2]|0;b=l;do if((k|0)!=(b|0)){m=g+4|0;n=l;o=b;a:while(1){p=f[n+8>>2]|0;v=0;ua(f[(f[p>>2]|0)+8>>2]|0,g|0,p|0,c|0);p=v;v=0;if(p&1){q=13;break}p=f[g>>2]|0;r=f[m>>2]|0;if((p|0)==(r|0))s=p;else{u=p;do{p=f[u>>2]|0;v=0;w=ea(f[(f[p>>2]|0)+8>>2]|0,p|0)|0;p=v;v=0;if(p&1){q=37;break a}p=Yg(w)|0;w=f[j>>2]|0;do if(w){x=j;y=w;do{z=(f[y+16>>2]|0)>>>0<p>>>0;x=z?x:y;y=f[(z?y+4|0:y)>>2]|0}while((y|0)!=0);if((x|0)!=(j|0)?p>>>0>=(f[x+16>>2]|0)>>>0:0)break;y=f[u>>2]|0;z=h;A=w;while(1){B=f[A+16>>2]|0;if(p>>>0<B>>>0){C=f[A>>2]|0;if(!C){q=24;break}else{D=A;E=C}}else{if(B>>>0>=p>>>0){q=28;break}F=A+4|0;B=f[F>>2]|0;if(!B){q=27;break}else{D=F;E=B}}z=D;A=E}if((q|0)==24){q=0;H=A;I=A;J=y;q=30;break}else if((q|0)==27){q=0;H=A;I=F;J=y;q=30;break}else if((q|0)==28){q=0;H=A;I=z;J=y;q=30;break}}else{H=j;I=j;J=f[u>>2]|0;q=30}while(0);if((q|0)==30){q=0;w=f[I>>2]|0;if(!w){v=0;x=ea(71,24)|0;B=v;v=0;if(B&1){q=37;break a}f[x+16>>2]=p;f[x+20>>2]=0;f[x>>2]=0;f[x+4>>2]=0;f[x+8>>2]=H;f[I>>2]=x;B=f[f[e>>2]>>2]|0;if(!B)K=x;else{f[e>>2]=B;K=f[I>>2]|0}Vf(f[h>>2]|0,K);f[i>>2]=(f[i>>2]|0)+1;L=x}else L=w;f[L+20>>2]=J}u=u+4|0}while((u|0)!=(r|0));s=f[g>>2]|0}if(s|0){f[m>>2]=s;Ns(s)}n=f[o+4>>2]|0;o=n;if((k|0)==(o|0)){q=3;break}}if((q|0)==3){M=f[e>>2]|0;break}else if((q|0)==13){o=Ra()|0;N=o;O=G;P=f[j>>2]|0;Wf(e,P);_a(N|0)}else if((q|0)==37){o=Ra()|0;n=G;r=f[g>>2]|0;if(r|0){f[m>>2]=r;Ns(r)}N=o;O=n;P=f[j>>2]|0;Wf(e,P);_a(N|0)}}else M=j;while(0);f[a>>2]=0;g=a+4|0;f[g>>2]=0;k=a+8|0;f[k>>2]=0;if((j|0)==(M|0)){Q=f[j>>2]|0;Wf(e,Q);t=d;return}M=j;while(1){s=f[M>>2]|0;if(!s){J=M;do{L=J;J=f[J+8>>2]|0}while((f[J>>2]|0)==(L|0));R=J}else{m=s;while(1){L=f[m+4>>2]|0;if(!L){R=m;break}else m=L}}m=R+20|0;s=f[g>>2]|0;if((s|0)==(f[k>>2]|0)){v=0;ta(65,a|0,m|0);J=v;v=0;if(J&1)break}else{f[s>>2]=f[m>>2];f[g>>2]=(f[g>>2]|0)+4}m=f[M>>2]|0;if(!m){s=M;do{J=s;s=f[s+8>>2]|0}while((f[s>>2]|0)==(J|0));S=s}else{J=m;while(1){L=f[J+4>>2]|0;if(!L){S=J;break}else J=L}}if((S|0)==(f[e>>2]|0)){q=40;break}else M=S}if((q|0)==40){Q=f[j>>2]|0;Wf(e,Q);t=d;return}d=Ra()|0;Q=G;q=f[a>>2]|0;if(!q){N=d;O=Q;P=f[j>>2]|0;Wf(e,P);_a(N|0)}f[g>>2]=q;Ns(q);N=d;O=Q;P=f[j>>2]|0;Wf(e,P);_a(N|0)}function Bf(a){a=a|0;return f[a+4>>2]|0}function Cf(a,b){a=a|0;b=b|0;var c=0,d=0,e=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,u=0,w=0,x=0;c=t;t=t+32|0;d=c;e=c+16|0;g=c+8|0;h=Ms(12)|0;f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;f[a>>2]=h;v=0;i=ea(71,16)|0;j=v;v=0;if(j&1){j=Ra()|0;Ns(h);_a(j|0)}f[i+4>>2]=0;f[i+8>>2]=0;f[i>>2]=9416;f[i+12>>2]=h;j=a+4|0;f[j>>2]=i;f[d>>2]=h;f[d+4>>2]=h;sd(a,d);h=b+8|0;i=f[b+12>>2]|0;b=i;a:do if((h|0)==(b|0))k=5;else{l=g+4|0;m=i;n=b;b:while(1){o=f[m+8>>2]|0;v=0;ta(f[(f[o>>2]|0)+16>>2]|0,g|0,o|0);o=v;v=0;if(o&1){k=13;break}o=f[g>>2]|0;p=f[o>>2]|0;q=f[o+4>>2]|0;if((p|0)!=(q|0)){o=p;do{p=f[a>>2]|0;v=0;r=ea(74,f[o>>2]|0)|0;s=v;v=0;if(s&1)break b;f[d>>2]=r;s=p+4|0;u=f[s>>2]|0;if((u|0)==(f[p+8>>2]|0)){v=0;ta(54,p|0,d|0);p=v;v=0;if(p&1)break b}else{f[u>>2]=r;f[s>>2]=(f[s>>2]|0)+4}o=o+4|0}while((o|0)!=(q|0))}q=f[l>>2]|0;if(q|0?(o=q+4|0,s=f[o>>2]|0,f[o>>2]=s+-1,(s|0)==0):0){Uc[f[(f[q>>2]|0)+8>>2]&255](q);Js(q)}m=f[n+4>>2]|0;n=m;if((h|0)==(n|0)){k=5;break a}}if((k|0)==13){n=Ra()|0;w=n;x=G;break}n=Ra()|0;m=G;q=f[l>>2]|0;if(q|0?(s=q+4|0,o=f[s>>2]|0,f[s>>2]=o+-1,(o|0)==0):0){Uc[f[(f[q>>2]|0)+8>>2]&255](q);Js(q)}w=n;x=m}while(0);do if((k|0)==5){h=f[a>>2]|0;d=f[h>>2]|0;g=f[h+4>>2]|0;f[e>>2]=27;v=0;ua(15,d|0,g|0,e|0);g=v;v=0;if(g&1){g=Ra()|0;w=g;x=G;break}else{t=c;return}}while(0);c=f[j>>2]|0;if(!c)_a(w|0);j=c+4|0;x=f[j>>2]|0;f[j>>2]=x+-1;if(x|0)_a(w|0);Uc[f[(f[c>>2]|0)+8>>2]&255](c);Js(c);_a(w|0)}function Df(a){a=a|0;var b=0,c=0,d=0,e=0,g=0;f[a>>2]=9944;b=a+8|0;c=a+16|0;if(!(f[c>>2]|0))return;d=f[a+12>>2]|0;a=(f[b>>2]|0)+4|0;e=f[d>>2]|0;f[e+4>>2]=f[a>>2];f[f[a>>2]>>2]=e;f[c>>2]=0;if((d|0)==(b|0))return;c=d;do{d=c;c=f[c+4>>2]|0;e=f[d+12>>2]|0;if(e|0?(a=e+4|0,g=f[a>>2]|0,f[a>>2]=g+-1,(g|0)==0):0){Uc[f[(f[e>>2]|0)+8>>2]&255](e);Js(e)}Ns(d)}while((c|0)!=(b|0));return}function Ef(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;f[a>>2]=9944;b=a+8|0;c=a+16|0;if(!(f[c>>2]|0)){Ns(a);return}d=f[a+12>>2]|0;e=(f[b>>2]|0)+4|0;g=f[d>>2]|0;f[g+4>>2]=f[e>>2];f[f[e>>2]>>2]=g;f[c>>2]=0;if((d|0)==(b|0)){Ns(a);return}c=d;do{d=c;c=f[c+4>>2]|0;g=f[d+12>>2]|0;if(g|0?(e=g+4|0,h=f[e>>2]|0,f[e>>2]=h+-1,(h|0)==0):0){Uc[f[(f[g>>2]|0)+8>>2]&255](g);Js(g)}Ns(d)}while((c|0)!=(b|0));Ns(a);return}function Ff(a,b){a=a|0;b=b|0;var c=0;c=Gc[f[(f[a>>2]|0)+8>>2]&127](a)|0;return (Vg(c,Gc[f[(f[b>>2]|0)+8>>2]&127](b)|0)|0)<0|0}function Gf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=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;d=a;a=b;a:while(1){b=a;e=a+-4|0;g=a+-8|0;h=a;i=d;b:while(1){j=b-i|0;k=j>>2;switch(k|0){case 2:{l=4;break a;break}case 3:{l=6;break a;break}case 4:{l=14;break a;break}case 5:{l=15;break a;break}case 1:case 0:{l=76;break a;break}default:{}}if((j|0)<124){l=21;break a}m=i+(((k|0)/2|0)<<2)|0;do if((j|0)>3996){n=(k|0)/4|0;o=i+(n<<2)|0;p=m+(n<<2)|0;n=Sf(i,o,m,p,c)|0;if(Hc[f[c>>2]&31](f[e>>2]|0,f[p>>2]|0)|0){q=f[p>>2]|0;f[p>>2]=f[e>>2];f[e>>2]=q;q=n+1|0;if(Hc[f[c>>2]&31](f[p>>2]|0,f[m>>2]|0)|0){r=f[m>>2]|0;f[m>>2]=f[p>>2];f[p>>2]=r;r=n+2|0;if(Hc[f[c>>2]&31](f[m>>2]|0,f[o>>2]|0)|0){p=f[o>>2]|0;f[o>>2]=f[m>>2];f[m>>2]=p;if(Hc[f[c>>2]&31](f[o>>2]|0,f[i>>2]|0)|0){p=f[i>>2]|0;f[i>>2]=f[o>>2];f[o>>2]=p;s=n+4|0}else s=n+3|0}else s=r}else s=q}else s=n}else{n=Hc[f[c>>2]&31](f[m>>2]|0,f[i>>2]|0)|0;q=Hc[f[c>>2]&31](f[e>>2]|0,f[m>>2]|0)|0;if(!n){if(!q){s=0;break}n=f[m>>2]|0;f[m>>2]=f[e>>2];f[e>>2]=n;if(!(Hc[f[c>>2]&31](f[m>>2]|0,f[i>>2]|0)|0)){s=1;break}n=f[i>>2]|0;f[i>>2]=f[m>>2];f[m>>2]=n;s=2;break}n=f[i>>2]|0;if(q){f[i>>2]=f[e>>2];f[e>>2]=n;s=1;break}f[i>>2]=f[m>>2];f[m>>2]=n;if(Hc[f[c>>2]&31](f[e>>2]|0,n)|0){n=f[m>>2]|0;f[m>>2]=f[e>>2];f[e>>2]=n;s=2}else s=1}while(0);if(Hc[f[c>>2]&31](f[i>>2]|0,f[m>>2]|0)|0){t=e;u=s}else{if((i|0)==(g|0)){l=40;break}k=g;while(1){if(Hc[f[c>>2]&31](f[k>>2]|0,f[m>>2]|0)|0)break;j=k+-4|0;if((i|0)==(j|0)){l=40;break b}else k=j}j=f[i>>2]|0;f[i>>2]=f[k>>2];f[k>>2]=j;t=k;u=s+1|0}j=i+4|0;c:do if(j>>>0<t>>>0){n=m;q=t;r=j;p=u;while(1){o=r;while(1){v=o+4|0;if(Hc[f[c>>2]&31](f[o>>2]|0,f[n>>2]|0)|0)o=v;else break}w=q;do w=w+-4|0;while(!(Hc[f[c>>2]&31](f[w>>2]|0,f[n>>2]|0)|0));if(o>>>0>w>>>0){x=n;y=p;z=o;break c}A=f[o>>2]|0;f[o>>2]=f[w>>2];f[w>>2]=A;n=(n|0)==(o|0)?w:n;q=w;r=v;p=p+1|0}}else{x=m;y=u;z=j}while(0);if((z|0)!=(x|0)?Hc[f[c>>2]&31](f[x>>2]|0,f[z>>2]|0)|0:0){j=f[z>>2]|0;f[z>>2]=f[x>>2];f[x>>2]=j;B=y+1|0}else B=y;if(!B){C=Uf(i,z,c)|0;j=z+4|0;if(Uf(j,a,c)|0){l=69;break}if(C){D=2;E=j;F=a;l=74;break}}j=z;if((j-i|0)>=(h-j|0)){l=73;break}Gf(i,z,c);i=z+4|0}d:do if((l|0)==40){l=0;h=i+4|0;if(Hc[f[c>>2]&31](f[i>>2]|0,f[e>>2]|0)|0)G=h;else{if((h|0)==(e|0)){l=76;break a}g=h;while(1){if(Hc[f[c>>2]&31](f[i>>2]|0,f[g>>2]|0)|0)break;h=g+4|0;if((h|0)==(e|0)){l=76;break a}else g=h}h=f[g>>2]|0;f[g>>2]=f[e>>2];f[e>>2]=h;G=g+4|0}if((G|0)==(e|0)){l=76;break a}h=e;b=G;while(1){j=b;while(1){H=j+4|0;if(Hc[f[c>>2]&31](f[i>>2]|0,f[j>>2]|0)|0)break;else j=H}m=h;do m=m+-4|0;while(Hc[f[c>>2]&31](f[i>>2]|0,f[m>>2]|0)|0);if(j>>>0>=m>>>0){D=4;E=j;F=a;l=74;break d}k=f[j>>2]|0;f[j>>2]=f[m>>2];f[m>>2]=k;h=m;b=H}}else if((l|0)==69){l=0;D=C?1:2;E=i;F=C?a:z;l=74}else if((l|0)==73){l=0;Gf(z+4|0,a,c);I=i;J=z}while(0);if((l|0)==74){l=0;switch(D&7){case 2:case 4:case 0:{I=E;J=F;break}default:{l=76;break a}}}d=I;a=J}if((l|0)==4){J=a+-4|0;if(!(Hc[f[c>>2]&31](f[J>>2]|0,f[i>>2]|0)|0))return;I=f[i>>2]|0;f[i>>2]=f[J>>2];f[J>>2]=I;return}else if((l|0)==6){I=i+4|0;J=a+-4|0;d=Hc[f[c>>2]&31](f[I>>2]|0,f[i>>2]|0)|0;F=Hc[f[c>>2]&31](f[J>>2]|0,f[I>>2]|0)|0;if(!d){if(!F)return;d=f[I>>2]|0;f[I>>2]=f[J>>2];f[J>>2]=d;if(!(Hc[f[c>>2]&31](f[I>>2]|0,f[i>>2]|0)|0))return;d=f[i>>2]|0;f[i>>2]=f[I>>2];f[I>>2]=d;return}d=f[i>>2]|0;if(F){f[i>>2]=f[J>>2];f[J>>2]=d;return}f[i>>2]=f[I>>2];f[I>>2]=d;if(!(Hc[f[c>>2]&31](f[J>>2]|0,d)|0))return;d=f[I>>2]|0;f[I>>2]=f[J>>2];f[J>>2]=d;return}else if((l|0)==14){Sf(i,i+4|0,i+8|0,a+-4|0,c)|0;return}else if((l|0)==15){d=i+4|0;J=i+8|0;I=i+12|0;F=a+-4|0;Sf(i,d,J,I,c)|0;if(!(Hc[f[c>>2]&31](f[F>>2]|0,f[I>>2]|0)|0))return;E=f[I>>2]|0;f[I>>2]=f[F>>2];f[F>>2]=E;if(!(Hc[f[c>>2]&31](f[I>>2]|0,f[J>>2]|0)|0))return;E=f[J>>2]|0;F=f[I>>2]|0;f[J>>2]=F;f[I>>2]=E;if(!(Hc[f[c>>2]&31](F,f[d>>2]|0)|0))return;F=f[d>>2]|0;E=f[J>>2]|0;f[d>>2]=E;f[J>>2]=F;if(!(Hc[f[c>>2]&31](E,f[i>>2]|0)|0))return;E=f[i>>2]|0;f[i>>2]=f[d>>2];f[d>>2]=E;return}else if((l|0)==21){Tf(i,a,c);return}else if((l|0)==76)return}function Hf(a){a=a|0;var c=0,d=0,e=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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;c=t;t=t+32|0;d=c+12|0;e=c;if(!(Gc[f[(f[a>>2]|0)+20>>2]&127](a)|0)){g=Ms(16)|0;v=0;h=ea(f[(f[a>>2]|0)+8>>2]|0,a|0)|0;i=v;v=0;do if(i&1)j=14;else{f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;k=Yg(h)|0;if(k>>>0>4294967279){v=0;sa(144,d|0);v=0;j=14;break}if(k>>>0<11){b[d+11>>0]=k;if(!k)l=d;else{m=d;j=9}}else{n=k+16&-16;v=0;o=ea(71,n|0)|0;p=v;v=0;if(p&1){j=14;break}f[d>>2]=o;f[d+8>>2]=n|-2147483648;f[d+4>>2]=k;m=o;j=9}if((j|0)==9){mv(m|0,h|0,k|0)|0;l=m}b[l+k>>0]=0;f[g>>2]=9980;v=0;ta(52,g+4|0,d|0);k=v;v=0;if(k&1){k=Ra()|0;o=G;if((b[d+11>>0]|0)>=0){q=k;r=o;break}Ns(f[d>>2]|0);q=k;r=o;break}if((b[d+11>>0]|0)<0)Ns(f[d>>2]|0);s=g;t=c;return s|0}while(0);if((j|0)==14){l=Ra()|0;q=l;r=G}Ns(g);u=q;w=r;_a(u|0)}if((Gc[f[(f[a>>2]|0)+20>>2]&127](a)|0)!=1){r=Ms(28)|0;v=0;q=ea(f[(f[a>>2]|0)+8>>2]|0,a|0)|0;g=v;v=0;do if(!(g&1)){f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;l=Yg(q)|0;if(l>>>0>4294967279){v=0;sa(144,d|0);v=0;j=67;break}if(l>>>0<11){b[d+11>>0]=l;if(!l)x=d;else{y=d;j=59}}else{m=l+16&-16;v=0;h=ea(71,m|0)|0;i=v;v=0;if(i&1){j=67;break}f[d>>2]=h;f[d+8>>2]=m|-2147483648;f[d+4>>2]=l;y=h;j=59}if((j|0)==59){mv(y|0,q|0,l|0)|0;x=y}b[x+l>>0]=0;v=0;ta(f[(f[a>>2]|0)+12>>2]|0,e|0,a|0);l=v;v=0;do if(l&1){h=Ra()|0;z=h;A=G}else{v=0;ua(16,r|0,d|0,e|0);h=v;v=0;if(h&1){h=Ra()|0;m=G;i=f[e>>2]|0;if(!i){z=h;A=m;break}f[e+4>>2]=i;Ns(i);z=h;A=m;break}m=f[e>>2]|0;if(m|0){f[e+4>>2]=m;Ns(m)}if((b[d+11>>0]|0)<0)Ns(f[d>>2]|0);s=r;t=c;return s|0}while(0);if((b[d+11>>0]|0)<0){Ns(f[d>>2]|0);B=z;C=A}else{B=z;C=A}}else j=67;while(0);if((j|0)==67){A=Ra()|0;B=A;C=G}Ns(r);u=B;w=C;_a(u|0)}C=Ms(28)|0;v=0;B=ea(f[(f[a>>2]|0)+8>>2]|0,a|0)|0;r=v;v=0;do if(!(r&1)){f[d>>2]=0;f[d+4>>2]=0;f[d+8>>2]=0;A=Yg(B)|0;if(A>>>0>4294967279){v=0;sa(144,d|0);v=0;j=45;break}if(A>>>0<11){b[d+11>>0]=A;if(!A)D=d;else{E=d;j=26}}else{z=A+16&-16;v=0;x=ea(71,z|0)|0;y=v;v=0;if(y&1){j=45;break}f[d>>2]=x;f[d+8>>2]=z|-2147483648;f[d+4>>2]=A;E=x;j=26}if((j|0)==26){mv(E|0,B|0,A|0)|0;D=E}b[D+A>>0]=0;v=0;A=ea(f[(f[a>>2]|0)+28>>2]|0,a|0)|0;x=v;v=0;do if(!(x&1)){f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;z=Yg(A)|0;if(z>>>0>4294967279){v=0;sa(144,e|0);v=0;j=46;break}if(z>>>0<11){b[e+11>>0]=z;if(!z)F=e;else{H=e;j=34}}else{y=z+16&-16;v=0;q=ea(71,y|0)|0;g=v;v=0;if(g&1){j=46;break}f[e>>2]=q;f[e+8>>2]=y|-2147483648;f[e+4>>2]=z;H=q;j=34}if((j|0)==34){mv(H|0,A|0,z|0)|0;F=H}b[F+z>>0]=0;f[C>>2]=9644;z=C+4|0;v=0;ta(52,z|0,d|0);q=v;v=0;do if(q&1){y=Ra()|0;I=G;J=y}else{v=0;ta(52,C+16|0,e|0);y=v;v=0;if(y&1){y=Ra()|0;g=G;if((b[C+15>>0]|0)>=0){I=g;J=y;break}Ns(f[z>>2]|0);I=g;J=y;break}if((b[e+11>>0]|0)<0)Ns(f[e>>2]|0);if((b[d+11>>0]|0)<0)Ns(f[d>>2]|0);s=C;t=c;return s|0}while(0);if((b[e+11>>0]|0)<0){Ns(f[e>>2]|0);K=J;L=I}else{K=J;L=I}}else j=46;while(0);if((j|0)==46){A=Ra()|0;K=A;L=G}if((b[d+11>>0]|0)<0){Ns(f[d>>2]|0);M=K;N=L}else{M=K;N=L}}else j=45;while(0);if((j|0)==45){j=Ra()|0;M=j;N=G}Ns(C);u=M;w=N;_a(u|0);return 0}function If(a,c,d){a=a|0;c=c|0;d=d|0;var e=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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;e=t;t=t+16|0;g=e;f[a>>2]=9684;h=a+4|0;v=0;ta(52,h|0,c|0);c=v;v=0;if(c&1){c=Ra()|0;i=c;j=G;_a(i|0)}c=a+16|0;f[c>>2]=0;k=a+20|0;f[k>>2]=0;l=a+24|0;f[l>>2]=0;a=d+4|0;v=0;ta(66,c|0,(f[a>>2]|0)-(f[d>>2]|0)>>2|0);m=v;v=0;if(m&1){m=Ra()|0;n=m;o=G}else{m=f[d>>2]|0;d=f[a>>2]|0;if((m|0)==(d|0)){t=e;return}a=g+11|0;p=g+8|0;q=g+4|0;r=m;while(1){m=f[r>>2]|0;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;s=Yg(m)|0;if(s>>>0>4294967279){u=9;break}if(s>>>0<11){b[a>>0]=s;if(!s)w=g;else{x=g;u=14}}else{y=s+16&-16;v=0;z=ea(71,y|0)|0;A=v;v=0;if(A&1){u=21;break}f[g>>2]=z;f[p>>2]=y|-2147483648;f[q>>2]=s;x=z;u=14}if((u|0)==14){u=0;mv(x|0,m|0,s|0)|0;w=x}b[w+s>>0]=0;s=f[k>>2]|0;if(s>>>0>=(f[l>>2]|0)>>>0){v=0;ta(67,c|0,g|0);m=v;v=0;if(m&1){u=23;break}if((b[a>>0]|0)<0)Ns(f[g>>2]|0)}else{f[s>>2]=f[g>>2];f[s+4>>2]=f[g+4>>2];f[s+8>>2]=f[g+8>>2];f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;f[k>>2]=(f[k>>2]|0)+12}r=r+4|0;if((r|0)==(d|0)){u=5;break}}if((u|0)==5){t=e;return}else if((u|0)==9){v=0;sa(144,g|0);v=0;e=Ra()|0;B=e;C=G;u=22}else if((u|0)==21){e=Ra()|0;B=e;C=G;u=22}else if((u|0)==23){e=Ra()|0;d=G;if((b[a>>0]|0)<0){Ns(f[g>>2]|0);D=e;E=d}else{D=e;E=d}}if((u|0)==22){D=B;E=C}n=D;o=E}E=f[c>>2]|0;if(E|0){D=f[k>>2]|0;if((D|0)==(E|0))F=E;else{C=D;do{C=C+-12|0;if((b[C+11>>0]|0)<0)Ns(f[C>>2]|0)}while((C|0)!=(E|0));F=f[c>>2]|0}f[k>>2]=E;Ns(F)}if((b[h+11>>0]|0)>=0){i=n;j=o;_a(i|0)}Ns(f[h>>2]|0);i=n;j=o;_a(i|0)}function Jf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;d=a+8|0;e=f[a>>2]|0;g=e;if((((f[d>>2]|0)-e|0)/12|0)>>>0>=c>>>0)return;h=a+4|0;if(c>>>0>357913941){i=Na(8)|0;v=0;ta(57,i|0,20286);j=v;v=0;if(j&1){j=Ra()|0;Ta(i|0);_a(j|0)}else{f[i>>2]=13812;Va(i|0,9184,130)}}i=f[h>>2]|0;j=Ms(c*12|0)|0;k=j+(((i-e|0)/12|0)*12|0)|0;l=k;m=j+(c*12|0)|0;c=i;if((c|0)!=(g|0)){i=c;c=k;do{c=c+-12|0;i=i+-12|0;f[c>>2]=f[i>>2];f[c+4>>2]=f[i+4>>2];f[c+8>>2]=f[i+8>>2];f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0}while((i|0)!=(g|0));g=f[a>>2]|0;i=f[h>>2]|0;k=g;f[a>>2]=c;f[h>>2]=l;f[d>>2]=m;if((i|0)==(k|0))n=g;else{c=i;do{c=c+-12|0;if((b[c+11>>0]|0)<0)Ns(f[c>>2]|0)}while((c|0)!=(k|0));n=g}}else{f[a>>2]=l;f[h>>2]=l;f[d>>2]=m;n=e}if(!n)return;Ns(n);return}function Kf(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+4|0;e=f[a>>2]|0;g=((f[d>>2]|0)-e|0)/12|0;h=g+1|0;if(h>>>0>357913941)Pt(a);i=a+8|0;j=((f[i>>2]|0)-e|0)/12|0;e=j<<1;k=j>>>0<178956970?(e>>>0<h>>>0?h:e):357913941;do if(k){if(k>>>0<=357913941){l=Ms(k*12|0)|0;break}e=Na(8)|0;v=0;ta(57,e|0,20286);h=v;v=0;if(h&1){h=Ra()|0;Ta(e|0);_a(h|0)}else{f[e>>2]=13812;Va(e|0,9184,130)}}else l=0;while(0);e=l+(g*12|0)|0;g=l+(k*12|0)|0;f[e>>2]=f[c>>2];f[e+4>>2]=f[c+4>>2];f[e+8>>2]=f[c+8>>2];f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;c=e+12|0;k=f[a>>2]|0;l=f[d>>2]|0;if((l|0)==(k|0)){m=e;n=k;o=k}else{h=l;l=e;do{l=l+-12|0;h=h+-12|0;f[l>>2]=f[h>>2];f[l+4>>2]=f[h+4>>2];f[l+8>>2]=f[h+8>>2];f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0}while((h|0)!=(k|0));m=l;n=f[a>>2]|0;o=f[d>>2]|0}f[a>>2]=m;f[d>>2]=c;f[i>>2]=g;g=n;if((o|0)!=(g|0)){i=o;do{i=i+-12|0;if((b[i+11>>0]|0)<0)Ns(f[i>>2]|0)}while((i|0)!=(g|0))}if(!n)return;Ns(n);return}function Lf(a){a=a|0;var c=0;f[a>>2]=9980;c=a+4|0;if((b[c+11>>0]|0)>=0)return;Ns(f[c>>2]|0);return}function Mf(a){a=a|0;var c=0;f[a>>2]=9980;c=a+4|0;if((b[c+11>>0]|0)>=0){Ns(a);return}Ns(f[c>>2]|0);Ns(a);return}function Nf(a){a=a|0;var c=0,d=0;c=a+4|0;if((b[c+11>>0]|0)<0){d=f[c>>2]|0;return d|0}else{d=c;return d|0}return 0}function Of(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;return}function Pf(a){a=a|0;return Gc[f[(f[a>>2]|0)+8>>2]&127](a)|0}function Qf(a){a=a|0;return 0}function Rf(a,b){a=a|0;b=b|0;Xs(a,b+4|0);return}function Sf(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0;g=Hc[f[e>>2]&31](f[b>>2]|0,f[a>>2]|0)|0;h=Hc[f[e>>2]&31](f[c>>2]|0,f[b>>2]|0)|0;do if(g){i=f[a>>2]|0;if(h){f[a>>2]=f[c>>2];f[c>>2]=i;j=1;break}f[a>>2]=f[b>>2];f[b>>2]=i;if(Hc[f[e>>2]&31](f[c>>2]|0,i)|0){i=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=i;j=2}else j=1}else if(h){i=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=i;if(Hc[f[e>>2]&31](f[b>>2]|0,f[a>>2]|0)|0){i=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=i;j=2}else j=1}else j=0;while(0);if(!(Hc[f[e>>2]&31](f[d>>2]|0,f[c>>2]|0)|0)){k=j;return k|0}h=f[c>>2]|0;f[c>>2]=f[d>>2];f[d>>2]=h;if(!(Hc[f[e>>2]&31](f[c>>2]|0,f[b>>2]|0)|0)){k=j+1|0;return k|0}h=f[b>>2]|0;f[b>>2]=f[c>>2];f[c>>2]=h;if(!(Hc[f[e>>2]&31](f[b>>2]|0,f[a>>2]|0)|0)){k=j+2|0;return k|0}e=f[a>>2]|0;f[a>>2]=f[b>>2];f[b>>2]=e;k=j+3|0;return k|0}function Tf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=a+8|0;e=a+4|0;g=Hc[f[c>>2]&31](f[e>>2]|0,f[a>>2]|0)|0;h=Hc[f[c>>2]&31](f[d>>2]|0,f[e>>2]|0)|0;do if(g){i=f[a>>2]|0;if(h){f[a>>2]=f[d>>2];f[d>>2]=i;break}f[a>>2]=f[e>>2];f[e>>2]=i;if(Hc[f[c>>2]&31](f[d>>2]|0,i)|0){i=f[e>>2]|0;f[e>>2]=f[d>>2];f[d>>2]=i}}else if(h?(i=f[e>>2]|0,j=f[d>>2]|0,f[e>>2]=j,f[d>>2]=i,Hc[f[c>>2]&31](j,f[a>>2]|0)|0):0){j=f[a>>2]|0;f[a>>2]=f[e>>2];f[e>>2]=j}while(0);e=a+12|0;if((e|0)==(b|0))return;h=e;e=d;while(1){if(Hc[f[c>>2]&31](f[h>>2]|0,f[e>>2]|0)|0){d=f[h>>2]|0;g=d;j=e;i=h;while(1){f[i>>2]=f[j>>2];if((j|0)==(a|0)){k=a;break}l=j+-4|0;if(Hc[f[c>>2]&31](g,f[l>>2]|0)|0){m=j;j=l;i=m}else{k=j;break}}f[k>>2]=d}j=h+4|0;if((j|0)==(b|0))break;else{i=h;h=j;e=i}}return}function Uf(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;switch(b-a>>2|0){case 2:{d=b+-4|0;if(!(Hc[f[c>>2]&31](f[d>>2]|0,f[a>>2]|0)|0)){e=1;return e|0}g=f[a>>2]|0;f[a>>2]=f[d>>2];f[d>>2]=g;e=1;return e|0}case 3:{g=a+4|0;d=b+-4|0;h=Hc[f[c>>2]&31](f[g>>2]|0,f[a>>2]|0)|0;i=Hc[f[c>>2]&31](f[d>>2]|0,f[g>>2]|0)|0;if(!h){if(!i){e=1;return e|0}h=f[g>>2]|0;f[g>>2]=f[d>>2];f[d>>2]=h;if(!(Hc[f[c>>2]&31](f[g>>2]|0,f[a>>2]|0)|0)){e=1;return e|0}h=f[a>>2]|0;f[a>>2]=f[g>>2];f[g>>2]=h;e=1;return e|0}h=f[a>>2]|0;if(i){f[a>>2]=f[d>>2];f[d>>2]=h;e=1;return e|0}f[a>>2]=f[g>>2];f[g>>2]=h;if(!(Hc[f[c>>2]&31](f[d>>2]|0,h)|0)){e=1;return e|0}h=f[g>>2]|0;f[g>>2]=f[d>>2];f[d>>2]=h;e=1;return e|0}case 4:{Sf(a,a+4|0,a+8|0,b+-4|0,c)|0;e=1;return e|0}case 5:{h=a+4|0;d=a+8|0;g=a+12|0;i=b+-4|0;Sf(a,h,d,g,c)|0;if(!(Hc[f[c>>2]&31](f[i>>2]|0,f[g>>2]|0)|0)){e=1;return e|0}j=f[g>>2]|0;f[g>>2]=f[i>>2];f[i>>2]=j;if(!(Hc[f[c>>2]&31](f[g>>2]|0,f[d>>2]|0)|0)){e=1;return e|0}j=f[d>>2]|0;i=f[g>>2]|0;f[d>>2]=i;f[g>>2]=j;if(!(Hc[f[c>>2]&31](i,f[h>>2]|0)|0)){e=1;return e|0}i=f[h>>2]|0;j=f[d>>2]|0;f[h>>2]=j;f[d>>2]=i;if(!(Hc[f[c>>2]&31](j,f[a>>2]|0)|0)){e=1;return e|0}j=f[a>>2]|0;f[a>>2]=f[h>>2];f[h>>2]=j;e=1;return e|0}case 1:case 0:{e=1;return e|0}default:{j=a+8|0;h=a+4|0;i=Hc[f[c>>2]&31](f[h>>2]|0,f[a>>2]|0)|0;d=Hc[f[c>>2]&31](f[j>>2]|0,f[h>>2]|0)|0;do if(i){g=f[a>>2]|0;if(d){f[a>>2]=f[j>>2];f[j>>2]=g;break}f[a>>2]=f[h>>2];f[h>>2]=g;if(Hc[f[c>>2]&31](f[j>>2]|0,g)|0){g=f[h>>2]|0;f[h>>2]=f[j>>2];f[j>>2]=g}}else if(d?(g=f[h>>2]|0,k=f[j>>2]|0,f[h>>2]=k,f[j>>2]=g,Hc[f[c>>2]&31](k,f[a>>2]|0)|0):0){k=f[a>>2]|0;f[a>>2]=f[h>>2];f[h>>2]=k}while(0);h=a+12|0;if((h|0)==(b|0)){e=1;return e|0}d=h;h=0;i=j;while(1){if(Hc[f[c>>2]&31](f[d>>2]|0,f[i>>2]|0)|0){j=f[d>>2]|0;k=j;g=i;l=d;while(1){f[l>>2]=f[g>>2];if((g|0)==(a|0)){m=a;break}n=g+-4|0;if(Hc[f[c>>2]&31](k,f[n>>2]|0)|0){o=g;g=n;l=o}else{m=g;break}}f[m>>2]=j;g=h+1|0;if((g|0)==8)break;else p=g}else p=h;g=d+4|0;if((g|0)==(b|0)){e=1;q=35;break}else{l=d;d=g;h=p;i=l}}if((q|0)==35)return e|0;e=(d+4|0)==(b|0);return e|0}}return 0}function Vf(a,c){a=a|0;c=c|0;var d=0,e=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=(c|0)==(a|0);b[c+12>>0]=d&1;if(d)return;d=c;while(1){e=d+8|0;g=f[e>>2]|0;h=g+12|0;if(b[h>>0]|0){i=24;break}j=f[g+8>>2]|0;c=f[j>>2]|0;if((c|0)==(g|0)){k=f[j+4>>2]|0;if(!k){i=7;break}l=k+12|0;if(!(b[l>>0]|0))m=l;else{i=7;break}}else{if(!c){i=16;break}l=c+12|0;if(!(b[l>>0]|0))m=l;else{i=16;break}}b[h>>0]=1;b[j+12>>0]=(j|0)==(a|0)&1;b[m>>0]=1;if((j|0)==(a|0)){i=24;break}else d=j}if((i|0)==7){a=g+8|0;if((f[g>>2]|0)==(d|0)){n=h;o=j}else{m=g+4|0;l=f[m>>2]|0;c=f[l>>2]|0;f[m>>2]=c;if(!c)p=j;else{f[c+8>>2]=g;p=f[a>>2]|0}f[l+8>>2]=p;p=f[a>>2]|0;f[((f[p>>2]|0)==(g|0)?p:p+4|0)>>2]=l;f[l>>2]=g;f[a>>2]=l;n=l+12|0;o=f[l+8>>2]|0}b[n>>0]=1;b[o+12>>0]=0;n=f[o>>2]|0;l=n+4|0;a=f[l>>2]|0;f[o>>2]=a;if(a|0)f[a+8>>2]=o;a=o+8|0;f[n+8>>2]=f[a>>2];p=f[a>>2]|0;f[((f[p>>2]|0)==(o|0)?p:p+4|0)>>2]=n;f[l>>2]=o;f[a>>2]=n;return}else if((i|0)==16){n=g+8|0;if((f[g>>2]|0)==(d|0)){a=d+4|0;o=f[a>>2]|0;f[g>>2]=o;if(!o)q=j;else{f[o+8>>2]=g;q=f[n>>2]|0}f[e>>2]=q;q=f[n>>2]|0;f[((f[q>>2]|0)==(g|0)?q:q+4|0)>>2]=d;f[a>>2]=g;f[n>>2]=d;r=d+12|0;s=f[d+8>>2]|0}else{r=h;s=j}b[r>>0]=1;b[s+12>>0]=0;r=s+4|0;j=f[r>>2]|0;h=f[j>>2]|0;f[r>>2]=h;if(h|0)f[h+8>>2]=s;h=s+8|0;f[j+8>>2]=f[h>>2];r=f[h>>2]|0;f[((f[r>>2]|0)==(s|0)?r:r+4|0)>>2]=j;f[j>>2]=s;f[h>>2]=j;return}else if((i|0)==24)return}function Wf(a,b){a=a|0;b=b|0;if(!b)return;else{Wf(a,f[b>>2]|0);Wf(a,f[b+4>>2]|0);Ns(b);return}}function Xf(a,c,d){a=a|0;c=c|0;d=d|0;var e=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,u=0,w=0,x=0,y=0,z=0,A=0,B=0;e=t;t=t+48|0;g=e+32|0;h=e;i=e+28|0;j=e+24|0;k=e+20|0;l=e+8|0;m=Ms(36)|0;n=m;o=n+36|0;do{f[n>>2]=0;n=n+4|0}while((n|0)<(o|0));f[i>>2]=0;f[g>>2]=f[i>>2];_f(a,m,g);m=(b[d+11>>0]|0)<0?f[d>>2]|0:d;f[j>>2]=m;f[k>>2]=0;f[l>>2]=a;f[l+4>>2]=j;f[l+8>>2]=k;a:do if(b[m>>0]|0){d=c+4|0;i=h+4|0;n=m;while(1){o=f[d>>2]|0;v=0;p=fa(f[(f[o>>2]|0)+4>>2]|0,o|0,n|0)|0;o=v;v=0;if(o&1){q=8;break}if(!p){v=0;o=ea(72,n|0)|0;r=v;v=0;if(r&1){q=9;break}f[k>>2]=(f[k>>2]|0)+o;s=n+o|0}else{v=0;sa(148,l|0);o=v;v=0;if(o&1){q=9;break}v=0;o=ea(f[(f[p>>2]|0)+8>>2]|0,p|0)|0;r=v;v=0;if(r&1){q=9;break}r=Yg(o)|0;o=f[a>>2]|0;v=0;u=ea(f[(f[p>>2]|0)+8>>2]|0,p|0)|0;p=v;v=0;if(p&1){q=9;break}f[g>>2]=u;u=o+4|0;f[h>>2]=(f[u>>2]|0)-(f[o>>2]|0)>>2;b[i>>0]=0;p=o+28|0;w=f[p>>2]|0;if(w>>>0>=(f[o+32>>2]|0)>>>0){v=0;ta(68,o+24|0,h|0);x=v;v=0;if(x&1){q=9;break}}else{x=h;y=f[x+4>>2]|0;z=w;f[z>>2]=f[x>>2];f[z+4>>2]=y;f[p>>2]=(f[p>>2]|0)+8}p=f[u>>2]|0;if((p|0)==(f[o+8>>2]|0)){v=0;ta(69,o|0,g|0);o=v;v=0;if(o&1){q=9;break}}else{f[p>>2]=f[g>>2];f[u>>2]=(f[u>>2]|0)+4}u=n+r|0;f[j>>2]=u;s=u}if(!(b[s>>0]|0)){q=3;break a}else n=s}if((q|0)==8){n=Ra()|0;A=n;B=G;break}else if((q|0)==9){n=Ra()|0;A=n;B=G;break}}else q=3;while(0);do if((q|0)==3){v=0;sa(148,l|0);s=v;v=0;if(s&1){s=Ra()|0;A=s;B=G;break}else{t=e;return}}while(0);e=f[a+4>>2]|0;if(!e)_a(A|0);a=e+4|0;B=f[a>>2]|0;f[a>>2]=B+-1;if(B|0)_a(A|0);Uc[f[(f[e>>2]|0)+8>>2]&255](e);Js(e);_a(A|0)}function Yf(a){a=a|0;var b=0,c=0;f[a>>2]=10016;b=f[a+8>>2]|0;if(!b)return;a=b+4|0;c=f[a>>2]|0;f[a>>2]=c+-1;if(c|0)return;Uc[f[(f[b>>2]|0)+8>>2]&255](b);Js(b);return}function Zf(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=10016;b=f[a+8>>2]|0;if(!b){Ns(a);return}c=b+4|0;d=f[c>>2]|0;f[c>>2]=d+-1;if(d|0){Ns(a);return}Uc[f[(f[b>>2]|0)+8>>2]&255](b);Js(b);Ns(a);return}function _f(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;d=t;t=t+16|0;e=d;f[a>>2]=c;v=0;g=ea(71,16)|0;h=v;v=0;if(!(h&1)){f[g+4>>2]=0;f[g+8>>2]=0;f[g>>2]=10036;f[g+12>>2]=c;f[a+4>>2]=g;f[e>>2]=c;f[e+4>>2]=c;cg(a,e);t=d;return}d=Ra()|0;if(!c)_a(d|0);e=f[c+24>>2]|0;if(e|0){f[c+28>>2]=e;Ns(e)}e=c+12|0;a=f[e>>2]|0;if(a|0){g=c+16|0;h=f[g>>2]|0;if((h|0)==(a|0))i=a;else{j=h;do{j=j+-12|0;if((b[j+11>>0]|0)<0)Ns(f[j>>2]|0)}while((j|0)!=(a|0));i=f[e>>2]|0}f[g>>2]=a;Ns(i)}i=f[c>>2]|0;if(i|0){f[c+4>>2]=i;Ns(i)}Ns(c);_a(d|0)}function $f(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;c=t;t=t+32|0;d=c;e=c+8|0;g=a+8|0;h=f[f[g>>2]>>2]|0;if(!h){t=c;return}i=f[f[a>>2]>>2]|0;j=f[f[a+4>>2]>>2]|0;f[e>>2]=0;f[e+4>>2]=0;f[e+8>>2]=0;v=0;ua(12,e|0,h|0,0);a=v;v=0;if(a&1){a=Ra()|0;if((b[e+11>>0]|0)>=0)_a(a|0);Ns(f[e>>2]|0);_a(a|0)}a=e+11|0;Ii((b[a>>0]|0)<0?f[e>>2]|0:e,j,h)|0;h=i+12|0;j=i+16|0;f[d>>2]=((f[j>>2]|0)-(f[h>>2]|0)|0)/12|0;b[d+4>>0]=1;k=i+28|0;l=f[k>>2]|0;if(l>>>0>=(f[i+32>>2]|0)>>>0){v=0;ta(68,i+24|0,d|0);m=v;v=0;if(!(m&1))n=9}else{m=d;d=f[m+4>>2]|0;o=l;f[o>>2]=f[m>>2];f[o+4>>2]=d;f[k>>2]=(f[k>>2]|0)+8;n=9}do if((n|0)==9){k=f[j>>2]|0;if((k|0)==(f[i+20>>2]|0)){v=0;ta(55,h|0,e|0);d=v;v=0;if(d&1)break}else{v=0;ta(52,k|0,e|0);k=v;v=0;if(k&1)break;f[j>>2]=(f[j>>2]|0)+12}if((b[a>>0]|0)<0)Ns(f[e>>2]|0);f[f[g>>2]>>2]=0;t=c;return}while(0);c=Ra()|0;if((b[a>>0]|0)>=0)_a(c|0);Ns(f[e>>2]|0);_a(c|0)}function ag(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c=a+4|0;d=f[a>>2]|0;e=(f[c>>2]|0)-d|0;g=e>>3;h=g+1|0;if(h>>>0>536870911)Pt(a);i=a+8|0;j=(f[i>>2]|0)-d|0;k=j>>2;l=j>>3>>>0<268435455?(k>>>0<h>>>0?h:k):536870911;do if(l){if(l>>>0<=536870911){k=Ms(l<<3)|0;m=k;n=k;break}k=Na(8)|0;v=0;ta(57,k|0,20286);h=v;v=0;if(h&1){h=Ra()|0;Ta(k|0);_a(h|0)}else{f[k>>2]=13812;Va(k|0,9184,130)}}else{m=0;n=0}while(0);k=m+(g<<3)|0;g=b;b=f[g+4>>2]|0;h=k;f[h>>2]=f[g>>2];f[h+4>>2]=b;if((e|0)>0)mv(n|0,d|0,e|0)|0;f[a>>2]=m;f[c>>2]=k+8;f[i>>2]=m+(l<<3);if(!d)return;Ns(d);return}function bg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c=a+4|0;d=f[a>>2]|0;e=(f[c>>2]|0)-d|0;g=e>>2;h=g+1|0;if(h>>>0>1073741823)Pt(a);i=a+8|0;j=(f[i>>2]|0)-d|0;k=j>>1;l=j>>2>>>0<536870911?(k>>>0<h>>>0?h:k):1073741823;do if(l){if(l>>>0<=1073741823){k=Ms(l<<2)|0;m=k;n=k;break}k=Na(8)|0;v=0;ta(57,k|0,20286);h=v;v=0;if(h&1){h=Ra()|0;Ta(k|0);_a(h|0)}else{f[k>>2]=13812;Va(k|0,9184,130)}}else{m=0;n=0}while(0);k=m+(g<<2)|0;f[k>>2]=f[b>>2];if((e|0)>0)mv(n|0,d|0,e|0)|0;f[a>>2]=m;f[c>>2]=k+4;f[i>>2]=m+(l<<2);if(!d)return;Ns(d);return}function cg(a,b){a=a|0;b=b|0;return}function dg(a){a=a|0;Is(a);Ns(a);return}function eg(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0;c=f[a+12>>2]|0;if(!c)return;a=f[c+24>>2]|0;if(a|0){f[c+28>>2]=a;Ns(a)}a=c+12|0;d=f[a>>2]|0;if(d|0){e=c+16|0;g=f[e>>2]|0;if((g|0)==(d|0))h=d;else{i=g;do{i=i+-12|0;if((b[i+11>>0]|0)<0)Ns(f[i>>2]|0)}while((i|0)!=(d|0));h=f[a>>2]|0}f[e>>2]=d;Ns(h)}h=f[c>>2]|0;if(h|0){f[c+4>>2]=h;Ns(h)}Ns(c);return}function fg(a,b){a=a|0;b=b|0;return ((f[b+4>>2]|0)==16086?a+12|0:0)|0}function gg(a){a=a|0;Ns(a);return}function hg(a,c){a=a|0;c=c|0;var d=0,e=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,u=0,w=0,x=0,y=0,z=0,A=0,B=0;d=t;t=t+32|0;e=d+16|0;g=d;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;h=Yg(c)|0;if(h>>>0>4294967279)Vs(g);if(h>>>0<11){b[g+11>>0]=h;if(!h)i=g;else{j=g;k=6}}else{l=h+16&-16;m=Ms(l)|0;f[g>>2]=m;f[g+8>>2]=l|-2147483648;f[g+4>>2]=h;j=m;k=6}if((k|0)==6){mv(j|0,c|0,h|0)|0;i=j}b[i+h>>0]=0;f[e>>2]=9980;h=e+4|0;v=0;ta(52,h|0,g|0);i=v;v=0;if(i&1){i=Ra()|0;j=G;if((b[g+11>>0]|0)<0)Ns(f[g>>2]|0);n=i;o=j;_a(n|0)}if((b[g+11>>0]|0)<0)Ns(f[g>>2]|0);g=a+12|0;a=f[g>>2]|0;j=f[a>>2]|0;i=f[a+4>>2]|0;a=i-j|0;do if(a){c=a>>2;m=j;l=j;while(1){p=(c|0)/2|0;q=l+(p<<2)|0;r=f[q>>2]|0;v=0;s=ea(f[(f[r>>2]|0)+8>>2]|0,r|0)|0;r=v;v=0;if(r&1){k=24;break}v=0;r=ea(f[(f[e>>2]|0)+8>>2]|0,e|0)|0;u=v;v=0;if(u&1){k=24;break}u=(Vg(s,r)|0)<0;r=q+4|0;m=u?r:m;c=u?c+-1-p|0:p;if(!c){k=15;break}else l=u?r:l}if((k|0)==15){w=m;x=f[(f[g>>2]|0)+4>>2]|0;k=16;break}else if((k|0)==24){l=Ra()|0;y=l;z=G;break}}else{w=j;x=i;k=16}while(0);do if((k|0)==16){if((w|0)!=(x|0)){i=f[w>>2]|0;v=0;j=ea(f[(f[i>>2]|0)+8>>2]|0,i|0)|0;i=v;v=0;if(i&1){i=Ra()|0;y=i;z=G;break}i=b[h+11>>0]|0;if(!(Vg(j,i<<24>>24<0?f[h>>2]|0:h)|0)){A=f[w>>2]|0;B=i}else{A=0;B=i}}else{A=0;B=b[h+11>>0]|0}f[e>>2]=9980;if(B<<24>>24>=0){t=d;return A|0}Ns(f[h>>2]|0);t=d;return A|0}while(0);f[e>>2]=9980;if((b[h+11>>0]|0)>=0){n=y;o=z;_a(n|0)}Ns(f[h>>2]|0);n=y;o=z;_a(n|0);return 0}function ig(a){a=a|0;return f[a+8>>2]|0}function jg(a,b){a=a|0;b=b|0;var c=0;f[a>>2]=f[b+12>>2];c=f[b+16>>2]|0;f[a+4>>2]=c;if(!c)return;a=c+4|0;f[a>>2]=(f[a>>2]|0)+1;return}function kg(a){a=a|0;var b=0,c=0;f[a>>2]=10064;f[a+4>>2]=10104;b=f[a+16>>2]|0;if(!b)return;a=b+4|0;c=f[a>>2]|0;f[a>>2]=c+-1;if(c|0)return;Uc[f[(f[b>>2]|0)+8>>2]&255](b);Js(b);return}function lg(a){a=a|0;var b=0,c=0,d=0;f[a>>2]=10064;f[a+4>>2]=10104;b=f[a+16>>2]|0;if(!b){Ns(a);return}c=b+4|0;d=f[c>>2]|0;f[c>>2]=d+-1;if(d|0){Ns(a);return}Uc[f[(f[b>>2]|0)+8>>2]&255](b);Js(b);Ns(a);return}function mg(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=t;t=t+16|0;e=d;g=d+4|0;h=f[a+12>>2]|0;a=f[h>>2]|0;i=f[h+4>>2]|0;if((a|0)==(i|0)){t=d;return}h=g+11|0;j=a;do{a=f[j>>2]|0;Vc[f[(f[a>>2]|0)+24>>2]&127](g,a);f[e>>2]=(b[h>>0]|0)<0?f[g>>2]|0:g;Vh(c,16283,e)|0;if((b[h>>0]|0)<0)Ns(f[g>>2]|0);j=j+4|0}while((j|0)!=(i|0));t=d;return}function ng(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=t;t=t+16|0;e=d;g=d+4|0;h=f[a+-4+12>>2]|0;a=f[h>>2]|0;i=f[h+4>>2]|0;if((a|0)==(i|0)){t=d;return}h=g+11|0;j=a;do{a=f[j>>2]|0;Vc[f[(f[a>>2]|0)+24>>2]&127](g,a);f[e>>2]=(b[h>>0]|0)<0?f[g>>2]|0:g;Vh(c,16283,e)|0;if((b[h>>0]|0)<0)Ns(f[g>>2]|0);j=j+4|0}while((j|0)!=(i|0));t=d;return}function og(a,b){a=a|0;b=b|0;ye(a,b);return}function pg(a,b){a=a|0;b=b|0;f[a>>2]=9944;f[a+4>>2]=0;qg(a+8|0,b);return}function qg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;f[a>>2]=a;c=a+4|0;f[c>>2]=a;d=a+8|0;f[d>>2]=0;e=f[b+4>>2]|0;g=e;if((b|0)==(g|0))return;h=e;e=0;i=a;j=g;while(1){g=h;v=0;k=ea(71,16)|0;l=v;v=0;if(l&1)break;f[k>>2]=0;f[k+8>>2]=f[g+8>>2];l=f[g+12>>2]|0;f[k+12>>2]=l;if(!l){m=i;n=e}else{g=l+4|0;f[g>>2]=(f[g>>2]|0)+1;m=f[a>>2]|0;n=f[d>>2]|0}f[k+4>>2]=a;f[k>>2]=m;f[m+4>>2]=k;f[a>>2]=k;g=n+1|0;f[d>>2]=g;h=f[j+4>>2]|0;j=h;if((b|0)==(j|0)){o=3;break}else{e=g;i=k}}if((o|0)==3)return;o=Ra()|0;if(!e)_a(o|0);e=f[c>>2]|0;c=i+4|0;i=f[e>>2]|0;f[i+4>>2]=f[c>>2];f[f[c>>2]>>2]=i;f[d>>2]=0;if((e|0)==(a|0))_a(o|0);d=e;do{e=d;d=f[d+4>>2]|0;i=f[e+12>>2]|0;if(i|0?(c=i+4|0,j=f[c>>2]|0,f[c>>2]=j+-1,(j|0)==0):0){Uc[f[(f[i>>2]|0)+8>>2]&255](i);Js(i)}Ns(e)}while((d|0)!=(a|0));_a(o|0)}function rg(a,c,d){a=a|0;c=c|0;d=d|0;var e=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,u=0,w=0,x=0,y=0;e=t;t=t+160|0;g=e+16|0;h=e;i=g+56|0;j=g+4|0;f[g>>2]=7188;f[i>>2]=7208;Qj(g+56|0,j);f[g+128>>2]=0;f[g+132>>2]=-1;f[g>>2]=9508;f[i>>2]=9528;Uj(j);f[j>>2]=9560;k=g+36|0;f[k>>2]=0;f[k+4>>2]=0;f[k+8>>2]=0;f[k+12>>2]=0;f[g+52>>2]=16;a:do if(!(b[d>>0]|0))l=3;else{m=h+11|0;n=h+4|0;o=d;while(1){p=f[c>>2]|0;v=0;q=fa(f[(f[p>>2]|0)+4>>2]|0,p|0,o|0)|0;p=v;v=0;if(p&1){l=14;break}if(q){v=0;p=ea(f[(f[q>>2]|0)+8>>2]|0,q|0)|0;r=v;v=0;if(r&1){l=15;break}r=Yg(p)|0;v=0;p=ea(f[(f[q>>2]|0)+16>>2]|0,q|0)|0;q=v;v=0;if(q&1){l=15;break}q=Yg(p)|0;v=0;ga(27,g|0,p|0,q|0)|0;q=v;v=0;if(q&1){l=15;break}else s=r}else{v=0;r=ea(72,o|0)|0;q=v;v=0;if(q&1){l=15;break};f[h>>2]=0;f[h+4>>2]=0;f[h+8>>2]=0;v=0;ua(12,h|0,r|0,0);q=v;v=0;if(q&1){l=8;break}Ii((b[m>>0]|0)<0?f[h>>2]|0:h,o,r)|0;q=b[m>>0]|0;p=q<<24>>24<0;v=0;ga(27,g|0,(p?f[h>>2]|0:h)|0,(p?f[n>>2]|0:q&255)|0)|0;q=v;v=0;if(q&1){l=17;break}if((b[m>>0]|0)<0)Ns(f[h>>2]|0);s=r}o=o+s|0;if(!(b[o>>0]|0)){l=3;break a}}if((l|0)==8){o=Ra()|0;n=G;if((b[m>>0]|0)<0)Ns(f[h>>2]|0);u=n;w=o}else if((l|0)==14){o=Ra()|0;x=G;y=o;break}else if((l|0)==15){o=Ra()|0;x=G;y=o;break}else if((l|0)==17){o=Ra()|0;n=G;if((b[m>>0]|0)<0){Ns(f[h>>2]|0);u=n;w=o}else{u=n;w=o}}x=u;y=w}while(0);do if((l|0)==3){v=0;ta(58,a|0,j|0);w=v;v=0;if(w&1){w=Ra()|0;x=G;y=w;break}f[g>>2]=9508;f[i>>2]=9528;f[j>>2]=9560;if((b[k+11>>0]|0)>=0){hj(j);Gj(g,9540);dj(i);t=e;return}Ns(f[k>>2]|0);hj(j);Gj(g,9540);dj(i);t=e;return}while(0);f[g>>2]=9508;f[i>>2]=9528;f[j>>2]=9560;if((b[k+11>>0]|0)>=0){hj(j);Gj(g,9540);dj(i);_a(y|0)}Ns(f[k>>2]|0);hj(j);Gj(g,9540);dj(i);_a(y|0)}function sg(a,c,d){a=a|0;c=c|0;d=d|0;var e=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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;e=t;t=t+32|0;g=e;h=e+20|0;i=e+8|0;j=Ms(36)|0;k=j;l=k+36|0;do{f[k>>2]=0;k=k+4|0}while((k|0)<(l|0));f[h>>2]=0;f[g>>2]=f[h>>2];_f(a,j,g);j=f[d>>2]|0;d=f[j+24>>2]|0;h=(f[j+28>>2]|0)-d|0;k=h>>3;if(!h){t=e;return}h=j+24|0;l=j+12|0;m=g+4|0;n=i+11|0;o=0;p=d;while(1){d=f[p+(o<<3)>>2]|0;do if(b[p+(o<<3)+4>>0]|0){q=(f[l>>2]|0)+(d*12|0)|0;if((b[q+11>>0]|0)<0){r=f[q>>2]|0;break}else{r=q;break}}else r=f[(f[j>>2]|0)+(d<<2)>>2]|0;while(0);d=f[a>>2]|0;v=0;ua(17,i|0,c|0,r|0);q=v;v=0;if(q&1){s=21;break}q=d+12|0;u=d+16|0;f[g>>2]=((f[u>>2]|0)-(f[q>>2]|0)|0)/12|0;b[m>>0]=1;w=d+28|0;x=f[w>>2]|0;if(x>>>0>=(f[d+32>>2]|0)>>>0){v=0;ta(68,d+24|0,g|0);y=v;v=0;if(y&1){s=22;break}}else{y=g;z=f[y+4>>2]|0;A=x;f[A>>2]=f[y>>2];f[A+4>>2]=z;f[w>>2]=(f[w>>2]|0)+8}w=f[u>>2]|0;if((w|0)==(f[d+20>>2]|0)){v=0;ta(55,q|0,i|0);q=v;v=0;if(q&1){s=22;break}}else{v=0;ta(52,w|0,i|0);w=v;v=0;if(w&1){s=22;break}f[u>>2]=(f[u>>2]|0)+12}if((b[n>>0]|0)<0)Ns(f[i>>2]|0);u=o+1|0;if((u|0)==(k|0)){s=3;break}o=u;p=f[h>>2]|0}if((s|0)==3){t=e;return}else if((s|0)==21){e=Ra()|0;B=e;C=G}else if((s|0)==22){s=Ra()|0;e=G;if((b[n>>0]|0)<0){Ns(f[i>>2]|0);B=s;C=e}else{B=s;C=e}}e=f[a+4>>2]|0;if(!e)_a(B|0);a=e+4|0;C=f[a>>2]|0;f[a>>2]=C+-1;if(C|0)_a(B|0);Uc[f[(f[e>>2]|0)+8>>2]&255](e);Js(e);_a(B|0)}function tg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=t;t=t+16|0;e=d;f[a>>2]=f[c>>2];g=a+4|0;h=f[c+4>>2]|0;f[g>>2]=h;if(h|0){c=h+4|0;f[c>>2]=(f[c>>2]|0)+1}c=f[b+4>>2]|0;h=c;if((b|0)==(h|0)){t=d;return}i=e+4|0;j=c;c=h;while(1){h=j;k=f[h+8>>2]|0;l=f[h+12>>2]|0;m=(l|0)==0;if(!m){h=l+4|0;f[h>>2]=(f[h>>2]|0)+1}v=0;ua(18,e|0,k|0,a|0);k=v;v=0;if(k&1)break;k=f[e>>2]|0;h=f[i>>2]|0;f[e>>2]=0;f[i>>2]=0;f[a>>2]=k;k=f[g>>2]|0;f[g>>2]=h;if(k|0){h=k+4|0;n=f[h>>2]|0;f[h>>2]=n+-1;if(!n){Uc[f[(f[k>>2]|0)+8>>2]&255](k);Js(k)}k=f[i>>2]|0;if(k|0?(n=k+4|0,h=f[n>>2]|0,f[n>>2]=h+-1,(h|0)==0):0){Uc[f[(f[k>>2]|0)+8>>2]&255](k);Js(k)}}if(!m?(k=l+4|0,h=f[k>>2]|0,f[k>>2]=h+-1,(h|0)==0):0){Uc[f[(f[l>>2]|0)+8>>2]&255](l);Js(l)}j=f[c+4>>2]|0;c=j;if((b|0)==(c|0)){o=5;break}}if((o|0)==5){t=d;return}d=Ra()|0;if(!m?(m=l+4|0,o=f[m>>2]|0,f[m>>2]=o+-1,(o|0)==0):0){Uc[f[(f[l>>2]|0)+8>>2]&255](l);Js(l)}l=f[g>>2]|0;if(!l)_a(d|0);g=l+4|0;o=f[g>>2]|0;f[g>>2]=o+-1;if(o|0)_a(d|0);Uc[f[(f[l>>2]|0)+8>>2]&255](l);Js(l);_a(d|0)}function ug(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=t;t=t+16|0;e=d+8|0;g=d;h=f[b+12>>2]|0;Wc[f[f[h>>2]>>2]&31](e,h,c);v=0;ua(19,g|0,f[b+20>>2]|0,e|0);b=v;v=0;do if(b&1){c=Ra()|0;i=G;j=c}else{v=0;ta(70,a|0,f[g>>2]|0);c=v;v=0;if(c&1){c=Ra()|0;h=G;k=f[g+4>>2]|0;if(k|0?(l=k+4|0,m=f[l>>2]|0,f[l>>2]=m+-1,(m|0)==0):0){Uc[f[(f[k>>2]|0)+8>>2]&255](k);Js(k)}i=h;j=c;break}c=f[g+4>>2]|0;if(c|0?(h=c+4|0,k=f[h>>2]|0,f[h>>2]=k+-1,(k|0)==0):0){Uc[f[(f[c>>2]|0)+8>>2]&255](c);Js(c)}c=f[e+4>>2]|0;if(!c){t=d;return}k=c+4|0;h=f[k>>2]|0;f[k>>2]=h+-1;if(h|0){t=d;return}Uc[f[(f[c>>2]|0)+8>>2]&255](c);Js(c);t=d;return}while(0);d=f[e+4>>2]|0;if(!d)_a(j|0);e=d+4|0;g=f[e>>2]|0;f[e>>2]=g+-1;if(g|0)_a(j|0);Uc[f[(f[d>>2]|0)+8>>2]&255](d);Js(d);_a(j|0)}function vg(a,c){a=a|0;c=c|0;var d=0,e=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,u=0,w=0,x=0;d=t;t=t+144|0;e=d;g=e+56|0;h=e+4|0;f[e>>2]=7188;f[g>>2]=7208;Qj(e+56|0,h);f[e+128>>2]=0;f[e+132>>2]=-1;f[e>>2]=9508;f[g>>2]=9528;Uj(h);f[h>>2]=9560;i=e+36|0;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;f[i+12>>2]=0;f[e+52>>2]=16;j=f[c+24>>2]|0;k=(f[c+28>>2]|0)-j|0;l=k>>3;a:do if(!k)m=3;else{n=c+24|0;o=c+12|0;p=0;q=j;while(1){r=f[q+(p<<3)>>2]|0;do if(b[q+(p<<3)+4>>0]|0){s=(f[o>>2]|0)+(r*12|0)|0;if((b[s+11>>0]|0)<0){u=f[s>>2]|0;break}else{u=s;break}}else u=f[(f[c>>2]|0)+(r<<2)>>2]|0;while(0);r=Yg(u)|0;v=0;ga(27,e|0,u|0,r|0)|0;r=v;v=0;if(r&1)break;r=p+1|0;if((r|0)==(l|0)){m=3;break a}p=r;q=f[n>>2]|0}n=Ra()|0;w=n;x=G}while(0);do if((m|0)==3){v=0;ta(58,a|0,h|0);l=v;v=0;if(l&1){l=Ra()|0;w=l;x=G;break}f[e>>2]=9508;f[g>>2]=9528;f[h>>2]=9560;if((b[i+11>>0]|0)>=0){hj(h);Gj(e,9540);dj(g);t=d;return}Ns(f[i>>2]|0);hj(h);Gj(e,9540);dj(g);t=d;return}while(0);f[e>>2]=9508;f[g>>2]=9528;f[h>>2]=9560;if((b[i+11>>0]|0)>=0){hj(h);Gj(e,9540);dj(g);_a(w|0)}Ns(f[i>>2]|0);hj(h);Gj(e,9540);dj(g);_a(w|0)}function wg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;f[a>>2]=10064;f[a+4>>2]=10104;c=a+8|0;d=f[b>>2]|0;e=f[d>>2]|0;g=f[d+4>>2]|0;if((e|0)==(g|0)){h=0;i=d}else{d=0;j=e;do{e=f[j>>2]|0;k=Yg(Gc[f[(f[e>>2]|0)+8>>2]&127](e)|0)|0;d=k>>>0<d>>>0?d:k;j=j+4|0}while((j|0)!=(g|0));h=d;i=f[b>>2]|0}f[c>>2]=h;f[a+12>>2]=i;i=f[b+4>>2]|0;f[a+16>>2]=i;if(!i)return;a=i+4|0;f[a>>2]=(f[a>>2]|0)+1;return}function xg(){yg(0);return}function yg(a){a=a|0;vb(9280,16306);lb(9296,16311,1,1,0);rb(9304,16316,1,-128,127);rb(9320,16321,1,-128,127);rb(9312,16333,1,0,255);rb(9328,16347,2,-32768,32767);rb(9336,16353,2,0,65535);rb(9344,16368,4,-2147483648,2147483647);rb(9352,16372,4,0,-1);rb(9360,16385,4,-2147483648,2147483647);rb(9368,16390,4,0,-1);qb(9376,16404,4);qb(9384,16410,8);tb(7464,16417);tb(7640,16429);ub(7664,4,16462);pb(7688,16475);sb(7696,0,16491);sb(7704,0,16521);sb(7712,1,16558);sb(7720,2,16597);sb(7728,3,16628);sb(7736,4,16668);sb(7744,5,16697);sb(7752,4,16735);sb(7760,5,16765);sb(7704,0,16804);sb(7712,1,16836);sb(7720,2,16869);sb(7728,3,16902);sb(7736,4,16936);sb(7744,5,16969);sb(7768,6,17003);sb(7776,7,17034);sb(7784,7,17066);return}function zg(a){a=a|0;return ri(f[a+4>>2]|0)|0}function Ag(a){a=a|0;var b=0,c=0,d=0,e=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,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;b=t;t=t+16|0;c=b;do if(a>>>0<245){d=a>>>0<11?16:a+11&-8;e=d>>>3;g=f[6176]|0;h=g>>>e;if(h&3|0){i=(h&1^1)+e|0;j=24744+(i<<1<<2)|0;k=j+8|0;l=f[k>>2]|0;m=l+8|0;n=f[m>>2]|0;if((n|0)==(j|0))f[6176]=g&~(1<<i);else{f[n+12>>2]=j;f[k>>2]=n}n=i<<3;f[l+4>>2]=n|3;i=l+n+4|0;f[i>>2]=f[i>>2]|1;o=m;t=b;return o|0}m=f[6178]|0;if(d>>>0>m>>>0){if(h|0){i=2<<e;n=h<<e&(i|0-i);i=(n&0-n)+-1|0;n=i>>>12&16;e=i>>>n;i=e>>>5&8;h=e>>>i;e=h>>>2&4;l=h>>>e;h=l>>>1&2;k=l>>>h;l=k>>>1&1;j=(i|n|e|h|l)+(k>>>l)|0;l=24744+(j<<1<<2)|0;k=l+8|0;h=f[k>>2]|0;e=h+8|0;n=f[e>>2]|0;if((n|0)==(l|0)){i=g&~(1<<j);f[6176]=i;p=i}else{f[n+12>>2]=l;f[k>>2]=n;p=g}n=j<<3;j=n-d|0;f[h+4>>2]=d|3;k=h+d|0;f[k+4>>2]=j|1;f[h+n>>2]=j;if(m|0){n=f[6181]|0;h=m>>>3;l=24744+(h<<1<<2)|0;i=1<<h;if(!(p&i)){f[6176]=p|i;q=l;r=l+8|0}else{i=l+8|0;q=f[i>>2]|0;r=i}f[r>>2]=n;f[q+12>>2]=n;f[n+8>>2]=q;f[n+12>>2]=l}f[6178]=j;f[6181]=k;o=e;t=b;return o|0}e=f[6177]|0;if(e){k=(e&0-e)+-1|0;j=k>>>12&16;l=k>>>j;k=l>>>5&8;n=l>>>k;l=n>>>2&4;i=n>>>l;n=i>>>1&2;h=i>>>n;i=h>>>1&1;s=f[25008+((k|j|l|n|i)+(h>>>i)<<2)>>2]|0;i=s;h=s;n=(f[s+4>>2]&-8)-d|0;while(1){s=f[i+16>>2]|0;if(!s){l=f[i+20>>2]|0;if(!l)break;else u=l}else u=s;s=(f[u+4>>2]&-8)-d|0;l=s>>>0<n>>>0;i=u;h=l?u:h;n=l?s:n}i=h+d|0;if(i>>>0>h>>>0){s=f[h+24>>2]|0;l=f[h+12>>2]|0;do if((l|0)==(h|0)){j=h+20|0;k=f[j>>2]|0;if(!k){v=h+16|0;w=f[v>>2]|0;if(!w){x=0;break}else{y=w;z=v}}else{y=k;z=j}j=y;k=z;while(1){v=j+20|0;w=f[v>>2]|0;if(!w){A=j+16|0;B=f[A>>2]|0;if(!B)break;else{C=B;D=A}}else{C=w;D=v}j=C;k=D}f[k>>2]=0;x=j}else{v=f[h+8>>2]|0;f[v+12>>2]=l;f[l+8>>2]=v;x=l}while(0);do if(s|0){l=f[h+28>>2]|0;v=25008+(l<<2)|0;if((h|0)==(f[v>>2]|0)){f[v>>2]=x;if(!x){f[6177]=e&~(1<<l);break}}else{l=s+16|0;f[((f[l>>2]|0)==(h|0)?l:s+20|0)>>2]=x;if(!x)break}f[x+24>>2]=s;l=f[h+16>>2]|0;if(l|0){f[x+16>>2]=l;f[l+24>>2]=x}l=f[h+20>>2]|0;if(l|0){f[x+20>>2]=l;f[l+24>>2]=x}}while(0);if(n>>>0<16){s=n+d|0;f[h+4>>2]=s|3;e=h+s+4|0;f[e>>2]=f[e>>2]|1}else{f[h+4>>2]=d|3;f[i+4>>2]=n|1;f[i+n>>2]=n;if(m|0){e=f[6181]|0;s=m>>>3;l=24744+(s<<1<<2)|0;v=1<<s;if(!(v&g)){f[6176]=v|g;E=l;F=l+8|0}else{v=l+8|0;E=f[v>>2]|0;F=v}f[F>>2]=e;f[E+12>>2]=e;f[e+8>>2]=E;f[e+12>>2]=l}f[6178]=n;f[6181]=i}o=h+8|0;t=b;return o|0}else G=d}else G=d}else G=d}else if(a>>>0<=4294967231){l=a+11|0;e=l&-8;v=f[6177]|0;if(v){s=0-e|0;w=l>>>8;if(w)if(e>>>0>16777215)H=31;else{l=(w+1048320|0)>>>16&8;A=w<<l;w=(A+520192|0)>>>16&4;B=A<<w;A=(B+245760|0)>>>16&2;I=14-(w|l|A)+(B<<A>>>15)|0;H=e>>>(I+7|0)&1|I<<1}else H=0;I=f[25008+(H<<2)>>2]|0;a:do if(!I){J=0;K=0;L=s;M=61}else{A=0;B=s;l=I;w=e<<((H|0)==31?0:25-(H>>>1)|0);N=0;while(1){O=(f[l+4>>2]&-8)-e|0;if(O>>>0<B>>>0)if(!O){P=l;Q=0;R=l;M=65;break a}else{S=l;T=O}else{S=A;T=B}O=f[l+20>>2]|0;l=f[l+16+(w>>>31<<2)>>2]|0;U=(O|0)==0|(O|0)==(l|0)?N:O;if(!l){J=U;K=S;L=T;M=61;break}else{A=S;B=T;w=w<<1;N=U}}}while(0);if((M|0)==61){if((J|0)==0&(K|0)==0){I=2<<H;s=(I|0-I)&v;if(!s){G=e;break}I=(s&0-s)+-1|0;s=I>>>12&16;d=I>>>s;I=d>>>5&8;h=d>>>I;d=h>>>2&4;i=h>>>d;h=i>>>1&2;n=i>>>h;i=n>>>1&1;V=0;W=f[25008+((I|s|d|h|i)+(n>>>i)<<2)>>2]|0}else{V=K;W=J}if(!W){X=V;Y=L}else{P=V;Q=L;R=W;M=65}}if((M|0)==65){i=P;n=Q;h=R;while(1){d=(f[h+4>>2]&-8)-e|0;s=d>>>0<n>>>0;I=s?d:n;d=s?h:i;s=f[h+16>>2]|0;if(!s)Z=f[h+20>>2]|0;else Z=s;if(!Z){X=d;Y=I;break}else{i=d;n=I;h=Z}}}if(((X|0)!=0?Y>>>0<((f[6178]|0)-e|0)>>>0:0)?(h=X+e|0,h>>>0>X>>>0):0){n=f[X+24>>2]|0;i=f[X+12>>2]|0;do if((i|0)==(X|0)){I=X+20|0;d=f[I>>2]|0;if(!d){s=X+16|0;g=f[s>>2]|0;if(!g){_=0;break}else{$=g;aa=s}}else{$=d;aa=I}I=$;d=aa;while(1){s=I+20|0;g=f[s>>2]|0;if(!g){m=I+16|0;N=f[m>>2]|0;if(!N)break;else{ba=N;ca=m}}else{ba=g;ca=s}I=ba;d=ca}f[d>>2]=0;_=I}else{s=f[X+8>>2]|0;f[s+12>>2]=i;f[i+8>>2]=s;_=i}while(0);do if(n){i=f[X+28>>2]|0;s=25008+(i<<2)|0;if((X|0)==(f[s>>2]|0)){f[s>>2]=_;if(!_){s=v&~(1<<i);f[6177]=s;da=s;break}}else{s=n+16|0;f[((f[s>>2]|0)==(X|0)?s:n+20|0)>>2]=_;if(!_){da=v;break}}f[_+24>>2]=n;s=f[X+16>>2]|0;if(s|0){f[_+16>>2]=s;f[s+24>>2]=_}s=f[X+20>>2]|0;if(s){f[_+20>>2]=s;f[s+24>>2]=_;da=v}else da=v}else da=v;while(0);b:do if(Y>>>0<16){v=Y+e|0;f[X+4>>2]=v|3;n=X+v+4|0;f[n>>2]=f[n>>2]|1}else{f[X+4>>2]=e|3;f[h+4>>2]=Y|1;f[h+Y>>2]=Y;n=Y>>>3;if(Y>>>0<256){v=24744+(n<<1<<2)|0;s=f[6176]|0;i=1<<n;if(!(s&i)){f[6176]=s|i;ea=v;fa=v+8|0}else{i=v+8|0;ea=f[i>>2]|0;fa=i}f[fa>>2]=h;f[ea+12>>2]=h;f[h+8>>2]=ea;f[h+12>>2]=v;break}v=Y>>>8;if(v)if(Y>>>0>16777215)ga=31;else{i=(v+1048320|0)>>>16&8;s=v<<i;v=(s+520192|0)>>>16&4;n=s<<v;s=(n+245760|0)>>>16&2;g=14-(v|i|s)+(n<<s>>>15)|0;ga=Y>>>(g+7|0)&1|g<<1}else ga=0;g=25008+(ga<<2)|0;f[h+28>>2]=ga;s=h+16|0;f[s+4>>2]=0;f[s>>2]=0;s=1<<ga;if(!(da&s)){f[6177]=da|s;f[g>>2]=h;f[h+24>>2]=g;f[h+12>>2]=h;f[h+8>>2]=h;break}s=f[g>>2]|0;c:do if((f[s+4>>2]&-8|0)==(Y|0))ha=s;else{g=Y<<((ga|0)==31?0:25-(ga>>>1)|0);n=s;while(1){ia=n+16+(g>>>31<<2)|0;i=f[ia>>2]|0;if(!i)break;if((f[i+4>>2]&-8|0)==(Y|0)){ha=i;break c}else{g=g<<1;n=i}}f[ia>>2]=h;f[h+24>>2]=n;f[h+12>>2]=h;f[h+8>>2]=h;break b}while(0);s=ha+8|0;I=f[s>>2]|0;f[I+12>>2]=h;f[s>>2]=h;f[h+8>>2]=I;f[h+12>>2]=ha;f[h+24>>2]=0}while(0);o=X+8|0;t=b;return o|0}else G=e}else G=e}else G=-1;while(0);X=f[6178]|0;if(X>>>0>=G>>>0){ha=X-G|0;ia=f[6181]|0;if(ha>>>0>15){Y=ia+G|0;f[6181]=Y;f[6178]=ha;f[Y+4>>2]=ha|1;f[ia+X>>2]=ha;f[ia+4>>2]=G|3}else{f[6178]=0;f[6181]=0;f[ia+4>>2]=X|3;ha=ia+X+4|0;f[ha>>2]=f[ha>>2]|1}o=ia+8|0;t=b;return o|0}ia=f[6179]|0;if(ia>>>0>G>>>0){ha=ia-G|0;f[6179]=ha;X=f[6182]|0;Y=X+G|0;f[6182]=Y;f[Y+4>>2]=ha|1;f[X+4>>2]=G|3;o=X+8|0;t=b;return o|0}if(!(f[6294]|0)){f[6296]=4096;f[6295]=4096;f[6297]=-1;f[6298]=-1;f[6299]=0;f[6287]=0;f[6294]=c&-16^1431655768;ja=4096}else ja=f[6296]|0;c=G+48|0;X=G+47|0;ha=ja+X|0;Y=0-ja|0;ja=ha&Y;if(ja>>>0<=G>>>0){o=0;t=b;return o|0}ga=f[6286]|0;if(ga|0?(da=f[6284]|0,ea=da+ja|0,ea>>>0<=da>>>0|ea>>>0>ga>>>0):0){o=0;t=b;return o|0}d:do if(!(f[6287]&4)){ga=f[6182]|0;e:do if(ga){ea=25152;while(1){da=f[ea>>2]|0;if(da>>>0<=ga>>>0?(da+(f[ea+4>>2]|0)|0)>>>0>ga>>>0:0)break;da=f[ea+8>>2]|0;if(!da){M=128;break e}else ea=da}da=ha-ia&Y;if(da>>>0<2147483647){fa=sv(da|0)|0;if((fa|0)==((f[ea>>2]|0)+(f[ea+4>>2]|0)|0))if((fa|0)==(-1|0))ka=da;else{la=da;ma=fa;M=145;break d}else{na=fa;oa=da;M=136}}else ka=0}else M=128;while(0);do if((M|0)==128){ga=sv(0)|0;if((ga|0)!=(-1|0)?(e=ga,da=f[6295]|0,fa=da+-1|0,_=((fa&e|0)==0?0:(fa+e&0-da)-e|0)+ja|0,e=f[6284]|0,da=_+e|0,_>>>0>G>>>0&_>>>0<2147483647):0){fa=f[6286]|0;if(fa|0?da>>>0<=e>>>0|da>>>0>fa>>>0:0){ka=0;break}fa=sv(_|0)|0;if((fa|0)==(ga|0)){la=_;ma=ga;M=145;break d}else{na=fa;oa=_;M=136}}else ka=0}while(0);do if((M|0)==136){_=0-oa|0;if(!(c>>>0>oa>>>0&(oa>>>0<2147483647&(na|0)!=(-1|0))))if((na|0)==(-1|0)){ka=0;break}else{la=oa;ma=na;M=145;break d}fa=f[6296]|0;ga=X-oa+fa&0-fa;if(ga>>>0>=2147483647){la=oa;ma=na;M=145;break d}if((sv(ga|0)|0)==(-1|0)){sv(_|0)|0;ka=0;break}else{la=ga+oa|0;ma=na;M=145;break d}}while(0);f[6287]=f[6287]|4;pa=ka;M=143}else{pa=0;M=143}while(0);if(((M|0)==143?ja>>>0<2147483647:0)?(ka=sv(ja|0)|0,ja=sv(0)|0,na=ja-ka|0,oa=na>>>0>(G+40|0)>>>0,!((ka|0)==(-1|0)|oa^1|ka>>>0<ja>>>0&((ka|0)!=(-1|0)&(ja|0)!=(-1|0))^1)):0){la=oa?na:pa;ma=ka;M=145}if((M|0)==145){ka=(f[6284]|0)+la|0;f[6284]=ka;if(ka>>>0>(f[6285]|0)>>>0)f[6285]=ka;ka=f[6182]|0;f:do if(ka){pa=25152;while(1){qa=f[pa>>2]|0;ra=f[pa+4>>2]|0;if((ma|0)==(qa+ra|0)){M=154;break}na=f[pa+8>>2]|0;if(!na)break;else pa=na}if(((M|0)==154?(na=pa+4|0,(f[pa+12>>2]&8|0)==0):0)?ma>>>0>ka>>>0&qa>>>0<=ka>>>0:0){f[na>>2]=ra+la;na=(f[6179]|0)+la|0;oa=ka+8|0;ja=(oa&7|0)==0?0:0-oa&7;oa=ka+ja|0;X=na-ja|0;f[6182]=oa;f[6179]=X;f[oa+4>>2]=X|1;f[ka+na+4>>2]=40;f[6183]=f[6298];break}if(ma>>>0<(f[6180]|0)>>>0)f[6180]=ma;na=ma+la|0;X=25152;while(1){if((f[X>>2]|0)==(na|0)){M=162;break}oa=f[X+8>>2]|0;if(!oa)break;else X=oa}if((M|0)==162?(f[X+12>>2]&8|0)==0:0){f[X>>2]=ma;pa=X+4|0;f[pa>>2]=(f[pa>>2]|0)+la;pa=ma+8|0;oa=ma+((pa&7|0)==0?0:0-pa&7)|0;pa=na+8|0;ja=na+((pa&7|0)==0?0:0-pa&7)|0;pa=oa+G|0;c=ja-oa-G|0;f[oa+4>>2]=G|3;g:do if((ka|0)==(ja|0)){Y=(f[6179]|0)+c|0;f[6179]=Y;f[6182]=pa;f[pa+4>>2]=Y|1}else{if((f[6181]|0)==(ja|0)){Y=(f[6178]|0)+c|0;f[6178]=Y;f[6181]=pa;f[pa+4>>2]=Y|1;f[pa+Y>>2]=Y;break}Y=f[ja+4>>2]|0;if((Y&3|0)==1){ia=Y&-8;ha=Y>>>3;h:do if(Y>>>0<256){ga=f[ja+8>>2]|0;_=f[ja+12>>2]|0;if((_|0)==(ga|0)){f[6176]=f[6176]&~(1<<ha);break}else{f[ga+12>>2]=_;f[_+8>>2]=ga;break}}else{ga=f[ja+24>>2]|0;_=f[ja+12>>2]|0;do if((_|0)==(ja|0)){fa=ja+16|0;da=fa+4|0;e=f[da>>2]|0;if(!e){ca=f[fa>>2]|0;if(!ca){sa=0;break}else{ta=ca;ua=fa}}else{ta=e;ua=da}da=ta;e=ua;while(1){fa=da+20|0;ca=f[fa>>2]|0;if(!ca){ba=da+16|0;aa=f[ba>>2]|0;if(!aa)break;else{va=aa;wa=ba}}else{va=ca;wa=fa}da=va;e=wa}f[e>>2]=0;sa=da}else{fa=f[ja+8>>2]|0;f[fa+12>>2]=_;f[_+8>>2]=fa;sa=_}while(0);if(!ga)break;_=f[ja+28>>2]|0;n=25008+(_<<2)|0;do if((f[n>>2]|0)!=(ja|0)){fa=ga+16|0;f[((f[fa>>2]|0)==(ja|0)?fa:ga+20|0)>>2]=sa;if(!sa)break h}else{f[n>>2]=sa;if(sa|0)break;f[6177]=f[6177]&~(1<<_);break h}while(0);f[sa+24>>2]=ga;_=ja+16|0;n=f[_>>2]|0;if(n|0){f[sa+16>>2]=n;f[n+24>>2]=sa}n=f[_+4>>2]|0;if(!n)break;f[sa+20>>2]=n;f[n+24>>2]=sa}while(0);xa=ja+ia|0;ya=ia+c|0}else{xa=ja;ya=c}ha=xa+4|0;f[ha>>2]=f[ha>>2]&-2;f[pa+4>>2]=ya|1;f[pa+ya>>2]=ya;ha=ya>>>3;if(ya>>>0<256){Y=24744+(ha<<1<<2)|0;ea=f[6176]|0;n=1<<ha;if(!(ea&n)){f[6176]=ea|n;za=Y;Aa=Y+8|0}else{n=Y+8|0;za=f[n>>2]|0;Aa=n}f[Aa>>2]=pa;f[za+12>>2]=pa;f[pa+8>>2]=za;f[pa+12>>2]=Y;break}Y=ya>>>8;do if(!Y)Ba=0;else{if(ya>>>0>16777215){Ba=31;break}n=(Y+1048320|0)>>>16&8;ea=Y<<n;ha=(ea+520192|0)>>>16&4;_=ea<<ha;ea=(_+245760|0)>>>16&2;fa=14-(ha|n|ea)+(_<<ea>>>15)|0;Ba=ya>>>(fa+7|0)&1|fa<<1}while(0);Y=25008+(Ba<<2)|0;f[pa+28>>2]=Ba;ia=pa+16|0;f[ia+4>>2]=0;f[ia>>2]=0;ia=f[6177]|0;fa=1<<Ba;if(!(ia&fa)){f[6177]=ia|fa;f[Y>>2]=pa;f[pa+24>>2]=Y;f[pa+12>>2]=pa;f[pa+8>>2]=pa;break}fa=f[Y>>2]|0;i:do if((f[fa+4>>2]&-8|0)==(ya|0))Ca=fa;else{Y=ya<<((Ba|0)==31?0:25-(Ba>>>1)|0);ia=fa;while(1){Da=ia+16+(Y>>>31<<2)|0;ea=f[Da>>2]|0;if(!ea)break;if((f[ea+4>>2]&-8|0)==(ya|0)){Ca=ea;break i}else{Y=Y<<1;ia=ea}}f[Da>>2]=pa;f[pa+24>>2]=ia;f[pa+12>>2]=pa;f[pa+8>>2]=pa;break g}while(0);fa=Ca+8|0;Y=f[fa>>2]|0;f[Y+12>>2]=pa;f[fa>>2]=pa;f[pa+8>>2]=Y;f[pa+12>>2]=Ca;f[pa+24>>2]=0}while(0);o=oa+8|0;t=b;return o|0}pa=25152;while(1){c=f[pa>>2]|0;if(c>>>0<=ka>>>0?(Ea=c+(f[pa+4>>2]|0)|0,Ea>>>0>ka>>>0):0)break;pa=f[pa+8>>2]|0}pa=Ea+-47|0;oa=pa+8|0;c=pa+((oa&7|0)==0?0:0-oa&7)|0;oa=ka+16|0;pa=c>>>0<oa>>>0?ka:c;c=pa+8|0;ja=la+-40|0;na=ma+8|0;X=(na&7|0)==0?0:0-na&7;na=ma+X|0;Y=ja-X|0;f[6182]=na;f[6179]=Y;f[na+4>>2]=Y|1;f[ma+ja+4>>2]=40;f[6183]=f[6298];ja=pa+4|0;f[ja>>2]=27;f[c>>2]=f[6288];f[c+4>>2]=f[6289];f[c+8>>2]=f[6290];f[c+12>>2]=f[6291];f[6288]=ma;f[6289]=la;f[6291]=0;f[6290]=c;c=pa+24|0;do{Y=c;c=c+4|0;f[c>>2]=7}while((Y+8|0)>>>0<Ea>>>0);if((pa|0)!=(ka|0)){c=pa-ka|0;f[ja>>2]=f[ja>>2]&-2;f[ka+4>>2]=c|1;f[pa>>2]=c;Y=c>>>3;if(c>>>0<256){na=24744+(Y<<1<<2)|0;X=f[6176]|0;fa=1<<Y;if(!(X&fa)){f[6176]=X|fa;Fa=na;Ga=na+8|0}else{fa=na+8|0;Fa=f[fa>>2]|0;Ga=fa}f[Ga>>2]=ka;f[Fa+12>>2]=ka;f[ka+8>>2]=Fa;f[ka+12>>2]=na;break}na=c>>>8;if(na)if(c>>>0>16777215)Ha=31;else{fa=(na+1048320|0)>>>16&8;X=na<<fa;na=(X+520192|0)>>>16&4;Y=X<<na;X=(Y+245760|0)>>>16&2;ga=14-(na|fa|X)+(Y<<X>>>15)|0;Ha=c>>>(ga+7|0)&1|ga<<1}else Ha=0;ga=25008+(Ha<<2)|0;f[ka+28>>2]=Ha;f[ka+20>>2]=0;f[oa>>2]=0;X=f[6177]|0;Y=1<<Ha;if(!(X&Y)){f[6177]=X|Y;f[ga>>2]=ka;f[ka+24>>2]=ga;f[ka+12>>2]=ka;f[ka+8>>2]=ka;break}Y=f[ga>>2]|0;j:do if((f[Y+4>>2]&-8|0)==(c|0))Ia=Y;else{ga=c<<((Ha|0)==31?0:25-(Ha>>>1)|0);X=Y;while(1){Ja=X+16+(ga>>>31<<2)|0;fa=f[Ja>>2]|0;if(!fa)break;if((f[fa+4>>2]&-8|0)==(c|0)){Ia=fa;break j}else{ga=ga<<1;X=fa}}f[Ja>>2]=ka;f[ka+24>>2]=X;f[ka+12>>2]=ka;f[ka+8>>2]=ka;break f}while(0);c=Ia+8|0;Y=f[c>>2]|0;f[Y+12>>2]=ka;f[c>>2]=ka;f[ka+8>>2]=Y;f[ka+12>>2]=Ia;f[ka+24>>2]=0}}else{Y=f[6180]|0;if((Y|0)==0|ma>>>0<Y>>>0)f[6180]=ma;f[6288]=ma;f[6289]=la;f[6291]=0;f[6185]=f[6294];f[6184]=-1;f[6189]=24744;f[6188]=24744;f[6191]=24752;f[6190]=24752;f[6193]=24760;f[6192]=24760;f[6195]=24768;f[6194]=24768;f[6197]=24776;f[6196]=24776;f[6199]=24784;f[6198]=24784;f[6201]=24792;f[6200]=24792;f[6203]=24800;f[6202]=24800;f[6205]=24808;f[6204]=24808;f[6207]=24816;f[6206]=24816;f[6209]=24824;f[6208]=24824;f[6211]=24832;f[6210]=24832;f[6213]=24840;f[6212]=24840;f[6215]=24848;f[6214]=24848;f[6217]=24856;f[6216]=24856;f[6219]=24864;f[6218]=24864;f[6221]=24872;f[6220]=24872;f[6223]=24880;f[6222]=24880;f[6225]=24888;f[6224]=24888;f[6227]=24896;f[6226]=24896;f[6229]=24904;f[6228]=24904;f[6231]=24912;f[6230]=24912;f[6233]=24920;f[6232]=24920;f[6235]=24928;f[6234]=24928;f[6237]=24936;f[6236]=24936;f[6239]=24944;f[6238]=24944;f[6241]=24952;f[6240]=24952;f[6243]=24960;f[6242]=24960;f[6245]=24968;f[6244]=24968;f[6247]=24976;f[6246]=24976;f[6249]=24984;f[6248]=24984;f[6251]=24992;f[6250]=24992;Y=la+-40|0;c=ma+8|0;oa=(c&7|0)==0?0:0-c&7;c=ma+oa|0;pa=Y-oa|0;f[6182]=c;f[6179]=pa;f[c+4>>2]=pa|1;f[ma+Y+4>>2]=40;f[6183]=f[6298]}while(0);ma=f[6179]|0;if(ma>>>0>G>>>0){la=ma-G|0;f[6179]=la;ma=f[6182]|0;ka=ma+G|0;f[6182]=ka;f[ka+4>>2]=la|1;f[ma+4>>2]=G|3;o=ma+8|0;t=b;return o|0}}ma=Jg()|0;f[ma>>2]=12;o=0;t=b;return o|0}function Bg(a){a=a|0;var b=0,c=0,d=0,e=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;if(!a)return;b=a+-8|0;c=f[6180]|0;d=f[a+-4>>2]|0;a=d&-8;e=b+a|0;do if(!(d&1)){g=f[b>>2]|0;if(!(d&3))return;h=b+(0-g)|0;i=g+a|0;if(h>>>0<c>>>0)return;if((f[6181]|0)==(h|0)){j=e+4|0;k=f[j>>2]|0;if((k&3|0)!=3){l=h;m=i;n=h;break}f[6178]=i;f[j>>2]=k&-2;f[h+4>>2]=i|1;f[h+i>>2]=i;return}k=g>>>3;if(g>>>0<256){g=f[h+8>>2]|0;j=f[h+12>>2]|0;if((j|0)==(g|0)){f[6176]=f[6176]&~(1<<k);l=h;m=i;n=h;break}else{f[g+12>>2]=j;f[j+8>>2]=g;l=h;m=i;n=h;break}}g=f[h+24>>2]|0;j=f[h+12>>2]|0;do if((j|0)==(h|0)){k=h+16|0;o=k+4|0;p=f[o>>2]|0;if(!p){q=f[k>>2]|0;if(!q){r=0;break}else{s=q;t=k}}else{s=p;t=o}o=s;p=t;while(1){k=o+20|0;q=f[k>>2]|0;if(!q){u=o+16|0;v=f[u>>2]|0;if(!v)break;else{w=v;x=u}}else{w=q;x=k}o=w;p=x}f[p>>2]=0;r=o}else{k=f[h+8>>2]|0;f[k+12>>2]=j;f[j+8>>2]=k;r=j}while(0);if(g){j=f[h+28>>2]|0;k=25008+(j<<2)|0;if((f[k>>2]|0)==(h|0)){f[k>>2]=r;if(!r){f[6177]=f[6177]&~(1<<j);l=h;m=i;n=h;break}}else{j=g+16|0;f[((f[j>>2]|0)==(h|0)?j:g+20|0)>>2]=r;if(!r){l=h;m=i;n=h;break}}f[r+24>>2]=g;j=h+16|0;k=f[j>>2]|0;if(k|0){f[r+16>>2]=k;f[k+24>>2]=r}k=f[j+4>>2]|0;if(k){f[r+20>>2]=k;f[k+24>>2]=r;l=h;m=i;n=h}else{l=h;m=i;n=h}}else{l=h;m=i;n=h}}else{l=b;m=a;n=b}while(0);if(n>>>0>=e>>>0)return;b=e+4|0;a=f[b>>2]|0;if(!(a&1))return;if(!(a&2)){if((f[6182]|0)==(e|0)){r=(f[6179]|0)+m|0;f[6179]=r;f[6182]=l;f[l+4>>2]=r|1;if((l|0)!=(f[6181]|0))return;f[6181]=0;f[6178]=0;return}if((f[6181]|0)==(e|0)){r=(f[6178]|0)+m|0;f[6178]=r;f[6181]=n;f[l+4>>2]=r|1;f[n+r>>2]=r;return}r=(a&-8)+m|0;x=a>>>3;do if(a>>>0<256){w=f[e+8>>2]|0;t=f[e+12>>2]|0;if((t|0)==(w|0)){f[6176]=f[6176]&~(1<<x);break}else{f[w+12>>2]=t;f[t+8>>2]=w;break}}else{w=f[e+24>>2]|0;t=f[e+12>>2]|0;do if((t|0)==(e|0)){s=e+16|0;c=s+4|0;d=f[c>>2]|0;if(!d){k=f[s>>2]|0;if(!k){y=0;break}else{z=k;A=s}}else{z=d;A=c}c=z;d=A;while(1){s=c+20|0;k=f[s>>2]|0;if(!k){j=c+16|0;q=f[j>>2]|0;if(!q)break;else{B=q;C=j}}else{B=k;C=s}c=B;d=C}f[d>>2]=0;y=c}else{o=f[e+8>>2]|0;f[o+12>>2]=t;f[t+8>>2]=o;y=t}while(0);if(w|0){t=f[e+28>>2]|0;h=25008+(t<<2)|0;if((f[h>>2]|0)==(e|0)){f[h>>2]=y;if(!y){f[6177]=f[6177]&~(1<<t);break}}else{t=w+16|0;f[((f[t>>2]|0)==(e|0)?t:w+20|0)>>2]=y;if(!y)break}f[y+24>>2]=w;t=e+16|0;h=f[t>>2]|0;if(h|0){f[y+16>>2]=h;f[h+24>>2]=y}h=f[t+4>>2]|0;if(h|0){f[y+20>>2]=h;f[h+24>>2]=y}}}while(0);f[l+4>>2]=r|1;f[n+r>>2]=r;if((l|0)==(f[6181]|0)){f[6178]=r;return}else D=r}else{f[b>>2]=a&-2;f[l+4>>2]=m|1;f[n+m>>2]=m;D=m}m=D>>>3;if(D>>>0<256){n=24744+(m<<1<<2)|0;a=f[6176]|0;b=1<<m;if(!(a&b)){f[6176]=a|b;E=n;F=n+8|0}else{b=n+8|0;E=f[b>>2]|0;F=b}f[F>>2]=l;f[E+12>>2]=l;f[l+8>>2]=E;f[l+12>>2]=n;return}n=D>>>8;if(n)if(D>>>0>16777215)G=31;else{E=(n+1048320|0)>>>16&8;F=n<<E;n=(F+520192|0)>>>16&4;b=F<<n;F=(b+245760|0)>>>16&2;a=14-(n|E|F)+(b<<F>>>15)|0;G=D>>>(a+7|0)&1|a<<1}else G=0;a=25008+(G<<2)|0;f[l+28>>2]=G;f[l+20>>2]=0;f[l+16>>2]=0;F=f[6177]|0;b=1<<G;a:do if(!(F&b)){f[6177]=F|b;f[a>>2]=l;f[l+24>>2]=a;f[l+12>>2]=l;f[l+8>>2]=l}else{E=f[a>>2]|0;b:do if((f[E+4>>2]&-8|0)==(D|0))H=E;else{n=D<<((G|0)==31?0:25-(G>>>1)|0);m=E;while(1){I=m+16+(n>>>31<<2)|0;r=f[I>>2]|0;if(!r)break;if((f[r+4>>2]&-8|0)==(D|0)){H=r;break b}else{n=n<<1;m=r}}f[I>>2]=l;f[l+24>>2]=m;f[l+12>>2]=l;f[l+8>>2]=l;break a}while(0);E=H+8|0;w=f[E>>2]|0;f[w+12>>2]=l;f[E>>2]=l;f[l+8>>2]=w;f[l+12>>2]=H;f[l+24>>2]=0}while(0);l=(f[6184]|0)+-1|0;f[6184]=l;if(l|0)return;l=25160;while(1){H=f[l>>2]|0;if(!H)break;else l=H+8|0}f[6184]=-1;return}function Cg(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;if(!a){c=Ag(b)|0;return c|0}if(b>>>0>4294967231){d=Jg()|0;f[d>>2]=12;c=0;return c|0}d=Dg(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){c=d+8|0;return c|0}d=Ag(b)|0;if(!d){c=0;return c|0}e=f[a+-4>>2]|0;g=(e&-8)-((e&3|0)==0?8:4)|0;mv(d|0,a|0,(g>>>0<b>>>0?g:b)|0)|0;Bg(a);c=d;return c|0}function Dg(a,b){a=a|0;b=b|0;var c=0,d=0,e=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;c=a+4|0;d=f[c>>2]|0;e=d&-8;g=a+e|0;if(!(d&3)){if(b>>>0<256){h=0;return h|0}if(e>>>0>=(b+4|0)>>>0?(e-b|0)>>>0<=f[6296]<<1>>>0:0){h=a;return h|0}h=0;return h|0}if(e>>>0>=b>>>0){i=e-b|0;if(i>>>0<=15){h=a;return h|0}j=a+b|0;f[c>>2]=d&1|b|2;f[j+4>>2]=i|3;k=g+4|0;f[k>>2]=f[k>>2]|1;Eg(j,i);h=a;return h|0}if((f[6182]|0)==(g|0)){i=(f[6179]|0)+e|0;j=i-b|0;k=a+b|0;if(i>>>0<=b>>>0){h=0;return h|0}f[c>>2]=d&1|b|2;f[k+4>>2]=j|1;f[6182]=k;f[6179]=j;h=a;return h|0}if((f[6181]|0)==(g|0)){j=(f[6178]|0)+e|0;if(j>>>0<b>>>0){h=0;return h|0}k=j-b|0;if(k>>>0>15){i=a+b|0;l=a+j|0;f[c>>2]=d&1|b|2;f[i+4>>2]=k|1;f[l>>2]=k;m=l+4|0;f[m>>2]=f[m>>2]&-2;n=i;o=k}else{f[c>>2]=d&1|j|2;k=a+j+4|0;f[k>>2]=f[k>>2]|1;n=0;o=0}f[6178]=o;f[6181]=n;h=a;return h|0}n=f[g+4>>2]|0;if(n&2|0){h=0;return h|0}o=(n&-8)+e|0;if(o>>>0<b>>>0){h=0;return h|0}e=o-b|0;k=n>>>3;do if(n>>>0<256){j=f[g+8>>2]|0;i=f[g+12>>2]|0;if((i|0)==(j|0)){f[6176]=f[6176]&~(1<<k);break}else{f[j+12>>2]=i;f[i+8>>2]=j;break}}else{j=f[g+24>>2]|0;i=f[g+12>>2]|0;do if((i|0)==(g|0)){m=g+16|0;l=m+4|0;p=f[l>>2]|0;if(!p){q=f[m>>2]|0;if(!q){r=0;break}else{s=q;t=m}}else{s=p;t=l}l=s;p=t;while(1){m=l+20|0;q=f[m>>2]|0;if(!q){u=l+16|0;v=f[u>>2]|0;if(!v)break;else{w=v;x=u}}else{w=q;x=m}l=w;p=x}f[p>>2]=0;r=l}else{m=f[g+8>>2]|0;f[m+12>>2]=i;f[i+8>>2]=m;r=i}while(0);if(j|0){i=f[g+28>>2]|0;m=25008+(i<<2)|0;if((f[m>>2]|0)==(g|0)){f[m>>2]=r;if(!r){f[6177]=f[6177]&~(1<<i);break}}else{i=j+16|0;f[((f[i>>2]|0)==(g|0)?i:j+20|0)>>2]=r;if(!r)break}f[r+24>>2]=j;i=g+16|0;m=f[i>>2]|0;if(m|0){f[r+16>>2]=m;f[m+24>>2]=r}m=f[i+4>>2]|0;if(m|0){f[r+20>>2]=m;f[m+24>>2]=r}}}while(0);if(e>>>0<16){f[c>>2]=d&1|o|2;r=a+o+4|0;f[r>>2]=f[r>>2]|1;h=a;return h|0}else{r=a+b|0;f[c>>2]=d&1|b|2;f[r+4>>2]=e|3;b=a+o+4|0;f[b>>2]=f[b>>2]|1;Eg(r,e);h=a;return h|0}return 0}function Eg(a,b){a=a|0;b=b|0;var c=0,d=0,e=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;c=a+b|0;d=f[a+4>>2]|0;do if(!(d&1)){e=f[a>>2]|0;if(!(d&3))return;g=a+(0-e)|0;h=e+b|0;if((f[6181]|0)==(g|0)){i=c+4|0;j=f[i>>2]|0;if((j&3|0)!=3){k=g;l=h;break}f[6178]=h;f[i>>2]=j&-2;f[g+4>>2]=h|1;f[c>>2]=h;return}j=e>>>3;if(e>>>0<256){e=f[g+8>>2]|0;i=f[g+12>>2]|0;if((i|0)==(e|0)){f[6176]=f[6176]&~(1<<j);k=g;l=h;break}else{f[e+12>>2]=i;f[i+8>>2]=e;k=g;l=h;break}}e=f[g+24>>2]|0;i=f[g+12>>2]|0;do if((i|0)==(g|0)){j=g+16|0;m=j+4|0;n=f[m>>2]|0;if(!n){o=f[j>>2]|0;if(!o){p=0;break}else{q=o;r=j}}else{q=n;r=m}m=q;n=r;while(1){j=m+20|0;o=f[j>>2]|0;if(!o){s=m+16|0;t=f[s>>2]|0;if(!t)break;else{u=t;v=s}}else{u=o;v=j}m=u;n=v}f[n>>2]=0;p=m}else{j=f[g+8>>2]|0;f[j+12>>2]=i;f[i+8>>2]=j;p=i}while(0);if(e){i=f[g+28>>2]|0;j=25008+(i<<2)|0;if((f[j>>2]|0)==(g|0)){f[j>>2]=p;if(!p){f[6177]=f[6177]&~(1<<i);k=g;l=h;break}}else{i=e+16|0;f[((f[i>>2]|0)==(g|0)?i:e+20|0)>>2]=p;if(!p){k=g;l=h;break}}f[p+24>>2]=e;i=g+16|0;j=f[i>>2]|0;if(j|0){f[p+16>>2]=j;f[j+24>>2]=p}j=f[i+4>>2]|0;if(j){f[p+20>>2]=j;f[j+24>>2]=p;k=g;l=h}else{k=g;l=h}}else{k=g;l=h}}else{k=a;l=b}while(0);b=c+4|0;a=f[b>>2]|0;if(!(a&2)){if((f[6182]|0)==(c|0)){p=(f[6179]|0)+l|0;f[6179]=p;f[6182]=k;f[k+4>>2]=p|1;if((k|0)!=(f[6181]|0))return;f[6181]=0;f[6178]=0;return}if((f[6181]|0)==(c|0)){p=(f[6178]|0)+l|0;f[6178]=p;f[6181]=k;f[k+4>>2]=p|1;f[k+p>>2]=p;return}p=(a&-8)+l|0;v=a>>>3;do if(a>>>0<256){u=f[c+8>>2]|0;r=f[c+12>>2]|0;if((r|0)==(u|0)){f[6176]=f[6176]&~(1<<v);break}else{f[u+12>>2]=r;f[r+8>>2]=u;break}}else{u=f[c+24>>2]|0;r=f[c+12>>2]|0;do if((r|0)==(c|0)){q=c+16|0;d=q+4|0;j=f[d>>2]|0;if(!j){i=f[q>>2]|0;if(!i){w=0;break}else{x=i;y=q}}else{x=j;y=d}d=x;j=y;while(1){q=d+20|0;i=f[q>>2]|0;if(!i){o=d+16|0;s=f[o>>2]|0;if(!s)break;else{z=s;A=o}}else{z=i;A=q}d=z;j=A}f[j>>2]=0;w=d}else{m=f[c+8>>2]|0;f[m+12>>2]=r;f[r+8>>2]=m;w=r}while(0);if(u|0){r=f[c+28>>2]|0;h=25008+(r<<2)|0;if((f[h>>2]|0)==(c|0)){f[h>>2]=w;if(!w){f[6177]=f[6177]&~(1<<r);break}}else{r=u+16|0;f[((f[r>>2]|0)==(c|0)?r:u+20|0)>>2]=w;if(!w)break}f[w+24>>2]=u;r=c+16|0;h=f[r>>2]|0;if(h|0){f[w+16>>2]=h;f[h+24>>2]=w}h=f[r+4>>2]|0;if(h|0){f[w+20>>2]=h;f[h+24>>2]=w}}}while(0);f[k+4>>2]=p|1;f[k+p>>2]=p;if((k|0)==(f[6181]|0)){f[6178]=p;return}else B=p}else{f[b>>2]=a&-2;f[k+4>>2]=l|1;f[k+l>>2]=l;B=l}l=B>>>3;if(B>>>0<256){a=24744+(l<<1<<2)|0;b=f[6176]|0;p=1<<l;if(!(b&p)){f[6176]=b|p;C=a;D=a+8|0}else{p=a+8|0;C=f[p>>2]|0;D=p}f[D>>2]=k;f[C+12>>2]=k;f[k+8>>2]=C;f[k+12>>2]=a;return}a=B>>>8;if(a)if(B>>>0>16777215)E=31;else{C=(a+1048320|0)>>>16&8;D=a<<C;a=(D+520192|0)>>>16&4;p=D<<a;D=(p+245760|0)>>>16&2;b=14-(a|C|D)+(p<<D>>>15)|0;E=B>>>(b+7|0)&1|b<<1}else E=0;b=25008+(E<<2)|0;f[k+28>>2]=E;f[k+20>>2]=0;f[k+16>>2]=0;D=f[6177]|0;p=1<<E;if(!(D&p)){f[6177]=D|p;f[b>>2]=k;f[k+24>>2]=b;f[k+12>>2]=k;f[k+8>>2]=k;return}p=f[b>>2]|0;a:do if((f[p+4>>2]&-8|0)==(B|0))F=p;else{b=B<<((E|0)==31?0:25-(E>>>1)|0);D=p;while(1){G=D+16+(b>>>31<<2)|0;C=f[G>>2]|0;if(!C)break;if((f[C+4>>2]&-8|0)==(B|0)){F=C;break a}else{b=b<<1;D=C}}f[G>>2]=k;f[k+24>>2]=D;f[k+12>>2]=k;f[k+8>>2]=k;return}while(0);G=F+8|0;B=f[G>>2]|0;f[B+12>>2]=k;f[G>>2]=k;f[k+8>>2]=B;f[k+12>>2]=F;f[k+24>>2]=0;return}function Fg(a){a=a|0;var b=0,c=0,d=0;b=t;t=t+16|0;c=b;d=Kg(f[a+60>>2]|0)|0;f[c>>2]=d;d=Ig(gb(6,c|0)|0)|0;t=b;return d|0}function Gg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=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,u=0,v=0,w=0;d=t;t=t+48|0;e=d+32|0;g=d+16|0;h=d;i=a+28|0;j=f[i>>2]|0;f[h>>2]=j;k=a+20|0;l=(f[k>>2]|0)-j|0;f[h+4>>2]=l;f[h+8>>2]=b;f[h+12>>2]=c;b=l+c|0;l=a+60|0;f[g>>2]=f[l>>2];f[g+4>>2]=h;f[g+8>>2]=2;j=Ig(cb(146,g|0)|0)|0;a:do if((b|0)!=(j|0)){g=2;m=b;n=h;o=j;while(1){if((o|0)<0)break;m=m-o|0;p=f[n+4>>2]|0;q=o>>>0>p>>>0;r=q?n+8|0:n;s=g+(q<<31>>31)|0;u=o-(q?p:0)|0;f[r>>2]=(f[r>>2]|0)+u;p=r+4|0;f[p>>2]=(f[p>>2]|0)-u;f[e>>2]=f[l>>2];f[e+4>>2]=r;f[e+8>>2]=s;o=Ig(cb(146,e|0)|0)|0;if((m|0)==(o|0)){v=3;break a}else{g=s;n=r}}f[a+16>>2]=0;f[i>>2]=0;f[k>>2]=0;f[a>>2]=f[a>>2]|32;if((g|0)==2)w=0;else w=c-(f[n+4>>2]|0)|0}else v=3;while(0);if((v|0)==3){v=f[a+44>>2]|0;f[a+16>>2]=v+(f[a+48>>2]|0);a=v;f[i>>2]=a;f[k>>2]=a;w=c}t=d;return w|0}function Hg(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=t;t=t+32|0;e=d;g=d+20|0;f[e>>2]=f[a+60>>2];f[e+4>>2]=0;f[e+8>>2]=b;f[e+12>>2]=g;f[e+16>>2]=c;if((Ig(ab(140,e|0)|0)|0)<0){f[g>>2]=-1;h=-1}else h=f[g>>2]|0;t=d;return h|0}function Ig(a){a=a|0;var b=0,c=0;if(a>>>0>4294963200){b=Jg()|0;f[b>>2]=0-a;c=-1}else c=a;return c|0}function Jg(){return 25288}function Kg(a){a=a|0;return a|0}function Lg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=t;t=t+32|0;g=e+16|0;h=e;f[h>>2]=c;i=h+4|0;j=a+48|0;k=f[j>>2]|0;f[i>>2]=d-((k|0)!=0&1);l=a+44|0;f[h+8>>2]=f[l>>2];f[h+12>>2]=k;f[g>>2]=f[a+60>>2];f[g+4>>2]=h;f[g+8>>2]=2;h=Ig(bb(145,g|0)|0)|0;if((h|0)>=1){g=f[i>>2]|0;if(h>>>0>g>>>0){i=f[l>>2]|0;l=a+4|0;f[l>>2]=i;k=i;f[a+8>>2]=k+(h-g);if(!(f[j>>2]|0))m=d;else{f[l>>2]=k+1;b[c+(d+-1)>>0]=b[k>>0]|0;m=d}}else m=h}else{f[a>>2]=f[a>>2]|h&48^16;m=h}t=e;return m|0}function Mg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;e=t;t=t+32|0;g=e;f[a+36>>2]=4;if((f[a>>2]&64|0)==0?(f[g>>2]=f[a+60>>2],f[g+4>>2]=21523,f[g+8>>2]=e+16,fb(54,g|0)|0):0)b[a+75>>0]=-1;g=Gg(a,c,d)|0;t=e;return g|0}function Ng(){return 10420}function Og(a){a=a|0;return (a+-48|0)>>>0<10|0}function Pg(a){a=a|0;var b=0;b=a;while(1)if(!(f[b>>2]|0))break;else b=b+4|0;return b-a>>2|0}function Qg(){var a=0;a=(Rg()|0)+188|0;return ((f[f[a>>2]>>2]|0)==0?1:4)|0}function Rg(){return Sg()|0}function Sg(){return 10424}function Tg(a){a=a|0;return (((a|32)+-97|0)>>>0<6|(Og(a)|0)!=0)&1|0}function Ug(){return 10668}function Vg(a,c){a=a|0;c=c|0;var d=0,e=0,f=0,g=0;d=b[a>>0]|0;e=b[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24){f=e;g=d}else{d=c;c=a;do{c=c+1|0;d=d+1|0;a=b[c>>0]|0;e=b[d>>0]|0}while(!(a<<24>>24==0?1:a<<24>>24!=e<<24>>24));f=e;g=a}return (g&255)-(f&255)|0}function Wg(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function Xg(){return 10672}function Yg(a){a=a|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;c=a;a:do if(!(c&3)){d=a;e=5}else{g=a;h=c;while(1){if(!(b[g>>0]|0)){i=h;break a}j=g+1|0;h=j;if(!(h&3)){d=j;e=5;break}else g=j}}while(0);if((e|0)==5){e=d;while(1){k=f[e>>2]|0;if(!((k&-2139062144^-2139062144)&k+-16843009))e=e+4|0;else break}if(!((k&255)<<24>>24))l=e;else{k=e;while(1){e=k+1|0;if(!(b[e>>0]|0)){l=e;break}else k=e}}i=l}return i-c|0}function Zg(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,i=0,j=0,k=0,l=0,m=0;e=t;t=t+16|0;g=e;a:do if(!c)i=0;else{do if(d|0){j=(a|0)==0?g:a;k=b[c>>0]|0;if(k<<24>>24>-1){f[j>>2]=k&255;i=k<<24>>24!=0&1;break a}k=(_g()|0)+188|0;l=b[c>>0]|0;if(!(f[f[k>>2]>>2]|0)){f[j>>2]=l<<24>>24&57343;i=1;break a}k=(l&255)+-194|0;if(k>>>0<=50){l=c+1|0;m=f[48+(k<<2)>>2]|0;if(d>>>0<4?m&-2147483648>>>((d*6|0)+-6|0)|0:0)break;k=h[l>>0]|0;l=k>>>3;if((l+-16|l+(m>>26))>>>0<=7){l=k+-128|m<<6;if((l|0)>=0){f[j>>2]=l;i=2;break a}m=(h[c+2>>0]|0)+-128|0;if(m>>>0<=63){k=m|l<<6;if((k|0)>=0){f[j>>2]=k;i=3;break a}l=(h[c+3>>0]|0)+-128|0;if(l>>>0<=63){f[j>>2]=l|k<<6;i=4;break a}}}}}while(0);k=Jg()|0;f[k>>2]=84;i=-1}while(0);t=e;return i|0}function _g(){return Sg()|0}function $g(a){a=a|0;var b=0,c=0,d=0;if(f[a+68>>2]|0){b=f[a+116>>2]|0;c=a+112|0;if(b|0)f[b+112>>2]=f[c>>2];a=f[c>>2]|0;if(!a)d=(bh()|0)+232|0;else d=a+116|0;f[d>>2]=b}return}function ah(a){a=a|0;return}function bh(){return Sg()|0}function ch(a){a=a|0;return 0}function dh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;d=t;t=t+16|0;e=d;g=c&255;b[e>>0]=g;i=a+16|0;j=f[i>>2]|0;if(!j)if(!(eh(a)|0)){k=f[i>>2]|0;l=4}else m=-1;else{k=j;l=4}do if((l|0)==4){j=a+20|0;i=f[j>>2]|0;if(i>>>0<k>>>0?(n=c&255,(n|0)!=(b[a+75>>0]|0)):0){f[j>>2]=i+1;b[i>>0]=g;m=n;break}if((Ic[f[a+36>>2]&63](a,e,1)|0)==1)m=h[e>>0]|0;else m=-1}while(0);t=d;return m|0}function eh(a){a=a|0;var c=0,d=0,e=0;c=a+74|0;d=b[c>>0]|0;b[c>>0]=d+255|d;d=f[a>>2]|0;if(!(d&8)){f[a+8>>2]=0;f[a+4>>2]=0;c=f[a+44>>2]|0;f[a+28>>2]=c;f[a+20>>2]=c;f[a+16>>2]=c+(f[a+48>>2]|0);e=0}else{f[a>>2]=d|32;e=-1}return e|0}function fh(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;e=d+16|0;g=f[e>>2]|0;if(!g)if(!(eh(d)|0)){h=f[e>>2]|0;i=5}else j=0;else{h=g;i=5}a:do if((i|0)==5){g=d+20|0;e=f[g>>2]|0;k=e;if((h-e|0)>>>0<c>>>0){j=Ic[f[d+36>>2]&63](d,a,c)|0;break}b:do if((b[d+75>>0]|0)<0|(c|0)==0){l=0;m=a;n=c;o=k}else{e=c;while(1){p=e+-1|0;if((b[a+p>>0]|0)==10)break;if(!p){l=0;m=a;n=c;o=k;break b}else e=p}p=Ic[f[d+36>>2]&63](d,a,e)|0;if(p>>>0<e>>>0){j=p;break a}l=e;m=a+e|0;n=c-e|0;o=f[g>>2]|0}while(0);mv(o|0,m|0,n|0)|0;f[g>>2]=(f[g>>2]|0)+n;j=l+n|0}while(0);return j|0}function gh(a,b){a=a|0;b=b|0;var c=0;if(!b)c=0;else c=hh(f[b>>2]|0,f[b+4>>2]|0,a)|0;return ((c|0)==0?a:c)|0}function hh(a,c,d){a=a|0;c=c|0;d=d|0;var e=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;e=(f[a>>2]|0)+1794895138|0;g=ih(f[a+8>>2]|0,e)|0;h=ih(f[a+12>>2]|0,e)|0;i=ih(f[a+16>>2]|0,e)|0;a:do if((g>>>0<c>>>2>>>0?(j=c-(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=ih(f[a+(q<<2)>>2]|0,e)|0;s=ih(f[a+(q+1<<2)>>2]|0,e)|0;if(!(s>>>0<c>>>0&r>>>0<(c-s|0)>>>0)){t=0;break a}if(b[a+(s+r)>>0]|0){t=0;break a}r=Vg(d,a+s|0)|0;if(!r)break;s=(r|0)<0;if((m|0)==1){t=0;break a}l=s?l:o;m=s?n:m-n|0}m=p+k|0;l=ih(f[a+(m<<2)>>2]|0,e)|0;j=ih(f[a+(m+1<<2)>>2]|0,e)|0;if(j>>>0<c>>>0&l>>>0<(c-j|0)>>>0)t=(b[a+(j+l)>>0]|0)==0?a+j|0:0;else t=0}else t=0;while(0);return t|0}function ih(a,b){a=a|0;b=b|0;var c=0;c=lv(a|0)|0;return ((b|0)==0?a:c)|0}function jh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=t;t=t+48|0;e=d+32|0;g=d+16|0;h=d;if(kh(17620,b[c>>0]|0)|0){i=lh(c)|0;f[h>>2]=a;f[h+4>>2]=i|32768;f[h+8>>2]=438;a=Ig(eb(5,h|0)|0)|0;if((a|0)>=0){if(i&524288|0){f[g>>2]=a;f[g+4>>2]=2;f[g+8>>2]=1;db(221,g|0)|0}g=mh(a,c)|0;if(!g){f[e>>2]=a;gb(6,e|0)|0;j=0}else j=g}else j=0}else{g=Jg()|0;f[g>>2]=22;j=0}t=d;return j|0}function kh(a,c){a=a|0;c=c|0;var d=0;d=qh(a,c)|0;return ((b[d>>0]|0)==(c&255)<<24>>24?d:0)|0}function lh(a){a=a|0;var c=0,d=0,e=0,f=0;c=(kh(a,43)|0)==0;d=b[a>>0]|0;e=c?d<<24>>24!=114&1:2;c=(kh(a,120)|0)==0;f=c?e:e|128;e=(kh(a,101)|0)==0;a=e?f:f|524288;f=d<<24>>24==114?a:a|64;a=d<<24>>24==119?f|512:f;return (d<<24>>24==97?a|1024:a)|0}function mh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=t;t=t+64|0;e=d+40|0;g=d+24|0;h=d+16|0;i=d;j=d+56|0;if(kh(17620,b[c>>0]|0)|0){k=Ag(1156)|0;if(!k)l=0;else{ov(k|0,0,124)|0;if(!(kh(c,43)|0))f[k>>2]=(b[c>>0]|0)==114?8:4;if(kh(c,101)|0){f[i>>2]=a;f[i+4>>2]=2;f[i+8>>2]=1;db(221,i|0)|0}if((b[c>>0]|0)==97){f[h>>2]=a;f[h+4>>2]=3;c=db(221,h|0)|0;if(!(c&1024)){f[g>>2]=a;f[g+4>>2]=4;f[g+8>>2]=c|1024;db(221,g|0)|0}g=f[k>>2]|128;f[k>>2]=g;m=g}else m=f[k>>2]|0;f[k+60>>2]=a;f[k+44>>2]=k+132;f[k+48>>2]=1024;g=k+75|0;b[g>>0]=-1;if((m&8|0)==0?(f[e>>2]=a,f[e+4>>2]=21523,f[e+8>>2]=j,(fb(54,e|0)|0)==0):0)b[g>>0]=10;f[k+32>>2]=29;f[k+36>>2]=4;f[k+40>>2]=5;f[k+12>>2]=18;if(!(f[6307]|0))f[k+76>>2]=-1;nh(k)|0;l=k}}else{k=Jg()|0;f[k>>2]=22;l=0}t=d;return l|0}function nh(a){a=a|0;var b=0,c=0;b=oh()|0;f[a+56>>2]=f[b>>2];c=f[b>>2]|0;if(c|0)f[c+52>>2]=a;f[b>>2]=a;ph();return a|0}function oh(){Ya(25292);return 25300}function ph(){ib(25292);return}function qh(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=c&255;a:do if(!d)e=a+(Yg(a)|0)|0;else{if(!(a&3))g=a;else{h=c&255;i=a;while(1){j=b[i>>0]|0;if(j<<24>>24==0?1:j<<24>>24==h<<24>>24){e=i;break a}j=i+1|0;if(!(j&3)){g=j;break}else i=j}}i=V(d,16843009)|0;h=f[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=f[l>>2]|0;if((k&-2139062144^-2139062144)&k+-16843009|0){m=l;break}else j=l}}else m=g;while(0);i=c&255;h=m;while(1){j=b[h>>0]|0;if(j<<24>>24==0?1:j<<24>>24==i<<24>>24){e=h;break}else h=h+1|0}}while(0);return e|0}function rh(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;if((f[a+76>>2]|0)>-1)b=ch(a)|0;else b=0;$g(a);c=(f[a>>2]&1|0)!=0;if(!c){d=oh()|0;e=f[a+52>>2]|0;g=a+56|0;if(e|0)f[e+56>>2]=f[g>>2];h=f[g>>2]|0;if(h|0)f[h+52>>2]=e;if((f[d>>2]|0)==(a|0))f[d>>2]=h;ph()}h=sh(a)|0;d=Gc[f[a+12>>2]&127](a)|0|h;h=f[a+92>>2]|0;if(h|0)Bg(h);if(c){if(b|0)ah(a)}else Bg(a);return d|0}function sh(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;do if(a){if((f[a+76>>2]|0)<=-1){b=th(a)|0;break}c=(ch(a)|0)==0;d=th(a)|0;if(c)b=d;else{ah(a);b=d}}else{if(!(f[2604]|0))e=0;else e=sh(f[2604]|0)|0;d=oh()|0;c=f[d>>2]|0;if(!c)g=e;else{d=c;c=e;while(1){if((f[d+76>>2]|0)>-1)h=ch(d)|0;else h=0;if((f[d+20>>2]|0)>>>0>(f[d+28>>2]|0)>>>0)i=th(d)|0|c;else i=c;if(h|0)ah(d);d=f[d+56>>2]|0;if(!d){g=i;break}else c=i}}ph();b=g}while(0);return b|0}function th(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0,i=0;b=a+20|0;c=a+28|0;if((f[b>>2]|0)>>>0>(f[c>>2]|0)>>>0?(Ic[f[a+36>>2]&63](a,0,0)|0,(f[b>>2]|0)==0):0)d=-1;else{e=a+4|0;g=f[e>>2]|0;h=a+8|0;i=f[h>>2]|0;if(g>>>0<i>>>0)Ic[f[a+40>>2]&63](a,g-i|0,1)|0;f[a+16>>2]=0;f[c>>2]=0;f[b>>2]=0;f[h>>2]=0;f[e>>2]=0;d=0}return d|0}function uh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;d=t;t=t+16|0;e=d;f[e>>2]=c;c=vh(a,b,e)|0;t=d;return c|0}function vh(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0;d=t;t=t+128|0;e=d;g=e;h=g+124|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));f[e+32>>2]=30;f[e+44>>2]=a;f[e+76>>2]=-1;f[e+84>>2]=a;a=xh(e,b,c)|0;t=d;return a|0}function wh(a,b,c){a=a|0;b=b|0;c=c|0;return Th(a,b,c)|0}
  function Uo(a,b,c){a=a|0;b=b|0;c=c|0;return b>>>0<=a>>>0&a>>>0<c>>>0|0}function Vo(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0;e=t;t=t+16|0;g=c;h=e;i=d-g|0;if(i>>>0>4294967279)Vs(a);if(i>>>0<11){b[a+11>>0]=i;j=a}else{k=i+16&-16;l=Ms(k)|0;f[a>>2]=l;f[a+8>>2]=k|-2147483648;f[a+4>>2]=i;j=l}l=d-g|0;g=c;c=j;while(1){if((g|0)==(d|0))break;fk(c,g);g=g+1|0;c=c+1|0}b[h>>0]=0;fk(j+l|0,h);t=e;return}function Wo(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|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;m=t;t=t+16|0;n=m+12|0;o=m;if(a){a=Bk(c,25572)|0;Vc[f[(f[a>>2]|0)+44>>2]&127](n,a);p=f[n>>2]|0;b[d>>0]=p;b[d+1>>0]=p>>8;b[d+2>>0]=p>>16;b[d+3>>0]=p>>24;Vc[f[(f[a>>2]|0)+32>>2]&127](o,a);p=k+11|0;if((b[p>>0]|0)<0){q=f[k>>2]|0;b[n>>0]=0;fk(q,n);f[k+4>>2]=0}else{b[n>>0]=0;fk(k,n);b[p>>0]=0}v=0;ta(59,k|0,0);p=v;v=0;if(p&1){p=Sa(0)|0;pd(p)};f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];p=0;while(1){if((p|0)==3)break;f[o+(p<<2)>>2]=0;p=p+1|0}$s(o);Vc[f[(f[a>>2]|0)+28>>2]&127](o,a);p=j+11|0;if((b[p>>0]|0)<0){q=f[j>>2]|0;b[n>>0]=0;fk(q,n);f[j+4>>2]=0}else{b[n>>0]=0;fk(j,n);b[p>>0]=0}v=0;ta(59,j|0,0);p=v;v=0;if(p&1){p=Sa(0)|0;pd(p)};f[j>>2]=f[o>>2];f[j+4>>2]=f[o+4>>2];f[j+8>>2]=f[o+8>>2];p=0;while(1){if((p|0)==3)break;f[o+(p<<2)>>2]=0;p=p+1|0}$s(o);p=Gc[f[(f[a>>2]|0)+12>>2]&127](a)|0;b[e>>0]=p;p=Gc[f[(f[a>>2]|0)+16>>2]&127](a)|0;b[g>>0]=p;Vc[f[(f[a>>2]|0)+20>>2]&127](o,a);p=h+11|0;if((b[p>>0]|0)<0){q=f[h>>2]|0;b[n>>0]=0;fk(q,n);f[h+4>>2]=0}else{b[n>>0]=0;fk(h,n);b[p>>0]=0}v=0;ta(59,h|0,0);p=v;v=0;if(p&1){p=Sa(0)|0;pd(p)};f[h>>2]=f[o>>2];f[h+4>>2]=f[o+4>>2];f[h+8>>2]=f[o+8>>2];p=0;while(1){if((p|0)==3)break;f[o+(p<<2)>>2]=0;p=p+1|0}$s(o);Vc[f[(f[a>>2]|0)+24>>2]&127](o,a);p=i+11|0;if((b[p>>0]|0)<0){q=f[i>>2]|0;b[n>>0]=0;fk(q,n);f[i+4>>2]=0}else{b[n>>0]=0;fk(i,n);b[p>>0]=0}v=0;ta(59,i|0,0);p=v;v=0;if(p&1){p=Sa(0)|0;pd(p)};f[i>>2]=f[o>>2];f[i+4>>2]=f[o+4>>2];f[i+8>>2]=f[o+8>>2];p=0;while(1){if((p|0)==3)break;f[o+(p<<2)>>2]=0;p=p+1|0}$s(o);r=Gc[f[(f[a>>2]|0)+36>>2]&127](a)|0}else{a=Bk(c,25564)|0;Vc[f[(f[a>>2]|0)+44>>2]&127](n,a);c=f[n>>2]|0;b[d>>0]=c;b[d+1>>0]=c>>8;b[d+2>>0]=c>>16;b[d+3>>0]=c>>24;Vc[f[(f[a>>2]|0)+32>>2]&127](o,a);c=k+11|0;if((b[c>>0]|0)<0){d=f[k>>2]|0;b[n>>0]=0;fk(d,n);f[k+4>>2]=0}else{b[n>>0]=0;fk(k,n);b[c>>0]=0}v=0;ta(59,k|0,0);c=v;v=0;if(c&1){c=Sa(0)|0;pd(c)};f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];k=0;while(1){if((k|0)==3)break;f[o+(k<<2)>>2]=0;k=k+1|0}$s(o);Vc[f[(f[a>>2]|0)+28>>2]&127](o,a);k=j+11|0;if((b[k>>0]|0)<0){c=f[j>>2]|0;b[n>>0]=0;fk(c,n);f[j+4>>2]=0}else{b[n>>0]=0;fk(j,n);b[k>>0]=0}v=0;ta(59,j|0,0);k=v;v=0;if(k&1){k=Sa(0)|0;pd(k)};f[j>>2]=f[o>>2];f[j+4>>2]=f[o+4>>2];f[j+8>>2]=f[o+8>>2];j=0;while(1){if((j|0)==3)break;f[o+(j<<2)>>2]=0;j=j+1|0}$s(o);j=Gc[f[(f[a>>2]|0)+12>>2]&127](a)|0;b[e>>0]=j;j=Gc[f[(f[a>>2]|0)+16>>2]&127](a)|0;b[g>>0]=j;Vc[f[(f[a>>2]|0)+20>>2]&127](o,a);j=h+11|0;if((b[j>>0]|0)<0){g=f[h>>2]|0;b[n>>0]=0;fk(g,n);f[h+4>>2]=0}else{b[n>>0]=0;fk(h,n);b[j>>0]=0}v=0;ta(59,h|0,0);j=v;v=0;if(j&1){j=Sa(0)|0;pd(j)};f[h>>2]=f[o>>2];f[h+4>>2]=f[o+4>>2];f[h+8>>2]=f[o+8>>2];h=0;while(1){if((h|0)==3)break;f[o+(h<<2)>>2]=0;h=h+1|0}$s(o);Vc[f[(f[a>>2]|0)+24>>2]&127](o,a);h=i+11|0;if((b[h>>0]|0)<0){j=f[i>>2]|0;b[n>>0]=0;fk(j,n);f[i+4>>2]=0}else{b[n>>0]=0;fk(i,n);b[h>>0]=0}v=0;ta(59,i|0,0);h=v;v=0;if(h&1){h=Sa(0)|0;pd(h)};f[i>>2]=f[o>>2];f[i+4>>2]=f[o+4>>2];f[i+8>>2]=f[o+8>>2];i=0;while(1){if((i|0)==3)break;f[o+(i<<2)>>2]=0;i=i+1|0}$s(o);r=Gc[f[(f[a>>2]|0)+36>>2]&127](a)|0}f[l>>2]=r;t=m;return}function Xo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;d=a+4|0;e=(f[d>>2]|0)!=151;g=f[a>>2]|0;h=g;i=(f[c>>2]|0)-h|0;j=i<<1;k=i>>>0<2147483647?((j|0)==0?1:j):-1;j=(f[b>>2]|0)-h|0;h=Cg(e?g:0,k)|0;if(!h)Ls();do if(!e){g=f[a>>2]|0;f[a>>2]=h;if(g){v=0;sa(f[d>>2]|0,g|0);g=v;v=0;if(g&1){g=Sa(0)|0;pd(g)}else{l=f[a>>2]|0;break}}else l=h}else{f[a>>2]=h;l=h}while(0);f[d>>2]=153;f[b>>2]=l+j;f[c>>2]=(f[a>>2]|0)+k;return}function Yo(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;d=a+4|0;e=(f[d>>2]|0)!=151;g=f[a>>2]|0;h=g;i=(f[c>>2]|0)-h|0;j=i<<1;k=i>>>0<2147483647?((j|0)==0?4:j):-1;j=(f[b>>2]|0)-h>>2;h=Cg(e?g:0,k)|0;if(!h)Ls();do if(!e){g=f[a>>2]|0;f[a>>2]=h;if(g){v=0;sa(f[d>>2]|0,g|0);g=v;v=0;if(g&1){g=Sa(0)|0;pd(g)}else{l=f[a>>2]|0;break}}else l=h}else{f[a>>2]=h;l=h}while(0);f[d>>2]=153;f[b>>2]=l+(j<<2);f[c>>2]=(f[a>>2]|0)+(k>>>2<<2);return}function Zo(a){a=a|0;gk(a);return}function _o(a){a=a|0;gk(a);Ns(a);return}function $o(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;a=t;t=t+592|0;j=a+512|0;k=a+552|0;l=a+112|0;m=a+568|0;n=a+564|0;o=a+560|0;p=a+576|0;q=a+556|0;r=a;f[m>>2]=l;f[m+4>>2]=151;Sj(o,g);v=0;s=fa(24,o|0,25372)|0;u=v;v=0;if(u&1){u=Ra()|0;w=u;x=G}else{b[p>>0]=0;f[q>>2]=f[d>>2];u=f[g+4>>2]|0;v=0;f[j>>2]=f[q>>2];q=pa(2,c|0,j|0,e|0,o|0,u|0,h|0,p|0,s|0,m|0,n|0,l+400|0)|0;l=v;v=0;a:do if(l&1)y=9;else{b:do if(q){v=0;ha(f[(f[s>>2]|0)+48>>2]|0,s|0,19488,19498,j|0)|0;u=v;v=0;if(u&1){u=Ra()|0;z=u;A=G}else{u=f[n>>2]|0;e=f[m>>2]|0;g=u-e|0;B=e;e=u;if((g|0)>392){u=Ag((g>>>2)+2|0)|0;g=u;if(!u){v=0;ra(3);v=0;C=g}else{D=u;E=g;y=14}}else{D=r;E=0;y=14}do if((y|0)==14){if(!(b[p>>0]|0))F=D;else{b[D>>0]=45;F=D+1|0}g=j+40|0;u=j;H=B;I=F;J=e;while(1){if(H>>>0>=J>>>0)break;K=f[H>>2]|0;L=j;while(1){if((L|0)==(g|0)){M=g;break}if((f[L>>2]|0)==(K|0)){M=L;break}L=L+4|0}b[I>>0]=b[19488+(M-u>>2)>>0]|0;H=H+4|0;I=I+1|0;J=f[n>>2]|0}b[I>>0]=0;f[k>>2]=i;if((uh(r,19373,k)|0)!=1){v=0;sa(152,19377);v=0;C=E;break}if(E|0)Bg(E);break b}while(0);e=Ra()|0;B=G;if(C|0)Bg(C);z=e;A=B}N=z;O=A;break a}while(0);B=f[c>>2]|0;do if(B){e=f[B+12>>2]|0;if((e|0)==(f[B+16>>2]|0)){v=0;J=ea(f[(f[B>>2]|0)+36>>2]|0,B|0)|0;H=v;v=0;if(H&1){y=9;break a}else P=J}else P=Aj(f[e>>2]|0)|0;if(Tj(P,zj()|0)|0){f[c>>2]=0;Q=1;break}else{Q=(f[c>>2]|0)==0;break}}else Q=1;while(0);B=f[d>>2]|0;do if(B){e=f[B+12>>2]|0;if((e|0)==(f[B+16>>2]|0)){v=0;J=ea(f[(f[B>>2]|0)+36>>2]|0,B|0)|0;H=v;v=0;if(H&1){y=9;break a}else R=J}else R=Aj(f[e>>2]|0)|0;if(!(Tj(R,zj()|0)|0))if(Q)break;else{y=44;break}else{f[d>>2]=0;y=42;break}}else y=42;while(0);if((y|0)==42?Q:0)y=44;if((y|0)==44)f[h>>2]=f[h>>2]|2;B=f[c>>2]|0;Ck(o);e=f[m>>2]|0;f[m>>2]=0;if(e|0?(v=0,sa(f[m+4>>2]|0,e|0),e=v,v=0,e&1):0){e=Sa(0)|0;pd(e)}t=a;return B|0}while(0);if((y|0)==9){y=Ra()|0;N=y;O=G}w=N;x=O}Ck(o);o=f[m>>2]|0;f[m>>2]=0;if((o|0)!=0?(v=0,sa(f[m+4>>2]|0,o|0),o=v,v=0,o&1):0){o=Sa(0)|0;pd(o)}else{o=x;S=w}_a(S|0);return 0}function ap(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,H=0,I=0;a=t;t=t+432|0;j=a+424|0;k=a;l=a+416|0;m=a+408|0;n=a+400|0;o=a+428|0;p=a+404|0;f[l>>2]=k;f[l+4>>2]=151;Sj(n,g);v=0;q=fa(24,n|0,25372)|0;r=v;v=0;if(r&1){r=Ra()|0;s=r;u=G}else{b[o>>0]=0;r=f[d>>2]|0;f[p>>2]=r;w=f[g+4>>2]|0;g=r;v=0;f[j>>2]=f[p>>2];p=pa(2,c|0,j|0,e|0,n|0,w|0,h|0,o|0,q|0,l|0,m|0,k+400|0)|0;k=v;v=0;a:do if(k&1)x=11;else{if(p){w=i+8+3|0;if((b[w>>0]|0)<0){e=f[i>>2]|0;f[j>>2]=0;nk(e,j);f[i+4>>2]=0}else{f[j>>2]=0;nk(i,j);b[w>>0]=0}if(b[o>>0]|0){v=0;w=fa(f[(f[q>>2]|0)+44>>2]|0,q|0,45)|0;e=v;v=0;if(e&1){x=11;break}v=0;ta(72,i|0,w|0);w=v;v=0;if(w&1){x=11;break}}v=0;w=fa(f[(f[q>>2]|0)+44>>2]|0,q|0,48)|0;e=v;v=0;if(e&1){e=Ra()|0;y=e;z=G;break}e=f[m>>2]|0;A=e+-4|0;B=f[l>>2]|0;while(1){if(B>>>0>=A>>>0)break;if((f[B>>2]|0)!=(w|0))break;B=B+4|0}v=0;ga(32,i|0,B|0,e|0)|0;w=v;v=0;if(w&1){w=Ra()|0;y=w;z=G;break}}w=f[c>>2]|0;do if(w){A=f[w+12>>2]|0;if((A|0)==(f[w+16>>2]|0)){v=0;C=ea(f[(f[w>>2]|0)+36>>2]|0,w|0)|0;D=v;v=0;if(D&1){x=11;break a}else E=C}else E=Aj(f[A>>2]|0)|0;if(Tj(E,zj()|0)|0){f[c>>2]=0;F=1;break}else{F=(f[c>>2]|0)==0;break}}else F=1;while(0);do if(r){w=f[g+12>>2]|0;if((w|0)==(f[g+16>>2]|0)){v=0;e=ea(f[(f[r>>2]|0)+36>>2]|0,g|0)|0;B=v;v=0;if(B&1){x=11;break a}else H=e}else H=Aj(f[w>>2]|0)|0;if(!(Tj(H,zj()|0)|0))if(F)break;else{x=35;break}else{f[d>>2]=0;x=33;break}}else x=33;while(0);if((x|0)==33?F:0)x=35;if((x|0)==35)f[h>>2]=f[h>>2]|2;w=f[c>>2]|0;Ck(n);e=f[l>>2]|0;f[l>>2]=0;if(e|0?(v=0,sa(f[l+4>>2]|0,e|0),e=v,v=0,e&1):0){e=Sa(0)|0;pd(e)}t=a;return w|0}while(0);if((x|0)==11){x=Ra()|0;y=x;z=G}s=y;u=z}Ck(n);n=f[l>>2]|0;f[l>>2]=0;if((n|0)!=0?(v=0,sa(f[l+4>>2]|0,n|0),n=v,v=0,n&1):0){n=Sa(0)|0;pd(n)}else{n=u;I=s}_a(I|0);return 0}function bp(a,c,d,e,g,i,j,k,l,m,n){a=a|0;c=c|0;d=d|0;e=e|0;g=g|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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,fa=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,wa=0,xa=0,ya=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,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=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;o=t;t=t+512|0;p=o+496|0;q=o;r=o+488|0;s=o+480|0;u=o+476|0;w=o+500|0;x=o+472|0;y=o+468|0;z=o+456|0;A=o+444|0;B=o+432|0;C=o+420|0;D=o+408|0;E=o+404|0;F=o+400|0;f[p>>2]=n;f[r>>2]=q;f[r+4>>2]=151;f[s>>2]=q;f[u>>2]=q+400;f[z>>2]=0;f[z+4>>2]=0;f[z+8>>2]=0;q=0;while(1){if((q|0)==3)break;f[z+(q<<2)>>2]=0;q=q+1|0}f[A>>2]=0;f[A+4>>2]=0;f[A+8>>2]=0;q=0;while(1){if((q|0)==3)break;f[A+(q<<2)>>2]=0;q=q+1|0}f[B>>2]=0;f[B+4>>2]=0;f[B+8>>2]=0;q=0;while(1){if((q|0)==3)break;f[B+(q<<2)>>2]=0;q=q+1|0}f[C>>2]=0;f[C+4>>2]=0;f[C+8>>2]=0;q=0;while(1){if((q|0)==3)break;f[C+(q<<2)>>2]=0;q=q+1|0}f[D>>2]=0;f[D+4>>2]=0;f[D+8>>2]=0;q=0;while(1){if((q|0)==3)break;f[D+(q<<2)>>2]=0;q=q+1|0}v=0;za(2,d|0,e|0,w|0,x|0,y|0,z|0,A|0,B|0,C|0,E|0);e=v;v=0;a:do if(!(e&1)){f[m>>2]=f[l>>2];d=B+8+3|0;q=B+4|0;n=C+8+3|0;H=C+4|0;I=z+11|0;J=z+4|0;K=(g&512|0)!=0;L=A+8+3|0;M=w+3|0;N=A+4|0;O=D+8+3|0;P=D+4|0;Q=0;R=0;b:while(1){if(R>>>0>=4){S=263;break}T=f[a>>2]|0;do if(T){U=f[T+12>>2]|0;if((U|0)==(f[T+16>>2]|0)){v=0;V=ea(f[(f[T>>2]|0)+36>>2]|0,T|0)|0;W=v;v=0;if(W&1){S=36;break b}else X=V}else X=Aj(f[U>>2]|0)|0;if(Tj(X,zj()|0)|0){f[a>>2]=0;Y=1;break}else{Y=(f[a>>2]|0)==0;break}}else Y=1;while(0);T=f[c>>2]|0;do if(T){U=f[T+12>>2]|0;if((U|0)==(f[T+16>>2]|0)){v=0;V=ea(f[(f[T>>2]|0)+36>>2]|0,T|0)|0;W=v;v=0;if(W&1){S=36;break b}else Z=V}else Z=Aj(f[U>>2]|0)|0;if(!(Tj(Z,zj()|0)|0))if(Y){_=T;break}else{S=263;break b}else{f[c>>2]=0;S=32;break}}else S=32;while(0);if((S|0)==32){S=0;if(Y){S=263;break}else _=0}c:do switch(b[w+R>>0]|0){case 1:{if((R|0)!=3){T=f[a>>2]|0;U=f[T+12>>2]|0;if((U|0)==(f[T+16>>2]|0)){v=0;V=ea(f[(f[T>>2]|0)+36>>2]|0,T|0)|0;T=v;v=0;if(T&1){S=36;break b}else $=V}else $=Aj(f[U>>2]|0)|0;v=0;U=ga(f[(f[k>>2]|0)+12>>2]|0,k|0,8192,$|0)|0;V=v;v=0;if(V&1){S=36;break b}if(!U){S=50;break b}U=f[a>>2]|0;V=U+12|0;T=f[V>>2]|0;if((T|0)==(f[U+16>>2]|0)){v=0;W=ea(f[(f[U>>2]|0)+40>>2]|0,U|0)|0;U=v;v=0;if(U&1){S=36;break b}else aa=W}else{f[V>>2]=T+4;aa=Aj(f[T>>2]|0)|0}v=0;ta(72,D|0,aa|0);T=v;v=0;if(T&1){S=36;break b}else S=52}else ba=Q;break}case 0:{if((R|0)==3)ba=Q;else S=52;break}case 3:{T=b[d>>0]|0;V=T<<24>>24<0?f[q>>2]|0:T&255;T=b[n>>0]|0;W=T<<24>>24<0?f[H>>2]|0:T&255;if((V|0)==(0-W|0))ba=Q;else{if(!V){V=f[a>>2]|0;T=f[V+12>>2]|0;if((T|0)==(f[V+16>>2]|0)){v=0;U=ea(f[(f[V>>2]|0)+36>>2]|0,V|0)|0;V=v;v=0;if(V&1){S=36;break b}else ca=U}else ca=Aj(f[T>>2]|0)|0;if((ca|0)!=(f[((b[n>>0]|0)<0?f[C>>2]|0:C)>>2]|0)){ba=Q;break c}T=f[a>>2]|0;U=T+12|0;V=f[U>>2]|0;if((V|0)==(f[T+16>>2]|0)){v=0;ea(f[(f[T>>2]|0)+40>>2]|0,T|0)|0;T=v;v=0;if(T&1){S=36;break b}}else{f[U>>2]=V+4;Aj(f[V>>2]|0)|0}b[j>>0]=1;V=b[n>>0]|0;ba=(V<<24>>24<0?f[H>>2]|0:V&255)>>>0>1?C:Q;break c}V=f[a>>2]|0;U=f[V+12>>2]|0;T=(U|0)==(f[V+16>>2]|0);if(!W){if(T){v=0;W=ea(f[(f[V>>2]|0)+36>>2]|0,V|0)|0;da=v;v=0;if(da&1){S=36;break b}else fa=W}else fa=Aj(f[U>>2]|0)|0;if((fa|0)!=(f[((b[d>>0]|0)<0?f[B>>2]|0:B)>>2]|0)){b[j>>0]=1;ba=Q;break c}W=f[a>>2]|0;da=W+12|0;ha=f[da>>2]|0;if((ha|0)==(f[W+16>>2]|0)){v=0;ea(f[(f[W>>2]|0)+40>>2]|0,W|0)|0;W=v;v=0;if(W&1){S=36;break b}}else{f[da>>2]=ha+4;Aj(f[ha>>2]|0)|0}ha=b[d>>0]|0;ba=(ha<<24>>24<0?f[q>>2]|0:ha&255)>>>0>1?B:Q;break c}if(T){v=0;T=ea(f[(f[V>>2]|0)+36>>2]|0,V|0)|0;V=v;v=0;if(V&1){S=36;break b}else ia=T}else ia=Aj(f[U>>2]|0)|0;U=f[a>>2]|0;T=U+12|0;V=f[T>>2]|0;ha=(V|0)==(f[U+16>>2]|0);if((ia|0)==(f[((b[d>>0]|0)<0?f[B>>2]|0:B)>>2]|0)){if(ha){v=0;ea(f[(f[U>>2]|0)+40>>2]|0,U|0)|0;da=v;v=0;if(da&1){S=36;break b}}else{f[T>>2]=V+4;Aj(f[V>>2]|0)|0}T=b[d>>0]|0;ba=(T<<24>>24<0?f[q>>2]|0:T&255)>>>0>1?B:Q;break c}if(ha){v=0;ha=ea(f[(f[U>>2]|0)+36>>2]|0,U|0)|0;U=v;v=0;if(U&1){S=36;break b}else ja=ha}else ja=Aj(f[V>>2]|0)|0;if((ja|0)!=(f[((b[n>>0]|0)<0?f[C>>2]|0:C)>>2]|0)){S=113;break b}V=f[a>>2]|0;ha=V+12|0;U=f[ha>>2]|0;if((U|0)==(f[V+16>>2]|0)){v=0;ea(f[(f[V>>2]|0)+40>>2]|0,V|0)|0;V=v;v=0;if(V&1){S=36;break b}}else{f[ha>>2]=U+4;Aj(f[U>>2]|0)|0}b[j>>0]=1;U=b[n>>0]|0;ba=(U<<24>>24<0?f[H>>2]|0:U&255)>>>0>1?C:Q}break}case 2:{if(R>>>0<2|(Q|0)!=0){U=b[L>>0]|0;ha=f[A>>2]|0;V=U<<24>>24<0?ha:A;if(!R){ka=V;la=ha;ma=U}else{na=V;oa=ha;pa=U;S=118}}else{if(!(K|(R|0)==2&(b[M>>0]|0)!=0)){ba=0;break c}U=b[L>>0]|0;ha=f[A>>2]|0;na=U<<24>>24<0?ha:A;oa=ha;pa=U;S=118}d:do if((S|0)==118){S=0;if((h[w+(R+-1)>>0]|0)<2){U=na;ha=pa;V=oa;while(1){T=ha<<24>>24<0;da=U;if(((T?V:A)+((T?f[N>>2]|0:ha&255)<<2)|0)==(da|0)){qa=ha;ra=V;break}v=0;T=ga(f[(f[k>>2]|0)+12>>2]|0,k|0,8192,f[da>>2]|0)|0;W=v;v=0;if(W&1){S=125;break b}if(!T){S=123;break}U=da+4|0;ha=b[L>>0]|0;V=f[A>>2]|0}if((S|0)==123){S=0;qa=b[L>>0]|0;ra=f[A>>2]|0}V=qa<<24>>24<0?ra:A;ha=V;da=U-ha>>2;T=b[O>>0]|0;W=T<<24>>24<0;wa=f[P>>2]|0;xa=T&255;if(da>>>0>(W?wa:xa)>>>0){ka=ha;la=ra;ma=qa}else{T=(f[D>>2]|0)+(wa<<2)|0;wa=D+(xa<<2)|0;xa=W?T:wa;ya=V;V=(W?T:wa)+(0-da<<2)|0;while(1){if((V|0)==(xa|0)){ka=U;la=ra;ma=qa;break d}if((f[V>>2]|0)!=(f[ya>>2]|0)){ka=ha;la=ra;ma=qa;break d}ya=ya+4|0;V=V+4|0}}}else{ka=na;la=oa;ma=pa}}while(0);V=ka;ya=ma;ha=la;U=_;e:while(1){xa=ya<<24>>24<0;if((V|0)==((xa?ha:A)+((xa?f[N>>2]|0:ya&255)<<2)|0))break;xa=f[a>>2]|0;do if(xa){da=f[xa+12>>2]|0;if((da|0)==(f[xa+16>>2]|0)){v=0;wa=ea(f[(f[xa>>2]|0)+36>>2]|0,xa|0)|0;T=v;v=0;if(T&1){S=156;break b}else Aa=wa}else Aa=Aj(f[da>>2]|0)|0;if(Tj(Aa,zj()|0)|0){f[a>>2]=0;Ba=1;break}else{Ba=(f[a>>2]|0)==0;break}}else Ba=1;while(0);do if(U){xa=f[U+12>>2]|0;if((xa|0)==(f[U+16>>2]|0)){v=0;da=ea(f[(f[U>>2]|0)+36>>2]|0,U|0)|0;wa=v;v=0;if(wa&1){S=156;break b}else Ca=da}else Ca=Aj(f[xa>>2]|0)|0;if(!(Tj(Ca,zj()|0)|0))if(Ba){Da=U;break}else break e;else{f[c>>2]=0;S=146;break}}else S=146;while(0);if((S|0)==146){S=0;if(Ba)break;else Da=0}xa=f[a>>2]|0;da=f[xa+12>>2]|0;if((da|0)==(f[xa+16>>2]|0)){v=0;wa=ea(f[(f[xa>>2]|0)+36>>2]|0,xa|0)|0;xa=v;v=0;if(xa&1){S=156;break b}else Ea=wa}else Ea=Aj(f[da>>2]|0)|0;if((Ea|0)!=(f[V>>2]|0))break;da=f[a>>2]|0;wa=da+12|0;xa=f[wa>>2]|0;if((xa|0)==(f[da+16>>2]|0)){v=0;ea(f[(f[da>>2]|0)+40>>2]|0,da|0)|0;da=v;v=0;if(da&1){S=157;break b}}else{f[wa>>2]=xa+4;Aj(f[xa>>2]|0)|0}V=V+4|0;ya=b[L>>0]|0;ha=f[A>>2]|0;U=Da}if(K?(U=b[L>>0]|0,ha=U<<24>>24<0,(V|0)!=((ha?f[A>>2]|0:A)+((ha?f[N>>2]|0:U&255)<<2)|0)):0){S=160;break b}else ba=Q;break}case 4:{U=0;ha=_;ya=_;f:while(1){xa=f[a>>2]|0;do if(xa){wa=f[xa+12>>2]|0;if((wa|0)==(f[xa+16>>2]|0)){v=0;da=ea(f[(f[xa>>2]|0)+36>>2]|0,xa|0)|0;T=v;v=0;if(T&1){S=185;break b}else Fa=da}else Fa=Aj(f[wa>>2]|0)|0;if(Tj(Fa,zj()|0)|0){f[a>>2]=0;Ga=1;break}else{Ga=(f[a>>2]|0)==0;break}}else Ga=1;while(0);do if(ha){xa=f[ha+12>>2]|0;if((xa|0)==(f[ha+16>>2]|0)){v=0;wa=ea(f[(f[ha>>2]|0)+36>>2]|0,ha|0)|0;da=v;v=0;if(da&1){S=185;break b}else Ha=wa}else Ha=Aj(f[xa>>2]|0)|0;if(!(Tj(Ha,zj()|0)|0))if(Ga){Ia=ya;Ja=ha;break}else{Ka=ya;break f}else{f[c>>2]=0;La=0;S=174;break}}else{La=ya;S=174}while(0);if((S|0)==174){S=0;if(Ga){Ka=La;break}else{Ia=La;Ja=0}}xa=f[a>>2]|0;wa=f[xa+12>>2]|0;if((wa|0)==(f[xa+16>>2]|0)){v=0;da=ea(f[(f[xa>>2]|0)+36>>2]|0,xa|0)|0;xa=v;v=0;if(xa&1){S=188;break b}else Ma=da}else Ma=Aj(f[wa>>2]|0)|0;v=0;wa=ga(f[(f[k>>2]|0)+12>>2]|0,k|0,2048,Ma|0)|0;da=v;v=0;if(da&1){S=188;break b}if(wa){wa=f[m>>2]|0;if((wa|0)==(f[p>>2]|0)){v=0;ua(25,l|0,m|0,p|0);da=v;v=0;if(da&1){S=188;break b}Na=f[m>>2]|0}else Na=wa;f[m>>2]=Na+4;f[Na>>2]=Ma;Oa=U+1|0}else{wa=b[I>>0]|0;if(!((Ma|0)==(f[y>>2]|0)&(U|0?((wa<<24>>24<0?f[J>>2]|0:wa&255)|0)!=0:0))){Ka=Ia;break}wa=f[s>>2]|0;if((wa|0)==(f[u>>2]|0)){v=0;ua(24,r|0,s|0,u|0);da=v;v=0;if(da&1){S=188;break b}Pa=f[s>>2]|0}else Pa=wa;f[s>>2]=Pa+4;f[Pa>>2]=U;Oa=0}wa=f[a>>2]|0;da=wa+12|0;xa=f[da>>2]|0;if((xa|0)==(f[wa+16>>2]|0)){v=0;ea(f[(f[wa>>2]|0)+40>>2]|0,wa|0)|0;wa=v;v=0;if(wa&1){S=185;break b}}else{f[da>>2]=xa+4;Aj(f[xa>>2]|0)|0}U=Oa;ha=Ja;ya=Ia}ya=f[s>>2]|0;if(U|0?(f[r>>2]|0)!=(ya|0):0){if((ya|0)==(f[u>>2]|0)){v=0;ua(24,r|0,s|0,u|0);ha=v;v=0;if(ha&1){S=186;break b}Qa=f[s>>2]|0}else Qa=ya;f[s>>2]=Qa+4;f[Qa>>2]=U}g:do if((f[E>>2]|0)>0){ya=f[a>>2]|0;do if(ya){ha=f[ya+12>>2]|0;if((ha|0)==(f[ya+16>>2]|0)){v=0;V=ea(f[(f[ya>>2]|0)+36>>2]|0,ya|0)|0;xa=v;v=0;if(xa&1){S=186;break b}else Ta=V}else Ta=Aj(f[ha>>2]|0)|0;if(Tj(Ta,zj()|0)|0){f[a>>2]=0;Ua=1;break}else{Ua=(f[a>>2]|0)==0;break}}else Ua=1;while(0);do if(Ka){ya=f[Ka+12>>2]|0;if((ya|0)==(f[Ka+16>>2]|0)){v=0;ha=ea(f[(f[Ka>>2]|0)+36>>2]|0,Ka|0)|0;V=v;v=0;if(V&1){S=186;break b}else Va=ha}else Va=Aj(f[ya>>2]|0)|0;if(!(Tj(Va,zj()|0)|0))if(Ua){Wa=Ka;break}else{S=224;break b}else{f[c>>2]=0;S=218;break}}else S=218;while(0);if((S|0)==218){S=0;if(Ua){S=224;break b}else Wa=0}ya=f[a>>2]|0;ha=f[ya+12>>2]|0;if((ha|0)==(f[ya+16>>2]|0)){v=0;V=ea(f[(f[ya>>2]|0)+36>>2]|0,ya|0)|0;ya=v;v=0;if(ya&1){S=186;break b}else Xa=V}else Xa=Aj(f[ha>>2]|0)|0;if((Xa|0)!=(f[x>>2]|0)){S=224;break b}ha=f[a>>2]|0;V=ha+12|0;ya=f[V>>2]|0;if((ya|0)==(f[ha+16>>2]|0)){v=0;ea(f[(f[ha>>2]|0)+40>>2]|0,ha|0)|0;ha=v;v=0;if(ha&1){S=186;break b}}else{f[V>>2]=ya+4;Aj(f[ya>>2]|0)|0}ya=Wa;while(1){if((f[E>>2]|0)<=0)break g;V=f[a>>2]|0;do if(V){ha=f[V+12>>2]|0;if((ha|0)==(f[V+16>>2]|0)){v=0;xa=ea(f[(f[V>>2]|0)+36>>2]|0,V|0)|0;da=v;v=0;if(da&1){S=184;break b}else Ya=xa}else Ya=Aj(f[ha>>2]|0)|0;if(Tj(Ya,zj()|0)|0){f[a>>2]=0;Za=1;break}else{Za=(f[a>>2]|0)==0;break}}else Za=1;while(0);do if(ya){V=f[ya+12>>2]|0;if((V|0)==(f[ya+16>>2]|0)){v=0;ha=ea(f[(f[ya>>2]|0)+36>>2]|0,ya|0)|0;xa=v;v=0;if(xa&1){S=184;break b}else $a=ha}else $a=Aj(f[V>>2]|0)|0;if(!(Tj($a,zj()|0)|0))if(Za){ab=ya;break}else{S=250;break b}else{f[c>>2]=0;S=243;break}}else S=243;while(0);if((S|0)==243){S=0;if(Za){S=250;break b}else ab=0}V=f[a>>2]|0;ha=f[V+12>>2]|0;if((ha|0)==(f[V+16>>2]|0)){v=0;xa=ea(f[(f[V>>2]|0)+36>>2]|0,V|0)|0;V=v;v=0;if(V&1){S=184;break b}else bb=xa}else bb=Aj(f[ha>>2]|0)|0;v=0;ha=ga(f[(f[k>>2]|0)+12>>2]|0,k|0,2048,bb|0)|0;xa=v;v=0;if(xa&1){S=184;break b}if(!ha){S=250;break b}if((f[m>>2]|0)==(f[p>>2]|0)?(v=0,ua(25,l|0,m|0,p|0),ha=v,v=0,ha&1):0){S=184;break b}ha=f[a>>2]|0;xa=f[ha+12>>2]|0;if((xa|0)==(f[ha+16>>2]|0)){v=0;V=ea(f[(f[ha>>2]|0)+36>>2]|0,ha|0)|0;ha=v;v=0;if(ha&1){S=184;break b}else cb=V}else cb=Aj(f[xa>>2]|0)|0;xa=f[m>>2]|0;f[m>>2]=xa+4;f[xa>>2]=cb;f[E>>2]=(f[E>>2]|0)+-1;xa=f[a>>2]|0;V=xa+12|0;ha=f[V>>2]|0;if((ha|0)==(f[xa+16>>2]|0)){v=0;ea(f[(f[xa>>2]|0)+40>>2]|0,xa|0)|0;xa=v;v=0;if(xa&1){S=184;break b}}else{f[V>>2]=ha+4;Aj(f[ha>>2]|0)|0}ya=ab}}while(0);if((f[m>>2]|0)==(f[l>>2]|0)){S=261;break b}else ba=Q;break}default:ba=Q}while(0);h:do if((S|0)==52){S=0;U=_;while(1){ya=f[a>>2]|0;do if(ya){ha=f[ya+12>>2]|0;if((ha|0)==(f[ya+16>>2]|0)){v=0;V=ea(f[(f[ya>>2]|0)+36>>2]|0,ya|0)|0;xa=v;v=0;if(xa&1){S=35;break b}else db=V}else db=Aj(f[ha>>2]|0)|0;if(Tj(db,zj()|0)|0){f[a>>2]=0;eb=1;break}else{eb=(f[a>>2]|0)==0;break}}else eb=1;while(0);do if(U){ya=f[U+12>>2]|0;if((ya|0)==(f[U+16>>2]|0)){v=0;ha=ea(f[(f[U>>2]|0)+36>>2]|0,U|0)|0;V=v;v=0;if(V&1){S=35;break b}else fb=ha}else fb=Aj(f[ya>>2]|0)|0;if(!(Tj(fb,zj()|0)|0))if(eb){gb=U;break}else{ba=Q;break h}else{f[c>>2]=0;S=66;break}}else S=66;while(0);if((S|0)==66){S=0;if(eb){ba=Q;break h}else gb=0}ya=f[a>>2]|0;ha=f[ya+12>>2]|0;if((ha|0)==(f[ya+16>>2]|0)){v=0;V=ea(f[(f[ya>>2]|0)+36>>2]|0,ya|0)|0;ya=v;v=0;if(ya&1){S=35;break b}else hb=V}else hb=Aj(f[ha>>2]|0)|0;v=0;ha=ga(f[(f[k>>2]|0)+12>>2]|0,k|0,8192,hb|0)|0;V=v;v=0;if(V&1){S=35;break b}if(!ha){ba=Q;break h}ha=f[a>>2]|0;V=ha+12|0;ya=f[V>>2]|0;if((ya|0)==(f[ha+16>>2]|0)){v=0;xa=ea(f[(f[ha>>2]|0)+40>>2]|0,ha|0)|0;ha=v;v=0;if(ha&1){S=35;break b}else ib=xa}else{f[V>>2]=ya+4;ib=Aj(f[ya>>2]|0)|0}v=0;ta(72,D|0,ib|0);ya=v;v=0;if(ya&1){S=35;break b}else U=gb}}while(0);Q=ba;R=R+1|0}i:switch(S|0){case 35:{jb=Ra()|0;kb=G;S=37;break}case 36:{jb=Ra()|0;kb=G;S=37;break}case 50:{f[i>>2]=f[i>>2]|4;lb=0;S=302;break}case 113:{f[i>>2]=f[i>>2]|4;lb=0;S=302;break}case 125:{mb=Ra()|0;nb=G;break a;break}case 156:{mb=Ra()|0;nb=G;break a;break}case 157:{mb=Ra()|0;nb=G;break a;break}case 160:{f[i>>2]=f[i>>2]|4;lb=0;S=302;break}case 184:{ob=Ra()|0;pb=G;S=187;break}case 185:{ob=Ra()|0;pb=G;S=187;break}case 186:{ob=Ra()|0;pb=G;S=187;break}case 188:{mb=Ra()|0;nb=G;break a;break}case 224:{f[i>>2]=f[i>>2]|4;lb=0;S=302;break}case 250:{f[i>>2]=f[i>>2]|4;lb=0;S=302;break}case 261:{f[i>>2]=f[i>>2]|4;lb=0;S=302;break}case 263:{j:do if(Q|0){R=Q+8+3|0;J=Q+4|0;I=1;k:while(1){N=b[R>>0]|0;if(N<<24>>24<0)qb=f[J>>2]|0;else qb=N&255;if(I>>>0>=qb>>>0)break j;N=f[a>>2]|0;do if(N){L=f[N+12>>2]|0;if((L|0)==(f[N+16>>2]|0)){v=0;K=ea(f[(f[N>>2]|0)+36>>2]|0,N|0)|0;P=v;v=0;if(P&1){S=291;break k}else rb=K}else rb=Aj(f[L>>2]|0)|0;if(Tj(rb,zj()|0)|0){f[a>>2]=0;sb=1;break}else{sb=(f[a>>2]|0)==0;break}}else sb=1;while(0);N=f[c>>2]|0;do if(N){L=f[N+12>>2]|0;if((L|0)==(f[N+16>>2]|0)){v=0;K=ea(f[(f[N>>2]|0)+36>>2]|0,N|0)|0;P=v;v=0;if(P&1){S=291;break k}else tb=K}else tb=Aj(f[L>>2]|0)|0;if(!(Tj(tb,zj()|0)|0))if(sb)break;else{S=290;break k}else{f[c>>2]=0;S=282;break}}else S=282;while(0);if((S|0)==282?(S=0,sb):0){S=290;break}N=f[a>>2]|0;L=f[N+12>>2]|0;if((L|0)==(f[N+16>>2]|0)){v=0;K=ea(f[(f[N>>2]|0)+36>>2]|0,N|0)|0;N=v;v=0;if(N&1){S=291;break}else ub=K}else ub=Aj(f[L>>2]|0)|0;if((b[R>>0]|0)<0)vb=f[Q>>2]|0;else vb=Q;if((ub|0)!=(f[vb+(I<<2)>>2]|0)){S=290;break}L=f[a>>2]|0;K=L+12|0;N=f[K>>2]|0;if((N|0)==(f[L+16>>2]|0)){v=0;ea(f[(f[L>>2]|0)+40>>2]|0,L|0)|0;L=v;v=0;if(L&1){S=291;break}}else{f[K>>2]=N+4;Aj(f[N>>2]|0)|0}I=I+1|0}if((S|0)==290){f[i>>2]=f[i>>2]|4;lb=0;S=302;break i}else if((S|0)==291){I=Ra()|0;mb=I;nb=G;break a}}while(0);Q=f[r>>2]|0;I=f[s>>2]|0;if((Q|0)!=(I|0)){f[F>>2]=0;v=0;va(8,z|0,Q|0,I|0,F|0);I=v;v=0;if(I&1){I=Ra()|0;mb=I;nb=G;break a}if(!(f[F>>2]|0)){lb=1;S=302;break}else{f[i>>2]=f[i>>2]|4;lb=0;S=302;break}}else{lb=1;S=302}break}}if((S|0)==37){mb=jb;nb=kb;break}else if((S|0)==187){mb=ob;nb=pb;break}else if((S|0)==302){tt(D);tt(C);tt(B);tt(A);$s(z);I=f[r>>2]|0;f[r>>2]=0;if(I|0?(v=0,sa(f[r+4>>2]|0,I|0),I=v,v=0,I&1):0){I=Sa(0)|0;pd(I)}t=o;return lb|0}}else{I=Ra()|0;mb=I;nb=G}while(0);tt(D);tt(C);tt(B);tt(A);$s(z);z=f[r>>2]|0;f[r>>2]=0;if(z|0?(v=0,sa(f[r+4>>2]|0,z|0),z=v,v=0,z&1):0){z=Sa(0)|0;pd(z)}_a(mb|0);return 0}function cp(a,c,d){a=a|0;c=c|0;d=d|0;var e=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=t;t=t+16|0;g=e;h=a+8|0;i=h+3|0;j=b[i>>0]|0;k=j<<24>>24<0;if(k){l=(f[h>>2]&2147483647)+-1|0;m=f[a+4>>2]|0}else{l=1;m=j&255}h=d-c|0;n=h>>2;do if(h|0){if(k){o=f[a>>2]|0;p=f[a+4>>2]|0}else{o=a;p=j&255}if(dp(c,o,o+(p<<2)|0)|0){f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;ep(g,c,d);q=b[g+8+3>>0]|0;r=q<<24>>24<0;v=0;ga(33,a|0,(r?f[g>>2]|0:g)|0,(r?f[g+4>>2]|0:q&255)|0)|0;q=v;v=0;if(q&1){q=Ra()|0;tt(g);_a(q|0)}else{tt(g);break}}if((l-m|0)>>>0<n>>>0)zt(a,l,m+n-l|0,m,m,0,0);if((b[i>>0]|0)<0)s=f[a>>2]|0;else s=a;q=s+(m<<2)|0;r=c;while(1){if((r|0)==(d|0))break;nk(q,r);q=q+4|0;r=r+4|0}f[g>>2]=0;nk(q,g);r=m+n|0;if((b[i>>0]|0)<0){f[a+4>>2]=r;break}else{b[i>>0]=r;break}}while(0);t=e;return a|0}function dp(a,b,c){a=a|0;b=b|0;c=c|0;return b>>>0<=a>>>0&a>>>0<c>>>0|0}function ep(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;e=t;t=t+16|0;g=e;h=d-c>>2;if(h>>>0>1073741807)Vs(a);do if(h>>>0>=2){i=h+4&-4;if(i>>>0<=1073741823){j=Ms(i<<2)|0;f[a>>2]=j;f[a+8>>2]=i|-2147483648;f[a+4>>2]=h;k=j;break}j=Na(8)|0;v=0;ta(57,j|0,20286);i=v;v=0;if(i&1){i=Ra()|0;Ta(j|0);_a(i|0)}else{f[j>>2]=13812;Va(j|0,9184,130)}}else{b[a+8+3>>0]=h;k=a}while(0);a=c;c=k;while(1){if((a|0)==(d|0))break;nk(c,a);a=a+4|0;c=c+4|0}f[g>>2]=0;nk(c,g);t=e;return}function fp(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|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;m=t;t=t+16|0;n=m+12|0;o=m;if(a){a=Bk(c,25588)|0;Vc[f[(f[a>>2]|0)+44>>2]&127](n,a);p=f[n>>2]|0;b[d>>0]=p;b[d+1>>0]=p>>8;b[d+2>>0]=p>>16;b[d+3>>0]=p>>24;Vc[f[(f[a>>2]|0)+32>>2]&127](o,a);p=k+8+3|0;if((b[p>>0]|0)<0){q=f[k>>2]|0;f[n>>2]=0;nk(q,n);f[k+4>>2]=0}else{f[n>>2]=0;nk(k,n);b[p>>0]=0}v=0;ta(73,k|0,0);p=v;v=0;if(p&1){p=Sa(0)|0;pd(p)};f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];p=0;while(1){if((p|0)==3)break;f[o+(p<<2)>>2]=0;p=p+1|0}tt(o);Vc[f[(f[a>>2]|0)+28>>2]&127](o,a);p=j+8+3|0;if((b[p>>0]|0)<0){q=f[j>>2]|0;f[n>>2]=0;nk(q,n);f[j+4>>2]=0}else{f[n>>2]=0;nk(j,n);b[p>>0]=0}v=0;ta(73,j|0,0);p=v;v=0;if(p&1){p=Sa(0)|0;pd(p)};f[j>>2]=f[o>>2];f[j+4>>2]=f[o+4>>2];f[j+8>>2]=f[o+8>>2];p=0;while(1){if((p|0)==3)break;f[o+(p<<2)>>2]=0;p=p+1|0}tt(o);p=Gc[f[(f[a>>2]|0)+12>>2]&127](a)|0;f[e>>2]=p;p=Gc[f[(f[a>>2]|0)+16>>2]&127](a)|0;f[g>>2]=p;Vc[f[(f[a>>2]|0)+20>>2]&127](o,a);p=h+11|0;if((b[p>>0]|0)<0){q=f[h>>2]|0;b[n>>0]=0;fk(q,n);f[h+4>>2]=0}else{b[n>>0]=0;fk(h,n);b[p>>0]=0}v=0;ta(59,h|0,0);p=v;v=0;if(p&1){p=Sa(0)|0;pd(p)};f[h>>2]=f[o>>2];f[h+4>>2]=f[o+4>>2];f[h+8>>2]=f[o+8>>2];p=0;while(1){if((p|0)==3)break;f[o+(p<<2)>>2]=0;p=p+1|0}$s(o);Vc[f[(f[a>>2]|0)+24>>2]&127](o,a);p=i+8+3|0;if((b[p>>0]|0)<0){q=f[i>>2]|0;f[n>>2]=0;nk(q,n);f[i+4>>2]=0}else{f[n>>2]=0;nk(i,n);b[p>>0]=0}v=0;ta(73,i|0,0);p=v;v=0;if(p&1){p=Sa(0)|0;pd(p)};f[i>>2]=f[o>>2];f[i+4>>2]=f[o+4>>2];f[i+8>>2]=f[o+8>>2];p=0;while(1){if((p|0)==3)break;f[o+(p<<2)>>2]=0;p=p+1|0}tt(o);r=Gc[f[(f[a>>2]|0)+36>>2]&127](a)|0}else{a=Bk(c,25580)|0;Vc[f[(f[a>>2]|0)+44>>2]&127](n,a);c=f[n>>2]|0;b[d>>0]=c;b[d+1>>0]=c>>8;b[d+2>>0]=c>>16;b[d+3>>0]=c>>24;Vc[f[(f[a>>2]|0)+32>>2]&127](o,a);c=k+8+3|0;if((b[c>>0]|0)<0){d=f[k>>2]|0;f[n>>2]=0;nk(d,n);f[k+4>>2]=0}else{f[n>>2]=0;nk(k,n);b[c>>0]=0}v=0;ta(73,k|0,0);c=v;v=0;if(c&1){c=Sa(0)|0;pd(c)};f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];k=0;while(1){if((k|0)==3)break;f[o+(k<<2)>>2]=0;k=k+1|0}tt(o);Vc[f[(f[a>>2]|0)+28>>2]&127](o,a);k=j+8+3|0;if((b[k>>0]|0)<0){c=f[j>>2]|0;f[n>>2]=0;nk(c,n);f[j+4>>2]=0}else{f[n>>2]=0;nk(j,n);b[k>>0]=0}v=0;ta(73,j|0,0);k=v;v=0;if(k&1){k=Sa(0)|0;pd(k)};f[j>>2]=f[o>>2];f[j+4>>2]=f[o+4>>2];f[j+8>>2]=f[o+8>>2];j=0;while(1){if((j|0)==3)break;f[o+(j<<2)>>2]=0;j=j+1|0}tt(o);j=Gc[f[(f[a>>2]|0)+12>>2]&127](a)|0;f[e>>2]=j;j=Gc[f[(f[a>>2]|0)+16>>2]&127](a)|0;f[g>>2]=j;Vc[f[(f[a>>2]|0)+20>>2]&127](o,a);j=h+11|0;if((b[j>>0]|0)<0){g=f[h>>2]|0;b[n>>0]=0;fk(g,n);f[h+4>>2]=0}else{b[n>>0]=0;fk(h,n);b[j>>0]=0}v=0;ta(59,h|0,0);j=v;v=0;if(j&1){j=Sa(0)|0;pd(j)};f[h>>2]=f[o>>2];f[h+4>>2]=f[o+4>>2];f[h+8>>2]=f[o+8>>2];h=0;while(1){if((h|0)==3)break;f[o+(h<<2)>>2]=0;h=h+1|0}$s(o);Vc[f[(f[a>>2]|0)+24>>2]&127](o,a);h=i+8+3|0;if((b[h>>0]|0)<0){j=f[i>>2]|0;f[n>>2]=0;nk(j,n);f[i+4>>2]=0}else{f[n>>2]=0;nk(i,n);b[h>>0]=0}v=0;ta(73,i|0,0);h=v;v=0;if(h&1){h=Sa(0)|0;pd(h)};f[i>>2]=f[o>>2];f[i+4>>2]=f[o+4>>2];f[i+8>>2]=f[o+8>>2];i=0;while(1){if((i|0)==3)break;f[o+(i<<2)>>2]=0;i=i+1|0}tt(o);r=Gc[f[(f[a>>2]|0)+36>>2]&127](a)|0}f[l>>2]=r;t=m;return}function gp(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;d=a+4|0;e=(f[d>>2]|0)!=151;g=f[a>>2]|0;h=g;i=(f[c>>2]|0)-h|0;j=i<<1;k=i>>>0<2147483647?((j|0)==0?4:j):-1;j=(f[b>>2]|0)-h>>2;h=Cg(e?g:0,k)|0;if(!h)Ls();do if(!e){g=f[a>>2]|0;f[a>>2]=h;if(g){v=0;sa(f[d>>2]|0,g|0);g=v;v=0;if(g&1){g=Sa(0)|0;pd(g)}else{l=f[a>>2]|0;break}}else l=h}else{f[a>>2]=h;l=h}while(0);f[d>>2]=153;f[b>>2]=l+(j<<2);f[c>>2]=(f[a>>2]|0)+(k>>>2<<2);return}function hp(a){a=a|0;gk(a);return}function ip(a){a=a|0;gk(a);Ns(a);return}function jp(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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,ea=0,ga=0;a=t;t=t+416|0;i=a+336|0;j=a+328|0;k=a+224|0;l=a+400|0;m=a+112|0;n=a+396|0;o=a+408|0;q=a+405|0;r=a+404|0;s=a+384|0;u=a+372|0;w=a+360|0;x=a+356|0;y=a;z=a+352|0;A=a+348|0;B=a+344|0;f[l>>2]=k;p[i>>3]=h;C=oi(k,100,19594,i)|0;a:do if(C>>>0>99){v=0;k=da(2)|0;D=v;v=0;do if(!(D&1)?(v=0,p[j>>3]=h,E=ha(13,l|0,k|0,19594,j|0)|0,F=v,v=0,!(F&1)):0){F=f[l>>2]|0;if(!F){v=0;ra(3);v=0;H=0;I=0;break}J=F;F=Ag(E)|0;K=F;if(F|0){L=F;M=E;N=K;O=J;P=9;break a}v=0;ra(3);v=0;H=K;I=J}else{H=0;I=0}while(0);k=Ra()|0;Q=k;R=G;S=H;T=I}else{L=m;M=C;N=0;O=0;P=9}while(0);if((P|0)==9){Sj(n,e);v=0;C=fa(24,n|0,25340)|0;m=v;v=0;if(!(m&1)?(m=f[l>>2]|0,v=0,ha(f[(f[C>>2]|0)+32>>2]|0,C|0,m|0,m+M|0,L|0)|0,m=v,v=0,!(m&1)):0){if(!M)U=0;else U=(b[f[l>>2]>>0]|0)==45;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;l=0;while(1){if((l|0)==3)break;f[s+(l<<2)>>2]=0;l=l+1|0}f[u>>2]=0;f[u+4>>2]=0;f[u+8>>2]=0;l=0;while(1){if((l|0)==3)break;f[u+(l<<2)>>2]=0;l=l+1|0}f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;l=0;while(1){if((l|0)==3)break;f[w+(l<<2)>>2]=0;l=l+1|0}v=0;za(3,d|0,U|0,n|0,o|0,q|0,r|0,s|0,u|0,w|0,x|0);d=v;v=0;if(d&1){d=Ra()|0;V=d;W=G}else{d=f[x>>2]|0;if((M|0)>(d|0)){x=b[w+11>>0]|0;l=b[u+11>>0]|0;X=l<<24>>24<0?f[u+4>>2]|0:l&255;Y=d+1+(M-d<<1)|0;Z=x<<24>>24<0?f[w+4>>2]|0:x&255}else{x=b[w+11>>0]|0;l=b[u+11>>0]|0;X=l<<24>>24<0?f[u+4>>2]|0:l&255;Y=d+2|0;Z=x<<24>>24<0?f[w+4>>2]|0:x&255}x=Y+Z+X|0;if(x>>>0>100){X=Ag(x)|0;x=X;if(!X){v=0;ra(3);v=0;Z=Ra()|0;_=Z;$=G;aa=x}else{ba=X;ca=x;P=31}}else{ba=y;ca=0;P=31}if((P|0)==31){v=0;Aa(1,ba|0,z|0,A|0,f[e+4>>2]|0,L|0,L+M|0,C|0,U|0,o|0,b[q>>0]|0,b[r>>0]|0,s|0,u|0,w|0,d|0);d=v;v=0;if(!(d&1)?(f[B>>2]=f[c>>2],c=f[z>>2]|0,z=f[A>>2]|0,v=0,f[i>>2]=f[B>>2],B=la(39,i|0,ba|0,c|0,z|0,e|0,g|0)|0,g=v,v=0,!(g&1)):0){if(ca|0)Bg(ca);$s(w);$s(u);$s(s);Ck(n);if(N|0)Bg(N);if(O|0)Bg(O);t=a;return B|0}B=Ra()|0;_=B;$=G;aa=ca}if(aa|0)Bg(aa);V=_;W=$}$s(w);$s(u);$s(s);ea=V;ga=W}else{W=Ra()|0;ea=W;ga=G}Ck(n);Q=ea;R=ga;S=N;T=O}if(S|0)Bg(S);if(T|0)Bg(T);_a(Q|0);return 0}function kp(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;a=t;t=t+176|0;i=a+156|0;j=a+152|0;k=a+164|0;l=a+161|0;m=a+160|0;n=a+140|0;o=a+128|0;p=a+116|0;q=a+112|0;r=a;s=a+108|0;u=a+104|0;w=a+100|0;Sj(j,e);v=0;x=fa(24,j|0,25340)|0;y=v;v=0;a:do if(y&1){z=Ra()|0;A=z;B=G}else{z=h+11|0;C=b[z>>0]|0;D=C<<24>>24<0;E=h+4|0;do if((D?f[E>>2]|0:C&255)|0){F=b[(D?f[h>>2]|0:h)>>0]|0;v=0;H=fa(f[(f[x>>2]|0)+28>>2]|0,x|0,45)|0;I=v;v=0;if(I&1){I=Ra()|0;A=I;B=G;break a}else{J=F<<24>>24==H<<24>>24;break}}else J=0;while(0);f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;D=0;while(1){if((D|0)==3)break;f[n+(D<<2)>>2]=0;D=D+1|0}f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;D=0;while(1){if((D|0)==3)break;f[o+(D<<2)>>2]=0;D=D+1|0}f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;D=0;while(1){if((D|0)==3)break;f[p+(D<<2)>>2]=0;D=D+1|0}v=0;za(3,d|0,J|0,j|0,k|0,l|0,m|0,n|0,o|0,p|0,q|0);D=v;v=0;if(D&1){D=Ra()|0;K=D;L=G}else{D=b[z>>0]|0;C=D<<24>>24<0;H=C?f[E>>2]|0:D&255;D=f[q>>2]|0;if((H|0)>(D|0)){F=b[p+11>>0]|0;I=b[o+11>>0]|0;M=I<<24>>24<0?f[o+4>>2]|0:I&255;N=D+1+(H-D<<1)|0;O=F<<24>>24<0?f[p+4>>2]|0:F&255}else{F=b[p+11>>0]|0;I=b[o+11>>0]|0;M=I<<24>>24<0?f[o+4>>2]|0:I&255;N=D+2|0;O=F<<24>>24<0?f[p+4>>2]|0:F&255}F=N+O+M|0;if(F>>>0>100){I=Ag(F)|0;F=I;if(!I){v=0;ra(3);v=0;P=Ra()|0;Q=P;R=G;S=F}else{T=I;U=F;V=24}}else{T=r;U=0;V=24}if((V|0)==24){F=C?f[h>>2]|0:h;v=0;Aa(1,T|0,s|0,u|0,f[e+4>>2]|0,F|0,F+H|0,x|0,J|0,k|0,b[l>>0]|0,b[m>>0]|0,n|0,o|0,p|0,D|0);D=v;v=0;if(!(D&1)?(f[w>>2]=f[c>>2],D=f[s>>2]|0,H=f[u>>2]|0,v=0,f[i>>2]=f[w>>2],F=la(39,i|0,T|0,D|0,H|0,e|0,g|0)|0,H=v,v=0,!(H&1)):0){if(U|0)Bg(U);$s(p);$s(o);$s(n);Ck(j);t=a;return F|0}F=Ra()|0;Q=F;R=G;S=U}if(S|0)Bg(S);K=Q;L=R}$s(p);$s(o);$s(n);A=K;B=L}while(0);Ck(j);_a(A|0);return 0}function lp(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|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,u=0;m=t;t=t+16|0;n=m+12|0;o=m;if(a){a=Bk(d,25572)|0;if(c){Vc[f[(f[a>>2]|0)+44>>2]&127](n,a);p=f[n>>2]|0;b[e>>0]=p;b[e+1>>0]=p>>8;b[e+2>>0]=p>>16;b[e+3>>0]=p>>24;Vc[f[(f[a>>2]|0)+32>>2]&127](o,a);p=k+11|0;if((b[p>>0]|0)<0){q=f[k>>2]|0;b[n>>0]=0;fk(q,n);f[k+4>>2]=0}else{b[n>>0]=0;fk(k,n);b[p>>0]=0}v=0;ta(59,k|0,0);p=v;v=0;if(p&1){p=Sa(0)|0;pd(p)};f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];p=0;while(1){if((p|0)==3)break;f[o+(p<<2)>>2]=0;p=p+1|0}$s(o);r=a}else{Vc[f[(f[a>>2]|0)+40>>2]&127](n,a);p=f[n>>2]|0;b[e>>0]=p;b[e+1>>0]=p>>8;b[e+2>>0]=p>>16;b[e+3>>0]=p>>24;Vc[f[(f[a>>2]|0)+28>>2]&127](o,a);p=k+11|0;if((b[p>>0]|0)<0){q=f[k>>2]|0;b[n>>0]=0;fk(q,n);f[k+4>>2]=0}else{b[n>>0]=0;fk(k,n);b[p>>0]=0}v=0;ta(59,k|0,0);p=v;v=0;if(p&1){p=Sa(0)|0;pd(p)};f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];p=0;while(1){if((p|0)==3)break;f[o+(p<<2)>>2]=0;p=p+1|0}$s(o);r=a}p=Gc[f[(f[a>>2]|0)+12>>2]&127](a)|0;b[g>>0]=p;p=Gc[f[(f[a>>2]|0)+16>>2]&127](a)|0;b[h>>0]=p;Vc[f[(f[r>>2]|0)+20>>2]&127](o,a);p=i+11|0;if((b[p>>0]|0)<0){q=f[i>>2]|0;b[n>>0]=0;fk(q,n);f[i+4>>2]=0}else{b[n>>0]=0;fk(i,n);b[p>>0]=0}v=0;ta(59,i|0,0);p=v;v=0;if(p&1){p=Sa(0)|0;pd(p)};f[i>>2]=f[o>>2];f[i+4>>2]=f[o+4>>2];f[i+8>>2]=f[o+8>>2];p=0;while(1){if((p|0)==3)break;f[o+(p<<2)>>2]=0;p=p+1|0}$s(o);Vc[f[(f[r>>2]|0)+24>>2]&127](o,a);r=j+11|0;if((b[r>>0]|0)<0){p=f[j>>2]|0;b[n>>0]=0;fk(p,n);f[j+4>>2]=0}else{b[n>>0]=0;fk(j,n);b[r>>0]=0}v=0;ta(59,j|0,0);r=v;v=0;if(r&1){r=Sa(0)|0;pd(r)};f[j>>2]=f[o>>2];f[j+4>>2]=f[o+4>>2];f[j+8>>2]=f[o+8>>2];r=0;while(1){if((r|0)==3)break;f[o+(r<<2)>>2]=0;r=r+1|0}$s(o);s=Gc[f[(f[a>>2]|0)+36>>2]&127](a)|0}else{a=Bk(d,25564)|0;if(c){Vc[f[(f[a>>2]|0)+44>>2]&127](n,a);c=f[n>>2]|0;b[e>>0]=c;b[e+1>>0]=c>>8;b[e+2>>0]=c>>16;b[e+3>>0]=c>>24;Vc[f[(f[a>>2]|0)+32>>2]&127](o,a);c=k+11|0;if((b[c>>0]|0)<0){d=f[k>>2]|0;b[n>>0]=0;fk(d,n);f[k+4>>2]=0}else{b[n>>0]=0;fk(k,n);b[c>>0]=0}v=0;ta(59,k|0,0);c=v;v=0;if(c&1){c=Sa(0)|0;pd(c)};f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];c=0;while(1){if((c|0)==3)break;f[o+(c<<2)>>2]=0;c=c+1|0}$s(o);u=a}else{Vc[f[(f[a>>2]|0)+40>>2]&127](n,a);c=f[n>>2]|0;b[e>>0]=c;b[e+1>>0]=c>>8;b[e+2>>0]=c>>16;b[e+3>>0]=c>>24;Vc[f[(f[a>>2]|0)+28>>2]&127](o,a);c=k+11|0;if((b[c>>0]|0)<0){e=f[k>>2]|0;b[n>>0]=0;fk(e,n);f[k+4>>2]=0}else{b[n>>0]=0;fk(k,n);b[c>>0]=0}v=0;ta(59,k|0,0);c=v;v=0;if(c&1){c=Sa(0)|0;pd(c)};f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];k=0;while(1){if((k|0)==3)break;f[o+(k<<2)>>2]=0;k=k+1|0}$s(o);u=a}k=Gc[f[(f[a>>2]|0)+12>>2]&127](a)|0;b[g>>0]=k;k=Gc[f[(f[a>>2]|0)+16>>2]&127](a)|0;b[h>>0]=k;Vc[f[(f[u>>2]|0)+20>>2]&127](o,a);k=i+11|0;if((b[k>>0]|0)<0){h=f[i>>2]|0;b[n>>0]=0;fk(h,n);f[i+4>>2]=0}else{b[n>>0]=0;fk(i,n);b[k>>0]=0}v=0;ta(59,i|0,0);k=v;v=0;if(k&1){k=Sa(0)|0;pd(k)};f[i>>2]=f[o>>2];f[i+4>>2]=f[o+4>>2];f[i+8>>2]=f[o+8>>2];i=0;while(1){if((i|0)==3)break;f[o+(i<<2)>>2]=0;i=i+1|0}$s(o);Vc[f[(f[u>>2]|0)+24>>2]&127](o,a);u=j+11|0;if((b[u>>0]|0)<0){i=f[j>>2]|0;b[n>>0]=0;fk(i,n);f[j+4>>2]=0}else{b[n>>0]=0;fk(j,n);b[u>>0]=0}v=0;ta(59,j|0,0);u=v;v=0;if(u&1){u=Sa(0)|0;pd(u)};f[j>>2]=f[o>>2];f[j+4>>2]=f[o+4>>2];f[j+8>>2]=f[o+8>>2];j=0;while(1){if((j|0)==3)break;f[o+(j<<2)>>2]=0;j=j+1|0}$s(o);s=Gc[f[(f[a>>2]|0)+36>>2]&127](a)|0}f[l>>2]=s;t=m;return}function mp(a,c,e,g,h,i,j,k,l,m,n,o,p,q,r){a=a|0;c=c|0;e=e|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;f[e>>2]=a;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(b[l+B>>0]|0){case 0:{f[c>>2]=f[e>>2];D=C;break}case 1:{f[c>>2]=f[e>>2];h=Hc[f[(f[j>>2]|0)+28>>2]&31](j,32)|0;E=f[e>>2]|0;f[e>>2]=E+1;b[E>>0]=h;D=C;break}case 3:{h=b[s>>0]|0;E=h<<24>>24<0;if(!((E?f[t>>2]|0:h&255)|0))D=C;else{h=b[(E?f[q>>2]|0:q)>>0]|0;E=f[e>>2]|0;f[e>>2]=E+1;b[E>>0]=h;D=C}break}case 2:{h=b[u>>0]|0;E=h<<24>>24<0;F=E?f[v>>2]|0:h&255;if(w|(F|0)==0)D=C;else{h=E?f[p>>2]|0:p;E=h+F|0;F=f[e>>2]|0;G=h;while(1){if((G|0)==(E|0))break;b[F>>0]=b[G>>0]|0;F=F+1|0;G=G+1|0}f[e>>2]=F;D=C}break}case 4:{G=f[e>>2]|0;E=k?C+1|0:C;h=E;while(1){if(h>>>0>=i>>>0)break;H=b[h>>0]|0;if(H<<24>>24<=-1)break;if(!(d[(f[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=b[J>>0]|0;L=f[e>>2]|0;f[e>>2]=L+1;b[L>>0]=K;F=F+-1|0;H=J}if(I)M=Hc[f[(f[j>>2]|0)+28>>2]&31](j,48)|0;else M=0;J=F;while(1){N=f[e>>2]|0;f[e>>2]=N+1;if((J|0)<=0)break;b[N>>0]=M;J=J+-1|0}b[N>>0]=m;O=H}else O=h;b:do if((O|0)==(E|0)){J=Hc[f[(f[j>>2]|0)+28>>2]&31](j,48)|0;F=f[e>>2]|0;f[e>>2]=F+1;b[F>>0]=J}else{J=b[z>>0]|0;F=J<<24>>24<0;if(!((F?f[A>>2]|0:J&255)|0))P=-1;else P=b[(F?f[o>>2]|0:o)>>0]|0;F=P;J=0;K=0;L=O;while(1){if((L|0)==(E|0))break b;if((K|0)==(F|0)){Q=f[e>>2]|0;f[e>>2]=Q+1;b[Q>>0]=n;Q=J+1|0;R=b[z>>0]|0;S=R<<24>>24<0;if(Q>>>0<(S?f[A>>2]|0:R&255)>>>0){R=b[(S?f[o>>2]|0:o)+Q>>0]|0;T=R<<24>>24==127?-1:R<<24>>24;U=Q;V=0}else{T=K;U=Q;V=0}}else{T=F;U=J;V=K}Q=L+-1|0;R=b[Q>>0]|0;S=f[e>>2]|0;f[e>>2]=S+1;b[S>>0]=R;F=T;J=U;K=V+1|0;L=Q}}while(0);h=f[e>>2]|0;if((G|0)==(h|0))D=E;else{H=h;h=G;while(1){L=H+-1|0;if(h>>>0>=L>>>0){D=E;break a}K=b[h>>0]|0;b[h>>0]=b[L>>0]|0;b[L>>0]=K;H=L;h=h+1|0}}break}default:D=C}while(0);B=B+1|0;C=D}D=b[s>>0]|0;s=D<<24>>24<0;C=s?f[t>>2]|0:D&255;if(C>>>0>1){D=s?f[q>>2]|0:q;q=D+C|0;C=f[e>>2]|0;s=D;while(1){D=s+1|0;if((D|0)==(q|0))break;b[C>>0]=b[D>>0]|0;C=C+1|0;s=D}f[e>>2]=C}switch((g&176)<<24>>24){case 32:{f[c>>2]=f[e>>2];break}case 16:break;default:f[c>>2]=a}return}function np(a){a=a|0;gk(a);return}function op(a){a=a|0;gk(a);Ns(a);return}function pp(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=+h;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,q=0,r=0,s=0,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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,ea=0,ga=0;a=t;t=t+992|0;i=a+912|0;j=a+904|0;k=a+800|0;l=a+984|0;m=a+400|0;n=a+980|0;o=a+988|0;q=a+976|0;r=a+972|0;s=a+960|0;u=a+948|0;w=a+936|0;x=a+932|0;y=a;z=a+928|0;A=a+924|0;B=a+920|0;f[l>>2]=k;p[i>>3]=h;C=oi(k,100,19594,i)|0;a:do if(C>>>0>99){v=0;k=da(2)|0;D=v;v=0;do if(!(D&1)?(v=0,p[j>>3]=h,E=ha(13,l|0,k|0,19594,j|0)|0,F=v,v=0,!(F&1)):0){F=f[l>>2]|0;if(!F){v=0;ra(3);v=0;H=0;I=0;break}J=F;F=Ag(E<<2)|0;K=F;if(F|0){L=F;M=E;N=K;O=J;P=9;break a}v=0;ra(3);v=0;H=K;I=J}else{H=0;I=0}while(0);k=Ra()|0;Q=k;R=G;S=H;T=I}else{L=m;M=C;N=0;O=0;P=9}while(0);if((P|0)==9){Sj(n,e);v=0;C=fa(24,n|0,25372)|0;m=v;v=0;if(!(m&1)?(m=f[l>>2]|0,v=0,ha(f[(f[C>>2]|0)+48>>2]|0,C|0,m|0,m+M|0,L|0)|0,m=v,v=0,!(m&1)):0){if(!M)U=0;else U=(b[f[l>>2]>>0]|0)==45;f[s>>2]=0;f[s+4>>2]=0;f[s+8>>2]=0;l=0;while(1){if((l|0)==3)break;f[s+(l<<2)>>2]=0;l=l+1|0}f[u>>2]=0;f[u+4>>2]=0;f[u+8>>2]=0;l=0;while(1){if((l|0)==3)break;f[u+(l<<2)>>2]=0;l=l+1|0}f[w>>2]=0;f[w+4>>2]=0;f[w+8>>2]=0;l=0;while(1){if((l|0)==3)break;f[w+(l<<2)>>2]=0;l=l+1|0}v=0;za(4,d|0,U|0,n|0,o|0,q|0,r|0,s|0,u|0,w|0,x|0);d=v;v=0;if(d&1){d=Ra()|0;V=d;W=G}else{d=f[x>>2]|0;if((M|0)>(d|0)){x=b[w+8+3>>0]|0;l=b[u+8+3>>0]|0;X=l<<24>>24<0?f[u+4>>2]|0:l&255;Y=d+1+(M-d<<1)|0;Z=x<<24>>24<0?f[w+4>>2]|0:x&255}else{x=b[w+8+3>>0]|0;l=b[u+8+3>>0]|0;X=l<<24>>24<0?f[u+4>>2]|0:l&255;Y=d+2|0;Z=x<<24>>24<0?f[w+4>>2]|0:x&255}x=Y+Z+X|0;if(x>>>0>100){X=Ag(x<<2)|0;x=X;if(!X){v=0;ra(3);v=0;Z=Ra()|0;_=Z;$=G;aa=x}else{ba=X;ca=x;P=31}}else{ba=y;ca=0;P=31}if((P|0)==31){v=0;Aa(2,ba|0,z|0,A|0,f[e+4>>2]|0,L|0,L+(M<<2)|0,C|0,U|0,o|0,f[q>>2]|0,f[r>>2]|0,s|0,u|0,w|0,d|0);d=v;v=0;if(!(d&1)?(f[B>>2]=f[c>>2],c=f[z>>2]|0,z=f[A>>2]|0,v=0,f[i>>2]=f[B>>2],B=la(40,i|0,ba|0,c|0,z|0,e|0,g|0)|0,g=v,v=0,!(g&1)):0){if(ca|0)Bg(ca);tt(w);tt(u);$s(s);Ck(n);if(N|0)Bg(N);if(O|0)Bg(O);t=a;return B|0}B=Ra()|0;_=B;$=G;aa=ca}if(aa|0)Bg(aa);V=_;W=$}tt(w);tt(u);$s(s);ea=V;ga=W}else{W=Ra()|0;ea=W;ga=G}Ck(n);Q=ea;R=ga;S=N;T=O}if(S|0)Bg(S);if(T|0)Bg(T);_a(Q|0);return 0}function qp(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=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;a=t;t=t+480|0;i=a+464|0;j=a+460|0;k=a+468|0;l=a+456|0;m=a+452|0;n=a+440|0;o=a+428|0;p=a+416|0;q=a+412|0;r=a;s=a+408|0;u=a+404|0;w=a+400|0;Sj(j,e);v=0;x=fa(24,j|0,25372)|0;y=v;v=0;a:do if(y&1){z=Ra()|0;A=z;B=G}else{z=h+8+3|0;C=b[z>>0]|0;D=C<<24>>24<0;E=h+4|0;do if((D?f[E>>2]|0:C&255)|0){F=f[(D?f[h>>2]|0:h)>>2]|0;v=0;H=fa(f[(f[x>>2]|0)+44>>2]|0,x|0,45)|0;I=v;v=0;if(I&1){I=Ra()|0;A=I;B=G;break a}else{J=(F|0)==(H|0);break}}else J=0;while(0);f[n>>2]=0;f[n+4>>2]=0;f[n+8>>2]=0;D=0;while(1){if((D|0)==3)break;f[n+(D<<2)>>2]=0;D=D+1|0}f[o>>2]=0;f[o+4>>2]=0;f[o+8>>2]=0;D=0;while(1){if((D|0)==3)break;f[o+(D<<2)>>2]=0;D=D+1|0}f[p>>2]=0;f[p+4>>2]=0;f[p+8>>2]=0;D=0;while(1){if((D|0)==3)break;f[p+(D<<2)>>2]=0;D=D+1|0}v=0;za(4,d|0,J|0,j|0,k|0,l|0,m|0,n|0,o|0,p|0,q|0);D=v;v=0;if(D&1){D=Ra()|0;K=D;L=G}else{D=b[z>>0]|0;C=D<<24>>24<0;H=C?f[E>>2]|0:D&255;D=f[q>>2]|0;if((H|0)>(D|0)){F=b[p+8+3>>0]|0;I=b[o+8+3>>0]|0;M=I<<24>>24<0?f[o+4>>2]|0:I&255;N=D+1+(H-D<<1)|0;O=F<<24>>24<0?f[p+4>>2]|0:F&255}else{F=b[p+8+3>>0]|0;I=b[o+8+3>>0]|0;M=I<<24>>24<0?f[o+4>>2]|0:I&255;N=D+2|0;O=F<<24>>24<0?f[p+4>>2]|0:F&255}F=N+O+M|0;if(F>>>0>100){I=Ag(F<<2)|0;F=I;if(!I){v=0;ra(3);v=0;P=Ra()|0;Q=P;R=G;S=F}else{T=I;U=F;V=24}}else{T=r;U=0;V=24}if((V|0)==24){F=C?f[h>>2]|0:h;v=0;Aa(2,T|0,s|0,u|0,f[e+4>>2]|0,F|0,F+(H<<2)|0,x|0,J|0,k|0,f[l>>2]|0,f[m>>2]|0,n|0,o|0,p|0,D|0);D=v;v=0;if(!(D&1)?(f[w>>2]=f[c>>2],D=f[s>>2]|0,H=f[u>>2]|0,v=0,f[i>>2]=f[w>>2],F=la(40,i|0,T|0,D|0,H|0,e|0,g|0)|0,H=v,v=0,!(H&1)):0){if(U|0)Bg(U);tt(p);tt(o);$s(n);Ck(j);t=a;return F|0}F=Ra()|0;Q=F;R=G;S=U}if(S|0)Bg(S);K=Q;L=R}tt(p);tt(o);$s(n);A=K;B=L}while(0);Ck(j);_a(A|0);return 0}function rp(a,c,d,e,g,h,i,j,k,l){a=a|0;c=c|0;d=d|0;e=e|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;m=t;t=t+16|0;n=m+12|0;o=m;if(a){a=Bk(d,25588)|0;if(c){Vc[f[(f[a>>2]|0)+44>>2]&127](n,a);p=f[n>>2]|0;b[e>>0]=p;b[e+1>>0]=p>>8;b[e+2>>0]=p>>16;b[e+3>>0]=p>>24;Vc[f[(f[a>>2]|0)+32>>2]&127](o,a);p=k+8+3|0;if((b[p>>0]|0)<0){q=f[k>>2]|0;f[n>>2]=0;nk(q,n);f[k+4>>2]=0}else{f[n>>2]=0;nk(k,n);b[p>>0]=0}v=0;ta(73,k|0,0);p=v;v=0;if(p&1){p=Sa(0)|0;pd(p)};f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];p=0;while(1){if((p|0)==3)break;f[o+(p<<2)>>2]=0;p=p+1|0}tt(o)}else{Vc[f[(f[a>>2]|0)+40>>2]&127](n,a);p=f[n>>2]|0;b[e>>0]=p;b[e+1>>0]=p>>8;b[e+2>>0]=p>>16;b[e+3>>0]=p>>24;Vc[f[(f[a>>2]|0)+28>>2]&127](o,a);p=k+8+3|0;if((b[p>>0]|0)<0){q=f[k>>2]|0;f[n>>2]=0;nk(q,n);f[k+4>>2]=0}else{f[n>>2]=0;nk(k,n);b[p>>0]=0}v=0;ta(73,k|0,0);p=v;v=0;if(p&1){p=Sa(0)|0;pd(p)};f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];p=0;while(1){if((p|0)==3)break;f[o+(p<<2)>>2]=0;p=p+1|0}tt(o)}p=Gc[f[(f[a>>2]|0)+12>>2]&127](a)|0;f[g>>2]=p;p=Gc[f[(f[a>>2]|0)+16>>2]&127](a)|0;f[h>>2]=p;Vc[f[(f[a>>2]|0)+20>>2]&127](o,a);p=i+11|0;if((b[p>>0]|0)<0){q=f[i>>2]|0;b[n>>0]=0;fk(q,n);f[i+4>>2]=0}else{b[n>>0]=0;fk(i,n);b[p>>0]=0}v=0;ta(59,i|0,0);p=v;v=0;if(p&1){p=Sa(0)|0;pd(p)};f[i>>2]=f[o>>2];f[i+4>>2]=f[o+4>>2];f[i+8>>2]=f[o+8>>2];p=0;while(1){if((p|0)==3)break;f[o+(p<<2)>>2]=0;p=p+1|0}$s(o);Vc[f[(f[a>>2]|0)+24>>2]&127](o,a);p=j+8+3|0;if((b[p>>0]|0)<0){q=f[j>>2]|0;f[n>>2]=0;nk(q,n);f[j+4>>2]=0}else{f[n>>2]=0;nk(j,n);b[p>>0]=0}v=0;ta(73,j|0,0);p=v;v=0;if(p&1){p=Sa(0)|0;pd(p)};f[j>>2]=f[o>>2];f[j+4>>2]=f[o+4>>2];f[j+8>>2]=f[o+8>>2];p=0;while(1){if((p|0)==3)break;f[o+(p<<2)>>2]=0;p=p+1|0}tt(o);r=Gc[f[(f[a>>2]|0)+36>>2]&127](a)|0}else{a=Bk(d,25580)|0;if(c){Vc[f[(f[a>>2]|0)+44>>2]&127](n,a);c=f[n>>2]|0;b[e>>0]=c;b[e+1>>0]=c>>8;b[e+2>>0]=c>>16;b[e+3>>0]=c>>24;Vc[f[(f[a>>2]|0)+32>>2]&127](o,a);c=k+8+3|0;if((b[c>>0]|0)<0){d=f[k>>2]|0;f[n>>2]=0;nk(d,n);f[k+4>>2]=0}else{f[n>>2]=0;nk(k,n);b[c>>0]=0}v=0;ta(73,k|0,0);c=v;v=0;if(c&1){c=Sa(0)|0;pd(c)};f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];c=0;while(1){if((c|0)==3)break;f[o+(c<<2)>>2]=0;c=c+1|0}tt(o)}else{Vc[f[(f[a>>2]|0)+40>>2]&127](n,a);c=f[n>>2]|0;b[e>>0]=c;b[e+1>>0]=c>>8;b[e+2>>0]=c>>16;b[e+3>>0]=c>>24;Vc[f[(f[a>>2]|0)+28>>2]&127](o,a);c=k+8+3|0;if((b[c>>0]|0)<0){e=f[k>>2]|0;f[n>>2]=0;nk(e,n);f[k+4>>2]=0}else{f[n>>2]=0;nk(k,n);b[c>>0]=0}v=0;ta(73,k|0,0);c=v;v=0;if(c&1){c=Sa(0)|0;pd(c)};f[k>>2]=f[o>>2];f[k+4>>2]=f[o+4>>2];f[k+8>>2]=f[o+8>>2];k=0;while(1){if((k|0)==3)break;f[o+(k<<2)>>2]=0;k=k+1|0}tt(o)}k=Gc[f[(f[a>>2]|0)+12>>2]&127](a)|0;f[g>>2]=k;k=Gc[f[(f[a>>2]|0)+16>>2]&127](a)|0;f[h>>2]=k;Vc[f[(f[a>>2]|0)+20>>2]&127](o,a);k=i+11|0;if((b[k>>0]|0)<0){h=f[i>>2]|0;b[n>>0]=0;fk(h,n);f[i+4>>2]=0}else{b[n>>0]=0;fk(i,n);b[k>>0]=0}v=0;ta(59,i|0,0);k=v;v=0;if(k&1){k=Sa(0)|0;pd(k)};f[i>>2]=f[o>>2];f[i+4>>2]=f[o+4>>2];f[i+8>>2]=f[o+8>>2];i=0;while(1){if((i|0)==3)break;f[o+(i<<2)>>2]=0;i=i+1|0}$s(o);Vc[f[(f[a>>2]|0)+24>>2]&127](o,a);i=j+8+3|0;if((b[i>>0]|0)<0){k=f[j>>2]|0;f[n>>2]=0;nk(k,n);f[j+4>>2]=0}else{f[n>>2]=0;nk(j,n);b[i>>0]=0}v=0;ta(73,j|0,0);i=v;v=0;if(i&1){i=Sa(0)|0;pd(i)};f[j>>2]=f[o>>2];f[j+4>>2]=f[o+4>>2];f[j+8>>2]=f[o+8>>2];j=0;while(1){if((j|0)==3)break;f[o+(j<<2)>>2]=0;j=j+1|0}tt(o);r=Gc[f[(f[a>>2]|0)+36>>2]&127](a)|0}f[l>>2]=r;t=m;return}function sp(a,c,d,e,g,h,i,j,k,l,m,n,o,p,q){a=a|0;c=c|0;d=d|0;e=e|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;f[d>>2]=a;r=p+8+3|0;s=p+4|0;t=o+8+3|0;u=o+4|0;v=(e&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(b[k+z>>0]|0){case 0:{f[c>>2]=f[d>>2];B=A;break}case 1:{f[c>>2]=f[d>>2];g=Hc[f[(f[i>>2]|0)+44>>2]&31](i,32)|0;C=f[d>>2]|0;f[d>>2]=C+4;f[C>>2]=g;B=A;break}case 3:{g=b[r>>0]|0;C=g<<24>>24<0;if(!((C?f[s>>2]|0:g&255)|0))B=A;else{g=f[(C?f[p>>2]|0:p)>>2]|0;C=f[d>>2]|0;f[d>>2]=C+4;f[C>>2]=g;B=A}break}case 2:{g=b[t>>0]|0;C=g<<24>>24<0;D=C?f[u>>2]|0:g&255;if(v|(D|0)==0)B=A;else{g=C?f[o>>2]|0:o;C=g+(D<<2)|0;E=f[d>>2]|0;F=E;G=g;while(1){if((G|0)==(C|0))break;f[F>>2]=f[G>>2];F=F+4|0;G=G+4|0}f[d>>2]=E+(D<<2);B=A}break}case 4:{G=f[d>>2]|0;F=j?A+4|0:A;C=F;while(1){if(C>>>0>=h>>>0)break;if(!(Ic[f[(f[i>>2]|0)+12>>2]&63](i,2048,f[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=f[g>>2]|0;J=f[d>>2]|0;f[d>>2]=J+4;f[J>>2]=I;D=D+-1|0;E=g}if(H)K=Hc[f[(f[i>>2]|0)+44>>2]&31](i,48)|0;else K=0;g=D;I=f[d>>2]|0;while(1){L=I+4|0;if((g|0)<=0)break;f[I>>2]=K;g=g+-1|0;I=L}f[d>>2]=L;f[I>>2]=l;M=E}else M=C;if((M|0)==(F|0)){g=Hc[f[(f[i>>2]|0)+44>>2]&31](i,48)|0;D=f[d>>2]|0;J=D+4|0;f[d>>2]=J;f[D>>2]=g;N=J}else{J=b[x>>0]|0;g=J<<24>>24<0;if(!((g?f[y>>2]|0:J&255)|0))O=-1;else O=b[(g?f[n>>2]|0:n)>>0]|0;g=O;J=0;D=0;P=M;while(1){if((P|0)==(F|0))break;Q=f[d>>2]|0;if((D|0)==(g|0)){R=Q+4|0;f[d>>2]=R;f[Q>>2]=m;S=J+1|0;T=b[x>>0]|0;U=T<<24>>24<0;if(S>>>0<(U?f[y>>2]|0:T&255)>>>0){T=b[(U?f[n>>2]|0:n)+S>>0]|0;V=T<<24>>24==127?-1:T<<24>>24;W=S;X=0;Y=R}else{V=D;W=S;X=0;Y=R}}else{V=g;W=J;X=D;Y=Q}Q=P+-4|0;R=f[Q>>2]|0;f[d>>2]=Y+4;f[Y>>2]=R;g=V;J=W;D=X+1|0;P=Q}N=f[d>>2]|0}if((G|0)==(N|0))B=F;else{P=N;D=G;while(1){J=P+-4|0;if(D>>>0>=J>>>0){B=F;break a}g=f[D>>2]|0;f[D>>2]=f[J>>2];f[J>>2]=g;P=J;D=D+4|0}}break}default:B=A}while(0);z=z+1|0;A=B}B=b[r>>0]|0;r=B<<24>>24<0;A=r?f[s>>2]|0:B&255;if(A>>>0>1){B=f[p>>2]|0;z=r?B+4|0:s;s=(r?B:p)+(A<<2)|0;A=f[d>>2]|0;p=s-z|0;B=A;r=z;while(1){if((r|0)==(s|0))break;f[B>>2]=f[r>>2];B=B+4|0;r=r+4|0}f[d>>2]=A+(p>>>2<<2)}switch((e&176)<<24>>24){case 32:{f[c>>2]=f[d>>2];break}case 16:break;default:f[c>>2]=a}return}function tp(a){a=a|0;gk(a);return}function up(a){a=a|0;gk(a);Ns(a);return}function vp(a,c,d){a=a|0;c=c|0;d=d|0;d=Ei((b[c+11>>0]|0)<0?f[c>>2]|0:c,1)|0;return d>>>((d|0)!=(-1|0)&1)|0}function wp(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;c=t;t=t+16|0;i=c;f[i>>2]=0;f[i+4>>2]=0;f[i+8>>2]=0;j=0;while(1){if((j|0)==3)break;f[i+(j<<2)>>2]=0;j=j+1|0}j=b[h+11>>0]|0;k=j<<24>>24<0;l=k?f[h>>2]|0:h;m=l+(k?f[h+4>>2]|0:j&255)|0;j=l;while(1){if(j>>>0>=m>>>0){n=8;break}v=0;ta(60,i|0,b[j>>0]|0);l=v;v=0;if(l&1){n=9;break}j=j+1|0}do if((n|0)==8){j=(b[i+11>>0]|0)<0?f[i>>2]|0:i;m=Ai((d|0)==-1?-1:d<<1,e,g,j)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;l=0;while(1){if((l|0)==3)break;f[a+(l<<2)>>2]=0;l=l+1|0}l=j+(Yg(m)|0)|0;h=j;while(1){if(h>>>0>=l>>>0){n=17;break}v=0;ta(60,a|0,b[h>>0]|0);k=v;v=0;if(k&1){n=16;break}h=h+1|0}if((n|0)==16){h=Ra()|0;l=G;$s(a);o=h;p=l;break}else if((n|0)==17){$s(i);t=c;return}}else if((n|0)==9){l=Ra()|0;o=l;p=G}while(0);$s(i);_a(o|0)}function xp(a,b){a=a|0;b=b|0;return}function yp(a){a=a|0;gk(a);return}function zp(a){a=a|0;gk(a);Ns(a);return}function Ap(a,c,d){a=a|0;c=c|0;d=d|0;d=Ei((b[c+11>>0]|0)<0?f[c>>2]|0:c,1)|0;return d>>>((d|0)!=(-1|0)&1)|0}function Bp(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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,u=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,H=0,I=0;c=t;t=t+224|0;i=c+216|0;j=c+128|0;k=c+212|0;l=c+208|0;m=c+200|0;n=c;o=c+192|0;p=c+188|0;q=c+176|0;r=c+168|0;s=c+160|0;f[q>>2]=0;f[q+4>>2]=0;f[q+8>>2]=0;u=0;while(1){if((u|0)==3)break;f[q+(u<<2)>>2]=0;u=u+1|0}f[r+4>>2]=0;f[r>>2]=13004;u=b[h+8+3>>0]|0;w=u<<24>>24<0;x=w?f[h>>2]|0:h;y=x+((w?f[h+4>>2]|0:u&255)<<2)|0;u=j+32|0;h=x;x=0;a:while(1){if(!((x|0)!=2&h>>>0<y>>>0)){z=14;break}f[l>>2]=h;v=0;w=na(f[(f[r>>2]|0)+12>>2]|0,r|0,i|0,h|0,y|0,l|0,j|0,u|0,k|0)|0;A=v;v=0;if(A&1){z=16;break}if((w|0)==2?1:(f[l>>2]|0)==(h|0)){z=9;break}A=j;while(1){if(A>>>0>=(f[k>>2]|0)>>>0)break;v=0;ta(60,q|0,b[A>>0]|0);B=v;v=0;if(B&1){z=15;break a}A=A+1|0}h=f[l>>2]|0;x=w}if((z|0)==9){v=0;sa(152,19139);v=0;x=Ra()|0;C=x;D=G;z=17}else if((z|0)==14){gk(r);x=(b[q+11>>0]|0)<0?f[q>>2]|0:q;l=Ai((d|0)==-1?-1:d<<1,e,g,x)|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;g=0;while(1){if((g|0)==3)break;f[a+(g<<2)>>2]=0;g=g+1|0}f[s+4>>2]=0;f[s>>2]=13052;g=x+(Yg(l)|0)|0;l=g;e=n+128|0;d=x;x=0;b:while(1){if(!((x|0)!=2&d>>>0<g>>>0)){z=30;break}f[p>>2]=d;v=0;h=na(f[(f[s>>2]|0)+16>>2]|0,s|0,m|0,d|0,((l-d|0)>32?d+32|0:g)|0,p|0,n|0,e|0,o|0)|0;k=v;v=0;if(k&1){z=32;break}if((h|0)==2?1:(f[p>>2]|0)==(d|0)){z=25;break}k=n;while(1){if(k>>>0>=(f[o>>2]|0)>>>0)break;v=0;ta(72,a|0,f[k>>2]|0);j=v;v=0;if(j&1){z=31;break b}k=k+4|0}d=f[p>>2]|0;x=h}if((z|0)==25){v=0;sa(152,19139);v=0;x=Ra()|0;E=x;F=G}else if((z|0)==30){gk(s);$s(q);t=c;return}else if((z|0)==31){c=Ra()|0;E=c;F=G}else if((z|0)==32){c=Ra()|0;E=c;F=G}gk(s);tt(a);H=E;I=F}else if((z|0)==15){F=Ra()|0;C=F;D=G;z=17}else if((z|0)==16){F=Ra()|0;C=F;D=G;z=17}if((z|0)==17){gk(r);H=C;I=D}$s(q);_a(H|0)}function Cp(a,b){a=a|0;b=b|0;return}function Dp(a){a=a|0;gk(a);Ns(a);return}function Ep(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;b=t;t=t+16|0;a=b+4|0;j=b;f[a>>2]=c;f[j>>2]=g;k=Np(c,d,a,g,h,j,1114111,0)|0;f[e>>2]=f[a>>2];f[i>>2]=f[j>>2];t=b;return k|0}function Fp(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;b=t;t=t+16|0;a=b+4|0;j=b;f[a>>2]=c;f[j>>2]=g;k=Mp(c,d,a,g,h,j,1114111,0)|0;f[e>>2]=f[a>>2];f[i>>2]=f[j>>2];t=b;return k|0}function Gp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f[e>>2]=c;return 3}function Hp(a){a=a|0;return 0}function Ip(a){a=a|0;return 0}function Jp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Lp(c,d,e,1114111,0)|0}function Kp(a){a=a|0;return 4}function Lp(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;g=c;if((((f&4|0)!=0?(g-a|0)>2:0)?(b[a>>0]|0)==-17:0)?(b[a+1>>0]|0)==-69:0)i=(b[a+2>>0]|0)==-65?a+3|0:a;else i=a;f=0;j=i;a:while(1){if(!(f>>>0<d>>>0&j>>>0<c>>>0))break;i=b[j>>0]|0;k=i&255;do if(i<<24>>24<=-1){if((i&255)<194)break a;if((i&255)<224){if((g-j|0)<2)break a;l=h[j+1>>0]|0;if((l&192|0)!=128)break a;if((l&63|k<<6&1984)>>>0>e>>>0)break a;m=j+2|0;break}if((i&255)<240){if((g-j|0)<3)break a;l=b[j+1>>0]|0;n=b[j+2>>0]|0;switch(i<<24>>24){case -32:{if((l&-32)<<24>>24!=-96)break a;break}case -19:{if((l&-32)<<24>>24!=-128)break a;break}default:if((l&-64)<<24>>24!=-128)break a}o=n&255;if((o&192|0)!=128)break a;if(((l&63)<<6|k<<12&61440|o&63)>>>0>e>>>0)break a;else{m=j+3|0;break}}if((i&255)>=245)break a;if((g-j|0)<4)break a;o=b[j+1>>0]|0;l=b[j+2>>0]|0;n=b[j+3>>0]|0;switch(i<<24>>24){case -16:{if((o+112&255)>=48)break a;break}case -12:{if((o&-16)<<24>>24!=-128)break a;break}default:if((o&-64)<<24>>24!=-128)break a}p=l&255;if((p&192|0)!=128)break a;l=n&255;if((l&192|0)!=128)break a;if(((o&63)<<12|k<<18&1835008|p<<6&4032|l&63)>>>0>e>>>0)break a;else m=j+4|0}else{if(k>>>0>e>>>0)break a;m=j+1|0}while(0);f=f+1|0;j=m}return j-a|0}function Mp(a,c,d,e,g,i,j,k){a=a|0;c=c|0;d=d|0;e=e|0;g=g|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;f[d>>2]=a;f[i>>2]=e;if(k&4){k=f[d>>2]|0;e=c;if((((e-k|0)>2?(b[k>>0]|0)==-17:0)?(b[k+1>>0]|0)==-69:0)?(b[k+2>>0]|0)==-65:0){f[d>>2]=k+3;l=e}else l=e}else l=c;a:while(1){e=f[d>>2]|0;if(e>>>0>=c>>>0){m=0;break}k=f[i>>2]|0;if(k>>>0>=g>>>0){m=1;break}a=b[e>>0]|0;n=a&255;do if(a<<24>>24>-1)if(n>>>0>j>>>0){m=2;break a}else{o=n;p=1}else{if((a&255)<194){m=2;break a}if((a&255)<224){if((l-e|0)<2){m=1;break a}q=h[e+1>>0]|0;if((q&192|0)!=128){m=2;break a}r=q&63|n<<6&1984;if(r>>>0>j>>>0){m=2;break a}else{o=r;p=2;break}}if((a&255)<240){if((l-e|0)<3){m=1;break a}r=b[e+1>>0]|0;q=b[e+2>>0]|0;switch(a<<24>>24){case -32:{if((r&-32)<<24>>24!=-96){m=2;break a}break}case -19:{if((r&-32)<<24>>24!=-128){m=2;break a}break}default:if((r&-64)<<24>>24!=-128){m=2;break a}}s=q&255;if((s&192|0)!=128){m=2;break a}q=(r&63)<<6|n<<12&61440|s&63;if(q>>>0>j>>>0){m=2;break a}else{o=q;p=3;break}}if((a&255)>=245){m=2;break a}if((l-e|0)<4){m=1;break a}q=b[e+1>>0]|0;s=b[e+2>>0]|0;r=b[e+3>>0]|0;switch(a<<24>>24){case -16:{if((q+112&255)>=48){m=2;break a}break}case -12:{if((q&-16)<<24>>24!=-128){m=2;break a}break}default:if((q&-64)<<24>>24!=-128){m=2;break a}}t=s&255;if((t&192|0)!=128){m=2;break a}s=r&255;if((s&192|0)!=128){m=2;break a}r=(q&63)<<12|n<<18&1835008|t<<6&4032|s&63;if(r>>>0>j>>>0){m=2;break a}else{o=r;p=4}}while(0);f[k>>2]=o;f[d>>2]=e+p;f[i>>2]=(f[i>>2]|0)+4}return m|0}function Np(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0;f[d>>2]=a;f[h>>2]=e;a=g;if(j&2)if((a-e|0)<3)k=1;else{f[h>>2]=e+1;b[e>>0]=-17;e=f[h>>2]|0;f[h>>2]=e+1;b[e>>0]=-69;e=f[h>>2]|0;f[h>>2]=e+1;b[e>>0]=-65;l=4}else l=4;a:do if((l|0)==4){e=f[d>>2]|0;while(1){if(e>>>0>=c>>>0){k=0;break a}j=f[e>>2]|0;if(j>>>0>i>>>0|(j&-2048|0)==55296){k=2;break a}do if(j>>>0>=128){if(j>>>0<2048){g=f[h>>2]|0;if((a-g|0)<2){k=1;break a}f[h>>2]=g+1;b[g>>0]=j>>>6|192;g=f[h>>2]|0;f[h>>2]=g+1;b[g>>0]=j&63|128;break}g=f[h>>2]|0;m=a-g|0;if(j>>>0<65536){if((m|0)<3){k=1;break a}f[h>>2]=g+1;b[g>>0]=j>>>12|224;n=f[h>>2]|0;f[h>>2]=n+1;b[n>>0]=j>>>6&63|128;n=f[h>>2]|0;f[h>>2]=n+1;b[n>>0]=j&63|128;break}else{if((m|0)<4){k=1;break a}f[h>>2]=g+1;b[g>>0]=j>>>18|240;g=f[h>>2]|0;f[h>>2]=g+1;b[g>>0]=j>>>12&63|128;g=f[h>>2]|0;f[h>>2]=g+1;b[g>>0]=j>>>6&63|128;g=f[h>>2]|0;f[h>>2]=g+1;b[g>>0]=j&63|128;break}}else{g=f[h>>2]|0;if((a-g|0)<1){k=1;break a}f[h>>2]=g+1;b[g>>0]=j}while(0);j=(f[d>>2]|0)+4|0;f[d>>2]=j;e=j}}while(0);return k|0}function Op(a){a=a|0;gk(a);Ns(a);return}function Pp(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;f[e>>2]=c;f[i>>2]=g;return 3}function Qp(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;f[e>>2]=c;f[i>>2]=g;return 3}function Rp(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f[e>>2]=c;return 3}function Sp(a){a=a|0;return 1}function Tp(a){a=a|0;return 1}function Up(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 Vp(a){a=a|0;return 1}function Wp(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|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,r=0,s=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;k=t;t=t+16|0;l=k;m=k+8|0;n=d;while(1){if((n|0)==(e|0)){o=e;break}if(!(f[n>>2]|0)){o=n;break}n=n+4|0}f[j>>2]=h;f[g>>2]=d;n=i;p=a+8|0;a=d;d=h;h=o;a:while(1){if((d|0)==(i|0)|(a|0)==(e|0)){q=a;r=36;break}o=c;s=f[o+4>>2]|0;u=l;f[u>>2]=f[o>>2];f[u+4>>2]=s;s=Fi(f[p>>2]|0)|0;u=cj(d,g,h-a>>2,n-d|0,c)|0;if(s|0)Fi(s)|0;switch(u|0){case -1:{r=10;break a;break}case 0:{v=1;r=33;break a;break}default:{}}s=(f[j>>2]|0)+u|0;f[j>>2]=s;if((s|0)==(i|0)){r=34;break}if((h|0)==(e|0)){w=e;x=s;y=f[g>>2]|0}else{s=Fi(f[p>>2]|0)|0;u=ji(m,0,c)|0;if(s|0)Fi(s)|0;if((u|0)==-1){z=2;r=32;break}if(u>>>0>(n-(f[j>>2]|0)|0)>>>0){z=1;r=32;break}s=m;o=u;while(1){if(!o)break;u=b[s>>0]|0;A=f[j>>2]|0;f[j>>2]=A+1;b[A>>0]=u;s=s+1|0;o=o+-1|0}o=(f[g>>2]|0)+4|0;f[g>>2]=o;s=o;while(1){if((s|0)==(e|0)){B=e;break}if(!(f[s>>2]|0)){B=s;break}s=s+4|0}w=B;x=f[j>>2]|0;y=o}a=y;d=x;h=w}if((r|0)==10){f[j>>2]=d;w=a;a=d;while(1){if((w|0)==(f[g>>2]|0))break;d=f[w>>2]|0;h=Fi(f[p>>2]|0)|0;x=ji(a,d,l)|0;if(h|0)Fi(h)|0;if((x|0)==-1)break;h=(f[j>>2]|0)+x|0;f[j>>2]=h;w=w+4|0;a=h}f[g>>2]=w;v=2;r=33}else if((r|0)==32){v=z;r=33}else if((r|0)==34){q=f[g>>2]|0;r=36}if((r|0)==33)C=v;else if((r|0)==36)C=(q|0)!=(e|0)&1;t=k;return C|0}function Xp(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|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,r=0,s=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;k=t;t=t+16|0;l=k;m=d;while(1){if((m|0)==(e|0)){n=e;break}if(!(b[m>>0]|0)){n=m;break}m=m+1|0}f[j>>2]=h;f[g>>2]=d;m=i;o=a+8|0;a=d;d=h;h=n;while(1){if((d|0)==(i|0)|(a|0)==(e|0)){p=a;q=33;break}n=c;r=f[n+4>>2]|0;s=l;f[s>>2]=f[n>>2];f[s+4>>2]=r;r=Fi(f[o>>2]|0)|0;s=Si(d,g,h-a|0,m-d>>2,c)|0;if(r|0)Fi(r)|0;if((s|0)==-1){q=10;break}r=(f[j>>2]|0)+(s<<2)|0;f[j>>2]=r;if((r|0)==(i|0)){q=30;break}s=f[g>>2]|0;if((h|0)==(e|0)){u=e;v=r;w=s}else{n=Fi(f[o>>2]|0)|0;x=Ch(r,s,1,c)|0;if(n|0)Fi(n)|0;if(x|0){y=2;q=29;break}f[j>>2]=(f[j>>2]|0)+4;x=(f[g>>2]|0)+1|0;f[g>>2]=x;n=x;while(1){if((n|0)==(e|0)){z=e;break}if(!(b[n>>0]|0)){z=n;break}n=n+1|0}u=z;v=f[j>>2]|0;w=x}a=w;d=v;h=u}do if((q|0)==10){u=h;v=a;w=d;a:while(1){f[j>>2]=w;if((v|0)==(f[g>>2]|0)){q=19;break}z=Fi(f[o>>2]|0)|0;c=Ch(w,v,u-v|0,l)|0;if(z|0)Fi(z)|0;switch(c|0){case -1:{q=15;break a;break}case -2:{q=16;break a;break}case 0:{A=1;break}default:A=c}v=v+A|0;w=(f[j>>2]|0)+4|0}if((q|0)==15){f[g>>2]=v;y=2;q=29;break}else if((q|0)==16){f[g>>2]=v;y=1;q=29;break}else if((q|0)==19){f[g>>2]=v;y=(v|0)!=(e|0)&1;q=29;break}}else if((q|0)==30){p=f[g>>2]|0;q=33}while(0);if((q|0)==29)B=y;else if((q|0)==33)B=(p|0)!=(e|0)&1;t=k;return B|0}function Yp(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;h=t;t=t+16|0;i=h;f[g>>2]=d;d=Fi(f[a+8>>2]|0)|0;a=ji(i,0,c)|0;if(d|0)Fi(d)|0;a:do if((a+1|0)>>>0>=2){d=a+-1|0;if(d>>>0>(e-(f[g>>2]|0)|0)>>>0)j=1;else{c=i;k=d;while(1){if(!k){j=0;break a}d=b[c>>0]|0;l=f[g>>2]|0;f[g>>2]=l+1;b[l>>0]=d;c=c+1|0;k=k+-1|0}}}else j=2;while(0);t=h;return j|0}function Zp(a){a=a|0;var b=0,c=0,d=0;b=a+8|0;a=Fi(f[b>>2]|0)|0;c=Zg(0,0,4)|0;if(a|0)Fi(a)|0;if(!c){c=f[b>>2]|0;if(!c)d=1;else{b=Fi(c)|0;c=Qg()|0;if(b|0)Fi(b)|0;return (c|0)==1|0}}else d=-1;return d|0}function _p(a){a=a|0;return 0}function $p(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0;g=d;h=a+8|0;a=0;i=0;j=c;a:while(1){if((j|0)==(d|0)|a>>>0>=e>>>0)break;c=Fi(f[h>>2]|0)|0;k=bj(j,g-j|0,b)|0;if(c|0)Fi(c)|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 aq(a){a=a|0;var b=0,c=0;b=f[a+8>>2]|0;if(b){a=Fi(b)|0;b=Qg()|0;if(!a)c=b;else{Fi(a)|0;c=b}}else c=1;return c|0}function bq(a){a=a|0;var b=0,c=0,d=0,e=0;f[a>>2]=13100;b=a+8|0;c=f[b>>2]|0;v=0;d=da(2)|0;e=v;v=0;if(e&1){e=Sa(0)|0;gk(a);pd(e)}if((c|0)!=(d|0))si(f[b>>2]|0);gk(a);return}function cq(a){a=a|0;bq(a);Ns(a);return}function dq(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;b=t;t=t+16|0;a=b+4|0;j=b;f[a>>2]=c;f[j>>2]=g;k=mq(c,d,a,g,h,j,1114111,0)|0;f[e>>2]=f[a>>2];f[i>>2]=f[j>>2];t=b;return k|0}function eq(a,b,c,d,e,g,h,i){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;b=t;t=t+16|0;a=b+4|0;j=b;f[a>>2]=c;f[j>>2]=g;k=lq(c,d,a,g,h,j,1114111,0)|0;f[e>>2]=f[a>>2];f[i>>2]=f[j>>2];t=b;return k|0}function fq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f[e>>2]=c;return 3}function gq(a){a=a|0;return 0}function hq(a){a=a|0;return 0}function iq(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return kq(c,d,e,1114111,0)|0}function jq(a){a=a|0;return 4}function kq(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;g=c;if((((f&4|0)!=0?(g-a|0)>2:0)?(b[a>>0]|0)==-17:0)?(b[a+1>>0]|0)==-69:0)i=(b[a+2>>0]|0)==-65?a+3|0:a;else i=a;f=0;j=i;a:while(1){if(!(f>>>0<d>>>0&j>>>0<c>>>0))break;i=b[j>>0]|0;k=i&255;if(k>>>0>e>>>0)break;do if(i<<24>>24<=-1){if((i&255)<194)break a;if((i&255)<224){if((g-j|0)<2)break a;l=h[j+1>>0]|0;if((l&192|0)!=128)break a;if((l&63|k<<6&1984)>>>0>e>>>0)break a;else{m=f;n=j+2|0;break}}if((i&255)<240){if((g-j|0)<3)break a;l=b[j+1>>0]|0;o=b[j+2>>0]|0;switch(i<<24>>24){case -32:{if((l&-32)<<24>>24!=-96)break a;break}case -19:{if((l&-32)<<24>>24!=-128)break a;break}default:if((l&-64)<<24>>24!=-128)break a}p=o&255;if((p&192|0)!=128)break a;if(((l&63)<<6|k<<12&61440|p&63)>>>0>e>>>0)break a;else{m=f;n=j+3|0;break}}if((i&255)>=245)break a;if((d-f|0)>>>0<2|(g-j|0)<4)break a;p=b[j+1>>0]|0;l=b[j+2>>0]|0;o=b[j+3>>0]|0;switch(i<<24>>24){case -16:{if((p+112&255)>=48)break a;break}case -12:{if((p&-16)<<24>>24!=-128)break a;break}default:if((p&-64)<<24>>24!=-128)break a}q=l&255;if((q&192|0)!=128)break a;l=o&255;if((l&192|0)!=128)break a;if(((p&63)<<12|k<<18&1835008|q<<6&4032|l&63)>>>0>e>>>0)break a;else{m=f+1|0;n=j+4|0}}else{m=f;n=j+1|0}while(0);f=m+1|0;j=n}return j-a|0}function lq(a,c,e,g,i,j,k,l){a=a|0;c=c|0;e=e|0;g=g|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;f[e>>2]=a;f[j>>2]=g;if(l&4){l=f[e>>2]|0;g=c;if((((g-l|0)>2?(b[l>>0]|0)==-17:0)?(b[l+1>>0]|0)==-69:0)?(b[l+2>>0]|0)==-65:0){f[e>>2]=l+3;m=g}else m=g}else m=c;g=i;a:while(1){l=f[e>>2]|0;if(l>>>0>=c>>>0){n=0;break}a=f[j>>2]|0;if(a>>>0>=i>>>0){n=1;break}o=b[l>>0]|0;p=o&255;if(p>>>0>k>>>0){n=2;break}do if(o<<24>>24>-1){d[a>>1]=o&255;q=l+1|0}else{if((o&255)<194){n=2;break a}if((o&255)<224){if((m-l|0)<2){n=1;break a}r=h[l+1>>0]|0;if((r&192|0)!=128){n=2;break a}s=r&63|p<<6&1984;if(s>>>0>k>>>0){n=2;break a}d[a>>1]=s;q=l+2|0;break}if((o&255)<240){if((m-l|0)<3){n=1;break a}s=b[l+1>>0]|0;r=b[l+2>>0]|0;switch(o<<24>>24){case -32:{if((s&-32)<<24>>24!=-96){n=2;break a}break}case -19:{if((s&-32)<<24>>24!=-128){n=2;break a}break}default:if((s&-64)<<24>>24!=-128){n=2;break a}}t=r&255;if((t&192|0)!=128){n=2;break a}r=(s&63)<<6|p<<12|t&63;if((r&65535)>>>0>k>>>0){n=2;break a}d[a>>1]=r;q=l+3|0;break}if((o&255)>=245){n=2;break a}if((m-l|0)<4){n=1;break a}r=b[l+1>>0]|0;t=b[l+2>>0]|0;s=b[l+3>>0]|0;switch(o<<24>>24){case -16:{if((r+112&255)>=48){n=2;break a}break}case -12:{if((r&-16)<<24>>24!=-128){n=2;break a}break}default:if((r&-64)<<24>>24!=-128){n=2;break a}}u=t&255;if((u&192|0)!=128){n=2;break a}t=s&255;if((t&192|0)!=128){n=2;break a}if((g-a|0)<4){n=1;break a}s=p&7;v=r&255;r=u<<6;w=t&63;if((v<<12&258048|s<<18|r&4032|w)>>>0>k>>>0){n=2;break a}d[a>>1]=v<<2&60|u>>>4&3|((v>>>4&3|s<<2)<<6)+16320|55296;s=a+2|0;f[j>>2]=s;d[s>>1]=w|r&960|56320;q=(f[e>>2]|0)+4|0}while(0);f[e>>2]=q;f[j>>2]=(f[j>>2]|0)+2}return n|0}function mq(a,c,e,g,h,i,k,l){a=a|0;c=c|0;e=e|0;g=g|0;h=h|0;i=i|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0;f[e>>2]=a;f[i>>2]=g;a=h;if(l&2)if((a-g|0)<3)m=1;else{f[i>>2]=g+1;b[g>>0]=-17;g=f[i>>2]|0;f[i>>2]=g+1;b[g>>0]=-69;g=f[i>>2]|0;f[i>>2]=g+1;b[g>>0]=-65;n=4}else n=4;a:do if((n|0)==4){g=c;l=f[e>>2]|0;while(1){if(l>>>0>=c>>>0){m=0;break a}h=d[l>>1]|0;o=h&65535;if(o>>>0>k>>>0){m=2;break a}do if((h&65535)<128){p=f[i>>2]|0;if((a-p|0)<1){m=1;break a}f[i>>2]=p+1;b[p>>0]=h}else{if((h&65535)<2048){p=f[i>>2]|0;if((a-p|0)<2){m=1;break a}f[i>>2]=p+1;b[p>>0]=o>>>6|192;p=f[i>>2]|0;f[i>>2]=p+1;b[p>>0]=o&63|128;break}if((h&65535)<55296){p=f[i>>2]|0;if((a-p|0)<3){m=1;break a}f[i>>2]=p+1;b[p>>0]=o>>>12|224;p=f[i>>2]|0;f[i>>2]=p+1;b[p>>0]=o>>>6&63|128;p=f[i>>2]|0;f[i>>2]=p+1;b[p>>0]=o&63|128;break}if((h&65535)>=56320){if((h&65535)<57344){m=2;break a}p=f[i>>2]|0;if((a-p|0)<3){m=1;break a}f[i>>2]=p+1;b[p>>0]=o>>>12|224;p=f[i>>2]|0;f[i>>2]=p+1;b[p>>0]=o>>>6&63|128;p=f[i>>2]|0;f[i>>2]=p+1;b[p>>0]=o&63|128;break}if((g-l|0)<4){m=1;break a}p=l+2|0;q=j[p>>1]|0;if((q&64512|0)!=56320){m=2;break a}if((a-(f[i>>2]|0)|0)<4){m=1;break a}r=o&960;if(((r<<10)+65536|o<<10&64512|q&1023)>>>0>k>>>0){m=2;break a}f[e>>2]=p;p=(r>>>6)+1|0;r=f[i>>2]|0;f[i>>2]=r+1;b[r>>0]=p>>>2|240;r=f[i>>2]|0;f[i>>2]=r+1;b[r>>0]=o>>>2&15|p<<4&48|128;p=f[i>>2]|0;f[i>>2]=p+1;b[p>>0]=o<<4&48|q>>>6&15|128;p=f[i>>2]|0;f[i>>2]=p+1;b[p>>0]=q&63|128}while(0);o=(f[e>>2]|0)+2|0;f[e>>2]=o;l=o}}while(0);return m|0}function nq(a){a=a|0;var b=0,c=0,d=0,e=0,g=0,h=0;f[a>>2]=13148;b=a+8|0;c=a+12|0;d=0;while(1){e=f[b>>2]|0;if(d>>>0>=(f[c>>2]|0)-e>>2>>>0)break;g=f[e+(d<<2)>>2]|0;if(g|0?(e=g+4|0,h=f[e>>2]|0,f[e>>2]=h+-1,(h|0)==0):0)Uc[f[(f[g>>2]|0)+8>>2]&255](g);d=d+1|0}$s(a+144|0);pq(b);gk(a);return}function oq(a){a=a|0;nq(a);Ns(a);return}function pq(a){a=a|0;var c=0;c=f[a>>2]|0;do if(c|0){f[a+4>>2]=c;if((c|0)==(a+16|0)){b[a+128>>0]=0;break}else{Ns(c);break}}while(0);return}function qq(a){a=a|0;var c=0;f[a>>2]=13168;c=f[a+8>>2]|0;if(c|0?b[a+12>>0]|0:0)Os(c);gk(a);return}function rq(a){a=a|0;qq(a);Ns(a);return}function sq(a,b){a=a|0;b=b|0;var c=0;if(b<<24>>24>-1){a=(Bq()|0)+((b&255)<<2)|0;c=f[a>>2]&255}else c=b;return c|0}function tq(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;a=c;while(1){if((a|0)==(d|0))break;c=b[a>>0]|0;if(c<<24>>24>-1){e=Bq()|0;g=f[e+(b[a>>0]<<2)>>2]&255}else g=c;b[a>>0]=g;a=a+1|0}return d|0}function uq(a,b){a=a|0;b=b|0;var c=0;if(b<<24>>24>-1){a=(Aq()|0)+(b<<24>>24<<2)|0;c=f[a>>2]&255}else c=b;return c|0}function vq(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0;a=c;while(1){if((a|0)==(d|0))break;c=b[a>>0]|0;if(c<<24>>24>-1){e=Aq()|0;g=f[e+(b[a>>0]<<2)>>2]&255}else g=c;b[a>>0]=g;a=a+1|0}return d|0}function wq(a,b){a=a|0;b=b|0;return b|0}function xq(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;a=e;e=c;while(1){if((e|0)==(d|0))break;b[a>>0]=b[e>>0]|0;a=a+1|0;e=e+1|0}return d|0}function yq(a,b,c){a=a|0;b=b|0;c=c|0;return (b<<24>>24>-1?b:c)|0}function zq(a,c,d,e,f){a=a|0;c=c|0;d=d|0;e=e|0;f=f|0;a=f;f=c;while(1){if((f|0)==(d|0))break;c=b[f>>0]|0;b[a>>0]=c<<24>>24>-1?c:e;a=a+1|0;f=f+1|0}return d|0}function Aq(){var a=0;a=Ng()|0;return f[a>>2]|0}function Bq(){var a=0;a=Xg()|0;return f[a>>2]|0}function Cq(){var a=0;a=Ug()|0;return f[a>>2]|0}function Dq(a){a=a|0;f[a>>2]=13220;$s(a+12|0);gk(a);return}function Eq(a){a=a|0;Dq(a);Ns(a);return}function Fq(a){a=a|0;return b[a+8>>0]|0}function Gq(a){a=a|0;return b[a+9>>0]|0}function Hq(a,b){a=a|0;b=b|0;Xs(a,b+12|0);return}function Iq(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;Ys(a,20171,Kj(20171)|0);return}function Jq(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;Ys(a,20165,Kj(20165)|0);return}function Kq(a){a=a|0;f[a>>2]=13260;$s(a+16|0);gk(a);return}function Lq(a){a=a|0;Kq(a);Ns(a);return}function Mq(a){a=a|0;return f[a+8>>2]|0}function Nq(a){a=a|0;return f[a+12>>2]|0}function Oq(a,b){a=a|0;b=b|0;Xs(a,b+16|0);return}function Pq(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qt(a,13316,pn(13316)|0);return}function Qq(a,b){a=a|0;b=b|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;qt(a,13292,pn(13292)|0);return}function Rq(a){a=a|0;gk(a);Ns(a);return}function Sq(a){a=a|0;gk(a);Ns(a);return}function Tq(a,b,c){a=a|0;b=b|0;c=c|0;var e=0;if(c>>>0<128){a=(Cq()|0)+(c<<1)|0;e=(d[a>>1]&b)<<16>>16!=0}else e=0;return e|0}function Uq(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;var g=0;a=e;e=b;while(1){if((e|0)==(c|0))break;if((f[e>>2]|0)>>>0<128){b=Cq()|0;g=j[b+(f[e>>2]<<1)>>1]|0}else g=0;d[a>>1]=g;a=a+2|0;e=e+4|0}return c|0}function Vq(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;var g=0;a=c;while(1){if((a|0)==(e|0)){g=e;break}if((f[a>>2]|0)>>>0<128?(c=Cq()|0,(d[c+(f[a>>2]<<1)>>1]&b)<<16>>16):0){g=a;break}a=a+4|0}return g|0}function Wq(a,b,c,e){a=a|0;b=b|0;c=c|0;e=e|0;var g=0;a=c;while(1){if((a|0)==(e|0)){g=e;break}if((f[a>>2]|0)>>>0>=128){g=a;break}c=Cq()|0;if(!((d[c+(f[a>>2]<<1)>>1]&b)<<16>>16)){g=a;break}a=a+4|0}return g|0}function Xq(a,b){a=a|0;b=b|0;var c=0;if(b>>>0<128){a=(Bq()|0)+(b<<2)|0;c=f[a>>2]|0}else c=b;return c|0}function Yq(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=b;while(1){if((a|0)==(c|0))break;b=f[a>>2]|0;if(b>>>0<128){d=Bq()|0;e=f[d+(f[a>>2]<<2)>>2]|0}else e=b;f[a>>2]=e;a=a+4|0}return c|0}function Zq(a,b){a=a|0;b=b|0;var c=0;if(b>>>0<128){a=(Aq()|0)+(b<<2)|0;c=f[a>>2]|0}else c=b;return c|0}function _q(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;a=b;while(1){if((a|0)==(c|0))break;b=f[a>>2]|0;if(b>>>0<128){d=Aq()|0;e=f[d+(f[a>>2]<<2)>>2]|0}else e=b;f[a>>2]=e;a=a+4|0}return c|0}function $q(a,b){a=a|0;b=b|0;return b<<24>>24|0}function ar(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;a=e;e=c;while(1){if((e|0)==(d|0))break;f[a>>2]=b[e>>0];a=a+4|0;e=e+1|0}return d|0}function br(a,b,c){a=a|0;b=b|0;c=c|0;return (b>>>0<128?b&255:c)|0}function cr(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;a=(d-c|0)>>>2;h=g;g=c;while(1){if((g|0)==(d|0))break;i=f[g>>2]|0;b[h>>0]=i>>>0<128?i&255:e;h=h+1|0;g=g+4|0}return c+(a<<2)|0}function dr(a){a=a|0;gk(a);Ns(a);return}function er(a){a=a|0;gk(a);Ns(a);return}function fr(a){a=a|0;gk(a);Ns(a);return}function gr(a){a=a|0;f[a>>2]=13576;return}function hr(a){a=a|0;f[a>>2]=13612;return}function ir(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;f[a+4>>2]=e+-1;f[a>>2]=13168;e=a+8|0;f[e>>2]=c;b[a+12>>0]=d&1;if(!c){c=Cq()|0;f[e>>2]=c}return}function jr(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;f[a+4>>2]=b+-1;f[a>>2]=13148;b=a+8|0;v=0;ta(74,b|0,28);c=v;v=0;if(c&1){c=Ra()|0;d=G;e=c}else{c=a+144|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;g=Kj(18073)|0;v=0;ua(21,c|0,18073,g|0);g=v;v=0;if(g&1){g=Ra()|0;h=G;i=g}else{f[a+12>>2]=f[b>>2];v=0;ra(10);g=v;v=0;do if((((((((((((((!(g&1)?(v=0,ta(75,a|0,24e3),j=v,v=0,!(j&1)):0)?(v=0,ra(11),j=v,v=0,!(j&1)):0)?(v=0,ta(76,a|0,24008),j=v,v=0,!(j&1)):0)?(pr(),v=0,ta(77,a|0,24016),j=v,v=0,!(j&1)):0)?(v=0,ra(12),j=v,v=0,!(j&1)):0)?(v=0,ta(78,a|0,24032),j=v,v=0,!(j&1)):0)?(v=0,ra(13),j=v,v=0,!(j&1)):0)?(v=0,ta(79,a|0,24040),j=v,v=0,!(j&1)):0)?(v=0,ra(14),j=v,v=0,!(j&1)):0)?(v=0,ta(80,a|0,24048),j=v,v=0,!(j&1)):0)?(v=0,ra(15),j=v,v=0,!(j&1)):0)?(v=0,ta(81,a|0,24064),j=v,v=0,!(j&1)):0)?(v=0,ra(16),j=v,v=0,!(j&1)):0)?(v=0,ta(82,a|0,24072),j=v,v=0,!(j&1)):0){Br();v=0;ta(83,a|0,24080);j=v;v=0;if(j&1)break;Dr();v=0;ta(84,a|0,24104);j=v;v=0;if(j&1)break;v=0;ra(17);j=v;v=0;if(j&1)break;v=0;ta(85,a|0,24136);j=v;v=0;if(j&1)break;v=0;ra(18);j=v;v=0;if(j&1)break;v=0;ta(86,a|0,24144);j=v;v=0;if(j&1)break;v=0;ra(19);j=v;v=0;if(j&1)break;v=0;ta(87,a|0,24152);j=v;v=0;if(j&1)break;v=0;ra(20);j=v;v=0;if(j&1)break;v=0;ta(88,a|0,24160);j=v;v=0;if(j&1)break;v=0;ra(21);j=v;v=0;if(j&1)break;v=0;ta(89,a|0,24168);j=v;v=0;if(j&1)break;v=0;ra(22);j=v;v=0;if(j&1)break;v=0;ta(90,a|0,24176);j=v;v=0;if(j&1)break;v=0;ra(23);j=v;v=0;if(j&1)break;v=0;ta(91,a|0,24184);j=v;v=0;if(j&1)break;v=0;ra(24);j=v;v=0;if(j&1)break;v=0;ta(92,a|0,24192);j=v;v=0;if(j&1)break;v=0;ra(25);j=v;v=0;if(j&1)break;v=0;ta(93,a|0,24200);j=v;v=0;if(j&1)break;v=0;ra(26);j=v;v=0;if(j&1)break;v=0;ta(94,a|0,24208);j=v;v=0;if(j&1)break;v=0;ra(27);j=v;v=0;if(j&1)break;v=0;ta(95,a|0,24216);j=v;v=0;if(j&1)break;v=0;ra(28);j=v;v=0;if(j&1)break;v=0;ta(96,a|0,24224);j=v;v=0;if(j&1)break;v=0;ra(29);j=v;v=0;if(j&1)break;v=0;ta(97,a|0,24232);j=v;v=0;if(j&1)break;v=0;ra(30);j=v;v=0;if(j&1)break;v=0;ta(98,a|0,24248);j=v;v=0;if(j&1)break;v=0;ra(31);j=v;v=0;if(j&1)break;v=0;ta(99,a|0,24264);j=v;v=0;if(j&1)break;v=0;ra(32);j=v;v=0;if(j&1)break;v=0;ta(100,a|0,24280);j=v;v=0;if(j&1)break;v=0;ra(33);j=v;v=0;if(j&1)break;v=0;ta(101,a|0,24296);j=v;v=0;if(j&1)break;v=0;ra(34);j=v;v=0;if(j&1)break;v=0;ta(102,a|0,24304);j=v;v=0;if(j&1)break;return}while(0);g=Ra()|0;j=G;$s(c);h=j;i=g}pq(b);d=h;e=i}gk(a);_a(e|0)}function kr(a,c){a=a|0;c=c|0;var d=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;b[a+128>>0]=0;do if(c|0){v=0;ta(103,a|0,c|0);d=v;v=0;if(!(d&1)?(v=0,ta(104,a|0,c|0),d=v,v=0,!(d&1)):0)break;d=Ra()|0;pq(a);_a(d|0)}while(0);return}function lr(){f[6001]=0;f[6e3]=11004;return}function mr(a,b){a=a|0;b=b|0;ns(a,b,Gk(25324)|0);return}function nr(){f[6003]=0;f[6002]=11036;return}function or(a,b){a=a|0;b=b|0;ns(a,b,Gk(25332)|0);return}function pr(){ir(24016,0,0,1);return}function qr(a,b){a=a|0;b=b|0;ns(a,b,Gk(25340)|0);return}function rr(){f[6009]=0;f[6008]=13364;return}function sr(a,b){a=a|0;b=b|0;ns(a,b,Gk(25372)|0);return}function tr(){f[6011]=0;f[6010]=13432;return}function ur(a,b){a=a|0;b=b|0;ns(a,b,Gk(25644)|0);return}function vr(){zs(24048,1);return}function wr(a,b){a=a|0;b=b|0;ns(a,b,Gk(25652)|0);return}function xr(){f[6017]=0;f[6016]=13480;return}function yr(a,b){a=a|0;b=b|0;ns(a,b,Gk(25660)|0);return}function zr(){f[6019]=0;f[6018]=13528;return}function Ar(a,b){a=a|0;b=b|0;ns(a,b,Gk(25668)|0);return}function Br(){ys(24080,1);return}function Cr(a,b){a=a|0;b=b|0;ns(a,b,Gk(25356)|0);return}function Dr(){xs(24104,1);return}function Er(a,b){a=a|0;b=b|0;ns(a,b,Gk(25380)|0);return}function Fr(){f[6035]=0;f[6034]=11068;return}function Gr(a,b){a=a|0;b=b|0;ns(a,b,Gk(25364)|0);return}function Hr(){f[6037]=0;f[6036]=11132;return}function Ir(a,b){a=a|0;b=b|0;ns(a,b,Gk(25388)|0);return}function Jr(){f[6039]=0;f[6038]=11196;return}function Kr(a,b){a=a|0;b=b|0;ns(a,b,Gk(25396)|0);return}function Lr(){f[6041]=0;f[6040]=11248;return}function Mr(a,b){a=a|0;b=b|0;ns(a,b,Gk(25404)|0);return}function Nr(){f[6043]=0;f[6042]=12604;return}function Or(a,b){a=a|0;b=b|0;ns(a,b,Gk(25564)|0);return}function Pr(){f[6045]=0;f[6044]=12660;return}function Qr(a,b){a=a|0;b=b|0;ns(a,b,Gk(25572)|0);return}function Rr(){f[6047]=0;f[6046]=12716;return}function Sr(a,b){a=a|0;b=b|0;ns(a,b,Gk(25580)|0);return}function Tr(){f[6049]=0;f[6048]=12772;return}function Ur(a,b){a=a|0;b=b|0;ns(a,b,Gk(25588)|0);return}function Vr(){f[6051]=0;f[6050]=12828;return}function Wr(a,b){a=a|0;b=b|0;ns(a,b,Gk(25596)|0);return}function Xr(){f[6053]=0;f[6052]=12856;return}function Yr(a,b){a=a|0;b=b|0;ns(a,b,Gk(25604)|0);return}function Zr(){f[6055]=0;f[6054]=12884;return}function _r(a,b){a=a|0;b=b|0;ns(a,b,Gk(25612)|0);return}function $r(){f[6057]=0;f[6056]=12912;return}function as(a,b){a=a|0;b=b|0;ns(a,b,Gk(25620)|0);return}function bs(){f[6059]=0;f[6058]=13344;gr(24240);f[6058]=11300;f[6060]=11348;return}function cs(a,b){a=a|0;b=b|0;ns(a,b,Gk(25472)|0);return}function ds(){f[6063]=0;f[6062]=13344;hr(24256);f[6062]=11384;f[6064]=11432;return}function es(a,b){a=a|0;b=b|0;ns(a,b,Gk(25540)|0);return}function fs(){var a=0,b=0;f[6067]=0;f[6066]=13344;v=0;a=da(2)|0;b=v;v=0;if(b&1){b=Ra()|0;gk(24264);_a(b|0)}else{f[6068]=a;f[6066]=12556;return}}function gs(a,b){a=a|0;b=b|0;ns(a,b,Gk(25548)|0);return}function hs(){var a=0,b=0;f[6071]=0;f[6070]=13344;v=0;a=da(2)|0;b=v;v=0;if(b&1){b=Ra()|0;gk(24280);_a(b|0)}else{f[6072]=a;f[6070]=12580;return}}function is(a,b){a=a|0;b=b|0;ns(a,b,Gk(25556)|0);return}function js(){f[6075]=0;f[6074]=12940;return}function ks(a,b){a=a|0;b=b|0;ns(a,b,Gk(25628)|0);return}function ls(){f[6077]=0;f[6076]=12972;return}function ms(a,b){a=a|0;b=b|0;ns(a,b,Gk(25636)|0);return}function ns(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0;d=b+4|0;f[d>>2]=(f[d>>2]|0)+1;d=a+8|0;e=f[d>>2]|0;do if((f[a+12>>2]|0)-e>>2>>>0>c>>>0){g=d;h=e}else{v=0;ta(105,d|0,c+1|0);i=v;v=0;if(!(i&1)){g=d;h=f[d>>2]|0;break}i=Ra()|0;if(b|0)ps(b);_a(i|0)}while(0);d=f[h+(c<<2)>>2]|0;if(d|0?(h=d+4|0,e=f[h>>2]|0,f[h>>2]=e+-1,(e|0)==0):0)Uc[f[(f[d>>2]|0)+8>>2]&255](d);f[(f[g>>2]|0)+(c<<2)>>2]=b;return}function os(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0;c=a+4|0;d=f[a>>2]|0;e=(f[c>>2]|0)-d>>2;g=d;if(e>>>0>=b>>>0){if(e>>>0>b>>>0)f[c>>2]=g+(b<<2)}else qs(a,b-e|0);return}function ps(a){a=a|0;var b=0,c=0;b=a+4|0;c=f[b>>2]|0;f[b>>2]=c+-1;if(!c)Uc[f[(f[a>>2]|0)+8>>2]&255](a);return}function qs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;c=t;t=t+32|0;d=c;e=a+8|0;g=a+4|0;h=f[g>>2]|0;do if((f[e>>2]|0)-h>>2>>>0<b>>>0){i=(h-(f[a>>2]|0)>>2)+b|0;j=ss(a)|0;if(j>>>0<i>>>0)Pt(a);k=f[a>>2]|0;l=(f[e>>2]|0)-k|0;m=l>>1;ts(d,l>>2>>>0<j>>>1>>>0?(m>>>0<i>>>0?i:m):j,(f[g>>2]|0)-k>>2,a+16|0);v=0;ta(106,d|0,b|0);k=v;v=0;if(!(k&1)?(v=0,ta(107,a|0,d|0),k=v,v=0,!(k&1)):0){ws(d);break}k=Ra()|0;ws(d);_a(k|0)}else rs(a,b);while(0);t=c;return}function rs(a,b){a=a|0;b=b|0;var c=0;c=a+4|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;b=(f[c>>2]|0)+4|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function ss(a){a=a|0;return 1073741823}function ts(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;g=a+12|0;f[g>>2]=0;f[a+16>>2]=e;do if(c){h=e+112|0;if(c>>>0<29&(b[h>>0]|0)==0){b[h>>0]=1;i=e;break}else{i=Ms(c<<2)|0;break}}else i=0;while(0);f[a>>2]=i;e=i+(d<<2)|0;f[a+8>>2]=e;f[a+4>>2]=e;f[g>>2]=i+(c<<2);return}function us(a,b){a=a|0;b=b|0;var c=0;c=a+8|0;a=b;b=f[c>>2]|0;do{f[b>>2]=0;b=(f[c>>2]|0)+4|0;f[c>>2]=b;a=a+-1|0}while((a|0)!=0);return}function vs(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,g=0,h=0,i=0,j=0;c=f[a>>2]|0;d=a+4|0;e=b+4|0;g=(f[d>>2]|0)-c|0;h=(f[e>>2]|0)+(0-(g>>2)<<2)|0;f[e>>2]=h;if((g|0)>0){mv(h|0,c|0,g|0)|0;i=e;j=f[e>>2]|0}else{i=e;j=h}h=f[a>>2]|0;f[a>>2]=j;f[i>>2]=h;h=b+8|0;j=f[d>>2]|0;f[d>>2]=f[h>>2];f[h>>2]=j;j=a+8|0;a=b+12|0;h=f[j>>2]|0;f[j>>2]=f[a>>2];f[a>>2]=h;f[b>>2]=f[i>>2];return}function ws(a){a=a|0;var c=0,d=0,e=0,g=0;c=f[a+4>>2]|0;d=a+8|0;e=f[d>>2]|0;while(1){if((e|0)==(c|0))break;g=e+-4|0;f[d>>2]=g;e=g}e=f[a>>2]|0;do if(e|0){d=f[a+16>>2]|0;if((e|0)==(d|0)){b[d+112>>0]=0;break}else{Ns(e);break}}while(0);return}function xs(a,b){a=a|0;b=b|0;f[a+4>>2]=b+-1;f[a>>2]=13260;f[a+8>>2]=46;f[a+12>>2]=44;b=a+16|0;f[b>>2]=0;f[b+4>>2]=0;f[b+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[b+(a<<2)>>2]=0;a=a+1|0}return}function ys(a,c){a=a|0;c=c|0;f[a+4>>2]=c+-1;f[a>>2]=13220;b[a+8>>0]=46;b[a+9>>0]=44;c=a+12|0;f[c>>2]=0;f[c+4>>2]=0;f[c+8>>2]=0;a=0;while(1){if((a|0)==3)break;f[c+(a<<2)>>2]=0;a=a+1|0}return}function zs(a,b){a=a|0;b=b|0;var c=0;f[a+4>>2]=b+-1;f[a>>2]=13100;v=0;b=da(2)|0;c=v;v=0;if(c&1){c=Ra()|0;gk(a);_a(c|0)}else{f[a+8>>2]=b;return}}function As(a,c){a=a|0;c=c|0;var d=0,e=0;if((ss(a)|0)>>>0<c>>>0)Pt(a);d=a+128|0;if(c>>>0<29&(b[d>>0]|0)==0){b[d>>0]=1;e=a+16|0}else e=Ms(c<<2)|0;f[a+4>>2]=e;f[a>>2]=e;f[a+8>>2]=e+(c<<2);return}function Bs(){var a=0;do if((b[24312]|0)==0?Wu(24312)|0:0){v=0;da(3)|0;a=v;v=0;if(a&1){a=Ra()|0;_a(a|0)}else{f[6420]=25676;break}}while(0);return f[6420]|0}function Cs(){Ds();f[6419]=24320;return 25676}function Ds(){jr(24320,1);return}function Es(){Fs(25684,Bs()|0);return 25684}function Fs(a,b){a=a|0;b=b|0;var c=0;c=f[b>>2]|0;f[a>>2]=c;a=c+4|0;f[a>>2]=(f[a>>2]|0)+1;return}function Gs(){var a=0;do if((b[24480]|0)==0?Wu(24480)|0:0){v=0;da(4)|0;a=v;v=0;if(a&1){a=Ra()|0;_a(a|0)}else{f[6422]=25684;break}}while(0);return f[6422]|0}function Hs(a){a=a|0;var b=0,c=0;v=0;b=da(5)|0;c=v;v=0;if(c&1){c=Sa(0)|0;pd(c)}else{c=f[b>>2]|0;f[a>>2]=c;a=c+4|0;f[a>>2]=(f[a>>2]|0)+1;return}}function Is(a){a=a|0;return}function Js(a){a=a|0;var b=0,c=0;b=a+8|0;if(!((f[b>>2]|0)!=0?(c=f[b>>2]|0,f[b>>2]=c+-1,(c|0)!=0):0))Uc[f[(f[a>>2]|0)+16>>2]&255](a);return}function Ks(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0;qv(25692)|0;while(1){if((f[a>>2]|0)!=1)break;Fb(25720,25692)|0}do if(!(f[a>>2]|0)){f[a>>2]=1;v=0;ea(75,25692)|0;d=v;v=0;if((((!(d&1)?(v=0,sa(c|0,b|0),d=v,v=0,!(d&1)):0)?(v=0,ea(76,25692)|0,d=v,v=0,!(d&1)):0)?(f[a>>2]=-1,v=0,ea(75,25692)|0,d=v,v=0,!(d&1)):0)?(v=0,ea(77,25720)|0,d=v,v=0,!(d&1)):0)break;d=Sa(0)|0;Oa(d|0)|0;v=0;ea(76,25692)|0;d=v;v=0;if((!(d&1)?(f[a>>2]=0,v=0,ea(75,25692)|0,d=v,v=0,!(d&1)):0)?(v=0,ea(77,25720)|0,d=v,v=0,!(d&1)):0){v=0;ra(35);v=0}d=Ra()|0;v=0;ra(2);e=v;v=0;if(e&1){e=Sa(0)|0;pd(e)}else _a(d|0)}else rv(25692)|0;while(0);return}function Ls(){var a=0;a=Na(4)|0;Zu(a);Va(a|0,9136,128)}function Ms(a){a=a|0;var b=0,c=0,d=0;b=(a|0)==0?1:a;while(1){c=Ag(b)|0;if(c|0){d=6;break}a=_u()|0;if(!a){d=5;break}Tc[a&63]()}if((d|0)==5){b=Na(4)|0;Zu(b);Va(b|0,9136,128)}else if((d|0)==6)return c|0;return 0}function Ns(a){a=a|0;Bg(a);return}function Os(a){a=a|0;Ns(a);return}function Ps(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;c=Yg(b)|0;d=Ms(c+13|0)|0;f[d>>2]=c;f[d+4>>2]=c;f[d+8>>2]=0;e=Qs(d)|0;mv(e|0,b|0,c+1|0)|0;f[a>>2]=e;return}function Qs(a){a=a|0;return a+12|0}function Rs(a,b){a=a|0;b=b|0;f[a>>2]=13772;v=0;ta(108,a+4|0,b|0);b=v;v=0;if(b&1){b=Ra()|0;_a(b|0)}else return}function Ss(a){a=a|0;return 1}function Ts(a,c){a=a|0;c=c|0;f[a>>2]=13792;v=0;ta(108,a+4|0,((b[c+11>>0]|0)<0?f[c>>2]|0:c)|0);c=v;v=0;if(c&1){c=Ra()|0;_a(c|0)}else return}function Us(a,b){a=a|0;b=b|0;f[a>>2]=13792;v=0;ta(108,a+4|0,b|0);b=v;v=0;if(b&1){b=Ra()|0;_a(b|0)}else return}function Vs(a){a=a|0;var b=0;a=Na(8)|0;v=0;ta(57,a|0,20273);b=v;v=0;if(b&1){b=Ra()|0;Ta(a|0);_a(b|0)}else{f[a>>2]=13812;Va(a|0,9184,130)}}function Ws(a){a=a|0;var b=0;a=Na(8)|0;v=0;ta(57,a|0,20273);b=v;v=0;if(b&1){b=Ra()|0;Ta(a|0);_a(b|0)}else{f[a>>2]=13832;Va(a|0,9200,130)}}function Xs(a,c){a=a|0;c=c|0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;if((b[c+11>>0]|0)<0)Ys(a,f[c>>2]|0,f[c+4>>2]|0);else{f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2]}return}function Ys(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=t;t=t+16|0;g=e;if(d>>>0>4294967279)Vs(a);if(d>>>0<11){b[a+11>>0]=d;h=a}else{i=d+16&-16;j=Ms(i)|0;f[a>>2]=j;f[a+8>>2]=i|-2147483648;f[a+4>>2]=d;h=j}xj(h,c,d)|0;b[g>>0]=0;fk(h+d|0,g);t=e;return}function Zs(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=t;t=t+16|0;g=e;if(c>>>0>4294967279)Vs(a);if(c>>>0<11){b[a+11>>0]=c;h=a}else{i=c+16&-16;j=Ms(i)|0;f[a>>2]=j;f[a+8>>2]=i|-2147483648;f[a+4>>2]=c;h=j}_s(h,c,d)|0;b[g>>0]=0;fk(h+c|0,g);t=e;return}function _s(a,b,c){a=a|0;b=b|0;c=c|0;if(b|0)ov(a|0,(wj(c)|0)&255|0,b|0)|0;return a|0}function $s(a){a=a|0;if((b[a+11>>0]|0)<0)Ns(f[a>>2]|0);return}function at(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=t;t=t+16|0;g=e;h=a+11|0;i=b[h>>0]|0;j=i<<24>>24<0;if(j)k=(f[a+8>>2]&2147483647)+-1|0;else k=10;do if(k>>>0>=d>>>0){if(j)l=f[a>>2]|0;else l=a;bt(l,c,d)|0;b[g>>0]=0;fk(l+d|0,g);if((b[h>>0]|0)<0){f[a+4>>2]=d;break}else{b[h>>0]=d;break}}else{if(j)m=f[a+4>>2]|0;else m=i&255;ct(a,k,d-k|0,m,0,m,d,c)}while(0);t=e;return a|0}function bt(a,b,c){a=a|0;b=b|0;c=c|0;if(c|0)nv(a|0,b|0,c|0)|0;return a|0}function ct(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|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;k=t;t=t+16|0;l=k;if((-18-c|0)>>>0<d>>>0)Vs(a);if((b[a+11>>0]|0)<0)m=f[a>>2]|0;else m=a;if(c>>>0<2147483623){n=d+c|0;d=c<<1;o=n>>>0<d>>>0?d:n;p=o>>>0<11?11:o+16&-16}else p=-17;o=Ms(p)|0;if(g|0)xj(o,m,g)|0;if(i|0)xj(o+g|0,j,i)|0;j=e-h|0;e=j-g|0;if(e|0)xj(o+g+i|0,m+g+h|0,e)|0;if((c|0)!=10)Ns(m);f[a>>2]=o;f[a+8>>2]=p|-2147483648;p=j+i|0;f[a+4>>2]=p;b[l>>0]=0;fk(o+p|0,l);t=k;return}function dt(a,c){a=a|0;c=c|0;var d=0,e=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;if(c>>>0>4294967279)Vs(a);d=a+11|0;e=b[d>>0]|0;g=e<<24>>24<0;if(g){h=f[a+4>>2]|0;i=(f[a+8>>2]&2147483647)+-1|0}else{h=e&255;i=10}j=h>>>0>c>>>0?h:c;c=j>>>0<11;k=c?10:(j+16&-16)+-1|0;a:do if((k|0)!=(i|0)){do if(c){j=f[a>>2]|0;if(g){l=j;m=0;n=a;o=17}else{xj(a,j,(e&255)+1|0)|0;Ns(j);o=20}}else{j=k+1|0;if(k>>>0<=i>>>0){v=0;p=ea(71,j|0)|0;q=v;v=0;if(q&1){q=Sa(0)|0;Oa(q|0)|0;Pa();break a}else r=p}else r=Ms(j)|0;if(g){l=f[a>>2]|0;m=1;n=r;o=17;break}else{xj(r,a,(e&255)+1|0)|0;s=r;t=j;u=a+4|0;o=19;break}}while(0);if((o|0)==17){j=a+4|0;xj(n,l,(f[j>>2]|0)+1|0)|0;Ns(l);if(m){s=n;t=k+1|0;u=j;o=19}else o=20}if((o|0)==19){f[a+8>>2]=t|-2147483648;f[u>>2]=h;f[a>>2]=s;break}else if((o|0)==20){b[d>>0]=h;break}}while(0);return}function et(a,b){a=a|0;b=b|0;return at(a,b,Kj(b)|0)|0}function ft(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;e=t;t=t+16|0;g=e;h=a+11|0;i=b[h>>0]|0;j=i<<24>>24<0;if(j)k=f[a+4>>2]|0;else k=i&255;do if(k>>>0>=c>>>0)if(j){i=(f[a>>2]|0)+c|0;b[g>>0]=0;fk(i,g);f[a+4>>2]=c;break}else{b[g>>0]=0;fk(a+c|0,g);b[h>>0]=c;break}else gt(a,c-k|0,d)|0;while(0);t=e;return}function gt(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=t;t=t+16|0;g=e;if(c|0){h=a+11|0;i=b[h>>0]|0;if(i<<24>>24<0){j=(f[a+8>>2]&2147483647)+-1|0;k=f[a+4>>2]|0}else{j=10;k=i&255}if((j-k|0)>>>0<c>>>0){ht(a,j,k+c-j|0,k,k,0,0);l=b[h>>0]|0}else l=i;if(l<<24>>24<0)m=f[a>>2]|0;else m=a;_s(m+k|0,c,d)|0;d=k+c|0;if((b[h>>0]|0)<0)f[a+4>>2]=d;else b[h>>0]=d;b[g>>0]=0;fk(m+d|0,g)}t=e;return a|0}function ht(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0;if((-17-c|0)>>>0<d>>>0)Vs(a);if((b[a+11>>0]|0)<0)j=f[a>>2]|0;else j=a;if(c>>>0<2147483623){k=d+c|0;d=c<<1;l=k>>>0<d>>>0?d:k;m=l>>>0<11?11:l+16&-16}else m=-17;l=Ms(m)|0;if(g|0)xj(l,j,g)|0;k=e-h-g|0;if(k|0)xj(l+g+i|0,j+g+h|0,k)|0;if((c|0)!=10)Ns(j);f[a>>2]=l;f[a+8>>2]=m|-2147483648;return}function it(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=t;t=t+16|0;g=e;h=a+11|0;i=b[h>>0]|0;j=i<<24>>24<0;if(j){k=(f[a+8>>2]&2147483647)+-1|0;l=f[a+4>>2]|0}else{k=10;l=i&255}if((k-l|0)>>>0>=d>>>0){if(d|0){if(j)m=f[a>>2]|0;else m=a;xj(m+l|0,c,d)|0;j=l+d|0;if((b[h>>0]|0)<0)f[a+4>>2]=j;else b[h>>0]=j;b[g>>0]=0;fk(m+j|0,g)}}else ct(a,k,l+d-k|0,l,l,0,d,c);t=e;return a|0}function jt(a,b){a=a|0;b=b|0;return it(a,b,Kj(b)|0)|0}function kt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=t;t=t+16|0;e=d;g=d+1|0;b[e>>0]=c;c=a+11|0;h=b[c>>0]|0;i=h<<24>>24<0;if(i){j=f[a+4>>2]|0;k=(f[a+8>>2]&2147483647)+-1|0}else{j=h&255;k=10}if((j|0)==(k|0)){ht(a,k,1,k,k,0,0);if((b[c>>0]|0)<0)l=8;else l=7}else if(i)l=8;else l=7;if((l|0)==7){b[c>>0]=j+1;m=a}else if((l|0)==8){l=f[a>>2]|0;f[a+4>>2]=j+1;m=l}l=m+j|0;fk(l,e);b[g>>0]=0;fk(l+1|0,g);t=d;return}function lt(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;g=t;t=t+16|0;h=g;i=a+11|0;j=b[i>>0]|0;k=j<<24>>24<0;if(k)l=f[a+4>>2]|0;else l=j&255;if(l>>>0<c>>>0)Ws(a);if(k)m=(f[a+8>>2]&2147483647)+-1|0;else m=10;if((m-l|0)>>>0>=e>>>0){if(e|0){if(k)n=f[a>>2]|0;else n=a;k=l-c|0;j=n+c|0;if(!k)o=d;else{bt(j+e|0,j,k)|0;o=j>>>0<=d>>>0&(n+l|0)>>>0>d>>>0?d+e|0:d}bt(j,o,e)|0;o=l+e|0;if((b[i>>0]|0)<0)f[a+4>>2]=o;else b[i>>0]=o;b[h>>0]=0;fk(n+o|0,h)}}else ct(a,m,l+e-m|0,l,c,0,e,d);t=g;return a|0}function mt(a,b,c){a=a|0;b=b|0;c=c|0;return lt(a,b,c,Kj(c)|0)|0}function nt(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if(!c)e=0;else e=Uh(a,wj(b[d>>0]|0)|0,c)|0;return e|0}function ot(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0;e=t;t=t+16|0;g=e;h=b[a+11>>0]|0;if(h<<24>>24<0){i=f[a+4>>2]|0;j=f[a>>2]|0}else{i=h&255;j=a}b[g>>0]=c;if(i>>>0>d>>>0){c=nt(j+d|0,i-d|0,g)|0;k=(c|0)==0?-1:c-j|0}else k=-1;t=e;return k|0}function pt(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0,j=0;g=t;t=t+16|0;h=g;if(e>>>0>4294967279)Vs(a);if(e>>>0<11){b[a+11>>0]=d;i=a}else{j=e+16&-16;e=Ms(j)|0;f[a>>2]=e;f[a+8>>2]=j|-2147483648;f[a+4>>2]=d;i=e}xj(i,c,d)|0;b[h>>0]=0;fk(i+d|0,h);t=g;return}function qt(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=t;t=t+16|0;g=e;if(d>>>0>1073741807)Vs(a);do if(d>>>0>=2){h=d+4&-4;if(h>>>0<=1073741823){i=Ms(h<<2)|0;f[a>>2]=i;f[a+8>>2]=h|-2147483648;f[a+4>>2]=d;j=i;break}i=Na(8)|0;v=0;ta(57,i|0,20286);h=v;v=0;if(h&1){h=Ra()|0;Ta(i|0);_a(h|0)}else{f[i>>2]=13812;Va(i|0,9184,130)}}else{b[a+8+3>>0]=d;j=a}while(0);Bj(j,c,d)|0;f[g>>2]=0;nk(j+(d<<2)|0,g);t=e;return}function rt(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=t;t=t+16|0;g=e;if(c>>>0>1073741807)Vs(a);do if(c>>>0>=2){h=c+4&-4;if(h>>>0<=1073741823){i=Ms(h<<2)|0;f[a>>2]=i;f[a+8>>2]=h|-2147483648;f[a+4>>2]=c;j=i;break}i=Na(8)|0;v=0;ta(57,i|0,20286);h=v;v=0;if(h&1){h=Ra()|0;Ta(i|0);_a(h|0)}else{f[i>>2]=13812;Va(i|0,9184,130)}}else{b[a+8+3>>0]=c;j=a}while(0);st(j,c,d)|0;f[g>>2]=0;nk(j+(c<<2)|0,g);t=e;return}function st(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!b)d=a;else{_i(a,c,b)|0;d=a}return d|0}function tt(a){a=a|0;if((b[a+8+3>>0]|0)<0)Ns(f[a>>2]|0);return}function ut(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=t;t=t+16|0;g=e;h=a+8|0;i=h+3|0;j=b[i>>0]|0;k=j<<24>>24<0;if(k)l=(f[h>>2]&2147483647)+-1|0;else l=1;do if(l>>>0>=d>>>0){if(k)m=f[a>>2]|0;else m=a;vt(m,c,d)|0;f[g>>2]=0;nk(m+(d<<2)|0,g);if((b[i>>0]|0)<0){f[a+4>>2]=d;break}else{b[i>>0]=d;break}}else{if(k)n=f[a+4>>2]|0;else n=j&255;wt(a,l,d-l|0,n,0,n,d,c)}while(0);t=e;return a|0}function vt(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(!c)d=a;else{aj(a,b,c)|0;d=a}return d|0}function wt(a,c,d,e,g,h,i,j){a=a|0;c=c|0;d=d|0;e=e|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;k=t;t=t+16|0;l=k;if((1073741806-c|0)>>>0<d>>>0)Vs(a);m=a+8|0;if((b[m+3>>0]|0)<0)n=f[a>>2]|0;else n=a;if(c>>>0<536870887){o=d+c|0;d=c<<1;p=o>>>0<d>>>0?d:o;o=p>>>0<2?2:p+4&-4;if(o>>>0>1073741823){p=Na(8)|0;v=0;ta(57,p|0,20286);d=v;v=0;if(d&1){d=Ra()|0;Ta(p|0);_a(d|0)}else{f[p>>2]=13812;Va(p|0,9184,130)}}else q=o}else q=1073741807;o=Ms(q<<2)|0;if(g|0)Bj(o,n,g)|0;if(i|0)Bj(o+(g<<2)|0,j,i)|0;j=e-h|0;e=j-g|0;if(e|0)Bj(o+(g<<2)+(i<<2)|0,n+(g<<2)+(h<<2)|0,e)|0;if((c|0)!=1)Ns(n);f[a>>2]=o;f[m>>2]=q|-2147483648;q=j+i|0;f[a+4>>2]=q;f[l>>2]=0;nk(o+(q<<2)|0,l);t=k;return}function xt(a,c){a=a|0;c=c|0;var d=0,e=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,w=0,x=0,y=0;if(c>>>0>1073741807)Vs(a);d=a+8|0;e=d+3|0;g=b[e>>0]|0;h=g<<24>>24<0;if(h){i=f[a+4>>2]|0;j=(f[d>>2]&2147483647)+-1|0}else{i=g&255;j=1}k=i>>>0>c>>>0?i:c;c=k>>>0<2;l=c?1:(k+4&-4)+-1|0;a:do if((l|0)!=(j|0)){do if(c){k=f[a>>2]|0;if(h){m=k;n=0;o=a;p=26}else{Bj(a,k,(g&255)+1|0)|0;Ns(k);p=29}}else{k=l+1|0;q=k>>>0>1073741823;b:do if(l>>>0>j>>>0){if(!q){r=Ms(k<<2)|0;break}s=Na(8)|0;v=0;ta(57,s|0,20286);t=v;v=0;if(t&1){t=Ra()|0;Ta(s|0);_a(t|0)}else{f[s>>2]=13812;Va(s|0,9184,130)}}else{do if(q){s=Na(8)|0;v=0;ta(57,s|0,20286);t=v;v=0;if(t&1){t=Sa(0)|0;Ta(s|0);u=t;break}else{f[s>>2]=13812;v=0;ua(11,s|0,9184,130);v=0;p=19;break}}else{v=0;s=ea(71,k<<2|0)|0;t=v;v=0;if(t&1)p=19;else{r=s;break b}}while(0);if((p|0)==19){s=Sa(0)|0;u=s}Oa(u|0)|0;Pa();break a}while(0);if(h){m=f[a>>2]|0;n=1;o=r;p=26;break}else{Bj(r,a,(g&255)+1|0)|0;w=r;x=k;y=a+4|0;p=28;break}}while(0);if((p|0)==26){q=a+4|0;Bj(o,m,(f[q>>2]|0)+1|0)|0;Ns(m);if(n){w=o;x=l+1|0;y=q;p=28}else p=29}if((p|0)==28){f[d>>2]=x|-2147483648;f[y>>2]=i;f[a>>2]=w;break}else if((p|0)==29){b[e>>0]=i;break}}while(0);return}function yt(a,b){a=a|0;b=b|0;return ut(a,b,pn(b)|0)|0}function zt(a,c,d,e,g,h,i){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0;if((1073741807-c|0)>>>0<d>>>0)Vs(a);j=a+8|0;if((b[j+3>>0]|0)<0)k=f[a>>2]|0;else k=a;if(c>>>0<536870887){l=d+c|0;d=c<<1;m=l>>>0<d>>>0?d:l;l=m>>>0<2?2:m+4&-4;if(l>>>0>1073741823){m=Na(8)|0;v=0;ta(57,m|0,20286);d=v;v=0;if(d&1){d=Ra()|0;Ta(m|0);_a(d|0)}else{f[m>>2]=13812;Va(m|0,9184,130)}}else n=l}else n=1073741807;l=Ms(n<<2)|0;if(g|0)Bj(l,k,g)|0;m=e-h-g|0;if(m|0)Bj(l+(g<<2)+(i<<2)|0,k+(g<<2)+(h<<2)|0,m)|0;if((c|0)!=1)Ns(k);f[a>>2]=l;f[j>>2]=n|-2147483648;return}function At(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;e=t;t=t+16|0;g=e;h=a+8|0;i=h+3|0;j=b[i>>0]|0;k=j<<24>>24<0;if(k){l=(f[h>>2]&2147483647)+-1|0;m=f[a+4>>2]|0}else{l=1;m=j&255}if((l-m|0)>>>0>=d>>>0){if(d|0){if(k)n=f[a>>2]|0;else n=a;Bj(n+(m<<2)|0,c,d)|0;k=m+d|0;if((b[i>>0]|0)<0)f[a+4>>2]=k;else b[i>>0]=k;f[g>>2]=0;nk(n+(k<<2)|0,g)}}else wt(a,l,m+d-l|0,m,m,0,d,c);t=e;return a|0}function Bt(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;d=t;t=t+16|0;e=d;g=d+4|0;f[e>>2]=c;c=a+8|0;h=c+3|0;i=b[h>>0]|0;j=i<<24>>24<0;if(j){k=f[a+4>>2]|0;l=(f[c>>2]&2147483647)+-1|0}else{k=i&255;l=1}if((k|0)==(l|0)){zt(a,l,1,l,l,0,0);if((b[h>>0]|0)<0)m=8;else m=7}else if(j)m=8;else m=7;if((m|0)==7){b[h>>0]=k+1;n=a}else if((m|0)==8){m=f[a>>2]|0;f[a+4>>2]=k+1;n=m}m=n+(k<<2)|0;nk(m,e);f[g>>2]=0;nk(m+4|0,g);t=d;return}function Ct(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;e=0;while(1){if((e|0)==3)break;f[a+(e<<2)>>2]=0;e=e+1|0}e=Kj(c)|0;g=d+11|0;h=b[g>>0]|0;i=h<<24>>24<0?f[d+4>>2]|0:h&255;v=0;va(9,a|0,c|0,e|0,i+e|0);e=v;v=0;if(!(e&1)?(v=0,ga(28,a|0,((b[g>>0]|0)<0?f[d>>2]|0:d)|0,i|0)|0,i=v,v=0,!(i&1)):0)return;i=Ra()|0;$s(a);_a(i|0)}function Dt(a){a=a|0;return}function Et(a,b,c){a=a|0;b=b|0;c=c|0;f[a>>2]=c;f[a+4>>2]=b;return}function Ft(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=t;t=t+16|0;e=d;Wc[f[(f[a>>2]|0)+12>>2]&31](e,a,b);if((f[e+4>>2]|0)==(f[c+4>>2]|0))g=(f[e>>2]|0)==(f[c>>2]|0);else g=0;t=d;return g|0}function Gt(a,b,c){a=a|0;b=b|0;c=c|0;return ((f[b>>2]|0)==(c|0)?(f[b+4>>2]|0)==(a|0):0)|0}function Ht(a,b,c){a=a|0;b=b|0;c=c|0;It(a,c);return}function It(a,c){a=a|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=t;t=t+1040|0;e=d+1024|0;g=d;h=Jg()|0;i=f[h>>2]|0;h=Jt($i(c,g,1024)|0,g)|0;if(!(b[h>>0]|0)){f[e>>2]=c;oi(g,1024,20354,e)|0;j=g}else j=h;h=Jg()|0;f[h>>2]=i;f[a>>2]=0;f[a+4>>2]=0;f[a+8>>2]=0;Ys(a,j,Kj(j)|0);t=d;return}function Jt(a,b){a=a|0;b=b|0;var c=0,d=0,e=0;switch(a|0){case 0:{c=b;break}case -1:{b=Jg()|0;d=f[b>>2]|0;e=3;break}default:{d=a;e=3}}if((e|0)==3)if((d|0)==22)c=25788;else zb();return c|0}function Kt(a){a=a|0;Bu(a);return}function Lt(a){a=a|0;Kt(a);Ns(a);return}function Mt(a,b){a=a|0;b=b|0;var c=0;c=f[b+4>>2]|0;Wc[f[(f[c>>2]|0)+24>>2]&31](a,c,f[b>>2]|0);return}function Nt(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0,j=0;e=t;t=t+16|0;g=e;do if(f[c>>2]|0){h=b[d+11>>0]|0;if(h<<24>>24<0)i=f[d+4>>2]|0;else i=h&255;if(i|0)jt(d,20442)|0;Mt(g,c);h=b[g+11>>0]|0;j=h<<24>>24<0;v=0;ga(28,d|0,(j?f[g>>2]|0:g)|0,(j?f[g+4>>2]|0:h&255)|0)|0;h=v;v=0;if(h&1){h=Ra()|0;$s(g);_a(h|0)}else{$s(g);break}}while(0);f[a>>2]=f[d>>2];f[a+4>>2]=f[d+4>>2];f[a+8>>2]=f[d+8>>2];a=0;while(1){if((a|0)==3)break;f[d+(a<<2)>>2]=0;a=a+1|0}t=e;return}function Ot(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0,k=0,l=0;d=t;t=t+32|0;e=d+12|0;g=d;f[g>>2]=0;f[g+4>>2]=0;f[g+8>>2]=0;Ys(g,c,Kj(c)|0);v=0;ua(26,e|0,b|0,g|0);c=v;v=0;do if(!(c&1)){v=0;ta(109,a|0,e|0);h=v;v=0;if(h&1){h=Ra()|0;i=G;$s(e);j=i;k=h;break}else{$s(e);$s(g);f[a>>2]=13648;h=b;i=f[h+4>>2]|0;l=a+8|0;f[l>>2]=f[h>>2];f[l+4>>2]=i;t=d;return}}else{i=Ra()|0;j=G;k=i}while(0);$s(g);_a(k|0)}function Pt(a){a=a|0;var b=0;a=Na(8)|0;v=0;ta(57,a|0,20445);b=v;v=0;if(b&1){b=Ra()|0;Ta(a|0);_a(b|0)}else{f[a>>2]=13812;Va(a|0,9184,130)}}function Qt(a){a=a|0;var b=0;a=Na(8)|0;v=0;ta(57,a|0,20445);b=v;v=0;if(b&1){b=Ra()|0;Ta(a|0);_a(b|0)}else{f[a>>2]=13832;Va(a|0,9200,130)}}function Rt(){return (St()|0)>0|0}function St(){return (Wa()|0)&1|0}function Tt(){var a=0,b=0,c=0,d=0,e=0,g=0,h=0,i=0,j=0,k=0;a=t;t=t+48|0;b=a+32|0;c=a+24|0;d=a+16|0;e=a;g=a+36|0;a=Ut()|0;if(a|0?(h=f[a>>2]|0,h|0):0){a=h+48|0;i=f[a>>2]|0;j=f[a+4>>2]|0;if(!((i&-256|0)==1126902528&(j|0)==1129074247)){f[c>>2]=20588;Vt(20538,c)}if((i|0)==1126902529&(j|0)==1129074247)k=f[h+44>>2]|0;else k=h+80|0;f[g>>2]=k;k=f[h>>2]|0;h=f[k+4>>2]|0;if(Ic[f[(f[2268]|0)+16>>2]&63](9072,k,g)|0){k=f[g>>2]|0;g=Gc[f[(f[k>>2]|0)+8>>2]&127](k)|0;f[e>>2]=20588;f[e+4>>2]=h;f[e+8>>2]=g;Vt(20452,e)}else{f[d>>2]=20588;f[d+4>>2]=h;Vt(20497,d)}}Vt(20576,b)}function Ut(){var a=0,b=0;a=t;t=t+16|0;if(!(Ib(25768,36)|0)){b=Gb(f[6443]|0)|0;t=a;return b|0}else Vt(20727,a);return 0}function Vt(a,b){a=a|0;b=b|0;var c=0,d=0;c=t;t=t+16|0;d=c;f[d>>2]=b;b=f[2541]|0;Wh(b,a,d)|0;Ri(10,b)|0;zb()}function Wt(a){a=a|0;return}function Xt(a){a=a|0;Wt(a);Ns(a);return}function Yt(a){a=a|0;return}function Zt(a){a=a|0;return}function _t(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=t;t=t+64|0;e=d;if(!(cu(a,b,0)|0))if((b|0)!=0?(g=gu(b,9096,9080,0)|0,(g|0)!=0):0){b=e+4|0;h=b+52|0;do{f[b>>2]=0;b=b+4|0}while((b|0)<(h|0));f[e>>2]=g;f[e+8>>2]=a;f[e+12>>2]=-1;f[e+48>>2]=1;Xc[f[(f[g>>2]|0)+28>>2]&15](g,e,f[c>>2]|0,1);if((f[e+24>>2]|0)==1){f[c>>2]=f[e+16>>2];i=1}else i=0;j=i}else j=0;else j=1;t=d;return j|0}function $t(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;if(cu(a,f[b+8>>2]|0,g)|0)fu(0,b,c,d,e);return}function au(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0;do if(!(cu(a,f[c+8>>2]|0,g)|0)){if(cu(a,f[c>>2]|0,g)|0){if((f[c+16>>2]|0)!=(d|0)?(h=c+20|0,(f[h>>2]|0)!=(d|0)):0){f[c+32>>2]=e;f[h>>2]=d;h=c+40|0;f[h>>2]=(f[h>>2]|0)+1;if((f[c+36>>2]|0)==1?(f[c+24>>2]|0)==2:0)b[c+54>>0]=1;f[c+44>>2]=4;break}if((e|0)==1)f[c+32>>2]=1}}else eu(0,c,d,e);while(0);return}function bu(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(cu(a,f[b+8>>2]|0,0)|0)du(0,b,c,d);return}function cu(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function du(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0;a=c+16|0;g=f[a>>2]|0;do if(g){if((g|0)!=(d|0)){h=c+36|0;f[h>>2]=(f[h>>2]|0)+1;f[c+24>>2]=2;b[c+54>>0]=1;break}h=c+24|0;if((f[h>>2]|0)==2)f[h>>2]=e}else{f[a>>2]=d;f[c+24>>2]=e;f[c+36>>2]=1}while(0);return}function eu(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((f[b+4>>2]|0)==(c|0)?(c=b+28|0,(f[c>>2]|0)!=1):0)f[c>>2]=d;return}function fu(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0;b[c+53>>0]=1;do if((f[c+4>>2]|0)==(e|0)){b[c+52>>0]=1;a=c+16|0;h=f[a>>2]|0;if(!h){f[a>>2]=d;f[c+24>>2]=g;f[c+36>>2]=1;if(!((g|0)==1?(f[c+48>>2]|0)==1:0))break;b[c+54>>0]=1;break}if((h|0)!=(d|0)){h=c+36|0;f[h>>2]=(f[h>>2]|0)+1;b[c+54>>0]=1;break}h=c+24|0;a=f[h>>2]|0;if((a|0)==2){f[h>>2]=g;i=g}else i=a;if((i|0)==1?(f[c+48>>2]|0)==1:0)b[c+54>>0]=1}while(0);return}function gu(a,c,e,g){a=a|0;c=c|0;e=e|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;h=t;t=t+64|0;i=h;j=f[a>>2]|0;k=a+(f[j+-8>>2]|0)|0;l=f[j+-4>>2]|0;f[i>>2]=e;f[i+4>>2]=a;f[i+8>>2]=c;f[i+12>>2]=g;g=i+16|0;c=i+20|0;a=i+24|0;j=i+28|0;m=i+32|0;n=i+40|0;o=g;p=o+36|0;do{f[o>>2]=0;o=o+4|0}while((o|0)<(p|0));d[g+36>>1]=0;b[g+38>>0]=0;a:do if(cu(l,e,0)|0){f[i+48>>2]=1;Zc[f[(f[l>>2]|0)+20>>2]&7](l,i,k,k,1,0);q=(f[a>>2]|0)==1?k:0}else{Yc[f[(f[l>>2]|0)+24>>2]&3](l,i,k,1,0);switch(f[i+36>>2]|0){case 0:{q=(f[n>>2]|0)==1&(f[j>>2]|0)==1&(f[m>>2]|0)==1?f[c>>2]|0:0;break a;break}case 1:break;default:{q=0;break a}}if((f[a>>2]|0)!=1?!((f[n>>2]|0)==0&(f[j>>2]|0)==1&(f[m>>2]|0)==1):0){q=0;break}q=f[g>>2]|0}while(0);t=h;return q|0}function hu(a){a=a|0;Wt(a);Ns(a);return}function iu(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0;if(cu(a,f[b+8>>2]|0,g)|0)fu(0,b,c,d,e);else{h=f[a+8>>2]|0;Zc[f[(f[h>>2]|0)+20>>2]&7](h,b,c,d,e,g)}return}function ju(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;do if(!(cu(a,f[c+8>>2]|0,g)|0)){if(!(cu(a,f[c>>2]|0,g)|0)){h=f[a+8>>2]|0;Yc[f[(f[h>>2]|0)+24>>2]&3](h,c,d,e,g);break}if((f[c+16>>2]|0)!=(d|0)?(h=c+20|0,(f[h>>2]|0)!=(d|0)):0){f[c+32>>2]=e;i=c+44|0;if((f[i>>2]|0)==4)break;j=c+52|0;b[j>>0]=0;k=c+53|0;b[k>>0]=0;l=f[a+8>>2]|0;Zc[f[(f[l>>2]|0)+20>>2]&7](l,c,d,d,1,g);if(b[k>>0]|0)if(!(b[j>>0]|0)){m=1;n=11}else n=15;else{m=0;n=11}do if((n|0)==11){f[h>>2]=d;j=c+40|0;f[j>>2]=(f[j>>2]|0)+1;if((f[c+36>>2]|0)==1?(f[c+24>>2]|0)==2:0){b[c+54>>0]=1;if(m){n=15;break}else{o=4;break}}if(m)n=15;else o=4}while(0);if((n|0)==15)o=3;f[i>>2]=o;break}if((e|0)==1)f[c+32>>2]=1}else eu(0,c,d,e);while(0);return}function ku(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;if(cu(a,f[b+8>>2]|0,0)|0)du(0,b,c,d);else{e=f[a+8>>2]|0;Xc[f[(f[e>>2]|0)+28>>2]&15](e,b,c,d)}return}function lu(a){a=a|0;return}function mu(){var a=0;a=t;t=t+16|0;if(!(Hb(25772,154)|0)){t=a;return}else Vt(20776,a)}function nu(a){a=a|0;var b=0;b=t;t=t+16|0;Bg(a);if(!(Jb(f[6443]|0,0)|0)){t=b;return}else Vt(20826,b)}function ou(){var a=0,b=0;v=0;a=da(6)|0;b=v;v=0;if(b&1){b=Sa(0)|0;pd(b)}if((a|0?(b=f[a>>2]|0,b|0):0)?(a=b+48|0,(f[a>>2]&-256|0)==1126902528?(f[a+4>>2]|0)==1129074247:0):0)pu(f[b+12>>2]|0);pu(qu()|0)}function pu(a){a=a|0;var b=0;b=t;t=t+16|0;v=0;ra(a|0);a=v;v=0;if(!(a&1)){v=0;ta(110,20879,b|0);v=0}a=Sa(0)|0;Oa(a|0)|0;v=0;ta(110,20919,b+8|0);v=0;b=Sa(0)|0;v=0;ra(2);a=v;v=0;if(a&1){a=Sa(0)|0;pd(a)}else pd(b)}function qu(){var a=0;a=f[3415]|0;f[3415]=a+0;return a|0}function ru(a){a=a|0;return}function su(a){a=a|0;ru(a);Ns(a);return}function tu(a){a=a|0;return 20969}function uu(a){a=a|0;return}function vu(a){a=a|0;f[a>>2]=13772;zu(a+4|0);return}function wu(a){a=a|0;vu(a);Ns(a);return}function xu(a){a=a|0;return yu(a+4|0)|0}function yu(a){a=a|0;return f[a>>2]|0}function zu(a){a=a|0;var b=0,c=0;if(Ss(a)|0?(b=Au(f[a>>2]|0)|0,a=b+8|0,c=f[a>>2]|0,f[a>>2]=c+-1,(c+-1|0)<0):0)Ns(b);return}function Au(a){a=a|0;return a+-12|0}function Bu(a){a=a|0;f[a>>2]=13792;zu(a+4|0);return}function Cu(a){a=a|0;Bu(a);Ns(a);return}function Du(a){a=a|0;return yu(a+4|0)|0}function Eu(a){a=a|0;vu(a);Ns(a);return}function Fu(a){a=a|0;vu(a);Ns(a);return}function Gu(a){a=a|0;return}function Hu(a){a=a|0;Gu(a);Ns(a);return}function Iu(a){a=a|0;return 21065}function Ju(a){a=a|0;Wt(a);Ns(a);return}function Ku(a,b,c){a=a|0;b=b|0;c=c|0;return cu(a,b,0)|0}function Lu(a){a=a|0;Wt(a);Ns(a);return}function Mu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0,h=0,i=0,j=0;d=t;t=t+64|0;e=d;f[c>>2]=f[f[c>>2]>>2];if(!(Nu(a,b,0)|0))if(((b|0)!=0?(g=gu(b,9096,9248,0)|0,(g|0)!=0):0)?(f[g+8>>2]&~f[a+8>>2]|0)==0:0){b=a+12|0;a=g+12|0;if(!(cu(f[b>>2]|0,f[a>>2]|0,0)|0)?!(cu(f[b>>2]|0,9280,0)|0):0){g=f[b>>2]|0;if((((g|0)!=0?(b=gu(g,9096,9080,0)|0,(b|0)!=0):0)?(g=f[a>>2]|0,(g|0)!=0):0)?(a=gu(g,9096,9080,0)|0,(a|0)!=0):0){g=e+4|0;h=g+52|0;do{f[g>>2]=0;g=g+4|0}while((g|0)<(h|0));f[e>>2]=a;f[e+8>>2]=b;f[e+12>>2]=-1;f[e+48>>2]=1;Xc[f[(f[a>>2]|0)+28>>2]&15](a,e,f[c>>2]|0,1);if((f[e+24>>2]|0)==1){f[c>>2]=f[e+16>>2];i=1}else i=0;j=i}else j=0}else j=1}else j=0;else j=1;t=d;return j|0}function Nu(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;if(cu(a,b,0)|0)d=1;else d=cu(b,9288,0)|0;return d|0}function Ou(a){a=a|0;Wt(a);Ns(a);return}function Pu(a,c,d,e,g,h){a=a|0;c=c|0;d=d|0;e=e|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(cu(a,f[c+8>>2]|0,h)|0)fu(0,c,d,e,g);else{i=c+52|0;j=b[i>>0]|0;k=c+53|0;l=b[k>>0]|0;m=f[a+12>>2]|0;n=a+16+(m<<3)|0;b[i>>0]=0;b[k>>0]=0;Tu(a+16|0,c,d,e,g,h);a:do if((m|0)>1){o=c+24|0;p=a+8|0;q=c+54|0;r=a+24|0;do{if(b[q>>0]|0)break a;if(!(b[i>>0]|0)){if(b[k>>0]|0?(f[p>>2]&1|0)==0:0)break a}else{if((f[o>>2]|0)==1)break a;if(!(f[p>>2]&2))break a}b[i>>0]=0;b[k>>0]=0;Tu(r,c,d,e,g,h);r=r+8|0}while(r>>>0<n>>>0)}while(0);b[i>>0]=j;b[k>>0]=l}return}function Qu(a,c,d,e,g){a=a|0;c=c|0;d=d|0;e=e|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;a:do if(!(cu(a,f[c+8>>2]|0,g)|0)){if(!(cu(a,f[c>>2]|0,g)|0)){h=f[a+12>>2]|0;i=a+16+(h<<3)|0;Uu(a+16|0,c,d,e,g);j=a+24|0;if((h|0)<=1)break;h=f[a+8>>2]|0;if((h&2|0)==0?(k=c+36|0,(f[k>>2]|0)!=1):0){if(!(h&1)){h=c+54|0;l=j;while(1){if(b[h>>0]|0)break a;if((f[k>>2]|0)==1)break a;Uu(l,c,d,e,g);l=l+8|0;if(l>>>0>=i>>>0)break a}}l=c+24|0;h=c+54|0;m=j;while(1){if(b[h>>0]|0)break a;if((f[k>>2]|0)==1?(f[l>>2]|0)==1:0)break a;Uu(m,c,d,e,g);m=m+8|0;if(m>>>0>=i>>>0)break a}}m=c+54|0;l=j;while(1){if(b[m>>0]|0)break a;Uu(l,c,d,e,g);l=l+8|0;if(l>>>0>=i>>>0)break a}}if((f[c+16>>2]|0)!=(d|0)?(i=c+20|0,(f[i>>2]|0)!=(d|0)):0){f[c+32>>2]=e;l=c+44|0;if((f[l>>2]|0)==4)break;m=a+16+(f[a+12>>2]<<3)|0;j=c+52|0;k=c+53|0;h=c+54|0;n=a+8|0;o=c+24|0;p=0;q=a+16|0;r=0;b:while(1){if(q>>>0>=m>>>0){s=p;t=18;break}b[j>>0]=0;b[k>>0]=0;Tu(q,c,d,d,1,g);if(b[h>>0]|0){s=p;t=18;break}do if(b[k>>0]|0){if(!(b[j>>0]|0))if(!(f[n>>2]&1)){s=1;t=18;break b}else{u=1;v=r;break}if((f[o>>2]|0)==1){t=23;break b}if(!(f[n>>2]&2)){t=23;break b}else{u=1;v=1}}else{u=p;v=r}while(0);p=u;q=q+8|0;r=v}do if((t|0)==18){if((!r?(f[i>>2]=d,q=c+40|0,f[q>>2]=(f[q>>2]|0)+1,(f[c+36>>2]|0)==1):0)?(f[o>>2]|0)==2:0){b[h>>0]=1;if(s){t=23;break}else{w=4;break}}if(s)t=23;else w=4}while(0);if((t|0)==23)w=3;f[l>>2]=w;break}if((e|0)==1)f[c+32>>2]=1}else eu(0,c,d,e);while(0);return}function Ru(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;a:do if(!(cu(a,f[c+8>>2]|0,0)|0)){g=f[a+12>>2]|0;h=a+16+(g<<3)|0;Su(a+16|0,c,d,e);if((g|0)>1){g=c+54|0;i=a+24|0;do{Su(i,c,d,e);if(b[g>>0]|0)break a;i=i+8|0}while(i>>>0<h>>>0)}}else du(0,c,d,e);while(0);return}function Su(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,g=0,h=0;e=f[a+4>>2]|0;g=e>>8;if(!(e&1))h=g;else h=f[(f[c>>2]|0)+g>>2]|0;g=f[a>>2]|0;Xc[f[(f[g>>2]|0)+28>>2]&15](g,b,c+h|0,(e&2|0)==0?2:d);return}function Tu(a,b,c,d,e,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;g=g|0;var h=0,i=0,j=0;h=f[a+4>>2]|0;i=h>>8;if(!(h&1))j=i;else j=f[(f[d>>2]|0)+i>>2]|0;i=f[a>>2]|0;Zc[f[(f[i>>2]|0)+20>>2]&7](i,b,c,d+j|0,(h&2|0)==0?2:e,g);return}function Uu(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var g=0,h=0,i=0;g=f[a+4>>2]|0;h=g>>8;if(!(g&1))i=h;else i=f[(f[c>>2]|0)+h>>2]|0;h=f[a>>2]|0;Yc[f[(f[h>>2]|0)+24>>2]&3](h,b,c+i|0,(g&2|0)==0?2:d,e);return}function Vu(a){a=a|0;f[a>>2]=13852;return}function Wu(a){a=a|0;var c=0;if((b[a>>0]|0)==1)c=0;else{b[a>>0]=1;c=1}return c|0}function Xu(a){a=a|0;return}function Yu(a){a=a|0;return}function Zu(a){a=a|0;f[a>>2]=13752;return}function _u(){var a=0;a=f[6444]|0;f[6444]=a+0;return a|0}function $u(a,b,c){a=a|0;b=b|0;c=c|0;var d=0,e=0,g=0;d=t;t=t+16|0;e=d;f[e>>2]=f[c>>2];g=Ic[f[(f[a>>2]|0)+16>>2]&63](a,b,e)|0;if(g)f[c>>2]=f[e>>2];t=d;return g&1|0}function av(a){a=a|0;var b=0;if(!a)b=0;else b=(gu(a,9096,9248,0)|0)!=0&1;return b|0}function bv(){}function cv(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;c=a&65535;d=b&65535;e=V(d,c)|0;f=a>>>16;a=(e>>>16)+(V(d,f)|0)|0;d=b>>>16;b=V(d,c)|0;return (G=(a>>>16)+(V(d,f)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|e&65535|0)|0}function dv(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=cv(e,a)|0;f=G;return (G=(V(b,a)|0)+(V(d,e)|0)+f|f&0,c|0|0)|0}function ev(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=a+c>>>0;return (G=b+d+(e>>>0<a>>>0|0)>>>0,e|0)|0}function fv(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 (G=e,a-c>>>0|0)|0}function gv(a){a=a|0;return (a?31-(Y(a^a-1)|0)|0:32)|0}function hv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|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,H=0;g=a;h=b;i=h;j=c;k=d;l=k;if(!i){m=(e|0)!=0;if(!l){if(m){f[e>>2]=(g>>>0)%(j>>>0);f[e+4>>2]=0}n=0;o=(g>>>0)/(j>>>0)>>>0;return (G=n,o)|0}else{if(!m){n=0;o=0;return (G=n,o)|0}f[e>>2]=a|0;f[e+4>>2]=b&0;n=0;o=0;return (G=n,o)|0}}m=(l|0)==0;do if(j){if(!m){p=(Y(l|0)|0)-(Y(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(!e){n=0;o=0;return (G=n,o)|0}f[e>>2]=a|0;f[e+4>>2]=h|b&0;n=0;o=0;return (G=n,o)|0}r=j-1|0;if(r&j|0){s=(Y(j|0)|0)+33-(Y(i|0)|0)|0;q=64-s|0;p=32-s|0;y=p>>31;z=s-32|0;A=z>>31;t=s;u=p-1>>31&i>>>(z>>>0)|(i<<p|g>>>(s>>>0))&A;v=A&i>>>(s>>>0);w=g<<q&y;x=(i<<q|g>>>(z>>>0))&y|g<<p&s-33>>31;break}if(e|0){f[e>>2]=r&g;f[e+4>>2]=0}if((j|0)==1){n=h|b&0;o=a|0|0;return (G=n,o)|0}else{r=gv(j|0)|0;n=i>>>(r>>>0)|0;o=i<<32-r|g>>>(r>>>0)|0;return (G=n,o)|0}}else{if(m){if(e|0){f[e>>2]=(i>>>0)%(j>>>0);f[e+4>>2]=0}n=0;o=(i>>>0)/(j>>>0)>>>0;return (G=n,o)|0}if(!g){if(e|0){f[e>>2]=0;f[e+4>>2]=(i>>>0)%(l>>>0)}n=0;o=(i>>>0)/(l>>>0)>>>0;return (G=n,o)|0}r=l-1|0;if(!(r&l)){if(e|0){f[e>>2]=a|0;f[e+4>>2]=r&i|b&0}n=0;o=i>>>((gv(l|0)|0)>>>0);return (G=n,o)|0}r=(Y(l|0)|0)-(Y(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(!e){n=0;o=0;return (G=n,o)|0}f[e>>2]=a|0;f[e+4>>2]=h|b&0;n=0;o=0;return (G=n,o)|0}while(0);if(!t){B=x;C=w;D=v;E=u;F=0;H=0}else{b=c|0|0;c=k|d&0;d=ev(b|0,c|0,-1,-1)|0;k=G;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;fv(d|0,k|0,g|0,a|0)|0;i=G;l=i>>31|((i|0)<0?-1:0)<<1;t=l&1;v=fv(g|0,a|0,l&b|0,(((i|0)<0?-1:0)>>31|((i|0)<0?-1:0)<<1)&c|0)|0;w=G;u=u-1|0}while((u|0)!=0);B=h;C=x;D=w;E=v;F=0;H=t}t=C;C=0;if(e|0){f[e>>2]=E;f[e+4>>2]=D}n=(t|0)>>>31|(B|C)<<1|(C<<1|t>>>31)&0|F;o=(t<<1|0>>>31)&-2|H;return (G=n,o)|0}function iv(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return hv(a,b,c,d,0)|0}function jv(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){G=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}G=0;return b>>>c-32|0}function kv(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){G=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}G=a<<c-32;return 0}function lv(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function mv(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0;if((d|0)>=8192)return Bb(a|0,c|0,d|0)|0;e=a|0;g=a+d|0;if((a&3)==(c&3)){while(a&3){if(!d)return e|0;b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0;d=d-1|0}h=g&-4|0;d=h-64|0;while((a|0)<=(d|0)){f[a>>2]=f[c>>2];f[a+4>>2]=f[c+4>>2];f[a+8>>2]=f[c+8>>2];f[a+12>>2]=f[c+12>>2];f[a+16>>2]=f[c+16>>2];f[a+20>>2]=f[c+20>>2];f[a+24>>2]=f[c+24>>2];f[a+28>>2]=f[c+28>>2];f[a+32>>2]=f[c+32>>2];f[a+36>>2]=f[c+36>>2];f[a+40>>2]=f[c+40>>2];f[a+44>>2]=f[c+44>>2];f[a+48>>2]=f[c+48>>2];f[a+52>>2]=f[c+52>>2];f[a+56>>2]=f[c+56>>2];f[a+60>>2]=f[c+60>>2];a=a+64|0;c=c+64|0}while((a|0)<(h|0)){f[a>>2]=f[c>>2];a=a+4|0;c=c+4|0}}else{h=g-4|0;while((a|0)<(h|0)){b[a>>0]=b[c>>0]|0;b[a+1>>0]=b[c+1>>0]|0;b[a+2>>0]=b[c+2>>0]|0;b[a+3>>0]=b[c+3>>0]|0;a=a+4|0;c=c+4|0}}while((a|0)<(g|0)){b[a>>0]=b[c>>0]|0;a=a+1|0;c=c+1|0}return e|0}function nv(a,c,d){a=a|0;c=c|0;d=d|0;var e=0;if((c|0)<(a|0)&(a|0)<(c+d|0)){e=a;c=c+d|0;a=a+d|0;while((d|0)>0){a=a-1|0;c=c-1|0;d=d-1|0;b[a>>0]=b[c>>0]|0}a=e}else mv(a,c,d)|0;return a|0}function ov(a,c,d){a=a|0;c=c|0;d=d|0;var e=0,g=0,h=0,i=0;e=a+d|0;c=c&255;if((d|0)>=67){while(a&3){b[a>>0]=c;a=a+1|0}g=e&-4|0;h=g-64|0;i=c|c<<8|c<<16|c<<24;while((a|0)<=(h|0)){f[a>>2]=i;f[a+4>>2]=i;f[a+8>>2]=i;f[a+12>>2]=i;f[a+16>>2]=i;f[a+20>>2]=i;f[a+24>>2]=i;f[a+28>>2]=i;f[a+32>>2]=i;f[a+36>>2]=i;f[a+40>>2]=i;f[a+44>>2]=i;f[a+48>>2]=i;f[a+52>>2]=i;f[a+56>>2]=i;f[a+60>>2]=i;a=a+64|0}while((a|0)<(g|0)){f[a>>2]=i;a=a+4|0}}while((a|0)<(e|0)){b[a>>0]=c;a=a+1|0}return e-d|0}function pv(a){a=a|0;return 0}function qv(a){a=a|0;return 0}function rv(a){a=a|0;return 0}function sv(a){a=a|0;var b=0,c=0;b=f[r>>2]|0;c=b+a|0;if((a|0)>0&(c|0)<(b|0)|(c|0)<0){ba()|0;$a(12);return -1}f[r>>2]=c;if((c|0)>(aa()|0)?($()|0)==0:0){f[r>>2]=b;$a(12);return -1}return b|0}function tv(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return +Ec[a&3](b|0,c|0,d|0)}function uv(a){a=a|0;return Fc[a&7]()|0}function vv(a,b){a=a|0;b=b|0;return Gc[a&127](b|0)|0}function wv(a,b,c){a=a|0;b=b|0;c=c|0;return Hc[a&31](b|0,c|0)|0}function xv(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Ic[a&63](b|0,c|0,d|0)|0}function yv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Jc[a&15](b|0,c|0,d|0,e|0)|0}function zv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;return Kc[a&7](b|0,c|0,d|0,e|0,+f)|0}function Av(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 Lc[a&31](b|0,c|0,d|0,e|0,f|0)|0}function Bv(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 Mc[a&3](b|0,c|0,d|0,e|0,f|0,+g)|0}function Cv(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 Nc[a&63](b|0,c|0,d|0,e|0,f|0,g|0)|0}function Dv(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 Oc[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function Ev(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 Pc[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function Fv(a,b,c,d,e,f,g,h,i,j,k){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;j=j|0;k=k|0;return Qc[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)|0}function Gv(a,b,c,d,e,f,g,h,i,j,k,l){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;j=j|0;k=k|0;l=l|0;return Rc[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0)|0}function Hv(a,b,c,d,e,f,g,h,i,j,k,l,m){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;j=j|0;k=k|0;l=l|0;m=m|0;return Sc[a&3](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0)|0}function Iv(a){a=a|0;Tc[a&63]()}function Jv(a,b){a=a|0;b=b|0;Uc[a&255](b|0)}function Kv(a,b,c){a=a|0;b=b|0;c=c|0;Vc[a&127](b|0,c|0)}function Lv(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Wc[a&31](b|0,c|0,d|0)}function Mv(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Xc[a&15](b|0,c|0,d|0,e|0)}function Nv(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Yc[a&3](b|0,c|0,d|0,e|0,f|0)}function Ov(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;Zc[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function Pv(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;_c[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function Qv(a,b,c,d,e,f,g,h,i,j,k){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;j=j|0;k=k|0;$c[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0)}function Rv(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){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;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;p=p|0;ad[a&3](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)}function Sv(a,b,c){a=a|0;b=b|0;c=c|0;Z(0);return 0.0}function Tv(){Z(1);return 0}function Uv(a){a=a|0;Z(2);return 0}function Vv(a){a=a|0;return rv(a|0)|0}function Wv(a){a=a|0;return qv(a|0)|0}function Xv(a){a=a|0;return pv(a|0)|0}function Yv(a,b){a=a|0;b=b|0;Z(3);return 0}function Zv(a,b,c){a=a|0;b=b|0;c=c|0;Z(4);return 0}function _v(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Z(5);return 0}function $v(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;Z(6);return 0}function aw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Z(7);return 0}function bw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=+f;Z(8);return 0}function cw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Z(9);return 0}function dw(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;Z(10);return 0}function ew(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;Z(11);return 0}function fw(a,b,c,d,e,f,g,h,i,j){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;j=j|0;Z(12);return 0}function gw(a,b,c,d,e,f,g,h,i,j,k){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;j=j|0;k=k|0;Z(13);return 0}function hw(a,b,c,d,e,f,g,h,i,j,k,l){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;j=j|0;k=k|0;l=l|0;Z(14);return 0}function iw(){Z(15)}function jw(){Pa()}function kw(){Ua()}function lw(a){a=a|0;Z(16)}function mw(a,b){a=a|0;b=b|0;Z(17)}function nw(a,b,c){a=a|0;b=b|0;c=c|0;Z(18)}function ow(a,b,c){a=a|0;b=b|0;c=c|0;Va(a|0,b|0,c|0)}function pw(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Z(19)}function qw(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Z(20)}function rw(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Z(21)}function sw(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;Z(22)}function tw(a,b,c,d,e,f,g,h,i,j){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;j=j|0;Z(23)}function uw(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){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;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;Z(24)}
  
  // EMSCRIPTEN_END_FUNCS
  var Ec=[Sv,Qk,Tk,Vk];var Fc=[Tv,Te,Ek,Cs,Es,Gs,Ut,Tv];var Gc=[Uv,Cd,nj,oj,Md,rj,Xd,Zd,_d,ae,ee,ge,he,Bf,Nf,Pf,Qf,ig,Fg,qj,Ij,Du,sm,zm,Am,Bm,Cm,Dm,Em,Fm,an,hn,jn,kn,ln,mn,nn,on,Yn,Zn,co,io,jo,oo,to,uo,zo,Eo,Fo,Ko,Hp,Ip,Kp,Zp,_p,aq,Fq,Gq,Mq,Nq,Sp,Tp,Vp,gq,hq,jq,tu,xu,Iu,Qe,Ue,Ms,Sd,vf,Hf,Vv,Wv,Xv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv,Uv];var Hc=[Yv,vd,Nd,Od,me,re,we,Ee,Je,Oe,yf,zf,fg,hg,wf,sj,uj,sq,uq,wq,Xq,Zq,$q,Zj,Bk,jt,et,Ff,Yv,Yv,Yv,Yv];var Ic=[Zv,kj,pj,tj,Gg,Hg,Mg,qi,Ft,Gt,dk,lk,vp,Ap,tq,vq,yq,Tq,Yq,_q,br,_t,Ku,Mu,Xe,rd,mt,Pd,it,Lg,wh,To,cp,At,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv,Zv];var Jc=[_v,xq,Uq,Vq,Wq,ar,Fk,_k,bl,dl,fl,hl,jl,$l,_v,_v];var Kc=[$v,Vl,Wl,km,lm,$v,$v,$v];var Lc=[aw,bk,jk,Ql,Rl,Tl,Xl,fm,gm,im,mm,Gp,Jp,Yp,$p,zq,cr,Rp,Up,fq,iq,aw,aw,aw,aw,aw,aw,aw,aw,aw,aw,aw];var Mc=[bw,jp,pp,bw];var Nc=[cw,qk,rk,sk,tk,uk,vk,wk,xk,yk,zk,Ak,nl,ol,pl,ql,rl,sl,tl,ul,vl,wl,xl,Sl,Ul,hm,jm,tm,um,vm,wm,xm,bn,cn,dn,en,fn,kp,qp,Qd,nm,cw,cw,cw,cw,cw,cw,cw,cw,cw,cw,cw,cw,cw,cw,cw,cw,cw,cw,cw,cw,cw,cw,cw];var Oc=[dw,Mn,Sn,Po,Qo,$o,ap,kl,Nl,dw,dw,dw,dw,dw,dw,dw];var Pc=[ew,ym,gn,Ep,Fp,Wp,Xp,Pp,Qp,dq,eq,ew,ew,ew,ew,ew];var Qc=[fw,Dk,yl,fw];var Rc=[gw,So,bp,gw];var Sc=[hw,Pk,Bl,hw];var Tc=[iw,Tt,jw,Ls,Im,Hm,Gm,sn,rn,qn,lr,nr,rr,tr,vr,xr,zr,Fr,Hr,Jr,Lr,Nr,Pr,Rr,Tr,Vr,Xr,Zr,$r,bs,ds,fs,hs,js,ls,kw,mu,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw,iw];var Uc=[lw,Is,td,ud,wd,zd,Bd,Dd,Ed,Ad,Fd,Gd,Hd,Cj,Dj,Ej,Fj,Id,Jd,Td,Vd,Wd,ce,de,ke,le,ne,pe,qe,se,ue,ve,xe,Ce,De,Fe,He,Ie,Ke,Me,Ne,Pe,af,Df,Ef,Lf,Mf,Yf,Zf,dg,eg,gg,kg,lg,ej,gj,hj,ij,Dt,Hj,Lj,Mj,_j,$j,ak,hk,ik,ok,pk,ll,ml,Ol,Pl,dm,em,qm,rm,_m,$m,Kn,Ln,Qn,Rn,Wn,Xn,go,ho,ro,so,Co,Do,No,Oo,Zo,_o,hp,ip,np,op,tp,up,yp,zp,gk,Op,Dp,bq,cq,nq,oq,qq,rq,Dq,Eq,Kq,Lq,Rq,Sq,dr,er,fr,Kt,Lt,Wt,Xt,Yt,Zt,hu,ru,su,vu,wu,Bu,Cu,Eu,Fu,Gu,Hu,Ju,Lu,Ou,Re,ld,md,Vs,Yj,Pt,Qt,$f,Jk,Lk,Ro,Vn,Bg,nu,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw,lw];var Vc=[mw,jj,Yd,$d,fe,xf,Cf,Of,Rf,jg,mg,ng,Ze,_n,$n,ao,bo,eo,fo,ko,lo,mo,no,po,qo,vo,wo,xo,yo,Ao,Bo,Go,Ho,Io,Jo,Lo,Mo,xp,Cp,Hq,Iq,Jq,Oq,Pq,Qq,jd,kd,We,Us,pg,ye,og,Xs,wg,xd,Ud,be,Rs,Rd,dt,kt,Wj,Nj,ie,_e,uf,Jf,Kf,ag,bg,vg,fj,Bt,xt,kr,mr,or,qr,sr,ur,wr,yr,Ar,Cr,Er,Gr,Ir,Kr,Mr,Or,Qr,Sr,Ur,Wr,Yr,_r,as,cs,es,gs,is,ks,ms,As,rs,os,us,vs,Ps,Ts,Vt,mw,mw,mw,mw,mw,mw,mw,mw,mw,mw,mw,mw,mw,mw,mw,mw,mw];var Wc=[nw,Af,Xf,sf,Et,Jj,Ve,nd,ze,Ae,yd,ow,ft,Ct,tf,Gf,If,rg,sg,tg,Pj,Ys,qt,Xo,Yo,gp,Nt,nw,nw,nw,nw,nw];var Xc=[pw,Ld,mj,ck,kk,bu,ku,Ru,Rk,pt,pw,pw,pw,pw,pw,pw];var Yc=[qw,au,ju,Qu];var Zc=[rw,Kd,lj,wp,Bp,$t,iu,Pu];var _c=[sw,cm,am,pm,om,sw,sw,sw];var $c=[tw,Wo,fp,lp,rp,tw,tw,tw];var ad=[uw,mp,sp,uw];return{__GLOBAL__sub_I_BinaryDict_cpp:bf,__GLOBAL__sub_I_Config_cpp:cf,__GLOBAL__sub_I_ConversionChain_cpp:ef,__GLOBAL__sub_I_Conversion_cpp:df,__GLOBAL__sub_I_Converter_cpp:ff,__GLOBAL__sub_I_DartsDict_cpp:gf,__GLOBAL__sub_I_DictConverter_cpp:jf,__GLOBAL__sub_I_DictEntry_cpp:kf,__GLOBAL__sub_I_DictGroup_cpp:lf,__GLOBAL__sub_I_Dict_cpp:hf,__GLOBAL__sub_I_MaxMatchSegmentation_cpp:mf,__GLOBAL__sub_I_PhraseExtract_cpp:nf,__GLOBAL__sub_I_SimpleConverter_cpp:of,__GLOBAL__sub_I_TextDict_cpp:pf,__GLOBAL__sub_I_UTF8StringSlice_cpp:qf,__GLOBAL__sub_I_UTF8Util_cpp:rf,__GLOBAL__sub_I_Wasm_cpp:Ye,__GLOBAL__sub_I_bind_cpp:xg,__ZSt18uncaught_exceptionv:Rt,___cxa_can_catch:$u,___cxa_is_pointer_type:av,___errno_location:Jg,___getTypeName:zg,___muldi3:dv,___udivdi3:iv,_bitshift64Lshr:jv,_bitshift64Shl:kv,_emscripten_replace_memory:Dc,_free:Bg,_i64Add:ev,_i64Subtract:fv,_llvm_bswap_i32:lv,_malloc:Ag,_memcpy:mv,_memmove:nv,_memset:ov,_pthread_cond_broadcast:pv,_pthread_mutex_lock:qv,_pthread_mutex_unlock:rv,_realloc:Cg,_sbrk:sv,dynCall_diii:tv,dynCall_i:uv,dynCall_ii:vv,dynCall_iii:wv,dynCall_iiii:xv,dynCall_iiiii:yv,dynCall_iiiiid:zv,dynCall_iiiiii:Av,dynCall_iiiiiid:Bv,dynCall_iiiiiii:Cv,dynCall_iiiiiiii:Dv,dynCall_iiiiiiiii:Ev,dynCall_iiiiiiiiiii:Fv,dynCall_iiiiiiiiiiii:Gv,dynCall_iiiiiiiiiiiii:Hv,dynCall_v:Iv,dynCall_vi:Jv,dynCall_vii:Kv,dynCall_viii:Lv,dynCall_viiii:Mv,dynCall_viiiii:Nv,dynCall_viiiiii:Ov,dynCall_viiiiiii:Pv,dynCall_viiiiiiiiii:Qv,dynCall_viiiiiiiiiiiiiii:Rv,establishStackSpace:ed,getTempRet0:hd,runPostSets:bv,setTempRet0:gd,setThrew:fd,stackAlloc:bd,stackRestore:dd,stackSave:cd}})
  
  
  // EMSCRIPTEN_END_ASM
  (Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_BinaryDict_cpp=Module["__GLOBAL__sub_I_BinaryDict_cpp"]=asm["__GLOBAL__sub_I_BinaryDict_cpp"];var __GLOBAL__sub_I_Config_cpp=Module["__GLOBAL__sub_I_Config_cpp"]=asm["__GLOBAL__sub_I_Config_cpp"];var __GLOBAL__sub_I_ConversionChain_cpp=Module["__GLOBAL__sub_I_ConversionChain_cpp"]=asm["__GLOBAL__sub_I_ConversionChain_cpp"];var __GLOBAL__sub_I_Conversion_cpp=Module["__GLOBAL__sub_I_Conversion_cpp"]=asm["__GLOBAL__sub_I_Conversion_cpp"];var __GLOBAL__sub_I_Converter_cpp=Module["__GLOBAL__sub_I_Converter_cpp"]=asm["__GLOBAL__sub_I_Converter_cpp"];var __GLOBAL__sub_I_DartsDict_cpp=Module["__GLOBAL__sub_I_DartsDict_cpp"]=asm["__GLOBAL__sub_I_DartsDict_cpp"];var __GLOBAL__sub_I_DictConverter_cpp=Module["__GLOBAL__sub_I_DictConverter_cpp"]=asm["__GLOBAL__sub_I_DictConverter_cpp"];var __GLOBAL__sub_I_DictEntry_cpp=Module["__GLOBAL__sub_I_DictEntry_cpp"]=asm["__GLOBAL__sub_I_DictEntry_cpp"];var __GLOBAL__sub_I_DictGroup_cpp=Module["__GLOBAL__sub_I_DictGroup_cpp"]=asm["__GLOBAL__sub_I_DictGroup_cpp"];var __GLOBAL__sub_I_Dict_cpp=Module["__GLOBAL__sub_I_Dict_cpp"]=asm["__GLOBAL__sub_I_Dict_cpp"];var __GLOBAL__sub_I_MaxMatchSegmentation_cpp=Module["__GLOBAL__sub_I_MaxMatchSegmentation_cpp"]=asm["__GLOBAL__sub_I_MaxMatchSegmentation_cpp"];var __GLOBAL__sub_I_PhraseExtract_cpp=Module["__GLOBAL__sub_I_PhraseExtract_cpp"]=asm["__GLOBAL__sub_I_PhraseExtract_cpp"];var __GLOBAL__sub_I_SimpleConverter_cpp=Module["__GLOBAL__sub_I_SimpleConverter_cpp"]=asm["__GLOBAL__sub_I_SimpleConverter_cpp"];var __GLOBAL__sub_I_TextDict_cpp=Module["__GLOBAL__sub_I_TextDict_cpp"]=asm["__GLOBAL__sub_I_TextDict_cpp"];var __GLOBAL__sub_I_UTF8StringSlice_cpp=Module["__GLOBAL__sub_I_UTF8StringSlice_cpp"]=asm["__GLOBAL__sub_I_UTF8StringSlice_cpp"];var __GLOBAL__sub_I_UTF8Util_cpp=Module["__GLOBAL__sub_I_UTF8Util_cpp"]=asm["__GLOBAL__sub_I_UTF8Util_cpp"];var __GLOBAL__sub_I_Wasm_cpp=Module["__GLOBAL__sub_I_Wasm_cpp"]=asm["__GLOBAL__sub_I_Wasm_cpp"];var __GLOBAL__sub_I_bind_cpp=Module["__GLOBAL__sub_I_bind_cpp"]=asm["__GLOBAL__sub_I_bind_cpp"];var __ZSt18uncaught_exceptionv=Module["__ZSt18uncaught_exceptionv"]=asm["__ZSt18uncaught_exceptionv"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var ___getTypeName=Module["___getTypeName"]=asm["___getTypeName"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _emscripten_replace_memory=Module["_emscripten_replace_memory"]=asm["_emscripten_replace_memory"];var _free=Module["_free"]=asm["_free"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _pthread_cond_broadcast=Module["_pthread_cond_broadcast"]=asm["_pthread_cond_broadcast"];var _pthread_mutex_lock=Module["_pthread_mutex_lock"]=asm["_pthread_mutex_lock"];var _pthread_mutex_unlock=Module["_pthread_mutex_unlock"]=asm["_pthread_mutex_unlock"];var _realloc=Module["_realloc"]=asm["_realloc"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_diii=Module["dynCall_diii"]=asm["dynCall_diii"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiid=Module["dynCall_iiiiid"]=asm["dynCall_iiiiid"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiid=Module["dynCall_iiiiiid"]=asm["dynCall_iiiiiid"];var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=asm["dynCall_iiiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_iiiiiiiiiii=Module["dynCall_iiiiiiiiiii"]=asm["dynCall_iiiiiiiiiii"];var dynCall_iiiiiiiiiiii=Module["dynCall_iiiiiiiiiiii"]=asm["dynCall_iiiiiiiiiiii"];var dynCall_iiiiiiiiiiiii=Module["dynCall_iiiiiiiiiiiii"]=asm["dynCall_iiiiiiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=asm["dynCall_viiiiiiiiii"];var dynCall_viiiiiiiiiiiiiii=Module["dynCall_viiiiiiiiiiiiiii"]=asm["dynCall_viiiiiiiiiiiiiii"];Module["asm"]=asm;if(memoryInitializer){if(!isDataURI(memoryInitializer)){memoryInitializer=locateFile(memoryInitializer)}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}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;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};function run(args){args=args||Module["arguments"];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"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=run;function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){out(what);err(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;throw"abort("+what+"). Build with -s ASSERTIONS=1 for more info."}Module["abort"]=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}Module["noExitRuntime"]=true;run()
  
  
  
  
   })(!(typeof global !== 'undefined' && typeof process !== 'undefined' && process.version) ? window : undefined);