fuyang-jieshou/dist/hikVersion/codebase/transform/SystemTransform.js

23 lines
1.0 MiB

var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module["read"]=function read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&&filename!=nodePath["resolve"](filename)){filename=path.join(__dirname,"..","src",filename);ret=nodeFS["readFileSync"](filename)}if(ret&&!binary)ret=ret.toString();return ret};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function read(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function printErr(x){console.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){if(!args.splice)args=Array.prototype.slice.call(args);args.splice(0,0,ptr);return Module["dynCall_"+sig].apply(null,args)}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i<Runtime.functionPointers.length;i++){if(!Runtime.functionPointers[i]){Runtime.functionPointers[i]=func;return 2*(1+i)}}throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."}),removeFunction:(function(index){Runtime.functionPointers[(index-2)/2]=null}),warnOnce:(function(text){if(!Runtime.warnOnce.shown)Runtime.warnOnce.shown={};if(!Runtime.warnOnce.shown[text]){Runtime.warnOnce.shown[text]=1;Module.printErr(text)}}),funcWrappers:{},getFuncWrapper:(function(func,sig){assert(sig);if(!Runtime.funcWrappers[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return sigCache[func]}),getCompilerSetting:(function(name){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"}),stackAlloc:(function(size){var ret=STACKTOP;STACKTOP=STACKTOP+size|0;STACKTOP=STACKTOP+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+size|0;DYNAMICTOP=DYNAMICTOP+15&-16;if(DYNAMICTOP>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"arrayToC":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=Runtime.stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);if(returnType==="string")ret=Pointer_stringify(ret);if(stack!==0){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(jsfunc){var parsed=jsfunc.toString().match(sourceRegex).slice(1);return{arguments:parsed[0],body:parsed[1],returnValue:parsed[2]}}var JSsource=null;function ensureJSsource(){if(!JSsource){JSsource={};for(var fun in JSfuncs){if(JSfuncs.hasOwnProperty(fun)){JSsource[fun]=parseJSFunc(JSfuncs[fun])}}}}cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident);var numericArgs=argTypes.every((function(type){return type==="number"}));var numericRet=returnType!=="string";if(numericRet&&numericArgs){return cfunc}var argNames=argTypes.map((function(x,i){return"$"+i}));var funcstr="(function("+argNames.join(",")+") {";var nargs=argTypes.length;if(!numericArgs){ensureJSsource();funcstr+="var stack = "+JSsource["stackSave"].body+";";for(var i=0;i<nargs;i++){var arg=argNames[i],type=argTypes[i];if(type==="number")continue;var convertCode=JSsource[type+"ToC"];funcstr+="var "+convertCode.arguments+" = "+arg+";";funcstr+=convertCode.body+";";funcstr+=arg+"=("+convertCode.returnValue+");"}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");";if(!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}if(!numericArgs){ensureJSsource();funcstr+=JSsource["stackRestore"].body.replace("()","(stack)")+";"}funcstr+="return ret})";return eval(funcstr)}}))();Module["ccall"]=ccall;Module["cwrap"]=cwrap;function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":HEAP8[ptr>>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":return HEAP8[ptr>>0];case"i8":return HEAP8[ptr>>0];case"i16":return HEAP16[ptr>>1];case"i32":return HEAP32[ptr>>2];case"i64":return HEAP32[ptr>>2];case"float":return HEAPF32[ptr>>2];case"double":return HEAPF64[ptr>>3];default:abort("invalid type for setValue: "+type)}return null}Module["getValue"]=getValue;var ALLOC_NORMAL=0;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;Module["ALLOC_NORMAL"]=ALLOC_NORMAL;Module["ALLOC_STACK"]=ALLOC_STACK;Module["ALLOC_STATIC"]=ALLOC_STATIC;Module["ALLOC_DYNAMIC"]=ALLOC_DYNAMIC;Module["ALLOC_NONE"]=ALLOC_NONE;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var ptr=ret,stop;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr<stop;ptr+=4){HEAP32[ptr>>2]=0}stop=ret+size;while(ptr<stop){HEAP8[ptr++>>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i<size){var curr=slab[i];if(typeof curr==="function"){curr=Runtime.getFunctionIndex(curr)}type=singleType||types[i];if(type===0){i++;continue}if(type=="i64")type="i32";setValue(ret+i,curr,type);if(previousType!==type){typeSize=Runtime.getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}Module["allocate"]=allocate;function getMemory(size){if(!staticSealed)return Runtime.staticAlloc(size);if(typeof _sbrk!=="undefined"&&!_sbrk.called||!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){return func}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");return func}function demangleAll(text){return text.replace(/__Z[\w\d_]+/g,(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(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var buffer;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;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 adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}if(totalMemory!==TOTAL_MEMORY){TOTAL_MEMORY=totalMemory}if(Module["buffer"]){buffer=Module["buffer"]}else{buffer=new ArrayBuffer(TOTAL_MEMORY)}updateGlobalBufferViews();HEAP32[0]=255;if(HEAPU8[0]!==255||HEAPU8[3]!==0)throw"Typed arrays 2 must be run on a little-endian system";Module["HEAP"]=HEAP;Module["buffer"]=buffer;Module["HEAP8"]=HEAP8;Module["HEAP16"]=HEAP16;Module["HEAP32"]=HEAP32;Module["HEAPU8"]=HEAPU8;Module["HEAPU16"]=HEAPU16;Module["HEAPU32"]=HEAPU32;Module["HEAPF32"]=HEAPF32;Module["HEAPF64"]=HEAPF64;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Runtime.dynCall("v",func)}else{Runtime.dynCall("vi",func,[callback.arg])}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;function writeStringToMemory(string,buffer,dontAddNull){var array=intArrayFromString(string,dontAddNull);var i=0;while(i<array.length){var chr=array[i];HEAP8[buffer+i>>0]=chr;i=i+1}}Module["writeStringToMemory"]=writeStringToMemory;function writeArrayToMemory(array,buffer){for(var i=0;i<array.length;i++){HEAP8[buffer++>>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module["writeAsciiToMemory"]=writeAsciiToMemory;if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_min=Math.min;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}Module["addRunDependency"]=addRunDependency;function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+162336;__ATINIT__.push({func:(function(){__GLOBAL__sub_I_SystemTransform_cpp()})});memoryInitializer="SystemTransform.js.mem";var tempDoublePtr=STATICTOP;STATICTOP+=16;function _atexit(func,arg){__ATEXIT__.unshift({func:func,arg:arg})}function ___cxa_atexit(){return _atexit.apply(null,arguments)}Module["_i64Subtract"]=_i64Subtract;function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}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 _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/PAGE_SIZE;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 80:case 81:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 79:return 0;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}function __ZSt18uncaught_exceptionv(){return!!__ZSt18uncaught_exceptionv.uncaught_exception}var EXCEPTIONS={last:0,caught:[],infos:{},deAdjust:(function(adjusted){if(!adjusted||EXCEPTIONS.infos[adjusted])return adjusted;for(var ptr in EXCEPTIONS.infos){var info=EXCEPTIONS.infos[ptr];if(info.adjusted===adjusted){return ptr}}return adjusted}),addRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount++}),decRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];assert(info.refcount>0);info.refcount--;if(info.refcount===0){if(info.destructor){Runtime.dynCall("vi",info.destructor,[ptr])}delete EXCEPTIONS.infos[ptr];___cxa_free_exception(ptr)}}),clearRef:(function(ptr){if(!ptr)return;var info=EXCEPTIONS.infos[ptr];info.refcount=0})};function ___resumeException(ptr){if(!EXCEPTIONS.last){EXCEPTIONS.last=ptr}EXCEPTIONS.clearRef(EXCEPTIONS.deAdjust(ptr));throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}function ___cxa_find_matching_catch(){var thrown=EXCEPTIONS.last;if(!thrown){return(asm["setTempRet0"](0),0)|0}var info=EXCEPTIONS.infos[thrown];var throwntype=info.type;if(!throwntype){return(asm["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(asm["setTempRet0"](typeArray[i]),thrown)|0}}thrown=HEAP32[thrown>>2];return(asm["setTempRet0"](throwntype),thrown)|0}function ___cxa_throw(ptr,type,destructor){EXCEPTIONS.infos[ptr]={ptr:ptr,adjusted:ptr,type:type,destructor:destructor,refcount:0};EXCEPTIONS.last=ptr;if(!("uncaught_exception"in __ZSt18uncaught_exceptionv)){__ZSt18uncaught_exceptionv.uncaught_exception=1}else{__ZSt18uncaught_exceptionv.uncaught_exception++}throw ptr+" - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch."}Module["_memset"]=_memset;function ___gxx_personality_v0(){}function _pthread_mutex_lock(){}function _pthread_mutexattr_settype(){}function _abort(){Module["abort"]()}function _pthread_once(ptr,func){if(!_pthread_once.seen)_pthread_once.seen={};if(ptr in _pthread_once.seen)return;Runtime.dynCall("v",func);_pthread_once.seen[ptr]=1}function _pthread_create(){return 11}function ___lock(){}function ___unlock(){}function _usleep(useconds){var msec=useconds/1e3;if((ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&self["performance"]&&self["performance"]["now"]){var start=self["performance"]["now"]();while(self["performance"]["now"]()-start<msec){}}else{var start=Date.now();while(Date.now()-start<msec){}}return 0}var PTHREAD_SPECIFIC={};function _pthread_getspecific(key){return PTHREAD_SPECIFIC[key]||0}function _onOutputData(pData,dwDataLen,dwDataType,dwUser){onOutputData(pData,dwDataLen,dwDataType,dwUser)}Module["_i64Add"]=_i64Add;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_mutex_init(){}function _pthread_setspecific(key,value){if(!(key in PTHREAD_SPECIFIC)){return ERRNO_CODES.EINVAL}PTHREAD_SPECIFIC[key]=value;return 0}function _malloc(bytes){var ptr=Runtime.dynamicAlloc(bytes+8);return ptr+8&4294967288}Module["_malloc"]=_malloc;function ___cxa_allocate_exception(size){return _malloc(size)}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 fd=process.stdin.fd;var usingDevice=false;try{fd=fs.openSync("/dev/stdin","r");usingDevice=true}catch(e){}bytesRead=fs.readSync(fd,buf,0,BUFSIZE,null);if(usingDevice){fs.closeSync(fd)}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i<node.usedBytes;++i)arr.push(node.contents[i]);return arr}return node.contents}),getFileDataAsTypedArray:(function(node){if(!node.contents)return new Uint8Array;if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)}),expandFileStorage:(function(node,newCapacity){if(node.contents&&node.contents.subarray&&newCapacity>node.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.buffer.byteLength: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)}req.onupgradeneeded=(function(e){var db=e.target.result;var transaction=e.target.transaction;var fileStore;if(db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)){fileStore=transaction.objectStore(IDBFS.DB_STORE_NAME)}else{fileStore=db.createObjectStore(IDBFS.DB_STORE_NAME)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}});req.onsuccess=(function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),getLocalSet:(function(mount,callback){var entries={};function isRealDir(p){return p!=="."&&p!==".."}function toAbsolute(root){return(function(p){return PATH.join2(root,p)})}var check=FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint));while(check.length){var path=check.pop();var stat;try{stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){check.push.apply(check,FS.readdir(path).filter(isRealDir).map(toAbsolute(path)))}entries[path]={timestamp:stat.mtime}}return callback(null,{type:"local",entries:entries})}),getRemoteSet:(function(mount,callback){var entries={};IDBFS.getDB(mount.mountpoint,(function(err,db){if(err)return callback(err);var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readonly");transaction.onerror=(function(e){callback(this.error);e.preventDefault()});var store=transaction.objectStore(IDBFS.DB_STORE_NAME);var index=store.index("timestamp");index.openKeyCursor().onsuccess=(function(event){var cursor=event.target.result;if(!cursor){return callback(null,{type:"remote",db:db,entries:entries})}entries[cursor.primaryKey]={timestamp:cursor.key};cursor.continue()})}))}),loadLocalEntry:(function(path,callback){var stat,node;try{var lookup=FS.lookupPath(path);node=lookup.node;stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){return callback(null,{timestamp:stat.mtime,mode:stat.mode})}else if(FS.isFile(stat.mode)){node.contents=MEMFS.getFileDataAsTypedArray(node);return callback(null,{timestamp:stat.mtime,mode:stat.mode,contents:node.contents})}else{return callback(new Error("node type not supported"))}}),storeLocalEntry:(function(path,entry,callback){try{if(FS.isDir(entry.mode)){FS.mkdir(path,entry.mode)}else if(FS.isFile(entry.mode)){FS.writeFile(path,entry.contents,{encoding:"binary",canOwn:true})}else{return callback(new Error("node type not supported"))}FS.chmod(path,entry.mode);FS.utime(path,entry.timestamp,entry.timestamp)}catch(e){return callback(e)}callback(null)}),removeLocalEntry:(function(path,callback){try{var lookup=FS.lookupPath(path);var stat=FS.stat(path);if(FS.isDir(stat.mode)){FS.rmdir(path)}else if(FS.isFile(stat.mode)){FS.unlink(path)}}catch(e){return callback(e)}callback(null)}),loadRemoteEntry:(function(store,path,callback){var req=store.get(path);req.onsuccess=(function(event){callback(null,event.target.result)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),storeRemoteEntry:(function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),removeRemoteEntry:(function(store,path,callback){var req=store.delete(path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),reconcile:(function(src,dst,callback){var total=0;var create=[];Object.keys(src.entries).forEach((function(key){var e=src.entries[key];var e2=dst.entries[key];if(!e2||e.timestamp>e2.timestamp){create.push(key);total++}}));var remove=[];Object.keys(dst.entries).forEach((function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}}));if(!total){return callback(null)}var completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&146)>>1}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsToPermissionStringMap:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},flagsToPermissionString:(function(flags){flags&=~32768;flags&=~524288;if(flags in NODEFS.flagsToPermissionStringMap){return NODEFS.flagsToPermissionStringMap[flags]}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsToPermissionString(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;var nbuffer=new Buffer(length);var res;try{res=fs.readSync(stream.nfd,nbuffer,0,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(res>0){for(var i=0;i<res;i++){buffer[offset+i]=nbuffer[i]}}return res}),write:(function(stream,buffer,offset,length,position){var nbuffer=new Buffer(buffer.subarray(offset,offset+length));var res;try{res=fs.writeSync(stream.nfd,nbuffer,0,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}return res}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i<parts.length-1;i++){var curr=parts.slice(0,i+1).join("/");if(!createdParents[curr]){createdParents[curr]=WORKERFS.createNode(parent,curr,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){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),symlink:(function(parent,newName,oldPath){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readlink:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)})},stream_ops:{read:(function(stream,buffer,offset,length,position){if(position>=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count});current=lookup.node;if(count++>40){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i<name.length;i++){hash=(hash<<5)-hash+name.charCodeAt(i)|0}return(parentid+hash>>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),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){if(err===ERRNO_CODES.EISDIR)err=ERRNO_CODES.EPERM;throw new FS.ErrnoError(err)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.unlink(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}}),readlink:(function(path){var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!link.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))}),stat:(function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!node.node_ops.getattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return node.node_ops.getattr(node)}),lstat:(function(path){return FS.stat(path,true)}),chmod:(function(path,mode,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})}),lchmod:(function(path,mode){FS.chmod(path,mode,true)}),fchmod:(function(fd,mode){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}FS.chmod(stream.node,mode)}),chown:(function(path,uid,gid,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}node.node_ops.setattr(node,{timestamp:Date.now()})}),lchown:(function(path,uid,gid){FS.chown(path,uid,gid,true)}),fchown:(function(fd,uid,gid){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}FS.chown(stream.node,uid,gid)}),truncate:(function(path,len){if(len<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.nodePermissions(node,"w");if(err){throw new FS.ErrnoError(err)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})}),ftruncate:(function(fd,len){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}FS.truncate(stream.node,len)}),utime:(function(path,atime,mtime){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})}),open:(function(path,flags,mode,fd_start,fd_end){if(path===""){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}flags=typeof flags==="string"?FS.modeStringToFlags(flags):flags;mode=typeof mode==="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;Module["printErr"]("read file: "+path)}}try{if(FS.trackingDelegate["onOpenFile"]){var trackingFlags=0;if((flags&2097155)!==1){trackingFlags|=FS.tracking.openFlags.READ}if((flags&2097155)!==0){trackingFlags|=FS.tracking.openFlags.WRITE}FS.trackingDelegate["onOpenFile"](path,trackingFlags)}}catch(e){console.log("FS.trackingDelegate['onOpenFile']('"+path+"', flags) threw an exception: "+e.message)}return stream}),close:(function(stream){if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}}),llseek:(function(stream,offset,whence){if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position}),read:(function(stream,buffer,offset,length,position){if(length<0||position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!stream.stream_ops.read){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var seeking=true;if(typeof position==="undefined"){position=stream.position;seeking=false}else if(!stream.seekable){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead}),write:(function(stream,buffer,offset,length,position,canOwn){if(length<0||position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!stream.stream_ops.write){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if(stream.flags&1024){FS.llseek(stream,0,2)}var seeking=true;if(typeof position==="undefined"){position=stream.position;seeking=false}else if(!stream.seekable){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;try{if(stream.path&&FS.trackingDelegate["onWriteToFile"])FS.trackingDelegate["onWriteToFile"](stream.path)}catch(e){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+e.message)}return bytesWritten}),allocate:(function(stream,offset,length){if(offset<0||length<=0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}stream.stream_ops.allocate(stream,offset,length)}),mmap:(function(stream,buffer,offset,length,position,prot,flags){if((stream.flags&2097155)===1){throw new FS.ErrnoError(ERRNO_CODES.EACCES)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}return stream.stream_ops.mmap(stream,buffer,offset,length,position,prot,flags)}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)}),munmap:(function(stream){return 0}),ioctl:(function(stream,cmd,arg){if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(ERRNO_CODES.ENOTTY)}return stream.stream_ops.ioctl(stream,cmd,arg)}),readFile:(function(path,opts){opts=opts||{};opts.flags=opts.flags||"r";opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret}),writeFile:(function(path,data,opts){opts=opts||{};opts.flags=opts.flags||"w";opts.encoding=opts.encoding||"utf8";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var stream=FS.open(path,opts.flags,opts.mode);if(opts.encoding==="utf8"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,0,opts.canOwn)}else if(opts.encoding==="binary"){FS.write(stream,data,0,data.length,0,opts.canOwn)}FS.close(stream)}),cwd:(function(){return FS.currentPath}),chdir:(function(path){var lookup=FS.lookupPath(path,{follow:true});if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}var err=FS.nodePermissions(lookup.node,"x");if(err){throw new FS.ErrnoError(err)}FS.currentPath=lookup.path}),createDefaultDirectories:(function(){FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")}),createDefaultDevices:(function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:(function(){return 0}),write:(function(stream,buffer,offset,length,pos){return length})});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto!=="undefined"){var randomBuffer=new Uint8Array(1);random_device=(function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]})}else if(ENVIRONMENT_IS_NODE){random_device=(function(){return require("crypto").randomBytes(1)[0]})}else{random_device=(function(){return Math.random()*256|0})}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")}),createSpecialDirectories:(function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:(function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:(function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:(function(){return stream.path})}};ret.parent=ret;return ret})};return node})},{},"/proc/self/fd")}),createStandardStreams:(function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");var stderr=FS.open("/dev/stderr","w");assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")}),ensureErrnoError:(function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=(function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}});this.setErrno(errno);this.message=ERRNO_MESSAGES[errno]};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[ERRNO_CODES.ENOENT].forEach((function(code){FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS,"IDBFS":IDBFS,"NODEFS":NODEFS,"WORKERFS":WORKERFS}}),init:(function(input,output,error){assert(!FS.init.initialized,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");FS.init.initialized=true;FS.ensureErrnoError();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module["_fflush"];if(fflush)fflush(0);for(var i=0;i<FS.streams.length;i++){var stream=FS.streams[i];if(!stream){continue}FS.close(stream)}}),getMode:(function(canRead,canWrite){var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode}),joinPath:(function(parts,forceRelative){var path=PATH.join.apply(null,parts);if(forceRelative&&path[0]=="/")path=path.substr(1);return path}),absolutePath:(function(relative,base){return PATH.resolve(base,relative)}),standardizePath:(function(path){return PATH.normalize(path)}),findObject:(function(path,dontResolveLastLink){var ret=FS.analyzePath(path,dontResolveLastLink);if(ret.exists){return ret.object}else{___setErrNo(ret.error);return null}}),analyzePath:(function(path,dontResolveLastLink){try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path==="/"}catch(e){ret.error=e.errno}return ret}),createFolder:(function(parent,name,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.mkdir(path,mode)}),createPath:(function(parent,path,canRead,canWrite){parent=typeof parent==="string"?parent:FS.getPath(parent);var parts=path.split("/").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){}parent=current}return current}),createFile:(function(parent,name,properties,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.create(path,mode)}),createDataFile:(function(parent,name,data,canRead,canWrite,canOwn){var path=name?PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name):parent;var mode=FS.getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data==="string"){var arr=new Array(data.length);for(var i=0,len=data.length;i<len;++i)arr[i]=data.charCodeAt(i);data=arr}FS.chmod(node,mode|146);var stream=FS.open(node,"w");FS.write(stream,data,0,data.length,0,canOwn);FS.close(stream);FS.chmod(node,mode)}return node}),createDevice:(function(parent,name,input,output){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(!!input,!!output);if(!FS.createDevice.major)FS.createDevice.major=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open:(function(stream){stream.seekable=false}),close:(function(stream){if(output&&output.buffer&&output.buffer.length){output(10)}}),read:(function(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(ERRNO_CODES.EAGAIN)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead}),write:(function(stream,buffer,offset,length,pos){for(var i=0;i<length;i++){try{output(buffer[offset+i])}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}}if(length){stream.node.timestamp=Date.now()}return i})});return FS.mkdev(path,mode,dev)}),createLink:(function(parent,name,target,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);return FS.symlink(target,path)}),forceLoadFile:(function(obj){if(obj.isDevice||obj.isFolder||obj.link||obj.contents)return true;var success=true;if(typeof XMLHttpRequest!=="undefined"){throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.")}else if(Module["read"]){try{obj.contents=intArrayFromString(Module["read"](obj.url),true);obj.usedBytes=obj.contents.length}catch(e){success=false}}else{throw new Error("Cannot load without read() or XMLHttpRequest.")}if(!success)___setErrNo(ERRNO_CODES.EIO);return success}),createLazyFile:(function(parent,name,url,canRead,canWrite){function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size};node.stream_ops=stream_ops;return node}),createPreloadedFile:(function(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){Browser.init();var fullname=name?PATH.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}var handled=false;Module["preloadPlugins"].forEach((function(plugin){if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,(function(){if(onerror)onerror();removeRunDependency(dep)}));handled=true}}));if(!handled)finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){Browser.asyncLoad(url,(function(byteArray){processData(byteArray)}),onerror)}else{processData(url)}}),indexedDB:(function(){return window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB}),DB_NAME:(function(){return"EM_FS_"+window.location.pathname}),DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:(function(paths,onload,onerror){onload=onload||(function(){});onerror=onerror||(function(){});var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=function openRequest_onupgradeneeded(){console.log("creating db");var db=openRequest.result;db.createObjectStore(FS.DB_STORE_NAME)};openRequest.onsuccess=function openRequest_onsuccess(){var db=openRequest.result;var transaction=db.transaction([FS.DB_STORE_NAME],"readwrite");var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach((function(path){var putRequest=files.put(FS.analyzePath(path).object.contents,path);putRequest.onsuccess=function putRequest_onsuccess(){ok++;if(ok+fail==total)finish()};putRequest.onerror=function putRequest_onerror(){fail++;if(ok+fail==total)finish()}}));transaction.onerror=onerror};openRequest.onerror=onerror}),loadFilesFromDB:(function(paths,onload,onerror){onload=onload||(function(){});onerror=onerror||(function(){});var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=onerror;openRequest.onsuccess=function openRequest_onsuccess(){var db=openRequest.result;try{var transaction=db.transaction([FS.DB_STORE_NAME],"readonly")}catch(e){onerror(e);return}var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach((function(path){var getRequest=files.get(path);getRequest.onsuccess=function getRequest_onsuccess(){if(FS.analyzePath(path).exists){FS.unlink(path)}FS.createDataFile(PATH.dirname(path),PATH.basename(path),getRequest.result,true,true,true);ok++;if(ok+fail==total)finish()};getRequest.onerror=function getRequest_onerror(){fail++;if(ok+fail==total)finish()}}));transaction.onerror=onerror};openRequest.onerror=onerror})};var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:(function(dirfd,path){if(path[0]!=="/"){var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);dir=dirstream.path}path=PATH.join2(dir,path)}return path}),doStat:(function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-ERRNO_CODES.ENOTDIR}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);ret=ret.slice(0,Math.max(0,bufsize));writeStringToMemory(ret,buf,true);return ret.length}),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 ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21506:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var ___tm_current=STATICTOP;STATICTOP+=48;var ___tm_timezone=allocate(intArrayFromString("GMT"),"i8",ALLOC_STATIC);var _tzname=STATICTOP;STATICTOP+=16;var _daylight=STATICTOP;STATICTOP+=16;var _timezone=STATICTOP;STATICTOP+=16;function _tzset(){if(_tzset.called)return;_tzset.called=true;HEAP32[_timezone>>2]=-(new Date).getTimezoneOffset()*60;var winter=new Date(2e3,0,1);var summer=new Date(2e3,6,1);HEAP32[_daylight>>2]=Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset());function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),"i8",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),"i8",ALLOC_NORMAL);if(summer.getTimezoneOffset()<winter.getTimezoneOffset()){HEAP32[_tzname>>2]=winterNamePtr;HEAP32[_tzname+4>>2]=summerNamePtr}else{HEAP32[_tzname>>2]=summerNamePtr;HEAP32[_tzname+4>>2]=winterNamePtr}}function _localtime_r(time,tmPtr){_tzset();var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var start=new Date(date.getFullYear(),0,1);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var summerOffset=(new Date(2e3,6,1)).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=date.getTimezoneOffset()==Math.min(winterOffset,summerOffset)|0;HEAP32[tmPtr+32>>2]=dst;var zonePtr=HEAP32[_tzname+(dst?Runtime.QUANTUM_SIZE:0)>>2];HEAP32[tmPtr+40>>2]=zonePtr;return tmPtr}function _localtime(time){return _localtime_r(time,___tm_current)}Module["_bitshift64Ashr"]=_bitshift64Ashr;Module["_bitshift64Lshr"]=_bitshift64Lshr;function ___cxa_pure_virtual(){ABORT=true;throw"Pure virtual function called!"}function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function _pthread_join(){}Module["_bitshift64Shl"]=_bitshift64Shl;function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var _llvm_pow_f64=Math_pow;function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);self.called=true;assert(Runtime.dynamicAlloc);self.alloc=Runtime.dynamicAlloc;Runtime.dynamicAlloc=(function(){abort("cannot dynamically allocate, sbrk now has control")})}var ret=DYNAMICTOP;if(bytes!=0){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}Module["_memmove"]=_memmove;function ___cxa_begin_catch(ptr){__ZSt18uncaught_exceptionv.uncaught_exception--;EXCEPTIONS.caught.push(ptr);EXCEPTIONS.addRef(EXCEPTIONS.deAdjust(ptr));return ptr}function _gettimeofday(ptr){var now=Date.now();HEAP32[ptr>>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}function _pthread_mutex_destroy(){}function _pthread_mutexattr_init(){}function _pthread_mutex_unlock(){}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 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;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var ___dso_handle=STATICTOP;STATICTOP+=16;FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));Module["FS_createFolder"]=FS.createFolder;Module["FS_createPath"]=FS.createPath;Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;Module["FS_createLazyFile"]=FS.createLazyFile;Module["FS_createLink"]=FS.createLink;Module["FS_createDevice"]=FS.createDevice;Module["FS_unlink"]=FS.unlink;__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);var cttz_i8=allocate([8,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,7,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,6,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,5,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0,4,0,1,0,2,0,1,0,3,0,1,0,2,0,1,0],"i8",ALLOC_DYNAMIC);function invoke_iiii(index,a1,a2,a3){try{return Module["dynCall_iiii"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_vi(index,a1){try{Module["dynCall_vi"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_vii(index,a1,a2){try{Module["dynCall_vii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_ii(index,a1){try{return Module["dynCall_ii"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_v(index){try{Module["dynCall_v"](index)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){try{return Module["dynCall_iiiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){try{Module["dynCall_viiiiii"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iii(index,a1,a2){try{return Module["dynCall_iii"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){try{return Module["dynCall_iiiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_viiii(index,a1,a2,a3,a4){try{Module["dynCall_viiii"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity};Module.asmLibraryArg={"abort":abort,"assert":assert,"invoke_iiii":invoke_iiii,"invoke_viiiii":invoke_viiiii,"invoke_vi":invoke_vi,"invoke_vii":invoke_vii,"invoke_ii":invoke_ii,"invoke_v":invoke_v,"invoke_iiiii":invoke_iiiii,"invoke_viiiiii":invoke_viiiiii,"invoke_iii":invoke_iii,"invoke_iiiiii":invoke_iiiiii,"invoke_viiii":invoke_viiii,"_pthread_cleanup_pop":_pthread_cleanup_pop,"___syscall221":___syscall221,"_pthread_mutex_init":_pthread_mutex_init,"_pthread_join":_pthread_join,"_llvm_pow_f64":_llvm_pow_f64,"_onOutputData":_onOutputData,"_pthread_key_create":_pthread_key_create,"_abort":_abort,"_pthread_cleanup_push":_pthread_cleanup_push,"___gxx_personality_v0":___gxx_personality_v0,"___cxa_allocate_exception":___cxa_allocate_exception,"__ZSt18uncaught_exceptionv":__ZSt18uncaught_exceptionv,"_localtime_r":_localtime_r,"_tzset":_tzset,"___setErrNo":___setErrNo,"_sbrk":_sbrk,"___cxa_begin_catch":___cxa_begin_catch,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___resumeException":___resumeException,"___cxa_find_matching_catch":___cxa_find_matching_catch,"_sysconf":_sysconf,"_pthread_getspecific":_pthread_getspecific,"_usleep":_usleep,"_pthread_self":_pthread_self,"_pthread_mutex_destroy":_pthread_mutex_destroy,"_pthread_mutex_unlock":_pthread_mutex_unlock,"_pthread_once":_pthread_once,"_pthread_mutexattr_settype":_pthread_mutexattr_settype,"___syscall54":___syscall54,"___unlock":___unlock,"_pthread_create":_pthread_create,"_pthread_mutexattr_init":_pthread_mutexattr_init,"_pthread_setspecific":_pthread_setspecific,"___cxa_atexit":___cxa_atexit,"___cxa_throw":___cxa_throw,"___lock":___lock,"___syscall6":___syscall6,"___syscall5":___syscall5,"___cxa_pure_virtual":___cxa_pure_virtual,"_time":_time,"_pthread_mutex_lock":_pthread_mutex_lock,"_gettimeofday":_gettimeofday,"_atexit":_atexit,"___syscall140":___syscall140,"_localtime":_localtime,"___syscall145":___syscall145,"___syscall146":___syscall146,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"cttz_i8":cttz_i8,"___dso_handle":___dso_handle};// EMSCRIPTEN_START_ASM
var asm=(function(global,env,buffer) {
"use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array(buffer);var h=new global.Float64Array(buffer);var i=env.STACKTOP|0;var j=env.STACK_MAX|0;var k=env.tempDoublePtr|0;var l=env.ABORT|0;var m=env.cttz_i8|0;var n=env.___dso_handle|0;var o=0;var p=0;var q=0;var r=0;var s=global.NaN,t=global.Infinity;var u=0,v=0,w=0,x=0,y=0.0,z=0,A=0,B=0,C=0.0;var D=0;var E=0;var F=0;var G=0;var H=0;var I=0;var J=0;var K=0;var L=0;var M=0;var N=global.Math.floor;var O=global.Math.abs;var P=global.Math.sqrt;var Q=global.Math.pow;var R=global.Math.cos;var S=global.Math.sin;var T=global.Math.tan;var U=global.Math.acos;var V=global.Math.asin;var W=global.Math.atan;var X=global.Math.atan2;var Y=global.Math.exp;var Z=global.Math.log;var _=global.Math.ceil;var $=global.Math.imul;var aa=global.Math.min;var ba=global.Math.clz32;var ca=env.abort;var da=env.assert;var ea=env.invoke_iiii;var fa=env.invoke_viiiii;var ga=env.invoke_vi;var ha=env.invoke_vii;var ia=env.invoke_ii;var ja=env.invoke_v;var ka=env.invoke_iiiii;var la=env.invoke_viiiiii;var ma=env.invoke_iii;var na=env.invoke_iiiiii;var oa=env.invoke_viiii;var pa=env._pthread_cleanup_pop;var qa=env.___syscall221;var ra=env._pthread_mutex_init;var sa=env._pthread_join;var ta=env._llvm_pow_f64;var ua=env._onOutputData;var va=env._pthread_key_create;var wa=env._abort;var xa=env._pthread_cleanup_push;var ya=env.___gxx_personality_v0;var za=env.___cxa_allocate_exception;var Aa=env.__ZSt18uncaught_exceptionv;var Ba=env._localtime_r;var Ca=env._tzset;var Da=env.___setErrNo;var Ea=env._sbrk;var Fa=env.___cxa_begin_catch;var Ga=env._emscripten_memcpy_big;var Ha=env.___resumeException;var Ia=env.___cxa_find_matching_catch;var Ja=env._sysconf;var Ka=env._pthread_getspecific;var La=env._usleep;var Ma=env._pthread_self;var Na=env._pthread_mutex_destroy;var Oa=env._pthread_mutex_unlock;var Pa=env._pthread_once;var Qa=env._pthread_mutexattr_settype;var Ra=env.___syscall54;var Sa=env.___unlock;var Ta=env._pthread_create;var Ua=env._pthread_mutexattr_init;var Va=env._pthread_setspecific;var Wa=env.___cxa_atexit;var Xa=env.___cxa_throw;var Ya=env.___lock;var Za=env.___syscall6;var _a=env.___syscall5;var $a=env.___cxa_pure_virtual;var ab=env._time;var bb=env._pthread_mutex_lock;var cb=env._gettimeofday;var db=env._atexit;var eb=env.___syscall140;var fb=env._localtime;var gb=env.___syscall145;var hb=env.___syscall146;var ib=0.0;
// EMSCRIPTEN_START_FUNCS
function Gr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;do if(c[g>>2]|0)if(!(c[e>>2]|0)){c[d>>2]=-2147483647;break}else{c[(c[e>>2]|0)+16>>2]=1920233504;c[d>>2]=0;break}else c[d>>2]=-2147483647;while(0);i=f;return c[d>>2]|0}function Hr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=0;c[g>>2]=0;c[f>>2]=0;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;h=c[b>>2]|0;i=j;return h|0}c[e>>2]=0;while(1){if((c[e>>2]|0)>>>0>=(c[(c[d>>2]|0)+136+336>>2]|0)>>>0)break;c[g>>2]=(c[d>>2]|0)+136+120+24+(c[e>>2]<<5);c[f>>2]=(c[d>>2]|0)+136+344+((c[e>>2]|0)*1280|0);c[(c[g>>2]|0)+12>>2]=c[(c[f>>2]|0)+8+20>>2];c[(c[g>>2]|0)+16>>2]=1;a=c[(c[f>>2]|0)+1272>>2]|0;a:do if((a|0)<1986618469){switch(a|0){case 1936684398:break;default:{h=8;break a}}c[(c[g>>2]|0)+20>>2]=1280}else{switch(a|0){case 1986618469:break;default:{h=8;break a}}c[(c[g>>2]|0)+20>>2]=7200}while(0);if((h|0)==8){h=0;c[(c[g>>2]|0)+20>>2]=0}c[e>>2]=(c[e>>2]|0)+1}c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}function Ir(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[d>>2]=a;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;a=c[b>>2]|0;i=e;return a|0}else{c[(c[d>>2]|0)+136+8+12>>2]=0;c[(c[d>>2]|0)+136+8+16>>2]=0;c[(c[d>>2]|0)+136+8+20>>2]=9e4;c[(c[d>>2]|0)+136+8+24>>2]=0;c[(c[d>>2]|0)+136+8+104>>2]=(c[(c[d>>2]|0)+136+336>>2]|0)+1;c[b>>2]=0;a=c[b>>2]|0;i=e;return a|0}return 0}function Jr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=0;c[g>>2]=0;c[f>>2]=0;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;g=c[b>>2]|0;i=h;return g|0}c[e>>2]=0;while(1){if((c[e>>2]|0)>>>0>=(c[(c[d>>2]|0)+136+336>>2]|0)>>>0)break;c[g>>2]=(c[d>>2]|0)+136+344+((c[e>>2]|0)*1280|0);c[f>>2]=(c[g>>2]|0)+104+88+64;Oi((c[f>>2]|0)+836+20|0)|0;Oi((c[f>>2]|0)+804+16|0)|0;Oi((c[f>>2]|0)+912+16|0)|0;if(1986618469==(c[(c[g>>2]|0)+1272>>2]|0)){Oi((c[f>>2]|0)+960+16|0)|0;Oi((c[f>>2]|0)+988+16|0)|0}c[e>>2]=(c[e>>2]|0)+1}c[b>>2]=0;g=c[b>>2]|0;i=h;return g|0}function Kr(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+48|0;q=r+8|0;p=r;h=r+36|0;j=r+32|0;k=r+28|0;l=r+24|0;m=r+20|0;o=r+16|0;n=r+12|0;c[j>>2]=d;c[k>>2]=f;c[l>>2]=g;c[m>>2]=0;c[o>>2]=0;if(!(c[j>>2]|0)){c[h>>2]=-2147483647;q=c[h>>2]|0;i=r;return q|0}if(!(c[k>>2]|0)){c[h>>2]=-2147483647;q=c[h>>2]|0;i=r;return q|0}c[n>>2]=Lr(c[j>>2]|0,1986618469,o)|0;if(c[n>>2]|0){c[p>>2]=864;Ti(24594,p);c[h>>2]=c[n>>2];q=c[h>>2]|0;i=r;return q|0}c[m>>2]=(c[o>>2]|0)+104+88+64+8+20+88;a[(c[m>>2]|0)+13>>0]=1;b[(c[m>>2]|0)+14>>1]=c[l>>2];if(((c[l>>2]|0)+2|0)>>>0>256){c[q>>2]=c[l>>2];Ti(24522,q);c[h>>2]=-2147483392;q=c[h>>2]|0;i=r;return q|0}else{Li((c[m>>2]|0)+16|0,c[k>>2]|0,e[(c[m>>2]|0)+14>>1]|0)|0;c[h>>2]=0;q=c[h>>2]|0;i=r;return q|0}return 0}function Lr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l;g=l+20|0;h=l+16|0;e=l+12|0;j=l+8|0;f=l+4|0;c[h>>2]=a;c[e>>2]=b;c[j>>2]=d;c[f>>2]=0;if(!(c[h>>2]|0)){c[g>>2]=-2147483647;k=c[g>>2]|0;i=l;return k|0}if(!(c[j>>2]|0)){c[g>>2]=-2147483647;k=c[g>>2]|0;i=l;return k|0}c[f>>2]=0;while(1){d=c[e>>2]|0;if((c[f>>2]|0)>>>0>=(c[(c[h>>2]|0)+136+336>>2]|0)>>>0){a=10;break}b=c[f>>2]|0;if((d|0)==(c[(c[h>>2]|0)+136+344+((c[f>>2]|0)*1280|0)+1272>>2]|0)){a=8;break}c[f>>2]=b+1}if((a|0)==8){c[c[j>>2]>>2]=(c[h>>2]|0)+136+344+(b*1280|0);c[g>>2]=0;k=c[g>>2]|0;i=l;return k|0}else if((a|0)==10){c[k>>2]=d;Ti(24497,k);c[g>>2]=-2147483392;k=c[g>>2]|0;i=l;return k|0}return 0}function Mr(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+48|0;q=r+8|0;p=r;h=r+36|0;j=r+32|0;k=r+28|0;l=r+24|0;m=r+20|0;o=r+16|0;n=r+12|0;c[j>>2]=d;c[k>>2]=f;c[l>>2]=g;c[m>>2]=0;c[o>>2]=0;if(!(c[j>>2]|0)){c[h>>2]=-2147483647;q=c[h>>2]|0;i=r;return q|0}if(!(c[k>>2]|0)){c[h>>2]=-2147483647;q=c[h>>2]|0;i=r;return q|0}c[n>>2]=Lr(c[j>>2]|0,1986618469,o)|0;if(c[n>>2]|0){c[p>>2]=903;Ti(24594,p);c[h>>2]=c[n>>2];q=c[h>>2]|0;i=r;return q|0}c[m>>2]=(c[o>>2]|0)+104+88+64+8+20+88;a[(c[m>>2]|0)+272>>0]=1;b[(c[m>>2]|0)+274>>1]=c[l>>2];if(((c[l>>2]|0)+2|0)>>>0>129){c[q>>2]=c[l>>2];Ti(24546,q);c[h>>2]=-2147483392;q=c[h>>2]|0;i=r;return q|0}else{Li((c[m>>2]|0)+276|0,c[k>>2]|0,e[(c[m>>2]|0)+274>>1]|0)|0;c[h>>2]=0;q=c[h>>2]|0;i=r;return q|0}return 0}function Nr(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+48|0;q=r+8|0;p=r;h=r+36|0;j=r+32|0;k=r+28|0;l=r+24|0;m=r+20|0;o=r+16|0;n=r+12|0;c[j>>2]=d;c[k>>2]=f;c[l>>2]=g;c[m>>2]=0;c[o>>2]=0;if(!(c[j>>2]|0)){c[h>>2]=-2147483647;g=c[h>>2]|0;i=r;return g|0}if(!(c[k>>2]|0)){c[h>>2]=-2147483647;g=c[h>>2]|0;i=r;return g|0}c[n>>2]=Lr(c[j>>2]|0,1986618469,o)|0;if(c[n>>2]|0){c[p>>2]=942;Ti(24594,p);c[h>>2]=c[n>>2];g=c[h>>2]|0;i=r;return g|0}c[m>>2]=(c[o>>2]|0)+104+88+64+8+20+88;a[(c[m>>2]|0)+34>>0]=1;b[(c[m>>2]|0)+36>>1]=c[l>>2];if(((c[l>>2]|0)+2|0)>>>0>256){c[q>>2]=c[l>>2];Ti(24570,q);c[h>>2]=-2147483392;g=c[h>>2]|0;i=r;return g|0}else{Li((c[m>>2]|0)+38|0,c[k>>2]|0,e[(c[m>>2]|0)+36>>1]|0)|0;c[h>>2]=0;g=c[h>>2]|0;i=r;return g|0}return 0}function Or(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+48|0;q=r+8|0;p=r;h=r+36|0;j=r+32|0;k=r+28|0;l=r+24|0;m=r+20|0;o=r+16|0;n=r+12|0;c[j>>2]=d;c[k>>2]=f;c[l>>2]=g;c[m>>2]=0;c[o>>2]=0;if(!(c[j>>2]|0)){c[h>>2]=-2147483647;q=c[h>>2]|0;i=r;return q|0}if(!(c[k>>2]|0)){c[h>>2]=-2147483647;q=c[h>>2]|0;i=r;return q|0}c[n>>2]=Lr(c[j>>2]|0,1986618469,o)|0;if(c[n>>2]|0){c[p>>2]=981;Ti(24594,p);c[h>>2]=c[n>>2];q=c[h>>2]|0;i=r;return q|0}c[m>>2]=(c[o>>2]|0)+104+88+64+8+20+88;a[(c[m>>2]|0)+294>>0]=1;b[(c[m>>2]|0)+296>>1]=c[l>>2];if(((c[l>>2]|0)+2|0)>>>0>256){c[q>>2]=c[l>>2];Ti(24522,q);c[h>>2]=-2147483392;q=c[h>>2]|0;i=r;return q|0}else{Li((c[m>>2]|0)+298|0,c[k>>2]|0,e[(c[m>>2]|0)+296>>1]|0)|0;c[h>>2]=0;q=c[h>>2]|0;i=r;return q|0}return 0}function Pr(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+48|0;q=r+8|0;p=r;h=r+36|0;j=r+32|0;k=r+28|0;l=r+24|0;m=r+20|0;o=r+16|0;n=r+12|0;c[j>>2]=d;c[k>>2]=f;c[l>>2]=g;c[m>>2]=0;c[o>>2]=0;if(!(c[j>>2]|0)){c[h>>2]=-2147483647;q=c[h>>2]|0;i=r;return q|0}if(!(c[k>>2]|0)){c[h>>2]=-2147483647;q=c[h>>2]|0;i=r;return q|0}c[n>>2]=Lr(c[j>>2]|0,1986618469,o)|0;if(c[n>>2]|0){c[p>>2]=1019;Ti(24594,p);c[h>>2]=c[n>>2];q=c[h>>2]|0;i=r;return q|0}c[m>>2]=(c[o>>2]|0)+104+88+64+8+20+88;a[(c[m>>2]|0)+554>>0]=1;b[(c[m>>2]|0)+556>>1]=c[l>>2];if(((c[l>>2]|0)+2|0)>>>0>129){c[q>>2]=c[l>>2];Ti(24546,q);c[h>>2]=-2147483392;q=c[h>>2]|0;i=r;return q|0}else{Li((c[m>>2]|0)+558|0,c[k>>2]|0,e[(c[m>>2]|0)+556>>1]|0)|0;c[h>>2]=0;q=c[h>>2]|0;i=r;return q|0}return 0}function Qr(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[c[f>>2]>>0]=(c[g>>2]|0)>>>24;a[(c[f>>2]|0)+1>>0]=(c[g>>2]|0)>>>16;a[(c[f>>2]|0)+2>>0]=(c[g>>2]|0)>>>8;a[(c[f>>2]|0)+3>>0]=c[g>>2];i=e;return}function Rr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;f=i;i=i+16|0;g=f+8|0;h=f;c[g>>2]=b;b=h;c[b>>2]=d;c[b+4>>2]=e;b=h;b=Rx(c[b>>2]|0,c[b+4>>2]|0,56)|0;a[c[g>>2]>>0]=b;b=h;b=Rx(c[b>>2]|0,c[b+4>>2]|0,48)|0;a[(c[g>>2]|0)+1>>0]=b;b=h;b=Rx(c[b>>2]|0,c[b+4>>2]|0,40)|0;a[(c[g>>2]|0)+2>>0]=b;a[(c[g>>2]|0)+3>>0]=c[h+4>>2];b=h;b=Rx(c[b>>2]|0,c[b+4>>2]|0,24)|0;a[(c[g>>2]|0)+4>>0]=b;b=h;b=Rx(c[b>>2]|0,c[b+4>>2]|0,16)|0;a[(c[g>>2]|0)+5>>0]=b;b=h;b=Rx(c[b>>2]|0,c[b+4>>2]|0,8)|0;a[(c[g>>2]|0)+6>>0]=b;a[(c[g>>2]|0)+7>>0]=c[h>>2];i=f;return}function Sr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+48|0;l=m+8|0;k=m;d=m+32|0;e=m+28|0;f=m+24|0;j=m+20|0;g=m+16|0;h=m+12|0;c[e>>2]=a;c[f>>2]=b;c[j>>2]=0;c[j>>2]=Ji(4)|0;c[g>>2]=-2147483645;if(!(c[j>>2]|0)){c[k>>2]=1094;Ti(24657,k);c[d>>2]=c[g>>2];l=c[d>>2]|0;i=m;return l|0}Qr(c[j>>2]|0,c[f>>2]|0);c[h>>2]=Qi((c[e>>2]|0)+20|0,c[j>>2]|0,4)|0;if(c[h>>2]|0){c[l>>2]=1100;Ti(24594,l);c[d>>2]=c[h>>2];l=c[d>>2]|0;i=m;return l|0}else{c[d>>2]=0;l=c[d>>2]|0;i=m;return l|0}return 0}function Tr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+64|0;q=s+16|0;p=s+8|0;h=s;j=s+52|0;k=s+48|0;e=s+44|0;f=s+40|0;l=s+36|0;o=s+32|0;g=s+28|0;m=s+24|0;n=s+20|0;c[k>>2]=a;c[e>>2]=b;c[f>>2]=d;c[l>>2]=0;c[o>>2]=0;if(!(c[k>>2]|0)){c[j>>2]=-2147483647;r=c[j>>2]|0;i=s;return r|0}if(!(c[e>>2]|0)){c[j>>2]=-2147483647;r=c[j>>2]|0;i=s;return r|0}c[g>>2]=Ur(c[k>>2]|0,c[f>>2]|0,o,1937011578)|0;if(c[g>>2]|0){c[h>>2]=1124;Ti(24594,h);c[j>>2]=c[g>>2];r=c[j>>2]|0;i=s;return r|0}if(!(c[(c[o>>2]|0)+16>>2]|0))c[(c[o>>2]|0)+12>>2]=c[(c[o>>2]|0)+32>>2];h=(c[o>>2]|0)+16|0;c[h>>2]=(c[h>>2]|0)+1;do if(c[(c[o>>2]|0)+12>>2]|0?(c[(c[o>>2]|0)+12>>2]|0)!=(c[(c[o>>2]|0)+32>>2]|0):0){c[l>>2]=0;while(1){e=c[o>>2]|0;if((c[l>>2]|0)>>>0>=((c[(c[o>>2]|0)+16>>2]|0)-1|0)>>>0){r=19;break}c[m>>2]=Sr(e,c[(c[o>>2]|0)+12>>2]|0)|0;if(c[m>>2]|0)break;if(1==(c[(c[k>>2]|0)+6352>>2]|0)?c[(c[k>>2]|0)+6360>>2]|0:0){h=(c[k>>2]|0)+6336|0;c[h>>2]=(c[h>>2]|0)+4}c[l>>2]=(c[l>>2]|0)+1}if((r|0)==19){c[e+12>>2]=0;break}c[p>>2]=1141;Ti(24594,p);c[j>>2]=c[m>>2];r=c[j>>2]|0;i=s;return r|0}while(0);if(!(c[(c[o>>2]|0)+12>>2]|0)){c[n>>2]=Sr(c[o>>2]|0,c[(c[o>>2]|0)+32>>2]|0)|0;if(c[n>>2]|0){c[q>>2]=1154;Ti(24594,q);c[j>>2]=c[n>>2];r=c[j>>2]|0;i=s;return r|0}if(1==(c[(c[k>>2]|0)+6352>>2]|0)?c[(c[k>>2]|0)+6360>>2]|0:0){r=(c[k>>2]|0)+6336|0;c[r>>2]=(c[r>>2]|0)+4}}c[(c[o>>2]|0)+32>>2]=0;c[j>>2]=0;r=c[j>>2]|0;i=s;return r|0}function Ur(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+48|0;j=n;m=n+32|0;p=n+28|0;o=n+24|0;k=n+20|0;f=n+16|0;l=n+12|0;h=n+8|0;g=n+4|0;c[p>>2]=a;c[o>>2]=b;c[k>>2]=d;c[f>>2]=e;c[l>>2]=0;c[h>>2]=0;c[g>>2]=Lr(c[p>>2]|0,c[o>>2]|0,h)|0;if(c[g>>2]|0){c[j>>2]=1607;Ti(24594,j);c[m>>2]=c[g>>2];p=c[m>>2]|0;i=n;return p|0}c[l>>2]=(c[h>>2]|0)+104+88+64;if(!(c[k>>2]|0)){c[m>>2]=-2147483647;p=c[m>>2]|0;i=n;return p|0}f=c[f>>2]|0;a:do if((f|0)<1937011571){if((f|0)<1668576371){switch(f|0){case 1668232756:break;default:{f=12;break a}}c[c[k>>2]>>2]=(c[l>>2]|0)+912;f=13;break}if((f|0)<1937011555){switch(f|0){case 1668576371:break;default:{f=12;break a}}c[c[k>>2]>>2]=(c[l>>2]|0)+988;f=13;break}else{switch(f|0){case 1937011555:break;default:{f=12;break a}}c[c[k>>2]>>2]=(c[l>>2]|0)+872;f=13;break}}else switch(f|0){case 1937011578:{c[c[k>>2]>>2]=(c[l>>2]|0)+836;f=13;break a}case 1937011827:{c[c[k>>2]>>2]=(c[l>>2]|0)+804;f=13;break a}case 1937011571:{c[c[k>>2]>>2]=(c[l>>2]|0)+960;f=13;break a}default:{f=12;break a}}while(0);if((f|0)==12){c[m>>2]=-2147483646;p=c[m>>2]|0;i=n;return p|0}else if((f|0)==13){c[m>>2]=0;p=c[m>>2]|0;i=n;return p|0}return 0}function Vr(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=i;i=i+128|0;B=E+40|0;A=E+32|0;D=E+24|0;C=E+16|0;z=E+8|0;y=E;f=E+112|0;g=E+108|0;h=E+104|0;j=E+100|0;v=E+96|0;u=E+92|0;x=E+88|0;s=E+84|0;t=E+80|0;l=E+76|0;k=E+72|0;w=E+68|0;m=E+64|0;n=E+60|0;o=E+56|0;p=E+52|0;q=E+48|0;r=E+44|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=e;c[v>>2]=0;c[u>>2]=0;c[x>>2]=0;c[s>>2]=0;c[t>>2]=0;c[l>>2]=0;c[k>>2]=0;c[w>>2]=0;if(!(c[g>>2]|0)){c[f>>2]=-2147483647;D=c[f>>2]|0;i=E;return D|0}if(!(c[h>>2]|0)){c[f>>2]=-2147483647;D=c[f>>2]|0;i=E;return D|0}c[m>>2]=Ur(c[g>>2]|0,c[j>>2]|0,v,1937011827)|0;if(c[m>>2]|0){c[y>>2]=1193;Ti(24594,y);c[f>>2]=c[m>>2];D=c[f>>2]|0;i=E;return D|0}c[n>>2]=Ur(c[g>>2]|0,c[j>>2]|0,u,1937011578)|0;if(c[n>>2]|0){c[z>>2]=1194;Ti(24594,z);c[f>>2]=c[n>>2];D=c[f>>2]|0;i=E;return D|0}c[o>>2]=Lr(c[g>>2]|0,c[j>>2]|0,x)|0;if(c[o>>2]|0){c[C>>2]=1195;Ti(24594,C);c[f>>2]=c[o>>2];D=c[f>>2]|0;i=E;return D|0}if(1==(c[(c[u>>2]|0)+16>>2]|0)){c[(c[v>>2]|0)+28>>2]=c[(c[h>>2]|0)+8>>2];c[f>>2]=0;D=c[f>>2]|0;i=E;return D|0}do if((c[(c[x>>2]|0)+1272>>2]|0)==1936684398){if(144!=(c[(c[g>>2]|0)+8>>2]|0)?145!=(c[(c[g>>2]|0)+8>>2]|0):0)break;c[l>>2]=c[(c[v>>2]|0)+28>>2];c[k>>2]=(($((c[(c[h>>2]|0)+8>>2]|0)-(c[l>>2]|0)|0,c[(c[x>>2]|0)+104+8+20>>2]|0)|0)>>>0)/1e3|0;c[(c[v>>2]|0)+28>>2]=c[(c[h>>2]|0)+8>>2];D=(c[x>>2]|0)+104+8+24|0;c[D>>2]=(c[D>>2]|0)+(c[k>>2]|0);D=(c[x>>2]|0)+8+28|0;c[D>>2]=(c[D>>2]|0)+(c[k>>2]|0);c[f>>2]=0;D=c[f>>2]|0;i=E;return D|0}while(0);do if(c[(c[v>>2]|0)+12>>2]|0){c[w>>2]=Ri((c[v>>2]|0)+16|0,-1)|0;c[p>>2]=-2147483392;if(c[w>>2]|0){c[s>>2]=((d[c[w>>2]>>0]|0)<<24)+((d[(c[w>>2]|0)+1>>0]|0)<<16)+((d[(c[w>>2]|0)+2>>0]|0)<<8)+(d[(c[w>>2]|0)+3>>0]|0);c[t>>2]=((d[(c[w>>2]|0)+4>>0]|0)<<24)+((d[(c[w>>2]|0)+4+1>>0]|0)<<16)+((d[(c[w>>2]|0)+4+2>>0]|0)<<8)+(d[(c[w>>2]|0)+4+3>>0]|0);break}c[D>>2]=1225;Ti(24657,D);c[f>>2]=c[p>>2];D=c[f>>2]|0;i=E;return D|0}while(0);c[l>>2]=c[(c[v>>2]|0)+28>>2];c[k>>2]=$((c[(c[h>>2]|0)+8>>2]|0)-(c[l>>2]|0)|0,((c[(c[x>>2]|0)+104+8+20>>2]|0)>>>0)/1e3|0)|0;if(c[(c[v>>2]|0)+12>>2]|0?(c[k>>2]|0)==(c[t>>2]|0):0)Qr(c[w>>2]|0,(c[s>>2]|0)+1|0);else{c[w>>2]=Ji(8)|0;c[q>>2]=-2147483645;if(!(c[w>>2]|0)){c[A>>2]=1248;Ti(24657,A);c[f>>2]=c[q>>2];D=c[f>>2]|0;i=E;return D|0}Qr(c[w>>2]|0,1);Qr((c[w>>2]|0)+4|0,c[k>>2]|0);c[r>>2]=Qi((c[v>>2]|0)+16|0,c[w>>2]|0,8)|0;if(c[r>>2]|0){c[B>>2]=1257;Ti(24594,B);c[f>>2]=c[r>>2];D=c[f>>2]|0;i=E;return D|0}if(1==(c[(c[g>>2]|0)+6352>>2]|0)?c[(c[g>>2]|0)+6360>>2]|0:0){D=(c[g>>2]|0)+6336|0;c[D>>2]=(c[D>>2]|0)+8}D=(c[v>>2]|0)+12|0;c[D>>2]=(c[D>>2]|0)+1}c[(c[v>>2]|0)+28>>2]=c[(c[h>>2]|0)+8>>2];D=(c[x>>2]|0)+104+8+24|0;c[D>>2]=(c[D>>2]|0)+(c[k>>2]|0);D=(c[x>>2]|0)+8+28|0;c[D>>2]=(c[D>>2]|0)+(c[k>>2]|0);c[f>>2]=0;D=c[f>>2]|0;i=E;return D|0}function Wr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;j=k+8|0;h=k;b=k+28|0;d=k+24|0;e=k+20|0;f=k+16|0;g=k+12|0;c[d>>2]=a;c[e>>2]=0;a=(c[d>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+1;c[e>>2]=Ji(8)|0;c[f>>2]=-2147483645;if(!(c[e>>2]|0)){c[h>>2]=1295;Ti(24657,h);c[b>>2]=c[f>>2];j=c[b>>2]|0;i=k;return j|0}h=(c[d>>2]|0)+32|0;Rr(c[e>>2]|0,c[h>>2]|0,c[h+4>>2]|0);h=(c[d>>2]|0)+32|0;c[h>>2]=0;c[h+4>>2]=0;c[g>>2]=Qi((c[d>>2]|0)+16|0,c[e>>2]|0,8)|0;if(c[g>>2]|0){c[j>>2]=1302;Ti(24594,j);c[b>>2]=c[g>>2];j=c[b>>2]|0;i=k;return j|0}else{c[b>>2]=0;j=c[b>>2]|0;i=k;return j|0}return 0}function Xr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+64|0;p=r+16|0;o=r+8|0;n=r;d=r+52|0;e=r+48|0;f=r+44|0;l=r+40|0;m=r+36|0;k=r+32|0;g=r+28|0;h=r+24|0;j=r+20|0;c[e>>2]=a;c[f>>2]=b;c[l>>2]=0;c[m>>2]=0;c[k>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;q=c[d>>2]|0;i=r;return q|0}c[g>>2]=Ur(c[e>>2]|0,c[f>>2]|0,l,1668232756)|0;if(c[g>>2]|0){c[n>>2]=1325;Ti(24594,n);c[d>>2]=c[g>>2];q=c[d>>2]|0;i=r;return q|0}c[h>>2]=Ur(c[e>>2]|0,c[f>>2]|0,m,1937011555)|0;if(c[h>>2]|0){c[o>>2]=1328;Ti(24594,o);c[d>>2]=c[h>>2];q=c[d>>2]|0;i=r;return q|0}o=(c[l>>2]|0)+28|0;c[o>>2]=(c[o>>2]|0)+1;do if((c[f>>2]|0)==1936684398){if(144!=(c[(c[e>>2]|0)+8>>2]|0)?145!=(c[(c[e>>2]|0)+8>>2]|0):0){q=11;break}c[k>>2]=1}else q=11;while(0);if((q|0)==11)c[k>>2]=c[(c[m>>2]|0)+24>>2];if((c[(c[l>>2]|0)+28>>2]|0)>>>0>=(c[k>>2]|0)>>>0){c[j>>2]=Wr(c[l>>2]|0)|0;if(c[j>>2]|0){c[p>>2]=1350;Ti(24594,p);c[d>>2]=c[j>>2];q=c[d>>2]|0;i=r;return q|0}if(1==(c[(c[e>>2]|0)+6352>>2]|0)?c[(c[e>>2]|0)+6360>>2]|0:0){q=(c[e>>2]|0)+6336|0;c[q>>2]=(c[q>>2]|0)+8}c[(c[l>>2]|0)+28>>2]=0}c[d>>2]=0;q=c[d>>2]|0;i=r;return q|0}function Yr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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;t=i;i=i+64|0;s=t+16|0;r=t+8|0;q=t;e=t+60|0;f=t+56|0;g=t+52|0;h=t+48|0;p=t+44|0;n=t+40|0;o=t+36|0;m=t+32|0;j=t+28|0;k=t+24|0;l=t+20|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[p>>2]=0;c[n>>2]=0;c[o>>2]=0;c[m>>2]=0;if(!(c[f>>2]|0)){c[e>>2]=-2147483647;s=c[e>>2]|0;i=t;return s|0}if(1986618469==(c[h>>2]|0)?c[(c[g>>2]|0)+4>>2]|0:0){c[j>>2]=Lr(c[f>>2]|0,1986618469,p)|0;if(c[j>>2]|0){c[q>>2]=1386;Ti(24594,q);c[e>>2]=c[j>>2];s=c[e>>2]|0;i=t;return s|0}c[n>>2]=(c[p>>2]|0)+104+88+64+960;c[o>>2]=(c[p>>2]|0)+104+88+64+836;q=(c[n>>2]|0)+12|0;c[q>>2]=(c[q>>2]|0)+1;c[m>>2]=Ji(4)|0;c[k>>2]=-2147483645;if(!(c[m>>2]|0)){c[r>>2]=1398;Ti(24657,r);c[e>>2]=c[k>>2];s=c[e>>2]|0;i=t;return s|0}Qr(c[m>>2]|0,c[(c[o>>2]|0)+16>>2]|0);c[l>>2]=Qi((c[n>>2]|0)+16|0,c[m>>2]|0,4)|0;if(c[l>>2]|0){c[s>>2]=1404;Ti(24594,s);c[e>>2]=c[l>>2];s=c[e>>2]|0;i=t;return s|0}if(1==(c[(c[f>>2]|0)+6352>>2]|0)?c[(c[f>>2]|0)+6360>>2]|0:0){s=(c[f>>2]|0)+6336|0;c[s>>2]=(c[s>>2]|0)+4}}c[e>>2]=0;s=c[e>>2]|0;i=t;return s|0}function Zr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+48|0;n=o+8|0;m=o;e=o+36|0;f=o+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;l=o+12|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=0;c[j>>2]=Ji(8)|0;c[k>>2]=-2147483645;if(!(c[j>>2]|0)){c[m>>2]=1433;Ti(24657,m);c[e>>2]=c[k>>2];n=c[e>>2]|0;i=o;return n|0}Qr(c[j>>2]|0,c[g>>2]|0);Qr((c[j>>2]|0)+4|0,c[h>>2]|0);m=(c[f>>2]|0)+12|0;c[m>>2]=(c[m>>2]|0)+1;c[l>>2]=Qi((c[f>>2]|0)+16|0,c[j>>2]|0,8)|0;if(c[l>>2]|0){c[n>>2]=1440;Ti(24594,n);c[e>>2]=c[l>>2];n=c[e>>2]|0;i=o;return n|0}else{c[e>>2]=0;n=c[e>>2]|0;i=o;return n|0}return 0}function _r(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+128|0;C=F+48|0;B=F+40|0;A=F+32|0;q=F+24|0;m=F+16|0;l=F+8|0;k=F;D=F+120|0;r=F+116|0;E=F+112|0;f=F+108|0;p=F+104|0;s=F+100|0;n=F+96|0;t=F+92|0;y=F+88|0;z=F+84|0;u=F+80|0;g=F+76|0;h=F+72|0;j=F+68|0;o=F+64|0;v=F+60|0;w=F+56|0;x=F+52|0;c[r>>2]=a;c[E>>2]=b;c[f>>2]=e;c[p>>2]=0;c[s>>2]=0;c[n>>2]=0;c[t>>2]=0;c[y>>2]=0;c[z>>2]=0;c[u>>2]=0;if(!(c[r>>2]|0)){c[D>>2]=-2147483647;E=c[D>>2]|0;i=F;return E|0}if(!(c[E>>2]|0)){c[D>>2]=-2147483647;E=c[D>>2]|0;i=F;return E|0}c[g>>2]=Ur(c[r>>2]|0,c[f>>2]|0,p,1937011578)|0;if(c[g>>2]|0){c[k>>2]=1470;Ti(24594,k);c[D>>2]=c[g>>2];E=c[D>>2]|0;i=F;return E|0}c[h>>2]=Ur(c[r>>2]|0,c[f>>2]|0,s,1668576371)|0;if(c[h>>2]|0){c[l>>2]=1473;Ti(24594,l);c[D>>2]=c[h>>2];E=c[D>>2]|0;i=F;return E|0}c[j>>2]=Lr(c[r>>2]|0,c[f>>2]|0,n)|0;if(c[j>>2]|0){c[m>>2]=1476;Ti(24594,m);c[D>>2]=c[j>>2];E=c[D>>2]|0;i=F;return E|0}do if(1986618469==(c[f>>2]|0)?(c[(c[E>>2]|0)+12>>2]|0)!=0:0){a=c[(c[E>>2]|0)+12>>2]|0;f=c[(c[n>>2]|0)+104+8+20>>2]|0;if(c[(c[E>>2]|0)+16>>2]|0)c[u>>2]=$(a,(f|0)/1e3|0)|0;else c[u>>2]=$(a,(f>>>0)/1e3|0)|0;if(0==(c[(c[s>>2]|0)+12>>2]|0)?1<(c[(c[p>>2]|0)+16>>2]|0)>>>0:0){c[o>>2]=Zr(c[s>>2]|0,(c[(c[p>>2]|0)+16>>2]|0)-1|0,0)|0;if(c[o>>2]|0){c[q>>2]=1494;Ti(24594,q);c[D>>2]=c[o>>2];E=c[D>>2]|0;i=F;return E|0}if(1==(c[(c[r>>2]|0)+6352>>2]|0)?c[(c[r>>2]|0)+6360>>2]|0:0){q=(c[r>>2]|0)+6336|0;c[q>>2]=(c[q>>2]|0)+8}}f=c[s>>2]|0;do if(!(c[(c[s>>2]|0)+12>>2]|0)){c[v>>2]=Zr(f,1,c[u>>2]|0)|0;if(c[v>>2]|0){c[A>>2]=1506;Ti(24594,A);c[D>>2]=c[v>>2];E=c[D>>2]|0;i=F;return E|0}if(1==(c[(c[r>>2]|0)+6352>>2]|0)?c[(c[r>>2]|0)+6360>>2]|0:0){C=(c[r>>2]|0)+6336|0;c[C>>2]=(c[C>>2]|0)+8}}else{c[t>>2]=Ri(f+16|0,-1)|0;c[w>>2]=-2147483392;if(!(c[t>>2]|0)){c[B>>2]=1518;Ti(24657,B);c[D>>2]=c[w>>2];E=c[D>>2]|0;i=F;return E|0}c[y>>2]=((d[c[t>>2]>>0]|0)<<24)+((d[(c[t>>2]|0)+1>>0]|0)<<16)+((d[(c[t>>2]|0)+2>>0]|0)<<8)+(d[(c[t>>2]|0)+3>>0]|0);c[z>>2]=((d[(c[t>>2]|0)+4>>0]|0)<<24)+((d[(c[t>>2]|0)+4+1>>0]|0)<<16)+((d[(c[t>>2]|0)+4+2>>0]|0)<<8)+(d[(c[t>>2]|0)+4+3>>0]|0);if((c[z>>2]|0)==(c[u>>2]|0)){Qr(c[t>>2]|0,(c[y>>2]|0)+1|0);break}c[x>>2]=Zr(c[s>>2]|0,1,c[u>>2]|0)|0;if(c[x>>2]|0){c[C>>2]=1531;Ti(24594,C);c[D>>2]=c[x>>2];E=c[D>>2]|0;i=F;return E|0}if(1==(c[(c[r>>2]|0)+6352>>2]|0)?c[(c[r>>2]|0)+6360>>2]|0:0){C=(c[r>>2]|0)+6336|0;c[C>>2]=(c[C>>2]|0)+8}}while(0);f=(c[r>>2]|0)+6372|0;if(c[(c[E>>2]|0)+16>>2]|0){c[f>>2]=2;break}else{c[f>>2]=1;break}}while(0);c[D>>2]=0;E=c[D>>2]|0;i=F;return E|0}function $r(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+32|0;n=o;f=o+28|0;g=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;m=o+8|0;l=o+4|0;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=0;c[m>>2]=0;if(!(c[g>>2]|0)){c[f>>2]=-2147483647;n=c[f>>2]|0;i=o;return n|0}if(!(c[h>>2]|0)){c[f>>2]=-2147483647;n=c[f>>2]|0;i=o;return n|0}c[l>>2]=Lr(c[g>>2]|0,1986618469,m)|0;if(c[l>>2]|0){c[n>>2]=1573;Ti(24594,n);c[f>>2]=c[l>>2];n=c[f>>2]|0;i=o;return n|0}c[k>>2]=(c[m>>2]|0)+104+88+64+8+20+88;if((c[j>>2]|0)>>>0>255){c[f>>2]=-2147483645;n=c[f>>2]|0;i=o;return n|0}else{a[(c[k>>2]|0)+33>>0]=c[j>>2];Li((c[k>>2]|0)+34|0,c[h>>2]|0,c[j>>2]|0)|0;c[f>>2]=0;n=c[f>>2]|0;i=o;return n|0}return 0}function as(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[f>>2]=b;c[g>>2]=d;c[h>>2]=0;if(((c[(c[f>>2]|0)+40>>2]|0)+4|0)>>>0>(c[(c[f>>2]|0)+44>>2]|0)>>>0){c[e>>2]=-2147483645;b=c[e>>2]|0;i=j;return b|0}else{c[h>>2]=c[(c[f>>2]|0)+40>>2];b=(c[g>>2]|0)>>>24&255;d=c[h>>2]|0;c[h>>2]=d+1;a[(c[(c[f>>2]|0)+36>>2]|0)+d>>0]=b;d=(c[g>>2]|0)>>>16&255;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[(c[f>>2]|0)+36>>2]|0)+b>>0]=d;b=(c[g>>2]|0)>>>8&255;d=c[h>>2]|0;c[h>>2]=d+1;a[(c[(c[f>>2]|0)+36>>2]|0)+d>>0]=b;d=c[g>>2]&255;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[(c[f>>2]|0)+36>>2]|0)+b>>0]=d;b=(c[f>>2]|0)+40|0;c[b>>2]=(c[b>>2]|0)+4;c[e>>2]=0;b=c[e>>2]|0;i=j;return b|0}return 0}function bs(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[f>>2]=b;c[g>>2]=d;c[h>>2]=0;if((c[(c[f>>2]|0)+4>>2]|0)>>>0<((c[(c[f>>2]|0)+8>>2]|0)+4|0)>>>0){c[e>>2]=-2147483645;h=c[e>>2]|0;i=j;return h|0}else{c[h>>2]=c[(c[f>>2]|0)+8>>2];b=(c[g>>2]|0)>>>24&255;d=c[h>>2]|0;c[h>>2]=d+1;a[(c[c[f>>2]>>2]|0)+d>>0]=b;d=(c[g>>2]|0)>>>16&255;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[c[f>>2]>>2]|0)+b>>0]=d;b=(c[g>>2]|0)>>>8&255;d=c[h>>2]|0;c[h>>2]=d+1;a[(c[c[f>>2]>>2]|0)+d>>0]=b;d=c[g>>2]&255;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[c[f>>2]>>2]|0)+b>>0]=d;h=(c[f>>2]|0)+8|0;c[h>>2]=(c[h>>2]|0)+4;c[e>>2]=0;h=c[e>>2]|0;i=j;return h|0}return 0}function cs(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;f=k+16|0;g=k+12|0;h=k;j=k+8|0;c[g>>2]=b;b=h;c[b>>2]=d;c[b+4>>2]=e;c[j>>2]=0;if((c[(c[g>>2]|0)+4>>2]|0)>>>0<((c[(c[g>>2]|0)+8>>2]|0)+8|0)>>>0){c[f>>2]=-2147483645;j=c[f>>2]|0;i=k;return j|0}else{c[j>>2]=c[(c[g>>2]|0)+8>>2];e=h;e=Rx(c[e>>2]|0,c[e+4>>2]|0,56)|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[c[g>>2]>>2]|0)+b>>0]=e;b=h;b=Rx(c[b>>2]|0,c[b+4>>2]|0,48)|0;e=c[j>>2]|0;c[j>>2]=e+1;a[(c[c[g>>2]>>2]|0)+e>>0]=b;e=h;e=Rx(c[e>>2]|0,c[e+4>>2]|0,40)|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[c[g>>2]>>2]|0)+b>>0]=e;b=c[h+4>>2]&255;e=c[j>>2]|0;c[j>>2]=e+1;a[(c[c[g>>2]>>2]|0)+e>>0]=b;e=h;e=Rx(c[e>>2]|0,c[e+4>>2]|0,24)|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[c[g>>2]>>2]|0)+b>>0]=e;b=h;b=Rx(c[b>>2]|0,c[b+4>>2]|0,16)|0;e=c[j>>2]|0;c[j>>2]=e+1;a[(c[c[g>>2]>>2]|0)+e>>0]=b;e=h;e=Rx(c[e>>2]|0,c[e+4>>2]|0,8)|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[c[g>>2]>>2]|0)+b>>0]=e;h=c[h>>2]&255;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[c[g>>2]>>2]|0)+b>>0]=h;j=(c[g>>2]|0)+8|0;c[j>>2]=(c[j>>2]|0)+8;c[f>>2]=0;j=c[f>>2]|0;i=k;return j|0}return 0}function ds(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(((c[(c[f>>2]|0)+8>>2]|0)+(c[h>>2]|0)|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0){c[e>>2]=-2147483645;a=c[e>>2]|0;i=j;return a|0}else{Li((c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)|0,c[g>>2]|0,c[h>>2]|0)|0;a=(c[f>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+(c[h>>2]|0);c[e>>2]=0;a=c[e>>2]|0;i=j;return a|0}return 0}function es(a){a=a|0;var b=0,d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=i;i=i+112|0;u=x+64|0;t=x+56|0;s=x+48|0;r=x+40|0;q=x+32|0;w=x+24|0;v=x+16|0;p=x+8|0;o=x;b=x+108|0;d=x+104|0;e=x+100|0;f=x+96|0;g=x+92|0;h=x+88|0;j=x+84|0;k=x+80|0;l=x+76|0;m=x+72|0;n=x+68|0;c[d>>2]=a;c[e>>2]=bs(c[d>>2]|0,65536)|0;if(c[e>>2]|0){c[o>>2]=1816;Ti(24594,o);c[b>>2]=c[e>>2];w=c[b>>2]|0;i=x;return w|0}c[f>>2]=bs(c[d>>2]|0,0)|0;if(c[f>>2]|0){c[p>>2]=1817;Ti(24594,p);c[b>>2]=c[f>>2];w=c[b>>2]|0;i=x;return w|0}c[g>>2]=bs(c[d>>2]|0,0)|0;if(c[g>>2]|0){c[v>>2]=1818;Ti(24594,v);c[b>>2]=c[g>>2];w=c[b>>2]|0;i=x;return w|0}c[h>>2]=bs(c[d>>2]|0,0)|0;if(c[h>>2]|0){c[w>>2]=1819;Ti(24594,w);c[b>>2]=c[h>>2];w=c[b>>2]|0;i=x;return w|0}c[j>>2]=bs(c[d>>2]|0,65536)|0;if(c[j>>2]|0){c[q>>2]=1820;Ti(24594,q);c[b>>2]=c[j>>2];w=c[b>>2]|0;i=x;return w|0}c[k>>2]=bs(c[d>>2]|0,0)|0;if(c[k>>2]|0){c[r>>2]=1821;Ti(24594,r);c[b>>2]=c[k>>2];w=c[b>>2]|0;i=x;return w|0}c[l>>2]=bs(c[d>>2]|0,0)|0;if(c[l>>2]|0){c[s>>2]=1822;Ti(24594,s);c[b>>2]=c[l>>2];w=c[b>>2]|0;i=x;return w|0}c[m>>2]=bs(c[d>>2]|0,0)|0;if(c[m>>2]|0){c[t>>2]=1823;Ti(24594,t);c[b>>2]=c[m>>2];w=c[b>>2]|0;i=x;return w|0}c[n>>2]=bs(c[d>>2]|0,1073741824)|0;if(c[n>>2]|0){c[u>>2]=1824;Ti(24594,u);c[b>>2]=c[n>>2];w=c[b>>2]|0;i=x;return w|0}else{c[b>>2]=0;w=c[b>>2]|0;i=x;return w|0}return 0}function fs(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[f>>2]|0)+8>>2];if(((c[(c[f>>2]|0)+8>>2]|0)+(c[g>>2]|0)|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0){c[e>>2]=-2147483645;h=c[e>>2]|0;i=j;return h|0}c[h>>2]=c[(c[f>>2]|0)+8>>2];while(1){if((c[h>>2]|0)>>>0>=((c[g>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)|0)>>>0)break;a[(c[c[f>>2]>>2]|0)+(c[h>>2]|0)>>0]=0;c[h>>2]=(c[h>>2]|0)+1}h=(c[f>>2]|0)+8|0;c[h>>2]=(c[h>>2]|0)+(c[g>>2]|0);c[e>>2]=0;h=c[e>>2]|0;i=j;return h|0}function gs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=i;i=i+112|0;u=x+48|0;t=x+40|0;s=x+32|0;w=x+24|0;v=x+16|0;r=x+8|0;q=x;d=x+96|0;e=x+92|0;f=x+88|0;h=x+84|0;g=x+80|0;j=x+76|0;k=x+72|0;l=x+68|0;m=x+64|0;n=x+60|0;o=x+56|0;p=x+52|0;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;c[g>>2]=0;if(!(c[f>>2]|0)){c[d>>2]=-2147483647;w=c[d>>2]|0;i=x;return w|0}if(!(c[e>>2]|0)){c[d>>2]=-2147483647;w=c[d>>2]|0;i=x;return w|0}if(!(c[(c[f>>2]|0)+36>>2]|0)){c[d>>2]=-2147483647;w=c[d>>2]|0;i=x;return w|0}c[h>>2]=c[(c[f>>2]|0)+40>>2];c[j>>2]=as(c[f>>2]|0,28)|0;if(c[j>>2]|0){c[q>>2]=1881;Ti(24594,q);c[d>>2]=c[j>>2];w=c[d>>2]|0;i=x;return w|0}c[k>>2]=as(c[f>>2]|0,1718909296)|0;if(c[k>>2]|0){c[r>>2]=1884;Ti(24594,r);c[d>>2]=c[k>>2];w=c[d>>2]|0;i=x;return w|0}c[l>>2]=as(c[f>>2]|0,1836069938)|0;if(c[l>>2]|0){c[v>>2]=1887;Ti(24594,v);c[d>>2]=c[l>>2];w=c[d>>2]|0;i=x;return w|0}c[m>>2]=as(c[f>>2]|0,0)|0;if(c[m>>2]|0){c[w>>2]=1890;Ti(24594,w);c[d>>2]=c[m>>2];w=c[d>>2]|0;i=x;return w|0}c[n>>2]=as(c[f>>2]|0,1836069938)|0;if(c[n>>2]|0){c[s>>2]=1893;Ti(24594,s);c[d>>2]=c[n>>2];w=c[d>>2]|0;i=x;return w|0}c[o>>2]=as(c[f>>2]|0,1769172845)|0;if(c[o>>2]|0){c[t>>2]=1894;Ti(24594,t);c[d>>2]=c[o>>2];w=c[d>>2]|0;i=x;return w|0}c[p>>2]=as(c[f>>2]|0,1212894537)|0;if(c[p>>2]|0){c[u>>2]=1898;Ti(24594,u);c[d>>2]=c[p>>2];w=c[d>>2]|0;i=x;return w|0}else{c[g>>2]=(c[(c[f>>2]|0)+40>>2]|0)-(c[h>>2]|0);w=(c[e>>2]|0)+6392|0;v=w;v=Px(c[v>>2]|0,c[v+4>>2]|0,c[g>>2]|0,0)|0;c[w>>2]=v;c[w+4>>2]=D;c[d>>2]=0;w=c[d>>2]|0;i=x;return w|0}return 0}function hs(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;f=e+4|0;h=e;c[g>>2]=b;c[f>>2]=d;c[h>>2]=(c[(c[g>>2]|0)+8>>2]|0)-(c[f>>2]|0);a[(c[c[g>>2]>>2]|0)+(c[f>>2]|0)>>0]=(c[h>>2]|0)>>>24;a[(c[c[g>>2]>>2]|0)+((c[f>>2]|0)+1)>>0]=(c[h>>2]|0)>>>16;a[(c[c[g>>2]>>2]|0)+((c[f>>2]|0)+2)>>0]=(c[h>>2]|0)>>>8;a[(c[c[g>>2]>>2]|0)+((c[f>>2]|0)+3)>>0]=c[h>>2];i=e;return 0}function is(a){a=a|0;var b=0,d=0,e=0,f=0,g=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;u=i;i=i+96|0;r=u+48|0;q=u+40|0;p=u+32|0;t=u+24|0;s=u+16|0;o=u+8|0;n=u;b=u+88|0;d=u+84|0;e=u+80|0;f=u+76|0;g=u+72|0;h=u+68|0;j=u+64|0;k=u+60|0;l=u+56|0;m=u+52|0;c[d>>2]=a;c[e>>2]=0;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;t=c[b>>2]|0;i=u;return t|0}if(!(c[c[d>>2]>>2]|0)){c[b>>2]=-2147483647;t=c[b>>2]|0;i=u;return t|0}c[e>>2]=c[(c[d>>2]|0)+8>>2];c[f>>2]=bs(c[d>>2]|0,0)|0;if(c[f>>2]|0){c[n>>2]=1945;Ti(24594,n);c[b>>2]=c[f>>2];t=c[b>>2]|0;i=u;return t|0}c[g>>2]=bs(c[d>>2]|0,1718909296)|0;if(c[g>>2]|0){c[o>>2]=1948;Ti(24594,o);c[b>>2]=c[g>>2];t=c[b>>2]|0;i=u;return t|0}c[h>>2]=bs(c[d>>2]|0,1836069938)|0;if(c[h>>2]|0){c[s>>2]=1952;Ti(24594,s);c[b>>2]=c[h>>2];t=c[b>>2]|0;i=u;return t|0}c[j>>2]=bs(c[d>>2]|0,0)|0;if(c[j>>2]|0){c[t>>2]=1955;Ti(24594,t);c[b>>2]=c[j>>2];t=c[b>>2]|0;i=u;return t|0}c[k>>2]=bs(c[d>>2]|0,1836069938)|0;if(c[k>>2]|0){c[p>>2]=1962;Ti(24594,p);c[b>>2]=c[k>>2];t=c[b>>2]|0;i=u;return t|0}c[l>>2]=bs(c[d>>2]|0,1769172845)|0;if(c[l>>2]|0){c[q>>2]=1963;Ti(24594,q);c[b>>2]=c[l>>2];t=c[b>>2]|0;i=u;return t|0}c[m>>2]=bs(c[d>>2]|0,1212894537)|0;if(c[m>>2]|0){c[r>>2]=1965;Ti(24594,r);c[b>>2]=c[m>>2];t=c[b>>2]|0;i=u;return t|0}else{hs(c[d>>2]|0,c[e>>2]|0)|0;c[b>>2]=0;t=c[b>>2]|0;i=u;return t|0}return 0}function js(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;h=j+8|0;g=j;b=j+24|0;d=j+20|0;e=j+16|0;f=j+12|0;c[d>>2]=a;c[e>>2]=as(c[d>>2]|0,0)|0;if(c[e>>2]|0){c[g>>2]=1982;Ti(24594,g);c[b>>2]=c[e>>2];h=c[b>>2]|0;i=j;return h|0}c[f>>2]=as(c[d>>2]|0,1835295092)|0;if(c[f>>2]|0){c[h>>2]=1984;Ti(24594,h);c[b>>2]=c[f>>2];h=c[b>>2]|0;i=j;return h|0}else{c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}return 0}function ks(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=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;t=i;i=i+80|0;q=t+40|0;s=t+32|0;r=t+24|0;p=t+16|0;o=t+8|0;f=t+72|0;g=t+68|0;h=t;u=t+64|0;j=t+60|0;k=t+56|0;l=t+52|0;m=t+48|0;n=t+44|0;c[g>>2]=a;a=h;c[a>>2]=b;c[a+4>>2]=d;c[u>>2]=e;b=c[g>>2]|0;if(!(c[u>>2]|0)){c[j>>2]=bs(b,c[h>>2]|0)|0;if(c[j>>2]|0){c[o>>2]=2003;Ti(24594,o);c[f>>2]=c[j>>2];u=c[f>>2]|0;i=t;return u|0}c[k>>2]=bs(c[g>>2]|0,1835295092)|0;if(c[k>>2]|0){c[p>>2]=2005;Ti(24594,p);c[f>>2]=c[k>>2];u=c[f>>2]|0;i=t;return u|0}}else{c[l>>2]=bs(b,1)|0;if(c[l>>2]|0){c[r>>2]=2009;Ti(24594,r);c[f>>2]=c[l>>2];u=c[f>>2]|0;i=t;return u|0}c[m>>2]=bs(c[g>>2]|0,1835295092)|0;if(c[m>>2]|0){c[s>>2]=2011;Ti(24594,s);c[f>>2]=c[m>>2];u=c[f>>2]|0;i=t;return u|0}u=h;c[n>>2]=cs(c[g>>2]|0,c[u>>2]|0,c[u+4>>2]|0)|0;if(c[n>>2]|0){c[q>>2]=2013;Ti(24594,q);c[f>>2]=c[n>>2];u=c[f>>2]|0;i=t;return u|0}}c[f>>2]=0;u=c[f>>2]|0;i=t;return u|0}function ls(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+8|0;h=l+4|0;j=l+12|0;k=l;c[h>>2]=d;b[j>>1]=f;c[k>>2]=0;if((c[(c[h>>2]|0)+4>>2]|0)>>>0<((c[(c[h>>2]|0)+8>>2]|0)+2|0)>>>0){c[g>>2]=-2147483645;f=c[g>>2]|0;i=l;return f|0}else{c[k>>2]=c[(c[h>>2]|0)+8>>2];f=(e[j>>1]|0)>>8&255;d=c[k>>2]|0;c[k>>2]=d+1;a[(c[c[h>>2]>>2]|0)+d>>0]=f;d=b[j>>1]&255;f=c[k>>2]|0;c[k>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=d;f=(c[h>>2]|0)+8|0;c[f>>2]=(c[f>>2]|0)+2;c[g>>2]=0;f=c[g>>2]|0;i=l;return f|0}return 0}function ms(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+48|0;l=m+8|0;k=m;e=m+32|0;f=m+28|0;n=m+24|0;g=m+20|0;h=m+16|0;j=m+12|0;c[f>>2]=a;c[n>>2]=b;c[g>>2]=d;c[h>>2]=bs(c[f>>2]|0,c[n>>2]|0)|0;if(c[h>>2]|0){c[k>>2]=2058;Ti(24594,k);c[e>>2]=c[h>>2];n=c[e>>2]|0;i=m;return n|0}c[j>>2]=bs(c[f>>2]|0,c[g>>2]|0)|0;if(c[j>>2]|0){c[l>>2]=2060;Ti(24594,l);c[e>>2]=c[j>>2];n=c[e>>2]|0;i=m;return n|0}else{c[e>>2]=0;n=c[e>>2]|0;i=m;return n|0}return 0}function ns(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+48|0;n=o;l=o+36|0;b=o+32|0;f=o+28|0;g=o+24|0;h=o+20|0;k=o+16|0;j=o+12|0;e=o+8|0;m=o+4|0;c[b>>2]=a;c[f>>2]=0;c[g>>2]=0;c[h>>2]=0;c[k>>2]=0;c[j>>2]=0;c[e>>2]=0;c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=(c[(c[b>>2]|0)+136+336>>2]|0)>>>0){b=8;break}c[k>>2]=(c[b>>2]|0)+136+344+((c[f>>2]|0)*1280|0);c[j>>2]=(c[k>>2]|0)+104+88+64+804;if(c[(c[j>>2]|0)+12>>2]|0){c[e>>2]=Ri((c[j>>2]|0)+16|0,-1)|0;c[m>>2]=-2147483392;if(!(c[e>>2]|0)){b=5;break}c[g>>2]=((d[c[e>>2]>>0]|0)<<24)+((d[(c[e>>2]|0)+1>>0]|0)<<16)+((d[(c[e>>2]|0)+2>>0]|0)<<8)+(d[(c[e>>2]|0)+3>>0]|0);c[h>>2]=((d[(c[e>>2]|0)+4>>0]|0)<<24)+((d[(c[e>>2]|0)+4+1>>0]|0)<<16)+((d[(c[e>>2]|0)+4+2>>0]|0)<<8)+(d[(c[e>>2]|0)+4+3>>0]|0);Qr(c[e>>2]|0,(c[g>>2]|0)+1|0);a=(c[k>>2]|0)+104+8+24|0;c[a>>2]=(c[a>>2]|0)+(c[h>>2]|0);a=(c[k>>2]|0)+8+28|0;c[a>>2]=(c[a>>2]|0)+(c[h>>2]|0)}c[f>>2]=(c[f>>2]|0)+1}if((b|0)==5){c[n>>2]=2094;Ti(24657,n);c[l>>2]=c[m>>2];n=c[l>>2]|0;i=o;return n|0}else if((b|0)==8){c[l>>2]=0;n=c[l>>2]|0;i=o;return n|0}return 0}function os(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;A=i;i=i+128|0;x=A+64|0;w=A+56|0;v=A+48|0;u=A+40|0;t=A+32|0;z=A+24|0;y=A+16|0;s=A+8|0;r=A;d=A+116|0;e=A+112|0;f=A+108|0;g=A+104|0;h=A+100|0;j=A+96|0;k=A+92|0;l=A+88|0;m=A+84|0;n=A+80|0;o=A+76|0;p=A+72|0;q=A+68|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;z=c[d>>2]|0;i=A;return z|0}if(!(c[f>>2]|0)){c[d>>2]=-2147483647;z=c[d>>2]|0;i=A;return z|0}if(!(c[c[f>>2]>>2]|0)){c[d>>2]=-2147483647;z=c[d>>2]|0;i=A;return z|0}c[g>>2]=c[(c[f>>2]|0)+8>>2];c[h>>2]=ms(c[f>>2]|0,0,1836019574)|0;if(c[h>>2]|0){c[r>>2]=2127;Ti(24594,r);c[d>>2]=c[h>>2];z=c[d>>2]|0;i=A;return z|0}do if(2!=(c[(c[e>>2]|0)+6352>>2]|0)?3!=(c[(c[e>>2]|0)+6352>>2]|0):0){if((1==(c[(c[e>>2]|0)+6352>>2]|0)?c[(c[e>>2]|0)+6360>>2]|0:0)?(c[(c[f>>2]|0)+12>>2]|0)==0:0)break;c[j>>2]=ns(c[e>>2]|0)|0;if(c[j>>2]|0){c[s>>2]=2141;Ti(24594,s);c[d>>2]=c[j>>2];z=c[d>>2]|0;i=A;return z|0}}while(0);c[k>>2]=ps(c[e>>2]|0,c[f>>2]|0)|0;if(c[k>>2]|0){c[y>>2]=2146;Ti(24594,y);c[d>>2]=c[k>>2];z=c[d>>2]|0;i=A;return z|0}if(2==(c[(c[e>>2]|0)+6352>>2]|0)?(c[l>>2]=qs(c[e>>2]|0,c[f>>2]|0)|0,0!=(c[l>>2]|0)):0){c[z>>2]=2151;Ti(24594,z);c[d>>2]=c[l>>2];z=c[d>>2]|0;i=A;return z|0}if(3==(c[(c[e>>2]|0)+6352>>2]|0)?(c[m>>2]=Nt(c[e>>2]|0,c[f>>2]|0)|0,0!=(c[m>>2]|0)):0){c[t>>2]=2157;Ti(24594,t);c[d>>2]=c[m>>2];z=c[d>>2]|0;i=A;return z|0}if(c[c[e>>2]>>2]&1|0?(c[n>>2]=ss(c[e>>2]|0,c[f>>2]|0,1986618469)|0,0!=(c[n>>2]|0)):0){c[u>>2]=2163;Ti(24594,u);c[d>>2]=c[n>>2];z=c[d>>2]|0;i=A;return z|0}if(c[c[e>>2]>>2]&2|0?(c[o>>2]=ss(c[e>>2]|0,c[f>>2]|0,1936684398)|0,0!=(c[o>>2]|0)):0){c[v>>2]=2169;Ti(24594,v);c[d>>2]=c[o>>2];z=c[d>>2]|0;i=A;return z|0}if(c[c[e>>2]>>2]&4|0){if(!(c[(c[e>>2]|0)+12>>2]|0)){c[d>>2]=-2147483647;z=c[d>>2]|0;i=A;return z|0}if(c[(c[e>>2]|0)+12>>2]&1024|0?(c[p>>2]=ss(c[e>>2]|0,c[f>>2]|0,1952807028)|0,0!=(c[p>>2]|0)):0){c[w>>2]=2179;Ti(24594,w);c[d>>2]=c[p>>2];z=c[d>>2]|0;i=A;return z|0}if(c[(c[e>>2]|0)+12>>2]&2048|0?(c[q>>2]=ss(c[e>>2]|0,c[f>>2]|0,1751740020)|0,0!=(c[q>>2]|0)):0){c[x>>2]=2185;Ti(24594,x);c[d>>2]=c[q>>2];z=c[d>>2]|0;i=A;return z|0}}hs(c[f>>2]|0,c[g>>2]|0)|0;c[d>>2]=0;z=c[d>>2]|0;i=A;return z|0}function ps(a,b){a=a|0;b=b|0;var d=0.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,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;P=i;i=i+192|0;O=P+104|0;N=P+96|0;M=P+88|0;L=P+80|0;K=P+72|0;J=P+64|0;I=P+56|0;t=P+48|0;s=P+40|0;r=P+32|0;v=P+24|0;u=P+16|0;q=P+8|0;p=P;x=P+188|0;y=P+184|0;z=P+180|0;w=P+176|0;e=P+172|0;o=P+168|0;A=P+164|0;f=P+160|0;h=P+156|0;j=P+152|0;k=P+148|0;l=P+144|0;m=P+140|0;n=P+136|0;F=P+132|0;G=P+128|0;H=P+124|0;B=P+120|0;C=P+116|0;D=P+112|0;E=P+108|0;c[y>>2]=a;c[z>>2]=b;g[w>>2]=0.0;g[e>>2]=0.0;c[o>>2]=0;c[A>>2]=0;if(!(c[y>>2]|0)){c[x>>2]=-2147483647;O=c[x>>2]|0;i=P;return O|0}if(!(c[z>>2]|0)){c[x>>2]=-2147483647;O=c[x>>2]|0;i=P;return O|0}if(!(c[c[z>>2]>>2]|0)){c[x>>2]=-2147483647;O=c[x>>2]|0;i=P;return O|0}c[A>>2]=c[(c[z>>2]|0)+8>>2];c[f>>2]=ms(c[z>>2]|0,0,1836476516)|0;if(c[f>>2]|0){c[p>>2]=2218;Ti(24594,p);c[x>>2]=c[f>>2];O=c[x>>2]|0;i=P;return O|0}c[h>>2]=bs(c[z>>2]|0,0)|0;if(c[h>>2]|0){c[q>>2]=2221;Ti(24594,q);c[x>>2]=c[h>>2];O=c[x>>2]|0;i=P;return O|0}c[j>>2]=bs(c[z>>2]|0,c[(c[y>>2]|0)+136+8+12>>2]|0)|0;if(c[j>>2]|0){c[u>>2]=2224;Ti(24594,u);c[x>>2]=c[j>>2];O=c[x>>2]|0;i=P;return O|0}c[k>>2]=bs(c[z>>2]|0,c[(c[y>>2]|0)+136+8+16>>2]|0)|0;if(c[k>>2]|0){c[v>>2]=2227;Ti(24594,v);c[x>>2]=c[k>>2];O=c[x>>2]|0;i=P;return O|0}c[l>>2]=bs(c[z>>2]|0,c[(c[y>>2]|0)+136+8+20>>2]|0)|0;if(c[l>>2]|0){c[r>>2]=2230;Ti(24594,r);c[x>>2]=c[l>>2];O=c[x>>2]|0;i=P;return O|0}do if(c[c[y>>2]>>2]&2|0){c[m>>2]=Lr(c[y>>2]|0,1936684398,o)|0;if(!(c[m>>2]|0)){g[e>>2]=+((c[(c[o>>2]|0)+8+28>>2]|0)>>>0)*1.0/+((c[(c[o>>2]|0)+104+8+20>>2]|0)>>>0);break}c[s>>2]=2235;Ti(24594,s);c[x>>2]=c[m>>2];O=c[x>>2]|0;i=P;return O|0}while(0);do if(c[c[y>>2]>>2]&1|0){c[n>>2]=Lr(c[y>>2]|0,1986618469,o)|0;if(!(c[n>>2]|0)){g[w>>2]=+((c[(c[o>>2]|0)+8+28>>2]|0)>>>0)*1.0/+((c[(c[o>>2]|0)+104+8+20>>2]|0)>>>0);break}c[t>>2]=2241;Ti(24594,t);c[x>>2]=c[n>>2];O=c[x>>2]|0;i=P;return O|0}while(0);if(+g[w>>2]>+g[e>>2])d=+g[w>>2]*+((c[(c[y>>2]|0)+136+8+20>>2]|0)>>>0);else d=+g[e>>2]*+((c[(c[y>>2]|0)+136+8+20>>2]|0)>>>0);c[(c[y>>2]|0)+136+8+24>>2]=~~d>>>0;c[F>>2]=bs(c[z>>2]|0,c[(c[y>>2]|0)+136+8+24>>2]|0)|0;if(c[F>>2]|0){c[I>>2]=2249;Ti(24594,I);c[x>>2]=c[F>>2];O=c[x>>2]|0;i=P;return O|0}c[G>>2]=bs(c[z>>2]|0,65536)|0;if(c[G>>2]|0){c[J>>2]=2252;Ti(24594,J);c[x>>2]=c[G>>2];O=c[x>>2]|0;i=P;return O|0}c[H>>2]=bs(c[z>>2]|0,16777216)|0;if(c[H>>2]|0){c[K>>2]=2255;Ti(24594,K);c[x>>2]=c[H>>2];O=c[x>>2]|0;i=P;return O|0}c[B>>2]=fs(c[z>>2]|0,8)|0;if(c[B>>2]|0){c[L>>2]=2258;Ti(24594,L);c[x>>2]=c[B>>2];O=c[x>>2]|0;i=P;return O|0}c[C>>2]=es(c[z>>2]|0)|0;if(c[C>>2]|0){c[M>>2]=2261;Ti(24594,M);c[x>>2]=c[C>>2];O=c[x>>2]|0;i=P;return O|0}c[D>>2]=fs(c[z>>2]|0,24)|0;if(c[D>>2]|0){c[N>>2]=2264;Ti(24594,N);c[x>>2]=c[D>>2];O=c[x>>2]|0;i=P;return O|0}c[E>>2]=bs(c[z>>2]|0,c[(c[y>>2]|0)+136+8+104>>2]|0)|0;if(c[E>>2]|0){c[O>>2]=2267;Ti(24594,O);c[x>>2]=c[E>>2];O=c[x>>2]|0;i=P;return O|0}else{hs(c[z>>2]|0,c[A>>2]|0)|0;c[x>>2]=0;O=c[x>>2]|0;i=P;return O|0}return 0}function qs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+48|0;n=o+8|0;h=o;j=o+40|0;d=o+36|0;k=o+32|0;e=o+28|0;l=o+24|0;g=o+20|0;f=o+16|0;m=o+12|0;c[d>>2]=a;c[k>>2]=b;c[e>>2]=0;c[l>>2]=0;c[g>>2]=0;if(!(c[d>>2]|0)){c[j>>2]=-2147483647;n=c[j>>2]|0;i=o;return n|0}if(!(c[k>>2]|0)){c[j>>2]=-2147483647;n=c[j>>2]|0;i=o;return n|0}if(!(c[c[k>>2]>>2]|0)){c[j>>2]=-2147483647;n=c[j>>2]|0;i=o;return n|0}c[l>>2]=c[(c[k>>2]|0)+8>>2];c[f>>2]=ms(c[k>>2]|0,0,1836475768)|0;if(c[f>>2]|0){c[h>>2]=4311;Ti(24594,h);c[j>>2]=c[f>>2];n=c[j>>2]|0;i=o;return n|0}c[e>>2]=0;while(1){if((c[e>>2]|0)>>>0>=(c[(c[d>>2]|0)+136+336>>2]|0)>>>0){d=14;break}c[g>>2]=(c[d>>2]|0)+136+120+24+(c[e>>2]<<5);c[m>>2]=rs(c[g>>2]|0,c[k>>2]|0)|0;if(c[m>>2]|0){d=12;break}c[e>>2]=(c[e>>2]|0)+1}if((d|0)==12){c[n>>2]=4318;Ti(24594,n);c[j>>2]=c[m>>2];n=c[j>>2]|0;i=o;return n|0}else if((d|0)==14){hs(c[k>>2]|0,c[l>>2]|0)|0;c[j>>2]=0;n=c[j>>2]|0;i=o;return n|0}return 0}function rs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=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,v=0,w=0;w=i;i=i+96|0;t=w+48|0;s=w+40|0;r=w+32|0;v=w+24|0;u=w+16|0;q=w+8|0;p=w;d=w+92|0;e=w+88|0;f=w+84|0;o=w+80|0;g=w+76|0;h=w+72|0;j=w+68|0;k=w+64|0;l=w+60|0;m=w+56|0;n=w+52|0;c[e>>2]=a;c[f>>2]=b;c[o>>2]=0;if(!(c[f>>2]|0)){c[d>>2]=-2147483647;v=c[d>>2]|0;i=w;return v|0}if(!(c[c[f>>2]>>2]|0)){c[d>>2]=-2147483647;v=c[d>>2]|0;i=w;return v|0}c[o>>2]=c[(c[f>>2]|0)+8>>2];c[g>>2]=ms(c[f>>2]|0,0,1953654136)|0;if(c[g>>2]|0){c[p>>2]=4346;Ti(24594,p);c[d>>2]=c[g>>2];v=c[d>>2]|0;i=w;return v|0}c[h>>2]=bs(c[f>>2]|0,0)|0;if(c[h>>2]|0){c[q>>2]=4349;Ti(24594,q);c[d>>2]=c[h>>2];v=c[d>>2]|0;i=w;return v|0}c[j>>2]=bs(c[f>>2]|0,c[(c[e>>2]|0)+12>>2]|0)|0;if(c[j>>2]|0){c[u>>2]=4352;Ti(24594,u);c[d>>2]=c[j>>2];v=c[d>>2]|0;i=w;return v|0}c[k>>2]=bs(c[f>>2]|0,c[(c[e>>2]|0)+16>>2]|0)|0;if(c[k>>2]|0){c[v>>2]=4355;Ti(24594,v);c[d>>2]=c[k>>2];v=c[d>>2]|0;i=w;return v|0}c[l>>2]=bs(c[f>>2]|0,c[(c[e>>2]|0)+20>>2]|0)|0;if(c[l>>2]|0){c[r>>2]=4358;Ti(24594,r);c[d>>2]=c[l>>2];v=c[d>>2]|0;i=w;return v|0}c[m>>2]=bs(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0)|0;if(c[m>>2]|0){c[s>>2]=4361;Ti(24594,s);c[d>>2]=c[m>>2];v=c[d>>2]|0;i=w;return v|0}c[n>>2]=bs(c[f>>2]|0,c[(c[e>>2]|0)+28>>2]|0)|0;if(c[n>>2]|0){c[t>>2]=4364;Ti(24594,t);c[d>>2]=c[n>>2];v=c[d>>2]|0;i=w;return v|0}else{hs(c[f>>2]|0,c[o>>2]|0)|0;c[d>>2]=0;v=c[d>>2]|0;i=w;return v|0}return 0}function ss(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+64|0;p=q+16|0;o=q+8|0;n=q;e=q+48|0;f=q+44|0;g=q+40|0;h=q+36|0;m=q+32|0;j=q+28|0;k=q+24|0;l=q+20|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[m>>2]=0;if(!(c[g>>2]|0)){c[e>>2]=-2147483647;p=c[e>>2]|0;i=q;return p|0}if(!(c[c[g>>2]>>2]|0)){c[e>>2]=-2147483647;p=c[e>>2]|0;i=q;return p|0}c[m>>2]=c[(c[g>>2]|0)+8>>2];c[j>>2]=ms(c[g>>2]|0,0,1953653099)|0;if(c[j>>2]|0){c[n>>2]=2295;Ti(24594,n);c[e>>2]=c[j>>2];p=c[e>>2]|0;i=q;return p|0}c[k>>2]=ts(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(c[k>>2]|0){c[o>>2]=2298;Ti(24594,o);c[e>>2]=c[k>>2];p=c[e>>2]|0;i=q;return p|0}c[l>>2]=us(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(c[l>>2]|0){c[p>>2]=2301;Ti(24594,p);c[e>>2]=c[l>>2];p=c[e>>2]|0;i=q;return p|0}else{hs(c[g>>2]|0,c[m>>2]|0)|0;c[e>>2]=0;p=c[e>>2]|0;i=q;return p|0}return 0}function ts(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,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;L=i;i=i+176|0;I=L+96|0;H=L+88|0;G=L+80|0;F=L+72|0;E=L+64|0;D=L+56|0;C=L+48|0;B=L+40|0;A=L+32|0;K=L+24|0;J=L+16|0;z=L+8|0;y=L;e=L+172|0;f=L+168|0;g=L+164|0;h=L+160|0;x=L+156|0;w=L+152|0;j=L+148|0;k=L+144|0;o=L+140|0;p=L+136|0;q=L+132|0;r=L+128|0;s=L+124|0;t=L+120|0;u=L+116|0;v=L+112|0;l=L+108|0;m=L+104|0;n=L+100|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[x>>2]=0;c[w>>2]=0;if(!(c[f>>2]|0)){c[e>>2]=-2147483647;K=c[e>>2]|0;i=L;return K|0}if(!(c[g>>2]|0)){c[e>>2]=-2147483647;K=c[e>>2]|0;i=L;return K|0}if(!(c[c[g>>2]>>2]|0)){c[e>>2]=-2147483647;K=c[e>>2]|0;i=L;return K|0}c[w>>2]=c[(c[g>>2]|0)+8>>2];c[j>>2]=ms(c[g>>2]|0,0,1953196132)|0;if(c[j>>2]|0){c[y>>2]=2331;Ti(24594,y);c[e>>2]=c[j>>2];K=c[e>>2]|0;i=L;return K|0}c[k>>2]=bs(c[g>>2]|0,7)|0;if(c[k>>2]|0){c[z>>2]=2334;Ti(24594,z);c[e>>2]=c[k>>2];K=c[e>>2]|0;i=L;return K|0}c[o>>2]=Lr(c[f>>2]|0,c[h>>2]|0,x)|0;if(c[o>>2]|0){c[J>>2]=2336;Ti(24594,J);c[e>>2]=c[o>>2];K=c[e>>2]|0;i=L;return K|0}c[p>>2]=bs(c[g>>2]|0,c[(c[x>>2]|0)+8+12>>2]|0)|0;if(c[p>>2]|0){c[K>>2]=2339;Ti(24594,K);c[e>>2]=c[p>>2];K=c[e>>2]|0;i=L;return K|0}c[q>>2]=bs(c[g>>2]|0,c[(c[x>>2]|0)+8+16>>2]|0)|0;if(c[q>>2]|0){c[A>>2]=2342;Ti(24594,A);c[e>>2]=c[q>>2];K=c[e>>2]|0;i=L;return K|0}c[r>>2]=bs(c[g>>2]|0,c[(c[x>>2]|0)+8+20>>2]|0)|0;if(c[r>>2]|0){c[B>>2]=2345;Ti(24594,B);c[e>>2]=c[r>>2];K=c[e>>2]|0;i=L;return K|0}c[s>>2]=bs(c[g>>2]|0,0)|0;if(c[s>>2]|0){c[C>>2]=2348;Ti(24594,C);c[e>>2]=c[s>>2];K=c[e>>2]|0;i=L;return K|0}c[t>>2]=bs(c[g>>2]|0,$(((c[(c[x>>2]|0)+8+28>>2]|0)>>>0)/((c[(c[x>>2]|0)+104+8+20>>2]|0)>>>0)|0,c[(c[f>>2]|0)+136+8+20>>2]|0)|0)|0;if(c[t>>2]|0){c[D>>2]=2351;Ti(24594,D);c[e>>2]=c[t>>2];K=c[e>>2]|0;i=L;return K|0}c[u>>2]=fs(c[g>>2]|0,12)|0;if(c[u>>2]|0){c[E>>2]=2354;Ti(24594,E);c[e>>2]=c[u>>2];K=c[e>>2]|0;i=L;return K|0}c[v>>2]=bs(c[g>>2]|0,1936684398==(c[h>>2]|0)?16777216:0)|0;if(c[v>>2]|0){c[F>>2]=2357;Ti(24594,F);c[e>>2]=c[v>>2];K=c[e>>2]|0;i=L;return K|0}c[l>>2]=es(c[g>>2]|0)|0;if(c[l>>2]|0){c[G>>2]=2360;Ti(24594,G);c[e>>2]=c[l>>2];K=c[e>>2]|0;i=L;return K|0}c[m>>2]=bs(c[g>>2]|0,c[(c[x>>2]|0)+8+84>>2]|0)|0;if(c[m>>2]|0){c[H>>2]=2363;Ti(24594,H);c[e>>2]=c[m>>2];K=c[e>>2]|0;i=L;return K|0}c[n>>2]=bs(c[g>>2]|0,c[(c[x>>2]|0)+8+88>>2]|0)|0;if(c[n>>2]|0){c[I>>2]=2366;Ti(24594,I);c[e>>2]=c[n>>2];K=c[e>>2]|0;i=L;return K|0}else{hs(c[g>>2]|0,c[w>>2]|0)|0;c[e>>2]=0;K=c[e>>2]|0;i=L;return K|0}return 0}function us(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=i;i=i+80|0;s=v+32|0;u=v+24|0;t=v+16|0;r=v+8|0;q=v;e=v+76|0;f=v+72|0;g=v+68|0;h=v+64|0;p=v+60|0;j=v+56|0;k=v+52|0;l=v+48|0;m=v+44|0;n=v+40|0;o=v+36|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[p>>2]=0;c[j>>2]=0;if(!(c[g>>2]|0)){c[e>>2]=-2147483647;u=c[e>>2]|0;i=v;return u|0}if(!(c[c[g>>2]>>2]|0)){c[e>>2]=-2147483647;u=c[e>>2]|0;i=v;return u|0}c[k>>2]=Lr(c[f>>2]|0,c[h>>2]|0,p)|0;if(c[k>>2]|0){c[q>>2]=2391;Ti(24594,q);c[e>>2]=c[k>>2];u=c[e>>2]|0;i=v;return u|0}c[j>>2]=c[(c[g>>2]|0)+8>>2];c[l>>2]=ms(c[g>>2]|0,0,1835297121)|0;if(c[l>>2]|0){c[r>>2]=2396;Ti(24594,r);c[e>>2]=c[l>>2];u=c[e>>2]|0;i=v;return u|0}c[m>>2]=vs(c[g>>2]|0,c[p>>2]|0)|0;if(c[m>>2]|0){c[t>>2]=2399;Ti(24594,t);c[e>>2]=c[m>>2];u=c[e>>2]|0;i=v;return u|0}c[n>>2]=ws(c[g>>2]|0,c[p>>2]|0)|0;if(c[n>>2]|0){c[u>>2]=2402;Ti(24594,u);c[e>>2]=c[n>>2];u=c[e>>2]|0;i=v;return u|0}c[o>>2]=xs(c[f>>2]|0,c[g>>2]|0,c[p>>2]|0)|0;if(c[o>>2]|0){c[s>>2]=2405;Ti(24594,s);c[e>>2]=c[o>>2];u=c[e>>2]|0;i=v;return u|0}else{hs(c[g>>2]|0,c[j>>2]|0)|0;c[e>>2]=0;u=c[e>>2]|0;i=v;return u|0}return 0}function vs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=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,v=0,w=0,x=0;x=i;i=i+112|0;u=x+48|0;t=x+40|0;s=x+32|0;w=x+24|0;v=x+16|0;r=x+8|0;q=x;d=x+96|0;e=x+92|0;f=x+88|0;g=x+84|0;h=x+80|0;j=x+76|0;k=x+72|0;l=x+68|0;m=x+64|0;n=x+60|0;o=x+56|0;p=x+52|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[h>>2]=0;if(!(c[f>>2]|0)){c[d>>2]=-2147483647;w=c[d>>2]|0;i=x;return w|0}if(!(c[e>>2]|0)){c[d>>2]=-2147483647;w=c[d>>2]|0;i=x;return w|0}if(!(c[c[e>>2]>>2]|0)){c[d>>2]=-2147483647;w=c[d>>2]|0;i=x;return w|0}c[g>>2]=(c[f>>2]|0)+104+8;c[h>>2]=c[(c[e>>2]|0)+8>>2];c[j>>2]=ms(c[e>>2]|0,0,1835296868)|0;if(c[j>>2]|0){c[q>>2]=2435;Ti(24594,q);c[d>>2]=c[j>>2];w=c[d>>2]|0;i=x;return w|0}c[k>>2]=bs(c[e>>2]|0,0)|0;if(c[k>>2]|0){c[r>>2]=2438;Ti(24594,r);c[d>>2]=c[k>>2];w=c[d>>2]|0;i=x;return w|0}c[l>>2]=bs(c[e>>2]|0,c[(c[g>>2]|0)+12>>2]|0)|0;if(c[l>>2]|0){c[v>>2]=2441;Ti(24594,v);c[d>>2]=c[l>>2];w=c[d>>2]|0;i=x;return w|0}c[m>>2]=bs(c[e>>2]|0,c[(c[g>>2]|0)+16>>2]|0)|0;if(c[m>>2]|0){c[w>>2]=2444;Ti(24594,w);c[d>>2]=c[m>>2];w=c[d>>2]|0;i=x;return w|0}c[n>>2]=bs(c[e>>2]|0,c[(c[g>>2]|0)+20>>2]|0)|0;if(c[n>>2]|0){c[s>>2]=2447;Ti(24594,s);c[d>>2]=c[n>>2];w=c[d>>2]|0;i=x;return w|0}c[o>>2]=bs(c[e>>2]|0,c[(c[g>>2]|0)+24>>2]|0)|0;if(c[o>>2]|0){c[t>>2]=2450;Ti(24594,t);c[d>>2]=c[o>>2];w=c[d>>2]|0;i=x;return w|0}c[p>>2]=bs(c[e>>2]|0,0)|0;if(c[p>>2]|0){c[u>>2]=2453;Ti(24594,u);c[d>>2]=c[p>>2];w=c[d>>2]|0;i=x;return w|0}else{hs(c[e>>2]|0,c[h>>2]|0)|0;c[d>>2]=0;w=c[d>>2]|0;i=x;return w|0}return 0}function ws(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+80|0;p=s+32|0;r=s+24|0;q=s+16|0;o=s+8|0;n=s;d=s+68|0;e=s+64|0;f=s+60|0;g=s+56|0;h=s+52|0;j=s+48|0;k=s+44|0;l=s+40|0;m=s+36|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;if(!(c[f>>2]|0)){c[d>>2]=-2147483647;r=c[d>>2]|0;i=s;return r|0}if(!(c[e>>2]|0)){c[d>>2]=-2147483647;r=c[d>>2]|0;i=s;return r|0}if(!(c[c[e>>2]>>2]|0)){c[d>>2]=-2147483647;r=c[d>>2]|0;i=s;return r|0}c[g>>2]=c[(c[e>>2]|0)+8>>2];c[h>>2]=ms(c[e>>2]|0,0,1751411826)|0;if(c[h>>2]|0){c[n>>2]=2481;Ti(24594,n);c[d>>2]=c[h>>2];r=c[d>>2]|0;i=s;return r|0}c[j>>2]=bs(c[e>>2]|0,0)|0;if(c[j>>2]|0){c[o>>2]=2484;Ti(24594,o);c[d>>2]=c[j>>2];r=c[d>>2]|0;i=s;return r|0}c[k>>2]=bs(c[e>>2]|0,0)|0;if(c[k>>2]|0){c[q>>2]=2487;Ti(24594,q);c[d>>2]=c[k>>2];r=c[d>>2]|0;i=s;return r|0}c[l>>2]=bs(c[e>>2]|0,c[(c[f>>2]|0)+104+40+16>>2]|0)|0;if(c[l>>2]|0){c[r>>2]=2490;Ti(24594,r);c[d>>2]=c[l>>2];r=c[d>>2]|0;i=s;return r|0}c[m>>2]=fs(c[e>>2]|0,24)|0;if(c[m>>2]|0){c[p>>2]=2493;Ti(24594,p);c[d>>2]=c[m>>2];r=c[d>>2]|0;i=s;return r|0}else{hs(c[e>>2]|0,c[g>>2]|0)|0;c[d>>2]=0;r=c[d>>2]|0;i=s;return r|0}return 0}function xs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+64|0;r=s+24|0;q=s+16|0;p=s+8|0;o=s;e=s+60|0;f=s+56|0;g=s+52|0;h=s+48|0;j=s+44|0;k=s+40|0;l=s+36|0;m=s+32|0;n=s+28|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=0;if(!(c[h>>2]|0)){c[e>>2]=-2147483647;r=c[e>>2]|0;i=s;return r|0}if(!(c[g>>2]|0)){c[e>>2]=-2147483647;r=c[e>>2]|0;i=s;return r|0}if(!(c[c[g>>2]>>2]|0)){c[e>>2]=-2147483647;r=c[e>>2]|0;i=s;return r|0}c[j>>2]=c[(c[g>>2]|0)+8>>2];c[k>>2]=ms(c[g>>2]|0,0,1835626086)|0;if(c[k>>2]|0){c[o>>2]=2522;Ti(24594,o);c[e>>2]=c[k>>2];r=c[e>>2]|0;i=s;return r|0}c[l>>2]=ys(c[g>>2]|0,c[h>>2]|0)|0;if(c[l>>2]|0){c[p>>2]=2525;Ti(24594,p);c[e>>2]=c[l>>2];r=c[e>>2]|0;i=s;return r|0}c[m>>2]=zs(c[g>>2]|0,c[h>>2]|0)|0;if(c[m>>2]|0){c[q>>2]=2528;Ti(24594,q);c[e>>2]=c[m>>2];r=c[e>>2]|0;i=s;return r|0}c[n>>2]=As(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(c[n>>2]|0){c[r>>2]=2531;Ti(24594,r);c[e>>2]=c[n>>2];r=c[e>>2]|0;i=s;return r|0}else{hs(c[g>>2]|0,c[j>>2]|0)|0;c[e>>2]=0;r=c[e>>2]|0;i=s;return r|0}return 0}function ys(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=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;u=i;i=i+96|0;o=u+40|0;n=u+32|0;q=u+24|0;p=u+16|0;m=u+8|0;l=u;r=u+80|0;s=u+76|0;d=u+72|0;t=u+68|0;e=u+64|0;f=u+60|0;g=u+56|0;h=u+52|0;j=u+48|0;k=u+44|0;c[s>>2]=a;c[d>>2]=b;c[t>>2]=0;if(!(c[d>>2]|0)){c[r>>2]=-2147483647;t=c[r>>2]|0;i=u;return t|0}if(!(c[s>>2]|0)){c[r>>2]=-2147483647;t=c[r>>2]|0;i=u;return t|0}if(!(c[c[s>>2]>>2]|0)){c[r>>2]=-2147483647;t=c[r>>2]|0;i=u;return t|0}c[t>>2]=c[(c[s>>2]|0)+8>>2];d=c[(c[d>>2]|0)+1272>>2]|0;a:do if((d|0)<1952807028){if((d|0)<1936684398)switch(d|0){case 1751740020:{d=21;break a}default:{d=20;break a}}switch(d|0){case 1936684398:break;default:{d=20;break a}}c[h>>2]=ms(c[s>>2]|0,0,1936549988)|0;if(c[h>>2]|0){c[q>>2]=2575;Ti(24594,q);c[r>>2]=c[h>>2];t=c[r>>2]|0;i=u;return t|0}c[j>>2]=bs(c[s>>2]|0,0)|0;if(c[j>>2]|0){c[n>>2]=2578;Ti(24594,n);c[r>>2]=c[j>>2];t=c[r>>2]|0;i=u;return t|0}c[k>>2]=bs(c[s>>2]|0,0)|0;if(c[k>>2]|0){c[o>>2]=2581;Ti(24594,o);c[r>>2]=c[k>>2];t=c[r>>2]|0;i=u;return t|0}else d=21}else{if((d|0)<1986618469)switch(d|0){case 1952807028:{d=21;break a}default:{d=20;break a}}switch(d|0){case 1986618469:break;default:{d=20;break a}}c[e>>2]=ms(c[s>>2]|0,0,1986881636)|0;if(c[e>>2]|0){c[l>>2]=2563;Ti(24594,l);c[r>>2]=c[e>>2];t=c[r>>2]|0;i=u;return t|0}c[f>>2]=bs(c[s>>2]|0,1)|0;if(c[f>>2]|0){c[m>>2]=2566;Ti(24594,m);c[r>>2]=c[f>>2];t=c[r>>2]|0;i=u;return t|0}c[g>>2]=fs(c[s>>2]|0,8)|0;if(c[g>>2]|0){c[p>>2]=2569;Ti(24594,p);c[r>>2]=c[g>>2];t=c[r>>2]|0;i=u;return t|0}else d=21}while(0);if((d|0)==20){c[r>>2]=0;t=c[r>>2]|0;i=u;return t|0}else if((d|0)==21){hs(c[s>>2]|0,c[t>>2]|0)|0;c[r>>2]=0;t=c[r>>2]|0;i=u;return t|0}return 0}function zs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0;z=i;i=i+112|0;v=z+48|0;u=z+40|0;t=z+32|0;x=z+24|0;w=z+16|0;s=z+8|0;r=z;d=z+100|0;e=z+96|0;f=z+92|0;g=z+88|0;h=z+84|0;q=z+80|0;j=z+76|0;k=z+72|0;l=z+68|0;m=z+64|0;n=z+60|0;o=z+56|0;p=z+52|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[h>>2]=0;c[q>>2]=0;if(!(c[f>>2]|0)){c[d>>2]=-2147483647;y=c[d>>2]|0;i=z;return y|0}if(!(c[e>>2]|0)){c[d>>2]=-2147483647;y=c[d>>2]|0;i=z;return y|0}if(!(c[c[e>>2]>>2]|0)){c[d>>2]=-2147483647;y=c[d>>2]|0;i=z;return y|0}c[g>>2]=c[(c[e>>2]|0)+8>>2];c[j>>2]=ms(c[e>>2]|0,0,1684631142)|0;if(c[j>>2]|0){c[r>>2]=2623;Ti(24594,r);c[d>>2]=c[j>>2];y=c[d>>2]|0;i=z;return y|0}c[h>>2]=c[(c[e>>2]|0)+8>>2];c[k>>2]=ms(c[e>>2]|0,0,1685218662)|0;if(c[k>>2]|0){c[s>>2]=2629;Ti(24594,s);c[d>>2]=c[k>>2];y=c[d>>2]|0;i=z;return y|0}c[l>>2]=bs(c[e>>2]|0,0)|0;if(c[l>>2]|0){c[w>>2]=2632;Ti(24594,w);c[d>>2]=c[l>>2];y=c[d>>2]|0;i=z;return y|0}c[m>>2]=bs(c[e>>2]|0,1)|0;if(c[m>>2]|0){c[x>>2]=2635;Ti(24594,x);c[d>>2]=c[m>>2];y=c[d>>2]|0;i=z;return y|0}c[q>>2]=c[(c[e>>2]|0)+8>>2];if((c[(c[f>>2]|0)+1272>>2]|0)!=1952807028?(c[(c[f>>2]|0)+1272>>2]|0)!=1751740020:0){c[o>>2]=ms(c[e>>2]|0,0,1970433056)|0;if(c[o>>2]|0){c[u>>2]=2649;Ti(24594,u);c[d>>2]=c[o>>2];y=c[d>>2]|0;i=z;return y|0}}else y=17;if((y|0)==17?(c[n>>2]=ms(c[e>>2]|0,0,1634494835)|0,0!=(c[n>>2]|0)):0){c[t>>2]=2645;Ti(24594,t);c[d>>2]=c[n>>2];y=c[d>>2]|0;i=z;return y|0}c[p>>2]=bs(c[e>>2]|0,1)|0;if(c[p>>2]|0){c[v>>2]=2653;Ti(24594,v);c[d>>2]=c[p>>2];y=c[d>>2]|0;i=z;return y|0}else{hs(c[e>>2]|0,c[q>>2]|0)|0;hs(c[e>>2]|0,c[h>>2]|0)|0;hs(c[e>>2]|0,c[g>>2]|0)|0;c[d>>2]=0;y=c[d>>2]|0;i=z;return y|0}return 0}function As(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;A=i;i=i+112|0;x=A+56|0;w=A+48|0;v=A+40|0;u=A+32|0;z=A+24|0;y=A+16|0;t=A+8|0;s=A;e=A+108|0;f=A+104|0;g=A+100|0;h=A+96|0;r=A+92|0;j=A+88|0;k=A+84|0;l=A+80|0;m=A+76|0;n=A+72|0;o=A+68|0;p=A+64|0;q=A+60|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[r>>2]=0;if(!(c[h>>2]|0)){c[e>>2]=-2147483647;z=c[e>>2]|0;i=A;return z|0}if(!(c[g>>2]|0)){c[e>>2]=-2147483647;z=c[e>>2]|0;i=A;return z|0}if(!(c[c[g>>2]>>2]|0)){c[e>>2]=-2147483647;z=c[e>>2]|0;i=A;return z|0}c[r>>2]=c[(c[g>>2]|0)+8>>2];c[j>>2]=ms(c[g>>2]|0,0,1937007212)|0;if(c[j>>2]|0){c[s>>2]=2688;Ti(24594,s);c[e>>2]=c[j>>2];z=c[e>>2]|0;i=A;return z|0}c[k>>2]=Bs(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(c[k>>2]|0){c[t>>2]=2691;Ti(24594,t);c[e>>2]=c[k>>2];z=c[e>>2]|0;i=A;return z|0}c[l>>2]=Ds(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(c[l>>2]|0){c[y>>2]=2694;Ti(24594,y);c[e>>2]=c[l>>2];z=c[e>>2]|0;i=A;return z|0}c[m>>2]=Es(c[g>>2]|0,c[h>>2]|0)|0;if(c[m>>2]|0){c[z>>2]=2697;Ti(24594,z);c[e>>2]=c[m>>2];z=c[e>>2]|0;i=A;return z|0}c[n>>2]=_s(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(c[n>>2]|0){c[u>>2]=2700;Ti(24594,u);c[e>>2]=c[n>>2];z=c[e>>2]|0;i=A;return z|0}c[o>>2]=$s(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(c[o>>2]|0){c[v>>2]=2703;Ti(24594,v);c[e>>2]=c[o>>2];z=c[e>>2]|0;i=A;return z|0}if(1986618469==(c[(c[h>>2]|0)+1272>>2]|0)){c[p>>2]=at(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(c[p>>2]|0){c[w>>2]=2708;Ti(24594,w);c[e>>2]=c[p>>2];z=c[e>>2]|0;i=A;return z|0}if(c[(c[f>>2]|0)+6372>>2]|0?(c[q>>2]=bt(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0,0!=(c[q>>2]|0)):0){c[x>>2]=2713;Ti(24594,x);c[e>>2]=c[q>>2];z=c[e>>2]|0;i=A;return z|0}}hs(c[g>>2]|0,c[r>>2]|0)|0;c[e>>2]=0;z=c[e>>2]|0;i=A;return z|0}function Bs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0;z=i;i=i+112|0;w=z+40|0;v=z+32|0;y=z+24|0;x=z+16|0;u=z+8|0;t=z;e=z+96|0;f=z+92|0;g=z+88|0;h=z+84|0;q=z+80|0;s=z+76|0;r=z+72|0;p=z+68|0;j=z+64|0;k=z+60|0;l=z+56|0;m=z+52|0;n=z+48|0;o=z+44|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[q>>2]=0;c[s>>2]=0;c[r>>2]=0;c[p>>2]=0;if(!(c[h>>2]|0)){c[e>>2]=-2147483647;y=c[e>>2]|0;i=z;return y|0}if(!(c[g>>2]|0)){c[e>>2]=-2147483647;y=c[e>>2]|0;i=z;return y|0}if(!(c[c[g>>2]>>2]|0)){c[e>>2]=-2147483647;y=c[e>>2]|0;i=z;return y|0}if(!(c[f>>2]|0)){c[e>>2]=-2147483647;y=c[e>>2]|0;i=z;return y|0}c[q>>2]=(c[h>>2]|0)+104+88+64+804;c[p>>2]=(c[h>>2]|0)+104+88+64+836;c[s>>2]=c[(c[g>>2]|0)+8>>2];c[j>>2]=ms(c[g>>2]|0,0,1937011827)|0;if(c[j>>2]|0){c[t>>2]=2979;Ti(24594,t);c[e>>2]=c[j>>2];y=c[e>>2]|0;i=z;return y|0}c[k>>2]=bs(c[g>>2]|0,0)|0;if(c[k>>2]|0){c[u>>2]=2982;Ti(24594,u);c[e>>2]=c[k>>2];y=c[e>>2]|0;i=z;return y|0}do if((c[(c[h>>2]|0)+1272>>2]|0)==1936684398){if(144!=(c[(c[f>>2]|0)+8>>2]|0)?145!=(c[(c[f>>2]|0)+8>>2]|0):0)break;c[r>>2]=Ri((c[q>>2]|0)+16|0,-1)|0;if(!(c[r>>2]|0)){c[r>>2]=Ji(8)|0;c[l>>2]=-2147483645;if(!(c[r>>2]|0)){c[x>>2]=3005;Ti(24657,x);c[e>>2]=c[l>>2];y=c[e>>2]|0;i=z;return y|0}Qr(c[r>>2]|0,$(c[(c[p>>2]|0)+12>>2]|0,c[(c[p>>2]|0)+16>>2]|0)|0);Qr((c[r>>2]|0)+4|0,1);c[m>>2]=Qi((c[q>>2]|0)+16|0,c[r>>2]|0,8)|0;if(c[m>>2]|0){c[y>>2]=3014;Ti(24594,y);c[e>>2]=c[m>>2];y=c[e>>2]|0;i=z;return y|0}}else{Qr(c[r>>2]|0,$(c[(c[p>>2]|0)+12>>2]|0,c[(c[p>>2]|0)+16>>2]|0)|0);Qr((c[r>>2]|0)+4|0,1)}c[(c[q>>2]|0)+12>>2]=1}while(0);c[n>>2]=bs(c[g>>2]|0,c[(c[q>>2]|0)+12>>2]|0)|0;if(c[n>>2]|0){c[v>>2]=3021;Ti(24594,v);c[e>>2]=c[n>>2];y=c[e>>2]|0;i=z;return y|0}c[o>>2]=Cs((c[q>>2]|0)+16|0,c[g>>2]|0,8)|0;if(c[o>>2]|0){c[w>>2]=3024;Ti(24594,w);c[e>>2]=c[o>>2];y=c[e>>2]|0;i=z;return y|0}else{hs(c[g>>2]|0,c[s>>2]|0)|0;c[e>>2]=0;y=c[e>>2]|0;i=z;return y|0}return 0}function Cs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;p=q+8|0;o=q;l=q+44|0;e=q+40|0;f=q+36|0;g=q+32|0;k=q+28|0;h=q+24|0;j=q+20|0;m=q+16|0;n=q+12|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[k>>2]=0;c[h>>2]=0;c[j>>2]=0;if(!(c[e>>2]|0)){c[l>>2]=-2147483647;p=c[l>>2]|0;i=q;return p|0}if(!(c[f>>2]|0)){c[l>>2]=-2147483647;p=c[l>>2]|0;i=q;return p|0}if(!(c[c[f>>2]>>2]|0)){c[l>>2]=-2147483647;p=c[l>>2]|0;i=q;return p|0}c[h>>2]=Pi(c[e>>2]|0)|0;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[h>>2]|0)>>>0){e=14;break}c[j>>2]=Ri(c[e>>2]|0,c[k>>2]|0)|0;c[m>>2]=-2147483392;if(!(c[j>>2]|0)){e=10;break}c[n>>2]=ds(c[f>>2]|0,c[j>>2]|0,c[g>>2]|0)|0;if(c[n>>2]|0){e=12;break}c[k>>2]=(c[k>>2]|0)+1}if((e|0)==10){c[o>>2]=2937;Ti(24657,o);c[l>>2]=c[m>>2];p=c[l>>2]|0;i=q;return p|0}else if((e|0)==12){c[p>>2]=2940;Ti(24594,p);c[l>>2]=c[n>>2];p=c[l>>2]|0;i=q;return p|0}else if((e|0)==14){c[l>>2]=0;p=c[l>>2]|0;i=q;return p|0}return 0}function Ds(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=i;i=i+112|0;y=B+40|0;x=B+32|0;z=B+24|0;o=B+16|0;n=B+8|0;m=B;p=B+100|0;e=B+96|0;q=B+92|0;f=B+88|0;r=B+84|0;k=B+80|0;v=B+76|0;l=B+72|0;w=B+68|0;g=B+64|0;h=B+60|0;j=B+56|0;s=B+52|0;t=B+48|0;u=B+44|0;c[e>>2]=a;c[q>>2]=b;c[f>>2]=d;c[r>>2]=0;c[k>>2]=0;c[v>>2]=0;c[l>>2]=0;c[w>>2]=0;if(!(c[f>>2]|0)){c[p>>2]=-2147483647;A=c[p>>2]|0;i=B;return A|0}if(!(c[q>>2]|0)){c[p>>2]=-2147483647;A=c[p>>2]|0;i=B;return A|0}if(!(c[c[q>>2]>>2]|0)){c[p>>2]=-2147483647;A=c[p>>2]|0;i=B;return A|0}if(!(c[e>>2]|0)){c[p>>2]=-2147483647;A=c[p>>2]|0;i=B;return A|0}c[v>>2]=(c[f>>2]|0)+104+88+64+872;c[l>>2]=(c[f>>2]|0)+104+88+64+836;c[w>>2]=c[(c[q>>2]|0)+8>>2];c[g>>2]=ms(c[q>>2]|0,0,1937011555)|0;if(c[g>>2]|0){c[m>>2]=3121;Ti(24594,m);c[p>>2]=c[g>>2];A=c[p>>2]|0;i=B;return A|0}c[h>>2]=bs(c[q>>2]|0,0)|0;if(c[h>>2]|0){c[n>>2]=3124;Ti(24594,n);c[p>>2]=c[h>>2];A=c[p>>2]|0;i=B;return A|0}do if((c[(c[f>>2]|0)+1272>>2]|0)==1936684398){if(144!=(c[(c[e>>2]|0)+8>>2]|0)?145!=(c[(c[e>>2]|0)+8>>2]|0):0){A=18;break}c[k>>2]=c[(c[l>>2]|0)+12>>2];if(c[k>>2]|0){c[(c[v>>2]|0)+16>>2]=1;c[(c[v>>2]|0)+32>>2]=1;c[(c[v>>2]|0)+24>>2]=c[k>>2]}}else A=18;while(0);if((A|0)==18)c[k>>2]=((c[(c[l>>2]|0)+16>>2]|0)>>>0)%1|0;c[j>>2]=bs(c[q>>2]|0,c[(c[v>>2]|0)+12>>2]|0)|0;if(c[j>>2]|0){c[o>>2]=3158;Ti(24594,o);c[p>>2]=c[j>>2];A=c[p>>2]|0;i=B;return A|0}c[r>>2]=0;while(1){e=c[q>>2]|0;if((c[r>>2]|0)>>>0>=(c[(c[v>>2]|0)+12>>2]|0)>>>0){A=30;break}c[s>>2]=bs(e,c[(c[v>>2]|0)+16+(c[r>>2]<<2)>>2]|0)|0;if(c[s>>2]|0){A=24;break}c[t>>2]=bs(c[q>>2]|0,c[(c[v>>2]|0)+24+(c[r>>2]<<2)>>2]|0)|0;if(c[t>>2]|0){A=26;break}c[u>>2]=bs(c[q>>2]|0,c[(c[v>>2]|0)+32+(c[r>>2]<<2)>>2]|0)|0;if(c[u>>2]|0){A=28;break}c[r>>2]=(c[r>>2]|0)+1}if((A|0)==24){c[z>>2]=3163;Ti(24594,z);c[p>>2]=c[s>>2];A=c[p>>2]|0;i=B;return A|0}else if((A|0)==26){c[x>>2]=3165;Ti(24594,x);c[p>>2]=c[t>>2];A=c[p>>2]|0;i=B;return A|0}else if((A|0)==28){c[y>>2]=3167;Ti(24594,y);c[p>>2]=c[u>>2];A=c[p>>2]|0;i=B;return A|0}else if((A|0)==30){hs(e,c[w>>2]|0)|0;c[p>>2]=0;A=c[p>>2]|0;i=B;return A|0}return 0}function Es(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+160|0;A=F+80|0;z=F+72|0;y=F+64|0;x=F+56|0;w=F+48|0;v=F+40|0;u=F+32|0;B=F+24|0;k=F+16|0;j=F+8|0;h=F;C=F+144|0;D=F+140|0;l=F+136|0;E=F+132|0;g=F+128|0;d=F+124|0;e=F+120|0;f=F+116|0;n=F+112|0;o=F+108|0;p=F+104|0;q=F+100|0;r=F+96|0;s=F+92|0;t=F+88|0;m=F+84|0;c[D>>2]=a;c[l>>2]=b;c[E>>2]=0;c[g>>2]=0;if(!(c[l>>2]|0)){c[C>>2]=-2147483647;E=c[C>>2]|0;i=F;return E|0}if(!(c[D>>2]|0)){c[C>>2]=-2147483647;E=c[C>>2]|0;i=F;return E|0}if(!(c[c[D>>2]>>2]|0)){c[C>>2]=-2147483647;E=c[C>>2]|0;i=F;return E|0}c[E>>2]=c[(c[D>>2]|0)+8>>2];c[g>>2]=(c[l>>2]|0)+104+88+64+8;c[d>>2]=ms(c[D>>2]|0,0,1937011556)|0;if(c[d>>2]|0){c[h>>2]=2745;Ti(24594,h);c[C>>2]=c[d>>2];E=c[C>>2]|0;i=F;return E|0}c[e>>2]=bs(c[D>>2]|0,0)|0;if(c[e>>2]|0){c[j>>2]=2748;Ti(24594,j);c[C>>2]=c[e>>2];E=c[C>>2]|0;i=F;return E|0}c[f>>2]=bs(c[D>>2]|0,c[(c[g>>2]|0)+12>>2]|0)|0;if(c[f>>2]|0){c[k>>2]=2751;Ti(24594,k);c[C>>2]=c[f>>2];E=c[C>>2]|0;i=F;return E|0}a=c[(c[g>>2]|0)+16>>2]|0;a:do if((a|0)<1836070006)if((a|0)<1752589105)if((a|0)<1635148593){switch(a|0){case 1634492791:break;default:{a=30;break a}}c[q>>2]=Ss(c[D>>2]|0,c[l>>2]|0,1634492791)|0;if(!(c[q>>2]|0)){a=31;break}c[w>>2]=2772;Ti(24594,w);c[C>>2]=c[q>>2];E=c[C>>2]|0;i=F;return E|0}else{switch(a|0){case 1635148593:break;default:{a=30;break a}}c[n>>2]=Fs(c[D>>2]|0,c[l>>2]|0)|0;if(!(c[n>>2]|0)){a=31;break}c[B>>2]=2757;Ti(24594,B);c[C>>2]=c[n>>2];E=c[C>>2]|0;i=F;return E|0}else if((a|0)<1836069985){switch(a|0){case 1752589105:break;default:{a=30;break a}}c[s>>2]=Ts(c[D>>2]|0,c[l>>2]|0)|0;if(!(c[s>>2]|0)){a=31;break}c[y>>2]=2782;Ti(24594,y);c[C>>2]=c[s>>2];E=c[C>>2]|0;i=F;return E|0}else{switch(a|0){case 1836069985:break;default:{a=30;break a}}c[p>>2]=Rs(c[D>>2]|0,c[l>>2]|0)|0;if(!(c[p>>2]|0)){a=31;break}c[v>>2]=2767;Ti(24594,v);c[C>>2]=c[p>>2];E=c[C>>2]|0;i=F;return E|0}else if((a|0)<1952807028)if((a|0)<1920233504){switch(a|0){case 1836070006:break;default:{a=30;break a}}c[o>>2]=Ls(c[D>>2]|0,c[l>>2]|0)|0;if(!(c[o>>2]|0)){a=31;break}c[u>>2]=2762;Ti(24594,u);c[C>>2]=c[o>>2];E=c[C>>2]|0;i=F;return E|0}else{switch(a|0){case 1920233504:break;default:{a=30;break a}}c[m>>2]=Zs(c[D>>2]|0,c[l>>2]|0,1920233504)|0;if(!(c[m>>2]|0)){a=31;break}c[A>>2]=2792;Ti(24594,A);c[C>>2]=c[m>>2];E=c[C>>2]|0;i=F;return E|0}else if((a|0)<1970037111){switch(a|0){case 1952807028:break;default:{a=30;break a}}c[t>>2]=Ys(c[D>>2]|0,c[l>>2]|0,1952807028)|0;if(!(c[t>>2]|0)){a=31;break}c[z>>2]=2787;Ti(24594,z);c[C>>2]=c[t>>2];E=c[C>>2]|0;i=F;return E|0}else{switch(a|0){case 1970037111:break;default:{a=30;break a}}c[r>>2]=Ss(c[D>>2]|0,c[l>>2]|0,1970037111)|0;if(!(c[r>>2]|0)){a=31;break}c[x>>2]=2777;Ti(24594,x);c[C>>2]=c[r>>2];E=c[C>>2]|0;i=F;return E|0}while(0);if((a|0)==30){c[C>>2]=-2147483646;E=c[C>>2]|0;i=F;return E|0}else if((a|0)==31){hs(c[D>>2]|0,c[E>>2]|0)|0;c[C>>2]=0;E=c[C>>2]|0;i=F;return E|0}return 0}function Fs(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+48|0;n=o+16|0;m=o+8|0;l=o;d=o+44|0;e=o+40|0;f=o+36|0;g=o+32|0;h=o+28|0;j=o+24|0;k=o+20|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;if(!(c[f>>2]|0)){c[d>>2]=-2147483647;n=c[d>>2]|0;i=o;return n|0}if(!(c[e>>2]|0)){c[d>>2]=-2147483647;n=c[d>>2]|0;i=o;return n|0}if(!(c[c[e>>2]>>2]|0)){c[d>>2]=-2147483647;n=c[d>>2]|0;i=o;return n|0}c[g>>2]=c[(c[e>>2]|0)+8>>2];c[h>>2]=ms(c[e>>2]|0,0,1635148593)|0;if(c[h>>2]|0){c[l>>2]=3336;Ti(24594,l);c[d>>2]=c[h>>2];n=c[d>>2]|0;i=o;return n|0}c[j>>2]=Gs(c[e>>2]|0,(c[f>>2]|0)+104+88+64+8+20+8|0)|0;if(c[j>>2]|0){c[m>>2]=3339;Ti(24594,m);c[d>>2]=c[j>>2];n=c[d>>2]|0;i=o;return n|0}c[k>>2]=Is(c[e>>2]|0,c[f>>2]|0)|0;if(c[k>>2]|0){c[n>>2]=3342;Ti(24594,n);c[d>>2]=c[k>>2];n=c[d>>2]|0;i=o;return n|0}else{hs(c[e>>2]|0,c[g>>2]|0)|0;c[d>>2]=0;n=c[d>>2]|0;i=o;return n|0}return 0}function Gs(a,d){a=a|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=i;i=i+160|0;D=G+88|0;C=G+80|0;B=G+72|0;A=G+64|0;z=G+56|0;y=G+48|0;x=G+40|0;w=G+32|0;F=G+24|0;E=G+16|0;v=G+8|0;u=G;e=G+148|0;f=G+144|0;g=G+140|0;h=G+136|0;j=G+132|0;m=G+128|0;n=G+124|0;o=G+120|0;p=G+116|0;q=G+112|0;r=G+108|0;s=G+104|0;t=G+100|0;k=G+96|0;l=G+92|0;c[f>>2]=a;c[g>>2]=d;if(!(c[g>>2]|0)){c[e>>2]=-2147483647;F=c[e>>2]|0;i=G;return F|0}if(!(c[f>>2]|0)){c[e>>2]=-2147483647;F=c[e>>2]|0;i=G;return F|0}if(!(c[c[f>>2]>>2]|0)){c[e>>2]=-2147483647;F=c[e>>2]|0;i=G;return F|0}c[h>>2]=bs(c[f>>2]|0,0)|0;if(c[h>>2]|0){c[u>>2]=3894;Ti(24594,u);c[e>>2]=c[h>>2];F=c[e>>2]|0;i=G;return F|0}c[j>>2]=bs(c[f>>2]|0,1)|0;if(c[j>>2]|0){c[v>>2]=3897;Ti(24594,v);c[e>>2]=c[j>>2];F=c[e>>2]|0;i=G;return F|0}c[m>>2]=fs(c[f>>2]|0,16)|0;if(c[m>>2]|0){c[E>>2]=3900;Ti(24594,E);c[e>>2]=c[m>>2];F=c[e>>2]|0;i=G;return F|0}c[n>>2]=ls(c[f>>2]|0,b[(c[g>>2]|0)+24>>1]|0)|0;if(c[n>>2]|0){c[F>>2]=3903;Ti(24594,F);c[e>>2]=c[n>>2];F=c[e>>2]|0;i=G;return F|0}c[o>>2]=ls(c[f>>2]|0,b[(c[g>>2]|0)+26>>1]|0)|0;if(c[o>>2]|0){c[w>>2]=3906;Ti(24594,w);c[e>>2]=c[o>>2];F=c[e>>2]|0;i=G;return F|0}c[p>>2]=bs(c[f>>2]|0,4718592)|0;if(c[p>>2]|0){c[x>>2]=3909;Ti(24594,x);c[e>>2]=c[p>>2];F=c[e>>2]|0;i=G;return F|0}c[q>>2]=bs(c[f>>2]|0,4718592)|0;if(c[q>>2]|0){c[y>>2]=3912;Ti(24594,y);c[e>>2]=c[q>>2];F=c[e>>2]|0;i=G;return F|0}c[r>>2]=bs(c[f>>2]|0,0)|0;if(c[r>>2]|0){c[z>>2]=3915;Ti(24594,z);c[e>>2]=c[r>>2];F=c[e>>2]|0;i=G;return F|0}c[s>>2]=ls(c[f>>2]|0,1)|0;if(c[s>>2]|0){c[A>>2]=3918;Ti(24594,A);c[e>>2]=c[s>>2];F=c[e>>2]|0;i=G;return F|0}c[t>>2]=Hs(c[f>>2]|0,c[g>>2]|0)|0;if(c[t>>2]|0){c[B>>2]=3921;Ti(24594,B);c[e>>2]=c[t>>2];F=c[e>>2]|0;i=G;return F|0}c[k>>2]=ls(c[f>>2]|0,24)|0;if(c[k>>2]|0){c[C>>2]=3924;Ti(24594,C);c[e>>2]=c[k>>2];F=c[e>>2]|0;i=G;return F|0}c[l>>2]=ls(c[f>>2]|0,-1)|0;if(c[l>>2]|0){c[D>>2]=3927;Ti(24594,D);c[e>>2]=c[l>>2];F=c[e>>2]|0;i=G;return F|0}else{c[e>>2]=0;F=c[e>>2]|0;i=G;return F|0}return 0}function Hs(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[h>>2]=0;if((c[(c[f>>2]|0)+4>>2]|0)>>>0<((c[(c[f>>2]|0)+8>>2]|0)+32|0)>>>0){c[e>>2]=-2147483645;j=c[e>>2]|0;i=k;return j|0}c[j>>2]=c[(c[f>>2]|0)+8>>2];while(1){if((c[h>>2]|0)>>>0>=32)break;d=a[(c[g>>2]|0)+42+(c[h>>2]|0)>>0]|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[c[f>>2]>>2]|0)+b>>0]=d;c[h>>2]=(c[h>>2]|0)+1}j=(c[f>>2]|0)+8|0;c[j>>2]=(c[j>>2]|0)+32;c[e>>2]=0;j=c[e>>2]|0;i=k;return j|0}function Is(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+64|0;p=q+16|0;o=q+8|0;n=q;e=q+48|0;f=q+44|0;g=q+40|0;h=q+36|0;j=q+32|0;k=q+28|0;l=q+24|0;m=q+20|0;c[f>>2]=b;c[g>>2]=d;c[h>>2]=0;c[j>>2]=0;if(!(c[g>>2]|0)){c[e>>2]=-2147483647;p=c[e>>2]|0;i=q;return p|0}if(!(c[f>>2]|0)){c[e>>2]=-2147483647;p=c[e>>2]|0;i=q;return p|0}if(!(c[c[f>>2]>>2]|0)){c[e>>2]=-2147483647;p=c[e>>2]|0;i=q;return p|0}c[h>>2]=(c[g>>2]|0)+104+88+64+8+20+88;c[j>>2]=c[(c[f>>2]|0)+8>>2];c[k>>2]=ms(c[f>>2]|0,0,1635148611)|0;if(c[k>>2]|0){c[n>>2]=3820;Ti(24594,n);c[e>>2]=c[k>>2];p=c[e>>2]|0;i=q;return p|0}if(((c[(c[f>>2]|0)+8>>2]|0)+5|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0){c[e>>2]=-2147483645;p=c[e>>2]|0;i=q;return p|0}n=(c[f>>2]|0)+8|0;d=c[n>>2]|0;c[n>>2]=d+1;a[(c[c[f>>2]>>2]|0)+d>>0]=1;d=a[(c[h>>2]|0)+16+1>>0]|0;n=(c[f>>2]|0)+8|0;k=c[n>>2]|0;c[n>>2]=k+1;a[(c[c[f>>2]>>2]|0)+k>>0]=d;k=a[(c[h>>2]|0)+16+2>>0]|0;d=(c[f>>2]|0)+8|0;n=c[d>>2]|0;c[d>>2]=n+1;a[(c[c[f>>2]>>2]|0)+n>>0]=k;n=a[(c[h>>2]|0)+16+3>>0]|0;k=(c[f>>2]|0)+8|0;d=c[k>>2]|0;c[k>>2]=d+1;a[(c[c[f>>2]>>2]|0)+d>>0]=n;d=(c[f>>2]|0)+8|0;n=c[d>>2]|0;c[d>>2]=n+1;a[(c[c[f>>2]>>2]|0)+n>>0]=3;c[l>>2]=Js(c[f>>2]|0,c[h>>2]|0)|0;if(c[l>>2]|0){c[o>>2]=3836;Ti(24594,o);c[e>>2]=c[l>>2];p=c[e>>2]|0;i=q;return p|0}c[m>>2]=Ks(c[f>>2]|0,c[h>>2]|0)|0;if(c[m>>2]|0){c[p>>2]=3839;Ti(24594,p);c[e>>2]=c[m>>2];p=c[e>>2]|0;i=q;return p|0}else{hs(c[f>>2]|0,c[j>>2]|0)|0;c[e>>2]=0;p=c[e>>2]|0;i=q;return p|0}return 0}function Js(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;l=n+8|0;m=n+4|0;k=n;c[h>>2]=d;c[j>>2]=f;c[l>>2]=0;c[m>>2]=0;c[k>>2]=(e[(c[j>>2]|0)+14>>1]|0)+3;if((c[(c[h>>2]|0)+4>>2]|0)>>>0<((c[(c[h>>2]|0)+8>>2]|0)+(c[k>>2]|0)|0)>>>0){c[g>>2]=-2147483645;m=c[g>>2]|0;i=n;return m|0}c[m>>2]=c[(c[h>>2]|0)+8>>2];f=a[(c[j>>2]|0)+13>>0]|0;d=c[m>>2]|0;c[m>>2]=d+1;a[(c[c[h>>2]>>2]|0)+d>>0]=f;d=(e[(c[j>>2]|0)+14>>1]|0)>>8&255;f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=d;f=b[(c[j>>2]|0)+14>>1]&255;d=c[m>>2]|0;c[m>>2]=d+1;a[(c[c[h>>2]>>2]|0)+d>>0]=f;while(1){if((c[l>>2]|0)>=(e[(c[j>>2]|0)+14>>1]|0|0))break;f=a[(c[j>>2]|0)+16+(c[l>>2]|0)>>0]|0;d=c[m>>2]|0;c[m>>2]=d+1;a[(c[c[h>>2]>>2]|0)+d>>0]=f;c[l>>2]=(c[l>>2]|0)+1}m=(c[h>>2]|0)+8|0;c[m>>2]=(c[m>>2]|0)+(c[k>>2]|0);c[g>>2]=0;m=c[g>>2]|0;i=n;return m|0}function Ks(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;l=n+8|0;m=n+4|0;k=n;c[h>>2]=d;c[j>>2]=f;c[l>>2]=0;c[m>>2]=0;c[k>>2]=(e[(c[j>>2]|0)+274>>1]|0)+3;if((c[(c[h>>2]|0)+4>>2]|0)>>>0<((c[(c[h>>2]|0)+8>>2]|0)+(c[k>>2]|0)|0)>>>0){c[g>>2]=-2147483645;m=c[g>>2]|0;i=n;return m|0}c[m>>2]=c[(c[h>>2]|0)+8>>2];f=a[(c[j>>2]|0)+272>>0]|0;d=c[m>>2]|0;c[m>>2]=d+1;a[(c[c[h>>2]>>2]|0)+d>>0]=f;d=(e[(c[j>>2]|0)+274>>1]|0)>>8&255;f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=d;f=b[(c[j>>2]|0)+274>>1]&255;d=c[m>>2]|0;c[m>>2]=d+1;a[(c[c[h>>2]>>2]|0)+d>>0]=f;while(1){if((c[l>>2]|0)>=(e[(c[j>>2]|0)+274>>1]|0|0))break;f=a[(c[j>>2]|0)+276+(c[l>>2]|0)>>0]|0;d=c[m>>2]|0;c[m>>2]=d+1;a[(c[c[h>>2]>>2]|0)+d>>0]=f;c[l>>2]=(c[l>>2]|0)+1}m=(c[h>>2]|0)+8|0;c[m>>2]=(c[m>>2]|0)+(c[k>>2]|0);c[g>>2]=0;m=c[g>>2]|0;i=n;return m|0}function Ls(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+48|0;n=o+16|0;m=o+8|0;l=o;d=o+44|0;e=o+40|0;f=o+36|0;g=o+32|0;h=o+28|0;j=o+24|0;k=o+20|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;if(!(c[f>>2]|0)){c[d>>2]=-2147483647;n=c[d>>2]|0;i=o;return n|0}if(!(c[e>>2]|0)){c[d>>2]=-2147483647;n=c[d>>2]|0;i=o;return n|0}if(!(c[c[e>>2]>>2]|0)){c[d>>2]=-2147483647;n=c[d>>2]|0;i=o;return n|0}c[g>>2]=c[(c[e>>2]|0)+8>>2];c[h>>2]=ms(c[e>>2]|0,0,1836070006)|0;if(c[h>>2]|0){c[l>>2]=3483;Ti(24594,l);c[d>>2]=c[h>>2];n=c[d>>2]|0;i=o;return n|0}c[j>>2]=Gs(c[e>>2]|0,(c[f>>2]|0)+104+88+64+8+20+8|0)|0;if(c[j>>2]|0){c[m>>2]=3486;Ti(24594,m);c[d>>2]=c[j>>2];n=c[d>>2]|0;i=o;return n|0}c[k>>2]=Ms(c[e>>2]|0,c[f>>2]|0,(c[f>>2]|0)+104+88+64+8+20+88|0)|0;if(c[k>>2]|0){c[n>>2]=3489;Ti(24594,n);c[d>>2]=c[k>>2];n=c[d>>2]|0;i=o;return n|0}else{hs(c[e>>2]|0,c[g>>2]|0)|0;c[d>>2]=0;n=c[d>>2]|0;i=o;return n|0}return 0}function Ms(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+64|0;p=q+16|0;o=q+8|0;n=q;e=q+48|0;f=q+44|0;g=q+40|0;h=q+36|0;j=q+32|0;k=q+28|0;l=q+24|0;m=q+20|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=0;if(!(c[f>>2]|0)){c[e>>2]=-2147483647;p=c[e>>2]|0;i=q;return p|0}if(!(c[c[f>>2]>>2]|0)){c[e>>2]=-2147483647;p=c[e>>2]|0;i=q;return p|0}c[j>>2]=c[(c[f>>2]|0)+8>>2];c[k>>2]=ms(c[f>>2]|0,0,1702061171)|0;if(c[k>>2]|0){c[n>>2]=4126;Ti(24594,n);c[e>>2]=c[k>>2];p=c[e>>2]|0;i=q;return p|0}c[l>>2]=bs(c[f>>2]|0,0)|0;if(c[l>>2]|0){c[o>>2]=4129;Ti(24594,o);c[e>>2]=c[l>>2];p=c[e>>2]|0;i=q;return p|0}c[m>>2]=Ns(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(c[m>>2]|0){c[p>>2]=4132;Ti(24594,p);c[e>>2]=c[m>>2];p=c[e>>2]|0;i=q;return p|0}else{hs(c[f>>2]|0,c[j>>2]|0)|0;c[e>>2]=0;p=c[e>>2]|0;i=q;return p|0}return 0}function Ns(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;p=q+8|0;o=q;f=q+40|0;g=q+36|0;h=q+32|0;j=q+28|0;l=q+24|0;k=q+20|0;m=q+16|0;n=q+12|0;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[l>>2]=c[(c[g>>2]|0)+8>>2];c[k>>2]=0;if(((c[(c[g>>2]|0)+8>>2]|0)+5|0)>>>0>(c[(c[g>>2]|0)+4>>2]|0)>>>0){c[f>>2]=-2147483645;p=c[f>>2]|0;i=q;return p|0}d=c[l>>2]|0;c[l>>2]=d+1;a[(c[c[g>>2]>>2]|0)+d>>0]=3;if(1936684398==(c[(c[h>>2]|0)+1272>>2]|0)){d=c[l>>2]|0;c[l>>2]=d+1;a[(c[c[g>>2]>>2]|0)+d>>0]=-128;d=c[l>>2]|0;c[l>>2]=d+1;a[(c[c[g>>2]>>2]|0)+d>>0]=-128;d=c[l>>2]|0;c[l>>2]=d+1;a[(c[c[g>>2]>>2]|0)+d>>0]=-128}c[k>>2]=c[l>>2];d=c[l>>2]|0;c[l>>2]=d+1;a[(c[c[g>>2]>>2]|0)+d>>0]=0;d=c[l>>2]|0;c[l>>2]=d+1;a[(c[c[g>>2]>>2]|0)+d>>0]=0;d=c[l>>2]|0;c[l>>2]=d+1;a[(c[c[g>>2]>>2]|0)+d>>0]=0;d=c[l>>2]|0;c[l>>2]=d+1;a[(c[c[g>>2]>>2]|0)+d>>0]=31;c[(c[g>>2]|0)+8>>2]=c[l>>2];c[m>>2]=Os(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;if(c[m>>2]|0){c[o>>2]=4095;Ti(24594,o);c[f>>2]=c[m>>2];p=c[f>>2]|0;i=q;return p|0}c[n>>2]=Qs(c[g>>2]|0,c[(c[h>>2]|0)+1272>>2]|0)|0;if(c[n>>2]|0){c[p>>2]=4098;Ti(24594,p);c[f>>2]=c[n>>2];p=c[f>>2]|0;i=q;return p|0}else{a[(c[c[g>>2]>>2]|0)+(c[k>>2]|0)>>0]=(c[(c[g>>2]|0)+8>>2]|0)-(c[k>>2]|0)-1;c[f>>2]=0;p=c[f>>2]|0;i=q;return p|0}return 0}function Os(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=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,v=0,w=0;w=i;i=i+80|0;v=w+24|0;u=w+16|0;t=w+8|0;s=w;f=w+72|0;g=w+68|0;h=w+64|0;j=w+60|0;q=w+56|0;r=w+52|0;l=w+48|0;k=w+44|0;m=w+40|0;n=w+36|0;o=w+32|0;p=w+28|0;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[q>>2]=0;c[r>>2]=c[(c[h>>2]|0)+1272>>2];c[l>>2]=c[(c[g>>2]|0)+8>>2];c[k>>2]=0;if(((c[(c[g>>2]|0)+8>>2]|0)+14|0)>>>0>(c[(c[g>>2]|0)+4>>2]|0)>>>0){c[f>>2]=-2147483645;v=c[f>>2]|0;i=w;return v|0}d=c[l>>2]|0;c[l>>2]=d+1;a[(c[c[g>>2]>>2]|0)+d>>0]=4;if(1936684398==(c[(c[h>>2]|0)+1272>>2]|0)){d=c[l>>2]|0;c[l>>2]=d+1;a[(c[c[g>>2]>>2]|0)+d>>0]=-128;d=c[l>>2]|0;c[l>>2]=d+1;a[(c[c[g>>2]>>2]|0)+d>>0]=-128;d=c[l>>2]|0;c[l>>2]=d+1;a[(c[c[g>>2]>>2]|0)+d>>0]=-128}c[k>>2]=c[l>>2];b=c[l>>2]|0;c[l>>2]=b+1;a[(c[c[g>>2]>>2]|0)+b>>0]=0;b=(1986618469==(c[r>>2]|0)?32:64)&255;d=c[l>>2]|0;c[l>>2]=d+1;a[(c[c[g>>2]>>2]|0)+d>>0]=b;c[q>>2]=1986618469==(c[r>>2]|0)?4:5;d=(c[q>>2]<<2&252|1)&255;r=c[l>>2]|0;c[l>>2]=r+1;a[(c[c[g>>2]>>2]|0)+r>>0]=d;c[(c[g>>2]|0)+8>>2]=c[l>>2];c[m>>2]=fs(c[g>>2]|0,3)|0;if(c[m>>2]|0){c[s>>2]=4012;Ti(24594,s);c[f>>2]=c[m>>2];v=c[f>>2]|0;i=w;return v|0}c[n>>2]=bs(c[g>>2]|0,8388608)|0;if(c[n>>2]|0){c[t>>2]=4013;Ti(24594,t);c[f>>2]=c[n>>2];v=c[f>>2]|0;i=w;return v|0}c[o>>2]=bs(c[g>>2]|0,0)|0;if(c[o>>2]|0){c[u>>2]=4014;Ti(24594,u);c[f>>2]=c[o>>2];v=c[f>>2]|0;i=w;return v|0}c[p>>2]=Ps(c[g>>2]|0,c[j>>2]|0,c[(c[h>>2]|0)+1272>>2]|0)|0;if(c[p>>2]|0){c[v>>2]=4017;Ti(24594,v);c[f>>2]=c[p>>2];v=c[f>>2]|0;i=w;return v|0}else{a[(c[c[g>>2]>>2]|0)+(c[k>>2]|0)>>0]=(c[(c[g>>2]|0)+8>>2]|0)-(c[k>>2]|0)-1;c[f>>2]=0;v=c[f>>2]|0;i=w;return v|0}return 0}function Ps(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=0;c[m>>2]=c[(c[h>>2]|0)+8>>2];if(((c[(c[h>>2]|0)+8>>2]|0)+(d[(c[j>>2]|0)+33>>0]|0)+2|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>>>0){c[g>>2]=-2147483645;f=c[g>>2]|0;i=n;return f|0}f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=5;if(1936684398==(c[k>>2]|0)){f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=-128;f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=-128;f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=-128}b=a[(c[j>>2]|0)+33>>0]|0;f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=b;while(1){if((c[l>>2]|0)>>>0>=(d[(c[j>>2]|0)+33>>0]|0)>>>0)break;b=a[(c[j>>2]|0)+34+(c[l>>2]|0)>>0]|0;f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=b;c[l>>2]=(c[l>>2]|0)+1}c[(c[h>>2]|0)+8>>2]=c[m>>2];c[g>>2]=0;f=c[g>>2]|0;i=n;return f|0}function Qs(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[f>>2]|0)+8>>2];if(((c[(c[f>>2]|0)+8>>2]|0)+3|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0){c[e>>2]=-2147483645;d=c[e>>2]|0;i=j;return d|0}d=c[h>>2]|0;c[h>>2]=d+1;a[(c[c[f>>2]>>2]|0)+d>>0]=6;if(1936684398==(c[g>>2]|0)){d=c[h>>2]|0;c[h>>2]=d+1;a[(c[c[f>>2]>>2]|0)+d>>0]=-128;d=c[h>>2]|0;c[h>>2]=d+1;a[(c[c[f>>2]>>2]|0)+d>>0]=-128;d=c[h>>2]|0;c[h>>2]=d+1;a[(c[c[f>>2]>>2]|0)+d>>0]=-128}d=c[h>>2]|0;c[h>>2]=d+1;a[(c[c[f>>2]>>2]|0)+d>>0]=1;d=c[h>>2]|0;c[h>>2]=d+1;a[(c[c[f>>2]>>2]|0)+d>>0]=2;c[(c[f>>2]|0)+8>>2]=c[h>>2];c[e>>2]=0;d=c[e>>2]|0;i=j;return d|0}function Rs(a,d){a=a|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=i;i=i+128|0;z=C+64|0;y=C+56|0;x=C+48|0;w=C+40|0;v=C+32|0;B=C+24|0;A=C+16|0;u=C+8|0;t=C;e=C+120|0;f=C+116|0;g=C+112|0;h=C+108|0;j=C+104|0;k=C+100|0;l=C+96|0;m=C+92|0;n=C+88|0;o=C+84|0;p=C+80|0;q=C+76|0;r=C+72|0;s=C+68|0;c[f>>2]=a;c[g>>2]=d;c[h>>2]=0;c[j>>2]=0;if(!(c[g>>2]|0)){c[e>>2]=-2147483647;B=c[e>>2]|0;i=C;return B|0}if(!(c[f>>2]|0)){c[e>>2]=-2147483647;B=c[e>>2]|0;i=C;return B|0}if(!(c[c[f>>2]>>2]|0)){c[e>>2]=-2147483647;B=c[e>>2]|0;i=C;return B|0}c[h>>2]=(c[g>>2]|0)+104+88+64+8+20;c[j>>2]=c[(c[f>>2]|0)+8>>2];c[k>>2]=ms(c[f>>2]|0,0,1836069985)|0;if(c[k>>2]|0){c[t>>2]=3519;Ti(24594,t);c[e>>2]=c[k>>2];B=c[e>>2]|0;i=C;return B|0}c[l>>2]=bs(c[f>>2]|0,0)|0;if(c[l>>2]|0){c[u>>2]=3522;Ti(24594,u);c[e>>2]=c[l>>2];B=c[e>>2]|0;i=C;return B|0}c[m>>2]=bs(c[f>>2]|0,1)|0;if(c[m>>2]|0){c[A>>2]=3525;Ti(24594,A);c[e>>2]=c[m>>2];B=c[e>>2]|0;i=C;return B|0}c[n>>2]=fs(c[f>>2]|0,8)|0;if(c[n>>2]|0){c[B>>2]=3528;Ti(24594,B);c[e>>2]=c[n>>2];B=c[e>>2]|0;i=C;return B|0}c[o>>2]=ls(c[f>>2]|0,b[(c[h>>2]|0)+24>>1]|0)|0;if(c[o>>2]|0){c[v>>2]=3531;Ti(24594,v);c[e>>2]=c[o>>2];B=c[e>>2]|0;i=C;return B|0}c[p>>2]=ls(c[f>>2]|0,b[(c[h>>2]|0)+26>>1]|0)|0;if(c[p>>2]|0){c[w>>2]=3534;Ti(24594,w);c[e>>2]=c[p>>2];B=c[e>>2]|0;i=C;return B|0}c[q>>2]=bs(c[f>>2]|0,0)|0;if(c[q>>2]|0){c[x>>2]=3537;Ti(24594,x);c[e>>2]=c[q>>2];B=c[e>>2]|0;i=C;return B|0}c[r>>2]=bs(c[f>>2]|0,c[(c[h>>2]|0)+32>>2]|0)|0;if(c[r>>2]|0){c[y>>2]=3540;Ti(24594,y);c[e>>2]=c[r>>2];B=c[e>>2]|0;i=C;return B|0}c[s>>2]=Ms(c[f>>2]|0,c[g>>2]|0,(c[g>>2]|0)+104+88+64+8+20+36|0)|0;if(c[s>>2]|0){c[z>>2]=3543;Ti(24594,z);c[e>>2]=c[s>>2];B=c[e>>2]|0;i=C;return B|0}else{hs(c[f>>2]|0,c[j>>2]|0)|0;c[e>>2]=0;B=c[e>>2]|0;i=C;return B|0}return 0}function Ss(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=i;i=i+128|0;z=C+56|0;y=C+48|0;x=C+40|0;w=C+32|0;B=C+24|0;A=C+16|0;v=C+8|0;u=C;f=C+112|0;g=C+108|0;h=C+104|0;j=C+100|0;k=C+96|0;l=C+92|0;m=C+88|0;n=C+84|0;o=C+80|0;p=C+76|0;q=C+72|0;r=C+68|0;s=C+64|0;t=C+60|0;c[g>>2]=a;c[h>>2]=d;c[j>>2]=e;c[k>>2]=0;c[l>>2]=0;if(!(c[h>>2]|0)){c[f>>2]=-2147483647;B=c[f>>2]|0;i=C;return B|0}if(!(c[g>>2]|0)){c[f>>2]=-2147483647;B=c[f>>2]|0;i=C;return B|0}if(!(c[c[g>>2]>>2]|0)){c[f>>2]=-2147483647;B=c[f>>2]|0;i=C;return B|0}c[k>>2]=(c[h>>2]|0)+104+88+64+8+20;c[l>>2]=c[(c[g>>2]|0)+8>>2];c[m>>2]=ms(c[g>>2]|0,0,c[j>>2]|0)|0;if(c[m>>2]|0){c[u>>2]=3573;Ti(24594,u);c[f>>2]=c[m>>2];B=c[f>>2]|0;i=C;return B|0}c[n>>2]=bs(c[g>>2]|0,0)|0;if(c[n>>2]|0){c[v>>2]=3576;Ti(24594,v);c[f>>2]=c[n>>2];B=c[f>>2]|0;i=C;return B|0}c[o>>2]=bs(c[g>>2]|0,1)|0;if(c[o>>2]|0){c[A>>2]=3579;Ti(24594,A);c[f>>2]=c[o>>2];B=c[f>>2]|0;i=C;return B|0}c[p>>2]=fs(c[g>>2]|0,8)|0;if(c[p>>2]|0){c[B>>2]=3582;Ti(24594,B);c[f>>2]=c[p>>2];B=c[f>>2]|0;i=C;return B|0}c[q>>2]=ls(c[g>>2]|0,b[(c[k>>2]|0)+24>>1]|0)|0;if(c[q>>2]|0){c[w>>2]=3585;Ti(24594,w);c[f>>2]=c[q>>2];B=c[f>>2]|0;i=C;return B|0}c[r>>2]=ls(c[g>>2]|0,b[(c[k>>2]|0)+26>>1]|0)|0;if(c[r>>2]|0){c[x>>2]=3588;Ti(24594,x);c[f>>2]=c[r>>2];B=c[f>>2]|0;i=C;return B|0}c[s>>2]=bs(c[g>>2]|0,0)|0;if(c[s>>2]|0){c[y>>2]=3591;Ti(24594,y);c[f>>2]=c[s>>2];B=c[f>>2]|0;i=C;return B|0}c[t>>2]=bs(c[g>>2]|0,c[(c[k>>2]|0)+32>>2]|0)|0;if(c[t>>2]|0){c[z>>2]=3594;Ti(24594,z);c[f>>2]=c[t>>2];B=c[f>>2]|0;i=C;return B|0}else{hs(c[g>>2]|0,c[l>>2]|0)|0;c[f>>2]=0;B=c[f>>2]|0;i=C;return B|0}return 0}function Ts(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+48|0;n=o+16|0;m=o+8|0;l=o;d=o+44|0;e=o+40|0;f=o+36|0;g=o+32|0;h=o+28|0;j=o+24|0;k=o+20|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;if(!(c[f>>2]|0)){c[d>>2]=-2147483647;n=c[d>>2]|0;i=o;return n|0}if(!(c[e>>2]|0)){c[d>>2]=-2147483647;n=c[d>>2]|0;i=o;return n|0}if(!(c[c[e>>2]>>2]|0)){c[d>>2]=-2147483647;n=c[d>>2]|0;i=o;return n|0}c[g>>2]=c[(c[e>>2]|0)+8>>2];c[h>>2]=ms(c[e>>2]|0,0,1752589105)|0;if(c[h>>2]|0){c[l>>2]=3449;Ti(24594,l);c[d>>2]=c[h>>2];n=c[d>>2]|0;i=o;return n|0}c[j>>2]=Gs(c[e>>2]|0,(c[f>>2]|0)+104+88+64+8+20+8|0)|0;if(c[j>>2]|0){c[m>>2]=3452;Ti(24594,m);c[d>>2]=c[j>>2];n=c[d>>2]|0;i=o;return n|0}c[k>>2]=Us(c[e>>2]|0,c[f>>2]|0)|0;if(c[k>>2]|0){c[n>>2]=3455;Ti(24594,n);c[d>>2]=c[k>>2];n=c[d>>2]|0;i=o;return n|0}else{hs(c[e>>2]|0,c[g>>2]|0)|0;c[d>>2]=0;n=c[d>>2]|0;i=o;return n|0}return 0}function Us(b,f){b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=i;i=i+64|0;t=u+24|0;s=u+16|0;r=u+8|0;q=u;g=u+60|0;h=u+56|0;j=u+52|0;k=u+48|0;l=u+44|0;m=u+40|0;n=u+36|0;o=u+32|0;p=u+28|0;c[h>>2]=b;c[j>>2]=f;c[k>>2]=0;c[l>>2]=0;if(!(c[j>>2]|0)){c[g>>2]=-2147483647;t=c[g>>2]|0;i=u;return t|0}if(!(c[h>>2]|0)){c[g>>2]=-2147483647;t=c[g>>2]|0;i=u;return t|0}if(!(c[c[h>>2]>>2]|0)){c[g>>2]=-2147483647;t=c[g>>2]|0;i=u;return t|0}c[k>>2]=(c[j>>2]|0)+104+88+64+8+20+88;c[l>>2]=c[(c[h>>2]|0)+8>>2];c[m>>2]=ms(c[h>>2]|0,0,1752589123)|0;if(c[m>>2]|0){c[q>>2]=3372;Ti(24594,q);c[g>>2]=c[m>>2];t=c[g>>2]|0;i=u;return t|0}if(((c[(c[h>>2]|0)+8>>2]|0)+5|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>>>0){c[g>>2]=-2147483645;t=c[g>>2]|0;i=u;return t|0}m=(c[h>>2]|0)+8|0;f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=1;a[(c[k>>2]|0)+9>>0]=1;f=(c[h>>2]|0)+8|0;m=c[f>>2]|0;c[f>>2]=m+1;a[(c[c[h>>2]>>2]|0)+m>>0]=1;c[(c[k>>2]|0)+12>>2]=96;m=(c[(c[k>>2]|0)+12>>2]|0)>>>24&255;f=(c[h>>2]|0)+8|0;q=c[f>>2]|0;c[f>>2]=q+1;a[(c[c[h>>2]>>2]|0)+q>>0]=m;q=(c[(c[k>>2]|0)+12>>2]|0)>>>16&255;m=(c[h>>2]|0)+8|0;f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=q;f=(c[(c[k>>2]|0)+12>>2]|0)>>>8&255;q=(c[h>>2]|0)+8|0;m=c[q>>2]|0;c[q>>2]=m+1;a[(c[c[h>>2]>>2]|0)+m>>0]=f;m=(c[(c[k>>2]|0)+12>>2]|0)>>>0&255;f=(c[h>>2]|0)+8|0;q=c[f>>2]|0;c[f>>2]=q+1;a[(c[c[h>>2]>>2]|0)+q>>0]=m;q=(c[h>>2]|0)+8|0;m=c[q>>2]|0;c[q>>2]=m+1;a[(c[c[h>>2]>>2]|0)+m>>0]=-112;m=(c[h>>2]|0)+8|0;q=c[m>>2]|0;c[m>>2]=q+1;a[(c[c[h>>2]>>2]|0)+q>>0]=0;q=(c[h>>2]|0)+8|0;m=c[q>>2]|0;c[q>>2]=m+1;a[(c[c[h>>2]>>2]|0)+m>>0]=0;m=(c[h>>2]|0)+8|0;q=c[m>>2]|0;c[m>>2]=q+1;a[(c[c[h>>2]>>2]|0)+q>>0]=0;q=(c[h>>2]|0)+8|0;m=c[q>>2]|0;c[q>>2]=m+1;a[(c[c[h>>2]>>2]|0)+m>>0]=0;m=(c[h>>2]|0)+8|0;q=c[m>>2]|0;c[m>>2]=q+1;a[(c[c[h>>2]>>2]|0)+q>>0]=0;a[(c[k>>2]|0)+22>>0]=93;q=(c[h>>2]|0)+8|0;m=c[q>>2]|0;c[q>>2]=m+1;a[(c[c[h>>2]>>2]|0)+m>>0]=93;m=(240|(d[(c[k>>2]|0)+23>>0]|0)&15)&255;q=(c[h>>2]|0)+8|0;f=c[q>>2]|0;c[q>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=m;f=a[(c[k>>2]|0)+23+1>>0]|0;m=(c[h>>2]|0)+8|0;q=c[m>>2]|0;c[m>>2]=q+1;a[(c[c[h>>2]>>2]|0)+q>>0]=f;q=(252|(d[(c[k>>2]|0)+25>>0]|0))&255;f=(c[h>>2]|0)+8|0;m=c[f>>2]|0;c[f>>2]=m+1;a[(c[c[h>>2]>>2]|0)+m>>0]=q;m=(253|(d[(c[k>>2]|0)+26>>0]|0))&255;q=(c[h>>2]|0)+8|0;f=c[q>>2]|0;c[q>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=m;f=(248|(d[(c[k>>2]|0)+27>>0]|0))&255;m=(c[h>>2]|0)+8|0;q=c[m>>2]|0;c[m>>2]=q+1;a[(c[c[h>>2]>>2]|0)+q>>0]=f;q=(248|(d[(c[k>>2]|0)+28>>0]|0))&255;f=(c[h>>2]|0)+8|0;m=c[f>>2]|0;c[f>>2]=m+1;a[(c[c[h>>2]>>2]|0)+m>>0]=q;m=(e[(c[k>>2]|0)+30>>1]|0)>>8&255;q=(c[h>>2]|0)+8|0;f=c[q>>2]|0;c[q>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=m;f=(e[(c[k>>2]|0)+30>>1]|0)&255;m=(c[h>>2]|0)+8|0;q=c[m>>2]|0;c[m>>2]=q+1;a[(c[c[h>>2]>>2]|0)+q>>0]=f;a[(c[k>>2]|0)+32>>0]=15;q=(c[h>>2]|0)+8|0;f=c[q>>2]|0;c[q>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=15;a[(c[k>>2]|0)+33>>0]=3;f=(c[h>>2]|0)+8|0;q=c[f>>2]|0;c[f>>2]=q+1;a[(c[c[h>>2]>>2]|0)+q>>0]=3;c[n>>2]=Vs(c[h>>2]|0,c[k>>2]|0)|0;if(c[n>>2]|0){c[r>>2]=3414;Ti(24594,r);c[g>>2]=c[n>>2];t=c[g>>2]|0;i=u;return t|0}c[o>>2]=Ws(c[h>>2]|0,c[k>>2]|0)|0;if(c[o>>2]|0){c[s>>2]=3417;Ti(24594,s);c[g>>2]=c[o>>2];t=c[g>>2]|0;i=u;return t|0}c[p>>2]=Xs(c[h>>2]|0,c[k>>2]|0)|0;if(c[p>>2]|0){c[t>>2]=3420;Ti(24594,t);c[g>>2]=c[p>>2];t=c[g>>2]|0;i=u;return t|0}else{hs(c[h>>2]|0,c[l>>2]|0)|0;c[g>>2]=0;t=c[g>>2]|0;i=u;return t|0}return 0}function Vs(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;l=n+8|0;m=n+4|0;k=n;c[h>>2]=d;c[j>>2]=f;c[l>>2]=0;c[m>>2]=0;c[k>>2]=(e[(c[j>>2]|0)+36>>1]|0)+5;if((c[(c[h>>2]|0)+4>>2]|0)>>>0<((c[(c[h>>2]|0)+8>>2]|0)+(c[k>>2]|0)|0)>>>0){c[g>>2]=-2147483645;m=c[g>>2]|0;i=n;return m|0}c[m>>2]=c[(c[h>>2]|0)+8>>2];f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=-96;f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=0;f=a[(c[j>>2]|0)+34>>0]|0;d=c[m>>2]|0;c[m>>2]=d+1;a[(c[c[h>>2]>>2]|0)+d>>0]=f;d=(e[(c[j>>2]|0)+36>>1]|0)>>8&255;f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=d;f=b[(c[j>>2]|0)+36>>1]&255;d=c[m>>2]|0;c[m>>2]=d+1;a[(c[c[h>>2]>>2]|0)+d>>0]=f;while(1){if((c[l>>2]|0)>=(e[(c[j>>2]|0)+36>>1]|0|0))break;f=a[(c[j>>2]|0)+38+(c[l>>2]|0)>>0]|0;d=c[m>>2]|0;c[m>>2]=d+1;a[(c[c[h>>2]>>2]|0)+d>>0]=f;c[l>>2]=(c[l>>2]|0)+1}m=(c[h>>2]|0)+8|0;c[m>>2]=(c[m>>2]|0)+(c[k>>2]|0);c[g>>2]=0;m=c[g>>2]|0;i=n;return m|0}function Ws(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;l=n+8|0;m=n+4|0;k=n;c[h>>2]=d;c[j>>2]=f;c[l>>2]=0;c[m>>2]=0;c[k>>2]=(e[(c[j>>2]|0)+296>>1]|0)+5;if((c[(c[h>>2]|0)+4>>2]|0)>>>0<((c[(c[h>>2]|0)+8>>2]|0)+(c[k>>2]|0)|0)>>>0){c[g>>2]=-2147483645;m=c[g>>2]|0;i=n;return m|0}c[m>>2]=c[(c[h>>2]|0)+8>>2];f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=-95;f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=0;f=a[(c[j>>2]|0)+294>>0]|0;d=c[m>>2]|0;c[m>>2]=d+1;a[(c[c[h>>2]>>2]|0)+d>>0]=f;d=(e[(c[j>>2]|0)+296>>1]|0)>>8&255;f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=d;f=b[(c[j>>2]|0)+296>>1]&255;d=c[m>>2]|0;c[m>>2]=d+1;a[(c[c[h>>2]>>2]|0)+d>>0]=f;while(1){if((c[l>>2]|0)>=(e[(c[j>>2]|0)+296>>1]|0|0))break;f=a[(c[j>>2]|0)+298+(c[l>>2]|0)>>0]|0;d=c[m>>2]|0;c[m>>2]=d+1;a[(c[c[h>>2]>>2]|0)+d>>0]=f;c[l>>2]=(c[l>>2]|0)+1}m=(c[h>>2]|0)+8|0;c[m>>2]=(c[m>>2]|0)+(c[k>>2]|0);c[g>>2]=0;m=c[g>>2]|0;i=n;return m|0}function Xs(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;l=n+8|0;m=n+4|0;k=n;c[h>>2]=d;c[j>>2]=f;c[l>>2]=0;c[m>>2]=0;c[k>>2]=(e[(c[j>>2]|0)+556>>1]|0)+5;if((c[(c[h>>2]|0)+4>>2]|0)>>>0<((c[(c[h>>2]|0)+8>>2]|0)+(c[k>>2]|0)|0)>>>0){c[g>>2]=-2147483645;m=c[g>>2]|0;i=n;return m|0}c[m>>2]=c[(c[h>>2]|0)+8>>2];f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=-94;f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=0;f=a[(c[j>>2]|0)+554>>0]|0;d=c[m>>2]|0;c[m>>2]=d+1;a[(c[c[h>>2]>>2]|0)+d>>0]=f;d=(e[(c[j>>2]|0)+556>>1]|0)>>8&255;f=c[m>>2]|0;c[m>>2]=f+1;a[(c[c[h>>2]>>2]|0)+f>>0]=d;f=b[(c[j>>2]|0)+556>>1]&255;d=c[m>>2]|0;c[m>>2]=d+1;a[(c[c[h>>2]>>2]|0)+d>>0]=f;while(1){if((c[l>>2]|0)>=(e[(c[j>>2]|0)+556>>1]|0|0))break;f=a[(c[j>>2]|0)+558+(c[l>>2]|0)>>0]|0;d=c[m>>2]|0;c[m>>2]=d+1;a[(c[c[h>>2]>>2]|0)+d>>0]=f;c[l>>2]=(c[l>>2]|0)+1}m=(c[h>>2]|0)+8|0;c[m>>2]=(c[m>>2]|0)+(c[k>>2]|0);c[g>>2]=0;m=c[g>>2]|0;i=n;return m|0}function Ys(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+48|0;o=p+8|0;n=p;e=p+40|0;f=p+36|0;g=p+32|0;h=p+28|0;l=p+24|0;m=p+20|0;j=p+16|0;k=p+12|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[l>>2]=0;c[m>>2]=0;if(!(c[g>>2]|0)){c[e>>2]=-2147483647;o=c[e>>2]|0;i=p;return o|0}if(!(c[f>>2]|0)){c[e>>2]=-2147483647;o=c[e>>2]|0;i=p;return o|0}if(!(c[c[f>>2]>>2]|0)){c[e>>2]=-2147483647;o=c[e>>2]|0;i=p;return o|0}c[l>>2]=(c[g>>2]|0)+104+88+64+8+20;c[m>>2]=c[(c[f>>2]|0)+8>>2];c[j>>2]=ms(c[f>>2]|0,0,c[h>>2]|0)|0;if(c[j>>2]|0){c[n>>2]=2862;Ti(24594,n);c[e>>2]=c[j>>2];o=c[e>>2]|0;i=p;return o|0}c[k>>2]=Gs(c[f>>2]|0,(c[g>>2]|0)+104+88+64+8+20+8|0)|0;if(c[k>>2]|0){c[o>>2]=2865;Ti(24594,o);c[e>>2]=c[k>>2];o=c[e>>2]|0;i=p;return o|0}else{hs(c[f>>2]|0,c[m>>2]|0)|0;c[e>>2]=0;o=c[e>>2]|0;i=p;return o|0}return 0}function Zs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+48|0;o=p+8|0;n=p;e=p+40|0;f=p+36|0;g=p+32|0;h=p+28|0;l=p+24|0;m=p+20|0;j=p+16|0;k=p+12|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[l>>2]=0;c[m>>2]=0;if(!(c[g>>2]|0)){c[e>>2]=-2147483647;o=c[e>>2]|0;i=p;return o|0}if(!(c[f>>2]|0)){c[e>>2]=-2147483647;o=c[e>>2]|0;i=p;return o|0}if(!(c[c[f>>2]>>2]|0)){c[e>>2]=-2147483647;o=c[e>>2]|0;i=p;return o|0}c[l>>2]=(c[g>>2]|0)+104+88+64+8+20;c[m>>2]=c[(c[f>>2]|0)+8>>2];c[j>>2]=ms(c[f>>2]|0,0,c[h>>2]|0)|0;if(c[j>>2]|0){c[n>>2]=2829;Ti(24594,n);c[e>>2]=c[j>>2];o=c[e>>2]|0;i=p;return o|0}c[k>>2]=Gs(c[f>>2]|0,(c[g>>2]|0)+104+88+64+8+20+8|0)|0;if(c[k>>2]|0){c[o>>2]=2832;Ti(24594,o);c[e>>2]=c[k>>2];o=c[e>>2]|0;i=p;return o|0}else{hs(c[f>>2]|0,c[m>>2]|0)|0;c[e>>2]=0;o=c[e>>2]|0;i=p;return o|0}return 0}function _s(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;A=i;i=i+112|0;w=A+48|0;v=A+40|0;u=A+32|0;y=A+24|0;x=A+16|0;t=A+8|0;s=A;e=A+100|0;f=A+96|0;g=A+92|0;h=A+88|0;q=A+84|0;r=A+80|0;j=A+76|0;k=A+72|0;l=A+68|0;m=A+64|0;n=A+60|0;o=A+56|0;p=A+52|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[q>>2]=0;c[r>>2]=0;if(!(c[h>>2]|0)){c[e>>2]=-2147483647;z=c[e>>2]|0;i=A;return z|0}if(!(c[g>>2]|0)){c[e>>2]=-2147483647;z=c[e>>2]|0;i=A;return z|0}if(!(c[c[g>>2]>>2]|0)){c[e>>2]=-2147483647;z=c[e>>2]|0;i=A;return z|0}if(!(c[f>>2]|0)){c[e>>2]=-2147483647;z=c[e>>2]|0;i=A;return z|0}c[q>>2]=(c[h>>2]|0)+104+88+64+836;c[r>>2]=c[(c[g>>2]|0)+8>>2];c[j>>2]=ms(c[g>>2]|0,0,1937011578)|0;if(c[j>>2]|0){c[s>>2]=3056;Ti(24594,s);c[e>>2]=c[j>>2];z=c[e>>2]|0;i=A;return z|0}c[k>>2]=bs(c[g>>2]|0,0)|0;if(c[k>>2]|0){c[t>>2]=3059;Ti(24594,t);c[e>>2]=c[k>>2];z=c[e>>2]|0;i=A;return z|0}do if((c[(c[h>>2]|0)+1272>>2]|0)==1936684398){if(144!=(c[(c[f>>2]|0)+8>>2]|0)?145!=(c[(c[f>>2]|0)+8>>2]|0):0){z=20;break}c[l>>2]=bs(c[g>>2]|0,1)|0;if(c[l>>2]|0){c[x>>2]=3067;Ti(24594,x);c[e>>2]=c[l>>2];z=c[e>>2]|0;i=A;return z|0}c[m>>2]=bs(c[g>>2]|0,$(c[(c[q>>2]|0)+12>>2]|0,c[(c[q>>2]|0)+16>>2]|0)|0)|0;if(c[m>>2]|0){c[y>>2]=3070;Ti(24594,y);c[e>>2]=c[m>>2];z=c[e>>2]|0;i=A;return z|0}}else z=20;while(0);if((z|0)==20){c[n>>2]=bs(c[g>>2]|0,c[(c[q>>2]|0)+12>>2]|0)|0;if(c[n>>2]|0){c[u>>2]=3075;Ti(24594,u);c[e>>2]=c[n>>2];z=c[e>>2]|0;i=A;return z|0}c[o>>2]=bs(c[g>>2]|0,c[(c[q>>2]|0)+16>>2]|0)|0;if(c[o>>2]|0){c[v>>2]=3078;Ti(24594,v);c[e>>2]=c[o>>2];z=c[e>>2]|0;i=A;return z|0}}if((c[(c[q>>2]|0)+12>>2]|0)==0?(c[p>>2]=Cs((c[q>>2]|0)+20|0,c[g>>2]|0,4)|0,0!=(c[p>>2]|0)):0){c[w>>2]=3084;Ti(24594,w);c[e>>2]=c[p>>2];z=c[e>>2]|0;i=A;return z|0}hs(c[g>>2]|0,c[r>>2]|0)|0;c[e>>2]=0;z=c[e>>2]|0;i=A;return z|0}function $s(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=i;i=i+80|0;s=v+32|0;u=v+24|0;t=v+16|0;r=v+8|0;q=v;e=v+76|0;f=v+72|0;g=v+68|0;h=v+64|0;o=v+60|0;p=v+56|0;j=v+52|0;k=v+48|0;l=v+44|0;m=v+40|0;n=v+36|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[o>>2]=0;c[p>>2]=0;if(!(c[h>>2]|0)){c[e>>2]=-2147483647;u=c[e>>2]|0;i=v;return u|0}if(!(c[g>>2]|0)){c[e>>2]=-2147483647;u=c[e>>2]|0;i=v;return u|0}if(!(c[c[g>>2]>>2]|0)){c[e>>2]=-2147483647;u=c[e>>2]|0;i=v;return u|0}if(!(c[f>>2]|0)){c[e>>2]=-2147483647;u=c[e>>2]|0;i=v;return u|0}c[o>>2]=(c[h>>2]|0)+104+88+64+912;c[p>>2]=c[(c[g>>2]|0)+8>>2];c[j>>2]=ms(c[g>>2]|0,0,1668232756)|0;if(c[j>>2]|0){c[q>>2]=3200;Ti(24594,q);c[e>>2]=c[j>>2];u=c[e>>2]|0;i=v;return u|0}c[k>>2]=bs(c[g>>2]|0,0)|0;if(c[k>>2]|0){c[r>>2]=3203;Ti(24594,r);c[e>>2]=c[k>>2];u=c[e>>2]|0;i=v;return u|0}if(c[(c[o>>2]|0)+28>>2]|0?(c[l>>2]=Wr(c[o>>2]|0)|0,0!=(c[l>>2]|0)):0){c[t>>2]=3208;Ti(24594,t);c[e>>2]=c[l>>2];u=c[e>>2]|0;i=v;return u|0}c[m>>2]=bs(c[g>>2]|0,c[(c[o>>2]|0)+12>>2]|0)|0;if(c[m>>2]|0){c[u>>2]=3212;Ti(24594,u);c[e>>2]=c[m>>2];u=c[e>>2]|0;i=v;return u|0}c[(c[o>>2]|0)+40>>2]=c[(c[g>>2]|0)+8>>2];c[n>>2]=Cs((c[o>>2]|0)+16|0,c[g>>2]|0,8)|0;if(c[n>>2]|0){c[s>>2]=3218;Ti(24594,s);c[e>>2]=c[n>>2];u=c[e>>2]|0;i=v;return u|0}else{hs(c[g>>2]|0,c[p>>2]|0)|0;c[e>>2]=0;u=c[e>>2]|0;i=v;return u|0}return 0}function at(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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;t=i;i=i+80|0;s=t+24|0;r=t+16|0;q=t+8|0;p=t;e=t+64|0;f=t+60|0;g=t+56|0;h=t+52|0;n=t+48|0;o=t+44|0;j=t+40|0;k=t+36|0;l=t+32|0;m=t+28|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[n>>2]=0;c[o>>2]=0;if(!(c[h>>2]|0)){c[e>>2]=-2147483647;s=c[e>>2]|0;i=t;return s|0}if(!(c[g>>2]|0)){c[e>>2]=-2147483647;s=c[e>>2]|0;i=t;return s|0}if(!(c[c[g>>2]>>2]|0)){c[e>>2]=-2147483647;s=c[e>>2]|0;i=t;return s|0}if(!(c[f>>2]|0)){c[e>>2]=-2147483647;s=c[e>>2]|0;i=t;return s|0}c[n>>2]=(c[h>>2]|0)+104+88+64+960;c[o>>2]=c[(c[g>>2]|0)+8>>2];c[j>>2]=ms(c[g>>2]|0,0,1937011571)|0;if(c[j>>2]|0){c[p>>2]=3250;Ti(24594,p);c[e>>2]=c[j>>2];s=c[e>>2]|0;i=t;return s|0}c[k>>2]=bs(c[g>>2]|0,0)|0;if(c[k>>2]|0){c[q>>2]=3253;Ti(24594,q);c[e>>2]=c[k>>2];s=c[e>>2]|0;i=t;return s|0}c[l>>2]=bs(c[g>>2]|0,c[(c[n>>2]|0)+12>>2]|0)|0;if(c[l>>2]|0){c[r>>2]=3256;Ti(24594,r);c[e>>2]=c[l>>2];s=c[e>>2]|0;i=t;return s|0}c[m>>2]=Cs((c[n>>2]|0)+16|0,c[g>>2]|0,4)|0;if(c[m>>2]|0){c[s>>2]=3259;Ti(24594,s);c[e>>2]=c[m>>2];s=c[e>>2]|0;i=t;return s|0}else{hs(c[g>>2]|0,c[o>>2]|0)|0;c[e>>2]=0;s=c[e>>2]|0;i=t;return s|0}return 0}function bt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=i;i=i+80|0;s=v+32|0;u=v+24|0;t=v+16|0;r=v+8|0;g=v;h=v+76|0;j=v+72|0;k=v+68|0;e=v+64|0;l=v+60|0;m=v+56|0;f=v+52|0;n=v+48|0;o=v+44|0;p=v+40|0;q=v+36|0;c[j>>2]=a;c[k>>2]=b;c[e>>2]=d;c[l>>2]=0;c[m>>2]=0;if(!(c[e>>2]|0)){c[h>>2]=-2147483647;u=c[h>>2]|0;i=v;return u|0}if(!(c[k>>2]|0)){c[h>>2]=-2147483647;u=c[h>>2]|0;i=v;return u|0}if(!(c[c[k>>2]>>2]|0)){c[h>>2]=-2147483647;u=c[h>>2]|0;i=v;return u|0}if(!(c[j>>2]|0)){c[h>>2]=-2147483647;u=c[h>>2]|0;i=v;return u|0}c[l>>2]=(c[e>>2]|0)+104+88+64+988;c[m>>2]=c[(c[k>>2]|0)+8>>2];c[f>>2]=ms(c[k>>2]|0,0,1668576371)|0;if(c[f>>2]|0){c[g>>2]=3291;Ti(24594,g);c[h>>2]=c[f>>2];u=c[h>>2]|0;i=v;return u|0}e=c[k>>2]|0;if(2==(c[(c[j>>2]|0)+6372>>2]|0)){c[n>>2]=bs(e,16777216)|0;if(c[n>>2]|0){c[r>>2]=3296;Ti(24594,r);c[h>>2]=c[n>>2];u=c[h>>2]|0;i=v;return u|0}}else{c[o>>2]=bs(e,0)|0;if(c[o>>2]|0){c[t>>2]=3301;Ti(24594,t);c[h>>2]=c[o>>2];u=c[h>>2]|0;i=v;return u|0}}c[p>>2]=bs(c[k>>2]|0,c[(c[l>>2]|0)+12>>2]|0)|0;if(c[p>>2]|0){c[u>>2]=3305;Ti(24594,u);c[h>>2]=c[p>>2];u=c[h>>2]|0;i=v;return u|0}c[q>>2]=Cs((c[l>>2]|0)+16|0,c[k>>2]|0,8)|0;if(c[q>>2]|0){c[s>>2]=3308;Ti(24594,s);c[h>>2]=c[q>>2];u=c[h>>2]|0;i=v;return u|0}else{hs(c[k>>2]|0,c[m>>2]|0)|0;c[h>>2]=0;u=c[h>>2]|0;i=v;return u|0}return 0}function ct(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m;j=m+28|0;d=m+24|0;e=m+20|0;g=m+16|0;h=m+12|0;f=m+8|0;k=m+4|0;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[h>>2]=0;c[f>>2]=0;if(!(c[d>>2]|0)){c[j>>2]=-2147483647;l=c[j>>2]|0;i=m;return l|0}c[f>>2]=Pi(c[d>>2]|0)|0;while(1){b=c[d>>2]|0;if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0){a=8;break}c[g>>2]=Ri(b,c[h>>2]|0)|0;c[k>>2]=-2147483392;if(!(c[g>>2]|0)){a=6;break}Ki(c[g>>2]|0,c[e>>2]|0);c[g>>2]=0;c[h>>2]=(c[h>>2]|0)+1}if((a|0)==6){c[l>>2]=2898;Ti(24657,l);c[j>>2]=c[k>>2];l=c[j>>2]|0;i=m;return l|0}else if((a|0)==8){Si(b);c[j>>2]=0;l=c[j>>2]|0;i=m;return l|0}return 0}function dt(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;b=g+8|0;e=g+16|0;f=g;c[e>>2]=a;a=f;c[a>>2]=0;c[a+4>>2]=0;if(!(c[e>>2]|0)){a=b;c[a>>2]=-2147483647;c[a+4>>2]=0;a=b;f=a;f=c[f>>2]|0;a=a+4|0;a=c[a>>2]|0;D=a;i=g;return f|0}else{h=Sx(d[c[e>>2]>>0]|0|0,0,56)|0;k=f;j=c[k+4>>2]|D;a=f;c[a>>2]=c[k>>2]|h;c[a+4>>2]=j;a=Sx(d[(c[e>>2]|0)+1>>0]|0|0,0,48)|0;j=f;h=c[j+4>>2]|D;k=f;c[k>>2]=c[j>>2]|a;c[k+4>>2]=h;k=Sx(d[(c[e>>2]|0)+2>>0]|0|0,0,40)|0;h=f;a=c[h+4>>2]|D;j=f;c[j>>2]=c[h>>2]|k;c[j+4>>2]=a;j=f;a=c[j+4>>2]|(d[(c[e>>2]|0)+3>>0]|0);k=f;c[k>>2]=c[j>>2];c[k+4>>2]=a;k=Sx(d[(c[e>>2]|0)+4>>0]|0|0,0,24)|0;a=f;j=c[a+4>>2]|D;h=f;c[h>>2]=c[a>>2]|k;c[h+4>>2]=j;h=Sx(d[(c[e>>2]|0)+5>>0]|0|0,0,16)|0;j=f;k=c[j+4>>2]|D;a=f;c[a>>2]=c[j>>2]|h;c[a+4>>2]=k;a=Sx(d[(c[e>>2]|0)+6>>0]|0|0,0,8)|0;k=f;h=c[k+4>>2]|D;j=f;c[j>>2]=c[k>>2]|a;c[j+4>>2]=h;j=f;h=c[j+4>>2]|0;a=f;c[a>>2]=c[j>>2]|(d[(c[e>>2]|0)+7>>0]|0);c[a+4>>2]=h;e=f;f=c[e+4>>2]|0;a=b;c[a>>2]=c[e>>2];c[a+4>>2]=f;a=b;f=a;f=c[f>>2]|0;a=a+4|0;a=c[a>>2]|0;D=a;i=g;return f|0}return 0}function et(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+48|0;f=n+32|0;g=n+28|0;o=n+24|0;h=n+20|0;j=n+16|0;l=n+12|0;m=n+8|0;k=n;c[g>>2]=a;c[o>>2]=b;c[h>>2]=d;c[j>>2]=e;c[l>>2]=0;c[m>>2]=c[o>>2];b=k;c[b>>2]=0;c[b+4>>2]=0;if(!(c[g>>2]|0)){c[f>>2]=-2147483647;o=c[f>>2]|0;i=n;return o|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0)break;o=dt((c[g>>2]|0)+(c[m>>2]|0)|0)|0;b=k;c[b>>2]=o;c[b+4>>2]=D;b=k;b=Px(c[b>>2]|0,c[b+4>>2]|0,c[j>>2]|0,0)|0;o=k;c[o>>2]=b;c[o+4>>2]=D;o=k;Rr((c[g>>2]|0)+(c[m>>2]|0)|0,c[o>>2]|0,c[o+4>>2]|0);c[m>>2]=(c[m>>2]|0)+8;c[l>>2]=(c[l>>2]|0)+1}c[f>>2]=0;o=c[f>>2]|0;i=n;return o|0}function ft(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;m=n;k=n+28|0;e=n+24|0;f=n+20|0;g=n+16|0;h=n+12|0;j=n+8|0;l=n+4|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=0;c[j>>2]=0;if(!(c[e>>2]|0)){c[k>>2]=-2147483647;m=c[k>>2]|0;i=n;return m|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>=(c[(c[e>>2]|0)+136+336>>2]|0)>>>0){e=10;break}c[j>>2]=(c[e>>2]|0)+136+344+((c[h>>2]|0)*1280|0)+104+88+64+912;if((c[(c[j>>2]|0)+40>>2]|0)>>>0>(c[(c[f>>2]|0)+8>>2]|0)>>>0){e=6;break}c[l>>2]=et(c[c[f>>2]>>2]|0,c[(c[j>>2]|0)+40>>2]|0,c[(c[j>>2]|0)+12>>2]|0,c[g>>2]|0)|0;if(c[l>>2]|0){e=8;break}c[h>>2]=(c[h>>2]|0)+1}if((e|0)==6){c[k>>2]=-2147483392;m=c[k>>2]|0;i=n;return m|0}else if((e|0)==8){c[m>>2]=4225;Ti(24594,m);c[k>>2]=c[l>>2];m=c[k>>2]|0;i=n;return m|0}else if((e|0)==10){c[k>>2]=0;m=c[k>>2]|0;i=n;return m|0}return 0}function gt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+48|0;n=o+16|0;m=o+8|0;l=o;d=o+44|0;e=o+40|0;f=o+36|0;k=o+32|0;g=o+28|0;h=o+24|0;j=o+20|0;c[e>>2]=a;c[f>>2]=b;c[k>>2]=0;do if(c[e>>2]|0){if(!(c[f>>2]|0)){c[d>>2]=-2147483647;break}if(!(c[c[f>>2]>>2]|0)){c[d>>2]=-2147483647;break}c[k>>2]=c[(c[f>>2]|0)+8>>2];c[g>>2]=bs(c[f>>2]|0,0)|0;if(c[g>>2]|0){c[l>>2]=4251;Ti(24594,l);c[d>>2]=c[g>>2];break}c[h>>2]=bs(c[f>>2]|0,1936419184)|0;if(c[h>>2]|0){c[m>>2]=4254;Ti(24594,m);c[d>>2]=c[h>>2];break}c[j>>2]=ht(c[e>>2]|0,c[f>>2]|0)|0;if(c[j>>2]|0){c[n>>2]=4257;Ti(24594,n);c[d>>2]=c[j>>2];break}else{hs(c[f>>2]|0,c[k>>2]|0)|0;c[d>>2]=0;break}}else c[d>>2]=-2147483647;while(0);i=o;return c[d>>2]|0}function ht(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+80|0;r=s+24|0;q=s+16|0;p=s+8|0;o=s;d=s+64|0;e=s+60|0;f=s+56|0;g=s+52|0;h=s+48|0;n=s+44|0;j=s+40|0;k=s+36|0;l=s+32|0;m=s+28|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[h>>2]=0;c[n>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;r=c[d>>2]|0;i=s;return r|0}if(!(c[f>>2]|0)){c[d>>2]=-2147483647;r=c[d>>2]|0;i=s;return r|0}if(!(c[c[f>>2]>>2]|0)){c[d>>2]=-2147483647;r=c[d>>2]|0;i=s;return r|0}c[n>>2]=c[(c[f>>2]|0)+8>>2];c[j>>2]=ms(c[f>>2]|0,0,1969517665)|0;if(c[j>>2]|0){c[o>>2]=4744;Ti(24594,o);c[d>>2]=c[j>>2];r=c[d>>2]|0;i=s;return r|0}c[k>>2]=bs(c[f>>2]|0,c[(c[e>>2]|0)+6288+8>>2]|0)|0;if(c[k>>2]|0){c[p>>2]=4747;Ti(24594,p);c[d>>2]=c[k>>2];r=c[d>>2]|0;i=s;return r|0}c[l>>2]=bs(c[f>>2]|0,c[(c[e>>2]|0)+6288+8>>2]|0)|0;if(c[l>>2]|0){c[q>>2]=4750;Ti(24594,q);c[d>>2]=c[l>>2];r=c[d>>2]|0;i=s;return r|0}c[m>>2]=bs(c[f>>2]|0,c[(c[e>>2]|0)+6288+8>>2]|0)|0;if(c[m>>2]|0){c[r>>2]=4753;Ti(24594,r);c[d>>2]=c[m>>2];r=c[d>>2]|0;i=s;return r|0}r=(c[e>>2]|0)+6392|0;r=Px(c[r>>2]|0,c[r+4>>2]|0,8,0)|0;q=D;if(q>>>0>0|(q|0)==0&r>>>0>4294967295)c[h>>2]=16;else c[h>>2]=8;if((c[(c[e>>2]|0)+6360>>2]|0)>>>0>=((c[(c[f>>2]|0)+8>>2]|0)+(c[h>>2]|0)|0)>>>0){c[g>>2]=(c[(c[e>>2]|0)+6360>>2]|0)-(c[(c[f>>2]|0)+8>>2]|0)-(c[h>>2]|0);c[(c[e>>2]|0)+6340>>2]=c[(c[f>>2]|0)+8>>2];c[(c[e>>2]|0)+6348>>2]=c[h>>2];c[(c[e>>2]|0)+6344>>2]=c[g>>2];Mi((c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)|0,0,c[g>>2]|0)|0;r=(c[f>>2]|0)+8|0;c[r>>2]=(c[r>>2]|0)+(c[g>>2]|0);hs(c[f>>2]|0,c[n>>2]|0)|0;c[d>>2]=0;r=c[d>>2]|0;i=s;return r|0}else{c[d>>2]=-2147483641;r=c[d>>2]|0;i=s;return r|0}return 0}function it(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;f=e+4|0;h=e;c[g>>2]=b;c[f>>2]=d;c[h>>2]=(c[(c[g>>2]|0)+40>>2]|0)-(c[f>>2]|0);a[(c[(c[g>>2]|0)+36>>2]|0)+(c[f>>2]|0)>>0]=(c[h>>2]|0)>>>24;a[(c[(c[g>>2]|0)+36>>2]|0)+((c[f>>2]|0)+1)>>0]=(c[h>>2]|0)>>>16;a[(c[(c[g>>2]|0)+36>>2]|0)+((c[f>>2]|0)+2)>>0]=(c[h>>2]|0)>>>8;a[(c[(c[g>>2]|0)+36>>2]|0)+((c[f>>2]|0)+3)>>0]=c[h>>2];i=e;return 0}function jt(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;h=f+12|0;k=f+8|0;g=f+4|0;j=f;c[h>>2]=b;c[k>>2]=d;c[g>>2]=e;c[j>>2]=(c[(c[h>>2]|0)+40>>2]|0)-(c[k>>2]|0)+8;a[(c[(c[h>>2]|0)+36>>2]|0)+(c[g>>2]|0)>>0]=(c[j>>2]|0)>>>24;a[(c[(c[h>>2]|0)+36>>2]|0)+((c[g>>2]|0)+1)>>0]=(c[j>>2]|0)>>>16;a[(c[(c[h>>2]|0)+36>>2]|0)+((c[g>>2]|0)+2)>>0]=(c[j>>2]|0)>>>8;a[(c[(c[h>>2]|0)+36>>2]|0)+((c[g>>2]|0)+3)>>0]=c[j>>2];i=f;return 0}function kt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+64|0;q=r+24|0;p=r+16|0;o=r+8|0;n=r;d=r+60|0;e=r+56|0;f=r+52|0;h=r+48|0;g=r+44|0;j=r+40|0;k=r+36|0;l=r+32|0;m=r+28|0;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;c[g>>2]=0;if(!(c[f>>2]|0)){c[d>>2]=-2147483647;q=c[d>>2]|0;i=r;return q|0}if(!(c[(c[f>>2]|0)+36>>2]|0)){c[d>>2]=-2147483647;q=c[d>>2]|0;i=r;return q|0}c[h>>2]=c[(c[f>>2]|0)+40>>2];c[(c[e>>2]|0)+6304+28>>2]=c[(c[f>>2]|0)+40>>2];c[j>>2]=as(c[f>>2]|0,0)|0;if(c[j>>2]|0){c[n>>2]=4436;Ti(24594,n);c[d>>2]=c[j>>2];q=c[d>>2]|0;i=r;return q|0}c[k>>2]=as(c[f>>2]|0,1836019558)|0;if(c[k>>2]|0){c[o>>2]=4439;Ti(24594,o);c[d>>2]=c[k>>2];q=c[d>>2]|0;i=r;return q|0}c[l>>2]=lt(c[e>>2]|0,c[f>>2]|0)|0;if(c[l>>2]|0){c[p>>2]=4442;Ti(24594,p);c[d>>2]=c[l>>2];q=c[d>>2]|0;i=r;return q|0}c[m>>2]=mt(c[e>>2]|0,c[f>>2]|0,g)|0;if(c[m>>2]|0){c[q>>2]=4445;Ti(24594,q);c[d>>2]=c[m>>2];q=c[d>>2]|0;i=r;return q|0}else{it(c[f>>2]|0,c[h>>2]|0)|0;jt(c[f>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;c[d>>2]=0;q=c[d>>2]|0;i=r;return q|0}return 0}function lt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+64|0;p=q+24|0;o=q+16|0;n=q+8|0;m=q;d=q+56|0;e=q+52|0;f=q+48|0;g=q+44|0;h=q+40|0;j=q+36|0;k=q+32|0;l=q+28|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;if(!(c[f>>2]|0)){c[d>>2]=-2147483647;p=c[d>>2]|0;i=q;return p|0}if(!(c[e>>2]|0)){c[d>>2]=-2147483647;p=c[d>>2]|0;i=q;return p|0}if(!(c[(c[f>>2]|0)+36>>2]|0)){c[d>>2]=-2147483647;p=c[d>>2]|0;i=q;return p|0}c[g>>2]=c[(c[f>>2]|0)+40>>2];b=(c[e>>2]|0)+6400|0;c[b>>2]=(c[b>>2]|0)+1;c[h>>2]=as(c[f>>2]|0,0)|0;if(c[h>>2]|0){c[m>>2]=4477;Ti(24594,m);c[d>>2]=c[h>>2];p=c[d>>2]|0;i=q;return p|0}c[j>>2]=as(c[f>>2]|0,1835427940)|0;if(c[j>>2]|0){c[n>>2]=4480;Ti(24594,n);c[d>>2]=c[j>>2];p=c[d>>2]|0;i=q;return p|0}c[k>>2]=as(c[f>>2]|0,0)|0;if(c[k>>2]|0){c[o>>2]=4483;Ti(24594,o);c[d>>2]=c[k>>2];p=c[d>>2]|0;i=q;return p|0}c[l>>2]=as(c[f>>2]|0,c[(c[e>>2]|0)+6400>>2]|0)|0;if(c[l>>2]|0){c[p>>2]=4486;Ti(24594,p);c[d>>2]=c[l>>2];p=c[d>>2]|0;i=q;return p|0}else{it(c[f>>2]|0,c[g>>2]|0)|0;c[d>>2]=0;p=c[d>>2]|0;i=q;return p|0}return 0}function mt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=i;i=i+80|0;s=v+32|0;u=v+24|0;t=v+16|0;r=v+8|0;q=v;e=v+76|0;f=v+72|0;g=v+68|0;h=v+64|0;o=v+60|0;p=v+56|0;j=v+52|0;k=v+48|0;l=v+44|0;m=v+40|0;n=v+36|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[o>>2]=0;c[p>>2]=0;if(!(c[g>>2]|0)){c[e>>2]=-2147483647;u=c[e>>2]|0;i=v;return u|0}if(!(c[(c[g>>2]|0)+36>>2]|0)){c[e>>2]=-2147483647;u=c[e>>2]|0;i=v;return u|0}c[o>>2]=c[(c[g>>2]|0)+40>>2];c[j>>2]=as(c[g>>2]|0,0)|0;if(c[j>>2]|0){c[q>>2]=4554;Ti(24594,q);c[e>>2]=c[j>>2];u=c[e>>2]|0;i=v;return u|0}c[k>>2]=as(c[g>>2]|0,1953653094)|0;if(c[k>>2]|0){c[r>>2]=4557;Ti(24594,r);c[e>>2]=c[k>>2];u=c[e>>2]|0;i=v;return u|0}c[l>>2]=nt(c[f>>2]|0,c[g>>2]|0,p)|0;if(c[l>>2]|0){c[t>>2]=4560;Ti(24594,t);c[e>>2]=c[l>>2];u=c[e>>2]|0;i=v;return u|0}c[m>>2]=ot(c[f>>2]|0,c[g>>2]|0,c[p>>2]|0)|0;if(c[m>>2]|0){c[u>>2]=4563;Ti(24594,u);c[e>>2]=c[m>>2];u=c[e>>2]|0;i=v;return u|0}c[n>>2]=pt(c[f>>2]|0,c[g>>2]|0,c[p>>2]|0,c[h>>2]|0)|0;if(c[n>>2]|0){c[s>>2]=4566;Ti(24594,s);c[e>>2]=c[n>>2];u=c[e>>2]|0;i=v;return u|0}else{it(c[g>>2]|0,c[o>>2]|0)|0;c[e>>2]=0;u=c[e>>2]|0;i=v;return u|0}return 0}function nt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+48|0;m=n+8|0;l=n;e=n+32|0;f=n+28|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;a:do if(!(c[g>>2]|0))c[e>>2]=-2147483647;else{if(!(c[f>>2]|0)){c[e>>2]=-2147483647;break}if(!(c[h>>2]|0)){c[e>>2]=-2147483647;break}switch(c[c[g>>2]>>2]|0){case 3:case 1:case 0:{c[j>>2]=Lr(c[f>>2]|0,1986618469,c[h>>2]|0)|0;if(c[j>>2]|0){c[l>>2]=4516;Ti(24594,l);c[e>>2]=c[j>>2];break a}break}case 4:{c[k>>2]=Lr(c[f>>2]|0,1936684398,c[h>>2]|0)|0;if(c[k>>2]|0){c[m>>2]=4521;Ti(24594,m);c[e>>2]=c[k>>2];break a}break}default:{c[e>>2]=-2147483646;break a}}c[e>>2]=0}while(0);i=n;return c[e>>2]|0}function ot(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0;u=i;i=i+80|0;r=u+32|0;t=u+24|0;s=u+16|0;q=u+8|0;p=u;e=u+76|0;v=u+72|0;f=u+68|0;g=u+64|0;o=u+60|0;h=u+56|0;j=u+52|0;k=u+48|0;l=u+44|0;m=u+40|0;n=u+36|0;c[v>>2]=a;c[f>>2]=b;c[g>>2]=d;c[o>>2]=0;c[h>>2]=0;if(!(c[v>>2]|0)){c[e>>2]=-2147483647;v=c[e>>2]|0;i=u;return v|0}if(!(c[f>>2]|0)){c[e>>2]=-2147483647;v=c[e>>2]|0;i=u;return v|0}if(!(c[(c[f>>2]|0)+36>>2]|0)){c[e>>2]=-2147483647;v=c[e>>2]|0;i=u;return v|0}c[o>>2]=c[(c[f>>2]|0)+40>>2];c[j>>2]=as(c[f>>2]|0,0)|0;if(c[j>>2]|0){c[p>>2]=4596;Ti(24594,p);c[e>>2]=c[j>>2];v=c[e>>2]|0;i=u;return v|0}c[k>>2]=as(c[f>>2]|0,1952868452)|0;if(c[k>>2]|0){c[q>>2]=4599;Ti(24594,q);c[e>>2]=c[k>>2];v=c[e>>2]|0;i=u;return v|0}c[l>>2]=as(c[f>>2]|0,32)|0;if(c[l>>2]|0){c[s>>2]=4602;Ti(24594,s);c[e>>2]=c[l>>2];v=c[e>>2]|0;i=u;return v|0}c[m>>2]=as(c[f>>2]|0,c[(c[g>>2]|0)+8+20>>2]|0)|0;if(c[m>>2]|0){c[t>>2]=4605;Ti(24594,t);c[e>>2]=c[m>>2];v=c[e>>2]|0;i=u;return v|0}if(1986618469!=(c[(c[g>>2]|0)+1272>>2]|0)){if(1936684398==(c[(c[g>>2]|0)+1272>>2]|0))c[h>>2]=33554432}else c[h>>2]=16842752;c[n>>2]=as(c[f>>2]|0,c[h>>2]|0)|0;if(c[n>>2]|0){c[r>>2]=4616;Ti(24594,r);c[e>>2]=c[n>>2];v=c[e>>2]|0;i=u;return v|0}else{it(c[f>>2]|0,c[o>>2]|0)|0;c[e>>2]=0;v=c[e>>2]|0;i=u;return v|0}return 0}function pt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=i;i=i+128|0;y=B+56|0;x=B+48|0;w=B+40|0;v=B+32|0;A=B+24|0;z=B+16|0;u=B+8|0;t=B;f=B+112|0;C=B+108|0;g=B+104|0;h=B+100|0;j=B+96|0;s=B+92|0;k=B+88|0;l=B+84|0;m=B+80|0;n=B+76|0;o=B+72|0;p=B+68|0;q=B+64|0;r=B+60|0;c[C>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[s>>2]=0;if(!(c[C>>2]|0)){c[f>>2]=-2147483647;C=c[f>>2]|0;i=B;return C|0}if(!(c[g>>2]|0)){c[f>>2]=-2147483647;C=c[f>>2]|0;i=B;return C|0}if(!(c[(c[g>>2]|0)+36>>2]|0)){c[f>>2]=-2147483647;C=c[f>>2]|0;i=B;return C|0}c[s>>2]=c[(c[g>>2]|0)+40>>2];c[k>>2]=as(c[g>>2]|0,0)|0;if(c[k>>2]|0){c[t>>2]=4646;Ti(24594,t);c[f>>2]=c[k>>2];C=c[f>>2]|0;i=B;return C|0}c[l>>2]=as(c[g>>2]|0,1953658222)|0;if(c[l>>2]|0){c[u>>2]=4649;Ti(24594,u);c[f>>2]=c[l>>2];C=c[f>>2]|0;i=B;return C|0}c[m>>2]=as(c[g>>2]|0,773)|0;if(c[m>>2]|0){c[z>>2]=4654;Ti(24594,z);c[f>>2]=c[m>>2];C=c[f>>2]|0;i=B;return C|0}c[n>>2]=as(c[g>>2]|0,1)|0;if(c[n>>2]|0){c[A>>2]=4657;Ti(24594,A);c[f>>2]=c[n>>2];C=c[f>>2]|0;i=B;return C|0}c[c[j>>2]>>2]=c[(c[g>>2]|0)+40>>2];c[o>>2]=as(c[g>>2]|0,0)|0;if(c[o>>2]|0){c[v>>2]=4661;Ti(24594,v);c[f>>2]=c[o>>2];C=c[f>>2]|0;i=B;return C|0}c[p>>2]=as(c[g>>2]|0,33554432)|0;if(c[p>>2]|0){c[w>>2]=4664;Ti(24594,w);c[f>>2]=c[p>>2];C=c[f>>2]|0;i=B;return C|0}c[q>>2]=as(c[g>>2]|0,$(c[(c[g>>2]|0)+20>>2]|0,((c[(c[h>>2]|0)+104+8+20>>2]|0)>>>0)/1e3|0)|0)|0;if(c[q>>2]|0){c[x>>2]=4667;Ti(24594,x);c[f>>2]=c[q>>2];C=c[f>>2]|0;i=B;return C|0}c[r>>2]=as(c[g>>2]|0,c[(c[g>>2]|0)+32>>2]|0)|0;if(c[r>>2]|0){c[y>>2]=4670;Ti(24594,y);c[f>>2]=c[r>>2];C=c[f>>2]|0;i=B;return C|0}else{it(c[g>>2]|0,c[s>>2]|0)|0;c[f>>2]=0;C=c[f>>2]|0;i=B;return C|0}return 0}function qt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>>2]=a;c[f>>2]=b;do if(c[f>>2]|0){if(!(c[e>>2]|0)){c[d>>2]=-2147483647;break}if(!(c[(c[f>>2]|0)+36>>2]|0)){c[d>>2]=-2147483647;break}else{Mi(c[(c[f>>2]|0)+36>>2]|0,0,c[(c[e>>2]|0)+6360>>2]|0)|0;c[(c[f>>2]|0)+40>>2]=c[(c[e>>2]|0)+6360>>2];c[d>>2]=0;break}}else c[d>>2]=-2147483647;while(0);i=g;return c[d>>2]|0}function rt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;a=c[d>>2]|0;i=g;return a|0}if(!(c[f>>2]|0)){c[d>>2]=-2147483647;a=c[d>>2]|0;i=g;return a|0}if(!(c[c[f>>2]>>2]|0)){c[d>>2]=-2147483647;a=c[d>>2]|0;i=g;return a|0}else{c[(c[f>>2]|0)+8>>2]=c[(c[e>>2]|0)+6340>>2];c[(c[f>>2]|0)+16>>2]=c[(c[e>>2]|0)+6344>>2];c[(c[f>>2]|0)+20>>2]=c[(c[e>>2]|0)+6348>>2];c[d>>2]=0;a=c[d>>2]|0;i=g;return a|0}return 0}function st(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=0;c[f>>2]=0;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;f=c[b>>2]|0;i=g;return f|0}a=(c[d>>2]|0)+6392|0;c[a>>2]=0;c[a+4>>2]=0;c[(c[d>>2]|0)+6368>>2]=0;c[(c[d>>2]|0)+6380>>2]=0;c[(c[d>>2]|0)+6376>>2]=0;c[(c[d>>2]|0)+6372>>2]=0;while(1){if((c[e>>2]|0)>>>0>=(c[(c[d>>2]|0)+136+336>>2]|0)>>>0)break;c[f>>2]=(c[d>>2]|0)+136+344+((c[e>>2]|0)*1280|0)+104+88+64;c[(c[f>>2]|0)+836+16>>2]=0;ct((c[f>>2]|0)+836+20|0,4)|0;c[(c[f>>2]|0)+804+12>>2]=0;c[(c[f>>2]|0)+804+28>>2]=0;ct((c[f>>2]|0)+804+16|0,8)|0;c[(c[f>>2]|0)+912+12>>2]=0;c[(c[f>>2]|0)+912+28>>2]=0;ct((c[f>>2]|0)+912+16|0,8)|0;c[(c[f>>2]|0)+960+12>>2]=0;ct((c[f>>2]|0)+960+16|0,4)|0;c[(c[f>>2]|0)+988+12>>2]=0;ct((c[f>>2]|0)+988+16|0,8)|0;c[(c[f>>2]|0)+872+12>>2]=1;c[(c[f>>2]|0)+8+12>>2]=0;c[e>>2]=(c[e>>2]|0)+1}c[b>>2]=0;f=c[b>>2]|0;i=g;return f|0}function tt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;h=j+8|0;g=j;b=j+24|0;d=j+20|0;e=j+16|0;f=j+12|0;c[d>>2]=a;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;h=c[b>>2]|0;i=j;return h|0}c[(c[d>>2]|0)+5680+24>>2]=0;do if(1&c[c[d>>2]>>2]|0){c[e>>2]=ut(c[d>>2]|0,(c[d>>2]|0)+5680+32+((c[(c[d>>2]|0)+5680+24>>2]|0)*144|0)|0,1986618469)|0;if(!(c[e>>2]|0)){g=(c[d>>2]|0)+5680+24|0;c[g>>2]=(c[g>>2]|0)+1;break}c[g>>2]=32;Ti(24594,g);c[b>>2]=c[e>>2];h=c[b>>2]|0;i=j;return h|0}while(0);do if(2&c[c[d>>2]>>2]|0){c[f>>2]=ut(c[d>>2]|0,(c[d>>2]|0)+5680+32+((c[(c[d>>2]|0)+5680+24>>2]|0)*144|0)|0,1936684398)|0;if(!(c[f>>2]|0)){h=(c[d>>2]|0)+5680+24|0;c[h>>2]=(c[h>>2]|0)+1;break}c[h>>2]=39;Ti(24594,h);c[b>>2]=c[f>>2];h=c[b>>2]|0;i=j;return h|0}while(0);c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}function ut(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+48|0;o=p+16|0;n=p+8|0;m=p;e=p+44|0;f=p+40|0;g=p+36|0;h=p+32|0;j=p+28|0;k=p+24|0;l=p+20|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[g>>2]|0)){c[e>>2]=-2147483647;o=c[e>>2]|0;i=p;return o|0}c[j>>2]=vt(c[f>>2]|0,(c[g>>2]|0)+8|0)|0;if(c[j>>2]|0){c[m>>2]=210;Ti(24594,m);c[e>>2]=c[j>>2];o=c[e>>2]|0;i=p;return o|0}c[k>>2]=wt(c[f>>2]|0,(c[g>>2]|0)+112|0)|0;if(c[k>>2]|0){c[n>>2]=213;Ti(24594,n);c[e>>2]=c[k>>2];o=c[e>>2]|0;i=p;return o|0}c[l>>2]=xt(c[f>>2]|0,(c[g>>2]|0)+56|0)|0;if(c[l>>2]|0){c[o>>2]=216;Ti(24594,o);c[e>>2]=c[l>>2];o=c[e>>2]|0;i=p;return o|0}else{c[(c[g>>2]|0)+128>>2]=c[h>>2];c[e>>2]=0;o=c[e>>2]|0;i=p;return o|0}return 0}function vt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;b=c[d>>2]|0;i=g;return b|0}if(!(c[f>>2]|0)){c[d>>2]=-2147483647;b=c[d>>2]|0;i=g;return b|0}else{c[(c[f>>2]|0)+16>>2]=(c[(c[e>>2]|0)+5680+24>>2]|0)+1;c[(c[f>>2]|0)+12>>2]=131072;c[d>>2]=0;b=c[d>>2]|0;i=g;return b|0}return 0}function wt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;do if(c[g>>2]|0)if(!(c[e>>2]|0)){c[d>>2]=-2147483647;break}else{c[(c[e>>2]|0)+12>>2]=0;c[d>>2]=0;break}else c[d>>2]=-2147483647;while(0);i=f;return c[d>>2]|0}function xt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;g=h;d=h+16|0;j=h+12|0;e=h+8|0;f=h+4|0;c[j>>2]=a;c[e>>2]=b;if(!(c[j>>2]|0)){c[d>>2]=-2147483647;j=c[d>>2]|0;i=h;return j|0}if(!(c[e>>2]|0)){c[d>>2]=-2147483647;j=c[d>>2]|0;i=h;return j|0}c[(c[e>>2]|0)+12>>2]=0;c[(c[e>>2]|0)+16>>2]=0;c[(c[e>>2]|0)+24>>2]=0;c[(c[e>>2]|0)+28>>2]=773;Mi((c[e>>2]|0)+44|0,0,12)|0;c[f>>2]=Ni((c[e>>2]|0)+44|0,100)|0;if(c[f>>2]|0){c[g>>2]=149;Ti(24594,g);c[d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}else{c[d>>2]=0;j=c[d>>2]|0;i=h;return j|0}return 0}function yt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=0;c[f>>2]=0;c[g>>2]=0;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;g=c[b>>2]|0;i=h;return g|0}c[e>>2]=0;while(1){if((c[e>>2]|0)>>>0>=(c[(c[d>>2]|0)+5680+24>>2]|0)>>>0)break;c[f>>2]=(c[d>>2]|0)+5680+32+((c[e>>2]|0)*144|0);c[g>>2]=(c[f>>2]|0)+56;Oi((c[g>>2]|0)+44|0)|0;c[e>>2]=(c[e>>2]|0)+1}c[b>>2]=0;g=c[b>>2]|0;i=h;return g|0}function zt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;b=k+20|0;d=k+16|0;e=k+12|0;h=k+8|0;g=k+4|0;f=k;c[d>>2]=a;c[e>>2]=0;c[h>>2]=0;c[g>>2]=0;c[f>>2]=0;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;j=c[b>>2]|0;i=k;return j|0}c[e>>2]=0;while(1){if((c[e>>2]|0)>>>0>=(c[(c[d>>2]|0)+136+336>>2]|0)>>>0)break;c[h>>2]=(c[d>>2]|0)+136+120+24+(c[e>>2]<<5);c[g>>2]=(c[d>>2]|0)+136+120+152+(c[e>>2]<<4);c[f>>2]=(c[d>>2]|0)+136+344+((c[e>>2]|0)*1280|0);c[(c[g>>2]|0)+12>>2]=c[(c[f>>2]|0)+8+20>>2];c[(c[h>>2]|0)+12>>2]=c[(c[f>>2]|0)+8+20>>2];c[(c[h>>2]|0)+16>>2]=1;a=c[(c[f>>2]|0)+1272>>2]|0;a:do if((a|0)<1986618469){switch(a|0){case 1936684398:break;default:{j=8;break a}}c[(c[h>>2]|0)+20>>2]=640}else{switch(a|0){case 1986618469:break;default:{j=8;break a}}c[(c[h>>2]|0)+20>>2]=3600}while(0);if((j|0)==8){j=0;c[(c[h>>2]|0)+20>>2]=0}c[e>>2]=(c[e>>2]|0)+1}c[b>>2]=0;j=c[b>>2]|0;i=k;return j|0}function At(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=a;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;a=c[d>>2]|0;i=f;return a|0}else{c[(c[e>>2]|0)+5600+12>>2]=1;c[(c[e>>2]|0)+5600+16>>2]=9e4;c[(c[e>>2]|0)+5600+20>>2]=0;c[(c[e>>2]|0)+5600+24>>2]=0;b[(c[e>>2]|0)+5600+30>>1]=1;c[(c[e>>2]|0)+5600+32>>2]=0;c[(c[e>>2]|0)+5600+36>>2]=0;c[(c[e>>2]|0)+5600+40>>2]=-2147483648;c[d>>2]=0;a=c[d>>2]|0;i=f;return a|0}return 0}function Bt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;do if(c[f>>2]|0){if(!(c[g>>2]|0)){c[e>>2]=-2147483647;break}c[j>>2]=Ct(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(c[j>>2]|0){c[k>>2]=267;Ti(24594,k);c[e>>2]=c[j>>2];break}else{c[e>>2]=0;break}}else c[e>>2]=-2147483647;while(0);i=l;return c[e>>2]|0}function Ct(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0;x=i;i=i+80|0;v=x+16|0;u=x+8|0;g=x;h=x+72|0;j=x+68|0;k=x+64|0;e=x+60|0;r=x+56|0;s=x+52|0;m=x+48|0;n=x+44|0;q=x+40|0;l=x+36|0;t=x+32|0;f=x+28|0;o=x+24|0;p=x+20|0;c[j>>2]=a;c[k>>2]=b;c[e>>2]=d;c[r>>2]=0;c[s>>2]=0;c[m>>2]=0;c[n>>2]=0;c[q>>2]=0;c[l>>2]=0;c[t>>2]=0;if(!(c[j>>2]|0)){c[h>>2]=-2147483647;w=c[h>>2]|0;i=x;return w|0}if(!(c[k>>2]|0)){c[h>>2]=-2147483647;w=c[h>>2]|0;i=x;return w|0}c[f>>2]=Dt(c[j>>2]|0,c[e>>2]|0,r)|0;if(c[f>>2]|0){c[g>>2]=370;Ti(24594,g);c[h>>2]=c[f>>2];w=c[h>>2]|0;i=x;return w|0}c[s>>2]=(c[r>>2]|0)+56;g=(c[s>>2]|0)+12|0;c[g>>2]=(c[g>>2]|0)+1;if(1==(c[(c[s>>2]|0)+12>>2]|0)){c[(c[s>>2]|0)+32>>2]=c[(c[k>>2]|0)+8>>2];c[(c[s>>2]|0)+36>>2]=c[(c[k>>2]|0)+32>>2];c[h>>2]=0;w=c[h>>2]|0;i=x;return w|0}e=c[e>>2]|0;a:do if((e|0)<1986618469){switch(e|0){case 1936684398:break;default:{w=12;break a}}c[q>>2]=c[(c[j>>2]|0)+112+12>>2]}else{switch(e|0){case 1986618469:break;default:{w=12;break a}}c[q>>2]=9e4}while(0);if((w|0)==12)c[q>>2]=0;c[m>>2]=c[(c[s>>2]|0)+32>>2];c[n>>2]=c[(c[s>>2]|0)+36>>2];c[l>>2]=$((c[(c[k>>2]|0)+8>>2]|0)-(c[m>>2]|0)|0,((c[q>>2]|0)>>>0)/1e3|0)|0;c[t>>2]=Ji(8)|0;c[o>>2]=-2147483645;if(!(c[t>>2]|0)){c[u>>2]=414;Ti(24657,u);c[h>>2]=c[o>>2];w=c[h>>2]|0;i=x;return w|0}Qr(c[t>>2]|0,c[l>>2]|0);Qr((c[t>>2]|0)+4|0,c[n>>2]|0);c[p>>2]=Qi((c[s>>2]|0)+44|0,c[t>>2]|0,8)|0;if(c[p>>2]|0){c[v>>2]=423;Ti(24594,v);c[h>>2]=c[p>>2];w=c[h>>2]|0;i=x;return w|0}else{c[(c[s>>2]|0)+32>>2]=c[(c[k>>2]|0)+8>>2];c[(c[s>>2]|0)+36>>2]=c[(c[k>>2]|0)+32>>2];w=(c[r>>2]|0)+140|0;c[w>>2]=(c[w>>2]|0)+(c[l>>2]|0);w=$(c[(c[k>>2]|0)+8>>2]|0,((c[q>>2]|0)>>>0)/1e3|0)|0;c[(c[r>>2]|0)+132>>2]=w;c[h>>2]=0;w=c[h>>2]|0;i=x;return w|0}return 0}function Dt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l;g=l+20|0;h=l+16|0;e=l+12|0;j=l+8|0;f=l+4|0;c[h>>2]=a;c[e>>2]=b;c[j>>2]=d;c[f>>2]=0;if(!(c[h>>2]|0)){c[g>>2]=-2147483647;k=c[g>>2]|0;i=l;return k|0}if(!(c[j>>2]|0)){c[g>>2]=-2147483647;k=c[g>>2]|0;i=l;return k|0}c[f>>2]=0;while(1){d=c[e>>2]|0;if((c[f>>2]|0)>>>0>=(c[(c[h>>2]|0)+5680+24>>2]|0)>>>0){a=10;break}b=c[f>>2]|0;if((d|0)==(c[(c[h>>2]|0)+5680+32+((c[f>>2]|0)*144|0)+128>>2]|0)){a=8;break}c[f>>2]=b+1}if((a|0)==8){c[c[j>>2]>>2]=(c[h>>2]|0)+5680+32+(b*144|0);c[g>>2]=0;k=c[g>>2]|0;i=l;return k|0}else if((a|0)==10){c[k>>2]=d;Ti(24632,k);c[g>>2]=-2147483392;k=c[g>>2]|0;i=l;return k|0}return 0}function Et(a,b){a=a|0;b=b|0;var e=0,f=0,g=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,v=0;v=i;i=i+80|0;u=v+16|0;t=v+8|0;s=v;o=v+68|0;e=v+64|0;f=v+60|0;l=v+56|0;m=v+52|0;g=v+48|0;h=v+44|0;k=v+40|0;j=v+36|0;n=v+32|0;p=v+28|0;q=v+24|0;r=v+20|0;c[e>>2]=a;c[f>>2]=b;c[l>>2]=0;c[m>>2]=0;c[g>>2]=0;c[h>>2]=0;c[k>>2]=0;c[j>>2]=0;c[n>>2]=0;c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[(c[e>>2]|0)+5680+24>>2]|0)>>>0){a=18;break}c[l>>2]=(c[e>>2]|0)+5680+32+((c[g>>2]|0)*144|0);c[m>>2]=(c[l>>2]|0)+56;if(c[(c[m>>2]|0)+12>>2]|0){a=c[m>>2]|0;if(1986618469==(c[(c[l>>2]|0)+128>>2]|0)){c[h>>2]=c[a+32>>2];c[j>>2]=((c[(c[f>>2]|0)+8>>2]|0)-(c[h>>2]|0)|0)*90}else{c[n>>2]=Ri(a+44|0,-1)|0;c[p>>2]=-2147483392;if(!(c[n>>2]|0)){a=7;break}c[j>>2]=((d[c[n>>2]>>0]|0)<<24)+((d[(c[n>>2]|0)+1>>0]|0)<<16)+((d[(c[n>>2]|0)+2>>0]|0)<<8)+(d[(c[n>>2]|0)+3>>0]|0)}c[k>>2]=c[(c[m>>2]|0)+36>>2];c[n>>2]=Ji(8)|0;c[q>>2]=-2147483645;if(!(c[n>>2]|0)){a=10;break}Qr(c[n>>2]|0,c[j>>2]|0);Qr((c[n>>2]|0)+4|0,c[k>>2]|0);c[r>>2]=Qi((c[m>>2]|0)+44|0,c[n>>2]|0,8)|0;if(c[r>>2]|0){a=12;break}b=(c[l>>2]|0)+140|0;c[b>>2]=(c[b>>2]|0)+(c[j>>2]|0);b=(c[l>>2]|0)+132|0;c[b>>2]=(c[b>>2]|0)+(c[j>>2]|0);if((c[(c[l>>2]|0)+140>>2]|0)>>>0>(c[(c[e>>2]|0)+5600+36>>2]|0)>>>0)a=c[(c[l>>2]|0)+140>>2]|0;else a=c[(c[e>>2]|0)+5600+36>>2]|0;c[(c[e>>2]|0)+5600+36>>2]=a}c[g>>2]=(c[g>>2]|0)+1}if((a|0)==7){c[s>>2]=314;Ti(24657,s);c[o>>2]=c[p>>2];u=c[o>>2]|0;i=v;return u|0}else if((a|0)==10){c[t>>2]=325;Ti(24657,t);c[o>>2]=c[q>>2];u=c[o>>2]|0;i=v;return u|0}else if((a|0)==12){c[u>>2]=334;Ti(24594,u);c[o>>2]=c[r>>2];u=c[o>>2]|0;i=v;return u|0}else if((a|0)==18){c[o>>2]=0;u=c[o>>2]|0;i=v;return u|0}return 0}function Ft(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[f>>2]=b;c[g>>2]=d;c[h>>2]=0;if((c[(c[f>>2]|0)+4>>2]|0)>>>0<((c[(c[f>>2]|0)+8>>2]|0)+4|0)>>>0){c[e>>2]=-2147483645;h=c[e>>2]|0;i=j;return h|0}else{c[h>>2]=c[(c[f>>2]|0)+8>>2];b=(c[g>>2]|0)>>>24&255;d=c[h>>2]|0;c[h>>2]=d+1;a[(c[c[f>>2]>>2]|0)+d>>0]=b;d=(c[g>>2]|0)>>>16&255;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[c[f>>2]>>2]|0)+b>>0]=d;b=(c[g>>2]|0)>>>8&255;d=c[h>>2]|0;c[h>>2]=d+1;a[(c[c[f>>2]>>2]|0)+d>>0]=b;d=c[g>>2]&255;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[c[f>>2]>>2]|0)+b>>0]=d;h=(c[f>>2]|0)+8|0;c[h>>2]=(c[h>>2]|0)+4;c[e>>2]=0;h=c[e>>2]|0;i=j;return h|0}return 0}function Gt(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;f=k+16|0;g=k+12|0;h=k;j=k+8|0;c[g>>2]=b;b=h;c[b>>2]=d;c[b+4>>2]=e;c[j>>2]=0;if((c[(c[g>>2]|0)+4>>2]|0)>>>0<((c[(c[g>>2]|0)+8>>2]|0)+8|0)>>>0){c[f>>2]=-2147483645;j=c[f>>2]|0;i=k;return j|0}else{c[j>>2]=c[(c[g>>2]|0)+8>>2];e=h;e=Rx(c[e>>2]|0,c[e+4>>2]|0,56)|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[c[g>>2]>>2]|0)+b>>0]=e;b=h;b=Rx(c[b>>2]|0,c[b+4>>2]|0,48)|0;e=c[j>>2]|0;c[j>>2]=e+1;a[(c[c[g>>2]>>2]|0)+e>>0]=b;e=h;e=Rx(c[e>>2]|0,c[e+4>>2]|0,40)|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[c[g>>2]>>2]|0)+b>>0]=e;b=c[h+4>>2]&255;e=c[j>>2]|0;c[j>>2]=e+1;a[(c[c[g>>2]>>2]|0)+e>>0]=b;e=h;e=Rx(c[e>>2]|0,c[e+4>>2]|0,24)|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[c[g>>2]>>2]|0)+b>>0]=e;b=h;b=Rx(c[b>>2]|0,c[b+4>>2]|0,16)|0;e=c[j>>2]|0;c[j>>2]=e+1;a[(c[c[g>>2]>>2]|0)+e>>0]=b;e=h;e=Rx(c[e>>2]|0,c[e+4>>2]|0,8)|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[c[g>>2]>>2]|0)+b>>0]=e;h=c[h>>2]&255;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[c[g>>2]>>2]|0)+b>>0]=h;j=(c[g>>2]|0)+8|0;c[j>>2]=(c[j>>2]|0)+8;c[f>>2]=0;j=c[f>>2]|0;i=k;return j|0}return 0}function Ht(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(((c[(c[f>>2]|0)+8>>2]|0)+(c[h>>2]|0)|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0){c[e>>2]=-2147483645;a=c[e>>2]|0;i=j;return a|0}else{Li((c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)|0,c[g>>2]|0,c[h>>2]|0)|0;a=(c[f>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+(c[h>>2]|0);c[e>>2]=0;a=c[e>>2]|0;i=j;return a|0}return 0}function It(){var a=0;a=(ab(0)|0)+-2085978496|0;D=0;return a|0}function Jt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;b=c[d>>2]|0;i=g;return b|0}c[(c[e>>2]|0)+5600+20>>2]=c[f>>2];if(!(c[(c[e>>2]|0)+6364>>2]|0)){a=It()|0;b=(c[e>>2]|0)+5648+16|0;c[b>>2]=a;c[b+4>>2]=D;c[(c[e>>2]|0)+6364>>2]=1}c[d>>2]=0;b=c[d>>2]|0;i=g;return b|0}function Kt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=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,v=0;u=i;i=i+96|0;r=u+48|0;q=u+40|0;p=u+32|0;t=u+24|0;s=u+16|0;o=u+8|0;n=u;d=u+88|0;v=u+84|0;e=u+80|0;f=u+76|0;g=u+72|0;h=u+68|0;j=u+64|0;k=u+60|0;l=u+56|0;m=u+52|0;c[v>>2]=a;c[e>>2]=b;do if(c[v>>2]|0){if(!(c[e>>2]|0)){c[d>>2]=-2147483647;break}if(!(c[c[e>>2]>>2]|0)){c[d>>2]=-2147483647;break}c[f>>2]=Ft(c[e>>2]|0,28)|0;if(c[f>>2]|0){c[n>>2]=641;Ti(24594,n);c[d>>2]=c[f>>2];break}c[g>>2]=Ft(c[e>>2]|0,1937013104)|0;if(c[g>>2]|0){c[o>>2]=644;Ti(24594,o);c[d>>2]=c[g>>2];break}c[h>>2]=Ft(c[e>>2]|0,1836278888)|0;if(c[h>>2]|0){c[s>>2]=647;Ti(24594,s);c[d>>2]=c[h>>2];break}c[j>>2]=Ft(c[e>>2]|0,0)|0;if(c[j>>2]|0){c[t>>2]=650;Ti(24594,t);c[d>>2]=c[j>>2];break}c[k>>2]=Ft(c[e>>2]|0,1836278888)|0;if(c[k>>2]|0){c[p>>2]=653;Ti(24594,p);c[d>>2]=c[k>>2];break}c[l>>2]=Ft(c[e>>2]|0,1836280184)|0;if(c[l>>2]|0){c[q>>2]=654;Ti(24594,q);c[d>>2]=c[l>>2];break}c[m>>2]=Ft(c[e>>2]|0,1212894537)|0;if(c[m>>2]|0){c[r>>2]=655;Ti(24594,r);c[d>>2]=c[m>>2];break}else{c[d>>2]=0;break}}else c[d>>2]=-2147483647;while(0);i=u;return c[d>>2]|0}function Lt(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=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;t=i;i=i+80|0;q=t+40|0;s=t+32|0;r=t+24|0;p=t+16|0;o=t+8|0;f=t+72|0;g=t+68|0;h=t;u=t+64|0;j=t+60|0;k=t+56|0;l=t+52|0;m=t+48|0;n=t+44|0;c[g>>2]=a;a=h;c[a>>2]=b;c[a+4>>2]=d;c[u>>2]=e;b=c[g>>2]|0;if(!(c[u>>2]|0)){c[j>>2]=Ft(b,c[h>>2]|0)|0;if(c[j>>2]|0){c[o>>2]=674;Ti(24594,o);c[f>>2]=c[j>>2];u=c[f>>2]|0;i=t;return u|0}c[k>>2]=Ft(c[g>>2]|0,1835295092)|0;if(c[k>>2]|0){c[p>>2]=676;Ti(24594,p);c[f>>2]=c[k>>2];u=c[f>>2]|0;i=t;return u|0}}else{c[l>>2]=Ft(b,1)|0;if(c[l>>2]|0){c[r>>2]=680;Ti(24594,r);c[f>>2]=c[l>>2];u=c[f>>2]|0;i=t;return u|0}c[m>>2]=Ft(c[g>>2]|0,1835295092)|0;if(c[m>>2]|0){c[s>>2]=682;Ti(24594,s);c[f>>2]=c[m>>2];u=c[f>>2]|0;i=t;return u|0}u=h;c[n>>2]=Gt(c[g>>2]|0,c[u>>2]|0,c[u+4>>2]|0)|0;if(c[n>>2]|0){c[q>>2]=684;Ti(24594,q);c[f>>2]=c[n>>2];u=c[f>>2]|0;i=t;return u|0}}c[f>>2]=0;u=c[f>>2]|0;i=t;return u|0}function Mt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+64|0;o=p+24|0;n=p+16|0;m=p+8|0;l=p;d=p+56|0;q=p+52|0;e=p+48|0;f=p+44|0;g=p+40|0;h=p+36|0;j=p+32|0;k=p+28|0;c[q>>2]=a;c[e>>2]=b;c[f>>2]=0;do if(c[q>>2]|0){if(!(c[e>>2]|0)){c[d>>2]=-2147483647;break}if(!(c[c[e>>2]>>2]|0)){c[d>>2]=-2147483647;break}c[f>>2]=c[(c[e>>2]|0)+8>>2];c[g>>2]=ms(c[e>>2]|0,0,1835362404)|0;if(c[g>>2]|0){c[l>>2]=710;Ti(24594,l);c[d>>2]=c[g>>2];break}c[h>>2]=bs(c[e>>2]|0,0)|0;if(c[h>>2]|0){c[m>>2]=713;Ti(24594,m);c[d>>2]=c[h>>2];break}c[j>>2]=bs(c[e>>2]|0,0)|0;if(c[j>>2]|0){c[n>>2]=716;Ti(24594,n);c[d>>2]=c[j>>2];break}c[k>>2]=hs(c[e>>2]|0,c[f>>2]|0)|0;if(c[k>>2]|0){c[o>>2]=719;Ti(24594,o);c[d>>2]=c[k>>2];break}else{c[d>>2]=0;break}}else c[d>>2]=-2147483647;while(0);i=p;return c[d>>2]|0}function Nt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=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,v=0,w=0;w=i;i=i+96|0;s=w+32|0;u=w+24|0;t=w+16|0;r=w+8|0;q=w;d=w+80|0;e=w+76|0;f=w+72|0;h=w+68|0;g=w+64|0;p=w+60|0;o=w+56|0;j=w+52|0;k=w+48|0;l=w+44|0;m=w+40|0;n=w+36|0;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;c[g>>2]=0;c[p>>2]=0;c[o>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;v=c[d>>2]|0;i=w;return v|0}if(!(c[f>>2]|0)){c[d>>2]=-2147483647;v=c[d>>2]|0;i=w;return v|0}if(!(c[c[f>>2]>>2]|0)){c[d>>2]=-2147483647;v=c[d>>2]|0;i=w;return v|0}c[g>>2]=c[(c[f>>2]|0)+8>>2];c[j>>2]=ms(c[f>>2]|0,0,1836475768)|0;if(c[j>>2]|0){c[q>>2]=747;Ti(24594,q);c[d>>2]=c[j>>2];v=c[d>>2]|0;i=w;return v|0}c[k>>2]=Mt(c[e>>2]|0,c[f>>2]|0)|0;if(c[k>>2]|0){c[r>>2]=750;Ti(24594,r);c[d>>2]=c[k>>2];v=c[d>>2]|0;i=w;return v|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>=(c[(c[e>>2]|0)+136+336>>2]|0)>>>0)break;c[p>>2]=(c[e>>2]|0)+136+120+24+(c[h>>2]<<5);c[l>>2]=Ot(c[p>>2]|0,c[f>>2]|0)|0;if(c[l>>2]|0){v=14;break}c[h>>2]=(c[h>>2]|0)+1}if((v|0)==14){c[t>>2]=757;Ti(24594,t);c[d>>2]=c[l>>2];v=c[d>>2]|0;i=w;return v|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>=(c[(c[e>>2]|0)+136+336>>2]|0)>>>0)break;c[o>>2]=(c[e>>2]|0)+136+120+152+(c[h>>2]<<4);c[m>>2]=Pt(c[o>>2]|0,c[f>>2]|0)|0;if(c[m>>2]|0){v=19;break}c[h>>2]=(c[h>>2]|0)+1}if((v|0)==19){c[u>>2]=765;Ti(24594,u);c[d>>2]=c[m>>2];v=c[d>>2]|0;i=w;return v|0}c[n>>2]=hs(c[f>>2]|0,c[g>>2]|0)|0;if(c[n>>2]|0){c[s>>2]=769;Ti(24594,s);c[d>>2]=c[n>>2];v=c[d>>2]|0;i=w;return v|0}else{c[d>>2]=0;v=c[d>>2]|0;i=w;return v|0}return 0}function Ot(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=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,v=0,w=0,x=0,y=0;y=i;i=i+112|0;v=y+56|0;u=y+48|0;t=y+40|0;s=y+32|0;x=y+24|0;w=y+16|0;r=y+8|0;q=y;d=y+104|0;e=y+100|0;f=y+96|0;p=y+92|0;g=y+88|0;h=y+84|0;j=y+80|0;k=y+76|0;l=y+72|0;m=y+68|0;n=y+64|0;o=y+60|0;c[e>>2]=a;c[f>>2]=b;c[p>>2]=0;if(!(c[f>>2]|0)){c[d>>2]=-2147483647;x=c[d>>2]|0;i=y;return x|0}if(!(c[c[f>>2]>>2]|0)){c[d>>2]=-2147483647;x=c[d>>2]|0;i=y;return x|0}c[p>>2]=c[(c[f>>2]|0)+8>>2];c[g>>2]=ms(c[f>>2]|0,0,1953654136)|0;if(c[g>>2]|0){c[q>>2]=793;Ti(24594,q);c[d>>2]=c[g>>2];x=c[d>>2]|0;i=y;return x|0}c[h>>2]=bs(c[f>>2]|0,0)|0;if(c[h>>2]|0){c[r>>2]=796;Ti(24594,r);c[d>>2]=c[h>>2];x=c[d>>2]|0;i=y;return x|0}c[j>>2]=bs(c[f>>2]|0,c[(c[e>>2]|0)+12>>2]|0)|0;if(c[j>>2]|0){c[w>>2]=799;Ti(24594,w);c[d>>2]=c[j>>2];x=c[d>>2]|0;i=y;return x|0}c[k>>2]=bs(c[f>>2]|0,c[(c[e>>2]|0)+16>>2]|0)|0;if(c[k>>2]|0){c[x>>2]=802;Ti(24594,x);c[d>>2]=c[k>>2];x=c[d>>2]|0;i=y;return x|0}c[l>>2]=bs(c[f>>2]|0,c[(c[e>>2]|0)+20>>2]|0)|0;if(c[l>>2]|0){c[s>>2]=805;Ti(24594,s);c[d>>2]=c[l>>2];x=c[d>>2]|0;i=y;return x|0}c[m>>2]=bs(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0)|0;if(c[m>>2]|0){c[t>>2]=808;Ti(24594,t);c[d>>2]=c[m>>2];x=c[d>>2]|0;i=y;return x|0}c[n>>2]=bs(c[f>>2]|0,c[(c[e>>2]|0)+28>>2]|0)|0;if(c[n>>2]|0){c[u>>2]=811;Ti(24594,u);c[d>>2]=c[n>>2];x=c[d>>2]|0;i=y;return x|0}c[o>>2]=hs(c[f>>2]|0,c[p>>2]|0)|0;if(c[o>>2]|0){c[v>>2]=814;Ti(24594,v);c[d>>2]=c[o>>2];x=c[d>>2]|0;i=y;return x|0}else{c[d>>2]=0;x=c[d>>2]|0;i=y;return x|0}return 0}function Pt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+64|0;p=q+24|0;o=q+16|0;n=q+8|0;m=q;d=q+56|0;e=q+52|0;f=q+48|0;l=q+44|0;g=q+40|0;h=q+36|0;j=q+32|0;k=q+28|0;c[e>>2]=a;c[f>>2]=b;c[l>>2]=0;if(!(c[f>>2]|0)){c[d>>2]=-2147483647;p=c[d>>2]|0;i=q;return p|0}if(!(c[c[f>>2]>>2]|0)){c[d>>2]=-2147483647;p=c[d>>2]|0;i=q;return p|0}c[l>>2]=c[(c[f>>2]|0)+8>>2];c[g>>2]=ms(c[f>>2]|0,0,1953654128)|0;if(c[g>>2]|0){c[m>>2]=838;Ti(24594,m);c[d>>2]=c[g>>2];p=c[d>>2]|0;i=q;return p|0}c[h>>2]=bs(c[f>>2]|0,0)|0;if(c[h>>2]|0){c[n>>2]=841;Ti(24594,n);c[d>>2]=c[h>>2];p=c[d>>2]|0;i=q;return p|0}c[j>>2]=bs(c[f>>2]|0,c[(c[e>>2]|0)+12>>2]|0)|0;if(c[j>>2]|0){c[o>>2]=844;Ti(24594,o);c[d>>2]=c[j>>2];p=c[d>>2]|0;i=q;return p|0}c[k>>2]=hs(c[f>>2]|0,c[l>>2]|0)|0;if(c[k>>2]|0){c[p>>2]=847;Ti(24594,p);c[d>>2]=c[k>>2];p=c[d>>2]|0;i=q;return p|0}else{c[d>>2]=0;p=c[d>>2]|0;i=q;return p|0}return 0}function Qt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+80|0;p=s+32|0;r=s+24|0;q=s+16|0;o=s+8|0;n=s;d=s+68|0;e=s+64|0;f=s+60|0;g=s+56|0;h=s+52|0;j=s+48|0;k=s+44|0;l=s+40|0;m=s+36|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;r=c[d>>2]|0;i=s;return r|0}if(!(c[f>>2]|0)){c[d>>2]=-2147483647;r=c[d>>2]|0;i=s;return r|0}if(!(c[c[f>>2]>>2]|0)){c[d>>2]=-2147483647;r=c[d>>2]|0;i=s;return r|0}c[g>>2]=c[(c[f>>2]|0)+8>>2];c[h>>2]=Ft(c[f>>2]|0,0)|0;if(c[h>>2]|0){c[n>>2]=872;Ti(24594,n);c[d>>2]=c[h>>2];r=c[d>>2]|0;i=s;return r|0}c[j>>2]=Ft(c[f>>2]|0,1835427940)|0;if(c[j>>2]|0){c[o>>2]=875;Ti(24594,o);c[d>>2]=c[j>>2];r=c[d>>2]|0;i=s;return r|0}c[k>>2]=Ft(c[f>>2]|0,0)|0;if(c[k>>2]|0){c[q>>2]=878;Ti(24594,q);c[d>>2]=c[k>>2];r=c[d>>2]|0;i=s;return r|0}c[l>>2]=Ft(c[f>>2]|0,(c[(c[e>>2]|0)+6400>>2]|0)-1|0)|0;if(c[l>>2]|0){c[r>>2]=881;Ti(24594,r);c[d>>2]=c[l>>2];r=c[d>>2]|0;i=s;return r|0}c[m>>2]=Rt(c[f>>2]|0,c[g>>2]|0)|0;if(c[m>>2]|0){c[p>>2]=884;Ti(24594,p);c[d>>2]=c[m>>2];r=c[d>>2]|0;i=s;return r|0}else{c[d>>2]=0;r=c[d>>2]|0;i=s;return r|0}return 0}function Rt(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;g=e+8|0;f=e+4|0;h=e;c[g>>2]=b;c[f>>2]=d;c[h>>2]=(c[(c[g>>2]|0)+8>>2]|0)-(c[f>>2]|0);a[(c[c[g>>2]>>2]|0)+(c[f>>2]|0)>>0]=(c[h>>2]|0)>>>24;a[(c[c[g>>2]>>2]|0)+((c[f>>2]|0)+1)>>0]=(c[h>>2]|0)>>>16;a[(c[c[g>>2]>>2]|0)+((c[f>>2]|0)+2)>>0]=(c[h>>2]|0)>>>8;a[(c[c[g>>2]>>2]|0)+((c[f>>2]|0)+3)>>0]=c[h>>2];i=e;return 0}function St(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0;u=i;i=i+80|0;r=u+32|0;t=u+24|0;s=u+16|0;q=u+8|0;p=u;e=u+76|0;v=u+72|0;f=u+68|0;g=u+64|0;o=u+60|0;h=u+56|0;j=u+52|0;k=u+48|0;l=u+44|0;m=u+40|0;n=u+36|0;c[v>>2]=a;c[f>>2]=b;c[g>>2]=d;c[o>>2]=0;c[h>>2]=0;if(!(c[v>>2]|0)){c[e>>2]=-2147483647;v=c[e>>2]|0;i=u;return v|0}if(!(c[f>>2]|0)){c[e>>2]=-2147483647;v=c[e>>2]|0;i=u;return v|0}if(!(c[c[f>>2]>>2]|0)){c[e>>2]=-2147483647;v=c[e>>2]|0;i=u;return v|0}c[o>>2]=c[(c[f>>2]|0)+8>>2];c[h>>2]=c[(c[g>>2]|0)+112+12>>2];c[j>>2]=Ft(c[f>>2]|0,0)|0;if(c[j>>2]|0){c[p>>2]=913;Ti(24594,p);c[e>>2]=c[j>>2];v=c[e>>2]|0;i=u;return v|0}c[k>>2]=Ft(c[f>>2]|0,1952867444)|0;if(c[k>>2]|0){c[q>>2]=916;Ti(24594,q);c[e>>2]=c[k>>2];v=c[e>>2]|0;i=u;return v|0}c[l>>2]=Ft(c[f>>2]|0,0)|0;if(c[l>>2]|0){c[s>>2]=919;Ti(24594,s);c[e>>2]=c[l>>2];v=c[e>>2]|0;i=u;return v|0}c[m>>2]=Ft(c[f>>2]|0,c[h>>2]|0)|0;if(c[m>>2]|0){c[t>>2]=922;Ti(24594,t);c[e>>2]=c[m>>2];v=c[e>>2]|0;i=u;return v|0}c[n>>2]=Rt(c[f>>2]|0,c[o>>2]|0)|0;if(c[n>>2]|0){c[r>>2]=925;Ti(24594,r);c[e>>2]=c[n>>2];v=c[e>>2]|0;i=u;return v|0}else{c[e>>2]=0;v=c[e>>2]|0;i=u;return v|0}return 0}function Tt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0;z=i;i=i+112|0;w=z+48|0;v=z+40|0;u=z+32|0;y=z+24|0;x=z+16|0;t=z+8|0;s=z;e=z+100|0;f=z+96|0;g=z+92|0;h=z+88|0;r=z+84|0;q=z+80|0;j=z+76|0;k=z+72|0;l=z+68|0;m=z+64|0;n=z+60|0;o=z+56|0;p=z+52|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[r>>2]=0;c[q>>2]=0;if(!(c[g>>2]|0)){c[e>>2]=-2147483647;y=c[e>>2]|0;i=z;return y|0}if(!(c[c[g>>2]>>2]|0)){c[e>>2]=-2147483647;y=c[e>>2]|0;i=z;return y|0}c[r>>2]=c[(c[g>>2]|0)+8>>2];c[j>>2]=Ft(c[g>>2]|0,0)|0;if(c[j>>2]|0){c[s>>2]=950;Ti(24594,s);c[e>>2]=c[j>>2];y=c[e>>2]|0;i=z;return y|0}c[k>>2]=Ft(c[g>>2]|0,1953653094)|0;if(c[k>>2]|0){c[t>>2]=953;Ti(24594,t);c[e>>2]=c[k>>2];y=c[e>>2]|0;i=z;return y|0}c[l>>2]=Dt(c[f>>2]|0,c[h>>2]|0,q)|0;if(c[l>>2]|0){c[x>>2]=956;Ti(24594,x);c[e>>2]=c[l>>2];y=c[e>>2]|0;i=z;return y|0}c[m>>2]=Ut(c[f>>2]|0,c[g>>2]|0,c[q>>2]|0)|0;if(c[m>>2]|0){c[y>>2]=959;Ti(24594,y);c[e>>2]=c[m>>2];y=c[e>>2]|0;i=z;return y|0}c[n>>2]=St(c[f>>2]|0,c[g>>2]|0,c[q>>2]|0)|0;if(c[n>>2]|0){c[u>>2]=962;Ti(24594,u);c[e>>2]=c[n>>2];y=c[e>>2]|0;i=z;return y|0}c[o>>2]=Vt(c[f>>2]|0,c[g>>2]|0,c[q>>2]|0)|0;if(c[o>>2]|0){c[v>>2]=965;Ti(24594,v);c[e>>2]=c[o>>2];y=c[e>>2]|0;i=z;return y|0}c[p>>2]=Rt(c[g>>2]|0,c[r>>2]|0)|0;if(c[p>>2]|0){c[w>>2]=968;Ti(24594,w);c[e>>2]=c[p>>2];y=c[e>>2]|0;i=z;return y|0}else{c[e>>2]=0;y=c[e>>2]|0;i=z;return y|0}return 0}function Ut(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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;t=i;i=i+80|0;q=t+32|0;s=t+24|0;r=t+16|0;p=t+8|0;o=t;e=t+72|0;u=t+68|0;f=t+64|0;g=t+60|0;n=t+56|0;h=t+52|0;j=t+48|0;k=t+44|0;l=t+40|0;m=t+36|0;c[u>>2]=a;c[f>>2]=b;c[g>>2]=d;c[n>>2]=0;if(!(c[u>>2]|0)){c[e>>2]=-2147483647;u=c[e>>2]|0;i=t;return u|0}if(!(c[f>>2]|0)){c[e>>2]=-2147483647;u=c[e>>2]|0;i=t;return u|0}if(!(c[c[f>>2]>>2]|0)){c[e>>2]=-2147483647;u=c[e>>2]|0;i=t;return u|0}c[n>>2]=c[(c[f>>2]|0)+8>>2];c[h>>2]=Ft(c[f>>2]|0,0)|0;if(c[h>>2]|0){c[o>>2]=994;Ti(24594,o);c[e>>2]=c[h>>2];u=c[e>>2]|0;i=t;return u|0}c[j>>2]=Ft(c[f>>2]|0,1952868452)|0;if(c[j>>2]|0){c[p>>2]=997;Ti(24594,p);c[e>>2]=c[j>>2];u=c[e>>2]|0;i=t;return u|0}c[k>>2]=Ft(c[f>>2]|0,c[(c[g>>2]|0)+8+12>>2]|0)|0;if(c[k>>2]|0){c[r>>2]=1e3;Ti(24594,r);c[e>>2]=c[k>>2];u=c[e>>2]|0;i=t;return u|0}c[l>>2]=Ft(c[f>>2]|0,c[(c[g>>2]|0)+8+16>>2]|0)|0;if(c[l>>2]|0){c[s>>2]=1003;Ti(24594,s);c[e>>2]=c[l>>2];u=c[e>>2]|0;i=t;return u|0}c[m>>2]=Rt(c[f>>2]|0,c[n>>2]|0)|0;if(c[m>>2]|0){c[q>>2]=1006;Ti(24594,q);c[e>>2]=c[m>>2];u=c[e>>2]|0;i=t;return u|0}else{c[e>>2]=0;u=c[e>>2]|0;i=t;return u|0}return 0}function Vt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;z=i;i=i+112|0;w=z+56|0;v=z+48|0;u=z+40|0;t=z+32|0;y=z+24|0;x=z+16|0;s=z+8|0;r=z;e=z+108|0;A=z+104|0;f=z+100|0;g=z+96|0;q=z+92|0;h=z+88|0;j=z+84|0;k=z+80|0;l=z+76|0;m=z+72|0;n=z+68|0;o=z+64|0;p=z+60|0;c[A>>2]=a;c[f>>2]=b;c[g>>2]=d;c[q>>2]=0;if(!(c[A>>2]|0)){c[e>>2]=-2147483647;A=c[e>>2]|0;i=z;return A|0}if(!(c[f>>2]|0)){c[e>>2]=-2147483647;A=c[e>>2]|0;i=z;return A|0}if(!(c[c[f>>2]>>2]|0)){c[e>>2]=-2147483647;A=c[e>>2]|0;i=z;return A|0}c[q>>2]=c[(c[f>>2]|0)+8>>2];c[h>>2]=Ft(c[f>>2]|0,0)|0;if(c[h>>2]|0){c[r>>2]=1031;Ti(24594,r);c[e>>2]=c[h>>2];A=c[e>>2]|0;i=z;return A|0}c[j>>2]=Ft(c[f>>2]|0,1953658222)|0;if(c[j>>2]|0){c[s>>2]=1034;Ti(24594,s);c[e>>2]=c[j>>2];A=c[e>>2]|0;i=z;return A|0}c[k>>2]=Ft(c[f>>2]|0,c[(c[g>>2]|0)+56+28>>2]|0)|0;if(c[k>>2]|0){c[x>>2]=1037;Ti(24594,x);c[e>>2]=c[k>>2];A=c[e>>2]|0;i=z;return A|0}c[l>>2]=Ft(c[f>>2]|0,c[(c[g>>2]|0)+56+12>>2]|0)|0;if(c[l>>2]|0){c[y>>2]=1040;Ti(24594,y);c[e>>2]=c[l>>2];A=c[e>>2]|0;i=z;return A|0}c[(c[g>>2]|0)+56+20>>2]=c[(c[f>>2]|0)+8>>2];c[m>>2]=Ft(c[f>>2]|0,0)|0;if(c[m>>2]|0){c[t>>2]=1044;Ti(24594,t);c[e>>2]=c[m>>2];A=c[e>>2]|0;i=z;return A|0}c[n>>2]=Ft(c[f>>2]|0,c[(c[g>>2]|0)+56+24>>2]|0)|0;if(c[n>>2]|0){c[u>>2]=1047;Ti(24594,u);c[e>>2]=c[n>>2];A=c[e>>2]|0;i=z;return A|0}c[o>>2]=Wt((c[g>>2]|0)+56+44|0,c[f>>2]|0,8)|0;if(c[o>>2]|0){c[v>>2]=1050;Ti(24594,v);c[e>>2]=c[o>>2];A=c[e>>2]|0;i=z;return A|0}c[p>>2]=Rt(c[f>>2]|0,c[q>>2]|0)|0;if(c[p>>2]|0){c[w>>2]=1053;Ti(24594,w);c[e>>2]=c[p>>2];A=c[e>>2]|0;i=z;return A|0}else{c[e>>2]=0;A=c[e>>2]|0;i=z;return A|0}return 0}function Wt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;p=q+8|0;o=q;l=q+44|0;e=q+40|0;f=q+36|0;g=q+32|0;k=q+28|0;h=q+24|0;j=q+20|0;m=q+16|0;n=q+12|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[k>>2]=0;c[h>>2]=0;c[j>>2]=0;if(!(c[e>>2]|0)){c[l>>2]=-2147483647;p=c[l>>2]|0;i=q;return p|0}if(!(c[f>>2]|0)){c[l>>2]=-2147483647;p=c[l>>2]|0;i=q;return p|0}if(!(c[c[f>>2]>>2]|0)){c[l>>2]=-2147483647;p=c[l>>2]|0;i=q;return p|0}c[h>>2]=Pi(c[e>>2]|0)|0;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[h>>2]|0)>>>0){e=14;break}c[j>>2]=Ri(c[e>>2]|0,c[k>>2]|0)|0;c[m>>2]=-2147483392;if(!(c[j>>2]|0)){e=10;break}c[n>>2]=Ht(c[f>>2]|0,c[j>>2]|0,c[g>>2]|0)|0;if(c[n>>2]|0){e=12;break}c[k>>2]=(c[k>>2]|0)+1}if((e|0)==10){c[o>>2]=1297;Ti(24657,o);c[l>>2]=c[m>>2];p=c[l>>2]|0;i=q;return p|0}else if((e|0)==12){c[p>>2]=1300;Ti(24594,p);c[l>>2]=c[n>>2];p=c[l>>2]|0;i=q;return p|0}else if((e|0)==14){c[l>>2]=0;p=c[l>>2]|0;i=q;return p|0}return 0}function Xt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=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;u=i;i=i+96|0;r=u+40|0;q=u+32|0;t=u+24|0;s=u+16|0;p=u+8|0;o=u;d=u+80|0;e=u+76|0;f=u+72|0;g=u+68|0;h=u+64|0;j=u+60|0;k=u+56|0;l=u+52|0;m=u+48|0;n=u+44|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;t=c[d>>2]|0;i=u;return t|0}if(!(c[f>>2]|0)){c[d>>2]=-2147483647;t=c[d>>2]|0;i=u;return t|0}if(!(c[c[f>>2]>>2]|0)){c[d>>2]=-2147483647;t=c[d>>2]|0;i=u;return t|0}c[g>>2]=c[(c[f>>2]|0)+8>>2];c[(c[e>>2]|0)+6304+28>>2]=c[(c[f>>2]|0)+8>>2];c[h>>2]=Ft(c[f>>2]|0,0)|0;if(c[h>>2]|0){c[o>>2]=1126;Ti(24594,o);c[d>>2]=c[h>>2];t=c[d>>2]|0;i=u;return t|0}c[j>>2]=Ft(c[f>>2]|0,1836019558)|0;if(c[j>>2]|0){c[p>>2]=1129;Ti(24594,p);c[d>>2]=c[j>>2];t=c[d>>2]|0;i=u;return t|0}c[k>>2]=Qt(c[e>>2]|0,c[f>>2]|0)|0;if(c[k>>2]|0){c[s>>2]=1132;Ti(24594,s);c[d>>2]=c[k>>2];t=c[d>>2]|0;i=u;return t|0}if(c[c[e>>2]>>2]&1|0?(c[l>>2]=Tt(c[e>>2]|0,c[f>>2]|0,1986618469)|0,0!=(c[l>>2]|0)):0){c[t>>2]=1137;Ti(24594,t);c[d>>2]=c[l>>2];t=c[d>>2]|0;i=u;return t|0}if(c[c[e>>2]>>2]&2|0?(c[m>>2]=Tt(c[e>>2]|0,c[f>>2]|0,1936684398)|0,0!=(c[m>>2]|0)):0){c[q>>2]=1143;Ti(24594,q);c[d>>2]=c[m>>2];t=c[d>>2]|0;i=u;return t|0}c[n>>2]=Rt(c[f>>2]|0,c[g>>2]|0)|0;if(c[n>>2]|0){c[r>>2]=1147;Ti(24594,r);c[d>>2]=c[n>>2];t=c[d>>2]|0;i=u;return t|0}else{c[d>>2]=0;t=c[d>>2]|0;i=u;return t|0}return 0}function Yt(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=i;i=i+160|0;D=G+88|0;C=G+80|0;B=G+72|0;A=G+64|0;z=G+56|0;y=G+48|0;x=G+40|0;w=G+32|0;F=G+24|0;E=G+16|0;v=G+8|0;u=G;d=G+152|0;e=G+148|0;f=G+144|0;t=G+140|0;g=G+136|0;h=G+132|0;l=G+128|0;m=G+124|0;n=G+120|0;o=G+116|0;p=G+112|0;q=G+108|0;r=G+104|0;s=G+100|0;j=G+96|0;k=G+92|0;c[e>>2]=a;c[f>>2]=b;c[t>>2]=0;if(!(c[f>>2]|0)){c[d>>2]=-2147483647;F=c[d>>2]|0;i=G;return F|0}if(!(c[c[f>>2]>>2]|0)){c[d>>2]=-2147483647;F=c[d>>2]|0;i=G;return F|0}c[t>>2]=c[(c[f>>2]|0)+8>>2];c[g>>2]=Ft(c[f>>2]|0,0)|0;if(c[g>>2]|0){c[u>>2]=1171;Ti(24594,u);c[d>>2]=c[g>>2];F=c[d>>2]|0;i=G;return F|0}c[h>>2]=Ft(c[f>>2]|0,1936286840)|0;if(c[h>>2]|0){c[v>>2]=1174;Ti(24594,v);c[d>>2]=c[h>>2];F=c[d>>2]|0;i=G;return F|0}c[l>>2]=Ft(c[f>>2]|0,0)|0;if(c[l>>2]|0){c[E>>2]=1177;Ti(24594,E);c[d>>2]=c[l>>2];F=c[d>>2]|0;i=G;return F|0}c[m>>2]=Ft(c[f>>2]|0,1)|0;if(c[m>>2]|0){c[F>>2]=1180;Ti(24594,F);c[d>>2]=c[m>>2];F=c[d>>2]|0;i=G;return F|0}c[n>>2]=Ft(c[f>>2]|0,c[(c[e>>2]|0)+5600+16>>2]|0)|0;if(c[n>>2]|0){c[w>>2]=1183;Ti(24594,w);c[d>>2]=c[n>>2];F=c[d>>2]|0;i=G;return F|0}c[o>>2]=Ft(c[f>>2]|0,c[(c[e>>2]|0)+5600+20>>2]|0)|0;if(c[o>>2]|0){c[x>>2]=1186;Ti(24594,x);c[d>>2]=c[o>>2];F=c[d>>2]|0;i=G;return F|0}c[p>>2]=Ft(c[f>>2]|0,0)|0;if(c[p>>2]|0){c[y>>2]=1189;Ti(24594,y);c[d>>2]=c[p>>2];F=c[d>>2]|0;i=G;return F|0}c[q>>2]=Ft(c[f>>2]|0,1)|0;if(c[q>>2]|0){c[z>>2]=1192;Ti(24594,z);c[d>>2]=c[q>>2];F=c[d>>2]|0;i=G;return F|0}c[(c[e>>2]|0)+6304+8>>2]=c[(c[f>>2]|0)+8>>2];c[r>>2]=Ft(c[f>>2]|0,0)|0;if(c[r>>2]|0){c[A>>2]=1196;Ti(24594,A);c[d>>2]=c[r>>2];F=c[d>>2]|0;i=G;return F|0}c[s>>2]=Ft(c[f>>2]|0,c[(c[e>>2]|0)+5600+36>>2]|0)|0;if(c[s>>2]|0){c[B>>2]=1199;Ti(24594,B);c[d>>2]=c[s>>2];F=c[d>>2]|0;i=G;return F|0}c[j>>2]=Ft(c[f>>2]|0,c[(c[e>>2]|0)+5600+40>>2]|0)|0;if(c[j>>2]|0){c[C>>2]=1202;Ti(24594,C);c[d>>2]=c[j>>2];F=c[d>>2]|0;i=G;return F|0}c[k>>2]=Rt(c[f>>2]|0,c[t>>2]|0)|0;if(c[k>>2]|0){c[D>>2]=1205;Ti(24594,D);c[d>>2]=c[k>>2];F=c[d>>2]|0;i=G;return F|0}else{c[d>>2]=0;F=c[d>>2]|0;i=G;return F|0}return 0}function Zt(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;A=i;i=i+128|0;x=A+64|0;w=A+56|0;v=A+48|0;u=A+40|0;z=A+32|0;y=A+24|0;t=A+16|0;s=A+8|0;e=A+112|0;f=A+108|0;g=A+104|0;h=A+100|0;j=A;k=A+96|0;l=A+92|0;m=A+88|0;n=A+84|0;o=A+80|0;p=A+76|0;q=A+72|0;r=A+68|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;d=j;c[d>>2]=0;c[d+4>>2]=0;if(!(c[f>>2]|0)){c[e>>2]=-2147483647;z=c[e>>2]|0;i=A;return z|0}if(!(c[h>>2]|0)){c[e>>2]=-2147483647;z=c[e>>2]|0;i=A;return z|0}if(!(c[g>>2]|0)){c[e>>2]=-2147483647;z=c[e>>2]|0;i=A;return z|0}if(!(c[c[g>>2]>>2]|0)){c[e>>2]=-2147483647;z=c[e>>2]|0;i=A;return z|0}c[(c[g>>2]|0)+8>>2]=0;c[k>>2]=Et(c[f>>2]|0,c[h>>2]|0)|0;if(c[k>>2]|0){c[s>>2]=1232;Ti(24594,s);c[e>>2]=c[k>>2];z=c[e>>2]|0;i=A;return z|0}c[l>>2]=Kt(c[f>>2]|0,c[g>>2]|0)|0;if(c[l>>2]|0){c[t>>2]=1235;Ti(24594,t);c[e>>2]=c[l>>2];z=c[e>>2]|0;i=A;return z|0}c[m>>2]=Yt(c[f>>2]|0,c[g>>2]|0)|0;if(c[m>>2]|0){c[y>>2]=1238;Ti(24594,y);c[e>>2]=c[m>>2];z=c[e>>2]|0;i=A;return z|0}c[n>>2]=Xt(c[f>>2]|0,c[g>>2]|0)|0;if(c[n>>2]|0){c[z>>2]=1244;Ti(24594,z);c[e>>2]=c[n>>2];z=c[e>>2]|0;i=A;return z|0}y=(c[f>>2]|0)+6392|0;y=Px(c[y>>2]|0,c[y+4>>2]|0,8,0)|0;z=j;c[z>>2]=y;c[z+4>>2]=D;z=j;y=c[z+4>>2]|0;if(y>>>0>0|(y|0)==0&(c[z>>2]|0)>>>0>4294967295){y=j;y=Px(c[y>>2]|0,c[y+4>>2]|0,8,0)|0;z=j;c[z>>2]=y;c[z+4>>2]=D;z=j;c[o>>2]=Lt(c[g>>2]|0,c[z>>2]|0,c[z+4>>2]|0,1)|0;if(c[o>>2]|0){c[u>>2]=1254;Ti(24594,u);c[e>>2]=c[o>>2];z=c[e>>2]|0;i=A;return z|0}}else{z=j;c[p>>2]=Lt(c[g>>2]|0,c[z>>2]|0,c[z+4>>2]|0,0)|0;if(c[p>>2]|0){c[v>>2]=1259;Ti(24594,v);c[e>>2]=c[p>>2];z=c[e>>2]|0;i=A;return z|0}}c[q>>2]=_t(c[f>>2]|0,c[g>>2]|0)|0;if(c[q>>2]|0){c[w>>2]=1263;Ti(24594,w);c[e>>2]=c[q>>2];z=c[e>>2]|0;i=A;return z|0}c[r>>2]=$t(c[f>>2]|0,c[g>>2]|0)|0;if(c[r>>2]|0){c[x>>2]=1266;Ti(24594,x);c[e>>2]=c[r>>2];z=c[e>>2]|0;i=A;return z|0}else{c[e>>2]=0;z=c[e>>2]|0;i=A;return z|0}return 0}function _t(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=b;c[f>>2]=d;c[k>>2]=0;c[j>>2]=0;c[g>>2]=0;c[h>>2]=0;c[g>>2]=(c[(c[f>>2]|0)+8>>2]|0)-(c[(c[e>>2]|0)+6304+28>>2]|0);c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+5680+24>>2]|0)>>>0)break;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break;c[g>>2]=(c[g>>2]|0)+(c[(c[e>>2]|0)+5680+32+((c[j>>2]|0)*144|0)+136>>2]|0);c[j>>2]=(c[j>>2]|0)+1}c[h>>2]=c[(c[e>>2]|0)+5680+32+((c[k>>2]|0)*144|0)+56+20>>2];a[(c[c[f>>2]>>2]|0)+(c[h>>2]|0)>>0]=(c[g>>2]|0)>>>24;a[(c[c[f>>2]>>2]|0)+((c[h>>2]|0)+1)>>0]=(c[g>>2]|0)>>>16;a[(c[c[f>>2]>>2]|0)+((c[h>>2]|0)+2)>>0]=(c[g>>2]|0)>>>8;a[(c[c[f>>2]>>2]|0)+((c[h>>2]|0)+3)>>0]=c[g>>2];c[k>>2]=(c[k>>2]|0)+1}i=l;return 0}function $t(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=i;i=i+32|0;f=e+16|0;g=e+12|0;d=e;h=e+8|0;c[f>>2]=a;c[g>>2]=b;a=(c[f>>2]|0)+6392|0;a=Px(c[a>>2]|0,c[a+4>>2]|0,c[(c[g>>2]|0)+8>>2]|0,0)|0;a=Nx(a|0,D|0,c[(c[f>>2]|0)+6304+28>>2]|0,0)|0;b=d;c[b>>2]=a;c[b+4>>2]=D;c[h>>2]=(c[c[g>>2]>>2]|0)+(c[(c[f>>2]|0)+6304+8>>2]|0);f=d;g=c[f+4>>2]|0;b=c[h>>2]|0;a=d;d=c[a>>2]|0;if(g>>>0>0|(g|0)==0&(c[f>>2]|0)>>>0>4294967295){Rr(b,d,c[a+4>>2]|0);i=e;return 0}else{Qr(b,d);i=e;return 0}return 0}function au(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m;h=m+28|0;d=m+24|0;j=m+20|0;e=m+16|0;f=m+12|0;g=m+8|0;k=m+4|0;c[d>>2]=a;c[j>>2]=b;c[e>>2]=0;c[f>>2]=0;c[g>>2]=0;a=(c[d>>2]|0)+6392|0;c[a>>2]=0;c[a+4>>2]=0;c[(c[d>>2]|0)+5600+36>>2]=0;c[(c[d>>2]|0)+6304+28>>2]=0;c[e>>2]=0;while(1){if((c[e>>2]|0)>>>0>=(c[(c[d>>2]|0)+5680+24>>2]|0)>>>0){d=6;break}c[f>>2]=(c[d>>2]|0)+5680+32+((c[e>>2]|0)*144|0);c[(c[f>>2]|0)+112+12>>2]=c[(c[f>>2]|0)+132>>2];c[(c[f>>2]|0)+136>>2]=0;c[(c[f>>2]|0)+140>>2]=0;c[g>>2]=(c[f>>2]|0)+56;c[(c[g>>2]|0)+12>>2]=0;c[(c[g>>2]|0)+16>>2]=0;c[(c[g>>2]|0)+20>>2]=0;c[k>>2]=ct((c[g>>2]|0)+44|0,8)|0;if(c[k>>2]|0){d=4;break}c[e>>2]=(c[e>>2]|0)+1}if((d|0)==4){c[l>>2]=1470;Ti(24594,l);c[h>>2]=c[k>>2];l=c[h>>2]|0;i=m;return l|0}else if((d|0)==6){c[(c[j>>2]|0)+8>>2]=0;c[h>>2]=0;l=c[h>>2]|0;i=m;return l|0}return 0}function bu(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+48|0;f=o+24|0;g=o+16|0;h=o+12|0;j=o+8|0;k=o+4|0;m=o+32|0;n=o+20|0;l=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[n>>2]=0;if((c[g>>2]|0)==0|(c[k>>2]|0)==0|(c[j>>2]|0)==0|(c[h>>2]|0)<=0){c[f>>2]=-1;c[l>>2]=1;n=c[f>>2]|0;i=o;return n|0}else{c[n>>2]=cu(c[g>>2]|0,c[h>>2]|0)|0;du(m,(c[g>>2]|0)+2|0,(c[h>>2]|0)-(c[n>>2]|0)|0);eu(m,c[j>>2]|0,c[k>>2]|0)|0;ou(c[g>>2]|0,(c[h>>2]|0)-(c[n>>2]|0)|0)|0;c[f>>2]=0;c[l>>2]=1;n=c[f>>2]|0;i=o;return n|0}return 0}function cu(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+16|0;f=l+8|0;h=l+20|0;j=l+12|0;g=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[k>>2]=0;c[j>>2]=0;c[g>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break;if((c[g>>2]|0)==2?(d[(c[e>>2]|0)+(c[j>>2]|0)>>0]|0|0)==3:0){Ux((c[e>>2]|0)+(c[j>>2]|0)|0,(c[e>>2]|0)+((c[j>>2]|0)+1)|0,(c[f>>2]|0)-(c[h>>2]|0)-1|0)|0;c[g>>2]=0;c[h>>2]=(c[h>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+1}if(!(d[(c[e>>2]|0)+(c[j>>2]|0)>>0]|0))c[g>>2]=(c[g>>2]|0)+1;else c[g>>2]=0;c[j>>2]=(c[j>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+1}i=l;return c[k>>2]|0}function du(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+8|0;g=e+4|0;c[f>>2]=a;c[g>>2]=b;c[e>>2]=d;c[(c[f>>2]|0)+4>>2]=0;c[c[f>>2]>>2]=c[g>>2];i=e;return}function eu(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;h=i;i=i+32|0;e=h+12|0;f=h+4|0;g=h;k=h+16|0;j=h+8|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;fu(c[e>>2]|0,4);c[k>>2]=(gu(c[e>>2]|0,3)|0)+1;fu(c[e>>2]|0,1);hu(c[e>>2]|0,c[k>>2]|0)|0;ju(c[e>>2]|0)|0;c[j>>2]=ju(c[e>>2]|0)|0;if((c[j>>2]|0)==3)fu(c[e>>2]|0,1);k=ju(c[e>>2]|0)|0;c[c[f>>2]>>2]=k;k=ju(c[e>>2]|0)|0;c[c[g>>2]>>2]=k;i=h;return 0}function fu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;b=(c[f>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+(c[e>>2]|0);i=d;return}function gu(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;j=g+24|0;h=g+16|0;k=g+28|0;o=g+20|0;f=g+12|0;l=g+8|0;n=g+4|0;m=g;c[j>>2]=b;c[h>>2]=e;c[k>>2]=c[(c[j>>2]|0)+4>>2];c[o>>2]=(c[k>>2]|0)>>>3;c[f>>2]=(d[(c[c[j>>2]>>2]|0)+(c[o>>2]|0)>>0]|0)+((d[(c[c[j>>2]>>2]|0)+((c[o>>2]|0)+1)>>0]|0)<<8)+((d[(c[c[j>>2]>>2]|0)+((c[o>>2]|0)+2)>>0]|0)<<16)+((d[(c[c[j>>2]>>2]|0)+((c[o>>2]|0)+3)>>0]|0)<<24);c[n>>2]=f;c[m>>2]=l;a[c[m>>2]>>0]=a[(c[n>>2]|0)+3>>0]|0;a[(c[m>>2]|0)+1>>0]=a[(c[n>>2]|0)+2>>0]|0;a[(c[m>>2]|0)+2>>0]=a[(c[n>>2]|0)+1>>0]|0;a[(c[m>>2]|0)+3>>0]=a[c[n>>2]>>0]|0;c[f>>2]=c[l>>2];c[f>>2]=c[f>>2]<<(c[k>>2]&7);c[f>>2]=(c[f>>2]|0)>>>(32-(c[h>>2]|0)|0);e=(c[j>>2]|0)+4|0;c[e>>2]=(c[e>>2]|0)+(c[h>>2]|0);i=g;return c[f>>2]|0}function hu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+80|0;d=j+60|0;e=j+28|0;f=j+64|0;h=j+32|0;g=j;c[d>>2]=a;c[e>>2]=b;iu(c[d>>2]|0)|0;fu(c[d>>2]|0,8);c[f>>2]=0;while(1){if((c[f>>2]|0)>=((c[e>>2]|0)-1|0))break;b=gu(c[d>>2]|0,1)|0;c[h+(c[f>>2]<<2)>>2]=b;b=gu(c[d>>2]|0,1)|0;c[g+(c[f>>2]<<2)>>2]=b;c[f>>2]=(c[f>>2]|0)+1}a:do if(((c[e>>2]|0)-1|0)>0){c[f>>2]=(c[e>>2]|0)-1;while(1){if((c[f>>2]|0)>=8)break a;fu(c[d>>2]|0,2);c[f>>2]=(c[f>>2]|0)+1}}while(0);c[f>>2]=0;while(1){if((c[f>>2]|0)>=((c[e>>2]|0)-1|0))break;if(c[h+(c[f>>2]<<2)>>2]|0)iu(c[d>>2]|0)|0;if(c[g+(c[f>>2]<<2)>>2]|0)fu(c[d>>2]|0,8);c[f>>2]=(c[f>>2]|0)+1}i=j;return 0}function iu(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;d=e+4|0;c[b>>2]=a;fu(c[b>>2]|0,2);fu(c[b>>2]|0,1);fu(c[b>>2]|0,5);c[d>>2]=0;while(1){a=(c[d>>2]|0)<32;fu(c[b>>2]|0,1);if(!a)break;c[d>>2]=(c[d>>2]|0)+1}fu(c[b>>2]|0,1);fu(c[b>>2]|0,1);fu(c[b>>2]|0,1);fu(c[b>>2]|0,16);fu(c[b>>2]|0,16);fu(c[b>>2]|0,12);i=e;return 0}function ju(a){a=a|0;var b=0,d=0,e=0,f=0;b=i;i=i+16|0;e=b+4|0;f=b+8|0;d=b;c[e>>2]=a;c[f>>2]=ku(c[e>>2]|0,32)|0;c[d>>2]=31-(mu(c[f>>2]|0)|0);fu(c[e>>2]|0,c[d>>2]|0);a=(nu(c[e>>2]|0,(c[d>>2]|0)+1|0)|0)-1|0;i=b;return a|0}function ku(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;e=h+4|0;f=h;g=h+12|0;c[e>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0)){c[d>>2]=0;g=c[d>>2]|0;i=h;return g|0}if((c[f>>2]|0)>>>0<=25){c[d>>2]=lu(c[e>>2]|0,c[f>>2]|0)|0;g=c[d>>2]|0;i=h;return g|0}else{b=gu(c[e>>2]|0,16)|0;c[g>>2]=b<<(c[f>>2]|0)-16;b=gu(c[e>>2]|0,(c[f>>2]|0)-16|0)|0;c[g>>2]=c[g>>2]|b;b=(c[e>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)-(c[f>>2]|0);c[d>>2]=c[g>>2];g=c[d>>2]|0;i=h;return g|0}return 0}function lu(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;o=h+24|0;f=h+16|0;j=h+28|0;n=h+20|0;g=h+12|0;k=h+8|0;m=h+4|0;l=h;c[o>>2]=b;c[f>>2]=e;c[j>>2]=c[(c[o>>2]|0)+4>>2];c[n>>2]=(c[j>>2]|0)>>>3;c[g>>2]=(d[(c[c[o>>2]>>2]|0)+(c[n>>2]|0)>>0]|0)+((d[(c[c[o>>2]>>2]|0)+((c[n>>2]|0)+1)>>0]|0)<<8)+((d[(c[c[o>>2]>>2]|0)+((c[n>>2]|0)+2)>>0]|0)<<16)+((d[(c[c[o>>2]>>2]|0)+((c[n>>2]|0)+3)>>0]|0)<<24);c[m>>2]=g;c[l>>2]=k;a[c[l>>2]>>0]=a[(c[m>>2]|0)+3>>0]|0;a[(c[l>>2]|0)+1>>0]=a[(c[m>>2]|0)+2>>0]|0;a[(c[l>>2]|0)+2>>0]=a[(c[m>>2]|0)+1>>0]|0;a[(c[l>>2]|0)+3>>0]=a[c[m>>2]>>0]|0;c[g>>2]=c[k>>2];c[g>>2]=c[g>>2]<<(c[j>>2]&7);i=h;return (c[g>>2]|0)>>>(32-(c[f>>2]|0)|0)|0}function mu(a){a=a|0;var b=0,e=0,f=0;f=i;i=i+16|0;b=f;e=f+4|0;c[b>>2]=a;c[e>>2]=0;if(c[b>>2]&-65536|0){c[b>>2]=(c[b>>2]|0)>>>16;c[e>>2]=(c[e>>2]|0)+16}if(c[b>>2]&65280|0){c[b>>2]=(c[b>>2]|0)>>>8;c[e>>2]=(c[e>>2]|0)+8}c[e>>2]=(c[e>>2]|0)+(d[24692+(c[b>>2]|0)>>0]|0);i=f;return c[e>>2]|0}function nu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;e=h+4|0;f=h;g=h+12|0;c[e>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0)){c[d>>2]=0;g=c[d>>2]|0;i=h;return g|0}if((c[f>>2]|0)>>>0<=25){c[d>>2]=gu(c[e>>2]|0,c[f>>2]|0)|0;g=c[d>>2]|0;i=h;return g|0}else{b=gu(c[e>>2]|0,16)|0;c[g>>2]=b<<(c[f>>2]|0)-16;g=c[g>>2]|0;c[d>>2]=g|(gu(c[e>>2]|0,(c[f>>2]|0)-16|0)|0);g=c[d>>2]|0;i=h;return g|0}return 0}function ou(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;f=l+12|0;g=l+4|0;j=l+16|0;h=l+8|0;k=l;c[f>>2]=b;c[g>>2]=e;c[k>>2]=0;c[h>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[g>>2]|0))break;if((c[h>>2]|0)==2?((d[(c[f>>2]|0)+(c[j>>2]|0)>>0]|0)&252|0)==0:0){Ux((c[f>>2]|0)+((c[j>>2]|0)+1)|0,(c[f>>2]|0)+(c[j>>2]|0)|0,(c[g>>2]|0)-(c[j>>2]|0)|0)|0;a[(c[f>>2]|0)+(c[j>>2]|0)>>0]=3;c[h>>2]=0;c[j>>2]=(c[j>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+1}if(!(d[(c[f>>2]|0)+(c[j>>2]|0)>>0]|0))c[h>>2]=(c[h>>2]|0)+1;else c[h>>2]=0;c[j>>2]=(c[j>>2]|0)+1}i=l;return c[k>>2]|0}function pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+48|0;d=o+36|0;e=o+28|0;f=o+20|0;h=o+40|0;j=o+32|0;n=o+24|0;l=o+16|0;m=o+12|0;k=o+4|0;g=o;c[e>>2]=a;c[f>>2]=b;c[j>>2]=h;c[n>>2]=0;c[k>>2]=0;if((c[e>>2]|0)==0|(c[f>>2]|0)<=0){c[d>>2]=-1;c[g>>2]=1;n=c[d>>2]|0;i=o;return n|0}c[n>>2]=cu(c[e>>2]|0,c[f>>2]|0)|0;du(h,c[e>>2]|0,(c[f>>2]|0)-(c[n>>2]|0)|0);gu(c[j>>2]|0,1)|0;c[l>>2]=gu(c[j>>2]|0,6)|0;c[m>>2]=gu(c[j>>2]|0,6)|0;c[o+8>>2]=(gu(c[j>>2]|0,3)|0)-1;do if(!(c[m>>2]|0)){if(!((c[l>>2]|0)>=1&(c[l>>2]|0)<=9)?!((c[l>>2]|0)>=16&(c[l>>2]|0)<=21):0)break;c[k>>2]=qu(c[j>>2]|0,c[l>>2]|0)|0;ou(c[e>>2]|0,(c[f>>2]|0)-(c[n>>2]|0)|0)|0;c[d>>2]=c[k>>2];c[g>>2]=1;n=c[d>>2]|0;i=o;return n|0}while(0);c[d>>2]=-2;c[g>>2]=1;n=c[d>>2]|0;i=o;return n|0}function qu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+16|0;e=j+8|0;f=j+4|0;k=j+20|0;h=j+12|0;g=j;c[e>>2]=a;c[f>>2]=b;c[k>>2]=gu(c[e>>2]|0,1)|0;if(!(c[k>>2]|0)){c[d>>2]=-2;c[g>>2]=1;k=c[d>>2]|0;i=j;return k|0}if((c[f>>2]|0)>=16&(c[f>>2]|0)<=23)gu(c[e>>2]|0,1)|0;ru(c[e>>2]|0)|0;c[h>>2]=ru(c[e>>2]|0)|0;if((c[h>>2]|0)>=0&(c[h>>2]|0)<=2){c[d>>2]=c[h>>2];c[g>>2]=1;k=c[d>>2]|0;i=j;return k|0}else{c[d>>2]=-2;c[g>>2]=1;k=c[d>>2]|0;i=j;return k|0}return 0}function ru(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=i;i=i+48|0;f=n+36|0;g=n+28|0;k=n+40|0;j=n+32|0;q=n+24|0;m=n+20|0;l=n+16|0;e=n+12|0;p=n+8|0;o=n+4|0;h=n;c[g>>2]=b;c[j>>2]=c[(c[g>>2]|0)+4>>2];c[q>>2]=(c[j>>2]|0)>>>3;c[m>>2]=(d[(c[c[g>>2]>>2]|0)+(c[q>>2]|0)>>0]|0)+((d[(c[c[g>>2]>>2]|0)+((c[q>>2]|0)+1)>>0]|0)<<8)+((d[(c[c[g>>2]>>2]|0)+((c[q>>2]|0)+2)>>0]|0)<<16)+((d[(c[c[g>>2]>>2]|0)+((c[q>>2]|0)+3)>>0]|0)<<24);c[p>>2]=m;c[o>>2]=e;a[c[o>>2]>>0]=a[(c[p>>2]|0)+3>>0]|0;a[(c[o>>2]|0)+1>>0]=a[(c[p>>2]|0)+2>>0]|0;a[(c[o>>2]|0)+2>>0]=a[(c[p>>2]|0)+1>>0]|0;a[(c[o>>2]|0)+3>>0]=a[c[p>>2]>>0]|0;c[m>>2]=c[e>>2];c[m>>2]=c[m>>2]<<(c[j>>2]&7);b=c[m>>2]|0;if(c[m>>2]&-134217728|0){c[m>>2]=b>>>23;q=(c[g>>2]|0)+4|0;c[q>>2]=(c[q>>2]|0)+(d[24948+(c[m>>2]|0)>>0]|0);c[f>>2]=c[3140+(c[m>>2]<<2)>>2];c[h>>2]=1;q=c[f>>2]|0;i=n;return q|0}e=c[m>>2]|0;if(b&-8388608|0){c[l>>2]=e;c[l>>2]=(c[l>>2]|0)>>>23;c[k>>2]=d[24948+(c[l>>2]|0)>>0];q=(c[g>>2]|0)+4|0;c[q>>2]=(c[q>>2]|0)+(c[k>>2]|0);c[m>>2]=(c[m>>2]|0)>>>(32-(c[k>>2]|0)|0);c[m>>2]=(c[m>>2]|0)+-1;c[f>>2]=c[m>>2];c[h>>2]=1;q=c[f>>2]|0;i=n;return q|0}c[k>>2]=63-((mu(e)|0)<<1);if((c[k>>2]|0)>25)c[m>>2]=c[m>>2]|(d[(c[c[g>>2]>>2]|0)+((c[j>>2]|0)>>>3)+4>>0]|0)>>8-(c[j>>2]&7);q=(c[g>>2]|0)+4|0;c[q>>2]=(c[q>>2]|0)+(c[k>>2]|0);c[m>>2]=(c[m>>2]|0)>>>(32-(c[k>>2]|0)|0);c[m>>2]=(c[m>>2]|0)+-1;c[f>>2]=c[m>>2];c[h>>2]=1;q=c[f>>2]|0;i=n;return q|0}function su(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;e=m+24|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=jr(c[f>>2]|0,0,0,2)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];d=c[e>>2]|0;i=m;return d|0}c[k>>2]=lr(c[f>>2]|0,c[h>>2]|0)|0;if(c[k>>2]|0){c[e>>2]=c[k>>2];d=c[e>>2]|0;i=m;return d|0}d=c[g>>2]|0;c[l>>2]=jr(c[f>>2]|0,d,((d|0)<0)<<31>>31,0)|0;if(c[l>>2]|0){c[e>>2]=c[l>>2];d=c[e>>2]|0;i=m;return d|0}else{c[e>>2]=0;d=c[e>>2]|0;i=m;return d|0}return 0}function tu(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0;y=i;i=i+96|0;g=y+80|0;z=y+76|0;h=y+72|0;j=y+68|0;k=y+64|0;n=y+60|0;l=y+56|0;m=y+52|0;o=y+24|0;q=y+16|0;p=y+8|0;r=y;s=y+48|0;t=y+44|0;u=y+40|0;v=y+36|0;w=y+32|0;c[z>>2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[n>>2]=-2147483641;c[l>>2]=0;c[m>>2]=0;b=o;c[b>>2]=0;c[b+4>>2]=0;b=q;c[b>>2]=0;c[b+4>>2]=0;b=p;c[b>>2]=0;c[b+4>>2]=0;b=r;c[b>>2]=0;c[b+4>>2]=0;if(0==(c[z>>2]|0)|0==(c[h>>2]|0)|0==(c[j>>2]|0)|0==(c[k>>2]|0)){c[g>>2]=-2147483647;z=c[g>>2]|0;i=y;return z|0}c[s>>2]=su(c[h>>2]|0,0,r)|0;if(c[s>>2]|0){c[g>>2]=c[s>>2];z=c[g>>2]|0;i=y;return z|0}do{c[t>>2]=kr(l,1,0,4,0,c[h>>2]|0)|0;if(c[t>>2]|0){x=6;break}s=q;s=Px(c[s>>2]|0,c[s+4>>2]|0,4,0)|0;z=q;c[z>>2]=s;c[z+4>>2]=D;c[u>>2]=kr(m,1,0,4,0,c[h>>2]|0)|0;if(c[u>>2]|0){x=8;break}s=q;s=Px(c[s>>2]|0,c[s+4>>2]|0,4,0)|0;z=q;c[z>>2]=s;c[z+4>>2]=D;c[l>>2]=(c[l>>2]&255)<<24|(c[l>>2]&65280)<<8|(c[l>>2]&16711680)>>>8|(c[l>>2]&-16777216)>>>24;if(1==(c[l>>2]|0)){c[v>>2]=kr(p,1,0,8,0,c[h>>2]|0)|0;if(c[v>>2]|0){x=11;break}E=Sx(c[p>>2]&255|0,0,56)|0;s=D;C=Sx(c[p>>2]&65280|0,0,40)|0;s=s|D;B=Sx(c[p>>2]&16711680|0,0,24)|0;s=s|D;A=Sx(c[p>>2]&-16777216|0,0,8)|0;s=s|D;d=Qx(0,c[p+4>>2]&255|0,8)|0;s=s|D;e=Qx(0,c[p+4>>2]&65280|0,24)|0;s=s|D;f=Qx(0,c[p+4>>2]&16711680|0,40)|0;s=s|D;b=Rx(0,c[p+4>>2]&-16777216|0,56)|0;z=p;c[z>>2]=E|C|B|A|d|e|f|b;c[z+4>>2]=s|D;z=q;z=Px(c[z>>2]|0,c[z+4>>2]|0,8,0)|0;s=q;c[s>>2]=z;c[s+4>>2]=D;s=p;s=Nx(c[s>>2]|0,c[s+4>>2]|0,16,0)|0;z=o;c[z>>2]=s;c[z+4>>2]=D}else{C=p;c[C>>2]=c[l>>2];c[C+4>>2]=0;C=p;C=Nx(c[C>>2]|0,c[C+4>>2]|0,8,0)|0;E=o;c[E>>2]=C;c[E+4>>2]=D}if((c[m>>2]|0)==((a[25460]|0)+(a[25461]<<8)+(a[25462]<<16)+(a[25463]<<24)|0)){x=16;break}if((c[m>>2]|0)==((a[25460]<<24)+(a[25461]<<16)+(a[25462]<<8)+(a[25463]|0)|0)){x=16;break}E=o;c[w>>2]=jr(c[h>>2]|0,c[E>>2]|0,c[E+4>>2]|0,1)|0;if(c[w>>2]|0){x=21;break}A=o;C=q;A=Px(c[C>>2]|0,c[C+4>>2]|0,c[A>>2]|0,c[A+4>>2]|0)|0;C=q;c[C>>2]=A;c[C+4>>2]=D;C=q;A=c[C+4>>2]|0;E=r;B=c[E+4>>2]|0}while((A|0)<(B|0)|((A|0)==(B|0)?(c[C>>2]|0)>>>0<(c[E>>2]|0)>>>0:0));if((x|0)==6){c[g>>2]=c[t>>2];E=c[g>>2]|0;i=y;return E|0}else if((x|0)==8){c[g>>2]=c[u>>2];E=c[g>>2]|0;i=y;return E|0}else if((x|0)==11){c[g>>2]=c[v>>2];E=c[g>>2]|0;i=y;return E|0}else if((x|0)==16){E=p;C=c[E+4>>2]|0;if(!((C|0)<0|(C|0)==0&(c[E>>2]|0)>>>0<8)?(C=p,A=c[C+4>>2]|0,E=r,B=c[E+4>>2]|0,!((A|0)>(B|0)|((A|0)==(B|0)?(c[C>>2]|0)>>>0>(c[E>>2]|0)>>>0:0))):0){C=q;C=Nx(c[C>>2]|0,c[C+4>>2]|0,8,0)|0;E=c[j>>2]|0;c[E>>2]=C;c[E+4>>2]=D;c[c[k>>2]>>2]=c[p>>2];c[g>>2]=0;E=c[g>>2]|0;i=y;return E|0}c[n>>2]=-2147483641}else if((x|0)==21){c[g>>2]=c[w>>2];E=c[g>>2]|0;i=y;return E|0}c[g>>2]=c[n>>2];E=c[g>>2]|0;i=y;return E|0}function uu(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;d=f+4|0;e=f;c[d>>2]=a;g[e>>2]=0.0;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;a=c[b>>2]|0;i=f;return a|0}if(0.0==+g[(c[d>>2]|0)+320+72>>2]){a=(c[d>>2]|0)+448+((c[(c[d>>2]|0)+12>>2]|0)*2208|0)+8|0;g[e>>2]=(+((c[a>>2]|0)>>>0)+4294967296.0*+((c[a+4>>2]|0)>>>0))/+((c[(c[d>>2]|0)+448+((c[(c[d>>2]|0)+12>>2]|0)*2208|0)+4>>2]|0)>>>0);g[(c[d>>2]|0)+320+72>>2]=+((c[(c[d>>2]|0)+448+((c[(c[d>>2]|0)+12>>2]|0)*2208|0)+116+4>>2]|0)>>>0)/+g[e>>2]}c[b>>2]=0;a=c[b>>2]|0;i=f;return a|0}function vu(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+48|0;d=o+40|0;e=o+36|0;h=o+28|0;g=o+24|0;f=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[e>>2]=b;c[o+32>>2]=0;c[h>>2]=0;c[g>>2]=0;c[f>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;n=c[d>>2]|0;i=o;return n|0}b=(c[e>>2]|0)+40|0;c[j>>2]=jr(c[(c[e>>2]|0)+52>>2]|0,c[b>>2]|0,c[b+4>>2]|0,0)|0;if(c[j>>2]|0){c[d>>2]=c[j>>2];n=c[d>>2]|0;i=o;return n|0}c[k>>2]=kr(g,1,0,4,0,c[(c[e>>2]|0)+52>>2]|0)|0;if(c[k>>2]|0){c[d>>2]=c[k>>2];n=c[d>>2]|0;i=o;return n|0}c[f>>2]=((c[g>>2]&255)<<24|(c[g>>2]&65280)<<8|(c[g>>2]&16711680)>>>8|(c[g>>2]&-16777216)>>>24)-8;c[l>>2]=kr(h,1,0,4,0,c[(c[e>>2]|0)+52>>2]|0)|0;if(c[l>>2]|0){c[d>>2]=c[l>>2];n=c[d>>2]|0;i=o;return n|0}if((c[h>>2]|0)!=((a[25460]|0)+(a[25461]<<8)+(a[25462]<<16)+(a[25463]<<24)|0)?(c[h>>2]|0)!=((a[25460]<<24)+(a[25461]<<16)+(a[25462]<<8)+(a[25463]|0)|0):0){c[d>>2]=-2147483641;n=c[d>>2]|0;i=o;return n|0}c[m>>2]=kr(c[(c[e>>2]|0)+48>>2]|0,1,0,c[f>>2]|0,0,c[(c[e>>2]|0)+52>>2]|0)|0;if(c[m>>2]|0){c[d>>2]=c[m>>2];n=c[d>>2]|0;i=o;return n|0}c[n>>2]=wu(c[e>>2]|0,c[(c[e>>2]|0)+48>>2]|0,c[f>>2]|0)|0;if(c[n>>2]|0){c[d>>2]=c[n>>2];n=c[d>>2]|0;i=o;return n|0}else{c[d>>2]=0;n=c[d>>2]|0;i=o;return n|0}return 0}function wu(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+48|0;f=o+32|0;g=o+28|0;q=o+24|0;p=o+20|0;l=o+16|0;m=o+12|0;k=o+8|0;h=o+4|0;j=o;c[g>>2]=a;c[q>>2]=b;c[p>>2]=e;c[l>>2]=-2147483641;c[m>>2]=c[q>>2];c[k>>2]=c[p>>2];c[h>>2]=0;c[j>>2]=0;if(!(c[m>>2]|0)){c[f>>2]=-2147483647;q=c[f>>2]|0;i=o;return q|0}do{c[l>>2]=-2147483641;c[h>>2]=((d[c[m>>2]>>0]|0)<<24)+((d[(c[m>>2]|0)+1>>0]|0)<<16)+((d[(c[m>>2]|0)+2>>0]|0)<<8)+(d[(c[m>>2]|0)+3>>0]|0);c[j>>2]=((d[(c[m>>2]|0)+4>>0]|0)<<24)+((d[(c[m>>2]|0)+4+1>>0]|0)<<16)+((d[(c[m>>2]|0)+4+2>>0]|0)<<8)+(d[(c[m>>2]|0)+4+3>>0]|0);if(1718773093==(c[j>>2]|0)|1835295092==(c[j>>2]|0))break;if((c[h>>2]|0)>>>0>(c[k>>2]|0)>>>0)break;c[m>>2]=(c[m>>2]|0)+8;c[k>>2]=(c[k>>2]|0)-8;if(1953653099==(c[j>>2]|0)){if((c[(c[g>>2]|0)+8>>2]|0)>>>0>4){n=7;break}c[l>>2]=xu(c[g>>2]|0,c[m>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0)break;q=(c[g>>2]|0)+8|0;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+((c[h>>2]|0)-8);c[k>>2]=(c[k>>2]|0)-((c[h>>2]|0)-8)}while((c[k>>2]|0)>>>0>0);if((n|0)==7)c[l>>2]=-2147483641;if((c[(c[g>>2]|0)+8>>2]|0)>>>0>0)c[l>>2]=0;c[f>>2]=c[l>>2];q=c[f>>2]|0;i=o;return q|0}function xu(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+48|0;f=o+32|0;g=o+28|0;q=o+24|0;p=o+20|0;l=o+16|0;m=o+12|0;k=o+8|0;h=o+4|0;j=o;c[g>>2]=a;c[q>>2]=b;c[p>>2]=e;c[l>>2]=-2147483641;c[m>>2]=c[q>>2];c[k>>2]=c[p>>2];c[h>>2]=0;c[j>>2]=0;if(0==(c[q>>2]|0)|(c[p>>2]|0)>>>0<8){c[f>>2]=-2147483647;q=c[f>>2]|0;i=o;return q|0}do{c[l>>2]=-2147483641;c[h>>2]=((d[c[m>>2]>>0]|0)<<24)+((d[(c[m>>2]|0)+1>>0]|0)<<16)+((d[(c[m>>2]|0)+2>>0]|0)<<8)+(d[(c[m>>2]|0)+3>>0]|0);c[j>>2]=((d[(c[m>>2]|0)+4>>0]|0)<<24)+((d[(c[m>>2]|0)+4+1>>0]|0)<<16)+((d[(c[m>>2]|0)+4+2>>0]|0)<<8)+(d[(c[m>>2]|0)+4+3>>0]|0);if(1718773093==(c[j>>2]|0)|1835295092==(c[j>>2]|0))break;if((c[h>>2]|0)>>>0>(c[k>>2]|0)>>>0)break;c[m>>2]=(c[m>>2]|0)+8;c[k>>2]=(c[k>>2]|0)-8;if(1835297121==(c[j>>2]|0)){n=6;break}c[m>>2]=(c[m>>2]|0)+((c[h>>2]|0)-8);c[k>>2]=(c[k>>2]|0)-((c[h>>2]|0)-8)}while((c[k>>2]|0)>>>0>0);if((n|0)==6)c[l>>2]=yu(c[g>>2]|0,c[m>>2]|0,c[k>>2]|0)|0;c[f>>2]=c[l>>2];q=c[f>>2]|0;i=o;return q|0}function yu(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+48|0;f=n+32|0;g=n+28|0;p=n+24|0;o=n+20|0;l=n+16|0;m=n+12|0;k=n+8|0;h=n+4|0;j=n;c[g>>2]=a;c[p>>2]=b;c[o>>2]=e;c[l>>2]=-2147483641;c[m>>2]=c[p>>2];c[k>>2]=c[o>>2];c[h>>2]=0;c[j>>2]=0;if(0==(c[p>>2]|0)|(c[o>>2]|0)>>>0<8){c[f>>2]=-2147483647;p=c[f>>2]|0;i=n;return p|0}do{c[l>>2]=0;c[h>>2]=((d[c[m>>2]>>0]|0)<<24)+((d[(c[m>>2]|0)+1>>0]|0)<<16)+((d[(c[m>>2]|0)+2>>0]|0)<<8)+(d[(c[m>>2]|0)+3>>0]|0);c[j>>2]=((d[(c[m>>2]|0)+4>>0]|0)<<24)+((d[(c[m>>2]|0)+4+1>>0]|0)<<16)+((d[(c[m>>2]|0)+4+2>>0]|0)<<8)+(d[(c[m>>2]|0)+4+3>>0]|0);if(1718773093==(c[j>>2]|0)|1835295092==(c[j>>2]|0))break;if((c[h>>2]|0)>>>0>(c[k>>2]|0)>>>0)break;c[m>>2]=(c[m>>2]|0)+8;c[k>>2]=(c[k>>2]|0)-8;e=c[j>>2]|0;a:do if((e|0)>=1835296868)if((e|0)<1835626086){switch(e|0){case 1835296868:break;default:break a}c[l>>2]=zu(c[g>>2]|0,c[m>>2]|0,c[k>>2]|0)|0;break}else{switch(e|0){case 1835626086:break;default:break a}c[l>>2]=Bu(c[g>>2]|0,c[m>>2]|0,c[k>>2]|0)|0;break}else{switch(e|0){case 1751411826:break;default:break a}c[l>>2]=Au(c[g>>2]|0,c[m>>2]|0,c[k>>2]|0)|0}while(0);if(c[l>>2]|0)break;c[m>>2]=(c[m>>2]|0)+((c[h>>2]|0)-8);c[k>>2]=(c[k>>2]|0)-((c[h>>2]|0)-8)}while((c[k>>2]|0)>>>0>0);c[f>>2]=c[l>>2];p=c[f>>2]|0;i=n;return p|0}function zu(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12|0;g=o+8|0;m=o+24|0;n=o+4|0;l=o;c[j>>2]=b;c[k>>2]=e;c[g>>2]=f;a[m>>0]=0;c[n>>2]=0;c[l>>2]=0;if(!(c[k>>2]|0)){c[h>>2]=-2147483647;n=c[h>>2]|0;i=o;return n|0}a[m>>0]=a[c[k>>2]>>0]|0;g=c[g>>2]|0;do if(1==(d[m>>0]|0|0)){if(32<=g>>>0){c[n>>2]=(c[k>>2]|0)+4+8+8;c[l>>2]=(c[n>>2]|0)+4;c[(c[j>>2]|0)+448+((c[(c[j>>2]|0)+8>>2]|0)*2208|0)+4>>2]=((d[c[n>>2]>>0]|0)<<24)+((d[(c[n>>2]|0)+1>>0]|0)<<16)+((d[(c[n>>2]|0)+2>>0]|0)<<8)+(d[(c[n>>2]|0)+3>>0]|0);n=((d[c[l>>2]>>0]|0)<<24)+((d[(c[l>>2]|0)+1>>0]|0)<<16)+((d[(c[l>>2]|0)+2>>0]|0)<<8)+(d[(c[l>>2]|0)+3>>0]|0)|0;m=(c[j>>2]|0)+448+((c[(c[j>>2]|0)+8>>2]|0)*2208|0)+8|0;c[m>>2]=n;c[m+4>>2]=((n|0)<0)<<31>>31;m=((d[(c[l>>2]|0)+4>>0]|0)<<24)+((d[(c[l>>2]|0)+4+1>>0]|0)<<16)+((d[(c[l>>2]|0)+4+2>>0]|0)<<8)+(d[(c[l>>2]|0)+4+3>>0]|0)|0;n=(c[j>>2]|0)+448+((c[(c[j>>2]|0)+8>>2]|0)*2208|0)+8|0;l=n;m=Px(c[l>>2]|0,c[l+4>>2]|0,m|0,((m|0)<0)<<31>>31|0)|0;c[n>>2]=m;c[n+4>>2]=D;break}c[h>>2]=-2147483647;n=c[h>>2]|0;i=o;return n|0}else{if(20<=g>>>0){c[n>>2]=(c[k>>2]|0)+4+4+4;c[l>>2]=(c[n>>2]|0)+4;c[(c[j>>2]|0)+448+((c[(c[j>>2]|0)+8>>2]|0)*2208|0)+4>>2]=((d[c[n>>2]>>0]|0)<<24)+((d[(c[n>>2]|0)+1>>0]|0)<<16)+((d[(c[n>>2]|0)+2>>0]|0)<<8)+(d[(c[n>>2]|0)+3>>0]|0);m=((d[c[l>>2]>>0]|0)<<24)+((d[(c[l>>2]|0)+1>>0]|0)<<16)+((d[(c[l>>2]|0)+2>>0]|0)<<8)+(d[(c[l>>2]|0)+3>>0]|0)|0;n=(c[j>>2]|0)+448+((c[(c[j>>2]|0)+8>>2]|0)*2208|0)+8|0;c[n>>2]=m;c[n+4>>2]=((m|0)<0)<<31>>31;break}c[h>>2]=-2147483647;n=c[h>>2]|0;i=o;return n|0}while(0);c[h>>2]=0;n=c[h>>2]|0;i=o;return n|0}function Au(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;h=m+20|0;j=m+16|0;f=m+12|0;n=m+8|0;k=m+4|0;g=m;c[j>>2]=a;c[f>>2]=b;c[n>>2]=e;c[k>>2]=-2147483645;c[g>>2]=0;if(0==(c[f>>2]|0)|12>(c[n>>2]|0)>>>0){c[h>>2]=-2147483647;n=c[h>>2]|0;i=m;return n|0}c[g>>2]=((d[(c[f>>2]|0)+8>>0]|0)<<24)+((d[(c[f>>2]|0)+8+1>>0]|0)<<16)+((d[(c[f>>2]|0)+8+2>>0]|0)<<8)+(d[(c[f>>2]|0)+8+3>>0]|0);f=c[g>>2]|0;a:do if((f|0)<1952807028)if((f|0)<1936684398){switch(f|0){case 1751740020:break;default:{l=12;break a}}if(c[(c[j>>2]|0)+448+((c[(c[j>>2]|0)+8>>2]|0)*2208|0)>>2]|0)break;c[(c[j>>2]|0)+448+((c[(c[j>>2]|0)+8>>2]|0)*2208|0)>>2]=1751740020;c[(c[j>>2]|0)+24>>2]=c[(c[j>>2]|0)+8>>2];c[k>>2]=0;break}else{switch(f|0){case 1936684398:break;default:{l=12;break a}}if(c[(c[j>>2]|0)+448+((c[(c[j>>2]|0)+8>>2]|0)*2208|0)>>2]|0)break;c[(c[j>>2]|0)+448+((c[(c[j>>2]|0)+8>>2]|0)*2208|0)>>2]=1936684398;c[(c[j>>2]|0)+16>>2]=c[(c[j>>2]|0)+8>>2];c[k>>2]=0;break}else if((f|0)<1986618469){switch(f|0){case 1952807028:break;default:{l=12;break a}}if(c[(c[j>>2]|0)+448+((c[(c[j>>2]|0)+8>>2]|0)*2208|0)>>2]|0)break;c[(c[j>>2]|0)+448+((c[(c[j>>2]|0)+8>>2]|0)*2208|0)>>2]=1952807028;c[(c[j>>2]|0)+20>>2]=c[(c[j>>2]|0)+8>>2];c[k>>2]=0;break}else{switch(f|0){case 1986618469:break;default:{l=12;break a}}if(c[(c[j>>2]|0)+448+((c[(c[j>>2]|0)+8>>2]|0)*2208|0)>>2]|0)break;c[(c[j>>2]|0)+448+((c[(c[j>>2]|0)+8>>2]|0)*2208|0)>>2]=1986618469;c[(c[j>>2]|0)+12>>2]=c[(c[j>>2]|0)+8>>2];c[k>>2]=0;break}while(0);if((l|0)==12)c[k>>2]=-2147483645;c[h>>2]=c[k>>2];n=c[h>>2]|0;i=m;return n|0}function Bu(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+48|0;f=o+32|0;g=o+28|0;q=o+24|0;p=o+20|0;l=o+16|0;m=o+12|0;k=o+8|0;h=o+4|0;j=o;c[g>>2]=a;c[q>>2]=b;c[p>>2]=e;c[l>>2]=-2147483641;c[m>>2]=c[q>>2];c[k>>2]=c[p>>2];c[h>>2]=0;c[j>>2]=0;if(0==(c[q>>2]|0)|(c[p>>2]|0)>>>0<8){c[f>>2]=-2147483647;q=c[f>>2]|0;i=o;return q|0}do{c[l>>2]=-2147483641;c[h>>2]=((d[c[m>>2]>>0]|0)<<24)+((d[(c[m>>2]|0)+1>>0]|0)<<16)+((d[(c[m>>2]|0)+2>>0]|0)<<8)+(d[(c[m>>2]|0)+3>>0]|0);c[j>>2]=((d[(c[m>>2]|0)+4>>0]|0)<<24)+((d[(c[m>>2]|0)+4+1>>0]|0)<<16)+((d[(c[m>>2]|0)+4+2>>0]|0)<<8)+(d[(c[m>>2]|0)+4+3>>0]|0);if(1718773093==(c[j>>2]|0)|1835295092==(c[j>>2]|0))break;if((c[h>>2]|0)>>>0>(c[k>>2]|0)>>>0)break;c[m>>2]=(c[m>>2]|0)+8;c[k>>2]=(c[k>>2]|0)-8;if(1937007212==(c[j>>2]|0)){n=6;break}c[m>>2]=(c[m>>2]|0)+((c[h>>2]|0)-8);c[k>>2]=(c[k>>2]|0)-((c[h>>2]|0)-8)}while((c[k>>2]|0)>>>0>0);if((n|0)==6)c[l>>2]=Cu(c[g>>2]|0,c[m>>2]|0,c[k>>2]|0)|0;c[f>>2]=c[l>>2];q=c[f>>2]|0;i=o;return q|0}function Cu(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+48|0;f=n+32|0;g=n+28|0;p=n+24|0;o=n+20|0;l=n+16|0;m=n+12|0;k=n+8|0;h=n+4|0;j=n;c[g>>2]=a;c[p>>2]=b;c[o>>2]=e;c[l>>2]=-2147483641;c[m>>2]=c[p>>2];c[k>>2]=c[o>>2];c[h>>2]=0;c[j>>2]=0;if(0==(c[p>>2]|0)|(c[o>>2]|0)>>>0<8){c[f>>2]=-2147483647;p=c[f>>2]|0;i=n;return p|0}do{c[l>>2]=0;c[h>>2]=((d[c[m>>2]>>0]|0)<<24)+((d[(c[m>>2]|0)+1>>0]|0)<<16)+((d[(c[m>>2]|0)+2>>0]|0)<<8)+(d[(c[m>>2]|0)+3>>0]|0);c[j>>2]=((d[(c[m>>2]|0)+4>>0]|0)<<24)+((d[(c[m>>2]|0)+4+1>>0]|0)<<16)+((d[(c[m>>2]|0)+4+2>>0]|0)<<8)+(d[(c[m>>2]|0)+4+3>>0]|0);if(1718773093==(c[j>>2]|0)|1835295092==(c[j>>2]|0))break;if((c[h>>2]|0)>>>0>(c[k>>2]|0)>>>0)break;c[m>>2]=(c[m>>2]|0)+8;c[k>>2]=(c[k>>2]|0)-8;e=c[j>>2]|0;a:do if((e|0)<1937011556)if((e|0)<1937007471)if((e|0)<1668576371){switch(e|0){case 1668232756:break;default:break a}c[(c[g>>2]|0)+448+((c[(c[g>>2]|0)+8>>2]|0)*2208|0)+100>>2]=1;c[l>>2]=Iu(c[g>>2]|0,c[m>>2]|0,c[k>>2]|0)|0;break}else{switch(e|0){case 1668576371:break;default:break a}c[l>>2]=Fu(c[g>>2]|0,c[m>>2]|0,c[k>>2]|0)|0;break}else if((e|0)<1937011555){switch(e|0){case 1937007471:break;default:break a}c[l>>2]=Iu(c[g>>2]|0,c[m>>2]|0,c[k>>2]|0)|0;break}else{switch(e|0){case 1937011555:break;default:break a}c[l>>2]=Gu(c[g>>2]|0,c[m>>2]|0,c[k>>2]|0)|0;break}else switch(e|0){case 1937011556:{c[l>>2]=Du(c[g>>2]|0,c[m>>2]|0,c[k>>2]|0)|0;break a}case 1937011827:{c[l>>2]=Eu(c[g>>2]|0,c[m>>2]|0,c[k>>2]|0)|0;break a}case 1937011578:{c[l>>2]=Hu(c[g>>2]|0,c[m>>2]|0,c[k>>2]|0)|0;break a}case 1937011571:{c[l>>2]=Ju(c[g>>2]|0,c[m>>2]|0,c[k>>2]|0)|0;break a}default:break a}while(0);if(c[l>>2]|0)break;c[m>>2]=(c[m>>2]|0)+((c[h>>2]|0)-8);c[k>>2]=(c[k>>2]|0)-((c[h>>2]|0)-8)}while((c[k>>2]|0)>>>0>0);c[f>>2]=c[l>>2];p=c[f>>2]|0;i=n;return p|0}function Du(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;f=n+28|0;g=n+24|0;h=n+20|0;o=n+16|0;l=n+12|0;j=n+8|0;k=n+4|0;m=n;c[g>>2]=a;c[h>>2]=b;c[o>>2]=e;c[l>>2]=0;c[j>>2]=0;c[k>>2]=0;c[m>>2]=0;if(0==(c[h>>2]|0)|12>(c[o>>2]|0)>>>0){c[f>>2]=-2147483647;o=c[f>>2]|0;i=n;return o|0}c[m>>2]=(c[g>>2]|0)+448+((c[(c[g>>2]|0)+8>>2]|0)*2208|0)+20;c[(c[m>>2]|0)+4>>2]=((d[(c[h>>2]|0)+4>>0]|0)<<24)+((d[(c[h>>2]|0)+4+1>>0]|0)<<16)+((d[(c[h>>2]|0)+4+2>>0]|0)<<8)+(d[(c[h>>2]|0)+4+3>>0]|0);c[(c[m>>2]|0)+8>>2]=(c[h>>2]|0)+8;c[j>>2]=(c[g>>2]|0)+448+((c[(c[g>>2]|0)+8>>2]|0)*2208|0)+1160;c[k>>2]=(c[h>>2]|0)+8;c[l>>2]=((d[(c[h>>2]|0)+8>>0]|0)<<24)+((d[(c[h>>2]|0)+8+1>>0]|0)<<16)+((d[(c[h>>2]|0)+8+2>>0]|0)<<8)+(d[(c[h>>2]|0)+8+3>>0]|0);if((c[l>>2]|0)>>>0>1024){c[f>>2]=-2147483647;o=c[f>>2]|0;i=n;return o|0}else{Tx(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;c[f>>2]=0;o=c[f>>2]|0;i=n;return o|0}return 0}function Eu(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;f=k+20|0;g=k+16|0;h=k+12|0;l=k+8|0;m=k+4|0;j=k;c[g>>2]=a;c[h>>2]=b;c[l>>2]=e;c[m>>2]=0;c[j>>2]=0;c[m>>2]=0==(c[(c[g>>2]|0)+32>>2]|0)?3:2;if(0!=(c[h>>2]|0)?c[m>>2]<<2>>>0<=(c[l>>2]|0)>>>0:0){c[j>>2]=(c[g>>2]|0)+448+((c[(c[g>>2]|0)+8>>2]|0)*2208|0)+36;c[(c[j>>2]|0)+4>>2]=((d[(c[h>>2]|0)+4>>0]|0)<<24)+((d[(c[h>>2]|0)+4+1>>0]|0)<<16)+((d[(c[h>>2]|0)+4+2>>0]|0)<<8)+(d[(c[h>>2]|0)+4+3>>0]|0);c[(c[j>>2]|0)+8>>2]=(c[h>>2]|0)+8;c[f>>2]=0;m=c[f>>2]|0;i=k;return m|0}c[f>>2]=-2147483647;m=c[f>>2]|0;i=k;return m|0}function Fu(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;f=k+20|0;g=k+16|0;h=k+12|0;l=k+8|0;m=k+4|0;j=k;c[g>>2]=a;c[h>>2]=b;c[l>>2]=e;c[m>>2]=0;c[j>>2]=0;c[m>>2]=0==(c[(c[g>>2]|0)+32>>2]|0)?3:2;if(0!=(c[h>>2]|0)?c[m>>2]<<2>>>0<=(c[l>>2]|0)>>>0:0){c[j>>2]=(c[g>>2]|0)+448+((c[(c[g>>2]|0)+8>>2]|0)*2208|0)+52;c[(c[j>>2]|0)+4>>2]=((d[(c[h>>2]|0)+4>>0]|0)<<24)+((d[(c[h>>2]|0)+4+1>>0]|0)<<16)+((d[(c[h>>2]|0)+4+2>>0]|0)<<8)+(d[(c[h>>2]|0)+4+3>>0]|0);c[(c[j>>2]|0)+8>>2]=(c[h>>2]|0)+8;c[(c[g>>2]|0)+28>>2]=1;c[f>>2]=0;m=c[f>>2]|0;i=k;return m|0}c[f>>2]=-2147483647;m=c[f>>2]|0;i=k;return m|0}function Gu(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;f=k+20|0;g=k+16|0;h=k+12|0;l=k+8|0;m=k+4|0;j=k;c[g>>2]=a;c[h>>2]=b;c[l>>2]=e;c[m>>2]=0;c[j>>2]=0;c[m>>2]=0==(c[(c[g>>2]|0)+32>>2]|0)?3:2;if(0!=(c[h>>2]|0)?c[m>>2]<<2>>>0<=(c[l>>2]|0)>>>0:0){c[j>>2]=(c[g>>2]|0)+448+((c[(c[g>>2]|0)+8>>2]|0)*2208|0)+84;c[(c[j>>2]|0)+4>>2]=((d[(c[h>>2]|0)+4>>0]|0)<<24)+((d[(c[h>>2]|0)+4+1>>0]|0)<<16)+((d[(c[h>>2]|0)+4+2>>0]|0)<<8)+(d[(c[h>>2]|0)+4+3>>0]|0);c[(c[j>>2]|0)+8>>2]=(c[h>>2]|0)+8;c[f>>2]=0;m=c[f>>2]|0;i=k;return m|0}c[f>>2]=-2147483647;m=c[f>>2]|0;i=k;return m|0}function Hu(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;f=l+24|0;g=l+20|0;h=l+16|0;m=l+12|0;n=l+8|0;j=l+4|0;k=l;c[g>>2]=a;c[h>>2]=b;c[m>>2]=e;c[n>>2]=0;c[j>>2]=0;c[k>>2]=0;c[n>>2]=0==(c[(c[g>>2]|0)+32>>2]|0)?4:2;if(0!=(c[h>>2]|0)?c[n>>2]<<2>>>0<=(c[m>>2]|0)>>>0:0){c[k>>2]=(c[g>>2]|0)+448+((c[(c[g>>2]|0)+8>>2]|0)*2208|0)+116;c[j>>2]=((d[(c[h>>2]|0)+4>>0]|0)<<24)+((d[(c[h>>2]|0)+4+1>>0]|0)<<16)+((d[(c[h>>2]|0)+4+2>>0]|0)<<8)+(d[(c[h>>2]|0)+4+3>>0]|0);n=0==(c[j>>2]|0);c[(c[k>>2]|0)+4>>2]=((d[(c[h>>2]|0)+8>>0]|0)<<24)+((d[(c[h>>2]|0)+8+1>>0]|0)<<16)+((d[(c[h>>2]|0)+8+2>>0]|0)<<8)+(d[(c[h>>2]|0)+8+3>>0]|0);if(n)c[(c[k>>2]|0)+8>>2]=(c[h>>2]|0)+12;else c[(c[g>>2]|0)+448+((c[(c[g>>2]|0)+8>>2]|0)*2208|0)+16>>2]=c[j>>2];if(1==(c[(c[g>>2]|0)+32>>2]|0)?c[(c[k>>2]|0)+4>>2]|0:0)c[(c[g>>2]|0)+9280>>2]=1;c[f>>2]=0;n=c[f>>2]|0;i=l;return n|0}c[f>>2]=-2147483647;n=c[f>>2]|0;i=l;return n|0}function Iu(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;f=k+20|0;g=k+16|0;h=k+12|0;l=k+8|0;m=k+4|0;j=k;c[g>>2]=a;c[h>>2]=b;c[l>>2]=e;c[m>>2]=0;c[j>>2]=0;c[m>>2]=0==(c[(c[g>>2]|0)+32>>2]|0)?3:2;if(0!=(c[h>>2]|0)?c[m>>2]<<2>>>0<=(c[l>>2]|0)>>>0:0){c[j>>2]=(c[g>>2]|0)+448+((c[(c[g>>2]|0)+8>>2]|0)*2208|0)+100;c[(c[j>>2]|0)+4>>2]=((d[(c[h>>2]|0)+4>>0]|0)<<24)+((d[(c[h>>2]|0)+4+1>>0]|0)<<16)+((d[(c[h>>2]|0)+4+2>>0]|0)<<8)+(d[(c[h>>2]|0)+4+3>>0]|0);if(!(c[(c[j>>2]|0)+4>>2]|0)){e=c[(c[g>>2]|0)+448+((c[(c[g>>2]|0)+8>>2]|0)*2208|0)>>2]|0;a:do if((e|0)>=1936684398)if((e|0)<1952807028){switch(e|0){case 1936684398:break;default:break a}c[(c[g>>2]|0)+16>>2]=-1;break}else{switch(e|0){case 1952807028:break;default:break a}c[(c[g>>2]|0)+20>>2]=-1;break}else{switch(e|0){case 1751740020:break;default:break a}c[(c[g>>2]|0)+24>>2]=-1}while(0);c[(c[g>>2]|0)+448+((c[(c[g>>2]|0)+8>>2]|0)*2208|0)>>2]=0}c[(c[j>>2]|0)+8>>2]=(c[h>>2]|0)+8;c[f>>2]=0;m=c[f>>2]|0;i=k;return m|0}c[f>>2]=-2147483647;m=c[f>>2]|0;i=k;return m|0}function Ju(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;f=k+20|0;g=k+16|0;h=k+12|0;l=k+8|0;m=k+4|0;j=k;c[g>>2]=a;c[h>>2]=b;c[l>>2]=e;c[m>>2]=0;c[j>>2]=0;c[m>>2]=0==(c[(c[g>>2]|0)+32>>2]|0)?3:2;if(0!=(c[h>>2]|0)?c[m>>2]<<2>>>0<=(c[l>>2]|0)>>>0:0){c[j>>2]=(c[g>>2]|0)+448+((c[(c[g>>2]|0)+8>>2]|0)*2208|0)+68;c[(c[j>>2]|0)+4>>2]=((d[(c[h>>2]|0)+4>>0]|0)<<24)+((d[(c[h>>2]|0)+4+1>>0]|0)<<16)+((d[(c[h>>2]|0)+4+2>>0]|0)<<8)+(d[(c[h>>2]|0)+4+3>>0]|0);c[(c[j>>2]|0)+8>>2]=(c[h>>2]|0)+8;c[f>>2]=0;m=c[f>>2]|0;i=k;return m|0}c[f>>2]=-2147483647;m=c[f>>2]|0;i=k;return m|0}function Ku(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+48|0;l=n+32|0;f=n+28|0;o=n+24|0;p=n+20|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;m=n;c[f>>2]=a;c[o>>2]=b;c[p>>2]=e;c[g>>2]=0;c[h>>2]=0;c[j>>2]=c[p>>2];c[k>>2]=c[o>>2];if(!(c[k>>2]|0)){c[l>>2]=-2147483647;p=c[l>>2]|0;i=n;return p|0}if(!(c[j>>2]|0)){c[l>>2]=-2147483647;p=c[l>>2]|0;i=n;return p|0}while(1){c[g>>2]=((d[c[k>>2]>>0]|0)<<24)+((d[(c[k>>2]|0)+1>>0]|0)<<16)+((d[(c[k>>2]|0)+2>>0]|0)<<8)+(d[(c[k>>2]|0)+3>>0]|0);c[h>>2]=((d[(c[k>>2]|0)+4>>0]|0)<<24)+((d[(c[k>>2]|0)+4+1>>0]|0)<<16)+((d[(c[k>>2]|0)+4+2>>0]|0)<<8)+(d[(c[k>>2]|0)+4+3>>0]|0);if(1718773093==(c[h>>2]|0)|1835295092==(c[h>>2]|0)){f=11;break}if((c[g>>2]|0)>>>0>(c[j>>2]|0)>>>0){f=11;break}c[k>>2]=(c[k>>2]|0)+8;c[j>>2]=(c[j>>2]|0)-8;if((c[h>>2]|0)==1953653094?(c[m>>2]=Lu(c[f>>2]|0,c[k>>2]|0,c[j>>2]|0)|0,0!=(c[m>>2]|0)):0){f=9;break}c[k>>2]=(c[k>>2]|0)+((c[g>>2]|0)-8);c[j>>2]=(c[j>>2]|0)-((c[g>>2]|0)-8);if((c[j>>2]|0)>>>0<=0){f=11;break}}if((f|0)==9){c[l>>2]=c[m>>2];p=c[l>>2]|0;i=n;return p|0}else if((f|0)==11){c[l>>2]=0;p=c[l>>2]|0;i=n;return p|0}return 0}function Lu(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=i;i=i+48|0;l=o+36|0;f=o+32|0;p=o+28|0;q=o+24|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;m=o+4|0;n=o;c[f>>2]=a;c[p>>2]=b;c[q>>2]=e;c[g>>2]=0;c[h>>2]=0;c[j>>2]=c[q>>2];c[k>>2]=c[p>>2];if(!(c[k>>2]|0)){c[l>>2]=-2147483647;q=c[l>>2]|0;i=o;return q|0}if(!(c[j>>2]|0)){c[l>>2]=-2147483647;q=c[l>>2]|0;i=o;return q|0}a:while(1){c[g>>2]=((d[c[k>>2]>>0]|0)<<24)+((d[(c[k>>2]|0)+1>>0]|0)<<16)+((d[(c[k>>2]|0)+2>>0]|0)<<8)+(d[(c[k>>2]|0)+3>>0]|0);c[h>>2]=((d[(c[k>>2]|0)+4>>0]|0)<<24)+((d[(c[k>>2]|0)+4+1>>0]|0)<<16)+((d[(c[k>>2]|0)+4+2>>0]|0)<<8)+(d[(c[k>>2]|0)+4+3>>0]|0);if(1718773093==(c[h>>2]|0)|1835295092==(c[h>>2]|0)){e=13;break}if((c[g>>2]|0)>>>0>(c[j>>2]|0)>>>0){e=13;break}c[k>>2]=(c[k>>2]|0)+8;c[j>>2]=(c[j>>2]|0)-8;e=c[h>>2]|0;b:do if((e|0)<1953658222){switch(e|0){case 1952868452:break;default:break b}c[m>>2]=Mu(c[f>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;if(c[m>>2]|0){e=9;break a}}else{switch(e|0){case 1953658222:break;default:break b}c[n>>2]=Nu(c[f>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;if(c[n>>2]|0){e=11;break a}}while(0);c[k>>2]=(c[k>>2]|0)+((c[g>>2]|0)-8);c[j>>2]=(c[j>>2]|0)-((c[g>>2]|0)-8);if((c[j>>2]|0)>>>0<=0){e=13;break}}if((e|0)==9){c[l>>2]=c[m>>2];q=c[l>>2]|0;i=o;return q|0}else if((e|0)==11){c[l>>2]=c[n>>2];q=c[l>>2]|0;i=o;return q|0}else if((e|0)==13){c[l>>2]=0;q=c[l>>2]|0;i=o;return q|0}return 0}function Mu(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=a;c[h>>2]=b;c[j>>2]=e;if(!(c[h>>2]|0)){c[f>>2]=-2147483647;a=c[f>>2]|0;i=k;return a|0}if(!(c[j>>2]|0)){c[f>>2]=-2147483647;a=c[f>>2]|0;i=k;return a|0}else{c[(c[g>>2]|0)+9392+36>>2]=((d[(c[h>>2]|0)+4>>0]|0)<<24)+((d[(c[h>>2]|0)+4+1>>0]|0)<<16)+((d[(c[h>>2]|0)+4+2>>0]|0)<<8)+(d[(c[h>>2]|0)+4+3>>0]|0)-1;c[f>>2]=0;a=c[f>>2]|0;i=k;return a|0}return 0}
function Sn(a,f,h,j){a=a|0;f=f|0;h=h|0;j=j|0;var 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;v=i;i=i+96|0;r=v+84|0;w=v+68|0;s=v+36|0;t=v+28|0;k=v+4|0;l=v+88|0;o=v+72|0;u=v;n=v+40|0;m=v+32|0;p=v+8|0;c[w>>2]=a;c[s>>2]=f;c[t>>2]=h;c[k>>2]=j;a=c[w>>2]|0;c[l>>2]=0;c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;h=e[a+308+10>>1]|0;a:do if(!(c[a+4680>>2]|0)){c[l>>2]=xq(h,c[s>>2]|0,c[t>>2]|0,o)|0;if(c[l>>2]|0){c[r>>2]=c[l>>2];c[u>>2]=1;w=c[r>>2]|0;i=v;return w|0}}else{if(256!=(h|0)){if(3==(e[a+308+10>>1]|0))b[o+4>>1]=Tn(a)|0}else b[o+4>>1]=c[a+4684>>2];if(5==(e[a+308+10>>1]|0))switch((d[(c[s>>2]|0)+4>>0]&126)>>1|0){case 16:{b[o+4>>1]=2;break a}case 34:case 33:case 32:case 20:case 19:{b[o+4>>1]=3;break a}default:{b[o+4>>1]=2;break a}}}while(0);b:do switch(e[o+4>>1]|0){case 3:{do if(((3==(e[a+308+10>>1]|0)?0==(d[c[a+164>>2]>>0]|0):0)?0==(d[(c[a+164>>2]|0)+1>>0]|0):0)?1==(d[(c[a+164>>2]|0)+2>>0]|0):0){if(182!=(d[(c[a+164>>2]|0)+3>>0]|0)?179!=(d[(c[a+164>>2]|0)+3>>0]|0):0){q=38;break}if(c[a+1412>>2]|0){if(((c[a+1412>>2]|0)+(c[a+168>>2]|0)|0)>>>0<=2097152){Ux((c[a+164>>2]|0)+(c[a+1412>>2]|0)|0,c[a+164>>2]|0,c[a+168>>2]|0)|0;Tx(c[a+164>>2]|0,a+388|0,c[a+1412>>2]|0)|0;w=a+168|0;c[w>>2]=(c[w>>2]|0)+(c[a+1412>>2]|0);c[n>>2]=0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=((c[a+168>>2]|0)-4|0)>>>0)break;if(((0==(d[(c[a+164>>2]|0)+((c[m>>2]|0)+0)>>0]|0)?0==(d[(c[a+164>>2]|0)+((c[m>>2]|0)+1)>>0]|0):0)?1==(d[(c[a+164>>2]|0)+((c[m>>2]|0)+2)>>0]|0):0)?32==(d[(c[a+164>>2]|0)+((c[m>>2]|0)+3)>>0]|0):0){q=28;break}c[m>>2]=(c[m>>2]|0)+1}if((q|0)==28)c[n>>2]=1;if(!(c[n>>2]|0)){c[r>>2]=-2147483644;c[u>>2]=1}else{c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16>>2]=0;if((1==(dq(p,(c[a+164>>2]|0)+(c[m>>2]|0)|0,(c[a+168>>2]|0)-(c[m>>2]|0)|0)|0)?(c[a+188+52+4>>2]=c[p>>2],c[a+188+52+8>>2]=c[p+4>>2],c[a+188+52+32>>2]=c[p+12>>2],c[a+188+52+28>>2]=0,+g[o+8>>2]>0.0):0)?+g[o+8>>2]<100.0:0)g[a+188+52+48>>2]=1.0e3/+g[o+8>>2];c[s>>2]=c[a+164>>2];c[t>>2]=c[a+168>>2];c[u>>2]=0}if(c[u>>2]|0){w=c[r>>2]|0;i=v;return w|0}}}else q=38}else q=38;while(0);do if((q|0)==38){if((((((256==(e[a+308+10>>1]|0)?0==(d[c[a+164>>2]>>0]|0):0)?0==(d[(c[a+164>>2]|0)+1>>0]|0):0)?0==(d[(c[a+164>>2]|0)+2>>0]|0):0)?1==(d[(c[a+164>>2]|0)+3>>0]|0):0)?5==(d[(c[a+164>>2]|0)+4>>0]&31|0):0)?c[a+1412>>2]|0:0){if(((c[a+1412>>2]|0)+(c[a+168>>2]|0)|0)>>>0>2097152)break;Ux((c[a+164>>2]|0)+(c[a+1412>>2]|0)|0,c[a+164>>2]|0,c[a+168>>2]|0)|0;Tx(c[a+164>>2]|0,a+388|0,c[a+1412>>2]|0)|0;w=a+168|0;c[w>>2]=(c[w>>2]|0)+(c[a+1412>>2]|0);c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;c[n+12>>2]=0;c[n+16>>2]=0;c[n+20>>2]=0;c[n+24>>2]=0;if((1==(cq(c[a+164>>2]|0,c[a+168>>2]|0,n)|0)?(c[a+188+52+4>>2]=c[n>>2],c[a+188+52+8>>2]=c[n+4>>2],c[a+188+52+32>>2]=c[n+12>>2],c[a+188+52+28>>2]=0,.05000000074505806<+g[n+20>>2]):0)?+g[n+20>>2]<70.0:0)g[a+188+52+48>>2]=1.0e3/+g[n+20>>2];c[s>>2]=c[a+164>>2];c[t>>2]=c[a+168>>2];break}if(5==(e[a+308+10>>1]|0)?c[a+1412>>2]|0:0){c[r>>2]=-2147483647;c[u>>2]=1;w=c[r>>2]|0;i=v;return w|0}if(((b[o>>1]|0?b[o+2>>1]|0:0)?(c[a+188+52+4>>2]=e[o>>1],c[a+188+52+8>>2]=e[o+2>>1],c[a+188+52+32>>2]=e[o+6>>1],+g[o+8>>2]>.05000000074505806):0)?+g[o+8>>2]<70.0:0)g[a+188+52+48>>2]=1.0e3/+g[o+8>>2]}while(0);c[a+188>>2]=3;c[a+188+4>>2]=c[k>>2];w=a+188+52|0;c[w>>2]=(c[w>>2]|0)+1;c[a+292>>2]=1;break}case 2:{if(c[a+292>>2]|0){c[a+188>>2]=2;c[a+188+4>>2]=c[k>>2];w=a+188+52|0;c[w>>2]=(c[w>>2]|0)+1;break b}c[r>>2]=-2147483644;c[u>>2]=1;w=c[r>>2]|0;i=v;return w|0}case 1:{if(c[a+292>>2]|0){c[a+188>>2]=1;c[a+188+4>>2]=c[k>>2];w=a+188+52|0;c[w>>2]=(c[w>>2]|0)+1;break b}c[r>>2]=-2147483644;c[u>>2]=1;w=c[r>>2]|0;i=v;return w|0}default:{c[r>>2]=-2147483644;c[u>>2]=1;w=c[r>>2]|0;i=v;return w|0}}while(0);if(c[a+1420>>2]|0)c[a+188+52+32>>2]=c[a+1432>>2];if(Un(a,a+188|0)|0){c[r>>2]=-2147483644;c[u>>2]=1;w=c[r>>2]|0;i=v;return w|0}do if(c[a+12+52>>2]|0?c[a+4688>>2]|0:0){h=c[s>>2]|0;j=c[t>>2]|0;f=(c[a+12+52>>2]|0)==2?10:3;if(5==(e[a+308+10>>1]|0)){Xn(a,h,j,f)|0;c[a+12+52>>2]=0;break}else{Zn(a,h,j,f)|0;c[a+12+52>>2]=0;break}}while(0);w=c[a+4>>2]|0;c[r>>2]=pb[c[(c[w>>2]|0)+28>>2]&31](w,c[s>>2]|0,c[t>>2]|0,a+12|0)|0;c[u>>2]=1;w=c[r>>2]|0;i=v;return w|0}function Tn(a){a=a|0;var b=0,e=0,f=0;e=i;i=i+16|0;b=e+4|0;f=e;c[f>>2]=a;a=c[f>>2]|0;a:do switch(d[a+1448>>0]|0|0){case 178:case 0:case 181:case 176:case 32:{c[b>>2]=3;break}case 182:switch((c[a+4684>>2]&192)>>>6|0){case 0:{c[b>>2]=3;break a}case 1:{c[b>>2]=2;break a}case 2:{c[b>>2]=1;break a}default:{c[b>>2]=1;break a}}default:c[b>>2]=2}while(0);i=e;return c[b>>2]|0}function Un(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,j=0;h=i;i=i+16|0;d=h+8|0;j=h+4|0;e=h;c[j>>2]=a;c[e>>2]=b;b=c[j>>2]|0;a:do switch(c[c[e>>2]>>2]|0){case 3:{if((c[b+296>>2]|0)>>>0>0)c[b+296>>2]=0;c[b+12>>2]=1;if(c[b+384>>2]|0)c[b+300>>2]=c[(c[e>>2]|0)+4>>2];break}case 2:{if((c[b+296>>2]|0)>>>0>0)c[b+296>>2]=0;c[b+12>>2]=2;if(c[b+384>>2]|0){lq((c[e>>2]|0)+8+16|0,c[(c[e>>2]|0)+4>>2]|0,c[b+300>>2]|0);c[b+300>>2]=c[(c[e>>2]|0)+4>>2]}if(c[(c[e>>2]|0)+52+28>>2]|0)c[b+296>>2]=1;break}default:if(!(c[b+296>>2]|0)){c[d>>2]=-2147483644;j=c[d>>2]|0;i=h;return j|0}else{c[b+12>>2]=3;j=b+296|0;c[j>>2]=(c[j>>2]|0)+1;if((c[b+296>>2]|0)!=3)break a;c[b+296>>2]=0;break a}}while(0);c[b+12+8>>2]=c[(c[e>>2]|0)+52>>2];c[b+12+12>>2]=c[(c[e>>2]|0)+4>>2];if((c[b+1428>>2]|0)!=0?(c[b+1424>>2]|0)!=0:0){c[b+12+16>>2]=c[b+1424>>2];c[b+12+20>>2]=c[b+1428>>2]}else{c[b+12+16>>2]=c[(c[e>>2]|0)+52+4>>2];c[b+12+20>>2]=c[(c[e>>2]|0)+52+8>>2]}c[b+12+24>>2]=c[(c[e>>2]|0)+52+32>>2];c[b+12+28>>2]=c[(c[e>>2]|0)+52+28>>2];c[b+12+32>>2]=c[(c[e>>2]|0)+8+4>>2];c[b+12+36>>2]=c[(c[e>>2]|0)+8+8>>2];c[b+12+40>>2]=c[(c[e>>2]|0)+8+12>>2];if((c[b+12+32>>2]|0)>>>0>1)c[b+12+44>>2]=c[(c[e>>2]|0)+52+36>>2];else c[b+12+44>>2]=1;c[b+12+56>>2]=c[(c[e>>2]|0)+52+44>>2];c[b+12+48>>2]=c[(c[e>>2]|0)+52+40>>2];do if(+g[b+1436>>2]<.0001?+g[b+1436>>2]>-.0001:0)if(+g[(c[e>>2]|0)+52+48>>2]<=0.0){g[b+12+60>>2]=93206.0;break}else{g[b+12+60>>2]=+g[(c[e>>2]|0)+52+48>>2];break}else f=28;while(0);if((f|0)==28)g[b+12+60>>2]=+g[b+1436>>2];do if(c[b+384>>2]|0){c[b+12+64>>2]=c[(c[e>>2]|0)+8+16>>2];c[b+12+64+4>>2]=c[(c[e>>2]|0)+8+16+4>>2];c[b+12+64+8>>2]=c[(c[e>>2]|0)+8+16+8>>2];c[b+12+64+12>>2]=c[(c[e>>2]|0)+8+16+12>>2];c[b+12+64+16>>2]=c[(c[e>>2]|0)+8+16+16>>2];c[b+12+64+20>>2]=c[(c[e>>2]|0)+8+16+20>>2];c[b+12+64+24>>2]=c[(c[e>>2]|0)+8+16+24>>2]}else{if(1!=(c[b+12>>2]|0)?2!=(c[b+12>>2]|0):0)break;Vn(b)|0}while(0);if(1==(c[b+4728>>2]|0)?c[b+4760>>2]|0:0){if((c[b+4748>>2]|0)==(c[b+4732>>2]|0))c[b+12+144>>2]=1;if((c[b+4748>>2]|0)==(c[b+4732+4>>2]|0))c[b+12+144>>2]=2}c[b+12+52>>2]=c[b+4680>>2];Wn(b);j=b+12+124|0;f=b+4704|0;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];c[j+16>>2]=c[f+16>>2];c[d>>2]=0;j=c[d>>2]|0;i=h;return j|0}function Vn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+4|0;e=g+8|0;f=g;c[b>>2]=a;b=c[b>>2]|0;d=1==(c[b+4640>>2]|0);if(1==(c[b+4644>>2]|0)){a=b+12+64|0;if(d){lq(a,c[b+12+12>>2]|0,c[b+4676>>2]|0);f=b+4648|0;e=b+12+64|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[f+16>>2]=c[e+16>>2];c[f+20>>2]=c[e+20>>2];c[f+24>>2]=c[e+24>>2]}else{f=b+4648|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[a+20>>2]=c[f+20>>2];c[a+24>>2]=c[f+24>>2];c[b+4640>>2]=1}c[b+4676>>2]=c[b+12+12>>2];i=g;return 0}else{if(d)lq(b+12+64|0,c[b+12+12>>2]|0,c[b+4676>>2]|0);else{ab(e|0)|0;c[f>>2]=fb(e|0)|0;c[b+12+64>>2]=(c[(c[f>>2]|0)+20>>2]|0)+1900;c[b+12+64+4>>2]=(c[(c[f>>2]|0)+16>>2]|0)+1;c[b+12+64+8>>2]=c[(c[f>>2]|0)+12>>2];c[b+12+64+12>>2]=c[(c[f>>2]|0)+8>>2];c[b+12+64+16>>2]=c[(c[f>>2]|0)+4>>2];c[b+12+64+20>>2]=c[c[f>>2]>>2];c[b+12+64+24>>2]=0;c[b+4640>>2]=1}c[b+4676>>2]=c[b+12+12>>2];i=g;return 0}return 0}function Wn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;if((c[a+12+16>>2]|0)==800?(c[a+12+20>>2]|0)==608:0)c[a+12+20>>2]=600;if((c[a+12+16>>2]|0)==176?(c[a+12+20>>2]|0)==128:0)c[a+12+20>>2]=120;if(!(+g[a+12+60>>2]==0.0)){i=b;return}if((c[a+12+20>>2]|0)>>>0<=480?(((c[a+12+20>>2]|0)>>>0)%120|0|0)==0:0){g[a+12+60>>2]=33.0;i=b;return}g[a+12+60>>2]=40.0;i=b;return}function Xn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l+16|0;m=l+12|0;g=l+8|0;h=l+4|0;j=l;k=l+20|0;c[m>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;d=c[m>>2]|0;do if(!(c[d+4692>>2]|0)){m=(c[j>>2]|0)+1<<4;c[d+4692>>2]=Ix((m|0)<0?-1:m)|0;if(!(c[d+4692>>2]|0)){m=za(4)|0;c[m>>2]=-2147483646;Xa(m|0,152,0)}else{Pp(c[d+4688>>2]|0,c[d+4692>>2]|0,c[j>>2]|0);break}}while(0);while(1){if(!(c[h>>2]|0))break;c[k>>2]=Yn(d,(c[g>>2]|0)+4|0,(c[h>>2]|0)-4|0)|0;if((c[k>>2]|0)<0)c[k>>2]=(c[h>>2]|0)-4;if((c[j>>2]|0)!=3){if((c[k>>2]|0)>=6)Sp((c[g>>2]|0)+6|0,(c[k>>2]|0)-2|0,c[d+4692>>2]|0,c[j>>2]|0)}else Sp((c[g>>2]|0)+6|0,16,c[d+4692>>2]|0,c[j>>2]|0);c[g>>2]=(c[g>>2]|0)+(4+(c[k>>2]|0));c[h>>2]=(c[h>>2]|0)-(4+(c[k>>2]|0))}c[f>>2]=0;i=l;return c[f>>2]|0}function Yn(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+16|0;f=l+8|0;g=l+4|0;k=l+20|0;j=l;c[l+12>>2]=a;c[f>>2]=b;c[g>>2]=e;if((c[g>>2]|0)>>>0<4){c[h>>2]=-1;k=c[h>>2]|0;i=l;return k|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=((c[g>>2]|0)-3|0)>>>0){f=5;break}if((((d[(c[f>>2]|0)+(c[k>>2]|0)>>0]|0|0)==0?(d[(c[f>>2]|0)+((c[k>>2]|0)+1)>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+2)>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+3)>>0]|0|0)==1:0){f=10;break}c[k>>2]=(c[k>>2]|0)+1}if((f|0)==5)c[j>>2]=2;else if((f|0)==10){c[h>>2]=c[k>>2];c[j>>2]=1}if(((c[j>>2]|0)+-2|0)>>>0>=1){k=c[h>>2]|0;i=l;return k|0}c[h>>2]=-1;k=c[h>>2]|0;i=l;return k|0}function Zn(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;g=m+16|0;n=m+12|0;h=m+8|0;j=m+4|0;k=m;l=m+20|0;c[n>>2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;f=c[n>>2]|0;do if(!(c[f+4692>>2]|0)){n=(c[k>>2]|0)+1<<4;c[f+4692>>2]=Ix((n|0)<0?-1:n)|0;if(!(c[f+4692>>2]|0)){n=za(4)|0;c[n>>2]=-2147483646;Xa(n|0,152,0)}else{Pp(c[f+4688>>2]|0,c[f+4692>>2]|0,c[k>>2]|0);break}}while(0);while(1){if(!(c[j>>2]|0))break;c[l>>2]=Yn(f,(c[h>>2]|0)+4|0,(c[j>>2]|0)-4|0)|0;if((c[l>>2]|0)<0)c[l>>2]=(c[j>>2]|0)-4;e=(c[h>>2]|0)+4|0;if((c[k>>2]|0)==3){Sp(e,16,c[f+4692>>2]|0,c[k>>2]|0);if(((d[(c[h>>2]|0)+4>>0]|0)&31|0)!=5?((d[(c[h>>2]|0)+4>>0]|0)&31|0)!=1:0)Sp((c[h>>2]|0)+20|0,(c[l>>2]|0)-16|0,c[f+4692>>2]|0,c[k>>2]|0)}else Sp(e,c[l>>2]|0,c[f+4692>>2]|0,c[k>>2]|0);c[h>>2]=(c[h>>2]|0)+(4+(c[l>>2]|0));c[j>>2]=(c[j>>2]|0)-(4+(c[l>>2]|0))}c[g>>2]=0;i=m;return c[g>>2]|0}function _n(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;j=o+20|0;p=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[p>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;f=c[p>>2]|0;if(!(c[k>>2]|0)){c[j>>2]=-2147483644;p=c[j>>2]|0;i=o;return p|0}do if(c[f+4680>>2]|0?(c[f+168>>2]|0)==0:0){if((c[l>>2]|0)>>>0>=2){a[f+1448>>0]=a[c[k>>2]>>0]|0;c[f+4684>>2]=d[(c[k>>2]|0)+1>>0];c[k>>2]=(c[k>>2]|0)+2;c[l>>2]=(c[l>>2]|0)-2;break}c[j>>2]=-2147483644;p=c[j>>2]|0;i=o;return p|0}while(0);$n(f,c[k>>2]|0,c[l>>2]|0)|0;if(c[m>>2]|0?c[f+168>>2]|0:0){Sn(f,c[f+164>>2]|0,c[f+168>>2]|0,c[n>>2]|0)|0;c[f+168>>2]=0}c[j>>2]=0;p=c[j>>2]|0;i=o;return p|0}function $n(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[j>>2]|0;if((c[g>>2]|0)>>>0>2097152?1:((c[d+168>>2]|0)+(c[g>>2]|0)|0)>>>0>2097152){c[e>>2]=-2147483643;j=c[e>>2]|0;i=h;return j|0}if(0!=(c[f>>2]|0)?0!=(c[d+164>>2]|0):0){Tx((c[d+164>>2]|0)+(c[d+168>>2]|0)|0,c[f>>2]|0,c[g>>2]|0)|0;j=d+168|0;c[j>>2]=(c[j>>2]|0)+(c[g>>2]|0);c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}c[e>>2]=-2147483645;j=c[e>>2]|0;i=h;return j|0}function ao(b,f,g,h,j){b=b|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=i;i=i+96|0;p=s+76|0;t=s+72|0;k=s+16|0;l=s+8|0;m=s+4|0;n=s;o=s+80|0;r=s+20|0;q=s+12|0;c[t>>2]=b;c[k>>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=j;j=c[t>>2]|0;if(!(c[k>>2]|0)){c[p>>2]=-2147483644;t=c[p>>2]|0;i=s;return t|0}if((c[j+348>>2]|0)>>>0>9){bo(j,(c[k>>2]|0)+(c[l>>2]|0)|0)|0;c[j+348>>2]=0}a:do switch((d[c[k>>2]>>0]|0)&31|0){case 24:{c[p>>2]=On(j)|0;t=c[p>>2]|0;i=s;return t|0}case 28:{if((c[l>>2]|0)>>>0<2){c[p>>2]=On(j)|0;t=c[p>>2]|0;i=s;return t|0}if(((d[(c[k>>2]|0)+1>>0]|0)&192|0)==128){a[o>>0]=(d[c[k>>2]>>0]|0)&224|(d[(c[k>>2]|0)+1>>0]|0)&31;eo(j)|0;if(!(c[j+4680>>2]|0))$n(j,o,1)|0;else{c[j+4684>>2]=fo(j,d[o>>0]|0)|0;if(3==(c[j+4700>>2]|0)?(c[j+4684>>2]|0)!=(c[j+4700>>2]|0):0)c[j+4684>>2]=c[j+4700>>2];c[j+4700>>2]=c[j+4684>>2]}}$n(j,(c[k>>2]|0)+2|0,(c[l>>2]|0)-2|0)|0;break}case 6:case 9:break;default:{eo(j)|0;g=c[k>>2]|0;if((c[j+4680>>2]|0)>>>0<=0){$n(j,g,c[l>>2]|0)|0;break a}c[j+4684>>2]=fo(j,d[g>>0]|0)|0;if(3==(c[j+4700>>2]|0)?(c[j+4684>>2]|0)!=(c[j+4700>>2]|0):0)c[j+4684>>2]=c[j+4700>>2];c[j+4700>>2]=c[j+4684>>2];$n(j,(c[k>>2]|0)+1|0,(c[l>>2]|0)-1|0)|0}}while(0);if(c[m>>2]|0?c[j+168>>2]|0:0){c[o>>2]=Sn(j,c[j+164>>2]|0,c[j+168>>2]|0,c[n>>2]|0)|0;do if(256==(e[j+308+10>>1]|0|0)){if(-2147483647!=(c[o>>2]|0)){c[j+168>>2]=0;break}g=r;h=g+52|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));go(j,c[j+164>>2]|0,c[j+168>>2]|0,r)|0;c[j+168>>2]=0;c[q>>2]=0;while(1){if((c[q>>2]|0)>=(c[r>>2]|0))break;if(!((c[r+4+((c[q>>2]|0)*12|0)+8>>2]|0)!=7?(c[r+4+((c[q>>2]|0)*12|0)+8>>2]|0)!=8:0)){Tx((c[j+164>>2]|0)+(c[j+168>>2]|0)|0,c[r+4+((c[q>>2]|0)*12|0)>>2]|0,c[r+4+((c[q>>2]|0)*12|0)+4>>2]|0)|0;t=j+168|0;c[t>>2]=(c[t>>2]|0)+(c[r+4+((c[q>>2]|0)*12|0)+4>>2]|0)}c[q>>2]=(c[q>>2]|0)+1}}while(0);c[j+4700>>2]=2}c[p>>2]=0;t=c[p>>2]|0;i=s;return t|0}function bo(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;f=i;i=i+48|0;h=f+4|0;g=f;e=f+8|0;c[h>>2]=a;c[g>>2]=b;b=c[h>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e>>2]=((d[c[g>>2]>>0]|0)<<8)+(d[(c[g>>2]|0)+1>>0]|0);c[e+4>>2]=d[(c[g>>2]|0)+2>>0];c[e+8>>2]=d[(c[g>>2]|0)+3>>0];c[e+12>>2]=d[(c[g>>2]|0)+4>>0];c[e+16>>2]=d[(c[g>>2]|0)+5>>0];c[e+20>>2]=d[(c[g>>2]|0)+6>>0];c[e+24>>2]=((d[(c[g>>2]|0)+7>>0]|0)<<8)+(d[(c[g>>2]|0)+8>>0]|0);if(!(co(b,e)|0)){i=f;return 0}c[b+188+8+16>>2]=c[e>>2];c[b+188+8+16+4>>2]=c[e+4>>2];c[b+188+8+16+8>>2]=c[e+8>>2];c[b+188+8+16+12>>2]=c[e+12>>2];c[b+188+8+16+16>>2]=c[e+16>>2];c[b+188+8+16+20>>2]=c[e+20>>2];c[b+188+8+16+24>>2]=c[e+24>>2];c[b+384>>2]=1;i=f;return 0}function co(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+8|0;e=f;c[f+4>>2]=a;c[e>>2]=b;do if(!(c[e>>2]|0))c[d>>2]=0;else{if((c[c[e>>2]>>2]|0)>>>0<=2050?(c[c[e>>2]>>2]|0)>>>0>=2e3:0){if((c[(c[e>>2]|0)+4>>2]|0)>>>0>12){c[d>>2]=0;break}if((c[(c[e>>2]|0)+8>>2]|0)>>>0>31){c[d>>2]=0;break}if((c[(c[e>>2]|0)+12>>2]|0)>>>0>23){c[d>>2]=0;break}if((c[(c[e>>2]|0)+16>>2]|0)>>>0>59){c[d>>2]=0;break}if((c[(c[e>>2]|0)+20>>2]|0)>>>0>59){c[d>>2]=0;break}else{c[d>>2]=1;break}}c[d>>2]=0}while(0);i=f;return c[d>>2]|0}function eo(b){b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+4|0;f=e;c[f>>2]=b;b=c[f>>2]|0;if(((c[b+168>>2]|0)+4|0)>>>0>2097152){c[d>>2]=-2147483643;f=c[d>>2]|0;i=e;return f|0}else{f=b+168|0;g=c[f>>2]|0;c[f>>2]=g+1;a[(c[b+164>>2]|0)+g>>0]=0;g=b+168|0;f=c[g>>2]|0;c[g>>2]=f+1;a[(c[b+164>>2]|0)+f>>0]=0;f=b+168|0;g=c[f>>2]|0;c[f>>2]=g+1;a[(c[b+164>>2]|0)+g>>0]=0;g=b+168|0;f=c[g>>2]|0;c[g>>2]=f+1;a[(c[b+164>>2]|0)+f>>0]=1;c[d>>2]=0;f=c[d>>2]|0;i=e;return f|0}return 0}function fo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+8|0;f=e;c[e+4>>2]=a;c[f>>2]=b;switch(c[f>>2]&31|0){case 1:{c[d>>2]=2;break}case 7:case 5:{c[d>>2]=3;break}default:c[d>>2]=2}i=e;return c[d>>2]|0}function go(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=i;i=i+48|0;g=r+36|0;s=r+28|0;h=r+20|0;j=r+12|0;k=r+4|0;o=r+40|0;m=r+32|0;n=r+24|0;p=r+16|0;l=r;c[s>>2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;b=c[s>>2]|0;c[o>>2]=0;c[m>>2]=0;c[n>>2]=0;c[p>>2]=c[h>>2];c[r+8>>2]=0;if((c[j>>2]|0)>>>0<4){c[g>>2]=-2147483645;c[l>>2]=1;s=c[g>>2]|0;i=r;return s|0}while(1){c[o>>2]=Yn(b,(c[h>>2]|0)+4|0,(c[j>>2]|0)-4|0)|0;e=5==((d[(c[h>>2]|0)+4>>0]|0)&31|0);if((c[o>>2]|0)==-1)break;if(!(((!e?1!=((d[(c[h>>2]|0)+4>>0]|0)&31|0):0)?7!=((d[(c[h>>2]|0)+4>>0]|0)&31|0):0)?8!=((d[(c[h>>2]|0)+4>>0]|0)&31|0):0)){if((c[m>>2]|0)>0){c[(c[k>>2]|0)+4+(((c[m>>2]|0)-1|0)*12|0)+4>>2]=c[n>>2];c[(c[k>>2]|0)+4+(((c[m>>2]|0)-1|0)*12|0)>>2]=c[p>>2];c[(c[k>>2]|0)+4+(((c[m>>2]|0)-1|0)*12|0)+8>>2]=(d[(c[p>>2]|0)+4>>0]|0)&31;c[p>>2]=(c[p>>2]|0)+(c[n>>2]|0);c[n>>2]=0}c[m>>2]=(c[m>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+((c[o>>2]|0)+4);if((c[j>>2]|0)>>>0<((c[o>>2]|0)+4|0)>>>0){q=20;break}c[j>>2]=(c[j>>2]|0)-((c[o>>2]|0)+4);c[n>>2]=(c[n>>2]|0)+((c[o>>2]|0)+4)}if((q|0)==20){c[g>>2]=-2147483643;c[l>>2]=1;s=c[g>>2]|0;i=r;return s|0}if(!(((!e?1!=((d[(c[h>>2]|0)+4>>0]|0)&31|0):0)?7!=((d[(c[h>>2]|0)+4>>0]|0)&31|0):0)?8!=((d[(c[h>>2]|0)+4>>0]|0)&31|0):0)){if((c[m>>2]|0)>0){c[(c[k>>2]|0)+4+(((c[m>>2]|0)-1|0)*12|0)+4>>2]=c[n>>2];c[(c[k>>2]|0)+4+(((c[m>>2]|0)-1|0)*12|0)>>2]=c[p>>2];c[(c[k>>2]|0)+4+(((c[m>>2]|0)-1|0)*12|0)+8>>2]=(d[(c[p>>2]|0)+4>>0]|0)&31;c[p>>2]=(c[p>>2]|0)+(c[n>>2]|0)}q=c[j>>2]|0;s=c[m>>2]|0;c[m>>2]=s+1;c[(c[k>>2]|0)+4+(s*12|0)+4>>2]=q;c[(c[k>>2]|0)+4+(((c[m>>2]|0)-1|0)*12|0)>>2]=c[p>>2];c[(c[k>>2]|0)+4+(((c[m>>2]|0)-1|0)*12|0)+8>>2]=(d[(c[p>>2]|0)+4>>0]|0)&31}c[c[k>>2]>>2]=c[m>>2];c[g>>2]=0;c[l>>2]=1;s=c[g>>2]|0;i=r;return s|0}function ho(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var 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;t=i;i=i+64|0;h=t+44|0;u=t+36|0;j=t+28|0;k=t+20|0;l=t+12|0;m=t+4|0;o=t+40|0;q=t+24|0;r=t+16|0;p=t+8|0;n=t;c[u>>2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;e=c[u>>2]|0;if(!(c[j>>2]|0)){c[h>>2]=-2147483644;u=c[h>>2]|0;i=t;return u|0}if((c[k>>2]|0)>>>0<8){c[h>>2]=-2147483644;u=c[h>>2]|0;i=t;return u|0}c[t+48>>2]=d[c[j>>2]>>0];c[o>>2]=((d[(c[j>>2]|0)+1>>0]|0)<<16)+((d[(c[j>>2]|0)+2>>0]|0)<<8)+(d[(c[j>>2]|0)+3>>0]|0);c[t+32>>2]=d[(c[j>>2]|0)+4>>0];c[q>>2]=d[(c[j>>2]|0)+5>>0];c[r>>2]=(d[(c[j>>2]|0)+6>>0]|0)<<3;c[p>>2]=(d[(c[j>>2]|0)+7>>0]|0)<<3;c[j>>2]=(c[j>>2]|0)+8;c[k>>2]=(c[k>>2]|0)-8;do if((c[r>>2]|0)==0|(c[p>>2]|0)==0){if(c[e+188+52+4>>2]|0?c[e+188+52+8>>2]|0:0){c[r>>2]=c[e+188+52+4>>2];c[p>>2]=c[e+188+52+8>>2];s=10;break}c[h>>2]=-2147483644;c[n>>2]=1}else s=10;while(0);a:do if((s|0)==10){if((c[o>>2]|0)==0&(c[q>>2]|0)!=255){io(e,c[r>>2]&65535,c[p>>2]&65535,c[q>>2]|0,c[e+164>>2]|0);c[e+168>>2]=618}$n(e,c[j>>2]|0,c[k>>2]|0)|0;do if(c[l>>2]|0){c[e+188>>2]=3;c[e+188+4>>2]=c[m>>2];u=e+188+52|0;c[u>>2]=(c[u>>2]|0)+1;c[e+188+52+4>>2]=c[r>>2];c[e+188+52+8>>2]=c[p>>2];if(Un(e,e+188|0)|0){c[h>>2]=-2147483644;c[n>>2]=1;break a}else{c[e+292>>2]=1;u=c[e+4>>2]|0;pb[c[(c[u>>2]|0)+28>>2]&31](u,c[e+164>>2]|0,c[e+168>>2]|0,e+12|0)|0;c[e+168>>2]=0;break}}while(0);c[h>>2]=0;c[n>>2]=1}while(0);u=c[h>>2]|0;i=t;return u|0}function io(d,f,g,h,j){d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;l=p+18|0;m=p+16|0;k=p+4|0;n=p;o=p+12|0;c[p+8>>2]=d;b[l>>1]=f;b[m>>1]=g;c[k>>2]=h;c[n>>2]=j;if((c[k>>2]|0)<1)k=1;else k=(c[k>>2]|0)>100?100:c[k>>2]|0;c[o>>2]=k;c[o>>2]=(c[o>>2]|0)+-1;k=c[n>>2]|0;j=6530;g=k+15|0;do{a[k>>0]=a[j>>0]|0;k=k+1|0;j=j+1|0}while((k|0)<(g|0));c[n>>2]=(c[n>>2]|0)+15;Tx(c[n>>2]|0,6545+((c[o>>2]|0)*138|0)|0,138)|0;c[n>>2]=(c[n>>2]|0)+138;Tx(c[n>>2]|0,20345,465)|0;c[n>>2]=(c[n>>2]|0)+5;f=(e[m>>1]|0)>>8&255;o=c[n>>2]|0;c[n>>2]=o+1;a[o>>0]=f;m=b[m>>1]&255;o=c[n>>2]|0;c[n>>2]=o+1;a[o>>0]=m;o=(e[l>>1]|0)>>8&255;m=c[n>>2]|0;c[n>>2]=m+1;a[m>>0]=o;m=b[l>>1]&255;o=c[n>>2]|0;c[n>>2]=o+1;a[o>>0]=m;i=p;return}function jo(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+48|0;h=q+36|0;r=q+28|0;j=q+20|0;k=q+12|0;l=q+8|0;m=q+4|0;o=q+16|0;n=q;c[r>>2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;e=c[r>>2]|0;if(!(c[j>>2]|0)){c[h>>2]=-2147483644;r=c[h>>2]|0;i=q;return r|0}if((c[k>>2]|0)>>>0<4){c[h>>2]=-2147483644;r=c[h>>2]|0;i=q;return r|0}c[q+40>>2]=((d[(c[j>>2]|0)+2>>0]|0)&32)>>5;c[q+32>>2]=((d[(c[j>>2]|0)+2>>0]|0)&16)>>4;c[q+24>>2]=((d[(c[j>>2]|0)+2>>0]|0)&8)>>3;c[o>>2]=(d[(c[j>>2]|0)+2>>0]|0)&7;c[j>>2]=(c[j>>2]|0)+4;c[k>>2]=(c[k>>2]|0)-4;$n(e,c[j>>2]|0,c[k>>2]|0)|0;do if(c[l>>2]|0?c[e+168>>2]|0:0){if((c[o>>2]|0)!=1){if((c[o>>2]|0)==2)c[e+188>>2]=2}else{c[e+188>>2]=3;c[e+292>>2]=1}c[e+188+4>>2]=c[m>>2];r=e+188+52|0;c[r>>2]=(c[r>>2]|0)+1;if(Un(e,e+188|0)|0){c[h>>2]=-2147483644;c[n>>2]=1;break}if((c[e+1416>>2]|0?c[e+1420>>2]|0:0)?c[e+292>>2]|0:0){p=c[e+4>>2]|0;pb[c[(c[p>>2]|0)+28>>2]&31](p,c[e+164>>2]|0,c[e+168>>2]|0,e+12|0)|0;c[e+168>>2]=0;p=17}else p=17}else p=17;while(0);if((p|0)==17){c[h>>2]=0;c[n>>2]=1}r=c[h>>2]|0;i=q;return r|0}function ko(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+32|0;h=q+24|0;r=q+20|0;j=q+16|0;k=q+12|0;l=q+8|0;m=q+4|0;o=q+28|0;n=q;c[r>>2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;e=c[r>>2]|0;if(!(c[j>>2]|0)){c[h>>2]=-2147483644;r=c[h>>2]|0;i=q;return r|0}if((c[k>>2]|0)>>>0<4){c[h>>2]=-2147483644;r=c[h>>2]|0;i=q;return r|0}$n(e,c[j>>2]|0,c[k>>2]|0)|0;c[o>>2]=0;do if(c[l>>2]|0?c[e+168>>2]|0:0){c[o>>2]=(d[c[e+164>>2]>>0]|0)+((d[(c[e+164>>2]|0)+1>>0]|0)<<8);switch(c[o>>2]|0){case 4099:{c[e+188>>2]=3;c[e+292>>2]=1;break}case 4100:{c[e+188>>2]=2;break}case 4101:{c[e+188>>2]=1;break}default:{}}c[e+188+4>>2]=c[m>>2];r=e+188+52|0;c[r>>2]=(c[r>>2]|0)+1;if(Un(e,e+188|0)|0){c[h>>2]=-2147483644;c[n>>2]=1;break}if((c[e+1416>>2]|0?c[e+1420>>2]|0:0)?c[e+292>>2]|0:0){p=c[e+4>>2]|0;pb[c[(c[p>>2]|0)+28>>2]&31](p,c[e+164>>2]|0,c[e+168>>2]|0,e+12|0)|0;c[e+168>>2]=0;p=17}else p=17}else p=17;while(0);if((p|0)==17){c[h>>2]=0;c[n>>2]=1}r=c[h>>2]|0;i=q;return r|0}function lo(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+32|0;j=q+20|0;r=q+16|0;k=q+12|0;l=q+8|0;m=q+4|0;n=q;o=q+24|0;c[r>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;f=c[r>>2]|0;if((c[f+348>>2]|0)>>>0>9){bo(f,(c[k>>2]|0)+(c[l>>2]|0)|0)|0;c[f+348>>2]=0}if(!(((c[l>>2]|0)>>>0<20?(d[c[k>>2]>>0]|0|0)==92:0)^1|(c[m>>2]|0)!=0)?0==(c[f+168>>2]|0):0){eo(f)|0;$n(f,c[k>>2]|0,c[l>>2]|0)|0}else p=6;a:do if((p|0)==6)switch((d[c[k>>2]>>0]|0)&31|0){case 24:{c[j>>2]=On(f)|0;r=c[j>>2]|0;i=q;return r|0}case 28:{if((c[l>>2]|0)>>>0<2){c[j>>2]=On(f)|0;r=c[j>>2]|0;i=q;return r|0}if(((d[(c[k>>2]|0)+1>>0]|0)&192|0)==128){a[o>>0]=(d[c[k>>2]>>0]|0)&224|(d[(c[k>>2]|0)+1>>0]|0)&31;eo(f)|0;$n(f,o,1)|0}$n(f,(c[k>>2]|0)+2|0,(c[l>>2]|0)-2|0)|0;break a}default:{eo(f)|0;$n(f,c[k>>2]|0,c[l>>2]|0)|0;break a}}while(0);if(c[m>>2]|0?c[f+168>>2]|0:0){Sn(f,c[f+164>>2]|0,c[f+168>>2]|0,c[n>>2]|0)|0;c[f+168>>2]=0}c[j>>2]=0;r=c[j>>2]|0;i=q;return r|0}function mo(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+32|0;j=q+24|0;r=q+20|0;k=q+16|0;l=q+12|0;m=q+8|0;n=q+4|0;p=q+28|0;o=q;c[r>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;f=c[r>>2]|0;a[p>>0]=0;a[p+1>>0]=0;switch(((d[c[k>>2]>>0]|0)&127)>>1|0){case 50:case 48:{c[j>>2]=On(f)|0;c[o>>2]=1;r=c[j>>2]|0;i=q;return r|0}case 49:{if((c[l>>2]|0)>>>0<3){c[j>>2]=On(f)|0;c[o>>2]=1;r=c[j>>2]|0;i=q;return r|0}if((d[(c[k>>2]|0)+2>>0]|0)&128|0){eo(f)|0;a[p>>0]=(d[c[k>>2]>>0]|0)&129|((d[(c[k>>2]|0)+2>>0]|0)&63)<<1;a[p+1>>0]=a[(c[k>>2]|0)+1>>0]|0;$n(f,p,2)|0}$n(f,(c[k>>2]|0)+3|0,(c[l>>2]|0)-3|0)|0;break}default:{eo(f)|0;$n(f,c[k>>2]|0,c[l>>2]|0)|0}}if(c[m>>2]|0?c[f+168>>2]|0:0){Sn(f,c[f+164>>2]|0,c[f+168>>2]|0,c[n>>2]|0)|0;c[f+168>>2]=0}c[j>>2]=0;c[o>>2]=1;r=c[j>>2]|0;i=q;return r|0}function no(a,b,d,f,g,h){a=a|0;b=b|0;d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;j=o+24|0;p=o+20|0;k=o+16|0;l=o+12|0;m=o+8|0;n=o;c[p>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=f;c[o+4>>2]=g;c[n>>2]=h;f=c[p>>2]|0;d=e[f+308+12>>1]|0;a:do if((d|0)<28673){if((d|0)<8192)switch(d|0){case 4115:case 4114:case 4113:{d=3;break a}default:{d=9;break a}}if((d|0)<12288)switch(d|0){case 8192:{c[j>>2]=ro(f,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,((c[n>>2]|0)>>>0)/90|0)|0;p=c[j>>2]|0;i=o;return p|0}case 8193:{c[j>>2]=uo(f,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,~~(+((c[n>>2]|0)>>>0)*1.0/+((c[f+12+92+16>>2]|0)>>>0)*1.0e3)>>>0)|0;p=c[j>>2]|0;i=o;return p|0}default:{d=9;break a}}else{if((d|0)>=28672)switch(d|0){case 28672:{d=8;break a}default:{d=9;break a}}switch(d|0){case 12288:break;default:{d=9;break a}}c[j>>2]=so(f,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,((c[n>>2]|0)>>>0)/8|0)|0;p=c[j>>2]|0;i=o;return p|0}}else switch(d|0){case 29217:{d=3;break a}case 28673:{d=8;break a}case 28945:case 28944:{c[j>>2]=oo(f,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,((c[n>>2]|0)>>>0)/8|0)|0;p=c[j>>2]|0;i=o;return p|0}case 29281:case 29280:case 29282:{c[j>>2]=to(f,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,~~(+((c[n>>2]|0)>>>0)*1.0/+((c[f+12+92+16>>2]|0)>>>0)*1.0e3)>>>0)|0;p=c[j>>2]|0;i=o;return p|0}default:{d=9;break a}}while(0);if((d|0)==3){c[j>>2]=qo(f,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,((c[n>>2]|0)>>>0)/16|0)|0;p=c[j>>2]|0;i=o;return p|0}else if((d|0)==8){c[j>>2]=vo(f,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,~~(+((c[n>>2]|0)>>>0)*1.0/+((c[f+12+92+16>>2]|0)>>>0)*1.0e3)>>>0)|0;p=c[j>>2]|0;i=o;return p|0}else if((d|0)==9){c[j>>2]=0;p=c[j>>2]|0;i=o;return p|0}return 0}function oo(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;l=g+16|0;k=g+12|0;j=g+8|0;h=g;c[l>>2]=a;c[k>>2]=b;c[j>>2]=d;c[g+4>>2]=e;c[h>>2]=f;po(c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return 0}function po(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l+16|0;m=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;d=c[m>>2]|0;if(!(c[d+292>>2]|0)){c[f>>2]=-2147483644;m=c[f>>2]|0;i=l;return m|0}if((c[d+296>>2]|0)>>>0>0)c[d+296>>2]=0;c[d+12>>2]=4;c[d+12+8>>2]=-1;c[d+12+12>>2]=c[k>>2];g[d+12+60>>2]=40.0;c[d+12+52>>2]=c[d+4680>>2];m=c[d+4>>2]|0;c[f>>2]=pb[c[(c[m>>2]|0)+28>>2]&31](m,c[h>>2]|0,c[j>>2]|0,d+12|0)|0;m=c[f>>2]|0;i=l;return m|0}function qo(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;l=g+16|0;k=g+12|0;j=g+8|0;h=g;c[l>>2]=a;c[k>>2]=b;c[j>>2]=d;c[g+4>>2]=e;c[h>>2]=f;po(c[l>>2]|0,c[k>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return 0}function ro(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;g=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l;c[m>>2]=a;c[h>>2]=b;c[j>>2]=d;c[l+4>>2]=e;c[k>>2]=f;d=c[m>>2]|0;if(!(c[h>>2]|0)){c[g>>2]=-2147483644;m=c[g>>2]|0;i=l;return m|0}if((c[j>>2]|0)>>>0<=4){c[g>>2]=-2147483644;m=c[g>>2]|0;i=l;return m|0}else{c[h>>2]=(c[h>>2]|0)+4;c[j>>2]=(c[j>>2]|0)-4;po(d,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;c[g>>2]=0;m=c[g>>2]|0;i=l;return m|0}return 0}function so(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;g=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l;c[m>>2]=a;c[h>>2]=b;c[j>>2]=d;c[l+4>>2]=e;c[k>>2]=f;d=c[m>>2]|0;if((c[j>>2]|0)>>>0<=1){c[g>>2]=-2147483644;m=c[g>>2]|0;i=l;return m|0}else{c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)-1;po(d,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;c[g>>2]=0;m=c[g>>2]|0;i=l;return m|0}return 0}function to(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;g=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l;c[m>>2]=a;c[h>>2]=b;c[j>>2]=d;c[l+4>>2]=e;c[k>>2]=f;d=c[m>>2]|0;if(!(c[h>>2]|0)){c[g>>2]=-2147483644;m=c[g>>2]|0;i=l;return m|0}else{po(d,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;c[g>>2]=0;m=c[g>>2]|0;i=l;return m|0}return 0}function uo(a,f,g,h,j){a=a|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=i;i=i+32|0;k=r+24|0;s=r+20|0;l=r+16|0;m=r+12|0;n=r+4|0;p=r+30|0;o=r;q=r+28|0;c[s>>2]=a;c[l>>2]=f;c[m>>2]=g;c[r+8>>2]=h;c[n>>2]=j;g=c[s>>2]|0;if(!(c[l>>2]|0)){c[k>>2]=-2147483644;s=c[k>>2]|0;i=r;return s|0}b[p>>1]=0;do if((c[m>>2]|0)>>>0<2){c[k>>2]=-2147483644;c[o>>2]=1}else{if((c[g+4724>>2]|0)!=4){b[p>>1]=(((d[c[l>>2]>>0]|0)<<8)+(d[(c[l>>2]|0)+1>>0]|0)|0)/8|0;if(2!=(e[p>>1]|0|0)){c[k>>2]=-2147483393;c[o>>2]=1;break}b[q>>1]=((d[(c[l>>2]|0)+2>>0]|0)<<5)+((d[(c[l>>2]|0)+3>>0]|0)>>3);c[l>>2]=(c[l>>2]|0)+2;c[m>>2]=(c[m>>2]|0)-2;if((e[q>>1]|0|0)!=((c[m>>2]|0)-(e[p>>1]|0)|0)){c[k>>2]=-2147483393;c[o>>2]=1}else c[o>>2]=0;if(c[o>>2]|0)break}po(g,(c[l>>2]|0)+(e[p>>1]|0)|0,(c[m>>2]|0)-(e[p>>1]|0)|0,c[n>>2]|0)|0;c[k>>2]=0;c[o>>2]=1}while(0);s=c[k>>2]|0;i=r;return s|0}function vo(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;g=m+20|0;n=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[n>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;d=c[n>>2]|0;if(((c[d+180>>2]|0)+(c[j>>2]|0)|0)>>>0>10240){c[g>>2]=-2147483643;n=c[g>>2]|0;i=m;return n|0}Tx((c[d+176>>2]|0)+(c[d+180>>2]|0)|0,c[h>>2]|0,c[j>>2]|0)|0;n=d+180|0;c[n>>2]=(c[n>>2]|0)+(c[j>>2]|0);if(!(c[k>>2]|0)){c[g>>2]=0;n=c[g>>2]|0;i=m;return n|0}else{po(d,c[d+176>>2]|0,c[d+180>>2]|0,c[l>>2]|0)|0;c[d+180>>2]=0;c[g>>2]=0;n=c[g>>2]|0;i=m;return n|0}return 0}function wo(b,e,f,h,j,k){b=b|0;e=e|0;f=f|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=i;i=i+64|0;v=x;l=x+44|0;y=x+36|0;m=x+28|0;n=x+20|0;o=x+16|0;p=x+8|0;s=x+48|0;r=x+40|0;u=x+32|0;q=x+4|0;t=x+24|0;c[y>>2]=b;c[m>>2]=e;c[n>>2]=f;c[o>>2]=h;c[x+12>>2]=j;c[p>>2]=k;f=c[y>>2]|0;c[s>>2]=0;c[r>>2]=0;c[u>>2]=0;if((c[f+1440>>2]|0)==4097?!(c[f+1444>>2]|0):0)c[s>>2]=c[f+1440>>2];else w=4;do if((w|0)==4){if((c[n>>2]|0)>>>0>=4){c[s>>2]=((d[c[m>>2]>>0]|0)<<8)+(d[(c[m>>2]|0)+1>>0]|0);c[r>>2]=((d[(c[m>>2]|0)+2>>0]|0)<<8)+(d[(c[m>>2]|0)+3>>0]|0)<<2;c[f+1440>>2]=c[s>>2];break}c[l>>2]=-2147483644;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}while(0);if((c[o>>2]|0)==0?(c[f+1440>>2]|0)==4097:0)if(((c[f+168>>2]|0)+(c[n>>2]|0)|0)>>>0>2097152){c[l>>2]=-2147483643;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}else{Tx((c[f+164>>2]|0)+(c[f+168>>2]|0)|0,c[m>>2]|0,c[n>>2]|0)|0;y=f+168|0;c[y>>2]=(c[y>>2]|0)+(c[n>>2]|0);c[f+1444>>2]=0;c[l>>2]=0;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}if((c[o>>2]|0)==0?(c[f+1440>>2]|0)==13:0){if(((c[f+168>>2]|0)+(c[n>>2]|0)|0)>>>0>2097152){c[l>>2]=-2147483643;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}if(!(c[f+1444>>2]|0)){if((c[n>>2]|0)>>>0>12){Tx((c[f+164>>2]|0)+(c[f+168>>2]|0)|0,(c[m>>2]|0)+12|0,(c[n>>2]|0)-12|0)|0;y=f+168|0;c[y>>2]=(c[y>>2]|0)+((c[n>>2]|0)-12)}}else{Tx((c[f+164>>2]|0)+(c[f+168>>2]|0)|0,c[m>>2]|0,c[n>>2]|0)|0;y=f+168|0;c[y>>2]=(c[y>>2]|0)+(c[n>>2]|0)}c[f+1444>>2]=0;c[l>>2]=0;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}if((c[o>>2]|0)==0?(c[f+1440>>2]|0)==258:0){if(((c[f+168>>2]|0)+(c[n>>2]|0)|0)>>>0>2097152){c[l>>2]=-2147483643;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}if(!(c[f+1444>>2]|0)){if((c[n>>2]|0)>>>0>12){Tx((c[f+164>>2]|0)+(c[f+168>>2]|0)|0,(c[m>>2]|0)+12|0,(c[n>>2]|0)-12|0)|0;y=f+168|0;c[y>>2]=(c[y>>2]|0)+((c[n>>2]|0)-12)}}else{Tx((c[f+164>>2]|0)+(c[f+168>>2]|0)|0,c[m>>2]|0,c[n>>2]|0)|0;y=f+168|0;c[y>>2]=(c[y>>2]|0)+(c[n>>2]|0)}c[f+1444>>2]=0;c[l>>2]=0;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}if((c[o>>2]|0)==0?(c[f+1440>>2]|0)==259:0){if(((c[f+168>>2]|0)+(c[n>>2]|0)|0)>>>0>2097152){c[l>>2]=-2147483643;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}if(!(c[f+1444>>2]|0)){if((c[n>>2]|0)>>>0>12){Tx((c[f+164>>2]|0)+(c[f+168>>2]|0)|0,(c[m>>2]|0)+12|0,(c[n>>2]|0)-12|0)|0;y=f+168|0;c[y>>2]=(c[y>>2]|0)+((c[n>>2]|0)-12)}}else{Tx((c[f+164>>2]|0)+(c[f+168>>2]|0)|0,c[m>>2]|0,c[n>>2]|0)|0;y=f+168|0;c[y>>2]=(c[y>>2]|0)+(c[n>>2]|0)}c[f+1444>>2]=0;c[l>>2]=0;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}do if((c[f+1440>>2]|0)!=4097){if((c[f+1440>>2]|0)==13)if(((c[f+168>>2]|0)+(c[n>>2]|0)|0)>>>0>2097152){c[l>>2]=-2147483643;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}else{if((c[n>>2]|0)>>>0<=12)break;Tx((c[f+164>>2]|0)+(c[f+168>>2]|0)|0,(c[m>>2]|0)+12|0,(c[n>>2]|0)-12|0)|0;y=f+168|0;c[y>>2]=(c[y>>2]|0)+((c[n>>2]|0)-12);break}if((c[f+1440>>2]|0)==258)if(((c[f+168>>2]|0)+(c[n>>2]|0)|0)>>>0>2097152){c[l>>2]=-2147483643;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}else{if((c[n>>2]|0)>>>0<=12)break;Tx((c[f+164>>2]|0)+(c[f+168>>2]|0)|0,(c[m>>2]|0)+12|0,(c[n>>2]|0)-12|0)|0;y=f+168|0;c[y>>2]=(c[y>>2]|0)+((c[n>>2]|0)-12);break}if((c[f+1440>>2]|0)==259)if(((c[f+168>>2]|0)+(c[n>>2]|0)|0)>>>0>2097152){c[l>>2]=-2147483643;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}else{if((c[n>>2]|0)>>>0<=12)break;Tx((c[f+164>>2]|0)+(c[f+168>>2]|0)|0,(c[m>>2]|0)+12|0,(c[n>>2]|0)-12|0)|0;y=f+168|0;c[y>>2]=(c[y>>2]|0)+((c[n>>2]|0)-12);break}}else{if(((c[f+168>>2]|0)+(c[n>>2]|0)|0)>>>0<=2097152){Tx((c[f+164>>2]|0)+(c[f+168>>2]|0)|0,c[m>>2]|0,c[n>>2]|0)|0;y=f+168|0;c[y>>2]=(c[y>>2]|0)+(c[n>>2]|0);break}c[l>>2]=-2147483643;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}while(0);c[f+1444>>2]=1;c[m>>2]=(c[m>>2]|0)+4;c[n>>2]=(c[n>>2]|0)-4;if((c[n>>2]|0)>>>0<(c[r>>2]|0)>>>0){c[l>>2]=-2147483644;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}do switch(c[s>>2]|0){case 2:case 1:{c[f+12>>2]=5;c[f+12+8>>2]=-1;c[f+12+12>>2]=c[p>>2];g[f+12+60>>2]=40.0;c[l>>2]=xo(f,c[m>>2]|0,c[n>>2]|0,f+12|0)|0;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}case 15:case 512:case 9:case 12:case 2049:case 11:case 8:case 7:case 5:case 4:case 3:{c[f+12>>2]=5;c[f+12+8>>2]=-1;c[f+12+12>>2]=c[p>>2];g[f+12+60>>2]=40.0;y=c[f+4>>2]|0;c[l>>2]=pb[c[(c[y>>2]|0)+28>>2]&31](y,(c[m>>2]|0)+-4|0,(c[r>>2]|0)+4|0,f+12|0)|0;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}case 260:{if(c[f+168>>2]|0){if((c[n>>2]|0)>>>0>12){Tx((c[f+164>>2]|0)+(c[f+168>>2]|0)|0,(c[m>>2]|0)+8|0,(c[n>>2]|0)-8|0)|0;y=f+168|0;c[y>>2]=(c[y>>2]|0)+((c[n>>2]|0)-8)}}else{Tx((c[f+164>>2]|0)+(c[f+168>>2]|0)|0,(c[m>>2]|0)+-4|0,(c[n>>2]|0)+4|0)|0;y=f+168|0;c[y>>2]=(c[y>>2]|0)+((c[n>>2]|0)+4)}if(c[o>>2]|0){c[f+12>>2]=5;c[f+12+8>>2]=-1;c[f+12+12>>2]=c[p>>2];g[f+12+60>>2]=40.0;c[t>>2]=(((c[f+168>>2]|0)-4|0)>>>0)/4|0;a[(c[f+164>>2]|0)+2>>0]=(c[t>>2]&65280)>>>8;a[(c[f+164>>2]|0)+3>>0]=c[t>>2];y=c[f+4>>2]|0;c[u>>2]=pb[c[(c[y>>2]|0)+28>>2]&31](y,c[f+164>>2]|0,c[f+168>>2]|0,f+12|0)|0;c[f+168>>2]=0;c[l>>2]=c[u>>2];c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}else{c[l>>2]=0;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}}case 4097:{c[f+12>>2]=5;c[f+12+8>>2]=-1;c[f+12+12>>2]=c[p>>2];g[f+12+60>>2]=40.0;if((c[o>>2]|0)!=1)jq(20857,v);y=c[f+4>>2]|0;c[u>>2]=pb[c[(c[y>>2]|0)+28>>2]&31](y,c[f+164>>2]|0,c[f+168>>2]|0,f+12|0)|0;c[f+168>>2]=0;c[l>>2]=c[u>>2];c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}case 13:{c[f+12>>2]=5;c[f+12+8>>2]=-1;c[f+12+12>>2]=c[p>>2];g[f+12+60>>2]=40.0;c[t>>2]=(((c[f+168>>2]|0)-4|0)>>>0)/4|0;a[(c[f+164>>2]|0)+2>>0]=(c[t>>2]&65280)>>>8;a[(c[f+164>>2]|0)+3>>0]=c[t>>2];y=c[f+4>>2]|0;c[u>>2]=pb[c[(c[y>>2]|0)+28>>2]&31](y,c[f+164>>2]|0,c[f+168>>2]|0,f+12|0)|0;c[f+168>>2]=0;c[l>>2]=c[u>>2];c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}case 4096:{a:do switch(((d[c[m>>2]>>0]|0)<<8)+(d[(c[m>>2]|0)+1>>0]|0)|0){case 1:{if(((c[r>>2]|0)-4|0)>>>0>1024){c[l>>2]=-2147483643;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}c[f+1412>>2]=(((c[r>>2]|0)-4|0)>>>0)/2|0;c[t>>2]=0;while(1){if((c[t>>2]|0)>>>0>=(c[f+1412>>2]|0)>>>0)break;y=((Fo(a[(c[m>>2]|0)+(4+(c[t>>2]<<1))>>0]|0)|0)&255)<<4;y=y+((Fo(a[(c[m>>2]|0)+(4+(c[t>>2]<<1)+1)>>0]|0)|0)&255)&255;a[f+388+(c[t>>2]|0)>>0]=y;c[t>>2]=(c[t>>2]|0)+1}c[q>>2]=5;break}case 2:{if(((c[r>>2]|0)-4|0)>>>0<=1024){Tx(f+388|0,(c[m>>2]|0)+4|0,(c[r>>2]|0)-4|0)|0;c[f+1412>>2]=(c[r>>2]|0)-4;break a}c[l>>2]=-2147483643;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}default:{}}while(0);c[l>>2]=0;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}case 4098:{c[f+12>>2]=5;c[f+12+8>>2]=-1;c[f+12+12>>2]=c[p>>2];g[f+12+60>>2]=40.0;y=c[f+4>>2]|0;c[l>>2]=pb[c[(c[y>>2]|0)+28>>2]&31](y,(c[m>>2]|0)+-4|0,(c[r>>2]|0)+4|0,f+12|0)|0;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}case 4100:{c[f+12>>2]=5;c[f+12+8>>2]=-1;c[f+12+12>>2]=c[p>>2];g[f+12+60>>2]=40.0;y=c[f+4>>2]|0;c[l>>2]=pb[c[(c[y>>2]|0)+28>>2]&31](y,(c[m>>2]|0)+-4|0,(c[r>>2]|0)+4|0,f+12|0)|0;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}case 257:{c[f+12>>2]=5;c[f+12+8>>2]=-1;c[f+12+12>>2]=c[p>>2];g[f+12+60>>2]=40.0;y=c[f+4>>2]|0;c[l>>2]=pb[c[(c[y>>2]|0)+28>>2]&31](y,(c[m>>2]|0)+-4|0,(c[r>>2]|0)+4|0,f+12|0)|0;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}case 258:{c[f+12>>2]=5;c[f+12+8>>2]=-1;c[f+12+12>>2]=c[p>>2];g[f+12+60>>2]=40.0;c[t>>2]=(((c[f+168>>2]|0)-4|0)>>>0)/4|0;a[(c[f+164>>2]|0)+2>>0]=(c[t>>2]&65280)>>>8;a[(c[f+164>>2]|0)+3>>0]=c[t>>2];y=c[f+4>>2]|0;c[u>>2]=pb[c[(c[y>>2]|0)+28>>2]&31](y,c[f+164>>2]|0,c[f+168>>2]|0,f+12|0)|0;c[f+168>>2]=0;c[l>>2]=c[u>>2];c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}case 259:{c[f+12>>2]=5;c[f+12+8>>2]=-1;c[f+12+12>>2]=c[p>>2];g[f+12+60>>2]=40.0;c[t>>2]=(((c[f+168>>2]|0)-4|0)>>>0)/4|0;a[(c[f+164>>2]|0)+2>>0]=(c[t>>2]&65280)>>>8;a[(c[f+164>>2]|0)+3>>0]=c[t>>2];y=c[f+4>>2]|0;c[u>>2]=pb[c[(c[y>>2]|0)+28>>2]&31](y,c[f+164>>2]|0,c[f+168>>2]|0,f+12|0)|0;c[f+168>>2]=0;c[l>>2]=c[u>>2];c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}default:{c[l>>2]=-2147483647;c[q>>2]=1;y=c[l>>2]|0;i=x;return y|0}}while(0);return 0}function xo(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;h=m+20|0;n=m+16|0;j=m+12|0;k=m+8|0;g=m+24|0;l=m;c[n>>2]=a;c[j>>2]=b;c[k>>2]=e;c[m+4>>2]=f;b=c[n>>2]|0;if((c[k>>2]|0)>>>0<1){c[h>>2]=-2147483644;n=c[h>>2]|0;i=m;return n|0}c[g>>2]=0;a:while(1){if(!(c[k>>2]|0)){e=20;break}switch(d[c[j>>2]>>0]|0|0){case 64:{c[g>>2]=yo(b,c[j>>2]|0,c[k>>2]|0)|0;break}case 65:{c[g>>2]=zo(b,c[j>>2]|0,c[k>>2]|0)|0;break}case 66:{c[g>>2]=Ao(b,c[j>>2]|0,c[k>>2]|0)|0;break}case 67:{c[g>>2]=Bo(b,c[j>>2]|0,c[k>>2]|0)|0;break}case 68:{c[g>>2]=Co(b,c[j>>2]|0,c[k>>2]|0)|0;break}case 69:{c[g>>2]=Do(b,c[j>>2]|0,c[k>>2]|0)|0;break}default:{if((c[k>>2]|0)>>>0<12)c[g>>2]=Eo(b,c[j>>2]|0,c[k>>2]|0)|0;if(c[b+4>>2]|0){e=15;break a}c[g>>2]=Eo(b,c[j>>2]|0,c[k>>2]|0)|0}}if((c[g>>2]|0)<0){e=18;break}c[j>>2]=(c[j>>2]|0)+(c[g>>2]|0);c[k>>2]=(c[k>>2]|0)-(c[g>>2]|0)}if((e|0)==15){n=c[b+4>>2]|0;c[h>>2]=pb[c[(c[n>>2]|0)+28>>2]&31](n,(c[j>>2]|0)+-4|0,(c[k>>2]|0)+4|0,b+12|0)|0;c[l>>2]=1}else if((e|0)==18){c[h>>2]=-2147483644;c[l>>2]=1}else if((e|0)==20){c[h>>2]=0;c[l>>2]=1}n=c[h>>2]|0;i=m;return n|0}function yo(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;m=n;f=n+24|0;o=n+16|0;g=n+12|0;h=n+8|0;l=n+28|0;j=n+4|0;k=n+20|0;c[o>>2]=a;c[g>>2]=b;c[h>>2]=e;e=c[o>>2]|0;if((c[h>>2]|0)>>>0<2){c[f>>2]=-1;o=c[f>>2]|0;i=n;return o|0}c[l>>2]=2+(d[(c[g>>2]|0)+1>>0]|0);if((c[h>>2]|0)>>>0<(c[l>>2]|0)>>>0){c[f>>2]=-1;c[j>>2]=1}else{c[k>>2]=((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0);if((c[k>>2]|0)!=18507)jq(20810,m);c[e+188+8+16>>2]=(d[(c[g>>2]|0)+6>>0]|0)+2e3;c[e+188+8+16+4>>2]=(d[(c[g>>2]|0)+7>>0]|0)>>4;c[e+188+8+16+8>>2]=((d[(c[g>>2]|0)+7>>0]|0)<<1)+((d[(c[g>>2]|0)+8>>0]|0)>>7)&31;c[e+188+8+16+12>>2]=(d[(c[g>>2]|0)+8>>0]|0)>>2&31;c[e+188+8+16+16>>2]=((d[(c[g>>2]|0)+8>>0]|0)<<4)+((d[(c[g>>2]|0)+9>>0]|0)>>4)&63;c[e+188+8+16+20>>2]=((d[(c[g>>2]|0)+9>>0]|0)<<2)+((d[(c[g>>2]|0)+10>>0]|0)>>6)&63;c[e+188+8+16+24>>2]=((d[(c[g>>2]|0)+10>>0]|0)<<5)+((d[(c[g>>2]|0)+11>>0]|0)>>3)&1023;c[e+188+8>>2]=(d[(c[g>>2]|0)+11>>0]|0)&7;c[e+188+8+4>>2]=((d[(c[g>>2]|0)+4>>0]|0)<<8)+(d[(c[g>>2]|0)+5>>0]|0);c[e+188+8+8>>2]=((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0);c[e+188+8+12>>2]=d[(c[g>>2]|0)+12>>0];c[e+384>>2]=1;c[e+1416>>2]=1;c[f>>2]=c[l>>2];c[j>>2]=1}o=c[f>>2]|0;i=n;return o|0}function zo(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m;f=m+20|0;g=m+12|0;h=m+8|0;k=m+24|0;j=m+4|0;c[m+16>>2]=a;c[g>>2]=b;c[h>>2]=e;if((c[h>>2]|0)>>>0<2){c[f>>2]=-1;l=c[f>>2]|0;i=m;return l|0}c[k>>2]=2+(d[(c[g>>2]|0)+1>>0]|0);if((c[h>>2]|0)>>>0<(c[k>>2]|0)>>>0){c[f>>2]=-1;c[j>>2]=1}else{if((((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0)|0)!=18507)jq(20810,l);c[f>>2]=c[k>>2];c[j>>2]=1}l=c[f>>2]|0;i=m;return l|0}function Ao(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;f=m+16|0;n=m+12|0;h=m+8|0;j=m+4|0;l=m+20|0;k=m;c[n>>2]=a;c[h>>2]=b;c[j>>2]=e;e=c[n>>2]|0;if((c[j>>2]|0)>>>0<2){c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}c[l>>2]=2+(d[(c[h>>2]|0)+1>>0]|0);if((c[j>>2]|0)>>>0<(c[l>>2]|0)>>>0){c[f>>2]=-1;c[k>>2]=1}else{c[e+188+52+4>>2]=((d[(c[h>>2]|0)+6>>0]|0)<<8)+(d[(c[h>>2]|0)+7>>0]|0);c[e+1424>>2]=((d[(c[h>>2]|0)+6>>0]|0)<<8)+(d[(c[h>>2]|0)+7>>0]|0);c[e+188+52+8>>2]=((d[(c[h>>2]|0)+8>>0]|0)<<8)+(d[(c[h>>2]|0)+9>>0]|0);c[e+1428>>2]=((d[(c[h>>2]|0)+8>>0]|0)<<8)+(d[(c[h>>2]|0)+9>>0]|0);c[e+188+52+36>>2]=((d[(c[h>>2]|0)+10>>0]|0)&16)>>4;c[e+188+52+32>>2]=(d[(c[h>>2]|0)+10>>0]|0)>>7;c[e+1432>>2]=(d[(c[h>>2]|0)+10>>0]|0)>>7;c[e+188+52+28>>2]=(d[(c[h>>2]|0)+10>>0]|0)>>5&3;c[e+188+52+40>>2]=(d[(c[h>>2]|0)+10>>0]|0)>>3&1;c[e+188+52+44>>2]=(d[(c[h>>2]|0)+11>>0]|0)&3;g[e+188+52+48>>2]=+(((d[(c[h>>2]|0)+13>>0]|0)<<15)+((d[(c[h>>2]|0)+14>>0]|0)<<7)+((d[(c[h>>2]|0)+15>>0]|0)>>1)|0)/90.0;g[e+1436>>2]=+g[e+188+52+48>>2];c[e+1420>>2]=1;c[f>>2]=c[l>>2];c[k>>2]=1}n=c[f>>2]|0;i=m;return n|0}function Bo(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+48|0;f=p+32|0;q=p+24|0;g=p+16|0;h=p+8|0;k=p+36|0;j=p;n=p+28|0;l=p+20|0;o=p+12|0;m=p+4|0;c[q>>2]=a;c[g>>2]=b;c[h>>2]=e;e=c[q>>2]|0;if((c[h>>2]|0)>>>0<2){c[f>>2]=-1;q=c[f>>2]|0;i=p;return q|0}c[k>>2]=2+(d[(c[g>>2]|0)+1>>0]|0);if((c[h>>2]|0)>>>0<(c[k>>2]|0)>>>0){c[f>>2]=-1;c[j>>2]=1}else{c[n>>2]=((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0);c[l>>2]=(d[(c[g>>2]|0)+4>>0]|0)&1;c[o>>2]=((d[(c[g>>2]|0)+5>>0]|0)<<14)+((d[(c[g>>2]|0)+6>>0]|0)<<6)+((d[(c[g>>2]|0)+7>>0]|0)>>2);c[m>>2]=((d[(c[g>>2]|0)+8>>0]|0)<<14)+((d[(c[g>>2]|0)+9>>0]|0)<<6)+((d[(c[g>>2]|0)+10>>0]|0)>>2);c[e+12+92>>2]=1;c[e+12+92+12>>2]=(c[l>>2]|0)+1;c[e+12+92+16>>2]=c[o>>2];c[e+12+92+20>>2]=c[m>>2];c[e+12+92+24>>2]=c[n>>2];c[f>>2]=c[k>>2];c[j>>2]=1}q=c[f>>2]|0;i=p;return q|0}function Co(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l+16|0;m=l+12|0;g=l+8|0;h=l+4|0;k=l+20|0;j=l;c[m>>2]=a;c[g>>2]=b;c[h>>2]=e;e=c[m>>2]|0;if((c[h>>2]|0)>>>0<2){c[f>>2]=-1;m=c[f>>2]|0;i=l;return m|0}c[k>>2]=2+(d[(c[g>>2]|0)+1>>0]|0);if((c[h>>2]|0)>>>0<(c[k>>2]|0)>>>0){c[f>>2]=-1;c[j>>2]=1}else{c[e+4704>>2]=1;c[e+4704+4>>2]=((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0);c[e+4704+8>>2]=(((d[(c[g>>2]|0)+4>>0]|0)&127)<<7)+((d[(c[g>>2]|0)+5>>0]|0)>>1);c[e+4704+12>>2]=((d[(c[g>>2]|0)+6>>0]|0)<<8)+(d[(c[g>>2]|0)+7>>0]|0);c[e+4704+16>>2]=((d[(c[g>>2]|0)+8>>0]|0)<<8)+(d[(c[g>>2]|0)+9>>0]|0);c[f>>2]=c[k>>2];c[j>>2]=1}m=c[f>>2]|0;i=l;return m|0}function Do(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l+16|0;m=l+12|0;g=l+8|0;h=l+4|0;k=l+20|0;j=l;c[m>>2]=a;c[g>>2]=b;c[h>>2]=e;e=c[m>>2]|0;if((c[h>>2]|0)>>>0<2){c[f>>2]=-1;m=c[f>>2]|0;i=l;return m|0}c[k>>2]=2+(d[(c[g>>2]|0)+1>>0]|0);if((c[h>>2]|0)>>>0<(c[k>>2]|0)>>>0){c[f>>2]=-1;c[j>>2]=1}else{c[e+12+92+8>>2]=d[(c[g>>2]|0)+3>>0];c[f>>2]=c[k>>2];c[j>>2]=1}m=c[f>>2]|0;i=l;return m|0}function Eo(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;f=l+16|0;g=l+8|0;h=l+4|0;k=l+20|0;j=l;c[l+12>>2]=a;c[g>>2]=b;c[h>>2]=e;if((c[h>>2]|0)>>>0<2){c[f>>2]=-1;a=c[f>>2]|0;i=l;return a|0}c[k>>2]=2+(d[(c[g>>2]|0)+1>>0]|0);if((c[h>>2]|0)>>>0<(c[k>>2]|0)>>>0){c[f>>2]=-1;c[j>>2]=1}else{c[f>>2]=c[k>>2];c[j>>2]=1}a=c[f>>2]|0;i=l;return a|0}function Fo(b){b=b|0;var c=0,d=0,e=0;e=i;i=i+16|0;c=e+1|0;d=e;a[d>>0]=b;if((a[d>>0]|0)>=48?(a[d>>0]|0)<=57:0){a[c>>0]=(a[d>>0]|0)-48;b=a[c>>0]|0;i=e;return b|0}if((a[d>>0]|0)>=65?(a[d>>0]|0)<=70:0){a[c>>0]=(a[d>>0]|0)-55;b=a[c>>0]|0;i=e;return b|0}if((a[d>>0]|0)>=97?(a[d>>0]|0)<=102:0){a[c>>0]=(a[d>>0]|0)-87;b=a[c>>0]|0;i=e;return b|0}a[c>>0]=-1;b=a[c>>0]|0;i=e;return b|0}function Go(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;b=c[f>>2]|0;switch(c[e>>2]|0){case 0:{c[b+12+92+4>>2]=28944;break}case 14:{c[b+12+92+4>>2]=8192;break}case 8:{c[b+12+92+4>>2]=28945;break}case 98:{c[b+12+92+4>>2]=29217;break}case 102:{c[b+12+92+4>>2]=29282;break}case 103:{c[b+12+92+4>>2]=29280;break}case 104:{c[b+12+92+4>>2]=8193;break}case 11:{c[b+12+92+4>>2]=28673;break}default:{}}i=d;return 0}function Ho(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+8>>2]=c[f>>2];i=d;return 0}function Io(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;do if(c[e>>2]|0)if(2==(c[b+8>>2]|0)){c[d>>2]=-2147483642;break}else{c[c[e>>2]>>2]=-1;c[d>>2]=-2147483647;break}else c[d>>2]=-2147483645;while(0);i=f;return c[d>>2]|0}function Jo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;f=h+12|0;j=h+8|0;d=h+4|0;e=h+16|0;g=h;c[j>>2]=a;c[d>>2]=b;b=c[j>>2]|0;Tx(b+1452|0,c[d>>2]|0,3184)|0;c[b+4636>>2]=1;c[b+4756>>2]=c[(c[d>>2]|0)+3180>>2];c[e>>2]=0;while(1){if((c[e>>2]|0)>=3){b=3;break}if(1==(c[(c[d>>2]|0)+((c[e>>2]|0)*1060|0)>>2]|0)){if((c[(c[d>>2]|0)+((c[e>>2]|0)*1060|0)+32>>2]|0)>>>0>1024){b=6;break}Tx(b+388|0,(c[d>>2]|0)+((c[e>>2]|0)*1060|0)+36|0,c[(c[d>>2]|0)+((c[e>>2]|0)*1060|0)+32>>2]|0)|0;c[b+1412>>2]=c[(c[d>>2]|0)+((c[e>>2]|0)*1060|0)+32>>2];if((c[(c[d>>2]|0)+((c[e>>2]|0)*1060|0)+24>>2]|0)==130){c[b+4728>>2]=1;c[b+4760>>2]=1;c[b+4636>>2]=0}}c[e>>2]=(c[e>>2]|0)+1}if((b|0)==3)c[g>>2]=2;else if((b|0)==6){c[f>>2]=-2147483645;c[g>>2]=1}if(((c[g>>2]|0)+-2|0)>>>0>=1){j=c[f>>2]|0;i=h;return j|0}c[f>>2]=0;j=c[f>>2]|0;i=h;return j|0}function Ko(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=c[f>>2]|0;b=a+4648|0;e=c[e>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];c[b+16>>2]=c[e+16>>2];c[b+20>>2]=c[e+20>>2];c[b+24>>2]=c[e+24>>2];c[a+4644>>2]=1;i=d;return 0}function Lo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;k=l+16|0;m=l+12|0;g=l+8|0;h=l+4|0;j=l;c[m>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=f;e=c[m>>2]|0;if((c[g>>2]|0)!=1){if(c[g>>2]|0){c[k>>2]=-2147483647;m=c[k>>2]|0;i=l;return m|0}if(c[e+4688>>2]|0){d=c[e+4688>>2]|0;if(d|0)Jx(d);c[e+4688>>2]=0}}else{if(!(c[j>>2]|0)){c[k>>2]=-2147483647;m=c[k>>2]|0;i=l;return m|0}if((c[e+4688>>2]|0)==0?(c[e+4688>>2]=Ix(17)|0,(c[e+4688>>2]|0)==0):0){m=za(4)|0;c[m>>2]=-2147483646;Xa(m|0,152,0)}d=c[e+4688>>2]|0;f=d+17|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(f|0));Tx(c[e+4688>>2]|0,c[h>>2]|0,((c[j>>2]|0)>>>0)/8|0|0)|0;c[e+4696>>2]=1}c[k>>2]=0;m=c[k>>2]|0;i=l;return m|0}function Mo(d){d=d|0;var e=0,f=0,h=0;h=i;i=i+16|0;e=h;c[e>>2]=d;d=c[e>>2]|0;Ej(d);c[d>>2]=2852;c[d+4>>2]=0;c[d+8>>2]=2;Ox(d+12|0,0,152)|0;c[d+164>>2]=0;c[d+172>>2]=0;c[d+168>>2]=0;c[d+348>>2]=0;c[d+176>>2]=0;c[d+180>>2]=0;e=d+188|0;f=e+104|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));c[d+292>>2]=0;c[d+296>>2]=0;c[d+300>>2]=0;c[d+304>>2]=0;e=d+308|0;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));f=d+352|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;b[d+184>>1]=-1;c[d+384>>2]=0;Ox(d+388|0,0,1024)|0;c[d+1412>>2]=0;c[d+1416>>2]=0;c[d+1420>>2]=0;c[d+1424>>2]=0;c[d+1428>>2]=0;c[d+1432>>2]=0;g[d+1436>>2]=0.0;c[d+1440>>2]=0;c[d+1444>>2]=1;c[d+4680>>2]=0;c[d+4684>>2]=2;a[d+1448>>0]=0;f=d+4648|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[d+4644>>2]=0;c[d+4640>>2]=0;c[d+4676>>2]=0;c[d+4680>>2]=0;c[d+4684>>2]=2;c[d+4700>>2]=2;c[d+4688>>2]=0;c[d+4692>>2]=0;c[d+4696>>2]=0;c[d+4636>>2]=0;c[d+4724>>2]=0;c[d+4728>>2]=-1;f=d+4704|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;f=d+4732|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;Ox(d+1452|0,0,3184)|0;c[d+4748>>2]=0;c[d+4752>>2]=0;c[d+4756>>2]=0;c[d+4760>>2]=0;i=h;return}function No(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=2916;nb[c[(c[a>>2]|0)+28>>2]&127](a)|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;Vi(a);i=b;return}function Oo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;No(a);lx(a);i=b;return}function Po(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[a+164>>2]=Ix(2097152)|0;if(!(c[a+164>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}else{c[b>>2]=0;i=d;return c[b>>2]|0}return 0}function Qo(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;a=c[b>>2]|0;if(!(c[a+164>>2]|0)){i=d;return 0}b=c[a+164>>2]|0;if(b|0)Jx(b);c[a+164>>2]=0;i=d;return 0}function Ro(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+4>>2]=c[f>>2];i=d;return 0}function So(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;h=i;i=i+16|0;g=h+12|0;j=h+8|0;f=h+4|0;c[j>>2]=b;c[f>>2]=d;c[h>>2]=e;e=c[j>>2]|0;if(!(c[f>>2]|0)){c[g>>2]=-2147483645;j=c[g>>2]|0;i=h;return j|0}else{b=e+180|0;e=c[f>>2]|0;d=b+40|0;do{a[b>>0]=a[e>>0]|0;b=b+1|0;e=e+1|0}while((b|0)<(d|0));c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}return 0}function To(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+8|0;f=e;c[e+4>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0))c[d>>2]=-2147483645;else c[d>>2]=-2147483647;i=e;return c[d>>2]|0}function Uo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+8>>2]=2;a=Vo(a)|0;i=b;return a|0}function Vo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+168>>2]=0;c[a+172>>2]=0;c[a+176>>2]=0;c[a+228>>2]=0;c[a+232>>2]=0;c[a+236>>2]=0;c[a+220>>2]=0;i=b;return 0}function Wo(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l+16|0;m=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;e=c[m>>2]|0;if((c[e+8>>2]|0)==2){c[f>>2]=-2147483642;m=c[f>>2]|0;i=l;return m|0}if((c[h>>2]|0)==4){if((c[k>>2]|0)>>>0<48){c[f>>2]=-2147483645;m=c[f>>2]|0;i=l;return m|0}c[e+12+12>>2]=c[(c[j>>2]|0)+4>>2];if(!(+O(+(+g[(c[j>>2]|0)+8>>2]-0.0))<1.0000000474974513e-03)?!(+g[(c[j>>2]|0)+8>>2]>100.0):0)g[e+12+60>>2]=1.0e3/+g[(c[j>>2]|0)+8>>2];else g[e+12+60>>2]=40.0;c[e+12+8>>2]=c[c[j>>2]>>2];c[e+12+64>>2]=c[(c[j>>2]|0)+16>>2];c[e+12+64+4>>2]=c[(c[j>>2]|0)+16+4>>2];c[e+12+64+8>>2]=c[(c[j>>2]|0)+16+8>>2];c[e+12+64+12>>2]=c[(c[j>>2]|0)+16+12>>2];c[e+12+64+16>>2]=c[(c[j>>2]|0)+16+16>>2];c[e+12+64+20>>2]=c[(c[j>>2]|0)+16+20>>2];c[e+12+64+24>>2]=c[(c[j>>2]|0)+16+24>>2];c[e+220>>2]=1;c[f>>2]=0;m=c[f>>2]|0;i=l;return m|0}if((c[h>>2]|0)==1){if(!(c[e+220>>2]|0)){c[f>>2]=-2147483644;m=c[f>>2]|0;i=l;return m|0}c[e+220>>2]=0;if(((c[e+172>>2]|0)+(c[k>>2]|0)|0)>>>0>2097152){c[f>>2]=-2147483643;m=c[f>>2]|0;i=l;return m|0}else{Tx((c[e+164>>2]|0)+(c[e+172>>2]|0)|0,c[j>>2]|0,c[k>>2]|0)|0;m=e+172|0;c[m>>2]=(c[m>>2]|0)+(c[k>>2]|0);c[f>>2]=Xo(e)|0;m=c[f>>2]|0;i=l;return m|0}}if((c[h>>2]|0)==5)if((c[k>>2]|0)>>>0<32){c[f>>2]=-2147483645;m=c[f>>2]|0;i=l;return m|0}else{c[e+12+12>>2]=c[(c[j>>2]|0)+16>>2];c[e+224>>2]=1;c[f>>2]=0;m=c[f>>2]|0;i=l;return m|0}if((c[h>>2]|0)!=2){c[f>>2]=-2147483647;m=c[f>>2]|0;i=l;return m|0}if(!(c[e+224>>2]|0)){c[f>>2]=-2147483644;m=c[f>>2]|0;i=l;return m|0}c[e+224>>2]=0;if(((c[e+172>>2]|0)+(c[k>>2]|0)|0)>>>0>2097152){c[f>>2]=-2147483643;m=c[f>>2]|0;i=l;return m|0}else{Tx((c[e+164>>2]|0)+(c[e+172>>2]|0)|0,c[j>>2]|0,c[k>>2]|0)|0;m=e+172|0;c[m>>2]=(c[m>>2]|0)+(c[k>>2]|0);c[f>>2]=$o(e)|0;m=c[f>>2]|0;i=l;return m|0}return 0}function Xo(a){a=a|0;var b=0,d=0,f=0,g=0,h=0;g=i;i=i+16|0;b=g+8|0;h=g+4|0;f=g+12|0;d=g;c[h>>2]=a;a=c[h>>2]|0;if(256!=(e[a+180+10>>1]|0|0)){c[b>>2]=-2147483647;h=c[b>>2]|0;i=g;return h|0}c[f>>2]=0;if(256==(e[a+180+10>>1]|0|0))c[f>>2]=Yo(a,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0)|0;if(c[f>>2]|0){c[b>>2]=c[f>>2];c[d>>2]=1}else{c[a+12+24>>2]=c[a+228>>2];c[a+12+20>>2]=c[a+232>>2];c[a+12+16>>2]=c[a+236>>2];c[a+12+4>>2]=256;if(1==(c[a+12>>2]|0))c[a+176>>2]=1;if(1==(c[a+176>>2]|0)){h=c[a+4>>2]|0;pb[c[(c[h>>2]|0)+28>>2]&31](h,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0,a+12|0)|0}Ox(a+12|0,0,152)|0;c[a+172>>2]=0;c[a+168>>2]=0;c[b>>2]=0;c[d>>2]=1}h=c[b>>2]|0;i=g;return h|0}function Yo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+48|0;e=n+32|0;o=n+24|0;f=n+16|0;g=n+8|0;k=n+20|0;h=n;l=n+12|0;j=n+4|0;c[o>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[o>>2]|0;c[n+36>>2]=0;c[n+28>>2]=0;c[k>>2]=Zo(d,c[f>>2]|0,c[g>>2]|0)|0;if((c[k>>2]|0)<0){c[e>>2]=-2147483644;c[h>>2]=1;o=c[e>>2]|0;i=n;return o|0}c[f>>2]=(c[f>>2]|0)+(c[k>>2]|0);c[g>>2]=(c[g>>2]|0)-(c[k>>2]|0);while(1){if((c[g>>2]|0)>>>0<4)break;c[l>>2]=Zo(d,(c[f>>2]|0)+3|0,(c[g>>2]|0)-3|0)|0;if((c[l>>2]|0)==-1){c[j>>2]=_o(d,c[f>>2]|0,c[g>>2]|0)|0;if((c[j>>2]|0)==5|(c[j>>2]|0)==1){c[e>>2]=0;c[h>>2]=1}else{c[e>>2]=-2147483644;c[h>>2]=1}}else{c[j>>2]=_o(d,c[f>>2]|0,3+(c[l>>2]|0)|0)|0;c[f>>2]=(c[f>>2]|0)+(3+(c[l>>2]|0));c[g>>2]=(c[g>>2]|0)-(3+(c[l>>2]|0));if((c[j>>2]|0)==5|(c[j>>2]|0)==1){c[e>>2]=0;c[h>>2]=1}else c[h>>2]=4;if((c[h>>2]|0)==4)c[h>>2]=0}if(c[h>>2]|0){m=17;break}}if((m|0)==17){o=c[e>>2]|0;i=n;return o|0}c[e>>2]=-2147483644;c[h>>2]=1;o=c[e>>2]|0;i=n;return o|0}function Zo(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+16|0;f=l+8|0;g=l+4|0;k=l+20|0;j=l;c[l+12>>2]=a;c[f>>2]=b;c[g>>2]=e;if((c[g>>2]|0)>>>0<3){c[h>>2]=-1;k=c[h>>2]|0;i=l;return k|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=((c[g>>2]|0)-2|0)>>>0){f=5;break}if(((d[(c[f>>2]|0)+(c[k>>2]|0)>>0]|0|0)==0?(d[(c[f>>2]|0)+((c[k>>2]|0)+1)>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+2)>>0]|0|0)==1:0){f=9;break}c[k>>2]=(c[k>>2]|0)+1}if((f|0)==5)c[j>>2]=2;else if((f|0)==9){c[h>>2]=c[k>>2];c[j>>2]=1}if(((c[j>>2]|0)+-2|0)>>>0>=1){k=c[h>>2]|0;i=l;return k|0}c[h>>2]=-1;k=c[h>>2]|0;i=l;return k|0}function _o(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;l=k+20|0;f=k+4|0;g=k;h=k+24|0;j=k+8|0;c[l>>2]=a;c[f>>2]=b;c[g>>2]=e;e=c[l>>2]|0;c[h>>2]=(d[(c[f>>2]|0)+3>>0]|0)&31;switch(c[h>>2]|0){case 7:{c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;if((1==(qq(j,c[f>>2]|0,c[g>>2]|0)|0)?c[j>>2]|0:0)?c[j+4>>2]|0:0){c[e+228>>2]=c[j+8>>2];c[e+232>>2]=c[j+4>>2];c[e+236>>2]=c[j>>2]}l=c[h>>2]|0;i=k;return l|0}case 1:case 5:{c[j>>2]=wq(c[f>>2]|0,c[g>>2]|0,3)|0;switch(c[j>>2]|0){case 7:case 2:{c[e+12>>2]=1;break}case 5:case 0:{c[e+12>>2]=2;break}case 6:case 1:{c[e+12>>2]=3;break}default:{}}l=c[h>>2]|0;i=k;return l|0}default:{l=c[h>>2]|0;i=k;return l|0}}return 0}function $o(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+12>>2]=4;if(1==(c[a+176>>2]|0)){d=c[a+4>>2]|0;pb[c[(c[d>>2]|0)+28>>2]&31](d,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0,a+12|0)|0}Ox(a+12|0,0,152)|0;c[a+172>>2]=0;c[a+168>>2]=0;i=b;return 0}function ap(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+8>>2]=c[f>>2];i=d;return 0}function bp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;do if(c[e>>2]|0)if(2==(c[b+8>>2]|0)){c[d>>2]=-2147483642;break}else{c[c[e>>2]>>2]=-1;c[d>>2]=-2147483647;break}else c[d>>2]=-2147483645;while(0);i=f;return c[d>>2]|0}function cp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;a=c[b>>2]|0;Ej(a);c[a>>2]=2916;c[a+4>>2]=0;c[a+8>>2]=2;Ox(a+12|0,0,152)|0;c[a+164>>2]=0;c[a+168>>2]=0;c[a+172>>2]=0;c[a+176>>2]=0;b=a+180|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));c[a+228>>2]=0;c[a+232>>2]=0;c[a+236>>2]=0;c[a+220>>2]=0;c[a+224>>2]=0;i=e;return}function dp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=2980;nb[c[(c[a>>2]|0)+28>>2]&127](a)|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;Vi(a);i=b;return}function ep(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;dp(a);lx(a);i=b;return}function fp(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[a+164>>2]=Ix(3145728)|0;if(!(c[a+164>>2]|0)){nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[b>>2]=-2147483646;e=c[b>>2]|0;i=d;return e|0}c[a+176>>2]=Ix(3145728)|0;if(!(c[a+176>>2]|0)){nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[b>>2]=-2147483646;e=c[b>>2]|0;i=d;return e|0}else{c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}return 0}function gp(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;b=c[b>>2]|0;if(c[b+164>>2]|0){a=c[b+164>>2]|0;if(a|0)Jx(a);c[b+164>>2]=0}if(!(c[b+176>>2]|0)){i=d;return 0}a=c[b+176>>2]|0;if(a|0)Jx(a);c[b+176>>2]=0;i=d;return 0}function hp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+4>>2]=c[f>>2];i=d;return 0}function ip(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;h=k+12|0;f=k+8|0;g=k+4|0;j=k;c[f>>2]=b;c[g>>2]=d;c[j>>2]=e;b=c[f>>2]|0;if(!(c[g>>2]|0)){c[h>>2]=-2147483645;j=c[h>>2]|0;i=k;return j|0}else{f=b+192|0;e=c[g>>2]|0;d=f+40|0;do{a[f>>0]=a[e>>0]|0;f=f+1|0;e=e+1|0}while((f|0)<(d|0));c[b+968>>2]=c[j>>2];c[h>>2]=0;j=c[h>>2]|0;i=k;return j|0}return 0}function jp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;g=c[d>>2]|0;i=f;return g|0}nb[c[(c[b>>2]|0)+28>>2]&127](b)|0;c[b+184>>2]=zh(c[e>>2]|0,1)|0;if(!(c[b+184>>2]|0)){nb[c[(c[b>>2]|0)+28>>2]&127](b)|0;c[d>>2]=-2147483641;g=c[d>>2]|0;i=f;return g|0}e=Dh(c[b+184>>2]|0)|0;g=b+976|0;c[g>>2]=e;c[g+4>>2]=D;c[b+188>>2]=Kh(0,65,b)|0;if(!(c[b+188>>2]|0)){nb[c[(c[b>>2]|0)+28>>2]&127](b)|0;c[d>>2]=-2147483646;g=c[d>>2]|0;i=f;return g|0}else{c[b+996>>2]=1;c[b+8>>2]=0;c[d>>2]=0;g=c[d>>2]|0;i=f;return g|0}return 0}function kp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;d=e+4|0;c[b>>2]=a;if(!(c[b>>2]|0)){i=e;return 0}c[d>>2]=c[b>>2];lp(c[d>>2]|0)|0;i=e;return 0}function lp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;b=g+8|0;h=g+4|0;e=g+12|0;d=g;c[h>>2]=a;a=c[h>>2]|0;while(1){if((c[a+8>>2]|0)==2){f=3;break}if(!(c[a+184>>2]|0)){f=6;break}if(!(c[a+164>>2]|0)){f=6;break}c[e>>2]=Ah(c[a+184>>2]|0,3145728-(c[a+172>>2]|0)|0,(c[a+164>>2]|0)+(c[a+172>>2]|0)|0)|0;if((c[e>>2]|0)==0?3145728-(c[a+172>>2]|0)|0:0)f=10;else if(c[a+1048>>2]|0)f=10;else{h=a+172|0;c[h>>2]=(c[h>>2]|0)+(c[e>>2]|0);mp(a)|0;h=a+984|0;j=h;j=Px(c[j>>2]|0,c[j+4>>2]|0,c[e>>2]|0,0)|0;c[h>>2]=j;c[h+4>>2]=D;h=a+976|0;if(0==(c[h>>2]|0)?0==(c[h+4>>2]|0):0)c[a+992>>2]=100;else{h=a+984|0;h=Zx(c[h>>2]|0,c[h+4>>2]|0,100,0)|0;j=a+976|0;j=Xx(h|0,D|0,c[j>>2]|0,c[j+4>>2]|0)|0;c[a+992>>2]=j}c[d>>2]=0}if((f|0)==10){f=0;La(1e4)|0;c[a+992>>2]=100;c[d>>2]=3}if((c[d>>2]|0)>>>0>=1){f=16;break}}if((f|0)==3){c[b>>2]=-2147483642;j=c[b>>2]|0;i=g;return j|0}else if((f|0)==6){c[b>>2]=-2147483641;j=c[b>>2]|0;i=g;return j|0}else if((f|0)==16){c[b>>2]=0;j=c[b>>2]|0;i=g;return j|0}return 0}function mp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;b=h+4|0;g=h+12|0;f=h;c[b>>2]=a;b=c[b>>2]|0;if(!(c[b+164>>2]|0)){c[e>>2]=-2147483645;g=c[e>>2]|0;i=h;return g|0}c[g>>2]=0;a:while(1){if(!((c[b+1e3>>2]|0)!=0^1)){d=11;break}c[g>>2]=np(b,(c[b+164>>2]|0)+(c[b+168>>2]|0)|0,(c[b+172>>2]|0)-(c[b+168>>2]|0)|0)|0;switch(c[g>>2]|0){case -1:{d=6;break a}case -2:{pp(b,1179011410)|0;continue a}default:{}}a=c[g>>2]|0;if((c[g>>2]|0)<0){d=9;break}d=b+168|0;c[d>>2]=(c[d>>2]|0)+a;c[b+1e3>>2]=1}do if((d|0)==6){op(b)|0;c[e>>2]=-1;c[f>>2]=1}else if((d|0)==9){c[e>>2]=a;c[f>>2]=1}else if((d|0)==11){b:while(1){if(!((c[b+1004>>2]|0)!=0^1)){d=18;break}c[g>>2]=qp(b,(c[b+164>>2]|0)+(c[b+168>>2]|0)|0,(c[b+172>>2]|0)-(c[b+168>>2]|0)|0)|0;switch(c[g>>2]|0){case -1:{d=13;break b}case -2:{pp(b,1414744396)|0;d=11;continue b}default:{}}a=c[g>>2]|0;if((c[g>>2]|0)<0){d=16;break}d=b+168|0;c[d>>2]=(c[d>>2]|0)+a;c[b+1004>>2]=1;d=11}if((d|0)==13){op(b)|0;c[e>>2]=-1;c[f>>2]=1;break}else if((d|0)==16){c[e>>2]=a;c[f>>2]=1;break}else if((d|0)==18){c:while(1){if((c[b+992>>2]|0)==100){d=27;break}if(c[b+1048>>2]|0){d=27;break}c[g>>2]=Ap(b,(c[b+164>>2]|0)+(c[b+168>>2]|0)|0,(c[b+172>>2]|0)-(c[b+168>>2]|0)|0)|0;switch(c[g>>2]|0){case -1:{d=21;break c}case -3:{d=b+168|0;c[d>>2]=(c[d>>2]|0)+4;pp(b,1414744396)|0;d=18;continue c}case -2:{Dp(b,(c[b+164>>2]|0)+(c[b+168>>2]|0)|0,(c[b+172>>2]|0)-(c[b+168>>2]|0)|0)|0;d=18;continue c}default:{a=c[g>>2]|0;if((c[g>>2]|0)<0){d=25;break c}d=b+168|0;c[d>>2]=(c[d>>2]|0)+a;d=b+1016|0;c[d>>2]=(c[d>>2]|0)+1;d=18;continue c}}}if((d|0)==21){op(b)|0;c[e>>2]=-1;c[f>>2]=1;break}else if((d|0)==25){c[e>>2]=a;c[f>>2]=1;break}else if((d|0)==27){c[e>>2]=0;c[f>>2]=1;break}}}while(0);g=c[e>>2]|0;i=h;return g|0}function np(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+8|0;g=k+4|0;j=k+20|0;h=k;c[k+12>>2]=a;c[f>>2]=b;c[g>>2]=d;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;a=c[e>>2]|0;i=k;return a|0}if((c[g>>2]|0)>>>0<12){c[e>>2]=-1;a=c[e>>2]|0;i=k;return a|0}c[j>>2]=c[f>>2];do if((c[c[j>>2]>>2]|0)==1179011410)if((c[(c[j>>2]|0)+8>>2]|0)!=541677121){c[e>>2]=-2;c[h>>2]=1;break}else{c[e>>2]=12;c[h>>2]=1;break}else{c[e>>2]=-2;c[h>>2]=1}while(0);a=c[e>>2]|0;i=k;return a|0}function op(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;if(!(c[a+168>>2]|0)){c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}if(!(c[a+164>>2]|0)){c[b>>2]=-2147483643;e=c[b>>2]|0;i=d;return e|0}if((c[a+172>>2]|0)>>>0>(c[a+168>>2]|0)>>>0)Ux(c[a+164>>2]|0,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0)|0;c[a+172>>2]=(c[a+172>>2]|0)-(c[a+168>>2]|0);c[a+168>>2]=0;c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}function pp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+48|0;l=n;d=n+28|0;o=n+20|0;e=n+12|0;j=n+32|0;g=n+24|0;f=n+4|0;h=n+16|0;k=n+8|0;c[o>>2]=a;c[e>>2]=b;b=c[o>>2]|0;if(!(c[b+164>>2]|0)){c[d>>2]=-2147483644;o=c[d>>2]|0;i=n;return o|0}c[j>>2]=(c[b+164>>2]|0)+(c[b+168>>2]|0);c[g>>2]=(c[b+172>>2]|0)-(c[b+168>>2]|0);if((c[g>>2]|0)>>>0>=12){c[h>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>((c[g>>2]|0)-12|0)>>>0){m=12;break}c[k>>2]=(c[j>>2]|0)+(c[h>>2]|0);if((c[c[k>>2]>>2]|0)==(c[e>>2]|0)){o=b+168|0;c[o>>2]=(c[o>>2]|0)+(c[h>>2]|0);c[d>>2]=0;c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0)break;c[h>>2]=(c[h>>2]|0)+1}if((m|0)==12){o=b+168|0;c[o>>2]=(c[o>>2]|0)+(c[h>>2]|0);c[l>>2]=e;jq(20898,l);c[d>>2]=-1;c[f>>2]=1}}else{c[d>>2]=-1;c[f>>2]=1}o=c[d>>2]|0;i=n;return o|0}function qp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;e=n+24|0;o=n+16|0;f=n+12|0;g=n+4|0;l=n+28|0;j=n+20|0;h=n;k=n+8|0;c[o>>2]=a;c[f>>2]=b;c[g>>2]=d;b=c[o>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;o=c[e>>2]|0;i=n;return o|0}if((c[g>>2]|0)>>>0<12){c[e>>2]=-1;o=c[e>>2]|0;i=n;return o|0}c[l>>2]=rp(b,c[f>>2]|0,c[g>>2]|0)|0;c[j>>2]=c[l>>2];if(c[j>>2]|0){c[e>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;do if(!(c[h>>2]|0)){c[f>>2]=(c[f>>2]|0)+12;c[g>>2]=(c[g>>2]|0)-12;c[l>>2]=sp(b,c[f>>2]|0,c[g>>2]|0)|0;d=c[l>>2]|0;if((c[l>>2]|0)<0){c[e>>2]=d;c[h>>2]=1;break}c[f>>2]=(c[f>>2]|0)+d;c[g>>2]=(c[g>>2]|0)-(c[l>>2]|0);c[j>>2]=0;while(1){if((c[b+1020>>2]|0)>>>0>=(c[b+232+32>>2]|0)>>>0){m=31;break}if((c[b+1020>>2]|0)>>>0>=6){m=31;break}c[l>>2]=tp(b,c[f>>2]|0,c[g>>2]|0,b+296+((c[b+1020>>2]|0)*112|0)|0)|0;c[k>>2]=c[l>>2];if(c[k>>2]|0){c[e>>2]=c[k>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0)break;c[f>>2]=(c[f>>2]|0)+(c[b+1024>>2]|0);c[g>>2]=(c[g>>2]|0)-(c[b+1024>>2]|0);d=c[b+296+((c[b+1020>>2]|0)*112|0)+8>>2]|0;a:do if((d|0)<1935963489){switch(d|0){case 1935960438:break;default:break a}if(!(c[b+296+((c[b+1020>>2]|0)*112|0)+32>>2]|0))c[b+1036>>2]=40;else c[b+1036>>2]=(((c[b+296+((c[b+1020>>2]|0)*112|0)+28>>2]|0)*1e3|0)>>>0)/((c[b+296+((c[b+1020>>2]|0)*112|0)+32>>2]|0)>>>0)|0;c[j>>2]=(c[j>>2]|0)+(c[b+296+((c[b+1020>>2]|0)*112|0)+40>>2]|0)}else{switch(d|0){case 1935963489:break;default:break a}do if(!(c[b+296+((c[b+1020>>2]|0)*112|0)+32>>2]|0))c[b+1036>>2]=40;else{if(6!=(c[b+296+((c[b+1020>>2]|0)*112|0)+12>>2]|0)?7!=(c[b+296+((c[b+1020>>2]|0)*112|0)+12>>2]|0):0){c[b+1044>>2]=(((c[b+296+((c[b+1020>>2]|0)*112|0)+28>>2]|0)*1e3|0)>>>0)/((c[b+296+((c[b+1020>>2]|0)*112|0)+32>>2]|0)>>>0)|0;break}c[b+1044>>2]=(((c[b+296+((c[b+1020>>2]|0)*112|0)+28>>2]|0)*32e4|0)>>>0)/((c[b+296+((c[b+1020>>2]|0)*112|0)+32>>2]|0)>>>0)|0}while(0);c[j>>2]=(c[j>>2]|0)+(c[b+296+((c[b+1020>>2]|0)*112|0)+40>>2]|0)}while(0);o=b+1020|0;c[o>>2]=(c[o>>2]|0)+1}if((m|0)==31){if((c[b+232+24>>2]|0)>>>0<(c[j>>2]|0)>>>0)c[b+232+24>>2]=c[j>>2];c[e>>2]=c[b+1012>>2];c[h>>2]=1}}while(0);o=c[e>>2]|0;i=n;return o|0}function rp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;e=k+16|0;l=k+12|0;f=k+8|0;g=k+4|0;j=k+20|0;h=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[l>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;l=c[e>>2]|0;i=k;return l|0}if((c[g>>2]|0)>>>0<12){c[e>>2]=-1;l=c[e>>2]|0;i=k;return l|0}c[j>>2]=c[f>>2];do if((c[c[j>>2]>>2]|0)==1414744396){if((c[(c[j>>2]|0)+8>>2]|0)!=1819436136){c[e>>2]=-2;c[h>>2]=1;break}c[d+1012>>2]=(c[(c[j>>2]|0)+4>>2]|0)+8;if((c[g>>2]|0)>>>0<(c[d+1012>>2]|0)>>>0){c[e>>2]=-1;c[h>>2]=1;break}else{c[e>>2]=0;c[h>>2]=1;break}}else{c[e>>2]=-2;c[h>>2]=1}while(0);l=c[e>>2]|0;i=k;return l|0}function sp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;h=k+16|0;l=k+12|0;e=k+8|0;f=k+4|0;g=k+20|0;j=k;c[l>>2]=a;c[e>>2]=b;c[f>>2]=d;d=c[l>>2]|0;if(!(c[e>>2]|0)){c[h>>2]=-2147483645;l=c[h>>2]|0;i=k;return l|0}if((c[f>>2]|0)>>>0<64){c[h>>2]=-1;l=c[h>>2]|0;i=k;return l|0}c[g>>2]=c[e>>2];do if((c[c[g>>2]>>2]|0)==1751742049)if((c[(c[g>>2]|0)+4>>2]|0)!=56){c[h>>2]=-2;c[j>>2]=1;break}else{a=d+232|0;d=c[g>>2]|0;b=a+64|0;do{c[a>>2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(b|0));c[h>>2]=64;c[j>>2]=1;break}else{c[h>>2]=-2;c[j>>2]=1}while(0);l=c[h>>2]|0;i=k;return l|0}function tp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;g=m+20|0;n=m+16|0;h=m+12|0;j=m+8|0;f=m+4|0;l=m+24|0;k=m;c[n>>2]=a;c[h>>2]=b;c[j>>2]=d;c[f>>2]=e;b=c[n>>2]|0;if(0==(c[h>>2]|0)|0==(c[f>>2]|0)){c[g>>2]=-2147483645;n=c[g>>2]|0;i=m;return n|0}if((c[j>>2]|0)>>>0<12){c[g>>2]=-1;n=c[g>>2]|0;i=m;return n|0}c[l>>2]=0;c[l>>2]=up(b,c[h>>2]|0,c[j>>2]|0)|0;d=c[l>>2]|0;do if((c[l>>2]|0)>=0){c[h>>2]=(c[h>>2]|0)+d;c[j>>2]=(c[j>>2]|0)-(c[l>>2]|0);c[l>>2]=vp(b,c[h>>2]|0,c[j>>2]|0,c[f>>2]|0)|0;d=c[l>>2]|0;if((c[l>>2]|0)<0){c[g>>2]=d;c[k>>2]=1;break}c[h>>2]=(c[h>>2]|0)+d;c[j>>2]=(c[j>>2]|0)-(c[l>>2]|0);c[l>>2]=wp(b,c[h>>2]|0,c[j>>2]|0,c[f>>2]|0)|0;d=c[l>>2]|0;if((c[l>>2]|0)<0){c[g>>2]=d;c[k>>2]=1;break}else{c[h>>2]=(c[h>>2]|0)+d;c[j>>2]=(c[j>>2]|0)-(c[l>>2]|0);c[g>>2]=0;c[k>>2]=1;break}}else{c[g>>2]=d;c[k>>2]=1}while(0);n=c[g>>2]|0;i=m;return n|0}function up(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;e=k+16|0;l=k+12|0;f=k+8|0;g=k+4|0;j=k+20|0;h=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[l>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;l=c[e>>2]|0;i=k;return l|0}if((c[g>>2]|0)>>>0<12){c[e>>2]=-1;l=c[e>>2]|0;i=k;return l|0}c[j>>2]=c[f>>2];do if((c[c[j>>2]>>2]|0)==1414744396){c[d+1024>>2]=(c[(c[j>>2]|0)+4>>2]|0)+8;if((c[(c[j>>2]|0)+8>>2]|0)!=1819440243){c[e>>2]=-2;c[h>>2]=1;break}else{c[e>>2]=12;c[h>>2]=1;break}}else{c[e>>2]=-2;c[h>>2]=1}while(0);l=c[e>>2]|0;i=k;return l|0}function vp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m+20|0;f=m+12|0;g=m+8|0;h=m+4|0;j=m+24|0;l=m;c[m+16>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;if(0==(c[f>>2]|0)|0==(c[h>>2]|0)){c[k>>2]=-2147483645;l=c[k>>2]|0;i=m;return l|0}if((c[g>>2]|0)>>>0<64){c[k>>2]=-1;l=c[k>>2]|0;i=m;return l|0}c[j>>2]=c[f>>2];do if((c[c[j>>2]>>2]|0)==1752331379)if((c[(c[j>>2]|0)+4>>2]|0)!=56){c[k>>2]=-2;c[l>>2]=1;break}else{h=c[h>>2]|0;f=c[j>>2]|0;g=h+64|0;do{c[h>>2]=c[f>>2];h=h+4|0;f=f+4|0}while((h|0)<(g|0));c[k>>2]=64;c[l>>2]=1;break}else{c[k>>2]=-2;c[l>>2]=1}while(0);l=c[k>>2]|0;i=m;return l|0}function wp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;l=m+8|0;k=m;f=m+28|0;n=m+24|0;g=m+20|0;h=m+16|0;j=m+12|0;c[n>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;b=c[n>>2]|0;if(0==(c[g>>2]|0)|0==(c[j>>2]|0)){c[f>>2]=-2147483645;n=c[f>>2]|0;i=m;return n|0}if((c[h>>2]|0)>>>0<12){c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}d=c[(c[j>>2]|0)+8>>2]|0;a:do if((d|0)>=1935963489)if((d|0)<1937012852){switch(d|0){case 1935963489:break;default:break a}c[f>>2]=yp(b,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;n=c[f>>2]|0;i=m;return n|0}else{switch(d|0){case 1937012852:break;default:break a}jq(20958,k);c[f>>2]=zp(b,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;n=c[f>>2]|0;i=m;return n|0}else{switch(d|0){case 1935960438:break;default:break a}c[b+1028>>2]=c[(c[j>>2]|0)+12>>2];c[f>>2]=xp(b,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;n=c[f>>2]|0;i=m;return n|0}while(0);jq(20972,l);c[f>>2]=-2;n=c[f>>2]|0;i=m;return n|0}function xp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m+20|0;j=m+12|0;f=m+8|0;g=m+4|0;h=m+24|0;l=m;c[m+16>>2]=a;c[j>>2]=b;c[f>>2]=d;c[g>>2]=e;if(0==(c[j>>2]|0)|0==(c[g>>2]|0)){c[k>>2]=-2147483645;l=c[k>>2]|0;i=m;return l|0}if((c[f>>2]|0)>>>0<12){c[k>>2]=-1;l=c[k>>2]|0;i=m;return l|0}c[h>>2]=c[j>>2];do if((c[c[h>>2]>>2]|0)==1718776947){c[j>>2]=(c[j>>2]|0)+8;c[f>>2]=(c[f>>2]|0)-8;if((c[f>>2]|0)>>>0<40){c[k>>2]=-1;c[l>>2]=1;break}else{d=(c[g>>2]|0)+72|0;f=c[j>>2]|0;g=d+40|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));c[k>>2]=48;c[l>>2]=1;break}}else{c[k>>2]=-2;c[l>>2]=1}while(0);l=c[k>>2]|0;i=m;return l|0}function yp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;k=m+20|0;j=m+12|0;f=m+8|0;g=m+4|0;h=m+24|0;l=m;c[m+16>>2]=a;c[j>>2]=b;c[f>>2]=d;c[g>>2]=e;if(0==(c[j>>2]|0)|0==(c[g>>2]|0)){c[k>>2]=-2147483645;l=c[k>>2]|0;i=m;return l|0}if((c[f>>2]|0)>>>0<12){c[k>>2]=-1;l=c[k>>2]|0;i=m;return l|0}c[h>>2]=c[j>>2];do if((c[c[h>>2]>>2]|0)==1718776947){c[j>>2]=(c[j>>2]|0)+8;c[f>>2]=(c[f>>2]|0)-8;if((c[f>>2]|0)>>>0<40){c[k>>2]=-1;c[l>>2]=1;break}else{d=(c[g>>2]|0)+72|0;f=c[j>>2]|0;g=d+40|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));c[k>>2]=48;c[l>>2]=1;break}}else{c[k>>2]=-2;c[l>>2]=1}while(0);l=c[k>>2]|0;i=m;return l|0}function zp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l+20|0;g=l+12|0;h=l+8|0;m=l+4|0;k=l+24|0;j=l;c[l+16>>2]=a;c[g>>2]=b;c[h>>2]=d;c[m>>2]=e;if(0==(c[g>>2]|0)|0==(c[m>>2]|0)){c[f>>2]=-2147483645;m=c[f>>2]|0;i=l;return m|0}if((c[h>>2]|0)>>>0<12){c[f>>2]=-1;m=c[f>>2]|0;i=l;return m|0}c[k>>2]=c[g>>2];if((c[c[k>>2]>>2]|0)!=1718776947){c[f>>2]=-2;c[j>>2]=1}else{c[f>>2]=(c[(c[k>>2]|0)+4>>2]|0)+8;c[j>>2]=1}m=c[f>>2]|0;i=l;return m|0}function Ap(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;e=m+20|0;n=m+12|0;f=m+8|0;g=m+4|0;k=m+24|0;j=m+16|0;h=m;c[n>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[n>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;n=c[e>>2]|0;i=m;return n|0}if((c[g>>2]|0)>>>0<8){c[e>>2]=-1;n=c[e>>2]|0;i=m;return n|0}c[k>>2]=0;if(!(c[d+1008>>2]|0)){c[k>>2]=Bp(d,c[f>>2]|0,c[g>>2]|0)|0;c[j>>2]=c[k>>2];if(c[j>>2]|0){c[e>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(!(c[h>>2]|0)){c[f>>2]=(c[f>>2]|0)+12;c[g>>2]=(c[g>>2]|0)-12;l=d+168|0;c[l>>2]=(c[l>>2]|0)+12;c[d+1008>>2]=1;l=11}}else l=11;if((l|0)==11){c[e>>2]=Cp(d,c[f>>2]|0,c[g>>2]|0)|0;c[h>>2]=1}n=c[e>>2]|0;i=m;return n|0}function Bp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+8|0;g=k+4|0;j=k+20|0;h=k;c[k+12>>2]=a;c[f>>2]=b;c[g>>2]=d;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;a=c[e>>2]|0;i=k;return a|0}if((c[g>>2]|0)>>>0<12){c[e>>2]=-1;a=c[e>>2]|0;i=k;return a|0}c[j>>2]=c[f>>2];do if((c[c[j>>2]>>2]|0)==1414744396)if((c[(c[j>>2]|0)+8>>2]|0)!=1769369453){c[e>>2]=-3;c[h>>2]=1;break}else{c[f>>2]=(c[f>>2]|0)+12;c[g>>2]=(c[g>>2]|0)-12;c[e>>2]=0;c[h>>2]=1;break}else{c[e>>2]=-3;c[h>>2]=1}while(0);a=c[e>>2]|0;i=k;return a|0}function Cp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+48|0;m=n;e=n+28|0;o=n+20|0;f=n+12|0;g=n+8|0;k=n+32|0;h=n+4|0;l=n+24|0;j=n+16|0;c[o>>2]=a;c[f>>2]=b;c[g>>2]=d;b=c[o>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;o=c[e>>2]|0;i=n;return o|0}if((c[g>>2]|0)>>>0<12){c[e>>2]=-1;o=c[e>>2]|0;i=n;return o|0}c[k>>2]=Dp(b,c[f>>2]|0,c[g>>2]|0)|0;d=c[k>>2]|0;if((c[k>>2]|0)<0){c[e>>2]=d;c[h>>2]=1}else{c[f>>2]=(c[f>>2]|0)+d;c[g>>2]=(c[g>>2]|0)-(c[k>>2]|0);c[l>>2]=c[f>>2];c[f>>2]=(c[f>>2]|0)+8;c[g>>2]=(c[g>>2]|0)-8;a:do if((c[g>>2]|0)>>>0<(c[(c[l>>2]|0)+4>>2]|0)>>>0){c[e>>2]=-1;c[h>>2]=1}else{switch((c[c[l>>2]>>2]|0)>>>16|0){case 25188:case 25444:{c[j>>2]=Ep(b,c[f>>2]|0,c[(c[l>>2]|0)+4>>2]|0)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0)break a;c[j>>2]=Hp(b,c[b+176>>2]|0,c[b+180>>2]|0)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0)break a;break}case 25207:{c[j>>2]=Ip(b,c[f>>2]|0,c[(c[l>>2]|0)+4>>2]|0)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0)break a;c[j>>2]=Hp(b,c[b+176>>2]|0,c[b+180>>2]|0)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0)break a;break}default:{jq(21143,m);c[e>>2]=-2;c[h>>2]=1;break a}}c[e>>2]=(c[(c[l>>2]|0)+4>>2]|0)+(c[k>>2]|0)+8;c[h>>2]=1}while(0)}o=c[e>>2]|0;i=n;return o|0}function Dp(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+32|0;g=p+20|0;q=p+12|0;h=p+8|0;j=p+4|0;m=p+24|0;n=p+16|0;k=p;l=p+28|0;c[q>>2]=a;c[h>>2]=d;c[j>>2]=f;d=c[q>>2]|0;if(!(c[h>>2]|0)){c[g>>2]=-2147483645;q=c[g>>2]|0;i=p;return q|0}if((c[j>>2]|0)>>>0<12){c[g>>2]=-1;q=c[g>>2]|0;i=p;return q|0}c[m>>2]=0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>((c[j>>2]|0)-12|0)>>>0){o=21;break}c[n>>2]=(c[h>>2]|0)+(c[m>>2]|0);f=c[c[n>>2]>>2]|0;a:do if((f|0)<829973609)if((f|0)<825260137)switch(f|0){case 808482921:{o=8;break a}default:{o=12;break a}}else switch(f|0){case 825260137:{o=8;break a}default:{o=12;break a}}else{if((f|0)<1263424842){switch(f|0){case 829973609:break;default:{o=12;break a}}c[d+232+24>>2]=c[d+1016>>2];c[d+1048>>2]=1;c[g>>2]=c[m>>2];c[k>>2]=1;break}if((f|0)<1414744396)switch(f|0){case 1263424842:{o=8;break a}default:{o=12;break a}}else switch(f|0){case 1414744396:{o=18;break a}default:{o=12;break a}}}while(0);do if((o|0)==8){o=0;if((c[j>>2]|0)>>>0<((c[(c[n>>2]|0)+4>>2]|0)+(c[m>>2]|0)+8|0)>>>0){q=d+168|0;c[q>>2]=(c[q>>2]|0)+(c[m>>2]|0);c[g>>2]=-1;c[k>>2]=1;break}else{c[m>>2]=(c[m>>2]|0)+((c[(c[n>>2]|0)+4>>2]|0)+8-1);o=18;break}}else if((o|0)==12){o=0;b[l>>1]=(c[c[n>>2]>>2]|0)>>>16;if(((e[l>>1]|0|0)!=25444?(e[l>>1]|0|0)!=25188:0)?(e[l>>1]|0|0)!=25207:0)c[k>>2]=5;else{c[g>>2]=c[m>>2];c[k>>2]=1}if((c[k>>2]|0)==5)o=18}while(0);if((o|0)==18){o=0;c[k>>2]=0}if(c[k>>2]|0)break;c[m>>2]=(c[m>>2]|0)+1}if((o|0)==21){q=d+168|0;c[q>>2]=(c[q>>2]|0)+(c[m>>2]|0);c[g>>2]=-1;c[k>>2]=1}q=c[g>>2]|0;i=p;return q|0}function Ep(a,d,f){a=a|0;d=d|0;f=f|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=i;i=i+64|0;q=r+8|0;l=r;m=r+36|0;s=r+28|0;h=r+20|0;j=r+16|0;p=r+40|0;o=r+32|0;k=r+24|0;n=r+12|0;c[s>>2]=a;c[h>>2]=d;c[j>>2]=f;d=c[s>>2]|0;c[d+180>>2]=0;if((c[j>>2]|0)>>>0<32){c[d+12>>2]=2;if(!(c[d+1036>>2]|0))c[d+1036>>2]=40;s=d+1032|0;c[s>>2]=(c[s>>2]|0)+(c[d+1036>>2]|0);c[d+12+12>>2]=c[d+1032>>2];g[d+12+60>>2]=+((c[d+1036>>2]|0)>>>0);c[m>>2]=0;s=c[m>>2]|0;i=r;return s|0}if(!(c[h>>2]|0)){c[m>>2]=-2147483645;s=c[m>>2]|0;i=r;return s|0}if((c[j>>2]|0)>>>0>3145728){c[m>>2]=-2147483643;s=c[m>>2]|0;i=r;return s|0}Gh(c[d+176>>2]|0,c[h>>2]|0,c[j>>2]|0);c[d+180>>2]=c[j>>2];c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[o>>2]=0;f=c[d+1028>>2]|0;a:do if((f|0)<875967096){if((f|0)>=875967048)switch(f|0){case 875967064:case 875967080:case 875967048:{f=10;break a}default:{f=17;break a}}if((f|0)<828601953)switch(f|0){case 808802372:{f=15;break a}default:{f=17;break a}}else switch(f|0){case 828601953:{f=10;break a}default:{f=17;break a}}}else{if((f|0)<1196444237){if((f|0)<877677894)switch(f|0){case 875967096:{f=10;break a}default:{f=17;break a}}if((f|0)<1145656920)switch(f|0){case 877677894:{f=15;break a}default:{f=17;break a}}else switch(f|0){case 1145656920:{f=15;break a}default:{f=17;break a}}}if((f|0)<1446269005){switch(f|0){case 1196444237:break;default:{f=17;break a}}b[p>>1]=c[d+232+40>>2];b[p+2>>1]=c[d+232+44>>2];c[o>>2]=xq(4,c[h>>2]|0,c[j>>2]|0,p)|0;f=18;break}if((f|0)<1482049860)switch(f|0){case 1446269005:{f=15;break a}default:{f=17;break a}}else switch(f|0){case 1482049860:{f=15;break a}default:{f=17;break a}}}while(0);if((f|0)==10){c[k>>2]=Fp(d,c[d+176>>2]|0,c[d+180>>2]|0)|0;if(c[k>>2]|0){c[m>>2]=c[k>>2];c[n>>2]=1}else c[n>>2]=0;if(!(c[n>>2]|0)){c[o>>2]=xq(256,c[d+176>>2]|0,c[d+180>>2]|0,p)|0;f=18}}else if((f|0)==15){c[o>>2]=xq(3,c[h>>2]|0,c[j>>2]|0,p)|0;f=18}else if((f|0)==17){jq(21008,l);c[m>>2]=-2147483645;c[n>>2]=1}if((f|0)==18){c[d+12>>2]=e[p+4>>1];s=d+12+8|0;c[s>>2]=(c[s>>2]|0)+1;if(!(e[p>>1]|0))f=c[d+232+40>>2]|0;else f=e[p>>1]|0;c[d+12+16>>2]=f;if(!(e[p+2>>1]|0))f=c[d+232+44>>2]|0;else f=e[p+2>>1]|0;c[d+12+20>>2]=f;c[d+12+24>>2]=e[p+6>>1];if(!(c[d+1036>>2]|0))c[d+1036>>2]=40;c[d+12+12>>2]=c[d+1032>>2];s=d+1032|0;c[s>>2]=(c[s>>2]|0)+(c[d+1036>>2]|0);g[d+12+60>>2]=+((c[d+1036>>2]|0)>>>0);if(!(3!=(c[d+12>>2]|0)?2!=(c[d+12>>2]|0):0))Gp(d)|0;if(c[o>>2]|0){c[d+180>>2]=0;jq(21049,q)}c[m>>2]=0;c[n>>2]=1}s=c[m>>2]|0;i=r;return s|0}function Fp(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+32|0;g=p+24|0;q=p+16|0;h=p+8|0;j=p+4|0;l=p+28|0;n=p+20|0;k=p;m=p+12|0;c[q>>2]=b;c[h>>2]=e;c[j>>2]=f;f=c[q>>2]|0;if((c[h>>2]|0)==0|(c[j>>2]|0)>>>0<5){c[g>>2]=-2147483645;q=c[g>>2]|0;i=p;return q|0}c[l>>2]=1;c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=((c[j>>2]|0)-4|0)>>>0){o=5;break}if(((0==(d[(c[h>>2]|0)+(c[n>>2]|0)>>0]|0|0)?0==(d[(c[h>>2]|0)+((c[n>>2]|0)+1)>>0]|0|0):0)?0==(d[(c[h>>2]|0)+((c[n>>2]|0)+2)>>0]|0|0):0)?1==(d[(c[h>>2]|0)+((c[n>>2]|0)+3)>>0]|0|0):0){c[m>>2]=(d[(c[h>>2]|0)+((c[n>>2]|0)+4)>>0]|0)&31;if(!((c[m>>2]|0)==6|(c[m>>2]|0)==7|(c[m>>2]|0)==8|(c[m>>2]|0)==9))if((c[m>>2]|0)==1|(c[m>>2]|0)==5){if((c[l>>2]|0)!=0&(c[n>>2]|0)!=0){Ux(c[h>>2]|0,(c[h>>2]|0)+(c[n>>2]|0)|0,(c[j>>2]|0)-(c[n>>2]|0)|0)|0;q=f+180|0;c[q>>2]=(c[q>>2]|0)-(c[n>>2]|0)}c[l>>2]=0;c[g>>2]=0;c[k>>2]=1}else o=18;else{if((c[l>>2]|0)!=0&(c[n>>2]|0)!=0){Ux(c[h>>2]|0,(c[h>>2]|0)+(c[n>>2]|0)|0,(c[j>>2]|0)-(c[n>>2]|0)|0)|0;c[j>>2]=(c[j>>2]|0)-(c[n>>2]|0);q=f+180|0;c[q>>2]=(c[q>>2]|0)-(c[n>>2]|0);c[n>>2]=0}c[l>>2]=0;c[n>>2]=(c[n>>2]|0)+4;o=18}if((o|0)==18){o=0;c[k>>2]=0}if(c[k>>2]|0)break}if((0==(d[(c[h>>2]|0)+(c[n>>2]|0)>>0]|0|0)?0==(d[(c[h>>2]|0)+((c[n>>2]|0)+1)>>0]|0|0):0)?1==(d[(c[h>>2]|0)+((c[n>>2]|0)+2)>>0]|0|0):0){c[m>>2]=(d[(c[h>>2]|0)+((c[n>>2]|0)+3)>>0]|0)&31;do if((c[m>>2]|0)==6|(c[m>>2]|0)==7|(c[m>>2]|0)==8|(c[m>>2]|0)==9){if((c[l>>2]|0)!=0&(c[n>>2]|0)!=0){Ux(c[h>>2]|0,(c[h>>2]|0)+(c[n>>2]|0)|0,(c[j>>2]|0)-(c[n>>2]|0)|0)|0;c[j>>2]=(c[j>>2]|0)-(c[n>>2]|0);q=f+180|0;c[q>>2]=(c[q>>2]|0)-(c[n>>2]|0);c[n>>2]=0}c[l>>2]=0;if(((c[f+180>>2]|0)+1|0)>>>0>3145728){c[g>>2]=-2147483643;c[k>>2]=1;break}else{Ux((c[h>>2]|0)+(c[n>>2]|0)+1|0,(c[h>>2]|0)+(c[n>>2]|0)|0,(c[j>>2]|0)-(c[n>>2]|0)|0)|0;a[(c[h>>2]|0)+(c[n>>2]|0)>>0]=0;c[j>>2]=(c[j>>2]|0)+1;o=f+180|0;c[o>>2]=(c[o>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+4;o=35;break}}else if((c[m>>2]|0)==1|(c[m>>2]|0)==5){if((c[l>>2]|0)!=0&(c[n>>2]|0)!=0){Ux(c[h>>2]|0,(c[h>>2]|0)+(c[n>>2]|0)|0,(c[j>>2]|0)-(c[n>>2]|0)|0)|0;q=f+180|0;c[q>>2]=(c[q>>2]|0)-(c[n>>2]|0)}c[l>>2]=0;if(((c[f+180>>2]|0)+1|0)>>>0>3145728){c[g>>2]=-2147483643;c[k>>2]=1;break}else{Ux((c[h>>2]|0)+(c[n>>2]|0)+1|0,(c[h>>2]|0)+(c[n>>2]|0)|0,(c[j>>2]|0)-(c[n>>2]|0)|0)|0;a[(c[h>>2]|0)+(c[n>>2]|0)>>0]=0;q=f+180|0;c[q>>2]=(c[q>>2]|0)+1;c[g>>2]=0;c[k>>2]=1;break}}else o=35;while(0);if((o|0)==35){o=0;c[k>>2]=0}if(c[k>>2]|0)break}c[n>>2]=(c[n>>2]|0)+1}if((o|0)==5)c[k>>2]=2;if((c[k>>2]|0)==2){c[g>>2]=-2147483645;c[k>>2]=1}q=c[g>>2]|0;i=p;return q|0}function Gp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+4|0;e=g+8|0;f=g;c[b>>2]=a;b=c[b>>2]|0;d=1==(c[b+1088>>2]|0);if(1==(c[b+1052>>2]|0)){a=b+12+64|0;if(d){lq(a,c[b+12+12>>2]|0,c[b+1084>>2]|0);f=b+1056|0;e=b+12+64|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[f+16>>2]=c[e+16>>2];c[f+20>>2]=c[e+20>>2];c[f+24>>2]=c[e+24>>2]}else{f=b+1056|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[a+20>>2]=c[f+20>>2];c[a+24>>2]=c[f+24>>2];c[b+1088>>2]=1}c[b+1084>>2]=c[b+12+12>>2];i=g;return 0}else{if(d)lq(b+12+64|0,c[b+12+12>>2]|0,c[b+1084>>2]|0);else{ab(e|0)|0;c[f>>2]=fb(e|0)|0;c[b+12+64>>2]=(c[(c[f>>2]|0)+20>>2]|0)+1900;c[b+12+64+4>>2]=(c[(c[f>>2]|0)+16>>2]|0)+1;c[b+12+64+8>>2]=c[(c[f>>2]|0)+12>>2];c[b+12+64+12>>2]=c[(c[f>>2]|0)+8>>2];c[b+12+64+16>>2]=c[(c[f>>2]|0)+4>>2];c[b+12+64+20>>2]=c[c[f>>2]>>2];c[b+12+64+24>>2]=0;c[b+1088>>2]=1}c[b+1084>>2]=c[b+12+12>>2];i=g;return 0}return 0}function Hp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;e=h+16|0;j=h+12|0;f=h+8|0;g=h+4|0;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[j>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;j=c[e>>2]|0;i=h;return j|0}switch(c[d+12>>2]|0){case 3:{c[d+12>>2]=1;break}case 2:{c[d+12>>2]=2;break}case 1:{c[d+12>>2]=3;break}case 4:break;default:jq(21097,h)}if(0!=(c[f>>2]|0)?0!=(c[d+4>>2]|0):0){j=c[d+4>>2]|0;pb[c[(c[j>>2]|0)+28>>2]&31](j,c[f>>2]|0,c[g>>2]|0,d+12|0)|0;c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}c[e>>2]=-2147483644;j=c[e>>2]|0;i=h;return j|0}function Ip(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[j>>2]|0;c[d+12>>2]=4;a=d+1040|0;c[a>>2]=(c[a>>2]|0)+(c[d+1044>>2]|0);c[d+12+12>>2]=c[d+1040>>2];if((c[g>>2]|0)>>>0>3145728){c[e>>2]=-2147483643;j=c[e>>2]|0;i=h;return j|0}else{Gh(c[d+176>>2]|0,c[f>>2]|0,c[g>>2]|0);c[d+180>>2]=c[g>>2];c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function Jp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+8>>2]=2;if(c[a+188>>2]|0){Lh(c[a+188>>2]|0)|0;Mh(c[a+188>>2]|0)|0;c[a+188>>2]=0}if(!(c[a+184>>2]|0)){i=b;return 0}Eh(c[a+184>>2]|0)|0;c[a+184>>2]=0;i=b;return 0}function Kp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=i;i=i+16|0;c[f+12>>2]=a;c[f+8>>2]=b;c[f+4>>2]=d;c[f>>2]=e;i=f;return 0}function Lp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+8>>2]=c[f>>2];i=d;return 0}function Mp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;do if(c[e>>2]|0){if(2==(c[b+8>>2]|0)){c[d>>2]=-2147483642;break}if(!(c[b+996>>2]|0)){c[d>>2]=-2147483644;break}else{c[c[e>>2]>>2]=c[b+992>>2];c[d>>2]=0;break}}else c[d>>2]=-2147483645;while(0);i=f;return c[d>>2]|0}function Np(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=c[f>>2]|0;b=a+1056|0;e=c[e>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];c[b+16>>2]=c[e+16>>2];c[b+20>>2]=c[e+20>>2];c[b+24>>2]=c[e+24>>2];c[a+1052>>2]=1;i=d;return 0}function Op(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;a=c[b>>2]|0;Ej(a);c[a>>2]=2980;c[a+4>>2]=0;c[a+8>>2]=2;c[a+164>>2]=0;c[a+168>>2]=0;c[a+172>>2]=0;c[a+176>>2]=0;c[a+180>>2]=0;c[a+184>>2]=0;c[a+188>>2]=0;b=a+984|0;c[b>>2]=0;c[b+4>>2]=0;c[a+992>>2]=0;c[a+996>>2]=1;c[a+1e3>>2]=0;c[a+1004>>2]=0;c[a+1008>>2]=0;c[a+1048>>2]=0;c[a+1052>>2]=0;c[a+1012>>2]=0;c[a+1016>>2]=0;c[a+1020>>2]=0;c[a+1024>>2]=0;c[a+1032>>2]=0;c[a+1040>>2]=0;c[a+1036>>2]=0;c[a+1044>>2]=0;c[a+968>>2]=2;b=a+976|0;c[b>>2]=0;c[b+4>>2]=0;c[a+1028>>2]=0;Ox(a+12|0,0,152)|0;b=a+192|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));b=a+232|0;d=b+64|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));Ox(a+296|0,0,672)|0;d=a+1056|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;c[a+1052>>2]=0;c[a+1088>>2]=0;c[a+1084>>2]=0;i=e;return}function Pp(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+32|0;g=q+12|0;h=q+8|0;j=q+4|0;l=q+20|0;m=q+19|0;n=q+18|0;o=q+17|0;p=q+16|0;k=q;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=4)break;a[(c[h>>2]|0)+((c[k>>2]<<2)+0)>>0]=a[(c[g>>2]|0)+((c[k>>2]<<2)+0)>>0]|0;a[(c[h>>2]|0)+((c[k>>2]<<2)+1)>>0]=a[(c[g>>2]|0)+((c[k>>2]<<2)+1)>>0]|0;a[(c[h>>2]|0)+((c[k>>2]<<2)+2)>>0]=a[(c[g>>2]|0)+((c[k>>2]<<2)+2)>>0]|0;a[(c[h>>2]|0)+((c[k>>2]<<2)+3)>>0]=a[(c[g>>2]|0)+((c[k>>2]<<2)+3)>>0]|0;c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=4;while(1){if((c[k>>2]|0)>>>0>=(c[j>>2]|0)+1<<2>>>0)break;a[l>>0]=a[(c[h>>2]|0)+((c[k>>2]<<2)-4)>>0]|0;a[m>>0]=a[(c[h>>2]|0)+((c[k>>2]<<2)-3)>>0]|0;a[n>>0]=a[(c[h>>2]|0)+((c[k>>2]<<2)-2)>>0]|0;a[o>>0]=a[(c[h>>2]|0)+((c[k>>2]<<2)-1)>>0]|0;if(!(((c[k>>2]|0)>>>0)%4|0)){a[p>>0]=a[o>>0]|0;a[o>>0]=a[21185+(d[l>>0]|0)>>0]|0;a[l>>0]=(d[21185+(d[m>>0]|0)>>0]|0)^(d[21441+(((c[k>>2]|0)>>>0)/4|0)>>0]|0);a[m>>0]=a[21185+(d[n>>0]|0)>>0]|0;a[n>>0]=a[21185+(d[p>>0]|0)>>0]|0}a[(c[h>>2]|0)+((c[k>>2]<<2)+0)>>0]=(d[(c[h>>2]|0)+((c[k>>2]<<2)-16+0)>>0]|0)^(d[l>>0]|0);a[(c[h>>2]|0)+((c[k>>2]<<2)+1)>>0]=(d[(c[h>>2]|0)+((c[k>>2]<<2)-16+1)>>0]|0)^(d[m>>0]|0);a[(c[h>>2]|0)+((c[k>>2]<<2)+2)>>0]=(d[(c[h>>2]|0)+((c[k>>2]<<2)-16+2)>>0]|0)^(d[n>>0]|0);a[(c[h>>2]|0)+((c[k>>2]<<2)+3)>>0]=(d[(c[h>>2]|0)+((c[k>>2]<<2)-16+3)>>0]|0)^(d[o>>0]|0);c[k>>2]=(c[k>>2]|0)+1}i=q;return}function Qp(b){b=b|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e;g=e+4|0;c[f>>2]=b;a[c[f>>2]>>0]=a[21452+(d[c[f>>2]>>0]|0)>>0]|0;a[(c[f>>2]|0)+4>>0]=a[21452+(d[(c[f>>2]|0)+4>>0]|0)>>0]|0;a[(c[f>>2]|0)+8>>0]=a[21452+(d[(c[f>>2]|0)+8>>0]|0)>>0]|0;a[(c[f>>2]|0)+12>>0]=a[21452+(d[(c[f>>2]|0)+12>>0]|0)>>0]|0;a[g>>0]=a[21452+(d[(c[f>>2]|0)+13>>0]|0)>>0]|0;a[(c[f>>2]|0)+13>>0]=a[21452+(d[(c[f>>2]|0)+9>>0]|0)>>0]|0;a[(c[f>>2]|0)+9>>0]=a[21452+(d[(c[f>>2]|0)+5>>0]|0)>>0]|0;a[(c[f>>2]|0)+5>>0]=a[21452+(d[(c[f>>2]|0)+1>>0]|0)>>0]|0;a[(c[f>>2]|0)+1>>0]=a[g>>0]|0;a[g>>0]=a[21452+(d[(c[f>>2]|0)+2>>0]|0)>>0]|0;a[(c[f>>2]|0)+2>>0]=a[21452+(d[(c[f>>2]|0)+10>>0]|0)>>0]|0;a[(c[f>>2]|0)+10>>0]=a[g>>0]|0;a[g>>0]=a[21452+(d[(c[f>>2]|0)+6>>0]|0)>>0]|0;a[(c[f>>2]|0)+6>>0]=a[21452+(d[(c[f>>2]|0)+14>>0]|0)>>0]|0;a[(c[f>>2]|0)+14>>0]=a[g>>0]|0;a[g>>0]=a[21452+(d[(c[f>>2]|0)+3>>0]|0)>>0]|0;a[(c[f>>2]|0)+3>>0]=a[21452+(d[(c[f>>2]|0)+7>>0]|0)>>0]|0;a[(c[f>>2]|0)+7>>0]=a[21452+(d[(c[f>>2]|0)+11>>0]|0)>>0]|0;a[(c[f>>2]|0)+11>>0]=a[21452+(d[(c[f>>2]|0)+15>>0]|0)>>0]|0;a[(c[f>>2]|0)+15>>0]=a[g>>0]|0;i=e;return}function Rp(b){b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+32|0;e=h+4|0;g=h+8|0;f=h;c[e>>2]=b;a[g>>0]=(d[21708+(d[c[e>>2]>>0]|0)>>0]|0)^(d[21964+(d[(c[e>>2]|0)+1>>0]|0)>>0]|0)^(d[22220+(d[(c[e>>2]|0)+2>>0]|0)>>0]|0)^(d[22476+(d[(c[e>>2]|0)+3>>0]|0)>>0]|0);a[g+5>>0]=(d[22476+(d[c[e>>2]>>0]|0)>>0]|0)^(d[21708+(d[(c[e>>2]|0)+1>>0]|0)>>0]|0)^(d[21964+(d[(c[e>>2]|0)+2>>0]|0)>>0]|0)^(d[22220+(d[(c[e>>2]|0)+3>>0]|0)>>0]|0);a[g+10>>0]=(d[22220+(d[c[e>>2]>>0]|0)>>0]|0)^(d[22476+(d[(c[e>>2]|0)+1>>0]|0)>>0]|0)^(d[21708+(d[(c[e>>2]|0)+2>>0]|0)>>0]|0)^(d[21964+(d[(c[e>>2]|0)+3>>0]|0)>>0]|0);a[g+15>>0]=(d[21964+(d[c[e>>2]>>0]|0)>>0]|0)^(d[22220+(d[(c[e>>2]|0)+1>>0]|0)>>0]|0)^(d[22476+(d[(c[e>>2]|0)+2>>0]|0)>>0]|0)^(d[21708+(d[(c[e>>2]|0)+3>>0]|0)>>0]|0);a[g+4>>0]=(d[21708+(d[(c[e>>2]|0)+4>>0]|0)>>0]|0)^(d[21964+(d[(c[e>>2]|0)+5>>0]|0)>>0]|0)^(d[22220+(d[(c[e>>2]|0)+6>>0]|0)>>0]|0)^(d[22476+(d[(c[e>>2]|0)+7>>0]|0)>>0]|0);a[g+9>>0]=(d[22476+(d[(c[e>>2]|0)+4>>0]|0)>>0]|0)^(d[21708+(d[(c[e>>2]|0)+5>>0]|0)>>0]|0)^(d[21964+(d[(c[e>>2]|0)+6>>0]|0)>>0]|0)^(d[22220+(d[(c[e>>2]|0)+7>>0]|0)>>0]|0);a[g+14>>0]=(d[22220+(d[(c[e>>2]|0)+4>>0]|0)>>0]|0)^(d[22476+(d[(c[e>>2]|0)+5>>0]|0)>>0]|0)^(d[21708+(d[(c[e>>2]|0)+6>>0]|0)>>0]|0)^(d[21964+(d[(c[e>>2]|0)+7>>0]|0)>>0]|0);a[g+3>>0]=(d[21964+(d[(c[e>>2]|0)+4>>0]|0)>>0]|0)^(d[22220+(d[(c[e>>2]|0)+5>>0]|0)>>0]|0)^(d[22476+(d[(c[e>>2]|0)+6>>0]|0)>>0]|0)^(d[21708+(d[(c[e>>2]|0)+7>>0]|0)>>0]|0);a[g+8>>0]=(d[21708+(d[(c[e>>2]|0)+8>>0]|0)>>0]|0)^(d[21964+(d[(c[e>>2]|0)+9>>0]|0)>>0]|0)^(d[22220+(d[(c[e>>2]|0)+10>>0]|0)>>0]|0)^(d[22476+(d[(c[e>>2]|0)+11>>0]|0)>>0]|0);a[g+13>>0]=(d[22476+(d[(c[e>>2]|0)+8>>0]|0)>>0]|0)^(d[21708+(d[(c[e>>2]|0)+9>>0]|0)>>0]|0)^(d[21964+(d[(c[e>>2]|0)+10>>0]|0)>>0]|0)^(d[22220+(d[(c[e>>2]|0)+11>>0]|0)>>0]|0);a[g+2>>0]=(d[22220+(d[(c[e>>2]|0)+8>>0]|0)>>0]|0)^(d[22476+(d[(c[e>>2]|0)+9>>0]|0)>>0]|0)^(d[21708+(d[(c[e>>2]|0)+10>>0]|0)>>0]|0)^(d[21964+(d[(c[e>>2]|0)+11>>0]|0)>>0]|0);a[g+7>>0]=(d[21964+(d[(c[e>>2]|0)+8>>0]|0)>>0]|0)^(d[22220+(d[(c[e>>2]|0)+9>>0]|0)>>0]|0)^(d[22476+(d[(c[e>>2]|0)+10>>0]|0)>>0]|0)^(d[21708+(d[(c[e>>2]|0)+11>>0]|0)>>0]|0);a[g+12>>0]=(d[21708+(d[(c[e>>2]|0)+12>>0]|0)>>0]|0)^(d[21964+(d[(c[e>>2]|0)+13>>0]|0)>>0]|0)^(d[22220+(d[(c[e>>2]|0)+14>>0]|0)>>0]|0)^(d[22476+(d[(c[e>>2]|0)+15>>0]|0)>>0]|0);a[g+1>>0]=(d[22476+(d[(c[e>>2]|0)+12>>0]|0)>>0]|0)^(d[21708+(d[(c[e>>2]|0)+13>>0]|0)>>0]|0)^(d[21964+(d[(c[e>>2]|0)+14>>0]|0)>>0]|0)^(d[22220+(d[(c[e>>2]|0)+15>>0]|0)>>0]|0);a[g+6>>0]=(d[22220+(d[(c[e>>2]|0)+12>>0]|0)>>0]|0)^(d[22476+(d[(c[e>>2]|0)+13>>0]|0)>>0]|0)^(d[21708+(d[(c[e>>2]|0)+14>>0]|0)>>0]|0)^(d[21964+(d[(c[e>>2]|0)+15>>0]|0)>>0]|0);a[g+11>>0]=(d[21964+(d[(c[e>>2]|0)+12>>0]|0)>>0]|0)^(d[22220+(d[(c[e>>2]|0)+13>>0]|0)>>0]|0)^(d[22476+(d[(c[e>>2]|0)+14>>0]|0)>>0]|0)^(d[21708+(d[(c[e>>2]|0)+15>>0]|0)>>0]|0);c[f>>2]=0;while(1){if((c[f>>2]|0)>=16)break;a[(c[e>>2]|0)+(c[f>>2]|0)>>0]=a[21452+(d[g+(c[f>>2]|0)>>0]|0)>>0]|0;c[f>>2]=(c[f>>2]|0)+1}i=h;return}function Sp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;f=n+20|0;g=n+12|0;h=n+8|0;j=n+4|0;l=n+24|0;k=n;m=n+16|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;if(0==(c[f>>2]|0)|0==(c[h>>2]|0)){i=n;return}c[g>>2]=(c[g>>2]|0)<4096?c[g>>2]|0:4096;c[l>>2]=0;while(1){if((c[l>>2]|0)>=((c[g>>2]|0)/16|0|0))break;Tp(c[f>>2]|0,(c[h>>2]|0)+(c[j>>2]<<2<<2)|0);Qp(c[f>>2]|0);c[m>>2]=(c[j>>2]|0)-1;while(1){if((c[m>>2]|0)<=0)break;Tp(c[f>>2]|0,(c[h>>2]|0)+(c[m>>2]<<2<<2)|0);Rp(c[f>>2]|0);c[m>>2]=(c[m>>2]|0)+-1}c[k>>2]=5;Tp(c[f>>2]|0,c[h>>2]|0);c[f>>2]=(c[f>>2]|0)+16;c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=2;i=n;return}function Tp(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;h=i;i=i+16|0;f=h+4|0;g=h;c[f>>2]=b;c[g>>2]=e;if(0==(c[f>>2]|0)|0==(c[g>>2]|0)){i=h;return}b=c[f>>2]|0;a[b>>0]=(d[b>>0]|0)^(d[c[g>>2]>>0]|0);b=(c[f>>2]|0)+1|0;a[b>>0]=(d[b>>0]|0)^(d[(c[g>>2]|0)+1>>0]|0);b=(c[f>>2]|0)+2|0;a[b>>0]=(d[b>>0]|0)^(d[(c[g>>2]|0)+2>>0]|0);b=(c[f>>2]|0)+3|0;a[b>>0]=(d[b>>0]|0)^(d[(c[g>>2]|0)+3>>0]|0);b=(c[f>>2]|0)+4|0;a[b>>0]=(d[b>>0]|0)^(d[(c[g>>2]|0)+4>>0]|0);b=(c[f>>2]|0)+5|0;a[b>>0]=(d[b>>0]|0)^(d[(c[g>>2]|0)+5>>0]|0);b=(c[f>>2]|0)+6|0;a[b>>0]=(d[b>>0]|0)^(d[(c[g>>2]|0)+6>>0]|0);b=(c[f>>2]|0)+7|0;a[b>>0]=(d[b>>0]|0)^(d[(c[g>>2]|0)+7>>0]|0);b=(c[f>>2]|0)+8|0;a[b>>0]=(d[b>>0]|0)^(d[(c[g>>2]|0)+8>>0]|0);b=(c[f>>2]|0)+9|0;a[b>>0]=(d[b>>0]|0)^(d[(c[g>>2]|0)+9>>0]|0);b=(c[f>>2]|0)+10|0;a[b>>0]=(d[b>>0]|0)^(d[(c[g>>2]|0)+10>>0]|0);b=(c[f>>2]|0)+11|0;a[b>>0]=(d[b>>0]|0)^(d[(c[g>>2]|0)+11>>0]|0);b=(c[f>>2]|0)+12|0;a[b>>0]=(d[b>>0]|0)^(d[(c[g>>2]|0)+12>>0]|0);b=(c[f>>2]|0)+13|0;a[b>>0]=(d[b>>0]|0)^(d[(c[g>>2]|0)+13>>0]|0);b=(c[f>>2]|0)+14|0;a[b>>0]=(d[b>>0]|0)^(d[(c[g>>2]|0)+14>>0]|0);b=(c[f>>2]|0)+15|0;a[b>>0]=(d[b>>0]|0)^(d[(c[g>>2]|0)+15>>0]|0);i=h;return}function Up(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;a:do if((c[f>>2]|0)==0|(c[g>>2]|0)<4)c[e>>2]=0;else{if(((d[c[f>>2]>>0]|0|0)==0?(d[(c[f>>2]|0)+1>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+2>>0]|0|0)==1:0){if((d[(c[f>>2]|0)+3>>0]|0|0)!=182){do if((d[(c[f>>2]|0)+3>>0]|0|0)!=176){if((d[(c[f>>2]|0)+3>>0]|0|0)>=32?(d[(c[f>>2]|0)+3>>0]|0|0)<=47:0)break;c[e>>2]=4;break a}while(0);c[e>>2]=5;break}if((c[g>>2]|0)<5){c[e>>2]=0;break}switch((d[(c[f>>2]|0)+4>>0]|0)&192|0){case 0:{c[e>>2]=3;break a}case 64:{c[e>>2]=2;break a}case 128:{c[e>>2]=1;break a}default:{c[e>>2]=4;break a}}}c[e>>2]=0}while(0);i=h;return c[e>>2]|0}function Vp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;e=j+12|0;k=j+4|0;h=j+16|0;g=j+8|0;f=j;c[e>>2]=a;c[k>>2]=b;c[h>>2]=c[(c[e>>2]|0)+16>>2];c[g>>2]=c[(c[e>>2]|0)+12>>2];c[f>>2]=(c[h>>2]|0)>>>(32-(c[k>>2]|0)|0);c[h>>2]=c[h>>2]<<c[k>>2];c[g>>2]=(c[g>>2]|0)-(c[k>>2]|0);while(1){if((c[g>>2]|0)>>>0>24)break;b=(c[e>>2]|0)+8|0;k=c[b>>2]|0;c[b>>2]=k+1;c[h>>2]=c[h>>2]|(d[k>>0]|0)<<24-(c[g>>2]|0);c[g>>2]=(c[g>>2]|0)+8}c[(c[e>>2]|0)+12>>2]=c[g>>2];c[(c[e>>2]|0)+16>>2]=c[h>>2];i=j;return c[f>>2]|0}function Wp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+48|0;e=o+28|0;f=o+20|0;g=o+12|0;n=o+32|0;m=o+24|0;k=o+16|0;j=o+8|0;l=o+4|0;h=o;c[f>>2]=a;c[g>>2]=b;c[n>>2]=c[(c[f>>2]|0)+16>>2];c[m>>2]=c[(c[f>>2]|0)+12>>2];c[l>>2]=-2147483648;c[k>>2]=1;c[j>>2]=0;while(1){if((c[j>>2]|0)<16)b=(c[n>>2]&c[l>>2]|0)!=0^1;else b=0;a=c[k>>2]|0;if(!b)break;c[k>>2]=a+1;c[j>>2]=(c[j>>2]|0)+1;c[l>>2]=c[l>>2]>>1}c[m>>2]=(c[m>>2]|0)-a;c[n>>2]=c[n>>2]<<c[k>>2];while(1){if((c[m>>2]|0)>>>0>24)break;j=(c[f>>2]|0)+8|0;l=c[j>>2]|0;c[j>>2]=l+1;c[n>>2]=c[n>>2]|(d[l>>0]|0)<<24-(c[m>>2]|0);c[m>>2]=(c[m>>2]|0)+8}if((c[k>>2]|0)>>>0<=1){c[c[g>>2]>>2]=0;c[(c[f>>2]|0)+12>>2]=c[m>>2];c[(c[f>>2]|0)+16>>2]=c[n>>2];c[e>>2]=1;c[h>>2]=1;n=c[e>>2]|0;i=o;return n|0}c[c[g>>2]>>2]=(c[n>>2]|0)>>>(32-((c[k>>2]|0)-1)|0);c[m>>2]=(c[m>>2]|0)-((c[k>>2]|0)-1);c[n>>2]=c[n>>2]<<(c[k>>2]|0)-1;while(1){if((c[m>>2]|0)>>>0>24)break;j=(c[f>>2]|0)+8|0;l=c[j>>2]|0;c[j>>2]=l+1;c[n>>2]=c[n>>2]|(d[l>>0]|0)<<24-(c[m>>2]|0);c[m>>2]=(c[m>>2]|0)+8}c[(c[f>>2]|0)+12>>2]=c[m>>2];c[(c[f>>2]|0)+16>>2]=c[n>>2];c[e>>2]=(c[k>>2]|0)+(c[k>>2]|0)-1;c[h>>2]=1;n=c[e>>2]|0;i=o;return n|0}function Xp(a){a=a|0;var b=0,d=0,e=0,f=0;e=i;i=i+16|0;f=e+4|0;d=e+8|0;b=e;c[f>>2]=a;c[d>>2]=Wp(c[f>>2]|0,b)|0;i=e;return (1<<((c[d>>2]|0)>>>1))+(c[b>>2]|0)-1|0}function Yp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;h=d+12|0;g=d+16|0;f=d+8|0;e=d+4|0;b=d;c[h>>2]=a;c[g>>2]=Wp(c[h>>2]|0,f)|0;c[e>>2]=(1<<((c[g>>2]|0)>>>1))+(c[f>>2]|0)-1;c[b>>2]=(c[e>>2]|0)+1>>1;if(c[e>>2]&1|0){h=c[b>>2]|0;i=d;return h|0}c[b>>2]=0-(c[b>>2]|0);h=c[b>>2]|0;i=d;return h|0}function Zp(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+48|0;f=m+16|0;g=m+8|0;h=m+4|0;k=m+20|0;l=m+12|0;j=m;c[g>>2]=b;c[h>>2]=e;a:do if((c[g>>2]|0)==0|(c[h>>2]|0)<5)c[f>>2]=0;else{if((((d[c[g>>2]>>0]|0|0)==0?(d[(c[g>>2]|0)+1>>0]|0|0)==0:0)?(d[(c[g>>2]|0)+2>>0]|0|0)==0:0)?(d[(c[g>>2]|0)+3>>0]|0|0)==1:0)switch((d[(c[g>>2]|0)+4>>0]|0)&31|0){case 1:{b=k;e=b+20|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(e|0));_p(k,(c[g>>2]|0)+5|0,(c[h>>2]|0)-5|0);Xp(k)|0;c[l>>2]=Xp(k)|0;if((c[l>>2]|0)>>>0>=5)c[l>>2]=(c[l>>2]|0)-5;if((c[l>>2]|0)==1){c[f>>2]=1;c[j>>2]=1}else{c[f>>2]=2;c[j>>2]=1}break a}case 5:{c[f>>2]=3;break a}case 7:{c[f>>2]=5;break a}case 9:{c[f>>2]=6;break a}default:{c[f>>2]=4;break a}}c[f>>2]=0}while(0);i=m;return c[f>>2]|0}function _p(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;j=f+4|0;h=f;c[g>>2]=a;c[j>>2]=b;c[h>>2]=e;c[(c[g>>2]|0)+12>>2]=32;c[c[g>>2]>>2]=c[j>>2];c[(c[g>>2]|0)+16>>2]=((d[c[c[g>>2]>>2]>>0]|0)<<24)+((d[(c[c[g>>2]>>2]|0)+1>>0]|0)<<16)+((d[(c[c[g>>2]>>2]|0)+2>>0]|0)<<8)+(d[(c[c[g>>2]>>2]|0)+3>>0]|0);c[(c[g>>2]|0)+8>>2]=(c[c[g>>2]>>2]|0)+4;c[(c[g>>2]|0)+4>>2]=(c[c[g>>2]>>2]|0)+(c[h>>2]|0);i=f;return}function $p(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;e=k+8|0;g=k+20|0;f=k+12|0;h=k+4|0;j=k;c[d>>2]=a;c[e>>2]=b;c[h>>2]=8;c[j>>2]=8;c[g>>2]=0;while(1){if((c[g>>2]|0)>=(c[d>>2]|0))break;if(c[j>>2]|0){c[f>>2]=Yp(c[e>>2]|0)|0;c[j>>2]=((c[h>>2]|0)+(c[f>>2]|0)+256|0)%256|0}c[h>>2]=(c[j>>2]|0)==0?c[h>>2]|0:c[j>>2]|0;c[g>>2]=(c[g>>2]|0)+1}i=k;return}function aq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+16|0;f=l+8|0;h=l+20|0;j=l+12|0;g=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[k>>2]=0;c[j>>2]=0;c[g>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break;if((c[g>>2]|0)==2?(d[(c[e>>2]|0)+(c[j>>2]|0)>>0]|0|0)==3:0){Ux((c[e>>2]|0)+(c[j>>2]|0)|0,(c[e>>2]|0)+((c[j>>2]|0)+1)|0,(c[f>>2]|0)-(c[h>>2]|0)-1|0)|0;c[g>>2]=0;c[h>>2]=(c[h>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+1}if(!(d[(c[e>>2]|0)+(c[j>>2]|0)>>0]|0))c[g>>2]=(c[g>>2]|0)+1;else c[g>>2]=0;c[j>>2]=(c[j>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+1}i=l;return c[k>>2]|0}function bq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+64|0;j=q+44|0;k=q+36|0;l=q+28|0;d=q+48|0;n=q+40|0;r=q+32|0;o=q+20|0;p=q+16|0;h=q+12|0;e=q+8|0;f=q+4|0;m=q;c[k>>2]=a;c[l>>2]=b;c[r>>2]=Vp(c[k>>2]|0,8)|0;Vp(c[k>>2]|0,4)|0;Vp(c[k>>2]|0,4)|0;c[q+24>>2]=Vp(c[k>>2]|0,8)|0;Xp(c[k>>2]|0)|0;if((c[r>>2]|0)==100|(c[r>>2]|0)==110|(c[r>>2]|0)==122|(c[r>>2]|0)==144){if((Xp(c[k>>2]|0)|0)==3)Vp(c[k>>2]|0,1)|0;Xp(c[k>>2]|0)|0;Xp(c[k>>2]|0)|0;Vp(c[k>>2]|0,1)|0;if(Vp(c[k>>2]|0,1)|0){c[f>>2]=8;c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[f>>2]|0))break;do if(Vp(c[k>>2]|0,1)|0){a=c[k>>2]|0;if((c[e>>2]|0)<6){$p(16,a);break}else{$p(64,a);break}}while(0);c[e>>2]=(c[e>>2]|0)+1}}}r=Xp(c[k>>2]|0)|0;c[(c[l>>2]|0)+24>>2]=r;c[d>>2]=Xp(c[k>>2]|0)|0;a:do if(!(c[d>>2]|0))Xp(c[k>>2]|0)|0;else{if((c[d>>2]|0)!=1){if((c[d>>2]|0)==2)break;c[j>>2]=0;c[m>>2]=1;r=c[j>>2]|0;i=q;return r|0}Vp(c[k>>2]|0,1)|0;Yp(c[k>>2]|0)|0;Yp(c[k>>2]|0)|0;c[h>>2]=Xp(c[k>>2]|0)|0;if((c[h>>2]|0)>16){c[j>>2]=0;c[m>>2]=1;r=c[j>>2]|0;i=q;return r|0}c[e>>2]=0;while(1){if((c[e>>2]|0)>=(c[h>>2]|0))break a;Yp(c[k>>2]|0)|0;c[e>>2]=(c[e>>2]|0)+1}}while(0);Xp(c[k>>2]|0)|0;Vp(c[k>>2]|0,1)|0;a=(Xp(c[k>>2]|0)|0)+1<<4;c[c[l>>2]>>2]=a;a=(Xp(c[k>>2]|0)|0)+1<<4;c[(c[l>>2]|0)+4>>2]=a;c[n>>2]=Vp(c[k>>2]|0,1)|0;a=(c[l>>2]|0)+12|0;if(c[n>>2]|0)c[a>>2]=0;else{c[a>>2]=1;r=(c[l>>2]|0)+4|0;c[r>>2]=c[r>>2]<<1;Vp(c[k>>2]|0,1)|0}Vp(c[k>>2]|0,1)|0;if(Vp(c[k>>2]|0,1)|0){Xp(c[k>>2]|0)|0;Xp(c[k>>2]|0)|0;Xp(c[k>>2]|0)|0;Xp(c[k>>2]|0)|0}do if(Vp(c[k>>2]|0,1)|0){if(Vp(c[k>>2]|0,1)|0?(Vp(c[k>>2]|0,8)|0)==255:0){Vp(c[k>>2]|0,16)|0;Vp(c[k>>2]|0,16)|0}if(Vp(c[k>>2]|0,1)|0)Vp(c[k>>2]|0,1)|0;if(Vp(c[k>>2]|0,1)|0?(Vp(c[k>>2]|0,3)|0,Vp(c[k>>2]|0,1)|0,Vp(c[k>>2]|0,1)|0):0){Vp(c[k>>2]|0,8)|0;Vp(c[k>>2]|0,8)|0;Vp(c[k>>2]|0,8)|0}if(Vp(c[k>>2]|0,1)|0){Xp(c[k>>2]|0)|0;Xp(c[k>>2]|0)|0}if(Vp(c[k>>2]|0,1)|0){c[o>>2]=(Vp(c[k>>2]|0,16)|0)<<16;r=Vp(c[k>>2]|0,16)|0;c[o>>2]=(c[o>>2]|0)+r;c[p>>2]=(Vp(c[k>>2]|0,16)|0)<<16;r=Vp(c[k>>2]|0,16)|0;c[p>>2]=(c[p>>2]|0)+r;if((c[o>>2]|0)>>>0>0){g[(c[l>>2]|0)+20>>2]=+((c[p>>2]|0)>>>0)/+(c[o>>2]<<1>>>0);break}else{g[(c[l>>2]|0)+20>>2]=25.0;break}}}while(0);c[j>>2]=1;c[m>>2]=1;r=c[j>>2]|0;i=q;return r|0}function cq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+64|0;k=n+28|0;e=n+20|0;f=n+12|0;g=n+4|0;h=n+24|0;j=n+16|0;l=n;m=n+8|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=n+32;c[j>>2]=0;d=c[g>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;c[(c[g>>2]|0)+8>>2]=1;if((c[f>>2]|0)>>>0<=5|0==(c[e>>2]|0)){c[k>>2]=0;c[l>>2]=1;m=c[k>>2]|0;i=n;return m|0}c[m>>2]=_w((c[f>>2]|0)-5+1024|0)|0;do if(c[m>>2]|0){Ox(c[m>>2]|0,-1,(c[f>>2]|0)-5+1024|0)|0;Tx(c[m>>2]|0,(c[e>>2]|0)+5|0,(c[f>>2]|0)-5|0)|0;d=0-(aq(c[m>>2]|0,(c[f>>2]|0)-5|0)|0)|0;c[j>>2]=d+(c[f>>2]|0)-5;_p(c[h>>2]|0,c[m>>2]|0,c[j>>2]|0);d=(bq(c[h>>2]|0,c[g>>2]|0)|0)!=0;e=0!=(c[m>>2]|0);if(d){if(e){$w(c[m>>2]|0);c[m>>2]=0}c[k>>2]=1;c[l>>2]=1;break}else{if(e){$w(c[m>>2]|0);c[m>>2]=0}c[k>>2]=0;c[l>>2]=1;break}}else{c[k>>2]=0;c[l>>2]=1}while(0);m=c[k>>2]|0;i=n;return m|0}function dq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;e=g+20|0;h=g+12|0;k=g+8|0;j=g+16|0;f=g;c[h>>2]=a;c[k>>2]=b;c[g+4>>2]=d;c[j>>2]=g+24;d=c[h>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[(c[j>>2]|0)+4>>2]=(c[k>>2]|0)+4;c[c[j>>2]>>2]=0;if(eq(c[j>>2]|0,c[h>>2]|0)|0){c[e>>2]=1;c[f>>2]=1;k=c[e>>2]|0;i=g;return k|0}else{c[e>>2]=0;c[f>>2]=1;k=c[e>>2]|0;i=g;return k|0}return 0}function eq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;m=q+36|0;h=q+28|0;n=q+20|0;e=q+40|0;f=q+32|0;d=q+24|0;j=q+16|0;l=q+12|0;k=q+8|0;p=q+4|0;o=q;c[h>>2]=a;c[n>>2]=b;fq(c[h>>2]|0,1);fq(c[h>>2]|0,8);c[e>>2]=42;if(gq(c[h>>2]|0)|0){c[f>>2]=hq(c[h>>2]|0,4)|0;fq(c[h>>2]|0,3);c[e>>2]=(c[e>>2]|0)+7}else c[f>>2]=1;c[d>>2]=hq(c[h>>2]|0,4)|0;c[e>>2]=(c[e>>2]|0)+4;if((c[d>>2]|0)==15){hq(c[h>>2]|0,8)|0;hq(c[h>>2]|0,8)|0;c[e>>2]=(c[e>>2]|0)+16}c[e>>2]=(c[e>>2]|0)+1;if(gq(c[h>>2]|0)|0){fq(c[h>>2]|0,2);b=gq(c[h>>2]|0)|0;c[(c[n>>2]|0)+8>>2]=b;c[e>>2]=(c[e>>2]|0)+4;if(gq(c[h>>2]|0)|0){hq(c[h>>2]|0,15)|0;fq(c[h>>2]|0,1);hq(c[h>>2]|0,15)|0;fq(c[h>>2]|0,1);hq(c[h>>2]|0,15)|0;fq(c[h>>2]|0,1);hq(c[h>>2]|0,3)|0;hq(c[h>>2]|0,11)|0;fq(c[h>>2]|0,1);hq(c[h>>2]|0,15)|0;fq(c[h>>2]|0,1);c[e>>2]=(c[e>>2]|0)+79}}else c[(c[n>>2]|0)+8>>2]=1;c[j>>2]=hq(c[h>>2]|0,2)|0;if((c[j>>2]|0)==3&(c[f>>2]|0)!=1)fq(c[h>>2]|0,4);fq(c[h>>2]|0,1);c[l>>2]=hq(c[h>>2]|0,16)|0;if((c[l>>2]|0)>0){if((iq((c[l>>2]|0)-1|0)|0)>>>0>1)d=iq((c[l>>2]|0)-1|0)|0;else d=1;c[k>>2]=d}else c[k>>2]=1;fq(c[h>>2]|0,1);g[(c[n>>2]|0)+16>>2]=40.0;do if(gq(c[h>>2]|0)|0?(c[k>>2]=hq(c[h>>2]|0,c[k>>2]|0)|0,(c[l>>2]|0)>0):0)if((c[k>>2]|0)==1){g[(c[n>>2]|0)+16>>2]=+(c[k>>2]|0)*1.0e3/+(c[l>>2]|0);break}else{g[(c[n>>2]|0)+16>>2]=1.0e6/+(c[l>>2]|0);break}while(0);if(!(c[j>>2]|0)){fq(c[h>>2]|0,1);l=hq(c[h>>2]|0,13)|0;c[c[n>>2]>>2]=l;fq(c[h>>2]|0,1);l=hq(c[h>>2]|0,13)|0;c[(c[n>>2]|0)+4>>2]=l;fq(c[h>>2]|0,1)}c[p>>2]=gq(c[h>>2]|0)|0;d=(c[n>>2]|0)+12|0;if((c[p>>2]|0)==1)c[d>>2]=1;else c[d>>2]=0;if((c[c[n>>2]>>2]|0)>>>0>=32?(c[(c[n>>2]|0)+4>>2]|0)>>>0>=32:0){c[m>>2]=1;c[o>>2]=1;p=c[m>>2]|0;i=q;return p|0}c[m>>2]=0;c[o>>2]=1;p=c[m>>2]|0;i=q;return p|0}function fq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;a=c[e>>2]|0;c[a>>2]=(c[a>>2]|0)+(c[f>>2]|0);a=(c[e>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+(c[c[e>>2]>>2]>>3);a=c[e>>2]|0;c[a>>2]=c[a>>2]&7;i=d;return}function gq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=hq(c[d>>2]|0,1)|0;i=b;return a|0}function hq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;g=f+8|0;h=f;j=f+12|0;e=f+4|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=((d[(c[(c[g>>2]|0)+4>>2]|0)+3>>0]|0)<<24)+((d[(c[(c[g>>2]|0)+4>>2]|0)+2>>0]|0)<<16)+((d[(c[(c[g>>2]|0)+4>>2]|0)+1>>0]|0)<<8)+(d[c[(c[g>>2]|0)+4>>2]>>0]|0);c[j>>2]=(c[j>>2]|0)>>>24&255|(c[j>>2]|0)>>>8&65280|(c[j>>2]&255)<<24|(c[j>>2]&65280)<<8;c[e>>2]=c[j>>2]<<c[c[g>>2]>>2]>>>(32-(c[h>>2]|0)|0);b=c[g>>2]|0;c[b>>2]=(c[b>>2]|0)+(c[h>>2]|0);b=(c[g>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+(c[c[g>>2]>>2]>>3);b=c[g>>2]|0;c[b>>2]=c[b>>2]&7;i=f;return c[e>>2]|0}function iq(a){a=a|0;var b=0,e=0,f=0;f=i;i=i+16|0;b=f;e=f+4|0;c[b>>2]=a;c[e>>2]=0;if(c[b>>2]&-65536|0){c[b>>2]=(c[b>>2]|0)>>>16;c[e>>2]=(c[e>>2]|0)+16}if(c[b>>2]&65280|0){c[b>>2]=(c[b>>2]|0)>>>8;c[e>>2]=(c[e>>2]|0)+8}if(c[b>>2]&240|0){c[b>>2]=(c[b>>2]|0)>>>4;c[e>>2]=(c[e>>2]|0)+4}i=f;return (c[e>>2]|0)+(d[22732+(c[b>>2]|0)>>0]|0)|0}function jq(a,b){a=a|0;b=b|0;b=i;i=i+16|0;c[b>>2]=a;i=b;return}function kq(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16|0;b=f+4|0;d=f;c[d>>2]=a;a:do switch(c[(c[d>>2]|0)+4>>2]|0){case 12:case 10:case 8:case 7:case 5:case 3:case 1:{if((c[(c[d>>2]|0)+8>>2]|0)>>>0<=31)c[b>>2]=0;else e=14;break}case 11:case 9:case 6:case 4:{if((c[(c[d>>2]|0)+8>>2]|0)>>>0<=30)c[b>>2]=0;else e=14;break}case 2:{if(!((((c[c[d>>2]>>2]|0)>>>0)%4|0|0)==0?(((c[c[d>>2]>>2]|0)>>>0)%100|0|0)!=0:0))e=8;if((e|0)==8?((c[c[d>>2]>>2]|0)>>>0)%400|0|0:0){if((c[(c[d>>2]|0)+8>>2]|0)>>>0>28){e=14;break a}c[b>>2]=0;break a}if((c[(c[d>>2]|0)+8>>2]|0)>>>0<=29)c[b>>2]=0;else e=14;break}default:c[b>>2]=0}while(0);if((e|0)==14)c[b>>2]=1;i=f;return c[b>>2]|0}function lq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;l=k+16|0;e=k+8|0;f=k+4|0;h=k+20|0;j=k+12|0;g=k;c[l>>2]=a;c[e>>2]=b;c[f>>2]=d;c[h>>2]=0;c[j>>2]=c[l>>2];if((c[e>>2]|0)>>>0<(c[f>>2]|0)>>>0)c[h>>2]=47721858-(c[f>>2]|0)+(c[e>>2]|0)+1;else c[h>>2]=(c[e>>2]|0)-(c[f>>2]|0);l=(c[j>>2]|0)+24|0;c[l>>2]=(c[l>>2]|0)+(c[h>>2]|0);if((c[(c[j>>2]|0)+24>>2]|0)>>>0<1e3){c[g>>2]=1;i=k;return}l=(c[j>>2]|0)+20|0;c[l>>2]=(c[l>>2]|0)+(((c[(c[j>>2]|0)+24>>2]|0)>>>0)/1e3|0);l=(c[j>>2]|0)+24|0;c[l>>2]=((c[l>>2]|0)>>>0)%1e3|0;if((c[(c[j>>2]|0)+20>>2]|0)>>>0<60){c[g>>2]=1;i=k;return}l=(c[j>>2]|0)+16|0;c[l>>2]=(c[l>>2]|0)+(((c[(c[j>>2]|0)+20>>2]|0)>>>0)/60|0);l=(c[j>>2]|0)+20|0;c[l>>2]=((c[l>>2]|0)>>>0)%60|0;if((c[(c[j>>2]|0)+16>>2]|0)>>>0<60){c[g>>2]=1;i=k;return}l=(c[j>>2]|0)+12|0;c[l>>2]=(c[l>>2]|0)+(((c[(c[j>>2]|0)+16>>2]|0)>>>0)/60|0);l=(c[j>>2]|0)+16|0;c[l>>2]=((c[l>>2]|0)>>>0)%60|0;if((c[(c[j>>2]|0)+12>>2]|0)>>>0<24){c[g>>2]=1;i=k;return}l=(c[j>>2]|0)+8|0;c[l>>2]=(c[l>>2]|0)+(((c[(c[j>>2]|0)+12>>2]|0)>>>0)/24|0);l=(c[j>>2]|0)+12|0;c[l>>2]=((c[l>>2]|0)>>>0)%24|0;if(!(kq(c[j>>2]|0)|0)){c[g>>2]=1;i=k;return}c[(c[j>>2]|0)+8>>2]=1;l=(c[j>>2]|0)+4|0;c[l>>2]=(c[l>>2]|0)+1;if((c[(c[j>>2]|0)+4>>2]|0)>>>0<=12){c[g>>2]=1;i=k;return}else{c[(c[j>>2]|0)+4>>2]=1;l=c[j>>2]|0;c[l>>2]=(c[l>>2]|0)+1;c[g>>2]=0;i=k;return}}function mq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;n=m;l=m+20|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[n>>2]=f;c[l>>2]=c[n>>2];e=(c[l>>2]|0)+92|0;if(!(c[(c[l>>2]|0)+92+4>>2]|0)){if(c[e+8>>2]|0){n=nq(c[(c[l>>2]|0)+92+8>>2]|0)|0;c[c[g>>2]>>2]=n}}else c[c[g>>2]>>2]=c[e+4>>2];if(c[(c[l>>2]|0)+92+12>>2]|0)c[c[h>>2]>>2]=c[(c[l>>2]|0)+92+12>>2];if(c[(c[l>>2]|0)+92+16>>2]|0)c[c[j>>2]>>2]=c[(c[l>>2]|0)+92+16>>2];if(!(c[(c[l>>2]|0)+92+20>>2]|0)){i=m;return 0}c[c[k>>2]>>2]=c[(c[l>>2]|0)+92+20>>2];i=m;return 0}function nq(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d;b=d+4|0;c[e>>2]=a;c[b>>2]=0;do switch(c[e>>2]|0){case 2:{c[b>>2]=2;break}case 16:{c[b>>2]=3;break}case 27:{c[b>>2]=256;break}case 176:{c[b>>2]=1;break}case 128:{c[b>>2]=6;break}case 177:{c[b>>2]=4;break}case 3:case 4:{c[b>>2]=8192;break}case 15:{c[b>>2]=8193;break}case 144:{c[b>>2]=28945;break}case 145:{c[b>>2]=28944;break}case 146:{c[b>>2]=29217;break}case 147:{c[b>>2]=29233;break}case 150:{c[b>>2]=29280;break}case 152:{c[b>>2]=29282;break}case 153:{c[b>>2]=29328;break}case 156:{c[b>>2]=28673;break}default:c[b>>2]=0}while(0);i=d;return c[b>>2]|0}function oq(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;d=e+4|0;c[b>>2]=a;c[d>>2]=0;while(1){if((c[d>>2]|0)>=13)break;if((c[3036+(c[d>>2]<<2)>>2]|0)==(c[b>>2]|0))break;c[d>>2]=(c[d>>2]|0)+1}if((c[d>>2]|0)<13){a=c[d>>2]|0;i=e;return a|0}c[d>>2]=8;a=c[d>>2]|0;i=e;return a|0}function pq(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d;b=d+4|0;c[e>>2]=a;c[b>>2]=0;switch(c[e>>2]|0){case 1:{c[b>>2]=3;break}case 2:{c[b>>2]=1;break}case 3:{c[b>>2]=0;break}case 4:{c[b>>2]=4;break}case 5:{c[b>>2]=5;break}default:{}}i=d;return c[b>>2]|0}function qq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+48|0;e=g+20|0;h=g+12|0;l=g+8|0;k=g+4|0;j=g+16|0;f=g;c[h>>2]=a;c[l>>2]=b;c[k>>2]=d;c[j>>2]=g+24;d=c[h>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;rq(c[j>>2]|0,(c[l>>2]|0)+3+1|0,(c[k>>2]|0)-3-1|0);if(sq(c[j>>2]|0,c[h>>2]|0)|0){c[e>>2]=1;c[f>>2]=1;l=c[e>>2]|0;i=g;return l|0}else{c[e>>2]=0;c[f>>2]=1;l=c[e>>2]|0;i=g;return l|0}return 0}function rq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e+4|0;g=e;c[f>>2]=a;c[h>>2]=b;c[g>>2]=d;c[(c[f>>2]|0)+4>>2]=0;c[(c[f>>2]|0)+8>>2]=c[h>>2];c[c[f>>2]>>2]=c[h>>2];c[(c[f>>2]|0)+12>>2]=c[g>>2]<<3;c[(c[f>>2]|0)+16>>2]=(c[h>>2]|0)+(c[g>>2]|0);i=e;return}function sq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+48|0;d=o+40|0;e=o+32|0;f=o+24|0;k=o+44|0;h=o+36|0;m=o+28|0;j=o+20|0;n=o+16|0;p=o+12|0;g=o;l=o+4|0;c[e>>2]=a;c[f>>2]=b;c[p>>2]=tq(c[e>>2]|0,8)|0;tq(c[e>>2]|0,1)|0;tq(c[e>>2]|0,1)|0;tq(c[e>>2]|0,1)|0;tq(c[e>>2]|0,1)|0;tq(c[e>>2]|0,4)|0;c[o+8>>2]=tq(c[e>>2]|0,8)|0;uq(c[e>>2]|0)|0;if((c[p>>2]|0)==100|(c[p>>2]|0)==110|(c[p>>2]|0)==122|(c[p>>2]|0)==144){if((uq(c[e>>2]|0)|0)!=1){c[d>>2]=0;c[g>>2]=1;p=c[d>>2]|0;i=o;return p|0}if((tq(c[e>>2]|0,1)|0)!=1){c[d>>2]=0;c[g>>2]=1;p=c[d>>2]|0;i=o;return p|0}if((tq(c[e>>2]|0,1)|0)!=1){c[d>>2]=0;c[g>>2]=1;p=c[d>>2]|0;i=o;return p|0}if(tq(c[e>>2]|0,1)|0){c[d>>2]=0;c[g>>2]=1;p=c[d>>2]|0;i=o;return p|0}if(tq(c[e>>2]|0,1)|0){c[d>>2]=0;c[g>>2]=1;p=c[d>>2]|0;i=o;return p|0}}c[h>>2]=uq(c[e>>2]|0)|0;c[n>>2]=uq(c[e>>2]|0)|0;a:do if(!(c[n>>2]|0))c[h>>2]=uq(c[e>>2]|0)|0;else{if((c[n>>2]|0)!=1){if((c[n>>2]|0)==2)break;c[d>>2]=0;c[g>>2]=1;p=c[d>>2]|0;i=o;return p|0}tq(c[e>>2]|0,1)|0;vq(c[e>>2]|0)|0;vq(c[e>>2]|0)|0;c[m>>2]=uq(c[e>>2]|0)|0;if((c[m>>2]|0)>=16){c[d>>2]=0;c[g>>2]=1;p=c[d>>2]|0;i=o;return p|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[m>>2]|0))break a;vq(c[e>>2]|0)|0;c[k>>2]=(c[k>>2]|0)+1}}while(0);uq(c[e>>2]|0)|0;tq(c[e>>2]|0,1)|0;p=(uq(c[e>>2]|0)|0)+1<<4;c[c[f>>2]>>2]=p;p=(uq(c[e>>2]|0)|0)+1<<4;c[(c[f>>2]|0)+4>>2]=p;c[j>>2]=tq(c[e>>2]|0,1)|0;if(!(c[j>>2]|0)){c[(c[f>>2]|0)+8>>2]=1;p=(c[f>>2]|0)+4|0;c[p>>2]=c[p>>2]<<1;c[l>>2]=tq(c[e>>2]|0,1)|0;c[l>>2]=1}c[d>>2]=1;c[g>>2]=1;p=c[d>>2]|0;i=o;return p|0}function tq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;e=k+20|0;f=k+12|0;l=k+4|0;j=k+24|0;m=k+16|0;h=k+8|0;g=k;c[f>>2]=a;c[l>>2]=b;c[h>>2]=0;c[m>>2]=((d[c[c[f>>2]>>2]>>0]|0)<<24)+((d[(c[c[f>>2]>>2]|0)+1>>0]|0)<<16)+((d[(c[c[f>>2]>>2]|0)+2>>0]|0)<<8)+((d[(c[c[f>>2]>>2]|0)+3>>0]|0)<<0);c[j>>2]=c[m>>2]<<c[(c[f>>2]|0)+4>>2]>>>(32-(c[l>>2]|0)|0);b=(c[f>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+(c[l>>2]|0);c[h>>2]=(c[(c[f>>2]|0)+4>>2]|0)>>>3;if((c[h>>2]|0)>>>0>((c[(c[f>>2]|0)+16>>2]|0)-(c[c[f>>2]>>2]|0)|0)>>>0){c[e>>2]=-1;c[g>>2]=1;m=c[e>>2]|0;i=k;return m|0}else{m=c[f>>2]|0;c[m>>2]=(c[m>>2]|0)+(c[h>>2]|0);m=(c[f>>2]|0)+4|0;c[m>>2]=c[m>>2]&7;c[e>>2]=c[j>>2];c[g>>2]=1;m=c[e>>2]|0;i=k;return m|0}return 0}function uq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;b=h+12|0;d=h+4|0;g=h+16|0;f=h+8|0;e=h;c[d>>2]=a;c[g>>2]=0;while(1){j=(tq(c[d>>2]|0,1)|0)!=0^1;a=c[g>>2]|0;if(!j)break;c[g>>2]=a+1}if(!a){c[b>>2]=0;c[e>>2]=1;j=c[b>>2]|0;i=h;return j|0}else{c[f>>2]=tq(c[d>>2]|0,c[g>>2]|0)|0;c[b>>2]=(1<<c[g>>2])+(c[f>>2]|0)-1;c[e>>2]=1;j=c[b>>2]|0;i=h;return j|0}return 0}function vq(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;b=d+8|0;e=d;c[f>>2]=a;c[e>>2]=uq(c[f>>2]|0)|0;a=c[e>>2]|0;c[b>>2]=c[e>>2]&1|0?(a+1|0)>>>1:0-(a>>>1)|0;i=d;return c[b>>2]|0}function wq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+48|0;e=n+40|0;f=n+32|0;g=n+8|0;h=n;m=n+44|0;l=n+36|0;j=n+12|0;k=n+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if((c[g>>2]|0)<((c[h>>2]|0)+1|0)){c[e>>2]=-1;m=c[e>>2]|0;i=n;return m|0}if(4==(c[h>>2]|0)){c[k>>2]=j;rq(c[k>>2]|0,(c[f>>2]|0)+(c[h>>2]|0)+1|0,(c[g>>2]|0)-(c[h>>2]|0)-1|0);c[l>>2]=uq(c[k>>2]|0)|0;c[m>>2]=uq(c[k>>2]|0)|0;c[e>>2]=c[m>>2];m=c[e>>2]|0;i=n;return m|0}if(3==(c[h>>2]|0)){c[k>>2]=j;rq(c[k>>2]|0,(c[f>>2]|0)+(c[h>>2]|0)+1|0,(c[g>>2]|0)-(c[h>>2]|0)-1|0);c[l>>2]=uq(c[k>>2]|0)|0;c[m>>2]=uq(c[k>>2]|0)|0;c[e>>2]=c[m>>2];m=c[e>>2]|0;i=n;return m|0}else{c[e>>2]=1;m=c[e>>2]|0;i=n;return m|0}return 0}function xq(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;g=p+20|0;h=p+16|0;j=p+12|0;k=p+8|0;l=p+4|0;n=p+24|0;m=p;c[h>>2]=a;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;if(0==(c[j>>2]|0)|0==(c[k>>2]|0)){c[g>>2]=-2147483645;o=c[g>>2]|0;i=p;return o|0}c[n>>2]=0;switch(c[h>>2]|0){case 256:{c[n>>2]=yq(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;o=11;break}case 1:{c[n>>2]=Aq(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;o=11;break}case 3:{c[n>>2]=Bq(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;o=11;break}case 4:{b[(c[l>>2]|0)+4>>1]=3;o=11;break}case 6:{c[n>>2]=Dq(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;o=11;break}case 5:{c[n>>2]=Eq(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;o=11;break}default:{c[g>>2]=-2147483647;c[m>>2]=1}}if((o|0)==11){c[g>>2]=c[n>>2];c[m>>2]=1}o=c[g>>2]|0;i=p;return o|0}function yq(a,e,f){a=a|0;e=e|0;f=f|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=i;i=i+64|0;h=t+56|0;j=t+48|0;k=t+40|0;l=t+32|0;q=t+60|0;n=t+52|0;p=t+44|0;o=t+36|0;m=t;r=t+4|0;c[j>>2]=a;c[k>>2]=e;c[l>>2]=f;if((c[k>>2]|0)>>>0<5){c[h>>2]=-2147483645;s=c[h>>2]|0;i=t;return s|0}if(!(((0==(d[c[j>>2]>>0]|0|0)?0==(d[(c[j>>2]|0)+1>>0]|0|0):0)?0==(d[(c[j>>2]|0)+2>>0]|0|0):0)?1==(d[(c[j>>2]|0)+3>>0]|0|0):0))s=7;do if((s|0)==7){if((0==(d[c[j>>2]>>0]|0|0)?0==(d[(c[j>>2]|0)+1>>0]|0|0):0)?1==(d[(c[j>>2]|0)+2>>0]|0|0):0)break;c[h>>2]=-2147483645;s=c[h>>2]|0;i=t;return s|0}while(0);c[q>>2]=c[j>>2];c[n>>2]=c[k>>2];c[p>>2]=0;c[o>>2]=0;a:while(1){if((((d[c[q>>2]>>0]|0|0)==0?(d[(c[q>>2]|0)+1>>0]|0|0)==0:0)?(d[(c[q>>2]|0)+2>>0]|0|0)==0:0)?(d[(c[q>>2]|0)+3>>0]|0|0)==1:0){c[p>>2]=(d[(c[q>>2]|0)+4>>0]|0)&31;c[o>>2]=4}else s=17;if((((s|0)==17?(s=0,(d[c[q>>2]>>0]|0|0)==0):0)?(d[(c[q>>2]|0)+1>>0]|0|0)==0:0)?(d[(c[q>>2]|0)+2>>0]|0|0)==1:0){c[p>>2]=(d[(c[q>>2]|0)+3>>0]|0)&31;c[o>>2]=3}switch(c[p>>2]|0){case 5:case 1:{s=22;break a}case 7:{c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[r+16>>2]=0;c[r+20>>2]=0;c[r+24>>2]=0;if(1==(cq(c[q>>2]|0,c[n>>2]|0,r)|0)){b[c[l>>2]>>1]=c[r>>2];b[(c[l>>2]|0)+2>>1]=c[r+4>>2];b[(c[l>>2]|0)+6>>1]=c[r+12>>2];g[(c[l>>2]|0)+8>>2]=+g[r+20>>2]}c[m>>2]=4;break}default:{}}c[r>>2]=zq((c[q>>2]|0)+(c[o>>2]|0)|0,(c[n>>2]|0)-(c[o>>2]|0)|0)|0;if((c[r>>2]|0)<0)c[m>>2]=3;else{c[q>>2]=(c[q>>2]|0)+((c[o>>2]|0)+(c[r>>2]|0));c[n>>2]=(c[n>>2]|0)-((c[o>>2]|0)+(c[r>>2]|0));c[m>>2]=0}if((c[m>>2]|0)>>>0>=1){s=35;break}}b:do if((s|0)==22){switch(wq(c[q>>2]|0,c[n>>2]|0,c[o>>2]|0)|0){case 7:case 2:{b[(c[l>>2]|0)+4>>1]=3;break}case 5:case 0:{b[(c[l>>2]|0)+4>>1]=2;break}case 6:case 1:{b[(c[l>>2]|0)+4>>1]=1;break}default:{c[h>>2]=-2147483647;c[m>>2]=1;break b}}c[h>>2]=0;c[m>>2]=1}else if((s|0)==35){c[h>>2]=-2147483647;c[m>>2]=1}while(0);s=c[h>>2]|0;i=t;return s|0}function zq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;g=k+12|0;e=k+8|0;f=k+4|0;j=k+16|0;h=k;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)>>>0<4){c[g>>2]=-1;j=c[g>>2]|0;i=k;return j|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=((c[f>>2]|0)-3|0)>>>0){e=5;break}if(((0==(d[(c[e>>2]|0)+(c[j>>2]|0)>>0]|0|0)?0==(d[(c[e>>2]|0)+((c[j>>2]|0)+1)>>0]|0|0):0)?0==(d[(c[e>>2]|0)+((c[j>>2]|0)+2)>>0]|0|0):0)?1==(d[(c[e>>2]|0)+((c[j>>2]|0)+3)>>0]|0|0):0){e=10;break}if((0==(d[(c[e>>2]|0)+(c[j>>2]|0)>>0]|0|0)?0==(d[(c[e>>2]|0)+((c[j>>2]|0)+1)>>0]|0|0):0)?1==(d[(c[e>>2]|0)+((c[j>>2]|0)+2)>>0]|0|0):0){e=14;break}c[j>>2]=(c[j>>2]|0)+1}if((e|0)==5)c[h>>2]=2;else if((e|0)==10){c[g>>2]=c[j>>2];c[h>>2]=1}else if((e|0)==14){c[g>>2]=c[j>>2];c[h>>2]=1}if(((c[h>>2]|0)+-2|0)>>>0>=1){j=c[g>>2]|0;i=k;return j|0}c[g>>2]=-1;j=c[g>>2]|0;i=k;return j|0}function Aq(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;g=m+16|0;h=m+8|0;n=m+4|0;j=m;k=m+20|0;l=m+12|0;c[h>>2]=a;c[n>>2]=d;c[j>>2]=f;if((c[n>>2]|0)>>>0<20){c[g>>2]=-2147483645;n=c[g>>2]|0;i=m;return n|0}c[k>>2]=0;c[l>>2]=c[h>>2];switch(e[c[l>>2]>>1]|0|0){case 4099:{b[(c[j>>2]|0)+4>>1]=3;break}case 4100:{b[(c[j>>2]|0)+4>>1]=2;break}case 4101:{b[(c[j>>2]|0)+4>>1]=1;break}default:c[k>>2]=-2147483647}c[g>>2]=c[k>>2];n=c[g>>2]|0;i=m;return n|0}function Bq(a,e,f){a=a|0;e=e|0;f=f|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+48|0;h=r+40|0;j=r+32|0;k=r+8|0;l=r+4|0;o=r+44|0;n=r+36|0;p=r+12|0;m=r;c[j>>2]=a;c[k>>2]=e;c[l>>2]=f;if((c[k>>2]|0)>>>0<4){c[h>>2]=-2147483645;q=c[h>>2]|0;i=r;return q|0}if((0==(d[c[j>>2]>>0]|0|0)?0==(d[(c[j>>2]|0)+1>>0]|0|0):0)?1==(d[(c[j>>2]|0)+2>>0]|0|0):0){c[o>>2]=c[j>>2];c[n>>2]=c[k>>2];a:while(1){switch(d[(c[o>>2]|0)+3>>0]|0|0){case 182:{q=15;break a}case 32:{c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16>>2]=0;if(dq(p,c[o>>2]|0,c[n>>2]|0)|0){b[c[l>>2]>>1]=c[p>>2];b[(c[l>>2]|0)+2>>1]=c[p+4>>2];b[(c[l>>2]|0)+6>>1]=c[p+12>>2];if(0.0!=+g[p+16>>2])g[(c[l>>2]|0)+8>>2]=1.0e3/+g[p+16>>2];c[m>>2]=4}else{c[h>>2]=-2147483645;c[m>>2]=1}if((c[m>>2]|0)!=4)break a;break}default:{}}c[p>>2]=Cq((c[o>>2]|0)+4|0,(c[n>>2]|0)-4|0)|0;if((c[p>>2]|0)<0)c[m>>2]=3;else{c[o>>2]=(c[o>>2]|0)+(4+(c[p>>2]|0));c[n>>2]=(c[n>>2]|0)-(4+(c[p>>2]|0));c[m>>2]=0}if((c[m>>2]|0)>>>0>=1){q=25;break}}b:do if((q|0)==15){switch(((d[(c[o>>2]|0)+4>>0]|0)&192)>>6|0){case 0:{b[(c[l>>2]|0)+4>>1]=3;break}case 1:{b[(c[l>>2]|0)+4>>1]=2;break}case 2:{b[(c[l>>2]|0)+4>>1]=1;break}default:{c[h>>2]=-2147483647;c[m>>2]=1;break b}}c[h>>2]=0;c[m>>2]=1}else if((q|0)==25){c[h>>2]=-2147483647;c[m>>2]=1}while(0);q=c[h>>2]|0;i=r;return q|0}c[h>>2]=-2147483645;q=c[h>>2]|0;i=r;return q|0}function Cq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;g=k+12|0;e=k+8|0;f=k+4|0;j=k+16|0;h=k;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)>>>0<4){c[g>>2]=-1;j=c[g>>2]|0;i=k;return j|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=((c[f>>2]|0)-3|0)>>>0){e=5;break}if((0==(d[(c[e>>2]|0)+(c[j>>2]|0)>>0]|0|0)?0==(d[(c[e>>2]|0)+((c[j>>2]|0)+1)>>0]|0|0):0)?1==(d[(c[e>>2]|0)+((c[j>>2]|0)+2)>>0]|0|0):0){e=9;break}c[j>>2]=(c[j>>2]|0)+1}if((e|0)==5)c[h>>2]=2;else if((e|0)==9){c[g>>2]=c[j>>2];c[h>>2]=1}if(((c[h>>2]|0)+-2|0)>>>0>=1){j=c[g>>2]|0;i=k;return j|0}c[g>>2]=-1;j=c[g>>2]|0;i=k;return j|0}function Dq(a,e,f){a=a|0;e=e|0;f=f|0;var 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;u=i;i=i+96|0;j=u+84|0;k=u+76|0;l=u+68|0;m=u+60|0;q=u+88|0;h=u+80|0;o=u+72|0;p=u+64|0;r=u+56|0;t=u+48|0;s=u+4|0;n=u;c[k>>2]=a;c[l>>2]=e;c[m>>2]=f;if((c[l>>2]|0)>>>0<5){c[j>>2]=-2147483645;t=c[j>>2]|0;i=u;return t|0}if(((0==(d[c[k>>2]>>0]|0|0)?0==(d[(c[k>>2]|0)+1>>0]|0|0):0)?0==(d[(c[k>>2]|0)+2>>0]|0|0):0)?1==(d[(c[k>>2]|0)+3>>0]|0|0):0){c[q>>2]=c[k>>2];c[h>>2]=c[l>>2];c[o>>2]=-1;c[p>>2]=0;c[o>>2]=Yq(c[q>>2]|0,c[h>>2]|0)|0;if(5==(c[o>>2]|0)){c[r>>2]=zq((c[q>>2]|0)+4|0,(c[h>>2]|0)-4|0)|0;c[t>>2]=0;c[t+4>>2]=0;h=s;e=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(e|0));c[s+8>>2]=t;c[p>>2]=_q((c[q>>2]|0)+5|0,(c[r>>2]|0)+4|0,s)|0;if(1==(c[p>>2]|0)){b[c[m>>2]>>1]=c[s>>2];b[(c[m>>2]|0)+2>>1]=c[s+4>>2];b[(c[m>>2]|0)+6>>1]=c[c[s+8>>2]>>2];g[(c[m>>2]|0)+8>>2]=+(c[(c[s+8>>2]|0)+4>>2]|0)}}c[p>>2]=Zq(c[k>>2]|0,c[l>>2]|0,o)|0;a:do if(1!=(c[p>>2]|0)){c[j>>2]=-2147483647;c[n>>2]=1}else{switch(c[o>>2]|0){case 0:{b[(c[m>>2]|0)+4>>1]=3;break}case 1:{b[(c[m>>2]|0)+4>>1]=2;break}case 2:{b[(c[m>>2]|0)+4>>1]=1;break}default:{c[j>>2]=-2147483647;c[n>>2]=1;break a}}c[j>>2]=0;c[n>>2]=1}while(0);t=c[j>>2]|0;i=u;return t|0}c[j>>2]=-2147483645;t=c[j>>2]|0;i=u;return t|0}function Eq(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=i;i=i+64|0;g=w+48|0;h=w+40|0;j=w+32|0;k=w+24|0;u=w+52|0;m=w+44|0;p=w+36|0;o=w+28|0;s=w+20|0;n=w+16|0;r=w+12|0;l=w;t=w+8|0;q=w+4|0;c[h>>2]=a;c[j>>2]=e;c[k>>2]=f;if((c[j>>2]|0)>>>0<5){c[g>>2]=-2147483645;v=c[g>>2]|0;i=w;return v|0}if(((0==(d[c[h>>2]>>0]|0|0)?0==(d[(c[h>>2]|0)+1>>0]|0|0):0)?0==(d[(c[h>>2]|0)+2>>0]|0|0):0)?1==(d[(c[h>>2]|0)+3>>0]|0|0):0){c[u>>2]=c[h>>2];c[m>>2]=c[j>>2];c[p>>2]=0;c[o>>2]=0;c[s>>2]=0;c[n>>2]=0;c[r>>2]=0;while(1){if((c[m>>2]|0)>>>0<3){v=14;break}if((((d[c[u>>2]>>0]|0|0)==0?(d[(c[u>>2]|0)+1>>0]|0|0)==0:0)?(d[(c[u>>2]|0)+2>>0]|0|0)==0:0)?(d[(c[u>>2]|0)+3>>0]|0|0)==1:0)c[o>>2]=4;else v=20;if((((v|0)==20?(v=0,(d[c[u>>2]>>0]|0|0)==0):0)?(d[(c[u>>2]|0)+1>>0]|0|0)==0:0)?(d[(c[u>>2]|0)+2>>0]|0|0)==1:0)c[o>>2]=3;c[n>>2]=zq((c[u>>2]|0)+(c[o>>2]|0)|0,(c[m>>2]|0)-(c[o>>2]|0)|0)|0;if((c[n>>2]|0)==-1)c[r>>2]=(c[m>>2]|0)-(c[o>>2]|0);else c[r>>2]=c[n>>2];c[p>>2]=((d[(c[u>>2]|0)+(c[o>>2]|0)>>0]|0)&126)>>1;if((c[p>>2]|0)==33){c[t>>2]=0;c[q>>2]=0;c[s>>2]=bu((c[u>>2]|0)+(c[o>>2]|0)|0,c[r>>2]|0,t,q)|0;if(!(c[s>>2]|0)){b[c[k>>2]>>1]=c[t>>2];b[(c[k>>2]|0)+2>>1]=c[q>>2]}}else{if((c[p>>2]|0)>>>0<=9){v=33;break}if((c[p>>2]|0)>>>0>=16&(c[p>>2]|0)>>>0<=21){v=33;break}}c[s>>2]=zq((c[u>>2]|0)+(c[o>>2]|0)|0,(c[m>>2]|0)-(c[o>>2]|0)|0)|0;if((c[s>>2]|0)<0){v=40;break}c[u>>2]=(c[u>>2]|0)+((c[o>>2]|0)+(c[s>>2]|0));c[m>>2]=(c[m>>2]|0)-((c[o>>2]|0)+(c[s>>2]|0))}a:do if((v|0)==14){c[g>>2]=-2147483647;c[l>>2]=1}else if((v|0)==33){c[s>>2]=pu((c[u>>2]|0)+(c[o>>2]|0)|0,c[r>>2]|0)|0;switch(c[s>>2]|0){case 2:{b[(c[k>>2]|0)+4>>1]=3;c[g>>2]=0;c[l>>2]=1;break a}case 1:{b[(c[k>>2]|0)+4>>1]=2;c[g>>2]=0;c[l>>2]=1;break a}case 0:{b[(c[k>>2]|0)+4>>1]=1;c[g>>2]=0;c[l>>2]=1;break a}default:{c[g>>2]=-2147483647;c[l>>2]=1;break a}}}else if((v|0)==40){c[g>>2]=0;c[l>>2]=1}while(0);v=c[g>>2]|0;i=w;return v|0}if((0==(d[c[h>>2]>>0]|0|0)?0==(d[(c[h>>2]|0)+1>>0]|0|0):0)?1==(d[(c[h>>2]|0)+2>>0]|0|0):0){c[g>>2]=-2147483645;v=c[g>>2]|0;i=w;return v|0}c[g>>2]=-2147483645;v=c[g>>2]|0;i=w;return v|0}function Fq(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;if(((c[b>>2]|0)-97|0)>>>0<26)c[b>>2]=(c[b>>2]|0)+-32;i=d;return c[b>>2]|0}function Gq(b){b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f;e=f+4|0;c[d>>2]=b;c[e>>2]=c[c[d>>2]>>2];while(1){g=(bw(22748,a[c[e>>2]>>0]|0,4)|0)!=0;b=c[e>>2]|0;if(!g)break;c[e>>2]=b+1}c[c[d>>2]>>2]=b;i=f;return}function Hq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;if((a[c[c[k>>2]>>2]>>0]|0)==47){e=c[k>>2]|0;c[e>>2]=(c[e>>2]|0)+1}Iq(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0);i=l;return}function Iq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;g=n+16|0;h=n+8|0;j=n+4|0;k=n;l=n+20|0;m=n+12|0;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=c[c[k>>2]>>2];c[m>>2]=0;Gq(l);c[m>>2]=c[g>>2];while(1){if(dw(c[j>>2]|0,a[c[l>>2]>>0]|0)|0)break;if(!(a[c[l>>2]>>0]|0))break;if(((c[m>>2]|0)-(c[g>>2]|0)|0)<((c[h>>2]|0)-1|0)){f=a[c[l>>2]>>0]|0;e=c[m>>2]|0;c[m>>2]=e+1;a[e>>0]=f}c[l>>2]=(c[l>>2]|0)+1}if((c[h>>2]|0)<=0){m=c[l>>2]|0;e=c[k>>2]|0;c[e>>2]=m;i=n;return}a[c[m>>2]>>0]=0;m=c[l>>2]|0;e=c[k>>2]|0;c[e>>2]=m;i=n;return}function Jq(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;f=l+12|0;g=l+4|0;h=l+16|0;k=l+8|0;j=l;c[f>>2]=b;c[g>>2]=e;c[h>>2]=0;c[k>>2]=0;c[j>>2]=1;while(1){Gq(g);if(!(a[c[g>>2]>>0]|0)){b=11;break}b=c[g>>2]|0;c[g>>2]=b+1;c[h>>2]=Fq(d[b>>0]|0)|0;b=c[h>>2]|0;if((c[h>>2]|0)>=48&(c[h>>2]|0)<=57)c[h>>2]=b-48;else{if(!((b|0)>=65&(c[h>>2]|0)<=70)){b=11;break}c[h>>2]=(c[h>>2]|0)-65+10}c[j>>2]=c[j>>2]<<4|c[h>>2];if(!(c[j>>2]&256))continue;if(c[f>>2]|0)a[(c[f>>2]|0)+(c[k>>2]|0)>>0]=c[j>>2];c[k>>2]=(c[k>>2]|0)+1;c[j>>2]=1}if((b|0)==11){i=l;return c[k>>2]|0}return 0}function Kq(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+32|0;g=o+20|0;h=o+12|0;j=o+4|0;k=o+24|0;l=o+16|0;n=o+8|0;m=o;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=c[g>>2];c[l>>2]=0;c[n>>2]=0;c[m>>2]=0;c[l>>2]=0;while(1){if(!(a[(c[h>>2]|0)+(c[l>>2]|0)>>0]|0))break;if((d[(c[h>>2]|0)+(c[l>>2]|0)>>0]|0)==61)break;c[m>>2]=(d[(c[h>>2]|0)+(c[l>>2]|0)>>0]|0)-43;if((c[m>>2]|0)>>>0>=80)break;if((d[22753+(c[m>>2]|0)>>0]|0)==255)break;c[n>>2]=(c[n>>2]<<6)+(d[22753+(c[m>>2]|0)>>0]|0);if(c[l>>2]&3|0?((c[k>>2]|0)-(c[g>>2]|0)|0)<(c[j>>2]|0):0){b=c[n>>2]>>6-((c[l>>2]&3)<<1)&255;f=c[k>>2]|0;c[k>>2]=f+1;a[f>>0]=b}c[l>>2]=(c[l>>2]|0)+1}i=o;return (c[k>>2]|0)-(c[g>>2]|0)|0}function Lq(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;Gq(c[j>>2]|0);if(!(a[c[c[j>>2]>>2]>>0]|0)){c[h>>2]=0;g=c[h>>2]|0;i=o;return g|0}Hq(c[k>>2]|0,c[l>>2]|0,22833,c[j>>2]|0);if((a[c[c[j>>2]>>2]>>0]|0)==61){g=c[j>>2]|0;c[g>>2]=(c[g>>2]|0)+1}Hq(c[m>>2]|0,c[n>>2]|0,22835,c[j>>2]|0);if((a[c[c[j>>2]>>2]>>0]|0)==59){g=c[j>>2]|0;c[g>>2]=(c[g>>2]|0)+1}c[h>>2]=1;g=c[h>>2]|0;i=o;return g|0}function Mq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+2336|0;e=p+24|0;f=p+16|0;o=p+28|0;l=p+12|0;j=p+8|0;m=p+4|0;g=p+2080|0;k=p+1056|0;h=p+32|0;n=p;c[e>>2]=b;c[f>>2]=d;c[o>>2]=0;c[p+20>>2]=0;c[l>>2]=0;c[j>>2]=0;c[m>>2]=0;c[o>>2]=_w(16384)|0;if(!(c[o>>2]|0)){c[n>>2]=1;i=p;return}a:while(1){if(!(Lq(e,g,256,c[o>>2]|0,16384)|0)){e=23;break}if((c[(c[f>>2]|0)+4>>2]|0)==3?(hw(g,22837)|0)==0:0){c[l>>2]=Jq(0,c[o>>2]|0)|0;if((c[l>>2]|0)>1024){e=7;break}Jq((c[f>>2]|0)+36|0,c[o>>2]|0)|0;c[(c[f>>2]|0)+32>>2]=c[l>>2];continue}if((c[(c[f>>2]|0)+4>>2]|0)!=256)continue;if(hw(g,22844)|0)continue;c[m>>2]=c[o>>2];while(1){if(!(a[c[m>>2]>>0]|0))continue a;c[j>>2]=k;while(1){if(!(a[c[m>>2]>>0]|0))break;if((a[c[m>>2]>>0]|0)==44)break;if(((c[j>>2]|0)-k|0)>=1023)break;b=c[m>>2]|0;c[m>>2]=b+1;b=a[b>>0]|0;d=c[j>>2]|0;c[j>>2]=d+1;a[d>>0]=b}d=c[j>>2]|0;c[j>>2]=d+1;a[d>>0]=0;if((a[c[m>>2]>>0]|0)==44)c[m>>2]=(c[m>>2]|0)+1;c[l>>2]=Kq(h,k,1024)|0;if(((c[(c[f>>2]|0)+32>>2]|0)+4+(c[l>>2]|0)|0)>>>0>1024){e=21;break a}d=(c[f>>2]|0)+32|0;b=c[d>>2]|0;c[d>>2]=b+1;a[(c[f>>2]|0)+36+b>>0]=0;b=(c[f>>2]|0)+32|0;d=c[b>>2]|0;c[b>>2]=d+1;a[(c[f>>2]|0)+36+d>>0]=0;d=(c[f>>2]|0)+32|0;b=c[d>>2]|0;c[d>>2]=b+1;a[(c[f>>2]|0)+36+b>>0]=0;b=(c[f>>2]|0)+32|0;d=c[b>>2]|0;c[b>>2]=d+1;a[(c[f>>2]|0)+36+d>>0]=1;Tx((c[f>>2]|0)+36+(c[(c[f>>2]|0)+32>>2]|0)|0,h|0,c[l>>2]|0)|0;d=(c[f>>2]|0)+32|0;c[d>>2]=(c[d>>2]|0)+(c[l>>2]|0)}}if((e|0)==7){c[n>>2]=1;i=p;return}else if((e|0)==21){c[n>>2]=1;i=p;return}else if((e|0)==23){$w(c[o>>2]|0);c[o>>2]=0;c[n>>2]=0;i=p;return}}function Nq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+272|0;d=g+4|0;e=g;f=g+8|0;c[d>>2]=a;c[e>>2]=b;Ox(f|0,0,256)|0;Hq(f,256,22865,d);do if(hw(f,22868)|0){if(!(hw(f,22873)|0)){c[(c[e>>2]|0)+4>>2]=3;break}if(!(hw(f,22881)|0)){c[(c[e>>2]|0)+4>>2]=5;break}if(!(hw(f,22886)|0)){c[(c[e>>2]|0)+4>>2]=6;break}if(!(hw(f,22891)|0)){c[(c[e>>2]|0)+4>>2]=29282;break}if(!(hw(f,22899)|0))c[(c[e>>2]|0)+4>>2]=8193}else c[(c[e>>2]|0)+4>>2]=256;while(0);Hq(f,256,22913,d);b=Zw(f)|0;c[(c[e>>2]|0)+12>>2]=b;if(2!=(c[c[e>>2]>>2]|0)){i=g;return}Hq(f,256,22913,d);if(!($v(f)|0)){c[(c[e>>2]|0)+16>>2]=1;i=g;return}else{b=Zw(f)|0;c[(c[e>>2]|0)+16>>2]=b;i=g;return}}function Oq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=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;s=i;i=i+112|0;t=s+40|0;u=s+32|0;k=s+24|0;p=s+44|0;h=s+36|0;g=s+28|0;q=s+20|0;f=s+16|0;j=s+12|0;m=s+48|0;l=s;n=s+8|0;o=s+4|0;c[t>>2]=b;c[u>>2]=d;c[k>>2]=e;c[p>>2]=c[u>>2];c[h>>2]=0;c[g>>2]=0;c[q>>2]=0;c[f>>2]=0;c[j>>2]=0;a:do switch(c[t>>2]|0){case 109:{Pq(m,64,p);do if(hw(m,22915)|0){if(hw(m,22921)|0){c[l>>2]=1;i=s;return}c[j>>2]=2;u=(c[k>>2]|0)+3180|0;c[u>>2]=(c[u>>2]|0)+1;u=(c[k>>2]|0)+3180|0;c[u>>2]=(c[u>>2]|0)+1;if((c[(c[k>>2]|0)+3180>>2]|0)>>>0<=3){c[(c[k>>2]|0)+(((c[(c[k>>2]|0)+3180>>2]|0)-1|0)*1060|0)>>2]=1;c[(c[k>>2]|0)+(((c[(c[k>>2]|0)+3180>>2]|0)-2|0)*1060|0)>>2]=1;break}c[l>>2]=1;i=s;return}else{c[j>>2]=1;u=(c[k>>2]|0)+3180|0;c[u>>2]=(c[u>>2]|0)+1;if((c[(c[k>>2]|0)+3180>>2]|0)>>>0<=3){c[(c[k>>2]|0)+(((c[(c[k>>2]|0)+3180>>2]|0)-1|0)*1060|0)>>2]=2;break}c[l>>2]=1;i=s;return}while(0);Pq(m,64,p);Pq(m,64,p);Pq(m,64,p);c[g>>2]=c[(c[k>>2]|0)+3180>>2];while(1){if((c[g>>2]|0)>>>0<=((c[(c[k>>2]|0)+3180>>2]|0)-(c[j>>2]|0)|0)>>>0)break a;u=Zw(m)|0;c[(c[k>>2]|0)+(((c[g>>2]|0)-1|0)*1060|0)+8>>2]=u;b:do if((c[(c[k>>2]|0)+(((c[g>>2]|0)-1|0)*1060|0)+8>>2]|0)>>>0<96)switch(c[(c[k>>2]|0)+(((c[g>>2]|0)-1|0)*1060|0)+8>>2]|0){case 0:{c[(c[k>>2]|0)+(((c[g>>2]|0)-1|0)*1060|0)+4>>2]=28944;c[(c[k>>2]|0)+(((c[g>>2]|0)-1|0)*1060|0)+12>>2]=8e3;break b}case 8:{c[(c[k>>2]|0)+(((c[g>>2]|0)-1|0)*1060|0)+4>>2]=28945;c[(c[k>>2]|0)+(((c[g>>2]|0)-1|0)*1060|0)+12>>2]=8e3;break b}case 14:{c[(c[k>>2]|0)+(((c[g>>2]|0)-1|0)*1060|0)+4>>2]=8192;c[(c[k>>2]|0)+(((c[g>>2]|0)-1|0)*1060|0)+12>>2]=9e4;break b}case 104:{c[(c[k>>2]|0)+(((c[g>>2]|0)-1|0)*1060|0)+4>>2]=8193;c[(c[k>>2]|0)+(((c[g>>2]|0)-1|0)*1060|0)+12>>2]=32e3;break b}case 26:{c[(c[k>>2]|0)+(((c[g>>2]|0)-1|0)*1060|0)+4>>2]=4;c[(c[k>>2]|0)+(((c[g>>2]|0)-1|0)*1060|0)+12>>2]=9e4;break b}default:break b}while(0);c[g>>2]=(c[g>>2]|0)+-1}}case 97:{if(Qq(c[p>>2]|0,22927,p)|0){Pq(m,64,p);c[h>>2]=Zw(m)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[(c[k>>2]|0)+3180>>2]|0)>>>0)break a;if((c[(c[k>>2]|0)+((c[g>>2]|0)*1060|0)+8>>2]|0)==(c[h>>2]|0))Nq(c[p>>2]|0,(c[k>>2]|0)+((c[g>>2]|0)*1060|0)|0);c[g>>2]=(c[g>>2]|0)+1}}if(Qq(c[p>>2]|0,22935,p)|0){Pq(m,64,p);c[h>>2]=Zw(m)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[(c[k>>2]|0)+3180>>2]|0)>>>0)break a;if((c[(c[k>>2]|0)+((c[g>>2]|0)*1060|0)+8>>2]|0)==(c[h>>2]|0))Mq(c[p>>2]|0,(c[k>>2]|0)+((c[g>>2]|0)*1060|0)|0);c[g>>2]=(c[g>>2]|0)+1}}if(Qq(c[p>>2]|0,22941,p)|0){Pq(m,9,p);c[q>>2]=Yw(m,0,16)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[(c[k>>2]|0)+3180>>2]|0)>>>0)break a;if((c[(c[k>>2]|0)+((c[g>>2]|0)*1060|0)>>2]|0)==1?(c[(c[k>>2]|0)+((c[g>>2]|0)*1060|0)+20>>2]|0)==0:0)c[(c[k>>2]|0)+((c[g>>2]|0)*1060|0)+20>>2]=c[q>>2];c[g>>2]=(c[g>>2]|0)+1}}if(!(Qq(c[p>>2]|0,22947,p)|0)){if(!(Qq(c[p>>2]|0,22961,p)|0))break a;Pq(m,64,p);c[f>>2]=Zw(m)|0;c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[(c[k>>2]|0)+3180>>2]|0)>>>0)break a;c[(c[k>>2]|0)+((c[g>>2]|0)*1060|0)+24>>2]=c[f>>2];c[g>>2]=(c[g>>2]|0)+1}}c[n>>2]=0;while(1){if((c[n>>2]|0)>=2){r=43;break}Pq(m,4,p);c[o>>2]=Yw(m,0,16)|0;if((c[o>>2]|0)<1|(c[o>>2]|0)>2)c[l>>2]=16;else{c[p>>2]=(c[p>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+1;f=m;g=f+64|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(g|0));u=c[p>>2]|0;a[m>>0]=a[u>>0]|0;a[m+1>>0]=a[u+1>>0]|0;a[m+2>>0]=a[u+2>>0]|0;a[m+3>>0]=a[u+3>>0]|0;a[m+4>>0]=a[u+4>>0]|0;a[m+5>>0]=a[u+5>>0]|0;a[m+6>>0]=a[u+6>>0]|0;a[m+7>>0]=a[u+7>>0]|0;c[p>>2]=(c[p>>2]|0)+8;c[q>>2]=Yw(m,0,16)|0;c[q>>2]=(c[q>>2]&255)<<24|(c[q>>2]&65280)>>>8<<16|(c[q>>2]&16711680)>>>16<<8|(c[q>>2]&-16777216)>>>24;c[(c[k>>2]|0)+(((c[o>>2]|0)-1|0)*1060|0)+20>>2]=c[q>>2];c[(c[k>>2]|0)+(((c[o>>2]|0)-1|0)*1060|0)>>2]=1;c[p>>2]=(c[p>>2]|0)+1;c[l>>2]=0}if(c[l>>2]|0)break;c[n>>2]=(c[n>>2]|0)+1}if((r|0)==43)c[l>>2]=16;c[(c[k>>2]|0)+3180>>2]=2;break}default:{}}while(0);c[l>>2]=0;i=s;return}function Pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;Iq(c[h>>2]|0,c[g>>2]|0,22748,c[f>>2]|0);i=e;return}function Qq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;f=j+8|0;g=j+4|0;h=j;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;while(1){if(a[c[g>>2]>>0]|0)e=(a[c[g>>2]>>0]|0)==(a[c[f>>2]>>0]|0);else e=0;d=c[g>>2]|0;if(!e)break;c[g>>2]=d+1;c[f>>2]=(c[f>>2]|0)+1}if(!((a[d>>0]|0)==0&(c[h>>2]|0)!=0)){h=c[g>>2]|0;h=a[h>>0]|0;h=h<<24>>24!=0;h=h^1;h=h&1;i=j;return h|0}c[c[h>>2]>>2]=c[f>>2];h=c[g>>2]|0;h=a[h>>0]|0;h=h<<24>>24!=0;h=h^1;h=h&1;i=j;return h|0}function Rq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+32|0;f=o+24|0;g=o+16|0;h=o+8|0;m=o+28|0;n=o+20|0;k=o+12|0;l=o+4|0;j=o;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[m>>2]=c[f>>2];c[n>>2]=0;c[k>>2]=0;c[l>>2]=0;c[k>>2]=_w(16384)|0;if(!(c[k>>2]|0)){c[j>>2]=1;i=o;return}while(1){if(((c[m>>2]|0)-(c[f>>2]|0)|0)>=(c[g>>2]|0))break;Gq(m);c[l>>2]=a[c[m>>2]>>0];if(!(c[l>>2]|0))break;c[m>>2]=(c[m>>2]|0)+1;if((a[c[m>>2]>>0]|0)==61)c[m>>2]=(c[m>>2]|0)+1;c[n>>2]=c[k>>2];while(1){if((a[c[m>>2]>>0]|0)!=10?(a[c[m>>2]>>0]|0)!=13:0)d=(a[c[m>>2]>>0]|0)!=0;else d=0;b=c[n>>2]|0;if(!d)break;if((b-(c[k>>2]|0)|0)<16383){d=a[c[m>>2]>>0]|0;e=c[n>>2]|0;c[n>>2]=e+1;a[e>>0]=d}c[m>>2]=(c[m>>2]|0)+1}a[b>>0]=0;Oq(c[l>>2]|0,c[k>>2]|0,c[h>>2]|0);while(1){if((a[c[m>>2]>>0]|0)!=10)d=(a[c[m>>2]>>0]|0)!=0;else d=0;b=c[m>>2]|0;if(!d)break;c[m>>2]=b+1}if((a[b>>0]|0)!=10)continue;c[m>>2]=(c[m>>2]|0)+1}$w(c[k>>2]|0);c[k>>2]=0;c[j>>2]=0;i=o;return}function Sq(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;c[b>>2]=c[b>>2]<<8&-16711936|(c[b>>2]|0)>>>8&16711935;c[b>>2]=(c[b>>2]|0)>>>16|c[b>>2]<<16;i=d;return c[b>>2]|0}function Tq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;e=i;i=i+32|0;f=e+12|0;h=e+4|0;d=e+16|0;g=e+8|0;j=e;c[f>>2]=a;c[h>>2]=b;c[g>>2]=c[(c[f>>2]|0)+4>>2];c[j>>2]=c[(c[c[f>>2]>>2]|0)+((c[g>>2]|0)>>>3)>>2];c[j>>2]=Sq(c[j>>2]|0)|0;c[j>>2]=c[j>>2]<<(c[g>>2]&7);c[d>>2]=(c[j>>2]|0)>>>(32-(c[h>>2]|0)|0);c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);c[(c[f>>2]|0)+4>>2]=c[g>>2];i=e;return c[d>>2]|0}function Uq(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+48|0;f=n+32|0;g=n+24|0;j=n+36|0;m=n+28|0;k=n+20|0;l=n+16|0;e=n+12|0;p=n+8|0;o=n+4|0;h=n;c[g>>2]=b;c[m>>2]=c[(c[g>>2]|0)+4>>2];c[j>>2]=c[(c[c[g>>2]>>2]|0)+((c[m>>2]|0)>>>3)>>2];c[p>>2]=j;c[o>>2]=e;a[c[o>>2]>>0]=a[(c[p>>2]|0)+3>>0]|0;a[(c[o>>2]|0)+1>>0]=a[(c[p>>2]|0)+2>>0]|0;a[(c[o>>2]|0)+2>>0]=a[(c[p>>2]|0)+1>>0]|0;a[(c[o>>2]|0)+3>>0]=a[c[p>>2]>>0]|0;c[j>>2]=c[e>>2];c[j>>2]=c[j>>2]<<(c[m>>2]&7);b=c[j>>2]|0;if(c[j>>2]&-134217728|0){c[j>>2]=b>>>23;p=(c[g>>2]|0)+4|0;c[p>>2]=(c[p>>2]|0)+(d[22977+(c[j>>2]|0)>>0]|0);c[f>>2]=d[23489+(c[j>>2]|0)>>0];c[h>>2]=1;p=c[f>>2]|0;i=n;return p|0}e=c[j>>2]|0;if(b&-8388608|0){c[l>>2]=e;c[l>>2]=(c[l>>2]|0)>>>23;c[k>>2]=d[22977+(c[l>>2]|0)>>0];p=(c[g>>2]|0)+4|0;c[p>>2]=(c[p>>2]|0)+(c[k>>2]|0);c[j>>2]=(c[j>>2]|0)>>>(32-(c[k>>2]|0)|0);c[j>>2]=(c[j>>2]|0)+-1;c[f>>2]=c[j>>2];c[h>>2]=1;p=c[f>>2]|0;i=n;return p|0}c[k>>2]=63-((Vq(e)|0)<<1);if((c[k>>2]|0)>25)c[j>>2]=c[j>>2]|(d[(c[c[g>>2]>>2]|0)+((c[m>>2]|0)>>>3)+4>>0]|0)>>8-(c[m>>2]&7);p=(c[g>>2]|0)+4|0;c[p>>2]=(c[p>>2]|0)+(c[k>>2]|0);c[j>>2]=(c[j>>2]|0)>>>(32-(c[k>>2]|0)|0);c[j>>2]=(c[j>>2]|0)+-1;c[f>>2]=c[j>>2];c[h>>2]=1;p=c[f>>2]|0;i=n;return p|0}function Vq(a){a=a|0;var b=0,e=0,f=0;f=i;i=i+16|0;b=f;e=f+4|0;c[b>>2]=a;c[e>>2]=0;if(c[b>>2]&-65536|0){c[b>>2]=(c[b>>2]|0)>>>16;c[e>>2]=(c[e>>2]|0)+16}if(c[b>>2]&65280|0){c[b>>2]=(c[b>>2]|0)>>>8;c[e>>2]=(c[e>>2]|0)+8}c[e>>2]=(c[e>>2]|0)+(d[24001+(c[b>>2]|0)>>0]|0);i=f;return c[e>>2]|0}function Wq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;f=e+8|0;h=e+4|0;g=e;c[f>>2]=a;c[h>>2]=b;c[g>>2]=d;c[c[f>>2]>>2]=c[h>>2];a=c[g>>2]|0;a=a-(Xq(c[h>>2]|0,c[g>>2]|0)|0)|0;c[(c[f>>2]|0)+8>>2]=a;c[(c[f>>2]|0)+4>>2]=0;i=e;return}function Xq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+48|0;e=n+32|0;o=n+24|0;p=n+16|0;l=n+36|0;m=n+28|0;g=n+20|0;k=n+12|0;j=n+8|0;h=n+4|0;f=n;c[o>>2]=a;c[p>>2]=b;c[g>>2]=0;c[j>>2]=c[p>>2]&7;c[h>>2]=(c[p>>2]|0)/8|0;b=(c[o>>2]|0)+(c[h>>2]|0)|0;a:do if(c[j>>2]|0){c[k>>2]=b;c[m>>2]=(d[c[k>>2]>>0]|0)>>8-(c[j>>2]|0);if(!(c[m>>2]|0)){c[k>>2]=(c[k>>2]|0)+-1;break}c[l>>2]=1;while(1){if((c[l>>2]|0)>(c[j>>2]|0))break a;if(c[m>>2]&1|0)break;c[m>>2]=c[m>>2]>>1;c[l>>2]=(c[l>>2]|0)+1}c[e>>2]=c[l>>2];c[f>>2]=1;p=c[e>>2]|0;i=n;return p|0}else c[k>>2]=b+-1;while(0);while(1){if(!((d[c[k>>2]>>0]|0|0)==0?(c[h>>2]|0)>0:0))break;c[k>>2]=(c[k>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-1;c[g>>2]=(c[g>>2]|0)+8}b:do if((c[h>>2]|0)>0){c[m>>2]=d[c[k>>2]>>0];c[l>>2]=1;while(1){if((c[l>>2]|0)>=9)break b;if(c[m>>2]&1|0)break;c[m>>2]=c[m>>2]>>1;c[l>>2]=(c[l>>2]|0)+1}c[e>>2]=(c[l>>2]|0)+(c[g>>2]|0)+(c[j>>2]|0);c[f>>2]=1;p=c[e>>2]|0;i=n;return p|0}while(0);c[e>>2]=c[j>>2];c[f>>2]=1;p=c[e>>2]|0;i=n;return p|0}function Yq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;f=g+4|0;h=g;c[f>>2]=a;c[h>>2]=b;if((c[f>>2]|0)==0|(c[h>>2]|0)<5){c[e>>2]=0;h=c[e>>2]|0;i=g;return h|0}if((((d[c[f>>2]>>0]|0|0)==0?(d[(c[f>>2]|0)+1>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+2>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+3>>0]|0|0)==1:0)if((((d[(c[f>>2]|0)+4>>0]|0)&60)>>2|0)==7){c[e>>2]=5;h=c[e>>2]|0;i=g;return h|0}else{c[e>>2]=4;h=c[e>>2]|0;i=g;return h|0}c[e>>2]=0;h=c[e>>2]|0;i=g;return h|0}function Zq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+64|0;p=s+48|0;e=s+40|0;f=s+32|0;g=s+24|0;l=s+52|0;j=s+44|0;n=s+36|0;k=s+28|0;m=s+20|0;q=s;h=s+8|0;r=s+4|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[l>>2]=0;c[n>>2]=c[e>>2];c[k>>2]=0;if(0==(c[e>>2]|0)|0==(c[g>>2]|0)){c[p>>2]=-1;c[q>>2]=1;r=c[p>>2]|0;i=s;return r|0}c[n>>2]=c[e>>2];c[m>>2]=(c[e>>2]|0)+(c[f>>2]|0)+-3;while(1){if(!((c[k>>2]|0)!=0^1))break;while(1){if(c[l>>2]|0)break;if((c[n>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;c[j>>2]=c[c[n>>2]>>2];c[l>>2]=(c[j>>2]&16777215|0)==65536&1;c[n>>2]=(c[n>>2]|0)+1}if(!(c[l>>2]|0)){o=15;break}c[j>>2]=(c[j>>2]|0)>>>24;if(((((c[j>>2]&60)>>>2|0)!=1?((c[j>>2]&60)>>>2|0)!=2:0)?((c[j>>2]&60)>>>2|0)!=3:0)?((c[j>>2]&60)>>>2|0)!=4:0){c[l>>2]=0;continue}c[k>>2]=1}if((o|0)==15){c[p>>2]=-1;c[q>>2]=1;r=c[p>>2]|0;i=s;return r|0}if(((c[j>>2]&60)>>>2|0)!=1?((c[j>>2]&60)>>>2|0)!=2:0){c[c[g>>2]>>2]=0;c[p>>2]=1;c[q>>2]=1;r=c[p>>2]|0;i=s;return r|0}if(((c[m>>2]|0)-(c[n>>2]|0)|0)>10){Wq(h,(c[n>>2]|0)+3|0,56);Uq(h)|0;Tq(h,8)|0;if(((c[j>>2]&60)>>>2|0)!=2?((c[j>>2]&60)>>>2|0)!=4:0){Uq(h)|0;c[r>>2]=Uq(h)|0;do if(!((c[r>>2]|0)==2|(c[r>>2]|0)==5)){e=c[g>>2]|0;if((c[r>>2]|0)==0|(c[r>>2]|0)==3){c[e>>2]=1;break}else{c[e>>2]=2;break}}else c[c[g>>2]>>2]=0;while(0);c[q>>2]=0}else{c[c[g>>2]>>2]=0;c[p>>2]=1;c[q>>2]=1}if(c[q>>2]|0){r=c[p>>2]|0;i=s;return r|0}}c[p>>2]=1;c[q>>2]=1;r=c[p>>2]|0;i=s;return r|0}function _q(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0;u=i;i=i+128|0;e=u+116|0;v=u+108|0;w=u+100|0;f=u+92|0;n=u+80|0;m=u+76|0;o=u+72|0;p=u+64|0;t=u+60|0;r=u+56|0;l=u+52|0;q=u+48|0;j=u+44|0;k=u+40|0;s=u+36|0;h=u+24|0;g=u+20|0;c[v>>2]=a;c[w>>2]=b;c[f>>2]=d;c[s>>2]=0;c[h>>2]=c[v>>2];c[h+4>>2]=0;c[h+8>>2]=c[w>>2]<<3;if(!(c[v>>2]|0)){nw(24257,u)|0;c[e>>2]=-2147483646;c[g>>2]=1;w=c[e>>2]|0;i=u;return w|0}if(!(c[f>>2]|0)){nw(24298,u+8|0)|0;c[e>>2]=-2147483647;c[g>>2]=1;w=c[e>>2]|0;i=u;return w|0}if(!(c[(c[f>>2]|0)+8>>2]|0)){nw(24298,u+16|0)|0;c[e>>2]=-2147483647;c[g>>2]=1;w=c[e>>2]|0;i=u;return w|0}c[u+120>>2]=Tq(h,8)|0;c[u+112>>2]=Tq(h,8)|0;c[u+104>>2]=Uq(h)|0;c[u+96>>2]=Tq(h,2)|0;c[u+88>>2]=Uq(h)|0;c[u+84>>2]=Uq(h)|0;c[n>>2]=Uq(h)|0;c[c[f>>2]>>2]=(c[n>>2]|0)+1<<4;c[m>>2]=Uq(h)|0;c[(c[f>>2]|0)+4>>2]=(c[m>>2]|0)+1<<4;c[o>>2]=Tq(h,1)|0;c[c[(c[f>>2]|0)+8>>2]>>2]=((c[o>>2]|0)!=0^1)&1;c[u+68>>2]=Tq(h,1)|0;c[p>>2]=Tq(h,1)|0;c[t>>2]=Tq(h,1)|0;if(c[p>>2]|0){c[c[f>>2]>>2]=c[c[f>>2]>>2]<<1;c[(c[f>>2]|0)+4>>2]=c[(c[f>>2]|0)+4>>2]<<1}do if(c[t>>2]|0){c[r>>2]=Tq(h,1)|0;if(c[r>>2]|0?(c[l>>2]=Tq(h,32)|0,c[q>>2]=Tq(h,32)|0,c[j>>2]=Tq(h,1)|0,c[l>>2]|0):0)c[s>>2]=(c[q>>2]|0)/(c[l>>2]|0)|0;c[k>>2]=Tq(h,1)|0;if(!(c[k>>2]|0)){Uq(h)|0;break}c[e>>2]=0;c[g>>2]=1;w=c[e>>2]|0;i=u;return w|0}while(0);c[(c[(c[f>>2]|0)+8>>2]|0)+4>>2]=c[s>>2];c[e>>2]=1;c[g>>2]=1;w=c[e>>2]|0;i=u;return w|0}function $q(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=i;i=i+32|0;k=j+20|0;n=j+16|0;m=j+12|0;p=j+8|0;l=j+4|0;o=j;c[k>>2]=b;c[n>>2]=d;c[m>>2]=e;c[p>>2]=f;c[l>>2]=g;c[o>>2]=h;a[c[k>>2]>>0]=64;a[(c[k>>2]|0)+1>>0]=14;a[(c[k>>2]|0)+2>>0]=(c[p>>2]|0)>>>8;a[(c[k>>2]|0)+3>>0]=c[p>>2];a[(c[k>>2]|0)+4>>0]=(c[o>>2]|0)>>>8;a[(c[k>>2]|0)+5>>0]=c[o>>2];a[(c[k>>2]|0)+6>>0]=(c[c[n>>2]>>2]|0)-2e3;a[(c[k>>2]|0)+7>>0]=c[(c[n>>2]|0)+4>>2]<<4&240|(c[(c[n>>2]|0)+8>>2]|0)>>>1&15;a[(c[k>>2]|0)+8>>0]=c[(c[n>>2]|0)+8>>2]<<7&128|c[(c[n>>2]|0)+12>>2]<<2&124|(c[(c[n>>2]|0)+16>>2]|0)>>>4&3;a[(c[k>>2]|0)+9>>0]=c[(c[n>>2]|0)+16>>2]<<4&240|(c[(c[n>>2]|0)+20>>2]|0)>>>2&15;a[(c[k>>2]|0)+10>>0]=c[(c[n>>2]|0)+20>>2]<<6&192|32|(c[(c[n>>2]|0)+24>>2]|0)>>>5&31;a[(c[k>>2]|0)+11>>0]=c[(c[n>>2]|0)+24>>2]<<3&248|c[m>>2]&7;a[(c[k>>2]|0)+12>>0]=c[l>>2];a[(c[k>>2]|0)+13>>0]=-1;a[(c[k>>2]|0)+14>>0]=-1;a[(c[k>>2]|0)+15>>0]=-1;i=j;return 16}function ar(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[c[f>>2]>>0]=66;a[(c[f>>2]|0)+1>>0]=14;a[(c[f>>2]|0)+2>>0]=(c[(c[g>>2]|0)+8>>2]|0)>>>8;a[(c[f>>2]|0)+3>>0]=c[(c[g>>2]|0)+8>>2];a[(c[f>>2]|0)+4>>0]=((c[(c[g>>2]|0)+12>>2]|0)-2e3&127)<<1|(c[(c[g>>2]|0)+16>>2]&15)>>3;a[(c[f>>2]|0)+5>>0]=(c[(c[g>>2]|0)+16>>2]&7)<<5|c[(c[g>>2]|0)+20>>2]&31;a[(c[f>>2]|0)+6>>0]=(c[(c[g>>2]|0)+24>>2]|0)>>>8;a[(c[f>>2]|0)+7>>0]=c[(c[g>>2]|0)+24>>2];a[(c[f>>2]|0)+8>>0]=(c[(c[g>>2]|0)+28>>2]|0)>>>8;a[(c[f>>2]|0)+9>>0]=c[(c[g>>2]|0)+28>>2];a[(c[f>>2]|0)+10>>0]=(c[(c[g>>2]|0)+32>>2]&1)<<7|(c[(c[g>>2]|0)+36>>2]&3)<<5|(c[(c[g>>2]|0)+40>>2]&1)<<4|(c[(c[g>>2]|0)+44>>2]&1)<<3|c[(c[g>>2]|0)+48>>2]&7;a[(c[f>>2]|0)+11>>0]=(c[(c[g>>2]|0)+60>>2]&7)<<5|(c[(c[g>>2]|0)+64>>2]&1)<<4|12|c[(c[g>>2]|0)+72>>2]&3;a[(c[f>>2]|0)+12>>0]=-1;a[(c[f>>2]|0)+13>>0]=(c[(c[g>>2]|0)+56>>2]|0)>>>15;a[(c[f>>2]|0)+14>>0]=(c[(c[g>>2]|0)+56>>2]|0)>>>7;a[(c[f>>2]|0)+15>>0]=c[(c[g>>2]|0)+56>>2]<<1&254|c[(c[g>>2]|0)+52>>2]&1;i=e;return 16}function br(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[c[f>>2]>>0]=67;a[(c[f>>2]|0)+1>>0]=10;a[(c[f>>2]|0)+2>>0]=(c[(c[g>>2]|0)+4>>2]|0)>>>8;a[(c[f>>2]|0)+3>>0]=c[(c[g>>2]|0)+4>>2];a[(c[f>>2]|0)+4>>0]=254|c[(c[g>>2]|0)+8>>2]&1;a[(c[f>>2]|0)+5>>0]=(c[(c[g>>2]|0)+12>>2]|0)>>>14;a[(c[f>>2]|0)+6>>0]=(c[(c[g>>2]|0)+12>>2]|0)>>>6;a[(c[f>>2]|0)+7>>0]=c[(c[g>>2]|0)+12>>2]<<2&252|3;a[(c[f>>2]|0)+8>>0]=(c[(c[g>>2]|0)+16>>2]|0)>>>14;a[(c[f>>2]|0)+9>>0]=(c[(c[g>>2]|0)+16>>2]|0)>>>6;a[(c[f>>2]|0)+10>>0]=c[(c[g>>2]|0)+16>>2]<<2&252|3;a[(c[f>>2]|0)+11>>0]=-1;i=e;return 12}function cr(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+16|0;g=f+4|0;e=f;c[g>>2]=b;c[e>>2]=d;a[c[g>>2]>>0]=65;a[(c[g>>2]|0)+1>>0]=18;a[(c[g>>2]|0)+2>>0]=72;a[(c[g>>2]|0)+3>>0]=75;b=(c[g>>2]|0)+4|0;d=c[e>>2]|0;e=b+16|0;do{a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}while((b|0)<(e|0));i=f;return 20}function dr(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;g=e;c[f>>2]=b;c[g>>2]=d;a[c[f>>2]>>0]=68;a[(c[f>>2]|0)+1>>0]=10;a[(c[f>>2]|0)+2>>0]=(c[(c[g>>2]|0)+80>>2]|0)>>>8;a[(c[f>>2]|0)+3>>0]=c[(c[g>>2]|0)+80>>2];a[(c[f>>2]|0)+4>>0]=(c[(c[g>>2]|0)+84>>2]|0)>>>8&255|128;a[(c[f>>2]|0)+5>>0]=c[(c[g>>2]|0)+84>>2];a[(c[f>>2]|0)+6>>0]=(c[(c[g>>2]|0)+88>>2]|0)>>>8;a[(c[f>>2]|0)+7>>0]=c[(c[g>>2]|0)+88>>2];a[(c[f>>2]|0)+8>>0]=(c[(c[g>>2]|0)+92>>2]|0)>>>8;a[(c[f>>2]|0)+9>>0]=c[(c[g>>2]|0)+92>>2];a[(c[f>>2]|0)+10>>0]=-1;a[(c[f>>2]|0)+11>>0]=-1;i=e;return 12}function er(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+48|0;l=m+8|0;b=m+36|0;d=m+32|0;e=m;f=m+28|0;g=m+24|0;h=m+20|0;j=m+16|0;k=m+12|0;c[d>>2]=a;a=e;c[a>>2]=0;c[a+4>>2]=0;c[f>>2]=0;c[g>>2]=0;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;l=c[b>>2]|0;i=m;return l|0}switch(c[(c[d>>2]|0)+8>>2]|0){case 0:{if(!(c[(c[d>>2]|0)+12>>2]|0)){c[b>>2]=-2147483647;l=c[b>>2]|0;i=m;return l|0}c[h>>2]=ir(c[(c[d>>2]|0)+12>>2]|0,24336,g)|0;if(c[h>>2]|0){c[b>>2]=c[h>>2];l=c[b>>2]|0;i=m;return l|0}c[j>>2]=tu(c[d>>2]|0,c[g>>2]|0,e,f)|0;if(c[j>>2]|0){c[b>>2]=c[j>>2];l=c[b>>2]|0;i=m;return l|0}l=(c[d>>2]|0)+16|0;c[l>>2]=c[f>>2];c[l+4>>2]=0;c[k>>2]=mr(g)|0;if(c[k>>2]|0){c[b>>2]=c[k>>2];l=c[b>>2]|0;i=m;return l|0}break}case 1:{c[f>>2]=4194304;break}default:{c[l>>2]=93;Pu(24339,l);c[b>>2]=-2147483645;l=c[b>>2]|0;i=m;return l|0}}c[(c[d>>2]|0)+28>>2]=9464+(c[f>>2]|0);c[b>>2]=0;l=c[b>>2]|0;i=m;return l|0}function fr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+48|0;o=p+8|0;n=p;d=p+44|0;e=p+40|0;f=p+36|0;h=p+32|0;g=p+28|0;j=p+24|0;k=p+20|0;l=p+16|0;m=p+12|0;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;c[g>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;o=c[d>>2]|0;i=p;return o|0}if(!(c[f>>2]|0)){c[d>>2]=-2147483647;o=c[d>>2]|0;i=p;return o|0}if(!(c[(c[e>>2]|0)+24>>2]|0)){c[d>>2]=-2147483647;o=c[d>>2]|0;i=p;return o|0}Ox(c[(c[e>>2]|0)+24>>2]|0,0,c[(c[e>>2]|0)+28>>2]|0)|0;c[g>>2]=c[(c[e>>2]|0)+24>>2];c[c[g>>2]>>2]=c[c[e>>2]>>2];c[(c[g>>2]|0)+4>>2]=c[(c[e>>2]|0)+4>>2];c[(c[g>>2]|0)+32>>2]=c[(c[e>>2]|0)+8>>2];c[(c[g>>2]|0)+12>>2]=-1;c[(c[g>>2]|0)+16>>2]=-1;c[(c[g>>2]|0)+20>>2]=-1;c[(c[g>>2]|0)+24>>2]=-1;c[(c[g>>2]|0)+48>>2]=(c[(c[e>>2]|0)+24>>2]|0)+9464;switch(c[(c[e>>2]|0)+8>>2]|0){case 0:{if(!(c[(c[e>>2]|0)+12>>2]|0)){c[d>>2]=-2147483647;o=c[d>>2]|0;i=p;return o|0}if(256<=($v(c[(c[e>>2]|0)+12>>2]|0)|0)>>>0){c[d>>2]=-2147483647;o=c[d>>2]|0;i=p;return o|0}Tx((c[g>>2]|0)+64|0,c[(c[e>>2]|0)+12>>2]|0,$v(c[(c[e>>2]|0)+12>>2]|0)|0)|0;c[j>>2]=ir(c[(c[e>>2]|0)+12>>2]|0,24336,(c[g>>2]|0)+52|0)|0;if(c[j>>2]|0){c[d>>2]=c[j>>2];o=c[d>>2]|0;i=p;return o|0}c[k>>2]=tu(c[e>>2]|0,c[(c[g>>2]|0)+52>>2]|0,(c[g>>2]|0)+40|0,h)|0;if(c[k>>2]|0){c[d>>2]=c[k>>2];o=c[d>>2]|0;i=p;return o|0}c[l>>2]=vu(c[g>>2]|0)|0;if(c[l>>2]|0){c[d>>2]=c[l>>2];o=c[d>>2]|0;i=p;return o|0}c[m>>2]=uu(c[g>>2]|0)|0;if(c[m>>2]|0){c[d>>2]=c[m>>2];o=c[d>>2]|0;i=p;return o|0}break}case 1:{c[(c[g>>2]|0)+9392+64>>2]=(c[(c[g>>2]|0)+48>>2]|0)+2097152;break}default:{c[n>>2]=169;Pu(24339,n);c[d>>2]=-2147483645;o=c[d>>2]|0;i=p;return o|0}}c[c[f>>2]>>2]=c[g>>2];Pu(24374,o);c[d>>2]=0;o=c[d>>2]|0;i=p;return o|0}function gr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;k=m;d=m+28|0;e=m+24|0;n=m+20|0;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;c[e>>2]=a;c[n>>2]=b;c[f>>2]=0;c[g>>2]=c[n>>2];if(!(c[g>>2]|0)){c[d>>2]=-2147483647;n=c[d>>2]|0;i=m;return n|0}if(!(c[e>>2]|0)){c[d>>2]=-2147483647;n=c[d>>2]|0;i=m;return n|0}if(!(1==(c[(c[g>>2]|0)+32>>2]|0)?2==(c[(c[e>>2]|0)+16>>2]|0):0))l=7;if((l|0)==7?0==(c[c[e>>2]>>2]|0):0){c[d>>2]=-2147483647;n=c[d>>2]|0;i=m;return n|0}a:do switch(c[(c[g>>2]|0)+32>>2]|0){case 0:{c[f>>2]=c[(c[g>>2]|0)+448+((c[(c[g>>2]|0)+12>>2]|0)*2208|0)+116+4>>2];do if(c[f>>2]|0){if((c[(c[g>>2]|0)+408>>2]|0)==(c[f>>2]|0)?0==(c[(c[e>>2]|0)+16>>2]|0):0)break;c[(c[g>>2]|0)+320+16>>2]=c[c[e>>2]>>2];c[(c[g>>2]|0)+320+20>>2]=0;c[(c[e>>2]|0)+24>>2]=0;c[h>>2]=Qv(c[e>>2]|0,c[g>>2]|0)|0;if(!(c[h>>2]|0))break a;c[d>>2]=c[h>>2];n=c[d>>2]|0;i=m;return n|0}while(0);c[d>>2]=-2147483642;n=c[d>>2]|0;i=m;return n|0}case 1:{c[(c[g>>2]|0)+9296>>2]=c[c[e>>2]>>2];c[(c[g>>2]|0)+9300>>2]=c[(c[e>>2]|0)+4>>2];c[(c[g>>2]|0)+9304>>2]=0;c[(c[e>>2]|0)+8>>2]=0;c[j>>2]=Pv(c[e>>2]|0,c[g>>2]|0)|0;if(!(c[j>>2]|0)){c[(c[e>>2]|0)+8>>2]=(c[(c[g>>2]|0)+9300>>2]|0)-(c[(c[g>>2]|0)+9304>>2]|0);break a}c[d>>2]=c[j>>2];n=c[d>>2]|0;i=m;return n|0}default:{c[k>>2]=242;Pu(24339,k);c[d>>2]=-2147483645;n=c[d>>2]|0;i=m;return n|0}}while(0);c[(c[e>>2]|0)+24>>2]=(c[g>>2]|0)+320;c[(c[(c[e>>2]|0)+24>>2]|0)+12>>2]=-1;c[(c[(c[e>>2]|0)+24>>2]|0)+4>>2]=-1;c[(c[(c[e>>2]|0)+24>>2]|0)+24>>2]=1;c[(c[(c[e>>2]|0)+24>>2]|0)+28>>2]=1;c[(c[(c[e>>2]|0)+24>>2]|0)+32>>2]=1;c[(c[(c[e>>2]|0)+24>>2]|0)+40>>2]=0;c[d>>2]=0;n=c[d>>2]|0;i=m;return n|0}function hr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>2]=c[g>>2];do if(c[d>>2]|0){c[e>>2]=mr((c[d>>2]|0)+52|0)|0;if(c[e>>2]|0){c[b>>2]=c[e>>2];break}else{c[b>>2]=0;break}}else c[b>>2]=-2147483647;while(0);i=f;return c[b>>2]|0}function ir(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;f=i;i=i+16|0;e=f+12|0;j=f+8|0;h=f+4|0;g=f;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;b=Bw(c[j>>2]|0,c[h>>2]|0)|0;c[c[g>>2]>>2]=b;if(!(c[c[g>>2]>>2]|0)){c[e>>2]=-2147483646;j=c[e>>2]|0;i=f;return j|0}else{c[e>>2]=0;j=c[e>>2]|0;i=f;return j|0}return 0}function jr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;f=g+20|0;l=g+16|0;k=g;j=g+12|0;h=g+8|0;c[l>>2]=a;a=k;c[a>>2]=b;c[a+4>>2]=d;c[j>>2]=e;c[h>>2]=-2147483646;c[h>>2]=Ww(c[l>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;if(c[h>>2]|0){c[f>>2]=-2147483646;l=c[f>>2]|0;i=g;return l|0}else{c[f>>2]=0;l=c[f>>2]|0;i=g;return l|0}return 0}function kr(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;j=i;i=i+48|0;h=j+32|0;o=j+28|0;n=j+16|0;k=j+8|0;m=j+24|0;l=j;c[o>>2]=a;a=n;c[a>>2]=b;c[a+4>>2]=d;a=k;c[a>>2]=e;c[a+4>>2]=f;c[m>>2]=g;a=l;c[a>>2]=0;c[a+4>>2]=0;a=l;c[a>>2]=Mw(c[o>>2]|0,c[n>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;c[a+4>>2]=0;a=l;g=k;if((c[a>>2]|0)!=(c[g>>2]|0)?1:(c[a+4>>2]|0)!=(c[g+4>>2]|0)){c[h>>2]=-2147483646;o=c[h>>2]|0;i=j;return o|0}else{c[h>>2]=0;o=c[h>>2]|0;i=j;return o|0}return 0}function lr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+8|0;g=e+4|0;f=e;c[g>>2]=a;c[f>>2]=b;a=Vw(c[g>>2]|0)|0;b=c[f>>2]|0;c[b>>2]=a;c[b+4>>2]=((a|0)<0)<<31>>31;b=c[f>>2]|0;a=c[b+4>>2]|0;if(0>(a|0)|0==(a|0)&0>(c[b>>2]|0)>>>0){c[d>>2]=-2147483646;g=c[d>>2]|0;i=e;return g|0}else{c[d>>2]=0;g=c[d>>2]|0;i=e;return g|0}return 0}function mr(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=-2147483646;if(c[c[d>>2]>>2]|0?(c[e>>2]=kw(c[c[d>>2]>>2]|0)|0,c[c[d>>2]>>2]=0,0!=(c[e>>2]|0)):0){c[b>>2]=-2147483646;e=c[b>>2]|0;i=f;return e|0}c[b>>2]=0;e=c[b>>2]|0;i=f;return e|0}function nr(a){a=a|0;var b=0,d=0,e=0,f=0,g=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;t=i;i=i+96|0;q=t+48|0;p=t+40|0;o=t+32|0;s=t+24|0;r=t+16|0;n=t+8|0;m=t;b=t+84|0;d=t+80|0;e=t+76|0;f=t+72|0;g=t+68|0;h=t+64|0;j=t+60|0;k=t+56|0;l=t+52|0;c[d>>2]=a;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;s=c[b>>2]|0;i=t;return s|0}c[(c[d>>2]|0)+136+336>>2]=0;do if(1&c[c[d>>2]>>2]|0){c[e>>2]=or(c[d>>2]|0,(c[d>>2]|0)+136+344+((c[(c[d>>2]|0)+136+336>>2]|0)*1280|0)|0,1986618469)|0;if(!(c[e>>2]|0)){m=(c[d>>2]|0)+136+336|0;c[m>>2]=(c[m>>2]|0)+1;break}c[m>>2]=58;Ti(24594,m);c[b>>2]=c[e>>2];s=c[b>>2]|0;i=t;return s|0}while(0);do if(2&c[c[d>>2]>>2]|0){c[f>>2]=or(c[d>>2]|0,(c[d>>2]|0)+136+344+((c[(c[d>>2]|0)+136+336>>2]|0)*1280|0)|0,1936684398)|0;if(!(c[f>>2]|0)){n=(c[d>>2]|0)+136+336|0;c[n>>2]=(c[n>>2]|0)+1;break}c[n>>2]=65;Ti(24594,n);c[b>>2]=c[f>>2];s=c[b>>2]|0;i=t;return s|0}while(0);do if(4&c[c[d>>2]>>2]|0){if(!(c[(c[d>>2]|0)+12>>2]|0)){c[b>>2]=-2147483647;s=c[b>>2]|0;i=t;return s|0}do if(c[(c[d>>2]|0)+12>>2]&1024|0){c[g>>2]=or(c[d>>2]|0,(c[d>>2]|0)+136+344+((c[(c[d>>2]|0)+136+336>>2]|0)*1280|0)|0,1952807028)|0;if(!(c[g>>2]|0)){r=(c[d>>2]|0)+136+336|0;c[r>>2]=(c[r>>2]|0)+1;break}c[r>>2]=77;Ti(24594,r);c[b>>2]=c[g>>2];s=c[b>>2]|0;i=t;return s|0}while(0);if(c[(c[d>>2]|0)+12>>2]&2048|0){c[h>>2]=or(c[d>>2]|0,(c[d>>2]|0)+136+344+((c[(c[d>>2]|0)+136+336>>2]|0)*1280|0)|0,1751740020)|0;if(!(c[h>>2]|0)){s=(c[d>>2]|0)+136+336|0;c[s>>2]=(c[s>>2]|0)+1;break}c[s>>2]=84;Ti(24594,s);c[b>>2]=c[h>>2];s=c[b>>2]|0;i=t;return s|0}}while(0);if(2==(c[(c[d>>2]|0)+6352>>2]|0)?(c[j>>2]=Hr(c[d>>2]|0)|0,0!=(c[j>>2]|0)):0){c[o>>2]=92;Ti(24594,o);c[b>>2]=c[j>>2];s=c[b>>2]|0;i=t;return s|0}if(3==(c[(c[d>>2]|0)+6352>>2]|0)?(c[k>>2]=zt(c[d>>2]|0)|0,0!=(c[k>>2]|0)):0){c[p>>2]=98;Ti(24594,p);c[b>>2]=c[k>>2];s=c[b>>2]|0;i=t;return s|0}c[l>>2]=Ir(c[d>>2]|0)|0;if(c[l>>2]|0){c[q>>2]=102;Ti(24594,q);c[b>>2]=c[l>>2];s=c[b>>2]|0;i=t;return s|0}else{c[b>>2]=0;s=c[b>>2]|0;i=t;return s|0}return 0}function or(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+48|0;m=n+8|0;l=n;e=n+32|0;f=n+28|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[g>>2]|0)){c[e>>2]=-2147483647;m=c[e>>2]|0;i=n;return m|0}c[j>>2]=pr(c[f>>2]|0,(c[g>>2]|0)+8|0,c[h>>2]|0)|0;if(c[j>>2]|0){c[l>>2]=289;Ti(24594,l);c[e>>2]=c[j>>2];m=c[e>>2]|0;i=n;return m|0}c[k>>2]=qr(c[f>>2]|0,(c[g>>2]|0)+104|0,c[h>>2]|0)|0;if(c[k>>2]|0){c[m>>2]=292;Ti(24594,m);c[e>>2]=c[k>>2];m=c[e>>2]|0;i=n;return m|0}else{c[(c[g>>2]|0)+1272>>2]=c[h>>2];c[e>>2]=0;m=c[e>>2]|0;i=n;return m|0}return 0}function pr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[f>>2]|0)){c[e>>2]=-2147483647;d=c[e>>2]|0;i=j;return d|0}if(!(c[g>>2]|0)){c[e>>2]=-2147483647;d=c[e>>2]|0;i=j;return d|0}c[(c[g>>2]|0)+12>>2]=0;c[(c[g>>2]|0)+16>>2]=0;c[(c[g>>2]|0)+20>>2]=(c[(c[f>>2]|0)+136+336>>2]|0)+1;c[(c[g>>2]|0)+24>>2]=0;c[(c[g>>2]|0)+28>>2]=0;if(1986618469==(c[h>>2]|0)){c[(c[g>>2]|0)+84>>2]=c[(c[f>>2]|0)+16+88>>2]<<16;c[(c[g>>2]|0)+88>>2]=c[(c[f>>2]|0)+16+92>>2]<<16}else{c[(c[g>>2]|0)+84>>2]=0;c[(c[g>>2]|0)+88>>2]=0}c[e>>2]=0;d=c[e>>2]|0;i=j;return d|0}function qr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+48|0;o=p+16|0;n=p+8|0;m=p;e=p+44|0;f=p+40|0;g=p+36|0;h=p+32|0;j=p+28|0;k=p+24|0;l=p+20|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[g>>2]|0)){c[e>>2]=-2147483647;o=c[e>>2]|0;i=p;return o|0}c[j>>2]=rr(c[f>>2]|0,(c[g>>2]|0)+8|0,c[h>>2]|0)|0;if(c[j>>2]|0){c[m>>2]=352;Ti(24594,m);c[e>>2]=c[j>>2];o=c[e>>2]|0;i=p;return o|0}c[k>>2]=sr((c[g>>2]|0)+40|0,c[h>>2]|0)|0;if(c[k>>2]|0){c[n>>2]=355;Ti(24594,n);c[e>>2]=c[k>>2];o=c[e>>2]|0;i=p;return o|0}c[l>>2]=tr(c[f>>2]|0,(c[g>>2]|0)+88|0,c[h>>2]|0)|0;if(c[l>>2]|0){c[o>>2]=358;Ti(24594,o);c[e>>2]=c[l>>2];o=c[e>>2]|0;i=p;return o|0}else{c[e>>2]=0;o=c[e>>2]|0;i=p;return o|0}return 0}function rr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;e=k;c[g>>2]=a;c[h>>2]=b;c[e>>2]=d;if(!(c[g>>2]|0)){c[f>>2]=-2147483647;j=c[f>>2]|0;i=k;return j|0}if(!(c[h>>2]|0)){c[f>>2]=-2147483647;j=c[f>>2]|0;i=k;return j|0}c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+16>>2]=0;e=c[e>>2]|0;a:do if((e|0)>=1952807028)if((e|0)<1986618469)switch(e|0){case 1952807028:{j=6;break a}default:{j=8;break a}}else switch(e|0){case 1986618469:{j=6;break a}default:{j=8;break a}}else{if((e|0)<1936684398)switch(e|0){case 1751740020:{j=6;break a}default:{j=8;break a}}switch(e|0){case 1936684398:break;default:{j=8;break a}}c[(c[h>>2]|0)+20>>2]=c[(c[g>>2]|0)+112+12>>2]}while(0);if((j|0)==6)c[(c[h>>2]|0)+20>>2]=9e4;else if((j|0)==8)c[(c[h>>2]|0)+20>>2]=0;c[(c[h>>2]|0)+24>>2]=0;c[f>>2]=0;j=c[f>>2]|0;i=k;return j|0}function sr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;b=c[d>>2]|0;i=g;return b|0}else{c[(c[e>>2]|0)+16>>2]=c[f>>2];c[d>>2]=0;b=c[d>>2]|0;i=g;return b|0}return 0}function tr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[g>>2]|0)){c[e>>2]=-2147483647;k=c[e>>2]|0;i=l;return k|0}c[j>>2]=ur(c[f>>2]|0,(c[g>>2]|0)+64|0,c[h>>2]|0)|0;if(c[j>>2]|0){c[k>>2]=444;Ti(24594,k);c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}else{c[e>>2]=0;k=c[e>>2]|0;i=l;return k|0}return 0}function ur(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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,v=0;v=i;i=i+96|0;s=v+40|0;r=v+32|0;u=v+24|0;t=v+16|0;q=v+8|0;p=v;e=v+80|0;f=v+76|0;g=v+72|0;h=v+68|0;j=v+64|0;k=v+60|0;l=v+56|0;m=v+52|0;n=v+48|0;o=v+44|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[g>>2]|0)){c[e>>2]=-2147483647;u=c[e>>2]|0;i=v;return u|0}c[j>>2]=vr(c[f>>2]|0,(c[g>>2]|0)+8|0,c[h>>2]|0)|0;if(c[j>>2]|0){c[p>>2]=227;Ti(24594,p);c[e>>2]=c[j>>2];u=c[e>>2]|0;i=v;return u|0}c[(c[g>>2]|0)+836+12>>2]=0;c[(c[g>>2]|0)+836+16>>2]=0;Mi((c[g>>2]|0)+836+20|0,0,12)|0;c[k>>2]=Ni((c[g>>2]|0)+836+20|0,1e3)|0;if(c[k>>2]|0){c[q>>2]=233;Ti(24594,q);c[e>>2]=c[k>>2];u=c[e>>2]|0;i=v;return u|0}c[(c[g>>2]|0)+804+12>>2]=0;Mi((c[g>>2]|0)+804+16|0,0,12)|0;c[l>>2]=Ni((c[g>>2]|0)+804+16|0,100)|0;if(c[l>>2]|0){c[t>>2]=238;Ti(24594,t);c[e>>2]=c[l>>2];u=c[e>>2]|0;i=v;return u|0}c[(c[g>>2]|0)+872+12>>2]=(c[(c[f>>2]|0)+6352>>2]|0)==3?0:1;c[(c[g>>2]|0)+872+16>>2]=1;c[(c[g>>2]|0)+872+24>>2]=1;c[(c[g>>2]|0)+872+32>>2]=1;c[(c[g>>2]|0)+872+16+4>>2]=0;c[(c[g>>2]|0)+872+24+4>>2]=0;c[(c[g>>2]|0)+872+32+4>>2]=0;c[(c[g>>2]|0)+912+12>>2]=0;c[(c[g>>2]|0)+912+28>>2]=0;Mi((c[g>>2]|0)+912+16|0,0,12)|0;c[m>>2]=Ni((c[g>>2]|0)+912+16|0,10)|0;if(c[m>>2]|0){c[u>>2]=255;Ti(24594,u);c[e>>2]=c[m>>2];u=c[e>>2]|0;i=v;return u|0}if(1986618469==(c[h>>2]|0)){c[(c[g>>2]|0)+960+12>>2]=0;Mi((c[g>>2]|0)+960+16|0,0,12)|0;c[n>>2]=Ni((c[g>>2]|0)+960+16|0,50)|0;if(c[n>>2]|0){c[r>>2]=262;Ti(24594,r);c[e>>2]=c[n>>2];u=c[e>>2]|0;i=v;return u|0}c[(c[g>>2]|0)+988+12>>2]=0;Mi((c[g>>2]|0)+988+16|0,0,12)|0;c[o>>2]=Ni((c[g>>2]|0)+988+16|0,10)|0;if(c[o>>2]|0){c[s>>2]=268;Ti(24594,s);c[e>>2]=c[o>>2];u=c[e>>2]|0;i=v;return u|0}}c[e>>2]=0;u=c[e>>2]|0;i=v;return u|0}function vr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;h=k+16|0;f=k+12|0;g=k+8|0;e=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[e>>2]=d;c[j>>2]=0;if(!(c[g>>2]|0)){c[h>>2]=-2147483647;j=c[h>>2]|0;i=k;return j|0}c[(c[g>>2]|0)+12>>2]=1;e=c[e>>2]|0;a:do if((e|0)<1952807028)if((e|0)<1936684398){switch(e|0){case 1751740020:break;default:{e=8;break a}}c[j>>2]=Gr(c[f>>2]|0,c[g>>2]|0)|0;e=9;break}else{switch(e|0){case 1936684398:break;default:{e=8;break a}}c[j>>2]=Cr(c[f>>2]|0,c[g>>2]|0)|0;e=9;break}else if((e|0)<1986618469){switch(e|0){case 1952807028:break;default:{e=8;break a}}c[j>>2]=Fr(c[f>>2]|0,c[g>>2]|0)|0;e=9;break}else{switch(e|0){case 1986618469:break;default:{e=8;break a}}c[j>>2]=wr(c[f>>2]|0,c[g>>2]|0)|0;e=9;break}while(0);if((e|0)==8){c[h>>2]=-2147483646;j=c[h>>2]|0;i=k;return j|0}else if((e|0)==9){c[h>>2]=c[j>>2];j=c[h>>2]|0;i=k;return j|0}return 0}function wr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;b=c[d>>2]|0;i=h;return b|0}if(!(c[f>>2]|0)){c[d>>2]=-2147483647;b=c[d>>2]|0;i=h;return b|0}switch(c[(c[e>>2]|0)+4>>2]|0){case 27:{c[g>>2]=xr(c[e>>2]|0,(c[f>>2]|0)+20|0)|0;c[(c[f>>2]|0)+16>>2]=1635148593;break}case 16:{c[g>>2]=yr(c[e>>2]|0,(c[f>>2]|0)+20|0)|0;c[(c[f>>2]|0)+16>>2]=1836070006;break}case 36:{c[g>>2]=Br(c[e>>2]|0,(c[f>>2]|0)+20|0)|0;c[(c[f>>2]|0)+16>>2]=1752589105;break}default:{c[d>>2]=-2147483646;b=c[d>>2]|0;i=h;return b|0}}c[d>>2]=c[g>>2];b=c[d>>2]|0;i=h;return b|0}function xr(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=d;if(!(c[f>>2]|0)){c[e>>2]=-2147483647;a=c[e>>2]|0;i=h;return a|0}if(!(c[g>>2]|0)){c[e>>2]=-2147483647;a=c[e>>2]|0;i=h;return a|0}else{b[(c[g>>2]|0)+8+6>>1]=1;b[(c[g>>2]|0)+8+24>>1]=c[(c[f>>2]|0)+16+88>>2];b[(c[g>>2]|0)+8+26>>1]=c[(c[f>>2]|0)+16+92>>2];Li((c[g>>2]|0)+8+42|0,24401,32)|0;c[e>>2]=0;a=c[e>>2]|0;i=h;return a|0}return 0}function yr(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=d;if(!(c[f>>2]|0)){c[e>>2]=-2147483647;a=c[e>>2]|0;i=h;return a|0}if(!(c[g>>2]|0)){c[e>>2]=-2147483647;a=c[e>>2]|0;i=h;return a|0}else{b[(c[g>>2]|0)+8+24>>1]=c[(c[f>>2]|0)+16+88>>2];b[(c[g>>2]|0)+8+26>>1]=c[(c[f>>2]|0)+16+92>>2];Li((c[g>>2]|0)+8+42|0,24433,32)|0;c[e>>2]=zr(c[f>>2]|0,(c[g>>2]|0)+88|0,1986618469)|0;a=c[e>>2]|0;i=h;return a|0}return 0}function zr(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+32|0;g=o+16|0;h=o+12|0;j=o+8|0;k=o+4|0;n=o;m=o+21|0;l=o+20|0;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[n>>2]=0;a[m>>0]=0;a[l>>0]=0;if(!(c[h>>2]|0)){c[g>>2]=-2147483647;f=c[g>>2]|0;i=o;return f|0}if(!(c[j>>2]|0)){c[g>>2]=-2147483647;f=c[g>>2]|0;i=o;return f|0}if(1936684398==(c[k>>2]|0)){if((c[(c[h>>2]|0)+8>>2]|0)==15)a[l>>0]=2;else a[l>>0]=32;a[m>>0]=Ar(c[(c[h>>2]|0)+112+12>>2]|0)|0;Mi((c[j>>2]|0)+34|0,0,256)|0;f=((d[l>>0]|0)<<3|(d[m>>0]|0)>>1&7)&255;b=c[n>>2]|0;c[n>>2]=b+1;a[(c[j>>2]|0)+34+b>>0]=f;b=((d[m>>0]|0)<<7&128|(c[(c[h>>2]|0)+112+8>>2]|0)+1<<3&120)&255;f=c[n>>2]|0;c[n>>2]=f+1;a[(c[j>>2]|0)+34+f>>0]=b;a[(c[j>>2]|0)+33>>0]=c[n>>2]}else{Mi((c[j>>2]|0)+34|0,0,256)|0;a[(c[j>>2]|0)+33>>0]=0}c[g>>2]=0;f=c[g>>2]|0;i=o;return f|0}function Ar(b){b=b|0;var e=0,f=0,g=0;g=i;i=i+16|0;e=g;f=g+4|0;c[e>>2]=b;a[f>>0]=0;while(1){if((d[f>>0]|0)>>>0>=13)break;if((c[3088+((d[f>>0]|0)<<2)>>2]|0)==(c[e>>2]|0))break;a[f>>0]=(a[f>>0]|0)+1<<24>>24}if((d[f>>0]|0)>>>0<13){f=a[f>>0]|0;i=g;return f|0}a[f>>0]=8;f=a[f>>0]|0;i=g;return f|0}function Br(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=d;if(!(c[f>>2]|0)){c[e>>2]=-2147483647;a=c[e>>2]|0;i=h;return a|0}if(!(c[g>>2]|0)){c[e>>2]=-2147483647;a=c[e>>2]|0;i=h;return a|0}else{b[(c[g>>2]|0)+8+6>>1]=1;b[(c[g>>2]|0)+8+24>>1]=c[(c[f>>2]|0)+16+88>>2];b[(c[g>>2]|0)+8+26>>1]=c[(c[f>>2]|0)+16+92>>2];Li((c[g>>2]|0)+8+42|0,24465,32)|0;c[e>>2]=0;a=c[e>>2]|0;i=h;return a|0}return 0}function Cr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;d=h+4|0;g=h;c[f>>2]=a;c[d>>2]=b;c[g>>2]=0;if(!(c[f>>2]|0)){c[e>>2]=-2147483647;g=c[e>>2]|0;i=h;return g|0}if(!(c[d>>2]|0)){c[e>>2]=-2147483647;g=c[e>>2]|0;i=h;return g|0}a:do switch(c[(c[f>>2]|0)+8>>2]|0){case 15:{c[g>>2]=Dr(c[f>>2]|0,(c[d>>2]|0)+20|0)|0;c[(c[d>>2]|0)+16>>2]=1836069985;break}case 145:case 144:{c[g>>2]=Er(c[f>>2]|0,(c[d>>2]|0)+20|0)|0;d=(c[d>>2]|0)+16|0;if(144==(c[(c[f>>2]|0)+8>>2]|0)){c[d>>2]=1634492791;break a}else{c[d>>2]=1970037111;break a}}default:{c[e>>2]=-2147483646;g=c[e>>2]|0;i=h;return g|0}}while(0);c[e>>2]=c[g>>2];g=c[e>>2]|0;i=h;return g|0}function Dr(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=d;if(!(c[f>>2]|0)){c[e>>2]=-2147483647;a=c[e>>2]|0;i=h;return a|0}if(!(c[g>>2]|0)){c[e>>2]=-2147483647;a=c[e>>2]|0;i=h;return a|0}else{b[(c[g>>2]|0)+24>>1]=(c[(c[f>>2]|0)+112+8>>2]|0)+1;b[(c[g>>2]|0)+26>>1]=16;c[(c[g>>2]|0)+32>>2]=c[(c[f>>2]|0)+112+12>>2]<<16;c[e>>2]=zr(c[f>>2]|0,(c[g>>2]|0)+36|0,1936684398)|0;a=c[e>>2]|0;i=h;return a|0}return 0}function Er(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=d;if(!(c[f>>2]|0)){c[e>>2]=-2147483647;a=c[e>>2]|0;i=h;return a|0}if(!(c[g>>2]|0)){c[e>>2]=-2147483647;a=c[e>>2]|0;i=h;return a|0}else{b[(c[g>>2]|0)+14>>1]=1;b[(c[g>>2]|0)+24>>1]=(c[(c[f>>2]|0)+112+8>>2]|0)+1;b[(c[g>>2]|0)+26>>1]=16;c[(c[g>>2]|0)+32>>2]=c[(c[f>>2]|0)+112+12>>2]<<16;c[e>>2]=0;a=c[e>>2]|0;i=h;return a|0}return 0}function Fr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;do if(c[g>>2]|0)if(!(c[e>>2]|0)){c[d>>2]=-2147483647;break}else{c[(c[e>>2]|0)+16>>2]=1952807028;c[d>>2]=0;break}else c[d>>2]=-2147483647;while(0);i=f;return c[d>>2]|0}
function ub(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+15&-16;return b|0}function vb(){return i|0}function wb(a){a=a|0;i=a}function xb(a,b){a=a|0;b=b|0;i=a;j=b}function yb(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function zb(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0]}function Ab(b){b=b|0;a[k>>0]=a[b>>0];a[k+1>>0]=a[b+1>>0];a[k+2>>0]=a[b+2>>0];a[k+3>>0]=a[b+3>>0];a[k+4>>0]=a[b+4>>0];a[k+5>>0]=a[b+5>>0];a[k+6>>0]=a[b+6>>0];a[k+7>>0]=a[b+7>>0]}function Bb(a){a=a|0;D=a}function Cb(){return D|0}function Db(a,b){a=a|0;b=b|0;ua(c[a>>2]|0,c[a+4>>2]|0,c[a+8>>2]|0,b|0);return}function Eb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;a=Qb(29632,f)|0;i=e;return a|0}function Fb(){var a=0,b=0,d=0,e=0;e=i;i=i+16|0;d=e+8|0;b=e;a=Wb(c[7408]|0,0,0)|0;if(!a){a=Yb(c[7408]|0,1,0)|0;if(!a)a=0;else nw(5746,d)|0}else nw(5724,b)|0;i=e;return a|0}function Gb(a,b,d){a=a|0;b=b|0;d=d|0;return Xb(c[7408]|0,a,b,d)|0}function Hb(){return Zb(c[7408]|0)|0}function Ib(){return _b(c[7408]|0)|0}function Jb(){Kb();return}function Kb(){var a=0;a=29636;do{Lb(a);a=a+32|0}while((a|0)!=160708);Wa(55,0,n|0)|0;return}function Lb(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=0;Nh(a+4|0);i=b;return}function Mb(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;a=160708;do{a=a+-32|0;Nb(a)}while((a|0)!=29636);i=b;return}function Nb(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=0;Qh(a+4|0);i=b;return}function Ob(a){a=a|0;Fa(a|0)|0;zx()}function Pb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;b=k+20|0;d=k+12|0;j=k+24|0;h=k+16|0;g=k+8|0;e=k;f=k+4|0;c[d>>2]=a;if(!(c[d>>2]|0)){c[b>>2]=-1;j=c[b>>2]|0;i=k;return j|0}c[j>>2]=c[d>>2];c[h>>2]=29636;c[g>>2]=160676;if((c[j>>2]|0)>>>0>=(c[h>>2]|0)>>>0?(c[j>>2]|0)>>>0<=(c[g>>2]|0)>>>0:0){c[f>>2]=(((c[j>>2]|0)-(c[h>>2]|0)|0)>>>0)/32|0;do if(!((c[f>>2]|0)<0|(c[f>>2]|0)>=4096))if((c[j>>2]|0)!=(29636+(c[f>>2]<<5)|0)){c[b>>2]=-1;c[e>>2]=1;break}else{c[b>>2]=c[f>>2];c[e>>2]=1;break}else{c[b>>2]=-1;c[e>>2]=1}while(0)}else{c[b>>2]=-1;c[e>>2]=1}j=c[b>>2]|0;i=k;return j|0}function Qb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+48|0;d=n+32|0;e=n+16|0;f=n+8|0;k=n+36|0;h=n+24|0;l=n+12|0;g=n;j=n+4|0;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;m=c[d>>2]|0;i=n;return m|0}c[k>>2]=0;a:while(1){if((c[k>>2]|0)>=4096){m=18;break}if(!(Rb(29636+(c[k>>2]<<5)|0)|0)){Tb(h,Sb(29636+(c[k>>2]<<5)|0)|0,0);if(!(Rb(29636+(c[k>>2]<<5)|0)|0)){c[l>>2]=0;b=Gx(240)|0;hc(b);c[l>>2]=b;if(!(c[l>>2]|0)){m=8;break}c[j>>2]=ic(c[l>>2]|0,c[f>>2]|0)|0;if(c[j>>2]|0){a=c[l>>2]|0;if(a|0)lb[c[(c[a>>2]|0)+4>>2]&63](a);c[l>>2]=0;c[d>>2]=c[j>>2];c[g>>2]=1}else{Vb(29636+(c[k>>2]<<5)|0,c[l>>2]|0);c[g>>2]=2}}else c[g>>2]=0;Ub(h);switch(c[g>>2]|0){case 2:{m=18;break a}case 0:break;default:break a}}c[k>>2]=(c[k>>2]|0)+1}if((m|0)==8){n=za(4)|0;c[n>>2]=-2147483646;Xa(n|0,152,0)}do if((m|0)==18)if((c[k>>2]|0)>=0&(c[k>>2]|0)<4096){c[c[e>>2]>>2]=29636+(c[k>>2]<<5);c[d>>2]=0;c[g>>2]=1;break}else{c[d>>2]=-2147483646;c[g>>2]=1;break}while(0);m=c[d>>2]|0;i=n;return m|0}function Rb(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[c[b>>2]>>2]|0}function Sb(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return (c[b>>2]|0)+4|0}function Tb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=d;a=c[h>>2]|0;c[a>>2]=c[g>>2];c[a+4>>2]=c[f>>2];d=c[a+4>>2]|0;if(1==(c[a>>2]|0)){Nh(d);i=e;return}else{Oh(d);i=e;return}}function Ub(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;a=c[b>>2]|0;b=c[a+4>>2]|0;if(1==(c[a>>2]|0))Qh(b);else Ph(b);c[a>>2]=0;c[a+4>>2]=0;i=d;return}function Vb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[c[e>>2]>>2]=c[f>>2];i=d;return}function Wb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+48|0;e=m+32|0;n=m+16|0;f=m+8|0;g=m+4|0;k=m+36|0;h=m;j=m+24|0;l=m+12|0;c[n>>2]=a;c[f>>2]=b;c[g>>2]=d;c[k>>2]=Pb(c[n>>2]|0)|0;if((c[k>>2]|0)<0|(c[k>>2]|0)>=4096){c[e>>2]=-2147483648;c[h>>2]=1;n=c[e>>2]|0;i=m;return n|0}Tb(j,Sb(29636+(c[k>>2]<<5)|0)|0,0);c[l>>2]=Rb(29636+(c[k>>2]<<5)|0)|0;if(!(c[l>>2]|0)){c[e>>2]=-2147483648;c[h>>2]=1}else{c[e>>2]=rc(c[l>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;c[h>>2]=1}Ub(j);n=c[e>>2]|0;i=m;return n|0}function Xb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+48|0;f=o+32|0;p=o+20|0;g=o+12|0;h=o+8|0;j=o+4|0;m=o+36|0;k=o;l=o+24|0;n=o+16|0;c[p>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[m>>2]=Pb(c[p>>2]|0)|0;if((c[m>>2]|0)<0|(c[m>>2]|0)>=4096){c[f>>2]=-2147483648;c[k>>2]=1;p=c[f>>2]|0;i=o;return p|0}Tb(l,Sb(29636+(c[m>>2]<<5)|0)|0,0);c[n>>2]=Rb(29636+(c[m>>2]<<5)|0)|0;if(!(c[n>>2]|0)){c[f>>2]=-2147483648;c[k>>2]=1}else{c[f>>2]=wc(c[n>>2]|0,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;c[k>>2]=1}Ub(l);p=c[f>>2]|0;i=o;return p|0}function Yb(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+48|0;e=m+32|0;n=m+16|0;f=m+8|0;g=m+4|0;k=m+36|0;h=m;j=m+24|0;l=m+12|0;c[n>>2]=a;c[f>>2]=b;c[g>>2]=d;c[k>>2]=Pb(c[n>>2]|0)|0;if((c[k>>2]|0)<0|(c[k>>2]|0)>=4096){c[e>>2]=-2147483648;c[h>>2]=1;n=c[e>>2]|0;i=m;return n|0}Tb(j,Sb(29636+(c[k>>2]<<5)|0)|0,0);c[l>>2]=Rb(29636+(c[k>>2]<<5)|0)|0;if(!(c[l>>2]|0)){c[e>>2]=-2147483648;c[h>>2]=1}else{c[e>>2]=xc(c[l>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;c[h>>2]=1}Ub(j);n=c[e>>2]|0;i=m;return n|0}function Zb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;b=h+24|0;j=h+8|0;f=h+28|0;d=h;e=h+16|0;g=h+4|0;c[j>>2]=a;c[f>>2]=Pb(c[j>>2]|0)|0;if((c[f>>2]|0)<0|(c[f>>2]|0)>=4096){c[b>>2]=-2147483648;c[d>>2]=1;j=c[b>>2]|0;i=h;return j|0}Tb(e,Sb(29636+(c[f>>2]<<5)|0)|0,0);c[g>>2]=Rb(29636+(c[f>>2]<<5)|0)|0;if(!(c[g>>2]|0)){c[b>>2]=-2147483648;c[d>>2]=1}else{c[b>>2]=ac(c[g>>2]|0)|0;c[d>>2]=1}Ub(e);j=c[b>>2]|0;i=h;return j|0}function _b(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+24|0;j=h+8|0;b=h+28|0;e=h;f=h+16|0;g=h+4|0;c[j>>2]=a;c[b>>2]=Pb(c[j>>2]|0)|0;if((c[b>>2]|0)<0|(c[b>>2]|0)>=4096){c[d>>2]=-2147483648;c[e>>2]=1;j=c[d>>2]|0;i=h;return j|0}Tb(f,Sb(29636+(c[b>>2]<<5)|0)|0,0);c[g>>2]=Rb(29636+(c[b>>2]<<5)|0)|0;if(!(c[g>>2]|0)){c[d>>2]=-2147483648;c[e>>2]=1}else{Vb(29636+(c[b>>2]<<5)|0,0);a=c[g>>2]|0;if(a|0)lb[c[(c[a>>2]|0)+4>>2]&63](a);c[g>>2]=0;c[d>>2]=0;c[e>>2]=1}Ub(f);j=c[d>>2]|0;i=h;return j|0}function $b(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=168;ac(a)|0;cc(a)|0;i=b;return}function ac(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+8|0;g=f+4|0;e=f+12|0;d=f;c[g>>2]=a;a=c[g>>2]|0;if(c[a+20>>2]|0?c[a+16>>2]|0:0){if(c[a+24>>2]|0){c[b>>2]=-2147483644;g=c[b>>2]|0;i=f;return g|0}c[a+24>>2]=2;if(c[a+172>>2]|0?c[a+184>>2]&1|0:0)bc(a)|0;g=c[a+16>>2]|0;c[e>>2]=nb[c[(c[g>>2]|0)+28>>2]&127](g)|0;do if(!(c[e>>2]|0)){g=c[a+20>>2]|0;c[e>>2]=nb[c[(c[g>>2]|0)+32>>2]&127](g)|0;if(c[e>>2]|0){c[b>>2]=c[e>>2];c[d>>2]=1;break}else{c[a+172>>2]=0;c[a+184>>2]=0;Ox(a+28|0,0,140)|0;c[b>>2]=0;c[d>>2]=1;break}}else{c[b>>2]=c[e>>2];c[d>>2]=1}while(0);g=c[b>>2]|0;i=f;return g|0}c[b>>2]=-2147483644;g=c[b>>2]|0;i=f;return g|0}function bc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;if(!(c[a+172>>2]|0)){i=b;return 0}if(!(c[a+176>>2]|0)){i=b;return 0}Sh(c[a+176>>2]|0)|0;c[a+176>>2]=0;c[a+180>>2]=0;i=b;return 0}function cc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;dc(a)|0;ec(a)|0;fc(a)|0;i=b;return 0}function dc(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;if(!(c[a+16>>2]|0)){c[b>>2]=-2147483644;e=c[b>>2]|0;i=d;return e|0}else{e=c[a+16>>2]|0;rb[c[(c[e>>2]|0)+16>>2]&127](e,0)|0;c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}return 0}function ec(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;a=c[b>>2]|0;if(!(c[a+16>>2]|0)){i=d;return 0}b=c[a+16>>2]|0;if(b|0)lb[c[(c[b>>2]|0)+4>>2]&63](b);c[a+16>>2]=0;i=d;return 0}function fc(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;a=c[b>>2]|0;if(!(c[a+20>>2]|0)){i=d;return 0}b=c[a+20>>2]|0;if(b|0)lb[c[(c[b>>2]|0)+4>>2]&63](b);c[a+20>>2]=0;i=d;return 0}function gc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;$b(a);lx(a);i=b;return}function hc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=168;c[a+4>>2]=428016944;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=2;c[a+168>>2]=0;c[a+172>>2]=0;c[a+176>>2]=0;c[a+180>>2]=0;Ox(a+28|0,0,140)|0;c[a+184>>2]=0;c[a+188>>2]=0;c[a+192>>2]=0;Fh(a+196|0,40);c[a+236>>2]=1;i=b;return}function ic(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;d=g+8|0;h=g+4|0;e=g;f=g+12|0;c[h>>2]=a;c[e>>2]=b;b=c[h>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;h=c[d>>2]|0;i=g;return h|0}cc(b)|0;c[f>>2]=jc(b,c[e>>2]|0)|0;if(c[f>>2]|0){h=za(4)|0;c[h>>2]=c[f>>2];Xa(h|0,144,0)}c[f>>2]=mc(b,c[e>>2]|0)|0;if(c[f>>2]|0){h=za(4)|0;c[h>>2]=c[f>>2];Xa(h|0,144,0)}c[f>>2]=oc(b,c[e>>2]|0)|0;if(c[f>>2]|0){h=za(4)|0;c[h>>2]=c[f>>2];Xa(h|0,144,0)}c[f>>2]=qc(b)|0;if(c[f>>2]|0){h=za(4)|0;c[h>>2]=c[f>>2];Xa(h|0,144,0)}c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}function jc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;d=g+8|0;h=g+4|0;e=g;c[h>>2]=a;c[e>>2]=b;b=c[h>>2]|0;do if((c[c[e>>2]>>2]|0)!=0?(c[(c[e>>2]|0)+4>>2]|0)==40:0){if(kc(b,c[c[e>>2]>>2]|0)|0){c[d>>2]=0;break}if(lc(b,c[c[e>>2]>>2]|0)|0){c[d>>2]=0;break}else{c[d>>2]=-2147483645;break}}else f=3;while(0);if((f|0)==3)c[d>>2]=-2147483645;i=g;return c[d>>2]|0}function kc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;h=k+12|0;f=k+8|0;e=k+4|0;g=k+16|0;j=k;c[f>>2]=b;c[e>>2]=d;f=c[f>>2]|0;c[g>>2]=c[e>>2];d=f+196|0;b=c[e>>2]|0;e=d+40|0;do{a[d>>0]=a[b>>0]|0;d=d+1|0;b=b+1|0}while((d|0)<(e|0));d=c[c[g>>2]>>2]|0;a:do if((d|0)<1213418804){switch(d|0){case 1212893236:break;default:{d=4;break a}}c[f+8>>2]=1;c[f+12>>2]=256;d=5}else{switch(d|0){case 1213418804:break;default:{d=4;break a}}c[f+8>>2]=1;c[f+12>>2]=3;d=5}while(0);if((d|0)==4){c[h>>2]=0;c[j>>2]=1;j=c[h>>2]|0;i=k;return j|0}else if((d|0)==5){c[f+168>>2]=0;c[h>>2]=1;c[j>>2]=1;j=c[h>>2]|0;i=k;return j|0}return 0}function lc(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;h=i;i=i+32|0;d=h+12|0;k=h+8|0;j=h+4|0;g=h+16|0;f=h;c[k>>2]=a;c[j>>2]=b;b=c[k>>2]|0;c[g>>2]=c[j>>2];if((c[c[g>>2]>>2]|0)!=1212894537){c[d>>2]=0;c[f>>2]=1;k=c[d>>2]|0;i=h;return k|0}else{c[b+8>>2]=e[(c[g>>2]|0)+8>>1];c[b+12>>2]=e[(c[g>>2]|0)+10>>1];c[b+168>>2]=1;c[d>>2]=1;c[f>>2]=1;k=c[d>>2]|0;i=h;return k|0}return 0}function mc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+64|0;e=k+56|0;d=k+8|0;f=k+4|0;h=k+60|0;g=k;j=k+16|0;c[d>>2]=a;c[f>>2]=b;b=c[d>>2]|0;ec(b)|0;a:do switch(c[b+8>>2]|0){case 1:{d=Gx(320)|0;Nk(d);c[b+16>>2]=d;if(!(c[b+16>>2]|0)){k=za(4)|0;c[k>>2]=-2147483646;Xa(k|0,152,0)}break}case 2:{d=Gx(776)|0;em(d);c[b+16>>2]=d;if(!(c[b+16>>2]|0)){k=za(4)|0;c[k>>2]=-2147483646;Xa(k|0,152,0)}break}case 3:{d=Gx(540)|0;Om(d);c[b+16>>2]=d;if(!(c[b+16>>2]|0)){k=za(4)|0;c[k>>2]=-2147483646;Xa(k|0,152,0)}break}case 4:{d=Gx(4764)|0;Mo(d);c[b+16>>2]=d;if(!(c[b+16>>2]|0)){k=za(4)|0;c[k>>2]=-2147483646;Xa(k|0,152,0)}break}case 5:{d=Gx(344)|0;gn(d);c[b+16>>2]=d;if(!(c[b+16>>2]|0)){k=za(4)|0;c[k>>2]=-2147483646;Xa(k|0,152,0)}break}case 6:{d=Gx(360)|0;Dj(d);c[b+16>>2]=d;if(!(c[b+16>>2]|0)){k=za(4)|0;c[k>>2]=-2147483646;Xa(k|0,152,0)}break}case 7:{d=Gx(1096)|0;Op(d);c[b+16>>2]=d;if(!(c[b+16>>2]|0)){k=za(4)|0;c[k>>2]=-2147483646;Xa(k|0,152,0)}break}case 16:{d=Gx(240)|0;cp(d);c[b+16>>2]=d;if(!(c[b+16>>2]|0)){k=za(4)|0;c[k>>2]=-2147483646;Xa(k|0,152,0)}break}case 0:switch(c[b+12>>2]|0){case 256:{d=Gx(276)|0;kk(d);c[b+16>>2]=d;if(c[b+16>>2]|0)break a;k=za(4)|0;c[k>>2]=-2147483646;Xa(k|0,152,0)}case 3:{d=Gx(244)|0;hl(d);c[b+16>>2]=d;if(c[b+16>>2]|0)break a;k=za(4)|0;c[k>>2]=-2147483646;Xa(k|0,152,0)}case 2:{d=Gx(228)|0;Dn(d);c[b+16>>2]=d;if(c[b+16>>2]|0)break a;k=za(4)|0;c[k>>2]=-2147483646;Xa(k|0,152,0)}default:{c[e>>2]=-2147483647;j=c[e>>2]|0;i=k;return j|0}}default:{c[e>>2]=-2147483647;j=c[e>>2]|0;i=k;return j|0}}while(0);d=c[b+16>>2]|0;c[h>>2]=nb[c[(c[d>>2]|0)+8>>2]&127](d)|0;do if(!(c[h>>2]|0)){if(1==(c[b+8>>2]|0)?1==(c[b+168>>2]|0):0){a=j;d=a+40|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(d|0));c[h>>2]=nc(b,c[c[f>>2]>>2]|0,j)|0;if(c[h>>2]|0){c[e>>2]=c[h>>2];c[g>>2]=1}else{d=c[b+16>>2]|0;c[h>>2]=jb[c[(c[d>>2]|0)+20>>2]&63](d,j,c[(c[f>>2]|0)+8>>2]|0)|0;c[g>>2]=0}if(c[g>>2]|0)break}else{j=c[b+16>>2]|0;c[h>>2]=jb[c[(c[j>>2]|0)+20>>2]&63](j,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0}if(c[h>>2]|0){c[e>>2]=c[h>>2];c[g>>2]=1;break}else{c[e>>2]=0;c[g>>2]=1;break}}else{c[e>>2]=c[h>>2];c[g>>2]=1}while(0);j=c[e>>2]|0;i=k;return j|0}function nc(a,f,g){a=a|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+32|0;h=o+16|0;j=o+4|0;k=o;m=o+20|0;l=o+12|0;c[o+8>>2]=a;c[j>>2]=f;c[k>>2]=g;if(!((c[j>>2]|0)!=0&(c[k>>2]|0)!=0)){c[h>>2]=-2147483645;n=c[h>>2]|0;i=o;return n|0}c[m>>2]=c[j>>2];c[l>>2]=c[k>>2];a:do if(1!=(e[(c[m>>2]|0)+10>>1]|0|0)?256!=(e[(c[m>>2]|0)+10>>1]|0|0):0){do if(3==(e[(c[m>>2]|0)+10>>1]|0|0)){if(28944!=(e[(c[m>>2]|0)+12>>1]|0|0)?28945!=(e[(c[m>>2]|0)+12>>1]|0|0):0)break;c[c[l>>2]>>2]=1213418804;break a}while(0);c[c[l>>2]>>2]=1212894516}else n=5;while(0);if((n|0)==5)c[c[l>>2]>>2]=1212893236;b[(c[l>>2]|0)+20>>1]=(d[(c[m>>2]|0)+14>>0]|0)+4096;b[(c[l>>2]|0)+22>>1]=d[(c[m>>2]|0)+15>>0]|0;c[(c[l>>2]|0)+24>>2]=c[(c[m>>2]|0)+16>>2];c[(c[l>>2]|0)+32>>2]=e[(c[m>>2]|0)+12>>1];c[h>>2]=0;n=c[h>>2]|0;i=o;return n|0}function oc(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+64|0;g=m+52|0;d=m+48|0;h=m+4|0;k=m+56|0;j=m;l=m+8|0;c[d>>2]=a;c[h>>2]=b;d=c[d>>2]|0;fc(d)|0;c[k>>2]=c[c[h>>2]>>2];a:do switch(c[(c[h>>2]|0)+8>>2]|0){case 1:{c[g>>2]=-2147483647;c[j>>2]=1;break}case 8:case 2:{f=Gx(3616)|0;_d(f,c[(c[h>>2]|0)+8>>2]|0);c[d+20>>2]=f;if(!(c[d+20>>2]|0)){m=za(4)|0;c[m>>2]=-2147483646;Xa(m|0,152,0)}else f=26;break}case 9:case 3:{f=Gx(680)|0;ve(f,c[(c[h>>2]|0)+8>>2]|0);c[d+20>>2]=f;if(!(c[d+20>>2]|0)){m=za(4)|0;c[m>>2]=-2147483646;Xa(m|0,152,0)}else f=26;break}case 4:{f=Gx(140)|0;If(f);c[d+20>>2]=f;if(!(c[d+20>>2]|0)){m=za(4)|0;c[m>>2]=-2147483646;Xa(m|0,152,0)}else f=26;break}case 12:case 11:case 5:{switch(e[(c[k>>2]|0)+10>>1]|0|0){case 5:case 1:case 256:case 3:break;default:{c[g>>2]=-2147483647;c[j>>2]=1;break a}}b=e[(c[k>>2]|0)+12>>1]|0;b:do if((b|0)<28944)if((b|0)<8193)switch(b|0){case 0:break b;default:{f=12;break b}}else switch(b|0){case 8193:break b;default:{f=12;break b}}else switch(b|0){case 28944:case 28945:break;default:f=12}while(0);if((f|0)==12){c[g>>2]=-2147483647;c[j>>2]=1;break a}f=Gx(536)|0;Qe(f,c[(c[h>>2]|0)+8>>2]|0);c[d+20>>2]=f;if(!(c[d+20>>2]|0)){m=za(4)|0;c[m>>2]=-2147483646;Xa(m|0,152,0)}else f=26;break}case 6:{f=Gx(516)|0;md(f);c[d+20>>2]=f;if(!(c[d+20>>2]|0)){m=za(4)|0;c[m>>2]=-2147483646;Xa(m|0,152,0)}else f=26;break}case 7:{f=Gx(460)|0;lg(f);c[d+20>>2]=f;if(!(c[d+20>>2]|0)){m=za(4)|0;c[m>>2]=-2147483646;Xa(m|0,152,0)}else f=26;break}case 10:{switch(e[(c[k>>2]|0)+10>>1]|0|0){case 1:case 256:break;default:{c[g>>2]=-2147483647;c[j>>2]=1;break a}}f=Gx(660)|0;Xg(f);c[d+20>>2]=f;if(!(c[d+20>>2]|0)){m=za(4)|0;c[m>>2]=-2147483646;Xa(m|0,152,0)}else f=26;break}case 0:{f=Gx(360)|0;Bg(f);c[d+20>>2]=f;if(!(c[d+20>>2]|0)){m=za(4)|0;c[m>>2]=-2147483646;Xa(m|0,152,0)}else f=26;break}default:{c[g>>2]=-2147483647;c[j>>2]=1}}while(0);if((f|0)==26)c[j>>2]=0;if((c[j>>2]|0)>>>0>=1){l=c[g>>2]|0;i=m;return l|0}f=c[d+20>>2]|0;c[k>>2]=nb[c[(c[f>>2]|0)+8>>2]&127](f)|0;do if(!(c[k>>2]|0)){if(!(c[d+168>>2]|0)){b=l;a=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(a|0));c[k>>2]=pc(d,c[c[h>>2]>>2]|0,l)|0;if(c[k>>2]|0){c[g>>2]=c[k>>2];c[j>>2]=1}else{f=c[d+20>>2]|0;c[k>>2]=jb[c[(c[f>>2]|0)+16>>2]&63](f,l,c[(c[h>>2]|0)+12>>2]|0)|0;c[j>>2]=0}if(c[j>>2]|0)break}else{l=c[d+20>>2]|0;c[k>>2]=jb[c[(c[l>>2]|0)+16>>2]&63](l,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+12>>2]|0)|0}if(c[k>>2]|0){c[g>>2]=c[k>>2];c[j>>2]=1;break}else{c[g>>2]=0;c[j>>2]=1;break}}else{c[g>>2]=c[k>>2];c[j>>2]=1}while(0);l=c[g>>2]|0;i=m;return l|0}function pc(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;l=o+16|0;p=o+8|0;j=o+4|0;k=o;n=o+20|0;m=o+12|0;c[p>>2]=f;c[j>>2]=g;c[k>>2]=h;h=c[p>>2]|0;if(!((c[k>>2]|0)!=0&(c[j>>2]|0)!=0)){c[l>>2]=-2147483645;p=c[l>>2]|0;i=o;return p|0}c[n>>2]=c[k>>2];c[m>>2]=c[j>>2];g=(c[n>>2]|0)+10|0;if(1212893236==(c[c[m>>2]>>2]|0))b[g>>1]=1;else b[g>>1]=3;c[c[n>>2]>>2]=1212894537;b[(c[n>>2]|0)+8>>1]=c[h+8>>2];b[(c[n>>2]|0)+12>>1]=c[(c[m>>2]|0)+32>>2];a[(c[n>>2]|0)+14>>0]=(e[(c[m>>2]|0)+20>>1]|0)-4096;a[(c[n>>2]|0)+15>>0]=b[(c[m>>2]|0)+22>>1];c[(c[n>>2]|0)+16>>2]=c[(c[m>>2]|0)+24>>2];p=$(d[(c[n>>2]|0)+15>>0]|0,c[(c[n>>2]|0)+16>>2]|0)|0;p=$(p,d[(c[n>>2]|0)+14>>0]|0)|0;c[(c[n>>2]|0)+20>>2]=p;if(1212893236==(c[c[m>>2]>>2]|0)?4113==(c[(c[m>>2]|0)+32>>2]|0):0)c[(c[n>>2]|0)+20>>2]=16e3;c[l>>2]=0;p=c[l>>2]|0;i=o;return p|0}function qc(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;if(!(c[a+16>>2]|0)){c[b>>2]=-2147483644;e=c[b>>2]|0;i=d;return e|0}else{e=c[a+16>>2]|0;rb[c[(c[e>>2]|0)+16>>2]&127](e,c[a+20>>2]|0)|0;c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}return 0}function rc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;e=l+16|0;m=l+12|0;f=l+8|0;g=l+4|0;j=l+20|0;h=l;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;b=c[m>>2]|0;if(c[b+16>>2]|0?c[b+20>>2]|0:0){if(!(c[b+24>>2]|0)){c[e>>2]=-2147483644;m=c[e>>2]|0;i=l;return m|0}c[j>>2]=0;c[b+24>>2]=0;do if(c[g>>2]|0?!(c[b+192>>2]|0):0){m=c[b+20>>2]|0;c[j>>2]=rb[c[(c[m>>2]|0)+20>>2]&127](m,c[g>>2]|0)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];c[h>>2]=1;break}else{k=b+184|0;c[k>>2]=c[k>>2]|1;k=11;break}}else k=11;while(0);a:do if((k|0)==11){m=c[b+20>>2]|0;rb[c[(c[m>>2]|0)+52>>2]&127](m,0)|0;do if(c[f>>2]|0){m=c[b+16>>2]|0;c[j>>2]=rb[c[(c[m>>2]|0)+24>>2]&127](m,c[f>>2]|0)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];c[h>>2]=1;break a}else{m=b+184|0;c[m>>2]=c[m>>2]|2;break}}while(0);m=c[b+16>>2]|0;rb[c[(c[m>>2]|0)+36>>2]&127](m,0)|0;if((c[b+172>>2]|0?c[b+184>>2]&1|0:0)?(c[j>>2]=sc(b)|0,0!=(c[j>>2]|0)):0){c[e>>2]=c[j>>2];c[h>>2]=1;break}c[b+188>>2]=1;c[e>>2]=0;c[h>>2]=1}while(0);m=c[e>>2]|0;i=l;return m|0}c[e>>2]=-2147483644;m=c[e>>2]|0;i=l;return m|0}function sc(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;if((c[a+172>>2]|0?0==(c[a+176>>2]|0):0)?(c[a+176>>2]=Rh(1,500,56,a)|0,0==(c[a+176>>2]|0)):0){c[b>>2]=-2147483646;e=c[b>>2]|0;i=d;return e|0}c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}function tc(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;d=e+4|0;c[b>>2]=a;if(!(c[b>>2]|0)){i=e;return}c[d>>2]=c[b>>2];uc(c[d>>2]|0)|0;i=e;return}function uc(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+432|0;m=n;f=n+40|0;e=n+36|0;d=n+44|0;g=n+28|0;j=n+176|0;k=n+48|0;h=n+32|0;l=n+24|0;c[e>>2]=b;e=c[e>>2]|0;if(2==(c[e+24>>2]|0)){c[f>>2]=-2147483642;m=c[f>>2]|0;i=n;return m|0}b=e+180|0;c[b>>2]=(c[b>>2]|0)+1;c[d>>2]=(((c[e+180>>2]|0)*500|0)>>>0)/6e4|0;if((c[d>>2]|0)>>>0<(c[e+28+4>>2]|0)>>>0){c[f>>2]=0;c[g>>2]=1}else{c[e+180>>2]=0;Ox(j|0,0,256)|0;b=k;d=b+128|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0));ab(h|0)|0;c[l>>2]=fb(h|0)|0;if(c[l>>2]|0){p=(c[(c[l>>2]|0)+16>>2]|0)+1|0;o=c[(c[l>>2]|0)+12>>2]|0;b=c[(c[l>>2]|0)+8>>2]|0;d=c[(c[l>>2]|0)+4>>2]|0;h=c[c[l>>2]>>2]|0;c[m>>2]=(c[(c[l>>2]|0)+20>>2]|0)+1900;c[m+4>>2]=p;c[m+8>>2]=o;c[m+12>>2]=b;c[m+16>>2]=d;c[m+20>>2]=h;Sw(k,5789,m)|0}fw(j,e+28+12|0)|0;gw(j,k)|0;c[f>>2]=vc(e,j)|0;c[g>>2]=1}p=c[f>>2]|0;i=n;return p|0}function vc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;do if(c[e>>2]|0){if(!(c[b+20>>2]|0)){c[d>>2]=-2147483644;break}if(2==(c[b+24>>2]|0))if((c[b+188>>2]|0)==1){c[d>>2]=-2147483642;break}else{c[d>>2]=-2147483644;break}else if(c[b+184>>2]&1|0){g=c[b+20>>2]|0;c[d>>2]=rb[c[(c[g>>2]|0)+24>>2]&127](g,c[e>>2]|0)|0;break}else{c[d>>2]=-2147483647;break}}else c[d>>2]=-2147483645;while(0);i=f;return c[d>>2]|0}function wc(a,b,f,g){a=a|0;b=b|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+3216|0;h=n+16|0;o=n+12|0;j=n+8|0;k=n+4|0;l=n;m=n+24|0;c[o>>2]=a;c[j>>2]=b;c[k>>2]=f;c[l>>2]=g;g=c[o>>2]|0;if(0==(c[k>>2]|0)&-1==(c[l>>2]|0)){o=c[g+20>>2]|0;c[h>>2]=pb[c[(c[o>>2]|0)+28>>2]&31](o,c[k>>2]|0,c[l>>2]|0,0)|0;o=c[h>>2]|0;i=n;return o|0}if(!(c[k>>2]|0)){c[h>>2]=-2147483645;o=c[h>>2]|0;i=n;return o|0}if((c[j>>2]|0)!=0&(c[j>>2]|0)!=1&(c[j>>2]|0)!=2&(c[j>>2]|0)!=3&(c[j>>2]|0)!=4&(c[j>>2]|0)!=5&(c[j>>2]|0)!=6){c[h>>2]=-2147483645;o=c[h>>2]|0;i=n;return o|0}if(!(c[l>>2]|0)){c[h>>2]=-2147483645;o=c[h>>2]|0;i=n;return o|0}if(!(c[g+16>>2]|0)){c[h>>2]=-2147483644;o=c[h>>2]|0;i=n;return o|0}if(2==(c[g+24>>2]|0))if((c[g+188>>2]|0)==1){c[h>>2]=-2147483642;o=c[h>>2]|0;i=n;return o|0}else{c[h>>2]=-2147483644;o=c[h>>2]|0;i=n;return o|0}if(c[g+184>>2]&2|0){c[h>>2]=-2147483647;o=c[h>>2]|0;i=n;return o|0}if((((e[g+196+4>>1]|0|0)>=258?(e[g+196+8>>1]|0|0)==4:0)?((d[g+196+25>>0]|0)&255|0)==129:0)?c[g+236>>2]|0:0){Ox(m|0,0,3184)|0;Rq((c[k>>2]|0)+12|0,(c[l>>2]|0)-12|0,m);c[g+236>>2]=0;o=c[g+16>>2]|0;rb[c[(c[o>>2]|0)+44>>2]&127](o,m)|0;c[h>>2]=0;o=c[h>>2]|0;i=n;return o|0}o=c[g+16>>2]|0;c[h>>2]=pb[c[(c[o>>2]|0)+32>>2]&31](o,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;o=c[h>>2]|0;i=n;return o|0}function xc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[j>>2]|0;if(!(c[d+20>>2]|0)){c[e>>2]=-2147483644;j=c[e>>2]|0;i=h;return j|0}else{c[d+192>>2]=1;j=c[d+20>>2]|0;c[e>>2]=jb[c[(c[j>>2]|0)+36>>2]&63](j,c[f>>2]|0,c[g>>2]|0)|0;j=c[e>>2]|0;i=h;return j|0}return 0}function yc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=184;nb[c[(c[a>>2]|0)+32>>2]&127](a)|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;zc(a);i=b;return}function zc(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return}function Ac(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;yc(a);lx(a);i=b;return}function Bc(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;do if(!(c[a+72>>2]|0)){c[a+72>>2]=_w(1024)|0;if(c[a+72>>2]|0){c[a+76>>2]=1024;c[a+80>>2]=0;break}nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[b>>2]=-2147483646;e=c[b>>2]|0;i=d;return e|0}while(0);c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}function Cc(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;if(c[a+140>>2]|0){$w(c[a+140>>2]|0);c[a+140>>2]=0}if(c[a+60>>2]|0){$w(c[a+60>>2]|0);c[a+60>>2]=0}if(c[a+68>>2]|0){$w(c[a+68>>2]|0);c[a+68>>2]=0}if(c[a+72>>2]|0){$w(c[a+72>>2]|0);c[a+72>>2]=0}if(!(c[a+92>>2]|0)){i=b;return 0}$w(c[a+92>>2]|0);c[a+92>>2]=0;i=b;return 0}function Dc(b,d,f){b=b|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;j=l+12|0;g=l+8|0;h=l+4|0;k=l;c[g>>2]=b;c[h>>2]=d;c[k>>2]=f;b=c[g>>2]|0;if(!(c[h>>2]|0)){c[j>>2]=-2147483645;k=c[j>>2]|0;i=l;return k|0}g=b+216|0;f=c[h>>2]|0;d=g+40|0;do{a[g>>0]=a[f>>0]|0;g=g+1|0;f=f+1|0}while((g|0)<(d|0));if((c[k>>2]|0)>>>0<1024|(c[k>>2]|0)>>>0>8192)c[b+36>>2]=4096;else c[b+36>>2]=c[k>>2];do if(!(c[b+92>>2]|0)){c[b+92>>2]=_w(c[b+36>>2]|0)|0;if(c[b+92>>2]|0){c[b+96>>2]=0;break}nb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[j>>2]=-2147483646;k=c[j>>2]|0;i=l;return k|0}while(0);if(!((1!=(e[b+216+10>>1]|0|0)?256!=(e[b+216+10>>1]|0|0):0)?3!=(e[b+216+10>>1]|0|0):0)){h=b+32|0;k=(c[h>>2]|0)+1|0;c[h>>2]=k;c[b+28>>2]=k}if(!((28944!=(e[b+216+12>>1]|0|0)?28945!=(e[b+216+12>>1]|0|0):0)?29217!=(e[b+216+12>>1]|0|0):0)){h=b+32|0;k=(c[h>>2]|0)+1|0;c[h>>2]=k;c[b+24>>2]=k}c[j>>2]=0;k=c[j>>2]|0;i=l;return k|0}function Ec(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;f=k+12|0;l=k+8|0;g=k+4|0;j=k+16|0;h=k;c[l>>2]=b;c[g>>2]=d;d=c[l>>2]|0;if(0!=(c[g>>2]|0)?0!=(a[c[g>>2]>>0]|0):0){nb[c[(c[d>>2]|0)+32>>2]&127](d)|0;if(!(((1!=(e[d+216+10>>1]|0)?256!=(e[d+216+10>>1]|0):0)?3!=(e[d+216+10>>1]|0):0)?4!=(e[d+216+10>>1]|0):0)){b=d+32|0;l=(c[b>>2]|0)+1|0;c[b>>2]=l;c[d+28>>2]=l}if(!((28944!=(e[d+216+12>>1]|0)?28945!=(e[d+216+12>>1]|0):0)?29217!=(e[d+216+12>>1]|0):0)){b=d+32|0;l=(c[b>>2]|0)+1|0;c[b>>2]=l;c[d+24>>2]=l}if(0==(c[d+24>>2]|0)?0==(c[d+28>>2]|0):0){c[f>>2]=-2147483645;l=c[f>>2]|0;i=k;return l|0}c[j>>2]=0;c[d+200>>2]=zh(c[g>>2]|0,2)|0;if(c[d+200>>2]|0){if(c[d+28>>2]|0)c[j>>2]=Fc(d,1e3)|0}else c[j>>2]=-2147483641;if(c[j>>2]|0){nb[c[(c[d>>2]|0)+32>>2]&127](d)|0;c[f>>2]=-2147483641;c[h>>2]=1}else{c[d+204>>2]=0;c[f>>2]=0;c[h>>2]=1}l=c[f>>2]|0;i=k;return l|0}c[f>>2]=-2147483645;l=c[f>>2]|0;i=k;return l|0}function Fc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=i;i=i+16|0;d=e+8|0;g=e+4|0;f=e;c[g>>2]=a;c[f>>2]=b;b=c[g>>2]|0;Gc(b)|0;c[b+168>>2]=c[f>>2];c[b+144>>2]=6144;c[b+140>>2]=_w(c[b+144>>2]|0)|0;if(!(c[b+140>>2]|0)){c[d>>2]=-2147483646;g=c[d>>2]|0;i=e;return g|0}else{Ox(c[b+140>>2]|0,0,c[b+144>>2]|0)|0;c[b+148>>2]=0;c[d>>2]=0;g=c[d>>2]|0;i=e;return g|0}return 0}function Gc(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;a=c[e>>2]|0;if(c[a+140>>2]|0){$w(c[a+140>>2]|0);c[a+140>>2]=0}c[a+144>>2]=0;c[a+148>>2]=0;c[a+152>>2]=0;c[a+156>>2]=0;c[a+160>>2]=0;c[a+164>>2]=0;c[a+168>>2]=1e3;c[a+172>>2]=0;b[a+176>>1]=0;i=d;return 0}function Hc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=g;c[h>>2]=b;c[f>>2]=d;d=c[h>>2]|0;if(0!=(c[f>>2]|0)?0!=(a[c[f>>2]>>0]|0):0)if(260<=($v(c[f>>2]|0)|0)>>>0){c[e>>2]=-2147483643;h=c[e>>2]|0;i=g;return h|0}else{fw(d+256|0,c[f>>2]|0)|0;c[d+208>>2]=1;c[e>>2]=0;h=c[e>>2]|0;i=g;return h|0}c[e>>2]=-2147483645;h=c[e>>2]|0;i=g;return h|0}function Ic(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;f=k+16|0;l=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;d=c[l>>2]|0;if((c[d+204>>2]|0)==2){c[f>>2]=-2147483642;l=c[f>>2]|0;i=k;return l|0}if(0==(c[g>>2]|0)|0==(c[h>>2]|0)|0==(c[j>>2]|0)){c[f>>2]=-2147483645;l=c[f>>2]|0;i=k;return l|0}switch(c[c[j>>2]>>2]|0){case 1:{if(!(c[d+212>>2]|0)){c[d+16>>2]=c[(c[j>>2]|0)+16>>2];c[d+20>>2]=c[(c[j>>2]|0)+20>>2];c[d+212>>2]=1}if(1==(c[d+208>>2]|0)){rb[c[(c[d>>2]|0)+20>>2]&127](d,d+256|0)|0;c[d+208>>2]=0}break}case 3:case 2:break;case 4:{c[f>>2]=Zc(d,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;l=c[f>>2]|0;i=k;return l|0}default:{c[f>>2]=-2147483647;l=c[f>>2]|0;i=k;return l|0}}c[f>>2]=Jc(d,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;l=c[f>>2]|0;i=k;return l|0}function Jc(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;f=o+24|0;p=o+20|0;h=o+12|0;j=o+8|0;k=o+4|0;m=o+28|0;l=o;n=o+16|0;c[p>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;d=c[p>>2]|0;if(!(c[d+28>>2]|0)){c[f>>2]=0;p=c[f>>2]|0;i=o;return p|0}do if(!(c[d+88>>2]|0)){c[m>>2]=Kc(d)|0;if(c[m>>2]|0){c[f>>2]=c[m>>2];c[l>>2]=1}else c[l>>2]=0;if((c[l>>2]|0)>>>0<1){c[d+88>>2]=1;break}else{p=c[f>>2]|0;i=o;return p|0}}while(0);c[m>>2]=c[d+100>>2];p=d+108|0;c[p>>2]=(c[p>>2]|0)+1;c[n>>2]=Sc(d,c[h>>2]|0,c[j>>2]|0,1,c[k>>2]|0)|0;if(c[n>>2]|0){c[f>>2]=c[n>>2];c[l>>2]=1}else c[l>>2]=0;do if(!(c[l>>2]|0)){if(1==(c[c[k>>2]>>2]|0)?0!=(c[d+200>>2]|0):0){c[n>>2]=Xc(d,~~+g[d+48>>2],c[m>>2]|0,(c[d+100>>2]|0)-(c[m>>2]|0)+1&65535)|0;if(c[n>>2]|0){c[f>>2]=c[n>>2];c[l>>2]=1}else c[l>>2]=0;if(c[l>>2]|0)break}p=d+48|0;g[p>>2]=+g[p>>2]+ +g[(c[k>>2]|0)+60>>2];c[f>>2]=0;c[l>>2]=1}while(0);p=c[f>>2]|0;i=o;return p|0}function Kc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+8|0;g=f+4|0;e=f+12|0;d=f;c[g>>2]=a;a=c[g>>2]|0;c[e>>2]=Lc(a)|0;if(c[e>>2]|0){c[b>>2]=c[e>>2];c[d>>2]=1}else c[d>>2]=0;if((c[d>>2]|0)>>>0>=1){g=c[b>>2]|0;i=f;return g|0}c[a+112>>2]=c[a+80>>2];c[e>>2]=Rc(a)|0;if(c[e>>2]|0){c[b>>2]=c[e>>2];c[d>>2]=1}else c[d>>2]=0;if((c[d>>2]|0)>>>0>=1){g=c[b>>2]|0;i=f;return g|0}if(c[a+200>>2]|0){c[e>>2]=Hj(c[a+200>>2]|0,c[a+72>>2]|0,c[a+80>>2]|0)|0;if(c[e>>2]|0){c[b>>2]=c[e>>2];c[d>>2]=1}else c[d>>2]=0;if((c[d>>2]|0)>>>0>=1){g=c[b>>2]|0;i=f;return g|0}}c[b>>2]=0;g=c[b>>2]|0;i=f;return g|0}function Lc(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+48|0;h=p+28|0;g=p+20|0;e=p+32|0;n=p+24|0;o=p+16|0;f=p+12|0;l=p+8|0;j=p+4|0;m=p;k=p+36|0;c[g>>2]=b;g=c[g>>2]|0;c[e>>2]=0;c[n>>2]=0;c[o>>2]=0;c[f>>2]=0;if(c[g+24>>2]|0)b=104+(c[g+64>>2]|0)|0;else b=0;if(c[g+28>>2]|0)d=129+(c[g+56>>2]|0)|0;else d=0;c[f>>2]=180+b+d+50;d=g+80|0;c[d>>2]=(c[d>>2]|0)+30;c[l>>2]=Mc(g,c[f>>2]|0,e)|0;if(c[l>>2]|0){c[h>>2]=c[l>>2];c[j>>2]=1}else c[j>>2]=0;if(c[j>>2]|0){o=c[h>>2]|0;i=p;return o|0}c[o>>2]=(c[o>>2]|0)+(c[e>>2]|0);c[n>>2]=(c[n>>2]|0)+1;c[l>>2]=Nc(g,e)|0;if(c[l>>2]|0){c[h>>2]=c[l>>2];c[j>>2]=1}else c[j>>2]=0;if(c[j>>2]|0){o=c[h>>2]|0;i=p;return o|0}c[o>>2]=(c[o>>2]|0)+(c[e>>2]|0);c[n>>2]=(c[n>>2]|0)+1;do if(c[g+24>>2]|0){c[l>>2]=Oc(g,e)|0;if(c[l>>2]|0){c[h>>2]=c[l>>2];c[j>>2]=1}else c[j>>2]=0;if(!(c[j>>2]|0)){c[o>>2]=(c[o>>2]|0)+(c[e>>2]|0);c[n>>2]=(c[n>>2]|0)+1;break}else{o=c[h>>2]|0;i=p;return o|0}}while(0);do if(c[g+28>>2]|0){c[l>>2]=Qc(g,e)|0;if(c[l>>2]|0){c[h>>2]=c[l>>2];c[j>>2]=1}else c[j>>2]=0;if(!(c[j>>2]|0)){c[o>>2]=(c[o>>2]|0)+(c[e>>2]|0);c[n>>2]=(c[n>>2]|0)+1;break}else{o=c[h>>2]|0;i=p;return o|0}}while(0);c[l>>2]=0;c[o>>2]=(c[o>>2]|0)+30;b=(c[g+72>>2]|0)+(c[l>>2]|0)|0;d=376;e=b+16|0;do{a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}while((b|0)<(e|0));c[l>>2]=(c[l>>2]|0)+16;c[m>>2]=0;f=(c[g+72>>2]|0)+(c[l>>2]|0)|0;a[f>>0]=a[o>>0]|0;a[f+1>>0]=a[o+1>>0]|0;a[f+2>>0]=a[o+2>>0]|0;a[f+3>>0]=a[o+3>>0]|0;c[l>>2]=(c[l>>2]|0)+4;o=(c[g+72>>2]|0)+(c[l>>2]|0)|0;a[o>>0]=a[m>>0]|0;a[o+1>>0]=a[m+1>>0]|0;a[o+2>>0]=a[m+2>>0]|0;a[o+3>>0]=a[m+3>>0]|0;c[l>>2]=(c[l>>2]|0)+4;o=(c[g+72>>2]|0)+(c[l>>2]|0)|0;a[o>>0]=a[n>>0]|0;a[o+1>>0]=a[n+1>>0]|0;a[o+2>>0]=a[n+2>>0]|0;a[o+3>>0]=a[n+3>>0]|0;c[l>>2]=(c[l>>2]|0)+4;a[k>>0]=1;a[(c[g+72>>2]|0)+(c[l>>2]|0)>>0]=a[k>>0]|0;c[l>>2]=(c[l>>2]|0)+1;a[k>>0]=2;a[(c[g+72>>2]|0)+(c[l>>2]|0)>>0]=a[k>>0]|0;c[h>>2]=0;c[j>>2]=1;o=c[h>>2]|0;i=p;return o|0}function Mc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;f=n+20|0;g=n+12|0;h=n+4|0;j=n+24|0;l=n+16|0;k=n+8|0;m=n;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;d=c[f>>2]|0;c[j>>2]=0;c[c[h>>2]>>2]=104;e=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;b=248;f=e+16|0;do{a[e>>0]=a[b>>0]|0;e=e+1|0;b=b+1|0}while((e|0)<(f|0));e=d+80|0;c[e>>2]=(c[e>>2]|0)+16;e=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;b=c[h>>2]|0;a[e>>0]=a[b>>0]|0;a[e+1>>0]=a[b+1>>0]|0;a[e+2>>0]=a[b+2>>0]|0;a[e+3>>0]=a[b+3>>0]|0;e=d+80|0;c[e>>2]=(c[e>>2]|0)+4;e=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[e>>0]=a[j>>0]|0;a[e+1>>0]=a[j+1>>0]|0;a[e+2>>0]=a[j+2>>0]|0;a[e+3>>0]=a[j+3>>0]|0;e=d+80|0;c[e>>2]=(c[e>>2]|0)+4;e=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;b=160708;f=e+16|0;do{a[e>>0]=a[b>>0]|0;e=e+1|0;b=b+1|0}while((e|0)<(f|0));h=d+80|0;c[h>>2]=(c[h>>2]|0)+16;h=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[h>>0]=a[g>>0]|0;a[h+1>>0]=a[g+1>>0]|0;a[h+2>>0]=a[g+2>>0]|0;a[h+3>>0]=a[g+3>>0]|0;h=d+80|0;c[h>>2]=(c[h>>2]|0)+4;h=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[h>>0]=a[j>>0]|0;a[h+1>>0]=a[j+1>>0]|0;a[h+2>>0]=a[j+2>>0]|0;a[h+3>>0]=a[j+3>>0]|0;h=d+80|0;c[h>>2]=(c[h>>2]|0)+4;h=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[h>>0]=a[j>>0]|0;a[h+1>>0]=a[j+1>>0]|0;a[h+2>>0]=a[j+2>>0]|0;a[h+3>>0]=a[j+3>>0]|0;h=d+80|0;c[h>>2]=(c[h>>2]|0)+4;h=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[h>>0]=a[j>>0]|0;a[h+1>>0]=a[j+1>>0]|0;a[h+2>>0]=a[j+2>>0]|0;a[h+3>>0]=a[j+3>>0]|0;h=d+80|0;c[h>>2]=(c[h>>2]|0)+4;h=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;g=d+100|0;a[h>>0]=a[g>>0]|0;a[h+1>>0]=a[g+1>>0]|0;a[h+2>>0]=a[g+2>>0]|0;a[h+3>>0]=a[g+3>>0]|0;h=d+80|0;c[h>>2]=(c[h>>2]|0)+4;h=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[h>>0]=a[j>>0]|0;a[h+1>>0]=a[j+1>>0]|0;a[h+2>>0]=a[j+2>>0]|0;a[h+3>>0]=a[j+3>>0]|0;h=d+80|0;c[h>>2]=(c[h>>2]|0)+4;c[l>>2]=((c[d+52>>2]|0)+3e3|0)%429497|0;c[k>>2]=((c[d+52>>2]|0)+3e3|0)/429497|0;c[j>>2]=(c[l>>2]|0)*1e4;h=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[h>>0]=a[j>>0]|0;a[h+1>>0]=a[j+1>>0]|0;a[h+2>>0]=a[j+2>>0]|0;a[h+3>>0]=a[j+3>>0]|0;h=d+80|0;c[h>>2]=(c[h>>2]|0)+4;h=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[h>>0]=a[k>>0]|0;a[h+1>>0]=a[k+1>>0]|0;a[h+2>>0]=a[k+2>>0]|0;a[h+3>>0]=a[k+3>>0]|0;h=d+80|0;c[h>>2]=(c[h>>2]|0)+4;c[m>>2]=c[d+52>>2];c[l>>2]=(c[m>>2]|0)%429497|0;c[k>>2]=(c[m>>2]|0)/429497|0;c[j>>2]=(c[l>>2]|0)*1e4;m=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[m>>0]=a[j>>0]|0;a[m+1>>0]=a[j+1>>0]|0;a[m+2>>0]=a[j+2>>0]|0;a[m+3>>0]=a[j+3>>0]|0;m=d+80|0;c[m>>2]=(c[m>>2]|0)+4;m=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[m>>0]=a[k>>0]|0;a[m+1>>0]=a[k+1>>0]|0;a[m+2>>0]=a[k+2>>0]|0;a[m+3>>0]=a[k+3>>0]|0;m=d+80|0;c[m>>2]=(c[m>>2]|0)+4;c[j>>2]=3e3;m=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[m>>0]=a[j>>0]|0;a[m+1>>0]=a[j+1>>0]|0;a[m+2>>0]=a[j+2>>0]|0;a[m+3>>0]=a[j+3>>0]|0;m=d+80|0;c[m>>2]=(c[m>>2]|0)+4;c[j>>2]=0;m=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[m>>0]=a[j>>0]|0;a[m+1>>0]=a[j+1>>0]|0;a[m+2>>0]=a[j+2>>0]|0;a[m+3>>0]=a[j+3>>0]|0;m=d+80|0;c[m>>2]=(c[m>>2]|0)+4;c[j>>2]=1;m=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[m>>0]=a[j>>0]|0;a[m+1>>0]=a[j+1>>0]|0;a[m+2>>0]=a[j+2>>0]|0;a[m+3>>0]=a[j+3>>0]|0;m=d+80|0;c[m>>2]=(c[m>>2]|0)+4;m=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;l=d+36|0;a[m>>0]=a[l>>0]|0;a[m+1>>0]=a[l+1>>0]|0;a[m+2>>0]=a[l+2>>0]|0;a[m+3>>0]=a[l+3>>0]|0;m=d+80|0;c[m>>2]=(c[m>>2]|0)+4;m=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;l=d+36|0;a[m>>0]=a[l>>0]|0;a[m+1>>0]=a[l+1>>0]|0;a[m+2>>0]=a[l+2>>0]|0;a[m+3>>0]=a[l+3>>0]|0;m=d+80|0;c[m>>2]=(c[m>>2]|0)+4;if(!(c[d+24>>2]|0)){l=d+40|0;m=c[l>>2]|0;m=m+1|0;c[l>>2]=m;l=d+72|0;l=c[l>>2]|0;m=d+80|0;m=c[m>>2]|0;m=l+m|0;l=d+40|0;a[m>>0]=a[l>>0]|0;a[m+1>>0]=a[l+1>>0]|0;a[m+2>>0]=a[l+2>>0]|0;a[m+3>>0]=a[l+3>>0]|0;m=d+80|0;l=c[m>>2]|0;l=l+4|0;c[m>>2]=l;i=n;return 0}l=d+40|0;c[l>>2]=(c[l>>2]|0)+(c[d+216+20>>2]|0);l=d+40|0;m=c[l>>2]|0;m=m+1|0;c[l>>2]=m;l=d+72|0;l=c[l>>2]|0;m=d+80|0;m=c[m>>2]|0;m=l+m|0;l=d+40|0;a[m>>0]=a[l>>0]|0;a[m+1>>0]=a[l+1>>0]|0;a[m+2>>0]=a[l+2>>0]|0;a[m+3>>0]=a[l+3>>0]|0;m=d+80|0;l=c[m>>2]|0;l=l+4|0;c[m>>2]=l;i=n;return 0}function Nc(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;f=l+8|0;h=l;k=l+12|0;j=l+4|0;c[f>>2]=d;c[h>>2]=e;e=c[f>>2]|0;b[k>>1]=0;c[j>>2]=0;c[c[h>>2]>>2]=46;d=(c[e+72>>2]|0)+(c[e+80>>2]|0)|0;f=264;g=d+16|0;do{a[d>>0]=a[f>>0]|0;d=d+1|0;f=f+1|0}while((d|0)<(g|0));d=e+80|0;c[d>>2]=(c[d>>2]|0)+16;d=(c[e+72>>2]|0)+(c[e+80>>2]|0)|0;f=c[h>>2]|0;a[d>>0]=a[f>>0]|0;a[d+1>>0]=a[f+1>>0]|0;a[d+2>>0]=a[f+2>>0]|0;a[d+3>>0]=a[f+3>>0]|0;d=e+80|0;c[d>>2]=(c[d>>2]|0)+4;d=(c[e+72>>2]|0)+(c[e+80>>2]|0)|0;a[d>>0]=a[j>>0]|0;a[d+1>>0]=a[j+1>>0]|0;a[d+2>>0]=a[j+2>>0]|0;a[d+3>>0]=a[j+3>>0]|0;d=e+80|0;c[d>>2]=(c[d>>2]|0)+4;d=(c[e+72>>2]|0)+(c[e+80>>2]|0)|0;f=280;g=d+16|0;do{a[d>>0]=a[f>>0]|0;d=d+1|0;f=f+1|0}while((d|0)<(g|0));h=e+80|0;c[h>>2]=(c[h>>2]|0)+16;b[k>>1]=6;h=(c[e+72>>2]|0)+(c[e+80>>2]|0)|0;a[h>>0]=a[k>>0]|0;a[h+1>>0]=a[k+1>>0]|0;k=e+80|0;c[k>>2]=(c[k>>2]|0)+2;k=(c[e+72>>2]|0)+(c[e+80>>2]|0)|0;a[k>>0]=a[j>>0]|0;a[k+1>>0]=a[j+1>>0]|0;a[k+2>>0]=a[j+2>>0]|0;a[k+3>>0]=a[j+3>>0]|0;k=e+80|0;c[k>>2]=(c[k>>2]|0)+4;i=l;return 0}function Oc(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+32|0;k=r+16|0;h=r+12|0;l=r+8|0;o=r+20|0;q=r+24|0;n=r+26|0;p=r+4|0;m=r;c[h>>2]=f;c[l>>2]=g;g=c[h>>2]|0;c[o>>2]=0;b[q>>1]=0;a[n>>0]=0;c[c[l>>2]>>2]=104+(c[g+64>>2]|0);f=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;h=296;j=f+16|0;do{a[f>>0]=a[h>>0]|0;f=f+1|0;h=h+1|0}while((f|0)<(j|0));f=g+80|0;c[f>>2]=(c[f>>2]|0)+16;f=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;h=c[l>>2]|0;a[f>>0]=a[h>>0]|0;a[f+1>>0]=a[h+1>>0]|0;a[f+2>>0]=a[h+2>>0]|0;a[f+3>>0]=a[h+3>>0]|0;f=g+80|0;c[f>>2]=(c[f>>2]|0)+4;f=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;a[f>>0]=a[o>>0]|0;a[f+1>>0]=a[o+1>>0]|0;a[f+2>>0]=a[o+2>>0]|0;a[f+3>>0]=a[o+3>>0]|0;f=g+80|0;c[f>>2]=(c[f>>2]|0)+4;f=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;h=312;j=f+16|0;do{a[f>>0]=a[h>>0]|0;f=f+1|0;h=h+1|0}while((f|0)<(j|0));f=g+80|0;c[f>>2]=(c[f>>2]|0)+16;f=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;h=328;j=f+16|0;do{a[f>>0]=a[h>>0]|0;f=f+1|0;h=h+1|0}while((f|0)<(j|0));l=g+80|0;c[l>>2]=(c[l>>2]|0)+16;l=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;a[l>>0]=a[o>>0]|0;a[l+1>>0]=a[o+1>>0]|0;a[l+2>>0]=a[o+2>>0]|0;a[l+3>>0]=a[o+3>>0]|0;l=g+80|0;c[l>>2]=(c[l>>2]|0)+4;l=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;a[l>>0]=a[o>>0]|0;a[l+1>>0]=a[o+1>>0]|0;a[l+2>>0]=a[o+2>>0]|0;a[l+3>>0]=a[o+3>>0]|0;l=g+80|0;c[l>>2]=(c[l>>2]|0)+4;c[o>>2]=18+(c[g+64>>2]|0);l=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;a[l>>0]=a[o>>0]|0;a[l+1>>0]=a[o+1>>0]|0;a[l+2>>0]=a[o+2>>0]|0;a[l+3>>0]=a[o+3>>0]|0;l=g+80|0;c[l>>2]=(c[l>>2]|0)+4;c[o>>2]=8;l=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;a[l>>0]=a[o>>0]|0;a[l+1>>0]=a[o+1>>0]|0;a[l+2>>0]=a[o+2>>0]|0;a[l+3>>0]=a[o+3>>0]|0;l=g+80|0;c[l>>2]=(c[l>>2]|0)+4;b[q>>1]=c[g+24>>2]&127;l=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;a[l>>0]=a[q>>0]|0;a[l+1>>0]=a[q+1>>0]|0;l=g+80|0;c[l>>2]=(c[l>>2]|0)+2;c[o>>2]=0;l=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;a[l>>0]=a[o>>0]|0;a[l+1>>0]=a[o+1>>0]|0;a[l+2>>0]=a[o+2>>0]|0;a[l+3>>0]=a[o+3>>0]|0;l=g+80|0;c[l>>2]=(c[l>>2]|0)+4;c[p>>2]=Pc(g,e[g+216+12>>1]|0,o)|0;if(c[p>>2]|0){c[k>>2]=c[p>>2];c[m>>2]=1}else c[m>>2]=0;if(c[m>>2]|0){q=c[k>>2]|0;i=r;return q|0}b[q>>1]=c[o>>2];p=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;a[p>>0]=a[q>>0]|0;a[p+1>>0]=a[q+1>>0]|0;p=g+80|0;c[p>>2]=(c[p>>2]|0)+2;b[q>>1]=d[g+216+14>>0]|0;p=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;a[p>>0]=a[q>>0]|0;a[p+1>>0]=a[q+1>>0]|0;p=g+80|0;c[p>>2]=(c[p>>2]|0)+2;c[o>>2]=c[g+216+16>>2];p=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;a[p>>0]=a[o>>0]|0;a[p+1>>0]=a[o+1>>0]|0;a[p+2>>0]=a[o+2>>0]|0;a[p+3>>0]=a[o+3>>0]|0;p=g+80|0;c[p>>2]=(c[p>>2]|0)+4;c[o>>2]=((c[g+216+20>>2]|0)>>>0)/8|0;p=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;a[p>>0]=a[o>>0]|0;a[p+1>>0]=a[o+1>>0]|0;a[p+2>>0]=a[o+2>>0]|0;a[p+3>>0]=a[o+3>>0]|0;p=g+80|0;c[p>>2]=(c[p>>2]|0)+4;b[q>>1]=b[g+136>>1]|0;p=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;a[p>>0]=a[q>>0]|0;a[p+1>>0]=a[q+1>>0]|0;p=g+80|0;c[p>>2]=(c[p>>2]|0)+2;b[q>>1]=d[g+216+15>>0]|0;p=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;a[p>>0]=a[q>>0]|0;a[p+1>>0]=a[q+1>>0]|0;p=g+80|0;c[p>>2]=(c[p>>2]|0)+2;b[q>>1]=c[g+64>>2];p=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;a[p>>0]=a[q>>0]|0;a[p+1>>0]=a[q+1>>0]|0;p=g+80|0;c[p>>2]=(c[p>>2]|0)+2;if(0!=(c[g+68>>2]|0)?0!=(c[g+64>>2]|0):0){Tx((c[g+72>>2]|0)+(c[g+80>>2]|0)|0,c[g+68>>2]|0,c[g+64>>2]|0)|0;p=g+80|0;c[p>>2]=(c[p>>2]|0)+(c[g+64>>2]|0)}a[n>>0]=1;a[(c[g+72>>2]|0)+(c[g+80>>2]|0)>>0]=a[n>>0]|0;p=g+80|0;c[p>>2]=(c[p>>2]|0)+1;p=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;o=g+136|0;a[p>>0]=a[o>>0]|0;a[p+1>>0]=a[o+1>>0]|0;p=g+80|0;c[p>>2]=(c[p>>2]|0)+2;p=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;o=g+136|0;a[p>>0]=a[o>>0]|0;a[p+1>>0]=a[o+1>>0]|0;p=g+80|0;c[p>>2]=(c[p>>2]|0)+2;b[q>>1]=1;p=(c[g+72>>2]|0)+(c[g+80>>2]|0)|0;a[p>>0]=a[q>>0]|0;a[p+1>>0]=a[q+1>>0]|0;q=g+80|0;c[q>>2]=(c[q>>2]|0)+2;a[n>>0]=0;a[(c[g+72>>2]|0)+(c[g+80>>2]|0)>>0]=a[n>>0]|0;q=g+80|0;c[q>>2]=(c[q>>2]|0)+1;c[k>>2]=0;c[m>>2]=1;q=c[k>>2]|0;i=r;return q|0}function Pc(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+4|0;e=g;c[g+8>>2]=a;c[h>>2]=b;c[e>>2]=d;b=c[h>>2]|0;a:do if((b|0)<272)switch(b|0){case 256:case 1:{f=4;break a}case 3:{c[c[e>>2]>>2]=1446269005;break a}case 4:{c[c[e>>2]>>2]=1196444237;break a}default:{f=8;break a}}else{if((b|0)>=28945)switch(b|0){case 28945:{c[c[e>>2]>>2]=6;break a}case 29217:{c[c[e>>2]>>2]=101;break a}default:{f=8;break a}}if((b|0)<28944)switch(b|0){case 272:{f=4;break a}default:{f=8;break a}}switch(b|0){case 28944:break;default:{f=8;break a}}c[c[e>>2]>>2]=7}while(0);if((f|0)==4)c[c[e>>2]>>2]=875967048;else if((f|0)==8)c[c[e>>2]>>2]=0;i=g;return 0}function Qc(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+48|0;j=s+24|0;g=s+20|0;k=s+12|0;m=s+32|0;q=s+30|0;o=s+16|0;r=s+28|0;n=s+8|0;p=s+4|0;l=s;c[g>>2]=d;c[k>>2]=f;f=c[g>>2]|0;a[m>>0]=0;b[q>>1]=0;c[o>>2]=0;c[c[k>>2]>>2]=129+(c[f+56>>2]|0);d=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;g=296;h=d+16|0;do{a[d>>0]=a[g>>0]|0;d=d+1|0;g=g+1|0}while((d|0)<(h|0));d=f+80|0;c[d>>2]=(c[d>>2]|0)+16;d=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;g=c[k>>2]|0;a[d>>0]=a[g>>0]|0;a[d+1>>0]=a[g+1>>0]|0;a[d+2>>0]=a[g+2>>0]|0;a[d+3>>0]=a[g+3>>0]|0;d=f+80|0;c[d>>2]=(c[d>>2]|0)+4;d=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[d>>0]=a[o>>0]|0;a[d+1>>0]=a[o+1>>0]|0;a[d+2>>0]=a[o+2>>0]|0;a[d+3>>0]=a[o+3>>0]|0;d=f+80|0;c[d>>2]=(c[d>>2]|0)+4;d=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;g=344;h=d+16|0;do{a[d>>0]=a[g>>0]|0;d=d+1|0;g=g+1|0}while((d|0)<(h|0));d=f+80|0;c[d>>2]=(c[d>>2]|0)+16;d=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;g=360;h=d+16|0;do{a[d>>0]=a[g>>0]|0;d=d+1|0;g=g+1|0}while((d|0)<(h|0));k=f+80|0;c[k>>2]=(c[k>>2]|0)+16;k=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[k>>0]=a[o>>0]|0;a[k+1>>0]=a[o+1>>0]|0;a[k+2>>0]=a[o+2>>0]|0;a[k+3>>0]=a[o+3>>0]|0;k=f+80|0;c[k>>2]=(c[k>>2]|0)+4;k=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[k>>0]=a[o>>0]|0;a[k+1>>0]=a[o+1>>0]|0;a[k+2>>0]=a[o+2>>0]|0;a[k+3>>0]=a[o+3>>0]|0;k=f+80|0;c[k>>2]=(c[k>>2]|0)+4;c[o>>2]=51+(c[f+56>>2]|0);k=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[k>>0]=a[o>>0]|0;a[k+1>>0]=a[o+1>>0]|0;a[k+2>>0]=a[o+2>>0]|0;a[k+3>>0]=a[o+3>>0]|0;k=f+80|0;c[k>>2]=(c[k>>2]|0)+4;c[o>>2]=0;k=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[k>>0]=a[o>>0]|0;a[k+1>>0]=a[o+1>>0]|0;a[k+2>>0]=a[o+2>>0]|0;a[k+3>>0]=a[o+3>>0]|0;k=f+80|0;c[k>>2]=(c[k>>2]|0)+4;b[r>>1]=c[f+28>>2]&127;k=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[k>>0]=a[r>>0]|0;a[k+1>>0]=a[r+1>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+2;r=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[r>>0]=a[o>>0]|0;a[r+1>>0]=a[o+1>>0]|0;a[r+2>>0]=a[o+2>>0]|0;a[r+3>>0]=a[o+3>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+4;r=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;k=f+16|0;a[r>>0]=a[k>>0]|0;a[r+1>>0]=a[k+1>>0]|0;a[r+2>>0]=a[k+2>>0]|0;a[r+3>>0]=a[k+3>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+4;r=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;k=f+20|0;a[r>>0]=a[k>>0]|0;a[r+1>>0]=a[k+1>>0]|0;a[r+2>>0]=a[k+2>>0]|0;a[r+3>>0]=a[k+3>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+4;a[m>>0]=2;a[(c[f+72>>2]|0)+(c[f+80>>2]|0)>>0]=a[m>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+1;b[q>>1]=40+(c[f+56>>2]|0);r=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[r>>0]=a[q>>0]|0;a[r+1>>0]=a[q+1>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+2;c[o>>2]=40+(c[f+56>>2]|0);r=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[r>>0]=a[o>>0]|0;a[r+1>>0]=a[o+1>>0]|0;a[r+2>>0]=a[o+2>>0]|0;a[r+3>>0]=a[o+3>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+4;r=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;m=f+16|0;a[r>>0]=a[m>>0]|0;a[r+1>>0]=a[m+1>>0]|0;a[r+2>>0]=a[m+2>>0]|0;a[r+3>>0]=a[m+3>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+4;r=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;m=f+20|0;a[r>>0]=a[m>>0]|0;a[r+1>>0]=a[m+1>>0]|0;a[r+2>>0]=a[m+2>>0]|0;a[r+3>>0]=a[m+3>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+4;b[q>>1]=1;r=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[r>>0]=a[q>>0]|0;a[r+1>>0]=a[q+1>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+2;b[q>>1]=24;r=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[r>>0]=a[q>>0]|0;a[r+1>>0]=a[q+1>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+2;c[n>>2]=0;c[p>>2]=Pc(f,e[f+216+10>>1]|0,n)|0;if(c[p>>2]|0){c[j>>2]=c[p>>2];c[l>>2]=1}else c[l>>2]=0;if(c[l>>2]|0){r=c[j>>2]|0;i=s;return r|0}r=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[r>>0]=a[n>>0]|0;a[r+1>>0]=a[n+1>>0]|0;a[r+2>>0]=a[n+2>>0]|0;a[r+3>>0]=a[n+3>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+4;c[o>>2]=0;r=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[r>>0]=a[o>>0]|0;a[r+1>>0]=a[o+1>>0]|0;a[r+2>>0]=a[o+2>>0]|0;a[r+3>>0]=a[o+3>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+4;r=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[r>>0]=a[o>>0]|0;a[r+1>>0]=a[o+1>>0]|0;a[r+2>>0]=a[o+2>>0]|0;a[r+3>>0]=a[o+3>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+4;r=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[r>>0]=a[o>>0]|0;a[r+1>>0]=a[o+1>>0]|0;a[r+2>>0]=a[o+2>>0]|0;a[r+3>>0]=a[o+3>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+4;r=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[r>>0]=a[o>>0]|0;a[r+1>>0]=a[o+1>>0]|0;a[r+2>>0]=a[o+2>>0]|0;a[r+3>>0]=a[o+3>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+4;r=(c[f+72>>2]|0)+(c[f+80>>2]|0)|0;a[r>>0]=a[o>>0]|0;a[r+1>>0]=a[o+1>>0]|0;a[r+2>>0]=a[o+2>>0]|0;a[r+3>>0]=a[o+3>>0]|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+4;if(c[f+60>>2]|0?(c[f+56>>2]|0)>0:0){Tx((c[f+72>>2]|0)+(c[f+80>>2]|0)|0,c[f+60>>2]|0,c[f+56>>2]|0)|0;r=f+80|0;c[r>>2]=(c[r>>2]|0)+(c[f+56>>2]|0)}c[j>>2]=0;c[l>>2]=1;r=c[j>>2]|0;i=s;return r|0}function Rc(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;e=k+4|0;j=k+8|0;h=k;c[e>>2]=d;d=c[e>>2]|0;b[j>>1]=0;c[h>>2]=0;e=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;f=392;g=e+16|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));e=d+80|0;c[e>>2]=(c[e>>2]|0)+16;e=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[e>>0]=a[h>>0]|0;a[e+1>>0]=a[h+1>>0]|0;a[e+2>>0]=a[h+2>>0]|0;a[e+3>>0]=a[h+3>>0]|0;e=d+80|0;c[e>>2]=(c[e>>2]|0)+4;c[h>>2]=0;e=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[e>>0]=a[h>>0]|0;a[e+1>>0]=a[h+1>>0]|0;a[e+2>>0]=a[h+2>>0]|0;a[e+3>>0]=a[h+3>>0]|0;e=d+80|0;c[e>>2]=(c[e>>2]|0)+4;e=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;f=160708;g=e+16|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));g=d+80|0;c[g>>2]=(c[g>>2]|0)+16;c[h>>2]=c[d+100>>2];g=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[g>>0]=a[h>>0]|0;a[g+1>>0]=a[h+1>>0]|0;a[g+2>>0]=a[h+2>>0]|0;a[g+3>>0]=a[h+3>>0]|0;g=d+80|0;c[g>>2]=(c[g>>2]|0)+4;c[h>>2]=0;g=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[g>>0]=a[h>>0]|0;a[g+1>>0]=a[h+1>>0]|0;a[g+2>>0]=a[h+2>>0]|0;a[g+3>>0]=a[h+3>>0]|0;h=d+80|0;c[h>>2]=(c[h>>2]|0)+4;b[j>>1]=257;h=(c[d+72>>2]|0)+(c[d+80>>2]|0)|0;a[h>>0]=a[j>>0]|0;a[h+1>>0]=a[j+1>>0]|0;j=d+80|0;c[j>>2]=(c[j>>2]|0)+2;i=k;return 0}function Sc(a,d,e,f,h){a=a|0;d=d|0;e=e|0;f=f|0;h=h|0;var 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;u=i;i=i+64|0;s=u+52|0;v=u+28|0;k=u+24|0;l=u+20|0;m=u+16|0;n=u+8|0;o=u+56|0;p=u+32|0;t=u;r=u+12|0;q=u+4|0;c[v>>2]=a;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=h;f=c[v>>2]|0;c[o>>2]=0;c[f+132>>2]=c[l>>2];while(1){if((c[l>>2]|0)>>>0<=(c[o>>2]|0)>>>0){e=33;break}if((c[f+120>>2]|0)>0){c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16>>2]=0;c[r>>2]=0;c[p+8>>2]=1==(c[c[n>>2]>>2]|0)&1;c[p+4>>2]=c[o>>2];c[p+16>>2]=c[m>>2];if(4==(c[c[n>>2]>>2]|0))j=+g[f+44>>2];else j=+g[f+48>>2];c[p+12>>2]=~~j;if(4==(c[c[n>>2]>>2]|0))e=c[f+24>>2]|0;else e=c[f+28>>2]|0;c[p>>2]=e;c[q>>2]=Wc(f,(c[k>>2]|0)+(c[o>>2]|0)|0,(c[l>>2]|0)-(c[o>>2]|0)|0,r,p)|0;if(c[q>>2]|0){c[s>>2]=c[q>>2];c[t>>2]=1}else c[t>>2]=0;if(!(c[t>>2]|0)){c[o>>2]=(c[o>>2]|0)+(c[r>>2]|0);c[t>>2]=0}if(!(c[t>>2]|0))continue;else{e=34;break}}if(c[f+116>>2]|0){if(4==(c[c[n>>2]>>2]|0))j=+g[f+44>>2];else j=+g[f+48>>2];c[p>>2]=Tc(f,~~j>>>0,~~+g[(c[n>>2]|0)+60>>2]&65535)|0;if(c[p>>2]|0){c[s>>2]=c[p>>2];c[t>>2]=1}else c[t>>2]=0;if(c[t>>2]|0){e=34;break}c[p>>2]=Uc(f,2)|0;if(c[p>>2]|0){c[s>>2]=c[p>>2];c[t>>2]=1}else c[t>>2]=0;if(c[t>>2]|0){e=34;break}}c[f+120>>2]=c[f+36>>2];c[f+124>>2]=0;b[f+128>>1]=0;c[p>>2]=Vc(f)|0;if(c[p>>2]|0){c[s>>2]=c[p>>2];c[t>>2]=1}else c[t>>2]=0;if(c[t>>2]|0){e=34;break}c[f+116>>2]=1}if((e|0)==33){c[s>>2]=0;c[t>>2]=1;v=c[s>>2]|0;i=u;return v|0}else if((e|0)==34){v=c[s>>2]|0;i=u;return v|0}return 0}function Tc(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;g=i;i=i+32|0;o=g+12|0;m=g+8|0;k=g+16|0;j=g+20|0;l=g+18|0;n=g+4|0;h=g;c[o>>2]=d;c[m>>2]=e;b[k>>1]=f;d=c[o>>2]|0;a[j>>0]=0;b[l>>1]=0;c[n>>2]=0;c[h>>2]=0;a[j>>0]=-126;a[(c[d+92>>2]|0)+(c[h>>2]|0)>>0]=a[j>>0]|0;c[h>>2]=(c[h>>2]|0)+1;b[l>>1]=0;e=(c[d+92>>2]|0)+(c[h>>2]|0)|0;a[e>>0]=a[l>>0]|0;a[e+1>>0]=a[l+1>>0]|0;c[h>>2]=(c[h>>2]|0)+2;a[j>>0]=-111;a[(c[d+92>>2]|0)+(c[h>>2]|0)>>0]=a[j>>0]|0;c[h>>2]=(c[h>>2]|0)+1;a[j>>0]=93;a[(c[d+92>>2]|0)+(c[h>>2]|0)>>0]=a[j>>0]|0;c[h>>2]=(c[h>>2]|0)+1;e=(c[d+92>>2]|0)+(c[h>>2]|0)|0;f=d+128|0;a[e>>0]=a[f>>0]|0;a[e+1>>0]=a[f+1>>0]|0;c[h>>2]=(c[h>>2]|0)+2;c[n>>2]=0;e=(c[d+92>>2]|0)+(c[h>>2]|0)|0;a[e>>0]=a[m>>0]|0;a[e+1>>0]=a[m+1>>0]|0;a[e+2>>0]=a[m+2>>0]|0;a[e+3>>0]=a[m+3>>0]|0;c[h>>2]=(c[h>>2]|0)+4;b[l>>1]=0;e=(c[d+92>>2]|0)+(c[h>>2]|0)|0;a[e>>0]=a[k>>0]|0;a[e+1>>0]=a[k+1>>0]|0;c[h>>2]=(c[h>>2]|0)+2;a[j>>0]=c[d+124>>2]&63|128;a[(c[d+92>>2]|0)+(c[h>>2]|0)>>0]=a[j>>0]|0;d=d+100|0;c[d>>2]=(c[d>>2]|0)+1;i=g;return 0}function Uc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+48|0;d=j+16|0;k=j+8|0;e=j+4|0;h=j+24|0;g=j+12|0;f=j;c[k>>2]=a;c[e>>2]=b;b=c[k>>2]|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;if(1==(c[b+180>>2]|0)){if(c[b+184>>2]|0){if(!(c[b+84>>2]|0)){c[h>>2]=c[b+72>>2];c[h+4>>2]=c[b+80>>2];c[h+8>>2]=1;mb[c[b+184>>2]&1](h,c[b+188>>2]|0);c[b+84>>2]=1}c[h>>2]=c[b+92>>2];c[h+4>>2]=c[b+96>>2];c[h+8>>2]=c[e>>2];mb[c[b+184>>2]&1](h,c[b+188>>2]|0)}}else if(c[b+196>>2]|0){if(!(c[b+84>>2]|0)){c[h>>2]=c[b+72>>2];c[h+4>>2]=c[b+80>>2];c[h+8>>2]=1;mb[c[b+196>>2]&1](h,c[b+192>>2]|0);c[b+84>>2]=1}c[h>>2]=c[b+92>>2];c[h+4>>2]=c[b+96>>2];c[h+8>>2]=c[e>>2];mb[c[b+196>>2]&1](h,c[b+192>>2]|0)}if(c[b+200>>2]|0){c[g>>2]=Hj(c[b+200>>2]|0,c[b+92>>2]|0,c[b+96>>2]|0)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0){k=c[d>>2]|0;i=j;return k|0}}c[b+96>>2]=0;c[d>>2]=0;c[f>>2]=1;k=c[d>>2]|0;i=j;return k|0}function Vc(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f;c[d>>2]=b;b=c[d>>2]|0;d=(c[b+92>>2]|0)+(c[b+96>>2]|0)|0;e=d+13|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(e|0));e=b+96|0;c[e>>2]=(c[e>>2]|0)+13;e=b+120|0;c[e>>2]=(c[e>>2]|0)-13;i=f;return 0}function Wc(f,g,h,j,k){f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;t=i;i=i+48|0;v=t+24|0;m=t+16|0;l=t+12|0;n=t+4|0;u=t;r=t+28|0;q=t+20|0;s=t+32|0;p=t+8|0;o=t+34|0;c[v>>2]=f;c[m>>2]=g;c[l>>2]=h;c[n>>2]=j;c[u>>2]=k;g=c[v>>2]|0;c[r>>2]=c[u>>2];if(!(c[g+124>>2]|0)){u=g+96|0;v=c[u>>2]|0;c[u>>2]=v+1;a[(c[g+92>>2]|0)+v>>0]=0;v=g+120|0;c[v>>2]=(c[v>>2]|0)-1}c[q>>2]=0;if(!(c[(c[r>>2]|0)+16>>2]|0))h=1;else h=c[(c[r>>2]|0)+16>>2]|0;c[(c[r>>2]|0)+16>>2]=h;if((c[l>>2]|0)<((c[g+120>>2]|0)-17|0))h=c[l>>2]|0;else h=(c[g+120>>2]|0)-17|0;c[q>>2]=h;c[q>>2]=$((c[q>>2]|0)/(c[(c[r>>2]|0)+16>>2]|0)|0,c[(c[r>>2]|0)+16>>2]|0)|0;if(!(c[q>>2]|0)){if((c[g+120>>2]|0)>0){Ox((c[g+92>>2]|0)+(c[g+96>>2]|0)|0,0,c[g+120>>2]|0)|0;v=g+96|0;c[v>>2]=(c[v>>2]|0)+(c[g+120>>2]|0)}v=g+128|0;b[v>>1]=(e[v>>1]|0)+(c[g+120>>2]&65535);c[g+120>>2]=0}else{b[s>>1]=0;c[p>>2]=0;a[o>>0]=c[c[r>>2]>>2]&127;if(c[(c[r>>2]|0)+8>>2]|0)a[o>>0]=d[o>>0]|0|128;u=a[o>>0]|0;l=g+96|0;v=c[l>>2]|0;c[l>>2]=v+1;a[(c[g+92>>2]|0)+v>>0]=u;if((c[g+24>>2]|0)==(c[c[r>>2]>>2]|0))h=c[g+104>>2]|0;else h=c[g+108>>2]|0;a[o>>0]=h;v=a[o>>0]|0;l=g+96|0;u=c[l>>2]|0;c[l>>2]=u+1;a[(c[g+92>>2]|0)+u>>0]=v;c[p>>2]=c[(c[r>>2]|0)+4>>2];u=(c[g+92>>2]|0)+(c[g+96>>2]|0)|0;a[u>>0]=a[p>>0]|0;a[u+1>>0]=a[p+1>>0]|0;a[u+2>>0]=a[p+2>>0]|0;a[u+3>>0]=a[p+3>>0]|0;u=g+96|0;c[u>>2]=(c[u>>2]|0)+4;a[o>>0]=8;u=a[o>>0]|0;o=g+96|0;v=c[o>>2]|0;c[o>>2]=v+1;a[(c[g+92>>2]|0)+v>>0]=u;v=(c[g+92>>2]|0)+(c[g+96>>2]|0)|0;u=g+132|0;a[v>>0]=a[u>>0]|0;a[v+1>>0]=a[u+1>>0]|0;a[v+2>>0]=a[u+2>>0]|0;a[v+3>>0]=a[u+3>>0]|0;v=g+96|0;c[v>>2]=(c[v>>2]|0)+4;c[p>>2]=(c[(c[r>>2]|0)+12>>2]|0)+3e3;v=(c[g+92>>2]|0)+(c[g+96>>2]|0)|0;a[v>>0]=a[p>>0]|0;a[v+1>>0]=a[p+1>>0]|0;a[v+2>>0]=a[p+2>>0]|0;a[v+3>>0]=a[p+3>>0]|0;v=g+96|0;c[v>>2]=(c[v>>2]|0)+4;b[s>>1]=c[q>>2];v=(c[g+92>>2]|0)+(c[g+96>>2]|0)|0;a[v>>0]=a[s>>0]|0;a[v+1>>0]=a[s+1>>0]|0;v=g+96|0;c[v>>2]=(c[v>>2]|0)+2;v=g+120|0;c[v>>2]=(c[v>>2]|0)-17;Tx((c[g+92>>2]|0)+(c[g+96>>2]|0)|0,c[m>>2]|0,c[q>>2]|0)|0;v=g+96|0;c[v>>2]=(c[v>>2]|0)+(c[q>>2]|0);c[c[n>>2]>>2]=c[q>>2];v=g+120|0;c[v>>2]=(c[v>>2]|0)-(c[q>>2]|0);v=g+124|0;c[v>>2]=(c[v>>2]|0)+1}if((c[g+120>>2]|0)>=64){i=t;return 0}if((c[g+120>>2]|0)>0){Ox((c[g+92>>2]|0)+(c[g+96>>2]|0)|0,0,c[g+120>>2]|0)|0;v=g+96|0;c[v>>2]=(c[v>>2]|0)+(c[g+120>>2]|0)}v=g+128|0;b[v>>1]=(e[v>>1]|0)+(c[g+120>>2]&65535);c[g+120>>2]=0;i=t;return 0}function Xc(a,d,f,g){a=a|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+32|0;h=p+16|0;q=p+12|0;j=p+8|0;k=p+4|0;l=p+24|0;n=p+20|0;m=p;c[q>>2]=a;c[j>>2]=d;c[k>>2]=f;b[l>>1]=g;f=c[q>>2]|0;if(0==(c[f+172>>2]|0)?0==(e[f+176>>1]|0|0):0){c[f+172>>2]=c[k>>2];b[f+176>>1]=b[l>>1]|0}c[j>>2]=(c[j>>2]|0)+3e3;while(1){if((c[f+160>>2]|0)>=(c[j>>2]|0))break;if((c[f+160>>2]|0)<(c[f+164>>2]|0))break;c[n>>2]=Yc(f,c[f+172>>2]|0,b[f+176>>1]|0)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];c[m>>2]=1}else c[m>>2]=0;if((c[m>>2]|0)>>>0>=1){o=12;break}}if((o|0)==12){q=c[h>>2]|0;i=p;return q|0}c[f+172>>2]=c[k>>2];b[f+176>>1]=b[l>>1]|0;c[f+164>>2]=c[j>>2];c[h>>2]=0;q=c[h>>2]|0;i=p;return q|0}function Yc(d,f,g){d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;h=n+12|0;o=n+8|0;j=n+4|0;k=n+20|0;m=n+16|0;l=n;c[o>>2]=d;c[j>>2]=f;b[k>>1]=g;f=c[o>>2]|0;if((e[k>>1]|0|0)>(c[f+152>>2]|0))c[f+152>>2]=e[k>>1];if((c[f+144>>2]|0)>>>0<=(c[f+148>>2]|0)>>>0){o=f+144|0;c[o>>2]=(c[o>>2]|0)+6144;c[m>>2]=_w(c[f+144>>2]|0)|0;if(!(c[m>>2]|0)){c[h>>2]=-2147483646;c[l>>2]=1}else{if(c[f+140>>2]|0){Tx(c[m>>2]|0,c[f+140>>2]|0,c[f+148>>2]|0)|0;$w(c[f+140>>2]|0)}Ox((c[m>>2]|0)+(c[f+148>>2]|0)|0,0,(c[f+144>>2]|0)-(c[f+148>>2]|0)|0)|0;c[f+140>>2]=c[m>>2];c[l>>2]=0}if((c[l>>2]|0)>>>0>=1){o=c[h>>2]|0;i=n;return o|0}}o=(c[f+140>>2]|0)+(c[f+148>>2]|0)|0;a[o>>0]=a[j>>0]|0;a[o+1>>0]=a[j+1>>0]|0;a[o+2>>0]=a[j+2>>0]|0;a[o+3>>0]=a[j+3>>0]|0;o=f+148|0;c[o>>2]=(c[o>>2]|0)+4;o=(c[f+140>>2]|0)+(c[f+148>>2]|0)|0;a[o>>0]=a[k>>0]|0;a[o+1>>0]=a[k+1>>0]|0;o=f+148|0;c[o>>2]=(c[o>>2]|0)+2;o=f+156|0;c[o>>2]=(c[o>>2]|0)+1;o=f+160|0;c[o>>2]=(c[o>>2]|0)+(c[f+168>>2]|0);c[h>>2]=0;o=c[h>>2]|0;i=n;return o|0}function Zc(a,d,f,h){a=a|0;d=d|0;f=f|0;h=h|0;var 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;v=i;i=i+48|0;j=v+40|0;w=v+36|0;k=v+28|0;l=v+20|0;m=v+12|0;r=v+44|0;n=v;p=v+32|0;q=v+24|0;o=v+16|0;t=v+8|0;s=v+4|0;c[w>>2]=a;c[k>>2]=d;c[l>>2]=f;c[m>>2]=h;d=c[w>>2]|0;if(!(c[d+24>>2]|0)){c[j>>2]=0;w=c[j>>2]|0;i=v;return w|0}do if(!(c[d+88>>2]|0)){c[r>>2]=Kc(d)|0;if(c[r>>2]|0){c[j>>2]=c[r>>2];c[n>>2]=1}else c[n>>2]=0;if((c[n>>2]|0)>>>0<1){c[d+88>>2]=1;break}else{w=c[j>>2]|0;i=v;return w|0}}while(0);c[r>>2]=0;c[p>>2]=0;c[q>>2]=0;c[o>>2]=~~+g[d+44>>2]>>>0;if((c[l>>2]|0)>>>0>((c[d+36>>2]|0)-13-17-1|0)>>>0)f=(c[d+36>>2]|0)-13-17-1|0;else f=c[l>>2]|0;c[r>>2]=f;do if(c[r>>2]|0){c[p>>2]=((c[l>>2]|0)>>>0)/((c[r>>2]|0)>>>0)|0;c[q>>2]=~~(+g[(c[m>>2]|0)+60>>2]/+((c[p>>2]|0)>>>0))>>>0;c[t>>2]=0;while(1){if((c[t>>2]|0)>>>0>=(c[p>>2]|0)>>>0){u=16;break}w=d+104|0;c[w>>2]=(c[w>>2]|0)+1;c[s>>2]=Sc(d,c[k>>2]|0,c[r>>2]|0,c[r>>2]|0,c[m>>2]|0)|0;if(c[s>>2]|0){c[j>>2]=c[s>>2];c[n>>2]=1}else c[n>>2]=0;if(c[n>>2]|0)break;c[k>>2]=(c[k>>2]|0)+(c[r>>2]|0);w=d+44|0;g[w>>2]=+g[w>>2]+ +((c[q>>2]|0)>>>0);c[t>>2]=(c[t>>2]|0)+1}if((u|0)==16)c[n>>2]=2;if((c[n>>2]|0)==2){w=$(c[r>>2]|0,c[p>>2]|0)|0;if(w>>>0<(c[l>>2]|0)>>>0){u=d+104|0;c[u>>2]=(c[u>>2]|0)+1;u=(c[l>>2]|0)-($(c[r>>2]|0,c[p>>2]|0)|0)|0;w=(c[l>>2]|0)-($(c[r>>2]|0,c[p>>2]|0)|0)|0;c[t>>2]=Sc(d,c[k>>2]|0,u,w,c[m>>2]|0)|0;if(c[t>>2]|0){c[j>>2]=c[t>>2];c[n>>2]=1}else c[n>>2]=0;if(c[n>>2]|0)break}g[d+44>>2]=+((c[o>>2]|0)>>>0)+ +g[(c[m>>2]|0)+60>>2];if((c[r>>2]|0)>>>0>(e[d+136>>1]|0)>>>0)b[d+136>>1]=c[r>>2];c[j>>2]=0;c[n>>2]=1}}else{c[j>>2]=-2147483645;c[n>>2]=1}while(0);w=c[j>>2]|0;i=v;return w|0}function _c(a){a=a|0;var b=0.0,d=0,e=0,f=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;d=k+28|0;l=k+24|0;j=k+8|0;f=k;e=k+20|0;h=k+16|0;c[l>>2]=a;a=c[l>>2]|0;c[a+204>>2]=2;if(c[a+200>>2]|0){l=j;c[l>>2]=0;c[l+4>>2]=0;if(+g[a+44>>2]>+g[a+48>>2])b=+g[a+44>>2];else b=+g[a+48>>2];c[a+52>>2]=~~b;c[f>>2]=$c(a)|0;if(c[f>>2]|0){c[d>>2]=c[f>>2];c[e>>2]=1}else c[e>>2]=0;do if(!(c[e>>2]|0)){c[f>>2]=Jj(c[a+200>>2]|0,j)|0;if(c[f>>2]|0){c[d>>2]=c[f>>2];c[e>>2]=1}else c[e>>2]=0;if(!(c[e>>2]|0)){l=c[a+112>>2]|0;c[f>>2]=Ij(c[a+200>>2]|0,0,l,((l|0)<0)<<31>>31)|0;if(c[f>>2]|0){c[d>>2]=c[f>>2];c[e>>2]=1}else c[e>>2]=0;if(!(c[e>>2]|0)){c[f>>2]=ad(a,c[j>>2]|0)|0;if(c[f>>2]|0){c[d>>2]=c[f>>2];c[e>>2]=1}else c[e>>2]=0;if(!(c[e>>2]|0)){l=j;c[f>>2]=Ij(c[a+200>>2]|0,0,c[l>>2]|0,c[l+4>>2]|0)|0;if(c[f>>2]|0){c[d>>2]=c[f>>2];c[e>>2]=1}else c[e>>2]=0;if(!(c[e>>2]|0)){if(0!=(c[a+28>>2]|0)?(c[a+156>>2]|0)>0:0){c[f>>2]=bd(a,c[a+52>>2]|0)|0;if(c[f>>2]|0){c[d>>2]=c[f>>2];c[e>>2]=1}else c[e>>2]=0;if(c[e>>2]|0)break}l=f;c[l>>2]=0;c[l+4>>2]=0;c[h>>2]=Jj(c[a+200>>2]|0,f)|0;if(c[h>>2]|0){c[d>>2]=c[h>>2];c[e>>2]=1}else c[e>>2]=0;do if(!(c[e>>2]|0)){c[h>>2]=Ij(c[a+200>>2]|0,0,0,0)|0;if(c[h>>2]|0){c[d>>2]=c[h>>2];c[e>>2]=1}else c[e>>2]=0;if(!(c[e>>2]|0)){c[h>>2]=cd(a,c[f>>2]|0)|0;if(c[h>>2]|0){c[d>>2]=c[h>>2];c[e>>2]=1}else c[e>>2]=0;if(c[e>>2]|0)break;l=f;c[h>>2]=Ij(c[a+200>>2]|0,0,c[l>>2]|0,c[l+4>>2]|0)|0;if(c[h>>2]|0){c[d>>2]=c[h>>2];c[e>>2]=1}else c[e>>2]=0;if(c[e>>2]|0)break;Eh(c[a+200>>2]|0)|0;c[a+200>>2]=0;c[e>>2]=0}}while(0)}}}}}while(0);if((c[e>>2]|0)>>>0>=1){l=c[d>>2]|0;i=k;return l|0}}c[d>>2]=ed(a)|0;l=c[d>>2]|0;i=k;return l|0}function $c(a){a=a|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;d=g+8|0;h=g+4|0;f=g+12|0;e=g;c[h>>2]=a;a=c[h>>2]|0;if((c[a+120>>2]|0)>0){Ox((c[a+92>>2]|0)+(c[a+96>>2]|0)|0,0,c[a+120>>2]|0)|0;h=a+96|0;c[h>>2]=(c[h>>2]|0)+(c[a+120>>2]|0)}b[a+128>>1]=c[a+120>>2];c[a+120>>2]=0;c[f>>2]=Tc(a,c[a+52>>2]|0,1)|0;if(c[f>>2]|0){c[d>>2]=c[f>>2];c[e>>2]=1}else c[e>>2]=0;if((c[e>>2]|0)>>>0>=1){h=c[d>>2]|0;i=g;return h|0}c[f>>2]=Uc(a,2)|0;if(c[f>>2]|0){c[d>>2]=c[f>>2];c[e>>2]=1}else c[e>>2]=0;if((c[e>>2]|0)>>>0>=1){h=c[d>>2]|0;i=g;return h|0}c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}function ad(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+16|0;k=j+8|0;e=j+4|0;g=j+20|0;h=j+12|0;f=j;c[k>>2]=a;c[e>>2]=b;b=c[k>>2]|0;c[g>>2]=0;if((c[b+52>>2]|0)>0)c[b+40>>2]=~~(+(c[e>>2]|0)*8.0e3/+(c[b+52>>2]|0))>>>0;c[h>>2]=Ij(c[b+200>>2]|0,1,16,0)|0;if(c[h>>2]|0){c[d>>2]=c[h>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0){k=c[d>>2]|0;i=j;return k|0}c[g>>2]=(c[e>>2]|0)-(c[b+112>>2]|0);c[h>>2]=Hj(c[b+200>>2]|0,g,4)|0;if(c[h>>2]|0){c[d>>2]=c[h>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0){k=c[d>>2]|0;i=j;return k|0}c[g>>2]=0;c[h>>2]=Hj(c[b+200>>2]|0,g,4)|0;if(c[h>>2]|0){c[d>>2]=c[h>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0){k=c[d>>2]|0;i=j;return k|0}c[h>>2]=Ij(c[b+200>>2]|0,1,16,0)|0;if(c[h>>2]|0){c[d>>2]=c[h>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0){k=c[d>>2]|0;i=j;return k|0}c[g>>2]=c[b+100>>2];c[h>>2]=Hj(c[b+200>>2]|0,g,4)|0;if(c[h>>2]|0){c[d>>2]=c[h>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0){k=c[d>>2]|0;i=j;return k|0}c[g>>2]=0;c[h>>2]=Hj(c[b+200>>2]|0,g,4)|0;if(c[h>>2]|0){c[d>>2]=c[h>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0){k=c[d>>2]|0;i=j;return k|0}c[d>>2]=0;c[f>>2]=1;k=c[d>>2]|0;i=j;return k|0}function bd(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;e=l+16|0;m=l+12|0;f=l+4|0;h=l+20|0;g=l;j=l+8|0;c[m>>2]=a;c[f>>2]=d;d=c[m>>2]|0;while(1){if((c[d+160>>2]|0)>((c[f>>2]|0)+3e3|0))break;if((c[d+160>>2]|0)<(c[d+164>>2]|0))break;c[h>>2]=Yc(d,c[d+172>>2]|0,b[d+176>>1]|0)|0;if(c[h>>2]|0){c[e>>2]=c[h>>2];c[g>>2]=1}else c[g>>2]=0;if((c[g>>2]|0)>>>0>=1){k=46;break}}if((k|0)==46){m=c[e>>2]|0;i=l;return m|0}c[h>>2]=0;c[j>>2]=Hj(c[d+200>>2]|0,408,16)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];c[g>>2]=1}else c[g>>2]=0;if(!(c[g>>2]|0)){c[h>>2]=56+((c[d+156>>2]|0)*6|0);c[j>>2]=Hj(c[d+200>>2]|0,h,4)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];c[g>>2]=1}else c[g>>2]=0;if(!(c[g>>2]|0)){c[h>>2]=0;c[j>>2]=Hj(c[d+200>>2]|0,h,4)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];c[g>>2]=1}else c[g>>2]=0;if(!(c[g>>2]|0)){c[j>>2]=Hj(c[d+200>>2]|0,160708,16)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];c[g>>2]=1}else c[g>>2]=0;if(!(c[g>>2]|0)){c[h>>2]=(c[d+168>>2]|0)*1e4;c[j>>2]=Hj(c[d+200>>2]|0,h,4)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];c[g>>2]=1}else c[g>>2]=0;if(!(c[g>>2]|0)){c[h>>2]=0;c[j>>2]=Hj(c[d+200>>2]|0,h,4)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];c[g>>2]=1}else c[g>>2]=0;if(!(c[g>>2]|0)){c[j>>2]=Hj(c[d+200>>2]|0,d+152|0,4)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];c[g>>2]=1}else c[g>>2]=0;if(!(c[g>>2]|0)){c[j>>2]=Hj(c[d+200>>2]|0,d+156|0,4)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];c[g>>2]=1}else c[g>>2]=0;if(!(c[g>>2]|0)){c[j>>2]=Hj(c[d+200>>2]|0,c[d+140>>2]|0,c[d+148>>2]|0)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];c[g>>2]=1}else c[g>>2]=0;if(!(c[g>>2]|0)){c[e>>2]=0;c[g>>2]=1}}}}}}}}}m=c[e>>2]|0;i=l;return m|0}function cd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+12|0;j=h+8|0;e=h+4|0;g=h+16|0;f=h;c[j>>2]=a;c[e>>2]=b;b=c[j>>2]|0;c[g>>2]=Ij(c[b+200>>2]|0,1,30,0)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];c[f>>2]=1}else c[f>>2]=0;if((c[f>>2]|0)>>>0>=1){j=c[d>>2]|0;i=h;return j|0}c[g>>2]=dd(b,c[e>>2]|0)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];c[f>>2]=1}else c[f>>2]=0;if((c[f>>2]|0)>>>0>=1){j=c[d>>2]|0;i=h;return j|0}c[d>>2]=0;j=c[d>>2]|0;i=h;return j|0}function dd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+48|0;d=m+28|0;n=m+20|0;e=m+16|0;g=m+32|0;j=m+24|0;f=m+12|0;h=m+8|0;k=m+4|0;l=m;c[n>>2]=a;c[e>>2]=b;b=c[n>>2]|0;c[g>>2]=0;c[j>>2]=Ij(c[b+200>>2]|0,1,40,0)|0;if(c[j>>2]|0){c[d>>2]=c[j>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0){n=c[d>>2]|0;i=m;return n|0}c[j>>2]=Hj(c[b+200>>2]|0,e,4)|0;if(c[j>>2]|0){c[d>>2]=c[j>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0){n=c[d>>2]|0;i=m;return n|0}c[j>>2]=Hj(c[b+200>>2]|0,g,4)|0;if(c[j>>2]|0){c[d>>2]=c[j>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0){n=c[d>>2]|0;i=m;return n|0}c[j>>2]=Ij(c[b+200>>2]|0,1,8,0)|0;if(c[j>>2]|0){c[d>>2]=c[j>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0){n=c[d>>2]|0;i=m;return n|0}c[j>>2]=Hj(c[b+200>>2]|0,b+100|0,4)|0;if(c[j>>2]|0){c[d>>2]=c[j>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0){n=c[d>>2]|0;i=m;return n|0}c[j>>2]=Hj(c[b+200>>2]|0,g,4)|0;if(c[j>>2]|0){c[d>>2]=c[j>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0){n=c[d>>2]|0;i=m;return n|0}c[j>>2]=((c[b+52>>2]|0)+3e3|0)%429497|0;c[h>>2]=((c[b+52>>2]|0)+3e3|0)/429497|0;c[g>>2]=(c[j>>2]|0)*1e4;c[k>>2]=Hj(c[b+200>>2]|0,g,4)|0;if(c[k>>2]|0){c[d>>2]=c[k>>2];c[f>>2]=1}else c[f>>2]=0;if(!(c[f>>2]|0)){c[k>>2]=Hj(c[b+200>>2]|0,h,4)|0;if(c[k>>2]|0){c[d>>2]=c[k>>2];c[f>>2]=1}else c[f>>2]=0;if(!(c[f>>2]|0)){c[k>>2]=c[b+52>>2];c[j>>2]=(c[k>>2]|0)%429497|0;c[h>>2]=(c[k>>2]|0)/429497|0;c[g>>2]=(c[j>>2]|0)*1e4;c[l>>2]=Hj(c[b+200>>2]|0,g,4)|0;if(c[l>>2]|0){c[d>>2]=c[l>>2];c[f>>2]=1}else c[f>>2]=0;do if(!(c[f>>2]|0)){c[l>>2]=Hj(c[b+200>>2]|0,h,4)|0;if(c[l>>2]|0){c[d>>2]=c[l>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0)break;c[l>>2]=Ij(c[b+200>>2]|0,1,8,0)|0;if(c[l>>2]|0){c[d>>2]=c[l>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0)break;c[g>>2]=2;c[l>>2]=Hj(c[b+200>>2]|0,g,4)|0;if(c[l>>2]|0){c[d>>2]=c[l>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0)break;c[l>>2]=Ij(c[b+200>>2]|0,1,8,0)|0;if(c[l>>2]|0){c[d>>2]=c[l>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0)break;if(c[b+24>>2]|0){n=b+40|0;c[n>>2]=(c[n>>2]|0)+(c[b+216+20>>2]|0)}n=b+40|0;c[n>>2]=(c[n>>2]|0)+1;c[l>>2]=Hj(c[b+200>>2]|0,b+40|0,4)|0;if(c[l>>2]|0){c[d>>2]=c[l>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0)break;c[d>>2]=0;c[f>>2]=1}while(0)}}n=c[d>>2]|0;i=m;return n|0}function ed(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;a=c[e>>2]|0;c[a+24>>2]=0;c[a+28>>2]=0;c[a+32>>2]=0;g[a+44>>2]=0.0;g[a+48>>2]=0.0;c[a+52>>2]=0;c[a+112>>2]=0;c[a+40>>2]=0;b[a+136>>1]=0;c[a+212>>2]=0;c[a+100>>2]=0;c[a+104>>2]=0;c[a+108>>2]=0;c[a+120>>2]=0;c[a+124>>2]=0;b[a+128>>1]=0;c[a+132>>2]=0;c[a+116>>2]=0;i=d;return 0}function fd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=c[h>>2]|0;c[a+180>>2]=1;c[a+184>>2]=c[g>>2];c[a+188>>2]=c[f>>2];c[a+196>>2]=0;c[a+192>>2]=0;i=e;return 0}function gd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=c[h>>2]|0;c[a+180>>2]=0;c[a+184>>2]=0;c[a+188>>2]=0;c[a+196>>2]=c[g>>2];c[a+192>>2]=c[f>>2];i=e;return 0}function hd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;i=i+16|0;c[e+8>>2]=a;c[e+4>>2]=b;c[e>>2]=d;i=e;return -2147483647}function id(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=i;i=i+32|0;c[g+16>>2]=a;c[g+12>>2]=b;c[g+8>>2]=d;c[g+4>>2]=e;c[g>>2]=f;i=g;return -2147483647}function jd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+204>>2]=c[f>>2];i=d;return 0}function kd(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return -2147483647}function ld(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return -2147483647}function md(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f;c[d>>2]=a;a=c[d>>2]|0;nd(a);c[a>>2]=184;c[a+16>>2]=0;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;c[a+32>>2]=0;c[a+36>>2]=8e3;g[a+44>>2]=0.0;g[a+48>>2]=0.0;c[a+52>>2]=0;c[a+112>>2]=0;c[a+40>>2]=0;c[a+56>>2]=0;c[a+60>>2]=0;c[a+64>>2]=0;c[a+68>>2]=0;b[a+136>>1]=0;c[a+84>>2]=0;c[a+72>>2]=0;c[a+76>>2]=0;c[a+80>>2]=0;c[a+88>>2]=0;c[a+92>>2]=0;c[a+96>>2]=0;c[a+100>>2]=0;c[a+104>>2]=0;c[a+108>>2]=0;c[a+116>>2]=0;c[a+120>>2]=0;c[a+124>>2]=0;b[a+128>>1]=0;c[a+132>>2]=0;c[a+140>>2]=0;c[a+144>>2]=0;c[a+148>>2]=0;c[a+152>>2]=0;c[a+156>>2]=0;c[a+160>>2]=0;c[a+164>>2]=0;c[a+168>>2]=1e3;c[a+172>>2]=0;b[a+176>>1]=0;c[a+180>>2]=0;c[a+184>>2]=0;c[a+188>>2]=0;c[a+196>>2]=0;c[a+192>>2]=0;c[a+200>>2]=0;c[a+208>>2]=0;c[a+204>>2]=2;c[a+212>>2]=0;d=a+216|0;e=d+40|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));Ox(a+256|0,0,260)|0;i=f;return}function nd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[c[d>>2]>>2]=432;i=b;return}function od(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;zc(a);lx(a);i=b;return}function pd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=504;nb[c[(c[a>>2]|0)+32>>2]&127](a)|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;zc(a);i=b;return}function qd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;pd(a);lx(a);i=b;return}function rd(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[a+308>>2]=Ix(10240)|0;if(!(c[a+308>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}else{c[b>>2]=0;i=d;return c[b>>2]|0}return 0}function sd(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;b=c[b>>2]|0;if(c[b+308>>2]|0){a=c[b+308>>2]|0;if(a|0)Jx(a);c[b+308>>2]=0}if(c[b+316>>2]|0){a=c[b+316>>2]|0;if(a|0)Jx(a);c[b+316>>2]=0}if(!(c[b+3604>>2]|0)){i=d;return 0}a=c[b+3604>>2]|0;if(a|0)Jx(a);c[b+3604>>2]=0;i=d;return 0}function td(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;l=n+12|0;j=n+8|0;k=n+4|0;m=n;h=n+16|0;c[j>>2]=e;c[k>>2]=f;c[m>>2]=g;j=c[j>>2]|0;if(!(c[k>>2]|0)){c[l>>2]=-2147483645;m=c[l>>2]|0;i=n;return m|0}c[h>>2]=(d[c[k>>2]>>0]|0)+((d[(c[k>>2]|0)+1>>0]|0)<<8)+((d[(c[k>>2]|0)+2>>0]|0)<<16)+((d[(c[k>>2]|0)+3>>0]|0)<<24);g=c[h>>2]|0;if((g|0)<1213418804)switch(g|0){case 1212893236:{g=4;break}default:g=5}else switch(g|0){case 1213418804:{g=4;break}default:g=5}if((g|0)==4)ud(j,c[k>>2]|0)|0;else if((g|0)==5){e=j+324|0;g=c[k>>2]|0;f=e+40|0;do{a[e>>0]=a[g>>0]|0;e=e+1|0;g=g+1|0}while((e|0)<(f|0));b[j+324+8>>1]=2}if((c[m>>2]|0)>>>0<1024|(c[m>>2]|0)>>>0>8192)c[j+20>>2]=5120;else c[j+20>>2]=c[m>>2];c[l>>2]=0;m=c[l>>2]|0;i=n;return m|0}function ud(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0;h=i;i=i+16|0;k=h+4|0;j=h;g=h+8|0;c[k>>2]=d;c[j>>2]=f;d=c[k>>2]|0;c[g>>2]=c[j>>2];c[d+324>>2]=1212894537;b[d+324+8>>1]=2;f=d+324+10|0;if((c[c[g>>2]>>2]|0)==1212893236)b[f>>1]=1;else b[f>>1]=3;b[d+324+12>>1]=c[(c[g>>2]|0)+32>>2];a[d+324+14>>0]=(e[(c[g>>2]|0)+20>>1]|0)-4096;c[d+324+16>>2]=c[(c[g>>2]|0)+24>>2];a[d+324+15>>0]=b[(c[g>>2]|0)+22>>1];i=h;return 0}function vd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;g=c[d>>2]|0;i=f;return g|0}nb[c[(c[b>>2]|0)+32>>2]&127](b)|0;c[b+36>>2]=zh(c[e>>2]|0,2)|0;if(!(c[b+36>>2]|0)){g=za(4)|0;c[g>>2]=-2147483641;Xa(g|0,152,0)}c[f+12>>2]=Bh(c[b+36>>2]|0,40,b+324|0)|0;c[b+16>>2]=0;c[d>>2]=0;g=c[d>>2]|0;i=f;return g|0}function wd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;g=c[d>>2]|0;i=f;return g|0}else{fw(b+40|0,c[e>>2]|0)|0;c[b+300>>2]=1;c[d>>2]=0;g=c[d>>2]|0;i=f;return g|0}return 0}function xd(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=i;i=i+192|0;k=s+176|0;t=s+168|0;l=s+12|0;m=s+8|0;n=s+4|0;p=s+180|0;q=s+172|0;r=s+16|0;o=s;c[t>>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=j;h=c[t>>2]|0;if((c[h+16>>2]|0)==2){c[k>>2]=-2147483642;t=c[k>>2]|0;i=s;return t|0}if(0==(c[l>>2]|0)|0==(c[m>>2]|0)){c[k>>2]=-2147483645;t=c[k>>2]|0;i=s;return t|0}if(!(c[n>>2]|0)){c[k>>2]=-2147483645;t=c[k>>2]|0;i=s;return t|0}if(!(c[h+308>>2]|0)){c[k>>2]=-2147483645;t=c[k>>2]|0;i=s;return t|0}c[h+3588>>2]=c[(c[n>>2]|0)+148>>2];c[p>>2]=(d[c[l>>2]>>0]|0)+((d[(c[l>>2]|0)+1>>0]|0)<<8);if(((c[p>>2]|0)==4099|(c[p>>2]|0)==4100|(c[p>>2]|0)==4100?(c[c[n>>2]>>2]|0)!=4:0)?(e[h+324+10>>1]|0|0)==256:0)b[h+324+10>>1]=1;b[h+324+4>>1]=258;if(c[(c[n>>2]|0)+48>>2]|0)a[h+324+24>>0]=-127;c[h+312>>2]=0;switch(c[c[n>>2]>>2]|0){case 3:case 2:case 1:{c[q>>2]=0;c[q>>2]=yd(h,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if((c[q>>2]|0)==0?c[h+3612>>2]|0:0){Tx(r|0,c[n>>2]|0,152)|0;if((c[h+3600>>2]|0)!=-1)c[r+12>>2]=c[h+3600>>2];c[r>>2]=5;c[h+388>>2]=1;c[r+52>>2]=((d[(c[h+3604>>2]|0)+4>>0]|0)<<8)+(d[(c[h+3604>>2]|0)+5>>0]|0);Od(h,c[h+3604>>2]|0,c[h+3612>>2]|0,r)|0;c[h+3612>>2]=0}c[k>>2]=c[q>>2];c[o>>2]=1;break}case 4:{c[k>>2]=Pd(h,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;c[o>>2]=1;break}case 5:{c[k>>2]=Od(h,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;c[o>>2]=1;break}default:{c[k>>2]=-2147483647;c[o>>2]=1}}t=c[k>>2]|0;i=s;return t|0}function yd(a,f,g,h){a=a|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;j=n+16|0;o=n+12|0;k=n+8|0;l=n+4|0;m=n;c[o>>2]=a;c[k>>2]=f;c[l>>2]=g;c[m>>2]=h;g=c[o>>2]|0;if(1==(c[g+304>>2]|0)){if((((((c[l>>2]|0)>>>0>4?1==(e[g+324+10>>1]|0|0):0)?0==(d[c[k>>2]>>0]|0|0):0)?0==(d[(c[k>>2]|0)+1>>0]|0|0):0)?0==(d[(c[k>>2]|0)+2>>0]|0|0):0)?1==(d[(c[k>>2]|0)+3>>0]|0|0):0)b[g+324+10>>1]=256;c[g+304>>2]=0}c[g+28>>2]=c[(c[m>>2]|0)+32>>2];c[g+32>>2]=c[(c[m>>2]|0)+44>>2];switch(c[c[m>>2]>>2]|0){case 1:{if(c[g+300>>2]|0){rb[c[(c[g>>2]|0)+20>>2]&127](g,g+40|0)|0;c[g+300>>2]=0}zd(g,c[(c[m>>2]|0)+8>>2]|0,(c[(c[m>>2]|0)+12>>2]|0)*45|0)|0;if(8==(c[g+396>>2]|0))Ad(g)|0;Bd(g,e[g+324+10>>1]|0,e[g+324+12>>1]|0,c[m>>2]|0)|0;c[g+24>>2]=c[(c[m>>2]|0)+28>>2];c[g+384>>2]=1;break}case 2:{if((c[(c[m>>2]|0)+28>>2]|0)>>>0>0?(c[g+24>>2]|0)!=(c[(c[m>>2]|0)+28>>2]|0):0){Bd(g,e[g+324+10>>1]|0,e[g+324+12>>1]|0,c[m>>2]|0)|0;c[g+24>>2]=c[(c[m>>2]|0)+28>>2]}zd(g,c[(c[m>>2]|0)+8>>2]|0,(c[(c[m>>2]|0)+12>>2]|0)*45|0)|0;break}case 3:{zd(g,c[(c[m>>2]|0)+8>>2]|0,(c[(c[m>>2]|0)+12>>2]|0)*45|0)|0;break}default:{}}if(c[g+312>>2]|0)pb[c[(c[g>>2]|0)+64>>2]&31](g,2,0,c[m>>2]|0)|0;switch(e[g+324+10>>1]|0|0){case 5:case 6:case 256:{c[j>>2]=Jd(g,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;o=c[j>>2]|0;i=n;return o|0}case 2:case 1:case 4:case 3:{c[j>>2]=Nd(g,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;o=c[j>>2]|0;i=n;return o|0}default:{c[j>>2]=-2147483647;o=c[j>>2]|0;i=n;return o|0}}return 0}function zd(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;g=i;i=i+16|0;j=g+8|0;f=g+4|0;h=g;c[j>>2]=b;c[f>>2]=d;c[h>>2]=e;d=c[j>>2]|0;e=d+312|0;j=c[e>>2]|0;c[e>>2]=j+1;a[(c[d+308>>2]|0)+j>>0]=0;j=d+312|0;e=c[j>>2]|0;c[j>>2]=e+1;a[(c[d+308>>2]|0)+e>>0]=0;e=d+312|0;j=c[e>>2]|0;c[e>>2]=j+1;a[(c[d+308>>2]|0)+j>>0]=1;j=d+312|0;e=c[j>>2]|0;c[j>>2]=e+1;a[(c[d+308>>2]|0)+e>>0]=-70;e=(64|(c[h>>2]|0)>>>26&56|4|(c[h>>2]|0)>>>27&3)&255;j=d+312|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=e;b=(c[h>>2]|0)>>>19&255;e=d+312|0;j=c[e>>2]|0;c[e>>2]=j+1;a[(c[d+308>>2]|0)+j>>0]=b;j=((c[h>>2]|0)>>>11&248|4|(c[h>>2]|0)>>>12&3)&255;b=d+312|0;e=c[b>>2]|0;c[b>>2]=e+1;a[(c[d+308>>2]|0)+e>>0]=j;e=(c[h>>2]|0)>>>4&255;j=d+312|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=e;b=(c[h>>2]<<4&240|4)&255;h=d+312|0;e=c[h>>2]|0;c[h>>2]=e+1;a[(c[d+308>>2]|0)+e>>0]=b;e=d+312|0;b=c[e>>2]|0;c[e>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=1;if(8==(c[d+396>>2]|0)){j=(c[d+392>>2]|0)>>>14&255;h=d+312|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=j;b=(c[d+392>>2]|0)>>>6&255;j=d+312|0;h=c[j>>2]|0;c[j>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=b;h=(c[d+392>>2]<<2|3)&255;b=d+312|0;j=c[b>>2]|0;c[b>>2]=j+1;a[(c[d+308>>2]|0)+j>>0]=h}else{h=d+312|0;j=c[h>>2]|0;c[h>>2]=j+1;a[(c[d+308>>2]|0)+j>>0]=0;j=d+312|0;h=c[j>>2]|0;c[j>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=0;h=d+312|0;j=c[h>>2]|0;c[h>>2]=j+1;a[(c[d+308>>2]|0)+j>>0]=3}j=d+312|0;h=c[j>>2]|0;c[j>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=-2;h=d+312|0;j=c[h>>2]|0;c[h>>2]=j+1;a[(c[d+308>>2]|0)+j>>0]=-1;j=d+312|0;h=c[j>>2]|0;c[j>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=-1;h=(c[f>>2]|0)>>>24&255;j=d+312|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=h;b=(c[f>>2]|0)>>>16&255;h=d+312|0;j=c[h>>2]|0;c[h>>2]=j+1;a[(c[d+308>>2]|0)+j>>0]=b;j=(c[f>>2]|0)>>>8&255;b=d+312|0;h=c[b>>2]|0;c[b>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=j;h=c[f>>2]&255;f=d+312|0;j=c[f>>2]|0;c[f>>2]=j+1;a[(c[d+308>>2]|0)+j>>0]=h;i=g;return 0}function Ad(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=i;i=i+32|0;e=d+12|0;g=d+8|0;c[e>>2]=b;e=c[e>>2]|0;c[d+16>>2]=0;c[g>>2]=4;c[d+4>>2]=0;c[d>>2]=8e5;f=e+312|0;h=c[f>>2]|0;c[f>>2]=h+1;a[(c[e+308>>2]|0)+h>>0]=0;h=e+312|0;f=c[h>>2]|0;c[h>>2]=f+1;a[(c[e+308>>2]|0)+f>>0]=0;f=e+312|0;h=c[f>>2]|0;c[f>>2]=h+1;a[(c[e+308>>2]|0)+h>>0]=1;h=e+312|0;f=c[h>>2]|0;c[h>>2]=f+1;a[(c[e+308>>2]|0)+f>>0]=-69;f=(6+((c[g>>2]|0)*3|0)|0)>>>8&255;h=e+312|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[e+308>>2]|0)+b>>0]=f;b=6+((c[g>>2]|0)*3|0)&255;g=e+312|0;f=c[g>>2]|0;c[g>>2]=f+1;a[(c[e+308>>2]|0)+f>>0]=b;f=(128|(c[e+392>>2]|0)>>>15&127)&255;b=e+312|0;g=c[b>>2]|0;c[b>>2]=g+1;a[(c[e+308>>2]|0)+g>>0]=f;g=(c[e+392>>2]|0)>>>7&255;f=e+312|0;b=c[f>>2]|0;c[f>>2]=b+1;a[(c[e+308>>2]|0)+b>>0]=g;b=(c[e+392>>2]<<1&254|1)&255;g=e+312|0;f=c[g>>2]|0;c[g>>2]=f+1;a[(c[e+308>>2]|0)+f>>0]=b;f=e+312|0;b=c[f>>2]|0;c[f>>2]=b+1;a[(c[e+308>>2]|0)+b>>0]=4;b=e+312|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[e+308>>2]|0)+f>>0]=-31;f=e+312|0;b=c[f>>2]|0;c[f>>2]=b+1;a[(c[e+308>>2]|0)+b>>0]=127;b=e+312|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[e+308>>2]|0)+f>>0]=-32;f=e+312|0;b=c[f>>2]|0;c[f>>2]=b+1;a[(c[e+308>>2]|0)+b>>0]=-32;b=e+312|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[e+308>>2]|0)+f>>0]=-128;f=e+312|0;b=c[f>>2]|0;c[f>>2]=b+1;a[(c[e+308>>2]|0)+b>>0]=-64;b=e+312|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[e+308>>2]|0)+f>>0]=-64;f=e+312|0;b=c[f>>2]|0;c[f>>2]=b+1;a[(c[e+308>>2]|0)+b>>0]=8;b=e+312|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[e+308>>2]|0)+f>>0]=-67;f=e+312|0;b=c[f>>2]|0;c[f>>2]=b+1;a[(c[e+308>>2]|0)+b>>0]=-32;b=e+312|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[e+308>>2]|0)+f>>0]=-128;f=e+312|0;b=c[f>>2]|0;c[f>>2]=b+1;a[(c[e+308>>2]|0)+b>>0]=-65;b=e+312|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[e+308>>2]|0)+f>>0]=-32;f=e+312|0;b=c[f>>2]|0;c[f>>2]=b+1;a[(c[e+308>>2]|0)+b>>0]=-128;i=d;return 0}function Bd(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;h=i;i=i+48|0;t=h+36|0;r=h+28|0;q=h+20|0;l=h+12|0;j=h+40|0;s=h+32|0;k=h+24|0;p=h+16|0;o=h+8|0;n=h+4|0;m=h;c[t>>2]=b;c[r>>2]=e;c[q>>2]=f;c[l>>2]=g;b=c[t>>2]|0;g=b+312|0;e=c[g>>2]|0;c[g>>2]=e+1;a[(c[b+308>>2]|0)+e>>0]=0;e=b+312|0;g=c[e>>2]|0;c[e>>2]=g+1;a[(c[b+308>>2]|0)+g>>0]=0;g=b+312|0;e=c[g>>2]|0;c[g>>2]=e+1;a[(c[b+308>>2]|0)+e>>0]=1;e=b+312|0;g=c[e>>2]|0;c[e>>2]=g+1;a[(c[b+308>>2]|0)+g>>0]=-68;g=b+312|0;e=c[g>>2]|0;c[g>>2]=e+1;a[(c[b+308>>2]|0)+e>>0]=0;e=b+312|0;g=c[e>>2]|0;c[e>>2]=g+1;a[(c[b+308>>2]|0)+g>>0]=0;c[j>>2]=(c[b+312>>2]|0)-2;g=b+312|0;e=c[g>>2]|0;c[g>>2]=e+1;a[(c[b+308>>2]|0)+e>>0]=-32;e=b+312|0;g=c[e>>2]|0;c[e>>2]=g+1;a[(c[b+308>>2]|0)+g>>0]=-1;g=b+312|0;e=c[g>>2]|0;c[g>>2]=e+1;a[(c[b+308>>2]|0)+e>>0]=0;e=b+312|0;g=c[e>>2]|0;c[e>>2]=g+1;a[(c[b+308>>2]|0)+g>>0]=0;c[s>>2]=(c[b+312>>2]|0)-2;Cd(b,c[l>>2]|0)|0;Dd(b,c[l>>2]|0)|0;a[(c[b+308>>2]|0)+(c[s>>2]|0)>>0]=((c[b+312>>2]|0)-2-(c[s>>2]|0)|0)>>>8;a[(c[b+308>>2]|0)+((c[s>>2]|0)+1)>>0]=(c[b+312>>2]|0)-2-(c[s>>2]|0);g=b+312|0;e=c[g>>2]|0;c[g>>2]=e+1;a[(c[b+308>>2]|0)+e>>0]=0;e=b+312|0;g=c[e>>2]|0;c[e>>2]=g+1;a[(c[b+308>>2]|0)+g>>0]=0;c[k>>2]=(c[b+312>>2]|0)-2;Ed(b,c[r>>2]|0,c[l>>2]|0)|0;c[p>>2]=c[q>>2];c[o>>2]=d[b+324+14>>0];c[n>>2]=c[b+324+16>>2];c[m>>2]=c[b+324+20>>2];mq(p,o,n,m,c[l>>2]|0)|0;Hd(b,c[p>>2]|0,c[o>>2]|0,c[n>>2]|0,c[m>>2]|0,c[l>>2]|0)|0;g=b+312|0;e=c[g>>2]|0;c[g>>2]=e+1;a[(c[b+308>>2]|0)+e>>0]=-67;e=b+312|0;g=c[e>>2]|0;c[e>>2]=g+1;a[(c[b+308>>2]|0)+g>>0]=-67;g=b+312|0;e=c[g>>2]|0;c[g>>2]=e+1;a[(c[b+308>>2]|0)+e>>0]=0;e=b+312|0;g=c[e>>2]|0;c[e>>2]=g+1;a[(c[b+308>>2]|0)+g>>0]=0;g=b+312|0;e=c[g>>2]|0;c[g>>2]=e+1;a[(c[b+308>>2]|0)+e>>0]=-65;e=b+312|0;g=c[e>>2]|0;c[e>>2]=g+1;a[(c[b+308>>2]|0)+g>>0]=-65;g=b+312|0;e=c[g>>2]|0;c[g>>2]=e+1;a[(c[b+308>>2]|0)+e>>0]=0;e=b+312|0;g=c[e>>2]|0;c[e>>2]=g+1;a[(c[b+308>>2]|0)+g>>0]=0;a[(c[b+308>>2]|0)+(c[k>>2]|0)>>0]=((c[b+312>>2]|0)-2-(c[k>>2]|0)|0)>>>8;a[(c[b+308>>2]|0)+((c[k>>2]|0)+1)>>0]=(c[b+312>>2]|0)-2-(c[k>>2]|0);g=b+312|0;e=c[g>>2]|0;c[g>>2]=e+1;a[(c[b+308>>2]|0)+e>>0]=0;e=b+312|0;g=c[e>>2]|0;c[e>>2]=g+1;a[(c[b+308>>2]|0)+g>>0]=0;g=b+312|0;e=c[g>>2]|0;c[g>>2]=e+1;a[(c[b+308>>2]|0)+e>>0]=0;e=b+312|0;g=c[e>>2]|0;c[e>>2]=g+1;a[(c[b+308>>2]|0)+g>>0]=0;a[(c[b+308>>2]|0)+(c[j>>2]|0)>>0]=((c[b+312>>2]|0)-2-(c[j>>2]|0)|0)>>>8;a[(c[b+308>>2]|0)+((c[j>>2]|0)+1)>>0]=(c[b+312>>2]|0)-2-(c[j>>2]|0);i=h;return 0}function Cd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+4|0;g=e;c[h>>2]=b;c[g>>2]=d;d=c[h>>2]|0;h=d+312|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=64;b=d+312|0;h=c[b>>2]|0;c[b>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=14;h=d+312|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=72;b=d+312|0;h=c[b>>2]|0;c[b>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=75;h=(c[(c[g>>2]|0)+32>>2]|0)>>>8&255;b=d+312|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[d+308>>2]|0)+f>>0]=h;f=c[(c[g>>2]|0)+32>>2]&255;h=d+312|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=f;b=(c[(c[g>>2]|0)+64>>2]|0)-2e3&255;f=d+312|0;h=c[f>>2]|0;c[f>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=b;h=(c[(c[g>>2]|0)+64+4>>2]<<4&240|(c[(c[g>>2]|0)+64+8>>2]|0)>>>1&15)&255;b=d+312|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[d+308>>2]|0)+f>>0]=h;f=(c[(c[g>>2]|0)+64+8>>2]<<7&128|c[(c[g>>2]|0)+64+12>>2]<<2&124|(c[(c[g>>2]|0)+64+16>>2]|0)>>>4&3)&255;h=d+312|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=f;b=(c[(c[g>>2]|0)+64+16>>2]<<4&240|(c[(c[g>>2]|0)+64+20>>2]|0)>>>2&15)&255;f=d+312|0;h=c[f>>2]|0;c[f>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=b;h=(c[(c[g>>2]|0)+64+20>>2]<<6&192|32|(c[(c[g>>2]|0)+64+24>>2]|0)>>>5&31)&255;b=d+312|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[d+308>>2]|0)+f>>0]=h;f=(c[(c[g>>2]|0)+64+24>>2]<<3&248|c[(c[g>>2]|0)+52>>2]&3)&255;h=d+312|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=f;b=c[(c[g>>2]|0)+40>>2]&255;g=d+312|0;f=c[g>>2]|0;c[g>>2]=f+1;a[(c[d+308>>2]|0)+f>>0]=b;f=d+312|0;b=c[f>>2]|0;c[f>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=-1;b=d+312|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[d+308>>2]|0)+f>>0]=-1;f=d+312|0;b=c[f>>2]|0;c[f>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=-1;i=e;return 0}function Dd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;e=h+8|0;j=h+4|0;f=h;g=h+12|0;c[j>>2]=b;c[f>>2]=d;d=c[j>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;j=c[e>>2]|0;i=h;return j|0}j=d+312|0;k=c[j>>2]|0;c[j>>2]=k+1;a[(c[d+308>>2]|0)+k>>0]=65;k=d+312|0;j=c[k>>2]|0;c[k>>2]=j+1;a[(c[d+308>>2]|0)+j>>0]=18;j=(c[(c[f>>2]|0)+36>>2]|0)>>>8&255;k=d+312|0;b=c[k>>2]|0;c[k>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=j;f=c[(c[f>>2]|0)+36>>2]&255;b=d+312|0;j=c[b>>2]|0;c[b>>2]=j+1;a[(c[d+308>>2]|0)+j>>0]=f;c[g>>2]=0;while(1){if((c[g>>2]|0)>=16)break;j=d+312|0;k=c[j>>2]|0;c[j>>2]=k+1;a[(c[d+308>>2]|0)+k>>0]=0;c[g>>2]=(c[g>>2]|0)+1}c[e>>2]=0;k=c[e>>2]|0;i=h;return k|0}function Ed(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;k=i;i=i+32|0;f=k+16|0;m=k+12|0;l=k+4|0;g=k;h=k+20|0;j=k+8|0;c[m>>2]=b;c[l>>2]=d;c[g>>2]=e;d=c[m>>2]|0;a:do switch(c[l>>2]|0){case 1:{m=d+312|0;l=c[m>>2]|0;c[m>>2]=l+1;a[(c[d+308>>2]|0)+l>>0]=-80;l=d+312|0;m=c[l>>2]|0;c[l>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=-32;m=d+312|0;l=c[m>>2]|0;c[m>>2]=l+1;a[(c[d+308>>2]|0)+l>>0]=0;l=d+312|0;m=c[l>>2]|0;c[l>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=0;c[h>>2]=(c[d+312>>2]|0)-2;Fd(d,c[g>>2]|0)|0;if(c[(c[g>>2]|0)+124>>2]|0)Gd(d,(c[g>>2]|0)+124|0)|0;a[(c[d+308>>2]|0)+(c[h>>2]|0)>>0]=((c[d+312>>2]|0)-2-(c[h>>2]|0)|0)>>>8;a[(c[d+308>>2]|0)+((c[h>>2]|0)+1)>>0]=(c[d+312>>2]|0)-2-(c[h>>2]|0);break}case 256:{if((c[(c[g>>2]|0)+148>>2]|0)==1){c[h>>2]=0;while(1){if((c[h>>2]|0)>=2)break;b=d+312|0;l=c[b>>2]|0;c[b>>2]=l+1;a[(c[d+308>>2]|0)+l>>0]=27;l=(224|c[h>>2])&255;b=d+312|0;m=c[b>>2]|0;c[b>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=l;m=d+312|0;l=c[m>>2]|0;c[m>>2]=l+1;a[(c[d+308>>2]|0)+l>>0]=0;l=d+312|0;m=c[l>>2]|0;c[l>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=0;c[j>>2]=(c[d+312>>2]|0)-2;Fd(d,c[g>>2]|0)|0;if(c[(c[g>>2]|0)+124>>2]|0)Gd(d,(c[g>>2]|0)+124|0)|0;a[(c[d+308>>2]|0)+(c[j>>2]|0)>>0]=((c[d+312>>2]|0)-2-(c[j>>2]|0)|0)>>>8;a[(c[d+308>>2]|0)+((c[j>>2]|0)+1)>>0]=(c[d+312>>2]|0)-2-(c[j>>2]|0);c[h>>2]=(c[h>>2]|0)+1}break a}l=d+312|0;m=c[l>>2]|0;c[l>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=27;if((c[(c[g>>2]|0)+144>>2]|0)>>>0<2){l=d+312|0;m=c[l>>2]|0;c[l>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=-32}else{c[h>>2]=0;while(1){if((c[h>>2]|0)>=2)break;l=(224|c[h>>2])&255;j=d+312|0;m=c[j>>2]|0;c[j>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=l;c[h>>2]=(c[h>>2]|0)+1}}m=d+312|0;l=c[m>>2]|0;c[m>>2]=l+1;a[(c[d+308>>2]|0)+l>>0]=0;l=d+312|0;m=c[l>>2]|0;c[l>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=0;c[h>>2]=(c[d+312>>2]|0)-2;Fd(d,c[g>>2]|0)|0;if(c[(c[g>>2]|0)+124>>2]|0)Gd(d,(c[g>>2]|0)+124|0)|0;a[(c[d+308>>2]|0)+(c[h>>2]|0)>>0]=((c[d+312>>2]|0)-2-(c[h>>2]|0)|0)>>>8;a[(c[d+308>>2]|0)+((c[h>>2]|0)+1)>>0]=(c[d+312>>2]|0)-2-(c[h>>2]|0);break}case 3:{m=d+312|0;l=c[m>>2]|0;c[m>>2]=l+1;a[(c[d+308>>2]|0)+l>>0]=16;l=d+312|0;m=c[l>>2]|0;c[l>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=-32;m=d+312|0;l=c[m>>2]|0;c[m>>2]=l+1;a[(c[d+308>>2]|0)+l>>0]=0;l=d+312|0;m=c[l>>2]|0;c[l>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=0;c[h>>2]=(c[d+312>>2]|0)-2;Fd(d,c[g>>2]|0)|0;if(c[(c[g>>2]|0)+124>>2]|0)Gd(d,(c[g>>2]|0)+124|0)|0;a[(c[d+308>>2]|0)+(c[h>>2]|0)>>0]=((c[d+312>>2]|0)-2-(c[h>>2]|0)|0)>>>8;a[(c[d+308>>2]|0)+((c[h>>2]|0)+1)>>0]=(c[d+312>>2]|0)-2-(c[h>>2]|0);break}case 4:{m=d+312|0;l=c[m>>2]|0;c[m>>2]=l+1;a[(c[d+308>>2]|0)+l>>0]=-79;l=d+312|0;m=c[l>>2]|0;c[l>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=-32;m=d+312|0;l=c[m>>2]|0;c[m>>2]=l+1;a[(c[d+308>>2]|0)+l>>0]=0;l=d+312|0;m=c[l>>2]|0;c[l>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=0;c[h>>2]=(c[d+312>>2]|0)-2;Fd(d,c[g>>2]|0)|0;if(c[(c[g>>2]|0)+124>>2]|0)Gd(d,(c[g>>2]|0)+124|0)|0;a[(c[d+308>>2]|0)+(c[h>>2]|0)>>0]=((c[d+312>>2]|0)-2-(c[h>>2]|0)|0)>>>8;a[(c[d+308>>2]|0)+((c[h>>2]|0)+1)>>0]=(c[d+312>>2]|0)-2-(c[h>>2]|0);break}case 2:{m=d+312|0;l=c[m>>2]|0;c[m>>2]=l+1;a[(c[d+308>>2]|0)+l>>0]=2;l=d+312|0;m=c[l>>2]|0;c[l>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=-32;m=d+312|0;l=c[m>>2]|0;c[m>>2]=l+1;a[(c[d+308>>2]|0)+l>>0]=0;l=d+312|0;m=c[l>>2]|0;c[l>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=0;c[h>>2]=(c[d+312>>2]|0)-2;Fd(d,c[g>>2]|0)|0;if(c[(c[g>>2]|0)+124>>2]|0)Gd(d,(c[g>>2]|0)+124|0)|0;a[(c[d+308>>2]|0)+(c[h>>2]|0)>>0]=((c[d+312>>2]|0)-2-(c[h>>2]|0)|0)>>>8;a[(c[d+308>>2]|0)+((c[h>>2]|0)+1)>>0]=(c[d+312>>2]|0)-2-(c[h>>2]|0);break}case 6:{m=d+312|0;l=c[m>>2]|0;c[m>>2]=l+1;a[(c[d+308>>2]|0)+l>>0]=-128;l=d+312|0;m=c[l>>2]|0;c[l>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=-32;m=d+312|0;l=c[m>>2]|0;c[m>>2]=l+1;a[(c[d+308>>2]|0)+l>>0]=0;l=d+312|0;m=c[l>>2]|0;c[l>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=0;c[h>>2]=(c[d+312>>2]|0)-2;Fd(d,c[g>>2]|0)|0;if(c[(c[g>>2]|0)+124>>2]|0)Gd(d,(c[g>>2]|0)+124|0)|0;a[(c[d+308>>2]|0)+(c[h>>2]|0)>>0]=((c[d+312>>2]|0)-2-(c[h>>2]|0)|0)>>>8;a[(c[d+308>>2]|0)+((c[h>>2]|0)+1)>>0]=(c[d+312>>2]|0)-2-(c[h>>2]|0);break}case 5:{m=d+312|0;l=c[m>>2]|0;c[m>>2]=l+1;a[(c[d+308>>2]|0)+l>>0]=36;l=d+312|0;m=c[l>>2]|0;c[l>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=-32;m=d+312|0;l=c[m>>2]|0;c[m>>2]=l+1;a[(c[d+308>>2]|0)+l>>0]=0;l=d+312|0;m=c[l>>2]|0;c[l>>2]=m+1;a[(c[d+308>>2]|0)+m>>0]=0;c[h>>2]=(c[d+312>>2]|0)-2;Fd(d,c[g>>2]|0)|0;if(c[(c[g>>2]|0)+124>>2]|0)Gd(d,(c[g>>2]|0)+124|0)|0;a[(c[d+308>>2]|0)+(c[h>>2]|0)>>0]=((c[d+312>>2]|0)-2-(c[h>>2]|0)|0)>>>8;a[(c[d+308>>2]|0)+((c[h>>2]|0)+1)>>0]=(c[d+312>>2]|0)-2-(c[h>>2]|0);break}default:{c[f>>2]=-2147483647;m=c[f>>2]|0;i=k;return m|0}}while(0);c[f>>2]=0;m=c[f>>2]|0;i=k;return m|0}function Fd(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,j=0,k=0;e=i;i=i+16|0;k=e+4|0;j=e;f=e+8|0;c[k>>2]=b;c[j>>2]=d;d=c[k>>2]|0;k=~~(+g[(c[j>>2]|0)+60>>2]*90.0)>>>0;c[f>>2]=k;c[f>>2]=(c[f>>2]|0)>>>0>144e4?-1:k;k=d+312|0;b=c[k>>2]|0;c[k>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=66;b=d+312|0;k=c[b>>2]|0;c[b>>2]=k+1;a[(c[d+308>>2]|0)+k>>0]=14;k=d+312|0;b=c[k>>2]|0;c[k>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=0;b=d+312|0;k=c[b>>2]|0;c[b>>2]=k+1;a[(c[d+308>>2]|0)+k>>0]=0;k=d+312|0;b=c[k>>2]|0;c[k>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=-96;b=d+312|0;k=c[b>>2]|0;c[b>>2]=k+1;a[(c[d+308>>2]|0)+k>>0]=33;k=(c[(c[j>>2]|0)+16>>2]|0)>>>8&255;b=d+312|0;h=c[b>>2]|0;c[b>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=k;h=c[(c[j>>2]|0)+16>>2]&255;k=d+312|0;b=c[k>>2]|0;c[k>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=h;b=(c[(c[j>>2]|0)+20>>2]|0)>>>8&255;h=d+312|0;k=c[h>>2]|0;c[h>>2]=k+1;a[(c[d+308>>2]|0)+k>>0]=b;k=c[(c[j>>2]|0)+20>>2]&255;b=d+312|0;h=c[b>>2]|0;c[b>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=k;h=((c[(c[j>>2]|0)+24>>2]&1)<<7|(c[(c[j>>2]|0)+28>>2]&3)<<5|(c[d+32>>2]&1)<<4|(c[(c[j>>2]|0)+48>>2]&1)<<3|2)&255;k=d+312|0;b=c[k>>2]|0;c[k>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=h;j=(28|c[(c[j>>2]|0)+56>>2]&3)&255;b=d+312|0;h=c[b>>2]|0;c[b>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=j;h=d+312|0;j=c[h>>2]|0;c[h>>2]=j+1;a[(c[d+308>>2]|0)+j>>0]=-1;j=(c[f>>2]|0)>>>15&255;h=d+312|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=j;b=(c[f>>2]|0)>>>7&255;j=d+312|0;h=c[j>>2]|0;c[j>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=b;f=(c[f>>2]<<1&254|1)&255;h=d+312|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=f;i=e;return 0}function Gd(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=g;c[h>>2]=b;c[f>>2]=d;d=c[h>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;h=c[e>>2]|0;i=g;return h|0}else{h=d+312|0;j=c[h>>2]|0;c[h>>2]=j+1;a[(c[d+308>>2]|0)+j>>0]=68;j=d+312|0;h=c[j>>2]|0;c[j>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=10;h=(c[(c[f>>2]|0)+4>>2]|0)>>>8&255;j=d+312|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=h;b=c[(c[f>>2]|0)+4>>2]&255;h=d+312|0;j=c[h>>2]|0;c[h>>2]=j+1;a[(c[d+308>>2]|0)+j>>0]=b;j=((c[(c[f>>2]|0)+8>>2]|0)>>>8|128)&255;b=d+312|0;h=c[b>>2]|0;c[b>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=j;h=c[(c[f>>2]|0)+8>>2]&255;j=d+312|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=h;b=(c[(c[f>>2]|0)+12>>2]|0)>>>8&255;h=d+312|0;j=c[h>>2]|0;c[h>>2]=j+1;a[(c[d+308>>2]|0)+j>>0]=b;j=c[(c[f>>2]|0)+12>>2]&255;b=d+312|0;h=c[b>>2]|0;c[b>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=j;h=(c[(c[f>>2]|0)+16>>2]|0)>>>8&255;j=d+312|0;b=c[j>>2]|0;c[j>>2]=b+1;a[(c[d+308>>2]|0)+b>>0]=h;f=c[(c[f>>2]|0)+16>>2]&255;b=d+312|0;h=c[b>>2]|0;c[b>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=f;h=d+312|0;f=c[h>>2]|0;c[h>>2]=f+1;a[(c[d+308>>2]|0)+f>>0]=-1;f=d+312|0;h=c[f>>2]|0;c[f>>2]=h+1;a[(c[d+308>>2]|0)+h>>0]=-1;c[e>>2]=0;h=c[e>>2]|0;i=g;return h|0}return 0}function Hd(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=i;i=i+32|0;j=p+24|0;r=p+20|0;q=p+16|0;k=p+12|0;l=p+8|0;m=p+4|0;n=p+28|0;c[r>>2]=b;c[q>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[p>>2]=h;g=c[r>>2]|0;e=c[q>>2]|0;a:do if((e|0)<28673){if((e|0)<8192)switch(e|0){case 4115:case 4114:case 4113:{o=3;break a}default:{o=10;break a}}if((e|0)<8193){switch(e|0){case 8192:break;default:{o=10;break a}}r=g+312|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g+308>>2]|0)+q>>0]=3;q=g+312|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[g+308>>2]|0)+r>>0]=-64;r=g+312|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g+308>>2]|0)+q>>0]=0;q=g+312|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[g+308>>2]|0)+r>>0]=0;c[n>>2]=(c[g+312>>2]|0)-2;Id(g,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;a[(c[g+308>>2]|0)+(c[n>>2]|0)>>0]=((c[g+312>>2]|0)-2-(c[n>>2]|0)|0)>>>8;a[(c[g+308>>2]|0)+((c[n>>2]|0)+1)>>0]=(c[g+312>>2]|0)-2-(c[n>>2]|0);break}if((e|0)>=28672)switch(e|0){case 28672:{o=9;break a}default:{o=10;break a}}switch(e|0){case 8193:break;default:{o=10;break a}}r=g+312|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g+308>>2]|0)+q>>0]=15;q=g+312|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[g+308>>2]|0)+r>>0]=-64;r=g+312|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g+308>>2]|0)+q>>0]=0;q=g+312|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[g+308>>2]|0)+r>>0]=0;c[n>>2]=(c[g+312>>2]|0)-2;Id(g,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;a[(c[g+308>>2]|0)+(c[n>>2]|0)>>0]=((c[g+312>>2]|0)-2-(c[n>>2]|0)|0)>>>8;a[(c[g+308>>2]|0)+((c[n>>2]|0)+1)>>0]=(c[g+312>>2]|0)-2-(c[n>>2]|0)}else switch(e|0){case 29217:{o=3;break a}case 28673:{o=9;break a}case 28944:{r=g+312|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g+308>>2]|0)+q>>0]=-111;q=g+312|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[g+308>>2]|0)+r>>0]=-64;r=g+312|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g+308>>2]|0)+q>>0]=0;q=g+312|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[g+308>>2]|0)+r>>0]=0;c[n>>2]=(c[g+312>>2]|0)-2;Id(g,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;a[(c[g+308>>2]|0)+(c[n>>2]|0)>>0]=((c[g+312>>2]|0)-2-(c[n>>2]|0)|0)>>>8;a[(c[g+308>>2]|0)+((c[n>>2]|0)+1)>>0]=(c[g+312>>2]|0)-2-(c[n>>2]|0);break a}case 28945:{r=g+312|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g+308>>2]|0)+q>>0]=-112;q=g+312|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[g+308>>2]|0)+r>>0]=-64;r=g+312|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g+308>>2]|0)+q>>0]=0;q=g+312|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[g+308>>2]|0)+r>>0]=0;c[n>>2]=(c[g+312>>2]|0)-2;Id(g,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;a[(c[g+308>>2]|0)+(c[n>>2]|0)>>0]=((c[g+312>>2]|0)-2-(c[n>>2]|0)|0)>>>8;a[(c[g+308>>2]|0)+((c[n>>2]|0)+1)>>0]=(c[g+312>>2]|0)-2-(c[n>>2]|0);break a}case 29281:case 29280:{r=g+312|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g+308>>2]|0)+q>>0]=-106;q=g+312|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[g+308>>2]|0)+r>>0]=-64;r=g+312|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g+308>>2]|0)+q>>0]=0;q=g+312|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[g+308>>2]|0)+r>>0]=0;c[n>>2]=(c[g+312>>2]|0)-2;Id(g,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;a[(c[g+308>>2]|0)+(c[n>>2]|0)>>0]=((c[g+312>>2]|0)-2-(c[n>>2]|0)|0)>>>8;a[(c[g+308>>2]|0)+((c[n>>2]|0)+1)>>0]=(c[g+312>>2]|0)-2-(c[n>>2]|0);break a}case 29282:{r=g+312|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g+308>>2]|0)+q>>0]=-104;q=g+312|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[g+308>>2]|0)+r>>0]=-64;r=g+312|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g+308>>2]|0)+q>>0]=0;q=g+312|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[g+308>>2]|0)+r>>0]=0;c[n>>2]=(c[g+312>>2]|0)-2;Id(g,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;a[(c[g+308>>2]|0)+(c[n>>2]|0)>>0]=((c[g+312>>2]|0)-2-(c[n>>2]|0)|0)>>>8;a[(c[g+308>>2]|0)+((c[n>>2]|0)+1)>>0]=(c[g+312>>2]|0)-2-(c[n>>2]|0);break a}default:{o=10;break a}}while(0);if((o|0)==3){r=g+312|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g+308>>2]|0)+q>>0]=-110;q=g+312|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[g+308>>2]|0)+r>>0]=-64;r=g+312|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g+308>>2]|0)+q>>0]=0;q=g+312|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[g+308>>2]|0)+r>>0]=0;c[n>>2]=(c[g+312>>2]|0)-2;Id(g,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;a[(c[g+308>>2]|0)+(c[n>>2]|0)>>0]=((c[g+312>>2]|0)-2-(c[n>>2]|0)|0)>>>8;a[(c[g+308>>2]|0)+((c[n>>2]|0)+1)>>0]=(c[g+312>>2]|0)-2-(c[n>>2]|0)}else if((o|0)==9){r=g+312|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g+308>>2]|0)+q>>0]=-100;q=g+312|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[g+308>>2]|0)+r>>0]=-64;r=g+312|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g+308>>2]|0)+q>>0]=0;q=g+312|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[g+308>>2]|0)+r>>0]=0;c[n>>2]=(c[g+312>>2]|0)-2;Id(g,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;a[(c[g+308>>2]|0)+(c[n>>2]|0)>>0]=((c[g+312>>2]|0)-2-(c[n>>2]|0)|0)>>>8;a[(c[g+308>>2]|0)+((c[n>>2]|0)+1)>>0]=(c[g+312>>2]|0)-2-(c[n>>2]|0)}else if((o|0)==10){c[j>>2]=-2147483647;r=c[j>>2]|0;i=p;return r|0}c[j>>2]=0;r=c[j>>2]|0;i=p;return r|0}function Id(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;g=i;i=i+16|0;l=g+12|0;k=g+8|0;j=g+4|0;h=g;c[l>>2]=b;c[k>>2]=d;c[j>>2]=e;c[h>>2]=f;e=c[l>>2]|0;b=e+312|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[e+308>>2]|0)+f>>0]=67;f=e+312|0;b=c[f>>2]|0;c[f>>2]=b+1;a[(c[e+308>>2]|0)+b>>0]=10;b=e+312|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[e+308>>2]|0)+f>>0]=0;f=e+312|0;b=c[f>>2]|0;c[f>>2]=b+1;a[(c[e+308>>2]|0)+b>>0]=0;b=(254|(c[k>>2]|0)-1&1)&255;f=e+312|0;d=c[f>>2]|0;c[f>>2]=d+1;a[(c[e+308>>2]|0)+d>>0]=b;d=(c[j>>2]|0)>>>14&255;b=e+312|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[e+308>>2]|0)+f>>0]=d;f=(c[j>>2]|0)>>>6&255;d=e+312|0;b=c[d>>2]|0;c[d>>2]=b+1;a[(c[e+308>>2]|0)+b>>0]=f;b=(c[j>>2]<<2&252|3)&255;f=e+312|0;d=c[f>>2]|0;c[f>>2]=d+1;a[(c[e+308>>2]|0)+d>>0]=b;d=(c[h>>2]|0)>>>14&255;b=e+312|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[e+308>>2]|0)+f>>0]=d;f=(c[h>>2]|0)>>>6&255;d=e+312|0;b=c[d>>2]|0;c[d>>2]=b+1;a[(c[e+308>>2]|0)+b>>0]=f;b=(c[h>>2]<<2&252|3)&255;f=e+312|0;d=c[f>>2]|0;c[f>>2]=d+1;a[(c[e+308>>2]|0)+d>>0]=b;d=e+312|0;b=c[d>>2]|0;c[d>>2]=b+1;a[(c[e+308>>2]|0)+b>>0]=-1;i=g;return 0}function Jd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+48|0;f=o+28|0;p=o+20|0;g=o+12|0;h=o+8|0;j=o+4|0;l=o+32|0;m=o+24|0;n=o+16|0;k=o;c[p>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;d=c[p>>2]|0;if((c[h>>2]|0)>>>0<4){c[f>>2]=-2147483644;p=c[f>>2]|0;i=o;return p|0}c[l>>2]=1;c[m>>2]=Kd(d,c[g>>2]|0,c[h>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+(c[m>>2]|0);do{c[n>>2]=Kd(d,(c[g>>2]|0)+4|0,(c[h>>2]|0)-4|0)|0;if((c[n>>2]|0)==-1){c[d+388>>2]=1;c[f>>2]=Ld(d,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;c[k>>2]=1}else{Ld(d,c[g>>2]|0,(c[n>>2]|0)+4|0,c[j>>2]|0,c[l>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+((c[n>>2]|0)+4);c[h>>2]=(c[h>>2]|0)-((c[n>>2]|0)+4);c[l>>2]=0;c[k>>2]=0}}while(!(c[k>>2]|0));p=c[f>>2]|0;i=o;return p|0}function Kd(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+16|0;f=l+8|0;g=l+4|0;k=l+20|0;j=l;c[l+12>>2]=a;c[f>>2]=b;c[g>>2]=e;if((c[g>>2]|0)>>>0<4){c[h>>2]=-1;k=c[h>>2]|0;i=l;return k|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=((c[g>>2]|0)-3|0)>>>0){f=5;break}if((((d[(c[f>>2]|0)+(c[k>>2]|0)>>0]|0|0)==0?(d[(c[f>>2]|0)+((c[k>>2]|0)+1)>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+2)>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+3)>>0]|0|0)==1:0){f=10;break}if(((d[(c[f>>2]|0)+(c[k>>2]|0)>>0]|0|0)==0?(d[(c[f>>2]|0)+((c[k>>2]|0)+1)>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+2)>>0]|0|0)==1:0){f=14;break}c[k>>2]=(c[k>>2]|0)+1}if((f|0)==5)c[j>>2]=2;else if((f|0)==10){c[h>>2]=c[k>>2];c[j>>2]=1}else if((f|0)==14){c[h>>2]=c[k>>2];c[j>>2]=1}if(((c[j>>2]|0)+-2|0)>>>0>=1){k=c[h>>2]|0;i=l;return k|0}c[h>>2]=-1;k=c[h>>2]|0;i=l;return k|0}function Ld(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=i;i=i+64|0;g=s+48|0;u=s+40|0;h=s+32|0;j=s+24|0;k=s+16|0;t=s+8|0;m=s+52|0;n=s+44|0;o=s+36|0;p=s+20|0;q=s+12|0;l=s;r=s+4|0;c[u>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[t>>2]=f;f=c[u>>2]|0;c[m>>2]=c[t>>2];c[n>>2]=1;c[o>>2]=0;c[s+28>>2]=c[f+20>>2];c[p>>2]=0;c[q>>2]=0;switch(c[c[k>>2]>>2]|0){case 3:case 2:case 1:{c[p>>2]=2;break}case 4:{c[p>>2]=3;break}case 5:{c[p>>2]=4;break}default:{c[g>>2]=-2147483647;c[l>>2]=1;u=c[g>>2]|0;i=s;return u|0}}do{if((c[j>>2]|0)>>>0<=(c[f+20>>2]|0)>>>0)c[o>>2]=1;c[q>>2]=c[f+388>>2]&c[o>>2];c[r>>2]=Md(f,c[h>>2]|0,c[j>>2]|0,c[c[k>>2]>>2]|0,(c[(c[k>>2]|0)+12>>2]|0)*45|0,c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[(c[k>>2]|0)+52>>2]|0,c[(c[k>>2]|0)+144>>2]|0)|0;pb[c[(c[f>>2]|0)+64>>2]&31](f,c[p>>2]|0,c[q>>2]|0,c[k>>2]|0)|0;c[h>>2]=(c[h>>2]|0)+(c[r>>2]|0);c[j>>2]=(c[j>>2]|0)-(c[r>>2]|0);c[m>>2]=0;c[n>>2]=0}while((c[j>>2]|0)!=0);c[g>>2]=0;c[l>>2]=1;u=c[g>>2]|0;i=s;return u|0}function Md(b,e,f,g,h,j,k,l,m,n){b=b|0;e=e|0;f=f|0;g=g|0;h=h|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,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;G=i;i=i+96|0;F=G;q=G+76|0;H=G+68|0;s=G+60|0;t=G+52|0;u=G+44|0;v=G+36|0;w=G+32|0;x=G+28|0;y=G+24|0;p=G+20|0;o=G+16|0;C=G+80|0;z=G+72|0;r=G+12|0;A=G+64|0;B=G+56|0;D=G+48|0;E=G+40|0;c[H>>2]=b;c[s>>2]=e;c[t>>2]=f;c[u>>2]=g;c[v>>2]=h;c[w>>2]=j;c[x>>2]=k;c[y>>2]=l;c[p>>2]=m;c[o>>2]=n;k=c[H>>2]|0;c[C>>2]=0;c[z>>2]=c[k+312>>2];if(0!=(c[s>>2]|0)?0!=(c[k+308>>2]|0):0){if((c[k+312>>2]|0)>>>0>(c[k+20>>2]|0)>>>0){c[q>>2]=-2147483645;c[r>>2]=1;H=c[q>>2]|0;i=G;return H|0}b=k+312|0;H=c[b>>2]|0;c[b>>2]=H+1;a[(c[k+308>>2]|0)+H>>0]=0;H=k+312|0;b=c[H>>2]|0;c[H>>2]=b+1;a[(c[k+308>>2]|0)+b>>0]=0;b=k+312|0;H=c[b>>2]|0;c[b>>2]=H+1;a[(c[k+308>>2]|0)+H>>0]=1;a:do switch(c[u>>2]|0){case 3:case 2:case 1:{if((c[k+3588>>2]|0)!=1){o=k+312|0;H=c[o>>2]|0;c[o>>2]=H+1;a[(c[k+308>>2]|0)+H>>0]=-32;break a}if(1==(c[o>>2]|0)){o=k+312|0;H=c[o>>2]|0;c[o>>2]=H+1;a[(c[k+308>>2]|0)+H>>0]=-32;break a}H=2==(c[o>>2]|0);o=k+312|0;j=c[o>>2]|0;c[o>>2]=j+1;j=(c[k+308>>2]|0)+j|0;if(H){a[j>>0]=-31;break a}else{a[j>>0]=-32;break a}}case 4:{o=k+312|0;H=c[o>>2]|0;c[o>>2]=H+1;a[(c[k+308>>2]|0)+H>>0]=-64;break}case 5:{o=k+312|0;H=c[o>>2]|0;c[o>>2]=H+1;a[(c[k+308>>2]|0)+H>>0]=-67;break}default:{c[q>>2]=-2147483647;c[r>>2]=1;H=c[q>>2]|0;i=G;return H|0}}while(0);j=k+312|0;H=c[j>>2]|0;c[j>>2]=H+1;a[(c[k+308>>2]|0)+H>>0]=0;H=k+312|0;j=c[H>>2]|0;c[H>>2]=j+1;a[(c[k+308>>2]|0)+j>>0]=0;c[A>>2]=(c[k+312>>2]|0)-2;j=128|(c[p>>2]&3)<<4;if((c[u>>2]|0)==3){u=(j|(c[x>>2]&1)<<2)&255;p=k+312|0;H=c[p>>2]|0;c[p>>2]=H+1;a[(c[k+308>>2]|0)+H>>0]=u}else{u=(j|8|(c[x>>2]&1)<<2)&255;p=k+312|0;H=c[p>>2]|0;c[p>>2]=H+1;a[(c[k+308>>2]|0)+H>>0]=u}H=c[w>>2]<<7&255;p=k+312|0;u=c[p>>2]|0;c[p>>2]=u+1;a[(c[k+308>>2]|0)+u>>0]=H;u=k+312|0;H=c[u>>2]|0;c[u>>2]=H+1;a[(c[k+308>>2]|0)+H>>0]=0;c[B>>2]=(c[k+312>>2]|0)-1;if(c[w>>2]|0){H=((c[v>>2]|0)>>>28&14|33)&255;u=k+312|0;w=c[u>>2]|0;c[u>>2]=w+1;a[(c[k+308>>2]|0)+w>>0]=H;w=(c[v>>2]|0)>>>21&255;H=k+312|0;u=c[H>>2]|0;c[H>>2]=u+1;a[(c[k+308>>2]|0)+u>>0]=w;u=((c[v>>2]|0)>>>13&254|1)&255;w=k+312|0;H=c[w>>2]|0;c[w>>2]=H+1;a[(c[k+308>>2]|0)+H>>0]=u;H=(c[v>>2]|0)>>>6&255;u=k+312|0;w=c[u>>2]|0;c[u>>2]=w+1;a[(c[k+308>>2]|0)+w>>0]=H;w=(c[v>>2]<<2&252|1)&255;v=k+312|0;H=c[v>>2]|0;c[v>>2]=H+1;a[(c[k+308>>2]|0)+H>>0]=w}c[z>>2]=(c[k+312>>2]|0)-(c[z>>2]|0);c[D>>2]=2;do if(((c[z>>2]|0)+(c[D>>2]|0)+(c[t>>2]|0)|0)>>>0<=(c[k+20>>2]|0)>>>0){if(((c[z>>2]|0)+(c[D>>2]|0)+(c[t>>2]|0)|0)==(c[k+20>>2]|0)){c[C>>2]=c[t>>2];c[y>>2]=1;break}if((c[z>>2]|0)+(c[D>>2]|0)+(c[t>>2]|0)&3|0)c[D>>2]=(c[D>>2]|0)+(4-((c[z>>2]|0)+(c[D>>2]|0)+(c[t>>2]|0)&3));if(((c[z>>2]|0)+(c[D>>2]|0)+(c[t>>2]|0)|0)>>>0>(c[k+20>>2]|0)>>>0){c[C>>2]=(c[k+20>>2]|0)-((c[z>>2]|0)+(c[D>>2]|0));c[y>>2]=0;break}else{c[C>>2]=c[t>>2];c[y>>2]=1;break}}else{c[C>>2]=(c[k+20>>2]|0)-((c[z>>2]|0)+(c[D>>2]|0));c[y>>2]=0}while(0);c[E>>2]=0;while(1){if((c[E>>2]|0)>>>0>=(c[D>>2]|0)>>>0)break;z=k+312|0;H=c[z>>2]|0;c[z>>2]=H+1;a[(c[k+308>>2]|0)+H>>0]=-1;if((c[E>>2]|0)==((c[D>>2]|0)-1|0)){if(c[x>>2]|0){H=(c[k+308>>2]|0)+((c[k+312>>2]|0)-1)|0;a[H>>0]=(d[H>>0]|0)&253}if(c[y>>2]|0){H=(c[k+308>>2]|0)+((c[k+312>>2]|0)-1)|0;a[H>>0]=(d[H>>0]|0)&254}if(c[y>>2]|0?c[k+388>>2]|0:0){H=(c[k+308>>2]|0)+((c[k+312>>2]|0)-1)|0;a[H>>0]=(d[H>>0]|0)&251;c[k+388>>2]=0}}c[E>>2]=(c[E>>2]|0)+1}c[r>>2]=3;a[(c[k+308>>2]|0)+(c[B>>2]|0)>>0]=(c[k+312>>2]|0)-1-(c[B>>2]|0);if(((c[k+312>>2]|0)+(c[C>>2]|0)|0)>>>0<=10240?(c[C>>2]|0)>>>0<=(c[t>>2]|0)>>>0:0){Tx((c[k+308>>2]|0)+(c[k+312>>2]|0)|0,c[s>>2]|0,c[C>>2]|0)|0;H=k+312|0;c[H>>2]=(c[H>>2]|0)+(c[C>>2]|0);a[(c[k+308>>2]|0)+(c[A>>2]|0)>>0]=((c[k+312>>2]|0)-2-(c[A>>2]|0)|0)>>>8;a[(c[k+308>>2]|0)+((c[A>>2]|0)+1)>>0]=(c[k+312>>2]|0)-2-(c[A>>2]|0);c[r>>2]=0}else{E=c[C>>2]|0;H=c[t>>2]|0;c[F>>2]=c[k+312>>2];c[F+4>>2]=E;c[F+8>>2]=H;jq(5818,F);c[q>>2]=c[t>>2];c[r>>2]=1}if(c[r>>2]|0){H=c[q>>2]|0;i=G;return H|0}c[q>>2]=c[C>>2];c[r>>2]=1;H=c[q>>2]|0;i=G;return H|0}c[q>>2]=-2147483645;c[r>>2]=1;H=c[q>>2]|0;i=G;return H|0}function Nd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;f=i;i=i+16|0;k=f+12|0;j=f+8|0;h=f+4|0;g=f;c[k>>2]=a;c[j>>2]=b;c[h>>2]=d;c[g>>2]=e;a=c[k>>2]|0;c[a+388>>2]=1;a=Ld(a,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0,1)|0;i=f;return a|0}function Od(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;n=o;g=o+24|0;p=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;m=o+28|0;l=o+4|0;c[p>>2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;e=c[p>>2]|0;if((c[j>>2]|0)>>>0<4){c[g>>2]=-2147483644;p=c[g>>2]|0;i=o;return p|0}c[m>>2]=(d[c[h>>2]>>0]|0)<<8|(d[(c[h>>2]|0)+1>>0]|0);switch(c[m>>2]|0){case 15:case 260:case 259:case 258:case 512:case 13:case 9:case 12:case 2049:case 257:case 4100:case 4098:case 11:case 4097:case 8:case 7:case 5:case 4:case 3:case 2:{c[e+388>>2]=1;c[n>>2]=c[m>>2];jq(5894,n);c[g>>2]=Ld(e,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,1)|0;c[l>>2]=1;break}default:{c[g>>2]=-2147483647;c[l>>2]=1}}p=c[g>>2]|0;i=o;return p|0}function Pd(b,f,g,h){b=b|0;f=f|0;g=g|0;h=h|0;var 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;u=i;i=i+64|0;j=u+40|0;x=u+32|0;k=u+24|0;l=u+16|0;m=u+8|0;v=u+44|0;o=u+36|0;p=u+28|0;w=u+20|0;n=u;q=u+12|0;s=u+48|0;r=u+4|0;c[x>>2]=b;c[k>>2]=f;c[l>>2]=g;c[m>>2]=h;f=c[x>>2]|0;c[v>>2]=e[f+324+12>>1];c[o>>2]=d[f+324+14>>0];c[p>>2]=c[f+324+16>>2];c[w>>2]=c[f+324+20>>2];mq(v,o,p,w,c[m>>2]|0)|0;if(8193==(c[v>>2]|0)?!(c[(c[m>>2]|0)+92+28>>2]|0):0){if((c[f+320>>2]|0)>>>0<((c[l>>2]|0)+7|0)>>>0?0!=(c[f+316>>2]|0):0){g=c[f+316>>2]|0;if(g|0)Jx(g);c[f+316>>2]=0}do if(!(c[f+316>>2]|0)){c[f+316>>2]=Ix((c[l>>2]|0)+1024|0)|0;if(!(c[f+316>>2]|0)){x=za(4)|0;c[x>>2]=-2147483646;Xa(x|0,152,0)}else{c[f+320>>2]=(c[l>>2]|0)+1024;break}}while(0);c[q>>2]=(c[l>>2]|0)+7;a[s>>0]=0;a[s+1>>0]=0;a[s+2>>0]=0;a[s+3>>0]=0;a[s+4>>0]=0;a[s+5>>0]=0;a[s+6>>0]=0;a[s>>0]=-1;a[s+1>>0]=-7;c[r>>2]=0;while(1){if((c[r>>2]|0)>=13)break;if((c[572+(c[r>>2]<<2)>>2]|0)==(c[p>>2]|0))break;c[r>>2]=(c[r>>2]|0)+1}if((c[r>>2]|0)>=13)c[r>>2]=8;a[s+2>>0]=64|c[r>>2]<<2;a[s+3>>0]=c[o>>2]<<6|(c[q>>2]|0)>>>11;a[s+4>>0]=(c[q>>2]|0)>>>3;a[s+5>>0]=(c[q>>2]&7)<<5|31;a[s+6>>0]=-4;x=c[f+316>>2]|0;a[x>>0]=a[s>>0]|0;a[x+1>>0]=a[s+1>>0]|0;a[x+2>>0]=a[s+2>>0]|0;a[x+3>>0]=a[s+3>>0]|0;a[x+4>>0]=a[s+4>>0]|0;a[x+5>>0]=a[s+5>>0]|0;a[x+6>>0]=a[s+6>>0]|0;Tx((c[f+316>>2]|0)+7|0,c[k>>2]|0,c[l>>2]|0)|0;if(c[f+384>>2]|0){c[f+388>>2]=1;c[j>>2]=Ld(f,c[f+316>>2]|0,c[q>>2]|0,c[m>>2]|0,1)|0;c[n>>2]=1}else c[n>>2]=0;if(c[n>>2]|0){x=c[j>>2]|0;i=u;return x|0}}else t=22;if((t|0)==22?c[f+384>>2]|0:0){c[f+388>>2]=1;c[j>>2]=Ld(f,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0,1)|0;c[n>>2]=1;x=c[j>>2]|0;i=u;return x|0}c[j>>2]=-2147483647;c[n>>2]=1;x=c[j>>2]|0;i=u;return x|0}function Qd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+16>>2]=2;if(c[a+36>>2]|0){Eh(c[a+36>>2]|0)|0;c[a+36>>2]=0}d=Rd(a)|0;i=b;return d|0}function Rd(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+312>>2]=0;c[a+364>>2]=0;c[a+300>>2]=0;i=b;return 0}function Sd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=c[h>>2]|0;c[a+4>>2]=1;c[a+372>>2]=c[g>>2];c[a+368>>2]=c[f>>2];c[a+380>>2]=0;c[a+376>>2]=0;c[a+12>>2]=0;c[a+8>>2]=0;i=e;return 0}function Td(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=c[h>>2]|0;c[a+4>>2]=0;c[a+372>>2]=0;c[a+368>>2]=0;c[a+380>>2]=c[g>>2];c[a+376>>2]=c[f>>2];c[a+12>>2]=0;c[a+8>>2]=0;i=e;return 0}function Ud(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=c[h>>2]|0;c[a+4>>2]=2;c[a+12>>2]=c[g>>2];c[a+8>>2]=c[f>>2];c[a+372>>2]=0;c[a+368>>2]=0;c[a+380>>2]=0;c[a+376>>2]=0;i=e;return 0}function Vd(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;j=o+20|0;p=o+16|0;k=o+12|0;h=o+8|0;l=o+4|0;m=o;n=o+24|0;c[p>>2]=b;c[k>>2]=d;c[h>>2]=e;c[l>>2]=f;c[m>>2]=g;d=c[p>>2]|0;if((c[m>>2]|0)>>>0<=0|(c[m>>2]|0)>>>0>65535){c[j>>2]=-2147483645;p=c[j>>2]|0;i=o;return p|0}if(!(c[l>>2]|0)){c[j>>2]=-2147483645;p=c[j>>2]|0;i=o;return p|0}if((c[h>>2]|0)==-1)c[d+3600>>2]=c[d+3592>>2];else c[d+3600>>2]=c[h>>2];do if((c[d+3608>>2]|0)>>>0<((c[m>>2]|0)+4|0)>>>0){if(c[d+3604>>2]|0){g=c[d+3604>>2]|0;if(g|0)Jx(g);c[d+3604>>2]=0}c[d+3604>>2]=Ix((c[m>>2]|0)+4|0)|0;if(!(c[d+3604>>2]|0)){p=za(4)|0;c[p>>2]=-2147483646;Xa(p|0,152,0)}else{c[d+3608>>2]=(c[m>>2]|0)+4;break}}while(0);p=c[k>>2]|0;a[n>>0]=p;a[n+1>>0]=p>>8;a[n+2>>0]=p>>16;a[n+3>>0]=p>>24;a[c[d+3604>>2]>>0]=a[n+1>>0]|0;a[(c[d+3604>>2]|0)+1>>0]=a[n>>0]|0;p=(c[m>>2]|0)>>>2;a[n>>0]=p;a[n+1>>0]=p>>8;a[n+2>>0]=p>>16;a[n+3>>0]=p>>24;a[(c[d+3604>>2]|0)+2>>0]=a[n+1>>0]|0;a[(c[d+3604>>2]|0)+3>>0]=a[n>>0]|0;c[d+3612>>2]=(c[m>>2]|0)+4;Tx((c[d+3604>>2]|0)+4|0,c[l>>2]|0,c[m>>2]|0)|0;c[j>>2]=0;p=c[j>>2]|0;i=o;return p|0}function Wd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+16>>2]=c[f>>2];i=d;return 0}function Xd(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return -2147483647}function Yd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+4|0;d=f;e=f+8|0;c[g>>2]=a;c[d>>2]=b;b=c[g>>2]|0;Tx(b+400|0,c[d>>2]|0,3184)|0;c[b+3584>>2]=1;c[e>>2]=0;while(1){if((c[e>>2]|0)>=3)break;if((c[(c[d>>2]|0)+((c[e>>2]|0)*1060|0)+24>>2]|0)==130)c[b+3588>>2]=1;c[e>>2]=(c[e>>2]|0)+1}i=f;return 0}function Zd(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+176|0;o=n+144|0;j=n+8|0;k=n+4|0;l=n;h=n+152|0;m=n+16|0;c[o>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;g=c[o>>2]|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;if(c[(c[l>>2]|0)+48>>2]|0)a[g+324+24>>0]=-127;do if(1==(c[g+4>>2]|0)){if(c[g+372>>2]|0){if(!(c[g+364>>2]|0)){c[h>>2]=g+324;c[h+4>>2]=40;c[h+8>>2]=1;mb[c[g+372>>2]&1](h,c[g+368>>2]|0);c[g+364>>2]=1}c[h>>2]=c[g+308>>2];c[h+4>>2]=c[g+312>>2];c[h+8>>2]=c[j>>2];mb[c[g+372>>2]&1](h,c[g+368>>2]|0)}}else{if(2!=(c[g+4>>2]|0)){if(!(c[g+380>>2]|0))break;if(!(c[g+364>>2]|0)){c[h>>2]=g+324;c[h+4>>2]=40;c[h+8>>2]=1;mb[c[g+380>>2]&1](h,c[g+376>>2]|0);c[g+364>>2]=1}c[h>>2]=c[g+308>>2];c[h+4>>2]=c[g+312>>2];c[h+8>>2]=c[j>>2];mb[c[g+380>>2]&1](h,c[g+376>>2]|0);break}e=m;f=e+128|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));if(c[g+12>>2]|0){if(!(c[g+364>>2]|0)){c[m>>2]=g+324;c[m+4>>2]=40;b[m+8>>1]=1;b[m+10>>1]=5;mb[c[g+12>>2]&1](m,c[g+8>>2]|0);c[g+364>>2]=1}c[m>>2]=c[g+308>>2];c[m+4>>2]=c[g+312>>2];b[m+8>>1]=c[j>>2];b[m+10>>1]=pq(c[c[l>>2]>>2]|0)|0;c[m+12>>2]=c[(c[l>>2]|0)+12>>2];b[m+20>>1]=c[k>>2];mb[c[g+12>>2]&1](m,c[g+8>>2]|0)}}while(0);if(!(c[g+36>>2]|0)){o=g+312|0;c[o>>2]=0;i=n;return 0}c[m>>2]=Bh(c[g+36>>2]|0,c[g+312>>2]|0,c[g+308>>2]|0)|0;o=g+312|0;c[o>>2]=0;i=n;return 0}function _d(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;b=c[d>>2]|0;nd(b);c[b>>2]=504;c[b+16>>2]=2;c[b+20>>2]=0;c[b+24>>2]=0;c[b+36>>2]=0;Ox(b+40|0,0,260)|0;c[b+300>>2]=0;c[b+304>>2]=1;c[b+308>>2]=0;c[b+312>>2]=0;a=b+324|0;d=a+40|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(d|0));c[b+364>>2]=0;c[b+4>>2]=1;c[b+8>>2]=0;c[b+12>>2]=0;c[b+372>>2]=0;c[b+368>>2]=0;c[b+380>>2]=0;c[b+376>>2]=0;c[b+316>>2]=0;c[b+320>>2]=0;c[b+384>>2]=0;c[b+28>>2]=0;c[b+32>>2]=1;c[b+388>>2]=0;c[b+392>>2]=16001;c[b+3588>>2]=-1;c[b+3592>>2]=-1;c[b+3596>>2]=0;c[b+3600>>2]=-1;c[b+3604>>2]=0;c[b+3612>>2]=0;c[b+3608>>2]=0;c[b+3584>>2]=0;Ox(b+400|0,0,3184)|0;c[b+396>>2]=c[e>>2];i=f;return}function $d(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=632;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;if(!(c[a+668>>2]|0)){zc(a);i=b;return}$w(c[a+668>>2]|0);c[a+668>>2]=0;zc(a);i=b;return}function ae(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;$d(a);lx(a);i=b;return}function be(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;b=g+4|0;f=g+12|0;e=g;c[b>>2]=a;b=c[b>>2]|0;nb[c[(c[b>>2]|0)+12>>2]&127](b)|0;c[f>>2]=b+288+8;c[c[f>>2]>>2]=3;a=b+288+212|0;if(9==(c[b+676>>2]|0)){c[a>>2]=1;c[(c[f>>2]|0)+20>>2]=0}else{c[a>>2]=0;a=c[f>>2]|0;c[a>>2]=c[a>>2]|4;c[(c[f>>2]|0)+20>>2]=13}c[(c[f>>2]|0)+16>>2]=189;c[(c[f>>2]|0)+24>>2]=1;c[(c[f>>2]|0)+24+8>>2]=7;c[(c[f>>2]|0)+24+12>>2]=0;eh(b+288|0)|0;c[b+288>>2]=Ih(c[b+288+4>>2]|0,8)|0;if(!(c[b+288>>2]|0)){c[d>>2]=-2147483646;c[e>>2]=1;f=c[d>>2]|0;i=g;return f|0}c[b+508+72>>2]=Ih(2097152,8)|0;if(!(c[b+508+72>>2]|0)){c[d>>2]=-2147483646;c[e>>2]=1;f=c[d>>2]|0;i=g;return f|0}c[b+508+76>>2]=2097152;if((fh(b+288|0,b+504|0)|0)!=1){c[d>>2]=-2147483646;c[e>>2]=1;f=c[d>>2]|0;i=g;return f|0}else{c[d>>2]=0;c[e>>2]=1;f=c[d>>2]|0;i=g;return f|0}return 0}function ce(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;if(c[a+20>>2]|0){Eh(c[a+20>>2]|0)|0;c[a+20>>2]=0}if(c[a+288>>2]|0){Jh(c[a+288>>2]|0);c[a+288>>2]=0}if(!(c[a+508+72>>2]|0)){i=b;return 0}Jh(c[a+508+72>>2]|0);c[a+508+72>>2]=0;i=b;return 0}function de(a,f,g){a=a|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+48|0;l=q+28|0;r=q+20|0;j=q+12|0;m=q+4|0;h=q+32|0;n=q;p=q+24|0;k=q+16|0;o=q+8|0;c[r>>2]=a;c[j>>2]=f;c[m>>2]=g;f=c[r>>2]|0;if(!(c[j>>2]|0)){c[l>>2]=-2147483645;r=c[l>>2]|0;i=q;return r|0}c[h>>2]=(d[c[j>>2]>>0]|0)+((d[(c[j>>2]|0)+1>>0]|0)<<8)+((d[(c[j>>2]|0)+2>>0]|0)<<16)+((d[(c[j>>2]|0)+3>>0]|0)<<24);g=c[h>>2]|0;a:do if((g|0)<1212894537)switch(g|0){case 1212894516:case 1212893236:{g=4;break}default:g=6}else{if((g|0)>=1213418804)switch(g|0){case 1213418804:{g=4;break a}default:{g=6;break a}}switch(g|0){case 1212894537:break;default:{g=6;break a}}Gh(f+592|0,c[j>>2]|0,40);b[f+592+8>>1]=3;g=7}while(0);if((g|0)==4){ee(f,c[j>>2]|0);g=7}else if((g|0)==6){c[l>>2]=-2147483647;c[n>>2]=1}if((g|0)==7){c[p>>2]=f+288+8;switch(e[f+592+10>>1]|0|0){case 3:{c[(c[p>>2]|0)+8>>2]=16;g=16;break}case 256:{c[(c[p>>2]|0)+8>>2]=27;g=16;break}case 1:{c[(c[p>>2]|0)+8>>2]=176;g=16;break}case 4:{c[(c[p>>2]|0)+8>>2]=177;g=16;break}case 2:{c[(c[p>>2]|0)+8>>2]=2;g=16;break}case 0:{c[(c[p>>2]|0)+8>>2]=0;g=c[p>>2]|0;c[g>>2]=c[g>>2]&-2;g=16;break}case 5:{c[(c[p>>2]|0)+8>>2]=36;g=16;break}default:{c[l>>2]=-2147483647;c[n>>2]=1}}if((g|0)==16){c[k>>2]=(c[p>>2]|0)+24+32;c[(c[k>>2]|0)+8>>2]=0;c[(c[k>>2]|0)+12>>2]=0;c[(c[k>>2]|0)+16>>2]=0;c[(c[k>>2]|0)+20>>2]=0;c[(c[k>>2]|0)+24>>2]=0;c[(c[k>>2]|0)+28>>2]=0;c[(c[k>>2]|0)+32>>2]=0;c[(c[k>>2]|0)+36>>2]=0;c[(c[k>>2]|0)+44>>2]=0;c[(c[k>>2]|0)+48>>2]=2;c[(c[k>>2]|0)+52>>2]=0;c[(c[k>>2]|0)+56>>2]=3600;c[(c[k>>2]|0)+60>>2]=0;c[(c[k>>2]|0)+64>>2]=1;c[(c[k>>2]|0)+76>>2]=0;g=e[f+592+12>>1]|0;b:do if((g|0)<28672){if((g|0)>=8192)switch(g|0){case 8192:{c[(c[p>>2]|0)+12>>2]=3;g=26;break b}case 8193:{c[(c[p>>2]|0)+12>>2]=15;g=26;break b}default:{g=25;break b}}if((g|0)<4113){switch(g|0){case 0:break;default:{g=25;break b}}c[(c[p>>2]|0)+12>>2]=0;g=c[p>>2]|0;c[g>>2]=c[g>>2]&-3;g=26;break}else{switch(g|0){case 4113:break;default:{g=25;break b}}c[(c[p>>2]|0)+12>>2]=146;g=26;break}}else switch(g|0){case 28945:{c[(c[p>>2]|0)+12>>2]=144;g=26;break b}case 28944:{c[(c[p>>2]|0)+12>>2]=145;g=26;break b}case 29217:{c[(c[p>>2]|0)+12>>2]=146;g=26;break b}case 28672:case 28673:{c[(c[p>>2]|0)+12>>2]=156;g=26;break b}default:{g=25;break b}}while(0);if((g|0)==25){c[l>>2]=-2147483647;c[n>>2]=1}else if((g|0)==26){c[o>>2]=(c[p>>2]|0)+24+128;c[(c[o>>2]|0)+8>>2]=(d[f+592+14>>0]|0)-1;c[(c[o>>2]|0)+16>>2]=c[f+592+20>>2];c[(c[o>>2]|0)+4>>2]=0;c[(c[o>>2]|0)+12>>2]=c[f+592+16>>2];do if(9!=(c[f+676>>2]|0))if((c[m>>2]|0)>>>0<1024|(c[m>>2]|0)>>>0>8192){c[f+288+8+4>>2]=5120;break}else{c[f+288+8+4>>2]=c[m>>2];break}else c[f+288+8+4>>2]=2097152;while(0);if((hh(c[f+504>>2]|0,f+288+8|0)|0)!=1){c[l>>2]=-2147483645;c[n>>2]=1}else{c[l>>2]=0;c[n>>2]=1}}}}r=c[l>>2]|0;i=q;return r|0}function ee(e,f){e=e|0;f=f|0;var g=0,h=0,j=0,k=0;h=i;i=i+16|0;k=h+4|0;g=h;j=h+8|0;c[k>>2]=e;c[g>>2]=f;f=c[k>>2]|0;c[f+592>>2]=1212894537;b[f+592+10>>1]=3;c[j>>2]=(d[c[g>>2]>>0]|0)+((d[(c[g>>2]|0)+1>>0]|0)<<8)+((d[(c[g>>2]|0)+2>>0]|0)<<16)+((d[(c[g>>2]|0)+3>>0]|0)<<24);e=f+592+10|0;if((c[j>>2]|0)==1212893236)b[e>>1]=1;else b[e>>1]=3;b[f+592+12>>1]=(d[(c[g>>2]|0)+32>>0]|0)+((d[(c[g>>2]|0)+33>>0]|0)<<8)+((d[(c[g>>2]|0)+34>>0]|0)<<16)+((d[(c[g>>2]|0)+35>>0]|0)<<24);a[f+592+14>>0]=(d[(c[g>>2]|0)+20>>0]|0)+((d[(c[g>>2]|0)+21>>0]|0)<<8)-4096;c[f+592+16>>2]=(d[(c[g>>2]|0)+24>>0]|0)+((d[(c[g>>2]|0)+25>>0]|0)<<8)+((d[(c[g>>2]|0)+26>>0]|0)<<16)+((d[(c[g>>2]|0)+27>>0]|0)<<24);a[f+592+15>>0]=(d[(c[g>>2]|0)+22>>0]|0)+((d[(c[g>>2]|0)+23>>0]|0)<<8);i=h;return}function fe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;g=c[d>>2]|0;i=f;return g|0}nb[c[(c[b>>2]|0)+32>>2]&127](b)|0;c[b+20>>2]=zh(c[e>>2]|0,2)|0;if(!(c[b+20>>2]|0)){g=za(4)|0;c[g>>2]=-2147483641;Xa(g|0,152,0)}c[b+16>>2]=0;c[d>>2]=0;g=c[d>>2]|0;i=f;return g|0}function ge(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;g=c[d>>2]|0;i=f;return g|0}else{fw(b+24|0,c[e>>2]|0)|0;c[b+284>>2]=1;c[d>>2]=0;g=c[d>>2]|0;i=f;return g|0}return 0}function he(a,f,g,h){a=a|0;f=f|0;g=g|0;h=h|0;var 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;v=i;i=i+48|0;r=v+40|0;w=v+32|0;j=v+24|0;k=v+16|0;s=v+8|0;l=v+44|0;o=v+36|0;n=v+28|0;p=v+20|0;m=v+12|0;t=v;q=v+4|0;c[w>>2]=a;c[j>>2]=f;c[k>>2]=g;c[s>>2]=h;f=c[w>>2]|0;c[l>>2]=0;if(c[f+284>>2]|0?1==(c[c[s>>2]>>2]|0):0){rb[c[(c[f>>2]|0)+20>>2]&127](f,f+24|0)|0;c[f+284>>2]=0}if((176==(c[f+288+8+8>>2]|0)?(c[f+664>>2]|0)==0:0)?(c[c[s>>2]>>2]|0)==1:0){do if(0==(d[c[j>>2]>>0]|0|0)?0==(d[(c[j>>2]|0)+1>>0]|0|0):0){if(1!=(d[(c[j>>2]|0)+2>>0]|0|0)){if(d[(c[j>>2]|0)+2>>0]|0)break;if(1!=(d[(c[j>>2]|0)+3>>0]|0|0))break}c[f+288+8+8>>2]=27;b[f+592+10>>1]=256}while(0);c[f+664>>2]=1}c[o>>2]=e[f+592+12>>1];c[n>>2]=d[f+592+14>>0];c[p>>2]=c[f+592+16>>2];c[m>>2]=c[f+592+20>>2];mq(o,n,p,m,c[s>>2]|0)|0;if((15==(c[f+288+8+12>>2]|0)?4==(c[c[s>>2]>>2]|0):0)?(c[(c[s>>2]|0)+92+28>>2]|0)==0:0){ie(f,c[j>>2]|0,c[k>>2]|0,c[p>>2]|0,c[n>>2]|0)|0;c[j>>2]=c[f+668>>2];c[k>>2]=(c[k>>2]|0)+7}do if(9==(c[f+676>>2]|0)?27==(c[f+288+8+8>>2]|0):0){if((1!=(c[c[s>>2]>>2]|0)?2!=(c[c[s>>2]>>2]|0):0)?3!=(c[c[s>>2]>>2]|0):0)break;c[l>>2]=je(f,c[j>>2]|0,c[k>>2]|0)|0;if(!(c[l>>2]|0))c[k>>2]=(c[k>>2]|0)+8}while(0);c[l>>2]=ke(f,c[s>>2]|0)|0;if(c[l>>2]|0){c[r>>2]=c[l>>2];c[t>>2]=1;w=c[r>>2]|0;i=v;return w|0}c[f+508+24>>2]=c[(c[s>>2]|0)+36>>2];c[f+508+28>>2]=c[(c[s>>2]|0)+40>>2];c[f+508+32>>2]=c[(c[s>>2]|0)+32>>2];c[f+508+4>>2]=c[(c[s>>2]|0)+8>>2];c[f+508+64>>2]=c[j>>2];c[f+508+68>>2]=c[k>>2];c[q>>2]=1;c[q>>2]=gh(c[f+504>>2]|0,f+508|0)|0;g=c[q>>2]|0;a:do if((g|0)>=-2147483647)if((g|0)<1){switch(g|0){case -2147483647:break;default:{u=30;break a}}c[r>>2]=-2147483643;c[t>>2]=1;break}else{switch(g|0){case 1:break;default:{u=30;break a}}c[r>>2]=me(f,c[s>>2]|0)|0;c[t>>2]=1;break}else{switch(g|0){case -2147483648:break;default:{u=30;break a}}c[r>>2]=-2147483645;c[t>>2]=1}while(0);if((u|0)==30){c[r>>2]=-2147483647;c[t>>2]=1}w=c[r>>2]|0;i=v;return w|0}function ie(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+48|0;h=q+24|0;r=q+20|0;j=q+12|0;k=q+8|0;l=q+4|0;m=q;n=q+28|0;p=q+32|0;o=q+16|0;c[r>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;g=c[r>>2]|0;do if(c[g+668>>2]|0){if((c[k>>2]|0)>>>0>1017){c[g+668>>2]=ax(c[g+668>>2]|0,(c[k>>2]|0)+1024|0)|0;if(c[g+668>>2]|0){c[g+672>>2]=(c[k>>2]|0)+1024;break}c[h>>2]=-2147483646;r=c[h>>2]|0;i=q;return r|0}}else{c[g+668>>2]=_w(1024)|0;if(c[g+668>>2]|0){c[g+672>>2]=1024;break}c[h>>2]=-2147483646;r=c[h>>2]|0;i=q;return r|0}while(0);c[n>>2]=(c[k>>2]|0)+7;a[p>>0]=0;a[p+1>>0]=0;a[p+2>>0]=0;a[p+3>>0]=0;a[p+4>>0]=0;a[p+5>>0]=0;a[p+6>>0]=0;a[p>>0]=-1;a[p+1>>0]=-7;c[o>>2]=0;while(1){if((c[o>>2]|0)>=13)break;if((c[696+(c[o>>2]<<2)>>2]|0)==(c[l>>2]|0))break;c[o>>2]=(c[o>>2]|0)+1}if((c[o>>2]|0)>=13)c[o>>2]=8;a[p+2>>0]=64|c[o>>2]<<2;a[p+3>>0]=c[m>>2]<<6|(c[n>>2]|0)>>>11;a[p+4>>0]=(c[n>>2]|0)>>>3;a[p+5>>0]=(c[n>>2]&7)<<5|31;a[p+6>>0]=-4;r=c[g+668>>2]|0;a[r>>0]=a[p>>0]|0;a[r+1>>0]=a[p+1>>0]|0;a[r+2>>0]=a[p+2>>0]|0;a[r+3>>0]=a[p+3>>0]|0;a[r+4>>0]=a[p+4>>0]|0;a[r+5>>0]=a[p+5>>0]|0;a[r+6>>0]=a[p+6>>0]|0;Tx((c[g+668>>2]|0)+7|0,c[j>>2]|0,c[k>>2]|0)|0;c[h>>2]=0;r=c[h>>2]|0;i=q;return r|0}function je(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;g=m+16|0;h=m+8|0;j=m+4|0;l=m+20|0;k=m;c[m+12>>2]=b;c[h>>2]=e;c[j>>2]=f;c[l>>2]=(c[j>>2]|0)-1;while(1){f=c[l>>2]|0;if(d[(c[h>>2]|0)+(c[l>>2]|0)>>0]|0|0)break;c[l>>2]=f+-1}c[l>>2]=f+1;if(((c[l>>2]|0)+8|0)>>>0>2097152){c[g>>2]=-2147483643;c[k>>2]=1;l=c[g>>2]|0;i=m;return l|0}do if(0==(d[c[h>>2]>>0]|0|0)?0==(d[(c[h>>2]|0)+1>>0]|0|0):0){if(0!=(d[(c[h>>2]|0)+2>>0]|0|0)?1!=(d[(c[h>>2]|0)+2>>0]|0|0):0)break;if(9!=(d[(c[h>>2]|0)+3>>0]|0|0)?9!=(d[(c[h>>2]|0)+4>>0]|0|0):0){Ux((c[h>>2]|0)+8|0,c[h>>2]|0,c[j>>2]|0)|0;a[c[h>>2]>>0]=0;a[(c[h>>2]|0)+1>>0]=0;a[(c[h>>2]|0)+2>>0]=0;a[(c[h>>2]|0)+3>>0]=1;a[(c[h>>2]|0)+4>>0]=9;a[(c[h>>2]|0)+5>>0]=48;a[(c[h>>2]|0)+6>>0]=0;a[(c[h>>2]|0)+7>>0]=0;c[j>>2]=(c[j>>2]|0)+8;c[g>>2]=0;c[k>>2]=1;l=c[g>>2]|0;i=m;return l|0}}while(0);c[g>>2]=-2147483393;c[k>>2]=1;l=c[g>>2]|0;i=m;return l|0}function ke(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;d=k+16|0;l=k+8|0;e=k+4|0;j=k+20|0;h=k+12|0;f=k;c[l>>2]=a;c[e>>2]=b;b=c[l>>2]|0;if((c[(c[e>>2]|0)+28>>2]|0)>>>0>=3){c[d>>2]=-2147483644;l=c[d>>2]|0;i=k;return l|0}le(b,c[e>>2]|0);c[b+508+8>>2]=(c[c[e>>2]>>2]|0)==1?1:0;switch(c[c[e>>2]>>2]|0){case 1:{c[b+508>>2]=3;c[b+508+12>>2]=c[b+508+16>>2];c[j>>2]=b+288+8+24+32;c[(c[j>>2]|0)+24>>2]=c[(c[e>>2]|0)+16>>2];c[(c[j>>2]|0)+28>>2]=c[(c[e>>2]|0)+20>>2];c[(c[j>>2]|0)+32>>2]=c[(c[e>>2]|0)+24>>2];c[(c[j>>2]|0)+36>>2]=c[(c[e>>2]|0)+28>>2];c[(c[j>>2]|0)+44>>2]=c[(c[e>>2]|0)+48>>2];if(256==(c[(c[e>>2]|0)+32>>2]|0))c[(c[j>>2]|0)+72>>2]=c[(c[e>>2]|0)+56>>2];else c[(c[j>>2]|0)+72>>2]=3;if((c[(c[e>>2]|0)+32>>2]|0)>>>0>1)c[(c[j>>2]|0)+40>>2]=c[(c[e>>2]|0)+44>>2];else c[(c[j>>2]|0)+40>>2]=1;c[(c[j>>2]|0)+56>>2]=~~(+g[(c[e>>2]|0)+60>>2]*45.0*2.0)>>>0;c[h>>2]=b+288+8+24+128;if(c[(c[e>>2]|0)+92+8>>2]|0)c[c[h>>2]>>2]=c[(c[e>>2]|0)+92+8>>2];if(c[(c[e>>2]|0)+92+12>>2]|0)c[(c[h>>2]|0)+8>>2]=(c[(c[e>>2]|0)+92+12>>2]|0)-1;if(c[(c[e>>2]|0)+92+16>>2]|0)c[(c[h>>2]|0)+12>>2]=c[(c[e>>2]|0)+92+16>>2];if(c[(c[e>>2]|0)+92+20>>2]|0)c[(c[h>>2]|0)+16>>2]=c[(c[e>>2]|0)+92+20>>2];if((hh(c[b+504>>2]|0,b+288+8|0)|0)!=1){c[d>>2]=-2147483645;c[f>>2]=1}else c[f>>2]=2;if(((c[f>>2]|0)+-1|0)>>>0<1){l=c[d>>2]|0;i=k;return l|0}break}case 2:{c[b+508>>2]=1;c[b+508+12>>2]=c[b+508+16>>2];break}case 3:{c[b+508>>2]=0;c[b+508+12>>2]=~~(+((c[b+508+16>>2]|0)>>>0)-+g[(c[e>>2]|0)+60>>2]*45.0)>>>0;break}case 4:{c[b+508>>2]=4;c[b+508+12>>2]=c[b+508+16>>2];break}case 5:{c[b+508>>2]=5;c[b+508+12>>2]=c[b+508+16>>2];break}default:{c[d>>2]=-2147483647;l=c[d>>2]|0;i=k;return l|0}}c[b+508+4>>2]=c[(c[e>>2]|0)+8>>2];c[b+508+20>>2]=0;c[j>>2]=b+508+36;c[h>>2]=(c[e>>2]|0)+64;c[(c[j>>2]|0)+24>>2]=c[(c[h>>2]|0)+24>>2];c[(c[j>>2]|0)+20>>2]=c[(c[h>>2]|0)+20>>2];c[(c[j>>2]|0)+16>>2]=c[(c[h>>2]|0)+16>>2];c[(c[j>>2]|0)+12>>2]=c[(c[h>>2]|0)+12>>2];c[(c[j>>2]|0)+8>>2]=c[(c[h>>2]|0)+8>>2];c[(c[j>>2]|0)+4>>2]=c[(c[h>>2]|0)+4>>2];c[c[j>>2]>>2]=c[c[h>>2]>>2];c[d>>2]=0;c[f>>2]=1;l=c[d>>2]|0;i=k;return l|0}function le(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;j=h+16|0;d=h+8|0;f=h;e=h+12|0;c[j>>2]=a;c[d>>2]=b;b=c[j>>2]|0;c[e>>2]=c[(c[d>>2]|0)+12>>2];if(c[b+632>>2]|0){c[b+636>>2]=c[(c[d>>2]|0)+12>>2];j=b+640|0;c[j>>2]=(c[j>>2]|0)-4500;c[b+632>>2]=0}if((c[e>>2]|0)>>>0>(c[b+636>>2]|0)>>>0){j=f;c[j>>2]=(c[e>>2]|0)-(c[b+636>>2]|0);c[j+4>>2]=0}else{j=f;c[j>>2]=(c[b+636>>2]|0)-(c[e>>2]|0);c[j+4>>2]=0}j=f;d=c[j+4>>2]|0;if(d>>>0>0|(d|0)==0&(c[j>>2]|0)>>>0>=2147483648){d=f;d=Nx(0,1,c[d>>2]|0,c[d+4>>2]|0)|0;j=f;c[j>>2]=d;c[j+4>>2]=D}d=f;d=Zx(c[d>>2]|0,c[d+4>>2]|0,45e3,0)|0;d=_x(d|0,D|0,1e3,0)|0;j=f;c[j>>2]=d;c[j+4>>2]=D;if(!((c[e>>2]|0)>>>0>=(c[b+636>>2]|0)>>>0?0>0|(0==0?((c[e>>2]|0)-(c[b+636>>2]|0)|0)>>>0>=2147483648:0):0))g=10;do if((g|0)==10){if((c[e>>2]|0)>>>0<=(c[b+636>>2]|0)>>>0?0<0|(0==0?((c[b+636>>2]|0)-(c[e>>2]|0)|0)>>>0<2147483648:0):0)break;g=b+508+16|0;c[g>>2]=(c[g>>2]|0)+(c[f>>2]|0);g=c[e>>2]|0;j=b+636|0;c[j>>2]=g;i=h;return}while(0);g=b+508+16|0;c[g>>2]=(c[g>>2]|0)-(c[f>>2]|0);g=c[e>>2]|0;j=b+636|0;c[j>>2]=g;i=h;return}function me(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;f=k+12|0;l=k+8|0;g=k+4|0;j=k+16|0;h=k;c[l>>2]=d;c[g>>2]=e;d=c[l>>2]|0;c[j>>2]=0;switch(c[c[g>>2]>>2]|0){case 3:case 2:case 1:{c[j>>2]=2;break}case 4:{c[j>>2]=3;break}case 5:{c[j>>2]=4;break}default:{c[f>>2]=-2147483647;c[h>>2]=1;l=c[f>>2]|0;i=k;return l|0}}if(!(c[d+644>>2]|0)){b[d+592+4>>1]=258;e=d+592+24|0;if(c[(c[g>>2]|0)+48>>2]|0)a[e>>0]=-127;else a[e>>0]=0;ne(d,d+592|0,40,1,c[g>>2]|0);c[d+644>>2]=1}ne(d,c[d+508+72>>2]|0,c[d+508+80>>2]|0,c[j>>2]|0,c[g>>2]|0);c[f>>2]=0;c[h>>2]=1;l=c[f>>2]|0;i=k;return l|0}function ne(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+160|0;o=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;m=n+24|0;c[o>>2]=a;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;f=c[o>>2]|0;do if(1==(c[f+4>>2]|0)){if(c[f+656>>2]|0){c[m>>2]=c[h>>2];c[m+4>>2]=c[j>>2];c[m+8>>2]=c[k>>2];mb[c[f+656>>2]&1](m,c[f+660>>2]|0)}}else{if(2!=(c[f+4>>2]|0)){if(!(c[f+648>>2]|0))break;c[m>>2]=c[h>>2];c[m+4>>2]=c[j>>2];c[m+8>>2]=c[k>>2];mb[c[f+648>>2]&1](m,c[f+652>>2]|0);break}e=m;d=e+128|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(d|0));if(c[f+12>>2]|0){c[m>>2]=c[h>>2];c[m+4>>2]=c[j>>2];b[m+8>>1]=c[k>>2];if(1!=(c[k>>2]|0)){b[m+10>>1]=pq(c[c[l>>2]>>2]|0)|0;c[m+12>>2]=c[(c[l>>2]|0)+12>>2];b[m+20>>1]=1}else b[m+10>>1]=5;mb[c[f+12>>2]&1](m,c[f+8>>2]|0)}}while(0);if(!(c[f+20>>2]|0)){i=n;return}Bh(c[f+20>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=n;return}function oe(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+16>>2]=2;if(c[a+20>>2]|0){Eh(c[a+20>>2]|0)|0;c[a+20>>2]=0}d=pe(a)|0;i=b;return d|0}function pe(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+632>>2]=1;c[a+640>>2]=0;c[a+664>>2]=0;c[a+644>>2]=0;c[a+284>>2]=0;c[a+508+16>>2]=0;i=b;return 0}function qe(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;b=c[j>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;j=c[e>>2]|0;i=h;return j|0}else{c[b+4>>2]=1;c[b+656>>2]=c[f>>2];c[b+660>>2]=c[g>>2];c[b+648>>2]=0;c[b+652>>2]=0;c[b+12>>2]=0;c[b+8>>2]=0;c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function re(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;b=c[j>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;j=c[e>>2]|0;i=h;return j|0}else{c[b+4>>2]=0;c[b+648>>2]=c[f>>2];c[b+652>>2]=c[g>>2];c[b+656>>2]=0;c[b+660>>2]=0;c[b+12>>2]=0;c[b+8>>2]=0;c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function se(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=c[h>>2]|0;c[a+4>>2]=2;c[a+12>>2]=c[g>>2];c[a+8>>2]=c[f>>2];c[a+656>>2]=0;c[a+660>>2]=0;c[a+648>>2]=0;c[a+652>>2]=0;i=e;return 0}function te(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+16>>2]=c[f>>2];i=d;return 0}function ue(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return -2147483647}function ve(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=c[f>>2]|0;nd(a);c[a>>2]=632;c[a+16>>2]=2;c[a+20>>2]=0;c[a+284>>2]=0;Fh(a+24|0,260);c[a+504>>2]=0;Fh(a+288|0,216);Fh(a+508|0,84);Fh(a+592|0,40);c[a+632>>2]=1;c[a+636>>2]=0;c[a+640>>2]=0;c[a+644>>2]=0;c[a+4>>2]=1;c[a+8>>2]=0;c[a+12>>2]=0;c[a+648>>2]=0;c[a+652>>2]=0;c[a+656>>2]=0;c[a+660>>2]=0;c[a+664>>2]=0;c[a+668>>2]=0;c[a+672>>2]=0;c[a+676>>2]=c[e>>2];i=d;return}function we(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=756;xe(a)|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;zc(a);i=b;return}function xe(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;b=c[b>>2]|0;if(c[b+504>>2]|0){Ci(c[b+504>>2]|0)|0;c[b+504>>2]=0;c[b+508>>2]=0}if(c[b+20>>2]|0){Eh(c[b+20>>2]|0)|0;c[b+20>>2]=0}if(c[b+344+8>>2]|0){a=c[b+344+8>>2]|0;if(a|0)Jx(a);c[b+344+8>>2]=0}if(!(c[b+524>>2]|0)){b=b+532|0;c[b>>2]=0;i=d;return 0}a=c[b+524>>2]|0;if(a|0)Jx(a);c[b+524>>2]=0;b=b+532|0;c[b>>2]=0;i=d;return 0}function ye(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;we(a);lx(a);i=b;return}function ze(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[a+512>>2]=Ix(2097152)|0;if(!(c[a+512>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}else{c[b>>2]=0;i=d;return c[b>>2]|0}return 0}function Ae(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;a=c[b>>2]|0;if(!(c[a+512>>2]|0)){i=d;return 0}b=c[a+512>>2]|0;if(b|0)Jx(b);c[a+512>>2]=0;i=d;return 0}function Be(b,d,f){b=b|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0;k=i;i=i+16|0;j=k+12|0;g=k+8|0;h=k+4|0;c[g>>2]=b;c[h>>2]=d;c[k>>2]=f;g=c[g>>2]|0;if(!(c[h>>2]|0)){c[j>>2]=-2147483645;j=c[j>>2]|0;i=k;return j|0}f=c[c[h>>2]>>2]|0;if((f|0)<1213418804)switch(f|0){case 1212893236:{f=4;break}default:f=5}else switch(f|0){case 1213418804:{f=4;break}default:f=5}if((f|0)==4)Ce(g,c[h>>2]|0)|0;else if((f|0)==5){b=g+304|0;f=c[h>>2]|0;d=b+40|0;do{a[b>>0]=a[f>>0]|0;b=b+1|0;f=f+1|0}while((b|0)<(d|0))}if(8193==(e[g+304+12>>1]|0|0)?0==(c[g+304+16>>2]|0):0)c[g+304+16>>2]=16e3;c[j>>2]=0;j=c[j>>2]|0;i=k;return j|0}function Ce(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0;h=i;i=i+16|0;k=h+4|0;j=h;g=h+8|0;c[k>>2]=d;c[j>>2]=f;d=c[k>>2]|0;c[g>>2]=c[j>>2];c[d+304>>2]=1212894537;b[d+304+10>>1]=5;f=d+304+10|0;if((c[c[g>>2]>>2]|0)==1212893236)b[f>>1]=256;else b[f>>1]=3;b[d+304+12>>1]=c[(c[g>>2]|0)+32>>2];a[d+304+14>>0]=(e[(c[g>>2]|0)+20>>1]|0)-4096;c[d+304+16>>2]=c[(c[g>>2]|0)+24>>2];a[d+304+15>>0]=b[(c[g>>2]|0)+22>>1];i=h;return 0}function De(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;g=c[d>>2]|0;i=f;return g|0}nb[c[(c[b>>2]|0)+32>>2]&127](b)|0;if(c[b+20>>2]|0){Eh(c[b+20>>2]|0)|0;c[b+20>>2]=0}c[b+20>>2]=zh(c[e>>2]|0,2)|0;if(!(c[b+20>>2]|0)){g=za(4)|0;c[g>>2]=-2147483641;Xa(g|0,152,0)}c[b+16>>2]=0;c[d>>2]=0;g=c[d>>2]|0;i=f;return g|0}function Ee(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return 0}function Fe(a,f,g,h){a=a|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+32|0;j=p+20|0;q=p+16|0;k=p+12|0;l=p+8|0;m=p+4|0;o=p+24|0;n=p;c[q>>2]=a;c[k>>2]=f;c[l>>2]=g;c[m>>2]=h;g=c[q>>2]|0;if(0==(c[k>>2]|0)&0==(c[m>>2]|0)&-1==(c[l>>2]|0)){c[o>>2]=nb[c[(c[g>>2]|0)+32>>2]&127](g)|0;if(c[o>>2]|0){c[j>>2]=c[o>>2];c[n>>2]=1}else{c[g+16>>2]=0;c[j>>2]=0;c[n>>2]=1}q=c[j>>2]|0;i=p;return q|0}if(0==(c[m>>2]|0)|0==(c[k>>2]|0)|0==(c[l>>2]|0)){c[j>>2]=-2147483645;q=c[j>>2]|0;i=p;return q|0}if((c[g+16>>2]|0)==2){c[j>>2]=-2147483642;q=c[j>>2]|0;i=p;return q|0}if((c[g+532>>2]|0)==0?(c[c[m>>2]>>2]|0)==1:0)c[g+532>>2]=1;if(!(c[g+532>>2]|0)){c[j>>2]=0;q=c[j>>2]|0;i=p;return q|0}if(!(c[g+508>>2]|0)){do if(1==(e[g+304+10>>1]|0|0)){if(!((((d[c[k>>2]>>0]|0|0)==0?(d[(c[k>>2]|0)+1>>0]|0|0)==0:0)?(d[(c[k>>2]|0)+2>>0]|0|0)==0:0)?(d[(c[k>>2]|0)+3>>0]|0|0)==1:0)){if(d[c[k>>2]>>0]|0|0)break;if(d[(c[k>>2]|0)+1>>0]|0|0)break;if((d[(c[k>>2]|0)+2>>0]|0|0)!=1)break}b[g+304+10>>1]=256}while(0);c[o>>2]=Ge(g,c[m>>2]|0)|0;if(c[o>>2]|0){c[j>>2]=c[o>>2];c[n>>2]=1}else{c[g+508>>2]=1;c[n>>2]=0}if((c[n>>2]|0)>>>0>=1){q=c[j>>2]|0;i=p;return q|0}}c[j>>2]=Ie(g,c[m>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;q=c[j>>2]|0;i=p;return q|0}function Ge(a,b){a=a|0;b=b|0;var f=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;j=l+12|0;m=l+8|0;f=l+4|0;h=l+16|0;k=l;c[m>>2]=a;c[f>>2]=b;a=c[m>>2]|0;if(!(c[f>>2]|0)){c[j>>2]=-2147483645;m=c[j>>2]|0;i=l;return m|0}if(5==(c[a+528>>2]|0))c[a+344>>2]=0;if(11==(c[a+528>>2]|0))c[a+344>>2]=1;if(12==(c[a+528>>2]|0))c[a+344>>2]=2;c[a+344+12+4>>2]=He(a,e[a+304+10>>1]|0)|0;c[a+344+12+8>>2]=He(a,e[a+304+12>>1]|0)|0;if(!(c[a+344+12+4>>2]|0)){c[j>>2]=-2147483647;m=c[j>>2]|0;i=l;return m|0}c[a+344+12>>2]=1;c[a+344+12+16+8>>2]=19800;c[a+344+12+16+12>>2]=2014;c[a+344+12+16+16>>2]=1;c[a+344+12+16+20>>2]=1;c[a+344+12+16+24>>2]=c[(c[f>>2]|0)+16>>2];c[a+344+12+16+28>>2]=c[(c[f>>2]|0)+20>>2];c[a+344+12+16+32>>2]=c[(c[f>>2]|0)+24>>2];c[a+344+12+16+36>>2]=c[(c[f>>2]|0)+28>>2];c[a+344+12+16+60>>2]=0;c[a+344+12+16+64>>2]=0;c[a+344+12+16+76>>2]=0;c[a+344+12+16+80>>2]=0;c[a+344+12+16+84>>2]=0;c[a+344+12+16+88>>2]=c[(c[f>>2]|0)+16>>2];c[a+344+12+16+92>>2]=c[(c[f>>2]|0)+20>>2];c[a+344+12+16+40>>2]=0;c[a+344+12+16+44>>2]=0;c[a+344+12+16+48>>2]=2;c[a+344+12+16+52>>2]=1;g[h>>2]=+g[(c[f>>2]|0)+60>>2];if(+g[h>>2]<0.0|+g[h>>2]>60.0)c[a+344+12+16+56>>2]=3600;else c[a+344+12+16+56>>2]=~~(+g[h>>2]*9.0e4/1.0e3)>>>0;if(c[a+344+12+8>>2]|0){c[a+344+12>>2]=3;c[a+344+12+112+4>>2]=0;c[a+344+12+112+12>>2]=c[a+304+16>>2];c[a+344+12+112+16>>2]=c[a+304+20>>2];if(1!=(d[a+304+14>>0]|0|0)?2!=(d[a+304+14>>0]|0|0):0){c[j>>2]=-2147483645;m=c[j>>2]|0;i=l;return m|0}c[a+344+12+112+8>>2]=(d[a+304+14>>0]|0)-1}if(yi(a+344|0)|0){c[j>>2]=-2147483646;m=c[j>>2]|0;i=l;return m|0}c[a+344+8>>2]=Ix(c[a+344+4>>2]|0)|0;if(!(c[a+344+8>>2]|0)){c[j>>2]=-2147483646;m=c[j>>2]|0;i=l;return m|0}c[h>>2]=0;c[h>>2]=zi(a+344|0,a+504|0)|0;if(c[h>>2]|0){if(c[a+504>>2]|0){Ci(c[a+504>>2]|0)|0;c[a+504>>2]=0}if(c[a+344+8>>2]|0){b=c[a+344+8>>2]|0;if(b|0)Jx(b);c[a+344+8>>2]=0}c[j>>2]=-2147483646;c[k>>2]=1}else{c[j>>2]=0;c[k>>2]=1}m=c[j>>2]|0;i=l;return m|0}function He(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f;c[f+4>>2]=a;c[g>>2]=b;b=c[g>>2]|0;a:do if((b|0)<8193){if((b|0)<4)switch(b|0){case 1:{c[d>>2]=176;break a}case 2:{c[d>>2]=2;break a}case 3:{c[d>>2]=16;break a}default:{e=16;break a}}if((b|0)<256)switch(b|0){case 4:{c[d>>2]=177;break a}case 5:{c[d>>2]=36;break a}default:{e=16;break a}}if((b|0)<8192){switch(b|0){case 256:break;default:{e=16;break a}}c[d>>2]=27;break}else{switch(b|0){case 8192:break;default:{e=16;break a}}c[d>>2]=3;break}}else{if((b|0)>=29217)switch(b|0){case 29217:{c[d>>2]=146;break a}case 29233:{c[d>>2]=147;break a}case 29282:{c[d>>2]=150;break a}case 29328:{c[d>>2]=153;break a}default:{e=16;break a}}if((b|0)<28944){switch(b|0){case 8193:break;default:{e=16;break a}}c[d>>2]=15;break}switch(b|0){case 28944:{c[d>>2]=145;break a}case 28945:{c[d>>2]=144;break a}default:{e=16;break a}}}while(0);if((e|0)==16)c[d>>2]=0;i=f;return c[d>>2]|0}function Ie(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=i;i=i+160|0;j=r+48|0;s=r+40|0;k=r+12|0;l=r+8|0;m=r+4|0;p=r+52|0;n=r;q=r+44|0;o=r+16|0;c[s>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=f;b=c[s>>2]|0;f=p;d=f+100|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(d|0));a:do switch(c[c[k>>2]>>2]|0){case 1:{if(1==(c[(c[k>>2]|0)+8>>2]|0))c[b+520>>2]=c[(c[k>>2]|0)+12>>2];c[p>>2]=3;f=c[k>>2]|0;if(!(c[b+344+12+16+36>>2]|0)){c[p+8>>2]=(c[f+12>>2]|0)-(c[b+520>>2]|0);c[p+12>>2]=0;h=18;break a}else{c[p+8>>2]=~~(+((c[f+8>>2]|0)>>>0)*+g[(c[k>>2]|0)+60>>2])>>>0;c[p+12>>2]=~~(+(((c[(c[k>>2]|0)+12>>2]|0)-(c[b+520>>2]|0)-(c[p+8>>2]|0)|0)>>>0)+ +g[(c[k>>2]|0)+60>>2]*5.0)>>>0;h=18;break a}}case 2:{c[p>>2]=1;f=c[k>>2]|0;if(!(c[b+344+12+16+36>>2]|0)){c[p+8>>2]=(c[f+12>>2]|0)-(c[b+520>>2]|0);c[p+12>>2]=0;h=18;break a}else{c[p+8>>2]=~~(+((c[f+8>>2]|0)>>>0)*+g[(c[k>>2]|0)+60>>2])>>>0;c[p+12>>2]=~~(+(((c[(c[k>>2]|0)+12>>2]|0)-(c[b+520>>2]|0)-(c[p+8>>2]|0)|0)>>>0)+ +g[(c[k>>2]|0)+60>>2]*5.0)>>>0;h=18;break a}}case 3:{c[p>>2]=0;f=c[k>>2]|0;if(!(c[b+344+12+16+36>>2]|0)){c[p+8>>2]=(c[f+12>>2]|0)-(c[b+520>>2]|0);c[p+12>>2]=0;h=18;break a}else{c[p+8>>2]=~~(+((c[f+8>>2]|0)>>>0)*+g[(c[k>>2]|0)+60>>2])>>>0;c[p+12>>2]=~~(+(((c[(c[k>>2]|0)+12>>2]|0)-(c[b+520>>2]|0)-(c[p+8>>2]|0)|0)>>>0)+ +g[(c[k>>2]|0)+60>>2]*5.0)>>>0;h=18;break a}}case 4:{c[p>>2]=4;c[p+8>>2]=c[(c[k>>2]|0)+12>>2];c[p+12>>2]=0;if(8193==(e[b+304+12>>1]|0|0)?c[(c[k>>2]|0)+92+28>>2]|0:0){c[l>>2]=(c[l>>2]|0)+7;c[m>>2]=(c[m>>2]|0)-7;h=18}else h=18;break}case 5:{c[p>>2]=5;c[p+8>>2]=c[(c[k>>2]|0)+12>>2];c[p+12>>2]=0;h=18;break}default:{c[j>>2]=-2147483647;c[n>>2]=1}}while(0);if((h|0)==18){c[p+4>>2]=3==(c[p>>2]|0)?1:0;c[p+24>>2]=c[(c[k>>2]|0)+8>>2];c[p+20>>2]=~~+g[(c[k>>2]|0)+60>>2]>>>0;c[p+28>>2]=c[l>>2];c[p+32>>2]=c[m>>2];c[p+36>>2]=c[b+512>>2];c[p+44>>2]=2097152;c[p+68>>2]=0;c[p+64>>2]=18507;c[p+72>>2]=c[(c[k>>2]|0)+64>>2];c[p+72+4>>2]=c[(c[k>>2]|0)+64+4>>2];c[p+72+8>>2]=c[(c[k>>2]|0)+64+8>>2];c[p+72+12>>2]=c[(c[k>>2]|0)+64+12>>2];c[p+72+16>>2]=c[(c[k>>2]|0)+64+16>>2];c[p+72+20>>2]=c[(c[k>>2]|0)+64+20>>2];c[p+72+24>>2]=c[(c[k>>2]|0)+64+24>>2];c[q>>2]=0;if((c[p+32>>2]|0)>>>0>=(c[p+44>>2]|0)>>>0)c[q>>2]=1;else c[q>>2]=Ai(c[b+504>>2]|0,p)|0;do if(-2147483647==(c[q>>2]|0)|1==(c[q>>2]|0)|-2147483644==(c[q>>2]|0))h=33;else{if(c[q>>2]|0){c[j>>2]=-2147483632;c[n>>2]=1;break}if(1==(c[(c[k>>2]|0)+8>>2]|0)?12==(c[b+528>>2]|0):0){c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[o+20>>2]=0;c[b+524>>2]=Ix(18874368)|0;if(!(c[b+524>>2]|0)){s=za(4)|0;c[s>>2]=-2147483646;Xa(s|0,152,0)}c[o>>2]=c[b+524>>2];c[o+4>>2]=18874368;Fh(c[o>>2]|0,c[o+4>>2]|0);c[q>>2]=Bi(c[b+504>>2]|0,o)|0;if(c[q>>2]|0){c[j>>2]=-2147483632;c[n>>2]=1}else{Je(b,c[o>>2]|0,c[o+8>>2]|0,1,0)|0;c[n>>2]=0}if(c[n>>2]|0)break}Je(b,c[p+36>>2]|0,c[p+40>>2]|0,0,0)|0;h=33}while(0);if((h|0)==33)c[n>>2]=0}if((c[n>>2]|0)>>>0>=1){s=c[j>>2]|0;i=r;return s|0}c[j>>2]=0;s=c[j>>2]|0;i=r;return s|0}function Je(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+160|0;o=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;m=n+24|0;c[o>>2]=a;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;f=c[o>>2]|0;do if(1==(c[f+4>>2]|0)){if(c[f+292>>2]|0){c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m>>2]=c[h>>2];c[m+4>>2]=c[j>>2];c[m+12>>2]=c[k>>2];mb[c[f+292>>2]&1](m,c[f+288>>2]|0)}}else if(2==(c[f+4>>2]|0)){if(!(c[f+12>>2]|0))break;g=m;e=g+128|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(e|0));c[m>>2]=c[h>>2];c[m+4>>2]=c[j>>2];b[m+20>>1]=c[l>>2];c[m+24>>2]=c[k>>2];mb[c[f+12>>2]&1](m,c[f+8>>2]|0);break}else{if(!(c[f+300>>2]|0))break;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m>>2]=c[h>>2];c[m+4>>2]=c[j>>2];c[m+12>>2]=c[k>>2];mb[c[f+300>>2]&1](m,c[f+296>>2]|0);break}while(0);if(!(c[f+20>>2]|0)){i=n;return 0}c[m>>2]=0;c[m>>2]=Bh(c[f+20>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=n;return 0}function Ke(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+48|0;d=h+32|0;b=h+4|0;g=h+36|0;f=h+8|0;e=h;c[b>>2]=a;a=c[b>>2]|0;c[a+16>>2]=2;c[g>>2]=0;if(!(11!=(c[a+528>>2]|0)?5!=(c[a+528>>2]|0):0)){c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f>>2]=c[a+512>>2];c[f+4>>2]=2097152;Fh(c[f>>2]|0,c[f+4>>2]|0);do if(!(c[a+504>>2]|0)){c[d>>2]=-2147483645;c[e>>2]=1}else{c[g>>2]=Bi(c[a+504>>2]|0,f)|0;if(c[g>>2]|0){if(-2147483645!=(c[g>>2]|0)){c[d>>2]=-2147483632;c[e>>2]=1;break}if(c[a+524>>2]|0){b=c[a+524>>2]|0;if(b|0)Jx(b);c[a+524>>2]=0}c[a+524>>2]=Ix(18874368)|0;if(!(c[a+524>>2]|0)){h=za(4)|0;c[h>>2]=-2147483646;Xa(h|0,152,0)}c[f>>2]=c[a+524>>2];c[f+4>>2]=18874368;Fh(c[f>>2]|0,c[f+4>>2]|0);c[g>>2]=Bi(c[a+504>>2]|0,f)|0;if(c[g>>2]|0){c[d>>2]=-2147483632;c[e>>2]=1;break}}Je(a,c[f>>2]|0,c[f+8>>2]|0,1,0)|0;c[e>>2]=0}while(0);if(c[e>>2]|0){g=c[d>>2]|0;i=h;return g|0}}c[d>>2]=xe(a)|0;c[e>>2]=1;g=c[d>>2]|0;i=h;return g|0}function Le(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=c[h>>2]|0;c[a+4>>2]=1;c[a+292>>2]=c[g>>2];c[a+288>>2]=c[f>>2];c[a+300>>2]=0;c[a+296>>2]=0;c[a+12>>2]=0;c[a+8>>2]=0;i=e;return 0}function Me(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=c[h>>2]|0;c[a+4>>2]=0;c[a+292>>2]=0;c[a+288>>2]=0;c[a+300>>2]=c[g>>2];c[a+296>>2]=c[f>>2];c[a+12>>2]=0;c[a+8>>2]=0;i=e;return 0}function Ne(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=c[h>>2]|0;c[a+4>>2]=2;c[a+12>>2]=c[g>>2];c[a+8>>2]=c[f>>2];c[a+292>>2]=0;c[a+288>>2]=0;c[a+300>>2]=0;c[a+296>>2]=0;i=e;return 0}function Oe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+16>>2]=c[f>>2];i=d;return 0}function Pe(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return -2147483647}function Qe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;b=c[d>>2]|0;nd(b);c[b>>2]=756;c[b+16>>2]=2;c[b+20>>2]=0;Ox(b+24|0,0,260)|0;a=b+304|0;d=a+40|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(d|0));c[b+284>>2]=0;c[b+292>>2]=0;c[b+288>>2]=0;c[b+300>>2]=0;c[b+296>>2]=0;c[b+4>>2]=1;c[b+8>>2]=0;c[b+12>>2]=0;Ox(b+344|0,0,160)|0;c[b+504>>2]=0;c[b+508>>2]=0;c[b+512>>2]=0;c[b+516>>2]=0;c[b+520>>2]=0;c[b+524>>2]=0;c[b+528>>2]=c[e>>2];c[b+532>>2]=0;i=f;return}function Re(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=828;nb[c[(c[a>>2]|0)+32>>2]&127](a)|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;zc(a);i=b;return}function Se(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;Re(a);lx(a);i=b;return}function Te(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[a+24>>2]=Ix(8392)|0;if(!(c[a+24>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}c[a+108>>2]=_w(512)|0;if(!(c[a+108>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}c[a+116>>2]=512;c[a+112>>2]=8;c[a+128>>2]=_w(512)|0;if(!(c[a+128>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}else{c[a+136>>2]=512;c[b>>2]=0;i=d;return c[b>>2]|0}return 0}function Ue(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;a=c[b>>2]|0;if(c[a+24>>2]|0){b=c[a+24>>2]|0;if(b|0)Jx(b);c[a+24>>2]=0}if(c[a+108>>2]|0){$w(c[a+108>>2]|0);c[a+108>>2]=0}if(!(c[a+128>>2]|0)){i=d;return 0}$w(c[a+128>>2]|0);c[a+128>>2]=0;i=d;return 0}function Ve(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;j=l+12|0;g=l+8|0;h=l+4|0;k=l;c[g>>2]=d;c[h>>2]=e;c[k>>2]=f;d=c[g>>2]|0;if(!(c[h>>2]|0)){c[j>>2]=-2147483645;k=c[j>>2]|0;i=l;return k|0}g=d+40|0;f=c[h>>2]|0;e=g+40|0;do{a[g>>0]=a[f>>0]|0;g=g+1|0;f=f+1|0}while((g|0)<(e|0));b[d+40+8>>1]=4;if((c[k>>2]|0)>>>0<512|(c[k>>2]|0)>>>0>8192)c[d+20>>2]=5120;else c[d+20>>2]=c[k>>2];c[j>>2]=0;k=c[j>>2]|0;i=l;return k|0}function We(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+8|0;f=e;c[e+4>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0))c[d>>2]=-2147483645;else c[d>>2]=-2147483647;i=e;return c[d>>2]|0}function Xe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+8|0;f=e;c[e+4>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0))c[d>>2]=-2147483645;else c[d>>2]=-2147483647;i=e;return c[d>>2]|0}function Ye(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;j=n+16|0;o=n+12|0;k=n+8|0;l=n+4|0;m=n;c[o>>2]=d;c[k>>2]=f;c[l>>2]=g;c[m>>2]=h;f=c[o>>2]|0;if((c[f+16>>2]|0)==2){c[j>>2]=-2147483642;o=c[j>>2]|0;i=n;return o|0}if(1==(e[f+40+10>>1]|0|0)?(c[(c[m>>2]|0)+4>>2]|0)==1:0){c[j>>2]=-2147483647;o=c[j>>2]|0;i=n;return o|0}b[f+40+4>>1]=258;g=f+40+24|0;if(c[(c[m>>2]|0)+48>>2]|0)a[g>>0]=-127;else a[g>>0]=0;c[f+100>>2]=c[(c[m>>2]|0)+32>>2];c[f+104>>2]=c[(c[m>>2]|0)+44>>2];switch(c[c[m>>2]>>2]|0){case 1:{if(!(Ze(f,c[k>>2]|0,c[l>>2]|0,e[f+40+10>>1]|0)|0))c[f+120>>2]=1;gf(f,112,(c[(c[m>>2]|0)+12>>2]|0)*90|0,1)|0;hf(f,c[m>>2]|0)|0;jf(f,2,0,c[m>>2]|0)|0;gf(f,112,(c[(c[m>>2]|0)+12>>2]|0)*90|0,1)|0;of(f,c[m>>2]|0)|0;jf(f,2,0,c[m>>2]|0)|0;break}case 3:case 2:break;case 4:{c[j>>2]=zf(f,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;o=c[j>>2]|0;i=n;return o|0}default:{c[j>>2]=Af(f,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;o=c[j>>2]|0;i=n;return o|0}}c[j>>2]=sf(f,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;o=c[j>>2]|0;i=n;return o|0}function Ze(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;f=m+20|0;n=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;l=m+24|0;k=m;c[n>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;d=c[n>>2]|0;c[l>>2]=0;if(!(c[g>>2]|0)){c[f>>2]=-2147483393;c[k>>2]=1;n=c[f>>2]|0;i=m;return n|0}c[d+112>>2]=8;switch(c[j>>2]|0){case 1:case 256:{c[l>>2]=_e(d,c[g>>2]|0,c[h>>2]|0)|0;break}case 3:{c[l>>2]=df(d,c[g>>2]|0,c[h>>2]|0)|0;break}case 5:{c[l>>2]=ff(d,c[g>>2]|0,c[h>>2]|0)|0;break}default:c[l>>2]=-2147483647}c[f>>2]=c[l>>2];c[k>>2]=1;n=c[f>>2]|0;i=m;return n|0}function _e(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+48|0;g=o+28|0;p=o+20|0;h=o+12|0;j=o+4|0;l=o+32|0;f=o+24|0;m=o+16|0;n=o+8|0;k=o;c[p>>2]=a;c[h>>2]=b;c[j>>2]=e;b=c[p>>2]|0;if((c[j>>2]|0)>>>0<4){c[g>>2]=-2147483393;p=c[g>>2]|0;i=o;return p|0}if(((0==(d[c[h>>2]>>0]|0|0)?0==(d[(c[h>>2]|0)+1>>0]|0|0):0)?0==(d[(c[h>>2]|0)+2>>0]|0|0):0)?1==(d[(c[h>>2]|0)+3>>0]|0|0):0){c[l>>2]=1;c[f>>2]=0;c[m>>2]=0;do{c[h>>2]=(c[h>>2]|0)+4;c[j>>2]=(c[j>>2]|0)-4;c[n>>2]=$e(b,c[h>>2]|0,c[j>>2]|0)|0;if((c[n>>2]|0)==-1)c[l>>2]=0;else{e=c[h>>2]|0;if(7!=((d[c[h>>2]>>0]|0)&31|0)){if(8==((d[e>>0]|0)&31|0)){af(b,c[h>>2]|0,c[n>>2]|0,4)|0;c[m>>2]=2}}else{af(b,e,c[n>>2]|0,4)|0;c[m>>2]=1}c[h>>2]=(c[h>>2]|0)+(c[n>>2]|0);c[j>>2]=(c[j>>2]|0)-(c[n>>2]|0)}}while((c[l>>2]|0)!=0);bf(b)|0;cf(b)|0;if(2==(c[m>>2]|0)){c[g>>2]=0;c[k>>2]=1}else{c[g>>2]=-2147483393;c[k>>2]=1}p=c[g>>2]|0;i=o;return p|0}c[g>>2]=-2147483393;p=c[g>>2]|0;i=o;return p|0}function $e(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+16|0;f=l+8|0;g=l+4|0;k=l+20|0;j=l;c[l+12>>2]=a;c[f>>2]=b;c[g>>2]=e;if((c[g>>2]|0)>>>0<4){c[h>>2]=-1;k=c[h>>2]|0;i=l;return k|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=((c[g>>2]|0)-3|0)>>>0){f=5;break}if((((d[(c[f>>2]|0)+(c[k>>2]|0)>>0]|0|0)==0?(d[(c[f>>2]|0)+((c[k>>2]|0)+1)>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+2)>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+3)>>0]|0|0)==1:0){f=10;break}c[k>>2]=(c[k>>2]|0)+1}if((f|0)==5)c[j>>2]=2;else if((f|0)==10){c[h>>2]=c[k>>2];c[j>>2]=1}if(((c[j>>2]|0)+-2|0)>>>0>=1){k=c[h>>2]|0;i=l;return k|0}c[h>>2]=-1;k=c[h>>2]|0;i=l;return k|0}function af(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;g=n+20|0;o=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;m=n+24|0;l=n;c[o>>2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;e=c[o>>2]|0;c[m>>2]=0;c[m>>2]=(c[j>>2]|0)+(c[k>>2]|0);do if(((c[m>>2]|0)+(c[e+112>>2]|0)|0)>>>0>(c[e+116>>2]|0)>>>0){c[e+108>>2]=ax(c[e+108>>2]|0,(c[m>>2]|0)+(c[e+112>>2]|0)+512|0)|0;if(c[e+108>>2]|0){c[e+116>>2]=(c[m>>2]|0)+(c[e+112>>2]|0)+512;break}c[g>>2]=-2147483646;c[l>>2]=1;o=c[g>>2]|0;i=n;return o|0}while(0);o=(c[e+108>>2]|0)+(c[e+112>>2]|0)|0;a[o>>0]=a[m>>0]|0;a[o+1>>0]=a[m+1>>0]|0;a[o+2>>0]=a[m+2>>0]|0;a[o+3>>0]=a[m+3>>0]|0;o=e+112|0;c[o>>2]=(c[o>>2]|0)+4;if(4==(c[k>>2]|0)){m=e+112|0;o=c[m>>2]|0;c[m>>2]=o+1;a[(c[e+108>>2]|0)+o>>0]=0}m=e+112|0;o=c[m>>2]|0;c[m>>2]=o+1;a[(c[e+108>>2]|0)+o>>0]=0;o=e+112|0;m=c[o>>2]|0;c[o>>2]=m+1;a[(c[e+108>>2]|0)+m>>0]=0;m=e+112|0;o=c[m>>2]|0;c[m>>2]=o+1;a[(c[e+108>>2]|0)+o>>0]=1;Tx((c[e+108>>2]|0)+(c[e+112>>2]|0)|0,c[h>>2]|0,c[j>>2]|0)|0;o=e+112|0;c[o>>2]=(c[o>>2]|0)+(c[j>>2]|0);c[g>>2]=0;c[l>>2]=1;o=c[g>>2]|0;i=n;return o|0}function bf(a){a=a|0;var b=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+4|0;b=f+8|0;e=f;c[g>>2]=a;a=c[g>>2]|0;c[b>>2]=0;if(!(c[a+120>>2]|0)){c[a+124>>2]=1;i=f;return 0}if((c[a+112>>2]|0)!=(c[a+132>>2]|0))c[b>>2]=1;else{c[e>>2]=8;while(1){if((c[e>>2]|0)>>>0>=((c[a+112>>2]|0)-8|0)>>>0)break;if((d[(c[a+108>>2]|0)+(c[e>>2]|0)>>0]|0|0)!=(d[(c[a+128>>2]|0)+(c[e>>2]|0)>>0]|0|0))c[b>>2]=1;c[e>>2]=(c[e>>2]|0)+1}}c[a+124>>2]=c[b>>2];i=f;return 0}function cf(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;if(c[a+124>>2]|0){do if((c[a+112>>2]|0)>>>0>(c[a+136>>2]|0)>>>0){c[a+128>>2]=ax(c[a+128>>2]|0,(c[a+112>>2]|0)+512|0)|0;if(c[a+128>>2]|0){c[a+136>>2]=(c[a+112>>2]|0)+512;break}c[b>>2]=-2147483646;e=c[b>>2]|0;i=d;return e|0}while(0);Tx(c[a+128>>2]|0,c[a+108>>2]|0,c[a+112>>2]|0)|0;c[a+132>>2]=c[a+112>>2]}c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}function df(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;f=n+24|0;o=n+16|0;g=n+8|0;h=n+4|0;k=n+28|0;j=n;l=n+20|0;m=n+12|0;c[o>>2]=a;c[g>>2]=b;c[h>>2]=e;e=c[o>>2]|0;if((c[h>>2]|0)>>>0<3){c[f>>2]=-2147483393;o=c[f>>2]|0;i=n;return o|0}c[k>>2]=1;if((0==(d[c[g>>2]>>0]|0|0)?0==(d[(c[g>>2]|0)+1>>0]|0|0):0)?1==(d[(c[g>>2]|0)+2>>0]|0|0):0){c[l>>2]=0;do{c[g>>2]=(c[g>>2]|0)+3;c[h>>2]=(c[h>>2]|0)-3;c[m>>2]=ef(e,c[g>>2]|0,c[h>>2]|0)|0;if((c[m>>2]|0)==-1)c[k>>2]=0;else{if(176==(d[c[g>>2]>>0]|0|0)){af(e,c[g>>2]|0,c[m>>2]|0,3)|0;c[l>>2]=(c[l>>2]|0)+1}if(181==(d[c[g>>2]>>0]|0|0)){af(e,c[g>>2]|0,c[m>>2]|0,3)|0;c[l>>2]=(c[l>>2]|0)+1}if(!(d[c[g>>2]>>0]|0))af(e,c[g>>2]|0,c[m>>2]|0,3)|0;if(32==(d[c[g>>2]>>0]|0|0)){af(e,c[g>>2]|0,c[m>>2]|0,3)|0;c[l>>2]=(c[l>>2]|0)+1}c[g>>2]=(c[g>>2]|0)+(c[m>>2]|0);c[h>>2]=(c[h>>2]|0)-(c[m>>2]|0)}}while((c[k>>2]|0)!=0);bf(e)|0;cf(e)|0;if(3<=(c[l>>2]|0)>>>0){c[f>>2]=0;c[j>>2]=1}else{c[f>>2]=-2147483393;c[j>>2]=1}}else{c[f>>2]=-2147483393;c[j>>2]=1}o=c[f>>2]|0;i=n;return o|0}function ef(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+16|0;f=l+8|0;g=l+4|0;k=l+20|0;j=l;c[l+12>>2]=a;c[f>>2]=b;c[g>>2]=e;if((c[g>>2]|0)>>>0<3){c[h>>2]=-1;k=c[h>>2]|0;i=l;return k|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=((c[g>>2]|0)-3|0)>>>0){f=5;break}if(((d[(c[f>>2]|0)+(c[k>>2]|0)>>0]|0|0)==0?(d[(c[f>>2]|0)+((c[k>>2]|0)+1)>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+2)>>0]|0|0)==1:0){f=9;break}c[k>>2]=(c[k>>2]|0)+1}if((f|0)==5)c[j>>2]=2;else if((f|0)==9){c[h>>2]=c[k>>2];c[j>>2]=1}if(((c[j>>2]|0)+-2|0)>>>0>=1){k=c[h>>2]|0;i=l;return k|0}c[h>>2]=-1;k=c[h>>2]|0;i=l;return k|0}function ff(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+48|0;g=o+28|0;p=o+20|0;h=o+12|0;j=o+4|0;l=o+32|0;f=o+24|0;m=o+16|0;n=o+8|0;k=o;c[p>>2]=a;c[h>>2]=b;c[j>>2]=e;a=c[p>>2]|0;if((c[j>>2]|0)>>>0<4){c[g>>2]=-2147483393;p=c[g>>2]|0;i=o;return p|0}if(((0==(d[c[h>>2]>>0]|0|0)?0==(d[(c[h>>2]|0)+1>>0]|0|0):0)?0==(d[(c[h>>2]|0)+2>>0]|0|0):0)?1==(d[(c[h>>2]|0)+3>>0]|0|0):0){c[l>>2]=1;c[f>>2]=0;c[m>>2]=0;do{c[h>>2]=(c[h>>2]|0)+4;c[j>>2]=(c[j>>2]|0)-4;c[n>>2]=$e(a,c[h>>2]|0,c[j>>2]|0)|0;if((c[n>>2]|0)==-1)c[l>>2]=0;else{e=c[h>>2]|0;do if(32!=(((d[c[h>>2]>>0]|0)&126)>>1|0)){b=c[h>>2]|0;if(33==(((d[e>>0]|0)&126)>>1|0)){af(a,b,c[n>>2]|0,4)|0;c[m>>2]=2;break}if(34==(((d[b>>0]|0)&126)>>1|0)){af(a,c[h>>2]|0,c[n>>2]|0,4)|0;c[m>>2]=3}}else{af(a,e,c[n>>2]|0,4)|0;c[m>>2]=1}while(0);c[h>>2]=(c[h>>2]|0)+(c[n>>2]|0);c[j>>2]=(c[j>>2]|0)-(c[n>>2]|0)}}while((c[l>>2]|0)!=0);bf(a)|0;cf(a)|0;if(3==(c[m>>2]|0)){c[g>>2]=0;c[k>>2]=1}else{c[g>>2]=-2147483393;c[k>>2]=1}p=c[g>>2]|0;i=o;return p|0}c[g>>2]=-2147483393;p=c[g>>2]|0;i=o;return p|0}function gf(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;p=o+16|0;j=o+8|0;k=o+4|0;l=o;n=o+20|0;m=o+12|0;c[p>>2]=d;c[j>>2]=f;c[k>>2]=g;c[l>>2]=h;h=c[p>>2]|0;b[n>>1]=0;c[m>>2]=0;do if(96!=(c[j>>2]|0)){if(112!=(c[j>>2]|0)){d=h+34|0;p=b[d>>1]|0;b[d>>1]=p+1<<16>>16;b[n>>1]=p;c[m>>2]=124;break}if(112==(c[j>>2]|0)){d=h+36|0;p=b[d>>1]|0;b[d>>1]=p+1<<16>>16;b[n>>1]=p;c[m>>2]=123}}else{d=h+32|0;p=b[d>>1]|0;b[d>>1]=p+1<<16>>16;b[n>>1]=p;c[m>>2]=123}while(0);d=(128|((c[j>>2]|0)==112&1)<<4)&255;g=h+28|0;p=c[g>>2]|0;c[g>>2]=p+1;a[(c[h+24>>2]|0)+p>>0]=d;j=((c[l>>2]&1)<<7|c[j>>2]&127)&255;l=h+28|0;p=c[l>>2]|0;c[l>>2]=p+1;a[(c[h+24>>2]|0)+p>>0]=j;p=(e[n>>1]|0)>>8&255;j=h+28|0;l=c[j>>2]|0;c[j>>2]=l+1;a[(c[h+24>>2]|0)+l>>0]=p;l=(e[n>>1]|0)&255;n=h+28|0;p=c[n>>2]|0;c[n>>2]=p+1;a[(c[h+24>>2]|0)+p>>0]=l;p=(c[k>>2]|0)>>>24&255;l=h+28|0;n=c[l>>2]|0;c[l>>2]=n+1;a[(c[h+24>>2]|0)+n>>0]=p;n=(c[k>>2]|0)>>>16&255;p=h+28|0;l=c[p>>2]|0;c[p>>2]=l+1;a[(c[h+24>>2]|0)+l>>0]=n;l=(c[k>>2]|0)>>>8&255;n=h+28|0;p=c[n>>2]|0;c[n>>2]=p+1;a[(c[h+24>>2]|0)+p>>0]=l;p=c[k>>2]&255;l=h+28|0;n=c[l>>2]|0;c[l>>2]=n+1;a[(c[h+24>>2]|0)+n>>0]=p;n=(c[m>>2]|0)>>>24&255;p=h+28|0;l=c[p>>2]|0;c[p>>2]=l+1;a[(c[h+24>>2]|0)+l>>0]=n;l=(c[m>>2]|0)>>>16&255;n=h+28|0;p=c[n>>2]|0;c[n>>2]=p+1;a[(c[h+24>>2]|0)+p>>0]=l;p=(c[m>>2]|0)>>>8&255;l=h+28|0;n=c[l>>2]|0;c[l>>2]=n+1;a[(c[h+24>>2]|0)+n>>0]=p;n=c[m>>2]&255;m=h+28|0;p=c[m>>2]|0;c[m>>2]=p+1;a[(c[h+24>>2]|0)+p>>0]=n;i=o;return 0}function hf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;e=i;i=i+16|0;g=e+4|0;h=e;f=e+8|0;c[g>>2]=b;c[h>>2]=d;b=c[g>>2]|0;g=b+28|0;j=c[g>>2]|0;c[g>>2]=j+1;a[(c[b+24>>2]|0)+j>>0]=0;j=b+28|0;g=c[j>>2]|0;c[j>>2]=g+1;a[(c[b+24>>2]|0)+g>>0]=1;g=b+28|0;j=c[g>>2]|0;c[g>>2]=j+1;a[(c[b+24>>2]|0)+j>>0]=0;j=b+28|0;g=c[j>>2]|0;c[j>>2]=g+1;a[(c[b+24>>2]|0)+g>>0]=0;c[f>>2]=(c[b+28>>2]|0)-2;g=b+28|0;j=c[g>>2]|0;c[g>>2]=j+1;a[(c[b+24>>2]|0)+j>>0]=64;j=b+28|0;g=c[j>>2]|0;c[j>>2]=g+1;a[(c[b+24>>2]|0)+g>>0]=14;g=(c[(c[h>>2]|0)+36>>2]|0)>>>8&255;j=b+28|0;d=c[j>>2]|0;c[j>>2]=d+1;a[(c[b+24>>2]|0)+d>>0]=g;d=c[(c[h>>2]|0)+36>>2]&255;g=b+28|0;j=c[g>>2]|0;c[g>>2]=j+1;a[(c[b+24>>2]|0)+j>>0]=d;j=(c[(c[h>>2]|0)+32>>2]|0)>>>8&255;d=b+28|0;g=c[d>>2]|0;c[d>>2]=g+1;a[(c[b+24>>2]|0)+g>>0]=j;g=c[(c[h>>2]|0)+32>>2]&255;j=b+28|0;d=c[j>>2]|0;c[j>>2]=d+1;a[(c[b+24>>2]|0)+d>>0]=g;d=(c[(c[h>>2]|0)+64>>2]|0)-2e3&255;g=b+28|0;j=c[g>>2]|0;c[g>>2]=j+1;a[(c[b+24>>2]|0)+j>>0]=d;j=(c[(c[h>>2]|0)+64+4>>2]<<4&240|(c[(c[h>>2]|0)+64+8>>2]|0)>>>1&15)&255;d=b+28|0;g=c[d>>2]|0;c[d>>2]=g+1;a[(c[b+24>>2]|0)+g>>0]=j;g=(c[(c[h>>2]|0)+64+8>>2]<<7&128|c[(c[h>>2]|0)+64+12>>2]<<2&124|(c[(c[h>>2]|0)+64+16>>2]|0)>>>4&3)&255;j=b+28|0;d=c[j>>2]|0;c[j>>2]=d+1;a[(c[b+24>>2]|0)+d>>0]=g;d=(c[(c[h>>2]|0)+64+16>>2]<<4&240|(c[(c[h>>2]|0)+64+20>>2]|0)>>>2&15)&255;g=b+28|0;j=c[g>>2]|0;c[g>>2]=j+1;a[(c[b+24>>2]|0)+j>>0]=d;j=(c[(c[h>>2]|0)+64+20>>2]<<6&192|32|(c[(c[h>>2]|0)+64+24>>2]|0)>>>5&31)&255;d=b+28|0;g=c[d>>2]|0;c[d>>2]=g+1;a[(c[b+24>>2]|0)+g>>0]=j;g=(c[(c[h>>2]|0)+64+24>>2]<<3&248|1)&255;j=b+28|0;d=c[j>>2]|0;c[j>>2]=d+1;a[(c[b+24>>2]|0)+d>>0]=g;d=c[(c[h>>2]|0)+40>>2]&255;h=b+28|0;g=c[h>>2]|0;c[h>>2]=g+1;a[(c[b+24>>2]|0)+g>>0]=d;g=b+28|0;d=c[g>>2]|0;c[g>>2]=d+1;a[(c[b+24>>2]|0)+d>>0]=-1;d=b+28|0;g=c[d>>2]|0;c[d>>2]=g+1;a[(c[b+24>>2]|0)+g>>0]=-1;g=b+28|0;d=c[g>>2]|0;c[g>>2]=d+1;a[(c[b+24>>2]|0)+d>>0]=-1;a[(c[b+24>>2]|0)+(c[f>>2]|0)>>0]=((((c[b+28>>2]|0)-2-(c[f>>2]|0)|0)>>>0)/4|0)>>>8;a[(c[b+24>>2]|0)+((c[f>>2]|0)+1)>>0]=(((c[b+28>>2]|0)-2-(c[f>>2]|0)|0)>>>0)/4|0;i=e;return 0}function jf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;f=m+20|0;n=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;l=m+24|0;k=m;c[n>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;b=c[n>>2]|0;c[l>>2]=0;c[l>>2]=kf(b)|0;c[l>>2]=lf(b,c[j>>2]|0)|0;if(c[l>>2]|0){c[b+28>>2]=0;c[f>>2]=c[l>>2];c[k>>2]=1;n=c[f>>2]|0;i=m;return n|0}else{c[l>>2]=nf(b,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;c[b+28>>2]=0;c[f>>2]=0;c[k>>2]=1;n=c[f>>2]|0;i=m;return n|0}return 0}function kf(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+176|0;f=l+160|0;d=l+136|0;h=l+164|0;k=l+144|0;j=l+8|0;g=l;c[d>>2]=a;a=c[d>>2]|0;c[h>>2]=0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;d=j;e=d+128|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));if(c[a+80>>2]|0){c[f>>2]=0;c[g>>2]=1;k=c[f>>2]|0;i=l;return k|0}switch(c[a+4>>2]|0){case 1:{if(c[a+88>>2]|0){c[k>>2]=a+40;c[k+4>>2]=40;c[k+8>>2]=1;mb[c[a+88>>2]&1](k,c[a+84>>2]|0);c[a+80>>2]=1}break}case 0:{if(c[a+96>>2]|0){c[k>>2]=a+40;c[k+4>>2]=40;c[k+8>>2]=1;mb[c[a+96>>2]&1](k,c[a+92>>2]|0);c[a+80>>2]=1}break}case 2:{if(c[a+12>>2]|0){c[j>>2]=a+40;c[j+4>>2]=40;b[j+8>>1]=1;b[j+10>>1]=5;mb[c[a+12>>2]&1](j,c[a+8>>2]|0);c[a+80>>2]=1}break}default:c[h>>2]=-2147483647}c[f>>2]=c[h>>2];c[g>>2]=1;k=c[f>>2]|0;i=l;return k|0}function lf(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+176|0;f=m+160|0;e=m+136|0;g=m+4|0;j=m+164|0;l=m+144|0;k=m+8|0;h=m;c[e>>2]=a;c[g>>2]=d;d=c[e>>2]|0;c[j>>2]=0;c[l>>2]=0;c[l+4>>2]=0;c[l+8>>2]=0;c[l+12>>2]=0;a=k;e=a+128|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(e|0));if(!(c[d+124>>2]|0))if(c[d+120>>2]|0){c[f>>2]=0;c[h>>2]=1;l=c[f>>2]|0;i=m;return l|0}else{c[f>>2]=-2147483393;c[h>>2]=1;l=c[f>>2]|0;i=m;return l|0}switch(c[d+4>>2]|0){case 1:{c[j>>2]=mf(d,l,l+4|0,c[g>>2]|0)|0;if(0==(c[j>>2]|0)?c[d+88>>2]|0:0){c[l+8>>2]=5;mb[c[d+88>>2]&1](l,c[d+84>>2]|0);c[d+124>>2]=0}break}case 0:{c[j>>2]=mf(d,l,l+4|0,c[g>>2]|0)|0;if(0==(c[j>>2]|0)?c[d+96>>2]|0:0){c[l+8>>2]=5;mb[c[d+96>>2]&1](l,c[d+92>>2]|0);c[d+124>>2]=0}break}case 2:{c[j>>2]=mf(d,k,k+4|0,c[g>>2]|0)|0;if(0==(c[j>>2]|0)?c[d+12>>2]|0:0){b[k+8>>1]=5;b[k+10>>1]=5;mb[c[d+12>>2]&1](k,c[d+8>>2]|0);c[d+124>>2]=0}break}default:c[j>>2]=-2147483647}c[f>>2]=c[j>>2];c[h>>2]=1;l=c[f>>2]|0;i=m;return l|0}function mf(b,d,f,g){b=b|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+32|0;k=q+24|0;r=q+16|0;l=q+8|0;m=q+4|0;h=q;o=q+28|0;n=q+20|0;j=q+12|0;c[r>>2]=b;c[l>>2]=d;c[m>>2]=f;c[h>>2]=g;d=c[r>>2]|0;if(!(0==(c[l>>2]|0)|0==(c[m>>2]|0))?0!=(c[d+108>>2]|0):0){c[o>>2]=96;c[n>>2]=-1;c[j>>2]=e[d+40+12>>1];if(c[(c[h>>2]|0)+92+4>>2]|0)c[j>>2]=c[(c[h>>2]|0)+92+4>>2];f=c[j>>2]|0;a:do if((f|0)<28673){if((f|0)<4115)switch(f|0){case 4114:case 4113:{p=9;break a}default:{p=14;break a}}if((f|0)<8193)switch(f|0){case 4115:{p=9;break a}default:{p=14;break a}}if((f|0)>=28672)switch(f|0){case 28672:{p=13;break a}default:{p=14;break a}}switch(f|0){case 8193:break;default:{p=14;break a}}c[n>>2]=104}else switch(f|0){case 29217:{p=9;break a}case 28673:{p=13;break a}case 28944:{c[n>>2]=0;break a}case 28945:{c[n>>2]=8;break a}case 29282:{c[n>>2]=102;break a}case 29280:{c[n>>2]=103;break a}default:{p=14;break a}}while(0);if((p|0)==9)c[n>>2]=98;else if((p|0)==13)c[n>>2]=11;else if((p|0)==14)c[n>>2]=-1;r=c[d+108>>2]|0;a[r>>0]=a[o>>0]|0;a[r+1>>0]=a[o+1>>0]|0;a[r+2>>0]=a[o+2>>0]|0;a[r+3>>0]=a[o+3>>0]|0;r=(c[d+108>>2]|0)+4|0;a[r>>0]=a[n>>0]|0;a[r+1>>0]=a[n+1>>0]|0;a[r+2>>0]=a[n+2>>0]|0;a[r+3>>0]=a[n+3>>0]|0;c[c[l>>2]>>2]=c[d+108>>2];c[c[m>>2]>>2]=c[d+112>>2];c[k>>2]=0;r=c[k>>2]|0;i=q;return r|0}c[k>>2]=-2147483393;r=c[k>>2]|0;i=q;return r|0}function nf(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+176|0;o=n+160|0;g=n+136|0;h=n+4|0;j=n;k=n+164|0;m=n+144|0;l=n+8|0;c[o>>2]=a;c[g>>2]=d;c[h>>2]=e;c[j>>2]=f;d=c[o>>2]|0;c[k>>2]=0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;e=l;f=e+128|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));switch(c[d+4>>2]|0){case 1:{if(!(c[d+88>>2]|0)){o=c[k>>2]|0;i=n;return o|0}c[m>>2]=c[d+24>>2];c[m+4>>2]=c[d+28>>2];c[m+8>>2]=c[g>>2];mb[c[d+88>>2]&1](m,c[d+84>>2]|0);o=c[k>>2]|0;i=n;return o|0}case 0:{if(!(c[d+96>>2]|0)){o=c[k>>2]|0;i=n;return o|0}c[m>>2]=c[d+24>>2];c[m+4>>2]=c[d+28>>2];c[m+8>>2]=c[g>>2];mb[c[d+96>>2]&1](m,c[d+92>>2]|0);o=c[k>>2]|0;i=n;return o|0}case 2:{if(!(c[d+12>>2]|0)){o=c[k>>2]|0;i=n;return o|0}c[l>>2]=c[d+24>>2];c[l+4>>2]=c[d+28>>2];b[l+8>>1]=c[g>>2];b[l+10>>1]=pq(c[c[j>>2]>>2]|0)|0;c[l+12>>2]=c[(c[j>>2]|0)+12>>2];b[l+20>>1]=c[h>>2];mb[c[d+12>>2]&1](l,c[d+8>>2]|0);o=c[k>>2]|0;i=n;return o|0}default:{c[k>>2]=-2147483647;o=c[k>>2]|0;i=n;return o|0}}return 0}function of(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+4|0;e=g;f=g+8|0;c[h>>2]=b;c[e>>2]=d;d=c[h>>2]|0;b=d+28|0;h=c[b>>2]|0;c[b>>2]=h+1;a[(c[d+24>>2]|0)+h>>0]=0;h=d+28|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[d+24>>2]|0)+b>>0]=2;b=d+28|0;h=c[b>>2]|0;c[b>>2]=h+1;a[(c[d+24>>2]|0)+h>>0]=0;h=d+28|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[d+24>>2]|0)+b>>0]=0;c[f>>2]=(c[d+28>>2]|0)-2;pf(d,c[e>>2]|0)|0;if(c[(c[e>>2]|0)+124>>2]|0)qf(d,c[e>>2]|0)|0;if(c[(c[e>>2]|0)+92>>2]|0)rf(d,c[e>>2]|0)|0;a[(c[d+24>>2]|0)+(c[f>>2]|0)>>0]=((((c[d+28>>2]|0)-2-(c[f>>2]|0)|0)>>>0)/4|0)>>>8;a[(c[d+24>>2]|0)+((c[f>>2]|0)+1)>>0]=(((c[d+28>>2]|0)-2-(c[f>>2]|0)|0)>>>0)/4|0;i=g;return 0}function pf(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,j=0,k=0,l=0;j=i;i=i+16|0;k=j+8|0;f=j;e=j+12|0;h=j+4|0;c[k>>2]=b;c[f>>2]=d;b=c[k>>2]|0;k=b+28|0;l=c[k>>2]|0;c[k>>2]=l+1;a[(c[b+24>>2]|0)+l>>0]=66;l=b+28|0;k=c[l>>2]|0;c[l>>2]=k+1;a[(c[b+24>>2]|0)+k>>0]=14;k=b+28|0;l=c[k>>2]|0;c[k>>2]=l+1;a[(c[b+24>>2]|0)+l>>0]=0;l=b+28|0;k=c[l>>2]|0;c[l>>2]=k+1;a[(c[b+24>>2]|0)+k>>0]=0;k=b+28|0;l=c[k>>2]|0;c[k>>2]=l+1;a[(c[b+24>>2]|0)+l>>0]=-96;l=b+28|0;k=c[l>>2]|0;c[l>>2]=k+1;a[(c[b+24>>2]|0)+k>>0]=33;k=(c[(c[f>>2]|0)+16>>2]|0)>>>8&255;l=b+28|0;d=c[l>>2]|0;c[l>>2]=d+1;a[(c[b+24>>2]|0)+d>>0]=k;d=c[(c[f>>2]|0)+16>>2]&255;k=b+28|0;l=c[k>>2]|0;c[k>>2]=l+1;a[(c[b+24>>2]|0)+l>>0]=d;l=(c[(c[f>>2]|0)+20>>2]|0)>>>8&255;d=b+28|0;k=c[d>>2]|0;c[d>>2]=k+1;a[(c[b+24>>2]|0)+k>>0]=l;k=c[(c[f>>2]|0)+20>>2]&255;l=b+28|0;d=c[l>>2]|0;c[l>>2]=d+1;a[(c[b+24>>2]|0)+d>>0]=k;d=c[(c[f>>2]|0)+24>>2]<<7&128|c[(c[f>>2]|0)+28>>2]<<5&96;if((c[b+100>>2]|0)>>>0>1){k=(d|c[b+104>>2]<<4&16|c[(c[f>>2]|0)+48>>2]<<3&8)&255;d=b+28|0;l=c[d>>2]|0;c[d>>2]=l+1;a[(c[b+24>>2]|0)+l>>0]=k}else{k=(d|16|c[(c[f>>2]|0)+48>>2]<<3&4)&255;d=b+28|0;l=c[d>>2]|0;c[d>>2]=l+1;a[(c[b+24>>2]|0)+l>>0]=k}c[e>>2]=0;if(256==(c[b+100>>2]|0))c[e>>2]=c[(c[f>>2]|0)+56>>2];else c[e>>2]=3;d=c[e>>2]&3;if(c[(c[f>>2]|0)+24>>2]|0){k=b+28|0;l=c[k>>2]|0;c[k>>2]=l+1;a[(c[b+24>>2]|0)+l>>0]=d}else{k=b+28|0;l=c[k>>2]|0;c[k>>2]=l+1;a[(c[b+24>>2]|0)+l>>0]=16|d}l=b+28|0;k=c[l>>2]|0;c[l>>2]=k+1;a[(c[b+24>>2]|0)+k>>0]=-1;c[h>>2]=~~(+g[(c[f>>2]|0)+60>>2]*90.0)>>>0;f=(c[h>>2]|0)>>>15&255;k=b+28|0;l=c[k>>2]|0;c[k>>2]=l+1;a[(c[b+24>>2]|0)+l>>0]=f;l=(c[h>>2]|0)>>>7&255;f=b+28|0;k=c[f>>2]|0;c[f>>2]=k+1;a[(c[b+24>>2]|0)+k>>0]=l;k=(c[h>>2]<<1&254|1)&255;h=b+28|0;l=c[h>>2]|0;c[h>>2]=l+1;a[(c[b+24>>2]|0)+l>>0]=k;i=j;return 0}function qf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+4|0;f=e;c[h>>2]=b;c[f>>2]=d;d=c[h>>2]|0;b=d+28|0;h=c[b>>2]|0;c[b>>2]=h+1;a[(c[d+24>>2]|0)+h>>0]=68;h=d+28|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[d+24>>2]|0)+b>>0]=10;b=(c[(c[f>>2]|0)+124+4>>2]|0)>>>8&255;h=d+28|0;g=c[h>>2]|0;c[h>>2]=g+1;a[(c[d+24>>2]|0)+g>>0]=b;g=c[(c[f>>2]|0)+124+4>>2]&255;b=d+28|0;h=c[b>>2]|0;c[b>>2]=h+1;a[(c[d+24>>2]|0)+h>>0]=g;h=((c[(c[f>>2]|0)+124+8>>2]|0)>>>8&255|128)&255;g=d+28|0;b=c[g>>2]|0;c[g>>2]=b+1;a[(c[d+24>>2]|0)+b>>0]=h;b=c[(c[f>>2]|0)+124+8>>2]&255;h=d+28|0;g=c[h>>2]|0;c[h>>2]=g+1;a[(c[d+24>>2]|0)+g>>0]=b;g=(c[(c[f>>2]|0)+124+12>>2]|0)>>>8&255;b=d+28|0;h=c[b>>2]|0;c[b>>2]=h+1;a[(c[d+24>>2]|0)+h>>0]=g;h=c[(c[f>>2]|0)+124+12>>2]&255;g=d+28|0;b=c[g>>2]|0;c[g>>2]=b+1;a[(c[d+24>>2]|0)+b>>0]=h;b=(c[(c[f>>2]|0)+124+16>>2]|0)>>>8&255;h=d+28|0;g=c[h>>2]|0;c[h>>2]=g+1;a[(c[d+24>>2]|0)+g>>0]=b;f=c[(c[f>>2]|0)+124+16>>2]&255;g=d+28|0;b=c[g>>2]|0;c[g>>2]=b+1;a[(c[d+24>>2]|0)+b>>0]=f;b=d+28|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[d+24>>2]|0)+f>>0]=-1;f=d+28|0;b=c[f>>2]|0;c[f>>2]=b+1;a[(c[d+24>>2]|0)+b>>0]=-1;i=e;return 0}function rf(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+4|0;g=e;c[h>>2]=b;c[g>>2]=d;d=c[h>>2]|0;h=d+28|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[d+24>>2]|0)+b>>0]=67;b=d+28|0;h=c[b>>2]|0;c[b>>2]=h+1;a[(c[d+24>>2]|0)+h>>0]=10;h=(c[(c[g>>2]|0)+92+24>>2]|0)>>>8&255;b=d+28|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[d+24>>2]|0)+f>>0]=h;f=c[(c[g>>2]|0)+92+24>>2]&255;h=d+28|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[d+24>>2]|0)+b>>0]=f;b=(254|(c[(c[g>>2]|0)+92+12>>2]|0)-1&1)&255;f=d+28|0;h=c[f>>2]|0;c[f>>2]=h+1;a[(c[d+24>>2]|0)+h>>0]=b;h=(c[(c[g>>2]|0)+92+16>>2]|0)>>>14&255;b=d+28|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[d+24>>2]|0)+f>>0]=h;f=(c[(c[g>>2]|0)+92+16>>2]|0)>>>6&255;h=d+28|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[d+24>>2]|0)+b>>0]=f;b=(c[(c[g>>2]|0)+92+16>>2]<<2&252|3)&255;f=d+28|0;h=c[f>>2]|0;c[f>>2]=h+1;a[(c[d+24>>2]|0)+h>>0]=b;h=(c[(c[g>>2]|0)+92+20>>2]|0)>>>14&255;b=d+28|0;f=c[b>>2]|0;c[b>>2]=f+1;a[(c[d+24>>2]|0)+f>>0]=h;f=(c[(c[g>>2]|0)+92+20>>2]|0)>>>6&255;h=d+28|0;b=c[h>>2]|0;c[h>>2]=b+1;a[(c[d+24>>2]|0)+b>>0]=f;b=(c[(c[g>>2]|0)+92+20>>2]<<2&252|3)&255;g=d+28|0;f=c[g>>2]|0;c[g>>2]=f+1;a[(c[d+24>>2]|0)+f>>0]=b;f=d+28|0;b=c[f>>2]|0;c[f>>2]=b+1;a[(c[d+24>>2]|0)+b>>0]=-1;i=e;return 0}function sf(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;g=l+16|0;m=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=f;d=c[m>>2]|0;switch(e[d+40+10>>1]|0|0){case 256:case 1:{c[g>>2]=tf(d,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;m=c[g>>2]|0;i=l;return m|0}case 5:{c[g>>2]=wf(d,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;m=c[g>>2]|0;i=l;return m|0}case 3:{c[g>>2]=yf(d,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;m=c[g>>2]|0;i=l;return m|0}default:{c[g>>2]=-2147483647;m=c[g>>2]|0;i=l;return m|0}}return 0}function tf(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;g=n+20|0;o=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;m=n+24|0;l=n;c[o>>2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;b=c[o>>2]|0;if((c[j>>2]|0)>>>0<4){c[g>>2]=-2147483644;o=c[g>>2]|0;i=n;return o|0}if(((0==(d[c[h>>2]>>0]|0|0)?0==(d[(c[h>>2]|0)+1>>0]|0|0):0)?0==(d[(c[h>>2]|0)+2>>0]|0|0):0)?1==(d[(c[h>>2]|0)+3>>0]|0|0):0){do{c[h>>2]=(c[h>>2]|0)+4;c[j>>2]=(c[j>>2]|0)-4;c[m>>2]=$e(b,c[h>>2]|0,c[j>>2]|0)|0;e=c[h>>2]|0;if((c[m>>2]|0)==-1){c[g>>2]=uf(b,e,c[j>>2]|0,c[k>>2]|0,1)|0;c[l>>2]=1}else{uf(b,e,c[m>>2]|0,c[k>>2]|0,0)|0;c[h>>2]=(c[h>>2]|0)+(c[m>>2]|0);c[j>>2]=(c[j>>2]|0)-(c[m>>2]|0);c[l>>2]=0}}while((c[l>>2]|0)>>>0<1);o=c[g>>2]|0;i=n;return o|0}c[g>>2]=-2147483647;o=c[g>>2]|0;i=n;return o|0}
function uf(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=i;i=i+48|0;j=s+28|0;t=s+20|0;k=s+12|0;l=s+8|0;m=s+4|0;n=s;r=s+32|0;o=s+24|0;p=s+16|0;q=s+36|0;c[t>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;h=c[t>>2]|0;if((c[l>>2]|0)>>>0<=(c[h+20>>2]|0)>>>0){gf(h,96,(c[(c[m>>2]|0)+12>>2]|0)*90|0,c[n>>2]|0)|0;vf(h,c[k>>2]|0,c[l>>2]|0)|0;c[j>>2]=jf(h,2,c[n>>2]|0,c[m>>2]|0)|0;t=c[j>>2]|0;i=s;return t|0}c[r>>2]=c[h+20>>2];c[o>>2]=1;c[p>>2]=0;a[q>>0]=a[c[k>>2]>>0]|0;do{if((c[l>>2]|0)>>>0<=(c[r>>2]|0)>>>0){c[r>>2]=c[l>>2];c[p>>2]=1}gf(h,96,(c[(c[m>>2]|0)+12>>2]|0)*90|0,(c[p>>2]|0?(c[n>>2]|0)!=0:0)&1)|0;do if(!(c[o>>2]|0)){t=(c[p>>2]|0)!=0;b=((d[q>>0]|0)&96|28)&255;g=h+28|0;f=c[g>>2]|0;c[g>>2]=f+1;a[(c[h+24>>2]|0)+f>>0]=b;f=(d[q>>0]|0)&31;if(t){b=h+28|0;t=c[b>>2]|0;c[b>>2]=t+1;a[(c[h+24>>2]|0)+t>>0]=f|64;vf(h,c[k>>2]|0,c[r>>2]|0)|0;break}else{b=h+28|0;t=c[b>>2]|0;c[b>>2]=t+1;a[(c[h+24>>2]|0)+t>>0]=f;vf(h,c[k>>2]|0,c[r>>2]|0)|0;break}}else{g=((d[q>>0]|0)&224|28)&255;t=h+28|0;b=c[t>>2]|0;c[t>>2]=b+1;a[(c[h+24>>2]|0)+b>>0]=g;b=((d[q>>0]|0)&31|128)&255;g=h+28|0;t=c[g>>2]|0;c[g>>2]=t+1;a[(c[h+24>>2]|0)+t>>0]=b;vf(h,(c[k>>2]|0)+1|0,(c[r>>2]|0)-1|0)|0}while(0);jf(h,2,(c[p>>2]|0?(c[n>>2]|0)!=0:0)&1,c[m>>2]|0)|0;c[k>>2]=(c[k>>2]|0)+(c[r>>2]|0);c[l>>2]=(c[l>>2]|0)-(c[r>>2]|0);c[o>>2]=0}while((c[l>>2]|0)!=0);c[j>>2]=0;t=c[j>>2]|0;i=s;return t|0}function vf(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;g=m+16|0;n=m+8|0;h=m+4|0;j=m;k=m+20|0;l=m+12|0;c[n>>2]=b;c[h>>2]=e;c[j>>2]=f;f=c[n>>2]|0;if(((c[f+28>>2]|0)+(c[j>>2]|0)|0)>>>0>8192){c[g>>2]=-2147483643;n=c[g>>2]|0;i=m;return n|0}Tx((c[f+24>>2]|0)+(c[f+28>>2]|0)|0,c[h>>2]|0,c[j>>2]|0)|0;n=f+28|0;c[n>>2]=(c[n>>2]|0)+(c[j>>2]|0);if(((c[f+28>>2]|0)>>>0)%4|0|0){c[k>>2]=4-(((c[f+28>>2]|0)>>>0)%4|0);c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break;j=f+28|0;n=c[j>>2]|0;c[j>>2]=n+1;a[(c[f+24>>2]|0)+n>>0]=0;c[l>>2]=(c[l>>2]|0)+1}a[(c[f+24>>2]|0)+((c[f+28>>2]|0)-1)>>0]=c[k>>2];n=c[f+24>>2]|0;a[n>>0]=d[n>>0]|0|32}c[g>>2]=0;n=c[g>>2]|0;i=m;return n|0}function wf(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;g=n+20|0;o=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;m=n+24|0;l=n;c[o>>2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;b=c[o>>2]|0;if((c[j>>2]|0)>>>0<4){c[g>>2]=-2147483393;o=c[g>>2]|0;i=n;return o|0}if(((0==(d[c[h>>2]>>0]|0|0)?0==(d[(c[h>>2]|0)+1>>0]|0|0):0)?0==(d[(c[h>>2]|0)+2>>0]|0|0):0)?1==(d[(c[h>>2]|0)+3>>0]|0|0):0){do{c[h>>2]=(c[h>>2]|0)+4;c[j>>2]=(c[j>>2]|0)-4;c[m>>2]=$e(b,c[h>>2]|0,c[j>>2]|0)|0;e=c[h>>2]|0;if((c[m>>2]|0)==-1){c[g>>2]=xf(b,e,c[j>>2]|0,c[k>>2]|0,1)|0;c[l>>2]=1}else{xf(b,e,c[m>>2]|0,c[k>>2]|0,0)|0;c[h>>2]=(c[h>>2]|0)+(c[m>>2]|0);c[j>>2]=(c[j>>2]|0)-(c[m>>2]|0);c[l>>2]=0}}while((c[l>>2]|0)>>>0<1);o=c[g>>2]|0;i=n;return o|0}c[g>>2]=-2147483393;o=c[g>>2]|0;i=n;return o|0}function xf(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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;v=i;i=i+48|0;j=v+36|0;w=v+28|0;k=v+20|0;l=v+16|0;m=v+12|0;n=v+4|0;u=v+40|0;p=v+32|0;q=v+24|0;r=v+45|0;s=v+44|0;t=v+8|0;o=v;c[w>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;h=c[w>>2]|0;c[u>>2]=c[h+20>>2];c[p>>2]=1;c[q>>2]=0;a[r>>0]=a[c[k>>2]>>0]|0;a[s>>0]=a[(c[k>>2]|0)+1>>0]|0;c[t>>2]=((d[c[k>>2]>>0]|0)&126)>>1;if((c[l>>2]|0)>>>0<=(c[h+20>>2]|0)>>>0){gf(h,96,(c[(c[m>>2]|0)+12>>2]|0)*90|0,c[n>>2]|0)|0;vf(h,c[k>>2]|0,c[l>>2]|0)|0;c[j>>2]=jf(h,2,c[n>>2]|0,c[m>>2]|0)|0;c[o>>2]=1;w=c[j>>2]|0;i=v;return w|0}do{if((c[l>>2]|0)>>>0<=(c[u>>2]|0)>>>0){c[u>>2]=c[l>>2];c[q>>2]=1}gf(h,96,(c[(c[m>>2]|0)+12>>2]|0)*90|0,(c[q>>2]|0?(c[n>>2]|0)!=0:0)&1)|0;g=((d[r>>0]|0)&129|98)&255;w=h+28|0;b=c[w>>2]|0;c[w>>2]=b+1;a[(c[h+24>>2]|0)+b>>0]=g;b=a[s>>0]|0;g=h+28|0;w=c[g>>2]|0;c[g>>2]=w+1;a[(c[h+24>>2]|0)+w>>0]=b;do if(!(c[p>>2]|0)){f=c[t>>2]|0;if(c[q>>2]|0){b=h+28|0;w=c[b>>2]|0;c[b>>2]=w+1;a[(c[h+24>>2]|0)+w>>0]=64|f;vf(h,c[k>>2]|0,c[u>>2]|0)|0;break}else{b=h+28|0;w=c[b>>2]|0;c[b>>2]=w+1;a[(c[h+24>>2]|0)+w>>0]=f&63;vf(h,c[k>>2]|0,c[u>>2]|0)|0;break}}else{b=(128|c[t>>2])&255;g=h+28|0;w=c[g>>2]|0;c[g>>2]=w+1;a[(c[h+24>>2]|0)+w>>0]=b;vf(h,(c[k>>2]|0)+2|0,(c[u>>2]|0)-2|0)|0}while(0);jf(h,2,c[n>>2]|0,c[m>>2]|0)|0;c[k>>2]=(c[k>>2]|0)+(c[u>>2]|0);c[l>>2]=(c[l>>2]|0)-(c[u>>2]|0);c[p>>2]=0}while((c[l>>2]|0)!=0);c[j>>2]=0;c[o>>2]=1;w=c[j>>2]|0;i=v;return w|0}function yf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;m=l+16|0;f=l+8|0;g=l+4|0;h=l;k=l+20|0;j=l+12|0;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;d=c[m>>2]|0;c[k>>2]=c[d+20>>2];c[j>>2]=0;do{if((c[g>>2]|0)>>>0<=(c[k>>2]|0)>>>0){c[k>>2]=c[g>>2];c[j>>2]=1}gf(d,96,(c[(c[h>>2]|0)+12>>2]|0)*90|0,c[j>>2]|0)|0;vf(d,c[f>>2]|0,c[k>>2]|0)|0;jf(d,2,1,c[h>>2]|0)|0;c[f>>2]=(c[f>>2]|0)+(c[k>>2]|0);c[g>>2]=(c[g>>2]|0)-(c[k>>2]|0)}while((c[g>>2]|0)!=0);i=l;return 0}function zf(b,d,f,g){b=b|0;d=d|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=i;i=i+32|0;h=o+24|0;r=o+16|0;q=o+12|0;p=o+8|0;j=o+4|0;m=o+28|0;l=o+20|0;k=o;c[r>>2]=b;c[q>>2]=d;c[p>>2]=f;c[j>>2]=g;d=c[r>>2]|0;c[m>>2]=c[q>>2];c[l>>2]=c[p>>2];f=e[d+40+12>>1]|0;a:do if((f|0)<28673){if((f|0)<8192)switch(f|0){case 4115:case 4114:case 4113:{n=4;break a}default:{n=13;break a}}if((f|0)<8193){switch(f|0){case 8192:break;default:{n=13;break a}}gf(d,14,$(c[(c[j>>2]|0)+12>>2]|0,((c[(c[j>>2]|0)+92+16>>2]|0)>>>0)/1e3|0)|0,1)|0;r=d+28|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[d+24>>2]|0)+q>>0]=0;q=d+28|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[d+24>>2]|0)+r>>0]=0;r=d+28|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[d+24>>2]|0)+q>>0]=0;q=d+28|0;r=c[q>>2]|0;c[q>>2]=r+1;a[(c[d+24>>2]|0)+r>>0]=0;break}if((f|0)>=28672)switch(f|0){case 28672:{n=12;break a}default:{n=13;break a}}switch(f|0){case 8193:break;default:{n=13;break a}}gf(d,104,$(c[(c[j>>2]|0)+12>>2]|0,((c[(c[j>>2]|0)+92+16>>2]|0)>>>0)/1e3|0)|0,1)|0;if(c[(c[j>>2]|0)+92+28>>2]|0){c[m>>2]=(c[m>>2]|0)+3;c[l>>2]=(c[l>>2]|0)-3;a[c[m>>2]>>0]=0;a[(c[m>>2]|0)+1>>0]=16;a[(c[m>>2]|0)+2>>0]=((c[l>>2]|0)-4|0)>>>5;a[(c[m>>2]|0)+3>>0]=(c[l>>2]|0)-4<<3;break}if(4!=(e[d+40+8>>1]|0|0)){p=d+28|0;r=c[p>>2]|0;c[p>>2]=r+1;a[(c[d+24>>2]|0)+r>>0]=0;r=d+28|0;p=c[r>>2]|0;c[r>>2]=p+1;a[(c[d+24>>2]|0)+p>>0]=16;p=(c[l>>2]|0)>>>5&255;r=d+28|0;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[d+24>>2]|0)+q>>0]=p;q=c[l>>2]<<3&255;p=d+28|0;r=c[p>>2]|0;c[p>>2]=r+1;a[(c[d+24>>2]|0)+r>>0]=q}}else switch(f|0){case 29217:{n=4;break a}case 28673:{n=12;break a}case 28944:{gf(d,0,c[(c[j>>2]|0)+12>>2]<<3,1)|0;break a}case 28945:{gf(d,8,c[(c[j>>2]|0)+12>>2]<<3,1)|0;break a}case 29282:{gf(d,102,c[(c[j>>2]|0)+12>>2]<<3,1)|0;break a}case 29281:case 29280:{gf(d,103,c[(c[j>>2]|0)+12>>2]<<3,1)|0;break a}default:{n=13;break a}}while(0);if((n|0)==4)gf(d,98,c[(c[j>>2]|0)+12>>2]<<3,1)|0;else if((n|0)==12)gf(d,11,c[(c[j>>2]|0)+12>>2]<<3,1)|0;else if((n|0)==13){c[h>>2]=-2147483647;c[k>>2]=1;r=c[h>>2]|0;i=o;return r|0}vf(d,c[m>>2]|0,c[l>>2]|0)|0;c[h>>2]=jf(d,3,1,c[j>>2]|0)|0;c[k>>2]=1;r=c[h>>2]|0;i=o;return r|0}function Af(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+48|0;q=p+24|0;g=p+16|0;h=p+8|0;j=p+4|0;m=p+28|0;l=p+20|0;k=p+12|0;o=p+32|0;n=p;c[q>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=f;b=c[q>>2]|0;c[m>>2]=c[b+20>>2];c[l>>2]=0;c[k>>2]=1;if((c[h>>2]|0)>>>0>(c[m>>2]|0)>>>0){e=o;d=c[g>>2]|0;f=e+12|0;do{a[e>>0]=a[d>>0]|0;e=e+1|0;d=d+1|0}while((e|0)<(f|0))}do{e=c[h>>2]|0;if(c[k>>2]|0){if(e>>>0<=(c[m>>2]|0)>>>0){c[m>>2]=c[h>>2];c[l>>2]=1}c[n>>2]=(((c[m>>2]|0)-4|0)>>>0)/4|0;a[(c[g>>2]|0)+2>>0]=(c[n>>2]&65280)>>>8;a[(c[g>>2]|0)+3>>0]=c[n>>2]}else{if((e+12|0)>>>0<=(c[m>>2]|0)>>>0){c[m>>2]=c[h>>2];c[l>>2]=1}else c[m>>2]=(c[b+20>>2]|0)-12;c[n>>2]=(((c[m>>2]|0)-4|0)>>>0)/4|0;a[o+2>>0]=(c[n>>2]&65280)>>>8;a[o+3>>0]=c[n>>2]}gf(b,112,(c[(c[j>>2]|0)+12>>2]|0)*90|0,c[l>>2]|0)|0;if(c[k>>2]|0){vf(b,c[g>>2]|0,c[m>>2]|0)|0;c[k>>2]=0}else{vf(b,o,12)|0;vf(b,c[g>>2]|0,c[m>>2]|0)|0}jf(b,4,1,c[j>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+(c[m>>2]|0);c[h>>2]=(c[h>>2]|0)-(c[m>>2]|0)}while((c[h>>2]|0)!=0);i=p;return 0}function Bf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+16>>2]=2;a=Cf(a)|0;i=b;return a|0}function Cf(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=a;a=c[e>>2]|0;c[a+28>>2]=0;c[a+80>>2]=0;b[a+32>>1]=0;b[a+34>>1]=0;b[a+36>>1]=0;i=d;return 0}function Df(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=c[h>>2]|0;c[a+4>>2]=1;c[a+88>>2]=c[g>>2];c[a+84>>2]=c[f>>2];c[a+96>>2]=0;c[a+92>>2]=0;c[a+12>>2]=0;c[a+8>>2]=0;i=e;return 0}function Ef(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=c[h>>2]|0;c[a+4>>2]=0;c[a+88>>2]=0;c[a+84>>2]=0;c[a+96>>2]=c[g>>2];c[a+92>>2]=c[f>>2];c[a+12>>2]=0;c[a+8>>2]=0;i=e;return 0}function Ff(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=c[h>>2]|0;c[a+4>>2]=2;c[a+12>>2]=c[g>>2];c[a+8>>2]=c[f>>2];c[a+88>>2]=0;c[a+84>>2]=0;c[a+96>>2]=0;c[a+92>>2]=0;i=e;return 0}function Gf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+16>>2]=c[f>>2];i=d;return 0}function Hf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;j=k+8|0;g=k+4|0;f=k;c[g>>2]=d;c[f>>2]=e;g=c[g>>2]|0;if(!(c[f>>2]|0)){c[j>>2]=-2147483645;j=c[j>>2]|0;i=k;return j|0}else{h=g+40|0;e=c[f>>2]|0;d=h+40|0;do{a[h>>0]=a[e>>0]|0;h=h+1|0;e=e+1|0}while((h|0)<(d|0));b[g+40+8>>1]=4;c[j>>2]=0;j=c[j>>2]|0;i=k;return j|0}return 0}function If(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f;c[d>>2]=a;a=c[d>>2]|0;nd(a);c[a>>2]=828;c[a+16>>2]=2;c[a+20>>2]=0;c[a+24>>2]=0;c[a+28>>2]=0;b[a+32>>1]=0;b[a+34>>1]=0;b[a+36>>1]=0;d=a+40|0;e=d+40|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));c[a+80>>2]=0;c[a+4>>2]=1;c[a+8>>2]=0;c[a+12>>2]=0;c[a+88>>2]=0;c[a+84>>2]=0;c[a+96>>2]=0;c[a+92>>2]=0;c[a+100>>2]=0;c[a+104>>2]=1;c[a+108>>2]=0;c[a+112>>2]=0;c[a+116>>2]=0;c[a+120>>2]=0;c[a+124>>2]=0;c[a+128>>2]=0;c[a+136>>2]=0;c[a+132>>2]=0;i=f;return}function Jf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=900;nb[c[(c[a>>2]|0)+32>>2]&127](a)|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;zc(a);i=b;return}function Kf(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;Jf(a);lx(a);i=b;return}function Lf(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[a+288>>2]=Ix(c[a+292>>2]|0)|0;if(!(c[a+288>>2]|0)){nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[b>>2]=-2147483646;e=c[b>>2]|0;i=d;return e|0}c[a+300>>2]=Ix(1048576)|0;if(!(c[a+300>>2]|0)){nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[b>>2]=-2147483646;e=c[b>>2]|0;i=d;return e|0}else{c[a+304>>2]=1048576;c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}return 0}function Mf(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;b=c[b>>2]|0;if(c[b+288>>2]|0){a=c[b+288>>2]|0;if(a|0)Jx(a);c[b+288>>2]=0}if(!(c[b+300>>2]|0)){i=d;return 0}a=c[b+300>>2]|0;if(a|0)Jx(a);c[b+300>>2]=0;i=d;return 0}function Nf(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+32|0;m=p+16|0;k=p+12|0;l=p+8|0;n=p+4|0;j=p+20|0;o=p;c[k>>2]=f;c[l>>2]=g;c[n>>2]=h;k=c[k>>2]|0;if(!(c[l>>2]|0)){c[m>>2]=-2147483645;o=c[m>>2]|0;i=p;return o|0}c[j>>2]=(d[c[l>>2]>>0]|0)+((d[(c[l>>2]|0)+1>>0]|0)<<8)+((d[(c[l>>2]|0)+2>>0]|0)<<16)+((d[(c[l>>2]|0)+3>>0]|0)<<24);h=c[j>>2]|0;if((h|0)<1213418804)switch(h|0){case 1212893236:{j=4;break}default:j=5}else switch(h|0){case 1213418804:{j=4;break}default:j=5}if((j|0)==4)Of(k,c[l>>2]|0)|0;else if((j|0)==5){f=k+340|0;h=c[l>>2]|0;g=f+40|0;do{a[f>>0]=a[h>>0]|0;f=f+1|0;h=h+1|0}while((f|0)<(g|0));b[k+340+8>>1]=7}c[k+380>>2]=e[k+340+10>>1];c[k+380+4>>2]=e[k+340+12>>1];c[k+380+8>>2]=d[k+340+14>>0];c[k+380+12>>2]=d[k+340+15>>0];c[k+380+16>>2]=c[k+340+16>>2];c[k+380+20>>2]=c[k+340+20>>2];if((c[k+380>>2]|0)==1)c[k+380>>2]=256;if(((c[k+380>>2]|0)!=256?(c[k+380>>2]|0)!=3:0)?(c[k+380>>2]|0)!=4:0){c[m>>2]=-2147483645;c[o>>2]=1}else j=12;do if((j|0)==12){if((c[k+380>>2]|0)==0?(c[k+380+4>>2]|0)==0:0){c[m>>2]=-2147483645;c[o>>2]=1;break}if((c[n>>2]|0)>>>0<10240|(c[n>>2]|0)>>>0>3145728){c[k+292>>2]=1048576;c[m>>2]=0;c[o>>2]=1;break}else{c[k+292>>2]=c[n>>2];c[m>>2]=nb[c[(c[k>>2]|0)+8>>2]&127](k)|0;c[o>>2]=1;break}}while(0);o=c[m>>2]|0;i=p;return o|0}function Of(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0;h=i;i=i+16|0;k=h+4|0;j=h;g=h+8|0;c[k>>2]=d;c[j>>2]=f;d=c[k>>2]|0;c[g>>2]=c[j>>2];c[d+340>>2]=1212894537;b[d+340+10>>1]=7;f=d+340+10|0;if((c[c[g>>2]>>2]|0)==1212893236)b[f>>1]=1;else b[f>>1]=3;b[d+340+12>>1]=c[(c[g>>2]|0)+32>>2];a[d+340+14>>0]=(e[(c[g>>2]|0)+20>>1]|0)-4096;c[d+340+16>>2]=c[(c[g>>2]|0)+24>>2];a[d+340+15>>0]=b[(c[g>>2]|0)+22>>1];i=h;return 0}function Pf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;g=c[d>>2]|0;i=f;return g|0}nb[c[(c[b>>2]|0)+32>>2]&127](b)|0;c[b+20>>2]=zh(c[e>>2]|0,2)|0;if(!(c[b+20>>2]|0)){nb[c[(c[b>>2]|0)+32>>2]&127](b)|0;c[d>>2]=-2147483641;g=c[d>>2]|0;i=f;return g|0}else{c[b+16>>2]=0;c[d>>2]=0;g=c[d>>2]|0;i=f;return g|0}return 0}function Qf(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d+4|0;c[e>>2]=a;c[d>>2]=b;c[(c[e>>2]|0)+284>>2]=1;i=d;return -2147483647}function Rf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;f=m+20|0;n=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;c[n>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;d=c[n>>2]|0;if((c[d+16>>2]|0)==2){c[f>>2]=-2147483642;n=c[f>>2]|0;i=m;return n|0}if(0==(c[h>>2]|0)|0==(c[k>>2]|0)){c[f>>2]=-2147483645;n=c[f>>2]|0;i=m;return n|0}if(!(c[d+288>>2]|0)){c[f>>2]=-2147483645;n=c[f>>2]|0;i=m;return n|0}if(1==(c[d+284>>2]|0)){c[f>>2]=-2147483647;n=c[f>>2]|0;i=m;return n|0}switch(c[c[k>>2]>>2]|0){case 1:{l=10;break}case 4:case 3:case 2:break;default:{jq(5998,m);c[f>>2]=-2147483647;n=c[f>>2]|0;i=m;return n|0}}if((l|0)==10?0==(c[d+432>>2]|0):0){c[d+380+28>>2]=c[(c[k>>2]|0)+16>>2];c[d+380+32>>2]=c[(c[k>>2]|0)+20>>2];if(0.0==+g[(c[k>>2]|0)+60>>2])g[(c[k>>2]|0)+60>>2]=40.0;g[d+380+24>>2]=1.0e3/+g[(c[k>>2]|0)+60>>2];if(!(!(+g[d+380+24>>2]<0.0)?!(+g[d+380+24>>2]>100.0):0))g[d+380+24>>2]=25.0;c[d+432>>2]=1}c[f>>2]=Sf(d,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;n=c[f>>2]|0;i=m;return n|0}function Sf(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=i;i=i+48|0;f=m+28|0;p=m+20|0;n=m+12|0;o=m+8|0;g=m+4|0;l=m+32|0;k=m+24|0;h=m;j=m+16|0;c[p>>2]=a;c[n>>2]=b;c[o>>2]=d;c[g>>2]=e;d=c[p>>2]|0;c[l>>2]=c[n>>2];c[k>>2]=c[o>>2];if(0==(c[n>>2]|0)|0==(c[g>>2]|0)){c[f>>2]=-2147483645;c[h>>2]=1;p=c[f>>2]|0;i=m;return p|0}do if(!(c[d+436>>2]|0)){c[j>>2]=Tf(d)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0){p=c[f>>2]|0;i=m;return p|0}c[j>>2]=ag(d)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(!(c[h>>2]|0)){c[d+436>>2]=1;break}else{p=c[f>>2]|0;i=m;return p|0}}while(0);if(((((c[c[g>>2]>>2]|0)==4?(c[d+380+4>>2]|0)!=8192:0)?(c[d+380+4>>2]|0)!=28944:0)?(c[d+380+4>>2]|0)!=28945:0)?(c[d+380+4>>2]|0)!=8193:0){c[f>>2]=0;c[h>>2]=1;p=c[f>>2]|0;i=m;return p|0}if((4==(c[c[g>>2]>>2]|0)?8193==(c[d+380+4>>2]|0):0)?c[(c[g>>2]|0)+92+28>>2]|0:0){c[l>>2]=(c[l>>2]|0)+7;c[k>>2]=(c[k>>2]|0)-7}c[j>>2]=bg(d,c[l>>2]|0,c[k>>2]|0,c[g>>2]|0)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0){p=c[f>>2]|0;i=m;return p|0}c[j>>2]=cg(d,c[c[g>>2]>>2]|0,c[k>>2]|0)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0){p=c[f>>2]|0;i=m;return p|0}if((c[d+312>>2]|0)>>>0>1992294400){c[f>>2]=nb[c[(c[d>>2]|0)+32>>2]&127](d)|0;c[h>>2]=1;p=c[f>>2]|0;i=m;return p|0}else{c[f>>2]=0;c[h>>2]=1;p=c[f>>2]|0;i=m;return p|0}return 0}function Tf(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;b=j+16|0;k=j+12|0;e=j+20|0;d=j+4|0;f=j+8|0;g=j;c[k>>2]=a;a=c[k>>2]|0;c[e>>2]=Uf(a)|0;if(c[e>>2]|0){c[b>>2]=c[e>>2];c[d>>2]=1}else c[d>>2]=0;if((c[d>>2]|0)>>>0>=1){k=c[b>>2]|0;i=j;return k|0}c[e>>2]=Vf(a)|0;if(c[e>>2]|0){c[b>>2]=c[e>>2];c[d>>2]=1}else c[d>>2]=0;if((c[d>>2]|0)>>>0>=1){k=c[b>>2]|0;i=j;return k|0}c[e>>2]=0;if(c[a+380>>2]|0){c[f>>2]=Xf(a)|0;if(c[f>>2]|0){c[b>>2]=c[f>>2];c[d>>2]=1}else c[d>>2]=0;if(!(c[d>>2]|0)){c[e>>2]=(c[e>>2]|0)+1;h=15}}else h=15;do if((h|0)==15){if(!((((c[a+380+4>>2]|0)!=8192?(c[a+380+4>>2]|0)!=28944:0)?(c[a+380+4>>2]|0)!=28945:0)?(c[a+380+4>>2]|0)!=8193:0)){c[f>>2]=_f(a)|0;if(c[f>>2]|0){c[b>>2]=c[f>>2];c[d>>2]=1}else c[d>>2]=0;if(c[d>>2]|0)break;c[e>>2]=(c[e>>2]|0)+1}if((c[a+296>>2]|0)>>>0<8184){c[f>>2]=88+(c[e>>2]<<11);c[g>>2]=Zf(a,8192,c[f>>2]|0,c[f>>2]|0)|0;if(c[g>>2]|0){c[b>>2]=c[g>>2];c[d>>2]=1}else c[d>>2]=0;if(!(c[d>>2]|0))c[d>>2]=0;if(c[d>>2]|0)break}if(c[a+20>>2]|0){c[f>>2]=Hj(c[a+20>>2]|0,c[a+288>>2]|0,8192)|0;if(c[f>>2]|0){c[b>>2]=c[f>>2];c[d>>2]=1}else c[d>>2]=0;if(c[d>>2]|0)break}c[a+296>>2]=0;c[b>>2]=0;c[d>>2]=1}while(0);k=c[b>>2]|0;i=j;return k|0}function Uf(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;g=k+8|0;f=k+4|0;j=k+12|0;h=k;c[f>>2]=b;b=c[f>>2]|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j>>2]=1179011410;c[j+4>>2]=8184+(c[b+312>>2]|0)+(c[b+308>>2]|0);c[j+8>>2]=541677121;if(!(c[b+288>>2]|0)){c[g>>2]=-2147483644;c[h>>2]=1;j=c[g>>2]|0;i=k;return j|0}if(((c[b+296>>2]|0)+12|0)>>>0>(c[b+292>>2]|0)>>>0){c[g>>2]=-2147483643;c[h>>2]=1;j=c[g>>2]|0;i=k;return j|0}d=(c[b+288>>2]|0)+(c[b+296>>2]|0)|0;e=j;f=d+12|0;do{a[d>>0]=a[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(f|0));f=b+296|0;c[f>>2]=(c[f>>2]|0)+12;c[j>>2]=1414744396;c[j+4>>2]=8172;c[j+8>>2]=1819436136;if(((c[b+296>>2]|0)+12|0)>>>0>(c[b+292>>2]|0)>>>0){c[g>>2]=-2147483643;c[h>>2]=1;j=c[g>>2]|0;i=k;return j|0}else{d=(c[b+288>>2]|0)+(c[b+296>>2]|0)|0;e=j;f=d+12|0;do{a[d>>0]=a[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(f|0));j=b+296|0;c[j>>2]=(c[j>>2]|0)+12;c[g>>2]=0;c[h>>2]=1;j=c[g>>2]|0;i=k;return j|0}return 0}function Vf(b){b=b|0;var d=0,e=0,f=0,h=0,j=0,k=0,l=0;l=i;i=i+80|0;j=l+8|0;d=l+4|0;e=l+16|0;k=l;c[d>>2]=b;d=c[d>>2]|0;f=e;h=f+64|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e>>2]=1751742049;c[e+4>>2]=56;if(+g[d+380+24>>2]>-1.0e-06?+g[d+380+24>>2]<1.0e-06:0)g[d+380+24>>2]=25.0;c[e+8>>2]=~~(1.0e6/+g[d+380+24>>2])>>>0;c[e+12>>2]=0;c[e+16>>2]=0;c[e+20>>2]=2320;c[e+24>>2]=(c[d+380+36>>2]|0)+(c[d+380+40>>2]|0);c[e+28>>2]=0;c[e+32>>2]=Wf(d)|0;c[e+36>>2]=c[d+292>>2];c[e+40>>2]=c[d+380+28>>2];c[e+44>>2]=c[d+380+32>>2];if(((c[d+296>>2]|0)+64|0)>>>0>(c[d+292>>2]|0)>>>0){c[j>>2]=-2147483643;c[k>>2]=1;k=c[j>>2]|0;i=l;return k|0}else{f=(c[d+288>>2]|0)+(c[d+296>>2]|0)|0;b=e;h=f+64|0;do{a[f>>0]=a[b>>0]|0;f=f+1|0;b=b+1|0}while((f|0)<(h|0));h=d+296|0;c[h>>2]=(c[h>>2]|0)+64;c[j>>2]=0;c[k>>2]=1;k=c[j>>2]|0;i=l;return k|0}return 0}function Wf(a){a=a|0;var b=0,d=0,e=0,f=0;d=i;i=i+16|0;e=d;b=d+4|0;c[e>>2]=a;a=c[e>>2]|0;c[b>>2]=0;if(c[a+380>>2]|0)c[b>>2]=(c[b>>2]|0)+1;if((((c[a+380+4>>2]|0)!=8192?(c[a+380+4>>2]|0)!=28944:0)?(c[a+380+4>>2]|0)!=28945:0)?(c[a+380+4>>2]|0)!=8193:0){f=c[b>>2]|0;e=a+380|0;e=e+44|0;c[e>>2]=f;e=c[b>>2]|0;i=d;return e|0}c[b>>2]=(c[b>>2]|0)+1;e=c[b>>2]|0;f=a+380|0;f=f+44|0;c[f>>2]=e;f=c[b>>2]|0;i=d;return f|0}function Xf(d){d=d|0;var f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+160|0;l=r+136|0;j=r+128|0;f=r+140|0;n=r+132|0;m=r+40|0;o=r+64|0;k=r+56|0;p=r+44|0;q=r;c[j>>2]=d;j=c[j>>2]|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f>>2]=1414744396;c[f+4>>2]=2040;c[f+8>>2]=1819440243;c[n>>2]=c[j+296>>2];if(!(c[j+288>>2]|0)){c[l>>2]=-2147483644;c[m>>2]=1;q=c[l>>2]|0;i=r;return q|0}if(((c[j+296>>2]|0)+12|0)>>>0>1048576){c[l>>2]=-2147483643;c[m>>2]=1;q=c[l>>2]|0;i=r;return q|0}h=(c[j+288>>2]|0)+(c[j+296>>2]|0)|0;d=h+12|0;do{a[h>>0]=a[f>>0]|0;h=h+1|0;f=f+1|0}while((h|0)<(d|0));h=j+296|0;c[h>>2]=(c[h>>2]|0)+12;h=o;d=h+64|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(d|0));c[o>>2]=1752331379;c[o+4>>2]=56;c[o+8>>2]=1935960438;c[k>>2]=Yf(j,c[j+380>>2]|0)|0;do if(c[k>>2]|0){c[o+12>>2]=((c[k>>2]&255)<<24)+((c[k>>2]&65280)<<8)+((c[k>>2]&16711680)>>>8)+((c[k>>2]&-16777216)>>>24);c[o+16>>2]=0;b[o+20>>1]=0;b[o+22>>1]=0;c[o+24>>2]=0;d=o+28|0;if(+g[j+380+24>>2]-+(~~+g[j+380+24>>2]|0)<.0001){c[d>>2]=1;c[o+32>>2]=~~+g[j+380+24>>2]>>>0}else{c[d>>2]=1e6;c[o+32>>2]=~~(+g[j+380+24>>2]*1.0e6)>>>0}c[o+36>>2]=0;c[o+40>>2]=c[j+380+36>>2];c[o+44>>2]=1048576;c[o+48>>2]=0;c[o+52>>2]=0;b[o+56>>1]=0;b[o+56+2>>1]=0;b[o+56+4>>1]=c[j+380+28>>2];b[o+56+6>>1]=c[j+380+32>>2];if(((c[j+296>>2]|0)+64|0)>>>0>1048576){c[l>>2]=-2147483643;c[m>>2]=1;break}h=(c[j+288>>2]|0)+(c[j+296>>2]|0)|0;f=o;d=h+64|0;do{a[h>>0]=a[f>>0]|0;h=h+1|0;f=f+1|0}while((h|0)<(d|0));k=j+296|0;c[k>>2]=(c[k>>2]|0)+64;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p>>2]=1718776947;c[p+4>>2]=40;if(((c[j+296>>2]|0)+8|0)>>>0<=1048576){h=(c[j+288>>2]|0)+(c[j+296>>2]|0)|0;a[h>>0]=a[p>>0]|0;a[h+1>>0]=a[p+1>>0]|0;a[h+2>>0]=a[p+2>>0]|0;a[h+3>>0]=a[p+3>>0]|0;a[h+4>>0]=a[p+4>>0]|0;a[h+5>>0]=a[p+5>>0]|0;a[h+6>>0]=a[p+6>>0]|0;a[h+7>>0]=a[p+7>>0]|0;h=j+296|0;c[h>>2]=(c[h>>2]|0)+8;h=q;d=h+40|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(d|0));c[q>>2]=40;c[q+4>>2]=c[j+380+28>>2];c[q+8>>2]=c[j+380+32>>2];b[q+12>>1]=1;b[q+14>>1]=24;c[q+16>>2]=c[o+12>>2];p=$(c[q+4>>2]|0,c[q+8>>2]|0)|0;c[q+20>>2]=($(p,e[q+14>>1]|0)|0)>>3;c[q+24>>2]=0;c[q+28>>2]=0;c[q+32>>2]=0;c[q+36>>2]=0;if(((c[j+296>>2]|0)+40|0)>>>0<=1048576){h=(c[j+288>>2]|0)+(c[j+296>>2]|0)|0;f=q;d=h+40|0;do{a[h>>0]=a[f>>0]|0;h=h+1|0;f=f+1|0}while((h|0)<(d|0));q=j+296|0;c[q>>2]=(c[q>>2]|0)+40;Zf(j,2048,(c[j+296>>2]|0)-(c[n>>2]|0)|0,c[j+296>>2]|0)|0;c[j+296>>2]=(c[n>>2]|0)+2048;c[l>>2]=0;c[m>>2]=1}else{c[l>>2]=-2147483643;c[m>>2]=1}}else{c[l>>2]=-2147483643;c[m>>2]=1}}else{c[l>>2]=-2147483647;c[m>>2]=1}while(0);q=c[l>>2]|0;i=r;return q|0}function Yf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g;d=g+12|0;h=g+4|0;c[g+8>>2]=a;c[h>>2]=b;b=c[h>>2]|0;a:do if((b|0)>=8192)if((b|0)<28944)switch(b|0){case 8192:{c[d>>2]=80;break a}case 8193:{c[d>>2]=255;break a}default:{f=10;break a}}else switch(b|0){case 28944:{c[d>>2]=7;break a}case 28945:{c[d>>2]=6;break a}default:{f=10;break a}}else switch(b|0){case 3:{c[d>>2]=1297101910;break a}case 256:{c[d>>2]=1211250228;break a}case 4:{c[d>>2]=1296715847;break a}case 4096:{c[d>>2]=1;break a}default:{f=10;break a}}while(0);if((f|0)==10){jq(5914,e);c[d>>2]=0}i=g;return c[d>>2]|0}function Zf(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;n=i;i=i+48|0;g=n+24|0;p=n+16|0;o=n+12|0;h=n+8|0;j=n+4|0;m=n+28|0;k=n;l=n+20|0;c[p>>2]=b;c[o>>2]=d;c[h>>2]=e;c[j>>2]=f;f=c[p>>2]|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m>>2]=1263424842;c[m+4>>2]=(c[o>>2]|0)-(c[h>>2]|0)-8;if(!(c[f+288>>2]|0)){c[g>>2]=-2147483644;c[k>>2]=1;p=c[g>>2]|0;i=n;return p|0}if(((c[h>>2]|0)+8|0)>>>0>1048576){c[g>>2]=-2147483643;c[k>>2]=1;p=c[g>>2]|0;i=n;return p|0}p=(c[f+288>>2]|0)+(c[j>>2]|0)|0;a[p>>0]=a[m>>0]|0;a[p+1>>0]=a[m+1>>0]|0;a[p+2>>0]=a[m+2>>0]|0;a[p+3>>0]=a[m+3>>0]|0;a[p+4>>0]=a[m+4>>0]|0;a[p+5>>0]=a[m+5>>0]|0;a[p+6>>0]=a[m+6>>0]|0;a[p+7>>0]=a[m+7>>0]|0;c[j>>2]=(c[j>>2]|0)+8;c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[m+4>>2]|0)>>>0)break;p=c[j>>2]|0;c[j>>2]=p+1;a[(c[f+288>>2]|0)+p>>0]=0;c[l>>2]=(c[l>>2]|0)+1}c[k>>2]=2;c[g>>2]=0;c[k>>2]=1;p=c[g>>2]|0;i=n;return p|0}function _f(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+160|0;o=p;g=p+144|0;e=p+136|0;d=p+148|0;j=p+140|0;h=p+8|0;m=p+72|0;n=p+56|0;l=p+16|0;k=p+4|0;c[e>>2]=b;e=c[e>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=1414744396;c[d+4>>2]=2040;c[d+8>>2]=1819440243;c[j>>2]=c[e+296>>2];if(!(c[e+288>>2]|0)){c[g>>2]=-2147483644;c[h>>2]=1;o=c[g>>2]|0;i=p;return o|0}if(((c[e+296>>2]|0)+12|0)>>>0>1048576){c[g>>2]=-2147483643;c[h>>2]=1;o=c[g>>2]|0;i=p;return o|0}f=(c[e+288>>2]|0)+(c[e+296>>2]|0)|0;b=f+12|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(b|0));f=e+296|0;c[f>>2]=(c[f>>2]|0)+12;f=m;b=f+64|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(b|0));c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;f=l;b=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(b|0));c[m>>2]=1752331379;c[m+4>>2]=56;c[m+8>>2]=1935963489;c[m+12>>2]=Yf(e,c[e+380+4>>2]|0)|0;if(!(c[m+12>>2]|0))jq(5956,o);c[m+40>>2]=c[e+380+40>>2];c[m+44>>2]=12288;c[m+48>>2]=-1;c[k>>2]=$f(e,l,m,c[e+380+4>>2]|0)|0;do if((c[k>>2]|0)>=0){c[n>>2]=1718776947;c[n+4>>2]=c[k>>2];if(((c[e+296>>2]|0)+64+8+(c[k>>2]|0)|0)>>>0>1048576){c[g>>2]=-2147483643;c[h>>2]=1;break}else{f=(c[e+288>>2]|0)+(c[e+296>>2]|0)|0;d=m;b=f+64|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(b|0));o=e+296|0;c[o>>2]=(c[o>>2]|0)+64;o=(c[e+288>>2]|0)+(c[e+296>>2]|0)|0;a[o>>0]=a[n>>0]|0;a[o+1>>0]=a[n+1>>0]|0;a[o+2>>0]=a[n+2>>0]|0;a[o+3>>0]=a[n+3>>0]|0;a[o+4>>0]=a[n+4>>0]|0;a[o+5>>0]=a[n+5>>0]|0;a[o+6>>0]=a[n+6>>0]|0;a[o+7>>0]=a[n+7>>0]|0;o=e+296|0;c[o>>2]=(c[o>>2]|0)+8;Tx((c[e+288>>2]|0)+(c[e+296>>2]|0)|0,l|0,c[k>>2]|0)|0;o=e+296|0;c[o>>2]=(c[o>>2]|0)+(c[k>>2]|0);Zf(e,2048,(c[e+296>>2]|0)-(c[j>>2]|0)|0,c[e+296>>2]|0)|0;c[e+296>>2]=(c[j>>2]|0)+2048;c[g>>2]=0;c[h>>2]=1;break}}else{c[g>>2]=c[k>>2];c[h>>2]=1}while(0);o=c[g>>2]|0;i=p;return o|0}function $f(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=i;i=i+48|0;r=t;k=t+32|0;u=t+24|0;l=t+16|0;m=t+8|0;j=t+4|0;q=t+36|0;p=t+28|0;n=t+20|0;o=t+12|0;c[u>>2]=d;c[l>>2]=f;c[m>>2]=g;c[j>>2]=h;f=c[u>>2]|0;if((c[l>>2]|0)==0|(c[m>>2]|0)==0){c[k>>2]=-2147483645;u=c[k>>2]|0;i=t;return u|0}c[q>>2]=0;h=(Yf(f,c[j>>2]|0)|0)&65535;b[c[l>>2]>>1]=h;b[(c[l>>2]|0)+2>>1]=c[f+380+8>>2];c[(c[l>>2]|0)+4>>2]=c[f+380+16>>2];c[(c[l>>2]|0)+8>>2]=8e3;b[(c[l>>2]|0)+14>>1]=c[f+380+12>>2];b[(c[l>>2]|0)+16>>1]=0;h=c[j>>2]|0;a:do if((h|0)<8193)if((h|0)<8192){switch(h|0){case 4096:break;default:{s=8;break a}}c[(c[m>>2]|0)+28>>2]=1;c[(c[m>>2]|0)+32>>2]=c[f+380+16>>2];c[(c[m>>2]|0)+52>>2]=2;b[(c[l>>2]|0)+12>>1]=2;c[q>>2]=18;break}else{switch(h|0){case 8192:break;default:{s=8;break a}}c[(c[m>>2]|0)+28>>2]=1152;c[(c[m>>2]|0)+32>>2]=c[f+380+16>>2];b[(c[l>>2]|0)+12>>1]=1152;b[(c[l>>2]|0)+14>>1]=0;b[(c[l>>2]|0)+16>>1]=22;u=c[l>>2]|0;r=c[l>>2]|0;c[u>>2]=c[r>>2];c[u+4>>2]=c[r+4>>2];c[u+8>>2]=c[r+8>>2];c[u+12>>2]=c[r+12>>2];b[u+16>>1]=b[r+16>>1]|0;b[(c[l>>2]|0)+18>>1]=2;c[(c[l>>2]|0)+20>>2]=c[f+380+20>>2];b[(c[l>>2]|0)+24>>1]=(c[f+380+8>>2]|0)>>>0>1?1:8;b[(c[l>>2]|0)+26>>1]=0;b[(c[l>>2]|0)+28>>1]=1;b[(c[l>>2]|0)+30>>1]=16;c[(c[l>>2]|0)+32>>2]=0;c[(c[l>>2]|0)+36>>2]=0;c[q>>2]=40;break}else if((h|0)<28944){switch(h|0){case 8193:break;default:{s=8;break a}}c[(c[m>>2]|0)+28>>2]=1024;c[(c[m>>2]|0)+32>>2]=c[f+380+16>>2];c[(c[m>>2]|0)+12>>2]=0;c[(c[m>>2]|0)+16>>2]=1;b[(c[l>>2]|0)+12>>1]=4096;c[(c[l>>2]|0)+4>>2]=c[f+380+16>>2];b[(c[l>>2]|0)+14>>1]=0;b[(c[l>>2]|0)+16>>1]=0;c[p>>2]=oq(c[f+380+16>>2]|0)|0;c[n>>2]=1;c[o>>2]=0;u=(c[l>>2]|0)+16|0;b[u>>1]=(e[u>>1]|0)+2;a[(c[l>>2]|0)+18>>0]=(c[n>>2]|0)+1<<3|(c[p>>2]|0)>>>1;a[(c[l>>2]|0)+18+1>>0]=(c[p>>2]&1)<<7|c[f+380+8>>2]<<3;c[q>>2]=20;break}else{switch(h|0){case 28944:case 28945:break;default:{s=8;break a}}c[(c[m>>2]|0)+28>>2]=1;c[(c[m>>2]|0)+32>>2]=8e3;c[(c[m>>2]|0)+52>>2]=1;b[(c[l>>2]|0)+12>>1]=1;b[(c[l>>2]|0)+14>>1]=8;c[q>>2]=18;break}while(0);if((s|0)==8)jq(5956,r);c[k>>2]=c[q>>2];u=c[k>>2]|0;i=t;return u|0}function ag(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;g=k+12|0;e=k+4|0;d=k+16|0;h=k;j=k+8|0;c[e>>2]=b;e=c[e>>2]|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d>>2]=1414744396;c[d+4>>2]=(c[e+312>>2]|0)-8;c[d+8>>2]=1769369453;if(!(c[e+288>>2]|0)){c[g>>2]=-2147483644;c[h>>2]=1;j=c[g>>2]|0;i=k;return j|0}if(((c[e+296>>2]|0)+12|0)>>>0>(c[e+292>>2]|0)>>>0){c[g>>2]=-2147483643;c[h>>2]=1;j=c[g>>2]|0;i=k;return j|0}f=(c[e+288>>2]|0)+(c[e+296>>2]|0)|0;b=f+12|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(b|0));f=e+296|0;c[f>>2]=(c[f>>2]|0)+12;if(c[e+20>>2]|0){c[j>>2]=Hj(c[e+20>>2]|0,c[e+288>>2]|0,c[e+296>>2]|0)|0;if(c[j>>2]|0){c[g>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0){j=c[g>>2]|0;i=k;return j|0}}c[e+296>>2]=0;c[g>>2]=0;c[h>>2]=1;j=c[g>>2]|0;i=k;return j|0}function bg(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+48|0;g=p+24|0;q=p+16|0;h=p+12|0;j=p+8|0;k=p+4|0;n=p+28|0;l=p;m=p+20|0;c[q>>2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;e=c[q>>2]|0;if(0==(c[h>>2]|0)|0==(c[k>>2]|0)){c[g>>2]=-2147483645;q=c[g>>2]|0;i=p;return q|0}if((c[j>>2]|0)>>>0>((c[e+292>>2]|0)+12|0)>>>0){c[g>>2]=-2147483643;q=c[g>>2]|0;i=p;return q|0};c[n>>2]=0;c[n+4>>2]=0;c[n+8>>2]=0;switch(c[c[k>>2]>>2]|0){case 3:case 2:case 1:{c[n>>2]=1667510320;o=9;break}case 4:{c[n>>2]=1651978544;o=9;break}default:{c[g>>2]=-2147483647;c[l>>2]=1}}do if((o|0)==9){if(!(c[e+288>>2]|0)){c[g>>2]=-2147483644;c[l>>2]=1;break}c[n+4>>2]=c[j>>2];if(((c[e+296>>2]|0)+8|0)>>>0>(c[e+292>>2]|0)>>>0){c[g>>2]=-2147483643;c[l>>2]=1;break}q=(c[e+288>>2]|0)+(c[e+296>>2]|0)|0;a[q>>0]=a[n>>0]|0;a[q+1>>0]=a[n+1>>0]|0;a[q+2>>0]=a[n+2>>0]|0;a[q+3>>0]=a[n+3>>0]|0;a[q+4>>0]=a[n+4>>0]|0;a[q+5>>0]=a[n+5>>0]|0;a[q+6>>0]=a[n+6>>0]|0;a[q+7>>0]=a[n+7>>0]|0;q=e+296|0;c[q>>2]=(c[q>>2]|0)+8;if(((c[e+296>>2]|0)+(c[j>>2]|0)|0)>>>0>(c[e+292>>2]|0)>>>0){c[g>>2]=-2147483643;c[l>>2]=1;break}Tx((c[e+288>>2]|0)+(c[e+296>>2]|0)|0,c[h>>2]|0,c[j>>2]|0)|0;q=e+296|0;c[q>>2]=(c[q>>2]|0)+(c[j>>2]|0);if(((c[e+296>>2]|0)>>>0)%2|0){o=e+296|0;q=c[o>>2]|0;c[o>>2]=q+1;a[(c[e+288>>2]|0)+q>>0]=0;c[e+316>>2]=1}if(c[e+20>>2]|0){c[m>>2]=Hj(c[e+20>>2]|0,c[e+288>>2]|0,c[e+296>>2]|0)|0;if(c[m>>2]|0){c[g>>2]=c[m>>2];c[l>>2]=1}else c[l>>2]=0;if(c[l>>2]|0)break}q=e+312|0;c[q>>2]=(c[q>>2]|0)+(c[e+296>>2]|0);c[e+296>>2]=0;c[g>>2]=0;c[l>>2]=1}while(0);q=c[g>>2]|0;i=p;return q|0}function cg(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m+16|0;k=m+12|0;h=m+8|0;j=m+4|0;g=m+20|0;f=m;c[k>>2]=b;c[h>>2]=d;c[j>>2]=e;k=c[k>>2]|0;if(!(c[k+300>>2]|0)){c[l>>2]=-2147483644;l=c[l>>2]|0;i=m;return l|0}if((c[k+380+36>>2]|0)==0?(c[k+380+40>>2]|0)==0:0){c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g>>2]=829973609;c[g+4>>2]=0;if(((c[k+308>>2]|0)+8|0)>>>0>(c[k+304>>2]|0)>>>0){c[l>>2]=-2147483643;c[f>>2]=1}else{b=c[k+300>>2]|0;a[b>>0]=a[g>>0]|0;a[b+1>>0]=a[g+1>>0]|0;a[b+2>>0]=a[g+2>>0]|0;a[b+3>>0]=a[g+3>>0]|0;a[b+4>>0]=a[g+4>>0]|0;a[b+5>>0]=a[g+5>>0]|0;a[b+6>>0]=a[g+6>>0]|0;a[b+7>>0]=a[g+7>>0]|0;g=k+308|0;c[g>>2]=(c[g>>2]|0)+8;c[k+324+8>>2]=-4;c[k+324+12>>2]=0;c[k+320>>2]=0;c[f>>2]=0}if((c[f>>2]|0)>>>0>=1){l=c[l>>2]|0;i=m;return l|0}}if((c[k+304>>2]|0)>>>0<((c[k+308>>2]|0)+16|0)>>>0?(dg(k,(c[k+304>>2]|0)+102400|0)|0)==0:0){c[l>>2]=-2147483646;l=c[l>>2]|0;i=m;return l|0}switch(c[h>>2]|0){case 2:case 3:case 1:{c[k+324>>2]=1667510320;e=k+324+4|0;if((c[h>>2]|0)==1)c[e>>2]=16;else c[e>>2]=0;h=k+380+36|0;c[h>>2]=(c[h>>2]|0)+1;break}case 4:{c[k+324>>2]=1651978544;c[k+324+4>>2]=16;h=k+380+40|0;c[h>>2]=(c[h>>2]|0)+1;break}default:{c[l>>2]=-2147483647;l=c[l>>2]|0;i=m;return l|0}}h=k+324+8|0;c[h>>2]=(c[h>>2]|0)+((c[k+324+12>>2]|0)+8+(c[k+320>>2]|0));c[k+320>>2]=c[k+316>>2];c[k+316>>2]=0;c[k+324+12>>2]=c[j>>2];if(((c[k+308>>2]|0)+16|0)>>>0>(c[k+304>>2]|0)>>>0){c[l>>2]=-2147483643;l=c[l>>2]|0;i=m;return l|0}else{e=(c[k+300>>2]|0)+(c[k+308>>2]|0)|0;d=k+324|0;b=e+16|0;do{a[e>>0]=a[d>>0]|0;e=e+1|0;d=d+1|0}while((e|0)<(b|0));k=k+308|0;c[k>>2]=(c[k>>2]|0)+16;c[l>>2]=0;l=c[l>>2]|0;i=m;return l|0}return 0}function dg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+12|0;j=h+8|0;e=h+4|0;g=h+16|0;f=h;c[j>>2]=a;c[e>>2]=b;a=c[j>>2]|0;if((c[e>>2]|0)>>>0>10485760){c[d>>2]=0;j=c[d>>2]|0;i=h;return j|0}if(!(c[a+300>>2]|0)){c[g>>2]=(c[e>>2]|0)>>>0>1048576?c[e>>2]|0:1048576;c[a+300>>2]=Ix(c[g>>2]|0)|0;if(!(c[a+300>>2]|0)){c[d>>2]=0;c[f>>2]=1}else{c[a+304>>2]=c[g>>2];c[f>>2]=0}if((c[f>>2]|0)>>>0>=1){j=c[d>>2]|0;i=h;return j|0}}else{c[g>>2]=Ix(c[e>>2]|0)|0;if(!(c[g>>2]|0)){c[d>>2]=0;c[f>>2]=1}else{Tx(c[g>>2]|0,c[a+300>>2]|0,c[a+308>>2]|0)|0;b=c[a+300>>2]|0;if(b|0)Jx(b);c[a+300>>2]=c[g>>2];c[a+304>>2]=c[e>>2];c[f>>2]=0}if((c[f>>2]|0)>>>0>=1){j=c[d>>2]|0;i=h;return j|0}}c[d>>2]=1;j=c[d>>2]|0;i=h;return j|0}function eg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+8|0;g=f+4|0;e=f+12|0;d=f;c[g>>2]=a;a=c[g>>2]|0;c[a+16>>2]=2;do if(c[a+20>>2]|0){c[e>>2]=fg(a)|0;if(c[e>>2]|0){c[b>>2]=c[e>>2];c[d>>2]=1}else c[d>>2]=0;if((c[d>>2]|0)>>>0<1){Eh(c[a+20>>2]|0)|0;c[a+20>>2]=0;break}else{g=c[b>>2]|0;i=f;return g|0}}while(0);c[b>>2]=gg(a)|0;g=c[b>>2]|0;i=f;return g|0}function fg(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=i;i=i+32|0;b=g+12|0;h=g+4|0;f=g+16|0;e=g+8|0;d=g;c[h>>2]=a;a=c[h>>2]|0;if(0==(c[a+300>>2]|0)?0==(c[a+20>>2]|0):0){c[b>>2]=-2147483645;h=c[b>>2]|0;i=g;return h|0}c[f>>2]=c[a+300>>2];c[(c[f>>2]|0)+4>>2]=(c[a+308>>2]|0)-8;c[e>>2]=Hj(c[a+20>>2]|0,c[a+300>>2]|0,c[a+308>>2]|0)|0;if(c[e>>2]|0){c[b>>2]=c[e>>2];c[d>>2]=1}else c[d>>2]=0;if(!(c[d>>2]|0)){c[e>>2]=Ij(c[a+20>>2]|0,0,0,0)|0;if(c[e>>2]|0){c[b>>2]=c[e>>2];c[d>>2]=1}else c[d>>2]=0;if(!(c[d>>2]|0)){c[e>>2]=Tf(a)|0;if(c[e>>2]|0){c[b>>2]=c[e>>2];c[d>>2]=1}else c[d>>2]=0;if(!(c[d>>2]|0)){c[e>>2]=ag(a)|0;if(c[e>>2]|0){c[b>>2]=c[e>>2];c[d>>2]=1}else c[d>>2]=0;if(!(c[d>>2]|0)){c[b>>2]=0;c[d>>2]=1}}}}h=c[b>>2]|0;i=g;return h|0}function gg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+292>>2]=1048576;c[a+428>>2]=0;c[a+284>>2]=0;i=b;return 0}function hg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;i=i+16|0;c[e+8>>2]=a;c[e+4>>2]=b;c[e>>2]=d;i=e;return -2147483647}function ig(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;i=i+16|0;c[e+8>>2]=a;c[e+4>>2]=b;c[e>>2]=d;i=e;return -2147483647}function jg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+16>>2]=c[f>>2];i=d;return 0}function kg(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return -2147483647}function lg(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;a=c[b>>2]|0;nd(a);c[a>>2]=900;c[a+16>>2]=2;c[a+20>>2]=0;c[a+284>>2]=0;c[a+288>>2]=0;c[a+292>>2]=1048576;c[a+296>>2]=0;c[a+300>>2]=0;c[a+304>>2]=1048576;c[a+308>>2]=0;c[a+312>>2]=12;c[a+316>>2]=0;c[a+320>>2]=0;c[a+440>>2]=0;c[a+448>>2]=0;c[a+444>>2]=0;c[a+452>>2]=0;c[a+456>>2]=0;c[a+428>>2]=0;c[a+432>>2]=0;c[a+436>>2]=0;Ox(a+24|0,0,260)|0;b=a+380|0;d=b+48|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));b=a+324|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;b=a+340|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));i=e;return}function mg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=972;nb[c[(c[a>>2]|0)+32>>2]&127](a)|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;zc(a);i=b;return}function ng(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;mg(a);lx(a);i=b;return}function og(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function pg(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function qg(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0;h=i;i=i+16|0;f=h+12|0;j=h+8|0;g=h+4|0;c[j>>2]=a;c[g>>2]=d;c[h>>2]=e;e=c[j>>2]|0;if(!(c[g>>2]|0)){c[f>>2]=-2147483645;j=c[f>>2]|0;i=h;return j|0}else{Gh(e+20|0,c[g>>2]|0,40);b[e+20+8>>1]=0;c[f>>2]=0;j=c[f>>2]|0;i=h;return j|0}return 0}function rg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+8|0;f=e;c[e+4>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0))c[d>>2]=-2147483645;else c[d>>2]=-2147483647;i=e;return c[d>>2]|0}function sg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+8|0;f=e;c[e+4>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0))c[d>>2]=-2147483645;else c[d>>2]=-2147483647;i=e;return c[d>>2]|0}function tg(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;f=n+20|0;o=n+16|0;g=n+12|0;h=n+8|0;j=n+4|0;l=n+24|0;k=n;c[o>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;d=c[o>>2]|0;if((c[d+64>>2]|0)==2){c[f>>2]=-2147483642;o=c[f>>2]|0;i=n;return o|0}if(0==(c[g>>2]|0)|0==(c[h>>2]|0)){c[f>>2]=-2147483645;o=c[f>>2]|0;i=n;return o|0}if(!(c[j>>2]|0)){c[f>>2]=-2147483645;o=c[f>>2]|0;i=n;return o|0}if(c[d+328>>2]|0?1==(c[c[j>>2]>>2]|0):0){rb[c[(c[d>>2]|0)+20>>2]&127](d,d+68|0)|0;c[d+328>>2]=0}c[l>>2]=0;switch(c[c[j>>2]>>2]|0){case 3:case 2:case 1:{c[l>>2]=2;m=15;break}case 4:{c[l>>2]=3;m=15;break}case 5:{c[l>>2]=4;m=15;break}default:{c[f>>2]=-2147483647;c[k>>2]=1}}if((m|0)==15){ug(d,c[g>>2]|0,c[h>>2]|0,c[l>>2]|0,c[j>>2]|0);c[f>>2]=0;c[k>>2]=1}o=c[f>>2]|0;i=n;return o|0}function ug(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+160|0;o=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;m=n+24|0;c[o>>2]=a;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;f=c[o>>2]|0;do if(1==(c[f+332>>2]|0)){if(c[f+344>>2]|0){if(!(c[f+16>>2]|0)){c[m>>2]=f+20;c[m+4>>2]=40;c[m+8>>2]=1;mb[c[f+344>>2]&1](m,c[f+348>>2]|0);c[f+16>>2]=1}c[m>>2]=c[h>>2];c[m+4>>2]=c[j>>2];c[m+8>>2]=c[k>>2];mb[c[f+344>>2]&1](m,c[f+348>>2]|0)}}else{if(2!=(c[f+332>>2]|0)){if(!(c[f+336>>2]|0))break;if(!(c[f+16>>2]|0)){c[m>>2]=f+20;c[m+4>>2]=40;c[m+8>>2]=1;mb[c[f+344>>2]&1](m,c[f+348>>2]|0);c[f+16>>2]=1}c[m>>2]=c[h>>2];c[m+4>>2]=c[j>>2];c[m+8>>2]=c[k>>2];mb[c[f+336>>2]&1](m,c[f+340>>2]|0);break}e=m;d=e+128|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(d|0));if(c[f+356>>2]|0){if(!(c[f+16>>2]|0)){c[m>>2]=f+20;c[m+4>>2]=40;b[m+8>>1]=1;b[m+10>>1]=5;mb[c[f+356>>2]&1](m,c[f+352>>2]|0);c[f+16>>2]=1}c[m>>2]=c[h>>2];c[m+4>>2]=c[j>>2];b[m+8>>1]=c[k>>2];b[m+10>>1]=pq(c[c[l>>2]>>2]|0)|0;c[m+12>>2]=c[(c[l>>2]|0)+12>>2];b[m+20>>1]=1;mb[c[f+356>>2]&1](m,c[f+352>>2]|0)}}while(0);if(!(c[f+60>>2]|0)){i=n;return}Bh(c[f+60>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=n;return}function vg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+64>>2]=2;if(c[a+60>>2]|0){Eh(c[a+60>>2]|0)|0;c[a+60>>2]=0}c[a+16>>2]=0;c[a+328>>2]=0;i=b;return 0}function wg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;b=c[j>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;j=c[e>>2]|0;i=h;return j|0}else{c[b+332>>2]=1;c[b+344>>2]=c[f>>2];c[b+348>>2]=c[g>>2];c[b+336>>2]=0;c[b+340>>2]=0;c[b+356>>2]=0;c[b+352>>2]=0;c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function xg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;b=c[j>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;j=c[e>>2]|0;i=h;return j|0}else{c[b+332>>2]=0;c[b+336>>2]=c[f>>2];c[b+340>>2]=c[g>>2];c[b+344>>2]=0;c[b+348>>2]=0;c[b+356>>2]=0;c[b+352>>2]=0;c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function yg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=c[h>>2]|0;c[a+332>>2]=2;c[a+356>>2]=c[g>>2];c[a+352>>2]=c[f>>2];c[a+344>>2]=0;c[a+348>>2]=0;c[a+336>>2]=0;c[a+340>>2]=0;i=e;return 0}function zg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+64>>2]=c[f>>2];i=d;return 0}function Ag(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return -2147483647}function Bg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;nd(a);c[a>>2]=972;c[a+16>>2]=0;Fh(a+20|0,40);c[a+60>>2]=0;c[a+64>>2]=2;Fh(a+68|0,260);c[a+328>>2]=0;c[a+332>>2]=1;c[a+336>>2]=0;c[a+340>>2]=0;c[a+344>>2]=0;c[a+348>>2]=0;c[a+356>>2]=0;c[a+352>>2]=0;i=b;return}function Cg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=1044;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;zc(a);i=b;return}function Dg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;Cg(a);lx(a);i=b;return}function Eg(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function Fg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;if(c[a+288+4>>2]|0){Jh(c[a+288+4>>2]|0);c[a+288+4>>2]=0}if(!(c[a+496+48>>2]|0)){i=b;return 0}Jh(c[a+496+48>>2]|0);c[a+496+48>>2]=0;i=b;return 0}function Gg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[j>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;j=c[e>>2]|0;i=h;return j|0}if((c[g>>2]|0)>>>0>8388608)c[d+656>>2]=8388608;else c[d+656>>2]=c[g>>2];Gh(d+556|0,c[f>>2]|0,40);c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}function Hg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;g=c[d>>2]|0;i=f;return g|0}nb[c[(c[b>>2]|0)+32>>2]&127](b)|0;c[b+20>>2]=zh(c[e>>2]|0,2)|0;if(!(c[b+20>>2]|0)){g=za(4)|0;c[g>>2]=-2147483641;Xa(g|0,152,0)}c[b+16>>2]=0;c[d>>2]=0;g=c[d>>2]|0;i=f;return g|0}function Ig(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;g=c[d>>2]|0;i=f;return g|0}else{fw(b+24|0,c[e>>2]|0)|0;c[b+284>>2]=1;c[d>>2]=0;g=c[d>>2]|0;i=f;return g|0}return 0}function Jg(a,e,f,g){a=a|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=i;i=i+48|0;h=r+28|0;s=r+20|0;j=r+12|0;k=r+8|0;l=r+4|0;n=r+32|0;m=r;p=r+24|0;o=r+16|0;c[s>>2]=a;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;f=c[s>>2]|0;c[n>>2]=0;if((c[j>>2]|0)==0|(c[k>>2]|0)>>>0<4|(c[l>>2]|0)==0){c[h>>2]=-2147483645;c[m>>2]=1;s=c[h>>2]|0;i=r;return s|0}if(c[(c[l>>2]|0)+52>>2]|0){c[h>>2]=-2147483647;c[m>>2]=1;s=c[h>>2]|0;i=r;return s|0}do if(!(c[f+648>>2]|0)){c[n>>2]=Kg(f,c[l>>2]|0)|0;if(!(c[n>>2]|0)){c[f+648>>2]=1;break}c[h>>2]=c[n>>2];c[m>>2]=1;s=c[h>>2]|0;i=r;return s|0}while(0);if(c[f+284>>2]|0?1==(c[c[l>>2]>>2]|0):0){rb[c[(c[f>>2]|0)+20>>2]&127](f,f+24|0)|0;c[f+284>>2]=0}if((176==(c[f+288+8+8>>2]|0)?(c[f+628>>2]|0)==0:0)?(c[c[l>>2]>>2]|0)==1:0){do if(0==(d[c[j>>2]>>0]|0|0)?0==(d[(c[j>>2]|0)+1>>0]|0|0):0){if(1!=(d[(c[j>>2]|0)+2>>0]|0|0)){if(d[(c[j>>2]|0)+2>>0]|0)break;if(1!=(d[(c[j>>2]|0)+3>>0]|0|0))break}c[f+288+8+8>>2]=27;b[f+556+10>>1]=256}while(0);c[f+628>>2]=1}c[n>>2]=Lg(f,c[l>>2]|0)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];c[m>>2]=1;s=c[h>>2]|0;i=r;return s|0}if((c[c[l>>2]>>2]|0)==4){if(!(c[f+644>>2]|0)){do if(c[(c[l>>2]|0)+92+28>>2]|0){if((c[k>>2]|0)>>>0>=7){c[j>>2]=(c[j>>2]|0)+7;c[k>>2]=(c[k>>2]|0)-7;break}c[h>>2]=-2147483645;c[m>>2]=1;s=c[h>>2]|0;i=r;return s|0}while(0);c[n>>2]=Mg(f,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];c[m>>2]=1;s=c[h>>2]|0;i=r;return s|0}}}else{c[p>>2]=0;while(1){c[o>>2]=Pg(f,(c[j>>2]|0)+4|0,(c[k>>2]|0)-4|0)|0;do if((c[o>>2]|0)==-1){c[n>>2]=Mg(f,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];c[m>>2]=1;break}else{c[k>>2]=0;q=42;break}}else{c[p>>2]=(c[o>>2]|0)+4;c[n>>2]=Mg(f,c[j>>2]|0,c[p>>2]|0,c[l>>2]|0)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];c[m>>2]=1;break}if((c[k>>2]|0)>>>0<(c[p>>2]|0)>>>0){c[h>>2]=-2147483641;c[m>>2]=1;break}else{c[j>>2]=(c[j>>2]|0)+(c[p>>2]|0);c[k>>2]=(c[k>>2]|0)-(c[p>>2]|0);q=42;break}}while(0);if((q|0)==42){q=0;c[m>>2]=0}if(c[m>>2]|0)break;if(!(c[k>>2]|0)){q=45;break}}if((q|0)==45)c[m>>2]=0;if(c[m>>2]|0){s=c[h>>2]|0;i=r;return s|0}}c[h>>2]=0;c[m>>2]=1;s=c[h>>2]|0;i=r;return s|0}function Kg(f,h){f=f|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+160|0;o=r+152|0;k=r+144|0;j=r+136|0;m=r+156|0;n=r+148|0;l=r+140|0;p=r;q=r+8|0;c[k>>2]=f;c[j>>2]=h;k=c[k>>2]|0;if(!(c[j>>2]|0)){c[o>>2]=-2147483645;q=c[o>>2]|0;i=r;return q|0}c[m>>2]=0;nb[c[(c[k>>2]|0)+12>>2]&127](k)|0;c[n>>2]=k+288+8;c[c[n>>2]>>2]=3;c[(c[n>>2]|0)+16>>2]=1;c[(c[n>>2]|0)+16+8>>2]=0;c[(c[n>>2]|0)+16+12>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>=16)break;a[(c[n>>2]|0)+16+16+(c[l>>2]|0)>>0]=c[l>>2];c[l>>2]=(c[l>>2]|0)+1}c[m>>2]=jh(k+288|0)|0;a:do if((c[m>>2]|0)!=1){c[o>>2]=-2147483646;c[p>>2]=1}else{c[k+288+4>>2]=Ih(c[k+288>>2]|0,8)|0;if(!(c[k+288+4>>2]|0)){r=za(4)|0;c[r>>2]=-2147483646;Xa(r|0,152,0)}c[k+496+48>>2]=Ih(2097152,8)|0;if(!(c[k+496+48>>2]|0)){r=za(4)|0;c[r>>2]=-2147483646;Xa(r|0,152,0)}c[k+496+56>>2]=2097152;if((kh(k+288|0,k+492|0)|0)!=1){c[o>>2]=-2147483646;c[p>>2]=1;break}switch(e[k+556+10>>1]|0|0){case 1:case 256:break;default:{c[o>>2]=-2147483647;c[p>>2]=1;break a}}c[(c[n>>2]|0)+8>>2]=27;c[l>>2]=(c[n>>2]|0)+16+32;c[(c[l>>2]|0)+8>>2]=0;c[(c[l>>2]|0)+12>>2]=0;c[(c[l>>2]|0)+16>>2]=0;c[(c[l>>2]|0)+20>>2]=0;c[(c[l>>2]|0)+24>>2]=c[(c[j>>2]|0)+16>>2];c[(c[l>>2]|0)+28>>2]=c[(c[j>>2]|0)+20>>2];c[(c[l>>2]|0)+32>>2]=0;c[(c[l>>2]|0)+36>>2]=0;c[(c[l>>2]|0)+44>>2]=0;c[(c[l>>2]|0)+48>>2]=2;c[(c[l>>2]|0)+52>>2]=0;c[(c[l>>2]|0)+56>>2]=~~(+g[(c[j>>2]|0)+60>>2]*90.0)>>>0;c[(c[l>>2]|0)+60>>2]=0;c[(c[l>>2]|0)+64>>2]=1;c[(c[l>>2]|0)+76>>2]=0;if((e[k+556+12>>1]|0|0)==8193)c[(c[n>>2]|0)+12>>2]=15;else{c[k+644>>2]=1;c[(c[n>>2]|0)+12>>2]=0;m=c[n>>2]|0;c[m>>2]=c[m>>2]&-3}if(c[(c[n>>2]|0)+12>>2]|0){c[q>>2]=(c[n>>2]|0)+16+128;c[(c[q>>2]|0)+8>>2]=d[k+556+14>>0];c[(c[q>>2]|0)+16>>2]=c[k+556+20>>2];c[(c[q>>2]|0)+4>>2]=0;c[(c[q>>2]|0)+12>>2]=c[k+556+16>>2];c[k+288+8+4>>2]=6e3}do if((lh(c[k+492>>2]|0,k+288+8|0)|0)!=1){c[o>>2]=-2147483645;c[p>>2]=1}else{c[k+496+16>>2]=1;if(1!=(yh(c[k+492>>2]|0,k+496|0)|0)){c[o>>2]=-2147483632;c[p>>2]=1;break}do if(1==(c[k+632>>2]|0)){if(c[k+620>>2]|0){c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q>>2]=c[k+496+48>>2];c[q+4>>2]=c[k+496+52>>2];c[q+8>>2]=1;mb[c[k+620>>2]&1](q,c[k+624>>2]|0)}}else if(2==(c[k+632>>2]|0)){if(!(c[k+640>>2]|0))break;h=q;f=h+128|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(f|0));c[q>>2]=c[k+496+48>>2];c[q+4>>2]=c[k+496+52>>2];b[q+8>>1]=1;b[q+10>>1]=5;mb[c[k+640>>2]&1](q,c[k+636>>2]|0);break}else{if(!(c[k+612>>2]|0))break;c[q>>2]=0;c[q+4>>2]=0;c[q+8>>2]=0;c[q+12>>2]=0;c[q>>2]=c[k+496+48>>2];c[q+4>>2]=c[k+496+52>>2];c[q+8>>2]=1;mb[c[k+612>>2]&1](q,c[k+616>>2]|0);break}while(0);if(c[k+20>>2]|0)Bh(c[k+20>>2]|0,c[k+496+52>>2]|0,c[k+496+48>>2]|0)|0;c[o>>2]=0;c[p>>2]=1}while(0)}while(0);q=c[o>>2]|0;i=r;return q|0}function Lg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+12|0;k=j+4|0;e=j;h=j+16|0;f=j+8|0;c[k>>2]=a;c[e>>2]=b;b=c[k>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;k=c[d>>2]|0;i=j;return k|0}if((c[(c[e>>2]|0)+28>>2]|0)>>>0>=3){c[d>>2]=-2147483644;k=c[d>>2]|0;i=j;return k|0}c[b+496+32>>2]=c[(c[e>>2]|0)+12>>2];c[b+496+12>>2]=(c[c[e>>2]>>2]|0)==1?1:0;switch(c[c[e>>2]>>2]|0){case 1:{c[b+496>>2]=3;c[b+496+28>>2]=c[b+496+32>>2];c[h>>2]=b+288+8+16+32;c[(c[h>>2]|0)+24>>2]=c[(c[e>>2]|0)+16>>2];c[(c[h>>2]|0)+28>>2]=c[(c[e>>2]|0)+20>>2];c[(c[h>>2]|0)+32>>2]=c[(c[e>>2]|0)+24>>2];c[(c[h>>2]|0)+36>>2]=c[(c[e>>2]|0)+28>>2];c[(c[h>>2]|0)+44>>2]=0;c[(c[h>>2]|0)+72>>2]=3;if((c[(c[e>>2]|0)+32>>2]|0)>>>0>1)c[(c[h>>2]|0)+40>>2]=c[(c[e>>2]|0)+44>>2];else c[(c[h>>2]|0)+40>>2]=1;c[(c[h>>2]|0)+56>>2]=~~(+g[(c[e>>2]|0)+60>>2]*45.0*2.0)>>>0;c[f>>2]=b+288+8+16+128;if(c[(c[e>>2]|0)+92+8>>2]|0)c[c[f>>2]>>2]=c[(c[e>>2]|0)+92+8>>2];if(c[(c[e>>2]|0)+92+12>>2]|0)c[(c[f>>2]|0)+8>>2]=(c[(c[e>>2]|0)+92+12>>2]|0)-1;if(c[(c[e>>2]|0)+92+16>>2]|0)c[(c[f>>2]|0)+12>>2]=c[(c[e>>2]|0)+92+16>>2];if(c[(c[e>>2]|0)+92+20>>2]|0)c[(c[f>>2]|0)+16>>2]=c[(c[e>>2]|0)+92+20>>2];break}case 2:{c[b+496>>2]=1;c[b+496+28>>2]=c[b+496+32>>2];break}case 3:{c[b+496>>2]=0;c[b+496+28>>2]=~~(+((c[b+496+32>>2]|0)>>>0)-+g[(c[e>>2]|0)+60>>2]*45.0)>>>0;break}case 4:{c[b+496>>2]=4;c[b+496+28>>2]=c[b+496+32>>2];break}default:{c[d>>2]=-2147483647;k=c[d>>2]|0;i=j;return k|0}}c[b+496+36>>2]=c[(c[e>>2]|0)+8>>2];c[d>>2]=0;k=c[d>>2]|0;i=j;return k|0}function Mg(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;k=o+20|0;p=o+16|0;g=o+12|0;h=o+8|0;l=o+4|0;j=o+24|0;m=o;c[p>>2]=a;c[g>>2]=b;c[h>>2]=e;c[l>>2]=f;b=c[p>>2]|0;if((c[g>>2]|0)==0|(c[h>>2]|0)>>>0<5|(c[l>>2]|0)==0){c[k>>2]=-2147483645;p=c[k>>2]|0;i=o;return p|0}if(9!=(d[(c[g>>2]|0)+4>>0]|0|0)?6!=(d[(c[g>>2]|0)+4>>0]|0|0):0){c[b+496+16>>2]=0;c[b+496+40>>2]=c[g>>2];c[b+496+44>>2]=c[h>>2];c[j>>2]=1;c[j>>2]=yh(c[b+492>>2]|0,b+496|0)|0;e=c[j>>2]|0;a:do if((e|0)>=-2147483647)if((e|0)<1){switch(e|0){case -2147483647:break;default:{n=9;break a}}c[k>>2]=-2147483643;c[m>>2]=1;break}else{switch(e|0){case 1:break;default:{n=9;break a}}c[k>>2]=Ng(b,c[l>>2]|0)|0;c[m>>2]=1;break}else{switch(e|0){case -2147483648:break;default:{n=9;break a}}c[k>>2]=-2147483645;c[m>>2]=1}while(0);if((n|0)==9){c[k>>2]=-2147483647;c[m>>2]=1}p=c[k>>2]|0;i=o;return p|0}c[k>>2]=0;p=c[k>>2]|0;i=o;return p|0}function Ng(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+48|0;g=p+28|0;e=p+20|0;h=p+12|0;k=p+32|0;l=p+24|0;m=p+16|0;n=p+8|0;o=p+4|0;j=p;c[e>>2]=a;c[h>>2]=b;e=c[e>>2]|0;if(!(c[h>>2]|0)){c[g>>2]=-2147483645;o=c[g>>2]|0;i=p;return o|0}c[k>>2]=0;c[l>>2]=0;c[m>>2]=0;c[n>>2]=c[e+496+52>>2];c[o>>2]=c[e+496+48>>2];switch(c[c[h>>2]>>2]|0){case 3:case 2:case 1:{c[k>>2]=2;f=8;break}case 4:{c[k>>2]=3;f=8;break}case 5:{c[k>>2]=4;f=8;break}default:{c[g>>2]=-2147483647;c[j>>2]=1}}do if((f|0)==8){if(!(c[e+496+52>>2]|0)){c[g>>2]=0;c[j>>2]=1;break}while(1){if((c[n>>2]|0)>>>0<=9)break;if((((c[e+608>>2]|0)==0?70==(d[c[o>>2]>>0]|0|0):0)?76==(d[(c[o>>2]|0)+1>>0]|0|0):0)?86==(d[(c[o>>2]|0)+2>>0]|0|0):0){Og(e,c[o>>2]|0,9,1,c[h>>2]|0);c[o>>2]=(c[o>>2]|0)+9;c[n>>2]=(c[n>>2]|0)-9;c[e+608>>2]=1;continue}c[m>>2]=d[(c[o>>2]|0)+4>>0];c[l>>2]=0;c[l>>2]=(c[l>>2]|0)+(d[(c[o>>2]|0)+7>>0]|0);c[l>>2]=(c[l>>2]|0)+((d[(c[o>>2]|0)+6>>0]|0)<<8&65280);c[l>>2]=(c[l>>2]|0)+((d[(c[o>>2]|0)+5>>0]|0)<<16&16711680);b=c[o>>2]|0;a=(c[l>>2]|0)+4+11|0;if(18==(c[m>>2]|0))Og(e,b,a,1,c[h>>2]|0);else Og(e,b,a,c[k>>2]|0,c[h>>2]|0);c[o>>2]=(c[o>>2]|0)+((c[l>>2]|0)+4+11);c[n>>2]=(c[n>>2]|0)-((c[l>>2]|0)+4+11)}c[g>>2]=0;c[j>>2]=1}while(0);o=c[g>>2]|0;i=p;return o|0}function Og(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+160|0;o=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;m=n+24|0;c[o>>2]=a;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;f=c[o>>2]|0;if((c[h>>2]|0)==0|(c[l>>2]|0)==0){i=n;return}do if(1==(c[f+632>>2]|0)){if(c[f+620>>2]|0){c[m>>2]=c[h>>2];c[m+4>>2]=c[j>>2];c[m+8>>2]=c[k>>2];mb[c[f+620>>2]&1](m,c[f+624>>2]|0)}}else{if(2!=(c[f+632>>2]|0)){if(!(c[f+612>>2]|0))break;c[m>>2]=c[h>>2];c[m+4>>2]=c[j>>2];c[m+8>>2]=c[k>>2];mb[c[f+612>>2]&1](m,c[f+616>>2]|0);break}e=m;d=e+128|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(d|0));if(c[f+640>>2]|0){c[m>>2]=c[h>>2];c[m+4>>2]=c[j>>2];b[m+8>>1]=c[k>>2];if(1!=(c[k>>2]|0)){b[m+10>>1]=pq(c[c[l>>2]>>2]|0)|0;c[m+12>>2]=c[(c[l>>2]|0)+12>>2];b[m+20>>1]=1}else b[m+10>>1]=5;mb[c[f+640>>2]&1](m,c[f+636>>2]|0)}}while(0);if(!(c[f+20>>2]|0)){i=n;return}Bh(c[f+20>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=n;return}function Pg(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+16|0;f=l+8|0;g=l+4|0;k=l+20|0;j=l;c[l+12>>2]=a;c[f>>2]=b;c[g>>2]=e;if((c[g>>2]|0)>>>0<4){c[h>>2]=-1;k=c[h>>2]|0;i=l;return k|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=((c[g>>2]|0)-3|0)>>>0){f=5;break}if((((d[(c[f>>2]|0)+(c[k>>2]|0)>>0]|0|0)==0?(d[(c[f>>2]|0)+((c[k>>2]|0)+1)>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+2)>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+3)>>0]|0|0)==1:0){f=13;break}if(((d[(c[f>>2]|0)+(c[k>>2]|0)>>0]|0|0)==0?(d[(c[f>>2]|0)+((c[k>>2]|0)+1)>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+2)>>0]|0|0)==1:0){f=13;break}c[k>>2]=(c[k>>2]|0)+1}if((f|0)==5)c[j>>2]=2;else if((f|0)==13){c[h>>2]=c[k>>2];c[j>>2]=1}if(((c[j>>2]|0)+-2|0)>>>0>=1){k=c[h>>2]|0;i=l;return k|0}c[h>>2]=-1;k=c[h>>2]|0;i=l;return k|0}function Qg(a){a=a|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+144|0;f=h+4|0;e=h;g=h+8|0;c[e>>2]=a;a=c[e>>2]|0;c[a+16>>2]=2;if(c[a+492>>2]|0){c[a+496+16>>2]=1;if(1!=(yh(c[a+492>>2]|0,a+496|0)|0)){c[f>>2]=-2147483632;g=c[f>>2]|0;i=h;return g|0}do if(1==(c[a+632>>2]|0)){if(c[a+620>>2]|0){c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g>>2]=c[a+496+48>>2];c[g+4>>2]=c[a+496+52>>2];c[g+8>>2]=1;mb[c[a+620>>2]&1](g,c[a+624>>2]|0)}}else if(2==(c[a+632>>2]|0)){if(!(c[a+640>>2]|0))break;d=g;e=d+128|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));c[g>>2]=c[a+496+48>>2];c[g+4>>2]=c[a+496+52>>2];b[g+8>>1]=1;b[g+10>>1]=5;mb[c[a+640>>2]&1](g,c[a+636>>2]|0);break}else{if(!(c[a+612>>2]|0))break;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g>>2]=c[a+496+48>>2];c[g+4>>2]=c[a+496+52>>2];c[g+8>>2]=1;mb[c[a+612>>2]&1](g,c[a+616>>2]|0);break}while(0);if(c[a+20>>2]|0)Bh(c[a+20>>2]|0,c[a+496+52>>2]|0,c[a+496+48>>2]|0)|0}c[f>>2]=Rg(a)|0;g=c[f>>2]|0;i=h;return g|0}function Rg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;if(c[a+20>>2]|0){Eh(c[a+20>>2]|0)|0;c[a+20>>2]=0}c[a+596>>2]=1;c[a+604>>2]=0;c[a+628>>2]=0;c[a+608>>2]=0;c[a+284>>2]=0;c[a+496+32>>2]=0;i=b;return 0}function Sg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;b=c[j>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;j=c[e>>2]|0;i=h;return j|0}else{c[b+632>>2]=1;c[b+620>>2]=c[f>>2];c[b+624>>2]=c[g>>2];c[b+612>>2]=0;c[b+616>>2]=0;c[b+640>>2]=0;c[b+636>>2]=0;c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function Tg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;b=c[j>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;j=c[e>>2]|0;i=h;return j|0}else{c[b+632>>2]=0;c[b+612>>2]=c[f>>2];c[b+616>>2]=c[g>>2];c[b+620>>2]=0;c[b+624>>2]=0;c[b+640>>2]=0;c[b+636>>2]=0;c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function Ug(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;a=c[h>>2]|0;c[a+632>>2]=2;c[a+640>>2]=c[g>>2];c[a+636>>2]=c[f>>2];c[a+620>>2]=0;c[a+624>>2]=0;c[a+612>>2]=0;c[a+616>>2]=0;i=e;return 0}function Vg(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+16>>2]=c[f>>2];i=d;return 0}function Wg(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return -2147483647}function Xg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;nd(a);c[a>>2]=1044;c[a+16>>2]=2;c[a+20>>2]=0;c[a+284>>2]=0;Fh(a+24|0,260);c[a+492>>2]=0;Fh(a+288|0,204);Fh(a+496|0,60);Fh(a+556|0,40);c[a+596>>2]=1;c[a+600>>2]=0;c[a+604>>2]=0;c[a+608>>2]=0;c[a+632>>2]=1;c[a+636>>2]=0;c[a+640>>2]=0;c[a+612>>2]=0;c[a+616>>2]=0;c[a+620>>2]=0;c[a+624>>2]=0;c[a+628>>2]=0;c[a+644>>2]=0;c[a+648>>2]=0;c[a+652>>2]=0;c[a+656>>2]=0;i=b;return}function Yg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+8|0;j=h;g=h+12|0;f=h+4|0;c[e>>2]=a;c[j>>2]=b;c[g>>2]=(c[e>>2]|0)+(c[j>>2]|0);c[f>>2]=-1;a:do if(!(c[533]|0))while(1){if((c[e>>2]|0)>>>0>=((c[g>>2]|0)+-3|0)>>>0)break a;c[f>>2]=c[f>>2]^c[c[e>>2]>>2];c[e>>2]=(c[e>>2]|0)+4;c[f>>2]=c[1108+(768+(c[f>>2]&255)<<2)>>2]^c[1108+(512+((c[f>>2]|0)>>>8&255)<<2)>>2]^c[1108+(256+((c[f>>2]|0)>>>16&255)<<2)>>2]^c[1108+(0+((c[f>>2]|0)>>>24)<<2)>>2]}while(0);while(1){a=c[f>>2]|0;if((c[e>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;j=c[e>>2]|0;c[e>>2]=j+1;c[f>>2]=c[1108+((a&255^(d[j>>0]|0))<<2)>>2]^(c[f>>2]|0)>>>8}i=h;return a|0}function Zg(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=i;i=i+64|0;g=u+44|0;h=u+36|0;j=u+28|0;k=u+20|0;m=u+48|0;n=u+40|0;p=u+32|0;r=u+24|0;s=u+16|0;l=u+12|0;t=u+8|0;o=u+4|0;q=u;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[m>>2]=9;c[n>>2]=0;c[p>>2]=0;c[t>>2]=255;c[q>>2]=(c[c[j>>2]>>2]|0)!=0&1;if((c[(c[h>>2]|0)+28>>2]|0)==(c[(c[h>>2]|0)+24>>2]|0))c[t>>2]=c[t>>2]&253;if(c[(c[h>>2]|0)+16>>2]|0)c[n>>2]=(c[n>>2]|0)+5;b=(c[m>>2]|0)+(c[n>>2]|0)|0;if(((c[m>>2]|0)+(c[n>>2]|0)+(c[(c[h>>2]|0)+28>>2]|0)+3|0)>>>0>(c[(c[k>>2]|0)+24>>2]|0)>>>0){c[p>>2]=4-(b&3);c[n>>2]=(c[n>>2]|0)+(c[p>>2]|0);c[(c[h>>2]|0)+32>>2]=(c[(c[k>>2]|0)+24>>2]|0)-(c[m>>2]|0)-(c[n>>2]|0)}else{c[p>>2]=4-(b+(c[(c[h>>2]|0)+28>>2]|0)&3);c[n>>2]=(c[n>>2]|0)+(c[p>>2]|0);c[(c[h>>2]|0)+32>>2]=c[(c[h>>2]|0)+28>>2];c[t>>2]=c[t>>2]&254}c[o>>2]=(c[m>>2]|0)+(c[n>>2]|0)+(c[(c[h>>2]|0)+32>>2]|0)-6;a[c[g>>2]>>0]=0;a[(c[g>>2]|0)+1>>0]=0;a[(c[g>>2]|0)+2>>0]=1;a[(c[g>>2]|0)+3>>0]=c[(c[h>>2]|0)+12>>2];if(224==(c[(c[h>>2]|0)+12>>2]|0)?c[(c[k>>2]|0)+36>>2]|0:0){a[(c[g>>2]|0)+4>>0]=0;a[(c[g>>2]|0)+5>>0]=0}else{a[(c[g>>2]|0)+4>>0]=(c[o>>2]|0)>>>8;a[(c[g>>2]|0)+5>>0]=c[o>>2]}a[(c[g>>2]|0)+6>>0]=128|(c[(c[j>>2]|0)+20>>2]&3)<<4|(c[q>>2]&1)<<3|~c[t>>2]<<1&4;a[(c[g>>2]|0)+7>>0]=(c[(c[h>>2]|0)+16>>2]&255)<<7;a[(c[g>>2]|0)+8>>0]=c[n>>2];c[r>>2]=9;if(c[(c[h>>2]|0)+16>>2]|0){c[s>>2]=c[(c[j>>2]|0)+16>>2];q=((c[s>>2]|0)>>>28&14|33)&255;o=c[r>>2]|0;c[r>>2]=o+1;a[(c[g>>2]|0)+o>>0]=q;o=(c[s>>2]|0)>>>21&255;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g>>2]|0)+q>>0]=o;q=((c[s>>2]|0)>>>13&254|1)&255;o=c[r>>2]|0;c[r>>2]=o+1;a[(c[g>>2]|0)+o>>0]=q;o=(c[s>>2]|0)>>>6&255;q=c[r>>2]|0;c[r>>2]=q+1;a[(c[g>>2]|0)+q>>0]=o;q=(c[s>>2]<<2&252|1)&255;s=c[r>>2]|0;c[r>>2]=s+1;a[(c[g>>2]|0)+s>>0]=q}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=((c[p>>2]|0)-1|0)>>>0)break;s=c[r>>2]|0;c[r>>2]=s+1;a[(c[g>>2]|0)+s>>0]=-1;c[l>>2]=(c[l>>2]|0)+1}s=c[t>>2]&255;t=c[r>>2]|0;c[r>>2]=t+1;a[(c[g>>2]|0)+t>>0]=s;i=u;return c[r>>2]|0}function _g(f,g,h){f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;k=i;i=i+32|0;l=k+12|0;n=k+20|0;p=k+22|0;m=k+16|0;o=k+8|0;j=k+4|0;q=k;c[l>>2]=f;b[n>>1]=g;a[p>>0]=h;c[o>>2]=1;c[j>>2]=0;c[q>>2]=(c[o>>2]<<2)+12;h=c[j>>2]|0;c[j>>2]=h+1;a[(c[l>>2]|0)+h>>0]=0;h=(176|(c[q>>2]|0)-3>>8&3)&255;g=c[j>>2]|0;c[j>>2]=g+1;a[(c[l>>2]|0)+g>>0]=h;g=(c[q>>2]|0)-3&255;h=c[j>>2]|0;c[j>>2]=h+1;a[(c[l>>2]|0)+h>>0]=g;h=c[j>>2]|0;c[j>>2]=h+1;a[(c[l>>2]|0)+h>>0]=0;h=c[j>>2]|0;c[j>>2]=h+1;a[(c[l>>2]|0)+h>>0]=1;h=(193|(d[p>>0]|0)<<1&62)&255;g=c[j>>2]|0;c[j>>2]=g+1;a[(c[l>>2]|0)+g>>0]=h;g=c[j>>2]|0;c[j>>2]=g+1;a[(c[l>>2]|0)+g>>0]=0;g=c[j>>2]|0;c[j>>2]=g+1;a[(c[l>>2]|0)+g>>0]=0;g=c[o>>2]>>8&255;h=c[j>>2]|0;c[j>>2]=h+1;a[(c[l>>2]|0)+h>>0]=g;h=c[o>>2]&255;g=c[j>>2]|0;c[j>>2]=g+1;a[(c[l>>2]|0)+g>>0]=h;g=(57344|(e[n>>1]|0))>>8&255;h=c[j>>2]|0;c[j>>2]=h+1;a[(c[l>>2]|0)+h>>0]=g;h=b[n>>1]&255;g=c[j>>2]|0;c[j>>2]=g+1;a[(c[l>>2]|0)+g>>0]=h;c[m>>2]=Yg(c[l>>2]|0,c[j>>2]|0)|0;g=c[m>>2]&255;h=c[j>>2]|0;c[j>>2]=h+1;a[(c[l>>2]|0)+h>>0]=g;h=(c[m>>2]|0)>>>8&255;g=c[j>>2]|0;c[j>>2]=g+1;a[(c[l>>2]|0)+g>>0]=h;g=(c[m>>2]|0)>>>16&255;h=c[j>>2]|0;c[j>>2]=h+1;a[(c[l>>2]|0)+h>>0]=g;h=(c[m>>2]|0)>>>24&255;g=c[j>>2]|0;c[j>>2]=g+1;a[(c[l>>2]|0)+g>>0]=h;i=k;return c[j>>2]|0}function $g(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;q=i;i=i+48|0;h=q+24|0;j=q+16|0;k=q+32|0;l=q+34|0;o=q+28|0;p=q+20|0;s=q+12|0;r=q+8|0;n=q+4|0;m=q;c[j>>2]=e;b[k>>1]=f;a[l>>0]=g;c[p>>2]=0;c[s>>2]=1;c[r>>2]=(c[s>>2]<<2)+12;a[c[j>>2]>>0]=71;a[(c[j>>2]|0)+1>>0]=64;a[(c[j>>2]|0)+2>>0]=0;a[(c[j>>2]|0)+3>>0]=48|(d[l>>0]|0)&15;c[n>>2]=184-(c[r>>2]|0)-2;f=c[n>>2]&255;e=c[p>>2]|0;c[p>>2]=e+1;a[(c[j>>2]|0)+4+e>>0]=f;e=c[p>>2]|0;c[p>>2]=e+1;a[(c[j>>2]|0)+4+e>>0]=0;c[o>>2]=0;while(1){s=(c[o>>2]|0)<((c[n>>2]|0)-1|0);g=c[p>>2]|0;c[p>>2]=g+1;g=(c[j>>2]|0)+4+g|0;if(!s)break;a[g>>0]=-1;c[o>>2]=(c[o>>2]|0)+1}a[g>>0]=0;s=_g((c[j>>2]|0)+4+(c[p>>2]|0)|0,b[k>>1]|0,a[l>>0]|0)|0;c[p>>2]=(c[p>>2]|0)+s;if((c[p>>2]|0)!=184){c[h>>2]=-1;c[m>>2]=1;s=c[h>>2]|0;i=q;return s|0}else{c[h>>2]=1;c[m>>2]=1;s=c[h>>2]|0;i=q;return s|0}return 0}function ah(d,f,g,h){d=d|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+32|0;k=q+16|0;l=q+8|0;j=q+4|0;r=q;m=q+20|0;o=q+12|0;p=q+26|0;n=q+24|0;c[k>>2]=d;c[l>>2]=f;c[j>>2]=g;c[r>>2]=h;c[o>>2]=0;b[p>>1]=0;b[n>>1]=0;d=c[o>>2]|0;c[o>>2]=d+1;a[(c[k>>2]|0)+d>>0]=2;d=(176|(c[r>>2]|0)-3>>8&3)&255;h=c[o>>2]|0;c[o>>2]=h+1;a[(c[k>>2]|0)+h>>0]=d;h=(c[r>>2]|0)-3&255;d=c[o>>2]|0;c[o>>2]=d+1;a[(c[k>>2]|0)+d>>0]=h;d=(c[c[l>>2]>>2]|0)>>>8&255;h=c[o>>2]|0;c[o>>2]=h+1;a[(c[k>>2]|0)+h>>0]=d;h=c[c[l>>2]>>2]&255;d=c[o>>2]|0;c[o>>2]=d+1;a[(c[k>>2]|0)+d>>0]=h;d=(c[l>>2]|0)+8|0;h=c[d>>2]|0;if(c[(c[l>>2]|0)+36>>2]|0){c[d>>2]=h+1;r=c[o>>2]|0;c[o>>2]=r+1;a[(c[k>>2]|0)+r>>0]=193|h<<1&62}else{r=c[o>>2]|0;c[o>>2]=r+1;a[(c[k>>2]|0)+r>>0]=193|h<<1&62}r=c[o>>2]|0;c[o>>2]=r+1;a[(c[k>>2]|0)+r>>0]=0;r=c[o>>2]|0;c[o>>2]=r+1;a[(c[k>>2]|0)+r>>0]=0;r=((c[(c[l>>2]|0)+12>>2]|0)>>>8&255|224)&255;f=c[o>>2]|0;c[o>>2]=f+1;a[(c[k>>2]|0)+f>>0]=r;f=c[(c[l>>2]|0)+12>>2]&255;r=c[o>>2]|0;c[o>>2]=r+1;a[(c[k>>2]|0)+r>>0]=f;r=c[o>>2]|0;c[o>>2]=r+1;a[(c[k>>2]|0)+r>>0]=-1;r=c[o>>2]|0;c[o>>2]=r+1;a[(c[k>>2]|0)+r>>0]=-1;if(c[(c[l>>2]|0)+40>>2]&1|0){r=$q((c[k>>2]|0)+(c[o>>2]|0)|0,(c[j>>2]|0)+36|0,c[(c[l>>2]|0)+28>>2]|0,c[(c[j>>2]|0)+24>>2]|0,c[(c[j>>2]|0)+28>>2]|0,c[(c[j>>2]|0)+32>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+r;b[n>>1]=(e[n>>1]|0)+16}if(c[(c[l>>2]|0)+40>>2]&2|0){d=(c[k>>2]|0)+(c[o>>2]|0)|0;h=(c[l>>2]|0)+152|0;g=d+20|0;do{a[d>>0]=a[h>>0]|0;d=d+1|0;h=h+1|0}while((d|0)<(g|0));c[o>>2]=(c[o>>2]|0)+20;b[n>>1]=(e[n>>1]|0)+20}a[(c[k>>2]|0)+10>>0]=240|(e[n>>1]|0)>>8&15;a[(c[k>>2]|0)+11>>0]=b[n>>1];if(c[(c[l>>2]|0)+16>>2]&1|0){n=c[(c[l>>2]|0)+44+4>>2]&255;r=c[o>>2]|0;c[o>>2]=r+1;a[(c[k>>2]|0)+r>>0]=n;r=((c[(c[l>>2]|0)+44>>2]|0)>>>8&255|224)&255;n=c[o>>2]|0;c[o>>2]=n+1;a[(c[k>>2]|0)+n>>0]=r;n=c[(c[l>>2]|0)+44>>2]&255;r=c[o>>2]|0;c[o>>2]=r+1;a[(c[k>>2]|0)+r>>0]=n;r=c[o>>2]|0;c[o>>2]=r+1;a[(c[k>>2]|0)+r>>0]=-1;r=c[o>>2]|0;c[o>>2]=r+1;a[(c[k>>2]|0)+r>>0]=-1;if(c[(c[l>>2]|0)+40>>2]&4|0){d=(c[k>>2]|0)+(c[o>>2]|0)|0;h=(c[l>>2]|0)+172|0;g=d+16|0;do{a[d>>0]=a[h>>0]|0;d=d+1|0;h=h+1|0}while((d|0)<(g|0));c[o>>2]=(c[o>>2]|0)+16;b[p>>1]=(e[p>>1]|0)+16}if(c[(c[l>>2]|0)+32>>2]|0){d=(c[k>>2]|0)+(c[o>>2]|0)|0;h=(c[l>>2]|0)+200|0;g=d+12|0;do{a[d>>0]=a[h>>0]|0;d=d+1|0;h=h+1|0}while((d|0)<(g|0));c[o>>2]=(c[o>>2]|0)+12;b[p>>1]=(e[p>>1]|0)+12}a[(c[k>>2]|0)+((c[o>>2]|0)-(e[p>>1]|0)-2)>>0]=(e[p>>1]|0)>>8&255|240;a[(c[k>>2]|0)+((c[o>>2]|0)-(e[p>>1]|0)-1)>>0]=b[p>>1]}if(c[(c[l>>2]|0)+16>>2]&2|0?(n=c[(c[l>>2]|0)+80+4>>2]&255,r=c[o>>2]|0,c[o>>2]=r+1,a[(c[k>>2]|0)+r>>0]=n,r=((c[(c[l>>2]|0)+80>>2]|0)>>>8&255|224)&255,n=c[o>>2]|0,c[o>>2]=n+1,a[(c[k>>2]|0)+n>>0]=r,n=c[(c[l>>2]|0)+80>>2]&255,r=c[o>>2]|0,c[o>>2]=r+1,a[(c[k>>2]|0)+r>>0]=n,r=c[o>>2]|0,c[o>>2]=r+1,a[(c[k>>2]|0)+r>>0]=-16,r=c[o>>2]|0,c[o>>2]=r+1,a[(c[k>>2]|0)+r>>0]=0,c[(c[l>>2]|0)+40>>2]&8|0):0){b[p>>1]=12;a[(c[k>>2]|0)+((c[o>>2]|0)-2)>>0]=(e[p>>1]|0)>>8&255|240;a[(c[k>>2]|0)+((c[o>>2]|0)-1)>>0]=b[p>>1];d=(c[k>>2]|0)+(c[o>>2]|0)|0;h=(c[l>>2]|0)+188|0;g=d+12|0;do{a[d>>0]=a[h>>0]|0;d=d+1|0;h=h+1|0}while((d|0)<(g|0));c[o>>2]=(c[o>>2]|0)+12}if(!(c[(c[l>>2]|0)+16>>2]&4)){p=c[k>>2]|0;r=c[o>>2]|0;r=Yg(p,r)|0;c[m>>2]=r;r=c[m>>2]|0;r=r&255;p=c[o>>2]|0;n=p+1|0;c[o>>2]=n;n=c[k>>2]|0;p=n+p|0;a[p>>0]=r;p=c[m>>2]|0;p=p>>>8;p=p&255;r=c[o>>2]|0;n=r+1|0;c[o>>2]=n;n=c[k>>2]|0;r=n+r|0;a[r>>0]=p;r=c[m>>2]|0;r=r>>>16;r=r&255;p=c[o>>2]|0;n=p+1|0;c[o>>2]=n;n=c[k>>2]|0;p=n+p|0;a[p>>0]=r;p=c[m>>2]|0;p=p>>>24;p=p&255;r=c[o>>2]|0;n=r+1|0;c[o>>2]=n;n=c[k>>2]|0;r=n+r|0;a[r>>0]=p;r=c[o>>2]|0;i=q;return r|0}r=c[(c[l>>2]|0)+116+4>>2]&255;p=c[o>>2]|0;c[o>>2]=p+1;a[(c[k>>2]|0)+p>>0]=r;p=((c[(c[l>>2]|0)+116>>2]|0)>>>8&255|224)&255;r=c[o>>2]|0;c[o>>2]=r+1;a[(c[k>>2]|0)+r>>0]=p;r=c[(c[l>>2]|0)+116>>2]&255;p=c[o>>2]|0;c[o>>2]=p+1;a[(c[k>>2]|0)+p>>0]=r;p=c[o>>2]|0;c[o>>2]=p+1;a[(c[k>>2]|0)+p>>0]=-16;p=c[o>>2]|0;c[o>>2]=p+1;a[(c[k>>2]|0)+p>>0]=0;p=c[k>>2]|0;r=c[o>>2]|0;r=Yg(p,r)|0;c[m>>2]=r;r=c[m>>2]|0;r=r&255;p=c[o>>2]|0;n=p+1|0;c[o>>2]=n;n=c[k>>2]|0;p=n+p|0;a[p>>0]=r;p=c[m>>2]|0;p=p>>>8;p=p&255;r=c[o>>2]|0;n=r+1|0;c[o>>2]=n;n=c[k>>2]|0;r=n+r|0;a[r>>0]=p;r=c[m>>2]|0;r=r>>>16;r=r&255;p=c[o>>2]|0;n=p+1|0;c[o>>2]=n;n=c[k>>2]|0;p=n+p|0;a[p>>0]=r;p=c[m>>2]|0;p=p>>>24;p=p&255;r=c[o>>2]|0;n=r+1|0;c[o>>2]=n;n=c[k>>2]|0;r=n+r|0;a[r>>0]=p;r=c[o>>2]|0;i=q;return r|0}function bh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+48|0;f=p+28|0;g=p+20|0;h=p+12|0;j=p+4|0;m=p+32|0;o=p+24|0;n=p+16|0;l=p+8|0;k=p;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[o>>2]=0;c[n>>2]=16;if(c[(c[h>>2]|0)+40>>2]&1|0)c[n>>2]=(c[n>>2]|0)+16;if(c[(c[h>>2]|0)+40>>2]&2|0)c[n>>2]=(c[n>>2]|0)+20;if(c[(c[h>>2]|0)+16>>2]&1|0){c[n>>2]=(c[n>>2]|0)+5;if(c[(c[h>>2]|0)+40>>2]&4|0)c[n>>2]=(c[n>>2]|0)+16;if(c[(c[h>>2]|0)+32>>2]|0)c[n>>2]=(c[n>>2]|0)+12}if(c[(c[h>>2]|0)+16>>2]&2|0?(c[n>>2]=(c[n>>2]|0)+5,c[(c[h>>2]|0)+40>>2]&8|0):0)c[n>>2]=(c[n>>2]|0)+12;if(c[(c[h>>2]|0)+16>>2]&4|0)c[n>>2]=(c[n>>2]|0)+5;c[l>>2]=184-(c[n>>2]|0)-2;a[c[g>>2]>>0]=71;a[(c[g>>2]|0)+1>>0]=64|(c[(c[h>>2]|0)+4>>2]|0)>>>8&31;a[(c[g>>2]|0)+2>>0]=c[(c[h>>2]|0)+4>>2];a[(c[g>>2]|0)+3>>0]=48|c[(c[h>>2]|0)+8>>2]&15;d=c[l>>2]&255;b=c[o>>2]|0;c[o>>2]=b+1;a[(c[g>>2]|0)+4+b>>0]=d;b=c[o>>2]|0;c[o>>2]=b+1;a[(c[g>>2]|0)+4+b>>0]=0;c[m>>2]=0;while(1){b=(c[m>>2]|0)<((c[l>>2]|0)-1|0);e=c[o>>2]|0;c[o>>2]=e+1;e=(c[g>>2]|0)+4+e|0;if(!b)break;a[e>>0]=-1;c[m>>2]=(c[m>>2]|0)+1}a[e>>0]=0;n=ah((c[g>>2]|0)+4+(c[o>>2]|0)|0,c[h>>2]|0,c[j>>2]|0,c[n>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+n;if((c[o>>2]|0)!=184){c[f>>2]=-1;c[k>>2]=1;o=c[f>>2]|0;i=p;return o|0}else{c[f>>2]=1;c[k>>2]=1;o=c[f>>2]|0;i=p;return o|0}return 0}function ch(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=i;i=i+272|0;y=B+72|0;g=B+64|0;h=B+56|0;j=B+48|0;q=B+80|0;n=B+68|0;v=B+60|0;w=B+52|0;l=B+44|0;u=B+40|0;p=B+36|0;x=B+32|0;A=B+28|0;s=B+24|0;m=B+20|0;t=B+16|0;k=B+12|0;o=B+8|0;r=B+4|0;z=B;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[v>>2]=c[(c[h>>2]|0)+72>>2];c[w>>2]=c[(c[h>>2]|0)+76>>2];c[l>>2]=c[(c[h>>2]|0)+64>>2];c[u>>2]=(c[v>>2]|0)+(c[(c[h>>2]|0)+80>>2]|0);c[p>>2]=0;c[A>>2]=0;c[o>>2]=0;c[(c[g>>2]|0)+16>>2]=1;c[(c[g>>2]|0)+24>>2]=c[(c[h>>2]|0)+68>>2];c[(c[g>>2]|0)+28>>2]=c[(c[g>>2]|0)+24>>2];a:while(1){if((c[(c[g>>2]|0)+28>>2]|0)>>>0<=0){b=41;break}c[n>>2]=Zg(q,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;c[s>>2]=(c[(c[g>>2]|0)+32>>2]|0)+(c[n>>2]|0);f=(c[g>>2]|0)+28|0;c[f>>2]=(c[f>>2]|0)-(c[(c[g>>2]|0)+32>>2]|0);c[o>>2]=(c[(c[g>>2]|0)+28>>2]|0)>>>0<=0&1;c[x>>2]=0;while(1){if((c[s>>2]|0)>>>0<=0)break;c[t>>2]=0;c[m>>2]=0;c[k>>2]=0;if((c[u>>2]|0)>>>0>((c[v>>2]|0)+(c[w>>2]|0)+-188|0)>>>0){b=6;break a}a[c[u>>2]>>0]=71;a[(c[u>>2]|0)+1>>0]=(c[c[g>>2]>>2]|0)>>>8&31|((c[x>>2]|0)==0&1)<<6;a[(c[u>>2]|0)+2>>0]=c[c[g>>2]>>2];f=(c[g>>2]|0)+8|0;b=c[f>>2]|0;c[f>>2]=b+1;a[(c[u>>2]|0)+3>>0]=16|b&15;b=(c[p>>2]|0)==0&(c[x>>2]|0)==0;do if(c[o>>2]|0){if(!b){if((c[s>>2]|0)>>>0>184){c[m>>2]=184;break}c[t>>2]=182-(c[s>>2]|0);b=(c[u>>2]|0)+3|0;a[b>>0]=d[b>>0]|0|32;a[(c[u>>2]|0)+4+1>>0]=0;b=c[t>>2]|0;if((c[t>>2]|0)>0){a[(c[u>>2]|0)+4>>0]=b+1;a[(c[u>>2]|0)+4+2>>0]=-2;Ox((c[u>>2]|0)+4+3|0,-1,(c[t>>2]|0)-1|0)|0;c[m>>2]=c[s>>2];break}e=(c[u>>2]|0)+4|0;if(!b){a[e>>0]=2;a[(c[u>>2]|0)+4+2>>0]=-1;c[m>>2]=181;break}else{a[e>>0]=1;c[m>>2]=182;break}}f=(c[u>>2]|0)+3|0;a[f>>0]=d[f>>0]|0|32;a[(c[u>>2]|0)+4+1>>0]=2|c[(c[g>>2]|0)+20>>2]<<4;c[r>>2]=2;if(c[(c[g>>2]|0)+20>>2]|0){f=(c[(c[h>>2]|0)+12>>2]|0)>>>24&255;e=c[r>>2]|0;c[r>>2]=e+1;a[(c[u>>2]|0)+4+e>>0]=f;e=(c[(c[h>>2]|0)+12>>2]|0)>>>16&255;f=c[r>>2]|0;c[r>>2]=f+1;a[(c[u>>2]|0)+4+f>>0]=e;f=(c[(c[h>>2]|0)+12>>2]|0)>>>8&255;e=c[r>>2]|0;c[r>>2]=e+1;a[(c[u>>2]|0)+4+e>>0]=f;e=c[(c[h>>2]|0)+12>>2]&255;f=c[r>>2]|0;c[r>>2]=f+1;a[(c[u>>2]|0)+4+f>>0]=e;f=c[r>>2]|0;c[r>>2]=f+1;a[(c[u>>2]|0)+4+f>>0]=126;f=c[r>>2]|0;c[r>>2]=f+1;a[(c[u>>2]|0)+4+f>>0]=0;c[(c[g>>2]|0)+20>>2]=0}f=c[r>>2]|0;c[r>>2]=f+1;a[(c[u>>2]|0)+4+f>>0]=4;f=(c[(c[h>>2]|0)+4>>2]|0)>>>24&255;e=c[r>>2]|0;c[r>>2]=e+1;a[(c[u>>2]|0)+4+e>>0]=f;e=(c[(c[h>>2]|0)+4>>2]|0)>>>16&255;f=c[r>>2]|0;c[r>>2]=f+1;a[(c[u>>2]|0)+4+f>>0]=e;f=(c[(c[h>>2]|0)+4>>2]|0)>>>8&255;e=c[r>>2]|0;c[r>>2]=e+1;a[(c[u>>2]|0)+4+e>>0]=f;e=c[(c[h>>2]|0)+4>>2]&255;f=c[r>>2]|0;c[r>>2]=f+1;a[(c[u>>2]|0)+4+f>>0]=e;if(c[(c[h>>2]|0)+8>>2]|0){f=(c[u>>2]|0)+4+1|0;a[f>>0]=d[f>>0]|0|64}c[t>>2]=184-(c[r>>2]|0)-(c[s>>2]|0);b=c[t>>2]|0;if((c[t>>2]|0)>0){a[(c[u>>2]|0)+4>>0]=b+(c[r>>2]|0)-1;a[(c[u>>2]|0)+4+(c[r>>2]|0)>>0]=-2;Ox((c[u>>2]|0)+4+((c[r>>2]|0)+1)|0,-1,(c[t>>2]|0)-1|0)|0;c[m>>2]=c[s>>2];break}e=c[r>>2]|0;if(!b){a[(c[u>>2]|0)+4>>0]=e;a[(c[u>>2]|0)+4+13>>0]=-1;c[m>>2]=184-(c[r>>2]|0)-1;break}else{a[(c[u>>2]|0)+4>>0]=e-1;c[m>>2]=184-(c[r>>2]|0);break}}else{if(!b){if((c[s>>2]|0)>>>0<184){f=(c[u>>2]|0)+3|0;a[f>>0]=d[f>>0]|0|32;c[k>>2]=1;c[t>>2]=182-((c[s>>2]|0)>>>0<182?c[s>>2]|0:182);a[(c[u>>2]|0)+4>>0]=1+(c[t>>2]|0);a[(c[u>>2]|0)+4+1>>0]=0}if((c[t>>2]|0)>0)Ox((c[u>>2]|0)+4+2|0,-1,c[t>>2]|0)|0;c[m>>2]=184-(c[k>>2]<<1)-(c[t>>2]|0);break}f=(c[u>>2]|0)+3|0;a[f>>0]=d[f>>0]|0|32;a[(c[u>>2]|0)+4+1>>0]=2|c[(c[g>>2]|0)+20>>2]<<4;c[r>>2]=2;if(c[(c[g>>2]|0)+20>>2]|0){f=(c[(c[h>>2]|0)+12>>2]|0)>>>24&255;e=c[r>>2]|0;c[r>>2]=e+1;a[(c[u>>2]|0)+4+e>>0]=f;e=(c[(c[h>>2]|0)+12>>2]|0)>>>16&255;f=c[r>>2]|0;c[r>>2]=f+1;a[(c[u>>2]|0)+4+f>>0]=e;f=(c[(c[h>>2]|0)+12>>2]|0)>>>8&255;e=c[r>>2]|0;c[r>>2]=e+1;a[(c[u>>2]|0)+4+e>>0]=f;e=c[(c[h>>2]|0)+12>>2]&255;f=c[r>>2]|0;c[r>>2]=f+1;a[(c[u>>2]|0)+4+f>>0]=e;f=c[r>>2]|0;c[r>>2]=f+1;a[(c[u>>2]|0)+4+f>>0]=126;f=c[r>>2]|0;c[r>>2]=f+1;a[(c[u>>2]|0)+4+f>>0]=0;c[(c[g>>2]|0)+20>>2]=0}f=c[r>>2]|0;c[r>>2]=f+1;a[(c[u>>2]|0)+4+f>>0]=4;f=(c[(c[h>>2]|0)+4>>2]|0)>>>24&255;e=c[r>>2]|0;c[r>>2]=e+1;a[(c[u>>2]|0)+4+e>>0]=f;e=(c[(c[h>>2]|0)+4>>2]|0)>>>16&255;f=c[r>>2]|0;c[r>>2]=f+1;a[(c[u>>2]|0)+4+f>>0]=e;f=(c[(c[h>>2]|0)+4>>2]|0)>>>8&255;e=c[r>>2]|0;c[r>>2]=e+1;a[(c[u>>2]|0)+4+e>>0]=f;e=c[(c[h>>2]|0)+4>>2]&255;f=c[r>>2]|0;c[r>>2]=f+1;a[(c[u>>2]|0)+4+f>>0]=e;if(c[(c[h>>2]|0)+8>>2]|0){f=(c[u>>2]|0)+4+1|0;a[f>>0]=d[f>>0]|0|96}c[t>>2]=184-(c[r>>2]|0)-((c[s>>2]|0)>>>0<(184-(c[r>>2]|0)|0)>>>0?c[s>>2]|0:184-(c[r>>2]|0)|0);c[m>>2]=184-(c[r>>2]|0)-(c[t>>2]|0);a[(c[u>>2]|0)+4>>0]=(c[r>>2]|0)-1+(c[t>>2]|0);if((c[t>>2]|0)>0)Ox((c[u>>2]|0)+4+(c[r>>2]|0)|0,-1,c[t>>2]|0)|0}while(0);c[s>>2]=(c[s>>2]|0)-(c[m>>2]|0);if(!(c[x>>2]|0)){Tx((c[u>>2]|0)+4+(184-(c[m>>2]|0))|0,q|0,c[n>>2]|0)|0;c[m>>2]=(c[m>>2]|0)-(c[n>>2]|0)}Tx((c[u>>2]|0)+4+(184-(c[m>>2]|0))|0,c[l>>2]|0,c[m>>2]|0)|0;c[l>>2]=(c[l>>2]|0)+(c[m>>2]|0);c[x>>2]=(c[x>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+188}c[(c[g>>2]|0)+16>>2]=0;c[p>>2]=(c[p>>2]|0)+1;c[A>>2]=(c[A>>2]|0)+(c[x>>2]|0)}if((b|0)==6){c[y>>2]=-2147483647;c[z>>2]=1;A=c[y>>2]|0;i=B;return A|0}else if((b|0)==41){c[y>>2]=(c[A>>2]|0)*188;c[z>>2]=1;A=c[y>>2]|0;i=B;return A|0}return 0}function dh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>>2]=a;c[f>>2]=b;if(0==(c[e>>2]|0)|0==(c[f>>2]|0)){c[d>>2]=-2147483648;a=c[d>>2]|0;i=g;return a|0}c[(c[e>>2]|0)+16>>2]=c[c[f>>2]>>2];c[(c[e>>2]|0)+24>>2]=c[(c[f>>2]|0)+4>>2];c[(c[e>>2]|0)+28>>2]=c[(c[f>>2]|0)+24+8>>2];c[(c[e>>2]|0)+32>>2]=c[(c[f>>2]|0)+24+32+76>>2];c[(c[e>>2]|0)+40>>2]=c[(c[f>>2]|0)+20>>2];c[(c[e>>2]|0)+44+4>>2]=c[(c[f>>2]|0)+8>>2];c[(c[e>>2]|0)+80+4>>2]=c[(c[f>>2]|0)+12>>2];c[(c[e>>2]|0)+116+4>>2]=c[(c[f>>2]|0)+16>>2];if(c[(c[e>>2]|0)+40>>2]&2|0)cr((c[e>>2]|0)+152|0,(c[f>>2]|0)+24+16|0)|0;if(c[c[f>>2]>>2]&4|0)c[(c[e>>2]|0)+12>>2]=c[(c[e>>2]|0)+116>>2];if(c[c[f>>2]>>2]&2|0){if(c[(c[e>>2]|0)+40>>2]&8|0)br((c[e>>2]|0)+188|0,(c[f>>2]|0)+24+128|0)|0;c[(c[e>>2]|0)+12>>2]=c[(c[e>>2]|0)+80>>2]}if(c[c[f>>2]>>2]&1|0){if(c[(c[e>>2]|0)+40>>2]&4|0)ar((c[e>>2]|0)+172|0,(c[f>>2]|0)+24+32|0)|0;if(c[(c[e>>2]|0)+32>>2]|0)dr((c[e>>2]|0)+200|0,(c[f>>2]|0)+24+32|0)|0;c[(c[e>>2]|0)+12>>2]=c[(c[e>>2]|0)+44>>2]}c[d>>2]=1;a=c[d>>2]|0;i=g;return a|0}function eh(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[d>>2]=a;if(!(c[d>>2]|0))c[b>>2]=-2147483648;else{c[(c[d>>2]|0)+4>>2]=212;c[b>>2]=1}i=e;return c[b>>2]|0}function fh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+12|0;e=j+8|0;f=j+4|0;h=j+16|0;g=j;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=-2147483648;c[g>>2]=1;h=c[d>>2]|0;i=j;return h|0}if((c[(c[e>>2]|0)+4>>2]|0)>>>0<212){c[d>>2]=-2147483647;c[g>>2]=1;h=c[d>>2]|0;i=j;return h|0}if(!(c[(c[e>>2]|0)+8>>2]&7)){c[d>>2]=-2147483646;c[g>>2]=1;h=c[d>>2]|0;i=j;return h|0}else{c[h>>2]=c[c[e>>2]>>2];c[(c[h>>2]|0)+8>>2]=0;c[c[h>>2]>>2]=1;c[(c[h>>2]|0)+4>>2]=(c[c[h>>2]>>2]<<2)+28;c[(c[h>>2]|0)+44>>2]=(c[c[h>>2]>>2]<<2)+29;c[(c[h>>2]|0)+80>>2]=(c[c[h>>2]>>2]<<2)+30;c[(c[h>>2]|0)+116>>2]=(c[c[h>>2]>>2]<<2)+31;c[(c[h>>2]|0)+44+8>>2]=0;c[(c[h>>2]|0)+80+8>>2]=0;c[(c[h>>2]|0)+116+8>>2]=0;c[(c[h>>2]|0)+36>>2]=c[(c[e>>2]|0)+212>>2];dh(c[h>>2]|0,(c[e>>2]|0)+8|0)|0;c[c[f>>2]>>2]=c[h>>2];c[d>>2]=1;c[g>>2]=1;h=c[d>>2]|0;i=j;return h|0}return 0}function gh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;g=l+20|0;d=l+12|0;h=l+4|0;f=l+24|0;e=l+16|0;k=l+8|0;j=l;c[d>>2]=a;c[h>>2]=b;c[k>>2]=0;if(0==(c[h>>2]|0)|0==(c[d>>2]|0)){c[g>>2]=-2147483648;c[j>>2]=1;k=c[g>>2]|0;i=l;return k|0}c[f>>2]=c[d>>2];switch(c[c[h>>2]>>2]|0){case 0:case 1:case 2:case 3:{c[e>>2]=(c[f>>2]|0)+44;c[(c[e>>2]|0)+12>>2]=224;c[(c[e>>2]|0)+20>>2]=1;c[c[e>>2]>>2]=c[(c[f>>2]|0)+44>>2];break}case 4:{c[e>>2]=(c[f>>2]|0)+80;c[(c[e>>2]|0)+12>>2]=192;d=(c[e>>2]|0)+20|0;if(c[(c[f>>2]|0)+16>>2]&1|0)c[d>>2]=0;else c[d>>2]=1;c[c[e>>2]>>2]=c[(c[f>>2]|0)+80>>2];break}case 5:{c[e>>2]=(c[f>>2]|0)+116;c[(c[e>>2]|0)+20>>2]=0;c[(c[e>>2]|0)+12>>2]=189;c[c[e>>2]>>2]=c[(c[f>>2]|0)+116>>2];break}default:{c[g>>2]=-2147483645;c[j>>2]=1;k=c[g>>2]|0;i=l;return k|0}}c[(c[h>>2]|0)+80>>2]=0;do if(c[(c[h>>2]|0)+8>>2]|0){if((c[(c[h>>2]|0)+76>>2]|0)>>>0>=564){$g(c[(c[h>>2]|0)+72>>2]|0,c[(c[f>>2]|0)+4>>2]&65535,c[(c[f>>2]|0)+8>>2]&255)|0;bh((c[(c[h>>2]|0)+72>>2]|0)+188|0,c[f>>2]|0,c[h>>2]|0)|0;b=(c[h>>2]|0)+80|0;c[b>>2]=(c[b>>2]|0)+376;break}c[g>>2]=-2147483647;c[j>>2]=1;k=c[g>>2]|0;i=l;return k|0}while(0);c[k>>2]=ch(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0;d=c[k>>2]|0;if((c[k>>2]|0)>0){k=(c[h>>2]|0)+80|0;c[k>>2]=(c[k>>2]|0)+d;c[g>>2]=1;c[j>>2]=1;k=c[g>>2]|0;i=l;return k|0}else{c[g>>2]=d;c[j>>2]=1;k=c[g>>2]|0;i=l;return k|0}return 0}function hh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+12|0;e=j+8|0;f=j+4|0;h=j+16|0;g=j;c[e>>2]=a;c[f>>2]=b;if(0==(c[e>>2]|0)|0==(c[f>>2]|0)){c[d>>2]=-2147483648;c[g>>2]=1;h=c[d>>2]|0;i=j;return h|0}else{c[h>>2]=c[e>>2];c[d>>2]=dh(c[h>>2]|0,c[f>>2]|0)|0;c[g>>2]=1;h=c[d>>2]|0;i=j;return h|0}return 0}function ih(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>2]=0;while(1){if((c[d>>2]|0)>=13)break;if((c[2136+(c[d>>2]<<2)>>2]|0)==(c[b>>2]|0))break;c[d>>2]=(c[d>>2]|0)+1}if((c[d>>2]|0)<13){d=c[d>>2]|0;i=e;return d|0}c[d>>2]=8;d=c[d>>2]|0;i=e;return d|0}function jh(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[d>>2]=a;if(!(c[d>>2]|0))c[b>>2]=-2147483648;else{c[c[d>>2]>>2]=508;c[b>>2]=1}i=e;return c[b>>2]|0}function kh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[e>>2]|0)+4>>2];if(!(c[e>>2]|0)){c[d>>2]=-2147483648;g=c[d>>2]|0;i=h;return g|0}if(!(c[(c[e>>2]|0)+4>>2]|0)){c[d>>2]=-2147483648;g=c[d>>2]|0;i=h;return g|0}else{Ox(c[g>>2]|0,0,508)|0;lh(c[g>>2]|0,(c[e>>2]|0)+8|0)|0;c[c[f>>2]>>2]=c[g>>2];c[d>>2]=1;g=c[d>>2]|0;i=h;return g|0}return 0}function lh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+12|0;h=g+8|0;d=g+4|0;f=g;c[h>>2]=a;c[d>>2]=b;c[f>>2]=c[h>>2];if(0==(c[h>>2]|0)|0==(c[d>>2]|0)){c[e>>2]=-2147483648;h=c[e>>2]|0;i=g;return h|0}else{Tx(c[f>>2]|0,c[d>>2]|0,196)|0;c[(c[f>>2]|0)+204>>2]=0;c[(c[f>>2]|0)+208>>2]=0;c[(c[f>>2]|0)+316>>2]=0;c[(c[f>>2]|0)+420>>2]=0;c[(c[f>>2]|0)+492>>2]=0;c[(c[f>>2]|0)+424>>2]=0;c[(c[f>>2]|0)+200>>2]=0;c[(c[f>>2]|0)+496>>2]=1;c[(c[f>>2]|0)+196>>2]=279;d=(c[f>>2]|0)+216|0;a=d+100|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));d=(c[f>>2]|0)+320|0;a=d+100|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(a|0));h=(c[f>>2]|0)+428|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[e>>2]=1;h=c[e>>2]|0;i=g;return h|0}return 0}function mh(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0;h=i;i=i+32|0;j=h+20|0;n=h+16|0;o=h+12|0;m=h+8|0;l=h+4|0;k=h;c[j>>2]=b;c[n>>2]=d;c[o>>2]=e;c[m>>2]=f;c[l>>2]=g;c[k>>2]=0;d=c[o>>2]>>24&255;g=c[k>>2]|0;c[k>>2]=g+1;a[(c[j>>2]|0)+g>>0]=d;g=c[o>>2]>>16&255;d=c[k>>2]|0;c[k>>2]=d+1;a[(c[j>>2]|0)+d>>0]=g;d=c[o>>2]>>8&255;g=c[k>>2]|0;c[k>>2]=g+1;a[(c[j>>2]|0)+g>>0]=d;g=c[o>>2]&255;d=c[k>>2]|0;c[k>>2]=d+1;a[(c[j>>2]|0)+d>>0]=g;d=c[n>>2]&255;g=c[k>>2]|0;c[k>>2]=g+1;a[(c[j>>2]|0)+g>>0]=d;g=c[m>>2]>>16&255;d=c[k>>2]|0;c[k>>2]=d+1;a[(c[j>>2]|0)+d>>0]=g;d=c[m>>2]>>8&255;g=c[k>>2]|0;c[k>>2]=g+1;a[(c[j>>2]|0)+g>>0]=d;g=c[m>>2]&255;d=c[k>>2]|0;c[k>>2]=d+1;a[(c[j>>2]|0)+d>>0]=g;d=c[l>>2]>>16&255;g=c[k>>2]|0;c[k>>2]=g+1;a[(c[j>>2]|0)+g>>0]=d;g=c[l>>2]>>8&255;d=c[k>>2]|0;c[k>>2]=d+1;a[(c[j>>2]|0)+d>>0]=g;d=c[l>>2]&255;g=c[k>>2]|0;c[k>>2]=g+1;a[(c[j>>2]|0)+g>>0]=d;g=c[l>>2]>>24&255;d=c[k>>2]|0;c[k>>2]=d+1;a[(c[j>>2]|0)+d>>0]=g;d=c[k>>2]|0;c[k>>2]=d+1;a[(c[j>>2]|0)+d>>0]=0;d=c[k>>2]|0;c[k>>2]=d+1;a[(c[j>>2]|0)+d>>0]=0;d=c[k>>2]|0;c[k>>2]=d+1;a[(c[j>>2]|0)+d>>0]=0;i=h;return 15}function nh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+48|0;f=s+32|0;g=s+28|0;h=s+24|0;j=s+20|0;o=s+16|0;q=s+12|0;r=s+8|0;p=s+4|0;l=s+38|0;m=s+37|0;k=s+36|0;n=s;c[g>>2]=b;c[h>>2]=e;c[j>>2]=(c[(c[h>>2]|0)+48>>2]|0)+(c[(c[h>>2]|0)+52>>2]|0);c[o>>2]=0;c[q>>2]=c[(c[h>>2]|0)+40>>2];c[r>>2]=c[(c[h>>2]|0)+44>>2];c[p>>2]=0;a[l>>0]=2;a[m>>0]=ih(c[(c[g>>2]|0)+16+128+12>>2]|0)|0;a[k>>0]=c[(c[g>>2]|0)+16+128+8>>2];c[n>>2]=0;if((!(0==(c[j>>2]|0)|0==(c[q>>2]|0))?(c[r>>2]|0)>>>0<(c[(c[h>>2]|0)+56>>2]|0)>>>0:0)?(c[(c[h>>2]|0)+52>>2]|0)>>>0<(c[(c[h>>2]|0)+56>>2]|0)>>>0:0){do if((c[c[h>>2]>>2]|0)==4){do if(c[(c[g>>2]|0)+496>>2]|0){c[(c[g>>2]|0)+500>>2]=c[(c[h>>2]|0)+32>>2];b=mh(c[j>>2]|0,8,c[(c[g>>2]|0)+196>>2]|0,0,0)|0;c[p>>2]=(c[p>>2]|0)+b;b=c[p>>2]|0;c[p>>2]=b+1;a[(c[j>>2]|0)+b>>0]=-81;b=c[p>>2]|0;c[p>>2]=b+1;a[(c[j>>2]|0)+b>>0]=0;b=((d[l>>0]|0)<<3|(d[m>>0]|0)>>1&7)&255;e=c[p>>2]|0;c[p>>2]=e+1;a[(c[j>>2]|0)+e>>0]=b;e=(((d[m>>0]|0)&1)<<7|(d[k>>0]|0)<<3)&255;b=c[p>>2]|0;c[p>>2]=b+1;a[(c[j>>2]|0)+b>>0]=e;if((c[p>>2]|0)>>>0<4){c[f>>2]=-2147483647;r=c[f>>2]|0;i=s;return r|0}c[(c[g>>2]|0)+196>>2]=(c[p>>2]|0)-4;c[(c[h>>2]|0)+52>>2]=(c[(c[g>>2]|0)+196>>2]|0)+4;if((c[(c[g>>2]|0)+196>>2]|0)>>>0>=11){c[o>>2]=(c[(c[g>>2]|0)+196>>2]|0)-11;a[(c[j>>2]|0)+5>>0]=(c[o>>2]|0)>>>16;a[(c[j>>2]|0)+6>>0]=(c[o>>2]|0)>>>8;a[(c[j>>2]|0)+7>>0]=c[o>>2];c[n>>2]=c[(c[h>>2]|0)+52>>2];c[(c[g>>2]|0)+496>>2]=0;break}c[f>>2]=-2147483647;r=c[f>>2]|0;i=s;return r|0}while(0);c[j>>2]=(c[(c[h>>2]|0)+48>>2]|0)+(c[(c[h>>2]|0)+52>>2]|0);c[p>>2]=0;b=mh(c[j>>2]|0,8,c[(c[g>>2]|0)+196>>2]|0,0,(c[(c[h>>2]|0)+32>>2]|0)-(c[(c[g>>2]|0)+500>>2]|0)|0)|0;c[p>>2]=(c[p>>2]|0)+b;b=c[p>>2]|0;c[p>>2]=b+1;a[(c[j>>2]|0)+b>>0]=-81;b=c[p>>2]|0;c[p>>2]=b+1;a[(c[j>>2]|0)+b>>0]=1;if(((c[(c[h>>2]|0)+52>>2]|0)+(c[p>>2]|0)+(c[r>>2]|0)|0)>>>0>=(c[(c[h>>2]|0)+56>>2]|0)>>>0){c[f>>2]=-2147483647;r=c[f>>2]|0;i=s;return r|0}Tx((c[j>>2]|0)+(c[p>>2]|0)|0,c[q>>2]|0,c[r>>2]|0)|0;c[p>>2]=(c[p>>2]|0)+(c[r>>2]|0);if((c[p>>2]|0)>>>0<4){c[f>>2]=-2147483647;r=c[f>>2]|0;i=s;return r|0}c[(c[g>>2]|0)+196>>2]=(c[p>>2]|0)-4;c[(c[h>>2]|0)+52>>2]=(c[(c[g>>2]|0)+196>>2]|0)+4+(c[n>>2]|0);if((c[(c[g>>2]|0)+196>>2]|0)>>>0>=11){c[o>>2]=(c[(c[g>>2]|0)+196>>2]|0)-11;a[(c[j>>2]|0)+5>>0]=(c[o>>2]|0)>>>16;a[(c[j>>2]|0)+6>>0]=(c[o>>2]|0)>>>8;a[(c[j>>2]|0)+7>>0]=c[o>>2];break}c[f>>2]=-2147483647;r=c[f>>2]|0;i=s;return r|0}while(0);c[f>>2]=1;r=c[f>>2]|0;i=s;return r|0}c[f>>2]=-2147483648;r=c[f>>2]|0;i=s;return r|0}function oh(b,e){b=b|0;e=e|0;var f=0,g=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;u=i;i=i+64|0;k=u+48|0;l=u+44|0;m=u+40|0;r=u+36|0;h=u+32|0;g=u+28|0;f=u+24|0;p=u+20|0;q=u+16|0;o=u+12|0;t=u+8|0;s=u+4|0;n=u;c[l>>2]=b;c[m>>2]=e;c[r>>2]=0;c[h>>2]=0;c[g>>2]=0;c[f>>2]=0;c[p>>2]=7;c[q>>2]=0;c[o>>2]=0;c[t>>2]=c[(c[m>>2]|0)+44>>2];c[s>>2]=c[(c[m>>2]|0)+40>>2];c[n>>2]=(c[(c[m>>2]|0)+48>>2]|0)+(c[(c[m>>2]|0)+52>>2]|0);if((!(0==(c[n>>2]|0)|0==(c[s>>2]|0))?(c[t>>2]|0)>>>0<(c[(c[m>>2]|0)+56>>2]|0)>>>0:0)?(c[(c[m>>2]|0)+52>>2]|0)>>>0<(c[(c[m>>2]|0)+56>>2]|0)>>>0:0){if(!(((c[c[m>>2]>>2]|0)!=3?(c[c[m>>2]>>2]|0)!=1:0)?(c[c[m>>2]>>2]|0)!=0:0))j=8;do if((j|0)==8){switch((d[(c[s>>2]|0)+4>>0]|0)&31|0){case 7:{c[h>>2]=1;c[(c[l>>2]|0)+204>>2]=1;break}case 8:{c[g>>2]=1;c[(c[l>>2]|0)+208>>2]=1;break}case 9:{c[f>>2]=1;c[(c[l>>2]|0)+212>>2]=1;break}default:{}}if(!(c[(c[l>>2]|0)+204>>2]|0)){c[k>>2]=0;t=c[k>>2]|0;i=u;return t|0}if(c[h>>2]|0)if((c[t>>2]|0)>>>0>=100){c[k>>2]=-2147483647;t=c[k>>2]|0;i=u;return t|0}else{Tx((c[l>>2]|0)+216|0,c[s>>2]|0,c[t>>2]|0)|0;c[(c[l>>2]|0)+316>>2]=c[t>>2];c[k>>2]=1;t=c[k>>2]|0;i=u;return t|0}if(c[g>>2]|0)if((c[t>>2]|0)>>>0>=100){c[k>>2]=-2147483647;t=c[k>>2]|0;i=u;return t|0}else{Tx((c[l>>2]|0)+320|0,c[s>>2]|0,c[t>>2]|0)|0;c[(c[l>>2]|0)+420>>2]=c[t>>2];c[k>>2]=1;t=c[k>>2]|0;i=u;return t|0}if(c[(c[l>>2]|0)+204>>2]|0?c[(c[l>>2]|0)+208>>2]|0:0){if(!(c[(c[l>>2]|0)+424>>2]|0)){c[(c[l>>2]|0)+504>>2]=c[(c[m>>2]|0)+32>>2];c[r>>2]=mh(c[n>>2]|0,9,c[(c[l>>2]|0)+196>>2]|0,0,0)|0;j=(c[(c[m>>2]|0)+12>>2]|0)!=0;f=c[r>>2]|0;c[r>>2]=f+1;f=(c[n>>2]|0)+f|0;if(j)a[f>>0]=23;else a[f>>0]=39;do if((c[p>>2]|0)==7){b=c[r>>2]|0;c[r>>2]=b+1;a[(c[n>>2]|0)+b>>0]=0;b=c[r>>2]|0;c[r>>2]=b+1;a[(c[n>>2]|0)+b>>0]=0;b=c[r>>2]|0;c[r>>2]=b+1;a[(c[n>>2]|0)+b>>0]=0;b=c[r>>2]|0;c[r>>2]=b+1;a[(c[n>>2]|0)+b>>0]=0;b=c[r>>2]|0;c[r>>2]=b+1;a[(c[n>>2]|0)+b>>0]=1;b=a[(c[l>>2]|0)+216+5>>0]|0;j=c[r>>2]|0;c[r>>2]=j+1;a[(c[n>>2]|0)+j>>0]=b;j=a[(c[l>>2]|0)+216+6>>0]|0;b=c[r>>2]|0;c[r>>2]=b+1;a[(c[n>>2]|0)+b>>0]=j;b=a[(c[l>>2]|0)+216+7>>0]|0;j=c[r>>2]|0;c[r>>2]=j+1;a[(c[n>>2]|0)+j>>0]=b;j=c[r>>2]|0;c[r>>2]=j+1;a[(c[n>>2]|0)+j>>0]=-1;j=c[r>>2]|0;c[r>>2]=j+1;a[(c[n>>2]|0)+j>>0]=-31;if((c[(c[l>>2]|0)+316>>2]|0)>>>0<4){c[k>>2]=-2147483647;t=c[k>>2]|0;i=u;return t|0}j=((c[(c[l>>2]|0)+316>>2]|0)-4|0)>>>8&255;b=c[r>>2]|0;c[r>>2]=b+1;a[(c[n>>2]|0)+b>>0]=j;b=(c[(c[l>>2]|0)+316>>2]|0)-4&255;j=c[r>>2]|0;c[r>>2]=j+1;a[(c[n>>2]|0)+j>>0]=b;if(((c[(c[m>>2]|0)+52>>2]|0)+(c[r>>2]|0)+(c[(c[l>>2]|0)+316>>2]|0)|0)>>>0>=((c[(c[m>>2]|0)+56>>2]|0)+4|0)>>>0){c[k>>2]=-2147483647;t=c[k>>2]|0;i=u;return t|0}Tx((c[n>>2]|0)+(c[r>>2]|0)|0,(c[l>>2]|0)+216+4|0,(c[(c[l>>2]|0)+316>>2]|0)-4|0)|0;c[r>>2]=(c[r>>2]|0)+(c[(c[l>>2]|0)+316>>2]|0)-4;j=c[r>>2]|0;c[r>>2]=j+1;a[(c[n>>2]|0)+j>>0]=1;if((c[(c[l>>2]|0)+420>>2]|0)>>>0<4){c[k>>2]=-2147483647;t=c[k>>2]|0;i=u;return t|0}j=((c[(c[l>>2]|0)+420>>2]|0)-4|0)>>>8&255;b=c[r>>2]|0;c[r>>2]=b+1;a[(c[n>>2]|0)+b>>0]=j;b=(c[(c[l>>2]|0)+420>>2]|0)-4&255;j=c[r>>2]|0;c[r>>2]=j+1;a[(c[n>>2]|0)+j>>0]=b;if(((c[(c[m>>2]|0)+52>>2]|0)+(c[r>>2]|0)+(c[(c[l>>2]|0)+420>>2]|0)|0)>>>0>=((c[(c[m>>2]|0)+56>>2]|0)+4|0)>>>0){c[k>>2]=-2147483647;t=c[k>>2]|0;i=u;return t|0}Tx((c[n>>2]|0)+(c[r>>2]|0)|0,(c[l>>2]|0)+320+4|0,(c[(c[l>>2]|0)+420>>2]|0)-4|0)|0;c[r>>2]=(c[r>>2]|0)+(c[(c[l>>2]|0)+420>>2]|0)-4;c[(c[l>>2]|0)+196>>2]=(c[r>>2]|0)-4;c[(c[m>>2]|0)+52>>2]=(c[(c[l>>2]|0)+196>>2]|0)+4;if((c[(c[l>>2]|0)+196>>2]|0)>>>0>=11){c[q>>2]=(c[(c[l>>2]|0)+196>>2]|0)-11;a[(c[n>>2]|0)+5>>0]=(c[q>>2]|0)>>>16;a[(c[n>>2]|0)+6>>0]=(c[q>>2]|0)>>>8;a[(c[n>>2]|0)+7>>0]=c[q>>2];break}c[k>>2]=-2147483647;t=c[k>>2]|0;i=u;return t|0}while(0);c[(c[l>>2]|0)+424>>2]=1;c[o>>2]=c[(c[m>>2]|0)+52>>2]}c[n>>2]=(c[(c[m>>2]|0)+48>>2]|0)+(c[(c[m>>2]|0)+52>>2]|0);c[r>>2]=0;c[(c[l>>2]|0)+200>>2]=(c[(c[m>>2]|0)+32>>2]|0)-(c[(c[l>>2]|0)+504>>2]|0);c[r>>2]=mh(c[n>>2]|0,9,c[(c[l>>2]|0)+196>>2]|0,(c[(c[m>>2]|0)+44>>2]|0)-4|0,c[(c[l>>2]|0)+200>>2]|0)|0;j=(c[(c[m>>2]|0)+12>>2]|0)!=0;f=c[r>>2]|0;c[r>>2]=f+1;f=(c[n>>2]|0)+f|0;if(j)a[f>>0]=23;else a[f>>0]=39;if((c[p>>2]|0)==7){p=c[r>>2]|0;c[r>>2]=p+1;a[(c[n>>2]|0)+p>>0]=1;p=c[r>>2]|0;c[r>>2]=p+1;a[(c[n>>2]|0)+p>>0]=0;p=c[r>>2]|0;c[r>>2]=p+1;a[(c[n>>2]|0)+p>>0]=0;p=c[r>>2]|0;c[r>>2]=p+1;a[(c[n>>2]|0)+p>>0]=0;if((c[t>>2]|0)>>>0<4){c[k>>2]=-2147483647;t=c[k>>2]|0;i=u;return t|0}p=((c[t>>2]|0)-4|0)>>>24&255;j=c[r>>2]|0;c[r>>2]=j+1;a[(c[n>>2]|0)+j>>0]=p;j=((c[t>>2]|0)-4|0)>>>16&255;p=c[r>>2]|0;c[r>>2]=p+1;a[(c[n>>2]|0)+p>>0]=j;p=((c[t>>2]|0)-4|0)>>>8&255;j=c[r>>2]|0;c[r>>2]=j+1;a[(c[n>>2]|0)+j>>0]=p;j=((c[t>>2]|0)-4|0)>>>0&255;p=c[r>>2]|0;c[r>>2]=p+1;a[(c[n>>2]|0)+p>>0]=j;if(((c[(c[m>>2]|0)+52>>2]|0)+(c[r>>2]|0)+(c[t>>2]|0)|0)>>>0>=((c[(c[m>>2]|0)+56>>2]|0)+4|0)>>>0){c[k>>2]=-2147483647;t=c[k>>2]|0;i=u;return t|0}Tx((c[n>>2]|0)+(c[r>>2]|0)|0,(c[s>>2]|0)+4|0,(c[t>>2]|0)-4|0)|0;c[(c[l>>2]|0)+196>>2]=(c[r>>2]|0)-4+((c[t>>2]|0)-4);c[(c[m>>2]|0)+52>>2]=(c[(c[l>>2]|0)+196>>2]|0)+4+(c[o>>2]|0);if((c[(c[l>>2]|0)+196>>2]|0)>>>0>=11){c[q>>2]=(c[(c[l>>2]|0)+196>>2]|0)-11;a[(c[n>>2]|0)+5>>0]=(c[q>>2]|0)>>>16;a[(c[n>>2]|0)+6>>0]=(c[q>>2]|0)>>>8;a[(c[n>>2]|0)+7>>0]=c[q>>2];break}c[k>>2]=-2147483647;t=c[k>>2]|0;i=u;return t|0}}}while(0);c[k>>2]=1;t=c[k>>2]|0;i=u;return t|0}c[k>>2]=-2147483648;t=c[k>>2]|0;i=u;return t|0}function ph(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+16|0;e=f;g=f+4|0;c[e>>2]=b;a[g>>0]=d;a[c[e>>2]>>0]=a[g>>0]|0;i=f;return (c[e>>2]|0)+1|0}function qh(d,f){d=d|0;f=f|0;var g=0,h=0,j=0;h=i;i=i+16|0;g=h;j=h+4|0;c[g>>2]=d;b[j>>1]=f;a[(c[g>>2]|0)+1>>0]=e[j>>1]|0;a[c[g>>2]>>0]=(e[j>>1]|0)>>8;i=h;return (c[g>>2]|0)+2|0}function rh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+16|0;e=f+4|0;g=f;c[e>>2]=b;c[g>>2]=d;a[(c[e>>2]|0)+2>>0]=c[g>>2];a[(c[e>>2]|0)+1>>0]=(c[g>>2]|0)>>>8;a[c[e>>2]>>0]=(c[g>>2]|0)>>>16;i=f;return (c[e>>2]|0)+3|0}function sh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+16|0;e=f+4|0;g=f;c[e>>2]=b;c[g>>2]=d;a[(c[e>>2]|0)+3>>0]=c[g>>2];a[(c[e>>2]|0)+2>>0]=(c[g>>2]|0)>>>8;a[(c[e>>2]|0)+1>>0]=(c[g>>2]|0)>>>16;a[c[e>>2]>>0]=(c[g>>2]|0)>>>24;i=f;return (c[e>>2]|0)+4|0}function th(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0;h=i;i=i+16|0;g=h+4|0;j=h;f=h+8|0;c[g>>2]=a;c[j>>2]=d;b[f>>1]=$v(c[j>>2]|0)|0;c[g>>2]=qh(c[g>>2]|0,b[f>>1]|0)|0;Tx(c[g>>2]|0,c[j>>2]|0,e[f>>1]|0|0)|0;i=h;return (c[g>>2]|0)+(e[f>>1]|0)|0}function uh(b,d){b=b|0;d=+d;var e=0,f=0,g=0,j=0,k=0;f=i;i=i+32|0;e=f+16|0;k=f;j=f+12|0;g=f+8|0;c[e>>2]=b;h[k>>3]=d;b=c[e>>2]|0;c[e>>2]=b+1;a[b>>0]=0;c[j>>2]=k;c[g>>2]=c[e>>2];a[c[g>>2]>>0]=a[(c[j>>2]|0)+7>>0]|0;a[(c[g>>2]|0)+1>>0]=a[(c[j>>2]|0)+6>>0]|0;a[(c[g>>2]|0)+2>>0]=a[(c[j>>2]|0)+5>>0]|0;a[(c[g>>2]|0)+3>>0]=a[(c[j>>2]|0)+4>>0]|0;a[(c[g>>2]|0)+4>>0]=a[(c[j>>2]|0)+3>>0]|0;a[(c[g>>2]|0)+5>>0]=a[(c[j>>2]|0)+2>>0]|0;a[(c[g>>2]|0)+6>>0]=a[(c[j>>2]|0)+1>>0]|0;a[(c[g>>2]|0)+7>>0]=a[c[j>>2]>>0]|0;i=f;return (c[e>>2]|0)+8|0}function vh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;g=i;i=i+16|0;f=g;h=g+4|0;c[f>>2]=b;a[h>>0]=e;e=c[f>>2]|0;c[f>>2]=e+1;a[e>>0]=1;e=(d[h>>0]|0|0?1:0)&255;b=c[f>>2]|0;c[f>>2]=b+1;a[b>>0]=e;i=g;return c[f>>2]|0}function wh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+48|0;e=p+36|0;f=p+32|0;g=p+28|0;n=p+24|0;o=p+20|0;l=p+16|0;m=p+12|0;k=p+8|0;j=p+4|0;h=p;c[f>>2]=b;c[g>>2]=d;c[n>>2]=0;c[o>>2]=0;c[l>>2]=0;c[m>>2]=0;c[k>>2]=0;c[j>>2]=0;c[h>>2]=0;if((0!=(c[(c[g>>2]|0)+48>>2]|0)?0!=(c[(c[g>>2]|0)+56>>2]|0):0)?(c[(c[g>>2]|0)+52>>2]|0)>>>0<(c[(c[g>>2]|0)+56>>2]|0)>>>0:0){c[j>>2]=(c[(c[g>>2]|0)+48>>2]|0)+(c[(c[g>>2]|0)+52>>2]|0);c[h>>2]=(c[(c[g>>2]|0)+48>>2]|0)+(c[(c[g>>2]|0)+52>>2]|0);c[n>>2]=mh((c[(c[g>>2]|0)+48>>2]|0)+(c[(c[g>>2]|0)+52>>2]|0)|0,18,c[(c[f>>2]|0)+196>>2]|0,0,0)|0;c[h>>2]=(c[h>>2]|0)+(c[n>>2]|0);c[h>>2]=ph(c[h>>2]|0,2)|0;c[h>>2]=th(c[h>>2]|0,6034)|0;c[h>>2]=ph(c[h>>2]|0,8)|0;c[k>>2]=c[h>>2];c[h>>2]=(c[h>>2]|0)+4;c[h>>2]=th(c[h>>2]|0,6045)|0;c[h>>2]=uh(c[h>>2]|0,+((c[(c[f>>2]|0)+200>>2]|0)>>>0)/1.0e3)|0;c[h>>2]=th(c[h>>2]|0,6054)|0;c[h>>2]=uh(c[h>>2]|0,+((c[(c[f>>2]|0)+16+32+24>>2]|0)>>>0))|0;c[h>>2]=th(c[h>>2]|0,6060)|0;c[h>>2]=uh(c[h>>2]|0,+((c[(c[f>>2]|0)+16+32+28>>2]|0)>>>0))|0;c[h>>2]=th(c[h>>2]|0,6067)|0;c[h>>2]=uh(c[h>>2]|0,2048.0)|0;if(c[(c[f>>2]|0)+16+32+56>>2]|0)d=9e4/((c[(c[f>>2]|0)+16+32+56>>2]|0)>>>0)|0;else d=0;c[m>>2]=d;c[h>>2]=th(c[h>>2]|0,6081)|0;c[h>>2]=uh(c[h>>2]|0,+(c[m>>2]|0))|0;c[h>>2]=th(c[h>>2]|0,6091)|0;c[h>>2]=uh(c[h>>2]|0,7.0)|0;c[h>>2]=th(c[h>>2]|0,6104)|0;c[h>>2]=uh(c[h>>2]|0,+((c[(c[f>>2]|0)+16+128+16>>2]|0)>>>0))|0;c[h>>2]=th(c[h>>2]|0,6118)|0;c[h>>2]=uh(c[h>>2]|0,+((c[(c[f>>2]|0)+16+128+12>>2]|0)>>>0))|0;c[h>>2]=th(c[h>>2]|0,6134)|0;c[h>>2]=uh(c[h>>2]|0,16.0)|0;c[h>>2]=th(c[h>>2]|0,6150)|0;c[h>>2]=vh(c[h>>2]|0,((c[(c[f>>2]|0)+16+128+8>>2]|0)==2?1:0)&255)|0;c[h>>2]=th(c[h>>2]|0,6157)|0;c[h>>2]=uh(c[h>>2]|0,10.0)|0;c[h>>2]=th(c[h>>2]|0,6170)|0;c[h>>2]=uh(c[h>>2]|0,0.0)|0;c[h>>2]=rh(c[h>>2]|0,9)|0;c[n>>2]=(c[h>>2]|0)-(c[j>>2]|0);c[l>>2]=12;sh(c[k>>2]|0,c[l>>2]|0)|0;m=(c[g>>2]|0)+52|0;c[m>>2]=(c[m>>2]|0)+(c[n>>2]|0);c[o>>2]=(c[n>>2]|0)-15;a[(c[j>>2]|0)+5>>0]=c[o>>2]>>16;a[(c[j>>2]|0)+6>>0]=c[o>>2]>>8;a[(c[j>>2]|0)+7>>0]=c[o>>2];c[e>>2]=1;o=c[e>>2]|0;i=p;return o|0}c[e>>2]=-2147483648;o=c[e>>2]|0;i=p;return o|0}function xh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;j=l+12|0;g=l+8|0;k=l+4|0;h=l;f=l+16|0;c[g>>2]=b;c[k>>2]=e;c[h>>2]=0;e=f;b=e+9|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(b|0));if(0!=(c[(c[k>>2]|0)+48>>2]|0)?0!=(c[(c[k>>2]|0)+56>>2]|0):0){a[f>>0]=70;a[f+1>>0]=76;a[f+2>>0]=86;a[f+3>>0]=1;a[f+4>>0]=5;b=f+4|0;a[b>>0]=(d[b>>0]|0)&-5;if(c[c[g>>2]>>2]&2|0){b=f+4|0;a[b>>0]=d[b>>0]|0|4}b=f+4|0;a[b>>0]=(d[b>>0]|0)&-2;if(c[c[g>>2]>>2]&1|0){g=f+4|0;a[g>>0]=d[g>>0]|0|1}g=c[h>>2]|0;c[h>>2]=g+1;a[f+5+g>>0]=0;g=c[h>>2]|0;c[h>>2]=g+1;a[f+5+g>>0]=0;g=c[h>>2]|0;c[h>>2]=g+1;a[f+5+g>>0]=0;g=c[h>>2]|0;c[h>>2]=g+1;a[f+5+g>>0]=9;if(((c[(c[k>>2]|0)+52>>2]|0)+9|0)>>>0>(c[(c[k>>2]|0)+56>>2]|0)>>>0){c[j>>2]=-2147483647;k=c[j>>2]|0;i=l;return k|0}else{e=(c[(c[k>>2]|0)+48>>2]|0)+(c[(c[k>>2]|0)+52>>2]|0)|0;b=e+9|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(b|0));k=(c[k>>2]|0)+52|0;c[k>>2]=(c[k>>2]|0)+9;c[j>>2]=1;k=c[j>>2]|0;i=l;return k|0}}c[j>>2]=-2147483648;k=c[j>>2]|0;i=l;return k|0}function yh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+16|0;k=j+12|0;e=j+8|0;g=j+4|0;f=j;c[k>>2]=a;c[e>>2]=b;c[g>>2]=c[k>>2];c[f>>2]=0;c[(c[e>>2]|0)+52>>2]=0;do if(c[(c[e>>2]|0)+16>>2]|0){c[f>>2]=xh(c[g>>2]|0,c[e>>2]|0)|0;if(1!=(c[f>>2]|0)){c[d>>2]=c[f>>2];break}c[f>>2]=wh(c[g>>2]|0,c[e>>2]|0)|0;if(1!=(c[f>>2]|0)){c[d>>2]=c[f>>2];break}else{c[d>>2]=1;break}}else{if((3!=(c[c[e>>2]>>2]|0)?1!=(c[c[e>>2]>>2]|0):0)?0!=(c[c[e>>2]>>2]|0):0){if(4!=(c[c[e>>2]>>2]|0)){c[d>>2]=-2147483645;break}c[f>>2]=nh(c[g>>2]|0,c[e>>2]|0)|0;if(1!=(c[f>>2]|0)){c[d>>2]=c[f>>2];break}}else h=10;if((h|0)==10?(c[f>>2]=oh(c[g>>2]|0,c[e>>2]|0)|0,1!=(c[f>>2]|0)):0){c[d>>2]=c[f>>2];break}c[d>>2]=1}while(0);i=j;return c[d>>2]|0}function zh(a,b){a=a|0;b=b|0;return Th(a,b)|0}function Ah(a,b,c){a=a|0;b=b|0;c=c|0;return Uh(a,b,c)|0}function Bh(a,b,c){a=a|0;b=b|0;c=c|0;return Vh(a,b,c)|0}function Ch(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=Wh(a,b,c,d)|0;return d|0}function Dh(a){a=a|0;a=Xh(a)|0;return a|0}function Eh(a){a=a|0;return Yh(a)|0}function Fh(a,b){a=a|0;b=b|0;Ox(a|0,0,b|0)|0;return}function Gh(a,b,c){a=a|0;b=b|0;c=c|0;Tx(a|0,b|0,c|0)|0;return}function Hh(a,b,c){a=a|0;b=b|0;c=c|0;Ux(a|0,b|0,c|0)|0;return}function Ih(a,b){a=a|0;b=b|0;var d=0;if(b+-1&b|0){a=0;return a|0}d=b>>>0>4?b:4;a=_w(a+4+d|0)|0;b=a;if(!a){a=0;return a|0}a=d+4+b&0-d;c[a+-4>>2]=b;return a|0}function Jh(a){a=a|0;if(!a)return;$w(c[(a+-4&-4)>>2]|0);return}function Kh(a,b,c){a=a|0;b=b|0;c=c|0;return Zh(a,b,c)|0}function Lh(a){a=a|0;return _h(a)|0}function Mh(a){a=a|0;return $h(a)|0}function Nh(a){a=a|0;ai(a);return}function Oh(a){a=a|0;bi(a);return}function Ph(a){a=a|0;ci(a);return}function Qh(a){a=a|0;di(a);return}function Rh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ei(a,b,c,d)|0}function Sh(a){a=a|0;return fi(a)|0}function Th(a,b){a=a|0;b=b|0;if(!a){a=0;return a|0}switch(b|0){case 1:{b=24336;break}case 2:{b=6183;break}case 3:{b=6186;break}case 4:{b=6190;break}case 5:{b=6194;break}default:b=(b|0)==6?6179:161280}a=Bw(a,b)|0;return a|0}function Uh(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)==0|(b|0)==0|(c|0)==0){c=0;return c|0}c=Mw(c,1,b,a)|0;return c|0}function Vh(a,b,c){a=a|0;b=b|0;c=c|0;if((a|0)==0|(b|0)==0|(c|0)==0){c=0;return c|0}c=Dw(c,1,b,a)|0;return c|0}function Wh(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if((a|0)!=0&d>>>0<3)if(!(Qw(a,b,d)|0)){c=Ow(a)|0;b=((c|0)<0)<<31>>31}else{b=-1;c=-1}else{b=0;c=-1}D=b;return c|0}function Xh(a){a=a|0;var b=0,c=0;c=Vw(a)|0;Qw(a,0,2)|0;b=Ow(a)|0;Qw(a,c,0)|0;D=((b|0)<0)<<31>>31;return b|0}function Yh(a){a=a|0;kw(a)|0;return 1}function Zh(a,b,c){a=a|0;b=b|0;c=c|0;a=_w(4)|0;if(!a){c=0;return c|0}if(Ta(a|0,0,b|0,c|0)|0){$w(a);Uw(6244)|0;a=0}c=a;return c|0}function _h(a){a=a|0;if(!a)return 0;if(!(sa(c[a>>2]|0,0)|0))return 0;Uw(6197)|0;return 0}function $h(a){a=a|0;if(!a)a=1;else{$w(a);a=0}return a|0}function ai(a){a=a|0;var b=0,c=0;c=i;i=i+16|0;b=c;if(!a){i=c;return}Ua(b|0)|0;Qa(b|0,1)|0;ra(a|0,b|0)|0;i=c;return}function bi(a){a=a|0;if(!a)return;bb(a|0)|0;return}function ci(a){a=a|0;if(!a)return;Oa(a|0)|0;return}function di(a){a=a|0;if(!a)return;Na(a|0)|0;return}function ei(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=Gx(36)|0;Fi(f);if(Hi(f,a,b,d,e)|0){a=f;return a|0}lb[c[(c[f>>2]|0)+4>>2]&63](f);a=0;return a|0}function fi(a){a=a|0;if(!a){a=1;return a|0}Ii(a)|0;lb[c[(c[a>>2]|0)+4>>2]&63](a);a=0;return a|0}function gi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=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;t=i;i=i+80|0;q=t+32|0;s=t+24|0;r=t+16|0;p=t+8|0;o=t;e=t+68|0;f=t+64|0;g=t+60|0;h=t+56|0;j=t+52|0;k=t+48|0;l=t+44|0;m=t+40|0;n=t+36|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[g>>2]|0)){c[e>>2]=-2147483647;s=c[e>>2]|0;i=t;return s|0}if(!(c[f>>2]|0)){c[e>>2]=-2147483647;s=c[e>>2]|0;i=t;return s|0}c[j>>2]=Tr(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(c[j>>2]|0){c[o>>2]=58;Ti(24594,o);c[e>>2]=c[j>>2];s=c[e>>2]|0;i=t;return s|0}c[k>>2]=Vr(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(c[k>>2]|0){c[p>>2]=61;Ti(24594,p);c[e>>2]=c[k>>2];s=c[e>>2]|0;i=t;return s|0}c[l>>2]=Xr(c[f>>2]|0,c[h>>2]|0)|0;if(c[l>>2]|0){c[r>>2]=64;Ti(24594,r);c[e>>2]=c[l>>2];s=c[e>>2]|0;i=t;return s|0}c[m>>2]=Yr(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(c[m>>2]|0){c[s>>2]=67;Ti(24594,s);c[e>>2]=c[m>>2];s=c[e>>2]|0;i=t;return s|0}c[n>>2]=_r(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(c[n>>2]|0){c[q>>2]=70;Ti(24594,q);c[e>>2]=c[n>>2];s=c[e>>2]|0;i=t;return s|0}else{c[e>>2]=0;s=c[e>>2]|0;i=t;return s|0}return 0}function hi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;h=j+8|0;g=j;b=j+24|0;d=j+20|0;e=j+16|0;f=j+12|0;c[d>>2]=a;c[e>>2]=Jr(c[d>>2]|0)|0;if(c[e>>2]|0){c[g>>2]=85;Ti(24594,g);c[b>>2]=c[e>>2];h=c[b>>2]|0;i=j;return h|0}if(3==(c[(c[d>>2]|0)+6352>>2]|0)?(c[f>>2]=yt(c[d>>2]|0)|0,0!=(c[f>>2]|0)):0){c[h>>2]=89;Ti(24594,h);c[b>>2]=c[f>>2];h=c[b>>2]|0;i=j;return h|0}c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}function ii(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+48|0;l=m+16|0;k=m+8|0;j=m;b=m+40|0;d=m+36|0;e=m+32|0;f=m+28|0;g=m+24|0;h=m+20|0;c[d>>2]=a;c[e>>2]=0;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;l=c[b>>2]|0;i=m;return l|0}if(!(c[c[d>>2]>>2]|0)){c[b>>2]=-2147483647;l=c[b>>2]|0;i=m;return l|0}c[e>>2]=nr(c[d>>2]|0)|0;if(0!=(c[e>>2]|0)?(c[f>>2]=hi(c[d>>2]|0)|0,0!=(c[f>>2]|0)):0){c[j>>2]=118;Ti(24594,j);c[b>>2]=c[f>>2];l=c[b>>2]|0;i=m;return l|0}if(3==(c[(c[d>>2]|0)+6352>>2]|0)){c[g>>2]=At(c[d>>2]|0)|0;if(c[g>>2]|0){c[k>>2]=125;Ti(24594,k);c[b>>2]=c[g>>2];l=c[b>>2]|0;i=m;return l|0}c[e>>2]=tt(c[d>>2]|0)|0;if(0!=(c[e>>2]|0)?(c[h>>2]=hi(c[d>>2]|0)|0,0!=(c[h>>2]|0)):0){c[l>>2]=131;Ti(24594,l);c[b>>2]=c[h>>2];l=c[b>>2]|0;i=m;return l|0}}c[b>>2]=c[e>>2];l=c[b>>2]|0;i=m;return l|0}function ji(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+32|0;k=o+20|0;l=o+16|0;g=o+12|0;m=o+8|0;h=o+4|0;n=o;c[l>>2]=a;c[g>>2]=b;c[m>>2]=e;c[h>>2]=f;c[n>>2]=0;if((c[g>>2]|0)>>>0<4){c[k>>2]=-2147483643;n=c[k>>2]|0;i=o;return n|0}if(0==(d[c[l>>2]>>0]|0|0)?0==(d[(c[l>>2]|0)+1>>0]|0|0):0){do if(1==(d[(c[l>>2]|0)+2>>0]|0|0))c[c[h>>2]>>2]=3;else{if(0==(d[(c[l>>2]|0)+2>>0]|0|0)?1==(d[(c[l>>2]|0)+3>>0]|0|0):0){c[c[h>>2]>>2]=4;break}c[k>>2]=-2147483643;n=c[k>>2]|0;i=o;return n|0}while(0);c[c[m>>2]>>2]=c[g>>2];c[n>>2]=c[c[h>>2]>>2];while(1){if((c[n>>2]|0)>>>0>=((c[g>>2]|0)-2|0)>>>0)break;if(((d[(c[l>>2]|0)+(c[n>>2]|0)>>0]|0|0)==0?(d[(c[l>>2]|0)+((c[n>>2]|0)+1)>>0]|0|0)==0:0)?(d[(c[l>>2]|0)+((c[n>>2]|0)+2)>>0]|0|0)==1:0){j=17;break}c[n>>2]=(c[n>>2]|0)+1}do if((j|0)==17){g=c[n>>2]|0;if(!(d[(c[l>>2]|0)+((c[n>>2]|0)-1)>>0]|0)){c[c[m>>2]>>2]=g-1;break}else{c[c[m>>2]>>2]=g;break}}while(0);c[k>>2]=0;n=c[k>>2]|0;i=o;return n|0}c[k>>2]=-2147483643;n=c[k>>2]|0;i=o;return n|0}function ki(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var 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,v=0;v=i;i=i+64|0;u=v+16|0;t=v+8|0;s=v;h=v+56|0;j=v+52|0;k=v+48|0;l=v+44|0;m=v+40|0;q=v+36|0;r=v+32|0;n=v+28|0;o=v+24|0;p=v+20|0;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[q>>2]=0;c[r>>2]=0;if(!(c[k>>2]|0)){c[h>>2]=-2147483647;u=c[h>>2]|0;i=v;return u|0}if(!(c[l>>2]|0)){c[h>>2]=-2147483647;u=c[h>>2]|0;i=v;return u|0}if((c[m>>2]|0)>>>0<=0){c[h>>2]=-2147483643;u=c[h>>2]|0;i=v;return u|0}c[n>>2]=Lr(c[j>>2]|0,1986618469,r)|0;if(c[n>>2]|0){c[s>>2]=231;Ti(24594,s);c[h>>2]=c[n>>2];u=c[h>>2]|0;i=v;return u|0}c[q>>2]=(c[r>>2]|0)+104+88+64+836;switch((d[c[l>>2]>>0]|0)&31|0){case 7:{c[o>>2]=Kr(c[j>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(c[o>>2]|0){c[t>>2]=240;Ti(24594,t);c[h>>2]=c[o>>2];u=c[h>>2]|0;i=v;return u|0}break}case 8:{c[p>>2]=Mr(c[j>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(c[p>>2]|0){c[u>>2]=246;Ti(24594,u);c[h>>2]=c[p>>2];u=c[h>>2]|0;i=v;return u|0}break}default:{}}if(((c[m>>2]|0)+4+(c[(c[k>>2]|0)+40>>2]|0)|0)>>>0>(c[(c[k>>2]|0)+44>>2]|0)>>>0){c[h>>2]=-2147483645;u=c[h>>2]|0;i=v;return u|0}else{t=(c[m>>2]|0)>>>24&255;s=(c[k>>2]|0)+40|0;u=c[s>>2]|0;c[s>>2]=u+1;a[(c[(c[k>>2]|0)+36>>2]|0)+u>>0]=t;u=(c[m>>2]|0)>>>16&255;t=(c[k>>2]|0)+40|0;s=c[t>>2]|0;c[t>>2]=s+1;a[(c[(c[k>>2]|0)+36>>2]|0)+s>>0]=u;s=(c[m>>2]|0)>>>8&255;u=(c[k>>2]|0)+40|0;t=c[u>>2]|0;c[u>>2]=t+1;a[(c[(c[k>>2]|0)+36>>2]|0)+t>>0]=s;t=c[m>>2]&255;s=(c[k>>2]|0)+40|0;u=c[s>>2]|0;c[s>>2]=u+1;a[(c[(c[k>>2]|0)+36>>2]|0)+u>>0]=t;Li((c[(c[k>>2]|0)+36>>2]|0)+(c[(c[k>>2]|0)+40>>2]|0)|0,c[l>>2]|0,c[m>>2]|0)|0;u=(c[k>>2]|0)+40|0;c[u>>2]=(c[u>>2]|0)+(c[m>>2]|0);u=(c[q>>2]|0)+32|0;c[u>>2]=(c[u>>2]|0)+((c[m>>2]|0)+4);c[h>>2]=0;u=c[h>>2]|0;i=v;return u|0}return 0}function li(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0;x=i;i=i+80|0;w=x+24|0;v=x+16|0;u=x+8|0;t=x;h=x+68|0;j=x+64|0;k=x+60|0;l=x+56|0;m=x+52|0;r=x+48|0;s=x+44|0;n=x+40|0;o=x+36|0;p=x+32|0;q=x+28|0;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[r>>2]=0;c[s>>2]=0;if(!(c[k>>2]|0)){c[h>>2]=-2147483647;w=c[h>>2]|0;i=x;return w|0}if(!(c[l>>2]|0)){c[h>>2]=-2147483647;w=c[h>>2]|0;i=x;return w|0}if((c[m>>2]|0)>>>0<=0){c[h>>2]=-2147483643;w=c[h>>2]|0;i=x;return w|0}c[n>>2]=Lr(c[j>>2]|0,1986618469,s)|0;if(c[n>>2]|0){c[t>>2]=300;Ti(24594,t);c[h>>2]=c[n>>2];w=c[h>>2]|0;i=x;return w|0}c[r>>2]=(c[s>>2]|0)+104+88+64+836;switch((d[c[l>>2]>>0]|0)>>1&63|0){case 32:{c[o>>2]=Nr(c[j>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(c[o>>2]|0){c[u>>2]=310;Ti(24594,u);c[h>>2]=c[o>>2];w=c[h>>2]|0;i=x;return w|0}break}case 33:{c[p>>2]=Or(c[j>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(c[p>>2]|0){c[v>>2]=316;Ti(24594,v);c[h>>2]=c[p>>2];w=c[h>>2]|0;i=x;return w|0}break}case 34:{c[q>>2]=Pr(c[j>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(c[q>>2]|0){c[w>>2]=322;Ti(24594,w);c[h>>2]=c[q>>2];w=c[h>>2]|0;i=x;return w|0}break}default:{}}if(((c[m>>2]|0)+4+(c[(c[k>>2]|0)+40>>2]|0)|0)>>>0>(c[(c[k>>2]|0)+44>>2]|0)>>>0){c[h>>2]=-2147483645;w=c[h>>2]|0;i=x;return w|0}else{v=(c[m>>2]|0)>>>24&255;u=(c[k>>2]|0)+40|0;w=c[u>>2]|0;c[u>>2]=w+1;a[(c[(c[k>>2]|0)+36>>2]|0)+w>>0]=v;w=(c[m>>2]|0)>>>16&255;v=(c[k>>2]|0)+40|0;u=c[v>>2]|0;c[v>>2]=u+1;a[(c[(c[k>>2]|0)+36>>2]|0)+u>>0]=w;u=(c[m>>2]|0)>>>8&255;w=(c[k>>2]|0)+40|0;v=c[w>>2]|0;c[w>>2]=v+1;a[(c[(c[k>>2]|0)+36>>2]|0)+v>>0]=u;v=c[m>>2]&255;u=(c[k>>2]|0)+40|0;w=c[u>>2]|0;c[u>>2]=w+1;a[(c[(c[k>>2]|0)+36>>2]|0)+w>>0]=v;Li((c[(c[k>>2]|0)+36>>2]|0)+(c[(c[k>>2]|0)+40>>2]|0)|0,c[l>>2]|0,c[m>>2]|0)|0;w=(c[k>>2]|0)+40|0;c[w>>2]=(c[w>>2]|0)+(c[m>>2]|0);w=(c[r>>2]|0)+32|0;c[w>>2]=(c[w>>2]|0)+((c[m>>2]|0)+4);c[h>>2]=0;w=c[h>>2]|0;i=x;return w|0}return 0}function mi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+64|0;p=q+8|0;o=q;l=q+48|0;d=q+44|0;e=q+40|0;f=q+36|0;g=q+32|0;j=q+28|0;k=q+24|0;h=q+20|0;m=q+16|0;n=q+12|0;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;c[g>>2]=0;c[j>>2]=1;c[k>>2]=0;c[h>>2]=0;if(!(c[e>>2]|0)){c[l>>2]=-2147483647;p=c[l>>2]|0;i=q;return p|0}c[f>>2]=c[(c[e>>2]|0)+28>>2];c[g>>2]=c[(c[e>>2]|0)+32>>2];while(1){c[m>>2]=ji(c[f>>2]|0,c[g>>2]|0,h,k)|0;if(c[m>>2]|0){d=5;break}c[n>>2]=ki(c[d>>2]|0,c[e>>2]|0,(c[f>>2]|0)+(c[k>>2]|0)|0,(c[h>>2]|0)-(c[k>>2]|0)|0)|0;if(c[n>>2]|0){d=7;break}if((c[h>>2]|0)==(c[g>>2]|0))c[j>>2]=0;else{c[f>>2]=(c[f>>2]|0)+(c[h>>2]|0);c[g>>2]=(c[g>>2]|0)-(c[h>>2]|0)}if(!(c[j>>2]|0)){d=12;break}}if((d|0)==5){c[o>>2]=376;Ti(24594,o);c[l>>2]=c[m>>2];p=c[l>>2]|0;i=q;return p|0}else if((d|0)==7){c[p>>2]=379;Ti(24594,p);c[l>>2]=c[n>>2];p=c[l>>2]|0;i=q;return p|0}else if((d|0)==12){c[l>>2]=0;p=c[l>>2]|0;i=q;return p|0}return 0}function ni(a,b){a=a|0;b=b|0;var e=0,f=0,g=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;t=i;i=i+64|0;r=t+8|0;q=t;e=t+52|0;f=t+48|0;g=t+44|0;o=t+40|0;p=t+36|0;l=t+32|0;k=t+28|0;j=t+24|0;h=t+20|0;m=t+16|0;n=t+12|0;c[f>>2]=a;c[g>>2]=b;c[o>>2]=0;c[p>>2]=0;c[l>>2]=0;c[k>>2]=0;c[j>>2]=0;c[h>>2]=0;if(!(c[g>>2]|0)){c[e>>2]=-2147483647;s=c[e>>2]|0;i=t;return s|0}c[m>>2]=Lr(c[f>>2]|0,1986618469,p)|0;if(c[m>>2]|0){c[q>>2]=416;Ti(24594,q);c[e>>2]=c[m>>2];s=c[e>>2]|0;i=t;return s|0}c[o>>2]=(c[p>>2]|0)+104+88+64+836;c[h>>2]=c[(c[g>>2]|0)+28>>2];c[j>>2]=c[(c[g>>2]|0)+32>>2];if(c[(c[g>>2]|0)+4>>2]|0){if((c[j>>2]|0)>>>0<4){c[e>>2]=-2147483643;s=c[e>>2]|0;i=t;return s|0}while(1){if((c[l>>2]|0)>>>0>=((c[j>>2]|0)-3|0)>>>0)break;if((((d[(c[h>>2]|0)+(c[l>>2]|0)>>0]|0|0)==0?(d[(c[h>>2]|0)+((c[l>>2]|0)+1)>>0]|0|0)==0:0)?(d[(c[h>>2]|0)+((c[l>>2]|0)+2)>>0]|0|0)==1:0)?(d[(c[h>>2]|0)+((c[l>>2]|0)+3)>>0]|0|0)==182:0){s=13;break}c[l>>2]=(c[l>>2]|0)+1}if((s|0)==13)c[k>>2]=1;if(c[k>>2]|0?(c[n>>2]=$r(c[f>>2]|0,c[h>>2]|0,c[l>>2]|0)|0,0!=(c[n>>2]|0)):0){c[r>>2]=447;Ti(24594,r);c[e>>2]=c[n>>2];s=c[e>>2]|0;i=t;return s|0}}c[h>>2]=(c[h>>2]|0)+(c[l>>2]|0);c[j>>2]=(c[j>>2]|0)-(c[l>>2]|0);if(((c[(c[g>>2]|0)+40>>2]|0)+(c[j>>2]|0)|0)>>>0>(c[(c[g>>2]|0)+44>>2]|0)>>>0){c[e>>2]=-2147483645;s=c[e>>2]|0;i=t;return s|0}else{Li((c[(c[g>>2]|0)+36>>2]|0)+(c[(c[g>>2]|0)+40>>2]|0)|0,c[h>>2]|0,c[j>>2]|0)|0;s=(c[g>>2]|0)+40|0;c[s>>2]=(c[s>>2]|0)+(c[j>>2]|0);s=(c[o>>2]|0)+32|0;c[s>>2]=(c[s>>2]|0)+(c[j>>2]|0);c[e>>2]=0;s=c[e>>2]|0;i=t;return s|0}return 0}function oi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+64|0;p=q+8|0;o=q;l=q+48|0;d=q+44|0;e=q+40|0;f=q+36|0;g=q+32|0;j=q+28|0;k=q+24|0;h=q+20|0;m=q+16|0;n=q+12|0;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;c[g>>2]=0;c[j>>2]=1;c[k>>2]=0;c[h>>2]=0;if(!(c[e>>2]|0)){c[l>>2]=-2147483647;p=c[l>>2]|0;i=q;return p|0}c[f>>2]=c[(c[e>>2]|0)+28>>2];c[g>>2]=c[(c[e>>2]|0)+32>>2];while(1){c[m>>2]=ji(c[f>>2]|0,c[g>>2]|0,h,k)|0;if(c[m>>2]|0){d=5;break}if((c[h>>2]|0)>>>0<(c[k>>2]|0)>>>0){d=7;break}c[n>>2]=li(c[d>>2]|0,c[e>>2]|0,(c[f>>2]|0)+(c[k>>2]|0)|0,(c[h>>2]|0)-(c[k>>2]|0)|0)|0;if(c[n>>2]|0){d=9;break}if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)c[j>>2]=0;else{c[f>>2]=(c[f>>2]|0)+(c[h>>2]|0);c[g>>2]=(c[g>>2]|0)-(c[h>>2]|0)}if(!(c[j>>2]|0)){d=14;break}}if((d|0)==5){c[o>>2]=493;Ti(24594,o);c[l>>2]=c[m>>2];p=c[l>>2]|0;i=q;return p|0}else if((d|0)==7){c[l>>2]=-2147483643;p=c[l>>2]|0;i=q;return p|0}else if((d|0)==9){c[p>>2]=501;Ti(24594,p);c[l>>2]=c[n>>2];p=c[l>>2]|0;i=q;return p|0}else if((d|0)==14){c[l>>2]=0;p=c[l>>2]|0;i=q;return p|0}return 0}function pi(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,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;X=i;i=i+224|0;U=X+112|0;S=X+104|0;R=X+96|0;Q=X+88|0;P=X+80|0;O=X+72|0;N=X+64|0;M=X+56|0;L=X+48|0;K=X+40|0;J=X+32|0;V=X+24|0;T=X+16|0;I=X+8|0;H=X;e=X+220|0;f=X+216|0;g=X+212|0;E=X+208|0;G=X+204|0;F=X+200|0;m=X+196|0;C=X+192|0;j=X+188|0;l=X+184|0;k=X+180|0;h=X+176|0;n=X+172|0;o=X+168|0;u=X+164|0;v=X+160|0;w=X+156|0;x=X+152|0;y=X+148|0;z=X+144|0;A=X+140|0;B=X+136|0;p=X+132|0;q=X+128|0;r=X+124|0;s=X+120|0;t=X+116|0;c[f>>2]=b;c[g>>2]=d;c[E>>2]=0;c[G>>2]=0;c[F>>2]=0;c[m>>2]=0;c[C>>2]=0;c[j>>2]=0;c[l>>2]=0;c[k>>2]=0;c[h>>2]=0;if(!(c[f>>2]|0)){c[e>>2]=-2147483647;W=c[e>>2]|0;i=X;return W|0}if(!(c[c[f>>2]>>2]&1)){c[e>>2]=0;W=c[e>>2]|0;i=X;return W|0}c[l>>2]=c[(c[g>>2]|0)+12>>2];if(3==(c[(c[f>>2]|0)+6352>>2]|0)?c[(c[g>>2]|0)+4>>2]|0:0){c[m>>2]=$((c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]|0)|0,((c[(c[f>>2]|0)+136+8+20>>2]|0)>>>0)/1e3|0)|0;if(!(c[(c[f>>2]|0)+6400>>2]|0)){c[n>>2]=Jt(c[f>>2]|0,c[m>>2]|0)|0;if(c[n>>2]|0){c[H>>2]=556;Ti(24594,H);c[e>>2]=c[n>>2];W=c[e>>2]|0;i=X;return W|0}}else{c[h>>2]=c[(c[g>>2]|0)+52>>2];c[o>>2]=Dt(c[f>>2]|0,1986618469,F)|0;if(c[o>>2]|0){c[I>>2]=561;Ti(24594,I);c[e>>2]=c[o>>2];W=c[e>>2]|0;i=X;return W|0}c[u>>2]=Zt(c[f>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;if(c[u>>2]|0){c[T>>2]=562;Ti(24594,T);c[e>>2]=c[u>>2];W=c[e>>2]|0;i=X;return W|0}c[v>>2]=rb[c[(c[h>>2]|0)+20>>2]&127](c[h>>2]|0,c[(c[h>>2]|0)+16>>2]|0)|0;if(c[v>>2]|0){c[V>>2]=563;Ti(24594,V);c[e>>2]=c[v>>2];W=c[e>>2]|0;i=X;return W|0}c[w>>2]=Jt(c[f>>2]|0,c[m>>2]|0)|0;if(c[w>>2]|0){c[J>>2]=564;Ti(24594,J);c[e>>2]=c[w>>2];W=c[e>>2]|0;i=X;return W|0}c[x>>2]=au(c[f>>2]|0,c[h>>2]|0)|0;if(c[x>>2]|0){c[K>>2]=565;Ti(24594,K);c[e>>2]=c[x>>2];W=c[e>>2]|0;i=X;return W|0}}V=(c[f>>2]|0)+6400|0;c[V>>2]=(c[V>>2]|0)+1}do if(1!=(c[(c[f>>2]|0)+6352>>2]|0)?3!=(c[(c[f>>2]|0)+6352>>2]|0):0){if(2==(c[(c[f>>2]|0)+6352>>2]|0)?(c[y>>2]=kt(c[f>>2]|0,c[g>>2]|0)|0,0!=(c[y>>2]|0)):0){c[L>>2]=577;Ti(24594,L);c[e>>2]=c[y>>2];W=c[e>>2]|0;i=X;return W|0}c[j>>2]=c[(c[g>>2]|0)+40>>2];c[k>>2]=(c[(c[g>>2]|0)+36>>2]|0)+(c[j>>2]|0);c[z>>2]=js(c[g>>2]|0)|0;if(!(c[z>>2]|0)){V=(c[f>>2]|0)+6392|0;T=V;T=Px(c[T>>2]|0,c[T+4>>2]|0,8,0)|0;c[V>>2]=T;c[V+4>>2]=D;break}c[M>>2]=584;Ti(24594,M);c[e>>2]=c[z>>2];W=c[e>>2]|0;i=X;return W|0}while(0);c[C>>2]=c[(c[g>>2]|0)+40>>2];c[A>>2]=Lr(c[f>>2]|0,1986618469,G)|0;if(c[A>>2]|0){c[N>>2]=590;Ti(24594,N);c[e>>2]=c[A>>2];W=c[e>>2]|0;i=X;return W|0}c[E>>2]=(c[G>>2]|0)+104+88+64+912;V=(c[E>>2]|0)+32|0;if(0==(c[V>>2]|0)?0==(c[V+4>>2]|0):0){N=(c[f>>2]|0)+6392|0;T=c[N+4>>2]|0;V=(c[E>>2]|0)+32|0;c[V>>2]=c[N>>2];c[V+4>>2]=T}switch(c[(c[f>>2]|0)+4>>2]|0){case 27:{c[B>>2]=mi(c[f>>2]|0,c[g>>2]|0)|0;if(c[B>>2]|0){c[O>>2]=604;Ti(24594,O);c[e>>2]=c[B>>2];W=c[e>>2]|0;i=X;return W|0}break}case 16:{c[p>>2]=ni(c[f>>2]|0,c[g>>2]|0)|0;if(c[p>>2]|0){c[P>>2]=610;Ti(24594,P);c[e>>2]=c[p>>2];W=c[e>>2]|0;i=X;return W|0}break}case 36:{c[q>>2]=oi(c[f>>2]|0,c[g>>2]|0)|0;if(c[q>>2]|0){c[Q>>2]=616;Ti(24594,Q);c[e>>2]=c[q>>2];W=c[e>>2]|0;i=X;return W|0}break}default:{c[e>>2]=-2147483646;W=c[e>>2]|0;i=X;return W|0}}if(!(1!=(c[(c[f>>2]|0)+6352>>2]|0)?0!=(c[(c[f>>2]|0)+6352>>2]|0):0))W=43;if((W|0)==43?(c[r>>2]=gi(c[f>>2]|0,c[g>>2]|0,1986618469)|0,0!=(c[r>>2]|0)):0){c[R>>2]=629;Ti(24594,R);c[e>>2]=c[r>>2];W=c[e>>2]|0;i=X;return W|0}if(3==(c[(c[f>>2]|0)+6352>>2]|0)){c[s>>2]=Dt(c[f>>2]|0,1986618469,F)|0;if(c[s>>2]|0){c[S>>2]=635;Ti(24594,S);c[e>>2]=c[s>>2];W=c[e>>2]|0;i=X;return W|0}V=(c[F>>2]|0)+136|0;c[V>>2]=(c[V>>2]|0)+((c[(c[g>>2]|0)+40>>2]|0)-(c[C>>2]|0));c[t>>2]=Bt(c[f>>2]|0,c[g>>2]|0,1986618469)|0;if(c[t>>2]|0){c[U>>2]=639;Ti(24594,U);c[e>>2]=c[t>>2];W=c[e>>2]|0;i=X;return W|0}}V=(c[f>>2]|0)+6392|0;U=V;U=Px(c[U>>2]|0,c[U+4>>2]|0,(c[(c[g>>2]|0)+40>>2]|0)-(c[C>>2]|0)|0,0)|0;c[V>>2]=U;c[V+4>>2]=D;if(!(c[(c[f>>2]|0)+6352>>2]|0)){if(!(c[(c[f>>2]|0)+6376>>2]|0)){c[(c[f>>2]|0)+6356>>2]=c[j>>2];c[(c[f>>2]|0)+6376>>2]=1}c[(c[g>>2]|0)+56>>2]=c[(c[f>>2]|0)+6356>>2];V=(c[f>>2]|0)+6392|0;V=Nx(c[V>>2]|0,c[V+4>>2]|0,c[(c[g>>2]|0)+56>>2]|0,0)|0;c[(c[g>>2]|0)+60>>2]=V}if(!(0!=(c[(c[f>>2]|0)+6352>>2]|0)?2!=(c[(c[f>>2]|0)+6352>>2]|0):0))W=56;do if((W|0)==56){if(c[k>>2]|0){a[c[k>>2]>>0]=((c[(c[g>>2]|0)+40>>2]|0)-(c[j>>2]|0)|0)>>>24;a[(c[k>>2]|0)+1>>0]=((c[(c[g>>2]|0)+40>>2]|0)-(c[j>>2]|0)|0)>>>16;a[(c[k>>2]|0)+2>>0]=((c[(c[g>>2]|0)+40>>2]|0)-(c[j>>2]|0)|0)>>>8;a[(c[k>>2]|0)+3>>0]=(c[(c[g>>2]|0)+40>>2]|0)-(c[j>>2]|0);break}c[e>>2]=-2147483647;W=c[e>>2]|0;i=X;return W|0}while(0);c[e>>2]=0;W=c[e>>2]|0;i=X;return W|0}function qi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[h>>2]=0;if(!(c[f>>2]|0)){c[d>>2]=-2147483647;b=c[d>>2]|0;i=j;return b|0}if(!(c[e>>2]|0)){c[d>>2]=-2147483647;b=c[d>>2]|0;i=j;return b|0}c[g>>2]=c[(c[f>>2]|0)+28>>2];c[h>>2]=c[(c[f>>2]|0)+32>>2];if(((c[(c[f>>2]|0)+40>>2]|0)+(c[h>>2]|0)|0)>>>0>(c[(c[f>>2]|0)+44>>2]|0)>>>0){c[d>>2]=-2147483645;b=c[d>>2]|0;i=j;return b|0}else{Li((c[(c[f>>2]|0)+36>>2]|0)+(c[(c[f>>2]|0)+40>>2]|0)|0,c[g>>2]|0,c[h>>2]|0)|0;b=(c[f>>2]|0)+40|0;c[b>>2]=(c[b>>2]|0)+(c[h>>2]|0);c[d>>2]=0;b=c[d>>2]|0;i=j;return b|0}return 0}function ri(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=0;c[f>>2]=0;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;a=c[b>>2]|0;i=g;return a|0}c[e>>2]=c[(c[d>>2]|0)+28>>2];c[f>>2]=c[(c[d>>2]|0)+32>>2];if(((c[(c[d>>2]|0)+40>>2]|0)+(c[f>>2]|0)|0)>>>0>(c[(c[d>>2]|0)+44>>2]|0)>>>0){c[b>>2]=-2147483645;a=c[b>>2]|0;i=g;return a|0}else{Li((c[(c[d>>2]|0)+36>>2]|0)+(c[(c[d>>2]|0)+40>>2]|0)|0,c[e>>2]|0,c[f>>2]|0)|0;a=(c[d>>2]|0)+40|0;c[a>>2]=(c[a>>2]|0)+(c[f>>2]|0);c[b>>2]=0;a=c[b>>2]|0;i=g;return a|0}return 0}function si(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0;H=i;i=i+144|0;C=H+56|0;B=H+48|0;A=H+40|0;z=H+32|0;F=H+24|0;E=H+16|0;y=H+8|0;x=H;e=H+128|0;f=H+124|0;g=H+120|0;u=H+116|0;w=H+112|0;v=H+108|0;t=H+104|0;s=H+100|0;h=H+96|0;j=H+92|0;k=H+88|0;l=H+84|0;m=H+80|0;n=H+76|0;o=H+72|0;p=H+68|0;q=H+64|0;r=H+60|0;c[f>>2]=b;c[g>>2]=d;c[u>>2]=0;c[w>>2]=0;c[v>>2]=0;c[t>>2]=0;c[s>>2]=0;c[h>>2]=0;c[j>>2]=0;if(!(c[f>>2]|0)){c[e>>2]=-2147483647;G=c[e>>2]|0;i=H;return G|0}if(!(c[c[f>>2]>>2]&2)){c[e>>2]=0;G=c[e>>2]|0;i=H;return G|0}c[k>>2]=Lr(c[f>>2]|0,1936684398,w)|0;if(c[k>>2]|0){c[x>>2]=761;Ti(24594,x);c[e>>2]=c[k>>2];G=c[e>>2]|0;i=H;return G|0}c[u>>2]=(c[w>>2]|0)+104+88+64+836;c[t>>2]=(c[w>>2]|0)+104+88+64+912;do if(1!=(c[(c[f>>2]|0)+6352>>2]|0)?3!=(c[(c[f>>2]|0)+6352>>2]|0):0){if(2==(c[(c[f>>2]|0)+6352>>2]|0)?(c[l>>2]=kt(c[f>>2]|0,c[g>>2]|0)|0,0!=(c[l>>2]|0)):0){c[y>>2]=772;Ti(24594,y);c[e>>2]=c[l>>2];G=c[e>>2]|0;i=H;return G|0}c[h>>2]=c[(c[g>>2]|0)+40>>2];c[j>>2]=(c[(c[g>>2]|0)+36>>2]|0)+(c[h>>2]|0);c[m>>2]=js(c[g>>2]|0)|0;if(!(c[m>>2]|0)){E=(c[f>>2]|0)+6392|0;y=E;y=Px(c[y>>2]|0,c[y+4>>2]|0,8,0)|0;c[E>>2]=y;c[E+4>>2]=D;break}c[E>>2]=779;Ti(24594,E);c[e>>2]=c[m>>2];G=c[e>>2]|0;i=H;return G|0}while(0);c[s>>2]=c[(c[g>>2]|0)+40>>2];E=(c[t>>2]|0)+32|0;if(0==(c[E>>2]|0)?0==(c[E+4>>2]|0):0){x=(c[f>>2]|0)+6392|0;y=c[x+4>>2]|0;E=(c[t>>2]|0)+32|0;c[E>>2]=c[x>>2];c[E+4>>2]=y}switch(c[(c[f>>2]|0)+8>>2]|0){case 15:{c[n>>2]=qi(c[f>>2]|0,c[g>>2]|0)|0;if(c[n>>2]|0){c[F>>2]=795;Ti(24594,F);c[e>>2]=c[n>>2];G=c[e>>2]|0;i=H;return G|0}break}case 145:case 144:{c[o>>2]=ri(c[g>>2]|0)|0;if(c[o>>2]|0){c[z>>2]=802;Ti(24594,z);c[e>>2]=c[o>>2];G=c[e>>2]|0;i=H;return G|0}break}default:{c[e>>2]=-2147483646;G=c[e>>2]|0;i=H;return G|0}}F=(c[u>>2]|0)+32|0;c[F>>2]=(c[F>>2]|0)+(c[(c[g>>2]|0)+32>>2]|0);if(!(1!=(c[(c[f>>2]|0)+6352>>2]|0)?0!=(c[(c[f>>2]|0)+6352>>2]|0):0))G=25;if((G|0)==25?(c[p>>2]=gi(c[f>>2]|0,c[g>>2]|0,1936684398)|0,0!=(c[p>>2]|0)):0){c[A>>2]=817;Ti(24594,A);c[e>>2]=c[p>>2];G=c[e>>2]|0;i=H;return G|0}if(3==(c[(c[f>>2]|0)+6352>>2]|0)){c[q>>2]=Dt(c[f>>2]|0,1936684398,v)|0;if(c[q>>2]|0){c[B>>2]=823;Ti(24594,B);c[e>>2]=c[q>>2];G=c[e>>2]|0;i=H;return G|0}F=(c[v>>2]|0)+136|0;c[F>>2]=(c[F>>2]|0)+((c[(c[g>>2]|0)+40>>2]|0)-(c[s>>2]|0));c[r>>2]=Bt(c[f>>2]|0,c[g>>2]|0,1936684398)|0;if(c[r>>2]|0){c[C>>2]=827;Ti(24594,C);c[e>>2]=c[r>>2];G=c[e>>2]|0;i=H;return G|0}}F=(c[f>>2]|0)+6392|0;E=F;E=Px(c[E>>2]|0,c[E+4>>2]|0,(c[(c[g>>2]|0)+40>>2]|0)-(c[s>>2]|0)|0,0)|0;c[F>>2]=E;c[F+4>>2]=D;if(!(c[(c[f>>2]|0)+6352>>2]|0)){if(!(c[(c[f>>2]|0)+6376>>2]|0)){c[(c[f>>2]|0)+6356>>2]=c[h>>2];c[(c[f>>2]|0)+6376>>2]=1}c[(c[g>>2]|0)+56>>2]=c[(c[f>>2]|0)+6356>>2];F=(c[f>>2]|0)+6392|0;F=Nx(c[F>>2]|0,c[F+4>>2]|0,c[(c[g>>2]|0)+56>>2]|0,0)|0;c[(c[g>>2]|0)+60>>2]=F}if(!(0!=(c[(c[f>>2]|0)+6352>>2]|0)?2!=(c[(c[f>>2]|0)+6352>>2]|0):0))G=38;do if((G|0)==38){if(c[j>>2]|0){a[c[j>>2]>>0]=((c[(c[g>>2]|0)+40>>2]|0)-(c[h>>2]|0)|0)>>>24;a[(c[j>>2]|0)+1>>0]=((c[(c[g>>2]|0)+40>>2]|0)-(c[h>>2]|0)|0)>>>16;a[(c[j>>2]|0)+2>>0]=((c[(c[g>>2]|0)+40>>2]|0)-(c[h>>2]|0)|0)>>>8;a[(c[j>>2]|0)+3>>0]=(c[(c[g>>2]|0)+40>>2]|0)-(c[h>>2]|0);break}c[e>>2]=-2147483647;G=c[e>>2]|0;i=H;return G|0}while(0);c[e>>2]=0;G=c[e>>2]|0;i=H;return G|0}function ti(f,g){f=f|0;g=g|0;var 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;t=i;i=i+48|0;h=t+28|0;j=t+24|0;k=t+20|0;n=t+16|0;o=t+12|0;m=t+8|0;r=t+4|0;s=t+35|0;p=t+34|0;q=t+32|0;l=t;c[j>>2]=f;c[k>>2]=g;c[n>>2]=1;c[o>>2]=0;c[m>>2]=0;c[r>>2]=0;a[s>>0]=0;a[p>>0]=0;b[q>>1]=0;c[l>>2]=0;if(!(c[k>>2]|0)){c[h>>2]=-2147483647;s=c[h>>2]|0;i=t;return s|0}c[l>>2]=c[(c[k>>2]|0)+28>>2];c[m>>2]=c[(c[k>>2]|0)+32>>2];c[o>>2]=(((c[m>>2]|0)>>>0)%4|0|0)==0?0:1;b[q>>1]=(((c[m>>2]|0)>>>0)/4|0)+(c[o>>2]|0)+2;c[r>>2]=4+((e[q>>1]|0)<<2);if(((c[(c[k>>2]|0)+40>>2]|0)+(c[r>>2]|0)|0)>>>0>(c[(c[k>>2]|0)+44>>2]|0)>>>0){c[h>>2]=-2147483645;s=c[h>>2]|0;i=t;return s|0}f=(c[k>>2]|0)+40|0;u=c[f>>2]|0;c[f>>2]=u+1;a[(c[(c[k>>2]|0)+36>>2]|0)+u>>0]=0;u=(c[k>>2]|0)+40|0;f=c[u>>2]|0;c[u>>2]=f+1;a[(c[(c[k>>2]|0)+36>>2]|0)+f>>0]=16;f=(e[q>>1]|0)>>8&255;u=(c[k>>2]|0)+40|0;g=c[u>>2]|0;c[u>>2]=g+1;a[(c[(c[k>>2]|0)+36>>2]|0)+g>>0]=f;g=(e[q>>1]|0)&255;f=(c[k>>2]|0)+40|0;q=c[f>>2]|0;c[f>>2]=q+1;a[(c[(c[k>>2]|0)+36>>2]|0)+q>>0]=g;q=(c[k>>2]|0)+40|0;g=c[q>>2]|0;c[q>>2]=g+1;a[(c[(c[k>>2]|0)+36>>2]|0)+g>>0]=0;g=(c[k>>2]|0)+40|0;q=c[g>>2]|0;c[g>>2]=q+1;a[(c[(c[k>>2]|0)+36>>2]|0)+q>>0]=1;a[s>>0]=-127;q=a[s>>0]|0;g=(c[k>>2]|0)+40|0;f=c[g>>2]|0;c[g>>2]=f+1;a[(c[(c[k>>2]|0)+36>>2]|0)+f>>0]=q;f=(c[(c[j>>2]|0)+16+4>>2]|0)>>>24&255;q=(c[k>>2]|0)+40|0;g=c[q>>2]|0;c[q>>2]=g+1;a[(c[(c[k>>2]|0)+36>>2]|0)+g>>0]=f;g=(c[(c[j>>2]|0)+16+4>>2]|0)>>>16&255;f=(c[k>>2]|0)+40|0;q=c[f>>2]|0;c[f>>2]=q+1;a[(c[(c[k>>2]|0)+36>>2]|0)+q>>0]=g;a[s>>0]=128|c[o>>2]<<6|63;s=a[s>>0]|0;q=(c[k>>2]|0)+40|0;g=c[q>>2]|0;c[q>>2]=g+1;a[(c[(c[k>>2]|0)+36>>2]|0)+g>>0]=s;g=(c[(c[j>>2]|0)+16+4>>2]|0)>>>8&255;s=(c[k>>2]|0)+40|0;q=c[s>>2]|0;c[s>>2]=q+1;a[(c[(c[k>>2]|0)+36>>2]|0)+q>>0]=g;q=c[(c[j>>2]|0)+16+4>>2]&255;g=(c[k>>2]|0)+40|0;s=c[g>>2]|0;c[g>>2]=s+1;a[(c[(c[k>>2]|0)+36>>2]|0)+s>>0]=q;Li((c[(c[k>>2]|0)+36>>2]|0)+(c[(c[k>>2]|0)+40>>2]|0)|0,c[l>>2]|0,c[m>>2]|0)|0;s=(c[k>>2]|0)+40|0;c[s>>2]=(c[s>>2]|0)+(c[m>>2]|0);c[(c[j>>2]|0)+6404>>2]=c[r>>2];if(c[o>>2]|0){a[p>>0]=4-(((c[m>>2]|0)>>>0)%4|0);while(1){if((c[n>>2]|0)>>>0>=(d[p>>0]|0)>>>0)break;s=(c[k>>2]|0)+40|0;u=c[s>>2]|0;c[s>>2]=u+1;a[(c[(c[k>>2]|0)+36>>2]|0)+u>>0]=-1;c[n>>2]=(c[n>>2]|0)+1}s=a[p>>0]|0;r=(c[k>>2]|0)+40|0;u=c[r>>2]|0;c[r>>2]=u+1;a[(c[(c[k>>2]|0)+36>>2]|0)+u>>0]=s}c[h>>2]=0;u=c[h>>2]|0;i=t;return u|0}function ui(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[e>>2]=b;c[g>>2]=0;c[f>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;b=c[d>>2]|0;i=h;return b|0}c[f>>2]=c[(c[e>>2]|0)+28>>2];c[g>>2]=c[(c[e>>2]|0)+32>>2];if(((c[(c[e>>2]|0)+40>>2]|0)+(c[g>>2]|0)+2|0)>>>0>(c[(c[e>>2]|0)+44>>2]|0)>>>0){c[d>>2]=-2147483645;b=c[d>>2]|0;i=h;return b|0}else{k=(c[g>>2]|0)>>>8&255;b=(c[e>>2]|0)+40|0;j=c[b>>2]|0;c[b>>2]=j+1;a[(c[(c[e>>2]|0)+36>>2]|0)+j>>0]=k;j=c[g>>2]&255;k=(c[e>>2]|0)+40|0;b=c[k>>2]|0;c[k>>2]=b+1;a[(c[(c[e>>2]|0)+36>>2]|0)+b>>0]=j;Li((c[(c[e>>2]|0)+36>>2]|0)+(c[(c[e>>2]|0)+40>>2]|0)|0,c[f>>2]|0,c[g>>2]|0)|0;b=(c[e>>2]|0)+40|0;c[b>>2]=(c[b>>2]|0)+(c[g>>2]|0);c[d>>2]=0;b=c[d>>2]|0;i=h;return b|0}return 0}function vi(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0;z=i;i=i+96|0;v=z+32|0;x=z+24|0;w=z+16|0;u=z+8|0;t=z;e=z+88|0;f=z+84|0;g=z+80|0;r=z+76|0;s=z+72|0;q=z+68|0;p=z+64|0;h=z+60|0;j=z+56|0;k=z+52|0;l=z+48|0;m=z+44|0;n=z+40|0;o=z+36|0;c[f>>2]=b;c[g>>2]=d;c[r>>2]=0;c[s>>2]=0;c[q>>2]=0;c[p>>2]=0;c[h>>2]=0;c[j>>2]=0;if(!(c[f>>2]|0)){c[e>>2]=-2147483647;y=c[e>>2]|0;i=z;return y|0}if(!(c[c[f>>2]>>2]&4)){c[e>>2]=0;y=c[e>>2]|0;i=z;return y|0}c[k>>2]=Lr(c[f>>2]|0,1751740020,s)|0;if(c[k>>2]|0){c[t>>2]=1012;Ti(24594,t);c[e>>2]=c[k>>2];y=c[e>>2]|0;i=z;return y|0}c[r>>2]=(c[s>>2]|0)+104+88+64+836;c[q>>2]=(c[s>>2]|0)+104+88+64+912;do if(1!=(c[(c[f>>2]|0)+6352>>2]|0)?3!=(c[(c[f>>2]|0)+6352>>2]|0):0){if(2==(c[(c[f>>2]|0)+6352>>2]|0)?(c[l>>2]=kt(c[f>>2]|0,c[g>>2]|0)|0,0!=(c[l>>2]|0)):0){c[u>>2]=1023;Ti(24594,u);c[e>>2]=c[l>>2];y=c[e>>2]|0;i=z;return y|0}c[h>>2]=c[(c[g>>2]|0)+40>>2];c[j>>2]=(c[(c[g>>2]|0)+36>>2]|0)+(c[h>>2]|0);c[m>>2]=js(c[g>>2]|0)|0;if(!(c[m>>2]|0)){w=(c[f>>2]|0)+6392|0;u=w;u=Px(c[u>>2]|0,c[u+4>>2]|0,8,0)|0;c[w>>2]=u;c[w+4>>2]=D;break}c[w>>2]=1030;Ti(24594,w);c[e>>2]=c[m>>2];y=c[e>>2]|0;i=z;return y|0}while(0);c[p>>2]=c[(c[g>>2]|0)+40>>2];w=(c[q>>2]|0)+32|0;if(0==(c[w>>2]|0)?0==(c[w+4>>2]|0):0){t=(c[f>>2]|0)+6392|0;u=c[t+4>>2]|0;w=(c[q>>2]|0)+32|0;c[w>>2]=c[t>>2];c[w+4>>2]=u}c[n>>2]=ti(c[f>>2]|0,c[g>>2]|0)|0;if(c[n>>2]|0){c[x>>2]=1042;Ti(24594,x);c[e>>2]=c[n>>2];y=c[e>>2]|0;i=z;return y|0}x=(c[r>>2]|0)+32|0;c[x>>2]=(c[x>>2]|0)+(c[(c[f>>2]|0)+6404>>2]|0);if(!(1!=(c[(c[f>>2]|0)+6352>>2]|0)?0!=(c[(c[f>>2]|0)+6352>>2]|0):0))y=21;if((y|0)==21?(c[o>>2]=gi(c[f>>2]|0,c[g>>2]|0,1751740020)|0,0!=(c[o>>2]|0)):0){c[v>>2]=1051;Ti(24594,v);c[e>>2]=c[o>>2];y=c[e>>2]|0;i=z;return y|0}x=(c[f>>2]|0)+6392|0;w=x;w=Px(c[w>>2]|0,c[w+4>>2]|0,(c[(c[g>>2]|0)+40>>2]|0)-(c[p>>2]|0)|0,0)|0;c[x>>2]=w;c[x+4>>2]=D;if(!(c[(c[f>>2]|0)+6352>>2]|0)){if(!(c[(c[f>>2]|0)+6376>>2]|0)){c[(c[f>>2]|0)+6356>>2]=c[h>>2];c[(c[f>>2]|0)+6376>>2]=1}c[(c[g>>2]|0)+56>>2]=c[(c[f>>2]|0)+6356>>2];x=(c[f>>2]|0)+6392|0;x=Nx(c[x>>2]|0,c[x+4>>2]|0,c[(c[g>>2]|0)+56>>2]|0,0)|0;c[(c[g>>2]|0)+60>>2]=x}if(!(0!=(c[(c[f>>2]|0)+6352>>2]|0)?2!=(c[(c[f>>2]|0)+6352>>2]|0):0))y=29;do if((y|0)==29){if(c[j>>2]|0){a[c[j>>2]>>0]=((c[(c[g>>2]|0)+40>>2]|0)-(c[h>>2]|0)|0)>>>24;a[(c[j>>2]|0)+1>>0]=((c[(c[g>>2]|0)+40>>2]|0)-(c[h>>2]|0)|0)>>>16;a[(c[j>>2]|0)+2>>0]=((c[(c[g>>2]|0)+40>>2]|0)-(c[h>>2]|0)|0)>>>8;a[(c[j>>2]|0)+3>>0]=(c[(c[g>>2]|0)+40>>2]|0)-(c[h>>2]|0);break}c[e>>2]=-2147483647;y=c[e>>2]|0;i=z;return y|0}while(0);c[e>>2]=0;y=c[e>>2]|0;i=z;return y|0}function wi(b,d){b=b|0;d=d|0;var e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0;z=i;i=i+96|0;v=z+32|0;x=z+24|0;w=z+16|0;u=z+8|0;t=z;e=z+88|0;f=z+84|0;g=z+80|0;r=z+76|0;s=z+72|0;q=z+68|0;p=z+64|0;h=z+60|0;j=z+56|0;k=z+52|0;l=z+48|0;m=z+44|0;n=z+40|0;o=z+36|0;c[f>>2]=b;c[g>>2]=d;c[r>>2]=0;c[s>>2]=0;c[q>>2]=0;c[p>>2]=0;c[h>>2]=0;c[j>>2]=0;if(!(c[f>>2]|0)){c[e>>2]=-2147483647;y=c[e>>2]|0;i=z;return y|0}if(!(c[c[f>>2]>>2]&4)){c[e>>2]=0;y=c[e>>2]|0;i=z;return y|0}c[k>>2]=Lr(c[f>>2]|0,1952807028,s)|0;if(c[k>>2]|0){c[t>>2]=1110;Ti(24594,t);c[e>>2]=c[k>>2];y=c[e>>2]|0;i=z;return y|0}c[r>>2]=(c[s>>2]|0)+104+88+64+836;c[q>>2]=(c[s>>2]|0)+104+88+64+912;do if(1!=(c[(c[f>>2]|0)+6352>>2]|0)?3!=(c[(c[f>>2]|0)+6352>>2]|0):0){if(2==(c[(c[f>>2]|0)+6352>>2]|0)?(c[l>>2]=kt(c[f>>2]|0,c[g>>2]|0)|0,0!=(c[l>>2]|0)):0){c[u>>2]=1121;Ti(24594,u);c[e>>2]=c[l>>2];y=c[e>>2]|0;i=z;return y|0}c[h>>2]=c[(c[g>>2]|0)+40>>2];c[j>>2]=(c[(c[g>>2]|0)+36>>2]|0)+(c[h>>2]|0);c[m>>2]=js(c[g>>2]|0)|0;if(!(c[m>>2]|0)){w=(c[f>>2]|0)+6392|0;u=w;u=Px(c[u>>2]|0,c[u+4>>2]|0,8,0)|0;c[w>>2]=u;c[w+4>>2]=D;break}c[w>>2]=1128;Ti(24594,w);c[e>>2]=c[m>>2];y=c[e>>2]|0;i=z;return y|0}while(0);c[p>>2]=c[(c[g>>2]|0)+40>>2];w=(c[q>>2]|0)+32|0;if(0==(c[w>>2]|0)?0==(c[w+4>>2]|0):0){t=(c[f>>2]|0)+6392|0;u=c[t+4>>2]|0;w=(c[q>>2]|0)+32|0;c[w>>2]=c[t>>2];c[w+4>>2]=u}c[n>>2]=ui(c[g>>2]|0)|0;if(c[n>>2]|0){c[x>>2]=1140;Ti(24594,x);c[e>>2]=c[n>>2];y=c[e>>2]|0;i=z;return y|0}x=(c[r>>2]|0)+32|0;c[x>>2]=(c[x>>2]|0)+((c[(c[g>>2]|0)+32>>2]|0)+2);if(!(1!=(c[(c[f>>2]|0)+6352>>2]|0)?0!=(c[(c[f>>2]|0)+6352>>2]|0):0))y=21;if((y|0)==21?(c[o>>2]=gi(c[f>>2]|0,c[g>>2]|0,1952807028)|0,0!=(c[o>>2]|0)):0){c[v>>2]=1148;Ti(24594,v);c[e>>2]=c[o>>2];y=c[e>>2]|0;i=z;return y|0}x=(c[f>>2]|0)+6392|0;w=x;w=Px(c[w>>2]|0,c[w+4>>2]|0,(c[(c[g>>2]|0)+40>>2]|0)-(c[p>>2]|0)|0,0)|0;c[x>>2]=w;c[x+4>>2]=D;if(!(c[(c[f>>2]|0)+6352>>2]|0)){if(!(c[(c[f>>2]|0)+6376>>2]|0)){c[(c[f>>2]|0)+6356>>2]=c[h>>2];c[(c[f>>2]|0)+6376>>2]=1}c[(c[g>>2]|0)+56>>2]=c[(c[f>>2]|0)+6356>>2];x=(c[f>>2]|0)+6392|0;x=Nx(c[x>>2]|0,c[x+4>>2]|0,c[(c[g>>2]|0)+56>>2]|0,0)|0;c[(c[g>>2]|0)+60>>2]=x}if(!(0!=(c[(c[f>>2]|0)+6352>>2]|0)?2!=(c[(c[f>>2]|0)+6352>>2]|0):0))y=29;do if((y|0)==29){if(c[j>>2]|0){a[c[j>>2]>>0]=((c[(c[g>>2]|0)+40>>2]|0)-(c[h>>2]|0)|0)>>>24;a[(c[j>>2]|0)+1>>0]=((c[(c[g>>2]|0)+40>>2]|0)-(c[h>>2]|0)|0)>>>16;a[(c[j>>2]|0)+2>>0]=((c[(c[g>>2]|0)+40>>2]|0)-(c[h>>2]|0)|0)>>>8;a[(c[j>>2]|0)+3>>0]=(c[(c[g>>2]|0)+40>>2]|0)-(c[h>>2]|0);break}c[e>>2]=-2147483647;y=c[e>>2]|0;i=z;return y|0}while(0);c[e>>2]=0;y=c[e>>2]|0;i=z;return y|0}function xi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=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,v=0;v=i;i=i+96|0;r=v+40|0;q=v+32|0;u=v+24|0;t=v+16|0;s=v+8|0;p=v;d=v+84|0;e=v+80|0;f=v+76|0;g=v+72|0;o=v+68|0;h=v+64|0;j=v+60|0;k=v+56|0;l=v+52|0;m=v+48|0;n=v+44|0;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[o>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;u=c[d>>2]|0;i=v;return u|0}if(!(c[f>>2]|0)){c[d>>2]=-2147483647;u=c[d>>2]|0;i=v;return u|0}if(3==(c[c[f>>2]>>2]|0))c[(c[e>>2]|0)+6368>>2]=1;if(!(c[(c[e>>2]|0)+6368>>2]|0)){c[d>>2]=-2147483643;u=c[d>>2]|0;i=v;return u|0}c[(c[f>>2]|0)+40>>2]=0;do if((c[(c[e>>2]|0)+6380>>2]|0)==0?0==(c[(c[e>>2]|0)+6352>>2]|0):0){c[h>>2]=gs(c[e>>2]|0,c[f>>2]|0)|0;if(!(c[h>>2]|0)){c[(c[e>>2]|0)+6380>>2]=1;break}c[p>>2]=1217;Ti(24594,p);c[d>>2]=c[h>>2];u=c[d>>2]|0;i=v;return u|0}while(0);do if((c[(c[e>>2]|0)+6360>>2]|0?(c[(c[e>>2]|0)+6384>>2]|0)==0:0)?1==(c[(c[e>>2]|0)+6352>>2]|0):0){c[j>>2]=qt(c[e>>2]|0,c[f>>2]|0)|0;if(!(c[j>>2]|0)){c[(c[e>>2]|0)+6384>>2]=1;break}c[s>>2]=1225;Ti(24594,s);c[d>>2]=c[j>>2];u=c[d>>2]|0;i=v;return u|0}while(0);if(3==(c[(c[e>>2]|0)+6352>>2]|0)?c[(c[(c[f>>2]|0)+52>>2]|0)+12>>2]|0:0){c[k>>2]=Dt(c[e>>2]|0,1986618469,o)|0;if(c[k>>2]|0){c[t>>2]=1233;Ti(24594,t);c[d>>2]=c[k>>2];u=c[d>>2]|0;i=v;return u|0}c[l>>2]=Zt(c[e>>2]|0,c[(c[f>>2]|0)+52>>2]|0,c[f>>2]|0)|0;if(c[l>>2]|0){c[u>>2]=1234;Ti(24594,u);c[d>>2]=c[l>>2];u=c[d>>2]|0;i=v;return u|0}c[m>>2]=rb[c[(c[(c[f>>2]|0)+52>>2]|0)+20>>2]&127](c[(c[f>>2]|0)+52>>2]|0,c[(c[(c[f>>2]|0)+52>>2]|0)+16>>2]|0)|0;if(c[m>>2]|0){c[q>>2]=1235;Ti(24594,q);c[d>>2]=c[m>>2];u=c[d>>2]|0;i=v;return u|0}c[n>>2]=au(c[e>>2]|0,c[(c[f>>2]|0)+52>>2]|0)|0;if(c[n>>2]|0){c[r>>2]=1236;Ti(24594,r);c[d>>2]=c[n>>2];u=c[d>>2]|0;i=v;return u|0}else{c[d>>2]=0;u=c[d>>2]|0;i=v;return u|0}}switch(c[c[f>>2]>>2]|0){case 2:case 0:case 1:case 3:{c[g>>2]=pi(c[e>>2]|0,c[f>>2]|0)|0;break}case 4:{c[g>>2]=si(c[e>>2]|0,c[f>>2]|0)|0;break}case 1024:{c[g>>2]=wi(c[e>>2]|0,c[f>>2]|0)|0;break}case 2048:{c[g>>2]=vi(c[e>>2]|0,c[f>>2]|0)|0;break}default:c[g>>2]=-2147483646}if((0==(c[g>>2]|0)?(c[(c[e>>2]|0)+6360>>2]|0)!=0:0)?((c[(c[e>>2]|0)+6336>>2]|0)+48|0)>>>0>(c[(c[e>>2]|0)+6360>>2]|0)>>>0:0){c[d>>2]=-2147483642;u=c[d>>2]|0;i=v;return u|0}c[d>>2]=c[g>>2];u=c[d>>2]|0;i=v;return u|0}function yi(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[d>>2]=a;if(!(c[d>>2]|0))c[b>>2]=-2147483647;else{c[(c[d>>2]|0)+4>>2]=6408;c[b>>2]=0}i=e;return c[b>>2]|0}function zi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;a=c[d>>2]|0;i=h;return a|0}if(!(c[f>>2]|0)){c[d>>2]=-2147483647;a=c[d>>2]|0;i=h;return a|0}if(!(c[(c[e>>2]|0)+8>>2]|0)){c[d>>2]=-2147483647;a=c[d>>2]|0;i=h;return a|0}Mi(c[(c[e>>2]|0)+8>>2]|0,0,c[(c[e>>2]|0)+4>>2]|0)|0;c[g>>2]=c[(c[e>>2]|0)+8>>2];c[(c[g>>2]|0)+6352>>2]=c[c[e>>2]>>2];Li(c[g>>2]|0,(c[e>>2]|0)+12|0,136)|0;do if(c[(c[e>>2]|0)+148>>2]|0){c[(c[g>>2]|0)+6360>>2]=c[(c[e>>2]|0)+148>>2];if((c[(c[g>>2]|0)+6360>>2]|0)>>>0>=2048?(c[(c[g>>2]|0)+6360>>2]|0)>>>0<=((c[(c[e>>2]|0)+152>>2]|0)-2097152|0)>>>0:0){c[(c[g>>2]|0)+6336>>2]=1800;Li((c[g>>2]|0)+6288+8|0,(c[e>>2]|0)+156|0,4)|0;break}c[d>>2]=-2147483641;a=c[d>>2]|0;i=h;return a|0}while(0);c[c[f>>2]>>2]=c[g>>2];c[d>>2]=ii(c[g>>2]|0)|0;a=c[d>>2]|0;i=h;return a|0}function Ai(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;d=i;i=i+16|0;g=d+8|0;e=d+4|0;f=d;c[g>>2]=a;c[e>>2]=b;c[f>>2]=c[g>>2];b=xi(c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|0}function Bi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0;z=i;i=i+128|0;v=z+64|0;u=z+56|0;t=z+48|0;s=z+40|0;x=z+32|0;w=z+24|0;r=z+16|0;q=z+8|0;d=z+112|0;A=z+108|0;e=z+104|0;g=z+100|0;f=z;h=z+96|0;j=z+92|0;k=z+88|0;l=z+84|0;m=z+80|0;n=z+76|0;o=z+72|0;p=z+68|0;c[A>>2]=a;c[e>>2]=b;c[g>>2]=c[A>>2];b=f;c[b>>2]=0;c[b+4>>2]=0;c[(c[e>>2]|0)+8>>2]=0;if(!((1!=(c[(c[g>>2]|0)+6352>>2]|0)?2!=(c[(c[g>>2]|0)+6352>>2]|0):0)?3!=(c[(c[g>>2]|0)+6352>>2]|0):0))y=4;if((y|0)==4?(c[h>>2]=is(c[e>>2]|0)|0,0!=(c[h>>2]|0)):0){c[q>>2]=1393;Ti(24594,q);c[d>>2]=c[h>>2];A=c[d>>2]|0;i=z;return A|0}c[j>>2]=os(c[g>>2]|0,c[e>>2]|0)|0;if(c[j>>2]|0){c[r>>2]=1397;Ti(24594,r);c[d>>2]=c[j>>2];A=c[d>>2]|0;i=z;return A|0}if((1==(c[(c[g>>2]|0)+6352>>2]|0)?c[(c[g>>2]|0)+6360>>2]|0:0)?(c[k>>2]=gt(c[g>>2]|0,c[e>>2]|0)|0,0!=(c[k>>2]|0)):0){c[w>>2]=1402;Ti(24594,w);c[d>>2]=c[k>>2];A=c[d>>2]|0;i=z;return A|0}if(1==(c[(c[g>>2]|0)+6352>>2]|0)){y=(c[g>>2]|0)+6392|0;y=Px(c[y>>2]|0,c[y+4>>2]|0,8,0)|0;A=f;c[A>>2]=y;c[A+4>>2]=D;A=f;y=c[A+4>>2]|0;if(y>>>0>0|(y|0)==0&(c[A>>2]|0)>>>0>4294967295){y=f;y=Px(c[y>>2]|0,c[y+4>>2]|0,8,0)|0;A=f;c[A>>2]=y;c[A+4>>2]=D;A=f;c[l>>2]=ks(c[e>>2]|0,c[A>>2]|0,c[A+4>>2]|0,1)|0;if(c[l>>2]|0){c[x>>2]=1414;Ti(24594,x);c[d>>2]=c[l>>2];A=c[d>>2]|0;i=z;return A|0}}else{A=f;c[m>>2]=ks(c[e>>2]|0,c[A>>2]|0,c[A+4>>2]|0,0)|0;if(c[m>>2]|0){c[s>>2]=1419;Ti(24594,s);c[d>>2]=c[m>>2];A=c[d>>2]|0;i=z;return A|0}}c[n>>2]=ft(c[g>>2]|0,c[e>>2]|0,c[(c[e>>2]|0)+8>>2]|0)|0;if(c[n>>2]|0){c[t>>2]=1423;Ti(24594,t);c[d>>2]=c[n>>2];A=c[d>>2]|0;i=z;return A|0}}if(((2!=(c[(c[g>>2]|0)+6352>>2]|0)?3!=(c[(c[g>>2]|0)+6352>>2]|0):0)?(c[(c[g>>2]|0)+6360>>2]|0)==0:0)?(c[o>>2]=st(c[g>>2]|0)|0,0!=(c[o>>2]|0)):0){c[u>>2]=1431;Ti(24594,u);c[d>>2]=c[o>>2];A=c[d>>2]|0;i=z;return A|0}if((1==(c[(c[g>>2]|0)+6352>>2]|0)?c[(c[g>>2]|0)+6360>>2]|0:0)?(c[p>>2]=rt(c[g>>2]|0,c[e>>2]|0)|0,0!=(c[p>>2]|0)):0){c[v>>2]=1437;Ti(24594,v);c[d>>2]=c[p>>2];A=c[d>>2]|0;i=z;return A|0}c[d>>2]=0;A=c[d>>2]|0;i=z;return A|0}function Ci(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=i;i=i+32|0;f=g;b=g+16|0;h=g+12|0;d=g+8|0;e=g+4|0;c[h>>2]=a;c[d>>2]=c[h>>2];if(!(c[d>>2]|0)){c[b>>2]=-2147483647;h=c[b>>2]|0;i=g;return h|0}c[e>>2]=st(c[d>>2]|0)|0;if(c[e>>2]|0){c[f>>2]=1457;Ti(24594,f);c[b>>2]=c[e>>2];h=c[b>>2]|0;i=g;return h|0}else{c[b>>2]=hi(c[d>>2]|0)|0;h=c[b>>2]|0;i=g;return h|0}return 0}function Di(b){b=b|0;c[b>>2]=2196;a[b+4>>0]=0;c[b+32>>2]=0;c[b+8>>2]=3;b=b+12|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;return}function Ei(a){a=a|0;lx(a);return}function Fi(b){b=b|0;c[b>>2]=2196;a[b+4>>0]=0;c[b+32>>2]=0;c[b+8>>2]=3;b=b+12|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;return}function Gi(b){b=b|0;var d=0.0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+16|0;n=o+8|0;m=o;j=b+4|0;if(!(a[j>>0]|0)){a[j>>0]=1;i=o;return 1}k=b+20|0;l=b+24|0;f=b+28|0;g=m+4|0;h=n+4|0;do{cb(n|0,0)|0;lb[c[l>>2]&63](c[f>>2]|0);cb(m|0,0)|0;d=+((c[g>>2]|0)-(c[h>>2]|0)+(((c[m>>2]|0)-(c[n>>2]|0)|0)*1e6|0)|0);b=c[k>>2]|0;if(d<+(b*1e3|0)){b=~~(+(b|0)-d/1.0e3);e=(b|0)%50|0;b=(b|0)>16049?320:(b|0)/50|0;if(!((b|0)==0|(a[j>>0]|0)==0))do{b=b+-1|0;La(5e4)|0}while(!((b|0)==0|(a[j>>0]|0)==0));La(e*1e3|0)|0}}while((a[j>>0]|0)!=0);a[j>>0]=1;i=o;return 1}function Hi(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=b+8|0;c[h>>2]=d;if((d|0)==2){b=b+12|0;c[b>>2]=0;c[b+4>>2]=0;b=1;return b|0}c[b+20>>2]=e;c[b+24>>2]=f;c[b+28>>2]=g;f=b+4|0;a[f>>0]=1;d=b+32|0;if(!(Ta(d|0,0,60,b|0)|0)){b=1;return b|0}a[f>>0]=0;c[d>>2]=0;c[h>>2]=3;b=b+12|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;Uw(6244)|0;b=0;return b|0}function Ii(b){b=b|0;var d=0,e=0,f=0,g=0;d=b+8|0;g=(c[d>>2]|0)==2;e=b+4|0;a[e>>0]=0;f=b+32|0;if(g){c[f>>2]=0;c[d>>2]=3;b=b+12|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;b=1;return b|0}g=c[f>>2]|0;if(!g){b=1;return b|0}if(!(sa(g|0,0)|0)){a[e>>0]=0;c[f>>2]=0;c[d>>2]=3;b=b+12|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;b=1;return b|0}else{Uw(6284)|0;b=0;return b|0}return 0}function Ji(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d+4|0;b=d;c[e>>2]=a;c[b>>2]=0;c[b>>2]=_w(c[e>>2]|0)|0;i=d;return c[b>>2]|0}function Ki(a,b){a=a|0;b=b|0;var d=0,e=0;e=i;i=i+16|0;d=e+4|0;c[d>>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=e;return}$w(c[d>>2]|0);c[d>>2]=0;i=e;return}function Li(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;b=c[h>>2]|0;Tx(b|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return b|0}function Mi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=i;i=i+16|0;h=e+8|0;g=e+4|0;f=e;c[h>>2]=a;c[g>>2]=b;c[f>>2]=d;b=c[h>>2]|0;Ox(b|0,c[g>>2]&255|0,c[f>>2]|0)|0;i=e;return b|0}function Ni(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;b=c[d>>2]|0;i=g;return b|0}c[c[e>>2]>>2]=(c[f>>2]|0)<=0?2:c[f>>2]|0;c[(c[e>>2]|0)+4>>2]=0;b=Ji(c[c[e>>2]>>2]<<2)|0;c[(c[e>>2]|0)+8>>2]=b;if(!(c[(c[e>>2]|0)+8>>2]|0)){c[d>>2]=-2147483645;b=c[d>>2]|0;i=g;return b|0}else{c[d>>2]=0;b=c[d>>2]|0;i=g;return b|0}return 0}function Oi(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[d>>2]=a;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;a=c[b>>2]|0;i=e;return a|0}else{Ki(c[(c[d>>2]|0)+8>>2]|0,c[c[d>>2]>>2]<<2);c[(c[d>>2]|0)+8>>2]=0;c[c[d>>2]>>2]=0;c[b>>2]=0;a=c[b>>2]|0;i=e;return a|0}return 0}function Pi(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;i=d;return c[(c[b>>2]|0)+4>>2]|0}function Qi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;c[j>>2]=0;if(0==(c[g>>2]|0)|0==(c[f>>2]|0)){c[e>>2]=-2147483647;k=c[e>>2]|0;i=l;return k|0}do if((c[(c[f>>2]|0)+4>>2]|0)>=(c[c[f>>2]>>2]|0)){c[j>>2]=c[c[f>>2]>>2];c[c[f>>2]>>2]=(((c[c[f>>2]>>2]|0)*3|0)/2|0)+1;c[k>>2]=Ji(c[c[f>>2]>>2]<<2)|0;if(c[k>>2]|0){Mi(c[k>>2]|0,0,c[c[f>>2]>>2]<<2)|0;Li(c[k>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[(c[f>>2]|0)+4>>2]<<2)|0;Ki(c[(c[f>>2]|0)+8>>2]|0,c[j>>2]<<2);c[(c[f>>2]|0)+8>>2]=c[k>>2];break}Ki(c[g>>2]|0,c[h>>2]|0);c[c[f>>2]>>2]=c[j>>2];c[e>>2]=-2147483645;k=c[e>>2]|0;i=l;return k|0}while(0);j=c[g>>2]|0;d=(c[f>>2]|0)+4|0;k=c[d>>2]|0;c[d>>2]=k+1;c[(c[(c[f>>2]|0)+8>>2]|0)+(k<<2)>>2]=j;c[e>>2]=0;k=c[e>>2]|0;i=l;return k|0}function Ri(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=c[g>>2];g=c[d>>2]|0;i=h;return g|0}if(-1==(c[f>>2]|0))c[f>>2]=(c[(c[e>>2]|0)+4>>2]|0)-1;if((c[f>>2]|0)>=0?(c[f>>2]|0)<(c[(c[e>>2]|0)+4>>2]|0):0){c[g>>2]=c[(c[(c[e>>2]|0)+8>>2]|0)+(c[f>>2]<<2)>>2];c[d>>2]=c[g>>2];g=c[d>>2]|0;i=h;return g|0}c[d>>2]=c[g>>2];g=c[d>>2]|0;i=h;return g|0}function Si(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;if(!(c[b>>2]|0)){i=d;return}c[(c[b>>2]|0)+4>>2]=0;Mi(c[(c[b>>2]|0)+8>>2]|0,0,c[c[b>>2]>>2]<<2)|0;i=d;return}function Ti(a,b){a=a|0;b=b|0;b=i;i=i+16|0;c[b>>2]=a;i=b;return}function Ui(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=2212;nb[c[(c[a>>2]|0)+28>>2]&127](a)|0;Vi(a);i=b;return}function Vi(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return}function Wi(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;Ui(a);lx(a);i=b;return}function Xi(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function Yi(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return 0}function Zi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+4>>2]=c[f>>2];i=d;return 0}function _i(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;i=i+16|0;c[e+8>>2]=a;c[e+4>>2]=b;c[e>>2]=d;i=e;return 0}function $i(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+12|0;j=h+8|0;e=h+4|0;g=h+16|0;f=h;c[j>>2]=a;c[e>>2]=b;b=c[j>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;j=c[d>>2]|0;i=h;return j|0}nb[c[(c[b>>2]|0)+28>>2]&127](b)|0;if(!(c[b+4>>2]|0)){c[d>>2]=-2147483648;j=c[d>>2]|0;i=h;return j|0}c[g>>2]=0;c[b+16>>2]=zh(c[e>>2]|0,1)|0;if(c[b+16>>2]|0){e=Dh(c[b+16>>2]|0)|0;j=b+24|0;c[j>>2]=e;c[j+4>>2]=D;c[g>>2]=aj(b)|0;if((0==(c[g>>2]|0)?(c[g>>2]=ij(b)|0,0==(c[g>>2]|0)):0)?(c[b+12>>2]=Kh(0,61,b)|0,0==(c[b+12>>2]|0)):0)c[g>>2]=-2147483646}else c[g>>2]=-2147483641;if(c[g>>2]|0){nb[c[(c[b>>2]|0)+28>>2]&127](b)|0;c[d>>2]=c[g>>2];c[f>>2]=1}else{c[b+8>>2]=0;c[d>>2]=0;c[f>>2]=1}j=c[d>>2]|0;i=h;return j|0}function aj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+8|0;g=f+4|0;e=f+12|0;d=f;c[g>>2]=a;a=c[g>>2]|0;c[e>>2]=bj(a)|0;if(c[e>>2]|0){c[b>>2]=c[e>>2];c[d>>2]=1}else c[d>>2]=0;if((c[d>>2]|0)>>>0>=1){g=c[b>>2]|0;i=f;return g|0}c[e>>2]=hj(a)|0;if(c[e>>2]|0){c[b>>2]=c[e>>2];c[d>>2]=1}else c[d>>2]=0;if((c[d>>2]|0)>>>0>=1){g=c[b>>2]|0;i=f;return g|0}c[e>>2]=Jj(c[a+16>>2]|0,a+72|0)|0;if(c[e>>2]|0){c[b>>2]=c[e>>2];c[d>>2]=1}else c[d>>2]=0;if((c[d>>2]|0)>>>0>=1){g=c[b>>2]|0;i=f;return g|0}c[b>>2]=0;g=c[b>>2]|0;i=f;return g|0}function bj(a){a=a|0;var d=0,f=0,g=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;t=i;i=i+80|0;g=t+56|0;d=t+48|0;j=t+64|0;l=t+52|0;h=t+36|0;f=t+44|0;m=t+40|0;k=t+32|0;r=t+16|0;n=t+12|0;o=t+8|0;p=t+4|0;q=t;c[d>>2]=a;d=c[d>>2]|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[l>>2]=Gj(c[d+16>>2]|0,j,16)|0;if(c[l>>2]|0){c[g>>2]=c[l>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0){s=c[g>>2]|0;i=t;return s|0}if(!(cj(j,2268)|0)){c[g>>2]=-2147483641;c[h>>2]=1;s=c[g>>2]|0;i=t;return s|0}c[l>>2]=0;c[f>>2]=0;c[m>>2]=Gj(c[d+16>>2]|0,l,4)|0;if(c[m>>2]|0){c[g>>2]=c[m>>2];c[h>>2]=1}else c[h>>2]=0;a:do if(!(c[h>>2]|0)){c[m>>2]=Gj(c[d+16>>2]|0,f,4)|0;if(c[m>>2]|0){c[g>>2]=c[m>>2];c[h>>2]=1}else c[h>>2]=0;if(!(c[h>>2]|0)){if((c[l>>2]|0)>>>0<30&0==(c[f>>2]|0)){c[g>>2]=-2147483641;c[h>>2]=1;break}c[m>>2]=Ij(c[d+16>>2]|0,1,6,0)|0;if(c[m>>2]|0){c[g>>2]=c[m>>2];c[h>>2]=1}else c[h>>2]=0;if(!(c[h>>2]|0)){c[l>>2]=(c[l>>2]|0)-30;while(1){if((c[l>>2]|0)>>>0<=0)break;c[m>>2]=0;c[k>>2]=0;c[r>>2]=Gj(c[d+16>>2]|0,j,16)|0;if(c[r>>2]|0){c[g>>2]=c[r>>2];c[h>>2]=1}else c[h>>2]=0;b:do if(!(c[h>>2]|0)){c[r>>2]=Gj(c[d+16>>2]|0,m,4)|0;if(c[r>>2]|0){c[g>>2]=c[r>>2];c[h>>2]=1}else c[h>>2]=0;if(!(c[h>>2]|0)){c[r>>2]=Gj(c[d+16>>2]|0,k,4)|0;if(c[r>>2]|0){c[g>>2]=c[r>>2];c[h>>2]=1}else c[h>>2]=0;if(!(c[h>>2]|0)){if(!(c[m>>2]|0)){c[m>>2]=c[l>>2];c[r>>2]=Ij(c[d+16>>2]|0,1,(c[m>>2]|0)-24|0,0)|0;if(c[r>>2]|0){c[g>>2]=c[r>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0)break;c[l>>2]=(c[l>>2]|0)-(c[m>>2]|0);c[h>>2]=2;break}a=c[j>>2]|0;c:do if((a|0)<-1210316911){switch(a|0){case -1934893919:break;default:{s=98;break c}}if(1==(cj(j,2284)|0)){c[r>>2]=dj(d)|0;if(c[r>>2]|0){c[g>>2]=c[r>>2];c[h>>2]=1}else c[h>>2]=0;if(!(c[h>>2]|0))break;else break b}else{c[r>>2]=Ij(c[d+16>>2]|0,1,(c[m>>2]|0)-24|0,0)|0;if(c[r>>2]|0){c[g>>2]=c[r>>2];c[h>>2]=1}else c[h>>2]=0;if(!(c[h>>2]|0))break;else break b}}else{switch(a|0){case -1210316911:break;default:{s=98;break c}}if(1!=(cj(j,2300)|0)){c[r>>2]=Ij(c[d+16>>2]|0,1,(c[m>>2]|0)-24|0,0)|0;if(c[r>>2]|0){c[g>>2]=c[r>>2];c[h>>2]=1}else c[h>>2]=0;if(!(c[h>>2]|0))break;else break b};c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;c[n>>2]=Gj(c[d+16>>2]|0,r,16)|0;if(c[n>>2]|0){c[g>>2]=c[n>>2];c[h>>2]=1}else c[h>>2]=0;do if(!(c[h>>2]|0)){c[n>>2]=Ij(c[d+16>>2]|0,1,24,0)|0;if(c[n>>2]|0){c[g>>2]=c[n>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0)break;c[n>>2]=0;c[o>>2]=Gj(c[d+16>>2]|0,n,4)|0;if(c[o>>2]|0){c[g>>2]=c[o>>2];c[h>>2]=1}else c[h>>2]=0;if(!(c[h>>2]|0)){c[o>>2]=0;c[p>>2]=Gj(c[d+16>>2]|0,o,4)|0;if(c[p>>2]|0){c[g>>2]=c[p>>2];c[h>>2]=1}else c[h>>2]=0;if(!(c[h>>2]|0)){b[p>>1]=0;c[q>>2]=Gj(c[d+16>>2]|0,p,2)|0;if(c[q>>2]|0){c[g>>2]=c[q>>2];c[h>>2]=1}else c[h>>2]=0;do if(!(c[h>>2]|0)){b[p>>1]=(e[p>>1]|0)&127;c[q>>2]=Ij(c[d+16>>2]|0,1,4,0)|0;if(c[q>>2]|0){c[g>>2]=c[q>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0)break;if(-127295936==(c[r>>2]|0)){c[q>>2]=ej(d,b[p>>1]|0)|0;if(c[q>>2]|0){c[g>>2]=c[q>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0)break}else{c[q>>2]=gj(d,b[p>>1]|0,c[n>>2]|0)|0;if(c[q>>2]|0){c[g>>2]=c[q>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0)break}c[q>>2]=Ij(c[d+16>>2]|0,1,c[o>>2]|0,0)|0;if(c[q>>2]|0){c[g>>2]=c[q>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0)break;c[h>>2]=0}while(0)}}}while(0);if(c[h>>2]|0)break b}while(0);if((s|0)==98){s=0;c[r>>2]=Ij(c[d+16>>2]|0,1,(c[m>>2]|0)-24|0,0)|0;if(c[r>>2]|0){c[g>>2]=c[r>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0)break}c[l>>2]=(c[l>>2]|0)-(c[m>>2]|0);c[h>>2]=0}}}while(0);switch(c[h>>2]|0){case 2:case 0:break;default:break a}}c[g>>2]=0;c[h>>2]=1}}}while(0);s=c[g>>2]|0;i=t;return s|0}function cj(a,b){a=a|0;b=b|0;var f=0,g=0,h=0,j=0;g=i;i=i+16|0;f=g+8|0;j=g+4|0;h=g;c[j>>2]=a;c[h>>2]=b;if(((((((((((c[c[j>>2]>>2]|0)==(c[c[h>>2]>>2]|0)?(e[(c[j>>2]|0)+4>>1]|0|0)==(e[(c[h>>2]|0)+4>>1]|0|0):0)?(e[(c[j>>2]|0)+6>>1]|0|0)==(e[(c[h>>2]|0)+6>>1]|0|0):0)?(d[(c[j>>2]|0)+8>>0]|0|0)==(d[(c[h>>2]|0)+8>>0]|0|0):0)?(d[(c[j>>2]|0)+8+1>>0]|0|0)==(d[(c[h>>2]|0)+8+1>>0]|0|0):0)?(d[(c[j>>2]|0)+8+2>>0]|0|0)==(d[(c[h>>2]|0)+8+2>>0]|0|0):0)?(d[(c[j>>2]|0)+8+3>>0]|0|0)==(d[(c[h>>2]|0)+8+3>>0]|0|0):0)?(d[(c[j>>2]|0)+8+4>>0]|0|0)==(d[(c[h>>2]|0)+8+4>>0]|0|0):0)?(d[(c[j>>2]|0)+8+5>>0]|0|0)==(d[(c[h>>2]|0)+8+5>>0]|0|0):0)?(d[(c[j>>2]|0)+8+6>>0]|0|0)==(d[(c[h>>2]|0)+8+6>>0]|0|0):0)?(d[(c[j>>2]|0)+8+7>>0]|0|0)==(d[(c[h>>2]|0)+8+7>>0]|0|0):0){c[f>>2]=1;j=c[f>>2]|0;i=g;return j|0}c[f>>2]=0;j=c[f>>2]|0;i=g;return j|0}function dj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;b=h+16|0;j=h+12|0;f=h+20|0;d=h+8|0;e=h+4|0;g=h;c[j>>2]=a;a=c[j>>2]|0;c[f>>2]=Ij(c[a+16>>2]|0,1,16,0)|0;if(c[f>>2]|0){c[b>>2]=c[f>>2];c[d>>2]=1}else c[d>>2]=0;if((c[d>>2]|0)>>>0>=1){j=c[b>>2]|0;i=h;return j|0}c[f>>2]=Gj(c[a+16>>2]|0,a+32|0,4)|0;if(c[f>>2]|0){c[b>>2]=c[f>>2];c[d>>2]=1}else c[d>>2]=0;if((c[d>>2]|0)>>>0>=1){j=c[b>>2]|0;i=h;return j|0}c[f>>2]=Ij(c[a+16>>2]|0,1,20,0)|0;if(c[f>>2]|0){c[b>>2]=c[f>>2];c[d>>2]=1}else c[d>>2]=0;if((c[d>>2]|0)>>>0>=1){j=c[b>>2]|0;i=h;return j|0}c[f>>2]=0;c[e>>2]=0;c[g>>2]=Gj(c[a+16>>2]|0,f,4)|0;if(c[g>>2]|0){c[b>>2]=c[g>>2];c[d>>2]=1}else c[d>>2]=0;do if(!(c[d>>2]|0)){c[g>>2]=Gj(c[a+16>>2]|0,e,4)|0;if(c[g>>2]|0){c[b>>2]=c[g>>2];c[d>>2]=1}else c[d>>2]=0;if(!(c[d>>2]|0)){c[a+40>>2]=(((c[f>>2]|0)>>>0)/1e4|0)+((c[e>>2]|0)*429497|0);c[g>>2]=Ij(c[a+16>>2]|0,1,8,0)|0;if(c[g>>2]|0){c[b>>2]=c[g>>2];c[d>>2]=1}else c[d>>2]=0;if(!(c[d>>2]|0)){c[g>>2]=Gj(c[a+16>>2]|0,f,4)|0;if(c[g>>2]|0){c[b>>2]=c[g>>2];c[d>>2]=1}else c[d>>2]=0;if(!(c[d>>2]|0)){c[g>>2]=Gj(c[a+16>>2]|0,e,4)|0;if(c[g>>2]|0){c[b>>2]=c[g>>2];c[d>>2]=1}else c[d>>2]=0;if(!(c[d>>2]|0)){c[a+36>>2]=c[f>>2];j=a+40|0;c[j>>2]=(c[j>>2]|0)-(c[a+36>>2]|0);c[g>>2]=Ij(c[a+16>>2]|0,1,8,0)|0;if(c[g>>2]|0){c[b>>2]=c[g>>2];c[d>>2]=1}else c[d>>2]=0;if(!(c[d>>2]|0)){c[g>>2]=Gj(c[a+16>>2]|0,a+68|0,4)|0;if(c[g>>2]|0){c[b>>2]=c[g>>2];c[d>>2]=1}else c[d>>2]=0;if(c[d>>2]|0)break;c[g>>2]=Gj(c[a+16>>2]|0,a+120+20|0,4)|0;if(c[g>>2]|0){c[b>>2]=c[g>>2];c[d>>2]=1}else c[d>>2]=0;if(c[d>>2]|0)break;c[b>>2]=0;c[d>>2]=1}}}}}}while(0);j=c[b>>2]|0;i=h;return j|0}function ej(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l+12|0;m=l+4|0;g=l+16|0;k=l+18|0;j=l+8|0;h=l;c[m>>2]=a;b[g>>1]=d;a=c[m>>2]|0;b[k>>1]=0;do if(c[a+60>>2]|0){c[j>>2]=Ij(c[a+16>>2]|0,1,16,0)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0){m=c[f>>2]|0;i=l;return m|0}c[j>>2]=Gj(c[a+16>>2]|0,k,2)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0){m=c[f>>2]|0;i=l;return m|0}c[j>>2]=Ij(c[a+16>>2]|0,1,e[k>>1]|0,0)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0){m=c[f>>2]|0;i=l;return m|0}}else{c[a+60>>2]=e[g>>1];c[j>>2]=Gj(c[a+16>>2]|0,k,2)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0){m=c[f>>2]|0;i=l;return m|0}c[j>>2]=fj(a,b[k>>1]|0,a+84|0)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0){m=c[f>>2]|0;i=l;return m|0}c[j>>2]=Gj(c[a+16>>2]|0,k,2)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0){m=c[f>>2]|0;i=l;return m|0}c[a+84+8>>2]=e[k>>1];c[j>>2]=Gj(c[a+16>>2]|0,a+84+20|0,4)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0){m=c[f>>2]|0;i=l;return m|0}c[j>>2]=Gj(c[a+16>>2]|0,a+84+24|0,4)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0){m=c[f>>2]|0;i=l;return m|0}m=a+84+24|0;c[m>>2]=c[m>>2]<<3;c[j>>2]=Gj(c[a+16>>2]|0,k,2)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0){m=c[f>>2]|0;i=l;return m|0}c[a+84+16>>2]=e[k>>1];c[j>>2]=Gj(c[a+16>>2]|0,k,2)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0){m=c[f>>2]|0;i=l;return m|0}c[a+84+12>>2]=e[k>>1];c[j>>2]=Gj(c[a+16>>2]|0,k,2)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0){m=c[f>>2]|0;i=l;return m|0}c[a+56>>2]=e[k>>1];if((c[a+56>>2]|0)>>>0>0){if(c[a+52>>2]|0)$w(c[a+52>>2]|0);c[a+52>>2]=_w(c[a+56>>2]|0)|0;if(!(c[a+52>>2]|0)){c[f>>2]=-2147483646;c[h>>2]=1;m=c[f>>2]|0;i=l;return m|0}c[j>>2]=Gj(c[a+16>>2]|0,c[a+52>>2]|0,c[a+56>>2]|0)|0;if(c[j>>2]|0){c[f>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(!(c[h>>2]|0))break;m=c[f>>2]|0;i=l;return m|0}}while(0);c[f>>2]=0;c[h>>2]=1;m=c[f>>2]|0;i=l;return m|0}function fj(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0;h=i;i=i+16|0;j=h+8|0;g=h;c[h+4>>2]=a;b[j>>1]=d;c[g>>2]=f;switch(e[j>>1]|0|0){case 17:{c[c[g>>2]>>2]=4096;break}case 85:{c[c[g>>2]>>2]=8192;break}case 7:{c[c[g>>2]>>2]=28944;break}case 6:{c[c[g>>2]>>2]=28945;break}case 101:{c[c[g>>2]>>2]=29217;break}default:c[c[g>>2]>>2]=0}i=h;return 0}function gj(a,d,f){a=a|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;h=o+16|0;p=o+12|0;j=o+24|0;k=o+8|0;g=o+20|0;l=o;m=o+4|0;c[p>>2]=a;b[j>>1]=d;c[k>>2]=f;a=c[p>>2]|0;if(c[a+64>>2]|0){c[g>>2]=Ij(c[a+16>>2]|0,1,c[k>>2]|0,0)|0;if(c[g>>2]|0){c[h>>2]=c[g>>2];c[l>>2]=1}else c[l>>2]=0;if((c[l>>2]|0)>>>0>=1){p=c[h>>2]|0;i=o;return p|0}}else{c[g>>2]=Gj(c[a+16>>2]|0,a+120+8|0,4)|0;if(c[g>>2]|0){c[h>>2]=c[g>>2];c[l>>2]=1}else c[l>>2]=0;if((c[l>>2]|0)>>>0>=1){p=c[h>>2]|0;i=o;return p|0}c[g>>2]=Gj(c[a+16>>2]|0,a+120+12|0,4)|0;if(c[g>>2]|0){c[h>>2]=c[g>>2];c[l>>2]=1}else c[l>>2]=0;if((c[l>>2]|0)>>>0>=1){p=c[h>>2]|0;i=o;return p|0}c[g>>2]=Ij(c[a+16>>2]|0,1,19,0)|0;if(c[g>>2]|0){c[h>>2]=c[g>>2];c[l>>2]=1}else c[l>>2]=0;if((c[l>>2]|0)>>>0>=1){p=c[h>>2]|0;i=o;return p|0}c[g>>2]=0;c[m>>2]=Gj(c[a+16>>2]|0,g,4)|0;if(c[m>>2]|0){c[h>>2]=c[m>>2];c[l>>2]=1}else c[l>>2]=0;do if(!(c[l>>2]|0)){f=c[g>>2]|0;a:do if((f|0)<861293911)if((f|0)<844313677)switch(f|0){case 827739479:{n=25;break a}default:{n=26;break a}}else switch(f|0){case 844313677:{n=23;break a}default:{n=26;break a}}else{if((f|0)<875967048)switch(f|0){case 861293911:{n=25;break a}default:{n=26;break a}}if((f|0)>=1395937357)switch(f|0){case 1395937357:{n=23;break a}default:{n=26;break a}}switch(f|0){case 875967048:break;default:{n=26;break a}}c[a+120>>2]=256}while(0);if((n|0)==23)c[a+120>>2]=3;else if((n|0)==25)c[a+120>>2]=512;else if((n|0)==26)c[a+120>>2]=0;c[a+64>>2]=e[j>>1];if(c[a+120>>2]|0){c[m>>2]=Ij(c[a+16>>2]|0,1,20,0)|0;if(c[m>>2]|0){c[h>>2]=c[m>>2];c[l>>2]=1}else c[l>>2]=0;if(c[l>>2]|0)break;if((c[k>>2]|0)>>>0>51){if(c[a+44>>2]|0)$w(c[a+44>>2]|0);c[a+44>>2]=_w((c[k>>2]|0)-51|0)|0;if(!(c[a+44>>2]|0)){c[h>>2]=-2147483646;c[l>>2]=1;break}c[a+48>>2]=(c[k>>2]|0)-51;c[m>>2]=Gj(c[a+16>>2]|0,c[a+44>>2]|0,c[a+48>>2]|0)|0;if(c[m>>2]|0){c[h>>2]=c[m>>2];c[l>>2]=1}else c[l>>2]=0;if(c[l>>2]|0)break}}else{c[m>>2]=Ij(c[a+16>>2]|0,1,(c[k>>2]|0)-31|0,0)|0;if(c[m>>2]|0){c[h>>2]=c[m>>2];c[l>>2]=1}else c[l>>2]=0;if(c[l>>2]|0)break}c[l>>2]=0}while(0);if((c[l>>2]|0)>>>0>=1){p=c[h>>2]|0;i=o;return p|0}}c[h>>2]=0;p=c[h>>2]|0;i=o;return p|0}function hj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+48|0;b=k+28|0;l=k+20|0;e=k+32|0;g=k+24|0;d=k+12|0;f=k+16|0;h=k;j=k+8|0;c[l>>2]=a;a=c[l>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[g>>2]=Gj(c[a+16>>2]|0,e,16)|0;if(c[g>>2]|0){c[b>>2]=c[g>>2];c[d>>2]=1}else c[d>>2]=0;if(c[d>>2]|0){l=c[b>>2]|0;i=k;return l|0}if(!(cj(e,2316)|0)){c[b>>2]=-2147483641;c[d>>2]=1;l=c[b>>2]|0;i=k;return l|0}c[g>>2]=0;c[f>>2]=0;c[h>>2]=Gj(c[a+16>>2]|0,g,4)|0;if(c[h>>2]|0){c[b>>2]=c[h>>2];c[d>>2]=1}else c[d>>2]=0;do if(!(c[d>>2]|0)){c[h>>2]=Gj(c[a+16>>2]|0,f,4)|0;if(c[h>>2]|0){c[b>>2]=c[h>>2];c[d>>2]=1}else c[d>>2]=0;if(!(c[d>>2]|0)){if((c[g>>2]|0)>>>0<50&0==(c[f>>2]|0)){c[b>>2]=-2147483641;c[d>>2]=1;break}l=h;c[l>>2]=0;c[l+4>>2]=0;c[j>>2]=Jj(c[a+16>>2]|0,h)|0;if(c[j>>2]|0){c[b>>2]=c[j>>2];c[d>>2]=1}else c[d>>2]=0;do if(!(c[d>>2]|0)){l=h;l=Px(c[l>>2]|0,c[l+4>>2]|0,c[g>>2]|0,0)|0;l=Nx(l|0,D|0,24,0)|0;c[a+76>>2]=l;l=a+24|0;h=c[l+4>>2]|0;if(0>(h|0)|(0==(h|0)?(c[a+76>>2]|0)>>>0>(c[l>>2]|0)>>>0:0))c[a+76>>2]=c[a+24>>2];c[j>>2]=Ij(c[a+16>>2]|0,1,16,0)|0;if(c[j>>2]|0){c[b>>2]=c[j>>2];c[d>>2]=1}else c[d>>2]=0;if(!(c[d>>2]|0)){c[j>>2]=Gj(c[a+16>>2]|0,g,4)|0;if(c[j>>2]|0){c[b>>2]=c[j>>2];c[d>>2]=1}else c[d>>2]=0;if(!(c[d>>2]|0)){c[j>>2]=Gj(c[a+16>>2]|0,f,4)|0;if(c[j>>2]|0){c[b>>2]=c[j>>2];c[d>>2]=1}else c[d>>2]=0;if(!(c[d>>2]|0)){c[a+80>>2]=c[g>>2];c[j>>2]=Ij(c[a+16>>2]|0,1,2,0)|0;if(c[j>>2]|0){c[b>>2]=c[j>>2];c[d>>2]=1}else c[d>>2]=0;if(c[d>>2]|0)break;c[b>>2]=0;c[d>>2]=1}}}}while(0)}}while(0);l=c[b>>2]|0;i=k;return l|0}function ij(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+8|0;g=f+4|0;e=f+12|0;d=f;c[g>>2]=a;a=c[g>>2]|0;c[e>>2]=jj(a,0!=(c[a+64>>2]|0)?65536:4096)|0;if(c[e>>2]|0){c[b>>2]=c[e>>2];c[d>>2]=1}else c[d>>2]=0;if((c[d>>2]|0)>>>0>=1){g=c[b>>2]|0;i=f;return g|0}c[a+304>>2]=_w(c[a+68>>2]|0)|0;if(!(c[a+304>>2]|0)){c[b>>2]=-2147483646;g=c[b>>2]|0;i=f;return g|0}Ox(c[a+304>>2]|0,0,c[a+68>>2]|0)|0;if(0!=(c[a+64>>2]|0)?(g=Gx(12)|0,kj(g),c[a+328>>2]=g,0==(c[a+328>>2]|0)):0){c[b>>2]=-2147483646;g=c[b>>2]|0;i=f;return g|0}if(0!=(c[a+60>>2]|0)?(g=Gx(12)|0,kj(g),c[a+324>>2]=g,0==(c[a+324>>2]|0)):0){c[b>>2]=-2147483646;g=c[b>>2]|0;i=f;return g|0}c[b>>2]=0;g=c[b>>2]|0;i=f;return g|0}function jj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;if((c[b+312>>2]|0)>>>0<(c[e>>2]|0)>>>0){if(c[b+308>>2]|0){$w(c[b+308>>2]|0);c[b+308>>2]=0}c[b+312>>2]=c[e>>2]}do if(!(c[b+308>>2]|0)){c[b+308>>2]=_w(c[b+312>>2]|0)|0;if(c[b+308>>2]|0){Ox(c[b+308>>2]|0,0,c[b+312>>2]|0)|0;break}c[d>>2]=-2147483646;g=c[d>>2]|0;i=f;return g|0}while(0);c[d>>2]=0;g=c[d>>2]|0;i=f;return g|0}function kj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=0;c[a+8>>2]=0;c[a+4>>2]=0;i=b;return}function lj(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;d=e+4|0;c[b>>2]=a;if(!(c[b>>2]|0)){i=e;return 0}c[d>>2]=c[b>>2];mj(c[d>>2]|0)|0;i=e;return 0}function mj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=i;i=i+32|0;d=g+12|0;h=g+4|0;f=g+16|0;b=g+8|0;e=g;c[h>>2]=a;a=c[h>>2]|0;c[f>>2]=0;c[b>>2]=0;if(!(c[a+64>>2]|0))c[a+340>>2]=1;if(!(c[a+60>>2]|0))c[a+344>>2]=1;while(1){if(2==(c[a+8>>2]|0)){a=6;break}if(1==(c[a+344>>2]|0)?1==(c[a+340>>2]|0):0){La(1e4)|0;continue}if(c[a+64>>2]|0){c[f>>2]=nj(a,c[a+64>>2]&65535,b)|0;if(1==(c[f>>2]|0)){c[f>>2]=0;c[a+340>>2]=1;continue}if(c[f>>2]|0){a=20;break}h=a+348|0;c[h>>2]=(c[h>>2]|0)+1;c[a+152+8>>2]=c[a+348>>2];c[a+152+20>>2]=c[a+120+12>>2];c[a+152+16>>2]=c[a+120+8>>2];h=c[a+4>>2]|0;c[f>>2]=pb[c[(c[h>>2]|0)+28>>2]&31](h,c[a+308>>2]|0,c[b>>2]|0,a+152|0)|0;if(c[f>>2]|0){a=20;break}}if(!(c[a+60>>2]|0))continue;c[f>>2]=nj(a,c[a+60>>2]&65535,b)|0;if(1==(c[f>>2]|0)){c[f>>2]=0;c[a+344>>2]=1;continue}if(c[f>>2]|0){a=20;break}h=a+352|0;c[h>>2]=(c[h>>2]|0)+1;c[a+152+8>>2]=c[a+352>>2];c[a+152>>2]=4;h=c[a+4>>2]|0;c[f>>2]=pb[c[(c[h>>2]|0)+28>>2]&31](h,c[a+308>>2]|0,c[b>>2]|0,a+152|0)|0;if(c[f>>2]|0){a=20;break}}if((a|0)==6){c[d>>2]=-2147483642;c[e>>2]=1;h=c[d>>2]|0;i=g;return h|0}else if((a|0)==20){c[d>>2]=c[f>>2];c[e>>2]=1;h=c[d>>2]|0;i=g;return h|0}return 0}function nj(a,d,f){a=a|0;d=d|0;f=f|0;var 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,v=0,w=0,x=0,y=0;x=i;i=i+112|0;r=x+88|0;y=x+48|0;s=x+96|0;t=x+36|0;p=x+56|0;o=x+44|0;q=x+40|0;v=x+32|0;m=x+28|0;w=x+24|0;n=x+20|0;h=x+16|0;j=x+12|0;k=x+8|0;u=x;l=x+4|0;c[y>>2]=a;b[s>>1]=d;c[t>>2]=f;f=c[y>>2]|0;c[x+92>>2]=0;c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16>>2]=0;c[p+20>>2]=0;c[p+24>>2]=0;c[p+28>>2]=0;if((e[s>>1]|0|0)==(c[f+64>>2]|0))d=c[f+328>>2]|0;else d=c[f+324>>2]|0;c[o>>2]=d;if((e[s>>1]|0|0)==(c[f+64>>2]|0))d=c[f+320>>2]|0;else d=c[f+316>>2]|0;c[q>>2]=d;if((e[s>>1]|0|0)==(c[f+64>>2]|0))d=c[f+336>>2]|0;else d=c[f+332>>2]|0;c[v>>2]=d;c[m>>2]=0;c[w>>2]=0;c[n>>2]=0;c[h>>2]=1;c[j>>2]=0;c[k>>2]=0;if((c[q>>2]|0)>0?(c[q>>2]|0)>>>0>=(c[f+80>>2]|0)>>>0:0){c[r>>2]=1;c[u>>2]=1;y=c[r>>2]|0;i=x;return y|0}while(1){c[k>>2]=oj(c[o>>2]|0,p,c[v>>2]|0)|0;if(!(c[k>>2]|0))c[v>>2]=0;else{if(1==(c[h>>2]|0)?(c[p+8>>2]|0)>0:0){c[v>>2]=(c[v>>2]|0)+1;continue}if(1==(c[h>>2]|0)){c[h>>2]=0;c[m>>2]=c[p+24>>2];c[f+152>>2]=0!=(c[p+28>>2]|0)?1:2;c[f+152+12>>2]=c[m>>2];c[n>>2]=c[p+12>>2];c[w>>2]=0;c[l>>2]=jj(f,c[p+12>>2]|0)|0;if(c[l>>2]|0){c[r>>2]=c[l>>2];c[u>>2]=1}else c[u>>2]=0;if(c[u>>2]|0){d=51;break}}if((c[p+24>>2]|0)<=(c[m>>2]|0)?(c[w>>2]|0)<(c[n>>2]|0):0){y=c[p+20>>2]|0;c[l>>2]=Ij(c[f+16>>2]|0,0,y,((y|0)<0)<<31>>31)|0;if(c[l>>2]|0){c[r>>2]=c[l>>2];c[u>>2]=1}else c[u>>2]=0;if(c[u>>2]|0){d=51;break}if(((c[p+8>>2]|0)+(c[p+16>>2]|0)|0)>>>0>(c[f+312>>2]|0)>>>0){d=30;break}if((c[p+16>>2]|0)>0){c[l>>2]=Gj(c[f+16>>2]|0,(c[f+308>>2]|0)+(c[p+8>>2]|0)|0,c[p+16>>2]|0)|0;if(c[l>>2]|0){c[r>>2]=c[l>>2];c[u>>2]=1}else c[u>>2]=0;if(c[u>>2]|0){d=51;break}c[w>>2]=(c[w>>2]|0)+(c[p+16>>2]|0)}c[v>>2]=(c[v>>2]|0)+1;continue}c[j>>2]=1}if(1==(c[j>>2]|0)){d=44;break}c[q>>2]=(c[q>>2]|0)+1;if((c[q>>2]|0)>0?(c[q>>2]|0)>>>0>=(c[f+80>>2]|0)>>>0:0){d=44;break}c[l>>2]=pj(f,b[s>>1]|0,c[o>>2]|0,c[q>>2]|0)|0;if(c[l>>2]|0){c[r>>2]=c[l>>2];c[u>>2]=1}else c[u>>2]=0;if(c[u>>2]|0){d=51;break}}if((d|0)==30){c[r>>2]=-2147483641;c[u>>2]=1;y=c[r>>2]|0;i=x;return y|0}else if((d|0)==44){if((c[q>>2]|0)>>>0>=(c[f+80>>2]|0)>>>0)g[f+152+60>>2]=+(((c[f+40>>2]|0)-(c[f+152+12>>2]|0)|0)>>>0);else g[f+152+60>>2]=+(((c[p+24>>2]|0)-(c[f+152+12>>2]|0)|0)>>>0);d=c[q>>2]|0;if((e[s>>1]|0|0)==(c[f+64>>2]|0)){c[f+320>>2]=d;c[f+336>>2]=c[v>>2]}else{c[f+316>>2]=d;c[f+332>>2]=c[v>>2]}c[c[t>>2]>>2]=c[w>>2];c[r>>2]=0;c[u>>2]=1;y=c[r>>2]|0;i=x;return y|0}else if((d|0)==51){y=c[r>>2]|0;i=x;return y|0}return 0}function oj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;b=c[j>>2]|0;if((c[g>>2]|0)<0?1:(c[g>>2]|0)>=(c[b+4>>2]|0)){c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}else{j=c[f>>2]|0;g=(c[b>>2]|0)+(c[g>>2]<<5)|0;c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];c[j+16>>2]=c[g+16>>2];c[j+20>>2]=c[g+20>>2];c[j+24>>2]=c[g+24>>2];c[j+28>>2]=c[g+28>>2];c[e>>2]=1;j=c[e>>2]|0;i=h;return j|0}return 0}
function pj(f,g,h,j){f=f|0;g=g|0;h=h|0;j=j|0;var 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;U=i;i=i+192|0;k=U+172|0;W=U+164|0;l=U+176|0;V=U+152|0;m=U+144|0;x=U;y=U+168|0;Q=U+160|0;R=U+156|0;n=U+140|0;A=U+148|0;w=U+185|0;t=U+184|0;s=U+183|0;v=U+182|0;r=U+181|0;p=U+180|0;H=U+136|0;q=U+179|0;u=U+178|0;D=U+132|0;M=U+128|0;o=U+124|0;F=U+120|0;L=U+116|0;E=U+112|0;J=U+108|0;P=U+104|0;K=U+100|0;I=U+96|0;G=U+64|0;O=U+60|0;N=U+56|0;S=U+52|0;C=U+48|0;z=U+16|0;B=U+8|0;c[W>>2]=f;b[l>>1]=g;c[V>>2]=h;c[m>>2]=j;j=c[W>>2]|0;g=x;c[g>>2]=0;c[g+4>>2]=0;c[y>>2]=0;c[Q>>2]=0;c[R>>2]=c[V>>2];if((c[m>>2]|0)>0?(c[m>>2]|0)>>>0>=(c[j+80>>2]|0)>>>0:0){c[k>>2]=1;c[n>>2]=1;W=c[k>>2]|0;i=U;return W|0}c[y>>2]=(c[j+72>>2]|0)+($(c[j+68>>2]|0,c[m>>2]|0)|0);c[A>>2]=Jj(c[j+16>>2]|0,x)|0;if(c[A>>2]|0){c[k>>2]=c[A>>2];c[n>>2]=1}else c[n>>2]=0;if(c[n>>2]|0){W=c[k>>2]|0;i=U;return W|0}W=x;if(c[W+4>>2]|0?1:(c[W>>2]|0)!=(c[y>>2]|0)){c[A>>2]=Ij(c[j+16>>2]|0,0,c[y>>2]|0,0)|0;if(c[A>>2]|0){c[k>>2]=c[A>>2];c[n>>2]=1}else c[n>>2]=0;if(c[n>>2]|0){W=c[k>>2]|0;i=U;return W|0}}c[A>>2]=Gj(c[j+16>>2]|0,c[j+304>>2]|0,c[j+68>>2]|0)|0;if(c[A>>2]|0){c[k>>2]=c[A>>2];c[n>>2]=1}else c[n>>2]=0;if(c[n>>2]|0){W=c[k>>2]|0;i=U;return W|0}c[Q>>2]=c[j+304>>2];if((d[c[Q>>2]>>0]|0)&128|0)c[Q>>2]=(c[Q>>2]|0)+(((d[c[Q>>2]>>0]|0)&15)+1);a[A>>0]=(d[c[Q>>2]>>0]|0)&1;a[w>>0]=((d[c[Q>>2]>>0]|0)&6)>>1;a[t>>0]=((d[c[Q>>2]>>0]|0)&24)>>3;a[s>>0]=((d[c[Q>>2]>>0]|0)&96)>>5;c[Q>>2]=(c[Q>>2]|0)+1;a[v>>0]=(d[c[Q>>2]>>0]|0)&3;a[r>>0]=((d[c[Q>>2]>>0]|0)&12)>>2;a[p>>0]=((d[c[Q>>2]>>0]|0)&48)>>4;c[Q>>2]=(c[Q>>2]|0)+1;c[Q>>2]=(c[Q>>2]|0)+((1<<(d[s>>0]|0)|0)/2|0);c[Q>>2]=(c[Q>>2]|0)+((1<<(d[w>>0]|0)|0)/2|0);if((c[Q>>2]|0)>>>0<=((c[j+304>>2]|0)+(c[j+68>>2]|0)|0)>>>0?(c[Q>>2]|0)>>>0>=(c[j+304>>2]|0)>>>0:0){c[H>>2]=0;qj(c[Q>>2]|0,H,a[t>>0]|0)|0;c[Q>>2]=(c[Q>>2]|0)+((1<<(d[t>>0]|0)|0)/2|0);c[Q>>2]=(c[Q>>2]|0)+6;if((c[Q>>2]|0)>>>0<=((c[j+304>>2]|0)+(c[j+68>>2]|0)|0)>>>0?(c[Q>>2]|0)>>>0>=(c[j+304>>2]|0)>>>0:0){a[q>>0]=1;a[u>>0]=0;if(1==(d[A>>0]|0|0)){a[q>>0]=(d[c[Q>>2]>>0]|0)&63;a[u>>0]=((d[c[Q>>2]>>0]|0)&192)>>6;c[Q>>2]=(c[Q>>2]|0)+1}c[D>>2]=0;rj(c[R>>2]|0);do{if((d[q>>0]|0|0)<=0){T=89;break}if((c[Q>>2]|0)>>>0>((c[j+304>>2]|0)+(c[j+68>>2]|0)|0)>>>0){T=30;break}if((c[Q>>2]|0)>>>0<(c[j+304>>2]|0)>>>0){T=30;break}c[M>>2]=(d[c[Q>>2]>>0]|0)&127;do if((c[M>>2]|0)!=(e[l>>1]|0|0)){if(d[A>>0]|0|0){T=34;break}c[k>>2]=0;c[n>>2]=1}else T=34;while(0);if((T|0)==34){T=0;c[o>>2]=(d[c[Q>>2]>>0]|0)&128;c[Q>>2]=(c[Q>>2]|0)+1;do if((c[Q>>2]|0)>>>0<=((c[j+304>>2]|0)+(c[j+68>>2]|0)|0)>>>0){if((c[Q>>2]|0)>>>0<(c[j+304>>2]|0)>>>0){T=36;break}qj(c[Q>>2]|0,D,a[p>>0]|0)|0;c[Q>>2]=(c[Q>>2]|0)+((1<<(d[p>>0]|0)|0)/2|0);c[F>>2]=0;do if((c[Q>>2]|0)>>>0<=((c[j+304>>2]|0)+(c[j+68>>2]|0)|0)>>>0){if((c[Q>>2]|0)>>>0<(c[j+304>>2]|0)>>>0){T=39;break}qj(c[Q>>2]|0,F,a[r>>0]|0)|0;c[Q>>2]=(c[Q>>2]|0)+((1<<(d[r>>0]|0)|0)/2|0);c[L>>2]=0;do if((c[Q>>2]|0)>>>0<=((c[j+304>>2]|0)+(c[j+68>>2]|0)|0)>>>0){if((c[Q>>2]|0)>>>0<(c[j+304>>2]|0)>>>0){T=42;break}qj(c[Q>>2]|0,L,a[v>>0]|0)|0;c[Q>>2]=(c[Q>>2]|0)+((1<<(d[v>>0]|0)|0)/2|0);c[E>>2]=0;c[J>>2]=0;c[P>>2]=0;c[K>>2]=0;a:do if((c[L>>2]|0)==1){c[P>>2]=c[F>>2];qj(c[Q>>2]|0,K,1)|0;c[Q>>2]=(c[Q>>2]|0)+1;T=54}else{if(!(c[L>>2]|0)){T=54;break}if((c[L>>2]|0)<8){c[k>>2]=-2147483641;c[n>>2]=1;break}do if((c[Q>>2]|0)>>>0<=((c[j+304>>2]|0)+(c[j+68>>2]|0)|0)>>>0){if((c[Q>>2]|0)>>>0<(c[j+304>>2]|0)>>>0)break;qj(c[Q>>2]|0,E,3)|0;qj((c[Q>>2]|0)+4|0,J,3)|0;if((c[J>>2]|0)>0?(c[J>>2]|0)>>>0<(c[j+36>>2]|0)>>>0:0)c[j+36>>2]=c[J>>2];c[Q>>2]=(c[Q>>2]|0)+(c[L>>2]|0);T=54;break a}while(0);c[k>>2]=-2147483641;c[n>>2]=1}while(0);if((T|0)==54){T=0;c[I>>2]=0;b:do if((d[A>>0]|0|0)==1){do if((c[Q>>2]|0)>>>0<=((c[j+304>>2]|0)+(c[j+68>>2]|0)|0)>>>0){if((c[Q>>2]|0)>>>0<(c[j+304>>2]|0)>>>0)break;qj(c[Q>>2]|0,I,a[u>>0]|0)|0;c[Q>>2]=(c[Q>>2]|0)+((1<<(d[u>>0]|0)|0)/2|0);T=60;break b}while(0);c[k>>2]=-2147483641;c[n>>2]=1}else{c[I>>2]=(c[j+68>>2]|0)-((c[Q>>2]|0)-(c[j+304>>2]|0))-(c[H>>2]|0);T=60}while(0);do if((T|0)==60){T=0;if((c[L>>2]|0)==1){c[G>>2]=c[I>>2];c[O>>2]=0;c[N>>2]=0;c[S>>2]=0;c[C>>2]=0;c[S>>2]=c[Q>>2];while(1){if((c[O>>2]|0)>=(c[G>>2]|0)){T=72;break}qj(c[Q>>2]|0,N,1)|0;c[Q>>2]=(c[Q>>2]|0)+1;if((c[M>>2]|0)!=(e[l>>1]|0|0)){T=70;break};c[z>>2]=0;c[z+4>>2]=0;c[z+8>>2]=0;c[z+12>>2]=0;c[z+16>>2]=0;c[z+20>>2]=0;c[z+24>>2]=0;c[z+28>>2]=0;c[z+4>>2]=c[D>>2];c[z+8>>2]=0;c[z+12>>2]=c[N>>2];c[z+20>>2]=(c[Q>>2]|0)-(c[j+304>>2]|0)+(c[y>>2]|0);c[z+16>>2]=c[N>>2];c[z>>2]=c[M>>2];W=(c[P>>2]|0)+($(c[C>>2]|0,c[K>>2]|0)|0)|0;c[z+24>>2]=W-(c[j+36>>2]|0);c[z+28>>2]=c[o>>2];c[B>>2]=sj(c[R>>2]|0,z)|0;if(c[B>>2]|0){c[k>>2]=c[B>>2];c[n>>2]=1}else c[n>>2]=0;if(!(c[n>>2]|0))c[n>>2]=0;if(c[n>>2]|0)break;c[C>>2]=(c[C>>2]|0)+1;c[Q>>2]=(c[Q>>2]|0)+(c[N>>2]|0);c[O>>2]=(c[O>>2]|0)+((c[N>>2]|0)+1)}if((T|0)==70){c[Q>>2]=(c[S>>2]|0)+(c[G>>2]|0);T=72}if((T|0)==72){T=0;c[n>>2]=0}if(c[n>>2]|0)break}else{if((c[M>>2]|0)==(e[l>>1]|0|0)){c[G>>2]=0;c[G+4>>2]=0;c[G+8>>2]=0;c[G+12>>2]=0;c[G+16>>2]=0;c[G+20>>2]=0;c[G+24>>2]=0;c[G+28>>2]=0;c[G+4>>2]=c[D>>2];c[G+8>>2]=c[F>>2];c[G+12>>2]=c[E>>2];c[G+20>>2]=(c[Q>>2]|0)-(c[j+304>>2]|0)+(c[y>>2]|0);c[G+16>>2]=c[I>>2];c[G>>2]=c[M>>2];c[G+24>>2]=(c[J>>2]|0)-(c[j+36>>2]|0);c[G+28>>2]=c[o>>2];c[O>>2]=sj(c[R>>2]|0,G)|0;if(c[O>>2]|0){c[k>>2]=c[O>>2];c[n>>2]=1}else c[n>>2]=0;if(!(c[n>>2]|0))c[n>>2]=0;if(c[n>>2]|0)break}c[Q>>2]=(c[Q>>2]|0)+(c[I>>2]|0)}a[q>>0]=(a[q>>0]|0)+-1<<24>>24;c[n>>2]=0}while(0)}}else T=42;while(0);if((T|0)==42){T=0;c[k>>2]=-2147483641;c[n>>2]=1}}else T=39;while(0);if((T|0)==39){T=0;c[k>>2]=-2147483641;c[n>>2]=1}}else T=36;while(0);if((T|0)==36){T=0;c[k>>2]=-2147483641;c[n>>2]=1}}}while(!(c[n>>2]|0));if((T|0)==30){c[k>>2]=-2147483641;c[n>>2]=1}else if((T|0)==89){c[k>>2]=0;c[n>>2]=1}}else{c[k>>2]=-2147483641;c[n>>2]=1}}else{c[k>>2]=-2147483641;c[n>>2]=1}W=c[k>>2]|0;i=U;return W|0}function qj(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;l=k+12|0;c[h>>2]=b;c[j>>2]=e;a[l>>0]=f;c[c[j>>2]>>2]=0;switch(d[l>>0]|0|0){case 0:break;case 1:{c[c[j>>2]>>2]=d[c[h>>2]>>0];break}case 2:{c[c[j>>2]>>2]=d[c[h>>2]>>0]|0|(d[(c[h>>2]|0)+1>>0]|0)<<8;break}case 3:{c[c[j>>2]>>2]=d[c[h>>2]>>0]|0|(d[(c[h>>2]|0)+1>>0]|0)<<8|(d[(c[h>>2]|0)+2>>0]|0)<<16|(d[(c[h>>2]|0)+3>>0]|0)<<24;break}default:{c[g>>2]=-2147483645;l=c[g>>2]|0;i=k;return l|0}}c[g>>2]=0;l=c[g>>2]|0;i=k;return l|0}function rj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[(c[d>>2]|0)+4>>2]=0;i=b;return}function sj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+12|0;j=h+8|0;e=h+4|0;g=h+16|0;f=h;c[j>>2]=a;c[e>>2]=b;b=c[j>>2]|0;a=b+8|0;do if(c[b>>2]|0){if((c[a>>2]|0)<=(c[b+4>>2]|0)){c[g>>2]=0;j=b+8|0;c[j>>2]=(c[j>>2]|0)+5;c[g>>2]=_w(c[b+8>>2]<<5)|0;if(!(c[g>>2]|0)){c[d>>2]=-2147483646;c[f>>2]=1}else{Tx(c[g>>2]|0,c[b>>2]|0,c[b+4>>2]<<5|0)|0;Ox((c[g>>2]|0)+(c[b+4>>2]<<5)|0,0,(c[b+8>>2]|0)-(c[b+4>>2]|0)<<5|0)|0;$w(c[b>>2]|0);c[b>>2]=c[g>>2];c[f>>2]=0}if((c[f>>2]|0)>>>0>=1){j=c[d>>2]|0;i=h;return j|0}}}else{c[a>>2]=5;c[b>>2]=_w(c[b+8>>2]<<5)|0;if(c[b>>2]|0){Ox(c[b>>2]|0,0,c[b+8>>2]<<5|0)|0;break}c[d>>2]=-2147483646;j=c[d>>2]|0;i=h;return j|0}while(0);j=(c[b>>2]|0)+(c[b+4>>2]<<5)|0;g=c[e>>2]|0;c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];c[j+16>>2]=c[g+16>>2];c[j+20>>2]=c[g+20>>2];c[j+24>>2]=c[g+24>>2];c[j+28>>2]=c[g+28>>2];j=b+4|0;c[j>>2]=(c[j>>2]|0)+1;c[d>>2]=0;j=c[d>>2]|0;i=h;return j|0}function tj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+8>>2]=2;if(c[a+12>>2]|0){Lh(c[a+12>>2]|0)|0;Mh(c[a+12>>2]|0)|0;c[a+12>>2]=0}uj(a)|0;if(c[a+52>>2]|0){$w(c[a+52>>2]|0);c[a+52>>2]=0}if(c[a+44>>2]|0){$w(c[a+44>>2]|0);c[a+44>>2]=0}if(!(c[a+16>>2]|0)){d=wj(a)|0;i=b;return d|0}Eh(c[a+16>>2]|0)|0;c[a+16>>2]=0;d=wj(a)|0;i=b;return d|0}function uj(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;b=c[b>>2]|0;if(c[b+324>>2]|0){a=c[b+324>>2]|0;if(a|0){vj(a);lx(a)}c[b+324>>2]=0}if(c[b+328>>2]|0){a=c[b+328>>2]|0;if(a|0){vj(a);lx(a)}c[b+328>>2]=0}if(c[b+304>>2]|0){$w(c[b+304>>2]|0);c[b+304>>2]=0}if(!(c[b+308>>2]|0)){i=d;return 0}$w(c[b+308>>2]|0);c[b+308>>2]=0;i=d;return 0}function vj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;if(!(c[a>>2]|0)){i=b;return}$w(c[a>>2]|0);c[a>>2]=0;i=b;return}function wj(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;a=c[b>>2]|0;b=a+24|0;c[b>>2]=0;c[b+4>>2]=0;c[a+32>>2]=0;c[a+36>>2]=0;c[a+40>>2]=0;c[a+68>>2]=0;c[a+72>>2]=0;c[a+76>>2]=0;c[a+80>>2]=0;c[a+60>>2]=0;c[a+64>>2]=0;b=a+84|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));d=a+120|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;c[d+28>>2]=0;Ox(a+152|0,0,152)|0;c[a+312>>2]=0;c[a+316>>2]=-1;c[a+320>>2]=-1;c[a+332>>2]=0;c[a+336>>2]=0;c[a+340>>2]=0;c[a+344>>2]=0;c[a+348>>2]=0;c[a+352>>2]=0;i=e;return 0}function xj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=i;i=i+16|0;c[f+12>>2]=a;c[f+8>>2]=b;c[f+4>>2]=d;c[f>>2]=e;i=f;return 0}function yj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+8>>2]=c[f>>2];i=d;return 0}function zj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;do if(c[e>>2]|0)if(2==(c[b+8>>2]|0)){c[d>>2]=-2147483642;break}else{c[c[e>>2]>>2]=-1;c[d>>2]=-2147483647;break}else c[d>>2]=-2147483645;while(0);i=f;return c[d>>2]|0}function Aj(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return -2147483647}function Bj(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return -2147483647}function Cj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=i;i=i+16|0;c[f+12>>2]=a;c[f+8>>2]=b;c[f+4>>2]=d;c[f>>2]=e;i=f;return -2147483647}function Dj(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;a=c[b>>2]|0;Ej(a);c[a>>2]=2212;c[a+4>>2]=0;c[a+8>>2]=2;c[a+12>>2]=0;b=a+24|0;c[b>>2]=0;c[b+4>>2]=0;c[a+16>>2]=0;c[a+32>>2]=0;c[a+36>>2]=0;c[a+40>>2]=0;c[a+44>>2]=0;c[a+48>>2]=0;c[a+52>>2]=0;c[a+56>>2]=0;c[a+68>>2]=0;c[a+72>>2]=0;c[a+76>>2]=0;c[a+80>>2]=0;c[a+60>>2]=0;c[a+64>>2]=0;b=a+84|0;d=b+36|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));d=a+120|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;c[d+28>>2]=0;Ox(a+152|0,0,152)|0;c[a+304>>2]=0;c[a+308>>2]=0;c[a+312>>2]=0;c[a+316>>2]=-1;c[a+320>>2]=-1;c[a+324>>2]=0;c[a+328>>2]=0;c[a+332>>2]=0;c[a+336>>2]=0;c[a+340>>2]=0;c[a+344>>2]=0;c[a+348>>2]=0;c[a+352>>2]=0;i=e;return}function Ej(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[c[d>>2]>>2]=2340;i=b;return}function Fj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;Vi(a);lx(a);i=b;return}function Gj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+16|0;f=l+12|0;g=l+8|0;h=l+4|0;k=l+20|0;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(0==(c[f>>2]|0)|0==(c[g>>2]|0)){c[e>>2]=-2147483645;b=c[e>>2]|0;i=l;return b|0}if(!(c[h>>2]|0)){c[e>>2]=0;b=c[e>>2]|0;i=l;return b|0}c[k>>2]=0;c[k>>2]=Ah(c[f>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;if((c[h>>2]|0)!=(c[k>>2]|0)){c[e>>2]=-2147483641;c[j>>2]=1}else{c[e>>2]=0;c[j>>2]=1}b=c[e>>2]|0;i=l;return b|0}function Hj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+16|0;f=l+12|0;g=l+8|0;h=l+4|0;k=l+20|0;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(0==(c[f>>2]|0)|0==(c[g>>2]|0)){c[e>>2]=-2147483645;b=c[e>>2]|0;i=l;return b|0}if(!(c[h>>2]|0)){c[e>>2]=0;b=c[e>>2]|0;i=l;return b|0}c[k>>2]=0;c[k>>2]=Bh(c[f>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;if((c[h>>2]|0)==(c[k>>2]|0)){c[e>>2]=0;c[j>>2]=1}else{c[e>>2]=-2147483641;c[j>>2]=1}b=c[e>>2]|0;i=l;return b|0}function Ij(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;f=m+28|0;g=m+24|0;h=m+20|0;j=m;l=m+8|0;k=m+16|0;c[g>>2]=a;c[h>>2]=b;b=j;c[b>>2]=d;c[b+4>>2]=e;if(!(c[g>>2]|0)){c[f>>2]=-2147483645;l=c[f>>2]|0;i=m;return l|0}a=j;a=Ch(c[g>>2]|0,c[a>>2]|0,c[a+4>>2]|0,c[h>>2]|0)|0;b=l;c[b>>2]=a;c[b+4>>2]=D;if((c[l+4>>2]|0)<0){c[f>>2]=-2147483641;c[k>>2]=1}else{c[f>>2]=0;c[k>>2]=1}l=c[f>>2]|0;i=m;return l|0}function Jj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+20|0;e=j+16|0;f=j+12|0;h=j;g=j+8|0;c[e>>2]=a;c[f>>2]=b;if(0==(c[e>>2]|0)|0==(c[f>>2]|0)){c[d>>2]=-2147483645;b=c[d>>2]|0;i=j;return b|0}a=Ch(c[e>>2]|0,0,0,1)|0;b=h;c[b>>2]=a;c[b+4>>2]=D;if((c[h+4>>2]|0)<0){c[d>>2]=-2147483641;c[g>>2]=1}else{a=h;h=c[a+4>>2]|0;b=c[f>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=h;c[d>>2]=0;c[g>>2]=1}b=c[d>>2]|0;i=j;return b|0}function Kj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=2404;nb[c[(c[a>>2]|0)+28>>2]&127](a)|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;Vi(a);i=b;return}function Lj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;Kj(a);lx(a);i=b;return}function Mj(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[a+164>>2]=Ix(2097152)|0;if(!(c[a+164>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}c[a+184>>2]=Ix(2097152)|0;if(!(c[a+184>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}c[a+224>>2]=Ix(2097152)|0;if(!(c[a+224>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}else{c[b>>2]=0;i=d;return c[b>>2]|0}return 0}function Nj(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;b=c[b>>2]|0;if(c[b+164>>2]|0){a=c[b+164>>2]|0;if(a|0)Jx(a);c[b+164>>2]=0}if(c[b+184>>2]|0){a=c[b+184>>2]|0;if(a|0)Jx(a);c[b+184>>2]=0}if(!(c[b+224>>2]|0)){i=d;return 0}a=c[b+224>>2]|0;if(a|0)Jx(a);c[b+224>>2]=0;i=d;return 0}function Oj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+4>>2]=c[f>>2];i=d;return 0}function Pj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;i=i+16|0;c[e+8>>2]=a;c[e+4>>2]=b;c[e>>2]=d;i=e;return 0}function Qj(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return -2147483647}function Rj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+8>>2]=2;a=Sj(a)|0;i=b;return a|0}function Sj(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+168>>2]=0;c[a+172>>2]=0;c[a+188>>2]=0;c[a+192>>2]=0;c[a+196>>2]=0;c[a+200>>2]=0;c[a+204>>2]=0;c[a+208>>2]=0;g[a+212>>2]=40.0;c[a+216>>2]=0;i=b;return 0}function Tj(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l+16|0;m=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;e=c[m>>2]|0;if((c[e+8>>2]|0)==2){c[f>>2]=-2147483642;m=c[f>>2]|0;i=l;return m|0}switch(c[h>>2]|0){case 0:if(((c[e+172>>2]|0)+(c[k>>2]|0)|0)>>>0>2097152){c[f>>2]=-2147483643;m=c[f>>2]|0;i=l;return m|0}else{Tx((c[e+164>>2]|0)+(c[e+172>>2]|0)|0,c[j>>2]|0,c[k>>2]|0)|0;m=e+172|0;c[m>>2]=(c[m>>2]|0)+(c[k>>2]|0);c[f>>2]=Uj(e)|0;m=c[f>>2]|0;i=l;return m|0}case 2:{c[e+12>>2]=4;c[e+12+12>>2]=c[e+176>>2];g[e+12+60>>2]=40.0;m=e+176|0;c[m>>2]=(c[m>>2]|0)+40;m=c[e+4>>2]|0;pb[c[(c[m>>2]|0)+28>>2]&31](m,c[j>>2]|0,c[k>>2]|0,e+12|0)|0;break}default:{}}c[f>>2]=0;m=c[f>>2]|0;i=l;return m|0}function Uj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;d=h+8|0;j=h+4|0;f=h+12|0;e=h;c[j>>2]=b;b=c[j>>2]|0;if(!(c[b+192>>2]|0)){c[f>>2]=Vj(b,(c[b+164>>2]|0)+(c[b+168>>2]|0)|0,(c[b+172>>2]|0)-(c[b+168>>2]|0)|0)|0;if(-1==(c[f>>2]|0)){c[d>>2]=0;c[e>>2]=1}else{c[b+228>>2]=c[b+232>>2];j=b+168|0;c[j>>2]=(c[j>>2]|0)+(c[f>>2]|0);c[b+192>>2]=1;c[e>>2]=0}if((c[e>>2]|0)>>>0>=1){j=c[d>>2]|0;i=h;return j|0}}while(1){if((c[b+8>>2]|0)==2)break;c[f>>2]=Wj(b,(c[b+164>>2]|0)+(c[b+168>>2]|0)|0,(c[b+172>>2]|0)-(c[b+168>>2]|0)|0)|0;if((c[f>>2]|0)==-1){c[d>>2]=Xj(b)|0;c[e>>2]=1}else{if((c[b+228>>2]|0)==1)Yj(b,(c[b+164>>2]|0)+(c[b+168>>2]|0)|0,(c[b+172>>2]|0)-(c[b+168>>2]|0)-(c[f>>2]|0)|0)|0;else{a[c[b+224>>2]>>0]=0;Tx((c[b+224>>2]|0)+1|0,(c[b+164>>2]|0)+(c[b+168>>2]|0)|0,(c[b+172>>2]|0)-(c[b+168>>2]|0)-(c[f>>2]|0)|0)|0;Yj(b,c[b+224>>2]|0,(c[b+172>>2]|0)-(c[b+168>>2]|0)-(c[f>>2]|0)+1|0)|0}j=b+168|0;c[j>>2]=(c[j>>2]|0)+((c[b+172>>2]|0)-(c[b+168>>2]|0)-(c[f>>2]|0));c[b+228>>2]=c[b+232>>2];c[e>>2]=0}if((c[e>>2]|0)>>>0>=1){g=15;break}}if((g|0)==15){j=c[d>>2]|0;i=h;return j|0}c[d>>2]=-2147483642;j=c[d>>2]|0;i=h;return j|0}function Vj(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;f=n+20|0;o=n+12|0;g=n+8|0;h=n+4|0;l=n+24|0;j=n;k=n+16|0;c[o>>2]=a;c[g>>2]=b;c[h>>2]=e;e=c[o>>2]|0;if((c[h>>2]|0)>>>0<5){c[f>>2]=-1;o=c[f>>2]|0;i=n;return o|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=((c[h>>2]|0)-4|0)>>>0){m=5;break}if(((0==(d[(c[g>>2]|0)+(c[l>>2]|0)>>0]|0|0)?0==(d[(c[g>>2]|0)+((c[l>>2]|0)+1)>>0]|0|0):0)?0==(d[(c[g>>2]|0)+((c[l>>2]|0)+2)>>0]|0|0):0)?1==(d[(c[g>>2]|0)+((c[l>>2]|0)+3)>>0]|0|0):0){c[k>>2]=(d[(c[g>>2]|0)+((c[l>>2]|0)+4)>>0]|0)&31;if((c[k>>2]|0)==1|(c[k>>2]|0)==5|(c[k>>2]|0)==6|(c[k>>2]|0)==7|(c[k>>2]|0)==8|(c[k>>2]|0)==9){c[e+232>>2]=1;c[f>>2]=c[l>>2];c[j>>2]=1}else c[j>>2]=0;if(c[j>>2]|0)break}if(((d[(c[g>>2]|0)+(c[l>>2]|0)>>0]|0|0)==0?(d[(c[g>>2]|0)+(c[l>>2]|0)+1>>0]|0|0)==0:0)?(d[(c[g>>2]|0)+(c[l>>2]|0)+2>>0]|0|0)==1:0){c[k>>2]=(d[(c[g>>2]|0)+((c[l>>2]|0)+3)>>0]|0)&31;if((c[k>>2]|0)==1|(c[k>>2]|0)==5|(c[k>>2]|0)==6|(c[k>>2]|0)==7|(c[k>>2]|0)==8|(c[k>>2]|0)==9){c[e+232>>2]=0;c[f>>2]=c[l>>2];c[j>>2]=1}else c[j>>2]=0;if(c[j>>2]|0)break}c[l>>2]=(c[l>>2]|0)+1}if((m|0)==5)c[j>>2]=2;if(((c[j>>2]|0)+-2|0)>>>0>=1){o=c[f>>2]|0;i=n;return o|0}c[f>>2]=-1;o=c[f>>2]|0;i=n;return o|0}function Wj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;e=k+16|0;l=k+12|0;f=k+8|0;g=k+4|0;j=k+20|0;h=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[l>>2]|0;if((c[g>>2]|0)>>>0<5){c[e>>2]=-1;l=c[e>>2]|0;i=k;return l|0}c[j>>2]=Vj(d,(c[f>>2]|0)+4|0,(c[g>>2]|0)-4|0)|0;if((c[j>>2]|0)==-1){c[e>>2]=-1;c[h>>2]=1}else{c[f>>2]=(c[f>>2]|0)+(4+(c[j>>2]|0));c[g>>2]=(c[g>>2]|0)-(4+(c[j>>2]|0));c[e>>2]=c[g>>2];c[h>>2]=1}l=c[e>>2]|0;i=k;return l|0}function Xj(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;if(!(c[a+168>>2]|0)){c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}if((c[a+172>>2]|0)>>>0>(c[a+168>>2]|0)>>>0)Ux(c[a+164>>2]|0,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0)|0;c[a+172>>2]=(c[a+172>>2]|0)-(c[a+168>>2]|0);c[a+168>>2]=0;c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}function Yj(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+64|0;e=n+48|0;o=n+40|0;f=n+8|0;h=n+4|0;k=n+52|0;l=n+44|0;m=n+12|0;j=n;c[o>>2]=a;c[f>>2]=b;c[h>>2]=d;d=c[o>>2]|0;c[k>>2]=0;c[l>>2]=-1;a:do switch(Zp(c[f>>2]|0,c[h>>2]|0)|0){case 5:{c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[m+20>>2]=0;c[m+24>>2]=0;if(1==(cq(c[f>>2]|0,c[h>>2]|0,m)|0)){c[d+12+16>>2]=c[m>>2];c[d+12+20>>2]=c[m+4>>2];c[d+12+24>>2]=c[m+12>>2];do if(!(+O(+(+g[m+20>>2]-0.0))<9.999999747378752e-06))if(+g[m+20>>2]>1.0e3){g[d+212>>2]=40.0;break}else{g[d+212>>2]=1.0e3/+g[m+20>>2];break}else g[d+212>>2]=40.0;while(0);c[d+200>>2]=c[m+12>>2];c[d+196>>2]=(c[m+24>>2]|0)+4;c[d+204>>2]=1}c[k>>2]=1;break}case 6:{c[k>>2]=1;break}case 1:case 2:case 3:if(c[d+204>>2]|0){c[l>>2]=wq(c[f>>2]|0,c[h>>2]|0,4)|0;if(!(Zj(d,c[f>>2]|0,c[h>>2]|0)|0))break a;c[k>>2]=1;break a}else{c[d+188>>2]=0;c[e>>2]=0;c[j>>2]=1;o=c[e>>2]|0;i=n;return o|0}default:{}}while(0);if(c[k>>2]|0?c[d+208>>2]|0:0){ek(d);c[d+12+12>>2]=c[d+180>>2];c[d+12>>2]=c[d+220>>2];g[d+12+60>>2]=+g[d+212>>2];o=d+180|0;c[o>>2]=~~(+((c[o>>2]|0)>>>0)+ +g[d+212>>2])>>>0;c[d+12+8>>2]=c[d+216>>2];o=d+216|0;c[o>>2]=(c[o>>2]|0)+1;if(1==(c[d+12>>2]|0))fk(d)|0;o=c[d+4>>2]|0;pb[c[(c[o>>2]|0)+28>>2]&31](o,c[d+184>>2]|0,c[d+188>>2]|0,d+12|0)|0;c[d+208>>2]=0;c[d+188>>2]=0}gk(d,c[f>>2]|0,c[h>>2]|0)|0;switch(c[l>>2]|0){case 7:case 2:{if(!(c[d+208>>2]|0))c[d+220>>2]=1;c[d+208>>2]=1;break}case 5:case 0:{if(!(c[d+208>>2]|0))c[d+220>>2]=2;c[d+208>>2]=1;break}case 6:case 1:{if(!(c[d+208>>2]|0))c[d+220>>2]=3;c[d+208>>2]=1;break}default:{}}c[e>>2]=0;c[j>>2]=1;o=c[e>>2]|0;i=n;return o|0}function Zj(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;g=o+24|0;p=o+16|0;h=o+8|0;l=o+28|0;k=o+20|0;m=o+12|0;j=o;c[p>>2]=a;c[h>>2]=e;c[o+4>>2]=f;f=c[p>>2]|0;b[l>>1]=0;c[k>>2]=0;c[m>>2]=0;b[l>>1]=(d[(c[h>>2]|0)+4>>0]|0)+(d[(c[h>>2]|0)+5>>0]<<8);if(!((b[l>>1]&31|0)!=1?(b[l>>1]&31|0)!=5:0))n=3;if((n|0)==3?b[l>>1]&32768|0:0){if(!(c[f+200>>2]|0)){c[g>>2]=1;c[j>>2]=1;p=c[g>>2]|0;i=o;return p|0}_j((c[h>>2]|0)+5|0,c[f+196>>2]|0,((c[f+200>>2]|0)!=0^1)&1,k,m)|0;if(c[k>>2]|0){c[g>>2]=1;c[j>>2]=1;p=c[g>>2]|0;i=o;return p|0}}c[g>>2]=0;c[j>>2]=1;p=c[g>>2]|0;i=o;return p|0}function _j(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=i;i=i+32|0;g=l+24|0;o=l+16|0;m=l+8|0;h=l+4|0;n=l;p=l+28|0;k=l+20|0;j=l+12|0;c[g>>2]=a;c[o>>2]=b;c[m>>2]=d;c[h>>2]=e;c[n>>2]=f;c[k>>2]=0;c[j>>2]=0;c[k>>2]=(c[k>>2]|0)+1;c[p>>2]=$j(c[g>>2]|0,k)|0;c[p>>2]=$j(c[g>>2]|0,k)|0;b=ck(c[g>>2]|0,k,c[o>>2]|0)|0;c[c[n>>2]>>2]=b;if(c[m>>2]|0){p=c[j>>2]|0;i=l;return p|0}c[j>>2]=dk(c[g>>2]|0,k)|0;if(!(c[j>>2]|0)){p=c[j>>2]|0;i=l;return p|0}p=((dk(c[g>>2]|0,k)|0)!=0^1)&1;c[c[h>>2]>>2]=p;p=c[j>>2]|0;i=l;return p|0}function $j(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;g=i;i=i+32|0;k=g+12|0;h=g+4|0;f=g+16|0;e=g+8|0;j=g;c[k>>2]=a;c[h>>2]=b;c[j>>2]=(c[k>>2]|0)+(c[c[h>>2]>>2]>>3);c[f>>2]=((d[c[j>>2]>>0]|0)<<24)+((d[(c[j>>2]|0)+1>>0]|0)<<16)+((d[(c[j>>2]|0)+2>>0]|0)<<8)+(d[(c[j>>2]|0)+3>>0]|0);c[f>>2]=c[f>>2]<<(c[c[h>>2]>>2]&7);c[e>>2]=ak(c[f>>2]|0)|0;b=c[h>>2]|0;c[b>>2]=(c[b>>2]|0)+((c[e>>2]<<1)+1);c[f>>2]=c[f>>2]<<(c[e>>2]|0)+1;i=g;return (1<<c[e>>2])+((c[f>>2]|0)>>>(31-(c[e>>2]|0)|0)>>>1)-1|0}function ak(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d;b=d+4|0;c[e>>2]=a;c[b>>2]=bk(c[e>>2]|0)|0;i=d;return 31-(c[b>>2]|0)|0}function bk(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;d=e+4|0;c[b>>2]=a;c[d>>2]=31;while(1){if(!(c[b>>2]&-2147483648|0?0:(c[d>>2]|0)>-1))break;c[b>>2]=c[b>>2]<<1;c[d>>2]=(c[d>>2]|0)+-1}i=e;return c[d>>2]|0}function ck(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;g=i;i=i+32|0;l=g+12|0;j=g+4|0;h=g;k=g+16|0;f=g+8|0;c[l>>2]=a;c[j>>2]=b;c[h>>2]=e;c[k>>2]=(c[l>>2]|0)+(c[c[j>>2]>>2]>>3);c[f>>2]=((d[c[k>>2]>>0]|0)<<24)+((d[(c[k>>2]|0)+1>>0]|0)<<16)+((d[(c[k>>2]|0)+2>>0]|0)<<8)+(d[(c[k>>2]|0)+3>>0]|0);c[f>>2]=c[f>>2]<<(c[c[j>>2]>>2]&7);c[f>>2]=(c[f>>2]|0)>>>(32-(c[h>>2]|0)|0);e=c[j>>2]|0;c[e>>2]=(c[e>>2]|0)+(c[h>>2]|0);i=g;return c[f>>2]|0}function dk(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=f+4|0;g=f;e=f+8|0;c[h>>2]=a;c[g>>2]=b;c[e>>2]=d[(c[h>>2]|0)+(c[c[g>>2]>>2]>>3)>>0];c[e>>2]=c[e>>2]<<24+(c[c[g>>2]>>2]&7);b=c[g>>2]|0;c[b>>2]=(c[b>>2]|0)+1;i=f;return (c[e>>2]|0)>>>31|0}function ek(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return}function fk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+4|0;e=g+8|0;f=g;c[b>>2]=a;b=c[b>>2]|0;d=1==(c[b+272>>2]|0);if(1==(c[b+236>>2]|0)){a=b+12+64|0;if(d){lq(a,c[b+12+12>>2]|0,c[b+268>>2]|0);f=b+240|0;e=b+12+64|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[f+16>>2]=c[e+16>>2];c[f+20>>2]=c[e+20>>2];c[f+24>>2]=c[e+24>>2]}else{f=b+240|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[a+20>>2]=c[f+20>>2];c[a+24>>2]=c[f+24>>2];c[b+272>>2]=1}c[b+268>>2]=c[b+12+12>>2];i=g;return 0}else{if(d)lq(b+12+64|0,c[b+12+12>>2]|0,c[b+268>>2]|0);else{ab(e|0)|0;c[f>>2]=fb(e|0)|0;c[b+12+64>>2]=(c[(c[f>>2]|0)+20>>2]|0)+1900;c[b+12+64+4>>2]=(c[(c[f>>2]|0)+16>>2]|0)+1;c[b+12+64+8>>2]=c[(c[f>>2]|0)+12>>2];c[b+12+64+12>>2]=c[(c[f>>2]|0)+8>>2];c[b+12+64+16>>2]=c[(c[f>>2]|0)+4>>2];c[b+12+64+20>>2]=c[c[f>>2]>>2];c[b+12+64+24>>2]=0;c[b+272>>2]=1}c[b+268>>2]=c[b+12+12>>2];i=g;return 0}return 0}function gk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[j>>2]|0;if(((c[d+188>>2]|0)+(c[g>>2]|0)|0)>>>0>2097152){c[e>>2]=-2147483643;j=c[e>>2]|0;i=h;return j|0}else{Tx((c[d+184>>2]|0)+(c[d+188>>2]|0)|0,c[f>>2]|0,c[g>>2]|0)|0;j=d+188|0;c[j>>2]=(c[j>>2]|0)+(c[g>>2]|0);c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function hk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+8>>2]=c[f>>2];i=d;return 0}function ik(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;do if(c[e>>2]|0)if(2==(c[b+8>>2]|0)){c[d>>2]=-2147483642;break}else{c[c[e>>2]>>2]=-1;c[d>>2]=-2147483647;break}else c[d>>2]=-2147483645;while(0);i=f;return c[d>>2]|0}function jk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=c[f>>2]|0;b=a+240|0;e=c[e>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];c[b+16>>2]=c[e+16>>2];c[b+20>>2]=c[e+20>>2];c[b+24>>2]=c[e+24>>2];c[a+236>>2]=1;i=d;return 0}function kk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;Ej(a);c[a>>2]=2404;c[a+4>>2]=0;c[a+8>>2]=2;c[a+192>>2]=0;c[a+164>>2]=0;c[a+168>>2]=0;c[a+172>>2]=0;c[a+184>>2]=0;c[a+188>>2]=0;c[a+176>>2]=0;c[a+180>>2]=0;c[a+196>>2]=0;c[a+200>>2]=0;c[a+204>>2]=0;c[a+208>>2]=0;g[a+212>>2]=40.0;c[a+216>>2]=0;c[a+220>>2]=0;Ox(a+12|0,0,152)|0;d=a+240|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;c[a+224>>2]=0;c[a+228>>2]=1;c[a+232>>2]=1;c[a+236>>2]=0;c[a+272>>2]=0;c[a+268>>2]=0;i=b;return}function lk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=2468;nb[c[(c[a>>2]|0)+28>>2]&127](a)|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;Vi(a);i=b;return}function mk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;lk(a);lx(a);i=b;return}function nk(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[a+164>>2]=Ix(2097152)|0;if(!(c[a+164>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}else{c[b>>2]=0;i=d;return c[b>>2]|0}return 0}function ok(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;a=c[b>>2]|0;if(!(c[a+164>>2]|0)){i=d;return 0}b=c[a+164>>2]|0;if(b|0)Jx(b);c[a+164>>2]=0;i=d;return 0}function pk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+4>>2]=c[f>>2];i=d;return 0}function qk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;h=k+12|0;f=k+8|0;g=k+4|0;j=k;c[f>>2]=b;c[g>>2]=d;c[j>>2]=e;b=c[f>>2]|0;if(!(c[g>>2]|0)){c[h>>2]=-2147483645;j=c[h>>2]|0;i=k;return j|0}else{f=b+196|0;e=c[g>>2]|0;d=f+40|0;do{a[f>>0]=a[e>>0]|0;f=f+1|0;e=e+1|0}while((f|0)<(d|0));c[b+252>>2]=c[j>>2];c[h>>2]=0;j=c[h>>2]|0;i=k;return j|0}return 0}function rk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;g=c[d>>2]|0;i=f;return g|0}nb[c[(c[b>>2]|0)+28>>2]&127](b)|0;c[b+176>>2]=zh(c[e>>2]|0,1)|0;if(!(c[b+176>>2]|0)){g=za(4)|0;c[g>>2]=-2147483641;Xa(g|0,144,0)}e=Dh(c[b+176>>2]|0)|0;g=b+256|0;c[g>>2]=e;c[g+4>>2]=D;c[b+8>>2]=0;c[b+192>>2]=Kh(0,62,b)|0;if(!(c[b+192>>2]|0)){c[b+8>>2]=2;g=za(4)|0;c[g>>2]=-2147483646;Xa(g|0,144,0)}c[b+276>>2]=1;c[d>>2]=0;g=c[d>>2]|0;i=f;return g|0}function sk(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;d=e+4|0;c[b>>2]=a;if(!(c[b>>2]|0)){i=e;return 0}c[d>>2]=c[b>>2];tk(c[d>>2]|0)|0;i=e;return 0}function tk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;d=e+8|0;b=e;c[f>>2]=a;a=c[f>>2]|0;while(1){if((c[a+8>>2]|0)==2)break;c[d>>2]=Ah(c[a+176>>2]|0,2097152-(c[a+172>>2]|0)|0,(c[a+164>>2]|0)+(c[a+172>>2]|0)|0)|0;if(!(c[d>>2]|0)){La(1e4)|0;c[b>>2]=2}else{f=a+172|0;c[f>>2]=(c[f>>2]|0)+(c[d>>2]|0);uk(a)|0;f=a+264|0;g=f;g=Px(c[g>>2]|0,c[g+4>>2]|0,c[d>>2]|0,0)|0;c[f>>2]=g;c[f+4>>2]=D;f=a+256|0;if(0==(c[f>>2]|0)?0==(c[f+4>>2]|0):0)c[a+272>>2]=100;else{f=a+264|0;f=Zx(c[f>>2]|0,c[f+4>>2]|0,100,0)|0;g=a+256|0;g=Xx(f|0,D|0,c[g>>2]|0,c[g+4>>2]|0)|0;c[a+272>>2]=g}c[b>>2]=0}}i=e;return -2147483642}function uk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;b=g+8|0;h=g+4|0;e=g+12|0;d=g;c[h>>2]=a;a=c[h>>2]|0;while(1){if((c[a+8>>2]|0)==2)break;c[e>>2]=vk(a,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0)|0;switch(c[e>>2]|0){case -1:{c[b>>2]=Ak(a)|0;c[d>>2]=1;break}case -2:{f=a+168|0;c[f>>2]=(c[f>>2]|0)+1;Bk(a)|0;f=8;break}default:{Dk(a,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)-(c[e>>2]|0)|0)|0;c[a+168>>2]=(c[a+172>>2]|0)-(c[e>>2]|0);f=8}}if((f|0)==8){f=0;c[d>>2]=0}if((c[d>>2]|0)>>>0>=1){f=10;break}}if((f|0)==10){h=c[b>>2]|0;i=g;return h|0}c[b>>2]=-2147483642;h=c[b>>2]|0;i=g;return h|0}function vk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;e=n+24|0;o=n+16|0;f=n+8|0;g=n+4|0;l=n+28|0;h=n;j=n+20|0;k=n+12|0;c[o>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[o>>2]|0;if((c[g>>2]|0)>>>0<48){c[e>>2]=-1;o=c[e>>2]|0;i=n;return o|0}c[l>>2]=c[f>>2];if(wk(d,c[l>>2]|0)|0){c[f>>2]=(c[f>>2]|0)+48;c[g>>2]=(c[g>>2]|0)-48;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=((c[(c[l>>2]|0)+16>>2]|0)-4096|0)>>>0){m=7;break}if((c[g>>2]|0)>>>0<20){m=9;break}c[k>>2]=c[f>>2];do if(zk(d,c[k>>2]|0)|0){c[f>>2]=(c[f>>2]|0)+20;c[g>>2]=(c[g>>2]|0)-20;if((c[g>>2]|0)>>>0<(c[(c[k>>2]|0)+16>>2]|0)>>>0){c[e>>2]=-1;c[h>>2]=1;break}else{c[f>>2]=(c[f>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0);c[g>>2]=(c[g>>2]|0)-(c[(c[k>>2]|0)+16>>2]|0);c[h>>2]=0;break}}else{c[e>>2]=-2;c[h>>2]=1}while(0);if(c[h>>2]|0)break;c[j>>2]=(c[j>>2]|0)+1}if((m|0)==7)c[h>>2]=2;else if((m|0)==9){c[e>>2]=-1;c[h>>2]=1}if((c[h>>2]|0)==2){c[e>>2]=c[g>>2];c[h>>2]=1}}else{c[e>>2]=-2;c[h>>2]=1}o=c[e>>2]|0;i=n;return o|0}function wk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;f=g;d=g+12|0;h=g+8|0;e=g+4|0;c[h>>2]=a;c[e>>2]=b;b=c[h>>2]|0;if((c[c[e>>2]>>2]|0)!=1){c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}if((c[(c[e>>2]|0)+12>>2]|0)!=4097?(c[(c[e>>2]|0)+12>>2]|0)!=4096:0){c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}if((c[(c[e>>2]|0)+12>>2]|0)==4096?((c[(c[e>>2]|0)+16>>2]|0)-4096|0)>>>0>3:0){c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}if((c[(c[e>>2]|0)+12>>2]|0)==4097?((c[(c[e>>2]|0)+16>>2]|0)-4096|0)>>>0>6:0){c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}do if((c[(c[e>>2]|0)+24>>2]|0)>>>0>=4097){if((c[(c[e>>2]|0)+24>>2]|0)>>>0>4103?(c[(c[e>>2]|0)+24>>2]|0)>>>0<8193:0)break;if((c[(c[e>>2]|0)+24>>2]|0)>>>0<=12289){if((c[(c[e>>2]|0)+12>>2]|0)==4096?(xk(b,c[e>>2]|0)|0)==0:0){c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}if(!(yk(b,c[(c[e>>2]|0)+44>>2]|0)|0))jq(6303,f);c[d>>2]=1;h=c[d>>2]|0;i=g;return h|0}}while(0);c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}function xk(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;d=h+8|0;j=h+4|0;f=h;c[j>>2]=a;c[f>>2]=b;b=c[j>>2]|0;if((c[b+196+8>>2]|0)==537002754)c[(c[f>>2]|0)+20>>2]=c[b+196+28>>2];a:do if((c[(c[f>>2]|0)+20>>2]|0)>>>0>=4097?(c[(c[f>>2]|0)+20>>2]|0)>>>0<=4104:0)switch(c[(c[f>>2]|0)+20>>2]|0){case 4097:{c[b+236>>2]=352;if((e[b+196+18>>1]|0|0)==4097){c[b+240>>2]=288;break a}if((e[b+196+18>>1]|0|0)==4098){c[b+240>>2]=240;break a}c[d>>2]=0;j=c[d>>2]|0;i=h;return j|0}case 4098:{c[b+236>>2]=176;if((e[b+196+18>>1]|0|0)==4097){c[b+240>>2]=144;break a}if((e[b+196+18>>1]|0|0)==4098){c[b+240>>2]=128;break a}c[d>>2]=0;j=c[d>>2]|0;i=h;return j|0}case 4099:{c[b+236>>2]=704;if((e[b+196+18>>1]|0|0)==4097){c[b+240>>2]=576;break a}if((e[b+196+18>>1]|0|0)==4098){c[b+240>>2]=480;break a}c[d>>2]=0;j=c[d>>2]|0;i=h;return j|0}case 4100:{c[b+236>>2]=704;if((e[b+196+18>>1]|0|0)==4097){c[b+240>>2]=288;break a}if((e[b+196+18>>1]|0|0)==4098){c[b+240>>2]=240;break a}c[d>>2]=0;j=c[d>>2]|0;i=h;return j|0}case 4101:{c[b+236>>2]=96;if((e[b+196+18>>1]|0|0)==4097){c[b+240>>2]=80;break a}if((e[b+196+18>>1]|0|0)==4098){c[b+240>>2]=64;break a}c[d>>2]=0;j=c[d>>2]|0;i=h;return j|0}case 4104:{c[b+236>>2]=528;if((e[b+196+18>>1]|0|0)==4097){c[b+240>>2]=384;break a}if((e[b+196+18>>1]|0|0)==4098){c[b+240>>2]=320;break a}c[d>>2]=0;j=c[d>>2]|0;i=h;return j|0}case 4102:{if((e[b+196+18>>1]|0|0)==4098){c[b+236>>2]=320;c[b+240>>2]=240;break a}c[d>>2]=0;j=c[d>>2]|0;i=h;return j|0}default:{if((e[b+196+18>>1]|0|0)==4098){c[b+236>>2]=160;c[b+240>>2]=128;break a}c[d>>2]=0;j=c[d>>2]|0;i=h;return j|0}}else g=5;while(0);if((g|0)==5){c[b+236>>2]=e[(c[f>>2]|0)+20>>1];c[b+240>>2]=e[(c[f>>2]|0)+20+2>>1]}c[d>>2]=1;j=c[d>>2]|0;i=h;return j|0}function yk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g;c[g+4>>2]=a;c[e>>2]=b;a:do if((((c[e>>2]|0)>>>26)+2e3|0)>>>0>=1900?(((c[e>>2]|0)>>>26)+2e3|0)>>>0<=2100:0){b:do switch((c[e>>2]|0)>>>22&15|0){case 12:case 10:case 8:case 7:case 5:case 3:case 1:{if(((c[e>>2]|0)>>>17&31)>>>0>31){c[d>>2]=0;break a}break}case 11:case 9:case 6:case 4:{if(((c[e>>2]|0)>>>17&31)>>>0>30){c[d>>2]=0;break a}break}case 2:{if(!((((((c[e>>2]|0)>>>26)+2e3|0)>>>0)%4|0|0)==0?(((((c[e>>2]|0)>>>26)+2e3|0)>>>0)%100|0|0)!=0:0))f=11;if((f|0)==11?((((c[e>>2]|0)>>>26)+2e3|0)>>>0)%400|0|0:0){if(((c[e>>2]|0)>>>17&31)>>>0<=28)break b;c[d>>2]=0;break a}if(((c[e>>2]|0)>>>17&31)>>>0>29){c[d>>2]=0;break a}break}default:{c[d>>2]=0;break a}}while(0);if(((c[e>>2]|0)>>>12&31)>>>0>23){c[d>>2]=0;break}if(((c[e>>2]|0)>>>6&63)>>>0>59){c[d>>2]=0;break}if(((c[e>>2]|0)>>>0&63)>>>0>59){c[d>>2]=0;break}else{c[d>>2]=1;break}}else f=3;while(0);if((f|0)==3)c[d>>2]=0;i=g;return c[d>>2]|0}function zk(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;g=i;i=i+16|0;d=g+8|0;h=g+4|0;f=g;c[h>>2]=a;c[f>>2]=b;b=c[h>>2]|0;do if((e[c[f>>2]>>1]|0|0)>=4097){if((e[c[f>>2]>>1]|0|0)>4101?(e[c[f>>2]>>1]|0|0)<8193:0)break;if((e[c[f>>2]>>1]|0|0)>8194?(e[c[f>>2]>>1]|0|0)<12289:0)break;if((e[c[f>>2]>>1]|0|0)<=12291){if((e[c[f>>2]>>1]|0|0)!=4099?(e[c[f>>2]>>1]|0|0)!=4100:0)a=(e[c[f>>2]>>1]|0|0)==4101;else a=1;if((a?1:0)|0?(c[(c[f>>2]|0)+16>>2]|0)>>>0>(((($(c[b+236>>2]|0,c[b+240>>2]|0)|0)*3|0)>>>0)/2|0)>>>0:0){c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}if((e[c[f>>2]>>1]|0|0)==4097)b=1;else b=(e[c[f>>2]>>1]|0|0)==4098;if((b?1:0)|0?(c[(c[f>>2]|0)+16>>2]|0)>>>0>1024:0){c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}if((((e[c[f>>2]>>1]|0|0)!=8193?(e[c[f>>2]>>1]|0|0)!=8194:0)?(e[c[f>>2]>>1]|0|0)!=12289:0)?(e[c[f>>2]>>1]|0|0)!=12290:0)b=(e[c[f>>2]>>1]|0|0)==12291;else b=1;if((b?1:0)|0?(c[(c[f>>2]|0)+16>>2]|0)>>>0>5120:0){c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}c[d>>2]=1;h=c[d>>2]|0;i=g;return h|0}}while(0);c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}function Ak(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;if(!(c[a+168>>2]|0)){c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}if((c[a+172>>2]|0)>>>0>(c[a+168>>2]|0)>>>0)Ux(c[a+164>>2]|0,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0)|0;c[a+172>>2]=(c[a+172>>2]|0)-(c[a+168>>2]|0);c[a+168>>2]=0;c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}function Bk(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d;b=d+4|0;c[e>>2]=a;a=c[e>>2]|0;c[b>>2]=Ck(a,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0)|0;if((c[b>>2]|0)!=-1){e=a+168|0;c[e>>2]=(c[e>>2]|0)+(c[b>>2]|0);i=d;return 0}if(((c[a+172>>2]|0)-(c[a+168>>2]|0)|0)>>>0<=47){i=d;return 0}c[a+168>>2]=(c[a+172>>2]|0)-47;i=d;return 0}function Ck(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;e=m+20|0;n=m+12|0;f=m+8|0;g=m+4|0;j=m+24|0;h=m;k=m+16|0;c[n>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[n>>2]|0;if((c[g>>2]|0)>>>0<48){c[e>>2]=-1;n=c[e>>2]|0;i=m;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=((c[g>>2]|0)-47|0)>>>0){l=5;break}c[k>>2]=(c[f>>2]|0)+(c[j>>2]|0);if(wk(d,c[k>>2]|0)|0){c[e>>2]=c[j>>2];c[h>>2]=1}else c[h>>2]=0;if(c[h>>2]|0)break;c[j>>2]=(c[j>>2]|0)+1}if((l|0)==5)c[h>>2]=2;if(((c[h>>2]|0)+-2|0)>>>0>=1){n=c[e>>2]|0;i=m;return n|0}c[e>>2]=-1;n=c[e>>2]|0;i=m;return n|0}function Dk(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;p=o+24|0;f=o+16|0;g=o+8|0;m=o+28|0;k=o+20|0;j=o+12|0;h=o+4|0;l=o;c[p>>2]=a;c[f>>2]=b;c[g>>2]=e;e=c[p>>2]|0;c[m>>2]=c[f>>2];c[f>>2]=(c[f>>2]|0)+48;c[g>>2]=(c[g>>2]|0)-48;c[k>>2]=0;c[j>>2]=0;c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>=((c[(c[m>>2]|0)+16>>2]|0)-4096|0)>>>0)break;c[l>>2]=c[f>>2];c[f>>2]=(c[f>>2]|0)+20;c[g>>2]=(c[g>>2]|0)-20;if(!(Ek(e,c[m>>2]|0,c[l>>2]|0,c[h>>2]|0)|0)){do if(1212893236==(c[e+196>>2]|0)){if((1!=(c[e+12>>2]|0)?2!=(c[e+12>>2]|0):0)?3!=(c[e+12>>2]|0):0){n=16;break}if(((((c[g>>2]|0)>>>0>=4?0==(d[c[f>>2]>>0]|0|0):0)?0==(d[(c[f>>2]|0)+1>>0]|0|0):0)?0==(d[(c[f>>2]|0)+2>>0]|0|0):0)?1==(d[(c[f>>2]|0)+3>>0]|0|0):0){c[e+248>>2]=256;c[e+12+4>>2]=c[e+248>>2];c[k>>2]=c[f>>2];c[j>>2]=c[(c[l>>2]|0)+16>>2];break}c[e+248>>2]=1;c[e+12+4>>2]=c[e+248>>2];c[k>>2]=(c[f>>2]|0)+-20;c[j>>2]=(c[(c[l>>2]|0)+16>>2]|0)+20}else n=16;while(0);if((n|0)==16){n=0;c[e+12+4>>2]=c[e+248>>2];c[k>>2]=c[f>>2];c[j>>2]=c[(c[l>>2]|0)+16>>2]}if(c[e+244>>2]|0){p=c[e+4>>2]|0;pb[c[(c[p>>2]|0)+28>>2]&31](p,c[k>>2]|0,c[j>>2]|0,e+12|0)|0}}c[f>>2]=(c[f>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[g>>2]=(c[g>>2]|0)-(c[(c[l>>2]|0)+16>>2]|0);c[h>>2]=(c[h>>2]|0)+1}i=o;return 0}function Ek(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;h=m+16|0;n=m+12|0;j=m+8|0;k=m+4|0;l=m;c[n>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=f;f=c[n>>2]|0;c[f+12+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)-4096+(c[l>>2]|0);c[f+12+16>>2]=c[f+236>>2];c[f+12+20>>2]=c[f+240>>2];if(!((c[(c[j>>2]|0)+28>>2]|0)-4096|0))g[f+12+60>>2]=40.0;else g[f+12+60>>2]=1.0e3/+(((c[(c[j>>2]|0)+28>>2]|0)-4096|0)>>>0);c[f+12+36>>2]=18507;c[f+12+32>>2]=1;if(!(yk(f,c[(c[j>>2]|0)+44>>2]|0)|0)?1==(c[f+284>>2]|0):0){n=f+12+64|0;a=f+288|0;c[n>>2]=c[a>>2];c[n+4>>2]=c[a+4>>2];c[n+8>>2]=c[a+8>>2];c[n+12>>2]=c[a+12>>2];c[n+16>>2]=c[a+16>>2];c[n+20>>2]=c[a+20>>2];c[n+24>>2]=c[a+24>>2]}else{c[f+12+64>>2]=((c[(c[j>>2]|0)+44>>2]|0)>>>26)+2e3;c[f+12+64+4>>2]=(c[(c[j>>2]|0)+44>>2]|0)>>>22&15;c[f+12+64+8>>2]=(c[(c[j>>2]|0)+44>>2]|0)>>>17&31;c[f+12+64+12>>2]=(c[(c[j>>2]|0)+44>>2]|0)>>>12&31;c[f+12+64+16>>2]=(c[(c[j>>2]|0)+44>>2]|0)>>>6&63;c[f+12+64+20>>2]=(c[(c[j>>2]|0)+44>>2]|0)>>>0&63;c[f+12+64+24>>2]=e[(c[j>>2]|0)+32+2>>1]}c[f+12+24>>2]=(c[(c[k>>2]|0)+8>>2]&32)>>>5;if(4101!=(c[(c[j>>2]|0)+24>>2]|0)){if(4100==(c[(c[j>>2]|0)+24>>2]|0))c[f+12+28>>2]=1}else c[f+12+28>>2]=2;switch(e[c[k>>2]>>1]|0|0){case 4099:{c[f+12>>2]=1;c[f+12+12>>2]=~~(+((c[(c[j>>2]|0)+8>>2]|0)>>>0)/64.0*1.0e3)>>>0;if(1==(c[f+284>>2]|0))Fk(f,c[f+12+12>>2]|0,c[f+280>>2]|0);c[f+280>>2]=c[f+12+12>>2];c[f+244>>2]=1;break}case 4100:{c[f+12>>2]=2;c[f+12+12>>2]=~~(+((c[(c[j>>2]|0)+8>>2]|0)>>>0)/64.0*1.0e3+ +(((c[(c[j>>2]|0)+16>>2]|0)-4096-1|0)>>>0)*+g[f+12+60>>2])>>>0;break}case 4101:{c[f+12>>2]=3;c[f+12+12>>2]=~~(+((c[(c[j>>2]|0)+8>>2]|0)>>>0)/64.0*1.0e3+ +(((c[l>>2]|0)-1|0)>>>0)*+g[f+12+60>>2])>>>0;break}case 4098:case 4097:{c[f+12>>2]=4;g[f+12+60>>2]=40.0;c[f+12+12>>2]=~~(+((c[(c[j>>2]|0)+8>>2]|0)>>>0)/64.0*1.0e3+ +((c[l>>2]|0)>>>0)*+g[f+12+60>>2])>>>0;break}default:{c[h>>2]=-2147483647;n=c[h>>2]|0;i=m;return n|0}}c[h>>2]=0;n=c[h>>2]|0;i=m;return n|0}function Fk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;k=j+12|0;e=j+8|0;f=j+4|0;h=j+16|0;g=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[k>>2]|0;if((c[e>>2]|0)==-1){i=j;return}c[h>>2]=0;if((c[e>>2]|0)>>>0<(c[f>>2]|0)>>>0)c[h>>2]=-1-(c[f>>2]|0)+(c[e>>2]|0)+2;else c[h>>2]=(c[e>>2]|0)-(c[f>>2]|0);if((c[h>>2]|0)>>>0>36e5)c[h>>2]=1e3;k=b+288+24|0;c[k>>2]=(c[k>>2]|0)+(c[h>>2]|0);do if((c[b+288+24>>2]|0)>>>0>=1e3){k=b+288+20|0;c[k>>2]=(c[k>>2]|0)+(((c[b+288+24>>2]|0)>>>0)/1e3|0);k=b+288+24|0;c[k>>2]=((c[k>>2]|0)>>>0)%1e3|0;if((c[b+288+20>>2]|0)>>>0<60){c[g>>2]=1;break}k=b+288+16|0;c[k>>2]=(c[k>>2]|0)+(((c[b+288+20>>2]|0)>>>0)/60|0);k=b+288+20|0;c[k>>2]=((c[k>>2]|0)>>>0)%60|0;if((c[b+288+16>>2]|0)>>>0<60){c[g>>2]=1;break}k=b+288+12|0;c[k>>2]=(c[k>>2]|0)+(((c[b+288+16>>2]|0)>>>0)/60|0);k=b+288+16|0;c[k>>2]=((c[k>>2]|0)>>>0)%60|0;if((c[b+288+12>>2]|0)>>>0<24){c[g>>2]=1;break}k=b+288+8|0;c[k>>2]=(c[k>>2]|0)+(((c[b+288+12>>2]|0)>>>0)/24|0);k=b+288+12|0;c[k>>2]=((c[k>>2]|0)>>>0)%24|0;if(!(Gk(b,b+288|0)|0)){c[g>>2]=1;break}c[b+288+8>>2]=1;k=b+288+4|0;c[k>>2]=(c[k>>2]|0)+1;if((c[b+288+4>>2]|0)>>>0<=12){c[g>>2]=1;break}else{c[b+288+4>>2]=1;k=b+288|0;c[k>>2]=(c[k>>2]|0)+1;c[g>>2]=0;break}}else c[g>>2]=1;while(0);i=j;return}function Gk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g;c[g+4>>2]=a;c[e>>2]=b;a:do switch(c[(c[e>>2]|0)+4>>2]|0){case 12:case 10:case 8:case 7:case 5:case 3:case 1:{if((c[(c[e>>2]|0)+8>>2]|0)>>>0<=31)c[d>>2]=0;else f=14;break}case 11:case 9:case 6:case 4:{if((c[(c[e>>2]|0)+8>>2]|0)>>>0<=30)c[d>>2]=0;else f=14;break}case 2:{if(!((((c[c[e>>2]>>2]|0)>>>0)%4|0|0)==0?(((c[c[e>>2]>>2]|0)>>>0)%100|0|0)!=0:0))f=8;if((f|0)==8?((c[c[e>>2]>>2]|0)>>>0)%400|0|0:0){if((c[(c[e>>2]|0)+8>>2]|0)>>>0>28){f=14;break a}c[d>>2]=0;break a}if((c[(c[e>>2]|0)+8>>2]|0)>>>0<=29)c[d>>2]=0;else f=14;break}default:c[d>>2]=0}while(0);if((f|0)==14)c[d>>2]=1;i=g;return c[d>>2]|0}function Hk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+8>>2]=2;if(c[a+176>>2]|0){Eh(c[a+176>>2]|0)|0;c[a+176>>2]=0}if(!(c[a+192>>2]|0)){d=Ik(a)|0;i=b;return d|0}Lh(c[a+192>>2]|0)|0;Mh(c[a+192>>2]|0)|0;c[a+192>>2]=0;d=Ik(a)|0;i=b;return d|0}function Ik(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+168>>2]=0;c[a+172>>2]=0;c[a+244>>2]=0;c[a+248>>2]=0;d=a+256|0;c[d>>2]=0;c[d+4>>2]=0;d=a+264|0;c[d>>2]=0;c[d+4>>2]=0;c[a+272>>2]=0;c[a+276>>2]=0;i=b;return 0}function Jk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;f=j+16|0;k=j+12|0;g=j+4|0;h=j;c[k>>2]=a;c[j+8>>2]=b;c[g>>2]=d;c[h>>2]=e;e=c[k>>2]|0;if((c[e+8>>2]|0)==2){c[f>>2]=-2147483642;k=c[f>>2]|0;i=j;return k|0}if(((c[e+172>>2]|0)+(c[h>>2]|0)|0)>>>0>2097152){c[f>>2]=-2147483643;k=c[f>>2]|0;i=j;return k|0}if(4==(c[e+252>>2]|0)?1==(c[e+248>>2]|0):0){c[f>>2]=-2147483647;k=c[f>>2]|0;i=j;return k|0}Tx((c[e+164>>2]|0)+(c[e+172>>2]|0)|0,c[g>>2]|0,c[h>>2]|0)|0;k=e+172|0;c[k>>2]=(c[k>>2]|0)+(c[h>>2]|0);c[f>>2]=uk(e)|0;k=c[f>>2]|0;i=j;return k|0}function Kk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+8>>2]=c[f>>2];i=d;return 0}function Lk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;do if(c[e>>2]|0){if(2==(c[b+8>>2]|0)){c[d>>2]=-2147483642;break}if(!(c[b+276>>2]|0)){c[d>>2]=-2147483644;break}else{c[c[e>>2]>>2]=c[b+272>>2];c[d>>2]=0;break}}else c[d>>2]=-2147483645;while(0);i=f;return c[d>>2]|0}function Mk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=c[f>>2]|0;b=a+288|0;e=c[e>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];c[b+16>>2]=c[e+16>>2];c[b+20>>2]=c[e+20>>2];c[b+24>>2]=c[e+24>>2];c[a+284>>2]=1;i=d;return 0}function Nk(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;a=c[b>>2]|0;Ej(a);c[a>>2]=2468;c[a+4>>2]=0;c[a+8>>2]=2;Ox(a+12|0,0,152)|0;c[a+164>>2]=0;c[a+168>>2]=0;c[a+172>>2]=0;c[a+176>>2]=0;b=a+184|0;c[b>>2]=0;c[b+4>>2]=0;c[a+192>>2]=0;b=a+196|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));c[a+236>>2]=0;c[a+240>>2]=0;c[a+244>>2]=0;c[a+248>>2]=0;c[a+252>>2]=0;d=a+256|0;c[d>>2]=0;c[d+4>>2]=0;d=a+264|0;c[d>>2]=0;c[d+4>>2]=0;c[a+272>>2]=0;c[a+276>>2]=0;c[a+280>>2]=-1;c[a+284>>2]=0;d=a+288|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;i=e;return}function Ok(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=2532;nb[c[(c[a>>2]|0)+28>>2]&127](a)|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;Vi(a);i=b;return}function Pk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;Ok(a);lx(a);i=b;return}function Qk(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[a+164>>2]=Ix(2097152)|0;if(!(c[a+164>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}c[a+176>>2]=Ix(2097152)|0;if(!(c[a+176>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}else{c[b>>2]=0;i=d;return c[b>>2]|0}return 0}function Rk(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;b=c[b>>2]|0;if(c[b+164>>2]|0){a=c[b+164>>2]|0;if(a|0)Jx(a);c[b+164>>2]=0}if(!(c[b+176>>2]|0)){i=d;return 0}a=c[b+176>>2]|0;if(a|0)Jx(a);c[b+176>>2]=0;i=d;return 0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+4>>2]=c[f>>2];i=d;return 0}function Tk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;i=i+16|0;c[e+8>>2]=a;c[e+4>>2]=b;c[e>>2]=d;i=e;return 0}function Uk(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return -2147483647}function Vk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+8>>2]=2;a=Wk(a)|0;i=b;return a|0}function Wk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+168>>2]=0;c[a+172>>2]=0;c[a+180>>2]=0;c[a+184>>2]=0;c[a+188>>2]=0;g[a+196>>2]=40.0;i=b;return 0}function Xk(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l+16|0;m=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;e=c[m>>2]|0;if((c[e+8>>2]|0)==2){c[f>>2]=-2147483642;m=c[f>>2]|0;i=l;return m|0}switch(c[h>>2]|0){case 0:if(((c[e+172>>2]|0)+(c[k>>2]|0)|0)>>>0>2097152){c[f>>2]=-2147483643;m=c[f>>2]|0;i=l;return m|0}else{Tx((c[e+164>>2]|0)+(c[e+172>>2]|0)|0,c[j>>2]|0,c[k>>2]|0)|0;m=e+172|0;c[m>>2]=(c[m>>2]|0)+(c[k>>2]|0);c[f>>2]=Yk(e)|0;m=c[f>>2]|0;i=l;return m|0}case 2:{c[e+12>>2]=4;c[e+12+12>>2]=c[e+200>>2];g[e+12+60>>2]=40.0;m=e+200|0;c[m>>2]=(c[m>>2]|0)+40;m=c[e+4>>2]|0;pb[c[(c[m>>2]|0)+28>>2]&31](m,c[j>>2]|0,c[k>>2]|0,e+12|0)|0;break}default:{}}c[f>>2]=0;m=c[f>>2]|0;i=l;return m|0}function Yk(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;b=g+8|0;h=g+4|0;e=g+12|0;d=g;c[h>>2]=a;a=c[h>>2]|0;if(!(c[a+184>>2]|0)){c[e>>2]=Zk(a,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0)|0;if((c[e>>2]|0)<0){c[b>>2]=-2147483644;c[d>>2]=1}else{h=a+168|0;c[h>>2]=(c[h>>2]|0)+(c[e>>2]|0);c[a+184>>2]=1;c[d>>2]=0}if((c[d>>2]|0)>>>0>=1){h=c[b>>2]|0;i=g;return h|0}}while(1){if((c[a+8>>2]|0)==2)break;c[e>>2]=_k(a,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0)|0;if((c[e>>2]|0)==-1){c[b>>2]=$k(a)|0;c[d>>2]=1}else{al(a,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)-(c[e>>2]|0)|0)|0;h=a+168|0;c[h>>2]=(c[h>>2]|0)+((c[a+172>>2]|0)-(c[a+168>>2]|0)-(c[e>>2]|0));c[d>>2]=0}if((c[d>>2]|0)>>>0>=1){f=12;break}}if((f|0)==12){h=c[b>>2]|0;i=g;return h|0}c[b>>2]=-2147483642;h=c[b>>2]|0;i=g;return h|0}function Zk(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;h=k+16|0;e=k+8|0;f=k+4|0;g=k+20|0;j=k;c[k+12>>2]=a;c[e>>2]=b;c[f>>2]=d;if((c[f>>2]|0)>>>0<4){c[h>>2]=-1;j=c[h>>2]|0;i=k;return j|0}c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=((c[f>>2]|0)-3|0)>>>0){d=5;break}b=c[g>>2]|0;if((c[(c[e>>2]|0)+(c[g>>2]|0)>>2]&16777215|0)==65536){d=7;break}c[g>>2]=b+1}if((d|0)==5)c[j>>2]=2;else if((d|0)==7){c[h>>2]=b;c[j>>2]=1}if(((c[j>>2]|0)+-2|0)>>>0>=1){j=c[h>>2]|0;i=k;return j|0}c[h>>2]=-1;j=c[h>>2]|0;i=k;return j|0}function _k(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;e=k+16|0;l=k+12|0;f=k+8|0;g=k+4|0;j=k+20|0;h=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[l>>2]|0;if((c[g>>2]|0)>>>0<4){c[e>>2]=-1;l=c[e>>2]|0;i=k;return l|0}c[j>>2]=Zk(d,(c[f>>2]|0)+4|0,(c[g>>2]|0)-4|0)|0;d=c[j>>2]|0;if((c[j>>2]|0)==-1){c[e>>2]=d;c[h>>2]=1}else{c[f>>2]=(c[f>>2]|0)+(4+d);c[g>>2]=(c[g>>2]|0)-(4+(c[j>>2]|0));c[e>>2]=c[g>>2];c[h>>2]=1}l=c[e>>2]|0;i=k;return l|0}function $k(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;if(!(c[a+168>>2]|0)){c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}if((c[a+172>>2]|0)>>>0>(c[a+168>>2]|0)>>>0)Ux(c[a+164>>2]|0,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0)|0;c[a+172>>2]=(c[a+172>>2]|0)-(c[a+168>>2]|0);c[a+168>>2]=0;c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}function al(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,j=0,k=0,l=0;k=i;i=i+48|0;l=k+28|0;e=k+4|0;f=k;h=k+32|0;j=k+8|0;c[l>>2]=a;c[e>>2]=b;c[f>>2]=d;d=c[l>>2]|0;c[h>>2]=0;switch(Up(c[e>>2]|0,c[f>>2]|0)|0){case 5:{c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0;if(1==(dq(j,c[e>>2]|0,c[f>>2]|0)|0)){c[d+12+16>>2]=c[j>>2];c[d+12+20>>2]=c[j+4>>2];c[d+12+24>>2]=0;g[d+12+60>>2]=+g[j+16>>2];g[d+196>>2]=+g[j+16>>2]}break}case 3:{c[d+12>>2]=1;c[h>>2]=1;break}case 2:{c[d+12>>2]=2;c[h>>2]=1;break}case 1:{c[d+12>>2]=3;c[h>>2]=1;break}default:{}}bl(d,c[e>>2]|0,c[f>>2]|0)|0;if(!(c[h>>2]|0)){i=k;return 0}cl(d);c[d+12+12>>2]=c[d+192>>2];g[d+12+60>>2]=+g[d+196>>2];l=d+192|0;c[l>>2]=~~(+((c[l>>2]|0)>>>0)+ +g[d+196>>2])>>>0;c[d+12+8>>2]=c[d+188>>2];l=d+188|0;c[l>>2]=(c[l>>2]|0)+1;if(!(1!=(c[d+12>>2]|0)?2!=(c[d+12>>2]|0):0))dl(d)|0;l=c[d+4>>2]|0;pb[c[(c[l>>2]|0)+28>>2]&31](l,c[d+176>>2]|0,c[d+180>>2]|0,d+12|0)|0;c[d+180>>2]=0;i=k;return 0}function bl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[j>>2]|0;if(((c[d+180>>2]|0)+(c[g>>2]|0)|0)>>>0>2097152){c[e>>2]=-2147483643;j=c[e>>2]|0;i=h;return j|0}else{Tx((c[d+176>>2]|0)+(c[d+180>>2]|0)|0,c[f>>2]|0,c[g>>2]|0)|0;j=d+180|0;c[j>>2]=(c[j>>2]|0)+(c[g>>2]|0);c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function cl(a){a=a|0;var b=0;b=i;i=i+16|0;c[b>>2]=a;i=b;return}function dl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+4|0;e=g+8|0;f=g;c[b>>2]=a;b=c[b>>2]|0;d=1==(c[b+204>>2]|0);if(1==(c[b+208>>2]|0)){a=b+12+64|0;if(d){lq(a,c[b+12+12>>2]|0,c[b+240>>2]|0);f=b+212|0;e=b+12+64|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[f+16>>2]=c[e+16>>2];c[f+20>>2]=c[e+20>>2];c[f+24>>2]=c[e+24>>2]}else{f=b+212|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[a+20>>2]=c[f+20>>2];c[a+24>>2]=c[f+24>>2];c[b+204>>2]=1}c[b+240>>2]=c[b+12+12>>2];i=g;return 0}else{if(d)lq(b+12+64|0,c[b+12+12>>2]|0,c[b+240>>2]|0);else{ab(e|0)|0;c[f>>2]=fb(e|0)|0;c[b+12+64>>2]=(c[(c[f>>2]|0)+20>>2]|0)+1900;c[b+12+64+4>>2]=(c[(c[f>>2]|0)+16>>2]|0)+1;c[b+12+64+8>>2]=c[(c[f>>2]|0)+12>>2];c[b+12+64+12>>2]=c[(c[f>>2]|0)+8>>2];c[b+12+64+16>>2]=c[(c[f>>2]|0)+4>>2];c[b+12+64+20>>2]=c[c[f>>2]>>2];c[b+12+64+24>>2]=0;c[b+204>>2]=1}c[b+240>>2]=c[b+12+12>>2];i=g;return 0}return 0}function el(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+8>>2]=c[f>>2];i=d;return 0}function fl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;do if(c[e>>2]|0)if(2==(c[b+8>>2]|0)){c[d>>2]=-2147483642;break}else{c[c[e>>2]>>2]=-1;c[d>>2]=-2147483647;break}else c[d>>2]=-2147483645;while(0);i=f;return c[d>>2]|0}function gl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=c[f>>2]|0;b=a+212|0;e=c[e>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];c[b+16>>2]=c[e+16>>2];c[b+20>>2]=c[e+20>>2];c[b+24>>2]=c[e+24>>2];c[a+208>>2]=1;i=d;return 0}function hl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;Ej(a);c[a>>2]=2532;c[a+4>>2]=0;c[a+8>>2]=2;Ox(a+12|0,0,152)|0;c[a+164>>2]=0;c[a+168>>2]=0;c[a+172>>2]=0;c[a+176>>2]=0;c[a+180>>2]=0;c[a+184>>2]=0;c[a+188>>2]=0;c[a+192>>2]=0;c[a+200>>2]=0;g[a+196>>2]=40.0;d=a+212|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;c[a+208>>2]=0;c[a+204>>2]=0;c[a+240>>2]=0;i=b;return}function il(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=2596;nb[c[(c[a>>2]|0)+28>>2]&127](a)|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;Vi(a);i=b;return}function jl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;il(a);lx(a);i=b;return}function kl(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[a+164>>2]=Ix(2097152)|0;if(!(c[a+164>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}c[a+176>>2]=Ix(2097152)|0;if(!(c[a+176>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}else{c[b>>2]=0;i=d;return c[b>>2]|0}return 0}function ll(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;b=c[b>>2]|0;if(c[b+164>>2]|0){a=c[b+164>>2]|0;if(a|0)Jx(a);c[b+164>>2]=0}if(c[b+176>>2]|0){a=c[b+176>>2]|0;if(a|0)Jx(a);c[b+176>>2]=0}if(c[b+760>>2]|0){a=c[b+760>>2]|0;if(a|0)Jx(a);c[b+760>>2]=0}if(!(c[b+756>>2]|0)){i=d;return 0}a=c[b+756>>2]|0;if(a|0)Jx(a);c[b+756>>2]=0;i=d;return 0}function ml(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+4>>2]=c[f>>2];i=d;return 0}function nl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;h=k+12|0;f=k+8|0;g=k+4|0;j=k;c[f>>2]=b;c[g>>2]=d;c[j>>2]=e;b=c[f>>2]|0;if(!(c[g>>2]|0)){c[h>>2]=-2147483645;j=c[h>>2]|0;i=k;return j|0}else{f=b+620|0;e=c[g>>2]|0;d=f+40|0;do{a[f>>0]=a[e>>0]|0;f=f+1|0;e=e+1|0}while((f|0)<(d|0));c[b+660>>2]=c[j>>2];c[h>>2]=0;j=c[h>>2]|0;i=k;return j|0}return 0}function ol(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;g=c[d>>2]|0;i=f;return g|0}nb[c[(c[b>>2]|0)+28>>2]&127](b)|0;c[b+184>>2]=zh(c[e>>2]|0,1)|0;if(!(c[b+184>>2]|0)){g=za(4)|0;c[g>>2]=-2147483641;Xa(g|0,144,0)}e=Dh(c[b+184>>2]|0)|0;g=b+672|0;c[g>>2]=e;c[g+4>>2]=D;c[b+8>>2]=0;c[b+188>>2]=Kh(0,63,b)|0;if(!(c[b+188>>2]|0)){c[b+8>>2]=2;g=za(4)|0;c[g>>2]=-2147483646;Xa(g|0,144,0)}c[b+692>>2]=1;c[d>>2]=0;g=c[d>>2]|0;i=f;return g|0}function pl(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;d=e+4|0;c[b>>2]=a;if(!(c[b>>2]|0)){i=e;return 0}c[d>>2]=c[b>>2];ql(c[d>>2]|0)|0;i=e;return 0}function ql(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=i;i=i+16|0;f=e+4|0;d=e+8|0;b=e;c[f>>2]=a;a=c[f>>2]|0;while(1){if((c[a+8>>2]|0)==2)break;c[d>>2]=0;c[d>>2]=Ah(c[a+184>>2]|0,2097152-(c[a+172>>2]|0)|0,(c[a+164>>2]|0)+(c[a+172>>2]|0)|0)|0;if(!(c[d>>2]|0)){La(1e4)|0;c[b>>2]=2}else{f=a+172|0;c[f>>2]=(c[f>>2]|0)+(c[d>>2]|0);rl(a)|0;f=a+680|0;g=f;g=Px(c[g>>2]|0,c[g+4>>2]|0,c[d>>2]|0,0)|0;c[f>>2]=g;c[f+4>>2]=D;f=a+672|0;if(0==(c[f>>2]|0)?0==(c[f+4>>2]|0):0)c[a+688>>2]=100;else{f=a+680|0;f=Zx(c[f>>2]|0,c[f+4>>2]|0,100,0)|0;g=a+672|0;g=Xx(f|0,D|0,c[g>>2]|0,c[g+4>>2]|0)|0;c[a+688>>2]=g}c[b>>2]=0}}i=e;return -2147483642}function rl(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;b=g+8|0;h=g+4|0;e=g+12|0;d=g;c[h>>2]=a;a=c[h>>2]|0;while(1){if((c[a+8>>2]|0)==2)break;c[e>>2]=sl(a,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0)|0;switch(c[e>>2]|0){case -1:{c[b>>2]=Ul(a)|0;c[d>>2]=1;break}case -2:{Vl(a)|0;f=a+168|0;c[f>>2]=(c[f>>2]|0)+1;Wl(a)|0;f=8;break}default:{f=a+168|0;c[f>>2]=(c[f>>2]|0)+(c[e>>2]|0);f=8}}if((f|0)==8){f=0;c[d>>2]=0}if((c[d>>2]|0)>>>0>=1){f=10;break}}if((f|0)==10){h=c[b>>2]|0;i=g;return h|0}c[b>>2]=-2147483642;h=c[b>>2]|0;i=g;return h|0}function sl(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;h=j+12|0;k=j+8|0;f=j+4|0;g=j;c[k>>2]=a;c[f>>2]=b;c[g>>2]=e;a=c[k>>2]|0;a:do if(!(c[f>>2]|0))c[h>>2]=-2147483645;else{if((c[g>>2]|0)>>>0<4){c[h>>2]=-1;break}if(((d[c[f>>2]>>0]|0|0)==0?(d[(c[f>>2]|0)+1>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+2>>0]|0|0)==1:0)switch(d[(c[f>>2]|0)+3>>0]|0|0){case 186:{c[h>>2]=tl(a,c[f>>2]|0,c[g>>2]|0)|0;break a}case 188:{c[h>>2]=ul(a,c[f>>2]|0,c[g>>2]|0)|0;break a}case 191:case 189:case 207:case 206:case 205:case 204:case 203:case 202:case 201:case 200:case 199:case 198:case 197:case 196:case 195:case 194:case 193:case 192:case 239:case 238:case 237:case 236:case 235:case 234:case 233:case 232:case 231:case 230:case 229:case 228:case 227:case 226:case 225:case 224:{b=c[f>>2]|0;e=c[g>>2]|0;if(!(c[a+192+28>>2]|0)){c[h>>2]=Cl(a,b,e)|0;break a}else{c[h>>2]=Dl(a,b,e)|0;break a}}default:{c[h>>2]=Cl(a,c[f>>2]|0,c[g>>2]|0)|0;break a}}c[h>>2]=-2}while(0);i=j;return c[h>>2]|0}function tl(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l+16|0;m=l+12|0;g=l+8|0;h=l+4|0;k=l+20|0;j=l;c[m>>2]=a;c[g>>2]=b;c[h>>2]=e;e=c[m>>2]|0;if(!(c[g>>2]|0)){c[f>>2]=-2147483645;m=c[f>>2]|0;i=l;return m|0}if((c[h>>2]|0)>>>0<14){c[f>>2]=-1;m=c[f>>2]|0;i=l;return m|0}if(((d[(c[g>>2]|0)+4>>0]|0)&192|0)!=64){c[f>>2]=-2;m=c[f>>2]|0;i=l;return m|0}c[k>>2]=14+((d[(c[g>>2]|0)+13>>0]|0)&7);if((c[h>>2]|0)>>>0<(c[k>>2]|0)>>>0){c[f>>2]=-1;c[j>>2]=1}else{c[e+192+8>>2]=(((d[(c[g>>2]|0)+4>>0]|0)&56)<<26)+(((d[(c[g>>2]|0)+4>>0]|0)&3)<<27)+(((d[(c[g>>2]|0)+5>>0]|0)&255)<<19)+(((d[(c[g>>2]|0)+6>>0]|0)&248)<<11)+(((d[(c[g>>2]|0)+6>>0]|0)&3)<<12)+(((d[(c[g>>2]|0)+7>>0]|0)&255)<<4)+(((d[(c[g>>2]|0)+8>>0]|0)&240)>>4);if((c[k>>2]|0)==20)c[e+192+28+20+32+16>>2]=((d[(c[g>>2]|0)+16>>0]|0)<<24)+((d[(c[g>>2]|0)+17>>0]|0)<<16)+((d[(c[g>>2]|0)+18>>0]|0)<<8)+(d[(c[g>>2]|0)+19>>0]|0);c[e+192>>2]=1;c[f>>2]=c[k>>2];c[j>>2]=1}m=c[f>>2]|0;i=l;return m|0}function ul(a,b,f){a=a|0;b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+48|0;g=q+32|0;r=q+24|0;h=q+16|0;j=q+8|0;o=q+36|0;k=q;n=q+28|0;m=q+20|0;p=q+12|0;l=q+4|0;c[r>>2]=a;c[h>>2]=b;c[j>>2]=f;f=c[r>>2]|0;if(!(c[h>>2]|0)){c[g>>2]=-2147483645;r=c[g>>2]|0;i=q;return r|0}if((c[j>>2]|0)>>>0<6){c[g>>2]=-1;r=c[g>>2]|0;i=q;return r|0}c[o>>2]=6+((d[(c[h>>2]|0)+4>>0]|0)<<8)+(d[(c[h>>2]|0)+5>>0]|0);do if((c[j>>2]|0)>>>0<(c[o>>2]|0)>>>0){c[g>>2]=-1;c[k>>2]=1}else{if(((c[o>>2]|0)-6|0)>>>0>1024){c[g>>2]=-2;c[k>>2]=1;break}if((c[j>>2]|0)>>>0<10){c[g>>2]=-1;c[k>>2]=1;break}c[n>>2]=((d[(c[h>>2]|0)+8>>0]|0)<<8)+(d[(c[h>>2]|0)+9>>0]|0);do if((c[n>>2]|0)>>>0<=((c[o>>2]|0)-10|0)>>>0){vl(f,(c[h>>2]|0)+10|0,c[n>>2]|0)|0;if((c[j>>2]|0)>>>0<(10+(c[n>>2]|0)+2|0)>>>0){c[g>>2]=-1;c[k>>2]=1;break}c[m>>2]=((d[(c[h>>2]|0)+(10+(c[n>>2]|0))>>0]|0)<<8)+(d[(c[h>>2]|0)+(10+(c[n>>2]|0)+1)>>0]|0);if((c[m>>2]|0)>>>0<=((c[o>>2]|0)-10-(c[n>>2]|0)-2|0)>>>0){c[p>>2]=10+(c[n>>2]|0)+2;a:do if((c[j>>2]|0)>>>0<((c[o>>2]|0)-4|0)>>>0){c[g>>2]=-1;c[k>>2]=1}else{do{switch(d[(c[h>>2]|0)+(c[p>>2]|0)>>0]|0|0){case 128:case 178:case 36:case 177:case 176:case 27:case 16:case 2:{r=f+192+28+4|0;c[r>>2]=c[r>>2]|1;c[f+192+28+8>>2]=d[(c[h>>2]|0)+(c[p>>2]|0)>>0];break}case 15:case 156:case 152:case 150:case 153:case 146:case 144:case 145:case 4:case 3:{r=f+192+28+4|0;c[r>>2]=c[r>>2]|2;c[f+192+28+12>>2]=d[(c[h>>2]|0)+(c[p>>2]|0)>>0];break}case 189:case 191:{r=f+192+28+4|0;c[r>>2]=c[r>>2]|4;c[f+192+28+16>>2]=d[(c[h>>2]|0)+(c[p>>2]|0)>>0];break}default:{}}c[p>>2]=(c[p>>2]|0)+2;c[l>>2]=((d[(c[h>>2]|0)+(c[p>>2]|0)>>0]|0)<<8)+(d[(c[h>>2]|0)+((c[p>>2]|0)+1)>>0]|0);if((c[l>>2]|0)>>>0>((c[o>>2]|0)-(c[p>>2]|0)-2|0)>>>0){c[g>>2]=-2;c[k>>2]=1}else{c[p>>2]=(c[p>>2]|0)+2;vl(f,(c[h>>2]|0)+(c[p>>2]|0)|0,c[l>>2]|0)|0;c[p>>2]=(c[p>>2]|0)+(c[l>>2]|0);c[k>>2]=0}if(c[k>>2]|0)break a}while((c[p>>2]|0)>>>0<((c[o>>2]|0)-4|0)>>>0);c[f+192+28>>2]=1;do if(4==(c[f+660>>2]|0)?1==(e[f+620+10>>1]|0|0):0){if(27==(c[f+192+28+8>>2]|0)){c[f+664>>2]=256;break}if(176==(c[f+192+28+8>>2]|0))c[f+664>>2]=1}while(0);c[f+192>>2]=3;c[g>>2]=c[o>>2];c[k>>2]=1}while(0)}else{c[g>>2]=-2;c[k>>2]=1}}else{c[g>>2]=-2;c[k>>2]=1}while(0)}while(0);r=c[g>>2]|0;i=q;return r|0}function vl(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;j=l+16|0;m=l+12|0;f=l+8|0;g=l+4|0;h=l+20|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g>>2]=e;e=c[m>>2]|0;c[h>>2]=0;if(!(c[f>>2]|0)){c[j>>2]=-2147483645;c[k>>2]=1;m=c[j>>2]|0;i=l;return m|0}if((c[g>>2]|0)>>>0<1){c[j>>2]=-1;c[k>>2]=1;m=c[j>>2]|0;i=l;return m|0}while(1){if(!(c[g>>2]|0)){e=16;break}switch(d[c[f>>2]>>0]|0|0){case 64:{c[h>>2]=wl(e,c[f>>2]|0,c[g>>2]|0)|0;break}case 65:{c[h>>2]=xl(e,c[f>>2]|0,c[g>>2]|0)|0;break}case 66:{c[h>>2]=yl(e,c[f>>2]|0,c[g>>2]|0)|0;break}case 67:{c[h>>2]=zl(e,c[f>>2]|0,c[g>>2]|0)|0;break}case 68:{c[h>>2]=Al(e,c[f>>2]|0,c[g>>2]|0)|0;break}default:c[h>>2]=Bl(e,c[f>>2]|0,c[g>>2]|0)|0}if((c[h>>2]|0)==-1){e=14;break}c[f>>2]=(c[f>>2]|0)+(c[h>>2]|0);c[g>>2]=(c[g>>2]|0)-(c[h>>2]|0)}if((e|0)==14){c[j>>2]=-2;c[k>>2]=1;m=c[j>>2]|0;i=l;return m|0}else if((e|0)==16){c[j>>2]=0;c[k>>2]=1;m=c[j>>2]|0;i=l;return m|0}return 0}function wl(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;l=m;f=m+20|0;n=m+16|0;g=m+12|0;h=m+8|0;k=m+24|0;j=m+4|0;c[n>>2]=a;c[g>>2]=b;c[h>>2]=e;e=c[n>>2]|0;if(!(c[g>>2]|0)){c[f>>2]=-2147483645;n=c[f>>2]|0;i=m;return n|0}if((c[h>>2]|0)>>>0<13){c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}c[k>>2]=2+(d[(c[g>>2]|0)+1>>0]|0);if((c[h>>2]|0)>>>0<(c[k>>2]|0)>>>0){c[f>>2]=-1;c[j>>2]=1}else{if((((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0)|0)!=18507)jq(20810,l);c[e+192+28+20+132>>2]=(d[(c[g>>2]|0)+6>>0]|0)+2e3;c[e+192+28+20+132+4>>2]=(d[(c[g>>2]|0)+7>>0]|0)>>4;c[e+192+28+20+132+8>>2]=((d[(c[g>>2]|0)+7>>0]|0)<<1)+((d[(c[g>>2]|0)+8>>0]|0)>>7)&31;c[e+192+28+20+132+12>>2]=(d[(c[g>>2]|0)+8>>0]|0)>>2&31;c[e+192+28+20+132+16>>2]=((d[(c[g>>2]|0)+8>>0]|0)<<4)+((d[(c[g>>2]|0)+9>>0]|0)>>4)&63;c[e+192+28+20+132+20>>2]=((d[(c[g>>2]|0)+9>>0]|0)<<2)+((d[(c[g>>2]|0)+10>>0]|0)>>6)&63;c[e+192+28+20+132+24>>2]=((d[(c[g>>2]|0)+10>>0]|0)<<5)+((d[(c[g>>2]|0)+11>>0]|0)>>3)&767;c[e+192+28+20>>2]=(d[(c[g>>2]|0)+11>>0]|0)&7;c[e+192+28+20+4>>2]=((d[(c[g>>2]|0)+4>>0]|0)<<8)+(d[(c[g>>2]|0)+5>>0]|0);c[e+192+28+20+8>>2]=((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0);c[e+192+28+20+12>>2]=d[(c[g>>2]|0)+12>>0];c[e+696>>2]=((d[(c[g>>2]|0)+4>>0]|0)<<8)+(d[(c[g>>2]|0)+5>>0]|0);c[e+704>>2]=1;c[f>>2]=c[k>>2];c[j>>2]=1}n=c[f>>2]|0;i=m;return n|0}function xl(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;h=n;k=n+20|0;o=n+16|0;j=n+12|0;g=n+8|0;m=n+24|0;l=n+4|0;c[o>>2]=b;c[j>>2]=e;c[g>>2]=f;f=c[o>>2]|0;if(!(c[j>>2]|0)){c[k>>2]=-2147483645;o=c[k>>2]|0;i=n;return o|0}if((c[g>>2]|0)>>>0<20){c[k>>2]=-1;o=c[k>>2]|0;i=n;return o|0}c[m>>2]=2+(d[(c[j>>2]|0)+1>>0]|0);if((c[g>>2]|0)>>>0<(c[m>>2]|0)>>>0){c[k>>2]=-1;c[l>>2]=1}else{if((((d[(c[j>>2]|0)+2>>0]|0)<<8)+(d[(c[j>>2]|0)+3>>0]|0)|0)!=18507)jq(20810,h);b=f+192+28+20+16|0;f=(c[j>>2]|0)+4|0;e=b+16|0;do{a[b>>0]=a[f>>0]|0;b=b+1|0;f=f+1|0}while((b|0)<(e|0));c[k>>2]=c[m>>2];c[l>>2]=1}o=c[k>>2]|0;i=n;return o|0}function yl(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l+16|0;m=l+12|0;g=l+8|0;h=l+4|0;k=l+20|0;j=l;c[m>>2]=a;c[g>>2]=b;c[h>>2]=e;e=c[m>>2]|0;if(!(c[g>>2]|0)){c[f>>2]=-2147483645;m=c[f>>2]|0;i=l;return m|0}if((c[h>>2]|0)>>>0<16){c[f>>2]=-1;m=c[f>>2]|0;i=l;return m|0}c[k>>2]=2+(d[(c[g>>2]|0)+1>>0]|0);if((c[h>>2]|0)>>>0<(c[k>>2]|0)>>>0){c[f>>2]=-1;c[j>>2]=1}else{c[e+192+28+20+32>>2]=((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0);c[e+192+28+20+32+4>>2]=((d[(c[g>>2]|0)+4>>0]|0)>>1)+2e3;c[e+192+28+20+32+8>>2]=(((d[(c[g>>2]|0)+4>>0]|0)&1)<<3)+((d[(c[g>>2]|0)+5>>0]|0)>>5)&15;c[e+192+28+20+32+12>>2]=(d[(c[g>>2]|0)+5>>0]|0)&31;c[e+192+28+20+32+20>>2]=((d[(c[g>>2]|0)+6>>0]|0)<<8)+(d[(c[g>>2]|0)+7>>0]|0);c[e+192+28+20+32+24>>2]=((d[(c[g>>2]|0)+8>>0]|0)<<8)+(d[(c[g>>2]|0)+9>>0]|0);c[e+192+28+20+32+28>>2]=(d[(c[g>>2]|0)+10>>0]|0)>>7;c[e+192+28+20+32+32>>2]=(d[(c[g>>2]|0)+10>>0]|0)>>5&3;c[e+192+28+20+32+40>>2]=(d[(c[g>>2]|0)+10>>0]|0)>>3&1;c[e+192+28+20+32+44>>2]=(d[(c[g>>2]|0)+10>>0]|0)&7;c[e+192+28+20+32+60>>2]=(d[(c[g>>2]|0)+11>>0]|0)>>5;c[e+192+28+20+32+52>>2]=((d[(c[g>>2]|0)+13>>0]|0)<<15)+((d[(c[g>>2]|0)+14>>0]|0)<<7)+((d[(c[g>>2]|0)+15>>0]|0)>>1);c[e+192+28+20+32+48>>2]=(d[(c[g>>2]|0)+15>>0]|0)&1;c[e+192+28+20+32+56>>2]=(d[(c[g>>2]|0)+11>>0]|0)&3;if((c[e+696>>2]|0)>>>0>1)c[e+192+28+20+32+36>>2]=(d[(c[g>>2]|0)+10>>0]|0)>>4&1;else c[e+192+28+20+32+36>>2]=1;if(!((c[e+192+28+20+32+52>>2]|0)!=0?(c[e+192+28+20+32+52>>2]|0)>>>0<=144e4:0))c[e+192+28+20+32+52>>2]=3600;c[e+192+28+20+32+64>>2]=0;c[e+192+28+20+32+68>>2]=0;c[e+192+28+20+32+72>>2]=0;c[e+192+28+20+32+76>>2]=0;c[e+192+28+20+32+80>>2]=0;if(c[e+192+28+20+32+20>>2]|0?c[e+192+28+20+32+24>>2]|0:0)c[e+708>>2]=1;c[f>>2]=c[k>>2];c[j>>2]=1}m=c[f>>2]|0;i=l;return m|0}function zl(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l+16|0;m=l+12|0;g=l+8|0;h=l+4|0;k=l+20|0;j=l;c[m>>2]=a;c[g>>2]=b;c[h>>2]=e;e=c[m>>2]|0;if(!(c[g>>2]|0)){c[f>>2]=-2147483645;m=c[f>>2]|0;i=l;return m|0}if((c[h>>2]|0)>>>0<11){c[f>>2]=-1;m=c[f>>2]|0;i=l;return m|0}c[k>>2]=2+(d[(c[g>>2]|0)+1>>0]|0);if((c[h>>2]|0)>>>0<(c[k>>2]|0)>>>0){c[f>>2]=-1;c[j>>2]=1}else{c[e+192+28+20+116>>2]=((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0);c[e+192+28+20+116+4>>2]=(d[(c[g>>2]|0)+4>>0]|0)&1;c[e+192+28+20+116+8>>2]=((d[(c[g>>2]|0)+5>>0]|0)<<14)+((d[(c[g>>2]|0)+6>>0]|0)<<6)+((d[(c[g>>2]|0)+7>>0]|0)>>2);c[e+192+28+20+116+12>>2]=((d[(c[g>>2]|0)+8>>0]|0)<<14)+((d[(c[g>>2]|0)+9>>0]|0)<<6)+((d[(c[g>>2]|0)+10>>0]|0)>>2);c[e+700>>2]=1;c[f>>2]=c[k>>2];c[j>>2]=1}m=c[f>>2]|0;i=l;return m|0}function Al(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l+16|0;m=l+12|0;g=l+8|0;h=l+4|0;k=l+20|0;j=l;c[m>>2]=a;c[g>>2]=b;c[h>>2]=e;e=c[m>>2]|0;if(!(c[g>>2]|0)){c[f>>2]=-2147483645;m=c[f>>2]|0;i=l;return m|0}if((c[h>>2]|0)>>>0<10){c[f>>2]=-1;m=c[f>>2]|0;i=l;return m|0}c[k>>2]=2+(d[(c[g>>2]|0)+1>>0]|0);if((c[h>>2]|0)>>>0<(c[k>>2]|0)>>>0){c[f>>2]=-1;c[j>>2]=1}else{c[e+192+28+20+32+64>>2]=1;c[e+192+28+20+32+68>>2]=((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0);c[e+192+28+20+32+72>>2]=(((d[(c[g>>2]|0)+4>>0]|0)&127)<<7)+((d[(c[g>>2]|0)+5>>0]|0)>>1);c[e+192+28+20+32+76>>2]=((d[(c[g>>2]|0)+6>>0]|0)<<8)+(d[(c[g>>2]|0)+7>>0]|0);c[e+192+28+20+32+80>>2]=((d[(c[g>>2]|0)+8>>0]|0)<<8)+(d[(c[g>>2]|0)+9>>0]|0);if(!((c[e+192+28+20+32+76>>2]|0)!=0?(c[e+192+28+20+32+76>>2]|0)>>>0<=(c[e+192+28+20+32+20>>2]|0)>>>0:0))c[e+192+28+20+32+76>>2]=c[e+192+28+20+32+20>>2];if(!((c[e+192+28+20+32+80>>2]|0)!=0?(c[e+192+28+20+32+80>>2]|0)>>>0<=(c[e+192+28+20+32+24>>2]|0)>>>0:0))c[e+192+28+20+32+80>>2]=c[e+192+28+20+32+24>>2];c[f>>2]=c[k>>2];c[j>>2]=1}m=c[f>>2]|0;i=l;return m|0}function Bl(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;f=l+16|0;g=l+8|0;h=l+4|0;k=l+20|0;j=l;c[l+12>>2]=a;c[g>>2]=b;c[h>>2]=e;if(!(c[g>>2]|0)){c[f>>2]=-2147483645;a=c[f>>2]|0;i=l;return a|0}if((c[h>>2]|0)>>>0<2){c[f>>2]=-1;a=c[f>>2]|0;i=l;return a|0}c[k>>2]=2+(d[(c[g>>2]|0)+1>>0]|0);if((c[h>>2]|0)>>>0<(c[k>>2]|0)>>>0){c[f>>2]=-1;c[j>>2]=1}else{c[f>>2]=c[k>>2];c[j>>2]=1}a=c[f>>2]|0;i=l;return a|0}function Cl(a,b,f){a=a|0;b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;g=o+24|0;p=o+16|0;h=o+8|0;j=o+4|0;l=o+28|0;k=o;n=o+20|0;m=o+12|0;c[p>>2]=a;c[h>>2]=b;c[j>>2]=f;f=c[p>>2]|0;if(!(c[h>>2]|0)){c[g>>2]=-2147483645;p=c[g>>2]|0;i=o;return p|0}if((c[j>>2]|0)>>>0<6){c[g>>2]=-1;p=c[g>>2]|0;i=o;return p|0}c[l>>2]=6+((d[(c[h>>2]|0)+4>>0]|0)<<8)+(d[(c[h>>2]|0)+5>>0]|0);if((c[j>>2]|0)>>>0<(c[l>>2]|0)>>>0){c[g>>2]=-1;c[k>>2]=1}else{c[n>>2]=0;if(((((d[(c[h>>2]|0)+3>>0]|0|0)>223?(d[(c[h>>2]|0)+3>>0]|0|0)<240:0)?1==(e[f+620+10>>1]|0|0):0)?4==(c[f+660>>2]|0):0)?((d[(c[h>>2]|0)+7>>0]|0)&192)>>6|0:0){c[m>>2]=d[(c[h>>2]|0)+8>>0];do if((c[l>>2]|0)>>>0>((c[m>>2]|0)+9+4|0)>>>0){c[n>>2]=(c[h>>2]|0)+(c[m>>2]|0)+9+4;if(((0==(d[c[n>>2]>>0]|0|0)?0==(d[(c[n>>2]|0)+1>>0]|0|0):0)?0==(d[(c[n>>2]|0)+2>>0]|0|0):0)?1==(d[(c[n>>2]|0)+2>>0]|0|0):0){c[f+664>>2]=256;break}c[f+664>>2]=1}while(0)}c[g>>2]=c[l>>2];c[k>>2]=1}p=c[g>>2]|0;i=o;return p|0}function Dl(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+48|0;f=p+28|0;q=p+20|0;g=p+12|0;h=p+4|0;n=p+32|0;k=p+24|0;j=p;l=p+16|0;m=p+8|0;c[q>>2]=a;c[g>>2]=b;c[h>>2]=e;e=c[q>>2]|0;c[n>>2]=0;c[k>>2]=0;if(!(c[g>>2]|0)){c[f>>2]=-2147483645;c[j>>2]=1;q=c[f>>2]|0;i=p;return q|0}if((c[h>>2]|0)>>>0<14){c[f>>2]=-1;c[j>>2]=1;q=c[f>>2]|0;i=p;return q|0}if((c[h>>2]|0)>>>0<((d[(c[g>>2]|0)+8>>0]|0)+8|0)>>>0){c[f>>2]=-1;c[j>>2]=1;q=c[f>>2]|0;i=p;return q|0}c[l>>2]=6+((d[(c[g>>2]|0)+4>>0]|0)<<8)+(d[(c[g>>2]|0)+5>>0]|0);do if((c[h>>2]|0)>>>0<(c[l>>2]|0)>>>0){c[f>>2]=-1;c[j>>2]=1}else{if(((d[(c[g>>2]|0)+6>>0]|0)&128|0)!=128){c[f>>2]=-2;c[j>>2]=1;break}do if((d[(c[g>>2]|0)+3>>0]|0|0)>223?(d[(c[g>>2]|0)+3>>0]|0|0)<240:0){if(1!=(c[e+708>>2]|0)){c[e+192>>2]=1;break}if(!((d[(c[g>>2]|0)+6>>0]|0)>>3&1))c[e+192>>2]=0}else o=17;while(0);do if((o|0)==17){if((d[(c[g>>2]|0)+3>>0]|0|0)>191?(d[(c[g>>2]|0)+3>>0]|0|0)<224:0){c[e+192>>2]=4;break}c[e+192>>2]=5}while(0);c[e+192+12>>2]=(d[(c[g>>2]|0)+6>>0]|0)>>4&3;if(((d[(c[g>>2]|0)+7>>0]|0)&192)>>6|0)c[e+192+16>>2]=(((d[(c[g>>2]|0)+9>>0]|0)&14)<<28)+((d[(c[g>>2]|0)+10>>0]|0)<<21)+(((d[(c[g>>2]|0)+11>>0]|0)&254)<<13)+((d[(c[g>>2]|0)+12>>0]|0)<<6)+(((d[(c[g>>2]|0)+13>>0]|0)&252)>>2);if((c[l>>2]|0)>>>0<((d[(c[g>>2]|0)+8>>0]|0)+9|0)>>>0){c[f>>2]=-2;c[j>>2]=1;break}if(1==(c[e+708>>2]|0)){c[m>>2]=~(d[(c[g>>2]|0)+((d[(c[g>>2]|0)+8>>0]|0)+8)>>0]|0);if((((c[m>>2]|0)>>>1&1|0?c[e+608>>2]|0:0)?(c[e+608>>2]=0,El(e,e+192|0,e+400|0)|0):0)?(c[n>>2]=Fl(e,e+400|0)|0,0!=(c[n>>2]|0)):0){c[f>>2]=-2;c[j>>2]=1}else o=31;a:do if((o|0)==31){Rl(e,(c[g>>2]|0)+(d[(c[g>>2]|0)+8>>0]|0)+9|0,(c[l>>2]|0)-(d[(c[g>>2]|0)+8>>0]|0)-9|0)|0;do if(c[m>>2]&1|0){Sl(e,e+192|0)|0;if(!(Tl(e,e+192|0)|0)){Tx(e+400|0,e+192|0,208)|0;c[e+608>>2]=1;break}c[n>>2]=Fl(e,e+192|0)|0;if(c[n>>2]|0){c[f>>2]=-2;c[j>>2]=1;break a}}while(0);c[j>>2]=0}while(0);if(c[j>>2]|0)break}else{c[k>>2]=El(e,e+192|0,e+400|0)|0;if((1==(c[k>>2]|0)?(c[e+180>>2]|0)>>>0>0:0)?(c[n>>2]=Fl(e,e+400|0)|0,0!=(c[n>>2]|0)):0){c[f>>2]=-2;c[j>>2]=1;break}Rl(e,(c[g>>2]|0)+(d[(c[g>>2]|0)+8>>0]|0)+9|0,(c[l>>2]|0)-(d[(c[g>>2]|0)+8>>0]|0)-9|0)|0;Tx(e+400|0,e+192|0,208)|0}c[f>>2]=c[l>>2];c[j>>2]=1}while(0);q=c[f>>2]|0;i=p;return q|0}function El(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+12|0;f=h+4|0;g=h;c[h+8>>2]=a;c[f>>2]=b;c[g>>2]=d;do if(!((c[f>>2]|0)==0|(c[g>>2]|0)==0)){if((c[c[f>>2]>>2]|0)!=(c[c[g>>2]>>2]|0)){c[e>>2]=1;break}if((c[(c[f>>2]|0)+16>>2]|0)!=(c[(c[g>>2]|0)+16>>2]|0)){c[e>>2]=1;break}else{c[e>>2]=0;break}}else c[e>>2]=-2147483645;while(0);i=h;return c[e>>2]|0}function Fl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+12|0;j=h+8|0;e=h+4|0;g=h+16|0;f=h;c[j>>2]=a;c[e>>2]=b;b=c[j>>2]|0;c[g>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;c[f>>2]=1;j=c[d>>2]|0;i=h;return j|0}do if(!(Gl(b,c[e>>2]|0)|0)){if(4==(c[b+12>>2]|0)){c[g>>2]=Ll(b,c[e>>2]|0)|0;break}if((1!=(c[b+12>>2]|0)?2!=(c[b+12>>2]|0):0)?3!=(c[b+12>>2]|0):0){j=c[b+4>>2]|0;pb[c[(c[j>>2]|0)+28>>2]&31](j,c[b+176>>2]|0,c[b+180>>2]|0,b+12|0)|0;break}c[g>>2]=Nl(b,c[e>>2]|0)|0}while(0);c[b+180>>2]=0;if(c[g>>2]|0){c[d>>2]=c[g>>2];c[f>>2]=1;j=c[d>>2]|0;i=h;return j|0}else{c[d>>2]=0;c[f>>2]=1;j=c[d>>2]|0;i=h;return j|0}return 0}function Gl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,j=0;h=i;i=i+16|0;d=h+8|0;j=h+4|0;e=h;c[j>>2]=a;c[e>>2]=b;b=c[j>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;j=c[d>>2]|0;i=h;return j|0}c[b+12+12>>2]=((c[(c[e>>2]|0)+16>>2]|0)>>>0)/45|0;if(!(3!=(c[c[e>>2]>>2]|0)?1!=(c[c[e>>2]>>2]|0):0))f=5;do if((f|0)==5){if(1==(c[b+704>>2]|0))Hl(b,c[e>>2]|0)|0;else Il(b)|0;if(1==(c[b+708>>2]|0)){Jl(b,c[e>>2]|0)|0;break}else{Kl(b)|0;j=pq(c[b+12>>2]|0)|0;c[c[e>>2]>>2]=j;break}}while(0);if(!(c[b+712>>2]|0))c[b+12+8>>2]=c[(c[e>>2]|0)+28+20+32+16>>2];c[b+12+24>>2]=c[(c[e>>2]|0)+28+20+32+28>>2];c[b+12+28>>2]=c[(c[e>>2]|0)+28+20+32+32>>2];c[b+12+32>>2]=c[(c[e>>2]|0)+28+20+4>>2];c[b+12+36>>2]=c[(c[e>>2]|0)+28+20+8>>2];c[b+12+40>>2]=c[(c[e>>2]|0)+28+20+12>>2];c[b+12+44>>2]=c[(c[e>>2]|0)+28+20+32+36>>2];c[b+12+48>>2]=c[(c[e>>2]|0)+28+20+32+40>>2];c[b+12+56>>2]=c[(c[e>>2]|0)+28+20+32+56>>2];c[b+12+52>>2]=c[(c[e>>2]|0)+12>>2];switch(c[c[e>>2]>>2]|0){case 3:{if((c[b+612>>2]|0)>>>0>0)c[b+612>>2]=0;c[b+12>>2]=1;c[b+12+4>>2]=c[b+664>>2];if(c[b+192+28+4>>2]&2|0)c[b+12+92+8>>2]=c[b+192+28+12>>2];if(c[b+700>>2]|0){c[b+12+92>>2]=1;c[b+12+92+12>>2]=(c[b+192+28+20+116+4>>2]|0)+1;c[b+12+92+24>>2]=c[b+192+28+20+116>>2];c[b+12+92+16>>2]=c[b+192+28+20+116+8>>2];c[b+12+92+20>>2]=c[b+192+28+20+116+12>>2]}break}case 1:{if((c[b+612>>2]|0)>>>0>0)c[b+612>>2]=0;c[b+12>>2]=2;c[b+12+4>>2]=c[b+664>>2];break}case 0:{j=b+612|0;c[j>>2]=(c[j>>2]|0)+1;c[b+12>>2]=3;c[b+12+4>>2]=c[b+664>>2];c[b+12+8>>2]=(c[(c[e>>2]|0)+28+20+32+16>>2]|0)+(c[b+612>>2]|0);break}case 4:{if((c[b+612>>2]|0)>>>0>0)c[b+612>>2]=0;c[b+12>>2]=4;c[b+12+8>>2]=-1;g[b+12+60>>2]=40.0;break}case 5:{if((c[b+612>>2]|0)>>>0>0)c[b+612>>2]=0;c[b+12>>2]=5;c[b+12+8>>2]=-1;g[b+12+60>>2]=40.0;break}default:{c[d>>2]=-2147483647;j=c[d>>2]|0;i=h;return j|0}}c[d>>2]=0;j=c[d>>2]|0;i=h;return j|0}function Hl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;g=c[d>>2]|0;i=f;return g|0}else{c[b+12+64>>2]=c[(c[e>>2]|0)+28+20+132>>2];c[b+12+64+4>>2]=c[(c[e>>2]|0)+28+20+132+4>>2];c[b+12+64+8>>2]=c[(c[e>>2]|0)+28+20+132+8>>2];c[b+12+64+12>>2]=c[(c[e>>2]|0)+28+20+132+12>>2];c[b+12+64+16>>2]=c[(c[e>>2]|0)+28+20+132+16>>2];c[b+12+64+20>>2]=c[(c[e>>2]|0)+28+20+132+20>>2];c[b+12+64+24>>2]=c[(c[e>>2]|0)+28+20+132+24>>2];c[d>>2]=0;g=c[d>>2]|0;i=f;return g|0}return 0}function Il(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+4|0;e=g+8|0;f=g;c[b>>2]=a;b=c[b>>2]|0;d=1==(c[b+716>>2]|0);if(1==(c[b+720>>2]|0)){a=b+12+64|0;if(d){lq(a,c[b+12+12>>2]|0,c[b+752>>2]|0);f=b+724|0;e=b+12+64|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[f+16>>2]=c[e+16>>2];c[f+20>>2]=c[e+20>>2];c[f+24>>2]=c[e+24>>2]}else{f=b+724|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[a+20>>2]=c[f+20>>2];c[a+24>>2]=c[f+24>>2];c[b+716>>2]=1}c[b+752>>2]=c[b+12+12>>2];i=g;return 0}else{if(d)lq(b+12+64|0,c[b+12+12>>2]|0,c[b+752>>2]|0);else{ab(e|0)|0;c[f>>2]=fb(e|0)|0;c[b+12+64>>2]=(c[(c[f>>2]|0)+20>>2]|0)+1900;c[b+12+64+4>>2]=(c[(c[f>>2]|0)+16>>2]|0)+1;c[b+12+64+8>>2]=c[(c[f>>2]|0)+12>>2];c[b+12+64+12>>2]=c[(c[f>>2]|0)+8>>2];c[b+12+64+16>>2]=c[(c[f>>2]|0)+4>>2];c[b+12+64+20>>2]=c[c[f>>2]>>2];c[b+12+64+24>>2]=0;c[b+716>>2]=1}c[b+752>>2]=c[b+12+12>>2];i=g;return 0}return 0}function Jl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0;f=i;i=i+16|0;d=f+8|0;h=f+4|0;e=f;c[h>>2]=a;c[e>>2]=b;a=c[h>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;h=c[d>>2]|0;i=f;return h|0}b=(c[e>>2]|0)+28+20+32|0;if(c[(c[e>>2]|0)+28+20+32+64>>2]|0){c[a+12+16>>2]=c[b+76>>2];c[a+12+20>>2]=c[(c[e>>2]|0)+28+20+32+80>>2]}else{c[a+12+16>>2]=c[b+20>>2];c[a+12+20>>2]=c[(c[e>>2]|0)+28+20+32+24>>2]}g[a+12+60>>2]=+((c[(c[e>>2]|0)+28+20+32+52>>2]|0)>>>0)/90.0;c[d>>2]=0;h=c[d>>2]|0;i=f;return h|0}function Kl(a){a=a|0;var b=0,d=0,f=0,h=0,j=0,k=0;j=i;i=i+32|0;b=j+20|0;k=j+4|0;f=j+24|0;h=j+8|0;d=j;c[k>>2]=a;a=c[k>>2]|0;c[f>>2]=0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[f>>2]=xq(e[a+620+10>>1]|0,c[a+176>>2]|0,c[a+180>>2]|0,h)|0;if(c[f>>2]|0){c[b>>2]=c[f>>2];c[d>>2]=1;k=c[b>>2]|0;i=j;return k|0}switch(e[h+4>>1]|0|0){case 3:{c[a+12+16>>2]=e[h>>1];c[a+12+20>>2]=e[h+2>>1];if(+g[h+8>>2]>0.0?+g[h+8>>2]<100.0:0)g[a+12+60>>2]=1.0e3/+g[h+8>>2];else g[a+12+60>>2]=40.0;c[a+12>>2]=1;break}case 2:{c[a+12>>2]=2;break}case 1:{c[a+12>>2]=3;break}default:{}}k=a+712|0;c[k>>2]=(c[k>>2]|0)+1;c[a+12+8>>2]=c[a+712>>2];c[b>>2]=0;c[d>>2]=1;k=c[b>>2]|0;i=j;return k|0}function Ll(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+48|0;d=o+32|0;p=o+24|0;e=o+16|0;m=o+36|0;j=o+28|0;l=o+20|0;h=o+12|0;g=o+8|0;f=o;k=o+4|0;c[p>>2]=a;c[e>>2]=b;b=c[p>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;p=c[d>>2]|0;i=o;return p|0}c[m>>2]=0;c[j>>2]=0;c[l>>2]=0;c[h>>2]=0;c[g>>2]=0;if((c[(c[e>>2]|0)+16>>2]|0)==0?(c[b+180>>2]|0)==0:0){c[d>>2]=0;c[f>>2]=1}else n=6;do if((n|0)==6){p=(c[(c[e>>2]|0)+28+12>>2]|0)==15;c[m>>2]=c[b+176>>2];c[j>>2]=c[b+180>>2];if(p){c[b+12+92+28>>2]=1;c[l>>2]=(c[b+176>>2]|0)+7;c[h>>2]=(c[b+180>>2]|0)-7}else{c[l>>2]=c[b+176>>2];c[h>>2]=c[b+180>>2]}if(c[(c[e>>2]|0)+12>>2]|0?c[b+756>>2]|0:0){c[k>>2]=(c[(c[e>>2]|0)+12>>2]|0)==2?10:3;c[g>>2]=Ml(b,c[l>>2]|0,c[h>>2]|0,c[k>>2]|0)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];c[f>>2]=1}else c[f>>2]=0;if(c[f>>2]|0)break}if(c[(c[e>>2]|0)+12>>2]|0?c[b+768>>2]|0:0)c[b+12+52>>2]=0;else c[b+12+52>>2]=c[(c[e>>2]|0)+12>>2];p=c[b+4>>2]|0;c[d>>2]=pb[c[(c[p>>2]|0)+28>>2]&31](p,c[m>>2]|0,c[j>>2]|0,b+12|0)|0;c[f>>2]=1}while(0);p=c[d>>2]|0;i=o;return p|0}function Ml(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;f=m+20|0;n=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;l=m+24|0;k=m;c[n>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;d=c[n>>2]|0;if(!(c[g>>2]|0)){c[f>>2]=-2147483645;n=c[f>>2]|0;i=m;return n|0}c[l>>2]=(c[j>>2]|0)+1<<4;if((c[d+760>>2]|0)!=0?(c[l>>2]|0)>>>0<=(c[d+764>>2]|0)>>>0:0)e=8;else e=5;do if((e|0)==5){c[d+760>>2]=Ix(c[l>>2]|0)|0;if(!(c[d+760>>2]|0)){c[f>>2]=-2147483646;c[k>>2]=1;break}else{c[d+764>>2]=c[l>>2];Pp(c[d+756>>2]|0,c[d+760>>2]|0,c[j>>2]|0);e=8;break}}while(0);if((e|0)==8){Sp(c[g>>2]|0,c[h>>2]|0,c[d+760>>2]|0,c[j>>2]|0);c[f>>2]=0;c[k>>2]=1}n=c[f>>2]|0;i=m;return n|0}function Nl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+12|0;k=j+8|0;e=j+4|0;g=j+16|0;f=j;c[k>>2]=a;c[e>>2]=b;b=c[k>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;k=c[d>>2]|0;i=j;return k|0}c[g>>2]=0;switch(c[(c[e>>2]|0)+28+8>>2]|0){case 27:{if(((c[(c[e>>2]|0)+28+20+8>>2]|0)==18507?c[(c[e>>2]|0)+12>>2]|0:0)?c[b+756>>2]|0:0)Ol(b,c[b+176>>2]|0,c[b+180>>2]|0,(c[(c[e>>2]|0)+12>>2]|0)==2?10:3)|0;if(c[(c[e>>2]|0)+12>>2]|0?c[b+768>>2]|0:0)c[b+12+52>>2]=0;else c[b+12+52>>2]=c[(c[e>>2]|0)+12>>2];h=c[b+4>>2]|0;c[g>>2]=pb[c[(c[h>>2]|0)+28>>2]&31](h,c[b+176>>2]|0,c[b+180>>2]|0,b+12|0)|0;h=28;break}case 178:case 36:{if(((c[(c[e>>2]|0)+28+20+8>>2]|0)==18507?c[(c[e>>2]|0)+12>>2]|0:0)?c[b+756>>2]|0:0)Ql(b,c[b+176>>2]|0,c[b+180>>2]|0,(c[(c[e>>2]|0)+12>>2]|0)==2?10:3)|0;if(c[(c[e>>2]|0)+12>>2]|0?c[b+768>>2]|0:0)c[b+12+52>>2]=0;else c[b+12+52>>2]=c[(c[e>>2]|0)+12>>2];h=c[b+4>>2]|0;c[g>>2]=pb[c[(c[h>>2]|0)+28>>2]&31](h,c[b+176>>2]|0,c[b+180>>2]|0,b+12|0)|0;h=28;break}case 176:{if(c[(c[e>>2]|0)+12>>2]|0?c[b+756>>2]|0:0)Ml(b,(c[b+176>>2]|0)+20|0,(c[b+180>>2]|0)-20|0,3)|0;h=c[b+4>>2]|0;c[g>>2]=pb[c[(c[h>>2]|0)+28>>2]&31](h,c[b+176>>2]|0,c[b+180>>2]|0,b+12|0)|0;h=28;break}case 128:case 16:case 2:case 177:{h=c[b+4>>2]|0;c[g>>2]=pb[c[(c[h>>2]|0)+28>>2]&31](h,c[b+176>>2]|0,c[b+180>>2]|0,b+12|0)|0;h=28;break}default:{c[d>>2]=-2147483647;c[f>>2]=1}}if((h|0)==28){c[d>>2]=c[g>>2];c[f>>2]=1}k=c[d>>2]|0;i=j;return k|0}function Ol(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;h=o+24|0;p=o+16|0;j=o+12|0;k=o+8|0;l=o+4|0;g=o+28|0;m=o;n=o+20|0;c[p>>2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;f=c[p>>2]|0;if(!(c[j>>2]|0)){c[h>>2]=-2147483645;p=c[h>>2]|0;i=o;return p|0}c[g>>2]=(c[l>>2]|0)+1<<4;if((c[f+760>>2]|0)!=0?(c[g>>2]|0)>>>0<=(c[f+764>>2]|0)>>>0:0)e=8;else e=5;do if((e|0)==5){c[f+760>>2]=Ix(c[g>>2]|0)|0;if(!(c[f+760>>2]|0)){c[h>>2]=-2147483646;c[m>>2]=1;break}else{c[f+764>>2]=c[g>>2];Pp(c[f+756>>2]|0,c[f+760>>2]|0,c[l>>2]|0);e=8;break}}while(0);if((e|0)==8){while(1){if((c[k>>2]|0)==0|(c[k>>2]|0)>>>0<4)break;c[n>>2]=Pl(f,(c[j>>2]|0)+4|0,(c[k>>2]|0)-4|0)|0;if((c[n>>2]|0)<0)c[n>>2]=(c[k>>2]|0)-4;e=(c[j>>2]|0)+4|0;if((c[l>>2]|0)==3){Sp(e,16,c[f+760>>2]|0,c[l>>2]|0);if(((d[(c[j>>2]|0)+4>>0]|0)&31|0)!=5?((d[(c[j>>2]|0)+4>>0]|0)&31|0)!=1:0)Sp((c[j>>2]|0)+20|0,(c[n>>2]|0)-16|0,c[f+760>>2]|0,c[l>>2]|0)}else Sp(e,c[n>>2]|0,c[f+760>>2]|0,c[l>>2]|0);c[j>>2]=(c[j>>2]|0)+(4+(c[n>>2]|0));c[k>>2]=(c[k>>2]|0)-(4+(c[n>>2]|0));e=8}c[h>>2]=0;c[m>>2]=1}p=c[h>>2]|0;i=o;return p|0}function Pl(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+16|0;f=l+8|0;g=l+4|0;k=l+20|0;j=l;c[l+12>>2]=a;c[f>>2]=b;c[g>>2]=e;if(!(c[f>>2]|0)){c[h>>2]=-2147483645;k=c[h>>2]|0;i=l;return k|0}if((c[g>>2]|0)>>>0<4){c[h>>2]=-1;k=c[h>>2]|0;i=l;return k|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=((c[g>>2]|0)-3|0)>>>0){f=7;break}if((((d[(c[f>>2]|0)+(c[k>>2]|0)>>0]|0|0)==0?(d[(c[f>>2]|0)+((c[k>>2]|0)+1)>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+2)>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+3)>>0]|0|0)==1:0){f=15;break}if(((d[(c[f>>2]|0)+(c[k>>2]|0)>>0]|0|0)==0?(d[(c[f>>2]|0)+((c[k>>2]|0)+1)>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+2)>>0]|0|0)==1:0){f=15;break}c[k>>2]=(c[k>>2]|0)+1}if((f|0)==7)c[j>>2]=2;else if((f|0)==15){c[h>>2]=c[k>>2];c[j>>2]=1}if(((c[j>>2]|0)+-2|0)>>>0>=1){k=c[h>>2]|0;i=l;return k|0}c[h>>2]=-1;k=c[h>>2]|0;i=l;return k|0}function Ql(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;n=i;i=i+32|0;f=n+24|0;o=n+16|0;g=n+12|0;h=n+8|0;j=n+4|0;l=n+28|0;k=n;m=n+20|0;c[o>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;d=c[o>>2]|0;if(!(c[g>>2]|0)){c[f>>2]=-2147483645;o=c[f>>2]|0;i=n;return o|0}c[l>>2]=(c[j>>2]|0)+1<<4;if((c[d+760>>2]|0)!=0?(c[l>>2]|0)>>>0<=(c[d+764>>2]|0)>>>0:0)e=8;else e=5;do if((e|0)==5){c[d+760>>2]=Ix(c[l>>2]|0)|0;if(!(c[d+760>>2]|0)){c[f>>2]=-2147483646;c[k>>2]=1;break}else{c[d+764>>2]=c[l>>2];Pp(c[d+756>>2]|0,c[d+760>>2]|0,c[j>>2]|0);e=8;break}}while(0);if((e|0)==8){while(1){if((c[h>>2]|0)==0|(c[h>>2]|0)>>>0<4)break;c[m>>2]=Pl(d,(c[g>>2]|0)+4|0,(c[h>>2]|0)-4|0)|0;if((c[m>>2]|0)<0)c[m>>2]=(c[h>>2]|0)-4;if((c[j>>2]|0)!=3){if((c[m>>2]|0)>=6)Sp((c[g>>2]|0)+6|0,(c[m>>2]|0)-2|0,c[d+760>>2]|0,c[j>>2]|0)}else Sp((c[g>>2]|0)+6|0,16,c[d+760>>2]|0,c[j>>2]|0);c[g>>2]=(c[g>>2]|0)+(4+(c[m>>2]|0));c[h>>2]=(c[h>>2]|0)-(4+(c[m>>2]|0));e=8}c[f>>2]=0;c[k>>2]=1}o=c[f>>2]|0;i=n;return o|0}function Rl(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[j>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;j=c[e>>2]|0;i=h;return j|0}if(((c[d+180>>2]|0)+(c[g>>2]|0)|0)>>>0>2097152){c[e>>2]=-2147483643;j=c[e>>2]|0;i=h;return j|0}else{Tx((c[d+176>>2]|0)+(c[d+180>>2]|0)|0,c[f>>2]|0,c[g>>2]|0)|0;j=d+180|0;c[j>>2]=(c[j>>2]|0)+(c[g>>2]|0);c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function Sl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;g=c[d>>2]|0;i=f;return g|0}switch(c[c[e>>2]>>2]|0){case 3:{c[b+616>>2]=c[(c[e>>2]|0)+16>>2];break}case 1:{lq((c[e>>2]|0)+28+20+132|0,c[(c[e>>2]|0)+16>>2]|0,c[b+616>>2]|0);c[b+616>>2]=c[(c[e>>2]|0)+16>>2];break}default:{}}c[d>>2]=0;g=c[d>>2]|0;i=f;return g|0}function Tl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+8|0;e=f;c[f+4>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;a=c[d>>2]|0;i=f;return a|0}if(((c[c[e>>2]>>2]|0)!=3?(c[c[e>>2]>>2]|0)!=1:0)?c[c[e>>2]>>2]|0:0){c[d>>2]=1;a=c[d>>2]|0;i=f;return a|0}if((((c[(c[e>>2]|0)+28+8>>2]|0)!=27?(c[(c[e>>2]|0)+28+8>>2]|0)!=36:0)?(c[(c[e>>2]|0)+28+8>>2]|0)!=178:0)?(c[(c[e>>2]|0)+28+8>>2]|0)!=128:0){c[d>>2]=1;a=c[d>>2]|0;i=f;return a|0}c[d>>2]=0;a=c[d>>2]|0;i=f;return a|0}function Ul(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;c[a+772>>2]=1;if(!(c[a+168>>2]|0)){c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}if((c[a+172>>2]|0)>>>0>(c[a+168>>2]|0)>>>0)Ux(c[a+164>>2]|0,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0)|0;c[a+172>>2]=(c[a+172>>2]|0)-(c[a+168>>2]|0);c[a+168>>2]=0;c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}function Vl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+608>>2]=0;c[a+180>>2]=0;i=b;return 0}function Wl(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d;b=d+4|0;c[e>>2]=a;a=c[e>>2]|0;c[b>>2]=Xl(a,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0)|0;if((c[b>>2]|0)!=-1){e=a+168|0;c[e>>2]=(c[e>>2]|0)+(c[b>>2]|0);i=d;return 0}if(((c[a+172>>2]|0)-(c[a+168>>2]|0)|0)>>>0<=3){i=d;return 0}c[a+168>>2]=(c[a+172>>2]|0)-3;i=d;return 0}function Xl(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+16|0;f=l+8|0;g=l+4|0;k=l+20|0;j=l;c[l+12>>2]=a;c[f>>2]=b;c[g>>2]=e;if(!(c[f>>2]|0)){c[h>>2]=-2147483645;k=c[h>>2]|0;i=l;return k|0}if((c[g>>2]|0)>>>0<4){c[h>>2]=-1;k=c[h>>2]|0;i=l;return k|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=((c[g>>2]|0)-3|0)>>>0){f=7;break}if((((d[(c[f>>2]|0)+(c[k>>2]|0)>>0]|0|0)==0?(d[(c[f>>2]|0)+((c[k>>2]|0)+1)>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+2)>>0]|0|0)==1:0)?(d[(c[f>>2]|0)+((c[k>>2]|0)+3)>>0]|0|0)==186:0){f=12;break}c[k>>2]=(c[k>>2]|0)+1}if((f|0)==7)c[j>>2]=2;else if((f|0)==12){c[h>>2]=c[k>>2];c[j>>2]=1}if(((c[j>>2]|0)+-2|0)>>>0>=1){k=c[h>>2]|0;i=l;return k|0}c[h>>2]=-1;k=c[h>>2]|0;i=l;return k|0}function Yl(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;e=d;b=d+4|0;c[e>>2]=a;a=c[e>>2]|0;if(((1==(c[a+692>>2]|0)?(c[a+688>>2]|0)==100:0)?((c[a+172>>2]|0)-(c[a+168>>2]|0)|0)>>>0<2097136:0)?(c[a+180>>2]|0)>>>0>7:0){c[b>>2]=0;Zl(a,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,2097152-(c[a+172>>2]|0)|0,b);e=a+172|0;c[e>>2]=(c[e>>2]|0)+(c[b>>2]|0);rl(a)|0}c[a+8>>2]=2;if(c[a+188>>2]|0){Lh(c[a+188>>2]|0)|0;Mh(c[a+188>>2]|0)|0;c[a+188>>2]=0}if(!(c[a+184>>2]|0)){e=_l(a)|0;i=d;return e|0}Eh(c[a+184>>2]|0)|0;c[a+184>>2]=0;e=_l(a)|0;i=d;return e|0}function Zl(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+8|0;g=l+4|0;j=l;k=l+16|0;c[l+12>>2]=b;c[h>>2]=d;c[g>>2]=e;c[j>>2]=f;if((c[h>>2]|0)==0|(c[j>>2]|0)==0){i=l;return}c[c[j>>2]>>2]=0;if(!(0!=(c[h>>2]|0)&(c[g>>2]|0)>>>0>=16)){i=l;return}g=k;e=6342;d=g+16|0;do{a[g>>0]=a[e>>0]|0;g=g+1|0;e=e+1|0}while((g|0)<(d|0));g=c[h>>2]|0;e=k;d=g+16|0;do{a[g>>0]=a[e>>0]|0;g=g+1|0;e=e+1|0}while((g|0)<(d|0));c[c[j>>2]>>2]=16;i=l;return}function _l(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+168>>2]=0;c[a+172>>2]=0;c[a+180>>2]=0;Ox(a+192|0,0,208)|0;Ox(a+400|0,0,208)|0;c[a+608>>2]=0;c[a+612>>2]=0;c[a+616>>2]=0;d=a+672|0;c[d>>2]=0;c[d+4>>2]=0;d=a+680|0;c[d>>2]=0;c[d+4>>2]=0;c[a+688>>2]=0;c[a+692>>2]=0;i=b;return 0}function $l(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;f=j+16|0;k=j+12|0;g=j+4|0;h=j;c[k>>2]=a;c[j+8>>2]=b;c[g>>2]=d;c[h>>2]=e;e=c[k>>2]|0;if((c[e+8>>2]|0)==2){c[f>>2]=-2147483642;k=c[f>>2]|0;i=j;return k|0}if(!(c[g>>2]|0)){c[f>>2]=-2147483645;k=c[f>>2]|0;i=j;return k|0}if((c[h>>2]|0)>>>0<=2097152?((c[e+172>>2]|0)+(c[h>>2]|0)|0)>>>0<=2097152:0){if(4==(c[e+660>>2]|0)?1==(c[e+664>>2]|0):0){c[f>>2]=-2147483647;k=c[f>>2]|0;i=j;return k|0}Tx((c[e+164>>2]|0)+(c[e+172>>2]|0)|0,c[g>>2]|0,c[h>>2]|0)|0;k=e+172|0;c[k>>2]=(c[k>>2]|0)+(c[h>>2]|0);c[e+772>>2]=0;c[f>>2]=rl(e)|0;k=c[f>>2]|0;i=j;return k|0}c[f>>2]=-2147483643;k=c[f>>2]|0;i=j;return k|0}function am(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+8>>2]=c[f>>2];i=d;return 0}function bm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;do if(c[e>>2]|0){if(2==(c[b+8>>2]|0)){c[d>>2]=-2147483642;break}if(!(c[b+692>>2]|0)){c[d>>2]=-2147483644;break}else{c[c[e>>2]>>2]=c[b+688>>2];c[d>>2]=0;break}}else c[d>>2]=-2147483645;while(0);i=f;return c[d>>2]|0}function cm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;g=c[d>>2]|0;i=f;return g|0}else{g=b+724|0;e=c[e>>2]|0;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[g+16>>2]=c[e+16>>2];c[g+20>>2]=c[e+20>>2];c[g+24>>2]=c[e+24>>2];c[b+720>>2]=1;c[d>>2]=0;g=c[d>>2]|0;i=f;return g|0}return 0}function dm(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;k=l+16|0;m=l+12|0;g=l+8|0;h=l+4|0;j=l;c[m>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=f;e=c[m>>2]|0;if(!(c[h>>2]|0)){c[k>>2]=-2147483645;m=c[k>>2]|0;i=l;return m|0}if((c[g>>2]|0)!=1){if(c[g>>2]|0){c[k>>2]=-2147483647;m=c[k>>2]|0;i=l;return m|0}if(c[e+756>>2]|0){d=c[e+756>>2]|0;if(d|0)Jx(d);c[e+756>>2]=0}}else{if(!(c[j>>2]|0)){c[k>>2]=-2147483647;m=c[k>>2]|0;i=l;return m|0}if((c[e+756>>2]|0)==0?(c[e+756>>2]=Ix(16)|0,(c[e+756>>2]|0)==0):0){c[k>>2]=-2147483646;m=c[k>>2]|0;i=l;return m|0}d=c[e+756>>2]|0;f=d+16|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(f|0));Tx(c[e+756>>2]|0,c[h>>2]|0,((c[j>>2]|0)>>>0)/8|0|0)|0;c[e+768>>2]=1}c[k>>2]=0;m=c[k>>2]|0;i=l;return m|0}function em(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;a=c[b>>2]|0;Ej(a);c[a>>2]=2596;c[a+4>>2]=0;c[a+8>>2]=2;Ox(a+12|0,0,152)|0;c[a+164>>2]=0;c[a+168>>2]=0;c[a+172>>2]=0;c[a+176>>2]=0;c[a+180>>2]=0;c[a+184>>2]=0;c[a+188>>2]=0;Ox(a+192|0,0,208)|0;Ox(a+400|0,0,208)|0;c[a+608>>2]=0;c[a+612>>2]=0;c[a+616>>2]=0;b=a+672|0;c[b>>2]=0;c[b+4>>2]=0;b=a+680|0;c[b>>2]=0;c[b+4>>2]=0;c[a+688>>2]=0;c[a+692>>2]=0;c[a+696>>2]=0;b=a+620|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));d=a+724|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;c[a+700>>2]=0;c[a+704>>2]=0;c[a+708>>2]=0;c[a+720>>2]=0;c[a+716>>2]=0;c[a+712>>2]=0;c[a+752>>2]=0;c[a+756>>2]=0;c[a+760>>2]=0;c[a+764>>2]=0;c[a+768>>2]=0;c[a+772>>2]=0;c[a+660>>2]=0;c[a+664>>2]=0;i=e;return}function fm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=2660;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;Vi(a);i=b;return}function gm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;fm(a);lx(a);i=b;return}function hm(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[a+188>>2]=Ix(2097152)|0;if(!(c[a+188>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}else{c[b>>2]=0;i=d;return c[b>>2]|0}return 0}function im(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;b=c[b>>2]|0;if(c[b+232+20>>2]|0){a=c[b+232+20>>2]|0;if(a|0)Jx(a);c[b+232+20>>2]=0}if(!(c[b+188>>2]|0)){i=d;return 0}a=c[b+188>>2]|0;if(a|0)Jx(a);c[b+188>>2]=0;i=d;return 0}function jm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+4>>2]=c[f>>2];i=d;return 0}function km(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+12|0;h=g+8|0;f=g+4|0;c[h>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[h>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;h=c[e>>2]|0;i=g;return h|0}else{Gh(d+192|0,c[f>>2]|0,40);c[e>>2]=0;h=c[e>>2]|0;i=g;return h|0}return 0}function lm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+8|0;f=e;c[e+4>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0))c[d>>2]=-2147483645;else c[d>>2]=-2147483647;i=e;return c[d>>2]|0}function mm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+8>>2]=2;a=nm(a)|0;i=b;return a|0}function nm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+164>>2]=0;c[a+168>>2]=0;c[a+172>>2]=0;c[a+176>>2]=0;c[a+184>>2]=0;c[a+180>>2]=0;c[a+532>>2]=1;Fh(a+12|0,152);i=b;return 0}function om(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;j=k;f=k+24|0;l=k+20|0;g=k+12|0;h=k+8|0;c[l>>2]=a;c[k+16>>2]=b;c[g>>2]=d;c[h>>2]=e;e=c[l>>2]|0;if(!(c[g>>2]|0)){c[f>>2]=-2147483645;l=c[f>>2]|0;i=k;return l|0}if(2==(c[e+8>>2]|0)){c[f>>2]=-2147483642;l=c[f>>2]|0;i=k;return l|0}if(((c[e+168>>2]|0)+(c[h>>2]|0)|0)>>>0>2097152){l=c[e+168>>2]|0;c[j>>2]=c[e+164>>2];c[j+4>>2]=l;jq(6358,j);c[f>>2]=-2147483643;l=c[f>>2]|0;i=k;return l|0}else{Gh((c[e+188>>2]|0)+(c[e+168>>2]|0)|0,c[g>>2]|0,c[h>>2]|0);l=e+168|0;c[l>>2]=(c[l>>2]|0)+(c[h>>2]|0);c[f>>2]=pm(e)|0;l=c[f>>2]|0;i=k;return l|0}return 0}function pm(a){a=a|0;var b=0,d=0,f=0,g=0,h=0;h=i;i=i+16|0;f=h+8|0;b=h+4|0;d=h+12|0;g=h;c[b>>2]=a;b=c[b>>2]|0;c[b+180>>2]=0;c[d>>2]=0;while(1){if((c[b+8>>2]|0)==2){a=3;break}if(((c[b+168>>2]|0)-(c[b+172>>2]|0)|0)>>>0<188){a=5;break}c[d>>2]=rm(b,(c[b+188>>2]|0)+(c[b+172>>2]|0)|0,188)|0;do if(-2==(c[d>>2]|0)){c[b+232+24>>2]=0;c[b+164>>2]=c[b+172>>2];a=b+164|0;c[a>>2]=(c[a>>2]|0)+1;Em(b)|0;c[b+172>>2]=c[b+164>>2]}else{if(1!=(c[b+180>>2]|0)){a=b+172|0;c[a>>2]=(c[a>>2]|0)+188;break}c[d>>2]=Fm(b)|0;do if((e[b+232+68+16>>1]|0|0)!=(c[b+232+32>>2]|0)){if((e[b+232+68+18>>1]|0|0)==(c[b+232+32>>2]|0)){if(0==(c[d>>2]|0)?1==(c[b+184>>2]|0):0){a=c[b+4>>2]|0;pb[c[(c[a>>2]|0)+28>>2]&31](a,c[b+232+40>>2]|0,c[b+232+44>>2]|0,b+12|0)|0}c[b+232+44>>2]=0;break}if((c[b+232+68+20>>2]|0)==(c[b+232+32>>2]|0)){if(0==(c[d>>2]|0)?1==(c[b+184>>2]|0):0){a=c[b+4>>2]|0;pb[c[(c[a>>2]|0)+28>>2]&31](a,c[b+232+56>>2]|0,c[b+232+60>>2]|0,b+12|0)|0}c[b+232+60>>2]=0}}else{if(0==(c[d>>2]|0)?1==(c[b+184>>2]|0):0){c[b+176>>2]=(c[b+172>>2]|0)-(c[b+164>>2]|0);a=c[b+4>>2]|0;pb[c[(c[a>>2]|0)+28>>2]&31](a,c[b+232+20>>2]|0,c[b+232+24>>2]|0,b+12|0)|0}c[b+232+24>>2]=0}while(0);c[b+176>>2]=0;c[b+164>>2]=c[b+172>>2];c[b+180>>2]=0}while(0);if(c[b+232+4>>2]|0)continue;if(c[b+232+8>>2]|0)continue;c[b+164>>2]=c[b+172>>2]}if((a|0)==3){c[f>>2]=-2147483642;c[g>>2]=1;g=c[f>>2]|0;i=h;return g|0}else if((a|0)==5){qm(b)|0;c[f>>2]=0;c[g>>2]=1;g=c[f>>2]|0;i=h;return g|0}return 0}function qm(a){a=a|0;var b=0,d=0,e=0,f=0;e=i;i=i+16|0;d=e;b=e+8|0;f=e+4|0;c[f>>2]=a;a=c[f>>2]|0;if(!(c[a+164>>2]|0)){c[b>>2]=0;f=c[b>>2]|0;i=e;return f|0}if((c[a+168>>2]|0)>>>0>(c[a+164>>2]|0)>>>0)Hh(c[a+188>>2]|0,(c[a+188>>2]|0)+(c[a+164>>2]|0)|0,(c[a+168>>2]|0)-(c[a+164>>2]|0)|0);f=a+172|0;c[f>>2]=(c[f>>2]|0)-(c[a+164>>2]|0);f=a+168|0;c[f>>2]=(c[f>>2]|0)-(c[a+164>>2]|0);c[a+164>>2]=0;c[d>>2]=c[a+168>>2];jq(6414,d);c[b>>2]=-2147483647;f=c[b>>2]|0;i=e;return f|0}function rm(a,b,f){a=a|0;b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+32|0;m=p+24|0;q=p+16|0;g=p+8|0;l=p+4|0;j=p+28|0;o=p+20|0;h=p+12|0;n=p;c[q>>2]=a;c[g>>2]=b;c[l>>2]=f;a=c[q>>2]|0;if(0==(c[g>>2]|0)|(c[l>>2]|0)>>>0<188){c[m>>2]=-2147483645;q=c[m>>2]|0;i=p;return q|0}if((d[c[g>>2]>>0]|0|0)!=71){c[m>>2]=-2;q=c[m>>2]|0;i=p;return q|0}c[j>>2]=((d[(c[g>>2]|0)+1>>0]|0)&64)>>6;c[o>>2]=(((d[(c[g>>2]|0)+1>>0]|0)&31)<<8)+(d[(c[g>>2]|0)+2>>0]|0);switch((d[(c[g>>2]|0)+3>>0]|0)>>4&3|0){case 1:{c[g>>2]=(c[g>>2]|0)+4;c[l>>2]=(c[l>>2]|0)-4;k=12;break}case 2:{k=12;break}case 3:{c[h>>2]=d[(c[g>>2]|0)+4>>0];sm(a,(c[g>>2]|0)+5|0,c[h>>2]|0)|0;if((c[l>>2]|0)>>>0<(5+(c[h>>2]|0)|0)>>>0){c[m>>2]=-2;c[n>>2]=1}else{c[g>>2]=(c[g>>2]|0)+(5+(c[h>>2]|0));c[l>>2]=(c[l>>2]|0)-(5+(c[h>>2]|0));c[n>>2]=2}if((c[n>>2]|0)==2)k=12;break}default:{c[m>>2]=0;c[n>>2]=1}}a:do if((k|0)==12){if(!(c[o>>2]|0)){if(c[j>>2]|0){c[h>>2]=d[c[g>>2]>>0];if(((c[h>>2]|0)+1|0)>>>0>(c[l>>2]|0)>>>0){c[m>>2]=-2;c[n>>2]=1}else{c[g>>2]=(c[g>>2]|0)+(1+(c[h>>2]|0));c[l>>2]=(c[l>>2]|0)-(1+(c[h>>2]|0));c[n>>2]=0}if(c[n>>2]|0)break}c[m>>2]=tm(a,c[g>>2]|0,c[l>>2]|0)|0;c[n>>2]=1;break}if((c[o>>2]|0)==(c[a+232+12>>2]|0)){if(!(c[a+232+4>>2]|0)){c[m>>2]=0;c[n>>2]=1;break}if(c[j>>2]|0){c[h>>2]=d[c[g>>2]>>0];if(((c[h>>2]|0)+1|0)>>>0>(c[l>>2]|0)>>>0){c[m>>2]=-2;c[n>>2]=1}else{c[g>>2]=(c[g>>2]|0)+(1+(c[h>>2]|0));c[l>>2]=(c[l>>2]|0)-(1+(c[h>>2]|0));c[n>>2]=0}if(c[n>>2]|0)break}c[m>>2]=um(a,c[g>>2]|0,c[l>>2]|0)|0;c[n>>2]=1;break}if(!(((c[o>>2]|0)!=(e[a+232+68+16>>1]|0|0)?(c[o>>2]|0)!=(e[a+232+68+18>>1]|0|0):0)?(c[o>>2]|0)!=(c[a+232+68+20>>2]|0):0))k=31;do if((k|0)==31){if(!(c[a+232+8>>2]|0)){c[m>>2]=0;c[n>>2]=1;break a}c[a+232+32>>2]=c[o>>2];if(c[j>>2]|0){c[h>>2]=xm(a,c[g>>2]|0,c[l>>2]|0)|0;do if(1!=(c[a+180>>2]|0)){if((c[h>>2]|0)<0){c[m>>2]=-2;c[n>>2]=1;break}if((c[h>>2]|0)>>>0>(c[l>>2]|0)>>>0){c[m>>2]=-2;c[n>>2]=1;break}else{c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);c[l>>2]=(c[l>>2]|0)-(c[h>>2]|0);c[n>>2]=0;break}}else{c[m>>2]=0;c[n>>2]=1}while(0);if(c[n>>2]|0)break a}if((c[o>>2]|0)==(e[a+232+68+16>>1]|0|0)){ym(a,c[g>>2]|0,c[l>>2]|0)|0;break}b=c[g>>2]|0;f=c[l>>2]|0;if((c[o>>2]|0)==(c[a+232+68+20>>2]|0)){Am(a,b,f)|0;break}else{Cm(a,b,f)|0;break}}while(0);c[m>>2]=0;c[n>>2]=1}while(0);q=c[m>>2]|0;i=p;return q|0}function sm(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+64|0;f=q+48|0;r=q+40|0;g=q+32|0;h=q+24|0;l=q+28|0;k=q+20|0;n=q+16|0;m=q+12|0;j=q;o=q+4|0;c[r>>2]=a;c[g>>2]=b;c[h>>2]=e;e=c[r>>2]|0;if(0==(c[g>>2]|0)|(c[h>>2]|0)>>>0<1){c[f>>2]=-2147483645;r=c[f>>2]|0;i=q;return r|0}c[q+52>>2]=(d[c[g>>2]>>0]|0)&128;c[q+44>>2]=(d[c[g>>2]>>0]|0)&64;c[q+36>>2]=(d[c[g>>2]>>0]|0)&32;c[l>>2]=(d[c[g>>2]>>0]|0)&16;c[k>>2]=(d[c[g>>2]>>0]|0)&8;c[n>>2]=(d[c[g>>2]>>0]|0)&4;c[m>>2]=(d[c[g>>2]>>0]|0)&2;c[q+8>>2]=(d[c[g>>2]>>0]|0)&1;c[g>>2]=(c[g>>2]|0)+1;c[h>>2]=(c[h>>2]|0)-1;do if(c[l>>2]|0)if((c[h>>2]|0)>>>0<6){c[f>>2]=-2147483645;c[j>>2]=1;break}else{c[g>>2]=(c[g>>2]|0)+6;c[h>>2]=(c[h>>2]|0)-6;p=7;break}else p=7;while(0);a:do if((p|0)==7){do if(c[k>>2]|0)if((c[h>>2]|0)>>>0<6){c[f>>2]=-2147483645;c[j>>2]=1;break a}else{c[g>>2]=(c[g>>2]|0)+6;c[h>>2]=(c[h>>2]|0)-6;break}while(0);do if(c[n>>2]|0)if((c[h>>2]|0)>>>0<1){c[f>>2]=-2147483645;c[j>>2]=1;break a}else{c[g>>2]=(c[g>>2]|0)+1;c[h>>2]=(c[h>>2]|0)-1;break}while(0);if(c[m>>2]|0){if((c[h>>2]|0)>>>0<1){c[f>>2]=-2147483645;c[j>>2]=1;break}c[o>>2]=d[c[g>>2]>>0];if((c[o>>2]|0)>>>0<4?1:(c[h>>2]|0)>>>0<(1+(c[o>>2]|0)|0)>>>0){c[f>>2]=-2147483645;c[j>>2]=1}else{if(!(c[e+232+24>>2]|0))c[e+232+68+24+36+16>>2]=((d[(c[g>>2]|0)+1>>0]|0)<<24)+((d[(c[g>>2]|0)+2>>0]|0)<<16)+((d[(c[g>>2]|0)+3>>0]|0)<<8)+(d[(c[g>>2]|0)+4>>0]|0);c[g>>2]=(c[g>>2]|0)+(1+(c[o>>2]|0));c[j>>2]=0}if(c[j>>2]|0)break}c[f>>2]=0;c[j>>2]=1}while(0);r=c[f>>2]|0;i=q;return r|0}function tm(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=i;i=i+64|0;p=q+8|0;f=q+44|0;r=q+36|0;g=q+28|0;h=q+20|0;n=q+48|0;j=q+12|0;o=q+40|0;k=q+32|0;l=q+24|0;m=q+16|0;c[r>>2]=a;c[g>>2]=b;c[h>>2]=e;e=c[r>>2]|0;if(!(c[g>>2]|0)){c[f>>2]=-2147483645;r=c[f>>2]|0;i=q;return r|0}if(d[c[g>>2]>>0]|0|0){nw(6457,q)|0;c[f>>2]=-2147483645;r=c[f>>2]|0;i=q;return r|0}if((d[(c[g>>2]|0)+1>>0]|0)&64|0){c[f>>2]=-2;r=c[f>>2]|0;i=q;return r|0}c[n>>2]=(((d[(c[g>>2]|0)+1>>0]|0)&15)<<8)+(d[(c[g>>2]|0)+2>>0]|0);do if((3+(c[n>>2]|0)|0)>>>0>(c[h>>2]|0)>>>0){c[f>>2]=-2;c[j>>2]=1}else{if((c[n>>2]|0)>>>0<9|(c[n>>2]|0)>>>0>1021){nw(6457,p)|0;c[f>>2]=-2147483645;c[j>>2]=1;break}c[o>>2]=d[(c[g>>2]|0)+6>>0];c[k>>2]=d[(c[g>>2]|0)+7>>0];c[l>>2]=8;do{c[m>>2]=((d[(c[g>>2]|0)+(c[l>>2]|0)>>0]|0)<<8)+(d[(c[g>>2]|0)+((c[l>>2]|0)+1)>>0]|0);if(c[m>>2]|0){c[e+232+16>>2]=c[m>>2];c[e+232+12>>2]=(((d[(c[g>>2]|0)+((c[l>>2]|0)+2)>>0]|0)&31)<<8)+(d[(c[g>>2]|0)+((c[l>>2]|0)+3)>>0]|0)}c[l>>2]=(c[l>>2]|0)+4}while((c[l>>2]|0)>>>0<(3+(c[n>>2]|0)-4|0)>>>0);if((c[o>>2]|0)==(c[k>>2]|0))c[e+232+4>>2]=1;c[f>>2]=0;c[j>>2]=1}while(0);r=c[f>>2]|0;i=q;return r|0}function um(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=i;i=i+64|0;s=u+16|0;r=u+8|0;g=u+56|0;v=u+48|0;h=u+40|0;j=u+32|0;p=u+60|0;k=u+20|0;q=u+52|0;m=u+44|0;o=u+36|0;n=u+28|0;l=u+24|0;c[v>>2]=a;c[h>>2]=e;c[j>>2]=f;f=c[v>>2]|0;if(!(c[h>>2]|0)){c[g>>2]=-2147483645;v=c[g>>2]|0;i=u;return v|0}if((c[j>>2]|0)>>>0<3){c[g>>2]=-2147483645;v=c[g>>2]|0;i=u;return v|0}if((d[c[h>>2]>>0]|0|0)!=2){nw(6457,u)|0;c[g>>2]=-2147483645;v=c[g>>2]|0;i=u;return v|0}if((d[(c[h>>2]|0)+1>>0]|0)&64|0){c[g>>2]=-2;v=c[g>>2]|0;i=u;return v|0}c[p>>2]=(((d[(c[h>>2]|0)+1>>0]|0)&15)<<8)+(d[(c[h>>2]|0)+2>>0]|0);do if((3+(c[p>>2]|0)|0)>>>0<=(c[j>>2]|0)>>>0){if((c[p>>2]|0)>>>0<13|(c[p>>2]|0)>>>0>1021){nw(6457,r)|0;c[g>>2]=-2147483645;c[k>>2]=1;break}if((((d[(c[h>>2]|0)+3>>0]|0)<<8)+(d[(c[h>>2]|0)+4>>0]|0)|0)!=(c[f+232+16>>2]|0)){c[g>>2]=0;c[k>>2]=1;break}c[q>>2]=d[(c[h>>2]|0)+6>>0];c[m>>2]=d[(c[h>>2]|0)+7>>0];if(!((c[q>>2]|0)!=0|(c[m>>2]|0)!=0)){c[o>>2]=(((d[(c[h>>2]|0)+10>>0]|0)&15)<<8)+(d[(c[h>>2]|0)+11>>0]|0);if((12+(c[o>>2]|0)|0)>>>0<=(c[j>>2]|0)>>>0){vm(f,(c[h>>2]|0)+12|0,c[o>>2]|0)|0;c[n>>2]=12+(c[o>>2]|0);while(1){switch(d[(c[h>>2]|0)+(c[n>>2]|0)>>0]|0|0){case 36:case 176:case 177:case 27:case 16:case 2:{v=f+232+68|0;c[v>>2]=c[v>>2]|1;c[f+232+68+4>>2]=d[(c[h>>2]|0)+(c[n>>2]|0)>>0];b[f+232+68+16>>1]=(((d[(c[h>>2]|0)+((c[n>>2]|0)+1)>>0]|0)&31)<<8)+(d[(c[h>>2]|0)+((c[n>>2]|0)+2)>>0]|0);break}case 15:case 156:case 153:case 146:case 150:case 144:case 145:case 4:case 3:{v=f+232+68|0;c[v>>2]=c[v>>2]|2;c[f+232+68+8>>2]=d[(c[h>>2]|0)+(c[n>>2]|0)>>0];b[f+232+68+18>>1]=(((d[(c[h>>2]|0)+((c[n>>2]|0)+1)>>0]|0)&31)<<8)+(d[(c[h>>2]|0)+((c[n>>2]|0)+2)>>0]|0);break}case 189:{v=f+232+68|0;c[v>>2]=c[v>>2]|4;c[f+232+68+12>>2]=d[(c[h>>2]|0)+(c[n>>2]|0)>>0];c[f+232+68+20>>2]=(((d[(c[h>>2]|0)+((c[n>>2]|0)+1)>>0]|0)&31)<<8)+(d[(c[h>>2]|0)+((c[n>>2]|0)+2)>>0]|0);break}default:{}}c[n>>2]=(c[n>>2]|0)+3;c[l>>2]=(((d[(c[h>>2]|0)+(c[n>>2]|0)>>0]|0)&15)<<8)+(d[(c[h>>2]|0)+((c[n>>2]|0)+1)>>0]|0);do if(((c[n>>2]|0)+2+(c[l>>2]|0)|0)>>>0>(c[j>>2]|0)>>>0){c[g>>2]=-2;c[k>>2]=1}else{c[n>>2]=(c[n>>2]|0)+2;if(c[f+232+68+24>>2]|0?(vm(f,(c[h>>2]|0)+(c[n>>2]|0)|0,c[l>>2]|0)|0)<0:0){c[g>>2]=-2;c[k>>2]=1;break}c[n>>2]=(c[n>>2]|0)+(c[l>>2]|0);c[k>>2]=0}while(0);if(c[k>>2]|0)break;if((c[n>>2]|0)>>>0>=((c[p>>2]|0)+3-4|0)>>>0){t=32;break}}if((t|0)==32){if((c[q>>2]|0)==(c[m>>2]|0))c[f+232+8>>2]=1;c[g>>2]=0;c[k>>2]=1}}else{c[g>>2]=-2;c[k>>2]=1}}else{nw(6457,s)|0;c[g>>2]=-2147483645;c[k>>2]=1}}else{c[g>>2]=-2;c[k>>2]=1}while(0);v=c[g>>2]|0;i=u;return v|0}function vm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;e=l+16|0;m=l+12|0;f=l+8|0;g=l+4|0;j=l+20|0;h=l;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[m>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;m=c[e>>2]|0;i=l;return m|0}while(1){if(!(c[g>>2]|0))break;c[j>>2]=wm(d,c[f>>2]|0,c[g>>2]|0)|0;do if((c[j>>2]|0)!=-1)if((c[j>>2]|0)==-2147483645?1:(c[j>>2]|0)>(c[g>>2]|0)){c[e>>2]=-2147483645;c[h>>2]=1;break}else{c[f>>2]=(c[f>>2]|0)+(c[j>>2]|0);c[g>>2]=(c[g>>2]|0)-(c[j>>2]|0);c[h>>2]=0;break}else{c[e>>2]=-1;c[h>>2]=1}while(0);if((c[h>>2]|0)>>>0>=1){k=11;break}}if((k|0)==11){m=c[e>>2]|0;i=l;return m|0}c[e>>2]=0;m=c[e>>2]|0;i=l;return m|0}function wm(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l+16|0;m=l+12|0;g=l+8|0;h=l+4|0;k=l+20|0;j=l;c[m>>2]=a;c[g>>2]=b;c[h>>2]=e;e=c[m>>2]|0;if(!(c[g>>2]|0)){c[f>>2]=-2147483645;m=c[f>>2]|0;i=l;return m|0}if((c[h>>2]|0)>>>0<2){c[f>>2]=-1;m=c[f>>2]|0;i=l;return m|0}c[k>>2]=2+(d[(c[g>>2]|0)+1>>0]|0);if((c[h>>2]|0)>>>0<(c[k>>2]|0)>>>0){c[f>>2]=-1;c[j>>2]=1}else{a:do switch(d[c[g>>2]>>0]|0|0){case 64:{if((((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0)|0)==18507){c[e+232+68+24>>2]=1;c[e+232+68+24+140>>2]=(d[(c[g>>2]|0)+6>>0]|0)+2e3;c[e+232+68+24+140+4>>2]=(d[(c[g>>2]|0)+7>>0]|0)>>4;c[e+232+68+24+140+8>>2]=((d[(c[g>>2]|0)+7>>0]|0)<<1)+((d[(c[g>>2]|0)+8>>0]|0)>>7)&31;c[e+232+68+24+140+12>>2]=(d[(c[g>>2]|0)+8>>0]|0)>>2&31;c[e+232+68+24+140+16>>2]=((d[(c[g>>2]|0)+8>>0]|0)<<4)+((d[(c[g>>2]|0)+9>>0]|0)>>4)&63;c[e+232+68+24+140+20>>2]=((d[(c[g>>2]|0)+9>>0]|0)<<2)+((d[(c[g>>2]|0)+10>>0]|0)>>6)&63;c[e+232+68+24+140+24>>2]=((d[(c[g>>2]|0)+10>>0]|0)<<5)+((d[(c[g>>2]|0)+11>>0]|0)>>3)&1023;c[e+232+68+24+4>>2]=(d[(c[g>>2]|0)+11>>0]|0)&7;c[e+232+68+24+8>>2]=((d[(c[g>>2]|0)+4>>0]|0)<<8)+(d[(c[g>>2]|0)+5>>0]|0);c[e+232+68+24+12>>2]=((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0);c[e+232+68+24+16>>2]=d[(c[g>>2]|0)+12>>0]}break}case 65:{if((((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0)|0)==18507){c[e+232+68+24>>2]=1;Gh(e+232+68+24+20|0,(c[g>>2]|0)+4|0,16)}break}case 66:{if(c[e+232+68+24>>2]|0){c[e+232+68+24+36>>2]=((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0);c[e+232+68+24+36+4>>2]=((d[(c[g>>2]|0)+4>>0]|0)>>1)+2e3;c[e+232+68+24+36+8>>2]=(((d[(c[g>>2]|0)+4>>0]|0)&1)<<3)+((d[(c[g>>2]|0)+5>>0]|0)>>5)&15;c[e+232+68+24+36+12>>2]=(d[(c[g>>2]|0)+5>>0]|0)&31;c[e+232+68+24+36+20>>2]=((d[(c[g>>2]|0)+6>>0]|0)<<8)+(d[(c[g>>2]|0)+7>>0]|0);c[e+232+68+24+36+24>>2]=((d[(c[g>>2]|0)+8>>0]|0)<<8)+(d[(c[g>>2]|0)+9>>0]|0);c[e+232+68+24+36+28>>2]=(d[(c[g>>2]|0)+10>>0]|0)>>7;c[e+232+68+24+36+32>>2]=(d[(c[g>>2]|0)+10>>0]|0)>>5&3;c[e+232+68+24+36+36>>2]=(d[(c[g>>2]|0)+10>>0]|0)>>4&1;c[e+232+68+24+36+40>>2]=(d[(c[g>>2]|0)+10>>0]|0)>>3&1;c[e+232+68+24+36+44>>2]=(d[(c[g>>2]|0)+10>>0]|0)&7;c[e+232+68+24+36+64>>2]=(d[(c[g>>2]|0)+11>>0]|0)>>5;c[e+232+68+24+36+56>>2]=((d[(c[g>>2]|0)+11>>0]|0)&16)>>4;c[e+232+68+24+36+60>>2]=(d[(c[g>>2]|0)+11>>0]|0)&3;c[e+232+68+24+36+52>>2]=((d[(c[g>>2]|0)+13>>0]|0)<<15)+((d[(c[g>>2]|0)+14>>0]|0)<<7)+((d[(c[g>>2]|0)+15>>0]|0)>>1);c[e+232+68+24+36+48>>2]=(d[(c[g>>2]|0)+15>>0]|0)&1;if(c[e+232+68+24+36+52>>2]|0?(c[e+232+68+24+36+52>>2]|0)>>>0<=144e4:0)break a;c[e+232+68+24+36+52>>2]=3600}break}case 67:{if(c[e+232+68+24>>2]|0){c[e+232+68+24+124>>2]=((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0);c[e+232+68+24+124+4>>2]=(d[(c[g>>2]|0)+4>>0]|0)&1;c[e+232+68+24+124+8>>2]=((d[(c[g>>2]|0)+5>>0]|0)<<14)+((d[(c[g>>2]|0)+6>>0]|0)<<6)+((d[(c[g>>2]|0)+7>>0]|0)>>2);c[e+232+68+24+124+12>>2]=((d[(c[g>>2]|0)+8>>0]|0)<<14)+((d[(c[g>>2]|0)+9>>0]|0)<<6)+((d[(c[g>>2]|0)+10>>0]|0)>>2)}break}case 68:{if(c[e+232+68+24>>2]|0){c[e+232+68+24+36+68>>2]=1;c[e+232+68+24+36+72>>2]=((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0);c[e+232+68+24+36+76>>2]=(((d[(c[g>>2]|0)+4>>0]|0)&127)<<7)+((d[(c[g>>2]|0)+5>>0]|0)>>1);c[e+232+68+24+36+80>>2]=((d[(c[g>>2]|0)+6>>0]|0)<<8)+(d[(c[g>>2]|0)+7>>0]|0);c[e+232+68+24+36+84>>2]=((d[(c[g>>2]|0)+8>>0]|0)<<8)+(d[(c[g>>2]|0)+9>>0]|0);if(!((c[e+232+68+24+36+80>>2]|0)!=0?(c[e+232+68+24+36+80>>2]|0)>>>0<=(c[e+232+68+24+36+20>>2]|0)>>>0:0))c[e+232+68+24+36+80>>2]=c[e+232+68+24+36+20>>2];if(c[e+232+68+24+36+84>>2]|0?(c[e+232+68+24+36+84>>2]|0)>>>0<=(c[e+232+68+24+36+24>>2]|0)>>>0:0)break a;c[e+232+68+24+36+84>>2]=c[e+232+68+24+36+24>>2]}break}default:{}}while(0);c[f>>2]=c[k>>2];c[j>>2]=1}m=c[f>>2]|0;i=l;return m|0}function xm(a,b,f){a=a|0;b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;j=o+20|0;p=o+12|0;g=o+8|0;h=o+4|0;l=o+24|0;k=o;m=o+16|0;c[p>>2]=a;c[g>>2]=b;c[h>>2]=f;a=c[p>>2]|0;if(!(c[g>>2]|0)){c[j>>2]=-2147483645;p=c[j>>2]|0;i=o;return p|0}if((c[h>>2]|0)>>>0<9){c[j>>2]=-2;p=c[j>>2]|0;i=o;return p|0}if((0==(d[c[g>>2]>>0]|0|0)?0==(d[(c[g>>2]|0)+1>>0]|0|0):0)?1==(d[(c[g>>2]|0)+2>>0]|0|0):0){if(((d[(c[g>>2]|0)+6>>0]|0)&128|0)!=128){c[j>>2]=-2;p=c[j>>2]|0;i=o;return p|0}c[l>>2]=d[(c[g>>2]|0)+8>>0];do if((9+(c[l>>2]|0)|0)>>>0>(c[h>>2]|0)>>>0){c[j>>2]=-2;c[k>>2]=1}else{if(((d[(c[g>>2]|0)+7>>0]|0)&128)>>7|0){c[m>>2]=(((d[(c[g>>2]|0)+9>>0]|0)&14)<<28)+((d[(c[g>>2]|0)+10>>0]|0)<<21)+(((d[(c[g>>2]|0)+11>>0]|0)&254)<<13)+((d[(c[g>>2]|0)+12>>0]|0)<<6)+((d[(c[g>>2]|0)+13>>0]|0)>>2);b=a+232|0;do if((c[a+232+32>>2]|0)==(e[a+232+68+16>>1]|0|0)){if(c[b+24>>2]|0?(c[m>>2]|0)!=(c[a+232+36>>2]|0):0){c[a+180>>2]=1;c[j>>2]=0;c[k>>2]=1;break}c[a+232+36>>2]=c[m>>2];n=27}else{f=a+232|0;if((c[b+32>>2]|0)!=(e[a+232+68+18>>1]|0|0)){if((c[f+32>>2]|0)!=(c[a+232+68+20>>2]|0)){n=27;break}if(!(c[a+232+60>>2]|0)){n=27;break}c[a+180>>2]=1;c[j>>2]=0;c[k>>2]=1;break}if(c[f+44>>2]|0?(c[m>>2]|0)!=(c[a+232+52>>2]|0):0){c[a+180>>2]=1;c[j>>2]=0;c[k>>2]=1;break}c[a+232+52>>2]=c[m>>2];n=27}while(0);if((n|0)==27)c[k>>2]=0;if(c[k>>2]|0)break}c[j>>2]=9+(c[l>>2]|0);c[k>>2]=1}while(0);p=c[j>>2]|0;i=o;return p|0}c[j>>2]=-2;p=c[j>>2]|0;i=o;return p|0}function ym(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[j>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;j=c[e>>2]|0;i=h;return j|0}if(((c[d+232+24>>2]|0)+(c[g>>2]|0)|0)>>>0>(c[d+232+28>>2]|0)>>>0?(zm(d,(c[d+232+24>>2]|0)+(c[g>>2]|0)|0)|0)==0:0){c[e>>2]=-2147483646;j=c[e>>2]|0;i=h;return j|0}Gh((c[d+232+20>>2]|0)+(c[d+232+24>>2]|0)|0,c[f>>2]|0,c[g>>2]|0);j=d+232+24|0;c[j>>2]=(c[j>>2]|0)+(c[g>>2]|0);c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}function zm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+12|0;j=h+8|0;e=h+4|0;g=h+16|0;f=h;c[j>>2]=a;c[e>>2]=b;b=c[j>>2]|0;if((c[e>>2]|0)>>>0>2048e3){c[d>>2]=0;j=c[d>>2]|0;i=h;return j|0}if(!(c[b+232+20>>2]|0)){c[g>>2]=(c[e>>2]|0)>>>0>65536?c[e>>2]|0:65536;c[b+232+20>>2]=Ix(c[g>>2]|0)|0;if(!(c[b+232+20>>2]|0)){c[d>>2]=0;c[f>>2]=1}else{c[b+232+28>>2]=c[g>>2];c[f>>2]=0}if((c[f>>2]|0)>>>0>=1){j=c[d>>2]|0;i=h;return j|0}}else{if((c[e>>2]|0)>>>0<((c[b+232+28>>2]|0)+65536|0)>>>0)c[e>>2]=(c[b+232+28>>2]|0)+65536;c[g>>2]=Ix(c[e>>2]|0)|0;if(!(c[g>>2]|0)){c[d>>2]=0;c[f>>2]=1}else{Gh(c[g>>2]|0,c[b+232+20>>2]|0,c[b+232+24>>2]|0);a=c[b+232+20>>2]|0;if(a|0)Jx(a);c[b+232+20>>2]=c[g>>2];c[b+232+28>>2]=c[e>>2];c[f>>2]=0}if((c[f>>2]|0)>>>0>=1){j=c[d>>2]|0;i=h;return j|0}}c[d>>2]=1;j=c[d>>2]|0;i=h;return j|0}function Am(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[j>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;j=c[e>>2]|0;i=h;return j|0}if(((c[d+232+60>>2]|0)+(c[g>>2]|0)|0)>>>0>(c[d+232+64>>2]|0)>>>0?(Bm(d,(c[d+232+60>>2]|0)+(c[g>>2]|0)|0)|0)==0:0){c[e>>2]=-2147483646;j=c[e>>2]|0;i=h;return j|0}Gh((c[d+232+56>>2]|0)+(c[d+232+60>>2]|0)|0,c[f>>2]|0,c[g>>2]|0);j=d+232+60|0;c[j>>2]=(c[j>>2]|0)+(c[g>>2]|0);c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}function Bm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+12|0;j=h+8|0;e=h+4|0;g=h+16|0;f=h;c[j>>2]=a;c[e>>2]=b;b=c[j>>2]|0;if(!(c[b+232+56>>2]|0)){c[g>>2]=(c[e>>2]|0)>>>0>20480?c[e>>2]|0:20480;c[b+232+56>>2]=Ix(c[g>>2]|0)|0;if(!(c[b+232+56>>2]|0)){c[d>>2]=0;c[f>>2]=1}else{c[b+232+64>>2]=c[g>>2];c[f>>2]=0}if((c[f>>2]|0)>>>0>=1){j=c[d>>2]|0;i=h;return j|0}}else{if((c[e>>2]|0)>>>0<((c[b+232+64>>2]|0)+20480|0)>>>0)c[e>>2]=(c[b+232+64>>2]|0)+20480;c[g>>2]=Ix(c[e>>2]|0)|0;if(!(c[g>>2]|0)){c[d>>2]=0;c[f>>2]=1}else{Gh(c[g>>2]|0,c[b+232+56>>2]|0,c[b+232+60>>2]|0);a=c[b+232+56>>2]|0;if(a|0)Jx(a);c[b+232+56>>2]=c[g>>2];c[b+232+64>>2]=c[e>>2];c[f>>2]=0}if((c[f>>2]|0)>>>0>=1){j=c[d>>2]|0;i=h;return j|0}}c[d>>2]=1;j=c[d>>2]|0;i=h;return j|0}function Cm(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[j>>2]|0;if(!(c[f>>2]|0)){c[e>>2]=-2147483645;j=c[e>>2]|0;i=h;return j|0}if(((c[d+232+44>>2]|0)+(c[g>>2]|0)|0)>>>0>(c[d+232+48>>2]|0)>>>0?(Dm(d,(c[d+232+44>>2]|0)+(c[g>>2]|0)|0)|0)==0:0){c[e>>2]=-2147483646;j=c[e>>2]|0;i=h;return j|0}Gh((c[d+232+40>>2]|0)+(c[d+232+44>>2]|0)|0,c[f>>2]|0,c[g>>2]|0);j=d+232+44|0;c[j>>2]=(c[j>>2]|0)+(c[g>>2]|0);c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}function Dm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+12|0;j=h+8|0;e=h+4|0;g=h+16|0;f=h;c[j>>2]=a;c[e>>2]=b;b=c[j>>2]|0;if(!(c[b+232+40>>2]|0)){c[g>>2]=(c[e>>2]|0)>>>0>10240?c[e>>2]|0:10240;c[b+232+40>>2]=Ix(c[g>>2]|0)|0;if(!(c[b+232+40>>2]|0)){c[d>>2]=0;c[f>>2]=1}else{c[b+232+48>>2]=c[g>>2];c[f>>2]=0}if((c[f>>2]|0)>>>0>=1){j=c[d>>2]|0;i=h;return j|0}}else{if((c[e>>2]|0)>>>0<((c[b+232+48>>2]|0)+10240|0)>>>0)c[e>>2]=(c[b+232+48>>2]|0)+10240;c[g>>2]=Ix(c[e>>2]|0)|0;if(!(c[g>>2]|0)){c[d>>2]=0;c[f>>2]=1}else{Gh(c[g>>2]|0,c[b+232+40>>2]|0,c[b+232+44>>2]|0);a=c[b+232+40>>2]|0;if(a|0)Jx(a);c[b+232+40>>2]=c[g>>2];c[b+232+48>>2]=c[e>>2];c[f>>2]=0}if((c[f>>2]|0)>>>0>=1){j=c[d>>2]|0;i=h;return j|0}}c[d>>2]=1;j=c[d>>2]|0;i=h;return j|0}function Em(a){a=a|0;var b=0,e=0;b=i;i=i+16|0;e=b;c[e>>2]=a;a=c[e>>2]|0;while(1){if((c[a+164>>2]|0)>>>0>=(c[a+168>>2]|0)>>>0){a=5;break}if(71==(d[(c[a+188>>2]|0)+(c[a+164>>2]|0)>>0]|0|0)){a=5;break}e=a+164|0;c[e>>2]=(c[e>>2]|0)+1}if((a|0)==5){i=b;return 0}return 0}function Fm(a){a=a|0;var b=0,d=0,f=0;f=i;i=i+16|0;b=f;d=f+4|0;c[b>>2]=a;a=c[b>>2]|0;c[d>>2]=0;b=a+232|0;if((c[a+232+32>>2]|0)==(e[a+232+68+16>>1]|0|0)){if(!(c[b+68+24>>2]|0)){b=a+232+68+24+36+16|0;c[b>>2]=(c[b>>2]|0)+1}c[d>>2]=Gm(a)|0;d=c[d>>2]|0;i=f;return d|0}if((c[b+32>>2]|0)==(e[a+232+68+18>>1]|0|0)){c[d>>2]=Jm(a)|0;d=c[d>>2]|0;i=f;return d|0}else{c[d>>2]=Km(a)|0;d=c[d>>2]|0;i=f;return d|0}return 0}function Gm(a){a=a|0;var b=0,f=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;b=k+20|0;l=k+4|0;h=k+24|0;j=k+8|0;f=k;c[l>>2]=a;a=c[l>>2]|0;c[h>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;switch(c[a+232+68+4>>2]|0){case 27:{Hm(a,c[a+232+20>>2]|0,c[a+232+24>>2]|0)|0;c[h>>2]=xq(256,c[a+232+20>>2]|0,c[a+232+24>>2]|0,j)|0;if(+g[j+8>>2]!=0.0)c[a+232+68+24+36+52>>2]=~~(9.0e4/+g[j+8>>2])>>>0;if((c[a+232+68+24>>2]|0)==0?(c[a+232+68+24+36+32>>2]=0,0.0==+g[j+8>>2]):0)c[a+232+68+24+36+52>>2]=0;break}case 36:{Hm(a,c[a+232+20>>2]|0,c[a+232+24>>2]|0)|0;c[h>>2]=xq(5,c[a+232+20>>2]|0,c[a+232+24>>2]|0,j)|0;if(+g[j+8>>2]!=0.0)c[a+232+68+24+36+52>>2]=~~(9.0e4/+g[j+8>>2])>>>0;if((c[a+232+68+24>>2]|0)==0?(c[a+232+68+24+36+32>>2]=0,0.0==+g[j+8>>2]):0)c[a+232+68+24+36+52>>2]=0;break}case 16:{c[h>>2]=xq(3,c[a+232+20>>2]|0,c[a+232+24>>2]|0,j)|0;if(+g[j+8>>2]!=0.0)c[a+232+68+24+36+52>>2]=~~(9.0e4/+g[j+8>>2])>>>0;if((c[a+232+68+24>>2]|0)==0?(c[a+232+68+24+36+32>>2]=0,0.0==+g[j+8>>2]):0)c[a+232+68+24+36+52>>2]=0;break}case 177:{c[h>>2]=xq(4,c[a+232+20>>2]|0,c[a+232+24>>2]|0,j)|0;break}case 176:{c[h>>2]=xq(1,c[a+232+20>>2]|0,c[a+232+24>>2]|0,j)|0;break}default:{c[b>>2]=-2147483647;c[f>>2]=1;l=c[b>>2]|0;i=k;return l|0}}c[a+232>>2]=e[j+4>>1];if(0!=(e[j>>1]|0|0)?0!=(e[j+2>>1]|0|0):0){c[a+232+68+24+36+20>>2]=e[j>>1];if(!(c[a+232+68+24+36+24>>2]|0))c[a+232+68+24+36+24>>2]=e[j+2>>1];c[a+232+68+24+36+28>>2]=e[j+6>>1]}do if(3==(c[a+232>>2]|0)){c[a+184>>2]=1;l=(c[a+232+68+24>>2]|0)!=0;c[a+12+92>>2]=1;if(l){c[a+12+92+12>>2]=(c[a+232+68+24+124+4>>2]|0)+1;c[a+12+92+24>>2]=c[a+232+68+24+124>>2];c[a+12+92+16>>2]=c[a+232+68+24+124+8>>2];c[a+12+92+20>>2]=c[a+232+68+24+124+12>>2];break}else{c[a+12+92+12>>2]=(d[a+192+14>>0]|0)+1;c[a+12+92+16>>2]=c[a+192+16>>2];c[a+12+92+20>>2]=c[a+192+20>>2];break}}while(0);c[a+12+28>>2]=c[a+232+68+24+36+32>>2];c[a+12+8>>2]=c[a+232+68+24+36+16>>2];do if(3!=(c[a+232>>2]|0)){if(1==(c[a+232>>2]|0)){c[a+12>>2]=3;break}if(2==(c[a+232>>2]|0))c[a+12>>2]=2}else c[a+12>>2]=1;while(0);c[a+12+20>>2]=c[a+232+68+24+36+24>>2];c[a+12+16>>2]=c[a+232+68+24+36+20>>2];c[a+12+12>>2]=((c[a+232+36>>2]|0)>>>0)/45|0;c[a+12+32>>2]=c[a+232+68+24+8>>2];c[a+12+36>>2]=c[a+232+68+24+12>>2];c[a+12+40>>2]=c[a+232+68+24+16>>2];if((c[a+12+32>>2]|0)>>>0>1)c[a+12+44>>2]=c[a+232+68+24+36+36>>2];else c[a+12+44>>2]=1;if(!(c[a+232+68+24+36+52>>2]|0))c[a+232+68+24+36+52>>2]=8388607;g[a+12+60>>2]=+((((c[a+232+68+24+36+52>>2]|0)>>>0)/90|0)>>>0);c[a+12+24>>2]=c[a+232+68+24+36+28>>2];c[a+12+56>>2]=c[a+232+68+24+36+60>>2];c[a+12+48>>2]=c[a+232+68+24+36+40>>2];if(c[a+532>>2]|0){c[a+528>>2]=c[a+12+12>>2];c[a+536>>2]=c[a+12+8>>2];c[a+532>>2]=0}do if(c[a+232+68+24>>2]|0){c[a+12+64>>2]=c[a+232+68+24+140>>2];c[a+12+64+4>>2]=c[a+232+68+24+140+4>>2];c[a+12+64+8>>2]=c[a+232+68+24+140+8>>2];c[a+12+64+12>>2]=c[a+232+68+24+140+12>>2];c[a+12+64+16>>2]=c[a+232+68+24+140+16>>2];c[a+12+64+20>>2]=c[a+232+68+24+140+20>>2];c[a+12+64+24>>2]=c[a+232+68+24+140+24>>2]}else{if(1!=(c[a+12>>2]|0)?2!=(c[a+12>>2]|0):0)break;Im(a)|0}while(0);c[b>>2]=c[h>>2];c[f>>2]=1;l=c[b>>2]|0;i=k;return l|0}function Hm(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+32|0;g=o+20|0;p=o+12|0;h=o+8|0;j=o+4|0;m=o+24|0;k=o;l=o+16|0;c[p>>2]=b;c[h>>2]=e;c[j>>2]=f;f=c[p>>2]|0;if((c[h>>2]|0)==0|(c[j>>2]|0)>>>0<5){c[g>>2]=-2147483645;p=c[g>>2]|0;i=o;return p|0}c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=((c[j>>2]|0)-4|0)>>>0){n=5;break}if(((0==(d[(c[h>>2]|0)+(c[m>>2]|0)>>0]|0|0)?0==(d[(c[h>>2]|0)+((c[m>>2]|0)+1)>>0]|0|0):0)?0==(d[(c[h>>2]|0)+((c[m>>2]|0)+2)>>0]|0|0):0)?1==(d[(c[h>>2]|0)+((c[m>>2]|0)+3)>>0]|0|0):0){c[l>>2]=(d[(c[h>>2]|0)+((c[m>>2]|0)+4)>>0]|0)&31;if(!((c[l>>2]|0)==6|(c[l>>2]|0)==7|(c[l>>2]|0)==8|(c[l>>2]|0)==9))if((c[l>>2]|0)==1|(c[l>>2]|0)==5){c[g>>2]=0;c[k>>2]=1}else n=14;else{c[m>>2]=(c[m>>2]|0)+4;n=14}if((n|0)==14){n=0;c[k>>2]=0}if(c[k>>2]|0)break}if((0==(d[(c[h>>2]|0)+(c[m>>2]|0)>>0]|0|0)?0==(d[(c[h>>2]|0)+((c[m>>2]|0)+1)>>0]|0|0):0)?1==(d[(c[h>>2]|0)+((c[m>>2]|0)+2)>>0]|0|0):0){c[l>>2]=(d[(c[h>>2]|0)+((c[m>>2]|0)+3)>>0]|0)&31;do if((c[l>>2]|0)==6|(c[l>>2]|0)==7|(c[l>>2]|0)==8|(c[l>>2]|0)==9)if(((c[f+232+24>>2]|0)+1|0)>>>0>(c[f+232+28>>2]|0)>>>0){c[g>>2]=-2147483643;c[k>>2]=1;break}else{Ux((c[h>>2]|0)+(c[m>>2]|0)+1|0,(c[h>>2]|0)+(c[m>>2]|0)|0,(c[j>>2]|0)-(c[m>>2]|0)|0)|0;a[(c[h>>2]|0)+(c[m>>2]|0)>>0]=0;c[j>>2]=(c[j>>2]|0)+1;n=f+232+24|0;c[n>>2]=(c[n>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+4;n=27;break}else if((c[l>>2]|0)==1|(c[l>>2]|0)==5)if(((c[f+232+24>>2]|0)+1|0)>>>0>(c[f+232+28>>2]|0)>>>0){c[g>>2]=-2147483643;c[k>>2]=1;break}else{Ux((c[h>>2]|0)+(c[m>>2]|0)+1|0,(c[h>>2]|0)+(c[m>>2]|0)|0,(c[j>>2]|0)-(c[m>>2]|0)|0)|0;a[(c[h>>2]|0)+(c[m>>2]|0)>>0]=0;p=f+232+24|0;c[p>>2]=(c[p>>2]|0)+1;c[g>>2]=0;c[k>>2]=1;break}else n=27;while(0);if((n|0)==27){n=0;c[k>>2]=0}if(c[k>>2]|0)break}c[m>>2]=(c[m>>2]|0)+1}if((n|0)==5)c[k>>2]=2;if(((c[k>>2]|0)+-2|0)>>>0>=1){p=c[g>>2]|0;i=o;return p|0}c[g>>2]=-2147483645;p=c[g>>2]|0;i=o;return p|0}function Im(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+4|0;e=g+8|0;f=g;c[b>>2]=a;b=c[b>>2]|0;d=1==(c[b+492>>2]|0);if(1==(c[b+496>>2]|0)){a=b+12+64|0;if(d){lq(a,c[b+12+12>>2]|0,c[b+528>>2]|0);f=b+500|0;e=b+12+64|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[f+16>>2]=c[e+16>>2];c[f+20>>2]=c[e+20>>2];c[f+24>>2]=c[e+24>>2]}else{f=b+500|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[a+20>>2]=c[f+20>>2];c[a+24>>2]=c[f+24>>2];c[b+492>>2]=1}c[b+528>>2]=c[b+12+12>>2];i=g;return 0}else{if(d)lq(b+12+64|0,c[b+12+12>>2]|0,c[b+528>>2]|0);else{ab(e|0)|0;c[f>>2]=fb(e|0)|0;c[b+12+64>>2]=(c[(c[f>>2]|0)+20>>2]|0)+1900;c[b+12+64+4>>2]=(c[(c[f>>2]|0)+16>>2]|0)+1;c[b+12+64+8>>2]=c[(c[f>>2]|0)+12>>2];c[b+12+64+12>>2]=c[(c[f>>2]|0)+8>>2];c[b+12+64+16>>2]=c[(c[f>>2]|0)+4>>2];c[b+12+64+20>>2]=c[c[f>>2]>>2];c[b+12+64+24>>2]=0;c[b+492>>2]=1}c[b+528>>2]=c[b+12+12>>2];i=g;return 0}return 0}function Jm(a){a=a|0;var b=0,f=0;b=i;i=i+16|0;f=b;c[f>>2]=a;a=c[f>>2]|0;c[a+12+28>>2]=0;c[a+12+8>>2]=-1;c[a+12>>2]=4;c[a+12+20>>2]=-1;c[a+12+16>>2]=-1;c[a+12+24>>2]=-1;g[a+12+60>>2]=-1.0;c[a+12+12>>2]=((c[a+232+52>>2]|0)>>>0)/45|0;if(c[a+232+68>>2]&2|0)c[a+12+92+8>>2]=c[a+232+68+8>>2];f=(c[a+232+68+24>>2]|0)!=0;c[a+12+92>>2]=1;if(f){c[a+12+92+12>>2]=(c[a+232+68+24+124+4>>2]|0)+1;c[a+12+92+24>>2]=c[a+232+68+24+124>>2];c[a+12+92+16>>2]=c[a+232+68+24+124+8>>2];c[a+12+92+20>>2]=c[a+232+68+24+124+12>>2]}else{c[a+12+92+12>>2]=(d[a+192+14>>0]|0)+1;c[a+12+92+16>>2]=c[a+192+16>>2];c[a+12+92+20>>2]=c[a+192+20>>2]}if(8193!=(e[a+192+12>>1]|0|0)?15!=(c[a+232+68+8>>2]|0):0){i=b;return 0}c[a+12+92+28>>2]=1;i=b;return 0}function Km(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+12+28>>2]=0;c[a+12+8>>2]=-1;c[a+12>>2]=5;c[a+12+20>>2]=-1;c[a+12+16>>2]=-1;c[a+12+24>>2]=-1;g[a+12+60>>2]=40.0;c[a+12+12>>2]=((c[a+232+52>>2]|0)>>>0)/45|0;i=b;return 0}function Lm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+8>>2]=c[f>>2];i=d;return 0}function Mm(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return -2147483647}function Nm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=c[f>>2]|0;b=a+500|0;e=c[e>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];c[b+16>>2]=c[e+16>>2];c[b+20>>2]=c[e+20>>2];c[b+24>>2]=c[e+24>>2];c[a+496>>2]=1;i=d;return 0}function Om(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;Ej(a);c[a>>2]=2660;c[a+188>>2]=0;c[a+164>>2]=0;c[a+168>>2]=0;c[a+176>>2]=0;c[a+172>>2]=0;c[a+180>>2]=0;c[a+184>>2]=0;Fh(a+192|0,40);Fh(a+232|0,260);Fh(a+12|0,152);Fh(a+500|0,28);c[a+496>>2]=0;c[a+492>>2]=0;c[a+528>>2]=0;c[a+536>>2]=0;c[a+532>>2]=1;c[a+4>>2]=0;c[a+8>>2]=2;i=b;return}function Pm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=2724;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;Vi(a);i=b;return}function Qm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;Pm(a);lx(a);i=b;return}function Rm(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[a+168>>2]=Ix(2097152)|0;if(!(c[a+168>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}else{c[b>>2]=0;i=d;return c[b>>2]|0}return 0}function Sm(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;a=c[b>>2]|0;if(!(c[a+168>>2]|0)){i=d;return 0}b=c[a+168>>2]|0;if(b|0)Jx(b);c[a+168>>2]=0;i=d;return 0}function Tm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;g=c[d>>2]|0;i=f;return g|0}else{c[b+4>>2]=c[e>>2];c[d>>2]=0;g=c[d>>2]|0;i=f;return g|0}return 0}function Um(b,d,f){b=b|0;d=d|0;f=f|0;var g=0,h=0,j=0,k=0;k=i;i=i+16|0;j=k+12|0;g=k+8|0;h=k+4|0;c[g>>2]=b;c[h>>2]=d;c[k>>2]=f;b=c[g>>2]|0;if(!(c[h>>2]|0)){c[j>>2]=-2147483645;j=c[j>>2]|0;i=k;return j|0}g=b+176|0;f=c[h>>2]|0;d=g+40|0;do{a[g>>0]=a[f>>0]|0;g=g+1|0;f=f+1|0}while((g|0)<(d|0));if(8193!=(e[b+176+12>>1]|0|0)?0!=(e[b+176+12>>1]|0|0):0){c[j>>2]=-2147483647;j=c[j>>2]|0;i=k;return j|0}c[j>>2]=0;j=c[j>>2]|0;i=k;return j|0}function Vm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;d=g+8|0;h=g+4|0;e=g;f=g+12|0;c[h>>2]=a;c[e>>2]=b;b=c[h>>2]|0;if(!(c[e>>2]|0)){c[d>>2]=-2147483645;h=c[d>>2]|0;i=g;return h|0}nb[c[(c[b>>2]|0)+28>>2]&127](b)|0;c[f>>2]=0;c[b+272+8>>2]=0;c[b+272+12>>2]=c[e>>2];h=b+272+16|0;c[h>>2]=0;c[h+4>>2]=0;c[b+272+4>>2]=0;c[b+272>>2]=0;c[f>>2]=er(b+272|0)|0;if(c[f>>2]|0){h=za(4)|0;c[h>>2]=-2147483645;Xa(h|0,144,0)}c[b+272+24>>2]=_w(c[b+272+28>>2]|0)|0;if(!(c[b+272+24>>2]|0)){h=za(4)|0;c[h>>2]=-2147483646;Xa(h|0,144,0)}c[f>>2]=fr(b+272|0,b+332|0)|0;if(c[f>>2]|0){h=za(4)|0;c[h>>2]=-2147483647;Xa(h|0,144,0)}c[b+164>>2]=Kh(0,64,b)|0;if(!(c[b+164>>2]|0)){h=za(4)|0;c[h>>2]=-2147483646;Xa(h|0,144,0)}c[b+220>>2]=1;c[b+8>>2]=0;c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}function Wm(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;d=e+4|0;c[b>>2]=a;if(!(c[b>>2]|0)){i=e;return 0}c[d>>2]=c[b>>2];Xm(c[d>>2]|0)|0;i=e;return 0}function Xm(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16|0;b=f+4|0;d=f+8|0;e=f;c[b>>2]=a;b=c[b>>2]|0;c[d>>2]=0;c[b+304>>2]=c[b+168>>2];c[b+304+4>>2]=2097152;c[b+304+8>>2]=0;c[b+304+16>>2]=1;c[b+304+12>>2]=0;while(1){if((gr(b+304|0,c[b+332>>2]|0)|0)>=0){while(1){if(c[b+304+24>>2]|0)break;c[e>>2]=gr(b+304|0,c[b+332>>2]|0)|0}c[d>>2]=Ym(b,b+304|0)|0;if(!(c[d>>2]|0)){if(c[(c[b+304+24>>2]|0)+56+8>>2]|0?(c[b+12+92+16>>2]|0)==0:0){c[b+12+92+12>>2]=c[(c[b+304+24>>2]|0)+56>>2];c[b+12+92+16>>2]=c[(c[b+304+24>>2]|0)+56+8>>2];c[b+12+92+4>>2]=8193}if(c[b+4>>2]|0){a=c[b+4>>2]|0;pb[c[(c[a>>2]|0)+28>>2]&31](a,c[(c[b+304+24>>2]|0)+16>>2]|0,c[(c[b+304+24>>2]|0)+20>>2]|0,b+12|0)|0}}c[b+304+16>>2]=0}if(c[(c[b+304+24>>2]|0)+36>>2]|0){a=14;break}if(c[b+8>>2]|0){a=14;break}}if((a|0)==14){c[b+216>>2]=100;i=f;return 0}return 0}function Ym(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;d=g+8|0;h=g+4|0;e=g;c[h>>2]=a;c[e>>2]=b;a=c[h>>2]|0;c[a+12+12>>2]=c[(c[(c[e>>2]|0)+24>>2]|0)+8>>2];b=c[c[(c[e>>2]|0)+24>>2]>>2]|0;a:do if((b|0)<1211250228){switch(b|0){case 1094796032:break;default:{f=8;break a}}$m(a,a+304|0)|0;f=9}else{if((b|0)<1297101910)switch(b|0){case 1211250228:break;default:{f=8;break a}}else switch(b|0){case 1297101910:break;default:{f=8;break a}}Zm(a,c[e>>2]|0)|0;if(!(1!=(c[a+12>>2]|0)?2!=(c[a+12>>2]|0):0))f=4;if((f|0)==4?(_m(a)|0,c[(c[(c[e>>2]|0)+24>>2]|0)+56+8>>2]|0):0)c[a+12+92>>2]=1;h=a+336|0;f=c[h>>2]|0;c[h>>2]=f+1;c[a+12+8>>2]=f;f=9}while(0);if((f|0)==8){c[d>>2]=-2147483647;h=c[d>>2]|0;i=g;return h|0}else if((f|0)==9){c[a+12+28>>2]=0;c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}return 0}function Zm(a,d){a=a|0;d=d|0;var f=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;k=m;n=m+20|0;f=m+4|0;h=m+24|0;j=m+8|0;c[n>>2]=a;c[f>>2]=d;d=c[n>>2]|0;c[h>>2]=0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;a=c[c[(c[f>>2]|0)+24>>2]>>2]|0;a:do if((a|0)<1297101910){switch(a|0){case 1211250228:break;default:{l=4;break a}}c[h>>2]=xq(256,c[(c[(c[f>>2]|0)+24>>2]|0)+16>>2]|0,c[(c[(c[f>>2]|0)+24>>2]|0)+20>>2]|0,j)|0}else{switch(a|0){case 1297101910:break;default:{l=4;break a}}c[h>>2]=xq(3,c[(c[(c[f>>2]|0)+24>>2]|0)+16>>2]|0,c[(c[(c[f>>2]|0)+24>>2]|0)+20>>2]|0,j)|0}while(0);if((l|0)==4)c[h>>2]=-2147483647;b:do if(!(c[h>>2]|0))switch(e[j+4>>1]|0){case 1:{c[d+12>>2]=3;break b}case 2:{c[d+12>>2]=2;break b}case 3:{c[d+12>>2]=1;if(!(b[j>>1]|0))break b;if(!(b[j+2>>1]|0))break b;if(+g[j+8>>2]>.05000000074505806?+g[j+8>>2]<70.0:0)g[d+12+60>>2]=1.0e3/+g[j+8>>2];c[d+12+20>>2]=e[j+2>>1];c[d+12+16>>2]=e[j>>1];c[d+12+24>>2]=e[j+6>>1];break b}default:{c[d+12>>2]=2;break b}}else{c[k>>2]=588;jq(6498,k)}while(0);if(!(+g[(c[(c[f>>2]|0)+24>>2]|0)+72>>2]!=0.0)){n=c[h>>2]|0;i=m;return n|0}if(!(b[(c[(c[f>>2]|0)+24>>2]|0)+72+4>>1]|0)){n=c[h>>2]|0;i=m;return n|0}if(!(b[(c[(c[f>>2]|0)+24>>2]|0)+72+6>>1]|0)){n=c[h>>2]|0;i=m;return n|0}g[d+12+60>>2]=1.0e3/+g[(c[(c[f>>2]|0)+24>>2]|0)+72>>2];c[d+12+20>>2]=e[(c[(c[f>>2]|0)+24>>2]|0)+72+6>>1];c[d+12+16>>2]=e[(c[(c[f>>2]|0)+24>>2]|0)+72+4>>1];c[d+12+24>>2]=0;n=c[h>>2]|0;i=m;return n|0}function _m(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+4|0;e=g+8|0;f=g;c[b>>2]=a;b=c[b>>2]|0;d=1==(c[b+232>>2]|0);if(1==(c[b+236>>2]|0)){a=b+12+64|0;if(d){lq(a,c[b+12+12>>2]|0,c[b+268>>2]|0);f=b+240|0;e=b+12+64|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[f+16>>2]=c[e+16>>2];c[f+20>>2]=c[e+20>>2];c[f+24>>2]=c[e+24>>2]}else{f=b+240|0;c[a>>2]=c[f>>2];c[a+4>>2]=c[f+4>>2];c[a+8>>2]=c[f+8>>2];c[a+12>>2]=c[f+12>>2];c[a+16>>2]=c[f+16>>2];c[a+20>>2]=c[f+20>>2];c[a+24>>2]=c[f+24>>2];c[b+232>>2]=1}c[b+268>>2]=c[b+12+12>>2];i=g;return 0}else{if(d)lq(b+12+64|0,c[b+12+12>>2]|0,c[b+268>>2]|0);else{ab(e|0)|0;c[f>>2]=fb(e|0)|0;c[b+12+64>>2]=(c[(c[f>>2]|0)+20>>2]|0)+1900;c[b+12+64+4>>2]=(c[(c[f>>2]|0)+16>>2]|0)+1;c[b+12+64+8>>2]=c[(c[f>>2]|0)+12>>2];c[b+12+64+12>>2]=c[(c[f>>2]|0)+8>>2];c[b+12+64+16>>2]=c[(c[f>>2]|0)+4>>2];c[b+12+64+20>>2]=c[c[f>>2]>>2];c[b+12+64+24>>2]=0;c[b+232>>2]=1}c[b+268>>2]=c[b+12+12>>2];i=g;return 0}return 0}function $m(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=c[f>>2]|0;c[a+12>>2]=4;c[a+12+8>>2]=-1;g[a+12+60>>2]=40.0;c[a+12+92+28>>2]=1;c[a+12+92+12>>2]=c[(c[(c[e>>2]|0)+24>>2]|0)+56>>2];c[a+12+92+16>>2]=c[(c[(c[e>>2]|0)+24>>2]|0)+56+8>>2];c[a+12+92+20>>2]=8e3;c[a+12+92>>2]=1;c[a+12+92+4>>2]=8193;i=d;return 0}function an(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+8>>2]=2;if(c[a+164>>2]|0){Lh(c[a+164>>2]|0)|0;Mh(c[a+164>>2]|0)|0;c[a+164>>2]=0}if(c[a+332>>2]|0){hr(c[a+332>>2]|0)|0;c[a+332>>2]=0}if(!(c[a+272+24>>2]|0)){d=bn(a)|0;i=b;return d|0}$w(c[a+272+24>>2]|0);c[a+272+24>>2]=0;d=bn(a)|0;i=b;return d|0}function bn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+172>>2]=0;c[a+216>>2]=0;c[a+220>>2]=0;i=b;return 0}function cn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=i;i=i+16|0;c[f+12>>2]=a;c[f+8>>2]=b;c[f+4>>2]=d;c[f>>2]=e;i=f;return 0}function dn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+8>>2]=c[f>>2];i=d;return 0}function en(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;do if(c[e>>2]|0){if(2==(c[b+8>>2]|0)){c[d>>2]=-2147483642;break}if(!(c[b+220>>2]|0)){c[d>>2]=-2147483644;break}else{c[c[e>>2]>>2]=c[b+216>>2];c[d>>2]=0;break}}else c[d>>2]=-2147483645;while(0);i=f;return c[d>>2]|0}function fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;f=d+4|0;e=d;c[f>>2]=a;c[e>>2]=b;a=c[f>>2]|0;b=a+240|0;e=c[e>>2]|0;c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];c[b+16>>2]=c[e+16>>2];c[b+20>>2]=c[e+20>>2];c[b+24>>2]=c[e+24>>2];c[a+236>>2]=1;i=d;return 0}function gn(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;a=c[b>>2]|0;Ej(a);c[a>>2]=2724;c[a+4>>2]=0;c[a+8>>2]=2;Ox(a+12|0,0,152)|0;c[a+164>>2]=0;c[a+168>>2]=0;c[a+172>>2]=0;c[a+216>>2]=0;c[a+220>>2]=0;c[a+224>>2]=0;c[a+228>>2]=0;b=a+176|0;d=b+40|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));Fh(a+240|0,28);c[a+236>>2]=0;c[a+232>>2]=0;c[a+268>>2]=0;d=a+272|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;c[d+28>>2]=0;d=a+304|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;c[a+332>>2]=0;c[a+336>>2]=0;i=e;return}function hn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=2788;nb[c[(c[a>>2]|0)+28>>2]&127](a)|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;Vi(a);i=b;return}function jn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;hn(a);lx(a);i=b;return}function kn(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[a+164>>2]=Ix(2097152)|0;if(!(c[a+164>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}c[a+184>>2]=Ix(2097152)|0;if(!(c[a+184>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}else{c[b>>2]=0;i=d;return c[b>>2]|0}return 0}function ln(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;b=c[b>>2]|0;if(c[b+164>>2]|0){a=c[b+164>>2]|0;if(a|0)Jx(a);c[b+164>>2]=0}if(!(c[b+184>>2]|0)){i=d;return 0}a=c[b+184>>2]|0;if(a|0)Jx(a);c[b+184>>2]=0;i=d;return 0}function mn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+4>>2]=c[f>>2];i=d;return 0}function nn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=i;i=i+16|0;c[e+8>>2]=a;c[e+4>>2]=b;c[e>>2]=d;i=e;return 0}function on(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return -2147483647}function pn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+8>>2]=2;a=qn(a)|0;i=b;return a|0}function qn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+168>>2]=0;c[a+172>>2]=0;c[a+188>>2]=0;c[a+192>>2]=0;c[a+196>>2]=0;c[a+200>>2]=0;g[a+204>>2]=40.0;c[a+208>>2]=0;i=b;return 0}function rn(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l+16|0;m=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;e=c[m>>2]|0;if((c[e+8>>2]|0)==2){c[f>>2]=-2147483642;m=c[f>>2]|0;i=l;return m|0}switch(c[h>>2]|0){case 0:if(((c[e+172>>2]|0)+(c[k>>2]|0)|0)>>>0>2097152){c[f>>2]=-2147483643;m=c[f>>2]|0;i=l;return m|0}else{Tx((c[e+164>>2]|0)+(c[e+172>>2]|0)|0,c[j>>2]|0,c[k>>2]|0)|0;m=e+172|0;c[m>>2]=(c[m>>2]|0)+(c[k>>2]|0);c[f>>2]=sn(e)|0;m=c[f>>2]|0;i=l;return m|0}case 2:{c[e+12>>2]=4;c[e+12+12>>2]=c[e+176>>2];g[e+12+60>>2]=40.0;m=e+176|0;c[m>>2]=(c[m>>2]|0)+40;m=c[e+4>>2]|0;pb[c[(c[m>>2]|0)+28>>2]&31](m,c[j>>2]|0,c[k>>2]|0,e+12|0)|0;break}default:{}}c[f>>2]=0;m=c[f>>2]|0;i=l;return m|0}function sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;b=g+8|0;h=g+4|0;e=g+12|0;d=g;c[h>>2]=a;a=c[h>>2]|0;if(!(c[a+192>>2]|0)){c[e>>2]=tn(a,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0)|0;if(-1==(c[e>>2]|0)){c[b>>2]=0;c[d>>2]=1}else{c[a+216>>2]=c[a+220>>2];h=a+168|0;c[h>>2]=(c[h>>2]|0)+(c[e>>2]|0);c[a+192>>2]=1;c[d>>2]=0}if((c[d>>2]|0)>>>0>=1){h=c[b>>2]|0;i=g;return h|0}}while(1){if((c[a+8>>2]|0)==2)break;c[e>>2]=un(a,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0)|0;if((c[e>>2]|0)==-1){c[b>>2]=vn(a)|0;c[d>>2]=1}else{if((c[a+216>>2]|0)==1)wn(a,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)-(c[e>>2]|0)|0)|0;h=a+168|0;c[h>>2]=(c[h>>2]|0)+((c[a+172>>2]|0)-(c[a+168>>2]|0)-(c[e>>2]|0));c[a+216>>2]=c[a+220>>2];c[d>>2]=0}if((c[d>>2]|0)>>>0>=1){f=14;break}}if((f|0)==14){h=c[b>>2]|0;i=g;return h|0}c[b>>2]=-2147483642;h=c[b>>2]|0;i=g;return h|0}function tn(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;g=m+20|0;h=m+8|0;f=m+4|0;l=m+24|0;j=m;k=m+16|0;c[m+12>>2]=a;c[h>>2]=b;c[f>>2]=e;if((c[f>>2]|0)>>>0<5){c[g>>2]=-1;l=c[g>>2]|0;i=m;return l|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=((c[f>>2]|0)-4|0)>>>0){f=5;break}if((0==(d[(c[h>>2]|0)+(c[l>>2]|0)>>0]|0|0)?0==(d[(c[h>>2]|0)+((c[l>>2]|0)+1)>>0]|0|0):0)?1==(d[(c[h>>2]|0)+((c[l>>2]|0)+2)>>0]|0|0):0){if((d[(c[h>>2]|0)+((c[l>>2]|0)+3)>>0]|0|0)>175){f=11;break}if((d[(c[h>>2]|0)+((c[l>>2]|0)+3)>>0]|0|0)<1){f=11;break}}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==5)c[j>>2]=2;else if((f|0)==11){c[k>>2]=d[(c[h>>2]|0)+((c[l>>2]|0)+3)>>0];c[g>>2]=c[l>>2];c[j>>2]=1}if(((c[j>>2]|0)+-2|0)>>>0>=1){l=c[g>>2]|0;i=m;return l|0}c[g>>2]=-1;l=c[g>>2]|0;i=m;return l|0}function un(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;e=k+16|0;l=k+12|0;f=k+8|0;g=k+4|0;j=k+20|0;h=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[l>>2]|0;if((c[g>>2]|0)>>>0<5){c[e>>2]=-1;l=c[e>>2]|0;i=k;return l|0}c[j>>2]=tn(d,(c[f>>2]|0)+4|0,(c[g>>2]|0)-4|0)|0;if((c[j>>2]|0)==-1){c[e>>2]=-1;c[h>>2]=1}else{c[f>>2]=(c[f>>2]|0)+(4+(c[j>>2]|0));c[g>>2]=(c[g>>2]|0)-(4+(c[j>>2]|0));c[e>>2]=c[g>>2];c[h>>2]=1}l=c[e>>2]|0;i=k;return l|0}function vn(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;if(!(c[a+168>>2]|0)){c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}if((c[a+172>>2]|0)>>>0>(c[a+168>>2]|0)>>>0)Ux(c[a+164>>2]|0,(c[a+164>>2]|0)+(c[a+168>>2]|0)|0,(c[a+172>>2]|0)-(c[a+168>>2]|0)|0)|0;c[a+172>>2]=(c[a+172>>2]|0)-(c[a+168>>2]|0);c[a+168>>2]=0;c[b>>2]=0;e=c[b>>2]|0;i=d;return e|0}function wn(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=i;i=i+64|0;f=p+56|0;q=p+48|0;h=p+40|0;j=p+8|0;l=p+60|0;m=p+44|0;o=p+12|0;n=p+4|0;k=p;c[q>>2]=a;c[h>>2]=b;c[j>>2]=e;e=c[q>>2]|0;c[l>>2]=0;c[p+52>>2]=-1;c[m>>2]=xn(c[h>>2]|0,c[j>>2]|0)|0;a:do switch(c[m>>2]|0){case 5:{c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;c[o+16>>2]=0;c[o+20>>2]=0;c[o+24>>2]=0;c[n>>2]=yn(c[h>>2]|0,c[j>>2]|0,o)|0;do if(179!=(c[n>>2]|0)){if((c[n>>2]|0)==181){if(((d[(c[h>>2]|0)+4>>0]|0)>>4|0)==8?((d[(c[h>>2]|0)+6>>0]|0)&3|0)!=3:0){q=e+224|0;c[q>>2]=(c[q>>2]|0)+1;break}if(((d[(c[h>>2]|0)+4>>0]|0)>>4|0)==8?((d[(c[h>>2]|0)+6>>0]|0)&3|0)==3:0){q=e+224|0;c[q>>2]=(c[q>>2]|0)+2}}}else{c[e+12+16>>2]=c[o>>2];c[e+12+20>>2]=c[o+4>>2];c[e+12+24>>2]=c[o+12>>2];if(+O(+(+g[o+20>>2]-0.0))<9.999999747378752e-06)g[e+204>>2]=40.0;else g[e+204>>2]=1.0e3/+g[o+20>>2];g[e+12+60>>2]=+g[e+204>>2];c[e+224>>2]=0;c[e+196>>2]=1}while(0);break}case 1:case 2:case 3:if(c[e+196>>2]|0){if(!(zn(e,c[h>>2]|0,c[j>>2]|0)|0))break a;c[l>>2]=1;break a}else{c[e+188>>2]=0;c[f>>2]=0;c[k>>2]=1;q=c[f>>2]|0;i=p;return q|0}default:{}}while(0);if(!(c[e+196>>2]|0)){c[e+188>>2]=0;c[f>>2]=0;c[k>>2]=1;q=c[f>>2]|0;i=p;return q|0}if(c[l>>2]|0){c[e+12>>2]=c[e+212>>2];g[e+12+60>>2]=+g[e+204>>2];c[e+12+12>>2]=c[e+180>>2];q=e+180|0;c[q>>2]=~~(+((c[q>>2]|0)>>>0)+ +g[e+204>>2])>>>0;c[e+12+8>>2]=c[e+208>>2];q=e+208|0;c[q>>2]=(c[q>>2]|0)+1;q=c[e+4>>2]|0;pb[c[(c[q>>2]|0)+28>>2]&31](q,c[e+184>>2]|0,c[e+188>>2]|0,e+12|0)|0;c[e+224>>2]=0;c[e+188>>2]=0}An(e,c[h>>2]|0,c[j>>2]|0)|0;do if((c[m>>2]|0)!=3){if((c[m>>2]|0)==2){c[e+212>>2]=2;break}if((c[m>>2]|0)==1)c[e+212>>2]=3}else c[e+212>>2]=1;while(0);c[f>>2]=0;c[k>>2]=1;q=c[f>>2]|0;i=p;return q|0}function xn(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;e=k+12|0;f=k+8|0;l=k+4|0;h=k+16|0;g=k;c[f>>2]=a;c[l>>2]=b;if((c[f>>2]|0)==0|(c[l>>2]|0)<5){c[e>>2]=0;l=c[e>>2]|0;i=k;return l|0}a:do if(((d[c[f>>2]>>0]|0|0)==0?(d[(c[f>>2]|0)+1>>0]|0|0)==0:0)?(d[(c[f>>2]|0)+2>>0]|0|0)==1:0){a=c[f>>2]|0;if(d[(c[f>>2]|0)+3>>0]|0){if((d[a+3>>0]|0|0)==179){c[e>>2]=5;c[g>>2]=1;break}if((d[(c[f>>2]|0)+3>>0]|0|0)==181){c[e>>2]=5;c[g>>2]=1;break}else{c[e>>2]=0;c[g>>2]=1;break}}else{c[h>>2]=((d[a+5>>0]|0)&56)>>3;switch(c[h>>2]|0){case 1:{c[e>>2]=3;c[g>>2]=1;break a}case 2:{c[e>>2]=2;c[g>>2]=1;break a}case 3:{c[e>>2]=1;c[g>>2]=1;break a}default:{c[e>>2]=4;c[g>>2]=1;break a}}}}else j=16;while(0);if((j|0)==16){c[e>>2]=0;c[g>>2]=1}l=c[e>>2]|0;i=k;return l|0}function yn(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;f=l+12|0;h=l;k=l+16|0;j=l+8|0;c[f>>2]=a;c[l+4>>2]=b;c[h>>2]=e;c[k>>2]=d[(c[f>>2]|0)+3>>0];switch(c[k>>2]|0){case 179:{c[c[h>>2]>>2]=(d[(c[f>>2]|0)+4>>0]|0)<<4|(d[(c[f>>2]|0)+5>>0]|0)>>4&240;c[(c[h>>2]|0)+4>>2]=((d[(c[f>>2]|0)+5>>0]|0)&15)<<8|(d[(c[f>>2]|0)+6>>0]|0);c[j>>2]=(d[(c[f>>2]|0)+7>>0]|0)&15;if((c[j>>2]|0)==3){g[(c[h>>2]|0)+20>>2]=25.0;e=c[k>>2]|0;i=l;return e|0}if((c[j>>2]|0)!=5){e=c[k>>2]|0;i=l;return e|0}g[(c[h>>2]|0)+20>>2]=30.0;e=c[k>>2]|0;i=l;return e|0}case 181:{c[(c[h>>2]|0)+12>>2]=(((d[(c[f>>2]|0)+8>>0]|0)&128|0)!=0^1)&1;e=c[k>>2]|0;i=l;return e|0}default:{e=c[k>>2]|0;i=l;return e|0}}return 0}function zn(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0;g=i;i=i+16|0;f=g+12|0;j=g+8|0;h=g+4|0;c[j>>2]=a;c[h>>2]=b;c[g>>2]=e;a=c[j>>2]|0;if(((((d[c[h>>2]>>0]|0|0)==0?(d[(c[h>>2]|0)+1>>0]|0|0)==0:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==1:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==0:0)?(c[a+224>>2]|0)>>>0>1:0){c[f>>2]=1;j=c[f>>2]|0;i=g;return j|0}c[f>>2]=0;j=c[f>>2]|0;i=g;return j|0}function An(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[f>>2]=b;c[g>>2]=d;d=c[j>>2]|0;if(((c[d+188>>2]|0)+(c[g>>2]|0)|0)>>>0>2097152){c[e>>2]=-2147483643;j=c[e>>2]|0;i=h;return j|0}else{Tx((c[d+184>>2]|0)+(c[d+188>>2]|0)|0,c[f>>2]|0,c[g>>2]|0)|0;j=d+188|0;c[j>>2]=(c[j>>2]|0)+(c[g>>2]|0);c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function Bn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+8>>2]=c[f>>2];i=d;return 0}function Cn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;d=f+8|0;g=f+4|0;e=f;c[g>>2]=a;c[e>>2]=b;b=c[g>>2]|0;do if(c[e>>2]|0)if(2==(c[b+8>>2]|0)){c[d>>2]=-2147483642;break}else{c[c[e>>2]>>2]=-1;c[d>>2]=-2147483647;break}else c[d>>2]=-2147483645;while(0);i=f;return c[d>>2]|0}function Dn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;Ej(a);c[a>>2]=2788;c[a+4>>2]=0;c[a+8>>2]=2;c[a+192>>2]=0;c[a+164>>2]=0;c[a+168>>2]=0;c[a+172>>2]=0;c[a+184>>2]=0;c[a+188>>2]=0;c[a+176>>2]=0;c[a+180>>2]=0;c[a+196>>2]=0;c[a+200>>2]=0;g[a+204>>2]=40.0;c[a+208>>2]=0;c[a+212>>2]=0;Ox(a+12|0,0,152)|0;c[a+216>>2]=1;c[a+220>>2]=1;c[a+224>>2]=0;i=b;return}function En(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a>>2]=2852;nb[c[(c[a>>2]|0)+28>>2]&127](a)|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;Vi(a);i=b;return}function Fn(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;En(a);lx(a);i=b;return}function Gn(a){a=a|0;var b=0,d=0,e=0;d=i;i=i+16|0;b=d+4|0;e=d;c[e>>2]=a;a=c[e>>2]|0;nb[c[(c[a>>2]|0)+12>>2]&127](a)|0;c[a+164>>2]=Ix(2097152)|0;if(!(c[a+164>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}c[a+172>>2]=Ix(1024)|0;if(!(c[a+172>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}c[a+176>>2]=Ix(10240)|0;if(!(c[a+176>>2]|0)){e=za(4)|0;c[e>>2]=-2147483646;Xa(e|0,152,0)}else{c[b>>2]=0;i=d;return c[b>>2]|0}return 0}function Hn(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;b=c[b>>2]|0;if(c[b+164>>2]|0){a=c[b+164>>2]|0;if(a|0)Jx(a);c[b+164>>2]=0}if(c[b+4692>>2]|0){a=c[b+4692>>2]|0;if(a|0)Jx(a);c[b+4692>>2]=0}if(c[b+4688>>2]|0){a=c[b+4688>>2]|0;if(a|0)Jx(a);c[b+4688>>2]=0}if(c[b+172>>2]|0){a=c[b+172>>2]|0;if(a|0)Jx(a);c[b+172>>2]=0}if(!(c[b+176>>2]|0)){i=d;return 0}a=c[b+176>>2]|0;if(a|0)Jx(a);c[b+176>>2]=0;i=d;return 0}function In(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d+4|0;f=d;c[e>>2]=a;c[f>>2]=b;c[(c[e>>2]|0)+4>>2]=c[f>>2];i=d;return 0}function Jn(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;h=k+12|0;f=k+8|0;g=k+4|0;j=k;c[f>>2]=b;c[g>>2]=d;c[j>>2]=e;b=c[f>>2]|0;if(!(c[g>>2]|0)){c[h>>2]=-2147483645;j=c[h>>2]|0;i=k;return j|0}else{f=b+308|0;e=c[g>>2]|0;d=f+40|0;do{a[f>>0]=a[e>>0]|0;f=f+1|0;e=e+1|0}while((f|0)<(d|0));c[b+4724>>2]=c[j>>2];c[h>>2]=0;j=c[h>>2]|0;i=k;return j|0}return 0}function Kn(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d+4>>2]=a;c[d>>2]=b;i=d;return -2147483647}function Ln(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=c[d>>2]|0;c[a+8>>2]=2;a=Mn(a)|0;i=b;return a|0}function Mn(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f;c[d>>2]=a;a=c[d>>2]|0;c[a+168>>2]=0;b[a+184>>1]=-1;c[a+180>>2]=0;d=a+188|0;e=d+104|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));c[a+292>>2]=0;c[a+296>>2]=0;c[a+300>>2]=0;c[a+384>>2]=0;Ox(a+388|0,0,1024)|0;c[a+1412>>2]=0;i=f;return 0}function Nn(a,f,g,h){a=a|0;f=f|0;g=g|0;h=h|0;var 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;v=i;i=i+64|0;m=v+48|0;w=v+40|0;n=v+24|0;o=v+16|0;q=v+52|0;s=v+44|0;t=v+36|0;k=v+28|0;l=v+20|0;j=v+12|0;r=v+8|0;u=v+4|0;p=v;c[w>>2]=a;c[v+32>>2]=f;c[n>>2]=g;c[o>>2]=h;f=c[w>>2]|0;if((c[f+8>>2]|0)==2){c[m>>2]=-2147483642;w=c[m>>2]|0;i=v;return w|0}if((c[o>>2]|0)>>>0<12|(c[o>>2]|0)>>>0>2097152){c[m>>2]=-2147483645;w=c[m>>2]|0;i=v;return w|0}c[q>>2]=((d[(c[n>>2]|0)+1>>0]|0)&128)>>7;c[s>>2]=((d[(c[n>>2]|0)+2>>0]|0)<<8)+(d[(c[n>>2]|0)+3>>0]|0);c[t>>2]=((d[(c[n>>2]|0)+4>>0]|0)<<24)+((d[(c[n>>2]|0)+5>>0]|0)<<16)+((d[(c[n>>2]|0)+6>>0]|0)<<8)+(d[(c[n>>2]|0)+7>>0]|0);c[k>>2]=0;c[l>>2]=(d[(c[n>>2]|0)+1>>0]|0)&127;c[j>>2]=((d[c[n>>2]>>0]|0)&15)<<2;c[r>>2]=((d[(c[n>>2]|0)+8>>0]|0)<<24)+((d[(c[n>>2]|0)+9>>0]|0)<<16)+((d[(c[n>>2]|0)+10>>0]|0)<<8)+(d[(c[n>>2]|0)+11>>0]|0);if(1==(c[f+4728>>2]|0)?c[f+4760>>2]|0:0){c[f+12+148>>2]=1;c[u>>2]=0;while(1){if((c[u>>2]|0)>>>0>=(c[f+4756>>2]|0)>>>0)break;c[f+4732+(c[u>>2]<<2)>>2]=c[f+1452+((c[u>>2]|0)*1060|0)+20>>2];c[u>>2]=(c[u>>2]|0)+1}}c[f+4680>>2]=0;a:do if((c[o>>2]|0)>>>0<(12+(c[j>>2]|0)|0)>>>0){c[m>>2]=On(f)|0;c[p>>2]=1}else{do if((d[c[n>>2]>>0]|0)&32|0){c[f+348>>2]=d[(c[n>>2]|0)+((c[o>>2]|0)-1)>>0];if((c[f+348>>2]|0)>>>0>((c[o>>2]|0)-(12+(c[j>>2]|0))|0)>>>0){c[m>>2]=On(f)|0;c[p>>2]=1;break a}else{c[o>>2]=(c[o>>2]|0)-(c[f+348>>2]|0);break}}else c[f+348>>2]=0;while(0);if(112!=(c[l>>2]|0)?((d[c[n>>2]>>0]|0)&16|0)!=0:0){if((c[o>>2]|0)>>>0<(12+(c[j>>2]|0)+4|0)>>>0){c[m>>2]=On(f)|0;c[p>>2]=1;break}c[k>>2]=4+(((d[(c[n>>2]|0)+(14+(c[j>>2]|0))>>0]|0)<<8)+(d[(c[n>>2]|0)+(15+(c[j>>2]|0))>>0]|0)<<2);if((c[o>>2]|0)>>>0<(12+(c[j>>2]|0)+(c[k>>2]|0)|0)>>>0){c[m>>2]=On(f)|0;c[p>>2]=1;break}if(Pn(f,(c[n>>2]|0)+12|0,c[k>>2]|0)|0){c[m>>2]=On(f)|0;c[p>>2]=1;break}}if(112==(c[l>>2]|0)?0==((d[c[n>>2]>>0]|0)&16|0):0){c[m>>2]=-2147483644;c[p>>2]=1;break}c[n>>2]=(c[n>>2]|0)+(12+(c[j>>2]|0)+(c[k>>2]|0));c[o>>2]=(c[o>>2]|0)-(12+(c[j>>2]|0)+(c[k>>2]|0));if(0>=(c[o>>2]|0)>>>0){c[m>>2]=0;c[p>>2]=1;break}if(c[f+4636>>2]|0){c[u>>2]=0;while(1){if((c[u>>2]|0)>>>0>=(c[f+1452+3180>>2]|0)>>>0){h=32;break}if((c[l>>2]|0)==(c[f+1452+((c[u>>2]|0)*1060|0)+8>>2]|0)){h=34;break}if((c[l>>2]|0)==112){h=40;break}c[u>>2]=(c[u>>2]|0)+1}do if((h|0)==32)c[p>>2]=5;else if((h|0)==34){if((c[f+1452+((c[u>>2]|0)*1060|0)>>2]|0)==1){c[m>>2]=Rn(f,c[n>>2]|0,c[o>>2]|0,c[q>>2]|0,c[s>>2]|0,((c[t>>2]|0)>>>0)/((((c[f+1452+((c[u>>2]|0)*1060|0)+12>>2]|0)>>>0)/1e3|0)>>>0)|0)|0;c[p>>2]=1;break}if((c[f+1452+((c[u>>2]|0)*1060|0)>>2]|0)==2){c[m>>2]=no(f,c[n>>2]|0,c[o>>2]|0,c[q>>2]|0,c[s>>2]|0,c[t>>2]|0)|0;c[p>>2]=1;break}else{c[m>>2]=-2147483647;c[p>>2]=1;break}}else if((h|0)==40){c[m>>2]=wo(f,c[n>>2]|0,c[o>>2]|0,c[q>>2]|0,c[s>>2]|0,((c[t>>2]|0)>>>0)/90|0)|0;c[p>>2]=1}while(0);if((c[p>>2]|0)!=5)break;c[m>>2]=-2147483647;c[p>>2]=1;break}switch(c[l>>2]|0){case 113:case 32:case 35:case 99:case 105:case 26:case 96:{if((c[l>>2]|0)!=113){if((c[l>>2]|0)!=113?(e[f+308+10>>1]|0|0)==1:0)b[f+308+10>>1]=256}else b[f+308+10>>1]=1;if(1==(c[f+4728>>2]|0)?c[f+4760>>2]|0:0){c[u>>2]=0;while(1){if((c[u>>2]|0)>=2){h=53;break}if((c[f+4732+(c[u>>2]<<2)>>2]|0)==(c[r>>2]|0)){h=55;break}if((c[f+4732+8+(c[u>>2]<<2)>>2]|0)==0?(c[f+4732+(c[u>>2]<<2)>>2]|0)!=(c[r>>2]|0):0){h=58;break}c[u>>2]=(c[u>>2]|0)+1}if((h|0)==53)c[p>>2]=9;else if((h|0)==55)c[p>>2]=9;else if((h|0)==58){c[f+4732+(c[u>>2]<<2)>>2]=c[r>>2];c[f+4732+8+(c[u>>2]<<2)>>2]=1;c[p>>2]=9}c[f+4748>>2]=c[r>>2]}c[m>>2]=Rn(f,c[n>>2]|0,c[o>>2]|0,c[q>>2]|0,c[s>>2]|0,((c[t>>2]|0)>>>0)/90|0)|0;c[p>>2]=1;break a}case 11:case 104:case 103:case 102:case 98:case 8:case 14:case 0:if(c[f+292>>2]|0){Go(f,c[l>>2]|0)|0;c[m>>2]=no(f,c[n>>2]|0,c[o>>2]|0,c[q>>2]|0,c[s>>2]|0,c[t>>2]|0)|0;c[p>>2]=1;break a}else{c[m>>2]=-2147483393;c[p>>2]=1;break a}case 112:{c[m>>2]=wo(f,c[n>>2]|0,c[o>>2]|0,c[q>>2]|0,c[s>>2]|0,((c[t>>2]|0)>>>0)/90|0)|0;c[p>>2]=1;break a}default:{c[m>>2]=-2147483647;c[p>>2]=1;break a}}}while(0);w=c[m>>2]|0;i=v;return w|0}function On(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[(c[d>>2]|0)+168>>2]=0;i=b;return 0}function Pn(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;l=i;i=i+32|0;f=l+20|0;n=l+12|0;g=l+8|0;m=l+4|0;k=l+24|0;j=l+16|0;h=l;c[n>>2]=a;c[g>>2]=b;c[m>>2]=e;e=c[n>>2]|0;if(0==(c[g>>2]|0)|4>(c[m>>2]|0)>>>0){c[f>>2]=-2147483645;n=c[f>>2]|0;i=l;return n|0}c[k>>2]=((d[c[g>>2]>>0]|0)<<8)+(d[(c[g>>2]|0)+1>>0]|0);c[j>>2]=((d[(c[g>>2]|0)+2>>0]|0)<<8)+(d[(c[g>>2]|0)+3>>0]|0)<<2;if((c[k>>2]|0)==16384){c[f>>2]=Qn(e,(c[g>>2]|0)+4|0,c[j>>2]|0)|0;c[h>>2]=1}else{c[f>>2]=0;c[h>>2]=1}n=c[f>>2]|0;i=l;return n|0}function Qn(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;f=j+12|0;l=j+8|0;g=j+4|0;k=j;h=j+16|0;c[l>>2]=a;c[g>>2]=b;c[k>>2]=e;e=c[l>>2]|0;if(0==(c[g>>2]|0)|4>(c[k>>2]|0)>>>0){c[f>>2]=-2147483645;l=c[f>>2]|0;i=j;return l|0}c[h>>2]=d[c[g>>2]>>0];if((c[h>>2]|0)==128)c[e+4680>>2]=((d[(c[g>>2]|0)+5>>0]|0)&240)>>4;c[f>>2]=0;l=c[f>>2]|0;i=j;return l|0}function Rn(a,d,f,g,h,j){a=a|0;d=d|0;f=f|0;g=g|0;h=h|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=i;i=i+32|0;k=r+24|0;s=r+20|0;l=r+16|0;m=r+12|0;n=r+8|0;o=r+4|0;p=r;q=r+28|0;c[s>>2]=a;c[l>>2]=d;c[m>>2]=f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;f=c[s>>2]|0;d=f+184|0;a=(b[d>>1]|0)+1<<16>>16;b[d>>1]=a;if((a&65535|0)!=(c[o>>2]|0)){On(f)|0;b[f+184>>1]=c[o>>2]}if((c[f+304>>2]|0)!=(c[p>>2]|0)?(c[f+168>>2]|0)>>>0>0:0){c[q>>2]=Sn(f,c[f+164>>2]|0,c[f+168>>2]|0,c[f+304>>2]|0)|0;if(!(256==(e[f+308+10>>1]|0|0)?-2147483647==(c[q>>2]|0):0))c[f+168>>2]=0}c[f+304>>2]=c[p>>2];switch(e[f+308+10>>1]|0|0){case 3:{c[k>>2]=_n(f,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[p>>2]|0)|0;s=c[k>>2]|0;i=r;return s|0}case 256:{c[k>>2]=ao(f,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[p>>2]|0)|0;s=c[k>>2]|0;i=r;return s|0}case 4:{c[k>>2]=ho(f,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[p>>2]|0)|0;s=c[k>>2]|0;i=r;return s|0}case 2:{c[k>>2]=jo(f,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[p>>2]|0)|0;s=c[k>>2]|0;i=r;return s|0}case 1:{c[k>>2]=ko(f,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[p>>2]|0)|0;s=c[k>>2]|0;i=r;return s|0}case 6:{c[k>>2]=lo(f,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[p>>2]|0)|0;s=c[k>>2]|0;i=r;return s|0}case 5:{c[k>>2]=mo(f,c[l>>2]|0,c[m>>2]|0,c[n>>2]|0,c[p>>2]|0)|0;s=c[k>>2]|0;i=r;return s|0}default:{c[k>>2]=-2147483647;s=c[k>>2]|0;i=r;return s|0}}return 0}
function Nu(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=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;u=i;i=i+64|0;t=u;f=u+52|0;g=u+48|0;h=u+44|0;j=u+40|0;l=u+36|0;k=u+32|0;q=u+28|0;r=u+24|0;s=u+20|0;m=u+16|0;n=u+12|0;o=u+8|0;p=u+4|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=e;c[l>>2]=0;c[k>>2]=0;c[q>>2]=0;c[r>>2]=0;c[s>>2]=0;if(!(c[h>>2]|0)){c[f>>2]=-2147483647;t=c[f>>2]|0;i=u;return t|0}c[k>>2]=((d[c[h>>2]>>0]|0)<<24)+((d[(c[h>>2]|0)+1>>0]|0)<<16)+((d[(c[h>>2]|0)+2>>0]|0)<<8)+(d[(c[h>>2]|0)+3>>0]|0);c[r>>2]=c[(c[g>>2]|0)+9392+36>>2];c[s>>2]=(c[g>>2]|0)+448+((c[r>>2]|0)*2208|0)+2192;while(1){if((c[l>>2]|0)>>>0>3)break;c[q>>2]=~~+Q(2.0,+(+((c[l>>2]|0)>>>0)))>>>0;if((c[k>>2]|0)>>>8&c[q>>2]|0){a=(c[s>>2]|0)+12|0;c[a>>2]=(c[a>>2]|0)+4}c[l>>2]=(c[l>>2]|0)+1}c[m>>2]=Ou(h,j,4)|0;if(c[m>>2]|0){c[f>>2]=c[m>>2];t=c[f>>2]|0;i=u;return t|0}c[(c[s>>2]|0)+4>>2]=((d[c[h>>2]>>0]|0)<<24)+((d[(c[h>>2]|0)+1>>0]|0)<<16)+((d[(c[h>>2]|0)+2>>0]|0)<<8)+(d[(c[h>>2]|0)+3>>0]|0);c[n>>2]=Ou(h,j,4)|0;if(c[n>>2]|0){c[f>>2]=c[n>>2];t=c[f>>2]|0;i=u;return t|0}if(c[k>>2]&1|0?(c[o>>2]=Ou(h,j,4)|0,0!=(c[o>>2]|0)):0){c[f>>2]=c[o>>2];t=c[f>>2]|0;i=u;return t|0}if(c[k>>2]&4|0?(c[p>>2]=Ou(h,j,4)|0,0!=(c[p>>2]|0)):0){c[f>>2]=c[p>>2];t=c[f>>2]|0;i=u;return t|0}if(0!=(c[h>>2]|0)?(c[(c[s>>2]|0)+12>>2]|0)>>>0<=(c[j>>2]|0)>>>0:0){c[(c[s>>2]|0)+8>>2]=c[h>>2];c[(c[g>>2]|0)+448+((c[r>>2]|0)*2208|0)+2184>>2]=c[(c[g>>2]|0)+9392+60>>2];c[h>>2]=(c[h>>2]|0)+4;c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[s>>2]|0)+4>>2]|0)>>>0)break;t=c[s>>2]|0;c[t>>2]=(c[t>>2]|0)+(((d[c[h>>2]>>0]|0)<<24)+((d[(c[h>>2]|0)+1>>0]|0)<<16)+((d[(c[h>>2]|0)+2>>0]|0)<<8)+(d[(c[h>>2]|0)+3>>0]|0));c[h>>2]=(c[h>>2]|0)+(c[(c[s>>2]|0)+12>>2]|0);c[l>>2]=(c[l>>2]|0)+1}t=(c[g>>2]|0)+9392+60|0;c[t>>2]=(c[t>>2]|0)+(c[c[s>>2]>>2]|0);c[f>>2]=0;t=c[f>>2]|0;i=u;return t|0}c[t>>2]=650;Pu(25465,t);c[f>>2]=-2147483641;t=c[f>>2]|0;i=u;return t|0}function Ou(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;do if(c[f>>2]|0){if(!(c[g>>2]|0)){c[e>>2]=-2147483647;break}if((c[c[g>>2]>>2]|0)>>>0<(c[h>>2]|0)>>>0){c[e>>2]=-2147483647;break}else{d=c[f>>2]|0;c[d>>2]=(c[d>>2]|0)+(c[h>>2]|0);d=c[g>>2]|0;c[d>>2]=(c[d>>2]|0)-(c[h>>2]|0);c[e>>2]=0;break}}else c[e>>2]=-2147483647;while(0);i=j;return c[e>>2]|0}function Pu(a,b){a=a|0;b=b|0;b=i;i=i+16|0;c[b>>2]=a;i=b;return}function Qu(e,f,g){e=e|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0,y=0;y=i;i=i+64|0;w=y;h=y+52|0;j=y+48|0;k=y+44|0;l=y+40|0;s=y+36|0;r=y+32|0;n=y+28|0;o=y+24|0;u=y+20|0;v=y+16|0;p=y+12|0;q=y+8|0;t=y+4|0;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[s>>2]=0;c[r>>2]=0;c[n>>2]=0;c[o>>2]=0;c[u>>2]=6;c[v>>2]=16;c[p>>2]=2;c[q>>2]=0;c[t>>2]=0;if(0==(c[j>>2]|0)|0==(c[k>>2]|0)){c[h>>2]=-2147483647;x=c[h>>2]|0;i=y;return x|0}if((c[l>>2]|0)>>>0>((c[u>>2]|0)+(c[v>>2]|0)+(c[p>>2]|0)+4+8|0)>>>0){c[t>>2]=(c[k>>2]|0)+8;c[t>>2]=(c[t>>2]|0)+(c[u>>2]|0);c[t>>2]=(c[t>>2]|0)+(c[p>>2]|0);c[t>>2]=(c[t>>2]|0)+(c[v>>2]|0);b[(c[j>>2]|0)+320+72+4>>1]=(d[c[t>>2]>>0]<<8)+(d[(c[t>>2]|0)+1>>0]|0);b[(c[j>>2]|0)+320+72+6>>1]=(d[(c[t>>2]|0)+2>>0]<<8)+(d[(c[t>>2]|0)+2+1>>0]|0)}c[t>>2]=c[k>>2];c[q>>2]=c[l>>2];while(1){if((c[q>>2]|0)>>>0<=8)break;c[o>>2]=(d[c[t>>2]>>0]<<24)+(d[(c[t>>2]|0)+1>>0]<<16)+(d[(c[t>>2]|0)+2>>0]<<8)+(d[(c[t>>2]|0)+3>>0]|0);m=c[t>>2]|0;if((c[o>>2]|0)==((a[25494]<<24)+(a[25495]<<16)+(a[25496]<<8)+(a[25497]|0)|0)){x=8;break}c[t>>2]=m+1;c[q>>2]=(c[q>>2]|0)+-1}if((x|0)==8?(c[t>>2]=m+-4,c[q>>2]=(c[q>>2]|0)+4,c[n>>2]=(d[c[t>>2]>>0]<<24)+(d[(c[t>>2]|0)+1>>0]<<16)+(d[(c[t>>2]|0)+2>>0]<<8)+(d[(c[t>>2]|0)+3>>0]|0),c[s>>2]=Ru(c[j>>2]|0,c[t>>2]|0,c[n>>2]|0)|0,(c[s>>2]|0)==0):0)c[r>>2]=1;if(c[r>>2]|0){c[h>>2]=0;x=c[h>>2]|0;i=y;return x|0}else{Pu(25499,w);c[h>>2]=-2147483641;x=c[h>>2]|0;i=y;return x|0}return 0}function Ru(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+32|0;g=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;m=o+8|0;n=o+4|0;l=o;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[m>>2]=0;c[n>>2]=0;c[l>>2]=0;if(0==(c[h>>2]|0)|0==(c[j>>2]|0)){c[g>>2]=-2147483647;b=c[g>>2]|0;i=o;return b|0}c[j>>2]=(c[j>>2]|0)+13;c[k>>2]=(c[k>>2]|0)-13;c[n>>2]=(d[c[j>>2]>>0]|0)&31;c[l>>2]=(c[h>>2]|0)+448+((c[(c[h>>2]|0)+12>>2]|0)*2208|0)+132;a[c[l>>2]>>0]=0;a[(c[l>>2]|0)+1>>0]=0;a[(c[l>>2]|0)+2>>0]=0;a[(c[l>>2]|0)+3>>0]=1;c[(c[h>>2]|0)+448+((c[(c[h>>2]|0)+12>>2]|0)*2208|0)+1156>>2]=4;c[l>>2]=(c[l>>2]|0)+4;Tx(c[l>>2]|0,(c[j>>2]|0)+3|0,((d[(c[j>>2]|0)+1>>0]|0)<<8)+(d[(c[j>>2]|0)+1+1>>0]|0)|0)|0;c[l>>2]=(c[l>>2]|0)+(((d[(c[j>>2]|0)+1>>0]|0)<<8)+(d[(c[j>>2]|0)+1+1>>0]|0));b=(c[h>>2]|0)+448+((c[(c[h>>2]|0)+12>>2]|0)*2208|0)+1156|0;c[b>>2]=(c[b>>2]|0)+(((d[(c[j>>2]|0)+1>>0]|0)<<8)+(d[(c[j>>2]|0)+1+1>>0]|0));c[j>>2]=(c[j>>2]|0)+1;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[n>>2]|0))break;c[j>>2]=(c[j>>2]|0)+(2+(((d[c[j>>2]>>0]|0)<<8)+(d[(c[j>>2]|0)+1>>0]|0)));c[m>>2]=(c[m>>2]|0)+1}a[c[l>>2]>>0]=0;a[(c[l>>2]|0)+1>>0]=0;a[(c[l>>2]|0)+2>>0]=0;a[(c[l>>2]|0)+3>>0]=1;b=(c[h>>2]|0)+448+((c[(c[h>>2]|0)+12>>2]|0)*2208|0)+1156|0;c[b>>2]=(c[b>>2]|0)+4;c[l>>2]=(c[l>>2]|0)+4;Tx(c[l>>2]|0,(c[j>>2]|0)+3|0,((d[(c[j>>2]|0)+1>>0]|0)<<8)+(d[(c[j>>2]|0)+1+1>>0]|0)|0)|0;b=(c[h>>2]|0)+448+((c[(c[h>>2]|0)+12>>2]|0)*2208|0)+1156|0;c[b>>2]=(c[b>>2]|0)+(((d[(c[j>>2]|0)+1>>0]|0)<<8)+(d[(c[j>>2]|0)+1+1>>0]|0));c[g>>2]=0;b=c[g>>2]|0;i=o;return b|0}function Su(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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;y=i;i=i+64|0;w=y;j=y+48|0;k=y+44|0;l=y+40|0;m=y+36|0;n=y+32|0;o=y+28|0;u=y+24|0;t=y+20|0;q=y+16|0;r=y+12|0;s=y+8|0;v=y+4|0;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=h;c[u>>2]=0;c[t>>2]=0;c[q>>2]=0;c[r>>2]=0;c[s>>2]=0;c[v>>2]=0;if(0==(c[k>>2]|0)|0==(c[l>>2]|0)){c[j>>2]=-2147483647;x=c[j>>2]|0;i=y;return x|0}c[v>>2]=c[l>>2];c[s>>2]=c[m>>2];while(1){if((c[s>>2]|0)>>>0<=8)break;c[r>>2]=(d[c[v>>2]>>0]<<24)+(d[(c[v>>2]|0)+1>>0]<<16)+(d[(c[v>>2]|0)+2>>0]<<8)+(d[(c[v>>2]|0)+3>>0]|0);p=c[v>>2]|0;if((c[r>>2]|0)==((a[25521]<<24)+(a[25522]<<16)+(a[25523]<<8)+(a[25524]|0)|0)){x=6;break}c[v>>2]=p+1;c[s>>2]=(c[s>>2]|0)+-1}if((x|0)==6?(c[v>>2]=p+-4,c[s>>2]=(c[s>>2]|0)+4,c[q>>2]=(d[c[v>>2]>>0]<<24)+(d[(c[v>>2]|0)+1>>0]<<16)+(d[(c[v>>2]|0)+2>>0]<<8)+(d[(c[v>>2]|0)+3>>0]|0),c[u>>2]=Tu(c[k>>2]|0,c[v>>2]|0,c[q>>2]|0,c[n>>2]|0,c[o>>2]|0)|0,(c[u>>2]|0)==0):0)c[t>>2]=1;if(c[t>>2]|0){c[j>>2]=0;x=c[j>>2]|0;i=y;return x|0}else{Pu(25526,w);c[j>>2]=-2147483641;x=c[j>>2]|0;i=y;return x|0}return 0}function Tu(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var 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;v=i;i=i+48|0;m=v+40|0;n=v+36|0;j=v+32|0;k=v+28|0;o=v+24|0;p=v+20|0;t=v+16|0;u=v+12|0;q=v+8|0;r=v+4|0;s=v;c[n>>2]=b;c[j>>2]=e;c[k>>2]=f;c[o>>2]=g;c[p>>2]=h;c[t>>2]=0;c[u>>2]=0;c[q>>2]=0;c[r>>2]=0;c[s>>2]=0;if(0==(c[n>>2]|0)|0==(c[j>>2]|0)){c[m>>2]=-2147483647;u=c[m>>2]|0;i=v;return u|0}c[u>>2]=c[j>>2];while(1){if((c[t>>2]|0)>>>0>=((c[k>>2]|0)-4|0)>>>0)break;h=5==(d[(c[u>>2]|0)+(c[t>>2]|0)>>0]|0|0);c[t>>2]=(c[t>>2]|0)+1;if(h){l=6;break}}a:do if((l|0)==6)while(1){if((c[t>>2]|0)>>>0>=((c[k>>2]|0)-4|0)>>>0)break a;if(128!=(d[(c[u>>2]|0)+(c[t>>2]|0)>>0]|0|0))break a;c[t>>2]=(c[t>>2]|0)+1;l=6}while(0);if((c[t>>2]|0)==((c[k>>2]|0)-4|0)){c[m>>2]=-2147483641;u=c[m>>2]|0;i=v;return u|0}c[u>>2]=(c[u>>2]|0)+(c[t>>2]|0);c[t>>2]=d[c[u>>2]>>0];c[u>>2]=(c[u>>2]|0)+1;if(0==(c[u>>2]|0)|(c[t>>2]|0)>>>0<2){c[m>>2]=-2147483641;u=c[m>>2]|0;i=v;return u|0}j=c[n>>2]|0;if(1836069985==(c[o>>2]|0)){c[q>>2]=(c[n>>2]|0)+448+((c[j+16>>2]|0)*2208|0)+132;c[s>>2]=(((d[c[u>>2]>>0]|0)&7)<<1)+(((d[(c[u>>2]|0)+1>>0]|0)&128)>>7);c[(c[n>>2]|0)+320+56+4>>2]=16;c[(c[n>>2]|0)+320+56+8>>2]=c[5188+(c[s>>2]<<2)>>2];c[r>>2]=((d[(c[u>>2]|0)+1>>0]|0)&120)>>3;c[(c[n>>2]|0)+320+56>>2]=c[r>>2];c[p>>2]=(c[p>>2]|0)+7;a[c[q>>2]>>0]=-1;a[(c[q>>2]|0)+1>>0]=-7;a[(c[q>>2]|0)+2>>0]=64|c[s>>2]<<2|c[r>>2]>>2&1;a[(c[q>>2]|0)+3>>0]=c[r>>2]<<6|(c[p>>2]|0)>>>11;a[(c[q>>2]|0)+4>>0]=(c[p>>2]|0)>>>3;a[(c[q>>2]|0)+5>>0]=(c[p>>2]&7)<<5|31;a[(c[q>>2]|0)+6>>0]=-4;c[(c[n>>2]|0)+448+((c[(c[n>>2]|0)+16>>2]|0)*2208|0)+1156>>2]=7}else{c[q>>2]=(c[n>>2]|0)+448+((c[j+12>>2]|0)*2208|0)+132;Tx(c[q>>2]|0,c[u>>2]|0,c[t>>2]|0)|0;c[(c[n>>2]|0)+448+((c[(c[n>>2]|0)+12>>2]|0)*2208|0)+1156>>2]=c[t>>2]}c[m>>2]=0;u=c[m>>2]|0;i=v;return u|0}function Uu(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=i;i=i+96|0;x=D+8|0;w=D;z=D+84|0;h=D+80|0;j=D+76|0;k=D+72|0;A=D+68|0;l=D+64|0;m=D+60|0;B=D+56|0;o=D+52|0;n=D+48|0;r=D+44|0;s=D+40|0;p=D+36|0;q=D+32|0;v=D+28|0;C=D+24|0;t=D+20|0;u=D+16|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=e;c[A>>2]=f;c[l>>2]=g;c[m>>2]=0;c[B>>2]=0;c[o>>2]=0;c[n>>2]=0;c[r>>2]=0;c[s>>2]=0;c[p>>2]=0;c[q>>2]=0;c[v>>2]=0;c[C>>2]=0;c[t>>2]=0;c[u>>2]=0;if(0==(c[h>>2]|0)|-1==(c[k>>2]|0)|-1==(c[j>>2]|0)){c[w>>2]=1775;Pu(25548,w);c[z>>2]=-2147483647;C=c[z>>2]|0;i=D;return C|0}if((c[j>>2]|0)>>>0>=(c[(c[h>>2]|0)+448+((c[k>>2]|0)*2208|0)+116+4>>2]|0)>>>0){c[z>>2]=-2147483647;C=c[z>>2]|0;i=D;return C|0}c[v>>2]=c[(c[h>>2]|0)+448+((c[k>>2]|0)*2208|0)+36+8>>2];c[C>>2]=(c[(c[h>>2]|0)+448+((c[k>>2]|0)*2208|0)+36+8>>2]|0)+4;c[t>>2]=c[(c[h>>2]|0)+448+((c[k>>2]|0)*2208|0)+52+8>>2];c[u>>2]=(c[(c[h>>2]|0)+448+((c[k>>2]|0)*2208|0)+52+8>>2]|0)+4;c[o>>2]=c[(c[h>>2]|0)+448+((c[k>>2]|0)*2208|0)+16>>2];c[n>>2]=c[(c[h>>2]|0)+448+((c[k>>2]|0)*2208|0)+100+4>>2];a:do if(1==(c[(c[h>>2]|0)+28>>2]|0)?(c[k>>2]|0)==(c[(c[h>>2]|0)+12>>2]|0):0){c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(c[h>>2]|0)+448+((c[k>>2]|0)*2208|0)+52+4>>2]|0)>>>0)break a;c[p>>2]=(c[p>>2]|0)+(((d[c[t>>2]>>0]|0)<<24)+((d[(c[t>>2]|0)+1>>0]|0)<<16)+((d[(c[t>>2]|0)+2>>0]|0)<<8)+(d[(c[t>>2]|0)+3>>0]|0));if(((c[p>>2]|0)-1|0)>>>0>=(c[j>>2]|0)>>>0)break;c[t>>2]=(c[t>>2]|0)+8;c[u>>2]=(c[u>>2]|0)+8;c[m>>2]=(c[m>>2]|0)+1}c[q>>2]=((d[c[u>>2]>>0]|0)<<24)+((d[(c[u>>2]|0)+1>>0]|0)<<16)+((d[(c[u>>2]|0)+2>>0]|0)<<8)+(d[(c[u>>2]|0)+3>>0]|0)}while(0);c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(c[h>>2]|0)+448+((c[k>>2]|0)*2208|0)+36+4>>2]|0)>>>0){y=26;break}c[r>>2]=(c[r>>2]|0)+(((d[c[v>>2]>>0]|0)<<24)+((d[(c[v>>2]|0)+1>>0]|0)<<16)+((d[(c[v>>2]|0)+2>>0]|0)<<8)+(d[(c[v>>2]|0)+3>>0]|0));w=$(((d[c[v>>2]>>0]|0)<<24)+((d[(c[v>>2]|0)+1>>0]|0)<<16)+((d[(c[v>>2]|0)+2>>0]|0)<<8)+(d[(c[v>>2]|0)+3>>0]|0)|0,((d[c[C>>2]>>0]|0)<<24)+((d[(c[C>>2]|0)+1>>0]|0)<<16)+((d[(c[C>>2]|0)+2>>0]|0)<<8)+(d[(c[C>>2]|0)+3>>0]|0)|0)|0;c[s>>2]=(c[s>>2]|0)+w;if(((c[r>>2]|0)-1|0)>>>0>=(c[j>>2]|0)>>>0)break;c[v>>2]=(c[v>>2]|0)+8;c[C>>2]=(c[C>>2]|0)+8;c[m>>2]=(c[m>>2]|0)+1}if((y|0)==26){C=c[j>>2]|0;c[x>>2]=1867;c[x+4>>2]=C;Pu(25557,x);c[z>>2]=-2147483647;C=c[z>>2]|0;i=D;return C|0}if(1==(c[o>>2]|0)?(c[k>>2]|0)==(c[(c[h>>2]|0)+16>>2]|0):0){y=$((c[n>>2]|0)-(c[j>>2]|0)-1|0,((c[s>>2]|0)>>>0)/((c[n>>2]|0)>>>0)|0)|0;c[s>>2]=(c[s>>2]|0)-y;c[s>>2]=(c[s>>2]|0)+(c[q>>2]|0);c[B>>2]=~~(+((c[s>>2]|0)>>>0)*1.0e3/8.0e3)>>>0}else{y=$((c[r>>2]|0)-(c[j>>2]|0)-1|0,((d[c[C>>2]>>0]|0)<<24)+((d[(c[C>>2]|0)+1>>0]|0)<<16)+((d[(c[C>>2]|0)+2>>0]|0)<<8)+(d[(c[C>>2]|0)+3>>0]|0)|0)|0;c[s>>2]=(c[s>>2]|0)-y;c[s>>2]=(c[s>>2]|0)+(c[q>>2]|0);c[B>>2]=~~(+((c[s>>2]|0)>>>0)*1.0e3/+((c[(c[h>>2]|0)+448+((c[k>>2]|0)*2208|0)+4>>2]|0)>>>0))>>>0}if((c[k>>2]|0)==(c[(c[h>>2]|0)+12>>2]|0)){h=c[l>>2]|0;if(!(((d[c[C>>2]>>0]|0)<<24)+((d[(c[C>>2]|0)+1>>0]|0)<<16)+((d[(c[C>>2]|0)+2>>0]|0)<<8)+(d[(c[C>>2]|0)+3>>0]|0)|0))c[h>>2]=1;else c[h>>2]=0;c[c[A>>2]>>2]=c[B>>2]}else c[c[A>>2]>>2]=c[B>>2];c[z>>2]=0;C=c[z>>2]|0;i=D;return C|0}function Vu(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=i;i=i+64|0;w=y;g=y+60|0;h=y+56|0;j=y+52|0;k=y+48|0;l=y+44|0;m=y+40|0;n=y+36|0;o=y+32|0;q=y+28|0;r=y+24|0;p=y+20|0;s=y+16|0;v=y+12|0;u=y+8|0;t=y+4|0;c[h>>2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=0;c[n>>2]=0;c[o>>2]=0;c[q>>2]=0;c[r>>2]=0;c[p>>2]=0;c[s>>2]=0;c[v>>2]=0;c[u>>2]=0;c[t>>2]=0;if(0==(c[h>>2]|0)|0==(c[j>>2]|0)){c[w>>2]=1901;Pu(25548,w);c[g>>2]=-2147483647;x=c[g>>2]|0;i=y;return x|0}c[s>>2]=c[(c[h>>2]|0)+448+((c[l>>2]|0)*2208|0)+84+8>>2];c[v>>2]=(c[(c[h>>2]|0)+448+((c[l>>2]|0)*2208|0)+84+8>>2]|0)+4;c[u>>2]=(c[(c[h>>2]|0)+448+((c[l>>2]|0)*2208|0)+84+8>>2]|0)+8;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=((c[(c[h>>2]|0)+448+((c[l>>2]|0)*2208|0)+84+4>>2]|0)-1|0)>>>0)break;c[t>>2]=(c[s>>2]|0)+12;c[o>>2]=((d[c[t>>2]>>0]|0)<<24)+((d[(c[t>>2]|0)+1>>0]|0)<<16)+((d[(c[t>>2]|0)+2>>0]|0)<<8)+(d[(c[t>>2]|0)+3>>0]|0)-(((d[c[s>>2]>>0]|0)<<24)+((d[(c[s>>2]|0)+1>>0]|0)<<16)+((d[(c[s>>2]|0)+2>>0]|0)<<8)+(d[(c[s>>2]|0)+3>>0]|0));c[p>>2]=c[q>>2];w=$(c[o>>2]|0,((d[c[v>>2]>>0]|0)<<24)+((d[(c[v>>2]|0)+1>>0]|0)<<16)+((d[(c[v>>2]|0)+2>>0]|0)<<8)+(d[(c[v>>2]|0)+3>>0]|0)|0)|0;c[q>>2]=(c[q>>2]|0)+w;if(((c[q>>2]|0)-1|0)>>>0>=(c[k>>2]|0)>>>0){x=6;break}c[s>>2]=(c[s>>2]|0)+12;c[v>>2]=(c[v>>2]|0)+12;c[u>>2]=(c[u>>2]|0)+12;c[m>>2]=(c[m>>2]|0)+1}if((x|0)==6){c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;w=$(c[n>>2]|0,((d[c[v>>2]>>0]|0)<<24)+((d[(c[v>>2]|0)+1>>0]|0)<<16)+((d[(c[v>>2]|0)+2>>0]|0)<<8)+(d[(c[v>>2]|0)+3>>0]|0)|0)|0;if((c[p>>2]|0)+(w>>>0<=(c[k>>2]|0)>>>0&1)|0?(w=(c[p>>2]|0)+($((c[n>>2]|0)+1|0,((d[c[v>>2]>>0]|0)<<24)+((d[(c[v>>2]|0)+1>>0]|0)<<16)+((d[(c[v>>2]|0)+2>>0]|0)<<8)+(d[(c[v>>2]|0)+3>>0]|0)|0)|0)|0,w>>>0>(c[k>>2]|0)>>>0):0){x=10;break}c[n>>2]=(c[n>>2]|0)+1}if((x|0)==10)c[c[j>>2]>>2]=((d[c[s>>2]>>0]|0)<<24)+((d[(c[s>>2]|0)+1>>0]|0)<<16)+((d[(c[s>>2]|0)+2>>0]|0)<<8)+(d[(c[s>>2]|0)+3>>0]|0)+(c[n>>2]|0);x=(c[q>>2]|0)-($(((d[c[t>>2]>>0]|0)<<24)+((d[(c[t>>2]|0)+1>>0]|0)<<16)+((d[(c[t>>2]|0)+2>>0]|0)<<8)+(d[(c[t>>2]|0)+3>>0]|0)-(c[c[j>>2]>>2]|0)|0,((d[c[v>>2]>>0]|0)<<24)+((d[(c[v>>2]|0)+1>>0]|0)<<16)+((d[(c[v>>2]|0)+2>>0]|0)<<8)+(d[(c[v>>2]|0)+3>>0]|0)|0)|0)|0;c[(c[j>>2]|0)+4>>2]=x;c[(c[j>>2]|0)+12>>2]=((d[c[u>>2]>>0]|0)<<24)+((d[(c[u>>2]|0)+1>>0]|0)<<16)+((d[(c[u>>2]|0)+2>>0]|0)<<8)+(d[(c[u>>2]|0)+3>>0]|0);c[(c[j>>2]|0)+8>>2]=((d[c[v>>2]>>0]|0)<<24)+((d[(c[v>>2]|0)+1>>0]|0)<<16)+((d[(c[v>>2]|0)+2>>0]|0)<<8)+(d[(c[v>>2]|0)+3>>0]|0);c[g>>2]=0;x=c[g>>2]|0;i=y;return x|0}if(1==(c[(c[h>>2]|0)+448+((c[l>>2]|0)*2208|0)+16>>2]|0))c[r>>2]=1;else c[r>>2]=((d[c[v>>2]>>0]|0)<<24)+((d[(c[v>>2]|0)+1>>0]|0)<<16)+((d[(c[v>>2]|0)+2>>0]|0)<<8)+(d[(c[v>>2]|0)+3>>0]|0);c[c[j>>2]>>2]=((d[c[s>>2]>>0]|0)<<24)+((d[(c[s>>2]|0)+1>>0]|0)<<16)+((d[(c[s>>2]|0)+2>>0]|0)<<8)+(d[(c[s>>2]|0)+3>>0]|0)+((((c[k>>2]|0)-(c[q>>2]|0)|0)>>>0)/((c[r>>2]|0)>>>0)|0);x=(c[q>>2]|0)+($((c[c[j>>2]>>2]|0)-(((d[c[s>>2]>>0]|0)<<24)+((d[(c[s>>2]|0)+1>>0]|0)<<16)+((d[(c[s>>2]|0)+2>>0]|0)<<8)+(d[(c[s>>2]|0)+3>>0]|0))|0,c[r>>2]|0)|0)|0;c[(c[j>>2]|0)+4>>2]=x;c[(c[j>>2]|0)+12>>2]=((d[c[u>>2]>>0]|0)<<24)+((d[(c[u>>2]|0)+1>>0]|0)<<16)+((d[(c[u>>2]|0)+2>>0]|0)<<8)+(d[(c[u>>2]|0)+3>>0]|0);do if(c[(c[h>>2]|0)+9280>>2]|0){if((c[l>>2]|0)==(c[(c[h>>2]|0)+12>>2]|0)){c[(c[h>>2]|0)+9320+56>>2]=c[(c[j>>2]|0)+12>>2];break}if((c[l>>2]|0)==(c[(c[h>>2]|0)+16>>2]|0)){c[(c[h>>2]|0)+9320+60>>2]=c[(c[j>>2]|0)+12>>2];break}if((c[l>>2]|0)==(c[(c[h>>2]|0)+20>>2]|0)){c[(c[h>>2]|0)+9320+64>>2]=c[(c[j>>2]|0)+12>>2];break}if((c[l>>2]|0)==(c[(c[h>>2]|0)+24>>2]|0))c[(c[h>>2]|0)+9320+68>>2]=c[(c[j>>2]|0)+12>>2]}while(0);c[g>>2]=0;x=c[g>>2]|0;i=y;return x|0}function Wu(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m+20|0;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m;c[f>>2]=a;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[k>>2]=0;c[k>>2]=c[(c[f>>2]|0)+448+((c[h>>2]|0)*2208|0)+68+8>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[f>>2]|0)+448+((c[h>>2]|0)*2208|0)+68+4>>2]|0)>>>0){f=6;break}if(((c[g>>2]|0)+1|0)==(((d[c[k>>2]>>0]|0)<<24)+((d[(c[k>>2]|0)+1>>0]|0)<<16)+((d[(c[k>>2]|0)+2>>0]|0)<<8)+(d[(c[k>>2]|0)+3>>0]|0)|0)){f=4;break}c[k>>2]=(c[k>>2]|0)+4;c[j>>2]=(c[j>>2]|0)+1}if((f|0)==4){c[l>>2]=1;l=c[l>>2]|0;i=m;return l|0}else if((f|0)==6){c[l>>2]=0;l=c[l>>2]|0;i=m;return l|0}return 0}function Xu(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=i;i=i+80|0;m=D;B=D+76|0;n=D+72|0;o=D+68|0;j=D+64|0;k=D+60|0;p=D+56|0;q=D+52|0;l=D+48|0;C=D+44|0;r=D+40|0;s=D+36|0;t=D+32|0;u=D+28|0;v=D+24|0;w=D+20|0;x=D+16|0;y=D+12|0;z=D+8|0;A=D+4|0;c[n>>2]=b;c[o>>2]=e;c[j>>2]=f;c[k>>2]=g;c[p>>2]=h;c[q>>2]=0;c[l>>2]=0;c[C>>2]=0;c[r>>2]=0;c[s>>2]=0;c[t>>2]=0;if(0!=(c[n>>2]|0)?(c[o>>2]|0)>>>0<=(c[(c[n>>2]|0)+448+((c[j>>2]|0)*2208|0)+84+4>>2]|0)>>>0:0){if((c[j>>2]|0)==(c[(c[n>>2]|0)+12>>2]|0))c[l>>2]=Wu(c[n>>2]|0,c[k>>2]|0,c[j>>2]|0)|0;c[s>>2]=c[(c[n>>2]|0)+448+((c[j>>2]|0)*2208|0)+20+8>>2];if(!(c[s>>2]|0)){c[B>>2]=-2147483647;C=c[B>>2]|0;i=D;return C|0}c[r>>2]=(d[c[s>>2]>>0]<<24)+(d[(c[s>>2]|0)+1>>0]<<16)+(d[(c[s>>2]|0)+2>>0]<<8)+(d[(c[s>>2]|0)+3>>0]|0);if(!(c[r>>2]|0)){c[B>>2]=-2147483647;C=c[B>>2]|0;i=D;return C|0}c[q>>2]=0;while(1){j=c[s>>2]|0;if((c[q>>2]|0)>>>0>=((c[o>>2]|0)-1|0)>>>0)break;c[s>>2]=(c[s>>2]|0)+((d[j>>0]<<24)+(d[(c[s>>2]|0)+1>>0]<<16)+(d[(c[s>>2]|0)+2>>0]<<8)+(d[(c[s>>2]|0)+3>>0]|0));c[q>>2]=(c[q>>2]|0)+1}c[t>>2]=j+4;c[C>>2]=(d[c[t>>2]>>0]<<24)+(d[(c[t>>2]|0)+1>>0]<<16)+(d[(c[t>>2]|0)+2>>0]<<8)+(d[(c[t>>2]|0)+3>>0]|0);do if((c[C>>2]|0)!=((a[25585]<<24)+(a[25586]<<16)+(a[25587]<<8)+(a[25588]|0)|0)){if((c[C>>2]|0)==((a[25590]<<24)+(a[25591]<<16)+(a[25592]<<8)+(a[25593]|0)|0)){if(!(c[(c[n>>2]|0)+448+((c[(c[n>>2]|0)+12>>2]|0)*2208|0)+1156>>2]|0)){c[v>>2]=Yu(c[n>>2]|0,c[s>>2]|0,c[r>>2]|0)|0;if(c[v>>2]|0){c[B>>2]=c[v>>2];C=c[B>>2]|0;i=D;return C|0}c[w>>2]=Su(c[n>>2]|0,c[s>>2]|0,c[r>>2]|0,1836070006,0)|0;if(c[w>>2]|0){c[B>>2]=c[w>>2];C=c[B>>2]|0;i=D;return C|0}}c[(c[n>>2]|0)+320>>2]=1297101910;break}if((c[C>>2]|0)==((a[25595]<<24)+(a[25596]<<16)+(a[25597]<<8)+(a[25598]|0)|0)){if(0==(c[(c[n>>2]|0)+448+((c[(c[n>>2]|0)+16>>2]|0)*2208|0)+1156>>2]|0)?(c[x>>2]=Su(c[n>>2]|0,c[s>>2]|0,c[r>>2]|0,1836069985,c[p>>2]|0)|0,0!=(c[x>>2]|0)):0){c[B>>2]=c[x>>2];C=c[B>>2]|0;i=D;return C|0}c[(c[n>>2]|0)+320>>2]=1094796032;break}if((c[C>>2]|0)==((a[25600]<<24)+(a[25601]<<16)+(a[25602]<<8)+(a[25603]|0)|0)){c[y>>2]=Zu(c[n>>2]|0,c[s>>2]|0,c[r>>2]|0)|0;if(!(c[y>>2]|0)){c[(c[n>>2]|0)+320>>2]=925970753;break}c[B>>2]=c[y>>2];C=c[B>>2]|0;i=D;return C|0}if((c[C>>2]|0)==((a[25605]<<24)+(a[25606]<<16)+(a[25607]<<8)+(a[25608]|0)|0)){c[z>>2]=Zu(c[n>>2]|0,c[s>>2]|0,c[r>>2]|0)|0;if(!(c[z>>2]|0)){c[(c[n>>2]|0)+320>>2]=925970773;break}c[B>>2]=c[z>>2];C=c[B>>2]|0;i=D;return C|0}if((c[C>>2]|0)!=((a[25610]<<24)+(a[25611]<<16)+(a[25612]<<8)+(a[25613]|0)|0)){if((c[C>>2]|0)==((a[25777]<<24)+(a[25778]<<16)+(a[25779]<<8)+(a[25780]|0)|0)){c[(c[n>>2]|0)+320>>2]=1952807028;break}j=(c[n>>2]|0)+320|0;if((c[C>>2]|0)==((a[25782]<<24)+(a[25783]<<16)+(a[25784]<<8)+(a[25785]|0)|0)){c[j>>2]=1886549620;break}else{c[j>>2]=1431192806;break}}else{if(0==(c[(c[n>>2]|0)+448+((c[(c[n>>2]|0)+12>>2]|0)*2208|0)+1156>>2]|0)?(c[A>>2]=_u(c[n>>2]|0,c[s>>2]|0,c[r>>2]|0)|0,0!=(c[A>>2]|0)):0){c[B>>2]=c[A>>2];C=c[B>>2]|0;i=D;return C|0}c[(c[n>>2]|0)+320>>2]=1211250229;break}}else{if(0==(c[(c[n>>2]|0)+448+((c[(c[n>>2]|0)+12>>2]|0)*2208|0)+1156>>2]|0)?(c[u>>2]=Qu(c[n>>2]|0,c[s>>2]|0,c[r>>2]|0)|0,0!=(c[u>>2]|0)):0){c[B>>2]=c[u>>2];C=c[B>>2]|0;i=D;return C|0}c[(c[n>>2]|0)+320>>2]=1211250228}while(0);c[B>>2]=0;C=c[B>>2]|0;i=D;return C|0}c[m>>2]=2044;Pu(25548,m);c[B>>2]=-2147483647;C=c[B>>2]|0;i=D;return C|0}function Yu(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+32|0;l=m;g=m+20|0;h=m+16|0;n=m+12|0;j=m+8|0;k=m+4|0;c[h>>2]=a;c[n>>2]=e;c[j>>2]=f;c[k>>2]=c[n>>2];if(0==(c[h>>2]|0)|0==(c[n>>2]|0)){c[l>>2]=3086;Pu(25548,l);c[g>>2]=-2147483647;n=c[g>>2]|0;i=m;return n|0}if((c[j>>2]|0)>>>0>28){c[k>>2]=(c[k>>2]|0)+16;c[k>>2]=(c[k>>2]|0)+16;b[(c[h>>2]|0)+320+72+4>>1]=((d[c[k>>2]>>0]|0)<<8)+(d[(c[k>>2]|0)+1>>0]|0);b[(c[h>>2]|0)+320+72+6>>1]=((d[(c[k>>2]|0)+2>>0]|0)<<8)+(d[(c[k>>2]|0)+2+1>>0]|0)}c[g>>2]=0;n=c[g>>2]|0;i=m;return n|0}function Zu(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;f=k+16|0;g=k+12|0;l=k+8|0;h=k+4|0;j=k;c[g>>2]=a;c[l>>2]=b;c[h>>2]=e;c[j>>2]=c[l>>2];if(!(c[j>>2]|0)){c[f>>2]=-2147483647;l=c[f>>2]|0;i=k;return l|0}if(!(c[g>>2]|0)){c[f>>2]=-2147483647;l=c[f>>2]|0;i=k;return l|0}if((c[h>>2]|0)>>>0>28){c[j>>2]=(c[j>>2]|0)+16;c[j>>2]=(c[j>>2]|0)+8;c[(c[g>>2]|0)+320+56>>2]=((d[c[j>>2]>>0]|0)<<8)+(d[(c[j>>2]|0)+1>>0]|0);c[j>>2]=(c[j>>2]|0)+8;c[(c[g>>2]|0)+320+56+8>>2]=((d[c[j>>2]>>0]|0)<<8)+(d[(c[j>>2]|0)+1>>0]|0)}c[f>>2]=0;l=c[f>>2]|0;i=k;return l|0}function _u(e,f,g){e=e|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0,y=0;y=i;i=i+64|0;w=y;h=y+52|0;j=y+48|0;k=y+44|0;l=y+40|0;s=y+36|0;r=y+32|0;n=y+28|0;o=y+24|0;u=y+20|0;v=y+16|0;p=y+12|0;q=y+8|0;t=y+4|0;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[s>>2]=0;c[r>>2]=0;c[n>>2]=0;c[o>>2]=0;c[u>>2]=6;c[v>>2]=16;c[p>>2]=2;c[q>>2]=0;c[t>>2]=0;if(0==(c[j>>2]|0)|0==(c[k>>2]|0)){c[h>>2]=-2147483647;x=c[h>>2]|0;i=y;return x|0}if((c[l>>2]|0)>>>0>((c[u>>2]|0)+(c[v>>2]|0)+(c[p>>2]|0)+4+8|0)>>>0){c[t>>2]=(c[k>>2]|0)+8;c[t>>2]=(c[t>>2]|0)+(c[u>>2]|0);c[t>>2]=(c[t>>2]|0)+(c[p>>2]|0);c[t>>2]=(c[t>>2]|0)+(c[v>>2]|0);b[(c[j>>2]|0)+320+72+4>>1]=(d[c[t>>2]>>0]<<8)+(d[(c[t>>2]|0)+1>>0]|0);b[(c[j>>2]|0)+320+72+6>>1]=(d[(c[t>>2]|0)+2>>0]<<8)+(d[(c[t>>2]|0)+2+1>>0]|0)}c[t>>2]=c[k>>2];c[q>>2]=c[l>>2];while(1){if((c[q>>2]|0)>>>0<=8)break;c[o>>2]=(d[c[t>>2]>>0]<<24)+(d[(c[t>>2]|0)+1>>0]<<16)+(d[(c[t>>2]|0)+2>>0]<<8)+(d[(c[t>>2]|0)+3>>0]|0);m=c[t>>2]|0;if((c[o>>2]|0)==((a[25615]<<24)+(a[25616]<<16)+(a[25617]<<8)+(a[25618]|0)|0)){x=8;break}c[t>>2]=m+1;c[q>>2]=(c[q>>2]|0)+-1}if((x|0)==8?(c[t>>2]=m+-4,c[q>>2]=(c[q>>2]|0)+4,c[n>>2]=(d[c[t>>2]>>0]<<24)+(d[(c[t>>2]|0)+1>>0]<<16)+(d[(c[t>>2]|0)+2>>0]<<8)+(d[(c[t>>2]|0)+3>>0]|0),c[s>>2]=$u(c[j>>2]|0,c[t>>2]|0,c[n>>2]|0)|0,(c[s>>2]|0)==0):0)c[r>>2]=1;if(c[r>>2]|0){c[h>>2]=0;x=c[h>>2]|0;i=y;return x|0}else{Pu(25499,w);c[h>>2]=-2147483641;x=c[h>>2]|0;i=y;return x|0}return 0}function $u(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=i;i=i+64|0;s=u+16|0;t=u+8|0;r=u;g=u+60|0;h=u+56|0;j=u+52|0;k=u+48|0;n=u+44|0;q=u+40|0;o=u+36|0;p=u+32|0;l=u+28|0;m=u+24|0;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[n>>2]=0;c[q>>2]=0;c[o>>2]=0;c[p>>2]=0;c[l>>2]=0;c[m>>2]=0;if(!(c[h>>2]|0)){c[g>>2]=-2147483647;t=c[g>>2]|0;i=u;return t|0}if(!(c[j>>2]|0)){c[g>>2]=-2147483647;t=c[g>>2]|0;i=u;return t|0}c[m>>2]=c[(c[h>>2]|0)+448+((c[(c[h>>2]|0)+12>>2]|0)*2208|0)+1156>>2];c[j>>2]=(c[j>>2]|0)+31;c[k>>2]=(c[k>>2]|0)-31;c[n>>2]=(d[c[j>>2]>>0]|0)&63;c[q>>2]=((d[(c[j>>2]|0)+1>>0]|0)<<8)+(d[(c[j>>2]|0)+1+1>>0]|0);if((c[q>>2]|0)>1|(c[n>>2]|0)!=32){t=c[n>>2]|0;c[r>>2]=c[q>>2];c[r+4>>2]=t;Pu(25620,r);c[g>>2]=-2147483645;t=c[g>>2]|0;i=u;return t|0}c[l>>2]=(c[h>>2]|0)+448+((c[(c[h>>2]|0)+12>>2]|0)*2208|0)+132;a[c[l>>2]>>0]=0;a[(c[l>>2]|0)+1>>0]=0;a[(c[l>>2]|0)+2>>0]=0;a[(c[l>>2]|0)+3>>0]=1;c[m>>2]=4;c[l>>2]=(c[l>>2]|0)+4;Tx(c[l>>2]|0,(c[j>>2]|0)+5|0,((d[(c[j>>2]|0)+3>>0]|0)<<8)+(d[(c[j>>2]|0)+3+1>>0]|0)|0)|0;c[l>>2]=(c[l>>2]|0)+(((d[(c[j>>2]|0)+3>>0]|0)<<8)+(d[(c[j>>2]|0)+3+1>>0]|0));c[m>>2]=(c[m>>2]|0)+(((d[(c[j>>2]|0)+3>>0]|0)<<8)+(d[(c[j>>2]|0)+3+1>>0]|0));c[j>>2]=(c[j>>2]|0)+(5+(((d[(c[j>>2]|0)+3>>0]|0)<<8)+(d[(c[j>>2]|0)+3+1>>0]|0)));c[k>>2]=(c[k>>2]|0)-(5+(((d[(c[j>>2]|0)+3>>0]|0)<<8)+(d[(c[j>>2]|0)+3+1>>0]|0)));c[n>>2]=(d[c[j>>2]>>0]|0)&63;c[p>>2]=((d[(c[j>>2]|0)+1>>0]|0)<<8)+(d[(c[j>>2]|0)+1+1>>0]|0);if((c[p>>2]|0)>1|(c[n>>2]|0)!=33){s=c[n>>2]|0;c[t>>2]=c[q>>2];c[t+4>>2]=s;Pu(25672,t);c[g>>2]=-2147483645;t=c[g>>2]|0;i=u;return t|0}a[c[l>>2]>>0]=0;a[(c[l>>2]|0)+1>>0]=0;a[(c[l>>2]|0)+2>>0]=0;a[(c[l>>2]|0)+3>>0]=1;c[m>>2]=(c[m>>2]|0)+4;c[l>>2]=(c[l>>2]|0)+4;Tx(c[l>>2]|0,(c[j>>2]|0)+5|0,((d[(c[j>>2]|0)+3>>0]|0)<<8)+(d[(c[j>>2]|0)+3+1>>0]|0)|0)|0;c[l>>2]=(c[l>>2]|0)+(((d[(c[j>>2]|0)+3>>0]|0)<<8)+(d[(c[j>>2]|0)+3+1>>0]|0));c[m>>2]=(c[m>>2]|0)+(((d[(c[j>>2]|0)+3>>0]|0)<<8)+(d[(c[j>>2]|0)+3+1>>0]|0));c[j>>2]=(c[j>>2]|0)+(5+(((d[(c[j>>2]|0)+3>>0]|0)<<8)+(d[(c[j>>2]|0)+3+1>>0]|0)));c[k>>2]=(c[k>>2]|0)-(5+(((d[(c[j>>2]|0)+3>>0]|0)<<8)+(d[(c[j>>2]|0)+3+1>>0]|0)));c[n>>2]=(d[c[j>>2]>>0]|0)&63;c[o>>2]=((d[(c[j>>2]|0)+1>>0]|0)<<8)+(d[(c[j>>2]|0)+1+1>>0]|0);if((c[o>>2]|0)>1|(c[n>>2]|0)!=34){t=c[n>>2]|0;c[s>>2]=c[q>>2];c[s+4>>2]=t;Pu(25725,s);c[g>>2]=-2147483645;t=c[g>>2]|0;i=u;return t|0}else{a[c[l>>2]>>0]=0;a[(c[l>>2]|0)+1>>0]=0;a[(c[l>>2]|0)+2>>0]=0;a[(c[l>>2]|0)+3>>0]=1;c[m>>2]=(c[m>>2]|0)+4;c[l>>2]=(c[l>>2]|0)+4;Tx(c[l>>2]|0,(c[j>>2]|0)+5|0,((d[(c[j>>2]|0)+3>>0]|0)<<8)+(d[(c[j>>2]|0)+3+1>>0]|0)|0)|0;c[l>>2]=(c[l>>2]|0)+(((d[(c[j>>2]|0)+3>>0]|0)<<8)+(d[(c[j>>2]|0)+3+1>>0]|0));c[m>>2]=(c[m>>2]|0)+(((d[(c[j>>2]|0)+3>>0]|0)<<8)+(d[(c[j>>2]|0)+3+1>>0]|0));c[(c[h>>2]|0)+448+((c[(c[h>>2]|0)+12>>2]|0)*2208|0)+1156>>2]=c[m>>2];c[g>>2]=0;t=c[g>>2]|0;i=u;return t|0}return 0}function av(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+32|0;h=o;j=o+24|0;k=o+20|0;g=o+16|0;l=o+12|0;m=o+8|0;n=o+4|0;c[k>>2]=a;c[g>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=0;if(!(c[k>>2]|0)){c[j>>2]=-2147483647;n=c[j>>2]|0;i=o;return n|0}if(!(c[m>>2]|0)){c[j>>2]=-2147483647;n=c[j>>2]|0;i=o;return n|0}c[n>>2]=c[(c[k>>2]|0)+448+((c[l>>2]|0)*2208|0)+16>>2];if(!(c[n>>2]|0))if((c[g>>2]|0)>>>0>((c[(c[k>>2]|0)+448+((c[l>>2]|0)*2208|0)+116+4>>2]|0)-1|0)>>>0){Pu(25787,h);c[j>>2]=-2147483647;n=c[j>>2]|0;i=o;return n|0}else{c[c[m>>2]>>2]=((d[(c[(c[k>>2]|0)+448+((c[l>>2]|0)*2208|0)+116+8>>2]|0)+(c[g>>2]<<2)>>0]|0)<<24)+((d[(c[(c[k>>2]|0)+448+((c[l>>2]|0)*2208|0)+116+8>>2]|0)+(c[g>>2]<<2)+1>>0]|0)<<16)+((d[(c[(c[k>>2]|0)+448+((c[l>>2]|0)*2208|0)+116+8>>2]|0)+(c[g>>2]<<2)+2>>0]|0)<<8)+(d[(c[(c[k>>2]|0)+448+((c[l>>2]|0)*2208|0)+116+8>>2]|0)+(c[g>>2]<<2)+3>>0]|0);c[j>>2]=0;n=c[j>>2]|0;i=o;return n|0}else{g=c[n>>2]|0;if(1==(c[n>>2]|0)){n=$(g,((d[(c[(c[k>>2]|0)+448+((c[l>>2]|0)*2208|0)+84+8>>2]|0)+4>>0]|0)<<24)+((d[(c[(c[k>>2]|0)+448+((c[l>>2]|0)*2208|0)+84+8>>2]|0)+4+1>>0]|0)<<16)+((d[(c[(c[k>>2]|0)+448+((c[l>>2]|0)*2208|0)+84+8>>2]|0)+4+2>>0]|0)<<8)+(d[(c[(c[k>>2]|0)+448+((c[l>>2]|0)*2208|0)+84+8>>2]|0)+4+3>>0]|0)|0)|0;c[c[m>>2]>>2]=n}else c[c[m>>2]>>2]=g;c[j>>2]=0;n=c[j>>2]|0;i=o;return n|0}return 0}function bv(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+64|0;j=s+8|0;h=s;k=s+48|0;l=s+44|0;m=s+40|0;n=s+36|0;o=s+32|0;r=s+28|0;q=s+24|0;g=s+20|0;p=s+16|0;c[l>>2]=a;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[r>>2]=0;c[q>>2]=0;c[g>>2]=0;c[p>>2]=0;if(0==(c[l>>2]|0)|0==(c[o>>2]|0)){c[h>>2]=2208;Pu(25548,h);c[k>>2]=-2147483647;r=c[k>>2]|0;i=s;return r|0}c[p>>2]=c[(c[l>>2]|0)+448+((c[n>>2]|0)*2208|0)+100+8>>2];c[g>>2]=c[(c[l>>2]|0)+448+((c[n>>2]|0)*2208|0)+100+4>>2];if(0!=(c[g>>2]|0)?(c[m>>2]|0)>>>0<=((c[g>>2]|0)-1|0)>>>0:0){b=c[p>>2]|0;g=c[m>>2]|0;if(c[(c[l>>2]|0)+448+((c[n>>2]|0)*2208|0)+100>>2]|0){c[q>>2]=((d[b+(g<<3)>>0]|0)<<24)+((d[(c[p>>2]|0)+(c[m>>2]<<3)+1>>0]|0)<<16)+((d[(c[p>>2]|0)+(c[m>>2]<<3)+2>>0]|0)<<8)+(d[(c[p>>2]|0)+(c[m>>2]<<3)+3>>0]|0);c[r>>2]=((d[(c[p>>2]|0)+(c[m>>2]<<3)+4>>0]|0)<<24)+((d[(c[p>>2]|0)+(c[m>>2]<<3)+4+1>>0]|0)<<16)+((d[(c[p>>2]|0)+(c[m>>2]<<3)+4+2>>0]|0)<<8)+(d[(c[p>>2]|0)+(c[m>>2]<<3)+4+3>>0]|0);q=Px(0,c[q>>2]|0,c[r>>2]|0,0)|0;r=c[o>>2]|0;c[r>>2]=q;c[r+4>>2]=D}else{c[r>>2]=((d[b+(g<<2)>>0]|0)<<24)+((d[(c[p>>2]|0)+(c[m>>2]<<2)+1>>0]|0)<<16)+((d[(c[p>>2]|0)+(c[m>>2]<<2)+2>>0]|0)<<8)+(d[(c[p>>2]|0)+(c[m>>2]<<2)+3>>0]|0);q=c[o>>2]|0;c[q>>2]=c[r>>2];c[q+4>>2]=0}c[k>>2]=0;r=c[k>>2]|0;i=s;return r|0}r=c[g>>2]|0;c[j>>2]=c[m>>2];c[j+4>>2]=r;Pu(25833,j);c[k>>2]=-2147483642;r=c[k>>2]|0;i=s;return r|0}function cv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;e=k;f=k+20|0;l=k+16|0;g=k+12|0;h=k+8|0;j=k+4|0;c[l>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=0;if(!(c[l>>2]|0)){c[f>>2]=-2147483647;l=c[f>>2]|0;i=k;return l|0}if(!(c[g>>2]|0)){c[f>>2]=-2147483647;l=c[f>>2]|0;i=k;return l|0}if(!(c[(c[g>>2]|0)+48>>2]|0)){c[f>>2]=-2147483647;l=c[f>>2]|0;i=k;return l|0}if((c[(c[g>>2]|0)+9300>>2]|0)>>>0<(c[(c[g>>2]|0)+9304>>2]|0)>>>0){c[e>>2]=2258;Pu(25878,e);c[f>>2]=-2147483641;l=c[f>>2]|0;i=k;return l|0}c[j>>2]=(c[(c[g>>2]|0)+9300>>2]|0)-(c[(c[g>>2]|0)+9304>>2]|0);d=(c[(c[g>>2]|0)+48>>2]|0)+(c[(c[g>>2]|0)+9312>>2]|0)|0;b=(c[(c[g>>2]|0)+9296>>2]|0)+(c[(c[g>>2]|0)+9304>>2]|0)|0;if((c[j>>2]|0)>>>0>=(c[h>>2]|0)>>>0){Tx(d|0,b|0,c[h>>2]|0)|0;l=(c[g>>2]|0)+9304|0;c[l>>2]=(c[l>>2]|0)+(c[h>>2]|0);l=(c[g>>2]|0)+9312|0;c[l>>2]=(c[l>>2]|0)+(c[h>>2]|0);c[f>>2]=0;l=c[f>>2]|0;i=k;return l|0}else{Tx(d|0,b|0,c[j>>2]|0)|0;l=(c[g>>2]|0)+9304|0;c[l>>2]=(c[l>>2]|0)+(c[j>>2]|0);l=(c[g>>2]|0)+9312|0;c[l>>2]=(c[l>>2]|0)+(c[j>>2]|0);c[f>>2]=2;l=c[f>>2]|0;i=k;return l|0}return 0}function dv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+64|0;r=s+8|0;f=s;l=s+60|0;m=s+56|0;n=s+52|0;o=s+48|0;p=s+44|0;j=s+40|0;k=s+36|0;q=s+32|0;h=s+28|0;g=s+24|0;c[m>>2]=b;c[n>>2]=d;c[o>>2]=e;c[p>>2]=0;c[j>>2]=0;c[k>>2]=0;c[q>>2]=0;c[h>>2]=0;if(!(c[m>>2]|0)){c[l>>2]=-2147483647;r=c[l>>2]|0;i=s;return r|0}if(!(c[o>>2]|0)){c[l>>2]=-2147483647;r=c[l>>2]|0;i=s;return r|0}if(!(c[n>>2]|0)){c[l>>2]=-2147483647;r=c[l>>2]|0;i=s;return r|0}if(!(c[(c[n>>2]|0)+9296>>2]|0)){c[l>>2]=-2147483647;r=c[l>>2]|0;i=s;return r|0}if((c[(c[n>>2]|0)+9300>>2]|0)>>>0<(c[(c[n>>2]|0)+9304>>2]|0)>>>0){c[f>>2]=2310;Pu(25905,f);c[l>>2]=-2147483641;r=c[l>>2]|0;i=s;return r|0}d=(c[(c[n>>2]|0)+9300>>2]|0)-(c[(c[n>>2]|0)+9304>>2]|0)|0;if((c[(c[n>>2]|0)+9300>>2]|0)>>>0<((c[(c[n>>2]|0)+9304>>2]|0)+8|0)>>>0){c[(c[m>>2]|0)+8>>2]=d;c[l>>2]=2;r=c[l>>2]|0;i=s;return r|0}c[j>>2]=d;c[h>>2]=(c[(c[n>>2]|0)+9296>>2]|0)+(c[(c[n>>2]|0)+9304>>2]|0);c[p>>2]=0;while(1){if((c[p>>2]|0)>>>0>((c[j>>2]|0)-8|0)>>>0){d=18;break}c[g>>2]=(c[h>>2]|0)+(c[p>>2]|0);c[k>>2]=(c[(c[g>>2]|0)+4>>2]&255)<<24|(c[(c[g>>2]|0)+4>>2]&65280)<<8|(c[(c[g>>2]|0)+4>>2]&16711680)>>>8|(c[(c[g>>2]|0)+4>>2]&-16777216)>>>24;c[q>>2]=(c[c[g>>2]>>2]&255)<<24|(c[c[g>>2]>>2]&65280)<<8|(c[c[g>>2]>>2]&16711680)>>>8|(c[c[g>>2]>>2]&-16777216)>>>24;if((c[k>>2]|0)==(c[o>>2]|0)){d=16;break}c[p>>2]=(c[p>>2]|0)+1}if((d|0)==16){c[(c[n>>2]|0)+9308>>2]=c[q>>2];r=(c[n>>2]|0)+9304|0;c[r>>2]=(c[r>>2]|0)+(c[p>>2]|0);c[l>>2]=0;r=c[l>>2]|0;i=s;return r|0}else if((d|0)==18){q=(c[n>>2]|0)+9304|0;c[q>>2]=(c[q>>2]|0)+(c[p>>2]|0);c[(c[m>>2]|0)+8>>2]=(c[(c[n>>2]|0)+9300>>2]|0)-(c[(c[n>>2]|0)+9304>>2]|0);n=a[o+2>>0]|0;p=a[o+1>>0]|0;q=a[o>>0]|0;c[r>>2]=a[o+3>>0];c[r+4>>2]=n;c[r+8>>2]=p;c[r+12>>2]=q;Pu(25936,r);c[l>>2]=2;r=c[l>>2]|0;i=s;return r|0}return 0}function ev(b,e){b=b|0;e=e|0;var f=0,g=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,v=0;u=i;i=i+64|0;t=u;n=u+56|0;v=u+52|0;o=u+48|0;f=u+44|0;r=u+40|0;s=u+36|0;p=u+32|0;g=u+28|0;h=u+24|0;j=u+20|0;k=u+16|0;l=u+12|0;m=u+8|0;q=u+4|0;c[v>>2]=b;c[o>>2]=e;c[f>>2]=0;c[r>>2]=0;c[s>>2]=0;c[p>>2]=0;if(!(c[v>>2]|0)){c[n>>2]=-2147483647;v=c[n>>2]|0;i=u;return v|0}if(!(c[o>>2]|0)){c[n>>2]=-2147483647;v=c[n>>2]|0;i=u;return v|0}c[f>>2]=c[(c[o>>2]|0)+9392+36>>2];c[p>>2]=(c[o>>2]|0)+448+((c[f>>2]|0)*2208|0)+1160;c[r>>2]=(d[c[p>>2]>>0]<<24)+(d[(c[p>>2]|0)+1>>0]<<16)+(d[(c[p>>2]|0)+2>>0]<<8)+(d[(c[p>>2]|0)+3>>0]|0);if(!(c[p>>2]|0)){c[n>>2]=-2147483647;v=c[n>>2]|0;i=u;return v|0}if(!(c[r>>2]|0)){c[n>>2]=-2147483647;v=c[n>>2]|0;i=u;return v|0}c[s>>2]=(d[(c[p>>2]|0)+4>>0]<<24)+(d[(c[p>>2]|0)+4+1>>0]<<16)+(d[(c[p>>2]|0)+4+2>>0]<<8)+(d[(c[p>>2]|0)+4+3>>0]|0);do if((c[s>>2]|0)==((a[25585]<<24)+(a[25586]<<16)+(a[25587]<<8)+(a[25588]|0)|0)){if(0==(c[(c[o>>2]|0)+448+((c[(c[o>>2]|0)+12>>2]|0)*2208|0)+1156>>2]|0)?(c[g>>2]=Qu(c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0,0!=(c[g>>2]|0)):0){c[n>>2]=c[g>>2];v=c[n>>2]|0;i=u;return v|0}c[(c[o>>2]|0)+320>>2]=1211250228}else{if((c[s>>2]|0)==((a[25590]<<24)+(a[25591]<<16)+(a[25592]<<8)+(a[25593]|0)|0)){if(!(c[(c[o>>2]|0)+448+((c[(c[o>>2]|0)+12>>2]|0)*2208|0)+1156>>2]|0)){c[h>>2]=Yu(c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0;if(c[h>>2]|0){c[n>>2]=c[h>>2];v=c[n>>2]|0;i=u;return v|0}c[j>>2]=Su(c[o>>2]|0,c[p>>2]|0,c[r>>2]|0,1836070006,0)|0;if(c[j>>2]|0){c[n>>2]=c[j>>2];v=c[n>>2]|0;i=u;return v|0}}c[(c[o>>2]|0)+320>>2]=1297101910;break}if((c[s>>2]|0)==((a[25595]<<24)+(a[25596]<<16)+(a[25597]<<8)+(a[25598]|0)|0)){if(0==(c[(c[o>>2]|0)+448+((c[(c[o>>2]|0)+16>>2]|0)*2208|0)+1156>>2]|0)?(c[k>>2]=Su(c[o>>2]|0,c[p>>2]|0,c[r>>2]|0,1836069985,c[(c[o>>2]|0)+9392+44>>2]|0)|0,0!=(c[k>>2]|0)):0){c[n>>2]=c[k>>2];v=c[n>>2]|0;i=u;return v|0}c[(c[o>>2]|0)+320>>2]=1094796032;break}if((c[s>>2]|0)==((a[25600]<<24)+(a[25601]<<16)+(a[25602]<<8)+(a[25603]|0)|0)){c[l>>2]=Zu(c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0;if(!(c[l>>2]|0)){c[(c[o>>2]|0)+320>>2]=925970753;break}c[n>>2]=c[l>>2];v=c[n>>2]|0;i=u;return v|0}if((c[s>>2]|0)==((a[25605]<<24)+(a[25606]<<16)+(a[25607]<<8)+(a[25608]|0)|0)){c[m>>2]=Zu(c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0;if(!(c[m>>2]|0)){c[(c[o>>2]|0)+320>>2]=925970773;break}c[n>>2]=c[m>>2];v=c[n>>2]|0;i=u;return v|0}f=c[o>>2]|0;if((c[s>>2]|0)!=((a[25610]<<24)+(a[25611]<<16)+(a[25612]<<8)+(a[25613]|0)|0)){c[f+320>>2]=1431192806;c[t>>2]=2437;Pu(25974,t);break}if(0==(c[(c[o>>2]|0)+448+((c[f+12>>2]|0)*2208|0)+1156>>2]|0)?(c[q>>2]=_u(c[o>>2]|0,c[p>>2]|0,c[r>>2]|0)|0,0!=(c[q>>2]|0)):0){c[n>>2]=c[q>>2];v=c[n>>2]|0;i=u;return v|0}c[(c[o>>2]|0)+320>>2]=1211250229}while(0);c[n>>2]=0;v=c[n>>2]|0;i=u;return v|0}function fv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+48|0;d=o+36|0;e=o+32|0;f=o+28|0;h=o+24|0;j=o+20|0;g=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;c[j>>2]=0;c[g>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;n=c[d>>2]|0;i=o;return n|0}if(!(c[f>>2]|0)){c[d>>2]=-2147483647;n=c[d>>2]|0;i=o;return n|0}do if(!(c[(c[f>>2]|0)+9392+4>>2]|0)){c[k>>2]=dv(c[e>>2]|0,c[f>>2]|0,1836019558)|0;if(!(c[k>>2]|0)){c[(c[f>>2]|0)+9392+56>>2]=c[(c[f>>2]|0)+9308>>2];c[(c[f>>2]|0)+9392+4>>2]=1;break}c[d>>2]=c[k>>2];n=c[d>>2]|0;i=o;return n|0}while(0);do if(!(c[(c[f>>2]|0)+9392+8>>2]|0)){c[j>>2]=(c[(c[f>>2]|0)+9392+56>>2]|0)-(c[(c[f>>2]|0)+9312>>2]|0);c[l>>2]=cv(c[e>>2]|0,c[f>>2]|0,c[j>>2]|0)|0;if(!(c[l>>2]|0)){c[(c[f>>2]|0)+9392+8>>2]=1;break}c[d>>2]=c[l>>2];n=c[d>>2]|0;i=o;return n|0}while(0);do if(!(c[(c[f>>2]|0)+9392+12>>2]|0)){c[g>>2]=(c[(c[f>>2]|0)+48>>2]|0)+8;c[h>>2]=(c[(c[f>>2]|0)+9312>>2]|0)-8;c[m>>2]=Ku(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(!(c[m>>2]|0)){c[(c[f>>2]|0)+9392+12>>2]=1;break}c[d>>2]=c[m>>2];n=c[d>>2]|0;i=o;return n|0}while(0);c[n>>2]=dv(c[e>>2]|0,c[f>>2]|0,1835295092)|0;if(c[n>>2]|0){c[d>>2]=c[n>>2];n=c[d>>2]|0;i=o;return n|0}else{n=(c[f>>2]|0)+9304|0;c[n>>2]=(c[n>>2]|0)+8;c[(c[f>>2]|0)+9392>>2]=1;c[(c[f>>2]|0)+9392+36>>2]=0;c[d>>2]=0;n=c[d>>2]|0;i=o;return n|0}return 0}function gv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+48|0;d=o+36|0;e=o+32|0;f=o+28|0;h=o+24|0;j=o+20|0;g=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;c[j>>2]=0;c[g>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=-2147483647;n=c[d>>2]|0;i=o;return n|0}if(!(c[f>>2]|0)){c[d>>2]=-2147483647;n=c[d>>2]|0;i=o;return n|0}do if(!(c[(c[f>>2]|0)+9320+4>>2]|0)){c[k>>2]=dv(c[e>>2]|0,c[f>>2]|0,1836019574)|0;if(!(c[k>>2]|0)){c[(c[f>>2]|0)+9320+28>>2]=c[(c[f>>2]|0)+9308>>2];c[(c[f>>2]|0)+9320+4>>2]=1;break}c[d>>2]=c[k>>2];n=c[d>>2]|0;i=o;return n|0}while(0);do if(!(c[(c[f>>2]|0)+9320+8>>2]|0)){c[j>>2]=(c[(c[f>>2]|0)+9320+28>>2]|0)-(c[(c[f>>2]|0)+9312>>2]|0);c[l>>2]=cv(c[e>>2]|0,c[f>>2]|0,c[j>>2]|0)|0;if(!(c[l>>2]|0)){c[(c[f>>2]|0)+9320+8>>2]=1;break}c[d>>2]=c[l>>2];n=c[d>>2]|0;i=o;return n|0}while(0);c[g>>2]=(c[(c[f>>2]|0)+48>>2]|0)+8;c[h>>2]=(c[(c[f>>2]|0)+9312>>2]|0)-8;c[m>>2]=wu(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(c[m>>2]|0){c[d>>2]=c[m>>2];n=c[d>>2]|0;i=o;return n|0}c[n>>2]=uu(c[f>>2]|0)|0;if(c[n>>2]|0){c[d>>2]=c[n>>2];n=c[d>>2]|0;i=o;return n|0}else{c[(c[f>>2]|0)+9312>>2]=0;c[(c[f>>2]|0)+9320>>2]=1;c[d>>2]=0;n=c[d>>2]|0;i=o;return n|0}return 0}function hv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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;x=i;i=i+80|0;k=x;l=x+72|0;m=x+68|0;n=x+64|0;o=x+60|0;p=x+56|0;q=x+52|0;s=x+44|0;t=x+40|0;r=x+24|0;g=x+20|0;h=x+16|0;j=x+12|0;u=x+8|0;v=x+4|0;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f;c[x+48>>2]=0;c[s>>2]=0;c[t>>2]=0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;if(0==(c[p>>2]|0)|0==(c[q>>2]|0)){c[k>>2]=2576;Pu(25548,k);c[l>>2]=-2147483647;w=c[l>>2]|0;i=x;return w|0}if((((c[o>>2]|0)!=(c[(c[m>>2]|0)+12>>2]|0)?(c[o>>2]|0)!=(c[(c[m>>2]|0)+16>>2]|0):0)?(c[o>>2]|0)!=(c[(c[m>>2]|0)+20>>2]|0):0)?(c[o>>2]|0)!=(c[(c[m>>2]|0)+24>>2]|0):0){c[l>>2]=-2147483645;w=c[l>>2]|0;i=x;return w|0}c[g>>2]=Vu(c[m>>2]|0,r,c[n>>2]|0,c[o>>2]|0)|0;if(c[g>>2]|0){c[l>>2]=c[g>>2];w=c[l>>2]|0;i=x;return w|0}c[h>>2]=av(c[m>>2]|0,c[n>>2]|0,c[o>>2]|0,c[q>>2]|0)|0;if(c[h>>2]|0){c[l>>2]=c[h>>2];w=c[l>>2]|0;i=x;return w|0}c[j>>2]=bv(c[m>>2]|0,(c[r>>2]|0)-1|0,c[o>>2]|0,c[p>>2]|0)|0;if(c[j>>2]|0){c[l>>2]=c[j>>2];w=c[l>>2]|0;i=x;return w|0}c[s>>2]=c[r+4>>2];while(1){b=c[m>>2]|0;if((c[s>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[u>>2]=av(b,c[s>>2]|0,c[o>>2]|0,t)|0;if(c[u>>2]|0){w=17;break}k=c[p>>2]|0;d=k;d=Px(c[d>>2]|0,c[d+4>>2]|0,c[t>>2]|0,0)|0;c[k>>2]=d;c[k+4>>2]=D;c[s>>2]=(c[s>>2]|0)+1}if((w|0)==17){c[l>>2]=c[u>>2];w=c[l>>2]|0;i=x;return w|0}if((c[b+9280>>2]|0)==0?(c[v>>2]=Xu(c[m>>2]|0,c[r+12>>2]|0,c[o>>2]|0,c[n>>2]|0,c[c[q>>2]>>2]|0)|0,0!=(c[v>>2]|0)):0){c[l>>2]=c[v>>2];w=c[l>>2]|0;i=x;return w|0}c[l>>2]=0;w=c[l>>2]|0;i=x;return w|0}function iv(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,E=0,F=0.0;E=i;i=i+80|0;B=E;h=E+76|0;j=E+72|0;k=E+68|0;l=E+64|0;m=E+60|0;n=E+56|0;o=E+52|0;r=E+48|0;u=E+44|0;p=E+40|0;q=E+36|0;s=E+32|0;v=E+28|0;w=E+24|0;t=E+20|0;z=E+16|0;A=E+12|0;x=E+8|0;y=E+4|0;c[j>>2]=a;c[k>>2]=b;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;c[r>>2]=0;c[u>>2]=0;c[p>>2]=0;c[q>>2]=0;c[s>>2]=0;c[v>>2]=0;c[w>>2]=0;c[t>>2]=0;c[z>>2]=0;c[A>>2]=0;c[x>>2]=0;c[y>>2]=0;if(0==(c[j>>2]|0)|0==(c[m>>2]|0)|-1==(c[l>>2]|0)){c[B>>2]=2647;Pu(25548,B);c[h>>2]=-2147483647;C=c[h>>2]|0;i=E;return C|0}c[s>>2]=~~(+((c[k>>2]|0)>>>0)*1.0*+((c[(c[j>>2]|0)+448+((c[l>>2]|0)*2208|0)+4>>2]|0)>>>0)/1.0e3)>>>0;c[z>>2]=c[(c[j>>2]|0)+448+((c[l>>2]|0)*2208|0)+36+8>>2];c[A>>2]=(c[(c[j>>2]|0)+448+((c[l>>2]|0)*2208|0)+36+8>>2]|0)+4;c[x>>2]=c[(c[j>>2]|0)+448+((c[l>>2]|0)*2208|0)+52+8>>2];c[y>>2]=(c[(c[j>>2]|0)+448+((c[l>>2]|0)*2208|0)+52+8>>2]|0)+4;c[u>>2]=c[(c[j>>2]|0)+448+((c[l>>2]|0)*2208|0)+36+4>>2];if(1==(c[(c[j>>2]|0)+28>>2]|0)?(c[l>>2]|0)==(c[(c[j>>2]|0)+12>>2]|0):0){c[h>>2]=-2147483645;C=c[h>>2]|0;i=E;return C|0}c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[u>>2]|0))break;B=$(((d[c[z>>2]>>0]|0)<<24)+((d[(c[z>>2]|0)+1>>0]|0)<<16)+((d[(c[z>>2]|0)+2>>0]|0)<<8)+(d[(c[z>>2]|0)+3>>0]|0)|0,((d[c[A>>2]>>0]|0)<<24)+((d[(c[A>>2]|0)+1>>0]|0)<<16)+((d[(c[A>>2]|0)+2>>0]|0)<<8)+(d[(c[A>>2]|0)+3>>0]|0)|0)|0;c[v>>2]=(c[v>>2]|0)+B;c[w>>2]=(c[w>>2]|0)+(((d[c[z>>2]>>0]|0)<<24)+((d[(c[z>>2]|0)+1>>0]|0)<<16)+((d[(c[z>>2]|0)+2>>0]|0)<<8)+(d[(c[z>>2]|0)+3>>0]|0));if((c[v>>2]|0)>>>0>(c[s>>2]|0)>>>0){C=9;break}c[z>>2]=(c[z>>2]|0)+8;c[A>>2]=(c[A>>2]|0)+8;c[o>>2]=(c[o>>2]|0)+1}if((C|0)==9)c[r>>2]=1;if(!(c[r>>2]|0)){c[(c[j>>2]|0)+408+4>>2]=c[(c[j>>2]|0)+448+((c[l>>2]|0)*2208|0)+116+4>>2];c[(c[j>>2]|0)+408+20>>2]=c[v>>2];c[h>>2]=-2147483647;C=c[h>>2]|0;i=E;return C|0}c[p>>2]=((d[c[z>>2]>>0]|0)<<24)+((d[(c[z>>2]|0)+1>>0]|0)<<16)+((d[(c[z>>2]|0)+2>>0]|0)<<8)+(d[(c[z>>2]|0)+3>>0]|0);c[q>>2]=((d[c[A>>2]>>0]|0)<<24)+((d[(c[A>>2]|0)+1>>0]|0)<<16)+((d[(c[A>>2]|0)+2>>0]|0)<<8)+(d[(c[A>>2]|0)+3>>0]|0);c[o>>2]=c[p>>2];while(1){if((c[o>>2]|0)<=1)break;c[v>>2]=(c[v>>2]|0)-(c[q>>2]|0);if((c[v>>2]|0)>>>0<=(c[s>>2]|0)>>>0)break;c[w>>2]=(c[w>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+-1}c[c[m>>2]>>2]=c[w>>2];c[c[n>>2]>>2]=~~(+(((c[v>>2]|0)+(c[q>>2]|0)|0)>>>0)*1.0/+((c[(c[j>>2]|0)+448+((c[l>>2]|0)*2208|0)+4>>2]|0)>>>0)*1.0e3)>>>0;c[t>>2]=c[(c[j>>2]|0)+448+((c[l>>2]|0)*2208|0)+16>>2];if(1==(c[t>>2]|0)?(c[l>>2]|0)==(c[(c[j>>2]|0)+16>>2]|0):0){c[z>>2]=c[(c[j>>2]|0)+448+((c[l>>2]|0)*2208|0)+36+8>>2];c[A>>2]=(c[(c[j>>2]|0)+448+((c[l>>2]|0)*2208|0)+36+8>>2]|0)+4;c[v>>2]=$(((d[c[z>>2]>>0]|0)<<24)+((d[(c[z>>2]|0)+1>>0]|0)<<16)+((d[(c[z>>2]|0)+2>>0]|0)<<8)+(d[(c[z>>2]|0)+3>>0]|0)|0,((d[c[A>>2]>>0]|0)<<24)+((d[(c[A>>2]|0)+1>>0]|0)<<16)+((d[(c[A>>2]|0)+2>>0]|0)<<8)+(d[(c[A>>2]|0)+3>>0]|0)|0)|0;c[w>>2]=c[(c[j>>2]|0)+448+((c[l>>2]|0)*2208|0)+100+4>>2];C=Zx(c[s>>2]|0,0,c[w>>2]|0,0)|0;C=_x(C|0,D|0,c[v>>2]|0,0)|0;c[c[m>>2]>>2]=C;F=+(($(c[c[m>>2]>>2]|0,c[v>>2]|0)|0)>>>0)*1.0;c[c[n>>2]>>2]=~~(F/+((c[w>>2]|0)>>>0)/+((c[(c[j>>2]|0)+448+((c[l>>2]|0)*2208|0)+4>>2]|0)>>>0)*1.0e3)>>>0}c[h>>2]=0;C=c[h>>2]|0;i=E;return C|0}function jv(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0,y=0;y=i;i=i+96|0;x=y+40|0;w=y+32|0;k=y+24|0;u=y+80|0;h=y+76|0;j=y+72|0;l=y+16|0;v=y+68|0;m=y+64|0;q=y+60|0;o=y+56|0;n=y+52|0;p=y+8|0;s=y;r=y+48|0;t=y+44|0;c[h>>2]=a;c[j>>2]=b;b=l;c[b>>2]=e;c[b+4>>2]=f;c[v>>2]=g;c[m>>2]=0;c[q>>2]=0;c[o>>2]=0;c[n>>2]=0;b=p;c[b>>2]=0;c[b+4>>2]=0;b=s;c[b>>2]=0;c[b+4>>2]=0;c[r>>2]=0;c[t>>2]=0;b=l;if(0==(c[h>>2]|0)|0==(c[v>>2]|0)|(0==(c[b>>2]|0)?0==(c[b+4>>2]|0):0)|-1==(c[j>>2]|0)){c[k>>2]=2756;Pu(25548,k);c[u>>2]=-2147483647;x=c[u>>2]|0;i=y;return x|0}k=p;c[k>>2]=c[(c[h>>2]|0)+448+((c[j>>2]|0)*2208|0)+100>>2];c[k+4>>2]=0;c[t>>2]=c[(c[h>>2]|0)+448+((c[j>>2]|0)*2208|0)+100+8>>2];c[r>>2]=c[(c[h>>2]|0)+448+((c[j>>2]|0)*2208|0)+100+4>>2];while(1){if((c[m>>2]|0)>>>0>=(c[r>>2]|0)>>>0){e=13;break}if(!(c[t>>2]|0)){e=6;break}k=p;e=((d[c[t>>2]>>0]|0)<<24)+((d[(c[t>>2]|0)+1>>0]|0)<<16)+((d[(c[t>>2]|0)+2>>0]|0)<<8)+(d[(c[t>>2]|0)+3>>0]|0)|0;if((c[k>>2]|0)!=0|(c[k+4>>2]|0)!=0){c[o>>2]=e;c[q>>2]=((d[(c[t>>2]|0)+4>>0]|0)<<24)+((d[(c[t>>2]|0)+4+1>>0]|0)<<16)+((d[(c[t>>2]|0)+4+2>>0]|0)<<8)+(d[(c[t>>2]|0)+4+3>>0]|0);b=Px(0,c[o>>2]|0,c[q>>2]|0,0)|0;k=s;c[k>>2]=b;c[k+4>>2]=D}else{c[q>>2]=e;k=s;c[k>>2]=c[q>>2];c[k+4>>2]=0}b=s;g=c[b+4>>2]|0;k=l;a=c[k+4>>2]|0;f=c[n>>2]|0;if(g>>>0>a>>>0|((g|0)==(a|0)?(c[b>>2]|0)>>>0>(c[k>>2]|0)>>>0:0)){e=11;break}c[n>>2]=f+1;k=p;c[t>>2]=(c[t>>2]|0)+((c[k>>2]|0)!=0|(c[k+4>>2]|0)!=0?8:4);c[m>>2]=(c[m>>2]|0)+1}if((e|0)==6){c[w>>2]=2768;Pu(25548,w);c[u>>2]=-2147483647;x=c[u>>2]|0;i=y;return x|0}else if((e|0)==11){c[c[v>>2]>>2]=f;c[u>>2]=0;x=c[u>>2]|0;i=y;return x|0}else if((e|0)==13){c[x>>2]=2795;Pu(26007,x);c[u>>2]=-2147483640;x=c[u>>2]|0;i=y;return x|0}return 0}function kv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+48|0;l=o+8|0;e=o+36|0;f=o+32|0;g=o+28|0;h=o+24|0;m=o;n=o+20|0;j=o+16|0;k=o+12|0;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;b=m;c[b>>2]=0;c[b+4>>2]=0;c[n>>2]=0;if(0==(c[f>>2]|0)|0==(c[h>>2]|0)|-1==(c[g>>2]|0)){c[l>>2]=2817;Pu(25548,l);c[e>>2]=-2147483647;n=c[e>>2]|0;i=o;return n|0}c[j>>2]=hv(c[f>>2]|0,c[(c[f>>2]|0)+408>>2]|0,c[(c[f>>2]|0)+12>>2]|0,m,n)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];n=c[e>>2]|0;i=o;return n|0}n=m;c[k>>2]=jv(c[f>>2]|0,c[g>>2]|0,c[n>>2]|0,c[n+4>>2]|0,c[h>>2]|0)|0;if(c[k>>2]|0){c[e>>2]=c[k>>2];n=c[e>>2]|0;i=o;return n|0}else{c[e>>2]=0;n=c[e>>2]|0;i=o;return n|0}return 0}function lv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+48|0;n=o;e=o+36|0;f=o+32|0;g=o+28|0;p=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;c[f>>2]=a;c[g>>2]=b;c[p>>2]=d;c[h>>2]=0;if(0==(c[f>>2]|0)|0==(c[p>>2]|0)|-1==(c[g>>2]|0)){c[n>>2]=2847;Pu(25548,n);c[e>>2]=-2147483647;p=c[e>>2]|0;i=o;return p|0}c[j>>2]=Uu(c[f>>2]|0,c[(c[f>>2]|0)+408>>2]|0,c[(c[f>>2]|0)+12>>2]|0,(c[f>>2]|0)+408+16|0,h)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];p=c[e>>2]|0;i=o;return p|0}if((c[(c[f>>2]|0)+16>>2]|0)==(c[g>>2]|0)?(c[k>>2]=iv(c[f>>2]|0,c[(c[f>>2]|0)+408+16>>2]|0,c[(c[f>>2]|0)+16>>2]|0,(c[f>>2]|0)+408+4|0,(c[f>>2]|0)+408+20|0)|0,0!=(c[k>>2]|0)):0){c[e>>2]=c[k>>2];p=c[e>>2]|0;i=o;return p|0}if((c[(c[f>>2]|0)+20>>2]|0)==(c[g>>2]|0)?(c[l>>2]=iv(c[f>>2]|0,c[(c[f>>2]|0)+408+16>>2]|0,c[(c[f>>2]|0)+20>>2]|0,(c[f>>2]|0)+408+8|0,(c[f>>2]|0)+408+24|0)|0,0!=(c[l>>2]|0)):0){c[e>>2]=c[l>>2];p=c[e>>2]|0;i=o;return p|0}if((c[(c[f>>2]|0)+24>>2]|0)==(c[g>>2]|0)?(c[m>>2]=iv(c[f>>2]|0,c[(c[f>>2]|0)+408+16>>2]|0,c[(c[f>>2]|0)+24>>2]|0,(c[f>>2]|0)+408+12|0,(c[f>>2]|0)+408+28|0)|0,0!=(c[m>>2]|0)):0){c[e>>2]=c[m>>2];p=c[e>>2]|0;i=o;return p|0}c[e>>2]=0;p=c[e>>2]|0;i=o;return p|0}function mv(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+48|0;o=p+8|0;n=p;f=p+36|0;g=p+32|0;h=p+28|0;j=p+24|0;l=p+20|0;m=p+16|0;k=p+12|0;c[g>>2]=a;c[h>>2]=b;c[j>>2]=e;c[l>>2]=0;c[m>>2]=0;c[k>>2]=0;if(0==(c[g>>2]|0)|0==(c[h>>2]|0)){c[n>>2]=2962;Pu(25548,n);c[f>>2]=-2147483647;o=c[f>>2]|0;i=p;return o|0}c[k>>2]=16;c[l>>2]=(c[k>>2]|0)+8;c[m>>2]=(c[k>>2]|0)+8+2+2+2+2;if((c[l>>2]|0)>>>0<((c[j>>2]|0)-2|0)>>>0?(c[m>>2]|0)>>>0<((c[j>>2]|0)-3|0)>>>0:0){c[(c[g>>2]|0)+320+56>>2]=((d[(c[h>>2]|0)+(c[l>>2]|0)>>0]|0)<<8)+(d[(c[h>>2]|0)+(c[l>>2]|0)+1>>0]|0);c[(c[g>>2]|0)+320+56+8>>2]=((d[(c[h>>2]|0)+(c[m>>2]|0)>>0]|0)<<8)+(d[(c[h>>2]|0)+(c[m>>2]|0)+1>>0]|0);c[f>>2]=0;o=c[f>>2]|0;i=p;return o|0}c[o>>2]=2978;Pu(26031,o);c[f>>2]=-2147483641;o=c[f>>2]|0;i=p;return o|0}function nv(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;m=n;e=n+28|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;c[f>>2]=b;c[g>>2]=0;c[h>>2]=0;c[j>>2]=0;c[k>>2]=0;if(0!=(c[f>>2]|0)?-1!=(c[(c[f>>2]|0)+16>>2]|0):0){c[j>>2]=c[(c[f>>2]|0)+448+((c[(c[f>>2]|0)+16>>2]|0)*2208|0)+20+8>>2];if(!(c[j>>2]|0)){c[e>>2]=-2147483647;m=c[e>>2]|0;i=n;return m|0}c[h>>2]=(d[c[j>>2]>>0]<<24)+(d[(c[j>>2]|0)+1>>0]<<16)+(d[(c[j>>2]|0)+2>>0]<<8)+(d[(c[j>>2]|0)+3>>0]|0);if(!(c[h>>2]|0)){c[e>>2]=-2147483647;m=c[e>>2]|0;i=n;return m|0}c[k>>2]=(c[j>>2]|0)+4;c[g>>2]=(d[c[k>>2]>>0]<<24)+(d[(c[k>>2]|0)+1>>0]<<16)+(d[(c[k>>2]|0)+2>>0]<<8)+(d[(c[k>>2]|0)+3>>0]|0);if((c[g>>2]|0)==((a[25595]<<24)+(a[25596]<<16)+(a[25597]<<8)+(a[25598]|0)|0)?(c[l>>2]=mv(c[f>>2]|0,c[j>>2]|0,c[h>>2]|0)|0,0!=(c[l>>2]|0)):0){c[e>>2]=c[l>>2];m=c[e>>2]|0;i=n;return m|0}c[e>>2]=0;m=c[e>>2]|0;i=n;return m|0}c[m>>2]=3124;Pu(25548,m);c[e>>2]=-2147483647;m=c[e>>2]|0;i=n;return m|0}function ov(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=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,v=0;v=i;i=i+64|0;l=v+56|0;m=v+52|0;n=v+48|0;o=v+44|0;g=v+40|0;h=v+36|0;k=v+32|0;p=v+28|0;q=v+24|0;t=v+20|0;s=v+16|0;r=v+12|0;j=v+8|0;f=v+4|0;u=v;c[m>>2]=a;c[n>>2]=b;c[o>>2]=e;c[g>>2]=0;c[h>>2]=0;c[k>>2]=0;c[p>>2]=0;c[q>>2]=0;c[t>>2]=0;c[s>>2]=1;c[r>>2]=0;c[j>>2]=0;if(!(c[m>>2]|0)){c[l>>2]=-2147483647;u=c[l>>2]|0;i=v;return u|0}if(!(c[o>>2]|0)){c[l>>2]=-2147483647;u=c[l>>2]|0;i=v;return u|0}c[k>>2]=c[(c[m>>2]|0)+448+((c[(c[m>>2]|0)+12>>2]|0)*2208|0)+68+8>>2];c[j>>2]=c[(c[m>>2]|0)+448+((c[(c[m>>2]|0)+12>>2]|0)*2208|0)+68+4>>2];c[f>>2]=-2147483643;if(!(c[k>>2]|0)){c[l>>2]=c[f>>2];u=c[l>>2]|0;i=v;return u|0}c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[j>>2]|0)>>>0){b=14;break}c[p>>2]=((d[c[k>>2]>>0]|0)<<24)+((d[(c[k>>2]|0)+1>>0]|0)<<16)+((d[(c[k>>2]|0)+2>>0]|0)<<8)+(d[(c[k>>2]|0)+3>>0]|0);c[u>>2]=Uu(c[m>>2]|0,c[p>>2]|0,c[(c[m>>2]|0)+12>>2]|0,q,h)|0;if(c[u>>2]|0){b=10;break}a=c[q>>2]|0;if((c[q>>2]|0)>>>0>=(c[n>>2]|0)>>>0){b=12;break}c[t>>2]=a;c[s>>2]=c[p>>2];c[k>>2]=(c[k>>2]|0)+4;c[g>>2]=(c[g>>2]|0)+1}if((b|0)==10){c[l>>2]=c[u>>2];u=c[l>>2]|0;i=v;return u|0}else if((b|0)==12){c[r>>2]=(a-(c[n>>2]|0)|0)>>>0<((c[n>>2]|0)-(c[t>>2]|0)|0)>>>0?c[p>>2]|0:c[s>>2]|0;c[(c[m>>2]|0)+408+16>>2]=((c[q>>2]|0)-(c[n>>2]|0)|0)>>>0<((c[n>>2]|0)-(c[t>>2]|0)|0)>>>0?c[q>>2]|0:c[t>>2]|0;c[c[o>>2]>>2]=(c[r>>2]|0)-1;c[l>>2]=0;u=c[l>>2]|0;i=v;return u|0}else if((b|0)==14){c[c[o>>2]>>2]=(c[p>>2]|0)-1;c[l>>2]=0;u=c[l>>2]|0;i=v;return u|0}return 0}function pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=i;i=i+16|0;d=e+4|0;f=e;c[d>>2]=a;c[f>>2]=b;c[(c[d>>2]|0)+408>>2]=c[f>>2];b=c[d>>2]|0;if(!(c[(c[d>>2]|0)+408>>2]|0)){c[b+408+4>>2]=0;c[(c[d>>2]|0)+408+8>>2]=0;c[(c[d>>2]|0)+408+12>>2]=0;nv(c[d>>2]|0)|0;i=e;return 0}else{lv(b,c[(c[d>>2]|0)+16>>2]|0,(c[d>>2]|0)+408+4|0)|0;lv(c[d>>2]|0,c[(c[d>>2]|0)+20>>2]|0,(c[d>>2]|0)+408+8|0)|0;lv(c[d>>2]|0,c[(c[d>>2]|0)+24>>2]|0,(c[d>>2]|0)+408+12|0)|0;i=e;return 0}return 0}function qv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;b=c[e>>2]|0;do if(!(c[f>>2]|0)){c[b+408>>2]=0;c[(c[e>>2]|0)+408+4>>2]=0;c[(c[e>>2]|0)+408+8>>2]=0;c[(c[e>>2]|0)+408+12>>2]=0;nv(c[e>>2]|0)|0}else{c[g>>2]=ov(b,c[f>>2]|0,(c[e>>2]|0)+408|0)|0;if(!(c[g>>2]|0)){kv(c[e>>2]|0,c[(c[e>>2]|0)+16>>2]|0,(c[e>>2]|0)+408+4|0)|0;kv(c[e>>2]|0,c[(c[e>>2]|0)+20>>2]|0,(c[e>>2]|0)+408+8|0)|0;kv(c[e>>2]|0,c[(c[e>>2]|0)+24>>2]|0,(c[e>>2]|0)+408+12|0)|0;break}c[d>>2]=c[g>>2];g=c[d>>2]|0;i=h;return g|0}while(0);c[d>>2]=0;g=c[d>>2]|0;i=h;return g|0}function rv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=i;i=i+112|0;p=C+100|0;f=C+96|0;q=C+92|0;o=C+88|0;t=C+8|0;u=C+84|0;v=C+80|0;s=C+76|0;m=C;n=C+72|0;l=C+68|0;r=C+64|0;d=C+60|0;e=C+56|0;g=C+52|0;h=C+48|0;j=C+44|0;k=C+40|0;y=C+36|0;z=C+32|0;A=C+28|0;B=C+24|0;w=C+20|0;x=C+16|0;c[f>>2]=a;c[q>>2]=b;c[o>>2]=0;a=t;c[a>>2]=-1;c[a+4>>2]=-1;c[u>>2]=0;c[v>>2]=-1;c[s>>2]=0;a=m;c[a>>2]=0;c[a+4>>2]=0;c[n>>2]=0;c[l>>2]=0;c[r>>2]=0;if(!(c[f>>2]|0)){c[p>>2]=-2147483647;B=c[p>>2]|0;i=C;return B|0}if(!(c[q>>2]|0)){c[p>>2]=-2147483647;B=c[p>>2]|0;i=C;return B|0}switch(c[(c[f>>2]|0)+16>>2]|0){case 0:break;case 1:{c[d>>2]=pv(c[q>>2]|0,c[(c[f>>2]|0)+12>>2]|0)|0;if(c[d>>2]|0){c[p>>2]=c[d>>2];B=c[p>>2]|0;i=C;return B|0}break}case 2:{c[e>>2]=qv(c[q>>2]|0,c[(c[f>>2]|0)+20>>2]|0)|0;if(c[e>>2]|0){c[p>>2]=c[e>>2];B=c[p>>2]|0;i=C;return B|0}break}default:{c[p>>2]=-2147483647;B=c[p>>2]|0;i=C;return B|0}}c[l>>2]=c[(c[q>>2]|0)+448+((c[(c[q>>2]|0)+12>>2]|0)*2208|0)+116+4>>2];b=c[q>>2]|0;if((c[(c[q>>2]|0)+408>>2]|0)==(c[l>>2]|0)){B=b+408|0;c[B>>2]=(c[B>>2]|0)+1;c[(c[q>>2]|0)+408+32>>2]=0;c[p>>2]=0;B=c[p>>2]|0;i=C;return B|0}c[g>>2]=sv(b,c[(c[q>>2]|0)+408>>2]|0)|0;if(c[g>>2]|0){c[p>>2]=c[g>>2];B=c[p>>2]|0;i=C;return B|0}do if(!(c[(c[f>>2]|0)+16>>2]|0)){c[o>>2]=0;a:while(1){if((c[o>>2]|0)>>>0>=4){b=45;break}if(!(c[(c[q>>2]|0)+448+((c[o>>2]|0)*2208|0)>>2]|0)){b=45;break}b=c[(c[q>>2]|0)+448+((c[o>>2]|0)*2208|0)>>2]|0;do if((b|0)<1952807028)if((b|0)<1936684398){switch(b|0){case 1751740020:break;default:{b=43;break a}}c[B>>2]=hv(c[q>>2]|0,c[(c[q>>2]|0)+408+12>>2]|0,c[(c[q>>2]|0)+24>>2]|0,m,n)|0;if(c[B>>2]|0){b=40;break a}k=m;h=c[k+4>>2]|0;l=t;j=c[l+4>>2]|0;if(!(h>>>0<j>>>0|((h|0)==(j|0)?(c[k>>2]|0)>>>0<(c[l>>2]|0)>>>0:0)))break;j=m;k=c[j+4>>2]|0;l=t;c[l>>2]=c[j>>2];c[l+4>>2]=k;c[u>>2]=c[n>>2];c[v>>2]=c[(c[q>>2]|0)+24>>2];c[s>>2]=c[(c[q>>2]|0)+9320+68>>2];c[r>>2]=(c[q>>2]|0)+408+12;break}else{switch(b|0){case 1936684398:break;default:{b=43;break a}}c[z>>2]=hv(c[q>>2]|0,c[(c[q>>2]|0)+408+4>>2]|0,c[(c[q>>2]|0)+16>>2]|0,m,n)|0;if(c[z>>2]|0){b=32;break a}k=m;h=c[k+4>>2]|0;l=t;j=c[l+4>>2]|0;if(!(h>>>0<j>>>0|((h|0)==(j|0)?(c[k>>2]|0)>>>0<(c[l>>2]|0)>>>0:0)))break;j=m;k=c[j+4>>2]|0;l=t;c[l>>2]=c[j>>2];c[l+4>>2]=k;c[u>>2]=c[n>>2];c[v>>2]=c[(c[q>>2]|0)+16>>2];c[s>>2]=c[(c[q>>2]|0)+9320+60>>2];c[r>>2]=(c[q>>2]|0)+408+4;break}else if((b|0)<1986618469){switch(b|0){case 1952807028:break;default:{b=43;break a}}c[A>>2]=hv(c[q>>2]|0,c[(c[q>>2]|0)+408+8>>2]|0,c[(c[q>>2]|0)+20>>2]|0,m,n)|0;if(c[A>>2]|0){b=36;break a}k=m;h=c[k+4>>2]|0;l=t;j=c[l+4>>2]|0;if(!(h>>>0<j>>>0|((h|0)==(j|0)?(c[k>>2]|0)>>>0<(c[l>>2]|0)>>>0:0)))break;j=m;k=c[j+4>>2]|0;l=t;c[l>>2]=c[j>>2];c[l+4>>2]=k;c[u>>2]=c[n>>2];c[v>>2]=c[(c[q>>2]|0)+20>>2];c[s>>2]=c[(c[q>>2]|0)+9320+64>>2];c[r>>2]=(c[q>>2]|0)+408+8;break}else{switch(b|0){case 1986618469:break;default:{b=43;break a}}c[y>>2]=hv(c[q>>2]|0,c[(c[q>>2]|0)+408>>2]|0,c[(c[q>>2]|0)+12>>2]|0,m,n)|0;if(c[y>>2]|0){b=28;break a}k=m;h=c[k+4>>2]|0;l=t;j=c[l+4>>2]|0;if(!(h>>>0<j>>>0|((h|0)==(j|0)?(c[k>>2]|0)>>>0<(c[l>>2]|0)>>>0:0)))break;j=m;k=c[j+4>>2]|0;l=t;c[l>>2]=c[j>>2];c[l+4>>2]=k;c[u>>2]=c[n>>2];c[v>>2]=c[(c[q>>2]|0)+12>>2];c[s>>2]=c[(c[q>>2]|0)+9320+56>>2];c[r>>2]=(c[q>>2]|0)+408;break}while(0);c[o>>2]=(c[o>>2]|0)+1}if((b|0)==28){c[p>>2]=c[y>>2];B=c[p>>2]|0;i=C;return B|0}else if((b|0)==32){c[p>>2]=c[z>>2];B=c[p>>2]|0;i=C;return B|0}else if((b|0)==36){c[p>>2]=c[A>>2];B=c[p>>2]|0;i=C;return B|0}else if((b|0)==40){c[p>>2]=c[B>>2];B=c[p>>2]|0;i=C;return B|0}else if((b|0)==43){c[p>>2]=-2147483645;B=c[p>>2]|0;i=C;return B|0}else if((b|0)==45){c[w>>2]=Uu(c[q>>2]|0,c[c[r>>2]>>2]|0,c[v>>2]|0,(c[q>>2]|0)+320+8|0,(c[q>>2]|0)+408+32|0)|0;if(c[w>>2]|0){c[p>>2]=c[w>>2];B=c[p>>2]|0;i=C;return B|0}c[x>>2]=Xu(c[q>>2]|0,c[s>>2]|0,c[v>>2]|0,c[c[r>>2]>>2]|0,c[u>>2]|0)|0;if(!(c[x>>2]|0)){z=t;A=c[z+4>>2]|0;B=(c[q>>2]|0)+9320+32|0;c[B>>2]=c[z>>2];c[B+4>>2]=A;c[(c[q>>2]|0)+9320+40>>2]=c[u>>2];B=c[r>>2]|0;c[B>>2]=(c[B>>2]|0)+1;break}c[p>>2]=c[x>>2];B=c[p>>2]|0;i=C;return B|0}}else{c[h>>2]=hv(c[q>>2]|0,c[(c[q>>2]|0)+408>>2]|0,c[(c[q>>2]|0)+12>>2]|0,(c[q>>2]|0)+9320+32|0,(c[q>>2]|0)+9320+40|0)|0;if(c[h>>2]|0){c[p>>2]=c[h>>2];B=c[p>>2]|0;i=C;return B|0}c[j>>2]=Uu(c[q>>2]|0,c[(c[q>>2]|0)+408>>2]|0,c[(c[q>>2]|0)+12>>2]|0,(c[q>>2]|0)+320+8|0,(c[q>>2]|0)+408+32|0)|0;if(c[j>>2]|0){c[p>>2]=c[j>>2];B=c[p>>2]|0;i=C;return B|0}c[k>>2]=Xu(c[q>>2]|0,c[(c[q>>2]|0)+9320+56>>2]|0,c[(c[q>>2]|0)+12>>2]|0,c[(c[q>>2]|0)+408>>2]|0,c[(c[q>>2]|0)+9320+40>>2]|0)|0;if(!(c[k>>2]|0)){z=(c[q>>2]|0)+9320+32|0;A=c[z+4>>2]|0;B=(c[q>>2]|0)+320+48|0;c[B>>2]=c[z>>2];c[B+4>>2]=A;B=(c[q>>2]|0)+408|0;c[B>>2]=(c[B>>2]|0)+1;break}c[p>>2]=c[k>>2];B=c[p>>2]|0;i=C;return B|0}while(0);c[(c[q>>2]|0)+320+16>>2]=c[(c[q>>2]|0)+9392+64>>2];c[(c[q>>2]|0)+320+20>>2]=0;c[(c[q>>2]|0)+9320+16>>2]=1;c[(c[q>>2]|0)+9320+20>>2]=0;c[p>>2]=0;B=c[p>>2]|0;i=C;return B|0}function sv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+12|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=0;if(!(c[d>>2]|0)){c[e>>2]=-2147483647;g=c[e>>2]|0;i=h;return g|0}c[g>>2]=c[(c[d>>2]|0)+448+((c[(c[d>>2]|0)+12>>2]|0)*2208|0)+116+4>>2];do if(((c[g>>2]|0)-1|0)==(c[f>>2]|0))c[(c[d>>2]|0)+320+36>>2]=1;else{d=(c[d>>2]|0)+320+36|0;if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0){c[d>>2]=0;break}c[d>>2]=1;c[e>>2]=-2147483642;g=c[e>>2]|0;i=h;return g|0}while(0);c[e>>2]=0;g=c[e>>2]|0;i=h;return g|0}function tv(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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;w=i;i=i+64|0;g=w;n=w+52|0;o=w+48|0;p=w+44|0;q=w+40|0;r=w+36|0;s=w+32|0;k=w+28|0;h=w+24|0;j=w+20|0;u=w+16|0;t=w+12|0;l=w+8|0;m=w+4|0;c[o>>2]=a;c[p>>2]=b;c[q>>2]=d;c[r>>2]=e;c[s>>2]=f;c[k>>2]=0;c[h>>2]=0;c[j>>2]=-1;c[u>>2]=0;c[t>>2]=0;if(0==(c[o>>2]|0)|0==(c[p>>2]|0)){c[g>>2]=3493;Pu(25548,g);c[n>>2]=-2147483647;v=c[n>>2]|0;i=w;return v|0}if(c[(c[p>>2]|0)+408+32>>2]|0)e=0;else e=c[(c[o>>2]|0)+16>>2]|0;c[h>>2]=e;switch(c[h>>2]|0){case 1:{c[l>>2]=pv(c[p>>2]|0,c[(c[o>>2]|0)+12>>2]|0)|0;if(c[l>>2]|0){c[n>>2]=c[l>>2];v=c[n>>2]|0;i=w;return v|0}break}case 2:{c[m>>2]=qv(c[p>>2]|0,c[(c[o>>2]|0)+20>>2]|0)|0;if(c[m>>2]|0){c[n>>2]=c[m>>2];v=c[n>>2]|0;i=w;return v|0}break}default:{c[k>>2]=Uu(c[p>>2]|0,c[(c[p>>2]|0)+408>>2]|0,c[(c[p>>2]|0)+12>>2]|0,(c[p>>2]|0)+408+16|0,(c[p>>2]|0)+408+32|0)|0;if(0==(c[k>>2]|0)?(c[(c[p>>2]|0)+408+16>>2]|0)>>>0<(c[j>>2]|0)>>>0:0){c[c[r>>2]>>2]=0;c[c[s>>2]>>2]=c[(c[p>>2]|0)+12>>2];c[c[q>>2]>>2]=c[(c[p>>2]|0)+408>>2];c[j>>2]=c[(c[p>>2]|0)+408+16>>2];c[t>>2]=(c[p>>2]|0)+408;c[(c[p>>2]|0)+320+8>>2]=c[j>>2]}c[k>>2]=Uu(c[p>>2]|0,c[(c[p>>2]|0)+408+4>>2]|0,c[(c[p>>2]|0)+16>>2]|0,(c[p>>2]|0)+408+20|0,0)|0;if(0==(c[k>>2]|0)?(c[(c[p>>2]|0)+408+20>>2]|0)>>>0<(c[j>>2]|0)>>>0:0){c[c[r>>2]>>2]=1;c[c[s>>2]>>2]=c[(c[p>>2]|0)+16>>2];c[c[q>>2]>>2]=c[(c[p>>2]|0)+408+4>>2];c[j>>2]=c[(c[p>>2]|0)+408+20>>2];c[t>>2]=(c[p>>2]|0)+408+4;c[(c[p>>2]|0)+320+8>>2]=c[j>>2]}c[k>>2]=Uu(c[p>>2]|0,c[(c[p>>2]|0)+408+8>>2]|0,c[(c[p>>2]|0)+20>>2]|0,(c[p>>2]|0)+408+24|0,0)|0;if(0==(c[k>>2]|0)?(c[(c[p>>2]|0)+408+24>>2]|0)>>>0<(c[j>>2]|0)>>>0:0){c[c[r>>2]>>2]=2;c[c[s>>2]>>2]=c[(c[p>>2]|0)+20>>2];c[c[q>>2]>>2]=c[(c[p>>2]|0)+408+8>>2];c[j>>2]=c[(c[p>>2]|0)+408+24>>2];c[t>>2]=(c[p>>2]|0)+408+8;c[(c[p>>2]|0)+320+8>>2]=c[j>>2]}c[k>>2]=Uu(c[p>>2]|0,c[(c[p>>2]|0)+408+12>>2]|0,c[(c[p>>2]|0)+24>>2]|0,(c[p>>2]|0)+408+28|0,0)|0;if(0==(c[k>>2]|0)?(c[(c[p>>2]|0)+408+28>>2]|0)>>>0<(c[j>>2]|0)>>>0:0){c[c[r>>2]>>2]=3;c[c[s>>2]>>2]=c[(c[p>>2]|0)+24>>2];c[c[q>>2]>>2]=c[(c[p>>2]|0)+408+12>>2];c[j>>2]=c[(c[p>>2]|0)+408+28>>2];c[t>>2]=(c[p>>2]|0)+408+12;c[(c[p>>2]|0)+320+8>>2]=c[j>>2]}}}c[u>>2]=c[(c[p>>2]|0)+448+((c[(c[p>>2]|0)+12>>2]|0)*2208|0)+116+4>>2];e=c[p>>2]|0;if((c[(c[p>>2]|0)+408>>2]|0)==(c[u>>2]|0)){v=e+408|0;c[v>>2]=(c[v>>2]|0)+1;c[(c[p>>2]|0)+408+32>>2]=0;c[n>>2]=0;v=c[n>>2]|0;i=w;return v|0}do if(!(c[e+320+20>>2]|0)?!(c[(c[o>>2]|0)+16>>2]|0):0){if(c[t>>2]|0){u=c[t>>2]|0;c[u>>2]=(c[u>>2]|0)+1;break}c[n>>2]=-2147483642;v=c[n>>2]|0;i=w;return v|0}else v=26;while(0);if((v|0)==26){c[c[r>>2]>>2]=0;c[c[q>>2]>>2]=c[(c[p>>2]|0)+408>>2];c[c[s>>2]>>2]=c[(c[p>>2]|0)+12>>2];v=(c[p>>2]|0)+408|0;c[v>>2]=(c[v>>2]|0)+1;c[(c[p>>2]|0)+320+8>>2]=c[(c[p>>2]|0)+408+16>>2]}c[n>>2]=0;v=c[n>>2]|0;i=w;return v|0}function uv(b,e,f,g,h,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=i;i=i+96|0;l=E+72|0;m=E+68|0;n=E+64|0;o=E+60|0;p=E+56|0;q=E+52|0;r=E;v=E+48|0;u=E+44|0;t=E+76|0;s=E+36|0;w=E+32|0;x=E+28|0;y=E+24|0;z=E+20|0;A=E+16|0;B=E+12|0;C=E+8|0;c[m>>2]=b;c[n>>2]=e;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;b=r;c[b>>2]=j;c[b+4>>2]=k;c[v>>2]=0;c[u>>2]=0;c[E+40>>2]=0;j=t;k=j+12|0;do{a[j>>0]=0;j=j+1|0}while((j|0)<(k|0));c[s>>2]=0;c[w>>2]=jr(c[(c[m>>2]|0)+52>>2]|0,c[r>>2]|0,c[r+4>>2]|0,0)|0;if(c[w>>2]|0){c[l>>2]=c[w>>2];D=c[l>>2]|0;i=E;return D|0}do if(!(c[n>>2]|0)){if((c[(c[m>>2]|0)+320>>2]|0)!=1211250228?(c[(c[m>>2]|0)+320>>2]|0)!=1211250229:0){D=8;break}c[x>>2]=vv(c[m>>2]|0,c[q>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if(c[x>>2]|0){c[l>>2]=c[x>>2];D=c[l>>2]|0;i=E;return D|0}}else D=8;while(0);if((D|0)==8){if(0==(c[n>>2]|0)?Wu(c[m>>2]|0,c[o>>2]|0,c[p>>2]|0)|0:0){c[y>>2]=xv(c[m>>2]|0,c[(c[m>>2]|0)+12>>2]|0,0)|0;if(c[y>>2]|0){c[l>>2]=c[y>>2];D=c[l>>2]|0;i=E;return D|0}}else D=12;do if((D|0)==12){if(1==(c[n>>2]|0)?1094796032==(c[(c[m>>2]|0)+320>>2]|0):0){c[z>>2]=xv(c[m>>2]|0,c[(c[m>>2]|0)+16>>2]|0,c[q>>2]|0)|0;if(!(c[z>>2]|0))break;c[l>>2]=c[z>>2];D=c[l>>2]|0;i=E;return D|0}if(2==(c[n>>2]|0)?1952807028==(c[(c[m>>2]|0)+320>>2]|0):0){c[A>>2]=jr(c[(c[m>>2]|0)+52>>2]|0,2,0,1)|0;if(!(c[A>>2]|0)){c[q>>2]=(c[q>>2]|0)-2;break}c[l>>2]=c[A>>2];D=c[l>>2]|0;i=E;return D|0}if(3==(c[n>>2]|0)?1886549620==(c[(c[m>>2]|0)+320>>2]|0):0){c[B>>2]=kr(t,1,0,12,0,c[(c[m>>2]|0)+52>>2]|0)|0;if(c[B>>2]|0){c[l>>2]=c[B>>2];D=c[l>>2]|0;i=E;return D|0}c[(c[m>>2]|0)+320+80>>2]=(d[t>>0]|0)<<8|(d[t+1>>0]|0);c[v>>2]=(d[t+9>>0]|0)>>6&1;if((c[q>>2]|0)>>>0>=12){c[q>>2]=(c[q>>2]|0)-12;break}c[l>>2]=-2147483641;D=c[l>>2]|0;i=E;return D|0}}while(0);c[s>>2]=(c[(c[m>>2]|0)+320+16>>2]|0)+(c[(c[m>>2]|0)+320+20>>2]|0);c[C>>2]=kr(c[s>>2]|0,1,0,c[q>>2]|0,0,c[(c[m>>2]|0)+52>>2]|0)|0;if(c[C>>2]|0){c[l>>2]=c[C>>2];D=c[l>>2]|0;i=E;return D|0}if(c[v>>2]|0)c[u>>2]=d[(c[s>>2]|0)+((c[q>>2]|0)-1)>>0];D=(c[m>>2]|0)+320+20|0;c[D>>2]=(c[D>>2]|0)+((c[q>>2]|0)-(c[u>>2]|0))}c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}function vv(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;d=c[g>>2]|0;if((c[(c[g>>2]|0)+320>>2]|0)==1211250228){c[f>>2]=wv(d,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;k=c[f>>2]|0;i=l;return k|0}if((c[d+320>>2]|0)==1211250229){c[f>>2]=yv(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;k=c[f>>2]|0;i=l;return k|0}else{c[f>>2]=-2147483645;k=c[f>>2]|0;i=l;return k|0}return 0}function wv(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=i;i=i+80|0;h=z+68|0;j=z+64|0;k=z+60|0;B=z+56|0;A=z+52|0;p=z+48|0;o=z+44|0;m=z+40|0;l=z+32|0;x=z+72|0;n=z+28|0;q=z+24|0;r=z+20|0;s=z+16|0;t=z+12|0;u=z+8|0;v=z+4|0;w=z;c[j>>2]=b;c[k>>2]=e;c[B>>2]=f;c[A>>2]=g;c[p>>2]=0;c[o>>2]=0;c[m>>2]=1;c[z+36>>2]=0;c[l>>2]=0;a[x>>0]=0;a[x+1>>0]=0;a[x+2>>0]=0;a[x+3>>0]=0;a[x+4>>0]=0;c[n>>2]=Wu(c[j>>2]|0,c[B>>2]|0,c[A>>2]|0)|0;a:while(1){c[q>>2]=kr(x,1,0,5,0,c[(c[j>>2]|0)+52>>2]|0)|0;if(c[q>>2]|0){y=3;break}c[p>>2]=((d[x>>0]|0)<<24)+((d[x+1>>0]|0)<<16)+((d[x+2>>0]|0)<<8)+(d[x+3>>0]|0);if((c[p>>2]|0)>>>0>((c[k>>2]|0)-(c[o>>2]|0)-4|0)>>>0){y=5;break}b:do switch((d[x+4>>0]|0)&31|0){case 9:{f=c[j>>2]|0;if(!(c[m>>2]|0)){c[t>>2]=jr(c[f+52>>2]|0,(c[p>>2]|0)-1|0,0,1)|0;if(c[t>>2]|0){y=15;break a}else break b}c[l>>2]=(c[f+320+16>>2]|0)+(c[(c[j>>2]|0)+320+20>>2]|0);B=c[l>>2]|0;a[B>>0]=a[x>>0]|0;a[B+1>>0]=a[x+1>>0]|0;a[B+2>>0]=a[x+2>>0]|0;a[B+3>>0]=a[x+3>>0]|0;a[B+4>>0]=a[x+4>>0]|0;a[c[l>>2]>>0]=0;a[(c[l>>2]|0)+1>>0]=0;a[(c[l>>2]|0)+2>>0]=0;a[(c[l>>2]|0)+3>>0]=1;c[r>>2]=kr((c[l>>2]|0)+5|0,1,0,(c[p>>2]|0)-1|0,0,c[(c[j>>2]|0)+52>>2]|0)|0;if(c[r>>2]|0){y=9;break a}B=(c[j>>2]|0)+320+20|0;c[B>>2]=(c[B>>2]|0)+((c[p>>2]|0)+4);if(c[n>>2]|0?(c[s>>2]=xv(c[j>>2]|0,c[(c[j>>2]|0)+12>>2]|0,0)|0,0!=(c[s>>2]|0)):0){y=12;break a}c[m>>2]=0;break}case 8:case 7:{if(c[(c[j>>2]|0)+448+((c[(c[j>>2]|0)+12>>2]|0)*2208|0)+1156>>2]|0){c[u>>2]=jr(c[(c[j>>2]|0)+52>>2]|0,(c[p>>2]|0)-1|0,0,1)|0;if(c[u>>2]|0){y=18;break a}}else y=19;break}default:y=19}while(0);if((y|0)==19){y=0;if(c[m>>2]|0){if(c[n>>2]|0?(c[v>>2]=xv(c[j>>2]|0,c[(c[j>>2]|0)+12>>2]|0,0)|0,0!=(c[v>>2]|0)):0){y=22;break}c[m>>2]=0}c[l>>2]=(c[(c[j>>2]|0)+320+16>>2]|0)+(c[(c[j>>2]|0)+320+20>>2]|0);B=c[l>>2]|0;a[B>>0]=a[x>>0]|0;a[B+1>>0]=a[x+1>>0]|0;a[B+2>>0]=a[x+2>>0]|0;a[B+3>>0]=a[x+3>>0]|0;a[B+4>>0]=a[x+4>>0]|0;a[c[l>>2]>>0]=0;a[(c[l>>2]|0)+1>>0]=0;a[(c[l>>2]|0)+2>>0]=0;a[(c[l>>2]|0)+3>>0]=1;c[w>>2]=kr((c[l>>2]|0)+5|0,1,0,(c[p>>2]|0)-1|0,0,c[(c[j>>2]|0)+52>>2]|0)|0;if(c[w>>2]|0){y=25;break}B=(c[j>>2]|0)+320+20|0;c[B>>2]=(c[B>>2]|0)+((c[p>>2]|0)+4)}c[o>>2]=(c[o>>2]|0)+(4+(c[p>>2]|0));if(((c[k>>2]|0)-5|0)>>>0<(c[o>>2]|0)>>>0){y=28;break}}if((y|0)==3){c[h>>2]=c[q>>2];B=c[h>>2]|0;i=z;return B|0}else if((y|0)==5){c[h>>2]=-2147483641;B=c[h>>2]|0;i=z;return B|0}else if((y|0)==9){c[h>>2]=c[r>>2];B=c[h>>2]|0;i=z;return B|0}else if((y|0)==12){c[h>>2]=c[s>>2];B=c[h>>2]|0;i=z;return B|0}else if((y|0)==15){c[h>>2]=c[t>>2];B=c[h>>2]|0;i=z;return B|0}else if((y|0)==18){c[h>>2]=c[u>>2];B=c[h>>2]|0;i=z;return B|0}else if((y|0)==22){c[h>>2]=c[v>>2];B=c[h>>2]|0;i=z;return B|0}else if((y|0)==25){c[h>>2]=c[w>>2];B=c[h>>2]|0;i=z;return B|0}else if((y|0)==28){c[h>>2]=0;B=c[h>>2]|0;i=z;return B|0}return 0}function xv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=(c[(c[f>>2]|0)+320+16>>2]|0)+(c[(c[f>>2]|0)+320+20>>2]|0);c[k>>2]=0;c[l>>2]=0;if((c[g>>2]|0)==(c[(c[f>>2]|0)+12>>2]|0)){c[k>>2]=(c[f>>2]|0)+448+((c[(c[f>>2]|0)+12>>2]|0)*2208|0)+132;c[l>>2]=c[(c[f>>2]|0)+448+((c[(c[f>>2]|0)+12>>2]|0)*2208|0)+1156>>2];Tx(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;k=(c[f>>2]|0)+320+20|0;c[k>>2]=(c[k>>2]|0)+(c[l>>2]|0);i=m;return 0}if((c[g>>2]|0)!=(c[(c[f>>2]|0)+16>>2]|0)){i=m;return 0}if(1094796032!=(c[(c[f>>2]|0)+320>>2]|0)){i=m;return 0}c[k>>2]=(c[f>>2]|0)+448+((c[(c[f>>2]|0)+16>>2]|0)*2208|0)+132;c[l>>2]=c[(c[f>>2]|0)+448+((c[(c[f>>2]|0)+16>>2]|0)*2208|0)+1156>>2];c[h>>2]=(c[h>>2]|0)+7;a[(c[k>>2]|0)+3>>0]=c[(c[f>>2]|0)+320+56>>2]<<6|(c[h>>2]|0)>>>11;a[(c[k>>2]|0)+4>>0]=(c[h>>2]|0)>>>3;a[(c[k>>2]|0)+5>>0]=(c[h>>2]&7)<<5|31;Tx(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;k=(c[f>>2]|0)+320+20|0;c[k>>2]=(c[k>>2]|0)+(c[l>>2]|0);i=m;return 0}function yv(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var 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,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=i;i=i+80|0;h=z+68|0;j=z+64|0;k=z+60|0;B=z+56|0;A=z+52|0;p=z+48|0;o=z+44|0;m=z+40|0;l=z+32|0;x=z+72|0;n=z+28|0;q=z+24|0;r=z+20|0;s=z+16|0;t=z+12|0;u=z+8|0;v=z+4|0;w=z;c[j>>2]=b;c[k>>2]=e;c[B>>2]=f;c[A>>2]=g;c[p>>2]=0;c[o>>2]=0;c[m>>2]=1;c[z+36>>2]=0;c[l>>2]=0;a[x>>0]=0;a[x+1>>0]=0;a[x+2>>0]=0;a[x+3>>0]=0;a[x+4>>0]=0;c[n>>2]=Wu(c[j>>2]|0,c[B>>2]|0,c[A>>2]|0)|0;a:while(1){c[q>>2]=kr(x,1,0,5,0,c[(c[j>>2]|0)+52>>2]|0)|0;if(c[q>>2]|0){y=3;break}c[p>>2]=((d[x>>0]|0)<<24)+((d[x+1>>0]|0)<<16)+((d[x+2>>0]|0)<<8)+(d[x+3>>0]|0);if((c[p>>2]|0)>>>0>((c[k>>2]|0)-(c[o>>2]|0)-4|0)>>>0){y=5;break}b:do switch((d[x+4>>0]|0)>>1&63|0){case 9:{f=c[j>>2]|0;if(!(c[m>>2]|0)){c[t>>2]=jr(c[f+52>>2]|0,(c[p>>2]|0)-1|0,0,1)|0;if(c[t>>2]|0){y=15;break a}else break b}c[l>>2]=(c[f+320+16>>2]|0)+(c[(c[j>>2]|0)+320+20>>2]|0);B=c[l>>2]|0;a[B>>0]=a[x>>0]|0;a[B+1>>0]=a[x+1>>0]|0;a[B+2>>0]=a[x+2>>0]|0;a[B+3>>0]=a[x+3>>0]|0;a[B+4>>0]=a[x+4>>0]|0;a[c[l>>2]>>0]=0;a[(c[l>>2]|0)+1>>0]=0;a[(c[l>>2]|0)+2>>0]=0;a[(c[l>>2]|0)+3>>0]=1;c[r>>2]=kr((c[l>>2]|0)+5|0,1,0,(c[p>>2]|0)-1|0,0,c[(c[j>>2]|0)+52>>2]|0)|0;if(c[r>>2]|0){y=9;break a}B=(c[j>>2]|0)+320+20|0;c[B>>2]=(c[B>>2]|0)+((c[p>>2]|0)+4);if(c[n>>2]|0?(c[s>>2]=xv(c[j>>2]|0,c[(c[j>>2]|0)+12>>2]|0,0)|0,0!=(c[s>>2]|0)):0){y=12;break a}c[m>>2]=0;break}case 34:case 33:case 32:{if(c[(c[j>>2]|0)+448+((c[(c[j>>2]|0)+12>>2]|0)*2208|0)+1156>>2]|0){c[u>>2]=jr(c[(c[j>>2]|0)+52>>2]|0,(c[p>>2]|0)-1|0,0,1)|0;if(c[u>>2]|0){y=18;break a}}else y=19;break}default:y=19}while(0);if((y|0)==19){y=0;if(c[m>>2]|0){if(c[n>>2]|0?(c[v>>2]=xv(c[j>>2]|0,c[(c[j>>2]|0)+12>>2]|0,0)|0,0!=(c[v>>2]|0)):0){y=22;break}c[m>>2]=0}c[l>>2]=(c[(c[j>>2]|0)+320+16>>2]|0)+(c[(c[j>>2]|0)+320+20>>2]|0);B=c[l>>2]|0;a[B>>0]=a[x>>0]|0;a[B+1>>0]=a[x+1>>0]|0;a[B+2>>0]=a[x+2>>0]|0;a[B+3>>0]=a[x+3>>0]|0;a[B+4>>0]=a[x+4>>0]|0;a[c[l>>2]>>0]=0;a[(c[l>>2]|0)+1>>0]=0;a[(c[l>>2]|0)+2>>0]=0;a[(c[l>>2]|0)+3>>0]=1;c[w>>2]=kr((c[l>>2]|0)+5|0,1,0,(c[p>>2]|0)-1|0,0,c[(c[j>>2]|0)+52>>2]|0)|0;if(c[w>>2]|0){y=25;break}B=(c[j>>2]|0)+320+20|0;c[B>>2]=(c[B>>2]|0)+((c[p>>2]|0)+4)}c[o>>2]=(c[o>>2]|0)+(4+(c[p>>2]|0));if(((c[k>>2]|0)-5|0)>>>0<(c[o>>2]|0)>>>0){y=28;break}}if((y|0)==3){c[h>>2]=c[q>>2];B=c[h>>2]|0;i=z;return B|0}else if((y|0)==5){c[h>>2]=-2147483641;B=c[h>>2]|0;i=z;return B|0}else if((y|0)==9){c[h>>2]=c[r>>2];B=c[h>>2]|0;i=z;return B|0}else if((y|0)==12){c[h>>2]=c[s>>2];B=c[h>>2]|0;i=z;return B|0}else if((y|0)==15){c[h>>2]=c[t>>2];B=c[h>>2]|0;i=z;return B|0}else if((y|0)==18){c[h>>2]=c[u>>2];B=c[h>>2]|0;i=z;return B|0}else if((y|0)==22){c[h>>2]=c[v>>2];B=c[h>>2]|0;i=z;return B|0}else if((y|0)==25){c[h>>2]=c[w>>2];B=c[h>>2]|0;i=z;return B|0}else if((y|0)==28){c[h>>2]=0;B=c[h>>2]|0;i=z;return B|0}return 0}function zv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;d=l;e=l+24|0;f=l+20|0;g=l+16|0;j=l+12|0;h=l+8|0;k=l+4|0;c[f>>2]=a;c[g>>2]=b;c[j>>2]=0;c[h>>2]=0;if(!(c[f>>2]|0)){c[e>>2]=-2147483647;k=c[e>>2]|0;i=l;return k|0}if(!(c[g>>2]|0)){c[e>>2]=-2147483647;k=c[e>>2]|0;i=l;return k|0}if(!(c[(c[g>>2]|0)+48>>2]|0)){c[e>>2]=-2147483647;k=c[e>>2]|0;i=l;return k|0}if(((c[(c[g>>2]|0)+9300>>2]|0)>>>0>=(c[(c[g>>2]|0)+9304>>2]|0)>>>0?(c[(c[g>>2]|0)+9320+40>>2]|0)>>>0>=(c[(c[g>>2]|0)+320+20>>2]|0)>>>0:0)?2097152>=(c[(c[g>>2]|0)+9320+40>>2]|0)>>>0:0){c[j>>2]=(c[(c[g>>2]|0)+9300>>2]|0)-(c[(c[g>>2]|0)+9304>>2]|0);c[h>>2]=(c[(c[g>>2]|0)+9320+40>>2]|0)-(c[(c[g>>2]|0)+320+20>>2]|0);b=(c[(c[g>>2]|0)+320+16>>2]|0)+(c[(c[g>>2]|0)+320+20>>2]|0)|0;a=(c[(c[g>>2]|0)+9296>>2]|0)+(c[(c[g>>2]|0)+9304>>2]|0)|0;if((c[j>>2]|0)>>>0<(c[h>>2]|0)>>>0){Tx(b|0,a|0,c[j>>2]|0)|0;k=(c[g>>2]|0)+9304|0;c[k>>2]=(c[k>>2]|0)+(c[j>>2]|0);k=(c[g>>2]|0)+320+20|0;c[k>>2]=(c[k>>2]|0)+(c[j>>2]|0);c[e>>2]=2;k=c[e>>2]|0;i=l;return k|0}Tx(b|0,a|0,c[h>>2]|0)|0;j=(c[g>>2]|0)+9304|0;c[j>>2]=(c[j>>2]|0)+(c[h>>2]|0);j=(c[g>>2]|0)+320+20|0;c[j>>2]=(c[j>>2]|0)+(c[h>>2]|0);c[k>>2]=Av(c[f>>2]|0,c[g>>2]|0)|0;if(c[k>>2]|0){c[e>>2]=c[k>>2];k=c[e>>2]|0;i=l;return k|0}else{c[(c[g>>2]|0)+9320+16>>2]=0;c[(c[g>>2]|0)+9320+20>>2]=1;c[e>>2]=0;k=c[e>>2]|0;i=l;return k|0}}c[d>>2]=3750;Pu(25878,d);c[e>>2]=-2147483641;k=c[e>>2]|0;i=l;return k|0}function Av(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=i;i=i+48|0;o=p;n=p+40|0;e=p+36|0;f=p+32|0;d=p+28|0;g=p+24|0;h=p+20|0;j=p+16|0;k=p+12|0;l=p+8|0;m=p+4|0;c[e>>2]=a;c[f>>2]=b;c[d>>2]=0;a:do if(c[e>>2]|0){if(!(c[f>>2]|0)){c[n>>2]=-2147483647;break}c[d>>2]=c[(c[f>>2]|0)+320>>2];b=c[d>>2]|0;b:do if((b|0)<1211250228){c:do if((b|0)<925970773)switch(b|0){case 925970753:break;default:{b=18;break b}}else{if((b|0)<1094796032)switch(b|0){case 925970773:break c;default:{b=18;break b}}switch(b|0){case 1094796032:break;default:{b=18;break b}}c[j>>2]=Fv(c[e>>2]|0,c[f>>2]|0)|0;if(!(c[j>>2]|0)){b=19;break b}c[n>>2]=c[j>>2];break a}while(0);c[k>>2]=Gv(c[e>>2]|0,c[f>>2]|0)|0;if(c[k>>2]|0){c[n>>2]=c[k>>2];break a}else b=19}else{if((b|0)<1886549620)switch(b|0){case 1211250228:{c[g>>2]=Bv(c[e>>2]|0,c[f>>2]|0)|0;if(!(c[g>>2]|0)){b=19;break b}c[n>>2]=c[g>>2];break a}case 1211250229:{c[h>>2]=Ev(c[e>>2]|0,c[f>>2]|0)|0;if(!(c[h>>2]|0)){b=19;break b}c[n>>2]=c[h>>2];break a}default:{b=18;break b}}if((b|0)<1952807028){switch(b|0){case 1886549620:break;default:{b=18;break b}}c[m>>2]=Iv(c[e>>2]|0,c[f>>2]|0)|0;if(!(c[m>>2]|0)){b=19;break}c[n>>2]=c[m>>2];break a}else{switch(b|0){case 1952807028:break;default:{b=18;break b}}c[l>>2]=Hv(c[e>>2]|0,c[f>>2]|0)|0;if(!(c[l>>2]|0)){b=19;break}c[n>>2]=c[l>>2];break a}}while(0);if((b|0)==18){c[o>>2]=4546;Pu(26256,o);c[n>>2]=-2147483645;break}else if((b|0)==19){c[n>>2]=0;break}}else c[n>>2]=-2147483647;while(0);i=p;return c[n>>2]|0}function Bv(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=i;i=i+48|0;q=r;m=r+44|0;s=r+40|0;n=r+36|0;k=r+32|0;l=r+28|0;g=r+24|0;j=r+20|0;h=r+16|0;f=r+12|0;o=r+8|0;p=r+4|0;c[s>>2]=b;c[n>>2]=e;c[k>>2]=0;c[l>>2]=0;c[g>>2]=0;c[j>>2]=0;c[h>>2]=1;c[f>>2]=0;if(!(c[s>>2]|0)){c[m>>2]=-2147483647;s=c[m>>2]|0;i=r;return s|0}if(!(c[n>>2]|0)){c[m>>2]=-2147483647;s=c[m>>2]|0;i=r;return s|0}c[f>>2]=c[(c[n>>2]|0)+320+16>>2];c[g>>2]=c[(c[n>>2]|0)+320+20>>2];c[j>>2]=(c[(c[n>>2]|0)+408>>2]|0)-1;c[k>>2]=Wu(c[n>>2]|0,c[j>>2]|0,c[(c[n>>2]|0)+12>>2]|0)|0;while(1){if(!(c[g>>2]|0)){f=19;break}c[l>>2]=((d[c[f>>2]>>0]|0)<<24)+((d[(c[f>>2]|0)+1>>0]|0)<<16)+((d[(c[f>>2]|0)+2>>0]|0)<<8)+(d[(c[f>>2]|0)+3>>0]|0);if((c[g>>2]|0)>>>0<((c[l>>2]|0)+4|0)>>>0){f=8;break}if((((d[(c[f>>2]|0)+4>>0]|0)&31)+-7|0)>>>0<2?c[(c[n>>2]|0)+448+((c[(c[n>>2]|0)+12>>2]|0)*2208|0)+1156>>2]|0:0){Ux(c[f>>2]|0,(c[f>>2]|0)+(c[l>>2]|0)+4|0,(c[g>>2]|0)-(c[l>>2]|0)-4|0)|0;c[g>>2]=(c[g>>2]|0)-((c[l>>2]|0)+4);s=(c[n>>2]|0)+320+20|0;c[s>>2]=(c[s>>2]|0)-((c[l>>2]|0)+4);continue}if(c[h>>2]|0){if(c[k>>2]|0){c[o>>2]=Cv(c[n>>2]|0)|0;if(c[o>>2]|0){f=15;break}c[f>>2]=(c[f>>2]|0)+(c[(c[n>>2]|0)+448+((c[(c[n>>2]|0)+12>>2]|0)*2208|0)+1156>>2]|0)}c[h>>2]=0}a[c[f>>2]>>0]=0;a[(c[f>>2]|0)+1>>0]=0;a[(c[f>>2]|0)+2>>0]=0;a[(c[f>>2]|0)+3>>0]=1;c[f>>2]=(c[f>>2]|0)+(4+(c[l>>2]|0));c[g>>2]=(c[g>>2]|0)-(4+(c[l>>2]|0))}if((f|0)==8){c[q>>2]=4426;Pu(26063,q);c[m>>2]=-2147483641;s=c[m>>2]|0;i=r;return s|0}else if((f|0)==15){c[m>>2]=c[o>>2];s=c[m>>2]|0;i=r;return s|0}else if((f|0)==19){if((c[(c[n>>2]|0)+9280>>2]|0)==0?(c[p>>2]=Dv(c[n>>2]|0)|0,0!=(c[p>>2]|0)):0){c[m>>2]=c[p>>2];s=c[m>>2]|0;i=r;return s|0}c[m>>2]=0;s=c[m>>2]|0;i=r;return s|0}return 0}function Cv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+24|0;d=j+20|0;f=j+16|0;h=j+12|0;e=j+8|0;g=j+4|0;c[d>>2]=a;c[f>>2]=0;c[h>>2]=0;c[e>>2]=0;c[g>>2]=0;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;h=c[b>>2]|0;i=j;return h|0}if(!((c[d>>2]|0)+320|0)){c[b>>2]=-2147483647;h=c[b>>2]|0;i=j;return h|0}c[e>>2]=c[(c[d>>2]|0)+320+16>>2];c[f>>2]=c[(c[d>>2]|0)+320+20>>2];c[g>>2]=(c[d>>2]|0)+448+((c[(c[d>>2]|0)+12>>2]|0)*2208|0)+132;c[h>>2]=c[(c[d>>2]|0)+448+((c[(c[d>>2]|0)+12>>2]|0)*2208|0)+1156>>2];if(((c[h>>2]|0)+(c[f>>2]|0)|0)>>>0>2097152){Pu(26093,j);c[b>>2]=-2147483647;h=c[b>>2]|0;i=j;return h|0}else{Ux((c[e>>2]|0)+(c[h>>2]|0)|0,c[e>>2]|0,c[f>>2]|0)|0;Tx(c[e>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;c[(c[d>>2]|0)+320+20>>2]=(c[f>>2]|0)+(c[h>>2]|0);c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}return 0}function Dv(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=0;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;a=c[b>>2]|0;i=f;return a|0}c[e>>2]=c[(c[d>>2]|0)+9392+36>>2];if(-1!=(c[(c[d>>2]|0)+16>>2]|0)?(c[(c[d>>2]|0)+9392+48>>2]|0)>>>0>(c[(c[d>>2]|0)+9392+52>>2]|0)>>>0:0)c[(c[d>>2]|0)+9392+36>>2]=c[(c[d>>2]|0)+16>>2];else c[(c[d>>2]|0)+9392+36>>2]=c[(c[d>>2]|0)+12>>2];c[b>>2]=0;a=c[b>>2]|0;i=f;return a|0}function Ev(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=i;i=i+48|0;q=r;m=r+44|0;s=r+40|0;n=r+36|0;k=r+32|0;l=r+28|0;g=r+24|0;j=r+20|0;h=r+16|0;f=r+12|0;o=r+8|0;p=r+4|0;c[s>>2]=b;c[n>>2]=e;c[k>>2]=0;c[l>>2]=0;c[g>>2]=0;c[j>>2]=0;c[h>>2]=1;c[f>>2]=0;if(!(c[s>>2]|0)){c[m>>2]=-2147483647;s=c[m>>2]|0;i=r;return s|0}if(!(c[n>>2]|0)){c[m>>2]=-2147483647;s=c[m>>2]|0;i=r;return s|0}c[f>>2]=c[(c[n>>2]|0)+320+16>>2];c[g>>2]=c[(c[n>>2]|0)+320+20>>2];c[j>>2]=(c[(c[n>>2]|0)+408>>2]|0)-1;c[k>>2]=Wu(c[n>>2]|0,c[j>>2]|0,c[(c[n>>2]|0)+12>>2]|0)|0;while(1){if(!(c[g>>2]|0)){f=19;break}c[l>>2]=((d[c[f>>2]>>0]|0)<<24)+((d[(c[f>>2]|0)+1>>0]|0)<<16)+((d[(c[f>>2]|0)+2>>0]|0)<<8)+(d[(c[f>>2]|0)+3>>0]|0);if((c[g>>2]|0)>>>0<((c[l>>2]|0)+4|0)>>>0){f=8;break}if((((d[(c[f>>2]|0)+4>>0]|0)>>1&63)+-32|0)>>>0<3?c[(c[n>>2]|0)+448+((c[(c[n>>2]|0)+12>>2]|0)*2208|0)+1156>>2]|0:0){Ux(c[f>>2]|0,(c[f>>2]|0)+(c[l>>2]|0)+4|0,(c[g>>2]|0)-(c[l>>2]|0)-4|0)|0;c[g>>2]=(c[g>>2]|0)-((c[l>>2]|0)+4);s=(c[n>>2]|0)+320+20|0;c[s>>2]=(c[s>>2]|0)-((c[l>>2]|0)+4);continue}if(c[h>>2]|0){if(c[k>>2]|0){c[o>>2]=Cv(c[n>>2]|0)|0;if(c[o>>2]|0){f=15;break}c[f>>2]=(c[f>>2]|0)+(c[(c[n>>2]|0)+448+((c[(c[n>>2]|0)+12>>2]|0)*2208|0)+1156>>2]|0)}c[h>>2]=0}a[c[f>>2]>>0]=0;a[(c[f>>2]|0)+1>>0]=0;a[(c[f>>2]|0)+2>>0]=0;a[(c[f>>2]|0)+3>>0]=1;c[f>>2]=(c[f>>2]|0)+(4+(c[l>>2]|0));c[g>>2]=(c[g>>2]|0)-(4+(c[l>>2]|0))}if((f|0)==8){c[q>>2]=4251;Pu(26063,q);c[m>>2]=-2147483641;s=c[m>>2]|0;i=r;return s|0}else if((f|0)==15){c[m>>2]=c[o>>2];s=c[m>>2]|0;i=r;return s|0}else if((f|0)==19){if((c[(c[n>>2]|0)+9280>>2]|0)==0?(c[p>>2]=Dv(c[n>>2]|0)|0,0!=(c[p>>2]|0)):0){c[m>>2]=c[p>>2];s=c[m>>2]|0;i=r;return s|0}c[m>>2]=0;s=c[m>>2]|0;i=r;return s|0}return 0}function Fv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=i;i=i+48|0;n=o;d=o+40|0;p=o+36|0;e=o+32|0;g=o+28|0;l=o+24|0;j=o+20|0;f=o+16|0;k=o+12|0;h=o+8|0;m=o+4|0;c[p>>2]=a;c[e>>2]=b;c[g>>2]=0;c[l>>2]=0;c[j>>2]=0;c[f>>2]=0;c[k>>2]=0;c[h>>2]=0;if(!(c[p>>2]|0)){c[d>>2]=-2147483647;p=c[d>>2]|0;i=o;return p|0}if(!(c[e>>2]|0)){c[d>>2]=-2147483647;p=c[d>>2]|0;i=o;return p|0}c[f>>2]=c[(c[e>>2]|0)+320+16>>2];c[g>>2]=c[(c[e>>2]|0)+320+20>>2];c[k>>2]=(c[e>>2]|0)+448+((c[(c[e>>2]|0)+16>>2]|0)*2208|0)+132;c[l>>2]=c[(c[e>>2]|0)+448+((c[(c[e>>2]|0)+16>>2]|0)*2208|0)+1156>>2];c[h>>2]=c[(c[e>>2]|0)+9392+64>>2];c[j>>2]=(c[g>>2]|0)+(c[l>>2]|0);if(!(c[f>>2]|0)){c[d>>2]=-2147483647;p=c[d>>2]|0;i=o;return p|0}if(!(c[g>>2]|0)){c[d>>2]=-2147483647;p=c[d>>2]|0;i=o;return p|0}if(!(c[k>>2]|0)){c[d>>2]=-2147483647;p=c[d>>2]|0;i=o;return p|0}if(!(c[l>>2]|0)){c[d>>2]=-2147483647;p=c[d>>2]|0;i=o;return p|0}if(!(c[h>>2]|0)){c[d>>2]=-2147483647;p=c[d>>2]|0;i=o;return p|0}if((c[j>>2]|0)>>>0>2097152){c[n>>2]=4190;Pu(26114,n);c[d>>2]=-2147483641;p=c[d>>2]|0;i=o;return p|0}Ux((c[h>>2]|0)+(c[l>>2]|0)|0,c[f>>2]|0,c[g>>2]|0)|0;Tx(c[h>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;c[(c[e>>2]|0)+320+16>>2]=c[h>>2];c[(c[e>>2]|0)+320+20>>2]=c[j>>2];if((c[(c[e>>2]|0)+9280>>2]|0)==0?(c[m>>2]=Dv(c[e>>2]|0)|0,0!=(c[m>>2]|0)):0){c[d>>2]=c[m>>2];p=c[d>>2]|0;i=o;return p|0}c[(c[e>>2]|0)+448+((c[(c[e>>2]|0)+16>>2]|0)*2208|0)+1156>>2]=0;c[d>>2]=0;p=c[d>>2]|0;i=o;return p|0}function Gv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;g=h;d=h+16|0;j=h+12|0;e=h+8|0;f=h+4|0;c[j>>2]=a;c[e>>2]=b;do if(!(c[j>>2]|0))c[d>>2]=-2147483647;else{if(!(c[e>>2]|0)){c[d>>2]=-2147483647;break}if(!((c[e>>2]|0)+320|0)){c[d>>2]=-2147483647;break}if((c[(c[e>>2]|0)+320+20>>2]|0)>>>0>2097152){c[g>>2]=4135;Pu(26148,g);c[d>>2]=-2147483641;break}if((c[(c[e>>2]|0)+9280>>2]|0)==0?(c[f>>2]=Dv(c[e>>2]|0)|0,0!=(c[f>>2]|0)):0){c[d>>2]=c[f>>2];break}c[d>>2]=0}while(0);i=h;return c[d>>2]|0}function Hv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;f=g;d=g+12|0;h=g+8|0;e=g+4|0;c[h>>2]=a;c[e>>2]=b;if(!(c[h>>2]|0)){c[d>>2]=-2147483647;h=c[d>>2]|0;i=g;return h|0}if(!(c[e>>2]|0)){c[d>>2]=-2147483647;h=c[d>>2]|0;i=g;return h|0}if(!((c[e>>2]|0)+320|0)){c[d>>2]=-2147483647;h=c[d>>2]|0;i=g;return h|0}if((c[(c[e>>2]|0)+320+20>>2]|0)>>>0>2097152){c[f>>2]=4332;Pu(26183,f);c[d>>2]=-2147483641;h=c[d>>2]|0;i=g;return h|0}else{c[(c[e>>2]|0)+320+16>>2]=(c[(c[e>>2]|0)+320+16>>2]|0)+2;c[(c[e>>2]|0)+320+20>>2]=(c[(c[e>>2]|0)+320+20>>2]|0)-2;c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}return 0}function Iv(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;f=l;h=l+24|0;m=l+20|0;j=l+16|0;e=l+12|0;k=l+8|0;g=l+4|0;c[m>>2]=a;c[j>>2]=b;c[e>>2]=0;c[k>>2]=0;c[g>>2]=0;if(!(c[m>>2]|0)){c[h>>2]=-2147483647;m=c[h>>2]|0;i=l;return m|0}if(!(c[j>>2]|0)){c[h>>2]=-2147483647;m=c[h>>2]|0;i=l;return m|0}if(!((c[j>>2]|0)+320|0)){c[h>>2]=-2147483647;m=c[h>>2]|0;i=l;return m|0}if((c[(c[j>>2]|0)+320+20>>2]|0)>>>0>2097152){c[f>>2]=4365;Pu(26218,f);c[h>>2]=-2147483641;m=c[h>>2]|0;i=l;return m|0}c[g>>2]=c[(c[j>>2]|0)+320+16>>2];c[(c[j>>2]|0)+320+80>>2]=(d[c[g>>2]>>0]|0)<<8|(d[(c[g>>2]|0)+1>>0]|0);c[g>>2]=(c[g>>2]|0)+9;c[e>>2]=(d[c[g>>2]>>0]|0)>>6&1;if(c[e>>2]|0)b=d[(c[(c[j>>2]|0)+320+16>>2]|0)+((c[(c[j>>2]|0)+320+20>>2]|0)-1)>>0]|0;else b=0;c[k>>2]=b;c[(c[j>>2]|0)+320+16>>2]=(c[(c[j>>2]|0)+320+16>>2]|0)+12;c[(c[j>>2]|0)+320+20>>2]=(c[(c[j>>2]|0)+320+20>>2]|0)-12-(c[k>>2]|0);c[h>>2]=0;m=c[h>>2]|0;i=l;return m|0}function Jv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;f=g;d=g+12|0;h=g+8|0;e=g+4|0;c[h>>2]=a;c[e>>2]=b;if(!(c[h>>2]|0)){c[d>>2]=-2147483647;h=c[d>>2]|0;i=g;return h|0}if(!(c[e>>2]|0)){c[d>>2]=-2147483647;h=c[d>>2]|0;i=g;return h|0}if(!(c[(c[e>>2]|0)+9284>>2]|0)){c[d>>2]=-2147483647;h=c[d>>2]|0;i=g;return h|0}if(((c[(c[e>>2]|0)+9392+40>>2]|0)+(c[(c[e>>2]|0)+9392+44>>2]|0)|0)>>>0>(c[(c[e>>2]|0)+9392+60>>2]|0)>>>0){c[f>>2]=3802;Pu(26292,f);c[d>>2]=-2147483641;h=c[d>>2]|0;i=g;return h|0}else{c[(c[e>>2]|0)+320+16>>2]=(c[(c[e>>2]|0)+9284>>2]|0)+(c[(c[e>>2]|0)+9392+40>>2]|0);c[(c[e>>2]|0)+320+20>>2]=c[(c[e>>2]|0)+9392+44>>2];c[(c[e>>2]|0)+9392+20>>2]=0;c[(c[e>>2]|0)+9392+24>>2]=1;c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}return 0}function Kv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=0;c[f>>2]=0;if(!(c[d>>2]|0)){c[b>>2]=-2147483647;a=c[b>>2]|0;i=g;return a|0}else{c[e>>2]=c[(c[d>>2]|0)+9392+36>>2];c[f>>2]=c[(c[d>>2]|0)+448+((c[e>>2]|0)*2208|0)+2192+12>>2];c[(c[d>>2]|0)+9288>>2]=0;c[(c[d>>2]|0)+9392+24>>2]=0;c[(c[d>>2]|0)+9392+20>>2]=1;a=(c[d>>2]|0)+448+((c[e>>2]|0)*2208|0)+2184|0;c[a>>2]=(c[a>>2]|0)+(c[(c[d>>2]|0)+9392+44>>2]|0);a=(c[d>>2]|0)+448+((c[e>>2]|0)*2208|0)+2192+4|0;c[a>>2]=(c[a>>2]|0)+-1;a=(c[d>>2]|0)+448+((c[e>>2]|0)*2208|0)+2192+8|0;c[a>>2]=(c[a>>2]|0)+(c[f>>2]|0);c[b>>2]=0;a=c[b>>2]|0;i=g;return a|0}return 0}function Lv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;d=g+12|0;h=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=0;if(!(c[h>>2]|0)){c[d>>2]=-2147483647;h=c[d>>2]|0;i=g;return h|0}if(!(c[e>>2]|0)){c[d>>2]=-2147483647;h=c[d>>2]|0;i=g;return h|0}c[(c[e>>2]|0)+9312>>2]=0;c[(c[e>>2]|0)+9392+8>>2]=0;c[(c[e>>2]|0)+9392+4>>2]=0;c[(c[e>>2]|0)+9392>>2]=0;c[(c[e>>2]|0)+9392+16>>2]=0;c[(c[e>>2]|0)+9392+60>>2]=0;c[(c[e>>2]|0)+9392+12>>2]=0;c[(c[e>>2]|0)+9392+20>>2]=0;c[(c[e>>2]|0)+9392+36>>2]=0;c[(c[e>>2]|0)+9392+44>>2]=0;h=(c[e>>2]|0)+9392+32|0;c[h>>2]=(c[h>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=(c[(c[e>>2]|0)+8>>2]|0)>>>0)break;c[(c[e>>2]|0)+448+((c[f>>2]|0)*2208|0)+2188>>2]=0;c[(c[e>>2]|0)+448+((c[f>>2]|0)*2208|0)+2184>>2]=0;c[(c[e>>2]|0)+448+((c[f>>2]|0)*2208|0)+2192>>2]=0;c[(c[e>>2]|0)+448+((c[f>>2]|0)*2208|0)+2192+12>>2]=0;c[f>>2]=(c[f>>2]|0)+1}c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}function Mv(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+64|0;m=s+48|0;h=s+44|0;n=s+40|0;e=s+36|0;q=s+32|0;f=s+28|0;k=s+24|0;l=s+20|0;r=s+16|0;o=s+12|0;g=s+8|0;j=s+4|0;p=s;c[h>>2]=a;c[n>>2]=b;c[e>>2]=0;c[q>>2]=0;c[f>>2]=1;c[k>>2]=0;c[l>>2]=0;c[r>>2]=0;c[o>>2]=0;if(!(c[n>>2]|0)){c[m>>2]=-2147483647;r=c[m>>2]|0;i=s;return r|0}c[k>>2]=c[(c[n>>2]|0)+9392+36>>2];while(1){if((c[e>>2]|0)>>>0>=(c[(c[n>>2]|0)+8>>2]|0)>>>0)break;c[f>>2]=c[f>>2]&c[(c[n>>2]|0)+448+((c[e>>2]|0)*2208|0)+2188>>2];c[e>>2]=(c[e>>2]|0)+1}if(c[f>>2]|0){c[g>>2]=Lv(c[h>>2]|0,c[n>>2]|0)|0;if(c[g>>2]|0){c[m>>2]=c[g>>2];r=c[m>>2]|0;i=s;return r|0}else{c[m>>2]=3;r=c[m>>2]|0;i=s;return r|0}}e=c[k>>2]|0;if(!(c[(c[n>>2]|0)+448+((c[k>>2]|0)*2208|0)+2192+4>>2]|0)){c[(c[n>>2]|0)+9392+36>>2]=((e+1|0)>>>0)%((c[(c[n>>2]|0)+8>>2]|0)>>>0)|0;c[(c[n>>2]|0)+448+((c[k>>2]|0)*2208|0)+2188>>2]=1;c[j>>2]=Mv(c[h>>2]|0,c[n>>2]|0)|0;if(c[j>>2]|0){c[m>>2]=c[j>>2];r=c[m>>2]|0;i=s;return r|0}else{c[m>>2]=0;r=c[m>>2]|0;i=s;return r|0}}c[q>>2]=c[(c[n>>2]|0)+448+(e*2208|0)+2184>>2];c[l>>2]=c[(c[n>>2]|0)+448+((c[k>>2]|0)*2208|0)>>2];c[r>>2]=c[(c[n>>2]|0)+448+((c[k>>2]|0)*2208|0)+4>>2];c[o>>2]=c[(c[n>>2]|0)+448+((c[k>>2]|0)*2208|0)+2192+8>>2];e=c[l>>2]|0;a:do if((e|0)<1986618469){switch(e|0){case 1936684398:break;default:break a}c[(c[n>>2]|0)+320+8>>2]=c[(c[n>>2]|0)+9392+52>>2];l=(c[n>>2]|0)+9392+52|0;c[l>>2]=(c[l>>2]|0)+(((((d[c[o>>2]>>0]|0)<<24)+((d[(c[o>>2]|0)+1>>0]|0)<<16)+((d[(c[o>>2]|0)+2>>0]|0)<<8)+(d[(c[o>>2]|0)+3>>0]|0)|0)>>>0)/((((c[r>>2]|0)>>>0)/1e3|0)>>>0)|0)}else{switch(e|0){case 1986618469:break;default:break a}c[(c[n>>2]|0)+320+8>>2]=c[(c[n>>2]|0)+9392+48>>2];l=(c[n>>2]|0)+9392+48|0;c[l>>2]=(c[l>>2]|0)+(((((d[c[o>>2]>>0]|0)<<24)+((d[(c[o>>2]|0)+1>>0]|0)<<16)+((d[(c[o>>2]|0)+2>>0]|0)<<8)+(d[(c[o>>2]|0)+3>>0]|0)|0)>>>0)/((((c[r>>2]|0)>>>0)/1e3|0)>>>0)|0)}while(0);c[(c[n>>2]|0)+9392+40>>2]=c[q>>2];c[(c[n>>2]|0)+9392+44>>2]=((d[(c[o>>2]|0)+4>>0]|0)<<24)+((d[(c[o>>2]|0)+4+1>>0]|0)<<16)+((d[(c[o>>2]|0)+4+2>>0]|0)<<8)+(d[(c[o>>2]|0)+4+3>>0]|0);c[p>>2]=Kv(c[n>>2]|0)|0;if(c[p>>2]|0){c[m>>2]=c[p>>2];r=c[m>>2]|0;i=s;return r|0}else{c[m>>2]=0;r=c[m>>2]|0;i=s;return r|0}return 0}function Nv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j;e=j+20|0;k=j+16|0;f=j+12|0;h=j+8|0;g=j+4|0;c[k>>2]=a;c[f>>2]=b;c[h>>2]=0;c[g>>2]=0;if(!(c[k>>2]|0)){c[e>>2]=-2147483647;k=c[e>>2]|0;i=j;return k|0}if(!(c[f>>2]|0)){c[e>>2]=-2147483647;k=c[e>>2]|0;i=j;return k|0}if(!(c[(c[f>>2]|0)+9284>>2]|0)){c[e>>2]=-2147483647;k=c[e>>2]|0;i=j;return k|0}if((c[(c[f>>2]|0)+9300>>2]|0)>>>0<(c[(c[f>>2]|0)+9304>>2]|0)>>>0){c[d>>2]=3985;Pu(25878,d);c[e>>2]=-2147483641;k=c[e>>2]|0;i=j;return k|0}c[h>>2]=(c[(c[f>>2]|0)+9300>>2]|0)-(c[(c[f>>2]|0)+9304>>2]|0);c[g>>2]=(c[(c[f>>2]|0)+9392+60>>2]|0)-(c[(c[f>>2]|0)+9288>>2]|0);b=(c[(c[f>>2]|0)+9284>>2]|0)+(c[(c[f>>2]|0)+9288>>2]|0)|0;a=(c[(c[f>>2]|0)+9296>>2]|0)+(c[(c[f>>2]|0)+9304>>2]|0)|0;if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0){Tx(b|0,a|0,c[g>>2]|0)|0;k=(c[f>>2]|0)+9304|0;c[k>>2]=(c[k>>2]|0)+(c[g>>2]|0);k=(c[f>>2]|0)+9288|0;c[k>>2]=(c[k>>2]|0)+(c[g>>2]|0);c[(c[f>>2]|0)+9392+16>>2]=1;c[e>>2]=0;k=c[e>>2]|0;i=j;return k|0}else{Tx(b|0,a|0,c[h>>2]|0)|0;k=(c[f>>2]|0)+9304|0;c[k>>2]=(c[k>>2]|0)+(c[h>>2]|0);k=(c[f>>2]|0)+9288|0;c[k>>2]=(c[k>>2]|0)+(c[h>>2]|0);c[e>>2]=2;k=c[e>>2]|0;i=j;return k|0}return 0}function Ov(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;if(!(c[f>>2]|0)){c[d>>2]=-2147483647;h=c[d>>2]|0;i=j;return h|0}if((c[(c[f>>2]|0)+9392+20>>2]|0)==0?(c[g>>2]=Mv(c[e>>2]|0,c[f>>2]|0)|0,0!=(c[g>>2]|0)):0){c[d>>2]=c[g>>2];h=c[d>>2]|0;i=j;return h|0}if((c[(c[f>>2]|0)+9392+24>>2]|0)==0?(c[h>>2]=Jv(c[e>>2]|0,c[f>>2]|0)|0,0!=(c[h>>2]|0)):0){c[d>>2]=c[h>>2];h=c[d>>2]|0;i=j;return h|0}c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}function Pv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;g=q+44|0;h=q+40|0;j=q+36|0;d=q+32|0;e=q+28|0;f=q+24|0;k=q+20|0;l=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;p=q;c[h>>2]=a;c[j>>2]=b;if(!(c[h>>2]|0)){c[g>>2]=-2147483647;p=c[g>>2]|0;i=q;return p|0}if(!(c[j>>2]|0)){c[g>>2]=-2147483647;p=c[g>>2]|0;i=q;return p|0}if((c[(c[j>>2]|0)+9320>>2]|0)==0?(c[d>>2]=gv(c[h>>2]|0,c[j>>2]|0)|0,0!=(c[d>>2]|0)):0){c[g>>2]=c[d>>2];p=c[g>>2]|0;i=q;return p|0}a=c[j>>2]|0;if(!(c[(c[j>>2]|0)+9280>>2]|0)){if((c[a+9392>>2]|0)==0?(c[e>>2]=fv(c[h>>2]|0,c[j>>2]|0)|0,0!=(c[e>>2]|0)):0){c[g>>2]=c[e>>2];p=c[g>>2]|0;i=q;return p|0}if((c[(c[j>>2]|0)+9392+16>>2]|0)==0?(c[f>>2]=Nv(c[h>>2]|0,c[j>>2]|0)|0,0!=(c[f>>2]|0)):0){c[g>>2]=c[f>>2];p=c[g>>2]|0;i=q;return p|0}while(1){c[k>>2]=Ov(c[h>>2]|0,c[j>>2]|0)|0;if(c[k>>2]|0){b=16;break}c[l>>2]=ev(c[h>>2]|0,c[j>>2]|0)|0;if(c[l>>2]|0){b=18;break}c[m>>2]=Av(c[h>>2]|0,c[j>>2]|0)|0;if(c[m>>2]|0){b=20;break}}if((b|0)==16){c[g>>2]=c[k>>2];p=c[g>>2]|0;i=q;return p|0}else if((b|0)==18){c[g>>2]=c[l>>2];p=c[g>>2]|0;i=q;return p|0}else if((b|0)==20){c[g>>2]=c[m>>2];p=c[g>>2]|0;i=q;return p|0}}do if(!(c[a+9320+12>>2]|0)){c[n>>2]=dv(c[h>>2]|0,c[j>>2]|0,1835295092)|0;if(!(c[n>>2]|0)){n=(c[j>>2]|0)+9304|0;c[n>>2]=(c[n>>2]|0)+8;c[(c[j>>2]|0)+9320+12>>2]=1;break}c[g>>2]=c[n>>2];p=c[g>>2]|0;i=q;return p|0}while(0);if(c[(c[h>>2]|0)+16>>2]|0)c[(c[j>>2]|0)+9320+16>>2]=0;if(!(c[(c[j>>2]|0)+9320+16>>2]|0)){c[o>>2]=rv(c[h>>2]|0,c[j>>2]|0)|0;if(c[o>>2]|0){c[g>>2]=c[o>>2];p=c[g>>2]|0;i=q;return p|0}if(c[(c[h>>2]|0)+16>>2]|0){c[g>>2]=0;p=c[g>>2]|0;i=q;return p|0}}if((c[(c[j>>2]|0)+9320+20>>2]|0)==0?(c[p>>2]=zv(c[h>>2]|0,c[j>>2]|0)|0,0!=(c[p>>2]|0)):0){c[g>>2]=c[p>>2];p=c[g>>2]|0;i=q;return p|0}c[g>>2]=0;p=c[g>>2]|0;i=q;return p|0}function Qv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+64|0;l=s+56|0;m=s+52|0;n=s+48|0;g=s;j=s+44|0;e=s+40|0;h=s+36|0;f=s+32|0;k=s+28|0;d=s+24|0;o=s+20|0;p=s+16|0;q=s+12|0;r=s+8|0;c[m>>2]=a;c[n>>2]=b;a=g;c[a>>2]=0;c[a+4>>2]=0;c[j>>2]=0;c[e>>2]=-1;c[h>>2]=0;c[f>>2]=0;c[k>>2]=0;c[d>>2]=0;if(!(c[m>>2]|0)){c[l>>2]=-2147483647;r=c[l>>2]|0;i=s;return r|0}if(!(c[n>>2]|0)){c[l>>2]=-2147483647;r=c[l>>2]|0;i=s;return r|0}c[(c[n>>2]|0)+408+32>>2]=0;while(1){c[o>>2]=tv(c[m>>2]|0,c[n>>2]|0,f,e,k)|0;if(c[o>>2]|0){d=7;break}if(0==(c[e>>2]|0)?(c[p>>2]=sv(c[n>>2]|0,c[f>>2]|0)|0,0!=(c[p>>2]|0)):0){d=10;break}c[q>>2]=hv(c[n>>2]|0,c[f>>2]|0,c[k>>2]|0,g,j)|0;if(c[q>>2]|0){d=12;break}if(((c[j>>2]|0)+(c[(c[n>>2]|0)+320+20>>2]|0)|0)>>>0>(c[(c[m>>2]|0)+4>>2]|0)>>>0){d=14;break}a=g;c[r>>2]=uv(c[n>>2]|0,c[e>>2]|0,c[f>>2]|0,c[k>>2]|0,c[j>>2]|0,c[a>>2]|0,c[a+4>>2]|0)|0;if(c[r>>2]|0){d=16;break}if(0==(c[e>>2]|0)?c[(c[n>>2]|0)+408+32>>2]|0:0){c[h>>2]=(c[h>>2]|0)+1;c[d>>2]=(c[(c[n>>2]|0)+320+16>>2]|0)+(c[(c[n>>2]|0)+320+20>>2]|0)}a=c[h>>2]|0;c[h>>2]=a+-1;if(!a){d=21;break}}if((d|0)==7){c[l>>2]=c[o>>2];r=c[l>>2]|0;i=s;return r|0}else if((d|0)==10){c[l>>2]=c[p>>2];r=c[l>>2]|0;i=s;return r|0}else if((d|0)==12){c[l>>2]=c[q>>2];r=c[l>>2]|0;i=s;return r|0}else if((d|0)==14){c[l>>2]=-2147483644;r=c[l>>2]|0;i=s;return r|0}else if((d|0)==16){c[l>>2]=c[r>>2];r=c[l>>2]|0;i=s;return r|0}else if((d|0)==21){if(c[(c[m>>2]|0)+24>>2]|0)c[(c[(c[m>>2]|0)+24>>2]|0)+44>>2]=c[(c[n>>2]|0)+28>>2];c[l>>2]=0;r=c[l>>2]|0;i=s;return r|0}return 0}function Rv(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=c[a+60>>2];a=Sv(Za(6,d|0)|0)|0;i=b;return a|0}function Sv(a){a=a|0;if(a>>>0>4294963200){c[(Tv()|0)>>2]=0-a;a=-1}return a|0}function Tv(){var a=0;if(!(c[40181]|0))a=160768;else a=c[(Ma()|0)+64>>2]|0;return a|0}function Uv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+80|0;f=g;c[b+36>>2]=45;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21505,c[f+8>>2]=g+12,Ra(54,f|0)|0):0)a[b+75>>0]=-1;f=Vv(b,d,e)|0;i=g;return f|0}function Vv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;n=q+16|0;m=q;e=q+32|0;o=a+28|0;f=c[o>>2]|0;c[e>>2]=f;p=a+20|0;f=(c[p>>2]|0)-f|0;c[e+4>>2]=f;c[e+8>>2]=b;c[e+12>>2]=d;k=a+60|0;l=a+44|0;b=2;f=f+d|0;while(1){if(!(c[40181]|0)){c[n>>2]=c[k>>2];c[n+4>>2]=e;c[n+8>>2]=b;h=Sv(hb(146,n|0)|0)|0}else{xa(57,a|0);c[m>>2]=c[k>>2];c[m+4>>2]=e;c[m+8>>2]=b;h=Sv(hb(146,m|0)|0)|0;pa(0)}if((f|0)==(h|0)){f=6;break}if((h|0)<0){f=8;break}f=f-h|0;g=c[e+4>>2]|0;if(h>>>0<=g>>>0)if((b|0)==2){c[o>>2]=(c[o>>2]|0)+h;j=g;b=2}else j=g;else{j=c[l>>2]|0;c[o>>2]=j;c[p>>2]=j;j=c[e+12>>2]|0;h=h-g|0;e=e+8|0;b=b+-1|0}c[e>>2]=(c[e>>2]|0)+h;c[e+4>>2]=j-h}if((f|0)==6){n=c[l>>2]|0;c[a+16>>2]=n+(c[a+48>>2]|0);a=n;c[o>>2]=a;c[p>>2]=a}else if((f|0)==8){c[a+16>>2]=0;c[o>>2]=0;c[p>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[e+4>>2]|0)|0}i=q;return d|0}function Wv(a){a=a|0;if(!(c[a+68>>2]|0))Xv(a);return}function Xv(a){a=a|0;return}function Yv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((Sv(eb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;i=f;return a|0}function Zv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;m=i;i=i+48|0;h=m+16|0;g=m;f=m+32|0;c[f>>2]=d;j=f+4|0;l=b+48|0;n=c[l>>2]|0;c[j>>2]=e-((n|0)!=0&1);k=b+44|0;c[f+8>>2]=c[k>>2];c[f+12>>2]=n;if(!(c[40181]|0)){c[h>>2]=c[b+60>>2];c[h+4>>2]=f;c[h+8>>2]=2;f=Sv(gb(145,h|0)|0)|0}else{xa(58,b|0);c[g>>2]=c[b+60>>2];c[g+4>>2]=f;c[g+8>>2]=2;f=Sv(gb(145,g|0)|0)|0;pa(0)}if((f|0)>=1){j=c[j>>2]|0;if(f>>>0>j>>>0){g=c[k>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-j);if(!(c[l>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else{c[b>>2]=c[b>>2]|f&48^16;c[b+8>>2]=0;c[b+4>>2]=0}i=m;return f|0}function _v(a){a=a|0;if(!(c[a+68>>2]|0))Xv(a);return}function $v(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=b;b=f;while(1){if(!(a[d>>0]|0))break a;d=d+1|0;b=d;if(!(b&3)){b=d;e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function aw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+($v(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=$(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function bw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=$(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(0);return (e|0?b:0)|0}function cw(b,d){b=b|0;d=d|0;var e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function dw(b,c){b=b|0;c=c|0;b=aw(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function ew(b){b=b|0;var c=0,e=0;c=0;while(1){if((d[26323+c>>0]|0)==(b|0)){e=2;break}c=c+1|0;if((c|0)==87){c=87;b=26411;e=5;break}}if((e|0)==2)if(!c)b=26411;else{b=26411;e=5}if((e|0)==5)while(1){e=b;while(1){b=e+1|0;if(!(a[e>>0]|0))break;else e=b}c=c+-1|0;if(!c)break;else e=5}return b|0}function fw(a,b){a=a|0;b=b|0;cw(a,b)|0;return a|0}function gw(a,b){a=a|0;b=b|0;fw(a+($v(a)|0)|0,b)|0;return a|0}function hw(b,c){b=b|0;c=c|0;var d=0,e=0;e=a[b>>0]|0;d=a[c>>0]|0;if(e<<24>>24==0?1:e<<24>>24!=d<<24>>24)c=e;else{do{b=b+1|0;c=c+1|0;e=a[b>>0]|0;d=a[c>>0]|0}while(!(e<<24>>24==0?1:e<<24>>24!=d<<24>>24));c=e}return (c&255)-(d&255)|0}function iw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+112|0;n=o+40|0;l=o+24|0;k=o+16|0;g=o;m=o+52|0;f=a[d>>0]|0;if(bw(28749,f<<24>>24,4)|0){e=_w(1144)|0;if(!e)e=0;else{h=e;j=h+112|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(j|0));if(!(dw(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(dw(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;qa(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[k>>2]=b;c[k+4>>2]=3;f=qa(221,k|0)|0;if(!(f&1024)){c[l>>2]=b;c[l+4>>2]=4;c[l+8>>2]=f|1024;qa(221,l|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+120;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21505,c[n+8>>2]=m,(Ra(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=49;c[e+36>>2]=45;c[e+40>>2]=44;c[e+12>>2]=58;if(!(c[40182]|0))c[e+76>>2]=-1;Ya(160752);f=c[40187]|0;c[e+56>>2]=f;if(f|0)c[f+52>>2]=e;c[40187]=e;Sa(160752)}}else{c[(Tv()|0)>>2]=22;e=0}i=o;return e|0}function jw(a){a=a|0;return 0}function kw(a){a=a|0;var b=0,d=0,e=0;if((c[a+76>>2]|0)>-1)jw(a)|0;e=(c[a>>2]&1|0)!=0;if(!e){Ya(160752);d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[40187]|0)==(a|0))c[40187]=b;Sa(160752)}b=lw(a)|0;b=nb[c[a+12>>2]&127](a)|0|b;d=c[a+92>>2]|0;if(d|0)$w(d);if(!e)$w(a);return b|0}function lw(a){a=a|0;var b=0,d=0;do if(a){if((c[a+76>>2]|0)<=-1){b=mw(a)|0;break}d=(jw(a)|0)==0;b=mw(a)|0;if(!d)Xv(a)}else{if(!(c[1339]|0))b=0;else b=lw(c[1339]|0)|0;Ya(160752);a=c[40187]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=jw(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=mw(a)|0|b;if(d|0)Xv(a);a=c[a+56>>2]|0}while((a|0)!=0);Sa(160752)}while(0);return b|0}function mw(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;g=a+28|0;if((c[b>>2]|0)>>>0>(c[g>>2]|0)>>>0?(jb[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)b=-1;else{h=a+4|0;d=c[h>>2]|0;e=a+8|0;f=c[e>>2]|0;if(d>>>0<f>>>0)jb[c[a+40>>2]&63](a,d-f|0,1)|0;c[a+16>>2]=0;c[g>>2]=0;c[b>>2]=0;c[e>>2]=0;c[h>>2]=0;b=0}return b|0}function nw(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;b=ow(c[1310]|0,a,e)|0;i=d;return b|0}function ow(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=i;i=i+224|0;o=s+120|0;r=s+80|0;q=s;p=s+136|0;f=r;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[o>>2]=c[e>>2];if((pw(0,d,o,q,r)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)m=jw(b)|0;else m=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=p;j=b+28|0;c[j>>2]=p;k=b+20|0;c[k>>2]=p;c[e>>2]=80;l=b+16|0;c[l>>2]=p+80;f=pw(b,d,o,q,r)|0;if(h){jb[c[b+36>>2]&63](b,0,0)|0;f=(c[k>>2]|0)==0?-1:f;c[g>>2]=h;c[e>>2]=0;c[l>>2]=0;c[j>>2]=0;c[k>>2]=0}}else f=pw(b,d,o,q,r)|0;e=c[b>>2]|0;c[b>>2]=e|n;if(m|0)Xv(b);e=(e&32|0)==0?f:-1}i=s;return e|0}function pw(e,f,g,j,l){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,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,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0;ia=i;i=i+624|0;da=ia+24|0;fa=ia+16|0;ea=ia+588|0;aa=ia+576|0;ca=ia;W=ia+536|0;ha=ia+8|0;ga=ia+528|0;M=(e|0)!=0;N=W+40|0;V=N;W=W+39|0;X=ha+4|0;Y=ea;Z=0-Y|0;_=aa+12|0;aa=aa+11|0;ba=_;O=ba-Y|0;P=-2-Y|0;Q=ba+2|0;R=da+288|0;S=ea+9|0;T=S;U=ea+8|0;m=0;o=0;n=0;y=f;a:while(1){do if((m|0)>-1)if((o|0)>(2147483647-m|0)){c[(Tv()|0)>>2]=75;m=-1;break}else{m=o+m|0;break}while(0);f=a[y>>0]|0;if(!(f<<24>>24)){L=244;break}else o=y;b:while(1){switch(f<<24>>24){case 37:{f=o;L=9;break b}case 0:{f=o;break b}default:{}}K=o+1|0;f=a[K>>0]|0;o=K}c:do if((L|0)==9)while(1){L=0;if((a[f+1>>0]|0)!=37)break c;o=o+1|0;f=f+2|0;if((a[f>>0]|0)==37)L=9;else break}while(0);w=o-y|0;if(M?(c[e>>2]&32|0)==0:0)qw(y,w,e)|0;if((o|0)!=(y|0)){o=w;y=f;continue}r=f+1|0;o=a[r>>0]|0;p=(o<<24>>24)+-48|0;if(p>>>0<10){K=(a[f+2>>0]|0)==36;r=K?f+3|0:r;o=a[r>>0]|0;u=K?p:-1;n=K?1:n}else u=-1;f=o<<24>>24;d:do if((f&-32|0)==32){p=0;while(1){if(!(1<<f+-32&75913)){s=p;break d}p=1<<(o<<24>>24)+-32|p;r=r+1|0;o=a[r>>0]|0;f=o<<24>>24;if((f&-32|0)!=32){s=p;break}}}else s=0;while(0);do if(o<<24>>24==42){o=r+1|0;f=(a[o>>0]|0)+-48|0;if(f>>>0<10?(a[r+2>>0]|0)==36:0){c[l+(f<<2)>>2]=10;n=1;r=r+3|0;f=c[j+((a[o>>0]|0)+-48<<3)>>2]|0}else{if(n|0){m=-1;break a}if(!M){v=s;n=0;r=o;K=0;break}n=(c[g>>2]|0)+(4-1)&~(4-1);f=c[n>>2]|0;c[g>>2]=n+4;n=0;r=o}if((f|0)<0){v=s|8192;K=0-f|0}else{v=s;K=f}}else{p=(o<<24>>24)+-48|0;if(p>>>0<10){f=r;o=0;do{o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0}while(p>>>0<10);if((o|0)<0){m=-1;break a}else{v=s;r=f;K=o}}else{v=s;K=0}}while(0);e:do if((a[r>>0]|0)==46){f=r+1|0;o=a[f>>0]|0;if(o<<24>>24!=42){p=(o<<24>>24)+-48|0;if(p>>>0<10)o=0;else{s=0;break}while(1){o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0;if(p>>>0>=10){s=o;break e}}}f=r+2|0;o=(a[f>>0]|0)+-48|0;if(o>>>0<10?(a[r+3>>0]|0)==36:0){c[l+(o<<2)>>2]=10;s=c[j+((a[f>>0]|0)+-48<<3)>>2]|0;f=r+4|0;break}if(n|0){m=-1;break a}if(M){J=(c[g>>2]|0)+(4-1)&~(4-1);s=c[J>>2]|0;c[g>>2]=J+4}else s=0}else{s=-1;f=r}while(0);t=0;while(1){o=(a[f>>0]|0)+-65|0;if(o>>>0>57){m=-1;break a}p=f+1|0;o=a[28215+(t*58|0)+o>>0]|0;r=o&255;if((r+-1|0)>>>0<8){f=p;t=r}else{J=p;break}}if(!(o<<24>>24)){m=-1;break}p=(u|0)>-1;do if(o<<24>>24==19)if(p){m=-1;break a}else L=52;else{if(p){c[l+(u<<2)>>2]=r;H=j+(u<<3)|0;I=c[H+4>>2]|0;L=ca;c[L>>2]=c[H>>2];c[L+4>>2]=I;L=52;break}if(!M){m=0;break a}sw(ca,r,g)}while(0);if((L|0)==52?(L=0,!M):0){o=w;y=J;continue}u=a[f>>0]|0;u=(t|0)!=0&(u&15|0)==3?u&-33:u;p=v&-65537;I=(v&8192|0)==0?v:p;f:do switch(u|0){case 110:switch(t|0){case 0:{c[c[ca>>2]>>2]=m;o=w;y=J;continue a}case 1:{c[c[ca>>2]>>2]=m;o=w;y=J;continue a}case 2:{o=c[ca>>2]|0;c[o>>2]=m;c[o+4>>2]=((m|0)<0)<<31>>31;o=w;y=J;continue a}case 3:{b[c[ca>>2]>>1]=m;o=w;y=J;continue a}case 4:{a[c[ca>>2]>>0]=m;o=w;y=J;continue a}case 6:{c[c[ca>>2]>>2]=m;o=w;y=J;continue a}case 7:{o=c[ca>>2]|0;c[o>>2]=m;c[o+4>>2]=((m|0)<0)<<31>>31;o=w;y=J;continue a}default:{o=w;y=J;continue a}}case 112:{t=I|8;s=s>>>0>8?s:8;u=120;L=64;break}case 88:case 120:{t=I;L=64;break}case 111:{p=ca;o=c[p>>2]|0;p=c[p+4>>2]|0;if((o|0)==0&(p|0)==0)f=N;else{f=N;do{f=f+-1|0;a[f>>0]=o&7|48;o=Rx(o|0,p|0,3)|0;p=D}while(!((o|0)==0&(p|0)==0))}if(!(I&8)){o=I;t=0;r=28695;L=77}else{t=V-f|0;o=I;s=(s|0)>(t|0)?s:t+1|0;t=0;r=28695;L=77}break}case 105:case 100:{o=ca;f=c[o>>2]|0;o=c[o+4>>2]|0;if((o|0)<0){f=Nx(0,0,f|0,o|0)|0;o=D;p=ca;c[p>>2]=f;c[p+4>>2]=o;p=1;r=28695;L=76;break f}if(!(I&2048)){r=I&1;p=r;r=(r|0)==0?28695:28697;L=76}else{p=1;r=28696;L=76}break}case 117:{o=ca;f=c[o>>2]|0;o=c[o+4>>2]|0;p=0;r=28695;L=76;break}case 99:{a[W>>0]=c[ca>>2];f=W;u=1;w=0;v=28695;o=N;break}case 109:{o=ew(c[(Tv()|0)>>2]|0)|0;L=82;break}case 115:{o=c[ca>>2]|0;o=o|0?o:28705;L=82;break}case 67:{c[ha>>2]=c[ca>>2];c[X>>2]=0;c[ca>>2]=ha;f=ha;s=-1;L=86;break}case 83:{f=c[ca>>2]|0;if(!s){uw(e,32,K,0,I);f=0;L=97}else L=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{q=+h[ca>>3];c[fa>>2]=0;h[k>>3]=q;if((c[k+4>>2]|0)>=0)if(!(I&2048)){H=I&1;G=H;H=(H|0)==0?28713:28718}else{G=1;H=28715}else{q=-q;G=1;H=28712}h[k>>3]=q;F=c[k+4>>2]&2146435072;do if(F>>>0<2146435072|(F|0)==2146435072&0<0){x=+xw(q,fa)*2.0;o=x!=0.0;if(o)c[fa>>2]=(c[fa>>2]|0)+-1;C=u|32;if((C|0)==97){v=u&32;y=(v|0)==0?H:H+9|0;w=G|2;f=12-s|0;do if(!(s>>>0>11|(f|0)==0)){q=8.0;do{f=f+-1|0;q=q*16.0}while((f|0)!=0);if((a[y>>0]|0)==45){q=-(q+(-x-q));break}else{q=x+q-q;break}}else q=x;while(0);o=c[fa>>2]|0;f=(o|0)<0?0-o|0:o;f=tw(f,((f|0)<0)<<31>>31,_)|0;if((f|0)==(_|0)){a[aa>>0]=48;f=aa}a[f+-1>>0]=(o>>31&2)+43;t=f+-2|0;a[t>>0]=u+15;r=(s|0)<1;p=(I&8|0)==0;o=ea;while(1){H=~~q;f=o+1|0;a[o>>0]=d[28679+H>>0]|v;q=(q-+(H|0))*16.0;do if((f-Y|0)==1){if(p&(r&q==0.0))break;a[f>>0]=46;f=o+2|0}while(0);if(!(q!=0.0))break;else o=f}p=t;s=(s|0)!=0&(P+f|0)<(s|0)?Q+s-p|0:O-p+f|0;r=s+w|0;uw(e,32,K,r,I);if(!(c[e>>2]&32))qw(y,w,e)|0;uw(e,48,K,r,I^65536);o=f-Y|0;if(!(c[e>>2]&32))qw(ea,o,e)|0;f=ba-p|0;uw(e,48,s-(o+f)|0,0,0);if(!(c[e>>2]&32))qw(t,f,e)|0;uw(e,32,K,r,I^8192);f=(r|0)<(K|0)?K:r;break}f=(s|0)<0?6:s;if(o){o=(c[fa>>2]|0)+-28|0;c[fa>>2]=o;q=x*268435456.0}else{q=x;o=c[fa>>2]|0}F=(o|0)<0?da:R;E=F;o=F;do{B=~~q>>>0;c[o>>2]=B;o=o+4|0;q=(q-+(B>>>0))*1.0e9}while(q!=0.0);p=o;o=c[fa>>2]|0;if((o|0)>0){s=F;while(1){t=(o|0)>29?29:o;r=p+-4|0;do if(r>>>0<s>>>0)r=s;else{o=0;do{B=Sx(c[r>>2]|0,0,t|0)|0;B=Px(B|0,D|0,o|0,0)|0;o=D;A=$x(B|0,o|0,1e9,0)|0;c[r>>2]=A;o=_x(B|0,o|0,1e9,0)|0;r=r+-4|0}while(r>>>0>=s>>>0);if(!o){r=s;break}r=s+-4|0;c[r>>2]=o}while(0);while(1){if(p>>>0<=r>>>0)break;o=p+-4|0;if(!(c[o>>2]|0))p=o;else break}o=(c[fa>>2]|0)-t|0;c[fa>>2]=o;if((o|0)>0)s=r;else break}}else r=F;if((o|0)<0){y=((f+25|0)/9|0)+1|0;z=(C|0)==102;v=r;while(1){w=0-o|0;w=(w|0)>9?9:w;do if(v>>>0<p>>>0){o=(1<<w)+-1|0;s=1e9>>>w;r=0;t=v;do{B=c[t>>2]|0;c[t>>2]=(B>>>w)+r;r=$(B&o,s)|0;t=t+4|0}while(t>>>0<p>>>0);o=(c[v>>2]|0)==0?v+4|0:v;if(!r){r=o;break}c[p>>2]=r;r=o;p=p+4|0}else r=(c[v>>2]|0)==0?v+4|0:v;while(0);o=z?F:r;p=(p-o>>2|0)>(y|0)?o+(y<<2)|0:p;o=(c[fa>>2]|0)+w|0;c[fa>>2]=o;if((o|0)>=0){z=r;break}else v=r}}else z=r;do if(z>>>0<p>>>0){o=(E-z>>2)*9|0;s=c[z>>2]|0;if(s>>>0<10)break;else r=10;do{r=r*10|0;o=o+1|0}while(s>>>0>=r>>>0)}else o=0;while(0);A=(C|0)==103;B=(f|0)!=0;r=f-((C|0)!=102?o:0)+((B&A)<<31>>31)|0;if((r|0)<(((p-E>>2)*9|0)+-9|0)){t=r+9216|0;r=F+4+(((t|0)/9|0)+-1024<<2)|0;t=((t|0)%9|0)+1|0;if((t|0)<9){s=10;do{s=s*10|0;t=t+1|0}while((t|0)!=9)}else s=10;w=c[r>>2]|0;y=(w>>>0)%(s>>>0)|0;t=(r+4|0)==(p|0);do if(t&(y|0)==0)s=z;else{x=(((w>>>0)/(s>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;v=(s|0)/2|0;if(y>>>0<v>>>0)q=.5;else q=t&(y|0)==(v|0)?1.0:1.5;do if(G){if((a[H>>0]|0)!=45)break;x=-x;q=-q}while(0);t=w-y|0;c[r>>2]=t;if(!(x+q!=x)){s=z;break}C=t+s|0;c[r>>2]=C;if(C>>>0>999999999){o=z;while(1){s=r+-4|0;c[r>>2]=0;if(s>>>0<o>>>0){o=o+-4|0;c[o>>2]=0}C=(c[s>>2]|0)+1|0;c[s>>2]=C;if(C>>>0>999999999)r=s;else{v=o;r=s;break}}}else v=z;o=(E-v>>2)*9|0;t=c[v>>2]|0;if(t>>>0<10){s=v;break}else s=10;do{s=s*10|0;o=o+1|0}while(t>>>0>=s>>>0);s=v}while(0);C=r+4|0;z=s;p=p>>>0>C>>>0?C:p}w=0-o|0;while(1){if(p>>>0<=z>>>0){y=0;C=p;break}r=p+-4|0;if(!(c[r>>2]|0))p=r;else{y=1;C=p;break}}do if(A){f=(B&1^1)+f|0;if((f|0)>(o|0)&(o|0)>-5){u=u+-1|0;f=f+-1-o|0}else{u=u+-2|0;f=f+-1|0}p=I&8;if(p|0)break;do if(y){p=c[C+-4>>2]|0;if(!p){r=9;break}if(!((p>>>0)%10|0)){s=10;r=0}else{r=0;break}do{s=s*10|0;r=r+1|0}while(!((p>>>0)%(s>>>0)|0|0))}else r=9;while(0);p=((C-E>>2)*9|0)+-9|0;if((u|32|0)==102){p=p-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;p=0;break}else{p=p+o-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;p=0;break}}else p=I&8;while(0);v=f|p;s=(v|0)!=0&1;t=(u|32|0)==102;if(t){o=(o|0)>0?o:0;u=0}else{r=(o|0)<0?w:o;r=tw(r,((r|0)<0)<<31>>31,_)|0;if((ba-r|0)<2)do{r=r+-1|0;a[r>>0]=48}while((ba-r|0)<2);a[r+-1>>0]=(o>>31&2)+43;E=r+-2|0;a[E>>0]=u;o=ba-E|0;u=E}w=G+1+f+s+o|0;uw(e,32,K,w,I);if(!(c[e>>2]&32))qw(H,G,e)|0;uw(e,48,K,w,I^65536);do if(t){r=z>>>0>F>>>0?F:z;o=r;do{p=tw(c[o>>2]|0,0,S)|0;do if((o|0)==(r|0)){if((p|0)!=(S|0))break;a[U>>0]=48;p=U}else{if(p>>>0<=ea>>>0)break;Ox(ea|0,48,p-Y|0)|0;do p=p+-1|0;while(p>>>0>ea>>>0)}while(0);if(!(c[e>>2]&32))qw(p,T-p|0,e)|0;o=o+4|0}while(o>>>0<=F>>>0);do if(v|0){if(c[e>>2]&32|0)break;qw(28747,1,e)|0}while(0);if((f|0)>0&o>>>0<C>>>0){p=o;while(1){o=tw(c[p>>2]|0,0,S)|0;if(o>>>0>ea>>>0){Ox(ea|0,48,o-Y|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}if(!(c[e>>2]&32))qw(o,(f|0)>9?9:f,e)|0;p=p+4|0;o=f+-9|0;if(!((f|0)>9&p>>>0<C>>>0)){f=o;break}else f=o}}uw(e,48,f+9|0,9,0)}else{t=y?C:z+4|0;if((f|0)>-1){s=(p|0)==0;r=z;do{o=tw(c[r>>2]|0,0,S)|0;if((o|0)==(S|0)){a[U>>0]=48;o=U}do if((r|0)==(z|0)){p=o+1|0;if(!(c[e>>2]&32))qw(o,1,e)|0;if(s&(f|0)<1){o=p;break}if(c[e>>2]&32|0){o=p;break}qw(28747,1,e)|0;o=p}else{if(o>>>0<=ea>>>0)break;Ox(ea|0,48,o+Z|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}while(0);p=T-o|0;if(!(c[e>>2]&32))qw(o,(f|0)>(p|0)?p:f,e)|0;f=f-p|0;r=r+4|0}while(r>>>0<t>>>0&(f|0)>-1)}uw(e,48,f+18|0,18,0);if(c[e>>2]&32|0)break;qw(u,ba-u|0,e)|0}while(0);uw(e,32,K,w,I^8192);f=(w|0)<(K|0)?K:w}else{t=(u&32|0)!=0;s=q!=q|0.0!=0.0;o=s?0:G;r=o+3|0;uw(e,32,K,r,p);f=c[e>>2]|0;if(!(f&32)){qw(H,o,e)|0;f=c[e>>2]|0}if(!(f&32))qw(s?(t?28739:28743):t?28731:28735,3,e)|0;uw(e,32,K,r,I^8192);f=(r|0)<(K|0)?K:r}while(0);o=f;y=J;continue a}default:{f=y;p=I;u=s;w=0;v=28695;o=N}}while(0);g:do if((L|0)==64){p=ca;o=c[p>>2]|0;p=c[p+4>>2]|0;r=u&32;if(!((o|0)==0&(p|0)==0)){f=N;do{f=f+-1|0;a[f>>0]=d[28679+(o&15)>>0]|r;o=Rx(o|0,p|0,4)|0;p=D}while(!((o|0)==0&(p|0)==0));L=ca;if((t&8|0)==0|(c[L>>2]|0)==0&(c[L+4>>2]|0)==0){o=t;t=0;r=28695;L=77}else{o=t;t=2;r=28695+(u>>4)|0;L=77}}else{f=N;o=t;t=0;r=28695;L=77}}else if((L|0)==76){f=tw(f,o,N)|0;o=I;t=p;L=77}else if((L|0)==82){L=0;I=bw(o,0,s)|0;H=(I|0)==0;f=o;u=H?s:I-o|0;w=0;v=28695;o=H?o+s|0:I}else if((L|0)==86){L=0;p=0;o=0;t=f;while(1){r=c[t>>2]|0;if(!r)break;o=vw(ga,r)|0;if((o|0)<0|o>>>0>(s-p|0)>>>0)break;p=o+p|0;if(s>>>0>p>>>0)t=t+4|0;else break}if((o|0)<0){m=-1;break a}uw(e,32,K,p,I);if(!p){f=0;L=97}else{r=0;while(1){o=c[f>>2]|0;if(!o){f=p;L=97;break g}o=vw(ga,o)|0;r=o+r|0;if((r|0)>(p|0)){f=p;L=97;break g}if(!(c[e>>2]&32))qw(ga,o,e)|0;if(r>>>0>=p>>>0){f=p;L=97;break}else f=f+4|0}}}while(0);if((L|0)==97){L=0;uw(e,32,K,f,I^8192);o=(K|0)>(f|0)?K:f;y=J;continue}if((L|0)==77){L=0;p=(s|0)>-1?o&-65537:o;o=ca;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0;if((s|0)!=0|o){u=(o&1^1)+(V-f)|0;u=(s|0)>(u|0)?s:u;w=t;v=r;o=N}else{f=N;u=0;w=t;v=r;o=N}}t=o-f|0;r=(u|0)<(t|0)?t:u;s=w+r|0;o=(K|0)<(s|0)?s:K;uw(e,32,o,s,p);if(!(c[e>>2]&32))qw(v,w,e)|0;uw(e,48,o,s,p^65536);uw(e,48,r,t,0);if(!(c[e>>2]&32))qw(f,t,e)|0;uw(e,32,o,s,p^8192);y=J}h:do if((L|0)==244)if(!e)if(n){m=1;while(1){n=c[l+(m<<2)>>2]|0;if(!n)break;sw(j+(m<<3)|0,n,g);m=m+1|0;if((m|0)>=10){m=1;break h}}if((m|0)<10)while(1){if(c[l+(m<<2)>>2]|0){m=-1;break h}m=m+1|0;if((m|0)>=10){m=1;break}}else m=1}else m=0;while(0);i=ia;return m|0}function qw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(rw(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){i=e+20|0;f=c[i>>2]|0;h=f;if((g-f|0)>>>0<d>>>0){f=jb[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){g=h;f=0;break b}g=f+-1|0;if((a[b+g>>0]|0)==10)break;else f=g}if((jb[c[e+36>>2]&63](e,b,f)|0)>>>0<f>>>0)break a;d=d-f|0;b=b+f|0;g=c[i>>2]|0}else{g=h;f=0}while(0);Tx(g|0,b|0,d|0)|0;c[i>>2]=(c[i>>2]|0)+d;f=f+d|0}while(0);return f|0}function rw(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d;c[b+16>>2]=d+(c[b+48>>2]|0);d=0}else{c[b>>2]=d|32;d=-1}return d|0}function sw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function tw(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)while(1){e=$x(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e|48;e=_x(b|0,c|0,10,0)|0;if(c>>>0>9|(c|0)==9&b>>>0>4294967295){b=e;c=D}else{b=e;break}}if(b)while(1){d=d+-1|0;a[d>>0]=(b>>>0)%10|0|48;if(b>>>0<10)break;else b=(b>>>0)/10|0}return d|0}function uw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0;j=i;i=i+256|0;h=j;do if((d|0)>(e|0)&(f&73728|0)==0){f=d-e|0;Ox(h|0,b|0,(f>>>0>256?256:f)|0)|0;b=c[a>>2]|0;g=(b&32|0)==0;if(f>>>0>255){e=d-e|0;do{if(g){qw(h,256,a)|0;b=c[a>>2]|0}f=f+-256|0;g=(b&32|0)==0}while(f>>>0>255);if(g)f=e&255;else break}else if(!g)break;qw(h,f,a)|0}while(0);i=j;return}function vw(a,b){a=a|0;b=b|0;if(!a)a=0;else a=ww(a,b,0)|0;return a|0}function ww(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(Tv()|0)>>2]=84;b=-1;break}}else b=1;while(0);return b|0}function xw(a,b){a=+a;b=b|0;return +(+yw(a,b))}function yw(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[k>>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=Rx(d|0,e|0,52)|0;f=f&2047;switch(f|0){case 0:{if(a!=0.0){a=+yw(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=f+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;a=+h[k>>3]}}return +a}function zw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if((c[d+76>>2]|0)>=0?(jw(d)|0)!=0:0){if((a[d+75>>0]|0)!=(b|0)?(f=d+20|0,g=c[f>>2]|0,g>>>0<(c[d+16>>2]|0)>>>0):0){c[f>>2]=g+1;a[g>>0]=b;e=b&255}else e=Aw(d,b)|0;Xv(d)}else i=3;do if((i|0)==3){if((a[d+75>>0]|0)!=(b|0)?(h=d+20|0,e=c[h>>2]|0,e>>>0<(c[d+16>>2]|0)>>>0):0){c[h>>2]=e+1;a[e>>0]=b;e=b&255;break}e=Aw(d,b)|0}while(0);return e|0}function Aw(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;l=m;k=e&255;a[l>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(rw(b)|0)){h=c[g>>2]|0;j=4}else f=-1;else j=4;do if((j|0)==4){g=b+20|0;j=c[g>>2]|0;if(j>>>0<h>>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[g>>2]=j+1;a[j>>0]=k;break}if((jb[c[b+36>>2]&63](b,l,1)|0)==1)f=d[l>>0]|0;else f=-1}while(0);i=m;return f|0}function Bw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+32|0;f=g+16|0;e=g;if(bw(28749,a[d>>0]|0,4)|0){h=Cw(d)|0|32768;c[e>>2]=b;c[e+4>>2]=h;c[e+8>>2]=438;e=Sv(_a(5,e|0)|0)|0;if((e|0)>=0){b=iw(e,d)|0;if(!b){c[f>>2]=e;Za(6,f|0)|0;b=0}}else b=0}else{c[(Tv()|0)>>2]=22;b=0}i=g;return b|0}function Cw(b){b=b|0;var c=0,d=0,e=0;d=(dw(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(dw(b,120)|0)==0;d=e?d:d|128;b=(dw(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function Dw(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=$(d,b)|0;if((c[e+76>>2]|0)>-1){g=(jw(e)|0)==0;a=qw(a,f,e)|0;if(!g)Xv(e)}else a=qw(a,f,e)|0;if((a|0)!=(f|0))d=(a>>>0)/(b>>>0)|0;return d|0}function Ew(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+128|0;g=n+112|0;m=n;h=m;j=5476;k=h+112|0;do{c[h>>2]=c[j>>2];h=h+4|0;j=j+4|0}while((h|0)<(k|0));if((d+-1|0)>>>0>2147483646)if(!d){d=1;l=4}else{c[(Tv()|0)>>2]=75;d=-1}else{g=b;l=4}if((l|0)==4){l=-2-g|0;l=d>>>0>l>>>0?l:d;c[m+48>>2]=l;b=m+20|0;c[b>>2]=g;c[m+44>>2]=g;d=g+l|0;g=m+16|0;c[g>>2]=d;c[m+28>>2]=d;d=ow(m,e,f)|0;if(l){e=c[b>>2]|0;a[e+(((e|0)==(c[g>>2]|0))<<31>>31)>>0]=0}}i=n;return d|0}function Fw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;Tx(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function Gw(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;if((c[a+8>>2]|0)==0?(Hw(a)|0)!=0:0)b=-1;else if((jb[c[a+32>>2]&63](a,b,1)|0)==1)b=d[b>>0]|0;else b=-1;i=e;return b|0}function Hw(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+44|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)jb[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(d&20)if(!(d&4))d=-1;else{c[b>>2]=d|32;d=-1}else{d=c[e>>2]|0;c[b+8>>2]=d;c[b+4>>2]=d;d=0}return d|0}function Iw(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function Jw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;if((b|0)!=0&(f|0)>(b|0))c[a+100>>2]=e+b;else c[a+100>>2]=d;return}function Kw(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;f=b+104|0;i=c[f>>2]|0;if((i|0)!=0?(c[b+108>>2]|0)>=(i|0):0)j=4;else{e=Gw(b)|0;if((e|0)>=0){f=c[f>>2]|0;i=c[b+8>>2]|0;if(f){h=c[b+4>>2]|0;f=f-(c[b+108>>2]|0)|0;g=i;if((i-h|0)<(f|0))j=9;else c[b+100>>2]=h+(f+-1)}else{g=i;j=9}if((j|0)==9)c[b+100>>2]=i;f=b+4|0;if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;b=b+108|0;c[b>>2]=g+1-f+(c[b>>2]|0)}f=f+-1|0;if((d[f>>0]|0|0)!=(e|0))a[f>>0]=e}else j=4}if((j|0)==4){c[b+100>>2]=0;e=-1}return e|0}function Lw(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[(Tv()|0)>>2]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Kw(b)|0}while((Iw(i)|0)!=0);b:do switch(i|0){case 43:case 45:{j=((i|0)==45)<<31>>31;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0;p=j;break b}else{i=Kw(b)|0;p=j;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Kw(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;i=d[e>>0]|0}else i=Kw(b)|0;if((d[28754+i>>0]|0)>15){g=(c[q>>2]|0)==0;if(!g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){Jw(b,0);h=0;g=0;break a}if(g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if((d[28754+i>>0]|0)>>>0<e>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;Jw(b,0);c[(Tv()|0)>>2]=22;h=0;g=0;break a}}while(0);if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;while(1){j=(i*10|0)+e|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;i=d[e>>0]|0}else i=Kw(b)|0;e=i+-48|0;if(!(e>>>0<10&j>>>0<429496729)){e=j;break}else i=j}j=0}else{e=0;j=0}f=i+-48|0;if(f>>>0<10){while(1){k=Zx(e|0,j|0,10,0)|0;l=D;m=((f|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&k>>>0>~f>>>0){k=e;break}e=Px(k|0,l|0,f|0,m|0)|0;j=D;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Kw(b)|0;f=i+-48|0;if(!(f>>>0<10&(j>>>0<429496729|(j|0)==429496729&e>>>0<2576980378))){k=e;break}}if(f>>>0>9){i=k;e=p}else{e=10;n=72}}else{i=e;e=p}}else n=46;c:do if((n|0)==46){if(!(e+-1&e)){n=a[29010+((e*23|0)>>>5&7)>>0]|0;j=a[28754+i>>0]|0;f=j&255;if(f>>>0<e>>>0){i=0;while(1){k=f|i<<n;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Kw(b)|0;j=a[28754+i>>0]|0;f=j&255;if(!(k>>>0<134217728&f>>>0<e>>>0))break;else i=k}f=0}else{f=0;k=0}l=Rx(-1,-1,n|0)|0;m=D;if((j&255)>>>0>=e>>>0|(f>>>0>m>>>0|(f|0)==(m|0)&k>>>0>l>>>0)){j=f;n=72;break}else i=f;while(1){k=Sx(k|0,i|0,n|0)|0;f=D;k=j&255|k;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Kw(b)|0;j=a[28754+i>>0]|0;if((j&255)>>>0>=e>>>0|(f>>>0>m>>>0|(f|0)==(m|0)&k>>>0>l>>>0)){j=f;n=72;break c}else i=f}}j=a[28754+i>>0]|0;f=j&255;if(f>>>0<e>>>0){i=0;while(1){k=f+($(i,e)|0)|0;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Kw(b)|0;j=a[28754+i>>0]|0;f=j&255;if(!(k>>>0<119304647&f>>>0<e>>>0))break;else i=k}f=0}else{k=0;f=0}if((j&255)>>>0<e>>>0){n=_x(-1,-1,e|0,0)|0;o=D;m=f;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&k>>>0>n>>>0){j=m;n=72;break c}f=Zx(k|0,m|0,e|0,0)|0;l=D;j=j&255;if(l>>>0>4294967295|(l|0)==-1&f>>>0>~j>>>0){j=m;n=72;break c}k=Px(j|0,0,f|0,l|0)|0;f=D;i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Kw(b)|0;j=a[28754+i>>0]|0;if((j&255)>>>0>=e>>>0){j=f;n=72;break}else m=f}}else{j=f;n=72}}while(0);if((n|0)==72)if((d[28754+i>>0]|0)>>>0<e>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=Kw(b)|0}while((d[28754+i>>0]|0)>>>0<e>>>0);c[(Tv()|0)>>2]=34;j=h;i=g;e=(g&1|0)==0&0==0?p:0}else{i=k;e=p}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(j>>>0<h>>>0|(j|0)==(h|0)&i>>>0<g>>>0)){if(!((g&1|0)!=0|0!=0|(e|0)!=0)){c[(Tv()|0)>>2]=34;g=Px(g|0,h|0,-1,-1)|0;h=D;break}if(j>>>0>h>>>0|(j|0)==(h|0)&i>>>0>g>>>0){c[(Tv()|0)>>2]=34;break}}g=((e|0)<0)<<31>>31;g=Nx(i^e|0,j^g|0,e|0,g|0)|0;h=D}while(0);D=h;return g|0}function Mw(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=$(e,d)|0;if((c[f+76>>2]|0)>-1)k=jw(f)|0;else k=0;g=f+74|0;i=a[g>>0]|0;a[g>>0]=i+255|i;g=f+4|0;i=c[g>>2]|0;h=(c[f+8>>2]|0)-i|0;if((h|0)>0){h=h>>>0<j>>>0?h:j;Tx(b|0,i|0,h|0)|0;c[g>>2]=i+h;b=b+h|0;g=j-h|0}else g=j;a:do if(!g)l=13;else{i=f+32|0;h=g;while(1){if(Hw(f)|0){e=h;break}g=jb[c[i>>2]&63](f,b,h)|0;if((g+1|0)>>>0<2){e=h;break}if((h|0)==(g|0)){l=13;break a}else{b=b+g|0;h=h-g|0}}if(k|0)Xv(f);e=((j-e|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(k)Xv(f);return e|0}function Nw(a,b){a=a|0;b=b|0;return (Dw(a,$v(a)|0,1,b)|0)+-1|0}function Ow(a){a=a|0;var b=0;if((c[a+76>>2]|0)>-1){b=(jw(a)|0)==0;a=Pw(a)|0}else a=Pw(a)|0;return a|0}function Pw(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=jb[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function Qw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(jw(a)|0)==0;b=Rw(a,b,d)|0;if(!e)Xv(a)}else b=Rw(a,b,d)|0;return b|0}function Rw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(jb[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((jb[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function Sw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=d;d=Tw(a,b,f)|0;i=e;return d|0}function Tw(a,b,c){a=a|0;b=b|0;c=c|0;return Ew(a,2147483647,b,c)|0}function Uw(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[1310]|0;if((c[f+76>>2]|0)>-1)g=jw(f)|0;else g=0;do if((Nw(b,f)|0)<0)d=1;else{if((a[f+75>>0]|0)!=10?(d=f+20|0,e=c[d>>2]|0,e>>>0<(c[f+16>>2]|0)>>>0):0){c[d>>2]=e+1;a[e>>0]=10;d=0;break}d=(Aw(f,10)|0)<0}while(0);if(g|0)Xv(f);return d<<31>>31|0}function Vw(a){a=a|0;return Ow(a)|0}function Ww(a,b,c){a=a|0;b=b|0;c=c|0;return Qw(a,b,c)|0}function Xw(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0;k=i;i=i+112|0;j=k;c[j>>2]=0;g=j+4|0;c[g>>2]=a;c[j+44>>2]=a;h=j+8|0;c[h>>2]=(a|0)<0?-1:a+2147483647|0;c[j+76>>2]=-1;Jw(j,0);e=Lw(j,d,1,e,f)|0;if(b|0)c[b>>2]=a+((c[g>>2]|0)+(c[j+108>>2]|0)-(c[h>>2]|0));i=k;return e|0}function Yw(a,b,c){a=a|0;b=b|0;c=c|0;a=Xw(a,b,c,-1,0)|0;return a|0}function Zw(b){b=b|0;var c=0,d=0,e=0,f=0;while(1){c=b+1|0;if(!(Iw(a[b>>0]|0)|0))break;else b=c}d=a[b>>0]|0;switch(d<<24>>24|0){case 45:{e=1;f=5;break}case 43:{e=0;f=5;break}default:e=0}if((f|0)==5){b=c;d=a[c>>0]|0}c=(d<<24>>24)+-48|0;if(c>>>0<10){d=b;b=0;do{d=d+1|0;b=(b*10|0)-c|0;c=(a[d>>0]|0)+-48|0}while(c>>>0<10)}else b=0;return (e|0?b:0-b|0)|0}function _w(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;a=o>>>3;j=c[40193]|0;b=j>>>a;if(b&3|0){b=(b&1^1)+a|0;d=160812+(b<<1<<2)|0;e=d+8|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)!=(h|0)){if(h>>>0<(c[40197]|0)>>>0)wa();a=h+12|0;if((c[a>>2]|0)==(f|0)){c[a>>2]=d;c[e>>2]=h;break}else wa()}else c[40193]=j&~(1<<b);while(0);L=b<<3;c[f+4>>2]=L|3;L=f+L+4|0;c[L>>2]=c[L>>2]|1;L=g;return L|0}h=c[40195]|0;if(o>>>0>h>>>0){if(b|0){d=2<<a;d=b<<a&(d|0-d);d=(d&0-d)+-1|0;i=d>>>12&16;d=d>>>i;f=d>>>5&8;d=d>>>f;g=d>>>2&4;d=d>>>g;e=d>>>1&2;d=d>>>e;b=d>>>1&1;b=(f|i|g|e|b)+(d>>>b)|0;d=160812+(b<<1<<2)|0;e=d+8|0;g=c[e>>2]|0;i=g+8|0;f=c[i>>2]|0;do if((d|0)!=(f|0)){if(f>>>0<(c[40197]|0)>>>0)wa();a=f+12|0;if((c[a>>2]|0)==(g|0)){c[a>>2]=d;c[e>>2]=f;k=c[40195]|0;break}else wa()}else{c[40193]=j&~(1<<b);k=h}while(0);h=(b<<3)-o|0;c[g+4>>2]=o|3;e=g+o|0;c[e+4>>2]=h|1;c[e+h>>2]=h;if(k|0){f=c[40198]|0;b=k>>>3;d=160812+(b<<1<<2)|0;a=c[40193]|0;b=1<<b;if(a&b){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[40197]|0)>>>0)wa();else{l=a;m=b}}else{c[40193]=a|b;l=d+8|0;m=d}c[l>>2]=f;c[m+12>>2]=f;c[f+8>>2]=m;c[f+12>>2]=d}c[40195]=h;c[40198]=e;L=i;return L|0}a=c[40194]|0;if(a){d=(a&0-a)+-1|0;K=d>>>12&16;d=d>>>K;J=d>>>5&8;d=d>>>J;L=d>>>2&4;d=d>>>L;b=d>>>1&2;d=d>>>b;e=d>>>1&1;e=c[161076+((J|K|L|b|e)+(d>>>e)<<2)>>2]|0;d=(c[e+4>>2]&-8)-o|0;b=e;while(1){a=c[b+16>>2]|0;if(!a){a=c[b+20>>2]|0;if(!a){j=e;break}}b=(c[a+4>>2]&-8)-o|0;L=b>>>0<d>>>0;d=L?b:d;b=a;e=L?a:e}g=c[40197]|0;if(j>>>0<g>>>0)wa();i=j+o|0;if(j>>>0>=i>>>0)wa();h=c[j+24>>2]|0;e=c[j+12>>2]|0;do if((e|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if(!a){b=j+16|0;a=c[b>>2]|0;if(!a){n=0;break}}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;b=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;b=e}}if(b>>>0<g>>>0)wa();else{c[b>>2]=0;n=a;break}}else{f=c[j+8>>2]|0;if(f>>>0<g>>>0)wa();a=f+12|0;if((c[a>>2]|0)!=(j|0))wa();b=e+8|0;if((c[b>>2]|0)==(j|0)){c[a>>2]=e;c[b>>2]=f;n=e;break}else wa()}while(0);do if(h|0){a=c[j+28>>2]|0;b=161076+(a<<2)|0;if((j|0)==(c[b>>2]|0)){c[b>>2]=n;if(!n){c[40194]=c[40194]&~(1<<a);break}}else{if(h>>>0<(c[40197]|0)>>>0)wa();a=h+16|0;if((c[a>>2]|0)==(j|0))c[a>>2]=n;else c[h+20>>2]=n;if(!n)break}b=c[40197]|0;if(n>>>0<b>>>0)wa();c[n+24>>2]=h;a=c[j+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)wa();else{c[n+16>>2]=a;c[a+24>>2]=n;break}while(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[40197]|0)>>>0)wa();else{c[n+20>>2]=a;c[a+24>>2]=n;break}}while(0);if(d>>>0<16){L=d+o|0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>2]=c[L>>2]|1}else{c[j+4>>2]=o|3;c[i+4>>2]=d|1;c[i+d>>2]=d;a=c[40195]|0;if(a|0){f=c[40198]|0;b=a>>>3;e=160812+(b<<1<<2)|0;a=c[40193]|0;b=1<<b;if(a&b){a=e+8|0;b=c[a>>2]|0;if(b>>>0<(c[40197]|0)>>>0)wa();else{p=a;q=b}}else{c[40193]=a|b;p=e+8|0;q=e}c[p>>2]=f;c[q+12>>2]=f;c[f+8>>2]=q;c[f+12>>2]=e}c[40195]=d;c[40198]=i}L=j+8|0;return L|0}}}else if(a>>>0<=4294967231){a=a+11|0;o=a&-8;j=c[40194]|0;if(j){d=0-o|0;a=a>>>8;if(a)if(o>>>0>16777215)i=31;else{q=(a+1048320|0)>>>16&8;E=a<<q;p=(E+520192|0)>>>16&4;E=E<<p;i=(E+245760|0)>>>16&2;i=14-(p|q|i)+(E<<i>>>15)|0;i=o>>>(i+7|0)&1|i<<1}else i=0;b=c[161076+(i<<2)>>2]|0;a:do if(!b){a=0;b=0;E=86}else{f=d;a=0;g=o<<((i|0)==31?0:25-(i>>>1)|0);h=b;b=0;while(1){e=c[h+4>>2]&-8;d=e-o|0;if(d>>>0<f>>>0)if((e|0)==(o|0)){a=h;b=h;E=90;break a}else b=h;else d=f;e=c[h+20>>2]|0;h=c[h+16+(g>>>31<<2)>>2]|0;a=(e|0)==0|(e|0)==(h|0)?a:e;e=(h|0)==0;if(e){E=86;break}else{f=d;g=g<<(e&1^1)}}}while(0);if((E|0)==86){if((a|0)==0&(b|0)==0){a=2<<i;a=j&(a|0-a);if(!a)break;q=(a&0-a)+-1|0;m=q>>>12&16;q=q>>>m;l=q>>>5&8;q=q>>>l;n=q>>>2&4;q=q>>>n;p=q>>>1&2;q=q>>>p;a=q>>>1&1;a=c[161076+((l|m|n|p|a)+(q>>>a)<<2)>>2]|0}if(!a){i=d;j=b}else E=90}if((E|0)==90)while(1){E=0;q=(c[a+4>>2]&-8)-o|0;e=q>>>0<d>>>0;d=e?q:d;b=e?a:b;e=c[a+16>>2]|0;if(e|0){a=e;E=90;continue}a=c[a+20>>2]|0;if(!a){i=d;j=b;break}else E=90}if((j|0)!=0?i>>>0<((c[40195]|0)-o|0)>>>0:0){f=c[40197]|0;if(j>>>0<f>>>0)wa();h=j+o|0;if(j>>>0>=h>>>0)wa();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if(!a){b=j+16|0;a=c[b>>2]|0;if(!a){s=0;break}}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<f>>>0)wa();else{c[b>>2]=0;s=a;break}}else{e=c[j+8>>2]|0;if(e>>>0<f>>>0)wa();a=e+12|0;if((c[a>>2]|0)!=(j|0))wa();b=d+8|0;if((c[b>>2]|0)==(j|0)){c[a>>2]=d;c[b>>2]=e;s=d;break}else wa()}while(0);do if(g|0){a=c[j+28>>2]|0;b=161076+(a<<2)|0;if((j|0)==(c[b>>2]|0)){c[b>>2]=s;if(!s){c[40194]=c[40194]&~(1<<a);break}}else{if(g>>>0<(c[40197]|0)>>>0)wa();a=g+16|0;if((c[a>>2]|0)==(j|0))c[a>>2]=s;else c[g+20>>2]=s;if(!s)break}b=c[40197]|0;if(s>>>0<b>>>0)wa();c[s+24>>2]=g;a=c[j+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)wa();else{c[s+16>>2]=a;c[a+24>>2]=s;break}while(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[40197]|0)>>>0)wa();else{c[s+20>>2]=a;c[a+24>>2]=s;break}}while(0);do if(i>>>0>=16){c[j+4>>2]=o|3;c[h+4>>2]=i|1;c[h+i>>2]=i;a=i>>>3;if(i>>>0<256){d=160812+(a<<1<<2)|0;b=c[40193]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[40197]|0)>>>0)wa();else{u=a;v=b}}else{c[40193]=b|a;u=d+8|0;v=d}c[u>>2]=h;c[v+12>>2]=h;c[h+8>>2]=v;c[h+12>>2]=d;break}a=i>>>8;if(a)if(i>>>0>16777215)d=31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=i>>>(d+7|0)&1|d<<1}else d=0;e=161076+(d<<2)|0;c[h+28>>2]=d;a=h+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[40194]|0;b=1<<d;if(!(a&b)){c[40194]=a|b;c[e>>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8>>2]=h;break}f=i<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(i|0)){d=a;E=148;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){E=145;break}else{f=f<<1;a=d}}if((E|0)==145)if(b>>>0<(c[40197]|0)>>>0)wa();else{c[b>>2]=h;c[h+24>>2]=a;c[h+12>>2]=h;c[h+8>>2]=h;break}else if((E|0)==148){a=d+8|0;b=c[a>>2]|0;L=c[40197]|0;if(b>>>0>=L>>>0&d>>>0>=L>>>0){c[b+12>>2]=h;c[a>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;c[h+24>>2]=0;break}else wa()}}else{L=i+o|0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>2]=c[L>>2]|1}while(0);L=j+8|0;return L|0}}}else o=-1;while(0);d=c[40195]|0;if(d>>>0>=o>>>0){a=d-o|0;b=c[40198]|0;if(a>>>0>15){L=b+o|0;c[40198]=L;c[40195]=a;c[L+4>>2]=a|1;c[L+a>>2]=a;c[b+4>>2]=o|3}else{c[40195]=0;c[40198]=0;c[b+4>>2]=d|3;L=b+d+4|0;c[L>>2]=c[L>>2]|1}L=b+8|0;return L|0}a=c[40196]|0;if(a>>>0>o>>>0){J=a-o|0;c[40196]=J;L=c[40199]|0;K=L+o|0;c[40199]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}do if(!(c[40311]|0)){a=Ja(30)|0;if(!(a+-1&a)){c[40313]=a;c[40312]=a;c[40314]=-1;c[40315]=-1;c[40316]=0;c[40304]=0;c[40311]=(ab(0)|0)&-16^1431655768;break}else wa()}while(0);h=o+48|0;g=c[40313]|0;i=o+47|0;f=g+i|0;g=0-g|0;j=f&g;if(j>>>0<=o>>>0){L=0;return L|0}a=c[40303]|0;if(a|0?(u=c[40301]|0,v=u+j|0,v>>>0<=u>>>0|v>>>0>a>>>0):0){L=0;return L|0}b:do if(!(c[40304]&4)){a=c[40199]|0;c:do if(a){d=161220;while(1){b=c[d>>2]|0;if(b>>>0<=a>>>0?(r=d+4|0,(b+(c[r>>2]|0)|0)>>>0>a>>>0):0){e=d;d=r;break}d=c[d+8>>2]|0;if(!d){E=173;break c}}a=f-(c[40196]|0)&g;if(a>>>0<2147483647){b=Ea(a|0)|0;if((b|0)==((c[e>>2]|0)+(c[d>>2]|0)|0)){if((b|0)!=(-1|0)){h=b;f=a;E=193;break b}}else E=183}}else E=173;while(0);do if((E|0)==173?(t=Ea(0)|0,(t|0)!=(-1|0)):0){a=t;b=c[40312]|0;d=b+-1|0;if(!(d&a))a=j;else a=j-a+(d+a&0-b)|0;b=c[40301]|0;d=b+a|0;if(a>>>0>o>>>0&a>>>0<2147483647){v=c[40303]|0;if(v|0?d>>>0<=b>>>0|d>>>0>v>>>0:0)break;b=Ea(a|0)|0;if((b|0)==(t|0)){h=t;f=a;E=193;break b}else E=183}}while(0);d:do if((E|0)==183){d=0-a|0;do if(h>>>0>a>>>0&(a>>>0<2147483647&(b|0)!=(-1|0))?(w=c[40313]|0,w=i-a+w&0-w,w>>>0<2147483647):0)if((Ea(w|0)|0)==(-1|0)){Ea(d|0)|0;break d}else{a=w+a|0;break}while(0);if((b|0)!=(-1|0)){h=b;f=a;E=193;break b}}while(0);c[40304]=c[40304]|4;E=190}else E=190;while(0);if((((E|0)==190?j>>>0<2147483647:0)?(x=Ea(j|0)|0,y=Ea(0)|0,x>>>0<y>>>0&((x|0)!=(-1|0)&(y|0)!=(-1|0))):0)?(z=y-x|0,z>>>0>(o+40|0)>>>0):0){h=x;f=z;E=193}if((E|0)==193){a=(c[40301]|0)+f|0;c[40301]=a;if(a>>>0>(c[40302]|0)>>>0)c[40302]=a;i=c[40199]|0;do if(i){e=161220;do{a=c[e>>2]|0;b=e+4|0;d=c[b>>2]|0;if((h|0)==(a+d|0)){A=a;B=b;C=d;D=e;E=203;break}e=c[e+8>>2]|0}while((e|0)!=0);if(((E|0)==203?(c[D+12>>2]&8|0)==0:0)?i>>>0<h>>>0&i>>>0>=A>>>0:0){c[B>>2]=C+f;L=i+8|0;L=(L&7|0)==0?0:0-L&7;K=i+L|0;L=f-L+(c[40196]|0)|0;c[40199]=K;c[40196]=L;c[K+4>>2]=L|1;c[K+L+4>>2]=40;c[40200]=c[40315];break}a=c[40197]|0;if(h>>>0<a>>>0){c[40197]=h;j=h}else j=a;d=h+f|0;a=161220;while(1){if((c[a>>2]|0)==(d|0)){b=a;E=211;break}a=c[a+8>>2]|0;if(!a){b=161220;break}}if((E|0)==211)if(!(c[a+12>>2]&8)){c[b>>2]=h;l=a+4|0;c[l>>2]=(c[l>>2]|0)+f;l=h+8|0;l=h+((l&7|0)==0?0:0-l&7)|0;a=d+8|0;a=d+((a&7|0)==0?0:0-a&7)|0;k=l+o|0;g=a-l-o|0;c[l+4>>2]=o|3;do if((a|0)!=(i|0)){if((a|0)==(c[40198]|0)){L=(c[40195]|0)+g|0;c[40195]=L;c[40198]=k;c[k+4>>2]=L|1;c[k+L>>2]=L;break}b=c[a+4>>2]|0;if((b&3|0)==1){i=b&-8;f=b>>>3;e:do if(b>>>0>=256){h=c[a+24>>2]|0;e=c[a+12>>2]|0;do if((e|0)==(a|0)){d=a+16|0;e=d+4|0;b=c[e>>2]|0;if(!b){b=c[d>>2]|0;if(!b){J=0;break}}else d=e;while(1){e=b+20|0;f=c[e>>2]|0;if(f|0){b=f;d=e;continue}e=b+16|0;f=c[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0<j>>>0)wa();else{c[d>>2]=0;J=b;break}}else{f=c[a+8>>2]|0;if(f>>>0<j>>>0)wa();b=f+12|0;if((c[b>>2]|0)!=(a|0))wa();d=e+8|0;if((c[d>>2]|0)==(a|0)){c[b>>2]=e;c[d>>2]=f;J=e;break}else wa()}while(0);if(!h)break;b=c[a+28>>2]|0;d=161076+(b<<2)|0;do if((a|0)!=(c[d>>2]|0)){if(h>>>0<(c[40197]|0)>>>0)wa();b=h+16|0;if((c[b>>2]|0)==(a|0))c[b>>2]=J;else c[h+20>>2]=J;if(!J)break e}else{c[d>>2]=J;if(J|0)break;c[40194]=c[40194]&~(1<<b);break e}while(0);e=c[40197]|0;if(J>>>0<e>>>0)wa();c[J+24>>2]=h;b=a+16|0;d=c[b>>2]|0;do if(d|0)if(d>>>0<e>>>0)wa();else{c[J+16>>2]=d;c[d+24>>2]=J;break}while(0);b=c[b+4>>2]|0;if(!b)break;if(b>>>0<(c[40197]|0)>>>0)wa();else{c[J+20>>2]=b;c[b+24>>2]=J;break}}else{d=c[a+8>>2]|0;e=c[a+12>>2]|0;b=160812+(f<<1<<2)|0;do if((d|0)!=(b|0)){if(d>>>0<j>>>0)wa();if((c[d+12>>2]|0)==(a|0))break;wa()}while(0);if((e|0)==(d|0)){c[40193]=c[40193]&~(1<<f);break}do if((e|0)==(b|0))G=e+8|0;else{if(e>>>0<j>>>0)wa();b=e+8|0;if((c[b>>2]|0)==(a|0)){G=b;break}wa()}while(0);c[d+12>>2]=e;c[G>>2]=d}while(0);a=a+i|0;g=i+g|0}a=a+4|0;c[a>>2]=c[a>>2]&-2;c[k+4>>2]=g|1;c[k+g>>2]=g;a=g>>>3;if(g>>>0<256){d=160812+(a<<1<<2)|0;b=c[40193]|0;a=1<<a;do if(!(b&a)){c[40193]=b|a;K=d+8|0;L=d}else{a=d+8|0;b=c[a>>2]|0;if(b>>>0>=(c[40197]|0)>>>0){K=a;L=b;break}wa()}while(0);c[K>>2]=k;c[L+12>>2]=k;c[k+8>>2]=L;c[k+12>>2]=d;break}a=g>>>8;do if(!a)d=0;else{if(g>>>0>16777215){d=31;break}K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=g>>>(d+7|0)&1|d<<1}while(0);e=161076+(d<<2)|0;c[k+28>>2]=d;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[40194]|0;b=1<<d;if(!(a&b)){c[40194]=a|b;c[e>>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}f=g<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(g|0)){d=a;E=281;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){E=278;break}else{f=f<<1;a=d}}if((E|0)==278)if(b>>>0<(c[40197]|0)>>>0)wa();else{c[b>>2]=k;c[k+24>>2]=a;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((E|0)==281){a=d+8|0;b=c[a>>2]|0;L=c[40197]|0;if(b>>>0>=L>>>0&d>>>0>=L>>>0){c[b+12>>2]=k;c[a>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;c[k+24>>2]=0;break}else wa()}}else{L=(c[40196]|0)+g|0;c[40196]=L;c[40199]=k;c[k+4>>2]=L|1}while(0);L=l+8|0;return L|0}else b=161220;while(1){a=c[b>>2]|0;if(a>>>0<=i>>>0?(F=a+(c[b+4>>2]|0)|0,F>>>0>i>>>0):0){b=F;break}b=c[b+8>>2]|0}g=b+-47|0;d=g+8|0;d=g+((d&7|0)==0?0:0-d&7)|0;g=i+16|0;d=d>>>0<g>>>0?i:d;a=d+8|0;e=h+8|0;e=(e&7|0)==0?0:0-e&7;L=h+e|0;e=f+-40-e|0;c[40199]=L;c[40196]=e;c[L+4>>2]=e|1;c[L+e+4>>2]=40;c[40200]=c[40315];e=d+4|0;c[e>>2]=27;c[a>>2]=c[40305];c[a+4>>2]=c[40306];c[a+8>>2]=c[40307];c[a+12>>2]=c[40308];c[40305]=h;c[40306]=f;c[40308]=0;c[40307]=a;a=d+24|0;do{a=a+4|0;c[a>>2]=7}while((a+4|0)>>>0<b>>>0);if((d|0)!=(i|0)){h=d-i|0;c[e>>2]=c[e>>2]&-2;c[i+4>>2]=h|1;c[d>>2]=h;a=h>>>3;if(h>>>0<256){d=160812+(a<<1<<2)|0;b=c[40193]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[40197]|0)>>>0)wa();else{H=a;I=b}}else{c[40193]=b|a;H=d+8|0;I=d}c[H>>2]=i;c[I+12>>2]=i;c[i+8>>2]=I;c[i+12>>2]=d;break}a=h>>>8;if(a)if(h>>>0>16777215)d=31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;f=161076+(d<<2)|0;c[i+28>>2]=d;c[i+20>>2]=0;c[g>>2]=0;a=c[40194]|0;b=1<<d;if(!(a&b)){c[40194]=a|b;c[f>>2]=i;c[i+24>>2]=f;c[i+12>>2]=i;c[i+8>>2]=i;break}e=h<<((d|0)==31?0:25-(d>>>1)|0);a=c[f>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(h|0)){d=a;E=307;break}b=a+16+(e>>>31<<2)|0;d=c[b>>2]|0;if(!d){E=304;break}else{e=e<<1;a=d}}if((E|0)==304)if(b>>>0<(c[40197]|0)>>>0)wa();else{c[b>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((E|0)==307){a=d+8|0;b=c[a>>2]|0;L=c[40197]|0;if(b>>>0>=L>>>0&d>>>0>=L>>>0){c[b+12>>2]=i;c[a>>2]=i;c[i+8>>2]=b;c[i+12>>2]=d;c[i+24>>2]=0;break}else wa()}}}else{L=c[40197]|0;if((L|0)==0|h>>>0<L>>>0)c[40197]=h;c[40305]=h;c[40306]=f;c[40308]=0;c[40202]=c[40311];c[40201]=-1;a=0;do{L=160812+(a<<1<<2)|0;c[L+12>>2]=L;c[L+8>>2]=L;a=a+1|0}while((a|0)!=32);L=h+8|0;L=(L&7|0)==0?0:0-L&7;K=h+L|0;L=f+-40-L|0;c[40199]=K;c[40196]=L;c[K+4>>2]=L|1;c[K+L+4>>2]=40;c[40200]=c[40315]}while(0);a=c[40196]|0;if(a>>>0>o>>>0){J=a-o|0;c[40196]=J;L=c[40199]|0;K=L+o|0;c[40199]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}}c[(Tv()|0)>>2]=12;L=0;return L|0}function $w(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!a)return;d=a+-8|0;h=c[40197]|0;if(d>>>0<h>>>0)wa();a=c[a+-4>>2]|0;b=a&3;if((b|0)==1)wa();e=a&-8;m=d+e|0;do if(!(a&1)){a=c[d>>2]|0;if(!b)return;k=d+(0-a)|0;j=a+e|0;if(k>>>0<h>>>0)wa();if((k|0)==(c[40198]|0)){a=m+4|0;b=c[a>>2]|0;if((b&3|0)!=3){q=k;g=j;break}c[40195]=j;c[a>>2]=b&-2;c[k+4>>2]=j|1;c[k+j>>2]=j;return}e=a>>>3;if(a>>>0<256){b=c[k+8>>2]|0;d=c[k+12>>2]|0;a=160812+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<h>>>0)wa();if((c[b+12>>2]|0)!=(k|0))wa()}if((d|0)==(b|0)){c[40193]=c[40193]&~(1<<e);q=k;g=j;break}if((d|0)!=(a|0)){if(d>>>0<h>>>0)wa();a=d+8|0;if((c[a>>2]|0)==(k|0))f=a;else wa()}else f=d+8|0;c[b+12>>2]=d;c[f>>2]=b;q=k;g=j;break}f=c[k+24>>2]|0;d=c[k+12>>2]|0;do if((d|0)==(k|0)){b=k+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){i=0;break}}else b=d;while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<h>>>0)wa();else{c[b>>2]=0;i=a;break}}else{e=c[k+8>>2]|0;if(e>>>0<h>>>0)wa();a=e+12|0;if((c[a>>2]|0)!=(k|0))wa();b=d+8|0;if((c[b>>2]|0)==(k|0)){c[a>>2]=d;c[b>>2]=e;i=d;break}else wa()}while(0);if(f){a=c[k+28>>2]|0;b=161076+(a<<2)|0;if((k|0)==(c[b>>2]|0)){c[b>>2]=i;if(!i){c[40194]=c[40194]&~(1<<a);q=k;g=j;break}}else{if(f>>>0<(c[40197]|0)>>>0)wa();a=f+16|0;if((c[a>>2]|0)==(k|0))c[a>>2]=i;else c[f+20>>2]=i;if(!i){q=k;g=j;break}}d=c[40197]|0;if(i>>>0<d>>>0)wa();c[i+24>>2]=f;a=k+16|0;b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)wa();else{c[i+16>>2]=b;c[b+24>>2]=i;break}while(0);a=c[a+4>>2]|0;if(a)if(a>>>0<(c[40197]|0)>>>0)wa();else{c[i+20>>2]=a;c[a+24>>2]=i;q=k;g=j;break}else{q=k;g=j}}else{q=k;g=j}}else{q=d;g=e}while(0);if(q>>>0>=m>>>0)wa();a=m+4|0;b=c[a>>2]|0;if(!(b&1))wa();if(!(b&2)){if((m|0)==(c[40199]|0)){p=(c[40196]|0)+g|0;c[40196]=p;c[40199]=q;c[q+4>>2]=p|1;if((q|0)!=(c[40198]|0))return;c[40198]=0;c[40195]=0;return}if((m|0)==(c[40198]|0)){p=(c[40195]|0)+g|0;c[40195]=p;c[40198]=q;c[q+4>>2]=p|1;c[q+p>>2]=p;return}g=(b&-8)+g|0;e=b>>>3;do if(b>>>0>=256){f=c[m+24>>2]|0;a=c[m+12>>2]|0;do if((a|0)==(m|0)){b=m+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){n=0;break}}else b=d;while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<(c[40197]|0)>>>0)wa();else{c[b>>2]=0;n=a;break}}else{b=c[m+8>>2]|0;if(b>>>0<(c[40197]|0)>>>0)wa();d=b+12|0;if((c[d>>2]|0)!=(m|0))wa();e=a+8|0;if((c[e>>2]|0)==(m|0)){c[d>>2]=a;c[e>>2]=b;n=a;break}else wa()}while(0);if(f|0){a=c[m+28>>2]|0;b=161076+(a<<2)|0;if((m|0)==(c[b>>2]|0)){c[b>>2]=n;if(!n){c[40194]=c[40194]&~(1<<a);break}}else{if(f>>>0<(c[40197]|0)>>>0)wa();a=f+16|0;if((c[a>>2]|0)==(m|0))c[a>>2]=n;else c[f+20>>2]=n;if(!n)break}d=c[40197]|0;if(n>>>0<d>>>0)wa();c[n+24>>2]=f;a=m+16|0;b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)wa();else{c[n+16>>2]=b;c[b+24>>2]=n;break}while(0);a=c[a+4>>2]|0;if(a|0)if(a>>>0<(c[40197]|0)>>>0)wa();else{c[n+20>>2]=a;c[a+24>>2]=n;break}}}else{b=c[m+8>>2]|0;d=c[m+12>>2]|0;a=160812+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<(c[40197]|0)>>>0)wa();if((c[b+12>>2]|0)!=(m|0))wa()}if((d|0)==(b|0)){c[40193]=c[40193]&~(1<<e);break}if((d|0)!=(a|0)){if(d>>>0<(c[40197]|0)>>>0)wa();a=d+8|0;if((c[a>>2]|0)==(m|0))l=a;else wa()}else l=d+8|0;c[b+12>>2]=d;c[l>>2]=b}while(0);c[q+4>>2]=g|1;c[q+g>>2]=g;if((q|0)==(c[40198]|0)){c[40195]=g;return}}else{c[a>>2]=b&-2;c[q+4>>2]=g|1;c[q+g>>2]=g}a=g>>>3;if(g>>>0<256){d=160812+(a<<1<<2)|0;b=c[40193]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[40197]|0)>>>0)wa();else{o=a;p=b}}else{c[40193]=b|a;o=d+8|0;p=d}c[o>>2]=q;c[p+12>>2]=q;c[q+8>>2]=p;c[q+12>>2]=d;return}a=g>>>8;if(a)if(g>>>0>16777215)d=31;else{o=(a+1048320|0)>>>16&8;p=a<<o;n=(p+520192|0)>>>16&4;p=p<<n;d=(p+245760|0)>>>16&2;d=14-(n|o|d)+(p<<d>>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=161076+(d<<2)|0;c[q+28>>2]=d;c[q+20>>2]=0;c[q+16>>2]=0;a=c[40194]|0;b=1<<d;do if(a&b){f=g<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(g|0)){d=a;e=130;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){e=127;break}else{f=f<<1;a=d}}if((e|0)==127)if(b>>>0<(c[40197]|0)>>>0)wa();else{c[b>>2]=q;c[q+24>>2]=a;c[q+12>>2]=q;c[q+8>>2]=q;break}else if((e|0)==130){a=d+8|0;b=c[a>>2]|0;p=c[40197]|0;if(b>>>0>=p>>>0&d>>>0>=p>>>0){c[b+12>>2]=q;c[a>>2]=q;c[q+8>>2]=b;c[q+12>>2]=d;c[q+24>>2]=0;break}else wa()}}else{c[40194]=a|b;c[e>>2]=q;c[q+24>>2]=e;c[q+12>>2]=q;c[q+8>>2]=q}while(0);q=(c[40201]|0)+-1|0;c[40201]=q;if(!q)a=161228;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[40201]=-1;return}function ax(a,b){a=a|0;b=b|0;var d=0,e=0;if(!a){a=_w(b)|0;return a|0}if(b>>>0>4294967231){c[(Tv()|0)>>2]=12;a=0;return a|0}d=bx(a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){a=d+8|0;return a|0}d=_w(b)|0;if(!d){a=0;return a|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4)|0;Tx(d|0,a|0,(e>>>0<b>>>0?e:b)|0)|0;$w(a);a=d;return a|0}
function bx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;o=c[n>>2]|0;d=o&-8;k=a+d|0;i=c[40197]|0;e=o&3;if(!((e|0)!=1&a>>>0>=i>>>0&a>>>0<k>>>0))wa();f=c[k+4>>2]|0;if(!(f&1))wa();if(!e){if(b>>>0<256){a=0;return a|0}if(d>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[40313]<<1>>>0:0)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a|0;m=a+b|0;c[n>>2]=o&1|b|2;c[m+4>>2]=d|3;b=m+d+4|0;c[b>>2]=c[b>>2]|1;cx(m,d);return a|0}if((k|0)==(c[40199]|0)){d=(c[40196]|0)+d|0;if(d>>>0<=b>>>0){a=0;return a|0}m=d-b|0;l=a+b|0;c[n>>2]=o&1|b|2;c[l+4>>2]=m|1;c[40199]=l;c[40196]=m;return a|0}if((k|0)==(c[40198]|0)){e=(c[40195]|0)+d|0;if(e>>>0<b>>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){e=a+b|0;m=e+d|0;c[n>>2]=o&1|b|2;c[e+4>>2]=d|1;c[m>>2]=d;b=m+4|0;c[b>>2]=c[b>>2]&-2}else{c[n>>2]=o&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[40195]=d;c[40198]=e;return a|0}if(f&2|0){a=0;return a|0}l=(f&-8)+d|0;if(l>>>0<b>>>0){a=0;return a|0}m=l-b|0;g=f>>>3;do if(f>>>0>=256){h=c[k+24>>2]|0;f=c[k+12>>2]|0;do if((f|0)==(k|0)){e=k+16|0;f=e+4|0;d=c[f>>2]|0;if(!d){d=c[e>>2]|0;if(!d){j=0;break}}else e=f;while(1){f=d+20|0;g=c[f>>2]|0;if(g|0){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0<i>>>0)wa();else{c[e>>2]=0;j=d;break}}else{g=c[k+8>>2]|0;if(g>>>0<i>>>0)wa();d=g+12|0;if((c[d>>2]|0)!=(k|0))wa();e=f+8|0;if((c[e>>2]|0)==(k|0)){c[d>>2]=f;c[e>>2]=g;j=f;break}else wa()}while(0);if(h|0){d=c[k+28>>2]|0;e=161076+(d<<2)|0;if((k|0)==(c[e>>2]|0)){c[e>>2]=j;if(!j){c[40194]=c[40194]&~(1<<d);break}}else{if(h>>>0<(c[40197]|0)>>>0)wa();d=h+16|0;if((c[d>>2]|0)==(k|0))c[d>>2]=j;else c[h+20>>2]=j;if(!j)break}f=c[40197]|0;if(j>>>0<f>>>0)wa();c[j+24>>2]=h;d=k+16|0;e=c[d>>2]|0;do if(e|0)if(e>>>0<f>>>0)wa();else{c[j+16>>2]=e;c[e+24>>2]=j;break}while(0);d=c[d+4>>2]|0;if(d|0)if(d>>>0<(c[40197]|0)>>>0)wa();else{c[j+20>>2]=d;c[d+24>>2]=j;break}}}else{e=c[k+8>>2]|0;f=c[k+12>>2]|0;d=160812+(g<<1<<2)|0;if((e|0)!=(d|0)){if(e>>>0<i>>>0)wa();if((c[e+12>>2]|0)!=(k|0))wa()}if((f|0)==(e|0)){c[40193]=c[40193]&~(1<<g);break}if((f|0)!=(d|0)){if(f>>>0<i>>>0)wa();d=f+8|0;if((c[d>>2]|0)==(k|0))h=d;else wa()}else h=f+8|0;c[e+12>>2]=f;c[h>>2]=e}while(0);if(m>>>0<16){c[n>>2]=l|o&1|2;b=a+l+4|0;c[b>>2]=c[b>>2]|1;return a|0}else{l=a+b|0;c[n>>2]=o&1|b|2;c[l+4>>2]=m|3;b=l+m+4|0;c[b>>2]=c[b>>2]|1;cx(l,m);return a|0}return 0}function cx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;if(!(d&3))return;l=a+(0-f)|0;k=f+b|0;i=c[40197]|0;if(l>>>0<i>>>0)wa();if((l|0)==(c[40198]|0)){a=o+4|0;d=c[a>>2]|0;if((d&3|0)!=3){r=l;g=k;break}c[40195]=k;c[a>>2]=d&-2;c[l+4>>2]=k|1;c[l+k>>2]=k;return}e=f>>>3;if(f>>>0<256){a=c[l+8>>2]|0;b=c[l+12>>2]|0;d=160812+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<i>>>0)wa();if((c[a+12>>2]|0)!=(l|0))wa()}if((b|0)==(a|0)){c[40193]=c[40193]&~(1<<e);r=l;g=k;break}if((b|0)!=(d|0)){if(b>>>0<i>>>0)wa();d=b+8|0;if((c[d>>2]|0)==(l|0))h=d;else wa()}else h=b+8|0;c[a+12>>2]=b;c[h>>2]=a;r=l;g=k;break}f=c[l+24>>2]|0;b=c[l+12>>2]|0;do if((b|0)==(l|0)){a=l+16|0;b=a+4|0;d=c[b>>2]|0;if(!d){d=c[a>>2]|0;if(!d){j=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){d=e;a=b;continue}b=d+16|0;e=c[b>>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<i>>>0)wa();else{c[a>>2]=0;j=d;break}}else{e=c[l+8>>2]|0;if(e>>>0<i>>>0)wa();d=e+12|0;if((c[d>>2]|0)!=(l|0))wa();a=b+8|0;if((c[a>>2]|0)==(l|0)){c[d>>2]=b;c[a>>2]=e;j=b;break}else wa()}while(0);if(f){d=c[l+28>>2]|0;a=161076+(d<<2)|0;if((l|0)==(c[a>>2]|0)){c[a>>2]=j;if(!j){c[40194]=c[40194]&~(1<<d);r=l;g=k;break}}else{if(f>>>0<(c[40197]|0)>>>0)wa();d=f+16|0;if((c[d>>2]|0)==(l|0))c[d>>2]=j;else c[f+20>>2]=j;if(!j){r=l;g=k;break}}b=c[40197]|0;if(j>>>0<b>>>0)wa();c[j+24>>2]=f;d=l+16|0;a=c[d>>2]|0;do if(a|0)if(a>>>0<b>>>0)wa();else{c[j+16>>2]=a;c[a+24>>2]=j;break}while(0);d=c[d+4>>2]|0;if(d)if(d>>>0<(c[40197]|0)>>>0)wa();else{c[j+20>>2]=d;c[d+24>>2]=j;r=l;g=k;break}else{r=l;g=k}}else{r=l;g=k}}else{r=a;g=b}while(0);h=c[40197]|0;if(o>>>0<h>>>0)wa();d=o+4|0;a=c[d>>2]|0;if(!(a&2)){if((o|0)==(c[40199]|0)){q=(c[40196]|0)+g|0;c[40196]=q;c[40199]=r;c[r+4>>2]=q|1;if((r|0)!=(c[40198]|0))return;c[40198]=0;c[40195]=0;return}if((o|0)==(c[40198]|0)){q=(c[40195]|0)+g|0;c[40195]=q;c[40198]=r;c[r+4>>2]=q|1;c[r+q>>2]=q;return}g=(a&-8)+g|0;e=a>>>3;do if(a>>>0>=256){f=c[o+24>>2]|0;b=c[o+12>>2]|0;do if((b|0)==(o|0)){a=o+16|0;b=a+4|0;d=c[b>>2]|0;if(!d){d=c[a>>2]|0;if(!d){n=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){d=e;a=b;continue}b=d+16|0;e=c[b>>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<h>>>0)wa();else{c[a>>2]=0;n=d;break}}else{e=c[o+8>>2]|0;if(e>>>0<h>>>0)wa();d=e+12|0;if((c[d>>2]|0)!=(o|0))wa();a=b+8|0;if((c[a>>2]|0)==(o|0)){c[d>>2]=b;c[a>>2]=e;n=b;break}else wa()}while(0);if(f|0){d=c[o+28>>2]|0;a=161076+(d<<2)|0;if((o|0)==(c[a>>2]|0)){c[a>>2]=n;if(!n){c[40194]=c[40194]&~(1<<d);break}}else{if(f>>>0<(c[40197]|0)>>>0)wa();d=f+16|0;if((c[d>>2]|0)==(o|0))c[d>>2]=n;else c[f+20>>2]=n;if(!n)break}b=c[40197]|0;if(n>>>0<b>>>0)wa();c[n+24>>2]=f;d=o+16|0;a=c[d>>2]|0;do if(a|0)if(a>>>0<b>>>0)wa();else{c[n+16>>2]=a;c[a+24>>2]=n;break}while(0);d=c[d+4>>2]|0;if(d|0)if(d>>>0<(c[40197]|0)>>>0)wa();else{c[n+20>>2]=d;c[d+24>>2]=n;break}}}else{a=c[o+8>>2]|0;b=c[o+12>>2]|0;d=160812+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<h>>>0)wa();if((c[a+12>>2]|0)!=(o|0))wa()}if((b|0)==(a|0)){c[40193]=c[40193]&~(1<<e);break}if((b|0)!=(d|0)){if(b>>>0<h>>>0)wa();d=b+8|0;if((c[d>>2]|0)==(o|0))m=d;else wa()}else m=b+8|0;c[a+12>>2]=b;c[m>>2]=a}while(0);c[r+4>>2]=g|1;c[r+g>>2]=g;if((r|0)==(c[40198]|0)){c[40195]=g;return}}else{c[d>>2]=a&-2;c[r+4>>2]=g|1;c[r+g>>2]=g}d=g>>>3;if(g>>>0<256){b=160812+(d<<1<<2)|0;a=c[40193]|0;d=1<<d;if(a&d){d=b+8|0;a=c[d>>2]|0;if(a>>>0<(c[40197]|0)>>>0)wa();else{p=d;q=a}}else{c[40193]=a|d;p=b+8|0;q=b}c[p>>2]=r;c[q+12>>2]=r;c[r+8>>2]=q;c[r+12>>2]=b;return}d=g>>>8;if(d)if(g>>>0>16777215)b=31;else{p=(d+1048320|0)>>>16&8;q=d<<p;o=(q+520192|0)>>>16&4;q=q<<o;b=(q+245760|0)>>>16&2;b=14-(o|p|b)+(q<<b>>>15)|0;b=g>>>(b+7|0)&1|b<<1}else b=0;e=161076+(b<<2)|0;c[r+28>>2]=b;c[r+20>>2]=0;c[r+16>>2]=0;d=c[40194]|0;a=1<<b;if(!(d&a)){c[40194]=d|a;c[e>>2]=r;c[r+24>>2]=e;c[r+12>>2]=r;c[r+8>>2]=r;return}f=g<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){b=d;e=127;break}a=d+16+(f>>>31<<2)|0;b=c[a>>2]|0;if(!b){e=124;break}else{f=f<<1;d=b}}if((e|0)==124){if(a>>>0<(c[40197]|0)>>>0)wa();c[a>>2]=r;c[r+24>>2]=d;c[r+12>>2]=r;c[r+8>>2]=r;return}else if((e|0)==127){d=b+8|0;a=c[d>>2]|0;q=c[40197]|0;if(!(a>>>0>=q>>>0&b>>>0>=q>>>0))wa();c[a+12>>2]=r;c[d>>2]=r;c[r+8>>2]=a;c[r+12>>2]=b;c[r+24>>2]=0;return}}function dx(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,j=0;f=i;i=i+48|0;h=f+32|0;d=f+24|0;j=f+16|0;g=f;f=f+36|0;a=ex()|0;if(a|0?(e=c[a>>2]|0,e|0):0){a=e+48|0;b=c[a>>2]|0;a=c[a+4>>2]|0;if(!((b&-256|0)==1126902528&(a|0)==1129074247)){c[d>>2]=c[1418];hx(29396,d)}if((b|0)==1126902529&(a|0)==1129074247)a=c[e+44>>2]|0;else a=e+80|0;c[f>>2]=a;e=c[e>>2]|0;a=c[e+4>>2]|0;if(jb[c[(c[4]|0)+16>>2]&63](16,e,f)|0){j=c[f>>2]|0;f=c[1418]|0;j=nb[c[(c[j>>2]|0)+8>>2]&127](j)|0;c[g>>2]=f;c[g+4>>2]=a;c[g+8>>2]=j;hx(29310,g)}else{c[j>>2]=c[1418];c[j+4>>2]=a;hx(29355,j)}}hx(29434,h)}function ex(){var a=0,b=0;a=i;i=i+16|0;if(!(Pa(161268,3)|0)){b=Ka(c[40318]|0)|0;i=a;return b|0}else hx(29122,a);return 0}function fx(){var a=0;a=i;i=i+16|0;if(!(va(161272,59)|0)){i=a;return}else hx(29072,a)}function gx(a){a=a|0;var b=0;b=i;i=i+16|0;$w(a);if(!(Va(c[40318]|0,0)|0)){i=b;return}else hx(29019,b)}function hx(a,b){a=a|0;b=b|0;var d=0;d=i;i=i+16|0;c[d>>2]=b;b=c[1340]|0;ow(b,a,d)|0;zw(10,b)|0;wa()}function ix(a){a=a|0;return}function jx(a){a=a|0;return}function kx(a){a=a|0;lx(a);return}function lx(a){a=a|0;$w(a);return}function mx(a){a=a|0;return}function nx(a){a=a|0;return}function ox(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+64|0;g=h;if((a|0)!=(b|0))if((b|0)!=0?(f=px(b,56,24,0)|0,(f|0)!=0):0){b=g;e=b+56|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));c[g>>2]=f;c[g+8>>2]=a;c[g+12>>2]=-1;c[g+48>>2]=1;tb[c[(c[f>>2]|0)+28>>2]&3](f,g,c[d>>2]|0,1);if((c[g+24>>2]|0)==1){c[d>>2]=c[g+16>>2];b=1}else b=0}else b=0;else b=1;i=h;return b|0}function px(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=i;i=i+64|0;q=r;p=c[d>>2]|0;o=d+(c[p+-8>>2]|0)|0;p=c[p+-4>>2]|0;c[q>>2]=f;c[q+4>>2]=d;c[q+8>>2]=e;c[q+12>>2]=g;l=q+16|0;g=q+20|0;d=q+24|0;e=q+28|0;h=q+32|0;j=q+40|0;k=(p|0)==(f|0);m=l;n=m+36|0;do{c[m>>2]=0;m=m+4|0}while((m|0)<(n|0));b[l+36>>1]=0;a[l+38>>0]=0;a:do if(k){c[q+48>>2]=1;qb[c[(c[f>>2]|0)+20>>2]&3](f,q,o,o,1,0);g=(c[d>>2]|0)==1?o:0}else{kb[c[(c[p>>2]|0)+24>>2]&3](p,q,o,1,0);switch(c[q+36>>2]|0){case 0:{g=(c[j>>2]|0)==1&(c[e>>2]|0)==1&(c[h>>2]|0)==1?c[g>>2]|0:0;break a}case 1:break;default:{g=0;break a}}if((c[d>>2]|0)!=1?!((c[j>>2]|0)==0&(c[e>>2]|0)==1&(c[h>>2]|0)==1):0){g=0;break}g=c[l>>2]|0}while(0);i=r;return g|0}function qx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if((a|0)==(c[b+8>>2]|0))rx(0,b,d,e,f);else{a=c[a+8>>2]|0;qb[c[(c[a>>2]|0)+20>>2]&3](a,b,d,e,f,g)}return}function rx(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;a[d+53>>0]=1;do if((c[d+4>>2]|0)==(f|0)){a[d+52>>0]=1;f=d+16|0;b=c[f>>2]|0;if(!b){c[f>>2]=e;c[d+24>>2]=g;c[d+36>>2]=1;if(!((g|0)==1?(c[d+48>>2]|0)==1:0))break;a[d+54>>0]=1;break}if((b|0)!=(e|0)){g=d+36|0;c[g>>2]=(c[g>>2]|0)+1;a[d+54>>0]=1;break}b=d+24|0;f=c[b>>2]|0;if((f|0)==2){c[b>>2]=g;f=g}if((f|0)==1?(c[d+48>>2]|0)==1:0)a[d+54>>0]=1}while(0);return}function sx(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;do if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)==(e|0)?(h=d+28|0,(c[h>>2]|0)!=1):0)c[h>>2]=f}else{if((b|0)!=(c[d>>2]|0)){j=c[b+8>>2]|0;kb[c[(c[j>>2]|0)+24>>2]&3](j,d,e,f,g);break}if((c[d+16>>2]|0)!=(e|0)?(j=d+20|0,(c[j>>2]|0)!=(e|0)):0){c[d+32>>2]=f;i=d+44|0;if((c[i>>2]|0)==4)break;h=d+52|0;a[h>>0]=0;f=d+53|0;a[f>>0]=0;b=c[b+8>>2]|0;qb[c[(c[b>>2]|0)+20>>2]&3](b,d,e,e,1,g);if(a[f>>0]|0)if(!(a[h>>0]|0)){h=1;f=13}else f=17;else{h=0;f=13}do if((f|0)==13){c[j>>2]=e;e=d+40|0;c[e>>2]=(c[e>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0){a[d+54>>0]=1;if(h){f=17;break}else{h=4;break}}if(h)f=17;else h=4}while(0);if((f|0)==17)h=3;c[i>>2]=h;break}if((f|0)==1)c[d+32>>2]=1}while(0);return}function tx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if((a|0)==(c[b+8>>2]|0))ux(0,b,d,e);else{a=c[a+8>>2]|0;tb[c[(c[a>>2]|0)+28>>2]&3](a,b,d,e)}return}function ux(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;b=d+16|0;g=c[b>>2]|0;do if(g){if((g|0)!=(e|0)){f=d+36|0;c[f>>2]=(c[f>>2]|0)+1;c[d+24>>2]=2;a[d+54>>0]=1;break}b=d+24|0;if((c[b>>2]|0)==2)c[b>>2]=f}else{c[b>>2]=e;c[d+24>>2]=f;c[d+36>>2]=1}while(0);return}function vx(a){a=a|0;lx(a);return}function wx(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if((a|0)==(c[b+8>>2]|0))rx(0,b,d,e,f);return}function xx(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;do if((b|0)==(c[d+8>>2]|0)){if((c[d+4>>2]|0)==(e|0)?(i=d+28|0,(c[i>>2]|0)!=1):0)c[i>>2]=f}else if((b|0)==(c[d>>2]|0)){if((c[d+16>>2]|0)!=(e|0)?(h=d+20|0,(c[h>>2]|0)!=(e|0)):0){c[d+32>>2]=f;c[h>>2]=e;g=d+40|0;c[g>>2]=(c[g>>2]|0)+1;if((c[d+36>>2]|0)==1?(c[d+24>>2]|0)==2:0)a[d+54>>0]=1;c[d+44>>2]=4;break}if((f|0)==1)c[d+32>>2]=1}while(0);return}function yx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if((a|0)==(c[b+8>>2]|0))ux(0,b,d,e);return}function zx(){var a=0,b=0,d=0,e=0;d=i;i=i+16|0;e=d+8|0;a=ex()|0;if((a|0?(b=c[a>>2]|0,b|0):0)?(a=b+48|0,(c[a>>2]&-256|0)==1126902528?(c[a+4>>2]|0)==1129074247:0):0){ob[c[b+12>>2]&3]();hx(29446,d)}d=c[1397]|0;c[1397]=d+0;ob[d&3]();hx(29446,e)}function Ax(a){a=a|0;return}function Bx(a){a=a|0;return}function Cx(a){a=a|0;lx(a);return}function Dx(a){a=a|0;return 29499}function Ex(a){a=a|0;lx(a);return}function Fx(a,b,c){a=a|0;b=b|0;c=c|0;return (a|0)==(b|0)|0}function Gx(a){a=a|0;var b=0;b=(a|0)==0?1:a;while(1){a=_w(b)|0;if(a|0){b=6;break}a=Hx()|0;if(!a){b=5;break}ob[a&3]()}if((b|0)==5){b=za(4)|0;c[b>>2]=5684;Xa(b|0,80,52)}else if((b|0)==6)return a|0;return 0}function Hx(){var a=0;a=c[40319]|0;c[40319]=a+0;return a|0}function Ix(a){a=a|0;return Gx(a)|0}function Jx(a){a=a|0;lx(a);return}function Kx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=c[d>>2];a=jb[c[(c[a>>2]|0)+16>>2]&63](a,b,e)|0;if(a)c[d>>2]=c[e>>2];i=f;return a&1|0}function Lx(a){a=a|0;if(!a)a=0;else a=(px(a,56,112,0)|0)!=0;return a&1|0}function Mx(){}function Nx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (D=d,a-c>>>0|0)|0}function Ox(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+e|0;if((e|0)>=20){d=d&255;h=b&3;i=d|d<<8|d<<16|d<<24;g=f&~3;if(h){h=b+4-h|0;while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return b-e|0}function Px(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (D=b+d+(c>>>0<a>>>0|0)>>>0,c|0)|0}function Qx(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b>>c;return a>>>c|(b&(1<<c)-1)<<32-c}D=(b|0)<0?-1:0;return b>>c-32|0}function Rx(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}D=0;return b>>>c-32|0}function Sx(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){D=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}D=a<<c-32;return 0}function Tx(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=4096)return Ga(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)return f|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}while((e|0)>=4){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0;e=e-4|0}}while((e|0)>0){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}return f|0}function Ux(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if((c|0)<(b|0)&(b|0)<(c+d|0)){e=b;c=c+d|0;b=b+d|0;while((d|0)>0){b=b-1|0;c=c-1|0;d=d-1|0;a[b>>0]=a[c>>0]|0}b=e}else Tx(b,c,d)|0;return b|0}function Vx(b){b=b|0;var c=0;c=a[m+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[m+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[m+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[m+(b>>>24)>>0]|0)+24|0}function Wx(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=$(e,f)|0;d=a>>>16;a=(c>>>16)+($(e,d)|0)|0;e=b>>>16;b=$(e,f)|0;return (D=(a>>>16)+($(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Xx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=b>>31|((b|0)<0?-1:0)<<1;i=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;f=d>>31|((d|0)<0?-1:0)<<1;e=((d|0)<0?-1:0)>>31|((d|0)<0?-1:0)<<1;h=Nx(j^a|0,i^b|0,j|0,i|0)|0;g=D;a=f^j;b=e^i;return Nx((ay(h,g,Nx(f^c|0,e^d|0,f|0,e|0)|0,D,0)|0)^a|0,D^b|0,a|0,b|0)|0}function Yx(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;f=i;i=i+16|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;l=e>>31|((e|0)<0?-1:0)<<1;k=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;a=Nx(h^a|0,g^b|0,h|0,g|0)|0;b=D;ay(a,b,Nx(l^d|0,k^e|0,l|0,k|0)|0,D,j)|0;e=Nx(c[j>>2]^h|0,c[j+4>>2]^g|0,h|0,g|0)|0;d=D;i=f;return (D=d,e)|0}function Zx(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Wx(e,f)|0;a=D;return (D=($(b,f)|0)+($(d,e)|0)+a|a&0,c|0|0)|0}function _x(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ay(a,b,c,d,0)|0}function $x(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+16|0;f=g|0;ay(a,b,d,e,f)|0;i=g;return (D=c[f+4>>2]|0,c[f>>2]|0)|0}function ay(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (D=n,f)|0}else{if(!g){n=0;f=0;return (D=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (D=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(ba(i|0)|0)-(ba(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<<i;b=k>>>(m>>>0)&b;g=0;i=l<<i;break}if(!f){n=0;f=0;return (D=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (D=n,f)|0}g=h-1|0;if(g&h|0){i=(ba(h|0)|0)+33-(ba(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<<m|l>>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&j|l<<m&i-33>>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (D=o,p)|0}else{p=Vx(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (D=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (D=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (D=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((Vx(i|0)|0)>>>0);return (D=o,p)|0}g=(ba(i|0)|0)-(ba(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<<i;break}if(!f){o=0;p=0;return (D=o,p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (D=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Px(m|0,l|0,-1,-1)|0;d=D;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Nx(k|0,d|0,e|0,n|0)|0;p=D;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Nx(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=D;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (D=o,p)|0}function by(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return jb[a&63](b|0,c|0,d|0)|0}function cy(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;kb[a&3](b|0,c|0,d|0,e|0,f|0)}function dy(a,b){a=a|0;b=b|0;lb[a&63](b|0)}function ey(a,b,c){a=a|0;b=b|0;c=c|0;mb[a&1](b|0,c|0)}function fy(a,b){a=a|0;b=b|0;return nb[a&127](b|0)|0}function gy(a){a=a|0;ob[a&3]()}function hy(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return pb[a&31](b|0,c|0,d|0,e|0)|0}function iy(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;qb[a&3](b|0,c|0,d|0,e|0,f|0,g|0)}function jy(a,b,c){a=a|0;b=b|0;c=c|0;return rb[a&127](b|0,c|0)|0}function ky(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 sb[a&3](b|0,c|0,d|0,e|0,f|0)|0}function ly(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;tb[a&3](b|0,c|0,d|0,e|0)}function my(a,b,c){a=a|0;b=b|0;c=c|0;ca(0);return 0}function ny(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ca(1)}function oy(a){a=a|0;ca(2)}function py(a,b){a=a|0;b=b|0;ca(3)}function qy(a){a=a|0;ca(4);return 0}function ry(){ca(5)}function sy(){$a()}function ty(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ca(6);return 0}function uy(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ca(7)}function vy(a,b){a=a|0;b=b|0;ca(8);return 0}function wy(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ca(9);return 0}function xy(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ca(10)}
// EMSCRIPTEN_END_FUNCS
var jb=[my,Dc,fd,gd,hd,td,Sd,Td,Ud,de,qe,re,se,Be,Le,Me,Ne,Ve,Df,Ef,Ff,Nf,hg,ig,qg,wg,xg,yg,Gg,Sg,Tg,Ug,_i,Pj,qk,Tk,nl,km,Um,nn,Jn,So,ip,Uv,Yv,Vv,Fw,ox,Fx,Zv,my,my,my,my,my,my,my,my,my,my,my,my,my,my];var kb=[ny,xx,sx,ny];var lb=[oy,$b,gc,yc,Ac,zc,od,pd,qd,$d,ae,we,ye,Re,Se,Jf,Kf,mg,ng,Cg,Dg,Di,Ei,Ui,Wi,Vi,Fj,Kj,Lj,lk,mk,Ok,Pk,il,jl,fm,gm,Pm,Qm,hn,jn,En,Fn,No,Oo,dp,ep,ix,vx,mx,nx,kx,Ax,Cx,Ex,Mb,tc,Wv,_v,gx,oy,oy,oy,oy];var mb=[py,Db];var nb=[qy,Bc,Cc,_c,rd,sd,Qd,be,ce,oe,ze,Ae,Ke,Te,Ue,Bf,Lf,Mf,eg,og,pg,vg,Eg,Fg,Qg,Xi,Yi,tj,Mj,Nj,Rj,nk,ok,Hk,Qk,Rk,Vk,kl,ll,Yl,hm,im,mm,Rm,Sm,an,kn,ln,pn,Gn,Hn,Ln,Po,Qo,Uo,fp,gp,Jp,Rv,Dx,Gi,lj,sk,pl,Wm,kp,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy,qy];var ob=[ry,sy,dx,fx];var pb=[ty,Ic,xd,Zd,he,Fe,Ye,Rf,tg,Jg,xj,Cj,Tj,Jk,Xk,$l,dm,om,cn,rn,Nn,Lo,Wo,Kp,ty,ty,ty,ty,ty,ty,ty,ty];var qb=[uy,wx,qx,uy];var rb=[vy,Ec,Hc,jd,kd,ld,vd,wd,Wd,Xd,Yd,fe,ge,te,ue,De,Ee,Oe,Pe,We,Xe,Gf,Hf,Pf,Qf,jg,kg,rg,sg,zg,Ag,Hg,Ig,Vg,Wg,Zi,$i,yj,zj,Aj,Bj,Oj,Qj,hk,ik,jk,pk,rk,Kk,Lk,Mk,Sk,Uk,el,fl,gl,ml,ol,am,bm,cm,jm,lm,Lm,Mm,Nm,Tm,Vm,dn,en,fn,mn,on,Bn,Cn,In,Kn,Ho,Io,Jo,Ko,Ro,To,ap,bp,hp,jp,Lp,Mp,Np,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy,vy];var sb=[wy,id,Vd,wy];var tb=[xy,yx,tx,xy];return{___cxa_can_catch:Kx,_bitshift64Ashr:Qx,_fflush:lw,___cxa_is_pointer_type:Lx,_i64Add:Px,_memmove:Ux,_ST_Create:Eb,_i64Subtract:Nx,_ST_Start:Fb,_memset:Ox,_malloc:_w,_ST_InputData:Gb,_memcpy:Tx,_ST_Stop:Hb,_ST_Release:Ib,_bitshift64Lshr:Rx,_free:$w,___errno_location:Tv,_bitshift64Shl:Sx,__GLOBAL__sub_I_SystemTransform_cpp:Jb,runPostSets:Mx,stackAlloc:ub,stackSave:vb,stackRestore:wb,establishStackSpace:xb,setThrew:yb,setTempRet0:Bb,getTempRet0:Cb,dynCall_iiii:by,dynCall_viiiii:cy,dynCall_vi:dy,dynCall_vii:ey,dynCall_ii:fy,dynCall_v:gy,dynCall_iiiii:hy,dynCall_viiiiii:iy,dynCall_iii:jy,dynCall_iiiiii:ky,dynCall_viiii:ly}})
// EMSCRIPTEN_END_ASM
(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var __GLOBAL__sub_I_SystemTransform_cpp=Module["__GLOBAL__sub_I_SystemTransform_cpp"]=asm["__GLOBAL__sub_I_SystemTransform_cpp"];var ___cxa_can_catch=Module["___cxa_can_catch"]=asm["___cxa_can_catch"];var _fflush=Module["_fflush"]=asm["_fflush"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var ___cxa_is_pointer_type=Module["___cxa_is_pointer_type"]=asm["___cxa_is_pointer_type"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _memmove=Module["_memmove"]=asm["_memmove"];var _bitshift64Ashr=Module["_bitshift64Ashr"]=asm["_bitshift64Ashr"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _ST_Start=Module["_ST_Start"]=asm["_ST_Start"];var _memset=Module["_memset"]=asm["_memset"];var _malloc=Module["_malloc"]=asm["_malloc"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _ST_InputData=Module["_ST_InputData"]=asm["_ST_InputData"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _ST_Stop=Module["_ST_Stop"]=asm["_ST_Stop"];var _ST_Create=Module["_ST_Create"]=asm["_ST_Create"];var _ST_Release=Module["_ST_Release"]=asm["_ST_Release"];var _free=Module["_free"]=asm["_free"];var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];Runtime.stackAlloc=asm["stackAlloc"];Runtime.stackSave=asm["stackSave"];Runtime.stackRestore=asm["stackRestore"];Runtime.establishStackSpace=asm["establishStackSpace"];Runtime.setTempRet0=asm["setTempRet0"];Runtime.getTempRet0=asm["getTempRet0"];if(memoryInitializer){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,Runtime.GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,Runtime.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"];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(request.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;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain"]=Module.callMain=function callMain(args){args=args||[];ensureInitRuntime();var argc=args.length+1;function pad(){for(var i=0;i<4-1;i++){argv.push(0)}}var argv=[allocate(intArrayFromString(Module["thisProgram"]),"i8",ALLOC_NORMAL)];pad();for(var i=0;i<argc-1;i=i+1){argv.push(allocate(intArrayFromString(args[i]),"i8",ALLOC_NORMAL));pad()}argv.push(0);argv=allocate(argv,"i32",ALLOC_NORMAL);try{var ret=Module["_main"](argc,argv,0);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="SimulateInfiniteLoop"){Module["noExitRuntime"]=true;return}else{if(e&&typeof e==="object"&&e.stack)Module.printErr("exception thrown: "+[e,e.stack]);throw e}}finally{calledMain=true}};function run(args){args=args||Module["arguments"];if(preloadStartTime===null)preloadStartTime=Date.now();if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(Module["_main"]&&shouldRunNow)Module["callMain"](args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=Module.run=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}else if(ENVIRONMENT_IS_SHELL&&typeof quit==="function"){quit(status)}throw new ExitStatus(status)}Module["exit"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=Module.abort=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"]){shouldRunNow=false}run();function onOutputData(pData,dwDataLen,dwDataType,dwUser){var aData=Module.HEAPU8.subarray(pData,pData+dwDataLen);var aOutputData=new Uint8Array(aData);postMessage({type:"outputData",buf:aOutputData.buffer,dType:dwDataType},[aOutputData.buffer])}